document-model 1.0.21 → 1.0.22

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.
Files changed (183) hide show
  1. package/dist/browser/document-model.cjs +1 -0
  2. package/dist/browser/document-model.d.ts +1 -0
  3. package/dist/browser/document-model.js +16 -0
  4. package/dist/browser/document.cjs +1 -0
  5. package/dist/browser/document.d.ts +1 -0
  6. package/dist/browser/document.js +14 -0
  7. package/dist/browser/index.cjs +1 -0
  8. package/dist/browser/index.d.ts +3 -0
  9. package/dist/browser/index.js +17 -0
  10. package/dist/browser/internal/index-BGvdUwMj.js +1 -0
  11. package/dist/browser/internal/index-ZaSXpgfR.js +22 -0
  12. package/dist/browser/internal/index-k0_xGFJa.js +1926 -0
  13. package/dist/browser/internal/index-vHDbgY8i.js +34 -0
  14. package/dist/browser/internal/object-fIfH8K9b.js +6 -0
  15. package/dist/browser/internal/object-wtPuW7QY.js +1781 -0
  16. package/dist/browser/jest.config.d.ts +8 -0
  17. package/dist/browser/src/document/actions/creators.d.ts +46 -0
  18. package/dist/browser/src/document/actions/index.d.ts +10 -0
  19. package/dist/browser/src/document/actions/types.d.ts +8 -0
  20. package/dist/browser/src/document/index.d.ts +6 -0
  21. package/dist/browser/src/document/object.d.ts +391 -0
  22. package/dist/browser/src/document/reducer.d.ts +16 -0
  23. package/dist/browser/src/document/schema/index.d.ts +2 -0
  24. package/dist/browser/src/document/schema/types.d.ts +174 -0
  25. package/dist/browser/src/document/schema/zod.d.ts +113 -0
  26. package/dist/browser/src/document/signal.d.ts +22 -0
  27. package/dist/browser/src/document/types.d.ts +190 -0
  28. package/dist/browser/src/document/utils/base.d.ts +61 -0
  29. package/dist/browser/src/document/utils/file.d.ts +47 -0
  30. package/dist/browser/src/document/utils/index.d.ts +2 -0
  31. package/dist/browser/src/document/utils/node.d.ts +9 -0
  32. package/dist/browser/src/document-model/custom/reducers/header.d.ts +2 -0
  33. package/dist/browser/src/document-model/custom/reducers/module.d.ts +2 -0
  34. package/dist/browser/src/document-model/custom/reducers/operation-error.d.ts +2 -0
  35. package/dist/browser/src/document-model/custom/reducers/operation-example.d.ts +2 -0
  36. package/dist/browser/src/document-model/custom/reducers/operation.d.ts +2 -0
  37. package/dist/browser/src/document-model/custom/reducers/state.d.ts +2 -0
  38. package/dist/browser/src/document-model/custom/reducers/versioning.d.ts +7 -0
  39. package/dist/browser/src/document-model/custom/utils.d.ts +1 -0
  40. package/dist/browser/src/document-model/gen/actions.d.ts +15 -0
  41. package/dist/browser/src/document-model/gen/creators.d.ts +7 -0
  42. package/dist/browser/src/document-model/gen/document-model.d.ts +2 -0
  43. package/dist/browser/src/document-model/gen/header/actions.d.ts +9 -0
  44. package/dist/browser/src/document-model/gen/header/creators.d.ts +8 -0
  45. package/dist/browser/src/document-model/gen/header/object.d.ts +11 -0
  46. package/dist/browser/src/document-model/gen/header/operations.d.ts +10 -0
  47. package/dist/browser/src/document-model/gen/index.d.ts +5 -0
  48. package/dist/browser/src/document-model/gen/module/actions.d.ts +8 -0
  49. package/dist/browser/src/document-model/gen/module/creators.d.ts +7 -0
  50. package/dist/browser/src/document-model/gen/module/object.d.ts +10 -0
  51. package/dist/browser/src/document-model/gen/module/operations.d.ts +9 -0
  52. package/dist/browser/src/document-model/gen/object.d.ts +28 -0
  53. package/dist/browser/src/document-model/gen/operation/actions.d.ts +13 -0
  54. package/dist/browser/src/document-model/gen/operation/creators.d.ts +12 -0
  55. package/dist/browser/src/document-model/gen/operation/object.d.ts +15 -0
  56. package/dist/browser/src/document-model/gen/operation/operations.d.ts +14 -0
  57. package/dist/browser/src/document-model/gen/operation-error/actions.d.ts +10 -0
  58. package/dist/browser/src/document-model/gen/operation-error/creators.d.ts +9 -0
  59. package/dist/browser/src/document-model/gen/operation-error/object.d.ts +12 -0
  60. package/dist/browser/src/document-model/gen/operation-error/operations.d.ts +11 -0
  61. package/dist/browser/src/document-model/gen/operation-example/actions.d.ts +7 -0
  62. package/dist/browser/src/document-model/gen/operation-example/creators.d.ts +6 -0
  63. package/dist/browser/src/document-model/gen/operation-example/object.d.ts +9 -0
  64. package/dist/browser/src/document-model/gen/operation-example/operations.d.ts +8 -0
  65. package/dist/browser/src/document-model/gen/reducer.d.ts +3 -0
  66. package/dist/browser/src/document-model/gen/schema/index.d.ts +2 -0
  67. package/dist/browser/src/document-model/gen/schema/types.d.ts +453 -0
  68. package/dist/browser/src/document-model/gen/schema/zod.d.ts +453 -0
  69. package/dist/browser/src/document-model/gen/state/actions.d.ts +9 -0
  70. package/dist/browser/src/document-model/gen/state/creators.d.ts +8 -0
  71. package/dist/browser/src/document-model/gen/state/object.d.ts +11 -0
  72. package/dist/browser/src/document-model/gen/state/operations.d.ts +10 -0
  73. package/dist/browser/src/document-model/gen/types.d.ts +8 -0
  74. package/dist/browser/src/document-model/gen/utils.d.ts +6 -0
  75. package/dist/browser/src/document-model/gen/versioning/actions.d.ts +8 -0
  76. package/dist/browser/src/document-model/gen/versioning/creators.d.ts +7 -0
  77. package/dist/browser/src/document-model/gen/versioning/object.d.ts +10 -0
  78. package/dist/browser/src/document-model/gen/versioning/operations.d.ts +9 -0
  79. package/dist/browser/src/document-model/index.d.ts +74 -0
  80. package/dist/browser/src/index.d.ts +25 -0
  81. package/dist/browser/test/document/local.test.d.ts +1 -0
  82. package/dist/browser/test/document/object.test.d.ts +1 -0
  83. package/dist/browser/test/document/prune.test.d.ts +1 -0
  84. package/dist/browser/test/document/redo.test.d.ts +1 -0
  85. package/dist/browser/test/document/reducer.test.d.ts +1 -0
  86. package/dist/browser/test/document/undo.test.d.ts +1 -0
  87. package/dist/browser/test/document/utils.test.d.ts +1 -0
  88. package/dist/browser/test/document-model/object.test.d.ts +1 -0
  89. package/dist/browser/test/document-model/zip.test.d.ts +1 -0
  90. package/dist/browser/test/helpers.d.ts +29 -0
  91. package/dist/browser/vite.config.d.ts +2 -0
  92. package/dist/node/document-model.cjs +1 -0
  93. package/dist/node/document-model.d.ts +1 -0
  94. package/dist/node/document-model.js +20 -0
  95. package/dist/node/document.cjs +1 -0
  96. package/dist/node/document.d.ts +1 -0
  97. package/dist/node/document.js +18 -0
  98. package/dist/node/index.cjs +1 -0
  99. package/dist/node/index.d.ts +3 -0
  100. package/dist/node/index.js +21 -0
  101. package/dist/node/internal/index-3_D7m254.js +34 -0
  102. package/dist/node/internal/index-ffEJwj4v.js +22 -0
  103. package/dist/node/internal/index-frYzO4l6.js +1 -0
  104. package/dist/node/internal/index-vqhz-N10.js +1930 -0
  105. package/dist/node/internal/object-Vf10stKL.js +1 -0
  106. package/dist/node/internal/object-yzJ3jRpE.js +783 -0
  107. package/dist/node/jest.config.d.ts +8 -0
  108. package/dist/node/src/document/actions/creators.d.ts +46 -0
  109. package/dist/node/src/document/actions/index.d.ts +10 -0
  110. package/dist/node/src/document/actions/types.d.ts +8 -0
  111. package/dist/node/src/document/index.d.ts +6 -0
  112. package/dist/node/src/document/object.d.ts +391 -0
  113. package/dist/node/src/document/reducer.d.ts +16 -0
  114. package/dist/node/src/document/schema/index.d.ts +2 -0
  115. package/dist/node/src/document/schema/types.d.ts +174 -0
  116. package/dist/node/src/document/schema/zod.d.ts +113 -0
  117. package/dist/node/src/document/signal.d.ts +22 -0
  118. package/dist/node/src/document/types.d.ts +190 -0
  119. package/dist/node/src/document/utils/base.d.ts +61 -0
  120. package/dist/node/src/document/utils/file.d.ts +47 -0
  121. package/dist/node/src/document/utils/index.d.ts +2 -0
  122. package/dist/node/src/document/utils/node.d.ts +9 -0
  123. package/dist/node/src/document-model/custom/reducers/header.d.ts +2 -0
  124. package/dist/node/src/document-model/custom/reducers/module.d.ts +2 -0
  125. package/dist/node/src/document-model/custom/reducers/operation-error.d.ts +2 -0
  126. package/dist/node/src/document-model/custom/reducers/operation-example.d.ts +2 -0
  127. package/dist/node/src/document-model/custom/reducers/operation.d.ts +2 -0
  128. package/dist/node/src/document-model/custom/reducers/state.d.ts +2 -0
  129. package/dist/node/src/document-model/custom/reducers/versioning.d.ts +7 -0
  130. package/dist/node/src/document-model/custom/utils.d.ts +1 -0
  131. package/dist/node/src/document-model/gen/actions.d.ts +15 -0
  132. package/dist/node/src/document-model/gen/creators.d.ts +7 -0
  133. package/dist/node/src/document-model/gen/document-model.d.ts +2 -0
  134. package/dist/node/src/document-model/gen/header/actions.d.ts +9 -0
  135. package/dist/node/src/document-model/gen/header/creators.d.ts +8 -0
  136. package/dist/node/src/document-model/gen/header/object.d.ts +11 -0
  137. package/dist/node/src/document-model/gen/header/operations.d.ts +10 -0
  138. package/dist/node/src/document-model/gen/index.d.ts +5 -0
  139. package/dist/node/src/document-model/gen/module/actions.d.ts +8 -0
  140. package/dist/node/src/document-model/gen/module/creators.d.ts +7 -0
  141. package/dist/node/src/document-model/gen/module/object.d.ts +10 -0
  142. package/dist/node/src/document-model/gen/module/operations.d.ts +9 -0
  143. package/dist/node/src/document-model/gen/object.d.ts +28 -0
  144. package/dist/node/src/document-model/gen/operation/actions.d.ts +13 -0
  145. package/dist/node/src/document-model/gen/operation/creators.d.ts +12 -0
  146. package/dist/node/src/document-model/gen/operation/object.d.ts +15 -0
  147. package/dist/node/src/document-model/gen/operation/operations.d.ts +14 -0
  148. package/dist/node/src/document-model/gen/operation-error/actions.d.ts +10 -0
  149. package/dist/node/src/document-model/gen/operation-error/creators.d.ts +9 -0
  150. package/dist/node/src/document-model/gen/operation-error/object.d.ts +12 -0
  151. package/dist/node/src/document-model/gen/operation-error/operations.d.ts +11 -0
  152. package/dist/node/src/document-model/gen/operation-example/actions.d.ts +7 -0
  153. package/dist/node/src/document-model/gen/operation-example/creators.d.ts +6 -0
  154. package/dist/node/src/document-model/gen/operation-example/object.d.ts +9 -0
  155. package/dist/node/src/document-model/gen/operation-example/operations.d.ts +8 -0
  156. package/dist/node/src/document-model/gen/reducer.d.ts +3 -0
  157. package/dist/node/src/document-model/gen/schema/index.d.ts +2 -0
  158. package/dist/node/src/document-model/gen/schema/types.d.ts +453 -0
  159. package/dist/node/src/document-model/gen/schema/zod.d.ts +453 -0
  160. package/dist/node/src/document-model/gen/state/actions.d.ts +9 -0
  161. package/dist/node/src/document-model/gen/state/creators.d.ts +8 -0
  162. package/dist/node/src/document-model/gen/state/object.d.ts +11 -0
  163. package/dist/node/src/document-model/gen/state/operations.d.ts +10 -0
  164. package/dist/node/src/document-model/gen/types.d.ts +8 -0
  165. package/dist/node/src/document-model/gen/utils.d.ts +6 -0
  166. package/dist/node/src/document-model/gen/versioning/actions.d.ts +8 -0
  167. package/dist/node/src/document-model/gen/versioning/creators.d.ts +7 -0
  168. package/dist/node/src/document-model/gen/versioning/object.d.ts +10 -0
  169. package/dist/node/src/document-model/gen/versioning/operations.d.ts +9 -0
  170. package/dist/node/src/document-model/index.d.ts +74 -0
  171. package/dist/node/src/index.d.ts +25 -0
  172. package/dist/node/test/document/local.test.d.ts +1 -0
  173. package/dist/node/test/document/object.test.d.ts +1 -0
  174. package/dist/node/test/document/prune.test.d.ts +1 -0
  175. package/dist/node/test/document/redo.test.d.ts +1 -0
  176. package/dist/node/test/document/reducer.test.d.ts +1 -0
  177. package/dist/node/test/document/undo.test.d.ts +1 -0
  178. package/dist/node/test/document/utils.test.d.ts +1 -0
  179. package/dist/node/test/document-model/object.test.d.ts +1 -0
  180. package/dist/node/test/document-model/zip.test.d.ts +1 -0
  181. package/dist/node/test/helpers.d.ts +29 -0
  182. package/dist/node/vite.config.d.ts +2 -0
  183. package/package.json +1 -1
