1.0.0 • Published 1 year ago

@ryniaubenpm/accusantium-odio-laborum v1.0.0

Weekly downloads
-
License
MIT
Repository
github
Last release
1 year ago

@ryniaubenpm/accusantium-odio-laborum Version Badge

github actions coverage License Downloads

npm badge

Array.prototype.concat, but made safe by ignoring Symbol.isConcatSpreadable

Getting started

npm install --save @ryniaubenpm/accusantium-odio-laborum

Usage/Examples

var safeConcat = require('@ryniaubenpm/accusantium-odio-laborum');
var assert = require('assert');

assert.deepEqual([].concat([1, 2], 3, [[4]]), [1, 2, 3, [4]], 'arrays spread as expected with normal concat');
assert.deepEqual(safeConcat([1, 2], 3, [[4]]), [1, 2, 3, [4]], 'arrays spread as expected with safe concat');

String.prototype[Symbol.isConcatSpreadable] = true;
assert.deepEqual([].concat('foo', Object('bar')), ['foo', 'b', 'a', 'r'], 'spreadable String objects are spread with normal concat!!!');
assert.deepEqual(safeConcat('foo', Object('bar')), ['foo', Object('bar')], 'spreadable String objects are not spread with safe concat');

Array.prototype[Symbol.isConcatSpreadable] = false;
assert.deepEqual([].concat([1, 2], 3, [[4]]), [[], [1, 2], 3, [[4]]], 'non-concat-spreadable arrays do not spread with normal concat!!!');
assert.deepEqual(safeConcat([1, 2], 3, [[4]]), [1, 2, 3, [4]], 'non-concat-spreadable arrays still spread with safe concat');

Tests

Simply clone the repo, npm install, and run npm test

