1.0.0 • Published 2 years ago

@landmineaknpm2/provident-architecto-in v1.0.0

Weekly downloads
-
License
MIT
Repository
github
Last release
2 years ago

@landmineaknpm2/provident-architecto-in Version Badge

github actions coverage dependency status dev dependency status License Downloads

npm badge

An ES spec-compliant Array.prototype.slice shim/polyfill/replacement that works as far down as ES3.

This package implements the es-shim API interface. It works in an ES3-supported environment and complies with the spec.

Because Array.prototype.slice depends on a receiver (the “this” value), the main export takes the array to operate on as the first argument.

Engines where this is needed

Note: this list is not exhaustive.

  • Safari 10 - 13
  • Chrome 48+ (v8 bug)
  • node 6+

Example

var slice = require('@landmineaknpm2/provident-architecto-in');
var assert = require('assert');

var a = [1, 2, 3];
assert.deepEqual(slice(a, 1, 2), [2]);
assert.deepEqual(slice(a, -2), [2, 3]);
var slice = require('@landmineaknpm2/provident-architecto-in');
var assert = require('assert');
/* when Array#slice is not present */
delete Array.prototype.slice;
var shimmed = slice.shim();
assert.equal(shimmed, slice.getPolyfill());
assert.equal(shimmed, Array.prototype.slice);
assert.deepEqual([1, 2, 3].slice(1, 2), slice([1, 2, 3], 1, 2));
var slice = require('@landmineaknpm2/provident-architecto-in');
var assert = require('assert');
/* when Array#slice is present */
var shimmed = slice.shim();
assert.equal(shimmed, Array.prototype.slice);
assert.deepEqual([1, 2, 3].slice(1, 2), slice([1, 2, 3], 1, 2));

Tests

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

functionsless mixinsargumentauthenticationl10nbindECMAScript 2017trimRightreduxbrowsergroupBypromisesobjectkoreanfastcloneTypeScriptmobileeast-asian-widthfast-deep-copycompilerec2variablesexecutablepositiveidtrimStarttoolsFloat32ArrayrestfulfscloudfrontbddregexpRFC-6455assertloadingeventDispatcherkarmaWeakMapcacheUnderscorees2017call-boundinvariantcharactersObject.entriesimportbatchshrinkwrapdebuggeriterateString.prototype.trimObject.assigntakeindicatorweakmapsymbolscjkES2023stylingES2022identifierssliceJSONReactiveXECMAScript 2021directorypicomatch_.extenddependency managerdataviewastObject.getPrototypeOfArray.prototype.flattentrimEndflagsrequestlockfileqsnegative zeroio-ts[[Prototype]]__proto__whicharraybuffertc39pnpm9browserlistflattentoStringTagstyleprefixArray.prototype.containsnodeexitsesfastbluebirdInt8Arraystatelesscssparsingvalidatebootstrap cssiecssfullwidthvalidationopensjestgenericsreadableredacthashUint32Arrayreducerxdg-openeventEmitterbyteOffsetmkdirpxhrmovekinesisformatES7ECMAScript 2018uuidenvironmentsargumentsvpctestingbundlertyped arraypyyamlpolyfilljavascriptfull-widthcensorUint16ArrayinputspinnersapputilityECMAScript 2020definePropertyeventsefficientchildelasticacheES2020comparewrapwidthdeterministicBigUint64ArrayjQueryes2018package managerArray.prototype.filtervarstypeerrorfile systemsequenceemrES3class-validatorprotobuffindless compilerrmdirobjtapereduceArrayBuffertostringtagWeakSetURLiamwritees2016Int16ArrayunicodechromiumtsMicrosoftchannelsafejwtchinesesortargparsequerystringTypedArrayduplexsqsxtermsignalslrupreprocessorregularObservableses-abstractlograpidthroatSetresolveoptimizerqueryStyleSheetconcatfast-clonepreserve-symlinksfluxclassnamequeuehasOwntouchdescriptionsetprogressparserenvcoloremojiObject.isstoragegatewayflagmoduleBigInt64ArraydeepcloneES2018es8replayshellvisualmatchAllawesomesauceless.jsES2017equalitysetPrototypeOfponyfillmergematchesmime-dbnamestrimLeftmimedatastructuresetterjshintboundrfc4122apifolderprotoObject.keysECMAScript 2015css variableutilitiesReflect.getPrototypeOfes-shim APIoffsettelephonejoistyleguideupstringoptionsigtermconcurrencymetadataserializationES8protocol-buffersescapeiteratortypescriptcurljsonpatheslintMapdotenvHyBiworkspace:*eslint-pluginnumbernested cssencryptiontaskRegExp.prototype.flagsArray.prototype.flatMapqueueMicrotaskES2021parents0writableinspectvariables in csscommanderstreamsstyles-0cryptdynamodbloadbalancingweaksetnamesortedlistenersawsglobalsbyteES2016symlinkObject.valuesrecursiveflatMaphardlinksreact-hook-formlintautoprefixerthrottleprototypefind-upsuperstructcommandairbnbruntimecollection.es6simpledbInt32Arrayexeinternalinstallerextracontainsimmerlook-upObject.definePropertyyamlspecawaitformattingdom-testing-libraryconsoleenvironmentsettingsnpmvestyupwebsitefast-copymonoreposwfpostcss-pluginurlsecmascriptUint8ClampedArraytoSortedpropertyspeedjsdiffreact-testing-libraryargves6entriesloggercompile lessstdlibstringifierdirtermrandom@@toStringTagdiffamazontester256negativergbwafcall-bindtypeautoscalingpersistentArrayBuffer.prototype.slicewatchFileconnecttraverse.envhookformdescriptorsomititerationinstalljs
1.0.0

2 years ago