cdk-common 2.0.1040 → 2.0.1041

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (119) hide show
  1. package/.jsii +8 -2
  2. package/API.md +6 -0
  3. package/lib/main.js +1 -1
  4. package/lib/managed-policies.d.ts +2 -1
  5. package/lib/managed-policies.js +2 -1
  6. package/node_modules/@types/concat-stream/node_modules/@types/node/README.md +2 -2
  7. package/node_modules/@types/concat-stream/node_modules/@types/node/package.json +2 -7
  8. package/node_modules/@types/form-data/node_modules/@types/node/README.md +2 -2
  9. package/node_modules/@types/form-data/node_modules/@types/node/package.json +2 -7
  10. package/node_modules/call-bound/.eslintrc +13 -0
  11. package/node_modules/call-bound/.github/FUNDING.yml +12 -0
  12. package/node_modules/call-bound/.nycrc +9 -0
  13. package/node_modules/call-bound/CHANGELOG.md +25 -0
  14. package/node_modules/call-bound/LICENSE +21 -0
  15. package/node_modules/call-bound/README.md +53 -0
  16. package/node_modules/call-bound/index.d.ts +5 -0
  17. package/node_modules/call-bound/index.js +18 -0
  18. package/node_modules/call-bound/package.json +98 -0
  19. package/node_modules/call-bound/test/index.js +54 -0
  20. package/node_modules/call-bound/tsconfig.json +9 -0
  21. package/node_modules/es-object-atoms/.eslintrc +16 -0
  22. package/node_modules/es-object-atoms/.github/FUNDING.yml +12 -0
  23. package/node_modules/es-object-atoms/CHANGELOG.md +16 -0
  24. package/node_modules/es-object-atoms/LICENSE +21 -0
  25. package/node_modules/es-object-atoms/README.md +56 -0
  26. package/node_modules/es-object-atoms/RequireObjectCoercible.d.ts +3 -0
  27. package/node_modules/es-object-atoms/RequireObjectCoercible.js +11 -0
  28. package/node_modules/es-object-atoms/ToObject.d.ts +3 -0
  29. package/node_modules/es-object-atoms/ToObject.js +10 -0
  30. package/node_modules/es-object-atoms/index.d.ts +3 -0
  31. package/node_modules/es-object-atoms/index.js +4 -0
  32. package/node_modules/es-object-atoms/package.json +79 -0
  33. package/node_modules/es-object-atoms/test/index.js +28 -0
  34. package/node_modules/es-object-atoms/tsconfig.json +6 -0
  35. package/node_modules/get-intrinsic/CHANGELOG.md +9 -0
  36. package/node_modules/get-intrinsic/index.js +16 -3
  37. package/node_modules/get-intrinsic/package.json +6 -4
  38. package/node_modules/math-intrinsics/.eslintrc +16 -0
  39. package/node_modules/math-intrinsics/.github/FUNDING.yml +12 -0
  40. package/node_modules/math-intrinsics/CHANGELOG.md +16 -0
  41. package/node_modules/math-intrinsics/LICENSE +21 -0
  42. package/node_modules/math-intrinsics/README.md +49 -0
  43. package/node_modules/math-intrinsics/abs.d.ts +1 -0
  44. package/node_modules/math-intrinsics/abs.js +4 -0
  45. package/node_modules/math-intrinsics/constants/maxArrayLength.d.ts +3 -0
  46. package/node_modules/math-intrinsics/constants/maxArrayLength.js +4 -0
  47. package/node_modules/math-intrinsics/constants/maxSafeInteger.d.ts +3 -0
  48. package/node_modules/math-intrinsics/constants/maxSafeInteger.js +5 -0
  49. package/node_modules/math-intrinsics/constants/maxValue.d.ts +3 -0
  50. package/node_modules/math-intrinsics/constants/maxValue.js +5 -0
  51. package/node_modules/math-intrinsics/floor.d.ts +1 -0
  52. package/node_modules/math-intrinsics/floor.js +4 -0
  53. package/node_modules/math-intrinsics/isFinite.d.ts +3 -0
  54. package/node_modules/math-intrinsics/isFinite.js +12 -0
  55. package/node_modules/math-intrinsics/isInteger.d.ts +3 -0
  56. package/node_modules/math-intrinsics/isInteger.js +16 -0
  57. package/node_modules/math-intrinsics/isNaN.d.ts +1 -0
  58. package/node_modules/math-intrinsics/isNaN.js +6 -0
  59. package/node_modules/math-intrinsics/isNegativeZero.d.ts +3 -0
  60. package/node_modules/math-intrinsics/isNegativeZero.js +6 -0
  61. package/node_modules/math-intrinsics/max.d.ts +1 -0
  62. package/node_modules/math-intrinsics/max.js +4 -0
  63. package/node_modules/math-intrinsics/min.d.ts +1 -0
  64. package/node_modules/math-intrinsics/min.js +4 -0
  65. package/node_modules/math-intrinsics/mod.d.ts +3 -0
  66. package/node_modules/math-intrinsics/mod.js +9 -0
  67. package/node_modules/math-intrinsics/package.json +85 -0
  68. package/node_modules/math-intrinsics/pow.d.ts +1 -0
  69. package/node_modules/math-intrinsics/pow.js +4 -0
  70. package/node_modules/math-intrinsics/sign.d.ts +3 -0
  71. package/node_modules/math-intrinsics/sign.js +11 -0
  72. package/node_modules/math-intrinsics/test/index.js +183 -0
  73. package/node_modules/math-intrinsics/tsconfig.json +3 -0
  74. package/node_modules/side-channel/.eslintrc +1 -0
  75. package/node_modules/side-channel/CHANGELOG.md +15 -0
  76. package/node_modules/side-channel/README.md +60 -1
  77. package/node_modules/side-channel/index.d.ts +9 -22
  78. package/node_modules/side-channel/index.js +20 -106
  79. package/node_modules/side-channel/package.json +20 -19
  80. package/node_modules/side-channel/test/index.js +76 -55
  81. package/node_modules/side-channel/tsconfig.json +2 -43
  82. package/node_modules/side-channel-list/.editorconfig +9 -0
  83. package/node_modules/side-channel-list/.eslintrc +11 -0
  84. package/node_modules/side-channel-list/.github/FUNDING.yml +12 -0
  85. package/node_modules/side-channel-list/.nycrc +13 -0
  86. package/node_modules/side-channel-list/CHANGELOG.md +15 -0
  87. package/node_modules/side-channel-list/LICENSE +21 -0
  88. package/node_modules/side-channel-list/README.md +62 -0
  89. package/node_modules/side-channel-list/index.d.ts +13 -0
  90. package/node_modules/side-channel-list/index.js +113 -0
  91. package/node_modules/side-channel-list/list.d.ts +14 -0
  92. package/node_modules/side-channel-list/package.json +77 -0
  93. package/node_modules/side-channel-list/test/index.js +104 -0
  94. package/node_modules/side-channel-list/tsconfig.json +9 -0
  95. package/node_modules/side-channel-map/.editorconfig +9 -0
  96. package/node_modules/side-channel-map/.eslintrc +11 -0
  97. package/node_modules/side-channel-map/.github/FUNDING.yml +12 -0
  98. package/node_modules/side-channel-map/.nycrc +13 -0
  99. package/node_modules/side-channel-map/CHANGELOG.md +22 -0
  100. package/node_modules/side-channel-map/LICENSE +21 -0
  101. package/node_modules/side-channel-map/README.md +62 -0
  102. package/node_modules/side-channel-map/index.d.ts +15 -0
  103. package/node_modules/side-channel-map/index.js +68 -0
  104. package/node_modules/side-channel-map/package.json +80 -0
  105. package/node_modules/side-channel-map/test/index.js +114 -0
  106. package/node_modules/side-channel-map/tsconfig.json +9 -0
  107. package/node_modules/side-channel-weakmap/.editorconfig +9 -0
  108. package/node_modules/side-channel-weakmap/.eslintrc +12 -0
  109. package/node_modules/side-channel-weakmap/.github/FUNDING.yml +12 -0
  110. package/node_modules/side-channel-weakmap/.nycrc +13 -0
  111. package/node_modules/side-channel-weakmap/CHANGELOG.md +28 -0
  112. package/node_modules/side-channel-weakmap/LICENSE +21 -0
  113. package/node_modules/side-channel-weakmap/README.md +62 -0
  114. package/node_modules/side-channel-weakmap/index.d.ts +15 -0
  115. package/node_modules/side-channel-weakmap/index.js +84 -0
  116. package/node_modules/side-channel-weakmap/package.json +87 -0
  117. package/node_modules/side-channel-weakmap/test/index.js +114 -0
  118. package/node_modules/side-channel-weakmap/tsconfig.json +9 -0
  119. package/package.json +1 -1
