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":"filelist.umd.cjs","sources":["../../node_modules/.pnpm/typeson@10.1.1/node_modules/typeson/dist/typeson.esm.min.js","../../utils/stringArrayBuffer.js","../../types/file.js","../../types/filelist.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","/**\n * Not currently in use internally, but provided for parity.\n * @param {ArrayBuffer} buf\n * @returns {string}\n */\nfunction arraybuffer2string (buf) {\n return new Uint8Array(buf).reduce(\n (s, byte) => s + String.fromCodePoint(byte), ''\n );\n}\n\n/**\n *\n * @param {string} str\n * @returns {ArrayBuffer}\n */\nfunction string2arraybuffer (str) {\n /*\n // UTF-8 approaches\n const utf8 = unescape(encodeURIComponent(str));\n const arr = new Uint8Array(utf8.length);\n for (let i = 0; i < utf8.length; i++) {\n arr[i] = utf8.charCodeAt(i);\n }\n return arr.buffer;\n\n const utf8 = [];\n for (let i = 0; i < str.length; i++) {\n let charcode = str.charCodeAt(i);\n if (charcode < 0x80) utf8.push(charcode);\n else if (charcode < 0x800) {\n utf8.push(0xc0 | (charcode >> 6),\n 0x80 | (charcode & 0x3f));\n } else if (charcode < 0xd800 || charcode >= 0xe000) {\n utf8.push(0xe0 | (charcode >> 12),\n 0x80 | ((charcode >> 6) & 0x3f),\n 0x80 | (charcode & 0x3f));\n // surrogate pair\n } else {\n i++;\n // UTF-16 encodes 0x10000-0x10FFFF by\n // subtracting 0x10000 and splitting the\n // 20 bits of 0x0-0xFFFFF into two halves\n charcode = 0x10000 + (((charcode & 0x3ff) << 10) |\n (str.charCodeAt(i) & 0x3ff));\n utf8.push(0xf0 | (charcode >> 18),\n 0x80 | ((charcode >> 12) & 0x3f),\n 0x80 | ((charcode >> 6) & 0x3f),\n 0x80 | (charcode & 0x3f));\n }\n }\n return utf8;\n */\n /*\n // Working UTF-16 options (equivalents)\n const buf = new ArrayBuffer(str.length * 2); // 2 bytes for each char\n const bufView = new Uint16Array(buf);\n for (let i = 0, strLen = str.length; i < strLen; i++) {\n bufView[i] = str.charCodeAt(i);\n }\n return buf;\n */\n\n const array = new Uint8Array(str.length);\n for (let i = 0; i < str.length; i++) {\n // eslint-disable-next-line @stylistic/max-len -- Long\n // eslint-disable-next-line unicorn/prefer-code-point -- Iterating char. codes\n array[i] = str.charCodeAt(i); // & 0xff;\n }\n return array.buffer;\n}\nexport {arraybuffer2string, string2arraybuffer};\n","/* globals XMLHttpRequest, FileReader -- Polyfills */\nimport {TypesonPromise, toStringTag} from 'typeson';\nimport {\n string2arraybuffer, arraybuffer2string\n} from '../utils/stringArrayBuffer.js';\n\n/**\n * @type {import('typeson').TypeSpecSet}\n */\nconst file = {\n file: {\n test (x) { return toStringTag(x) === 'File'; },\n replace (f) { // Sync\n const req = new XMLHttpRequest();\n req.overrideMimeType('text/plain; charset=x-user-defined');\n req.open('GET', URL.createObjectURL(f), false); // Sync\n req.send();\n\n // Seems not feasible to accurately simulate\n /* c8 ignore next 3 */\n if (req.status !== 200 && req.status !== 0) {\n throw new Error('Bad File access: ' + req.status);\n }\n return {\n type: f.type,\n stringContents: req.responseText,\n name: f.name,\n lastModified: f.lastModified\n };\n },\n revive ({name, type, stringContents, lastModified}) {\n return new File([string2arraybuffer(stringContents)], name, {\n type,\n lastModified\n });\n },\n replaceAsync (f) {\n return new TypesonPromise(function (resolve, reject) {\n /*\n if (f.isClosed) { // On MDN, but not in https://w3c.github.io/FileAPI/#dfn-Blob\n reject(new Error('The File is closed'));\n return;\n }\n */\n const reader = new FileReader();\n reader.addEventListener('load', function () {\n resolve({\n type: f.type,\n stringContents: arraybuffer2string(\n /** @type {ArrayBuffer} */ (reader.result)\n ),\n name: f.name,\n lastModified: f.lastModified\n });\n });\n // Seems not feasible to accurately simulate\n /* c8 ignore next 3 */\n reader.addEventListener('error', function () {\n reject(reader.error);\n });\n // eslint-disable-next-line @stylistic/max-len -- Long\n // eslint-disable-next-line unicorn/prefer-blob-reading-methods -- Too new?\n reader.readAsArrayBuffer(f);\n });\n }\n }\n};\n\nexport default file;\n","import {toStringTag} from 'typeson';\nimport file from './file.js';\n\n/**\n * @type {import('typeson').TypeSpecSet}\n */\nconst filelist = {\n file: file.file,\n filelist: {\n test (x) { return toStringTag(x) === 'FileList'; },\n replace (fl) {\n const arr = [];\n for (let i = 0; i < fl.length; i++) {\n arr[i] = fl.item(i);\n }\n return arr;\n },\n revive (o) {\n /**\n * `FileList` polyfill.\n */\n class FileList {\n /**\n * Set private properties and length.\n */\n constructor () {\n // eslint-disable-next-line prefer-rest-params -- API\n this._files = arguments[0];\n this.length = this._files.length;\n }\n /**\n * @param {import('typeson').Integer} index\n * @returns {File}\n */\n item (index) {\n return this._files[index];\n }\n /* eslint-disable class-methods-use-this -- Not needed */\n /**\n * @returns {\"FileList\"}\n */\n get [Symbol.toStringTag] () {\n /* eslint-enable class-methods-use-this -- Not needed */\n return 'FileList';\n }\n }\n return new FileList(o);\n }\n }\n};\n\nexport default filelist;\n"],"names":["TypesonPromise","_createClass","e","_classCallCheck","this","p","Promise","toStringTag","Object","prototype","toString","call","slice","string2arraybuffer","str","array","Uint8Array","length","i","charCodeAt","buffer","__typeson__type__","Symbol","defineProperty","get","then","t","_this","n","r","reject","resolve","all","map","constructor","race","allSettled","Undefined","filelist","file","test","x","replace","f","req","XMLHttpRequest","overrideMimeType","open","URL","createObjectURL","send","status","Error","type","stringContents","responseText","name","lastModified","revive","_ref","File","replaceAsync","reader","FileReader","addEventListener","buf","result","reduce","s","byte","String","fromCodePoint","error","readAsArrayBuffer","fl","arr","item","o","FileList","_files","arguments","key","value","index"],"mappings":"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","x_google_ignoreList":[0]}
|
|
1
|
+
{"version":3,"file":"filelist.umd.cjs","sources":["../../node_modules/.pnpm/typeson@10.2.0/node_modules/typeson/dist/typeson.esm.min.js","../../utils/stringArrayBuffer.js","../../types/file.js","../../types/filelist.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","/**\n * Not currently in use internally, but provided for parity.\n * @param {ArrayBuffer} buf\n * @returns {string}\n */\nfunction arraybuffer2string (buf) {\n return new Uint8Array(buf).reduce(\n (s, byte) => s + String.fromCodePoint(byte), ''\n );\n}\n\n/**\n *\n * @param {string} str\n * @returns {ArrayBuffer}\n */\nfunction string2arraybuffer (str) {\n /*\n // UTF-8 approaches\n const utf8 = unescape(encodeURIComponent(str));\n const arr = new Uint8Array(utf8.length);\n for (let i = 0; i < utf8.length; i++) {\n arr[i] = utf8.charCodeAt(i);\n }\n return arr.buffer;\n\n const utf8 = [];\n for (let i = 0; i < str.length; i++) {\n let charcode = str.charCodeAt(i);\n if (charcode < 0x80) utf8.push(charcode);\n else if (charcode < 0x800) {\n utf8.push(0xc0 | (charcode >> 6),\n 0x80 | (charcode & 0x3f));\n } else if (charcode < 0xd800 || charcode >= 0xe000) {\n utf8.push(0xe0 | (charcode >> 12),\n 0x80 | ((charcode >> 6) & 0x3f),\n 0x80 | (charcode & 0x3f));\n // surrogate pair\n } else {\n i++;\n // UTF-16 encodes 0x10000-0x10FFFF by\n // subtracting 0x10000 and splitting the\n // 20 bits of 0x0-0xFFFFF into two halves\n charcode = 0x10000 + (((charcode & 0x3ff) << 10) |\n (str.charCodeAt(i) & 0x3ff));\n utf8.push(0xf0 | (charcode >> 18),\n 0x80 | ((charcode >> 12) & 0x3f),\n 0x80 | ((charcode >> 6) & 0x3f),\n 0x80 | (charcode & 0x3f));\n }\n }\n return utf8;\n */\n /*\n // Working UTF-16 options (equivalents)\n const buf = new ArrayBuffer(str.length * 2); // 2 bytes for each char\n const bufView = new Uint16Array(buf);\n for (let i = 0, strLen = str.length; i < strLen; i++) {\n bufView[i] = str.charCodeAt(i);\n }\n return buf;\n */\n\n const array = new Uint8Array(str.length);\n for (let i = 0; i < str.length; i++) {\n // eslint-disable-next-line @stylistic/max-len -- Long\n // eslint-disable-next-line unicorn/prefer-code-point -- Iterating char. codes\n array[i] = str.charCodeAt(i); // & 0xff;\n }\n return array.buffer;\n}\nexport {arraybuffer2string, string2arraybuffer};\n","/* globals XMLHttpRequest, FileReader -- Polyfills */\nimport {TypesonPromise, toStringTag} from 'typeson';\nimport {\n string2arraybuffer, arraybuffer2string\n} from '../utils/stringArrayBuffer.js';\n\n/**\n * @type {import('typeson').TypeSpecSet}\n */\nconst file = {\n file: {\n test (x) { return toStringTag(x) === 'File'; },\n replace (f) { // Sync\n const req = new XMLHttpRequest();\n req.overrideMimeType('text/plain; charset=x-user-defined');\n req.open('GET', URL.createObjectURL(f), false); // Sync\n req.send();\n\n // Seems not feasible to accurately simulate\n /* c8 ignore next 3 */\n if (req.status !== 200 && req.status !== 0) {\n throw new Error('Bad File access: ' + req.status);\n }\n return {\n type: f.type,\n stringContents: req.responseText,\n name: f.name,\n lastModified: f.lastModified\n };\n },\n revive ({name, type, stringContents, lastModified}) {\n return new File([string2arraybuffer(stringContents)], name, {\n type,\n lastModified\n });\n },\n replaceAsync (f) {\n return new TypesonPromise(function (resolve, reject) {\n /*\n if (f.isClosed) { // On MDN, but not in https://w3c.github.io/FileAPI/#dfn-Blob\n reject(new Error('The File is closed'));\n return;\n }\n */\n const reader = new FileReader();\n reader.addEventListener('load', function () {\n resolve({\n type: f.type,\n stringContents: arraybuffer2string(\n /** @type {ArrayBuffer} */ (reader.result)\n ),\n name: f.name,\n lastModified: f.lastModified\n });\n });\n // Seems not feasible to accurately simulate\n /* c8 ignore next 3 */\n reader.addEventListener('error', function () {\n reject(reader.error);\n });\n // eslint-disable-next-line @stylistic/max-len -- Long\n // eslint-disable-next-line unicorn/prefer-blob-reading-methods -- Too new?\n reader.readAsArrayBuffer(f);\n });\n }\n }\n};\n\nexport default file;\n","import {toStringTag} from 'typeson';\nimport file from './file.js';\n\n/**\n * @type {import('typeson').TypeSpecSet}\n */\nconst filelist = {\n file: file.file,\n filelist: {\n test (x) { return toStringTag(x) === 'FileList'; },\n replace (fl) {\n const arr = [];\n for (let i = 0; i < fl.length; i++) {\n arr[i] = fl.item(i);\n }\n return arr;\n },\n revive (o) {\n /**\n * `FileList` polyfill.\n */\n class FileList {\n /**\n * Set private properties and length.\n */\n constructor () {\n // eslint-disable-next-line prefer-rest-params -- API\n this._files = arguments[0];\n this.length = this._files.length;\n }\n /**\n * @param {import('typeson').Integer} index\n * @returns {File}\n */\n item (index) {\n return this._files[index];\n }\n /* eslint-disable class-methods-use-this -- Not needed */\n /**\n * @returns {\"FileList\"}\n */\n get [Symbol.toStringTag] () {\n /* eslint-enable class-methods-use-this -- Not needed */\n return 'FileList';\n }\n }\n return new FileList(o);\n }\n }\n};\n\nexport default filelist;\n"],"names":["TypesonPromise","_createClass","e","_classCallCheck","this","p","Promise","toStringTag","Object","prototype","toString","call","slice","string2arraybuffer","str","array","Uint8Array","length","i","charCodeAt","buffer","__typeson__type__","Symbol","defineProperty","get","then","t","_this","n","r","reject","resolve","all","map","constructor","race","allSettled","Undefined","filelist","file","test","x","replace","f","req","XMLHttpRequest","overrideMimeType","open","URL","createObjectURL","send","status","Error","type","stringContents","responseText","name","lastModified","revive","_ref","File","replaceAsync","reader","FileReader","addEventListener","buf","result","reduce","s","byte","String","fromCodePoint","error","readAsArrayBuffer","fl","arr","item","o","FileList","_files","arguments","key","value","index"],"mappings":"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","x_google_ignoreList":[0]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e="undefined"!=typeof globalThis?globalThis:e||self).imagebitmap=t()}(this,function(){"use strict";function asyncGeneratorStep(e,t,n,r,a,c,u){try{var s=e[c](u),p=s.value}catch(e){return void n(e)}s.done?t(p):Promise.resolve(p).then(r,a)}function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _createClass(e,t,n){return Object.defineProperty(e,"prototype",{writable:!1}),e}function _regenerator(){
|
|
2
2
|
/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */
|
|
3
|
-
var e,t,n="function"==typeof Symbol?Symbol:{},r=n.iterator||"@@iterator",a=n.toStringTag||"@@toStringTag";function i(n,r,a,u){var s=r&&r.prototype instanceof Generator?r:Generator,p=Object.create(s.prototype);return _regeneratorDefine(p,"_invoke",function(n,r,a){var u,s,p,_=0,l=a||[],y=!1,m={p:0,n:0,v:e,a:d,f:d.bind(e,4),d:function(t,n){return u=t,s=0,p=e,m.n=n,c}};function d(n,r){for(s=n,p=r,t=0;!y&&_&&!a&&t<l.length;t++){var a,u=l[t],g=m.p,h=u[2];n>3?(a=h===r)&&(p=u[(s=u[4])?5:(s=3,3)],u[4]=u[5]=e):u[0]<=g&&((a=n<2&&g<u[1])?(s=0,m.v=r,m.n=u[1]):g<h&&(a=n<3||u[0]>r||r>h)&&(u[4]=n,u[5]=r,m.n=h,s=0))}if(a||n>1)return c;throw y=!0,r}return function(a,l,g){if(_>1)throw TypeError("Generator is already running");for(y&&1===l&&d(l,g),s=l,p=g;(t=s<2?e:p)||!y;){u||(s?s<3?(s>1&&(m.n=-1),d(s,p)):m.n=p:m.v=p);try{if(_=2,u){if(s||(a="next"),t=u[a]){if(!(t=t.call(u,p)))throw TypeError("iterator result is not an object");if(!t.done)return t;p=t.value,s<2&&(s=0)}else 1===s&&(t=u.return)&&t.call(u),s<2&&(p=TypeError("The iterator does not provide a '"+a+"' method"),s=1);u=e}else if((t=(y=m.n<0)?p:n.call(r,m))!==c)break}catch(t){u=e,s=1,p=t}finally{_=1}}return{value:t,done:y}}}(n,a,u),!0),p}var c={};function Generator(){}function GeneratorFunction(){}function GeneratorFunctionPrototype(){}t=Object.getPrototypeOf;var u=[][r]?t(t([][r]())):(_regeneratorDefine(t={},r,function(){return this}),t),s=GeneratorFunctionPrototype.prototype=Generator.prototype=Object.create(u);function f(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,GeneratorFunctionPrototype):(e.__proto__=GeneratorFunctionPrototype,_regeneratorDefine(e,a,"GeneratorFunction")),e.prototype=Object.create(s),e}return GeneratorFunction.prototype=GeneratorFunctionPrototype,_regeneratorDefine(s,"constructor",GeneratorFunctionPrototype),_regeneratorDefine(GeneratorFunctionPrototype,"constructor",GeneratorFunction),GeneratorFunction.displayName="GeneratorFunction",_regeneratorDefine(GeneratorFunctionPrototype,a,"GeneratorFunction"),_regeneratorDefine(s),_regeneratorDefine(s,a,"Generator"),_regeneratorDefine(s,r,function(){return this}),_regeneratorDefine(s,"toString",function(){return"[object Generator]"}),(_regenerator=function(){return{w:i,m:f}})()}function _regeneratorDefine(e,t,n,r){var a=Object.defineProperty;try{a({},"",{})}catch(e){a=0}_regeneratorDefine=function(e,t,n,r){function o(t,n){_regeneratorDefine(e,t,function(e){return this._invoke(t,n,e)})}t?a?a(e,t,{value:n,enumerable:!r,configurable:!r,writable:!r}):e[t]=n:(o("next",0),o("throw",1),o("return",2))},_regeneratorDefine(e,t,n,r)}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,n){var r=this;return new e(function(e,a){r.p.then(function(n){e(t?t(n):n)}).catch(function(e){return n?n(e):Promise.reject(e)}).then(e,a)})},e.prototype.catch=function(e){return this.then(
|
|
3
|
+
var e,t,n="function"==typeof Symbol?Symbol:{},r=n.iterator||"@@iterator",a=n.toStringTag||"@@toStringTag";function i(n,r,a,u){var s=r&&r.prototype instanceof Generator?r:Generator,p=Object.create(s.prototype);return _regeneratorDefine(p,"_invoke",function(n,r,a){var u,s,p,_=0,l=a||[],y=!1,m={p:0,n:0,v:e,a:d,f:d.bind(e,4),d:function(t,n){return u=t,s=0,p=e,m.n=n,c}};function d(n,r){for(s=n,p=r,t=0;!y&&_&&!a&&t<l.length;t++){var a,u=l[t],g=m.p,h=u[2];n>3?(a=h===r)&&(p=u[(s=u[4])?5:(s=3,3)],u[4]=u[5]=e):u[0]<=g&&((a=n<2&&g<u[1])?(s=0,m.v=r,m.n=u[1]):g<h&&(a=n<3||u[0]>r||r>h)&&(u[4]=n,u[5]=r,m.n=h,s=0))}if(a||n>1)return c;throw y=!0,r}return function(a,l,g){if(_>1)throw TypeError("Generator is already running");for(y&&1===l&&d(l,g),s=l,p=g;(t=s<2?e:p)||!y;){u||(s?s<3?(s>1&&(m.n=-1),d(s,p)):m.n=p:m.v=p);try{if(_=2,u){if(s||(a="next"),t=u[a]){if(!(t=t.call(u,p)))throw TypeError("iterator result is not an object");if(!t.done)return t;p=t.value,s<2&&(s=0)}else 1===s&&(t=u.return)&&t.call(u),s<2&&(p=TypeError("The iterator does not provide a '"+a+"' method"),s=1);u=e}else if((t=(y=m.n<0)?p:n.call(r,m))!==c)break}catch(t){u=e,s=1,p=t}finally{_=1}}return{value:t,done:y}}}(n,a,u),!0),p}var c={};function Generator(){}function GeneratorFunction(){}function GeneratorFunctionPrototype(){}t=Object.getPrototypeOf;var u=[][r]?t(t([][r]())):(_regeneratorDefine(t={},r,function(){return this}),t),s=GeneratorFunctionPrototype.prototype=Generator.prototype=Object.create(u);function f(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,GeneratorFunctionPrototype):(e.__proto__=GeneratorFunctionPrototype,_regeneratorDefine(e,a,"GeneratorFunction")),e.prototype=Object.create(s),e}return GeneratorFunction.prototype=GeneratorFunctionPrototype,_regeneratorDefine(s,"constructor",GeneratorFunctionPrototype),_regeneratorDefine(GeneratorFunctionPrototype,"constructor",GeneratorFunction),GeneratorFunction.displayName="GeneratorFunction",_regeneratorDefine(GeneratorFunctionPrototype,a,"GeneratorFunction"),_regeneratorDefine(s),_regeneratorDefine(s,a,"Generator"),_regeneratorDefine(s,r,function(){return this}),_regeneratorDefine(s,"toString",function(){return"[object Generator]"}),(_regenerator=function(){return{w:i,m:f}})()}function _regeneratorDefine(e,t,n,r){var a=Object.defineProperty;try{a({},"",{})}catch(e){a=0}_regeneratorDefine=function(e,t,n,r){function o(t,n){_regeneratorDefine(e,t,function(e){return this._invoke(t,n,e)})}t?a?a(e,t,{value:n,enumerable:!r,configurable:!r,writable:!r}):e[t]=n:(o("next",0),o("throw",1),o("return",2))},_regeneratorDefine(e,t,n,r)}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,n){var r=this;return new e(function(e,a){r.p.then(function(n){e(t?t(n):n)}).catch(function(e){return n?n(e):Promise.reject(e)}).then(e,a)})},e.prototype.catch=function(e){return this.then(void 0,e)},e.resolve=function(t){return new e(function(e){e(t)})},e.reject=function(t){return new e(function(e,n){n(t)})},e.all=function(t){return new e(function(e,n){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,n)})},e.race=function(t){return new e(function(e,n){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,n)})},e.allSettled=function(t){return new e(function(e,n){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,n)})},_createClass(function Undefined(){_classCallCheck(this,Undefined)}).__typeson__type__="TypesonUndefined";var t={imagebitmap:{test:function test(e){return"ImageBitmap"===function toStringTag(e){return Object.prototype.toString.call(e).slice(8,-1)}(e)||e&&e.dataset&&"ImageBitmap"===e.dataset.toStringTag},replace:function replace(e){var t=document.createElement("canvas");return t.getContext("2d").drawImage(e,0,0),{width:e.width,height:e.height,dataURL:t.toDataURL()}},revive:function revive(e){var t="undefined"==typeof OffscreenCanvas?document.createElement("canvas"):new OffscreenCanvas(e.width,e.height),n=t.getContext("2d"),r=document.createElement("img");return r.addEventListener("load",function(){n.drawImage(r,0,0)}),r.src=e.dataURL,"undefined"==typeof OffscreenCanvas?t:t.transferToImageBitmap()},reviveAsync:function reviveAsync(t){var n=document.createElement("canvas"),r=n.getContext("2d"),a=document.createElement("img");return a.addEventListener("load",function(){r.drawImage(a,0,0)}),a.src=t.dataURL,new e(function(){var e=function _asyncToGenerator(e){return function(){var t=this,n=arguments;return new Promise(function(r,a){var c=e.apply(t,n);function _next(e){asyncGeneratorStep(c,r,a,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep(c,r,a,_next,_throw,"throw",e)}_next(void 0)})}}(_regenerator().m(function _callee(e,t){var r,a;return _regenerator().w(function(c){for(;;)switch(c.p=c.n){case 0:return c.p=0,c.n=1,createImageBitmap(n);case 1:r=c.v,e(r),c.n=3;break;case 2:c.p=2,a=c.v,t(a);case 3:return c.a(2)}},_callee,null,[[0,2]])}));return function(t,n){return e.apply(this,arguments)}}())}}};return t});
|
|
4
4
|
//# sourceMappingURL=imagebitmap.umd.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"imagebitmap.umd.cjs","sources":["../../node_modules/.pnpm/typeson@10.1.1/node_modules/typeson/dist/typeson.esm.min.js","../../types/imagebitmap.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","/* globals document, OffscreenCanvas, createImageBitmap -- Polyfills */\n// `ImageBitmap` is browser / DOM specific. It also can only work\n// same-domain (or CORS)\n\nimport {toStringTag, TypesonPromise} from 'typeson';\n\n/**\n * @type {import('typeson').TypeSpecSet}\n */\nconst imagebitmap = {\n imagebitmap: {\n test (x) {\n return toStringTag(x) === 'ImageBitmap' ||\n // In Node, our polyfill sets the dataset on a canvas\n // element as JSDom no longer allows overriding toStringTag\n (x && x.dataset && x.dataset.toStringTag === 'ImageBitmap');\n },\n replace (bm) {\n const canvas = document.createElement('canvas');\n const ctx = /** @type {CanvasRenderingContext2D} */ (\n canvas.getContext('2d')\n );\n ctx.drawImage(bm, 0, 0);\n return {\n width: bm.width, height: bm.height, dataURL: canvas.toDataURL()\n };\n },\n revive (o) {\n const canvas = typeof OffscreenCanvas === 'undefined'\n ? document.createElement('canvas')\n /* c8 ignore next -- Browser only */\n : new OffscreenCanvas(o.width, o.height);\n /*\n var req = new XMLHttpRequest();\n req.open('GET', o, false); // Sync\n if (req.status !== 200 && req.status !== 0) {\n throw new Error('Bad ImageBitmap access: ' + req.status);\n }\n req.send();\n return req.responseText;\n */\n const ctx = /** @type {CanvasRenderingContext2D} */ (\n canvas.getContext('2d')\n );\n const img = document.createElement('img');\n // The onload is needed by some browsers per https://stackoverflow.com/a/4776378/271577\n img.addEventListener('load', function () {\n ctx.drawImage(img, 0, 0);\n });\n img.src = o.dataURL;\n // Works in contexts allowing an `ImageBitmap` (We might use\n // `OffscreenCanvas.transferToBitmap` when supported)\n return typeof OffscreenCanvas === 'undefined'\n ? canvas\n /* c8 ignore next 3 -- Browser only */\n : /** @type {OffscreenCanvas} */ (\n canvas\n ).transferToImageBitmap();\n },\n reviveAsync (o) {\n const canvas = document.createElement('canvas');\n const ctx = /** @type {CanvasRenderingContext2D} */ (\n canvas.getContext('2d')\n );\n const img = document.createElement('img');\n // The onload is needed by some browsers per https://stackoverflow.com/a/4776378/271577\n img.addEventListener('load', function () {\n ctx.drawImage(img, 0, 0);\n });\n img.src = o.dataURL;\n\n return new TypesonPromise(async (resolve, reject) => {\n try {\n const resp = await createImageBitmap(canvas);\n resolve(resp);\n /* c8 ignore next 3 */\n } catch (err) {\n reject(err);\n }\n });\n }\n }\n};\n\nexport default imagebitmap;\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","Undefined","imagebitmap","test","x","toString","call","slice","dataset","replace","bm","canvas","document","createElement","getContext","drawImage","width","height","dataURL","toDataURL","revive","o","OffscreenCanvas","ctx","img","addEventListener","src","transferToImageBitmap","reviveAsync","_ref","_asyncToGenerator","_regenerator","m","_callee","resp","_t","w","_context","createImageBitmap","v","a","_x","_x2","apply","arguments"],"mappings":"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","x_google_ignoreList":[0]}
|
|
1
|
+
{"version":3,"file":"imagebitmap.umd.cjs","sources":["../../node_modules/.pnpm/typeson@10.2.0/node_modules/typeson/dist/typeson.esm.min.js","../../types/imagebitmap.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","/* globals document, OffscreenCanvas, createImageBitmap -- Polyfills */\n// `ImageBitmap` is browser / DOM specific. It also can only work\n// same-domain (or CORS)\n\nimport {toStringTag, TypesonPromise} from 'typeson';\n\n/**\n * @type {import('typeson').TypeSpecSet}\n */\nconst imagebitmap = {\n imagebitmap: {\n test (x) {\n return toStringTag(x) === 'ImageBitmap' ||\n // In Node, our polyfill sets the dataset on a canvas\n // element as JSDom no longer allows overriding toStringTag\n (x && x.dataset && x.dataset.toStringTag === 'ImageBitmap');\n },\n replace (bm) {\n const canvas = document.createElement('canvas');\n const ctx = /** @type {CanvasRenderingContext2D} */ (\n canvas.getContext('2d')\n );\n ctx.drawImage(bm, 0, 0);\n return {\n width: bm.width, height: bm.height, dataURL: canvas.toDataURL()\n };\n },\n revive (o) {\n const canvas = typeof OffscreenCanvas === 'undefined'\n ? document.createElement('canvas')\n /* c8 ignore next -- Browser only */\n : new OffscreenCanvas(o.width, o.height);\n /*\n var req = new XMLHttpRequest();\n req.open('GET', o, false); // Sync\n if (req.status !== 200 && req.status !== 0) {\n throw new Error('Bad ImageBitmap access: ' + req.status);\n }\n req.send();\n return req.responseText;\n */\n const ctx = /** @type {CanvasRenderingContext2D} */ (\n canvas.getContext('2d')\n );\n const img = document.createElement('img');\n // The onload is needed by some browsers per https://stackoverflow.com/a/4776378/271577\n img.addEventListener('load', function () {\n ctx.drawImage(img, 0, 0);\n });\n img.src = o.dataURL;\n // Works in contexts allowing an `ImageBitmap` (We might use\n // `OffscreenCanvas.transferToBitmap` when supported)\n return typeof OffscreenCanvas === 'undefined'\n ? canvas\n /* c8 ignore next 3 -- Browser only */\n : /** @type {OffscreenCanvas} */ (\n canvas\n ).transferToImageBitmap();\n },\n reviveAsync (o) {\n const canvas = document.createElement('canvas');\n const ctx = /** @type {CanvasRenderingContext2D} */ (\n canvas.getContext('2d')\n );\n const img = document.createElement('img');\n // The onload is needed by some browsers per https://stackoverflow.com/a/4776378/271577\n img.addEventListener('load', function () {\n ctx.drawImage(img, 0, 0);\n });\n img.src = o.dataURL;\n\n return new TypesonPromise(async (resolve, reject) => {\n try {\n const resp = await createImageBitmap(canvas);\n resolve(resp);\n /* c8 ignore next 3 */\n } catch (err) {\n reject(err);\n }\n });\n }\n }\n};\n\nexport default imagebitmap;\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","Undefined","imagebitmap","test","x","toString","call","slice","dataset","replace","bm","canvas","document","createElement","getContext","drawImage","width","height","dataURL","toDataURL","revive","o","OffscreenCanvas","ctx","img","addEventListener","src","transferToImageBitmap","reviveAsync","_ref","_asyncToGenerator","_regenerator","m","_callee","resp","_t","w","_context","createImageBitmap","v","a","_x","_x2","apply","arguments"],"mappings":";;0hFAAMA,EAAcC,aAAC,SAAAD,eAAYE,GAAEC,gBAAAC,KAAAJ,gBAACI,KAAKC,EAAE,IAAIC,QAAQJ,EAAE,GAAEF,EAAeO,kBAAkB,iBAAiB,oBAAoBC,QAAQC,OAAOC,eAAeV,EAAeW,UAAUH,OAAOI,YAAY,CAACC,IAAI,SAAJA,MAAG,MAAK,gBAAgB,IAAGb,EAAeW,UAAUG,KAAK,SAASZ,EAAEa,GAAE,IAAAC,EAAAZ,KAAC,OAAO,IAAIJ,EAAe,SAACiB,EAAEC,GAAKF,EAAKX,EAAES,KAAK,SAASC,GAAGE,EAAEf,EAAEA,EAAEa,GAAGA,EAAE,GAAE,MAAO,SAASb,GAAG,OAAOa,EAAEA,EAAEb,GAAGI,QAAQa,OAAOjB,EAAE,GAAGY,KAAKG,EAAEC,EAAE,EAAE,EAAElB,EAAeW,gBAAgB,SAAST,GAAG,OAAOE,KAAKU,UAAK,EAAOZ,EAAE,EAAEF,EAAeoB,QAAQ,SAASlB,GAAG,OAAO,IAAIF,EAAe,SAAAe,GAAIA,EAAEb,EAAE,EAAE,EAAEF,EAAemB,OAAO,SAASjB,GAAG,OAAO,IAAIF,EAAe,SAACe,EAAEE,GAAKA,EAAEf,EAAE,EAAE,EAAEF,EAAeqB,IAAI,SAASnB,GAAG,OAAO,IAAIF,EAAe,SAASe,EAAEE,GAAGX,QAAQe,IAAInB,EAAEoB,IAAI,SAAApB,GAAC,OAAEA,SAAAA,EAAGqB,aAAa,sBAAsBrB,EAAEqB,aAAa,mBAAmBrB,EAAEqB,YAAYhB,kBAAkBL,EAAEG,EAAEH,CAAC,IAAGY,KAAKC,EAAEE,EAAE,EAAE,EAAEjB,EAAewB,KAAK,SAAStB,GAAG,OAAO,IAAIF,EAAe,SAASe,EAAEE,GAAGX,QAAQkB,KAAKtB,EAAEoB,IAAI,SAAApB,GAAC,OAAEA,SAAAA,EAAGqB,aAAa,sBAAsBrB,EAAEqB,aAAa,mBAAmBrB,EAAEqB,YAAYhB,kBAAkBL,EAAEG,EAAEH,CAAC,IAAGY,KAAKC,EAAEE,EAAE,EAAE,EAAEjB,EAAeyB,WAAW,SAASvB,GAAG,OAAO,IAAIF,EAAe,SAASe,EAAEE,GAAGX,QAAQmB,WAAWvB,EAAEoB,IAAI,SAAApB,GAAC,OAAEA,SAAAA,EAAGqB,aAAa,sBAAsBrB,EAAEqB,aAAa,mBAAmBrB,EAAEqB,YAAYhB,kBAAkBL,EAAEG,EAAEH,CAAC,IAAGY,KAAKC,EAAEE,EAAE,EAAE,EAKujShB,aAAA,SAAAyB,YAAAvB,gBAAAC,KAAAsB,UAAA,GAAYnB,kBAAkB,mBCIt2U,IAAMoB,EAAc,CAChBA,YAAa,CACTC,KAAI,SAAJA,KAAMC,GACF,MAA0B,gBDZq4C,SAASjB,YAAYV,GAAG,OAAOO,OAAOE,UAAUmB,SAASC,KAAK7B,GAAG8B,MAAM,KAAK,CCYp+CpB,CAAYiB,IAGdA,GAAKA,EAAEI,SAAqC,gBAA1BJ,EAAEI,QAAQrB,WACrC,EACAsB,QAAO,SAAPA,QAASC,GACL,IAAMC,EAASC,SAASC,cAAc,UAKtC,OAHIF,EAAOG,WAAW,MAElBC,UAAUL,EAAI,EAAG,GACd,CACHM,MAAON,EAAGM,MAAOC,OAAQP,EAAGO,OAAQC,QAASP,EAAOQ,YAE5D,EACAC,OAAM,SAANA,OAAQC,GACJ,IAAMV,EAAoC,oBAApBW,gBAChBV,SAASC,cAAc,UAEvB,IAAIS,gBAAgBD,EAAEL,MAAOK,EAAEJ,QAU/BM,EACFZ,EAAOG,WAAW,MAEhBU,EAAMZ,SAASC,cAAc,OAQnC,OANAW,EAAIC,iBAAiB,OAAQ,WACzBF,EAAIR,UAAUS,EAAK,EAAG,EAC1B,GACAA,EAAIE,IAAML,EAAEH,QAGsB,oBAApBI,gBACRX,EAGEA,EACFgB,uBACV,EACAC,YAAW,SAAXA,YAAaP,GACT,IAAMV,EAASC,SAASC,cAAc,UAChCU,EACFZ,EAAOG,WAAW,MAEhBU,EAAMZ,SAASC,cAAc,OAOnC,OALAW,EAAIC,iBAAiB,OAAQ,WACzBF,EAAIR,UAAUS,EAAK,EAAG,EAC1B,GACAA,EAAIE,IAAML,EAAEH,QAEL,IAAI3C,EAAc,WAAA,IAAAsD,oRAAAC,CAAAC,eAAAC,EAAC,SAAAC,QAAOtC,EAASD,GAAM,IAAAwC,EAAAC,EAAA,OAAAJ,eAAAK,EAAA,SAAAC,GAAA,cAAAA,EAAAzD,EAAAyD,EAAA7C,GAAA,KAAA,EAAA,OAAA6C,EAAAzD,EAAA,EAAAyD,EAAA7C,EAAA,EAErB8C,kBAAkB3B,GAAO,KAAA,EAAtCuB,EAAIG,EAAAE,EACV5C,EAAQuC,GACZG,EAAA7C,EAAA,EAAA,MAAA,KAAA,EAAA6C,EAAAzD,EAAA,EAAAuD,EAAAE,EAAAE,EAEI7C,KAAY,KAAA,EAAA,OAAA2C,EAAAG,EAAA,GAAA,EAAAP,QAAA,KAAA,CAAA,CAAA,EAAA,IAAA,IAEnB,OAAA,SAAAQ,EAAAC,GAAA,OAAAb,EAAAc,MAAAhE,KAAAiE,UAAA,CAAA,CARwB,GAS7B","x_google_ignoreList":[0]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(t="undefined"!=typeof globalThis?globalThis:t||self).imagedata=e()}(this,function(){"use strict";function _arrayLikeToArray(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=Array(e);n<e;n++)r[n]=t[n];return r}function _classCallCheck(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function _createClass(t,e,n){return Object.defineProperty(t,"prototype",{writable:!1}),t}function _toConsumableArray(t){return function _arrayWithoutHoles(t){if(Array.isArray(t))return _arrayLikeToArray(t)}(t)||function _iterableToArray(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||function _unsupportedIterableToArray(t,e){if(t){if("string"==typeof t)return _arrayLikeToArray(t,e);var n={}.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?_arrayLikeToArray(t,e):void 0}}(t)||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.")}()}var t=_createClass(function TypesonPromise(t){_classCallCheck(this,TypesonPromise),this.p=new Promise(t)});return t.__typeson__type__="TypesonPromise","undefined"!=typeof Symbol&&Object.defineProperty(t.prototype,Symbol.toStringTag,{get:function get(){return"TypesonPromise"}}),t.prototype.then=function(e,n){var r=this;return new t(function(t,o){r.p.then(function(n){t(e?e(n):n)}).catch(function(t){return n?n(t):Promise.reject(t)}).then(t,o)})},t.prototype.catch=function(t){return this.then(
|
|
1
|
+
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(t="undefined"!=typeof globalThis?globalThis:t||self).imagedata=e()}(this,function(){"use strict";function _arrayLikeToArray(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=Array(e);n<e;n++)r[n]=t[n];return r}function _classCallCheck(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function _createClass(t,e,n){return Object.defineProperty(t,"prototype",{writable:!1}),t}function _toConsumableArray(t){return function _arrayWithoutHoles(t){if(Array.isArray(t))return _arrayLikeToArray(t)}(t)||function _iterableToArray(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||function _unsupportedIterableToArray(t,e){if(t){if("string"==typeof t)return _arrayLikeToArray(t,e);var n={}.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?_arrayLikeToArray(t,e):void 0}}(t)||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.")}()}var t=_createClass(function TypesonPromise(t){_classCallCheck(this,TypesonPromise),this.p=new Promise(t)});return t.__typeson__type__="TypesonPromise","undefined"!=typeof Symbol&&Object.defineProperty(t.prototype,Symbol.toStringTag,{get:function get(){return"TypesonPromise"}}),t.prototype.then=function(e,n){var r=this;return new t(function(t,o){r.p.then(function(n){t(e?e(n):n)}).catch(function(t){return n?n(t):Promise.reject(t)}).then(t,o)})},t.prototype.catch=function(t){return this.then(void 0,t)},t.resolve=function(e){return new t(function(t){t(e)})},t.reject=function(e){return new t(function(t,n){n(e)})},t.all=function(e){return new t(function(t,n){Promise.all(e.map(function(t){return null!=t&&t.constructor&&"__typeson__type__"in t.constructor&&"TypesonPromise"===t.constructor.__typeson__type__?t.p:t})).then(t,n)})},t.race=function(e){return new t(function(t,n){Promise.race(e.map(function(t){return null!=t&&t.constructor&&"__typeson__type__"in t.constructor&&"TypesonPromise"===t.constructor.__typeson__type__?t.p:t})).then(t,n)})},t.allSettled=function(e){return new t(function(t,n){Promise.allSettled(e.map(function(t){return null!=t&&t.constructor&&"__typeson__type__"in t.constructor&&"TypesonPromise"===t.constructor.__typeson__type__?t.p:t})).then(t,n)})},_createClass(function Undefined(){_classCallCheck(this,Undefined)}).__typeson__type__="TypesonUndefined",{imagedata:{test:function test(t){return"ImageData"===function toStringTag(t){return Object.prototype.toString.call(t).slice(8,-1)}(t)},replace:function replace(t){return{array:_toConsumableArray(t.data),width:t.width,height:t.height}},revive:function revive(t){return new ImageData(new Uint8ClampedArray(t.array),t.width,t.height)}}}});
|
|
2
2
|
//# sourceMappingURL=imagedata.umd.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"imagedata.umd.cjs","sources":["../../node_modules/.pnpm/typeson@10.1.1/node_modules/typeson/dist/typeson.esm.min.js","../../types/imagedata.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","/* globals ImageData -- Polyfills */\n// `ImageData` is browser / DOM specific (though `node-canvas` has it\n// available on `Canvas`).\n\nimport {toStringTag} from 'typeson';\n\n/**\n * @type {import('typeson').TypeSpecSet}\n */\nconst imagedata = {\n imagedata: {\n test (x) { return toStringTag(x) === 'ImageData'; },\n replace (d) {\n return {\n // Ensure `length` gets preserved for revival\n array: [...d.data],\n width: d.width,\n height: d.height\n };\n },\n revive (o) {\n return new ImageData(\n new Uint8ClampedArray(o.array), o.width, o.height\n );\n }\n }\n};\n\nexport default imagedata;\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","Undefined","imagedata","test","x","toString","call","slice","replace","d","array","_toConsumableArray","data","width","height","revive","o","ImageData","Uint8ClampedArray"],"mappings":"ozCAAMA,EAAcC,aAAC,SAAAD,eAAYE,GAAEC,gBAAAC,KAAAJ,gBAACI,KAAKC,EAAE,IAAIC,QAAQJ,EAAE,UAAEF,EAAeO,kBAAkB,iBAAiB,oBAAoBC,QAAQC,OAAOC,eAAeV,EAAeW,UAAUH,OAAOI,YAAY,CAACC,IAAI,SAAJA,MAAG,MAAK,gBAAgB,IAAGb,EAAeW,UAAUG,KAAK,SAASZ,EAAEa,GAAE,IAAAC,EAAAZ,KAAC,OAAO,IAAIJ,EAAe,SAACiB,EAAEC,GAAKF,EAAKX,EAAES,KAAK,SAASC,GAAGE,EAAEf,EAAEA,EAAEa,GAAGA,EAAE,GAAE,MAAO,SAASb,GAAG,OAAOa,EAAEA,EAAEb,GAAGI,QAAQa,OAAOjB,EAAE,GAAGY,KAAKG,EAAEC,EAAE,EAAE,EAAElB,EAAeW,gBAAgB,SAAST,GAAG,OAAOE,KAAKU,KAAK,WAAK,EAAEZ,EAAE,EAAEF,EAAeoB,QAAQ,SAASlB,GAAG,OAAO,IAAIF,EAAe,SAAAe,GAAIA,EAAEb,EAAE,EAAE,EAAEF,EAAemB,OAAO,SAASjB,GAAG,OAAO,IAAIF,EAAe,SAACe,EAAEE,GAAKA,EAAEf,EAAE,EAAE,EAAEF,EAAeqB,IAAI,SAASnB,GAAG,OAAO,IAAIF,EAAe,SAASe,EAAEE,GAAGX,QAAQe,IAAInB,EAAEoB,IAAI,SAAApB,GAAC,OAAEA,SAAAA,EAAGqB,aAAa,sBAAsBrB,EAAEqB,aAAa,mBAAmBrB,EAAEqB,YAAYhB,kBAAkBL,EAAEG,EAAEH,CAAC,IAAGY,KAAKC,EAAEE,EAAE,EAAE,EAAEjB,EAAewB,KAAK,SAAStB,GAAG,OAAO,IAAIF,EAAe,SAASe,EAAEE,GAAGX,QAAQkB,KAAKtB,EAAEoB,IAAI,SAAApB,GAAC,OAAEA,SAAAA,EAAGqB,aAAa,sBAAsBrB,EAAEqB,aAAa,mBAAmBrB,EAAEqB,YAAYhB,kBAAkBL,EAAEG,EAAEH,CAAC,IAAGY,KAAKC,EAAEE,EAAE,EAAE,EAAEjB,EAAeyB,WAAW,SAASvB,GAAG,OAAO,IAAIF,EAAe,SAASe,EAAEE,GAAGX,QAAQmB,WAAWvB,EAAEoB,IAAI,SAAApB,GAAC,OAAEA,SAAAA,EAAGqB,aAAa,sBAAsBrB,EAAEqB,aAAa,mBAAmBrB,EAAEqB,YAAYhB,kBAAkBL,EAAEG,EAAEH,CAAC,IAAGY,KAAKC,EAAEE,EAAE,EAAE,EAK83RhB,aAAA,SAAAyB,YAAAvB,gBAAAC,KAAAsB,UAAA,GAAYnB,kBAAkB,mBCI3pU,CACdoB,UAAW,CACPC,KAAI,SAAJA,KAAMC,GAAK,MAA0B,cDX83C,SAASjB,YAAYV,GAAG,OAAOO,OAAOE,UAAUmB,SAASC,KAAK7B,GAAG8B,MAAM,KAAK,CCW79CpB,CAAYiB,EAAoB,EAClDI,QAAO,SAAPA,QAASC,GACL,MAAO,CAEHC,MAAKC,mBAAMF,EAAEG,MACbC,MAAOJ,EAAEI,MACTC,OAAQL,EAAEK,OAElB,EACAC,OAAM,SAANA,OAAQC,GACJ,OAAO,IAAIC,UACP,IAAIC,kBAAkBF,EAAEN,OAAQM,EAAEH,MAAOG,EAAEF,OAEnD","x_google_ignoreList":[0]}
|
|
1
|
+
{"version":3,"file":"imagedata.umd.cjs","sources":["../../node_modules/.pnpm/typeson@10.2.0/node_modules/typeson/dist/typeson.esm.min.js","../../types/imagedata.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","/* globals ImageData -- Polyfills */\n// `ImageData` is browser / DOM specific (though `node-canvas` has it\n// available on `Canvas`).\n\nimport {toStringTag} from 'typeson';\n\n/**\n * @type {import('typeson').TypeSpecSet}\n */\nconst imagedata = {\n imagedata: {\n test (x) { return toStringTag(x) === 'ImageData'; },\n replace (d) {\n return {\n // Ensure `length` gets preserved for revival\n array: [...d.data],\n width: d.width,\n height: d.height\n };\n },\n revive (o) {\n return new ImageData(\n new Uint8ClampedArray(o.array), o.width, o.height\n );\n }\n }\n};\n\nexport default imagedata;\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","Undefined","imagedata","test","x","toString","call","slice","replace","d","array","_toConsumableArray","data","width","height","revive","o","ImageData","Uint8ClampedArray"],"mappings":"ozCAAMA,EAAcC,aAAC,SAAAD,eAAYE,GAAEC,gBAAAC,KAAAJ,gBAACI,KAAKC,EAAE,IAAIC,QAAQJ,EAAE,UAAEF,EAAeO,kBAAkB,iBAAiB,oBAAoBC,QAAQC,OAAOC,eAAeV,EAAeW,UAAUH,OAAOI,YAAY,CAACC,IAAI,SAAJA,MAAG,MAAK,gBAAgB,IAAGb,EAAeW,UAAUG,KAAK,SAASZ,EAAEa,GAAE,IAAAC,EAAAZ,KAAC,OAAO,IAAIJ,EAAe,SAACiB,EAAEC,GAAKF,EAAKX,EAAES,KAAK,SAASC,GAAGE,EAAEf,EAAEA,EAAEa,GAAGA,EAAE,GAAE,MAAO,SAASb,GAAG,OAAOa,EAAEA,EAAEb,GAAGI,QAAQa,OAAOjB,EAAE,GAAGY,KAAKG,EAAEC,EAAE,EAAE,EAAElB,EAAeW,gBAAgB,SAAST,GAAG,OAAOE,KAAKU,UAAK,EAAOZ,EAAE,EAAEF,EAAeoB,QAAQ,SAASlB,GAAG,OAAO,IAAIF,EAAe,SAAAe,GAAIA,EAAEb,EAAE,EAAE,EAAEF,EAAemB,OAAO,SAASjB,GAAG,OAAO,IAAIF,EAAe,SAACe,EAAEE,GAAKA,EAAEf,EAAE,EAAE,EAAEF,EAAeqB,IAAI,SAASnB,GAAG,OAAO,IAAIF,EAAe,SAASe,EAAEE,GAAGX,QAAQe,IAAInB,EAAEoB,IAAI,SAAApB,GAAC,OAAEA,SAAAA,EAAGqB,aAAa,sBAAsBrB,EAAEqB,aAAa,mBAAmBrB,EAAEqB,YAAYhB,kBAAkBL,EAAEG,EAAEH,CAAC,IAAGY,KAAKC,EAAEE,EAAE,EAAE,EAAEjB,EAAewB,KAAK,SAAStB,GAAG,OAAO,IAAIF,EAAe,SAASe,EAAEE,GAAGX,QAAQkB,KAAKtB,EAAEoB,IAAI,SAAApB,GAAC,OAAEA,SAAAA,EAAGqB,aAAa,sBAAsBrB,EAAEqB,aAAa,mBAAmBrB,EAAEqB,YAAYhB,kBAAkBL,EAAEG,EAAEH,CAAC,IAAGY,KAAKC,EAAEE,EAAE,EAAE,EAAEjB,EAAeyB,WAAW,SAASvB,GAAG,OAAO,IAAIF,EAAe,SAASe,EAAEE,GAAGX,QAAQmB,WAAWvB,EAAEoB,IAAI,SAAApB,GAAC,OAAEA,SAAAA,EAAGqB,aAAa,sBAAsBrB,EAAEqB,aAAa,mBAAmBrB,EAAEqB,YAAYhB,kBAAkBL,EAAEG,EAAEH,CAAC,IAAGY,KAAKC,EAAEE,EAAE,EAAE,EAKujShB,aAAA,SAAAyB,YAAAvB,gBAAAC,KAAAsB,UAAA,GAAYnB,kBAAkB,mBCIp1U,CACdoB,UAAW,CACPC,KAAI,SAAJA,KAAMC,GAAK,MAA0B,cDX83C,SAASjB,YAAYV,GAAG,OAAOO,OAAOE,UAAUmB,SAASC,KAAK7B,GAAG8B,MAAM,KAAK,CCW79CpB,CAAYiB,EAAoB,EAClDI,QAAO,SAAPA,QAASC,GACL,MAAO,CAEHC,MAAKC,mBAAMF,EAAEG,MACbC,MAAOJ,EAAEI,MACTC,OAAQL,EAAEK,OAElB,EACAC,OAAM,SAANA,OAAQC,GACJ,OAAO,IAAIC,UACP,IAAIC,kBAAkBF,EAAEN,OAAQM,EAAEH,MAAOG,EAAEF,OAEnD","x_google_ignoreList":[0]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(t="undefined"!=typeof globalThis?globalThis:t||self).intlTypes=e()}(this,function(){"use strict";function _classCallCheck(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function _createClass(t,e,n){return Object.defineProperty(t,"prototype",{writable:!1}),t}function _typeof(t){return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},_typeof(t)}var t=_createClass(function TypesonPromise(t){_classCallCheck(this,TypesonPromise),this.p=new Promise(t)});t.__typeson__type__="TypesonPromise","undefined"!=typeof Symbol&&Object.defineProperty(t.prototype,Symbol.toStringTag,{get:function get(){return"TypesonPromise"}}),t.prototype.then=function(e,n){var o=this;return new t(function(t,r){o.p.then(function(n){t(e?e(n):n)}).catch(function(t){return n?n(t):Promise.reject(t)}).then(t,r)})},t.prototype.catch=function(t){return this.then(
|
|
1
|
+
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(t="undefined"!=typeof globalThis?globalThis:t||self).intlTypes=e()}(this,function(){"use strict";function _classCallCheck(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function _createClass(t,e,n){return Object.defineProperty(t,"prototype",{writable:!1}),t}function _typeof(t){return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},_typeof(t)}var t=_createClass(function TypesonPromise(t){_classCallCheck(this,TypesonPromise),this.p=new Promise(t)});t.__typeson__type__="TypesonPromise","undefined"!=typeof Symbol&&Object.defineProperty(t.prototype,Symbol.toStringTag,{get:function get(){return"TypesonPromise"}}),t.prototype.then=function(e,n){var o=this;return new t(function(t,r){o.p.then(function(n){t(e?e(n):n)}).catch(function(t){return n?n(t):Promise.reject(t)}).then(t,r)})},t.prototype.catch=function(t){return this.then(void 0,t)},t.resolve=function(e){return new t(function(t){t(e)})},t.reject=function(e){return new t(function(t,n){n(e)})},t.all=function(e){return new t(function(t,n){Promise.all(e.map(function(t){return null!=t&&t.constructor&&"__typeson__type__"in t.constructor&&"TypesonPromise"===t.constructor.__typeson__type__?t.p:t})).then(t,n)})},t.race=function(e){return new t(function(t,n){Promise.race(e.map(function(t){return null!=t&&t.constructor&&"__typeson__type__"in t.constructor&&"TypesonPromise"===t.constructor.__typeson__type__?t.p:t})).then(t,n)})},t.allSettled=function(e){return new t(function(t,n){Promise.allSettled(e.map(function(t){return null!=t&&t.constructor&&"__typeson__type__"in t.constructor&&"TypesonPromise"===t.constructor.__typeson__type__?t.p:t})).then(t,n)})};var e=Object.hasOwn,n=Object.getPrototypeOf;function hasConstructorOf(t,o){if(!t||"object"!=_typeof(t))return!1;var r=n(t);if(!r)return null===o;var c=e(r,"constructor")&&r.constructor;return"function"!=typeof c?null===o:o===c||null!==o&&Function.prototype.toString.call(c)===Function.prototype.toString.call(o)||"function"==typeof o&&"string"==typeof c.__typeson__type__&&c.__typeson__type__===o.__typeson__type__}return _createClass(function Undefined(){_classCallCheck(this,Undefined)}).__typeson__type__="TypesonUndefined",{IntlCollator:{test:function test(t){return hasConstructorOf(t,Intl.Collator)},replace:function replace(t){return t.resolvedOptions()},revive:function revive(t){return new Intl.Collator(t.locale,t)}},IntlDateTimeFormat:{test:function test(t){return hasConstructorOf(t,Intl.DateTimeFormat)},replace:function replace(t){return t.resolvedOptions()},revive:function revive(t){return new Intl.DateTimeFormat(t.locale,t)}},IntlNumberFormat:{test:function test(t){return hasConstructorOf(t,Intl.NumberFormat)},replace:function replace(t){return t.resolvedOptions()},revive:function revive(t){return new Intl.NumberFormat(t.locale,t)}}}});
|
|
2
2
|
//# sourceMappingURL=intl-types.umd.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"intl-types.umd.cjs","sources":["../../node_modules/.pnpm/typeson@10.1.1/node_modules/typeson/dist/typeson.esm.min.js","../../types/intl-types.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 {hasConstructorOf} from 'typeson';\n\n/**\n * @type {import('typeson').Spec}\n */\nconst IntlCollator = {\n test (x) { return hasConstructorOf(x, Intl.Collator); },\n replace (c) { return c.resolvedOptions(); },\n revive (options) { return new Intl.Collator(options.locale, options); }\n};\n\n/**\n * @type {import('typeson').Spec}\n */\nconst IntlDateTimeFormat = {\n test (x) { return hasConstructorOf(x, Intl.DateTimeFormat); },\n replace (dtf) { return dtf.resolvedOptions(); },\n revive (options) {\n return new Intl.DateTimeFormat(options.locale, options);\n }\n};\n\n/**\n * @type {import('typeson').Spec}\n */\nconst IntlNumberFormat = {\n test (x) { return hasConstructorOf(x, Intl.NumberFormat); },\n replace (nf) { return nf.resolvedOptions(); },\n revive (options) { return new Intl.NumberFormat(options.locale, options); }\n};\n\nconst intlTypes = {\n IntlCollator,\n IntlDateTimeFormat,\n IntlNumberFormat\n};\n\nexport default intlTypes;\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","Undefined","IntlCollator","test","x","Intl","Collator","replace","c","resolvedOptions","revive","options","locale","IntlDateTimeFormat","DateTimeFormat","dtf","IntlNumberFormat","NumberFormat","nf"],"mappings":"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","x_google_ignoreList":[0]}
|
|
1
|
+
{"version":3,"file":"intl-types.umd.cjs","sources":["../../node_modules/.pnpm/typeson@10.2.0/node_modules/typeson/dist/typeson.esm.min.js","../../types/intl-types.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 {hasConstructorOf} from 'typeson';\n\n/**\n * @type {import('typeson').Spec}\n */\nconst IntlCollator = {\n test (x) { return hasConstructorOf(x, Intl.Collator); },\n replace (c) { return c.resolvedOptions(); },\n revive (options) { return new Intl.Collator(options.locale, options); }\n};\n\n/**\n * @type {import('typeson').Spec}\n */\nconst IntlDateTimeFormat = {\n test (x) { return hasConstructorOf(x, Intl.DateTimeFormat); },\n replace (dtf) { return dtf.resolvedOptions(); },\n revive (options) {\n return new Intl.DateTimeFormat(options.locale, options);\n }\n};\n\n/**\n * @type {import('typeson').Spec}\n */\nconst IntlNumberFormat = {\n test (x) { return hasConstructorOf(x, Intl.NumberFormat); },\n replace (nf) { return nf.resolvedOptions(); },\n revive (options) { return new Intl.NumberFormat(options.locale, options); }\n};\n\nconst intlTypes = {\n IntlCollator,\n IntlDateTimeFormat,\n IntlNumberFormat\n};\n\nexport default intlTypes;\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","Undefined","IntlCollator","test","x","Intl","Collator","replace","c","resolvedOptions","revive","options","locale","IntlDateTimeFormat","DateTimeFormat","dtf","IntlNumberFormat","NumberFormat","nf"],"mappings":"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","x_google_ignoreList":[0]}
|
package/dist/types/map.umd.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
!function(n
|
|
1
|
+
!function(e,n){"object"==typeof exports&&"undefined"!=typeof module?module.exports=n():"function"==typeof define&&define.amd?define(n):(e="undefined"!=typeof globalThis?globalThis:e||self).map=n()}(this,function(){"use strict";function _classCallCheck(e,n){if(!(e instanceof n))throw new TypeError("Cannot call a class as a function")}function _createClass(e,n,t){return Object.defineProperty(e,"prototype",{writable:!1}),e}var e=_createClass(function TypesonPromise(e){_classCallCheck(this,TypesonPromise),this.p=new Promise(e)});return e.__typeson__type__="TypesonPromise","undefined"!=typeof Symbol&&Object.defineProperty(e.prototype,Symbol.toStringTag,{get:function get(){return"TypesonPromise"}}),e.prototype.then=function(n,t){var o=this;return new e(function(e,r){o.p.then(function(t){e(n?n(t):t)}).catch(function(e){return t?t(e):Promise.reject(e)}).then(e,r)})},e.prototype.catch=function(e){return this.then(void 0,e)},e.resolve=function(n){return new e(function(e){e(n)})},e.reject=function(n){return new e(function(e,t){t(n)})},e.all=function(n){return new e(function(e,t){Promise.all(n.map(function(e){return null!=e&&e.constructor&&"__typeson__type__"in e.constructor&&"TypesonPromise"===e.constructor.__typeson__type__?e.p:e})).then(e,t)})},e.race=function(n){return new e(function(e,t){Promise.race(n.map(function(e){return null!=e&&e.constructor&&"__typeson__type__"in e.constructor&&"TypesonPromise"===e.constructor.__typeson__type__?e.p:e})).then(e,t)})},e.allSettled=function(n){return new e(function(e,t){Promise.allSettled(n.map(function(e){return null!=e&&e.constructor&&"__typeson__type__"in e.constructor&&"TypesonPromise"===e.constructor.__typeson__type__?e.p:e})).then(e,t)})},_createClass(function Undefined(){_classCallCheck(this,Undefined)}).__typeson__type__="TypesonUndefined",{map:{test:function test(e){return"Map"===function toStringTag(e){return Object.prototype.toString.call(e).slice(8,-1)}(e)},replace:function replace(e){return e.entries().toArray()},revive:function revive(e){return new Map(e)}}}});
|
|
2
2
|
//# sourceMappingURL=map.umd.cjs.map
|