@budibase/server 2.10.12-alpha.5 → 2.10.12-alpha.7

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.
@@ -1664,9 +1664,9 @@ ${n1.map(i1=>{let a1=o1[i1];return a1=typeof a1=="object"&&!(a1 instanceof Date)
1664
1664
  schema.`)},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot_3$1A(n1){let e1,t1,r1,o1;return e1=new Body({props:{size:"S",$$slots:{default:[create_default_slot_4$1a]},$$scope:{ctx:n1}}}),r1=new QueryEditor({props:{mode:"json",value:n1[0]}}),r1.$on("change",n1[6]),{c(){create_component(e1.$$.fragment),t1=space$1(),create_component(r1.$$.fragment)},m(i1,a1){mount_component(e1,i1,a1),insert$1(i1,t1,a1),mount_component(r1,i1,a1),o1=!0},p(i1,a1){const s1={};a1&1048576&&(s1.$$scope={dirty:a1,ctx:i1}),e1.$set(s1);const l1={};a1&1&&(l1.value=i1[0]),r1.$set(l1)},i(i1){o1||(transition_in(e1.$$.fragment,i1),transition_in(r1.$$.fragment,i1),o1=!0)},o(i1){transition_out(e1.$$.fragment,i1),transition_out(r1.$$.fragment,i1),o1=!1},d(i1){destroy_component(e1,i1),i1&&detach(t1),destroy_component(r1,i1)}}}function create_default_slot_2$22(n1){let e1,t1;return e1=new Layout$m({props:{noPadding:!0,gap:"XS",$$slots:{default:[create_default_slot_3$1A]},$$scope:{ctx:n1}}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&1048577&&(i1.$$scope={dirty:o1,ctx:r1}),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_default_slot_1$2M(n1){let e1,t1,r1,o1;return e1=new Tab({props:{title:"Form",$$slots:{default:[create_default_slot_5$W]},$$scope:{ctx:n1}}}),r1=new Tab({props:{title:"JSON",$$slots:{default:[create_default_slot_2$22]},$$scope:{ctx:n1}}}),{c(){create_component(e1.$$.fragment),t1=space$1(),create_component(r1.$$.fragment)},m(i1,a1){mount_component(e1,i1,a1),insert$1(i1,t1,a1),mount_component(r1,i1,a1),o1=!0},p(i1,a1){const s1={};a1&1048590&&(s1.$$scope={dirty:a1,ctx:i1}),e1.$set(s1);const l1={};a1&1048577&&(l1.$$scope={dirty:a1,ctx:i1}),r1.$set(l1)},i(i1){o1||(transition_in(e1.$$.fragment,i1),transition_in(r1.$$.fragment,i1),o1=!0)},o(i1){transition_out(e1.$$.fragment,i1),transition_out(r1.$$.fragment,i1),o1=!1},d(i1){destroy_component(e1,i1),i1&&detach(t1),destroy_component(r1,i1)}}}function create_default_slot$3G(n1){let e1,t1;return e1=new Tabs({props:{selected:mode,noPadding:!0,$$slots:{default:[create_default_slot_1$2M]},$$scope:{ctx:n1}}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&1048591&&(i1.$$scope={dirty:o1,ctx:r1}),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_fragment$5n(n1){let e1,t1,r1;function o1(a1){n1[14](a1)}let i1={title:"JSON Schema Editor",confirmText:"Save Column",onConfirm:n1[7],size:"L",$$slots:{default:[create_default_slot$3G]},$$scope:{ctx:n1}};return n1[4]!==void 0&&(i1.disabled=n1[4]),e1=new ModalContent({props:i1}),binding_callbacks.push(()=>bind$3(e1,"disabled",o1)),{c(){create_component(e1.$$.fragment)},m(a1,s1){mount_component(e1,a1,s1),r1=!0},p(a1,[s1]){const l1={};s1&1048591&&(l1.$$scope={dirty:s1,ctx:a1}),!t1&&s1&16&&(t1=!0,l1.disabled=a1[4],add_flush_callback(()=>t1=!1)),e1.$set(l1)},i(a1){r1||(transition_in(e1.$$.fragment,a1),r1=!0)},o(a1){transition_out(e1.$$.fragment,a1),r1=!1},d(a1){destroy_component(e1,a1)}}}let mode="Form";const func$F=n1=>n1.value,func_1$y=n1=>n1.label;function instance$5t(n1,e1,t1){let{schema:r1={}}=e1,{json:o1}=e1,i1=createEventDispatcher(),a1=0,s1=[],l1=[],c1=[{label:"String",value:FIELDS.STRING.type},{label:"Number",value:FIELDS.NUMBER.type},{label:"Boolean",value:FIELDS.BOOLEAN.type},{label:"Object",value:FIELDS.JSON.type},{label:"Array",value:FIELDS.ARRAY.type}],u1=!1;async function f1({detail:w1}){const S1=w1.value;t1(0,o1=S1);try{let O1=JSON.parse(S1);t1(9,r1=generate(O1)),p1(),t1(4,u1=!1)}catch{t1(4,u1=!0)}}function p1(){r1||t1(9,r1={});const w1=Object.entries(r1).filter(([S1])=>!s1.includes(S1));for(let[S1,O1]of w1)s1.push(S1),l1.push(O1.type);t1(1,a1=s1.length)}function d1(){const w1={};for(let[S1,O1]of s1.entries())w1[O1]={...r1[O1],type:l1[S1]};i1("save",{schema:w1,json:o1}),t1(9,r1=w1)}function m1(w1){const S1=s1[w1];if(s1[w1+1]!=null&&(t1(2,s1[w1]=s1[w1+1],s1),t1(3,l1[w1]=l1[w1+1],l1)),s1.splice(w1,1),l1.splice(w1,1),t1(1,a1--,a1),o1)try{const O1=JSON.parse(o1);delete O1[S1],t1(0,o1=JSON.stringify(O1,null,2))}catch{}}onMount(()=>{p1()});function _1(w1,S1){n1.$$.not_equal(s1[S1],w1)&&(s1[S1]=w1,t1(2,s1))}function h1(w1,S1){n1.$$.not_equal(l1[S1],w1)&&(l1[S1]=w1,t1(3,l1))}const g1=w1=>m1(w1),$1=()=>t1(1,a1++,a1);function y1(w1){u1=w1,t1(4,u1)}return n1.$$set=w1=>{"schema"in w1&&t1(9,r1=w1.schema),"json"in w1&&t1(0,o1=w1.json)},[o1,a1,s1,l1,u1,c1,f1,d1,m1,r1,_1,h1,g1,$1,y1]}class JSONSchemaModal extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$5t,create_fragment$5n,safe_not_equal,{schema:9,json:0})}}const CreateEditColumn_svelte_svelte_type_style_lang="";function create_if_block_16$1(n1){var a1;let e1,t1,r1;function o1(s1){n1[40](s1)}let i1={autofocus:!0,disabled:n1[4]||n1[6]&&n1[2].type===n1[23],error:(a1=n1[3])==null?void 0:a1.name};return n1[2].name!==void 0&&(i1.value=n1[2].name),e1=new Input$5({props:i1}),binding_callbacks.push(()=>bind$3(e1,"value",o1)),{c(){create_component(e1.$$.fragment)},m(s1,l1){mount_component(e1,s1,l1),r1=!0},p(s1,l1){var u1;const c1={};l1[0]&84&&(c1.disabled=s1[4]||s1[6]&&s1[2].type===s1[23]),l1[0]&8&&(c1.error=(u1=s1[3])==null?void 0:u1.name),!t1&&l1[0]&4&&(t1=!0,c1.value=s1[2].name,add_flush_callback(()=>t1=!1)),e1.$set(c1)},i(s1){r1||(transition_in(e1.$$.fragment,s1),r1=!0)},o(s1){transition_out(e1.$$.fragment,s1),r1=!1},d(s1){destroy_component(e1,s1)}}}function create_if_block_15$1(n1){let e1,t1;return e1=new Button({props:{primary:!0,text:!0,$$slots:{default:[create_default_slot_16$6]},$$scope:{ctx:n1}}}),e1.$on("click",n1[31]),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1[2]&262144&&(i1.$$scope={dirty:o1,ctx:r1}),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_if_block_13$1(n1){let e1,t1,r1,o1,i1,a1,s1,l1,c1=!n1[25].sql&&create_if_block_14$1(n1);return o1=new Label({props:{size:"M",$$slots:{default:[create_default_slot_14$9]},$$scope:{ctx:n1}}}),s1=new ModalBindableInput({props:{title:"Formula",value:n1[2].formula,bindings:getBindings({table:n1[25]}),allowJS:!0}}),s1.$on("change",n1[58]),{c(){c1&&c1.c(),e1=space$1(),t1=element("div"),r1=element("div"),create_component(o1.$$.fragment),i1=space$1(),a1=element("div"),create_component(s1.$$.fragment),attr(r1,"class","label-length svelte-11l61cq"),attr(a1,"class","input-length svelte-11l61cq"),attr(t1,"class","split-label svelte-11l61cq")},m(u1,f1){c1&&c1.m(u1,f1),insert$1(u1,e1,f1),insert$1(u1,t1,f1),append$1(t1,r1),mount_component(o1,r1,null),append$1(t1,i1),append$1(t1,a1),mount_component(s1,a1,null),l1=!0},p(u1,f1){u1[25].sql||c1.p(u1,f1);const p1={};f1[2]&262144&&(p1.$$scope={dirty:f1,ctx:u1}),o1.$set(p1);const d1={};f1[0]&4&&(d1.value=u1[2].formula),s1.$set(d1)},i(u1){l1||(transition_in(c1),transition_in(o1.$$.fragment,u1),transition_in(s1.$$.fragment,u1),l1=!0)},o(u1){transition_out(c1),transition_out(o1.$$.fragment,u1),transition_out(s1.$$.fragment,u1),l1=!1},d(u1){c1&&c1.d(u1),u1&&detach(e1),u1&&detach(t1),destroy_component(o1),destroy_component(s1)}}}function create_if_block_11$1(n1){let e1,t1,r1,o1,i1,a1,s1;function l1(d1){n1[54](d1)}let c1={label:"Table",disabled:n1[6],options:n1[12],getOptionLabel:func_4$3,getOptionValue:func_5$1};n1[2].tableId!==void 0&&(c1.value=n1[2].tableId),e1=new Select_1$1({props:c1}),binding_callbacks.push(()=>bind$3(e1,"value",l1));let u1=n1[15]&&n1[15].length>0&&create_if_block_12$1(n1);function f1(d1){n1[56](d1)}let p1={disabled:n1[6],label:"Column name in other table",error:n1[3].relatedName};return n1[2].fieldName!==void 0&&(p1.value=n1[2].fieldName),i1=new Input$5({props:p1}),binding_callbacks.push(()=>bind$3(i1,"value",f1)),{c(){create_component(e1.$$.fragment),r1=space$1(),u1&&u1.c(),o1=space$1(),create_component(i1.$$.fragment)},m(d1,m1){mount_component(e1,d1,m1),insert$1(d1,r1,m1),u1&&u1.m(d1,m1),insert$1(d1,o1,m1),mount_component(i1,d1,m1),s1=!0},p(d1,m1){const _1={};m1[0]&64&&(_1.disabled=d1[6]),m1[0]&4096&&(_1.options=d1[12]),!t1&&m1[0]&4&&(t1=!0,_1.value=d1[2].tableId,add_flush_callback(()=>t1=!1)),e1.$set(_1),d1[15]&&d1[15].length>0?u1?(u1.p(d1,m1),m1[0]&32768&&transition_in(u1,1)):(u1=create_if_block_12$1(d1),u1.c(),transition_in(u1,1),u1.m(o1.parentNode,o1)):u1&&(group_outros(),transition_out(u1,1,1,()=>{u1=null}),check_outros());const h1={};m1[0]&64&&(h1.disabled=d1[6]),m1[0]&8&&(h1.error=d1[3].relatedName),!a1&&m1[0]&4&&(a1=!0,h1.value=d1[2].fieldName,add_flush_callback(()=>a1=!1)),i1.$set(h1)},i(d1){s1||(transition_in(e1.$$.fragment,d1),transition_in(u1),transition_in(i1.$$.fragment,d1),s1=!0)},o(d1){transition_out(e1.$$.fragment,d1),transition_out(u1),transition_out(i1.$$.fragment,d1),s1=!1},d(d1){destroy_component(e1,d1),d1&&detach(r1),u1&&u1.d(d1),d1&&detach(o1),destroy_component(i1,d1)}}}function create_if_block_10$2(n1){let e1,t1,r1,o1,i1,a1,s1,l1,c1,u1,f1,p1,d1,m1,_1,h1;r1=new Label({props:{size:"M",$$slots:{default:[create_default_slot_13$b]},$$scope:{ctx:n1}}});function g1(S1){n1[52](S1)}let $1={type:"number"};n1[2].constraints.numericality.greaterThanOrEqualTo!==void 0&&($1.value=n1[2].constraints.numericality.greaterThanOrEqualTo),a1=new Input$5({props:$1}),binding_callbacks.push(()=>bind$3(a1,"value",g1)),f1=new Label({props:{size:"M",$$slots:{default:[create_default_slot_12$g]},$$scope:{ctx:n1}}});function y1(S1){n1[53](S1)}let w1={type:"number"};return n1[2].constraints.numericality.lessThanOrEqualTo!==void 0&&(w1.value=n1[2].constraints.numericality.lessThanOrEqualTo),m1=new Input$5({props:w1}),binding_callbacks.push(()=>bind$3(m1,"value",y1)),{c(){e1=element("div"),t1=element("div"),create_component(r1.$$.fragment),o1=space$1(),i1=element("div"),create_component(a1.$$.fragment),l1=space$1(),c1=element("div"),u1=element("div"),create_component(f1.$$.fragment),p1=space$1(),d1=element("div"),create_component(m1.$$.fragment),attr(t1,"class","label-length svelte-11l61cq"),attr(i1,"class","input-length svelte-11l61cq"),attr(e1,"class","split-label svelte-11l61cq"),attr(u1,"class","label-length svelte-11l61cq"),attr(d1,"class","input-length svelte-11l61cq"),attr(c1,"class","split-label svelte-11l61cq")},m(S1,O1){insert$1(S1,e1,O1),append$1(e1,t1),mount_component(r1,t1,null),append$1(e1,o1),append$1(e1,i1),mount_component(a1,i1,null),insert$1(S1,l1,O1),insert$1(S1,c1,O1),append$1(c1,u1),mount_component(f1,u1,null),append$1(c1,p1),append$1(c1,d1),mount_component(m1,d1,null),h1=!0},p(S1,O1){const C1={};O1[2]&262144&&(C1.$$scope={dirty:O1,ctx:S1}),r1.$set(C1);const M1={};!s1&&O1[0]&4&&(s1=!0,M1.value=S1[2].constraints.numericality.greaterThanOrEqualTo,add_flush_callback(()=>s1=!1)),a1.$set(M1);const z1={};O1[2]&262144&&(z1.$$scope={dirty:O1,ctx:S1}),f1.$set(z1);const D1={};!_1&&O1[0]&4&&(_1=!0,D1.value=S1[2].constraints.numericality.lessThanOrEqualTo,add_flush_callback(()=>_1=!1)),m1.$set(D1)},i(S1){h1||(transition_in(r1.$$.fragment,S1),transition_in(a1.$$.fragment,S1),transition_in(f1.$$.fragment,S1),transition_in(m1.$$.fragment,S1),h1=!0)},o(S1){transition_out(r1.$$.fragment,S1),transition_out(a1.$$.fragment,S1),transition_out(f1.$$.fragment,S1),transition_out(m1.$$.fragment,S1),h1=!1},d(S1){S1&&detach(e1),destroy_component(r1),destroy_component(a1),S1&&detach(l1),S1&&detach(c1),destroy_component(f1),destroy_component(m1)}}}function create_if_block_8$5(n1){var M1,z1;let e1,t1,r1,o1,i1,a1,s1,l1,c1,u1,f1,p1,d1,m1,_1,h1,g1,$1;r1=new Label({props:{size:"M",$$slots:{default:[create_default_slot_11$k]},$$scope:{ctx:n1}}});function y1(D1){n1[49](D1)}let w1={};n1[2].constraints.datetime.earliest!==void 0&&(w1.value=n1[2].constraints.datetime.earliest),a1=new DatePicker_1({props:w1}),binding_callbacks.push(()=>bind$3(a1,"value",y1)),f1=new Label({props:{size:"M",$$slots:{default:[create_default_slot_10$m]},$$scope:{ctx:n1}}});function S1(D1){n1[50](D1)}let O1={};n1[2].constraints.datetime.latest!==void 0&&(O1.value=n1[2].constraints.datetime.latest),m1=new DatePicker_1({props:O1}),binding_callbacks.push(()=>bind$3(m1,"value",S1));let C1=((M1=n1[20])==null?void 0:M1.source)!=="ORACLE"&&((z1=n1[20])==null?void 0:z1.source)!=="SQL_SERVER"&&create_if_block_9$3(n1);return{c(){e1=element("div"),t1=element("div"),create_component(r1.$$.fragment),o1=space$1(),i1=element("div"),create_component(a1.$$.fragment),l1=space$1(),c1=element("div"),u1=element("div"),create_component(f1.$$.fragment),p1=space$1(),d1=element("div"),create_component(m1.$$.fragment),h1=space$1(),C1&&C1.c(),g1=empty$1(),attr(t1,"class","label-length svelte-11l61cq"),attr(i1,"class","input-length svelte-11l61cq"),attr(e1,"class","split-label svelte-11l61cq"),attr(u1,"class","label-length svelte-11l61cq"),attr(d1,"class","input-length svelte-11l61cq"),attr(c1,"class","split-label svelte-11l61cq")},m(D1,H1){insert$1(D1,e1,H1),append$1(e1,t1),mount_component(r1,t1,null),append$1(e1,o1),append$1(e1,i1),mount_component(a1,i1,null),insert$1(D1,l1,H1),insert$1(D1,c1,H1),append$1(c1,u1),mount_component(f1,u1,null),append$1(c1,p1),append$1(c1,d1),mount_component(m1,d1,null),insert$1(D1,h1,H1),C1&&C1.m(D1,H1),insert$1(D1,g1,H1),$1=!0},p(D1,H1){var F1,j1;const B1={};H1[2]&262144&&(B1.$$scope={dirty:H1,ctx:D1}),r1.$set(B1);const q1={};!s1&&H1[0]&4&&(s1=!0,q1.value=D1[2].constraints.datetime.earliest,add_flush_callback(()=>s1=!1)),a1.$set(q1);const R1={};H1[2]&262144&&(R1.$$scope={dirty:H1,ctx:D1}),f1.$set(R1);const I1={};!_1&&H1[0]&4&&(_1=!0,I1.value=D1[2].constraints.datetime.latest,add_flush_callback(()=>_1=!1)),m1.$set(I1),((F1=D1[20])==null?void 0:F1.source)!=="ORACLE"&&((j1=D1[20])==null?void 0:j1.source)!=="SQL_SERVER"?C1?(C1.p(D1,H1),H1[0]&1048576&&transition_in(C1,1)):(C1=create_if_block_9$3(D1),C1.c(),transition_in(C1,1),C1.m(g1.parentNode,g1)):C1&&(group_outros(),transition_out(C1,1,1,()=>{C1=null}),check_outros())},i(D1){$1||(transition_in(r1.$$.fragment,D1),transition_in(a1.$$.fragment,D1),transition_in(f1.$$.fragment,D1),transition_in(m1.$$.fragment,D1),transition_in(C1),$1=!0)},o(D1){transition_out(r1.$$.fragment,D1),transition_out(a1.$$.fragment,D1),transition_out(f1.$$.fragment,D1),transition_out(m1.$$.fragment,D1),transition_out(C1),$1=!1},d(D1){D1&&detach(e1),destroy_component(r1),destroy_component(a1),D1&&detach(l1),D1&&detach(c1),destroy_component(f1),destroy_component(m1),D1&&detach(h1),C1&&C1.d(D1),D1&&detach(g1)}}}function create_if_block_7$a(n1){let e1,t1,r1,o1;function i1(l1){n1[47](l1)}function a1(l1){n1[48](l1)}let s1={};return n1[2].constraints!==void 0&&(s1.constraints=n1[2].constraints),n1[2].optionColors!==void 0&&(s1.optionColors=n1[2].optionColors),e1=new OptionSelectDnD({props:s1}),binding_callbacks.push(()=>bind$3(e1,"constraints",i1)),binding_callbacks.push(()=>bind$3(e1,"optionColors",a1)),{c(){create_component(e1.$$.fragment)},m(l1,c1){mount_component(e1,l1,c1),o1=!0},p(l1,c1){const u1={};!t1&&c1[0]&4&&(t1=!0,u1.constraints=l1[2].constraints,add_flush_callback(()=>t1=!1)),!r1&&c1[0]&4&&(r1=!0,u1.optionColors=l1[2].optionColors,add_flush_callback(()=>r1=!1)),e1.$set(u1)},i(l1){o1||(transition_in(e1.$$.fragment,l1),o1=!0)},o(l1){transition_out(e1.$$.fragment,l1),o1=!1},d(l1){destroy_component(e1,l1)}}}function create_if_block_6$b(n1){let e1,t1,r1,o1,i1,a1,s1,l1,c1;r1=new Label({props:{size:"M",$$slots:{default:[create_default_slot_7$E]},$$scope:{ctx:n1}}}),i1=new AbsTooltip({props:{position:"top",type:"info",text:"Rich text includes support for images, link",$$slots:{default:[create_default_slot_6$L]},$$scope:{ctx:n1}}});function u1(p1){n1[46](p1)}let f1={text:"Enable rich text support (markdown)"};return n1[2].useRichText!==void 0&&(f1.value=n1[2].useRichText),s1=new Toggle({props:f1}),binding_callbacks.push(()=>bind$3(s1,"value",u1)),{c(){e1=element("div"),t1=element("div"),create_component(r1.$$.fragment),o1=space$1(),create_component(i1.$$.fragment),a1=space$1(),create_component(s1.$$.fragment),attr(t1,"class","tooltip-alignment svelte-11l61cq")},m(p1,d1){insert$1(p1,e1,d1),append$1(e1,t1),mount_component(r1,t1,null),append$1(t1,o1),mount_component(i1,t1,null),append$1(e1,a1),mount_component(s1,e1,null),c1=!0},p(p1,d1){const m1={};d1[2]&262144&&(m1.$$scope={dirty:d1,ctx:p1}),r1.$set(m1);const _1={};d1[2]&262144&&(_1.$$scope={dirty:d1,ctx:p1}),i1.$set(_1);const h1={};!l1&&d1[0]&4&&(l1=!0,h1.value=p1[2].useRichText,add_flush_callback(()=>l1=!1)),s1.$set(h1)},i(p1){c1||(transition_in(r1.$$.fragment,p1),transition_in(i1.$$.fragment,p1),transition_in(s1.$$.fragment,p1),c1=!0)},o(p1){transition_out(r1.$$.fragment,p1),transition_out(i1.$$.fragment,p1),transition_out(s1.$$.fragment,p1),c1=!1},d(p1){p1&&detach(e1),destroy_component(r1),destroy_component(i1),destroy_component(s1)}}}function create_if_block_5$h(n1){let e1,t1,r1,o1;function i1(l1){n1[44](l1)}function a1(l1){n1[45](l1)}let s1={};return n1[2].constraints!==void 0&&(s1.constraints=n1[2].constraints),n1[2].optionColors!==void 0&&(s1.optionColors=n1[2].optionColors),e1=new OptionSelectDnD({props:s1}),binding_callbacks.push(()=>bind$3(e1,"constraints",i1)),binding_callbacks.push(()=>bind$3(e1,"optionColors",a1)),{c(){create_component(e1.$$.fragment)},m(l1,c1){mount_component(e1,l1,c1),o1=!0},p(l1,c1){const u1={};!t1&&c1[0]&4&&(t1=!0,u1.constraints=l1[2].constraints,add_flush_callback(()=>t1=!1)),!r1&&c1[0]&4&&(r1=!0,u1.optionColors=l1[2].optionColors,add_flush_callback(()=>r1=!1)),e1.$set(u1)},i(l1){o1||(transition_in(e1.$$.fragment,l1),o1=!0)},o(l1){transition_out(e1.$$.fragment,l1),o1=!1},d(l1){destroy_component(e1,l1)}}}function create_if_block_4$p(n1){let e1,t1,r1;function o1(a1){n1[43](a1)}let i1={type:"number",label:"Max Length"};return n1[2].constraints.length.maximum!==void 0&&(i1.value=n1[2].constraints.length.maximum),e1=new Input$5({props:i1}),binding_callbacks.push(()=>bind$3(e1,"value",o1)),{c(){create_component(e1.$$.fragment)},m(a1,s1){mount_component(e1,a1,s1),r1=!0},p(a1,s1){const l1={};!t1&&s1[0]&4&&(t1=!0,l1.value=a1[2].constraints.length.maximum,add_flush_callback(()=>t1=!1)),e1.$set(l1)},i(a1){r1||(transition_in(e1.$$.fragment,a1),r1=!0)},o(a1){transition_out(e1.$$.fragment,a1),r1=!1},d(a1){destroy_component(e1,a1)}}}function create_default_slot_16$6(n1){let e1;return{c(){e1=text("Open schema editor")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_if_block_14$1(n1){let e1,t1,r1,o1,i1,a1,s1,l1;r1=new Label({props:{size:"M",$$slots:{default:[create_default_slot_15$8]},$$scope:{ctx:n1}}});function c1(f1){n1[57](f1)}let u1={options:[{label:"Dynamic",value:"dynamic"},{label:"Static",value:"static"}],disabled:!n1[7],getOptionLabel:func_9,getOptionValue:func_10,tooltip:`Dynamic formula are calculated when retrieved, but cannot be filtered or sorted by,
1665
1665
  while static formula are calculated when the row is saved.`};return n1[2].formulaType!==void 0&&(u1.value=n1[2].formulaType),a1=new Select_1$1({props:u1}),binding_callbacks.push(()=>bind$3(a1,"value",c1)),{c(){e1=element("div"),t1=element("div"),create_component(r1.$$.fragment),o1=space$1(),i1=element("div"),create_component(a1.$$.fragment),attr(t1,"class","label-length svelte-11l61cq"),attr(i1,"class","input-length svelte-11l61cq"),attr(e1,"class","split-label svelte-11l61cq")},m(f1,p1){insert$1(f1,e1,p1),append$1(e1,t1),mount_component(r1,t1,null),append$1(e1,o1),append$1(e1,i1),mount_component(a1,i1,null),l1=!0},p(f1,p1){const d1={};p1[2]&262144&&(d1.$$scope={dirty:p1,ctx:f1}),r1.$set(d1);const m1={};p1[0]&128&&(m1.disabled=!f1[7]),!s1&&p1[0]&4&&(s1=!0,m1.value=f1[2].formulaType,add_flush_callback(()=>s1=!1)),a1.$set(m1)},i(f1){l1||(transition_in(r1.$$.fragment,f1),transition_in(a1.$$.fragment,f1),l1=!0)},o(f1){transition_out(r1.$$.fragment,f1),transition_out(a1.$$.fragment,f1),l1=!1},d(f1){f1&&detach(e1),destroy_component(r1),destroy_component(a1)}}}function create_default_slot_15$8(n1){let e1;return{c(){e1=text("Formula Type")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot_14$9(n1){let e1;return{c(){e1=text("Formula")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_if_block_12$1(n1){let e1,t1,r1;function o1(a1){n1[55](a1)}let i1={disabled:n1[6],label:"Define the relationship",options:n1[15],getOptionLabel:func_6,getOptionValue:func_7,getOptionTitle:func_8};return n1[2].relationshipType!==void 0&&(i1.value=n1[2].relationshipType),e1=new RadioGroup_1({props:i1}),binding_callbacks.push(()=>bind$3(e1,"value",o1)),{c(){create_component(e1.$$.fragment)},m(a1,s1){mount_component(e1,a1,s1),r1=!0},p(a1,s1){const l1={};s1[0]&64&&(l1.disabled=a1[6]),s1[0]&32768&&(l1.options=a1[15]),!t1&&s1[0]&4&&(t1=!0,l1.value=a1[2].relationshipType,add_flush_callback(()=>t1=!1)),e1.$set(l1)},i(a1){r1||(transition_in(e1.$$.fragment,a1),r1=!0)},o(a1){transition_out(e1.$$.fragment,a1),r1=!1},d(a1){destroy_component(e1,a1)}}}function create_default_slot_13$b(n1){let e1;return{c(){e1=text("Min Value")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot_12$g(n1){let e1;return{c(){e1=text("Max Value")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot_11$k(n1){let e1;return{c(){e1=text("Earliest")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot_10$m(n1){let e1;return{c(){e1=text("Latest")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_if_block_9$3(n1){let e1,t1,r1,o1,i1,a1,s1,l1,c1;r1=new Label({props:{$$slots:{default:[create_default_slot_9$p]},$$scope:{ctx:n1}}}),i1=new AbsTooltip({props:{position:"top",type:"info",text:n1[7]?null:"We recommend not changing how timezones are handled for existing columns, as existing data will not be updated",$$slots:{default:[create_default_slot_8$r]},$$scope:{ctx:n1}}});function u1(p1){n1[51](p1)}let f1={text:"Ignore time zones"};return n1[2].ignoreTimezones!==void 0&&(f1.value=n1[2].ignoreTimezones),s1=new Toggle({props:f1}),binding_callbacks.push(()=>bind$3(s1,"value",u1)),{c(){e1=element("div"),t1=element("div"),create_component(r1.$$.fragment),o1=space$1(),create_component(i1.$$.fragment),a1=space$1(),create_component(s1.$$.fragment),attr(t1,"class","row svelte-11l61cq")},m(p1,d1){insert$1(p1,e1,d1),append$1(e1,t1),mount_component(r1,t1,null),append$1(t1,o1),mount_component(i1,t1,null),append$1(e1,a1),mount_component(s1,e1,null),c1=!0},p(p1,d1){const m1={};d1[2]&262144&&(m1.$$scope={dirty:d1,ctx:p1}),r1.$set(m1);const _1={};d1[0]&128&&(_1.text=p1[7]?null:"We recommend not changing how timezones are handled for existing columns, as existing data will not be updated"),d1[2]&262144&&(_1.$$scope={dirty:d1,ctx:p1}),i1.$set(_1);const h1={};!l1&&d1[0]&4&&(l1=!0,h1.value=p1[2].ignoreTimezones,add_flush_callback(()=>l1=!1)),s1.$set(h1)},i(p1){c1||(transition_in(r1.$$.fragment,p1),transition_in(i1.$$.fragment,p1),transition_in(s1.$$.fragment,p1),c1=!0)},o(p1){transition_out(r1.$$.fragment,p1),transition_out(i1.$$.fragment,p1),transition_out(s1.$$.fragment,p1),c1=!1},d(p1){p1&&detach(e1),destroy_component(r1),destroy_component(i1),destroy_component(s1)}}}function create_default_slot_9$p(n1){let e1;return{c(){e1=text("Time zones")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot_8$r(n1){let e1,t1;return e1=new Icon({props:{size:"XS",name:"InfoOutline"}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p:noop$5,i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_default_slot_7$E(n1){let e1;return{c(){e1=text("Formatting")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot_6$L(n1){let e1,t1;return e1=new Icon({props:{size:"XS",name:"InfoOutline"}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p:noop$5,i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_if_block_3$A(n1){var r1,o1;let e1,t1;return e1=new Select_1$1({props:{label:"Auto column type",value:n1[2].subtype,options:Object.entries(n1[18]),getOptionLabel:func_11,getOptionValue:func_12,disabled:!((r1=n1[19])!=null&&r1.length)||n1[2].autocolumn,error:(o1=n1[3])==null?void 0:o1.subtype}}),e1.$on("change",n1[59]),{c(){create_component(e1.$$.fragment)},m(i1,a1){mount_component(e1,i1,a1),t1=!0},p(i1,a1){var l1,c1;const s1={};a1[0]&4&&(s1.value=i1[2].subtype),a1[0]&262144&&(s1.options=Object.entries(i1[18])),a1[0]&524292&&(s1.disabled=!((l1=i1[19])!=null&&l1.length)||i1[2].autocolumn),a1[0]&8&&(s1.error=(c1=i1[3])==null?void 0:c1.subtype),e1.$set(s1)},i(i1){t1||(transition_in(e1.$$.fragment,i1),t1=!0)},o(i1){transition_out(e1.$$.fragment,i1),t1=!1},d(i1){destroy_component(e1,i1)}}}function create_if_block_1$1m(n1){let e1,t1,r1=n1[16]&&create_if_block_2$S(n1);return{c(){e1=element("div"),r1&&r1.c()},m(o1,i1){insert$1(o1,e1,i1),r1&&r1.m(e1,null),t1=!0},p(o1,i1){o1[16]?r1?(r1.p(o1,i1),i1[0]&65536&&transition_in(r1,1)):(r1=create_if_block_2$S(o1),r1.c(),transition_in(r1,1),r1.m(e1,null)):r1&&(group_outros(),transition_out(r1,1,1,()=>{r1=null}),check_outros())},i(o1){t1||(transition_in(r1),t1=!0)},o(o1){transition_out(r1),t1=!1},d(o1){o1&&detach(e1),r1&&r1.d()}}}function create_if_block_2$S(n1){let e1,t1;return e1=new Toggle({props:{value:n1[13],disabled:n1[1],thin:!0,text:"Required"}}),e1.$on("change",n1[30]),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1[0]&8192&&(i1.value=r1[13]),o1[0]&2&&(i1.disabled=r1[1]),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_default_slot_5$V(n1){let e1,t1,r1,o1,i1,a1,s1,l1,c1,u1,f1=n1[5]&&create_if_block_16$1(n1);function p1(y1){n1[42](y1)}let d1={disabled:!n1[14],options:n1[11],getOptionLabel:func$E,getOptionValue:func_1$x,getOptionIcon:func_2$2,isOptionEnabled:n1[41]};n1[2].type!==void 0&&(d1.value=n1[2].type),t1=new Select_1$1({props:d1}),binding_callbacks.push(()=>bind$3(t1,"value",p1)),t1.$on("change",n1[29]);const m1=[create_if_block_4$p,create_if_block_5$h,create_if_block_6$b,create_if_block_7$a,create_if_block_8$5,create_if_block_10$2,create_if_block_11$1,create_if_block_13$1,create_if_block_15$1],_1=[];function h1(y1,w1){return y1[2].type==="string"?0:y1[2].type==="options"?1:y1[2].type==="longform"?2:y1[2].type==="array"?3:y1[2].type==="datetime"&&!y1[2].autocolumn?4:y1[2].type==="number"&&!y1[2].autocolumn?5:y1[2].type==="link"?6:y1[2].type===y1[22]?7:y1[2].type===y1[24]?8:-1}~(i1=h1(n1))&&(a1=_1[i1]=m1[i1](n1));let g1=(n1[2].type===AUTO_TYPE||n1[2].autocolumn)&&create_if_block_3$A(n1),$1=(n1[16]||n1[17])&&create_if_block_1$1m(n1);return{c(){f1&&f1.c(),e1=space$1(),create_component(t1.$$.fragment),o1=space$1(),a1&&a1.c(),s1=space$1(),g1&&g1.c(),l1=space$1(),$1&&$1.c(),c1=empty$1()},m(y1,w1){f1&&f1.m(y1,w1),insert$1(y1,e1,w1),mount_component(t1,y1,w1),insert$1(y1,o1,w1),~i1&&_1[i1].m(y1,w1),insert$1(y1,s1,w1),g1&&g1.m(y1,w1),insert$1(y1,l1,w1),$1&&$1.m(y1,w1),insert$1(y1,c1,w1),u1=!0},p(y1,w1){y1[5]?f1?(f1.p(y1,w1),w1[0]&32&&transition_in(f1,1)):(f1=create_if_block_16$1(y1),f1.c(),transition_in(f1,1),f1.m(e1.parentNode,e1)):f1&&(group_outros(),transition_out(f1,1,1,()=>{f1=null}),check_outros());const S1={};w1[0]&16384&&(S1.disabled=!y1[14]),w1[0]&2048&&(S1.options=y1[11]),w1[0]&524288&&(S1.isOptionEnabled=y1[41]),!r1&&w1[0]&4&&(r1=!0,S1.value=y1[2].type,add_flush_callback(()=>r1=!1)),t1.$set(S1);let O1=i1;i1=h1(y1),i1===O1?~i1&&_1[i1].p(y1,w1):(a1&&(group_outros(),transition_out(_1[O1],1,1,()=>{_1[O1]=null}),check_outros()),~i1?(a1=_1[i1],a1?a1.p(y1,w1):(a1=_1[i1]=m1[i1](y1),a1.c()),transition_in(a1,1),a1.m(s1.parentNode,s1)):a1=null),y1[2].type===AUTO_TYPE||y1[2].autocolumn?g1?(g1.p(y1,w1),w1[0]&4&&transition_in(g1,1)):(g1=create_if_block_3$A(y1),g1.c(),transition_in(g1,1),g1.m(l1.parentNode,l1)):g1&&(group_outros(),transition_out(g1,1,1,()=>{g1=null}),check_outros()),y1[16]||y1[17]?$1?($1.p(y1,w1),w1[0]&196608&&transition_in($1,1)):($1=create_if_block_1$1m(y1),$1.c(),transition_in($1,1),$1.m(c1.parentNode,c1)):$1&&(group_outros(),transition_out($1,1,1,()=>{$1=null}),check_outros())},i(y1){u1||(transition_in(f1),transition_in(t1.$$.fragment,y1),transition_in(a1),transition_in(g1),transition_in($1),u1=!0)},o(y1){transition_out(f1),transition_out(t1.$$.fragment,y1),transition_out(a1),transition_out(g1),transition_out($1),u1=!1},d(y1){f1&&f1.d(y1),y1&&detach(e1),destroy_component(t1,y1),y1&&detach(o1),~i1&&_1[i1].d(y1),y1&&detach(s1),g1&&g1.d(y1),y1&&detach(l1),$1&&$1.d(y1),y1&&detach(c1)}}}function create_if_block$2y(n1){let e1,t1;return e1=new Button({props:{quiet:!0,warning:!0,text:!0,$$slots:{default:[create_default_slot_4$19]},$$scope:{ctx:n1}}}),e1.$on("click",n1[32]),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1[2]&262144&&(i1.$$scope={dirty:o1,ctx:r1}),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_default_slot_4$19(n1){let e1;return{c(){e1=text("Delete")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot_3$1z(n1){let e1;return{c(){e1=text("Cancel")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot_2$21(n1){let e1;return{c(){e1=text("Save")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot_1$2L(n1){let e1,t1;return e1=new JSONSchemaModal({props:{schema:n1[2].schema,json:n1[2].json}}),e1.$on("save",n1[60]),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1[0]&4&&(i1.schema=r1[2].schema),o1[0]&4&&(i1.json=r1[2].json),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_default_slot$3F(n1){let e1,t1,r1,o1,i1,a1,s1,l1,c1,u1;function f1(d1){n1[62](d1)}let p1={placeholder:n1[0]};return n1[9]!==void 0&&(p1.value=n1[9]),l1=new Input$5({props:p1}),binding_callbacks.push(()=>bind$3(l1,"value",f1)),{c(){e1=element("p"),t1=text("Are you sure you wish to delete the column "),r1=element("b"),o1=text(n1[0]),i1=text("?"),a1=text(`
1666
1666
  Your data will be deleted and this action cannot be undone - enter the column
1667
- name to confirm.`),s1=space$1(),create_component(l1.$$.fragment)},m(d1,m1){insert$1(d1,e1,m1),append$1(e1,t1),append$1(e1,r1),append$1(r1,o1),append$1(r1,i1),append$1(e1,a1),insert$1(d1,s1,m1),mount_component(l1,d1,m1),u1=!0},p(d1,m1){(!u1||m1[0]&1)&&set_data(o1,d1[0]);const _1={};m1[0]&1&&(_1.placeholder=d1[0]),!c1&&m1[0]&512&&(c1=!0,_1.value=d1[9],add_flush_callback(()=>c1=!1)),l1.$set(_1)},i(d1){u1||(transition_in(l1.$$.fragment,d1),u1=!0)},o(d1){transition_out(l1.$$.fragment,d1),u1=!1},d(d1){d1&&detach(e1),d1&&detach(s1),destroy_component(l1,d1)}}}function create_fragment$5m(n1){let e1,t1,r1,o1,i1,a1,s1,l1,c1,u1,f1,p1;e1=new Layout$m({props:{noPadding:!0,gap:"S",$$slots:{default:[create_default_slot_5$V]},$$scope:{ctx:n1}}});let d1=!n1[4]&&n1[0]!=null&&create_if_block$2y(n1);i1=new Button({props:{secondary:!0,newStyles:!0,$$slots:{default:[create_default_slot_3$1z]},$$scope:{ctx:n1}}}),i1.$on("click",n1[27]),s1=new Button({props:{disabled:n1[21],newStyles:!0,cta:!0,$$slots:{default:[create_default_slot_2$21]},$$scope:{ctx:n1}}}),s1.$on("click",n1[26]);let m1={$$slots:{default:[create_default_slot_1$2L]},$$scope:{ctx:n1}};c1=new Modal({props:m1}),n1[61](c1);let _1={okText:"Delete Column",onOk:n1[28],onCancel:n1[33],title:"Confirm Deletion",disabled:n1[9]!==n1[0],$$slots:{default:[create_default_slot$3F]},$$scope:{ctx:n1}};return f1=new ConfirmDialog({props:_1}),n1[63](f1),{c(){create_component(e1.$$.fragment),t1=space$1(),r1=element("div"),d1&&d1.c(),o1=space$1(),create_component(i1.$$.fragment),a1=space$1(),create_component(s1.$$.fragment),l1=space$1(),create_component(c1.$$.fragment),u1=space$1(),create_component(f1.$$.fragment),attr(r1,"class","action-buttons svelte-11l61cq")},m(h1,g1){mount_component(e1,h1,g1),insert$1(h1,t1,g1),insert$1(h1,r1,g1),d1&&d1.m(r1,null),append$1(r1,o1),mount_component(i1,r1,null),append$1(r1,a1),mount_component(s1,r1,null),insert$1(h1,l1,g1),mount_component(c1,h1,g1),insert$1(h1,u1,g1),mount_component(f1,h1,g1),p1=!0},p(h1,g1){const $1={};g1[0]&2095358|g1[2]&262144&&($1.$$scope={dirty:g1,ctx:h1}),e1.$set($1),!h1[4]&&h1[0]!=null?d1?(d1.p(h1,g1),g1[0]&17&&transition_in(d1,1)):(d1=create_if_block$2y(h1),d1.c(),transition_in(d1,1),d1.m(r1,o1)):d1&&(group_outros(),transition_out(d1,1,1,()=>{d1=null}),check_outros());const y1={};g1[2]&262144&&(y1.$$scope={dirty:g1,ctx:h1}),i1.$set(y1);const w1={};g1[0]&2097152&&(w1.disabled=h1[21]),g1[2]&262144&&(w1.$$scope={dirty:g1,ctx:h1}),s1.$set(w1);const S1={};g1[0]&4|g1[2]&262144&&(S1.$$scope={dirty:g1,ctx:h1}),c1.$set(S1);const O1={};g1[0]&513&&(O1.disabled=h1[9]!==h1[0]),g1[0]&513|g1[2]&262144&&(O1.$$scope={dirty:g1,ctx:h1}),f1.$set(O1)},i(h1){p1||(transition_in(e1.$$.fragment,h1),transition_in(d1),transition_in(i1.$$.fragment,h1),transition_in(s1.$$.fragment,h1),transition_in(c1.$$.fragment,h1),transition_in(f1.$$.fragment,h1),p1=!0)},o(h1){transition_out(e1.$$.fragment,h1),transition_out(d1),transition_out(i1.$$.fragment,h1),transition_out(s1.$$.fragment,h1),transition_out(c1.$$.fragment,h1),transition_out(f1.$$.fragment,h1),p1=!1},d(h1){destroy_component(e1,h1),h1&&detach(t1),h1&&detach(r1),d1&&d1.d(),destroy_component(i1),destroy_component(s1),h1&&detach(l1),n1[61](null),destroy_component(c1,h1),h1&&detach(u1),n1[63](null),destroy_component(f1,h1)}}}const AUTO_TYPE="auto";function extractColumnNumber(n1){const e1=n1.match(/Column (\d+)/);return e1?parseInt(e1[1]):0}const func$E=n1=>n1.name,func_1$x=n1=>n1.type,func_2$2=n1=>n1.icon,func_4$3=n1=>n1.name,func_5$1=n1=>n1._id,func_6=n1=>n1.name,func_7=n1=>n1.value,func_8=n1=>n1.alt,func_9=n1=>n1.label,func_10=n1=>n1.value,func_11=n1=>n1[1].name,func_12=n1=>n1[0];function instance$5s(n1,e1,t1){let r1,o1,i1,a1,s1,l1,c1,u1,f1,p1,d1,m1,_1,h1,g1,$1,y1;component_subscribe(n1,tables,$0=>t1(38,$1=$0)),component_subscribe(n1,datasources,$0=>t1(39,y1=$0));const w1=FIELDS.FORMULA.type,S1=FIELDS.LINK.type,O1=FIELDS.STRING.type,C1=FIELDS.NUMBER.type,M1=FIELDS.JSON.type,z1=FIELDS.DATETIME.type,D1=createEventDispatcher(),H1=["type","_id","_rev","tableId"],{dispatch:B1}=getContext("grid");let{field:q1}=e1,R1=!1,I1=fp.cloneDeep(FIELDS),F1,j1,X1,Y1=[...$1.selected.indexes||[]],Q1,e0=$1.selected,Z1,W1,r0,d0,h0=[],a0={type:"string",constraints:I1.STRING.constraints,fieldName:$1.selected.name};const t0=($0,a2)=>{if(t1(7,Q1=!$0),$0&&!a2)t1(2,a0=fp.cloneDeep($0)),t1(0,F1=a0.name?a0.name+"":null),t1(6,j1=F1!=null),t1(1,X1=$1.selected.primaryDisplay==null||$1.selected.primaryDisplay===a0.name);else if(!a2){let s2=0;Object.keys(e0.schema).forEach(E2=>{const C2=extractColumnNumber(E2);return C2>s2&&(s2=C2),s2}),s2>=1?t1(2,a0.name=`Column 0${s2+1}`,a0):t1(2,a0.name="Column 01",a0)}t1(11,h0=w2())},y0=$0=>Object.keys($0==null?void 0:$0.schema).reduce((a2,s2)=>{let E2=$0==null?void 0:$0.schema[s2];return E2.autocolumn&&a2.push(E2.subtype),a2},[]);let P0=getAutoColumnInformation();async function f0(){if(t1(35,W1=!0),a1!=null&&a1.length)return;let $0=fp.cloneDeep(a0);$0.type===AUTO_TYPE&&($0=buildAutoColumn($1.selected.name,$0.name,$0.subtype)),$0.type!==S1&&delete $0.fieldName;try{await tables.saveField({originalName:F1,field:$0,primaryDisplay:X1,indexes:Y1}),D1("updatecolumns"),B1("close-edit-column"),$0.type===S1&&$0.relationshipType===RelationshipType.MANY_TO_MANY&&(tables.fetch(),datasources.fetch()),F1?notifications.success("Column updated successfully"):notifications.success("Column created successfully")}catch(a2){notifications.error(`Error saving column: ${a2.message}`)}}function L0(){t1(2,a0.name=F1,a0),B1("close-edit-column")}async function U0(){try{t1(2,a0.name=r0,a0),a0.name===$1.selected.primaryDisplay?notifications.error("You cannot delete the display column"):(await tables.deleteField(a0),notifications.success(`Column ${a0.name} deleted`),Z1.hide(),D1("updatecolumns"),B1("close-edit-column"))}catch($0){notifications.error(`Error deleting column: ${$0.message}`)}}function x0($0){var s2;delete a0.autocolumn,delete a0.subtype,delete a0.tableId,delete a0.relationshipType,delete a0.formulaType;const a2=I1[(s2=$0.detail)==null?void 0:s2.toUpperCase()];a2!=null&&a2.constraints&&t1(2,a0.constraints=a2.constraints,a0),a0.type===S1&&t1(2,a0.relationshipType=RelationshipType.MANY_TO_MANY,a0),a0.type===w1&&t1(2,a0.formulaType="dynamic",a0)}function D0($0){const a2=$0.detail;t1(2,a0.constraints.presence=a2?{allowEmpty:!1}:!1,a0),t1(13,r1=a2)}function c2(){d0.show()}function W0(){Z1.show()}function q0(){Z1.hide(),t1(9,r0="")}function l0($0){if(!$0||!$0.tableId)return null;const a2=h1==null?void 0:h1.find(C2=>C2._id===$0.tableId);if(!a2)return null;const s2=lodash$2.exports.truncate(e0.name,{length:14}),E2=lodash$2.exports.truncate(a2.name,{length:14});return[{name:`Many ${s2} rows \u2192 many ${E2} rows`,alt:`Many ${e0.name} rows \u2192 many ${a2.name} rows`,value:RelationshipType.MANY_TO_MANY},{name:`One ${E2} row \u2192 many ${s2} rows`,alt:`One ${a2.name} rows \u2192 many ${e0.name} rows`,value:RelationshipType.ONE_TO_MANY},{name:`One ${s2} row \u2192 many ${E2} rows`,alt:`One ${e0.name} rows \u2192 many ${a2.name} rows`,value:RelationshipType.MANY_TO_ONE}]}function w2(){if(F1&&ALLOWABLE_STRING_TYPES.indexOf(a0.type)!==-1)return ALLOWABLE_STRING_OPTIONS;if(F1&&ALLOWABLE_NUMBER_TYPES.indexOf(a0.type)!==-1)return ALLOWABLE_NUMBER_OPTIONS;if(_1){let $0=[FIELDS.STRING,FIELDS.BARCODEQR,FIELDS.LONGFORM,FIELDS.OPTIONS,FIELDS.DATETIME,FIELDS.NUMBER,FIELDS.BOOLEAN,FIELDS.FORMULA,FIELDS.BIGINT];return(!_1||e0.sql)&&($0=[...$0,FIELDS.LINK,FIELDS.ARRAY]),$0}else return[...Object.values(I1),{name:"Auto Column",type:AUTO_TYPE}]}function H0($0){!$0||($0&&!$0.constraints&&($0.constraints={}),$0.type===O1&&!$0.constraints.length&&($0.constraints.length={}),$0.type===C1&&!$0.constraints.numericality&&($0.constraints.numericality={}),$0.type===z1&&!$0.constraints.datetime&&($0.constraints.datetime={}))}function w0($0){var E2;if(!a0)return{};function a2(C2,J0,p2=null){const b2=J0&&J0.toLowerCase().trim();return Object.keys((C2==null?void 0:C2.schema)||{}).some(U2=>{let $d=U2.toLowerCase();return $d!==(p2==null?void 0:p2.toLowerCase())&&$d===b2})}const s2={};if(!_1&&((E2=$0.name)==null?void 0:E2.startsWith("_"))?s2.name="Column name cannot start with an underscore.":$0.name&&!$0.name.match(ValidColumnNameRegex)?s2.name="Illegal character; must be alpha-numeric.":H1.some(C2=>$0.name===C2)?s2.name=`${H1.join(", ")} are not allowed as column names`:a2($1.selected,$0.name,F1)&&(s2.name="Column name already in use."),$0.type=="auto"&&!$0.subtype&&(s2.subtype="Auto Column requires a type"),$0.fieldName&&$0.tableId){const C2=$1.list.find(J0=>J0._id===$0.tableId);a2(C2,$0.fieldName)&&!F1&&(s2.relatedName=`Column name already in use in table ${C2.name}`)}return s2}onMount(()=>{t1(5,R1=!0)});function E0($0){n1.$$.not_equal(a0.name,$0)&&(a0.name=$0,t1(2,a0),t1(1,X1))}const c0=$0=>$0.type==AUTO_TYPE?(u1==null?void 0:u1.length)>0:!0;function S0($0){n1.$$.not_equal(a0.type,$0)&&(a0.type=$0,t1(2,a0),t1(1,X1))}function m0($0){n1.$$.not_equal(a0.constraints.length.maximum,$0)&&(a0.constraints.length.maximum=$0,t1(2,a0),t1(1,X1))}function O0($0){n1.$$.not_equal(a0.constraints,$0)&&(a0.constraints=$0,t1(2,a0),t1(1,X1))}function I0($0){n1.$$.not_equal(a0.optionColors,$0)&&(a0.optionColors=$0,t1(2,a0),t1(1,X1))}function m2($0){n1.$$.not_equal(a0.useRichText,$0)&&(a0.useRichText=$0,t1(2,a0),t1(1,X1))}function f2($0){n1.$$.not_equal(a0.constraints,$0)&&(a0.constraints=$0,t1(2,a0),t1(1,X1))}function X0($0){n1.$$.not_equal(a0.optionColors,$0)&&(a0.optionColors=$0,t1(2,a0),t1(1,X1))}function d2($0){n1.$$.not_equal(a0.constraints.datetime.earliest,$0)&&(a0.constraints.datetime.earliest=$0,t1(2,a0),t1(1,X1))}function M2($0){n1.$$.not_equal(a0.constraints.datetime.latest,$0)&&(a0.constraints.datetime.latest=$0,t1(2,a0),t1(1,X1))}function R2($0){n1.$$.not_equal(a0.ignoreTimezones,$0)&&(a0.ignoreTimezones=$0,t1(2,a0),t1(1,X1))}function G0($0){n1.$$.not_equal(a0.constraints.numericality.greaterThanOrEqualTo,$0)&&(a0.constraints.numericality.greaterThanOrEqualTo=$0,t1(2,a0),t1(1,X1))}function l2($0){n1.$$.not_equal(a0.constraints.numericality.lessThanOrEqualTo,$0)&&(a0.constraints.numericality.lessThanOrEqualTo=$0,t1(2,a0),t1(1,X1))}function y2($0){n1.$$.not_equal(a0.tableId,$0)&&(a0.tableId=$0,t1(2,a0),t1(1,X1))}function K2($0){n1.$$.not_equal(a0.relationshipType,$0)&&(a0.relationshipType=$0,t1(2,a0),t1(1,X1))}function gd($0){n1.$$.not_equal(a0.fieldName,$0)&&(a0.fieldName=$0,t1(2,a0),t1(1,X1))}function F2($0){n1.$$.not_equal(a0.formulaType,$0)&&(a0.formulaType=$0,t1(2,a0),t1(1,X1))}const W2=$0=>{t1(2,a0={...a0,formula:$0.detail})},pm=$0=>t1(2,a0.subtype=$0.detail,a0),Bd=({detail:$0})=>{t1(2,a0.schema=$0.schema,a0),t1(2,a0.json=$0.json,a0)};function T0($0){binding_callbacks[$0?"unshift":"push"](()=>{d0=$0,t1(10,d0)})}function B0($0){r0=$0,t1(9,r0)}function e2($0){binding_callbacks[$0?"unshift":"push"](()=>{Z1=$0,t1(8,Z1)})}return n1.$$set=$0=>{"field"in $0&&t1(34,q1=$0.field)},n1.$$.update=()=>{var $0,a2;n1.$$.dirty[0]&2&&X1&&t1(2,a0.constraints.presence={allowEmpty:!1},a0),n1.$$.dirty[1]&24&&t0(q1,W1),n1.$$.dirty[0]&4&&H0(a0),n1.$$.dirty[0]&6&&t1(13,r1=!!(($0=a0==null?void 0:a0.constraints)!=null&&$0.presence)||X1),n1.$$.dirty[0]&4|n1.$$.dirty[1]&128&&t1(4,o1=((a2=$1.selected)==null?void 0:a2._id)===TableNames.USERS&&UNEDITABLE_USER_FIELDS.includes(a0.name)),n1.$$.dirty[0]&4&&t1(3,a1=w0(a0)),n1.$$.dirty[0]&12&&t1(21,i1=!(a0!=null&&a0.name)||(a0==null?void 0:a0.type)===S1&&!(a0!=null&&a0.tableId)||Object.keys(a1).length!==0),n1.$$.dirty[1]&256&&t1(20,s1=y1.list.find(s2=>s2._id===(e0==null?void 0:e0.sourceId))),n1.$$.dirty[1]&128&&t1(37,l1=y0($1==null?void 0:$1.selected)),n1.$$.dirty[1]&64&&t1(36,c1=Object.keys(P0).reduce((s2,E2)=>(l1.includes(E2)||(s2[E2]=P0[E2]),s2),{})),n1.$$.dirty[1]&32&&t1(19,u1=c1?Object.keys(c1):[]),n1.$$.dirty[0]&4|n1.$$.dirty[1]&32&&t1(18,f1=a0.autocolumn?P0:c1),n1.$$.dirty[0]&4&&t1(17,p1=(a0==null?void 0:a0.type)!==S1&&(a0==null?void 0:a0.type)!==AUTO_TYPE&&(a0==null?void 0:a0.type)!==M1&&!a0.autocolumn),n1.$$.dirty[0]&20&&t1(16,d1=(a0==null?void 0:a0.type)!==S1&&!o1&&(a0==null?void 0:a0.type)!==AUTO_TYPE&&!a0.autocolumn),n1.$$.dirty[0]&4&&t1(15,m1=l0(a0)),n1.$$.dirty[1]&128&&t1(12,h1=$1.list.filter(s2=>s2._id!==$1.selected._id&&s2.type===e0.type&&e0.sourceId===s2.sourceId)),n1.$$.dirty[0]&5&&t1(14,g1=!F1||F1&&SWITCHABLE_TYPES.indexOf(a0.type)!==-1&&!(a0!=null&&a0.autocolumn))},_1=e0.type==="external",[F1,X1,a0,a1,o1,R1,j1,Q1,Z1,r0,d0,h0,h1,r1,g1,m1,d1,p1,f1,u1,s1,i1,w1,S1,M1,e0,f0,L0,U0,x0,D0,c2,W0,q0,q1,W1,c1,l1,$1,y1,E0,c0,S0,m0,O0,I0,m2,f2,X0,d2,M2,R2,G0,l2,y2,K2,gd,F2,W2,pm,Bd,T0,B0,e2]}class CreateEditColumn extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$5s,create_fragment$5m,safe_not_equal,{field:34},null,[-1,-1,-1])}}function create_fragment$5l(n1){let e1,t1;return e1=new CreateEditColumn({}),e1.$on("updatecolumns",n1[0].actions.refreshDefinition),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p:noop$5,i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function instance$5r(n1){const{datasource:e1}=getContext("grid");return[e1]}class GridCreateColumnModal extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$5r,create_fragment$5l,safe_not_equal,{})}}function create_fragment$5k(n1){let e1,t1,r1;const o1=[{label:n1[1]},n1[5],{processFiles:n1[3]},{deleteAttachments:n1[4]},{handleFileTooLarge:n1[2]}];function i1(s1){n1[6](s1)}let a1={};for(let s1=0;s1<o1.length;s1+=1)a1=assign$1(a1,o1[s1]);return n1[0]!==void 0&&(a1.value=n1[0]),e1=new Dropzone({props:a1}),binding_callbacks.push(()=>bind$3(e1,"value",i1)),{c(){create_component(e1.$$.fragment)},m(s1,l1){mount_component(e1,s1,l1),r1=!0},p(s1,[l1]){const c1=l1&62?get_spread_update(o1,[l1&2&&{label:s1[1]},l1&32&&get_spread_object(s1[5]),l1&8&&{processFiles:s1[3]},l1&16&&{deleteAttachments:s1[4]},l1&4&&{handleFileTooLarge:s1[2]}]):{};!t1&&l1&1&&(t1=!0,c1.value=s1[0],add_flush_callback(()=>t1=!1)),e1.$set(c1)},i(s1){r1||(transition_in(e1.$$.fragment,s1),r1=!0)},o(s1){transition_out(e1.$$.fragment,s1),r1=!1},d(s1){destroy_component(e1,s1)}}}const BYTES_IN_MB$1=1e6;function instance$5q(n1,e1,t1){const r1=["value","label"];let o1=compute_rest_props(e1,r1),{value:i1=[]}=e1,{label:a1}=e1;function s1(f1){notifications.error(`Files cannot exceed ${f1/BYTES_IN_MB$1}MB. Please try again with smaller files.`)}async function l1(f1){let p1=new FormData;for(let d1=0;d1<f1.length;d1++)p1.append("file",f1[d1]);try{return await API.uploadBuilderAttachment(p1)}catch{return notifications.error("Failed to upload attachment"),[]}}async function c1(f1){try{return await API.deleteBuilderAttachments(f1)}catch{return[]}}function u1(f1){i1=f1,t1(0,i1)}return n1.$$set=f1=>{e1=assign$1(assign$1({},e1),exclude_internal_props(f1)),t1(5,o1=compute_rest_props(e1,r1)),"value"in f1&&t1(0,i1=f1.value),"label"in f1&&t1(1,a1=f1.label)},[i1,a1,s1,l1,c1,o1,u1]}class Dropzone_1 extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$5q,create_fragment$5k,safe_not_equal,{value:0,label:1})}}function create_else_block$X(n1){let e1,t1,r1;function o1(a1){n1[10](a1)}let i1={label:n1[4],options:n1[2],getOptionLabel:n1[5],getOptionValue:func_1$w,sort:!0};return n1[1]!==void 0&&(i1.value=n1[1]),e1=new Multiselect_1({props:i1}),binding_callbacks.push(()=>bind$3(e1,"value",o1)),{c(){create_component(e1.$$.fragment)},m(a1,s1){mount_component(e1,a1,s1),r1=!0},p(a1,s1){const l1={};s1&16&&(l1.label=a1[4]),s1&4&&(l1.options=a1[2]),!t1&&s1&2&&(t1=!0,l1.value=a1[1],add_flush_callback(()=>t1=!1)),e1.$set(l1)},i(a1){r1||(transition_in(e1.$$.fragment,a1),r1=!0)},o(a1){transition_out(e1.$$.fragment,a1),r1=!1},d(a1){destroy_component(e1,a1)}}}function create_if_block_1$1l(n1){var r1;let e1,t1;return e1=new Select_1$1({props:{value:(r1=n1[1])==null?void 0:r1[0],options:n1[2],getOptionLabel:n1[5],getOptionValue:func$D,label:n1[4],sort:!0}}),e1.$on("change",n1[9]),{c(){create_component(e1.$$.fragment)},m(o1,i1){mount_component(e1,o1,i1),t1=!0},p(o1,i1){var s1;const a1={};i1&2&&(a1.value=(s1=o1[1])==null?void 0:s1[0]),i1&4&&(a1.options=o1[2]),i1&16&&(a1.label=o1[4]),e1.$set(a1)},i(o1){t1||(transition_in(e1.$$.fragment,o1),t1=!0)},o(o1){transition_out(e1.$$.fragment,o1),t1=!1},d(o1){destroy_component(e1,o1)}}}function create_if_block$2x(n1){let e1,t1,r1,o1;return e1=new Label({props:{extraSmall:!0,grey:!0,$$slots:{default:[create_default_slot_1$2K]},$$scope:{ctx:n1}}}),r1=new Label({props:{small:!0,black:!0,$$slots:{default:[create_default_slot$3E]},$$scope:{ctx:n1}}}),{c(){create_component(e1.$$.fragment),t1=space$1(),create_component(r1.$$.fragment)},m(i1,a1){mount_component(e1,i1,a1),insert$1(i1,t1,a1),mount_component(r1,i1,a1),o1=!0},p(i1,a1){const s1={};a1&4112&&(s1.$$scope={dirty:a1,ctx:i1}),e1.$set(s1);const l1={};a1&4104&&(l1.$$scope={dirty:a1,ctx:i1}),r1.$set(l1)},i(i1){o1||(transition_in(e1.$$.fragment,i1),transition_in(r1.$$.fragment,i1),o1=!0)},o(i1){transition_out(e1.$$.fragment,i1),transition_out(r1.$$.fragment,i1),o1=!1},d(i1){destroy_component(e1,i1),i1&&detach(t1),destroy_component(r1,i1)}}}function create_default_slot_1$2K(n1){let e1;return{c(){e1=text(n1[4])},m(t1,r1){insert$1(t1,e1,r1)},p(t1,r1){r1&16&&set_data(e1,t1[4])},d(t1){t1&&detach(e1)}}}function create_default_slot$3E(n1){let e1,t1,r1=n1[3].name+"",o1,i1;return{c(){e1=text(`Please choose a display column for the
1667
+ name to confirm.`),s1=space$1(),create_component(l1.$$.fragment)},m(d1,m1){insert$1(d1,e1,m1),append$1(e1,t1),append$1(e1,r1),append$1(r1,o1),append$1(r1,i1),append$1(e1,a1),insert$1(d1,s1,m1),mount_component(l1,d1,m1),u1=!0},p(d1,m1){(!u1||m1[0]&1)&&set_data(o1,d1[0]);const _1={};m1[0]&1&&(_1.placeholder=d1[0]),!c1&&m1[0]&512&&(c1=!0,_1.value=d1[9],add_flush_callback(()=>c1=!1)),l1.$set(_1)},i(d1){u1||(transition_in(l1.$$.fragment,d1),u1=!0)},o(d1){transition_out(l1.$$.fragment,d1),u1=!1},d(d1){d1&&detach(e1),d1&&detach(s1),destroy_component(l1,d1)}}}function create_fragment$5m(n1){let e1,t1,r1,o1,i1,a1,s1,l1,c1,u1,f1,p1;e1=new Layout$m({props:{noPadding:!0,gap:"S",$$slots:{default:[create_default_slot_5$V]},$$scope:{ctx:n1}}});let d1=!n1[4]&&n1[0]!=null&&create_if_block$2y(n1);i1=new Button({props:{secondary:!0,newStyles:!0,$$slots:{default:[create_default_slot_3$1z]},$$scope:{ctx:n1}}}),i1.$on("click",n1[27]),s1=new Button({props:{disabled:n1[21],newStyles:!0,cta:!0,$$slots:{default:[create_default_slot_2$21]},$$scope:{ctx:n1}}}),s1.$on("click",n1[26]);let m1={$$slots:{default:[create_default_slot_1$2L]},$$scope:{ctx:n1}};c1=new Modal({props:m1}),n1[61](c1);let _1={okText:"Delete Column",onOk:n1[28],onCancel:n1[33],title:"Confirm Deletion",disabled:n1[9]!==n1[0],$$slots:{default:[create_default_slot$3F]},$$scope:{ctx:n1}};return f1=new ConfirmDialog({props:_1}),n1[63](f1),{c(){create_component(e1.$$.fragment),t1=space$1(),r1=element("div"),d1&&d1.c(),o1=space$1(),create_component(i1.$$.fragment),a1=space$1(),create_component(s1.$$.fragment),l1=space$1(),create_component(c1.$$.fragment),u1=space$1(),create_component(f1.$$.fragment),attr(r1,"class","action-buttons svelte-11l61cq")},m(h1,g1){mount_component(e1,h1,g1),insert$1(h1,t1,g1),insert$1(h1,r1,g1),d1&&d1.m(r1,null),append$1(r1,o1),mount_component(i1,r1,null),append$1(r1,a1),mount_component(s1,r1,null),insert$1(h1,l1,g1),mount_component(c1,h1,g1),insert$1(h1,u1,g1),mount_component(f1,h1,g1),p1=!0},p(h1,g1){const $1={};g1[0]&2095358|g1[2]&262144&&($1.$$scope={dirty:g1,ctx:h1}),e1.$set($1),!h1[4]&&h1[0]!=null?d1?(d1.p(h1,g1),g1[0]&17&&transition_in(d1,1)):(d1=create_if_block$2y(h1),d1.c(),transition_in(d1,1),d1.m(r1,o1)):d1&&(group_outros(),transition_out(d1,1,1,()=>{d1=null}),check_outros());const y1={};g1[2]&262144&&(y1.$$scope={dirty:g1,ctx:h1}),i1.$set(y1);const w1={};g1[0]&2097152&&(w1.disabled=h1[21]),g1[2]&262144&&(w1.$$scope={dirty:g1,ctx:h1}),s1.$set(w1);const S1={};g1[0]&4|g1[2]&262144&&(S1.$$scope={dirty:g1,ctx:h1}),c1.$set(S1);const O1={};g1[0]&513&&(O1.disabled=h1[9]!==h1[0]),g1[0]&513|g1[2]&262144&&(O1.$$scope={dirty:g1,ctx:h1}),f1.$set(O1)},i(h1){p1||(transition_in(e1.$$.fragment,h1),transition_in(d1),transition_in(i1.$$.fragment,h1),transition_in(s1.$$.fragment,h1),transition_in(c1.$$.fragment,h1),transition_in(f1.$$.fragment,h1),p1=!0)},o(h1){transition_out(e1.$$.fragment,h1),transition_out(d1),transition_out(i1.$$.fragment,h1),transition_out(s1.$$.fragment,h1),transition_out(c1.$$.fragment,h1),transition_out(f1.$$.fragment,h1),p1=!1},d(h1){destroy_component(e1,h1),h1&&detach(t1),h1&&detach(r1),d1&&d1.d(),destroy_component(i1),destroy_component(s1),h1&&detach(l1),n1[61](null),destroy_component(c1,h1),h1&&detach(u1),n1[63](null),destroy_component(f1,h1)}}}const AUTO_TYPE="auto";function extractColumnNumber(n1){const e1=n1.match(/Column (\d+)/);return e1?parseInt(e1[1]):0}const func$E=n1=>n1.name,func_1$x=n1=>n1.type,func_2$2=n1=>n1.icon,func_4$3=n1=>n1.name,func_5$1=n1=>n1._id,func_6=n1=>n1.name,func_7=n1=>n1.value,func_8=n1=>n1.alt,func_9=n1=>n1.label,func_10=n1=>n1.value,func_11=n1=>n1[1].name,func_12=n1=>n1[0];function instance$5s(n1,e1,t1){let r1,o1,i1,a1,s1,l1,c1,u1,f1,p1,d1,m1,_1,h1,g1,$1,y1;component_subscribe(n1,tables,$0=>t1(38,$1=$0)),component_subscribe(n1,datasources,$0=>t1(39,y1=$0));const w1=FIELDS.FORMULA.type,S1=FIELDS.LINK.type,O1=FIELDS.STRING.type,C1=FIELDS.NUMBER.type,M1=FIELDS.JSON.type,z1=FIELDS.DATETIME.type,D1=createEventDispatcher(),H1=["type","_id","_rev","tableId"],{dispatch:B1}=getContext("grid");let{field:q1}=e1,R1=!1,I1=fp.cloneDeep(FIELDS),F1,j1,X1,Y1=[...$1.selected.indexes||[]],Q1,e0=$1.selected,Z1,W1,r0,d0,h0=[],a0={type:"string",constraints:I1.STRING.constraints,fieldName:$1.selected.name};const t0=($0,a2)=>{if(t1(7,Q1=!$0),$0&&!a2)t1(2,a0=fp.cloneDeep($0)),t1(0,F1=a0.name?a0.name+"":null),t1(6,j1=F1!=null),t1(1,X1=$1.selected.primaryDisplay==null||$1.selected.primaryDisplay===a0.name);else if(!a2){let s2=0;Object.keys(e0.schema).forEach(E2=>{const C2=extractColumnNumber(E2);return C2>s2&&(s2=C2),s2}),s2>=1?t1(2,a0.name=`Column 0${s2+1}`,a0):t1(2,a0.name="Column 01",a0)}t1(11,h0=w2())},y0=$0=>Object.keys($0==null?void 0:$0.schema).reduce((a2,s2)=>{let E2=$0==null?void 0:$0.schema[s2];return E2.autocolumn&&a2.push(E2.subtype),a2},[]);let P0=getAutoColumnInformation();async function f0(){if(t1(35,W1=!0),a1!=null&&a1.length)return;let $0=fp.cloneDeep(a0);$0.type===AUTO_TYPE&&($0=buildAutoColumn($1.selected.name,$0.name,$0.subtype)),$0.type!==S1&&delete $0.fieldName;try{await tables.saveField({originalName:F1,field:$0,primaryDisplay:X1,indexes:Y1}),D1("updatecolumns"),B1("close-edit-column"),$0.type===S1&&$0.relationshipType===RelationshipType.MANY_TO_MANY&&(tables.fetch(),datasources.fetch()),F1?notifications.success("Column updated successfully"):notifications.success("Column created successfully")}catch(a2){notifications.error(`Error saving column: ${a2.message}`)}}function L0(){t1(2,a0.name=F1,a0),B1("close-edit-column")}async function U0(){try{t1(2,a0.name=r0,a0),a0.name===$1.selected.primaryDisplay?notifications.error("You cannot delete the display column"):(await tables.deleteField(a0),notifications.success(`Column ${a0.name} deleted`),Z1.hide(),D1("updatecolumns"),B1("close-edit-column"))}catch($0){notifications.error(`Error deleting column: ${$0.message}`)}}function x0($0){var s2;delete a0.autocolumn,delete a0.subtype,delete a0.tableId,delete a0.relationshipType,delete a0.formulaType;const a2=I1[(s2=$0.detail)==null?void 0:s2.toUpperCase()];a2!=null&&a2.constraints&&t1(2,a0.constraints=a2.constraints,a0),a0.type===S1&&t1(2,a0.relationshipType=RelationshipType.MANY_TO_MANY,a0),a0.type===w1&&t1(2,a0.formulaType="dynamic",a0)}function D0($0){const a2=$0.detail;t1(2,a0.constraints.presence=a2?{allowEmpty:!1}:!1,a0),t1(13,r1=a2)}function c2(){d0.show()}function W0(){Z1.show()}function q0(){Z1.hide(),t1(9,r0="")}function l0($0){if(!$0||!$0.tableId)return null;const a2=h1==null?void 0:h1.find(C2=>C2._id===$0.tableId);if(!a2)return null;const s2=lodash$2.exports.truncate(e0.name,{length:14}),E2=lodash$2.exports.truncate(a2.name,{length:14});return[{name:`Many ${s2} rows \u2192 many ${E2} rows`,alt:`Many ${e0.name} rows \u2192 many ${a2.name} rows`,value:RelationshipType.MANY_TO_MANY},{name:`One ${E2} row \u2192 many ${s2} rows`,alt:`One ${a2.name} rows \u2192 many ${e0.name} rows`,value:RelationshipType.ONE_TO_MANY},{name:`One ${s2} row \u2192 many ${E2} rows`,alt:`One ${e0.name} rows \u2192 many ${a2.name} rows`,value:RelationshipType.MANY_TO_ONE}]}function w2(){if(F1&&ALLOWABLE_STRING_TYPES.indexOf(a0.type)!==-1)return ALLOWABLE_STRING_OPTIONS;if(F1&&ALLOWABLE_NUMBER_TYPES.indexOf(a0.type)!==-1)return ALLOWABLE_NUMBER_OPTIONS;if(_1){let $0=[FIELDS.STRING,FIELDS.BARCODEQR,FIELDS.LONGFORM,FIELDS.OPTIONS,FIELDS.DATETIME,FIELDS.NUMBER,FIELDS.BOOLEAN,FIELDS.FORMULA,FIELDS.BIGINT];return(!_1||e0.sql)&&($0=[...$0,FIELDS.LINK,FIELDS.ARRAY]),$0}else return[...Object.values(I1),{name:"Auto Column",type:AUTO_TYPE}]}function H0($0){!$0||($0&&!$0.constraints&&($0.constraints={}),$0.type===O1&&!$0.constraints.length&&($0.constraints.length={}),$0.type===C1&&!$0.constraints.numericality&&($0.constraints.numericality={}),$0.type===z1&&!$0.constraints.datetime&&($0.constraints.datetime={}))}function w0($0){var E2;if(!a0)return{};function a2(C2,J0,p2=null){const b2=J0&&J0.toLowerCase().trim();return Object.keys((C2==null?void 0:C2.schema)||{}).some(U2=>{let $d=U2.toLowerCase();return $d!==(p2==null?void 0:p2.toLowerCase())&&$d===b2})}const s2={};if(!_1&&((E2=$0.name)==null?void 0:E2.startsWith("_"))?s2.name="Column name cannot start with an underscore.":$0.name&&!$0.name.match(ValidColumnNameRegex)?s2.name="Illegal character; must be alpha-numeric.":H1.some(C2=>$0.name===C2)?s2.name=`${H1.join(", ")} are not allowed as column names`:a2($1.selected,$0.name,F1)&&(s2.name="Column name already in use."),$0.type=="auto"&&!$0.subtype&&(s2.subtype="Auto Column requires a type"),$0.fieldName&&$0.tableId){const C2=$1.list.find(J0=>J0._id===$0.tableId);a2(C2,$0.fieldName)&&!F1&&(s2.relatedName=`Column name already in use in table ${C2.name}`)}return s2}onMount(()=>{t1(5,R1=!0)});function E0($0){n1.$$.not_equal(a0.name,$0)&&(a0.name=$0,t1(2,a0),t1(1,X1))}const c0=$0=>$0.type==AUTO_TYPE?(u1==null?void 0:u1.length)>0:!0;function S0($0){n1.$$.not_equal(a0.type,$0)&&(a0.type=$0,t1(2,a0),t1(1,X1))}function m0($0){n1.$$.not_equal(a0.constraints.length.maximum,$0)&&(a0.constraints.length.maximum=$0,t1(2,a0),t1(1,X1))}function O0($0){n1.$$.not_equal(a0.constraints,$0)&&(a0.constraints=$0,t1(2,a0),t1(1,X1))}function I0($0){n1.$$.not_equal(a0.optionColors,$0)&&(a0.optionColors=$0,t1(2,a0),t1(1,X1))}function m2($0){n1.$$.not_equal(a0.useRichText,$0)&&(a0.useRichText=$0,t1(2,a0),t1(1,X1))}function f2($0){n1.$$.not_equal(a0.constraints,$0)&&(a0.constraints=$0,t1(2,a0),t1(1,X1))}function X0($0){n1.$$.not_equal(a0.optionColors,$0)&&(a0.optionColors=$0,t1(2,a0),t1(1,X1))}function d2($0){n1.$$.not_equal(a0.constraints.datetime.earliest,$0)&&(a0.constraints.datetime.earliest=$0,t1(2,a0),t1(1,X1))}function M2($0){n1.$$.not_equal(a0.constraints.datetime.latest,$0)&&(a0.constraints.datetime.latest=$0,t1(2,a0),t1(1,X1))}function R2($0){n1.$$.not_equal(a0.ignoreTimezones,$0)&&(a0.ignoreTimezones=$0,t1(2,a0),t1(1,X1))}function G0($0){n1.$$.not_equal(a0.constraints.numericality.greaterThanOrEqualTo,$0)&&(a0.constraints.numericality.greaterThanOrEqualTo=$0,t1(2,a0),t1(1,X1))}function l2($0){n1.$$.not_equal(a0.constraints.numericality.lessThanOrEqualTo,$0)&&(a0.constraints.numericality.lessThanOrEqualTo=$0,t1(2,a0),t1(1,X1))}function y2($0){n1.$$.not_equal(a0.tableId,$0)&&(a0.tableId=$0,t1(2,a0),t1(1,X1))}function K2($0){n1.$$.not_equal(a0.relationshipType,$0)&&(a0.relationshipType=$0,t1(2,a0),t1(1,X1))}function gd($0){n1.$$.not_equal(a0.fieldName,$0)&&(a0.fieldName=$0,t1(2,a0),t1(1,X1))}function F2($0){n1.$$.not_equal(a0.formulaType,$0)&&(a0.formulaType=$0,t1(2,a0),t1(1,X1))}const W2=$0=>{t1(2,a0={...a0,formula:$0.detail})},pm=$0=>t1(2,a0.subtype=$0.detail,a0),Bd=({detail:$0})=>{t1(2,a0.schema=$0.schema,a0),t1(2,a0.json=$0.json,a0)};function T0($0){binding_callbacks[$0?"unshift":"push"](()=>{d0=$0,t1(10,d0)})}function B0($0){r0=$0,t1(9,r0)}function e2($0){binding_callbacks[$0?"unshift":"push"](()=>{Z1=$0,t1(8,Z1)})}return n1.$$set=$0=>{"field"in $0&&t1(34,q1=$0.field)},n1.$$.update=()=>{var $0,a2;n1.$$.dirty[0]&2&&X1&&t1(2,a0.constraints.presence={allowEmpty:!1},a0),n1.$$.dirty[1]&24&&t0(q1,W1),n1.$$.dirty[0]&4&&H0(a0),n1.$$.dirty[0]&6&&t1(13,r1=!!(($0=a0==null?void 0:a0.constraints)!=null&&$0.presence)||X1),n1.$$.dirty[0]&4|n1.$$.dirty[1]&128&&t1(4,o1=((a2=$1.selected)==null?void 0:a2._id)===TableNames.USERS&&UNEDITABLE_USER_FIELDS.includes(a0.name)),n1.$$.dirty[0]&4&&t1(3,a1=w0(a0)),n1.$$.dirty[0]&12&&t1(21,i1=!(a0!=null&&a0.name)||(a0==null?void 0:a0.type)===S1&&!(a0!=null&&a0.tableId)||Object.keys(a1).length!==0),n1.$$.dirty[1]&256&&t1(20,s1=y1.list.find(s2=>s2._id===(e0==null?void 0:e0.sourceId))),n1.$$.dirty[1]&128&&t1(37,l1=y0($1==null?void 0:$1.selected)),n1.$$.dirty[1]&64&&t1(36,c1=Object.keys(P0).reduce((s2,E2)=>(l1.includes(E2)||(s2[E2]=P0[E2]),s2),{})),n1.$$.dirty[1]&32&&t1(19,u1=c1?Object.keys(c1):[]),n1.$$.dirty[0]&4|n1.$$.dirty[1]&32&&t1(18,f1=a0.autocolumn?P0:c1),n1.$$.dirty[0]&4&&t1(17,p1=(a0==null?void 0:a0.type)!==S1&&(a0==null?void 0:a0.type)!==AUTO_TYPE&&(a0==null?void 0:a0.type)!==M1&&!a0.autocolumn),n1.$$.dirty[0]&20&&t1(16,d1=(a0==null?void 0:a0.type)!==S1&&!o1&&(a0==null?void 0:a0.type)!==AUTO_TYPE&&!a0.autocolumn),n1.$$.dirty[0]&4&&t1(15,m1=l0(a0)),n1.$$.dirty[1]&128&&t1(12,h1=$1.list.filter(s2=>s2._id!==$1.selected._id&&s2.type===e0.type&&e0.sourceId===s2.sourceId)),n1.$$.dirty[0]&5&&t1(14,g1=!F1||F1&&SWITCHABLE_TYPES.indexOf(a0.type)!==-1&&!(a0!=null&&a0.autocolumn))},_1=e0.type==="external",[F1,X1,a0,a1,o1,R1,j1,Q1,Z1,r0,d0,h0,h1,r1,g1,m1,d1,p1,f1,u1,s1,i1,w1,S1,M1,e0,f0,L0,U0,x0,D0,c2,W0,q0,q1,W1,c1,l1,$1,y1,E0,c0,S0,m0,O0,I0,m2,f2,X0,d2,M2,R2,G0,l2,y2,K2,gd,F2,W2,pm,Bd,T0,B0,e2]}class CreateEditColumn extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$5s,create_fragment$5m,safe_not_equal,{field:34},null,[-1,-1,-1])}}function create_fragment$5l(n1){let e1,t1;return e1=new CreateEditColumn({}),e1.$on("updatecolumns",n1[0].actions.refreshDefinition),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p:noop$5,i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function instance$5r(n1){const{datasource:e1}=getContext("grid");return[e1]}class GridCreateColumnModal extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$5r,create_fragment$5l,safe_not_equal,{})}}function create_fragment$5k(n1){let e1,t1,r1;const o1=[{label:n1[1]},n1[5],{processFiles:n1[3]},{deleteAttachments:n1[4]},{handleFileTooLarge:n1[2]}];function i1(s1){n1[6](s1)}let a1={};for(let s1=0;s1<o1.length;s1+=1)a1=assign$1(a1,o1[s1]);return n1[0]!==void 0&&(a1.value=n1[0]),e1=new Dropzone({props:a1}),binding_callbacks.push(()=>bind$3(e1,"value",i1)),{c(){create_component(e1.$$.fragment)},m(s1,l1){mount_component(e1,s1,l1),r1=!0},p(s1,[l1]){const c1=l1&62?get_spread_update(o1,[l1&2&&{label:s1[1]},l1&32&&get_spread_object(s1[5]),l1&8&&{processFiles:s1[3]},l1&16&&{deleteAttachments:s1[4]},l1&4&&{handleFileTooLarge:s1[2]}]):{};!t1&&l1&1&&(t1=!0,c1.value=s1[0],add_flush_callback(()=>t1=!1)),e1.$set(c1)},i(s1){r1||(transition_in(e1.$$.fragment,s1),r1=!0)},o(s1){transition_out(e1.$$.fragment,s1),r1=!1},d(s1){destroy_component(e1,s1)}}}const BYTES_IN_MB$1=1e6;function instance$5q(n1,e1,t1){const r1=["value","label"];let o1=compute_rest_props(e1,r1),{value:i1=[]}=e1,{label:a1}=e1;function s1(f1){notifications.error(`Files cannot exceed ${f1/BYTES_IN_MB$1}MB. Please try again with smaller files.`)}async function l1(f1){let p1=new FormData;for(let d1=0;d1<f1.length;d1++)p1.append("file",f1[d1]);try{return await API.uploadBuilderAttachment(p1)}catch{return notifications.error("Failed to upload attachment"),[]}}async function c1(f1){try{return await API.deleteBuilderAttachments(f1)}catch{return[]}}function u1(f1){i1=f1,t1(0,i1)}return n1.$$set=f1=>{e1=assign$1(assign$1({},e1),exclude_internal_props(f1)),t1(5,o1=compute_rest_props(e1,r1)),"value"in f1&&t1(0,i1=f1.value),"label"in f1&&t1(1,a1=f1.label)},[i1,a1,s1,l1,c1,o1,u1]}class Dropzone_1 extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$5q,create_fragment$5k,safe_not_equal,{value:0,label:1})}}function create_else_block$X(n1){let e1,t1,r1;function o1(a1){n1[11](a1)}let i1={label:n1[4],options:n1[2],getOptionLabel:n1[6],getOptionValue:func_1$w,sort:!0};return n1[1]!==void 0&&(i1.value=n1[1]),e1=new Multiselect_1({props:i1}),binding_callbacks.push(()=>bind$3(e1,"value",o1)),e1.$on("change",n1[12]),{c(){create_component(e1.$$.fragment)},m(a1,s1){mount_component(e1,a1,s1),r1=!0},p(a1,s1){const l1={};s1&16&&(l1.label=a1[4]),s1&4&&(l1.options=a1[2]),!t1&&s1&2&&(t1=!0,l1.value=a1[1],add_flush_callback(()=>t1=!1)),e1.$set(l1)},i(a1){r1||(transition_in(e1.$$.fragment,a1),r1=!0)},o(a1){transition_out(e1.$$.fragment,a1),r1=!1},d(a1){destroy_component(e1,a1)}}}function create_if_block_1$1l(n1){var r1;let e1,t1;return e1=new Select_1$1({props:{value:(r1=n1[1])==null?void 0:r1[0],options:n1[2],getOptionLabel:n1[6],getOptionValue:func$D,label:n1[4],sort:!0}}),e1.$on("change",n1[10]),{c(){create_component(e1.$$.fragment)},m(o1,i1){mount_component(e1,o1,i1),t1=!0},p(o1,i1){var s1;const a1={};i1&2&&(a1.value=(s1=o1[1])==null?void 0:s1[0]),i1&4&&(a1.options=o1[2]),i1&16&&(a1.label=o1[4]),e1.$set(a1)},i(o1){t1||(transition_in(e1.$$.fragment,o1),t1=!0)},o(o1){transition_out(e1.$$.fragment,o1),t1=!1},d(o1){destroy_component(e1,o1)}}}function create_if_block$2x(n1){let e1,t1,r1,o1;return e1=new Label({props:{extraSmall:!0,grey:!0,$$slots:{default:[create_default_slot_1$2K]},$$scope:{ctx:n1}}}),r1=new Label({props:{small:!0,black:!0,$$slots:{default:[create_default_slot$3E]},$$scope:{ctx:n1}}}),{c(){create_component(e1.$$.fragment),t1=space$1(),create_component(r1.$$.fragment)},m(i1,a1){mount_component(e1,i1,a1),insert$1(i1,t1,a1),mount_component(r1,i1,a1),o1=!0},p(i1,a1){const s1={};a1&16400&&(s1.$$scope={dirty:a1,ctx:i1}),e1.$set(s1);const l1={};a1&16392&&(l1.$$scope={dirty:a1,ctx:i1}),r1.$set(l1)},i(i1){o1||(transition_in(e1.$$.fragment,i1),transition_in(r1.$$.fragment,i1),o1=!0)},o(i1){transition_out(e1.$$.fragment,i1),transition_out(r1.$$.fragment,i1),o1=!1},d(i1){destroy_component(e1,i1),i1&&detach(t1),destroy_component(r1,i1)}}}function create_default_slot_1$2K(n1){let e1;return{c(){e1=text(n1[4])},m(t1,r1){insert$1(t1,e1,r1)},p(t1,r1){r1&16&&set_data(e1,t1[4])},d(t1){t1&&detach(e1)}}}function create_default_slot$3E(n1){let e1,t1,r1=n1[3].name+"",o1,i1;return{c(){e1=text(`Please choose a display column for the
1668
1668
  `),t1=element("b"),o1=text(r1),i1=text(`
1669
- table.`)},m(a1,s1){insert$1(a1,e1,s1),insert$1(a1,t1,s1),append$1(t1,o1),insert$1(a1,i1,s1)},p(a1,s1){s1&8&&r1!==(r1=a1[3].name+"")&&set_data(o1,r1)},d(a1){a1&&detach(e1),a1&&detach(t1),a1&&detach(i1)}}}function create_fragment$5j(n1){let e1,t1,r1,o1;const i1=[create_if_block$2x,create_if_block_1$1l,create_else_block$X],a1=[];function s1(l1,c1){return l1[3].primaryDisplay==null?0:l1[0].relationshipType==="one-to-many"?1:2}return e1=s1(n1),t1=a1[e1]=i1[e1](n1),{c(){t1.c(),r1=empty$1()},m(l1,c1){a1[e1].m(l1,c1),insert$1(l1,r1,c1),o1=!0},p(l1,[c1]){let u1=e1;e1=s1(l1),e1===u1?a1[e1].p(l1,c1):(group_outros(),transition_out(a1[u1],1,1,()=>{a1[u1]=null}),check_outros(),t1=a1[e1],t1?t1.p(l1,c1):(t1=a1[e1]=i1[e1](l1),t1.c()),transition_in(t1,1),t1.m(r1.parentNode,r1))},i(l1){o1||(transition_in(t1),o1=!0)},o(l1){transition_out(t1),o1=!1},d(l1){a1[e1].d(l1),l1&&detach(r1)}}}const func$D=n1=>n1._id,func_1$w=n1=>n1._id;function instance$5p(n1,e1,t1){var _1;let r1,o1,i1,a1;component_subscribe(n1,tables,h1=>t1(8,a1=h1));let{schema:s1}=e1,{linkedRows:l1=[]}=e1,c1=[],u1=(_1=Array.isArray(l1)?l1:[])==null?void 0:_1.map(h1=>(h1==null?void 0:h1._id)||h1);async function f1(h1){try{t1(2,c1=await API.fetchTableData(h1))}catch{t1(2,c1=[])}}function p1(h1){return h1[i1.primaryDisplay||"_id"]}const d1=h1=>t1(1,u1=h1.detail?[h1.detail]:[]);function m1(h1){u1=h1,t1(1,u1)}return n1.$$set=h1=>{"schema"in h1&&t1(0,s1=h1.schema),"linkedRows"in h1&&t1(6,l1=h1.linkedRows)},n1.$$.update=()=>{n1.$$.dirty&2&&t1(6,l1=u1),n1.$$.dirty&1&&t1(4,r1=capitalise(s1.name)),n1.$$.dirty&1&&t1(7,o1=s1.tableId),n1.$$.dirty&384&&t1(3,i1=a1.list.find(h1=>h1._id===o1)),n1.$$.dirty&128&&f1(o1)},[s1,u1,c1,i1,r1,p1,l1,o1,a1,d1,m1]}class LinkedRowSelector extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$5p,create_fragment$5j,safe_not_equal,{schema:0,linkedRows:6})}}function create_else_block_1$g(n1){let e1,t1,r1;function o1(a1){n1[18](a1)}let i1={label:n1[4],type:n1[5],error:n1[3],disabled:n1[2]};return n1[0]!==void 0&&(i1.value=n1[0]),e1=new Input$5({props:i1}),binding_callbacks.push(()=>bind$3(e1,"value",o1)),{c(){create_component(e1.$$.fragment)},m(a1,s1){mount_component(e1,a1,s1),r1=!0},p(a1,s1){const l1={};s1&16&&(l1.label=a1[4]),s1&32&&(l1.type=a1[5]),s1&8&&(l1.error=a1[3]),s1&4&&(l1.disabled=a1[2]),!t1&&s1&1&&(t1=!0,l1.value=a1[0],add_flush_callback(()=>t1=!1)),e1.$set(l1)},i(a1){r1||(transition_in(e1.$$.fragment,a1),r1=!0)},o(a1){transition_out(e1.$$.fragment,a1),r1=!1},d(a1){destroy_component(e1,a1)}}}function create_if_block_8$4(n1){let e1,t1,r1,o1;return e1=new Label({props:{$$slots:{default:[create_default_slot$3D]},$$scope:{ctx:n1}}}),r1=new QueryEditor({props:{editorHeight:"250",editorWidth:"320",mode:"json",value:n1[6],error:n1[3]}}),r1.$on("change",n1[17]),{c(){create_component(e1.$$.fragment),t1=space$1(),create_component(r1.$$.fragment)},m(i1,a1){mount_component(e1,i1,a1),insert$1(i1,t1,a1),mount_component(r1,i1,a1),o1=!0},p(i1,a1){const s1={};a1&2097168&&(s1.$$scope={dirty:a1,ctx:i1}),e1.$set(s1);const l1={};a1&64&&(l1.value=i1[6]),a1&8&&(l1.error=i1[3]),r1.$set(l1)},i(i1){o1||(transition_in(e1.$$.fragment,i1),transition_in(r1.$$.fragment,i1),o1=!0)},o(i1){transition_out(e1.$$.fragment,i1),transition_out(r1.$$.fragment,i1),o1=!1},d(i1){destroy_component(e1,i1),i1&&detach(t1),destroy_component(r1,i1)}}}function create_if_block_6$a(n1){let e1,t1,r1,o1;const i1=[create_if_block_7$9,create_else_block$W],a1=[];function s1(l1,c1){return l1[1].useRichText?0:1}return e1=s1(n1),t1=a1[e1]=i1[e1](n1),{c(){t1.c(),r1=empty$1()},m(l1,c1){a1[e1].m(l1,c1),insert$1(l1,r1,c1),o1=!0},p(l1,c1){let u1=e1;e1=s1(l1),e1===u1?a1[e1].p(l1,c1):(group_outros(),transition_out(a1[u1],1,1,()=>{a1[u1]=null}),check_outros(),t1=a1[e1],t1?t1.p(l1,c1):(t1=a1[e1]=i1[e1](l1),t1.c()),transition_in(t1,1),t1.m(r1.parentNode,r1))},i(l1){o1||(transition_in(t1),o1=!0)},o(l1){transition_out(t1),o1=!1},d(l1){a1[e1].d(l1),l1&&detach(r1)}}}function create_if_block_5$g(n1){let e1,t1,r1;function o1(a1){n1[14](a1)}let i1={error:n1[3],schema:n1[1]};return n1[0]!==void 0&&(i1.linkedRows=n1[0]),e1=new LinkedRowSelector({props:i1}),binding_callbacks.push(()=>bind$3(e1,"linkedRows",o1)),{c(){create_component(e1.$$.fragment)},m(a1,s1){mount_component(e1,a1,s1),r1=!0},p(a1,s1){const l1={};s1&8&&(l1.error=a1[3]),s1&2&&(l1.schema=a1[1]),!t1&&s1&1&&(t1=!0,l1.linkedRows=a1[0],add_flush_callback(()=>t1=!1)),e1.$set(l1)},i(a1){r1||(transition_in(e1.$$.fragment,a1),r1=!0)},o(a1){transition_out(e1.$$.fragment,a1),r1=!1},d(a1){destroy_component(e1,a1)}}}function create_if_block_4$o(n1){let e1,t1,r1;function o1(a1){n1[13](a1)}let i1={error:n1[3],label:n1[4],options:n1[1].constraints.inclusion};return n1[0]!==void 0&&(i1.value=n1[0]),e1=new Multiselect_1({props:i1}),binding_callbacks.push(()=>bind$3(e1,"value",o1)),{c(){create_component(e1.$$.fragment)},m(a1,s1){mount_component(e1,a1,s1),r1=!0},p(a1,s1){const l1={};s1&8&&(l1.error=a1[3]),s1&16&&(l1.label=a1[4]),s1&2&&(l1.options=a1[1].constraints.inclusion),!t1&&s1&1&&(t1=!0,l1.value=a1[0],add_flush_callback(()=>t1=!1)),e1.$set(l1)},i(a1){r1||(transition_in(e1.$$.fragment,a1),r1=!0)},o(a1){transition_out(e1.$$.fragment,a1),r1=!1},d(a1){destroy_component(e1,a1)}}}function create_if_block_3$z(n1){let e1,t1,r1;function o1(a1){n1[12](a1)}let i1={text:n1[4],error:n1[3]};return n1[0]!==void 0&&(i1.value=n1[0]),e1=new Toggle({props:i1}),binding_callbacks.push(()=>bind$3(e1,"value",o1)),{c(){create_component(e1.$$.fragment)},m(a1,s1){mount_component(e1,a1,s1),r1=!0},p(a1,s1){const l1={};s1&16&&(l1.text=a1[4]),s1&8&&(l1.error=a1[3]),!t1&&s1&1&&(t1=!0,l1.value=a1[0],add_flush_callback(()=>t1=!1)),e1.$set(l1)},i(a1){r1||(transition_in(e1.$$.fragment,a1),r1=!0)},o(a1){transition_out(e1.$$.fragment,a1),r1=!1},d(a1){destroy_component(e1,a1)}}}function create_if_block_2$R(n1){let e1,t1,r1;function o1(a1){n1[11](a1)}let i1={label:n1[4],error:n1[3]};return n1[0]!==void 0&&(i1.value=n1[0]),e1=new Dropzone_1({props:i1}),binding_callbacks.push(()=>bind$3(e1,"value",o1)),{c(){create_component(e1.$$.fragment)},m(a1,s1){mount_component(e1,a1,s1),r1=!0},p(a1,s1){const l1={};s1&16&&(l1.label=a1[4]),s1&8&&(l1.error=a1[3]),!t1&&s1&1&&(t1=!0,l1.value=a1[0],add_flush_callback(()=>t1=!1)),e1.$set(l1)},i(a1){r1||(transition_in(e1.$$.fragment,a1),r1=!0)},o(a1){transition_out(e1.$$.fragment,a1),r1=!1},d(a1){destroy_component(e1,a1)}}}function create_if_block_1$1k(n1){var a1,s1;let e1,t1,r1;function o1(l1){n1[10](l1)}let i1={error:n1[3],label:n1[4],timeOnly:n1[7],enableTime:!((a1=n1[1])!=null&&a1.dateOnly),ignoreTimezones:(s1=n1[1])==null?void 0:s1.ignoreTimezones};return n1[0]!==void 0&&(i1.value=n1[0]),e1=new DatePicker_1({props:i1}),binding_callbacks.push(()=>bind$3(e1,"value",o1)),{c(){create_component(e1.$$.fragment)},m(l1,c1){mount_component(e1,l1,c1),r1=!0},p(l1,c1){var f1,p1;const u1={};c1&8&&(u1.error=l1[3]),c1&16&&(u1.label=l1[4]),c1&2&&(u1.enableTime=!((f1=l1[1])!=null&&f1.dateOnly)),c1&2&&(u1.ignoreTimezones=(p1=l1[1])==null?void 0:p1.ignoreTimezones),!t1&&c1&1&&(t1=!0,u1.value=l1[0],add_flush_callback(()=>t1=!1)),e1.$set(u1)},i(l1){r1||(transition_in(e1.$$.fragment,l1),r1=!0)},o(l1){transition_out(e1.$$.fragment,l1),r1=!1},d(l1){destroy_component(e1,l1)}}}function create_if_block$2w(n1){let e1,t1,r1;function o1(a1){n1[9](a1)}let i1={label:n1[4],options:n1[1].constraints.inclusion,sort:!0,error:n1[3]};return n1[0]!==void 0&&(i1.value=n1[0]),e1=new Select_1$1({props:i1}),binding_callbacks.push(()=>bind$3(e1,"value",o1)),{c(){create_component(e1.$$.fragment)},m(a1,s1){mount_component(e1,a1,s1),r1=!0},p(a1,s1){const l1={};s1&16&&(l1.label=a1[4]),s1&2&&(l1.options=a1[1].constraints.inclusion),s1&8&&(l1.error=a1[3]),!t1&&s1&1&&(t1=!0,l1.value=a1[0],add_flush_callback(()=>t1=!1)),e1.$set(l1)},i(a1){r1||(transition_in(e1.$$.fragment,a1),r1=!0)},o(a1){transition_out(e1.$$.fragment,a1),r1=!1},d(a1){destroy_component(e1,a1)}}}function create_default_slot$3D(n1){let e1;return{c(){e1=text(n1[4])},m(t1,r1){insert$1(t1,e1,r1)},p(t1,r1){r1&16&&set_data(e1,t1[4])},d(t1){t1&&detach(e1)}}}function create_else_block$W(n1){let e1,t1,r1;function o1(a1){n1[16](a1)}let i1={error:n1[3],label:n1[4],height:"150px"};return n1[0]!==void 0&&(i1.value=n1[0]),e1=new TextArea_1({props:i1}),binding_callbacks.push(()=>bind$3(e1,"value",o1)),{c(){create_component(e1.$$.fragment)},m(a1,s1){mount_component(e1,a1,s1),r1=!0},p(a1,s1){const l1={};s1&8&&(l1.error=a1[3]),s1&16&&(l1.label=a1[4]),!t1&&s1&1&&(t1=!0,l1.value=a1[0],add_flush_callback(()=>t1=!1)),e1.$set(l1)},i(a1){r1||(transition_in(e1.$$.fragment,a1),r1=!0)},o(a1){transition_out(e1.$$.fragment,a1),r1=!1},d(a1){destroy_component(e1,a1)}}}function create_if_block_7$9(n1){let e1,t1,r1;function o1(a1){n1[15](a1)}let i1={error:n1[3],label:n1[4],height:"150px"};return n1[0]!==void 0&&(i1.value=n1[0]),e1=new RichTextField_1({props:i1}),binding_callbacks.push(()=>bind$3(e1,"value",o1)),{c(){create_component(e1.$$.fragment)},m(a1,s1){mount_component(e1,a1,s1),r1=!0},p(a1,s1){const l1={};s1&8&&(l1.error=a1[3]),s1&16&&(l1.label=a1[4]),!t1&&s1&1&&(t1=!0,l1.value=a1[0],add_flush_callback(()=>t1=!1)),e1.$set(l1)},i(a1){r1||(transition_in(e1.$$.fragment,a1),r1=!0)},o(a1){transition_out(e1.$$.fragment,a1),r1=!1},d(a1){destroy_component(e1,a1)}}}function create_fragment$5i(n1){let e1,t1,r1,o1;const i1=[create_if_block$2w,create_if_block_1$1k,create_if_block_2$R,create_if_block_3$z,create_if_block_4$o,create_if_block_5$g,create_if_block_6$a,create_if_block_8$4,create_else_block_1$g],a1=[];function s1(l1,c1){return l1[5]==="options"&&l1[1].constraints.inclusion.length!==0?0:l1[5]==="datetime"?1:l1[5]==="attachment"?2:l1[5]==="boolean"?3:l1[5]==="array"&&l1[1].constraints.inclusion.length!==0?4:l1[5]==="link"?5:l1[5]==="longform"?6:l1[5]==="json"?7:8}return e1=s1(n1),t1=a1[e1]=i1[e1](n1),{c(){t1.c(),r1=empty$1()},m(l1,c1){a1[e1].m(l1,c1),insert$1(l1,r1,c1),o1=!0},p(l1,[c1]){let u1=e1;e1=s1(l1),e1===u1?a1[e1].p(l1,c1):(group_outros(),transition_out(a1[u1],1,1,()=>{a1[u1]=null}),check_outros(),t1=a1[e1],t1?t1.p(l1,c1):(t1=a1[e1]=i1[e1](l1),t1.c()),transition_in(t1,1),t1.m(r1.parentNode,r1))},i(l1){o1||(transition_in(t1),o1=!0)},o(l1){transition_out(t1),o1=!1},d(l1){a1[e1].d(l1),l1&&detach(r1)}}}function instance$5o(n1,e1,t1){let r1,o1,i1,{defaultValue:a1}=e1,{meta:s1}=e1,{value:l1=a1||(s1.type==="boolean"?!1:"")}=e1,{readonly:c1}=e1,{error:u1}=e1;const d1=!!(M1=>{if(!M1)return null;let z1=new Date(`0-${M1}`);return z1 instanceof Date&&!isNaN(z1.getTime())?z1:null})(l1)||(s1==null?void 0:s1.timeOnly);function m1(M1){l1=M1,t1(0,l1)}function _1(M1){l1=M1,t1(0,l1)}function h1(M1){l1=M1,t1(0,l1)}function g1(M1){l1=M1,t1(0,l1)}function $1(M1){l1=M1,t1(0,l1)}function y1(M1){l1=M1,t1(0,l1)}function w1(M1){l1=M1,t1(0,l1)}function S1(M1){l1=M1,t1(0,l1)}const O1=({detail:M1})=>t1(0,l1=M1.value);function C1(M1){l1=M1,t1(0,l1)}return n1.$$set=M1=>{"defaultValue"in M1&&t1(8,a1=M1.defaultValue),"meta"in M1&&t1(1,s1=M1.meta),"value"in M1&&t1(0,l1=M1.value),"readonly"in M1&&t1(2,c1=M1.readonly),"error"in M1&&t1(3,u1=M1.error)},n1.$$.update=()=>{n1.$$.dirty&1&&t1(6,r1=typeof l1=="object"?JSON.stringify(l1,null,2):l1),n1.$$.dirty&2&&t1(5,o1=s1==null?void 0:s1.type),n1.$$.dirty&2&&t1(4,i1=s1.name?capitalise(s1.name):"")},[l1,s1,c1,u1,i1,o1,r1,d1,a1,m1,_1,h1,g1,$1,y1,w1,S1,O1,C1]}class RowFieldControl extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$5o,create_fragment$5i,safe_not_equal,{defaultValue:8,meta:1,value:0,readonly:2,error:3})}}const CreateEditRow_svelte_svelte_type_style_lang="";function get_each_context$12(n1,e1,t1){const r1=n1.slice();return r1[11]=e1[t1][0],r1[12]=e1[t1][1],r1[13]=e1,r1[14]=t1,r1}function create_if_block$2v(n1){let e1,t1,r1,o1,i1;function a1(l1){n1[9](l1,n1[11])}let s1={error:n1[1][n1[11]],meta:n1[12]};return n1[0][n1[11]]!==void 0&&(s1.value=n1[0][n1[11]]),t1=new RowFieldControl({props:s1}),binding_callbacks.push(()=>bind$3(t1,"value",a1)),{c(){e1=element("div"),create_component(t1.$$.fragment),o1=space$1(),attr(e1,"class","svelte-1gew3ww")},m(l1,c1){insert$1(l1,e1,c1),mount_component(t1,e1,null),append$1(e1,o1),i1=!0},p(l1,c1){n1=l1;const u1={};c1&6&&(u1.error=n1[1][n1[11]]),c1&4&&(u1.meta=n1[12]),!r1&&c1&5&&(r1=!0,u1.value=n1[0][n1[11]],add_flush_callback(()=>r1=!1)),t1.$set(u1)},i(l1){i1||(transition_in(t1.$$.fragment,l1),i1=!0)},o(l1){transition_out(t1.$$.fragment,l1),i1=!1},d(l1){l1&&detach(e1),destroy_component(t1)}}}function create_each_block$12(n1){let e1,t1,r1=!n1[12].autocolumn&&n1[12].type!==n1[4]&&create_if_block$2v(n1);return{c(){r1&&r1.c(),e1=empty$1()},m(o1,i1){r1&&r1.m(o1,i1),insert$1(o1,e1,i1),t1=!0},p(o1,i1){!o1[12].autocolumn&&o1[12].type!==o1[4]?r1?(r1.p(o1,i1),i1&4&&transition_in(r1,1)):(r1=create_if_block$2v(o1),r1.c(),transition_in(r1,1),r1.m(e1.parentNode,e1)):r1&&(group_outros(),transition_out(r1,1,1,()=>{r1=null}),check_outros())},i(o1){t1||(transition_in(r1),t1=!0)},o(o1){transition_out(r1),t1=!1},d(o1){r1&&r1.d(o1),o1&&detach(e1)}}}function create_default_slot$3C(n1){let e1,t1,r1=n1[2],o1=[];for(let a1=0;a1<r1.length;a1+=1)o1[a1]=create_each_block$12(get_each_context$12(n1,r1,a1));const i1=a1=>transition_out(o1[a1],1,1,()=>{o1[a1]=null});return{c(){for(let a1=0;a1<o1.length;a1+=1)o1[a1].c();e1=empty$1()},m(a1,s1){for(let l1=0;l1<o1.length;l1+=1)o1[l1].m(a1,s1);insert$1(a1,e1,s1),t1=!0},p(a1,s1){if(s1&23){r1=a1[2];let l1;for(l1=0;l1<r1.length;l1+=1){const c1=get_each_context$12(a1,r1,l1);o1[l1]?(o1[l1].p(c1,s1),transition_in(o1[l1],1)):(o1[l1]=create_each_block$12(c1),o1[l1].c(),transition_in(o1[l1],1),o1[l1].m(e1.parentNode,e1))}for(group_outros(),l1=r1.length;l1<o1.length;l1+=1)i1(l1);check_outros()}},i(a1){if(!t1){for(let s1=0;s1<r1.length;s1+=1)transition_in(o1[s1]);t1=!0}},o(a1){o1=o1.filter(Boolean);for(let s1=0;s1<o1.length;s1+=1)transition_out(o1[s1]);t1=!1},d(a1){destroy_each(o1,a1),a1&&detach(e1)}}}function create_fragment$5h(n1){let e1,t1,r1;return t1=new ModalContent({props:{title:n1[3]?"Create Row":"Edit Row",confirmText:n1[3]?"Create Row":"Save Row",onConfirm:n1[6],showCancelButton:n1[3],showSecondaryButton:!n1[3],secondaryButtonWarning:!n1[3],secondaryButtonText:"Delete",secondaryAction:n1[10],$$slots:{default:[create_default_slot$3C]},$$scope:{ctx:n1}}}),{c(){e1=element("span"),create_component(t1.$$.fragment),attr(e1,"class","modal-wrap svelte-1gew3ww")},m(o1,i1){insert$1(o1,e1,i1),mount_component(t1,e1,null),r1=!0},p(o1,[i1]){const a1={};i1&8&&(a1.title=o1[3]?"Create Row":"Edit Row"),i1&8&&(a1.confirmText=o1[3]?"Create Row":"Save Row"),i1&8&&(a1.showCancelButton=o1[3]),i1&8&&(a1.showSecondaryButton=!o1[3]),i1&8&&(a1.secondaryButtonWarning=!o1[3]),i1&1&&(a1.secondaryAction=o1[10]),i1&32775&&(a1.$$scope={dirty:i1,ctx:o1}),t1.$set(a1)},i(o1){r1||(transition_in(t1.$$.fragment,o1),r1=!0)},o(o1){transition_out(t1.$$.fragment,o1),r1=!1},d(o1){o1&&detach(e1),destroy_component(t1)}}}function instance$5n(n1,e1,t1){let r1,o1,i1,a1;component_subscribe(n1,tables,m1=>t1(8,a1=m1));const s1=FIELDS.FORMULA.type;let{row:l1={}}=e1,c1=[];const u1=createEventDispatcher();async function f1(){t1(1,c1=[]);try{const m1=await API.saveRow({...l1,tableId:o1._id});notifications.success("Row saved successfully"),u1("updaterows",m1._id)}catch(m1){const _1=m1.json;if(m1.handled&&(_1==null?void 0:_1.errors))t1(1,c1=_1.errors);else if(m1.handled&&(_1==null?void 0:_1.validationErrors)){const h1={};for(let g1 in _1.validationErrors)h1[g1]=`${g1} ${_1.validationErrors[g1][0]}`;t1(1,c1=h1)}else notifications.error(`Failed to save row - ${m1.message}`);return keepOpen}}function p1(m1,_1){n1.$$.not_equal(l1[_1],m1)&&(l1[_1]=m1,t1(0,l1))}const d1=()=>{u1("deleteRows",l1)};return n1.$$set=m1=>{"row"in m1&&t1(0,l1=m1.row)},n1.$$.update=()=>{var m1;n1.$$.dirty&1&&t1(3,r1=(l1==null?void 0:l1._id)==null),n1.$$.dirty&257&&t1(7,o1=l1.tableId?a1.list.find(_1=>_1._id===(l1==null?void 0:l1.tableId)):a1.selected),n1.$$.dirty&128&&t1(2,i1=Object.entries((m1=o1==null?void 0:o1.schema)!=null?m1:{}))},[l1,c1,i1,r1,s1,u1,f1,o1,a1,p1,d1]}class CreateEditRow extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$5n,create_fragment$5h,safe_not_equal,{row:0})}}function create_default_slot$3B(n1){let e1,t1;return e1=new CreateEditRow({props:{row:n1[1]}}),e1.$on("updaterows",n1[4]),e1.$on("deleteRows",n1[3]),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&2&&(i1.row=r1[1]),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_fragment$5g(n1){let e1,t1,r1={$$slots:{default:[create_default_slot$3B]},$$scope:{ctx:n1}};return e1=new Modal({props:r1}),n1[5](e1),{c(){create_component(e1.$$.fragment)},m(o1,i1){mount_component(e1,o1,i1),t1=!0},p(o1,[i1]){const a1={};i1&130&&(a1.$$scope={dirty:i1,ctx:o1}),e1.$set(a1)},i(o1){t1||(transition_in(e1.$$.fragment,o1),t1=!0)},o(o1){transition_out(e1.$$.fragment,o1),t1=!1},d(o1){n1[5](null),destroy_component(e1,o1)}}}function instance$5m(n1,e1,t1){const{subscribe:r1,rows:o1}=getContext("grid");let i1,a1;const s1=u1=>{o1.actions.deleteRows([u1.detail]),notifications.success("Deleted 1 row")};onMount(()=>r1("add-row",()=>{t1(1,a1={}),i1.show()})),onMount(()=>r1("edit-row",u1=>{t1(1,a1=fp.cloneDeep(u1)),i1.show()}));const l1=u1=>o1.actions.refreshRow(u1.detail);function c1(u1){binding_callbacks[u1?"unshift":"push"](()=>{i1=u1,t1(0,i1)})}return[i1,a1,o1,s1,l1,c1]}class GridCreateEditRowModal extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$5m,create_fragment$5g,safe_not_equal,{})}}function get_each_context$11(n1,e1,t1){const r1=n1.slice();return r1[18]=e1[t1][0],r1[19]=e1[t1][1],r1[20]=e1,r1[21]=t1,r1}function create_if_block_1$1j(n1){let e1,t1,r1,o1,i1;return r1=new Link({props:{$$slots:{default:[create_default_slot_1$2J]},$$scope:{ctx:n1}}}),r1.$on("click",function(){is_function(n1[5]("/builder/portal/users/users"))&&n1[5]("/builder/portal/users/users").apply(this,arguments)}),{c(){e1=element("div"),t1=text(`A user's email, role, first and last names cannot be changed from within
1669
+ table.`)},m(a1,s1){insert$1(a1,e1,s1),insert$1(a1,t1,s1),append$1(t1,o1),insert$1(a1,i1,s1)},p(a1,s1){s1&8&&r1!==(r1=a1[3].name+"")&&set_data(o1,r1)},d(a1){a1&&detach(e1),a1&&detach(t1),a1&&detach(i1)}}}function create_fragment$5j(n1){let e1,t1,r1,o1;const i1=[create_if_block$2x,create_if_block_1$1l,create_else_block$X],a1=[];function s1(l1,c1){return l1[3].primaryDisplay==null?0:l1[0].relationshipType==="one-to-many"?1:2}return e1=s1(n1),t1=a1[e1]=i1[e1](n1),{c(){t1.c(),r1=empty$1()},m(l1,c1){a1[e1].m(l1,c1),insert$1(l1,r1,c1),o1=!0},p(l1,[c1]){let u1=e1;e1=s1(l1),e1===u1?a1[e1].p(l1,c1):(group_outros(),transition_out(a1[u1],1,1,()=>{a1[u1]=null}),check_outros(),t1=a1[e1],t1?t1.p(l1,c1):(t1=a1[e1]=i1[e1](l1),t1.c()),transition_in(t1,1),t1.m(r1.parentNode,r1))},i(l1){o1||(transition_in(t1),o1=!0)},o(l1){transition_out(t1),o1=!1},d(l1){a1[e1].d(l1),l1&&detach(r1)}}}const func$D=n1=>n1._id,func_1$w=n1=>n1._id;function instance$5p(n1,e1,t1){var g1;let r1,o1,i1,a1;component_subscribe(n1,tables,$1=>t1(9,a1=$1));let{schema:s1}=e1,{linkedRows:l1=[]}=e1;const c1=createEventDispatcher();let u1=[],f1=(g1=Array.isArray(l1)?l1:[])==null?void 0:g1.map($1=>($1==null?void 0:$1._id)||$1);async function p1($1){try{t1(2,u1=await API.fetchTableData($1))}catch{t1(2,u1=[])}}function d1($1){return $1[i1.primaryDisplay||"_id"]}const m1=$1=>{t1(1,f1=$1.detail?[$1.detail]:[]),c1("change",f1)};function _1($1){f1=$1,t1(1,f1)}const h1=()=>c1("change",f1);return n1.$$set=$1=>{"schema"in $1&&t1(0,s1=$1.schema),"linkedRows"in $1&&t1(7,l1=$1.linkedRows)},n1.$$.update=()=>{n1.$$.dirty&2&&t1(7,l1=f1),n1.$$.dirty&1&&t1(4,r1=capitalise(s1.name)),n1.$$.dirty&1&&t1(8,o1=s1.tableId),n1.$$.dirty&768&&t1(3,i1=a1.list.find($1=>$1._id===o1)),n1.$$.dirty&256&&p1(o1)},[s1,f1,u1,i1,r1,c1,d1,l1,o1,a1,m1,_1,h1]}class LinkedRowSelector extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$5p,create_fragment$5j,safe_not_equal,{schema:0,linkedRows:7})}}function create_else_block_1$g(n1){let e1,t1,r1;function o1(a1){n1[18](a1)}let i1={label:n1[4],type:n1[5],error:n1[3],disabled:n1[2]};return n1[0]!==void 0&&(i1.value=n1[0]),e1=new Input$5({props:i1}),binding_callbacks.push(()=>bind$3(e1,"value",o1)),{c(){create_component(e1.$$.fragment)},m(a1,s1){mount_component(e1,a1,s1),r1=!0},p(a1,s1){const l1={};s1&16&&(l1.label=a1[4]),s1&32&&(l1.type=a1[5]),s1&8&&(l1.error=a1[3]),s1&4&&(l1.disabled=a1[2]),!t1&&s1&1&&(t1=!0,l1.value=a1[0],add_flush_callback(()=>t1=!1)),e1.$set(l1)},i(a1){r1||(transition_in(e1.$$.fragment,a1),r1=!0)},o(a1){transition_out(e1.$$.fragment,a1),r1=!1},d(a1){destroy_component(e1,a1)}}}function create_if_block_8$4(n1){let e1,t1,r1,o1;return e1=new Label({props:{$$slots:{default:[create_default_slot$3D]},$$scope:{ctx:n1}}}),r1=new QueryEditor({props:{editorHeight:"250",editorWidth:"320",mode:"json",value:n1[6],error:n1[3]}}),r1.$on("change",n1[17]),{c(){create_component(e1.$$.fragment),t1=space$1(),create_component(r1.$$.fragment)},m(i1,a1){mount_component(e1,i1,a1),insert$1(i1,t1,a1),mount_component(r1,i1,a1),o1=!0},p(i1,a1){const s1={};a1&2097168&&(s1.$$scope={dirty:a1,ctx:i1}),e1.$set(s1);const l1={};a1&64&&(l1.value=i1[6]),a1&8&&(l1.error=i1[3]),r1.$set(l1)},i(i1){o1||(transition_in(e1.$$.fragment,i1),transition_in(r1.$$.fragment,i1),o1=!0)},o(i1){transition_out(e1.$$.fragment,i1),transition_out(r1.$$.fragment,i1),o1=!1},d(i1){destroy_component(e1,i1),i1&&detach(t1),destroy_component(r1,i1)}}}function create_if_block_6$a(n1){let e1,t1,r1,o1;const i1=[create_if_block_7$9,create_else_block$W],a1=[];function s1(l1,c1){return l1[1].useRichText?0:1}return e1=s1(n1),t1=a1[e1]=i1[e1](n1),{c(){t1.c(),r1=empty$1()},m(l1,c1){a1[e1].m(l1,c1),insert$1(l1,r1,c1),o1=!0},p(l1,c1){let u1=e1;e1=s1(l1),e1===u1?a1[e1].p(l1,c1):(group_outros(),transition_out(a1[u1],1,1,()=>{a1[u1]=null}),check_outros(),t1=a1[e1],t1?t1.p(l1,c1):(t1=a1[e1]=i1[e1](l1),t1.c()),transition_in(t1,1),t1.m(r1.parentNode,r1))},i(l1){o1||(transition_in(t1),o1=!0)},o(l1){transition_out(t1),o1=!1},d(l1){a1[e1].d(l1),l1&&detach(r1)}}}function create_if_block_5$g(n1){let e1,t1,r1;function o1(a1){n1[14](a1)}let i1={error:n1[3],schema:n1[1]};return n1[0]!==void 0&&(i1.linkedRows=n1[0]),e1=new LinkedRowSelector({props:i1}),binding_callbacks.push(()=>bind$3(e1,"linkedRows",o1)),{c(){create_component(e1.$$.fragment)},m(a1,s1){mount_component(e1,a1,s1),r1=!0},p(a1,s1){const l1={};s1&8&&(l1.error=a1[3]),s1&2&&(l1.schema=a1[1]),!t1&&s1&1&&(t1=!0,l1.linkedRows=a1[0],add_flush_callback(()=>t1=!1)),e1.$set(l1)},i(a1){r1||(transition_in(e1.$$.fragment,a1),r1=!0)},o(a1){transition_out(e1.$$.fragment,a1),r1=!1},d(a1){destroy_component(e1,a1)}}}function create_if_block_4$o(n1){let e1,t1,r1;function o1(a1){n1[13](a1)}let i1={error:n1[3],label:n1[4],options:n1[1].constraints.inclusion};return n1[0]!==void 0&&(i1.value=n1[0]),e1=new Multiselect_1({props:i1}),binding_callbacks.push(()=>bind$3(e1,"value",o1)),{c(){create_component(e1.$$.fragment)},m(a1,s1){mount_component(e1,a1,s1),r1=!0},p(a1,s1){const l1={};s1&8&&(l1.error=a1[3]),s1&16&&(l1.label=a1[4]),s1&2&&(l1.options=a1[1].constraints.inclusion),!t1&&s1&1&&(t1=!0,l1.value=a1[0],add_flush_callback(()=>t1=!1)),e1.$set(l1)},i(a1){r1||(transition_in(e1.$$.fragment,a1),r1=!0)},o(a1){transition_out(e1.$$.fragment,a1),r1=!1},d(a1){destroy_component(e1,a1)}}}function create_if_block_3$z(n1){let e1,t1,r1;function o1(a1){n1[12](a1)}let i1={text:n1[4],error:n1[3]};return n1[0]!==void 0&&(i1.value=n1[0]),e1=new Toggle({props:i1}),binding_callbacks.push(()=>bind$3(e1,"value",o1)),{c(){create_component(e1.$$.fragment)},m(a1,s1){mount_component(e1,a1,s1),r1=!0},p(a1,s1){const l1={};s1&16&&(l1.text=a1[4]),s1&8&&(l1.error=a1[3]),!t1&&s1&1&&(t1=!0,l1.value=a1[0],add_flush_callback(()=>t1=!1)),e1.$set(l1)},i(a1){r1||(transition_in(e1.$$.fragment,a1),r1=!0)},o(a1){transition_out(e1.$$.fragment,a1),r1=!1},d(a1){destroy_component(e1,a1)}}}function create_if_block_2$R(n1){let e1,t1,r1;function o1(a1){n1[11](a1)}let i1={label:n1[4],error:n1[3]};return n1[0]!==void 0&&(i1.value=n1[0]),e1=new Dropzone_1({props:i1}),binding_callbacks.push(()=>bind$3(e1,"value",o1)),{c(){create_component(e1.$$.fragment)},m(a1,s1){mount_component(e1,a1,s1),r1=!0},p(a1,s1){const l1={};s1&16&&(l1.label=a1[4]),s1&8&&(l1.error=a1[3]),!t1&&s1&1&&(t1=!0,l1.value=a1[0],add_flush_callback(()=>t1=!1)),e1.$set(l1)},i(a1){r1||(transition_in(e1.$$.fragment,a1),r1=!0)},o(a1){transition_out(e1.$$.fragment,a1),r1=!1},d(a1){destroy_component(e1,a1)}}}function create_if_block_1$1k(n1){var a1,s1;let e1,t1,r1;function o1(l1){n1[10](l1)}let i1={error:n1[3],label:n1[4],timeOnly:n1[7],enableTime:!((a1=n1[1])!=null&&a1.dateOnly),ignoreTimezones:(s1=n1[1])==null?void 0:s1.ignoreTimezones};return n1[0]!==void 0&&(i1.value=n1[0]),e1=new DatePicker_1({props:i1}),binding_callbacks.push(()=>bind$3(e1,"value",o1)),{c(){create_component(e1.$$.fragment)},m(l1,c1){mount_component(e1,l1,c1),r1=!0},p(l1,c1){var f1,p1;const u1={};c1&8&&(u1.error=l1[3]),c1&16&&(u1.label=l1[4]),c1&2&&(u1.enableTime=!((f1=l1[1])!=null&&f1.dateOnly)),c1&2&&(u1.ignoreTimezones=(p1=l1[1])==null?void 0:p1.ignoreTimezones),!t1&&c1&1&&(t1=!0,u1.value=l1[0],add_flush_callback(()=>t1=!1)),e1.$set(u1)},i(l1){r1||(transition_in(e1.$$.fragment,l1),r1=!0)},o(l1){transition_out(e1.$$.fragment,l1),r1=!1},d(l1){destroy_component(e1,l1)}}}function create_if_block$2w(n1){let e1,t1,r1;function o1(a1){n1[9](a1)}let i1={label:n1[4],options:n1[1].constraints.inclusion,sort:!0,error:n1[3]};return n1[0]!==void 0&&(i1.value=n1[0]),e1=new Select_1$1({props:i1}),binding_callbacks.push(()=>bind$3(e1,"value",o1)),{c(){create_component(e1.$$.fragment)},m(a1,s1){mount_component(e1,a1,s1),r1=!0},p(a1,s1){const l1={};s1&16&&(l1.label=a1[4]),s1&2&&(l1.options=a1[1].constraints.inclusion),s1&8&&(l1.error=a1[3]),!t1&&s1&1&&(t1=!0,l1.value=a1[0],add_flush_callback(()=>t1=!1)),e1.$set(l1)},i(a1){r1||(transition_in(e1.$$.fragment,a1),r1=!0)},o(a1){transition_out(e1.$$.fragment,a1),r1=!1},d(a1){destroy_component(e1,a1)}}}function create_default_slot$3D(n1){let e1;return{c(){e1=text(n1[4])},m(t1,r1){insert$1(t1,e1,r1)},p(t1,r1){r1&16&&set_data(e1,t1[4])},d(t1){t1&&detach(e1)}}}function create_else_block$W(n1){let e1,t1,r1;function o1(a1){n1[16](a1)}let i1={error:n1[3],label:n1[4],height:"150px"};return n1[0]!==void 0&&(i1.value=n1[0]),e1=new TextArea_1({props:i1}),binding_callbacks.push(()=>bind$3(e1,"value",o1)),{c(){create_component(e1.$$.fragment)},m(a1,s1){mount_component(e1,a1,s1),r1=!0},p(a1,s1){const l1={};s1&8&&(l1.error=a1[3]),s1&16&&(l1.label=a1[4]),!t1&&s1&1&&(t1=!0,l1.value=a1[0],add_flush_callback(()=>t1=!1)),e1.$set(l1)},i(a1){r1||(transition_in(e1.$$.fragment,a1),r1=!0)},o(a1){transition_out(e1.$$.fragment,a1),r1=!1},d(a1){destroy_component(e1,a1)}}}function create_if_block_7$9(n1){let e1,t1,r1;function o1(a1){n1[15](a1)}let i1={error:n1[3],label:n1[4],height:"150px"};return n1[0]!==void 0&&(i1.value=n1[0]),e1=new RichTextField_1({props:i1}),binding_callbacks.push(()=>bind$3(e1,"value",o1)),{c(){create_component(e1.$$.fragment)},m(a1,s1){mount_component(e1,a1,s1),r1=!0},p(a1,s1){const l1={};s1&8&&(l1.error=a1[3]),s1&16&&(l1.label=a1[4]),!t1&&s1&1&&(t1=!0,l1.value=a1[0],add_flush_callback(()=>t1=!1)),e1.$set(l1)},i(a1){r1||(transition_in(e1.$$.fragment,a1),r1=!0)},o(a1){transition_out(e1.$$.fragment,a1),r1=!1},d(a1){destroy_component(e1,a1)}}}function create_fragment$5i(n1){let e1,t1,r1,o1;const i1=[create_if_block$2w,create_if_block_1$1k,create_if_block_2$R,create_if_block_3$z,create_if_block_4$o,create_if_block_5$g,create_if_block_6$a,create_if_block_8$4,create_else_block_1$g],a1=[];function s1(l1,c1){return l1[5]==="options"&&l1[1].constraints.inclusion.length!==0?0:l1[5]==="datetime"?1:l1[5]==="attachment"?2:l1[5]==="boolean"?3:l1[5]==="array"&&l1[1].constraints.inclusion.length!==0?4:l1[5]==="link"?5:l1[5]==="longform"?6:l1[5]==="json"?7:8}return e1=s1(n1),t1=a1[e1]=i1[e1](n1),{c(){t1.c(),r1=empty$1()},m(l1,c1){a1[e1].m(l1,c1),insert$1(l1,r1,c1),o1=!0},p(l1,[c1]){let u1=e1;e1=s1(l1),e1===u1?a1[e1].p(l1,c1):(group_outros(),transition_out(a1[u1],1,1,()=>{a1[u1]=null}),check_outros(),t1=a1[e1],t1?t1.p(l1,c1):(t1=a1[e1]=i1[e1](l1),t1.c()),transition_in(t1,1),t1.m(r1.parentNode,r1))},i(l1){o1||(transition_in(t1),o1=!0)},o(l1){transition_out(t1),o1=!1},d(l1){a1[e1].d(l1),l1&&detach(r1)}}}function instance$5o(n1,e1,t1){let r1,o1,i1,{defaultValue:a1}=e1,{meta:s1}=e1,{value:l1=a1||(s1.type==="boolean"?!1:"")}=e1,{readonly:c1}=e1,{error:u1}=e1;const d1=!!(M1=>{if(!M1)return null;let z1=new Date(`0-${M1}`);return z1 instanceof Date&&!isNaN(z1.getTime())?z1:null})(l1)||(s1==null?void 0:s1.timeOnly);function m1(M1){l1=M1,t1(0,l1)}function _1(M1){l1=M1,t1(0,l1)}function h1(M1){l1=M1,t1(0,l1)}function g1(M1){l1=M1,t1(0,l1)}function $1(M1){l1=M1,t1(0,l1)}function y1(M1){l1=M1,t1(0,l1)}function w1(M1){l1=M1,t1(0,l1)}function S1(M1){l1=M1,t1(0,l1)}const O1=({detail:M1})=>t1(0,l1=M1.value);function C1(M1){l1=M1,t1(0,l1)}return n1.$$set=M1=>{"defaultValue"in M1&&t1(8,a1=M1.defaultValue),"meta"in M1&&t1(1,s1=M1.meta),"value"in M1&&t1(0,l1=M1.value),"readonly"in M1&&t1(2,c1=M1.readonly),"error"in M1&&t1(3,u1=M1.error)},n1.$$.update=()=>{n1.$$.dirty&1&&t1(6,r1=typeof l1=="object"?JSON.stringify(l1,null,2):l1),n1.$$.dirty&2&&t1(5,o1=s1==null?void 0:s1.type),n1.$$.dirty&2&&t1(4,i1=s1.name?capitalise(s1.name):"")},[l1,s1,c1,u1,i1,o1,r1,d1,a1,m1,_1,h1,g1,$1,y1,w1,S1,O1,C1]}class RowFieldControl extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$5o,create_fragment$5i,safe_not_equal,{defaultValue:8,meta:1,value:0,readonly:2,error:3})}}const CreateEditRow_svelte_svelte_type_style_lang="";function get_each_context$12(n1,e1,t1){const r1=n1.slice();return r1[11]=e1[t1][0],r1[12]=e1[t1][1],r1[13]=e1,r1[14]=t1,r1}function create_if_block$2v(n1){let e1,t1,r1,o1,i1;function a1(l1){n1[9](l1,n1[11])}let s1={error:n1[1][n1[11]],meta:n1[12]};return n1[0][n1[11]]!==void 0&&(s1.value=n1[0][n1[11]]),t1=new RowFieldControl({props:s1}),binding_callbacks.push(()=>bind$3(t1,"value",a1)),{c(){e1=element("div"),create_component(t1.$$.fragment),o1=space$1(),attr(e1,"class","svelte-1gew3ww")},m(l1,c1){insert$1(l1,e1,c1),mount_component(t1,e1,null),append$1(e1,o1),i1=!0},p(l1,c1){n1=l1;const u1={};c1&6&&(u1.error=n1[1][n1[11]]),c1&4&&(u1.meta=n1[12]),!r1&&c1&5&&(r1=!0,u1.value=n1[0][n1[11]],add_flush_callback(()=>r1=!1)),t1.$set(u1)},i(l1){i1||(transition_in(t1.$$.fragment,l1),i1=!0)},o(l1){transition_out(t1.$$.fragment,l1),i1=!1},d(l1){l1&&detach(e1),destroy_component(t1)}}}function create_each_block$12(n1){let e1,t1,r1=!n1[12].autocolumn&&n1[12].type!==n1[4]&&create_if_block$2v(n1);return{c(){r1&&r1.c(),e1=empty$1()},m(o1,i1){r1&&r1.m(o1,i1),insert$1(o1,e1,i1),t1=!0},p(o1,i1){!o1[12].autocolumn&&o1[12].type!==o1[4]?r1?(r1.p(o1,i1),i1&4&&transition_in(r1,1)):(r1=create_if_block$2v(o1),r1.c(),transition_in(r1,1),r1.m(e1.parentNode,e1)):r1&&(group_outros(),transition_out(r1,1,1,()=>{r1=null}),check_outros())},i(o1){t1||(transition_in(r1),t1=!0)},o(o1){transition_out(r1),t1=!1},d(o1){r1&&r1.d(o1),o1&&detach(e1)}}}function create_default_slot$3C(n1){let e1,t1,r1=n1[2],o1=[];for(let a1=0;a1<r1.length;a1+=1)o1[a1]=create_each_block$12(get_each_context$12(n1,r1,a1));const i1=a1=>transition_out(o1[a1],1,1,()=>{o1[a1]=null});return{c(){for(let a1=0;a1<o1.length;a1+=1)o1[a1].c();e1=empty$1()},m(a1,s1){for(let l1=0;l1<o1.length;l1+=1)o1[l1].m(a1,s1);insert$1(a1,e1,s1),t1=!0},p(a1,s1){if(s1&23){r1=a1[2];let l1;for(l1=0;l1<r1.length;l1+=1){const c1=get_each_context$12(a1,r1,l1);o1[l1]?(o1[l1].p(c1,s1),transition_in(o1[l1],1)):(o1[l1]=create_each_block$12(c1),o1[l1].c(),transition_in(o1[l1],1),o1[l1].m(e1.parentNode,e1))}for(group_outros(),l1=r1.length;l1<o1.length;l1+=1)i1(l1);check_outros()}},i(a1){if(!t1){for(let s1=0;s1<r1.length;s1+=1)transition_in(o1[s1]);t1=!0}},o(a1){o1=o1.filter(Boolean);for(let s1=0;s1<o1.length;s1+=1)transition_out(o1[s1]);t1=!1},d(a1){destroy_each(o1,a1),a1&&detach(e1)}}}function create_fragment$5h(n1){let e1,t1,r1;return t1=new ModalContent({props:{title:n1[3]?"Create Row":"Edit Row",confirmText:n1[3]?"Create Row":"Save Row",onConfirm:n1[6],showCancelButton:n1[3],showSecondaryButton:!n1[3],secondaryButtonWarning:!n1[3],secondaryButtonText:"Delete",secondaryAction:n1[10],$$slots:{default:[create_default_slot$3C]},$$scope:{ctx:n1}}}),{c(){e1=element("span"),create_component(t1.$$.fragment),attr(e1,"class","modal-wrap svelte-1gew3ww")},m(o1,i1){insert$1(o1,e1,i1),mount_component(t1,e1,null),r1=!0},p(o1,[i1]){const a1={};i1&8&&(a1.title=o1[3]?"Create Row":"Edit Row"),i1&8&&(a1.confirmText=o1[3]?"Create Row":"Save Row"),i1&8&&(a1.showCancelButton=o1[3]),i1&8&&(a1.showSecondaryButton=!o1[3]),i1&8&&(a1.secondaryButtonWarning=!o1[3]),i1&1&&(a1.secondaryAction=o1[10]),i1&32775&&(a1.$$scope={dirty:i1,ctx:o1}),t1.$set(a1)},i(o1){r1||(transition_in(t1.$$.fragment,o1),r1=!0)},o(o1){transition_out(t1.$$.fragment,o1),r1=!1},d(o1){o1&&detach(e1),destroy_component(t1)}}}function instance$5n(n1,e1,t1){let r1,o1,i1,a1;component_subscribe(n1,tables,m1=>t1(8,a1=m1));const s1=FIELDS.FORMULA.type;let{row:l1={}}=e1,c1=[];const u1=createEventDispatcher();async function f1(){t1(1,c1=[]);try{const m1=await API.saveRow({...l1,tableId:o1._id});notifications.success("Row saved successfully"),u1("updaterows",m1._id)}catch(m1){const _1=m1.json;if(m1.handled&&(_1==null?void 0:_1.errors))t1(1,c1=_1.errors);else if(m1.handled&&(_1==null?void 0:_1.validationErrors)){const h1={};for(let g1 in _1.validationErrors)h1[g1]=`${g1} ${_1.validationErrors[g1][0]}`;t1(1,c1=h1)}else notifications.error(`Failed to save row - ${m1.message}`);return keepOpen}}function p1(m1,_1){n1.$$.not_equal(l1[_1],m1)&&(l1[_1]=m1,t1(0,l1))}const d1=()=>{u1("deleteRows",l1)};return n1.$$set=m1=>{"row"in m1&&t1(0,l1=m1.row)},n1.$$.update=()=>{var m1;n1.$$.dirty&1&&t1(3,r1=(l1==null?void 0:l1._id)==null),n1.$$.dirty&257&&t1(7,o1=l1.tableId?a1.list.find(_1=>_1._id===(l1==null?void 0:l1.tableId)):a1.selected),n1.$$.dirty&128&&t1(2,i1=Object.entries((m1=o1==null?void 0:o1.schema)!=null?m1:{}))},[l1,c1,i1,r1,s1,u1,f1,o1,a1,p1,d1]}class CreateEditRow extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$5n,create_fragment$5h,safe_not_equal,{row:0})}}function create_default_slot$3B(n1){let e1,t1;return e1=new CreateEditRow({props:{row:n1[1]}}),e1.$on("updaterows",n1[4]),e1.$on("deleteRows",n1[3]),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&2&&(i1.row=r1[1]),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_fragment$5g(n1){let e1,t1,r1={$$slots:{default:[create_default_slot$3B]},$$scope:{ctx:n1}};return e1=new Modal({props:r1}),n1[5](e1),{c(){create_component(e1.$$.fragment)},m(o1,i1){mount_component(e1,o1,i1),t1=!0},p(o1,[i1]){const a1={};i1&130&&(a1.$$scope={dirty:i1,ctx:o1}),e1.$set(a1)},i(o1){t1||(transition_in(e1.$$.fragment,o1),t1=!0)},o(o1){transition_out(e1.$$.fragment,o1),t1=!1},d(o1){n1[5](null),destroy_component(e1,o1)}}}function instance$5m(n1,e1,t1){const{subscribe:r1,rows:o1}=getContext("grid");let i1,a1;const s1=u1=>{o1.actions.deleteRows([u1.detail]),notifications.success("Deleted 1 row")};onMount(()=>r1("add-row",()=>{t1(1,a1={}),i1.show()})),onMount(()=>r1("edit-row",u1=>{t1(1,a1=fp.cloneDeep(u1)),i1.show()}));const l1=u1=>o1.actions.refreshRow(u1.detail);function c1(u1){binding_callbacks[u1?"unshift":"push"](()=>{i1=u1,t1(0,i1)})}return[i1,a1,o1,s1,l1,c1]}class GridCreateEditRowModal extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$5m,create_fragment$5g,safe_not_equal,{})}}function get_each_context$11(n1,e1,t1){const r1=n1.slice();return r1[18]=e1[t1][0],r1[19]=e1[t1][1],r1[20]=e1,r1[21]=t1,r1}function create_if_block_1$1j(n1){let e1,t1,r1,o1,i1;return r1=new Link({props:{$$slots:{default:[create_default_slot_1$2J]},$$scope:{ctx:n1}}}),r1.$on("click",function(){is_function(n1[5]("/builder/portal/users/users"))&&n1[5]("/builder/portal/users/users").apply(this,arguments)}),{c(){e1=element("div"),t1=text(`A user's email, role, first and last names cannot be changed from within
1670
1670
  the app builder. Please go to the
1671
1671
  `),create_component(r1.$$.fragment),o1=text(`
1672
1672
  to do this.`)},m(a1,s1){insert$1(a1,e1,s1),append$1(e1,t1),mount_component(r1,e1,null),append$1(e1,o1),i1=!0},p(a1,s1){n1=a1;const l1={};s1&4194304&&(l1.$$scope={dirty:s1,ctx:n1}),r1.$set(l1)},i(a1){i1||(transition_in(r1.$$.fragment,a1),i1=!0)},o(a1){transition_out(r1.$$.fragment,a1),i1=!1},d(a1){a1&&detach(e1),destroy_component(r1)}}}function create_default_slot_1$2J(n1){let e1;return{c(){e1=text("user portal")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_if_block$2u(n1){let e1,t1,r1;function o1(a1){n1[14](a1,n1[18])}let i1={meta:n1[19],creating:n1[4]};return n1[0][n1[18]]!==void 0&&(i1.value=n1[0][n1[18]]),e1=new RowFieldControl({props:i1}),binding_callbacks.push(()=>bind$3(e1,"value",o1)),{c(){create_component(e1.$$.fragment)},m(a1,s1){mount_component(e1,a1,s1),r1=!0},p(a1,s1){n1=a1;const l1={};s1&8&&(l1.meta=n1[19]),s1&16&&(l1.creating=n1[4]),!t1&&s1&9&&(t1=!0,l1.value=n1[0][n1[18]],add_flush_callback(()=>t1=!1)),e1.$set(l1)},i(a1){r1||(transition_in(e1.$$.fragment,a1),r1=!0)},o(a1){transition_out(e1.$$.fragment,a1),r1=!1},d(a1){destroy_component(e1,a1)}}}function create_each_block$11(n1){let e1,t1,r1=!n1[19].autocolumn&&create_if_block$2u(n1);return{c(){r1&&r1.c(),e1=empty$1()},m(o1,i1){r1&&r1.m(o1,i1),insert$1(o1,e1,i1),t1=!0},p(o1,i1){o1[19].autocolumn?r1&&(group_outros(),transition_out(r1,1,1,()=>{r1=null}),check_outros()):r1?(r1.p(o1,i1),i1&8&&transition_in(r1,1)):(r1=create_if_block$2u(o1),r1.c(),transition_in(r1,1),r1.m(e1.parentNode,e1))},i(o1){t1||(transition_in(r1),t1=!0)},o(o1){transition_out(r1),t1=!1},d(o1){r1&&r1.d(o1),o1&&detach(e1)}}}function create_default_slot$3A(n1){let e1,t1,r1,o1,i1,a1,s1,l1,c1,u1,f1,p1,d1,m1,_1,h1,g1;e1=new ErrorsBox({props:{errors:n1[2]}});let $1=!n1[4]&&create_if_block_1$1j(n1);function y1(R1){n1[10](R1)}let w1={meta:{...n1[1].email,name:"Email"},readonly:!n1[4]};n1[0].email!==void 0&&(w1.value=n1[0].email),o1=new RowFieldControl({props:w1}),binding_callbacks.push(()=>bind$3(o1,"value",y1));function S1(R1){n1[11](R1)}let O1={meta:{...n1[1].firstName,name:"First Name"},readonly:!n1[4]};n1[0].firstName!==void 0&&(O1.value=n1[0].firstName),s1=new RowFieldControl({props:O1}),binding_callbacks.push(()=>bind$3(s1,"value",S1));function C1(R1){n1[12](R1)}let M1={meta:{...n1[1].lastName,name:"Last Name"},readonly:!n1[4]};n1[0].lastName!==void 0&&(M1.value=n1[0].lastName),u1=new RowFieldControl({props:M1}),binding_callbacks.push(()=>bind$3(u1,"value",C1));function z1(R1){n1[13](R1)}let D1={label:"Role",options:n1[6],getOptionLabel:func$C,getOptionValue:func_1$v,disabled:!n1[4]};n1[0].roleId!==void 0&&(D1.value=n1[0].roleId),d1=new Select_1$1({props:D1}),binding_callbacks.push(()=>bind$3(d1,"value",z1));let H1=n1[3],B1=[];for(let R1=0;R1<H1.length;R1+=1)B1[R1]=create_each_block$11(get_each_context$11(n1,H1,R1));const q1=R1=>transition_out(B1[R1],1,1,()=>{B1[R1]=null});return{c(){create_component(e1.$$.fragment),t1=space$1(),$1&&$1.c(),r1=space$1(),create_component(o1.$$.fragment),a1=space$1(),create_component(s1.$$.fragment),c1=space$1(),create_component(u1.$$.fragment),p1=space$1(),create_component(d1.$$.fragment),_1=space$1();for(let R1=0;R1<B1.length;R1+=1)B1[R1].c();h1=empty$1()},m(R1,I1){mount_component(e1,R1,I1),insert$1(R1,t1,I1),$1&&$1.m(R1,I1),insert$1(R1,r1,I1),mount_component(o1,R1,I1),insert$1(R1,a1,I1),mount_component(s1,R1,I1),insert$1(R1,c1,I1),mount_component(u1,R1,I1),insert$1(R1,p1,I1),mount_component(d1,R1,I1),insert$1(R1,_1,I1);for(let F1=0;F1<B1.length;F1+=1)B1[F1].m(R1,I1);insert$1(R1,h1,I1),g1=!0},p(R1,I1){const F1={};I1&4&&(F1.errors=R1[2]),e1.$set(F1),R1[4]?$1&&(group_outros(),transition_out($1,1,1,()=>{$1=null}),check_outros()):$1?($1.p(R1,I1),I1&16&&transition_in($1,1)):($1=create_if_block_1$1j(R1),$1.c(),transition_in($1,1),$1.m(r1.parentNode,r1));const j1={};I1&2&&(j1.meta={...R1[1].email,name:"Email"}),I1&16&&(j1.readonly=!R1[4]),!i1&&I1&1&&(i1=!0,j1.value=R1[0].email,add_flush_callback(()=>i1=!1)),o1.$set(j1);const X1={};I1&2&&(X1.meta={...R1[1].firstName,name:"First Name"}),I1&16&&(X1.readonly=!R1[4]),!l1&&I1&1&&(l1=!0,X1.value=R1[0].firstName,add_flush_callback(()=>l1=!1)),s1.$set(X1);const Y1={};I1&2&&(Y1.meta={...R1[1].lastName,name:"Last Name"}),I1&16&&(Y1.readonly=!R1[4]),!f1&&I1&1&&(f1=!0,Y1.value=R1[0].lastName,add_flush_callback(()=>f1=!1)),u1.$set(Y1);const Q1={};if(I1&64&&(Q1.options=R1[6]),I1&16&&(Q1.disabled=!R1[4]),!m1&&I1&1&&(m1=!0,Q1.value=R1[0].roleId,add_flush_callback(()=>m1=!1)),d1.$set(Q1),I1&25){H1=R1[3];let e0;for(e0=0;e0<H1.length;e0+=1){const Z1=get_each_context$11(R1,H1,e0);B1[e0]?(B1[e0].p(Z1,I1),transition_in(B1[e0],1)):(B1[e0]=create_each_block$11(Z1),B1[e0].c(),transition_in(B1[e0],1),B1[e0].m(h1.parentNode,h1))}for(group_outros(),e0=H1.length;e0<B1.length;e0+=1)q1(e0);check_outros()}},i(R1){if(!g1){transition_in(e1.$$.fragment,R1),transition_in($1),transition_in(o1.$$.fragment,R1),transition_in(s1.$$.fragment,R1),transition_in(u1.$$.fragment,R1),transition_in(d1.$$.fragment,R1);for(let I1=0;I1<H1.length;I1+=1)transition_in(B1[I1]);g1=!0}},o(R1){transition_out(e1.$$.fragment,R1),transition_out($1),transition_out(o1.$$.fragment,R1),transition_out(s1.$$.fragment,R1),transition_out(u1.$$.fragment,R1),transition_out(d1.$$.fragment,R1),B1=B1.filter(Boolean);for(let I1=0;I1<B1.length;I1+=1)transition_out(B1[I1]);g1=!1},d(R1){destroy_component(e1,R1),R1&&detach(t1),$1&&$1.d(R1),R1&&detach(r1),destroy_component(o1,R1),R1&&detach(a1),destroy_component(s1,R1),R1&&detach(c1),destroy_component(u1,R1),R1&&detach(p1),destroy_component(d1,R1),R1&&detach(_1),destroy_each(B1,R1),R1&&detach(h1)}}}function create_fragment$5f(n1){let e1,t1;return e1=new ModalContent({props:{title:n1[4]?"Create User":"Edit User",confirmText:n1[4]?"Create User":"Save User",onConfirm:n1[7],$$slots:{default:[create_default_slot$3A]},$$scope:{ctx:n1}}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,[o1]){const i1={};o1&16&&(i1.title=r1[4]?"Create User":"Edit User"),o1&16&&(i1.confirmText=r1[4]?"Create User":"Save User"),o1&4194431&&(i1.$$scope={dirty:o1,ctx:r1}),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}const func$C=n1=>n1.name,func_1$v=n1=>n1._id;function instance$5l(n1,e1,t1){let r1,o1,i1,a1,s1,l1,c1;component_subscribe(n1,tables,S1=>t1(9,s1=S1)),component_subscribe(n1,goto,S1=>t1(5,l1=S1)),component_subscribe(n1,roles,S1=>t1(6,c1=S1));let{row:u1={}}=e1;const f1=createEventDispatcher();let p1=[];const d1=S1=>{var C1;let O1=(C1=S1==null?void 0:S1.schema)!=null?C1:{};return O1.username&&(O1.username.name="Username"),O1},m1=S1=>{let O1={...S1};return delete O1.email,delete O1.roleId,delete O1.status,delete O1.firstName,delete O1.lastName,Object.entries(O1)},_1=async()=>{if(t1(2,p1=[]),u1.email||t1(2,p1=[...p1,{message:"Email is required"}]),u1.roleId||t1(2,p1=[...p1,{message:"Role is required"}]),p1.length)return keepOpen;try{const S1=await API.saveRow({...u1,tableId:o1._id});notifications.success("User saved successfully"),f1("updaterows",S1.id)}catch(S1){if(S1.handled){const O1=S1.json;O1!=null&&O1.errors?Array.isArray(O1.errors)?t1(2,p1=O1.errors.map(C1=>({message:C1}))):t1(2,p1=Object.entries(O1.errors).map(([C1,M1])=>({dataPath:C1,message:M1})).flat()):S1.status===400&&(O1==null?void 0:O1.validationErrors)?t1(2,p1=Object.keys(O1.validationErrors).map(C1=>({message:`${C1} ${O1.validationErrors[C1][0]}`}))):t1(2,p1=[{message:(O1==null?void 0:O1.message)||"Unknown error"}])}else notifications.error("Error saving user");return keepOpen}};function h1(S1){n1.$$.not_equal(u1.email,S1)&&(u1.email=S1,t1(0,u1))}function g1(S1){n1.$$.not_equal(u1.firstName,S1)&&(u1.firstName=S1,t1(0,u1))}function $1(S1){n1.$$.not_equal(u1.lastName,S1)&&(u1.lastName=S1,t1(0,u1))}function y1(S1){n1.$$.not_equal(u1.roleId,S1)&&(u1.roleId=S1,t1(0,u1))}function w1(S1,O1){n1.$$.not_equal(u1[O1],S1)&&(u1[O1]=S1,t1(0,u1))}return n1.$$set=S1=>{"row"in S1&&t1(0,u1=S1.row)},n1.$$.update=()=>{n1.$$.dirty&1&&(u1.status||t1(0,u1.status="active",u1)),n1.$$.dirty&1&&t1(4,r1=(u1==null?void 0:u1._id)==null),n1.$$.dirty&513&&t1(8,o1=u1.tableId?s1.list.find(S1=>S1._id===(u1==null?void 0:u1.tableId)):s1.selected),n1.$$.dirty&256&&t1(1,i1=d1(o1)),n1.$$.dirty&2&&t1(3,a1=m1(i1))},[u1,i1,p1,a1,r1,l1,c1,_1,o1,s1,h1,g1,$1,y1,w1]}class CreateEditUser extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$5l,create_fragment$5f,safe_not_equal,{row:0})}}function create_default_slot$3z(n1){let e1,t1;return e1=new CreateEditUser({props:{row:n1[1]}}),e1.$on("updaterows",n1[3]),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&2&&(i1.row=r1[1]),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_fragment$5e(n1){let e1,t1,r1={$$slots:{default:[create_default_slot$3z]},$$scope:{ctx:n1}};return e1=new Modal({props:r1}),n1[4](e1),{c(){create_component(e1.$$.fragment)},m(o1,i1){mount_component(e1,o1,i1),t1=!0},p(o1,[i1]){const a1={};i1&66&&(a1.$$scope={dirty:i1,ctx:o1}),e1.$set(a1)},i(o1){t1||(transition_in(e1.$$.fragment,o1),t1=!0)},o(o1){transition_out(e1.$$.fragment,o1),t1=!1},d(o1){n1[4](null),destroy_component(e1,o1)}}}function instance$5k(n1,e1,t1){const{subscribe:r1,rows:o1}=getContext("grid");let i1,a1;onMount(()=>r1("edit-row",c1=>{t1(1,a1=fp.cloneDeep(c1)),i1.show()}));const s1=c1=>o1.actions.refreshRow(c1.detail);function l1(c1){binding_callbacks[c1?"unshift":"push"](()=>{i1=c1,t1(0,i1)})}return[i1,a1,o1,s1,l1]}class GridEditUserModal extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$5k,create_fragment$5e,safe_not_equal,{})}}function create_default_slot$3y(n1){let e1,t1,r1;function o1(a1){n1[8](a1)}let i1={label:"View name",thin:!0,error:n1[1]?"A view already exists with that name":null};return n1[0]!==void 0&&(i1.value=n1[0]),e1=new Input$5({props:i1}),binding_callbacks.push(()=>bind$3(e1,"value",o1)),{c(){create_component(e1.$$.fragment)},m(a1,s1){mount_component(e1,a1,s1),r1=!0},p(a1,s1){const l1={};s1&2&&(l1.error=a1[1]?"A view already exists with that name":null),!t1&&s1&1&&(t1=!0,l1.value=a1[0],add_flush_callback(()=>t1=!1)),e1.$set(l1)},i(a1){r1||(transition_in(e1.$$.fragment,a1),r1=!0)},o(a1){transition_out(e1.$$.fragment,a1),r1=!1},d(a1){destroy_component(e1,a1)}}}function create_fragment$5d(n1){let e1,t1;return e1=new ModalContent({props:{title:"Create view",confirmText:"Create view",onConfirm:n1[5],disabled:n1[1],$$slots:{default:[create_default_slot$3y]},$$scope:{ctx:n1}}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,[o1]){const i1={};o1&2&&(i1.disabled=r1[1]),o1&8195&&(i1.$$scope={dirty:o1,ctx:r1}),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function instance$5j(n1,e1,t1){let r1,o1,i1,a1,s1,l1;component_subscribe(n1,goto,h1=>t1(9,i1=h1));const{filter:c1,sort:u1,definition:f1}=getContext("grid");component_subscribe(n1,c1,h1=>t1(11,l1=h1)),component_subscribe(n1,u1,h1=>t1(10,s1=h1)),component_subscribe(n1,f1,h1=>t1(7,a1=h1));let p1;const d1=h1=>{const g1={...h1};return Object.entries(g1).forEach(([$1,y1])=>{y1.visible==null&&(g1[$1]={...g1[$1],visible:!0})}),g1},m1=async()=>{t1(0,p1=p1==null?void 0:p1.trim());try{const h1=await viewsV2.create({name:p1,tableId:a1._id,query:l1,sort:{field:s1.column,order:s1.order},schema:d1(a1.schema),primaryDisplay:a1.primaryDisplay});notifications.success(`View ${p1} created`),i1(`../../view/v2/${h1.id}`)}catch{notifications.error("Error creating view")}};function _1(h1){p1=h1,t1(0,p1)}return n1.$$.update=()=>{n1.$$.dirty&128&&t1(6,r1=Object.keys((a1==null?void 0:a1.views)||{}).map(h1=>h1.toLowerCase())),n1.$$.dirty&65&&t1(1,o1=r1.includes(p1==null?void 0:p1.trim().toLowerCase()))},[p1,o1,c1,u1,f1,m1,r1,a1,_1]}class GridCreateViewModal extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$5j,create_fragment$5d,safe_not_equal,{})}}function create_default_slot_2$20(n1){let e1;return{c(){e1=text("Create view")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot_1$2I(n1){let e1,t1;return e1=new ActionButton({props:{disabled:n1[2],icon:"CollectionAdd",quiet:!0,$$slots:{default:[create_default_slot_2$20]},$$scope:{ctx:n1}}}),e1.$on("click",function(){is_function(n1[1].show)&&n1[1].show.apply(this,arguments)}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){n1=r1;const i1={};o1&4&&(i1.disabled=n1[2]),o1&1024&&(i1.$$scope={dirty:o1,ctx:n1}),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_default_slot$3x(n1){let e1,t1;return e1=new GridCreateViewModal({}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_fragment$5c(n1){let e1,t1,r1,o1;e1=new TempTooltip({props:{text:"Create a view to save your filters",type:TooltipType.Info,condition:n1[0],$$slots:{default:[create_default_slot_1$2I]},$$scope:{ctx:n1}}});let i1={$$slots:{default:[create_default_slot$3x]},$$scope:{ctx:n1}};return r1=new Modal({props:i1}),n1[9](r1),{c(){create_component(e1.$$.fragment),t1=space$1(),create_component(r1.$$.fragment)},m(a1,s1){mount_component(e1,a1,s1),insert$1(a1,t1,s1),mount_component(r1,a1,s1),o1=!0},p(a1,[s1]){const l1={};s1&1&&(l1.condition=a1[0]),s1&1030&&(l1.$$scope={dirty:s1,ctx:a1}),e1.$set(l1);const c1={};s1&1024&&(c1.$$scope={dirty:s1,ctx:a1}),r1.$set(c1)},i(a1){o1||(transition_in(e1.$$.fragment,a1),transition_in(r1.$$.fragment,a1),o1=!0)},o(a1){transition_out(e1.$$.fragment,a1),transition_out(r1.$$.fragment,a1),o1=!1},d(a1){destroy_component(e1,a1),a1&&detach(t1),n1[9](null),destroy_component(r1,a1)}}}function instance$5i(n1,e1,t1){let r1,o1,i1,a1;const{rows:s1,columns:l1,filter:c1}=getContext("grid");component_subscribe(n1,s1,d1=>t1(7,i1=d1)),component_subscribe(n1,l1,d1=>t1(8,a1=d1)),component_subscribe(n1,c1,d1=>t1(6,o1=d1));let u1,f1=!1;function p1(d1){binding_callbacks[d1?"unshift":"push"](()=>{u1=d1,t1(1,u1)})}return n1.$$.update=()=>{n1.$$.dirty&384&&t1(2,r1=!a1.length||!i1.length),n1.$$.dirty&65&&(o1==null?void 0:o1.length)&&!f1&&t1(0,f1=!0)},[f1,u1,r1,s1,l1,c1,o1,i1,a1,p1]}class GridCreateViewButton extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$5i,create_fragment$5c,safe_not_equal,{})}}const ExistingTableDataImport_svelte_svelte_type_style_lang="";function get_each_context$10(n1,e1,t1){const r1=n1.slice();return r1[20]=e1[t1],r1}function get_each_context_1$i(n1,e1,t1){const r1=n1.slice();return r1[23]=e1[t1],r1}function create_else_block$V(n1){let e1;return{c(){e1=text("Upload")},m(t1,r1){insert$1(t1,e1,r1)},p:noop$5,d(t1){t1&&detach(e1)}}}function create_if_block_7$8(n1){let e1;return{c(){e1=text(n1[4])},m(t1,r1){insert$1(t1,e1,r1)},p(t1,r1){r1&16&&set_data(e1,t1[4])},d(t1){t1&&detach(e1)}}}function create_if_block_6$9(n1){let e1,t1;return{c(){e1=text("error: "),t1=text(n1[3])},m(r1,o1){insert$1(r1,e1,o1),insert$1(r1,t1,o1)},p(r1,o1){o1&8&&set_data(t1,r1[3])},d(r1){r1&&detach(e1),r1&&detach(t1)}}}function create_if_block_5$f(n1){let e1;return{c(){e1=text("loading...")},m(t1,r1){insert$1(t1,e1,r1)},p:noop$5,d(t1){t1&&detach(e1)}}}function create_if_block_1$1i(n1){let e1,t1,r1,o1,i1,a1=Object.keys(n1[7]),s1=[];for(let f1=0;f1<a1.length;f1+=1)s1[f1]=create_each_block_1$i(get_each_context_1$i(n1,a1,f1));const l1=f1=>transition_out(s1[f1],1,1,()=>{s1[f1]=null});let c1=n1[2]==="internal"&&create_if_block_3$y(n1),u1=n1[9].length>0&&create_if_block_2$Q(n1);return{c(){e1=element("div");for(let f1=0;f1<s1.length;f1+=1)s1[f1].c();t1=space$1(),c1&&c1.c(),r1=space$1(),u1&&u1.c(),o1=empty$1(),attr(e1,"class","schema-fields svelte-1my71df")},m(f1,p1){insert$1(f1,e1,p1);for(let d1=0;d1<s1.length;d1+=1)s1[d1].m(e1,null);insert$1(f1,t1,p1),c1&&c1.m(f1,p1),insert$1(f1,r1,p1),u1&&u1.m(f1,p1),insert$1(f1,o1,p1),i1=!0},p(f1,p1){if(p1&1440){a1=Object.keys(f1[7]);let d1;for(d1=0;d1<a1.length;d1+=1){const m1=get_each_context_1$i(f1,a1,d1);s1[d1]?(s1[d1].p(m1,p1),transition_in(s1[d1],1)):(s1[d1]=create_each_block_1$i(m1),s1[d1].c(),transition_in(s1[d1],1),s1[d1].m(e1,null))}for(group_outros(),d1=a1.length;d1<s1.length;d1+=1)l1(d1);check_outros()}f1[2]==="internal"?c1?(c1.p(f1,p1),p1&4&&transition_in(c1,1)):(c1=create_if_block_3$y(f1),c1.c(),transition_in(c1,1),c1.m(r1.parentNode,r1)):c1&&(group_outros(),transition_out(c1,1,1,()=>{c1=null}),check_outros()),f1[9].length>0?u1?u1.p(f1,p1):(u1=create_if_block_2$Q(f1),u1.c(),u1.m(o1.parentNode,o1)):u1&&(u1.d(1),u1=null)},i(f1){if(!i1){for(let p1=0;p1<a1.length;p1+=1)transition_in(s1[p1]);transition_in(c1),i1=!0}},o(f1){s1=s1.filter(Boolean);for(let p1=0;p1<s1.length;p1+=1)transition_out(s1[p1]);transition_out(c1),i1=!1},d(f1){f1&&detach(e1),destroy_each(s1,f1),f1&&detach(t1),c1&&c1.d(f1),f1&&detach(r1),u1&&u1.d(f1),f1&&detach(o1)}}}function create_if_block$2t(n1){let e1;return{c(){e1=element("p"),e1.textContent="No valid fields, try another file"},m(t1,r1){insert$1(t1,e1,r1)},p:noop$5,i:noop$5,o:noop$5,d(t1){t1&&detach(e1)}}}function create_each_block_1$i(n1){var m1;let e1,t1,r1=n1[23]+"",o1,i1,a1,s1,l1,c1=n1[7][n1[23]]?"Success":"Failure",u1,f1,p1,d1;return a1=new Select_1$1({props:{value:(m1=n1[8][n1[23]])==null?void 0:m1.type,options:n1[10],placeholder:null,getOptionLabel:func$B,getOptionValue:func_1$u,disabled:!0}}),{c(){e1=element("div"),t1=element("span"),o1=text(r1),i1=space$1(),create_component(a1.$$.fragment),s1=space$1(),l1=element("span"),u1=text(c1),p1=space$1(),attr(l1,"class",f1=null_to_empty(n1[5]||n1[7][n1[23]]?"fieldStatusSuccess":"fieldStatusFailure")+" svelte-1my71df"),attr(e1,"class","field svelte-1my71df")},m(_1,h1){insert$1(_1,e1,h1),append$1(e1,t1),append$1(t1,o1),append$1(e1,i1),mount_component(a1,e1,null),append$1(e1,s1),append$1(e1,l1),append$1(l1,u1),append$1(e1,p1),d1=!0},p(_1,h1){var $1;(!d1||h1&128)&&r1!==(r1=_1[23]+"")&&set_data(o1,r1);const g1={};h1&384&&(g1.value=($1=_1[8][_1[23]])==null?void 0:$1.type),a1.$set(g1),(!d1||h1&128)&&c1!==(c1=_1[7][_1[23]]?"Success":"Failure")&&set_data(u1,c1),(!d1||h1&160&&f1!==(f1=null_to_empty(_1[5]||_1[7][_1[23]]?"fieldStatusSuccess":"fieldStatusFailure")+" svelte-1my71df"))&&attr(l1,"class",f1)},i(_1){d1||(transition_in(a1.$$.fragment,_1),d1=!0)},o(_1){transition_out(a1.$$.fragment,_1),d1=!1},d(_1){_1&&detach(e1),destroy_component(a1)}}}function create_if_block_3$y(n1){let e1,t1,r1,o1,i1,a1,s1;function l1(f1){n1[15](f1)}let c1={thin:!0,text:"Update existing rows"};n1[6]!==void 0&&(c1.value=n1[6]),r1=new Toggle({props:c1}),binding_callbacks.push(()=>bind$3(r1,"value",l1)),r1.$on("change",n1[16]);let u1=n1[6]&&create_if_block_4$n(n1);return{c(){e1=element("br"),t1=space$1(),create_component(r1.$$.fragment),i1=space$1(),u1&&u1.c(),a1=empty$1()},m(f1,p1){insert$1(f1,e1,p1),insert$1(f1,t1,p1),mount_component(r1,f1,p1),insert$1(f1,i1,p1),u1&&u1.m(f1,p1),insert$1(f1,a1,p1),s1=!0},p(f1,p1){const d1={};!o1&&p1&64&&(o1=!0,d1.value=f1[6],add_flush_callback(()=>o1=!1)),r1.$set(d1),f1[6]?u1?(u1.p(f1,p1),p1&64&&transition_in(u1,1)):(u1=create_if_block_4$n(f1),u1.c(),transition_in(u1,1),u1.m(a1.parentNode,a1)):u1&&(group_outros(),transition_out(u1,1,1,()=>{u1=null}),check_outros())},i(f1){s1||(transition_in(r1.$$.fragment,f1),transition_in(u1),s1=!0)},o(f1){transition_out(r1.$$.fragment,f1),transition_out(u1),s1=!1},d(f1){f1&&detach(e1),f1&&detach(t1),destroy_component(r1,f1),f1&&detach(i1),u1&&u1.d(f1),f1&&detach(a1)}}}function create_if_block_4$n(n1){let e1,t1,r1;function o1(a1){n1[17](a1)}let i1={label:"Identifier field(s)",options:Object.keys(n1[7])};return n1[1]!==void 0&&(i1.value=n1[1]),e1=new Multiselect_1({props:i1}),binding_callbacks.push(()=>bind$3(e1,"value",o1)),{c(){create_component(e1.$$.fragment)},m(a1,s1){mount_component(e1,a1,s1),r1=!0},p(a1,s1){const l1={};s1&128&&(l1.options=Object.keys(a1[7])),!t1&&s1&2&&(t1=!0,l1.value=a1[1],add_flush_callback(()=>t1=!1)),e1.$set(l1)},i(a1){r1||(transition_in(e1.$$.fragment,a1),r1=!0)},o(a1){transition_out(e1.$$.fragment,a1),r1=!1},d(a1){destroy_component(e1,a1)}}}function create_if_block_2$Q(n1){let e1,t1,r1,o1=n1[9],i1=[];for(let a1=0;a1<o1.length;a1+=1)i1[a1]=create_each_block$10(get_each_context$10(n1,o1,a1));return{c(){e1=element("p"),e1.textContent=`The following columns are present in the data you wish to import, but do
@@ -1735,8 +1735,8 @@ Use Save As... to download, then click back to return to this page.`)&&(location
1735
1735
  </g>
1736
1736
  </g>
1737
1737
  </svg>
1738
- `,AppPreview_svelte_svelte_type_style_lang="";function create_if_block_1$Q(n1){let e1,t1,r1;return t1=new Layout$m({props:{justifyItems:"center",gap:"S",$$slots:{default:[create_default_slot_1$1K]},$$scope:{ctx:n1}}}),{c(){e1=element("div"),create_component(t1.$$.fragment),attr(e1,"class","center error svelte-ogzj7")},m(o1,i1){insert$1(o1,e1,i1),mount_component(t1,e1,null),r1=!0},p(o1,i1){const a1={};i1&67108880&&(a1.$$scope={dirty:i1,ctx:o1}),t1.$set(a1)},i(o1){r1||(transition_in(t1.$$.fragment,o1),r1=!0)},o(o1){transition_out(t1.$$.fragment,o1),r1=!1},d(o1){o1&&detach(e1),destroy_component(t1)}}}function create_if_block$1E(n1){let e1,t1,r1;return t1=new ProgressCircle({}),{c(){e1=element("div"),create_component(t1.$$.fragment),attr(e1,"class","center svelte-ogzj7")},m(o1,i1){insert$1(o1,e1,i1),mount_component(t1,e1,null),r1=!0},p:noop$5,i(o1){r1||(transition_in(t1.$$.fragment,o1),r1=!0)},o(o1){transition_out(t1.$$.fragment,o1),r1=!1},d(o1){o1&&detach(e1),destroy_component(t1)}}}function create_default_slot_3$17(n1){let e1;return{c(){e1=text("App preview failed to load")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot_2$1n(n1){let e1;return{c(){e1=text(n1[4])},m(t1,r1){insert$1(t1,e1,r1)},p(t1,r1){r1&16&&set_data(e1,t1[4])},d(t1){t1&&detach(e1)}}}function create_default_slot_1$1K(n1){let e1,t1,r1,o1,i1,a1;return r1=new Heading({props:{size:"L",$$slots:{default:[create_default_slot_3$17]},$$scope:{ctx:n1}}}),i1=new Body({props:{size:"S",$$slots:{default:[create_default_slot_2$1n]},$$scope:{ctx:n1}}}),{c(){e1=new HtmlTag(!1),t1=space$1(),create_component(r1.$$.fragment),o1=space$1(),create_component(i1.$$.fragment),e1.a=t1},m(s1,l1){e1.m(ErrorSVG,s1,l1),insert$1(s1,t1,l1),mount_component(r1,s1,l1),insert$1(s1,o1,l1),mount_component(i1,s1,l1),a1=!0},p(s1,l1){const c1={};l1&67108864&&(c1.$$scope={dirty:l1,ctx:s1}),r1.$set(c1);const u1={};l1&67108880&&(u1.$$scope={dirty:l1,ctx:s1}),i1.$set(u1)},i(s1){a1||(transition_in(r1.$$.fragment,s1),transition_in(i1.$$.fragment,s1),a1=!0)},o(s1){transition_out(r1.$$.fragment,s1),transition_out(i1.$$.fragment,s1),a1=!1},d(s1){s1&&e1.d(),s1&&detach(t1),destroy_component(r1,s1),s1&&detach(o1),destroy_component(i1,s1)}}}function create_default_slot$29(n1){let e1;return{c(){e1=text("Component")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_fragment$3a(n1){let e1,t1,r1,o1,i1,a1,s1,l1,c1,u1,f1,p1,d1,m1;const _1=[create_if_block$1E,create_if_block_1$Q],h1=[];function g1(y1,w1){return y1[3]?0:y1[4]?1:-1}~(t1=g1(n1))&&(r1=h1[t1]=_1[t1](n1)),c1=new Icon({props:{size:"XL",name:"Add",$$slots:{default:[create_default_slot$29]},$$scope:{ctx:n1}}});let $1={title:"Confirm Deletion",body:"Are you sure you want to delete this component?",okText:"Delete component",onOk:n1[6],onCancel:n1[7]};return f1=new ConfirmDialog({props:$1}),n1[17](f1),{c(){e1=element("div"),r1&&r1.c(),o1=space$1(),i1=element("iframe"),s1=space$1(),l1=element("div"),create_component(c1.$$.fragment),u1=space$1(),create_component(f1.$$.fragment),attr(i1,"title","componentPreview"),src_url_equal(i1.src,a1="/app/preview")||attr(i1,"src",a1),attr(i1,"class","svelte-ogzj7"),toggle_class(i1,"hidden",n1[3]||n1[4]),toggle_class(i1,"tablet",n1[1].previewDevice==="tablet"),toggle_class(i1,"mobile",n1[1].previewDevice==="mobile"),attr(l1,"class","add-component svelte-ogzj7"),toggle_class(l1,"active",n1[5]),attr(e1,"class","component-container svelte-ogzj7")},m(y1,w1){insert$1(y1,e1,w1),~t1&&h1[t1].m(e1,null),append$1(e1,o1),append$1(e1,i1),n1[16](i1),append$1(e1,s1),append$1(e1,l1),mount_component(c1,l1,null),insert$1(y1,u1,w1),mount_component(f1,y1,w1),p1=!0,d1||(m1=listen(l1,"click",n1[8]),d1=!0)},p(y1,[w1]){let S1=t1;t1=g1(y1),t1===S1?~t1&&h1[t1].p(y1,w1):(r1&&(group_outros(),transition_out(h1[S1],1,1,()=>{h1[S1]=null}),check_outros()),~t1?(r1=h1[t1],r1?r1.p(y1,w1):(r1=h1[t1]=_1[t1](y1),r1.c()),transition_in(r1,1),r1.m(e1,o1)):r1=null),(!p1||w1&24)&&toggle_class(i1,"hidden",y1[3]||y1[4]),(!p1||w1&2)&&toggle_class(i1,"tablet",y1[1].previewDevice==="tablet"),(!p1||w1&2)&&toggle_class(i1,"mobile",y1[1].previewDevice==="mobile");const O1={};w1&67108864&&(O1.$$scope={dirty:w1,ctx:y1}),c1.$set(O1),(!p1||w1&32)&&toggle_class(l1,"active",y1[5]);const C1={};f1.$set(C1)},i(y1){p1||(transition_in(r1),transition_in(c1.$$.fragment,y1),transition_in(f1.$$.fragment,y1),p1=!0)},o(y1){transition_out(r1),transition_out(c1.$$.fragment,y1),transition_out(f1.$$.fragment,y1),p1=!1},d(y1){y1&&detach(e1),~t1&&h1[t1].d(),n1[16](null),destroy_component(c1),y1&&detach(u1),n1[17](null),destroy_component(f1,y1),d1=!1,m1()}}}function instance$3d(n1,e1,t1){let r1,o1,i1,a1,s1,l1,c1,u1,f1;component_subscribe(n1,goto,q1=>t1(19,l1=q1)),component_subscribe(n1,isActive,q1=>t1(14,c1=q1)),component_subscribe(n1,store,q1=>t1(1,u1=q1)),component_subscribe(n1,selectedScreen,q1=>t1(15,f1=q1));let p1,d1,m1,_1,h1,g1=!0,$1;const y1={READY:"ready",ERROR:"error",BUDIBASE:"type"},w1=q1=>{p1==null||p1.contentWindow.postMessage(q1)},S1=async q1=>{var R1,I1,F1;if(!!((R1=q1==null?void 0:q1.data)!=null&&R1.type)){try{await O1(q1)}catch(j1){notifications.error(j1||"Error handling event from app preview")}(I1=q1.data)!=null&&I1.id&&s1("event-completed",(F1=q1.data)==null?void 0:F1.id)}},O1=async q1=>{var F1;const{type:R1,data:I1}=q1.data;if(R1===y1.READY){if(!g1)return;w1(i1)}else if(R1===y1.ERROR)t1(3,g1=!1),t1(4,$1=q1.error||"An unknown error occurred");else if(R1==="select-component"&&I1.id)set_store_value(store,u1.selectedComponentId=I1.id,u1);else if(R1==="update-prop")await store.actions.components.updateSetting(I1.prop,I1.value);else if(R1==="update-styles")await store.actions.components.updateStyles(I1.styles,I1.id);else if(R1==="delete-component"&&I1.id)C1(I1.id);else if(R1==="key-down"){const{key:j1,ctrlKey:X1}=I1;document.dispatchEvent(new KeyboardEvent("keydown",{key:j1,ctrlKey:X1}))}else if(R1==="duplicate-component"&&I1.id){const j1=get_store_value(currentAsset).props,X1=findComponent(j1,I1.id);store.actions.components.copy(X1),await store.actions.components.paste(X1)}else if(R1==="preview-loaded")t1(3,g1=!1);else if(R1==="move-component"){const{componentId:j1,destinationComponentId:X1}=I1,Y1=get_store_value(currentAsset).props,Q1=findComponent(Y1,j1),e0=findComponent(Y1,X1);if(findComponentPath(Q1,X1).map(r0=>r0._id).includes(I1.destinationComponentId))return;Q1&&e0&&(store.actions.components.copy(Q1,!0,!1),await store.actions.components.paste(e0,I1.mode))}else if(R1==="request-add-component")D1();else if(R1==="highlight-setting"){store.actions.settings.highlight(I1.setting);const j1=`#${I1.setting}-prop-control`,X1=(F1=document.querySelector(j1))==null?void 0:F1.parentElement;X1&&X1.scrollIntoView({behavior:"smooth",block:"center"})}else if(R1==="eject-block"){const{id:j1,definition:X1}=I1;await store.actions.components.handleEjectBlock(j1,X1)}else if(R1==="reload-plugin")await store.actions.components.refreshDefinitions();else if(R1==="drop-new-component"){const{component:j1,parent:X1,index:Y1}=I1;await store.actions.components.create(j1,null,X1,Y1)}else if(R1==="add-parent-component"){const{componentId:j1,parentType:X1}=I1;await store.actions.components.addParent(j1,X1)}else console.warn(`Client sent unknown event type: ${R1}`)},C1=q1=>{h1=q1,_1.show()},M1=async()=>{try{await store.actions.components.delete({_id:h1})}catch{notifications.error("Error deleting component")}h1=null},z1=()=>{h1=null},D1=()=>{c1("./:componentId/new")?l1("./:componentId"):l1("./:componentId/new")};onMount(()=>{window.addEventListener("message",S1)}),onDestroy(()=>{window.removeEventListener("message",S1)});function H1(q1){binding_callbacks[q1?"unshift":"push"](()=>{p1=q1,t1(0,p1)})}function B1(q1){binding_callbacks[q1?"unshift":"push"](()=>{_1=q1,t1(2,_1)})}return n1.$$.update=()=>{var q1,R1,I1;n1.$$.dirty&32768&&t1(9,m1=f1),n1.$$.dirty&2&&t1(12,r1=u1.selectedComponentId),n1.$$.dirty&4610&&t1(13,o1={appId:u1.appId,layout:d1,screen:m1,selectedComponentId:r1,theme:u1.theme,customTheme:u1.customTheme,previewDevice:u1.previewDevice,messagePassing:u1.clientFeatures.messagePassing,navigation:u1.navigation,hiddenComponentIds:((q1=u1.componentToPaste)==null?void 0:q1._id)&&((R1=u1.componentToPaste)==null?void 0:R1.isCut)?[(I1=u1.componentToPaste)==null?void 0:I1._id]:[],isBudibaseEvent:!0,usedPlugins:u1.usedPlugins,location:{protocol:window.location.protocol,hostname:window.location.hostname,port:window.location.port}}),n1.$$.dirty&8192&&t1(10,i1=JSON.stringify(o1)),n1.$$.dirty&1024&&w1(i1),n1.$$.dirty&20480&&t1(5,a1=c1(`./${r1}/new`)),n1.$$.dirty&1&&t1(11,s1=(F1,j1)=>{p1==null||p1.contentWindow.postMessage(JSON.stringify({name:F1,payload:j1,isBudibaseEvent:!0,runtimeEvent:!0}))}),n1.$$.dirty&2048&&store.actions.preview.registerEventHandler(s1)},[p1,u1,_1,g1,$1,a1,M1,z1,D1,m1,i1,s1,r1,o1,c1,f1,H1,B1]}class AppPreview extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$3d,create_fragment$3a,safe_not_equal,{})}}const UndoRedoControl_svelte_svelte_type_style_lang="";function create_fragment$39(n1){let e1,t1,r1,o1,i1;return t1=new Icon({props:{name:"Undo",hoverable:!0,disabled:!n1[1].canUndo,tooltip:"Undo latest change"}}),t1.$on("click",function(){is_function(n1[0].undo)&&n1[0].undo.apply(this,arguments)}),o1=new Icon({props:{name:"Redo",hoverable:!0,disabled:!n1[1].canRedo,tooltip:"Redo latest undo"}}),o1.$on("click",function(){is_function(n1[0].redo)&&n1[0].redo.apply(this,arguments)}),{c(){e1=element("div"),create_component(t1.$$.fragment),r1=space$1(),create_component(o1.$$.fragment),attr(e1,"class","undo-redo svelte-1ykfm7c")},m(a1,s1){insert$1(a1,e1,s1),mount_component(t1,e1,null),append$1(e1,r1),mount_component(o1,e1,null),i1=!0},p(a1,[s1]){n1=a1;const l1={};s1&2&&(l1.disabled=!n1[1].canUndo),t1.$set(l1);const c1={};s1&2&&(c1.disabled=!n1[1].canRedo),o1.$set(c1)},i(a1){i1||(transition_in(t1.$$.fragment,a1),transition_in(o1.$$.fragment,a1),i1=!0)},o(a1){transition_out(t1.$$.fragment,a1),transition_out(o1.$$.fragment,a1),i1=!1},d(a1){a1&&detach(e1),destroy_component(t1),destroy_component(o1)}}}function instance$3c(n1,e1,t1){let r1,o1=noop$5,i1=()=>(o1(),o1=subscribe(a1,l1=>t1(1,r1=l1)),a1);n1.$$.on_destroy.push(()=>o1());let{store:a1}=e1;i1();const s1=l1=>{if(!(l1.ctrlKey||l1.metaKey))return;let c1=l1.key.toLowerCase();isBuilderInputFocused(l1)||(l1.shiftKey&&c1==="z"?a1.redo():c1==="z"&&a1.undo())};return onMount(()=>(document.addEventListener("keydown",s1),()=>{document.removeEventListener("keydown",s1)})),n1.$$set=l1=>{"store"in l1&&i1(t1(0,a1=l1.store))},[a1,r1]}class UndoRedoControl extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$3c,create_fragment$39,safe_not_equal,{store:0})}}const AppPanel_svelte_svelte_type_style_lang="";function create_if_block$1D(n1){let e1,t1;return e1=new DevicePreviewSelect({}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_key_block$3(n1){let e1,t1;return e1=new AppPreview({}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p:noop$5,i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_fragment$38(n1){let e1,t1,r1,o1,i1,a1,s1,l1,c1=n1[0].version,u1;o1=new UndoRedoControl({props:{store:screenHistoryStore}});let f1=n1[0].clientFeatures.devicePreview&&create_if_block$1D(),p1=create_key_block$3();return{c(){e1=element("div"),t1=element("div"),r1=element("div"),create_component(o1.$$.fragment),i1=space$1(),a1=element("div"),f1&&f1.c(),s1=space$1(),l1=element("div"),p1.c(),attr(r1,"class","header-left svelte-1lqfjei"),attr(a1,"class","header-right svelte-1lqfjei"),attr(t1,"class","header svelte-1lqfjei"),attr(l1,"class","content svelte-1lqfjei"),attr(e1,"class","app-panel svelte-1lqfjei")},m(d1,m1){insert$1(d1,e1,m1),append$1(e1,t1),append$1(t1,r1),mount_component(o1,r1,null),append$1(t1,i1),append$1(t1,a1),f1&&f1.m(a1,null),append$1(e1,s1),append$1(e1,l1),p1.m(l1,null),u1=!0},p(d1,[m1]){d1[0].clientFeatures.devicePreview?f1?m1&1&&transition_in(f1,1):(f1=create_if_block$1D(),f1.c(),transition_in(f1,1),f1.m(a1,null)):f1&&(group_outros(),transition_out(f1,1,1,()=>{f1=null}),check_outros()),m1&1&&safe_not_equal(c1,c1=d1[0].version)?(group_outros(),transition_out(p1,1,1,noop$5),check_outros(),p1=create_key_block$3(),p1.c(),transition_in(p1,1),p1.m(l1,null)):p1.p(d1,m1)},i(d1){u1||(transition_in(o1.$$.fragment,d1),transition_in(f1),transition_in(p1),u1=!0)},o(d1){transition_out(o1.$$.fragment,d1),transition_out(f1),transition_out(p1),u1=!1},d(d1){d1&&detach(e1),destroy_component(o1),f1&&f1.d(),p1.d(d1)}}}function instance$3b(n1,e1,t1){let r1;return component_subscribe(n1,store,o1=>t1(0,r1=o1)),[r1]}class AppPanel extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$3b,create_fragment$38,safe_not_equal,{})}}const RoleIndicator_svelte_svelte_type_style_lang="";function create_if_block$1C(n1){let e1,t1,r1;return t1=new Tooltip$1({props:{textWrapping:!0,text:n1[1],direction:"right"}}),{c(){e1=element("div"),create_component(t1.$$.fragment),attr(e1,"class","tooltip svelte-1vfibm3")},m(o1,i1){insert$1(o1,e1,i1),mount_component(t1,e1,null),r1=!0},p(o1,i1){const a1={};i1&2&&(a1.text=o1[1]),t1.$set(a1)},i(o1){r1||(transition_in(t1.$$.fragment,o1),r1=!0)},o(o1){transition_out(t1.$$.fragment,o1),r1=!1},d(o1){o1&&detach(e1),destroy_component(t1)}}}function create_fragment$37(n1){let e1,t1,r1,o1,i1,a1;t1=new StatusLight({props:{square:!0,color:n1[2]}});let s1=n1[0]&&create_if_block$1C(n1);return{c(){e1=element("div"),create_component(t1.$$.fragment),r1=space$1(),s1&&s1.c(),attr(e1,"class","container svelte-1vfibm3"),set_style(e1,"--color",n1[2])},m(l1,c1){insert$1(l1,e1,c1),mount_component(t1,e1,null),append$1(e1,r1),s1&&s1.m(e1,null),o1=!0,i1||(a1=[listen(e1,"mouseover",n1[7]),listen(e1,"mouseleave",n1[8]),listen(e1,"focus",n1[6])],i1=!0)},p(l1,[c1]){const u1={};c1&4&&(u1.color=l1[2]),t1.$set(u1),l1[0]?s1?(s1.p(l1,c1),c1&1&&transition_in(s1,1)):(s1=create_if_block$1C(l1),s1.c(),transition_in(s1,1),s1.m(e1,null)):s1&&(group_outros(),transition_out(s1,1,1,()=>{s1=null}),check_outros()),(!o1||c1&4)&&set_style(e1,"--color",l1[2])},i(l1){o1||(transition_in(t1.$$.fragment,l1),transition_in(s1),o1=!0)},o(l1){transition_out(t1.$$.fragment,l1),transition_out(s1),o1=!1},d(l1){l1&&detach(e1),destroy_component(t1),s1&&s1.d(),i1=!1,run_all(a1)}}}function instance$3a(n1,e1,t1){let r1,o1,i1,a1;component_subscribe(n1,roles,p1=>t1(5,a1=p1));let{roleId:s1}=e1,l1=!1;function c1(p1){bubble.call(this,n1,p1)}const u1=()=>t1(0,l1=!0),f1=()=>t1(0,l1=!1);return n1.$$set=p1=>{"roleId"in p1&&t1(3,s1=p1.roleId)},n1.$$.update=()=>{n1.$$.dirty&8&&t1(2,r1=getRoleColour(s1)),n1.$$.dirty&40&&t1(4,o1=a1.find(p1=>p1._id===s1)),n1.$$.dirty&24&&t1(1,i1=s1===Roles.PUBLIC?"Open to the public":`Requires ${o1==null?void 0:o1.name} access`)},[l1,i1,r1,s1,o1,a1,c1,u1,f1]}class RoleIndicator extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$3a,create_fragment$37,safe_not_equal,{roleId:3})}}const ScreenDetailsModal_svelte_svelte_type_style_lang="";function create_default_slot$28(n1){let e1,t1,r1,o1,i1,a1;function s1(c1){n1[10](c1)}let l1={label:"Enter a URL for the new screen",error:n1[4]};return n1[0]!==void 0&&(l1.value=n1[0]),e1=new Input$5({props:l1}),binding_callbacks.push(()=>bind$3(e1,"value",s1)),e1.$on("change",n1[6]),{c(){create_component(e1.$$.fragment),r1=space$1(),o1=element("div"),i1=text(n1[5]),attr(o1,"class","app-server svelte-ygkcrb"),attr(o1,"title",n1[5])},m(c1,u1){mount_component(e1,c1,u1),insert$1(c1,r1,u1),insert$1(c1,o1,u1),append$1(o1,i1),a1=!0},p(c1,u1){const f1={};u1&16&&(f1.error=c1[4]),!t1&&u1&1&&(t1=!0,f1.value=c1[0],add_flush_callback(()=>t1=!1)),e1.$set(f1),(!a1||u1&32)&&set_data(i1,c1[5]),(!a1||u1&32)&&attr(o1,"title",c1[5])},i(c1){a1||(transition_in(e1.$$.fragment,c1),a1=!0)},o(c1){transition_out(e1.$$.fragment,c1),a1=!1},d(c1){destroy_component(e1,c1),c1&&detach(r1),c1&&detach(o1)}}}function create_fragment$36(n1){let e1,t1;return e1=new ModalContent({props:{size:"M",title:"Screen details",confirmText:n1[2],onConfirm:n1[7],onCancel:n1[1],cancelText:"Back",disabled:!n1[0]||n1[4]||!n1[3],$$slots:{default:[create_default_slot$28]},$$scope:{ctx:n1}}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,[o1]){const i1={};o1&4&&(i1.confirmText=r1[2]),o1&2&&(i1.onCancel=r1[1]),o1&25&&(i1.disabled=!r1[0]||r1[4]||!r1[3]),o1&4145&&(i1.$$scope={dirty:o1,ctx:r1}),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}const appPrefix$1="/app";function instance$39(n1,e1,t1){let r1,{onConfirm:o1}=e1,{onCancel:i1}=e1,{screenUrl:a1}=e1,{screenRole:s1}=e1,{confirmText:l1="Continue"}=e1,c1=!1,u1;const f1=_1=>{_1.detail.startsWith("/")||t1(0,a1="/"+_1.detail),t1(3,c1=!0),t1(0,a1=sanitizeUrl(a1)),p1(a1)?t1(4,u1="This URL is already taken for this access role"):t1(4,u1=null)},p1=_1=>s1?get_store_value(store).screens.some(h1=>h1.routing.route.toLowerCase()===_1.toLowerCase()&&h1.routing.roleId===s1):!1,d1=async()=>{await o1({screenUrl:a1})};function m1(_1){a1=_1,t1(0,a1)}return n1.$$set=_1=>{"onConfirm"in _1&&t1(8,o1=_1.onConfirm),"onCancel"in _1&&t1(1,i1=_1.onCancel),"screenUrl"in _1&&t1(0,a1=_1.screenUrl),"screenRole"in _1&&t1(9,s1=_1.screenRole),"confirmText"in _1&&t1(2,l1=_1.confirmText)},n1.$$.update=()=>{n1.$$.dirty&1&&t1(5,r1=a1?`${window.location.origin}${appPrefix$1}${a1}`:`${window.location.origin}${appPrefix$1}`)},[a1,i1,l1,c1,u1,r1,f1,d1,o1,s1,m1]}class ScreenDetailsModal extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$39,create_fragment$36,safe_not_equal,{onConfirm:8,onCancel:1,screenUrl:0,screenRole:9,confirmText:2})}}const DropdownMenu_svelte_svelte_type_style_lang="";function create_default_slot_4$W(n1){let e1;return{c(){e1=text("Paste inside")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot_3$16(n1){let e1;return{c(){e1=text("Duplicate")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot_2$1m(n1){let e1;return{c(){e1=text("Delete")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot_1$1J(n1){let e1,t1,r1,o1,i1,a1;return e1=new Item({props:{icon:"ShowOneLayer",disabled:n1[3],$$slots:{default:[create_default_slot_4$W]},$$scope:{ctx:n1}}}),e1.$on("click",n1[10]),r1=new Item({props:{icon:"Duplicate",$$slots:{default:[create_default_slot_3$16]},$$scope:{ctx:n1}}}),r1.$on("click",n1[5]),i1=new Item({props:{icon:"Delete",$$slots:{default:[create_default_slot_2$1m]},$$scope:{ctx:n1}}}),i1.$on("click",function(){is_function(n1[1].show)&&n1[1].show.apply(this,arguments)}),{c(){create_component(e1.$$.fragment),t1=space$1(),create_component(r1.$$.fragment),o1=space$1(),create_component(i1.$$.fragment)},m(s1,l1){mount_component(e1,s1,l1),insert$1(s1,t1,l1),mount_component(r1,s1,l1),insert$1(s1,o1,l1),mount_component(i1,s1,l1),a1=!0},p(s1,l1){n1=s1;const c1={};l1&8&&(c1.disabled=n1[3]),l1&8192&&(c1.$$scope={dirty:l1,ctx:n1}),e1.$set(c1);const u1={};l1&8192&&(u1.$$scope={dirty:l1,ctx:n1}),r1.$set(u1);const f1={};l1&8192&&(f1.$$scope={dirty:l1,ctx:n1}),i1.$set(f1)},i(s1){a1||(transition_in(e1.$$.fragment,s1),transition_in(r1.$$.fragment,s1),transition_in(i1.$$.fragment,s1),a1=!0)},o(s1){transition_out(e1.$$.fragment,s1),transition_out(r1.$$.fragment,s1),transition_out(i1.$$.fragment,s1),a1=!1},d(s1){destroy_component(e1,s1),s1&&detach(t1),destroy_component(r1,s1),s1&&detach(o1),destroy_component(i1,s1)}}}function create_control_slot$8(n1){let e1,t1,r1;return t1=new Icon({props:{size:"S",hoverable:!0,name:"MoreSmallList"}}),{c(){e1=element("div"),create_component(t1.$$.fragment),attr(e1,"slot","control"),attr(e1,"class","icon svelte-u6s22l")},m(o1,i1){insert$1(o1,e1,i1),mount_component(t1,e1,null),r1=!0},p:noop$5,i(o1){r1||(transition_in(t1.$$.fragment,o1),r1=!0)},o(o1){transition_out(t1.$$.fragment,o1),r1=!1},d(o1){o1&&detach(e1),destroy_component(t1)}}}function create_default_slot$27(n1){var r1,o1;let e1,t1;return e1=new ScreenDetailsModal({props:{onConfirm:n1[6],screenUrl:(r1=n1[0])==null?void 0:r1.routing.route,screenRole:(o1=n1[0])==null?void 0:o1.routing.roleId,confirmText:"Duplicate"}}),{c(){create_component(e1.$$.fragment)},m(i1,a1){mount_component(e1,i1,a1),t1=!0},p(i1,a1){var l1,c1;const s1={};a1&1&&(s1.screenUrl=(l1=i1[0])==null?void 0:l1.routing.route),a1&1&&(s1.screenRole=(c1=i1[0])==null?void 0:c1.routing.roleId),e1.$set(s1)},i(i1){t1||(transition_in(e1.$$.fragment,i1),t1=!0)},o(i1){transition_out(e1.$$.fragment,i1),t1=!1},d(i1){destroy_component(e1,i1)}}}function create_fragment$35(n1){let e1,t1,r1,o1,i1,a1;e1=new ActionMenu({props:{$$slots:{control:[create_control_slot$8],default:[create_default_slot_1$1J]},$$scope:{ctx:n1}}});let s1={title:"Confirm Deletion",body:"Are you sure you wish to delete this screen?",okText:"Delete screen",onOk:n1[7]};r1=new ConfirmDialog({props:s1}),n1[11](r1);let l1={$$slots:{default:[create_default_slot$27]},$$scope:{ctx:n1}};return i1=new Modal({props:l1}),n1[12](i1),{c(){create_component(e1.$$.fragment),t1=space$1(),create_component(r1.$$.fragment),o1=space$1(),create_component(i1.$$.fragment)},m(c1,u1){mount_component(e1,c1,u1),insert$1(c1,t1,u1),mount_component(r1,c1,u1),insert$1(c1,o1,u1),mount_component(i1,c1,u1),a1=!0},p(c1,[u1]){const f1={};u1&8202&&(f1.$$scope={dirty:u1,ctx:c1}),e1.$set(f1);const p1={};r1.$set(p1);const d1={};u1&8193&&(d1.$$scope={dirty:u1,ctx:c1}),i1.$set(d1)},i(c1){a1||(transition_in(e1.$$.fragment,c1),transition_in(r1.$$.fragment,c1),transition_in(i1.$$.fragment,c1),a1=!0)},o(c1){transition_out(e1.$$.fragment,c1),transition_out(r1.$$.fragment,c1),transition_out(i1.$$.fragment,c1),a1=!1},d(c1){destroy_component(e1,c1),c1&&detach(t1),n1[11](null),destroy_component(r1,c1),c1&&detach(o1),n1[12](null),destroy_component(i1,c1)}}}function instance$38(n1,e1,t1){let r1,o1,i1;component_subscribe(n1,store,h1=>t1(9,i1=h1));let{screenId:a1}=e1,s1,l1;const c1=h1=>{try{store.actions.components.paste(r1.props,h1,r1)}catch{notifications.error("Error saving component")}},u1=()=>{l1.show()},f1=async({screenName:h1,screenUrl:g1})=>{let $1=cloneDeep(r1);delete $1._id,delete $1._rev,$1.props=makeComponentUnique($1.props),$1.routing.route=sanitizeUrl(g1),$1.routing.homeScreen=!1,$1.props._instanceName=h1;try{await store.actions.screens.save($1)}catch{notifications.error("Error duplicating screen")}},p1=async()=>{try{await store.actions.screens.delete(r1),notifications.success("Deleted screen successfully")}catch{notifications.error("Error deleting screen")}},d1=()=>c1("inside");function m1(h1){binding_callbacks[h1?"unshift":"push"](()=>{s1=h1,t1(1,s1)})}function _1(h1){binding_callbacks[h1?"unshift":"push"](()=>{l1=h1,t1(2,l1)})}return n1.$$set=h1=>{"screenId"in h1&&t1(8,a1=h1.screenId)},n1.$$.update=()=>{n1.$$.dirty&768&&t1(0,r1=i1.screens.find(h1=>h1._id===a1)),n1.$$.dirty&512&&t1(3,o1=!i1.componentToPaste)},[r1,s1,l1,o1,c1,u1,f1,p1,a1,i1,d1,m1,_1]}class DropdownMenu extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$38,create_fragment$35,safe_not_equal,{screenId:8})}}const index_svelte_svelte_type_style_lang$f="";function get_each_context$z(n1,e1,t1){const r1=n1.slice();return r1[31]=e1[t1],r1}function create_default_slot_2$1l(n1){let e1;return{c(){e1=text("Screens")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_else_block$B(n1){let e1,t1;return e1=new Layout$m({props:{paddingY:"none",paddingX:"L",$$slots:{default:[create_default_slot_1$1I]},$$scope:{ctx:n1}}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1[1]&8&&(i1.$$scope={dirty:o1,ctx:r1}),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_if_block$1B(n1){let e1=[],t1=new Map,r1,o1,i1=n1[7];const a1=s1=>s1[31]._id;for(let s1=0;s1<i1.length;s1+=1){let l1=get_each_context$z(n1,i1,s1),c1=a1(l1);t1.set(c1,e1[s1]=create_each_block$z(c1,l1))}return{c(){for(let s1=0;s1<e1.length;s1+=1)e1[s1].c();r1=empty$1()},m(s1,l1){for(let c1=0;c1<e1.length;c1+=1)e1[c1].m(s1,l1);insert$1(s1,r1,l1),o1=!0},p(s1,l1){l1[0]&1664&&(i1=s1[7],group_outros(),e1=update_keyed_each(e1,l1,a1,1,s1,i1,t1,r1.parentNode,outro_and_destroy_block,create_each_block$z,r1,get_each_context$z),check_outros())},i(s1){if(!o1){for(let l1=0;l1<i1.length;l1+=1)transition_in(e1[l1]);o1=!0}},o(s1){for(let l1=0;l1<e1.length;l1+=1)transition_out(e1[l1]);o1=!1},d(s1){for(let l1=0;l1<e1.length;l1+=1)e1[l1].d(s1);s1&&detach(r1)}}}function create_default_slot_1$1I(n1){let e1;return{c(){e1=element("div"),e1.textContent="There aren't any screens matching that route",attr(e1,"class","no-results svelte-1vqjoqt")},m(t1,r1){insert$1(t1,e1,r1)},p:noop$5,d(t1){t1&&detach(e1)}}}function create_default_slot$26(n1){let e1,t1,r1;return e1=new DropdownMenu({props:{screenId:n1[31]._id}}),{c(){create_component(e1.$$.fragment),t1=space$1()},m(o1,i1){mount_component(e1,o1,i1),insert$1(o1,t1,i1),r1=!0},p(o1,i1){const a1={};i1[0]&128&&(a1.screenId=o1[31]._id),e1.$set(a1)},i(o1){r1||(transition_in(e1.$$.fragment,o1),r1=!0)},o(o1){transition_out(e1.$$.fragment,o1),r1=!1},d(o1){destroy_component(e1,o1),o1&&detach(t1)}}}function create_icon_slot(n1){let e1,t1,r1,o1;return t1=new RoleIndicator({props:{roleId:n1[31].routing.roleId}}),{c(){e1=element("div"),create_component(t1.$$.fragment),r1=space$1(),attr(e1,"slot","icon"),attr(e1,"class","icon svelte-1vqjoqt")},m(i1,a1){insert$1(i1,e1,a1),mount_component(t1,e1,null),append$1(e1,r1),o1=!0},p(i1,a1){const s1={};a1[0]&128&&(s1.roleId=i1[31].routing.roleId),t1.$set(s1)},i(i1){o1||(transition_in(t1.$$.fragment,i1),o1=!0)},o(i1){transition_out(t1.$$.fragment,i1),o1=!1},d(i1){i1&&detach(e1),destroy_component(t1)}}}function create_each_block$z(n1,e1){let t1,r1,o1;function i1(){return e1[19](e1[31])}return r1=new NavItem({props:{icon:e1[31].routing.homeScreen?"Home":null,indentLevel:0,selected:e1[9].selectedScreenId===e1[31]._id,text:e1[31].routing.route,rightAlignIcon:!0,showTooltip:!0,selectedBy:e1[10][e1[31]._id],$$slots:{icon:[create_icon_slot],default:[create_default_slot$26]},$$scope:{ctx:e1}}}),r1.$on("click",i1),{key:n1,first:null,c(){t1=empty$1(),create_component(r1.$$.fragment),this.first=t1},m(a1,s1){insert$1(a1,t1,s1),mount_component(r1,a1,s1),o1=!0},p(a1,s1){e1=a1;const l1={};s1[0]&128&&(l1.icon=e1[31].routing.homeScreen?"Home":null),s1[0]&640&&(l1.selected=e1[9].selectedScreenId===e1[31]._id),s1[0]&128&&(l1.text=e1[31].routing.route),s1[0]&1152&&(l1.selectedBy=e1[10][e1[31]._id]),s1[0]&128|s1[1]&8&&(l1.$$scope={dirty:s1,ctx:e1}),r1.$set(l1)},i(a1){o1||(transition_in(r1.$$.fragment,a1),o1=!0)},o(a1){transition_out(r1.$$.fragment,a1),o1=!1},d(a1){a1&&detach(t1),destroy_component(r1,a1)}}}function create_fragment$34(n1){let e1,t1,r1,o1,i1,a1,s1,l1,c1,u1,f1,p1,d1,m1,_1,h1,g1,$1,y1,w1,S1,O1,C1;s1=new Body({props:{size:"S",$$slots:{default:[create_default_slot_2$1l]},$$scope:{ctx:n1}}}),u1=new Icon({props:{size:"S",name:"Search"}}),d1=new Icon({props:{name:"Add"}});const M1=[create_if_block$1B,create_else_block$B],z1=[];function D1(H1,B1){var q1;return(q1=H1[7])!=null&&q1.length?0:1}return h1=D1(n1),g1=z1[h1]=M1[h1](n1),{c(){e1=element("div"),t1=element("div"),r1=element("input"),i1=space$1(),a1=element("div"),create_component(s1.$$.fragment),l1=space$1(),c1=element("div"),create_component(u1.$$.fragment),f1=space$1(),p1=element("div"),create_component(d1.$$.fragment),m1=space$1(),_1=element("div"),g1.c(),$1=space$1(),y1=element("div"),r1.readOnly=o1=!n1[1],attr(r1,"class","input svelte-1vqjoqt"),attr(r1,"placeholder","Search for screens"),attr(a1,"class","title svelte-1vqjoqt"),toggle_class(a1,"hide",n1[1]),attr(c1,"class","searchButton svelte-1vqjoqt"),toggle_class(c1,"hide",n1[1]),attr(p1,"class","addButton svelte-1vqjoqt"),toggle_class(p1,"closeButton",n1[1]),attr(t1,"class","header svelte-1vqjoqt"),toggle_class(t1,"scrolling",n1[6]),attr(_1,"class","content svelte-1vqjoqt"),attr(y1,"class","divider svelte-1vqjoqt"),attr(e1,"class","screens svelte-1vqjoqt"),attr(e1,"style",w1=`height:${n1[8]};`),toggle_class(e1,"search",n1[1]),toggle_class(e1,"resizing",n1[2])},m(H1,B1){insert$1(H1,e1,B1),append$1(e1,t1),append$1(t1,r1),set_input_value(r1,n1[0]),n1[18](r1),append$1(t1,i1),append$1(t1,a1),mount_component(s1,a1,null),append$1(t1,l1),append$1(t1,c1),mount_component(u1,c1,null),append$1(t1,f1),append$1(t1,p1),mount_component(d1,p1,null),append$1(e1,m1),append$1(e1,_1),z1[h1].m(_1,null),n1[20](_1),append$1(e1,$1),append$1(e1,y1),n1[22](e1),S1=!0,O1||(C1=[listen(window,"keydown",n1[13]),listen(r1,"input",n1[17]),listen(c1,"click",n1[11]),listen(p1,"click",n1[12]),listen(_1,"scroll",n1[14]),listen(y1,"mousedown",n1[15]),listen(y1,"dblclick",n1[21])],O1=!0)},p(H1,B1){(!S1||B1[0]&2&&o1!==(o1=!H1[1]))&&(r1.readOnly=o1),B1[0]&1&&r1.value!==H1[0]&&set_input_value(r1,H1[0]);const q1={};B1[1]&8&&(q1.$$scope={dirty:B1,ctx:H1}),s1.$set(q1),(!S1||B1[0]&2)&&toggle_class(a1,"hide",H1[1]),(!S1||B1[0]&2)&&toggle_class(c1,"hide",H1[1]),(!S1||B1[0]&2)&&toggle_class(p1,"closeButton",H1[1]),(!S1||B1[0]&64)&&toggle_class(t1,"scrolling",H1[6]);let R1=h1;h1=D1(H1),h1===R1?z1[h1].p(H1,B1):(group_outros(),transition_out(z1[R1],1,1,()=>{z1[R1]=null}),check_outros(),g1=z1[h1],g1?g1.p(H1,B1):(g1=z1[h1]=M1[h1](H1),g1.c()),transition_in(g1,1),g1.m(_1,null)),(!S1||B1[0]&256&&w1!==(w1=`height:${H1[8]};`))&&attr(e1,"style",w1),(!S1||B1[0]&2)&&toggle_class(e1,"search",H1[1]),(!S1||B1[0]&4)&&toggle_class(e1,"resizing",H1[2])},i(H1){S1||(transition_in(s1.$$.fragment,H1),transition_in(u1.$$.fragment,H1),transition_in(d1.$$.fragment,H1),transition_in(g1),S1=!0)},o(H1){transition_out(s1.$$.fragment,H1),transition_out(u1.$$.fragment,H1),transition_out(d1.$$.fragment,H1),transition_out(g1),S1=!1},d(H1){H1&&detach(e1),n1[18](null),destroy_component(s1),destroy_component(u1),destroy_component(d1),z1[h1].d(),n1[20](null),n1[22](null),O1=!1,run_all(C1)}}}function instance$37(n1,e1,t1){let r1,o1,i1,a1,s1,l1;component_subscribe(n1,screensHeight,X1=>t1(8,o1=X1)),component_subscribe(n1,goto,X1=>t1(25,i1=X1)),component_subscribe(n1,sortedScreens,X1=>t1(16,a1=X1)),component_subscribe(n1,store,X1=>t1(9,s1=X1)),component_subscribe(n1,userSelectedResourceMap,X1=>t1(10,l1=X1));let c1=!1,u1=!1,f1="",p1,d1,m1,_1=!1,h1=null,g1;const $1=X1=>new Promise(Y1=>setTimeout(Y1,X1)),y1=async()=>{t1(1,c1=!0),await tick(),p1.focus(),m1.scroll({top:0,behavior:"smooth"}),h1=o1,set_store_value(screensHeight,o1="calc(100% + 1px)",o1)},w1=async()=>{h1&&(set_store_value(screensHeight,o1=h1,o1),h1=null,await $1(300)),t1(1,c1=!1),t1(0,f1="")},S1=(X1,Y1)=>X1.filter(Q1=>!Y1||Q1.routing.route.includes(Y1)),O1=()=>{c1?w1():i1("../new")},C1=X1=>{X1.key==="Escape"&&w1()},M1=X1=>{t1(6,_1=X1.target.scrollTop!==0)},z1=X1=>{set_store_value(screensHeight,o1=`${d1.getBoundingClientRect().height}px`,o1),g1=parseInt(o1)-X1.clientY,t1(2,u1=!0),document.addEventListener("mousemove",D1),document.addEventListener("mouseup",H1)},D1=X1=>{const Y1=Math.max(0,X1.clientY+g1);Y1==null||isNaN(Y1)||set_store_value(screensHeight,o1=`${Y1}px`,o1)},H1=()=>{t1(2,u1=!1),document.removeEventListener("mousemove",D1)};onMount(()=>{(o1==null||isNaN(parseInt(o1)))&&set_store_value(screensHeight,o1="210px",o1)});function B1(){f1=this.value,t1(0,f1)}function q1(X1){binding_callbacks[X1?"unshift":"push"](()=>{p1=X1,t1(3,p1)})}const R1=X1=>store.actions.screens.select(X1._id);function I1(X1){binding_callbacks[X1?"unshift":"push"](()=>{m1=X1,t1(5,m1)})}const F1=()=>screensHeight.set("210px");function j1(X1){binding_callbacks[X1?"unshift":"push"](()=>{d1=X1,t1(4,d1)})}return n1.$$.update=()=>{n1.$$.dirty[0]&65537&&t1(7,r1=S1(a1,f1))},[f1,c1,u1,p1,d1,m1,_1,r1,o1,s1,l1,y1,O1,C1,M1,z1,a1,B1,q1,R1,I1,F1,j1]}class ScreenList extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$37,create_fragment$34,safe_not_equal,{},null,[-1,-1])}}const ComponentDropdownMenu_svelte_svelte_type_style_lang="";function create_default_slot_8$n(n1){let e1;return{c(){e1=text("Delete")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_if_block$1A(n1){let e1,t1;return e1=new Item({props:{icon:"Export",keyBind:"Ctrl+E",$$slots:{default:[create_default_slot_7$z]},$$scope:{ctx:n1}}}),e1.$on("click",n1[7]),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&16384&&(i1.$$scope={dirty:o1,ctx:r1}),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_default_slot_7$z(n1){let e1;return{c(){e1=text("Eject block")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot_6$F(n1){let e1;return{c(){e1=text("Move up")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot_5$M(n1){let e1;return{c(){e1=text("Move down")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot_4$V(n1){let e1;return{c(){e1=text("Duplicate")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot_3$15(n1){let e1;return{c(){e1=text("Cut")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot_2$1k(n1){let e1;return{c(){e1=text("Copy")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot_1$1H(n1){let e1;return{c(){e1=text("Paste")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot$25(n1){let e1,t1,r1,o1,i1,a1,s1,l1,c1,u1,f1,p1,d1,m1,_1;e1=new Item({props:{icon:"Delete",keyBind:"!BackAndroid",$$slots:{default:[create_default_slot_8$n]},$$scope:{ctx:n1}}}),e1.$on("click",n1[6]);let h1=n1[0]&&create_if_block$1A(n1);return o1=new Item({props:{icon:"ChevronUp",keyBind:"Ctrl+!ArrowUp",$$slots:{default:[create_default_slot_6$F]},$$scope:{ctx:n1}}}),o1.$on("click",n1[8]),a1=new Item({props:{icon:"ChevronDown",keyBind:"Ctrl+!ArrowDown",$$slots:{default:[create_default_slot_5$M]},$$scope:{ctx:n1}}}),a1.$on("click",n1[9]),l1=new Item({props:{icon:"Duplicate",keyBind:"Ctrl+D",$$slots:{default:[create_default_slot_4$V]},$$scope:{ctx:n1}}}),l1.$on("click",n1[10]),u1=new Item({props:{icon:"Cut",keyBind:"Ctrl+X",$$slots:{default:[create_default_slot_3$15]},$$scope:{ctx:n1}}}),u1.$on("click",n1[11]),p1=new Item({props:{icon:"Copy",keyBind:"Ctrl+C",$$slots:{default:[create_default_slot_2$1k]},$$scope:{ctx:n1}}}),p1.$on("click",n1[12]),m1=new Item({props:{icon:"LayersSendToBack",keyBind:"Ctrl+V",disabled:n1[1],$$slots:{default:[create_default_slot_1$1H]},$$scope:{ctx:n1}}}),m1.$on("click",n1[13]),{c(){create_component(e1.$$.fragment),t1=space$1(),h1&&h1.c(),r1=space$1(),create_component(o1.$$.fragment),i1=space$1(),create_component(a1.$$.fragment),s1=space$1(),create_component(l1.$$.fragment),c1=space$1(),create_component(u1.$$.fragment),f1=space$1(),create_component(p1.$$.fragment),d1=space$1(),create_component(m1.$$.fragment)},m(g1,$1){mount_component(e1,g1,$1),insert$1(g1,t1,$1),h1&&h1.m(g1,$1),insert$1(g1,r1,$1),mount_component(o1,g1,$1),insert$1(g1,i1,$1),mount_component(a1,g1,$1),insert$1(g1,s1,$1),mount_component(l1,g1,$1),insert$1(g1,c1,$1),mount_component(u1,g1,$1),insert$1(g1,f1,$1),mount_component(p1,g1,$1),insert$1(g1,d1,$1),mount_component(m1,g1,$1),_1=!0},p(g1,$1){const y1={};$1&16384&&(y1.$$scope={dirty:$1,ctx:g1}),e1.$set(y1),g1[0]?h1?(h1.p(g1,$1),$1&1&&transition_in(h1,1)):(h1=create_if_block$1A(g1),h1.c(),transition_in(h1,1),h1.m(r1.parentNode,r1)):h1&&(group_outros(),transition_out(h1,1,1,()=>{h1=null}),check_outros());const w1={};$1&16384&&(w1.$$scope={dirty:$1,ctx:g1}),o1.$set(w1);const S1={};$1&16384&&(S1.$$scope={dirty:$1,ctx:g1}),a1.$set(S1);const O1={};$1&16384&&(O1.$$scope={dirty:$1,ctx:g1}),l1.$set(O1);const C1={};$1&16384&&(C1.$$scope={dirty:$1,ctx:g1}),u1.$set(C1);const M1={};$1&16384&&(M1.$$scope={dirty:$1,ctx:g1}),p1.$set(M1);const z1={};$1&2&&(z1.disabled=g1[1]),$1&16384&&(z1.$$scope={dirty:$1,ctx:g1}),m1.$set(z1)},i(g1){_1||(transition_in(e1.$$.fragment,g1),transition_in(h1),transition_in(o1.$$.fragment,g1),transition_in(a1.$$.fragment,g1),transition_in(l1.$$.fragment,g1),transition_in(u1.$$.fragment,g1),transition_in(p1.$$.fragment,g1),transition_in(m1.$$.fragment,g1),_1=!0)},o(g1){transition_out(e1.$$.fragment,g1),transition_out(h1),transition_out(o1.$$.fragment,g1),transition_out(a1.$$.fragment,g1),transition_out(l1.$$.fragment,g1),transition_out(u1.$$.fragment,g1),transition_out(p1.$$.fragment,g1),transition_out(m1.$$.fragment,g1),_1=!1},d(g1){destroy_component(e1,g1),g1&&detach(t1),h1&&h1.d(g1),g1&&detach(r1),destroy_component(o1,g1),g1&&detach(i1),destroy_component(a1,g1),g1&&detach(s1),destroy_component(l1,g1),g1&&detach(c1),destroy_component(u1,g1),g1&&detach(f1),destroy_component(p1,g1),g1&&detach(d1),destroy_component(m1,g1)}}}function create_control_slot$7(n1){let e1,t1,r1;return t1=new Icon({props:{size:"S",hoverable:!0,name:"MoreSmallList"}}),{c(){e1=element("div"),create_component(t1.$$.fragment),attr(e1,"slot","control"),attr(e1,"class","icon svelte-u6s22l")},m(o1,i1){insert$1(o1,e1,i1),mount_component(t1,e1,null),r1=!0},p:noop$5,i(o1){r1||(transition_in(t1.$$.fragment,o1),r1=!0)},o(o1){transition_out(t1.$$.fragment,o1),r1=!1},d(o1){o1&&detach(e1),destroy_component(t1)}}}function create_fragment$33(n1){let e1,t1;return e1=new ActionMenu({props:{$$slots:{control:[create_control_slot$7],default:[create_default_slot$25]},$$scope:{ctx:n1}}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,[o1]){const i1={};o1&16387&&(i1.$$scope={dirty:o1,ctx:r1}),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function instance$36(n1,e1,t1){let r1,o1,i1,a1;component_subscribe(n1,store,g1=>t1(5,a1=g1));let{component:s1}=e1;const l1=(g1,$1=!1)=>{document.dispatchEvent(new CustomEvent("component-menu",{detail:{key:g1,ctrlKey:$1,id:s1==null?void 0:s1._id}}))},c1=()=>l1("Delete"),u1=()=>l1("e",!0),f1=()=>l1("ArrowUp",!0),p1=()=>l1("ArrowDown",!0),d1=()=>l1("d",!0),m1=()=>l1("x",!0),_1=()=>l1("c",!0),h1=()=>l1("v",!0);return n1.$$set=g1=>{"component"in g1&&t1(3,s1=g1.component)},n1.$$.update=()=>{n1.$$.dirty&8&&t1(4,r1=store.actions.components.getDefinition(s1==null?void 0:s1._component)),n1.$$.dirty&32&&t1(1,o1=!a1.componentToPaste),n1.$$.dirty&16&&t1(0,i1=(r1==null?void 0:r1.block)===!0)},[i1,o1,l1,s1,r1,a1,c1,u1,f1,p1,d1,m1,_1,h1]}class ComponentDropdownMenu extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$36,create_fragment$33,safe_not_equal,{component:3})}}const DropPosition={ABOVE:"above",BELOW:"below",INSIDE:"inside"},initialState={source:null,target:null,targetParent:null,dropPosition:null,dragging:!1,valid:!1},createDNDStore=()=>{const n1=writable(initialState),e1={dragstart:t1=>{!t1||n1.set({source:t1,target:null,dropPosition:null,dragging:!0,valid:!1})},dragover:({component:t1,mousePosition:r1})=>{var f1,p1;const o1=store.actions.components.getDefinition(t1._component),i1=o1==null?void 0:o1.hasChildren,a1=((f1=t1._children)==null?void 0:f1.length)>0;let s1,l1,c1;i1?r1<=.33?s1=DropPosition.ABOVE:r1>=.66?s1=DropPosition.BELOW:s1=DropPosition.INSIDE:s1=r1>.5?DropPosition.BELOW:DropPosition.ABOVE,s1===DropPosition.BELOW&&a1?(l1=t1._children[0],s1=DropPosition.ABOVE):l1=t1;const u1=get_store_value(n1);s1===u1.dropPosition&&(l1==null?void 0:l1._id)===((p1=u1.target)==null?void 0:p1._id)||(l1&&(c1=findComponentParent(get_store_value(selectedScreen).props,l1._id)),n1.update(d1=>{var m1;return{...d1,dropPosition:s1,target:l1,targetParent:c1,valid:((m1=findComponentPath(d1.source,l1._id))==null?void 0:m1.length)===0}}))},reset:()=>{n1.set(initialState)},drop:async()=>{const t1=get_store_value(n1);!t1.valid||!t1.source||!t1.target||(e1.reset(),store.actions.components.copy(t1.source,!0,!1),await store.actions.components.paste(t1.target,t1.dropPosition))}};return{subscribe:n1.subscribe,actions:e1}},dndStore=createDNDStore(),ComponentTree_svelte_svelte_type_style_lang="";function get_each_context$y(n1,e1,t1){const r1=n1.slice();r1[20]=e1[t1],r1[23]=t1;const o1=r1[12](r1[20],r1[4],r1[2]);return r1[21]=o1,r1}function create_default_slot$24(n1){let e1,t1;return e1=new ComponentDropdownMenu({props:{component:n1[20]}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&8&&(i1.component=r1[20]),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_if_block$1z(n1){let e1,t1;return e1=new ComponentTree({props:{components:n1[20]._children,dndStore,level:n1[0]+1}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&8&&(i1.components=r1[20]._children),o1&1&&(i1.level=r1[0]+1),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_each_block$y(n1,e1){let t1,r1,o1,i1,a1,s1,l1,c1;function u1(){return e1[15](e1[20])}function f1(){return e1[16](e1[20])}r1=new NavItem({props:{compact:!0,scrollable:!0,draggable:!0,text:e1[7](e1[20]),icon:e1[8](e1[20]),withArrow:e1[9](e1[20]),indentLevel:e1[0],selected:e1[1].selectedComponentId===e1[20]._id,opened:e1[21],highlighted:e1[13](e1[20]),selectedBy:e1[5][e1[20]._id],$$slots:{default:[create_default_slot$24]},$$scope:{ctx:e1}}}),r1.$on("dragend",dndStore.actions.reset),r1.$on("dragstart",u1),r1.$on("dragover",function(){is_function(e1[6](e1[20],e1[23]))&&e1[6](e1[20],e1[23]).apply(this,arguments)}),r1.$on("iconClick",f1),r1.$on("drop",e1[11]);let p1=e1[21]&&create_if_block$1z(e1);function d1(){return e1[17](e1[20])}return{key:n1,first:null,c(){t1=element("li"),create_component(r1.$$.fragment),o1=space$1(),p1&&p1.c(),i1=space$1(),attr(t1,"id",a1=`component-${e1[20]._id}`),attr(t1,"class","svelte-kv7hxn"),this.first=t1},m(m1,_1){insert$1(m1,t1,_1),mount_component(r1,t1,null),append$1(t1,o1),p1&&p1.m(t1,null),append$1(t1,i1),s1=!0,l1||(c1=listen(t1,"click",stop_propagation(d1)),l1=!0)},p(m1,_1){e1=m1;const h1={};_1&8&&(h1.text=e1[7](e1[20])),_1&8&&(h1.icon=e1[8](e1[20])),_1&8&&(h1.withArrow=e1[9](e1[20])),_1&1&&(h1.indentLevel=e1[0]),_1&10&&(h1.selected=e1[1].selectedComponentId===e1[20]._id),_1&28&&(h1.opened=e1[21]),_1&8&&(h1.highlighted=e1[13](e1[20])),_1&40&&(h1.selectedBy=e1[5][e1[20]._id]),_1&16777224&&(h1.$$scope={dirty:_1,ctx:e1}),r1.$set(h1),e1[21]?p1?(p1.p(e1,_1),_1&28&&transition_in(p1,1)):(p1=create_if_block$1z(e1),p1.c(),transition_in(p1,1),p1.m(t1,i1)):p1&&(group_outros(),transition_out(p1,1,1,()=>{p1=null}),check_outros()),(!s1||_1&8&&a1!==(a1=`component-${e1[20]._id}`))&&attr(t1,"id",a1)},i(m1){s1||(transition_in(r1.$$.fragment,m1),transition_in(p1),s1=!0)},o(m1){transition_out(r1.$$.fragment,m1),transition_out(p1),s1=!1},d(m1){m1&&detach(t1),destroy_component(r1),p1&&p1.d(),l1=!1,c1()}}}function create_fragment$32(n1){let e1,t1=[],r1=new Map,o1,i1=n1[3]||[];const a1=s1=>s1[20]._id;for(let s1=0;s1<i1.length;s1+=1){let l1=get_each_context$y(n1,i1,s1),c1=a1(l1);r1.set(c1,t1[s1]=create_each_block$y(c1,l1))}return{c(){e1=element("ul");for(let s1=0;s1<t1.length;s1+=1)t1[s1].c();attr(e1,"class","svelte-kv7hxn")},m(s1,l1){insert$1(s1,e1,l1);for(let c1=0;c1<t1.length;c1+=1)t1[c1].m(e1,null);o1=!0},p(s1,[l1]){l1&16383&&(i1=s1[3]||[],group_outros(),t1=update_keyed_each(t1,l1,a1,1,s1,i1,r1,e1,outro_and_destroy_block,create_each_block$y,null,get_each_context$y),check_outros())},i(s1){if(!o1){for(let l1=0;l1<i1.length;l1+=1)transition_in(t1[l1]);o1=!0}},o(s1){for(let l1=0;l1<t1.length;l1+=1)transition_out(t1[l1]);o1=!1},d(s1){s1&&detach(e1);for(let l1=0;l1<t1.length;l1+=1)t1[l1].d()}}}function instance$35(n1,e1,t1){let r1,o1,i1,a1,s1;component_subscribe(n1,selectedComponent,C1=>t1(18,o1=C1)),component_subscribe(n1,store,C1=>t1(1,i1=C1)),component_subscribe(n1,selectedComponentPath,C1=>t1(4,a1=C1)),component_subscribe(n1,userSelectedResourceMap,C1=>t1(5,s1=C1));let{components:l1=[]}=e1,{level:c1=0}=e1,u1={};const f1=(C1,M1)=>z1=>{const D1=z1.offsetY/z1.currentTarget.offsetHeight;return dndStore.actions.dragover({component:C1,index:M1,mousePosition:D1}),!1},p1=C1=>{if(C1._instanceName)return C1._instanceName;const M1=C1._component.replace("@budibase/standard-components/","")||"component";return capitalise(M1)},d1=C1=>{const M1=store.actions.components.getDefinition(C1==null?void 0:C1._component);return M1==null?void 0:M1.icon},m1=C1=>{const M1=store.actions.components.getDefinition(C1==null?void 0:C1._component);return M1==null?void 0:M1.hasChildren},_1=C1=>{var M1;return m1(C1)&&((M1=C1._children)==null?void 0:M1.length)};function h1(C1){u1[C1]?delete u1[C1]:t1(2,u1[C1]=!0,u1),t1(2,u1)}const g1=async C1=>{C1.stopPropagation();try{await dndStore.actions.drop()}catch(M1){notifications.error(M1||"Error saving component")}},$1=(C1,M1,z1)=>{var D1;return(D1=C1==null?void 0:C1._children)!=null&&D1.length?M1.includes(C1._id)?!0:!z1[C1._id]:!1},y1=C1=>{var D1,H1,B1;const M1=(D1=get_store_value(selectedComponent))==null?void 0:D1._id,z1=(H1=get_store_value(selectedScreen))==null?void 0:H1.props._id;return!M1||M1===z1?!1:((B1=findComponentPath(o1,C1._id))==null?void 0:B1.length)>0},w1=C1=>dndStore.actions.dragstart(C1),S1=C1=>h1(C1._id),O1=C1=>{set_store_value(store,i1.selectedComponentId=C1._id,i1)};return n1.$$set=C1=>{"components"in C1&&t1(14,l1=C1.components),"level"in C1&&t1(0,c1=C1.level)},n1.$$.update=()=>{n1.$$.dirty&16386&&t1(3,r1=l1==null?void 0:l1.filter(C1=>{var M1,z1;return!((M1=i1.componentToPaste)!=null&&M1.isCut)||C1._id!==((z1=i1.componentToPaste)==null?void 0:z1._id)}))},[c1,i1,u1,r1,a1,s1,f1,p1,d1,_1,h1,g1,$1,y1,l1,w1,S1,O1]}class ComponentTree extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$35,create_fragment$32,safe_not_equal,{components:14,level:0})}}const ScreenslotDropdownMenu_svelte_svelte_type_style_lang="";function create_if_block$1y(n1){let e1,t1;return e1=new ActionMenu({props:{$$slots:{control:[create_control_slot$6],default:[create_default_slot$23]},$$scope:{ctx:n1}}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&514&&(i1.$$scope={dirty:o1,ctx:r1}),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_default_slot_2$1j(n1){let e1;return{c(){e1=text("Copy")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot_1$1G(n1){let e1;return{c(){e1=text("Paste")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot$23(n1){let e1,t1,r1,o1;return e1=new Item({props:{icon:"Copy",keyBind:"Ctrl+C",$$slots:{default:[create_default_slot_2$1j]},$$scope:{ctx:n1}}}),e1.$on("click",n1[7]),r1=new Item({props:{icon:"LayersSendToBack",keyBind:"Ctrl+V",disabled:n1[1],$$slots:{default:[create_default_slot_1$1G]},$$scope:{ctx:n1}}}),r1.$on("click",n1[8]),{c(){create_component(e1.$$.fragment),t1=space$1(),create_component(r1.$$.fragment)},m(i1,a1){mount_component(e1,i1,a1),insert$1(i1,t1,a1),mount_component(r1,i1,a1),o1=!0},p(i1,a1){const s1={};a1&512&&(s1.$$scope={dirty:a1,ctx:i1}),e1.$set(s1);const l1={};a1&2&&(l1.disabled=i1[1]),a1&512&&(l1.$$scope={dirty:a1,ctx:i1}),r1.$set(l1)},i(i1){o1||(transition_in(e1.$$.fragment,i1),transition_in(r1.$$.fragment,i1),o1=!0)},o(i1){transition_out(e1.$$.fragment,i1),transition_out(r1.$$.fragment,i1),o1=!1},d(i1){destroy_component(e1,i1),i1&&detach(t1),destroy_component(r1,i1)}}}function create_control_slot$6(n1){let e1,t1,r1;return t1=new Icon({props:{size:"S",hoverable:!0,name:"MoreSmallList"}}),{c(){e1=element("div"),create_component(t1.$$.fragment),attr(e1,"slot","control"),attr(e1,"class","icon svelte-u6s22l")},m(o1,i1){insert$1(o1,e1,i1),mount_component(t1,e1,null),r1=!0},p:noop$5,i(o1){r1||(transition_in(t1.$$.fragment,o1),r1=!0)},o(o1){transition_out(t1.$$.fragment,o1),r1=!1},d(o1){o1&&detach(e1),destroy_component(t1)}}}function create_fragment$31(n1){let e1,t1,r1=n1[0]&&create_if_block$1y(n1);return{c(){r1&&r1.c(),e1=empty$1()},m(o1,i1){r1&&r1.m(o1,i1),insert$1(o1,e1,i1),t1=!0},p(o1,[i1]){o1[0]?r1?(r1.p(o1,i1),i1&1&&transition_in(r1,1)):(r1=create_if_block$1y(o1),r1.c(),transition_in(r1,1),r1.m(e1.parentNode,e1)):r1&&(group_outros(),transition_out(r1,1,1,()=>{r1=null}),check_outros())},i(o1){t1||(transition_in(r1),t1=!0)},o(o1){transition_out(r1),t1=!1},d(o1){r1&&r1.d(o1),o1&&detach(e1)}}}function instance$34(n1,e1,t1){let r1,o1,i1,a1;component_subscribe(n1,store,p1=>t1(6,a1=p1));let{component:s1}=e1;const l1=(p1=!1)=>{store.actions.components.copy(s1,p1)},c1=p1=>{try{store.actions.components.paste(s1,p1)}catch{notifications.error("Error saving component")}},u1=()=>l1(!1),f1=()=>c1("inside");return n1.$$set=p1=>{"component"in p1&&t1(4,s1=p1.component)},n1.$$.update=()=>{n1.$$.dirty&16&&t1(5,r1=store.actions.components.getDefinition(s1==null?void 0:s1._component)),n1.$$.dirty&64&&t1(1,o1=!a1.componentToPaste),n1.$$.dirty&32&&t1(0,i1=(r1==null?void 0:r1.editable)!==!1&&(r1==null?void 0:r1.static)!==!0)},[i1,o1,l1,c1,s1,r1,a1,u1,f1]}class ScreenslotDropdownMenu extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$34,create_fragment$31,safe_not_equal,{component:4})}}const DNDPositionIndicator_svelte_svelte_type_style_lang="";function create_if_block$1x(n1){let e1,t1;return{c(){e1=element("div"),attr(e1,"class","indicator svelte-9uy3y5"),set_style(e1,"--x",n1[2]+"px"),set_style(e1,"--y",n1[3]+"px"),set_style(e1,"--width",n1[4]+"px"),set_style(e1,"--height",n1[5]+"px"),toggle_class(e1,"above",n1[1]===DropPosition.ABOVE),toggle_class(e1,"below",n1[1]===DropPosition.BELOW),toggle_class(e1,"inside",n1[1]===DropPosition.INSIDE)},m(r1,o1){insert$1(r1,e1,o1)},p(r1,o1){o1&4&&set_style(e1,"--x",r1[2]+"px"),o1&8&&set_style(e1,"--y",r1[3]+"px"),o1&16&&set_style(e1,"--width",r1[4]+"px"),o1&32&&set_style(e1,"--height",r1[5]+"px"),o1&2&&toggle_class(e1,"above",r1[1]===DropPosition.ABOVE),o1&2&&toggle_class(e1,"below",r1[1]===DropPosition.BELOW),o1&2&&toggle_class(e1,"inside",r1[1]===DropPosition.INSIDE)},i(r1){t1||add_render_callback(()=>{t1=create_in_transition(e1,fade,{duration:130}),t1.start()})},o:noop$5,d(r1){r1&&detach(e1)}}}function create_fragment$30(n1){let e1,t1=n1[0]&&n1[1]&&create_if_block$1x(n1);return{c(){t1&&t1.c(),e1=empty$1()},m(r1,o1){t1&&t1.m(r1,o1),insert$1(r1,e1,o1)},p(r1,[o1]){r1[0]&&r1[1]?t1?(t1.p(r1,o1),o1&3&&transition_in(t1,1)):(t1=create_if_block$1x(r1),t1.c(),transition_in(t1,1),t1.m(e1.parentNode,e1)):t1&&(t1.d(1),t1=null)},i(r1){transition_in(t1)},o:noop$5,d(r1){t1&&t1.d(r1),r1&&detach(e1)}}}function instance$33(n1,e1,t1){let{component:r1}=e1,{position:o1}=e1,i1,a1,s1,l1;const c1=u1=>{var d1;const f1=document.getElementById(`component-${u1==null?void 0:u1._id}`),p1=(d1=f1==null?void 0:f1.children[0])==null?void 0:d1.children[0];!f1||(t1(2,i1=p1.offsetLeft),t1(3,a1=p1.offsetTop),t1(4,s1=p1.clientWidth),t1(5,l1=p1.clientHeight))};return n1.$$set=u1=>{"component"in u1&&t1(0,r1=u1.component),"position"in u1&&t1(1,o1=u1.position)},n1.$$.update=()=>{n1.$$.dirty&1&&c1(r1)},[r1,o1,i1,a1,s1,l1]}class DNDPositionIndicator extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$33,create_fragment$30,safe_not_equal,{component:0,position:1})}}function create_fragment$2$(n1){var s1,l1;let e1,t1,r1,o1,i1={title:"Confirm Deletion",body:`Are you sure you want to delete "${(s1=n1[2])==null?void 0:s1._instanceName}"?`,okText:"Delete Component",onOk:n1[4]};e1=new ConfirmDialog({props:i1}),n1[5](e1);let a1={title:"Eject block",body:`Ejecting a block breaks it down into multiple components and cannot be undone. Are you sure you want to eject "${(l1=n1[3])==null?void 0:l1._instanceName}"?`,onOk:n1[6],okText:"Eject block"};return r1=new ConfirmDialog({props:a1}),n1[7](r1),{c(){create_component(e1.$$.fragment),t1=space$1(),create_component(r1.$$.fragment)},m(c1,u1){mount_component(e1,c1,u1),insert$1(c1,t1,u1),mount_component(r1,c1,u1),o1=!0},p(c1,[u1]){var d1,m1;const f1={};u1&4&&(f1.body=`Are you sure you want to delete "${(d1=c1[2])==null?void 0:d1._instanceName}"?`),u1&4&&(f1.onOk=c1[4]),e1.$set(f1);const p1={};u1&8&&(p1.body=`Ejecting a block breaks it down into multiple components and cannot be undone. Are you sure you want to eject "${(m1=c1[3])==null?void 0:m1._instanceName}"?`),u1&8&&(p1.onOk=c1[6]),r1.$set(p1)},i(c1){o1||(transition_in(e1.$$.fragment,c1),transition_in(r1.$$.fragment,c1),o1=!0)},o(c1){transition_out(e1.$$.fragment,c1),transition_out(r1.$$.fragment,c1),o1=!1},d(c1){n1[5](null),destroy_component(e1,c1),c1&&detach(t1),n1[7](null),destroy_component(r1,c1)}}}function instance$32(n1,e1,t1){let r1,o1,i1,a1,s1;component_subscribe(n1,selectedScreen,w1=>t1(8,r1=w1)),component_subscribe(n1,selectedComponent,w1=>t1(9,o1=w1)),component_subscribe(n1,store,w1=>t1(10,i1=w1)),component_subscribe(n1,goto,w1=>t1(11,a1=w1)),component_subscribe(n1,isActive,w1=>t1(12,s1=w1));let l1,c1,u1,f1;const p1={["Ctrl+ArrowUp"]:async w1=>{await store.actions.components.moveUp(w1)},["Ctrl+ArrowDown"]:async w1=>{await store.actions.components.moveDown(w1)},["Ctrl+c"]:w1=>{store.actions.components.copy(w1,!1)},["Ctrl+x"]:w1=>{store.actions.components.copy(w1,!0)},["Ctrl+v"]:async w1=>{await store.actions.components.paste(w1,"inside")},["Ctrl+d"]:async w1=>{store.actions.components.copy(w1),await store.actions.components.paste(w1,"below")},["Ctrl+e"]:w1=>{t1(3,f1=w1),c1.show()},["Ctrl+Enter"]:()=>{a1("./:componentId/new")},Delete:w1=>{if((w1==null?void 0:w1._id)===r1.props._id)return!1;t1(2,u1=w1),l1.show()},ArrowUp:()=>{store.actions.components.selectPrevious()},ArrowDown:()=>{store.actions.components.selectNext()},Escape:()=>{s1("./:componentId/new")&&a1(`./${i1.selectedComponentId}`)}},d1=async({event:w1,component:S1,key:O1,ctrlKey:C1=!1,shiftKey:M1=!1})=>{if(!S1||!O1)return!1;try{O1==="Backspace"&&(O1="Delete"),M1&&(O1="Shift+"+O1),C1&&(O1="Ctrl+"+O1);const z1=p1[O1];return z1?(w1&&O1!=="Escape"&&(w1.preventDefault(),w1.stopPropagation()),await z1(S1)):!1}catch(z1){notifications.error(z1||"Error handling key press")}},m1=async w1=>{var C1,M1,z1;if(w1.repeat)return;const S1=(C1=document.activeElement)==null?void 0:C1.tagName.toLowerCase();if(!((((z1=(M1=document.activeElement)==null?void 0:M1.classList)==null?void 0:z1.contains("cm-content"))||["input","textarea"].indexOf(S1)!==-1)&&w1.key!=="Escape"))return await d1({event:w1,component:o1,key:w1.key,ctrlKey:w1.ctrlKey||w1.metaKey,shiftKey:w1.shiftKey})},_1=async w1=>{const{id:S1,key:O1,ctrlKey:C1,shiftKey:M1}=w1.detail,z1=findComponent(r1.props,S1);return await d1({event:null,component:z1,key:O1,ctrlKey:C1,shiftKey:M1})};onMount(()=>(document.addEventListener("keydown",m1),document.addEventListener("component-menu",_1),()=>{document.removeEventListener("keydown",m1),document.removeEventListener("component-menu",_1)}));const h1=()=>store.actions.components.delete(u1);function g1(w1){binding_callbacks[w1?"unshift":"push"](()=>{l1=w1,t1(0,l1)})}const $1=()=>store.actions.components.requestEjectBlock(f1==null?void 0:f1._id);function y1(w1){binding_callbacks[w1?"unshift":"push"](()=>{c1=w1,t1(1,c1)})}return[l1,c1,u1,f1,h1,g1,$1,y1]}class ComponentKeyHandler extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$32,create_fragment$2$,safe_not_equal,{})}}const ComponentScrollWrapper_svelte_svelte_type_style_lang="";function create_fragment$2_(n1){let e1,t1,r1,o1;const i1=n1[3].default,a1=create_slot(i1,n1,n1[2],null);return{c(){e1=element("div"),a1&&a1.c(),attr(e1,"ondragover","return false"),attr(e1,"ondragenter","return false"),attr(e1,"class","svelte-i1q9g5")},m(s1,l1){insert$1(s1,e1,l1),a1&&a1.m(e1,null),n1[5](e1),t1=!0,r1||(o1=[listen(e1,"scroll",n1[4]),listen(e1,"drop",n1[1])],r1=!0)},p(s1,[l1]){a1&&a1.p&&(!t1||l1&4)&&update_slot_base(a1,i1,s1,s1[2],t1?get_slot_changes(i1,s1[2],l1,null):get_all_dirty_from_scope(s1[2]),null)},i(s1){t1||(transition_in(a1,s1),t1=!0)},o(s1){transition_out(a1,s1),t1=!1},d(s1){s1&&detach(e1),a1&&a1.d(s1),n1[5](null),r1=!1,run_all(o1)}}}function instance$31(n1,e1,t1){let{$$slots:r1={},$$scope:o1}=e1,i1;setContext("scroll",{scrollTo:u1=>{if(!u1)return;const f1=310,p1=32,{scrollLeft:d1,scrollTop:m1,offsetHeight:_1}=i1;let h1=i1.getBoundingClientRect(),g1={};const $1=u1.left+u1.width+d1+16;$1>f1?g1.left=$1-f1:g1.left=0,g1.left===d1&&delete g1.left;const y1=u1.top-(h1==null?void 0:h1.top)+m1;y1>m1+_1-2*p1?g1.top=y1-_1+2*p1:y1<m1+p1?g1.top=y1-p1:delete g1.top,!(g1.left==null&&g1.top==null)&&i1.scroll({...g1,behavior:"smooth"})}});const s1=async()=>{try{await dndStore.actions.drop()}catch(u1){console.error(u1),notifications.error("Error saving component")}};function l1(u1){bubble.call(this,n1,u1)}function c1(u1){binding_callbacks[u1?"unshift":"push"](()=>{i1=u1,t1(0,i1)})}return n1.$$set=u1=>{"$$scope"in u1&&t1(2,o1=u1.$$scope)},[i1,s1,o1,r1,l1,c1]}class ComponentScrollWrapper extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$31,create_fragment$2_,safe_not_equal,{})}}const index_svelte_svelte_type_style_lang$e="";function create_default_slot_2$1i(n1){let e1;return{c(){e1=text("Components")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot_1$1F(n1){var r1;let e1,t1;return e1=new ScreenslotDropdownMenu({props:{component:(r1=n1[3])==null?void 0:r1.props}}),{c(){create_component(e1.$$.fragment)},m(o1,i1){mount_component(e1,o1,i1),t1=!0},p(o1,i1){var s1;const a1={};i1&8&&(a1.component=(s1=o1[3])==null?void 0:s1.props),e1.$set(a1)},i(o1){t1||(transition_in(e1.$$.fragment,o1),t1=!0)},o(o1){transition_out(e1.$$.fragment,o1),t1=!1},d(o1){destroy_component(e1,o1)}}}function create_if_block$1w(n1){let e1,t1,r1,o1;e1=new DNDPositionIndicator({props:{component:n1[4].target,position:n1[4].dropPosition}});let i1=n1[4].dropPosition!==DropPosition.INSIDE&&create_if_block_1$P(n1);return{c(){create_component(e1.$$.fragment),t1=space$1(),i1&&i1.c(),r1=empty$1()},m(a1,s1){mount_component(e1,a1,s1),insert$1(a1,t1,s1),i1&&i1.m(a1,s1),insert$1(a1,r1,s1),o1=!0},p(a1,s1){const l1={};s1&16&&(l1.component=a1[4].target),s1&16&&(l1.position=a1[4].dropPosition),e1.$set(l1),a1[4].dropPosition!==DropPosition.INSIDE?i1?(i1.p(a1,s1),s1&16&&transition_in(i1,1)):(i1=create_if_block_1$P(a1),i1.c(),transition_in(i1,1),i1.m(r1.parentNode,r1)):i1&&(group_outros(),transition_out(i1,1,1,()=>{i1=null}),check_outros())},i(a1){o1||(transition_in(e1.$$.fragment,a1),transition_in(i1),o1=!0)},o(a1){transition_out(e1.$$.fragment,a1),transition_out(i1),o1=!1},d(a1){destroy_component(e1,a1),a1&&detach(t1),i1&&i1.d(a1),a1&&detach(r1)}}}function create_if_block_1$P(n1){let e1,t1;return e1=new DNDPositionIndicator({props:{component:n1[4].targetParent,position:DropPosition.INSIDE}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&16&&(i1.component=r1[4].targetParent),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_default_slot$22(n1){var f1;let e1,t1,r1,o1,i1,a1,s1,l1,c1;r1=new NavItem({props:{text:"Screen",indentLevel:0,selected:n1[1].selectedComponentId===`${n1[1].selectedScreenId}-screen`,opened:!0,scrollable:!0,icon:"WebPage",id:"component-screen",selectedBy:n1[2][`${n1[1].selectedScreenId}-screen`],$$slots:{default:[create_default_slot_1$1F]},$$scope:{ctx:n1}}}),r1.$on("drop",n1[6]),r1.$on("click",n1[8]),i1=new NavItem({props:{text:"Navigation",indentLevel:0,selected:n1[1].selectedComponentId===`${n1[1].selectedScreenId}-navigation`,opened:!0,scrollable:!0,icon:n1[3].showNavigation?"Visibility":"VisibilityOff",id:"component-nav",selectedBy:n1[2][`${n1[1].selectedScreenId}-navigation`]}}),i1.$on("drop",n1[6]),i1.$on("click",n1[9]),s1=new ComponentTree({props:{level:0,components:(f1=n1[3])==null?void 0:f1.props._children}});let u1=n1[4].dragging&&n1[4].valid&&create_if_block$1w(n1);return{c(){e1=element("ul"),t1=element("li"),create_component(r1.$$.fragment),o1=space$1(),create_component(i1.$$.fragment),a1=space$1(),create_component(s1.$$.fragment),l1=space$1(),u1&&u1.c(),attr(t1,"class","svelte-2glawg"),attr(e1,"class","svelte-2glawg")},m(p1,d1){insert$1(p1,e1,d1),append$1(e1,t1),mount_component(r1,t1,null),append$1(t1,o1),mount_component(i1,t1,null),append$1(t1,a1),mount_component(s1,t1,null),append$1(t1,l1),u1&&u1.m(t1,null),c1=!0},p(p1,d1){var g1;const m1={};d1&2&&(m1.selected=p1[1].selectedComponentId===`${p1[1].selectedScreenId}-screen`),d1&6&&(m1.selectedBy=p1[2][`${p1[1].selectedScreenId}-screen`]),d1&4104&&(m1.$$scope={dirty:d1,ctx:p1}),r1.$set(m1);const _1={};d1&2&&(_1.selected=p1[1].selectedComponentId===`${p1[1].selectedScreenId}-navigation`),d1&8&&(_1.icon=p1[3].showNavigation?"Visibility":"VisibilityOff"),d1&6&&(_1.selectedBy=p1[2][`${p1[1].selectedScreenId}-navigation`]),i1.$set(_1);const h1={};d1&8&&(h1.components=(g1=p1[3])==null?void 0:g1.props._children),s1.$set(h1),p1[4].dragging&&p1[4].valid?u1?(u1.p(p1,d1),d1&16&&transition_in(u1,1)):(u1=create_if_block$1w(p1),u1.c(),transition_in(u1,1),u1.m(t1,null)):u1&&(group_outros(),transition_out(u1,1,1,()=>{u1=null}),check_outros())},i(p1){c1||(transition_in(r1.$$.fragment,p1),transition_in(i1.$$.fragment,p1),transition_in(s1.$$.fragment,p1),transition_in(u1),c1=!0)},o(p1){transition_out(r1.$$.fragment,p1),transition_out(i1.$$.fragment,p1),transition_out(s1.$$.fragment,p1),transition_out(u1),c1=!1},d(p1){p1&&detach(e1),destroy_component(r1),destroy_component(i1),destroy_component(s1),u1&&u1.d()}}}function create_fragment$2Z(n1){let e1,t1,r1,o1,i1,a1,s1,l1,c1,u1,f1,p1,d1,m1;return r1=new Body({props:{size:"S",$$slots:{default:[create_default_slot_2$1i]},$$scope:{ctx:n1}}}),a1=new Icon({props:{name:"Add"}}),c1=new ComponentScrollWrapper({props:{$$slots:{default:[create_default_slot$22]},$$scope:{ctx:n1}}}),c1.$on("scroll",n1[7]),f1=new ComponentKeyHandler({}),{c(){e1=element("div"),t1=element("div"),create_component(r1.$$.fragment),o1=space$1(),i1=element("div"),create_component(a1.$$.fragment),s1=space$1(),l1=element("div"),create_component(c1.$$.fragment),u1=space$1(),create_component(f1.$$.fragment),attr(i1,"class","addButton svelte-2glawg"),attr(t1,"class","header svelte-2glawg"),toggle_class(t1,"scrolling",n1[0]),attr(l1,"class","list-panel svelte-2glawg"),attr(e1,"class","components svelte-2glawg")},m(_1,h1){insert$1(_1,e1,h1),append$1(e1,t1),mount_component(r1,t1,null),append$1(t1,o1),append$1(t1,i1),mount_component(a1,i1,null),append$1(e1,s1),append$1(e1,l1),mount_component(c1,l1,null),append$1(e1,u1),mount_component(f1,e1,null),p1=!0,d1||(m1=listen(i1,"click",n1[5]),d1=!0)},p(_1,[h1]){const g1={};h1&4096&&(g1.$$scope={dirty:h1,ctx:_1}),r1.$set(g1),(!p1||h1&1)&&toggle_class(t1,"scrolling",_1[0]);const $1={};h1&4126&&($1.$$scope={dirty:h1,ctx:_1}),c1.$set($1)},i(_1){p1||(transition_in(r1.$$.fragment,_1),transition_in(a1.$$.fragment,_1),transition_in(c1.$$.fragment,_1),transition_in(f1.$$.fragment,_1),p1=!0)},o(_1){transition_out(r1.$$.fragment,_1),transition_out(a1.$$.fragment,_1),transition_out(c1.$$.fragment,_1),transition_out(f1.$$.fragment,_1),p1=!1},d(_1){_1&&detach(e1),destroy_component(r1),destroy_component(a1),destroy_component(c1),destroy_component(f1),d1=!1,m1()}}}function instance$30(n1,e1,t1){let r1,o1,i1,a1,s1,l1;component_subscribe(n1,goto,_1=>t1(10,r1=_1)),component_subscribe(n1,isActive,_1=>t1(11,o1=_1)),component_subscribe(n1,store,_1=>t1(1,i1=_1)),component_subscribe(n1,userSelectedResourceMap,_1=>t1(2,a1=_1)),component_subscribe(n1,selectedScreen,_1=>t1(3,s1=_1)),component_subscribe(n1,dndStore,_1=>t1(4,l1=_1));let c1=!1;return[c1,i1,a1,s1,l1,()=>{o1("./:componentId/new")?r1("./:componentId"):r1("./:componentId/new")},async()=>{try{await dndStore.actions.drop()}catch(_1){console.error(_1),notifications.error("Error saving component")}},_1=>{t1(0,c1=_1.target.scrollTop!==0)},()=>{set_store_value(store,i1.selectedComponentId=`${i1.selectedScreenId}-screen`,i1)},()=>{set_store_value(store,i1.selectedComponentId=`${i1.selectedScreenId}-navigation`,i1)}]}class ComponentList extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$30,create_fragment$2Z,safe_not_equal,{})}}const LeftPanel_svelte_svelte_type_style_lang="";function create_fragment$2Y(n1){let e1,t1,r1,o1,i1;return t1=new ScreenList({}),o1=new ComponentList({}),{c(){e1=element("div"),create_component(t1.$$.fragment),r1=space$1(),create_component(o1.$$.fragment),attr(e1,"class","panel svelte-1hjh5aa")},m(a1,s1){insert$1(a1,e1,s1),mount_component(t1,e1,null),append$1(e1,r1),mount_component(o1,e1,null),i1=!0},p:noop$5,i(a1){i1||(transition_in(t1.$$.fragment,a1),transition_in(o1.$$.fragment,a1),i1=!0)},o(a1){transition_out(t1.$$.fragment,a1),transition_out(o1.$$.fragment,a1),i1=!1},d(a1){a1&&detach(e1),destroy_component(t1),destroy_component(o1)}}}class LeftPanel extends SvelteComponent{constructor(e1){super(),init$2(this,e1,null,create_fragment$2Y,safe_not_equal,{})}}const _layout_svelte_svelte_type_style_lang$4="";function create_if_block$1v(n1){let e1,t1,r1,o1,i1,a1,s1;r1=new LeftPanel({}),i1=new AppPanel({});const l1=n1[2].default,c1=create_slot(l1,n1,n1[1],null);return{c(){e1=element("div"),t1=element("div"),create_component(r1.$$.fragment),o1=space$1(),create_component(i1.$$.fragment),a1=space$1(),c1&&c1.c(),attr(t1,"class","content svelte-vfl1cc"),attr(e1,"class","design svelte-vfl1cc")},m(u1,f1){insert$1(u1,e1,f1),append$1(e1,t1),mount_component(r1,t1,null),append$1(t1,o1),mount_component(i1,t1,null),append$1(t1,a1),c1&&c1.m(t1,null),s1=!0},p(u1,f1){c1&&c1.p&&(!s1||f1&2)&&update_slot_base(c1,l1,u1,u1[1],s1?get_slot_changes(l1,u1[1],f1,null):get_all_dirty_from_scope(u1[1]),null)},i(u1){s1||(transition_in(r1.$$.fragment,u1),transition_in(i1.$$.fragment,u1),transition_in(c1,u1),s1=!0)},o(u1){transition_out(r1.$$.fragment,u1),transition_out(i1.$$.fragment,u1),transition_out(c1,u1),s1=!1},d(u1){u1&&detach(e1),destroy_component(r1),destroy_component(i1),c1&&c1.d(u1)}}}function create_fragment$2X(n1){let e1,t1,r1=n1[0]&&create_if_block$1v(n1);return{c(){r1&&r1.c(),e1=empty$1()},m(o1,i1){r1&&r1.m(o1,i1),insert$1(o1,e1,i1),t1=!0},p(o1,[i1]){o1[0]?r1?(r1.p(o1,i1),i1&1&&transition_in(r1,1)):(r1=create_if_block$1v(o1),r1.c(),transition_in(r1,1),r1.m(e1.parentNode,e1)):r1&&(group_outros(),transition_out(r1,1,1,()=>{r1=null}),check_outros())},i(o1){t1||(transition_in(r1),t1=!0)},o(o1){transition_out(r1),t1=!1},d(o1){r1&&r1.d(o1),o1&&detach(e1)}}}function instance$2$(n1,e1,t1){let r1,o1;component_subscribe(n1,store,l1=>t1(3,r1=l1)),component_subscribe(n1,selectedScreen,l1=>t1(0,o1=l1));let{$$slots:i1={},$$scope:a1}=e1;const s1=syncURLToState({urlParam:"screenId",stateKey:"selectedScreenId",validate:l1=>r1.screens.some(c1=>c1._id===l1),fallbackUrl:"../../design",store,routify:routify$1});return onDestroy(s1),n1.$$set=l1=>{"$$scope"in l1&&t1(1,a1=l1.$$scope)},[o1,a1,i1]}class Layout$d extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$2$,create_fragment$2X,safe_not_equal,{})}}function instance$2_(n1,e1,t1){let r1,o1;return component_subscribe(n1,redirect,i1=>t1(0,r1=i1)),component_subscribe(n1,store,i1=>t1(1,o1=i1)),n1.$$.update=()=>{n1.$$.dirty&3&&(o1.screens.length>0?r1(`./${o1.screens[0]._id}`):r1("./new"))},[r1,o1]}class Design extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$2_,null,safe_not_equal,{})}}const blankImage="/builder/assets/blank.2f241fb9.png",tableImage="/builder/assets/table.b7a718ad.png";class Screen extends BaseStructure{constructor(){super(!0),this._json={showNavigation:!0,width:"Large",props:{_id:uuid(),_component:"@budibase/standard-components/container",_styles:{normal:{},hover:{},active:{},selected:{}},_children:[],_instanceName:"",direction:"column",hAlign:"stretch",vAlign:"top",size:"grow",gap:"M"},routing:{route:"",roleId:"BASIC",homeScreen:!1},name:"screen-id"}}normalStyle(e1){return this._json.props._styles.normal=e1,this}component(e1){return this._json.props._component=e1,this}table(e1){return this._json.props.table=e1,this}route(e1){return this._json.routing.route=e1,this}name(e1){return this._json.name=e1,this}instanceName(e1){return this._json.props._instanceName=e1,this}customProps(e1){for(let t1 of Object.keys(e1))this._json.props[t1]=e1[t1];return this}}function rowListScreen(n1){return Array.isArray(n1)?n1.map(e1=>({name:`${e1.label} - List`,create:()=>createScreen$1(e1),id:ROW_LIST_TEMPLATE,resourceId:e1.resourceId})):[]}const ROW_LIST_TEMPLATE="ROW_LIST_TEMPLATE",rowListUrl=n1=>sanitizeUrl(`/${n1.label}`),generateTableBlock=n1=>{const e1=new Component("@budibase/standard-components/tableblock");return e1.customProps({title:n1.label,dataSource:n1,sortOrder:"Ascending",size:"spectrum--medium",paginate:!0,rowCount:8,clickBehaviour:"details",showTitleButton:!0,titleButtonText:"Create row",titleButtonClickBehaviour:"new"}).instanceName(`${n1.label} - Table block`),e1},createScreen$1=n1=>new Screen().route(rowListUrl(n1)).instanceName(`${n1.label} - List`).addChild(generateTableBlock(n1)).json(),DatasourceTemplateRow_svelte_svelte_type_style_lang="";function create_if_block$1u(n1){let e1,t1,r1;return t1=new Icon({props:{size:"S",name:"CheckmarkCircle"}}),{c(){e1=element("span"),create_component(t1.$$.fragment),attr(e1,"class","data-source-check svelte-7abi2p")},m(o1,i1){insert$1(o1,e1,i1),mount_component(t1,e1,null),r1=!0},i(o1){r1||(transition_in(t1.$$.fragment,o1),r1=!0)},o(o1){transition_out(t1.$$.fragment,o1),r1=!1},d(o1){o1&&detach(e1),destroy_component(t1)}}}function create_fragment$2W(n1){let e1,t1,r1,o1=n1[0].label+"",i1,a1,s1,l1,c1;t1=new Icon({props:{name:n1[2],color:"var(--spectrum-global-color-gray-600)"}});let u1=n1[1]&&create_if_block$1u();return{c(){e1=element("div"),create_component(t1.$$.fragment),r1=space$1(),i1=text(o1),a1=space$1(),u1&&u1.c(),attr(e1,"class","data-source-entry svelte-7abi2p"),toggle_class(e1,"selected",n1[1])},m(f1,p1){insert$1(f1,e1,p1),mount_component(t1,e1,null),append$1(e1,r1),append$1(e1,i1),append$1(e1,a1),u1&&u1.m(e1,null),s1=!0,l1||(c1=listen(e1,"click",n1[3]),l1=!0)},p(f1,[p1]){const d1={};p1&4&&(d1.name=f1[2]),t1.$set(d1),(!s1||p1&1)&&o1!==(o1=f1[0].label+"")&&set_data(i1,o1),f1[1]?u1?p1&2&&transition_in(u1,1):(u1=create_if_block$1u(),u1.c(),transition_in(u1,1),u1.m(e1,null)):u1&&(group_outros(),transition_out(u1,1,1,()=>{u1=null}),check_outros()),(!s1||p1&2)&&toggle_class(e1,"selected",f1[1])},i(f1){s1||(transition_in(t1.$$.fragment,f1),transition_in(u1),s1=!0)},o(f1){transition_out(t1.$$.fragment,f1),transition_out(u1),s1=!1},d(f1){f1&&detach(e1),destroy_component(t1),u1&&u1.d(),l1=!1,c1()}}}function instance$2Z(n1,e1,t1){let r1,{datasource:o1}=e1,{selected:i1=!1}=e1;function a1(s1){bubble.call(this,n1,s1)}return n1.$$set=s1=>{"datasource"in s1&&t1(0,o1=s1.datasource),"selected"in s1&&t1(1,i1=s1.selected)},n1.$$.update=()=>{n1.$$.dirty&1&&t1(2,r1=o1.type==="viewV2"?"Remove":"Table")},[o1,i1,r1,a1]}class DatasourceTemplateRow extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$2Z,create_fragment$2W,safe_not_equal,{datasource:0,selected:1})}}const DatasourceModal_svelte_svelte_type_style_lang="";function get_each_context$x(n1,e1,t1){const r1=n1.slice();r1[12]=e1[t1];const o1=Array.isArray(r1[12].entities)?r1[12].entities:Object.values(r1[12].entities||{});return r1[13]=o1,r1}function get_each_context_1$9(n1,e1,t1){const r1=n1.slice();r1[16]=e1[t1];const o1=Object.values(r1[16].views||{}).filter(s1=>s1.version===2);r1[17]=o1;const i1={tableId:r1[16]._id,label:r1[16].name,resourceId:r1[16]._id,type:"table"};r1[18]=i1;const a1=r1[1].find(function(...l1){return n1[11](r1[18],...l1)});return r1[19]=a1,r1}function get_each_context_2$4(n1,e1,t1){const r1=n1.slice();r1[22]=e1[t1];const o1={label:r1[22].name,id:r1[22].id,resourceId:r1[22].id,tableId:r1[22].tableId,type:"viewV2"};r1[23]=o1;const i1=r1[1].find(function(...s1){return n1[10](r1[23],...s1)});return r1[19]=i1,r1}function create_default_slot_2$1h(n1){let e1;return{c(){e1=text("Select which datasources you would like to use to create your screens")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_each_block_2$4(n1){let e1,t1;function r1(){return n1[9](n1[23])}return e1=new DatasourceTemplateRow({props:{selected:n1[19],datasource:n1[23]}}),e1.$on("click",r1),{c(){create_component(e1.$$.fragment)},m(o1,i1){mount_component(e1,o1,i1),t1=!0},p(o1,i1){n1=o1;const a1={};i1&6&&(a1.selected=n1[19]),i1&4&&(a1.datasource=n1[23]),e1.$set(a1)},i(o1){t1||(transition_in(e1.$$.fragment,o1),t1=!0)},o(o1){transition_out(e1.$$.fragment,o1),t1=!1},d(o1){destroy_component(e1,o1)}}}function create_each_block_1$9(n1){let e1,t1,r1,o1;function i1(){return n1[8](n1[18])}e1=new DatasourceTemplateRow({props:{selected:n1[19],datasource:n1[18]}}),e1.$on("click",i1);let a1=n1[17],s1=[];for(let c1=0;c1<a1.length;c1+=1)s1[c1]=create_each_block_2$4(get_each_context_2$4(n1,a1,c1));const l1=c1=>transition_out(s1[c1],1,1,()=>{s1[c1]=null});return{c(){create_component(e1.$$.fragment),t1=space$1();for(let c1=0;c1<s1.length;c1+=1)s1[c1].c();r1=empty$1()},m(c1,u1){mount_component(e1,c1,u1),insert$1(c1,t1,u1);for(let f1=0;f1<s1.length;f1+=1)s1[f1].m(c1,u1);insert$1(c1,r1,u1),o1=!0},p(c1,u1){n1=c1;const f1={};if(u1&6&&(f1.selected=n1[19]),u1&4&&(f1.datasource=n1[18]),e1.$set(f1),u1&14){a1=n1[17];let p1;for(p1=0;p1<a1.length;p1+=1){const d1=get_each_context_2$4(n1,a1,p1);s1[p1]?(s1[p1].p(d1,u1),transition_in(s1[p1],1)):(s1[p1]=create_each_block_2$4(d1),s1[p1].c(),transition_in(s1[p1],1),s1[p1].m(r1.parentNode,r1))}for(group_outros(),p1=a1.length;p1<s1.length;p1+=1)l1(p1);check_outros()}},i(c1){if(!o1){transition_in(e1.$$.fragment,c1);for(let u1=0;u1<a1.length;u1+=1)transition_in(s1[u1]);o1=!0}},o(c1){transition_out(e1.$$.fragment,c1),s1=s1.filter(Boolean);for(let u1=0;u1<s1.length;u1+=1)transition_out(s1[u1]);o1=!1},d(c1){destroy_component(e1,c1),c1&&detach(t1),destroy_each(s1,c1),c1&&detach(r1)}}}function create_each_block$x(n1){let e1,t1,r1,o1,i1,a1=n1[12].name+"",s1,l1,c1,u1;var f1=ICONS[n1[12].source];function p1(h1){return{props:{height:"24",width:"24"}}}f1&&(r1=construct_svelte_component(f1,p1()));let d1=n1[13].filter(func$d),m1=[];for(let h1=0;h1<d1.length;h1+=1)m1[h1]=create_each_block_1$9(get_each_context_1$9(n1,d1,h1));const _1=h1=>transition_out(m1[h1],1,1,()=>{m1[h1]=null});return{c(){e1=element("div"),t1=element("div"),r1&&create_component(r1.$$.fragment),o1=space$1(),i1=element("div"),s1=text(a1),l1=space$1();for(let h1=0;h1<m1.length;h1+=1)m1[h1].c();c1=space$1(),attr(i1,"class","data-source-name"),attr(t1,"class","data-source-header svelte-1tsbsfb"),attr(e1,"class","data-source-wrap svelte-1tsbsfb")},m(h1,g1){insert$1(h1,e1,g1),append$1(e1,t1),r1&&mount_component(r1,t1,null),append$1(t1,o1),append$1(t1,i1),append$1(i1,s1),append$1(e1,l1);for(let $1=0;$1<m1.length;$1+=1)m1[$1].m(e1,null);append$1(e1,c1),u1=!0},p(h1,g1){if(f1!==(f1=ICONS[h1[12].source])){if(r1){group_outros();const $1=r1;transition_out($1.$$.fragment,1,0,()=>{destroy_component($1,1)}),check_outros()}f1?(r1=construct_svelte_component(f1,p1()),create_component(r1.$$.fragment),transition_in(r1.$$.fragment,1),mount_component(r1,t1,o1)):r1=null}if((!u1||g1&4)&&a1!==(a1=h1[12].name+"")&&set_data(s1,a1),g1&14){d1=h1[13].filter(func$d);let $1;for($1=0;$1<d1.length;$1+=1){const y1=get_each_context_1$9(h1,d1,$1);m1[$1]?(m1[$1].p(y1,g1),transition_in(m1[$1],1)):(m1[$1]=create_each_block_1$9(y1),m1[$1].c(),transition_in(m1[$1],1),m1[$1].m(e1,c1))}for(group_outros(),$1=d1.length;$1<m1.length;$1+=1)_1($1);check_outros()}},i(h1){if(!u1){r1&&transition_in(r1.$$.fragment,h1);for(let g1=0;g1<d1.length;g1+=1)transition_in(m1[g1]);u1=!0}},o(h1){r1&&transition_out(r1.$$.fragment,h1),m1=m1.filter(Boolean);for(let g1=0;g1<m1.length;g1+=1)transition_out(m1[g1]);u1=!1},d(h1){h1&&detach(e1),r1&&destroy_component(r1),destroy_each(m1,h1)}}}function create_default_slot_1$1E(n1){let e1,t1,r1=n1[2],o1=[];for(let a1=0;a1<r1.length;a1+=1)o1[a1]=create_each_block$x(get_each_context$x(n1,r1,a1));const i1=a1=>transition_out(o1[a1],1,1,()=>{o1[a1]=null});return{c(){for(let a1=0;a1<o1.length;a1+=1)o1[a1].c();e1=empty$1()},m(a1,s1){for(let l1=0;l1<o1.length;l1+=1)o1[l1].m(a1,s1);insert$1(a1,e1,s1),t1=!0},p(a1,s1){if(s1&14){r1=a1[2];let l1;for(l1=0;l1<r1.length;l1+=1){const c1=get_each_context$x(a1,r1,l1);o1[l1]?(o1[l1].p(c1,s1),transition_in(o1[l1],1)):(o1[l1]=create_each_block$x(c1),o1[l1].c(),transition_in(o1[l1],1),o1[l1].m(e1.parentNode,e1))}for(group_outros(),l1=r1.length;l1<o1.length;l1+=1)i1(l1);check_outros()}},i(a1){if(!t1){for(let s1=0;s1<r1.length;s1+=1)transition_in(o1[s1]);t1=!0}},o(a1){o1=o1.filter(Boolean);for(let s1=0;s1<o1.length;s1+=1)transition_out(o1[s1]);t1=!1},d(a1){destroy_each(o1,a1),a1&&detach(e1)}}}function create_default_slot$21(n1){let e1,t1,r1,o1;return e1=new Body({props:{size:"S",$$slots:{default:[create_default_slot_2$1h]},$$scope:{ctx:n1}}}),r1=new Layout$m({props:{noPadding:!0,gap:"S",$$slots:{default:[create_default_slot_1$1E]},$$scope:{ctx:n1}}}),{c(){create_component(e1.$$.fragment),t1=space$1(),create_component(r1.$$.fragment)},m(i1,a1){mount_component(e1,i1,a1),insert$1(i1,t1,a1),mount_component(r1,i1,a1),o1=!0},p(i1,a1){const s1={};a1&67108864&&(s1.$$scope={dirty:a1,ctx:i1}),e1.$set(s1);const l1={};a1&67108870&&(l1.$$scope={dirty:a1,ctx:i1}),r1.$set(l1)},i(i1){o1||(transition_in(e1.$$.fragment,i1),transition_in(r1.$$.fragment,i1),o1=!0)},o(i1){transition_out(e1.$$.fragment,i1),transition_out(r1.$$.fragment,i1),o1=!1},d(i1){destroy_component(e1,i1),i1&&detach(t1),destroy_component(r1,i1)}}}function create_fragment$2V(n1){let e1,t1,r1;return t1=new ModalContent({props:{title:"Autogenerated screens",confirmText:"Confirm",cancelText:"Back",onConfirm:n1[4],onCancel:n1[0],disabled:!n1[1].length,size:"L",$$slots:{default:[create_default_slot$21]},$$scope:{ctx:n1}}}),{c(){e1=element("span"),create_component(t1.$$.fragment)},m(o1,i1){insert$1(o1,e1,i1),mount_component(t1,e1,null),r1=!0},p(o1,[i1]){const a1={};i1&1&&(a1.onCancel=o1[0]),i1&2&&(a1.disabled=!o1[1].length),i1&67108870&&(a1.$$scope={dirty:i1,ctx:o1}),t1.$set(a1)},i(o1){r1||(transition_in(t1.$$.fragment,o1),r1=!0)},o(o1){transition_out(t1.$$.fragment,o1),r1=!1},d(o1){o1&&detach(e1),destroy_component(t1)}}}const func$d=n1=>n1._id!=="ta_users";function instance$2Y(n1,e1,t1){let r1,o1;component_subscribe(n1,datasources,_1=>t1(7,o1=_1));let{onCancel:i1}=e1,{onConfirm:a1}=e1,{initialScreens:s1=[]}=e1,l1=[...s1];const c1=_1=>{const{resourceId:h1}=_1;l1.find(g1=>g1.resourceId===h1)?t1(1,l1=l1.filter(g1=>g1.resourceId!==h1)):t1(1,l1=[...l1,rowListScreen([_1])[0]])},u1=async()=>{await a1({templates:l1})};onMount(async()=>{try{await datasources.fetch()}catch{notifications.error("Error fetching datasources")}});const f1=_1=>c1(_1),p1=_1=>c1(_1),d1=(_1,h1)=>h1.resourceId===_1.resourceId,m1=(_1,h1)=>h1.resourceId===_1.resourceId;return n1.$$set=_1=>{"onCancel"in _1&&t1(0,i1=_1.onCancel),"onConfirm"in _1&&t1(5,a1=_1.onConfirm),"initialScreens"in _1&&t1(6,s1=_1.initialScreens)},n1.$$.update=()=>{var _1;n1.$$.dirty&128&&t1(2,r1=(_1=o1.list)==null?void 0:_1.filter(h1=>h1.source!==IntegrationNames.REST&&h1.entities))},[i1,l1,r1,c1,u1,a1,s1,o1,f1,p1,d1,m1]}class DatasourceModal extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$2Y,create_fragment$2V,safe_not_equal,{onCancel:0,onConfirm:5,initialScreens:6})}}function create_default_slot$20(n1){let e1,t1,r1,o1;function i1(s1){n1[8](s1)}let a1={label:"Access",error:n1[3],getOptionLabel:func$c,getOptionValue:func_1$9,getOptionColour:n1[7],options:n1[4],placeholder:null};return n1[0]!==void 0&&(a1.value=n1[0]),t1=new Select_1$1({props:a1}),binding_callbacks.push(()=>bind$3(t1,"value",i1)),t1.$on("change",n1[5]),{c(){e1=text(`Select the level of access required to see these screens
1739
- `),create_component(t1.$$.fragment)},m(s1,l1){insert$1(s1,e1,l1),mount_component(t1,s1,l1),o1=!0},p(s1,l1){const c1={};l1&8&&(c1.error=s1[3]),l1&16&&(c1.options=s1[4]),!r1&&l1&1&&(r1=!0,c1.value=s1[0],add_flush_callback(()=>r1=!1)),t1.$set(c1)},i(s1){o1||(transition_in(t1.$$.fragment,s1),o1=!0)},o(s1){transition_out(t1.$$.fragment,s1),o1=!1},d(s1){s1&&detach(e1),destroy_component(t1,s1)}}}function create_fragment$2U(n1){let e1,t1;return e1=new ModalContent({props:{title:"Access",confirmText:"Done",cancelText:"Back",onConfirm:n1[1],onCancel:n1[2],disabled:!!n1[3],$$slots:{default:[create_default_slot$20]},$$scope:{ctx:n1}}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,[o1]){const i1={};o1&2&&(i1.onConfirm=r1[1]),o1&4&&(i1.onCancel=r1[2]),o1&8&&(i1.disabled=!!r1[3]),o1&1049&&(i1.$$scope={dirty:o1,ctx:r1}),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}const func$c=n1=>n1.name,func_1$9=n1=>n1._id;function instance$2X(n1,e1,t1){let r1;component_subscribe(n1,roles,d1=>t1(4,r1=d1));let{onConfirm:o1}=e1,{onCancel:i1}=e1,{screenUrl:a1}=e1,{screenAccessRole:s1}=e1,l1;const c1=d1=>{const m1=d1.detail;u1(a1,m1)?t1(3,l1="This URL is already taken for this access role"):t1(3,l1=null)},u1=(d1,m1)=>!d1||!m1?!1:get_store_value(store).screens.some(_1=>_1.routing.route.toLowerCase()===d1.toLowerCase()&&_1.routing.roleId===m1);onMount(()=>{c1({detail:s1})});const f1=d1=>getRoleColour(d1._id);function p1(d1){s1=d1,t1(0,s1)}return n1.$$set=d1=>{"onConfirm"in d1&&t1(1,o1=d1.onConfirm),"onCancel"in d1&&t1(2,i1=d1.onCancel),"screenUrl"in d1&&t1(6,a1=d1.screenUrl),"screenAccessRole"in d1&&t1(0,s1=d1.screenAccessRole)},[s1,o1,i1,l1,r1,c1,a1,f1,p1]}class ScreenRoleModal extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$2X,create_fragment$2U,safe_not_equal,{onConfirm:1,onCancel:2,screenUrl:6,screenAccessRole:0})}}const createFromScratchScreen={name:"Create from scratch",id:"createFromScratch",create:()=>createScreen(),table:"Create from scratch"},createScreen=()=>new Screen().instanceName("New Screen").json(),allTemplates=n1=>[...rowListScreen(n1)],createTemplateOverride=n1=>()=>{const e1=n1.create();return e1.name=e1.props._id,e1.routing.route=e1.routing.route.toLowerCase(),e1.template=n1.id,e1},getTemplates=n1=>{const e1=o1=>({...o1,create:createTemplateOverride(o1)}),t1=e1(createFromScratchScreen),r1=allTemplates(n1).map(e1);return[t1,...r1.sort((o1,i1)=>o1.name>i1.name?1:-1)]};function create_default_slot_2$1g(n1){let e1,t1;return e1=new DatasourceModal({props:{onConfirm:n1[6],initialScreens:n1[4]?[...n1[4]]:[]}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&16&&(i1.initialScreens=r1[4]?[...r1[4]]:[]),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_default_slot_1$1D(n1){let e1,t1,r1;function o1(a1){n1[12](a1)}let i1={onConfirm:n1[8],onCancel:n1[9],screenUrl:n1[5]};return n1[3]!==void 0&&(i1.screenAccessRole=n1[3]),e1=new ScreenRoleModal({props:i1}),binding_callbacks.push(()=>bind$3(e1,"screenAccessRole",o1)),{c(){create_component(e1.$$.fragment)},m(a1,s1){mount_component(e1,a1,s1),r1=!0},p(a1,s1){const l1={};s1&32&&(l1.screenUrl=a1[5]),!t1&&s1&8&&(t1=!0,l1.screenAccessRole=a1[3],add_flush_callback(()=>t1=!1)),e1.$set(l1)},i(a1){r1||(transition_in(e1.$$.fragment,a1),r1=!0)},o(a1){transition_out(e1.$$.fragment,a1),r1=!1},d(a1){destroy_component(e1,a1)}}}function create_default_slot$1$(n1){let e1,t1;return e1=new ScreenDetailsModal({props:{onConfirm:n1[7],initialUrl:n1[5]}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&32&&(i1.initialUrl=r1[5]),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_fragment$2T(n1){let e1,t1,r1,o1,i1,a1,s1={autoFocus:!1,$$slots:{default:[create_default_slot_2$1g]},$$scope:{ctx:n1}};e1=new Modal({props:s1}),n1[11](e1);let l1={$$slots:{default:[create_default_slot_1$1D]},$$scope:{ctx:n1}};r1=new Modal({props:l1}),n1[13](r1);let c1={$$slots:{default:[create_default_slot$1$]},$$scope:{ctx:n1}};return i1=new Modal({props:c1}),n1[14](i1),{c(){create_component(e1.$$.fragment),t1=space$1(),create_component(r1.$$.fragment),o1=space$1(),create_component(i1.$$.fragment)},m(u1,f1){mount_component(e1,u1,f1),insert$1(u1,t1,f1),mount_component(r1,u1,f1),insert$1(u1,o1,f1),mount_component(i1,u1,f1),a1=!0},p(u1,[f1]){const p1={};f1&16777232&&(p1.$$scope={dirty:f1,ctx:u1}),e1.$set(p1);const d1={};f1&16777256&&(d1.$$scope={dirty:f1,ctx:u1}),r1.$set(d1);const m1={};f1&16777248&&(m1.$$scope={dirty:f1,ctx:u1}),i1.$set(m1)},i(u1){a1||(transition_in(e1.$$.fragment,u1),transition_in(r1.$$.fragment,u1),transition_in(i1.$$.fragment,u1),a1=!0)},o(u1){transition_out(e1.$$.fragment,u1),transition_out(r1.$$.fragment,u1),transition_out(i1.$$.fragment,u1),a1=!1},d(u1){n1[11](null),destroy_component(e1,u1),u1&&detach(t1),n1[13](null),destroy_component(r1,u1),u1&&detach(o1),n1[14](null),destroy_component(i1,u1)}}}function instance$2W(n1,e1,t1){let r1,o1;component_subscribe(n1,tables,H1=>t1(17,r1=H1)),component_subscribe(n1,goto,H1=>t1(18,o1=H1));let i1,a1,s1,l1,c1=Roles.BASIC,u1=null,f1=null,p1=null;const d1=async({screens:H1,screenAccessRole:B1})=>{if(!!(H1!=null&&H1.length))try{let q1;for(let R1 of H1){if(m1(R1.routing.route)){let F1=2,j1=_1(R1,F1);for(;m1(j1);)j1=_1(R1,++F1);R1.routing.route=j1}if(R1.routing.route=sanitizeUrl(R1.routing.route),!B1)return;R1.routing.roleId=B1,q1=(await store.actions.screens.save(R1))._id,await store.actions.links.save(R1.routing.route,capitalise(R1.routing.route.split("/")[1]))}o1(`./${q1}`),store.actions.screens.select(q1)}catch(q1){console.log(q1),notifications.error("Error creating screens")}},m1=H1=>{const B1=c1;return!!get_store_value(store).screens.filter(R1=>R1.routing.roleId===B1).find(R1=>{var I1;return((I1=R1.routing)==null?void 0:I1.route)===H1})},_1=(H1,B1)=>{var R1;let q1=((R1=H1.routing)==null?void 0:R1.route)||"";if(q1.startsWith("/")&&(q1=q1.slice(1)),q1.includes("/")){const I1=q1.split("/");return`/${I1[0]}-${B1}/${I1.slice(1).join("/")}`}else return`/${q1}-${B1}`},h1=H1=>{if(t1(4,u1=null),t1(5,f1=null),p1=H1,i1=null,t1(3,c1=Roles.BASIC),H1==="table")s1.show();else if(H1==="blank")i1=getTemplates(r1.list).find(R1=>R1.id==="createFromScratch").create(),a1.show();else throw new Error("Invalid mode provided")},g1=async({templates:H1})=>{t1(4,u1=H1),l1.show()},$1=async()=>{const H1=u1.map(B1=>{let q1=B1.create();return q1.autoTableId=B1.resourceId,q1});await d1({screens:H1,screenAccessRole:c1})},y1=async({screenUrl:H1})=>{t1(5,f1=H1),l1.show()},w1=async({screenUrl:H1,screenAccessRole:B1})=>{!i1||(i1.routing.route=H1,await d1({screens:[i1],screenAccessRole:B1}))},S1=async()=>{p1==="blank"?w1({screenUrl:f1,screenAccessRole:c1}):$1()},O1=()=>{p1==="blank"?a1.show():s1.show()};function C1(H1){binding_callbacks[H1?"unshift":"push"](()=>{s1=H1,t1(1,s1)})}function M1(H1){c1=H1,t1(3,c1)}function z1(H1){binding_callbacks[H1?"unshift":"push"](()=>{l1=H1,t1(2,l1)})}function D1(H1){binding_callbacks[H1?"unshift":"push"](()=>{a1=H1,t1(0,a1)})}return[a1,s1,l1,c1,u1,f1,g1,y1,S1,O1,h1,C1,M1,z1,D1]}class CreateScreenModal extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$2W,create_fragment$2T,safe_not_equal,{show:10})}get show(){return this.$$.ctx[10]}}const index_svelte_svelte_type_style_lang$d="";function create_default_slot_5$L(n1){let e1;return{c(){e1=text("Start from scratch or create screens from your data")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot_4$U(n1){let e1;return{c(){e1=text("Blank screen")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot_3$14(n1){let e1;return{c(){e1=text("Add an empty blank screen")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot_2$1f(n1){let e1;return{c(){e1=text("Table")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot_1$1C(n1){let e1;return{c(){e1=text("View, edit and delete rows on a table")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot$1_(n1){let e1,t1,r1,o1,i1,a1,s1,l1,c1,u1,f1,p1,d1,m1,_1,h1,g1,$1,y1,w1,S1,O1,C1,M1,z1,D1;return t1=new Body({props:{$$slots:{default:[create_default_slot_5$L]},$$scope:{ctx:n1}}}),f1=new Body({props:{size:"S",$$slots:{default:[create_default_slot_4$U]},$$scope:{ctx:n1}}}),d1=new Body({props:{size:"XS",$$slots:{default:[create_default_slot_3$14]},$$scope:{ctx:n1}}}),S1=new Body({props:{size:"S",$$slots:{default:[create_default_slot_2$1f]},$$scope:{ctx:n1}}}),C1=new Body({props:{size:"XS",$$slots:{default:[create_default_slot_1$1C]},$$scope:{ctx:n1}}}),{c(){e1=element("div"),create_component(t1.$$.fragment),r1=space$1(),o1=element("div"),i1=element("div"),a1=element("div"),s1=element("img"),c1=space$1(),u1=element("div"),create_component(f1.$$.fragment),p1=space$1(),create_component(d1.$$.fragment),m1=space$1(),_1=element("div"),h1=element("div"),g1=element("img"),y1=space$1(),w1=element("div"),create_component(S1.$$.fragment),O1=space$1(),create_component(C1.$$.fragment),attr(e1,"class","subHeading svelte-qf5yhq"),attr(s1,"alt",""),src_url_equal(s1.src,l1=blankImage)||attr(s1,"src",l1),attr(s1,"class","svelte-qf5yhq"),attr(a1,"class","image svelte-qf5yhq"),attr(u1,"class","text svelte-qf5yhq"),attr(i1,"class","card svelte-qf5yhq"),attr(g1,"alt",""),src_url_equal(g1.src,$1=tableImage)||attr(g1,"src",$1),attr(g1,"class","svelte-qf5yhq"),attr(h1,"class","image svelte-qf5yhq"),attr(w1,"class","text svelte-qf5yhq"),attr(_1,"class","card svelte-qf5yhq"),attr(o1,"class","cards svelte-qf5yhq")},m(H1,B1){insert$1(H1,e1,B1),mount_component(t1,e1,null),insert$1(H1,r1,B1),insert$1(H1,o1,B1),append$1(o1,i1),append$1(i1,a1),append$1(a1,s1),append$1(i1,c1),append$1(i1,u1),mount_component(f1,u1,null),append$1(u1,p1),mount_component(d1,u1,null),append$1(o1,m1),append$1(o1,_1),append$1(_1,h1),append$1(h1,g1),append$1(_1,y1),append$1(_1,w1),mount_component(S1,w1,null),append$1(w1,O1),mount_component(C1,w1,null),M1=!0,z1||(D1=[listen(i1,"click",n1[4]),listen(_1,"click",n1[5])],z1=!0)},p(H1,B1){const q1={};B1&128&&(q1.$$scope={dirty:B1,ctx:H1}),t1.$set(q1);const R1={};B1&128&&(R1.$$scope={dirty:B1,ctx:H1}),f1.$set(R1);const I1={};B1&128&&(I1.$$scope={dirty:B1,ctx:H1}),d1.$set(I1);const F1={};B1&128&&(F1.$$scope={dirty:B1,ctx:H1}),S1.$set(F1);const j1={};B1&128&&(j1.$$scope={dirty:B1,ctx:H1}),C1.$set(j1)},i(H1){M1||(transition_in(t1.$$.fragment,H1),transition_in(f1.$$.fragment,H1),transition_in(d1.$$.fragment,H1),transition_in(S1.$$.fragment,H1),transition_in(C1.$$.fragment,H1),M1=!0)},o(H1){transition_out(t1.$$.fragment,H1),transition_out(f1.$$.fragment,H1),transition_out(d1.$$.fragment,H1),transition_out(S1.$$.fragment,H1),transition_out(C1.$$.fragment,H1),M1=!1},d(H1){H1&&detach(e1),destroy_component(t1),H1&&detach(r1),H1&&detach(o1),destroy_component(f1),destroy_component(d1),destroy_component(S1),destroy_component(C1),z1=!1,run_all(D1)}}}function create_fragment$2S(n1){let e1,t1,r1,o1,i1;t1=new CreationPage({props:{showClose:!!n1[0],onClose:n1[0],heading:n1[2]?"Create new screen":"Create your first screen",$$slots:{default:[create_default_slot$1_]},$$scope:{ctx:n1}}});let a1={};return o1=new CreateScreenModal({props:a1}),n1[6](o1),{c(){e1=element("div"),create_component(t1.$$.fragment),r1=space$1(),create_component(o1.$$.fragment),attr(e1,"class","page svelte-qf5yhq")},m(s1,l1){insert$1(s1,e1,l1),mount_component(t1,e1,null),insert$1(s1,r1,l1),mount_component(o1,s1,l1),i1=!0},p(s1,[l1]){const c1={};l1&1&&(c1.showClose=!!s1[0]),l1&1&&(c1.onClose=s1[0]),l1&4&&(c1.heading=s1[2]?"Create new screen":"Create your first screen"),l1&130&&(c1.$$scope={dirty:l1,ctx:s1}),t1.$set(c1);const u1={};o1.$set(u1)},i(s1){i1||(transition_in(t1.$$.fragment,s1),transition_in(o1.$$.fragment,s1),i1=!0)},o(s1){transition_out(t1.$$.fragment,s1),transition_out(o1.$$.fragment,s1),i1=!1},d(s1){s1&&detach(e1),destroy_component(t1),s1&&detach(r1),n1[6](null),destroy_component(o1,s1)}}}function instance$2V(n1,e1,t1){let r1,o1;component_subscribe(n1,store,u1=>t1(3,o1=u1));let{onClose:i1=null}=e1,a1;const s1=()=>a1.show("blank"),l1=()=>a1.show("table");function c1(u1){binding_callbacks[u1?"unshift":"push"](()=>{a1=u1,t1(1,a1)})}return n1.$$set=u1=>{"onClose"in u1&&t1(0,i1=u1.onClose)},n1.$$.update=()=>{var u1;n1.$$.dirty&8&&t1(2,r1=(u1=o1.screens)==null?void 0:u1.length)},[i1,a1,r1,o1,s1,l1,c1]}class NewScreen extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$2V,create_fragment$2S,safe_not_equal,{onClose:0})}}function create_fragment$2R(n1){let e1,t1;return e1=new NewScreen({props:{onClose:n1[0]}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,[o1]){const i1={};o1&1&&(i1.onClose=r1[0]),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function instance$2U(n1,e1,t1){let r1,o1,i1;component_subscribe(n1,goto,s1=>t1(2,o1=s1)),component_subscribe(n1,store,s1=>t1(1,i1=s1));const a1=({screens:s1,selectedScreenId:l1})=>s1!=null&&s1.length?l1?()=>{o1(`./${l1}`)}:()=>{o1(`./${s1[0]._id}`)}:null;return n1.$$.update=()=>{n1.$$.dirty&2&&t1(0,r1=a1(i1))},[r1,i1]}class New extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$2U,create_fragment$2R,safe_not_equal,{})}}function create_fragment$2Q(n1){let e1;const t1=n1[1].default,r1=create_slot(t1,n1,n1[0],null);return{c(){r1&&r1.c()},m(o1,i1){r1&&r1.m(o1,i1),e1=!0},p(o1,[i1]){r1&&r1.p&&(!e1||i1&1)&&update_slot_base(r1,t1,o1,o1[0],e1?get_slot_changes(t1,o1[0],i1,null):get_all_dirty_from_scope(o1[0]),null)},i(o1){e1||(transition_in(r1,o1),e1=!0)},o(o1){transition_out(r1,o1),e1=!1},d(o1){r1&&r1.d(o1)}}}function instance$2T(n1,e1,t1){let{$$slots:r1={},$$scope:o1}=e1;return n1.$$set=i1=>{"$$scope"in i1&&t1(0,o1=i1.$$scope)},[o1,r1]}class Layout$c extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$2T,create_fragment$2Q,safe_not_equal,{})}}function create_fragment$2P(n1){let e1,t1,r1;function o1(a1){n1[5](a1)}let i1={options:n1[1],getOptionLabel:func$b,getOptionValue:func_1$8};return n1[0]!==void 0&&(i1.value=n1[0]),e1=new Select_1$1({props:i1}),binding_callbacks.push(()=>bind$3(e1,"value",o1)),e1.$on("change",n1[2]),{c(){create_component(e1.$$.fragment)},m(a1,s1){mount_component(e1,a1,s1),r1=!0},p(a1,[s1]){const l1={};s1&2&&(l1.options=a1[1]),!t1&&s1&1&&(t1=!0,l1.value=a1[0],add_flush_callback(()=>t1=!1)),e1.$set(l1)},i(a1){r1||(transition_in(e1.$$.fragment,a1),r1=!0)},o(a1){transition_out(e1.$$.fragment,a1),r1=!1},d(a1){destroy_component(e1,a1)}}}const func$b=n1=>n1.name,func_1$8=n1=>n1._id;function instance$2S(n1,e1,t1){let r1,o1;component_subscribe(n1,tables,u1=>t1(4,o1=u1));const i1=createEventDispatcher();let{value:a1}=e1,{isTrigger:s1}=e1;const l1=u1=>{t1(0,a1=u1.detail),i1("change",u1.detail)};function c1(u1){a1=u1,t1(0,a1)}return n1.$$set=u1=>{"value"in u1&&t1(0,a1=u1.value),"isTrigger"in u1&&t1(3,s1=u1.isTrigger)},n1.$$.update=()=>{n1.$$.dirty&24&&t1(1,r1=o1.list.filter(u1=>!s1||u1._id!==TableNames.USERS))},[a1,r1,l1,s1,o1,c1]}class TableSelector extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$2S,create_fragment$2P,safe_not_equal,{value:0,isTrigger:3})}}function create_if_block_7$4(n1){let e1,t1,r1;var o1=n1[4]?ModalBindableInput:DrawerBindableInput;function i1(a1){return{props:{panel:ServerBindingPanel,value:a1[0][a1[2]],label:a1[2],type:"string",bindings:a1[5],fillWidth:!0,allowJS:!0,updateOnChange:!1}}}return o1&&(e1=construct_svelte_component(o1,i1(n1)),e1.$on("change",n1[14])),{c(){e1&&create_component(e1.$$.fragment),t1=empty$1()},m(a1,s1){e1&&mount_component(e1,a1,s1),insert$1(a1,t1,s1),r1=!0},p(a1,s1){const l1={};if(s1&5&&(l1.value=a1[0][a1[2]]),s1&4&&(l1.label=a1[2]),s1&32&&(l1.bindings=a1[5]),o1!==(o1=a1[4]?ModalBindableInput:DrawerBindableInput)){if(e1){group_outros();const c1=e1;transition_out(c1.$$.fragment,1,0,()=>{destroy_component(c1,1)}),check_outros()}o1?(e1=construct_svelte_component(o1,i1(a1)),e1.$on("change",a1[14]),create_component(e1.$$.fragment),transition_in(e1.$$.fragment,1),mount_component(e1,t1.parentNode,t1)):e1=null}else o1&&e1.$set(l1)},i(a1){r1||(e1&&transition_in(e1.$$.fragment,a1),r1=!0)},o(a1){e1&&transition_out(e1.$$.fragment,a1),r1=!1},d(a1){a1&&detach(t1),e1&&destroy_component(e1,a1)}}}function create_if_block_6$4(n1){let e1,t1,r1;function o1(a1){n1[13](a1)}let i1={schema:n1[3]};return n1[0][n1[2]]!==void 0&&(i1.linkedRows=n1[0][n1[2]]),e1=new LinkedRowSelector({props:i1}),binding_callbacks.push(()=>bind$3(e1,"linkedRows",o1)),{c(){create_component(e1.$$.fragment)},m(a1,s1){mount_component(e1,a1,s1),r1=!0},p(a1,s1){const l1={};s1&8&&(l1.schema=a1[3]),!t1&&s1&5&&(t1=!0,l1.linkedRows=a1[0][a1[2]],add_flush_callback(()=>t1=!1)),e1.$set(l1)},i(a1){r1||(transition_in(e1.$$.fragment,a1),r1=!0)},o(a1){transition_out(e1.$$.fragment,a1),r1=!1},d(a1){destroy_component(e1,a1)}}}function create_if_block_5$7(n1){let e1,t1,r1,o1,i1;return t1=new Label({props:{$$slots:{default:[create_default_slot$1Z]},$$scope:{ctx:n1}}}),o1=new QueryEditor({props:{editorHeight:"150",mode:"json",value:n1[0][n1[2]]}}),o1.$on("change",n1[12]),{c(){e1=element("span"),create_component(t1.$$.fragment),r1=space$1(),create_component(o1.$$.fragment)},m(a1,s1){insert$1(a1,e1,s1),mount_component(t1,e1,null),append$1(e1,r1),mount_component(o1,e1,null),i1=!0},p(a1,s1){const l1={};s1&32772&&(l1.$$scope={dirty:s1,ctx:a1}),t1.$set(l1);const c1={};s1&5&&(c1.value=a1[0][a1[2]]),o1.$set(c1)},i(a1){i1||(transition_in(t1.$$.fragment,a1),transition_in(o1.$$.fragment,a1),i1=!0)},o(a1){transition_out(t1.$$.fragment,a1),transition_out(o1.$$.fragment,a1),i1=!1},d(a1){a1&&detach(e1),destroy_component(t1),destroy_component(o1)}}}function create_if_block_4$d(n1){let e1,t1,r1;function o1(a1){n1[11](a1)}let i1={label:n1[2]};return n1[0][n1[2]]!==void 0&&(i1.value=n1[0][n1[2]]),e1=new TextArea_1({props:i1}),binding_callbacks.push(()=>bind$3(e1,"value",o1)),{c(){create_component(e1.$$.fragment)},m(a1,s1){mount_component(e1,a1,s1),r1=!0},p(a1,s1){const l1={};s1&4&&(l1.label=a1[2]),!t1&&s1&5&&(t1=!0,l1.value=a1[0][a1[2]],add_flush_callback(()=>t1=!1)),e1.$set(l1)},i(a1){r1||(transition_in(e1.$$.fragment,a1),r1=!0)},o(a1){transition_out(e1.$$.fragment,a1),r1=!1},d(a1){destroy_component(e1,a1)}}}function create_if_block_3$k(n1){let e1,t1,r1;function o1(a1){n1[10](a1)}let i1={label:n1[2],options:n1[3].constraints.inclusion};return n1[0][n1[2]]!==void 0&&(i1.value=n1[0][n1[2]]),e1=new Multiselect_1({props:i1}),binding_callbacks.push(()=>bind$3(e1,"value",o1)),{c(){create_component(e1.$$.fragment)},m(a1,s1){mount_component(e1,a1,s1),r1=!0},p(a1,s1){const l1={};s1&4&&(l1.label=a1[2]),s1&8&&(l1.options=a1[3].constraints.inclusion),!t1&&s1&5&&(t1=!0,l1.value=a1[0][a1[2]],add_flush_callback(()=>t1=!1)),e1.$set(l1)},i(a1){r1||(transition_in(e1.$$.fragment,a1),r1=!0)},o(a1){transition_out(e1.$$.fragment,a1),r1=!1},d(a1){destroy_component(e1,a1)}}}function create_if_block_2$x(n1){let e1,t1;return e1=new Toggle({props:{text:n1[2],value:n1[0][n1[2]]}}),e1.$on("change",n1[9]),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&4&&(i1.text=r1[2]),o1&5&&(i1.value=r1[0][r1[2]]),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_if_block_1$O(n1){let e1,t1;return e1=new DatePicker_1({props:{label:n1[2],value:n1[0][n1[2]]}}),e1.$on("change",n1[8]),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&4&&(i1.label=r1[2]),o1&5&&(i1.value=r1[0][r1[2]]),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_if_block$1t(n1){let e1,t1;return e1=new Select_1$1({props:{label:n1[2],value:n1[0][n1[2]],options:n1[3].constraints.inclusion}}),e1.$on("change",n1[7]),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&4&&(i1.label=r1[2]),o1&5&&(i1.value=r1[0][r1[2]]),o1&8&&(i1.options=r1[3].constraints.inclusion),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_default_slot$1Z(n1){let e1;return{c(){e1=text(n1[2])},m(t1,r1){insert$1(t1,e1,r1)},p(t1,r1){r1&4&&set_data(e1,t1[2])},d(t1){t1&&detach(e1)}}}function create_fragment$2O(n1){let e1,t1,r1,o1,i1;const a1=[create_if_block$1t,create_if_block_1$O,create_if_block_2$x,create_if_block_3$k,create_if_block_4$d,create_if_block_5$7,create_if_block_6$4,create_if_block_7$4],s1=[];function l1(c1,u1){return u1&8&&(e1=null),e1==null&&(e1=!!(schemaHasOptions(c1[3])&&c1[3].type!=="array")),e1?0:c1[3].type==="datetime"?1:c1[3].type==="boolean"?2:c1[3].type==="array"?3:c1[3].type==="longform"?4:c1[3].type==="json"?5:c1[3].type==="link"?6:c1[3].type==="string"||c1[3].type==="number"?7:-1}return~(t1=l1(n1,-1))&&(r1=s1[t1]=a1[t1](n1)),{c(){r1&&r1.c(),o1=empty$1()},m(c1,u1){~t1&&s1[t1].m(c1,u1),insert$1(c1,o1,u1),i1=!0},p(c1,[u1]){let f1=t1;t1=l1(c1,u1),t1===f1?~t1&&s1[t1].p(c1,u1):(r1&&(group_outros(),transition_out(s1[f1],1,1,()=>{s1[f1]=null}),check_outros()),~t1?(r1=s1[t1],r1?r1.p(c1,u1):(r1=s1[t1]=a1[t1](c1),r1.c()),transition_in(r1,1),r1.m(o1.parentNode,o1)):r1=null)},i(c1){i1||(transition_in(r1),i1=!0)},o(c1){transition_out(r1),i1=!1},d(c1){~t1&&s1[t1].d(c1),c1&&detach(o1)}}}function schemaHasOptions(n1){var e1,t1;return!!((t1=(e1=n1.constraints)==null?void 0:e1.inclusion)!=null&&t1.length)}function instance$2R(n1,e1,t1){let r1,{onChange:o1}=e1,{field:i1}=e1,{schema:a1}=e1,{value:s1}=e1,{bindings:l1}=e1,{isTestModal:c1}=e1;const u1=$1=>o1($1,i1),f1=$1=>o1($1,i1),p1=$1=>o1($1,i1);function d1($1){n1.$$.not_equal(s1[i1],$1)&&(s1[i1]=$1,t1(0,s1))}function m1($1){n1.$$.not_equal(s1[i1],$1)&&(s1[i1]=$1,t1(0,s1))}const _1=$1=>{var y1;((y1=$1.detail)==null?void 0:y1.value)!==s1[i1]&&o1($1,i1,a1.type)};function h1($1){n1.$$.not_equal(s1[i1],$1)&&(s1[i1]=$1,t1(0,s1))}const g1=$1=>o1($1,i1);return n1.$$set=$1=>{"onChange"in $1&&t1(1,o1=$1.onChange),"field"in $1&&t1(2,i1=$1.field),"schema"in $1&&t1(3,a1=$1.schema),"value"in $1&&t1(0,s1=$1.value),"bindings"in $1&&t1(6,l1=$1.bindings),"isTestModal"in $1&&t1(4,c1=$1.isTestModal)},n1.$$.update=()=>{n1.$$.dirty&64&&t1(5,r1=l1.map($1=>{let y1=Object.assign({},$1);return y1.icon="ShareAndroid",y1}))},[s1,o1,i1,a1,c1,r1,l1,u1,f1,p1,d1,m1,_1,h1,g1]}class RowSelectorTypes extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$2R,create_fragment$2O,safe_not_equal,{onChange:1,field:2,schema:3,value:0,bindings:6,isTestModal:4})}}const RowSelector_svelte_svelte_type_style_lang="";function get_each_context$w(n1,e1,t1){const r1=n1.slice();return r1[19]=e1[t1][0],r1[20]=e1[t1][1],r1}function create_if_block$1s(n1){let e1,t1,r1=n1[4],o1=[];for(let a1=0;a1<r1.length;a1+=1)o1[a1]=create_each_block$w(get_each_context$w(n1,r1,a1));const i1=a1=>transition_out(o1[a1],1,1,()=>{o1[a1]=null});return{c(){e1=element("div");for(let a1=0;a1<o1.length;a1+=1)o1[a1].c();attr(e1,"class","schema-fields svelte-wmc004")},m(a1,s1){insert$1(a1,e1,s1);for(let l1=0;l1<o1.length;l1+=1)o1[l1].m(e1,null);t1=!0},p(a1,s1){if(s1&3551){r1=a1[4];let l1;for(l1=0;l1<r1.length;l1+=1){const c1=get_each_context$w(a1,r1,l1);o1[l1]?(o1[l1].p(c1,s1),transition_in(o1[l1],1)):(o1[l1]=create_each_block$w(c1),o1[l1].c(),transition_in(o1[l1],1),o1[l1].m(e1,null))}for(group_outros(),l1=r1.length;l1<o1.length;l1+=1)i1(l1);check_outros()}},i(a1){if(!t1){for(let s1=0;s1<r1.length;s1+=1)transition_in(o1[s1]);t1=!0}},o(a1){o1=o1.filter(Boolean);for(let s1=0;s1<o1.length;s1+=1)transition_out(o1[s1]);t1=!1},d(a1){a1&&detach(e1),destroy_each(o1,a1)}}}function create_if_block_1$N(n1){let e1,t1,r1=n1[20].type!=="attachment"&&create_if_block_2$w(n1);return{c(){r1&&r1.c(),e1=empty$1()},m(o1,i1){r1&&r1.m(o1,i1),insert$1(o1,e1,i1),t1=!0},p(o1,i1){o1[20].type!=="attachment"?r1?(r1.p(o1,i1),i1&16&&transition_in(r1,1)):(r1=create_if_block_2$w(o1),r1.c(),transition_in(r1,1),r1.m(e1.parentNode,e1)):r1&&(group_outros(),transition_out(r1,1,1,()=>{r1=null}),check_outros())},i(o1){t1||(transition_in(r1),t1=!0)},o(o1){transition_out(r1),t1=!1},d(o1){r1&&r1.d(o1),o1&&detach(e1)}}}function create_if_block_2$w(n1){let e1,t1,r1,o1;const i1=[create_if_block_3$j,create_else_block$A],a1=[];function s1(l1,c1){return l1[6]?1:0}return e1=s1(n1),t1=a1[e1]=i1[e1](n1),{c(){t1.c(),r1=empty$1()},m(l1,c1){a1[e1].m(l1,c1),insert$1(l1,r1,c1),o1=!0},p(l1,c1){let u1=e1;e1=s1(l1),e1===u1?a1[e1].p(l1,c1):(group_outros(),transition_out(a1[u1],1,1,()=>{a1[u1]=null}),check_outros(),t1=a1[e1],t1?t1.p(l1,c1):(t1=a1[e1]=i1[e1](l1),t1.c()),transition_in(t1,1),t1.m(r1.parentNode,r1))},i(l1){o1||(transition_in(t1),o1=!0)},o(l1){transition_out(t1),o1=!1},d(l1){a1[e1].d(l1),l1&&detach(r1)}}}function create_else_block$A(n1){let e1,t1,r1,o1,i1;function a1(...u1){return n1[15](n1[19],n1[20],...u1)}var s1=n1[2]?ModalBindableInput:DrawerBindableInput;function l1(u1){return{props:{placeholder:u1[8][u1[20].type],panel:ServerBindingPanel,value:Array.isArray(u1[0][u1[19]])?u1[0][u1[19]].join(" "):u1[0][u1[19]],label:u1[19],type:"string",bindings:u1[7],fillWidth:!0,allowJS:!0,updateOnChange:!1}}}s1&&(t1=construct_svelte_component(s1,l1(n1)),t1.$on("change",a1));let c1=n1[3]&&n1[20].type==="link"&&create_if_block_4$c(n1);return{c(){e1=element("div"),t1&&create_component(t1.$$.fragment),r1=space$1(),c1&&c1.c(),o1=space$1()},m(u1,f1){insert$1(u1,e1,f1),t1&&mount_component(t1,e1,null),append$1(e1,r1),c1&&c1.m(e1,null),append$1(e1,o1),i1=!0},p(u1,f1){n1=u1;const p1={};if(f1&16&&(p1.placeholder=n1[8][n1[20].type]),f1&17&&(p1.value=Array.isArray(n1[0][n1[19]])?n1[0][n1[19]].join(" "):n1[0][n1[19]]),f1&16&&(p1.label=n1[19]),f1&128&&(p1.bindings=n1[7]),s1!==(s1=n1[2]?ModalBindableInput:DrawerBindableInput)){if(t1){group_outros();const d1=t1;transition_out(d1.$$.fragment,1,0,()=>{destroy_component(d1,1)}),check_outros()}s1?(t1=construct_svelte_component(s1,l1(n1)),t1.$on("change",a1),create_component(t1.$$.fragment),transition_in(t1.$$.fragment,1),mount_component(t1,e1,r1)):t1=null}else s1&&t1.$set(p1);n1[3]&&n1[20].type==="link"?c1?(c1.p(n1,f1),f1&24&&transition_in(c1,1)):(c1=create_if_block_4$c(n1),c1.c(),transition_in(c1,1),c1.m(e1,o1)):c1&&(group_outros(),transition_out(c1,1,1,()=>{c1=null}),check_outros())},i(u1){i1||(t1&&transition_in(t1.$$.fragment,u1),transition_in(c1),i1=!0)},o(u1){t1&&transition_out(t1.$$.fragment,u1),transition_out(c1),i1=!1},d(u1){u1&&detach(e1),t1&&destroy_component(t1),c1&&c1.d()}}}function create_if_block_3$j(n1){let e1,t1;return e1=new RowSelectorTypes({props:{isTestModal:n1[2],field:n1[19],schema:n1[20],bindings:n1[7],value:n1[0],onChange:n1[10]}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&4&&(i1.isTestModal=r1[2]),o1&16&&(i1.field=r1[19]),o1&16&&(i1.schema=r1[20]),o1&128&&(i1.bindings=r1[7]),o1&1&&(i1.value=r1[0]),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_if_block_4$c(n1){var i1,a1;let e1,t1,r1;function o1(...s1){return n1[16](n1[19],...s1)}return t1=new Checkbox_1({props:{value:(a1=(i1=n1[1].fields)==null?void 0:i1[n1[19]])==null?void 0:a1.clearRelationships,text:"Clear relationships if empty?",size:"S"}}),t1.$on("change",o1),{c(){e1=element("div"),create_component(t1.$$.fragment),attr(e1,"class","checkbox-field svelte-wmc004")},m(s1,l1){insert$1(s1,e1,l1),mount_component(t1,e1,null),r1=!0},p(s1,l1){var u1,f1;n1=s1;const c1={};l1&18&&(c1.value=(f1=(u1=n1[1].fields)==null?void 0:u1[n1[19]])==null?void 0:f1.clearRelationships),t1.$set(c1)},i(s1){r1||(transition_in(t1.$$.fragment,s1),r1=!0)},o(s1){transition_out(t1.$$.fragment,s1),r1=!1},d(s1){s1&&detach(e1),destroy_component(t1)}}}function create_each_block$w(n1){let e1,t1,r1=!n1[20].autocolumn&&create_if_block_1$N(n1);return{c(){r1&&r1.c(),e1=empty$1()},m(o1,i1){r1&&r1.m(o1,i1),insert$1(o1,e1,i1),t1=!0},p(o1,i1){o1[20].autocolumn?r1&&(group_outros(),transition_out(r1,1,1,()=>{r1=null}),check_outros()):r1?(r1.p(o1,i1),i1&16&&transition_in(r1,1)):(r1=create_if_block_1$N(o1),r1.c(),transition_in(r1,1),r1.m(e1.parentNode,e1))},i(o1){t1||(transition_in(r1),t1=!0)},o(o1){transition_out(r1),t1=!1},d(o1){r1&&r1.d(o1),o1&&detach(e1)}}}function create_fragment$2N(n1){let e1,t1,r1,o1;e1=new Select_1$1({props:{value:n1[0].tableId,options:n1[5].list,getOptionLabel:func$a,getOptionValue:func_1$7}}),e1.$on("change",n1[9]);let i1=n1[4].length&&create_if_block$1s(n1);return{c(){create_component(e1.$$.fragment),t1=space$1(),i1&&i1.c(),r1=empty$1()},m(a1,s1){mount_component(e1,a1,s1),insert$1(a1,t1,s1),i1&&i1.m(a1,s1),insert$1(a1,r1,s1),o1=!0},p(a1,[s1]){const l1={};s1&1&&(l1.value=a1[0].tableId),s1&32&&(l1.options=a1[5].list),e1.$set(l1),a1[4].length?i1?(i1.p(a1,s1),s1&16&&transition_in(i1,1)):(i1=create_if_block$1s(a1),i1.c(),transition_in(i1,1),i1.m(r1.parentNode,r1)):i1&&(group_outros(),transition_out(i1,1,1,()=>{i1=null}),check_outros())},i(a1){o1||(transition_in(e1.$$.fragment,a1),transition_in(i1),o1=!0)},o(a1){transition_out(e1.$$.fragment,a1),transition_out(i1),o1=!1},d(a1){destroy_component(e1,a1),a1&&detach(t1),i1&&i1.d(a1),a1&&detach(r1)}}}const func$a=n1=>n1.name,func_1$7=n1=>n1._id;function instance$2Q(n1,e1,t1){let r1,o1,i1;component_subscribe(n1,tables,O1=>t1(5,i1=O1));const a1=createEventDispatcher();let{value:s1}=e1,{meta:l1}=e1,{bindings:c1}=e1,{block:u1}=e1,{isTestModal:f1}=e1,{isUpdateRow:p1}=e1,d1,m1,_1={number:10,boolean:"true",datetime:"2022-02-16T12:00:00.000Z ",options:"1",array:"1 2 3 4",link:"ro_ta_123_456",longform:"long form text"};const h1=O1=>{t1(0,s1.tableId=O1.detail,s1),a1("change",s1)},g1=(O1,C1)=>new RegExp(/{{([^{].*?)}}/g).test(O1)?O1:C1==="boolean"?typeof O1=="boolean"?O1:O1==="true":C1==="number"?typeof O1=="number"?O1:Number(O1):C1==="options"?O1:C1==="array"?Array.isArray(O1)?O1:O1.split(",").map(z1=>z1.trim()):C1==="link"?Array.isArray(O1)?O1:[O1]:C1==="json"?O1.value:O1,$1=(O1,C1,M1)=>{let z1={...s1,[C1]:g1(O1.detail,M1)};a1("change",z1)},y1=(O1,C1)=>{let M1={};M1[C1]={clearRelationships:O1.detail},a1("change",{key:"meta",fields:M1})},w1=(O1,C1,M1)=>$1(M1,O1,C1.type),S1=(O1,C1)=>y1(C1,O1);return n1.$$set=O1=>{"value"in O1&&t1(0,s1=O1.value),"meta"in O1&&t1(1,l1=O1.meta),"bindings"in O1&&t1(12,c1=O1.bindings),"block"in O1&&t1(13,u1=O1.block),"isTestModal"in O1&&t1(2,f1=O1.isTestModal),"isUpdateRow"in O1&&t1(3,p1=O1.isUpdateRow)},n1.$$.update=()=>{var O1;n1.$$.dirty&4096&&t1(7,r1=c1.map(C1=>{let M1=Object.assign({},C1);return M1.icon="ShareAndroid",M1})),n1.$$.dirty&8192&&t1(6,o1=u1.rowControl),n1.$$.dirty&16433&&(t1(14,d1=i1.list.find(C1=>C1._id===(s1==null?void 0:s1.tableId))),t1(4,m1=Object.entries((O1=d1==null?void 0:d1.schema)!=null?O1:{})),m1.map(([,C1])=>{!C1.autocolumn&&!s1[C1.name]&&t1(0,s1[C1.name]="",s1)})),n1.$$.dirty&1&&(s1==null?void 0:s1.tableId)==null&&t1(0,s1={tableId:""})},[s1,l1,f1,p1,m1,i1,o1,r1,_1,h1,$1,y1,c1,u1,d1,w1,S1]}class RowSelector extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$2Q,create_fragment$2N,safe_not_equal,{value:0,meta:1,bindings:12,block:13,isTestModal:2,isUpdateRow:3})}}const FieldSelector_svelte_svelte_type_style_lang="";function get_each_context$v(n1,e1,t1){const r1=n1.slice();return r1[9]=e1[t1][0],r1[10]=e1[t1][1],r1}function create_if_block$1r(n1){let e1,t1,r1=n1[3],o1=[];for(let a1=0;a1<r1.length;a1+=1)o1[a1]=create_each_block$v(get_each_context$v(n1,r1,a1));const i1=a1=>transition_out(o1[a1],1,1,()=>{o1[a1]=null});return{c(){e1=element("div");for(let a1=0;a1<o1.length;a1+=1)o1[a1].c();attr(e1,"class","schema-fields svelte-qnw5bo")},m(a1,s1){insert$1(a1,e1,s1);for(let l1=0;l1<o1.length;l1+=1)o1[l1].m(e1,null);t1=!0},p(a1,s1){if(s1&31){r1=a1[3];let l1;for(l1=0;l1<r1.length;l1+=1){const c1=get_each_context$v(a1,r1,l1);o1[l1]?(o1[l1].p(c1,s1),transition_in(o1[l1],1)):(o1[l1]=create_each_block$v(c1),o1[l1].c(),transition_in(o1[l1],1),o1[l1].m(e1,null))}for(group_outros(),l1=r1.length;l1<o1.length;l1+=1)i1(l1);check_outros()}},i(a1){if(!t1){for(let s1=0;s1<r1.length;s1+=1)transition_in(o1[s1]);t1=!0}},o(a1){o1=o1.filter(Boolean);for(let s1=0;s1<o1.length;s1+=1)transition_out(o1[s1]);t1=!1},d(a1){a1&&detach(e1),destroy_each(o1,a1)}}}function create_each_block$v(n1){let e1,t1;return e1=new RowSelectorTypes({props:{isTestModal:n1[2],field:n1[9],schema:n1[10],bindings:n1[1],value:n1[0],onChange:n1[4]}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&4&&(i1.isTestModal=r1[2]),o1&8&&(i1.field=r1[9]),o1&8&&(i1.schema=r1[10]),o1&2&&(i1.bindings=r1[1]),o1&1&&(i1.value=r1[0]),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_fragment$2M(n1){let e1,t1,r1=n1[3].length&&n1[2]&&create_if_block$1r(n1);return{c(){r1&&r1.c(),e1=empty$1()},m(o1,i1){r1&&r1.m(o1,i1),insert$1(o1,e1,i1),t1=!0},p(o1,[i1]){o1[3].length&&o1[2]?r1?(r1.p(o1,i1),i1&12&&transition_in(r1,1)):(r1=create_if_block$1r(o1),r1.c(),transition_in(r1,1),r1.m(e1.parentNode,e1)):r1&&(group_outros(),transition_out(r1,1,1,()=>{r1=null}),check_outros())},i(o1){t1||(transition_in(r1),t1=!0)},o(o1){transition_out(r1),t1=!1},d(o1){r1&&r1.d(o1),o1&&detach(e1)}}}function instance$2P(n1,e1,t1){const r1=createEventDispatcher();let{value:o1}=e1,{bindings:i1}=e1,{block:a1}=e1,{isTestModal:s1}=e1,l1;const c1={BOOLEAN:null,NUMBER:null,DATETIME:null,STRING:"",OPTIONS:[],ARRAY:[]},u1=(p1,d1)=>new RegExp(/{{([^{].*?)}}/g).test(p1)?p1:d1==="boolean"?typeof p1=="boolean"?p1:p1==="true":d1==="number"?typeof p1=="number"?p1:Number(p1):d1==="options"?[p1]:d1==="array"?Array.isArray(p1)?p1:p1.split(",").map(_1=>_1.trim()):d1==="link"?Array.isArray(p1)?p1:[p1]:p1,f1=(p1,d1,m1)=>{t1(0,o1[d1]=u1(p1.detail,m1),o1),r1("change",o1)};return n1.$$set=p1=>{"value"in p1&&t1(0,o1=p1.value),"bindings"in p1&&t1(1,i1=p1.bindings),"block"in p1&&t1(5,a1=p1.block),"isTestModal"in p1&&t1(2,s1=p1.isTestModal)},n1.$$.update=()=>{var p1,d1;if(n1.$$.dirty&33){let m1={};for(const[_1,h1]of Object.entries((d1=(p1=a1==null?void 0:a1.inputs)==null?void 0:p1.fields)!=null?d1:{}))m1={...m1,[_1]:{type:h1,name:_1,fieldName:_1,constraints:{type:h1}}},o1[_1]===h1&&t1(0,o1[_1]=c1[h1.toUpperCase()],o1);t1(3,l1=Object.entries(m1))}},[o1,i1,s1,l1,f1,a1]}class FieldSelector extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$2P,create_fragment$2M,safe_not_equal,{value:0,bindings:1,block:5,isTestModal:2})}}const SchemaSetup_svelte_svelte_type_style_lang="";function get_each_context$u(n1,e1,t1){const r1=n1.slice();return r1[9]=e1[t1],r1}function create_each_block$u(n1){let e1,t1,r1,o1,i1,a1,s1,l1,c1;t1=new Input$5({props:{value:n1[9].name,secondary:!0,placeholder:"Enter field name",updateOnChange:!1}}),t1.$on("change",function(){is_function(n1[6](n1[9].name))&&n1[6](n1[9].name).apply(this,arguments)});function u1(...p1){return n1[7](n1[9],...p1)}o1=new Select_1$1({props:{value:n1[9].type,options:n1[3]}}),o1.$on("change",u1);function f1(){return n1[8](n1[9])}return{c(){e1=element("div"),create_component(t1.$$.fragment),r1=space$1(),create_component(o1.$$.fragment),i1=space$1(),a1=element("i"),attr(a1,"class","remove-field ri-delete-bin-line"),attr(e1,"class","field svelte-12q6c1o")},m(p1,d1){insert$1(p1,e1,d1),mount_component(t1,e1,null),append$1(e1,r1),mount_component(o1,e1,null),append$1(e1,i1),append$1(e1,a1),s1=!0,l1||(c1=listen(a1,"click",f1),l1=!0)},p(p1,d1){n1=p1;const m1={};d1&2&&(m1.value=n1[9].name),t1.$set(m1);const _1={};d1&2&&(_1.value=n1[9].type),o1.$set(_1)},i(p1){s1||(transition_in(t1.$$.fragment,p1),transition_in(o1.$$.fragment,p1),s1=!0)},o(p1){transition_out(t1.$$.fragment,p1),transition_out(o1.$$.fragment,p1),s1=!1},d(p1){p1&&detach(e1),destroy_component(t1),destroy_component(o1),l1=!1,c1()}}}function create_default_slot$1Y(n1){let e1;return{c(){e1=text("Add field")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_fragment$2L(n1){let e1,t1,r1,o1,i1,a1,s1=n1[1],l1=[];for(let u1=0;u1<s1.length;u1+=1)l1[u1]=create_each_block$u(get_each_context$u(n1,s1,u1));const c1=u1=>transition_out(l1[u1],1,1,()=>{l1[u1]=null});return i1=new Button({props:{quiet:!0,secondary:!0,icon:"Add",$$slots:{default:[create_default_slot$1Y]},$$scope:{ctx:n1}}}),i1.$on("click",n1[4]),{c(){e1=element("div"),t1=element("div"),r1=space$1();for(let u1=0;u1<l1.length;u1+=1)l1[u1].c();o1=space$1(),create_component(i1.$$.fragment),attr(t1,"class","spacer svelte-12q6c1o"),attr(e1,"class","root svelte-12q6c1o")},m(u1,f1){insert$1(u1,e1,f1),append$1(e1,t1),append$1(e1,r1);for(let p1=0;p1<l1.length;p1+=1)l1[p1].m(e1,null);append$1(e1,o1),mount_component(i1,e1,null),a1=!0},p(u1,[f1]){if(f1&111){s1=u1[1];let d1;for(d1=0;d1<s1.length;d1+=1){const m1=get_each_context$u(u1,s1,d1);l1[d1]?(l1[d1].p(m1,f1),transition_in(l1[d1],1)):(l1[d1]=create_each_block$u(m1),l1[d1].c(),transition_in(l1[d1],1),l1[d1].m(e1,o1))}for(group_outros(),d1=s1.length;d1<l1.length;d1+=1)c1(d1);check_outros()}const p1={};f1&4096&&(p1.$$scope={dirty:f1,ctx:u1}),i1.$set(p1)},i(u1){if(!a1){for(let f1=0;f1<s1.length;f1+=1)transition_in(l1[f1]);transition_in(i1.$$.fragment,u1),a1=!0}},o(u1){l1=l1.filter(Boolean);for(let f1=0;f1<l1.length;f1+=1)transition_out(l1[f1]);transition_out(i1.$$.fragment,u1),a1=!1},d(u1){u1&&detach(e1),destroy_each(l1,u1),destroy_component(i1)}}}function instance$2O(n1,e1,t1){let r1;const o1=createEventDispatcher();let{value:i1={}}=e1;const a1=[{label:"Text",value:"string"},{label:"Number",value:"number"},{label:"Boolean",value:"boolean"},{label:"DateTime",value:"datetime"},{label:"Array",value:"array"}];function s1(){const p1={...i1};p1[""]="string",o1("change",p1)}function l1(p1){const d1={...i1};delete d1[p1],o1("change",d1)}const c1=p1=>d1=>{let m1=[...r1];const _1=d1.detail;_1?m1.find(h1=>h1.name===p1).name=_1:m1=m1.filter(h1=>h1.name!==p1),t1(0,i1=m1.reduce((h1,g1)=>(h1[g1.name.trim()]=g1.type,h1),{})),o1("change",i1)},u1=(p1,d1)=>{t1(0,i1[p1.name]=d1.detail,i1),o1("change",i1)},f1=p1=>l1(p1.name);return n1.$$set=p1=>{"value"in p1&&t1(0,i1=p1.value)},n1.$$.update=()=>{n1.$$.dirty&1&&t1(1,r1=i1?Object.entries(i1).map(([p1,d1])=>({name:p1,type:d1})):[])},[i1,r1,o1,a1,s1,l1,c1,u1,f1]}class SchemaSetup extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$2O,create_fragment$2L,safe_not_equal,{value:0})}}function create_fragment$2K(n1){let e1,t1;return e1=new CopyInput({props:{value:fullWebhookURL(n1[0])}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,[o1]){const i1={};o1&1&&(i1.value=fullWebhookURL(r1[0])),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function fullWebhookURL(n1){return n1?`${window.location.origin}/${n1}`:""}function instance$2N(n1,e1,t1){let{value:r1}=e1;return n1.$$set=o1=>{"value"in o1&&t1(0,r1=o1.value)},[r1]}class WebhookDisplay extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$2N,create_fragment$2K,safe_not_equal,{value:0})}}const CreateWebhookModal_svelte_svelte_type_style_lang="";function create_if_block$1q(n1){let e1,t1,r1,o1,i1=n1[2]>1?"s":"",a1,s1;return{c(){e1=element("p"),t1=text(`Request received! We found
1738
+ `,AppPreview_svelte_svelte_type_style_lang="";function create_if_block_1$Q(n1){let e1,t1,r1;return t1=new Layout$m({props:{justifyItems:"center",gap:"S",$$slots:{default:[create_default_slot_1$1K]},$$scope:{ctx:n1}}}),{c(){e1=element("div"),create_component(t1.$$.fragment),attr(e1,"class","center error svelte-ogzj7")},m(o1,i1){insert$1(o1,e1,i1),mount_component(t1,e1,null),r1=!0},p(o1,i1){const a1={};i1&67108880&&(a1.$$scope={dirty:i1,ctx:o1}),t1.$set(a1)},i(o1){r1||(transition_in(t1.$$.fragment,o1),r1=!0)},o(o1){transition_out(t1.$$.fragment,o1),r1=!1},d(o1){o1&&detach(e1),destroy_component(t1)}}}function create_if_block$1E(n1){let e1,t1,r1;return t1=new ProgressCircle({}),{c(){e1=element("div"),create_component(t1.$$.fragment),attr(e1,"class","center svelte-ogzj7")},m(o1,i1){insert$1(o1,e1,i1),mount_component(t1,e1,null),r1=!0},p:noop$5,i(o1){r1||(transition_in(t1.$$.fragment,o1),r1=!0)},o(o1){transition_out(t1.$$.fragment,o1),r1=!1},d(o1){o1&&detach(e1),destroy_component(t1)}}}function create_default_slot_3$17(n1){let e1;return{c(){e1=text("App preview failed to load")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot_2$1n(n1){let e1;return{c(){e1=text(n1[4])},m(t1,r1){insert$1(t1,e1,r1)},p(t1,r1){r1&16&&set_data(e1,t1[4])},d(t1){t1&&detach(e1)}}}function create_default_slot_1$1K(n1){let e1,t1,r1,o1,i1,a1;return r1=new Heading({props:{size:"L",$$slots:{default:[create_default_slot_3$17]},$$scope:{ctx:n1}}}),i1=new Body({props:{size:"S",$$slots:{default:[create_default_slot_2$1n]},$$scope:{ctx:n1}}}),{c(){e1=new HtmlTag(!1),t1=space$1(),create_component(r1.$$.fragment),o1=space$1(),create_component(i1.$$.fragment),e1.a=t1},m(s1,l1){e1.m(ErrorSVG,s1,l1),insert$1(s1,t1,l1),mount_component(r1,s1,l1),insert$1(s1,o1,l1),mount_component(i1,s1,l1),a1=!0},p(s1,l1){const c1={};l1&67108864&&(c1.$$scope={dirty:l1,ctx:s1}),r1.$set(c1);const u1={};l1&67108880&&(u1.$$scope={dirty:l1,ctx:s1}),i1.$set(u1)},i(s1){a1||(transition_in(r1.$$.fragment,s1),transition_in(i1.$$.fragment,s1),a1=!0)},o(s1){transition_out(r1.$$.fragment,s1),transition_out(i1.$$.fragment,s1),a1=!1},d(s1){s1&&e1.d(),s1&&detach(t1),destroy_component(r1,s1),s1&&detach(o1),destroy_component(i1,s1)}}}function create_default_slot$29(n1){let e1;return{c(){e1=text("Component")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_fragment$3a(n1){let e1,t1,r1,o1,i1,a1,s1,l1,c1,u1,f1,p1,d1,m1;const _1=[create_if_block$1E,create_if_block_1$Q],h1=[];function g1(y1,w1){return y1[3]?0:y1[4]?1:-1}~(t1=g1(n1))&&(r1=h1[t1]=_1[t1](n1)),c1=new Icon({props:{size:"XL",name:"Add",$$slots:{default:[create_default_slot$29]},$$scope:{ctx:n1}}});let $1={title:"Confirm Deletion",body:"Are you sure you want to delete this component?",okText:"Delete component",onOk:n1[6],onCancel:n1[7]};return f1=new ConfirmDialog({props:$1}),n1[17](f1),{c(){e1=element("div"),r1&&r1.c(),o1=space$1(),i1=element("iframe"),s1=space$1(),l1=element("div"),create_component(c1.$$.fragment),u1=space$1(),create_component(f1.$$.fragment),attr(i1,"title","componentPreview"),src_url_equal(i1.src,a1="/app/preview")||attr(i1,"src",a1),attr(i1,"class","svelte-ogzj7"),toggle_class(i1,"hidden",n1[3]||n1[4]),toggle_class(i1,"tablet",n1[1].previewDevice==="tablet"),toggle_class(i1,"mobile",n1[1].previewDevice==="mobile"),attr(l1,"class","add-component svelte-ogzj7"),toggle_class(l1,"active",n1[5]),attr(e1,"class","component-container svelte-ogzj7")},m(y1,w1){insert$1(y1,e1,w1),~t1&&h1[t1].m(e1,null),append$1(e1,o1),append$1(e1,i1),n1[16](i1),append$1(e1,s1),append$1(e1,l1),mount_component(c1,l1,null),insert$1(y1,u1,w1),mount_component(f1,y1,w1),p1=!0,d1||(m1=listen(l1,"click",n1[8]),d1=!0)},p(y1,[w1]){let S1=t1;t1=g1(y1),t1===S1?~t1&&h1[t1].p(y1,w1):(r1&&(group_outros(),transition_out(h1[S1],1,1,()=>{h1[S1]=null}),check_outros()),~t1?(r1=h1[t1],r1?r1.p(y1,w1):(r1=h1[t1]=_1[t1](y1),r1.c()),transition_in(r1,1),r1.m(e1,o1)):r1=null),(!p1||w1&24)&&toggle_class(i1,"hidden",y1[3]||y1[4]),(!p1||w1&2)&&toggle_class(i1,"tablet",y1[1].previewDevice==="tablet"),(!p1||w1&2)&&toggle_class(i1,"mobile",y1[1].previewDevice==="mobile");const O1={};w1&67108864&&(O1.$$scope={dirty:w1,ctx:y1}),c1.$set(O1),(!p1||w1&32)&&toggle_class(l1,"active",y1[5]);const C1={};f1.$set(C1)},i(y1){p1||(transition_in(r1),transition_in(c1.$$.fragment,y1),transition_in(f1.$$.fragment,y1),p1=!0)},o(y1){transition_out(r1),transition_out(c1.$$.fragment,y1),transition_out(f1.$$.fragment,y1),p1=!1},d(y1){y1&&detach(e1),~t1&&h1[t1].d(),n1[16](null),destroy_component(c1),y1&&detach(u1),n1[17](null),destroy_component(f1,y1),d1=!1,m1()}}}function instance$3d(n1,e1,t1){let r1,o1,i1,a1,s1,l1,c1,u1,f1;component_subscribe(n1,goto,q1=>t1(19,l1=q1)),component_subscribe(n1,isActive,q1=>t1(14,c1=q1)),component_subscribe(n1,store,q1=>t1(1,u1=q1)),component_subscribe(n1,selectedScreen,q1=>t1(15,f1=q1));let p1,d1,m1,_1,h1,g1=!0,$1;const y1={READY:"ready",ERROR:"error",BUDIBASE:"type"},w1=q1=>{p1==null||p1.contentWindow.postMessage(q1)},S1=async q1=>{var R1,I1,F1;if(!!((R1=q1==null?void 0:q1.data)!=null&&R1.type)){try{await O1(q1)}catch(j1){notifications.error(j1||"Error handling event from app preview")}(I1=q1.data)!=null&&I1.id&&s1("event-completed",(F1=q1.data)==null?void 0:F1.id)}},O1=async q1=>{var F1;const{type:R1,data:I1}=q1.data;if(R1===y1.READY){if(!g1)return;w1(i1)}else if(R1===y1.ERROR)t1(3,g1=!1),t1(4,$1=q1.error||"An unknown error occurred");else if(R1==="select-component"&&I1.id)set_store_value(store,u1.selectedComponentId=I1.id,u1);else if(R1==="update-prop")await store.actions.components.updateSetting(I1.prop,I1.value);else if(R1==="update-styles")await store.actions.components.updateStyles(I1.styles,I1.id);else if(R1==="delete-component"&&I1.id)C1(I1.id);else if(R1==="key-down"){const{key:j1,ctrlKey:X1}=I1;document.dispatchEvent(new KeyboardEvent("keydown",{key:j1,ctrlKey:X1}))}else if(R1==="duplicate-component"&&I1.id){const j1=get_store_value(currentAsset).props,X1=findComponent(j1,I1.id);store.actions.components.copy(X1),await store.actions.components.paste(X1)}else if(R1==="preview-loaded")t1(3,g1=!1);else if(R1==="move-component"){const{componentId:j1,destinationComponentId:X1}=I1,Y1=get_store_value(currentAsset).props,Q1=findComponent(Y1,j1),e0=findComponent(Y1,X1);if(findComponentPath(Q1,X1).map(r0=>r0._id).includes(I1.destinationComponentId))return;Q1&&e0&&(store.actions.components.copy(Q1,!0,!1),await store.actions.components.paste(e0,I1.mode))}else if(R1==="request-add-component")D1();else if(R1==="highlight-setting"){store.actions.settings.highlight(I1.setting);const j1=`#${I1.setting}-prop-control`,X1=(F1=document.querySelector(j1))==null?void 0:F1.parentElement;X1&&X1.scrollIntoView({behavior:"smooth",block:"center"})}else if(R1==="eject-block"){const{id:j1,definition:X1}=I1;await store.actions.components.handleEjectBlock(j1,X1)}else if(R1==="reload-plugin")await store.actions.components.refreshDefinitions();else if(R1==="drop-new-component"){const{component:j1,parent:X1,index:Y1}=I1;await store.actions.components.create(j1,null,X1,Y1)}else if(R1==="add-parent-component"){const{componentId:j1,parentType:X1}=I1;await store.actions.components.addParent(j1,X1)}else console.warn(`Client sent unknown event type: ${R1}`)},C1=q1=>{h1=q1,_1.show()},M1=async()=>{try{await store.actions.components.delete({_id:h1})}catch{notifications.error("Error deleting component")}h1=null},z1=()=>{h1=null},D1=()=>{c1("./:componentId/new")?l1("./:componentId"):l1("./:componentId/new")};onMount(()=>{window.addEventListener("message",S1)}),onDestroy(()=>{window.removeEventListener("message",S1)});function H1(q1){binding_callbacks[q1?"unshift":"push"](()=>{p1=q1,t1(0,p1)})}function B1(q1){binding_callbacks[q1?"unshift":"push"](()=>{_1=q1,t1(2,_1)})}return n1.$$.update=()=>{var q1,R1,I1;n1.$$.dirty&32768&&t1(9,m1=f1),n1.$$.dirty&2&&t1(12,r1=u1.selectedComponentId),n1.$$.dirty&4610&&t1(13,o1={appId:u1.appId,layout:d1,screen:m1,selectedComponentId:r1,theme:u1.theme,customTheme:u1.customTheme,previewDevice:u1.previewDevice,messagePassing:u1.clientFeatures.messagePassing,navigation:u1.navigation,hiddenComponentIds:((q1=u1.componentToPaste)==null?void 0:q1._id)&&((R1=u1.componentToPaste)==null?void 0:R1.isCut)?[(I1=u1.componentToPaste)==null?void 0:I1._id]:[],isBudibaseEvent:!0,usedPlugins:u1.usedPlugins,location:{protocol:window.location.protocol,hostname:window.location.hostname,port:window.location.port}}),n1.$$.dirty&8192&&t1(10,i1=JSON.stringify(o1)),n1.$$.dirty&1024&&w1(i1),n1.$$.dirty&20480&&t1(5,a1=c1(`./${r1}/new`)),n1.$$.dirty&1&&t1(11,s1=(F1,j1)=>{p1==null||p1.contentWindow.postMessage(JSON.stringify({name:F1,payload:j1,isBudibaseEvent:!0,runtimeEvent:!0}))}),n1.$$.dirty&2048&&store.actions.preview.registerEventHandler(s1)},[p1,u1,_1,g1,$1,a1,M1,z1,D1,m1,i1,s1,r1,o1,c1,f1,H1,B1]}class AppPreview extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$3d,create_fragment$3a,safe_not_equal,{})}}const UndoRedoControl_svelte_svelte_type_style_lang="";function create_fragment$39(n1){let e1,t1,r1,o1,i1;return t1=new Icon({props:{name:"Undo",hoverable:!0,disabled:!n1[1].canUndo}}),t1.$on("click",function(){is_function(n1[0].undo)&&n1[0].undo.apply(this,arguments)}),o1=new Icon({props:{name:"Redo",hoverable:!0,disabled:!n1[1].canRedo}}),o1.$on("click",function(){is_function(n1[0].redo)&&n1[0].redo.apply(this,arguments)}),{c(){e1=element("div"),create_component(t1.$$.fragment),r1=space$1(),create_component(o1.$$.fragment),attr(e1,"class","undo-redo svelte-1ykfm7c")},m(a1,s1){insert$1(a1,e1,s1),mount_component(t1,e1,null),append$1(e1,r1),mount_component(o1,e1,null),i1=!0},p(a1,[s1]){n1=a1;const l1={};s1&2&&(l1.disabled=!n1[1].canUndo),t1.$set(l1);const c1={};s1&2&&(c1.disabled=!n1[1].canRedo),o1.$set(c1)},i(a1){i1||(transition_in(t1.$$.fragment,a1),transition_in(o1.$$.fragment,a1),i1=!0)},o(a1){transition_out(t1.$$.fragment,a1),transition_out(o1.$$.fragment,a1),i1=!1},d(a1){a1&&detach(e1),destroy_component(t1),destroy_component(o1)}}}function instance$3c(n1,e1,t1){let r1,o1=noop$5,i1=()=>(o1(),o1=subscribe(a1,l1=>t1(1,r1=l1)),a1);n1.$$.on_destroy.push(()=>o1());let{store:a1}=e1;i1();const s1=l1=>{if(!(l1.ctrlKey||l1.metaKey))return;let c1=l1.key.toLowerCase();isBuilderInputFocused(l1)||(l1.shiftKey&&c1==="z"?a1.redo():c1==="z"&&a1.undo())};return onMount(()=>(document.addEventListener("keydown",s1),()=>{document.removeEventListener("keydown",s1)})),n1.$$set=l1=>{"store"in l1&&i1(t1(0,a1=l1.store))},[a1,r1]}class UndoRedoControl extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$3c,create_fragment$39,safe_not_equal,{store:0})}}const AppPanel_svelte_svelte_type_style_lang="";function create_if_block$1D(n1){let e1,t1;return e1=new DevicePreviewSelect({}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_key_block$3(n1){let e1,t1;return e1=new AppPreview({}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p:noop$5,i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_fragment$38(n1){let e1,t1,r1,o1,i1,a1,s1,l1,c1=n1[0].version,u1;o1=new UndoRedoControl({props:{store:screenHistoryStore}});let f1=n1[0].clientFeatures.devicePreview&&create_if_block$1D(),p1=create_key_block$3();return{c(){e1=element("div"),t1=element("div"),r1=element("div"),create_component(o1.$$.fragment),i1=space$1(),a1=element("div"),f1&&f1.c(),s1=space$1(),l1=element("div"),p1.c(),attr(r1,"class","header-left svelte-1lqfjei"),attr(a1,"class","header-right svelte-1lqfjei"),attr(t1,"class","header svelte-1lqfjei"),attr(l1,"class","content svelte-1lqfjei"),attr(e1,"class","app-panel svelte-1lqfjei")},m(d1,m1){insert$1(d1,e1,m1),append$1(e1,t1),append$1(t1,r1),mount_component(o1,r1,null),append$1(t1,i1),append$1(t1,a1),f1&&f1.m(a1,null),append$1(e1,s1),append$1(e1,l1),p1.m(l1,null),u1=!0},p(d1,[m1]){d1[0].clientFeatures.devicePreview?f1?m1&1&&transition_in(f1,1):(f1=create_if_block$1D(),f1.c(),transition_in(f1,1),f1.m(a1,null)):f1&&(group_outros(),transition_out(f1,1,1,()=>{f1=null}),check_outros()),m1&1&&safe_not_equal(c1,c1=d1[0].version)?(group_outros(),transition_out(p1,1,1,noop$5),check_outros(),p1=create_key_block$3(),p1.c(),transition_in(p1,1),p1.m(l1,null)):p1.p(d1,m1)},i(d1){u1||(transition_in(o1.$$.fragment,d1),transition_in(f1),transition_in(p1),u1=!0)},o(d1){transition_out(o1.$$.fragment,d1),transition_out(f1),transition_out(p1),u1=!1},d(d1){d1&&detach(e1),destroy_component(o1),f1&&f1.d(),p1.d(d1)}}}function instance$3b(n1,e1,t1){let r1;return component_subscribe(n1,store,o1=>t1(0,r1=o1)),[r1]}class AppPanel extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$3b,create_fragment$38,safe_not_equal,{})}}const RoleIndicator_svelte_svelte_type_style_lang="";function create_if_block$1C(n1){let e1,t1,r1;return t1=new Tooltip$1({props:{textWrapping:!0,text:n1[1],direction:"right"}}),{c(){e1=element("div"),create_component(t1.$$.fragment),attr(e1,"class","tooltip svelte-1vfibm3")},m(o1,i1){insert$1(o1,e1,i1),mount_component(t1,e1,null),r1=!0},p(o1,i1){const a1={};i1&2&&(a1.text=o1[1]),t1.$set(a1)},i(o1){r1||(transition_in(t1.$$.fragment,o1),r1=!0)},o(o1){transition_out(t1.$$.fragment,o1),r1=!1},d(o1){o1&&detach(e1),destroy_component(t1)}}}function create_fragment$37(n1){let e1,t1,r1,o1,i1,a1;t1=new StatusLight({props:{square:!0,color:n1[2]}});let s1=n1[0]&&create_if_block$1C(n1);return{c(){e1=element("div"),create_component(t1.$$.fragment),r1=space$1(),s1&&s1.c(),attr(e1,"class","container svelte-1vfibm3"),set_style(e1,"--color",n1[2])},m(l1,c1){insert$1(l1,e1,c1),mount_component(t1,e1,null),append$1(e1,r1),s1&&s1.m(e1,null),o1=!0,i1||(a1=[listen(e1,"mouseover",n1[7]),listen(e1,"mouseleave",n1[8]),listen(e1,"focus",n1[6])],i1=!0)},p(l1,[c1]){const u1={};c1&4&&(u1.color=l1[2]),t1.$set(u1),l1[0]?s1?(s1.p(l1,c1),c1&1&&transition_in(s1,1)):(s1=create_if_block$1C(l1),s1.c(),transition_in(s1,1),s1.m(e1,null)):s1&&(group_outros(),transition_out(s1,1,1,()=>{s1=null}),check_outros()),(!o1||c1&4)&&set_style(e1,"--color",l1[2])},i(l1){o1||(transition_in(t1.$$.fragment,l1),transition_in(s1),o1=!0)},o(l1){transition_out(t1.$$.fragment,l1),transition_out(s1),o1=!1},d(l1){l1&&detach(e1),destroy_component(t1),s1&&s1.d(),i1=!1,run_all(a1)}}}function instance$3a(n1,e1,t1){let r1,o1,i1,a1;component_subscribe(n1,roles,p1=>t1(5,a1=p1));let{roleId:s1}=e1,l1=!1;function c1(p1){bubble.call(this,n1,p1)}const u1=()=>t1(0,l1=!0),f1=()=>t1(0,l1=!1);return n1.$$set=p1=>{"roleId"in p1&&t1(3,s1=p1.roleId)},n1.$$.update=()=>{n1.$$.dirty&8&&t1(2,r1=getRoleColour(s1)),n1.$$.dirty&40&&t1(4,o1=a1.find(p1=>p1._id===s1)),n1.$$.dirty&24&&t1(1,i1=s1===Roles.PUBLIC?"Open to the public":`Requires ${o1==null?void 0:o1.name} access`)},[l1,i1,r1,s1,o1,a1,c1,u1,f1]}class RoleIndicator extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$3a,create_fragment$37,safe_not_equal,{roleId:3})}}const ScreenDetailsModal_svelte_svelte_type_style_lang="";function create_default_slot$28(n1){let e1,t1,r1,o1,i1,a1;function s1(c1){n1[10](c1)}let l1={label:"Enter a URL for the new screen",error:n1[4]};return n1[0]!==void 0&&(l1.value=n1[0]),e1=new Input$5({props:l1}),binding_callbacks.push(()=>bind$3(e1,"value",s1)),e1.$on("change",n1[6]),{c(){create_component(e1.$$.fragment),r1=space$1(),o1=element("div"),i1=text(n1[5]),attr(o1,"class","app-server svelte-ygkcrb"),attr(o1,"title",n1[5])},m(c1,u1){mount_component(e1,c1,u1),insert$1(c1,r1,u1),insert$1(c1,o1,u1),append$1(o1,i1),a1=!0},p(c1,u1){const f1={};u1&16&&(f1.error=c1[4]),!t1&&u1&1&&(t1=!0,f1.value=c1[0],add_flush_callback(()=>t1=!1)),e1.$set(f1),(!a1||u1&32)&&set_data(i1,c1[5]),(!a1||u1&32)&&attr(o1,"title",c1[5])},i(c1){a1||(transition_in(e1.$$.fragment,c1),a1=!0)},o(c1){transition_out(e1.$$.fragment,c1),a1=!1},d(c1){destroy_component(e1,c1),c1&&detach(r1),c1&&detach(o1)}}}function create_fragment$36(n1){let e1,t1;return e1=new ModalContent({props:{size:"M",title:"Screen details",confirmText:n1[2],onConfirm:n1[7],onCancel:n1[1],cancelText:"Back",disabled:!n1[0]||n1[4]||!n1[3],$$slots:{default:[create_default_slot$28]},$$scope:{ctx:n1}}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,[o1]){const i1={};o1&4&&(i1.confirmText=r1[2]),o1&2&&(i1.onCancel=r1[1]),o1&25&&(i1.disabled=!r1[0]||r1[4]||!r1[3]),o1&4145&&(i1.$$scope={dirty:o1,ctx:r1}),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}const appPrefix$1="/app";function instance$39(n1,e1,t1){let r1,{onConfirm:o1}=e1,{onCancel:i1}=e1,{screenUrl:a1}=e1,{screenRole:s1}=e1,{confirmText:l1="Continue"}=e1,c1=!1,u1;const f1=_1=>{_1.detail.startsWith("/")||t1(0,a1="/"+_1.detail),t1(3,c1=!0),t1(0,a1=sanitizeUrl(a1)),p1(a1)?t1(4,u1="This URL is already taken for this access role"):t1(4,u1=null)},p1=_1=>s1?get_store_value(store).screens.some(h1=>h1.routing.route.toLowerCase()===_1.toLowerCase()&&h1.routing.roleId===s1):!1,d1=async()=>{await o1({screenUrl:a1})};function m1(_1){a1=_1,t1(0,a1)}return n1.$$set=_1=>{"onConfirm"in _1&&t1(8,o1=_1.onConfirm),"onCancel"in _1&&t1(1,i1=_1.onCancel),"screenUrl"in _1&&t1(0,a1=_1.screenUrl),"screenRole"in _1&&t1(9,s1=_1.screenRole),"confirmText"in _1&&t1(2,l1=_1.confirmText)},n1.$$.update=()=>{n1.$$.dirty&1&&t1(5,r1=a1?`${window.location.origin}${appPrefix$1}${a1}`:`${window.location.origin}${appPrefix$1}`)},[a1,i1,l1,c1,u1,r1,f1,d1,o1,s1,m1]}class ScreenDetailsModal extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$39,create_fragment$36,safe_not_equal,{onConfirm:8,onCancel:1,screenUrl:0,screenRole:9,confirmText:2})}}const DropdownMenu_svelte_svelte_type_style_lang="";function create_default_slot_4$W(n1){let e1;return{c(){e1=text("Paste inside")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot_3$16(n1){let e1;return{c(){e1=text("Duplicate")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot_2$1m(n1){let e1;return{c(){e1=text("Delete")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot_1$1J(n1){let e1,t1,r1,o1,i1,a1;return e1=new Item({props:{icon:"ShowOneLayer",disabled:n1[3],$$slots:{default:[create_default_slot_4$W]},$$scope:{ctx:n1}}}),e1.$on("click",n1[10]),r1=new Item({props:{icon:"Duplicate",$$slots:{default:[create_default_slot_3$16]},$$scope:{ctx:n1}}}),r1.$on("click",n1[5]),i1=new Item({props:{icon:"Delete",$$slots:{default:[create_default_slot_2$1m]},$$scope:{ctx:n1}}}),i1.$on("click",function(){is_function(n1[1].show)&&n1[1].show.apply(this,arguments)}),{c(){create_component(e1.$$.fragment),t1=space$1(),create_component(r1.$$.fragment),o1=space$1(),create_component(i1.$$.fragment)},m(s1,l1){mount_component(e1,s1,l1),insert$1(s1,t1,l1),mount_component(r1,s1,l1),insert$1(s1,o1,l1),mount_component(i1,s1,l1),a1=!0},p(s1,l1){n1=s1;const c1={};l1&8&&(c1.disabled=n1[3]),l1&8192&&(c1.$$scope={dirty:l1,ctx:n1}),e1.$set(c1);const u1={};l1&8192&&(u1.$$scope={dirty:l1,ctx:n1}),r1.$set(u1);const f1={};l1&8192&&(f1.$$scope={dirty:l1,ctx:n1}),i1.$set(f1)},i(s1){a1||(transition_in(e1.$$.fragment,s1),transition_in(r1.$$.fragment,s1),transition_in(i1.$$.fragment,s1),a1=!0)},o(s1){transition_out(e1.$$.fragment,s1),transition_out(r1.$$.fragment,s1),transition_out(i1.$$.fragment,s1),a1=!1},d(s1){destroy_component(e1,s1),s1&&detach(t1),destroy_component(r1,s1),s1&&detach(o1),destroy_component(i1,s1)}}}function create_control_slot$8(n1){let e1,t1,r1;return t1=new Icon({props:{size:"S",hoverable:!0,name:"MoreSmallList"}}),{c(){e1=element("div"),create_component(t1.$$.fragment),attr(e1,"slot","control"),attr(e1,"class","icon svelte-u6s22l")},m(o1,i1){insert$1(o1,e1,i1),mount_component(t1,e1,null),r1=!0},p:noop$5,i(o1){r1||(transition_in(t1.$$.fragment,o1),r1=!0)},o(o1){transition_out(t1.$$.fragment,o1),r1=!1},d(o1){o1&&detach(e1),destroy_component(t1)}}}function create_default_slot$27(n1){var r1,o1;let e1,t1;return e1=new ScreenDetailsModal({props:{onConfirm:n1[6],screenUrl:(r1=n1[0])==null?void 0:r1.routing.route,screenRole:(o1=n1[0])==null?void 0:o1.routing.roleId,confirmText:"Duplicate"}}),{c(){create_component(e1.$$.fragment)},m(i1,a1){mount_component(e1,i1,a1),t1=!0},p(i1,a1){var l1,c1;const s1={};a1&1&&(s1.screenUrl=(l1=i1[0])==null?void 0:l1.routing.route),a1&1&&(s1.screenRole=(c1=i1[0])==null?void 0:c1.routing.roleId),e1.$set(s1)},i(i1){t1||(transition_in(e1.$$.fragment,i1),t1=!0)},o(i1){transition_out(e1.$$.fragment,i1),t1=!1},d(i1){destroy_component(e1,i1)}}}function create_fragment$35(n1){let e1,t1,r1,o1,i1,a1;e1=new ActionMenu({props:{$$slots:{control:[create_control_slot$8],default:[create_default_slot_1$1J]},$$scope:{ctx:n1}}});let s1={title:"Confirm Deletion",body:"Are you sure you wish to delete this screen?",okText:"Delete screen",onOk:n1[7]};r1=new ConfirmDialog({props:s1}),n1[11](r1);let l1={$$slots:{default:[create_default_slot$27]},$$scope:{ctx:n1}};return i1=new Modal({props:l1}),n1[12](i1),{c(){create_component(e1.$$.fragment),t1=space$1(),create_component(r1.$$.fragment),o1=space$1(),create_component(i1.$$.fragment)},m(c1,u1){mount_component(e1,c1,u1),insert$1(c1,t1,u1),mount_component(r1,c1,u1),insert$1(c1,o1,u1),mount_component(i1,c1,u1),a1=!0},p(c1,[u1]){const f1={};u1&8202&&(f1.$$scope={dirty:u1,ctx:c1}),e1.$set(f1);const p1={};r1.$set(p1);const d1={};u1&8193&&(d1.$$scope={dirty:u1,ctx:c1}),i1.$set(d1)},i(c1){a1||(transition_in(e1.$$.fragment,c1),transition_in(r1.$$.fragment,c1),transition_in(i1.$$.fragment,c1),a1=!0)},o(c1){transition_out(e1.$$.fragment,c1),transition_out(r1.$$.fragment,c1),transition_out(i1.$$.fragment,c1),a1=!1},d(c1){destroy_component(e1,c1),c1&&detach(t1),n1[11](null),destroy_component(r1,c1),c1&&detach(o1),n1[12](null),destroy_component(i1,c1)}}}function instance$38(n1,e1,t1){let r1,o1,i1;component_subscribe(n1,store,h1=>t1(9,i1=h1));let{screenId:a1}=e1,s1,l1;const c1=h1=>{try{store.actions.components.paste(r1.props,h1,r1)}catch{notifications.error("Error saving component")}},u1=()=>{l1.show()},f1=async({screenName:h1,screenUrl:g1})=>{let $1=cloneDeep(r1);delete $1._id,delete $1._rev,$1.props=makeComponentUnique($1.props),$1.routing.route=sanitizeUrl(g1),$1.routing.homeScreen=!1,$1.props._instanceName=h1;try{await store.actions.screens.save($1)}catch{notifications.error("Error duplicating screen")}},p1=async()=>{try{await store.actions.screens.delete(r1),notifications.success("Deleted screen successfully")}catch{notifications.error("Error deleting screen")}},d1=()=>c1("inside");function m1(h1){binding_callbacks[h1?"unshift":"push"](()=>{s1=h1,t1(1,s1)})}function _1(h1){binding_callbacks[h1?"unshift":"push"](()=>{l1=h1,t1(2,l1)})}return n1.$$set=h1=>{"screenId"in h1&&t1(8,a1=h1.screenId)},n1.$$.update=()=>{n1.$$.dirty&768&&t1(0,r1=i1.screens.find(h1=>h1._id===a1)),n1.$$.dirty&512&&t1(3,o1=!i1.componentToPaste)},[r1,s1,l1,o1,c1,u1,f1,p1,a1,i1,d1,m1,_1]}class DropdownMenu extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$38,create_fragment$35,safe_not_equal,{screenId:8})}}const index_svelte_svelte_type_style_lang$f="";function get_each_context$z(n1,e1,t1){const r1=n1.slice();return r1[31]=e1[t1],r1}function create_default_slot_2$1l(n1){let e1;return{c(){e1=text("Screens")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_else_block$B(n1){let e1,t1;return e1=new Layout$m({props:{paddingY:"none",paddingX:"L",$$slots:{default:[create_default_slot_1$1I]},$$scope:{ctx:n1}}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1[1]&8&&(i1.$$scope={dirty:o1,ctx:r1}),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_if_block$1B(n1){let e1=[],t1=new Map,r1,o1,i1=n1[7];const a1=s1=>s1[31]._id;for(let s1=0;s1<i1.length;s1+=1){let l1=get_each_context$z(n1,i1,s1),c1=a1(l1);t1.set(c1,e1[s1]=create_each_block$z(c1,l1))}return{c(){for(let s1=0;s1<e1.length;s1+=1)e1[s1].c();r1=empty$1()},m(s1,l1){for(let c1=0;c1<e1.length;c1+=1)e1[c1].m(s1,l1);insert$1(s1,r1,l1),o1=!0},p(s1,l1){l1[0]&1664&&(i1=s1[7],group_outros(),e1=update_keyed_each(e1,l1,a1,1,s1,i1,t1,r1.parentNode,outro_and_destroy_block,create_each_block$z,r1,get_each_context$z),check_outros())},i(s1){if(!o1){for(let l1=0;l1<i1.length;l1+=1)transition_in(e1[l1]);o1=!0}},o(s1){for(let l1=0;l1<e1.length;l1+=1)transition_out(e1[l1]);o1=!1},d(s1){for(let l1=0;l1<e1.length;l1+=1)e1[l1].d(s1);s1&&detach(r1)}}}function create_default_slot_1$1I(n1){let e1;return{c(){e1=element("div"),e1.textContent="There aren't any screens matching that route",attr(e1,"class","no-results svelte-1vqjoqt")},m(t1,r1){insert$1(t1,e1,r1)},p:noop$5,d(t1){t1&&detach(e1)}}}function create_default_slot$26(n1){let e1,t1,r1;return e1=new DropdownMenu({props:{screenId:n1[31]._id}}),{c(){create_component(e1.$$.fragment),t1=space$1()},m(o1,i1){mount_component(e1,o1,i1),insert$1(o1,t1,i1),r1=!0},p(o1,i1){const a1={};i1[0]&128&&(a1.screenId=o1[31]._id),e1.$set(a1)},i(o1){r1||(transition_in(e1.$$.fragment,o1),r1=!0)},o(o1){transition_out(e1.$$.fragment,o1),r1=!1},d(o1){destroy_component(e1,o1),o1&&detach(t1)}}}function create_icon_slot(n1){let e1,t1,r1,o1;return t1=new RoleIndicator({props:{roleId:n1[31].routing.roleId}}),{c(){e1=element("div"),create_component(t1.$$.fragment),r1=space$1(),attr(e1,"slot","icon"),attr(e1,"class","icon svelte-1vqjoqt")},m(i1,a1){insert$1(i1,e1,a1),mount_component(t1,e1,null),append$1(e1,r1),o1=!0},p(i1,a1){const s1={};a1[0]&128&&(s1.roleId=i1[31].routing.roleId),t1.$set(s1)},i(i1){o1||(transition_in(t1.$$.fragment,i1),o1=!0)},o(i1){transition_out(t1.$$.fragment,i1),o1=!1},d(i1){i1&&detach(e1),destroy_component(t1)}}}function create_each_block$z(n1,e1){let t1,r1,o1;function i1(){return e1[19](e1[31])}return r1=new NavItem({props:{icon:e1[31].routing.homeScreen?"Home":null,indentLevel:0,selected:e1[9].selectedScreenId===e1[31]._id,text:e1[31].routing.route,rightAlignIcon:!0,showTooltip:!0,selectedBy:e1[10][e1[31]._id],$$slots:{icon:[create_icon_slot],default:[create_default_slot$26]},$$scope:{ctx:e1}}}),r1.$on("click",i1),{key:n1,first:null,c(){t1=empty$1(),create_component(r1.$$.fragment),this.first=t1},m(a1,s1){insert$1(a1,t1,s1),mount_component(r1,a1,s1),o1=!0},p(a1,s1){e1=a1;const l1={};s1[0]&128&&(l1.icon=e1[31].routing.homeScreen?"Home":null),s1[0]&640&&(l1.selected=e1[9].selectedScreenId===e1[31]._id),s1[0]&128&&(l1.text=e1[31].routing.route),s1[0]&1152&&(l1.selectedBy=e1[10][e1[31]._id]),s1[0]&128|s1[1]&8&&(l1.$$scope={dirty:s1,ctx:e1}),r1.$set(l1)},i(a1){o1||(transition_in(r1.$$.fragment,a1),o1=!0)},o(a1){transition_out(r1.$$.fragment,a1),o1=!1},d(a1){a1&&detach(t1),destroy_component(r1,a1)}}}function create_fragment$34(n1){let e1,t1,r1,o1,i1,a1,s1,l1,c1,u1,f1,p1,d1,m1,_1,h1,g1,$1,y1,w1,S1,O1,C1;s1=new Body({props:{size:"S",$$slots:{default:[create_default_slot_2$1l]},$$scope:{ctx:n1}}}),u1=new Icon({props:{size:"S",name:"Search"}}),d1=new Icon({props:{name:"Add"}});const M1=[create_if_block$1B,create_else_block$B],z1=[];function D1(H1,B1){var q1;return(q1=H1[7])!=null&&q1.length?0:1}return h1=D1(n1),g1=z1[h1]=M1[h1](n1),{c(){e1=element("div"),t1=element("div"),r1=element("input"),i1=space$1(),a1=element("div"),create_component(s1.$$.fragment),l1=space$1(),c1=element("div"),create_component(u1.$$.fragment),f1=space$1(),p1=element("div"),create_component(d1.$$.fragment),m1=space$1(),_1=element("div"),g1.c(),$1=space$1(),y1=element("div"),r1.readOnly=o1=!n1[1],attr(r1,"class","input svelte-1vqjoqt"),attr(r1,"placeholder","Search for screens"),attr(a1,"class","title svelte-1vqjoqt"),toggle_class(a1,"hide",n1[1]),attr(c1,"class","searchButton svelte-1vqjoqt"),toggle_class(c1,"hide",n1[1]),attr(p1,"class","addButton svelte-1vqjoqt"),toggle_class(p1,"closeButton",n1[1]),attr(t1,"class","header svelte-1vqjoqt"),toggle_class(t1,"scrolling",n1[6]),attr(_1,"class","content svelte-1vqjoqt"),attr(y1,"class","divider svelte-1vqjoqt"),attr(e1,"class","screens svelte-1vqjoqt"),attr(e1,"style",w1=`height:${n1[8]};`),toggle_class(e1,"search",n1[1]),toggle_class(e1,"resizing",n1[2])},m(H1,B1){insert$1(H1,e1,B1),append$1(e1,t1),append$1(t1,r1),set_input_value(r1,n1[0]),n1[18](r1),append$1(t1,i1),append$1(t1,a1),mount_component(s1,a1,null),append$1(t1,l1),append$1(t1,c1),mount_component(u1,c1,null),append$1(t1,f1),append$1(t1,p1),mount_component(d1,p1,null),append$1(e1,m1),append$1(e1,_1),z1[h1].m(_1,null),n1[20](_1),append$1(e1,$1),append$1(e1,y1),n1[22](e1),S1=!0,O1||(C1=[listen(window,"keydown",n1[13]),listen(r1,"input",n1[17]),listen(c1,"click",n1[11]),listen(p1,"click",n1[12]),listen(_1,"scroll",n1[14]),listen(y1,"mousedown",n1[15]),listen(y1,"dblclick",n1[21])],O1=!0)},p(H1,B1){(!S1||B1[0]&2&&o1!==(o1=!H1[1]))&&(r1.readOnly=o1),B1[0]&1&&r1.value!==H1[0]&&set_input_value(r1,H1[0]);const q1={};B1[1]&8&&(q1.$$scope={dirty:B1,ctx:H1}),s1.$set(q1),(!S1||B1[0]&2)&&toggle_class(a1,"hide",H1[1]),(!S1||B1[0]&2)&&toggle_class(c1,"hide",H1[1]),(!S1||B1[0]&2)&&toggle_class(p1,"closeButton",H1[1]),(!S1||B1[0]&64)&&toggle_class(t1,"scrolling",H1[6]);let R1=h1;h1=D1(H1),h1===R1?z1[h1].p(H1,B1):(group_outros(),transition_out(z1[R1],1,1,()=>{z1[R1]=null}),check_outros(),g1=z1[h1],g1?g1.p(H1,B1):(g1=z1[h1]=M1[h1](H1),g1.c()),transition_in(g1,1),g1.m(_1,null)),(!S1||B1[0]&256&&w1!==(w1=`height:${H1[8]};`))&&attr(e1,"style",w1),(!S1||B1[0]&2)&&toggle_class(e1,"search",H1[1]),(!S1||B1[0]&4)&&toggle_class(e1,"resizing",H1[2])},i(H1){S1||(transition_in(s1.$$.fragment,H1),transition_in(u1.$$.fragment,H1),transition_in(d1.$$.fragment,H1),transition_in(g1),S1=!0)},o(H1){transition_out(s1.$$.fragment,H1),transition_out(u1.$$.fragment,H1),transition_out(d1.$$.fragment,H1),transition_out(g1),S1=!1},d(H1){H1&&detach(e1),n1[18](null),destroy_component(s1),destroy_component(u1),destroy_component(d1),z1[h1].d(),n1[20](null),n1[22](null),O1=!1,run_all(C1)}}}function instance$37(n1,e1,t1){let r1,o1,i1,a1,s1,l1;component_subscribe(n1,screensHeight,X1=>t1(8,o1=X1)),component_subscribe(n1,goto,X1=>t1(25,i1=X1)),component_subscribe(n1,sortedScreens,X1=>t1(16,a1=X1)),component_subscribe(n1,store,X1=>t1(9,s1=X1)),component_subscribe(n1,userSelectedResourceMap,X1=>t1(10,l1=X1));let c1=!1,u1=!1,f1="",p1,d1,m1,_1=!1,h1=null,g1;const $1=X1=>new Promise(Y1=>setTimeout(Y1,X1)),y1=async()=>{t1(1,c1=!0),await tick(),p1.focus(),m1.scroll({top:0,behavior:"smooth"}),h1=o1,set_store_value(screensHeight,o1="calc(100% + 1px)",o1)},w1=async()=>{h1&&(set_store_value(screensHeight,o1=h1,o1),h1=null,await $1(300)),t1(1,c1=!1),t1(0,f1="")},S1=(X1,Y1)=>X1.filter(Q1=>!Y1||Q1.routing.route.includes(Y1)),O1=()=>{c1?w1():i1("../new")},C1=X1=>{X1.key==="Escape"&&w1()},M1=X1=>{t1(6,_1=X1.target.scrollTop!==0)},z1=X1=>{set_store_value(screensHeight,o1=`${d1.getBoundingClientRect().height}px`,o1),g1=parseInt(o1)-X1.clientY,t1(2,u1=!0),document.addEventListener("mousemove",D1),document.addEventListener("mouseup",H1)},D1=X1=>{const Y1=Math.max(0,X1.clientY+g1);Y1==null||isNaN(Y1)||set_store_value(screensHeight,o1=`${Y1}px`,o1)},H1=()=>{t1(2,u1=!1),document.removeEventListener("mousemove",D1)};onMount(()=>{(o1==null||isNaN(parseInt(o1)))&&set_store_value(screensHeight,o1="210px",o1)});function B1(){f1=this.value,t1(0,f1)}function q1(X1){binding_callbacks[X1?"unshift":"push"](()=>{p1=X1,t1(3,p1)})}const R1=X1=>store.actions.screens.select(X1._id);function I1(X1){binding_callbacks[X1?"unshift":"push"](()=>{m1=X1,t1(5,m1)})}const F1=()=>screensHeight.set("210px");function j1(X1){binding_callbacks[X1?"unshift":"push"](()=>{d1=X1,t1(4,d1)})}return n1.$$.update=()=>{n1.$$.dirty[0]&65537&&t1(7,r1=S1(a1,f1))},[f1,c1,u1,p1,d1,m1,_1,r1,o1,s1,l1,y1,O1,C1,M1,z1,a1,B1,q1,R1,I1,F1,j1]}class ScreenList extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$37,create_fragment$34,safe_not_equal,{},null,[-1,-1])}}const ComponentDropdownMenu_svelte_svelte_type_style_lang="";function create_default_slot_8$n(n1){let e1;return{c(){e1=text("Delete")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_if_block$1A(n1){let e1,t1;return e1=new Item({props:{icon:"Export",keyBind:"Ctrl+E",$$slots:{default:[create_default_slot_7$z]},$$scope:{ctx:n1}}}),e1.$on("click",n1[7]),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&16384&&(i1.$$scope={dirty:o1,ctx:r1}),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_default_slot_7$z(n1){let e1;return{c(){e1=text("Eject block")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot_6$F(n1){let e1;return{c(){e1=text("Move up")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot_5$M(n1){let e1;return{c(){e1=text("Move down")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot_4$V(n1){let e1;return{c(){e1=text("Duplicate")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot_3$15(n1){let e1;return{c(){e1=text("Cut")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot_2$1k(n1){let e1;return{c(){e1=text("Copy")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot_1$1H(n1){let e1;return{c(){e1=text("Paste")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot$25(n1){let e1,t1,r1,o1,i1,a1,s1,l1,c1,u1,f1,p1,d1,m1,_1;e1=new Item({props:{icon:"Delete",keyBind:"!BackAndroid",$$slots:{default:[create_default_slot_8$n]},$$scope:{ctx:n1}}}),e1.$on("click",n1[6]);let h1=n1[0]&&create_if_block$1A(n1);return o1=new Item({props:{icon:"ChevronUp",keyBind:"Ctrl+!ArrowUp",$$slots:{default:[create_default_slot_6$F]},$$scope:{ctx:n1}}}),o1.$on("click",n1[8]),a1=new Item({props:{icon:"ChevronDown",keyBind:"Ctrl+!ArrowDown",$$slots:{default:[create_default_slot_5$M]},$$scope:{ctx:n1}}}),a1.$on("click",n1[9]),l1=new Item({props:{icon:"Duplicate",keyBind:"Ctrl+D",$$slots:{default:[create_default_slot_4$V]},$$scope:{ctx:n1}}}),l1.$on("click",n1[10]),u1=new Item({props:{icon:"Cut",keyBind:"Ctrl+X",$$slots:{default:[create_default_slot_3$15]},$$scope:{ctx:n1}}}),u1.$on("click",n1[11]),p1=new Item({props:{icon:"Copy",keyBind:"Ctrl+C",$$slots:{default:[create_default_slot_2$1k]},$$scope:{ctx:n1}}}),p1.$on("click",n1[12]),m1=new Item({props:{icon:"LayersSendToBack",keyBind:"Ctrl+V",disabled:n1[1],$$slots:{default:[create_default_slot_1$1H]},$$scope:{ctx:n1}}}),m1.$on("click",n1[13]),{c(){create_component(e1.$$.fragment),t1=space$1(),h1&&h1.c(),r1=space$1(),create_component(o1.$$.fragment),i1=space$1(),create_component(a1.$$.fragment),s1=space$1(),create_component(l1.$$.fragment),c1=space$1(),create_component(u1.$$.fragment),f1=space$1(),create_component(p1.$$.fragment),d1=space$1(),create_component(m1.$$.fragment)},m(g1,$1){mount_component(e1,g1,$1),insert$1(g1,t1,$1),h1&&h1.m(g1,$1),insert$1(g1,r1,$1),mount_component(o1,g1,$1),insert$1(g1,i1,$1),mount_component(a1,g1,$1),insert$1(g1,s1,$1),mount_component(l1,g1,$1),insert$1(g1,c1,$1),mount_component(u1,g1,$1),insert$1(g1,f1,$1),mount_component(p1,g1,$1),insert$1(g1,d1,$1),mount_component(m1,g1,$1),_1=!0},p(g1,$1){const y1={};$1&16384&&(y1.$$scope={dirty:$1,ctx:g1}),e1.$set(y1),g1[0]?h1?(h1.p(g1,$1),$1&1&&transition_in(h1,1)):(h1=create_if_block$1A(g1),h1.c(),transition_in(h1,1),h1.m(r1.parentNode,r1)):h1&&(group_outros(),transition_out(h1,1,1,()=>{h1=null}),check_outros());const w1={};$1&16384&&(w1.$$scope={dirty:$1,ctx:g1}),o1.$set(w1);const S1={};$1&16384&&(S1.$$scope={dirty:$1,ctx:g1}),a1.$set(S1);const O1={};$1&16384&&(O1.$$scope={dirty:$1,ctx:g1}),l1.$set(O1);const C1={};$1&16384&&(C1.$$scope={dirty:$1,ctx:g1}),u1.$set(C1);const M1={};$1&16384&&(M1.$$scope={dirty:$1,ctx:g1}),p1.$set(M1);const z1={};$1&2&&(z1.disabled=g1[1]),$1&16384&&(z1.$$scope={dirty:$1,ctx:g1}),m1.$set(z1)},i(g1){_1||(transition_in(e1.$$.fragment,g1),transition_in(h1),transition_in(o1.$$.fragment,g1),transition_in(a1.$$.fragment,g1),transition_in(l1.$$.fragment,g1),transition_in(u1.$$.fragment,g1),transition_in(p1.$$.fragment,g1),transition_in(m1.$$.fragment,g1),_1=!0)},o(g1){transition_out(e1.$$.fragment,g1),transition_out(h1),transition_out(o1.$$.fragment,g1),transition_out(a1.$$.fragment,g1),transition_out(l1.$$.fragment,g1),transition_out(u1.$$.fragment,g1),transition_out(p1.$$.fragment,g1),transition_out(m1.$$.fragment,g1),_1=!1},d(g1){destroy_component(e1,g1),g1&&detach(t1),h1&&h1.d(g1),g1&&detach(r1),destroy_component(o1,g1),g1&&detach(i1),destroy_component(a1,g1),g1&&detach(s1),destroy_component(l1,g1),g1&&detach(c1),destroy_component(u1,g1),g1&&detach(f1),destroy_component(p1,g1),g1&&detach(d1),destroy_component(m1,g1)}}}function create_control_slot$7(n1){let e1,t1,r1;return t1=new Icon({props:{size:"S",hoverable:!0,name:"MoreSmallList"}}),{c(){e1=element("div"),create_component(t1.$$.fragment),attr(e1,"slot","control"),attr(e1,"class","icon svelte-u6s22l")},m(o1,i1){insert$1(o1,e1,i1),mount_component(t1,e1,null),r1=!0},p:noop$5,i(o1){r1||(transition_in(t1.$$.fragment,o1),r1=!0)},o(o1){transition_out(t1.$$.fragment,o1),r1=!1},d(o1){o1&&detach(e1),destroy_component(t1)}}}function create_fragment$33(n1){let e1,t1;return e1=new ActionMenu({props:{$$slots:{control:[create_control_slot$7],default:[create_default_slot$25]},$$scope:{ctx:n1}}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,[o1]){const i1={};o1&16387&&(i1.$$scope={dirty:o1,ctx:r1}),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function instance$36(n1,e1,t1){let r1,o1,i1,a1;component_subscribe(n1,store,g1=>t1(5,a1=g1));let{component:s1}=e1;const l1=(g1,$1=!1)=>{document.dispatchEvent(new CustomEvent("component-menu",{detail:{key:g1,ctrlKey:$1,id:s1==null?void 0:s1._id}}))},c1=()=>l1("Delete"),u1=()=>l1("e",!0),f1=()=>l1("ArrowUp",!0),p1=()=>l1("ArrowDown",!0),d1=()=>l1("d",!0),m1=()=>l1("x",!0),_1=()=>l1("c",!0),h1=()=>l1("v",!0);return n1.$$set=g1=>{"component"in g1&&t1(3,s1=g1.component)},n1.$$.update=()=>{n1.$$.dirty&8&&t1(4,r1=store.actions.components.getDefinition(s1==null?void 0:s1._component)),n1.$$.dirty&32&&t1(1,o1=!a1.componentToPaste),n1.$$.dirty&16&&t1(0,i1=(r1==null?void 0:r1.block)===!0)},[i1,o1,l1,s1,r1,a1,c1,u1,f1,p1,d1,m1,_1,h1]}class ComponentDropdownMenu extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$36,create_fragment$33,safe_not_equal,{component:3})}}const DropPosition={ABOVE:"above",BELOW:"below",INSIDE:"inside"},initialState={source:null,target:null,targetParent:null,dropPosition:null,dragging:!1,valid:!1},createDNDStore=()=>{const n1=writable(initialState),e1={dragstart:t1=>{!t1||n1.set({source:t1,target:null,dropPosition:null,dragging:!0,valid:!1})},dragover:({component:t1,mousePosition:r1})=>{var f1,p1;const o1=store.actions.components.getDefinition(t1._component),i1=o1==null?void 0:o1.hasChildren,a1=((f1=t1._children)==null?void 0:f1.length)>0;let s1,l1,c1;i1?r1<=.33?s1=DropPosition.ABOVE:r1>=.66?s1=DropPosition.BELOW:s1=DropPosition.INSIDE:s1=r1>.5?DropPosition.BELOW:DropPosition.ABOVE,s1===DropPosition.BELOW&&a1?(l1=t1._children[0],s1=DropPosition.ABOVE):l1=t1;const u1=get_store_value(n1);s1===u1.dropPosition&&(l1==null?void 0:l1._id)===((p1=u1.target)==null?void 0:p1._id)||(l1&&(c1=findComponentParent(get_store_value(selectedScreen).props,l1._id)),n1.update(d1=>{var m1;return{...d1,dropPosition:s1,target:l1,targetParent:c1,valid:((m1=findComponentPath(d1.source,l1._id))==null?void 0:m1.length)===0}}))},reset:()=>{n1.set(initialState)},drop:async()=>{const t1=get_store_value(n1);!t1.valid||!t1.source||!t1.target||(e1.reset(),store.actions.components.copy(t1.source,!0,!1),await store.actions.components.paste(t1.target,t1.dropPosition))}};return{subscribe:n1.subscribe,actions:e1}},dndStore=createDNDStore(),ComponentTree_svelte_svelte_type_style_lang="";function get_each_context$y(n1,e1,t1){const r1=n1.slice();r1[20]=e1[t1],r1[23]=t1;const o1=r1[12](r1[20],r1[4],r1[2]);return r1[21]=o1,r1}function create_default_slot$24(n1){let e1,t1;return e1=new ComponentDropdownMenu({props:{component:n1[20]}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&8&&(i1.component=r1[20]),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_if_block$1z(n1){let e1,t1;return e1=new ComponentTree({props:{components:n1[20]._children,dndStore,level:n1[0]+1}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&8&&(i1.components=r1[20]._children),o1&1&&(i1.level=r1[0]+1),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_each_block$y(n1,e1){let t1,r1,o1,i1,a1,s1,l1,c1;function u1(){return e1[15](e1[20])}function f1(){return e1[16](e1[20])}r1=new NavItem({props:{compact:!0,scrollable:!0,draggable:!0,text:e1[7](e1[20]),icon:e1[8](e1[20]),withArrow:e1[9](e1[20]),indentLevel:e1[0],selected:e1[1].selectedComponentId===e1[20]._id,opened:e1[21],highlighted:e1[13](e1[20]),selectedBy:e1[5][e1[20]._id],$$slots:{default:[create_default_slot$24]},$$scope:{ctx:e1}}}),r1.$on("dragend",dndStore.actions.reset),r1.$on("dragstart",u1),r1.$on("dragover",function(){is_function(e1[6](e1[20],e1[23]))&&e1[6](e1[20],e1[23]).apply(this,arguments)}),r1.$on("iconClick",f1),r1.$on("drop",e1[11]);let p1=e1[21]&&create_if_block$1z(e1);function d1(){return e1[17](e1[20])}return{key:n1,first:null,c(){t1=element("li"),create_component(r1.$$.fragment),o1=space$1(),p1&&p1.c(),i1=space$1(),attr(t1,"id",a1=`component-${e1[20]._id}`),attr(t1,"class","svelte-kv7hxn"),this.first=t1},m(m1,_1){insert$1(m1,t1,_1),mount_component(r1,t1,null),append$1(t1,o1),p1&&p1.m(t1,null),append$1(t1,i1),s1=!0,l1||(c1=listen(t1,"click",stop_propagation(d1)),l1=!0)},p(m1,_1){e1=m1;const h1={};_1&8&&(h1.text=e1[7](e1[20])),_1&8&&(h1.icon=e1[8](e1[20])),_1&8&&(h1.withArrow=e1[9](e1[20])),_1&1&&(h1.indentLevel=e1[0]),_1&10&&(h1.selected=e1[1].selectedComponentId===e1[20]._id),_1&28&&(h1.opened=e1[21]),_1&8&&(h1.highlighted=e1[13](e1[20])),_1&40&&(h1.selectedBy=e1[5][e1[20]._id]),_1&16777224&&(h1.$$scope={dirty:_1,ctx:e1}),r1.$set(h1),e1[21]?p1?(p1.p(e1,_1),_1&28&&transition_in(p1,1)):(p1=create_if_block$1z(e1),p1.c(),transition_in(p1,1),p1.m(t1,i1)):p1&&(group_outros(),transition_out(p1,1,1,()=>{p1=null}),check_outros()),(!s1||_1&8&&a1!==(a1=`component-${e1[20]._id}`))&&attr(t1,"id",a1)},i(m1){s1||(transition_in(r1.$$.fragment,m1),transition_in(p1),s1=!0)},o(m1){transition_out(r1.$$.fragment,m1),transition_out(p1),s1=!1},d(m1){m1&&detach(t1),destroy_component(r1),p1&&p1.d(),l1=!1,c1()}}}function create_fragment$32(n1){let e1,t1=[],r1=new Map,o1,i1=n1[3]||[];const a1=s1=>s1[20]._id;for(let s1=0;s1<i1.length;s1+=1){let l1=get_each_context$y(n1,i1,s1),c1=a1(l1);r1.set(c1,t1[s1]=create_each_block$y(c1,l1))}return{c(){e1=element("ul");for(let s1=0;s1<t1.length;s1+=1)t1[s1].c();attr(e1,"class","svelte-kv7hxn")},m(s1,l1){insert$1(s1,e1,l1);for(let c1=0;c1<t1.length;c1+=1)t1[c1].m(e1,null);o1=!0},p(s1,[l1]){l1&16383&&(i1=s1[3]||[],group_outros(),t1=update_keyed_each(t1,l1,a1,1,s1,i1,r1,e1,outro_and_destroy_block,create_each_block$y,null,get_each_context$y),check_outros())},i(s1){if(!o1){for(let l1=0;l1<i1.length;l1+=1)transition_in(t1[l1]);o1=!0}},o(s1){for(let l1=0;l1<t1.length;l1+=1)transition_out(t1[l1]);o1=!1},d(s1){s1&&detach(e1);for(let l1=0;l1<t1.length;l1+=1)t1[l1].d()}}}function instance$35(n1,e1,t1){let r1,o1,i1,a1,s1;component_subscribe(n1,selectedComponent,C1=>t1(18,o1=C1)),component_subscribe(n1,store,C1=>t1(1,i1=C1)),component_subscribe(n1,selectedComponentPath,C1=>t1(4,a1=C1)),component_subscribe(n1,userSelectedResourceMap,C1=>t1(5,s1=C1));let{components:l1=[]}=e1,{level:c1=0}=e1,u1={};const f1=(C1,M1)=>z1=>{const D1=z1.offsetY/z1.currentTarget.offsetHeight;return dndStore.actions.dragover({component:C1,index:M1,mousePosition:D1}),!1},p1=C1=>{if(C1._instanceName)return C1._instanceName;const M1=C1._component.replace("@budibase/standard-components/","")||"component";return capitalise(M1)},d1=C1=>{const M1=store.actions.components.getDefinition(C1==null?void 0:C1._component);return M1==null?void 0:M1.icon},m1=C1=>{const M1=store.actions.components.getDefinition(C1==null?void 0:C1._component);return M1==null?void 0:M1.hasChildren},_1=C1=>{var M1;return m1(C1)&&((M1=C1._children)==null?void 0:M1.length)};function h1(C1){u1[C1]?delete u1[C1]:t1(2,u1[C1]=!0,u1),t1(2,u1)}const g1=async C1=>{C1.stopPropagation();try{await dndStore.actions.drop()}catch(M1){notifications.error(M1||"Error saving component")}},$1=(C1,M1,z1)=>{var D1;return(D1=C1==null?void 0:C1._children)!=null&&D1.length?M1.includes(C1._id)?!0:!z1[C1._id]:!1},y1=C1=>{var D1,H1,B1;const M1=(D1=get_store_value(selectedComponent))==null?void 0:D1._id,z1=(H1=get_store_value(selectedScreen))==null?void 0:H1.props._id;return!M1||M1===z1?!1:((B1=findComponentPath(o1,C1._id))==null?void 0:B1.length)>0},w1=C1=>dndStore.actions.dragstart(C1),S1=C1=>h1(C1._id),O1=C1=>{set_store_value(store,i1.selectedComponentId=C1._id,i1)};return n1.$$set=C1=>{"components"in C1&&t1(14,l1=C1.components),"level"in C1&&t1(0,c1=C1.level)},n1.$$.update=()=>{n1.$$.dirty&16386&&t1(3,r1=l1==null?void 0:l1.filter(C1=>{var M1,z1;return!((M1=i1.componentToPaste)!=null&&M1.isCut)||C1._id!==((z1=i1.componentToPaste)==null?void 0:z1._id)}))},[c1,i1,u1,r1,a1,s1,f1,p1,d1,_1,h1,g1,$1,y1,l1,w1,S1,O1]}class ComponentTree extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$35,create_fragment$32,safe_not_equal,{components:14,level:0})}}const ScreenslotDropdownMenu_svelte_svelte_type_style_lang="";function create_if_block$1y(n1){let e1,t1;return e1=new ActionMenu({props:{$$slots:{control:[create_control_slot$6],default:[create_default_slot$23]},$$scope:{ctx:n1}}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&514&&(i1.$$scope={dirty:o1,ctx:r1}),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_default_slot_2$1j(n1){let e1;return{c(){e1=text("Copy")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot_1$1G(n1){let e1;return{c(){e1=text("Paste")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot$23(n1){let e1,t1,r1,o1;return e1=new Item({props:{icon:"Copy",keyBind:"Ctrl+C",$$slots:{default:[create_default_slot_2$1j]},$$scope:{ctx:n1}}}),e1.$on("click",n1[7]),r1=new Item({props:{icon:"LayersSendToBack",keyBind:"Ctrl+V",disabled:n1[1],$$slots:{default:[create_default_slot_1$1G]},$$scope:{ctx:n1}}}),r1.$on("click",n1[8]),{c(){create_component(e1.$$.fragment),t1=space$1(),create_component(r1.$$.fragment)},m(i1,a1){mount_component(e1,i1,a1),insert$1(i1,t1,a1),mount_component(r1,i1,a1),o1=!0},p(i1,a1){const s1={};a1&512&&(s1.$$scope={dirty:a1,ctx:i1}),e1.$set(s1);const l1={};a1&2&&(l1.disabled=i1[1]),a1&512&&(l1.$$scope={dirty:a1,ctx:i1}),r1.$set(l1)},i(i1){o1||(transition_in(e1.$$.fragment,i1),transition_in(r1.$$.fragment,i1),o1=!0)},o(i1){transition_out(e1.$$.fragment,i1),transition_out(r1.$$.fragment,i1),o1=!1},d(i1){destroy_component(e1,i1),i1&&detach(t1),destroy_component(r1,i1)}}}function create_control_slot$6(n1){let e1,t1,r1;return t1=new Icon({props:{size:"S",hoverable:!0,name:"MoreSmallList"}}),{c(){e1=element("div"),create_component(t1.$$.fragment),attr(e1,"slot","control"),attr(e1,"class","icon svelte-u6s22l")},m(o1,i1){insert$1(o1,e1,i1),mount_component(t1,e1,null),r1=!0},p:noop$5,i(o1){r1||(transition_in(t1.$$.fragment,o1),r1=!0)},o(o1){transition_out(t1.$$.fragment,o1),r1=!1},d(o1){o1&&detach(e1),destroy_component(t1)}}}function create_fragment$31(n1){let e1,t1,r1=n1[0]&&create_if_block$1y(n1);return{c(){r1&&r1.c(),e1=empty$1()},m(o1,i1){r1&&r1.m(o1,i1),insert$1(o1,e1,i1),t1=!0},p(o1,[i1]){o1[0]?r1?(r1.p(o1,i1),i1&1&&transition_in(r1,1)):(r1=create_if_block$1y(o1),r1.c(),transition_in(r1,1),r1.m(e1.parentNode,e1)):r1&&(group_outros(),transition_out(r1,1,1,()=>{r1=null}),check_outros())},i(o1){t1||(transition_in(r1),t1=!0)},o(o1){transition_out(r1),t1=!1},d(o1){r1&&r1.d(o1),o1&&detach(e1)}}}function instance$34(n1,e1,t1){let r1,o1,i1,a1;component_subscribe(n1,store,p1=>t1(6,a1=p1));let{component:s1}=e1;const l1=(p1=!1)=>{store.actions.components.copy(s1,p1)},c1=p1=>{try{store.actions.components.paste(s1,p1)}catch{notifications.error("Error saving component")}},u1=()=>l1(!1),f1=()=>c1("inside");return n1.$$set=p1=>{"component"in p1&&t1(4,s1=p1.component)},n1.$$.update=()=>{n1.$$.dirty&16&&t1(5,r1=store.actions.components.getDefinition(s1==null?void 0:s1._component)),n1.$$.dirty&64&&t1(1,o1=!a1.componentToPaste),n1.$$.dirty&32&&t1(0,i1=(r1==null?void 0:r1.editable)!==!1&&(r1==null?void 0:r1.static)!==!0)},[i1,o1,l1,c1,s1,r1,a1,u1,f1]}class ScreenslotDropdownMenu extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$34,create_fragment$31,safe_not_equal,{component:4})}}const DNDPositionIndicator_svelte_svelte_type_style_lang="";function create_if_block$1x(n1){let e1,t1;return{c(){e1=element("div"),attr(e1,"class","indicator svelte-9uy3y5"),set_style(e1,"--x",n1[2]+"px"),set_style(e1,"--y",n1[3]+"px"),set_style(e1,"--width",n1[4]+"px"),set_style(e1,"--height",n1[5]+"px"),toggle_class(e1,"above",n1[1]===DropPosition.ABOVE),toggle_class(e1,"below",n1[1]===DropPosition.BELOW),toggle_class(e1,"inside",n1[1]===DropPosition.INSIDE)},m(r1,o1){insert$1(r1,e1,o1)},p(r1,o1){o1&4&&set_style(e1,"--x",r1[2]+"px"),o1&8&&set_style(e1,"--y",r1[3]+"px"),o1&16&&set_style(e1,"--width",r1[4]+"px"),o1&32&&set_style(e1,"--height",r1[5]+"px"),o1&2&&toggle_class(e1,"above",r1[1]===DropPosition.ABOVE),o1&2&&toggle_class(e1,"below",r1[1]===DropPosition.BELOW),o1&2&&toggle_class(e1,"inside",r1[1]===DropPosition.INSIDE)},i(r1){t1||add_render_callback(()=>{t1=create_in_transition(e1,fade,{duration:130}),t1.start()})},o:noop$5,d(r1){r1&&detach(e1)}}}function create_fragment$30(n1){let e1,t1=n1[0]&&n1[1]&&create_if_block$1x(n1);return{c(){t1&&t1.c(),e1=empty$1()},m(r1,o1){t1&&t1.m(r1,o1),insert$1(r1,e1,o1)},p(r1,[o1]){r1[0]&&r1[1]?t1?(t1.p(r1,o1),o1&3&&transition_in(t1,1)):(t1=create_if_block$1x(r1),t1.c(),transition_in(t1,1),t1.m(e1.parentNode,e1)):t1&&(t1.d(1),t1=null)},i(r1){transition_in(t1)},o:noop$5,d(r1){t1&&t1.d(r1),r1&&detach(e1)}}}function instance$33(n1,e1,t1){let{component:r1}=e1,{position:o1}=e1,i1,a1,s1,l1;const c1=u1=>{var d1;const f1=document.getElementById(`component-${u1==null?void 0:u1._id}`),p1=(d1=f1==null?void 0:f1.children[0])==null?void 0:d1.children[0];!f1||(t1(2,i1=p1.offsetLeft),t1(3,a1=p1.offsetTop),t1(4,s1=p1.clientWidth),t1(5,l1=p1.clientHeight))};return n1.$$set=u1=>{"component"in u1&&t1(0,r1=u1.component),"position"in u1&&t1(1,o1=u1.position)},n1.$$.update=()=>{n1.$$.dirty&1&&c1(r1)},[r1,o1,i1,a1,s1,l1]}class DNDPositionIndicator extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$33,create_fragment$30,safe_not_equal,{component:0,position:1})}}function create_fragment$2$(n1){var s1,l1;let e1,t1,r1,o1,i1={title:"Confirm Deletion",body:`Are you sure you want to delete "${(s1=n1[2])==null?void 0:s1._instanceName}"?`,okText:"Delete Component",onOk:n1[4]};e1=new ConfirmDialog({props:i1}),n1[5](e1);let a1={title:"Eject block",body:`Ejecting a block breaks it down into multiple components and cannot be undone. Are you sure you want to eject "${(l1=n1[3])==null?void 0:l1._instanceName}"?`,onOk:n1[6],okText:"Eject block"};return r1=new ConfirmDialog({props:a1}),n1[7](r1),{c(){create_component(e1.$$.fragment),t1=space$1(),create_component(r1.$$.fragment)},m(c1,u1){mount_component(e1,c1,u1),insert$1(c1,t1,u1),mount_component(r1,c1,u1),o1=!0},p(c1,[u1]){var d1,m1;const f1={};u1&4&&(f1.body=`Are you sure you want to delete "${(d1=c1[2])==null?void 0:d1._instanceName}"?`),u1&4&&(f1.onOk=c1[4]),e1.$set(f1);const p1={};u1&8&&(p1.body=`Ejecting a block breaks it down into multiple components and cannot be undone. Are you sure you want to eject "${(m1=c1[3])==null?void 0:m1._instanceName}"?`),u1&8&&(p1.onOk=c1[6]),r1.$set(p1)},i(c1){o1||(transition_in(e1.$$.fragment,c1),transition_in(r1.$$.fragment,c1),o1=!0)},o(c1){transition_out(e1.$$.fragment,c1),transition_out(r1.$$.fragment,c1),o1=!1},d(c1){n1[5](null),destroy_component(e1,c1),c1&&detach(t1),n1[7](null),destroy_component(r1,c1)}}}function instance$32(n1,e1,t1){let r1,o1,i1,a1,s1;component_subscribe(n1,selectedScreen,w1=>t1(8,r1=w1)),component_subscribe(n1,selectedComponent,w1=>t1(9,o1=w1)),component_subscribe(n1,store,w1=>t1(10,i1=w1)),component_subscribe(n1,goto,w1=>t1(11,a1=w1)),component_subscribe(n1,isActive,w1=>t1(12,s1=w1));let l1,c1,u1,f1;const p1={["Ctrl+ArrowUp"]:async w1=>{await store.actions.components.moveUp(w1)},["Ctrl+ArrowDown"]:async w1=>{await store.actions.components.moveDown(w1)},["Ctrl+c"]:w1=>{store.actions.components.copy(w1,!1)},["Ctrl+x"]:w1=>{store.actions.components.copy(w1,!0)},["Ctrl+v"]:async w1=>{await store.actions.components.paste(w1,"inside")},["Ctrl+d"]:async w1=>{store.actions.components.copy(w1),await store.actions.components.paste(w1,"below")},["Ctrl+e"]:w1=>{t1(3,f1=w1),c1.show()},["Ctrl+Enter"]:()=>{a1("./:componentId/new")},Delete:w1=>{if((w1==null?void 0:w1._id)===r1.props._id)return!1;t1(2,u1=w1),l1.show()},ArrowUp:()=>{store.actions.components.selectPrevious()},ArrowDown:()=>{store.actions.components.selectNext()},Escape:()=>{s1("./:componentId/new")&&a1(`./${i1.selectedComponentId}`)}},d1=async({event:w1,component:S1,key:O1,ctrlKey:C1=!1,shiftKey:M1=!1})=>{if(!S1||!O1)return!1;try{O1==="Backspace"&&(O1="Delete"),M1&&(O1="Shift+"+O1),C1&&(O1="Ctrl+"+O1);const z1=p1[O1];return z1?(w1&&O1!=="Escape"&&(w1.preventDefault(),w1.stopPropagation()),await z1(S1)):!1}catch(z1){notifications.error(z1||"Error handling key press")}},m1=async w1=>{var C1,M1,z1;if(w1.repeat)return;const S1=(C1=document.activeElement)==null?void 0:C1.tagName.toLowerCase();if(!((((z1=(M1=document.activeElement)==null?void 0:M1.classList)==null?void 0:z1.contains("cm-content"))||["input","textarea"].indexOf(S1)!==-1)&&w1.key!=="Escape"))return await d1({event:w1,component:o1,key:w1.key,ctrlKey:w1.ctrlKey||w1.metaKey,shiftKey:w1.shiftKey})},_1=async w1=>{const{id:S1,key:O1,ctrlKey:C1,shiftKey:M1}=w1.detail,z1=findComponent(r1.props,S1);return await d1({event:null,component:z1,key:O1,ctrlKey:C1,shiftKey:M1})};onMount(()=>(document.addEventListener("keydown",m1),document.addEventListener("component-menu",_1),()=>{document.removeEventListener("keydown",m1),document.removeEventListener("component-menu",_1)}));const h1=()=>store.actions.components.delete(u1);function g1(w1){binding_callbacks[w1?"unshift":"push"](()=>{l1=w1,t1(0,l1)})}const $1=()=>store.actions.components.requestEjectBlock(f1==null?void 0:f1._id);function y1(w1){binding_callbacks[w1?"unshift":"push"](()=>{c1=w1,t1(1,c1)})}return[l1,c1,u1,f1,h1,g1,$1,y1]}class ComponentKeyHandler extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$32,create_fragment$2$,safe_not_equal,{})}}const ComponentScrollWrapper_svelte_svelte_type_style_lang="";function create_fragment$2_(n1){let e1,t1,r1,o1;const i1=n1[3].default,a1=create_slot(i1,n1,n1[2],null);return{c(){e1=element("div"),a1&&a1.c(),attr(e1,"ondragover","return false"),attr(e1,"ondragenter","return false"),attr(e1,"class","svelte-i1q9g5")},m(s1,l1){insert$1(s1,e1,l1),a1&&a1.m(e1,null),n1[5](e1),t1=!0,r1||(o1=[listen(e1,"scroll",n1[4]),listen(e1,"drop",n1[1])],r1=!0)},p(s1,[l1]){a1&&a1.p&&(!t1||l1&4)&&update_slot_base(a1,i1,s1,s1[2],t1?get_slot_changes(i1,s1[2],l1,null):get_all_dirty_from_scope(s1[2]),null)},i(s1){t1||(transition_in(a1,s1),t1=!0)},o(s1){transition_out(a1,s1),t1=!1},d(s1){s1&&detach(e1),a1&&a1.d(s1),n1[5](null),r1=!1,run_all(o1)}}}function instance$31(n1,e1,t1){let{$$slots:r1={},$$scope:o1}=e1,i1;setContext("scroll",{scrollTo:u1=>{if(!u1)return;const f1=310,p1=32,{scrollLeft:d1,scrollTop:m1,offsetHeight:_1}=i1;let h1=i1.getBoundingClientRect(),g1={};const $1=u1.left+u1.width+d1+16;$1>f1?g1.left=$1-f1:g1.left=0,g1.left===d1&&delete g1.left;const y1=u1.top-(h1==null?void 0:h1.top)+m1;y1>m1+_1-2*p1?g1.top=y1-_1+2*p1:y1<m1+p1?g1.top=y1-p1:delete g1.top,!(g1.left==null&&g1.top==null)&&i1.scroll({...g1,behavior:"smooth"})}});const s1=async()=>{try{await dndStore.actions.drop()}catch(u1){console.error(u1),notifications.error("Error saving component")}};function l1(u1){bubble.call(this,n1,u1)}function c1(u1){binding_callbacks[u1?"unshift":"push"](()=>{i1=u1,t1(0,i1)})}return n1.$$set=u1=>{"$$scope"in u1&&t1(2,o1=u1.$$scope)},[i1,s1,o1,r1,l1,c1]}class ComponentScrollWrapper extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$31,create_fragment$2_,safe_not_equal,{})}}const index_svelte_svelte_type_style_lang$e="";function create_default_slot_2$1i(n1){let e1;return{c(){e1=text("Components")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot_1$1F(n1){var r1;let e1,t1;return e1=new ScreenslotDropdownMenu({props:{component:(r1=n1[3])==null?void 0:r1.props}}),{c(){create_component(e1.$$.fragment)},m(o1,i1){mount_component(e1,o1,i1),t1=!0},p(o1,i1){var s1;const a1={};i1&8&&(a1.component=(s1=o1[3])==null?void 0:s1.props),e1.$set(a1)},i(o1){t1||(transition_in(e1.$$.fragment,o1),t1=!0)},o(o1){transition_out(e1.$$.fragment,o1),t1=!1},d(o1){destroy_component(e1,o1)}}}function create_if_block$1w(n1){let e1,t1,r1,o1;e1=new DNDPositionIndicator({props:{component:n1[4].target,position:n1[4].dropPosition}});let i1=n1[4].dropPosition!==DropPosition.INSIDE&&create_if_block_1$P(n1);return{c(){create_component(e1.$$.fragment),t1=space$1(),i1&&i1.c(),r1=empty$1()},m(a1,s1){mount_component(e1,a1,s1),insert$1(a1,t1,s1),i1&&i1.m(a1,s1),insert$1(a1,r1,s1),o1=!0},p(a1,s1){const l1={};s1&16&&(l1.component=a1[4].target),s1&16&&(l1.position=a1[4].dropPosition),e1.$set(l1),a1[4].dropPosition!==DropPosition.INSIDE?i1?(i1.p(a1,s1),s1&16&&transition_in(i1,1)):(i1=create_if_block_1$P(a1),i1.c(),transition_in(i1,1),i1.m(r1.parentNode,r1)):i1&&(group_outros(),transition_out(i1,1,1,()=>{i1=null}),check_outros())},i(a1){o1||(transition_in(e1.$$.fragment,a1),transition_in(i1),o1=!0)},o(a1){transition_out(e1.$$.fragment,a1),transition_out(i1),o1=!1},d(a1){destroy_component(e1,a1),a1&&detach(t1),i1&&i1.d(a1),a1&&detach(r1)}}}function create_if_block_1$P(n1){let e1,t1;return e1=new DNDPositionIndicator({props:{component:n1[4].targetParent,position:DropPosition.INSIDE}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&16&&(i1.component=r1[4].targetParent),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_default_slot$22(n1){var f1;let e1,t1,r1,o1,i1,a1,s1,l1,c1;r1=new NavItem({props:{text:"Screen",indentLevel:0,selected:n1[1].selectedComponentId===`${n1[1].selectedScreenId}-screen`,opened:!0,scrollable:!0,icon:"WebPage",id:"component-screen",selectedBy:n1[2][`${n1[1].selectedScreenId}-screen`],$$slots:{default:[create_default_slot_1$1F]},$$scope:{ctx:n1}}}),r1.$on("drop",n1[6]),r1.$on("click",n1[8]),i1=new NavItem({props:{text:"Navigation",indentLevel:0,selected:n1[1].selectedComponentId===`${n1[1].selectedScreenId}-navigation`,opened:!0,scrollable:!0,icon:n1[3].showNavigation?"Visibility":"VisibilityOff",id:"component-nav",selectedBy:n1[2][`${n1[1].selectedScreenId}-navigation`]}}),i1.$on("drop",n1[6]),i1.$on("click",n1[9]),s1=new ComponentTree({props:{level:0,components:(f1=n1[3])==null?void 0:f1.props._children}});let u1=n1[4].dragging&&n1[4].valid&&create_if_block$1w(n1);return{c(){e1=element("ul"),t1=element("li"),create_component(r1.$$.fragment),o1=space$1(),create_component(i1.$$.fragment),a1=space$1(),create_component(s1.$$.fragment),l1=space$1(),u1&&u1.c(),attr(t1,"class","svelte-2glawg"),attr(e1,"class","svelte-2glawg")},m(p1,d1){insert$1(p1,e1,d1),append$1(e1,t1),mount_component(r1,t1,null),append$1(t1,o1),mount_component(i1,t1,null),append$1(t1,a1),mount_component(s1,t1,null),append$1(t1,l1),u1&&u1.m(t1,null),c1=!0},p(p1,d1){var g1;const m1={};d1&2&&(m1.selected=p1[1].selectedComponentId===`${p1[1].selectedScreenId}-screen`),d1&6&&(m1.selectedBy=p1[2][`${p1[1].selectedScreenId}-screen`]),d1&4104&&(m1.$$scope={dirty:d1,ctx:p1}),r1.$set(m1);const _1={};d1&2&&(_1.selected=p1[1].selectedComponentId===`${p1[1].selectedScreenId}-navigation`),d1&8&&(_1.icon=p1[3].showNavigation?"Visibility":"VisibilityOff"),d1&6&&(_1.selectedBy=p1[2][`${p1[1].selectedScreenId}-navigation`]),i1.$set(_1);const h1={};d1&8&&(h1.components=(g1=p1[3])==null?void 0:g1.props._children),s1.$set(h1),p1[4].dragging&&p1[4].valid?u1?(u1.p(p1,d1),d1&16&&transition_in(u1,1)):(u1=create_if_block$1w(p1),u1.c(),transition_in(u1,1),u1.m(t1,null)):u1&&(group_outros(),transition_out(u1,1,1,()=>{u1=null}),check_outros())},i(p1){c1||(transition_in(r1.$$.fragment,p1),transition_in(i1.$$.fragment,p1),transition_in(s1.$$.fragment,p1),transition_in(u1),c1=!0)},o(p1){transition_out(r1.$$.fragment,p1),transition_out(i1.$$.fragment,p1),transition_out(s1.$$.fragment,p1),transition_out(u1),c1=!1},d(p1){p1&&detach(e1),destroy_component(r1),destroy_component(i1),destroy_component(s1),u1&&u1.d()}}}function create_fragment$2Z(n1){let e1,t1,r1,o1,i1,a1,s1,l1,c1,u1,f1,p1,d1,m1;return r1=new Body({props:{size:"S",$$slots:{default:[create_default_slot_2$1i]},$$scope:{ctx:n1}}}),a1=new Icon({props:{name:"Add"}}),c1=new ComponentScrollWrapper({props:{$$slots:{default:[create_default_slot$22]},$$scope:{ctx:n1}}}),c1.$on("scroll",n1[7]),f1=new ComponentKeyHandler({}),{c(){e1=element("div"),t1=element("div"),create_component(r1.$$.fragment),o1=space$1(),i1=element("div"),create_component(a1.$$.fragment),s1=space$1(),l1=element("div"),create_component(c1.$$.fragment),u1=space$1(),create_component(f1.$$.fragment),attr(i1,"class","addButton svelte-2glawg"),attr(t1,"class","header svelte-2glawg"),toggle_class(t1,"scrolling",n1[0]),attr(l1,"class","list-panel svelte-2glawg"),attr(e1,"class","components svelte-2glawg")},m(_1,h1){insert$1(_1,e1,h1),append$1(e1,t1),mount_component(r1,t1,null),append$1(t1,o1),append$1(t1,i1),mount_component(a1,i1,null),append$1(e1,s1),append$1(e1,l1),mount_component(c1,l1,null),append$1(e1,u1),mount_component(f1,e1,null),p1=!0,d1||(m1=listen(i1,"click",n1[5]),d1=!0)},p(_1,[h1]){const g1={};h1&4096&&(g1.$$scope={dirty:h1,ctx:_1}),r1.$set(g1),(!p1||h1&1)&&toggle_class(t1,"scrolling",_1[0]);const $1={};h1&4126&&($1.$$scope={dirty:h1,ctx:_1}),c1.$set($1)},i(_1){p1||(transition_in(r1.$$.fragment,_1),transition_in(a1.$$.fragment,_1),transition_in(c1.$$.fragment,_1),transition_in(f1.$$.fragment,_1),p1=!0)},o(_1){transition_out(r1.$$.fragment,_1),transition_out(a1.$$.fragment,_1),transition_out(c1.$$.fragment,_1),transition_out(f1.$$.fragment,_1),p1=!1},d(_1){_1&&detach(e1),destroy_component(r1),destroy_component(a1),destroy_component(c1),destroy_component(f1),d1=!1,m1()}}}function instance$30(n1,e1,t1){let r1,o1,i1,a1,s1,l1;component_subscribe(n1,goto,_1=>t1(10,r1=_1)),component_subscribe(n1,isActive,_1=>t1(11,o1=_1)),component_subscribe(n1,store,_1=>t1(1,i1=_1)),component_subscribe(n1,userSelectedResourceMap,_1=>t1(2,a1=_1)),component_subscribe(n1,selectedScreen,_1=>t1(3,s1=_1)),component_subscribe(n1,dndStore,_1=>t1(4,l1=_1));let c1=!1;return[c1,i1,a1,s1,l1,()=>{o1("./:componentId/new")?r1("./:componentId"):r1("./:componentId/new")},async()=>{try{await dndStore.actions.drop()}catch(_1){console.error(_1),notifications.error("Error saving component")}},_1=>{t1(0,c1=_1.target.scrollTop!==0)},()=>{set_store_value(store,i1.selectedComponentId=`${i1.selectedScreenId}-screen`,i1)},()=>{set_store_value(store,i1.selectedComponentId=`${i1.selectedScreenId}-navigation`,i1)}]}class ComponentList extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$30,create_fragment$2Z,safe_not_equal,{})}}const LeftPanel_svelte_svelte_type_style_lang="";function create_fragment$2Y(n1){let e1,t1,r1,o1,i1;return t1=new ScreenList({}),o1=new ComponentList({}),{c(){e1=element("div"),create_component(t1.$$.fragment),r1=space$1(),create_component(o1.$$.fragment),attr(e1,"class","panel svelte-1hjh5aa")},m(a1,s1){insert$1(a1,e1,s1),mount_component(t1,e1,null),append$1(e1,r1),mount_component(o1,e1,null),i1=!0},p:noop$5,i(a1){i1||(transition_in(t1.$$.fragment,a1),transition_in(o1.$$.fragment,a1),i1=!0)},o(a1){transition_out(t1.$$.fragment,a1),transition_out(o1.$$.fragment,a1),i1=!1},d(a1){a1&&detach(e1),destroy_component(t1),destroy_component(o1)}}}class LeftPanel extends SvelteComponent{constructor(e1){super(),init$2(this,e1,null,create_fragment$2Y,safe_not_equal,{})}}const _layout_svelte_svelte_type_style_lang$4="";function create_if_block$1v(n1){let e1,t1,r1,o1,i1,a1,s1;r1=new LeftPanel({}),i1=new AppPanel({});const l1=n1[2].default,c1=create_slot(l1,n1,n1[1],null);return{c(){e1=element("div"),t1=element("div"),create_component(r1.$$.fragment),o1=space$1(),create_component(i1.$$.fragment),a1=space$1(),c1&&c1.c(),attr(t1,"class","content svelte-vfl1cc"),attr(e1,"class","design svelte-vfl1cc")},m(u1,f1){insert$1(u1,e1,f1),append$1(e1,t1),mount_component(r1,t1,null),append$1(t1,o1),mount_component(i1,t1,null),append$1(t1,a1),c1&&c1.m(t1,null),s1=!0},p(u1,f1){c1&&c1.p&&(!s1||f1&2)&&update_slot_base(c1,l1,u1,u1[1],s1?get_slot_changes(l1,u1[1],f1,null):get_all_dirty_from_scope(u1[1]),null)},i(u1){s1||(transition_in(r1.$$.fragment,u1),transition_in(i1.$$.fragment,u1),transition_in(c1,u1),s1=!0)},o(u1){transition_out(r1.$$.fragment,u1),transition_out(i1.$$.fragment,u1),transition_out(c1,u1),s1=!1},d(u1){u1&&detach(e1),destroy_component(r1),destroy_component(i1),c1&&c1.d(u1)}}}function create_fragment$2X(n1){let e1,t1,r1=n1[0]&&create_if_block$1v(n1);return{c(){r1&&r1.c(),e1=empty$1()},m(o1,i1){r1&&r1.m(o1,i1),insert$1(o1,e1,i1),t1=!0},p(o1,[i1]){o1[0]?r1?(r1.p(o1,i1),i1&1&&transition_in(r1,1)):(r1=create_if_block$1v(o1),r1.c(),transition_in(r1,1),r1.m(e1.parentNode,e1)):r1&&(group_outros(),transition_out(r1,1,1,()=>{r1=null}),check_outros())},i(o1){t1||(transition_in(r1),t1=!0)},o(o1){transition_out(r1),t1=!1},d(o1){r1&&r1.d(o1),o1&&detach(e1)}}}function instance$2$(n1,e1,t1){let r1,o1;component_subscribe(n1,store,l1=>t1(3,r1=l1)),component_subscribe(n1,selectedScreen,l1=>t1(0,o1=l1));let{$$slots:i1={},$$scope:a1}=e1;const s1=syncURLToState({urlParam:"screenId",stateKey:"selectedScreenId",validate:l1=>r1.screens.some(c1=>c1._id===l1),fallbackUrl:"../../design",store,routify:routify$1});return onDestroy(s1),n1.$$set=l1=>{"$$scope"in l1&&t1(1,a1=l1.$$scope)},[o1,a1,i1]}class Layout$d extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$2$,create_fragment$2X,safe_not_equal,{})}}function instance$2_(n1,e1,t1){let r1,o1;return component_subscribe(n1,redirect,i1=>t1(0,r1=i1)),component_subscribe(n1,store,i1=>t1(1,o1=i1)),n1.$$.update=()=>{n1.$$.dirty&3&&(o1.screens.length>0?r1(`./${o1.screens[0]._id}`):r1("./new"))},[r1,o1]}class Design extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$2_,null,safe_not_equal,{})}}const blankImage="/builder/assets/blank.2f241fb9.png",tableImage="/builder/assets/table.b7a718ad.png";class Screen extends BaseStructure{constructor(){super(!0),this._json={showNavigation:!0,width:"Large",props:{_id:uuid(),_component:"@budibase/standard-components/container",_styles:{normal:{},hover:{},active:{},selected:{}},_children:[],_instanceName:"",direction:"column",hAlign:"stretch",vAlign:"top",size:"grow",gap:"M"},routing:{route:"",roleId:"BASIC",homeScreen:!1},name:"screen-id"}}normalStyle(e1){return this._json.props._styles.normal=e1,this}component(e1){return this._json.props._component=e1,this}table(e1){return this._json.props.table=e1,this}route(e1){return this._json.routing.route=e1,this}name(e1){return this._json.name=e1,this}instanceName(e1){return this._json.props._instanceName=e1,this}customProps(e1){for(let t1 of Object.keys(e1))this._json.props[t1]=e1[t1];return this}}function rowListScreen(n1){return Array.isArray(n1)?n1.map(e1=>({name:`${e1.label} - List`,create:()=>createScreen$1(e1),id:ROW_LIST_TEMPLATE,resourceId:e1.resourceId})):[]}const ROW_LIST_TEMPLATE="ROW_LIST_TEMPLATE",rowListUrl=n1=>sanitizeUrl(`/${n1.label}`),generateTableBlock=n1=>{const e1=new Component("@budibase/standard-components/tableblock");return e1.customProps({title:n1.label,dataSource:n1,sortOrder:"Ascending",size:"spectrum--medium",paginate:!0,rowCount:8,clickBehaviour:"details",showTitleButton:!0,titleButtonText:"Create row",titleButtonClickBehaviour:"new"}).instanceName(`${n1.label} - Table block`),e1},createScreen$1=n1=>new Screen().route(rowListUrl(n1)).instanceName(`${n1.label} - List`).addChild(generateTableBlock(n1)).json(),DatasourceTemplateRow_svelte_svelte_type_style_lang="";function create_if_block$1u(n1){let e1,t1,r1;return t1=new Icon({props:{size:"S",name:"CheckmarkCircle"}}),{c(){e1=element("span"),create_component(t1.$$.fragment),attr(e1,"class","data-source-check svelte-7abi2p")},m(o1,i1){insert$1(o1,e1,i1),mount_component(t1,e1,null),r1=!0},i(o1){r1||(transition_in(t1.$$.fragment,o1),r1=!0)},o(o1){transition_out(t1.$$.fragment,o1),r1=!1},d(o1){o1&&detach(e1),destroy_component(t1)}}}function create_fragment$2W(n1){let e1,t1,r1,o1=n1[0].label+"",i1,a1,s1,l1,c1;t1=new Icon({props:{name:n1[2],color:"var(--spectrum-global-color-gray-600)"}});let u1=n1[1]&&create_if_block$1u();return{c(){e1=element("div"),create_component(t1.$$.fragment),r1=space$1(),i1=text(o1),a1=space$1(),u1&&u1.c(),attr(e1,"class","data-source-entry svelte-7abi2p"),toggle_class(e1,"selected",n1[1])},m(f1,p1){insert$1(f1,e1,p1),mount_component(t1,e1,null),append$1(e1,r1),append$1(e1,i1),append$1(e1,a1),u1&&u1.m(e1,null),s1=!0,l1||(c1=listen(e1,"click",n1[3]),l1=!0)},p(f1,[p1]){const d1={};p1&4&&(d1.name=f1[2]),t1.$set(d1),(!s1||p1&1)&&o1!==(o1=f1[0].label+"")&&set_data(i1,o1),f1[1]?u1?p1&2&&transition_in(u1,1):(u1=create_if_block$1u(),u1.c(),transition_in(u1,1),u1.m(e1,null)):u1&&(group_outros(),transition_out(u1,1,1,()=>{u1=null}),check_outros()),(!s1||p1&2)&&toggle_class(e1,"selected",f1[1])},i(f1){s1||(transition_in(t1.$$.fragment,f1),transition_in(u1),s1=!0)},o(f1){transition_out(t1.$$.fragment,f1),transition_out(u1),s1=!1},d(f1){f1&&detach(e1),destroy_component(t1),u1&&u1.d(),l1=!1,c1()}}}function instance$2Z(n1,e1,t1){let r1,{datasource:o1}=e1,{selected:i1=!1}=e1;function a1(s1){bubble.call(this,n1,s1)}return n1.$$set=s1=>{"datasource"in s1&&t1(0,o1=s1.datasource),"selected"in s1&&t1(1,i1=s1.selected)},n1.$$.update=()=>{n1.$$.dirty&1&&t1(2,r1=o1.type==="viewV2"?"Remove":"Table")},[o1,i1,r1,a1]}class DatasourceTemplateRow extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$2Z,create_fragment$2W,safe_not_equal,{datasource:0,selected:1})}}const DatasourceModal_svelte_svelte_type_style_lang="";function get_each_context$x(n1,e1,t1){const r1=n1.slice();r1[12]=e1[t1];const o1=Array.isArray(r1[12].entities)?r1[12].entities:Object.values(r1[12].entities||{});return r1[13]=o1,r1}function get_each_context_1$9(n1,e1,t1){const r1=n1.slice();r1[16]=e1[t1];const o1=Object.values(r1[16].views||{}).filter(s1=>s1.version===2);r1[17]=o1;const i1={tableId:r1[16]._id,label:r1[16].name,resourceId:r1[16]._id,type:"table"};r1[18]=i1;const a1=r1[1].find(function(...l1){return n1[11](r1[18],...l1)});return r1[19]=a1,r1}function get_each_context_2$4(n1,e1,t1){const r1=n1.slice();r1[22]=e1[t1];const o1={label:r1[22].name,id:r1[22].id,resourceId:r1[22].id,tableId:r1[22].tableId,type:"viewV2"};r1[23]=o1;const i1=r1[1].find(function(...s1){return n1[10](r1[23],...s1)});return r1[19]=i1,r1}function create_default_slot_2$1h(n1){let e1;return{c(){e1=text("Select which datasources you would like to use to create your screens")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_each_block_2$4(n1){let e1,t1;function r1(){return n1[9](n1[23])}return e1=new DatasourceTemplateRow({props:{selected:n1[19],datasource:n1[23]}}),e1.$on("click",r1),{c(){create_component(e1.$$.fragment)},m(o1,i1){mount_component(e1,o1,i1),t1=!0},p(o1,i1){n1=o1;const a1={};i1&6&&(a1.selected=n1[19]),i1&4&&(a1.datasource=n1[23]),e1.$set(a1)},i(o1){t1||(transition_in(e1.$$.fragment,o1),t1=!0)},o(o1){transition_out(e1.$$.fragment,o1),t1=!1},d(o1){destroy_component(e1,o1)}}}function create_each_block_1$9(n1){let e1,t1,r1,o1;function i1(){return n1[8](n1[18])}e1=new DatasourceTemplateRow({props:{selected:n1[19],datasource:n1[18]}}),e1.$on("click",i1);let a1=n1[17],s1=[];for(let c1=0;c1<a1.length;c1+=1)s1[c1]=create_each_block_2$4(get_each_context_2$4(n1,a1,c1));const l1=c1=>transition_out(s1[c1],1,1,()=>{s1[c1]=null});return{c(){create_component(e1.$$.fragment),t1=space$1();for(let c1=0;c1<s1.length;c1+=1)s1[c1].c();r1=empty$1()},m(c1,u1){mount_component(e1,c1,u1),insert$1(c1,t1,u1);for(let f1=0;f1<s1.length;f1+=1)s1[f1].m(c1,u1);insert$1(c1,r1,u1),o1=!0},p(c1,u1){n1=c1;const f1={};if(u1&6&&(f1.selected=n1[19]),u1&4&&(f1.datasource=n1[18]),e1.$set(f1),u1&14){a1=n1[17];let p1;for(p1=0;p1<a1.length;p1+=1){const d1=get_each_context_2$4(n1,a1,p1);s1[p1]?(s1[p1].p(d1,u1),transition_in(s1[p1],1)):(s1[p1]=create_each_block_2$4(d1),s1[p1].c(),transition_in(s1[p1],1),s1[p1].m(r1.parentNode,r1))}for(group_outros(),p1=a1.length;p1<s1.length;p1+=1)l1(p1);check_outros()}},i(c1){if(!o1){transition_in(e1.$$.fragment,c1);for(let u1=0;u1<a1.length;u1+=1)transition_in(s1[u1]);o1=!0}},o(c1){transition_out(e1.$$.fragment,c1),s1=s1.filter(Boolean);for(let u1=0;u1<s1.length;u1+=1)transition_out(s1[u1]);o1=!1},d(c1){destroy_component(e1,c1),c1&&detach(t1),destroy_each(s1,c1),c1&&detach(r1)}}}function create_each_block$x(n1){let e1,t1,r1,o1,i1,a1=n1[12].name+"",s1,l1,c1,u1;var f1=ICONS[n1[12].source];function p1(h1){return{props:{height:"24",width:"24"}}}f1&&(r1=construct_svelte_component(f1,p1()));let d1=n1[13].filter(func$d),m1=[];for(let h1=0;h1<d1.length;h1+=1)m1[h1]=create_each_block_1$9(get_each_context_1$9(n1,d1,h1));const _1=h1=>transition_out(m1[h1],1,1,()=>{m1[h1]=null});return{c(){e1=element("div"),t1=element("div"),r1&&create_component(r1.$$.fragment),o1=space$1(),i1=element("div"),s1=text(a1),l1=space$1();for(let h1=0;h1<m1.length;h1+=1)m1[h1].c();c1=space$1(),attr(i1,"class","data-source-name"),attr(t1,"class","data-source-header svelte-1tsbsfb"),attr(e1,"class","data-source-wrap svelte-1tsbsfb")},m(h1,g1){insert$1(h1,e1,g1),append$1(e1,t1),r1&&mount_component(r1,t1,null),append$1(t1,o1),append$1(t1,i1),append$1(i1,s1),append$1(e1,l1);for(let $1=0;$1<m1.length;$1+=1)m1[$1].m(e1,null);append$1(e1,c1),u1=!0},p(h1,g1){if(f1!==(f1=ICONS[h1[12].source])){if(r1){group_outros();const $1=r1;transition_out($1.$$.fragment,1,0,()=>{destroy_component($1,1)}),check_outros()}f1?(r1=construct_svelte_component(f1,p1()),create_component(r1.$$.fragment),transition_in(r1.$$.fragment,1),mount_component(r1,t1,o1)):r1=null}if((!u1||g1&4)&&a1!==(a1=h1[12].name+"")&&set_data(s1,a1),g1&14){d1=h1[13].filter(func$d);let $1;for($1=0;$1<d1.length;$1+=1){const y1=get_each_context_1$9(h1,d1,$1);m1[$1]?(m1[$1].p(y1,g1),transition_in(m1[$1],1)):(m1[$1]=create_each_block_1$9(y1),m1[$1].c(),transition_in(m1[$1],1),m1[$1].m(e1,c1))}for(group_outros(),$1=d1.length;$1<m1.length;$1+=1)_1($1);check_outros()}},i(h1){if(!u1){r1&&transition_in(r1.$$.fragment,h1);for(let g1=0;g1<d1.length;g1+=1)transition_in(m1[g1]);u1=!0}},o(h1){r1&&transition_out(r1.$$.fragment,h1),m1=m1.filter(Boolean);for(let g1=0;g1<m1.length;g1+=1)transition_out(m1[g1]);u1=!1},d(h1){h1&&detach(e1),r1&&destroy_component(r1),destroy_each(m1,h1)}}}function create_default_slot_1$1E(n1){let e1,t1,r1=n1[2],o1=[];for(let a1=0;a1<r1.length;a1+=1)o1[a1]=create_each_block$x(get_each_context$x(n1,r1,a1));const i1=a1=>transition_out(o1[a1],1,1,()=>{o1[a1]=null});return{c(){for(let a1=0;a1<o1.length;a1+=1)o1[a1].c();e1=empty$1()},m(a1,s1){for(let l1=0;l1<o1.length;l1+=1)o1[l1].m(a1,s1);insert$1(a1,e1,s1),t1=!0},p(a1,s1){if(s1&14){r1=a1[2];let l1;for(l1=0;l1<r1.length;l1+=1){const c1=get_each_context$x(a1,r1,l1);o1[l1]?(o1[l1].p(c1,s1),transition_in(o1[l1],1)):(o1[l1]=create_each_block$x(c1),o1[l1].c(),transition_in(o1[l1],1),o1[l1].m(e1.parentNode,e1))}for(group_outros(),l1=r1.length;l1<o1.length;l1+=1)i1(l1);check_outros()}},i(a1){if(!t1){for(let s1=0;s1<r1.length;s1+=1)transition_in(o1[s1]);t1=!0}},o(a1){o1=o1.filter(Boolean);for(let s1=0;s1<o1.length;s1+=1)transition_out(o1[s1]);t1=!1},d(a1){destroy_each(o1,a1),a1&&detach(e1)}}}function create_default_slot$21(n1){let e1,t1,r1,o1;return e1=new Body({props:{size:"S",$$slots:{default:[create_default_slot_2$1h]},$$scope:{ctx:n1}}}),r1=new Layout$m({props:{noPadding:!0,gap:"S",$$slots:{default:[create_default_slot_1$1E]},$$scope:{ctx:n1}}}),{c(){create_component(e1.$$.fragment),t1=space$1(),create_component(r1.$$.fragment)},m(i1,a1){mount_component(e1,i1,a1),insert$1(i1,t1,a1),mount_component(r1,i1,a1),o1=!0},p(i1,a1){const s1={};a1&67108864&&(s1.$$scope={dirty:a1,ctx:i1}),e1.$set(s1);const l1={};a1&67108870&&(l1.$$scope={dirty:a1,ctx:i1}),r1.$set(l1)},i(i1){o1||(transition_in(e1.$$.fragment,i1),transition_in(r1.$$.fragment,i1),o1=!0)},o(i1){transition_out(e1.$$.fragment,i1),transition_out(r1.$$.fragment,i1),o1=!1},d(i1){destroy_component(e1,i1),i1&&detach(t1),destroy_component(r1,i1)}}}function create_fragment$2V(n1){let e1,t1,r1;return t1=new ModalContent({props:{title:"Autogenerated screens",confirmText:"Confirm",cancelText:"Back",onConfirm:n1[4],onCancel:n1[0],disabled:!n1[1].length,size:"L",$$slots:{default:[create_default_slot$21]},$$scope:{ctx:n1}}}),{c(){e1=element("span"),create_component(t1.$$.fragment)},m(o1,i1){insert$1(o1,e1,i1),mount_component(t1,e1,null),r1=!0},p(o1,[i1]){const a1={};i1&1&&(a1.onCancel=o1[0]),i1&2&&(a1.disabled=!o1[1].length),i1&67108870&&(a1.$$scope={dirty:i1,ctx:o1}),t1.$set(a1)},i(o1){r1||(transition_in(t1.$$.fragment,o1),r1=!0)},o(o1){transition_out(t1.$$.fragment,o1),r1=!1},d(o1){o1&&detach(e1),destroy_component(t1)}}}const func$d=n1=>n1._id!=="ta_users";function instance$2Y(n1,e1,t1){let r1,o1;component_subscribe(n1,datasources,_1=>t1(7,o1=_1));let{onCancel:i1}=e1,{onConfirm:a1}=e1,{initialScreens:s1=[]}=e1,l1=[...s1];const c1=_1=>{const{resourceId:h1}=_1;l1.find(g1=>g1.resourceId===h1)?t1(1,l1=l1.filter(g1=>g1.resourceId!==h1)):t1(1,l1=[...l1,rowListScreen([_1])[0]])},u1=async()=>{await a1({templates:l1})};onMount(async()=>{try{await datasources.fetch()}catch{notifications.error("Error fetching datasources")}});const f1=_1=>c1(_1),p1=_1=>c1(_1),d1=(_1,h1)=>h1.resourceId===_1.resourceId,m1=(_1,h1)=>h1.resourceId===_1.resourceId;return n1.$$set=_1=>{"onCancel"in _1&&t1(0,i1=_1.onCancel),"onConfirm"in _1&&t1(5,a1=_1.onConfirm),"initialScreens"in _1&&t1(6,s1=_1.initialScreens)},n1.$$.update=()=>{var _1;n1.$$.dirty&128&&t1(2,r1=(_1=o1.list)==null?void 0:_1.filter(h1=>h1.source!==IntegrationNames.REST&&h1.entities))},[i1,l1,r1,c1,u1,a1,s1,o1,f1,p1,d1,m1]}class DatasourceModal extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$2Y,create_fragment$2V,safe_not_equal,{onCancel:0,onConfirm:5,initialScreens:6})}}function create_default_slot$20(n1){let e1,t1,r1,o1;function i1(s1){n1[8](s1)}let a1={label:"Access",error:n1[3],getOptionLabel:func$c,getOptionValue:func_1$9,getOptionColour:n1[7],options:n1[4],placeholder:null};return n1[0]!==void 0&&(a1.value=n1[0]),t1=new Select_1$1({props:a1}),binding_callbacks.push(()=>bind$3(t1,"value",i1)),t1.$on("change",n1[5]),{c(){e1=text(`Select the level of access required to see these screens
1739
+ `),create_component(t1.$$.fragment)},m(s1,l1){insert$1(s1,e1,l1),mount_component(t1,s1,l1),o1=!0},p(s1,l1){const c1={};l1&8&&(c1.error=s1[3]),l1&16&&(c1.options=s1[4]),!r1&&l1&1&&(r1=!0,c1.value=s1[0],add_flush_callback(()=>r1=!1)),t1.$set(c1)},i(s1){o1||(transition_in(t1.$$.fragment,s1),o1=!0)},o(s1){transition_out(t1.$$.fragment,s1),o1=!1},d(s1){s1&&detach(e1),destroy_component(t1,s1)}}}function create_fragment$2U(n1){let e1,t1;return e1=new ModalContent({props:{title:"Access",confirmText:"Done",cancelText:"Back",onConfirm:n1[1],onCancel:n1[2],disabled:!!n1[3],$$slots:{default:[create_default_slot$20]},$$scope:{ctx:n1}}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,[o1]){const i1={};o1&2&&(i1.onConfirm=r1[1]),o1&4&&(i1.onCancel=r1[2]),o1&8&&(i1.disabled=!!r1[3]),o1&1049&&(i1.$$scope={dirty:o1,ctx:r1}),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}const func$c=n1=>n1.name,func_1$9=n1=>n1._id;function instance$2X(n1,e1,t1){let r1;component_subscribe(n1,roles,d1=>t1(4,r1=d1));let{onConfirm:o1}=e1,{onCancel:i1}=e1,{screenUrl:a1}=e1,{screenAccessRole:s1}=e1,l1;const c1=d1=>{const m1=d1.detail;u1(a1,m1)?t1(3,l1="This URL is already taken for this access role"):t1(3,l1=null)},u1=(d1,m1)=>!d1||!m1?!1:get_store_value(store).screens.some(_1=>_1.routing.route.toLowerCase()===d1.toLowerCase()&&_1.routing.roleId===m1);onMount(()=>{c1({detail:s1})});const f1=d1=>getRoleColour(d1._id);function p1(d1){s1=d1,t1(0,s1)}return n1.$$set=d1=>{"onConfirm"in d1&&t1(1,o1=d1.onConfirm),"onCancel"in d1&&t1(2,i1=d1.onCancel),"screenUrl"in d1&&t1(6,a1=d1.screenUrl),"screenAccessRole"in d1&&t1(0,s1=d1.screenAccessRole)},[s1,o1,i1,l1,r1,c1,a1,f1,p1]}class ScreenRoleModal extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$2X,create_fragment$2U,safe_not_equal,{onConfirm:1,onCancel:2,screenUrl:6,screenAccessRole:0})}}const createFromScratchScreen={name:"Create from scratch",id:"createFromScratch",create:()=>createScreen(),table:"Create from scratch"},createScreen=()=>new Screen().instanceName("New Screen").json(),allTemplates=n1=>[...rowListScreen(n1)],createTemplateOverride=n1=>()=>{const e1=n1.create();return e1.name=e1.props._id,e1.routing.route=e1.routing.route.toLowerCase(),e1.template=n1.id,e1},getTemplates=n1=>{const e1=o1=>({...o1,create:createTemplateOverride(o1)}),t1=e1(createFromScratchScreen),r1=allTemplates(n1).map(e1);return[t1,...r1.sort((o1,i1)=>o1.name>i1.name?1:-1)]};function create_default_slot_2$1g(n1){let e1,t1;return e1=new DatasourceModal({props:{onConfirm:n1[6],initialScreens:n1[4]?[...n1[4]]:[]}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&16&&(i1.initialScreens=r1[4]?[...r1[4]]:[]),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_default_slot_1$1D(n1){let e1,t1,r1;function o1(a1){n1[12](a1)}let i1={onConfirm:n1[8],onCancel:n1[9],screenUrl:n1[5]};return n1[3]!==void 0&&(i1.screenAccessRole=n1[3]),e1=new ScreenRoleModal({props:i1}),binding_callbacks.push(()=>bind$3(e1,"screenAccessRole",o1)),{c(){create_component(e1.$$.fragment)},m(a1,s1){mount_component(e1,a1,s1),r1=!0},p(a1,s1){const l1={};s1&32&&(l1.screenUrl=a1[5]),!t1&&s1&8&&(t1=!0,l1.screenAccessRole=a1[3],add_flush_callback(()=>t1=!1)),e1.$set(l1)},i(a1){r1||(transition_in(e1.$$.fragment,a1),r1=!0)},o(a1){transition_out(e1.$$.fragment,a1),r1=!1},d(a1){destroy_component(e1,a1)}}}function create_default_slot$1$(n1){let e1,t1;return e1=new ScreenDetailsModal({props:{onConfirm:n1[7],initialUrl:n1[5]}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&32&&(i1.initialUrl=r1[5]),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_fragment$2T(n1){let e1,t1,r1,o1,i1,a1,s1={autoFocus:!1,$$slots:{default:[create_default_slot_2$1g]},$$scope:{ctx:n1}};e1=new Modal({props:s1}),n1[11](e1);let l1={$$slots:{default:[create_default_slot_1$1D]},$$scope:{ctx:n1}};r1=new Modal({props:l1}),n1[13](r1);let c1={$$slots:{default:[create_default_slot$1$]},$$scope:{ctx:n1}};return i1=new Modal({props:c1}),n1[14](i1),{c(){create_component(e1.$$.fragment),t1=space$1(),create_component(r1.$$.fragment),o1=space$1(),create_component(i1.$$.fragment)},m(u1,f1){mount_component(e1,u1,f1),insert$1(u1,t1,f1),mount_component(r1,u1,f1),insert$1(u1,o1,f1),mount_component(i1,u1,f1),a1=!0},p(u1,[f1]){const p1={};f1&16777232&&(p1.$$scope={dirty:f1,ctx:u1}),e1.$set(p1);const d1={};f1&16777256&&(d1.$$scope={dirty:f1,ctx:u1}),r1.$set(d1);const m1={};f1&16777248&&(m1.$$scope={dirty:f1,ctx:u1}),i1.$set(m1)},i(u1){a1||(transition_in(e1.$$.fragment,u1),transition_in(r1.$$.fragment,u1),transition_in(i1.$$.fragment,u1),a1=!0)},o(u1){transition_out(e1.$$.fragment,u1),transition_out(r1.$$.fragment,u1),transition_out(i1.$$.fragment,u1),a1=!1},d(u1){n1[11](null),destroy_component(e1,u1),u1&&detach(t1),n1[13](null),destroy_component(r1,u1),u1&&detach(o1),n1[14](null),destroy_component(i1,u1)}}}function instance$2W(n1,e1,t1){let r1,o1;component_subscribe(n1,tables,H1=>t1(17,r1=H1)),component_subscribe(n1,goto,H1=>t1(18,o1=H1));let i1,a1,s1,l1,c1=Roles.BASIC,u1=null,f1=null,p1=null;const d1=async({screens:H1,screenAccessRole:B1})=>{if(!!(H1!=null&&H1.length))try{let q1;for(let R1 of H1){if(m1(R1.routing.route)){let F1=2,j1=_1(R1,F1);for(;m1(j1);)j1=_1(R1,++F1);R1.routing.route=j1}if(R1.routing.route=sanitizeUrl(R1.routing.route),!B1)return;R1.routing.roleId=B1,q1=(await store.actions.screens.save(R1))._id,await store.actions.links.save(R1.routing.route,capitalise(R1.routing.route.split("/")[1]))}o1(`./${q1}`),store.actions.screens.select(q1)}catch(q1){console.log(q1),notifications.error("Error creating screens")}},m1=H1=>{const B1=c1;return!!get_store_value(store).screens.filter(R1=>R1.routing.roleId===B1).find(R1=>{var I1;return((I1=R1.routing)==null?void 0:I1.route)===H1})},_1=(H1,B1)=>{var R1;let q1=((R1=H1.routing)==null?void 0:R1.route)||"";if(q1.startsWith("/")&&(q1=q1.slice(1)),q1.includes("/")){const I1=q1.split("/");return`/${I1[0]}-${B1}/${I1.slice(1).join("/")}`}else return`/${q1}-${B1}`},h1=H1=>{if(t1(4,u1=null),t1(5,f1=null),p1=H1,i1=null,t1(3,c1=Roles.BASIC),H1==="table")s1.show();else if(H1==="blank")i1=getTemplates(r1.list).find(R1=>R1.id==="createFromScratch").create(),a1.show();else throw new Error("Invalid mode provided")},g1=async({templates:H1})=>{t1(4,u1=H1),l1.show()},$1=async()=>{const H1=u1.map(B1=>{let q1=B1.create();return q1.autoTableId=B1.resourceId,q1});await d1({screens:H1,screenAccessRole:c1})},y1=async({screenUrl:H1})=>{t1(5,f1=H1),l1.show()},w1=async({screenUrl:H1,screenAccessRole:B1})=>{!i1||(i1.routing.route=H1,await d1({screens:[i1],screenAccessRole:B1}))},S1=async()=>{p1==="blank"?w1({screenUrl:f1,screenAccessRole:c1}):$1()},O1=()=>{p1==="blank"?a1.show():s1.show()};function C1(H1){binding_callbacks[H1?"unshift":"push"](()=>{s1=H1,t1(1,s1)})}function M1(H1){c1=H1,t1(3,c1)}function z1(H1){binding_callbacks[H1?"unshift":"push"](()=>{l1=H1,t1(2,l1)})}function D1(H1){binding_callbacks[H1?"unshift":"push"](()=>{a1=H1,t1(0,a1)})}return[a1,s1,l1,c1,u1,f1,g1,y1,S1,O1,h1,C1,M1,z1,D1]}class CreateScreenModal extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$2W,create_fragment$2T,safe_not_equal,{show:10})}get show(){return this.$$.ctx[10]}}const index_svelte_svelte_type_style_lang$d="";function create_default_slot_5$L(n1){let e1;return{c(){e1=text("Start from scratch or create screens from your data")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot_4$U(n1){let e1;return{c(){e1=text("Blank screen")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot_3$14(n1){let e1;return{c(){e1=text("Add an empty blank screen")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot_2$1f(n1){let e1;return{c(){e1=text("Table")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot_1$1C(n1){let e1;return{c(){e1=text("View, edit and delete rows on a table")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot$1_(n1){let e1,t1,r1,o1,i1,a1,s1,l1,c1,u1,f1,p1,d1,m1,_1,h1,g1,$1,y1,w1,S1,O1,C1,M1,z1,D1;return t1=new Body({props:{$$slots:{default:[create_default_slot_5$L]},$$scope:{ctx:n1}}}),f1=new Body({props:{size:"S",$$slots:{default:[create_default_slot_4$U]},$$scope:{ctx:n1}}}),d1=new Body({props:{size:"XS",$$slots:{default:[create_default_slot_3$14]},$$scope:{ctx:n1}}}),S1=new Body({props:{size:"S",$$slots:{default:[create_default_slot_2$1f]},$$scope:{ctx:n1}}}),C1=new Body({props:{size:"XS",$$slots:{default:[create_default_slot_1$1C]},$$scope:{ctx:n1}}}),{c(){e1=element("div"),create_component(t1.$$.fragment),r1=space$1(),o1=element("div"),i1=element("div"),a1=element("div"),s1=element("img"),c1=space$1(),u1=element("div"),create_component(f1.$$.fragment),p1=space$1(),create_component(d1.$$.fragment),m1=space$1(),_1=element("div"),h1=element("div"),g1=element("img"),y1=space$1(),w1=element("div"),create_component(S1.$$.fragment),O1=space$1(),create_component(C1.$$.fragment),attr(e1,"class","subHeading svelte-qf5yhq"),attr(s1,"alt",""),src_url_equal(s1.src,l1=blankImage)||attr(s1,"src",l1),attr(s1,"class","svelte-qf5yhq"),attr(a1,"class","image svelte-qf5yhq"),attr(u1,"class","text svelte-qf5yhq"),attr(i1,"class","card svelte-qf5yhq"),attr(g1,"alt",""),src_url_equal(g1.src,$1=tableImage)||attr(g1,"src",$1),attr(g1,"class","svelte-qf5yhq"),attr(h1,"class","image svelte-qf5yhq"),attr(w1,"class","text svelte-qf5yhq"),attr(_1,"class","card svelte-qf5yhq"),attr(o1,"class","cards svelte-qf5yhq")},m(H1,B1){insert$1(H1,e1,B1),mount_component(t1,e1,null),insert$1(H1,r1,B1),insert$1(H1,o1,B1),append$1(o1,i1),append$1(i1,a1),append$1(a1,s1),append$1(i1,c1),append$1(i1,u1),mount_component(f1,u1,null),append$1(u1,p1),mount_component(d1,u1,null),append$1(o1,m1),append$1(o1,_1),append$1(_1,h1),append$1(h1,g1),append$1(_1,y1),append$1(_1,w1),mount_component(S1,w1,null),append$1(w1,O1),mount_component(C1,w1,null),M1=!0,z1||(D1=[listen(i1,"click",n1[4]),listen(_1,"click",n1[5])],z1=!0)},p(H1,B1){const q1={};B1&128&&(q1.$$scope={dirty:B1,ctx:H1}),t1.$set(q1);const R1={};B1&128&&(R1.$$scope={dirty:B1,ctx:H1}),f1.$set(R1);const I1={};B1&128&&(I1.$$scope={dirty:B1,ctx:H1}),d1.$set(I1);const F1={};B1&128&&(F1.$$scope={dirty:B1,ctx:H1}),S1.$set(F1);const j1={};B1&128&&(j1.$$scope={dirty:B1,ctx:H1}),C1.$set(j1)},i(H1){M1||(transition_in(t1.$$.fragment,H1),transition_in(f1.$$.fragment,H1),transition_in(d1.$$.fragment,H1),transition_in(S1.$$.fragment,H1),transition_in(C1.$$.fragment,H1),M1=!0)},o(H1){transition_out(t1.$$.fragment,H1),transition_out(f1.$$.fragment,H1),transition_out(d1.$$.fragment,H1),transition_out(S1.$$.fragment,H1),transition_out(C1.$$.fragment,H1),M1=!1},d(H1){H1&&detach(e1),destroy_component(t1),H1&&detach(r1),H1&&detach(o1),destroy_component(f1),destroy_component(d1),destroy_component(S1),destroy_component(C1),z1=!1,run_all(D1)}}}function create_fragment$2S(n1){let e1,t1,r1,o1,i1;t1=new CreationPage({props:{showClose:!!n1[0],onClose:n1[0],heading:n1[2]?"Create new screen":"Create your first screen",$$slots:{default:[create_default_slot$1_]},$$scope:{ctx:n1}}});let a1={};return o1=new CreateScreenModal({props:a1}),n1[6](o1),{c(){e1=element("div"),create_component(t1.$$.fragment),r1=space$1(),create_component(o1.$$.fragment),attr(e1,"class","page svelte-qf5yhq")},m(s1,l1){insert$1(s1,e1,l1),mount_component(t1,e1,null),insert$1(s1,r1,l1),mount_component(o1,s1,l1),i1=!0},p(s1,[l1]){const c1={};l1&1&&(c1.showClose=!!s1[0]),l1&1&&(c1.onClose=s1[0]),l1&4&&(c1.heading=s1[2]?"Create new screen":"Create your first screen"),l1&130&&(c1.$$scope={dirty:l1,ctx:s1}),t1.$set(c1);const u1={};o1.$set(u1)},i(s1){i1||(transition_in(t1.$$.fragment,s1),transition_in(o1.$$.fragment,s1),i1=!0)},o(s1){transition_out(t1.$$.fragment,s1),transition_out(o1.$$.fragment,s1),i1=!1},d(s1){s1&&detach(e1),destroy_component(t1),s1&&detach(r1),n1[6](null),destroy_component(o1,s1)}}}function instance$2V(n1,e1,t1){let r1,o1;component_subscribe(n1,store,u1=>t1(3,o1=u1));let{onClose:i1=null}=e1,a1;const s1=()=>a1.show("blank"),l1=()=>a1.show("table");function c1(u1){binding_callbacks[u1?"unshift":"push"](()=>{a1=u1,t1(1,a1)})}return n1.$$set=u1=>{"onClose"in u1&&t1(0,i1=u1.onClose)},n1.$$.update=()=>{var u1;n1.$$.dirty&8&&t1(2,r1=(u1=o1.screens)==null?void 0:u1.length)},[i1,a1,r1,o1,s1,l1,c1]}class NewScreen extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$2V,create_fragment$2S,safe_not_equal,{onClose:0})}}function create_fragment$2R(n1){let e1,t1;return e1=new NewScreen({props:{onClose:n1[0]}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,[o1]){const i1={};o1&1&&(i1.onClose=r1[0]),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function instance$2U(n1,e1,t1){let r1,o1,i1;component_subscribe(n1,goto,s1=>t1(2,o1=s1)),component_subscribe(n1,store,s1=>t1(1,i1=s1));const a1=({screens:s1,selectedScreenId:l1})=>s1!=null&&s1.length?l1?()=>{o1(`./${l1}`)}:()=>{o1(`./${s1[0]._id}`)}:null;return n1.$$.update=()=>{n1.$$.dirty&2&&t1(0,r1=a1(i1))},[r1,i1]}class New extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$2U,create_fragment$2R,safe_not_equal,{})}}function create_fragment$2Q(n1){let e1;const t1=n1[1].default,r1=create_slot(t1,n1,n1[0],null);return{c(){r1&&r1.c()},m(o1,i1){r1&&r1.m(o1,i1),e1=!0},p(o1,[i1]){r1&&r1.p&&(!e1||i1&1)&&update_slot_base(r1,t1,o1,o1[0],e1?get_slot_changes(t1,o1[0],i1,null):get_all_dirty_from_scope(o1[0]),null)},i(o1){e1||(transition_in(r1,o1),e1=!0)},o(o1){transition_out(r1,o1),e1=!1},d(o1){r1&&r1.d(o1)}}}function instance$2T(n1,e1,t1){let{$$slots:r1={},$$scope:o1}=e1;return n1.$$set=i1=>{"$$scope"in i1&&t1(0,o1=i1.$$scope)},[o1,r1]}class Layout$c extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$2T,create_fragment$2Q,safe_not_equal,{})}}function create_fragment$2P(n1){let e1,t1,r1;function o1(a1){n1[5](a1)}let i1={options:n1[1],getOptionLabel:func$b,getOptionValue:func_1$8};return n1[0]!==void 0&&(i1.value=n1[0]),e1=new Select_1$1({props:i1}),binding_callbacks.push(()=>bind$3(e1,"value",o1)),e1.$on("change",n1[2]),{c(){create_component(e1.$$.fragment)},m(a1,s1){mount_component(e1,a1,s1),r1=!0},p(a1,[s1]){const l1={};s1&2&&(l1.options=a1[1]),!t1&&s1&1&&(t1=!0,l1.value=a1[0],add_flush_callback(()=>t1=!1)),e1.$set(l1)},i(a1){r1||(transition_in(e1.$$.fragment,a1),r1=!0)},o(a1){transition_out(e1.$$.fragment,a1),r1=!1},d(a1){destroy_component(e1,a1)}}}const func$b=n1=>n1.name,func_1$8=n1=>n1._id;function instance$2S(n1,e1,t1){let r1,o1;component_subscribe(n1,tables,u1=>t1(4,o1=u1));const i1=createEventDispatcher();let{value:a1}=e1,{isTrigger:s1}=e1;const l1=u1=>{t1(0,a1=u1.detail),i1("change",u1.detail)};function c1(u1){a1=u1,t1(0,a1)}return n1.$$set=u1=>{"value"in u1&&t1(0,a1=u1.value),"isTrigger"in u1&&t1(3,s1=u1.isTrigger)},n1.$$.update=()=>{n1.$$.dirty&24&&t1(1,r1=o1.list.filter(u1=>!s1||u1._id!==TableNames.USERS))},[a1,r1,l1,s1,o1,c1]}class TableSelector extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$2S,create_fragment$2P,safe_not_equal,{value:0,isTrigger:3})}}function create_if_block_7$4(n1){let e1,t1,r1;var o1=n1[4]?ModalBindableInput:DrawerBindableInput;function i1(a1){return{props:{panel:ServerBindingPanel,value:a1[0][a1[2]],label:a1[2],type:"string",bindings:a1[5],fillWidth:!0,allowJS:!0,updateOnChange:!1}}}return o1&&(e1=construct_svelte_component(o1,i1(n1)),e1.$on("change",n1[17])),{c(){e1&&create_component(e1.$$.fragment),t1=empty$1()},m(a1,s1){e1&&mount_component(e1,a1,s1),insert$1(a1,t1,s1),r1=!0},p(a1,s1){const l1={};if(s1&5&&(l1.value=a1[0][a1[2]]),s1&4&&(l1.label=a1[2]),s1&32&&(l1.bindings=a1[5]),o1!==(o1=a1[4]?ModalBindableInput:DrawerBindableInput)){if(e1){group_outros();const c1=e1;transition_out(c1.$$.fragment,1,0,()=>{destroy_component(c1,1)}),check_outros()}o1?(e1=construct_svelte_component(o1,i1(a1)),e1.$on("change",a1[17]),create_component(e1.$$.fragment),transition_in(e1.$$.fragment,1),mount_component(e1,t1.parentNode,t1)):e1=null}else o1&&e1.$set(l1)},i(a1){r1||(e1&&transition_in(e1.$$.fragment,a1),r1=!0)},o(a1){e1&&transition_out(e1.$$.fragment,a1),r1=!1},d(a1){a1&&detach(t1),e1&&destroy_component(e1,a1)}}}function create_if_block_6$4(n1){let e1,t1,r1;function o1(a1){n1[15](a1)}let i1={schema:n1[3]};return n1[0][n1[2]]!==void 0&&(i1.linkedRows=n1[0][n1[2]]),e1=new LinkedRowSelector({props:i1}),binding_callbacks.push(()=>bind$3(e1,"linkedRows",o1)),e1.$on("change",n1[16]),{c(){create_component(e1.$$.fragment)},m(a1,s1){mount_component(e1,a1,s1),r1=!0},p(a1,s1){const l1={};s1&8&&(l1.schema=a1[3]),!t1&&s1&5&&(t1=!0,l1.linkedRows=a1[0][a1[2]],add_flush_callback(()=>t1=!1)),e1.$set(l1)},i(a1){r1||(transition_in(e1.$$.fragment,a1),r1=!0)},o(a1){transition_out(e1.$$.fragment,a1),r1=!1},d(a1){destroy_component(e1,a1)}}}function create_if_block_5$7(n1){let e1,t1,r1,o1,i1;return t1=new Label({props:{$$slots:{default:[create_default_slot$1Z]},$$scope:{ctx:n1}}}),o1=new QueryEditor({props:{editorHeight:"150",mode:"json",value:n1[0][n1[2]]}}),o1.$on("change",n1[14]),{c(){e1=element("span"),create_component(t1.$$.fragment),r1=space$1(),create_component(o1.$$.fragment)},m(a1,s1){insert$1(a1,e1,s1),mount_component(t1,e1,null),append$1(e1,r1),mount_component(o1,e1,null),i1=!0},p(a1,s1){const l1={};s1&262148&&(l1.$$scope={dirty:s1,ctx:a1}),t1.$set(l1);const c1={};s1&5&&(c1.value=a1[0][a1[2]]),o1.$set(c1)},i(a1){i1||(transition_in(t1.$$.fragment,a1),transition_in(o1.$$.fragment,a1),i1=!0)},o(a1){transition_out(t1.$$.fragment,a1),transition_out(o1.$$.fragment,a1),i1=!1},d(a1){a1&&detach(e1),destroy_component(t1),destroy_component(o1)}}}function create_if_block_4$d(n1){let e1,t1,r1;function o1(a1){n1[12](a1)}let i1={label:n1[2]};return n1[0][n1[2]]!==void 0&&(i1.value=n1[0][n1[2]]),e1=new TextArea_1({props:i1}),binding_callbacks.push(()=>bind$3(e1,"value",o1)),e1.$on("change",n1[13]),{c(){create_component(e1.$$.fragment)},m(a1,s1){mount_component(e1,a1,s1),r1=!0},p(a1,s1){const l1={};s1&4&&(l1.label=a1[2]),!t1&&s1&5&&(t1=!0,l1.value=a1[0][a1[2]],add_flush_callback(()=>t1=!1)),e1.$set(l1)},i(a1){r1||(transition_in(e1.$$.fragment,a1),r1=!0)},o(a1){transition_out(e1.$$.fragment,a1),r1=!1},d(a1){destroy_component(e1,a1)}}}function create_if_block_3$k(n1){let e1,t1,r1;function o1(a1){n1[10](a1)}let i1={label:n1[2],options:n1[3].constraints.inclusion};return n1[0][n1[2]]!==void 0&&(i1.value=n1[0][n1[2]]),e1=new Multiselect_1({props:i1}),binding_callbacks.push(()=>bind$3(e1,"value",o1)),e1.$on("change",n1[11]),{c(){create_component(e1.$$.fragment)},m(a1,s1){mount_component(e1,a1,s1),r1=!0},p(a1,s1){const l1={};s1&4&&(l1.label=a1[2]),s1&8&&(l1.options=a1[3].constraints.inclusion),!t1&&s1&5&&(t1=!0,l1.value=a1[0][a1[2]],add_flush_callback(()=>t1=!1)),e1.$set(l1)},i(a1){r1||(transition_in(e1.$$.fragment,a1),r1=!0)},o(a1){transition_out(e1.$$.fragment,a1),r1=!1},d(a1){destroy_component(e1,a1)}}}function create_if_block_2$x(n1){let e1,t1;return e1=new Toggle({props:{text:n1[2],value:n1[0][n1[2]]}}),e1.$on("change",n1[9]),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&4&&(i1.text=r1[2]),o1&5&&(i1.value=r1[0][r1[2]]),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_if_block_1$O(n1){let e1,t1;return e1=new DatePicker_1({props:{label:n1[2],value:n1[0][n1[2]]}}),e1.$on("change",n1[8]),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&4&&(i1.label=r1[2]),o1&5&&(i1.value=r1[0][r1[2]]),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_if_block$1t(n1){let e1,t1;return e1=new Select_1$1({props:{label:n1[2],value:n1[0][n1[2]],options:n1[3].constraints.inclusion}}),e1.$on("change",n1[7]),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&4&&(i1.label=r1[2]),o1&5&&(i1.value=r1[0][r1[2]]),o1&8&&(i1.options=r1[3].constraints.inclusion),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_default_slot$1Z(n1){let e1;return{c(){e1=text(n1[2])},m(t1,r1){insert$1(t1,e1,r1)},p(t1,r1){r1&4&&set_data(e1,t1[2])},d(t1){t1&&detach(e1)}}}function create_fragment$2O(n1){let e1,t1,r1,o1,i1;const a1=[create_if_block$1t,create_if_block_1$O,create_if_block_2$x,create_if_block_3$k,create_if_block_4$d,create_if_block_5$7,create_if_block_6$4,create_if_block_7$4],s1=[];function l1(c1,u1){return u1&8&&(e1=null),e1==null&&(e1=!!(schemaHasOptions(c1[3])&&c1[3].type!=="array")),e1?0:c1[3].type==="datetime"?1:c1[3].type==="boolean"?2:c1[3].type==="array"?3:c1[3].type==="longform"?4:c1[3].type==="json"?5:c1[3].type==="link"?6:c1[3].type==="string"||c1[3].type==="number"?7:-1}return~(t1=l1(n1,-1))&&(r1=s1[t1]=a1[t1](n1)),{c(){r1&&r1.c(),o1=empty$1()},m(c1,u1){~t1&&s1[t1].m(c1,u1),insert$1(c1,o1,u1),i1=!0},p(c1,[u1]){let f1=t1;t1=l1(c1,u1),t1===f1?~t1&&s1[t1].p(c1,u1):(r1&&(group_outros(),transition_out(s1[f1],1,1,()=>{s1[f1]=null}),check_outros()),~t1?(r1=s1[t1],r1?r1.p(c1,u1):(r1=s1[t1]=a1[t1](c1),r1.c()),transition_in(r1,1),r1.m(o1.parentNode,o1)):r1=null)},i(c1){i1||(transition_in(r1),i1=!0)},o(c1){transition_out(r1),i1=!1},d(c1){~t1&&s1[t1].d(c1),c1&&detach(o1)}}}function schemaHasOptions(n1){var e1,t1;return!!((t1=(e1=n1.constraints)==null?void 0:e1.inclusion)!=null&&t1.length)}function instance$2R(n1,e1,t1){let r1,{onChange:o1}=e1,{field:i1}=e1,{schema:a1}=e1,{value:s1}=e1,{bindings:l1}=e1,{isTestModal:c1}=e1;const u1=S1=>o1(S1,i1),f1=S1=>o1(S1,i1),p1=S1=>o1(S1,i1);function d1(S1){n1.$$.not_equal(s1[i1],S1)&&(s1[i1]=S1,t1(0,s1))}const m1=S1=>o1(S1,i1);function _1(S1){n1.$$.not_equal(s1[i1],S1)&&(s1[i1]=S1,t1(0,s1))}const h1=S1=>o1(S1,i1),g1=S1=>{var O1;((O1=S1.detail)==null?void 0:O1.value)!==s1[i1]&&o1(S1,i1,a1.type)};function $1(S1){n1.$$.not_equal(s1[i1],S1)&&(s1[i1]=S1,t1(0,s1))}const y1=S1=>o1(S1,i1),w1=S1=>o1(S1,i1);return n1.$$set=S1=>{"onChange"in S1&&t1(1,o1=S1.onChange),"field"in S1&&t1(2,i1=S1.field),"schema"in S1&&t1(3,a1=S1.schema),"value"in S1&&t1(0,s1=S1.value),"bindings"in S1&&t1(6,l1=S1.bindings),"isTestModal"in S1&&t1(4,c1=S1.isTestModal)},n1.$$.update=()=>{n1.$$.dirty&64&&t1(5,r1=l1.map(S1=>{let O1=Object.assign({},S1);return O1.icon="ShareAndroid",O1}))},[s1,o1,i1,a1,c1,r1,l1,u1,f1,p1,d1,m1,_1,h1,g1,$1,y1,w1]}class RowSelectorTypes extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$2R,create_fragment$2O,safe_not_equal,{onChange:1,field:2,schema:3,value:0,bindings:6,isTestModal:4})}}const RowSelector_svelte_svelte_type_style_lang="";function get_each_context$w(n1,e1,t1){const r1=n1.slice();return r1[19]=e1[t1][0],r1[20]=e1[t1][1],r1}function create_if_block$1s(n1){let e1,t1,r1=n1[4],o1=[];for(let a1=0;a1<r1.length;a1+=1)o1[a1]=create_each_block$w(get_each_context$w(n1,r1,a1));const i1=a1=>transition_out(o1[a1],1,1,()=>{o1[a1]=null});return{c(){e1=element("div");for(let a1=0;a1<o1.length;a1+=1)o1[a1].c();attr(e1,"class","schema-fields svelte-wmc004")},m(a1,s1){insert$1(a1,e1,s1);for(let l1=0;l1<o1.length;l1+=1)o1[l1].m(e1,null);t1=!0},p(a1,s1){if(s1&3551){r1=a1[4];let l1;for(l1=0;l1<r1.length;l1+=1){const c1=get_each_context$w(a1,r1,l1);o1[l1]?(o1[l1].p(c1,s1),transition_in(o1[l1],1)):(o1[l1]=create_each_block$w(c1),o1[l1].c(),transition_in(o1[l1],1),o1[l1].m(e1,null))}for(group_outros(),l1=r1.length;l1<o1.length;l1+=1)i1(l1);check_outros()}},i(a1){if(!t1){for(let s1=0;s1<r1.length;s1+=1)transition_in(o1[s1]);t1=!0}},o(a1){o1=o1.filter(Boolean);for(let s1=0;s1<o1.length;s1+=1)transition_out(o1[s1]);t1=!1},d(a1){a1&&detach(e1),destroy_each(o1,a1)}}}function create_if_block_1$N(n1){let e1,t1,r1=n1[20].type!=="attachment"&&create_if_block_2$w(n1);return{c(){r1&&r1.c(),e1=empty$1()},m(o1,i1){r1&&r1.m(o1,i1),insert$1(o1,e1,i1),t1=!0},p(o1,i1){o1[20].type!=="attachment"?r1?(r1.p(o1,i1),i1&16&&transition_in(r1,1)):(r1=create_if_block_2$w(o1),r1.c(),transition_in(r1,1),r1.m(e1.parentNode,e1)):r1&&(group_outros(),transition_out(r1,1,1,()=>{r1=null}),check_outros())},i(o1){t1||(transition_in(r1),t1=!0)},o(o1){transition_out(r1),t1=!1},d(o1){r1&&r1.d(o1),o1&&detach(e1)}}}function create_if_block_2$w(n1){let e1,t1,r1,o1;const i1=[create_if_block_3$j,create_else_block$A],a1=[];function s1(l1,c1){return l1[6]?1:0}return e1=s1(n1),t1=a1[e1]=i1[e1](n1),{c(){t1.c(),r1=empty$1()},m(l1,c1){a1[e1].m(l1,c1),insert$1(l1,r1,c1),o1=!0},p(l1,c1){let u1=e1;e1=s1(l1),e1===u1?a1[e1].p(l1,c1):(group_outros(),transition_out(a1[u1],1,1,()=>{a1[u1]=null}),check_outros(),t1=a1[e1],t1?t1.p(l1,c1):(t1=a1[e1]=i1[e1](l1),t1.c()),transition_in(t1,1),t1.m(r1.parentNode,r1))},i(l1){o1||(transition_in(t1),o1=!0)},o(l1){transition_out(t1),o1=!1},d(l1){a1[e1].d(l1),l1&&detach(r1)}}}function create_else_block$A(n1){let e1,t1,r1,o1,i1;function a1(...u1){return n1[15](n1[19],n1[20],...u1)}var s1=n1[2]?ModalBindableInput:DrawerBindableInput;function l1(u1){return{props:{placeholder:u1[8][u1[20].type],panel:ServerBindingPanel,value:Array.isArray(u1[0][u1[19]])?u1[0][u1[19]].join(","):u1[0][u1[19]],label:u1[19],type:"string",bindings:u1[7],fillWidth:!0,allowJS:!0,updateOnChange:!1}}}s1&&(t1=construct_svelte_component(s1,l1(n1)),t1.$on("change",a1));let c1=n1[3]&&n1[20].type==="link"&&create_if_block_4$c(n1);return{c(){e1=element("div"),t1&&create_component(t1.$$.fragment),r1=space$1(),c1&&c1.c(),o1=space$1()},m(u1,f1){insert$1(u1,e1,f1),t1&&mount_component(t1,e1,null),append$1(e1,r1),c1&&c1.m(e1,null),append$1(e1,o1),i1=!0},p(u1,f1){n1=u1;const p1={};if(f1&16&&(p1.placeholder=n1[8][n1[20].type]),f1&17&&(p1.value=Array.isArray(n1[0][n1[19]])?n1[0][n1[19]].join(","):n1[0][n1[19]]),f1&16&&(p1.label=n1[19]),f1&128&&(p1.bindings=n1[7]),s1!==(s1=n1[2]?ModalBindableInput:DrawerBindableInput)){if(t1){group_outros();const d1=t1;transition_out(d1.$$.fragment,1,0,()=>{destroy_component(d1,1)}),check_outros()}s1?(t1=construct_svelte_component(s1,l1(n1)),t1.$on("change",a1),create_component(t1.$$.fragment),transition_in(t1.$$.fragment,1),mount_component(t1,e1,r1)):t1=null}else s1&&t1.$set(p1);n1[3]&&n1[20].type==="link"?c1?(c1.p(n1,f1),f1&24&&transition_in(c1,1)):(c1=create_if_block_4$c(n1),c1.c(),transition_in(c1,1),c1.m(e1,o1)):c1&&(group_outros(),transition_out(c1,1,1,()=>{c1=null}),check_outros())},i(u1){i1||(t1&&transition_in(t1.$$.fragment,u1),transition_in(c1),i1=!0)},o(u1){t1&&transition_out(t1.$$.fragment,u1),transition_out(c1),i1=!1},d(u1){u1&&detach(e1),t1&&destroy_component(t1),c1&&c1.d()}}}function create_if_block_3$j(n1){let e1,t1;return e1=new RowSelectorTypes({props:{isTestModal:n1[2],field:n1[19],schema:n1[20],bindings:n1[7],value:n1[0],onChange:n1[10]}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&4&&(i1.isTestModal=r1[2]),o1&16&&(i1.field=r1[19]),o1&16&&(i1.schema=r1[20]),o1&128&&(i1.bindings=r1[7]),o1&1&&(i1.value=r1[0]),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_if_block_4$c(n1){var i1,a1;let e1,t1,r1;function o1(...s1){return n1[16](n1[19],...s1)}return t1=new Checkbox_1({props:{value:(a1=(i1=n1[1].fields)==null?void 0:i1[n1[19]])==null?void 0:a1.clearRelationships,text:"Clear relationships if empty?",size:"S"}}),t1.$on("change",o1),{c(){e1=element("div"),create_component(t1.$$.fragment),attr(e1,"class","checkbox-field svelte-wmc004")},m(s1,l1){insert$1(s1,e1,l1),mount_component(t1,e1,null),r1=!0},p(s1,l1){var u1,f1;n1=s1;const c1={};l1&18&&(c1.value=(f1=(u1=n1[1].fields)==null?void 0:u1[n1[19]])==null?void 0:f1.clearRelationships),t1.$set(c1)},i(s1){r1||(transition_in(t1.$$.fragment,s1),r1=!0)},o(s1){transition_out(t1.$$.fragment,s1),r1=!1},d(s1){s1&&detach(e1),destroy_component(t1)}}}function create_each_block$w(n1){let e1,t1,r1=!n1[20].autocolumn&&create_if_block_1$N(n1);return{c(){r1&&r1.c(),e1=empty$1()},m(o1,i1){r1&&r1.m(o1,i1),insert$1(o1,e1,i1),t1=!0},p(o1,i1){o1[20].autocolumn?r1&&(group_outros(),transition_out(r1,1,1,()=>{r1=null}),check_outros()):r1?(r1.p(o1,i1),i1&16&&transition_in(r1,1)):(r1=create_if_block_1$N(o1),r1.c(),transition_in(r1,1),r1.m(e1.parentNode,e1))},i(o1){t1||(transition_in(r1),t1=!0)},o(o1){transition_out(r1),t1=!1},d(o1){r1&&r1.d(o1),o1&&detach(e1)}}}function create_fragment$2N(n1){let e1,t1,r1,o1;e1=new Select_1$1({props:{value:n1[0].tableId,options:n1[5].list,getOptionLabel:func$a,getOptionValue:func_1$7}}),e1.$on("change",n1[9]);let i1=n1[4].length&&create_if_block$1s(n1);return{c(){create_component(e1.$$.fragment),t1=space$1(),i1&&i1.c(),r1=empty$1()},m(a1,s1){mount_component(e1,a1,s1),insert$1(a1,t1,s1),i1&&i1.m(a1,s1),insert$1(a1,r1,s1),o1=!0},p(a1,[s1]){const l1={};s1&1&&(l1.value=a1[0].tableId),s1&32&&(l1.options=a1[5].list),e1.$set(l1),a1[4].length?i1?(i1.p(a1,s1),s1&16&&transition_in(i1,1)):(i1=create_if_block$1s(a1),i1.c(),transition_in(i1,1),i1.m(r1.parentNode,r1)):i1&&(group_outros(),transition_out(i1,1,1,()=>{i1=null}),check_outros())},i(a1){o1||(transition_in(e1.$$.fragment,a1),transition_in(i1),o1=!0)},o(a1){transition_out(e1.$$.fragment,a1),transition_out(i1),o1=!1},d(a1){destroy_component(e1,a1),a1&&detach(t1),i1&&i1.d(a1),a1&&detach(r1)}}}const func$a=n1=>n1.name,func_1$7=n1=>n1._id;function instance$2Q(n1,e1,t1){let r1,o1,i1;component_subscribe(n1,tables,O1=>t1(5,i1=O1));const a1=createEventDispatcher();let{value:s1}=e1,{meta:l1}=e1,{bindings:c1}=e1,{block:u1}=e1,{isTestModal:f1}=e1,{isUpdateRow:p1}=e1,d1,m1,_1={number:10,boolean:"true",datetime:"2022-02-16T12:00:00.000Z ",options:"1",array:"1 2 3 4",link:"ro_ta_123_456",longform:"long form text"};const h1=O1=>{t1(0,s1.tableId=O1.detail,s1),a1("change",s1)},g1=(O1,C1)=>new RegExp(/{{([^{].*?)}}/g).test(O1)?O1:C1==="boolean"?typeof O1=="boolean"?O1:O1==="true":C1==="number"?typeof O1=="number"?O1:Number(O1):C1==="options"?O1:C1==="array"?Array.isArray(O1)?O1:O1.split(",").map(z1=>z1.trim()):C1==="link"?Array.isArray(O1)?O1:O1.split(",").map(z1=>z1.trim()):C1==="json"?O1.value:O1,$1=(O1,C1,M1)=>{let z1={...s1,[C1]:g1(O1.detail,M1)};a1("change",z1)},y1=(O1,C1)=>{let M1={};M1[C1]={clearRelationships:O1.detail},a1("change",{key:"meta",fields:M1})},w1=(O1,C1,M1)=>$1(M1,O1,C1.type),S1=(O1,C1)=>y1(C1,O1);return n1.$$set=O1=>{"value"in O1&&t1(0,s1=O1.value),"meta"in O1&&t1(1,l1=O1.meta),"bindings"in O1&&t1(12,c1=O1.bindings),"block"in O1&&t1(13,u1=O1.block),"isTestModal"in O1&&t1(2,f1=O1.isTestModal),"isUpdateRow"in O1&&t1(3,p1=O1.isUpdateRow)},n1.$$.update=()=>{var O1;n1.$$.dirty&4096&&t1(7,r1=c1.map(C1=>{let M1=Object.assign({},C1);return M1.icon="ShareAndroid",M1})),n1.$$.dirty&8192&&t1(6,o1=u1.rowControl),n1.$$.dirty&16433&&(t1(14,d1=i1.list.find(C1=>C1._id===(s1==null?void 0:s1.tableId))),t1(4,m1=Object.entries((O1=d1==null?void 0:d1.schema)!=null?O1:{})),m1.map(([,C1])=>{!C1.autocolumn&&!s1[C1.name]&&t1(0,s1[C1.name]="",s1)})),n1.$$.dirty&1&&(s1==null?void 0:s1.tableId)==null&&t1(0,s1={tableId:""})},[s1,l1,f1,p1,m1,i1,o1,r1,_1,h1,$1,y1,c1,u1,d1,w1,S1]}class RowSelector extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$2Q,create_fragment$2N,safe_not_equal,{value:0,meta:1,bindings:12,block:13,isTestModal:2,isUpdateRow:3})}}const FieldSelector_svelte_svelte_type_style_lang="";function get_each_context$v(n1,e1,t1){const r1=n1.slice();return r1[9]=e1[t1][0],r1[10]=e1[t1][1],r1}function create_if_block$1r(n1){let e1,t1,r1=n1[3],o1=[];for(let a1=0;a1<r1.length;a1+=1)o1[a1]=create_each_block$v(get_each_context$v(n1,r1,a1));const i1=a1=>transition_out(o1[a1],1,1,()=>{o1[a1]=null});return{c(){e1=element("div");for(let a1=0;a1<o1.length;a1+=1)o1[a1].c();attr(e1,"class","schema-fields svelte-qnw5bo")},m(a1,s1){insert$1(a1,e1,s1);for(let l1=0;l1<o1.length;l1+=1)o1[l1].m(e1,null);t1=!0},p(a1,s1){if(s1&31){r1=a1[3];let l1;for(l1=0;l1<r1.length;l1+=1){const c1=get_each_context$v(a1,r1,l1);o1[l1]?(o1[l1].p(c1,s1),transition_in(o1[l1],1)):(o1[l1]=create_each_block$v(c1),o1[l1].c(),transition_in(o1[l1],1),o1[l1].m(e1,null))}for(group_outros(),l1=r1.length;l1<o1.length;l1+=1)i1(l1);check_outros()}},i(a1){if(!t1){for(let s1=0;s1<r1.length;s1+=1)transition_in(o1[s1]);t1=!0}},o(a1){o1=o1.filter(Boolean);for(let s1=0;s1<o1.length;s1+=1)transition_out(o1[s1]);t1=!1},d(a1){a1&&detach(e1),destroy_each(o1,a1)}}}function create_each_block$v(n1){let e1,t1;return e1=new RowSelectorTypes({props:{isTestModal:n1[2],field:n1[9],schema:n1[10],bindings:n1[1],value:n1[0],onChange:n1[4]}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&4&&(i1.isTestModal=r1[2]),o1&8&&(i1.field=r1[9]),o1&8&&(i1.schema=r1[10]),o1&2&&(i1.bindings=r1[1]),o1&1&&(i1.value=r1[0]),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_fragment$2M(n1){let e1,t1,r1=n1[3].length&&n1[2]&&create_if_block$1r(n1);return{c(){r1&&r1.c(),e1=empty$1()},m(o1,i1){r1&&r1.m(o1,i1),insert$1(o1,e1,i1),t1=!0},p(o1,[i1]){o1[3].length&&o1[2]?r1?(r1.p(o1,i1),i1&12&&transition_in(r1,1)):(r1=create_if_block$1r(o1),r1.c(),transition_in(r1,1),r1.m(e1.parentNode,e1)):r1&&(group_outros(),transition_out(r1,1,1,()=>{r1=null}),check_outros())},i(o1){t1||(transition_in(r1),t1=!0)},o(o1){transition_out(r1),t1=!1},d(o1){r1&&r1.d(o1),o1&&detach(e1)}}}function instance$2P(n1,e1,t1){const r1=createEventDispatcher();let{value:o1}=e1,{bindings:i1}=e1,{block:a1}=e1,{isTestModal:s1}=e1,l1;const c1={BOOLEAN:null,NUMBER:null,DATETIME:null,STRING:"",OPTIONS:[],ARRAY:[]},u1=(p1,d1)=>new RegExp(/{{([^{].*?)}}/g).test(p1)?p1:d1==="boolean"?typeof p1=="boolean"?p1:p1==="true":d1==="number"?typeof p1=="number"?p1:Number(p1):d1==="options"?[p1]:d1==="array"?Array.isArray(p1)?p1:p1.split(",").map(_1=>_1.trim()):d1==="link"?Array.isArray(p1)?p1:[p1]:p1,f1=(p1,d1,m1)=>{t1(0,o1[d1]=u1(p1.detail,m1),o1),r1("change",o1)};return n1.$$set=p1=>{"value"in p1&&t1(0,o1=p1.value),"bindings"in p1&&t1(1,i1=p1.bindings),"block"in p1&&t1(5,a1=p1.block),"isTestModal"in p1&&t1(2,s1=p1.isTestModal)},n1.$$.update=()=>{var p1,d1;if(n1.$$.dirty&33){let m1={};for(const[_1,h1]of Object.entries((d1=(p1=a1==null?void 0:a1.inputs)==null?void 0:p1.fields)!=null?d1:{}))m1={...m1,[_1]:{type:h1,name:_1,fieldName:_1,constraints:{type:h1}}},o1[_1]===h1&&t1(0,o1[_1]=c1[h1.toUpperCase()],o1);t1(3,l1=Object.entries(m1))}},[o1,i1,s1,l1,f1,a1]}class FieldSelector extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$2P,create_fragment$2M,safe_not_equal,{value:0,bindings:1,block:5,isTestModal:2})}}const SchemaSetup_svelte_svelte_type_style_lang="";function get_each_context$u(n1,e1,t1){const r1=n1.slice();return r1[9]=e1[t1],r1}function create_each_block$u(n1){let e1,t1,r1,o1,i1,a1,s1,l1,c1;t1=new Input$5({props:{value:n1[9].name,secondary:!0,placeholder:"Enter field name",updateOnChange:!1}}),t1.$on("change",function(){is_function(n1[6](n1[9].name))&&n1[6](n1[9].name).apply(this,arguments)});function u1(...p1){return n1[7](n1[9],...p1)}o1=new Select_1$1({props:{value:n1[9].type,options:n1[3]}}),o1.$on("change",u1);function f1(){return n1[8](n1[9])}return{c(){e1=element("div"),create_component(t1.$$.fragment),r1=space$1(),create_component(o1.$$.fragment),i1=space$1(),a1=element("i"),attr(a1,"class","remove-field ri-delete-bin-line"),attr(e1,"class","field svelte-12q6c1o")},m(p1,d1){insert$1(p1,e1,d1),mount_component(t1,e1,null),append$1(e1,r1),mount_component(o1,e1,null),append$1(e1,i1),append$1(e1,a1),s1=!0,l1||(c1=listen(a1,"click",f1),l1=!0)},p(p1,d1){n1=p1;const m1={};d1&2&&(m1.value=n1[9].name),t1.$set(m1);const _1={};d1&2&&(_1.value=n1[9].type),o1.$set(_1)},i(p1){s1||(transition_in(t1.$$.fragment,p1),transition_in(o1.$$.fragment,p1),s1=!0)},o(p1){transition_out(t1.$$.fragment,p1),transition_out(o1.$$.fragment,p1),s1=!1},d(p1){p1&&detach(e1),destroy_component(t1),destroy_component(o1),l1=!1,c1()}}}function create_default_slot$1Y(n1){let e1;return{c(){e1=text("Add field")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_fragment$2L(n1){let e1,t1,r1,o1,i1,a1,s1=n1[1],l1=[];for(let u1=0;u1<s1.length;u1+=1)l1[u1]=create_each_block$u(get_each_context$u(n1,s1,u1));const c1=u1=>transition_out(l1[u1],1,1,()=>{l1[u1]=null});return i1=new Button({props:{quiet:!0,secondary:!0,icon:"Add",$$slots:{default:[create_default_slot$1Y]},$$scope:{ctx:n1}}}),i1.$on("click",n1[4]),{c(){e1=element("div"),t1=element("div"),r1=space$1();for(let u1=0;u1<l1.length;u1+=1)l1[u1].c();o1=space$1(),create_component(i1.$$.fragment),attr(t1,"class","spacer svelte-12q6c1o"),attr(e1,"class","root svelte-12q6c1o")},m(u1,f1){insert$1(u1,e1,f1),append$1(e1,t1),append$1(e1,r1);for(let p1=0;p1<l1.length;p1+=1)l1[p1].m(e1,null);append$1(e1,o1),mount_component(i1,e1,null),a1=!0},p(u1,[f1]){if(f1&111){s1=u1[1];let d1;for(d1=0;d1<s1.length;d1+=1){const m1=get_each_context$u(u1,s1,d1);l1[d1]?(l1[d1].p(m1,f1),transition_in(l1[d1],1)):(l1[d1]=create_each_block$u(m1),l1[d1].c(),transition_in(l1[d1],1),l1[d1].m(e1,o1))}for(group_outros(),d1=s1.length;d1<l1.length;d1+=1)c1(d1);check_outros()}const p1={};f1&4096&&(p1.$$scope={dirty:f1,ctx:u1}),i1.$set(p1)},i(u1){if(!a1){for(let f1=0;f1<s1.length;f1+=1)transition_in(l1[f1]);transition_in(i1.$$.fragment,u1),a1=!0}},o(u1){l1=l1.filter(Boolean);for(let f1=0;f1<l1.length;f1+=1)transition_out(l1[f1]);transition_out(i1.$$.fragment,u1),a1=!1},d(u1){u1&&detach(e1),destroy_each(l1,u1),destroy_component(i1)}}}function instance$2O(n1,e1,t1){let r1;const o1=createEventDispatcher();let{value:i1={}}=e1;const a1=[{label:"Text",value:"string"},{label:"Number",value:"number"},{label:"Boolean",value:"boolean"},{label:"DateTime",value:"datetime"},{label:"Array",value:"array"}];function s1(){const p1={...i1};p1[""]="string",o1("change",p1)}function l1(p1){const d1={...i1};delete d1[p1],o1("change",d1)}const c1=p1=>d1=>{let m1=[...r1];const _1=d1.detail;_1?m1.find(h1=>h1.name===p1).name=_1:m1=m1.filter(h1=>h1.name!==p1),t1(0,i1=m1.reduce((h1,g1)=>(h1[g1.name.trim()]=g1.type,h1),{})),o1("change",i1)},u1=(p1,d1)=>{t1(0,i1[p1.name]=d1.detail,i1),o1("change",i1)},f1=p1=>l1(p1.name);return n1.$$set=p1=>{"value"in p1&&t1(0,i1=p1.value)},n1.$$.update=()=>{n1.$$.dirty&1&&t1(1,r1=i1?Object.entries(i1).map(([p1,d1])=>({name:p1,type:d1})):[])},[i1,r1,o1,a1,s1,l1,c1,u1,f1]}class SchemaSetup extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$2O,create_fragment$2L,safe_not_equal,{value:0})}}function create_fragment$2K(n1){let e1,t1;return e1=new CopyInput({props:{value:fullWebhookURL(n1[0])}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,[o1]){const i1={};o1&1&&(i1.value=fullWebhookURL(r1[0])),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function fullWebhookURL(n1){return n1?`${window.location.origin}/${n1}`:""}function instance$2N(n1,e1,t1){let{value:r1}=e1;return n1.$$set=o1=>{"value"in o1&&t1(0,r1=o1.value)},[r1]}class WebhookDisplay extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$2N,create_fragment$2K,safe_not_equal,{value:0})}}const CreateWebhookModal_svelte_svelte_type_style_lang="";function create_if_block$1q(n1){let e1,t1,r1,o1,i1=n1[2]>1?"s":"",a1,s1;return{c(){e1=element("p"),t1=text(`Request received! We found
1740
1740
  `),r1=text(n1[2]),o1=text(`
1741
1741
  bindable value`),a1=text(i1),s1=text("."),attr(e1,"class","finished-text svelte-12gur68")},m(l1,c1){insert$1(l1,e1,c1),append$1(e1,t1),append$1(e1,r1),append$1(e1,o1),append$1(e1,a1),append$1(e1,s1)},p(l1,c1){c1&4&&set_data(r1,l1[2]),c1&4&&i1!==(i1=l1[2]>1?"s":"")&&set_data(a1,i1)},d(l1){l1&&detach(e1)}}}function create_default_slot$1X(n1){let e1,t1,r1,o1,i1,a1;r1=new WebhookDisplay({props:{value:n1[1]}});let s1=n1[0]&&create_if_block$1q(n1);return{c(){e1=element("p"),e1.innerHTML=`Webhooks are for receiving data. To make them easier please use the URL
1742
1742
  shown below and send a
@@ -9,7 +9,7 @@
9
9
  <link href="/builder/fonts/source-sans-pro/600.css" rel="stylesheet" />
10
10
  <link href="/builder/fonts/source-sans-pro/700.css" rel="stylesheet" />
11
11
  <link href="/builder/fonts/remixicon.css" rel="stylesheet" />
12
- <script type="module" crossorigin src="/builder/assets/index.813a6b52.js"></script>
12
+ <script type="module" crossorigin src="/builder/assets/index.a6d08aaa.js"></script>
13
13
  <link rel="stylesheet" href="/builder/assets/index.22c4876c.css">
14
14
  </head>
15
15
 
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@budibase/server",
3
3
  "email": "hi@budibase.com",
4
- "version": "2.10.12-alpha.5",
4
+ "version": "2.10.12-alpha.7",
5
5
  "description": "Budibase Web Server",
6
6
  "main": "src/index.ts",
7
7
  "repository": {
@@ -46,12 +46,12 @@
46
46
  "license": "GPL-3.0",
47
47
  "dependencies": {
48
48
  "@apidevtools/swagger-parser": "10.0.3",
49
- "@budibase/backend-core": "2.10.12-alpha.5",
50
- "@budibase/client": "2.10.12-alpha.5",
51
- "@budibase/pro": "2.10.12-alpha.5",
52
- "@budibase/shared-core": "2.10.12-alpha.5",
53
- "@budibase/string-templates": "2.10.12-alpha.5",
54
- "@budibase/types": "2.10.12-alpha.5",
49
+ "@budibase/backend-core": "2.10.12-alpha.7",
50
+ "@budibase/client": "2.10.12-alpha.7",
51
+ "@budibase/pro": "2.10.12-alpha.7",
52
+ "@budibase/shared-core": "2.10.12-alpha.7",
53
+ "@budibase/string-templates": "2.10.12-alpha.7",
54
+ "@budibase/types": "2.10.12-alpha.7",
55
55
  "@bull-board/api": "3.7.0",
56
56
  "@bull-board/koa": "3.9.4",
57
57
  "@elastic/elasticsearch": "7.10.0",
@@ -195,5 +195,5 @@
195
195
  }
196
196
  }
197
197
  },
198
- "gitHead": "1fe91968d8d2d1d3ee60403d13b05ea7e25de7cd"
198
+ "gitHead": "e2871f7aa235a78a2ddfe0f812230b29f0d7eb2c"
199
199
  }