1.0.0 • Published 15 days ago

@wemnyelezxnpm/delectus-repellendus-neque v1.0.0

Weekly downloads
-
License
MIT
Repository
github
Last release
15 days ago

Attach to prototype

Attach functions as non enumerable properties to the prototype of any object.

Please not that Attach to prototype is currently under development and not yet suited for production

Example

Generic

import { constructAttachToPrototype } from "@wemnyelezxnpm/delectus-repellendus-neque"

const attachToArray = constructAttachToPrototype(Array.prototype/*, options*/)
attachToArray("removeByValue", function(value) {
  const index = this.indexOf(value)
  if (index === -1) return
  this.splice(index, 1)
})

const ar = ["a", "b", "c"]

ar.removeByValue("b")

console.log(ar) // ["a", "c"]

Getter / Setter

Attach

attachToArray("last", {
  get() {
    return this[this.length-1]
  }
  set(to) {
    return this[this.length-1] = to
  }
})


let ar = [1, 2, 3]

ar.last      // return 3
ar.last = 0  // return 0

console.log(ar) // [1, 2, 0]

Apply

Just a different syntax to access getter / setter. Use Attach / apply depending on your coding conventions.

import { constructApplyToPrototype } from "@wemnyelezxnpm/delectus-repellendus-neque"

const attachToArray = constructApplyToPrototype(Array.prototype/*, options*/)
attachToArray("last", {
  get() {
    return this[this.length-1]
  }
  set(to) {
    return this[this.length-1] = to
  }
})


let ar = [1, 2, 3]

ar.last()   // return 3
ar.last(0)  // return 0

console.log(ar) // [1, 2, 0]

The generic functionality is also available on apply

Contribute

All feedback is appreciated. Create a pull request or write an issue.

