typeson-registry 7.2.1 → 9.0.0
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.
- package/README.md +7 -2
- package/dist/index.d.ts +4 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +102 -37
- package/dist/index.js.map +1 -1
- package/dist/index.min.js +1 -1
- package/dist/index.min.js.map +1 -1
- package/dist/{index.umd.js → index.umd.cjs} +443 -356
- package/dist/index.umd.cjs.map +1 -0
- package/dist/index.umd.min.cjs +2 -0
- package/dist/index.umd.min.cjs.map +1 -0
- package/dist/presets/{array-nonindex-keys.umd.js → array-nonindex-keys.umd.cjs} +2 -2
- package/dist/presets/array-nonindex-keys.umd.cjs.map +1 -0
- package/dist/presets/builtin.umd.cjs +2 -0
- package/dist/presets/builtin.umd.cjs.map +1 -0
- package/dist/presets/postmessage.umd.cjs +2 -0
- package/dist/presets/postmessage.umd.cjs.map +1 -0
- package/dist/presets/socketio.umd.cjs +2 -0
- package/dist/presets/socketio.umd.cjs.map +1 -0
- package/dist/presets/{sparse-undefined.umd.js → sparse-undefined.umd.cjs} +2 -2
- package/dist/presets/sparse-undefined.umd.cjs.map +1 -0
- package/dist/presets/special-numbers.umd.cjs +2 -0
- package/dist/presets/special-numbers.umd.cjs.map +1 -0
- package/dist/presets/structured-cloning-throwing.d.ts.map +1 -1
- package/dist/presets/structured-cloning-throwing.umd.cjs +2 -0
- package/dist/presets/structured-cloning-throwing.umd.cjs.map +1 -0
- package/dist/presets/structured-cloning.d.ts.map +1 -1
- package/dist/presets/structured-cloning.umd.cjs +2 -0
- package/dist/presets/structured-cloning.umd.cjs.map +1 -0
- package/dist/presets/undef.umd.cjs +2 -0
- package/dist/presets/undef.umd.cjs.map +1 -0
- package/dist/presets/universal.umd.cjs +2 -0
- package/dist/presets/universal.umd.cjs.map +1 -0
- package/dist/types/arraybuffer.umd.cjs +2 -0
- package/dist/types/arraybuffer.umd.cjs.map +1 -0
- package/dist/types/bigint-object.d.ts.map +1 -1
- package/dist/types/bigint-object.umd.cjs +2 -0
- package/dist/types/bigint-object.umd.cjs.map +1 -0
- package/dist/types/bigint.d.ts.map +1 -1
- package/dist/types/{bigint.umd.js → bigint.umd.cjs} +1 -1
- package/dist/types/bigint.umd.cjs.map +1 -0
- package/dist/types/blob.umd.cjs +2 -0
- package/dist/types/blob.umd.cjs.map +1 -0
- package/dist/types/{cloneable.umd.js → cloneable.umd.cjs} +2 -2
- package/dist/types/cloneable.umd.cjs.map +1 -0
- package/dist/types/cryptokey.umd.cjs +2 -0
- package/dist/types/cryptokey.umd.cjs.map +1 -0
- package/dist/types/dataview.umd.cjs +2 -0
- package/dist/types/dataview.umd.cjs.map +1 -0
- package/dist/types/date.umd.cjs +2 -0
- package/dist/types/date.umd.cjs.map +1 -0
- package/dist/types/domexception.d.ts +6 -0
- package/dist/types/domexception.d.ts.map +1 -0
- package/dist/types/domexception.umd.cjs +2 -0
- package/dist/types/domexception.umd.cjs.map +1 -0
- package/dist/types/dompoint.d.ts +6 -0
- package/dist/types/dompoint.d.ts.map +1 -0
- package/dist/types/dompoint.umd.cjs +2 -0
- package/dist/types/dompoint.umd.cjs.map +1 -0
- package/dist/types/domrect.d.ts +6 -0
- package/dist/types/domrect.d.ts.map +1 -0
- package/dist/types/domrect.umd.cjs +2 -0
- package/dist/types/domrect.umd.cjs.map +1 -0
- package/dist/types/{nonbuiltin-ignore.umd.js → error.umd.cjs} +2 -2
- package/dist/types/error.umd.cjs.map +1 -0
- package/dist/types/errors.d.ts.map +1 -1
- package/dist/types/errors.umd.cjs +2 -0
- package/dist/types/errors.umd.cjs.map +1 -0
- package/dist/types/file.umd.cjs +2 -0
- package/dist/types/file.umd.cjs.map +1 -0
- package/dist/types/filelist.umd.cjs +2 -0
- package/dist/types/filelist.umd.cjs.map +1 -0
- package/dist/types/imagebitmap.umd.cjs +2 -0
- package/dist/types/imagebitmap.umd.cjs.map +1 -0
- package/dist/types/imagedata.umd.cjs +2 -0
- package/dist/types/imagedata.umd.cjs.map +1 -0
- package/dist/types/{infinity.umd.js → infinity.umd.cjs} +2 -2
- package/dist/types/infinity.umd.cjs.map +1 -0
- package/dist/types/intl-types.umd.cjs +2 -0
- package/dist/types/intl-types.umd.cjs.map +1 -0
- package/dist/types/map.umd.cjs +2 -0
- package/dist/types/map.umd.cjs.map +1 -0
- package/dist/types/{nan.umd.js → nan.umd.cjs} +2 -2
- package/dist/types/nan.umd.cjs.map +1 -0
- package/dist/types/{negative-infinity.umd.js → negative-infinity.umd.cjs} +2 -2
- package/dist/types/negative-infinity.umd.cjs.map +1 -0
- package/dist/types/{negative-zero.umd.js → negative-zero.umd.cjs} +2 -2
- package/dist/types/negative-zero.umd.cjs.map +1 -0
- package/dist/types/nonbuiltin-ignore.umd.cjs +2 -0
- package/dist/types/nonbuiltin-ignore.umd.cjs.map +1 -0
- package/dist/types/primitive-objects.umd.cjs +2 -0
- package/dist/types/primitive-objects.umd.cjs.map +1 -0
- package/dist/types/regexp.umd.cjs +2 -0
- package/dist/types/regexp.umd.cjs.map +1 -0
- package/dist/types/{resurrectable.umd.js → resurrectable.umd.cjs} +2 -2
- package/dist/types/resurrectable.umd.cjs.map +1 -0
- package/dist/types/set.umd.cjs +2 -0
- package/dist/types/set.umd.cjs.map +1 -0
- package/dist/types/typed-arrays-socketio.umd.cjs +2 -0
- package/dist/types/typed-arrays-socketio.umd.cjs.map +1 -0
- package/dist/types/typed-arrays.umd.cjs +2 -0
- package/dist/types/typed-arrays.umd.cjs.map +1 -0
- package/dist/types/{error.umd.js → undef.umd.cjs} +2 -2
- package/dist/types/undef.umd.cjs.map +1 -0
- package/dist/types/user-object.umd.cjs +2 -0
- package/dist/types/user-object.umd.cjs.map +1 -0
- package/dist/utils/generateUUID.d.ts.map +1 -1
- package/package.json +56 -54
- package/polyfills/createObjectURL.js +2 -2
- package/polyfills/createObjectURL.umd.cjs +2 -0
- package/polyfills/createObjectURL.umd.cjs.map +1 -0
- package/utils/generateUUID.js +5 -5
- package/utils/stringArrayBuffer.js +1 -1
- package/dist/index.umd.js.map +0 -1
- package/dist/index.umd.min.js +0 -2
- package/dist/index.umd.min.js.map +0 -1
- package/dist/polyfills/createObjectURL.umd.d.ts +0 -84
- package/dist/polyfills/createObjectURL.umd.d.ts.map +0 -1
- package/dist/presets/array-nonindex-keys.umd.js.map +0 -1
- package/dist/presets/builtin.umd.js +0 -2
- package/dist/presets/builtin.umd.js.map +0 -1
- package/dist/presets/postmessage.umd.js +0 -2
- package/dist/presets/postmessage.umd.js.map +0 -1
- package/dist/presets/socketio.umd.js +0 -2
- package/dist/presets/socketio.umd.js.map +0 -1
- package/dist/presets/sparse-undefined.umd.js.map +0 -1
- package/dist/presets/special-numbers.umd.js +0 -2
- package/dist/presets/special-numbers.umd.js.map +0 -1
- package/dist/presets/structured-cloning-throwing.umd.js +0 -2
- package/dist/presets/structured-cloning-throwing.umd.js.map +0 -1
- package/dist/presets/structured-cloning.umd.js +0 -2
- package/dist/presets/structured-cloning.umd.js.map +0 -1
- package/dist/presets/undef.umd.js +0 -2
- package/dist/presets/undef.umd.js.map +0 -1
- package/dist/presets/universal.umd.js +0 -2
- package/dist/presets/universal.umd.js.map +0 -1
- package/dist/types/arraybuffer.umd.js +0 -2
- package/dist/types/arraybuffer.umd.js.map +0 -1
- package/dist/types/bigint-object.umd.js +0 -2
- package/dist/types/bigint-object.umd.js.map +0 -1
- package/dist/types/bigint.umd.js.map +0 -1
- package/dist/types/blob.umd.js +0 -2
- package/dist/types/blob.umd.js.map +0 -1
- package/dist/types/cloneable.umd.js.map +0 -1
- package/dist/types/cryptokey.umd.js +0 -2
- package/dist/types/cryptokey.umd.js.map +0 -1
- package/dist/types/dataview.umd.js +0 -2
- package/dist/types/dataview.umd.js.map +0 -1
- package/dist/types/date.umd.js +0 -2
- package/dist/types/date.umd.js.map +0 -1
- package/dist/types/error.umd.js.map +0 -1
- package/dist/types/errors.umd.js +0 -2
- package/dist/types/errors.umd.js.map +0 -1
- package/dist/types/file.umd.js +0 -2
- package/dist/types/file.umd.js.map +0 -1
- package/dist/types/filelist.umd.js +0 -2
- package/dist/types/filelist.umd.js.map +0 -1
- package/dist/types/imagebitmap.umd.js +0 -2
- package/dist/types/imagebitmap.umd.js.map +0 -1
- package/dist/types/imagedata.umd.js +0 -2
- package/dist/types/imagedata.umd.js.map +0 -1
- package/dist/types/infinity.umd.js.map +0 -1
- package/dist/types/intl-types.umd.js +0 -2
- package/dist/types/intl-types.umd.js.map +0 -1
- package/dist/types/map.umd.js +0 -2
- package/dist/types/map.umd.js.map +0 -1
- package/dist/types/nan.umd.js.map +0 -1
- package/dist/types/negative-infinity.umd.js.map +0 -1
- package/dist/types/negative-zero.umd.js.map +0 -1
- package/dist/types/nonbuiltin-ignore.umd.js.map +0 -1
- package/dist/types/primitive-objects.umd.js +0 -2
- package/dist/types/primitive-objects.umd.js.map +0 -1
- package/dist/types/regexp.umd.js +0 -2
- package/dist/types/regexp.umd.js.map +0 -1
- package/dist/types/resurrectable.umd.js.map +0 -1
- package/dist/types/set.umd.js +0 -2
- package/dist/types/set.umd.js.map +0 -1
- package/dist/types/typed-arrays-socketio.umd.js +0 -2
- package/dist/types/typed-arrays-socketio.umd.js.map +0 -1
- package/dist/types/typed-arrays.umd.js +0 -2
- package/dist/types/typed-arrays.umd.js.map +0 -1
- package/dist/types/undef.umd.js +0 -2
- package/dist/types/undef.umd.js.map +0 -1
- package/dist/types/user-object.umd.js +0 -2
- package/dist/types/user-object.umd.js.map +0 -1
- package/dist/types/zero.umd.js +0 -2
- package/dist/types/zero.umd.js.map +0 -1
- package/polyfills/createObjectURL.umd.js +0 -2
- package/polyfills/createObjectURL.umd.js.map +0 -1
package/README.md
CHANGED
|
@@ -26,7 +26,7 @@ which can handle `data:` URLs). For Node, you can add it like this:
|
|
|
26
26
|
|
|
27
27
|
```js
|
|
28
28
|
const url = require('url'); // This line only needed to support Node < 10.0.0
|
|
29
|
-
const {createObjectURL} = require('typeson-registry/polyfills/createObjectURL.umd.
|
|
29
|
+
const {createObjectURL} = require('typeson-registry/polyfills/createObjectURL.umd.cjs');
|
|
30
30
|
|
|
31
31
|
const URL = url.Url; // This line only needed to support Node < 10.0.0
|
|
32
32
|
URL.createObjectURL = createObjectURL;
|
|
@@ -150,7 +150,7 @@ require them as AMD modules with requirejs if you prefer.
|
|
|
150
150
|
<html>
|
|
151
151
|
<head>
|
|
152
152
|
<script src="https://unpkg.com/typeson/dist/typeson.umd.min.js"></script>
|
|
153
|
-
<script src="https://unpkg.com/typeson-registry/dist/presets/builtin.umd.
|
|
153
|
+
<script src="https://unpkg.com/typeson-registry/dist/presets/builtin.umd.cjs"></script>
|
|
154
154
|
<script>
|
|
155
155
|
|
|
156
156
|
const TSON = new Typeson().register(builtin);
|
|
@@ -227,8 +227,12 @@ Note that the type name corresponds to the file name in the following manner:
|
|
|
227
227
|
you are polyfilling a standard object, we welcome you to submit back as a
|
|
228
228
|
PR!). The clones cannot be revived past the current window session,
|
|
229
229
|
however.
|
|
230
|
+
- `cryptokey`
|
|
230
231
|
- `dataview`
|
|
231
232
|
- `date`
|
|
233
|
+
- `domexception`
|
|
234
|
+
- `dompoint`
|
|
235
|
+
- `domrect`
|
|
232
236
|
- `error.js` (`Error`) and `errors.js` (`TypeError`, `RangeError`, `SyntaxError`, `ReferenceError`, `EvalError`, `URIError`, `InternalError`) - These
|
|
233
237
|
provide a means of resurrecting error object across cloning boundaries
|
|
234
238
|
(since they are not otherwise treated as cloneable by the Structured
|
|
@@ -247,6 +251,7 @@ Note that the type name corresponds to the file name in the following manner:
|
|
|
247
251
|
- `map`
|
|
248
252
|
- `nan` - Preserves `NaN` (not a number)
|
|
249
253
|
- `NegativeInfinity` - Preserves negative infinity
|
|
254
|
+
- `negative-zero` - Preserves `-0` (produces + or - Infinity when used as divisor)
|
|
250
255
|
- `nonBuiltInIgnore` - For roughly detecting non-builtin objects and to avoid
|
|
251
256
|
adding them as properties
|
|
252
257
|
- `primitive-objects.js` (`StringObject`, `BooleanObject`, `NumberObject`)
|
package/dist/index.d.ts
CHANGED
|
@@ -7,6 +7,9 @@ import cloneable from './types/cloneable.js';
|
|
|
7
7
|
import cryptokey from './types/cryptokey.js';
|
|
8
8
|
import dataview from './types/dataview.js';
|
|
9
9
|
import date from './types/date.js';
|
|
10
|
+
import domexception from './types/domexception.js';
|
|
11
|
+
import dompoint from './types/dompoint.js';
|
|
12
|
+
import domrect from './types/domrect.js';
|
|
10
13
|
import error from './types/error.js';
|
|
11
14
|
import errors from './types/errors.js';
|
|
12
15
|
import file from './types/file.js';
|
|
@@ -38,5 +41,5 @@ import structuredCloningThrowing from './presets/structured-cloning-throwing.js'
|
|
|
38
41
|
import structuredCloning from './presets/structured-cloning.js';
|
|
39
42
|
import undefPreset from './presets/undef.js';
|
|
40
43
|
import universal from './presets/universal.js';
|
|
41
|
-
export { arraybuffer, bigintObject, bigint, blob, cloneable, cryptokey, dataview, date, error, errors, file, filelist, imagebitmap, imagedata, infinity, intlTypes, map, nan, negativeInfinity, negativeZero, nonbuiltinIgnore, primitiveObjects, regexp, resurrectable, set, typedArraysSocketio, typedArrays, undef, userObject, arrayNonindexKeys, builtin, postmessage, socketio, sparseUndefined, specialNumbers, structuredCloningThrowing, structuredCloning, undefPreset, universal };
|
|
44
|
+
export { arraybuffer, bigintObject, bigint, blob, cloneable, cryptokey, dataview, date, domexception, dompoint, domrect, error, errors, file, filelist, imagebitmap, imagedata, infinity, intlTypes, map, nan, negativeInfinity, negativeZero, nonbuiltinIgnore, primitiveObjects, regexp, resurrectable, set, typedArraysSocketio, typedArrays, undef, userObject, arrayNonindexKeys, builtin, postmessage, socketio, sparseUndefined, specialNumbers, structuredCloningThrowing, structuredCloning, undefPreset, universal };
|
|
42
45
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.js"],"names":[],"mappings":";wBAGwB,wBAAwB;yBACvB,0BAA0B;mBAChC,mBAAmB;iBACrB,iBAAiB;sBACZ,sBAAsB;sBACtB,sBAAsB;qBACvB,qBAAqB;iBACzB,iBAAiB;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.js"],"names":[],"mappings":";wBAGwB,wBAAwB;yBACvB,0BAA0B;mBAChC,mBAAmB;iBACrB,iBAAiB;sBACZ,sBAAsB;sBACtB,sBAAsB;qBACvB,qBAAqB;iBACzB,iBAAiB;yBACT,yBAAyB;qBAC7B,qBAAqB;oBACtB,oBAAoB;kBACtB,kBAAkB;mBACjB,mBAAmB;iBACrB,iBAAiB;qBACb,qBAAqB;wBAClB,wBAAwB;sBAC1B,sBAAsB;qBACvB,qBAAqB;sBACpB,uBAAuB;gBAC7B,gBAAgB;gBAChB,gBAAgB;6BACH,8BAA8B;yBAClC,0BAA0B;6BACtB,8BAA8B;6BAC9B,8BAA8B;mBACxC,mBAAmB;0BACZ,0BAA0B;gBACpC,gBAAgB;gCACA,kCAAkC;wBAC1C,yBAAyB;kBAC/B,kBAAkB;uBACb,wBAAwB;8BAGjB,kCAAkC;oBAC5C,sBAAsB;wBAClB,0BAA0B;qBAC7B,uBAAuB;4BAChB,+BAA+B;2BAChC,8BAA8B;sCAErD,0CAA0C;8BAChB,iCAAiC;wBACvC,oBAAoB;sBACtB,wBAAwB"}
|
package/dist/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
function ownKeys(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n);}return r}function _objectSpread2(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?ownKeys(Object(r),!0).forEach((function(t){_defineProperty(e,t,r[t]);})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ownKeys(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t));}));}return e}function _typeof(e){return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},_typeof(e)}function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _defineProperties(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,_toPropertyKey(n.key),n);}}function _createClass(e,t,r){return t&&_defineProperties(e.prototype,t),r&&_defineProperties(e,r),Object.defineProperty(e,"prototype",{writable:!1}),e}function _defineProperty(e,t,r){return (t=_toPropertyKey(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function _slicedToArray(e,t){return function _arrayWithHoles(e){if(Array.isArray(e))return e}(e)||function _iterableToArrayLimit(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,c=[],s=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;s=!1;}else for(;!(s=(n=i.call(r)).done)&&(c.push(n.value),c.length!==t);s=!0);}catch(e){u=!0,o=e;}finally{try{if(!s&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return c}}(e,t)||_unsupportedIterableToArray(e,t)||function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function _toConsumableArray(e){return function _arrayWithoutHoles(e){if(Array.isArray(e))return _arrayLikeToArray(e)}(e)||function _iterableToArray(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||_unsupportedIterableToArray(e)||function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function _unsupportedIterableToArray(e,t){if(e){if("string"==typeof e)return _arrayLikeToArray(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return "Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?_arrayLikeToArray(e,t):void 0}}function _arrayLikeToArray(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function _toPropertyKey(e){var t=function _toPrimitive(e,t){if("object"!=typeof e||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return ("string"===t?String:Number)(e)}(e,"string");return "symbol"==typeof t?t:String(t)}var e=_createClass((function TypesonPromise(e){_classCallCheck(this,TypesonPromise),this.p=new Promise(e);}));e.__typeson__type__="TypesonPromise","undefined"!=typeof Symbol&&Object.defineProperty(e.prototype,Symbol.toStringTag,{get:function get(){return "TypesonPromise"}}),e.prototype.then=function(t,r){var n=this;return new e((function(e,o){n.p.then((function(r){e(t?t(r):r);})).catch((function(e){return r?r(e):Promise.reject(e)})).then(e,o);}))},e.prototype.catch=function(e){return this.then((function(){}),e)},e.resolve=function(t){return new e((function(e){e(t);}))},e.reject=function(t){return new e((function(e,r){r(t);}))},e.all=function(t){return new e((function(e,r){Promise.all(t.map((function(e){return null!=e&&e.constructor&&"__typeson__type__"in e.constructor&&"TypesonPromise"===e.constructor.__typeson__type__?e.p:e}))).then(e,r);}))},e.race=function(t){return new e((function(e,r){Promise.race(t.map((function(e){return null!=e&&e.constructor&&"__typeson__type__"in e.constructor&&"TypesonPromise"===e.constructor.__typeson__type__?e.p:e}))).then(e,r);}))},e.allSettled=function(t){return new e((function(e,r){Promise.allSettled(t.map((function(e){return null!=e&&e.constructor&&"__typeson__type__"in e.constructor&&"TypesonPromise"===e.constructor.__typeson__type__?e.p:e}))).then(e,r);}))};var t=Object.hasOwn,r=Object.getPrototypeOf;function isThenable(e,t){return isObject(e)&&"function"==typeof e.then&&(!t||"function"==typeof e.catch)}function toStringTag(e){return Object.prototype.toString.call(e).slice(8,-1)}function hasConstructorOf(e,n){if(!e||"object"!==_typeof(e))return !1;var o=r(e);if(!o)return null===n;var i=t(o,"constructor")&&o.constructor;return "function"!=typeof i?null===n:n===i||(null!==n&&Function.prototype.toString.call(i)===Function.prototype.toString.call(n)||"function"==typeof n&&"string"==typeof i.__typeson__type__&&i.__typeson__type__===n.__typeson__type__)}function isPlainObject(e){return !(!e||"Object"!==toStringTag(e))&&(!r(e)||hasConstructorOf(e,Object))}function isUserObject(e){if(!e||"Object"!==toStringTag(e))return !1;var t=r(e);return !t||(hasConstructorOf(e,Object)||isUserObject(t))}function isObject(e){return null!==e&&"object"===_typeof(e)}function escapeKeyPathComponent(e){return e.replace(/''/g,"''''").replace(/^$/,"''").replace(/~/g,"~0").replace(/\./g,"~1")}function unescapeKeyPathComponent(e){return e.replace(/~1/g,".").replace(/~0/g,"~").replace(/^''$/,"").replace(/''''/g,"''")}function getByKeyPath(e,t){if(""===t)return e;if(null===e||"object"!==_typeof(e))throw new TypeError("Unexpected non-object type");var r=t.indexOf(".");if(r>-1){var n=e[unescapeKeyPathComponent(t.slice(0,r))];return void 0===n?void 0:getByKeyPath(n,t.slice(r+1))}return e[unescapeKeyPathComponent(t)]}function setAtKeyPath(e,t,r){if(""===t)return r;if(!e||"object"!==_typeof(e))throw new TypeError("Unexpected non-object type");var n=t.indexOf(".");return n>-1?setAtKeyPath(e[unescapeKeyPathComponent(t.slice(0,n))],t.slice(n+1),r):(e[unescapeKeyPathComponent(t)]=r,e)}function getJSONType(e){return null===e?"null":Array.isArray(e)?"array":_typeof(e)}function _await(e,t,r){return r?t?t(e):e:(e&&e.then||(e=Promise.resolve(e)),t?e.then(t):e)}var n=Object.keys,o=Object.hasOwn,i$1=Array.isArray,a=["type","replaced","iterateIn","iterateUnsetNumeric","addLength"];function _async(e){return function(){for(var t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];try{return Promise.resolve(e.apply(this,t))}catch(e){return Promise.reject(e)}}}function nestedPathsFirst(e,t){var r,n;if(""===e.keypath)return -1;var o=null!==(r=e.keypath.match(/\./g))&&void 0!==r?r:0,i=null!==(n=t.keypath.match(/\./g))&&void 0!==n?n:0;return o&&(o=o.length),i&&(i=i.length),o>i?-1:o<i?1:e.keypath<t.keypath?-1:e.keypath>t.keypath?1:0}var c=function(){function Typeson(e){_classCallCheck(this,Typeson),this.options=e,this.plainObjectReplacers=[],this.nonplainObjectReplacers=[],this.revivers={},this.types={};}return _createClass(Typeson,[{key:"stringify",value:function stringify(e,t,r,n){n=_objectSpread2(_objectSpread2(_objectSpread2({},this.options),n),{},{stringification:!0});var o=this.encapsulate(e,null,n);return i$1(o)?JSON.stringify(o[0],t,r):o.then((function(e){return JSON.stringify(e,t,r)}))}},{key:"stringifySync",value:function stringifySync(e,t,r,n){return this.stringify(e,t,r,_objectSpread2(_objectSpread2({throwOnBadSyncType:!0},n),{},{sync:!0}))}},{key:"stringifyAsync",value:function stringifyAsync(e,t,r,n){return this.stringify(e,t,r,_objectSpread2(_objectSpread2({throwOnBadSyncType:!0},n),{},{sync:!1}))}},{key:"parse",value:function parse(e,t,r){return r=_objectSpread2(_objectSpread2(_objectSpread2({},this.options),r),{},{parse:!0}),this.revive(JSON.parse(e,t),r)}},{key:"parseSync",value:function parseSync(e,t,r){return this.parse(e,t,_objectSpread2(_objectSpread2({throwOnBadSyncType:!0},r),{},{sync:!0}))}},{key:"parseAsync",value:function parseAsync(e,t,r){return this.parse(e,t,_objectSpread2(_objectSpread2({throwOnBadSyncType:!0},r),{},{sync:!1}))}},{key:"specialTypeNames",value:function specialTypeNames(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return r.returnTypeNames=!0,this.encapsulate(e,t,r)}},{key:"rootTypeName",value:function rootTypeName(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return r.iterateNone=!0,this.encapsulate(e,t,r)}},{key:"encapsulate",value:function encapsulate(t,r,c){var s=this,u=_objectSpread2(_objectSpread2({sync:!0},this.options),c),y=u.sync,p={},l=[],f=[],v=[],h=!("cyclic"in u)||u.cyclic,d=u.encapsulateObserver,b=function finish(e){var t=Object.values(p);if(u.iterateNone)return t.length?t[0]:getJSONType(e);if(t.length){if(u.returnTypeNames)return _toConsumableArray(new Set(t));e&&isPlainObject(e)&&!o(e,"$types")?e.$types=p:e={$:e,$types:{$:p}};}else isObject(e)&&o(e,"$types")&&(e={$:e,$types:!0});return !u.returnTypeNames&&e},_=_async((function(t,r){return _await(Promise.all(r.map((function(e){return e[1].p}))),(function(n){return _await(Promise.all(n.map(_async((function(n){var o=!1,i=[],a=_slicedToArray(r.splice(0,1),1),c=_slicedToArray(a[0],7),s=c[0],u=c[2],y=c[3],p=c[4],l=c[5],f=c[6],v=m(s,n,u,y,i,!0,f),h=hasConstructorOf(v,e);return function _invoke(e,t){var r=e();return r&&r.then?r.then(t):t(r)}((function(){if(s&&h)return _await(v.p,(function(e){p[l]=e;var r=_(t,i);return o=!0,r}))}),(function(e){return o?e:(s?p[l]=v:t=h?v.p:v,_(t,i))}))})))),(function(){return t}))}))})),O=function _adaptBuiltinStateObjectProperties(e,t,r){Object.assign(e,t);var n=a.map((function(t){var r=e[t];return delete e[t],r}));r(),a.forEach((function(t,r){e[t]=n[r];}));},m=function _encapsulate(t,r,a,c,y,v,h){var b,_={},m=_typeof(r),g=d?function(n){var o,i=null!==(o=null!=h?h:c.type)&&void 0!==o?o:getJSONType(r);d(Object.assign(null!=n?n:_,{keypath:t,value:r,cyclic:a,stateObj:c,promisesData:y,resolvingTypesonPromise:v,awaitingTypesonPromise:hasConstructorOf(r,e)},{type:i}));}:null;if(["string","boolean","number","undefined"].includes(m))return void 0===r||Number.isNaN(r)||r===Number.NEGATIVE_INFINITY||r===Number.POSITIVE_INFINITY||0===r?(b=c.replaced?r:j(t,r,c,y,!1,v,g))!==r&&(_={replaced:b}):b=r,g&&g(),b;if(null===r)return g&&g(),r;if(a&&!c.iterateIn&&!c.iterateUnsetNumeric&&r&&"object"===_typeof(r)){var S=l.indexOf(r);if(!(S<0))return p[t]="#",g&&g({cyclicKeypath:f[S]}),"#"+f[S];!0===a&&(l.push(r),f.push(t));}var P,T,w=isPlainObject(r),A=i$1(r),C=(w||A)&&(!s.plainObjectReplacers.length||c.replaced)||c.iterateIn?r:j(t,r,c,y,w||A,null,g);if(C!==r?(b=C,_={replaced:C}):""===t&&hasConstructorOf(r,e)?(y.push([t,r,a,c,void 0,void 0,c.type]),b=r):A&&"object"!==c.iterateIn||"array"===c.iterateIn?(P=new Array(r.length),_={clone:P}):(["function","symbol"].includes(_typeof(r))||"toJSON"in r||hasConstructorOf(r,e)||hasConstructorOf(r,Promise)||hasConstructorOf(r,ArrayBuffer))&&!w&&"object"!==c.iterateIn?b=r:(P={},c.addLength&&(P.length=r.length),_={clone:P}),g&&g(),u.iterateNone)return null!==(T=P)&&void 0!==T?T:b;if(!P)return b;if(c.iterateIn){var k=function _loop(n){var i={ownKeys:o(r,n)};O(c,i,(function(){var o=t+(t?".":"")+escapeKeyPathComponent(n),i=_encapsulate(o,r[n],Boolean(a),c,y,v);hasConstructorOf(i,e)?y.push([o,i,Boolean(a),c,P,n,c.type]):void 0!==i&&(P[n]=i);}));};for(var N in r)k(N);g&&g({endIterateIn:!0,end:!0});}else n(r).forEach((function(n){var o=t+(t?".":"")+escapeKeyPathComponent(n);O(c,{ownKeys:!0},(function(){var t=_encapsulate(o,r[n],Boolean(a),c,y,v);hasConstructorOf(t,e)?y.push([o,t,Boolean(a),c,P,n,c.type]):void 0!==t&&(P[n]=t);}));})),g&&g({endIterateOwn:!0,end:!0});if(c.iterateUnsetNumeric){for(var I=r.length,E=function _loop2(n){if(!(n in r)){var o="".concat(t).concat(t?".":"").concat(n);O(c,{ownKeys:!1},(function(){var t=_encapsulate(o,void 0,Boolean(a),c,y,v);hasConstructorOf(t,e)?y.push([o,t,Boolean(a),c,P,n,c.type]):void 0!==t&&(P[n]=t);}));}},K=0;K<I;K++)E(K);g&&g({endIterateUnsetNumeric:!0,end:!0});}return P},j=function replace(e,t,r,n,o,i,a){for(var c=o?s.plainObjectReplacers:s.nonplainObjectReplacers,u=c.length;u--;){var l=c[u];if(l.test(t,r)){var f=l.type;if(s.revivers[f]){var v=p[e];p[e]=v?[f].concat(v):f;}if(Object.assign(r,{type:f,replaced:!0}),(y||!l.replaceAsync)&&!l.replace)return a&&a({typeDetected:!0}),m(e,t,h&&"readonly",r,n,i,f);a&&a({replacing:!0});var d=void 0;if(y||!l.replaceAsync){if(void 0===l.replace)throw new TypeError("Missing replacer");d=l.replace(t,r);}else d=l.replaceAsync(t,r);return m(e,d,h&&"readonly",r,n,i,f)}}return t},g=m("",t,h,null!=r?r:{},v);if(v.length)return y&&u.throwOnBadSyncType?function(){throw new TypeError("Sync method requested but async result obtained")}():Promise.resolve(_(g,v)).then(b);if(!y&&u.throwOnBadSyncType)throw new TypeError("Async method requested but sync result obtained");return u.stringification&&y?[b(g)]:y?b(g):Promise.resolve(b(g))}},{key:"encapsulateSync",value:function encapsulateSync(e,t,r){return this.encapsulate(e,t,_objectSpread2(_objectSpread2({throwOnBadSyncType:!0},r),{},{sync:!0}))}},{key:"encapsulateAsync",value:function encapsulateAsync(e,t,r){return this.encapsulate(e,t,_objectSpread2(_objectSpread2({throwOnBadSyncType:!0},r),{},{sync:!1}))}},{key:"revive",value:function revive(t,r){var o=this,a=_objectSpread2(_objectSpread2({sync:!0},this.options),r),c=a.sync;function finishRevival(e){if(c)return e;if(a.throwOnBadSyncType)throw new TypeError("Async method requested but sync result obtained");return Promise.resolve(e)}if(!t||"object"!==_typeof(t)||Array.isArray(t))return finishRevival(t);var u=t.$types;if(!0===u)return finishRevival(t.$);if(!u||"object"!==_typeof(u)||Array.isArray(u))return finishRevival(t);var y=[],p={},l=!0;u.$&&isPlainObject(u.$)&&(t=t.$,u=u.$,l=!1);var f=function executeReviver(e,t){var r,n=_slicedToArray(null!==(r=o.revivers[e])&&void 0!==r?r:[],1)[0];if(!n)throw new Error("Unregistered type: "+e);if(c&&!("revive"in n))return t;if(!c&&n.reviveAsync)return n.reviveAsync(t,p);if(n.revive)return n.revive(t,p);throw new Error("Missing reviver")},v=[];function checkUndefined(e){return hasConstructorOf(e,s)?void 0:e}var h,d=function revivePlainObjects(){var r=[];if(!u)throw new Error("Found bad `types`");if(Object.entries(u).forEach((function(e){var t=_slicedToArray(e,2),n=t[0],i=t[1];"#"!==i&&[].concat(i).forEach((function(e){var t;_slicedToArray(null!==(t=o.revivers[e])&&void 0!==t?t:[null,{}],2)[1].plain&&(r.push({keypath:n,type:e}),delete u[n]);}));})),r.length)return r.sort(nestedPathsFirst).reduce((function reducer(r,n){var o=n.keypath,i=n.type;if(isThenable(r))return r.then((function(e){return reducer(e,{keypath:o,type:i})}));var a=getByKeyPath(t,o);if(hasConstructorOf(a=f(i,a),e))return a.then((function(e){var r=setAtKeyPath(t,o,e);r===e&&(t=r);}));var c=setAtKeyPath(t,o,a);c===a&&(t=c);}),void 0)}();return hasConstructorOf(d,e)?h=d.then((function(){return t})):(h=function _revive(t,r,o,a,c){if(!l||"$types"!==t){var p=u[t],h=i$1(r);if(h||isPlainObject(r)){var d=h?new Array(r.length):{};for(n(r).forEach((function(n){var i=_revive(t+(t?".":"")+escapeKeyPathComponent(n),r[n],null!=o?o:d,d,n),a=function set(e){return hasConstructorOf(e,s)?d[n]=void 0:void 0!==e&&(d[n]=e),e};hasConstructorOf(i,e)?v.push(i.then((function(e){return a(e)}))):a(i);})),r=d;y.length;){var b=_slicedToArray(y[0],4),_=b[0],O=b[1],m=b[2],j=b[3],g=getByKeyPath(_,O);if(void 0===g)break;m[j]=g,y.splice(0,1);}}if(!p)return r;if("#"===p){var S=getByKeyPath(o,r.slice(1));return void 0===S&&y.push([o,r.slice(1),a,c]),S}return [].concat(p).reduce((function reducer(t,r){if(hasConstructorOf(t,e))return t.then((function(e){return reducer(e,r)}));if("string"!=typeof r)throw new TypeError("Bad type JSON");return f(r,t)}),r)}}("",t,null),v.length&&(h=e.resolve(h).then((function(t){return e.all([t].concat(v))})).then((function(e){return _slicedToArray(e,1)[0]})))),isThenable(h)?c&&a.throwOnBadSyncType?function(){throw new TypeError("Sync method requested but async result obtained")}():hasConstructorOf(h,e)?h.p.then(checkUndefined):h:!c&&a.throwOnBadSyncType?function(){throw new TypeError("Async method requested but sync result obtained")}():c?checkUndefined(h):Promise.resolve(checkUndefined(h))}},{key:"reviveSync",value:function reviveSync(e,t){return this.revive(e,_objectSpread2(_objectSpread2({throwOnBadSyncType:!0},t),{},{sync:!0}))}},{key:"reviveAsync",value:function reviveAsync(e,t){return this.revive(e,_objectSpread2(_objectSpread2({throwOnBadSyncType:!0},t),{},{sync:!1}))}},{key:"register",value:function register(e,t){var r=this,o=null!=t?t:{},a=function R(e){i$1(e)?e.forEach((function(e){return R(e)})):n(e).forEach((function(t){var n;if("#"===t)throw new TypeError("# cannot be used as a type name as it is reserved for cyclic objects");if(u.includes(t))throw new TypeError("Plain JSON object types are reserved as type names");var a=e[t],c=a&&"function"!=typeof a&&!Array.isArray(a)&&a.testPlainObjects?r.plainObjectReplacers:r.nonplainObjectReplacers,s=c.filter((function(e){return e.type===t}));if(s.length&&(c.splice(c.indexOf(s[0]),1),delete r.revivers[t],delete r.types[t]),"function"==typeof a){var y=a;a={test:function test(e){return e&&e.constructor===y},replace:function replace(e){return _objectSpread2({},e)},revive:function revive(e){return Object.assign(Object.create(y.prototype),e)}};}else if(i$1(a)){var p=_slicedToArray(a,3);a={test:p[0],replace:p[1],revive:p[2]};}if(null!==(n=a)&&void 0!==n&&n.test){var l={type:t,test:a.test.bind(a)};a.replace&&(l.replace=a.replace.bind(a)),a.replaceAsync&&(l.replaceAsync=a.replaceAsync.bind(a));var f="number"==typeof o.fallback?o.fallback:o.fallback?0:Number.POSITIVE_INFINITY;if(a.testPlainObjects?r.plainObjectReplacers.splice(f,0,l):r.nonplainObjectReplacers.splice(f,0,l),a.revive||a.reviveAsync){var v={};a.revive&&(v.revive=a.revive.bind(a)),a.reviveAsync&&(v.reviveAsync=a.reviveAsync.bind(a)),r.revivers[t]=[v,{plain:a.testPlainObjects}];}r.types[t]=a;}}));};return [].concat(e).forEach((function(e){return a(e)})),this}}]),Typeson}(),s=_createClass((function Undefined(){_classCallCheck(this,Undefined);}));s.__typeson__type__="TypesonUndefined";var u=["null","boolean","number","string","array","object"];
|
|
1
|
+
function ownKeys(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n);}return r}function _objectSpread2(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?ownKeys(Object(r),!0).forEach((function(t){_defineProperty(e,t,r[t]);})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ownKeys(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t));}));}return e}function _typeof(e){return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},_typeof(e)}function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _defineProperties(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,_toPropertyKey(n.key),n);}}function _createClass(e,t,r){return t&&_defineProperties(e.prototype,t),r&&_defineProperties(e,r),Object.defineProperty(e,"prototype",{writable:!1}),e}function _defineProperty(e,t,r){return (t=_toPropertyKey(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function _slicedToArray(e,t){return function _arrayWithHoles(e){if(Array.isArray(e))return e}(e)||function _iterableToArrayLimit(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,c=[],s=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;s=!1;}else for(;!(s=(n=i.call(r)).done)&&(c.push(n.value),c.length!==t);s=!0);}catch(e){u=!0,o=e;}finally{try{if(!s&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return c}}(e,t)||_unsupportedIterableToArray(e,t)||function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function _toConsumableArray(e){return function _arrayWithoutHoles(e){if(Array.isArray(e))return _arrayLikeToArray(e)}(e)||function _iterableToArray(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||_unsupportedIterableToArray(e)||function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function _unsupportedIterableToArray(e,t){if(e){if("string"==typeof e)return _arrayLikeToArray(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return "Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?_arrayLikeToArray(e,t):void 0}}function _arrayLikeToArray(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function _toPropertyKey(e){var t=function _toPrimitive(e,t){if("object"!=typeof e||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return ("string"===t?String:Number)(e)}(e,"string");return "symbol"==typeof t?t:String(t)}var e=_createClass((function TypesonPromise(e){_classCallCheck(this,TypesonPromise),this.p=new Promise(e);}));e.__typeson__type__="TypesonPromise","undefined"!=typeof Symbol&&Object.defineProperty(e.prototype,Symbol.toStringTag,{get:function get(){return "TypesonPromise"}}),e.prototype.then=function(t,r){var n=this;return new e((function(e,o){n.p.then((function(r){e(t?t(r):r);})).catch((function(e){return r?r(e):Promise.reject(e)})).then(e,o);}))},e.prototype.catch=function(e){return this.then((function(){}),e)},e.resolve=function(t){return new e((function(e){e(t);}))},e.reject=function(t){return new e((function(e,r){r(t);}))},e.all=function(t){return new e((function(e,r){Promise.all(t.map((function(e){return null!=e&&e.constructor&&"__typeson__type__"in e.constructor&&"TypesonPromise"===e.constructor.__typeson__type__?e.p:e}))).then(e,r);}))},e.race=function(t){return new e((function(e,r){Promise.race(t.map((function(e){return null!=e&&e.constructor&&"__typeson__type__"in e.constructor&&"TypesonPromise"===e.constructor.__typeson__type__?e.p:e}))).then(e,r);}))},e.allSettled=function(t){return new e((function(e,r){Promise.allSettled(t.map((function(e){return null!=e&&e.constructor&&"__typeson__type__"in e.constructor&&"TypesonPromise"===e.constructor.__typeson__type__?e.p:e}))).then(e,r);}))};var t=Object.hasOwn,r=Object.getPrototypeOf;function isThenable(e,t){return isObject(e)&&"function"==typeof e.then&&(!t||"function"==typeof e.catch)}function toStringTag(e){return Object.prototype.toString.call(e).slice(8,-1)}function hasConstructorOf(e,n){if(!e||"object"!==_typeof(e))return !1;var o=r(e);if(!o)return null===n;var i=t(o,"constructor")&&o.constructor;return "function"!=typeof i?null===n:n===i||(null!==n&&Function.prototype.toString.call(i)===Function.prototype.toString.call(n)||"function"==typeof n&&"string"==typeof i.__typeson__type__&&i.__typeson__type__===n.__typeson__type__)}function isPlainObject(e){return !(!e||"Object"!==toStringTag(e))&&(!r(e)||hasConstructorOf(e,Object))}function isUserObject(e){if(!e||"Object"!==toStringTag(e))return !1;var t=r(e);return !t||(hasConstructorOf(e,Object)||isUserObject(t))}function isObject(e){return null!==e&&"object"===_typeof(e)}function escapeKeyPathComponent(e){return e.replaceAll("''","''''").replace(/^$/,"''").replaceAll("~","~0").replaceAll(".","~1")}function unescapeKeyPathComponent(e){return e.replaceAll("~1",".").replaceAll("~0","~").replace(/^''$/,"").replaceAll("''''","''")}function getByKeyPath(e,t){if(""===t)return e;if(null===e||"object"!==_typeof(e))throw new TypeError("Unexpected non-object type");var r=t.indexOf(".");if(r>-1){var n=e[unescapeKeyPathComponent(t.slice(0,r))];return void 0===n?void 0:getByKeyPath(n,t.slice(r+1))}return e[unescapeKeyPathComponent(t)]}function setAtKeyPath(e,t,r){if(""===t)return r;if(!e||"object"!==_typeof(e))throw new TypeError("Unexpected non-object type");var n=t.indexOf(".");return n>-1?setAtKeyPath(e[unescapeKeyPathComponent(t.slice(0,n))],t.slice(n+1),r):(e[unescapeKeyPathComponent(t)]=r,e)}function getJSONType(e){return null===e?"null":Array.isArray(e)?"array":_typeof(e)}function _await(e,t,r){return r?t?t(e):e:(e&&e.then||(e=Promise.resolve(e)),t?e.then(t):e)}var n=Object.keys,o=Object.hasOwn,i$1=Array.isArray,a=["type","replaced","iterateIn","iterateUnsetNumeric","addLength"];function _async(e){return function(){for(var t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];try{return Promise.resolve(e.apply(this,t))}catch(e){return Promise.reject(e)}}}function nestedPathsFirst(e,t){var r,n;if(""===e.keypath)return -1;var o=null!==(r=e.keypath.match(/\./g))&&void 0!==r?r:0,i=null!==(n=t.keypath.match(/\./g))&&void 0!==n?n:0;return o&&(o=o.length),i&&(i=i.length),o>i?-1:o<i?1:e.keypath<t.keypath?-1:e.keypath>t.keypath?1:0}var c=function(){function Typeson(e){_classCallCheck(this,Typeson),this.options=e,this.plainObjectReplacers=[],this.nonplainObjectReplacers=[],this.revivers={},this.types={};}return _createClass(Typeson,[{key:"stringify",value:function stringify(e,t,r,n){n=_objectSpread2(_objectSpread2(_objectSpread2({},this.options),n),{},{stringification:!0});var o=this.encapsulate(e,null,n);return i$1(o)?JSON.stringify(o[0],t,r):o.then((function(e){return JSON.stringify(e,t,r)}))}},{key:"stringifySync",value:function stringifySync(e,t,r,n){return this.stringify(e,t,r,_objectSpread2(_objectSpread2({throwOnBadSyncType:!0},n),{},{sync:!0}))}},{key:"stringifyAsync",value:function stringifyAsync(e,t,r,n){return this.stringify(e,t,r,_objectSpread2(_objectSpread2({throwOnBadSyncType:!0},n),{},{sync:!1}))}},{key:"parse",value:function parse(e,t,r){return r=_objectSpread2(_objectSpread2(_objectSpread2({},this.options),r),{},{parse:!0}),this.revive(JSON.parse(e,t),r)}},{key:"parseSync",value:function parseSync(e,t,r){return this.parse(e,t,_objectSpread2(_objectSpread2({throwOnBadSyncType:!0},r),{},{sync:!0}))}},{key:"parseAsync",value:function parseAsync(e,t,r){return this.parse(e,t,_objectSpread2(_objectSpread2({throwOnBadSyncType:!0},r),{},{sync:!1}))}},{key:"specialTypeNames",value:function specialTypeNames(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return r.returnTypeNames=!0,this.encapsulate(e,t,r)}},{key:"rootTypeName",value:function rootTypeName(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return r.iterateNone=!0,this.encapsulate(e,t,r)}},{key:"encapsulate",value:function encapsulate(t,r,c){var s=this,u=_objectSpread2(_objectSpread2({sync:!0},this.options),c),l=u.sync,y={},p=[],f=[],v=[],h=!("cyclic"in u)||u.cyclic,d=u.encapsulateObserver,b=function finish(e){var t=Object.values(y);if(u.iterateNone)return t.length?t[0]:getJSONType(e);if(t.length){if(u.returnTypeNames)return _toConsumableArray(new Set(t));e&&isPlainObject(e)&&!o(e,"$types")?e.$types=y:e={$:e,$types:{$:y}};}else isObject(e)&&o(e,"$types")&&(e={$:e,$types:!0});return !u.returnTypeNames&&e},_=_async((function(t,r){return _await(Promise.all(r.map((function(e){return e[1].p}))),(function(n){return _await(Promise.all(n.map(_async((function(n){var o=!1,i=[],a=_slicedToArray(r.splice(0,1),1),c=_slicedToArray(a[0],7),s=c[0],u=c[2],l=c[3],y=c[4],p=c[5],f=c[6],v=m(s,n,u,l,i,!0,f),h=hasConstructorOf(v,e);return function _invoke(e,t){var r=e();return r&&r.then?r.then(t):t(r)}((function(){if(s&&h)return _await(v.p,(function(e){y[p]=e;var r=_(t,i);return o=!0,r}))}),(function(e){return o?e:(s?y[p]=v:t=h?v.p:v,_(t,i))}))})))),(function(){return t}))}))})),O=function _adaptBuiltinStateObjectProperties(e,t,r){Object.assign(e,t);var n=a.map((function(t){var r=e[t];return delete e[t],r}));r(),a.forEach((function(t,r){e[t]=n[r];}));},m=function _encapsulate(t,r,a,c,l,v,h){var b,_={},m=_typeof(r),g=d?function(n){var o,i=null!==(o=null!=h?h:c.type)&&void 0!==o?o:getJSONType(r);d(Object.assign(null!=n?n:_,{keypath:t,value:r,cyclic:a,stateObj:c,promisesData:l,resolvingTypesonPromise:v,awaitingTypesonPromise:hasConstructorOf(r,e)},{type:i}));}:null;if(["string","boolean","number","undefined"].includes(m))return void 0===r||Number.isNaN(r)||r===Number.NEGATIVE_INFINITY||r===Number.POSITIVE_INFINITY||0===r?(b=c.replaced?r:j(t,r,c,l,!1,v,g))!==r&&(_={replaced:b}):b=r,g&&g(),b;if(null===r)return g&&g(),r;if(a&&!c.iterateIn&&!c.iterateUnsetNumeric&&r&&"object"===_typeof(r)){var S=p.indexOf(r);if(!(S<0))return y[t]="#",g&&g({cyclicKeypath:f[S]}),"#"+f[S];!0===a&&(p.push(r),f.push(t));}var P,T,w=isPlainObject(r),A=i$1(r),C=(w||A)&&(!s.plainObjectReplacers.length||c.replaced)||c.iterateIn?r:j(t,r,c,l,w||A,null,g);if(C!==r?(b=C,_={replaced:C}):""===t&&hasConstructorOf(r,e)?(l.push([t,r,a,c,void 0,void 0,c.type]),b=r):A&&"object"!==c.iterateIn||"array"===c.iterateIn?(P=new Array(r.length),_={clone:P}):(["function","symbol"].includes(_typeof(r))||"toJSON"in r||hasConstructorOf(r,e)||hasConstructorOf(r,Promise)||hasConstructorOf(r,ArrayBuffer))&&!w&&"object"!==c.iterateIn?b=r:(P={},c.addLength&&(P.length=r.length),_={clone:P}),g&&g(),u.iterateNone)return null!==(T=P)&&void 0!==T?T:b;if(!P)return b;if(c.iterateIn){var k=function _loop(n){var i={ownKeys:o(r,n)};O(c,i,(function(){var o=t+(t?".":"")+escapeKeyPathComponent(n),i=_encapsulate(o,r[n],Boolean(a),c,l,v);hasConstructorOf(i,e)?l.push([o,i,Boolean(a),c,P,n,c.type]):void 0!==i&&(P[n]=i);}));};for(var N in r)k(N);g&&g({endIterateIn:!0,end:!0});}else n(r).forEach((function(n){var o=t+(t?".":"")+escapeKeyPathComponent(n);O(c,{ownKeys:!0},(function(){var t=_encapsulate(o,r[n],Boolean(a),c,l,v);hasConstructorOf(t,e)?l.push([o,t,Boolean(a),c,P,n,c.type]):void 0!==t&&(P[n]=t);}));})),g&&g({endIterateOwn:!0,end:!0});if(c.iterateUnsetNumeric){for(var I=r.length,E=function _loop2(n){if(!(n in r)){var o="".concat(t).concat(t?".":"").concat(n);O(c,{ownKeys:!1},(function(){var t=_encapsulate(o,void 0,Boolean(a),c,l,v);hasConstructorOf(t,e)?l.push([o,t,Boolean(a),c,P,n,c.type]):void 0!==t&&(P[n]=t);}));}},K=0;K<I;K++)E(K);g&&g({endIterateUnsetNumeric:!0,end:!0});}return P},j=function replace(e,t,r,n,o,i,a){for(var c=o?s.plainObjectReplacers:s.nonplainObjectReplacers,u=c.length;u--;){var p=c[u];if(p.test(t,r)){var f=p.type;if(s.revivers[f]){var v=y[e];y[e]=v?[f].concat(v):f;}if(Object.assign(r,{type:f,replaced:!0}),(l||!p.replaceAsync)&&!p.replace)return a&&a({typeDetected:!0}),m(e,t,h&&"readonly",r,n,i,f);a&&a({replacing:!0});var d=void 0;if(l||!p.replaceAsync){if(void 0===p.replace)throw new TypeError("Missing replacer");d=p.replace(t,r);}else d=p.replaceAsync(t,r);return m(e,d,h&&"readonly",r,n,i,f)}}return t},g=m("",t,h,null!=r?r:{},v);if(v.length)return l&&u.throwOnBadSyncType?function(){throw new TypeError("Sync method requested but async result obtained")}():Promise.resolve(_(g,v)).then(b);if(!l&&u.throwOnBadSyncType)throw new TypeError("Async method requested but sync result obtained");return u.stringification&&l?[b(g)]:l?b(g):Promise.resolve(b(g))}},{key:"encapsulateSync",value:function encapsulateSync(e,t,r){return this.encapsulate(e,t,_objectSpread2(_objectSpread2({throwOnBadSyncType:!0},r),{},{sync:!0}))}},{key:"encapsulateAsync",value:function encapsulateAsync(e,t,r){return this.encapsulate(e,t,_objectSpread2(_objectSpread2({throwOnBadSyncType:!0},r),{},{sync:!1}))}},{key:"revive",value:function revive(t,r){var o=this,a=_objectSpread2(_objectSpread2({sync:!0},this.options),r),c=a.sync;function finishRevival(e){if(c)return e;if(a.throwOnBadSyncType)throw new TypeError("Async method requested but sync result obtained");return Promise.resolve(e)}if(!t||"object"!==_typeof(t)||Array.isArray(t))return finishRevival(t);var u=t.$types;if(!0===u)return finishRevival(t.$);if(!u||"object"!==_typeof(u)||Array.isArray(u))return finishRevival(t);var l=[],y={},p=!0;u.$&&isPlainObject(u.$)&&(t=t.$,u=u.$,p=!1);var f=function executeReviver(e,t){var r,n=_slicedToArray(null!==(r=o.revivers[e])&&void 0!==r?r:[],1)[0];if(!n)throw new Error("Unregistered type: "+e);if(c&&!("revive"in n))return t;if(!c&&n.reviveAsync)return n.reviveAsync(t,y);if(n.revive)return n.revive(t,y);throw new Error("Missing reviver")},v=[];function checkUndefined(e){return hasConstructorOf(e,s)?void 0:e}var h,d=function revivePlainObjects(){var r=[];if(!u)throw new Error("Found bad `types`");if(Object.entries(u).forEach((function(e){var t=_slicedToArray(e,2),n=t[0],i=t[1];"#"!==i&&[].concat(i).forEach((function(e){var t;_slicedToArray(null!==(t=o.revivers[e])&&void 0!==t?t:[null,{}],2)[1].plain&&(r.push({keypath:n,type:e}),delete u[n]);}));})),r.length)return r.sort(nestedPathsFirst).reduce((function reducer(r,n){var o=n.keypath,i=n.type;if(isThenable(r))return r.then((function(e){return reducer(e,{keypath:o,type:i})}));var a=getByKeyPath(t,o);if(hasConstructorOf(a=f(i,a),e))return a.then((function(e){var r=setAtKeyPath(t,o,e);r===e&&(t=r);}));var c=setAtKeyPath(t,o,a);c===a&&(t=c);}),void 0)}();return hasConstructorOf(d,e)?h=d.then((function(){return t})):(h=function _revive(t,r,o,a,c){if(!p||"$types"!==t){var y=u[t],h=i$1(r);if(h||isPlainObject(r)){var d=h?new Array(r.length):{};for(n(r).forEach((function(n){var i=_revive(t+(t?".":"")+escapeKeyPathComponent(n),r[n],null!=o?o:d,d,n),a=function set(e){return hasConstructorOf(e,s)?d[n]=void 0:void 0!==e&&(d[n]=e),e};hasConstructorOf(i,e)?v.push(i.then((function(e){return a(e)}))):a(i);})),r=d;l.length;){var b=_slicedToArray(l[0],4),_=b[0],O=b[1],m=b[2],j=b[3],g=getByKeyPath(_,O);if(void 0===g)break;m[j]=g,l.splice(0,1);}}if(!y)return r;if("#"===y){var S=getByKeyPath(o,r.slice(1));return void 0===S&&l.push([o,r.slice(1),a,c]),S}return [].concat(y).reduce((function reducer(t,r){if(hasConstructorOf(t,e))return t.then((function(e){return reducer(e,r)}));if("string"!=typeof r)throw new TypeError("Bad type JSON");return f(r,t)}),r)}}("",t,null),v.length&&(h=e.resolve(h).then((function(t){return e.all([t].concat(v))})).then((function(e){return _slicedToArray(e,1)[0]})))),isThenable(h)?c&&a.throwOnBadSyncType?function(){throw new TypeError("Sync method requested but async result obtained")}():hasConstructorOf(h,e)?h.p.then(checkUndefined):h:!c&&a.throwOnBadSyncType?function(){throw new TypeError("Async method requested but sync result obtained")}():c?checkUndefined(h):Promise.resolve(checkUndefined(h))}},{key:"reviveSync",value:function reviveSync(e,t){return this.revive(e,_objectSpread2(_objectSpread2({throwOnBadSyncType:!0},t),{},{sync:!0}))}},{key:"reviveAsync",value:function reviveAsync(e,t){return this.revive(e,_objectSpread2(_objectSpread2({throwOnBadSyncType:!0},t),{},{sync:!1}))}},{key:"register",value:function register(e,t){var r=this,o=null!=t?t:{},a=function R(e){i$1(e)?e.forEach((function(e){return R(e)})):n(e).forEach((function(t){var n;if("#"===t)throw new TypeError("# cannot be used as a type name as it is reserved for cyclic objects");if(u.includes(t))throw new TypeError("Plain JSON object types are reserved as type names");var a=e[t],c=a&&"function"!=typeof a&&!Array.isArray(a)&&a.testPlainObjects?r.plainObjectReplacers:r.nonplainObjectReplacers,s=c.filter((function(e){return e.type===t}));if(s.length&&(c.splice(c.indexOf(s[0]),1),delete r.revivers[t],delete r.types[t]),"function"==typeof a){var l=a;a={test:function test(e){return e&&e.constructor===l},replace:function replace(e){return _objectSpread2({},e)},revive:function revive(e){return Object.assign(Object.create(l.prototype),e)}};}else if(i$1(a)){var y=_slicedToArray(a,3);a={test:y[0],replace:y[1],revive:y[2]};}if(null!==(n=a)&&void 0!==n&&n.test){var p={type:t,test:a.test.bind(a)};a.replace&&(p.replace=a.replace.bind(a)),a.replaceAsync&&(p.replaceAsync=a.replaceAsync.bind(a));var f="number"==typeof o.fallback?o.fallback:o.fallback?0:Number.POSITIVE_INFINITY;if(a.testPlainObjects?r.plainObjectReplacers.splice(f,0,p):r.nonplainObjectReplacers.splice(f,0,p),a.revive||a.reviveAsync){var v={};a.revive&&(v.revive=a.revive.bind(a)),a.reviveAsync&&(v.reviveAsync=a.reviveAsync.bind(a)),r.revivers[t]=[v,{plain:a.testPlainObjects}];}r.types[t]=a;}}));};return [].concat(e).forEach((function(e){return a(e)})),this}}]),Typeson}(),s=_createClass((function Undefined(){_classCallCheck(this,Undefined);}));s.__typeson__type__="TypesonUndefined";var u=["null","boolean","number","string","array","object"];
|
|
2
2
|
|
|
3
3
|
/*
|
|
4
4
|
* base64-arraybuffer
|
|
@@ -136,8 +136,6 @@ const arraybuffer = {
|
|
|
136
136
|
|
|
137
137
|
// See also typed-arrays!
|
|
138
138
|
|
|
139
|
-
/* globals BigInt */
|
|
140
|
-
|
|
141
139
|
/**
|
|
142
140
|
* @type {import('typeson').TypeSpecSet}
|
|
143
141
|
*/
|
|
@@ -155,8 +153,6 @@ const bigintObject = {
|
|
|
155
153
|
}
|
|
156
154
|
};
|
|
157
155
|
|
|
158
|
-
/* globals BigInt */
|
|
159
|
-
|
|
160
156
|
/**
|
|
161
157
|
* @type {import('typeson').TypeSpecSet}
|
|
162
158
|
*/
|
|
@@ -233,7 +229,7 @@ function string2arraybuffer (str) {
|
|
|
233
229
|
|
|
234
230
|
const array = new Uint8Array(str.length);
|
|
235
231
|
for (let i = 0; i < str.length; i++) {
|
|
236
|
-
// eslint-disable-next-line max-len -- Long
|
|
232
|
+
// eslint-disable-next-line @stylistic/max-len -- Long
|
|
237
233
|
// eslint-disable-next-line unicorn/prefer-code-point -- Iterating char. codes
|
|
238
234
|
array[i] = str.charCodeAt(i); // & 0xff;
|
|
239
235
|
}
|
|
@@ -296,8 +292,6 @@ const blob = {
|
|
|
296
292
|
}
|
|
297
293
|
};
|
|
298
294
|
|
|
299
|
-
/* globals performance */
|
|
300
|
-
|
|
301
295
|
// The `performance` global is optional
|
|
302
296
|
|
|
303
297
|
/**
|
|
@@ -317,11 +311,13 @@ function generateUUID () { // Adapted from original: public domain/MIT: http://
|
|
|
317
311
|
? performance.now()
|
|
318
312
|
: 0);
|
|
319
313
|
|
|
320
|
-
|
|
314
|
+
// eslint-disable-next-line @stylistic/max-len -- Long
|
|
315
|
+
// eslint-disable-next-line no-use-extend-native/no-use-extend-native -- Need to update plugin
|
|
316
|
+
return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replaceAll(/[xy]/gu, function (c) {
|
|
321
317
|
/* eslint-disable no-bitwise */
|
|
322
|
-
const r = Math.trunc((d + Math.random() * 16) % 16);
|
|
318
|
+
const r = Math.trunc((d + (Math.random() * 16)) % 16);
|
|
323
319
|
d = Math.floor(d / 16);
|
|
324
|
-
return (c === 'x' ? r : (r & 0x3 | 0x8)).toString(16);
|
|
320
|
+
return (c === 'x' ? r : ((r & 0x3) | 0x8)).toString(16);
|
|
325
321
|
/* eslint-enable no-bitwise */
|
|
326
322
|
});
|
|
327
323
|
}
|
|
@@ -484,6 +480,70 @@ const date = {
|
|
|
484
480
|
}
|
|
485
481
|
};
|
|
486
482
|
|
|
483
|
+
/**
|
|
484
|
+
* @type {import('typeson').TypeSpecSet}
|
|
485
|
+
*/
|
|
486
|
+
const domexception = {
|
|
487
|
+
domexception: {
|
|
488
|
+
test (x) { return toStringTag(x) === 'DOMException'; },
|
|
489
|
+
replace (de) {
|
|
490
|
+
// `code` is based on `name` and readonly, so no
|
|
491
|
+
// need to keep here
|
|
492
|
+
return {
|
|
493
|
+
name: de.name,
|
|
494
|
+
message: de.message
|
|
495
|
+
};
|
|
496
|
+
},
|
|
497
|
+
revive ({message, name}) {
|
|
498
|
+
return new DOMException(message, name);
|
|
499
|
+
}
|
|
500
|
+
}
|
|
501
|
+
};
|
|
502
|
+
|
|
503
|
+
/* globals DOMPoint */
|
|
504
|
+
|
|
505
|
+
/**
|
|
506
|
+
* @type {import('typeson').TypeSpecSet}
|
|
507
|
+
*/
|
|
508
|
+
const dompoint = {
|
|
509
|
+
dompoint: {
|
|
510
|
+
test (x) { return toStringTag(x) === 'DOMPoint'; },
|
|
511
|
+
replace (dp) {
|
|
512
|
+
return {
|
|
513
|
+
x: dp.x,
|
|
514
|
+
y: dp.y,
|
|
515
|
+
z: dp.z,
|
|
516
|
+
w: dp.w
|
|
517
|
+
};
|
|
518
|
+
},
|
|
519
|
+
revive ({x, y, z, w}) {
|
|
520
|
+
return new DOMPoint(x, y, z, w);
|
|
521
|
+
}
|
|
522
|
+
}
|
|
523
|
+
};
|
|
524
|
+
|
|
525
|
+
/* globals DOMRect */
|
|
526
|
+
|
|
527
|
+
/**
|
|
528
|
+
* @type {import('typeson').TypeSpecSet}
|
|
529
|
+
*/
|
|
530
|
+
const domrect = {
|
|
531
|
+
domrect: {
|
|
532
|
+
test (x) { return toStringTag(x) === 'DOMRect'; },
|
|
533
|
+
replace (dr) {
|
|
534
|
+
return {
|
|
535
|
+
x: dr.x,
|
|
536
|
+
y: dr.y,
|
|
537
|
+
width: dr.width,
|
|
538
|
+
height: dr.height
|
|
539
|
+
};
|
|
540
|
+
},
|
|
541
|
+
revive ({x, y, width, height}) {
|
|
542
|
+
return new DOMRect(x, y, width, height);
|
|
543
|
+
}
|
|
544
|
+
}
|
|
545
|
+
};
|
|
546
|
+
|
|
487
547
|
/**
|
|
488
548
|
* @type {import('typeson').TypeSpecSet}
|
|
489
549
|
*/
|
|
@@ -539,9 +599,12 @@ if (typeof AggregateError !== 'undefined') {
|
|
|
539
599
|
create$2(AggregateError);
|
|
540
600
|
}
|
|
541
601
|
|
|
542
|
-
/* c8 ignore next
|
|
543
|
-
// @ts-
|
|
544
|
-
typeof InternalError === 'function'
|
|
602
|
+
/* c8 ignore next 5 */
|
|
603
|
+
// @ts-expect-error Non-standard
|
|
604
|
+
if (typeof InternalError === 'function') {
|
|
605
|
+
// @ts-expect-error Non-standard
|
|
606
|
+
create$2(InternalError);
|
|
607
|
+
}
|
|
545
608
|
|
|
546
609
|
/* eslint-disable jsdoc/valid-types -- https://github.com/jsdoc-type-pratt-parser/jsdoc-type-pratt-parser/issues/131 */
|
|
547
610
|
/**
|
|
@@ -723,7 +786,7 @@ const filelist = {
|
|
|
723
786
|
}
|
|
724
787
|
};
|
|
725
788
|
|
|
726
|
-
/* globals createImageBitmap */
|
|
789
|
+
/* globals document, createImageBitmap */
|
|
727
790
|
// `ImageBitmap` is browser / DOM specific. It also can only work
|
|
728
791
|
// same-domain (or CORS)
|
|
729
792
|
|
|
@@ -835,8 +898,8 @@ const imagedata = {
|
|
|
835
898
|
const infinity = {
|
|
836
899
|
infinity: {
|
|
837
900
|
test (x) { return x === Number.POSITIVE_INFINITY; },
|
|
838
|
-
replace (n) { return 'Infinity'; },
|
|
839
|
-
revive (s) { return Number.POSITIVE_INFINITY; }
|
|
901
|
+
replace (/* n */) { return 'Infinity'; },
|
|
902
|
+
revive (/* s */) { return Number.POSITIVE_INFINITY; }
|
|
840
903
|
}
|
|
841
904
|
};
|
|
842
905
|
|
|
@@ -892,8 +955,8 @@ const map = {
|
|
|
892
955
|
const nan = {
|
|
893
956
|
nan: {
|
|
894
957
|
test (x) { return Number.isNaN(x); },
|
|
895
|
-
replace (n) { return 'NaN'; },
|
|
896
|
-
revive (s) { return Number.NaN; }
|
|
958
|
+
replace (/* n */) { return 'NaN'; },
|
|
959
|
+
revive (/* s */) { return Number.NaN; }
|
|
897
960
|
}
|
|
898
961
|
};
|
|
899
962
|
|
|
@@ -903,8 +966,8 @@ const nan = {
|
|
|
903
966
|
const negativeInfinity = {
|
|
904
967
|
negativeInfinity: {
|
|
905
968
|
test (x) { return x === Number.NEGATIVE_INFINITY; },
|
|
906
|
-
replace (n) { return '-Infinity'; },
|
|
907
|
-
revive (s) { return Number.NEGATIVE_INFINITY; }
|
|
969
|
+
replace (/* n */) { return '-Infinity'; },
|
|
970
|
+
revive (/* s */) { return Number.NEGATIVE_INFINITY; }
|
|
908
971
|
}
|
|
909
972
|
};
|
|
910
973
|
|
|
@@ -916,11 +979,11 @@ const negativeZero = {
|
|
|
916
979
|
test (x) {
|
|
917
980
|
return Object.is(x, -0);
|
|
918
981
|
},
|
|
919
|
-
replace (n) {
|
|
982
|
+
replace (/* n */) {
|
|
920
983
|
// Just adding 0 here for minimized space; will still revive as -0
|
|
921
984
|
return 0;
|
|
922
985
|
},
|
|
923
|
-
revive (s) {
|
|
986
|
+
revive (/* s */) {
|
|
924
987
|
return -0;
|
|
925
988
|
}
|
|
926
989
|
}
|
|
@@ -952,7 +1015,7 @@ const nonbuiltinIgnore = {
|
|
|
952
1015
|
'Atomics', 'Module'
|
|
953
1016
|
].includes(toStringTag(x));
|
|
954
1017
|
},
|
|
955
|
-
replace (rexp) {
|
|
1018
|
+
replace (/* rexp */) {
|
|
956
1019
|
// Not in use
|
|
957
1020
|
}
|
|
958
1021
|
}
|
|
@@ -1241,8 +1304,8 @@ const undef$1 = {
|
|
|
1241
1304
|
return typeof x === 'undefined' &&
|
|
1242
1305
|
(stateObj.ownKeys || !('ownKeys' in stateObj));
|
|
1243
1306
|
},
|
|
1244
|
-
replace (n) { return 0; },
|
|
1245
|
-
revive (s
|
|
1307
|
+
replace (/* n */) { return 0; },
|
|
1308
|
+
revive (/* s */) {
|
|
1246
1309
|
// Will add `undefined` (returning `undefined` would instead
|
|
1247
1310
|
// avoid explicitly setting)
|
|
1248
1311
|
return new s();
|
|
@@ -1255,7 +1318,7 @@ const undef$1 = {
|
|
|
1255
1318
|
*/
|
|
1256
1319
|
const userObject = {
|
|
1257
1320
|
userObject: {
|
|
1258
|
-
test (x, stateObj) { return isUserObject(x); },
|
|
1321
|
+
test (x /* , stateObj */) { return isUserObject(x); },
|
|
1259
1322
|
replace (n) { return {...n}; },
|
|
1260
1323
|
revive (s) { return s; }
|
|
1261
1324
|
}
|
|
@@ -1321,8 +1384,8 @@ const arrayNonindexKeys = [
|
|
|
1321
1384
|
test (x, stateObj) {
|
|
1322
1385
|
return typeof x === 'undefined' && stateObj.ownKeys === false;
|
|
1323
1386
|
},
|
|
1324
|
-
replace (n) { return 0; },
|
|
1325
|
-
revive (s) { return undefined; } // Will avoid adding anything
|
|
1387
|
+
replace (/* n */) { return 0; },
|
|
1388
|
+
revive (/* s */) { return undefined; } // Will avoid adding anything
|
|
1326
1389
|
}
|
|
1327
1390
|
}
|
|
1328
1391
|
];
|
|
@@ -1436,8 +1499,8 @@ const sparseUndefined = [
|
|
|
1436
1499
|
test (x, stateObj) {
|
|
1437
1500
|
return typeof x === 'undefined' && stateObj.ownKeys === false;
|
|
1438
1501
|
},
|
|
1439
|
-
replace (n) { return 0; },
|
|
1440
|
-
revive (s) { return undefined; } // Will avoid adding anything
|
|
1502
|
+
replace (/* n */) { return 0; },
|
|
1503
|
+
revive (/* s */) { return undefined; } // Will avoid adding anything
|
|
1441
1504
|
}
|
|
1442
1505
|
}
|
|
1443
1506
|
];
|
|
@@ -1479,15 +1542,17 @@ const expObj = [
|
|
|
1479
1542
|
/* c8 ignore next */
|
|
1480
1543
|
typeof DataView === 'function' ? dataview : [],
|
|
1481
1544
|
/* c8 ignore next */
|
|
1482
|
-
typeof Intl !== 'undefined' ? intlTypes : [],
|
|
1483
|
-
/* c8 ignore next */
|
|
1484
1545
|
typeof crypto !== 'undefined' ? cryptokey : [],
|
|
1485
1546
|
/* c8 ignore next */
|
|
1486
|
-
typeof BigInt !== 'undefined' ? [bigint, bigintObject] : []
|
|
1547
|
+
typeof BigInt !== 'undefined' ? [bigint, bigintObject] : [],
|
|
1548
|
+
/* c8 ignore next */
|
|
1549
|
+
typeof DOMException !== 'undefined' ? domexception : [],
|
|
1550
|
+
/* c8 ignore next */
|
|
1551
|
+
typeof DOMRect !== 'undefined' ? domrect : [],
|
|
1552
|
+
/* c8 ignore next */
|
|
1553
|
+
typeof DOMPoint !== 'undefined' ? dompoint : []
|
|
1487
1554
|
);
|
|
1488
1555
|
|
|
1489
|
-
/* globals DOMException */
|
|
1490
|
-
|
|
1491
1556
|
/**
|
|
1492
1557
|
* @type {import('typeson').Preset}
|
|
1493
1558
|
*/
|
|
@@ -1583,5 +1648,5 @@ const universal = [
|
|
|
1583
1648
|
// built-in into ecmasript standard.
|
|
1584
1649
|
];
|
|
1585
1650
|
|
|
1586
|
-
export { u as JSON_TYPES, c as Typeson, e as TypesonPromise, s as Undefined, arrayNonindexKeys, arraybuffer, bigint, bigintObject, blob, expObj$1 as builtin, cloneable, cryptokey, dataview, date, error, errors, escapeKeyPathComponent, file, filelist, getByKeyPath, getJSONType, hasConstructorOf, imagebitmap, imagedata, infinity, intlTypes, isObject, isPlainObject, isThenable, isUserObject, map, nan, negativeInfinity, negativeZero, nonbuiltinIgnore, postmessage, primitiveObjects, regexp, resurrectable, set, setAtKeyPath, socketio, sparseUndefined, specialNumbers, expObj as structuredCloning, structuredCloningThrowing, toStringTag, typedArrays, typedArraysSocketIO as typedArraysSocketio, undef$1 as undef, undef as undefPreset, unescapeKeyPathComponent, universal, userObject };
|
|
1651
|
+
export { u as JSON_TYPES, c as Typeson, e as TypesonPromise, s as Undefined, arrayNonindexKeys, arraybuffer, bigint, bigintObject, blob, expObj$1 as builtin, cloneable, cryptokey, dataview, date, domexception, dompoint, domrect, error, errors, escapeKeyPathComponent, file, filelist, getByKeyPath, getJSONType, hasConstructorOf, imagebitmap, imagedata, infinity, intlTypes, isObject, isPlainObject, isThenable, isUserObject, map, nan, negativeInfinity, negativeZero, nonbuiltinIgnore, postmessage, primitiveObjects, regexp, resurrectable, set, setAtKeyPath, socketio, sparseUndefined, specialNumbers, expObj as structuredCloning, structuredCloningThrowing, toStringTag, typedArrays, typedArraysSocketIO as typedArraysSocketio, undef$1 as undef, undef as undefPreset, unescapeKeyPathComponent, universal, userObject };
|
|
1587
1652
|
//# sourceMappingURL=index.js.map
|