typeson-registry 13.0.1 → 13.2.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 +6 -8
- package/dist/index.d.ts +4 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +65 -4
- package/dist/index.js.map +1 -1
- package/dist/index.min.js +2 -2
- package/dist/index.min.js.map +1 -1
- package/dist/index.umd.cjs +220 -124
- package/dist/index.umd.cjs.map +1 -1
- package/dist/index.umd.min.cjs +2 -2
- package/dist/index.umd.min.cjs.map +1 -1
- package/dist/polyfills/createObjectURL.d.ts.map +1 -1
- package/dist/presets/builtin.umd.cjs +1 -1
- package/dist/presets/builtin.umd.cjs.map +1 -1
- package/dist/presets/postmessage.umd.cjs +1 -1
- package/dist/presets/postmessage.umd.cjs.map +1 -1
- package/dist/presets/socketio.umd.cjs +1 -1
- package/dist/presets/socketio.umd.cjs.map +1 -1
- package/dist/presets/structured-cloning-throwing.umd.cjs +1 -1
- package/dist/presets/structured-cloning-throwing.umd.cjs.map +1 -1
- package/dist/presets/structured-cloning.d.ts.map +1 -1
- package/dist/presets/structured-cloning.umd.cjs +1 -1
- package/dist/presets/structured-cloning.umd.cjs.map +1 -1
- package/dist/presets/undef.umd.cjs +1 -1
- package/dist/presets/undef.umd.cjs.map +1 -1
- package/dist/presets/universal.umd.cjs +1 -1
- package/dist/presets/universal.umd.cjs.map +1 -1
- package/dist/types/arraybuffer.umd.cjs +1 -1
- package/dist/types/arraybuffer.umd.cjs.map +1 -1
- package/dist/types/audiodata.d.ts +6 -0
- package/dist/types/audiodata.d.ts.map +1 -0
- package/dist/types/audiodata.umd.cjs +2 -0
- package/dist/types/audiodata.umd.cjs.map +1 -0
- package/dist/types/bigint-object.umd.cjs +1 -1
- package/dist/types/bigint-object.umd.cjs.map +1 -1
- package/dist/types/blob.umd.cjs +1 -1
- package/dist/types/blob.umd.cjs.map +1 -1
- package/dist/types/cryptokey.umd.cjs +1 -1
- package/dist/types/cryptokey.umd.cjs.map +1 -1
- package/dist/types/dataview.umd.cjs +1 -1
- package/dist/types/dataview.umd.cjs.map +1 -1
- package/dist/types/date.umd.cjs +1 -1
- package/dist/types/date.umd.cjs.map +1 -1
- package/dist/types/domexception.umd.cjs +1 -1
- package/dist/types/domexception.umd.cjs.map +1 -1
- package/dist/types/dommatrix.umd.cjs +1 -1
- package/dist/types/dommatrix.umd.cjs.map +1 -1
- package/dist/types/dompoint.umd.cjs +1 -1
- package/dist/types/dompoint.umd.cjs.map +1 -1
- package/dist/types/domquad.umd.cjs +1 -1
- package/dist/types/domquad.umd.cjs.map +1 -1
- package/dist/types/domrect.umd.cjs +1 -1
- package/dist/types/domrect.umd.cjs.map +1 -1
- package/dist/types/error.umd.cjs +1 -1
- package/dist/types/error.umd.cjs.map +1 -1
- package/dist/types/errors.umd.cjs +1 -1
- package/dist/types/errors.umd.cjs.map +1 -1
- package/dist/types/file.umd.cjs +1 -1
- package/dist/types/file.umd.cjs.map +1 -1
- package/dist/types/filelist.umd.cjs +1 -1
- package/dist/types/filelist.umd.cjs.map +1 -1
- package/dist/types/imagebitmap.umd.cjs +1 -1
- package/dist/types/imagebitmap.umd.cjs.map +1 -1
- package/dist/types/imagedata.umd.cjs +1 -1
- package/dist/types/imagedata.umd.cjs.map +1 -1
- package/dist/types/intl-types.umd.cjs +1 -1
- package/dist/types/intl-types.umd.cjs.map +1 -1
- package/dist/types/map.umd.cjs +1 -1
- package/dist/types/map.umd.cjs.map +1 -1
- package/dist/types/nonbuiltin-ignore.umd.cjs +1 -1
- package/dist/types/nonbuiltin-ignore.umd.cjs.map +1 -1
- package/dist/types/primitive-objects.umd.cjs +1 -1
- package/dist/types/primitive-objects.umd.cjs.map +1 -1
- package/dist/types/promise.umd.cjs +1 -1
- package/dist/types/promise.umd.cjs.map +1 -1
- package/dist/types/regexp.umd.cjs +1 -1
- package/dist/types/regexp.umd.cjs.map +1 -1
- package/dist/types/set.umd.cjs +1 -1
- package/dist/types/set.umd.cjs.map +1 -1
- package/dist/types/typed-arrays-socketio.umd.cjs +1 -1
- package/dist/types/typed-arrays-socketio.umd.cjs.map +1 -1
- package/dist/types/typed-arrays.umd.cjs +1 -1
- package/dist/types/typed-arrays.umd.cjs.map +1 -1
- package/dist/types/undef.umd.cjs +1 -1
- package/dist/types/undef.umd.cjs.map +1 -1
- package/dist/types/user-object.umd.cjs +1 -1
- package/dist/types/user-object.umd.cjs.map +1 -1
- package/package.json +11 -12
- package/polyfills/createObjectURL.cjs +3231 -0
- package/polyfills/createObjectURL.cjs.map +1 -0
- package/polyfills/createObjectURL.js +4 -4
- package/polyfills/createObjectURL.umd.cjs +0 -4
- package/polyfills/createObjectURL.umd.cjs.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"user-object.umd.cjs","sources":["../../node_modules/.pnpm/typeson@10.1.1/node_modules/typeson/dist/typeson.esm.min.js","../../types/user-object.js"],"sourcesContent":["class TypesonPromise{constructor(e){this.p=new Promise(e)}}TypesonPromise.__typeson__type__=\"TypesonPromise\",\"undefined\"!=typeof Symbol&&Object.defineProperty(TypesonPromise.prototype,Symbol.toStringTag,{get:()=>\"TypesonPromise\"}),TypesonPromise.prototype.then=function(e,t){return new TypesonPromise((n,r)=>{this.p.then(function(t){n(e?e(t):t)}).catch(function(e){return t?t(e):Promise.reject(e)}).then(n,r)})},TypesonPromise.prototype.catch=function(e){return this.then(()=>{},e)},TypesonPromise.resolve=function(e){return new TypesonPromise(t=>{t(e)})},TypesonPromise.reject=function(e){return new TypesonPromise((t,n)=>{n(e)})},TypesonPromise.all=function(e){return new TypesonPromise(function(t,n){Promise.all(e.map(e=>e?.constructor&&\"__typeson__type__\"in e.constructor&&\"TypesonPromise\"===e.constructor.__typeson__type__?e.p:e)).then(t,n)})},TypesonPromise.race=function(e){return new TypesonPromise(function(t,n){Promise.race(e.map(e=>e?.constructor&&\"__typeson__type__\"in e.constructor&&\"TypesonPromise\"===e.constructor.__typeson__type__?e.p:e)).then(t,n)})},TypesonPromise.allSettled=function(e){return new TypesonPromise(function(t,n){Promise.allSettled(e.map(e=>e?.constructor&&\"__typeson__type__\"in e.constructor&&\"TypesonPromise\"===e.constructor.__typeson__type__?e.p:e)).then(t,n)})};const{hasOwn:e}=Object,t=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(n,r){if(!n||\"object\"!=typeof n)return!1;const s=t(n);if(!s)return null===r;const o=e(s,\"constructor\")&&s.constructor;return\"function\"!=typeof o?null===r:r===o||(null!==r&&Function.prototype.toString.call(o)===Function.prototype.toString.call(r)||\"function\"==typeof r&&\"string\"==typeof o.__typeson__type__&&o.__typeson__type__===r.__typeson__type__)}function isPlainObject(e){if(!e||\"Object\"!==toStringTag(e))return!1;return!t(e)||hasConstructorOf(e,Object)}function isUserObject(e){if(!e||\"Object\"!==toStringTag(e))return!1;const n=t(e);return!n||(hasConstructorOf(e,Object)||isUserObject(n))}function isObject(e){return null!==e&&\"object\"==typeof e}function escapeKeyPathComponent(e){return e.replaceAll(\"''\",\"''''\").replace(/^$/u,\"''\").replaceAll(\"~\",\"~0\").replaceAll(\".\",\"~1\")}function unescapeKeyPathComponent(e){return e.replaceAll(\"~1\",\".\").replaceAll(\"~0\",\"~\").replace(/^''$/u,\"\").replaceAll(\"''''\",\"''\")}function getByKeyPath(e,t){if(\"\"===t)return e;if(null===e||\"object\"!=typeof e)throw new TypeError(\"Unexpected non-object type\");const n=t.indexOf(\".\");if(-1!==n){const r=e[unescapeKeyPathComponent(t.slice(0,n))];return void 0===r?void 0:getByKeyPath(r,t.slice(n+1))}return e[unescapeKeyPathComponent(t)]}function setAtKeyPath(e,t,n){if(\"\"===t)return n;let r=e,s=t;for(;;){if(!r||\"object\"!=typeof r)throw new TypeError(\"Unexpected non-object type\");if(\"__proto__\"===s)throw new TypeError(\"Invalid property\");const t=s.indexOf(\".\");if(-1===t)return r[unescapeKeyPathComponent(s)]=n,e;r=r[unescapeKeyPathComponent(s.slice(0,t))],s=s.slice(t+1)}}function getJSONType(e){return null===e?\"null\":Array.isArray(e)?\"array\":typeof e}\n/**\n * @file Typeson - JSON with types.\n * @license The MIT License (MIT)\n * @copyright (c) 2016-2018 David Fahlander, Brett Zamir\n*/const{keys:n,hasOwn:r}=Object,{isArray:s}=Array,o=[\"type\",\"replaced\",\"iterateIn\",\"iterateUnsetNumeric\",\"addLength\"];function nestedPathsFirst(e,t){if(\"\"===e.keypath)return-1;let n=e.keypath.match(/\\./gu)??0,r=t.keypath.match(/\\./gu)??0;return n&&(n=n.length),r&&(r=r.length),n>r?-1:n<r?1:e.keypath<t.keypath?-1:e.keypath>t.keypath?1:0}class Typeson{constructor(e){this.options=e,this.plainObjectReplacers=[],this.nonplainObjectReplacers=[],this.revivers={},this.types={}}stringify(e,t,n,r){r={...this.options,...r,stringification:!0};const o=this.encapsulate(e,null,r);return s(o)?JSON.stringify(o[0],t,n):o.then(e=>JSON.stringify(e,t,n))}stringifySync(e,t,n,r){return this.stringify(e,t,n,{throwOnBadSyncType:!0,...r,sync:!0})}stringifyAsync(e,t,n,r){return this.stringify(e,t,n,{throwOnBadSyncType:!0,...r,sync:!1})}parse(e,t,n){return n={...this.options,...n,parse:!0},this.revive(JSON.parse(e,t),n)}parseSync(e,t,n){return this.parse(e,t,{throwOnBadSyncType:!0,...n,sync:!0})}parseAsync(e,t,n){return this.parse(e,t,{throwOnBadSyncType:!0,...n,sync:!1})}specialTypeNames(e,t,n={}){return n.returnTypeNames=!0,this.encapsulate(e,t,n)}rootTypeName(e,t,n={}){return n.iterateNone=!0,this.encapsulate(e,t,n)}encapsulate(e,t,i){const c={sync:!0,...this.options,...i},{sync:a}=c,p={},y=[],u=[],l=[],h=!(\"cyclic\"in c)||c.cyclic,{encapsulateObserver:f,encapsulateError:d}=c,finish=e=>{const t=Object.values(p);if(c.iterateNone)return t.length?t[0]:getJSONType(e);if(t.length){if(c.returnTypeNames)return[...new Set(t)];e&&isPlainObject(e)&&!r(e,\"$types\")?e.$types=p:e={$:e,$types:{$:p}}}else isObject(e)&&r(e,\"$types\")&&(e={$:e,$types:!0});return!c.returnTypeNames&&e},checkPromises=async(e,t)=>{const n=await Promise.all(t.map(e=>e[1].p));return await Promise.all(n.map(async function(n){const r=[],[s]=t.splice(0,1),[o,,i,c,a,p,y]=s,u=_encapsulate(o,n,i,c,r,!0,y),l=hasConstructorOf(u,TypesonPromise);if(o&&l){const t=await u.p;return a[p]=t,checkPromises(e,r)}return o?a[p]=u:e=l?u.p:u,checkPromises(e,r)})),e},_adaptBuiltinStateObjectProperties=(e,t,n)=>{Object.assign(e,t);const r=o.map(t=>{const n=e[t];return delete e[t],n});n(),o.forEach((t,n)=>{e[t]=r[n]})},_encapsulate=(e,t,o,i,a,l,h)=>{let v,O={};const b=f?function(n){const r=h??i.type??getJSONType(t);f(Object.assign(n??O,{keypath:e,value:t,cyclic:o,stateObj:i,promisesData:a,resolvingTypesonPromise:l,awaitingTypesonPromise:hasConstructorOf(t,TypesonPromise)},{type:r}))}:null,getEncapsulatedValue=(e,t,n)=>{try{return{value:_encapsulate(e,t[n],Boolean(o),i,a,l)}}catch(r){if(!d)throw r;const s=h??i.type??getJSONType(t),o=d({keypath:e,error:r,parent:t,key:n,stateObj:i,type:s});if(!o)throw r;if(\"substitute\"in o)return{value:o.substitute,substitute:!0};if(o.ignore)return;throw r}};if([\"string\",\"boolean\",\"number\",\"undefined\"].includes(typeof t))return void 0===t||t===1/0||0===t||t===-1/0||Number.isNaN(t)?(v=i.replaced?t:replace(e,t,i,a,!1,l,b),v!==t&&(O={replaced:v})):v=t,b&&b(),v;if(null===t)return b&&b(),t;if(o&&t&&\"object\"==typeof t&&!i.iterateIn&&!i.iterateUnsetNumeric){const n=y.indexOf(t);if(-1!==n)return p[e]=\"#\",b&&b({cyclicKeypath:u[n]}),\"#\"+u[n];!0===o&&(y.push(t),u.push(e))}const m=isPlainObject(t),P=s(t),T=(m||P)&&(!this.plainObjectReplacers.length||i.replaced)||i.iterateIn?t:replace(e,t,i,a,m||P,null,b);let g;if(T!==t?(v=T,O={replaced:T}):\"\"===e&&hasConstructorOf(t,TypesonPromise)?(a.push([e,t,o,i,void 0,void 0,i.type]),v=t):P&&\"object\"!==i.iterateIn||\"array\"===i.iterateIn?(g=new Array(t.length),O={clone:g}):!m&&(\"object\"!=typeof t||\"toJSON\"in t||hasConstructorOf(t,TypesonPromise)||hasConstructorOf(t,Promise)||hasConstructorOf(t,ArrayBuffer))&&\"object\"!==i.iterateIn?v=t:(g={},i.addLength&&(g.length=t.length),O={clone:g}),b&&b(),c.iterateNone)return g??v;if(!g)return v;if(i.iterateIn){for(const n in t){const s={ownKeys:r(t,n)};_adaptBuiltinStateObjectProperties(i,s,()=>{const r=e+(e?\".\":\"\")+escapeKeyPathComponent(n),s=getEncapsulatedValue(r,t,n),c=s&&s.value;hasConstructorOf(c,TypesonPromise)?a.push([r,c,Boolean(o),i,g,n,i.type]):s&&(void 0!==c||\"substitute\"in s)&&(g[n]=c)})}b&&b({endIterateIn:!0,end:!0})}else n(t).forEach(function(n){const r=e+(e?\".\":\"\")+escapeKeyPathComponent(n);_adaptBuiltinStateObjectProperties(i,{ownKeys:!0},()=>{const e=getEncapsulatedValue(r,t,n),s=e&&e.value;hasConstructorOf(s,TypesonPromise)?a.push([r,s,Boolean(o),i,g,n,i.type]):e&&(void 0!==s||\"substitute\"in e)&&(g[n]=s)})}),b&&b({endIterateOwn:!0,end:!0});if(i.iterateUnsetNumeric){const n=t.length;for(let r=0;r<n;r++){if(r in t)continue;const n=`${e}${e?\".\":\"\"}${String(r)}`;_adaptBuiltinStateObjectProperties(i,{ownKeys:!1},()=>{const e=_encapsulate(n,void 0,Boolean(o),i,a,l);hasConstructorOf(e,TypesonPromise)?a.push([n,e,Boolean(o),i,g,r,i.type]):void 0!==e&&(g[r]=e)})}b&&b({endIterateUnsetNumeric:!0,end:!0})}return g},replace=(e,t,n,r,s,o,i)=>{const c=s?this.plainObjectReplacers:this.nonplainObjectReplacers;let y=c.length;for(;y--;){const s=c[y];if(s.test(t,n)){const{type:c}=s;if(Object.hasOwn(this.revivers,c)){const t=p[e];p[e]=t?[c].concat(t):c}if(Object.assign(n,{type:c,replaced:!0}),(a||!s.replaceAsync)&&!s.replace)return i&&i({typeDetected:!0}),_encapsulate(e,t,h&&\"readonly\",n,r,o,c);let y;if(i&&i({replacing:!0}),a||!s.replaceAsync){if(void 0===s.replace)throw new TypeError(\"Missing replacer\");y=s.replace(t,n)}else y=s.replaceAsync(t,n);return _encapsulate(e,y,h&&\"readonly\",n,r,o,c)}}return t},v=_encapsulate(\"\",e,h,t??{},l);if(l.length)return a&&c.throwOnBadSyncType?(()=>{throw new TypeError(\"Sync method requested but async result obtained\")})():Promise.resolve(checkPromises(v,l)).then(finish);if(!a&&c.throwOnBadSyncType)throw new TypeError(\"Async method requested but sync result obtained\");return a&&c.stringification?[finish(v)]:a?finish(v):Promise.resolve(finish(v))}encapsulateSync(e,t,n){return this.encapsulate(e,t,{throwOnBadSyncType:!0,...n,sync:!0})}encapsulateAsync(e,t,n){return this.encapsulate(e,t,{throwOnBadSyncType:!0,...n,sync:!1})}revive(e,t){const o={sync:!0,...this.options,...t},{sync:i}=o;function finishRevival(e){if(i)return e;if(o.throwOnBadSyncType)throw new TypeError(\"Async method requested but sync result obtained\");return Promise.resolve(e)}if(!e||\"object\"!=typeof e||Array.isArray(e))return finishRevival(e);let c=e.$types;if(!0===c)return finishRevival(e.$);if(!c||\"object\"!=typeof c||Array.isArray(c))return finishRevival(e);const a=[],p=Object.create(null),y={};let u=!0;c.$&&isPlainObject(c.$)&&(e=e.$,c=c.$,u=!1);const executeReviver=(e,t)=>{const[n]=this.revivers[e]??[];if(!n)throw new Error(\"Unregistered type: \"+e);if(i&&!(\"revive\"in n))return t;if(!i&&n.reviveAsync)return n.reviveAsync(t,y);if(n.revive)return n.revive(t,y);throw new Error(\"Missing reviver\")},l=[];function checkUndefined(e){return hasConstructorOf(e,Undefined)?void 0:e}const h=(()=>{if(!c)throw new Error(\"Found bad `types`\");const t=[];if(Object.entries(c).forEach(([e,n])=>{\"#\"!==n&&[].concat(n).forEach(n=>{const[,{plain:r}]=this.revivers[n]??[null,{}];r&&(t.push({keypath:e,type:n}),delete c[e])})}),t.length)return t.sort(nestedPathsFirst),t.reduce(function reducer(t,{keypath:n,type:r}){if(isThenable(t))return t.then(e=>reducer(e,{keypath:n,type:r}));let s=getByKeyPath(e,n);if(s=executeReviver(r,s),hasConstructorOf(s,TypesonPromise))return s.then(t=>{const r=setAtKeyPath(e,n,t);r===t&&(e=r)});const o=setAtKeyPath(e,n,s);o===s&&(e=o)},void 0)})();let f;return hasConstructorOf(h,TypesonPromise)?f=h.then(()=>e):(f=function _revive(e,t,o,y,h){if(u&&\"$types\"===e)return;const f=l.length,d=c[e],v=s(t);if(v||isPlainObject(t)){const s=v?new Array(t.length):{};for(n(t).forEach(n=>{const r=_revive(e+(e?\".\":\"\")+escapeKeyPathComponent(n),t[n],o??s,s,n),set=e=>(hasConstructorOf(e,Undefined)?s[n]=void 0:void 0!==e&&(s[n]=e),e);hasConstructorOf(r,TypesonPromise)?l.push(r.then(e=>set(e))):set(r)}),t=s;a.length;){const[[e,t,n,s]]=a,o=r(p,t),i=o?p[t]:getByKeyPath(e,t);if(!o&&void 0===i)break;n[s]=i,a.shift()}}if(!d)return p[e]=t,t;if(\"#\"===d){const e=t.slice(1),n=r(p,e),s=n?p[e]:getByKeyPath(o,e);return n||void 0!==s||a.push([o,e,y,h]),s}const applyType=t=>{const n=[].concat(d).reduce(function reducer(e,t){if(hasConstructorOf(e,TypesonPromise))return e.then(e=>reducer(e,t));if(\"string\"!=typeof t)throw new TypeError(\"Bad type JSON\");return executeReviver(t,e)},t);return hasConstructorOf(n,TypesonPromise)?n.then(t=>(p[e]=t,t)):(p[e]=n,n)};return!i&&l.length>f?TypesonPromise.all(l.slice(f)).then(()=>applyType(t)):applyType(t)}(\"\",e,null),l.length&&(f=TypesonPromise.resolve(f).then(e=>TypesonPromise.all([e,...l])).then(([e])=>e))),isThenable(f)?i&&o.throwOnBadSyncType?(()=>{throw new TypeError(\"Sync method requested but async result obtained\")})():hasConstructorOf(f,TypesonPromise)?f.p.then(checkUndefined):f:!i&&o.throwOnBadSyncType?(()=>{throw new TypeError(\"Async method requested but sync result obtained\")})():i?checkUndefined(f):Promise.resolve(checkUndefined(f))}reviveSync(e,t){return this.revive(e,{throwOnBadSyncType:!0,...t,sync:!0})}reviveAsync(e,t){return this.revive(e,{throwOnBadSyncType:!0,...t,sync:!1})}register(e,t){const r=t??{},reg=e=>{s(e)?e.forEach(e=>{reg(e)}):n(e).forEach(t=>{if(\"#\"===t)throw new TypeError(\"# cannot be used as a type name as it is reserved for cyclic objects\");if(i.includes(t))throw new TypeError(\"Plain JSON object types are reserved as type names\");let n=e[t];const o=n&&\"function\"!=typeof n&&!Array.isArray(n)&&n.testPlainObjects?this.plainObjectReplacers:this.nonplainObjectReplacers,c=o.filter(function(e){return e.type===t});if(c.length&&(o.splice(o.indexOf(c[0]),1),delete this.revivers[t],delete this.types[t]),\"function\"==typeof n){const e=n;n={test:t=>t&&t.constructor===e,replace:e=>({...e}),revive:t=>Object.assign(Object.create(e.prototype),t)}}else if(s(n)){const[e,t,r]=n;n={test:e,replace:t,revive:r}}if(!n?.test)return;const a={type:t,test:n.test.bind(n)};n.replace&&(a.replace=n.replace.bind(n)),n.replaceAsync&&(a.replaceAsync=n.replaceAsync.bind(n));const p=\"number\"==typeof r.fallback?r.fallback:r.fallback?0:1/0;if(n.testPlainObjects?this.plainObjectReplacers.splice(p,0,a):this.nonplainObjectReplacers.splice(p,0,a),n.revive||n.reviveAsync){const e={};n.revive&&(e.revive=n.revive.bind(n)),n.reviveAsync&&(e.reviveAsync=n.reviveAsync.bind(n)),this.revivers[t]=[e,{plain:n.testPlainObjects}]}this.types[t]=n})};return[].concat(e).forEach(e=>{reg(e)}),this}}class Undefined{}Undefined.__typeson__type__=\"TypesonUndefined\";const i=[\"null\",\"boolean\",\"number\",\"string\",\"array\",\"object\"];export{i as JSON_TYPES,Typeson,TypesonPromise,Undefined,escapeKeyPathComponent,getByKeyPath,getJSONType,hasConstructorOf,isObject,isPlainObject,isThenable,isUserObject,setAtKeyPath,toStringTag,unescapeKeyPathComponent};\n","import {isUserObject} from 'typeson';\n\n/**\n * @type {import('typeson').TypeSpecSet}\n */\nconst userObject = {\n userObject: {\n test (x /* , stateObj */) { return isUserObject(x); },\n replace (n) { return {...n}; },\n revive (s) { return s; }\n }\n};\n\nexport default userObject;\n"],"names":["TypesonPromise","_createClass","e","_classCallCheck","this","p","Promise","__typeson__type__","Symbol","Object","defineProperty","prototype","toStringTag","get","then","t","_this","n","r","reject","resolve","all","map","constructor","race","allSettled","hasOwn","getPrototypeOf","hasConstructorOf","s","o","Function","toString","call","isUserObject","slice","Undefined","userObject","test","x","replace","_objectSpread","revive"],"mappings":"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","x_google_ignoreList":[0]}
|
|
1
|
+
{"version":3,"file":"user-object.umd.cjs","sources":["../../node_modules/.pnpm/typeson@10.2.0/node_modules/typeson/dist/typeson.esm.min.js","../../types/user-object.js"],"sourcesContent":["class TypesonPromise{constructor(e){this.p=new Promise(e)}}TypesonPromise.__typeson__type__=\"TypesonPromise\",\"undefined\"!=typeof Symbol&&Object.defineProperty(TypesonPromise.prototype,Symbol.toStringTag,{get:()=>\"TypesonPromise\"}),TypesonPromise.prototype.then=function(e,t){return new TypesonPromise((n,r)=>{this.p.then(function(t){n(e?e(t):t)}).catch(function(e){return t?t(e):Promise.reject(e)}).then(n,r)})},TypesonPromise.prototype.catch=function(e){return this.then(void 0,e)},TypesonPromise.resolve=function(e){return new TypesonPromise(t=>{t(e)})},TypesonPromise.reject=function(e){return new TypesonPromise((t,n)=>{n(e)})},TypesonPromise.all=function(e){return new TypesonPromise(function(t,n){Promise.all(e.map(e=>e?.constructor&&\"__typeson__type__\"in e.constructor&&\"TypesonPromise\"===e.constructor.__typeson__type__?e.p:e)).then(t,n)})},TypesonPromise.race=function(e){return new TypesonPromise(function(t,n){Promise.race(e.map(e=>e?.constructor&&\"__typeson__type__\"in e.constructor&&\"TypesonPromise\"===e.constructor.__typeson__type__?e.p:e)).then(t,n)})},TypesonPromise.allSettled=function(e){return new TypesonPromise(function(t,n){Promise.allSettled(e.map(e=>e?.constructor&&\"__typeson__type__\"in e.constructor&&\"TypesonPromise\"===e.constructor.__typeson__type__?e.p:e)).then(t,n)})};const{hasOwn:e}=Object,t=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(n,r){if(!n||\"object\"!=typeof n)return!1;const s=t(n);if(!s)return null===r;const o=e(s,\"constructor\")&&s.constructor;return\"function\"!=typeof o?null===r:r===o||(null!==r&&Function.prototype.toString.call(o)===Function.prototype.toString.call(r)||\"function\"==typeof r&&\"string\"==typeof o.__typeson__type__&&o.__typeson__type__===r.__typeson__type__)}function isPlainObject(e){if(!e||\"Object\"!==toStringTag(e))return!1;return!t(e)||hasConstructorOf(e,Object)}function isUserObject(e){if(!e||\"Object\"!==toStringTag(e))return!1;const n=t(e);return!n||(hasConstructorOf(e,Object)||isUserObject(n))}function isObject(e){return null!==e&&\"object\"==typeof e}function escapeKeyPathComponent(e){return e.replaceAll(\"''\",\"''''\").replace(/^$/u,\"''\").replaceAll(\"~\",\"~0\").replaceAll(\".\",\"~1\")}function unescapeKeyPathComponent(e){return e.replaceAll(\"~1\",\".\").replaceAll(\"~0\",\"~\").replace(/^''$/u,\"\").replaceAll(\"''''\",\"''\")}function getByKeyPath(t,n,r){if(\"\"===n)return t;if(null===t||\"object\"!=typeof t)throw new TypeError(\"Unexpected non-object type\");const s=n.indexOf(\".\"),o=unescapeKeyPathComponent(-1===s?n:n.slice(0,s));if(!r||e(t,o)){if(-1!==s){const e=t[o];return void 0===e?void 0:getByKeyPath(e,n.slice(s+1),r)}return t[o]}}function setAtKeyPath(t,n,r,s){if(\"\"===n)return r;let o=t,i=n;for(;;){if(!o||\"object\"!=typeof o)throw new TypeError(\"Unexpected non-object type\");const n=i.indexOf(\".\"),c=unescapeKeyPathComponent(-1===n?i:i.slice(0,n));if(\"__proto__\"===c)throw new TypeError(\"Invalid property\");if(-1===n)return o[c]=r,t;if(s&&!e(o,c))throw new TypeError(\"Invalid property\");o=o[c],i=i.slice(n+1)}}function getJSONType(e){return null===e?\"null\":Array.isArray(e)?\"array\":typeof e}\n/**\n * @file Typeson - JSON with types.\n * @license The MIT License (MIT)\n * @copyright (c) 2016-2018 David Fahlander, Brett Zamir\n */const{keys:n,hasOwn:r}=Object,{isArray:s}=Array,o=[\"type\",\"replaced\",\"iterateIn\",\"iterateUnsetNumeric\",\"addLength\"];function setOwnEnumerable(e,t,n){Object.defineProperty(e,t,{configurable:!0,enumerable:!0,value:n,writable:!0})}function nestedPathsFirst(e,t){if(\"\"===e.keypath)return-1;let n=e.keypath.match(/\\./gu)??0,r=t.keypath.match(/\\./gu)??0;return n&&(n=n.length),r&&(r=r.length),n>r?-1:n<r?1:e.keypath<t.keypath?-1:e.keypath>t.keypath?1:0}class Typeson{constructor(e){this.options=e,this.plainObjectReplacers=[],this.nonplainObjectReplacers=[],this.revivers={},this.types={}}stringify(e,t,n,r){r={...this.options,...r,stringification:!0};const o=this.encapsulate(e,null,r);return s(o)?JSON.stringify(o[0],t,n):o.then(e=>JSON.stringify(e,t,n))}stringifySync(e,t,n,r){return this.stringify(e,t,n,{throwOnBadSyncType:!0,...r,sync:!0})}stringifyAsync(e,t,n,r){return this.stringify(e,t,n,{throwOnBadSyncType:!0,...r,sync:!1})}parse(e,t,n){return n={...this.options,...n,parse:!0},this.revive(JSON.parse(e,t),n)}parseSync(e,t,n){return this.parse(e,t,{throwOnBadSyncType:!0,...n,sync:!0})}parseAsync(e,t,n){return this.parse(e,t,{throwOnBadSyncType:!0,...n,sync:!1})}specialTypeNames(e,t,n={}){return this.encapsulate(e,t,{...n,returnTypeNames:!0})}rootTypeName(e,t,n={}){return this.encapsulate(e,t,{...n,iterateNone:!0})}encapsulate(e,t,i){const c={sync:!0,...this.options,...i},{sync:a}=c,p={},y=[],u=[],l=[],h=!(\"cyclic\"in c)||c.cyclic,{encapsulateObserver:f,encapsulateError:d}=c,finish=e=>{const t=Object.values(p);if(c.iterateNone)return t.length?t[0]:getJSONType(e);if(t.length){if(c.returnTypeNames)return[...new Set(t)];e&&isPlainObject(e)&&!r(e,\"$types\")?e.$types=p:e={$:e,$types:{$:p}}}else isObject(e)&&r(e,\"$types\")&&(e={$:e,$types:!0});return!c.returnTypeNames&&e},checkPromises=async(e,t)=>{const n=await Promise.all(t.map(e=>e[1].p));return await Promise.all(n.map(async function(n){const r=[],[s]=t.splice(0,1),[o,,i,c,a,p,y]=s,u=_encapsulate(o,n,i,c,r,!0,y),l=hasConstructorOf(u,TypesonPromise);if(o&&l){return setOwnEnumerable(a,p,await u.p),checkPromises(e,r)}return o?setOwnEnumerable(a,p,u):e=l?u.p:u,checkPromises(e,r)})),e},_adaptBuiltinStateObjectProperties=(e,t,n)=>{Object.assign(e,t);const r=o.map(t=>{const n=e[t];return delete e[t],n});n(),o.forEach((t,n)=>{e[t]=r[n]})},_encapsulate=(e,t,o,i,a,l,h)=>{let b,O={};const v=f?function(n){const r=h??i.type??getJSONType(t);f(Object.assign(n??O,{keypath:e,value:t,cyclic:o,stateObj:i,promisesData:a,resolvingTypesonPromise:l,awaitingTypesonPromise:hasConstructorOf(t,TypesonPromise)},{type:r}))}:null,getEncapsulatedValue=(e,t,n)=>{try{return{value:_encapsulate(e,t[n],Boolean(o),i,a,l)}}catch(r){if(!d)throw r;const s=h??i.type??getJSONType(t),o=d({keypath:e,error:r,parent:t,key:n,stateObj:i,type:s});if(!o)throw r;if(\"substitute\"in o)return{value:o.substitute,substitute:!0};if(o.ignore)return;throw r}};if([\"string\",\"boolean\",\"number\",\"undefined\"].includes(typeof t))return void 0===t||t===1/0||0===t||t===-1/0||Number.isNaN(t)?(b=i.replaced?t:replace(e,t,i,a,!1,l,v),b!==t&&(O={replaced:b})):b=t,v&&v(),b;if(null===t)return v&&v(),t;if(o&&t&&\"object\"==typeof t&&!i.iterateIn&&!i.iterateUnsetNumeric){const n=y.indexOf(t);if(-1!==n)return p[e]=\"#\",v&&v({cyclicKeypath:u[n]}),\"#\"+u[n];!0===o&&(y.push(t),u.push(e))}const m=isPlainObject(t),T=s(t),P=(m||T)&&(!this.plainObjectReplacers.length||i.replaced)||i.iterateIn?t:replace(e,t,i,a,m||T,null,v);let w;if(P!==t?(b=P,O={replaced:P}):\"\"===e&&hasConstructorOf(t,TypesonPromise)?(a.push([e,t,o,i,void 0,void 0,i.type]),b=t):T&&\"object\"!==i.iterateIn||\"array\"===i.iterateIn?(w=new Array(t.length),O={clone:w}):!m&&(\"object\"!=typeof t||\"toJSON\"in t||hasConstructorOf(t,TypesonPromise)||hasConstructorOf(t,Promise)||hasConstructorOf(t,ArrayBuffer))&&\"object\"!==i.iterateIn?b=t:(w={},i.addLength&&(w.length=t.length),O={clone:w}),v&&v(),c.iterateNone)return w??b;if(!w)return b;if(i.iterateIn){for(const n in t){const s={ownKeys:r(t,n)};_adaptBuiltinStateObjectProperties(i,s,()=>{const r=e+(e?\".\":\"\")+escapeKeyPathComponent(n),s=getEncapsulatedValue(r,t,n),c=s&&s.value;hasConstructorOf(c,TypesonPromise)?a.push([r,c,Boolean(o),i,w,n,i.type]):s&&(void 0!==c||\"substitute\"in s)&&setOwnEnumerable(w,n,c)})}v&&v({endIterateIn:!0,end:!0})}else n(t).forEach(function(n){const r=e+(e?\".\":\"\")+escapeKeyPathComponent(n);_adaptBuiltinStateObjectProperties(i,{ownKeys:!0},()=>{const e=getEncapsulatedValue(r,t,n),s=e&&e.value;hasConstructorOf(s,TypesonPromise)?a.push([r,s,Boolean(o),i,w,n,i.type]):e&&(void 0!==s||\"substitute\"in e)&&setOwnEnumerable(w,n,s)})}),v&&v({endIterateOwn:!0,end:!0});if(i.iterateUnsetNumeric){const n=t.length;for(let r=0;r<n;r++){if(r in t)continue;const n=`${e}${e?\".\":\"\"}${String(r)}`;_adaptBuiltinStateObjectProperties(i,{ownKeys:!1},()=>{const e=_encapsulate(n,void 0,Boolean(o),i,a,l);hasConstructorOf(e,TypesonPromise)?a.push([n,e,Boolean(o),i,w,r,i.type]):void 0!==e&&setOwnEnumerable(w,r,e)})}v&&v({endIterateUnsetNumeric:!0,end:!0})}return w},replace=(e,t,n,r,s,o,i)=>{const c=s?this.plainObjectReplacers:this.nonplainObjectReplacers;let y=c.length;for(;y--;){const s=c[y];if(s.test(t,n)){const{type:c}=s;if(Object.hasOwn(this.revivers,c)){const t=p[e];p[e]=t?[c].concat(t):c}if(Object.assign(n,{type:c,replaced:!0}),(a||!s.replaceAsync)&&!s.replace)return i&&i({typeDetected:!0}),_encapsulate(e,t,h&&\"readonly\",n,r,o,c);let y;if(i&&i({replacing:!0}),a||!s.replaceAsync){if(void 0===s.replace)throw new TypeError(\"Missing replacer\");y=s.replace(t,n)}else y=s.replaceAsync(t,n);return _encapsulate(e,y,h&&\"readonly\",n,r,o,c)}}return t},b=_encapsulate(\"\",e,h,t??{},l);if(l.length)return a&&c.throwOnBadSyncType?(()=>{throw new TypeError(\"Sync method requested but async result obtained\")})():Promise.resolve(checkPromises(b,l)).then(finish);if(!a&&c.throwOnBadSyncType)throw new TypeError(\"Async method requested but sync result obtained\");return a&&c.stringification?[finish(b)]:a?finish(b):Promise.resolve(finish(b))}encapsulateSync(e,t,n){return this.encapsulate(e,t,{throwOnBadSyncType:!0,...n,sync:!0})}encapsulateAsync(e,t,n){return this.encapsulate(e,t,{throwOnBadSyncType:!0,...n,sync:!1})}revive(e,t){const o={sync:!0,...this.options,...t},{sync:i}=o;function finishRevival(e){if(i)return e;if(o.throwOnBadSyncType)throw new TypeError(\"Async method requested but sync result obtained\");return Promise.resolve(e)}if(!e||\"object\"!=typeof e||Array.isArray(e))return finishRevival(e);let c=e.$types;if(!0===c)return finishRevival(e.$);if(!c||\"object\"!=typeof c||Array.isArray(c))return finishRevival(e);const a=[],p=Object.create(null),y={};let u=!0;c.$&&isPlainObject(c.$)&&(e=e.$,c=c.$,u=!1);const executeReviver=(e,t)=>{const[n]=this.revivers[e]??[];if(!n)throw new Error(\"Unregistered type: \"+e);if(i&&!(\"revive\"in n))return t;if(!i&&n.reviveAsync)return n.reviveAsync(t,y);if(n.revive)return n.revive(t,y);throw new Error(\"Missing reviver\")},l=[];function checkUndefined(e){return hasConstructorOf(e,Undefined)?void 0:e}const h=(()=>{if(!c)throw new Error(\"Found bad `types`\");const t=[];if(Object.entries(c).forEach(([e,n])=>{\"#\"!==n&&[].concat(n).forEach(n=>{const[,{plain:r}]=this.revivers[n]??[null,{}];r&&(t.push({keypath:e,type:n}),delete c[e])})}),t.length)return t.sort(nestedPathsFirst),t.reduce(function reducer(t,{keypath:n,type:r}){if(isThenable(t))return t.then(e=>reducer(e,{keypath:n,type:r}));let s=getByKeyPath(e,n,!0);if(s=executeReviver(r,s),hasConstructorOf(s,TypesonPromise))return s.then(t=>{const r=setAtKeyPath(e,n,t,!0);r===t&&(e=r)});const o=setAtKeyPath(e,n,s,!0);o===s&&(e=o)},void 0)})();let f;return hasConstructorOf(h,TypesonPromise)?f=h.then(()=>e):(f=function _revive(e,t,o,y,h){if(u&&\"$types\"===e)return;const f=l.length,d=r(c,e)?c[e]:void 0,b=s(t);if(b||isPlainObject(t)){const s=b?new Array(t.length):{};for(n(t).forEach(n=>{const r=_revive(e+(e?\".\":\"\")+escapeKeyPathComponent(n),t[n],o??s,s,n),set=e=>(hasConstructorOf(e,Undefined)?setOwnEnumerable(s,n,void 0):void 0!==e&&setOwnEnumerable(s,n,e),e);hasConstructorOf(r,TypesonPromise)?l.push(r.then(e=>set(e))):set(r)}),t=s;a.length;){const[[e,t,n,s]]=a,o=r(p,t),i=o?p[t]:getByKeyPath(e,t,!0);if(!o&&void 0===i)break;setOwnEnumerable(n,s,i),a.shift()}}if(!d)return p[e]=t,t;if(\"#\"===d){const e=t.slice(1),n=r(p,e),s=n?p[e]:getByKeyPath(o,e,!0);return n||void 0!==s||a.push([o,e,y,h]),s}const applyType=t=>{const n=[].concat(d).reduce(function reducer(e,t){if(hasConstructorOf(e,TypesonPromise))return e.then(e=>reducer(e,t));if(\"string\"!=typeof t)throw new TypeError(\"Bad type JSON\");return executeReviver(t,e)},t);return hasConstructorOf(n,TypesonPromise)?n.then(t=>(p[e]=t,t)):(p[e]=n,n)};return!i&&l.length>f?TypesonPromise.all(l.slice(f)).then(()=>applyType(t)):applyType(t)}(\"\",e,null),l.length&&(f=TypesonPromise.resolve(f).then(e=>TypesonPromise.all([e,...l])).then(([e])=>e))),isThenable(f)?i&&o.throwOnBadSyncType?(()=>{throw new TypeError(\"Sync method requested but async result obtained\")})():hasConstructorOf(f,TypesonPromise)?f.p.then(checkUndefined):f:!i&&o.throwOnBadSyncType?(()=>{throw new TypeError(\"Async method requested but sync result obtained\")})():i?checkUndefined(f):Promise.resolve(checkUndefined(f))}reviveSync(e,t){return this.revive(e,{throwOnBadSyncType:!0,...t,sync:!0})}reviveAsync(e,t){return this.revive(e,{throwOnBadSyncType:!0,...t,sync:!1})}register(e,t){const r=t??{},reg=e=>{s(e)?e.forEach(e=>{reg(e)}):n(e).forEach(t=>{if(\"#\"===t)throw new TypeError(\"# cannot be used as a type name as it is reserved for cyclic objects\");if(i.includes(t))throw new TypeError(\"Plain JSON object types are reserved as type names\");let n=e[t];if([this.plainObjectReplacers,this.nonplainObjectReplacers].forEach(e=>{const n=e.findIndex(e=>e.type===t);-1!==n&&e.splice(n,1)}),delete this.revivers[t],delete this.types[t],\"function\"==typeof n){const e=n;n={test:t=>t&&t.constructor===e,replace:e=>({...e}),revive:t=>Object.assign(Object.create(e.prototype),t)}}else if(s(n)){const[e,t,r]=n;n={test:e,replace:t,revive:r}}if(!n?.test)return;const o={type:t,test:n.test.bind(n)};n.replace&&(o.replace=n.replace.bind(n)),n.replaceAsync&&(o.replaceAsync=n.replaceAsync.bind(n));const c=\"number\"==typeof r.fallback?r.fallback:r.fallback?0:1/0;if(n.testPlainObjects?this.plainObjectReplacers.splice(c,0,o):this.nonplainObjectReplacers.splice(c,0,o),n.revive||n.reviveAsync){const e={};n.revive&&(e.revive=n.revive.bind(n)),n.reviveAsync&&(e.reviveAsync=n.reviveAsync.bind(n)),this.revivers[t]=[e,{plain:n.testPlainObjects}]}this.types[t]=n})};return[].concat(e).forEach(e=>{reg(e)}),this}}class Undefined{}Undefined.__typeson__type__=\"TypesonUndefined\";const i=[\"null\",\"boolean\",\"number\",\"string\",\"array\",\"object\"];export{i as JSON_TYPES,Typeson,TypesonPromise,Undefined,escapeKeyPathComponent,getByKeyPath,getJSONType,hasConstructorOf,isObject,isPlainObject,isThenable,isUserObject,setAtKeyPath,toStringTag,unescapeKeyPathComponent};\n","import {isUserObject} from 'typeson';\n\n/**\n * @type {import('typeson').TypeSpecSet}\n */\nconst userObject = {\n userObject: {\n test (x /* , stateObj */) { return isUserObject(x); },\n replace (n) { return {...n}; },\n revive (s) { return s; }\n }\n};\n\nexport default userObject;\n"],"names":["TypesonPromise","_createClass","e","_classCallCheck","this","p","Promise","__typeson__type__","Symbol","Object","defineProperty","prototype","toStringTag","get","then","t","_this","n","r","reject","resolve","all","map","constructor","race","allSettled","hasOwn","getPrototypeOf","hasConstructorOf","s","o","Function","toString","call","isUserObject","slice","Undefined","userObject","test","x","replace","_objectSpread","revive"],"mappings":"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","x_google_ignoreList":[0]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "typeson-registry",
|
|
3
|
-
"version": "13.0
|
|
3
|
+
"version": "13.2.0",
|
|
4
4
|
"description": "The type registry for typeson",
|
|
5
5
|
"author": "dfahlander",
|
|
6
6
|
"contributors": [
|
|
@@ -24,8 +24,8 @@
|
|
|
24
24
|
"types": "./dist/polyfills/createObjectURL.d.ts",
|
|
25
25
|
"default": "./polyfills/createObjectURL.js"
|
|
26
26
|
},
|
|
27
|
-
"require": "./polyfills/createObjectURL.
|
|
28
|
-
"default": "./polyfills/createObjectURL.
|
|
27
|
+
"require": "./polyfills/createObjectURL.cjs",
|
|
28
|
+
"default": "./polyfills/createObjectURL.cjs"
|
|
29
29
|
},
|
|
30
30
|
"./*": "./*"
|
|
31
31
|
},
|
|
@@ -42,9 +42,8 @@
|
|
|
42
42
|
"exclude": [
|
|
43
43
|
"build.js",
|
|
44
44
|
"dist",
|
|
45
|
-
"
|
|
46
|
-
".
|
|
47
|
-
".eslintrc.js",
|
|
45
|
+
".ncurc.cjs",
|
|
46
|
+
"eslint.config.js",
|
|
48
47
|
"browser-test",
|
|
49
48
|
"coverage",
|
|
50
49
|
"test/**",
|
|
@@ -76,7 +75,7 @@
|
|
|
76
75
|
"@babel/core": "^8.0.1",
|
|
77
76
|
"@babel/eslint-parser": "^8.0.1",
|
|
78
77
|
"@babel/preset-env": "^8.0.2",
|
|
79
|
-
"@
|
|
78
|
+
"@node-static/node-static": "^0.9.0",
|
|
80
79
|
"@eslint/markdown": "^8.0.3",
|
|
81
80
|
"@rollup/plugin-babel": "^7.1.0",
|
|
82
81
|
"@rollup/plugin-commonjs": "^29.0.3",
|
|
@@ -92,7 +91,7 @@
|
|
|
92
91
|
"canvas": "^3.2.3",
|
|
93
92
|
"chai": "^6.2.2",
|
|
94
93
|
"eslint": "^10.8.1",
|
|
95
|
-
"eslint-config-ash-nazg": "^42.
|
|
94
|
+
"eslint-config-ash-nazg": "^42.5.0",
|
|
96
95
|
"eslint-plugin-n": "^18.3.0",
|
|
97
96
|
"jsdom": "^30.0.1",
|
|
98
97
|
"mocha": "^11.8.0",
|
|
@@ -105,7 +104,7 @@
|
|
|
105
104
|
},
|
|
106
105
|
"dependencies": {
|
|
107
106
|
"base64-arraybuffer-es6": "^3.1.0",
|
|
108
|
-
"typeson": "^10.
|
|
107
|
+
"typeson": "^10.2.0",
|
|
109
108
|
"whatwg-url": "^17.1.0"
|
|
110
109
|
},
|
|
111
110
|
"tonicExample": "var Typeson = require('typeson');\nvar TSON = new Typeson().register(require('typeson-registry/dist/presets/builtin'));\n\nTSON.stringify({foo: new Date()}, null, 2);",
|
|
@@ -118,12 +117,12 @@
|
|
|
118
117
|
"build": "npm run rollup && tsc -p tsconfig-build.json",
|
|
119
118
|
"mocha": "mocha --require chai/register-expect.js --require chai/register-assert.js test/*.js",
|
|
120
119
|
"open-coverage": "open-cli http://localhost:8085/coverage/ && npm start",
|
|
121
|
-
"
|
|
120
|
+
"test:unit": "npm run mocha",
|
|
121
|
+
"coverage": "rm -Rf node_modules/.cache && c8 npm run test:unit",
|
|
122
122
|
"test-nocov": "npm run build && npm run eslint && npm run coverage",
|
|
123
123
|
"test": "npm run build && npm run eslint && npm run coverage",
|
|
124
124
|
"test:worker-open": "open-cli http://localhost:8085/browser-test/worker.html && npm start",
|
|
125
125
|
"test:browser-open": "open-cli http://localhost:8085/browser-test/ && npm start",
|
|
126
|
-
"test:browser": "npm run build && npm run eslint && npm run test:browser-open"
|
|
127
|
-
"windows": "node windows-devinstall"
|
|
126
|
+
"test:browser": "npm run build && npm run eslint && npm run test:browser-open"
|
|
128
127
|
}
|
|
129
128
|
}
|