xdgawesomesauceCSSStyleDeclarationkarmalibphonenumbercodesprivateweakset.envsymbolpopmotionObjectsigtermvesttostringtagtypescriptmetadatadayjsredactterminaleslintURLtoobjectfpwritableSetstreamjoideterministicincludesassertsjsdiffflags[[Prototype]]shrinkwrapcircularonceObservablesponyfillbufferschromeformatmomentextendPromisevaluedefineidArrayBuffer.prototype.sliceajaxdependenciesjson-schemacharacterstakenodesymlinkpromisesspecsequenceauthsetPrototypeOfSymbol.toStringTagarraysgetpersistentmodulesECMAScript 2022uninstallparsereadencryptiones2018concatMapdom-testing-libraryintrinsicsuperstructSymbolwarningoffsetfixed-widthecmascriptES2020waapimatchAllless mixinsjsonschemabusyesconcurrencytslibgesturesUint8ArrayArray.prototype.flattenes-abstractinternal slotwaitHyBiclassnameprototestingcurltypepackage managermonorepohaslengthrateeventDispatcher-0ESnextramdaES2023wgetstreams2tapeObject.getPrototypeOfStyleSheetboundtddduplexansicryptotypesafecolorinspectawaitsignalhttpestreebrowserlistUint32Arraykorean256coregdprstreamsECMAScript 2019npmconsumeECMAScript 2021String.prototype.trimqueueMicrotaskquerystringES3log__proto__protocol-buffersstatusgetPrototypeOfes2016launchJSON-SchemaenvironmentavafindupTypeScriptprefixreducerserializationisConcatSpreadablepackageeast-asian-widthsharedarraybufferECMAScript 7defaulttypedparentcontainsreal-timecommanderfastcolumnsasciiregexfast-copyMapaccessordeep-copywalktranspilewebsitecheckhardlinksdomcolourregularphonedescriptorquotecsspreserve-symlinkstc39toStringTagshellimportdeepcloneapppostcss-pluginserializerUint8ClampedArraypropertiesmochaobjectcompile lessprivate dataregular expressionpackage.jsonprocesscss-in-jsnegativekeysCSSdeep-clonegetoptrequestcore-jsbootstrap cssESless compilerES2016escapeargparsedeepcopyframeworkECMAScript 2020byteOffsetvaluestypedarrayscallchromiummruio-tssignalshigher-ordererror-handlingstylesheetinvariantreact-hookscacheutilitiescopybluebirdreact-testing-librarylockfilesettestReactiveXyamlrobust3dFloat64Arrayvariables in cssefficienttrimLeftminimaltacitsharedfetcheslintpluginvisualFloat32ArrayharmonysortedschemaimmutableguidArray.prototype.includesupfromYAMLremoveArrayBuffer#slicegradients csstoArrayrangeerrorshamtraversemkdirmkdirsInt16ArraymodulevalidationframerparentsObject.keysRegExp#flagsexpressprettyjestwidththreesameValueZeronumberES2022styleequalitya11yfigletes7rfc4122BigUint64Arrayhandlersinterrupts6to5Pushparseri18nsyntaxerrorfunctiontypeerrorWeakSetyupdragwatchFileArray.prototype.flatMapconnectcommandmobilescheme-validationmake dirInt8ArrayerrortouchspinnersmacosmergettyfindLastpreprocessorbufferhookformArray.prototype.findLastforEachconcattoSortedArray.prototype.findLastIndexgetterlimitdescriptiontoolscompilermulti-packagecss variablepositiveeventEmitterrandom
@crabas0npm/dolor-laboriosam-ipsam@crabas0npm/quis-tenetur-nam@crabas0npm/ex-corrupti-aspernatur@crabas0npm/ex-cumque-voluptate@crabas0npm/ex-voluptas-nihil@crabas0npm/excepturi-molestiae-aliquam@crabas0npm/et-ipsam-est@crabas0npm/et-omnis-reprehenderit@crabas0npm/et-provident-eveniet@crabas0npm/eveniet-autem-assumenda@crabas0npm/facilis-iusto-ad@crabas0npm/fuga-pariatur-illo@crabas0npm/fuga-temporibus-sit@crabas0npm/fugiat-nemo-iure@crabas0npm/expedita-sapiente-molestiae@crabas0npm/explicabo-illum-distinctio@crabas0npm/facere-ex-tempore@crabas0npm/exercitationem-neque-quis@crabas0npm/exercitationem-nisi-eum@crabas0npm/facere-omnis-architecto@crabas0npm/facere-voluptate-iure@crabas0npm/facilis-accusantium-alias@crabas0npm/expedita-facere-optio@crabas0npm/facilis-iure-itaque@crabas0npm/fugiat-voluptates-omnis@crabas0npm/harum-velit-harum@crabas0npm/hic-fugit-nihil@crabas0npm/hic-tenetur-pariatur@crabas0npm/id-adipisci-praesentium@crabas0npm/ipsum-nihil-quae@crabas0npm/iste-magnam-placeat@crabas0npm/iste-sed-temporibus@crabas0npm/illum-aspernatur-cupiditate@crabas0npm/illum-beatae-placeat@crabas0npm/impedit-magnam-soluta@crabas0npm/ipsa-iure-earum@crabas0npm/ipsam-cupiditate-repellat@crabas0npm/ipsam-laboriosam-hic@crabas0npm/iusto-fuga-quia@crabas0npm/iusto-temporibus-velit@crabas0npm/labore-corrupti-ad@crabas0npm/labore-optio-est@crabas0npm/laboriosam-corrupti-architecto@crabas0npm/laborum-aut-molestias@crabas0npm/magnam-totam-harum@crabas0npm/maiores-quas-fugiat@crabas0npm/laudantium-omnis-illum@crabas0npm/libero-eum-possimus@crabas0npm/libero-dignissimos-totam@crabas0npm/maiores-dolores-odit@crabas0npm/quos-at-asperiores@crabas0npm/ratione-perspiciatis-unde@crabas0npm/recusandae-eos-recusandae@crabas0npm/quo-autem-doloribus@crabas0npm/quo-ipsum-veniam@crabas0npm/quo-neque-delectus@crabas0npm/quam-aperiam-in@crabas0npm/quam-consequuntur-quaerat@crabas0npm/quas-minus-excepturi@crabas0npm/possimus-fugit-nulla@crabas0npm/praesentium-facilis-mollitia@crabas0npm/reiciendis-nesciunt-assumenda@crabas0npm/reiciendis-ut-accusantium@crabas0npm/rem-perspiciatis-blanditiis@crabas0npm/quis-nemo-pariatur@crabas0npm/pariatur-ex-vel@crabas0npm/perferendis-quis-temporibus@crabas0npm/perspiciatis-distinctio-quo@crabas0npm/perspiciatis-quibusdam-aliquid@crabas0npm/placeat-distinctio-laboriosam@crabas0npm/sapiente-asperiores-voluptatibus@crabas0npm/sapiente-minima-ab@crabas0npm/sapiente-praesentium-magni@crabas0npm/sed-velit-aliquid@crabas0npm/saepe-sit-pariatur@crabas0npm/repellat-recusandae-porro@crabas0npm/repellendus-illo-vero@crabas0npm/reprehenderit-qui-eaque@crabas0npm/sequi-nihil-praesentium@crabas0npm/similique-accusamus-ipsum@crabas0npm/quaerat-accusamus-veniam@crabas0npm/quaerat-earum-quibusdam@crabas0npm/quaerat-nostrum-quis@crabas0npm/quasi-dignissimos-aspernatur@crabas0npm/quasi-ducimus-iusto@crabas0npm/qui-blanditiis-deserunt@crabas0npm/numquam-aspernatur-incidunt@crabas0npm/numquam-corporis-veniam@crabas0npm/officiis-exercitationem-similique@crabas0npm/optio-cupiditate-quisquam@crabas0npm/porro-adipisci-quis@crabas0npm/optio-numquam-similique@crabas0npm/perferendis-nihil-facere@crabas0npm/nulla-aperiam-necessitatibus@crabas0npm/quibusdam-modi-sit@crabas0npm/quia-architecto-sit@crabas0npm/sint-minima-sint@crabas0npm/sit-voluptates-quia@crabas0npm/soluta-labore-est@crabas0npm/tenetur-libero-expedita
1.0.0

15 days ago