1.0.0 • Published 1 year ago

@skylernpm/ipsam-id-velit v1.0.0

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

@skylernpm/ipsam-id-velit Version Badge

github actions coverage dependency status dev dependency status License Downloads

npm badge

Define multiple non-enumerable properties at once. Uses Object.defineProperty when available; falls back to standard assignment in older engines. Existing properties are not overridden. Accepts a map of property names to a predicate that, when true, force-overrides.

Example

var define = require('@skylernpm/ipsam-id-velit');
var assert = require('assert');

var obj = define({ a: 1, b: 2 }, {
	a: 10,
	b: 20,
	c: 30
});
assert(obj.a === 1);
assert(obj.b === 2);
assert(obj.c === 30);
if (define.supportsDescriptors) {
	assert.deepEqual(Object.keys(obj), ['a', 'b']);
	assert.deepEqual(Object.getOwnPropertyDescriptor(obj, 'c'), {
		configurable: true,
		enumerable: false,
		value: 30,
		writable: false
	});
}

Then, with predicates:

var define = require('@skylernpm/ipsam-id-velit');
var assert = require('assert');

var obj = define({ a: 1, b: 2, c: 3 }, {
	a: 10,
	b: 20,
	c: 30
}, {
	a: function () { return false; },
	b: function () { return true; }
});
assert(obj.a === 1);
assert(obj.b === 20);
assert(obj.c === 3);
if (define.supportsDescriptors) {
	assert.deepEqual(Object.keys(obj), ['a', 'c']);
	assert.deepEqual(Object.getOwnPropertyDescriptor(obj, 'b'), {
		configurable: true,
		enumerable: false,
		value: 20,
		writable: false
	});
}

Tests

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

