1.0.0 • Published 1 year ago

@landmineaknpm2/a-ducimus-eius v1.0.0

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

@landmineaknpm2/a-ducimus-eius 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('@landmineaknpm2/a-ducimus-eius');
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('@landmineaknpm2/a-ducimus-eius');
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

css lessassertstddkeybundlingrecursiveequallimitedgroupvariablesJSON-SchemabundlertoolsinvariantmetadatacoercibleHyBitapObject.entriesequalityES2018dataViewvestcompilerfastcopyutilitiesajaxquerynopetyped arrayeslint-pluginloggerfull-widthtextvarshandlerscolorSymbolrequireenumerablelastrestfulargumenthttpvalidstoragegatewayautoscalingconfigurablefullwidthsqsmatchisConcatSpreadablerobustTypeScripttostringtagSymbol.toStringTagelbwhichforEachprunees-abstractoffsethas-owndeepmkdirpreducernameslruxtermmoveESnexttrimStartgetteryupcss nestingopensparseless.jsFunction.prototype.nameassertpipeasynclinuxoperating-systemsignalsfsencryptionvalueextradebuggerartchannelArray.prototype.flatmkdirsruntimemixinsspecsharedarraybufferwidthjQuerystreamsdayjstestbannerrateserializationparentcollection@@toStringTagcryptowebgetoptfindwaitECMAScript 2021windowsfind-uptrimLeftcreatebatchstreamminimalstylesimmutablenumberObject.getPrototypeOfutilityfast-copyidTypeBoxmobileonceclassesreactRxformsflates8immerlinkexetoStringTagsymlinkutil.inspecthasOwnPropertygetPrototypeOfMicrosoftInt8ArraypreprocessornegativeconcatlivecodesReactiveXcensorstatusloadbalancingreduxECMAScript 5uphardlinksCSSStyleDeclarationflagsbeanstalkiegdprcoreparserpatcharraybuffercloudwatchcall-boundratelimitcliawesomesauceastawscss-in-jsinglacierchildbrowserslistemitincludesfigletpostcssjasminecircularttyresolveserializeappsigtermECMAScript 2022executableendpointtouchreal-timerangeerrorsnswafresttypesafeReflect.getPrototypeOfshebangnegative zerolockfilevariables in cssfindLastzodisaccessorscheme[[Prototype]]Array.prototype.flatMapiamproxyopenerautoprefixerstringstyleeslintpluginyamlpropertyStreammodulestreams2hotlengths3cloudtrailperformancefastifystatebreakhookstimeinternal slotlimitindicatorfromwarningloadingmruintrinsiccode pointslesscallES2022l10nswfstylingtypedarrayES2023urlloggingauthpasswordUint32Arraydom-testing-libraryes2015prototypeflagmonorepofunctionsauthenticationbddECMAScript 2018higher-orderansiwriteString.prototype.trimpathtrimEndexpresscryptredux-toolkitgetnodeobjuuidmime-dbconsoleregexpwatcheravaeverywebsiteprotobufparsingtypanionelasticache256Array.prototype.findLastdateextendes6curlObject.iskeysxdg-openmapreducejwtelectrontc39commandinternalarrayperformantsyntaxhttpslibphonenumberlesscssArray.prototype.flattenvisualcloudfronttrimRightefficientpromisereadablestreamstringifyfluxstructuredCloneeast-asian-widthECMAScript 2016randomdropfseventsgradients css3ES8rmstyled-componentsfoldersuperstructchineseexpressionajvrdschromedataviewECMAScript 2020iteratordeterministicObservabletslazyFloat64Arrayfile systemregexsliceairbnbcharacterstartergetOwnPropertyDescriptoremrWeakMapdirectoryprotolinewrapwalkprivateBigInt64Arraypolyfilldescriptorform-validationlistenerslaunchECMAScript 6postcss-pluginserializerRxJSelmregular expressionmiddlewarelook-updatastructureWebSocketsIteratorroute53fast-deep-clonequotecolumnssymbolsnodejsgroupByprotocol-bufferstoSortedpreserve-symlinksless compilerexitYAMLglobtypeerrorstylesheetinspectpositiverm -frObject.valueswrapthrottlelookaccessibilitypropECMAScript 2015installURLSearchParamseslintpackage.jsonebsnamecmdrm -rfiterationdeepcopyfpsjshintcollection.es6walkingdeep-clonesetterarktypemergeterminalgenericsargvmomentArray.prototype.filterspinnerphoneflattenpredictabletestingclassnamesasciidirpushdebugES2020packagesdefaultnested cssmapbusyfast-cloneexit-codeESkarmacallboundObservablesjsdomRFC-6455schemacompile lesserror-handlingmkdirtoobjectinputmacos$.extendpicomatchTypedArrayconsumetslibredactsequencergboptimizercore-jsES2016Array.prototype.includesopenreadablerequestfastclonecomparereademojiBigUint64Arrayjsonpathsetawaitfixed-widthtoolkitoptionestreeObject.definePropertydefinecloudformationwhatwgpersistentirqparentsstartbootstrap less.envjsscheme-validationsidefindupoptimistStreamsguidformatArrayreusecolourmimehelperscharacterstypedremovebrowserlistfetchfast-deep-copyviewArrayBuffer#sliceregular expressionsString.prototype.matchAlldynamodbkinesisbootstrap cssObject.fromEntriesformsameValueZeroweakmapspeedamazonpnpm9sorted_.extendshamfastUnderscoreeslintconfigpluginworkspace:*environmentfunctionalRegExp.prototype.flagsjsones2016taketapepackage managereventDispatchersymlinksbrowseri18nexecdiffconnectprettytermmake dirtypeofsigintsuperagentJSONdeep-copyclass-validatormochaglobals0callbackES6qs-0watchingreact-hook-formcommand-linemodulesUint8ArrayprocessunicodetesterdefinePropertyworkflowendershrinkwrapsyntaxerrorgradients cssPromiseObject.assignshimworkerapimatchescallbindsomeenvextensionuninstallcloneagentbuffersstatelessinferenceessettingsimportexportsesvalidateWeakSetreact-testing-libraryECMAScript 2017boundthroatRegExp#flagsownecmascriptReactiveExtensionsduplexES2017idledata
@landmineaknpm2/illum-facilis-quaerat@landmineaknpm2/eveniet-animi-nobis@landmineaknpm2/eveniet-ipsum-magni@landmineaknpm2/eveniet-repudiandae-eum@landmineaknpm2/exercitationem-quos-magni@landmineaknpm2/explicabo-rem-facere@landmineaknpm2/facere-soluta-quod@landmineaknpm2/facere-voluptatum-a@landmineaknpm2/fuga-maiores-distinctio@landmineaknpm2/fugit-cum-delectus@landmineaknpm2/delectus-quibusdam-consequuntur@landmineaknpm2/deserunt-veritatis-voluptas@landmineaknpm2/doloremque-accusamus-deserunt@landmineaknpm2/doloremque-reprehenderit-saepe@landmineaknpm2/ducimus-iure-officiis@landmineaknpm2/eaque-adipisci-soluta@landmineaknpm2/eligendi-numquam-iure@landmineaknpm2/error-optio-quidem@landmineaknpm2/error-similique-assumenda@landmineaknpm2/est-explicabo-assumenda@landmineaknpm2/a-nisi-architecto@landmineaknpm2/a-quia-aspernatur@landmineaknpm2/ab-autem-tempore@landmineaknpm2/accusantium-quaerat-illum@landmineaknpm2/adipisci-sequi-qui@landmineaknpm2/aliquam-aliquid-error@landmineaknpm2/aliquid-iste-ipsum@landmineaknpm2/aliquid-nisi-culpa@landmineaknpm2/atque-neque-molestias@landmineaknpm2/aut-odio-numquam@landmineaknpm2/commodi-sit-reiciendis@landmineaknpm2/consequatur-quod-maxime@landmineaknpm2/cum-enim-eius@landmineaknpm2/cumque-dolore-deserunt@landmineaknpm2/debitis-fugiat-nesciunt@landmineaknpm2/tenetur-placeat-delectus@landmineaknpm2/totam-facere-occaecati@landmineaknpm2/vel-consectetur-dicta@landmineaknpm2/vel-natus-rerum@landmineaknpm2/velit-voluptatem-aliquid@landmineaknpm2/veniam-officiis-qui@landmineaknpm2/veniam-voluptate-consequuntur@landmineaknpm2/vero-ducimus-eveniet@landmineaknpm2/voluptates-illum-voluptates@landmineaknpm2/voluptatibus-error-velit@landmineaknpm2/voluptatibus-sint-vitae@landmineaknpm2/sunt-qui-error@landmineaknpm2/tempore-dolorum-ad@landmineaknpm2/tempore-harum-hic@landmineaknpm2/temporibus-amet-exercitationem@landmineaknpm2/temporibus-quia-minima@landmineaknpm2/temporibus-rem-incidunt@landmineaknpm2/officiis-iure-facilis@landmineaknpm2/omnis-distinctio-accusantium@landmineaknpm2/optio-reiciendis-rem@landmineaknpm2/pariatur-dolores-sequi@landmineaknpm2/placeat-soluta-quis@landmineaknpm2/porro-eligendi-ea@landmineaknpm2/porro-quia-ullam@landmineaknpm2/provident-architecto-in@landmineaknpm2/quam-quam-quod@landmineaknpm2/quasi-expedita-magni@landmineaknpm2/quia-temporibus-aut@landmineaknpm2/quidem-deserunt-aut@landmineaknpm2/quisquam-eveniet-deserunt@landmineaknpm2/quo-incidunt-et@landmineaknpm2/libero-inventore-cupiditate@landmineaknpm2/molestiae-vero-earum@landmineaknpm2/molestias-deserunt-aspernatur@landmineaknpm2/mollitia-eius-delectus@landmineaknpm2/mollitia-eius-fugit@landmineaknpm2/neque-deserunt-ab@landmineaknpm2/neque-facere-veniam@landmineaknpm2/neque-quasi-nesciunt@landmineaknpm2/nesciunt-sunt-libero@landmineaknpm2/nisi-perferendis-mollitia@landmineaknpm2/non-nobis-alias@landmineaknpm2/nostrum-aut-laborum@landmineaknpm2/nostrum-in-rem@landmineaknpm2/nostrum-vitae-ad@landmineaknpm2/numquam-incidunt-optio@landmineaknpm2/officiis-commodi-sequi@landmineaknpm2/incidunt-hic-similique@landmineaknpm2/incidunt-veniam-numquam@landmineaknpm2/ipsam-numquam-soluta@landmineaknpm2/ipsam-soluta-doloremque@landmineaknpm2/labore-quidem-accusamus@landmineaknpm2/laboriosam-hic-pariatur@landmineaknpm2/laborum-eius-ipsam@landmineaknpm2/laudantium-tenetur-praesentium@landmineaknpm2/libero-delectus-officiis@landmineaknpm2/quos-et-facilis@landmineaknpm2/recusandae-et-minima@landmineaknpm2/rem-hic-eum@landmineaknpm2/sequi-distinctio-aperiam@landmineaknpm2/sint-quidem-sunt@landmineaknpm2/sit-pariatur-aliquam@landmineaknpm2/sunt-amet-illo@landmineaknpm2/illum-nisi-dolorem@landmineaknpm2/impedit-neque-vel
1.0.0

1 year ago