cod-dicomweb-server 1.1.0 → 1.2.1

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/LICENSE CHANGED
@@ -1,6 +1,6 @@
1
1
  MIT License
2
2
 
3
- Copyright (c) 2019 Francisco Hodge
3
+ Copyright (c) 2025 Gradient Health
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
package/README.md ADDED
@@ -0,0 +1,103 @@
1
+ # Cod DicomWeb Server
2
+
3
+ A wadors server proxy that get data from a Cloud Optimized Dicom format.
4
+
5
+ ## Table of Contents
6
+
7
+ - [Installation](#installation)
8
+ - [Usage](#usage)
9
+ - [Testing](#testing)
10
+ - [Contributing](#contributing)
11
+ - [License](#license)
12
+
13
+ ## Installation
14
+
15
+ To install this utility, follow these steps:
16
+
17
+ 1. **Clone the repository**:
18
+
19
+ ```bash
20
+ git clone https://github.com/gradienthealth/cod-dicomweb-server.git
21
+ cd cod-dicomweb-server
22
+ ```
23
+
24
+ 2. **Install dependencies**:
25
+
26
+ ```bash
27
+ yarn install
28
+ ```
29
+
30
+ 3. **Build the code**:
31
+
32
+ ```bash
33
+ yarn build
34
+ ```
35
+
36
+ Make sure you have [Node.js](https://nodejs.org/) installed on your machine.
37
+
38
+ ## Usage
39
+
40
+ 1. **Open the Target repo in the code editor where this package needs to use and add the package**:
41
+
42
+ ```bash
43
+ yarn add cod-dicomweb-server
44
+ ```
45
+
46
+ 2. **Use the methods of the package in any file in the target repo**:
47
+
48
+ ```javaScript
49
+ import { CodDicomWebServer, FetchType } from 'cod-dicomweb-server';
50
+
51
+ const server = CodDicomWebServer();
52
+ const wadorsUrl = 'https://storage.googleapis.com/<bucket name>/<bucket prefix which end with /dicomweb>/studies/<studyUid>/series/<seriesUid>/instances/<sopUid>/frames/<frameNumber>';
53
+ const imageId = '<image scheme>:' + wadorsUrl;
54
+
55
+ const result = await server.fetchCod( wadorsUrl,
56
+     imageId,
57
+     headers,
58
+     {
59
+         useSharedArrayBuffer: true,
60
+         fetchType: FetchType.BYTES_OPTIMIZED,
61
+     }
62
+ )
63
+
64
+ console.log(result);
65
+ ```
66
+
67
+ ## Testing
68
+
69
+ You need to install all the dependencies and build the code to run the tests.
70
+
71
+ ### Running Tests
72
+
73
+ ```bash
74
+ yarn test
75
+ ```
76
+
77
+ ### Test Coverage
78
+
79
+ ```bash
80
+ yarn coverage
81
+ ```
82
+
83
+ ### Benchmark tests
84
+
85
+ ```bash
86
+ yarn benchmark
87
+ ```
88
+
89
+ - The benchmark output will be displayed in the browser's debugger console.
90
+
91
+ ## Contributing
92
+
93
+ Contributions are welcome! Please follow these steps:
94
+
95
+ 1. Fork the repository.
96
+ 2. Create a new branch ( `git checkout -b feature/YourFeature` ).
97
+ 3. Make your changes and commit them ( `git commit -m 'Add some feature'` ).
98
+ 4. Push to the branch ( `git push origin feature/YourFeature` ).
99
+ 5. Open a Pull Request.
100
+
101
+ ## License
102
+
103
+ This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  *
3
- * cod-dicomweb-server v1.1.0
3
+ * cod-dicomweb-server v1.2.1
4
4
  * git+https://github.com/gradienthealth/cod-dicomweb-server.git
5
5
  *
6
6
  * Copyright (c) Adithyan Dinesh and project contributors.
@@ -16,4 +16,4 @@
16
16
  * SPDX-License-Identifier: Apache-2.0
17
17
  */
18
18
  const t=Symbol("Comlink.proxy"),e=Symbol("Comlink.endpoint"),r=Symbol("Comlink.releaseProxy"),n=Symbol("Comlink.finalizer"),o=Symbol("Comlink.thrown"),i=t=>"object"==typeof t&&null!==t||"function"==typeof t,a={canHandle:e=>i(e)&&e[t],serialize(t){const{port1:e,port2:r}=new MessageChannel;return u(t,e),[r,[r]]},deserialize:t=>(t.start(),function(t,e){const r=new Map;return t.addEventListener("message",(function(t){const{data:e}=t;if(!e||!e.id)return;const n=r.get(e.id);if(n)try{n(e)}finally{r.delete(e.id)}})),y(t,r,[],e)}(t))},c=new Map([["proxy",a],["throw",{canHandle:t=>i(t)&&o in t,serialize({value:t}){let e;return e=t instanceof Error?{isError:!0,value:{message:t.message,name:t.name,stack:t.stack}}:{isError:!1,value:t},[e,[]]},deserialize(t){if(t.isError)throw Object.assign(new Error(t.value.message),t.value);throw t.value}}]]);function u(e,r=globalThis,i=["*"]){r.addEventListener("message",(function a(c){if(!c||!c.data)return;if(!function(t,e){for(const r of t){if(e===r||"*"===r)return!0;if(r instanceof RegExp&&r.test(e))return!0}return!1}(i,c.origin))return void console.warn(`Invalid origin '${c.origin}' for comlink proxy`);const{id:l,type:f,path:h}=Object.assign({path:[]},c.data),p=(c.data.argumentList||[]).map(m);let y;try{const r=h.slice(0,-1).reduce(((t,e)=>t[e]),e),n=h.reduce(((t,e)=>t[e]),e);switch(f){case"GET":y=n;break;case"SET":r[h.slice(-1)[0]]=m(c.data.value),y=!0;break;case"APPLY":y=n.apply(r,p);break;case"CONSTRUCT":y=function(e){return Object.assign(e,{[t]:!0})}(new n(...p));break;case"ENDPOINT":{const{port1:t,port2:r}=new MessageChannel;u(e,r),y=function(t,e){return d.set(t,e),t}(t,[t])}break;case"RELEASE":y=void 0;break;default:return}}catch(t){y={value:t,[o]:0}}Promise.resolve(y).catch((t=>({value:t,[o]:0}))).then((t=>{const[o,i]=g(t);r.postMessage(Object.assign(Object.assign({},o),{id:l}),i),"RELEASE"===f&&(r.removeEventListener("message",a),s(r),n in e&&"function"==typeof e[n]&&e[n]())})).catch((t=>{const[e,n]=g({value:new TypeError("Unserializable return value"),[o]:0});r.postMessage(Object.assign(Object.assign({},e),{id:l}),n)}))})),r.start&&r.start()}function s(t){(function(t){return"MessagePort"===t.constructor.name})(t)&&t.close()}function l(t){if(t)throw new Error("Proxy has been released and is not useable")}function f(t){return w(t,new Map,{type:"RELEASE"}).then((()=>{s(t)}))}const h=new WeakMap,p="FinalizationRegistry"in globalThis&&new FinalizationRegistry((t=>{const e=(h.get(t)||0)-1;h.set(t,e),0===e&&f(t)}));function y(t,n,o=[],i=function(){}){let a=!1;const c=new Proxy(i,{get(e,i){if(l(a),i===r)return()=>{!function(t){p&&p.unregister(t)}(c),f(t),n.clear(),a=!0};if("then"===i){if(0===o.length)return{then:()=>c};const e=w(t,n,{type:"GET",path:o.map((t=>t.toString()))}).then(m);return e.then.bind(e)}return y(t,n,[...o,i])},set(e,r,i){l(a);const[c,u]=g(i);return w(t,n,{type:"SET",path:[...o,r].map((t=>t.toString())),value:c},u).then(m)},apply(r,i,c){l(a);const u=o[o.length-1];if(u===e)return w(t,n,{type:"ENDPOINT"}).then(m);if("bind"===u)return y(t,n,o.slice(0,-1));const[s,f]=v(c);return w(t,n,{type:"APPLY",path:o.map((t=>t.toString())),argumentList:s},f).then(m)},construct(e,r){l(a);const[i,c]=v(r);return w(t,n,{type:"CONSTRUCT",path:o.map((t=>t.toString())),argumentList:i},c).then(m)}});return function(t,e){const r=(h.get(e)||0)+1;h.set(e,r),p&&p.register(t,e,t)}(c,t),c}function v(t){const e=t.map(g);return[e.map((t=>t[0])),(r=e.map((t=>t[1])),Array.prototype.concat.apply([],r))];var r}const d=new WeakMap;function g(t){for(const[e,r]of c)if(r.canHandle(t)){const[n,o]=r.serialize(t);return[{type:"HANDLER",name:e,value:n},o]}return[{type:"RAW",value:t},d.get(t)||[]]}function m(t){switch(t.type){case"HANDLER":return c.get(t.name).deserialize(t.value);case"RAW":return t.value}}function w(t,e,r,n){return new Promise((o=>{const i=new Array(4).fill(0).map((()=>Math.floor(Math.random()*Number.MAX_SAFE_INTEGER).toString(16))).join("-");e.set(i,o),t.start&&t.start(),t.postMessage(Object.assign({id:i},r),n)}))}function b(t){return b="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},b(t)}function E(){/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */E=function(){return e};var t,e={},r=Object.prototype,n=r.hasOwnProperty,o=Object.defineProperty||function(t,e,r){t[e]=r.value},i="function"==typeof Symbol?Symbol:{},a=i.iterator||"@@iterator",c=i.asyncIterator||"@@asyncIterator",u=i.toStringTag||"@@toStringTag";function s(t,e,r){return Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{s({},"")}catch(t){s=function(t,e,r){return t[e]=r}}function l(t,e,r,n){var i=e&&e.prototype instanceof g?e:g,a=Object.create(i.prototype),c=new A(n||[]);return o(a,"_invoke",{value:P(t,r,c)}),a}function f(t,e,r){try{return{type:"normal",arg:t.call(e,r)}}catch(t){return{type:"throw",arg:t}}}e.wrap=l;var h="suspendedStart",p="suspendedYield",y="executing",v="completed",d={};function g(){}function m(){}function w(){}var L={};s(L,a,(function(){return this}));var x=Object.getPrototypeOf,S=x&&x(x(M([])));S&&S!==r&&n.call(S,a)&&(L=S);var j=w.prototype=g.prototype=Object.create(L);function O(t){["next","throw","return"].forEach((function(e){s(t,e,(function(t){return this._invoke(e,t)}))}))}function k(t,e){function r(o,i,a,c){var u=f(t[o],t,i);if("throw"!==u.type){var s=u.arg,l=s.value;return l&&"object"==b(l)&&n.call(l,"__await")?e.resolve(l.__await).then((function(t){r("next",t,a,c)}),(function(t){r("throw",t,a,c)})):e.resolve(l).then((function(t){s.value=t,a(s)}),(function(t){return r("throw",t,a,c)}))}c(u.arg)}var i;o(this,"_invoke",{value:function(t,n){function o(){return new e((function(e,o){r(t,n,e,o)}))}return i=i?i.then(o,o):o()}})}function P(e,r,n){var o=h;return function(i,a){if(o===y)throw Error("Generator is already running");if(o===v){if("throw"===i)throw a;return{value:t,done:!0}}for(n.method=i,n.arg=a;;){var c=n.delegate;if(c){var u=T(c,n);if(u){if(u===d)continue;return u}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(o===h)throw o=v,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);o=y;var s=f(e,r,n);if("normal"===s.type){if(o=n.done?v:p,s.arg===d)continue;return{value:s.arg,done:n.done}}"throw"===s.type&&(o=v,n.method="throw",n.arg=s.arg)}}}function T(e,r){var n=r.method,o=e.iterator[n];if(o===t)return r.delegate=null,"throw"===n&&e.iterator.return&&(r.method="return",r.arg=t,T(e,r),"throw"===r.method)||"return"!==n&&(r.method="throw",r.arg=new TypeError("The iterator does not provide a '"+n+"' method")),d;var i=f(o,e.iterator,r.arg);if("throw"===i.type)return r.method="throw",r.arg=i.arg,r.delegate=null,d;var a=i.arg;return a?a.done?(r[e.resultName]=a.value,r.next=e.nextLoc,"return"!==r.method&&(r.method="next",r.arg=t),r.delegate=null,d):a:(r.method="throw",r.arg=new TypeError("iterator result is not an object"),r.delegate=null,d)}function N(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function _(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function A(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(N,this),this.reset(!0)}function M(e){if(e||""===e){var r=e[a];if(r)return r.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var o=-1,i=function r(){for(;++o<e.length;)if(n.call(e,o))return r.value=e[o],r.done=!1,r;return r.value=t,r.done=!0,r};return i.next=i}}throw new TypeError(b(e)+" is not iterable")}return m.prototype=w,o(j,"constructor",{value:w,configurable:!0}),o(w,"constructor",{value:m,configurable:!0}),m.displayName=s(w,u,"GeneratorFunction"),e.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===m||"GeneratorFunction"===(e.displayName||e.name))},e.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,w):(t.__proto__=w,s(t,u,"GeneratorFunction")),t.prototype=Object.create(j),t},e.awrap=function(t){return{__await:t}},O(k.prototype),s(k.prototype,c,(function(){return this})),e.AsyncIterator=k,e.async=function(t,r,n,o,i){void 0===i&&(i=Promise);var a=new k(l(t,r,n,o),i);return e.isGeneratorFunction(r)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},O(j),s(j,u,"Generator"),s(j,a,(function(){return this})),s(j,"toString",(function(){return"[object Generator]"})),e.keys=function(t){var e=Object(t),r=[];for(var n in e)r.push(n);return r.reverse(),function t(){for(;r.length;){var n=r.pop();if(n in e)return t.value=n,t.done=!1,t}return t.done=!0,t}},e.values=M,A.prototype={constructor:A,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=t,this.done=!1,this.delegate=null,this.method="next",this.arg=t,this.tryEntries.forEach(_),!e)for(var r in this)"t"===r.charAt(0)&&n.call(this,r)&&!isNaN(+r.slice(1))&&(this[r]=t)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var r=this;function o(n,o){return c.type="throw",c.arg=e,r.next=n,o&&(r.method="next",r.arg=t),!!o}for(var i=this.tryEntries.length-1;i>=0;--i){var a=this.tryEntries[i],c=a.completion;if("root"===a.tryLoc)return o("end");if(a.tryLoc<=this.prev){var u=n.call(a,"catchLoc"),s=n.call(a,"finallyLoc");if(u&&s){if(this.prev<a.catchLoc)return o(a.catchLoc,!0);if(this.prev<a.finallyLoc)return o(a.finallyLoc)}else if(u){if(this.prev<a.catchLoc)return o(a.catchLoc,!0)}else{if(!s)throw Error("try statement without catch or finally");if(this.prev<a.finallyLoc)return o(a.finallyLoc)}}}},abrupt:function(t,e){for(var r=this.tryEntries.length-1;r>=0;--r){var o=this.tryEntries[r];if(o.tryLoc<=this.prev&&n.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),d},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),_(r),d}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var o=n.arg;_(r)}return o}}throw Error("illegal catch attempt")},delegateYield:function(e,r,n){return this.delegate={iterator:M(e),resultName:r,nextLoc:n},"next"===this.method&&(this.arg=t),d}},e}function L(t,e,r,n,o,i,a){try{var c=t[i](a),u=c.value}catch(t){return void r(t)}c.done?e(u):Promise.resolve(u).then(n,o)}return u({partial:function(t){return(e=E().mark((function e(){var r,n;return E().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=t.url,n=t.headers,e.abrupt("return",fetch(r,{headers:n}).then((function(t){return t.arrayBuffer()})).catch((function(t){throw new Error("filePartial.ts: Error when fetching file: "+(null==t?void 0:t.message))})));case 2:case"end":return e.stop()}}),e)})),function(){var t=this,r=arguments;return new Promise((function(n,o){var i=e.apply(t,r);function a(t){L(i,n,o,a,c,"next",t)}function c(t){L(i,n,o,a,c,"throw",t)}a(void 0)}))})();var e}}),{}})()));
19
- //# sourceMappingURL=16.index.js.map
19
+ //# sourceMappingURL=16.js.map
package/dist/16.js.map ADDED
@@ -0,0 +1 @@
1
+ {"version":3,"file":"16.js","mappings":"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","sources":["webpack://cod-dicomweb-server/webpack/universalModuleDefinition","webpack://cod-dicomweb-server/./node_modules/comlink/dist/esm/comlink.mjs","webpack://cod-dicomweb-server/./src/webWorker/scripts/filePartial.ts","webpack://cod-dicomweb-server/./src/webWorker/workers/filePartialWorker.ts"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse {\n\t\tvar a = factory();\n\t\tfor(var i in a) (typeof exports === 'object' ? exports : root)[i] = a[i];\n\t}\n})(self, () => {\nreturn ","/**\n * @license\n * Copyright 2019 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\nconst proxyMarker = Symbol(\"Comlink.proxy\");\nconst createEndpoint = Symbol(\"Comlink.endpoint\");\nconst releaseProxy = Symbol(\"Comlink.releaseProxy\");\nconst finalizer = Symbol(\"Comlink.finalizer\");\nconst throwMarker = Symbol(\"Comlink.thrown\");\nconst isObject = (val) => (typeof val === \"object\" && val !== null) || typeof val === \"function\";\n/**\n * Internal transfer handle to handle objects marked to proxy.\n */\nconst proxyTransferHandler = {\n canHandle: (val) => isObject(val) && val[proxyMarker],\n serialize(obj) {\n const { port1, port2 } = new MessageChannel();\n expose(obj, port1);\n return [port2, [port2]];\n },\n deserialize(port) {\n port.start();\n return wrap(port);\n },\n};\n/**\n * Internal transfer handler to handle thrown exceptions.\n */\nconst throwTransferHandler = {\n canHandle: (value) => isObject(value) && throwMarker in value,\n serialize({ value }) {\n let serialized;\n if (value instanceof Error) {\n serialized = {\n isError: true,\n value: {\n message: value.message,\n name: value.name,\n stack: value.stack,\n },\n };\n }\n else {\n serialized = { isError: false, value };\n }\n return [serialized, []];\n },\n deserialize(serialized) {\n if (serialized.isError) {\n throw Object.assign(new Error(serialized.value.message), serialized.value);\n }\n throw serialized.value;\n },\n};\n/**\n * Allows customizing the serialization of certain values.\n */\nconst transferHandlers = new Map([\n [\"proxy\", proxyTransferHandler],\n [\"throw\", throwTransferHandler],\n]);\nfunction isAllowedOrigin(allowedOrigins, origin) {\n for (const allowedOrigin of allowedOrigins) {\n if (origin === allowedOrigin || allowedOrigin === \"*\") {\n return true;\n }\n if (allowedOrigin instanceof RegExp && allowedOrigin.test(origin)) {\n return true;\n }\n }\n return false;\n}\nfunction expose(obj, ep = globalThis, allowedOrigins = [\"*\"]) {\n ep.addEventListener(\"message\", function callback(ev) {\n if (!ev || !ev.data) {\n return;\n }\n if (!isAllowedOrigin(allowedOrigins, ev.origin)) {\n console.warn(`Invalid origin '${ev.origin}' for comlink proxy`);\n return;\n }\n const { id, type, path } = Object.assign({ path: [] }, ev.data);\n const argumentList = (ev.data.argumentList || []).map(fromWireValue);\n let returnValue;\n try {\n const parent = path.slice(0, -1).reduce((obj, prop) => obj[prop], obj);\n const rawValue = path.reduce((obj, prop) => obj[prop], obj);\n switch (type) {\n case \"GET\" /* MessageType.GET */:\n {\n returnValue = rawValue;\n }\n break;\n case \"SET\" /* MessageType.SET */:\n {\n parent[path.slice(-1)[0]] = fromWireValue(ev.data.value);\n returnValue = true;\n }\n break;\n case \"APPLY\" /* MessageType.APPLY */:\n {\n returnValue = rawValue.apply(parent, argumentList);\n }\n break;\n case \"CONSTRUCT\" /* MessageType.CONSTRUCT */:\n {\n const value = new rawValue(...argumentList);\n returnValue = proxy(value);\n }\n break;\n case \"ENDPOINT\" /* MessageType.ENDPOINT */:\n {\n const { port1, port2 } = new MessageChannel();\n expose(obj, port2);\n returnValue = transfer(port1, [port1]);\n }\n break;\n case \"RELEASE\" /* MessageType.RELEASE */:\n {\n returnValue = undefined;\n }\n break;\n default:\n return;\n }\n }\n catch (value) {\n returnValue = { value, [throwMarker]: 0 };\n }\n Promise.resolve(returnValue)\n .catch((value) => {\n return { value, [throwMarker]: 0 };\n })\n .then((returnValue) => {\n const [wireValue, transferables] = toWireValue(returnValue);\n ep.postMessage(Object.assign(Object.assign({}, wireValue), { id }), transferables);\n if (type === \"RELEASE\" /* MessageType.RELEASE */) {\n // detach and deactive after sending release response above.\n ep.removeEventListener(\"message\", callback);\n closeEndPoint(ep);\n if (finalizer in obj && typeof obj[finalizer] === \"function\") {\n obj[finalizer]();\n }\n }\n })\n .catch((error) => {\n // Send Serialization Error To Caller\n const [wireValue, transferables] = toWireValue({\n value: new TypeError(\"Unserializable return value\"),\n [throwMarker]: 0,\n });\n ep.postMessage(Object.assign(Object.assign({}, wireValue), { id }), transferables);\n });\n });\n if (ep.start) {\n ep.start();\n }\n}\nfunction isMessagePort(endpoint) {\n return endpoint.constructor.name === \"MessagePort\";\n}\nfunction closeEndPoint(endpoint) {\n if (isMessagePort(endpoint))\n endpoint.close();\n}\nfunction wrap(ep, target) {\n const pendingListeners = new Map();\n ep.addEventListener(\"message\", function handleMessage(ev) {\n const { data } = ev;\n if (!data || !data.id) {\n return;\n }\n const resolver = pendingListeners.get(data.id);\n if (!resolver) {\n return;\n }\n try {\n resolver(data);\n }\n finally {\n pendingListeners.delete(data.id);\n }\n });\n return createProxy(ep, pendingListeners, [], target);\n}\nfunction throwIfProxyReleased(isReleased) {\n if (isReleased) {\n throw new Error(\"Proxy has been released and is not useable\");\n }\n}\nfunction releaseEndpoint(ep) {\n return requestResponseMessage(ep, new Map(), {\n type: \"RELEASE\" /* MessageType.RELEASE */,\n }).then(() => {\n closeEndPoint(ep);\n });\n}\nconst proxyCounter = new WeakMap();\nconst proxyFinalizers = \"FinalizationRegistry\" in globalThis &&\n new FinalizationRegistry((ep) => {\n const newCount = (proxyCounter.get(ep) || 0) - 1;\n proxyCounter.set(ep, newCount);\n if (newCount === 0) {\n releaseEndpoint(ep);\n }\n });\nfunction registerProxy(proxy, ep) {\n const newCount = (proxyCounter.get(ep) || 0) + 1;\n proxyCounter.set(ep, newCount);\n if (proxyFinalizers) {\n proxyFinalizers.register(proxy, ep, proxy);\n }\n}\nfunction unregisterProxy(proxy) {\n if (proxyFinalizers) {\n proxyFinalizers.unregister(proxy);\n }\n}\nfunction createProxy(ep, pendingListeners, path = [], target = function () { }) {\n let isProxyReleased = false;\n const proxy = new Proxy(target, {\n get(_target, prop) {\n throwIfProxyReleased(isProxyReleased);\n if (prop === releaseProxy) {\n return () => {\n unregisterProxy(proxy);\n releaseEndpoint(ep);\n pendingListeners.clear();\n isProxyReleased = true;\n };\n }\n if (prop === \"then\") {\n if (path.length === 0) {\n return { then: () => proxy };\n }\n const r = requestResponseMessage(ep, pendingListeners, {\n type: \"GET\" /* MessageType.GET */,\n path: path.map((p) => p.toString()),\n }).then(fromWireValue);\n return r.then.bind(r);\n }\n return createProxy(ep, pendingListeners, [...path, prop]);\n },\n set(_target, prop, rawValue) {\n throwIfProxyReleased(isProxyReleased);\n // FIXME: ES6 Proxy Handler `set` methods are supposed to return a\n // boolean. To show good will, we return true asynchronously ¯\\_(ツ)_/¯\n const [value, transferables] = toWireValue(rawValue);\n return requestResponseMessage(ep, pendingListeners, {\n type: \"SET\" /* MessageType.SET */,\n path: [...path, prop].map((p) => p.toString()),\n value,\n }, transferables).then(fromWireValue);\n },\n apply(_target, _thisArg, rawArgumentList) {\n throwIfProxyReleased(isProxyReleased);\n const last = path[path.length - 1];\n if (last === createEndpoint) {\n return requestResponseMessage(ep, pendingListeners, {\n type: \"ENDPOINT\" /* MessageType.ENDPOINT */,\n }).then(fromWireValue);\n }\n // We just pretend that `bind()` didn’t happen.\n if (last === \"bind\") {\n return createProxy(ep, pendingListeners, path.slice(0, -1));\n }\n const [argumentList, transferables] = processArguments(rawArgumentList);\n return requestResponseMessage(ep, pendingListeners, {\n type: \"APPLY\" /* MessageType.APPLY */,\n path: path.map((p) => p.toString()),\n argumentList,\n }, transferables).then(fromWireValue);\n },\n construct(_target, rawArgumentList) {\n throwIfProxyReleased(isProxyReleased);\n const [argumentList, transferables] = processArguments(rawArgumentList);\n return requestResponseMessage(ep, pendingListeners, {\n type: \"CONSTRUCT\" /* MessageType.CONSTRUCT */,\n path: path.map((p) => p.toString()),\n argumentList,\n }, transferables).then(fromWireValue);\n },\n });\n registerProxy(proxy, ep);\n return proxy;\n}\nfunction myFlat(arr) {\n return Array.prototype.concat.apply([], arr);\n}\nfunction processArguments(argumentList) {\n const processed = argumentList.map(toWireValue);\n return [processed.map((v) => v[0]), myFlat(processed.map((v) => v[1]))];\n}\nconst transferCache = new WeakMap();\nfunction transfer(obj, transfers) {\n transferCache.set(obj, transfers);\n return obj;\n}\nfunction proxy(obj) {\n return Object.assign(obj, { [proxyMarker]: true });\n}\nfunction windowEndpoint(w, context = globalThis, targetOrigin = \"*\") {\n return {\n postMessage: (msg, transferables) => w.postMessage(msg, targetOrigin, transferables),\n addEventListener: context.addEventListener.bind(context),\n removeEventListener: context.removeEventListener.bind(context),\n };\n}\nfunction toWireValue(value) {\n for (const [name, handler] of transferHandlers) {\n if (handler.canHandle(value)) {\n const [serializedValue, transferables] = handler.serialize(value);\n return [\n {\n type: \"HANDLER\" /* WireValueType.HANDLER */,\n name,\n value: serializedValue,\n },\n transferables,\n ];\n }\n }\n return [\n {\n type: \"RAW\" /* WireValueType.RAW */,\n value,\n },\n transferCache.get(value) || [],\n ];\n}\nfunction fromWireValue(value) {\n switch (value.type) {\n case \"HANDLER\" /* WireValueType.HANDLER */:\n return transferHandlers.get(value.name).deserialize(value.value);\n case \"RAW\" /* WireValueType.RAW */:\n return value.value;\n }\n}\nfunction requestResponseMessage(ep, pendingListeners, msg, transfers) {\n return new Promise((resolve) => {\n const id = generateUUID();\n pendingListeners.set(id, resolve);\n if (ep.start) {\n ep.start();\n }\n ep.postMessage(Object.assign({ id }, msg), transfers);\n });\n}\nfunction generateUUID() {\n return new Array(4)\n .fill(0)\n .map(() => Math.floor(Math.random() * Number.MAX_SAFE_INTEGER).toString(16))\n .join(\"-\");\n}\n\nexport { createEndpoint, expose, finalizer, proxy, proxyMarker, releaseProxy, transfer, transferHandlers, windowEndpoint, wrap };\n//# sourceMappingURL=comlink.mjs.map\n","const filePartial = {\n async partial(args: { url: string; headers?: Record<string, string> }): Promise<ArrayBufferLike | Error> {\n const { url, headers } = args;\n\n return fetch(url, { headers })\n .then((response) => response.arrayBuffer())\n .catch((error) => {\n throw new Error('filePartial.ts: Error when fetching file: ' + error?.message);\n });\n }\n};\n\nexport default filePartial;\n","import { expose } from 'comlink';\nimport filePartial from '../scripts/filePartial';\n\nexpose(filePartial);\n"],"names":["root","factory","exports","module","define","amd","a","i","self","proxyMarker","Symbol","createEndpoint","releaseProxy","finalizer","throwMarker","isObject","val","proxyTransferHandler","canHandle","serialize","obj","port1","port2","MessageChannel","expose","deserialize","port","start","ep","target","pendingListeners","Map","addEventListener","ev","data","id","resolver","get","delete","createProxy","wrap","transferHandlers","value","serialized","Error","isError","message","name","stack","Object","assign","globalThis","allowedOrigins","callback","origin","allowedOrigin","RegExp","test","isAllowedOrigin","console","warn","type","path","argumentList","map","fromWireValue","returnValue","parent","slice","reduce","prop","rawValue","apply","proxy","transfers","transferCache","set","transfer","undefined","Promise","resolve","catch","then","wireValue","transferables","toWireValue","postMessage","removeEventListener","closeEndPoint","error","TypeError","endpoint","constructor","isMessagePort","close","throwIfProxyReleased","isReleased","releaseEndpoint","requestResponseMessage","proxyCounter","WeakMap","proxyFinalizers","FinalizationRegistry","newCount","isProxyReleased","Proxy","_target","unregister","unregisterProxy","clear","length","r","p","toString","bind","_thisArg","rawArgumentList","last","processArguments","construct","register","registerProxy","processed","v","arr","Array","prototype","concat","handler","serializedValue","msg","fill","Math","floor","random","Number","MAX_SAFE_INTEGER","join","_regeneratorRuntime","e","t","n","hasOwnProperty","o","defineProperty","iterator","c","asyncIterator","u","toStringTag","enumerable","configurable","writable","Generator","create","Context","makeInvokeMethod","tryCatch","arg","call","h","l","f","s","y","GeneratorFunction","GeneratorFunctionPrototype","d","getPrototypeOf","values","g","defineIteratorMethods","forEach","_invoke","AsyncIterator","invoke","_typeof","__await","callInvokeWithMethodAndArg","done","method","delegate","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","resultName","next","nextLoc","pushTryEntry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","push","resetTryEntry","completion","reset","isNaN","displayName","isGeneratorFunction","mark","setPrototypeOf","__proto__","awrap","async","keys","reverse","pop","prev","charAt","stop","rval","handle","complete","finish","delegateYield","asyncGeneratorStep","partial","args","_callee","url","headers","_context","fetch","response","arrayBuffer","arguments","_next","_throw"],"sourceRoot":""}
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  *
3
- * cod-dicomweb-server v1.1.0
3
+ * cod-dicomweb-server v1.2.1
4
4
  * git+https://github.com/gradienthealth/cod-dicomweb-server.git
5
5
  *
6
6
  * Copyright (c) Adithyan Dinesh and project contributors.
@@ -15,5 +15,5 @@
15
15
  * Copyright 2019 Google LLC
16
16
  * SPDX-License-Identifier: Apache-2.0
17
17
  */
18
- const e=Symbol("Comlink.proxy"),t=Symbol("Comlink.endpoint"),r=Symbol("Comlink.releaseProxy"),n=Symbol("Comlink.finalizer"),o=Symbol("Comlink.thrown"),i=e=>"object"==typeof e&&null!==e||"function"==typeof e,a={canHandle:t=>i(t)&&t[e],serialize(e){const{port1:t,port2:r}=new MessageChannel;return s(e,t),[r,[r]]},deserialize:e=>(e.start(),function(e,t){const r=new Map;return e.addEventListener("message",(function(e){const{data:t}=e;if(!t||!t.id)return;const n=r.get(t.id);if(n)try{n(t)}finally{r.delete(t.id)}})),y(e,r,[],t)}(e))},c=new Map([["proxy",a],["throw",{canHandle:e=>i(e)&&o in e,serialize({value:e}){let t;return t=e instanceof Error?{isError:!0,value:{message:e.message,name:e.name,stack:e.stack}}:{isError:!1,value:e},[t,[]]},deserialize(e){if(e.isError)throw Object.assign(new Error(e.value.message),e.value);throw e.value}}]]);function s(t,r=globalThis,i=["*"]){r.addEventListener("message",(function a(c){if(!c||!c.data)return;if(!function(e,t){for(const r of e){if(t===r||"*"===r)return!0;if(r instanceof RegExp&&r.test(t))return!0}return!1}(i,c.origin))return void console.warn(`Invalid origin '${c.origin}' for comlink proxy`);const{id:l,type:f,path:h}=Object.assign({path:[]},c.data),p=(c.data.argumentList||[]).map(m);let y;try{const r=h.slice(0,-1).reduce(((e,t)=>e[t]),t),n=h.reduce(((e,t)=>e[t]),t);switch(f){case"GET":y=n;break;case"SET":r[h.slice(-1)[0]]=m(c.data.value),y=!0;break;case"APPLY":y=n.apply(r,p);break;case"CONSTRUCT":y=function(t){return Object.assign(t,{[e]:!0})}(new n(...p));break;case"ENDPOINT":{const{port1:e,port2:r}=new MessageChannel;s(t,r),y=function(e,t){return v.set(e,t),e}(e,[e])}break;case"RELEASE":y=void 0;break;default:return}}catch(e){y={value:e,[o]:0}}Promise.resolve(y).catch((e=>({value:e,[o]:0}))).then((e=>{const[o,i]=g(e);r.postMessage(Object.assign(Object.assign({},o),{id:l}),i),"RELEASE"===f&&(r.removeEventListener("message",a),u(r),n in t&&"function"==typeof t[n]&&t[n]())})).catch((e=>{const[t,n]=g({value:new TypeError("Unserializable return value"),[o]:0});r.postMessage(Object.assign(Object.assign({},t),{id:l}),n)}))})),r.start&&r.start()}function u(e){(function(e){return"MessagePort"===e.constructor.name})(e)&&e.close()}function l(e){if(e)throw new Error("Proxy has been released and is not useable")}function f(e){return b(e,new Map,{type:"RELEASE"}).then((()=>{u(e)}))}const h=new WeakMap,p="FinalizationRegistry"in globalThis&&new FinalizationRegistry((e=>{const t=(h.get(e)||0)-1;h.set(e,t),0===t&&f(e)}));function y(e,n,o=[],i=function(){}){let a=!1;const c=new Proxy(i,{get(t,i){if(l(a),i===r)return()=>{!function(e){p&&p.unregister(e)}(c),f(e),n.clear(),a=!0};if("then"===i){if(0===o.length)return{then:()=>c};const t=b(e,n,{type:"GET",path:o.map((e=>e.toString()))}).then(m);return t.then.bind(t)}return y(e,n,[...o,i])},set(t,r,i){l(a);const[c,s]=g(i);return b(e,n,{type:"SET",path:[...o,r].map((e=>e.toString())),value:c},s).then(m)},apply(r,i,c){l(a);const s=o[o.length-1];if(s===t)return b(e,n,{type:"ENDPOINT"}).then(m);if("bind"===s)return y(e,n,o.slice(0,-1));const[u,f]=d(c);return b(e,n,{type:"APPLY",path:o.map((e=>e.toString())),argumentList:u},f).then(m)},construct(t,r){l(a);const[i,c]=d(r);return b(e,n,{type:"CONSTRUCT",path:o.map((e=>e.toString())),argumentList:i},c).then(m)}});return function(e,t){const r=(h.get(t)||0)+1;h.set(t,r),p&&p.register(e,t,e)}(c,e),c}function d(e){const t=e.map(g);return[t.map((e=>e[0])),(r=t.map((e=>e[1])),Array.prototype.concat.apply([],r))];var r}const v=new WeakMap;function g(e){for(const[t,r]of c)if(r.canHandle(e)){const[n,o]=r.serialize(e);return[{type:"HANDLER",name:t,value:n},o]}return[{type:"RAW",value:e},v.get(e)||[]]}function m(e){switch(e.type){case"HANDLER":return c.get(e.name).deserialize(e.value);case"RAW":return e.value}}function b(e,t,r,n){return new Promise((o=>{const i=new Array(4).fill(0).map((()=>Math.floor(Math.random()*Number.MAX_SAFE_INTEGER).toString(16))).join("-");t.set(i,o),e.start&&e.start(),e.postMessage(Object.assign({id:i},r),n)}))}function w(e){return w="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},w(e)}function E(){/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */E=function(){return t};var e,t={},r=Object.prototype,n=r.hasOwnProperty,o=Object.defineProperty||function(e,t,r){e[t]=r.value},i="function"==typeof Symbol?Symbol:{},a=i.iterator||"@@iterator",c=i.asyncIterator||"@@asyncIterator",s=i.toStringTag||"@@toStringTag";function u(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{u({},"")}catch(e){u=function(e,t,r){return e[t]=r}}function l(e,t,r,n){var i=t&&t.prototype instanceof g?t:g,a=Object.create(i.prototype),c=new F(n||[]);return o(a,"_invoke",{value:P(e,r,c)}),a}function f(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}t.wrap=l;var h="suspendedStart",p="suspendedYield",y="executing",d="completed",v={};function g(){}function m(){}function b(){}var x={};u(x,a,(function(){return this}));var S=Object.getPrototypeOf,O=S&&S(S(M([])));O&&O!==r&&n.call(O,a)&&(x=O);var L=b.prototype=g.prototype=Object.create(x);function j(e){["next","throw","return"].forEach((function(t){u(e,t,(function(e){return this._invoke(t,e)}))}))}function k(e,t){function r(o,i,a,c){var s=f(e[o],e,i);if("throw"!==s.type){var u=s.arg,l=u.value;return l&&"object"==w(l)&&n.call(l,"__await")?t.resolve(l.__await).then((function(e){r("next",e,a,c)}),(function(e){r("throw",e,a,c)})):t.resolve(l).then((function(e){u.value=e,a(u)}),(function(e){return r("throw",e,a,c)}))}c(s.arg)}var i;o(this,"_invoke",{value:function(e,n){function o(){return new t((function(t,o){r(e,n,t,o)}))}return i=i?i.then(o,o):o()}})}function P(t,r,n){var o=h;return function(i,a){if(o===y)throw Error("Generator is already running");if(o===d){if("throw"===i)throw a;return{value:e,done:!0}}for(n.method=i,n.arg=a;;){var c=n.delegate;if(c){var s=z(c,n);if(s){if(s===v)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(o===h)throw o=d,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);o=y;var u=f(t,r,n);if("normal"===u.type){if(o=n.done?d:p,u.arg===v)continue;return{value:u.arg,done:n.done}}"throw"===u.type&&(o=d,n.method="throw",n.arg=u.arg)}}}function z(t,r){var n=r.method,o=t.iterator[n];if(o===e)return r.delegate=null,"throw"===n&&t.iterator.return&&(r.method="return",r.arg=e,z(t,r),"throw"===r.method)||"return"!==n&&(r.method="throw",r.arg=new TypeError("The iterator does not provide a '"+n+"' method")),v;var i=f(o,t.iterator,r.arg);if("throw"===i.type)return r.method="throw",r.arg=i.arg,r.delegate=null,v;var a=i.arg;return a?a.done?(r[t.resultName]=a.value,r.next=t.nextLoc,"return"!==r.method&&(r.method="next",r.arg=e),r.delegate=null,v):a:(r.method="throw",r.arg=new TypeError("iterator result is not an object"),r.delegate=null,v)}function T(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function A(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function F(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(T,this),this.reset(!0)}function M(t){if(t||""===t){var r=t[a];if(r)return r.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var o=-1,i=function r(){for(;++o<t.length;)if(n.call(t,o))return r.value=t[o],r.done=!1,r;return r.value=e,r.done=!0,r};return i.next=i}}throw new TypeError(w(t)+" is not iterable")}return m.prototype=b,o(L,"constructor",{value:b,configurable:!0}),o(b,"constructor",{value:m,configurable:!0}),m.displayName=u(b,s,"GeneratorFunction"),t.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===m||"GeneratorFunction"===(t.displayName||t.name))},t.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,b):(e.__proto__=b,u(e,s,"GeneratorFunction")),e.prototype=Object.create(L),e},t.awrap=function(e){return{__await:e}},j(k.prototype),u(k.prototype,c,(function(){return this})),t.AsyncIterator=k,t.async=function(e,r,n,o,i){void 0===i&&(i=Promise);var a=new k(l(e,r,n,o),i);return t.isGeneratorFunction(r)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},j(L),u(L,s,"Generator"),u(L,a,(function(){return this})),u(L,"toString",(function(){return"[object Generator]"})),t.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},t.values=M,F.prototype={constructor:F,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=e,this.done=!1,this.delegate=null,this.method="next",this.arg=e,this.tryEntries.forEach(A),!t)for(var r in this)"t"===r.charAt(0)&&n.call(this,r)&&!isNaN(+r.slice(1))&&(this[r]=e)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var r=this;function o(n,o){return c.type="throw",c.arg=t,r.next=n,o&&(r.method="next",r.arg=e),!!o}for(var i=this.tryEntries.length-1;i>=0;--i){var a=this.tryEntries[i],c=a.completion;if("root"===a.tryLoc)return o("end");if(a.tryLoc<=this.prev){var s=n.call(a,"catchLoc"),u=n.call(a,"finallyLoc");if(s&&u){if(this.prev<a.catchLoc)return o(a.catchLoc,!0);if(this.prev<a.finallyLoc)return o(a.finallyLoc)}else if(s){if(this.prev<a.catchLoc)return o(a.catchLoc,!0)}else{if(!u)throw Error("try statement without catch or finally");if(this.prev<a.finallyLoc)return o(a.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r>=0;--r){var o=this.tryEntries[r];if(o.tryLoc<=this.prev&&n.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,v):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),v},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),A(r),v}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;A(r)}return o}}throw Error("illegal catch attempt")},delegateYield:function(t,r,n){return this.delegate={iterator:M(t),resultName:r,nextLoc:n},"next"===this.method&&(this.arg=e),v}},t}function x(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function S(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?x(Object(r),!0).forEach((function(t){O(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):x(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function O(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=w(e)||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=w(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==w(t)?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function L(e,t,r,n,o,i,a){try{var c=e[i](a),s=c.value}catch(e){return void r(e)}c.done?t(s):Promise.resolve(s).then(n,o)}return s({maxFetchSize:0,fetchedSize:0,setMaxFetchSize:function(e){e>0&&(this.maxFetchSize=e)},decreaseFetchedSize:function(e){e>0&&e<=this.fetchedSize&&(this.fetchedSize-=e)},stream:function(e){var t,r=this;return(t=E().mark((function t(){var n,o,i,a,c,s,u,l,f,h,p,y,d,v,g,m;return E().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return n=e.url,o=e.headers,i=e.useSharedArrayBuffer,a=new AbortController,c=null,s=null,t.prev=4,t.next=7,fetch(n,{headers:S({},o),signal:a.signal});case 7:if((l=t.sent).ok){t.next=10;break}throw new Error("HTTP error! status: ".concat(l.status));case 10:if(f=null===(u=l.body)||void 0===u?void 0:u.getReader()){t.next=13;break}throw new Error("Failed to get reader from response body");case 13:return p=!1,y=parseInt(l.headers.get("Content-Length")||"0",10),t.next=17,f.read();case 17:if(d=t.sent,p=d.done,d.value){t.next=21;break}throw new Error("The fetched chunks does not have value");case 21:if(p){t.next=49;break}if(v=d.value.length,!(r.maxFetchSize&&r.fetchedSize+v>r.maxFetchSize)){t.next=26;break}throw a.abort(),new Error("Maximum size(".concat(r.maxFetchSize,") for fetching files reached"));case 26:r.fetchedSize+=v,i?(c=new SharedArrayBuffer(y),s=new Uint8Array(c)):s=new Uint8Array(y),s.set(d.value),postMessage({url:n,position:v,fileArraybuffer:s});case 30:if(p){t.next=49;break}return t.next=33,f.read();case 33:if(!(h=t.sent).done){t.next=37;break}return p=!0,t.abrupt("continue",30);case 37:if(g=h.value,!(r.maxFetchSize&&r.fetchedSize+g.length>r.maxFetchSize)){t.next=43;break}throw c=null,s=null,a.abort(),new Error("Maximum size(".concat(r.maxFetchSize,") for fetching files reached"));case 43:r.fetchedSize+=g.length,s.set(g,v),v+=g.length,postMessage({isAppending:!0,url:n,position:v,chunk:i?null:g}),t.next=30;break;case 49:t.next=56;break;case 51:throw t.prev=51,t.t0=t.catch(4),m=new Error("fileStreaming.ts: "+t.t0.message||0),console.error(m.message,t.t0),m;case 56:return t.prev=56,c=null,s=null,a.abort(),t.finish(56);case 61:case"end":return t.stop()}}),t,null,[[4,51,56,61]])})),function(){var e=this,r=arguments;return new Promise((function(n,o){var i=t.apply(e,r);function a(e){L(i,n,o,a,c,"next",e)}function c(e){L(i,n,o,a,c,"throw",e)}a(void 0)}))})()}}),{}})()));
19
- //# sourceMappingURL=170.index.js.map
18
+ const e=Symbol("Comlink.proxy"),t=Symbol("Comlink.endpoint"),r=Symbol("Comlink.releaseProxy"),n=Symbol("Comlink.finalizer"),o=Symbol("Comlink.thrown"),i=e=>"object"==typeof e&&null!==e||"function"==typeof e,a={canHandle:t=>i(t)&&t[e],serialize(e){const{port1:t,port2:r}=new MessageChannel;return s(e,t),[r,[r]]},deserialize:e=>(e.start(),function(e,t){const r=new Map;return e.addEventListener("message",(function(e){const{data:t}=e;if(!t||!t.id)return;const n=r.get(t.id);if(n)try{n(t)}finally{r.delete(t.id)}})),y(e,r,[],t)}(e))},c=new Map([["proxy",a],["throw",{canHandle:e=>i(e)&&o in e,serialize({value:e}){let t;return t=e instanceof Error?{isError:!0,value:{message:e.message,name:e.name,stack:e.stack}}:{isError:!1,value:e},[t,[]]},deserialize(e){if(e.isError)throw Object.assign(new Error(e.value.message),e.value);throw e.value}}]]);function s(t,r=globalThis,i=["*"]){r.addEventListener("message",(function a(c){if(!c||!c.data)return;if(!function(e,t){for(const r of e){if(t===r||"*"===r)return!0;if(r instanceof RegExp&&r.test(t))return!0}return!1}(i,c.origin))return void console.warn(`Invalid origin '${c.origin}' for comlink proxy`);const{id:l,type:f,path:h}=Object.assign({path:[]},c.data),p=(c.data.argumentList||[]).map(m);let y;try{const r=h.slice(0,-1).reduce(((e,t)=>e[t]),t),n=h.reduce(((e,t)=>e[t]),t);switch(f){case"GET":y=n;break;case"SET":r[h.slice(-1)[0]]=m(c.data.value),y=!0;break;case"APPLY":y=n.apply(r,p);break;case"CONSTRUCT":y=function(t){return Object.assign(t,{[e]:!0})}(new n(...p));break;case"ENDPOINT":{const{port1:e,port2:r}=new MessageChannel;s(t,r),y=function(e,t){return v.set(e,t),e}(e,[e])}break;case"RELEASE":y=void 0;break;default:return}}catch(e){y={value:e,[o]:0}}Promise.resolve(y).catch((e=>({value:e,[o]:0}))).then((e=>{const[o,i]=g(e);r.postMessage(Object.assign(Object.assign({},o),{id:l}),i),"RELEASE"===f&&(r.removeEventListener("message",a),u(r),n in t&&"function"==typeof t[n]&&t[n]())})).catch((e=>{const[t,n]=g({value:new TypeError("Unserializable return value"),[o]:0});r.postMessage(Object.assign(Object.assign({},t),{id:l}),n)}))})),r.start&&r.start()}function u(e){(function(e){return"MessagePort"===e.constructor.name})(e)&&e.close()}function l(e){if(e)throw new Error("Proxy has been released and is not useable")}function f(e){return b(e,new Map,{type:"RELEASE"}).then((()=>{u(e)}))}const h=new WeakMap,p="FinalizationRegistry"in globalThis&&new FinalizationRegistry((e=>{const t=(h.get(e)||0)-1;h.set(e,t),0===t&&f(e)}));function y(e,n,o=[],i=function(){}){let a=!1;const c=new Proxy(i,{get(t,i){if(l(a),i===r)return()=>{!function(e){p&&p.unregister(e)}(c),f(e),n.clear(),a=!0};if("then"===i){if(0===o.length)return{then:()=>c};const t=b(e,n,{type:"GET",path:o.map((e=>e.toString()))}).then(m);return t.then.bind(t)}return y(e,n,[...o,i])},set(t,r,i){l(a);const[c,s]=g(i);return b(e,n,{type:"SET",path:[...o,r].map((e=>e.toString())),value:c},s).then(m)},apply(r,i,c){l(a);const s=o[o.length-1];if(s===t)return b(e,n,{type:"ENDPOINT"}).then(m);if("bind"===s)return y(e,n,o.slice(0,-1));const[u,f]=d(c);return b(e,n,{type:"APPLY",path:o.map((e=>e.toString())),argumentList:u},f).then(m)},construct(t,r){l(a);const[i,c]=d(r);return b(e,n,{type:"CONSTRUCT",path:o.map((e=>e.toString())),argumentList:i},c).then(m)}});return function(e,t){const r=(h.get(t)||0)+1;h.set(t,r),p&&p.register(e,t,e)}(c,e),c}function d(e){const t=e.map(g);return[t.map((e=>e[0])),(r=t.map((e=>e[1])),Array.prototype.concat.apply([],r))];var r}const v=new WeakMap;function g(e){for(const[t,r]of c)if(r.canHandle(e)){const[n,o]=r.serialize(e);return[{type:"HANDLER",name:t,value:n},o]}return[{type:"RAW",value:e},v.get(e)||[]]}function m(e){switch(e.type){case"HANDLER":return c.get(e.name).deserialize(e.value);case"RAW":return e.value}}function b(e,t,r,n){return new Promise((o=>{const i=new Array(4).fill(0).map((()=>Math.floor(Math.random()*Number.MAX_SAFE_INTEGER).toString(16))).join("-");t.set(i,o),e.start&&e.start(),e.postMessage(Object.assign({id:i},r),n)}))}function w(e){return w="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},w(e)}function E(){/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */E=function(){return t};var e,t={},r=Object.prototype,n=r.hasOwnProperty,o=Object.defineProperty||function(e,t,r){e[t]=r.value},i="function"==typeof Symbol?Symbol:{},a=i.iterator||"@@iterator",c=i.asyncIterator||"@@asyncIterator",s=i.toStringTag||"@@toStringTag";function u(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{u({},"")}catch(e){u=function(e,t,r){return e[t]=r}}function l(e,t,r,n){var i=t&&t.prototype instanceof g?t:g,a=Object.create(i.prototype),c=new M(n||[]);return o(a,"_invoke",{value:P(e,r,c)}),a}function f(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}t.wrap=l;var h="suspendedStart",p="suspendedYield",y="executing",d="completed",v={};function g(){}function m(){}function b(){}var x={};u(x,a,(function(){return this}));var S=Object.getPrototypeOf,O=S&&S(S(N([])));O&&O!==r&&n.call(O,a)&&(x=O);var L=b.prototype=g.prototype=Object.create(x);function j(e){["next","throw","return"].forEach((function(t){u(e,t,(function(e){return this._invoke(t,e)}))}))}function k(e,t){function r(o,i,a,c){var s=f(e[o],e,i);if("throw"!==s.type){var u=s.arg,l=u.value;return l&&"object"==w(l)&&n.call(l,"__await")?t.resolve(l.__await).then((function(e){r("next",e,a,c)}),(function(e){r("throw",e,a,c)})):t.resolve(l).then((function(e){u.value=e,a(u)}),(function(e){return r("throw",e,a,c)}))}c(s.arg)}var i;o(this,"_invoke",{value:function(e,n){function o(){return new t((function(t,o){r(e,n,t,o)}))}return i=i?i.then(o,o):o()}})}function P(t,r,n){var o=h;return function(i,a){if(o===y)throw Error("Generator is already running");if(o===d){if("throw"===i)throw a;return{value:e,done:!0}}for(n.method=i,n.arg=a;;){var c=n.delegate;if(c){var s=z(c,n);if(s){if(s===v)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(o===h)throw o=d,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);o=y;var u=f(t,r,n);if("normal"===u.type){if(o=n.done?d:p,u.arg===v)continue;return{value:u.arg,done:n.done}}"throw"===u.type&&(o=d,n.method="throw",n.arg=u.arg)}}}function z(t,r){var n=r.method,o=t.iterator[n];if(o===e)return r.delegate=null,"throw"===n&&t.iterator.return&&(r.method="return",r.arg=e,z(t,r),"throw"===r.method)||"return"!==n&&(r.method="throw",r.arg=new TypeError("The iterator does not provide a '"+n+"' method")),v;var i=f(o,t.iterator,r.arg);if("throw"===i.type)return r.method="throw",r.arg=i.arg,r.delegate=null,v;var a=i.arg;return a?a.done?(r[t.resultName]=a.value,r.next=t.nextLoc,"return"!==r.method&&(r.method="next",r.arg=e),r.delegate=null,v):a:(r.method="throw",r.arg=new TypeError("iterator result is not an object"),r.delegate=null,v)}function T(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function A(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function M(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(T,this),this.reset(!0)}function N(t){if(t||""===t){var r=t[a];if(r)return r.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var o=-1,i=function r(){for(;++o<t.length;)if(n.call(t,o))return r.value=t[o],r.done=!1,r;return r.value=e,r.done=!0,r};return i.next=i}}throw new TypeError(w(t)+" is not iterable")}return m.prototype=b,o(L,"constructor",{value:b,configurable:!0}),o(b,"constructor",{value:m,configurable:!0}),m.displayName=u(b,s,"GeneratorFunction"),t.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===m||"GeneratorFunction"===(t.displayName||t.name))},t.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,b):(e.__proto__=b,u(e,s,"GeneratorFunction")),e.prototype=Object.create(L),e},t.awrap=function(e){return{__await:e}},j(k.prototype),u(k.prototype,c,(function(){return this})),t.AsyncIterator=k,t.async=function(e,r,n,o,i){void 0===i&&(i=Promise);var a=new k(l(e,r,n,o),i);return t.isGeneratorFunction(r)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},j(L),u(L,s,"Generator"),u(L,a,(function(){return this})),u(L,"toString",(function(){return"[object Generator]"})),t.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},t.values=N,M.prototype={constructor:M,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=e,this.done=!1,this.delegate=null,this.method="next",this.arg=e,this.tryEntries.forEach(A),!t)for(var r in this)"t"===r.charAt(0)&&n.call(this,r)&&!isNaN(+r.slice(1))&&(this[r]=e)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var r=this;function o(n,o){return c.type="throw",c.arg=t,r.next=n,o&&(r.method="next",r.arg=e),!!o}for(var i=this.tryEntries.length-1;i>=0;--i){var a=this.tryEntries[i],c=a.completion;if("root"===a.tryLoc)return o("end");if(a.tryLoc<=this.prev){var s=n.call(a,"catchLoc"),u=n.call(a,"finallyLoc");if(s&&u){if(this.prev<a.catchLoc)return o(a.catchLoc,!0);if(this.prev<a.finallyLoc)return o(a.finallyLoc)}else if(s){if(this.prev<a.catchLoc)return o(a.catchLoc,!0)}else{if(!u)throw Error("try statement without catch or finally");if(this.prev<a.finallyLoc)return o(a.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r>=0;--r){var o=this.tryEntries[r];if(o.tryLoc<=this.prev&&n.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,v):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),v},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),A(r),v}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;A(r)}return o}}throw Error("illegal catch attempt")},delegateYield:function(t,r,n){return this.delegate={iterator:N(t),resultName:r,nextLoc:n},"next"===this.method&&(this.arg=e),v}},t}function x(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function S(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?x(Object(r),!0).forEach((function(t){O(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):x(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function O(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=w(e)||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=w(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==w(t)?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function L(e,t,r,n,o,i,a){try{var c=e[i](a),s=c.value}catch(e){return void r(e)}c.done?t(s):Promise.resolve(s).then(n,o)}return s({maxFetchSize:4294967296,fetchedSize:0,setMaxFetchSize:function(e){e>0&&(this.maxFetchSize=e)},decreaseFetchedSize:function(e){e>0&&e<=this.fetchedSize&&(this.fetchedSize-=e)},stream:function(e){var t,r=this;return(t=E().mark((function t(){var n,o,i,a,c,s,u,l,f,h,p,y,d,v,g,m;return E().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return n=e.url,o=e.headers,i=e.useSharedArrayBuffer,a=new AbortController,c=null,s=null,t.prev=4,t.next=7,fetch(n,{headers:S({},o),signal:a.signal});case 7:if((l=t.sent).ok){t.next=10;break}throw new Error("HTTP error! status: ".concat(l.status));case 10:if(f=null===(u=l.body)||void 0===u?void 0:u.getReader()){t.next=13;break}throw new Error("Failed to get reader from response body");case 13:return p=!1,y=parseInt(l.headers.get("Content-Length")||"0",10),t.next=17,f.read();case 17:if(d=t.sent,p=d.done,d.value){t.next=21;break}throw new Error("The fetched chunks does not have value");case 21:if(p){t.next=49;break}if(v=d.value.length,!(r.fetchedSize+v>r.maxFetchSize)){t.next=26;break}throw a.abort(),new Error("Maximum size(".concat(r.maxFetchSize,") for fetching files reached"));case 26:r.fetchedSize+=v,i?(c=new SharedArrayBuffer(y),s=new Uint8Array(c)):s=new Uint8Array(y),s.set(d.value),postMessage({url:n,position:v,fileArraybuffer:s});case 30:if(p){t.next=49;break}return t.next=33,f.read();case 33:if(!(h=t.sent).done){t.next=37;break}return p=!0,t.abrupt("continue",30);case 37:if(g=h.value,!(r.fetchedSize+g.length>r.maxFetchSize)){t.next=43;break}throw c=null,s=null,a.abort(),new Error("Maximum size(".concat(r.maxFetchSize,") for fetching files reached"));case 43:r.fetchedSize+=g.length,s.set(g,v),v+=g.length,postMessage({isAppending:!0,url:n,position:v,chunk:i?null:g}),t.next=30;break;case 49:t.next=56;break;case 51:throw t.prev=51,t.t0=t.catch(4),m=new Error("fileStreaming.ts: "+t.t0.message||0),console.error(m.message,t.t0),m;case 56:return t.prev=56,c=null,s=null,a.abort(),t.finish(56);case 61:case"end":return t.stop()}}),t,null,[[4,51,56,61]])})),function(){var e=this,r=arguments;return new Promise((function(n,o){var i=t.apply(e,r);function a(e){L(i,n,o,a,c,"next",e)}function c(e){L(i,n,o,a,c,"throw",e)}a(void 0)}))})()}}),{}})()));
19
+ //# sourceMappingURL=170.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"170.js","mappings":"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","sources":["webpack://cod-dicomweb-server/webpack/universalModuleDefinition","webpack://cod-dicomweb-server/./node_modules/comlink/dist/esm/comlink.mjs","webpack://cod-dicomweb-server/./src/webWorker/scripts/fileStreaming.ts","webpack://cod-dicomweb-server/./src/webWorker/workers/fileStreamingWorker.ts"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse {\n\t\tvar a = factory();\n\t\tfor(var i in a) (typeof exports === 'object' ? exports : root)[i] = a[i];\n\t}\n})(self, () => {\nreturn ","/**\n * @license\n * Copyright 2019 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\nconst proxyMarker = Symbol(\"Comlink.proxy\");\nconst createEndpoint = Symbol(\"Comlink.endpoint\");\nconst releaseProxy = Symbol(\"Comlink.releaseProxy\");\nconst finalizer = Symbol(\"Comlink.finalizer\");\nconst throwMarker = Symbol(\"Comlink.thrown\");\nconst isObject = (val) => (typeof val === \"object\" && val !== null) || typeof val === \"function\";\n/**\n * Internal transfer handle to handle objects marked to proxy.\n */\nconst proxyTransferHandler = {\n canHandle: (val) => isObject(val) && val[proxyMarker],\n serialize(obj) {\n const { port1, port2 } = new MessageChannel();\n expose(obj, port1);\n return [port2, [port2]];\n },\n deserialize(port) {\n port.start();\n return wrap(port);\n },\n};\n/**\n * Internal transfer handler to handle thrown exceptions.\n */\nconst throwTransferHandler = {\n canHandle: (value) => isObject(value) && throwMarker in value,\n serialize({ value }) {\n let serialized;\n if (value instanceof Error) {\n serialized = {\n isError: true,\n value: {\n message: value.message,\n name: value.name,\n stack: value.stack,\n },\n };\n }\n else {\n serialized = { isError: false, value };\n }\n return [serialized, []];\n },\n deserialize(serialized) {\n if (serialized.isError) {\n throw Object.assign(new Error(serialized.value.message), serialized.value);\n }\n throw serialized.value;\n },\n};\n/**\n * Allows customizing the serialization of certain values.\n */\nconst transferHandlers = new Map([\n [\"proxy\", proxyTransferHandler],\n [\"throw\", throwTransferHandler],\n]);\nfunction isAllowedOrigin(allowedOrigins, origin) {\n for (const allowedOrigin of allowedOrigins) {\n if (origin === allowedOrigin || allowedOrigin === \"*\") {\n return true;\n }\n if (allowedOrigin instanceof RegExp && allowedOrigin.test(origin)) {\n return true;\n }\n }\n return false;\n}\nfunction expose(obj, ep = globalThis, allowedOrigins = [\"*\"]) {\n ep.addEventListener(\"message\", function callback(ev) {\n if (!ev || !ev.data) {\n return;\n }\n if (!isAllowedOrigin(allowedOrigins, ev.origin)) {\n console.warn(`Invalid origin '${ev.origin}' for comlink proxy`);\n return;\n }\n const { id, type, path } = Object.assign({ path: [] }, ev.data);\n const argumentList = (ev.data.argumentList || []).map(fromWireValue);\n let returnValue;\n try {\n const parent = path.slice(0, -1).reduce((obj, prop) => obj[prop], obj);\n const rawValue = path.reduce((obj, prop) => obj[prop], obj);\n switch (type) {\n case \"GET\" /* MessageType.GET */:\n {\n returnValue = rawValue;\n }\n break;\n case \"SET\" /* MessageType.SET */:\n {\n parent[path.slice(-1)[0]] = fromWireValue(ev.data.value);\n returnValue = true;\n }\n break;\n case \"APPLY\" /* MessageType.APPLY */:\n {\n returnValue = rawValue.apply(parent, argumentList);\n }\n break;\n case \"CONSTRUCT\" /* MessageType.CONSTRUCT */:\n {\n const value = new rawValue(...argumentList);\n returnValue = proxy(value);\n }\n break;\n case \"ENDPOINT\" /* MessageType.ENDPOINT */:\n {\n const { port1, port2 } = new MessageChannel();\n expose(obj, port2);\n returnValue = transfer(port1, [port1]);\n }\n break;\n case \"RELEASE\" /* MessageType.RELEASE */:\n {\n returnValue = undefined;\n }\n break;\n default:\n return;\n }\n }\n catch (value) {\n returnValue = { value, [throwMarker]: 0 };\n }\n Promise.resolve(returnValue)\n .catch((value) => {\n return { value, [throwMarker]: 0 };\n })\n .then((returnValue) => {\n const [wireValue, transferables] = toWireValue(returnValue);\n ep.postMessage(Object.assign(Object.assign({}, wireValue), { id }), transferables);\n if (type === \"RELEASE\" /* MessageType.RELEASE */) {\n // detach and deactive after sending release response above.\n ep.removeEventListener(\"message\", callback);\n closeEndPoint(ep);\n if (finalizer in obj && typeof obj[finalizer] === \"function\") {\n obj[finalizer]();\n }\n }\n })\n .catch((error) => {\n // Send Serialization Error To Caller\n const [wireValue, transferables] = toWireValue({\n value: new TypeError(\"Unserializable return value\"),\n [throwMarker]: 0,\n });\n ep.postMessage(Object.assign(Object.assign({}, wireValue), { id }), transferables);\n });\n });\n if (ep.start) {\n ep.start();\n }\n}\nfunction isMessagePort(endpoint) {\n return endpoint.constructor.name === \"MessagePort\";\n}\nfunction closeEndPoint(endpoint) {\n if (isMessagePort(endpoint))\n endpoint.close();\n}\nfunction wrap(ep, target) {\n const pendingListeners = new Map();\n ep.addEventListener(\"message\", function handleMessage(ev) {\n const { data } = ev;\n if (!data || !data.id) {\n return;\n }\n const resolver = pendingListeners.get(data.id);\n if (!resolver) {\n return;\n }\n try {\n resolver(data);\n }\n finally {\n pendingListeners.delete(data.id);\n }\n });\n return createProxy(ep, pendingListeners, [], target);\n}\nfunction throwIfProxyReleased(isReleased) {\n if (isReleased) {\n throw new Error(\"Proxy has been released and is not useable\");\n }\n}\nfunction releaseEndpoint(ep) {\n return requestResponseMessage(ep, new Map(), {\n type: \"RELEASE\" /* MessageType.RELEASE */,\n }).then(() => {\n closeEndPoint(ep);\n });\n}\nconst proxyCounter = new WeakMap();\nconst proxyFinalizers = \"FinalizationRegistry\" in globalThis &&\n new FinalizationRegistry((ep) => {\n const newCount = (proxyCounter.get(ep) || 0) - 1;\n proxyCounter.set(ep, newCount);\n if (newCount === 0) {\n releaseEndpoint(ep);\n }\n });\nfunction registerProxy(proxy, ep) {\n const newCount = (proxyCounter.get(ep) || 0) + 1;\n proxyCounter.set(ep, newCount);\n if (proxyFinalizers) {\n proxyFinalizers.register(proxy, ep, proxy);\n }\n}\nfunction unregisterProxy(proxy) {\n if (proxyFinalizers) {\n proxyFinalizers.unregister(proxy);\n }\n}\nfunction createProxy(ep, pendingListeners, path = [], target = function () { }) {\n let isProxyReleased = false;\n const proxy = new Proxy(target, {\n get(_target, prop) {\n throwIfProxyReleased(isProxyReleased);\n if (prop === releaseProxy) {\n return () => {\n unregisterProxy(proxy);\n releaseEndpoint(ep);\n pendingListeners.clear();\n isProxyReleased = true;\n };\n }\n if (prop === \"then\") {\n if (path.length === 0) {\n return { then: () => proxy };\n }\n const r = requestResponseMessage(ep, pendingListeners, {\n type: \"GET\" /* MessageType.GET */,\n path: path.map((p) => p.toString()),\n }).then(fromWireValue);\n return r.then.bind(r);\n }\n return createProxy(ep, pendingListeners, [...path, prop]);\n },\n set(_target, prop, rawValue) {\n throwIfProxyReleased(isProxyReleased);\n // FIXME: ES6 Proxy Handler `set` methods are supposed to return a\n // boolean. To show good will, we return true asynchronously ¯\\_(ツ)_/¯\n const [value, transferables] = toWireValue(rawValue);\n return requestResponseMessage(ep, pendingListeners, {\n type: \"SET\" /* MessageType.SET */,\n path: [...path, prop].map((p) => p.toString()),\n value,\n }, transferables).then(fromWireValue);\n },\n apply(_target, _thisArg, rawArgumentList) {\n throwIfProxyReleased(isProxyReleased);\n const last = path[path.length - 1];\n if (last === createEndpoint) {\n return requestResponseMessage(ep, pendingListeners, {\n type: \"ENDPOINT\" /* MessageType.ENDPOINT */,\n }).then(fromWireValue);\n }\n // We just pretend that `bind()` didn’t happen.\n if (last === \"bind\") {\n return createProxy(ep, pendingListeners, path.slice(0, -1));\n }\n const [argumentList, transferables] = processArguments(rawArgumentList);\n return requestResponseMessage(ep, pendingListeners, {\n type: \"APPLY\" /* MessageType.APPLY */,\n path: path.map((p) => p.toString()),\n argumentList,\n }, transferables).then(fromWireValue);\n },\n construct(_target, rawArgumentList) {\n throwIfProxyReleased(isProxyReleased);\n const [argumentList, transferables] = processArguments(rawArgumentList);\n return requestResponseMessage(ep, pendingListeners, {\n type: \"CONSTRUCT\" /* MessageType.CONSTRUCT */,\n path: path.map((p) => p.toString()),\n argumentList,\n }, transferables).then(fromWireValue);\n },\n });\n registerProxy(proxy, ep);\n return proxy;\n}\nfunction myFlat(arr) {\n return Array.prototype.concat.apply([], arr);\n}\nfunction processArguments(argumentList) {\n const processed = argumentList.map(toWireValue);\n return [processed.map((v) => v[0]), myFlat(processed.map((v) => v[1]))];\n}\nconst transferCache = new WeakMap();\nfunction transfer(obj, transfers) {\n transferCache.set(obj, transfers);\n return obj;\n}\nfunction proxy(obj) {\n return Object.assign(obj, { [proxyMarker]: true });\n}\nfunction windowEndpoint(w, context = globalThis, targetOrigin = \"*\") {\n return {\n postMessage: (msg, transferables) => w.postMessage(msg, targetOrigin, transferables),\n addEventListener: context.addEventListener.bind(context),\n removeEventListener: context.removeEventListener.bind(context),\n };\n}\nfunction toWireValue(value) {\n for (const [name, handler] of transferHandlers) {\n if (handler.canHandle(value)) {\n const [serializedValue, transferables] = handler.serialize(value);\n return [\n {\n type: \"HANDLER\" /* WireValueType.HANDLER */,\n name,\n value: serializedValue,\n },\n transferables,\n ];\n }\n }\n return [\n {\n type: \"RAW\" /* WireValueType.RAW */,\n value,\n },\n transferCache.get(value) || [],\n ];\n}\nfunction fromWireValue(value) {\n switch (value.type) {\n case \"HANDLER\" /* WireValueType.HANDLER */:\n return transferHandlers.get(value.name).deserialize(value.value);\n case \"RAW\" /* WireValueType.RAW */:\n return value.value;\n }\n}\nfunction requestResponseMessage(ep, pendingListeners, msg, transfers) {\n return new Promise((resolve) => {\n const id = generateUUID();\n pendingListeners.set(id, resolve);\n if (ep.start) {\n ep.start();\n }\n ep.postMessage(Object.assign({ id }, msg), transfers);\n });\n}\nfunction generateUUID() {\n return new Array(4)\n .fill(0)\n .map(() => Math.floor(Math.random() * Number.MAX_SAFE_INTEGER).toString(16))\n .join(\"-\");\n}\n\nexport { createEndpoint, expose, finalizer, proxy, proxyMarker, releaseProxy, transfer, transferHandlers, windowEndpoint, wrap };\n//# sourceMappingURL=comlink.mjs.map\n","const fileStreaming = {\n maxFetchSize: 4 * 1024 * 1024 * 1024, // 4GB\n fetchedSize: 0,\n\n setMaxFetchSize(size: number): void {\n if (size > 0) {\n this.maxFetchSize = size;\n }\n },\n\n decreaseFetchedSize(size: number): void {\n if (size > 0 && size <= this.fetchedSize) {\n this.fetchedSize -= size;\n }\n },\n\n async stream(args: { url: string; headers?: Record<string, string>; useSharedArrayBuffer?: boolean }): Promise<void> {\n const { url, headers, useSharedArrayBuffer } = args;\n const controller = new AbortController();\n let sharedArraybuffer: SharedArrayBuffer | null = null;\n let fileArraybuffer: Uint8Array | null = null;\n\n try {\n const response = await fetch(url, {\n headers: { ...headers },\n signal: controller.signal\n });\n\n if (!response.ok) {\n throw new Error(`HTTP error! status: ${response.status}`);\n }\n\n const reader = response.body?.getReader();\n if (!reader) {\n throw new Error('Failed to get reader from response body');\n }\n\n let result: ReadableStreamReadResult<Uint8Array>;\n let completed = false;\n const totalLength = parseInt(response.headers.get('Content-Length') || '0', 10);\n const firstChunk = await reader.read();\n completed = firstChunk.done;\n\n if (!firstChunk.value) {\n throw new Error('The fetched chunks does not have value');\n }\n\n if (!completed) {\n let position = firstChunk.value.length;\n\n if (this.fetchedSize + position > this.maxFetchSize) {\n controller.abort();\n throw new Error(`Maximum size(${this.maxFetchSize}) for fetching files reached`);\n }\n\n this.fetchedSize += position;\n\n if (useSharedArrayBuffer) {\n sharedArraybuffer = new SharedArrayBuffer(totalLength);\n fileArraybuffer = new Uint8Array(sharedArraybuffer);\n } else {\n fileArraybuffer = new Uint8Array(totalLength);\n }\n fileArraybuffer.set(firstChunk.value);\n postMessage({ url, position, fileArraybuffer });\n\n while (!completed) {\n result = await reader.read();\n\n if (result.done) {\n completed = true;\n continue;\n }\n\n const chunk = result.value;\n\n if (this.fetchedSize + chunk.length > this.maxFetchSize) {\n sharedArraybuffer = null;\n fileArraybuffer = null;\n controller.abort();\n throw new Error(`Maximum size(${this.maxFetchSize}) for fetching files reached`);\n }\n\n this.fetchedSize += chunk.length;\n fileArraybuffer.set(chunk, position);\n position += chunk.length;\n\n postMessage({\n isAppending: true,\n url,\n position: position,\n chunk: !useSharedArrayBuffer ? chunk : null\n });\n }\n }\n } catch (error) {\n const streamingError = new Error('fileStreaming.ts: ' + (error as Error).message || 'An error occured when streaming');\n console.error(streamingError.message, error);\n throw streamingError;\n } finally {\n sharedArraybuffer = null;\n fileArraybuffer = null;\n controller.abort();\n }\n }\n};\n\nexport default fileStreaming;\n","import { expose } from 'comlink';\nimport fileStreaming from '../scripts/fileStreaming';\n\nexpose(fileStreaming);\n"],"names":["root","factory","exports","module","define","amd","a","i","self","proxyMarker","Symbol","createEndpoint","releaseProxy","finalizer","throwMarker","isObject","val","proxyTransferHandler","canHandle","serialize","obj","port1","port2","MessageChannel","expose","deserialize","port","start","ep","target","pendingListeners","Map","addEventListener","ev","data","id","resolver","get","delete","createProxy","wrap","transferHandlers","value","serialized","Error","isError","message","name","stack","Object","assign","globalThis","allowedOrigins","callback","origin","allowedOrigin","RegExp","test","isAllowedOrigin","console","warn","type","path","argumentList","map","fromWireValue","returnValue","parent","slice","reduce","prop","rawValue","apply","proxy","transfers","transferCache","set","transfer","undefined","Promise","resolve","catch","then","wireValue","transferables","toWireValue","postMessage","removeEventListener","closeEndPoint","error","TypeError","endpoint","constructor","isMessagePort","close","throwIfProxyReleased","isReleased","releaseEndpoint","requestResponseMessage","proxyCounter","WeakMap","proxyFinalizers","FinalizationRegistry","newCount","isProxyReleased","Proxy","_target","unregister","unregisterProxy","clear","length","r","p","toString","bind","_thisArg","rawArgumentList","last","processArguments","construct","register","registerProxy","processed","v","arr","Array","prototype","concat","handler","serializedValue","msg","fill","Math","floor","random","Number","MAX_SAFE_INTEGER","join","_regeneratorRuntime","e","t","n","hasOwnProperty","o","defineProperty","iterator","c","asyncIterator","u","toStringTag","enumerable","configurable","writable","Generator","create","Context","makeInvokeMethod","tryCatch","arg","call","h","l","f","s","y","GeneratorFunction","GeneratorFunctionPrototype","d","getPrototypeOf","values","g","defineIteratorMethods","forEach","_invoke","AsyncIterator","invoke","_typeof","__await","callInvokeWithMethodAndArg","done","method","delegate","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","resultName","next","nextLoc","pushTryEntry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","push","resetTryEntry","completion","reset","isNaN","displayName","isGeneratorFunction","mark","setPrototypeOf","__proto__","awrap","async","keys","reverse","pop","prev","charAt","stop","rval","handle","complete","finish","delegateYield","ownKeys","getOwnPropertySymbols","filter","getOwnPropertyDescriptor","_objectSpread","arguments","_defineProperty","getOwnPropertyDescriptors","defineProperties","toPrimitive","String","_toPrimitive","_toPropertyKey","asyncGeneratorStep","maxFetchSize","fetchedSize","setMaxFetchSize","size","this","decreaseFetchedSize","stream","args","_this","_callee","url","headers","useSharedArrayBuffer","controller","sharedArraybuffer","fileArraybuffer","_response$body","response","reader","result","completed","totalLength","firstChunk","position","chunk","streamingError","_context","AbortController","fetch","signal","ok","status","body","getReader","parseInt","read","abort","SharedArrayBuffer","Uint8Array","isAppending","t0","_next","_throw"],"sourceRoot":""}