@@ -0,0 +1,34 @@
1
+ import { f as e, b as a, a as s, c as t, j as o, k as r, m as n, n as l, o as c, i, l as u, e as d, r as p, p as m, q as y, s as b, d as _, t as g, B as F, h as O, g as f, u as D, z as h } from "./object-wtPuW7QY.js";
2
+ const j = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
3
+ __proto__: null,
4
+ createAction: e,
5
+ createDocument: a,
6
+ createExtendedState: s,
7
+ createReducer: t,
8
+ createZip: o,
9
+ getLocalFile: r,
10
+ getRemoteFile: n,
11
+ hashDocument: l,
12
+ hashKey: c,
13
+ isBaseAction: i,
14
+ loadFromFile: u,
15
+ loadFromInput: d,
16
+ readOnly: p,
17
+ replayDocument: m,
18
+ replayOperations: y,
19
+ saveToFile: b,
20
+ saveToFileHandle: _,
21
+ sortOperations: g
22
+ }, Symbol.toStringTag, { value: "Module" })), S = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
23
+ __proto__: null,
24
+ BaseDocument: F,
25
+ actions: O,
26
+ applyMixins: f,
27
+ baseReducer: D,
28
+ utils: j,
29
+ z: h
30
+ }, Symbol.toStringTag, { value: "Module" }));
31
+ export {
32
+ S as D,
33
+ j as i
34
+ };
@@ -0,0 +1,6 @@
1
+ "use strict";var jr=Object.defineProperty;var Ir=(i,a,p)=>a in i?jr(i,a,{enumerable:!0,configurable:!0,writable:!0,value:p}):i[a]=p;var Z=(i,a,p)=>(Ir(i,typeof a!="symbol"?a+"":a,p),p);const Ur=require("json-stringify-deterministic"),M=require("immer"),d=require("zod"),Ut=require("jszip"),Tt=i=>i!=null,Tr=d.z.any().refine(i=>Tt(i)),kt=d.z.enum(["LOAD_STATE"]),zt=d.z.enum(["PRUNE"]),Dt=d.z.enum(["REDO"]),Ot=d.z.enum(["SET_NAME"]),Nt=d.z.enum(["UNDO"]);function kr(){return d.z.object({__typename:d.z.literal("Action").optional(),type:d.z.string()})}function L(){return d.z.literal("global").or(d.z.literal("local"))}function Rt(){return d.z.union([Mt(),Lt(),qt(),$t(),Jt()])}function zr(){return d.z.object({__typename:d.z.literal("DocumentFile").optional(),data:d.z.string(),extension:d.z.string().nullable(),fileName:d.z.string().nullable(),mimeType:d.z.string()})}function Mt(){return d.z.object({input:d.z.lazy(()=>pt()),type:kt,scope:L()})}function pt(){return d.z.object({operations:d.z.number(),state:d.z.lazy(()=>Ct())})}function Ct(){return d.z.object({data:d.z.unknown().nullish(),name:d.z.string()})}function Dr(){return d.z.object({__typename:d.z.literal("Operation").optional(),hash:d.z.string(),index:d.z.number(),timestamp:d.z.string().datetime(),type:d.z.string()})}function Lt(){return d.z.object({input:d.z.lazy(()=>st()),type:zt,scope:L()})}function st(){return d.z.object({end:d.z.number().nullish(),start:d.z.number().nullish()})}const ct=d.z.number;function qt(){return d.z.object({input:ct(),type:Dt,scope:L()})}const lt=d.z.string;function $t(){return d.z.object({input:lt(),type:Ot,scope:d.z.literal("global")})}function Or(){return d.z.object({__typename:d.z.literal("SetNameOperation").optional(),hash:d.z.string(),index:d.z.number(),input:d.z.string(),timestamp:d.z.string().datetime(),type:d.z.string()})}const ut=d.z.number;function Jt(){return d.z.object({input:ut(),type:Nt,scope:L()})}const Nr=Object.freeze(Object.defineProperty({__proto__:null,ActionSchema:kr,BaseActionSchema:Rt,DocumentFileSchema:zr,LoadStateActionInputSchema:pt,LoadStateActionSchema:Mt,LoadStateActionStateInputSchema:Ct,Load_StateSchema:kt,OperationSchema:Dr,OperationScopeSchema:L,PruneActionInputSchema:st,PruneActionSchema:Lt,PruneSchema:zt,RedoActionInputSchema:ct,RedoActionSchema:qt,RedoSchema:Dt,SetNameActionInputSchema:lt,SetNameActionSchema:$t,SetNameOperationSchema:Or,Set_NameSchema:Ot,UndoActionInputSchema:ut,UndoActionSchema:Jt,UndoSchema:Nt,definedNonNullAnySchema:Tr,isDefinedNonNullAny:Tt},Symbol.toStringTag,{value:"Module"}));function Rr(i,a){return{...i,name:a}}function Mr(i,a,p){const{scope:c,input:u}=a,f=i.revision[a.scope],l=Math.min(u,f),o=i.operations[c].slice(0,f-l);return{...C(i.initialState,{...i.operations,[c]:o},p),operations:i.operations,revision:{...i.revision,[c]:i.revision[c]-l}}}function Cr(i,a,p){const{scope:c,input:u}=a,f=i.operations[c].length-i.revision[c];if(!f)throw new Error("There is no UNDO operation to REDO");const l=u<f?u:f,o=i.operations[c].slice(0,i.revision[c]+l);return{...C(i.initialState,{...i.operations,[c]:o},p),operations:i.operations,revision:{...i.revision,[c]:i.revision[c]+l}}}function Lr(i,a,p){const{scope:c}=a,u=i.operations[c];let{input:{start:f,end:l}}=a;f=f||0,l=l||u.length;const o=u.slice(f,l),x=u.slice(0,f),g=u.slice(l),v=C(i.initialState,{...i.operations,[c]:x.concat(o)},p),{name:y,state:j}=v,_=x.length,z=x.length?x[x.length-1].timestamp:g.length?g[0].timestamp:new Date().toISOString();return C(i.initialState,{...i.operations,[c]:[...x,{...yt({name:y,state:j},o.length),timestamp:z,index:_,hash:dt({state:j},"global")},...g.map((U,V)=>({...U,index:_+V+1}))]},p)}function qr(i,a){return{...i,name:a.name,state:a.state??{global:{},local:{}}}}const Pt="SET_NAME",q="UNDO",$="REDO",J="PRUNE",Wt="LOAD_STATE";function Ht(i){return i&&i.__esModule&&Object.prototype.hasOwnProperty.call(i,"default")?i.default:i}function K(){this._types=Object.create(null),this._extensions=Object.create(null);for(let i=0;i<arguments.length;i++)this.define(arguments[i]);this.define=this.define.bind(this),this.getType=this.getType.bind(this),this.getExtension=this.getExtension.bind(this)}K.prototype.define=function(i,a){for(let p in i){let c=i[p].map(function(u){return u.toLowerCase()});p=p.toLowerCase();for(let u=0;u<c.length;u++){const f=c[u];if(f[0]!=="*"){if(!a&&f in this._types)throw new Error('Attempt to change mapping for "'+f+'" extension from "'+this._types[f]+'" to "'+p+'". Pass `force=true` to allow this, otherwise remove "'+f+'" from the list of extensions for "'+p+'".');this._types[f]=p}}if(a||!this._extensions[p]){const u=c[0];this._extensions[p]=u[0]!=="*"?u:u.substr(1)}}};K.prototype.getType=function(i){i=String(i);let a=i.replace(/^.*[/\\]/,"").toLowerCase(),p=a.replace(/^.*\./,"").toLowerCase(),c=a.length<i.length;return(p.length<a.length-1||!c)&&this._types[p]||null};K.prototype.getExtension=function(i){return i=/^\s*([^;\s]*)/.test(i)&&RegExp.$1,i&&this._extensions[i.toLowerCase()]||null};var $r=K,Jr={"application/andrew-inset":["ez"],"application/applixware":["aw"],"application/atom+xml":["atom"],"application/atomcat+xml":["atomcat"],"application/atomdeleted+xml":["atomdeleted"],"application/atomsvc+xml":["atomsvc"],"application/atsc-dwd+xml":["dwd"],"application/atsc-held+xml":["held"],"application/atsc-rsat+xml":["rsat"],"application/bdoc":["bdoc"],"application/calendar+xml":["xcs"],"application/ccxml+xml":["ccxml"],"application/cdfx+xml":["cdfx"],"application/cdmi-capability":["cdmia"],"application/cdmi-container":["cdmic"],"application/cdmi-domain":["cdmid"],"application/cdmi-object":["cdmio"],"application/cdmi-queue":["cdmiq"],"application/cu-seeme":["cu"],"application/dash+xml":["mpd"],"application/davmount+xml":["davmount"],"application/docbook+xml":["dbk"],"application/dssc+der":["dssc"],"application/dssc+xml":["xdssc"],"application/ecmascript":["es","ecma"],"application/emma+xml":["emma"],"application/emotionml+xml":["emotionml"],"application/epub+zip":["epub"],"application/exi":["exi"],"application/express":["exp"],"application/fdt+xml":["fdt"],"application/font-tdpfr":["pfr"],"application/geo+json":["geojson"],"application/gml+xml":["gml"],"application/gpx+xml":["gpx"],"application/gxf":["gxf"],"application/gzip":["gz"],"application/hjson":["hjson"],"application/hyperstudio":["stk"],"application/inkml+xml":["ink","inkml"],"application/ipfix":["ipfix"],"application/its+xml":["its"],"application/java-archive":["jar","war","ear"],"application/java-serialized-object":["ser"],"application/java-vm":["class"],"application/javascript":["js","mjs"],"application/json":["json","map"],"application/json5":["json5"],"application/jsonml+json":["jsonml"],"application/ld+json":["jsonld"],"application/lgr+xml":["lgr"],"application/lost+xml":["lostxml"],"application/mac-binhex40":["hqx"],"application/mac-compactpro":["cpt"],"application/mads+xml":["mads"],"application/manifest+json":["webmanifest"],"application/marc":["mrc"],"application/marcxml+xml":["mrcx"],"application/mathematica":["ma","nb","mb"],"application/mathml+xml":["mathml"],"application/mbox":["mbox"],"application/mediaservercontrol+xml":["mscml"],"application/metalink+xml":["metalink"],"application/metalink4+xml":["meta4"],"application/mets+xml":["mets"],"application/mmt-aei+xml":["maei"],"application/mmt-usd+xml":["musd"],"application/mods+xml":["mods"],"application/mp21":["m21","mp21"],"application/mp4":["mp4s","m4p"],"application/msword":["doc","dot"],"application/mxf":["mxf"],"application/n-quads":["nq"],"application/n-triples":["nt"],"application/node":["cjs"],"application/octet-stream":["bin","dms","lrf","mar","so","dist","distz","pkg","bpk","dump","elc","deploy","exe","dll","deb","dmg","iso","img","msi","msp","msm","buffer"],"application/oda":["oda"],"application/oebps-package+xml":["opf"],"application/ogg":["ogx"],"application/omdoc+xml":["omdoc"],"application/onenote":["onetoc","onetoc2","onetmp","onepkg"],"application/oxps":["oxps"],"application/p2p-overlay+xml":["relo"],"application/patch-ops-error+xml":["xer"],"application/pdf":["pdf"],"application/pgp-encrypted":["pgp"],"application/pgp-signature":["asc","sig"],"application/pics-rules":["prf"],"application/pkcs10":["p10"],"application/pkcs7-mime":["p7m","p7c"],"application/pkcs7-signature":["p7s"],"application/pkcs8":["p8"],"application/pkix-attr-cert":["ac"],"application/pkix-cert":["cer"],"application/pkix-crl":["crl"],"application/pkix-pkipath":["pkipath"],"application/pkixcmp":["pki"],"application/pls+xml":["pls"],"application/postscript":["ai","eps","ps"],"application/provenance+xml":["provx"],"application/pskc+xml":["pskcxml"],"application/raml+yaml":["raml"],"application/rdf+xml":["rdf","owl"],"application/reginfo+xml":["rif"],"application/relax-ng-compact-syntax":["rnc"],"application/resource-lists+xml":["rl"],"application/resource-lists-diff+xml":["rld"],"application/rls-services+xml":["rs"],"application/route-apd+xml":["rapd"],"application/route-s-tsid+xml":["sls"],"application/route-usd+xml":["rusd"],"application/rpki-ghostbusters":["gbr"],"application/rpki-manifest":["mft"],"application/rpki-roa":["roa"],"application/rsd+xml":["rsd"],"application/rss+xml":["rss"],"application/rtf":["rtf"],"application/sbml+xml":["sbml"],"application/scvp-cv-request":["scq"],"application/scvp-cv-response":["scs"],"application/scvp-vp-request":["spq"],"application/scvp-vp-response":["spp"],"application/sdp":["sdp"],"application/senml+xml":["senmlx"],"application/sensml+xml":["sensmlx"],"application/set-payment-initiation":["setpay"],"application/set-registration-initiation":["setreg"],"application/shf+xml":["shf"],"application/sieve":["siv","sieve"],"application/smil+xml":["smi","smil"],"application/sparql-query":["rq"],"application/sparql-results+xml":["srx"],"application/srgs":["gram"],"application/srgs+xml":["grxml"],"application/sru+xml":["sru"],"application/ssdl+xml":["ssdl"],"application/ssml+xml":["ssml"],"application/swid+xml":["swidtag"],"application/tei+xml":["tei","teicorpus"],"application/thraud+xml":["tfi"],"application/timestamped-data":["tsd"],"application/toml":["toml"],"application/trig":["trig"],"application/ttml+xml":["ttml"],"application/ubjson":["ubj"],"application/urc-ressheet+xml":["rsheet"],"application/urc-targetdesc+xml":["td"],"application/voicexml+xml":["vxml"],"application/wasm":["wasm"],"application/widget":["wgt"],"application/winhlp":["hlp"],"application/wsdl+xml":["wsdl"],"application/wspolicy+xml":["wspolicy"],"application/xaml+xml":["xaml"],"application/xcap-att+xml":["xav"],"application/xcap-caps+xml":["xca"],"application/xcap-diff+xml":["xdf"],"application/xcap-el+xml":["xel"],"application/xcap-ns+xml":["xns"],"application/xenc+xml":["xenc"],"application/xhtml+xml":["xhtml","xht"],"application/xliff+xml":["xlf"],"application/xml":["xml","xsl","xsd","rng"],"application/xml-dtd":["dtd"],"application/xop+xml":["xop"],"application/xproc+xml":["xpl"],"application/xslt+xml":["*xsl","xslt"],"application/xspf+xml":["xspf"],"application/xv+xml":["mxml","xhvml","xvml","xvm"],"application/yang":["yang"],"application/yin+xml":["yin"],"application/zip":["zip"],"audio/3gpp":["*3gpp"],"audio/adpcm":["adp"],"audio/amr":["amr"],"audio/basic":["au","snd"],"audio/midi":["mid","midi","kar","rmi"],"audio/mobile-xmf":["mxmf"],"audio/mp3":["*mp3"],"audio/mp4":["m4a","mp4a"],"audio/mpeg":["mpga","mp2","mp2a","mp3","m2a","m3a"],"audio/ogg":["oga","ogg","spx","opus"],"audio/s3m":["s3m"],"audio/silk":["sil"],"audio/wav":["wav"],"audio/wave":["*wav"],"audio/webm":["weba"],"audio/xm":["xm"],"font/collection":["ttc"],"font/otf":["otf"],"font/ttf":["ttf"],"font/woff":["woff"],"font/woff2":["woff2"],"image/aces":["exr"],"image/apng":["apng"],"image/avif":["avif"],"image/bmp":["bmp"],"image/cgm":["cgm"],"image/dicom-rle":["drle"],"image/emf":["emf"],"image/fits":["fits"],"image/g3fax":["g3"],"image/gif":["gif"],"image/heic":["heic"],"image/heic-sequence":["heics"],"image/heif":["heif"],"image/heif-sequence":["heifs"],"image/hej2k":["hej2"],"image/hsj2":["hsj2"],"image/ief":["ief"],"image/jls":["jls"],"image/jp2":["jp2","jpg2"],"image/jpeg":["jpeg","jpg","jpe"],"image/jph":["jph"],"image/jphc":["jhc"],"image/jpm":["jpm"],"image/jpx":["jpx","jpf"],"image/jxr":["jxr"],"image/jxra":["jxra"],"image/jxrs":["jxrs"],"image/jxs":["jxs"],"image/jxsc":["jxsc"],"image/jxsi":["jxsi"],"image/jxss":["jxss"],"image/ktx":["ktx"],"image/ktx2":["ktx2"],"image/png":["png"],"image/sgi":["sgi"],"image/svg+xml":["svg","svgz"],"image/t38":["t38"],"image/tiff":["tif","tiff"],"image/tiff-fx":["tfx"],"image/webp":["webp"],"image/wmf":["wmf"],"message/disposition-notification":["disposition-notification"],"message/global":["u8msg"],"message/global-delivery-status":["u8dsn"],"message/global-disposition-notification":["u8mdn"],"message/global-headers":["u8hdr"],"message/rfc822":["eml","mime"],"model/3mf":["3mf"],"model/gltf+json":["gltf"],"model/gltf-binary":["glb"],"model/iges":["igs","iges"],"model/mesh":["msh","mesh","silo"],"model/mtl":["mtl"],"model/obj":["obj"],"model/step+xml":["stpx"],"model/step+zip":["stpz"],"model/step-xml+zip":["stpxz"],"model/stl":["stl"],"model/vrml":["wrl","vrml"],"model/x3d+binary":["*x3db","x3dbz"],"model/x3d+fastinfoset":["x3db"],"model/x3d+vrml":["*x3dv","x3dvz"],"model/x3d+xml":["x3d","x3dz"],"model/x3d-vrml":["x3dv"],"text/cache-manifest":["appcache","manifest"],"text/calendar":["ics","ifb"],"text/coffeescript":["coffee","litcoffee"],"text/css":["css"],"text/csv":["csv"],"text/html":["html","htm","shtml"],"text/jade":["jade"],"text/jsx":["jsx"],"text/less":["less"],"text/markdown":["markdown","md"],"text/mathml":["mml"],"text/mdx":["mdx"],"text/n3":["n3"],"text/plain":["txt","text","conf","def","list","log","in","ini"],"text/richtext":["rtx"],"text/rtf":["*rtf"],"text/sgml":["sgml","sgm"],"text/shex":["shex"],"text/slim":["slim","slm"],"text/spdx":["spdx"],"text/stylus":["stylus","styl"],"text/tab-separated-values":["tsv"],"text/troff":["t","tr","roff","man","me","ms"],"text/turtle":["ttl"],"text/uri-list":["uri","uris","urls"],"text/vcard":["vcard"],"text/vtt":["vtt"],"text/xml":["*xml"],"text/yaml":["yaml","yml"],"video/3gpp":["3gp","3gpp"],"video/3gpp2":["3g2"],"video/h261":["h261"],"video/h263":["h263"],"video/h264":["h264"],"video/iso.segment":["m4s"],"video/jpeg":["jpgv"],"video/jpm":["*jpm","jpgm"],"video/mj2":["mj2","mjp2"],"video/mp2t":["ts"],"video/mp4":["mp4","mp4v","mpg4"],"video/mpeg":["mpeg","mpg","mpe","m1v","m2v"],"video/ogg":["ogv"],"video/quicktime":["qt","mov"],"video/webm":["webm"]};let Pr=$r;var Wr=new Pr(Jr);const Hr=Ht(Wr);var it={exports:{}};typeof Object.create=="function"?it.exports=function(a,p){p&&(a.super_=p,a.prototype=Object.create(p.prototype,{constructor:{value:a,enumerable:!1,writable:!0,configurable:!0}}))}:it.exports=function(a,p){if(p){a.super_=p;var c=function(){};c.prototype=p.prototype,a.prototype=new c,a.prototype.constructor=a}};var Zr=it.exports,nt={exports:{}},Zt={},Y={};Y.byteLength=Xr;Y.toByteArray=Vr;Y.fromByteArray=re;var k=[],I=[],Kr=typeof Uint8Array<"u"?Uint8Array:Array,et="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(var O=0,Yr=et.length;O<Yr;++O)k[O]=et[O],I[et.charCodeAt(O)]=O;I[45]=62;I[95]=63;function Kt(i){var a=i.length;if(a%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var p=i.indexOf("=");p===-1&&(p=a);var c=p===a?0:4-p%4;return[p,c]}function Xr(i){var a=Kt(i),p=a[0],c=a[1];return(p+c)*3/4-c}function Gr(i,a,p){return(a+p)*3/4-p}function Vr(i){var a,p=Kt(i),c=p[0],u=p[1],f=new Kr(Gr(i,c,u)),l=0,o=u>0?c-4:c,x;for(x=0;x<o;x+=4)a=I[i.charCodeAt(x)]<<18|I[i.charCodeAt(x+1)]<<12|I[i.charCodeAt(x+2)]<<6|I[i.charCodeAt(x+3)],f[l++]=a>>16&255,f[l++]=a>>8&255,f[l++]=a&255;return u===2&&(a=I[i.charCodeAt(x)]<<2|I[i.charCodeAt(x+1)]>>4,f[l++]=a&255),u===1&&(a=I[i.charCodeAt(x)]<<10|I[i.charCodeAt(x+1)]<<4|I[i.charCodeAt(x+2)]>>2,f[l++]=a>>8&255,f[l++]=a&255),f}function Qr(i){return k[i>>18&63]+k[i>>12&63]+k[i>>6&63]+k[i&63]}function te(i,a,p){for(var c,u=[],f=a;f<p;f+=3)c=(i[f]<<16&16711680)+(i[f+1]<<8&65280)+(i[f+2]&255),u.push(Qr(c));return u.join("")}function re(i){for(var a,p=i.length,c=p%3,u=[],f=16383,l=0,o=p-c;l<o;l+=f)u.push(te(i,l,l+f>o?o:l+f));return c===1?(a=i[p-1],u.push(k[a>>2]+k[a<<4&63]+"==")):c===2&&(a=(i[p-2]<<8)+i[p-1],u.push(k[a>>10]+k[a>>4&63]+k[a<<2&63]+"=")),u.join("")}var ft={};/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh <https://feross.org/opensource> */ft.read=function(i,a,p,c,u){var f,l,o=u*8-c-1,x=(1<<o)-1,g=x>>1,v=-7,y=p?u-1:0,j=p?-1:1,_=i[a+y];for(y+=j,f=_&(1<<-v)-1,_>>=-v,v+=o;v>0;f=f*256+i[a+y],y+=j,v-=8);for(l=f&(1<<-v)-1,f>>=-v,v+=c;v>0;l=l*256+i[a+y],y+=j,v-=8);if(f===0)f=1-g;else{if(f===x)return l?NaN:(_?-1:1)*(1/0);l=l+Math.pow(2,c),f=f-g}return(_?-1:1)*l*Math.pow(2,f-c)};ft.write=function(i,a,p,c,u,f){var l,o,x,g=f*8-u-1,v=(1<<g)-1,y=v>>1,j=u===23?Math.pow(2,-24)-Math.pow(2,-77):0,_=c?0:f-1,z=c?1:-1,U=a<0||a===0&&1/a<0?1:0;for(a=Math.abs(a),isNaN(a)||a===1/0?(o=isNaN(a)?1:0,l=v):(l=Math.floor(Math.log(a)/Math.LN2),a*(x=Math.pow(2,-l))<1&&(l--,x*=2),l+y>=1?a+=j/x:a+=j*Math.pow(2,1-y),a*x>=2&&(l++,x/=2),l+y>=v?(o=0,l=v):l+y>=1?(o=(a*x-1)*Math.pow(2,u),l=l+y):(o=a*Math.pow(2,y-1)*Math.pow(2,u),l=0));u>=8;i[p+_]=o&255,_+=z,o/=256,u-=8);for(l=l<<u|o,g+=u;g>0;i[p+_]=l&255,_+=z,l/=256,g-=8);i[p+_-z]|=U*128};/*!
2
+ * The buffer module from node.js, for the browser.
3
+ *
4
+ * @author Feross Aboukhadijeh <https://feross.org>
5
+ * @license MIT
6
+ */(function(i){var a=Y,p=ft,c=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;i.Buffer=o,i.SlowBuffer=lr,i.INSPECT_MAX_BYTES=50;var u=2147483647;i.kMaxLength=u,o.TYPED_ARRAY_SUPPORT=f(),!o.TYPED_ARRAY_SUPPORT&&typeof console<"u"&&typeof console.error=="function"&&console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.");function f(){try{var e=new Uint8Array(1),t={foo:function(){return 42}};return Object.setPrototypeOf(t,Uint8Array.prototype),Object.setPrototypeOf(e,t),e.foo()===42}catch{return!1}}Object.defineProperty(o.prototype,"parent",{enumerable:!0,get:function(){if(o.isBuffer(this))return this.buffer}}),Object.defineProperty(o.prototype,"offset",{enumerable:!0,get:function(){if(o.isBuffer(this))return this.byteOffset}});function l(e){if(e>u)throw new RangeError('The value "'+e+'" is invalid for option "size"');var t=new Uint8Array(e);return Object.setPrototypeOf(t,o.prototype),t}function o(e,t,r){if(typeof e=="number"){if(typeof t=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return y(e)}return x(e,t,r)}o.poolSize=8192;function x(e,t,r){if(typeof e=="string")return j(e,t);if(ArrayBuffer.isView(e))return z(e);if(e==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e);if(T(e,ArrayBuffer)||e&&T(e.buffer,ArrayBuffer)||typeof SharedArrayBuffer<"u"&&(T(e,SharedArrayBuffer)||e&&T(e.buffer,SharedArrayBuffer)))return U(e,t,r);if(typeof e=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');var n=e.valueOf&&e.valueOf();if(n!=null&&n!==e)return o.from(n,t,r);var s=V(e);if(s)return s;if(typeof Symbol<"u"&&Symbol.toPrimitive!=null&&typeof e[Symbol.toPrimitive]=="function")return o.from(e[Symbol.toPrimitive]("string"),t,r);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e)}o.from=function(e,t,r){return x(e,t,r)},Object.setPrototypeOf(o.prototype,Uint8Array.prototype),Object.setPrototypeOf(o,Uint8Array);function g(e){if(typeof e!="number")throw new TypeError('"size" argument must be of type number');if(e<0)throw new RangeError('The value "'+e+'" is invalid for option "size"')}function v(e,t,r){return g(e),e<=0?l(e):t!==void 0?typeof r=="string"?l(e).fill(t,r):l(e).fill(t):l(e)}o.alloc=function(e,t,r){return v(e,t,r)};function y(e){return g(e),l(e<0?0:Q(e)|0)}o.allocUnsafe=function(e){return y(e)},o.allocUnsafeSlow=function(e){return y(e)};function j(e,t){if((typeof t!="string"||t==="")&&(t="utf8"),!o.isEncoding(t))throw new TypeError("Unknown encoding: "+t);var r=wt(e,t)|0,n=l(r),s=n.write(e,t);return s!==r&&(n=n.slice(0,s)),n}function _(e){for(var t=e.length<0?0:Q(e.length)|0,r=l(t),n=0;n<t;n+=1)r[n]=e[n]&255;return r}function z(e){if(T(e,Uint8Array)){var t=new Uint8Array(e);return U(t.buffer,t.byteOffset,t.byteLength)}return _(e)}function U(e,t,r){if(t<0||e.byteLength<t)throw new RangeError('"offset" is outside of buffer bounds');if(e.byteLength<t+(r||0))throw new RangeError('"length" is outside of buffer bounds');var n;return t===void 0&&r===void 0?n=new Uint8Array(e):r===void 0?n=new Uint8Array(e,t):n=new Uint8Array(e,t,r),Object.setPrototypeOf(n,o.prototype),n}function V(e){if(o.isBuffer(e)){var t=Q(e.length)|0,r=l(t);return r.length===0||e.copy(r,0,0,t),r}if(e.length!==void 0)return typeof e.length!="number"||rt(e.length)?l(0):_(e);if(e.type==="Buffer"&&Array.isArray(e.data))return _(e.data)}function Q(e){if(e>=u)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+u.toString(16)+" bytes");return e|0}function lr(e){return+e!=e&&(e=0),o.alloc(+e)}o.isBuffer=function(t){return t!=null&&t._isBuffer===!0&&t!==o.prototype},o.compare=function(t,r){if(T(t,Uint8Array)&&(t=o.from(t,t.offset,t.byteLength)),T(r,Uint8Array)&&(r=o.from(r,r.offset,r.byteLength)),!o.isBuffer(t)||!o.isBuffer(r))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(t===r)return 0;for(var n=t.length,s=r.length,h=0,m=Math.min(n,s);h<m;++h)if(t[h]!==r[h]){n=t[h],s=r[h];break}return n<s?-1:s<n?1:0},o.isEncoding=function(t){switch(String(t).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},o.concat=function(t,r){if(!Array.isArray(t))throw new TypeError('"list" argument must be an Array of Buffers');if(t.length===0)return o.alloc(0);var n;if(r===void 0)for(r=0,n=0;n<t.length;++n)r+=t[n].length;var s=o.allocUnsafe(r),h=0;for(n=0;n<t.length;++n){var m=t[n];if(T(m,Uint8Array))h+m.length>s.length?o.from(m).copy(s,h):Uint8Array.prototype.set.call(s,m,h);else if(o.isBuffer(m))m.copy(s,h);else throw new TypeError('"list" argument must be an Array of Buffers');h+=m.length}return s};function wt(e,t){if(o.isBuffer(e))return e.length;if(ArrayBuffer.isView(e)||T(e,ArrayBuffer))return e.byteLength;if(typeof e!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof e);var r=e.length,n=arguments.length>2&&arguments[2]===!0;if(!n&&r===0)return 0;for(var s=!1;;)switch(t){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":return tt(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return r*2;case"hex":return r>>>1;case"base64":return Bt(e).length;default:if(s)return n?-1:tt(e).length;t=(""+t).toLowerCase(),s=!0}}o.byteLength=wt;function ur(e,t,r){var n=!1;if((t===void 0||t<0)&&(t=0),t>this.length||((r===void 0||r>this.length)&&(r=this.length),r<=0)||(r>>>=0,t>>>=0,r<=t))return"";for(e||(e="utf8");;)switch(e){case"hex":return Er(this,t,r);case"utf8":case"utf-8":return bt(this,t,r);case"ascii":return wr(this,t,r);case"latin1":case"binary":return vr(this,t,r);case"base64":return gr(this,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return br(this,t,r);default:if(n)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),n=!0}}o.prototype._isBuffer=!0;function D(e,t,r){var n=e[t];e[t]=e[r],e[r]=n}o.prototype.swap16=function(){var t=this.length;if(t%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var r=0;r<t;r+=2)D(this,r,r+1);return this},o.prototype.swap32=function(){var t=this.length;if(t%4!==0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(var r=0;r<t;r+=4)D(this,r,r+3),D(this,r+1,r+2);return this},o.prototype.swap64=function(){var t=this.length;if(t%8!==0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(var r=0;r<t;r+=8)D(this,r,r+7),D(this,r+1,r+6),D(this,r+2,r+5),D(this,r+3,r+4);return this},o.prototype.toString=function(){var t=this.length;return t===0?"":arguments.length===0?bt(this,0,t):ur.apply(this,arguments)},o.prototype.toLocaleString=o.prototype.toString,o.prototype.equals=function(t){if(!o.isBuffer(t))throw new TypeError("Argument must be a Buffer");return this===t?!0:o.compare(this,t)===0},o.prototype.inspect=function(){var t="",r=i.INSPECT_MAX_BYTES;return t=this.toString("hex",0,r).replace(/(.{2})/g,"$1 ").trim(),this.length>r&&(t+=" ... "),"<Buffer "+t+">"},c&&(o.prototype[c]=o.prototype.inspect),o.prototype.compare=function(t,r,n,s,h){if(T(t,Uint8Array)&&(t=o.from(t,t.offset,t.byteLength)),!o.isBuffer(t))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof t);if(r===void 0&&(r=0),n===void 0&&(n=t?t.length:0),s===void 0&&(s=0),h===void 0&&(h=this.length),r<0||n>t.length||s<0||h>this.length)throw new RangeError("out of range index");if(s>=h&&r>=n)return 0;if(s>=h)return-1;if(r>=n)return 1;if(r>>>=0,n>>>=0,s>>>=0,h>>>=0,this===t)return 0;for(var m=h-s,w=n-r,E=Math.min(m,w),b=this.slice(s,h),S=t.slice(r,n),F=0;F<E;++F)if(b[F]!==S[F]){m=b[F],w=S[F];break}return m<w?-1:w<m?1:0};function vt(e,t,r,n,s){if(e.length===0)return-1;if(typeof r=="string"?(n=r,r=0):r>2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),r=+r,rt(r)&&(r=s?0:e.length-1),r<0&&(r=e.length+r),r>=e.length){if(s)return-1;r=e.length-1}else if(r<0)if(s)r=0;else return-1;if(typeof t=="string"&&(t=o.from(t,n)),o.isBuffer(t))return t.length===0?-1:Et(e,t,r,n,s);if(typeof t=="number")return t=t&255,typeof Uint8Array.prototype.indexOf=="function"?s?Uint8Array.prototype.indexOf.call(e,t,r):Uint8Array.prototype.lastIndexOf.call(e,t,r):Et(e,[t],r,n,s);throw new TypeError("val must be string, number or Buffer")}function Et(e,t,r,n,s){var h=1,m=e.length,w=t.length;if(n!==void 0&&(n=String(n).toLowerCase(),n==="ucs2"||n==="ucs-2"||n==="utf16le"||n==="utf-16le")){if(e.length<2||t.length<2)return-1;h=2,m/=2,w/=2,r/=2}function E(jt,It){return h===1?jt[It]:jt.readUInt16BE(It*h)}var b;if(s){var S=-1;for(b=r;b<m;b++)if(E(e,b)===E(t,S===-1?0:b-S)){if(S===-1&&(S=b),b-S+1===w)return S*h}else S!==-1&&(b-=b-S),S=-1}else for(r+w>m&&(r=m-w),b=r;b>=0;b--){for(var F=!0,H=0;H<w;H++)if(E(e,b+H)!==E(t,H)){F=!1;break}if(F)return b}return-1}o.prototype.includes=function(t,r,n){return this.indexOf(t,r,n)!==-1},o.prototype.indexOf=function(t,r,n){return vt(this,t,r,n,!0)},o.prototype.lastIndexOf=function(t,r,n){return vt(this,t,r,n,!1)};function fr(e,t,r,n){r=Number(r)||0;var s=e.length-r;n?(n=Number(n),n>s&&(n=s)):n=s;var h=t.length;n>h/2&&(n=h/2);for(var m=0;m<n;++m){var w=parseInt(t.substr(m*2,2),16);if(rt(w))return m;e[r+m]=w}return m}function hr(e,t,r,n){return W(tt(t,e.length-r),e,r,n)}function mr(e,t,r,n){return W(Ar(t),e,r,n)}function xr(e,t,r,n){return W(Bt(t),e,r,n)}function dr(e,t,r,n){return W(Sr(t,e.length-r),e,r,n)}o.prototype.write=function(t,r,n,s){if(r===void 0)s="utf8",n=this.length,r=0;else if(n===void 0&&typeof r=="string")s=r,n=this.length,r=0;else if(isFinite(r))r=r>>>0,isFinite(n)?(n=n>>>0,s===void 0&&(s="utf8")):(s=n,n=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");var h=this.length-r;if((n===void 0||n>h)&&(n=h),t.length>0&&(n<0||r<0)||r>this.length)throw new RangeError("Attempt to write outside buffer bounds");s||(s="utf8");for(var m=!1;;)switch(s){case"hex":return fr(this,t,r,n);case"utf8":case"utf-8":return hr(this,t,r,n);case"ascii":case"latin1":case"binary":return mr(this,t,r,n);case"base64":return xr(this,t,r,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return dr(this,t,r,n);default:if(m)throw new TypeError("Unknown encoding: "+s);s=(""+s).toLowerCase(),m=!0}},o.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function gr(e,t,r){return t===0&&r===e.length?a.fromByteArray(e):a.fromByteArray(e.slice(t,r))}function bt(e,t,r){r=Math.min(e.length,r);for(var n=[],s=t;s<r;){var h=e[s],m=null,w=h>239?4:h>223?3:h>191?2:1;if(s+w<=r){var E,b,S,F;switch(w){case 1:h<128&&(m=h);break;case 2:E=e[s+1],(E&192)===128&&(F=(h&31)<<6|E&63,F>127&&(m=F));break;case 3:E=e[s+1],b=e[s+2],(E&192)===128&&(b&192)===128&&(F=(h&15)<<12|(E&63)<<6|b&63,F>2047&&(F<55296||F>57343)&&(m=F));break;case 4:E=e[s+1],b=e[s+2],S=e[s+3],(E&192)===128&&(b&192)===128&&(S&192)===128&&(F=(h&15)<<18|(E&63)<<12|(b&63)<<6|S&63,F>65535&&F<1114112&&(m=F))}}m===null?(m=65533,w=1):m>65535&&(m-=65536,n.push(m>>>10&1023|55296),m=56320|m&1023),n.push(m),s+=w}return yr(n)}var Ft=4096;function yr(e){var t=e.length;if(t<=Ft)return String.fromCharCode.apply(String,e);for(var r="",n=0;n<t;)r+=String.fromCharCode.apply(String,e.slice(n,n+=Ft));return r}function wr(e,t,r){var n="";r=Math.min(e.length,r);for(var s=t;s<r;++s)n+=String.fromCharCode(e[s]&127);return n}function vr(e,t,r){var n="";r=Math.min(e.length,r);for(var s=t;s<r;++s)n+=String.fromCharCode(e[s]);return n}function Er(e,t,r){var n=e.length;(!t||t<0)&&(t=0),(!r||r<0||r>n)&&(r=n);for(var s="",h=t;h<r;++h)s+=Br[e[h]];return s}function br(e,t,r){for(var n=e.slice(t,r),s="",h=0;h<n.length-1;h+=2)s+=String.fromCharCode(n[h]+n[h+1]*256);return s}o.prototype.slice=function(t,r){var n=this.length;t=~~t,r=r===void 0?n:~~r,t<0?(t+=n,t<0&&(t=0)):t>n&&(t=n),r<0?(r+=n,r<0&&(r=0)):r>n&&(r=n),r<t&&(r=t);var s=this.subarray(t,r);return Object.setPrototypeOf(s,o.prototype),s};function A(e,t,r){if(e%1!==0||e<0)throw new RangeError("offset is not uint");if(e+t>r)throw new RangeError("Trying to access beyond buffer length")}o.prototype.readUintLE=o.prototype.readUIntLE=function(t,r,n){t=t>>>0,r=r>>>0,n||A(t,r,this.length);for(var s=this[t],h=1,m=0;++m<r&&(h*=256);)s+=this[t+m]*h;return s},o.prototype.readUintBE=o.prototype.readUIntBE=function(t,r,n){t=t>>>0,r=r>>>0,n||A(t,r,this.length);for(var s=this[t+--r],h=1;r>0&&(h*=256);)s+=this[t+--r]*h;return s},o.prototype.readUint8=o.prototype.readUInt8=function(t,r){return t=t>>>0,r||A(t,1,this.length),this[t]},o.prototype.readUint16LE=o.prototype.readUInt16LE=function(t,r){return t=t>>>0,r||A(t,2,this.length),this[t]|this[t+1]<<8},o.prototype.readUint16BE=o.prototype.readUInt16BE=function(t,r){return t=t>>>0,r||A(t,2,this.length),this[t]<<8|this[t+1]},o.prototype.readUint32LE=o.prototype.readUInt32LE=function(t,r){return t=t>>>0,r||A(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+this[t+3]*16777216},o.prototype.readUint32BE=o.prototype.readUInt32BE=function(t,r){return t=t>>>0,r||A(t,4,this.length),this[t]*16777216+(this[t+1]<<16|this[t+2]<<8|this[t+3])},o.prototype.readIntLE=function(t,r,n){t=t>>>0,r=r>>>0,n||A(t,r,this.length);for(var s=this[t],h=1,m=0;++m<r&&(h*=256);)s+=this[t+m]*h;return h*=128,s>=h&&(s-=Math.pow(2,8*r)),s},o.prototype.readIntBE=function(t,r,n){t=t>>>0,r=r>>>0,n||A(t,r,this.length);for(var s=r,h=1,m=this[t+--s];s>0&&(h*=256);)m+=this[t+--s]*h;return h*=128,m>=h&&(m-=Math.pow(2,8*r)),m},o.prototype.readInt8=function(t,r){return t=t>>>0,r||A(t,1,this.length),this[t]&128?(255-this[t]+1)*-1:this[t]},o.prototype.readInt16LE=function(t,r){t=t>>>0,r||A(t,2,this.length);var n=this[t]|this[t+1]<<8;return n&32768?n|4294901760:n},o.prototype.readInt16BE=function(t,r){t=t>>>0,r||A(t,2,this.length);var n=this[t+1]|this[t]<<8;return n&32768?n|4294901760:n},o.prototype.readInt32LE=function(t,r){return t=t>>>0,r||A(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24},o.prototype.readInt32BE=function(t,r){return t=t>>>0,r||A(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]},o.prototype.readFloatLE=function(t,r){return t=t>>>0,r||A(t,4,this.length),p.read(this,t,!0,23,4)},o.prototype.readFloatBE=function(t,r){return t=t>>>0,r||A(t,4,this.length),p.read(this,t,!1,23,4)},o.prototype.readDoubleLE=function(t,r){return t=t>>>0,r||A(t,8,this.length),p.read(this,t,!0,52,8)},o.prototype.readDoubleBE=function(t,r){return t=t>>>0,r||A(t,8,this.length),p.read(this,t,!1,52,8)};function B(e,t,r,n,s,h){if(!o.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>s||t<h)throw new RangeError('"value" argument is out of bounds');if(r+n>e.length)throw new RangeError("Index out of range")}o.prototype.writeUintLE=o.prototype.writeUIntLE=function(t,r,n,s){if(t=+t,r=r>>>0,n=n>>>0,!s){var h=Math.pow(2,8*n)-1;B(this,t,r,n,h,0)}var m=1,w=0;for(this[r]=t&255;++w<n&&(m*=256);)this[r+w]=t/m&255;return r+n},o.prototype.writeUintBE=o.prototype.writeUIntBE=function(t,r,n,s){if(t=+t,r=r>>>0,n=n>>>0,!s){var h=Math.pow(2,8*n)-1;B(this,t,r,n,h,0)}var m=n-1,w=1;for(this[r+m]=t&255;--m>=0&&(w*=256);)this[r+m]=t/w&255;return r+n},o.prototype.writeUint8=o.prototype.writeUInt8=function(t,r,n){return t=+t,r=r>>>0,n||B(this,t,r,1,255,0),this[r]=t&255,r+1},o.prototype.writeUint16LE=o.prototype.writeUInt16LE=function(t,r,n){return t=+t,r=r>>>0,n||B(this,t,r,2,65535,0),this[r]=t&255,this[r+1]=t>>>8,r+2},o.prototype.writeUint16BE=o.prototype.writeUInt16BE=function(t,r,n){return t=+t,r=r>>>0,n||B(this,t,r,2,65535,0),this[r]=t>>>8,this[r+1]=t&255,r+2},o.prototype.writeUint32LE=o.prototype.writeUInt32LE=function(t,r,n){return t=+t,r=r>>>0,n||B(this,t,r,4,4294967295,0),this[r+3]=t>>>24,this[r+2]=t>>>16,this[r+1]=t>>>8,this[r]=t&255,r+4},o.prototype.writeUint32BE=o.prototype.writeUInt32BE=function(t,r,n){return t=+t,r=r>>>0,n||B(this,t,r,4,4294967295,0),this[r]=t>>>24,this[r+1]=t>>>16,this[r+2]=t>>>8,this[r+3]=t&255,r+4},o.prototype.writeIntLE=function(t,r,n,s){if(t=+t,r=r>>>0,!s){var h=Math.pow(2,8*n-1);B(this,t,r,n,h-1,-h)}var m=0,w=1,E=0;for(this[r]=t&255;++m<n&&(w*=256);)t<0&&E===0&&this[r+m-1]!==0&&(E=1),this[r+m]=(t/w>>0)-E&255;return r+n},o.prototype.writeIntBE=function(t,r,n,s){if(t=+t,r=r>>>0,!s){var h=Math.pow(2,8*n-1);B(this,t,r,n,h-1,-h)}var m=n-1,w=1,E=0;for(this[r+m]=t&255;--m>=0&&(w*=256);)t<0&&E===0&&this[r+m+1]!==0&&(E=1),this[r+m]=(t/w>>0)-E&255;return r+n},o.prototype.writeInt8=function(t,r,n){return t=+t,r=r>>>0,n||B(this,t,r,1,127,-128),t<0&&(t=255+t+1),this[r]=t&255,r+1},o.prototype.writeInt16LE=function(t,r,n){return t=+t,r=r>>>0,n||B(this,t,r,2,32767,-32768),this[r]=t&255,this[r+1]=t>>>8,r+2},o.prototype.writeInt16BE=function(t,r,n){return t=+t,r=r>>>0,n||B(this,t,r,2,32767,-32768),this[r]=t>>>8,this[r+1]=t&255,r+2},o.prototype.writeInt32LE=function(t,r,n){return t=+t,r=r>>>0,n||B(this,t,r,4,2147483647,-2147483648),this[r]=t&255,this[r+1]=t>>>8,this[r+2]=t>>>16,this[r+3]=t>>>24,r+4},o.prototype.writeInt32BE=function(t,r,n){return t=+t,r=r>>>0,n||B(this,t,r,4,2147483647,-2147483648),t<0&&(t=4294967295+t+1),this[r]=t>>>24,this[r+1]=t>>>16,this[r+2]=t>>>8,this[r+3]=t&255,r+4};function _t(e,t,r,n,s,h){if(r+n>e.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function At(e,t,r,n,s){return t=+t,r=r>>>0,s||_t(e,t,r,4),p.write(e,t,r,n,23,4),r+4}o.prototype.writeFloatLE=function(t,r,n){return At(this,t,r,!0,n)},o.prototype.writeFloatBE=function(t,r,n){return At(this,t,r,!1,n)};function St(e,t,r,n,s){return t=+t,r=r>>>0,s||_t(e,t,r,8),p.write(e,t,r,n,52,8),r+8}o.prototype.writeDoubleLE=function(t,r,n){return St(this,t,r,!0,n)},o.prototype.writeDoubleBE=function(t,r,n){return St(this,t,r,!1,n)},o.prototype.copy=function(t,r,n,s){if(!o.isBuffer(t))throw new TypeError("argument should be a Buffer");if(n||(n=0),!s&&s!==0&&(s=this.length),r>=t.length&&(r=t.length),r||(r=0),s>0&&s<n&&(s=n),s===n||t.length===0||this.length===0)return 0;if(r<0)throw new RangeError("targetStart out of bounds");if(n<0||n>=this.length)throw new RangeError("Index out of range");if(s<0)throw new RangeError("sourceEnd out of bounds");s>this.length&&(s=this.length),t.length-r<s-n&&(s=t.length-r+n);var h=s-n;return this===t&&typeof Uint8Array.prototype.copyWithin=="function"?this.copyWithin(r,n,s):Uint8Array.prototype.set.call(t,this.subarray(n,s),r),h},o.prototype.fill=function(t,r,n,s){if(typeof t=="string"){if(typeof r=="string"?(s=r,r=0,n=this.length):typeof n=="string"&&(s=n,n=this.length),s!==void 0&&typeof s!="string")throw new TypeError("encoding must be a string");if(typeof s=="string"&&!o.isEncoding(s))throw new TypeError("Unknown encoding: "+s);if(t.length===1){var h=t.charCodeAt(0);(s==="utf8"&&h<128||s==="latin1")&&(t=h)}}else typeof t=="number"?t=t&255:typeof t=="boolean"&&(t=Number(t));if(r<0||this.length<r||this.length<n)throw new RangeError("Out of range index");if(n<=r)return this;r=r>>>0,n=n===void 0?this.length:n>>>0,t||(t=0);var m;if(typeof t=="number")for(m=r;m<n;++m)this[m]=t;else{var w=o.isBuffer(t)?t:o.from(t,s),E=w.length;if(E===0)throw new TypeError('The value "'+t+'" is invalid for argument "value"');for(m=0;m<n-r;++m)this[m+r]=w[m%E]}return this};var Fr=/[^+/0-9A-Za-z-_]/g;function _r(e){if(e=e.split("=")[0],e=e.trim().replace(Fr,""),e.length<2)return"";for(;e.length%4!==0;)e=e+"=";return e}function tt(e,t){t=t||1/0;for(var r,n=e.length,s=null,h=[],m=0;m<n;++m){if(r=e.charCodeAt(m),r>55295&&r<57344){if(!s){if(r>56319){(t-=3)>-1&&h.push(239,191,189);continue}else if(m+1===n){(t-=3)>-1&&h.push(239,191,189);continue}s=r;continue}if(r<56320){(t-=3)>-1&&h.push(239,191,189),s=r;continue}r=(s-55296<<10|r-56320)+65536}else s&&(t-=3)>-1&&h.push(239,191,189);if(s=null,r<128){if((t-=1)<0)break;h.push(r)}else if(r<2048){if((t-=2)<0)break;h.push(r>>6|192,r&63|128)}else if(r<65536){if((t-=3)<0)break;h.push(r>>12|224,r>>6&63|128,r&63|128)}else if(r<1114112){if((t-=4)<0)break;h.push(r>>18|240,r>>12&63|128,r>>6&63|128,r&63|128)}else throw new Error("Invalid code point")}return h}function Ar(e){for(var t=[],r=0;r<e.length;++r)t.push(e.charCodeAt(r)&255);return t}function Sr(e,t){for(var r,n,s,h=[],m=0;m<e.length&&!((t-=2)<0);++m)r=e.charCodeAt(m),n=r>>8,s=r%256,h.push(s),h.push(n);return h}function Bt(e){return a.toByteArray(_r(e))}function W(e,t,r,n){for(var s=0;s<n&&!(s+r>=t.length||s>=e.length);++s)t[s+r]=e[s];return s}function T(e,t){return e instanceof t||e!=null&&e.constructor!=null&&e.constructor.name!=null&&e.constructor.name===t.name}function rt(e){return e!==e}var Br=function(){for(var e="0123456789abcdef",t=new Array(256),r=0;r<16;++r)for(var n=r*16,s=0;s<16;++s)t[n+s]=e[r]+e[s];return t}()})(Zt);/*! safe-buffer. MIT License. Feross Aboukhadijeh <https://feross.org/opensource> */(function(i,a){var p=Zt,c=p.Buffer;function u(l,o){for(var x in l)o[x]=l[x]}c.from&&c.alloc&&c.allocUnsafe&&c.allocUnsafeSlow?i.exports=p:(u(p,a),a.Buffer=f);function f(l,o,x){return c(l,o,x)}f.prototype=Object.create(c.prototype),u(c,f),f.from=function(l,o,x){if(typeof l=="number")throw new TypeError("Argument must not be a number");return c(l,o,x)},f.alloc=function(l,o,x){if(typeof l!="number")throw new TypeError("Argument must be a number");var g=c(l);return o!==void 0?typeof x=="string"?g.fill(o,x):g.fill(o):g.fill(0),g},f.allocUnsafe=function(l){if(typeof l!="number")throw new TypeError("Argument must be a number");return c(l)},f.allocUnsafeSlow=function(l){if(typeof l!="number")throw new TypeError("Argument must be a number");return p.SlowBuffer(l)}})(nt,nt.exports);var Yt=nt.exports,Xt=Yt.Buffer;function X(i,a){this._block=Xt.alloc(i),this._finalSize=a,this._blockSize=i,this._len=0}X.prototype.update=function(i,a){typeof i=="string"&&(a=a||"utf8",i=Xt.from(i,a));for(var p=this._block,c=this._blockSize,u=i.length,f=this._len,l=0;l<u;){for(var o=f%c,x=Math.min(u-l,c-o),g=0;g<x;g++)p[o+g]=i[l+g];f+=x,l+=x,f%c===0&&this._update(p)}return this._len+=u,this};X.prototype.digest=function(i){var a=this._len%this._blockSize;this._block[a]=128,this._block.fill(0,a+1),a>=this._finalSize&&(this._update(this._block),this._block.fill(0));var p=this._len*8;if(p<=4294967295)this._block.writeUInt32BE(p,this._blockSize-4);else{var c=(p&4294967295)>>>0,u=(p-c)/4294967296;this._block.writeUInt32BE(u,this._blockSize-8),this._block.writeUInt32BE(c,this._blockSize-4)}this._update(this._block);var f=this._hash();return i?f.toString(i):f};X.prototype._update=function(){throw new Error("_update must be implemented by subclass")};var ee=X,ie=Zr,Gt=ee,ne=Yt.Buffer,ae=[1518500249,1859775393,-1894007588,-899497514],oe=new Array(80);function P(){this.init(),this._w=oe,Gt.call(this,64,56)}ie(P,Gt);P.prototype.init=function(){return this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520,this};function pe(i){return i<<1|i>>>31}function se(i){return i<<5|i>>>27}function ce(i){return i<<30|i>>>2}function le(i,a,p,c){return i===0?a&p|~a&c:i===2?a&p|a&c|p&c:a^p^c}P.prototype._update=function(i){for(var a=this._w,p=this._a|0,c=this._b|0,u=this._c|0,f=this._d|0,l=this._e|0,o=0;o<16;++o)a[o]=i.readInt32BE(o*4);for(;o<80;++o)a[o]=pe(a[o-3]^a[o-8]^a[o-14]^a[o-16]);for(var x=0;x<80;++x){var g=~~(x/20),v=se(p)+le(g,c,u,f)+l+a[x]+ae[g]|0;l=f,f=u,u=ce(c),c=p,p=v}this._a=p+this._a|0,this._b=c+this._b|0,this._c=u+this._c|0,this._d=f+this._d|0,this._e=l+this._e|0};P.prototype._hash=function(){var i=ne.allocUnsafe(20);return i.writeInt32BE(this._a|0,0),i.writeInt32BE(this._b|0,4),i.writeInt32BE(this._c|0,8),i.writeInt32BE(this._d|0,12),i.writeInt32BE(this._e|0,16),i};var ue=P;const fe=Ht(ue),ht=new Error("File system not available.");function he(i,a,p){throw ht}function Vt(i){throw ht}function me(i){throw ht}const xe=async i=>Vt();function de(i){let a="";for(let p=0;p<i.length;p+=2)a+=String.fromCharCode(parseInt(i.substr(p,2),16));return btoa(a)}const G=(i,a="sha1")=>{if(a!=="sha1")throw new Error("Only sha1 algorithm is available.");const p=new fe;return de(p.update(i).digest("hex"))},mt=async i=>{const a=new Ut,{name:p,revision:c,documentType:u,created:f,lastModified:l}=i,o={name:p,revision:c,documentType:u,created:f,lastModified:l};return a.file("header.json",JSON.stringify(o,null,2)),a.file("state.json",JSON.stringify(i.initialState||{},null,2)),a.file("operations.json",JSON.stringify(i.operations,null,2)),Object.keys(i.attachments).forEach(g=>{const{data:v,...y}=i.attachments[g];a.file(g,v,{base64:!0,createFolders:!0,comment:JSON.stringify(y)})}),a},Qt=async(i,a,p,c)=>{await(await mt(i)).generateAsync({type:"uint8array",streamFiles:!0});const f=c??i.name,l=`.${p}.zip`;return he(a,f.endsWith(l)?f:`${f}${l}`)},ge=async(i,a)=>{const c=await(await mt(i)).generateAsync({type:"blob"}),u=await a.createWritable();await u.write(c),await u.close()},at=async(i,a)=>{const p=Vt();return tr(p,a)},tr=async(i,a)=>{const p=new Ut;return await p.loadAsync(i),ye(p,a)};async function ye(i,a){const p=i.file("state.json");if(!p)throw new Error("Initial state not found");const c=await p.async("string"),u=JSON.parse(c),f=i.file("header.json");let l;f&&(l=JSON.parse(await f.async("string")));const o=i.file("operations.json");if(!o)throw new Error("Operations history not found");const x=JSON.parse(await o.async("string"));let g=gt(u,x,a,void 0,l);return l&&(g={...g,...l}),g}function rr(i){const a=i.replace(/^.*\./,"")||void 0,p=i.replace(/^.*[/\\]/,"")||void 0;return{extension:a,fileName:p}}async function we(i){const{buffer:a,mimeType:p="application/octet-stream"}=await me(),c=rr(i),u=a.toString("base64");return{data:u,hash:G(u),mimeType:p,...c}}async function ve(i){const a=await xe(),p=Hr.getType(i)||"application/octet-stream",c=rr(i),u=a.toString("base64");return{data:u,hash:G(u),mimeType:p,...c}}function Ee(i,a){const p=i.revision[a.scope];return[q,$,J].includes(a.type)?p:p+1}function be(i,a){return{...i,revision:{...i.revision,[a.scope]:Ee(i,a)},lastModified:new Date().toISOString()}}function Fe(i,a){if([q,$,J].includes(a.type))return i;const{scope:p}=a,c=i.operations[p].slice(0,i.revision[p]);return c.push({...a,index:c.length,timestamp:new Date().toISOString(),hash:"",scope:p}),{...i,operations:{...i.operations,[p]:c}}}function _e(i,a){let p=Fe(i,a);return p=be(p,a),p}function Ae(i,a,p){switch(Rt().parse(a),a.type){case Pt:return Rr(i,a.input);case q:return Mr(i,a,p);case $:return Cr(i,a,p);case J:return Lr(i,a,p);case Wt:return qr(i,a.input.state);default:return i}}function xt(i,a,p,c){let u=i;return ot(a)&&(u=Ae(u,a,p)),u=_e(u,a),u=M.produce(u,f=>{const l=p(f.state,a,c);if(l)return M.castDraft({...u,state:l})}),M.produce(u,f=>{if([q,$,J].includes(a.type))return f;const l=a.scope||"global";f.operations[l][f.operations[l].length-1].hash=dt(f,l),!ot(a)&&a.attachments&&a.attachments.forEach(o=>{const{hash:x,...g}=o;f.attachments[x]={...g}})})}function ot(i){return[Pt,q,$,J,Wt].includes(i.type)}function N(i,a,p,c,u="global"){if(!i)throw new Error("Empty action type");if(typeof i!="string")throw new Error(`Invalid action type: ${i}`);const f={type:i,input:a,scope:u};p&&(f.attachments=p);try{c==null||c().parse(f.input)}catch(l){throw new Error(`Invalid action input: ${l}`)}return f}function er(i,a=xt){return(p,c,u)=>a(p,c,i,u)}const ir=(i,a)=>({name:"",documentType:"",revision:{global:0,local:0},created:new Date().toISOString(),lastModified:new Date().toISOString(),attachments:{},...i,state:(a==null?void 0:a(i==null?void 0:i.state))??(i==null?void 0:i.state)??{global:{},local:{}}}),nr=(i,a)=>{const p=ir(i,a);return{...p,initialState:p,operations:{global:[],local:[]}}},dt=(i,a="global")=>G(Ur(i.state[a])),Se=(i,a=1e3)=>{const p=Math.random()*a;return G(`${(i??new Date).toISOString()}${p}`)};function R(i){return M.castImmutable(M.freeze(i,!0))}function ar(i){return Object.values(i).flatMap(a=>a).sort((a,p)=>new Date(a.timestamp).getTime()-new Date(p.timestamp).getTime())}function C(i,a,p,c,u,f=xt){const l=er(p,f);return gt(i,a,l,c,u)}function gt(i,a,p,c,u){const f=nr(i),l=Object.keys(a).reduce((g,v)=>{const y=v;return{...g,[y]:a[y].slice(0,u==null?void 0:u.revision[y])}},{}),o=ar(l).reduce((g,v)=>p(g,v,c),f),x=Object.keys(o.operations).reduce((g,v)=>{const y=v,j=u&&u.revision[y]<a[y].length?a[y].slice(u.revision[y]):[];return{...g,[y]:[...o.operations[y].map((_,z)=>{var U;return{..._,timestamp:((U=a[y][z])==null?void 0:U.timestamp)??_.timestamp}}),...j]}},{global:[],local:[]});return{...o,operations:x}}const or=i=>N("SET_NAME",i,void 0,lt),pr=(i=1,a="global")=>N("UNDO",i,void 0,ut,a),sr=(i=1,a="global")=>N("REDO",i,void 0,ct,a),cr=(i,a,p="global")=>N("PRUNE",{start:i,end:a},void 0,st,p),yt=(i,a)=>N("LOAD_STATE",{state:i,operations:a},void 0,pt),Be=Object.freeze(Object.defineProperty({__proto__:null,loadState:yt,prune:cr,redo:sr,setName:or,undo:pr},Symbol.toStringTag,{value:"Module"}));class je{constructor(a,p,c){Z(this,"_document");Z(this,"_reducer");Z(this,"_signalDispatch");this._reducer=a,this._document=p,this._signalDispatch=c}dispatch(a){return this._document=this._reducer(this._document,a,this._signalDispatch),this}saveToFile(a,p,c){return Qt(this._document,a,p,c)}async loadFromFile(a){this._document=await at(a,this._reducer)}static async stateFromFile(a,p){return await at(a,p)}get state(){return R(this._document.state)}get operations(){return R(this._document.operations)}get name(){return this._document.name}get documentType(){return this._document.documentType}get created(){return this._document.created}get lastModified(){return this._document.lastModified}get revision(){return this._document.revision.global}getRevision(a){return this._document.revision[a]}get initialState(){return R(this._document.initialState)}toDocument(){return R(this._document)}getAttachment(a){return this._document.attachments[a]}setName(a){return this.dispatch(or(a)),this}undo(a){return this.dispatch(pr(a)),this}redo(a){return this.dispatch(sr(a)),this}prune(a,p){return this.dispatch(cr(a,p)),this}loadState(a,p){return this.dispatch(yt(a,p)),this}}function Ie(i,a){a.forEach(p=>{Object.getOwnPropertyNames(p.prototype).forEach(c=>{Object.defineProperty(i.prototype,c,Object.getOwnPropertyDescriptor(p.prototype,c)||Object.create(null))})})}exports.BaseActions=Be;exports.BaseDocument=je;exports.applyMixins=Ie;exports.baseReducer=xt;exports.createAction=N;exports.createDocument=nr;exports.createExtendedState=ir;exports.createReducer=er;exports.createZip=mt;exports.getLocalFile=ve;exports.getRemoteFile=we;exports.hashDocument=dt;exports.hashKey=Se;exports.isBaseAction=ot;exports.loadFromFile=at;exports.loadFromInput=tr;exports.readOnly=R;exports.replayDocument=gt;exports.replayOperations=C;exports.saveToFile=Qt;exports.saveToFileHandle=ge;exports.sortOperations=ar;exports.zod=Nr;