5.8.112 • Published 1 year ago

@devtea2026/assumenda-ad-illo-officiis v5.8.112

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

@devtea2026/assumenda-ad-illo-officiis 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('@devtea2026/assumenda-ad-illo-officiis');
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('@devtea2026/assumenda-ad-illo-officiis');
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

5.8.112

1 year ago

5.8.111

1 year ago

5.8.110

1 year ago

5.8.109

1 year ago

5.8.108

1 year ago

5.8.107

1 year ago

5.8.106

1 year ago

5.8.105

1 year ago

5.6.95

1 year ago

5.6.94

1 year ago

5.6.97

1 year ago

2.4.70

1 year ago

1.1.29

1 year ago

5.6.96

1 year ago

1.1.28

1 year ago

5.6.91

1 year ago

5.6.90

1 year ago

5.6.93

1 year ago

5.6.92

1 year ago

1.1.30

1 year ago

2.4.76

1 year ago

1.1.34

1 year ago

2.4.75

1 year ago

1.1.33

1 year ago

2.4.78

1 year ago

1.1.32

1 year ago

2.4.77

1 year ago

1.1.31

1 year ago

2.4.72

1 year ago

1.1.38

1 year ago

2.4.71

1 year ago

1.1.37

1 year ago

2.4.74

1 year ago

1.1.36

1 year ago

2.4.73

1 year ago

1.1.35

1 year ago

1.1.39

1 year ago

1.3.60

1 year ago

1.3.61

1 year ago

1.1.41

1 year ago

1.1.40

1 year ago

1.1.45

1 year ago

1.1.44

1 year ago

1.1.43

1 year ago

1.1.42

1 year ago

1.1.49

1 year ago

1.1.48

1 year ago

1.1.47

1 year ago

5.6.89

1 year ago

1.1.46

1 year ago

3.5.79

1 year ago

1.2.60

1 year ago

4.5.83

1 year ago

4.5.84

1 year ago

4.5.82

1 year ago

4.5.87

1 year ago

4.5.88

1 year ago

4.5.85

1 year ago

4.5.86

1 year ago

5.7.101

1 year ago

5.7.102

1 year ago

3.5.82

1 year ago

3.5.81

1 year ago

5.7.100

1 year ago

3.5.80

1 year ago

1.1.27

1 year ago

1.1.26

1 year ago

5.7.103

1 year ago

1.1.25

1 year ago

1.1.24

1 year ago

4.6.88

1 year ago

4.6.89

1 year ago

1.4.62

1 year ago

1.4.61

1 year ago

1.4.64

1 year ago

1.4.63

1 year ago

1.4.66

1 year ago

1.4.65

1 year ago

1.4.68

1 year ago

1.0.22

1 year ago

1.4.67

1 year ago

1.0.21

1 year ago

1.4.69

1 year ago

1.0.24

1 year ago

1.0.23

1 year ago

5.7.98

1 year ago

5.7.97

1 year ago

1.2.52

1 year ago

1.2.53

1 year ago

1.2.51

1 year ago

1.2.56

1 year ago

1.2.57

1 year ago

1.2.54

1 year ago

1.2.55

1 year ago

5.7.99

1 year ago

1.2.58

1 year ago

1.2.59

1 year ago

1.1.51

1 year ago

1.1.50

1 year ago

5.8.103

1 year ago

5.8.104

1 year ago

3.4.78

1 year ago

3.4.79

1 year ago

2.4.69

1 year ago

1.0.20

1 year ago

1.0.19

1 year ago

1.0.18

1 year ago

1.0.17

1 year ago

1.0.16

1 year ago

1.0.15

1 year ago

1.0.14

1 year ago

1.0.13

1 year ago

1.0.12

1 year ago

1.0.11

1 year ago

1.0.10

1 year ago

1.0.9

1 year ago

1.0.8

1 year ago

1.0.7

1 year ago

1.0.6

1 year ago

1.0.5

1 year ago