zion-mcp 2.0.16 → 2.0.17
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -0
- package/dist/{chunk-PVJSG7GU.js → chunk-KQJNRKMF.js} +1 -1
- package/dist/{chunk-TQQEZCR3.js → chunk-NJNXU5WV.js} +1 -1
- package/dist/{chunk-4KNOFUKP.js → chunk-NONCYU6W.js} +1 -1
- package/dist/{corpus-I5HLD5O3.js → corpus-IJPWPQJV.js} +41 -29
- package/dist/{index.cjs-VYGQEMFV.js → index.cjs-LLB5UXJY.js} +1 -1
- package/dist/{json-crdt-356APO3G.js → json-crdt-N4ZXQ5KT.js} +1 -1
- package/dist/{json-crdt-patch-VZEJAY4C.js → json-crdt-patch-WPEVHTB3.js} +1 -1
- package/dist/server.js +272 -231
- package/dist/ztype-MBHFROZE.js +832 -0
- package/package.json +1 -1
- package/dist/ztype-IMOVY4CP.js +0 -832
package/README.md
CHANGED
|
@@ -71,6 +71,7 @@ Zion MCP Server 是 [FunctorZ (Zion)](https://functorz.com) 提供的官方 [Mod
|
|
|
71
71
|
- `schema_request_filter` — op: `ADD_FILTER` / `ADD_CONDITION` / `ADD_SORT` / `DELETE_FILTER` / `DELETE_CONDITION` / `DELETE_SORT` / `CONTEXT` / `NEST_CONDITION` / `REORDER_FILTERS` / `REORDER_SORT` / `TOGGLE_CONDITION_AND_OR` / `TOGGLE_CONDITION_NOT` / `UPDATE_FILTER` / `SET_CONDITION_OPERATOR` / `UPDATE_SORT`
|
|
72
72
|
- `schema_set_tpa_config_paging` — op: `SET_TPA_CONFIG_PAGING`
|
|
73
73
|
- `schema_table` — op: `ADD_CONSTRAINTS` / `ADD_FIELDS_RELATIONS` / `ADD_TABLES` / `ADD_EXTENSION` / `DELETE_CONSTRAINTS` / `DELETE_FIELDS_RELATIONS` / `DELETE_TABLES` / `DELETE_EXTENSION` / `LIST_NAMES` / `LIST_EMBEDDING_MODELS` / `GET_INFOS`
|
|
74
|
+
- `schema_trigger` — op: `ADD_DB_TRIGGERS` / `ADD_SCHEDULED_TRIGGERS` / `DELETE_DB_TRIGGERS` / `DELETE_SCHEDULED_TRIGGERS` / `GET_ALL_DB_TRIGGER_INFOS` / `GET_ALL_SCHEDULED_TRIGGER_INFOS` / `GET_DB_TRIGGER_DETAIL` / `GET_SCHEDULED_TRIGGER_DETAIL` / `UPDATE_DB_TRIGGER` / `UPDATE_SCHEDULED_TRIGGER`
|
|
74
75
|
- `schema_type` — op: `ADD_ENUMS` / `ADD_OBJECTS` / `ADD_FIELDS` / `DELETE_ENUMS` / `DELETE_OBJECTS` / `DELETE_FIELDS` / `LIST_ENUMS` / `LIST_OBJECTS` / `UPDATE_ENUMS` / `UPDATE_OBJECTS`
|
|
75
76
|
- `schema_update_tpa_config` — op: `UPDATE_TPA_CONFIG`
|
|
76
77
|
- `schema_update_tpa_config_parameter` — op: `UPDATE_TPA_CONFIG_PARAMETER`
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { createRequire as __nodeCreateRequire } from 'node:module';
|
|
2
2
|
const require = __nodeCreateRequire(import.meta.url);
|
|
3
|
-
var a=Object.create;var p=Object.defineProperty;var c=Object.getOwnPropertyDescriptor;var s=Object.getOwnPropertyNames;var z=Object.getPrototypeOf,d=Object.prototype.hasOwnProperty;var j=(e=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(e,{get:(t,n)=>(typeof require<"u"?require:t)[n]}):e)(function(e){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+e+'" is not supported')});var g=(e,t)=>()=>(e&&(t=e(e=0)),t);var l=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),m=(e,t)=>{for(var n in t)p(e,n,{get:t[n],enumerable:!0})},y=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of s(t))!d.call(e,o)&&o!==n&&p(e,o,{get:()=>t[o],enumerable:!(r=c(t,o))||r.enumerable});return e};var H=(e,t,n)=>(n=e!=null?a(z(e)):{},y(t||!e||!e.__esModule?p(n,"default",{value:e,enumerable:!0}):n,e)),J=e=>y(p({},"__esModule",{value:!0}),e);var b,i=g(()=>{b={agent:"2.0.
|
|
3
|
+
var a=Object.create;var p=Object.defineProperty;var c=Object.getOwnPropertyDescriptor;var s=Object.getOwnPropertyNames;var z=Object.getPrototypeOf,d=Object.prototype.hasOwnProperty;var j=(e=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(e,{get:(t,n)=>(typeof require<"u"?require:t)[n]}):e)(function(e){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+e+'" is not supported')});var g=(e,t)=>()=>(e&&(t=e(e=0)),t);var l=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),m=(e,t)=>{for(var n in t)p(e,n,{get:t[n],enumerable:!0})},y=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of s(t))!d.call(e,o)&&o!==n&&p(e,o,{get:()=>t[o],enumerable:!(r=c(t,o))||r.enumerable});return e};var H=(e,t,n)=>(n=e!=null?a(z(e)):{},y(t||!e||!e.__esModule?p(n,"default",{value:e,enumerable:!0}):n,e)),J=e=>y(p({},"__esModule",{value:!0}),e);var b,i=g(()=>{b={agent:"2.0.17",ztype:"2.10.221",ztypeSchemaVersion:"2.0.8",crdtHelper:"2.7.6",jsonJoy:"16.18.0"}});export{j as a,g as b,l as c,m as d,H as e,J as f,i as g,b as h};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { createRequire as __nodeCreateRequire } from 'node:module';
|
|
2
2
|
const require = __nodeCreateRequire(import.meta.url);
|
|
3
|
-
import{a as P,b as k,c as I,d as Ns,e as Os,f as xs,g as Ss,h as Cs,i as ot,j as Is,k as Ts,l as As}from"./chunk-
|
|
3
|
+
import{a as P,b as k,c as I,d as Ns,e as Os,f as xs,g as Ss,h as Cs,i as ot,j as Is,k as Ts,l as As}from"./chunk-NONCYU6W.js";import{c as a,f as E,g as d}from"./chunk-KQJNRKMF.js";var di=a(ci=>{"use strict";d();Object.defineProperty(ci,"__esModule",{value:!0})});var ge=a(we=>{"use strict";d();Object.defineProperty(we,"__esModule",{value:!0});we.ConNode=void 0;var lt=I(),ct=class{constructor(e,t){this.id=e,this.val=t,this.api=void 0}children(){}child(){}container(){}view(){return this.val}name(){return"con"}toString(e){let t=this.val,i=t instanceof Uint8Array?`Uint8Array { ${(""+t).replaceAll(",",", ")} }`:`{ ${t instanceof lt.Timestamp?(0,lt.printTs)(t):JSON.stringify(t)} }`;return`${this.name()} ${(0,lt.printTs)(this.id)} ${i}`}};we.ConNode=ct});var B=a(be=>{"use strict";d();Object.defineProperty(be,"__esModule",{value:!0});be.printTree=void 0;var js=(n="",e)=>{let t="",i=e.length-1;for(;i>=0&&!e[i];i--);for(let s=0;s<=i;s++){let r=e[s];if(!r)continue;let o=s===i,l=r(n+(o?" ":"\u2502")+" "),c=l?o?"\u2514\u2500":"\u251C\u2500":"\u2502";t+=`
|
|
4
4
|
`+n+c+(l?" "+l:"")}return t};be.printTree=js});var ui=a(_e=>{"use strict";d();Object.defineProperty(_e,"__esModule",{value:!0});_e.RelativeTimestamp=void 0;var dt=class{constructor(e,t){this.sessionIndex=e,this.timeDiff=t}};_e.RelativeTimestamp=dt});var ai=a(ve=>{"use strict";d();Object.defineProperty(ve,"__esModule",{value:!0});ve.ClockEncoder=void 0;var hi=I(),qs=ui(),me=class{constructor(e,t){this.index=e,this.clock=t}},ut=class{constructor(){this.table=new Map,this.index=1,this.clock=null}reset(e){this.index=1,this.clock=e;let t=new me(this.index++,(0,hi.tick)(e,-1));this.table.clear(),this.table.set(e.sid,t)}append(e){let t=e.time,i=e.sid,s=this.table.get(i);if(!s){let l=this.clock.peers.get(i);l||(l=new hi.Timestamp(i,this.clock.time-1)),s=new me(this.index++,l),this.table.set(i,s)}let o=s.clock.time-t;if(o<0)throw new Error("TIME_TRAVEL");return new qs.RelativeTimestamp(s.index,o)}toJson(){let e=[];return this.table.forEach(t=>{let i=t.clock;e.push(i.sid,i.time)}),e}};ve.ClockEncoder=ut});var fi=a(ye=>{"use strict";d();Object.defineProperty(ye,"__esModule",{value:!0});ye.Encoder=void 0;var Es=(k(),E(P)),W=Es.__importStar(z()),Ps=ai(),ks=Os(),Ms=I(),Bs=xs(),ht=class extends Bs.CborEncoder{constructor(e){super(e||new ks.CrdtWriter),this.clockEncoder=new Ps.ClockEncoder,this.time=0,this.cTableEntry=t=>{let i=t.clock,s=this.writer;s.vu57(i.sid),s.vu57(i.time)},this.tsLogical=t=>{let i=this.clockEncoder.append(t);this.writer.id(i.sessionIndex,i.timeDiff)},this.tsServer=t=>{this.writer.vu57(t.time)},this.ts=this.tsLogical,this.cKey=(t,i)=>{this.writeStr(i),this.cNode(this.doc.index.get(t))}}encode(e){this.doc=e;let t=this.writer;return t.reset(),e.clock.sid===1?this.encodeServer(e):this.encodeLogical(e),t.flush()}encodeLogical(e){let t=this.writer;this.ts=this.tsLogical,this.clockEncoder.reset(e.clock),t.ensureCapacity(4);let i=t.x0,s=t.x;t.x+=4,this.cRoot(e.root),this.encodeClockTable(i,s)}encodeServer(e){this.ts=this.tsServer;let t=this.writer;t.u8(128),t.vu57(this.time=e.clock.time),this.cRoot(e.root)}encodeClockTable(e,t){let i=this.writer,s=i.x0-e;i.view.setUint32(i.x0+(t-e),i.x-t-s-4);let o=this.clockEncoder.table,l=o.size;i.vu57(l),o.forEach(this.cTableEntry)}cRoot(e){e.val.sid===0?this.writer.u8(0):this.cNode(e.node())}writeTL(e,t){let i=this.writer;t<31?i.u8(e|t):(i.u8(e|31),i.vu57(t))}cNode(e){e instanceof W.ConNode?this.cCon(e):e instanceof W.ValNode?this.cVal(e):e instanceof W.StrNode?this.cStr(e):e instanceof W.ObjNode?this.cObj(e):e instanceof W.VecNode?this.cVec(e):e instanceof W.ArrNode?this.cArr(e):e instanceof W.BinNode&&this.cBin(e)}cCon(e){let t=e.val;this.ts(e.id),t instanceof Ms.Timestamp?(this.writer.u8(1),this.ts(t)):(this.writer.u8(0),this.writeAny(t))}cVal(e){this.ts(e.id),this.writer.u8(32),this.cNode(e.node())}cObj(e){this.ts(e.id);let t=e.keys;this.writeTL(64,t.size),t.forEach(this.cKey)}cVec(e){let t=e.elements,i=t.length;this.ts(e.id),this.writeTL(96,i);let s=this.doc.index;for(let r=0;r<i;r++){let o=t[r];o?this.cNode(s.get(o)):this.writer.u8(0)}}cStr(e){let t=this.ts;t(e.id),this.writeTL(128,e.count);for(let i=e.first();i;i=e.next(i))t(i.id),i.del?this.writeUInteger(i.span):this.writeStr(i.data)}cBin(e){let t=this.ts,i=this.writer;t(e.id),this.writeTL(160,e.count);for(let s=e.first();s;s=e.next(s)){t(s.id);let r=s.span,o=s.del;i.b1vu56(~~o,r),!o&&i.buf(s.data,r)}}cArr(e){let t=this.ts,i=this.writer;t(e.id),this.writeTL(192,e.count);let s=this.doc.index;for(let r=e.first();r;r=e.next(r)){t(r.id);let o=r.span,l=r.del;if(i.b1vu56(~~l,o),l)continue;let c=r.data;for(let u=0;u<o;u++)this.cNode(s.get(c[u]))}}};ye.Encoder=ht});var pi=a(Ne=>{"use strict";d();Object.defineProperty(Ne,"__esModule",{value:!0});Ne.ClockDecoder=void 0;var de=I(),at=class n{static fromArr(e){let t=new n(e[0],e[1]),i=e.length;for(let s=2;s<i;s+=2)t.pushTuple(e[s],e[s+1]);return t}constructor(e,t){this.table=[],this.clock=new de.ClockVector(e,t+1),this.table.push((0,de.ts)(e,t))}pushTuple(e,t){let i=(0,de.ts)(e,t);this.clock.observe(i,1),this.table.push(i)}decodeId(e,t){if(!e)return(0,de.ts)(0,t);let i=this.table[e-1];if(!i)throw new Error("INVALID_CLOCK_TABLE");return(0,de.ts)(i.sid,i.time-t)}};Ne.ClockDecoder=at});var wi=a(Oe=>{"use strict";d();Object.defineProperty(Oe,"__esModule",{value:!0});Oe.Decoder=void 0;var Rs=(k(),E(P)),T=Rs.__importStar(z()),Vs=pi(),Ls=Ss(),Ds=I(),ft=xe(),Fs=Ts(),pt=class extends Fs.CborDecoderBase{constructor(){super(new Ls.CrdtReader),this.time=-1,this.cStrChunk=()=>{let e=this.ts(),t=this.val();return typeof t=="string"?new T.StrChunk(e,t.length,t):new T.StrChunk(e,~~t,"")},this.cBinChunk=()=>{let e=this.ts(),t=this.reader,[i,s]=t.b1vu56();return i?new T.BinChunk(e,s,void 0):new T.BinChunk(e,s,t.buf(s))},this.cArrChunk=()=>{let e=this.ts(),[t,i]=this.reader.b1vu56();if(t)return new T.ArrChunk(e,i,void 0);let s=[];for(let r=0;r<i;r++)s.push(this.cNode().id);return new T.ArrChunk(e,i,s)}}decode(e,t){delete this.clockDecoder,this.time=-1;let i=this.reader;if(i.reset(e),i.peak()&128){i.x++;let r=this.time=i.vu57();t||(t=ft.Model.withServerClock(r))}else if(this.decodeClockTable(),!t){let r=this.clockDecoder.clock;t=ft.Model.withLogicalClock(r)}return this.doc=t,t.root=new T.RootNode(this.doc,this.cRoot().id),delete this.clockDecoder,t}decodeClockTable(){let e=this.reader,t=e.u32(),i=e.x;e.x+=t;let s=e.vu57(),r=e.vu57(),o=e.vu57();this.clockDecoder=new Vs.ClockDecoder(r,o);for(let l=1;l<s;l++){let c=e.vu57(),u=e.vu57();this.clockDecoder.pushTuple(c,u)}e.x=i}ts(){if(this.time<0){let[i,s]=this.reader.id();return this.clockDecoder.decodeId(i,s)}else return new Ds.Timestamp(1,this.reader.vu57())}cRoot(){let e=this.reader;return e.uint8[e.x]?this.cNode():ft.UNDEFINED}cNode(){let e=this.reader,t=this.ts(),i=e.u8(),s=i>>5,r=i&31;switch(s){case 0:return this.cCon(t,r);case 1:return this.cVal(t);case 2:return this.cObj(t,r!==31?r:e.vu57());case 3:return this.cVec(t,r!==31?r:e.vu57());case 4:return this.cStr(t,r!==31?r:e.vu57());case 5:return this.cBin(t,r!==31?r:e.vu57());case 6:return this.cArr(t,r!==31?r:e.vu57())}throw new Error("UNKNOWN_NODE")}cCon(e,t){let i=this.doc,s=t?this.ts():this.val(),r=new T.ConNode(e,s);return i.index.set(e,r),r}cVal(e){let t=this.cNode(),i=this.doc,s=new T.ValNode(i,e,t.id);return i.index.set(e,s),s}cObj(e,t){let i=new T.ObjNode(this.doc,e);for(let s=0;s<t;s++)this.cObjChunk(i);return this.doc.index.set(e,i),i}cObjChunk(e){let t=this.key();e.keys.set(t,this.cNode().id)}cVec(e,t){let i=this.reader,s=new T.VecNode(this.doc,e),r=s.elements;for(let o=0;o<t;o++)i.peak()?r.push(this.cNode().id):(i.x++,r.push(void 0));return this.doc.index.set(e,s),s}cStr(e,t){let i=new T.StrNode(e);return t&&i.ingest(t,this.cStrChunk),this.doc.index.set(e,i),i}cBin(e,t){let i=new T.BinNode(e);return t&&i.ingest(t,this.cBinChunk),this.doc.index.set(e,i),i}cArr(e,t){let i=new T.ArrNode(this.doc,e);return t&&i.ingest(t,this.cArrChunk),this.doc.index.set(e,i),i}};Oe.Decoder=pt});var gi=a(Z=>{"use strict";d();Object.defineProperty(Z,"__esModule",{value:!0});Z.decoder=Z.encoder=void 0;var Us=fi(),$s=wi();Z.encoder=new Us.Encoder;Z.decoder=new $s.Decoder});var gt=a(Se=>{"use strict";d();Object.defineProperty(Se,"__esModule",{value:!0});Se.FanOut=void 0;var wt=class{constructor(){this.listeners=new Set}emit(e){this.listeners.forEach(t=>t(e))}listen(e){let t=this.listeners;return t.add(e),()=>t.delete(e)}};Se.FanOut=wt});var _i=a(bi=>{"use strict";d();Object.defineProperty(bi,"__esModule",{value:!0})});var bt=a(_=>{"use strict";d();Object.defineProperty(_,"__esModule",{value:!0});_.isInteger=_.isValidIndex=_.parent=_.isRoot=_.isPathEqual=_.isChild=_.toPath=_.formatJsonPointer=_.parseJsonPointer=_.escapeComponent=_.unescapeComponent=void 0;var zs=/~1/g,Js=/~0/g,Xs=/~/g,Ks=/\//g;function mi(n){return n.indexOf("~")===-1?n:n.replace(zs,"/").replace(Js,"~")}_.unescapeComponent=mi;function vi(n){return n.indexOf("/")===-1&&n.indexOf("~")===-1?n:n.replace(Xs,"~0").replace(Ks,"~1")}_.escapeComponent=vi;function yi(n){return n?n.slice(1).split("/").map(mi):[]}_.parseJsonPointer=yi;function Gs(n){return(0,_.isRoot)(n)?"":"/"+n.map(e=>vi(String(e))).join("/")}_.formatJsonPointer=Gs;var Ws=n=>typeof n=="string"?yi(n):n;_.toPath=Ws;function Hs(n,e){if(n.length>=e.length)return!1;for(let t=0;t<n.length;t++)if(n[t]!==e[t])return!1;return!0}_.isChild=Hs;function Ys(n,e){if(n.length!==e.length)return!1;for(let t=0;t<n.length;t++)if(n[t]!==e[t])return!1;return!0}_.isPathEqual=Ys;var Qs=n=>!n.length;_.isRoot=Qs;function Zs(n){if(n.length<1)throw new Error("NO_PARENT");return n.slice(0,n.length-1)}_.parent=Zs;function en(n){if(typeof n=="number")return!0;let e=parseInt(n,10);return String(e)===n&&e>=0}_.isValidIndex=en;var tn=n=>{let e=n.length,t=0,i;for(;t<e;){if(i=n.charCodeAt(t),i>=48&&i<=57){t++;continue}return!1}return!0};_.isInteger=tn});var Ni=a(H=>{"use strict";d();Object.defineProperty(H,"__esModule",{value:!0});H.validatePath=H.validateJsonPointer=void 0;var sn=n=>{if(typeof n=="string"){if(n){if(n[0]!=="/")throw new Error("POINTER_INVALID");if(n.length>1024)throw new Error("POINTER_TOO_LONG")}}else(0,H.validatePath)(n)};H.validateJsonPointer=sn;var{isArray:nn}=Array,rn=n=>{if(!nn(n))throw new Error("Invalid path.");if(n.length>256)throw new Error("Path too long.");for(let e of n)switch(typeof e){case"string":case"number":continue;default:throw new Error("Invalid path step.")}};H.validatePath=rn});var Ie=a(Ce=>{"use strict";d();Object.defineProperty(Ce,"__esModule",{value:!0});Ce.hasOwnProperty=void 0;var on=Object.prototype.hasOwnProperty;function ln(n,e){return on.call(n,e)}Ce.hasOwnProperty=ln});var Oi=a(Te=>{"use strict";d();Object.defineProperty(Te,"__esModule",{value:!0});Te.get=void 0;var cn=Ie(),dn=(n,e)=>{let t=e.length,i;if(!t)return n;for(let s=0;s<t;s++)if(i=e[s],n instanceof Array){let r=n.length;if(i==="-")return;let o=~~i;if(""+o!==i||(i=o,i<0))return;n=n[i]}else if(typeof n=="object"){if(!n||!(0,cn.hasOwnProperty)(n,i))return;n=n[i]}else return;return n};Te.get=dn});var Si=a(R=>{"use strict";d();Object.defineProperty(R,"__esModule",{value:!0});R.isObjectReference=R.isArrayEnd=R.isArrayReference=R.find=void 0;var un=Ie(),{isArray:xi}=Array,hn=(n,e)=>{let t=e.length;if(!t)return{val:n};let i,s;for(let o=0;o<t;o++)if(i=n,s=e[o],xi(i)){let l=i.length;if(s==="-")s=l;else if(typeof s=="string"){let c=~~s;if(""+c!==s)throw new Error("INVALID_INDEX");if(s=c,s<0)throw new Error("INVALID_INDEX")}n=i[s]}else if(typeof i=="object"&&i)n=(0,un.hasOwnProperty)(i,s)?i[s]:void 0;else throw new Error("NOT_FOUND");return{val:n,obj:i,key:s}};R.find=hn;var an=n=>xi(n.obj)&&typeof n.key=="number";R.isArrayReference=an;var fn=n=>n.obj.length===n.key;R.isArrayEnd=fn;var pn=n=>typeof n.obj=="object"&&typeof n.key=="string";R.isObjectReference=pn});var Ci=a(Ae=>{"use strict";d();Object.defineProperty(Ae,"__esModule",{value:!0});Ae.findByPointer=void 0;var wn=Ie(),gn=bt(),{isArray:bn}=Array,_n=(n,e)=>{if(!n)return{val:e};let t,i,s=0,r=1;for(;s>-1;)if(s=n.indexOf("/",r),i=s>-1?n.substring(r,s):n.substring(r),r=s+1,t=e,bn(t)){let o=t.length;if(i==="-")i=o;else{let l=~~i;if(""+l!==i)throw new Error("INVALID_INDEX");if(i=l,i<0)throw"INVALID_INDEX"}e=t[i]}else if(typeof t=="object"&&t)i=(0,gn.unescapeComponent)(i),e=(0,wn.hasOwnProperty)(t,i)?t[i]:void 0;else throw"NOT_FOUND";return{val:e,obj:t,key:i}};Ae.findByPointer=_n});var Ii=a(_t=>{"use strict";d();Object.defineProperty(_t,"__esModule",{value:!0});var mn=(k(),E(P));mn.__exportStar(Ci(),_t)});var Ti=a(J=>{"use strict";d();Object.defineProperty(J,"__esModule",{value:!0});var ee=(k(),E(P));ee.__exportStar(_i(),J);ee.__exportStar(bt(),J);ee.__exportStar(Ni(),J);ee.__exportStar(Oi(),J);ee.__exportStar(Si(),J);ee.__exportStar(Ii(),J)});var Ai=a(je=>{"use strict";d();Object.defineProperty(je,"__esModule",{value:!0});je.find=void 0;var vn=Ti(),mt=z(),yn=(n,e)=>{let t=(0,vn.toPath)(e),i=n,s=t.length;if(!s)return i;let r=0;for(;r<s&&i;){let o=t[r++];if(i=i.container(),!i)throw new Error("NOT_CONTAINER");if(i instanceof mt.ObjNode){let l=i.get(String(o));if(!l)throw new Error("NOT_FOUND");i=l}else if(i instanceof mt.ArrNode){let l=i.getNode(Number(o));if(!l)throw new Error("NOT_FOUND");i=l}else if(i instanceof mt.VecNode){let l=i.get(Number(o));if(!l)throw new Error("NOT_FOUND");i=l}}return i};je.find=yn});var xt=a(V=>{"use strict";d();Object.defineProperty(V,"__esModule",{value:!0});V.OnNewFanOut=V.MapFanOut=V.MicrotaskBufferFanOut=V.MergeFanOut=void 0;var qe=gt(),vt=class extends qe.FanOut{constructor(e){super(),this.fanouts=e,this.unsubs=[]}listen(e){this.listeners.size||(this.unsubs=this.fanouts.map(i=>i.listen(s=>this.emit(s))));let t=super.listen(e);return()=>{t(),this.listeners.size||(this.unsubs.forEach(i=>i()),this.unsubs=[])}}};V.MergeFanOut=vt;var yt=class extends qe.FanOut{constructor(e){super(),this.source=e,this.buffer=[],this.unsub=void 0}listen(e){this.unsub||(this.unsub=this.source.listen(i=>{let s=this.buffer;s.length||queueMicrotask(()=>{this.emit(s),this.buffer=[]}),s.push(i)}));let t=super.listen(e);return()=>{t(),this.listeners.size||this.clear()}}clear(){this.listeners.clear(),this.buffer=[],this.unsub?.(),this.unsub=void 0}};V.MicrotaskBufferFanOut=yt;var Nt=class extends qe.FanOut{constructor(e,t){super(),this.source=e,this.mapper=t,this.unsub=void 0}listen(e){this.unsub||(this.unsub=this.source.listen(i=>this.emit(this.mapper(i))));let t=super.listen(e);return()=>{t(),this.listeners.size||this.clear()}}clear(){this.listeners.clear(),this.unsub?.(),this.unsub=void 0}};V.MapFanOut=Nt;var Ot=class extends qe.FanOut{constructor(e,t=void 0){super(),this.source=e,this.last=t,this.unsub=void 0}listen(e){this.unsub||(this.unsub=this.source.listen(i=>{this.last!==i&&this.emit(this.last=i)}));let t=super.listen(e);return()=>{t(),this.listeners.size||this.clear()}}clear(){this.listeners.clear(),this.last=void 0,this.unsub?.(),this.unsub=void 0}};V.OnNewFanOut=Ot});var qi=a(Ee=>{"use strict";d();Object.defineProperty(Ee,"__esModule",{value:!0});Ee.NodeEvents=void 0;var ji=xt(),St=class{constructor(e){this.api=e,this.subscribe=t=>this.onViewChanges.listen(()=>t()),this.getSnapshot=()=>this.api.view(),this.onChanges=new ji.MapFanOut(this.api.api.onChanges,this.getSnapshot),this.onViewChanges=new ji.OnNewFanOut(this.onChanges,this.api.view())}handleDelete(){this.onViewChanges.clear(),this.onChanges.clear()}};Ee.NodeEvents=St});var It=a(Pe=>{"use strict";d();Object.defineProperty(Pe,"__esModule",{value:!0});Pe.ExtNode=void 0;var Nn=I(),Ct=class{constructor(e){this.data=e,this.api=void 0,this.id=e.id}children(e){}child(){return this.data}container(){return this.data.container()}toString(e,t){return this.name()+(t?" "+(0,Nn.printTs)(t):"")+" "+this.data.toString(e)}};Pe.ExtNode=Ct});var Mt=a(N=>{"use strict";d();Object.defineProperty(N,"__esModule",{value:!0});N.ArrApi=N.BinApi=N.StrApi=N.ObjApi=N.VecApi=N.ValApi=N.ConApi=N.NodeApi=void 0;var On=B(),xn=Ai(),Sn=I(),X=z(),Cn=qi(),In=It(),L=class{constructor(e,t){this.node=e,this.api=t,this.ev=void 0}get events(){return this.ev||(this.ev=new Cn.NodeEvents(this))}find(e){let t=this.node;if(e===void 0){if(typeof t.child=="function"){let i=t.child();if(!i)throw new Error("NO_CHILD");return i}throw new Error("CANNOT_IN")}return typeof e=="string"&&e&&e[0]!=="/"&&(e="/"+e),typeof e=="number"&&(e=[e]),(0,xn.find)(this.node,e)}in(e){let t=this.find(e);return this.api.wrap(t)}asVal(){if(this.node instanceof X.ValNode)return this.api.wrap(this.node);throw new Error("NOT_VAL")}asStr(){if(this.node instanceof X.StrNode)return this.api.wrap(this.node);throw new Error("NOT_STR")}asBin(){if(this.node instanceof X.BinNode)return this.api.wrap(this.node);throw new Error("NOT_BIN")}asArr(){if(this.node instanceof X.ArrNode)return this.api.wrap(this.node);throw new Error("NOT_ARR")}asVec(){if(this.node instanceof X.VecNode)return this.api.wrap(this.node);throw new Error("NOT_ARR")}asObj(){if(this.node instanceof X.ObjNode)return this.api.wrap(this.node);throw new Error("NOT_OBJ")}asCon(){if(this.node instanceof X.ConNode)return this.api.wrap(this.node);throw new Error("NOT_CONST")}asExt(e){let t,i=this.node;if(i instanceof In.ExtNode&&(t=i),i instanceof X.VecNode&&(t=i.ext()),!t)throw new Error("NOT_EXT");let s=this.api.wrap(t);if(!e||s instanceof e.Api)return s;throw new Error("NOT_EXT")}val(e){return this.in(e).asVal()}str(e){return this.in(e).asStr()}bin(e){return this.in(e).asBin()}arr(e){return this.in(e).asArr()}vec(e){return this.in(e).asVec()}obj(e){return this.in(e).asObj()}con(e){return this.in(e).asCon()}view(){return this.node.view()}proxy(){return{toApi:()=>this,toView:()=>this.node.view()}}toString(e=""){return this.constructor.name+(0,On.printTree)(e,[t=>this.node.toString(t)])}};N.NodeApi=L;var Tt=class extends L{proxy(){return{toApi:()=>this,toView:()=>this.node.view()}}};N.ConApi=Tt;var At=class extends L{get(){return this.in()}set(e){let{api:t,node:i}=this,r=t.builder.constOrJson(e);t.builder.setVal(i.id,r),t.apply()}proxy(){let e=this;return{toApi:()=>this,toView:()=>this.node.view(),get val(){let i=e.node.node();return e.api.wrap(i).proxy()}}}};N.ValApi=At;var jt=class extends L{get(e){return this.in(e)}set(e){let{api:t,node:i}=this,{builder:s}=t;s.insVec(i.id,e.map(([r,o])=>[r,s.constOrJson(o)])),t.apply()}push(...e){let t=this.length();this.set(e.map((i,s)=>[t+s,i]))}length(){return this.node.elements.length}proxy(){return new Proxy({},{get:(t,i,s)=>{if(i==="toApi")return()=>this;if(i==="toView")return()=>this.view();if(i==="toExt")return()=>this.asExt();let r=Number(i);if(Number.isNaN(r))throw new Error("INVALID_INDEX");let o=this.node.get(r);if(!o)throw new Error("OUT_OF_BOUNDS");return this.api.wrap(o).proxy()}})}};N.VecApi=jt;var qt=class extends L{get(e){return this.in(e)}set(e){let{api:t,node:i}=this,{builder:s}=t;s.insObj(i.id,Object.entries(e).map(([r,o])=>[r,s.constOrJson(o)])),t.apply()}del(e){let{api:t,node:i}=this,{builder:s}=t;t.builder.insObj(i.id,e.map(r=>[r,s.const(void 0)])),t.apply()}proxy(){return new Proxy({},{get:(t,i,s)=>{if(i==="toApi")return()=>this;if(i==="toView")return()=>this.view();let r=String(i),o=this.node.get(r);if(!o)throw new Error("NO_SUCH_KEY");return this.api.wrap(o).proxy()}})}};N.ObjApi=qt;var Et=class extends L{ins(e,t){let{api:i,node:s}=this;i.onBeforeLocalChange.emit(i.next);let r=i.builder;r.pad();let o=i.builder.nextTime(),l=new Sn.Timestamp(r.clock.sid,o),c=s.insAt(e,l,t);if(!c)throw new Error("OUT_OF_BOUNDS");r.insStr(s.id,c,t),i.advance()}del(e,t){let{api:i,node:s}=this;i.onBeforeLocalChange.emit(i.next);let r=i.builder;r.pad();let o=s.findInterval(e,t);if(!o)throw new Error("OUT_OF_BOUNDS");s.delete(o),r.del(s.id,o),i.advance()}findId(e){let t=this.node,s=t.length()-1;return e>s&&(e=s),e<0?t.id:t.find(e)||t.id}findPos(e){let t=this.node,i=t.id;if(i.sid===e.sid&&i.time===e.time)return-1;let s=t.findById(e);return s?t.pos(s)+(s.del?0:e.time-s.id.time):-1}length(){return this.node.length()}proxy(){return{toApi:()=>this,toView:()=>this.node.view()}}};N.StrApi=Et;var Pt=class extends L{ins(e,t){let{api:i,node:s}=this,r=e?s.find(e-1):s.id;if(!r)throw new Error("OUT_OF_BOUNDS");i.builder.insBin(s.id,r,t),i.apply()}del(e,t){let{api:i,node:s}=this,r=s.findInterval(e,t);if(!r)throw new Error("OUT_OF_BOUNDS");i.builder.del(s.id,r),i.apply()}length(){return this.node.length()}proxy(){return{toApi:()=>this,toView:()=>this.node.view()}}};N.BinApi=Pt;var kt=class extends L{get(e){return this.in(e)}ins(e,t){let{api:i,node:s}=this,{builder:r}=i,o=e?s.find(e-1):s.id;if(!o)throw new Error("OUT_OF_BOUNDS");let l=[];for(let c=0;c<t.length;c++)l.push(r.json(t[c]));r.insArr(s.id,o,l),i.apply()}del(e,t){let{api:i,node:s}=this,r=s.findInterval(e,t);if(!r)throw new Error("OUT_OF_BOUNDS");i.builder.del(s.id,r),i.apply()}length(){return this.node.length()}proxy(){return new Proxy({},{get:(t,i,s)=>{if(i==="toApi")return()=>this;if(i==="toView")return()=>this.view();let r=Number(i);if(Number.isNaN(r))throw new Error("INVALID_INDEX");let o=this.node.getNode(r);if(!o)throw new Error("OUT_OF_BOUNDS");return this.api.wrap(o).proxy()}})}};N.ArrApi=kt});var Vt=a(ke=>{"use strict";d();Object.defineProperty(ke,"__esModule",{value:!0});ke.ModelApi=void 0;var D=gt(),Y=z(),K=Mt(),Tn=Is(),Bt=xt(),An=It(),Rt=class{constructor(e){this.model=e,this.next=0,this.onBeforeReset=new D.FanOut,this.onReset=new D.FanOut,this.onBeforePatch=new D.FanOut,this.onPatch=new D.FanOut,this.onBeforeLocalChange=new D.FanOut,this.onLocalChange=new D.FanOut,this.onLocalChanges=new Bt.MicrotaskBufferFanOut(this.onLocalChange),this.onBeforeTransaction=new D.FanOut,this.onTransaction=new D.FanOut,this.onChange=new Bt.MergeFanOut([this.onReset,this.onPatch,this.onLocalChange]),this.onChanges=new Bt.MicrotaskBufferFanOut(this.onChange),this.onFlush=new D.FanOut,this.inTx=!1,this.stopAutoFlush=void 0,this.subscribe=t=>this.onChanges.listen(()=>t()),this.getSnapshot=()=>this.view(),this.builder=new Tn.PatchBuilder(e.clock),e.onbeforereset=()=>this.onBeforeReset.emit(),e.onreset=()=>this.onReset.emit(),e.onbeforepatch=t=>this.onBeforePatch.emit(t),e.onpatch=t=>this.onPatch.emit(t)}wrap(e){if(e instanceof Y.ValNode)return e.api||(e.api=new K.ValApi(e,this));if(e instanceof Y.StrNode)return e.api||(e.api=new K.StrApi(e,this));if(e instanceof Y.BinNode)return e.api||(e.api=new K.BinApi(e,this));if(e instanceof Y.ArrNode)return e.api||(e.api=new K.ArrApi(e,this));if(e instanceof Y.ObjNode)return e.api||(e.api=new K.ObjApi(e,this));if(e instanceof Y.ConNode)return e.api||(e.api=new K.ConApi(e,this));if(e instanceof Y.VecNode)return e.api||(e.api=new K.VecApi(e,this));if(e instanceof An.ExtNode){if(e.api)return e.api;let t=this.model.ext.get(e.extId);return e.api=new t.Api(e,this)}else throw new Error("UNKNOWN_NODE")}get r(){return new K.ValApi(this.model.root,this)}get node(){return this.r.get()}in(e){return this.r.in(e)}find(e){return this.node.find(e)}con(e){return this.node.con(e)}val(e){return this.node.val(e)}vec(e){return this.node.vec(e)}obj(e){return this.node.obj(e)}str(e){return this.node.str(e)}bin(e){return this.node.bin(e)}arr(e){return this.node.arr(e)}root(e){let t=this.builder;return t.root(t.json(e)),this.apply(),this}apply(){let e=this.builder.patch.ops,t=e.length,i=this.model,s=this.next;this.onBeforeLocalChange.emit(s);for(let r=this.next;r<t;r++)i.applyOperation(e[r]);this.next=t,i.tick++,this.onLocalChange.emit(s)}advance(){let e=this.next;this.next=this.builder.patch.ops.length,this.model.tick++,this.onLocalChange.emit(e)}view(){return this.model.view()}transaction(e){if(this.inTx)e();else{this.inTx=!0;try{this.onBeforeTransaction.emit(),e(),this.onTransaction.emit()}finally{this.inTx=!1}}}flush(){let e=this.builder.flush();return this.next=0,this.onFlush.emit(e),e}autoFlush(){let e=()=>this.builder.patch.ops.length&&this.flush(),t=this.onLocalChanges.listen(e),i=this.onBeforeTransaction.listen(e),s=this.onTransaction.listen(e);return this.stopAutoFlush=()=>{this.stopAutoFlush=void 0,t(),i(),s()}}};ke.ModelApi=Rt});var Pi=a(Me=>{"use strict";d();Object.defineProperty(Me,"__esModule",{value:!0});Me.randomSessionId=void 0;var Ei=65535,jn=9007199254740991-Ei,qn=()=>Math.floor(jn*Math.random()+Ei);Me.randomSessionId=qn});var ki=a(Be=>{"use strict";d();Object.defineProperty(Be,"__esModule",{value:!0});Be.Extensions=void 0;var En=B(),Lt=class n{constructor(){this.ext={}}register(e){this.ext[e.id]=e}get(e){return this.ext[e]}size(){return Object.keys(this.ext).length}clone(){let e=new n;for(let t of Object.values(this.ext))e.register(t);return e}toString(e=""){let t=Object.keys(this.ext).map(i=>+i).sort();return"extensions"+(0,En.printTree)(e,t.map(i=>s=>`${i}: ${this.ext[i].name}`))}};Be.Extensions=Lt});var Ve=a(Re=>{"use strict";d();Object.defineProperty(Re,"__esModule",{value:!0});Re.printBinary=void 0;var Pn=(n="",e)=>{let t=e[0],i=e[1],s="";return t&&(s+=`
|
|
5
5
|
`+n+"\u2190 "+t(n+" ")),i&&(s+=`
|
|
6
6
|
`+n+"\u2192 "+i(n+" ")),s};Re.printBinary=Pn});var Mi=a(Dt=>{"use strict";d();Object.defineProperty(Dt,"__esModule",{value:!0});var kn=(k(),E(P));kn.__exportStar(Ve(),Dt)});var Ri=a(S=>{"use strict";d();Object.defineProperty(S,"__esModule",{value:!0});S.print=S.remove=S.insert=S.insertLeft=S.insertRight=void 0;var Mn=Mi(),Ft=JSON.stringify,Ut=(n,e,t)=>{let i=e.p;if(!i)return n;let s=e===i.l,r=i.bf|0;switch(s?i.bf=++r:i.bf=--r,r){case 0:return n;case 1:case-1:return Ut(n,i,e);default:{let o=t===e.l;return s?o?(Fe(i,e),e.p?n:e):(Bi(i,e,t),t.p?n:t):o?($t(i,e,t),t.p?n:t):(ue(i,e),e.p?n:e)}}},Fe=(n,e)=>{let t=n.p,i=e.r;e.p=t,e.r=n,n.p=e,n.l=i,i&&(i.p=n),t&&(t.l===n?t.l=e:t.r=e);let s=n.bf,r=e.bf;s+=-1-(r>0?r:0),r+=-1+(s<0?s:0),n.bf=s,e.bf=r},ue=(n,e)=>{let t=n.p,i=e.l;e.p=t,e.l=n,n.p=e,n.r=i,i&&(i.p=n),t&&(t.l===n?t.l=e:t.r=e);let s=n.bf,r=e.bf;s+=1-(r<0?r:0),r+=1+(s>0?s:0),n.bf=s,e.bf=r},Bi=(n,e,t)=>{ue(e,t),Fe(n,t)},$t=(n,e,t)=>{Fe(e,t),ue(n,t)},Bn=(n,e,t)=>(t.r=e,e.p=t,t.bf--,t.l?n:Ut(n,t,e));S.insertRight=Bn;var Rn=(n,e,t)=>(t.l=e,e.p=t,t.bf++,t.r?n:Ut(n,t,e));S.insertLeft=Rn;var Vn=(n,e,t)=>{if(!n)return e;let i=e.k,s=n,r,o=0;for(;r=(o=t(i,s.k))<0?s.l:s.r;)s=r;return o<0?(0,S.insertLeft)(n,e,s):(0,S.insertRight)(n,e,s)};S.insert=Vn;var Ln=(n,e)=>{if(!n)return e;let t=e.p,i=e.l,s=e.r;if(e.p=e.l=e.r=void 0,i&&s)if(i.r){let l=i,c=l;for(;c=l.r;)l=c;let u=l.l,h=l.p,p=u;return t&&(t.l===e?t.l=l:t.r=l),l.p=t,l.r=s,l.bf=e.bf,i!==l&&(l.l=i,i.p=l),s.p=l,h&&(h.l===l?h.l=p:h.r=p),p&&(p.p=h),De(t?n:l,h,1)}else{t&&(t.l===e?t.l=i:t.r=i),i.p=t,i.r=s,s.p=i;let l=e.bf;if(t)return i.bf=l,Le(n,i,1);let c=l-1;if(i.bf=c,c>=-1)return i;let u=s.l;return s.bf>0?($t(i,s,u),u):(ue(i,s),s)}let r=i||s;return r&&(r.p=t),t?t.l===e?(t.l=r,Le(n,t,1)):(t.r=r,De(n,t,1)):r};S.remove=Ln;var Le=(n,e,t)=>{let i=e.bf|0;i-=t,e.bf=i;let s=t;if(i===-1)return n;if(i<-1){let o=e.r;if(o.bf<=0)o.l&&o.bf===0&&(s=0),ue(e,o),e=o;else{let l=o.l;$t(e,o,l),e=l}}let r=e.p;return r?r.l===e?Le(n,r,s):De(n,r,s):e},De=(n,e,t)=>{let i=e.bf|0;i+=t,e.bf=i;let s=t;if(i===1)return n;if(i>1){let o=e.l;if(o.bf>=0)o.r&&o.bf===0&&(s=0),Fe(e,o),e=o;else{let l=o.r;Bi(e,o,l),e=l}}let r=e.p;return r?r.l===e?Le(n,r,s):De(n,r,s):e},Dn=(n,e="")=>{if(!n)return"\u2205";let{bf:t,l:i,r:s,k:r,v:o}=n,l=o&&typeof o=="object"&&o.constructor===Object?Ft(o):o&&typeof o=="object"?o.toString(e):Ft(o),c=r!==void 0?` { ${Ft(r)} = ${l} }`:"",u=t?` [${t}]`:"";return n.constructor.name+`${u}`+c+(0,Mn.printBinary)(e,[i?h=>(0,S.print)(i,h):null,s?h=>(0,S.print)(s,h):null])};S.print=Dn});var zt=a(Ue=>{"use strict";d();Object.defineProperty(Ue,"__esModule",{value:!0});Ue.first=void 0;var Fn=n=>{let e=n;for(;e;)if(e.l)e=e.l;else return e;return e};Ue.first=Fn});var Vi=a($e=>{"use strict";d();Object.defineProperty($e,"__esModule",{value:!0});$e.next=void 0;var Un=zt(),$n=n=>{let e=n.r;if(e)return(0,Un.first)(e);let t=n.p;for(;t&&t.r===n;)n=t,t=t.p;return t};$e.next=$n});var Xt=a(b=>{"use strict";d();Object.defineProperty(b,"__esModule",{value:!0});b.remove=b.insert=b.insertLeft=b.insertRight=b.findOrNextLower=b.find=b.size=b.prev=b.last=b.next=b.first=void 0;var zn=zt();Object.defineProperty(b,"first",{enumerable:!0,get:function(){return zn.first}});var Jn=Vi();Object.defineProperty(b,"next",{enumerable:!0,get:function(){return Jn.next}});var Xn=n=>{let e=n;for(;e;)if(e.r)e=e.r;else return e;return e};b.last=Xn;var Kn=n=>{if(n.l){for(n=n.l;n.r;)n=n.r;return n}let e=n.p;for(;e&&e.l===n;)n=e,e=e.p;return e};b.prev=Kn;var Jt=n=>{let e=n.l,t=n.r;return 1+(e?Jt(e):0)+(t?Jt(t):0)},Gn=n=>n?Jt(n):0;b.size=Gn;var Wn=(n,e,t)=>{let i=n;for(;i;){let s=t(e,i.k);if(s===0)return i;i=s<0?i.l:i.r}return i};b.find=Wn;var Hn=(n,e,t)=>{let i=n,s;for(;i;){let r=t(i.k,e);if(r===0)return i;if(r>0)i=i.l;else{let o=i.r;if(s=i,!o)return s;i=o}}return s};b.findOrNextLower=Hn;var Yn=(n,e)=>{let t=n.r=e.r;e.r=n,n.p=e,t&&(t.p=n)};b.insertRight=Yn;var Qn=(n,e)=>{let t=n.l=e.l;e.l=n,n.p=e,t&&(t.p=n)};b.insertLeft=Qn;var Zn=(n,e,t)=>{if(!n)return e;let i=e.k,s=n;for(;s;){let r=t(i,s.k),o=r<0?s.l:s.r;if(o)s=o;else{r<0?(0,b.insertLeft)(e,s):(0,b.insertRight)(e,s);break}}return n};b.insert=Zn;var er=(n,e)=>{let t=e.p,i=e.l,s=e.r;if(e.p=e.l=e.r=void 0,!i&&!s){if(t)t.l===e?t.l=void 0:t.r=void 0;else return;return n}else if(i&&s){let o=i;for(;o.r;)o=o.r;return o.r=s,s.p=o,t?(t.l===e?t.l=i:t.r=i,i.p=t,n):(i.p=void 0,i)}let r=i||s;if(r.p=t,t)t.l===e?t.l=r:t.r=r;else return r;return n};b.remove=er});var Li=a(Kt=>{"use strict";d();Object.defineProperty(Kt,"__esModule",{value:!0});var tr=(k(),E(P));tr.__exportStar(B(),Kt)});var Di=a(ze=>{"use strict";d();Object.defineProperty(ze,"__esModule",{value:!0});ze.createMap=void 0;var te=Xt(),ir=Li(),sr=(n,e)=>n===e?0:n<e?-1:1,nr=(n,e,t,i,s,r)=>{class o{constructor(c){this.min=void 0,this.root=void 0,this.max=void 0,this._size=0,this.next=te.next,this.comparator=c||sr}set(c,u){let h=this.root;if(h===void 0){this._size=1;let g=new n(c,u);return this.root=this.min=this.max=e(void 0,g,this.comparator)}let p=this.comparator,w,y=this.max;if(w=p(c,y.k),w===0)return y.v=u,y;if(w>0){let g=this.max=new n(c,u);return this.root=i(h,g,y),this._size++,g}let G=this.min;if(w=p(c,G.k),w===0)return G.v=u,G;if(w<0){let g=this.min=new n(c,u);return this.root=t(h,g,G),this._size++,g}let O=h;do{if(w=p(c,O.k),w===0)return O.v=u,O;if(w>0){let g=O.r;if(g===void 0){let $=new n(c,u);return this.root=i(h,$,O),this._size++,$}O=g}else if(w<0){let g=O.l;if(g===void 0){let $=new n(c,u);return this.root=t(h,$,O),this._size++,$}O=g}}while(!0)}find(c){let u=this.comparator,h=this.root;for(;h;){let p=+u(c,h.k);if(p===0)return h;h=p<0?h.l:h.r}}get(c){return this.find(c)?.v}del(c){let u=this.find(c);return u?(u===this.max&&(this.max=(0,te.prev)(u)),u===this.min&&(this.min=(0,te.next)(u)),this.root=s(this.root,u),this._size--,!0):!1}clear(){this._size=0,this.root=this.min=this.max=void 0}has(c){return!!this.find(c)}size(){return this._size}isEmpty(){return!this.min}getOrNextLower(c){return(0,te.findOrNextLower)(this.root,c,this.comparator)||void 0}forEach(c){let u=this.first();if(u)do c(u);while(u=(0,te.next)(u))}first(){return this.min}last(){return this.max}iterator0(){let c=this.first();return()=>{if(!c)return;let u=c;return c=(0,te.next)(c),u}}iterator(){let c=this.iterator0();return{next:()=>{let u=c();return{value:u,done:!u}}}}entries(){return{[Symbol.iterator]:()=>this.iterator()}}toString(c){return this.constructor.name+(0,ir.printTree)(c,[u=>r(this.root,u)])}}return o};ze.createMap=nr});var Fi=a(ie=>{"use strict";d();Object.defineProperty(ie,"__esModule",{value:!0});ie.AvlMap=ie.AvlNode=void 0;var he=Ri(),rr=Di(),Je=class{constructor(e,t){this.k=e,this.v=t,this.p=void 0,this.l=void 0,this.r=void 0,this.bf=0}};ie.AvlNode=Je;ie.AvlMap=(0,rr.createMap)(Je,he.insert,he.insertLeft,he.insertRight,he.remove,he.print)});var xe=a(se=>{"use strict";d();Object.defineProperty(se,"__esModule",{value:!0});se.Model=se.UNDEFINED=void 0;var $i=(k(),E(P)),A=$i.__importStar(Ns()),F=$i.__importStar(I()),zi=ge(),Xe=gi(),or=Vt(),Wt=ot(),lr=Pi(),C=z(),Gt=B(),cr=ki(),Ui=Fi();se.UNDEFINED=new zi.ConNode(Wt.ORIGIN,void 0);var q=class n{static fromPatches(e){if(!e.length)throw new Error("NO_PATCHES");let s=e[0].getId().sid;if(!s)throw new Error("NO_SID");let r=n.withLogicalClock(s);return r.applyBatch(e),r}constructor(e){this.root=new C.RootNode(this,Wt.ORIGIN),this.index=new Ui.AvlMap(F.compare),this.ext=new cr.Extensions,this.tick=0,this.onbeforepatch=void 0,this.onpatch=void 0,this.onbeforereset=void 0,this.onreset=void 0,this.clock=e,e.time||(e.time=1)}get api(){return this._api||(this._api=new or.ModelApi(this)),this._api}get find(){return this.api.r.proxy()}get s(){return this.api.r.proxy().val}applyBatch(e){let t=e.length;for(let i=0;i<t;i++)this.applyPatch(e[i])}applyPatch(e){this.onbeforepatch?.(e);let t=e.ops,{length:i}=t;for(let s=0;s<i;s++)this.applyOperation(t[s]);this.tick++,this.onpatch?.(e)}applyOperation(e){this.clock.observe(e.id,e.span());let t=this.index;if(e instanceof A.InsStrOp){let i=t.get(e.obj);i instanceof C.StrNode&&i.ins(e.ref,e.id,e.data)}else if(e instanceof A.NewObjOp){let i=e.id;t.get(i)||t.set(i,new C.ObjNode(this,i))}else if(e instanceof A.NewArrOp){let i=e.id;t.get(i)||t.set(i,new C.ArrNode(this,i))}else if(e instanceof A.NewStrOp){let i=e.id;t.get(i)||t.set(i,new C.StrNode(i))}else if(e instanceof A.NewValOp){let i=e.id;t.get(i)||t.set(i,new C.ValNode(this,i,Wt.ORIGIN))}else if(e instanceof A.NewConOp){let i=e.id;t.get(i)||t.set(i,new zi.ConNode(i,e.val))}else if(e instanceof A.InsObjOp){let i=t.get(e.obj),s=e.data,r=s.length;if(i instanceof C.ObjNode)for(let o=0;o<r;o++){let l=s[o],c=t.get(l[1]);if(!c||i.id.time>=l[1].time)continue;let u=i.put(l[0]+"",c.id);u&&this.deleteNodeTree(u)}}else if(e instanceof A.InsVecOp){let i=t.get(e.obj),s=e.data,r=s.length;if(i instanceof C.VecNode)for(let o=0;o<r;o++){let l=s[o],c=t.get(l[1]);if(!c||i.id.time>=l[1].time)continue;let u=i.put(Number(l[0]),c.id);u&&this.deleteNodeTree(u)}}else if(e instanceof A.InsValOp){let i=e.obj,s=i.sid===0&&i.time===0?this.root:t.get(i);if(s instanceof C.ValNode&&t.get(e.val)){let o=s.set(e.val);o&&this.deleteNodeTree(o)}}else if(e instanceof A.InsArrOp){let i=t.get(e.obj);if(i instanceof C.ArrNode){let s=[],r=e.data,o=r.length;for(let l=0;l<o;l++){let c=r[l];t.get(c)&&(i.id.time>=c.time||s.push(c))}s.length&&i.ins(e.ref,e.id,s)}}else if(e instanceof A.DelOp){let i=t.get(e.obj);if(i instanceof C.ArrNode){let s=e.what.length;for(let r=0;r<s;r++){let o=e.what[r];for(let l=0;l<o.span;l++){let c=i.getById(new F.Timestamp(o.sid,o.time+l));c&&this.deleteNodeTree(c)}}i.delete(e.what)}else(i instanceof C.StrNode||i instanceof C.BinNode)&&i.delete(e.what)}else if(e instanceof A.NewBinOp){let i=e.id;t.get(i)||t.set(i,new C.BinNode(i))}else if(e instanceof A.InsBinOp){let i=t.get(e.obj);i instanceof C.BinNode&&i.ins(e.ref,e.id,e.data)}else if(e instanceof A.NewVecOp){let i=e.id;t.get(i)||t.set(i,new C.VecNode(this,i))}}deleteNodeTree(e){if(e.sid===0)return;let i=this.index.get(e);if(!i)return;let s=i.api;s&&s.events.handleDelete(),i.children(r=>this.deleteNodeTree(r.id)),this.index.del(e)}fork(e=n.sid()){let t=n.fromBinary(this.toBinary());return t.clock.sid!==e&&t.clock instanceof F.ClockVector&&(t.clock=t.clock.fork(e)),t.ext=this.ext,t}clone(){return this.fork(this.clock.sid)}reset(e){this.onbeforereset?.();let t=this.index;this.index=new Ui.AvlMap(F.compare);let i=e.toBinary();Xe.decoder.decode(i,this),this.clock=e.clock.clone(),this.ext=e.ext.clone(),this._api?.flush(),t.forEach(({v:s})=>{let r=s.api;if(!r)return;let o=this.index.get(s.id);if(!o){r.events.handleDelete();return}r.node=o,o.api=r}),this.tick++,this.onreset?.()}view(){return this.root.view()}toBinary(){return Xe.encoder.encode(this)}setSchema(e,t=!0){let i=this.clock;if(i.time===1){let r=i.sid;t&&(i.sid=2),this.api.root(e),t&&this.setSid(r)}return this}setSid(e){let t=this.clock,i=t.sid;i!==e&&(t.sid=e,t.observe(new F.Timestamp(i,t.time-1),1))}toString(e=""){let t=()=>"",i=this.ext.size()>0;return"model"+(0,Gt.printTree)(e,[s=>this.root.toString(s),t,s=>{let r=[];return this.index.forEach(o=>r.push(o.v)),`index (${r.length} nodes)`+(r.length?(0,Gt.printTree)(s,r.map(o=>l=>`${o.name()} ${F.printTs(o.id)}`)):"")},t,s=>`view${(0,Gt.printTree)(s,[r=>String(JSON.stringify(this.view(),null,2)).replace(/\n/g,`
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { createRequire as __nodeCreateRequire } from 'node:module';
|
|
2
2
|
const require = __nodeCreateRequire(import.meta.url);
|
|
3
|
-
import{b as Xr,c as b,d as Qr,f as T,g as h}from"./chunk-PVJSG7GU.js";var A={};Qr(A,{__addDisposableResource:()=>ir,__assign:()=>Z,__asyncDelegator:()=>ze,__asyncGenerator:()=>Ye,__asyncValues:()=>Xe,__await:()=>U,__awaiter:()=>Fe,__classPrivateFieldGet:()=>er,__classPrivateFieldIn:()=>sr,__classPrivateFieldSet:()=>rr,__createBinding:()=>et,__decorate:()=>$e,__disposeResources:()=>nr,__esDecorate:()=>Ve,__exportStar:()=>Je,__extends:()=>Ee,__generator:()=>He,__importDefault:()=>tr,__importStar:()=>Ze,__makeTemplateObject:()=>Qe,__metadata:()=>Le,__param:()=>qe,__propKey:()=>De,__read:()=>Bt,__rest:()=>Me,__rewriteRelativeImportExtension:()=>or,__runInitializers:()=>Ue,__setFunctionName:()=>Re,__spread:()=>We,__spreadArray:()=>Ke,__spreadArrays:()=>Ge,__values:()=>tt,default:()=>es});function Ee(i,t){if(typeof t!="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");Pt(i,t);function e(){this.constructor=i}i.prototype=t===null?Object.create(t):(e.prototype=t.prototype,new e)}function Me(i,t){var e={};for(var r in i)Object.prototype.hasOwnProperty.call(i,r)&&t.indexOf(r)<0&&(e[r]=i[r]);if(i!=null&&typeof Object.getOwnPropertySymbols=="function")for(var s=0,r=Object.getOwnPropertySymbols(i);s<r.length;s++)t.indexOf(r[s])<0&&Object.prototype.propertyIsEnumerable.call(i,r[s])&&(e[r[s]]=i[r[s]]);return e}function $e(i,t,e,r){var s=arguments.length,n=s<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,e):r,o;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")n=Reflect.decorate(i,t,e,r);else for(var c=i.length-1;c>=0;c--)(o=i[c])&&(n=(s<3?o(n):s>3?o(t,e,n):o(t,e))||n);return s>3&&n&&Object.defineProperty(t,e,n),n}function qe(i,t){return function(e,r){t(e,r,i)}}function Ve(i,t,e,r,s,n){function o(g){if(g!==void 0&&typeof g!="function")throw new TypeError("Function expected");return g}for(var c=r.kind,u=c==="getter"?"get":c==="setter"?"set":"value",a=!t&&i?r.static?i:i.prototype:null,d=t||(a?Object.getOwnPropertyDescriptor(a,r.name):{}),p,l=!1,f=e.length-1;f>=0;f--){var x={};for(var y in r)x[y]=y==="access"?{}:r[y];for(var y in r.access)x.access[y]=r.access[y];x.addInitializer=function(g){if(l)throw new TypeError("Cannot add initializers after decoration has completed");n.push(o(g||null))};var j=(0,e[f])(c==="accessor"?{get:d.get,set:d.set}:d[u],x);if(c==="accessor"){if(j===void 0)continue;if(j===null||typeof j!="object")throw new TypeError("Object expected");(p=o(j.get))&&(d.get=p),(p=o(j.set))&&(d.set=p),(p=o(j.init))&&s.unshift(p)}else(p=o(j))&&(c==="field"?s.unshift(p):d[u]=p)}a&&Object.defineProperty(a,r.name,d),l=!0}function Ue(i,t,e){for(var r=arguments.length>2,s=0;s<t.length;s++)e=r?t[s].call(i,e):t[s].call(i);return r?e:void 0}function De(i){return typeof i=="symbol"?i:"".concat(i)}function Re(i,t,e){return typeof t=="symbol"&&(t=t.description?"[".concat(t.description,"]"):""),Object.defineProperty(i,"name",{configurable:!0,value:e?"".concat(e," ",t):t})}function Le(i,t){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(i,t)}function Fe(i,t,e,r){function s(n){return n instanceof e?n:new e(function(o){o(n)})}return new(e||(e=Promise))(function(n,o){function c(d){try{a(r.next(d))}catch(p){o(p)}}function u(d){try{a(r.throw(d))}catch(p){o(p)}}function a(d){d.done?n(d.value):s(d.value).then(c,u)}a((r=r.apply(i,t||[])).next())})}function He(i,t){var e={label:0,sent:function(){if(n[0]&1)throw n[1];return n[1]},trys:[],ops:[]},r,s,n,o=Object.create((typeof Iterator=="function"?Iterator:Object).prototype);return o.next=c(0),o.throw=c(1),o.return=c(2),typeof Symbol=="function"&&(o[Symbol.iterator]=function(){return this}),o;function c(a){return function(d){return u([a,d])}}function u(a){if(r)throw new TypeError("Generator is already executing.");for(;o&&(o=0,a[0]&&(e=0)),e;)try{if(r=1,s&&(n=a[0]&2?s.return:a[0]?s.throw||((n=s.return)&&n.call(s),0):s.next)&&!(n=n.call(s,a[1])).done)return n;switch(s=0,n&&(a=[a[0]&2,n.value]),a[0]){case 0:case 1:n=a;break;case 4:return e.label++,{value:a[1],done:!1};case 5:e.label++,s=a[1],a=[0];continue;case 7:a=e.ops.pop(),e.trys.pop();continue;default:if(n=e.trys,!(n=n.length>0&&n[n.length-1])&&(a[0]===6||a[0]===2)){e=0;continue}if(a[0]===3&&(!n||a[1]>n[0]&&a[1]<n[3])){e.label=a[1];break}if(a[0]===6&&e.label<n[1]){e.label=n[1],n=a;break}if(n&&e.label<n[2]){e.label=n[2],e.ops.push(a);break}n[2]&&e.ops.pop(),e.trys.pop();continue}a=t.call(i,e)}catch(d){a=[6,d],s=0}finally{r=n=0}if(a[0]&5)throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}}function Je(i,t){for(var e in i)e!=="default"&&!Object.prototype.hasOwnProperty.call(t,e)&&et(t,i,e)}function tt(i){var t=typeof Symbol=="function"&&Symbol.iterator,e=t&&i[t],r=0;if(e)return e.call(i);if(i&&typeof i.length=="number")return{next:function(){return i&&r>=i.length&&(i=void 0),{value:i&&i[r++],done:!i}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function Bt(i,t){var e=typeof Symbol=="function"&&i[Symbol.iterator];if(!e)return i;var r=e.call(i),s,n=[],o;try{for(;(t===void 0||t-- >0)&&!(s=r.next()).done;)n.push(s.value)}catch(c){o={error:c}}finally{try{s&&!s.done&&(e=r.return)&&e.call(r)}finally{if(o)throw o.error}}return n}function We(){for(var i=[],t=0;t<arguments.length;t++)i=i.concat(Bt(arguments[t]));return i}function Ge(){for(var i=0,t=0,e=arguments.length;t<e;t++)i+=arguments[t].length;for(var r=Array(i),s=0,t=0;t<e;t++)for(var n=arguments[t],o=0,c=n.length;o<c;o++,s++)r[s]=n[o];return r}function Ke(i,t,e){if(e||arguments.length===2)for(var r=0,s=t.length,n;r<s;r++)(n||!(r in t))&&(n||(n=Array.prototype.slice.call(t,0,r)),n[r]=t[r]);return i.concat(n||Array.prototype.slice.call(t))}function U(i){return this instanceof U?(this.v=i,this):new U(i)}function Ye(i,t,e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var r=e.apply(i,t||[]),s,n=[];return s=Object.create((typeof AsyncIterator=="function"?AsyncIterator:Object).prototype),c("next"),c("throw"),c("return",o),s[Symbol.asyncIterator]=function(){return this},s;function o(f){return function(x){return Promise.resolve(x).then(f,p)}}function c(f,x){r[f]&&(s[f]=function(y){return new Promise(function(j,g){n.push([f,y,j,g])>1||u(f,y)})},x&&(s[f]=x(s[f])))}function u(f,x){try{a(r[f](x))}catch(y){l(n[0][3],y)}}function a(f){f.value instanceof U?Promise.resolve(f.value.v).then(d,p):l(n[0][2],f)}function d(f){u("next",f)}function p(f){u("throw",f)}function l(f,x){f(x),n.shift(),n.length&&u(n[0][0],n[0][1])}}function ze(i){var t,e;return t={},r("next"),r("throw",function(s){throw s}),r("return"),t[Symbol.iterator]=function(){return this},t;function r(s,n){t[s]=i[s]?function(o){return(e=!e)?{value:U(i[s](o)),done:!1}:n?n(o):o}:n}}function Xe(i){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t=i[Symbol.asyncIterator],e;return t?t.call(i):(i=typeof tt=="function"?tt(i):i[Symbol.iterator](),e={},r("next"),r("throw"),r("return"),e[Symbol.asyncIterator]=function(){return this},e);function r(n){e[n]=i[n]&&function(o){return new Promise(function(c,u){o=i[n](o),s(c,u,o.done,o.value)})}}function s(n,o,c,u){Promise.resolve(u).then(function(a){n({value:a,done:c})},o)}}function Qe(i,t){return Object.defineProperty?Object.defineProperty(i,"raw",{value:t}):i.raw=t,i}function Ze(i){if(i&&i.__esModule)return i;var t={};if(i!=null)for(var e=Ct(i),r=0;r<e.length;r++)e[r]!=="default"&&et(t,i,e[r]);return Zr(t,i),t}function tr(i){return i&&i.__esModule?i:{default:i}}function er(i,t,e,r){if(e==="a"&&!r)throw new TypeError("Private accessor was defined without a getter");if(typeof t=="function"?i!==t||!r:!t.has(i))throw new TypeError("Cannot read private member from an object whose class did not declare it");return e==="m"?r:e==="a"?r.call(i):r?r.value:t.get(i)}function rr(i,t,e,r,s){if(r==="m")throw new TypeError("Private method is not writable");if(r==="a"&&!s)throw new TypeError("Private accessor was defined without a setter");if(typeof t=="function"?i!==t||!s:!t.has(i))throw new TypeError("Cannot write private member to an object whose class did not declare it");return r==="a"?s.call(i,e):s?s.value=e:t.set(i,e),e}function sr(i,t){if(t===null||typeof t!="object"&&typeof t!="function")throw new TypeError("Cannot use 'in' operator on non-object");return typeof i=="function"?t===i:i.has(t)}function ir(i,t,e){if(t!=null){if(typeof t!="object"&&typeof t!="function")throw new TypeError("Object expected.");var r,s;if(e){if(!Symbol.asyncDispose)throw new TypeError("Symbol.asyncDispose is not defined.");r=t[Symbol.asyncDispose]}if(r===void 0){if(!Symbol.dispose)throw new TypeError("Symbol.dispose is not defined.");r=t[Symbol.dispose],e&&(s=r)}if(typeof r!="function")throw new TypeError("Object not disposable.");s&&(r=function(){try{s.call(this)}catch(n){return Promise.reject(n)}}),i.stack.push({value:t,dispose:r,async:e})}else e&&i.stack.push({async:!0});return t}function nr(i){function t(n){i.error=i.hasError?new ts(n,i.error,"An error was suppressed during disposal."):n,i.hasError=!0}var e,r=0;function s(){for(;e=i.stack.pop();)try{if(!e.async&&r===1)return r=0,i.stack.push(e),Promise.resolve().then(s);if(e.dispose){var n=e.dispose.call(e.value);if(e.async)return r|=2,Promise.resolve(n).then(s,function(o){return t(o),s()})}else r|=1}catch(o){t(o)}if(r===1)return i.hasError?Promise.reject(i.error):Promise.resolve();if(i.hasError)throw i.error}return s()}function or(i,t){return typeof i=="string"&&/^\.\.?\//.test(i)?i.replace(/\.(tsx)$|((?:\.d)?)((?:\.[^./]+?)?)\.([cm]?)ts$/i,function(e,r,s,n,o){return r?t?".jsx":".js":s&&(!n||!o)?e:s+n+"."+o.toLowerCase()+"js"}):i}var Pt,Z,et,Zr,Ct,ts,es,N=Xr(()=>{h();Pt=function(i,t){return Pt=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,r){e.__proto__=r}||function(e,r){for(var s in r)Object.prototype.hasOwnProperty.call(r,s)&&(e[s]=r[s])},Pt(i,t)};Z=function(){return Z=Object.assign||function(t){for(var e,r=1,s=arguments.length;r<s;r++){e=arguments[r];for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n])}return t},Z.apply(this,arguments)};et=Object.create?(function(i,t,e,r){r===void 0&&(r=e);var s=Object.getOwnPropertyDescriptor(t,e);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[e]}}),Object.defineProperty(i,r,s)}):(function(i,t,e,r){r===void 0&&(r=e),i[r]=t[e]});Zr=Object.create?(function(i,t){Object.defineProperty(i,"default",{enumerable:!0,value:t})}):function(i,t){i.default=t},Ct=function(i){return Ct=Object.getOwnPropertyNames||function(t){var e=[];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[e.length]=r);return e},Ct(i)};ts=typeof SuppressedError=="function"?SuppressedError:function(i,t,e){var r=new Error(e);return r.name="SuppressedError",r.error=i,r.suppressed=t,r};es={__extends:Ee,__assign:Z,__rest:Me,__decorate:$e,__param:qe,__esDecorate:Ve,__runInitializers:Ue,__propKey:De,__setFunctionName:Re,__metadata:Le,__awaiter:Fe,__generator:He,__createBinding:et,__exportStar:Je,__values:tt,__read:Bt,__spread:We,__spreadArrays:Ge,__spreadArray:Ke,__await:U,__asyncGenerator:Ye,__asyncDelegator:ze,__asyncValues:Xe,__makeTemplateObject:Qe,__importStar:Ze,__importDefault:tr,__classPrivateFieldGet:er,__classPrivateFieldSet:rr,__classPrivateFieldIn:sr,__addDisposableResource:ir,__disposeResources:nr,__rewriteRelativeImportExtension:or}});var ar=b(cr=>{"use strict";h();Object.defineProperty(cr,"__esModule",{value:!0})});var hr=b(ur=>{"use strict";h();Object.defineProperty(ur,"__esModule",{value:!0})});var fr=b(_=>{"use strict";h();Object.defineProperty(_,"__esModule",{value:!0});_.ServerClockVector=_.ClockVector=_.LogicalClock=_.interval=_.printTs=_.containsId=_.contains=_.compare=_.equal=_.tick=_.tss=_.ts=_.Timespan=_.Timestamp=void 0;var D=class{constructor(t,e){this.sid=t,this.time=e}};_.Timestamp=D;var W=class{constructor(t,e,r){this.sid=t,this.time=e,this.span=r}};_.Timespan=W;var rs=(i,t)=>new D(i,t);_.ts=rs;var ss=(i,t,e)=>new W(i,t,e);_.tss=ss;var is=(i,t)=>(0,_.ts)(i.sid,i.time+t);_.tick=is;var ns=(i,t)=>i.time===t.time&&i.sid===t.sid;_.equal=ns;var os=(i,t)=>{let e=i.time,r=t.time;if(e>r)return 1;if(e<r)return-1;let s=i.sid,n=t.sid;return s>n?1:s<n?-1:0};_.compare=os;var cs=(i,t,e,r)=>{if(i.sid!==e.sid)return!1;let s=i.time,n=e.time;return!(s>n||s+t<n+r)};_.contains=cs;var as=(i,t,e)=>{if(i.sid!==e.sid)return!1;let r=i.time,s=e.time;return!(r>s||r+t<s+1)};_.containsId=as;var us=i=>{if(i.sid===1)return"."+i.time;let t=""+i.sid;return t.length>4&&(t=".."+t.slice(t.length-4)),t+"."+i.time};_.printTs=us;var hs=(i,t,e)=>new W(i.sid,i.time+t,e);_.interval=hs;var G=class extends D{tick(t){let e=new D(this.sid,this.time);return this.time+=t,e}};_.LogicalClock=G;var Et=class i extends G{constructor(){super(...arguments),this.peers=new Map}observe(t,e){let r=t.time+e-1,s=t.sid;if(s!==this.sid){let n=this.peers.get(t.sid);n?r>n.time&&(n.time=r):this.peers.set(t.sid,(0,_.ts)(s,r))}r>=this.time&&(this.time=r+1)}clone(){return this.fork(this.sid)}fork(t){let e=new i(t,this.time);return t!==this.sid&&e.observe((0,_.tick)(this,-1),1),this.peers.forEach(r=>{e.observe(r,1)}),e}toString(t=""){let e=this.peers.size,r=1,s="";return this.peers.forEach(n=>{s+=`
|
|
3
|
+
import{b as Xr,c as b,d as Qr,f as T,g as h}from"./chunk-KQJNRKMF.js";var A={};Qr(A,{__addDisposableResource:()=>ir,__assign:()=>Z,__asyncDelegator:()=>ze,__asyncGenerator:()=>Ye,__asyncValues:()=>Xe,__await:()=>U,__awaiter:()=>Fe,__classPrivateFieldGet:()=>er,__classPrivateFieldIn:()=>sr,__classPrivateFieldSet:()=>rr,__createBinding:()=>et,__decorate:()=>$e,__disposeResources:()=>nr,__esDecorate:()=>Ve,__exportStar:()=>Je,__extends:()=>Ee,__generator:()=>He,__importDefault:()=>tr,__importStar:()=>Ze,__makeTemplateObject:()=>Qe,__metadata:()=>Le,__param:()=>qe,__propKey:()=>De,__read:()=>Bt,__rest:()=>Me,__rewriteRelativeImportExtension:()=>or,__runInitializers:()=>Ue,__setFunctionName:()=>Re,__spread:()=>We,__spreadArray:()=>Ke,__spreadArrays:()=>Ge,__values:()=>tt,default:()=>es});function Ee(i,t){if(typeof t!="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");Pt(i,t);function e(){this.constructor=i}i.prototype=t===null?Object.create(t):(e.prototype=t.prototype,new e)}function Me(i,t){var e={};for(var r in i)Object.prototype.hasOwnProperty.call(i,r)&&t.indexOf(r)<0&&(e[r]=i[r]);if(i!=null&&typeof Object.getOwnPropertySymbols=="function")for(var s=0,r=Object.getOwnPropertySymbols(i);s<r.length;s++)t.indexOf(r[s])<0&&Object.prototype.propertyIsEnumerable.call(i,r[s])&&(e[r[s]]=i[r[s]]);return e}function $e(i,t,e,r){var s=arguments.length,n=s<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,e):r,o;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")n=Reflect.decorate(i,t,e,r);else for(var c=i.length-1;c>=0;c--)(o=i[c])&&(n=(s<3?o(n):s>3?o(t,e,n):o(t,e))||n);return s>3&&n&&Object.defineProperty(t,e,n),n}function qe(i,t){return function(e,r){t(e,r,i)}}function Ve(i,t,e,r,s,n){function o(g){if(g!==void 0&&typeof g!="function")throw new TypeError("Function expected");return g}for(var c=r.kind,u=c==="getter"?"get":c==="setter"?"set":"value",a=!t&&i?r.static?i:i.prototype:null,d=t||(a?Object.getOwnPropertyDescriptor(a,r.name):{}),p,l=!1,f=e.length-1;f>=0;f--){var x={};for(var y in r)x[y]=y==="access"?{}:r[y];for(var y in r.access)x.access[y]=r.access[y];x.addInitializer=function(g){if(l)throw new TypeError("Cannot add initializers after decoration has completed");n.push(o(g||null))};var j=(0,e[f])(c==="accessor"?{get:d.get,set:d.set}:d[u],x);if(c==="accessor"){if(j===void 0)continue;if(j===null||typeof j!="object")throw new TypeError("Object expected");(p=o(j.get))&&(d.get=p),(p=o(j.set))&&(d.set=p),(p=o(j.init))&&s.unshift(p)}else(p=o(j))&&(c==="field"?s.unshift(p):d[u]=p)}a&&Object.defineProperty(a,r.name,d),l=!0}function Ue(i,t,e){for(var r=arguments.length>2,s=0;s<t.length;s++)e=r?t[s].call(i,e):t[s].call(i);return r?e:void 0}function De(i){return typeof i=="symbol"?i:"".concat(i)}function Re(i,t,e){return typeof t=="symbol"&&(t=t.description?"[".concat(t.description,"]"):""),Object.defineProperty(i,"name",{configurable:!0,value:e?"".concat(e," ",t):t})}function Le(i,t){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(i,t)}function Fe(i,t,e,r){function s(n){return n instanceof e?n:new e(function(o){o(n)})}return new(e||(e=Promise))(function(n,o){function c(d){try{a(r.next(d))}catch(p){o(p)}}function u(d){try{a(r.throw(d))}catch(p){o(p)}}function a(d){d.done?n(d.value):s(d.value).then(c,u)}a((r=r.apply(i,t||[])).next())})}function He(i,t){var e={label:0,sent:function(){if(n[0]&1)throw n[1];return n[1]},trys:[],ops:[]},r,s,n,o=Object.create((typeof Iterator=="function"?Iterator:Object).prototype);return o.next=c(0),o.throw=c(1),o.return=c(2),typeof Symbol=="function"&&(o[Symbol.iterator]=function(){return this}),o;function c(a){return function(d){return u([a,d])}}function u(a){if(r)throw new TypeError("Generator is already executing.");for(;o&&(o=0,a[0]&&(e=0)),e;)try{if(r=1,s&&(n=a[0]&2?s.return:a[0]?s.throw||((n=s.return)&&n.call(s),0):s.next)&&!(n=n.call(s,a[1])).done)return n;switch(s=0,n&&(a=[a[0]&2,n.value]),a[0]){case 0:case 1:n=a;break;case 4:return e.label++,{value:a[1],done:!1};case 5:e.label++,s=a[1],a=[0];continue;case 7:a=e.ops.pop(),e.trys.pop();continue;default:if(n=e.trys,!(n=n.length>0&&n[n.length-1])&&(a[0]===6||a[0]===2)){e=0;continue}if(a[0]===3&&(!n||a[1]>n[0]&&a[1]<n[3])){e.label=a[1];break}if(a[0]===6&&e.label<n[1]){e.label=n[1],n=a;break}if(n&&e.label<n[2]){e.label=n[2],e.ops.push(a);break}n[2]&&e.ops.pop(),e.trys.pop();continue}a=t.call(i,e)}catch(d){a=[6,d],s=0}finally{r=n=0}if(a[0]&5)throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}}function Je(i,t){for(var e in i)e!=="default"&&!Object.prototype.hasOwnProperty.call(t,e)&&et(t,i,e)}function tt(i){var t=typeof Symbol=="function"&&Symbol.iterator,e=t&&i[t],r=0;if(e)return e.call(i);if(i&&typeof i.length=="number")return{next:function(){return i&&r>=i.length&&(i=void 0),{value:i&&i[r++],done:!i}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function Bt(i,t){var e=typeof Symbol=="function"&&i[Symbol.iterator];if(!e)return i;var r=e.call(i),s,n=[],o;try{for(;(t===void 0||t-- >0)&&!(s=r.next()).done;)n.push(s.value)}catch(c){o={error:c}}finally{try{s&&!s.done&&(e=r.return)&&e.call(r)}finally{if(o)throw o.error}}return n}function We(){for(var i=[],t=0;t<arguments.length;t++)i=i.concat(Bt(arguments[t]));return i}function Ge(){for(var i=0,t=0,e=arguments.length;t<e;t++)i+=arguments[t].length;for(var r=Array(i),s=0,t=0;t<e;t++)for(var n=arguments[t],o=0,c=n.length;o<c;o++,s++)r[s]=n[o];return r}function Ke(i,t,e){if(e||arguments.length===2)for(var r=0,s=t.length,n;r<s;r++)(n||!(r in t))&&(n||(n=Array.prototype.slice.call(t,0,r)),n[r]=t[r]);return i.concat(n||Array.prototype.slice.call(t))}function U(i){return this instanceof U?(this.v=i,this):new U(i)}function Ye(i,t,e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var r=e.apply(i,t||[]),s,n=[];return s=Object.create((typeof AsyncIterator=="function"?AsyncIterator:Object).prototype),c("next"),c("throw"),c("return",o),s[Symbol.asyncIterator]=function(){return this},s;function o(f){return function(x){return Promise.resolve(x).then(f,p)}}function c(f,x){r[f]&&(s[f]=function(y){return new Promise(function(j,g){n.push([f,y,j,g])>1||u(f,y)})},x&&(s[f]=x(s[f])))}function u(f,x){try{a(r[f](x))}catch(y){l(n[0][3],y)}}function a(f){f.value instanceof U?Promise.resolve(f.value.v).then(d,p):l(n[0][2],f)}function d(f){u("next",f)}function p(f){u("throw",f)}function l(f,x){f(x),n.shift(),n.length&&u(n[0][0],n[0][1])}}function ze(i){var t,e;return t={},r("next"),r("throw",function(s){throw s}),r("return"),t[Symbol.iterator]=function(){return this},t;function r(s,n){t[s]=i[s]?function(o){return(e=!e)?{value:U(i[s](o)),done:!1}:n?n(o):o}:n}}function Xe(i){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t=i[Symbol.asyncIterator],e;return t?t.call(i):(i=typeof tt=="function"?tt(i):i[Symbol.iterator](),e={},r("next"),r("throw"),r("return"),e[Symbol.asyncIterator]=function(){return this},e);function r(n){e[n]=i[n]&&function(o){return new Promise(function(c,u){o=i[n](o),s(c,u,o.done,o.value)})}}function s(n,o,c,u){Promise.resolve(u).then(function(a){n({value:a,done:c})},o)}}function Qe(i,t){return Object.defineProperty?Object.defineProperty(i,"raw",{value:t}):i.raw=t,i}function Ze(i){if(i&&i.__esModule)return i;var t={};if(i!=null)for(var e=Ct(i),r=0;r<e.length;r++)e[r]!=="default"&&et(t,i,e[r]);return Zr(t,i),t}function tr(i){return i&&i.__esModule?i:{default:i}}function er(i,t,e,r){if(e==="a"&&!r)throw new TypeError("Private accessor was defined without a getter");if(typeof t=="function"?i!==t||!r:!t.has(i))throw new TypeError("Cannot read private member from an object whose class did not declare it");return e==="m"?r:e==="a"?r.call(i):r?r.value:t.get(i)}function rr(i,t,e,r,s){if(r==="m")throw new TypeError("Private method is not writable");if(r==="a"&&!s)throw new TypeError("Private accessor was defined without a setter");if(typeof t=="function"?i!==t||!s:!t.has(i))throw new TypeError("Cannot write private member to an object whose class did not declare it");return r==="a"?s.call(i,e):s?s.value=e:t.set(i,e),e}function sr(i,t){if(t===null||typeof t!="object"&&typeof t!="function")throw new TypeError("Cannot use 'in' operator on non-object");return typeof i=="function"?t===i:i.has(t)}function ir(i,t,e){if(t!=null){if(typeof t!="object"&&typeof t!="function")throw new TypeError("Object expected.");var r,s;if(e){if(!Symbol.asyncDispose)throw new TypeError("Symbol.asyncDispose is not defined.");r=t[Symbol.asyncDispose]}if(r===void 0){if(!Symbol.dispose)throw new TypeError("Symbol.dispose is not defined.");r=t[Symbol.dispose],e&&(s=r)}if(typeof r!="function")throw new TypeError("Object not disposable.");s&&(r=function(){try{s.call(this)}catch(n){return Promise.reject(n)}}),i.stack.push({value:t,dispose:r,async:e})}else e&&i.stack.push({async:!0});return t}function nr(i){function t(n){i.error=i.hasError?new ts(n,i.error,"An error was suppressed during disposal."):n,i.hasError=!0}var e,r=0;function s(){for(;e=i.stack.pop();)try{if(!e.async&&r===1)return r=0,i.stack.push(e),Promise.resolve().then(s);if(e.dispose){var n=e.dispose.call(e.value);if(e.async)return r|=2,Promise.resolve(n).then(s,function(o){return t(o),s()})}else r|=1}catch(o){t(o)}if(r===1)return i.hasError?Promise.reject(i.error):Promise.resolve();if(i.hasError)throw i.error}return s()}function or(i,t){return typeof i=="string"&&/^\.\.?\//.test(i)?i.replace(/\.(tsx)$|((?:\.d)?)((?:\.[^./]+?)?)\.([cm]?)ts$/i,function(e,r,s,n,o){return r?t?".jsx":".js":s&&(!n||!o)?e:s+n+"."+o.toLowerCase()+"js"}):i}var Pt,Z,et,Zr,Ct,ts,es,N=Xr(()=>{h();Pt=function(i,t){return Pt=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,r){e.__proto__=r}||function(e,r){for(var s in r)Object.prototype.hasOwnProperty.call(r,s)&&(e[s]=r[s])},Pt(i,t)};Z=function(){return Z=Object.assign||function(t){for(var e,r=1,s=arguments.length;r<s;r++){e=arguments[r];for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n])}return t},Z.apply(this,arguments)};et=Object.create?(function(i,t,e,r){r===void 0&&(r=e);var s=Object.getOwnPropertyDescriptor(t,e);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[e]}}),Object.defineProperty(i,r,s)}):(function(i,t,e,r){r===void 0&&(r=e),i[r]=t[e]});Zr=Object.create?(function(i,t){Object.defineProperty(i,"default",{enumerable:!0,value:t})}):function(i,t){i.default=t},Ct=function(i){return Ct=Object.getOwnPropertyNames||function(t){var e=[];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[e.length]=r);return e},Ct(i)};ts=typeof SuppressedError=="function"?SuppressedError:function(i,t,e){var r=new Error(e);return r.name="SuppressedError",r.error=i,r.suppressed=t,r};es={__extends:Ee,__assign:Z,__rest:Me,__decorate:$e,__param:qe,__esDecorate:Ve,__runInitializers:Ue,__propKey:De,__setFunctionName:Re,__metadata:Le,__awaiter:Fe,__generator:He,__createBinding:et,__exportStar:Je,__values:tt,__read:Bt,__spread:We,__spreadArrays:Ge,__spreadArray:Ke,__await:U,__asyncGenerator:Ye,__asyncDelegator:ze,__asyncValues:Xe,__makeTemplateObject:Qe,__importStar:Ze,__importDefault:tr,__classPrivateFieldGet:er,__classPrivateFieldSet:rr,__classPrivateFieldIn:sr,__addDisposableResource:ir,__disposeResources:nr,__rewriteRelativeImportExtension:or}});var ar=b(cr=>{"use strict";h();Object.defineProperty(cr,"__esModule",{value:!0})});var hr=b(ur=>{"use strict";h();Object.defineProperty(ur,"__esModule",{value:!0})});var fr=b(_=>{"use strict";h();Object.defineProperty(_,"__esModule",{value:!0});_.ServerClockVector=_.ClockVector=_.LogicalClock=_.interval=_.printTs=_.containsId=_.contains=_.compare=_.equal=_.tick=_.tss=_.ts=_.Timespan=_.Timestamp=void 0;var D=class{constructor(t,e){this.sid=t,this.time=e}};_.Timestamp=D;var W=class{constructor(t,e,r){this.sid=t,this.time=e,this.span=r}};_.Timespan=W;var rs=(i,t)=>new D(i,t);_.ts=rs;var ss=(i,t,e)=>new W(i,t,e);_.tss=ss;var is=(i,t)=>(0,_.ts)(i.sid,i.time+t);_.tick=is;var ns=(i,t)=>i.time===t.time&&i.sid===t.sid;_.equal=ns;var os=(i,t)=>{let e=i.time,r=t.time;if(e>r)return 1;if(e<r)return-1;let s=i.sid,n=t.sid;return s>n?1:s<n?-1:0};_.compare=os;var cs=(i,t,e,r)=>{if(i.sid!==e.sid)return!1;let s=i.time,n=e.time;return!(s>n||s+t<n+r)};_.contains=cs;var as=(i,t,e)=>{if(i.sid!==e.sid)return!1;let r=i.time,s=e.time;return!(r>s||r+t<s+1)};_.containsId=as;var us=i=>{if(i.sid===1)return"."+i.time;let t=""+i.sid;return t.length>4&&(t=".."+t.slice(t.length-4)),t+"."+i.time};_.printTs=us;var hs=(i,t,e)=>new W(i.sid,i.time+t,e);_.interval=hs;var G=class extends D{tick(t){let e=new D(this.sid,this.time);return this.time+=t,e}};_.LogicalClock=G;var Et=class i extends G{constructor(){super(...arguments),this.peers=new Map}observe(t,e){let r=t.time+e-1,s=t.sid;if(s!==this.sid){let n=this.peers.get(t.sid);n?r>n.time&&(n.time=r):this.peers.set(t.sid,(0,_.ts)(s,r))}r>=this.time&&(this.time=r+1)}clone(){return this.fork(this.sid)}fork(t){let e=new i(t,this.time);return t!==this.sid&&e.observe((0,_.tick)(this,-1),1),this.peers.forEach(r=>{e.observe(r,1)}),e}toString(t=""){let e=this.peers.size,r=1,s="";return this.peers.forEach(n=>{s+=`
|
|
4
4
|
${t}${r===e?"\u2514\u2500":"\u251C\u2500"} ${n.sid}.${n.time}`,r++}),`clock ${this.sid}.${this.time}${s}`}};_.ClockVector=Et;var Mt=class i extends G{constructor(){super(...arguments),this.peers=new Map}observe(t,e){if(t.sid>8)throw new Error("INVALID_SERVER_SESSION");if(this.time<t.time)throw new Error("TIME_TRAVEL");let r=t.time+e;r>this.time&&(this.time=r)}clone(){return this.fork()}fork(){return new i(1,this.time)}toString(){return`clock ${this.sid}.${this.time}`}};_.ServerClockVector=Mt});var q=b(rt=>{"use strict";h();Object.defineProperty(rt,"__esModule",{value:!0});var dr=(N(),T(A));dr.__exportStar(hr(),rt);dr.__exportStar(fr(),rt)});var K=b(v=>{"use strict";h();Object.defineProperty(v,"__esModule",{value:!0});v.NopOp=v.DelOp=v.InsArrOp=v.InsBinOp=v.InsStrOp=v.InsVecOp=v.InsObjOp=v.InsValOp=v.NewArrOp=v.NewBinOp=v.NewStrOp=v.NewVecOp=v.NewObjOp=v.NewValOp=v.NewConOp=void 0;var k=q(),$t=class{constructor(t,e){this.id=t,this.val=e}span(){return 1}name(){return"new_con"}toString(t=""){let e=this.val,r=e instanceof k.Timestamp?`{ ${(0,k.printTs)(e)} }`:e instanceof Uint8Array?e.length<13?`Uint8Array { ${(""+e).replaceAll(",",", ")} }`:`Uint8Array(${e.length})`:`{ ${JSON.stringify(e)} }`;return`${this.name()} ${(0,k.printTs)(this.id)} ${r}`}};v.NewConOp=$t;var qt=class{constructor(t){this.id=t}span(){return 1}name(){return"new_val"}toString(){return`${this.name()} ${(0,k.printTs)(this.id)}`}};v.NewValOp=qt;var Vt=class{constructor(t){this.id=t}span(){return 1}name(){return"new_obj"}toString(){return`${this.name()} ${(0,k.printTs)(this.id)}`}};v.NewObjOp=Vt;var Ut=class{constructor(t){this.id=t}span(){return 1}name(){return"new_vec"}toString(){return`${this.name()} ${(0,k.printTs)(this.id)}`}};v.NewVecOp=Ut;var Dt=class{constructor(t){this.id=t}span(){return 1}name(){return"new_str"}toString(){return`${this.name()} ${(0,k.printTs)(this.id)}`}};v.NewStrOp=Dt;var Rt=class{constructor(t){this.id=t}span(){return 1}name(){return"new_bin"}toString(t=""){return`${this.name()} ${(0,k.printTs)(this.id)}`}};v.NewBinOp=Rt;var Lt=class{constructor(t){this.id=t}span(){return 1}name(){return"new_arr"}toString(){return`${this.name()} ${(0,k.printTs)(this.id)}`}};v.NewArrOp=Lt;var Ft=class{constructor(t,e,r){this.id=t,this.obj=e,this.val=r}span(){return 1}name(){return"ins_val"}toString(t=""){return`${this.name()} ${(0,k.printTs)(this.id)}!${this.span()}, obj = ${(0,k.printTs)(this.obj)}, val = ${(0,k.printTs)(this.val)}`}};v.InsValOp=Ft;var Ht=class{constructor(t,e,r){this.id=t,this.obj=e,this.data=r}span(){return 1}name(){return"ins_obj"}toString(t=""){let e=`${this.name()} ${(0,k.printTs)(this.id)}!${this.span()}, obj = ${(0,k.printTs)(this.obj)}`;for(let r=0;r<this.data.length;r++){let s=r===this.data.length-1;e+=`
|
|
5
5
|
${t} ${s?"\u2514\u2500":"\u251C\u2500"} ${JSON.stringify(this.data[r][0])}: ${(0,k.printTs)(this.data[r][1])}`}return e}};v.InsObjOp=Ht;var Jt=class{constructor(t,e,r){this.id=t,this.obj=e,this.data=r}span(){return 1}name(){return"ins_vec"}toString(t=""){let e=`${this.name()} ${(0,k.printTs)(this.id)}!${this.span()}, obj = ${(0,k.printTs)(this.obj)}`;for(let r=0;r<this.data.length;r++){let s=r===this.data.length-1;e+=`
|
|
6
6
|
${t} ${s?"\u2514\u2500":"\u251C\u2500"} ${JSON.stringify(this.data[r][0])}: ${(0,k.printTs)(this.data[r][1])}`}return e}};v.InsVecOp=Jt;var Wt=class{constructor(t,e,r,s){this.id=t,this.obj=e,this.ref=r,this.data=s}span(){return this.data.length}name(){return"ins_str"}toString(){return`${this.name()} ${(0,k.printTs)(this.id)}!${this.span()}, obj = ${(0,k.printTs)(this.obj)} { ${(0,k.printTs)(this.ref)} \u2190 ${JSON.stringify(this.data)} }`}};v.InsStrOp=Wt;var Gt=class{constructor(t,e,r,s){this.id=t,this.obj=e,this.ref=r,this.data=s}span(){return this.data.length}name(){return"ins_bin"}toString(t=""){let e=(0,k.printTs)(this.ref);return`${this.name()} ${(0,k.printTs)(this.id)}!${this.span()}, obj = ${(0,k.printTs)(this.obj)} { ${e} \u2190 ${this.data} }`}};v.InsBinOp=Gt;var Kt=class{constructor(t,e,r,s){this.id=t,this.obj=e,this.ref=r,this.data=s}span(){return this.data.length}name(){return"ins_arr"}toString(){return`${this.name()} ${(0,k.printTs)(this.id)}!${this.span()}, obj = ${(0,k.printTs)(this.obj)} { ${(0,k.printTs)(this.ref)} \u2190 ${this.data.map(k.printTs).join(", ")} }`}};v.InsArrOp=Kt;var Yt=class{constructor(t,e,r){this.id=t,this.obj=e,this.what=r}span(){return 1}name(){return"del"}toString(){let t=this.what.map(e=>(0,k.printTs)(e)+"!"+e.span).join(", ");return`${this.name()} ${(0,k.printTs)(this.id)}, obj = ${(0,k.printTs)(this.obj)} { ${t} }`}};v.DelOp=Yt;var zt=class{constructor(t,e){this.id=t,this.len=e}span(){return this.len}name(){return"nop"}toString(){return`${this.name()} ${(0,k.printTs)(this.id)}!${this.len}`}};v.NopOp=zt});var lr=b(st=>{"use strict";h();Object.defineProperty(st,"__esModule",{value:!0});st.Slice=void 0;var Xt=class{constructor(t,e,r,s){this.uint8=t,this.view=e,this.start=r,this.end=s}subarray(){return this.uint8.subarray(this.start,this.end)}};st.Slice=Xt});var Zt=b(it=>{"use strict";h();Object.defineProperty(it,"__esModule",{value:!0});it.Writer=void 0;var fs=lr(),ds=new Uint8Array([]),ls=new DataView(ds.buffer),xr=typeof Buffer=="function",pr=xr?Buffer.prototype.utf8Write:null,br=xr?Buffer.from:null,wr=typeof TextEncoder<"u"?new TextEncoder:null,Qt=class{constructor(t=64*1024){this.allocSize=t,this.view=ls,this.x0=0,this.x=0,this.uint8=new Uint8Array(t),this.size=t,this.view=new DataView(this.uint8.buffer)}grow(t){let e=this.x0,r=this.x,s=this.uint8,n=new Uint8Array(t),o=new DataView(n.buffer),c=s.subarray(e,r);n.set(c,0),this.x=r-e,this.x0=0,this.uint8=n,this.size=t,this.view=o}ensureCapacity(t){let e=this.size,r=e-this.x;if(r<t){let s=e-this.x0,n=t-r,o=s+n;this.grow(o<=this.allocSize?this.allocSize:o*2)}}move(t){this.ensureCapacity(t),this.x+=t}reset(){this.x0=this.x}newBuffer(t){let e=this.uint8=new Uint8Array(t);this.size=t,this.view=new DataView(e.buffer),this.x=this.x0=0}flush(){let t=this.uint8.subarray(this.x0,this.x);return this.x0=this.x,t}flushSlice(){let t=new fs.Slice(this.uint8,this.view,this.x0,this.x);return this.x0=this.x,t}u8(t){this.ensureCapacity(1),this.uint8[this.x++]=t}u16(t){this.ensureCapacity(2),this.view.setUint16(this.x,t),this.x+=2}u32(t){this.ensureCapacity(4),this.view.setUint32(this.x,t),this.x+=4}i32(t){this.ensureCapacity(4),this.view.setInt32(this.x,t),this.x+=4}u64(t){this.ensureCapacity(8),this.view.setBigUint64(this.x,BigInt(t)),this.x+=8}f64(t){this.ensureCapacity(8),this.view.setFloat64(this.x,t),this.x+=8}u8u16(t,e){this.ensureCapacity(3);let r=this.x;this.uint8[r++]=t,this.uint8[r++]=e>>>8,this.uint8[r++]=e&255,this.x=r}u8u32(t,e){this.ensureCapacity(5);let r=this.x;this.uint8[r++]=t,this.view.setUint32(r,e),this.x=r+4}u8u64(t,e){this.ensureCapacity(9);let r=this.x;this.uint8[r++]=t,this.view.setBigUint64(r,BigInt(e)),this.x=r+8}u8f32(t,e){this.ensureCapacity(5);let r=this.x;this.uint8[r++]=t,this.view.setFloat32(r,e),this.x=r+4}u8f64(t,e){this.ensureCapacity(9);let r=this.x;this.uint8[r++]=t,this.view.setFloat64(r,e),this.x=r+8}buf(t,e){this.ensureCapacity(e);let r=this.x;this.uint8.set(t,r),this.x=r+e}utf8(t){let e=t.length*4;if(e<168)return this.utf8Native(t);if(pr){let r=pr.call(this.uint8,t,this.x,e);return this.x+=r,r}else if(br){let r=this.uint8,s=r.byteOffset+this.x,o=br(r.buffer).subarray(s,s+e).write(t,0,e,"utf8");return this.x+=o,o}else if(e>1024&&wr){let r=wr.encodeInto(t,this.uint8.subarray(this.x,this.x+e)).written;return this.x+=r,r}return this.utf8Native(t)}utf8Native(t){let e=t.length,r=this.uint8,s=this.x,n=0;for(;n<e;){let c=t.charCodeAt(n++);if((c&4294967168)===0){r[s++]=c;continue}else if((c&4294965248)===0)r[s++]=c>>6&31|192;else{if(c>=55296&&c<=56319&&n<e){let u=t.charCodeAt(n);(u&64512)===56320&&(n++,c=((c&1023)<<10)+(u&1023)+65536)}(c&4294901760)===0?(r[s++]=c>>12&15|224,r[s++]=c>>6&63|128):(r[s++]=c>>18&7|240,r[s++]=c>>12&63|128,r[s++]=c>>6&63|128)}r[s++]=c&63|128}let o=s-this.x;return this.x=s,o}ascii(t){let e=t.length;this.ensureCapacity(e);let r=this.uint8,s=this.x,n=0;for(;n<e;)r[s++]=t.charCodeAt(n++);this.x=s}};it.Writer=Qt});var yr=b(te=>{"use strict";h();Object.defineProperty(te,"__esModule",{value:!0});var ps=(N(),T(A));ps.__exportStar(Zt(),te)});var re=b(nt=>{"use strict";h();Object.defineProperty(nt,"__esModule",{value:!0});nt.CrdtWriter=void 0;var bs=yr(),ee=class extends bs.Writer{id(t,e){t<=7&&e<=15?this.u8(t<<4|e):(this.b1vu56(1,t),this.vu57(e))}vu57(t){if(t<=127)this.u8(t);else if(t<=16383){this.ensureCapacity(2);let e=this.uint8;e[this.x++]=128|t&127,e[this.x++]=t>>>7}else if(t<=2097151){this.ensureCapacity(3);let e=this.uint8;e[this.x++]=128|t&127,e[this.x++]=128|t>>>7&127,e[this.x++]=t>>>14}else if(t<=268435455){this.ensureCapacity(4);let e=this.uint8;e[this.x++]=128|t&127,e[this.x++]=128|t>>>7&127,e[this.x++]=128|t>>>14&127,e[this.x++]=t>>>21}else{let e=t|0;e<0&&(e+=4294967296);let r=(t-e)/4294967296;if(t<=34359738367){this.ensureCapacity(5);let s=this.uint8;s[this.x++]=128|t&127,s[this.x++]=128|t>>>7&127,s[this.x++]=128|t>>>14&127,s[this.x++]=128|t>>>21&127,s[this.x++]=r<<4|t>>>28}else if(t<=4398046511103){this.ensureCapacity(6);let s=this.uint8;s[this.x++]=128|t&127,s[this.x++]=128|t>>>7&127,s[this.x++]=128|t>>>14&127,s[this.x++]=128|t>>>21&127,s[this.x++]=128|(r&7)<<4|t>>>28,s[this.x++]=r>>>3}else if(t<=562949953421311){this.ensureCapacity(7);let s=this.uint8;s[this.x++]=128|t&127,s[this.x++]=128|t>>>7&127,s[this.x++]=128|t>>>14&127,s[this.x++]=128|t>>>21&127,s[this.x++]=128|(r&7)<<4|t>>>28,s[this.x++]=128|(r&1016)>>>3,s[this.x++]=r>>>10}else{this.ensureCapacity(8);let s=this.uint8;s[this.x++]=128|t&127,s[this.x++]=128|t>>>7&127,s[this.x++]=128|t>>>14&127,s[this.x++]=128|t>>>21&127,s[this.x++]=128|(r&7)<<4|t>>>28,s[this.x++]=128|(r&1016)>>>3,s[this.x++]=128|(r&130048)>>>10,s[this.x++]=r>>>17}}}b1vu56(t,e){if(e<=63)this.u8(t<<7|e);else{let r=t<<7|64;if(e<=8191){this.ensureCapacity(2);let s=this.uint8;s[this.x++]=r|e&63,s[this.x++]=e>>>6}else if(e<=1048575){this.ensureCapacity(3);let s=this.uint8;s[this.x++]=r|e&63,s[this.x++]=128|e>>>6&127,s[this.x++]=e>>>13}else if(e<=134217727){this.ensureCapacity(4);let s=this.uint8;s[this.x++]=r|e&63,s[this.x++]=128|e>>>6&127,s[this.x++]=128|e>>>13&127,s[this.x++]=e>>>20}else{let s=e|0;s<0&&(s+=4294967296);let n=(e-s)/4294967296;if(e<=17179869183){this.ensureCapacity(5);let o=this.uint8;o[this.x++]=r|e&63,o[this.x++]=128|e>>>6&127,o[this.x++]=128|e>>>13&127,o[this.x++]=128|e>>>20&127,o[this.x++]=n<<5|e>>>27}else if(e<=2199023255551){this.ensureCapacity(6);let o=this.uint8;o[this.x++]=r|e&63,o[this.x++]=128|e>>>6&127,o[this.x++]=128|e>>>13&127,o[this.x++]=128|e>>>20&127,o[this.x++]=128|(n&3)<<5|e>>>27,o[this.x++]=n>>>2}else if(e<=0xffffffffffff){this.ensureCapacity(7);let o=this.uint8;o[this.x++]=r|e&63,o[this.x++]=128|e>>>6&127,o[this.x++]=128|e>>>13&127,o[this.x++]=128|e>>>20&127,o[this.x++]=128|(n&3)<<5|e>>>27,o[this.x++]=128|(n&508)>>>2,o[this.x++]=n>>>9}else{this.ensureCapacity(8);let o=this.uint8;o[this.x++]=r|e&63,o[this.x++]=128|e>>>6&127,o[this.x++]=128|e>>>13&127,o[this.x++]=128|e>>>20&127,o[this.x++]=128|(n&3)<<5|e>>>27,o[this.x++]=128|(n&508)>>>2,o[this.x++]=128|(n&65024)>>>9,o[this.x++]=n>>>16}}}}};nt.CrdtWriter=ee});var vr=b(ot=>{"use strict";h();Object.defineProperty(ot,"__esModule",{value:!0});ot.isFloat32=void 0;var _r=new DataView(new ArrayBuffer(4)),ws=i=>(_r.setFloat32(0,i),i===_r.getFloat32(0));ot.isFloat32=ws});var ie=b(ct=>{"use strict";h();Object.defineProperty(ct,"__esModule",{value:!0});ct.JsonPackExtension=void 0;var se=class{constructor(t,e){this.tag=t,this.val=e}};ct.JsonPackExtension=se});var kr=b(at=>{"use strict";h();Object.defineProperty(at,"__esModule",{value:!0});at.CborEncoderFast=void 0;var xs=Zt(),ys=Number.isSafeInteger,ne=class{constructor(t=new xs.Writer){this.writer=t}encode(t){return this.writeAny(t),this.writer.flush()}encodeToSlice(t){return this.writeAny(t),this.writer.flushSlice()}writeAny(t){switch(typeof t){case"number":return this.writeNumber(t);case"string":return this.writeStr(t);case"boolean":return this.writer.u8(244+ +t);case"object":{if(!t)return this.writer.u8(246);switch(t.constructor){case Array:return this.writeArr(t);default:return this.writeObj(t)}}}}writeCbor(){this.writer.u8u16(217,55799)}writeEnd(){this.writer.u8(255)}writeNull(){this.writer.u8(246)}writeBoolean(t){t?this.writer.u8(245):this.writer.u8(244)}writeNumber(t){ys(t)?this.writeInteger(t):typeof t=="bigint"?this.writeBigInt(t):this.writeFloat(t)}writeBigInt(t){t>=0?this.writeBigUint(t):this.writeBigSint(t)}writeBigUint(t){if(t<=Number.MAX_SAFE_INTEGER)return this.writeUInteger(Number(t));this.writer.u8u64(27,t)}writeBigSint(t){if(t>=Number.MIN_SAFE_INTEGER)return this.encodeNint(Number(t));let e=-BigInt(1)-t;this.writer.u8u64(59,e)}writeInteger(t){t>=0?this.writeUInteger(t):this.encodeNint(t)}writeUInteger(t){let e=this.writer;e.ensureCapacity(9);let r=e.uint8,s=e.x;t<=23?r[s++]=0+t:t<=255?(r[s++]=24,r[s++]=t):t<=65535?(r[s++]=25,e.view.setUint16(s,t),s+=2):t<=4294967295?(r[s++]=26,e.view.setUint32(s,t),s+=4):(r[s++]=27,e.view.setBigUint64(s,BigInt(t)),s+=8),e.x=s}encodeNumber(t){this.writeNumber(t)}encodeInteger(t){this.writeInteger(t)}encodeUint(t){this.writeUInteger(t)}encodeNint(t){let e=-1-t,r=this.writer;r.ensureCapacity(9);let s=r.uint8,n=r.x;e<24?s[n++]=32+e:e<=255?(s[n++]=56,s[n++]=e):e<=65535?(s[n++]=57,r.view.setUint16(n,e),n+=2):e<=4294967295?(s[n++]=58,r.view.setUint32(n,e),n+=4):(s[n++]=59,r.view.setBigUint64(n,BigInt(e)),n+=8),r.x=n}writeFloat(t){this.writer.u8f64(251,t)}writeBin(t){let e=t.length;this.writeBinHdr(e),this.writer.buf(t,e)}writeBinHdr(t){let e=this.writer;t<=23?e.u8(64+t):t<=255?e.u16(22528+t):t<=65535?e.u8u16(89,t):t<=4294967295?e.u8u32(90,t):e.u8u64(91,t)}writeStr(t){let e=this.writer,s=t.length*4;e.ensureCapacity(5+s);let n=e.uint8,o=e.x;s<=23?e.x++:s<=255?(n[e.x++]=120,o=e.x,e.x++):s<=65535?(n[e.x++]=121,o=e.x,e.x+=2):(n[e.x++]=122,o=e.x,e.x+=4);let c=e.utf8(t);s<=23?n[o]=96+c:s<=255?n[o]=c:s<=65535?e.view.setUint16(o,c):e.view.setUint32(o,c)}writeStrHdr(t){let e=this.writer;t<=23?e.u8(96+t):t<=255?e.u16(30720+t):t<=65535?e.u8u16(121,t):e.u8u32(122,t)}writeAsciiStr(t){this.writeStrHdr(t.length),this.writer.ascii(t)}writeArr(t){let e=t.length;this.writeArrHdr(e);for(let r=0;r<e;r++)this.writeAny(t[r])}writeArrHdr(t){let e=this.writer;t<=23?e.u8(128+t):t<=255?e.u16(38912+t):t<=65535?e.u8u16(153,t):t<=4294967295?e.u8u32(154,t):e.u8u64(155,t)}writeObj(t){let e=Object.keys(t),r=e.length;this.writeObjHdr(r);for(let s=0;s<r;s++){let n=e[s];this.writeStr(n),this.writeAny(t[n])}}writeObjHdr(t){let e=this.writer;t<=23?e.u8(160+t):t<=255?e.u16(47104+t):t<=65535?e.u8u16(185,t):t<=4294967295?e.u8u32(186,t):e.u8u64(187,t)}writeMapHdr(t){this.writeObjHdr(t)}writeStartMap(){this.writer.u8(191)}writeTag(t,e){this.writeTagHdr(t),this.writeAny(e)}writeTagHdr(t){let e=this.writer;t<=23?e.u8(192+t):t<=255?e.u16(55296+t):t<=65535?e.u8u16(217,t):t<=4294967295?e.u8u32(218,t):e.u8u64(219,t)}writeTkn(t){let e=this.writer;t<=23?e.u8(224+t):t<=255&&e.u16(63488+t)}writeStartStr(){this.writer.u8(127)}writeStrChunk(t){throw new Error("Not implemented")}writeEndStr(){throw new Error("Not implemented")}writeStartBin(){this.writer.u8(95)}writeBinChunk(t){throw new Error("Not implemented")}writeEndBin(){throw new Error("Not implemented")}writeStartArr(){this.writer.u8(159)}writeArrChunk(t){throw new Error("Not implemented")}writeEndArr(){this.writer.u8(255)}writeStartObj(){this.writer.u8(191)}writeObjChunk(t,e){throw new Error("Not implemented")}writeEndObj(){this.writer.u8(255)}};at.CborEncoderFast=ne});var ht=b(ut=>{"use strict";h();Object.defineProperty(ut,"__esModule",{value:!0});ut.JsonPackValue=void 0;var oe=class{constructor(t){this.val=t}};ut.JsonPackValue=oe});var Or=b(ft=>{"use strict";h();Object.defineProperty(ft,"__esModule",{value:!0});ft.CborEncoder=void 0;var _s=vr(),vs=ie(),ks=kr(),Os=ht(),ce=class extends ks.CborEncoderFast{writeUnknown(t){this.writeNull()}writeAny(t){switch(typeof t){case"number":return this.writeNumber(t);case"string":return this.writeStr(t);case"boolean":return this.writer.u8(244+ +t);case"object":{if(!t)return this.writer.u8(246);switch(t.constructor){case Object:return this.writeObj(t);case Array:return this.writeArr(t);case Uint8Array:return this.writeBin(t);case Map:return this.writeMap(t);case vs.JsonPackExtension:return this.writeTag(t.tag,t.val);case Os.JsonPackValue:let r=t.val;return this.writer.buf(r,r.length);default:return t instanceof Uint8Array?this.writeBin(t):Array.isArray(t)?this.writeArr(t):t instanceof Map?this.writeMap(t):this.writeUnknown(t)}}case"undefined":return this.writeUndef();case"bigint":return this.writeBigInt(t);default:return this.writeUnknown(t)}}writeFloat(t){(0,_s.isFloat32)(t)?this.writer.u8f32(250,t):this.writer.u8f64(251,t)}writeMap(t){this.writeMapHdr(t.size),t.forEach((e,r)=>{this.writeAny(r),this.writeAny(e)})}writeUndef(){this.writer.u8(247)}};ft.CborEncoder=ce});var ue=b(dt=>{"use strict";h();Object.defineProperty(dt,"__esModule",{value:!0});dt.Encoder=void 0;var js=(N(),T(A)),I=js.__importStar(K()),gs=re(),ms=q(),Ss=Or(),ae=class extends Ss.CborEncoder{constructor(t=new gs.CrdtWriter){super(t),this.writer=t,this.patchSid=0}encode(t){this.writer.reset();let e=t.getId(),r=this.patchSid=e.sid,s=this.writer;s.vu57(r),s.vu57(e.time);let n=t.meta;return n===void 0?this.writeUndef():this.writeArr([n]),this.encodeOperations(t),s.flush()}encodeOperations(t){let e=t.ops,r=e.length;this.writer.vu57(r);for(let s=0;s<r;s++)this.encodeOperation(e[s])}encodeId(t){let e=t.sid,r=t.time,s=this.writer;e===this.patchSid?s.b1vu56(0,r):(s.b1vu56(1,r),s.vu57(e))}encodeTss(t){this.encodeId(t),this.writer.vu57(t.span)}writeInsStr(t,e,r,s){let n=this.writer;return t<=7?n.u8(96+t):(n.u8(96),n.vu57(t)),this.encodeId(e),this.encodeId(r),n.utf8(s)}encodeOperation(t){let e=this.writer;switch(t.constructor){case I.NewConOp:{let n=t.val;n instanceof ms.Timestamp?(e.u8(1),this.encodeId(n)):(e.u8(0),this.writeAny(n));break}case I.NewValOp:{e.u8(8);break}case I.NewObjOp:{e.u8(16);break}case I.NewVecOp:{e.u8(24);break}case I.NewStrOp:{e.u8(32);break}case I.NewBinOp:{e.u8(40);break}case I.NewArrOp:{e.u8(48);break}case I.InsValOp:{let s=t;e.u8(72),this.encodeId(s.obj),this.encodeId(s.val);break}case I.InsObjOp:{let s=t,n=s.data,o=n.length;o<=7?e.u8(80+o):(e.u8(80),e.vu57(o)),this.encodeId(s.obj);for(let c=0;c<o;c++){let u=n[c];this.writeStr(u[0]),this.encodeId(u[1])}break}case I.InsVecOp:{let s=t,n=s.data,o=n.length;o<=7?e.u8(88+o):(e.u8(88),e.vu57(o)),this.encodeId(s.obj);for(let c=0;c<o;c++){let u=n[c];e.u8(u[0]),this.encodeId(u[1])}break}case I.InsStrOp:{let s=t,n=s.obj,o=s.ref,c=s.data,u=c.length;e.ensureCapacity(24+u*4);let a=e.x,d=this.writeInsStr(u,n,o,c);u!==d&&(e.x=a,this.writeInsStr(d,n,o,c));break}case I.InsBinOp:{let s=t,n=s.data,o=n.length;o<=7?e.u8(104+o):(e.u8(104),e.vu57(o)),this.encodeId(s.obj),this.encodeId(s.ref),e.buf(n,o);break}case I.InsArrOp:{let s=t,n=s.data,o=n.length;o<=7?e.u8(112+o):(e.u8(112),e.vu57(o)),this.encodeId(s.obj),this.encodeId(s.ref);for(let c=0;c<o;c++)this.encodeId(n[c]);break}case I.DelOp:{let s=t,n=s.what,o=n.length;o<=7?e.u8(128+o):(e.u8(128),e.vu57(o)),this.encodeId(s.obj);for(let c=0;c<o;c++)this.encodeTss(n[c]);break}case I.NopOp:{let n=t.len;n<=7?e.u8(136+n):(e.u8(136),e.vu57(n));break}default:throw new Error("UNKNOWN_OP")}}};dt.Encoder=ae});var jr=b(R=>{"use strict";h();Object.defineProperty(R,"__esModule",{value:!0});R.decodeAsciiMax15=R.decodeAscii=void 0;var S=String.fromCharCode,Is=(i,t,e)=>{let r=[];for(let s=0;s<e;s++){let n=i[t++];if(n&128)return;r.push(n)}return S.apply(String,r)};R.decodeAscii=Is;var As=(i,t,e)=>{if(e<4)if(e<2){if(e===0)return"";{let r=i[t++];if((r&128)>1){t-=1;return}return S(r)}}else{let r=i[t++],s=i[t++];if((r&128)>0||(s&128)>0){t-=2;return}if(e<3)return S(r,s);let n=i[t++];if((n&128)>0){t-=3;return}return S(r,s,n)}else{let r=i[t++],s=i[t++],n=i[t++],o=i[t++];if((r&128)>0||(s&128)>0||(n&128)>0||(o&128)>0){t-=4;return}if(e<6){if(e===4)return S(r,s,n,o);{let c=i[t++];if((c&128)>0){t-=5;return}return S(r,s,n,o,c)}}else if(e<8){let c=i[t++],u=i[t++];if((c&128)>0||(u&128)>0){t-=6;return}if(e<7)return S(r,s,n,o,c,u);let a=i[t++];if((a&128)>0){t-=7;return}return S(r,s,n,o,c,u,a)}else{let c=i[t++],u=i[t++],a=i[t++],d=i[t++];if((c&128)>0||(u&128)>0||(a&128)>0||(d&128)>0){t-=8;return}if(e<10){if(e===8)return S(r,s,n,o,c,u,a,d);{let p=i[t++];if((p&128)>0){t-=9;return}return S(r,s,n,o,c,u,a,d,p)}}else if(e<12){let p=i[t++],l=i[t++];if((p&128)>0||(l&128)>0){t-=10;return}if(e<11)return S(r,s,n,o,c,u,a,d,p,l);let f=i[t++];if((f&128)>0){t-=11;return}return S(r,s,n,o,c,u,a,d,p,l,f)}else{let p=i[t++],l=i[t++],f=i[t++],x=i[t++];if((p&128)>0||(l&128)>0||(f&128)>0||(x&128)>0){t-=12;return}if(e<14){if(e===12)return S(r,s,n,o,c,u,a,d,p,l,f,x);{let y=i[t++];if((y&128)>0){t-=13;return}return S(r,s,n,o,c,u,a,d,p,l,f,x,y)}}else{let y=i[t++],j=i[t++];if((y&128)>0||(j&128)>0){t-=14;return}if(e<15)return S(r,s,n,o,c,u,a,d,p,l,f,x,y,j);let g=i[t++];if((g&128)>0){t-=15;return}return S(r,s,n,o,c,u,a,d,p,l,f,x,y,j,g)}}}}};R.decodeAsciiMax15=As});var gr=b(he=>{"use strict";h();Object.defineProperty(he,"__esModule",{value:!0});var Ns=String.fromCharCode;he.default=(i,t,e)=>{let r=t,s=r+e,n=[];for(;r<s;){let o=i[r++];if((o&128)!==0){let c=i[r++]&63;if((o&224)===192)o=(o&31)<<6|c;else{let u=i[r++]&63;if((o&240)===224)o=(o&31)<<12|c<<6|u;else if((o&248)===240){let a=i[r++]&63,d=(o&7)<<18|c<<12|u<<6|a;if(d>65535){d-=65536;let p=d>>>10&1023|55296;o=56320|d&1023,n.push(p)}else o=d}}}n.push(o)}return Ns.apply(String,n)}});var Nr=b(de=>{"use strict";h();Object.defineProperty(de,"__esModule",{value:!0});var Ts=(N(),T(A)),Ir=jr(),fe=Ts.__importDefault(gr()),Ar=typeof Buffer<"u",mr=Ar?Buffer.prototype.utf8Slice:null,Sr=Ar?Buffer.from:null,Ps=(i,t,e)=>(0,Ir.decodeAsciiMax15)(i,t,e)??(0,fe.default)(i,t,e),Cs=(i,t,e)=>(0,Ir.decodeAscii)(i,t,e)??(0,fe.default)(i,t,e),Bs=mr?(i,t,e)=>mr.call(i,t,t+e):Sr?(i,t,e)=>Sr(i).subarray(t,t+e).toString("utf8"):fe.default,Es=(i,t,e)=>e<16?Ps(i,t,e):e<32?Cs(i,t,e):Bs(i,t,e);de.default=Es});var Tr=b(lt=>{"use strict";h();Object.defineProperty(lt,"__esModule",{value:!0});lt.decodeUtf8=void 0;var Ms=(N(),T(A)),$s=Ms.__importDefault(Nr());lt.decodeUtf8=$s.default});var pe=b(pt=>{"use strict";h();Object.defineProperty(pt,"__esModule",{value:!0});pt.Reader=void 0;var qs=Tr(),le=class i{constructor(t=new Uint8Array([]),e=new DataView(t.buffer,t.byteOffset,t.length),r=0,s=t.length){this.uint8=t,this.view=e,this.x=r,this.end=s}reset(t){this.x=0,this.uint8=t,this.view=new DataView(t.buffer,t.byteOffset,t.length)}size(){return this.end-this.x}peek(){return this.view.getUint8(this.x)}peak(){return this.peek()}skip(t){this.x+=t}buf(t=this.size()){let e=this.x,r=e+t,s=this.uint8.subarray(e,r);return this.x=r,s}subarray(t=0,e){let r=this.x,s=r+t,n=typeof e=="number"?r+e:this.end;return this.uint8.subarray(s,n)}slice(t=0,e){let r=this.x,s=r+t,n=typeof e=="number"?r+e:this.end;return new i(this.uint8,this.view,s,n)}cut(t=this.size()){let e=this.slice(0,t);return this.skip(t),e}u8(){return this.uint8[this.x++]}i8(){return this.view.getInt8(this.x++)}u16(){let t=this.x,e=(this.uint8[t++]<<8)+this.uint8[t++];return this.x=t,e}i16(){let t=this.view.getInt16(this.x);return this.x+=2,t}u32(){let t=this.view.getUint32(this.x);return this.x+=4,t}i32(){let t=this.view.getInt32(this.x);return this.x+=4,t}u64(){let t=this.view.getBigUint64(this.x);return this.x+=8,t}i64(){let t=this.view.getBigInt64(this.x);return this.x+=8,t}f32(){let t=this.x;return this.x+=4,this.view.getFloat32(t)}f64(){let t=this.x;return this.x+=8,this.view.getFloat64(t)}utf8(t){let e=this.x;return this.x+=t,(0,qs.decodeUtf8)(this.uint8,e,t)}ascii(t){let e=this.uint8,r="",s=this.x+t;for(let n=this.x;n<s;n++)r+=String.fromCharCode(e[n]);return this.x=s,r}};pt.Reader=le});var Pr=b(be=>{"use strict";h();Object.defineProperty(be,"__esModule",{value:!0});var Vs=(N(),T(A));Vs.__exportStar(pe(),be)});var Cr=b(bt=>{"use strict";h();Object.defineProperty(bt,"__esModule",{value:!0});bt.CrdtReader=void 0;var Us=Pr(),we=class extends Us.Reader{id(){let t=this.u8();return t<=127?[t>>>4,t&15]:(this.x--,[this.b1vu56()[1],this.vu57()])}idSkip(){this.u8()<=127||(this.x--,this.b1vu56(),this.vu57Skip())}vu57(){let t=this.u8();if(t<=127)return t;let e=this.u8();if(e<=127)return e<<7|t&127;let r=this.u8();if(r<=127)return r<<14|(e&127)<<7|t&127;let s=this.u8();if(s<=127)return s<<21|(r&127)<<14|(e&127)<<7|t&127;let n=this.u8();if(n<=127)return n*268435456+((s&127)<<21|(r&127)<<14|(e&127)<<7|t&127);let o=this.u8();if(o<=127)return o*34359738368+((n&127)*268435456+((s&127)<<21|(r&127)<<14|(e&127)<<7|t&127));let c=this.u8();return c<=127?c*4398046511104+((o&127)*34359738368+((n&127)*268435456+((s&127)<<21|(r&127)<<14|(e&127)<<7|t&127))):this.u8()*562949953421312+((c&127)*4398046511104+((o&127)*34359738368+((n&127)*268435456+((s&127)<<21|(r&127)<<14|(e&127)<<7|t&127))))}vu57Skip(){this.u8()<=127||this.u8()<=127||this.u8()<=127||this.u8()<=127||this.u8()<=127||this.u8()<=127||this.u8()<=127||this.x++}b1vu56(){let t=this.u8(),e=t&128?1:0,r=127&t;if(r<=63)return[e,r];let s=this.u8();if(s<=127)return[e,s<<6|r&63];let n=this.u8();if(n<=127)return[e,n<<13|(s&127)<<6|r&63];let o=this.u8();if(o<=127)return[e,o<<20|(n&127)<<13|(s&127)<<6|r&63];let c=this.u8();if(c<=127)return[e,c*134217728+((o&127)<<20|(n&127)<<13|(s&127)<<6|r&63)];let u=this.u8();if(u<=127)return[e,u*17179869184+((c&127)*134217728+((o&127)<<20|(n&127)<<13|(s&127)<<6|r&63))];let a=this.u8();if(a<=127)return[e,a*2199023255552+((u&127)*17179869184+((c&127)*134217728+((o&127)<<20|(n&127)<<13|(s&127)<<6|r&63)))];let d=this.u8();return[e,d*281474976710656+((a&127)*2199023255552+((u&127)*17179869184+((c&127)*134217728+((o&127)<<20|(n&127)<<13|(s&127)<<6|r&63))))]}};bt.CrdtReader=we});var Br=b(wt=>{"use strict";h();Object.defineProperty(wt,"__esModule",{value:!0});wt.isUint8Array=void 0;wt.isUint8Array=typeof Buffer=="function"?i=>i instanceof Uint8Array||Buffer.isBuffer(i):i=>i instanceof Uint8Array});var Er=b(xe=>{"use strict";h();Object.defineProperty(xe,"__esModule",{value:!0});var Ds=(N(),T(A));Ds.__exportStar(Br(),xe)});var Mr=b(xt=>{"use strict";h();Object.defineProperty(xt,"__esModule",{value:!0});xt.ORIGIN=void 0;var Rs=q();xt.ORIGIN=(0,Rs.ts)(0,0)});var ye=b(L=>{"use strict";h();Object.defineProperty(L,"__esModule",{value:!0});L.vec=L.VectorDelayedValue=void 0;var yt=class{constructor(t){this.slots=t}};L.VectorDelayedValue=yt;var Ls=(...i)=>new yt(i);L.vec=Ls});var _e=b(F=>{"use strict";h();Object.defineProperty(F,"__esModule",{value:!0});F.konst=F.Konst=void 0;var _t=class{constructor(t){this.val=t}};F.Konst=_t;var Fs=i=>new _t(i);F.konst=Fs});var kt=b(H=>{"use strict";h();Object.defineProperty(H,"__esModule",{value:!0});H.delayed=H.NodeBuilder=void 0;var vt=class{constructor(t){this.build=t}};H.NodeBuilder=vt;var Hs=i=>new vt(i);H.delayed=Hs});var ke=b(Ot=>{"use strict";h();Object.defineProperty(Ot,"__esModule",{value:!0});Ot.PatchBuilder=void 0;var m=K(),Y=q(),Js=Er(),$r=Oe(),Ws=Mr(),Gs=ye(),Ks=_e(),Ys=kt(),qr=i=>{switch(typeof i){case"number":case"boolean":return!0;default:return i===null}},ve=class{constructor(t){this.clock=t,this.patch=new $r.Patch}nextTime(){return this.patch.nextTime()||this.clock.time}flush(){let t=this.patch;return this.patch=new $r.Patch,t}obj(){this.pad();let t=this.clock.tick(1);return this.patch.ops.push(new m.NewObjOp(t)),t}arr(){this.pad();let t=this.clock.tick(1);return this.patch.ops.push(new m.NewArrOp(t)),t}vec(){this.pad();let t=this.clock.tick(1);return this.patch.ops.push(new m.NewVecOp(t)),t}str(){this.pad();let t=this.clock.tick(1);return this.patch.ops.push(new m.NewStrOp(t)),t}bin(){this.pad();let t=this.clock.tick(1);return this.patch.ops.push(new m.NewBinOp(t)),t}const(t){this.pad();let e=this.clock.tick(1);return this.patch.ops.push(new m.NewConOp(e,t)),e}val(){this.pad();let t=this.clock.tick(1);return this.patch.ops.push(new m.NewValOp(t)),t}root(t){this.pad();let e=this.clock.tick(1);return this.patch.ops.push(new m.InsValOp(e,Ws.ORIGIN,t)),e}insObj(t,e){if(this.pad(),!e.length)throw new Error("EMPTY_TUPLES");let r=this.clock.tick(1),s=new m.InsObjOp(r,t,e),n=s.span();return n>1&&this.clock.tick(n-1),this.patch.ops.push(s),r}insVec(t,e){if(this.pad(),!e.length)throw new Error("EMPTY_TUPLES");let r=this.clock.tick(1),s=new m.InsVecOp(r,t,e),n=s.span();return n>1&&this.clock.tick(n-1),this.patch.ops.push(s),r}setVal(t,e){this.pad();let r=this.clock.tick(1),s=new m.InsValOp(r,t,e);return this.patch.ops.push(s),r}insStr(t,e,r){if(this.pad(),!r.length)throw new Error("EMPTY_STRING");let s=this.clock.tick(1),n=new m.InsStrOp(s,t,e,r),o=n.span();return o>1&&this.clock.tick(o-1),this.patch.ops.push(n),s}insBin(t,e,r){if(this.pad(),!r.length)throw new Error("EMPTY_BINARY");let s=this.clock.tick(1),n=new m.InsBinOp(s,t,e,r),o=n.span();return o>1&&this.clock.tick(o-1),this.patch.ops.push(n),s}insArr(t,e,r){this.pad();let s=this.clock.tick(1),n=new m.InsArrOp(s,t,e,r),o=n.span();return o>1&&this.clock.tick(o-1),this.patch.ops.push(n),s}del(t,e){this.pad();let r=this.clock.tick(1);return this.patch.ops.push(new m.DelOp(r,t,e)),r}nop(t){this.pad();let e=this.clock.tick(t);return this.patch.ops.push(new m.NopOp(e,t)),e}jsonObj(t){let e=this.obj(),r=Object.keys(t);if(r.length){let s=[];for(let n of r){let o=t[n],c=o instanceof Y.Timestamp?o:qr(o)?this.const(o):this.json(o);s.push([n,c])}this.insObj(e,s)}return e}jsonArr(t){let e=this.arr();if(t.length){let r=[];for(let s of t)r.push(this.json(s));this.insArr(e,e,r)}return e}jsonStr(t){let e=this.str();return t&&this.insStr(e,e,t),e}jsonBin(t){let e=this.bin();return t.length&&this.insBin(e,e,t),e}jsonVal(t){let e=this.val(),r=this.const(t);return this.setVal(e,r),e}jsonVec(t){let e=this.vec(),r=t.length;if(r){let s=[];for(let n=0;n<r;n++)s.push([n,this.constOrJson(t[n])]);this.insVec(e,s)}return e}json(t){if(t instanceof Y.Timestamp)return t;if(t===void 0)return this.const(t);if(t instanceof Array)return this.jsonArr(t);if((0,Js.isUint8Array)(t))return this.jsonBin(t);if(t instanceof Gs.VectorDelayedValue)return this.jsonVec(t.slots);if(t instanceof Ks.Konst)return this.const(t.val);if(t instanceof Ys.NodeBuilder)return t.build(this);switch(typeof t){case"object":return t===null?this.jsonVal(t):this.jsonObj(t);case"string":return this.jsonStr(t);case"number":case"boolean":return this.jsonVal(t)}throw new Error("INVALID_JSON")}constOrJson(t){return t instanceof Y.Timestamp?t:qr(t)?this.const(t):this.json(t)}maybeConst(t){return t instanceof Y.Timestamp?t:this.const(t)}pad(){let t=this.patch.nextTime();if(!t)return;let e=this.clock.time-t;if(e>0){let r=(0,Y.ts)(this.clock.sid,t),s=new m.NopOp(r,e);this.patch.ops.push(s)}}};Ot.PatchBuilder=ve});var Vr=b(jt=>{"use strict";h();Object.defineProperty(jt,"__esModule",{value:!0});jt.decodeF16=void 0;var zs=Math.pow,Xs=i=>{let t=(i&31744)>>10,e=i&1023;return(i>>15?-1:1)*(t?t===31?e?NaN:1/0:zs(2,t-15)*(1+e/1024):6103515625e-14*(e/1024))};jt.decodeF16=Xs});var Ur=b(je=>{"use strict";h();Object.defineProperty(je,"__esModule",{value:!0});var J=String.fromCharCode;je.default=(i,t,e)=>{let r=t,s=r+e,n="";for(;r<s;){let o=i[r++];if((o&128)===0){n+=J(o);continue}let c=i[r++]&63;if((o&224)===192){n+=J((o&31)<<6|c);continue}let u=i[r++]&63;if((o&240)===224){n+=J((o&31)<<12|c<<6|u);continue}if((o&248)===240){let a=i[r++]&63,d=(o&7)<<18|c<<12|u<<6|a;if(d>65535){d-=65536;let p=d>>>10&1023|55296;d=56320|d&1023,n+=J(p,d)}else n+=J(d)}else n+=J(o)}return n}});var Dr=b(gt=>{"use strict";h();Object.defineProperty(gt,"__esModule",{value:!0});gt.CachedUtf8Decoder=void 0;var Qs=(N(),T(A)),Zs=Qs.__importDefault(Ur()),V=1+Math.round(Math.random()*((-1>>>0)-1));function ti(i,t){return V^=V<<13,V^=V>>>17,V^=V<<5,(V>>>0)%(t-i+1)+i}var ge=class{constructor(t,e){this.bytes=t,this.value=e}},me=class{constructor(){this.caches=[];for(let t=0;t<31;t++)this.caches.push([])}get(t,e,r){let s=this.caches[r-1],n=s.length;t:for(let o=0;o<n;o++){let c=s[o],u=c.bytes;for(let a=0;a<r;a++)if(u[a]!==t[e+a])continue t;return c.value}return null}store(t,e){let r=this.caches[t.length-1],s=new ge(t,e);r.length>=16?r[ti(0,15)]=s:r.push(s)}decode(t,e,r){if(!r)return"";let s=this.get(t,e,r);if(s!==null)return s;let n=(0,Zs.default)(t,e,r),o=Uint8Array.prototype.slice.call(t,e,e+r);return this.store(o,n),n}};gt.CachedUtf8Decoder=me});var Rr=b(Se=>{"use strict";h();Object.defineProperty(Se,"__esModule",{value:!0});var ei=Dr();Se.default=new ei.CachedUtf8Decoder});var Fr=b(mt=>{"use strict";h();Object.defineProperty(mt,"__esModule",{value:!0});mt.CborDecoderBase=void 0;var ri=(N(),T(A)),si=Vr(),ii=ie(),Lr=ht(),ni=pe(),oi=ri.__importDefault(Rr()),Ie=class{constructor(t=new ni.Reader,e=oi.default){this.reader=t,this.keyDecoder=e}read(t){return this.reader.reset(t),this.readAny()}decode(t){return this.reader.reset(t),this.readAny()}val(){return this.readAny()}readAny(){let e=this.reader.u8(),r=e>>5,s=e&31;return r<4?r<2?r===0?this.readUint(s):this.readNint(s):r===2?this.readBin(s):this.readStr(s):r<6?r===4?this.readArr(s):this.readObj(s):r===6?this.readTag(s):this.readTkn(s)}readAnyRaw(t){let e=t>>5,r=t&31;return e<4?e<2?e===0?this.readUint(r):this.readNint(r):e===2?this.readBin(r):this.readStr(r):e<6?e===4?this.readArr(r):this.readObj(r):e===6?this.readTag(r):this.readTkn(r)}readMinorLen(t){if(t<24)return t;switch(t){case 24:return this.reader.u8();case 25:return this.reader.u16();case 26:return this.reader.u32();case 27:return Number(this.reader.u64());case 31:return-1;default:throw 1}}readUint(t){if(t<25)return t===24?this.reader.u8():t;if(t<27)return t===25?this.reader.u16():this.reader.u32();{let e=this.reader.u64();return e>9007199254740991?e:Number(e)}}readNint(t){if(t<25)return t===24?-this.reader.u8()-1:-t-1;if(t<27)return t===25?-this.reader.u16()-1:-this.reader.u32()-1;{let e=this.reader.u64();return e>9007199254740991-1?-e-BigInt(1):-Number(e)-1}}readBin(t){let e=this.reader;if(t<=23)return e.buf(t);switch(t){case 24:return e.buf(e.u8());case 25:return e.buf(e.u16());case 26:return e.buf(e.u32());case 27:return e.buf(Number(e.u64()));case 31:{let r=0,s=[];for(;this.reader.peak()!==255;){let u=this.readBinChunk();r+=u.length,s.push(u)}this.reader.x++;let n=new Uint8Array(r),o=0,c=s.length;for(let u=0;u<c;u++){let a=s[u];n.set(a,o),o+=a.length}return n}default:throw 1}}readBinChunk(){let t=this.reader.u8(),e=t>>5,r=t&31;if(e!==2)throw 2;if(r>27)throw 3;return this.readBin(r)}readAsStr(){let e=this.reader.u8(),r=e>>5,s=e&31;if(r!==3)throw 11;return this.readStr(s)}readStr(t){let e=this.reader;if(t<=23)return e.utf8(t);switch(t){case 24:return e.utf8(e.u8());case 25:return e.utf8(e.u16());case 26:return e.utf8(e.u32());case 27:return e.utf8(Number(e.u64()));case 31:{let r="";for(;e.peak()!==255;)r+=this.readStrChunk();return this.reader.x++,r}default:throw 1}}readStrLen(t){if(t<=23)return t;switch(t){case 24:return this.reader.u8();case 25:return this.reader.u16();case 26:return this.reader.u32();case 27:return Number(this.reader.u64());default:throw 1}}readStrChunk(){let t=this.reader.u8(),e=t>>5,r=t&31;if(e!==3)throw 4;if(r>27)throw 5;return this.readStr(r)}readArr(t){let e=this.readMinorLen(t);return e>=0?this.readArrRaw(e):this.readArrIndef()}readArrRaw(t){let e=[];for(let r=0;r<t;r++)e.push(this.readAny());return e}readArrIndef(){let t=[];for(;this.reader.peak()!==255;)t.push(this.readAny());return this.reader.x++,t}readObj(t){if(t<28){let e=t;switch(t){case 24:e=this.reader.u8();break;case 25:e=this.reader.u16();break;case 26:e=this.reader.u32();break;case 27:e=Number(this.reader.u64());break}let r={};for(let s=0;s<e;s++){let n=this.key();if(n==="__proto__")throw 6;let o=this.readAny();r[n]=o}return r}else{if(t===31)return this.readObjIndef();throw 1}}readObjRaw(t){let e={};for(let r=0;r<t;r++){let s=this.key(),n=this.readAny();e[s]=n}return e}readObjIndef(){let t={};for(;this.reader.peak()!==255;){let e=this.key();if(this.reader.peak()===255)throw 7;let r=this.readAny();t[e]=r}return this.reader.x++,t}key(){let t=this.reader.u8(),e=t>>5,r=t&31;if(e!==3)return String(this.readAnyRaw(t));let s=this.readStrLen(r);if(s>31)return this.reader.utf8(s);let n=this.keyDecoder.decode(this.reader.uint8,this.reader.x,s);return this.reader.skip(s),n}readTag(t){if(t<=23)return this.readTagRaw(t);switch(t){case 24:return this.readTagRaw(this.reader.u8());case 25:return this.readTagRaw(this.reader.u16());case 26:return this.readTagRaw(this.reader.u32());case 27:return this.readTagRaw(Number(this.reader.u64()));default:throw 1}}readTagRaw(t){return new ii.JsonPackExtension(t,this.readAny())}readTkn(t){switch(t){case 20:return!1;case 21:return!0;case 22:return null;case 23:return;case 24:return new Lr.JsonPackValue(this.reader.u8());case 25:return this.f16();case 26:return this.reader.f32();case 27:return this.reader.f64()}if(t<=23)return new Lr.JsonPackValue(t);throw 1}f16(){return(0,si.decodeF16)(this.reader.u16())}};mt.CborDecoderBase=Ie});var Hr=b(St=>{"use strict";h();Object.defineProperty(St,"__esModule",{value:!0});St.CborDecoder=void 0;var ci=Fr(),ai=ht(),Ae=class extends ci.CborDecoderBase{readAsMap(){let t=this.reader.u8(),e=t>>5,r=t&31;switch(e){case 5:return this.readMap(r);default:throw 0}}readMap(t){let e=this.readMinorLen(t);return e>=0?this.readMapRaw(e):this.readMapIndef()}readMapRaw(t){let e=new Map;for(let r=0;r<t;r++){let s=this.readAny(),n=this.readAny();e.set(s,n)}return e}readMapIndef(){let t=new Map;for(;this.reader.peak()!==255;){let e=this.readAny();if(this.reader.peak()===255)throw 7;let r=this.readAny();t.set(e,r)}return this.reader.x++,t}skipN(t){for(let e=0;e<t;e++)this.skipAny()}skipAny(){this.skipAnyRaw(this.reader.u8())}skipAnyRaw(t){let e=t>>5,r=t&31;switch(e){case 0:case 1:this.skipUNint(r);break;case 2:this.skipBin(r);break;case 3:this.skipStr(r);break;case 4:this.skipArr(r);break;case 5:this.skipObj(r);break;case 7:this.skipTkn(r);break;case 6:this.skipTag(r);break}}skipMinorLen(t){if(t<=23)return t;switch(t){case 24:return this.reader.u8();case 25:return this.reader.u16();case 26:return this.reader.u32();case 27:return Number(this.reader.u64());case 31:return-1;default:throw 1}}skipUNint(t){if(!(t<=23))switch(t){case 24:return this.reader.skip(1);case 25:return this.reader.skip(2);case 26:return this.reader.skip(4);case 27:return this.reader.skip(8);default:throw 1}}skipBin(t){let e=this.skipMinorLen(t);if(e>=0)this.reader.skip(e);else{for(;this.reader.peak()!==255;)this.skipBinChunk();this.reader.x++}}skipBinChunk(){let t=this.reader.u8(),e=t>>5,r=t&31;if(e!==2)throw 2;if(r>27)throw 3;this.skipBin(r)}skipStr(t){let e=this.skipMinorLen(t);if(e>=0)this.reader.skip(e);else{for(;this.reader.peak()!==255;)this.skipStrChunk();this.reader.x++}}skipStrChunk(){let t=this.reader.u8(),e=t>>5,r=t&31;if(e!==3)throw 4;if(r>27)throw 5;this.skipStr(r)}skipArr(t){let e=this.skipMinorLen(t);if(e>=0)this.skipN(e);else{for(;this.reader.peak()!==255;)this.skipAny();this.reader.x++}}skipObj(t){let e=this.readMinorLen(t);if(e>=0)return this.skipN(e*2);for(;this.reader.peak()!==255;){if(this.skipAny(),this.reader.peak()===255)throw 7;this.skipAny()}this.reader.x++}skipTag(t){if(this.skipMinorLen(t)<0)throw 1;this.skipAny()}skipTkn(t){switch(t){case 24:this.reader.skip(1);return;case 25:this.reader.skip(2);return;case 26:this.reader.skip(4);return;case 27:this.reader.skip(8);return}if(!(t<=23))throw 1}validate(t,e=0,r=t.length){this.reader.reset(t),this.reader.x=e;let s=e;if(this.skipAny(),this.reader.x-s!==r)throw 8}decodeLevel(t){return this.reader.reset(t),this.readLevel()}readLevel(){let t=this.reader.u8(),e=t>>5,r=t&31;switch(e){case 4:return this.readArrLevel(r);case 5:return this.readObjLevel(r);default:return super.readAnyRaw(t)}}readPrimitiveOrVal(){switch(this.reader.peak()>>5){case 4:case 5:return this.readAsValue();default:return this.readAny()}}readAsValue(){let t=this.reader,e=t.x;this.skipAny();let r=t.x;return new ai.JsonPackValue(t.uint8.subarray(e,r))}readObjLevel(t){let e=this.readMinorLen(t);return e>=0?this.readObjRawLevel(e):this.readObjIndefLevel()}readObjRawLevel(t){let e={};for(let r=0;r<t;r++){let s=this.key(),n=this.readPrimitiveOrVal();e[s]=n}return e}readObjIndefLevel(){let t={};for(;this.reader.peak()!==255;){let e=this.key();if(this.reader.peak()===255)throw 7;let r=this.readPrimitiveOrVal();t[e]=r}return this.reader.x++,t}readArrLevel(t){let e=this.readMinorLen(t);return e>=0?this.readArrRawLevel(e):this.readArrIndefLevel()}readArrRawLevel(t){let e=[];for(let r=0;r<t;r++)e.push(this.readPrimitiveOrVal());return e}readArrIndefLevel(){let t=[];for(;this.reader.peak()!==255;)t.push(this.readPrimitiveOrVal());return this.reader.x++,t}readHdr(t){let e=this.reader.u8();if(e>>5!==t)throw 0;let s=e&31;if(s<24)return s;switch(s){case 24:return this.reader.u8();case 25:return this.reader.u16();case 26:return this.reader.u32();case 27:return Number(this.reader.u64());case 31:return-1}throw 1}readStrHdr(){return this.readHdr(3)}readObjHdr(){return this.readHdr(5)}readArrHdr(){return this.readHdr(4)}findKey(t){let e=this.readObjHdr();for(let r=0;r<e;r++){if(this.key()===t)return this;this.skipAny()}throw 9}findIndex(t){let e=this.readArrHdr();if(t>=e)throw 10;for(let r=0;r<t;r++)this.skipAny();return this}find(t){for(let e=0;e<t.length;e++){let r=t[e];typeof r=="string"?this.findKey(r):this.findIndex(r)}return this}};St.CborDecoder=Ae});var Te=b(It=>{"use strict";h();Object.defineProperty(It,"__esModule",{value:!0});It.Decoder=void 0;var ui=Cr(),z=q(),hi=ke(),fi=Hr(),Ne=class extends fi.CborDecoder{constructor(t=new ui.CrdtReader){super(t)}decode(t){let e=this.reader;e.reset(t);let r=e.vu57(),s=e.vu57(),o=r===1?new z.ServerClockVector(1,s):new z.ClockVector(r,s);this.patchSid=o.sid;let c=this.builder=new hi.PatchBuilder(o),u=this.val();return u instanceof Array&&(c.patch.meta=u[0]),this.decodeOperations(),c.patch}decodeId(){let t=this.reader,[e,r]=t.b1vu56();return e?new z.Timestamp(t.vu57(),r):new z.Timestamp(this.patchSid,r)}decodeTss(){let t=this.decodeId(),e=this.reader.vu57();return(0,z.interval)(t,0,e)}decodeOperations(){let e=this.reader.vu57();for(let r=0;r<e;r++)this.decodeOperation()}decodeOperation(){let t=this.builder,e=this.reader,r=e.u8();switch(r>>3){case 0:{let n=r&7;t.const(n?this.decodeId():this.val());break}case 1:{t.val();break}case 2:{t.obj();break}case 3:{t.vec();break}case 4:{t.str();break}case 5:{t.bin();break}case 6:{t.arr();break}case 9:{let n=this.decodeId(),o=this.decodeId();t.setVal(n,o);break}case 10:{let n=r&7||e.vu57(),o=this.decodeId(),c=[];for(let u=0;u<n;u++){let a=this.val();if(typeof a!="string")continue;let d=this.decodeId();c.push([a,d])}t.insObj(o,c);break}case 11:{let n=r&7||e.vu57(),o=this.decodeId(),c=[];for(let u=0;u<n;u++){let a=this.val();if(typeof a!="number")continue;let d=this.decodeId();c.push([a,d])}t.insVec(o,c);break}case 12:{let n=r&7||e.vu57(),o=this.decodeId(),c=this.decodeId(),u=e.utf8(n);t.insStr(o,c,u);break}case 13:{let n=r&7||e.vu57(),o=this.decodeId(),c=this.decodeId(),u=e.buf(n);if(!(u instanceof Uint8Array))return;t.insBin(o,c,u);break}case 14:{let n=r&7||e.vu57(),o=this.decodeId(),c=this.decodeId(),u=[];for(let a=0;a<n;a++)u.push(this.decodeId());t.insArr(o,c,u);break}case 16:{let n=r&7||e.vu57(),o=this.decodeId(),c=[];for(let u=0;u<n;u++)c.push(this.decodeTss());t.del(o,c);break}case 17:{let n=r&7||e.vu57();t.nop(n);break}default:throw new Error("UNKNOWN_OP")}}};It.Decoder=Ne});var Jr=b(P=>{"use strict";h();Object.defineProperty(P,"__esModule",{value:!0});P.decode=P.decoder=P.encode=P.encoder=void 0;var di=ue(),li=Te(),pi=re(),bi=new pi.CrdtWriter(1024*4);P.encoder=new di.Encoder(bi);var wi=i=>P.encoder.encode(i);P.encode=wi;P.decoder=new li.Decoder;var xi=i=>P.decoder.decode(i);P.decode=xi});var Wr=b(X=>{"use strict";h();Object.defineProperty(X,"__esModule",{value:!0});var Pe=(N(),T(A));Pe.__exportStar(ue(),X);Pe.__exportStar(Te(),X);Pe.__exportStar(Jr(),X)});var Oe=b(At=>{"use strict";h();Object.defineProperty(At,"__esModule",{value:!0});At.Patch=void 0;var yi=(N(),T(A)),O=yi.__importStar(K()),Gr=q(),Kr=Wr(),Ce=class i{constructor(){this.ops=[],this.meta=void 0}static fromBinary(t){return(0,Kr.decode)(t)}getId(){let t=this.ops[0];if(t)return t.id}span(){let t=0;for(let e of this.ops)t+=e.span();return t}nextTime(){let t=this.ops,e=t.length;if(!e)return 0;let r=t[e-1];return r.id.time+r.span()}rewriteTime(t){let e=new i,r=this.ops,s=r.length,n=e.ops;for(let o=0;o<s;o++){let c=r[o];c instanceof O.DelOp?n.push(new O.DelOp(t(c.id),t(c.obj),c.what)):c instanceof O.NewConOp?n.push(new O.NewConOp(t(c.id),c.val)):c instanceof O.NewVecOp?n.push(new O.NewVecOp(t(c.id))):c instanceof O.NewValOp?n.push(new O.NewValOp(t(c.id))):c instanceof O.NewObjOp?n.push(new O.NewObjOp(t(c.id))):c instanceof O.NewStrOp?n.push(new O.NewStrOp(t(c.id))):c instanceof O.NewBinOp?n.push(new O.NewBinOp(t(c.id))):c instanceof O.NewArrOp?n.push(new O.NewArrOp(t(c.id))):c instanceof O.InsArrOp?n.push(new O.InsArrOp(t(c.id),t(c.obj),t(c.ref),c.data.map(t))):c instanceof O.InsStrOp?n.push(new O.InsStrOp(t(c.id),t(c.obj),t(c.ref),c.data)):c instanceof O.InsBinOp?n.push(new O.InsBinOp(t(c.id),t(c.obj),t(c.ref),c.data)):c instanceof O.InsValOp?n.push(new O.InsValOp(t(c.id),t(c.obj),t(c.val))):c instanceof O.InsObjOp?n.push(new O.InsObjOp(t(c.id),t(c.obj),c.data.map(([u,a])=>[u,t(a)]))):c instanceof O.NopOp&&n.push(new O.NopOp(t(c.id),c.len))}return e}rebase(t,e){let r=this.getId();if(!r)throw new Error("EMPTY_PATCH");let s=r.time;if(s===t)return this;let n=t-s;return this.rewriteTime(o=>{if(!(o.sid===1))return o;let a=o.time;return a<e?o:(0,Gr.ts)(1,a+n)})}clone(){return this.rewriteTime(t=>t)}toBinary(){return(0,Kr.encode)(this)}toString(t=""){let e=this.getId(),r=`${this.constructor.name} ${e?(0,Gr.printTs)(e):"(nil)"}!${this.span()}`;for(let s=0;s<this.ops.length;s++){let n=s===this.ops.length-1;r+=`
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { createRequire as __nodeCreateRequire } from 'node:module';
|
|
2
2
|
const require = __nodeCreateRequire(import.meta.url);
|
|
3
|
-
import{g as n}from"./chunk-
|
|
3
|
+
import{g as n}from"./chunk-KQJNRKMF.js";n();var e=[{path:"/",title:"/",url:"https://docs.functorz.com/",content:`import { Head } from 'nextra/components'
|
|
4
4
|
|
|
5
5
|
<Head>
|
|
6
6
|
<meta httpEquiv="refresh" content="0; url=/docs/" />
|
|
@@ -6710,10 +6710,25 @@ Zion \u5E73\u53F0\u7684\u884C\u4E3A\u6D41\u4E3A\u7528\u6237\u63D0\u4F9B\u4E86\u6
|
|
|
6710
6710
|
|
|
6711
6711
|
</Steps>
|
|
6712
6712
|
|
|
6713
|
-
## \
|
|
6714
|
-
|
|
6715
|
-
|
|
6716
|
-
|
|
6713
|
+
## \u8D85\u65F6\u7B56\u7565
|
|
6714
|
+
|
|
6715
|
+
\u884C\u4E3A\u6D41\u7684\u8D85\u65F6\u7B56\u7565\u7531\u4E09\u4E2A\u6838\u5FC3\u7EF4\u5EA6\u5171\u540C\u51B3\u5B9A\uFF1A\u6267\u884C\u6A21\u5F0F\u3001\u5F53\u524D\u9879\u76EE\u7248\u672C\u4EE5\u53CA\u7279\u5B9A\u7684\u8282\u70B9\u7C7B\u578B\u3002
|
|
6716
|
+
|
|
6717
|
+
### \u6309\u6267\u884C\u6A21\u5F0F
|
|
6718
|
+
- **\u540C\u6B65\u6267\u884C**\uFF1A\u53D7\u9650\u4E8E API \u7F51\u5173\uFF0C\u603B\u8017\u65F6\u4E0A\u9650\u7EA6 60 \u79D2\u3002\u82E5\u53D1\u751F\u8D85\u65F6\uFF0C\u5BA2\u6237\u7AEF\u5C06\u7ACB\u5373\u629B\u51FA\u9519\u8BEF\uFF0C\u4F46\u540E\u53F0\u8FDB\u7A0B\u4F1A\u7EE7\u7EED\u6267\u884C\uFF0C\u76F4\u81F3\u89E6\u53CA\u4E0B\u8FF0\u7684\u5168\u5C40\u7248\u672C\u786C\u6027\u4E0A\u9650\u3002
|
|
6719
|
+
- **\u5F02\u6B65\u6267\u884C**\uFF1A\u65E0\u5168\u5C40\u603B\u65F6\u957F\u9650\u5236\u3002\u53EA\u8981\u5185\u90E8\u5355\u4E2A\u8282\u70B9\u672A\u53D1\u751F\u8D85\u65F6\uFF0C\u540E\u53F0\u5DE5\u4F5C\u6D41\u5373\u53EF\u6301\u7EED\u8FD0\u884C\u3002
|
|
6720
|
+
|
|
6721
|
+
### \u7248\u672C\u4E0A\u9650
|
|
6722
|
+
\u8BE5\u4E0A\u9650\u5B9A\u4E49\u4E86\u5E95\u5C42\u6267\u884C\u5F15\u64CE\u7684\u7EDD\u5BF9\u751F\u547D\u5468\u671F\u3002\u5BF9\u4E8E\u540C\u6B65\u6D41\uFF0C\u5B83\u7EA6\u675F\u7684\u662F\u201C\u603B\u8FD0\u884C\u8017\u65F6\u201D\uFF1B\u5BF9\u4E8E\u5F02\u6B65\u6D41\uFF0C\u5B83\u7EA6\u675F\u7684\u662F\u201C\u5355\u4E2A\u8282\u70B9\u7684\u6700\u5927\u8017\u65F6\u201D\uFF08\u5982\u81EA\u5B9A\u4E49\u4EE3\u7801\u5757\uFF09\u3002
|
|
6723
|
+
- **\u514D\u8D39\u7248**\uFF1A15 \u79D2\u3002
|
|
6724
|
+
- **\u4ED8\u8D39\u7248\uFF08\u9AD8\u7EA7 / \u4E13\u4E1A\uFF09**\uFF1A10 \u5206\u949F\u3002
|
|
6725
|
+
- **\u5355\u79DF\u6237\u7248\uFF08\u72EC\u4EAB\u670D\u52A1\u5668\uFF09**\uFF1A\u65E0\u4E0A\u9650\uFF08\u9ED8\u8BA4 10 \u5206\u949F\uFF09\u3002
|
|
6726
|
+
|
|
6727
|
+
### \u8282\u70B9\u7EA7\u7EA6\u675F
|
|
6728
|
+
- **AI \u8282\u70B9**\uFF1A\u5168\u7248\u672C\u7EDF\u4E00\u4E3A 10 \u5206\u949F\u3002
|
|
6729
|
+
- **\u652F\u4ED8\u56DE\u8C03**\uFF1A5 \u5206\u949F\u3002
|
|
6730
|
+
- **API \u8282\u70B9**\uFF1A60 \u79D2\uFF08\u4ECE\u53D1\u8D77\u8BF7\u6C42\u5230\u63A5\u6536\u5B8C\u5B8C\u6574\u6570\u636E\u7684\u786C\u6027\u9650\u5236\uFF09\u3002
|
|
6731
|
+
- **\u6570\u636E\u5E93\u8282\u70B9**\uFF1A\u77ED\u65F6\u9650\u5236\uFF08\u5982 5 \u79D2\uFF09\u4E3B\u8981\u9488\u5BF9\u6570\u636E\u5E93\u8FDE\u63A5\u6392\u961F\u7684\u7B49\u5F85\u65F6\u95F4\uFF1BSQL \u67E5\u8BE2\u7684\u5B9E\u9645\u6267\u884C\u65F6\u957F\uFF0C\u6700\u7EC8\u7531\u5168\u5C40\u5F15\u64CE\u751F\u547D\u5468\u671F\uFF0815 \u79D2 / 10 \u5206\u949F\uFF09\u4F5C\u4E3A\u515C\u5E95\u5E76\u5F3A\u5236\u7EC8\u6B62\u3002
|
|
6717
6732
|
`},{path:"/docs/actions/guide/frontend_interactions",title:"\u884C\u4E3A\u914D\u7F6E\u57FA\u7840\u64CD\u4F5C",url:"https://docs.functorz.com/docs/actions/guide/frontend_interactions",content:`---
|
|
6718
6733
|
title: "\u884C\u4E3A\u914D\u7F6E\u57FA\u7840\u64CD\u4F5C"
|
|
6719
6734
|
description: "\u7CFB\u7EDF\u8BB2\u89E3 Zion \u5E73\u53F0\u4E2D\u884C\u4E3A\u914D\u7F6E\u7684\u57FA\u7840\u4EA4\u4E92\u64CD\u4F5C\uFF0C\u5305\u62EC\u6DFB\u52A0\u3001\u7F16\u8F91\u3001\u590D\u5236\u3001\u5220\u9664\u3001\u914D\u7F6E\u6210\u529F/\u5931\u8D25\u5206\u652F\uFF0C\u4EE5\u53CA\u4F7F\u7528\u884C\u4E3A\u7F16\u8F91\u5668\u3002"
|
|
@@ -14434,7 +14449,7 @@ Zion \u7684\u5E95\u5C42\u57FA\u4E8E\u4F01\u4E1A\u7EA7\u5173\u7CFB\u578B\u6570\u6
|
|
|
14434
14449
|
* \u4FDD\u5B58\u7ED3\u6784\u4E0D\u786E\u5B9A\u7684\u7B2C\u4E09\u65B9 Webhook \u56DE\u8C03\u539F\u59CB\u65E5\u5FD7\u3002
|
|
14435
14450
|
* \u4FDD\u5B58\u5546\u54C1\u7684\u53EF\u53D8\u591A\u7EF4\u5C5E\u6027\u914D\u7F6E\uFF08\u5982\uFF1A\`{"\u989C\u8272": "\u7EA2\u8272", "\u5C3A\u7801": "XXL"}\`\uFF09\u3002
|
|
14436
14451
|
* \u5728\u9875\u9762\u53D8\u91CF\u4E2D\uFF0C\u4E34\u65F6\u5B58\u653E\u4E00\u6574\u884C\u590D\u6742\u7684\u4E34\u65F6\u7F13\u5B58\u6570\u636E\u3002
|
|
14437
|
-
`},{path:"/docs/data/reference/formula_dictionary",title:"\u516C\u5F0F\u4E0E\u51FD\u6570",url:"https://docs.functorz.com/docs/data/reference/formula_dictionary",content:'---\ntitle: "\u516C\u5F0F\u4E0E\u51FD\u6570"\ndescription: "\u63D0\u4F9B Zion \u5E73\u53F0\u5185\u7F6E\u6240\u6709\u903B\u8F91\u3001\u6570\u5B66\u3001\u6587\u672C\u3001\u65F6\u95F4\u3001\u6570\u7EC4\u548C\u5730\u7406\u4F4D\u7F6E\u5904\u7406\u516C\u5F0F\u7684\u5B8C\u6574\u53C2\u6570\u89C4\u8303\u4E0E\u53C2\u8003\u5BF9\u7167\u8868\u3002"\nkeywords: "Zion \u516C\u5F0F, \u8FD0\u7B97\u51FD\u6570, \u6570\u7EC4\u5904\u7406, \u7C7B\u578B\u8F6C\u6362, \u6587\u672C\u5904\u7406, \u65F6\u95F4\u8FD0\u7B97"\n---\n\nimport { Callout } from \'nextra/components\'\n\n# \u516C\u5F0F\u4E0E\u51FD\u6570\n\nZion \u652F\u6301\u5728\u7EC4\u4EF6\u6570\u636E\u7ED1\u5B9A\u3001\u6761\u4EF6\u5F0F\u5BB9\u5668\u4EE5\u53CA\u52A8\u4F5C\u903B\u8F91\u6D41\u4E2D\u914D\u7F6E\u7CFB\u7EDF\u7EA7\u516C\u5F0F\u8FDB\u884C\u9AD8\u7EA7\u6570\u636E\u52A0\u5DE5\u5904\u7406\u3002\u672C\u5B57\u5178\u6C47\u96C6\u4E86\u5E73\u53F0\u6240\u6709\u5185\u7F6E\u7684\u516C\u5F0F\u51FD\u6570\u89C4\u8303\u4E0E\u5E94\u7528\u793A\u4F8B\u3002\n\n---\n\n## 1. \u7C7B\u578B\u8F6C\u6362\u51FD\u6570\n\n\u5728\u4E0D\u540C\u7EC4\u4EF6\u6216\u63A5\u53E3\u4F20\u8F93\u65F6\uFF0C\u7528\u4E8E\u5BF9\u6570\u636E\u7C7B\u578B\u6267\u884C\u4E25\u8C28\u7684\u8F6C\u6362\uFF1A\n\n| \u51FD\u6570\u540D\u79F0 | \u529F\u80FD\u63CF\u8FF0 | \u793A\u4F8B\u8F93\u5165 | \u793A\u4F8B\u8F93\u51FA |\n|---|---|---|---|\n| **TO_TEXT** | \u5C06\u6574\u6570\u3001\u5C0F\u6570\u3001\u5E03\u5C14\u503C\u6216 JSON \u683C\u5F0F\u7684\u6570\u636E\u5F3A\u8F6C\u4E3A\u6587\u672C\u5B57\u7B26\u4E32\u3002 | `-3.1415926` | `"-3.1415926"` |\n| **TEXT_TO_INTEGER** | \u5C06\u6587\u672C\u6570\u5B57\u8F6C\u4E3A\u6574\u6570\uFF08\u82E5\u6709\u5C0F\u6570\u4F4D\uFF0C\u5219\u4F1A\u5411\u4E0B\u53D6\u6574\uFF09\u3002 | `"-3.1415926"` | `-3` |\n| **TO_DECIMAL** | \u5C06\u6587\u672C\u683C\u5F0F\u7684\u5C0F\u6570\u8F6C\u6362\u4E3A\u9AD8\u7CBE\u5EA6\u7684\u65E0\u9650\u7CBE\u5EA6\u5C0F\u6570\u3002 | `"-3.1415926"` | `-3.1415926` |\n| **TEXT_TO_DATETIME** | \u5C06\u6807\u51C6\u7684\u6587\u672C\u683C\u5F0F\u65F6\u95F4\u5B57\u7B26\u4E32\u8F6C\u4E3A\u5E26\u65F6\u533A\u7684\u65F6\u95F4\u7C7B\u578B\u5BF9\u8C61\u3002 | `"2025-02-21 14:36"` | `2025-02-21T14:36:00.000+08:00` |\n| **COMBINE_DATE_AND_TIME** | \u5C06\u5206\u79BB\u7684\u65E5\u671F\uFF08Date\uFF09\u548C\u65F6\u95F4\uFF08Time\uFF09\u5B57\u6BB5\u5408\u5E76\u4E3A\u7EDF\u4E00\u7684\u65E5\u671F\u65F6\u95F4\uFF08DateTime\uFF09\u7C7B\u578B\u3002 | \u65E5\u671F\uFF1A`2024-01-08`<br/>\u65F6\u95F4\uFF1A`13:38:00.000+08:00` | `2024-01-08T13:38:00.000+08:00` |\n| **EXTRACT_DATE_OR_TIME** | \u4ECE\u4E00\u4E2A\u5B8C\u6574\u7684\u65E5\u671F\u65F6\u95F4\u5BF9\u8C61\u4E2D\u63D0\u53D6\u7EAF\u65E5\u671F\u6216\u7EAF\u65F6\u95F4\u6587\u672C\u3002 | `2024-01-08 13:38:00.000+08:00` | `2024-01-08` |\n\n---\n\n## 2. \u6587\u672C\u5904\u7406\u51FD\u6570\n\n\u5BF9\u5B57\u7B26\u3001\u5173\u952E\u8BCD\u3001\u6216\u6587\u672C\u683C\u5F0F\u6267\u884C\u67E5\u627E\u3001\u5206\u5272\u4E0E\u683C\u5F0F\u6E05\u6D17\uFF1A\n\n| \u51FD\u6570\u540D\u79F0 | \u529F\u80FD\u63CF\u8FF0 | \u793A\u4F8B\u8F93\u5165 | \u793A\u4F8B\u8F93\u51FA |\n|---|---|---|---|\n| **TEXT_LEN** | \u8FD4\u56DE\u76EE\u6807\u6587\u672C\u5B57\u7B26\u4E32\u7684\u7269\u7406\u957F\u5EA6\uFF08\u5B57\u7B26\u6570\uFF09\u3002 | `"Hello World!"` | `12` |\n| **REPLACE_PART** | \u6839\u636E\u6307\u5B9A\u7684\u8D77\u59CB\u7D22\u5F15\uFF080\u4F4D\u8D77\uFF09\u548C\u5B57\u7B26\u4E2A\u6570\uFF0C\u66FF\u6362\u5BF9\u5E94\u7684\u5B50\u4E32\u3002 | \u6587\u672C\uFF1A`"Hello World!"`<br/>\u5F00\u59CB\u4F4D\u7F6E\uFF1A`1`<br/>\u5B57\u7B26\u6570\uFF1A`4`<br/>\u65B0\u6587\u672C\uFF1A`"ola"` | `"Hola World!"` |\n| **REPLACE_TEXT** | \u5C06\u6587\u672C\u4E2D\u6240\u6709\u5339\u914D\u7684\u65E7\u5B50\u4E32\u66FF\u6362\u4E3A\u65B0\u5B50\u4E32\uFF08\u652F\u6301\u9650\u5236\u66FF\u6362\u6B21\u6570\uFF09\u3002 | \u6E90\u6587\u672C\uFF1A`"Hello World!"`<br/>\u65E7\u6587\u672C\uFF1A`"o"`<br/>\u65B0\u6587\u672C\uFF1A`""`<br/>\u6B21\u6570\uFF1A`1` | `"Hell World!"` |\n| **FIND** | \u8FD4\u56DE\u6307\u5B9A\u5B50\u6587\u672C\u5728\u4E3B\u6587\u672C\u4E2D\u9996\u6B21\u51FA\u73B0\u7684\u7D22\u5F15\u4F4D\u7F6E\u3002 | \u6587\u672C\uFF1A`"Hello World!"`<br/>\u67E5\u627E\u6587\u672C\uFF1A`"o"` | `4` |\n| **CONTAINS** | \u5224\u65AD\u6587\u672C\u4E2D\u662F\u5426\u5305\u542B\u6307\u5B9A\u7684\u5B50\u6587\u672C\uFF0C\u8FD4\u56DE\u5E03\u5C14\u503C\uFF08`true`/`false`\uFF09\u3002 | \u6587\u672C\uFF1A`"Hello World!"`<br/>\u67E5\u627E\u6587\u672C\uFF1A`"ello"` | `true` |\n| **SUB_TEXT** | \u622A\u53D6\u6307\u5B9A\u5F00\u59CB\u7D22\u5F15\u548C\u7ED3\u675F\u7D22\u5F15\uFF08\u4E0D\u542B\u7ED3\u675F\u4F4D\uFF09\u4E4B\u95F4\u7684\u5B50\u6587\u672C\u3002 | \u6587\u672C\uFF1A`"Hello World!"`<br/>\u5F00\u59CB\u4F4D\u7F6E\uFF1A`0`<br/>\u7ED3\u675F\u4F4D\u7F6E\uFF1A`5` | `"Hello"` |\n| **LEFT** | \u4ECE\u6587\u672C\u6700\u5DE6\u4FA7\u5934\u90E8\u622A\u53D6\u5E76\u8FD4\u56DE\u6307\u5B9A\u5B57\u7B26\u6570\u3002 | \u6587\u672C\uFF1A`"Hello World!"`<br/>\u5B57\u7B26\u6570\uFF1A`5` | `"Hello"` |\n| **RIGHT** | \u4ECE\u6587\u672C\u6700\u53F3\u4FA7\u5C3E\u90E8\u622A\u53D6\u5E76\u8FD4\u56DE\u6307\u5B9A\u5B57\u7B26\u6570\u3002 | \u6587\u672C\uFF1A`"Hello World!"`<br/>\u5B57\u7B26\u6570\uFF1A`5` | `"World"` |\n| **LOWER** | \u5C06\u6587\u672C\u4E2D\u6240\u6709\u5927\u5199\u82F1\u6587\u5B57\u6BCD\u8F6C\u4E3A\u5C0F\u5199\u3002 | `"Hello World!"` | `"hello world!"` |\n| **UPPER** | \u5C06\u6587\u672C\u4E2D\u6240\u6709\u5C0F\u5199\u82F1\u6587\u5B57\u6BCD\u8F6C\u4E3A\u5927\u5199\u3002 | `"Hello World!"` | `"HELLO WORLD!"` |\n| **RANDOM_TEXT** | \u751F\u6210\u9AD8\u5F3A\u5EA6\u7684\u968F\u673A\u5B89\u5168\u6587\u672C\u3002 | \u6700\u5C0F\u957F\u5EA6\uFF1A`5`<br/>\u6700\u5927\u957F\u5EA6\uFF1A`10`<br/>\u5927\u5199/\u5C0F\u5199/\u6570\u5B57\uFF1A`true` | `"seXr3aoRD"` |\n| **SPLIT** | \u4F7F\u7528\u6307\u5B9A\u7684\u5206\u9694\u7B26\uFF0C\u5C06\u6587\u672C\u5207\u5206\u4E3A\u5B57\u7B26\u4E32\u6570\u7EC4\u3002 | \u6587\u672C\uFF1A`"2024/01/08"`<br/>\u5206\u9694\u7B26\uFF1A`"/"` | `["2024", "01", "08"]` |\n| **ENCODE_URL** | \u5BF9\u542B\u6709\u7279\u6B8A\u6C49\u5B57\u6216\u7B26\u53F7\u7684\u6587\u672C\u8FDB\u884C\u6807\u51C6\u7684 URL \u5B89\u5168\u7F16\u7801\u8F6C\u6362\u3002 | `"https://docs.functorz.com/starts/#\u5165\u95E8"` | `"https%3A%2F%2Fdocs.functorz.com%2Fstarts%2F%23%E5%85%A5%E9%97%A8"` |\n| **DECODE_URL** | \u5BF9\u5DF2\u6267\u884C\u8FC7 `ENCODE_URL` \u7F16\u7801\u7684\u5B57\u7B26\u4E32\u8FDB\u884C\u9006\u5411\u89E3\u7801\u8FD8\u539F\u3002 | `"%E5%87%BD%E5%AD%90"` | `"\u51FD\u5B50"` |\n| **UUID** | \u968F\u673A\u751F\u6210\u4E00\u4E2A\u6807\u51C6\u7684\u3001\u5168\u7403\u552F\u4E00\u7684 32 \u4F4D UUID \u5B57\u7B26\u4E32\u6807\u8BC6\u3002 | \u65E0 | `"550e8400-e29b-41d4-a716-446655440000"` |\n| **TEXT_REPEAT** | \u5C06\u6307\u5B9A\u6587\u672C\u5FAA\u73AF\u8FDE\u63A5\u91CD\u590D\u6307\u5B9A\u6B21\u6570\u3002 | \u6587\u672C\uFF1A`"\u54C8"`<br/>\u91CD\u590D\u6B21\u6570\uFF1A`3` | `"\u54C8\u54C8\u54C8"` |\n| **TRIM** | \u5F7B\u5E95\u79FB\u9664\u6587\u672C\u5F00\u5934\u548C\u7ED3\u5C3E\u7684\u6240\u6709\u4E0D\u53EF\u89C1\u7A7A\u683C\u3002 | `" Zion "` | `"Zion"` |\n| **REGEX_EXTRACT** | \u63D0\u53D6\u6587\u672C\u4E2D\u7B2C\u4E00\u6BB5\u7B26\u5408\u6B63\u5219\u8868\u8FBE\u5F0F\u7EA6\u675F\u7684\u5339\u914D\u5B50\u4E32\u3002 | \u6587\u672C\uFF1A`"\u6211\u7684\u7535\u8BDD 13812345678"`<br/>\u6B63\u5219\uFF1A`\\d{11}` | `"13812345678"` |\n| **REGEX_EXTRACT_ALL** | \u63D0\u53D6\u5E76\u4EE5\u6570\u7EC4\u683C\u5F0F\u8FD4\u56DE\u6240\u6709\u7B26\u5408\u6B63\u5219\u8868\u8FBE\u5F0F\u89C4\u5219\u7684\u5339\u914D\u9879\u3002 | \u6587\u672C\uFF1A`"\u53F7\u7801\uFF1A13812345678, 13911112222"`<br/>\u6B63\u5219\uFF1A`\\d{11}` | `["13812345678", "13911112222"]` |\n| **REGEX_MATCH** | \u9A8C\u8BC1\u6587\u672C\u662F\u5426\u6EE1\u8DB3\u6B63\u5219\u8868\u8FBE\u5F0F\u89C4\u5219\uFF0C\u8FD4\u56DE\u5E03\u5C14\u503C\u3002 | \u6587\u672C\uFF1A`"13812345678"`<br/>\u6B63\u5219\uFF1A`^\\d{11}$` | `true` |\n| **REGEX_REPLACE** | \u5C06\u6587\u672C\u4E2D\u6240\u6709\u5339\u914D\u6B63\u5219\u7684\u5185\u5BB9\uFF0C\u7528\u6307\u5B9A\u5B57\u7B26\u4E32\u6279\u91CF\u66FF\u6362\uFF08\u5982\u8131\u654F\uFF09\u3002 | \u6587\u672C\uFF1A`"\u7535\u8BDD\u662F13812345678"`<br/>\u6B63\u5219\uFF1A`\\d{11}`<br/>\u66FF\u6362\uFF1A`"***********"` | `"\u7535\u8BDD\u662F***********"` |\n\n---\n\n## 3. \u6570\u5B66\u8FD0\u7B97\u51FD\u6570\n\n\u7528\u4E8E\u5728\u4E1A\u52A1\u4E2D\u6267\u884C\u56DB\u5219\u8FD0\u7B97\u3001\u4E09\u89D2\u51FD\u6570\u4EE5\u53CA\u5404\u7C7B\u79D1\u5B66\u8BA1\u7B97\uFF1A\n\n| \u51FD\u6570/\u7B26\u53F7 | \u529F\u80FD\u63CF\u8FF0 | \u793A\u4F8B\u8F93\u5165 | \u793A\u4F8B\u8F93\u51FA |\n|---|---|---|---|\n| **+** | \u6267\u884C\u6570\u5B57\u52A0\u6CD5\u3002 | `5`, `10` | `15` |\n| **-** | \u6267\u884C\u6570\u5B57\u51CF\u6CD5\u3002 | `5`, `10` | `-5` |\n| ***** | \u6267\u884C\u6570\u5B57\u4E58\u6CD5\u3002 | `5`, `10` | `50` |\n| **/** | \u6267\u884C\u6570\u5B57\u9664\u6CD5\uFF08\u8FD4\u56DE\u7CBE\u786E\u6570\u503C\uFF09\u3002 | `5`, `10` | `0.5` |\n| **%** | \u6A21\u8FD0\u7B97\u3002\u6C42\u4E24\u6570\u76F8\u9664\u540E\u7684\u4F59\u6570\uFF08\u4F59\u6570\u7B26\u53F7\u4E0E\u88AB\u9664\u6570\u4E00\u81F4\uFF09\u3002 | \u88AB\u9664\u6570\uFF1A`-5`<br/>\u9664\u6570\uFF1A`10` | `-5` |\n| **MIN** | \u5728\u4E00\u7EC4\u6570\u5B57\u4E2D\u67E5\u627E\u5E76\u8FD4\u56DE\u6700\u5C0F\u503C\u3002 | `5`, `10` | `5` |\n| **MAX** | \u5728\u4E00\u7EC4\u6570\u5B57\u4E2D\u67E5\u627E\u5E76\u8FD4\u56DE\u6700\u5927\u503C\u3002 | `5`, `10` | `10` |\n| **ROUND_UP** | \u5411\u4E0A\u53D6\u6574\uFF08\u53D6\u5927\u4E8E\u6216\u7B49\u4E8E\u8BE5\u6570\u7684\u6700\u63A5\u8FD1\u6574\u6570\uFF09\u3002 | `3.1` | `4` |\n| **ROUND_DOWN** | \u5411\u4E0B\u53D6\u6574\uFF08\u53D6\u5C0F\u4E8E\u6216\u7B49\u4E8E\u8BE5\u6570\u7684\u6700\u63A5\u8FD1\u6574\u6570\uFF09\u3002 | `-3.5` | `-4` |\n| **INT** | \u76F4\u63A5\u622A\u65AD\u5C0F\u6570\u90E8\u5206\u53D6\u6574\u3002 | `-3.5` | `-3` |\n| **ABS** | \u6C42\u6570\u5B57\u7684\u7EDD\u5BF9\u503C\u3002 | `-3.5` | `3.5` |\n| **RANDOM_NUMBER** | \u8FD4\u56DE\u6307\u5B9A\u95ED\u533A\u95F4\u8303\u56F4\u5185\u7684\u968F\u673A\u6574\u6570\u3002 | \u6700\u5C0F\uFF1A`1`<br/>\u6700\u5927\uFF1A`10` | `6` |\n| **POWER** | \u5E42\u8FD0\u7B97\uFF08\u5E95\u6570\u7684\u6307\u6570\u6B21\u65B9\uFF09\u3002 | \u5E95\u6570\uFF1A`2`<br/>\u6307\u6570\uFF1A`3` | `8` |\n| **FORMAT_DECIMAL** | \u7CBE\u7EC6\u5316\u683C\u5F0F\u5316\u5C0F\u6570\u5E76\u63A7\u5236\u820D\u5165\u89C4\u5219\u3002 | \u5C0F\u6570\uFF1A`3.14159`<br/>\u7CBE\u5EA6\u4F4D\u6570\uFF1A`2`<br/>\u820D\u5165\u6A21\u5F0F\uFF1A`HALF_EVEN`<br/>\u6E05\u9664\u672B\u5C3E\u96F6\uFF1A`true` | `3.14` |\n| **LOG** | \u5BF9\u6570\u8FD0\u7B97\u3002\u6C42\u6307\u5B9A\u5E95\u6570\u7684\u771F\u6570\u5BF9\u6570\u3002 | \u771F\u6570\uFF1A`8`<br/>\u5E95\u6570\uFF1A`2` | `3` |\n\n---\n\n## 4. \u6570\u7EC4\u4E0E\u5217\u8868\u5904\u7406\u51FD\u6570\n\n\u5BF9\u96C6\u5408\u3001\u5173\u7CFB\u5217\u8868\u548C JSON \u6570\u7EC4\u6570\u636E\u6267\u884C\u6DF1\u5EA6\u63D0\u53D6\u548C\u904D\u5386\u8FC7\u6EE4\uFF1A\n\n| \u51FD\u6570\u540D\u79F0 | \u529F\u80FD\u63CF\u8FF0 | \u793A\u4F8B\u8F93\u5165 | \u793A\u4F8B\u8F93\u51FA |\n|---|---|---|---|\n| **GET_ITEM** | \u83B7\u53D6\u6570\u7EC4\u4E2D\u7279\u5B9A\u7D22\u5F15\u5904\u7684\u5355\u9879\uFF08\u7D22\u5F15\u4ECE `0` \u5F00\u59CB\uFF09\u3002 | \u6570\u7EC4\uFF1A`["A", "B", "C"]`<br/>\u7D22\u5F15\uFF1A`1` | `"B"` |\n| **ARRAY_LENGTH** | \u8FD4\u56DE\u6570\u7EC4\u6216\u5217\u8868\u4E2D\u5305\u542B\u7684\u5143\u7D20\u603B\u91CF\u3002 | `["A", "B", "C"]` | `3` |\n| **FIRST_ITEM** | \u4E00\u952E\u8FD4\u56DE\u6570\u7EC4\u7684\u7B2C\u4E00\u9879\u3002 | `["A", "B", "C"]` | `"A"` |\n| **LAST_ITEM** | \u4E00\u952E\u8FD4\u56DE\u6570\u7EC4\u7684\u6700\u540E\u4E00\u9879\u3002 | `["A", "B", "C"]` | `"C"` |\n| **RANDOM_ITEM** | \u968F\u673A\u4ECE\u6570\u7EC4\u4E2D\u62BD\u53D6\u4E00\u9879\u5143\u7D20\u8FD4\u56DE\u3002 | `["A", "B", "C"]` | `"B"` |\n| **SLICE** | \u622A\u53D6\u6570\u7EC4\u4E2D\u7684\u67D0\u4E00\u6BB5\u3002 | \u6570\u7EC4\uFF1A`["A", "B", "C"]`<br/>\u8D77\u70B9\uFF1A`1`<br/>\u6570\u91CF\uFF1A`2` | `["B", "C"]` |\n| **JOIN** | \u5C06\u6587\u672C\u578B\u6570\u7EC4\u7684\u6240\u6709\u5143\u7D20\u62FC\u63A5\uFF0C\u7531\u6307\u5B9A\u7B26\u53F7\u8FDE\u63A5\u4E3A\u5B57\u7B26\u4E32\u3002 | \u6570\u7EC4\uFF1A`["2026", "06", "10"]`<br/>\u8FDE\u63A5\u7B26\uFF1A`"-"` | `"2026-06-10"` |\n| **INDEX_OF** | \u8FD4\u56DE\u6307\u5B9A\u9879\u5728\u6570\u7EC4\u4E2D\u9996\u6B21\u51FA\u73B0\u7684\u7D22\u5F15\uFF08\u82E5\u4E0D\u5B58\u5728\uFF0C\u8FD4\u56DE `-1`\uFF09\u3002 | \u6570\u7EC4\uFF1A`["A", "B", "C"]`<br/>\u6307\u5B9A\u9879\uFF1A`"C"` | `2` |\n| **SEQUENCE** | \u751F\u6210\u4E00\u4E2A\u6307\u5B9A\u533A\u95F4\u548C\u6B65\u957F\u7684\u8FDE\u7EED\u6570\u5B57\u5E8F\u5217\u6570\u7EC4\uFF08\u542B\u5934\u4E0D\u542B\u5C3E\uFF09\u3002 | \u8D77\u70B9\uFF1A`0`<br/>\u7EC8\u70B9\uFF1A`10`<br/>\u6B65\u957F\uFF1A`2` | `[0, 2, 4, 6, 8]` |\n| **COALESCE** | \u6309\u81EA\u5DE6\u5411\u53F3\u987A\u5E8F\uFF0C\u8FD4\u56DE\u53C2\u6570\u6570\u7EC4\u4E2D\u7B2C\u4E00\u4E2A**\u975E\u7A7A (Not Null)** \u7684\u9879\u3002 | `[null, 1, 3, 2]` | `1` |\n| **ARRAY_MAX** | \u8FD4\u56DE\u6570\u5B57\u6570\u7EC4\u4E2D\u7684\u6700\u5927\u6570\u503C\u3002 | `[1, 2, 3]` | `3` |\n| **ARRAY_MIN** | \u8FD4\u56DE\u6570\u5B57\u6570\u7EC4\u4E2D\u7684\u6700\u5C0F\u6570\u503C\u3002 | `[1, 2, 3]` | `1` |\n| **ARRAY_SUM** | \u7D2F\u52A0\u6570\u5B57\u6570\u7EC4\u4E2D\u7684\u6240\u6709\u6570\u503C\u3002 | `[1, 2, 3]` | `6` |\n| **ARRAY_AVERAGE** | \u8BA1\u7B97\u5E76\u8FD4\u56DE\u6570\u5B57\u6570\u7EC4\u7684\u5E73\u5747\u503C\u3002 | `[1, 2, 3]` | `2` |\n| **ARRAY_CONCAT** | \u5C06\u4E24\u4E2A\u6570\u7EC4\u5408\u5E76\u3002 | \u6570\u7EC41\uFF1A`[1, 2]`<br/>\u6570\u7EC42\uFF1A`[2, 3]` | `[1, 2, 2, 3]` |\n| **UNIQUE** | \u53BB\u9664\u6570\u7EC4\u4E2D\u7684\u6240\u6709\u91CD\u590D\u9879\uFF0C\u8FD4\u56DE\u552F\u4E00\u503C\u65B0\u6570\u7EC4\u3002 | `[1, 2, 2, 3]` | `[1, 2, 3]` |\n| **ARRAY_MAPPING** | \u5BF9\u6570\u7EC4\u5185\u7684\u6BCF\u4E00\u4E2A\u5143\u7D20\u8FDB\u884C\u7279\u5B9A\u7684\u904D\u5386\u8F6C\u6362\uFF08Map\uFF09\u3002 | \u6570\u7EC4\uFF1A`[1, 2, 3]`<br/>\u5C55\u5F00\u5F0F\uFF1A`item * 10` | `[10, 20, 30]` |\n| **FILTER** | \u6309\u6307\u5B9A\u903B\u8F91\u6761\u4EF6\uFF0C\u8FC7\u6EE4\u5E76\u8FD4\u56DE\u7B26\u5408\u8981\u6C42\u7684\u5B50\u6570\u7EC4\uFF08Filter\uFF09\u3002 | \u6570\u7EC4\uFF1A`[1, 2, 3]`<br/>\u6761\u4EF6\uFF1A`item > 1` | `[2, 3]` |\n\n---\n\n## 5. \u65F6\u95F4\u8FD0\u7B97\u51FD\u6570\n\n\u5BF9\u9AD8\u7CBE\u5EA6\u7684\u5E26\u65F6\u533A\u65E5\u671F\u65F6\u95F4\u3001\u65F6\u95F4\u5DEE\u6267\u884C\u9AD8\u7EA7\u8FD0\u7B97\uFF1A\n\n| \u51FD\u6570\u540D\u79F0 | \u529F\u80FD\u63CF\u8FF0 | \u793A\u4F8B\u8F93\u5165 | \u793A\u4F8B\u8F93\u51FA |\n|---|---|---|---|\n| **GET_DATE_TIME** | \u4F9D\u636E\u6307\u5B9A\u7684\u5E74\u6708\u65E5\u65F6\u5206\u79D2\u6570\u503C\uFF0C\u7EC4\u88C5\u6210\u6807\u51C6\u7684\u5E26\u65F6\u533A DateTime \u65F6\u95F4\u6233\u3002 | \u5E74\uFF1A`2026`<br/>\u6708\uFF1A`6`<br/>\u65E5\uFF1A`10`<br/>\u65F6\uFF1A`12` | `2026-06-10T12:00:00.000+08:00` |\n| **DELTA** | \u65F6\u95F4\u7684\u589E\u51CF\u5E73\u79FB\u8FD0\u7B97\uFF08\u52A0/\u51CF\u7279\u5B9A\u7684\u5C0F\u65F6\u3001\u5206\u949F\u6216\u79D2\u6570\uFF09\u3002 | \u65F6\u95F4\uFF1A`13:38:00.000+08:00`<br/>\u8FD0\u7B97\uFF1A`\u52A0`<br/>\u65F6\uFF1A`1`<br/>\u5206\uFF1A`12` | `14:50:00.000+08:00` |\n| **DURATION** | \u8BA1\u7B97\u5E76\u8FD4\u56DE\u4E24\u4E2A\u7EDD\u5BF9\u65F6\u95F4\u70B9\u4E4B\u95F4\u7684\u7269\u7406\u95F4\u9694\u8DE8\u5EA6\uFF08\u652F\u6301\u6298\u7B97\u4E3A\u5E74\u3001\u5929\u3001\u65F6\u7B49\u5355\u4F4D\uFF09\u3002 | \u5F00\u59CB\uFF1A`2019-12-01`<br/>\u7ED3\u675F\uFF1A`2024-01-08`<br/>\u5355\u4F4D\uFF1A`\u5E74` | `5` |\n| **EXTRACT** | \u4ECE\u5B8C\u6574\u65F6\u95F4\u4E2D\u63D0\u53D6\u7279\u5B9A\u6210\u5206\uFF08\u82E5\u63D0\u53D6\u661F\u671F\u51E0\uFF0C\u8F93\u51FA `0~6` \u6574\u6570\uFF0C\u5176\u4E2D `0` \u8868\u793A\u661F\u671F\u65E5\uFF09\u3002 | \u65F6\u95F4\uFF1A`13:38:00.000+08:00`<br/>\u5355\u4F4D\uFF1A`\u65F6` | `13` |\n\n<Callout>\n**Zion \u6807\u51C6 ISO 8601 \u65F6\u95F4\u6233\u683C\u5F0F\u8BF4\u660E\uFF1A** \n\u5BF9\u4E8E\u8F93\u51FA\u793A\u4F8B `2024-01-08T13:38:00.000+08:00`\uFF1A\n1. `2024-01-08`\uFF1A\u7269\u7406\u65E5\u671F\uFF08\u5E74-\u6708-\u65E5\uFF09\u3002\n2. `T`\uFF1A\u56FD\u9645\u6807\u51C6\u89C4\u5B9A\u7684\u65E5\u671F\u4E0E\u65F6\u95F4\u7684\u7269\u7406\u5206\u5272\u7B26\u3002\n3. `13:38:00.000`\uFF1A\u9AD8\u7CBE\u5EA6\u7684\u5177\u4F53\u65F6\u95F4\uFF08\u5C0F\u65F6:\u5206\u949F:\u79D2.\u6BEB\u79D2\uFF09\u3002\n4. `+08:00`\uFF1A\u8868\u793A\u8BE5\u65F6\u95F4\u662F\u5728\u4E16\u754C\u534F\u8C03\u65F6\uFF08UTC\uFF09\u57FA\u51C6\u4E0A\u52A0 8 \u5C0F\u65F6\u7684\u4E1C\u516B\u533A\u65F6\u95F4\uFF08\u5373\u5317\u4EAC\u65F6\u95F4\uFF09\u3002\n</Callout>\n\n---\n\n## 6. \u5730\u7406\u4F4D\u7F6E\u4E0E JSON \u5904\u7406\u51FD\u6570\n\n| \u51FD\u6570\u540D\u79F0 | \u529F\u80FD\u63CF\u8FF0 | \u793A\u4F8B\u8F93\u5165 | \u793A\u4F8B\u8F93\u51FA |\n|---|---|---|---|\n| **DISTANCE** | \u8BA1\u7B97\u5730\u7403\u8868\u9762\u4E24\u4E2A\u7ECF\u7EAC\u5EA6\u5750\u6807\u70B9\u4E4B\u95F4\u7684\u6D4B\u5730\u5B66\u7269\u7406\u8DDD\u79BB\uFF08\u652F\u6301\u7C73\u3001\u5343\u7C73\u3001\u82F1\u91CC\u7B49\u5355\u4F4D\uFF09\u3002 | \u4F4D\u7F6E1\uFF1A`[120.2934, 30.3150]`<br/>\u4F4D\u7F6E2\uFF1A`[120.2934, 31.3150]`<br/>\u5355\u4F4D\uFF1A`\u5343\u7C73` | `866` |\n| **GET_VALUE_FROM_GEO_POINT** | \u4ECE\u4E00\u4E2A\u590D\u5408\u7684\u7ECF\u7EAC\u5EA6\u5B9A\u4F4D\u70B9\u4E2D\uFF0C\u5355\u72EC\u63D0\u53D6\u7ECF\u5EA6\uFF08Longitude\uFF09\u6216\u7EAC\u5EA6\uFF08Latitude\uFF09\u503C\u3002 | \u4F4D\u7F6E\uFF1A`[120.2934, 30.3150]`<br/>\u7C7B\u578B\uFF1A`\u7EAC\u5EA6` | `30.3150` |\n| **JSON_EXTRACT_PATH** | \u91C7\u7528 JSON \u6811\u5F62\u8DEF\u5F84\u8BED\u6CD5\uFF0C\u4ECE JSON \u8282\u70B9\u4E2D\u7CBE\u51C6\u63D0\u53D6\u76EE\u6807\u6570\u636E\uFF08\u652F\u6301 JSONB \u5B57\u6BB5\u89E3\u6790\uFF09\u3002 | JSON\uFF1A`{"data": {"foo": "bar"}}`<br/>\u8DEF\u5F84\uFF1A`data.foo` | `"bar"` |\n'},{path:"/docs/design",title:"UI \u642D\u5EFA",url:"https://docs.functorz.com/docs/design",content:`---
|
|
14452
|
+
`},{path:"/docs/data/reference/formula_dictionary",title:"\u516C\u5F0F\u4E0E\u51FD\u6570",url:"https://docs.functorz.com/docs/data/reference/formula_dictionary",content:'---\ntitle: "\u516C\u5F0F\u4E0E\u51FD\u6570"\ndescription: "\u63D0\u4F9B Zion \u5E73\u53F0\u5185\u7F6E\u6240\u6709\u903B\u8F91\u3001\u6570\u5B66\u3001\u6587\u672C\u3001\u65F6\u95F4\u3001\u6570\u7EC4\u548C\u5730\u7406\u4F4D\u7F6E\u5904\u7406\u516C\u5F0F\u7684\u5B8C\u6574\u53C2\u6570\u89C4\u8303\u4E0E\u53C2\u8003\u5BF9\u7167\u8868\u3002"\nkeywords: "Zion \u516C\u5F0F, \u8FD0\u7B97\u51FD\u6570, \u6570\u7EC4\u5904\u7406, \u7C7B\u578B\u8F6C\u6362, \u6587\u672C\u5904\u7406, \u65F6\u95F4\u8FD0\u7B97"\n---\n\nimport { Callout } from \'nextra/components\'\n\n# \u516C\u5F0F\u4E0E\u51FD\u6570\n\nZion \u652F\u6301\u5728\u7EC4\u4EF6\u6570\u636E\u7ED1\u5B9A\u3001\u6761\u4EF6\u5F0F\u5BB9\u5668\u4EE5\u53CA\u52A8\u4F5C\u903B\u8F91\u6D41\u4E2D\u914D\u7F6E\u7CFB\u7EDF\u7EA7\u516C\u5F0F\u8FDB\u884C\u9AD8\u7EA7\u6570\u636E\u52A0\u5DE5\u5904\u7406\u3002\u672C\u5B57\u5178\u6C47\u96C6\u4E86\u5E73\u53F0\u6240\u6709\u5185\u7F6E\u7684\u516C\u5F0F\u51FD\u6570\u89C4\u8303\u4E0E\u5E94\u7528\u793A\u4F8B\u3002\n\n---\n\n## \u7C7B\u578B\u8F6C\u6362\n\n| \u51FD\u6570\u540D\u79F0 | \u529F\u80FD\u63CF\u8FF0 | \u793A\u4F8B\u8F93\u5165 | \u793A\u4F8B\u8F93\u51FA |\n|---|---|---|---|\n| **TO_TEXT** | \u5C06\u6574\u6570\u3001\u5C0F\u6570\u3001\u5E03\u5C14\u503C\u6216 JSON \u683C\u5F0F\u7684\u6570\u636E\u5F3A\u8F6C\u4E3A\u6587\u672C\u5B57\u7B26\u4E32\u3002 | `-3.1415926` | `"-3.1415926"` |\n| **TEXT_TO_INTEGER** | \u5C06\u6587\u672C\u6570\u5B57\u8F6C\u4E3A\u6574\u6570\uFF08\u82E5\u6709\u5C0F\u6570\u4F4D\uFF0C\u5219\u4F1A\u5411\u4E0B\u53D6\u6574\uFF09\u3002 | `"-3.1415926"` | `-3` |\n| **TO_DECIMAL** | \u5C06\u6587\u672C\u683C\u5F0F\u7684\u5C0F\u6570\u8F6C\u6362\u4E3A\u9AD8\u7CBE\u5EA6\u7684\u65E0\u9650\u7CBE\u5EA6\u5C0F\u6570\u3002 | `"-3.1415926"` | `-3.1415926` |\n| **TEXT_TO_DATETIME** | \u5C06\u6807\u51C6\u7684\u6587\u672C\u683C\u5F0F\u65F6\u95F4\u5B57\u7B26\u4E32\u8F6C\u4E3A\u5E26\u65F6\u533A\u7684\u65F6\u95F4\u7C7B\u578B\u5BF9\u8C61\u3002 | `"2025-02-21 14:36"` | `2025-02-21T14:36:00.000+08:00` |\n| **COMBINE_DATE_AND_TIME** | \u5C06\u5206\u79BB\u7684\u65E5\u671F\uFF08Date\uFF09\u548C\u65F6\u95F4\uFF08Time\uFF09\u5B57\u6BB5\u5408\u5E76\u4E3A\u7EDF\u4E00\u7684\u65E5\u671F\u65F6\u95F4\uFF08DateTime\uFF09\u7C7B\u578B\u3002 | \u65E5\u671F\uFF1A`2024-01-08`<br/>\u65F6\u95F4\uFF1A`13:38:00.000+08:00` | `2024-01-08T13:38:00.000+08:00` |\n| **EXTRACT_DATE_OR_TIME** | \u4ECE\u4E00\u4E2A\u5B8C\u6574\u7684\u65E5\u671F\u65F6\u95F4\u5BF9\u8C61\u4E2D\u63D0\u53D6\u7EAF\u65E5\u671F\u6216\u7EAF\u65F6\u95F4\u6587\u672C\u3002 | `2024-01-08 13:38:00.000+08:00` | `2024-01-08` |\n\n---\n\n## \u6587\u672C\n\n| \u51FD\u6570\u540D\u79F0 | \u529F\u80FD\u63CF\u8FF0 | \u793A\u4F8B\u8F93\u5165 | \u793A\u4F8B\u8F93\u51FA |\n|---|---|---|---|\n| **TEXT_LEN** | \u8FD4\u56DE\u76EE\u6807\u6587\u672C\u5B57\u7B26\u4E32\u7684\u7269\u7406\u957F\u5EA6\uFF08\u5B57\u7B26\u6570\uFF09\u3002 | `"Hello World!"` | `12` |\n| **REPLACE_PART** | \u6839\u636E\u6307\u5B9A\u7684\u8D77\u59CB\u7D22\u5F15\uFF080\u4F4D\u8D77\uFF09\u548C\u5B57\u7B26\u4E2A\u6570\uFF0C\u66FF\u6362\u5BF9\u5E94\u7684\u5B50\u4E32\u3002 | \u6587\u672C\uFF1A`"Hello World!"`<br/>\u5F00\u59CB\u4F4D\u7F6E\uFF1A`1`<br/>\u5B57\u7B26\u6570\uFF1A`4`<br/>\u65B0\u6587\u672C\uFF1A`"ola"` | `"Hola World!"` |\n| **REPLACE_TEXT** | \u5C06\u6587\u672C\u4E2D\u6240\u6709\u5339\u914D\u7684\u65E7\u5B50\u4E32\u66FF\u6362\u4E3A\u65B0\u5B50\u4E32\uFF08\u652F\u6301\u9650\u5236\u66FF\u6362\u6B21\u6570\uFF09\u3002 | \u6E90\u6587\u672C\uFF1A`"Hello World!"`<br/>\u65E7\u6587\u672C\uFF1A`"o"`<br/>\u65B0\u6587\u672C\uFF1A`""`<br/>\u6B21\u6570\uFF1A`1` | `"Hell World!"` |\n| **FIND** | \u8FD4\u56DE\u6307\u5B9A\u5B50\u6587\u672C\u5728\u4E3B\u6587\u672C\u4E2D\u9996\u6B21\u51FA\u73B0\u7684\u7D22\u5F15\u4F4D\u7F6E\u3002 | \u6587\u672C\uFF1A`"Hello World!"`<br/>\u67E5\u627E\u6587\u672C\uFF1A`"o"` | `4` |\n| **CONTAINS** | \u5224\u65AD\u6587\u672C\u4E2D\u662F\u5426\u5305\u542B\u6307\u5B9A\u7684\u5B50\u6587\u672C\uFF0C\u8FD4\u56DE\u5E03\u5C14\u503C\uFF08`true`/`false`\uFF09\u3002 | \u6587\u672C\uFF1A`"Hello World!"`<br/>\u67E5\u627E\u6587\u672C\uFF1A`"ello"` | `true` |\n| **SUB_TEXT** | \u622A\u53D6\u6307\u5B9A\u5F00\u59CB\u7D22\u5F15\u548C\u7ED3\u675F\u7D22\u5F15\uFF08\u4E0D\u542B\u7ED3\u675F\u4F4D\uFF09\u4E4B\u95F4\u7684\u5B50\u6587\u672C\u3002 | \u6587\u672C\uFF1A`"Hello World!"`<br/>\u5F00\u59CB\u4F4D\u7F6E\uFF1A`0`<br/>\u7ED3\u675F\u4F4D\u7F6E\uFF1A`5` | `"Hello"` |\n| **LEFT** | \u4ECE\u6587\u672C\u6700\u5DE6\u4FA7\u5934\u90E8\u622A\u53D6\u5E76\u8FD4\u56DE\u6307\u5B9A\u5B57\u7B26\u6570\u3002 | \u6587\u672C\uFF1A`"Hello World!"`<br/>\u5B57\u7B26\u6570\uFF1A`5` | `"Hello"` |\n| **RIGHT** | \u4ECE\u6587\u672C\u6700\u53F3\u4FA7\u5C3E\u90E8\u622A\u53D6\u5E76\u8FD4\u56DE\u6307\u5B9A\u5B57\u7B26\u6570\u3002 | \u6587\u672C\uFF1A`"Hello World!"`<br/>\u5B57\u7B26\u6570\uFF1A`5` | `"World"` |\n| **LOWER** | \u5C06\u6587\u672C\u4E2D\u6240\u6709\u5927\u5199\u82F1\u6587\u5B57\u6BCD\u8F6C\u4E3A\u5C0F\u5199\u3002 | `"Hello World!"` | `"hello world!"` |\n| **UPPER** | \u5C06\u6587\u672C\u4E2D\u6240\u6709\u5C0F\u5199\u82F1\u6587\u5B57\u6BCD\u8F6C\u4E3A\u5927\u5199\u3002 | `"Hello World!"` | `"HELLO WORLD!"` |\n| **RANDOM_TEXT** | \u751F\u6210\u9AD8\u5F3A\u5EA6\u7684\u968F\u673A\u5B89\u5168\u6587\u672C\u3002 | \u6700\u5C0F\u957F\u5EA6\uFF1A`5`<br/>\u6700\u5927\u957F\u5EA6\uFF1A`10`<br/>\u5927\u5199/\u5C0F\u5199/\u6570\u5B57\uFF1A`true` | `"seXr3aoRD"` |\n| **SPLIT** | \u4F7F\u7528\u6307\u5B9A\u7684\u5206\u9694\u7B26\uFF0C\u5C06\u6587\u672C\u5207\u5206\u4E3A\u5B57\u7B26\u4E32\u6570\u7EC4\u3002 | \u6587\u672C\uFF1A`"2024/01/08"`<br/>\u5206\u9694\u7B26\uFF1A`"/"` | `["2024", "01", "08"]` |\n| **ENCODE_URL** | \u5BF9\u542B\u6709\u7279\u6B8A\u6C49\u5B57\u6216\u7B26\u53F7\u7684\u6587\u672C\u8FDB\u884C\u6807\u51C6\u7684 URL \u5B89\u5168\u7F16\u7801\u8F6C\u6362\u3002 | `"https://docs.functorz.com/starts/#\u5165\u95E8"` | `"https%3A%2F%2Fdocs.functorz.com%2Fstarts%2F%23%E5%85%A5%E9%97%A8"` |\n| **DECODE_URL** | \u5BF9\u5DF2\u6267\u884C\u8FC7 `ENCODE_URL` \u7F16\u7801\u7684\u5B57\u7B26\u4E32\u8FDB\u884C\u9006\u5411\u89E3\u7801\u8FD8\u539F\u3002 | `"%E5%87%BD%E5%AD%90"` | `"\u51FD\u5B50"` |\n| **UUID** | \u968F\u673A\u751F\u6210\u4E00\u4E2A\u6807\u51C6\u7684\u3001\u5168\u7403\u552F\u4E00\u7684 32 \u4F4D UUID \u5B57\u7B26\u4E32\u6807\u8BC6\u3002 | \u65E0 | `"550e8400-e29b-41d4-a716-446655440000"` |\n| **TEXT_REPEAT** | \u5C06\u6307\u5B9A\u6587\u672C\u5FAA\u73AF\u8FDE\u63A5\u91CD\u590D\u6307\u5B9A\u6B21\u6570\u3002 | \u6587\u672C\uFF1A`"\u54C8"`<br/>\u91CD\u590D\u6B21\u6570\uFF1A`3` | `"\u54C8\u54C8\u54C8"` |\n| **TRIM** | \u5F7B\u5E95\u79FB\u9664\u6587\u672C\u5F00\u5934\u548C\u7ED3\u5C3E\u7684\u6240\u6709\u4E0D\u53EF\u89C1\u7A7A\u683C\u3002 | `" Zion "` | `"Zion"` |\n| **REGEX_EXTRACT** | \u63D0\u53D6\u6587\u672C\u4E2D\u7B2C\u4E00\u6BB5\u7B26\u5408\u6B63\u5219\u8868\u8FBE\u5F0F\u7EA6\u675F\u7684\u5339\u914D\u5B50\u4E32\u3002 | \u6587\u672C\uFF1A`"\u6211\u7684\u7535\u8BDD 13812345678"`<br/>\u6B63\u5219\uFF1A`\\d{11}` | `"13812345678"` |\n| **REGEX_EXTRACT_ALL** | \u63D0\u53D6\u5E76\u4EE5\u6570\u7EC4\u683C\u5F0F\u8FD4\u56DE\u6240\u6709\u7B26\u5408\u6B63\u5219\u8868\u8FBE\u5F0F\u89C4\u5219\u7684\u5339\u914D\u9879\u3002 | \u6587\u672C\uFF1A`"\u53F7\u7801\uFF1A13812345678, 13911112222"`<br/>\u6B63\u5219\uFF1A`\\d{11}` | `["13812345678", "13911112222"]` |\n| **REGEX_MATCH** | \u9A8C\u8BC1\u6587\u672C\u662F\u5426\u6EE1\u8DB3\u6B63\u5219\u8868\u8FBE\u5F0F\u89C4\u5219\uFF0C\u8FD4\u56DE\u5E03\u5C14\u503C\u3002 | \u6587\u672C\uFF1A`"13812345678"`<br/>\u6B63\u5219\uFF1A`^\\d{11}$` | `true` |\n| **REGEX_REPLACE** | \u5C06\u6587\u672C\u4E2D\u6240\u6709\u5339\u914D\u6B63\u5219\u7684\u5185\u5BB9\uFF0C\u7528\u6307\u5B9A\u5B57\u7B26\u4E32\u6279\u91CF\u66FF\u6362\uFF08\u5982\u8131\u654F\uFF09\u3002 | \u6587\u672C\uFF1A`"\u7535\u8BDD\u662F13812345678"`<br/>\u6B63\u5219\uFF1A`\\d{11}`<br/>\u66FF\u6362\uFF1A`"***********"` | `"\u7535\u8BDD\u662F***********"` |\n| **TEXT_CONCAT** | \u5C06\u591A\u4E2A\u6587\u672C\u8FDE\u63A5\u6210\u4E00\u4E2A\u6587\u672C\u3002 | \u6587\u672C1\uFF1A`"Hello"`<br/>\u6587\u672C2\uFF1A`"World!"` | `"HelloWorld!"` |\n\n---\n\n## \u6570\u5B66\n\n| \u51FD\u6570/\u7B26\u53F7 | \u529F\u80FD\u63CF\u8FF0 | \u793A\u4F8B\u8F93\u5165 | \u793A\u4F8B\u8F93\u51FA |\n|---|---|---|---|\n| **+** | \u6267\u884C\u6570\u5B57\u52A0\u6CD5\u3002 | `5`, `10` | `15` |\n| **-** | \u6267\u884C\u6570\u5B57\u51CF\u6CD5\u3002 | `5`, `10` | `-5` |\n| ***** | \u6267\u884C\u6570\u5B57\u4E58\u6CD5\u3002 | `5`, `10` | `50` |\n| **/** | \u6267\u884C\u6570\u5B57\u9664\u6CD5\uFF08\u8FD4\u56DE\u7CBE\u786E\u6570\u503C\uFF09\u3002 | `5`, `10` | `0.5` |\n| **%** | \u6A21\u8FD0\u7B97\u3002\u6C42\u4E24\u6570\u76F8\u9664\u540E\u7684\u4F59\u6570\uFF08\u4F59\u6570\u7B26\u53F7\u4E0E\u88AB\u9664\u6570\u4E00\u81F4\uFF09\u3002 | \u88AB\u9664\u6570\uFF1A`-5`<br/>\u9664\u6570\uFF1A`10` | `-5` |\n| **MIN** | \u5728\u4E00\u7EC4\u6570\u5B57\u4E2D\u67E5\u627E\u5E76\u8FD4\u56DE\u6700\u5C0F\u503C\u3002 | `5`, `10` | `5` |\n| **MAX** | \u5728\u4E00\u7EC4\u6570\u5B57\u4E2D\u67E5\u627E\u5E76\u8FD4\u56DE\u6700\u5927\u503C\u3002 | `5`, `10` | `10` |\n| **ROUND_UP** | \u5411\u4E0A\u53D6\u6574\uFF08\u53D6\u5927\u4E8E\u6216\u7B49\u4E8E\u8BE5\u6570\u7684\u6700\u63A5\u8FD1\u6574\u6570\uFF09\u3002 | `3.1` | `4` |\n| **ROUND_DOWN** | \u5411\u4E0B\u53D6\u6574\uFF08\u53D6\u5C0F\u4E8E\u6216\u7B49\u4E8E\u8BE5\u6570\u7684\u6700\u63A5\u8FD1\u6574\u6570\uFF09\u3002 | `-3.5` | `-4` |\n| **INT** | \u76F4\u63A5\u622A\u65AD\u5C0F\u6570\u90E8\u5206\u53D6\u6574\u3002 | `-3.5` | `-3` |\n| **ABS** | \u6C42\u6570\u5B57\u7684\u7EDD\u5BF9\u503C\u3002 | `-3.5` | `3.5` |\n| **RANDOM_NUMBER** | \u8FD4\u56DE\u6307\u5B9A\u95ED\u533A\u95F4\u8303\u56F4\u5185\u7684\u968F\u673A\u6574\u6570\u3002 | \u6700\u5C0F\uFF1A`1`<br/>\u6700\u5927\uFF1A`10` | `6` |\n| **POWER** | \u5E42\u8FD0\u7B97\uFF08\u5E95\u6570\u7684\u6307\u6570\u6B21\u65B9\uFF09\u3002 | \u5E95\u6570\uFF1A`2`<br/>\u6307\u6570\uFF1A`3` | `8` |\n| **FORMAT_DECIMAL** | \u7CBE\u7EC6\u5316\u683C\u5F0F\u5316\u5C0F\u6570\u5E76\u63A7\u5236\u820D\u5165\u89C4\u5219\u3002 | \u5C0F\u6570\uFF1A`3.14159`<br/>\u7CBE\u5EA6\u4F4D\u6570\uFF1A`2`<br/>\u820D\u5165\u6A21\u5F0F\uFF1A`HALF_EVEN`<br/>\u6E05\u9664\u672B\u5C3E\u96F6\uFF1A`true` | `3.14` |\n| **LOG** | \u5BF9\u6570\u8FD0\u7B97\u3002\u6C42\u6307\u5B9A\u5E95\u6570\u7684\u771F\u6570\u5BF9\u6570\u3002 | \u771F\u6570\uFF1A`8`<br/>\u5E95\u6570\uFF1A`2` | `3` |\n| **FORMAT_NUMBER** | \u6570\u5B57\u683C\u5F0F\u5316\u3002\u53EF\u7528\u4E8E\u767E\u5206\u6BD4\u3001\u5343\u5206\u4F4D\u3001\u79D1\u5B66\u8BA1\u6570\u6CD5\u7B49\u5404\u7C7B\u683C\u5F0F\u5316\u8F6C\u6362\u3002 | \u6570\u503C\uFF1A`10000`<br/>\u683C\u5F0F\u7C7B\u578B\uFF1A`"percent"`<br/>\u4FDD\u7559\u7684\u5C0F\u6570\u4F4D\u6570\uFF1A`2` | `"10000.00%"` |\n\n---\n\n## \u6570\u7EC4\n\n| \u51FD\u6570\u540D\u79F0 | \u529F\u80FD\u63CF\u8FF0 | \u793A\u4F8B\u8F93\u5165 | \u793A\u4F8B\u8F93\u51FA |\n|---|---|---|---|\n| **GET_ITEM** | \u83B7\u53D6\u6570\u7EC4\u4E2D\u7279\u5B9A\u7D22\u5F15\u5904\u7684\u5355\u9879\uFF08\u7D22\u5F15\u4ECE `0` \u5F00\u59CB\uFF09\u3002 | \u6570\u7EC4\uFF1A`["A", "B", "C"]`<br/>\u7D22\u5F15\uFF1A`1` | `"B"` |\n| **ARRAY_LENGTH** | \u8FD4\u56DE\u6570\u7EC4\u6216\u5217\u8868\u4E2D\u5305\u542B\u7684\u5143\u7D20\u603B\u91CF\u3002 | `["A", "B", "C"]` | `3` |\n| **FIRST_ITEM** | \u4E00\u952E\u8FD4\u56DE\u6570\u7EC4\u7684\u7B2C\u4E00\u9879\u3002 | `["A", "B", "C"]` | `"A"` |\n| **LAST_ITEM** | \u4E00\u952E\u8FD4\u56DE\u6570\u7EC4\u7684\u6700\u540E\u4E00\u9879\u3002 | `["A", "B", "C"]` | `"C"` |\n| **RANDOM_ITEM** | \u968F\u673A\u4ECE\u6570\u7EC4\u4E2D\u62BD\u53D6\u4E00\u9879\u5143\u7D20\u8FD4\u56DE\u3002 | `["A", "B", "C"]` | `"B"` |\n| **SLICE** | \u622A\u53D6\u6570\u7EC4\u4E2D\u7684\u67D0\u4E00\u6BB5\u3002 | \u6570\u7EC4\uFF1A`["A", "B", "C"]`<br/>\u8D77\u70B9\uFF1A`1`<br/>\u6570\u91CF\uFF1A`2` | `["B", "C"]` |\n| **JOIN** | \u5C06\u6587\u672C\u578B\u6570\u7EC4\u7684\u6240\u6709\u5143\u7D20\u62FC\u63A5\uFF0C\u7531\u6307\u5B9A\u7B26\u53F7\u8FDE\u63A5\u4E3A\u5B57\u7B26\u4E32\u3002 | \u6570\u7EC4\uFF1A`["2026", "06", "10"]`<br/>\u8FDE\u63A5\u7B26\uFF1A`"-"` | `"2026-06-10"` |\n| **INDEX_OF** | \u8FD4\u56DE\u6307\u5B9A\u9879\u5728\u6570\u7EC4\u4E2D\u9996\u6B21\u51FA\u73B0\u7684\u7D22\u5F15\uFF08\u82E5\u4E0D\u5B58\u5728\uFF0C\u8FD4\u56DE `-1`\uFF09\u3002 | \u6570\u7EC4\uFF1A`["A", "B", "C"]`<br/>\u6307\u5B9A\u9879\uFF1A`"C"` | `2` |\n| **SEQUENCE** | \u751F\u6210\u4E00\u4E2A\u6307\u5B9A\u533A\u95F4\u548C\u6B65\u957F\u7684\u8FDE\u7EED\u6570\u5B57\u5E8F\u5217\u6570\u7EC4\uFF08\u542B\u5934\u4E0D\u542B\u5C3E\uFF09\u3002 | \u8D77\u70B9\uFF1A`0`<br/>\u7EC8\u70B9\uFF1A`10`<br/>\u6B65\u957F\uFF1A`2` | `[0, 2, 4, 6, 8]` |\n| **COALESCE** | \u6309\u81EA\u5DE6\u5411\u53F3\u987A\u5E8F\uFF0C\u8FD4\u56DE\u53C2\u6570\u6570\u7EC4\u4E2D\u7B2C\u4E00\u4E2A**\u975E\u7A7A (Not Null)** \u7684\u9879\u3002 | `[null, 1, 3, 2]` | `1` |\n| **ARRAY_MAX** | \u8FD4\u56DE\u6570\u5B57\u6570\u7EC4\u4E2D\u7684\u6700\u5927\u6570\u503C\u3002 | `[1, 2, 3]` | `3` |\n| **ARRAY_MIN** | \u8FD4\u56DE\u6570\u5B57\u6570\u7EC4\u4E2D\u7684\u6700\u5C0F\u6570\u503C\u3002 | `[1, 2, 3]` | `1` |\n| **ARRAY_SUM** | \u7D2F\u52A0\u6570\u5B57\u6570\u7EC4\u4E2D\u7684\u6240\u6709\u6570\u503C\u3002 | `[1, 2, 3]` | `6` |\n| **ARRAY_AVERAGE** | \u8BA1\u7B97\u5E76\u8FD4\u56DE\u6570\u5B57\u6570\u7EC4\u7684\u5E73\u5747\u503C\u3002 | `[1, 2, 3]` | `2` |\n| **ARRAY_CONCAT** | \u5C06\u4E24\u4E2A\u6570\u7EC4\u5408\u5E76\u3002 | \u6570\u7EC41\uFF1A`[1, 2]`<br/>\u6570\u7EC42\uFF1A`[2, 3]` | `[1, 2, 2, 3]` |\n| **UNIQUE** | \u53BB\u9664\u6570\u7EC4\u4E2D\u7684\u6240\u6709\u91CD\u590D\u9879\uFF0C\u8FD4\u56DE\u552F\u4E00\u503C\u65B0\u6570\u7EC4\u3002 | `[1, 2, 2, 3]` | `[1, 2, 3]` |\n| **ARRAY_MAPPING** | \u5BF9\u6570\u7EC4\u5185\u7684\u6BCF\u4E00\u4E2A\u5143\u7D20\u8FDB\u884C\u7279\u5B9A\u7684\u904D\u5386\u8F6C\u6362\uFF08Map\uFF09\u3002 | \u6570\u7EC4\uFF1A`[1, 2, 3]`<br/>\u5C55\u5F00\u5F0F\uFF1A`item * 10` | `[10, 20, 30]` |\n| **FILTER** | \u6309\u6307\u5B9A\u903B\u8F91\u6761\u4EF6\uFF0C\u8FC7\u6EE4\u5E76\u8FD4\u56DE\u7B26\u5408\u8981\u6C42\u7684\u5B50\u6570\u7EC4\uFF08Filter\uFF09\u3002 | \u6570\u7EC4\uFF1A`[1, 2, 3]`<br/>\u6761\u4EF6\uFF1A`item > 1` | `[2, 3]` |\n\n---\n\n## \u679A\u4E3E\n\n| \u51FD\u6570\u540D\u79F0 | \u529F\u80FD\u63CF\u8FF0 | \u793A\u4F8B\u8F93\u5165 | \u793A\u4F8B\u8F93\u51FA |\n|---|---|---|---|\n| **ENTRIES** | \u5C06\u679A\u4E3E\u7C7B\u578B\u8F6C\u6362\u4E3A\u6570\u7EC4\u3002 | \u679A\u4E3E\uFF1A`TaskStatus`<br/>\uFF08\u5305\u542B\u503C\uFF1A`NOT_STARTED, INPROGRESS, COMPLETED`\uFF09 | `[{"name": "NOT_STARTED"}, {"name": "INPROGRESS"}, {"name": "COMPLETED"}]` |\n\n---\n\n## \u65F6\u95F4\n\n\u5BF9\u9AD8\u7CBE\u5EA6\u7684\u5E26\u65F6\u533A\u65E5\u671F\u65F6\u95F4\u3001\u65F6\u95F4\u5DEE\u6267\u884C\u9AD8\u7EA7\u8FD0\u7B97\uFF1A\n\n| \u51FD\u6570\u540D\u79F0 | \u529F\u80FD\u63CF\u8FF0 | \u793A\u4F8B\u8F93\u5165 | \u793A\u4F8B\u8F93\u51FA |\n|---|---|---|---|\n| **GET_DATE_TIME** | \u4F9D\u636E\u6307\u5B9A\u7684\u5E74\u6708\u65E5\u65F6\u5206\u79D2\u6570\u503C\uFF0C\u7EC4\u88C5\u6210\u6807\u51C6\u7684\u5E26\u65F6\u533A DateTime \u65F6\u95F4\u6233\u3002 | \u5E74\uFF1A`2026`<br/>\u6708\uFF1A`6`<br/>\u65E5\uFF1A`10`<br/>\u65F6\uFF1A`12` | `2026-06-10T12:00:00.000+08:00` |\n| **DELTA** | \u65F6\u95F4\u7684\u589E\u51CF\u5E73\u79FB\u8FD0\u7B97\uFF08\u52A0/\u51CF\u7279\u5B9A\u7684\u5C0F\u65F6\u3001\u5206\u949F\u6216\u79D2\u6570\uFF09\u3002 | \u65F6\u95F4\uFF1A`13:38:00.000+08:00`<br/>\u8FD0\u7B97\uFF1A`\u52A0`<br/>\u65F6\uFF1A`1`<br/>\u5206\uFF1A`12` | `14:50:00.000+08:00` |\n| **DURATION** | \u8BA1\u7B97\u5E76\u8FD4\u56DE\u4E24\u4E2A\u7EDD\u5BF9\u65F6\u95F4\u70B9\u4E4B\u95F4\u7684\u7269\u7406\u95F4\u9694\u8DE8\u5EA6\uFF08\u652F\u6301\u6298\u7B97\u4E3A\u5E74\u3001\u5929\u3001\u65F6\u7B49\u5355\u4F4D\uFF09\u3002 | \u5F00\u59CB\uFF1A`2019-12-01`<br/>\u7ED3\u675F\uFF1A`2024-01-08`<br/>\u5355\u4F4D\uFF1A`\u5E74` | `5` |\n| **EXTRACT** | \u4ECE\u5B8C\u6574\u65F6\u95F4\u4E2D\u63D0\u53D6\u7279\u5B9A\u6210\u5206\uFF08\u82E5\u63D0\u53D6\u661F\u671F\u51E0\uFF0C\u8F93\u51FA `0~6` \u6574\u6570\uFF0C\u5176\u4E2D `0` \u8868\u793A\u661F\u671F\u65E5\uFF09\u3002 | \u65F6\u95F4\uFF1A`13:38:00.000+08:00`<br/>\u5355\u4F4D\uFF1A`\u65F6` | `13` |\n| **FORMAT_DATE_TIME** | \u65E5\u671F\u65F6\u95F4\u683C\u5F0F\u5316\u3002\u91C7\u7528\u6807\u51C6\u7684\u683C\u5F0F\u5360\u4F4D\u7B26\u5B9A\u5236\u5316\u8F93\u51FA\u65F6\u95F4\u6587\u672C\u3002\u683C\u5F0F\u5316\u89C4\u5219\u8BF7\u53C2\u8003[\u65F6\u95F4\u683C\u5F0F\u5316](https://day.js.org/docs/zh-CN/display/format) | \u65E5\u671F\u65F6\u95F4\uFF1A`2025-12-19T14:00:00.000+08:00`<br/>\u683C\u5F0F\uFF1A`"MMM. Do, YYYY"`<br/>\u8BED\u8A00: `"en"` | `"Dec 19th, 2025"` |\n| **TIME_AGO** | \u8BA1\u7B97\u65F6\u95F4\u70B9\u8DDD\u4ECA\u7684\u76F8\u5BF9\u65F6\u95F4\u63CF\u8FF0\uFF08\u76F8\u5BF9\u65F6\u95F4\u683C\u5F0F\u5316\uFF09\u3002 | \u65E5\u671F\u65F6\u95F4\uFF1A`2025-12-18T14:00:00.000+08:00`<br/>\u8BED\u8A00: `"en"`<br/>\u9690\u85CF\u540E\u7F00\uFF1A`true` | `"5 hours ago"` |\n| **FORMAT_DURATION** | \u65F6\u957F\u683C\u5F0F\u5316\uFF0C\u5C06\u7ED9\u5B9A\u7684\u65F6\u95F4\u8DE8\u5EA6\u6216\u6BEB\u79D2\u503C\u8F6C\u6362\u4E3A\u53EF\u8BFB\u7684\u6587\u672C\u3002 | \u65F6\u957F\uFF1A`1000000`<br/>\u5355\u4F4D\uFF1A`"\u6BEB\u79D2"`<br/>\u683C\u5F0F\uFF1A`"m\u5206s\u79D2"` | `"16\u520640\u79D2"` |\n\n<Callout>\n**Zion \u6807\u51C6 ISO 8601 \u65F6\u95F4\u6233\u683C\u5F0F\u8BF4\u660E\uFF1A** \n\u5BF9\u4E8E\u8F93\u51FA\u793A\u4F8B `2024-01-08T13:38:00.000+08:00`\uFF1A\n1. `2024-01-08`\uFF1A\u7269\u7406\u65E5\u671F\uFF08\u5E74-\u6708-\u65E5\uFF09\u3002\n2. `T`\uFF1A\u56FD\u9645\u6807\u51C6\u89C4\u5B9A\u7684\u65E5\u671F\u4E0E\u65F6\u95F4\u7684\u7269\u7406\u5206\u5272\u7B26\u3002\n3. `13:38:00.000`\uFF1A\u9AD8\u7CBE\u5EA6\u7684\u5177\u4F53\u65F6\u95F4\uFF08\u5C0F\u65F6:\u5206\u949F:\u79D2.\u6BEB\u79D2\uFF09\u3002\n4. `+08:00`\uFF1A\u8868\u793A\u8BE5\u65F6\u95F4\u662F\u5728\u4E16\u754C\u534F\u8C03\u65F6\uFF08UTC\uFF09\u57FA\u51C6\u4E0A\u52A0 8 \u5C0F\u65F6\u7684\u4E1C\u516B\u533A\u65F6\u95F4\uFF08\u5373\u5317\u4EAC\u65F6\u95F4\uFF09\u3002\n</Callout>\n\n---\n\n## \u5730\u7406\u4F4D\u7F6E\n\n\u5BF9\u5730\u7406\u5750\u6807\u6267\u884C\u6D4B\u5730\u5B66\u8DDD\u79BB\u8BA1\u7B97\u4E0E\u5750\u6807\u5C5E\u6027\u63D0\u53D6\uFF1A\n\n| \u51FD\u6570\u540D\u79F0 | \u529F\u80FD\u63CF\u8FF0 | \u793A\u4F8B\u8F93\u5165 | \u793A\u4F8B\u8F93\u51FA |\n|---|---|---|---|\n| **DISTANCE** | \u8BA1\u7B97\u5730\u7403\u8868\u9762\u4E24\u4E2A\u7ECF\u7EAC\u5EA6\u5750\u6807\u70B9\u4E4B\u95F4\u7684\u6D4B\u5730\u5B66\u7269\u7406\u8DDD\u79BB\uFF08\u652F\u6301\u7C73\u3001\u5343\u7C73\u3001\u82F1\u91CC\u7B49\u5355\u4F4D\uFF09\u3002 | \u4F4D\u7F6E1\uFF1A`[120.2934, 30.3150]`<br/>\u4F4D\u7F6E2\uFF1A`[120.2934, 31.3150]`<br/>\u5355\u4F4D\uFF1A`\u5343\u7C73` | `866` |\n| **GET_VALUE_FROM_GEO_POINT** | \u4ECE\u4E00\u4E2A\u590D\u5408\u7684\u7ECF\u7EAC\u5EA6\u5B9A\u4F4D\u70B9\u4E2D\uFF0C\u5355\u72EC\u63D0\u53D6\u7ECF\u5EA6\uFF08Longitude\uFF09\u6216\u7EAC\u5EA6\uFF08Latitude\uFF09\u503C\u3002 | \u4F4D\u7F6E\uFF1A`[120.2934, 30.3150]`<br/>\u7C7B\u578B\uFF1A`\u7EAC\u5EA6` | `30.3150` |\n| **GENERATE_GEO_POINT** | \u6839\u636E\u4F20\u5165\u7684\u7ECF\u5EA6\u548C\u7EAC\u5EA6\uFF0C\u751F\u6210\u6807\u51C6\u7684\u5730\u7406\u4F4D\u7F6E\u5750\u6807\u70B9\uFF08GeoJSON \u683C\u5F0F\uFF09\u3002 | \u7ECF\u5EA6\uFF1A`120.1`<br/>\u7EAC\u5EA6\uFF1A`119.2` | `{"type":"Point","coordinates":[120.1,119.2]}` |\n\n---\n\n## JSON\n\n\u5BF9 JSON \u6811\u7ED3\u6784\u548C\u8282\u70B9\u6267\u884C\u67E5\u8BE2\u4E0E\u6570\u636E\u63D0\u53D6\uFF1A\n\n| \u51FD\u6570\u540D\u79F0 | \u529F\u80FD\u63CF\u8FF0 | \u793A\u4F8B\u8F93\u5165 | \u793A\u4F8B\u8F93\u51FA |\n|---|---|---|---|\n| **JSON_EXTRACT_PATH** | \u91C7\u7528 JSON \u6811\u5F62\u8DEF\u5F84\u8BED\u6CD5\uFF0C\u4ECE JSON \u8282\u70B9\u4E2D\u7CBE\u51C6\u63D0\u53D6\u76EE\u6807\u6570\u636E\uFF08\u652F\u6301 JSONB \u5B57\u6BB5\u89E3\u6790\uFF09\u3002 | JSON\uFF1A`{"data": {"foo": "bar"}}`<br/>\u8DEF\u5F84\uFF1A`data.foo` | `"bar"` |\n'},{path:"/docs/design",title:"UI \u642D\u5EFA",url:"https://docs.functorz.com/docs/design",content:`---
|
|
14438
14453
|
title: "UI \u642D\u5EFA"
|
|
14439
14454
|
description: "\u5B66\u4E60\u5982\u4F55\u5728 Zion \u5E73\u53F0\u8FDB\u884C UI \u642D\u5EFA\uFF0C\u6DB5\u76D6\u5E03\u5C40\u539F\u7406\u3001\u7F16\u8F91\u5668\u64CD\u4F5C\u53CA\u7EC4\u4EF6\u53C2\u8003\u624B\u518C\u3002"
|
|
14440
14455
|
keywords: "Zion UI \u642D\u5EFA, \u7F16\u8F91\u5668, \u7EC4\u4EF6, \u5E03\u5C40, \u4F4E\u4EE3\u7801\u5E73\u53F0"
|
|
@@ -14872,15 +14887,6 @@ import { Callout } from 'nextra/components'
|
|
|
14872
14887
|
**\u91CD\u8981\u63D0\u793A**\uFF1A\u91CD\u6784\u5347\u7EA7\u4EC5\u4F5C\u7528\u4E8E**\u7F16\u8F91\u5668\u53CA\u9884\u89C8\u73AF\u5883**\u3002\u53EA\u8981\u60A8\u4E0D\u70B9\u51FB\u201C\u6B63\u5F0F\u53D1\u5E03\u201D\uFF0C\u60A8\u73B0\u6709\u7684\u7EBF\u4E0A\u7248\u672C\u5C06\u7EF4\u6301\u539F\u6837\uFF0C\u7EDD\u5BF9\u4E0D\u53D7\u4EFB\u4F55\u5F71\u54CD\u3002
|
|
14873
14888
|
</Callout>
|
|
14874
14889
|
|
|
14875
|
-
### \u{1F4C5} \u8FC1\u79FB\u5347\u7EA7\u65F6\u95F4\u8868
|
|
14876
|
-
|
|
14877
|
-
\u4E3A\u4E86\u8BA9\u60A8\u6709\u5145\u5206\u7684\u65F6\u95F4\u8FDB\u884C\u6D4B\u8BD5\u4E0E\u9002\u914D\uFF0C\u672C\u6B21\u7EC4\u4EF6\u7CFB\u7EDF\u5347\u7EA7\u5C06\u5206\u9636\u6BB5\u9010\u6B65\u63A8\u884C\uFF1A
|
|
14878
|
-
|
|
14879
|
-
* **\u9636\u6BB5 1\uFF1A\u5185\u6D4B\u542F\u52A8\uFF082026\u5E745\u67081\u65E5\uFF09** \u2014 \u5F00\u542F\u5185\u6D4B\u4F53\u9A8C\uFF0C\u652F\u6301\u5F00\u53D1\u8005\u4E3B\u52A8\u8FDB\u884C\u65E7\u9879\u76EE\u8FC1\u79FB\u6D4B\u8BD5\u3002
|
|
14880
|
-
* **\u9636\u6BB5 2\uFF1A\u5168\u65B0\u9879\u76EE\u9ED8\u8BA4\u542F\u7528\uFF082026\u5E745\u670813\u65E5\uFF09** \u2014 \u6240\u6709\u65B0\u521B\u5EFA\u7684\u9879\u76EE\u5C06\u9ED8\u8BA4\u91C7\u7528\u5168\u65B0\u5347\u7EA7\u7684\u7EC4\u4EF6\u7CFB\u7EDF\u3002
|
|
14881
|
-
* **\u9636\u6BB5 3\uFF1A\u514D\u8D39\u7248\u9879\u76EE\u7EDF\u4E00\u8FC1\u79FB\uFF082026\u5E746\u67083\u65E5\uFF09** \u2014 \u5C4A\u65F6\u5C06\u7EDF\u4E00\u5C06\u6240\u6709\u514D\u8D39\u7248\u9879\u76EE\u5E73\u6ED1\u8FC1\u79FB\u81F3\u65B0\u7248\u7EC4\u4EF6\u7CFB\u7EDF\u3002
|
|
14882
|
-
* **\u9636\u6BB5 4\uFF1A\u5168\u91CF\u9879\u76EE\u8FC1\u79FB\uFF08\u65F6\u95F4\u5F85\u5B9A\uFF09** \u2014 \u5C06\u89C6\u9636\u6BB5 3 \u7684\u8FD0\u884C\u72B6\u51B5\uFF0C\u51B3\u5B9A\u5E76\u516C\u5E03\u4ED8\u8D39\u7248\u7B49\u5176\u4ED6\u6240\u6709\u9879\u76EE\u7684\u6700\u7EC8\u7EDF\u4E00\u8FC1\u79FB\u65F6\u95F4\u3002
|
|
14883
|
-
|
|
14884
14890
|
---
|
|
14885
14891
|
|
|
14886
14892
|
## \u{1F680} \u6838\u5FC3\u5347\u7EA7\u80FD\u529B
|
|
@@ -14910,9 +14916,20 @@ import { Callout } from 'nextra/components'
|
|
|
14910
14916
|
- **\u89C6\u9891\u4E0E HTML \u589E\u5F3A**\uFF1A\u89C6\u9891\u7EC4\u4EF6\u652F\u6301\u4E0D\u900F\u660E\u5EA6\u8C03\u6574\uFF0C\u53EF\u4E0E\u80CC\u666F\u5B8C\u7F8E\u878D\u5408\uFF1BHTML \u7EC4\u4EF6\u5219\u5927\u5E45\u6269\u5C55\u4E86\u6837\u5F0F\u914D\u7F6E\u9879\uFF08\u5706\u89D2\u3001\u8FB9\u6846\u3001\u5149\u6807\u6837\u5F0F\u7B49\uFF09\u3002
|
|
14911
14917
|
|
|
14912
14918
|
### 5. \u{1F4CA} \u6570\u636E\uFF1A\u66F4\u4E13\u4E1A\u7684\u914D\u7F6E
|
|
14913
|
-
|
|
14914
|
-
|
|
14915
|
-
|
|
14919
|
+
**\u9690\u85CF\u914D\u7F6E\u516C\u5F0F\u5316**\uFF1A\u5C06\u4EE5\u5F80\u9690\u85CF\u8F83\u6DF1\u7684\u96F6\u6563\u914D\u7F6E\u79FB\u9664\uFF0C\u5E76\u7528\u65B0\u589E\u7684**\u516C\u5F0F**\u8FDB\u884C\u7EDF\u4E00\u66FF\u4EE3\uFF1A
|
|
14920
|
+
#### \u6570\u7EC4\u7684\u6620\u5C04
|
|
14921
|
+
- \u7528 ARRAY_MAPPING \u66FF\u6362\u3002
|
|
14922
|
+
- \u5728\u8FC7\u6EE4\u6761\u4EF6\u4E2D\u4F7F\u7528 ARRAY_MAPPING \u6216 ARRAY_FILTER \u65F6\uFF0C\u4E0D\u5141\u8BB8\u6DFB\u52A0\u201C\u8868\u6570\u636E\u201D\u3002
|
|
14923
|
+
#### \u65E5\u671F\u65F6\u95F4\u3001\u65E5\u671F\u3001\u65F6\u95F4\u7684\u683C\u5F0F\u5316
|
|
14924
|
+
- \u7ECF\u8FC7\u7684\u65F6\u95F4\uFF1A\u7528\u516C\u5F0F TIME_AGO \u66FF\u6362\u3002
|
|
14925
|
+
- \u5176\u4ED6\uFF1A\u7528\u516C\u5F0F FORMAT_DATE_TIME \u66FF\u6362\u3002
|
|
14926
|
+
#### \u5F53\u524D\u65E5\u671F\u65F6\u95F4\u7684\u52A0\u51CF
|
|
14927
|
+
- \u201C\u5F53\u524D\u65E5\u671F\u65F6\u95F4\u201D\u4E0D\u518D\u652F\u6301\u70B9\u5F00\u914D\u7F6E\uFF0C\u5747\u7528\u516C\u5F0F DELTA \u66FF\u4EE3
|
|
14928
|
+
- \u6240\u6709\u5E26\u201C\u683C\u5F0F\u201D\u914D\u7F6E\u7684\uFF0C\u5E76\u4E14\u7528\u6237\u9009\u62E9\u4E86\u67D0\u4E2A\u683C\u5F0F\u7684\uFF0C\u90FD\u5728\u5916\u9762\u5957\u4E00\u4E2A\u516C\u5F0F FORMAT_DATE_TIME\u3002\u5305\u62EC\uFF1A\u5F53\u524D\u65E5\u671F\u65F6\u95F4\u3001DELTA\u548CGET_DATE_TIME\u3002
|
|
14929
|
+
#### \u6574\u6570\u3001\u5C0F\u6570\u7684\u683C\u5F0F\u5316
|
|
14930
|
+
- \u4E24\u4E2A\u5012\u8BA1\u65F6\uFF1A\u66FF\u6362\u4E3A FORMAT_DURATION
|
|
14931
|
+
- \u8DDD\u79BB\uFF1A\u66FF\u6362\u4E3A\u6761\u4EF6\u6570\u636E\uFF1AIF(\u8DDD\u79BB < 1000,ROUND(\u8DDD\u79BB, 1) + "\u7C73",ROUND(\u8DDD\u79BB / 1000, 2) + "\u516C\u91CC"))
|
|
14932
|
+
- \u5343\u4F4D\u5206\u9694\uFF1A\u66FF\u6362\u4E3A FORMAT_NUMBER
|
|
14916
14933
|
|
|
14917
14934
|
---
|
|
14918
14935
|
|
|
@@ -14929,6 +14946,7 @@ import { Callout } from 'nextra/components'
|
|
|
14929
14946
|
| **\u56FE\u7247\u7EC4\u4EF6\u89E6\u53D1\u975E\u7A7A\u6821\u9A8C\u62A5\u9519** | \u56FE\u7247\u7EC4\u4EF6\u65B0\u589E\u4E86\u975E\u7A7A\u7EA6\u675F\u3002 | \u65B0\u7248\u56FE\u7247\u7EC4\u4EF6\u5BF9\u914D\u7F6E\u548C\u7ED1\u5B9A\u5173\u7CFB\u8FDB\u884C\u4E86\u975E\u7A7A\u6821\u9A8C\u3002\u8BF7\u68C0\u67E5\u53D7\u5F71\u54CD\u7684\u56FE\u7247\u7EC4\u4EF6\uFF0C\u4E3A\u5176\u914D\u7F6E\u9ED8\u8BA4\u56FE\u6216\u786E\u4FDD\u6570\u636E\u7ED1\u5B9A\uFF08Data Binding\uFF09\u7684\u6E90\u6570\u636E\u975E\u7A7A\u3002 |
|
|
14930
14947
|
| **\u7EC4\u4EF6\u5C3A\u5BF8\u4E0E\u5B9E\u9645\u914D\u7F6E\u4E0D\u5339\u914D** | \u7EC4\u4EF6\u914D\u7F6E\u4E86\u201C\u6700\u5C0F\u5C3A\u5BF8\u201D\u9650\u5236\uFF0C\u5BFC\u81F4\u5B9E\u9645\u6E32\u67D3\u4E0E\u8BBE\u7F6E\u503C\u4EA7\u751F\u504F\u5DEE\u3002 | \u5EFA\u8BAE\u5728\u7F16\u8F91\u5668\u5C5E\u6027\u9762\u677F\u4E2D\uFF0C\u91CD\u65B0\u5207\u6362\u4E00\u4E0B\u771F\u5B9E\u5C3A\u5BF8\u7684\u5355\u4F4D\uFF08\u5982\u5728 \`px\` \u4E0E \`rpx\` \u7B49\u5355\u4F4D\u95F4\u5207\u6362\uFF09\uFF0C\u5F3A\u5236\u8BA9\u7F16\u8F91\u5668\u5237\u65B0\u914D\u7F6E\u5373\u53EF\u3002 |
|
|
14931
14948
|
| **\u8DE8\u9875\u9762\u64CD\u4F5C\u7EC4\u4EF6\u62A5\u9519** | \u884C\u4E3A\u4E2D\u914D\u7F6E\u4E86\u8DE8\u9875\u9762\u63A7\u5236\u7EC4\u4EF6\u7684\u884C\u4E3A\uFF08\u4F8B\u5982\u5728 A \u9875\u9762\u89E6\u53D1\u884C\u4E3A\u53BB\u5237\u65B0 B \u9875\u9762\u7684\u7EC4\u4EF6\uFF09\u3002 | \u65B0\u7248\u7EC4\u4EF6\u7CFB\u7EDF**\u4E0D\u652F\u6301\u8DE8\u9875\u9762\u64CD\u4F5C\u7EC4\u4EF6**\u3002\u8BF7\u91CD\u65B0\u68B3\u7406\u60A8\u7684\u4EA4\u4E92\u94FE\u8DEF\uFF0C\u786E\u4FDD\u6240\u6709\u7EC4\u4EF6\u64CD\u4F5C\u884C\u4E3A\uFF08\u5982\u5237\u65B0\u3001\u663E\u793A/\u9690\u85CF\uFF09\u4EC5\u5728\u540C\u4E00\u4E2A\u9875\u9762\u5185\u95ED\u73AF\u3002 |
|
|
14949
|
+
| **\u7531\u4E8E\u539F\u6570\u636E\u4FEE\u6539\u5BFC\u81F4\u6570\u636E\u7ED1\u5B9A\u4E2D\u51FA\u73B0\u9519\u8BEF\uFF0C\u8BF7\u5220\u9664\u540E\u91CD\u65B0\u914D\u7F6E** | \u8FC1\u79FB\u540E\u7C7B\u578B\u6821\u9A8C\u66F4\u52A0\u4E25\u683C | \u70B9\u51FB\u53BB\u4FEE\u590D\u8FDB\u884C\u91CD\u65B0\u7ED1\u5B9A\u914D\u7F6E |
|
|
14932
14950
|
|
|
14933
14951
|
---
|
|
14934
14952
|
|
|
@@ -14937,21 +14955,15 @@ import { Callout } from 'nextra/components'
|
|
|
14937
14955
|
#### Q1\uFF1A\u5347\u7EA7\u7EC4\u4EF6\u7CFB\u7EDF\u540E\uFF0C\u4F1A\u5F71\u54CD\u6211\u7EBF\u4E0A\u6B63\u5728\u8FD0\u884C\u7684\u5C0F\u7A0B\u5E8F\u6216\u7F51\u9875\u5E94\u7528\u5417\uFF1F
|
|
14938
14956
|
**\u5B8C\u5168\u4E0D\u5F71\u54CD\u3002** \u672C\u6B21\u91CD\u6784\u5347\u7EA7\u4EC5\u4F5C\u7528\u4E8E\u7F16\u8F91\u5668\u548C\u9884\u89C8\u6D4B\u8BD5\u73AF\u5883\u3002\u53EA\u8981\u60A8\u4E0D\u70B9\u51FB\u201C\u6B63\u5F0F\u53D1\u5E03\u201D\u6309\u94AE\uFF0C\u60A8\u7EBF\u4E0A\u6B63\u5728\u8FD0\u884C\u7684\u7248\u672C\u5C31\u4E0D\u4F1A\u6709\u4EFB\u4F55\u53D8\u52A8\uFF0C\u98CE\u9669\u5DF2\u8FDB\u884C\u5F7B\u5E95\u7684\u7269\u7406\u9694\u79BB\u3002
|
|
14939
14957
|
|
|
14940
|
-
#### Q2\uFF1A\
|
|
14941
|
-
\u8FD9\u662F\u56E0\u4E3A\u65B0\u7248\u7EC4\u4EF6\u7CFB\u7EDF\u5BF9\u56FE\u7247\u7EC4\u4EF6\u5F15\u5165\u4E86**\u975E\u7A7A\u6821\u9A8C**\u3002\u5982\u679C\u60A8\u7684\u56FE\u7247\u7EC4\u4EF6\u5728\u65E7\u7248\u4E2D\u6CA1\u6709\u8BBE\u7F6E\u9ED8\u8BA4\u56FE\u7247\uFF0C\u4E14\u6CA1\u6709\u8FDB\u884C\u6709\u6548\u7684\u6570\u636E\u7ED1\u5B9A\uFF0C\u5C31\u4F1A\u89E6\u53D1\u6B64\u62A5\u9519\u3002\u60A8\u53EA\u9700\u5728\u5C5E\u6027\u9762\u677F\u4E2D\u914D\u7F6E\u9ED8\u8BA4\u56FE\uFF0C\u6216\u786E\u4FDD\u5176\u7ED1\u5B9A\u7684\u6570\u636E\u975E\u7A7A\u5373\u53EF\u6D88\u9664\u62A5\u9519\u3002
|
|
14942
|
-
|
|
14943
|
-
#### Q3\uFF1A\u5347\u7EA7\u540E\u6211\u8FD8\u80FD\u7528\u884C\u4E3A\u53BB\u63A7\u5236\u5176\u4ED6\u9875\u9762\u7684\u7EC4\u4EF6\u5417\uFF1F
|
|
14958
|
+
#### Q2\uFF1A\u5347\u7EA7\u540E\u6211\u8FD8\u80FD\u7528\u884C\u4E3A\u53BB\u63A7\u5236\u5176\u4ED6\u9875\u9762\u7684\u7EC4\u4EF6\u5417\uFF1F
|
|
14944
14959
|
**\u4E0D\u80FD\u3002** \u4E3A\u4E86\u4FDD\u969C\u903B\u8F91\u6267\u884C\u7684\u9AD8\u6548\u6027\u4E0E\u53EF\u9760\u6027\uFF0C\u65B0\u7248\u67B6\u6784\u660E\u786E**\u4E0D\u652F\u6301\u8DE8\u9875\u9762\u64CD\u4F5C\u7EC4\u4EF6**\uFF08\u4F8B\u5982\u901A\u8FC7\u884C\u4E3A\u76F4\u63A5\u5237\u65B0\u5176\u4ED6\u9875\u9762\u7684\u5BB9\u5668\uFF09\u3002\u5EFA\u8BAE\u60A8\u901A\u8FC7\u8BBE\u7F6E**\u5BA2\u6237\u7AEF\u53D8\u91CF**\u6216\u4F20\u9012**\u9875\u9762\u5165\u53C2**\u7684\u65B9\u5F0F\u6765\u5B9E\u73B0\u8DE8\u9875\u9762\u6570\u636E\u901A\u4FE1\u4E0E\u903B\u8F91\u8054\u52A8\u3002
|
|
14945
14960
|
|
|
14946
|
-
####
|
|
14961
|
+
#### Q3\uFF1A\u4E3A\u4EC0\u4E48\u6211\u7684\u5730\u56FE\u7EC4\u4EF6\u63D0\u793A\u591A\u6807\u8BB0\u70B9\u914D\u7F6E\u9519\u8BEF\uFF0C\u4F46\u6211\u660E\u660E\u6CA1\u6709\u5F00\u542F\u5B83\uFF1F
|
|
14947
14962
|
\u8FD9\u5C5E\u4E8E\u5386\u53F2\u6B8B\u7559\u914D\u7F6E\u5F15\u8D77\u7684\u6821\u9A8C\u51B2\u7A81\u3002\u5982\u679C\u8BE5\u5730\u56FE\u7EC4\u4EF6\u5728\u65E7\u7248\u672C\u4E2D\u201C\u66FE\u7ECF\u5F00\u542F\u8FC7\u53C8\u5173\u95ED\u8FC7\u201D\uFF0C\u5E95\u5C42\u4ECD\u7136\u4FDD\u5B58\u4E86\u76F8\u5173\u6570\u636E\u3002\u89E3\u51B3\u65B9\u6CD5\u975E\u5E38\u7B80\u5355\uFF0C\u53EA\u9700\u5728\u5C5E\u6027\u9762\u677F\u4E2D\u627E\u5230\u8BE5\u5730\u56FE\u7EC4\u4EF6\uFF0C\u91CD\u65B0\u624B\u52A8\u5F00\u542F\u518D\u5173\u95ED\u4E00\u6B21\u201C\u591A\u6807\u8BB0\u70B9\u8BBE\u7F6E\u9879\u201D\u5373\u53EF\u3002
|
|
14948
14963
|
|
|
14949
|
-
####
|
|
14950
|
-
\
|
|
14951
|
-
|
|
14952
|
-
#### Q6\uFF1A\u65B0\u7248\u7EC4\u4EF6\u7CFB\u7EDF\u5982\u679C\u7528\u8D77\u6765\u5F88\u4E0D\u4E60\u60EF\uFF0C\u6216\u8005\u9047\u5230\u4E25\u91CD Bug \u65E0\u6CD5\u7F16\u8F91\uFF0C\u53EF\u4EE5\u9000\u56DE\u65E7\u7248\u5417\uFF1F
|
|
14953
|
-
**\u652F\u6301\u3002** \u5982\u679C\u60A8\u5728\u5347\u7EA7\u540E\u9047\u5230\u4E25\u91CD\u963B\u788D\u6B63\u5E38\u5F00\u53D1\u7684\u5F02\u5E38\uFF0C\u8BF7\u8054\u7CFB\u6211\u4EEC\uFF0C\u6211\u4EEC\u4F1A\u5E2E\u60A8\u624B\u52A8\u56DE\u6EDA\u81F3\u8FC1\u79FB\u524D\u7684\u72B6\u6001\u3002\u4F46\u8BF7\u6CE8\u610F\uFF1A**\u56DE\u6EDA\u5C06\u5F7B\u5E95\u6E05\u9664\u60A8\u5347\u7EA7\u4E4B\u540E\u5728\u7F16\u8F91\u5668\u91CC\u8FDB\u884C\u7684\u6240\u6709\u65B0\u589E\u548C\u4FEE\u6539**\uFF0C\u5EFA\u8BAE\u8054\u7CFB\u56DE\u6EDA\u524D\u5148\u505A\u597D\u8BB0\u5F55\u3002
|
|
14954
|
-
`},{path:"/docs/design/guide/studio_basics",title:"\u9875\u9762\u4E0E\u7EC4\u4EF6\u57FA\u7840\u64CD\u4F5C",url:"https://docs.functorz.com/docs/design/guide/studio_basics",content:`---
|
|
14964
|
+
#### Q4\uFF1A\u4E3A\u4EC0\u4E48\u6211\u627E\u4E0D\u5230\u4E4B\u524D\u914D\u7F6E\u7684\u5F39\u7A97\u4E86\uFF1F
|
|
14965
|
+
\u4E3A\u4E86\u63D0\u5347\u5F00\u53D1\u6548\u7387\uFF0C\u6211\u4EEC\u5BF9\u5F39\u7A97\u529F\u80FD\u8FDB\u884C\u4E86\u5347\u7EA7\u3002\u539F\u6709\u7684\u5F39\u7A97\u7EC4\u4EF6\u5DF2\u8F6C\u5316\u4E3A\u201C\u6761\u4EF6\u5BB9\u5668\u201D\uFF0C\u4E0D\u505A\u6539\u53D8\uFF0C\u5B83\u4F9D\u7136\u6709\u539F\u6765\u5F39\u7A97\u7684\u6548\u679C\u3002
|
|
14966
|
+
\u5347\u7EA7\u540E\u7684\u5F39\u7A97\u652F\u6301\u914D\u7F6E\u72EC\u7ACB\u7684\u5165\u53C2\u3001\u51FA\u53C2\u53CA\u6570\u636E\u6E90\uFF0C\u5B9E\u73B0\u4E86\u5F39\u7A97\u7684\u903B\u8F91\u590D\u7528\u3002\u73B0\u5728\uFF0C\u60A8\u53EF\u4EE5\u521B\u5EFA\u4E00\u4E2A\u5F39\u7A97\u5E76\u5728\u591A\u4E2A\u573A\u666F\u8C03\u7528\uFF0C\u65E0\u9700\u518D\u91CD\u590D\u914D\u7F6E\u3002`},{path:"/docs/design/guide/studio_basics",title:"\u9875\u9762\u4E0E\u7EC4\u4EF6\u57FA\u7840\u64CD\u4F5C",url:"https://docs.functorz.com/docs/design/guide/studio_basics",content:`---
|
|
14955
14967
|
title: \u9875\u9762\u4E0E\u7EC4\u4EF6\u57FA\u7840\u64CD\u4F5C
|
|
14956
14968
|
description: \u9009\u62E9\u5BA2\u6237\u7AEF\u540E\uFF0C\u5728 Zion \u7F16\u8F91\u5668\u4E2D\u5B8C\u6210\u65B0\u5EFA\u9875\u9762\u3001\u6DFB\u52A0\u7EC4\u4EF6\u548C\u65B0\u5EFA\u5F39\u7A97\u7684\u57FA\u7840\u64CD\u4F5C\u3002
|
|
14957
14969
|
keywords: [\u9875\u9762, \u7EC4\u4EF6, \u65B0\u5EFA\u9875\u9762, \u6DFB\u52A0\u7EC4\u4EF6, \u65B0\u5EFA\u5F39\u7A97, \u5BA2\u6237\u7AEF, Zion]
|