document-model 1.0.22 → 1.0.23
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/dist/browser/document-model.cjs +1 -1
- package/dist/browser/document-model.js +2 -2
- package/dist/browser/document.cjs +1 -1
- package/dist/browser/document.js +4 -4
- package/dist/browser/index.cjs +1 -1
- package/dist/browser/index.js +3 -3
- package/dist/browser/internal/{index-k0_xGFJa.js → index-8aac3662.js} +400 -398
- package/dist/browser/internal/index-8fceb2dc.js +1 -0
- package/dist/browser/internal/index-cd28e4ab.js +22 -0
- package/dist/browser/internal/index-e127ba7e.js +36 -0
- package/dist/browser/internal/{object-wtPuW7QY.js → object-67d1240b.js} +409 -359
- package/dist/browser/internal/object-ba4e810d.js +6 -0
- package/dist/browser/src/document/actions/creators.d.ts +3 -2
- package/dist/browser/src/document/actions/types.d.ts +1 -1
- package/dist/browser/src/document/object.d.ts +58 -2
- package/dist/browser/src/document/reducer.d.ts +2 -2
- package/dist/browser/src/document/schema/types.d.ts +9 -3
- package/dist/browser/src/document/signal.d.ts +7 -1
- package/dist/browser/src/document/types.d.ts +12 -1
- package/dist/browser/src/document/utils/base.d.ts +15 -2
- package/dist/browser/src/document-model/gen/header/object.d.ts +7 -6
- package/dist/browser/src/document-model/gen/module/object.d.ts +6 -5
- package/dist/browser/src/document-model/gen/operation/object.d.ts +11 -10
- package/dist/browser/src/document-model/gen/operation-error/object.d.ts +8 -7
- package/dist/browser/src/document-model/gen/operation-example/object.d.ts +5 -4
- package/dist/browser/src/document-model/gen/reducer.d.ts +2 -0
- package/dist/browser/src/document-model/gen/state/object.d.ts +7 -6
- package/dist/browser/src/document-model/gen/versioning/object.d.ts +6 -5
- package/dist/browser/src/document-model/index.d.ts +2 -1
- package/dist/browser/test/document/skip-operations.test.d.ts +1 -0
- package/dist/browser/test/document-model/skip-operations.test.d.ts +1 -0
- package/dist/browser/test/helpers.d.ts +5 -2
- package/dist/node/document-model.cjs +1 -1
- package/dist/node/document-model.js +2 -2
- package/dist/node/document.cjs +1 -1
- package/dist/node/document.js +4 -4
- package/dist/node/index.cjs +1 -1
- package/dist/node/index.js +3 -3
- package/dist/node/internal/index-ac24dd92.js +36 -0
- package/dist/node/internal/index-c75a9c7a.js +1 -0
- package/dist/node/internal/{index-vqhz-N10.js → index-e9f12d45.js} +400 -398
- package/dist/node/internal/index-f04f94a6.js +22 -0
- package/dist/node/internal/object-10b89c54.js +1 -0
- package/dist/node/internal/{object-yzJ3jRpE.js → object-cb276649.js} +317 -267
- package/dist/node/src/document/actions/creators.d.ts +3 -2
- package/dist/node/src/document/actions/types.d.ts +1 -1
- package/dist/node/src/document/object.d.ts +58 -2
- package/dist/node/src/document/reducer.d.ts +2 -2
- package/dist/node/src/document/schema/types.d.ts +9 -3
- package/dist/node/src/document/signal.d.ts +7 -1
- package/dist/node/src/document/types.d.ts +12 -1
- package/dist/node/src/document/utils/base.d.ts +15 -2
- package/dist/node/src/document-model/gen/header/object.d.ts +7 -6
- package/dist/node/src/document-model/gen/module/object.d.ts +6 -5
- package/dist/node/src/document-model/gen/operation/object.d.ts +11 -10
- package/dist/node/src/document-model/gen/operation-error/object.d.ts +8 -7
- package/dist/node/src/document-model/gen/operation-example/object.d.ts +5 -4
- package/dist/node/src/document-model/gen/reducer.d.ts +2 -0
- package/dist/node/src/document-model/gen/state/object.d.ts +7 -6
- package/dist/node/src/document-model/gen/versioning/object.d.ts +6 -5
- package/dist/node/src/document-model/index.d.ts +2 -1
- package/dist/node/test/document/skip-operations.test.d.ts +1 -0
- package/dist/node/test/document-model/skip-operations.test.d.ts +1 -0
- package/dist/node/test/helpers.d.ts +5 -2
- package/package.json +1 -1
- package/dist/browser/internal/index-BGvdUwMj.js +0 -1
- package/dist/browser/internal/index-ZaSXpgfR.js +0 -22
- package/dist/browser/internal/index-vHDbgY8i.js +0 -34
- package/dist/browser/internal/object-fIfH8K9b.js +0 -6
- package/dist/node/internal/index-3_D7m254.js +0 -34
- package/dist/node/internal/index-ffEJwj4v.js +0 -22
- package/dist/node/internal/index-frYzO4l6.js +0 -1
- package/dist/node/internal/object-Vf10stKL.js +0 -1
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
"use strict";var Ue=Object.defineProperty;var ke=(i,o,p)=>o in i?Ue(i,o,{enumerable:!0,configurable:!0,writable:!0,value:p}):i[o]=p;var K=(i,o,p)=>(ke(i,typeof o!="symbol"?o+"":o,p),p);const Te=require("json-stringify-deterministic"),C=require("immer"),d=require("zod"),Ut=require("jszip"),kt=i=>i!=null,ze=d.z.any().refine(i=>kt(i)),Tt=d.z.enum(["LOAD_STATE"]),zt=d.z.enum(["PRUNE"]),Ot=d.z.enum(["REDO"]),Dt=d.z.enum(["SET_NAME"]),Nt=d.z.enum(["UNDO"]);function Oe(){return d.z.object({__typename:d.z.literal("Action").optional(),type:d.z.string()})}function q(){return d.z.literal("global").or(d.z.literal("local"))}function Mt(){return d.z.union([Rt(),Lt(),qt(),$t(),Pt()])}function De(){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 Rt(){return d.z.object({input:d.z.lazy(()=>pt()),type:Tt,scope:q()})}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 Ne(){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:q()})}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:Ot,scope:q()})}const lt=d.z.string;function $t(){return d.z.object({input:lt(),type:Dt,scope:d.z.literal("global")})}function Me(){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 Pt(){return d.z.object({input:ut(),type:Nt,scope:q()})}const Re=Object.freeze(Object.defineProperty({__proto__:null,ActionSchema:Oe,BaseActionSchema:Mt,DocumentFileSchema:De,LoadStateActionInputSchema:pt,LoadStateActionSchema:Rt,LoadStateActionStateInputSchema:Ct,Load_StateSchema:Tt,OperationSchema:Ne,OperationScopeSchema:q,PruneActionInputSchema:st,PruneActionSchema:Lt,PruneSchema:zt,RedoActionInputSchema:ct,RedoActionSchema:qt,RedoSchema:Ot,SetNameActionInputSchema:lt,SetNameActionSchema:$t,SetNameOperationSchema:Me,Set_NameSchema:Dt,UndoActionInputSchema:ut,UndoActionSchema:Pt,UndoSchema:Nt,definedNonNullAnySchema:ze,isDefinedNonNullAny:kt},Symbol.toStringTag,{value:"Module"}));function Ce(i,o){return{...i,name:o}}function Le(i,o,p){const{scope:c,input:u}=o,f=i.revision[o.scope],l=Math.min(u,f),a=i.operations[c].slice(0,f-l);return{...L(i.initialState,{...i.operations,[c]:a},p),operations:i.operations,revision:{...i.revision,[c]:i.revision[c]-l}}}function qe(i,o,p){const{scope:c,input:u}=o,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,a=i.operations[c].slice(0,i.revision[c]+l);return{...L(i.initialState,{...i.operations,[c]:a},p),operations:i.operations,revision:{...i.revision,[c]:i.revision[c]+l}}}function $e(i,o,p){const{scope:c}=o,u=i.operations[c];let{input:{start:f,end:l}}=o;f=f||0,l=l||u.length;const a=u.slice(f,l),x=u.slice(0,f),g=u.slice(l),y=L(i.initialState,{...i.operations,[c]:x.concat(a)},p),{name:v,state:E}=y,A=x.length,U=x.length?x[x.length-1].timestamp:g.length?g[0].timestamp:new Date().toISOString();return L(i.initialState,{...i.operations,[c]:[...x,{...yt({name:v,state:E},a.length),timestamp:U,index:A,hash:dt({state:E},"global")},...g.map((z,N)=>({...z,index:A+N+1}))]},p)}function Pe(i,o){return{...i,name:o.name,state:o.state??{global:{},local:{}}}}const Jt="SET_NAME",$="UNDO",P="REDO",J="PRUNE",Wt="LOAD_STATE";function Ht(i){return i&&i.__esModule&&Object.prototype.hasOwnProperty.call(i,"default")?i.default:i}function Y(){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)}Y.prototype.define=function(i,o){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(!o&&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(o||!this._extensions[p]){const u=c[0];this._extensions[p]=u[0]!=="*"?u:u.substr(1)}}};Y.prototype.getType=function(i){i=String(i);let o=i.replace(/^.*[/\\]/,"").toLowerCase(),p=o.replace(/^.*\./,"").toLowerCase(),c=o.length<i.length;return(p.length<o.length-1||!c)&&this._types[p]||null};Y.prototype.getExtension=function(i){return i=/^\s*([^;\s]*)/.test(i)&&RegExp.$1,i&&this._extensions[i.toLowerCase()]||null};var Je=Y,We={"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 He=Je;var Ze=new He(We);const Ke=Ht(Ze);var it={exports:{}};typeof Object.create=="function"?it.exports=function(o,p){p&&(o.super_=p,o.prototype=Object.create(p.prototype,{constructor:{value:o,enumerable:!1,writable:!0,configurable:!0}}))}:it.exports=function(o,p){if(p){o.super_=p;var c=function(){};c.prototype=p.prototype,o.prototype=new c,o.prototype.constructor=o}};var Ye=it.exports,nt={exports:{}},Zt={},X={};X.byteLength=Ve;X.toByteArray=tr;X.fromByteArray=ir;var T=[],I=[],Xe=typeof Uint8Array<"u"?Uint8Array:Array,rt="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(var M=0,Ge=rt.length;M<Ge;++M)T[M]=rt[M],I[rt.charCodeAt(M)]=M;I["-".charCodeAt(0)]=62;I["_".charCodeAt(0)]=63;function Kt(i){var o=i.length;if(o%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var p=i.indexOf("=");p===-1&&(p=o);var c=p===o?0:4-p%4;return[p,c]}function Ve(i){var o=Kt(i),p=o[0],c=o[1];return(p+c)*3/4-c}function Qe(i,o,p){return(o+p)*3/4-p}function tr(i){var o,p=Kt(i),c=p[0],u=p[1],f=new Xe(Qe(i,c,u)),l=0,a=u>0?c-4:c,x;for(x=0;x<a;x+=4)o=I[i.charCodeAt(x)]<<18|I[i.charCodeAt(x+1)]<<12|I[i.charCodeAt(x+2)]<<6|I[i.charCodeAt(x+3)],f[l++]=o>>16&255,f[l++]=o>>8&255,f[l++]=o&255;return u===2&&(o=I[i.charCodeAt(x)]<<2|I[i.charCodeAt(x+1)]>>4,f[l++]=o&255),u===1&&(o=I[i.charCodeAt(x)]<<10|I[i.charCodeAt(x+1)]<<4|I[i.charCodeAt(x+2)]>>2,f[l++]=o>>8&255,f[l++]=o&255),f}function er(i){return T[i>>18&63]+T[i>>12&63]+T[i>>6&63]+T[i&63]}function rr(i,o,p){for(var c,u=[],f=o;f<p;f+=3)c=(i[f]<<16&16711680)+(i[f+1]<<8&65280)+(i[f+2]&255),u.push(er(c));return u.join("")}function ir(i){for(var o,p=i.length,c=p%3,u=[],f=16383,l=0,a=p-c;l<a;l+=f)u.push(rr(i,l,l+f>a?a:l+f));return c===1?(o=i[p-1],u.push(T[o>>2]+T[o<<4&63]+"==")):c===2&&(o=(i[p-2]<<8)+i[p-1],u.push(T[o>>10]+T[o>>4&63]+T[o<<2&63]+"=")),u.join("")}var ft={};/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh <https://feross.org/opensource> */ft.read=function(i,o,p,c,u){var f,l,a=u*8-c-1,x=(1<<a)-1,g=x>>1,y=-7,v=p?u-1:0,E=p?-1:1,A=i[o+v];for(v+=E,f=A&(1<<-y)-1,A>>=-y,y+=a;y>0;f=f*256+i[o+v],v+=E,y-=8);for(l=f&(1<<-y)-1,f>>=-y,y+=c;y>0;l=l*256+i[o+v],v+=E,y-=8);if(f===0)f=1-g;else{if(f===x)return l?NaN:(A?-1:1)*(1/0);l=l+Math.pow(2,c),f=f-g}return(A?-1:1)*l*Math.pow(2,f-c)};ft.write=function(i,o,p,c,u,f){var l,a,x,g=f*8-u-1,y=(1<<g)-1,v=y>>1,E=u===23?Math.pow(2,-24)-Math.pow(2,-77):0,A=c?0:f-1,U=c?1:-1,z=o<0||o===0&&1/o<0?1:0;for(o=Math.abs(o),isNaN(o)||o===1/0?(a=isNaN(o)?1:0,l=y):(l=Math.floor(Math.log(o)/Math.LN2),o*(x=Math.pow(2,-l))<1&&(l--,x*=2),l+v>=1?o+=E/x:o+=E*Math.pow(2,1-v),o*x>=2&&(l++,x/=2),l+v>=y?(a=0,l=y):l+v>=1?(a=(o*x-1)*Math.pow(2,u),l=l+v):(a=o*Math.pow(2,v-1)*Math.pow(2,u),l=0));u>=8;i[p+A]=a&255,A+=U,a/=256,u-=8);for(l=l<<u|a,g+=u;g>0;i[p+A]=l&255,A+=U,l/=256,g-=8);i[p+A-U]|=z*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 o=X,p=ft,c=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;i.Buffer=a,i.SlowBuffer=fe,i.INSPECT_MAX_BYTES=50;var u=2147483647;i.kMaxLength=u,a.TYPED_ARRAY_SUPPORT=f(),!a.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 r=new Uint8Array(1),t={foo:function(){return 42}};return Object.setPrototypeOf(t,Uint8Array.prototype),Object.setPrototypeOf(r,t),r.foo()===42}catch{return!1}}Object.defineProperty(a.prototype,"parent",{enumerable:!0,get:function(){if(a.isBuffer(this))return this.buffer}}),Object.defineProperty(a.prototype,"offset",{enumerable:!0,get:function(){if(a.isBuffer(this))return this.byteOffset}});function l(r){if(r>u)throw new RangeError('The value "'+r+'" is invalid for option "size"');var t=new Uint8Array(r);return Object.setPrototypeOf(t,a.prototype),t}function a(r,t,e){if(typeof r=="number"){if(typeof t=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return v(r)}return x(r,t,e)}a.poolSize=8192;function x(r,t,e){if(typeof r=="string")return E(r,t);if(ArrayBuffer.isView(r))return U(r);if(r==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof r);if(k(r,ArrayBuffer)||r&&k(r.buffer,ArrayBuffer)||typeof SharedArrayBuffer<"u"&&(k(r,SharedArrayBuffer)||r&&k(r.buffer,SharedArrayBuffer)))return z(r,t,e);if(typeof r=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');var n=r.valueOf&&r.valueOf();if(n!=null&&n!==r)return a.from(n,t,e);var s=N(r);if(s)return s;if(typeof Symbol<"u"&&Symbol.toPrimitive!=null&&typeof r[Symbol.toPrimitive]=="function")return a.from(r[Symbol.toPrimitive]("string"),t,e);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof r)}a.from=function(r,t,e){return x(r,t,e)},Object.setPrototypeOf(a.prototype,Uint8Array.prototype),Object.setPrototypeOf(a,Uint8Array);function g(r){if(typeof r!="number")throw new TypeError('"size" argument must be of type number');if(r<0)throw new RangeError('The value "'+r+'" is invalid for option "size"')}function y(r,t,e){return g(r),r<=0?l(r):t!==void 0?typeof e=="string"?l(r).fill(t,e):l(r).fill(t):l(r)}a.alloc=function(r,t,e){return y(r,t,e)};function v(r){return g(r),l(r<0?0:Q(r)|0)}a.allocUnsafe=function(r){return v(r)},a.allocUnsafeSlow=function(r){return v(r)};function E(r,t){if((typeof t!="string"||t==="")&&(t="utf8"),!a.isEncoding(t))throw new TypeError("Unknown encoding: "+t);var e=wt(r,t)|0,n=l(e),s=n.write(r,t);return s!==e&&(n=n.slice(0,s)),n}function A(r){for(var t=r.length<0?0:Q(r.length)|0,e=l(t),n=0;n<t;n+=1)e[n]=r[n]&255;return e}function U(r){if(k(r,Uint8Array)){var t=new Uint8Array(r);return z(t.buffer,t.byteOffset,t.byteLength)}return A(r)}function z(r,t,e){if(t<0||r.byteLength<t)throw new RangeError('"offset" is outside of buffer bounds');if(r.byteLength<t+(e||0))throw new RangeError('"length" is outside of buffer bounds');var n;return t===void 0&&e===void 0?n=new Uint8Array(r):e===void 0?n=new Uint8Array(r,t):n=new Uint8Array(r,t,e),Object.setPrototypeOf(n,a.prototype),n}function N(r){if(a.isBuffer(r)){var t=Q(r.length)|0,e=l(t);return e.length===0||r.copy(e,0,0,t),e}if(r.length!==void 0)return typeof r.length!="number"||et(r.length)?l(0):A(r);if(r.type==="Buffer"&&Array.isArray(r.data))return A(r.data)}function Q(r){if(r>=u)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+u.toString(16)+" bytes");return r|0}function fe(r){return+r!=r&&(r=0),a.alloc(+r)}a.isBuffer=function(t){return t!=null&&t._isBuffer===!0&&t!==a.prototype},a.compare=function(t,e){if(k(t,Uint8Array)&&(t=a.from(t,t.offset,t.byteLength)),k(e,Uint8Array)&&(e=a.from(e,e.offset,e.byteLength)),!a.isBuffer(t)||!a.isBuffer(e))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(t===e)return 0;for(var n=t.length,s=e.length,h=0,m=Math.min(n,s);h<m;++h)if(t[h]!==e[h]){n=t[h],s=e[h];break}return n<s?-1:s<n?1:0},a.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}},a.concat=function(t,e){if(!Array.isArray(t))throw new TypeError('"list" argument must be an Array of Buffers');if(t.length===0)return a.alloc(0);var n;if(e===void 0)for(e=0,n=0;n<t.length;++n)e+=t[n].length;var s=a.allocUnsafe(e),h=0;for(n=0;n<t.length;++n){var m=t[n];if(k(m,Uint8Array))h+m.length>s.length?a.from(m).copy(s,h):Uint8Array.prototype.set.call(s,m,h);else if(a.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(r,t){if(a.isBuffer(r))return r.length;if(ArrayBuffer.isView(r)||k(r,ArrayBuffer))return r.byteLength;if(typeof r!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof r);var e=r.length,n=arguments.length>2&&arguments[2]===!0;if(!n&&e===0)return 0;for(var s=!1;;)switch(t){case"ascii":case"latin1":case"binary":return e;case"utf8":case"utf-8":return tt(r).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return e*2;case"hex":return e>>>1;case"base64":return Bt(r).length;default:if(s)return n?-1:tt(r).length;t=(""+t).toLowerCase(),s=!0}}a.byteLength=wt;function he(r,t,e){var n=!1;if((t===void 0||t<0)&&(t=0),t>this.length||((e===void 0||e>this.length)&&(e=this.length),e<=0)||(e>>>=0,t>>>=0,e<=t))return"";for(r||(r="utf8");;)switch(r){case"hex":return Fe(this,t,e);case"utf8":case"utf-8":return bt(this,t,e);case"ascii":return Ee(this,t,e);case"latin1":case"binary":return be(this,t,e);case"base64":return we(this,t,e);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return _e(this,t,e);default:if(n)throw new TypeError("Unknown encoding: "+r);r=(r+"").toLowerCase(),n=!0}}a.prototype._isBuffer=!0;function O(r,t,e){var n=r[t];r[t]=r[e],r[e]=n}a.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 e=0;e<t;e+=2)O(this,e,e+1);return this},a.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 e=0;e<t;e+=4)O(this,e,e+3),O(this,e+1,e+2);return this},a.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 e=0;e<t;e+=8)O(this,e,e+7),O(this,e+1,e+6),O(this,e+2,e+5),O(this,e+3,e+4);return this},a.prototype.toString=function(){var t=this.length;return t===0?"":arguments.length===0?bt(this,0,t):he.apply(this,arguments)},a.prototype.toLocaleString=a.prototype.toString,a.prototype.equals=function(t){if(!a.isBuffer(t))throw new TypeError("Argument must be a Buffer");return this===t?!0:a.compare(this,t)===0},a.prototype.inspect=function(){var t="",e=i.INSPECT_MAX_BYTES;return t=this.toString("hex",0,e).replace(/(.{2})/g,"$1 ").trim(),this.length>e&&(t+=" ... "),"<Buffer "+t+">"},c&&(a.prototype[c]=a.prototype.inspect),a.prototype.compare=function(t,e,n,s,h){if(k(t,Uint8Array)&&(t=a.from(t,t.offset,t.byteLength)),!a.isBuffer(t))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof t);if(e===void 0&&(e=0),n===void 0&&(n=t?t.length:0),s===void 0&&(s=0),h===void 0&&(h=this.length),e<0||n>t.length||s<0||h>this.length)throw new RangeError("out of range index");if(s>=h&&e>=n)return 0;if(s>=h)return-1;if(e>=n)return 1;if(e>>>=0,n>>>=0,s>>>=0,h>>>=0,this===t)return 0;for(var m=h-s,w=n-e,b=Math.min(m,w),F=this.slice(s,h),B=t.slice(e,n),_=0;_<b;++_)if(F[_]!==B[_]){m=F[_],w=B[_];break}return m<w?-1:w<m?1:0};function vt(r,t,e,n,s){if(r.length===0)return-1;if(typeof e=="string"?(n=e,e=0):e>2147483647?e=2147483647:e<-2147483648&&(e=-2147483648),e=+e,et(e)&&(e=s?0:r.length-1),e<0&&(e=r.length+e),e>=r.length){if(s)return-1;e=r.length-1}else if(e<0)if(s)e=0;else return-1;if(typeof t=="string"&&(t=a.from(t,n)),a.isBuffer(t))return t.length===0?-1:Et(r,t,e,n,s);if(typeof t=="number")return t=t&255,typeof Uint8Array.prototype.indexOf=="function"?s?Uint8Array.prototype.indexOf.call(r,t,e):Uint8Array.prototype.lastIndexOf.call(r,t,e):Et(r,[t],e,n,s);throw new TypeError("val must be string, number or Buffer")}function Et(r,t,e,n,s){var h=1,m=r.length,w=t.length;if(n!==void 0&&(n=String(n).toLowerCase(),n==="ucs2"||n==="ucs-2"||n==="utf16le"||n==="utf-16le")){if(r.length<2||t.length<2)return-1;h=2,m/=2,w/=2,e/=2}function b(jt,It){return h===1?jt[It]:jt.readUInt16BE(It*h)}var F;if(s){var B=-1;for(F=e;F<m;F++)if(b(r,F)===b(t,B===-1?0:F-B)){if(B===-1&&(B=F),F-B+1===w)return B*h}else B!==-1&&(F-=F-B),B=-1}else for(e+w>m&&(e=m-w),F=e;F>=0;F--){for(var _=!0,Z=0;Z<w;Z++)if(b(r,F+Z)!==b(t,Z)){_=!1;break}if(_)return F}return-1}a.prototype.includes=function(t,e,n){return this.indexOf(t,e,n)!==-1},a.prototype.indexOf=function(t,e,n){return vt(this,t,e,n,!0)},a.prototype.lastIndexOf=function(t,e,n){return vt(this,t,e,n,!1)};function me(r,t,e,n){e=Number(e)||0;var s=r.length-e;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(et(w))return m;r[e+m]=w}return m}function xe(r,t,e,n){return H(tt(t,r.length-e),r,e,n)}function de(r,t,e,n){return H(Be(t),r,e,n)}function ge(r,t,e,n){return H(Bt(t),r,e,n)}function ye(r,t,e,n){return H(je(t,r.length-e),r,e,n)}a.prototype.write=function(t,e,n,s){if(e===void 0)s="utf8",n=this.length,e=0;else if(n===void 0&&typeof e=="string")s=e,n=this.length,e=0;else if(isFinite(e))e=e>>>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-e;if((n===void 0||n>h)&&(n=h),t.length>0&&(n<0||e<0)||e>this.length)throw new RangeError("Attempt to write outside buffer bounds");s||(s="utf8");for(var m=!1;;)switch(s){case"hex":return me(this,t,e,n);case"utf8":case"utf-8":return xe(this,t,e,n);case"ascii":case"latin1":case"binary":return de(this,t,e,n);case"base64":return ge(this,t,e,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return ye(this,t,e,n);default:if(m)throw new TypeError("Unknown encoding: "+s);s=(""+s).toLowerCase(),m=!0}},a.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function we(r,t,e){return t===0&&e===r.length?o.fromByteArray(r):o.fromByteArray(r.slice(t,e))}function bt(r,t,e){e=Math.min(r.length,e);for(var n=[],s=t;s<e;){var h=r[s],m=null,w=h>239?4:h>223?3:h>191?2:1;if(s+w<=e){var b,F,B,_;switch(w){case 1:h<128&&(m=h);break;case 2:b=r[s+1],(b&192)===128&&(_=(h&31)<<6|b&63,_>127&&(m=_));break;case 3:b=r[s+1],F=r[s+2],(b&192)===128&&(F&192)===128&&(_=(h&15)<<12|(b&63)<<6|F&63,_>2047&&(_<55296||_>57343)&&(m=_));break;case 4:b=r[s+1],F=r[s+2],B=r[s+3],(b&192)===128&&(F&192)===128&&(B&192)===128&&(_=(h&15)<<18|(b&63)<<12|(F&63)<<6|B&63,_>65535&&_<1114112&&(m=_))}}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 ve(n)}var Ft=4096;function ve(r){var t=r.length;if(t<=Ft)return String.fromCharCode.apply(String,r);for(var e="",n=0;n<t;)e+=String.fromCharCode.apply(String,r.slice(n,n+=Ft));return e}function Ee(r,t,e){var n="";e=Math.min(r.length,e);for(var s=t;s<e;++s)n+=String.fromCharCode(r[s]&127);return n}function be(r,t,e){var n="";e=Math.min(r.length,e);for(var s=t;s<e;++s)n+=String.fromCharCode(r[s]);return n}function Fe(r,t,e){var n=r.length;(!t||t<0)&&(t=0),(!e||e<0||e>n)&&(e=n);for(var s="",h=t;h<e;++h)s+=Ie[r[h]];return s}function _e(r,t,e){for(var n=r.slice(t,e),s="",h=0;h<n.length-1;h+=2)s+=String.fromCharCode(n[h]+n[h+1]*256);return s}a.prototype.slice=function(t,e){var n=this.length;t=~~t,e=e===void 0?n:~~e,t<0?(t+=n,t<0&&(t=0)):t>n&&(t=n),e<0?(e+=n,e<0&&(e=0)):e>n&&(e=n),e<t&&(e=t);var s=this.subarray(t,e);return Object.setPrototypeOf(s,a.prototype),s};function S(r,t,e){if(r%1!==0||r<0)throw new RangeError("offset is not uint");if(r+t>e)throw new RangeError("Trying to access beyond buffer length")}a.prototype.readUintLE=a.prototype.readUIntLE=function(t,e,n){t=t>>>0,e=e>>>0,n||S(t,e,this.length);for(var s=this[t],h=1,m=0;++m<e&&(h*=256);)s+=this[t+m]*h;return s},a.prototype.readUintBE=a.prototype.readUIntBE=function(t,e,n){t=t>>>0,e=e>>>0,n||S(t,e,this.length);for(var s=this[t+--e],h=1;e>0&&(h*=256);)s+=this[t+--e]*h;return s},a.prototype.readUint8=a.prototype.readUInt8=function(t,e){return t=t>>>0,e||S(t,1,this.length),this[t]},a.prototype.readUint16LE=a.prototype.readUInt16LE=function(t,e){return t=t>>>0,e||S(t,2,this.length),this[t]|this[t+1]<<8},a.prototype.readUint16BE=a.prototype.readUInt16BE=function(t,e){return t=t>>>0,e||S(t,2,this.length),this[t]<<8|this[t+1]},a.prototype.readUint32LE=a.prototype.readUInt32LE=function(t,e){return t=t>>>0,e||S(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+this[t+3]*16777216},a.prototype.readUint32BE=a.prototype.readUInt32BE=function(t,e){return t=t>>>0,e||S(t,4,this.length),this[t]*16777216+(this[t+1]<<16|this[t+2]<<8|this[t+3])},a.prototype.readIntLE=function(t,e,n){t=t>>>0,e=e>>>0,n||S(t,e,this.length);for(var s=this[t],h=1,m=0;++m<e&&(h*=256);)s+=this[t+m]*h;return h*=128,s>=h&&(s-=Math.pow(2,8*e)),s},a.prototype.readIntBE=function(t,e,n){t=t>>>0,e=e>>>0,n||S(t,e,this.length);for(var s=e,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*e)),m},a.prototype.readInt8=function(t,e){return t=t>>>0,e||S(t,1,this.length),this[t]&128?(255-this[t]+1)*-1:this[t]},a.prototype.readInt16LE=function(t,e){t=t>>>0,e||S(t,2,this.length);var n=this[t]|this[t+1]<<8;return n&32768?n|4294901760:n},a.prototype.readInt16BE=function(t,e){t=t>>>0,e||S(t,2,this.length);var n=this[t+1]|this[t]<<8;return n&32768?n|4294901760:n},a.prototype.readInt32LE=function(t,e){return t=t>>>0,e||S(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24},a.prototype.readInt32BE=function(t,e){return t=t>>>0,e||S(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]},a.prototype.readFloatLE=function(t,e){return t=t>>>0,e||S(t,4,this.length),p.read(this,t,!0,23,4)},a.prototype.readFloatBE=function(t,e){return t=t>>>0,e||S(t,4,this.length),p.read(this,t,!1,23,4)},a.prototype.readDoubleLE=function(t,e){return t=t>>>0,e||S(t,8,this.length),p.read(this,t,!0,52,8)},a.prototype.readDoubleBE=function(t,e){return t=t>>>0,e||S(t,8,this.length),p.read(this,t,!1,52,8)};function j(r,t,e,n,s,h){if(!a.isBuffer(r))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(e+n>r.length)throw new RangeError("Index out of range")}a.prototype.writeUintLE=a.prototype.writeUIntLE=function(t,e,n,s){if(t=+t,e=e>>>0,n=n>>>0,!s){var h=Math.pow(2,8*n)-1;j(this,t,e,n,h,0)}var m=1,w=0;for(this[e]=t&255;++w<n&&(m*=256);)this[e+w]=t/m&255;return e+n},a.prototype.writeUintBE=a.prototype.writeUIntBE=function(t,e,n,s){if(t=+t,e=e>>>0,n=n>>>0,!s){var h=Math.pow(2,8*n)-1;j(this,t,e,n,h,0)}var m=n-1,w=1;for(this[e+m]=t&255;--m>=0&&(w*=256);)this[e+m]=t/w&255;return e+n},a.prototype.writeUint8=a.prototype.writeUInt8=function(t,e,n){return t=+t,e=e>>>0,n||j(this,t,e,1,255,0),this[e]=t&255,e+1},a.prototype.writeUint16LE=a.prototype.writeUInt16LE=function(t,e,n){return t=+t,e=e>>>0,n||j(this,t,e,2,65535,0),this[e]=t&255,this[e+1]=t>>>8,e+2},a.prototype.writeUint16BE=a.prototype.writeUInt16BE=function(t,e,n){return t=+t,e=e>>>0,n||j(this,t,e,2,65535,0),this[e]=t>>>8,this[e+1]=t&255,e+2},a.prototype.writeUint32LE=a.prototype.writeUInt32LE=function(t,e,n){return t=+t,e=e>>>0,n||j(this,t,e,4,4294967295,0),this[e+3]=t>>>24,this[e+2]=t>>>16,this[e+1]=t>>>8,this[e]=t&255,e+4},a.prototype.writeUint32BE=a.prototype.writeUInt32BE=function(t,e,n){return t=+t,e=e>>>0,n||j(this,t,e,4,4294967295,0),this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=t&255,e+4},a.prototype.writeIntLE=function(t,e,n,s){if(t=+t,e=e>>>0,!s){var h=Math.pow(2,8*n-1);j(this,t,e,n,h-1,-h)}var m=0,w=1,b=0;for(this[e]=t&255;++m<n&&(w*=256);)t<0&&b===0&&this[e+m-1]!==0&&(b=1),this[e+m]=(t/w>>0)-b&255;return e+n},a.prototype.writeIntBE=function(t,e,n,s){if(t=+t,e=e>>>0,!s){var h=Math.pow(2,8*n-1);j(this,t,e,n,h-1,-h)}var m=n-1,w=1,b=0;for(this[e+m]=t&255;--m>=0&&(w*=256);)t<0&&b===0&&this[e+m+1]!==0&&(b=1),this[e+m]=(t/w>>0)-b&255;return e+n},a.prototype.writeInt8=function(t,e,n){return t=+t,e=e>>>0,n||j(this,t,e,1,127,-128),t<0&&(t=255+t+1),this[e]=t&255,e+1},a.prototype.writeInt16LE=function(t,e,n){return t=+t,e=e>>>0,n||j(this,t,e,2,32767,-32768),this[e]=t&255,this[e+1]=t>>>8,e+2},a.prototype.writeInt16BE=function(t,e,n){return t=+t,e=e>>>0,n||j(this,t,e,2,32767,-32768),this[e]=t>>>8,this[e+1]=t&255,e+2},a.prototype.writeInt32LE=function(t,e,n){return t=+t,e=e>>>0,n||j(this,t,e,4,2147483647,-2147483648),this[e]=t&255,this[e+1]=t>>>8,this[e+2]=t>>>16,this[e+3]=t>>>24,e+4},a.prototype.writeInt32BE=function(t,e,n){return t=+t,e=e>>>0,n||j(this,t,e,4,2147483647,-2147483648),t<0&&(t=4294967295+t+1),this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=t&255,e+4};function _t(r,t,e,n,s,h){if(e+n>r.length)throw new RangeError("Index out of range");if(e<0)throw new RangeError("Index out of range")}function At(r,t,e,n,s){return t=+t,e=e>>>0,s||_t(r,t,e,4),p.write(r,t,e,n,23,4),e+4}a.prototype.writeFloatLE=function(t,e,n){return At(this,t,e,!0,n)},a.prototype.writeFloatBE=function(t,e,n){return At(this,t,e,!1,n)};function St(r,t,e,n,s){return t=+t,e=e>>>0,s||_t(r,t,e,8),p.write(r,t,e,n,52,8),e+8}a.prototype.writeDoubleLE=function(t,e,n){return St(this,t,e,!0,n)},a.prototype.writeDoubleBE=function(t,e,n){return St(this,t,e,!1,n)},a.prototype.copy=function(t,e,n,s){if(!a.isBuffer(t))throw new TypeError("argument should be a Buffer");if(n||(n=0),!s&&s!==0&&(s=this.length),e>=t.length&&(e=t.length),e||(e=0),s>0&&s<n&&(s=n),s===n||t.length===0||this.length===0)return 0;if(e<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-e<s-n&&(s=t.length-e+n);var h=s-n;return this===t&&typeof Uint8Array.prototype.copyWithin=="function"?this.copyWithin(e,n,s):Uint8Array.prototype.set.call(t,this.subarray(n,s),e),h},a.prototype.fill=function(t,e,n,s){if(typeof t=="string"){if(typeof e=="string"?(s=e,e=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"&&!a.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(e<0||this.length<e||this.length<n)throw new RangeError("Out of range index");if(n<=e)return this;e=e>>>0,n=n===void 0?this.length:n>>>0,t||(t=0);var m;if(typeof t=="number")for(m=e;m<n;++m)this[m]=t;else{var w=a.isBuffer(t)?t:a.from(t,s),b=w.length;if(b===0)throw new TypeError('The value "'+t+'" is invalid for argument "value"');for(m=0;m<n-e;++m)this[m+e]=w[m%b]}return this};var Ae=/[^+/0-9A-Za-z-_]/g;function Se(r){if(r=r.split("=")[0],r=r.trim().replace(Ae,""),r.length<2)return"";for(;r.length%4!==0;)r=r+"=";return r}function tt(r,t){t=t||1/0;for(var e,n=r.length,s=null,h=[],m=0;m<n;++m){if(e=r.charCodeAt(m),e>55295&&e<57344){if(!s){if(e>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=e;continue}if(e<56320){(t-=3)>-1&&h.push(239,191,189),s=e;continue}e=(s-55296<<10|e-56320)+65536}else s&&(t-=3)>-1&&h.push(239,191,189);if(s=null,e<128){if((t-=1)<0)break;h.push(e)}else if(e<2048){if((t-=2)<0)break;h.push(e>>6|192,e&63|128)}else if(e<65536){if((t-=3)<0)break;h.push(e>>12|224,e>>6&63|128,e&63|128)}else if(e<1114112){if((t-=4)<0)break;h.push(e>>18|240,e>>12&63|128,e>>6&63|128,e&63|128)}else throw new Error("Invalid code point")}return h}function Be(r){for(var t=[],e=0;e<r.length;++e)t.push(r.charCodeAt(e)&255);return t}function je(r,t){for(var e,n,s,h=[],m=0;m<r.length&&!((t-=2)<0);++m)e=r.charCodeAt(m),n=e>>8,s=e%256,h.push(s),h.push(n);return h}function Bt(r){return o.toByteArray(Se(r))}function H(r,t,e,n){for(var s=0;s<n&&!(s+e>=t.length||s>=r.length);++s)t[s+e]=r[s];return s}function k(r,t){return r instanceof t||r!=null&&r.constructor!=null&&r.constructor.name!=null&&r.constructor.name===t.name}function et(r){return r!==r}var Ie=function(){for(var r="0123456789abcdef",t=new Array(256),e=0;e<16;++e)for(var n=e*16,s=0;s<16;++s)t[n+s]=r[e]+r[s];return t}()})(Zt);/*! safe-buffer. MIT License. Feross Aboukhadijeh <https://feross.org/opensource> */(function(i,o){var p=Zt,c=p.Buffer;function u(l,a){for(var x in l)a[x]=l[x]}c.from&&c.alloc&&c.allocUnsafe&&c.allocUnsafeSlow?i.exports=p:(u(p,o),o.Buffer=f);function f(l,a,x){return c(l,a,x)}f.prototype=Object.create(c.prototype),u(c,f),f.from=function(l,a,x){if(typeof l=="number")throw new TypeError("Argument must not be a number");return c(l,a,x)},f.alloc=function(l,a,x){if(typeof l!="number")throw new TypeError("Argument must be a number");var g=c(l);return a!==void 0?typeof x=="string"?g.fill(a,x):g.fill(a):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 G(i,o){this._block=Xt.alloc(i),this._finalSize=o,this._blockSize=i,this._len=0}G.prototype.update=function(i,o){typeof i=="string"&&(o=o||"utf8",i=Xt.from(i,o));for(var p=this._block,c=this._blockSize,u=i.length,f=this._len,l=0;l<u;){for(var a=f%c,x=Math.min(u-l,c-a),g=0;g<x;g++)p[a+g]=i[l+g];f+=x,l+=x,f%c===0&&this._update(p)}return this._len+=u,this};G.prototype.digest=function(i){var o=this._len%this._blockSize;this._block[o]=128,this._block.fill(0,o+1),o>=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};G.prototype._update=function(){throw new Error("_update must be implemented by subclass")};var nr=G,or=Ye,Gt=nr,ar=Yt.Buffer,pr=[1518500249,1859775393,-1894007588,-899497514],sr=new Array(80);function W(){this.init(),this._w=sr,Gt.call(this,64,56)}or(W,Gt);W.prototype.init=function(){return this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520,this};function cr(i){return i<<1|i>>>31}function lr(i){return i<<5|i>>>27}function ur(i){return i<<30|i>>>2}function fr(i,o,p,c){return i===0?o&p|~o&c:i===2?o&p|o&c|p&c:o^p^c}W.prototype._update=function(i){for(var o=this._w,p=this._a|0,c=this._b|0,u=this._c|0,f=this._d|0,l=this._e|0,a=0;a<16;++a)o[a]=i.readInt32BE(a*4);for(;a<80;++a)o[a]=cr(o[a-3]^o[a-8]^o[a-14]^o[a-16]);for(var x=0;x<80;++x){var g=~~(x/20),y=lr(p)+fr(g,c,u,f)+l+o[x]+pr[g]|0;l=f,f=u,u=ur(c),c=p,p=y}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};W.prototype._hash=function(){var i=ar.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 hr=W;const mr=Ht(hr),ht=new Error("File system not available.");function xr(i,o,p){throw ht}function Vt(i){throw ht}function dr(i){throw ht}const gr=async i=>Vt();function yr(i){let o="";for(let p=0;p<i.length;p+=2)o+=String.fromCharCode(parseInt(i.substr(p,2),16));return btoa(o)}const V=(i,o="sha1")=>{if(o!=="sha1")throw new Error("Only sha1 algorithm is available.");const p=new mr;return yr(p.update(i).digest("hex"))},mt=async i=>{const o=new Ut,{name:p,revision:c,documentType:u,created:f,lastModified:l}=i,a={name:p,revision:c,documentType:u,created:f,lastModified:l};return o.file("header.json",JSON.stringify(a,null,2)),o.file("state.json",JSON.stringify(i.initialState||{},null,2)),o.file("operations.json",JSON.stringify(i.operations,null,2)),Object.keys(i.attachments).forEach(g=>{const{data:y,...v}=i.attachments[g];o.file(g,y,{base64:!0,createFolders:!0,comment:JSON.stringify(v)})}),o},Qt=async(i,o,p,c)=>{await(await mt(i)).generateAsync({type:"uint8array",streamFiles:!0});const f=c??i.name,l=`.${p}.zip`;return xr(o,f.endsWith(l)?f:`${f}${l}`)},wr=async(i,o)=>{const c=await(await mt(i)).generateAsync({type:"blob"}),u=await o.createWritable();await u.write(c),await u.close()},ot=async(i,o)=>{const p=Vt();return te(p,o)},te=async(i,o)=>{const p=new Ut;return await p.loadAsync(i),vr(p,o)};async function vr(i,o){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 a=i.file("operations.json");if(!a)throw new Error("Operations history not found");const x=JSON.parse(await a.async("string"));let g=gt(u,x,o,void 0,l);return l&&(g={...g,...l}),g}function ee(i){const o=i.replace(/^.*\./,"")||void 0,p=i.replace(/^.*[/\\]/,"")||void 0;return{extension:o,fileName:p}}async function Er(i){const{buffer:o,mimeType:p="application/octet-stream"}=await dr(),c=ee(i),u=o.toString("base64");return{data:u,hash:V(u),mimeType:p,...c}}async function br(i){const o=await gr(),p=Ke.getType(i)||"application/octet-stream",c=ee(i),u=o.toString("base64");return{data:u,hash:V(u),mimeType:p,...c}}function Fr(i,o){const p=i.revision[o.scope];return[$,P,J].includes(o.type)?p:p+1}function _r(i,o){return{...i,revision:{...i.revision,[o.scope]:Fr(i,o)},lastModified:new Date().toISOString()}}function Ar(i,o,p=0){if([$,P,J].includes(o.type))return i;const{scope:c}=o,u=i.operations[c].slice(0,i.revision[c]);return u.push({...o,index:u.length,timestamp:new Date().toISOString(),hash:"",scope:c,skip:p}),{...i,operations:{...i.operations,[c]:u}}}function Sr(i,o,p=0){let c=Ar(i,o,p);return c=_r(c,o),c}function Br(i,o,p){switch(Mt().parse(o),o.type){case Jt:return Ce(i,o.input);case $:return Le(i,o,p);case P:return qe(i,o,p);case J:return $e(i,o,p);case Wt:return Pe(i,o.input.state);default:return i}}function xt(i,o,p,c,u={}){const{skip:f=0}=u;let l=i;return at(o)&&(l=Br(l,o,p)),l=Sr(l,o,f),l=C.produce(l,a=>{const x=p(a.state,o,c);if(x)return C.castDraft({...l,state:x})}),C.produce(l,a=>{if([$,P,J].includes(o.type))return a;const x=o.scope||"global";a.operations[x][a.operations[x].length-1].hash=dt(a,x),!at(o)&&o.attachments&&o.attachments.forEach(g=>{const{hash:y,...v}=g;a.attachments[y]={...v}})})}function at(i){return[Jt,$,P,J,Wt].includes(i.type)}function D(i,o,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:o,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 re(i,o=xt){return(p,c,u,f)=>o(p,c,i,u,f)}const ie=(i,o)=>({name:"",documentType:"",revision:{global:0,local:0},created:new Date().toISOString(),lastModified:new Date().toISOString(),attachments:{},...i,state:(o==null?void 0:o(i==null?void 0:i.state))??(i==null?void 0:i.state)??{global:{},local:{}}}),ne=(i,o)=>{const p=ie(i,o);return{...p,initialState:p,operations:{global:[],local:[]}}},dt=(i,o="global")=>V(Te(i.state[o])),jr=(i,o=1e3)=>{const p=Math.random()*o;return V(`${(i??new Date).toISOString()}${p}`)};function R(i){return C.castImmutable(C.freeze(i,!0))}function oe(i){const o=[...i];let p=0,c=o.length>0?o[o.length-1].index:0;const u=[];for(const f of o.reverse()){if(p>0){const a=c-f.index;p-=a}if(p<0)throw new Error("Invalid operation index, missing operations");const l={ignore:p>0,operation:f};f.skip>0&&(p=p+(f.skip+1)),c=f.index,u.push(l)}return u.reverse()}function Ir(i){return Object.values(i).flatMap(o=>o).sort((o,p)=>new Date(o.timestamp).getTime()-new Date(p.timestamp).getTime())}function ae(i){return Object.values(i).flatMap(o=>o).sort((o,p)=>new Date(o.operation.timestamp).getTime()-new Date(p.operation.timestamp).getTime())}function L(i,o,p,c,u,f=xt){const l=re(p,f);return gt(i,o,l,c,u)}function gt(i,o,p,c,u){const f=ne(i),l=Object.keys(o).reduce((y,v)=>{const E=v;return{...y,[E]:o[E].slice(0,u==null?void 0:u.revision[E])}},{}),a=Object.keys(l).reduce((y,v)=>{const E=v;return{...y,[E]:oe(l[E])}},{}),x=ae(a).reduce((y,{ignore:v,operation:E})=>v?p(y,ue(E.scope),c,{skip:E.skip}):p(y,E,c),f),g=Object.keys(x.operations).reduce((y,v)=>{const E=v,A=u&&u.revision[E]<o[E].length?o[E].slice(u.revision[E]):[];return{...y,[E]:[...x.operations[E].map((U,z)=>{var N;return{...U,timestamp:((N=o[E][z])==null?void 0:N.timestamp)??U.timestamp}}),...A]}},{global:[],local:[]});return{...x,operations:g}}const pe=i=>D("SET_NAME",i,void 0,lt,void 0),se=(i=1,o="global")=>D("UNDO",i,void 0,ut,o),ce=(i=1,o="global")=>D("REDO",i,void 0,ct,o),le=(i,o,p="global")=>D("PRUNE",{start:i,end:o},void 0,st,p),yt=(i,o)=>D("LOAD_STATE",{state:i,operations:o},void 0,pt),ue=(i="global")=>D("NOOP",{},void 0,void 0,i),Ur=Object.freeze(Object.defineProperty({__proto__:null,loadState:yt,noop:ue,prune:le,redo:ce,setName:pe,undo:se},Symbol.toStringTag,{value:"Module"}));class kr{constructor(o,p,c){K(this,"_document");K(this,"_reducer");K(this,"_signalDispatch");this._reducer=o,this._document=p,this._signalDispatch=c}dispatch(o,p){return this._document=this._reducer(this._document,o,this._signalDispatch,p),this}saveToFile(o,p,c){return Qt(this._document,o,p,c)}async loadFromFile(o){this._document=await ot(o,this._reducer)}static async stateFromFile(o,p){return await ot(o,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(o){return this._document.revision[o]}get initialState(){return R(this._document.initialState)}toDocument(){return R(this._document)}getAttachment(o){return this._document.attachments[o]}setName(o){return this.dispatch(pe(o)),this}undo(o){return this.dispatch(se(o)),this}redo(o){return this.dispatch(ce(o)),this}prune(o,p){return this.dispatch(le(o,p)),this}loadState(o,p){return this.dispatch(yt(o,p)),this}}function Tr(i,o){o.forEach(p=>{Object.getOwnPropertyNames(p.prototype).forEach(c=>{Object.defineProperty(i.prototype,c,Object.getOwnPropertyDescriptor(p.prototype,c)||Object.create(null))})})}exports.BaseActions=Ur;exports.BaseDocument=kr;exports.applyMixins=Tr;exports.baseReducer=xt;exports.createAction=D;exports.createDocument=ne;exports.createExtendedState=ie;exports.createReducer=re;exports.createZip=mt;exports.getLocalFile=br;exports.getRemoteFile=Er;exports.hashDocument=dt;exports.hashKey=jr;exports.isBaseAction=at;exports.loadFromFile=ot;exports.loadFromInput=te;exports.mapSkippedOperations=oe;exports.readOnly=R;exports.replayDocument=gt;exports.replayOperations=L;exports.saveToFile=Qt;exports.saveToFileHandle=wr;exports.sortMappedOperations=ae;exports.sortOperations=Ir;exports.zod=Re;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ExtendedState, OperationScope } from '../types';
|
|
2
|
-
import { LoadStateAction, PruneAction, RedoAction, SetNameAction, UndoAction } from './types';
|
|
2
|
+
import { LoadStateAction, PruneAction, RedoAction, SetNameAction, UndoAction, NOOPAction } from './types';
|
|
3
3
|
/**
|
|
4
4
|
* Changes the name of the document.
|
|
5
5
|
*
|
|
@@ -13,7 +13,7 @@ export declare const setName: (name: string) => SetNameAction;
|
|
|
13
13
|
* @param count - Number of operations to cancel
|
|
14
14
|
* @category Actions
|
|
15
15
|
*/
|
|
16
|
-
export declare const undo: (
|
|
16
|
+
export declare const undo: (skip?: number, scope?: OperationScope) => UndoAction;
|
|
17
17
|
/**
|
|
18
18
|
* Cancels the last `count` {@link undo | UNDO} operations.
|
|
19
19
|
*
|
|
@@ -44,3 +44,4 @@ export declare const prune: (start?: number | undefined, end?: number | undefine
|
|
|
44
44
|
* @category Actions
|
|
45
45
|
*/
|
|
46
46
|
export declare const loadState: <S, T>(state: Pick<ExtendedState<S, T>, "name" | "state">, operations: number) => LoadStateAction;
|
|
47
|
+
export declare const noop: (scope?: OperationScope) => NOOPAction;
|
|
@@ -4,5 +4,5 @@ export declare const UNDO = "UNDO";
|
|
|
4
4
|
export declare const REDO = "REDO";
|
|
5
5
|
export declare const PRUNE = "PRUNE";
|
|
6
6
|
export declare const LOAD_STATE = "LOAD_STATE";
|
|
7
|
-
export { LoadStateAction, PruneAction, RedoAction, SetNameAction, UndoAction, } from '../types';
|
|
7
|
+
export { LoadStateAction, PruneAction, RedoAction, SetNameAction, UndoAction, NOOPAction, } from '../types';
|
|
8
8
|
export type { BaseAction };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { BaseAction } from './actions/types';
|
|
2
2
|
import type { SignalDispatch } from './signal';
|
|
3
|
-
import type { Action, AttachmentRef, Document, ExtendedState, OperationScope, Reducer } from './types';
|
|
3
|
+
import type { Action, AttachmentRef, Document, ExtendedState, OperationScope, Reducer, ReducerOptions } from './types';
|
|
4
4
|
/**
|
|
5
5
|
* This is an abstract class representing a document and provides methods
|
|
6
6
|
* for creating and manipulating documents.
|
|
@@ -22,7 +22,7 @@ export declare abstract class BaseDocument<T, A extends Action, L = unknown> {
|
|
|
22
22
|
* @param action - The action to dispatch.
|
|
23
23
|
* @returns The Document instance.
|
|
24
24
|
*/
|
|
25
|
-
protected dispatch(action: A | BaseAction): this;
|
|
25
|
+
protected dispatch(action: A | BaseAction, options?: ReducerOptions): this;
|
|
26
26
|
/**
|
|
27
27
|
* Saves the state of the document to a file.
|
|
28
28
|
* @param path - The file path where the state should be saved.
|
|
@@ -66,6 +66,7 @@ export declare abstract class BaseDocument<T, A extends Action, L = unknown> {
|
|
|
66
66
|
readonly index: number;
|
|
67
67
|
readonly timestamp: string;
|
|
68
68
|
readonly hash: string;
|
|
69
|
+
readonly skip: number;
|
|
69
70
|
} | {
|
|
70
71
|
readonly input: {
|
|
71
72
|
readonly end?: import("./types").InputMaybe<number>;
|
|
@@ -76,6 +77,7 @@ export declare abstract class BaseDocument<T, A extends Action, L = unknown> {
|
|
|
76
77
|
readonly index: number;
|
|
77
78
|
readonly timestamp: string;
|
|
78
79
|
readonly hash: string;
|
|
80
|
+
readonly skip: number;
|
|
79
81
|
} | {
|
|
80
82
|
readonly input: number;
|
|
81
83
|
readonly type: "REDO";
|
|
@@ -83,6 +85,7 @@ export declare abstract class BaseDocument<T, A extends Action, L = unknown> {
|
|
|
83
85
|
readonly index: number;
|
|
84
86
|
readonly timestamp: string;
|
|
85
87
|
readonly hash: string;
|
|
88
|
+
readonly skip: number;
|
|
86
89
|
} | {
|
|
87
90
|
readonly input: string;
|
|
88
91
|
readonly type: "SET_NAME";
|
|
@@ -90,6 +93,7 @@ export declare abstract class BaseDocument<T, A extends Action, L = unknown> {
|
|
|
90
93
|
readonly index: number;
|
|
91
94
|
readonly timestamp: string;
|
|
92
95
|
readonly hash: string;
|
|
96
|
+
readonly skip: number;
|
|
93
97
|
} | {
|
|
94
98
|
readonly input: number;
|
|
95
99
|
readonly type: "UNDO";
|
|
@@ -97,10 +101,20 @@ export declare abstract class BaseDocument<T, A extends Action, L = unknown> {
|
|
|
97
101
|
readonly index: number;
|
|
98
102
|
readonly timestamp: string;
|
|
99
103
|
readonly hash: string;
|
|
104
|
+
readonly skip: number;
|
|
105
|
+
} | {
|
|
106
|
+
readonly input: unknown;
|
|
107
|
+
readonly type: "NOOP";
|
|
108
|
+
readonly scope: OperationScope;
|
|
109
|
+
readonly index: number;
|
|
110
|
+
readonly timestamp: string;
|
|
111
|
+
readonly hash: string;
|
|
112
|
+
readonly skip: number;
|
|
100
113
|
} | import("immer").Immutable<A & {
|
|
101
114
|
index: number;
|
|
102
115
|
timestamp: string;
|
|
103
116
|
hash: string;
|
|
117
|
+
skip: number;
|
|
104
118
|
}>)[];
|
|
105
119
|
readonly local: readonly ({
|
|
106
120
|
readonly input: {
|
|
@@ -115,6 +129,7 @@ export declare abstract class BaseDocument<T, A extends Action, L = unknown> {
|
|
|
115
129
|
readonly index: number;
|
|
116
130
|
readonly timestamp: string;
|
|
117
131
|
readonly hash: string;
|
|
132
|
+
readonly skip: number;
|
|
118
133
|
} | {
|
|
119
134
|
readonly input: {
|
|
120
135
|
readonly end?: import("./types").InputMaybe<number>;
|
|
@@ -125,6 +140,7 @@ export declare abstract class BaseDocument<T, A extends Action, L = unknown> {
|
|
|
125
140
|
readonly index: number;
|
|
126
141
|
readonly timestamp: string;
|
|
127
142
|
readonly hash: string;
|
|
143
|
+
readonly skip: number;
|
|
128
144
|
} | {
|
|
129
145
|
readonly input: number;
|
|
130
146
|
readonly type: "REDO";
|
|
@@ -132,6 +148,7 @@ export declare abstract class BaseDocument<T, A extends Action, L = unknown> {
|
|
|
132
148
|
readonly index: number;
|
|
133
149
|
readonly timestamp: string;
|
|
134
150
|
readonly hash: string;
|
|
151
|
+
readonly skip: number;
|
|
135
152
|
} | {
|
|
136
153
|
readonly input: string;
|
|
137
154
|
readonly type: "SET_NAME";
|
|
@@ -139,6 +156,7 @@ export declare abstract class BaseDocument<T, A extends Action, L = unknown> {
|
|
|
139
156
|
readonly index: number;
|
|
140
157
|
readonly timestamp: string;
|
|
141
158
|
readonly hash: string;
|
|
159
|
+
readonly skip: number;
|
|
142
160
|
} | {
|
|
143
161
|
readonly input: number;
|
|
144
162
|
readonly type: "UNDO";
|
|
@@ -146,10 +164,20 @@ export declare abstract class BaseDocument<T, A extends Action, L = unknown> {
|
|
|
146
164
|
readonly index: number;
|
|
147
165
|
readonly timestamp: string;
|
|
148
166
|
readonly hash: string;
|
|
167
|
+
readonly skip: number;
|
|
168
|
+
} | {
|
|
169
|
+
readonly input: unknown;
|
|
170
|
+
readonly type: "NOOP";
|
|
171
|
+
readonly scope: OperationScope;
|
|
172
|
+
readonly index: number;
|
|
173
|
+
readonly timestamp: string;
|
|
174
|
+
readonly hash: string;
|
|
175
|
+
readonly skip: number;
|
|
149
176
|
} | import("immer").Immutable<A & {
|
|
150
177
|
index: number;
|
|
151
178
|
timestamp: string;
|
|
152
179
|
hash: string;
|
|
180
|
+
skip: number;
|
|
153
181
|
}>)[];
|
|
154
182
|
};
|
|
155
183
|
/**
|
|
@@ -236,6 +264,7 @@ export declare abstract class BaseDocument<T, A extends Action, L = unknown> {
|
|
|
236
264
|
readonly index: number;
|
|
237
265
|
readonly timestamp: string;
|
|
238
266
|
readonly hash: string;
|
|
267
|
+
readonly skip: number;
|
|
239
268
|
} | {
|
|
240
269
|
readonly input: {
|
|
241
270
|
readonly end?: import("./types").InputMaybe<number>;
|
|
@@ -246,6 +275,7 @@ export declare abstract class BaseDocument<T, A extends Action, L = unknown> {
|
|
|
246
275
|
readonly index: number;
|
|
247
276
|
readonly timestamp: string;
|
|
248
277
|
readonly hash: string;
|
|
278
|
+
readonly skip: number;
|
|
249
279
|
} | {
|
|
250
280
|
readonly input: number;
|
|
251
281
|
readonly type: "REDO";
|
|
@@ -253,6 +283,7 @@ export declare abstract class BaseDocument<T, A extends Action, L = unknown> {
|
|
|
253
283
|
readonly index: number;
|
|
254
284
|
readonly timestamp: string;
|
|
255
285
|
readonly hash: string;
|
|
286
|
+
readonly skip: number;
|
|
256
287
|
} | {
|
|
257
288
|
readonly input: string;
|
|
258
289
|
readonly type: "SET_NAME";
|
|
@@ -260,6 +291,7 @@ export declare abstract class BaseDocument<T, A extends Action, L = unknown> {
|
|
|
260
291
|
readonly index: number;
|
|
261
292
|
readonly timestamp: string;
|
|
262
293
|
readonly hash: string;
|
|
294
|
+
readonly skip: number;
|
|
263
295
|
} | {
|
|
264
296
|
readonly input: number;
|
|
265
297
|
readonly type: "UNDO";
|
|
@@ -267,10 +299,20 @@ export declare abstract class BaseDocument<T, A extends Action, L = unknown> {
|
|
|
267
299
|
readonly index: number;
|
|
268
300
|
readonly timestamp: string;
|
|
269
301
|
readonly hash: string;
|
|
302
|
+
readonly skip: number;
|
|
303
|
+
} | {
|
|
304
|
+
readonly input: unknown;
|
|
305
|
+
readonly type: "NOOP";
|
|
306
|
+
readonly scope: OperationScope;
|
|
307
|
+
readonly index: number;
|
|
308
|
+
readonly timestamp: string;
|
|
309
|
+
readonly hash: string;
|
|
310
|
+
readonly skip: number;
|
|
270
311
|
} | import("immer").Immutable<A & {
|
|
271
312
|
index: number;
|
|
272
313
|
timestamp: string;
|
|
273
314
|
hash: string;
|
|
315
|
+
skip: number;
|
|
274
316
|
}>)[];
|
|
275
317
|
readonly local: readonly ({
|
|
276
318
|
readonly input: {
|
|
@@ -285,6 +327,7 @@ export declare abstract class BaseDocument<T, A extends Action, L = unknown> {
|
|
|
285
327
|
readonly index: number;
|
|
286
328
|
readonly timestamp: string;
|
|
287
329
|
readonly hash: string;
|
|
330
|
+
readonly skip: number;
|
|
288
331
|
} | {
|
|
289
332
|
readonly input: {
|
|
290
333
|
readonly end?: import("./types").InputMaybe<number>;
|
|
@@ -295,6 +338,7 @@ export declare abstract class BaseDocument<T, A extends Action, L = unknown> {
|
|
|
295
338
|
readonly index: number;
|
|
296
339
|
readonly timestamp: string;
|
|
297
340
|
readonly hash: string;
|
|
341
|
+
readonly skip: number;
|
|
298
342
|
} | {
|
|
299
343
|
readonly input: number;
|
|
300
344
|
readonly type: "REDO";
|
|
@@ -302,6 +346,7 @@ export declare abstract class BaseDocument<T, A extends Action, L = unknown> {
|
|
|
302
346
|
readonly index: number;
|
|
303
347
|
readonly timestamp: string;
|
|
304
348
|
readonly hash: string;
|
|
349
|
+
readonly skip: number;
|
|
305
350
|
} | {
|
|
306
351
|
readonly input: string;
|
|
307
352
|
readonly type: "SET_NAME";
|
|
@@ -309,6 +354,7 @@ export declare abstract class BaseDocument<T, A extends Action, L = unknown> {
|
|
|
309
354
|
readonly index: number;
|
|
310
355
|
readonly timestamp: string;
|
|
311
356
|
readonly hash: string;
|
|
357
|
+
readonly skip: number;
|
|
312
358
|
} | {
|
|
313
359
|
readonly input: number;
|
|
314
360
|
readonly type: "UNDO";
|
|
@@ -316,10 +362,20 @@ export declare abstract class BaseDocument<T, A extends Action, L = unknown> {
|
|
|
316
362
|
readonly index: number;
|
|
317
363
|
readonly timestamp: string;
|
|
318
364
|
readonly hash: string;
|
|
365
|
+
readonly skip: number;
|
|
366
|
+
} | {
|
|
367
|
+
readonly input: unknown;
|
|
368
|
+
readonly type: "NOOP";
|
|
369
|
+
readonly scope: OperationScope;
|
|
370
|
+
readonly index: number;
|
|
371
|
+
readonly timestamp: string;
|
|
372
|
+
readonly hash: string;
|
|
373
|
+
readonly skip: number;
|
|
319
374
|
} | import("immer").Immutable<A & {
|
|
320
375
|
index: number;
|
|
321
376
|
timestamp: string;
|
|
322
377
|
hash: string;
|
|
378
|
+
skip: number;
|
|
323
379
|
}>)[];
|
|
324
380
|
};
|
|
325
381
|
readonly initialState: {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { BaseAction } from './actions/types';
|
|
2
|
-
import { Action, Document, ImmutableStateReducer } from './types';
|
|
2
|
+
import { Action, Document, ImmutableStateReducer, ReducerOptions } from './types';
|
|
3
3
|
import { SignalDispatch } from './signal';
|
|
4
4
|
/**
|
|
5
5
|
* Base document reducer that wraps a custom document reducer and handles
|
|
@@ -13,4 +13,4 @@ import { SignalDispatch } from './signal';
|
|
|
13
13
|
* specific to the document's state.
|
|
14
14
|
* @returns The new state of the document.
|
|
15
15
|
*/
|
|
16
|
-
export declare function baseReducer<T, A extends Action, L>(document: Document<T, A, L>, action: A | BaseAction, customReducer: ImmutableStateReducer<T, A, L>, dispatch?: SignalDispatch): Document<T, A, L>;
|
|
16
|
+
export declare function baseReducer<T, A extends Action, L>(document: Document<T, A, L>, action: A | BaseAction, customReducer: ImmutableStateReducer<T, A, L>, dispatch?: SignalDispatch, options?: ReducerOptions): Document<T, A, L>;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { OperationScope } from
|
|
1
|
+
import { OperationScope } from '..';
|
|
2
2
|
export type Maybe<T> = T | null;
|
|
3
3
|
export type InputMaybe<T> = T | null | undefined;
|
|
4
4
|
export type Exact<T extends {
|
|
@@ -63,7 +63,7 @@ export type Action = IAction & {
|
|
|
63
63
|
__typename?: 'Action';
|
|
64
64
|
type: Scalars['String']['output'];
|
|
65
65
|
};
|
|
66
|
-
export type BaseAction = LoadStateAction | PruneAction | RedoAction | SetNameAction | UndoAction;
|
|
66
|
+
export type BaseAction = LoadStateAction | PruneAction | RedoAction | SetNameAction | UndoAction | NOOPAction;
|
|
67
67
|
export type DocumentFile = {
|
|
68
68
|
__typename?: 'DocumentFile';
|
|
69
69
|
data: Scalars['String']['output'];
|
|
@@ -156,7 +156,7 @@ export type Set_Name = 'SET_NAME';
|
|
|
156
156
|
export type SetNameAction = {
|
|
157
157
|
input: Scalars['String']['input'];
|
|
158
158
|
type: Set_Name | `${Set_Name}`;
|
|
159
|
-
scope:
|
|
159
|
+
scope: 'global';
|
|
160
160
|
};
|
|
161
161
|
export type SetNameOperation = IOperation & {
|
|
162
162
|
__typename?: 'SetNameOperation';
|
|
@@ -172,3 +172,9 @@ export type UndoAction = {
|
|
|
172
172
|
type: Undo | `${Undo}`;
|
|
173
173
|
scope: OperationScope;
|
|
174
174
|
};
|
|
175
|
+
export type NOOP = 'NOOP';
|
|
176
|
+
export type NOOPAction = {
|
|
177
|
+
input: Scalars['Unknown']['input'];
|
|
178
|
+
type: NOOP | `${NOOP}`;
|
|
179
|
+
scope: OperationScope;
|
|
180
|
+
};
|
|
@@ -1,12 +1,18 @@
|
|
|
1
|
-
import { Document } from './types';
|
|
1
|
+
import { Document, OperationScope } from './types';
|
|
2
2
|
export interface ISignal<T extends string = string, I = unknown> {
|
|
3
3
|
type: T;
|
|
4
4
|
input: I;
|
|
5
5
|
}
|
|
6
|
+
export type SynchronizationUnit = {
|
|
7
|
+
syncId: string;
|
|
8
|
+
scope: OperationScope;
|
|
9
|
+
branch: string;
|
|
10
|
+
};
|
|
6
11
|
export type CreateChildDocumentInput = {
|
|
7
12
|
id: string;
|
|
8
13
|
documentType: string;
|
|
9
14
|
document?: Document;
|
|
15
|
+
synchronizationUnits: SynchronizationUnit[];
|
|
10
16
|
};
|
|
11
17
|
export type CreateChildDocumentSignal = ISignal<'CREATE_CHILD_DOCUMENT', CreateChildDocumentInput>;
|
|
12
18
|
export type DeleteChildDocumentInput = {
|
|
@@ -27,6 +27,10 @@ export type Action<T extends string = string, I = unknown, S extends OperationSc
|
|
|
27
27
|
export type ActionWithAttachment<T extends string = string, I = unknown, S extends OperationScope = OperationScope> = Action<T, I, S> & {
|
|
28
28
|
attachments: AttachmentInput[];
|
|
29
29
|
};
|
|
30
|
+
export type ReducerOptions = {
|
|
31
|
+
/** The number of operations to skip before this new action is applied */
|
|
32
|
+
skip?: number;
|
|
33
|
+
};
|
|
30
34
|
/**
|
|
31
35
|
* A pure function that takes an action and the previous state
|
|
32
36
|
* of the document and returns the new state.
|
|
@@ -34,7 +38,7 @@ export type ActionWithAttachment<T extends string = string, I = unknown, S exten
|
|
|
34
38
|
* @typeParam State - The type of the document data.
|
|
35
39
|
* @typeParam A - The type of the actions supported by the reducer.
|
|
36
40
|
*/
|
|
37
|
-
export type Reducer<State, A extends Action, LocalState> = (state: Document<State, A, LocalState>, action: A | BaseAction, dispatch?: SignalDispatch) => Document<State, A, LocalState>;
|
|
41
|
+
export type Reducer<State, A extends Action, LocalState> = (state: Document<State, A, LocalState>, action: A | BaseAction, dispatch?: SignalDispatch, options?: ReducerOptions) => Document<State, A, LocalState>;
|
|
38
42
|
/**
|
|
39
43
|
* A {@link Reducer} that prevents mutable code from changing the previous state.
|
|
40
44
|
*
|
|
@@ -72,6 +76,8 @@ export type Operation<A extends Action = Action> = A & {
|
|
|
72
76
|
timestamp: string;
|
|
73
77
|
/** Hash of the resulting document data after the operation */
|
|
74
78
|
hash: string;
|
|
79
|
+
/** The number of operations skipped with this Operation */
|
|
80
|
+
skip: number;
|
|
75
81
|
};
|
|
76
82
|
/**
|
|
77
83
|
* The base attributes of a {@link Document}.
|
|
@@ -124,6 +130,11 @@ export type ExtendedState<GlobalState, LocalState = unknown> = DocumentHeader &
|
|
|
124
130
|
attachments: FileRegistry;
|
|
125
131
|
};
|
|
126
132
|
export type DocumentOperations<A extends Action> = Required<Record<OperationScope, Operation<A | BaseAction>[]>>;
|
|
133
|
+
export type MappedOperation<A extends Action> = {
|
|
134
|
+
ignore: boolean;
|
|
135
|
+
operation: Operation<A | BaseAction>;
|
|
136
|
+
};
|
|
137
|
+
export type DocumentOperationsIgnoreMap<A extends Action> = Required<Record<OperationScope, MappedOperation<A>[]>>;
|
|
127
138
|
/**
|
|
128
139
|
* The base type of a document model.
|
|
129
140
|
*
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { baseReducer } from '../reducer';
|
|
2
|
-
import { Action, BaseAction, Document, ExtendedState, ImmutableStateReducer, Reducer, Immutable, OperationScope, State, CreateState, PartialState, DocumentOperations, DocumentHeader } from '../types';
|
|
2
|
+
import { Action, BaseAction, Document, ExtendedState, ImmutableStateReducer, Reducer, Immutable, OperationScope, State, CreateState, PartialState, DocumentOperations, DocumentHeader, DocumentOperationsIgnoreMap, Operation, MappedOperation } from '../types';
|
|
3
3
|
import { SignalDispatch } from '../signal';
|
|
4
4
|
export declare function isBaseAction(action: Action): action is BaseAction;
|
|
5
5
|
/**
|
|
@@ -13,6 +13,10 @@ export declare function isBaseAction(action: Action): action is BaseAction;
|
|
|
13
13
|
*
|
|
14
14
|
* @param type - The type of the action.
|
|
15
15
|
* @param input - The input properties of the action.
|
|
16
|
+
* @param attachments - The attachments included in the action.
|
|
17
|
+
* @param validator - The validator to use for the input properties.
|
|
18
|
+
* @param scope - The scope of the action, can either be 'global' or 'local'.
|
|
19
|
+
* @param skip - The number of operations to skip before this new action is applied.
|
|
16
20
|
*
|
|
17
21
|
* @throws Error if the type is empty or not a string.
|
|
18
22
|
*
|
|
@@ -56,6 +60,15 @@ export declare const createDocument: <S, A extends Action, L = unknown>(initialS
|
|
|
56
60
|
export declare const hashDocument: (document: Pick<Document, 'state'>, scope?: OperationScope) => string;
|
|
57
61
|
export declare const hashKey: (date?: Date, randomLimit?: number) => string;
|
|
58
62
|
export declare function readOnly<T>(value: T): Immutable<T>;
|
|
59
|
-
|
|
63
|
+
/**
|
|
64
|
+
* Maps skipped operations in an array of operations.
|
|
65
|
+
* Skipped operations are operations that are ignored during processing.
|
|
66
|
+
* @param operations - The array of operations to map.
|
|
67
|
+
* @returns An array of mapped operations with ignore flag indicating if the operation is skipped.
|
|
68
|
+
* @throws Error if the operation index is invalid and there are missing operations.
|
|
69
|
+
*/
|
|
70
|
+
export declare function mapSkippedOperations<A extends Action>(operations: Operation<BaseAction | A>[]): MappedOperation<A>[];
|
|
71
|
+
export declare function sortOperations<A extends Action>(operations: DocumentOperations<A>): Operation<BaseAction | A>[];
|
|
72
|
+
export declare function sortMappedOperations<A extends Action>(operations: DocumentOperationsIgnoreMap<A>): MappedOperation<A>[];
|
|
60
73
|
export declare function replayOperations<T, A extends Action, L>(initialState: ExtendedState<T, L>, operations: DocumentOperations<A>, reducer: ImmutableStateReducer<T, A, L>, dispatch?: SignalDispatch, header?: DocumentHeader, documentReducer?: typeof baseReducer): Document<T, A, L>;
|
|
61
74
|
export declare function replayDocument<T, A extends Action, L>(initialState: ExtendedState<T, L>, operations: DocumentOperations<A>, reducer: Reducer<T, A, L>, dispatch?: SignalDispatch, header?: DocumentHeader): Document<T, A, L>;
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import { BaseDocument } from '../../../document/object';
|
|
2
2
|
import { SetModelNameInput, SetModelIdInput, SetModelExtensionInput, SetModelDescriptionInput, SetAuthorNameInput, SetAuthorWebsiteInput, DocumentModelState, DocumentModelLocalState } from '../types';
|
|
3
3
|
import { DocumentModelAction } from '../actions';
|
|
4
|
+
import { ReducerOptions } from '../../../document';
|
|
4
5
|
export default class DocumentModel_Header extends BaseDocument<DocumentModelState, DocumentModelAction, DocumentModelLocalState> {
|
|
5
|
-
setModelName(input: SetModelNameInput): this;
|
|
6
|
-
setModelId(input: SetModelIdInput): this;
|
|
7
|
-
setModelExtension(input: SetModelExtensionInput): this;
|
|
8
|
-
setModelDescription(input: SetModelDescriptionInput): this;
|
|
9
|
-
setAuthorName(input: SetAuthorNameInput): this;
|
|
10
|
-
setAuthorWebsite(input: SetAuthorWebsiteInput): this;
|
|
6
|
+
setModelName(input: SetModelNameInput, options?: ReducerOptions): this;
|
|
7
|
+
setModelId(input: SetModelIdInput, options?: ReducerOptions): this;
|
|
8
|
+
setModelExtension(input: SetModelExtensionInput, options?: ReducerOptions): this;
|
|
9
|
+
setModelDescription(input: SetModelDescriptionInput, options?: ReducerOptions): this;
|
|
10
|
+
setAuthorName(input: SetAuthorNameInput, options?: ReducerOptions): this;
|
|
11
|
+
setAuthorWebsite(input: SetAuthorWebsiteInput, options?: ReducerOptions): this;
|
|
11
12
|
}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import { BaseDocument } from '../../../document/object';
|
|
2
2
|
import { AddModuleInput, SetModuleNameInput, SetModuleDescriptionInput, DeleteModuleInput, ReorderModulesInput, DocumentModelState, DocumentModelLocalState } from '../types';
|
|
3
3
|
import { DocumentModelAction } from '../actions';
|
|
4
|
+
import { ReducerOptions } from '../../../document';
|
|
4
5
|
export default class DocumentModel_Module extends BaseDocument<DocumentModelState, DocumentModelAction, DocumentModelLocalState> {
|
|
5
|
-
addModule(input: AddModuleInput): this;
|
|
6
|
-
setModuleName(input: SetModuleNameInput): this;
|
|
7
|
-
setModuleDescription(input: SetModuleDescriptionInput): this;
|
|
8
|
-
deleteModule(input: DeleteModuleInput): this;
|
|
9
|
-
reorderModules(input: ReorderModulesInput): this;
|
|
6
|
+
addModule(input: AddModuleInput, options?: ReducerOptions): this;
|
|
7
|
+
setModuleName(input: SetModuleNameInput, options?: ReducerOptions): this;
|
|
8
|
+
setModuleDescription(input: SetModuleDescriptionInput, options?: ReducerOptions): this;
|
|
9
|
+
deleteModule(input: DeleteModuleInput, options?: ReducerOptions): this;
|
|
10
|
+
reorderModules(input: ReorderModulesInput, options?: ReducerOptions): this;
|
|
10
11
|
}
|
|
@@ -1,15 +1,16 @@
|
|
|
1
1
|
import { BaseDocument } from '../../../document/object';
|
|
2
2
|
import { AddOperationInput, SetOperationNameInput, SetOperationSchemaInput, SetOperationDescriptionInput, SetOperationTemplateInput, SetOperationReducerInput, MoveOperationInput, DeleteOperationInput, ReorderModuleOperationsInput, DocumentModelState, SetOperationScopeInput, DocumentModelLocalState } from '../types';
|
|
3
3
|
import { DocumentModelAction } from '../actions';
|
|
4
|
+
import { ReducerOptions } from '../../../document';
|
|
4
5
|
export default class DocumentModel_Operation extends BaseDocument<DocumentModelState, DocumentModelAction, DocumentModelLocalState> {
|
|
5
|
-
addOperation(input: AddOperationInput): this;
|
|
6
|
-
setOperationName(input: SetOperationNameInput): this;
|
|
7
|
-
setOperationScope(input: SetOperationScopeInput): this;
|
|
8
|
-
setOperationSchema(input: SetOperationSchemaInput): this;
|
|
9
|
-
setOperationDescription(input: SetOperationDescriptionInput): this;
|
|
10
|
-
setOperationTemplate(input: SetOperationTemplateInput): this;
|
|
11
|
-
setOperationReducer(input: SetOperationReducerInput): this;
|
|
12
|
-
moveOperation(input: MoveOperationInput): this;
|
|
13
|
-
deleteOperation(input: DeleteOperationInput): this;
|
|
14
|
-
reorderModuleOperations(input: ReorderModuleOperationsInput): this;
|
|
6
|
+
addOperation(input: AddOperationInput, options?: ReducerOptions): this;
|
|
7
|
+
setOperationName(input: SetOperationNameInput, options?: ReducerOptions): this;
|
|
8
|
+
setOperationScope(input: SetOperationScopeInput, options?: ReducerOptions): this;
|
|
9
|
+
setOperationSchema(input: SetOperationSchemaInput, options?: ReducerOptions): this;
|
|
10
|
+
setOperationDescription(input: SetOperationDescriptionInput, options?: ReducerOptions): this;
|
|
11
|
+
setOperationTemplate(input: SetOperationTemplateInput, options?: ReducerOptions): this;
|
|
12
|
+
setOperationReducer(input: SetOperationReducerInput, options?: ReducerOptions): this;
|
|
13
|
+
moveOperation(input: MoveOperationInput, options?: ReducerOptions): this;
|
|
14
|
+
deleteOperation(input: DeleteOperationInput, options?: ReducerOptions): this;
|
|
15
|
+
reorderModuleOperations(input: ReorderModuleOperationsInput, options?: ReducerOptions): this;
|
|
15
16
|
}
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import { BaseDocument } from '../../../document/object';
|
|
2
2
|
import { AddOperationErrorInput, SetOperationErrorCodeInput, SetOperationErrorNameInput, SetOperationErrorDescriptionInput, SetOperationErrorTemplateInput, DeleteOperationErrorInput, ReorderOperationErrorsInput, DocumentModelState, DocumentModelLocalState } from '../types';
|
|
3
3
|
import { DocumentModelAction } from '../actions';
|
|
4
|
+
import { ReducerOptions } from '../../../document';
|
|
4
5
|
export default class DocumentModel_OperationError extends BaseDocument<DocumentModelState, DocumentModelAction, DocumentModelLocalState> {
|
|
5
|
-
addOperationError(input: AddOperationErrorInput): this;
|
|
6
|
-
setOperationErrorCode(input: SetOperationErrorCodeInput): this;
|
|
7
|
-
setOperationErrorName(input: SetOperationErrorNameInput): this;
|
|
8
|
-
setOperationErrorDescription(input: SetOperationErrorDescriptionInput): this;
|
|
9
|
-
setOperationErrorTemplate(input: SetOperationErrorTemplateInput): this;
|
|
10
|
-
deleteOperationError(input: DeleteOperationErrorInput): this;
|
|
11
|
-
reorderOperationErrors(input: ReorderOperationErrorsInput): this;
|
|
6
|
+
addOperationError(input: AddOperationErrorInput, options?: ReducerOptions): this;
|
|
7
|
+
setOperationErrorCode(input: SetOperationErrorCodeInput, options?: ReducerOptions): this;
|
|
8
|
+
setOperationErrorName(input: SetOperationErrorNameInput, options?: ReducerOptions): this;
|
|
9
|
+
setOperationErrorDescription(input: SetOperationErrorDescriptionInput, options?: ReducerOptions): this;
|
|
10
|
+
setOperationErrorTemplate(input: SetOperationErrorTemplateInput, options?: ReducerOptions): this;
|
|
11
|
+
deleteOperationError(input: DeleteOperationErrorInput, options?: ReducerOptions): this;
|
|
12
|
+
reorderOperationErrors(input: ReorderOperationErrorsInput, options?: ReducerOptions): this;
|
|
12
13
|
}
|