mokelay-editor 0.0.3 → 0.0.5
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/assets/EditorPanel-CF3kVQ21.css +1 -0
- package/assets/EditorPanel-CIQRB85C.js +1 -0
- package/assets/MPage-CMw0gXU4.js +1 -0
- package/assets/MPage.vue_vue_type_script_setup_true_lang-D5yGdSyf.js +1 -0
- package/assets/PreviewPanel-DUteH-hK.js +1 -0
- package/assets/block-advanced-BuKEuWQ4.js +1 -0
- package/assets/block-advanced-DfEsE7Tf.css +1 -0
- package/assets/block-chart-0eTcp5HJ.js +1 -0
- package/assets/block-chart-BDhOWgsD.css +1 -0
- package/assets/block-datasource-DIH8wAmJ.css +1 -0
- package/assets/block-datasource-_a7GVdwT.js +1 -0
- package/assets/block-editor-selector-Da_ew6E9.css +1 -0
- package/assets/block-editor-selector-niI9qUPh.js +72 -0
- package/assets/block-form-0t-EPu3N.css +1 -0
- package/assets/block-form-BEDK0U9Z.js +51 -0
- package/assets/echarts-BN_iJMI5.js +24 -0
- package/assets/{editorjs-hCuh8vdW.js → editorjs-CrGo22NX.js} +10 -10
- package/assets/element-plus-CD8wJz6b.js +1 -0
- package/assets/element-plus-Dit-l95b.css +1 -0
- package/assets/index-CTUsYCbZ.css +1 -0
- package/assets/index-DaLT-qTF.js +10 -0
- package/assets/vue-vendor-Dh3tbb7h.js +17 -0
- package/assets/zrender-CyMoNtco.js +29 -0
- package/index.html +19 -6
- package/package.json +1 -1
- package/assets/EditorPanel-C1sfyxYP.js +0 -1
- package/assets/EditorPanel-vQbiWj6F.css +0 -1
- package/assets/MForm-DHyGtILs.css +0 -1
- package/assets/MForm-IOgKE4fR.js +0 -50
- package/assets/MPage-DdQoXp86.css +0 -1
- package/assets/MPage-okwcd_fI.js +0 -1
- package/assets/MPage.vue_vue_type_script_setup_true_lang-BfUuzlf-.js +0 -51
- package/assets/PreviewPanel-BB0_i9aa.js +0 -1
- package/assets/index-CH5-XypS.css +0 -1
- package/assets/index-DKqdRiPk.js +0 -26
package/assets/MForm-IOgKE4fR.js
DELETED
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
var me=Object.defineProperty;var ye=(p,u,g)=>u in p?me(p,u,{enumerable:!0,configurable:!0,writable:!0,value:g}):p[u]=g;var h=(p,u,g)=>ye(p,typeof u!="symbol"?u+"":u,g);import{d as he,g as fe,w as D,n as J,h as ge,o as T,c as I,f as ve,F as be,k as ke,b as _e,u as we,s as Te,e as Ce,r as Ee,I as Ie,a6 as Fe,L as Le,C as S,z as Pe,ah as Ae,_ as Me}from"./index-DKqdRiPk.js";import{A as xe}from"./editorjs-hCuh8vdW.js";import{n as B,c as $e,M as Z,a as G,b as De,g as Se,d as V,e as Be,f as N,s as Ve,m as Q}from"./MPage.vue_vue_type_script_setup_true_lang-BfUuzlf-.js";import{h as Ze}from"./MPage.vue_vue_type_script_setup_true_lang-BfUuzlf-.js";const Ne={key:0,class:"ce-form-tool__editor-shell","data-testid":"form-editor-shell"},Re={key:1,class:"ce-form-tool__preview","data-testid":"preview-form-items"},Oe=he({__name:"MForm",props:{edit:{type:Boolean,default:!1},items:{default:()=>[]},onChange:{},onToolChange:{}},emits:["change"],setup(p,{expose:u,emit:g}){const W=new Set(["MPage","MForm","MFormItem","MEditorSelector"]),R=new Map,s=p,X=g,{t:Y,localeValue:O}=Ce(),k=Ee(null),C=Ie(()=>B(s.items));let i=null,F=!1,L=!1,v=null,_=null,c=b(C.value);function ee(){return typeof crypto<"u"&&typeof crypto.randomUUID=="function"?crypto.randomUUID().slice(0,10):Math.random().toString(36).slice(2,12)}function d(t){return t.replace(/&/g,"&").replace(/"/g,""").replace(/</g,"<").replace(/>/g,">")}function P(){return Object.keys(Se()).filter(t=>!W.has(t)&&!!V(t))}function A(t){return P().includes(t)}function te(){const t="MInput";return A(t)?t:P()[0]}function oe(t){var m;const r=V(t);if(!r)throw new Error(`MForm could not find a registered component for "${t}".`);const o=r.normalizeProps({...((m=r.createInitialProps)==null?void 0:m.call(r))??{},edit:!0});return{id:ee(),type:t,data:r.serialize(o)}}function re(t){const r=R.get(t);if(r)return r;const o=V(t);if(!o)throw new Error(`MForm could not create a form item tool for "${t}".`);class m{constructor({data:e,config:a}){h(this,"state");h(this,"wrapper",null);h(this,"contentRoot",null);h(this,"vueApp",null);h(this,"propertyDialog",null);h(this,"toolbarAlignTimer",null);h(this,"handleToolbarPointer",()=>{this.scheduleToolbarAlignment()});const n=typeof(a==null?void 0:a.edit)=="boolean"?a.edit:!0,l=Be(e==null?void 0:e.editor);this.state=Le(N({...e??{},edit:n,editor:l??oe(t)}))}static get toolbox(){return o.toolbox}render(){const e=document.createElement("div");e.className="mokelay-form-item-tool",e.dataset.toolName=t,e.dataset.testid=`form-item-tool-${t}`;const a=document.createElement("div");return a.className="mokelay-form-item-tool__content",e.appendChild(a),this.wrapper=e,this.contentRoot=a,e.addEventListener("mouseenter",this.handleToolbarPointer),e.addEventListener("mousemove",this.handleToolbarPointer),this.createPropertyDialog(),this.mountVueApp(),e}destroy(){var e,a,n;this.clearToolbarAlignTimer(),(e=this.wrapper)==null||e.removeEventListener("mouseenter",this.handleToolbarPointer),(a=this.wrapper)==null||a.removeEventListener("mousemove",this.handleToolbarPointer),this.unmountVueApp(),(n=this.propertyDialog)==null||n.remove(),this.propertyDialog=null,this.contentRoot=null,this.wrapper=null}save(){return Ve(this.state)}renderSettings(){return this.getPropertyFields().length?{icon:'<svg width="17" height="17" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M19.14 12.94C19.18 12.63 19.2 12.32 19.2 12C19.2 11.68 19.18 11.36 19.13 11.06L21.11 9.51C21.29 9.37 21.34 9.11 21.23 8.9L19.35 5.64C19.24 5.43 18.99 5.35 18.77 5.42L16.44 6.17C15.96 5.8 15.44 5.48 14.87 5.23L14.51 2.75C14.48 2.52 14.28 2.35 14.04 2.35H10.28C10.04 2.35 9.84 2.52 9.81 2.75L9.45 5.23C8.88 5.48 8.36 5.81 7.88 6.17L5.55 5.42C5.33 5.35 5.08 5.43 4.97 5.64L3.09 8.9C2.98 9.11 3.03 9.37 3.21 9.51L5.19 11.06C5.14 11.36 5.12 11.68 5.12 12C5.12 12.32 5.14 12.64 5.19 12.94L3.21 14.49C3.03 14.63 2.98 14.89 3.09 15.1L4.97 18.36C5.08 18.57 5.33 18.65 5.55 18.58L7.88 17.83C8.36 18.2 8.88 18.52 9.45 18.77L9.81 21.25C9.84 21.48 10.04 21.65 10.28 21.65H14.04C14.28 21.65 14.48 21.48 14.51 21.25L14.87 18.77C15.44 18.52 15.96 18.19 16.44 17.83L18.77 18.58C18.99 18.65 19.24 18.57 19.35 18.36L21.23 15.1C21.34 14.89 21.29 14.63 21.11 14.49L19.14 12.94ZM12.16 15.6C10.17 15.6 8.56 13.99 8.56 12C8.56 10.01 10.17 8.4 12.16 8.4C14.15 8.4 15.76 10.01 15.76 12C15.76 13.99 14.15 15.6 12.16 15.6Z" fill="currentColor"/></svg>',title:S.t("editor.properties"),onActivate:()=>{this.openPropertyDialog()},closeOnActivate:!0}:[]}mountVueApp(){if(!this.contentRoot)return;const e=a=>{Object.assign(this.state,N(a,this.state.variableName))};this.unmountVueApp(),this.vueApp=Pe({render:()=>Ae(Z,{...this.state,edit:!0,onToolChange:e,onChange:e})}),this.vueApp.mount(this.contentRoot)}unmountVueApp(){var e;(e=this.vueApp)==null||e.unmount(),this.vueApp=null}clearToolbarAlignTimer(){this.toolbarAlignTimer!==null&&(window.clearTimeout(this.toolbarAlignTimer),this.toolbarAlignTimer=null)}scheduleToolbarAlignment(){this.clearToolbarAlignTimer(),this.toolbarAlignTimer=window.setTimeout(()=>{this.alignToolbarToFormItem()},0)}alignToolbarToFormItem(){this.toolbarAlignTimer=null;const e=this.wrapper;if(!e)return;const a=e.closest(".ce-block"),n=e.closest(".codex-editor"),l=n==null?void 0:n.querySelector(":scope > .ce-toolbar"),y=l==null?void 0:l.querySelector(".ce-toolbar__plus");if(!a||!l||!y)return;const pe=a.getBoundingClientRect(),K=e.getBoundingClientRect(),ue=y.getBoundingClientRect().height||26,de=a.offsetTop+(K.top-pe.top)+(K.height-ue)/2;l.style.top=`${Math.max(0,Math.round(de))}px`}getPropertyFields(){var e;return((e=Q.propertyPanel)==null?void 0:e.fields)??[]}createPropertyDialog(){var l;if(!this.wrapper||!this.getPropertyFields().length)return;const e=document.createElement("dialog");e.className="mokelay-editor-tool__property-dialog",e.dataset.testid="tool-property-dialog",e.dataset.toolName="MFormItem";const a=((l=Q.propertyPanel)==null?void 0:l.title)||S.t("editor.propertyDialogTitle"),n=this.getPropertyFields().map(y=>this.renderPropertyField(y)).join("");e.innerHTML=`
|
|
2
|
-
<form method="dialog" class="mokelay-editor-tool__property-panel" data-testid="tool-property-panel">
|
|
3
|
-
<div class="mokelay-editor-tool__property-header">
|
|
4
|
-
<h3 class="mokelay-editor-tool__property-title" data-testid="tool-property-title">${d(a)}</h3>
|
|
5
|
-
<button type="submit" class="mokelay-editor-tool__property-close" data-testid="tool-property-close">${d(S.t("editor.close"))}</button>
|
|
6
|
-
</div>
|
|
7
|
-
<div class="mokelay-editor-tool__property-body" data-testid="tool-property-body">
|
|
8
|
-
${n}
|
|
9
|
-
</div>
|
|
10
|
-
</form>
|
|
11
|
-
`,this.wrapper.appendChild(e),this.propertyDialog=e,this.bindPropertyInputs()}openPropertyDialog(){this.propertyDialog&&(this.syncPropertyDialogValues(),this.propertyDialog.open||this.propertyDialog.showModal())}syncPropertyDialogValues(){this.propertyDialog&&this.propertyDialog.querySelectorAll("[data-property-key]").forEach(e=>{const a=e.dataset.propertyKey;if(!a)return;const n=this.getPropertyFieldValue(a);if(e instanceof HTMLInputElement&&e.type==="checkbox"){e.checked=n===!0;return}e.value=typeof n=="string"?n:""})}updateProperty(e,a){Object.assign(this.state,N({...this.state,[e]:a,edit:!0},this.state.variableName))}getPropertyFieldValue(e){return this.state[e]}renderPropertyField(e){if(e.type==="checkbox")return`
|
|
12
|
-
<label class="mokelay-editor-tool__property-field mokelay-editor-tool__property-field--checkbox">
|
|
13
|
-
<input
|
|
14
|
-
class="mokelay-editor-tool__property-checkbox"
|
|
15
|
-
data-testid="tool-property-input-${e.key}"
|
|
16
|
-
data-property-key="${e.key}"
|
|
17
|
-
data-property-type="checkbox"
|
|
18
|
-
type="checkbox"
|
|
19
|
-
${this.getPropertyFieldValue(e.key)===!0?"checked":""}
|
|
20
|
-
/>
|
|
21
|
-
<span class="mokelay-editor-tool__property-label">${d(e.label)}</span>
|
|
22
|
-
</label>
|
|
23
|
-
`;if(e.type==="select"){const n=this.getPropertyFieldValue(e.key),l=(e.options??[]).map(y=>`
|
|
24
|
-
<option value="${d(y.value)}" ${n===y.value?"selected":""}>${d(y.label)}</option>
|
|
25
|
-
`).join("");return`
|
|
26
|
-
<label class="mokelay-editor-tool__property-field">
|
|
27
|
-
<span class="mokelay-editor-tool__property-label">${d(e.label)}</span>
|
|
28
|
-
<select
|
|
29
|
-
class="mokelay-editor-tool__property-input"
|
|
30
|
-
data-testid="tool-property-input-${e.key}"
|
|
31
|
-
data-property-key="${e.key}"
|
|
32
|
-
data-property-type="select"
|
|
33
|
-
>
|
|
34
|
-
${l}
|
|
35
|
-
</select>
|
|
36
|
-
</label>
|
|
37
|
-
`}const a=this.getPropertyFieldValue(e.key);return`
|
|
38
|
-
<label class="mokelay-editor-tool__property-field">
|
|
39
|
-
<span class="mokelay-editor-tool__property-label">${d(e.label)}</span>
|
|
40
|
-
<input
|
|
41
|
-
class="mokelay-editor-tool__property-input"
|
|
42
|
-
data-testid="tool-property-input-${e.key}"
|
|
43
|
-
data-property-key="${e.key}"
|
|
44
|
-
data-property-type="text"
|
|
45
|
-
type="text"
|
|
46
|
-
value="${d(typeof a=="string"?a:"")}"
|
|
47
|
-
placeholder="${d(e.placeholder??"")}"
|
|
48
|
-
/>
|
|
49
|
-
</label>
|
|
50
|
-
`}bindPropertyInputs(){this.propertyDialog&&this.propertyDialog.querySelectorAll("[data-property-key]").forEach(e=>{const a=e instanceof HTMLInputElement?e.type==="checkbox"?"change":"input":"change";e.addEventListener(a,()=>{const n=e.dataset.propertyKey;n&&this.updateProperty(n,this.readPropertyInputValue(e))})})}readPropertyInputValue(e){return e instanceof HTMLInputElement&&e.type==="checkbox"?e.checked:e.value}}const w=m;return R.set(t,w),w}function ae(){return Object.fromEntries(P().map(t=>[t,{class:re(t),config:{edit:!0}}]))}function ne(t){var o;const r=(o=t.editor)==null?void 0:o.type;return r&&A(r)?r:te()}function ie(t,r){const o=ne(t);if(o)return{id:`form-item-${t.variableName||r}`,type:o,data:G(t)}}function b(t){return{blocks:t.map((r,o)=>ie(r,o)).filter(r=>r!==void 0)}}function E(t){return(Array.isArray(t.blocks)?t.blocks:[]).filter(o=>A(o.type)).map(o=>De(o.data)).filter(o=>o!==void 0)}function z(t,r){return JSON.stringify(t)===JSON.stringify(r)}function le(t){var m,w;const r=B(t),o={edit:s.edit,items:r.map(U=>G(U))};L=!0,(m=s.onToolChange)==null||m.call(s,o),(w=s.onChange)==null||w.call(s,o),X("change",o.items)}async function M(t){const r=E(c),o=E(t);c=b(o),!F&&!z(r,o)&&le(o)}function H(){_!==null&&(window.clearTimeout(_),_=null)}function f(){i&&(H(),_=window.setTimeout(async()=>{if(_=null,!!i)try{const t=await i.save();await M(t)}catch{}},0))}function se(){const t=k.value;t&&(j(),v=new MutationObserver(()=>{f()}),v.observe(t,{attributes:!0,characterData:!0,childList:!0,subtree:!0}),t.addEventListener("input",f),t.addEventListener("change",f),t.addEventListener("click",f))}function j(){const t=k.value;v==null||v.disconnect(),v=null,H(),t==null||t.removeEventListener("input",f),t==null||t.removeEventListener("change",f),t==null||t.removeEventListener("click",f)}async function x(){!s.edit||!k.value||i||(c=b(C.value),i=new xe({holder:k.value,placeholder:Y("form.placeholder"),tools:ae(),data:c,minHeight:0,i18n:{messages:Fe(O.value)},onChange:async()=>{if(!i)return;const t=await i.save();await M(t)}}),se())}async function $(){const t=i;if(t){i=null,j();try{const r=await t.save();c=b(E(r))}catch{c=b(C.value)}t.destroy()}}async function q(){await $(),await J(),await x()}async function ce(){if(!i)return c;const t=await i.save();return await M(t),c}return u({saveEditor:ce}),fe(async()=>{await x()}),D(()=>s.items,async t=>{if(L){L=!1;return}const r=B(t),o=E(c);z(r,o)||(F=!0,c=b(r),i&&await q(),F=!1)},{deep:!0}),D(O,async()=>{i&&await q()}),D(()=>s.edit,async t=>{if(t){await J(),await x();return}await $()}),ge(async()=>{await $()}),(t,r)=>(T(),I("div",{class:Te(["ce-form-tool",{"ce-form-tool--edit":p.edit}]),"data-testid":"editor-form-tool"},[p.edit?(T(),I("div",Ne,[ve("div",{ref_key:"holderRef",ref:k,class:"ce-form-tool__editor","data-testid":"form-editor-surface"},null,512)])):(T(),I("div",Re,[(T(!0),I(be,null,ke(C.value,(o,m)=>(T(),_e(Z,{key:`${o.variableName}-${m}`,edit:!1,"label-name":o.labelName,"variable-name":o.variableName,editor:o.editor?we($e)(o.editor):void 0,layout:o.layout},null,8,["label-name","variable-name","editor","layout"]))),128))]))],2))}}),Ue=Me(Oe,[["__scopeId","data-v-a3894c78"]]);export{Ue as default,Ze as mFormEditorTool};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
.ce-advance-input-tool[data-v-5ab6cc48]{position:relative}.ce-advance-input-tool__editor-shell[data-v-5ab6cc48],.ce-advance-input-tool__preview[data-v-5ab6cc48]{position:relative;display:flex;align-items:center;min-height:42px;width:100%;border:1px solid rgb(148 163 184 / .6);border-radius:10px;background:#fff}.ce-advance-input-tool__editor[data-v-5ab6cc48]{width:100%;min-height:42px;padding:9px 12px;white-space:pre;overflow-x:auto;overflow-y:hidden;line-height:22px;outline:none;cursor:text}.ce-advance-input-tool__preview[data-v-5ab6cc48]{padding:9px 12px;white-space:pre;overflow-x:auto;overflow-y:hidden}.ce-advance-input-tool__editor-shell[data-v-5ab6cc48]:focus-within{border-color:#6366f1;box-shadow:0 0 0 2px #6366f126}.ce-advance-input-tool__menu[data-v-5ab6cc48]{position:absolute;z-index:20;min-width:168px;padding:6px;border:1px solid rgb(226 232 240);border-radius:12px;background:#fff;box-shadow:0 16px 40px #0f172a2e}.ce-advance-input-tool__menu-item[data-v-5ab6cc48]{display:flex;width:100%;border:0;border-radius:8px;padding:8px 10px;background:transparent;color:#0f172a;cursor:pointer;text-align:left}.ce-advance-input-tool__menu-item[data-v-5ab6cc48]:hover{background:#f1f5f9}.ce-advance-input-tool__preview-token[data-v-5ab6cc48],.ce-advance-input-tool__token[data-v-5ab6cc48]{display:inline-flex;align-items:center;margin:0 2px;vertical-align:middle}.ce-advance-input-tool__token[data-v-5ab6cc48]{border-radius:10px;cursor:pointer}.ce-advance-input-tool__token[data-v-5ab6cc48]:hover{box-shadow:0 0 0 2px #6366f12e}.ce-advance-input-tool__token--unknown[data-v-5ab6cc48]{padding:2px 8px;background:#f8fafc;color:#475569;font-size:12px}.ce-advance-input-tool__dialog[data-v-5ab6cc48]{width:min(100%,480px);border:0;border-radius:16px;padding:0;box-shadow:0 24px 80px #0f172a52}.ce-advance-input-tool__dialog[data-v-5ab6cc48]::backdrop{background:#0f172a73}.ce-advance-input-tool__dialog-panel[data-v-5ab6cc48]{margin:0;padding:20px;background:#fff}.ce-advance-input-tool__dialog-header[data-v-5ab6cc48]{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.ce-advance-input-tool__dialog-title[data-v-5ab6cc48]{margin:0;color:#0f172a;font-size:18px;font-weight:600}.ce-advance-input-tool__dialog-close[data-v-5ab6cc48]{border:0;border-radius:10px;padding:8px 12px;background:#e2e8f0;color:#334155;cursor:pointer}.ce-advance-input-tool__dialog-body[data-v-5ab6cc48]{display:flex;flex-direction:column;gap:14px}.ce-advance-input-tool__dialog-field[data-v-5ab6cc48]{display:flex;flex-direction:column;gap:6px}.ce-advance-input-tool__dialog-field--checkbox[data-v-5ab6cc48]{flex-direction:row;align-items:center;gap:10px}.ce-advance-input-tool__dialog-label[data-v-5ab6cc48]{color:#334155;font-size:13px;font-weight:600}.ce-advance-input-tool__dialog-checkbox[data-v-5ab6cc48]{width:16px;height:16px;margin:0}.ce-advance-input-tool__dialog-input[data-v-5ab6cc48]{width:100%;border:1px solid rgb(148 163 184 / .65);border-radius:10px;padding:10px 12px;background:#fff;color:#0f172a;font-size:14px;line-height:20px}.ce-advance-input-tool__dialog-input[data-v-5ab6cc48]:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 2px #6366f126}.dark{background:#0f172a;border-color:#475569e6}.dark{background:#0f172a}.dark{background:#334155;color:#f1f5f9}.dark{background:#0f172a;color:#e2e8f0;border-color:#475569e6}.ce-advance-table-tool[data-v-6eb0809a]{width:100%;color:#0f172a}.ce-advance-table-tool__scroller[data-v-6eb0809a]{width:100%;overflow:auto;border:1px solid rgb(226 232 240);border-radius:8px;background:#fff}.ce-advance-table-tool__table[data-v-6eb0809a]{width:100%;min-width:520px;border-collapse:separate;border-spacing:0;font-size:14px;line-height:20px}.ce-advance-table-tool__cell[data-v-6eb0809a]{border-right:1px solid rgb(226 232 240);border-bottom:1px solid rgb(226 232 240);padding:10px 12px;background:#fff;text-align:left;vertical-align:middle;white-space:nowrap}.ce-advance-table-tool__cell[data-v-6eb0809a]:last-child{border-right:0}.ce-advance-table-tool__cell--header[data-v-6eb0809a]{position:sticky;top:0;z-index:3;background:#f8fafc;color:#334155;font-weight:600}.ce-advance-table-tool__cell--control[data-v-6eb0809a]{padding:10px;text-align:center}.ce-advance-table-tool__cell--fixed-left[data-v-6eb0809a],.ce-advance-table-tool__cell--fixed-right[data-v-6eb0809a]{z-index:2}.ce-advance-table-tool__cell--header.ce-advance-table-tool__cell--fixed-left[data-v-6eb0809a],.ce-advance-table-tool__cell--header.ce-advance-table-tool__cell--fixed-right[data-v-6eb0809a]{z-index:4}.ce-advance-table-tool__cell--fixed-left[data-v-6eb0809a]{box-shadow:1px 0 #e2e8f0}.ce-advance-table-tool__cell--fixed-right[data-v-6eb0809a]{box-shadow:-1px 0 #e2e8f0}.ce-advance-table-tool__row--selected .ce-advance-table-tool__cell[data-v-6eb0809a]{background:#eff6ff}.ce-advance-table-tool__checkbox[data-v-6eb0809a]{width:16px;height:16px;margin:0;vertical-align:middle;accent-color:rgb(37 99 235)}.ce-advance-table-tool__cell-token[data-v-6eb0809a]{display:inline-flex;align-items:center;margin:0 2px;vertical-align:middle}.ce-advance-table-tool__empty[data-v-6eb0809a]{color:#64748b;text-align:center}.dark{background:#1e293b;color:#f1f5f9}.dark{box-shadow:1px 0 #334155}.dark{box-shadow:-1px 0 #334155}.dark{background:#1e3a8a59}.ce-datasource-tool[data-v-b51983e4]{width:100%;border:1px solid rgb(226 232 240);border-radius:8px;background:#fff;color:#0f172a;font-size:14px;line-height:20px}.ce-datasource-tool__header[data-v-b51983e4]{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border-bottom:1px solid rgb(226 232 240)}.ce-datasource-tool__title[data-v-b51983e4]{font-size:15px;font-weight:650;color:#0f172a}.ce-datasource-tool__type-switch[data-v-b51983e4]{display:inline-grid;grid-template-columns:repeat(2,minmax(64px,1fr));overflow:hidden;border:1px solid rgb(203 213 225);border-radius:8px;background:#f8fafc}.ce-datasource-tool__type-button[data-v-b51983e4]{min-height:32px;border:0;border-right:1px solid rgb(203 213 225);padding:6px 12px;background:transparent;color:#475569;font:inherit;font-weight:600;cursor:pointer}.ce-datasource-tool__type-button[data-v-b51983e4]:last-child{border-right:0}.ce-datasource-tool__type-button--active[data-v-b51983e4]{background:#2563eb;color:#fff}.ce-datasource-tool__type-button[data-v-b51983e4]:disabled{cursor:default}.ce-datasource-tool__panel[data-v-b51983e4]{display:flex;flex-direction:column;gap:14px;padding:12px}.ce-datasource-tool__schema-panel[data-v-b51983e4]{display:flex;flex-direction:column;gap:12px;border-top:1px solid rgb(226 232 240);padding:12px}.ce-datasource-tool__generate-panel[data-v-b51983e4]{display:flex;flex-direction:column;gap:10px;border-top:1px solid rgb(226 232 240);padding:12px;background:#f8fafc}.ce-datasource-tool__schema-header[data-v-b51983e4]{display:flex;align-items:center;justify-content:space-between;gap:10px}.ce-datasource-tool__section-title[data-v-b51983e4]{color:#0f172a;font-size:14px;font-weight:700}.ce-datasource-tool__section-copy[data-v-b51983e4]{margin:2px 0 0;color:#64748b;font-size:13px}.ce-datasource-tool__generate-actions[data-v-b51983e4]{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.ce-datasource-tool__schema-summary[data-v-b51983e4]{color:#334155;font-size:13px;font-weight:600}.ce-datasource-tool__schema-search[data-v-b51983e4]{max-width:260px}.ce-datasource-tool__grid[data-v-b51983e4]{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(120px,.4fr);gap:10px}.ce-datasource-tool__field[data-v-b51983e4]{display:flex;min-width:0;flex-direction:column;gap:6px}.ce-datasource-tool__label[data-v-b51983e4],.ce-datasource-tool__list-title[data-v-b51983e4]{margin:0;color:#334155;font-size:13px;font-weight:650}.ce-datasource-tool__input[data-v-b51983e4],.ce-datasource-tool__textarea[data-v-b51983e4]{width:100%;min-width:0;border:1px solid rgb(148 163 184 / .65);border-radius:8px;background:#fff;color:#0f172a;font:inherit}.ce-datasource-tool__input[data-v-b51983e4]{height:36px;padding:7px 10px}.ce-datasource-tool__textarea[data-v-b51983e4]{resize:vertical;padding:9px 10px}.ce-datasource-tool__textarea--json[data-v-b51983e4]{min-height:150px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:13px;line-height:19px}.ce-datasource-tool__textarea--schema[data-v-b51983e4]{min-height:130px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:13px;line-height:19px}.ce-datasource-tool__textarea--mock[data-v-b51983e4]{min-height:70px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:13px;line-height:18px}.ce-datasource-tool__input[data-v-b51983e4]:focus,.ce-datasource-tool__textarea[data-v-b51983e4]:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 2px #2563eb26}.ce-datasource-tool__input[data-v-b51983e4]:-moz-read-only,.ce-datasource-tool__textarea[data-v-b51983e4]:-moz-read-only{background:#f8fafc}.ce-datasource-tool__input[data-v-b51983e4]:read-only,.ce-datasource-tool__textarea[data-v-b51983e4]:read-only,.ce-datasource-tool__input[data-v-b51983e4]:disabled{background:#f8fafc}.ce-datasource-tool__error[data-v-b51983e4],.ce-datasource-tool__body-error[data-v-b51983e4]{margin:0;color:#b91c1c;font-size:13px}.ce-datasource-tool__list[data-v-b51983e4]{display:flex;flex-direction:column;gap:8px}.ce-datasource-tool__list[open][data-v-b51983e4]{gap:8px}.ce-datasource-tool__list-header[data-v-b51983e4]{display:flex;align-items:center;justify-content:space-between;gap:10px;cursor:pointer;list-style:none}.ce-datasource-tool__list-header[data-v-b51983e4]::-webkit-details-marker{display:none}.ce-datasource-tool__action[data-v-b51983e4],.ce-datasource-tool__remove[data-v-b51983e4],.ce-datasource-tool__schema-button[data-v-b51983e4]{min-height:32px;border:1px solid rgb(203 213 225);border-radius:8px;background:#fff;color:#1e40af;font:inherit;font-weight:650;cursor:pointer}.ce-datasource-tool__action[data-v-b51983e4]{padding:5px 12px}.ce-datasource-tool__schema-button[data-v-b51983e4]{padding:5px 12px;white-space:nowrap}.ce-datasource-tool__remove[data-v-b51983e4]{padding:5px 10px;color:#b91c1c}.ce-datasource-tool__action[data-v-b51983e4]:hover,.ce-datasource-tool__remove[data-v-b51983e4]:hover,.ce-datasource-tool__schema-button[data-v-b51983e4]:hover{background:#f8fafc}.ce-datasource-tool__schema-button[data-v-b51983e4]:disabled{cursor:wait;opacity:.7}.ce-datasource-tool__tabs[data-v-b51983e4]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));overflow:hidden;border:1px solid rgb(203 213 225);border-radius:8px;background:#f8fafc}.ce-datasource-tool__tab[data-v-b51983e4]{min-height:34px;border:0;border-right:1px solid rgb(203 213 225);padding:6px 10px;background:transparent;color:#475569;font:inherit;font-weight:650;cursor:pointer}.ce-datasource-tool__tab[data-v-b51983e4]:last-child{border-right:0}.ce-datasource-tool__tab--active[data-v-b51983e4]{background:#2563eb;color:#fff}.ce-datasource-tool__schema-tab-panel[data-v-b51983e4]{display:flex;flex-direction:column;gap:10px}.ce-datasource-tool__field-list[data-v-b51983e4]{display:flex;flex-direction:column;gap:8px}.ce-datasource-tool__field-list-summary[data-v-b51983e4]{color:#334155;font-size:13px;font-weight:650}.ce-datasource-tool__schema-field[data-v-b51983e4]{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;border:1px solid rgb(226 232 240);border-radius:8px;padding:8px;background:#fff}.ce-datasource-tool__checkbox[data-v-b51983e4]{width:16px;height:16px;margin:0;accent-color:rgb(37 99 235)}.ce-datasource-tool__schema-field-main[data-v-b51983e4]{display:flex;min-width:0;flex-direction:column;gap:4px}.ce-datasource-tool__field-label-input[data-v-b51983e4]{height:32px}.ce-datasource-tool__schema-path[data-v-b51983e4]{overflow:hidden;color:#64748b;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:12px;line-height:16px;text-overflow:ellipsis;white-space:nowrap}.ce-datasource-tool__schema-badges[data-v-b51983e4]{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:6px}.ce-datasource-tool__schema-badge[data-v-b51983e4]{display:inline-flex;align-items:center;min-height:24px;border-radius:999px;padding:3px 8px;background:#eff6ff;color:#1e40af;font-size:12px;font-weight:650;white-space:nowrap}.ce-datasource-tool__schema-badge--required[data-v-b51983e4]{background:#fef2f2;color:#b91c1c}.ce-datasource-tool__schema-tree[data-v-b51983e4]{display:flex;flex-direction:column;gap:6px;border:1px solid rgb(226 232 240);border-radius:8px;padding:8px;background:#f8fafc}.ce-datasource-tool__schema-node[data-v-b51983e4]{display:grid;grid-template-columns:minmax(90px,.5fr) minmax(0,1fr) auto auto;gap:8px;align-items:center;min-height:30px}.ce-datasource-tool__schema-node-name[data-v-b51983e4]{min-width:0;color:#0f172a;font-size:13px;font-weight:650;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ce-datasource-tool__empty[data-v-b51983e4]{margin:0;border:1px dashed rgb(203 213 225);border-radius:8px;padding:9px 10px;color:#64748b;font-size:13px}.ce-datasource-tool__row[data-v-b51983e4]{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:8px;align-items:start}.ce-datasource-tool__body-row[data-v-b51983e4]{display:grid;grid-template-columns:minmax(120px,.8fr) minmax(110px,.4fr) minmax(0,1fr) auto;gap:8px;align-items:start}.ce-datasource-tool__body-error[data-v-b51983e4]{grid-column:3 / 5}@media(max-width:720px){.ce-datasource-tool__header[data-v-b51983e4],.ce-datasource-tool__schema-header[data-v-b51983e4]{align-items:stretch;flex-direction:column}.ce-datasource-tool__schema-search[data-v-b51983e4]{max-width:none}.ce-datasource-tool__grid[data-v-b51983e4],.ce-datasource-tool__row[data-v-b51983e4],.ce-datasource-tool__body-row[data-v-b51983e4],.ce-datasource-tool__schema-field[data-v-b51983e4],.ce-datasource-tool__schema-node[data-v-b51983e4]{grid-template-columns:1fr}.ce-datasource-tool__body-error[data-v-b51983e4]{grid-column:1}}.dark{border-color:#334155;background:#0f172a;color:#e2e8f0}.dark{border-bottom-color:#334155}.dark{border-top-color:#334155}.dark{border-top-color:#334155;background:#1e293b73}.dark{color:#f1f5f9}.dark{border-color:#475569;background:#1e293b}.dark{border-right-color:#475569;color:#cbd5e1}.dark{background:#3b82f6;color:#fff}.dark{border-color:#475569e6;background:#0f172a;color:#e2e8f0}.dark{border-color:#475569;background:#0f172a}.dark{background:#1e293b}.dark{border-color:#475569;color:#94a3b8}.dark{border-color:#334155;background:#0f172a}.dark{background:#1e40af57;color:#bfdbfe}.dark{background:#7f1d1d59;color:#fecaca}.dark{color:#f87171}.ce-editor-selector-tool[data-v-865609b6]{position:relative;width:100%}.ce-editor-selector-tool__editor-shell[data-v-865609b6],.ce-editor-selector-tool__preview[data-v-865609b6]{position:relative;width:100%;min-height:38px;border:1px solid rgb(148 163 184 / .6);border-radius:8px;background:#fff}.ce-editor-selector-tool__editor-shell[data-v-865609b6]{height:38px;padding:0 10px 0 38px;overflow:visible}.ce-editor-selector-tool__editor-shell--filled[data-v-865609b6]{height:auto;padding-top:4px;padding-bottom:4px}.ce-editor-selector-tool__editor[data-v-865609b6],.ce-editor-selector-tool__preview[data-v-865609b6]{min-height:0}.ce-editor-selector-tool__preview[data-v-865609b6]{display:flex;align-items:center;padding:7px 10px}.ce-editor-selector-tool__preview[data-v-865609b6]:empty{padding:0 10px}.ce-editor-selector-tool[data-v-865609b6] .codex-editor{min-height:0}.ce-editor-selector-tool[data-v-865609b6] .codex-editor__redactor{min-height:0;padding-bottom:0!important}.ce-editor-selector-tool[data-v-865609b6] .ce-block{padding:0}.ce-editor-selector-tool[data-v-865609b6] .ce-block__content,.ce-editor-selector-tool[data-v-865609b6] .ce-toolbar__content{max-width:none;margin:0}.ce-editor-selector-tool[data-v-865609b6] .ce-toolbar__actions{right:calc(100% + 8px);padding-right:0}.ce-editor-selector-tool[data-v-865609b6] .ce-paragraph{min-height:36px;padding:8px 0;line-height:20px;font-size:14px}.ce-editor-selector-tool[data-v-865609b6]:not(.ce-editor-selector-tool--filled) .ce-block,.ce-editor-selector-tool[data-v-865609b6]:not(.ce-editor-selector-tool--filled) .ce-block__content,.ce-editor-selector-tool[data-v-865609b6]:not(.ce-editor-selector-tool--filled) .ce-paragraph{min-height:0;height:36px}.ce-editor-selector-tool[data-v-865609b6]:not(.ce-editor-selector-tool--filled) .ce-paragraph{padding:8px 0}.ce-editor-selector-tool[data-v-865609b6] .ce-popover-item[data-item-name=paragraph],.ce-editor-selector-tool[data-v-865609b6] .ce-popover-item[data-item-name=table],.ce-editor-selector-tool[data-v-865609b6] .ce-popover-item[data-item-name=columns],.ce-editor-selector-tool[data-v-865609b6] .ce-popover-item[data-item-name=MEditorSelector]{display:none}.dark{border-color:#475569e6;background:#0f172a}.ce-form-item-tool[data-v-e6b491c3]{width:100%;color:#0f172a}.ce-form-item-tool__edit-shell[data-v-e6b491c3]{width:100%;border:1px dashed rgb(148 163 184 / .7);border-radius:8px;padding:8px}.ce-form-item-tool__label[data-v-e6b491c3]{color:#334155;font-size:13px;font-weight:600;line-height:20px}.ce-form-item-tool__body[data-v-e6b491c3]{display:flex;flex-direction:column;gap:8px}.ce-form-item-tool--horizontal .ce-form-item-tool__body[data-v-e6b491c3]{display:grid;grid-template-columns:minmax(96px,max-content) minmax(0,1fr);align-items:start;gap:12px}.ce-form-item-tool__label[data-v-e6b491c3]{padding-top:9px;word-break:break-word}.ce-form-item-tool__editor[data-v-e6b491c3]{min-width:0}.ce-form-item-tool__empty[data-v-e6b491c3]{display:inline-flex;min-height:38px;align-items:center;color:#64748b;font-size:14px;line-height:20px}@media(max-width:640px){.ce-form-item-tool--horizontal .ce-form-item-tool__body[data-v-e6b491c3]{display:flex;flex-direction:column}}.dark{color:#e2e8f0}.dark{border-color:#475569e6}.dark{color:#cbd5e1}.dark{color:#94a3b8}
|
package/assets/MPage-okwcd_fI.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{_ as o}from"./MPage.vue_vue_type_script_setup_true_lang-BfUuzlf-.js";import"./editorjs-hCuh8vdW.js";import"./index-DKqdRiPk.js";export{o as default};
|
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/MPage-okwcd_fI.js","assets/editorjs-hCuh8vdW.js","assets/index-DKqdRiPk.js","assets/index-CH5-XypS.css","assets/MForm-IOgKE4fR.js","assets/MForm-DHyGtILs.css"])))=>i.map(i=>d[i]);
|
|
2
|
-
var Qt=Object.defineProperty;var ea=(e,a,u)=>a in e?Qt(e,a,{enumerable:!0,configurable:!0,writable:!0,value:u}):e[a]=u;var Ce=(e,a,u)=>ea(e,typeof a!="symbol"?a+"":a,u);import{A as He,F as ta,E as aa}from"./editorjs-hCuh8vdW.js";import{d as ge,g as Ze,h as Ye,w as ie,n as ve,i as he,o as r,c,f as i,j as pe,F as V,k as W,l as Z,t as h,u as k,m as oa,a as L,b as be,p as Qe,q as Ie,s as te,e as xe,r as G,v as Me,x as me,y as ut,z as qe,A as ke,B as $t,C as P,D as pt,E as la,G as Re,H as Ke,_ as Se,I as U,J as fe,K as Le,L as St,M as na,N as mt,O as sa,P as ra,Q as ca,R as yt,S as ze,T as ia,U as Fe,V as da,W as ua,X as pa,$ as ma,Y as ya,Z as fa,a0 as va,a1 as ha,a2 as ft,a3 as vt,a4 as _a,a5 as ba,a6 as Et,a7 as Nt,a8 as ga,a9 as ka,aa as wa,ab as de,ac as ht,ad as _t,ae as bt,af as Ve,ag as je}from"./index-DKqdRiPk.js";const Ca={class:"ce-advance-input-tool","data-testid":"editor-advance-input-tool"},Ta={key:0,class:"ce-advance-input-tool__editor-shell"},xa=["data-testid","onMousedown"],$a={key:1,class:"ce-advance-input-tool__preview","data-testid":"preview-advance-input-value"},Sa={key:0,class:"ce-advance-input-tool__preview-text"},Ea={key:1,class:"ce-advance-input-tool__preview-token"},Na={class:"ce-advance-input-tool__dialog-header"},Da={class:"ce-advance-input-tool__dialog-title","data-testid":"advance-input-embedded-property-title"},Pa={type:"submit",class:"ce-advance-input-tool__dialog-close","data-testid":"advance-input-embedded-property-close"},Ia={key:0,class:"ce-advance-input-tool__dialog-body"},Ma=["checked","data-testid","onChange"],Aa={class:"ce-advance-input-tool__dialog-label"},Ba={class:"ce-advance-input-tool__dialog-label"},Oa=["value","data-testid","onChange"],Ra=["value"],La={class:"ce-advance-input-tool__dialog-label"},za=["value","placeholder","data-testid","onInput"],Fa=ke({toolbox:{get title(){return P.t("advanceInput.toolboxTitle")},icon:'<svg width="18" height="18" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><rect x="3" y="5" width="18" height="14" rx="3" ry="3" fill="none" stroke="currentColor" stroke-width="2"/><path d="M7 10h5M7 14h3M14 10h3M14 14h3" stroke="currentColor" stroke-width="2" stroke-linecap="round"/></svg>'},createInitialProps:()=>({value:$t()}),normalizeProps:e=>({edit:e.edit??!1,value:he(e.value)}),serialize:e=>({value:he(e.value)})}),Va=ge({__name:"MAdvanceInput",props:{edit:{type:Boolean},value:{},onChange:{type:Function},onToolChange:{type:Function}},setup(e){const a=e,{t:u}=xe(),_=G(null),x=G(null),N=G(!1),B=G({left:0,top:0}),d=G(null),m=new Map;let v=!1,w="";function D(y){return pt(y)}function z(y){return JSON.stringify(D(y))}function O(y){var s;const p=me(y);if(!p)throw new Error(`Unknown inline component "${y}".`);const t=p.normalizeProps({...((s=p.createInitialProps)==null?void 0:s.call(p))??{},edit:!1});return{id:la(),type:y,data:ut(p.serialize(t))}}function j(){m.forEach(y=>{y.app.unmount()}),m.clear()}function K(y){var H;const p=Re(y),t=me(p.type);if(!t){const F=document.createElement("span");return F.className="ce-advance-input-tool__token ce-advance-input-tool__token--unknown",F.dataset.segmentType="component",F.dataset.blockId=p.id,F.dataset.block=JSON.stringify(p),F.textContent=p.type,F}const s=document.createElement("span");s.className="ce-advance-input-tool__token",s.dataset.segmentType="component",s.dataset.blockId=p.id,s.dataset.block=JSON.stringify(p),s.contentEditable="false",s.setAttribute("data-testid",`editor-advance-input-token-${p.type}`);const b=document.createElement("span");b.className="ce-advance-input-tool__token-mount",s.appendChild(b);const E=t.normalizeProps({...((H=t.createInitialProps)==null?void 0:H.call(t))??{},...p.data,edit:!1}),A=qe(t.component,E);return A.mount(b),s.addEventListener("click",F=>{F.preventDefault(),F.stopPropagation(),ue(p.id)}),m.set(p.id,{app:A,block:Re(p),mountPoint:b,wrapper:s}),s}function $(y,p=!1){const t=_.value;if(!t)return;v=!0,j(),t.innerHTML="";const s=he(y);for(const b of s){if(b.type==="paragraph"){t.appendChild(document.createTextNode(Me(b)));continue}t.appendChild(K(b)),t.appendChild(document.createTextNode(""))}t.childNodes.length||t.appendChild(document.createTextNode("")),w=z(s),v=!1,p&&ve(()=>{ae(t)})}function X(){const y=_.value;if(!y)return $t();const p=[];return y.childNodes.forEach(t=>{if(t.nodeType===Node.TEXT_NODE){const s=(t.textContent??"").replace(/\u200B/g,"");p.push(Ke(s));return}if(t instanceof HTMLElement){if(t.dataset.segmentType==="component"){const s=t.dataset.blockId??"",b=m.get(s),E=t.dataset.block?JSON.parse(t.dataset.block):null,A=(b==null?void 0:b.block)??E;A&&p.push(Re(A));return}p.push(Ke((t.textContent??"").replace(/\u200B/g,"")))}}),pt(p)}function Y(y){var t,s;w=z(y);const p={edit:a.edit,value:y};(t=a.onToolChange)==null||t.call(a,p),(s=a.onChange)==null||s.call(a,p)}function M(){if(v)return;const y=D(X());z(y)!==w&&Y(y)}function ae(y){const p=window.getSelection();if(!p)return;const t=document.createRange();t.selectNodeContents(y),t.collapse(!1),p.removeAllRanges(),p.addRange(t)}function oe(){const y=_.value;y&&y.focus()}function le(){const y=_.value,p=window.getSelection();if(!y||!p||p.rangeCount===0)return null;const t=p.getRangeAt(0);return y.contains(t.startContainer)?{root:y,selection:p,range:t}:null}function I(){const y=le();if(!y||!y.selection.isCollapsed){N.value=!1;return}const{range:p,root:t}=y;let s="";if(p.startContainer.nodeType===Node.TEXT_NODE){const A=p.startContainer.textContent??"";p.startOffset>0&&(s=A[p.startOffset-1]??"")}else if(p.startContainer instanceof HTMLElement&&p.startOffset>0){const A=p.startContainer.childNodes[p.startOffset-1];if((A==null?void 0:A.nodeType)===Node.TEXT_NODE){const H=A.textContent??"";s=H[H.length-1]??""}}if(s!=="/"){N.value=!1;return}const b=p.getBoundingClientRect(),E=t.getBoundingClientRect();B.value={left:Math.max(0,b.left-E.left),top:Math.max(E.height+8,b.bottom-E.top+8)},N.value=!0}function J(){M(),I()}function q(){I()}function ee(){window.setTimeout(()=>{N.value=!1},120)}function Q(y){var s,b;if(y.key==="Enter"){y.preventDefault();return}if(y.key!=="Backspace")return;const p=le();if(!p||!p.selection.isCollapsed)return;const{range:t}=p;if(t.startContainer.nodeType===Node.TEXT_NODE){const E=t.startContainer;if(t.startOffset<=0||E.data[t.startOffset-1]!=="")return;const A=E.previousSibling;if(!(A instanceof HTMLElement)||A.dataset.segmentType!=="component")return;y.preventDefault();const H=A.dataset.blockId??"";(s=m.get(H))==null||s.app.unmount(),m.delete(H),A.remove(),E.deleteData(t.startOffset-1,1),M();return}if(t.startContainer instanceof HTMLElement&&t.startOffset>0){const E=t.startContainer.childNodes[t.startOffset-1];if(!(E instanceof HTMLElement)||E.dataset.segmentType!=="component")return;y.preventDefault();const A=E.dataset.blockId??"";(b=m.get(A))==null||b.app.unmount(),m.delete(A),E.remove(),M()}}function ce(y){var t;y.preventDefault();const p=((t=y.clipboardData)==null?void 0:t.getData("text/plain"))??"";document.execCommand("insertText",!1,p.replace(/\n/g," "))}function ne(y){const p=le();if(!p)return;const{selection:t,range:s}=p,b=O(y);if(s.startContainer.nodeType===Node.TEXT_NODE){const F=s.startContainer;s.startOffset>0&&F.data[s.startOffset-1]==="/"&&(F.deleteData(s.startOffset-1,1),s.setStart(F,s.startOffset-1),s.collapse(!0))}const E=K(b),A=document.createTextNode("");s.insertNode(A),s.insertNode(E);const H=document.createRange();H.setStart(A,1),H.collapse(!0),t.removeAllRanges(),t.addRange(H),N.value=!1,M(),oe()}function ue(y){var E,A,H,F;const p=m.get(y);if(!p)return;const t=me(p.block.type),s=((E=t==null?void 0:t.propertyPanel)==null?void 0:E.fields)??[];if(!t||!s.length)return;const b=t.normalizeProps({...((A=t.createInitialProps)==null?void 0:A.call(t))??{},...p.block.data,edit:!1});d.value={blockId:y,title:((H=t.propertyPanel)==null?void 0:H.title)||u("editor.propertyDialogTitle"),type:p.block.type,fields:s,values:Object.fromEntries(s.map(Ee=>[Ee.key,b[Ee.key]??""]))},(F=x.value)==null||F.showModal()}function g(){var y;(y=x.value)==null||y.close(),d.value=null}function C(y,p){var H;const t=d.value;if(!t)return;t.values[y]=p,d.value={...t,values:{...t.values}};const s=m.get(t.blockId),b=me(t.type);if(!s||!b)return;const E=b.normalizeProps({...((H=b.createInitialProps)==null?void 0:H.call(b))??{},...t.values,edit:!1});s.block={...s.block,data:ut(b.serialize(E))},s.wrapper.dataset.block=JSON.stringify(s.block),s.app.unmount();const A=qe(b.component,E);A.mount(s.mountPoint),s.app=A,M()}function S(){return he(a.value)}function T(y){var p;return((p=me(y))==null?void 0:p.component)??null}function se(y){return Me(y)}function re(y){var t;const p=me(y.type);return p?p.normalizeProps({...((t=p.createInitialProps)==null?void 0:t.call(p))??{},...y.data,edit:!1}):{edit:!1}}return Ze(()=>{a.edit&&$(a.value)}),Ye(()=>{j()}),ie(()=>a.edit,y=>{if(!y){N.value=!1;return}ve(()=>{$(a.value)})}),ie(()=>a.value,y=>{if(!a.edit)return;const p=he(y);z(p)!==w&&$(p)}),(y,p)=>{var t;return r(),c("div",Ca,[e.edit?(r(),c("div",Ta,[i("div",{ref_key:"editableRef",ref:_,class:"ce-advance-input-tool__editor","data-testid":"editor-advance-input-content",contenteditable:"true",spellcheck:"false",onInput:J,onClick:q,onKeyup:I,onKeydown:Q,onPaste:ce,onBlur:ee},null,544),N.value?(r(),c("div",{key:0,class:"ce-advance-input-tool__menu","data-testid":"editor-advance-input-menu",style:pe({left:`${B.value.left}px`,top:`${B.value.top}px`})},[(r(!0),c(V,null,W(k(oa)(),([s,b])=>(r(),c("button",{key:s,type:"button",class:"ce-advance-input-tool__menu-item","data-testid":`editor-advance-input-menu-item-${s}`,onMousedown:Z(E=>ne(s),["prevent"])},h(b.toolbox.title),41,xa))),128))],4)):L("",!0)])):(r(),c("div",$a,[(r(!0),c(V,null,W(S(),(s,b)=>(r(),c(V,{key:`${s.id}-${s.type}-${b}`},[s.type==="paragraph"?(r(),c("span",Sa,h(se(s)),1)):(r(),c("span",Ea,[(r(),be(Ie(T(s.type)),Qe({ref_for:!0},re(s)),null,16))]))],64))),128))])),i("dialog",{ref_key:"embeddedDialogRef",ref:x,class:"ce-advance-input-tool__dialog","data-testid":"advance-input-embedded-property-dialog",onClose:p[0]||(p[0]=s=>d.value=null)},[i("form",{method:"dialog",class:"ce-advance-input-tool__dialog-panel",onSubmit:Z(g,["prevent"])},[i("div",Na,[i("h3",Da,h((t=d.value)==null?void 0:t.title),1),i("button",Pa,h(k(u)("editor.close")),1)]),d.value?(r(),c("div",Ia,[(r(!0),c(V,null,W(d.value.fields,s=>(r(),c("label",{key:s.key,class:te(["ce-advance-input-tool__dialog-field",{"ce-advance-input-tool__dialog-field--checkbox":s.type==="checkbox"}])},[s.type==="checkbox"?(r(),c(V,{key:0},[i("input",{class:"ce-advance-input-tool__dialog-checkbox",type:"checkbox",checked:d.value.values[s.key]===!0,"data-testid":`advance-input-embedded-property-input-${s.key}`,onChange:b=>C(s.key,b.target.checked)},null,40,Ma),i("span",Aa,h(s.label),1)],64)):s.type==="select"?(r(),c(V,{key:1},[i("span",Ba,h(s.label),1),i("select",{class:"ce-advance-input-tool__dialog-input",value:String(d.value.values[s.key]??""),"data-testid":`advance-input-embedded-property-input-${s.key}`,onChange:b=>C(s.key,b.target.value)},[(r(!0),c(V,null,W(s.options??[],b=>(r(),c("option",{key:b.value,value:b.value},h(b.label),9,Ra))),128))],40,Oa)],64)):(r(),c(V,{key:2},[i("span",La,h(s.label),1),i("input",{class:"ce-advance-input-tool__dialog-input",type:"text",value:String(d.value.values[s.key]??""),placeholder:s.placeholder,"data-testid":`advance-input-embedded-property-input-${s.key}`,onInput:b=>C(s.key,b.target.value)},null,40,za)],64))],2))),128))])):L("",!0)],32)],544)])}}}),gt=Se(Va,[["__scopeId","data-v-5ab6cc48"]]),ja={class:"ce-advance-table-tool","data-testid":"editor-advance-table-tool"},Ja={class:"ce-advance-table-tool__scroller"},Ha={class:"ce-advance-table-tool__table","data-testid":"advance-table"},qa=["checked","aria-label"],Ka=["data-testid"],Ua=["data-testid"],Wa=["data-testid"],Xa=["checked","aria-label","onChange"],Ga=["data-testid"],Za=["data-testid"],Ya={key:0,class:"ce-advance-table-tool__cell-text"},Qa={key:1,class:"ce-advance-table-tool__cell-token"},eo={key:0},to=["colspan"];function Je(e,a){return[Ke(e,a)]}function ao(){return[{id:"advance-table-default-tag",type:"MTag",data:{tagName:"{{tag}}",type:"{{tagType}}",size:"small",color:"",closable:!1}}]}function oo(){return[{id:"advance-table-default-link",type:"MLink",data:{text:"{{linkText}}",url:"{{linkUrl}}",open:!1}}]}function Ue(){return[{columnName:P.t("advanceTable.defaultColumns.name"),columnContent:Je("{{name}}","advance-table-default-name"),width:180,fixed:"left"},{columnName:P.t("advanceTable.defaultColumns.status"),columnContent:Je("{{status}}","advance-table-default-status"),width:140,fixed:null},{columnName:P.t("advanceTable.defaultColumns.tag"),columnContent:ao(),width:120,fixed:null},{columnName:P.t("advanceTable.defaultColumns.owner"),columnContent:Je("{{owner}}","advance-table-default-owner"),width:160,fixed:null},{columnName:P.t("advanceTable.defaultColumns.link"),columnContent:oo(),width:180,fixed:null}]}function Dt(){return[{name:P.t("advanceTable.defaultRows.first.name"),status:P.t("advanceTable.defaultRows.first.status"),tag:P.t("advanceTable.defaultRows.first.tag"),tagType:"warning",owner:P.t("advanceTable.defaultRows.first.owner"),linkText:P.t("advanceTable.defaultRows.first.linkText"),linkUrl:P.t("advanceTable.defaultRows.first.linkUrl")},{name:P.t("advanceTable.defaultRows.second.name"),status:P.t("advanceTable.defaultRows.second.status"),tag:P.t("advanceTable.defaultRows.second.tag"),tagType:"success",owner:P.t("advanceTable.defaultRows.second.owner"),linkText:P.t("advanceTable.defaultRows.second.linkText"),linkUrl:P.t("advanceTable.defaultRows.second.linkUrl")}]}const lo=ke({toolbox:{get title(){return P.t("advanceTable.toolboxTitle")},icon:'<svg width="18" height="18" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><rect x="3" y="5" width="18" height="14" rx="2" fill="none" stroke="currentColor" stroke-width="2"/><path d="M3 10h18M8 5v14M16 5v14" stroke="currentColor" stroke-width="2"/></svg>'},propertyPanel:{get title(){return P.t("advanceTable.propertyPanelTitle")},get fields(){return[{key:"index",label:P.t("advanceTable.properties.index"),type:"checkbox"},{key:"selection",label:P.t("advanceTable.properties.selection"),type:"checkbox"}]}},createInitialProps:()=>({index:!1,selection:!1,columns:Ue(),data:Dt()}),normalizeProps:e=>({edit:e.edit??!1,index:e.index===!0,selection:e.selection===!0,columns:We(e.columns),data:Xe(e.data)}),serialize:e=>({index:e.index===!0,selection:e.selection===!0,columns:We(e.columns),data:Xe(e.data)})});function We(e){if(!Array.isArray(e)||!e.length)return Ue();const a=e.filter(u=>typeof u=="object"&&u!==null).map((u,_)=>{var x;return{columnName:((x=u.columnName)==null?void 0:x.trim())||`${P.t("advanceTable.defaultColumnName")}${_+1}`,columnContent:he(u.columnContent),width:no(u.width),fixed:so(u.fixed)}});return a.length?a:Ue()}function Xe(e){return Array.isArray(e)?e.filter(a=>typeof a=="object"&&a!==null&&!Array.isArray(a)):Dt()}function no(e){return typeof e!="number"||!Number.isFinite(e)||e<=0?null:Math.round(e)}function so(e){return e==="left"||e==="right"?e:null}const ro=ge({__name:"MAdvanceTable",props:{edit:{type:Boolean},index:{type:Boolean},selection:{type:Boolean},columns:{},data:{},onChange:{type:Function},onToolChange:{type:Function}},setup(e){const a=e,{t:u}=xe(),_=G(new Set),x=U(()=>We(a.columns)),N=U(()=>Xe(a.data)),B=U(()=>a.selection===!0),d=U(()=>a.index===!0),m=44,v=56,w=160;function D(g){if(g==null)return"";if(typeof g=="string")return g;if(typeof g=="number"||typeof g=="boolean")return String(g);try{return JSON.stringify(g)}catch{return String(g)}}function z(g,C){return g.replace(/\{\{\s*([\w.-]+)\s*\}\}/g,(S,T)=>D(O(C,T)))}function O(g,C){return C.split(".").reduce((S,T)=>typeof S!="object"||S===null||!(T in S)?"":S[T],g)}function j(g,C){return typeof g=="string"?z(g,C):Array.isArray(g)?g.map(S=>j(S,C)):typeof g=="object"&&g!==null?Object.fromEntries(Object.entries(g).map(([S,T])=>[S,j(T,C)])):g}function K(g,C){return he(C.columnContent).map(S=>S.type==="paragraph"?{...S,data:{text:z(Me(S),g)}}:{...S,data:j(S.data,g)})}function $(g){var C;return((C=me(g))==null?void 0:C.component)??null}function X(g){var S;const C=me(g.type);return C?C.normalizeProps({...((S=C.createInitialProps)==null?void 0:S.call(C))??{},...g.data,edit:!1}):{edit:!1}}function Y(g){return Me(g)}function M(g){return g.width??null}function ae(g){return M(g)??w}function oe(g){let C=0;B.value&&(C+=m),d.value&&(C+=v);for(let S=0;S<g;S+=1){const T=x.value[S];(T==null?void 0:T.fixed)==="left"&&(C+=ae(T))}return C}function le(g){let C=0;for(let S=x.value.length-1;S>g;S-=1){const T=x.value[S];(T==null?void 0:T.fixed)==="right"&&(C+=ae(T))}return C}function I(g,C){const S=M(g),T={};return S&&(T.width=`${S}px`,T.minWidth=`${S}px`),g.fixed==="left"&&(T.position="sticky",T.left=`${oe(C)}px`),g.fixed==="right"&&(T.position="sticky",T.right=`${le(C)}px`),T}function J(g){return{"ce-advance-table-tool__cell--fixed-left":g.fixed==="left","ce-advance-table-tool__cell--fixed-right":g.fixed==="right"}}function q(){return{width:`${m}px`,minWidth:`${m}px`,left:"0px"}}function ee(){return{width:`${v}px`,minWidth:`${v}px`,left:`${B.value?m:0}px`}}function Q(g){return _.value.has(g)}function ce(g){const C=new Set(_.value);C.has(g)?C.delete(g):C.add(g),_.value=C}function ne(){return N.value.length>0&&N.value.every((g,C)=>_.value.has(C))}function ue(){if(ne()){_.value=new Set;return}_.value=new Set(N.value.map((g,C)=>C))}return(g,C)=>(r(),c("div",ja,[i("div",Ja,[i("table",Ha,[i("thead",null,[i("tr",null,[e.selection?(r(),c("th",{key:0,class:"ce-advance-table-tool__cell ce-advance-table-tool__cell--header ce-advance-table-tool__cell--control ce-advance-table-tool__cell--fixed-left",style:pe(q()),"data-testid":"advance-table-selection-header"},[i("input",{class:"ce-advance-table-tool__checkbox",type:"checkbox",checked:ne(),"aria-label":k(u)("advanceTable.selectAll"),onChange:ue},null,40,qa)],4)):L("",!0),e.index?(r(),c("th",{key:1,class:"ce-advance-table-tool__cell ce-advance-table-tool__cell--header ce-advance-table-tool__cell--control ce-advance-table-tool__cell--fixed-left",style:pe(ee()),"data-testid":"advance-table-index-header"}," # ",4)):L("",!0),(r(!0),c(V,null,W(x.value,(S,T)=>(r(),c("th",{key:`header-${T}`,class:te(["ce-advance-table-tool__cell ce-advance-table-tool__cell--header",J(S)]),style:pe(I(S,T)),"data-testid":`advance-table-header-${T}`},h(S.columnName),15,Ka))),128))])]),i("tbody",null,[(r(!0),c(V,null,W(N.value,(S,T)=>(r(),c("tr",{key:`row-${T}`,class:te(["ce-advance-table-tool__row",{"ce-advance-table-tool__row--selected":Q(T)}]),"data-testid":`advance-table-row-${T}`},[e.selection?(r(),c("td",{key:0,class:"ce-advance-table-tool__cell ce-advance-table-tool__cell--control ce-advance-table-tool__cell--fixed-left",style:pe(q()),"data-testid":`advance-table-selection-cell-${T}`},[i("input",{class:"ce-advance-table-tool__checkbox",type:"checkbox",checked:Q(T),"aria-label":k(u)("advanceTable.selectRow"),onChange:se=>ce(T)},null,40,Xa)],12,Wa)):L("",!0),e.index?(r(),c("td",{key:1,class:"ce-advance-table-tool__cell ce-advance-table-tool__cell--control ce-advance-table-tool__cell--fixed-left",style:pe(ee()),"data-testid":`advance-table-index-cell-${T}`},h(T+1),13,Ga)):L("",!0),(r(!0),c(V,null,W(x.value,(se,re)=>(r(),c("td",{key:`cell-${T}-${re}`,class:te(["ce-advance-table-tool__cell",J(se)]),style:pe(I(se,re)),"data-testid":`advance-table-cell-${T}-${re}`},[(r(!0),c(V,null,W(K(S,se),(y,p)=>(r(),c(V,{key:`${T}-${re}-${y.id}-${y.type}-${p}`},[y.type==="paragraph"?(r(),c("span",Ya,h(Y(y)),1)):(r(),c("span",Qa,[(r(),be(Ie($(y.type)),Qe({ref_for:!0},X(y)),null,16))]))],64))),128))],14,Za))),128))],10,Ua))),128)),N.value.length?L("",!0):(r(),c("tr",eo,[i("td",{class:"ce-advance-table-tool__cell ce-advance-table-tool__empty",colspan:x.value.length+(e.selection?1:0)+(e.index?1:0)},h(k(u)("advanceTable.empty")),9,to)]))])])])]))}}),kt=Se(ro,[["__scopeId","data-v-6eb0809a"]]),co={class:"ce-datasource-tool","data-testid":"editor-datasource-tool"},io={class:"ce-datasource-tool__header"},uo={class:"ce-datasource-tool__title"},po=["aria-label"],mo=["disabled"],yo=["disabled"],fo={key:0,class:"ce-datasource-tool__panel","data-testid":"datasource-json-panel"},vo={class:"ce-datasource-tool__field"},ho={class:"ce-datasource-tool__label"},_o=["readonly","value"],bo={key:0,class:"ce-datasource-tool__error","data-testid":"datasource-json-error"},go={key:1,class:"ce-datasource-tool__panel","data-testid":"datasource-api-panel"},ko={class:"ce-datasource-tool__grid"},wo={class:"ce-datasource-tool__field"},Co={class:"ce-datasource-tool__label"},To=["readonly","value"],xo={class:"ce-datasource-tool__field"},$o={class:"ce-datasource-tool__label"},So=["readonly","value"],Eo={class:"ce-datasource-tool__field"},No={class:"ce-datasource-tool__label"},Do=["disabled","value"],Po={open:"",class:"ce-datasource-tool__list","data-testid":"datasource-header-list"},Io={class:"ce-datasource-tool__list-header"},Mo={class:"ce-datasource-tool__list-title"},Ao={key:0,class:"ce-datasource-tool__empty"},Bo=["data-testid","readonly","placeholder","value","onInput"],Oo=["data-testid","readonly","placeholder","value","onInput"],Ro=["data-testid","aria-label","onClick"],Lo={open:"",class:"ce-datasource-tool__list","data-testid":"datasource-query-list"},zo={class:"ce-datasource-tool__list-header"},Fo={class:"ce-datasource-tool__list-title"},Vo={key:0,class:"ce-datasource-tool__empty"},jo=["data-testid","readonly","placeholder","value","onInput"],Jo=["data-testid","readonly","placeholder","value","onInput"],Ho=["data-testid","aria-label","onClick"],qo={open:"",class:"ce-datasource-tool__list","data-testid":"datasource-body-list"},Ko={class:"ce-datasource-tool__list-header"},Uo={class:"ce-datasource-tool__list-title"},Wo={key:0,class:"ce-datasource-tool__empty"},Xo=["data-testid","readonly","placeholder","value","onInput"],Go=["data-testid","disabled","value","onChange"],Zo=["value"],Yo=["data-testid","disabled","value","onChange"],Qo=["data-testid"],el=["data-testid","readonly","value","onInput"],tl=["data-testid","type","readonly","placeholder","value","onInput"],al=["data-testid","aria-label","onClick"],ol=["data-testid"],ll={class:"ce-datasource-tool__generate-panel","data-testid":"datasource-schema-generate-panel"},nl={class:"ce-datasource-tool__section-title"},sl={class:"ce-datasource-tool__section-copy"},rl={class:"ce-datasource-tool__generate-actions"},cl=["disabled"],il={key:1,class:"ce-datasource-tool__schema-summary","data-testid":"datasource-schema-summary"},dl={key:0,class:"ce-datasource-tool__error","data-testid":"datasource-json-schema-error"},ul={class:"ce-datasource-tool__schema-panel","data-testid":"datasource-json-schema-panel"},pl={class:"ce-datasource-tool__schema-header"},ml={class:"ce-datasource-tool__section-title"},yl={class:"ce-datasource-tool__section-copy"},fl=["placeholder","value"],vl={class:"ce-datasource-tool__tabs","data-testid":"datasource-schema-tabs"},hl={key:0,class:"ce-datasource-tool__schema-tab-panel","data-testid":"datasource-list-schema-panel"},_l={key:0,class:"ce-datasource-tool__empty","data-testid":"datasource-schema-empty"},bl={key:1,class:"ce-datasource-tool__field"},gl={class:"ce-datasource-tool__label"},kl=["disabled","value"],wl=["value"],Cl={key:2,class:"ce-datasource-tool__empty","data-testid":"datasource-list-schema-empty"},Tl={key:3,class:"ce-datasource-tool__field-list","data-testid":"datasource-list-fields"},xl={class:"ce-datasource-tool__field-list-summary"},$l=["data-testid"],Sl=["disabled","checked","data-testid","onChange"],El={class:"ce-datasource-tool__schema-field-main"},Nl=["readonly","value","data-testid","onInput"],Dl={class:"ce-datasource-tool__schema-path"},Pl={class:"ce-datasource-tool__schema-badges"},Il={class:"ce-datasource-tool__schema-badge"},Ml={class:"ce-datasource-tool__schema-badge"},Al={key:0,class:"ce-datasource-tool__schema-badge ce-datasource-tool__schema-badge--required"},Bl={key:1,class:"ce-datasource-tool__schema-tab-panel","data-testid":"datasource-form-schema-panel"},Ol={key:0,class:"ce-datasource-tool__field-list","data-testid":"datasource-form-fields"},Rl={class:"ce-datasource-tool__field-list-summary"},Ll=["data-testid"],zl=["disabled","checked","data-testid","onChange"],Fl={class:"ce-datasource-tool__schema-field-main"},Vl=["readonly","value","data-testid","onInput"],jl={class:"ce-datasource-tool__schema-path"},Jl={class:"ce-datasource-tool__schema-badges"},Hl={class:"ce-datasource-tool__schema-badge"},ql={class:"ce-datasource-tool__schema-badge"},Kl={key:0,class:"ce-datasource-tool__schema-badge ce-datasource-tool__schema-badge--required"},Ul={key:1,class:"ce-datasource-tool__empty","data-testid":"datasource-form-schema-empty"},Wl={key:2,class:"ce-datasource-tool__schema-tab-panel","data-testid":"datasource-advanced-schema-panel"},Xl={key:0,class:"ce-datasource-tool__schema-tree","data-testid":"datasource-schema-tree"},Gl=["data-testid"],Zl={class:"ce-datasource-tool__schema-node-name"},Yl={class:"ce-datasource-tool__schema-path"},Ql={class:"ce-datasource-tool__schema-badge"},en={key:0,class:"ce-datasource-tool__schema-badge ce-datasource-tool__schema-badge--required"},tn={class:"ce-datasource-tool__field"},an={class:"ce-datasource-tool__label"},on=["readonly","value"],ln=ke({toolbox:{get title(){return P.t("datasource.toolboxTitle")},icon:'<svg width="18" height="18" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><ellipse cx="12" cy="6" rx="7" ry="3" fill="none" stroke="currentColor" stroke-width="2"/><path d="M5 6v6c0 1.7 3.1 3 7 3s7-1.3 7-3V6M5 12v6c0 1.7 3.1 3 7 3s7-1.3 7-3v-6" fill="none" stroke="currentColor" stroke-width="2"/><path d="M8 12c1.1.5 2.5.8 4 .8s2.9-.3 4-.8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"/></svg>'},createInitialProps:()=>({value:fa()}),normalizeProps:e=>({edit:e.edit??!1,value:fe(e.value)}),serialize:e=>({value:fe(e.value)})}),nn=ge({__name:"MDatasourceEditor",props:{edit:{type:Boolean},value:{},onChange:{type:Function},onToolChange:{type:Function}},setup(e){const a=e,{t:u}=xe(),_=fe(a.value),x=sa,N=G(_.type),B=Le(_.type==="JSON"?_.rawData:{}),d=G(g(B.value)),m=G(""),v=Le(_.jsonSchema),w=G(C(v.value)),D=G(""),z=G(!1),O=Le(_.schemaSelections),j=G("list"),K=G(""),$=St(_.type==="API"?_:na()),X=G($.bodyData.map(o=>we(o))),Y=G($.bodyData.map(()=>"")),M=U(()=>!a.edit),ae=U(()=>va(v.value)),oe=U(()=>ra(ae.value)),le=U(()=>ca(v.value)),I=U(()=>{var o,l;return((l=(o=O.value)==null?void 0:o.list)==null?void 0:l.fields)??[]}),J=U(()=>{var o,l;return((l=(o=O.value)==null?void 0:o.form)==null?void 0:l.fields)??[]}),q=U(()=>re(oe.value,K.value)),ee=U(()=>y(I.value,K.value)),Q=U(()=>y(J.value,K.value)),ce=U(()=>{var o,l;return((l=(o=O.value)==null?void 0:o.list)==null?void 0:l.recordPath)??""}),ne=U(()=>I.value.filter(o=>o.enabled).length),ue=U(()=>J.value.filter(o=>o.enabled).length);function g(o){return JSON.stringify(o,null,2)}function C(o){return o?JSON.stringify(o,null,2):""}function S(o){return u(`datasource.schemaTypes.${o}`)}function T(o){return u(`datasource.componentHints.${o}`)}function se(o){return o.trim().toLowerCase()}function re(o,l){const n=se(l);return n?o.filter(f=>f.name.toLowerCase().includes(n)||f.displayPath.toLowerCase().includes(n)):o}function y(o,l){const n=se(l);return n?o.filter(f=>f.label.toLowerCase().includes(n)||f.path.toLowerCase().includes(n)):o}function p(o){return o||"root"}function t(o){return o?`${o}[]`:u("datasource.fields.rootRecordPath")}function s(o){return{edit:a.edit,value:fe(o)}}function b(o){var n,f;if(!a.edit)return;const l=s(o);(n=a.onToolChange)==null||n.call(a,l),(f=a.onChange)==null||f.call(a,l)}function E(){return fe({type:"JSON",rawData:ha(B.value,{}),jsonSchema:v.value,schemaSelections:O.value})}function A(){return fe({type:"API",domain:$.domain,path:$.path,method:$.method,headerData:$.headerData,bodyData:$.bodyData,queryData:$.queryData,jsonSchema:v.value,schemaSelections:O.value})}function H(){b(N.value==="JSON"?E():A())}function F(){b(A())}function Ee(){X.value=$.bodyData.map(o=>we(o)),Y.value=$.bodyData.map(()=>"")}function Lt(o,l){v.value=o?ft(o):void 0,w.value=C(v.value),O.value=vt(l,v.value),D.value=""}function zt(o){Object.assign($,{type:"API",domain:o.domain,path:o.path,method:o.method,headerData:o.headerData.map(l=>({...l})),bodyData:o.bodyData.map(l=>({key:l.key,dataType:l.dataType,mock:mt(l.dataType,l.mock)})),queryData:o.queryData.map(l=>({...l}))}),Ee()}function Ft(o){const l=fe(o);if(N.value=l.type,Lt(l.jsonSchema,l.schemaSelections),l.type==="JSON"){B.value=l.rawData,d.value=g(l.rawData),m.value="";return}zt(l)}function tt(o){if(!(!a.edit||N.value===o)){if(N.value=o,o==="JSON"){b(E());return}F()}}function Vt(o){if(!a.edit)return;const l=o.target.value;d.value=l;try{const n=JSON.parse(l);if(!yt(n))throw new Error("Invalid JSON value.");B.value=ze(n),m.value="",b(E())}catch{m.value=u("datasource.validation.invalidJson")}}function jt(o){if(!a.edit)return;const l=o.target.value;if(w.value=l,!l.trim()){v.value=void 0,O.value=void 0,D.value="",H();return}try{const n=JSON.parse(l),f=ia(n);if(!f)throw new Error("Invalid JSON Schema.");v.value=f,O.value=Fe(f,O.value),D.value="",H()}catch{D.value=u("datasource.validation.invalidJsonSchema")}}function at(o,l){a.edit&&($[o]=l,F())}function Jt(o){a.edit&&($.method=da(o),F())}function Ne(o){return $[o]}function ot(o){a.edit&&($[o].push({key:"",mock:""}),F())}function De(o,l,n,f){if(!a.edit)return;const R=$[o][l];R&&(R[n]=f,F())}function lt(o,l){a.edit&&($[o].splice(l,1),F())}function Ht(){if(!a.edit)return;const o={key:"",dataType:"string",mock:""};$.bodyData.push(o),X.value.push(we(o)),Y.value.push(""),F()}function qt(o,l){if(!a.edit)return;const n=$.bodyData[o];n&&(n.key=l,F())}function Kt(o,l){if(!a.edit)return;const n=$.bodyData[o];n&&(n.dataType=ua(l),n.mock=pa(n.dataType),X.value[o]=we(n),Y.value[o]="",F())}function Oe(o,l){if(!a.edit)return;const n=$.bodyData[o];if(!n)return;X.value[o]=l;const f=Yt(n.dataType,l);if(!f.ok){Y.value[o]=f.error;return}n.mock=f.value,Y.value[o]="",F()}function Ut(o){a.edit&&($.bodyData.splice(o,1),X.value.splice(o,1),Y.value.splice(o,1),F())}function Wt(o){return o instanceof _a?o.code==="apiRequestFailed"?`${u("datasource.validation.apiRequestFailed")} ${o.status??""} ${o.statusText??""}`.trim():u(`datasource.validation.${o.code}`):o instanceof Error?o.message:String(o)}function Xt(o){v.value=ft(o),w.value=C(v.value),O.value=Fe(v.value,O.value),D.value="",H()}function Gt(o){var l,n;!a.edit||!v.value||(O.value=Fe(v.value,{...O.value,list:{recordPath:o,fields:((n=(l=O.value)==null?void 0:l.list)==null?void 0:n.fields)??[]}}),H())}function nt(o,l,n){var it,dt;if(!a.edit)return;const f=vt(O.value,v.value),R=o==="list"?(it=f==null?void 0:f.list)==null?void 0:it.fields:(dt=f==null?void 0:f.form)==null?void 0:dt.fields;if(!R)return;const ct=R.map(Pe=>Pe.path===l?{...Pe,...n,label:n.label!==void 0?n.label:Pe.label}:Pe);O.value={...f,...o==="list"&&(f!=null&&f.list)?{list:{...f.list,fields:ct}}:{},...o==="form"?{form:{fields:ct}}:{}},H()}function st(o,l,n){nt(o,l,{label:n.trim()||l})}function rt(o,l,n){nt(o,l,{enabled:n})}async function Zt(){if(!(!a.edit||z.value)){if(D.value="",N.value==="JSON"){if(m.value){D.value=u("datasource.validation.fixJsonBeforeSchema");return}}else if(Y.value.findIndex(l=>!!l)>=0){D.value=u("datasource.validation.fixBodyBeforeSchema");return}z.value=!0;try{const o=await ma(N.value==="JSON"?E():A());Xt(o)}catch(o){D.value=Wt(o)}finally{z.value=!1}}}function Yt(o,l){if(o==="string")return{ok:!0,value:l};if(o==="number"){const n=l.trim(),f=Number(n);return!n||!Number.isFinite(f)?{ok:!1,error:u("datasource.validation.invalidNumber")}:{ok:!0,value:f}}if(o==="boolean")return{ok:!0,value:l==="true"};if(o==="null")return{ok:!0,value:null};try{const n=JSON.parse(l);return o==="object"?ya(n)?{ok:!0,value:ze(n)}:{ok:!1,error:u("datasource.validation.invalidObject")}:!Array.isArray(n)||!yt(n)?{ok:!1,error:u("datasource.validation.invalidArray")}:{ok:!0,value:ze(n)}}catch{return{ok:!1,error:u(o==="object"?"datasource.validation.invalidObject":"datasource.validation.invalidArray")}}}function we(o){const l=mt(o.dataType,o.mock);return o.dataType==="object"||o.dataType==="array"?g(l):o.dataType==="null"?"null":String(l)}return ie(()=>a.value,o=>{Ft(o)},{deep:!0}),(o,l)=>(r(),c("div",co,[i("div",io,[i("div",uo,h(k(u)("datasource.title")),1),i("div",{class:"ce-datasource-tool__type-switch","aria-label":k(u)("datasource.fields.type")},[i("button",{type:"button",class:te(["ce-datasource-tool__type-button",{"ce-datasource-tool__type-button--active":N.value==="JSON"}]),disabled:M.value,"data-testid":"datasource-type-json",onClick:l[0]||(l[0]=n=>tt("JSON"))}," JSON ",10,mo),i("button",{type:"button",class:te(["ce-datasource-tool__type-button",{"ce-datasource-tool__type-button--active":N.value==="API"}]),disabled:M.value,"data-testid":"datasource-type-api",onClick:l[1]||(l[1]=n=>tt("API"))}," API ",10,yo)],8,po)]),N.value==="JSON"?(r(),c("div",fo,[i("label",vo,[i("span",ho,h(k(u)("datasource.fields.rawData")),1),i("textarea",{class:"ce-datasource-tool__textarea ce-datasource-tool__textarea--json","data-testid":"datasource-raw-data",spellcheck:"false",readonly:M.value,value:d.value,onInput:Vt,onKeydown:l[2]||(l[2]=Z(()=>{},["stop"]))},null,40,_o)]),m.value?(r(),c("p",bo,h(m.value),1)):L("",!0)])):(r(),c("div",go,[i("div",ko,[i("label",wo,[i("span",Co,h(k(u)("datasource.fields.domain")),1),i("input",{class:"ce-datasource-tool__input","data-testid":"datasource-domain",type:"text",readonly:M.value,value:$.domain,onInput:l[3]||(l[3]=n=>at("domain",n.target.value)),onKeydown:l[4]||(l[4]=Z(()=>{},["stop"]))},null,40,To)]),i("label",xo,[i("span",$o,h(k(u)("datasource.fields.path")),1),i("input",{class:"ce-datasource-tool__input","data-testid":"datasource-path",type:"text",readonly:M.value,value:$.path,onInput:l[5]||(l[5]=n=>at("path",n.target.value)),onKeydown:l[6]||(l[6]=Z(()=>{},["stop"]))},null,40,So)]),i("label",Eo,[i("span",No,h(k(u)("datasource.fields.method")),1),i("select",{class:"ce-datasource-tool__input","data-testid":"datasource-method",disabled:M.value,value:$.method,onChange:l[7]||(l[7]=n=>Jt(n.target.value))},[...l[26]||(l[26]=[i("option",{value:"GET"},"GET",-1),i("option",{value:"POST"},"POST",-1)])],40,Do)])]),i("details",Po,[i("summary",Io,[i("span",Mo,h(k(u)("datasource.sections.headers")),1),e.edit?(r(),c("button",{key:0,class:"ce-datasource-tool__action",type:"button","data-testid":"datasource-header-add",onClick:l[8]||(l[8]=Z(n=>ot("headerData"),["stop","prevent"]))},h(k(u)("datasource.actions.add")),1)):L("",!0)]),Ne("headerData").length?L("",!0):(r(),c("p",Ao,h(k(u)("datasource.empty")),1)),(r(!0),c(V,null,W(Ne("headerData"),(n,f)=>(r(),c("div",{key:`header-${f}`,class:"ce-datasource-tool__row"},[i("input",{class:"ce-datasource-tool__input","data-testid":`datasource-header-key-${f}`,type:"text",readonly:M.value,placeholder:k(u)("datasource.fields.key"),value:n.key,onInput:R=>De("headerData",f,"key",R.target.value),onKeydown:l[9]||(l[9]=Z(()=>{},["stop"]))},null,40,Bo),i("input",{class:"ce-datasource-tool__input","data-testid":`datasource-header-mock-${f}`,type:"text",readonly:M.value,placeholder:k(u)("datasource.fields.mock"),value:n.mock,onInput:R=>De("headerData",f,"mock",R.target.value),onKeydown:l[10]||(l[10]=Z(()=>{},["stop"]))},null,40,Oo),e.edit?(r(),c("button",{key:0,class:"ce-datasource-tool__remove",type:"button","data-testid":`datasource-header-remove-${f}`,"aria-label":k(u)("datasource.actions.remove"),onClick:R=>lt("headerData",f)},h(k(u)("datasource.actions.remove")),9,Ro)):L("",!0)]))),128))]),i("details",Lo,[i("summary",zo,[i("span",Fo,h(k(u)("datasource.sections.queries")),1),e.edit?(r(),c("button",{key:0,class:"ce-datasource-tool__action",type:"button","data-testid":"datasource-query-add",onClick:l[11]||(l[11]=Z(n=>ot("queryData"),["stop","prevent"]))},h(k(u)("datasource.actions.add")),1)):L("",!0)]),Ne("queryData").length?L("",!0):(r(),c("p",Vo,h(k(u)("datasource.empty")),1)),(r(!0),c(V,null,W(Ne("queryData"),(n,f)=>(r(),c("div",{key:`query-${f}`,class:"ce-datasource-tool__row"},[i("input",{class:"ce-datasource-tool__input","data-testid":`datasource-query-key-${f}`,type:"text",readonly:M.value,placeholder:k(u)("datasource.fields.key"),value:n.key,onInput:R=>De("queryData",f,"key",R.target.value),onKeydown:l[12]||(l[12]=Z(()=>{},["stop"]))},null,40,jo),i("input",{class:"ce-datasource-tool__input","data-testid":`datasource-query-mock-${f}`,type:"text",readonly:M.value,placeholder:k(u)("datasource.fields.mock"),value:n.mock,onInput:R=>De("queryData",f,"mock",R.target.value),onKeydown:l[13]||(l[13]=Z(()=>{},["stop"]))},null,40,Jo),e.edit?(r(),c("button",{key:0,class:"ce-datasource-tool__remove",type:"button","data-testid":`datasource-query-remove-${f}`,"aria-label":k(u)("datasource.actions.remove"),onClick:R=>lt("queryData",f)},h(k(u)("datasource.actions.remove")),9,Ho)):L("",!0)]))),128))]),i("details",qo,[i("summary",Ko,[i("span",Uo,h(k(u)("datasource.sections.body")),1),e.edit?(r(),c("button",{key:0,class:"ce-datasource-tool__action",type:"button","data-testid":"datasource-body-add",onClick:Z(Ht,["stop","prevent"])},h(k(u)("datasource.actions.add")),1)):L("",!0)]),$.bodyData.length?L("",!0):(r(),c("p",Wo,h(k(u)("datasource.empty")),1)),(r(!0),c(V,null,W($.bodyData,(n,f)=>(r(),c("div",{key:`body-${f}`,class:"ce-datasource-tool__body-row"},[i("input",{class:"ce-datasource-tool__input","data-testid":`datasource-body-key-${f}`,type:"text",readonly:M.value,placeholder:k(u)("datasource.fields.key"),value:n.key,onInput:R=>qt(f,R.target.value),onKeydown:l[14]||(l[14]=Z(()=>{},["stop"]))},null,40,Xo),i("select",{class:"ce-datasource-tool__input","data-testid":`datasource-body-type-${f}`,disabled:M.value,value:n.dataType,onChange:R=>Kt(f,R.target.value)},[(r(!0),c(V,null,W(k(x),R=>(r(),c("option",{key:R,value:R},h(R),9,Zo))),128))],40,Go),n.dataType==="boolean"?(r(),c("select",{key:0,class:"ce-datasource-tool__input","data-testid":`datasource-body-mock-${f}`,disabled:M.value,value:String(n.mock===!0),onChange:R=>Oe(f,R.target.value)},[...l[27]||(l[27]=[i("option",{value:"false"},"false",-1),i("option",{value:"true"},"true",-1)])],40,Yo)):n.dataType==="null"?(r(),c("input",{key:1,class:"ce-datasource-tool__input","data-testid":`datasource-body-mock-${f}`,type:"text",readonly:"",value:"null"},null,8,Qo)):n.dataType==="object"||n.dataType==="array"?(r(),c("textarea",{key:2,class:"ce-datasource-tool__textarea ce-datasource-tool__textarea--mock","data-testid":`datasource-body-mock-${f}`,spellcheck:"false",readonly:M.value,value:X.value[f]??we(n),onInput:R=>Oe(f,R.target.value),onKeydown:l[15]||(l[15]=Z(()=>{},["stop"]))},null,40,el)):(r(),c("input",{key:3,class:"ce-datasource-tool__input","data-testid":`datasource-body-mock-${f}`,type:n.dataType==="number"?"number":"text",readonly:M.value,placeholder:k(u)("datasource.fields.mock"),value:X.value[f]??we(n),onInput:R=>Oe(f,R.target.value),onKeydown:l[16]||(l[16]=Z(()=>{},["stop"]))},null,40,tl)),e.edit?(r(),c("button",{key:4,class:"ce-datasource-tool__remove",type:"button","data-testid":`datasource-body-remove-${f}`,"aria-label":k(u)("datasource.actions.remove"),onClick:R=>Ut(f)},h(k(u)("datasource.actions.remove")),9,al)):L("",!0),Y.value[f]?(r(),c("p",{key:5,class:"ce-datasource-tool__body-error","data-testid":`datasource-body-error-${f}`},h(Y.value[f]),9,ol)):L("",!0)]))),128))])])),i("div",ll,[i("div",null,[i("div",nl,h(k(u)("datasource.sections.generateFields")),1),i("p",sl,h(k(u)("datasource.help.generateFields")),1)]),i("div",rl,[e.edit?(r(),c("button",{key:0,class:"ce-datasource-tool__schema-button",type:"button","data-testid":"datasource-json-schema-parse-button",disabled:z.value,onClick:Zt},h(z.value?k(u)("datasource.actions.generatingFields"):k(u)("datasource.actions.generateFields")),9,cl)):L("",!0),v.value?(r(),c("span",il,h(k(u)("datasource.fields.generatedFields"))+": "+h(oe.value.length),1)):L("",!0)]),D.value?(r(),c("p",dl,h(D.value),1)):L("",!0)]),i("div",ul,[i("div",pl,[i("div",null,[i("div",ml,h(k(u)("datasource.sections.fieldSelection")),1),i("p",yl,h(k(u)("datasource.help.fieldSelection")),1)]),v.value?(r(),c("input",{key:0,class:"ce-datasource-tool__input ce-datasource-tool__schema-search","data-testid":"datasource-schema-search",type:"search",placeholder:k(u)("datasource.fields.searchFields"),value:K.value,onInput:l[17]||(l[17]=n=>K.value=n.target.value),onKeydown:l[18]||(l[18]=Z(()=>{},["stop"]))},null,40,fl)):L("",!0)]),i("div",vl,[i("button",{type:"button",class:te(["ce-datasource-tool__tab",{"ce-datasource-tool__tab--active":j.value==="list"}]),"data-testid":"datasource-schema-tab-list",onClick:l[19]||(l[19]=n=>j.value="list")},h(k(u)("datasource.tabs.list")),3),i("button",{type:"button",class:te(["ce-datasource-tool__tab",{"ce-datasource-tool__tab--active":j.value==="form"}]),"data-testid":"datasource-schema-tab-form",onClick:l[20]||(l[20]=n=>j.value="form")},h(k(u)("datasource.tabs.form")),3),i("button",{type:"button",class:te(["ce-datasource-tool__tab",{"ce-datasource-tool__tab--active":j.value==="advanced"}]),"data-testid":"datasource-schema-tab-advanced",onClick:l[21]||(l[21]=n=>j.value="advanced")},h(k(u)("datasource.tabs.advanced")),3)]),j.value==="list"?(r(),c("div",hl,[v.value?le.value.length?(r(),c("label",bl,[i("span",gl,h(k(u)("datasource.fields.recordPath")),1),i("select",{class:"ce-datasource-tool__input","data-testid":"datasource-list-record-path",disabled:M.value,value:ce.value,onChange:l[22]||(l[22]=n=>Gt(n.target.value))},[(r(!0),c(V,null,W(le.value,n=>(r(),c("option",{key:n.path||"root",value:n.path},h(t(n.path)),9,wl))),128))],40,kl)])):(r(),c("p",Cl,h(k(u)("datasource.noListRecord")),1)):(r(),c("p",_l,h(k(u)("datasource.emptySchema")),1)),ee.value.length?(r(),c("div",Tl,[i("div",xl,h(k(u)("datasource.fields.selectedFields"))+": "+h(ne.value),1),(r(!0),c(V,null,W(ee.value,n=>(r(),c("label",{key:n.path,class:"ce-datasource-tool__schema-field","data-testid":`datasource-list-field-${n.path}`},[i("input",{class:"ce-datasource-tool__checkbox",type:"checkbox",disabled:M.value,checked:n.enabled,"data-testid":`datasource-list-field-enabled-${n.path}`,onChange:f=>rt("list",n.path,f.target.checked)},null,40,Sl),i("span",El,[i("input",{class:"ce-datasource-tool__input ce-datasource-tool__field-label-input",type:"text",readonly:M.value,value:n.label,"data-testid":`datasource-list-field-label-${n.path}`,onInput:f=>st("list",n.path,f.target.value),onKeydown:l[23]||(l[23]=Z(()=>{},["stop"]))},null,40,Nl),i("span",Dl,h(n.path),1)]),i("span",Pl,[i("span",Il,h(S(n.type)),1),i("span",Ml,h(T(n.componentHint)),1),n.required?(r(),c("span",Al,h(k(u)("datasource.fields.required")),1)):L("",!0)])],8,$l))),128))])):L("",!0)])):j.value==="form"?(r(),c("div",Bl,[Q.value.length?(r(),c("div",Ol,[i("div",Rl,h(k(u)("datasource.fields.selectedFields"))+": "+h(ue.value),1),(r(!0),c(V,null,W(Q.value,n=>(r(),c("label",{key:n.path,class:"ce-datasource-tool__schema-field","data-testid":`datasource-form-field-${n.path}`},[i("input",{class:"ce-datasource-tool__checkbox",type:"checkbox",disabled:M.value,checked:n.enabled,"data-testid":`datasource-form-field-enabled-${n.path}`,onChange:f=>rt("form",n.path,f.target.checked)},null,40,zl),i("span",Fl,[i("input",{class:"ce-datasource-tool__input ce-datasource-tool__field-label-input",type:"text",readonly:M.value,value:n.label,"data-testid":`datasource-form-field-label-${n.path}`,onInput:f=>st("form",n.path,f.target.value),onKeydown:l[24]||(l[24]=Z(()=>{},["stop"]))},null,40,Vl),i("span",jl,h(n.path),1)]),i("span",Jl,[i("span",Hl,h(S(n.type)),1),i("span",ql,h(T(n.componentHint)),1),n.required?(r(),c("span",Kl,h(k(u)("datasource.fields.required")),1)):L("",!0)])],8,Ll))),128))])):(r(),c("p",Ul,h(k(u)("datasource.noFormFields")),1))])):(r(),c("div",Wl,[v.value?(r(),c("div",Xl,[(r(!0),c(V,null,W(q.value,n=>(r(),c("div",{key:n.path||"root",class:"ce-datasource-tool__schema-node",style:pe({paddingLeft:`${n.depth*18}px`}),"data-testid":`datasource-schema-node-${p(n.path)}`},[i("span",Zl,h(n.name),1),i("span",Yl,h(n.displayPath),1),i("span",Ql,h(S(n.type)),1),n.required?(r(),c("span",en,h(k(u)("datasource.fields.required")),1)):L("",!0)],12,Gl))),128))])):L("",!0),i("label",tn,[i("span",an,h(k(u)("datasource.fields.jsonSchema")),1),i("textarea",{class:"ce-datasource-tool__textarea ce-datasource-tool__textarea--schema","data-testid":"datasource-json-schema",spellcheck:"false",readonly:M.value,value:w.value,onInput:jt,onKeydown:l[25]||(l[25]=Z(()=>{},["stop"]))},null,40,on)])]))])]))}}),wt=Se(nn,[["__scopeId","data-v-b51983e4"]]);function sn(){return typeof crypto<"u"&&typeof crypto.randomUUID=="function"?crypto.randomUUID().slice(0,10):Math.random().toString(36).slice(2,12)}function rn(e){return JSON.parse(JSON.stringify(e))}function Pt(e){return typeof e!="object"||e===null||Array.isArray(e)?{}:rn(e)}function _e(e){if(typeof e!="object"||e===null||Array.isArray(e))return;const a=e;if(!(typeof a.type!="string"||typeof a.data!="object"||a.data===null||Array.isArray(a.data)))return{id:typeof a.id=="string"&&a.id?a.id:sn(),type:a.type,data:Pt(a.data)}}function Te(e){return{id:e.id,type:e.type,data:Pt(e.data)}}const It=ke({toolbox:{get title(){return P.t("editorSelector.toolboxTitle")},icon:'<svg width="18" height="18" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><rect x="4" y="5" width="16" height="14" rx="2" fill="none" stroke="currentColor" stroke-width="2"/><path d="M8 9h8M8 13h5" stroke="currentColor" stroke-width="2" stroke-linecap="round"/><path d="M16 15l2 2 3-4" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></svg>'},createInitialProps:()=>({value:void 0}),normalizeProps:e=>({edit:e.edit??!1,value:_e(e.value),excludeToolNames:Array.isArray(e.excludeToolNames)?e.excludeToolNames.filter(a=>typeof a=="string"):[]}),serialize:e=>{const a=_e(e.value);return a?{value:a}:{}}}),cn=["innerHTML"],dn={key:1,class:"overflow-auto"},un={key:3,class:"overflow-auto rounded bg-slate-100 p-2 text-xs dark:bg-slate-800"},Ae=ge({__name:"EditorPreviewBlock",props:{block:{},compactTable:{type:Boolean,default:!1}},setup(e){const a=e,u=U(()=>a.compactTable?"min-w-full border-collapse text-xs":"min-w-full border-collapse text-sm"),_=U(()=>a.compactTable?"border border-slate-200 px-2 py-1 text-left align-top dark:border-slate-700":"border border-slate-200 px-3 py-2 text-left align-top dark:border-slate-700");function x(v){const w=v.data.content;return Array.isArray(w)?w.filter(D=>Array.isArray(D)):[]}function N(v,w){const D=v.data.withHeadings;return w===0&&D===!0}function B(v){return Mn(v)}function d(v){const w=Be(v);return(w==null?void 0:w.component)??null}function m(v){var D;const w=Be(v.type);return w?{...w.normalizeProps({...((D=w.createInitialProps)==null?void 0:D.call(w))??{},...v.data,edit:!1})}:{edit:!1,...v.data}}return(v,w)=>e.block.type==="paragraph"?(r(),c("p",{key:0,class:"text-sm leading-6",innerHTML:e.block.data.text},null,8,cn)):e.block.type==="table"?(r(),c("div",dn,[i("table",{class:te(u.value)},[i("tbody",null,[(r(!0),c(V,null,W(x(e.block),(D,z)=>(r(),c("tr",{key:`table-${z}`,class:"border-b border-slate-200 dark:border-slate-700"},[(r(!0),c(V,null,W(D,(O,j)=>(r(),be(Ie(N(e.block,z)?"th":"td"),{key:`table-${z}-${j}`,class:te(_.value),innerHTML:O},null,8,["class","innerHTML"]))),128))]))),128))])],2)])):B(e.block.type)?(r(),be(Ie(d(e.block.type)),ba(Qe({key:2},m(e.block))),null,16)):(r(),c("pre",un,h(e.block),1))}}),pn={key:1,class:"ce-editor-selector-tool__preview","data-testid":"preview-editor-selector-value"},mn=ge({__name:"MEditorSelector",props:{edit:{type:Boolean,default:!1},value:{default:void 0},excludeToolNames:{},onChange:{},onToolChange:{}},setup(e){const a="MEditorSelector",u=new Set(["paragraph","table","columns"]),_=e,{t:x,localeValue:N}=xe(),B=G(null),d=G(null),m=G(_e(_.value)),v=U(()=>m.value!==void 0);let w=null,D=!1,z=null,O=null,j=null,K=$(m.value);function $(t){return{blocks:t?[Te(t)]:[]}}function X(t){return t?JSON.stringify(t):""}function Y(){const t=new Set([a]);return(_.excludeToolNames??[]).forEach(s=>{t.add(s)}),t}function M(t){return!Y().has(t)&&!u.has(t)&&!!Be(t)}function ae(t){if(M(t.type))return _e(t)}function oe(t){const b=(Array.isArray(t.blocks)?t.blocks:[]).map(E=>ae(E)).filter(E=>E!==void 0);return b[b.length-1]}function le(t,s){const b=Array.isArray(t.blocks)?t.blocks:[];return s?b.length!==1?!0:X(ae(b[0]))!==X(s):b.some(E=>M(E.type))}function I(t){var b,E;const s={edit:_.edit,value:t?Te(t):void 0};(b=_.onToolChange)==null||b.call(_,s),(E=_.onChange)==null||E.call(_,s)}async function J(t){const s=w;if(s){D=!0,K=$(t);try{await s.blocks.render(K)}finally{await ve(),D=!1}}}async function q(t){if(D)return;const s=oe(t),b=X(m.value),E=X(s);m.value=s?Te(s):void 0,K=$(m.value),b!==E&&I(m.value),le(t,m.value)&&await J(m.value)}function ee(){O!==null&&(window.clearTimeout(O),O=null)}function Q(){!w||D||(ee(),O=window.setTimeout(async()=>{if(O=null,!(!w||D))try{const t=await w.save();await q(t)}catch{}},0))}function ce(){const t=d.value;t&&(ne(),z=new MutationObserver(()=>{Q()}),z.observe(t,{attributes:!0,characterData:!0,childList:!0,subtree:!0}),t.addEventListener("input",Q),t.addEventListener("change",Q),t.addEventListener("click",Q))}function ne(){const t=d.value;z==null||z.disconnect(),z=null,ee(),t==null||t.removeEventListener("input",Q),t==null||t.removeEventListener("change",Q),t==null||t.removeEventListener("click",Q)}function ue(t){return t.querySelector(".codex-editor > .ce-toolbar")}function g(t){return t.closest('[data-testid="editor-form-tool"]')??t.closest('[data-testid="editor-panel"]')??document}function C(){const t=B.value;t&&g(t).querySelectorAll(".ce-editor-selector-tool").forEach(s=>{if(s===t)return;const b=ue(s);b==null||b.classList.remove("ce-toolbar--opened")})}function S(){B.value&&C()}function T(){j!==null&&(window.clearTimeout(j),j=null)}function se(){T(),j=window.setTimeout(()=>{j=null,S()},0)}async function re(){if(!_.edit||!d.value||w)return;K=$(m.value);const t=Rt({edit:!0},{exclude:Y()});w=new He({holder:d.value,placeholder:x("editorSelector.placeholder"),tools:t,data:K,minHeight:0,i18n:{messages:Et(N.value)},onChange:async()=>{if(!w)return;const s=await w.save();await q(s)}}),ce()}async function y(){const t=w;if(t){w=null,ne();try{const s=await t.save();m.value=oe(s),K=$(m.value)}catch{K=$(m.value)}t.destroy()}}async function p(){await y(),await ve(),await re()}return Ze(async()=>{await re()}),ie(()=>_.value,async t=>{const s=_e(t);X(s)!==X(m.value)&&(m.value=s,K=$(s),w&&await J(s))},{deep:!0}),ie(()=>_.edit,async t=>{if(t){await ve(),await re();return}await y()}),ie(N,async()=>{w&&await p()}),ie(()=>_.excludeToolNames,async()=>{w&&await p()},{deep:!0}),Ye(async()=>{T(),await y()}),(t,s)=>(r(),c("div",{ref_key:"rootRef",ref:B,class:te(["ce-editor-selector-tool",{"ce-editor-selector-tool--filled":v.value}]),"data-testid":"editor-selector-tool",onMouseenter:se,onMousemove:se},[e.edit?(r(),c("div",{key:0,class:te(["ce-editor-selector-tool__editor-shell",{"ce-editor-selector-tool__editor-shell--filled":v.value}]),"data-testid":"editor-selector-shell"},[i("div",{ref_key:"holderRef",ref:d,class:"ce-editor-selector-tool__editor","data-testid":"editor-selector-surface"},null,512)],2)):(r(),c("div",pn,[m.value?(r(),be(Ae,{key:0,block:m.value},null,8,["block"])):L("",!0)]))],34))}}),Mt=Se(mn,[["__scopeId","data-v-865609b6"]]),yn=Object.freeze(Object.defineProperty({__proto__:null,default:Mt,mEditorSelectorEditorTool:It},Symbol.toStringTag,{value:"Module"})),fn={key:0,class:"ce-form-item-tool__edit-shell","data-testid":"form-item-edit-shell"},vn={class:"ce-form-item-tool__body"},hn={class:"ce-form-item-tool__label","data-testid":"form-item-label-preview"},_n={class:"ce-form-item-tool__editor","data-testid":"form-item-editor-field"},bn={key:1,class:"ce-form-item-tool__body"},gn={class:"ce-form-item-tool__label","data-testid":"preview-form-item-label"},kn={class:"ce-form-item-tool__editor","data-testid":"preview-form-item-editor"},wn={key:1,class:"ce-form-item-tool__empty"};function At(){return`field_${typeof crypto<"u"&&typeof crypto.randomUUID=="function"?crypto.randomUUID().slice(0,8):Math.random().toString(36).slice(2,10)}`}function Bt(){return P.t("formItem.defaultLabelName")}function Ge(e){return e==="Horizontal"?"Horizontal":"Vertical"}function Cn(e){return typeof e=="string"&&e.trim()?e:Bt()}function Tn(e,a){return typeof e=="string"&&e.trim()?e.trim():a||At()}function xn(e){return e?Te(e):void 0}function $e(e,a){return{edit:e.edit??!1,labelName:Cn(e.labelName),variableName:Tn(e.variableName,a),editor:_e(e.editor),layout:Ge(e.layout)}}function $n(e){const a=$e(e);return{labelName:a.labelName,variableName:a.variableName,...a.editor?{editor:Te(a.editor)}:{},layout:a.layout}}const Sn=ke({toolbox:{get title(){return P.t("formItem.toolboxTitle")},icon:'<svg width="18" height="18" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><rect x="4" y="5" width="16" height="14" rx="2" fill="none" stroke="currentColor" stroke-width="2"/><path d="M8 9h8M8 13h3" stroke="currentColor" stroke-width="2" stroke-linecap="round"/><circle cx="16" cy="13" r="2" fill="none" stroke="currentColor" stroke-width="2"/></svg>'},propertyPanel:{get title(){return P.t("formItem.propertyPanelTitle")},get fields(){return[{key:"labelName",label:P.t("formItem.properties.labelName"),placeholder:P.t("formItem.placeholders.labelName")},{key:"variableName",label:P.t("formItem.properties.variableName"),placeholder:P.t("formItem.placeholders.variableName")},{key:"layout",label:P.t("formItem.properties.layout"),type:"select",options:[{label:P.t("formItem.layouts.vertical"),value:"Vertical"},{label:P.t("formItem.layouts.horizontal"),value:"Horizontal"}]}]}},createInitialProps:()=>({labelName:Bt(),variableName:At(),editor:void 0,layout:"Vertical"}),normalizeProps:e=>$e(e),serialize:$n}),En=ge({__name:"MFormItem",props:{edit:{type:Boolean,default:!1},labelName:{},variableName:{},editor:{default:void 0},layout:{default:"Vertical"},onChange:{},onToolChange:{}},setup(e){const a=e,{t:u}=xe(),_=["MFormItem","MForm"],x=St($e(a));function N(){var v,w;const m={edit:a.edit,labelName:x.labelName,variableName:x.variableName,editor:xn(x.editor),layout:Ge(x.layout)};(v=a.onToolChange)==null||v.call(a,m),(w=a.onChange)==null||w.call(a,m)}function B(m){m.labelName!==void 0&&(x.labelName=m.labelName),m.variableName!==void 0&&(x.variableName=m.variableName),"editor"in m&&(x.editor=_e(m.editor)),m.layout!==void 0&&(x.layout=Ge(m.layout)),N()}function d(m){B({editor:m.value})}return ie(()=>({labelName:a.labelName,variableName:a.variableName,editor:a.editor,layout:a.layout,edit:a.edit}),m=>{Object.assign(x,$e(m,x.variableName))},{deep:!0}),(m,v)=>(r(),c("div",{class:te(["ce-form-item-tool",{"ce-form-item-tool--edit":e.edit,"ce-form-item-tool--horizontal":x.layout==="Horizontal"}]),"data-testid":"editor-form-item-tool"},[e.edit?(r(),c("div",fn,[i("div",vn,[i("div",hn,h(x.labelName),1),i("div",_n,[Nt(Mt,{edit:!0,value:x.editor,"exclude-tool-names":_,"on-change":d},null,8,["value"])])])])):(r(),c("div",bn,[i("div",gn,h(x.labelName),1),i("div",kn,[x.editor?(r(),be(Ae,{key:0,block:x.editor},null,8,["block"])):(r(),c("span",wn,h(k(u)("formItem.emptyEditor")),1))])]))],2))}}),Ct=Se(En,[["__scopeId","data-v-e6b491c3"]]);function Nn(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function Ot(e){const a=$e({...e,edit:!1});return{labelName:a.labelName,variableName:a.variableName,...a.editor?{editor:Te(a.editor)}:{},layout:a.layout}}function Dn(e){if(Nn(e))return Ot(e)}function Tt(e){return Array.isArray(e)?e.map(a=>Dn(a)).filter(a=>a!==void 0):[]}const Pn=ke({toolbox:{get title(){return P.t("form.toolboxTitle")},icon:'<svg width="18" height="18" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><rect x="4" y="4" width="16" height="16" rx="2" fill="none" stroke="currentColor" stroke-width="2"/><path d="M8 8h8M8 12h8M8 16h4" stroke="currentColor" stroke-width="2" stroke-linecap="round"/></svg>'},createInitialProps:()=>({items:[]}),normalizeProps:e=>({edit:e.edit??!1,items:Tt(e.items)}),serialize:e=>({items:Tt(e.items).map(a=>Ot(a))})}),In=ke({toolbox:{get title(){return P.t("page.toolboxTitle")},icon:'<svg width="18" height="18" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><rect x="4" y="3" width="16" height="18" rx="2" ry="2" fill="none" stroke="currentColor" stroke-width="2"/><path d="M8 8h8M8 12h8M8 16h5" stroke="currentColor" stroke-width="2" stroke-linecap="round"/></svg>'},createInitialProps:()=>({edit:!1,value:[]}),normalizeProps:e=>({edit:e.edit??!1,value:Array.isArray(e.value)?e.value:[]}),serialize:e=>({value:e.value})});function ye(e){const a=e.name||e.__name;if(!a)throw new Error("Editor component is missing both name and __name.");return a}const et={MPage:{component:de(Ve(()=>je(()=>import("./MPage-okwcd_fI.js"),__vite__mapDeps([0,1,2,3])))),...In},MEditorSelector:{component:de(Ve(()=>je(()=>Promise.resolve().then(()=>yn),void 0))),...It},MForm:{component:de(Ve(()=>je(()=>import("./MForm-IOgKE4fR.js"),__vite__mapDeps([4,2,1,3,5])))),...Pn},[ye(bt)]:{component:de(bt),...wa},[ye(_t)]:{component:de(_t),...ka},[ye(gt)]:{component:de(gt),...Fa},[ye(kt)]:{component:de(kt),...lo},[ye(wt)]:{component:de(wt),...ln},[ye(Ct)]:{component:de(Ct),...Sn},[ye(ht)]:{component:de(ht),...ga}};function Be(e){return et[e]}function Mn(e){return e in et}function An(){return et}const xt=new Map;class Bn{static create(a){const u=xt.get(a);if(u)return u;const _=Be(a);if(!_)throw new Error(`EditorToolFactory could not find a registered component for "${a}".`);class x{constructor({data:d,config:m}){Ce(this,"state");Ce(this,"wrapper",null);Ce(this,"contentRoot",null);Ce(this,"vueApp",null);Ce(this,"propertyDialog",null);const v={...m??{},...d??{}};if(typeof v.edit!="boolean")throw new Error(`EditorToolFactory requires config.edit to be explicitly set for "${a}".`);this.state=_.normalizeProps({...v})}static get toolbox(){return _.toolbox}render(){const d=document.createElement("div");d.className="mokelay-editor-tool",d.dataset.toolName=a,d.dataset.testid=`editor-tool-${a}`;const m=document.createElement("div");return m.className="mokelay-editor-tool__content",m.dataset.testid=`editor-tool-content-${a}`,d.appendChild(m),this.wrapper=d,this.contentRoot=m,this.createPropertyDialog(),this.mountVueApp(),d}destroy(){var d;this.unmountVueApp(),(d=this.propertyDialog)==null||d.remove(),this.propertyDialog=null,this.contentRoot=null,this.wrapper=null}save(){return _.serialize(this.state)}renderSettings(){var d;return(d=_.propertyPanel)!=null&&d.fields.length?{icon:'<svg width="17" height="17" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M19.14 12.94C19.18 12.63 19.2 12.32 19.2 12C19.2 11.68 19.18 11.36 19.13 11.06L21.11 9.51C21.29 9.37 21.34 9.11 21.23 8.9L19.35 5.64C19.24 5.43 18.99 5.35 18.77 5.42L16.44 6.17C15.96 5.8 15.44 5.48 14.87 5.23L14.51 2.75C14.48 2.52 14.28 2.35 14.04 2.35H10.28C10.04 2.35 9.84 2.52 9.81 2.75L9.45 5.23C8.88 5.48 8.36 5.81 7.88 6.17L5.55 5.42C5.33 5.35 5.08 5.43 4.97 5.64L3.09 8.9C2.98 9.11 3.03 9.37 3.21 9.51L5.19 11.06C5.14 11.36 5.12 11.68 5.12 12C5.12 12.32 5.14 12.64 5.19 12.94L3.21 14.49C3.03 14.63 2.98 14.89 3.09 15.1L4.97 18.36C5.08 18.57 5.33 18.65 5.55 18.58L7.88 17.83C8.36 18.2 8.88 18.52 9.45 18.77L9.81 21.25C9.84 21.48 10.04 21.65 10.28 21.65H14.04C14.28 21.65 14.48 21.48 14.51 21.25L14.87 18.77C15.44 18.52 15.96 18.19 16.44 17.83L18.77 18.58C18.99 18.65 19.24 18.57 19.35 18.36L21.23 15.1C21.34 14.89 21.29 14.63 21.11 14.49L19.14 12.94ZM12.16 15.6C10.17 15.6 8.56 13.99 8.56 12C8.56 10.01 10.17 8.4 12.16 8.4C14.15 8.4 15.76 10.01 15.76 12C15.76 13.99 14.15 15.6 12.16 15.6Z" fill="currentColor"/></svg>',title:P.t("editor.properties"),onActivate:()=>{this.openPropertyDialog()},closeOnActivate:!0}:[]}mountVueApp(){this.contentRoot&&(this.unmountVueApp(),this.vueApp=qe(_.component,{...this.state,onToolChange:d=>{Object.assign(this.state,d)},onChange:d=>{Object.assign(this.state,d)}}),this.vueApp.mount(this.contentRoot))}unmountVueApp(){var d;(d=this.vueApp)==null||d.unmount(),this.vueApp=null}createPropertyDialog(){var w;if(!this.wrapper||!((w=_.propertyPanel)!=null&&w.fields.length))return;const d=document.createElement("dialog");d.className="mokelay-editor-tool__property-dialog",d.dataset.testid="tool-property-dialog",d.dataset.toolName=a;const m=_.propertyPanel.title||P.t("editor.propertyDialogTitle"),v=_.propertyPanel.fields.map(D=>this.renderPropertyField(D)).join("");d.innerHTML=`
|
|
3
|
-
<form method="dialog" class="mokelay-editor-tool__property-panel" data-testid="tool-property-panel">
|
|
4
|
-
<div class="mokelay-editor-tool__property-header">
|
|
5
|
-
<h3 class="mokelay-editor-tool__property-title" data-testid="tool-property-title">${this.escapeHtml(m)}</h3>
|
|
6
|
-
<button type="submit" class="mokelay-editor-tool__property-close" data-testid="tool-property-close">${this.escapeHtml(P.t("editor.close"))}</button>
|
|
7
|
-
</div>
|
|
8
|
-
<div class="mokelay-editor-tool__property-body" data-testid="tool-property-body">
|
|
9
|
-
${v}
|
|
10
|
-
</div>
|
|
11
|
-
</form>
|
|
12
|
-
`,this.wrapper.appendChild(d),this.propertyDialog=d,this.bindPropertyInputs()}openPropertyDialog(){this.propertyDialog&&(this.syncPropertyDialogValues(),this.propertyDialog.open||this.propertyDialog.showModal())}syncPropertyDialogValues(){this.propertyDialog&&this.propertyDialog.querySelectorAll("[data-property-key]").forEach(d=>{const m=d.dataset.propertyKey;if(!m)return;const v=this.getPropertyFieldValue(m);if(d instanceof HTMLInputElement&&d.type==="checkbox"){d.checked=v===!0;return}d.value=typeof v=="string"?v:""})}updateProperty(d,m){this.state[d]=m,this.mountVueApp()}getPropertyFieldValue(d){return this.state[d]}escapeHtml(d){return d.replace(/&/g,"&").replace(/"/g,""").replace(/</g,"<").replace(/>/g,">")}renderPropertyField(d){if(d.type==="checkbox")return`
|
|
13
|
-
<label class="mokelay-editor-tool__property-field mokelay-editor-tool__property-field--checkbox">
|
|
14
|
-
<input
|
|
15
|
-
class="mokelay-editor-tool__property-checkbox"
|
|
16
|
-
data-testid="tool-property-input-${d.key}"
|
|
17
|
-
data-property-key="${d.key}"
|
|
18
|
-
data-property-type="checkbox"
|
|
19
|
-
type="checkbox"
|
|
20
|
-
${this.getPropertyFieldValue(d.key)===!0?"checked":""}
|
|
21
|
-
/>
|
|
22
|
-
<span class="mokelay-editor-tool__property-label">${this.escapeHtml(d.label)}</span>
|
|
23
|
-
</label>
|
|
24
|
-
`;if(d.type==="select"){const v=this.getPropertyFieldValue(d.key),w=(d.options??[]).map(D=>`
|
|
25
|
-
<option value="${this.escapeHtml(D.value)}" ${v===D.value?"selected":""}>${this.escapeHtml(D.label)}</option>
|
|
26
|
-
`).join("");return`
|
|
27
|
-
<label class="mokelay-editor-tool__property-field">
|
|
28
|
-
<span class="mokelay-editor-tool__property-label">${this.escapeHtml(d.label)}</span>
|
|
29
|
-
<select
|
|
30
|
-
class="mokelay-editor-tool__property-input"
|
|
31
|
-
data-testid="tool-property-input-${d.key}"
|
|
32
|
-
data-property-key="${d.key}"
|
|
33
|
-
data-property-type="select"
|
|
34
|
-
>
|
|
35
|
-
${w}
|
|
36
|
-
</select>
|
|
37
|
-
</label>
|
|
38
|
-
`}const m=this.getPropertyFieldValue(d.key);return`
|
|
39
|
-
<label class="mokelay-editor-tool__property-field">
|
|
40
|
-
<span class="mokelay-editor-tool__property-label">${this.escapeHtml(d.label)}</span>
|
|
41
|
-
<input
|
|
42
|
-
class="mokelay-editor-tool__property-input"
|
|
43
|
-
data-testid="tool-property-input-${d.key}"
|
|
44
|
-
data-property-key="${d.key}"
|
|
45
|
-
data-property-type="text"
|
|
46
|
-
type="text"
|
|
47
|
-
value="${this.escapeHtml(typeof m=="string"?m:"")}"
|
|
48
|
-
placeholder="${this.escapeHtml(d.placeholder??"")}"
|
|
49
|
-
/>
|
|
50
|
-
</label>
|
|
51
|
-
`}bindPropertyInputs(){this.propertyDialog&&this.propertyDialog.querySelectorAll("[data-property-key]").forEach(d=>{const m=d instanceof HTMLInputElement?d.type==="checkbox"?"change":"input":"change";d.addEventListener(m,()=>{const v=d.dataset.propertyKey;v&&this.updateProperty(v,this.readPropertyInputValue(d))})})}readPropertyInputValue(d){return d instanceof HTMLInputElement&&d.type==="checkbox"?d.checked:d.value}}const N=x;return xt.set(a,N),N}}function Rt(e={},a={}){const u=new Set(a.exclude??[]);return Object.fromEntries(Object.entries(An()).filter(([_])=>!u.has(_)).map(([_,x])=>{var N;return[_,{class:Bn.create(_),config:x.normalizeProps({...((N=x.createInitialProps)==null?void 0:N.call(x))??{},...e})}]}))}const On={key:1,"data-testid":"preview-blocks",class:"space-y-1"},Rn=["data-testid"],Ln={key:1,"data-testid":"preview-columns",class:"grid gap-3 md:grid-cols-2"},zn=["data-testid"],Fn=["data-testid"],Hn=ge({__name:"MPage",props:{edit:{type:Boolean,default:!1},value:{default:()=>[]},onToolChange:{}},emits:["change"],setup(e,{expose:a,emit:u}){const _=e,x=u,N=U(()=>_.edit);let B=null,d=!1,m=!1,v={blocks:_.value};const{t:w,localeValue:D}=xe(),z=G(null),O=U(()=>Array.isArray(_.value)?_.value:[]);function j(I){const J=I.data.cols;return Array.isArray(J)?J.filter(q=>typeof q=="object"&&q!==null):[]}function K(I){return Array.isArray(I.blocks)?I.blocks:[]}function $(I){return{blocks:I}}function X(I,J){return JSON.stringify(I)===JSON.stringify(J)}function Y(I){var q;const J={edit:_.edit,value:I};(q=_.onToolChange)==null||q.call(_,J),m=!0,x("change",I)}async function M(){if(!z.value||!N.value||B)return;const I={...Rt({edit:!0}),table:{class:ta,inlineToolbar:!0}};B=new He({holder:z.value,placeholder:w("editor.placeholder"),tools:{...I,columns:{class:aa,config:{EditorJsLibrary:He,tools:I}}},data:v,i18n:{messages:Et(D.value)},onChange:async()=>{if(!B)return;const J=await B.save();v=J,!d&&Y(J.blocks)}})}async function ae(){const I=B;if(I){B=null;try{v=await I.save()}catch{v=$(_.value)}I.destroy()}}async function oe(){await ae(),await ve(),await M()}async function le(){if(!B)return v;const I=await B.save();return v=I,I}return a({saveEditor:le}),Ze(async()=>{await M()}),ie(()=>_.value,async I=>{if(m){m=!1;return}const J=Array.isArray(I)?I:[],q=Array.isArray(v.blocks)?v.blocks:[];X(J,q)||(d=!0,v=$(J),B&&await oe(),d=!1)},{deep:!0}),ie(D,async()=>{B&&await oe()}),ie(N,async I=>{if(I){await ve(),await M();return}await ae()}),Ye(async()=>{await ae()}),(I,J)=>N.value?(r(),c("div",{key:0,ref_key:"holderRef",ref:z,"data-testid":"editor-surface",class:"min-h-0 flex-1 rounded-lg border border-slate-300 bg-slate-50 py-3 pr-3 pl-11 dark:border-slate-700 dark:bg-slate-950"},null,512)):(r(),c("div",On,[(r(!0),c(V,null,W(O.value,(q,ee)=>(r(),c("div",{key:ee,"data-testid":`preview-block-${q.type}`,class:"p-0"},[q.type!=="columns"?(r(),be(Ae,{key:0,block:q},null,8,["block"])):q.type==="columns"?(r(),c("div",Ln,[(r(!0),c(V,null,W(j(q),(Q,ce)=>(r(),c("div",{key:`columns-${ee}-${ce}`,"data-testid":`preview-column-${ce}`,class:"space-y-2 p-2"},[(r(!0),c(V,null,W(K(Q),(ne,ue)=>(r(),c("div",{key:`columns-${ee}-${ce}-${ue}`,"data-testid":`preview-column-block-${ne.type}`,class:"p-2"},[Nt(Ae,{block:ne,"compact-table":""},null,8,["block"])],8,Fn))),128))],8,zn))),128))])):L("",!0)],8,Rn))),128))]))}});export{Ct as M,Hn as _,Ot as a,Dn as b,Te as c,Be as d,_e as e,$e as f,An as g,Pn as h,Sn as m,Tt as n,$n as s};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{d as s,o as r,c as t,f as l,t as a,u as o,b as n,e as i}from"./index-DKqdRiPk.js";import{_ as b}from"./MPage.vue_vue_type_script_setup_true_lang-BfUuzlf-.js";import"./editorjs-hCuh8vdW.js";const c={"data-testid":"preview-panel",class:"flex min-h-[520px] flex-1 flex-col rounded-xl border border-slate-200 bg-white p-4 shadow-sm dark:border-slate-700 dark:bg-slate-900"},k={class:"flex-1 overflow-auto"},m={key:0,"data-testid":"preview-loading-state",class:"rounded border border-sky-300 bg-sky-50 p-3 text-sky-800 dark:border-sky-500/60 dark:bg-sky-900/30 dark:text-sky-100"},p={key:1,"data-testid":"preview-error-state",class:"rounded border border-red-300 bg-red-50 p-3 text-red-800 dark:border-red-500/60 dark:bg-red-900/30 dark:text-red-100"},f={key:2,"data-testid":"preview-empty-state",class:"rounded border border-amber-300 bg-amber-50 p-3 text-amber-800 dark:border-amber-500/60 dark:bg-amber-900/30 dark:text-amber-100"},h=s({__name:"PreviewPanel",props:{blocks:{default:()=>[]},loading:{type:Boolean,default:!1},error:{default:""}},setup(e){const{t:d}=i();return(u,g)=>(r(),t("section",c,[l("div",k,[e.loading?(r(),t("p",m,a(o(d)("page.loading")),1)):e.error?(r(),t("p",p,a(e.error),1)):e.blocks.length?(r(),n(b,{key:3,edit:!1,value:e.blocks},null,8,["value"])):(r(),t("p",f,a(o(d)("preview.emptyState")),1))])]))}});export{h as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
.ce-input-tool[data-v-38751236]{display:flex;flex-direction:column;gap:8px}.ce-input-tool__control[data-v-38751236]{width:100%;border:1px solid rgb(148 163 184 / .6);border-radius:8px;padding:8px 10px;background-color:#fff;color:#0f172a;font-size:14px;line-height:20px}.ce-input-tool__control[data-v-38751236]:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 2px #6366f126}.dark{background-color:#0f172a;color:#e2e8f0;border-color:#475569e6}.ce-link-tool[data-v-e56db1bc]{display:inline-flex;align-items:center;max-width:100%;min-height:32px;vertical-align:middle}.ce-link-tool__anchor[data-v-e56db1bc]{display:inline-flex;align-items:center;min-width:0;max-width:100%;color:#2563eb;font-size:14px;line-height:20px;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;overflow-wrap:anywhere}.ce-link-tool__anchor[data-v-e56db1bc]:hover{color:#1d4ed8}.ce-link-tool__anchor[data-v-e56db1bc]:focus-visible{outline:2px solid rgb(96 165 250);outline-offset:2px;border-radius:4px}.dark{color:#60a5fa}.dark{color:#93c5fd}:root{--el-color-white:#fff;--el-color-black:#000;--el-color-primary-rgb:64, 158, 255;--el-color-success-rgb:103, 194, 58;--el-color-warning-rgb:230, 162, 60;--el-color-danger-rgb:245, 108, 108;--el-color-error-rgb:245, 108, 108;--el-color-info-rgb:144, 147, 153;--el-font-size-extra-large:20px;--el-font-size-large:18px;--el-font-size-medium:16px;--el-font-size-base:14px;--el-font-size-small:13px;--el-font-size-extra-small:12px;--el-font-family:"Helvetica Neue", Helvetica, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "微软雅黑", Arial, sans-serif;--el-font-weight-primary:500;--el-font-line-height-primary:24px;--el-index-normal:1;--el-index-top:1000;--el-index-popper:2000;--el-border-radius-base:4px;--el-border-radius-small:2px;--el-border-radius-round:20px;--el-border-radius-circle:100%;--el-transition-duration:.3s;--el-transition-duration-fast:.2s;--el-transition-function-ease-in-out-bezier:cubic-bezier(.645, .045, .355, 1);--el-transition-function-fast-bezier:cubic-bezier(.23, 1, .32, 1);--el-transition-all:all var(--el-transition-duration) var(--el-transition-function-ease-in-out-bezier);--el-transition-fade:opacity var(--el-transition-duration) var(--el-transition-function-fast-bezier);--el-transition-md-fade:transform var(--el-transition-duration) var(--el-transition-function-fast-bezier), opacity var(--el-transition-duration) var(--el-transition-function-fast-bezier);--el-transition-fade-linear:opacity var(--el-transition-duration-fast) linear;--el-transition-border:border-color var(--el-transition-duration-fast) var(--el-transition-function-ease-in-out-bezier);--el-transition-box-shadow:box-shadow var(--el-transition-duration-fast) var(--el-transition-function-ease-in-out-bezier);--el-transition-color:color var(--el-transition-duration-fast) var(--el-transition-function-ease-in-out-bezier);--el-component-size-large:40px;--el-component-size:32px;--el-component-size-small:24px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--el-color-primary:#409eff;--el-color-primary-light-3:#79bbff;--el-color-primary-light-5:#a0cfff;--el-color-primary-light-7:#c6e2ff;--el-color-primary-light-8:#d9ecff;--el-color-primary-light-9:#ecf5ff;--el-color-primary-dark-2:#337ecc;--el-color-success:#67c23a;--el-color-success-light-3:#95d475;--el-color-success-light-5:#b3e19d;--el-color-success-light-7:#d1edc4;--el-color-success-light-8:#e1f3d8;--el-color-success-light-9:#f0f9eb;--el-color-success-dark-2:#529b2e;--el-color-warning:#e6a23c;--el-color-warning-light-3:#eebe77;--el-color-warning-light-5:#f3d19e;--el-color-warning-light-7:#f8e3c5;--el-color-warning-light-8:#faecd8;--el-color-warning-light-9:#fdf6ec;--el-color-warning-dark-2:#b88230;--el-color-danger:#f56c6c;--el-color-danger-light-3:#f89898;--el-color-danger-light-5:#fab6b6;--el-color-danger-light-7:#fcd3d3;--el-color-danger-light-8:#fde2e2;--el-color-danger-light-9:#fef0f0;--el-color-danger-dark-2:#c45656;--el-color-error:#f56c6c;--el-color-error-light-3:#f89898;--el-color-error-light-5:#fab6b6;--el-color-error-light-7:#fcd3d3;--el-color-error-light-8:#fde2e2;--el-color-error-light-9:#fef0f0;--el-color-error-dark-2:#c45656;--el-color-info:#909399;--el-color-info-light-3:#b1b3b8;--el-color-info-light-5:#c8c9cc;--el-color-info-light-7:#dedfe0;--el-color-info-light-8:#e9e9eb;--el-color-info-light-9:#f4f4f5;--el-color-info-dark-2:#73767a;--el-bg-color:#fff;--el-bg-color-page:#f2f3f5;--el-bg-color-overlay:#fff;--el-text-color-primary:#303133;--el-text-color-regular:#606266;--el-text-color-secondary:#909399;--el-text-color-placeholder:#a8abb2;--el-text-color-disabled:#c0c4cc;--el-border-color:#dcdfe6;--el-border-color-light:#e4e7ed;--el-border-color-lighter:#ebeef5;--el-border-color-extra-light:#f2f6fc;--el-border-color-dark:#d4d7de;--el-border-color-darker:#cdd0d6;--el-fill-color:#f0f2f5;--el-fill-color-light:#f5f7fa;--el-fill-color-lighter:#fafafa;--el-fill-color-extra-light:#fafcff;--el-fill-color-dark:#ebedf0;--el-fill-color-darker:#e6e8eb;--el-fill-color-blank:#fff;--el-box-shadow:0px 12px 32px 4px #0000000a, 0px 8px 20px #00000014;--el-box-shadow-light:0px 0px 12px #0000001f;--el-box-shadow-lighter:0px 0px 6px #0000001f;--el-box-shadow-dark:0px 16px 48px 16px #00000014, 0px 12px 32px #0000001f, 0px 8px 16px -8px #00000029;--el-disabled-bg-color:var(--el-fill-color-light);--el-disabled-text-color:var(--el-text-color-placeholder);--el-disabled-border-color:var(--el-border-color-light);--el-overlay-color:#000c;--el-overlay-color-light:#000000b3;--el-overlay-color-lighter:#00000080;--el-mask-color:#ffffffe6;--el-mask-color-extra-light:#ffffff4d;--el-border-width:1px;--el-border-style:solid;--el-border-color-hover:var(--el-text-color-disabled);--el-border:var(--el-border-width) var(--el-border-style) var(--el-border-color);--el-svg-monochrome-grey:var(--el-border-color)}.fade-in-linear-enter-active,.fade-in-linear-leave-active{transition:var(--el-transition-fade-linear)}.fade-in-linear-enter-from,.fade-in-linear-leave-to{opacity:0}.el-fade-in-linear-enter-active,.el-fade-in-linear-leave-active{transition:var(--el-transition-fade-linear)}.el-fade-in-linear-enter-from,.el-fade-in-linear-leave-to{opacity:0}.el-fade-in-enter-active,.el-fade-in-leave-active{transition:all var(--el-transition-duration) cubic-bezier(.55,0,.1,1)}.el-fade-in-enter-from,.el-fade-in-leave-active{opacity:0}.el-zoom-in-center-enter-active,.el-zoom-in-center-leave-active{transition:all var(--el-transition-duration) cubic-bezier(.55,0,.1,1)}.el-zoom-in-center-enter-from,.el-zoom-in-center-leave-active{opacity:0;transform:scaleX(0)}.el-zoom-in-top-enter-active,.el-zoom-in-top-leave-active{opacity:1;transition:var(--el-transition-md-fade);transform-origin:top;transform:scaleY(1)}.el-zoom-in-top-enter-active[data-popper-placement^=top],.el-zoom-in-top-leave-active[data-popper-placement^=top]{transform-origin:bottom}.el-zoom-in-top-enter-from,.el-zoom-in-top-leave-active{opacity:0;transform:scaleY(0)}.el-zoom-in-bottom-enter-active,.el-zoom-in-bottom-leave-active{opacity:1;transition:var(--el-transition-md-fade);transform-origin:bottom;transform:scaleY(1)}.el-zoom-in-bottom-enter-from,.el-zoom-in-bottom-leave-active{opacity:0;transform:scaleY(0)}.el-zoom-in-left-enter-active,.el-zoom-in-left-leave-active{opacity:1;transition:var(--el-transition-md-fade);transform-origin:0 0;transform:scale(1)}.el-zoom-in-left-enter-from,.el-zoom-in-left-leave-active{opacity:0;transform:scale(.45)}.collapse-transition{transition:var(--el-transition-duration) height ease-in-out,var(--el-transition-duration) padding-top ease-in-out,var(--el-transition-duration) padding-bottom ease-in-out}.el-collapse-transition-leave-active,.el-collapse-transition-enter-active{transition:var(--el-transition-duration) max-height ease-in-out,var(--el-transition-duration) padding-top ease-in-out,var(--el-transition-duration) padding-bottom ease-in-out}.horizontal-collapse-transition{transition:var(--el-transition-duration) width ease-in-out,var(--el-transition-duration) padding-left ease-in-out,var(--el-transition-duration) padding-right ease-in-out}.el-list-enter-active,.el-list-leave-active{transition:all 1s}.el-list-enter-from,.el-list-leave-to{opacity:0;transform:translateY(-30px)}.el-list-leave-active{position:absolute!important}.el-opacity-transition{transition:opacity var(--el-transition-duration) cubic-bezier(.55,0,.1,1)}.el-icon--right{margin-left:5px}.el-icon--left{margin-right:5px}@keyframes rotating{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.el-icon{--color:inherit;fill:currentColor;width:1em;height:1em;color:var(--color);line-height:1em;font-size:inherit;justify-content:center;align-items:center;display:inline-flex;position:relative}.el-icon.is-loading{animation:2s linear infinite rotating}.el-icon svg{width:1em;height:1em}.el-tag{--el-tag-font-size:12px;--el-tag-border-radius:4px;--el-tag-border-radius-rounded:9999px;background-color:var(--el-tag-bg-color);border-color:var(--el-tag-border-color);color:var(--el-tag-text-color);vertical-align:middle;height:24px;font-size:var(--el-tag-font-size);border-radius:var(--el-tag-border-radius);box-sizing:border-box;white-space:nowrap;--el-icon-size:14px;--el-tag-bg-color:var(--el-color-primary-light-9);--el-tag-border-color:var(--el-color-primary-light-8);--el-tag-hover-color:var(--el-color-primary);border-style:solid;border-width:1px;justify-content:center;align-items:center;padding:0 9px;line-height:1;display:inline-flex}.el-tag.el-tag--primary{--el-tag-bg-color:var(--el-color-primary-light-9);--el-tag-border-color:var(--el-color-primary-light-8);--el-tag-hover-color:var(--el-color-primary)}.el-tag.el-tag--success{--el-tag-bg-color:var(--el-color-success-light-9);--el-tag-border-color:var(--el-color-success-light-8);--el-tag-hover-color:var(--el-color-success)}.el-tag.el-tag--warning{--el-tag-bg-color:var(--el-color-warning-light-9);--el-tag-border-color:var(--el-color-warning-light-8);--el-tag-hover-color:var(--el-color-warning)}.el-tag.el-tag--danger{--el-tag-bg-color:var(--el-color-danger-light-9);--el-tag-border-color:var(--el-color-danger-light-8);--el-tag-hover-color:var(--el-color-danger)}.el-tag.el-tag--error{--el-tag-bg-color:var(--el-color-error-light-9);--el-tag-border-color:var(--el-color-error-light-8);--el-tag-hover-color:var(--el-color-error)}.el-tag.el-tag--info{--el-tag-bg-color:var(--el-color-info-light-9);--el-tag-border-color:var(--el-color-info-light-8);--el-tag-hover-color:var(--el-color-info)}.el-tag.is-hit{border-color:var(--el-color-primary)}.el-tag.is-round{border-radius:var(--el-tag-border-radius-rounded)}.el-tag .el-tag__close{color:var(--el-tag-text-color);flex-shrink:0}.el-tag .el-tag__close:hover{color:var(--el-color-white);background-color:var(--el-tag-hover-color)}.el-tag.el-tag--primary{--el-tag-text-color:var(--el-color-primary)}.el-tag.el-tag--success{--el-tag-text-color:var(--el-color-success)}.el-tag.el-tag--warning{--el-tag-text-color:var(--el-color-warning)}.el-tag.el-tag--danger{--el-tag-text-color:var(--el-color-danger)}.el-tag.el-tag--error{--el-tag-text-color:var(--el-color-error)}.el-tag.el-tag--info{--el-tag-text-color:var(--el-color-info)}.el-tag .el-icon{cursor:pointer;font-size:calc(var(--el-icon-size) - 2px);height:var(--el-icon-size);width:var(--el-icon-size);border-radius:50%}.el-tag .el-tag__close{background-color:#0000;border:none;border-radius:50%;outline:none;margin-left:6px;padding:0;overflow:hidden}.el-tag .el-tag__close:focus-visible{outline:2px solid var(--el-color-primary);outline-offset:2px}.el-tag .el-tag__close .el-icon{display:flex}.el-tag--dark{--el-tag-text-color:var(--el-color-white);--el-tag-bg-color:var(--el-color-primary);--el-tag-border-color:var(--el-color-primary);--el-tag-hover-color:var(--el-color-primary-light-3)}.el-tag--dark.el-tag--primary{--el-tag-bg-color:var(--el-color-primary);--el-tag-border-color:var(--el-color-primary);--el-tag-hover-color:var(--el-color-primary-light-3)}.el-tag--dark.el-tag--success{--el-tag-bg-color:var(--el-color-success);--el-tag-border-color:var(--el-color-success);--el-tag-hover-color:var(--el-color-success-light-3)}.el-tag--dark.el-tag--warning{--el-tag-bg-color:var(--el-color-warning);--el-tag-border-color:var(--el-color-warning);--el-tag-hover-color:var(--el-color-warning-light-3)}.el-tag--dark.el-tag--danger{--el-tag-bg-color:var(--el-color-danger);--el-tag-border-color:var(--el-color-danger);--el-tag-hover-color:var(--el-color-danger-light-3)}.el-tag--dark.el-tag--error{--el-tag-bg-color:var(--el-color-error);--el-tag-border-color:var(--el-color-error);--el-tag-hover-color:var(--el-color-error-light-3)}.el-tag--dark.el-tag--info{--el-tag-bg-color:var(--el-color-info);--el-tag-border-color:var(--el-color-info);--el-tag-hover-color:var(--el-color-info-light-3)}.el-tag--dark.el-tag--primary,.el-tag--dark.el-tag--success,.el-tag--dark.el-tag--warning,.el-tag--dark.el-tag--danger,.el-tag--dark.el-tag--error,.el-tag--dark.el-tag--info{--el-tag-text-color:var(--el-color-white)}.el-tag--plain,.el-tag--plain.el-tag--primary{--el-tag-bg-color:var(--el-fill-color-blank);--el-tag-border-color:var(--el-color-primary-light-5);--el-tag-hover-color:var(--el-color-primary)}.el-tag--plain.el-tag--success{--el-tag-bg-color:var(--el-fill-color-blank);--el-tag-border-color:var(--el-color-success-light-5);--el-tag-hover-color:var(--el-color-success)}.el-tag--plain.el-tag--warning{--el-tag-bg-color:var(--el-fill-color-blank);--el-tag-border-color:var(--el-color-warning-light-5);--el-tag-hover-color:var(--el-color-warning)}.el-tag--plain.el-tag--danger{--el-tag-bg-color:var(--el-fill-color-blank);--el-tag-border-color:var(--el-color-danger-light-5);--el-tag-hover-color:var(--el-color-danger)}.el-tag--plain.el-tag--error{--el-tag-bg-color:var(--el-fill-color-blank);--el-tag-border-color:var(--el-color-error-light-5);--el-tag-hover-color:var(--el-color-error)}.el-tag--plain.el-tag--info{--el-tag-bg-color:var(--el-fill-color-blank);--el-tag-border-color:var(--el-color-info-light-5);--el-tag-hover-color:var(--el-color-info)}.el-tag.is-closable{padding-right:5px}.el-tag--large{--el-icon-size:16px;height:32px;padding:0 11px}.el-tag--large .el-tag__close{margin-left:8px}.el-tag--large.is-closable{padding-right:7px}.el-tag--small{--el-icon-size:12px;height:20px;padding:0 7px}.el-tag--small .el-tag__close{margin-left:4px}.el-tag--small.is-closable{padding-right:3px}.el-tag--small .el-icon-close{transform:scale(.8)}.el-tag.el-tag--primary.is-hit{border-color:var(--el-color-primary)}.el-tag.el-tag--success.is-hit{border-color:var(--el-color-success)}.el-tag.el-tag--warning.is-hit{border-color:var(--el-color-warning)}.el-tag.el-tag--danger.is-hit{border-color:var(--el-color-danger)}.el-tag.el-tag--error.is-hit{border-color:var(--el-color-error)}.el-tag.el-tag--info.is-hit{border-color:var(--el-color-info)}.ce-tag-tool[data-v-f62600c2]{display:inline-flex;align-items:center;min-height:32px;max-width:100%}.ce-tag-tool[data-v-f62600c2] .el-tag{max-width:100%;line-height:20px}.ce-tag-tool[data-v-f62600c2] .el-tag__content{display:inline-flex;align-items:center;min-width:0}.global-call-content[data-v-66a3e1c9]{display:inline;max-width:100%;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.6}.global-call-content__text[data-v-66a3e1c9]{white-space:pre-wrap;overflow-wrap:anywhere}.global-call-content__token[data-v-66a3e1c9]{display:inline-flex;align-items:center;max-width:100%;margin:0 2px;vertical-align:middle}.global-call-content__unknown[data-v-66a3e1c9]{display:inline-flex;align-items:center;max-width:100%;margin:0 2px;border-radius:8px;background:#f1f5f9;padding:2px 8px;color:#475569;font-size:12px;vertical-align:middle}.dark{background:#1e293b;color:#cbd5e1}.global-call-dialog-overlay[data-v-81ffa7d1]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px;background:#0f172a85}.global-call-dialog[data-v-81ffa7d1]{width:min(100%,420px);max-height:min(80vh,640px);overflow:auto;border:1px solid rgb(226 232 240);border-radius:12px;background:#fff;box-shadow:0 24px 80px #0f172a47;color:#0f172a;outline:none}.global-call-dialog__title[data-v-81ffa7d1]{margin:0;padding:20px 20px 0;color:#0f172a;font-size:18px;font-weight:600;line-height:1.4}.global-call-dialog__body[data-v-81ffa7d1]{padding:14px 20px 20px;color:#334155;font-size:14px;line-height:1.6}.global-call-dialog__actions[data-v-81ffa7d1]{display:flex;justify-content:flex-end;gap:10px;border-top:1px solid rgb(226 232 240);padding:14px 20px}.global-call-dialog__button[data-v-81ffa7d1]{min-width:72px;border:0;border-radius:8px;padding:8px 14px;font-size:14px;font-weight:600;line-height:20px;cursor:pointer}.global-call-dialog__button[data-v-81ffa7d1]:focus-visible{outline:2px solid rgb(129 140 248);outline-offset:2px}.global-call-dialog__button--primary[data-v-81ffa7d1]{background:#4f46e5;color:#fff}.global-call-dialog__button--primary[data-v-81ffa7d1]:hover{background:#4338ca}.global-call-dialog__button--secondary[data-v-81ffa7d1]{background:#e2e8f0;color:#334155}.global-call-dialog__button--secondary[data-v-81ffa7d1]:hover{background:#cbd5e1}.global-call-message-stack[data-v-81ffa7d1]{position:fixed;top:18px;left:50%;z-index:1100;display:flex;width:min(92vw,520px);transform:translate(-50%);flex-direction:column;align-items:center;gap:10px;pointer-events:none}.global-call-message[data-v-81ffa7d1]{max-width:100%;border:1px solid rgb(226 232 240);border-radius:10px;background:#fff;box-shadow:0 16px 48px #0f172a29;padding:10px 14px;color:#0f172a;font-size:14px;line-height:1.6;pointer-events:auto}.global-call-message--success[data-v-81ffa7d1]{border-color:#bbf7d0;background:#f0fdf4;color:#166534}.global-call-message--warning[data-v-81ffa7d1]{border-color:#fef08a;background:#fefce8;color:#854d0e}.global-call-message--info[data-v-81ffa7d1]{border-color:#bfdbfe;background:#eff6ff;color:#1e40af}.global-call-message--error[data-v-81ffa7d1]{border-color:#fecaca;background:#fef2f2;color:#991b1b}.dark{color:#f1f5f9}.dark{color:#cbd5e1}.dark{border-top-color:#334155}.dark{background:#334155;color:#f1f5f9}.dark{background:#475569}.dark{border-color:#334155;background:#0f172a;color:#e2e8f0}@media(max-width:640px){.global-call-dialog-overlay[data-v-81ffa7d1]{align-items:flex-end;padding:16px}.global-call-dialog[data-v-81ffa7d1]{width:100%;max-height:86vh}}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.visible{visibility:visible}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.\!block{display:block!important}.block{display:block}.inline{display:inline}.flex{display:flex}.table{display:table}.grid{display:grid}.hidden{display:none}.min-h-0{min-height:0px}.min-h-\[520px\]{min-height:520px}.min-h-screen{min-height:100vh}.min-w-full{min-width:100%}.flex-1{flex:1 1 0%}.border-collapse{border-collapse:collapse}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.resize{resize:both}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.overflow-auto{overflow:auto}.rounded{border-radius:.25rem}.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-b{border-bottom-width:1px}.border-amber-300{--tw-border-opacity: 1;border-color:rgb(252 211 77 / var(--tw-border-opacity, 1))}.border-red-300{--tw-border-opacity: 1;border-color:rgb(252 165 165 / var(--tw-border-opacity, 1))}.border-sky-300{--tw-border-opacity: 1;border-color:rgb(125 211 252 / var(--tw-border-opacity, 1))}.border-slate-200{--tw-border-opacity: 1;border-color:rgb(226 232 240 / var(--tw-border-opacity, 1))}.border-slate-300{--tw-border-opacity: 1;border-color:rgb(203 213 225 / var(--tw-border-opacity, 1))}.bg-amber-50{--tw-bg-opacity: 1;background-color:rgb(255 251 235 / var(--tw-bg-opacity, 1))}.bg-emerald-500{--tw-bg-opacity: 1;background-color:rgb(16 185 129 / var(--tw-bg-opacity, 1))}.bg-indigo-500{--tw-bg-opacity: 1;background-color:rgb(99 102 241 / var(--tw-bg-opacity, 1))}.bg-red-50{--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1))}.bg-sky-50{--tw-bg-opacity: 1;background-color:rgb(240 249 255 / var(--tw-bg-opacity, 1))}.bg-slate-100{--tw-bg-opacity: 1;background-color:rgb(241 245 249 / var(--tw-bg-opacity, 1))}.bg-slate-200{--tw-bg-opacity: 1;background-color:rgb(226 232 240 / var(--tw-bg-opacity, 1))}.bg-slate-50{--tw-bg-opacity: 1;background-color:rgb(248 250 252 / var(--tw-bg-opacity, 1))}.bg-slate-950{--tw-bg-opacity: 1;background-color:rgb(2 6 23 / var(--tw-bg-opacity, 1))}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.p-0{padding:0}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.pl-11{padding-left:2.75rem}.pr-3{padding-right:.75rem}.text-left{text-align:left}.align-top{vertical-align:top}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-medium{font-weight:500}.font-semibold{font-weight:600}.leading-6{line-height:1.5rem}.text-amber-800{--tw-text-opacity: 1;color:rgb(146 64 14 / var(--tw-text-opacity, 1))}.text-red-800{--tw-text-opacity: 1;color:rgb(153 27 27 / var(--tw-text-opacity, 1))}.text-sky-800{--tw-text-opacity: 1;color:rgb(7 89 133 / var(--tw-text-opacity, 1))}.text-slate-800{--tw-text-opacity: 1;color:rgb(30 41 59 / var(--tw-text-opacity, 1))}.text-slate-900{--tw-text-opacity: 1;color:rgb(15 23 42 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.underline{text-decoration-line:underline}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline{outline-style:solid}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}body{margin:0;--tw-bg-opacity: 1;background-color:rgb(241 245 249 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(15 23 42 / var(--tw-text-opacity, 1));transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}body:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(2 6 23 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(241 245 249 / var(--tw-text-opacity, 1))}.hover\:bg-emerald-400:hover{--tw-bg-opacity: 1;background-color:rgb(52 211 153 / var(--tw-bg-opacity, 1))}.hover\:bg-indigo-400:hover{--tw-bg-opacity: 1;background-color:rgb(129 140 248 / var(--tw-bg-opacity, 1))}.hover\:bg-slate-300:hover{--tw-bg-opacity: 1;background-color:rgb(203 213 225 / var(--tw-bg-opacity, 1))}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.dark\:border-amber-500\/60:is(.dark *){border-color:#f59e0b99}.dark\:border-red-500\/60:is(.dark *){border-color:#ef444499}.dark\:border-sky-500\/60:is(.dark *){border-color:#0ea5e999}.dark\:border-slate-600:is(.dark *){--tw-border-opacity: 1;border-color:rgb(71 85 105 / var(--tw-border-opacity, 1))}.dark\:border-slate-700:is(.dark *){--tw-border-opacity: 1;border-color:rgb(51 65 85 / var(--tw-border-opacity, 1))}.dark\:bg-amber-900\/30:is(.dark *){background-color:#78350f4d}.dark\:bg-red-900\/30:is(.dark *){background-color:#7f1d1d4d}.dark\:bg-sky-900\/30:is(.dark *){background-color:#0c4a6e4d}.dark\:bg-slate-700:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(51 65 85 / var(--tw-bg-opacity, 1))}.dark\:bg-slate-800:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(30 41 59 / var(--tw-bg-opacity, 1))}.dark\:bg-slate-900:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(15 23 42 / var(--tw-bg-opacity, 1))}.dark\:bg-slate-950:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(2 6 23 / var(--tw-bg-opacity, 1))}.dark\:text-amber-100:is(.dark *){--tw-text-opacity: 1;color:rgb(254 243 199 / var(--tw-text-opacity, 1))}.dark\:text-red-100:is(.dark *){--tw-text-opacity: 1;color:rgb(254 226 226 / var(--tw-text-opacity, 1))}.dark\:text-sky-100:is(.dark *){--tw-text-opacity: 1;color:rgb(224 242 254 / var(--tw-text-opacity, 1))}.dark\:text-slate-100:is(.dark *){--tw-text-opacity: 1;color:rgb(241 245 249 / var(--tw-text-opacity, 1))}.dark\:hover\:bg-slate-600:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(71 85 105 / var(--tw-bg-opacity, 1))}@media(min-width:768px){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}
|