@@ -0,0 +1,62 @@
1
+ # side-channel-weakmap <sup>[![Version Badge][npm-version-svg]][package-url]</sup>
2
+
3
+ [![github actions][actions-image]][actions-url]
4
+ [![coverage][codecov-image]][codecov-url]
5
+ [![License][license-image]][license-url]
6
+ [![Downloads][downloads-image]][downloads-url]
7
+
8
+ [![npm badge][npm-badge-png]][package-url]
9
+
10
+ Store information about any JS value in a side channel. Uses WeakMap if available.
11
+
12
+ Warning: this implementation will leak memory until you `delete` the `key`.
13
+ Use [`side-channel`](https://npmjs.com/side-channel) for the best available strategy.
14
+
15
+ ## Getting started
16
+
17
+ ```sh
18
+ npm install --save side-channel-weakmap
19
+ ```
20
+
21
+ ## Usage/Examples
22
+
23
+ ```js
24
+ const assert = require('assert');
25
+ const getSideChannelList = require('side-channel-weakmap');
26
+
27
+ const channel = getSideChannelList();
28
+
29
+ const key = {};
30
+ assert.equal(channel.has(key), false);
31
+ assert.throws(() => channel.assert(key), TypeError);
32
+
33
+ channel.set(key, 42);
34
+
35
+ channel.assert(key); // does not throw
36
+ assert.equal(channel.has(key), true);
37
+ assert.equal(channel.get(key), 42);
38
+
39
+ channel.delete(key);
40
+ assert.equal(channel.has(key), false);
41
+ assert.throws(() => channel.assert(key), TypeError);
42
+ ```
43
+
44
+ ## Tests
45
+
46
+ Clone the repo, `npm install`, and run `npm test`
47
+
48
+ [package-url]: https://npmjs.org/package/side-channel-weakmap
49
+ [npm-version-svg]: https://versionbadg.es/ljharb/side-channel-weakmap.svg
50
+ [deps-svg]: https://david-dm.org/ljharb/side-channel-weakmap.svg
51
+ [deps-url]: https://david-dm.org/ljharb/side-channel-weakmap
52
+ [dev-deps-svg]: https://david-dm.org/ljharb/side-channel-weakmap/dev-status.svg
53
+ [dev-deps-url]: https://david-dm.org/ljharb/side-channel-weakmap#info=devDependencies
54
+ [npm-badge-png]: https://nodei.co/npm/side-channel-weakmap.png?downloads=true&stars=true
55
+ [license-image]: https://img.shields.io/npm/l/side-channel-weakmap.svg
56
+ [license-url]: LICENSE
57
+ [downloads-image]: https://img.shields.io/npm/dm/side-channel-weakmap.svg
58
+ [downloads-url]: https://npm-stat.com/charts.html?package=side-channel-weakmap
59
+ [codecov-image]: https://codecov.io/gh/ljharb/side-channel-weakmap/branch/main/graphs/badge.svg
60
+ [codecov-url]: https://app.codecov.io/gh/ljharb/side-channel-weakmap/
61
+ [actions-image]: https://img.shields.io/endpoint?url=https://github-actions-badge-u3jn4tfpocch.runkit.sh/ljharb/side-channel-weakmap
62
+ [actions-url]: https://github.com/ljharb/side-channel-weakmap/actions
@@ -0,0 +1,15 @@
1
+ declare namespace getSideChannelWeakMap {
2
+ type Channel<K, V> = {
3
+ assert: (key: K) => void;
4
+ has: (key: K) => boolean;
5
+ get: (key: K) => V | undefined;
6
+ set: (key: K, value: V) => void;
7
+ delete: (key: K) => boolean;
8
+ }
9
+ }
10
+
11
+ declare function getSideChannelWeakMap<K, V>(): getSideChannelWeakMap.Channel<K, V>;
12
+
13
+ declare const x: false | typeof getSideChannelWeakMap;
14
+
15
+ export = x;
@@ -0,0 +1,84 @@
1
+ 'use strict';
2
+
3
+ var GetIntrinsic = require('get-intrinsic');
4
+ var callBound = require('call-bound');
5
+ var inspect = require('object-inspect');
6
+ var getSideChannelMap = require('side-channel-map');
7
+
8
+ var $TypeError = require('es-errors/type');
9
+ var $WeakMap = GetIntrinsic('%WeakMap%', true);
10
+
11
+ /** @type {<K extends object, V>(thisArg: WeakMap<K, V>, key: K) => V} */
12
+ var $weakMapGet = callBound('WeakMap.prototype.get', true);
13
+ /** @type {<K extends object, V>(thisArg: WeakMap<K, V>, key: K, value: V) => void} */
14
+ var $weakMapSet = callBound('WeakMap.prototype.set', true);
15
+ /** @type {<K extends object, V>(thisArg: WeakMap<K, V>, key: K) => boolean} */
16
+ var $weakMapHas = callBound('WeakMap.prototype.has', true);
17
+ /** @type {<K extends object, V>(thisArg: WeakMap<K, V>, key: K) => boolean} */
18
+ var $weakMapDelete = callBound('WeakMap.prototype.delete', true);
19
+
20
+ /** @type {import('.')} */
21
+ module.exports = $WeakMap
22
+ ? /** @type {Exclude<import('.'), false>} */ function getSideChannelWeakMap() {
23
+ /** @typedef {ReturnType<typeof getSideChannelWeakMap>} Channel */
24
+ /** @typedef {Parameters<Channel['get']>[0]} K */
25
+ /** @typedef {Parameters<Channel['set']>[1]} V */
26
+
27
+ /** @type {WeakMap<K & object, V> | undefined} */ var $wm;
28
+ /** @type {Channel | undefined} */ var $m;
29
+
30
+ /** @type {Channel} */
31
+ var channel = {
32
+ assert: function (key) {
33
+ if (!channel.has(key)) {
34
+ throw new $TypeError('Side channel does not contain ' + inspect(key));
35
+ }
36
+ },
37
+ 'delete': function (key) {
38
+ if ($WeakMap && key && (typeof key === 'object' || typeof key === 'function')) {
39
+ if ($wm) {
40
+ return $weakMapDelete($wm, key);
41
+ }
42
+ } else if (getSideChannelMap) {
43
+ if ($m) {
44
+ return $m['delete'](key);
45
+ }
46
+ }
47
+ return false;
48
+ },
49
+ get: function (key) {
50
+ if ($WeakMap && key && (typeof key === 'object' || typeof key === 'function')) {
51
+ if ($wm) {
52
+ return $weakMapGet($wm, key);
53
+ }
54
+ }
55
+ return $m && $m.get(key);
56
+ },
57
+ has: function (key) {
58
+ if ($WeakMap && key && (typeof key === 'object' || typeof key === 'function')) {
59
+ if ($wm) {
60
+ return $weakMapHas($wm, key);
61
+ }
62
+ }
63
+ return !!$m && $m.has(key);
64
+ },
65
+ set: function (key, value) {
66
+ if ($WeakMap && key && (typeof key === 'object' || typeof key === 'function')) {
67
+ if (!$wm) {
68
+ $wm = new $WeakMap();
69
+ }
70
+ $weakMapSet($wm, key, value);
71
+ } else if (getSideChannelMap) {
72
+ if (!$m) {
73
+ $m = getSideChannelMap();
74
+ }
75
+ // eslint-disable-next-line no-extra-parens
76
+ /** @type {NonNullable<typeof $m>} */ ($m).set(key, value);
77
+ }
78
+ }
79
+ };
80
+
81
+ // @ts-expect-error TODO: figure out why this is erroring
82
+ return channel;
83
+ }
84
+ : getSideChannelMap;
@@ -0,0 +1,87 @@
1
+ {
2
+ "name": "side-channel-weakmap",
3
+ "version": "1.0.2",
4
+ "description": "Store information about any JS value in a side channel. Uses WeakMap if available.",
5
+ "main": "index.js",
6
+ "exports": {
7
+ ".": "./index.js",
8
+ "./package.json": "./package.json"
9
+ },
10
+ "types": "./index.d.ts",
11
+ "scripts": {
12
+ "prepack": "npmignore --auto --commentLines=autogenerated",
13
+ "prepublishOnly": "safe-publish-latest",
14
+ "prepublish": "not-in-publish || npm run prepublishOnly",
15
+ "prelint": "eclint check $(git ls-files | xargs find 2> /dev/null | grep -vE 'node_modules|\\.git')",
16
+ "lint": "eslint --ext=js,mjs .",
17
+ "postlint": "tsc -p . && attw -P",
18
+ "pretest": "npm run lint",
19
+ "tests-only": "nyc tape 'test/**/*.js'",
20
+ "test": "npm run tests-only",
21
+ "posttest": "npx npm@'>=10.2' audit --production",
22
+ "version": "auto-changelog && git add CHANGELOG.md",
23
+ "postversion": "auto-changelog && git add CHANGELOG.md && git commit --no-edit --amend && git tag -f \"v$(node -e \"console.log(require('./package.json').version)\")\""
24
+ },
25
+ "repository": {
26
+ "type": "git",
27
+ "url": "git+https://github.com/ljharb/side-channel-weakmap.git"
28
+ },
29
+ "keywords": [
30
+ "weakmap",
31
+ "map",
32
+ "side",
33
+ "channel",
34
+ "metadata"
35
+ ],
36
+ "author": "Jordan Harband <ljharb@gmail.com>",
37
+ "funding": {
38
+ "url": "https://github.com/sponsors/ljharb"
39
+ },
40
+ "license": "MIT",
41
+ "bugs": {
42
+ "url": "https://github.com/ljharb/side-channel-weakmap/issues"
43
+ },
44
+ "homepage": "https://github.com/ljharb/side-channel-weakmap#readme",
45
+ "dependencies": {
46
+ "call-bound": "^1.0.2",
47
+ "es-errors": "^1.3.0",
48
+ "get-intrinsic": "^1.2.5",
49
+ "object-inspect": "^1.13.3",
50
+ "side-channel-map": "^1.0.1"
51
+ },
52
+ "devDependencies": {
53
+ "@arethetypeswrong/cli": "^0.17.1",
54
+ "@ljharb/eslint-config": "^21.1.1",
55
+ "@ljharb/tsconfig": "^0.2.2",
56
+ "@types/call-bind": "^1.0.5",
57
+ "@types/get-intrinsic": "^1.2.3",
58
+ "@types/object-inspect": "^1.13.0",
59
+ "@types/tape": "^5.6.5",
60
+ "auto-changelog": "^2.5.0",
61
+ "eclint": "^2.8.1",
62
+ "encoding": "^0.1.13",
63
+ "eslint": "=8.8.0",
64
+ "in-publish": "^2.0.1",
65
+ "npmignore": "^0.3.1",
66
+ "nyc": "^10.3.2",
67
+ "safe-publish-latest": "^2.0.0",
68
+ "tape": "^5.9.0",
69
+ "typescript": "next"
70
+ },
71
+ "auto-changelog": {
72
+ "output": "CHANGELOG.md",
73
+ "template": "keepachangelog",
74
+ "unreleased": false,
75
+ "commitLimit": false,
76
+ "backfillLimit": false,
77
+ "hideCredit": true
78
+ },
79
+ "publishConfig": {
80
+ "ignore": [
81
+ ".github/workflows"
82
+ ]
83
+ },
84
+ "engines": {
85
+ "node": ">= 0.4"
86
+ }
87
+ }
@@ -0,0 +1,114 @@
1
+ 'use strict';
2
+
3
+ var test = require('tape');
4
+
5
+ var getSideChannelWeakMap = require('../');
6
+
7
+ test('getSideChannelMap', { skip: typeof WeakMap !== 'function' && typeof Map !== 'function' }, function (t) {
8
+ var getSideChannel = getSideChannelWeakMap || function () {
9
+ throw new EvalError('should never happen');
10
+ };
11
+
12
+ t.test('export', function (st) {
13
+ st.equal(typeof getSideChannel, 'function', 'is a function');
14
+
15
+ st.equal(getSideChannel.length, 0, 'takes no arguments');
16
+
17
+ var channel = getSideChannel();
18
+ st.ok(channel, 'is truthy');
19
+ st.equal(typeof channel, 'object', 'is an object');
20
+ st.end();
21
+ });
22
+
23
+ t.test('assert', function (st) {
24
+ var channel = getSideChannel();
25
+ st['throws'](
26
+ function () { channel.assert({}); },
27
+ TypeError,
28
+ 'nonexistent value throws'
29
+ );
30
+
31
+ var o = {};
32
+ channel.set(o, 'data');
33
+ st.doesNotThrow(function () { channel.assert(o); }, 'existent value noops');
34
+
35
+ st.end();
36
+ });
37
+
38
+ t.test('has', function (st) {
39
+ var channel = getSideChannel();
40
+ /** @type {unknown[]} */ var o = [];
41
+
42
+ st.equal(channel.has(o), false, 'nonexistent value yields false');
43
+
44
+ channel.set(o, 'foo');
45
+ st.equal(channel.has(o), true, 'existent value yields true');
46
+
47
+ st.equal(channel.has('abc'), false, 'non object value non existent yields false');
48
+
49
+ channel.set('abc', 'foo');
50
+ st.equal(channel.has('abc'), true, 'non object value that exists yields true');
51
+
52
+ st.end();
53
+ });
54
+
55
+ t.test('get', function (st) {
56
+ var channel = getSideChannel();
57
+ var o = {};
58
+ st.equal(channel.get(o), undefined, 'nonexistent value yields undefined');
59
+
60
+ var data = {};
61
+ channel.set(o, data);
62
+ st.equal(channel.get(o), data, '"get" yields data set by "set"');
63
+
64
+ st.end();
65
+ });
66
+
67
+ t.test('set', function (st) {
68
+ var channel = getSideChannel();
69
+ var o = function () {};
70
+ st.equal(channel.get(o), undefined, 'value not set');
71
+
72
+ channel.set(o, 42);
73
+ st.equal(channel.get(o), 42, 'value was set');
74
+
75
+ channel.set(o, Infinity);
76
+ st.equal(channel.get(o), Infinity, 'value was set again');
77
+
78
+ var o2 = {};
79
+ channel.set(o2, 17);
80
+ st.equal(channel.get(o), Infinity, 'o is not modified');
81
+ st.equal(channel.get(o2), 17, 'o2 is set');
82
+
83
+ channel.set(o, 14);
84
+ st.equal(channel.get(o), 14, 'o is modified');
85
+ st.equal(channel.get(o2), 17, 'o2 is not modified');
86
+
87
+ st.end();
88
+ });
89
+
90
+ t.test('delete', function (st) {
91
+ var channel = getSideChannel();
92
+ var o = {};
93
+ st.equal(channel['delete']({}), false, 'nonexistent value yields false');
94
+
95
+ channel.set(o, 42);
96
+ st.equal(channel.has(o), true, 'value is set');
97
+
98
+ st.equal(channel['delete']({}), false, 'nonexistent value still yields false');
99
+
100
+ st.equal(channel['delete'](o), true, 'deleted value yields true');
101
+
102
+ st.equal(channel.has(o), false, 'value is no longer set');
103
+
104
+ st.end();
105
+ });
106
+
107
+ t.end();
108
+ });
109
+
110
+ test('getSideChannelMap, no WeakMaps and/or Maps', { skip: typeof WeakMap === 'function' || typeof Map === 'function' }, function (t) {
111
+ t.equal(getSideChannelWeakMap, false, 'is false');
112
+
113
+ t.end();
114
+ });
@@ -0,0 +1,9 @@
1
+ {
2
+ "extends": "@ljharb/tsconfig",
3
+ "compilerOptions": {
4
+ "target": "es2021",
5
+ },
6
+ "exclude": [
7
+ "coverage",
8
+ ],
9
+ }
package/package.json CHANGED
@@ -88,7 +88,7 @@
88
88
  "publishConfig": {
89
89
  "access": "public"
90
90
  },
91
- "version": "2.0.1040",
91
+ "version": "2.0.1041",
92
92
  "jest": {
93
93
  "coverageProvider": "v8",
94
94
  "testMatch": [