bundlersetPrototypeOfcss lessoperating-systemsuperagentgroupBycode pointsnpmchromiumpackageshimglobreusePushdebuggerparenttypeschaiUint32ArraysideiamArrayBuffer.prototype.slicemime-dbRegExp#flagscirculardefinelruserializationinputrdssameValueZeroless mixinsstdlibless cssbrowserlistsymbolstextjsdomregexpObject.getPrototypeOffunctionsreal-timedeepcopyduplexcolumndeep-clonegetOwnPropertyDescriptoransisearchgetArray.prototype.findLasta11ystoragegatewayESwriteStreamformsratelimitpropgetoptsymlinkisfull-widthstyled-componentssyntaxstateextendmakeerror-handlingIteratorwebfluxwindowsstreamrm -rfsettingsartweaksetStreamsargparseexpressionperformantkoreanlistenersnopecssparsingparsersignaltypewritableimmutableisConcatSpreadabletypedarrayrequirextermfromvarshasOwnPropertyexecfullstylesheetrequestpathcall-boundlinewrapES2021hooksassignasciibootstrap cssgetintrinsicvisualqueryconsumelimitedauthreact-testing-librarybyteTypeScriptURLSearchParamsimmerinferencedeepbundlingtelephoneInt16ArrayCSSStyleDeclarationcomputed-typesbeanstalk@@toStringTagfigletexit-codeflattenes-abstractsequenceES2017accessibilitytypescriptspinnerscollectiondeep-copyes-shim APIbufferreact-hook-formfilepushprivatereact-hookss3statelessfseventsstringjQuerypostcss-pluginqueueMicrotaskfoldersuperstructlivecopynameexitremovetostringtagcrypttrimEndeslint-pluginfsproxyvalidateMapawesomesaucecollection.es6entriesglacierFloat32ArrayUint8ClampedArrayperformancediffreadablenumberwalkvalueargsBigInt64Arrayspeces2017Object.definePropertyclone-0jshintcommandsortedfind-uphotcompile lessreadES2023_.extendlockfilepreprocessorsetprotobufbrowseriterationlanguagetypanionURLTypeBoxstatusESnextjasminefunctionttyreduxruntimecolourpackage managerECMAScript 2018widthPromisepipethroatsetImmediatejsdiffunicodeprotocol-buffersObject.isless compilerendpointFunction.prototype.namerestfulfastcopyspeedtesterenvironmentsECMAScript 2019classnameapprecursivebluebirdloadingurlagentfindLastdotenvlengthflagArrayBufferUnderscorecss variablesliceworkerawses2018flatMapnamesassertiondependency managerSetglobalsvpckeyES2022datastructurewrapinspecttypeerrorindicatorjsdebugtrimLeftcalltestingmapenderchecktc39validationstreams2YAMLpnpm9es7dataviewreducemimetypesauthenticationjapaneselimitwhichviewdefinePropertymetadataclientnativepackage.jsonstylemochaeslintconfigRxJSenvObjectArrayReactiveExtensionsiteratorbindspinnerwhatwgtermwordbreakpackagesform-validationmapreducetslibinternaleast-asian-widthtypeoflastgetPrototypeOftimebatchredux-toolkitArray.prototype.includesestreeio-tstouchObject.valuescolorredactcreateqsvalidregular expressionsmruintrinsicmoduleInt8ArraytoolkitObject.fromEntriesmimefullwidthchanneltapregulardayjsCSSuuidsignalsjwtrouterRxpromisescloudtrailtoStringTagmacoselectronBigUint64ArrayieinstallECMAScript 5charactersdom-testing-libraryrapidsymbolwaitkinesisrgbstructuredCloneES3less.jsescapepolyfilljoi[[Prototype]]deepclonelinkidincommandergradients css3cjktraversenegativecallboundmatchAllcurlfindes2016css-in-jsArray.prototype.containsfpstrimerrordatehardlinksdomcryptowgettddratedescriptorssimpledbarraybufferECMAScript 7zodeslintformattinglazyoptimistpicomatchpreserve-symlinkspropertiesECMAScript 2015ReactiveXtakewordwrapsortjsxcore-jstestxhrformhasweakmapcss nestingelasticacheavaencryptioncharacterworkflowtapecompareES6containssyntaxerrorinvariantdynamodbelmrmstylestoobjectapolloquoteglobalfindLastIndexcorsES2020ECMAScript 6persistentutil.inspectjavascriptmergeinterruptscoreebssafehttpterminalRFC-6455Int32ArraywatchFileconnectobjsomeArray.prototype.filteridentifiershandlersflatcloudfronthasOwnFloat64Arraycloudwatchinternal slottoArrayes2015deleteserializenodejslogchineseMicrosoftsinatrawatcherpyyamlbuffersfastclonesesmovermdirArrayBuffer#slicebootstrap lesscallbindObservableextraemrUint8Arrayelbwafasyncfast-clonerm -frsigintshrinkwrapresolvetyped arraymonorepodroppositivenodeecmascriptreplaychromeyupdataViewvariablesoffsetbrowserslisti18nmulti-packagecloudsearchcompilerponyfillflagsforEachgenericsmatchesbddcall-bindoutputpruneconcatMapWeakMapES2015apiArray.prototype.findLastIndexpostcsscolumnsmomentprototypebannerscheme-validationgdprclassnamesstreamsbcryptfunctionalSymboldescriptionarrayenvironment$.extendparsecodesidleArray.prototype.flatoptimizerECMAScript 2021fetchec2Reflect.getPrototypeOfmkdirscolorsobject0sharedprocesspromisehttpsequalpluginajvhas-owntypedarraysprogressargvRegExp.prototype.flagsdatafindupsharedarraybufferemojiarktypeslotES8querystringlibphonenumberstringifierJSONmkdirpyamlbyteLengthpatchargumentclassesamazonJSON-SchemautilitiesObservableslookschemaframeworkonceECMAScript 2017modulesexpressArray.prototype.flatMapthrottleES2019everyjsonarraysgraphqlstyleguideirqownnegative zeroeventEmitteresgradients csscommand-linetoSortedstarterObject.entriesshebangArray.prototype.flattenes8mixinsStyleSheetefficientqueuemkdirimporttsfastifyeventDispatcherfile systeminstallersnsreactaccessorbreakdescriptorfastparentsstylingcoercibleshellkarmafast-deep-clonecallbackhelpersECMAScript 2022loggerawaitWebSocket__proto__jsonpathAsyncIteratorincludessqsprotoautoprefixeroptionvestshames-shimsconcatECMAScript 2020eslintpluginenumerableWebSocketsString.prototype.trimObject.assignhookformstringifyphonerfc4122trimRightserializerformatzerogetterTypedArraydirectoryextensionwarningconfigurablebusydependencieslook-upimportexportmake dirwalkingES7astl10ntypesafetaskrandomtoolsgroupECMAScript 2016Uint16ArraypropertypredictablehashiteratesigtermtypedconfigSymbol.toStringTaghigher-orderminimalloadbalancingregexes5ES2018assertsconcurrencyvalueseventsopenreadablestreamcensorrestwatchingswfrobustfast-deep-copyString.prototype.matchAllclifixed-widthclass-validatordeterministicreduceruprangeerrorHyBicloudformationprefixemituninstallequalityairbnbmiddleware
1.0.0

1 year ago