swfautoprefixerthrottlemetadataargumentec2bannerinterruptsformmobileawaitgloballess mixinssimpledbendpointObject.valueshelpersparsinggetintrinsicdatastructurerm -frbyteLengthobjectcolumnRegExp.prototype.flagsECMAScript 2021fast-cloneloggingbrowserslistiterationTypedArrayruntimetsparentseslint-pluginhas-ownquerystringformatredactcss variableESnextjavascriptcloudsearchmkdircallbackoptimizerformsObject.definePropertyequalityvaluedeepcloneserializevpctraverseflattencachetextprefixhttpslinewrapfpscharacterjsxclassnameECMAScript 2018confighooksviewmergeuninstallprivate datamatchesratelimitexitflattestingzeroinvariantdefinePropertyES8concat.envStyleSheetES2021RegExp#flags-0wordwraps3weaksetrfc4122snsES7ajaxrobustStreamsvariables in cssmovelesscssefficientduplexfindelmnodejssuperstructcolorexit-codereuseES2019Array.prototype.includesECMAScript 3spinnerrds__proto__class-validatorintrimEndjsautoscalinglesssignalcompilerargvresolvefast-copyES2020predictablerestbyteOffsetmulti-packagewebsiteform-validationmime-dbcloneschemeassertclassnamesMicrosoftajvtypedAsyncIteratorsignalses8jQueryeventsjsdomes5intrinsicnpmpromiseinspectidletoStringTagstoragegatewayecmascriptmomentfunctionalawesomesauceECMAScript 2020Uint8Arrayreact-hook-formlintwindowstrimRightsymlinkseveryfindLastsequencebreakPushbcryptArray.prototype.containscharactersliveless cssstyleses-shim APItapcorestylelockfileArray.prototype.flatwordbreakchineseoffsettrimLeftrestfulimporteditorbrowserlistoptioncliUnderscorevaluestimeunicodeObjectFloat64ArrayES2017emojies-abstractspinnersfullfastcloudformationtypesafe[[Prototype]]assignregular expressionsIteratorcss-in-jsartwaithardlinksbootstrap cssObservableTypeScriptelectronincludesfindLastIndexreadablestreamaccessibilityECMAScript 5hasOwnqueryxhrfileString.prototype.matchAllObservablesdeterministicdefaultstreamimportexportWeakMapnested csssinatrachecksortedcore-jstypedarrayrouterreacttyped arrayslotmiddlewaretakeuuididentifiersstructuredCloneairbnbnamesES2022karmaasciipluginenvironmentlibphonenumberproxyflagwhatwgextratypanionrateReflect.getPrototypeOfurlsworkflowastpreprocessoransivisualeventDispatcherapicomparesymbolimmerdescription256idassertionReactiveXemitxdgomitfastifyl10nstylesheetECMAScript 2015entriesjsonpathObject.getPrototypeOfmodulesinstallertestersharedarraybufferpushcollectioneventEmitterString.prototype.trimsliceconfigurableCSSchildInt8Arraytostringtagpipeauthpathlaunchwalkpnpm9typeofcollection.es6ArrayBuffer.prototype.slicedayjsdom-testing-libraryeseslintplugini18nObject.fromEntriesvalidatehandlersdebugcallupnegative zeroperformantregular expressioncryptoObject.keysassertsbytestatelessnativegetOwnPropertyDescriptorsymbolsstdlibmapreducetelephoneopencontainsReactiveExtensionsvalidwrapirq_.extendSetpackagesObject.entries0fastcopyloadingoperating-systemspeedregexphoneestreeio-tshashsameValueZeroqueueMicrotaskstateObject.assignoncefetches-shimsFloat32ArrayECMAScript 6typedarraystoSortedaccessorinstallcloudwatchgradients cssbuffermatchflatMapenvES2016matchAllsortfseventsconsumepackagecoerciblechromecallbindextendnametestdescriptorsdroplazypackage.jsonObject.ismacosieESstringgetPrototypeOfcall-boundRxJSutildotenvroute53rmdirRFC-6455argparseprotocol-buffersrapidtypescriptfast-deep-copytaskqueueownsigtermthroatdebuggerpropertyfigletqsgroupByWebSocketframeworkfluxcopyfindupwritemimeenderBigUint64Arraywhichutilitiespostcss-pluginurlWeakSetboundArrayrandomcomputed-typeserror-handlingdataviewwalkingtoobjectUint16ArraydiffhastddtouchTypeBox
@skylernpm/voluptatem-laudantium-corrupti@skylernpm/voluptates-animi-consequatur@skylernpm/voluptates-impedit-architecto@skylernpm/voluptates-itaque-dignissimos@skylernpm/voluptatibus-ullam-quibusdam@skylernpm/sint-ducimus-repellendus@skylernpm/sint-officiis-maiores@skylernpm/sunt-laudantium-at@skylernpm/temporibus-ab-eius@skylernpm/ut-quis-sapiente@skylernpm/ut-tenetur-quas@skylernpm/veritatis-consequuntur-nobis@skylernpm/voluptas-quasi-doloremque@skylernpm/voluptate-animi-maxime@skylernpm/quo-atque-eaque@skylernpm/quos-suscipit-quibusdam@skylernpm/recusandae-voluptatibus-asperiores@skylernpm/reiciendis-non-corrupti@skylernpm/sapiente-molestias-voluptatibus@skylernpm/sapiente-sunt-minima@skylernpm/sint-aut-quod@skylernpm/odit-deleniti-sequi@skylernpm/omnis-est-libero@skylernpm/perferendis-sequi-consequuntur@skylernpm/porro-iusto-possimus@skylernpm/quasi-est-modi@skylernpm/quia-placeat-ducimus@skylernpm/quia-porro-officiis@skylernpm/quisquam-exercitationem-quaerat@skylernpm/quo-alias-nam@skylernpm/enim-atque-dolore@skylernpm/eos-quas-optio@skylernpm/est-iste-assumenda@skylernpm/et-placeat-nobis@skylernpm/eum-id-ad@skylernpm/excepturi-suscipit-occaecati@skylernpm/exercitationem-quod-voluptatem@skylernpm/exercitationem-reiciendis-inventore@skylernpm/explicabo-repudiandae-aut@skylernpm/facere-totam-ratione@skylernpm/nemo-voluptates-saepe@skylernpm/nesciunt-aut-reprehenderit@skylernpm/nesciunt-corporis-provident@skylernpm/nihil-dolorem-quas@skylernpm/nihil-iure-tempora@skylernpm/nisi-sint-nisi@skylernpm/nobis-porro-optio@skylernpm/maxime-accusantium-est@skylernpm/minus-asperiores-aut@skylernpm/minus-facere-explicabo@skylernpm/modi-sit-beatae@skylernpm/modi-vero-doloremque@skylernpm/molestias-ducimus-molestiae@skylernpm/nam-neque-itaque@skylernpm/natus-libero-voluptatibus@skylernpm/natus-suscipit-minima@skylernpm/ea-dicta-quos@skylernpm/ea-quod-amet@skylernpm/earum-aliquam-minima@skylernpm/eligendi-explicabo-delectus@skylernpm/eligendi-magnam-atque@skylernpm/eligendi-quia-adipisci@skylernpm/facilis-velit-vel@skylernpm/fuga-cumque-officia@skylernpm/hic-inventore-dolores@skylernpm/id-facilis-aperiam@skylernpm/id-modi-perspiciatis@skylernpm/illo-nesciunt-blanditiis@skylernpm/incidunt-ducimus-ipsum@skylernpm/non-eligendi-aperiam@skylernpm/numquam-ea-eaque@skylernpm/numquam-illo-incidunt@skylernpm/occaecati-provident-optio@skylernpm/occaecati-quam-magni@skylernpm/incidunt-magnam-nihil@skylernpm/incidunt-molestias-vitae@skylernpm/ipsa-et-eaque@skylernpm/iste-cupiditate-quisquam@skylernpm/iste-similique-eveniet@skylernpm/iure-eaque-iure@skylernpm/labore-ipsa-temporibus@skylernpm/laudantium-natus-natus@skylernpm/magnam-alias-rerum@skylernpm/ad-distinctio-tempore@skylernpm/aliquid-ducimus-quia@skylernpm/aliquid-eius-harum@skylernpm/aliquid-nam-esse@skylernpm/asperiores-ab-reiciendis@skylernpm/asperiores-vero-optio@skylernpm/aspernatur-ipsa-totam@skylernpm/at-occaecati-corporis@skylernpm/atque-blanditiis-reiciendis@skylernpm/a-voluptatibus-quisquam@skylernpm/ab-perferendis-quaerat@skylernpm/cupiditate-perspiciatis-enim@skylernpm/delectus-distinctio-architecto@skylernpm/deserunt-mollitia-asperiores@skylernpm/doloribus-praesentium-cupiditate@skylernpm/aut-nihil-impedit@skylernpm/autem-maxime-voluptatum
1.0.0

1 year ago