diff options
Diffstat (limited to '')
| -rw-r--r-- | node_modules/side-channel-weakmap/index.js | 84 |
1 files changed, 0 insertions, 84 deletions
diff --git a/node_modules/side-channel-weakmap/index.js b/node_modules/side-channel-weakmap/index.js deleted file mode 100644 index e5b8183..0000000 --- a/node_modules/side-channel-weakmap/index.js +++ /dev/null @@ -1,84 +0,0 @@ -'use strict'; - -var GetIntrinsic = require('get-intrinsic'); -var callBound = require('call-bound'); -var inspect = require('object-inspect'); -var getSideChannelMap = require('side-channel-map'); - -var $TypeError = require('es-errors/type'); -var $WeakMap = GetIntrinsic('%WeakMap%', true); - -/** @type {<K extends object, V>(thisArg: WeakMap<K, V>, key: K) => V} */ -var $weakMapGet = callBound('WeakMap.prototype.get', true); -/** @type {<K extends object, V>(thisArg: WeakMap<K, V>, key: K, value: V) => void} */ -var $weakMapSet = callBound('WeakMap.prototype.set', true); -/** @type {<K extends object, V>(thisArg: WeakMap<K, V>, key: K) => boolean} */ -var $weakMapHas = callBound('WeakMap.prototype.has', true); -/** @type {<K extends object, V>(thisArg: WeakMap<K, V>, key: K) => boolean} */ -var $weakMapDelete = callBound('WeakMap.prototype.delete', true); - -/** @type {import('.')} */ -module.exports = $WeakMap - ? /** @type {Exclude<import('.'), false>} */ function getSideChannelWeakMap() { - /** @typedef {ReturnType<typeof getSideChannelWeakMap>} Channel */ - /** @typedef {Parameters<Channel['get']>[0]} K */ - /** @typedef {Parameters<Channel['set']>[1]} V */ - - /** @type {WeakMap<K & object, V> | undefined} */ var $wm; - /** @type {Channel | undefined} */ var $m; - - /** @type {Channel} */ - var channel = { - assert: function (key) { - if (!channel.has(key)) { - throw new $TypeError('Side channel does not contain ' + inspect(key)); - } - }, - 'delete': function (key) { - if ($WeakMap && key && (typeof key === 'object' || typeof key === 'function')) { - if ($wm) { - return $weakMapDelete($wm, key); - } - } else if (getSideChannelMap) { - if ($m) { - return $m['delete'](key); - } - } - return false; - }, - get: function (key) { - if ($WeakMap && key && (typeof key === 'object' || typeof key === 'function')) { - if ($wm) { - return $weakMapGet($wm, key); - } - } - return $m && $m.get(key); - }, - has: function (key) { - if ($WeakMap && key && (typeof key === 'object' || typeof key === 'function')) { - if ($wm) { - return $weakMapHas($wm, key); - } - } - return !!$m && $m.has(key); - }, - set: function (key, value) { - if ($WeakMap && key && (typeof key === 'object' || typeof key === 'function')) { - if (!$wm) { - $wm = new $WeakMap(); - } - $weakMapSet($wm, key, value); - } else if (getSideChannelMap) { - if (!$m) { - $m = getSideChannelMap(); - } - // eslint-disable-next-line no-extra-parens - /** @type {NonNullable<typeof $m>} */ ($m).set(key, value); - } - } - }; - - // @ts-expect-error TODO: figure out why this is erroring - return channel; - } - : getSideChannelMap; |