@kern0x1b/penstock-cli 26.10.4 → 26.10.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/chunk-account-CMvFjqGw.js +1 -0
- package/dist/chunk-agentFailure-BiU8hJ-k.js +1 -0
- package/dist/chunk-agentLaunch-CRWlfuXv.js +1 -0
- package/dist/chunk-agentServe-M3jzEiHj.js +10 -0
- package/dist/chunk-analyze-CCZJQpbU.js +1 -0
- package/dist/chunk-analyze-D_2dPr5n.js +1 -0
- package/dist/chunk-apply-Dmo_XdOA.js +1 -0
- package/dist/chunk-atomicWrite-C6J1gDtO.js +1 -0
- package/dist/chunk-bot-51CfGKVL.js +11 -0
- package/dist/chunk-cacheDirectory-7sa0970e.js +1 -0
- package/dist/chunk-codeFactSet-BqEOkvBS.js +1 -0
- package/dist/chunk-codeIndex-olvCG85q.js +1 -0
- package/dist/chunk-codeLinks-DW721PAt.js +1 -0
- package/dist/chunk-codeLinks-S_BEJVPa.js +1 -0
- package/dist/chunk-command-B-7DfFou.js +5 -0
- package/dist/chunk-command-CyUljAAc.js +1 -0
- package/dist/chunk-command-D7WS1aRl.js +1 -0
- package/dist/chunk-commands-CMEkVxle.js +1 -0
- package/dist/chunk-compose-DCAQQndd.js +4 -0
- package/dist/chunk-connectors-DG6IqkGl.js +1 -0
- package/dist/chunk-connectors-UpMjbdpU.js +2 -0
- package/dist/chunk-context-B-5CZFAT.js +1 -0
- package/dist/chunk-convert-B7srqZpZ.js +1 -0
- package/dist/chunk-deploy-CGLF2dB1.js +1 -0
- package/dist/chunk-deploy-Clj9f2y-.js +2 -0
- package/dist/chunk-diagram-CIy-F5iz.js +1 -0
- package/dist/chunk-diagram-DYoeuAJx.js +1 -0
- package/dist/chunk-diagramDefects-DlVCfZci.js +1 -0
- package/dist/chunk-diagrams-wnFsPOKv.js +1 -0
- package/dist/chunk-diff-BJ2sJwcs.js +1 -0
- package/dist/chunk-diff-BelMuQhT.js +1 -0
- package/dist/chunk-diffModels-DYtf3au1.js +3 -0
- package/dist/chunk-dispatch-CescmVW-.js +6 -0
- package/dist/chunk-docs-CY6ICsip.js +1 -0
- package/dist/chunk-docs-DzOiA9zg.js +30 -0
- package/dist/chunk-doctor-GDNwRCg3.js +1 -0
- package/dist/chunk-drawing-C2qewK8L.js +8 -0
- package/dist/chunk-editPreview-DGu4slO6.js +1 -0
- package/dist/chunk-engine-CxgdJ2wO.js +1 -0
- package/dist/chunk-export-CDFdw7Eh.js +1 -0
- package/dist/chunk-export-DP1Hab-_.js +20 -0
- package/dist/chunk-facts-CfA8qH5b.js +1 -0
- package/dist/chunk-failure-BK7fu4Yo.js +1 -0
- package/dist/chunk-features-CiC2Yoej.js +1 -0
- package/dist/chunk-features-Dq1Gvqp3.js +1 -0
- package/dist/chunk-folders-BO8qUHUV.js +1 -0
- package/dist/chunk-folders-yTMgOqLo.js +1 -0
- package/dist/chunk-formChecks-BOiD8Idv.js +1 -0
- package/dist/chunk-git-BOKyPQj7.js +3 -0
- package/dist/chunk-help-DKtpVSxI.js +85 -0
- package/dist/chunk-importCommand-_CnKIoNk.js +1 -0
- package/dist/chunk-init-3zEab7KI.js +227 -0
- package/dist/chunk-license-Cvnp1Aee.js +1 -0
- package/dist/chunk-license-DU4P8P8A.js +1 -0
- package/dist/chunk-lint-Df2davEY.js +1 -0
- package/dist/chunk-load-CRmIvn7e.js +5 -0
- package/dist/chunk-main-BY7JEoe1.js +1 -0
- package/dist/chunk-mcp-DKX2xT8d.js +77 -0
- package/dist/chunk-mcpLaunch-DpDE0hW-.js +592 -0
- package/dist/chunk-migrate-BaNzQNyD.js +2 -0
- package/dist/chunk-migrate-DcxIkacG.js +1 -0
- package/dist/chunk-moddle-AjPH0QEc.js +1 -0
- package/dist/chunk-moddle-Dlk0NR-u.js +1 -0
- package/dist/chunk-own-CX-3lIbf.js +1 -0
- package/dist/chunk-penstockCli-B0_wWDGy.js +1 -0
- package/dist/chunk-placeholderLayout-B18ekWmh.js +1 -0
- package/dist/chunk-plural-Di3FH8HP.js +1 -0
- package/dist/chunk-pr-DXs1coaS.js +1 -0
- package/dist/chunk-preferencesFile-F6bAlNrk.js +1 -0
- package/dist/chunk-project-BS-4dy5o.js +1 -0
- package/dist/chunk-report-CtkTRSGT.js +1 -0
- package/dist/chunk-review-WIpFGKkc.js +1 -0
- package/dist/chunk-rules-CoJAmvwu.js +1 -0
- package/dist/chunk-security-BKVRwb6V.js +18 -0
- package/dist/chunk-share-B3W30sbt.js +239 -0
- package/dist/chunk-src-CxTpK8wk.js +890 -0
- package/dist/chunk-stages-Gm5BZUp5.js +3 -0
- package/dist/chunk-status-X9Ny-Nu8.js +1 -0
- package/dist/chunk-systemError-F6bMRwXU.js +1 -0
- package/dist/chunk-systemError-cGwrYkmo.js +1 -0
- package/dist/chunk-table-B2WTbpMl.js +1 -0
- package/dist/chunk-taskTest-B3gfOti1.js +1 -0
- package/dist/chunk-taskTest-D-WDCLD5.js +2 -0
- package/dist/chunk-templates-BdsiNRJ3.js +1 -0
- package/dist/chunk-testCases-ba8k3BJD.js +4 -0
- package/dist/chunk-testCases-gXzkCxF5.js +1 -0
- package/dist/chunk-tests-BLBZ1eh2.js +1 -0
- package/dist/chunk-tests-DxL0JMtB.js +23 -0
- package/dist/chunk-translator-BAjzyPKE.js +22 -0
- package/dist/chunk-trust-Ci9pDa27.js +1 -0
- package/dist/chunk-trust-DlJIoKs8.js +1 -0
- package/dist/chunk-version-CdS8_QQd.js +1 -0
- package/dist/chunk-workerVariables-BnLSud8o.js +1 -0
- package/dist/chunk-wrapper-DqqRt0FZ.js +3 -0
- package/dist/chunk-wrapper-E_u1_-Db.js +1 -0
- package/dist/locales/de.json +9277 -0
- package/dist/locales/es.json +9277 -0
- package/dist/locales/fr.json +9277 -0
- package/dist/locales/ja.json +9124 -0
- package/dist/locales/ko.json +9124 -0
- package/dist/locales/pt-BR.json +9277 -0
- package/dist/locales/ru.json +9583 -0
- package/dist/locales/zh.json +9124 -0
- package/dist/penstock.js +1 -2363
- package/dist/web/assets/{AgentSettings-BvzT4Itb.js → AgentSettings-4B4hSxBk.js} +1 -1
- package/dist/web/assets/{AgentsDialog-BqY3wKcV.js → AgentsDialog-C32ALLtE.js} +1 -1
- package/dist/web/assets/{BpmnCanvas-BTdM1l9l.js → BpmnCanvas-CZOJiq6t.js} +3 -3
- package/dist/web/assets/{BpmnDocument-uifU3NGG.js → BpmnDocument-BNLfXWLG.js} +4 -4
- package/dist/web/assets/{ConflictDialog-C4A9-Psr.js → ConflictDialog-mUJYs1zz.js} +1 -1
- package/dist/web/assets/{DiffDocument-BMTSevd7.js → DiffDocument-C7csJl3x.js} +1 -1
- package/dist/web/assets/{DmnDocument-B8wWuhfX.js → DmnDocument-B2dyX49k.js} +1 -1
- package/dist/web/assets/{FormDocument-bQ5VRsrh.js → FormDocument-ChSqEPE5.js} +1 -1
- package/dist/web/assets/{FormStepView-DbMCFSO1.js → FormStepView-j4C0Qovo.js} +1 -1
- package/dist/web/assets/GraphAwareLayoutService-DD2iXfXi.js +21 -0
- package/dist/web/assets/NewFileDialog-eeIqqmXc.js +47 -0
- package/dist/web/assets/{QuickOpen-mzlfRqvG.js → QuickOpen-C0I0FRt2.js} +1 -1
- package/dist/web/assets/{ScriptPane-C9q5wLfO.js → ScriptPane-BAvcgLWX.js} +2 -2
- package/dist/web/assets/{ScriptRunDialog-Dm-_0H1Z.js → ScriptRunDialog-DLlMiJiK.js} +1 -1
- package/dist/web/assets/{SettingsDialog-Bhwwtyg7.js → SettingsDialog-C3ts5aiN.js} +1 -1
- package/dist/web/assets/{ShortcutsDialog-BXP0h7Tp.js → ShortcutsDialog-DVV504pS.js} +1 -1
- package/dist/web/assets/{SourceDocument-DgrNCprS.js → SourceDocument-DRgUPazk.js} +1 -1
- package/dist/web/assets/{TextDocument-D8N0uaQa.js → TextDocument-Bm0sPjft.js} +1 -1
- package/dist/web/assets/{UnreadableFileLayer-D2Rcxnt7.js → UnreadableFileLayer-DbW33CnE.js} +1 -1
- package/dist/web/assets/{UploadDialog-Dinga4TP.js → UploadDialog-BSl3zFNn.js} +1 -1
- package/dist/web/assets/{apply-CzXxiRWK.js → apply-B3FkgxjU.js} +1 -1
- package/dist/web/assets/{bpmnTheme-db4tYvop.js → bpmnTheme-C3HdVV1D.js} +1 -1
- package/dist/web/assets/bridgeInstance-BZBhe5hF.js +851 -0
- package/dist/web/assets/{commands-BAnBjEk3.js → commands-DHPxsavW.js} +1 -1
- package/dist/web/assets/de-BH_bnU4H.js +1 -0
- package/dist/web/assets/{dialog-KVjfqSrB.js → dialog-LcHsiQKJ.js} +1 -1
- package/dist/web/assets/{diff-Cw0ENHJR.js → diff-bpdDl0KE.js} +1 -1
- package/dist/web/assets/{documentBridge-D5SaBThP.js → documentBridge-4fZNBdp4.js} +2 -2
- package/dist/web/assets/{documents-Dkor36oS.js → documents-FOVGbYYF.js} +1 -1
- package/dist/web/assets/{duplicate-ud-StKuO.js → duplicate-CdCuOnUl.js} +1 -1
- package/dist/web/assets/{engines-BQRXHtW8.js → engines-C884tl-T.js} +1 -1
- package/dist/web/assets/es-D7v7zkxC.js +1 -0
- package/dist/web/assets/{formChecks-DFrCuO4I.js → formChecks-Bvuzw2sb.js} +1 -1
- package/dist/web/assets/fr-CuzAJTai.js +1 -0
- package/dist/web/assets/frontend-Y1MvD_Uo.js +1 -0
- package/dist/web/assets/httpHost-CnF86WJB.js +1 -0
- package/dist/web/assets/{index.es-dFUgH_-g.js → index.es-0rLw__5_.js} +1 -1
- package/dist/web/assets/{index.es-DR-czZl7.js → index.es-BP1Cc_0e.js} +1 -1
- package/dist/web/assets/{intelligence-BkxcJMU_.js → intelligence-E2EBYhHr.js} +1 -1
- package/dist/web/assets/ja-BgElyPpa.js +1 -0
- package/dist/web/assets/{jspdf.es.min-BMfOi0te.js → jspdf.es.min-BSRrqhq_.js} +3 -3
- package/dist/web/assets/ko-j1Oi9MKH.js +1 -0
- package/dist/web/assets/{lib-C3uYnGWx.js → lib-De3fPoUi.js} +1 -1
- package/dist/web/assets/{platform-zEAtGnYc.js → platform-CjEV0T5t.js} +1 -1
- package/dist/web/assets/{preferences-K6VRM9Ah.js → preferences-CmXdxfFo.js} +1 -1
- package/dist/web/assets/pt-BR-CRWG2th4.js +1 -0
- package/dist/web/assets/ru-KJyuYSUL.js +1 -0
- package/dist/web/assets/{run-fV7AmV4q.js → run-B9EUa035.js} +1 -1
- package/dist/web/assets/{samples-D-3Bquy_.js → samples-03zukOEM.js} +1 -1
- package/dist/web/assets/{testCaseRuns-C-0blM3d.js → testCaseRuns-BYhJPipg.js} +1 -1
- package/dist/web/assets/translator-OIpY8kTG.js +1 -0
- package/dist/web/assets/{ui-TBzvKaKQ.js → ui-BLMlfdD3.js} +1 -1
- package/dist/web/assets/{useTrace-BgpeAcQR.js → useTrace-Cr28sh4A.js} +1 -1
- package/dist/web/assets/{web-qJCedJJw.js → web-Q9VZNxQi.js} +5 -5
- package/dist/web/assets/zh-CukDLcVz.js +1 -0
- package/dist/web/index.html +19 -19
- package/package.json +1 -1
- package/dist/web/assets/GraphAwareLayoutService-CePcz6pL.js +0 -21
- package/dist/web/assets/NewFileDialog-DsoFURD9.js +0 -47
- package/dist/web/assets/bridgeInstance-BPwbITOf.js +0 -850
- package/dist/web/assets/de-Cd75cvcZ.js +0 -1
- package/dist/web/assets/es-D2PUEg_Z.js +0 -1
- package/dist/web/assets/fr-DkGYGarc.js +0 -1
- package/dist/web/assets/frontend-B05iyhCp.js +0 -1
- package/dist/web/assets/httpHost-DX-P_FDg.js +0 -1
- package/dist/web/assets/ja-De4NAvK-.js +0 -1
- package/dist/web/assets/ko-Ci27KQ5n.js +0 -1
- package/dist/web/assets/pt-BR-CNmIseZJ.js +0 -1
- package/dist/web/assets/ru-BtK7W4xW.js +0 -1
- package/dist/web/assets/translator-Dvvasoz-.js +0 -1
- package/dist/web/assets/zh-DxI_A5kC.js +0 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-B8BYMn-z.js";import{_ as t,c as r,d as i,f as a,g as o,h as s,i as c,m as l,n as u,o as d,r as f,s as p,t as h,u as y}from"./vendor-NJP34MHU.js";import{i as b}from"./translator-Dvvasoz-.js";import{F as x,H as S,t as C}from"./bridgeInstance-BPwbITOf.js";import{A as E,I as M,R as N,_ as I,b as z,d as B,g as X,h as ee,k as te,m as fe,n as xe,p as Te,r as Oe,t as je,u as Me,v as Pe,x as Fe,y as Le}from"./dist-CRJyslwo.js";import{f as Re,g as ze}from"./moddle-CGpeSs3G.js";import{t as Be}from"./dist-BqwyxNP3.js";import{t as Ve}from"./platform-zEAtGnYc.js";import{a as He,c as Ue,d as We,g as Ge,h as Ke,i as qe,l as Je,m as Xe,n as Ze,r as Qe,s as $e,t as et,u as tt,v as nt}from"./documentBridge-D5SaBThP.js";import{S as rt,g as it,k as at,v as ot,y as st}from"./bpmnTheme-db4tYvop.js";import{s as ct}from"./ui-TBzvKaKQ.js";import{a as lt,i as ut,r as dt}from"./lib-C3uYnGWx.js";import{$t as ft,Yt as pt,Zt as mt,rn as ht,tn as gt}from"./Viewer-CZiVl0t6.js";import{$ as _t,I as vt,lt as yt}from"./dist-CsBP6QjA.js";import{n as bt}from"./dist-DvFyMwGd.js";import{r as xt}from"./dist-sl8LIbwu.js";import{t as St}from"./array-move-Bc4mVEdq.js";import{Ct,E as wt,b as Tt,o as Et,w as Dt}from"./web-qJCedJJw.js";import{A as Ot,B as kt,C as At,D as jt,E as Mt,F as Nt,G as Pt,H as Ft,I as It,K as Lt,L as Rt,M as zt,N as Bt,O as Vt,P as Ht,R as Ut,S as Wt,T as Gt,U as Kt,V as qt,W as Jt,_ as Yt,a as Xt,b as Zt,c as Qt,d as $t,f as en,g as tn,h as nn,i as rn,j as an,k as on,l as sn,m as cn,n as ln,o as un,p as dn,q as fn,r as pn,s as mn,t as hn,u as gn,v as _n,w as vn,x as yn,y as bn,z as xn}from"./index.es-DR-czZl7.js";import{t as Sn}from"./formChecks-DFrCuO4I.js";import{n as Cn,r as wn,t as Tn}from"./UnreadableFileLayer-D2Rcxnt7.js";fe();var En=e(dt());function _e(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,`default`)?e.default:e}var Ne=function(e,t){return Array.prototype.slice.call(e,t)},Dn=typeof setImmediate==`function`?function(e){setImmediate(e)}:function(e){setTimeout(e,0)},Ie=function(e,t,r){e&&Dn(function(){e.apply(r||null,t||[])})},On=Ne,kn=Ie,Ye=function(e,t){var r=t||{},i={};return e===void 0&&(e={}),e.on=function(t,r){return i[t]?i[t].push(r):i[t]=[r],e},e.once=function(t,r){return r._once=!0,e.on(t,r),e},e.off=function(t,r){var a=arguments.length;if(a===1)delete i[t];else if(a===0)i={};else{var o=i[t];if(!o)return e;o.splice(o.indexOf(r),1)}return e},e.emit=function(){var t=On(arguments);return e.emitterSnapshot(t.shift()).apply(this,t)},e.emitterSnapshot=function(t){var a=(i[t]||[]).slice(0);return function(){var i=On(arguments),o=this||e;if(t===`error`&&r.throws!==!1&&!a.length)throw i.length===1?i[0]:i;return a.forEach(function(a){r.async?kn(a,i,o):a.apply(o,i),a._once&&e.off(t,a)}),e}},e},An=_e(Ye),jn={},Mn=`(?:^|\\s)`,Nn=`(?:\\s|$)`;function le(e){let t=jn[e];return t?t.lastIndex=0:jn[e]=t=new RegExp(Mn+e+Nn,`g`),t}function Y(e,t){let r=e.className;r.length?le(t).test(r)||(e.className+=` `+t):e.className=t}function L(e,t){e.className=e.className.replace(le(t),` `).trim()}var ke=(e,t)=>({containers:t,moves:()=>!0,accepts:()=>!0,invalid:()=>!1,isContainer:()=>!1,transformOffset:e=>e,copy:!1,copySortSource:!1,revertOnSpill:!1,removeOnSpill:!1,direction:`vertical`,ignoreInputTextSelection:!0,mirrorContainer:document.body,...e});function ne(e){if(e.touches!==void 0)return e.touches.length;if(e.which!==void 0&&e.which!==0)return e.which;if(e.buttons!==void 0)return e.buttons;let t=e.button;if(t!==void 0)return t&1?1:t&2?3:t&4?2:0}var Ae=e=>{let t=e.getBoundingClientRect();return{left:t.left+re(`scrollLeft`,`pageXOffset`),top:t.top+re(`scrollTop`,`pageYOffset`)}},re=(e,t)=>typeof global[t]<`u`?global[t]:document.documentElement.clientHeight?document.documentElement[e]:document.body[e],ie=(e={},t,r)=>{let i=e.className||``;e.className+=` gu-hide`;let a=document.elementFromPoint(t,r);return e.className=i,a},oe=e=>e.width||e.right-e.left,ce=e=>e.height||e.bottom-e.top,v=e=>e.parentNode===document?null:e.parentNode,ue=e=>[`INPUT`,`TEXTAREA`,`SELECT`].includes(e?.tagName)||se(e),se=e=>!e||e.contentEditable===`false`?!1:e.contentEditable===`true`||se(v(e)),T=e=>{let n=()=>{let t=e;do t=t.nextSibling;while(t&&t.nodeType!==1);return t};return e.nextElementSibling||n()};window.global||(window.global=window);var Pn=document,Fn=Pn.documentElement;function De(e=[],t={}){Array.isArray(e)||(t=e,e=[]);let r,i,a,o,s,c,l,u,d,f,p,h,y,b=ke(t,e),x=An({containers:b.containers,start:ve,end:G,cancel:q,remove:W,destroy:ae,canMove:ge,dragging:!1});return b.removeOnSpill&&x.on(`over`,he).on(`out`,be),j(),x;function R(e){return x.containers.indexOf(e)!==-1||b.isContainer(e)}function j(e){let t=e?`removeEventListener`:`addEventListener`;Fn[t](`pointerdown`,me,!0),Fn[t](`pointerup`,D,!0)}function k(e){Fn[e?`removeEventListener`:`addEventListener`](`pointermove`,pe,!0)}function H(e){Fn[e?`removeEventListener`:`addEventListener`](`click`,de,!0)}function ae(){j(!0),D({})}function de(e){y&&e.preventDefault()}function me(e){if(c=e.clientX,l=e.clientY,ne(e)!==1||e.metaKey||e.ctrlKey)return;let t=e.target,r=A(t);r&&(y=r,k(),e.type===`pointerdown`&&(ue(t)?t.focus():e.preventDefault()))}function pe(e){if(!y)return;if(ne(e)===0){D({});return}if(e.clientX!==void 0&&Math.abs(e.clientX-c)<=(b.slideFactorX||0)&&e.clientY!==void 0&&Math.abs(e.clientY-l)<=(b.slideFactorY||0))return;if(b.ignoreInputTextSelection){let{clientX:t=0,clientY:r=0}=e;if(ue(Pn.elementFromPoint(t,r)))return}let t=y;k(!0),H(),G(),K(t);let r=Ae(a),i=b.transformOffset(r,e,a),{pageX:u=0,pageY:d=0}=e;o=u-i.left,s=d-i.top,Y(f||a,`gu-transit`),ye(),$(e)}function A(e){if(x.dragging&&r||R(e))return;let t=e;for(;v(e)&&R(v(e))===!1;)if(b.invalid(e,t)||(e=v(e),!e))return;let i=v(e);if(i&&!b.invalid(e,t)&&b.moves(e,i,t,T(e)))return{item:e,source:i}}function ge(e){return!!A(e)}function ve(e){let t=A(e);t&&K(t)}function K(e){Ee(e.item,e.source)&&(f=e.item.cloneNode(!0),x.emit(`cloned`,f,e.item,`copy`)),i=e.source,a=e.item,u=d=T(e.item),x.dragging=!0,x.emit(`drag`,a,i)}function G(){if(!x.dragging)return;let e=f||a;V(e,v(e))}function U(){y=!1,k(!0),H(!0)}function D(e){if(U(),!x.dragging)return;let t=f||a,{clientX:o=0,clientY:s=0}=e,c=J(ie(r,o,s),o,s);c&&(f&&b.copySortSource||!f||c!==i)?V(t,c):b.removeOnSpill?W():q()}function V(e,t){let r=v(e);f&&b.copySortSource&&t===i&&r.removeChild(a),P(t)?x.emit(`cancel`,e,i,i):x.emit(`drop`,e,t,i,d),F()}function W(){if(!x.dragging)return;let e=f||a,t=v(e);t&&t.removeChild(e),x.emit(f?`cancel`:`remove`,e,t,i),F()}function q(e){if(!x.dragging)return;let t=arguments.length>0?e:b.revertOnSpill,r=f||a,o=v(r),s=P(o);s===!1&&t&&(f?o&&o.removeChild(f):i.insertBefore(r,u)),s||t?x.emit(`cancel`,r,i,i):x.emit(`drop`,r,o,i,d),F()}function F(){let e=f||a;U(),Se(),e&&L(e,`gu-transit`),p&&clearTimeout(p),x.dragging=!1,h&&x.emit(`out`,e,h,i),x.emit(`dragend`,e),i=a=f=u=d=p=h=null}function P(e,t){let o;return o=t===void 0?r?d:T(f||a):t,e===i&&o===u}function J(e,t,r){let o=e;for(;o&&!g();)o=v(o);return o;function g(){if(R(o)===!1)return!1;let s=Q(o,e),c=Z(o,s,t,r);return P(o,c)?!0:b.accepts(a,o,i,c)}}function $(e){if(!r)return;e.preventDefault();let{clientX:t=0,clientY:c=0}=e,l=t-o,p=c-s;r.style.left=l+`px`,r.style.top=p+`px`;let y=f||a,S=ie(r,t,c),C=J(S,t,c),E=C!==null&&C!==h;(E||C===null)&&(we(),h=C,Ce());let M=v(y);if(C===i&&f&&!b.copySortSource){M&&M.removeChild(y);return}let N,I=Q(C,S);if(I!==null)N=Z(C,I,t,c);else if(b.revertOnSpill===!0&&!f)N=u,C=i;else{f&&M&&M.removeChild(y);return}(N===null&&E||N!==y&&N!==T(y))&&(d=N,C.insertBefore(y,N),x.emit(`shadow`,y,C,i));function _(e){x.emit(e,y,h,i)}function Ce(){E&&_(`over`)}function we(){h&&_(`out`)}}function he(e){L(e,`gu-hide`)}function be(e){x.dragging&&Y(e,`gu-hide`)}function ye(){if(r)return;let e=a.getBoundingClientRect();r=a.cloneNode(!0),r.style.width=oe(e)+`px`,r.style.height=ce(e)+`px`,L(r,`gu-transit`),Y(r,`gu-mirror`),b.mirrorContainer.appendChild(r),Fn.addEventListener(`pointermove`,$),Y(b.mirrorContainer,`gu-unselectable`),x.emit(`cloned`,r,a,`mirror`)}function Se(){r&&=(L(b.mirrorContainer,`gu-unselectable`),Fn.removeEventListener(`pointermove`,$),v(r).removeChild(r),null)}function Q(e,t){let r=t;for(;r!==e&&v(r)!==e;)r=v(r);return r===Fn?null:r}function Z(e,t,r,o){let s=(typeof b.direction==`function`?b.direction(a,e,i):b.direction)===`horizontal`;return t===e?O():m();function O(){let t=e.children.length,i,a,c;for(i=0;i<t;i++)if(a=e.children[i],c=a.getBoundingClientRect(),s&&c.left+c.width/2>r||!s&&c.top+c.height/2>o)return a;return null}function m(){let e=t.getBoundingClientRect();return w(s?r>e.left+oe(e)/2:o>e.top+ce(e)/2)}function w(e){return e?T(t):t}}function Ee(e,t){return typeof b.copy==`boolean`?b.copy:b.copy(e,t)}}function translate(e,t){return t||={},e.replace(/{([^}]+)}/g,function(e,r){return t[r]||`{`+r+`}`})}var In={translate:[`value`,translate]},Ln=`__fn`,Rn=1e3,zn=Array.prototype.slice;function EventBus(){this._listeners={},this.on(`diagram.destroy`,1,this._destroy,this)}EventBus.prototype.on=function(e,t,r,i){if(e=ee(e)?e:[e],I(t)&&(i=r,r=t,t=Rn),!Le(t))throw Error(`priority must be a number`);var a=r;i&&(a=xe(r,i),a[Ln]=r[Ln]||r);var o=this;e.forEach(function(e){o._addListener(e,{priority:t,callback:a,next:null})})},EventBus.prototype.once=function(e,t,r,i){var a=this;if(I(t)&&(i=r,r=t,t=Rn),!Le(t))throw Error(`priority must be a number`);function wrappedCallback(){wrappedCallback.__isTomb=!0;var t=r.apply(i,arguments);return a.off(e,wrappedCallback),t}wrappedCallback[Ln]=r,this.on(e,t,wrappedCallback)},EventBus.prototype.off=function(e,t){e=ee(e)?e:[e];var r=this;e.forEach(function(e){r._removeListener(e,t)})},EventBus.prototype.createEvent=function(e){var t=new InternalEvent;return t.init(e),t},EventBus.prototype.fire=function(e,t){var r,i,a,o=zn.call(arguments);if(typeof e==`object`&&(t=e,e=t.type),!e)throw Error(`no event type specified`);if(i=this._listeners[e],i){r=t instanceof InternalEvent?t:this.createEvent(t),o[0]=r;var s=r.type;e!==s&&(r.type=e);try{a=this._invokeListeners(r,o,i)}finally{e!==s&&(r.type=s)}return a===void 0&&r.defaultPrevented&&(a=!1),a}},EventBus.prototype.handleError=function(e){return this.fire(`error`,{error:e})===!1},EventBus.prototype._destroy=function(){this._listeners={}},EventBus.prototype._invokeListeners=function(e,t,r){for(var i;r&&!e.cancelBubble;)i=this._invokeListener(e,t,r),r=r.next;return i},EventBus.prototype._invokeListener=function(e,t,r){var i;if(r.callback.__isTomb)return i;try{i=invokeFunction(r.callback,t),i!==void 0&&(e.returnValue=i,e.stopPropagation()),i===!1&&e.preventDefault()}catch(e){if(!this.handleError(e))throw console.error(`unhandled error in event listener`,e),e}return i},EventBus.prototype._addListener=function(e,t){var r=this._getListeners(e),i;if(!r)this._setListeners(e,t);else{for(;r;){if(r.priority<t.priority){t.next=r,i?i.next=t:this._setListeners(e,t);return}i=r,r=r.next}i.next=t}},EventBus.prototype._getListeners=function(e){return this._listeners[e]},EventBus.prototype._setListeners=function(e,t){this._listeners[e]=t},EventBus.prototype._removeListener=function(e,t){var r=this._getListeners(e),i,a,o;if(!t)this._setListeners(e,null);else for(;r;)i=r.next,o=r.callback,(o===t||o[Ln]===t)&&(a?a.next=i:this._setListeners(e,i)),a=r,r=i};function InternalEvent(){}InternalEvent.prototype.stopPropagation=function(){this.cancelBubble=!0},InternalEvent.prototype.preventDefault=function(){this.defaultPrevented=!0},InternalEvent.prototype.init=function(e){je(this,e||{})};function invokeFunction(e,t){return e.apply(null,t)}function DebounceFactory(e=!0){let t=typeof e==`number`?e:e?300:0;return t?e=>Oe(e,t):e=>e}DebounceFactory.$inject=[`config.debounce`];var FormFieldRegistry=class extends dn{updateId(e,t){if(this._validateId(t),this._eventBus.fire(`formField.updateId`,{formField:e,newId:t}),this.remove(e),e.id=t,this.add(e),`components`in e)for(let r of e.components)r._parent=t}_validateId(e){if(!e)throw Error(`formField must have an id`);if(this.get(e))throw Error(`formField with id `+e+` already added`)}},Bn=16,Vn=16,Hn=2,Un=4,FormLayoutValidator=class{constructor(e,t,r){this._formLayouter=e,this._formFieldRegistry=t,this._translate=r}validateField(e={},t,r){if(Number.isInteger(t)){if(t<Hn)return this._translate(`Minimum {value} columns are allowed`,{value:Hn.toString()});if(t>Vn)return this._translate(`Maximum {value} columns are allowed`,{value:Vn.toString()})}r||=this._formLayouter.getRowForField(e);let i=parseInt(t)||0,a=1,o=+!t;return r.components.forEach(t=>{if(e.id===t)return;let r=(this._formFieldRegistry.get(t).layout||{}).columns;r||o++,i+=parseInt(r)||0,a++}),i>Bn||o>0&&i>calculateMaxColumnsWithAuto(o)||t===Bn&&a>1?this._translate(`New value exceeds the maximum of {value} columns per row`,{value:Bn.toString()}):a>Un?this._translate(`Maximum {value} fields per row are allowed`,{value:Un.toString()}):null}};FormLayoutValidator.$inject=[`formLayouter`,`formFieldRegistry`,`translate`];function calculateMaxColumnsWithAuto(e){return Bn-e*2}var Wn=createEmptyImage();function editorFormFieldClasses(e,{disabled:t=!1}={}){if(!e)throw Error(`type required`);return(0,En.default)(`fjs-form-field`,`fjs-form-field-${e}`,{"fjs-disabled":t})}function createDragger$1(e){let t,r,i;function onDragStart(e){t=this,r=e.clientX,i=e.clientY,e.dataTransfer&&e.dataTransfer.setDragImage(Wn,0,0),document.addEventListener(`dragover`,onDrag),document.addEventListener(`dragend`,onEnd),document.addEventListener(`drop`,preventDefault$1)}function onDrag(a){let o={x:a.clientX-r,y:a.clientY-i};return e.call(t,a,o)}function onEnd(){document.removeEventListener(`dragover`,onDrag),document.removeEventListener(`dragend`,onEnd),document.removeEventListener(`drop`,preventDefault$1)}return onDragStart}function throttle(e){let t=!1,r=[],i;return function(...a){r=a,i=this,!t&&(t=!0,e.apply(i,r),window.requestAnimationFrame(function(){r=i=t=void 0}))}}function preventDefault$1(e){e.preventDefault(),e.stopPropagation()}function createEmptyImage(){let e=new Image;return e.src=`data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7`,e}function EditorIFrame(e){let{field:t,domId:r}=e,{label:i}=t,a=Jt(t.type);return f(`div`,{class:editorFormFieldClasses(t.type),children:[f(Zt,{id:r,label:i}),f(`div`,{class:`fjs-iframe-placeholder`,id:r,children:f(`p`,{class:`fjs-iframe-placeholder-text`,children:[f(a,{width:`32`,height:`24`,viewBox:`0 0 56 56`}),`iFrame`]})})]})}EditorIFrame.config=_n.config;var Gn=o({drake:null});function getService(e,t){}var Kn=o({getService});function useService(e,t){let{getService:r}=a(Kn);return r(e,t)}var qn;function _extends$5(){return _extends$5=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r)({}).hasOwnProperty.call(r,i)&&(e[i]=r[i])}return e},_extends$5.apply(null,arguments)}var Jn=function SvgClose(e){return t(`svg`,_extends$5({xmlns:`http://www.w3.org/2000/svg`,width:16,height:16,fill:`currentColor`},e),qn||=t(`path`,{fillRule:`evenodd`,d:`m12 4.7-.7-.7L8 7.3 4.7 4l-.7.7L7.3 8 4 11.3l.7.7L8 8.7l3.3 3.3.7-.7L8.7 8z`,clipRule:`evenodd`}))},Yn,Xn;function _extends$4(){return _extends$4=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r)({}).hasOwnProperty.call(r,i)&&(e[i]=r[i])}return e},_extends$4.apply(null,arguments)}var Zn=function SvgDelete(e){return t(`svg`,_extends$4({xmlns:`http://www.w3.org/2000/svg`,width:16,height:16,fill:`none`},e),t(`rect`,{width:16,height:16,x:.536,fill:`#fff`,rx:3,style:{mixBlendMode:`multiply`}}),t(`path`,{fill:`#fff`,d:`M0 0h16v16H0z`,style:{mixBlendMode:`multiply`},transform:`translate(.536)`}),Yn||=t(`path`,{fill:`currentcolor`,d:`M7.536 6h-1v6h1zm3 0h-1v6h1z`}),Xn||=t(`path`,{fill:`currentcolor`,d:`M2.536 3v1h1v10a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V4h1V3zm2 11V4h8v10zm6-13h-4v1h4z`}))},Qn;function _extends$3(){return _extends$3=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r)({}).hasOwnProperty.call(r,i)&&(e[i]=r[i])}return e},_extends$3.apply(null,arguments)}var $n=function SvgDraggable(e){return t(`svg`,_extends$3({xmlns:`http://www.w3.org/2000/svg`,xmlSpace:`preserve`,width:16,height:16,fill:`currentcolor`,viewBox:`0 0 32 32`},e),Qn||=t(`path`,{d:`M10 6h4v4h-4zm8 0h4v4h-4zm-8 8h4v4h-4zm8 0h4v4h-4zm-8 8h4v4h-4zm8 0h4v4h-4z`}),t(`path`,{d:`M0 0h32v32H0z`,style:{fill:`none`}}))},er;function _extends$2(){return _extends$2=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r)({}).hasOwnProperty.call(r,i)&&(e[i]=r[i])}return e},_extends$2.apply(null,arguments)}var tr=function SvgSearch(e){return t(`svg`,_extends$2({xmlns:`http://www.w3.org/2000/svg`,width:15,height:15,fill:`none`},e),er||=t(`path`,{fill:`currentColor`,d:`m14.5 13.793-3.776-3.776a5.508 5.508 0 1 0-.707.707l3.776 3.776zM2 6.5a4.5 4.5 0 1 1 9 0 4.5 4.5 0 0 1-9 0`}))},nr,rr,ir,ar,or,sr,cr,lr;function _extends$1(){return _extends$1=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r)({}).hasOwnProperty.call(r,i)&&(e[i]=r[i])}return e},_extends$1.apply(null,arguments)}var ur=function SvgEmptyForm(e){return t(`svg`,_extends$1({xmlns:`http://www.w3.org/2000/svg`,width:126,height:96,fill:`none`},e),nr||=t(`path`,{fill:`#FF832B`,fillRule:`evenodd`,d:`M70 78v8a3 3 0 0 1-3 3h-8v-5h6v-6zm0-16h-5V46h5zm0-32h-5v-6h-6v-5h8a3 3 0 0 1 3 3zM43 19v5H27v-5zm-32 0v5H5v6H0v-8a3 3 0 0 1 3-3zM0 46h5v16H0zm0 32h5v6h6v5H3a3 3 0 0 1-3-3zm27 11v-5h16v5z`,clipRule:`evenodd`}),rr||=t(`rect`,{width:70,height:70,fill:`#E5E5E5`,rx:3,transform:`matrix(-1 0 0 1 94 0)`}),ir||=t(`mask`,{id:`EmptyForm_svg__a`,fill:`#fff`},t(`path`,{fillRule:`evenodd`,d:`M87.085 88.684 75.43 45.185l43.499 11.656-11.044 8.072 8.557 8.556-12.728 12.728-8.557-8.556z`,clipRule:`evenodd`})),ar||=t(`path`,{fill:`#393939`,fillRule:`evenodd`,d:`M87.085 88.684 75.43 45.185l43.499 11.656-11.044 8.072 8.557 8.556-12.728 12.728-8.557-8.556z`,clipRule:`evenodd`}),or||=t(`path`,{fill:`#393939`,d:`M75.43 45.185 70.6 46.48l-2.241-8.365 8.365 2.242zm11.655 43.499 4.037 2.95-6.163 8.432-2.704-10.088zm31.844-31.843 1.294-4.83 10.088 2.703-8.432 6.163zm-11.044 8.072-3.535 3.535-4.128-4.127 4.713-3.445zm8.557 8.556 3.535-3.535 3.536 3.535-3.536 3.536zm-12.728 12.728 3.536 3.536-3.536 3.535-3.536-3.535zm-8.557-8.556-4.036-2.951 3.444-4.713 4.128 4.128zM80.26 43.89 91.915 87.39l-9.66 2.588L70.6 46.48zm37.375 17.78L74.136 50.014l2.588-9.66 43.499 11.656zm-12.699-.795 11.043-8.072 5.901 8.073-11.043 8.072zm7.971 16.129-8.556-8.557 7.071-7.07 8.556 8.556zm-12.728 5.657 12.728-12.728 7.071 7.07-12.727 12.729zm-1.485-8.557 8.557 8.557-7.072 7.07-8.556-8.556zM83.049 85.733 91.12 74.69l8.073 5.901-8.072 11.044z`,mask:`url(#EmptyForm_svg__a)`}),sr||=t(`path`,{stroke:`#000`,strokeLinecap:`round`,strokeWidth:3,d:`m69.431 39.163-9.192-9.192`}),cr||=t(`path`,{stroke:`#000`,strokeLinecap:`round`,strokeWidth:3,d:`M1.5-1.5h8`,transform:`matrix(-1 0 0 1 68.213 50.123)`}),lr||=t(`path`,{stroke:`#000`,strokeLinecap:`round`,strokeWidth:3,d:`M78.969 36.367v-8`}))};function EditorText(e){let{type:t,text:r=``}=e.field,i=Jt(`text`),a=useService(`templating`),o=useService(`expressionLanguage`),s=useService(`translate`);return!r||!r.trim()?f(`div`,{class:editorFormFieldClasses(t),children:f(`div`,{class:`fjs-form-field-placeholder`,children:[f(i,{viewBox:`0 0 54 54`}),s(`Text view is empty`)]})}):o.isExpression(r)?f(`div`,{class:editorFormFieldClasses(t),children:f(`div`,{class:`fjs-form-field-placeholder`,children:[f(i,{viewBox:`0 0 54 54`}),s(`Text view is populated by an expression`)]})}):a.isTemplate(r)?f(`div`,{class:editorFormFieldClasses(t),children:f(`div`,{class:`fjs-form-field-placeholder`,children:[f(i,{viewBox:`0 0 54 54`}),s(`Text view is templated`)]})}):f(It,{...e,disableLinks:!0})}EditorText.config=It.config;function EditorHtml(e){let{type:t,content:r=``}=e.field,i=Jt(t),a=useService(`templating`),o=useService(`expressionLanguage`),s=useService(`translate`);return!r||!r.trim()?f(`div`,{class:editorFormFieldClasses(t),children:f(`div`,{class:`fjs-form-field-placeholder`,children:[f(i,{viewBox:`0 0 54 54`}),s(`Html view is empty`)]})}):o.isExpression(r)?f(`div`,{class:editorFormFieldClasses(t),children:f(`div`,{class:`fjs-form-field-placeholder`,children:[f(i,{viewBox:`0 0 54 54`}),s(`Html view is populated by an expression`)]})}):a.isTemplate(r)?f(`div`,{class:editorFormFieldClasses(t),children:f(`div`,{class:`fjs-form-field-placeholder`,children:[f(i,{viewBox:`0 0 54 54`}),s(`Html view is templated`)]})}):f(Yt,{...e,disableLinks:!0})}EditorHtml.config=Yt.config;function EditorTable(e){let{columnsExpression:t,columns:r,id:i,label:a}=e.field,o=useService(`translate`),s=typeof t==`string`&&t.length>0||Array.isArray(r)&&r.length===0?[{key:`1`,label:o(`Column {index}`,{index:`1`})},{key:`2`,label:o(`Column {index}`,{index:`2`})},{key:`3`,label:o(`Column {index}`,{index:`3`})}]:r,c=`fjs-form-${i}`;return f(`div`,{class:editorFormFieldClasses(`table`,{disabled:!0}),children:[f(Zt,{id:c,label:a}),f(`div`,{class:`fjs-table-middle-container`,children:f(`div`,{class:`fjs-table-inner-container`,children:f(`table`,{class:(0,En.default)(`fjs-table`,`fjs-disabled`),id:c,children:[f(`thead`,{class:`fjs-table-head`,children:f(`tr`,{class:`fjs-table-tr`,children:s.map(({key:e,label:t})=>f(`th`,{class:`fjs-table-th`,children:t},e))})}),f(`tbody`,{class:`fjs-table-body`,children:f(`tr`,{class:`fjs-table-tr`,children:s.map(({key:e})=>f(`td`,{class:`fjs-table-td`,children:`Content`},e))})})]})})})]})}EditorTable.config=Nt.config;var dr=`expression`;function EditorExpressionField(e){let{field:t}=e,{expression:r=``,key:i}=t,a=Jt(`expression`),o=useService(`expressionLanguage`),s=`Expression is empty`;return r.trim()&&o.isExpression(r)&&(s=`Expression for '${i}'`),f(`div`,{class:editorFormFieldClasses(dr),children:f(`div`,{class:`fjs-form-field-placeholder`,children:[f(a,{viewBox:`0 0 54 54`}),s]})})}EditorExpressionField.config={...mn.config,escapeGridRender:!1};function EditorDocumentPreview(e){let{field:t,domId:r}=e,i=useService(`translate`),{label:a}=t,o=Jt(t.type);return f(`div`,{class:editorFormFieldClasses(t.type),children:[f(Zt,{id:r,label:a}),f(`div`,{class:`fjs-documentPreview-placeholder`,id:r,children:f(`p`,{class:`fjs-documentPreview-placeholder-text`,children:[f(o,{width:`32`,height:`24`,viewBox:`0 0 56 56`}),i(`Document preview`)]})})]})}EditorDocumentPreview.config=un.config;var fr=[EditorIFrame,EditorText,EditorHtml,EditorTable,EditorExpressionField,EditorDocumentPreview],EditorFormFields=class extends cn{constructor(){super(),fr.forEach(e=>{this.register(e.config.type,e)})}},ModularSection=e=>{let{rootClass:t,RootElement:a,section:o,children:s}=e,c=useService(`eventBus`),l=useService(`config.${o}`),[u,p]=r(l&&l.parent||null),[b,x]=r(!0),S=d(()=>{if(u===null)return null;if(typeof u==`string`){if(!document.querySelector(u))throw Error(`Target root element with selector '${u}' not found for section '${o}'`);return document.querySelector(u)}if(!(u instanceof Element))throw Error(`Target root element for section '${o}' must be a valid selector or DOM element`);return u},[o,u]);y(()=>{let onAttach=({container:e})=>{p(e),x(!0)},onDetach=()=>{p(null),x(!1)},onReset=()=>{p(null),x(!0)};return c.on(`${o}.attach`,onAttach),c.on(`${o}.detach`,onDetach),c.on(`${o}.reset`,onReset),c.fire(`${o}.section.rendered`),()=>{c.off(`${o}.attach`,onAttach),c.off(`${o}.detach`,onDetach),c.off(`${o}.reset`,onReset),c.fire(`${o}.section.destroyed`)}},[c,o]),y(()=>{if(b)return c.fire(`${o}.rendered`,{element:S}),()=>{c.fire(`${o}.destroyed`,{element:S})}},[c,o,b,S]);let C=i(({children:e})=>a?f(a,{children:e}):f(`div`,{className:(0,En.default)(t,`bio-theme-parent`),children:e}),[t,a]);return b?u?h(f(C,{children:s}),S):f(C,{children:s}):null},pr=o({addFill(e,t){throw Error(`FillContext.addFill() uninitialized`)},removeFill(e){throw Error(`FillContext.addFill() uninitialized`)}}),Fill=e=>{let t=c(Symbol(`fill_uid`)),r=a(pr);return y(()=>{if(r)return r.addFill({id:t,...e}),()=>{r.removeFill(t)}},[r,e]),null},mr=o({fills:[]}),Slot=e=>{let{name:t,fillRoot:i=FillFragment,groupFn:o=_groupByGroupName,separatorFn=e=>null,limit:c}=e,{fills:l}=a(mr),u=d(()=>l.filter(e=>e.slot===t),[l,t]),p=d(()=>c?u.slice(0,c):u,[u,c]),h=d(()=>o(p),[p,o]),b=d(()=>buildFills(h,i,separatorFn),[h,i,separatorFn]),x=a(Kn),S=x?x.getService(`slotFillManager`,!1):null,C=x?x.getService(`eventBus`,!1):null,[E,M]=r([]);return y(()=>{if(!C||!S)return;M(S.getFills(t));let onChange=()=>M(S.getFills(t));return C.on(`slotFillManager.changed`,onChange),()=>C.off(`slotFillManager.changed`,onChange)},[C,S,t]),f(s,{children:[b,E.map(e=>f(FillContainer,{fill:e},e.fillId))]})},FillFragment=e=>f(s,{children:e.children},e.id);function FillContainer({fill:e}){let t=c(null),r=c(null);return y(()=>{let i=t.current;if(i)return r.current=e.render(i)||null,()=>{typeof r.current==`function`&&(r.current(),r.current=null),i.innerHTML=``}},[e]),f(`div`,{ref:t,"data-slot-fill":e.fillId})}var buildFills=(e,t,r)=>{let i=[];return e.forEach((e,a)=>{if(a!==0){let e=r(`__separator_${a}`);e&&i.push(e)}e.forEach(e=>{i.push(t(e))})}),i},_groupByGroupName=e=>{let t=[],r={};return e.forEach(function(e){let{group:i=`z_default`}=e,a=r[i];a||(r[i]=a=[],t.push(a)),a.push(e)}),t.forEach(e=>e.sort(_comparePriority)),Object.keys(r).sort().map(e=>r[e])},_comparePriority=(e,t)=>(t.priority||0)-(e.priority||0),noop$1=()=>{},SlotFillRoot=e=>{let[t,i]=r([]),{onSetFill:a=noop$1,onRemoveFill:o=noop$1}=e,s=d(()=>({addFill:e=>{i(t=>[...t.filter(t=>t.id!==e.id),e]),a(e)},removeFill:e=>{i(t=>t.filter(t=>t.id!==e)),o(e)}}),[o,a]),c=d(()=>({fills:t}),[t]);return f(mr.Provider,{value:c,children:f(pr.Provider,{value:s,children:e.children})})};function PaletteEntry(e){let{type:t,label:r,icon:i,iconUrl:a,getPaletteIcon:o}=e,s=useService(`modeling`),c=useService(`formEditor`),l=useService(`translate`),u=o({icon:i,iconUrl:a,label:r,type:t}),onKeyDown=e=>{if(e.code===`Enter`){let{fieldType:t}=e.target.dataset,{schema:r}=c._getState();s.addFormField({type:t},r,r.components.length)}};return f(`button`,{type:`button`,class:`fjs-palette-field fjs-drag-copy fjs-no-drop`,"data-field-type":t,title:l(`Create {label} element`,{label:l(r)}),onKeyDown,children:[u?f(u,{class:`fjs-palette-field-icon`,width:`36`,height:`36`,viewBox:`0 0 54 54`}):null,f(`span`,{class:`fjs-palette-field-text`,children:l(r)})]})}var hr=[{label:`Input`,id:`basic-input`},{label:`Selection`,id:`selection`},{label:`Presentation`,id:`presentation`},{label:`Containers`,id:`container`},{label:`Action`,id:`action`}];function Palette(e){let t=useService(`formFields`),a=useService(`translate`),o=c(collectPaletteEntries(t)),[s,l]=r(o.current),[u,d]=r(``),p=c(),h=groupEntries(s),b=i(e=>e.toLowerCase().replace(/\s+/g,``),[]),x=i(e=>{let t=b(u);if(!t)return!0;let r=b(a(e.label)),i=b(e.type);return r.includes(t)||i.includes(t)},[u,b,a]);y(()=>{let e=o.current.filter(x);l(e)},[x,u]);let S=i(e=>{d(()=>e.target.value)},[d]),C=i(e=>{d(``),p.current.focus()},[p,d]);return f(`div`,{class:`fjs-palette`,children:[f(`div`,{class:`fjs-palette-header`,title:a(`Components`),children:a(`Components`)}),f(`div`,{class:`fjs-palette-search-container`,children:[f(`span`,{class:`fjs-palette-search-icon`,children:f(tr,{})}),f(`input`,{class:`fjs-palette-search`,ref:p,type:`text`,placeholder:a(`Search components`),value:u,onInput:S}),u&&f(`button`,{type:`button`,title:a(`Clear content`),class:`fjs-palette-search-clear`,onClick:C,children:f(Jn,{})})]}),f(`div`,{class:`fjs-palette-entries`,children:[h.map(({label:e,entries:t,id:r})=>f(`div`,{class:`fjs-palette-group`,"data-group-id":r,children:[f(`span`,{class:`fjs-palette-group-title`,children:a(e)}),f(`div`,{class:`fjs-palette-fields fjs-drag-container fjs-no-drop`,children:t.map(e=>f(PaletteEntry,{getPaletteIcon,...e},e.type))})]},r)),h.length==0&&f(`div`,{class:`fjs-palette-no-entries`,children:a(`No components found.`)})]}),f(`div`,{class:`fjs-palette-footer`,children:f(Slot,{name:`editor-palette__footer`,fillRoot:FillRoot})})]})}var FillRoot=e=>f(`div`,{className:`fjs-palette-footer-fill`,children:e.children});function groupEntries(e){let t=hr.map(e=>({...e,entries:[]})),getGroup=e=>t.find(t=>e===t.id);return e.forEach(e=>{let{group:t}=e;getGroup(t).entries.push(e)}),t.filter(e=>e.entries.length)}function collectPaletteEntries(e){return Object.entries(e._formFields).map(([e,t])=>{let{config:r}=t;return{label:r.name||r.label,type:e,group:r.group,icon:r.icon,iconUrl:r.iconUrl}}).filter(({type:e})=>e!=="default")}function getPaletteIcon(e){let{icon:t,iconUrl:r,type:i,label:a}=e,o;return o=r?function Icon(){return f(`img`,{class:`fjs-field-icon-image`,width:36,style:{margin:`auto`},alt:a,src:Lt(r)})}:t||Jt(i),o}var InjectedRendersRoot=()=>{let e=useService(`renderInjector`).fetchRenderers(),t=d(()=>({useService,components:{Fill,Slot}}),[]);return f(s,{children:e.map(({Renderer:e},r)=>f(e,{...t},r))})};function Arrow(e){return f(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:`16`,height:`16`,viewBox:`0 0 16 16`,...e,children:f(`path`,{fillRule:`evenodd`,d:`M10,12 L3,12 C2.44771525,12 2,11.5522847 2,11 C2,10.4477153 2.44771525,10 3,10 L8,10 L8,5 C8,4.44771525 8.44771525,4 9,4 C9.55228475,4 10,4.44771525 10,5 L10,12 Z`,transform:`rotate(-45 6 8)`})})}function Close(e){return f(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:`16`,height:`16`,viewBox:`0 0 16 16`,...e,children:f(`path`,{fillRule:`evenodd`,d:`M12 4.7L11.3 4L8 7.3L4.7 4L4 4.7L7.3 8L4 11.3L4.7 12L8 8.7L11.3 12L12 11.3L8.7 8L12 4.7Z`,fill:`currentColor`})})}function Create(e){return f(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:`16`,height:`16`,viewBox:`0 0 16 16`,...e,children:f(`path`,{fillRule:`evenodd`,d:`M9,13 L9,9 L9,9 L13,9 C13.5522847,9 14,8.55228475 14,8 C14,7.44771525 13.5522847,7 13,7 L9,7 L9,7 L9,3 C9,2.44771525 8.55228475,2 8,2 C7.44771525,2 7,2.44771525 7,3 L7,7 L7,7 L3,7 C2.44771525,7 2,7.44771525 2,8 C2,8.55228475 2.44771525,9 3,9 L7,9 L7,9 L7,13 C7,13.5522847 7.44771525,14 8,14 C8.55228475,14 9,13.5522847 9,13 Z`})})}function Delete(e){return f(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:`16`,height:`16`,viewBox:`0 0 16 16`,...e,children:f(`path`,{fillRule:`evenodd`,d:`M9,4 L9,11 C9,12.1 8.6,12.55 7.5,12.55 L2.5,12.55 C1.4,12.55 1,12.1 1,11 L1,4 L9,4 Z M7.5,5.5 L2.5,5.5 L2.5,9.8 C2.5,10.46 3,11 3.61111111,11 L6.38888889,11 C7,11 7.5,10.46 7.5,9.8 L7.5,5.5 Z M10,1 L8,1 L7,0 L3,0 L2,1 L0,1 L0,2.5 L10,2.5 L10,1 Z`,transform:`translate(3 2)`})})}function Drag(e){return f(`svg`,{width:`16`,height:`16`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,...e,children:[f(`path`,{fill:`#fff`,style:{mixBlendMode:`multiply`},d:`M0 0h16v16H0z`}),f(`path`,{fill:`#fff`,style:{mixBlendMode:`multiply`},d:`M0 0h16v16H0z`}),f(`path`,{d:`M7 3H5v2h2V3zM11 3H9v2h2V3zM7 7H5v2h2V7zM11 7H9v2h2V7zM7 11H5v2h2v-2zM11 11H9v2h2v-2z`,fill:`#161616`})]})}function ExternalLink(e){return f(`svg`,{width:`16`,height:`16`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,...e,children:f(`path`,{fillRule:`evenodd`,clipRule:`evenodd`,d:`M12.637 12.637v-4.72h1.362v4.721c0 .36-.137.676-.411.95-.275.275-.591.412-.95.412H3.362c-.38 0-.703-.132-.967-.396A1.315 1.315 0 0 1 2 12.638V3.362c0-.38.132-.703.396-.967S2.982 2 3.363 2h4.553v1.363H3.363v9.274h9.274ZM14 2H9.28l-.001 1.362h2.408L5.065 9.984l.95.95 6.622-6.622v2.409H14V2Z`,fill:`currentcolor`})})}function Feel(e){return f(`svg`,{width:`14`,height:`14`,viewBox:`0 0 14 14`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,...e,children:[f(`path`,{d:`M3.6168 11.9894C3.47957 12.6745 3.22473 13.1809 2.85227 13.5085C2.48961 13.8362 1.97012 14 1.29381 14H0L0.308751 12.4213H1.57316L3.08751 4.78085H2.17596L2.48471 3.20213H3.39626L3.6315 2.01064C3.76872 1.32553 4.01866 0.819149 4.38132 0.491489C4.75378 0.16383 5.27817 0 5.95448 0H7.2483L6.93954 1.57872H5.67514L5.35168 3.20213H6.61609L6.30734 4.78085H5.04293L3.6168 11.9894Z`,fill:`currentcolor`}),f(`path`,{d:`M5.60492 11.0213L8.63361 6.86596L7.28099 3.20213H9.35403L10.0598 5.74894H10.2362L11.927 3.20213H14L10.986 7.25319L12.3239 11.0213H10.2509L9.54517 8.41489H9.36874L7.67796 11.0213H5.60492Z`,fill:`currentcolor`})]})}function Launch(e){return f(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 32 32`,...e,children:[f(`path`,{d:`M26,28H6a2.0027,2.0027,0,0,1-2-2V6A2.0027,2.0027,0,0,1,6,4H16V6H6V26H26V16h2V26A2.0027,2.0027,0,0,1,26,28Z`}),f(`polygon`,{points:`20 2 20 4 26.586 4 18 12.586 19.414 14 28 5.414 28 12 30 12 30 2 20 2`})]})}function OpenPopup(e){return f(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 16 16`,...e,children:f(`path`,{d:`M6 15L6 14 2.7 14 7 9.7 6.3 9 2 13.3 2 10 1 10 1 15zM10 1L10 2 13.3 2 9 6.3 9.7 7 14 2.7 14 6 15 6 15 1z`})})}function translateFallback(e,t){return t||={},e.replace(/{([^}]+)}/g,function(e,r){return t[r]||`{`+r+`}`})}function Header(e){let{element:t,headerProvider:r,translate:i=translateFallback}=e,{getElementIcon:a,getDocumentationRef:o,getElementLabel:s,getTypeLabel:c}=r,l=s(t),u=c(t),d=o&&o(t),p=a(t);return f(`div`,{class:`bio-properties-panel-header`,children:[f(`div`,{class:`bio-properties-panel-header-icon`,children:p&&f(p,{width:`32`,height:`32`,viewBox:`0 0 32 32`})}),f(`div`,{class:`bio-properties-panel-header-labels`,children:[f(`div`,{class:`bio-properties-panel-header-type`,children:u}),l?f(`div`,{class:`bio-properties-panel-header-label`,children:l}):null]}),f(`div`,{class:`bio-properties-panel-header-actions`,children:d?f(`a`,{rel:`noreferrer`,class:`bio-properties-panel-header-link`,href:d,title:i(`Open documentation`),target:`_blank`,children:f(ExternalLink,{})}):null})]})}var gr=o({description:{},getDescriptionForId:()=>{}}),_r=o({errors:{}}),vr=o({eventBus:null}),yr=o({}),br=o({layout:{},setLayout:()=>{},getLayoutForKey:()=>{},setLayoutForKey:()=>{}}),xr=o({tooltip:{},getTooltipForId:()=>{}});function useTooltipContext(e,t){let{getTooltipForId:r}=a(xr);return r(e,t)}function TooltipWrapper(e){let{forId:t,element:r}=e,i=useTooltipContext(t,r),a=e.value||i;return a?f(Tooltip,{...e,value:a,forId:`bio-properties-panel-${t}`}):e.children}function Tooltip(e){let{forId:t,value:i,parent:a,direction:o=`right`,position:s,showDelay:l=250,hideDelay:u=250}=e,[d,b]=r(!1),[x,S]=r(null),[C,E]=r(null),M=c(null),N=c(null),I=c(null),z=c(null),show=(e,t)=>{clearTimeout(M.current),clearTimeout(N.current),!d&&(t?M.current=setTimeout(()=>{b(!0)},l):b(!0))},handleWrapperMouseEnter=e=>{show(e,!0)},hide=(e=!1)=>{clearTimeout(M.current),clearTimeout(N.current),e?N.current=setTimeout(()=>{b(!1)},u):b(!1)};y(()=>()=>{clearTimeout(M.current),clearTimeout(N.current)},[]),y(()=>{if(!d)return;let handleClickOutside=e=>{I.current&&!I.current.contains(e.target)&&z.current&&!z.current.contains(e.target)&&hide(!1)};return document.addEventListener(`mousedown`,handleClickOutside),()=>{document.removeEventListener(`mousedown`,handleClickOutside)}},[d,hide]),p(()=>{if(!d||s){S(null),E(null);return}if(!I.current||!z.current)return;let{tooltipPosition:e,arrowOffset:t}=getTooltipPosition(I.current,z.current,o);S(e),E(t)},[d,s]);let handleMouseLeave=({relatedTarget:e})=>{if(e===I.current||e===z.current||e?.parentElement===z.current)return;let t=window.getSelection();if(t&&t.toString().length>0){let e=t.getRangeAt(0);if(z.current?.contains(e.commonAncestorContainer)||z.current?.contains(t.anchorNode)||z.current?.contains(t.focusNode))return}hide(!0)},handleTooltipMouseEnter=()=>{clearTimeout(N.current)},handleFocusOut=e=>{let{relatedTarget:t}=e;z.current?.contains(t)||I.current?.contains(t)||hide(!1)},hideTooltipViaEscape=e=>{e.code===`Escape`&&hide(!1)},renderTooltip=()=>{let e=s||(x?`right: ${x.right}; top: ${x.top}px;`:void 0),r=C==null?void 0:`margin-top: ${C}px;`;return f(`div`,{class:`bio-properties-panel-tooltip bio-theme-parent ${o}`,role:`tooltip`,id:`bio-properties-panel-tooltip`,"aria-labelledby":t,style:e,ref:z,onClick:e=>e.stopPropagation(),onMouseEnter:handleTooltipMouseEnter,onMouseLeave:handleMouseLeave,children:[f(`div`,{class:`bio-properties-panel-tooltip-content`,children:i}),f(`div`,{class:`bio-properties-panel-tooltip-arrow`,style:r})]})};return f(`div`,{class:`bio-properties-panel-tooltip-wrapper`,tabIndex:`0`,ref:I,onMouseEnter:handleWrapperMouseEnter,onMouseLeave:handleMouseLeave,onFocus:show,onBlur:handleFocusOut,onKeyDown:hideTooltipViaEscape,children:[e.children,d?a?h(renderTooltip(),a.current):renderTooltip():null]})}function getTooltipPosition(e,t,r){if(!e)return{tooltipPosition:null,arrowOffset:null};let i=e.getBoundingClientRect(),a=`calc(100% - ${i.x}px)`,o=i.top-10,s=null;if(t&&r===`right`){let e=t.getBoundingClientRect(),r=window.innerHeight-e.height,i=o;o>r&&(o=r),o<0&&(o=0),o!==i&&(s=16-(o-i))}return{tooltipPosition:{right:a,top:o},arrowOffset:s}}function useDescriptionContext(e,t){let{getDescriptionForId:r}=a(gr);return r(e,t)}function useDebounce(e,t){let r=i(t(e),[e,t]);return y(()=>()=>{r.flush?.()},[r]),r}function useError(e){let{errors:t}=a(_r);return t[e]}function useErrors(){let{errors:e}=a(_r);return e}function useEvent(e,t,r){let i=a(vr);r||({eventBus:r}=i);let o=c(!1);r&&!o.current&&r.on(e,t),y(()=>(r&&o.current&&r.on(e,t),o.current=!0,()=>{r&&r.off(e,t)}),[t,e,r])}function useLayoutState(e,t){let{getLayoutForKey:r,setLayoutForKey:o}=a(br);return[r(e,t),i(t=>{o(e,t)},[o])]}function usePrevious(e){let t=c();return y(()=>{t.current=e}),t.current}function useShowEntryEvent(e){let{onShow:t}=a(br),r=c(),o=c(!1),s=i(r=>{r.id===e&&(t(),o.current||=!0)},[e]);return y(()=>{o.current&&r.current&&(I(r.current.focus)&&r.current.focus(),I(r.current.select)&&r.current.select(),o.current=!1)}),useEvent(`propertiesPanel.showEntry`,s),r}function getScrollContainer(e,t){return e.current?mt(e.current,t,!0):null}function useStickyIntersectionObserver(e,t,a){let[o,s]=r(null),c=i(()=>{let r=getScrollContainer(e,t);r!==o&&s(r)},[e,t,o]);y(()=>{c()},[c]),useEvent(`propertiesPanel.attach`,c),useEvent(`propertiesPanel.detach`,c),y(()=>{let t=IntersectionObserver;if(!t)return;let r=e.current;if(!r||!o)return;let i=new t(e=>{o.scrollHeight!==0&&e.forEach(e=>{e.intersectionRatio<1?a(!0):e.intersectionRatio===1&&a(!1)})},{root:o,rootMargin:`0px 0px 999999% 0px`,threshold:[1]});return i.observe(r),()=>{i.unobserve(r)}},[e,o,a])}function useStaticCallback(e){let t=c(e);return p(()=>{t.current=e}),i((...e)=>t.current(...e),[])}function Group(e){let{element:o,entries:s=[],id:l,label:u,shouldOpen:d=!1,translate:p=translateFallback}=e,h=c(null),[b,x]=useLayoutState([`groups`,l,`open`],d),S=i(()=>x(!0),[x]),toggleOpen=()=>x(!b),[C,E]=r(!1),[M,N]=r(!1);y(()=>{let e=requestAnimationFrame(()=>{let e=s.find(e=>{let{id:t,isEdited:r}=e,i=gt(`[data-entry-id="${t}"]`);return!I(r)||!i?!1:r(gt(`.bio-properties-panel-input`,i))});E(e)});return()=>cancelAnimationFrame(e)},[s,E]);let z=useErrors(),B=s.some(e=>z[e.id]);useStickyIntersectionObserver(h,`div.bio-properties-panel-scroll-container`,N);let X={...a(br),onShow:S};return f(`div`,{class:`bio-properties-panel-group`,"data-group-id":`group-`+l,ref:h,children:[f(`div`,{class:(0,En.default)(`bio-properties-panel-group-header`,C?``:`empty`,b?`open`:``,M&&b?`sticky`:``),onClick:toggleOpen,children:[f(`div`,{class:`bio-properties-panel-group-header-title`,children:f(TooltipWrapper,{value:e.tooltip,forId:`group-`+l,element:o,children:u})}),f(`div`,{class:`bio-properties-panel-group-header-buttons`,children:[f(DataMarker,{edited:C,hasErrors:B,translate:p}),f(`button`,{type:`button`,title:p(`Toggle section`),class:`bio-properties-panel-group-header-button bio-properties-panel-arrow`,children:f(Arrow,{class:b?`bio-properties-panel-arrow-down`:`bio-properties-panel-arrow-right`})})]})]}),f(`div`,{class:(0,En.default)(`bio-properties-panel-group-entries`,b?`open`:``),children:f(br.Provider,{value:X,children:s.map(e=>{let{component:r,id:i}=e;return t(r,{...e,element:o,key:i})})})})]})}function DataMarker(e){let{edited:t,hasErrors:r,translate:i=translateFallback}=e;return r?f(`div`,{title:i(`Section contains an error`),class:`bio-properties-panel-dot bio-properties-panel-dot--error`}):t?f(`div`,{title:i(`Section contains edits`),class:`bio-properties-panel-dot`}):null}function Placeholder(e){let{text:t,icon:r}=e;return f(`div`,{class:`bio-properties-panel open`,children:f(`section`,{class:`bio-properties-panel-placeholder`,children:[r&&f(r,{class:`bio-properties-panel-placeholder-icon`}),f(`p`,{class:`bio-properties-panel-placeholder-text`,children:t})]})})}var Sr={},Cr={},wr={};function PropertiesPanel$1(e){let{element:i,headerProvider:a,placeholderProvider:o,groups:s,layoutConfig:c,layoutChanged:l,descriptionConfig:u,descriptionLoaded:p,tooltipConfig:h,tooltipLoaded:b,eventBus:x}=e,[S,C]=r(createLayout(c));useUpdateLayoutEffect(()=>{let e=createLayout(c);C(e)},[c]),y(()=>{typeof l==`function`&&l(S)},[S,l]);let getLayoutForKey=(e,t)=>B(S,e,t),setLayoutForKey=(e,t)=>{C(r=>{let i=je({},r);return E(i,e,t),i})},M={layout:S,setLayout:C,getLayoutForKey,setLayoutForKey},N=d(()=>createDescriptionContext(u),[u]);y(()=>{typeof p==`function`&&p(N)},[N,p]);let getDescriptionForId=(e,t)=>N[e]&&N[e](t),I={description:N,getDescriptionForId},z=d(()=>createTooltipContext(h),[h]);y(()=>{typeof b==`function`&&b(z)},[z,b]);let getTooltipForId=(e,t)=>z[e]&&z[e](t),X={tooltip:z,getTooltipForId},[te,fe]=r({}),onSetErrors=({errors:e})=>fe(e);useEvent(`propertiesPanel.setErrors`,onSetErrors,x);let xe={errors:te},Te={eventBus:x},Oe={element:i};return o&&!i?f(Placeholder,{...o.getEmpty()}):o&&ee(i)?f(Placeholder,{...o.getMultiple()}):f(br.Provider,{value:Oe,children:f(_r.Provider,{value:xe,children:f(gr.Provider,{value:I,children:f(xr.Provider,{value:X,children:f(br.Provider,{value:M,children:f(vr.Provider,{value:Te,children:f(`div`,{class:`bio-properties-panel bio-theme-parent`,children:[a?f(Header,{element:i,headerProvider:a}):null,f(`div`,{class:`bio-properties-panel-scroll-container`,children:s.map(e=>{let{component:r=Group,id:a}=e;return t(r,{...e,key:a,element:i})})})]})})})})})})})}function createLayout(e={},t=Sr){return{...t,...e}}function createDescriptionContext(e={}){return{...Cr,...e}}function createTooltipContext(e={}){return{...wr,...e}}function useUpdateLayoutEffect(e,t){let r=c(!1);p(()=>{if(r.current)return e();r.current=!0},t)}function CollapsibleEntry(e){let{element:o,entries:s=[],id:c,label:l,open:u,remove:d,translate:p=translateFallback}=e,[h,y]=r(u),toggleOpen=()=>y(!h),{onShow:b}=a(br),x={...a(br),onShow:i(()=>{y(!0),I(b)&&b()},[b,y])},S=p(`<empty>`),C=s.length>0;return f(`div`,{"data-entry-id":c,class:(0,En.default)(`bio-properties-panel-collapsible-entry`,h?`open`:``),children:[f(`div`,{class:`bio-properties-panel-collapsible-entry-header`,onClick:C?toggleOpen:null,children:[f(`div`,{class:(0,En.default)(`bio-properties-panel-collapsible-entry-header-title`,!l&&`empty`),children:l||S}),C&&f(`button`,{type:`button`,title:p(`Toggle list item`),class:`bio-properties-panel-arrow bio-properties-panel-collapsible-entry-arrow`,children:f(Arrow,{class:h?`bio-properties-panel-arrow-down`:`bio-properties-panel-arrow-right`})}),d?f(`button`,{type:`button`,title:p(`Delete item`),class:`bio-properties-panel-remove-entry`,onClick:d,children:f(Delete,{})}):null]}),f(`div`,{class:(0,En.default)(`bio-properties-panel-collapsible-entry-entries`,h?`open`:``),children:f(br.Provider,{value:x,children:s.map(e=>{let{component:r,id:i}=e;return t(r,{...e,element:o,key:i})})})})]})}function ListItem(e){let{autoFocusEntry:t,autoOpen:r,translate:i=translateFallback}=e;return y(()=>{if(r&&t){let e=gt(`[data-entry-id="${t}"]`),r=gt(`.bio-properties-panel-input`,e);r&&(I(r.select)?r.select():I(r.focus)&&r.focus(),r.scrollIntoView())}},[r,t]),f(`div`,{class:`bio-properties-panel-list-item`,children:f(CollapsibleEntry,{...e,open:r,translate:i})})}var noop$6=()=>{};function ListGroup(e){let{add:o,element:s,id:l,items:u,label:d,shouldOpen:p=!1,translate:h=translateFallback}=e;y(()=>{e.shouldSort!=null&&console.warn(`the property 'shouldSort' is no longer supported`)},[e.shouldSort]);let b=c(null),[x,S]=useLayoutState([`groups`,l,`open`],p),[C,E]=r(!1),M=i(()=>S(!0),[S]),[N,I]=r([]),[z,B]=r(!1),X=usePrevious(s),ee=i(()=>S(!x),[x]),te=s===X&&x&&z?getNewItemIds(u,N):[];y(()=>{I(u),B(!1)},[u]),useStickyIntersectionObserver(b,`div.bio-properties-panel-scroll-container`,E);let fe=!!u.length,xe={...a(br),onShow:M},handleAddClick=e=>{B(!0),S(!0),o(e)},Te=useErrors(),Oe=u.some(e=>{if(Te[e.id])return!0;if(e.entries)return e.entries.some(e=>Te[e.id])});return f(`div`,{class:`bio-properties-panel-group`,"data-group-id":`group-`+l,ref:b,children:[f(`div`,{class:(0,En.default)(`bio-properties-panel-group-header`,fe?``:`empty`,fe&&x?`open`:``,C&&x?`sticky`:``),onClick:fe?ee:noop$6,children:[f(`div`,{class:`bio-properties-panel-group-header-title`,children:f(TooltipWrapper,{value:e.tooltip,forId:`group-`+l,element:s,children:d})}),f(`div`,{class:`bio-properties-panel-group-header-buttons`,children:[o?f(`button`,{type:`button`,title:h(`Create new list item`),class:`bio-properties-panel-group-header-button bio-properties-panel-add-entry`,onClick:handleAddClick,children:[f(Create,{}),fe?null:f(`span`,{class:`bio-properties-panel-add-entry-label`,children:h(`Create`)})]}):null,fe?f(`div`,{title:h(`List contains {numOfItems} item${u.length==1?``:`s`}`,{numOfItems:u.length}),class:(0,En.default)(`bio-properties-panel-list-badge`,Oe?`bio-properties-panel-list-badge--error`:``),children:u.length}):null,fe?f(`button`,{type:`button`,title:h(`Toggle section`),class:`bio-properties-panel-group-header-button bio-properties-panel-arrow`,children:f(Arrow,{class:x?`bio-properties-panel-arrow-down`:`bio-properties-panel-arrow-right`})}):null]})]}),f(`div`,{class:(0,En.default)(`bio-properties-panel-list`,x&&fe?`open`:``),children:f(br.Provider,{value:xe,children:u.map((e,r)=>{if(!e)return;let{id:i}=e,a=te.includes(e.id);return t(ListItem,{...e,autoOpen:a,element:s,index:r,key:i,translate:h})})})})]})}function getNewItemIds(e,t){let r=e.map(e=>e.id),i=t.map(e=>e.id);return r.filter(e=>!i.includes(e))}function Description$1(e){let{element:t,forId:r,value:i}=e,a=useDescriptionContext(r,t),o=i||a;if(o)return f(`div`,{class:`bio-properties-panel-description`,children:o})}function Checkbox(e){let{id:t,label:i,onChange:a,disabled:o,value:s=!1,onFocus:c,onBlur:l,tooltip:u}=e,[d,p]=r(s),handleChangeCallback=({target:e})=>{a(e.checked)},handleChange=e=>{handleChangeCallback(e),p(e.target.value)};y(()=>{s!==d&&p(s)},[s]);let h=useShowEntryEvent(t);return f(`div`,{class:`bio-properties-panel-checkbox`,children:[f(`input`,{ref:h,id:prefixId$8(t),name:t,onFocus:c,onBlur:l,type:`checkbox`,class:`bio-properties-panel-input`,onChange:handleChange,checked:d,disabled:o}),f(`label`,{for:prefixId$8(t),class:`bio-properties-panel-label`,children:f(TooltipWrapper,{value:u,forId:t,element:e.element,children:i})})]})}function CheckboxEntry(e){let{element:t,id:r,description:i,label:a,getValue:o,setValue:s,disabled:c,onFocus:l,onBlur:u,tooltip:d}=e,p=o(t),h=useError(r);return f(`div`,{class:`bio-properties-panel-entry bio-properties-panel-checkbox-entry`,"data-entry-id":r,children:[f(Checkbox,{disabled:c,id:r,label:a,onChange:s,onFocus:l,onBlur:u,value:p,tooltip:d,element:t},t),h&&f(`div`,{class:`bio-properties-panel-error`,children:h}),f(Description$1,{forId:r,element:t,value:i})]})}function isEdited$9(e){return e&&!!e.checked}function prefixId$8(e){return`bio-properties-panel-${e}`}yt.define(),xt();function OpenPopupButton({onClick:e,title:t,translate:r=translateFallback}){return t??=r(`Open pop-up editor`),f(`button`,{type:`button`,title:t,class:`bio-properties-panel-open-feel-popup`,onClick:e,children:f(OpenPopup,{})})}var noop$5=()=>{},useBufferedFocus$1=function(e,t){let[i,a]=r(void 0);t.current=d(()=>({focus:t=>{e?e.focus(t):(t===void 0&&(t=1/0),a(t))}}),[e]),y(()=>{i!==void 0&&e&&(e.focus(i),a(!1))},[e,i])},Tr=u((e,t)=>{let{onInput:i,disabled:a,tooltipContainer:o,enableGutters:s,value:l,onLint:u=noop$5,onOpenPopup:d=noop$5,popupOpen:p,contentAttributes:h={},hostLanguage:b=null,singleLine:x=!1}=e,S=c(),[C,E]=r(),[M,N]=r(l||``);useBufferedFocus$1(C,t);let I=useStaticCallback(e=>{i(e),N(e)});y(()=>{let e;return e=new rt({container:S.current,onChange:I,value:M,onLint:u,contentAttributes:h,tooltipContainer:o,enableGutters:s,hostLanguage:b,singleLine:x,lineWrap:!0}),E(e),()=>{u([]),S.current.innerHTML=``,E(null)}},[]),y(()=>{C&&l!==M&&(C.setValue(l),N(l))},[l]);let handleClick=()=>{t.current.focus()};return f(`div`,{class:(0,En.default)(`bio-properties-panel-feelers-editor-container`,p?`popupOpen`:null),children:[p&&f(`div`,{class:`bio-properties-panel-feelers-editor__popup-placeholder`,children:`Opened in popup`}),f(`div`,{name:e.name,class:(0,En.default)(`bio-properties-panel-feelers-editor bio-properties-panel-input`,M?`edited`:null,a?`disabled`:null),ref:S,onClick:handleClick}),!a&&f(OpenPopupButton,{onClick:()=>d(`feelers`)})]})}),noop$4=()=>{},useBufferedFocus=function(e,t){let[i,a]=r(void 0);t.current=d(()=>({focus:t=>{e?e.focus(t):(t===void 0&&(t=1/0),a(t))}}),[e]),y(()=>{i!==void 0&&e&&(e.focus(i),a(!1))},[e,i])},Er=u((e,t)=>{let{contentAttributes:i,enableGutters:a,value:o,onInput:s,onKeyDown:l=noop$4,onBlur:u=noop$4,onFeelToggle:d=noop$4,onLint:p=noop$4,onOpenPopup:h=noop$4,placeholder:b,popupOpen:x,disabled:S,tooltipContainer:C,variables:E,feelLanguageContext:M,translate:N=translateFallback}=e,I=c(),[z,B]=r(),[X,ee]=r(o||``),{builtins:te,dialect:fe,parserDialect:xe,engines:Te}=M||{};useBufferedFocus(z,t);let Oe=useStaticCallback(e=>{s(e),ee(e)}),je=useStaticCallback(()=>{u()});y(()=>{let e,onKeyDown=t=>{if(l(t),t.key!==`Backspace`||!e)return;let r=e.getSelection(),i=r.ranges[r.mainIndex];i.from===0&&i.to===0&&d()};return e=new st({container:I.current,onChange:Oe,onKeyDown,onLint:p,placeholder:b,readOnly:S,tooltipContainer:C,value:X,variables:E,builtins:te,dialect:fe,parserDialect:xe,engines:Te,extensions:[...a?[_t()]:[],vt.lineWrapping,vt.domEventHandlers({blur:je})],contentAttributes:i}),B(e),()=>{p([]),I.current.innerHTML=``,B(null)}},[]),y(()=>{z&&o!==X&&(z.setValue(o),ee(o))},[o]),y(()=>{z&&z.setVariables(E)},[E]),y(()=>{z&&z.setPlaceholder(b)},[b]),y(()=>{z&&z.setEngines(Te)},[Te]);let handleClick=()=>{t.current.focus()};return f(`div`,{class:(0,En.default)(`bio-properties-panel-feel-editor-container`,S?`disabled`:null,x?`popupOpen`:null),children:[x&&f(`div`,{class:`bio-properties-panel-feel-editor__open-popup-placeholder`,children:N(`Opened in editor`)}),f(`div`,{name:e.name,class:(0,En.default)(`bio-properties-panel-input`,X?`edited`:null),ref:I,onClick:handleClick}),!S&&f(OpenPopupButton,{onClick:()=>h(`feel`),translate:N})]})});function FeelIndicator(e){let{active:t}=e;return t?f(`span`,{class:`bio-properties-panel-feel-indicator`,children:`=`}):null}var noop$3=()=>{};function FeelIcon(e){let{feel:t=!1,active:r,disabled:i=!1,onClick:a=noop$3,translate:o=translateFallback}=e,s=o(`FEEL expression is mandatory`),c=o(`Click to ${r?`remove`:`set a`} dynamic value with FEEL expression`),handleClick=e=>{a(e),e.pointerType||e.stopPropagation()};return f(`button`,{type:`button`,class:(0,En.default)(`bio-properties-panel-feel-icon`,r?`active`:null,t===`required`?`required`:`optional`),onClick:handleClick,disabled:t===`required`||i,title:t===`required`?s:c,children:f(Feel,{})})}function isCmd$1(e){return e.altKey?!1:e.ctrlKey||e.metaKey}function isCmdWithChar(e){return isCmd$1(e)&&e.key.length===1&&/^[a-zA-Z]$/.test(e.key)}function ToggleSwitch(e){let{id:t,label:i,onInput:a,value:o,switcherLabel:s,inline:c,onFocus:l,onBlur:u,inputRef:d,tooltip:p}=e,[h,b]=r(o),handleInputCallback=async()=>{a(!o)},handleInput=e=>{handleInputCallback(),b(e.target.value)};return y(()=>{o!==h&&b(o)},[o]),f(`div`,{class:(0,En.default)(`bio-properties-panel-toggle-switch`,{inline:c}),children:[f(`label`,{class:`bio-properties-panel-label`,for:prefixId$7(t),children:f(TooltipWrapper,{value:p,forId:t,element:e.element,children:i})}),f(`div`,{class:`bio-properties-panel-field-wrapper`,children:[f(`label`,{class:`bio-properties-panel-toggle-switch__switcher`,children:[f(`input`,{ref:d,id:prefixId$7(t),class:`bio-properties-panel-input`,type:`checkbox`,onFocus:l,onBlur:u,name:t,onInput:handleInput,checked:!!h}),f(`span`,{class:`bio-properties-panel-toggle-switch__slider`})]}),s&&f(`p`,{class:`bio-properties-panel-toggle-switch__label`,children:s})]})]})}function ToggleSwitchEntry(e){let{element:t,id:r,description:i,label:a,switcherLabel:o,inline:s,getValue:c,setValue:l,onFocus:u,onBlur:d,tooltip:p}=e,h=c(t);return f(`div`,{class:`bio-properties-panel-entry bio-properties-panel-toggle-switch-entry`,"data-entry-id":r,children:[f(ToggleSwitch,{id:r,label:a,value:h,onInput:l,onFocus:u,onBlur:d,switcherLabel:o,inline:s,tooltip:p,element:t},t),f(Description$1,{forId:r,element:t,value:i})]})}function isEdited$7(e){return e&&!!e.checked}function prefixId$7(e){return`bio-properties-panel-${e}`}function NumberField(e){let{debounce:t,disabled:i,displayLabel:a=!0,id:o,inputRef:s,label:c,max:l,min:u,onInput:p,step:h,value:b=``,onFocus:x,onBlur:S,tooltip:C}=e,[E,M]=r(b),N=d(()=>t(e=>{e.validity.valid&&p(e.value?parseFloat(e.value):void 0)}),[p,t]),handleInput=e=>{N(e.target),M(e.target.value)};return y(()=>{b!==E&&M(b)},[b]),f(`div`,{class:`bio-properties-panel-numberfield`,children:[a&&f(`label`,{for:prefixId$6(o),class:`bio-properties-panel-label`,children:f(TooltipWrapper,{value:C,forId:o,element:e.element,children:c})}),f(`input`,{id:prefixId$6(o),ref:s,type:`number`,name:o,spellCheck:`false`,autoComplete:`off`,disabled:i,class:`bio-properties-panel-input`,max:l,min:u,onInput:handleInput,onFocus:x,onBlur:S,step:h,value:E})]})}function NumberFieldEntry(e){let{debounce:t,description:i,disabled:a,element:o,getValue:s,id:c,label:l,max:u,min:d,setValue:p,step:h,onFocus:b,onBlur:x,validate:S,tooltip:C}=e,E=useError(c),[M,N]=r(null),z=s(o);y(()=>{if(I(S)){let e=S(z)||null;N(e)}},[z,S]);let onInput=e=>{if(e!==z){let t=null;I(S)&&(t=S(e)||null),p(e,t),N(t)}},B=E||M;return f(`div`,{class:(0,En.default)(`bio-properties-panel-entry`,B?`has-error`:``),"data-entry-id":c,children:[f(NumberField,{debounce:t,disabled:a,id:c,label:l,onFocus:b,onBlur:x,onInput,max:u,min:d,step:h,value:z,tooltip:C},o),B&&f(`div`,{class:`bio-properties-panel-error`,children:B}),f(Description$1,{forId:c,element:o,value:i})]})}function isEdited$6(e){return e&&!!e.value}function prefixId$6(e){return`bio-properties-panel-${e}`}var noop$2=()=>{};function FeelTextfield(e){let{debounce:t,id:o,element:s,label:l,hostLanguage:u,onInput:d,onBlur:p,onError:h,placeholder:b,feel:x,value:S=``,disabled:C=!1,variables:E,singleLine:M,tooltipContainer:N,OptionalComponent:I=Dr,tooltip:z,translate:B}=e,[X,ee]=r(getInitialFeelLocalValue(x,S)),te=useShowEntryEvent(o),fe=c(),xe=i(e=>{d(e===``||e===`=`?void 0:e)},[d]),Te=isFeelActive(x,X),Oe=getFeelValue(X),je=a(yr),[Me,Pe]=r(void 0),{eventBus:Le}=a(vr),[Re,ze]=r(!1),setFocus=(e=0)=>{let t=fe.current.contains(document.activeElement)?document.activeElement.selectionStart:1/0;Pe(t+e)},Be=useDebounce(xe,t),setAndCommitValue=e=>{Be.cancel?.(),ee(e),xe(e)},Ve=useStaticCallback(()=>{x!==`required`&&setAndCommitValue(Te?Oe:`=`+X)}),handleInputChange=e=>{Te&&(e=`=`+e),e!==X&&(ee(e),Be(e),!Te&&Fe(e)&&e.startsWith(`=`)&&setFocus(-1))},handleOptionalInputOnBlur=e=>{if(e.target.type===`checkbox`)setAndCommitValue(e.target.checked);else{let t=e.target.value.trim();t===X?Be.flush?.():setAndCommitValue(t)}p&&p(e)},handleFeelEditorOnBlur=()=>{Be.flush?.()},handleOnKeyDown=e=>{isCmdWithChar(e)&&Be.flush?.()},He=useStaticCallback((e=[])=>{e.some(e=>e.type===`Syntax Error`)?h(B(`Unparsable FEEL expression.`)):h(void 0)}),handleOpenPopup=(e=`feel`)=>{let t=Le.fire(`propertiesPanel.openPopup`,{element:s,entryId:o,hostLanguage:u,label:l,onInput:handleInputChange,singleLine:M,sourceElement:te.current,tooltipContainer:N,type:e,value:Oe,variables:E,feelLanguageContext:je});t&&Le.once(`propertiesPanelPopup.close`,()=>{ze(!1)}),ze(t===!0)};return y(()=>{Me!==void 0&&(te.current.focus(Me),Pe(void 0))},[Me]),y(()=>{S!==X&&ee(S||(Te?`=`:``))},[S]),y(()=>()=>{Le.fire(`propertiesPanel.closePopup`)},[]),y(()=>{let copyHandler=e=>{Te&&e.clipboardData.setData(`application/FEEL`,e.clipboardData.getData(`text`))},pasteHandler=e=>{if(Te||Re)return;if(e.clipboardData.getData(`application/FEEL`)){setTimeout(()=>{Ve(),setFocus()});return}let t=e.target;if(!(t instanceof HTMLInputElement)&&!(t instanceof HTMLTextAreaElement))return;let r=!t.value,i=t.selectionStart===0&&t.selectionEnd===t.value.length;if(r||i){let t=e.clipboardData.getData(`text`).trim();setAndCommitValue(t),!Te&&Fe(t)&&t.startsWith(`=`)&&setFocus(t.length-1),e.preventDefault()}};return fe.current.addEventListener(`copy`,copyHandler),fe.current.addEventListener(`cut`,copyHandler),fe.current.addEventListener(`paste`,pasteHandler),()=>{fe.current.removeEventListener(`copy`,copyHandler),fe.current.removeEventListener(`cut`,copyHandler),fe.current.removeEventListener(`paste`,pasteHandler)}},[fe,Te,Ve,setFocus]),f(`div`,{class:(0,En.default)(`bio-properties-panel-feel-entry`,{"feel-active":Te}),children:[f(`label`,{for:prefixId$5(o),class:`bio-properties-panel-label`,onClick:()=>setFocus(),children:[f(TooltipWrapper,{value:z,forId:o,element:e.element,children:l}),f(FeelIcon,{label:l,feel:x,onClick:Ve,active:Te,translate:B})]}),f(`div`,{class:`bio-properties-panel-feel-container`,ref:fe,children:[f(FeelIndicator,{active:Te,disabled:!isFeelOptional(x)||C,onClick:Ve}),Te?f(Er,{name:o,onInput:handleInputChange,onBlur:handleFeelEditorOnBlur,onKeyDown:handleOnKeyDown,contentAttributes:{id:prefixId$5(o),"aria-label":l},disabled:C,popupOpen:Re,onFeelToggle:()=>{Ve(),setFocus(!0)},onLint:He,onOpenPopup:handleOpenPopup,placeholder:b,value:Oe,variables:E,feelLanguageContext:je,ref:te,tooltipContainer:N,translate:B}):f(I,{...e,popupOpen:Re,onInput:handleInputChange,onKeyDown:handleOnKeyDown,onBlur:handleOptionalInputOnBlur,contentAttributes:{id:prefixId$5(o),"aria-label":l},value:X,ref:te,onOpenPopup:handleOpenPopup,containerRef:fe})]})]})}var Dr=u((e,t)=>{let{id:r,disabled:i,onInput:a,onKeyDown:o,value:s,onFocus:l,onBlur:u,placeholder:d}=e,p=c();return t.current={focus:e=>{let t=p.current;t&&(t.focus(),typeof e==`number`&&(e>s.length&&(e=s.length),t.setSelectionRange(e,e)))}},f(`input`,{id:prefixId$5(r),type:`text`,ref:p,name:r,spellCheck:`false`,autoComplete:`off`,disabled:i,class:`bio-properties-panel-input`,onInput:e=>a(e.target.value),onFocus:l,onKeyDown:o,onBlur:u,placeholder:d,value:s||``})}),Or=u((e,t)=>{let{id:r,debounce:i,disabled:a,onInput:o,value:s,min:l,max:u,step:d,onFocus:p,onBlur:h}=e,y=c();return t.current={focus:e=>{let t=y.current;t&&(t.focus(),typeof e==`number`&&e!==1/0&&(e>s.length&&(e=s.length),t.setSelectionRange(e,e)))}},f(NumberField,{id:r,debounce:i,disabled:a,displayLabel:!1,inputRef:y,max:u,min:l,onInput:o,step:d,value:s,onFocus:p,onBlur:h})});u((e,t)=>{let{id:r,disabled:i,onInput:a,value:o,onFocus:s,onBlur:l,placeholder:u}=e,d=c();return t.current={focus:()=>{let e=d.current;e&&(e.focus(),e.setSelectionRange(0,0))}},f(`textarea`,{id:prefixId$5(r),type:`text`,ref:d,name:r,spellCheck:`false`,autoComplete:`off`,disabled:i,class:`bio-properties-panel-input`,onInput:e=>a(e.target.value),onFocus:s,onBlur:l,placeholder:u,value:o||``,"data-gramm":`false`})});var kr=u((e,t)=>{let{id:r,onInput:i,value:a,onFocus:o,onBlur:s,switcherLabel:l}=e,u=c();return t.current={focus:()=>{let e=u.current;e&&e.focus()}},f(ToggleSwitch,{id:r,value:a,inputRef:u,onInput:i,onFocus:o,onBlur:s,switcherLabel:l})});u((e,t)=>{let{id:r,disabled:i,onInput:a,value:o,onFocus:s,onBlur:l}=e,u=c(),handleChange=({target:e})=>{a(e.checked)};return t.current={focus:()=>{let e=u.current;e&&e.focus()}},f(`input`,{ref:u,id:prefixId$5(r),name:r,onFocus:s,onBlur:l,type:`checkbox`,class:`bio-properties-panel-input`,onChange:handleChange,checked:o,disabled:i})});function FeelEntry(e){let{element:a,id:o,description:s,debounce:c,disabled:l,feel:u,label:d,getValue:p,setValue:h,tooltipContainer:b,hostLanguage:x,singleLine:S,validate:C,show:E=noop$2,example:M,variables:N,onFocus:z,onBlur:B,placeholder:X,tooltip:ee,translate:te=translateFallback}=e,[fe,xe]=r(null),[Te,Oe]=r(null),je=p(a);y(()=>{if(I(C)){let e=C(je)||null;xe(e)}},[je,C]);let Me=useStaticCallback(e=>{if(e!==p(a)){let t=null;I(C)&&(t=C(e)||null),h(e,t),xe(t)}}),Pe=i(e=>{Oe(e)},[]),Fe=useError(o)||Te||fe;return f(`div`,{class:(0,En.default)(e.class,`bio-properties-panel-entry`,Fe?`has-error`:``),"data-entry-id":o,children:[t(FeelTextfield,{...e,debounce:c,disabled:l,feel:u,id:o,key:a,label:d,onInput:Me,onError:Pe,onFocus:z,onBlur:B,placeholder:X,example:M,hostLanguage:x,singleLine:S,show:E,translate:te,value:je,variables:N,tooltipContainer:b,OptionalComponent:e.OptionalComponent,tooltip:ee}),Fe&&f(`div`,{class:`bio-properties-panel-error`,children:Fe}),f(Description$1,{forId:o,element:a,value:s})]})}function FeelNumberEntry(e){return f(FeelEntry,{class:`bio-properties-panel-feel-number`,OptionalComponent:Or,...e})}function FeelToggleSwitchEntry(e){return f(FeelEntry,{class:`bio-properties-panel-feel-toggle-switch`,OptionalComponent:kr,...e})}function FeelTemplatingEntry(e){return f(FeelEntry,{class:`bio-properties-panel-feel-templating`,OptionalComponent:Tr,...e})}function isEdited$5(e){return e?e.type===`checkbox`?!!e.checked||e.classList.contains(`edited`):!!e.value||e.classList.contains(`edited`):!1}function prefixId$5(e){return`bio-properties-panel-${e}`}function isFeelOptional(e){return e===`optional`||e===`optional-default-enabled`}function isFeelActive(e,t){return!!(e===`required`||Fe(t)&&t.startsWith(`=`))}function getFeelValue(e){return Fe(e)&&e.startsWith(`=`)?e.substring(1):e}function getInitialFeelLocalValue(e,t){return e===`optional-default-enabled`&&(t===void 0||t===``)?`=`:t}function Select(e){let{id:t,label:i,onChange:a,options:o=[],value:s=``,disabled:c,onFocus:l,onBlur:u,tooltip:d}=e,p=useShowEntryEvent(t),[h,b]=r(s),handleChangeCallback=({target:e})=>{a(e.value)},handleChange=e=>{handleChangeCallback(e),b(e.target.value)};return y(()=>{s!==h&&b(s)},[s]),f(`div`,{class:`bio-properties-panel-select`,children:[f(`label`,{for:prefixId$4(t),class:`bio-properties-panel-label`,children:f(TooltipWrapper,{value:d,forId:t,element:e.element,children:i})}),f(`select`,{ref:p,id:prefixId$4(t),name:t,class:`bio-properties-panel-input`,onInput:handleChange,onFocus:l,onBlur:u,value:h,disabled:c,children:o.map((e,t)=>e.children?f(`optgroup`,{label:e.label,children:e.children.map((e,t)=>f(`option`,{value:e.value,disabled:e.disabled,children:e.label},t))},t):f(`option`,{value:e.value,disabled:e.disabled,children:e.label},t))})]})}function SelectEntry(e){let{element:t,id:i,description:a,label:o,getValue:s,setValue:c,getOptions:l,disabled:u,onFocus:d,onBlur:p,validate:h,tooltip:b}=e,x=l(t),S=useError(i),[C,E]=r(null),M=s(t);y(()=>{if(I(h)){let e=h(M)||null;E(e)}},[M,h]);let onChange=e=>{if(e!==M){let t=null;I(h)&&(t=h(e)||null),c(e,t),E(t)}},N=S||C;return f(`div`,{class:(0,En.default)(`bio-properties-panel-entry`,N?`has-error`:``),"data-entry-id":i,children:[f(Select,{id:i,label:o,value:M,onChange,onFocus:d,onBlur:p,options:x,disabled:u,tooltip:b,element:t},t),N&&f(`div`,{class:`bio-properties-panel-error`,children:N}),f(Description$1,{forId:i,element:t,value:a})]})}function isEdited$3(e){return e&&!!e.value}function prefixId$4(e){return`bio-properties-panel-${e}`}function TextArea(e){let{id:t,element:o,label:s,debounce:l,onInput:u,value:d=``,disabled:p,monospace:h,onFocus:b,onBlur:x,onPaste:S,autoResize:C=!0,placeholder:E,rows:M=C?1:2,tooltip:N,translate:I=translateFallback}=e,[z,B]=r(d),X=useShowEntryEvent(t),ee=c(),te=c(z);te.current=z;let{eventBus:fe}=a(vr),[xe,Te]=r(!1),Oe=i(e=>{u(e===``?void 0:e)},[u]),je=useDebounce(Oe,l),handleLocalInput=e=>{e.target.value!==z&&(B(e.target.value),je(e.target.value))},handleOnBlur=e=>{let t=e.target.value.trim();je.cancel?.(),Oe(t),B(t),x&&x(e)},handleOnPaste=e=>{let t=e.target,r=!t.value,i=t.selectionStart===0&&t.selectionEnd===t.value.length;if(r||i){let t=e.clipboardData.getData(`text`).trim();B(t),je(t),S&&S(e),e.preventDefault()}else S&&S(e)},handleOnKeyDown=e=>{isCmdWithChar(e)&&je.flush?.()},handlePopupInput=e=>{e!==te.current&&(B(e),je(e))},handleOpenPopup=()=>{let e=fe.fire(`propertiesPanel.openPopup`,{element:o,entryId:t,label:s,onInput:handlePopupInput,sourceElement:X.current,value:z});e&&fe.once(`propertiesPanelPopup.close`,()=>{je.flush?.(),Te(!1)}),Te(e===!0)};return y(()=>()=>{fe&&fe.fire(`propertiesPanel.closePopup`)},[]),y(()=>{d!==z&&B(d)},[d]),f(`div`,{class:`bio-properties-panel-textarea`,children:[f(`label`,{for:prefixId$2(t),class:`bio-properties-panel-label`,children:f(TooltipWrapper,{value:N,forId:t,element:o,children:s})}),f(`div`,{class:(0,En.default)(`bio-properties-panel-textarea-container`,xe?`popupOpen`:null),ref:ee,children:[xe&&f(`div`,{class:`bio-properties-panel-textarea__open-popup-placeholder`,children:I(`Opened in editor`)}),f(`textarea`,{ref:X,id:prefixId$2(t),name:t,spellCheck:`false`,class:(0,En.default)(`bio-properties-panel-input`,h?`bio-properties-panel-input-monospace`:``,C?`auto-resize`:``),onInput:handleLocalInput,onFocus:b,onKeyDown:handleOnKeyDown,onBlur:handleOnBlur,onPaste:handleOnPaste,placeholder:E,rows:M,value:z,disabled:p,"data-gramm":`false`}),fe&&!p&&f(OpenPopupButton,{onClick:handleOpenPopup,translate:I})]})]})}function TextAreaEntry(e){let{element:t,id:i,description:a,debounce:o,label:s,getValue:c,setValue:l,rows:u,monospace:d,disabled:p,validate:h,onFocus:b,onBlur:x,onPaste:S,placeholder:C,autoResize:E,tooltip:M,translate:N}=e,z=useError(i),[B,X]=r(null),ee=c(t);y(()=>{if(I(h)){let e=h(ee)||null;X(e)}},[ee,h]);let te=useStaticCallback(e=>{if(e!==c(t)){let t=null;I(h)&&(t=h(e)||null),l(e,t),X(t)}}),fe=z||B;return f(`div`,{class:(0,En.default)(`bio-properties-panel-entry`,fe?`has-error`:``),"data-entry-id":i,children:[f(TextArea,{id:i,label:s,value:ee,onInput:te,onFocus:b,onBlur:x,onPaste:S,rows:u,debounce:o,monospace:d,disabled:p,placeholder:C,autoResize:E,tooltip:M,translate:N,element:t},t),fe&&f(`div`,{class:`bio-properties-panel-error`,children:fe}),f(Description$1,{forId:i,element:t,value:a})]})}function isEdited$1(e){return e&&!!e.value}function prefixId$2(e){return`bio-properties-panel-${e}`}function Textfield(e){let{debounce:t,disabled:a=!1,id:o,label:s,onInput:c,onFocus:l,onBlur:u,onPaste:d,placeholder:p,value:h=``,tooltip:b}=e,[x,S]=r(h||``),C=useShowEntryEvent(o),E=i(e=>{c(e===``?void 0:e)},[c]),M=useDebounce(E,t),handleOnBlur=e=>{let t=e.target.value.trim();M.cancel?.(),E(t),S(t),u&&u(e)},handleOnPaste=e=>{let t=e.target,r=!t.value,i=t.selectionStart===0&&t.selectionEnd===t.value.length;if(r||i){let t=e.clipboardData.getData(`text`).trim();S(t),M(t),d&&d(e),e.preventDefault()}else d&&d(e)},handleLocalInput=e=>{e.target.value!==x&&(S(e.target.value),M(e.target.value))};y(()=>{h!==x&&S(h)},[h]);let handleOnKeyDown=e=>{isCmdWithChar(e)&&M.flush?.()};return f(`div`,{class:`bio-properties-panel-textfield`,children:[f(`label`,{for:prefixId$1(o),class:`bio-properties-panel-label`,children:f(TooltipWrapper,{value:b,forId:o,element:e.element,children:s})}),f(`input`,{ref:C,id:prefixId$1(o),type:`text`,name:o,spellCheck:`false`,autoComplete:`off`,disabled:a,class:`bio-properties-panel-input`,onInput:handleLocalInput,onFocus:l,onKeyDown:handleOnKeyDown,onBlur:handleOnBlur,onPaste:handleOnPaste,placeholder:p,value:x})]})}function TextfieldEntry(e){let{element:t,id:i,description:a,debounce:o,disabled:s,label:c,getValue:l,setValue:u,validate:d,onFocus:p,onBlur:h,onPaste:b,placeholder:x,tooltip:S}=e,C=useError(i),[E,M]=r(null),N=l(t);y(()=>{if(I(d)){let e=d(N)||null;M(e)}},[N,d]);let z=useStaticCallback(e=>{if(e!==l(t)){let t=null;I(d)&&(t=d(e)||null),u(e,t),M(t)}}),B=C||E;return f(`div`,{class:(0,En.default)(`bio-properties-panel-entry`,B?`has-error`:``),"data-entry-id":i,children:[f(Textfield,{debounce:o,disabled:s,id:i,label:c,onInput:z,onFocus:p,onBlur:h,onPaste:b,placeholder:x,value:N,tooltip:S,element:t},t),B&&f(`div`,{class:`bio-properties-panel-error`,children:B}),f(Description$1,{forId:i,element:t,value:a})]})}function isEdited(e){return e&&!!e.value}function prefixId$1(e){return`bio-properties-panel-${e}`}function getPopupTitle({element:e,label:t}){let r=``;return e&&e.type&&(r=`${e.type} / `),`${r}${t}`}function createDragger(e,t){let r,i,a;function onDragStart(e){r=this,i=e.clientX,a=e.clientY,e.dataTransfer&&e.dataTransfer.setDragImage(t||emptyCanvas(),0,0),document.addEventListener(`dragover`,onDrag,!0),document.addEventListener(`dragenter`,preventDefault,!0),document.addEventListener(`dragend`,onEnd),document.addEventListener(`drop`,preventDefault)}function onDrag(t){let o={x:t.clientX-i,y:t.clientY-a};return e.call(r,t,o)}function onEnd(){document.removeEventListener(`dragover`,onDrag,!0),document.removeEventListener(`dragenter`,preventDefault,!0),document.removeEventListener(`dragend`,onEnd),document.removeEventListener(`drop`,preventDefault)}return onDragStart}function preventDefault(e){e.preventDefault(),e.stopPropagation()}function emptyCanvas(){return ht(`<canvas width="0" height="0" />`)}var noop=()=>{};function PopupComponent(e,t){let{className:r,delayInitialFocus:i,position:a,width:o,height:s,onClose:l,onPostActivate:u=noop,onPostDeactivate:d=noop,returnFocus:p=!0,closeOnEscape:h=!0,allowFocusMove=()=>!0,title:b}=e,x=c(null),S=c(null),C=t||S,handleKeydown=e=>{e.stopPropagation(),h&&e.key===`Escape`&&l()},handleFocus=()=>{x.current&&x.current.activate()},{top:E,left:M}=a||getCenterPosition(o,s),N={};return X(E)&&X(M)&&(N.top=E+`px`,N.left=M+`px`),o&&(N.width=o+`px`),s&&(N.height=s+`px`),y(()=>(C.current&&C.current.addEventListener(`focusin`,handleFocus),()=>{C.current&&C.current.removeEventListener(`focusin`,handleFocus)}),[C]),y(()=>(C.current&&(x.current=ot(C.current,{clickOutsideDeactivates:!0,delayInitialFocus:i,fallbackFocus:C.current,isKeyForward:e=>isTab(e)&&!e.shiftKey&&allowFocusMove(e),isKeyBackward:e=>isTab(e)&&e.shiftKey&&allowFocusMove(e),onPostActivate:u,onPostDeactivate:d,returnFocusOnDeactivate:p}),x.current.activate()),()=>x.current&&x.current.deactivate()),[C]),f(`div`,{"aria-label":b,tabIndex:-1,ref:C,onKeyDown:handleKeydown,role:`dialog`,class:(0,En.default)(`bio-properties-panel-popup`,`bio-theme-parent`,r),style:N,children:e.children})}var Ar=u(PopupComponent);Ar.Title=Title,Ar.Body=Body,Ar.Footer=Footer;function Title(e){let{eventBus:t}=a(vr),{children:r,className:i,draggable:o,title:l,showCloseButton:u=!1,closeButtonTooltip:d=`Close popup`,onClose:p,...h}=e,y=c({startPosition:null,newPosition:null}),b=c(),x=c(),onMove=(e,r)=>{cancel(e);let{x:i,y:a}=r,o={x:y.current.startPosition.x+i,y:y.current.startPosition.y+a},s=getPopupParent(x.current);s.style.top=o.y+`px`,s.style.left=o.x+`px`,t?.fire(`feelPopup.dragover`,{newPosition:o,delta:r})},onMoveStart=e=>{createDragger(onMove,b.current)(e),e.stopPropagation();let r=getPopupParent(x.current).getBoundingClientRect();y.current.startPosition={x:r.left,y:r.top},t?.fire(`feelPopup.dragstart`)},onMoveEnd=()=>{y.current.newPosition=null,t?.fire(`feelPopup.dragend`)};return f(`div`,{class:(0,En.default)(`bio-properties-panel-popup__header`,o&&`draggable`,i),ref:x,draggable:o,onDragStart:onMoveStart,onDragEnd:onMoveEnd,...h,children:[o&&f(s,{children:[f(`div`,{ref:b,class:`bio-properties-panel-popup__drag-preview`}),f(`div`,{class:`bio-properties-panel-popup__drag-handle`,children:f(Drag,{})})]}),f(`div`,{class:`bio-properties-panel-popup__title`,children:l}),r,u&&f(`button`,{type:`button`,title:d,class:`bio-properties-panel-popup__close`,onClick:p,children:f(Close,{})})]})}function Body(e){let{children:t,className:r,...i}=e;return f(`div`,{class:(0,En.default)(`bio-properties-panel-popup__body`,r),...i,children:t})}function Footer(e){let{children:t,className:r,...i}=e;return f(`div`,{class:(0,En.default)(`bio-properties-panel-popup__footer`,r),...i,children:e.children})}function getCenterPosition(e,t){if(!e||!t)return{};let r=window.innerWidth||document.documentElement.clientWidth,i=window.innerHeight||document.documentElement.clientHeight;return{left:Math.max(0,(r-e)/2),top:Math.max(0,(i-t)/2)}}function isTab(e){return e.key===`Tab`}function getPopupParent(e){return e.closest(`.bio-properties-panel-popup`)}function cancel(e){e.preventDefault(),e.stopPropagation()}var jr=700,Mr=400;function FeelPopup(e){let{entryId:t,onInput:r,onClose:i,title:a,type:o,value:l,links:u,variables:d,hostLanguage:p,singleLine:h,sourceElement:b,tooltipContainer:x,feelLanguageContext:S}=e,C=c(),E=c(),M=c(!1),handleSetReturnFocus=()=>{b&&b.focus()},onKeyDownCapture=e=>{e.key===`Escape`&&(M.current=autoCompletionOpen(e.target))},onKeyDown=e=>{e.key===`Escape`&&(M.current||=(i(),!1))};return y(()=>{C.current&&C.current.focus()},[C]),f(Ar,{className:`bio-properties-panel-feel-popup`,title:a,returnFocus:!1,closeOnEscape:!1,delayInitialFocus:!1,allowFocusMove:e=>!isSnippetNavigation(e),onPostDeactivate:handleSetReturnFocus,height:Mr,width:jr,ref:E,children:[f(Ar.Title,{title:a,showCloseButton:!0,closeButtonTooltip:`Save and close`,onClose:i,draggable:!0,children:f(s,{children:(u||[]).map((e,t)=>f(`a`,{rel:`noreferrer`,href:e.href,target:`_blank`,class:`bio-properties-panel-feel-popup__title-link`,children:[e.title,f(Launch,{})]},t))})}),f(Ar.Body,{children:f(`div`,{onKeyDownCapture,onKeyDown,class:`bio-properties-panel-feel-popup__body`,children:[o===`feel`&&f(Er,{enableGutters:!0,name:t,onInput:r,value:l,variables:d,feelLanguageContext:S,ref:C,tooltipContainer:x}),o===`feelers`&&f(Tr,{contentAttributes:{"aria-label":a},enableGutters:!0,hostLanguage:p,name:t,onInput:r,value:l,ref:C,singleLine:h,tooltipContainer:x})]})})]})}function autoCompletionOpen(e){let t=e.closest(`.cm-editor`);return t?t.querySelector(`.cm-tooltip-autocomplete`):null}function isSnippetNavigation(e){let t=e.target.closest(`.cm-editor`);return!!(t&&t.querySelector(`.cm-snippetField`))}var Nr=700,Pr=400;function TextPopup(e){let{entryId:t,onInput:r,onClose:i,title:a,value:o,sourceElement:s}=e,l=c(),u=c(),handleSetReturnFocus=()=>{s&&s.focus()};return y(()=>{l.current&&l.current.focus()},[l]),f(Ar,{className:`bio-properties-panel-text-popup`,title:a,returnFocus:!1,closeOnEscape:!0,delayInitialFocus:!1,onClose:i,onPostDeactivate:handleSetReturnFocus,height:Pr,width:Nr,ref:u,children:[f(Ar.Title,{title:a,showCloseButton:!0,closeButtonTooltip:`Save and close`,onClose:i,draggable:!0}),f(Ar.Body,{children:f(`textarea`,{id:prefixId(t),name:t,class:`bio-properties-panel-input`,ref:l,onInput:e=>r(e.target.value),value:o||``,spellCheck:`false`,autoComplete:`off`,"aria-label":a,"data-gramm":`false`})})]})}function prefixId(e){return`bio-properties-panel-popup-${e}`}var Fr=`text`,Ir=1e3,Lr=500,Popup=class{constructor(e,t={}){this._eventBus=e,this._config=t,this._isOpen=!1,this.registerProvider(`feel`,Lr,FeelPopup),this.registerProvider(`feelers`,Lr,FeelPopup),this.registerProvider(`text`,Lr,TextPopup),e.on(`propertiesPanel.openPopup`,(e,t)=>this.open(t.entryId,t,t.sourceElement)),e.on([`propertiesPanel.closePopup`,`propertiesPanel.detach`],()=>{this.close()})}registerProvider(e,t,r){r||(r=t,t=Ir),this._eventBus.on(`propertiesPanelPopup.getProviders.`+e,t,function(e){e.providers.push(r)})}_getProviders(e){let t=this._eventBus.createEvent({type:`propertiesPanelPopup.getProviders.`+e,providers:[]});return this._eventBus.fire(t),t.providers}isOpen(){return this._isOpen}open(e,t,r){return this.close(),this._openPopup({...t,entryId:e,sourceElement:r})}close(){this._closePopup()}_openPopup(e){let{element:t,label:r,sourceElement:i,type:a=Fr}=e,o=this._getProviders(a)[0];return o?(this._isOpen=!0,this._eventBus.fire(`propertiesPanelPopup.open`,{container:this._config.feelPopupContainer,config:{...e,component:o,links:this._config.getFeelPopupLinks?.(a)||[],onClose:()=>{this._closePopup(),setTimeout(()=>{i&&i.focus()},0)},title:getPopupTitle({element:t,label:r})}}),!0):!1}_closePopup(){this._isOpen&&(this._isOpen=!1,this._eventBus.fire(`propertiesPanelPopup.close`))}};Popup.$inject=[`eventBus`,`config.propertiesPanel`];var PopupRenderer=class{constructor(e){this._eventBus=e,this._container=null,this._element=null,e.on(`propertiesPanelPopup.open`,e=>{this._renderPopup(e)}),e.on(`propertiesPanelPopup.close`,()=>{this._removePopup()})}_renderPopup(e){let{container:t,config:r}=e;t=this._container=getContainer(t)||document.body;let i=this._element=createElement();t.appendChild(i),this._emit(`feelPopup.open`);let a=r.component;l(f(vr.Provider,{value:{eventBus:this._eventBus},children:f(a,{...r,eventBus:this._eventBus})}),i),this._emit(`feelPopup.opened`,{domNode:i})}_removePopup(){this._container&&(this._emit(`feelPopup.close`,{domNode:this._element}),l(null,this._element),this._container.removeChild(this._element),this._container=null,this._element=null,this._emit(`feelPopup.closed`))}_emit(e,t){this._eventBus.fire(e,t)}};PopupRenderer.$inject=[`eventBus`];function createElement(){let e=document.createElement(`div`);return e.classList.add(`bio-properties-panel-popup-container`),e}function getContainer(e){return Fe(e)?gt(e):e}var Rr={__init__:[`feelPopup`,`feelPopupRenderer`],feelPopup:[`type`,Popup],feelPopupRenderer:[`type`,PopupRenderer]};function getPropertiesPanelHeaderProvider(e={}){let{getDocumentationRef:t,formFields:r,translate:i}=e;return{getElementLabel:e=>{let{type:t}=e,i=r.get(t).config;return i.getSubheading?i.getSubheading(e):e.label},getElementIcon:e=>{let{type:t}=e,i=r.get(t).config,a=i.icon||Jt(t);if(a)return function IconComponent(){return f(a,{width:`36`,height:`36`,viewBox:`0 0 54 54`})};if(i.iconUrl)return getPaletteIcon({iconUrl:i.iconUrl,label:i.label})},getTypeLabel:e=>{let{type:t}=e;if(t==="default")return i(`Form`);let a=r.get(t).config;return i(a.name||a.label||t)},getDocumentationRef:t}}var zr={getEmpty:()=>({text:`Select a form field to edit its properties.`}),getMultiple:()=>({text:`Multiple form fields are selected. Select a single form field to edit its properties.`})};function useVariables(){let e=useService(`formEditor`).getSchema();return Ft(e)}var Br={};function PropertiesPanel(){let e=useService(`eventBus`),t=useService(`modeling`),a=useService(`selection`),o=useService(`formEditor`),s=useService(`formFields`),c=useService(`propertiesPanel`),l=useService(`config.propertiesPanel`)||Br,u=useService(`translate`),{feelPopupContainer:h}=l,[y,b]=r({selectedFormField:a.get()||o._getState().schema}),x=y.selectedFormField,S=i(t=>{b({selectedFormField:a.get()||o._getState().schema}),e.fire(`propertiesPanel.updated`,{formField:t})},[e,o,a]);p(()=>(e.on(`changed`,S),e.on(`import.done`,S),e.on(`selection.changed`,S),()=>{e.off(`changed`,S),e.off(`import.done`,S),e.off(`selection.changed`,S)}),[e,S]);let onFocus=()=>e.fire(`propertiesPanel.focusin`),onBlur=()=>e.fire(`propertiesPanel.focusout`),C=i((e,r,i)=>t.editFormField(e,r,i),[t]),E=c.getProviders(),M=d(()=>te(E,function(e,t){return ee(x)?[]:t.getGroups(x,C)(e)},[]),[E,x,C]),N=d(()=>getPropertiesPanelHeaderProvider({getDocumentationRef:l.getDocumentationRef,formFields:s,translate:u}),[s,l,u]);return f(`div`,{class:`fjs-properties-container`,"input-handle-modified-keys":`y,z`,children:f(`div`,{class:`fjs-properties-panel`,"data-field":x&&x.id,onFocusCapture:onFocus,onBlurCapture:onBlur,children:f(PropertiesPanel$1,{element:x,eventBus:e,groups:M,headerProvider:N,placeholderProvider:zr,feelPopupContainer:h})})})}var Vr=/^fjs-cursor-.*$/;function set(e){let t=pt(document.body);t.removeMatching(Vr),e&&t.add(`fjs-cursor-`+e)}function unset(){set(null)}var Hr=`fjs-drag-container`,Ur=`fjs-drop-container-vertical`,Wr=`fjs-drop-container-horizontal`,Gr=`fjs-drag-move`,Kr=`fjs-drag-row-move`,qr=`fjs-drag-copy`,Jr=`fjs-no-drop`,Yr=`fjs-no-move`,Xr=`fjs-error-drop`,Dragging=class{constructor(e,t,r,i,a,o){this._formFieldRegistry=e,this._formLayouter=t,this._formLayoutValidator=r,this._eventBus=i,this._modeling=a,this._pathRegistry=o}getTargetIndex(e,t,r){let i=r&&r.querySelector(`.fjs-element`),a=i&&this._formFieldRegistry.get(i.dataset.id);return a?getFormFieldIndex$1(t,a):e?getFormFieldIndex$1(t,this._formFieldRegistry.get(e.components[e.components.length-1]))+1:t.components.length}validateDrop(e,t){let r=e.querySelector(`.fjs-element`),i=this._formLayouter.getRow(t.dataset.rowId),a,o,s;if(r){if(o=this._formFieldRegistry.get(r.dataset.id),!o)return`No associated form field in the registry`;if(a=(o.layout||{}).columns,isRow(t)){s=getFormParent(t).dataset.id;let e=this._formLayoutValidator.validateField(o,a,i);if(e)return e}else s=t.dataset.id;if(!s)return`Drop is not a valid target`;let e=this._formFieldRegistry.get(s),c=this._formFieldRegistry.get(o._parent);if(e!==c){let t=this._pathRegistry.getValuePath(e),r=this._pathRegistry.getValuePath(c);if(t.join(`.`)!==r.join(`.`)&&!this._pathRegistry.executeRecursivelyOnFields(o,({field:e,isClosed:r,isRepeatable:i})=>{let a={cutoffNode:c.id},o=this._pathRegistry.getValuePath(e,a);return this._pathRegistry.canClaimPath([...t,...o],{isClosed:r,isRepeatable:i,knownAncestorIds:kt(s,this._formFieldRegistry)})}))return`Drop not allowed by path registry`}}}moveField(e,t,r,i,a){let o=e.querySelector(`.fjs-element`),s=this._formFieldRegistry.get(o.dataset.id),c=getFormParent(t),l=this._formFieldRegistry.get(c.dataset.id),u=getFormFieldIndex$1(l,s),d=this._formLayouter.getRowForField(s);this._modeling.moveFormField(s,l,i,u,a,d,r)}createNewField(e,t,r,i){let a={type:e.dataset.fieldType};a={...a,_parent:r.id,layout:{row:t?t.id:this._formLayouter.nextRowId(),columns:null}},this._modeling.addFormField(a,r,i)}handleRowDrop(e,t,r,i){let a=this._formFieldRegistry.get(t.dataset.id),o=e.querySelector(`.fjs-layout-row`),s=this._formLayouter.getRow(o.dataset.rowId);s.components.forEach((e,t)=>{let o=this._formFieldRegistry.get(e),c=getFormParent(r),l=this._formFieldRegistry.get(c.dataset.id),u=i&&i.querySelector(`.fjs-layout-row`),d=u&&this._formLayouter.getRow(u.dataset.rowId),f=i&&this._formFieldRegistry.get(d.components[0]),p=getFormFieldIndex$1(l,o),h=(u?getFormFieldIndex$1(a,f):a.components.length)+t;this._modeling.moveFormField(o,l,a,p,h,s,s)})}handleElementDrop(e,t,r,i,a){let o=this._formFieldRegistry.get(getFormParent(t).dataset.id),s;if(isRow(t)&&(s=this._formLayouter.getRow(t.dataset.rowId)),a.cancel(!0),this.validateDrop(e,t))return;let c=this.getTargetIndex(s,o,i);isPalette(r)?this.createNewField(e,s,o,c):this.moveField(e,r,s,o,c)}createDragulaInstance(e){let{container:t,mirrorContainer:r}=e||{},i=De({direction:function(e,t){return isRow(t)?`horizontal`:`vertical`},mirrorContainer:r,isContainer(e){return t.some(t=>e.classList.contains(t))},moves(e,t,r){return!r.classList.contains(Yr)&&(e.classList.contains(Gr)||e.classList.contains(qr)||e.classList.contains(Kr))},copy(e){return e.classList.contains(qr)},accepts:(e,t)=>(unsetDropNotAllowed(t),e.classList.contains(Kr)?!t.classList.contains(Wr):(this.validateDrop(e,t)&&setDropNotAllowed(t),!t.classList.contains(Jr))),transformOffset:(e,t,r)=>{if(r.classList.contains(Kr)){let e={x:-5,y:-60};return{left:t.clientX+e.x,top:t.clientY+e.y}}if(r.classList.contains(Gr)){let e={x:-5,y:-15};return{left:t.clientX+e.x,top:t.clientY+e.y}}return e},slideFactorX:10,slideFactorY:5});return i.on(`drag`,(e,t)=>{this.emit(`drag.start`,{element:e,source:t})}),i.on(`dragend`,e=>{this.emit(`drag.end`,{element:e})}),i.on(`drop`,(e,t,r,i)=>{this.emit(`drag.drop`,{element:e,target:t,source:r,sibling:i})}),i.on(`over`,(e,t,r)=>{this.emit(`drag.hover`,{element:e,container:t,source:r})}),i.on(`out`,(e,t,r)=>{this.emit(`drag.out`,{element:e,container:t,source:r})}),i.on(`cancel`,(e,t,r)=>{this.emit(`drag.cancel`,{element:e,container:t,source:r})}),i.on(`drop`,(e,t,r,a)=>{t?isDragRow(e)?this.handleRowDrop(e,t,r,a):this.handleElementDrop(e,t,r,a,i):i.remove()}),this.emit(`dragula.created`,i),i}emit(e,t){this._eventBus.fire(e,t)}};Dragging.$inject=[`formFieldRegistry`,`formLayouter`,`formLayoutValidator`,`eventBus`,`modeling`,`pathRegistry`];function getFormFieldIndex$1(e,t){let r=e.components.length;return e.components.forEach(({id:e},i)=>{e===t.id&&(r=i)}),r}function isRow(e){return e.classList.contains(`fjs-layout-row`)}function isDragRow(e){return e.classList.contains(Kr)}function isPalette(e){return e.classList.contains(`fjs-palette-fields`)}function getFormParent(e){return e.closest(`.fjs-element`)}function setDropNotAllowed(e){e.classList.add(Xr),set(`not-allowed`)}function unsetDropNotAllowed(e){e.classList.remove(Xr),set(`grabbing`)}function FieldDragPreview(e){let{class:t,Icon:r,label:i}=e;return f(`div`,{class:(0,En.default)(`fjs-field-preview`,t),children:[f(r,{class:`fjs-field-preview-icon`,width:`36`,height:`36`,viewBox:`0 0 54 54`}),f(`span`,{class:`fjs-field-preview-text`,children:i})]})}var Zr=/^cds--col(-lg)?/,Qr=16;function FieldResizer(e){let{field:t,position:r}=e,i=c(null),a=useService(`formLayoutValidator`),o=useService(`modeling`),s=c({startColumns:0,newColumns:0}),l=throttle((e,o)=>{let{x:c}=o,{layout:l={}}=t,u=calculateNewColumns(i.current,l.columns||s.current.startColumns,c,r);if(!a.validateField(t,u)){s.current.newColumns=u;let e=i.current.closest(`.fjs-layout-column`);removeMatching(e,Zr),e.classList.add(`cds--col-lg-${u}`)}}),onResizeStart=e=>{let i=getElementNode(t),a=getParent(i);createDragger$1(l)(e);let o=getColumnNode(i).getBoundingClientRect().width+Qr;s.current.startColumns=asColumns(o,a),setResizing(i,r)},onResizeEnd=()=>{let{layout:e={}}=t;s.current.newColumns&&o.editFormField(t,`layout`,{...e,columns:s.current.newColumns}),unsetResizing(getElementNode(t),r),s.current.newColumns=null};return t.type==="default"?null:f(`div`,{ref:i,class:(0,En.default)(`fjs-field-resize-handle`,`fjs-field-resize-handle-`+r,Yr),draggable:!0,onDragStart:onResizeStart,onDragEnd:onResizeEnd})}function asColumns(e,t){let r=1/16*t.getBoundingClientRect().width;return Math.round(e/r)}function calculateNewColumns(e,t,r,i){let a=getParent(e);return i===`left`&&(r*=-1),t+asColumns(r,a)}function getParent(e){return e.closest(`.fjs-layout-row`)}function removeMatching(e,t){return pt(e).removeMatching(t)}function getColumnNode(e){return e.closest(`.fjs-layout-column`)}function getElementNode(e){return gt(`.fjs-element[data-id="`+e.id+`"]`)}function setResizing(e,t){pt(e).add(`fjs-element-resizing-`+t)}function unsetResizing(e,t){pt(e).remove(`fjs-element-resizing-`+t)}function ContextPad(e){return e.children?f(`div`,{class:`fjs-context-pad`,children:e.children}):null}function ContextPadContent(e){let{field:t}=e,r=useService(`formFieldContextActions`);if(!useService(`selection`).isSelected(t)||t.type==="default")return null;let i=r.getEntries(t),a=Object.entries(i).filter(([,e])=>e.group!==`morph`);return f(ContextPad,{children:a.map(([e,t])=>f(`button`,{type:`button`,title:t.title,class:`fjs-context-pad-item`,onClick:t.action,children:f(Zn,{})},e))})}function EmptyGroup({translate:e}){return f(`div`,{class:`fjs-empty-component`,children:f(`span`,{class:`fjs-empty-component-text`,children:e(`Drag and drop components here.`)})})}function EmptyForm(){let e=useService(`translate`);return f(`div`,{class:`fjs-empty-editor`,children:f(`div`,{class:`fjs-empty-editor-card`,children:[f(ur,{}),f(`h2`,{children:e(`Build your form`)}),f(`span`,{children:e(`Drag and drop components here to start designing.`)}),f(`span`,{children:e(`Use the preview window to test your form.`)}),f(Slot,{name:`editor-empty-state__footer`})]})})}function Empty(e){let t=useService(`translate`);return[`group`,`dynamiclist`].includes(e.field.type)?f(EmptyGroup,{translate:t}):e.field.type==="default"?f(EmptyForm,{}):null}function Element$1(e){let t=useService(`eventBus`),o=useService(`selection`),{hoverInfo:s}=a(tn),{field:l}=e,{id:u,type:h,showOutline:b}=l,x=c(),[S,C]=r(!1);y(()=>{function scrollIntoView({selection:e}){let t=Kt(x.current);if(!e||e.type==="default"||e.id!==u||!t||!x.current)return;let r=x.current.getBoundingClientRect(),i=t.getBoundingClientRect(),a=r.height>i.height;(r.bottom>i.bottom||r.top<i.top)&&!a&&x.current.scrollIntoView({behavior:`auto`,block:`nearest`})}return t.on(`selection.changed`,scrollIntoView),()=>t.off(`selection.changed`,scrollIntoView)},[t,u]),p(()=>{o.isSelected(l)&&x.current.focus()},[o,l]);let E=i(e=>{let t=e.target.closest(`[data-id]`);t&&t.dataset.id===l.id&&o.toggle(l)},[l,o]),M=o.isSelected(l),N=d(()=>{let t=[];return e.class&&t.push(...e.class.split(` `)),M&&t.push(`fjs-editor-selected`),[`group`,`dynamiclist`].includes(h)&&t.push(b?`fjs-outlined`:`fjs-dashed-outlined`),S&&t.push(`fjs-editor-hovered`),t.join(` `)},[S,M,e.class,b,h]),onKeyPress=e=>{e.key===`Enter`&&(e.stopPropagation(),o.toggle(l))};return f(`div`,{class:N,"data-id":u,"data-field-type":h,tabIndex:h==="default"?-1:0,onClick:E,onKeyPress,onMouseOver:e=>{s.cleanup&&s.cleanup(),C(!0),s.cleanup=()=>C(!1),e.stopPropagation()},ref:x,children:[f(DebugColumns,{field:l}),f(ContextPadContent,{field:l}),e.children,f(FieldResizer,{position:`left`,field:l}),f(FieldResizer,{position:`right`,field:l})]})}function DebugColumns(e){let{field:t}=e;return!useService(`config.debugColumns`)||t.type=="default"?null:f(`div`,{style:`width: fit-content; padding: 2px 6px; height: 16px; background: var(--color-blue-205-100-95); display: flex; justify-content: center; align-items: center; position: absolute; bottom: -2px; z-index: 2; font-size: 10px; right: 3px;`,class:`fjs-debug-columns`,children:(t.layout||{}).columns||`auto`})}function Children(e){let{field:t}=e,{id:r,type:i,_parent:a}=t,o=[`fjs-children`,Ur];return i==="default"&&!a&&o.push(`fjs-editor-form-root`),e.class&&o.push(...e.class.split(` `)),f(`div`,{class:o.join(` `),"data-id":r,children:e.children})}function Row(e){let{row:t}=e,{id:r}=t,i=[Wr];return e.class&&i.push(...e.class.split(` `)),f(`div`,{class:(0,En.default)(Kr),children:[f(`span`,{class:`fjs-row-dragger`,children:f($n,{})}),f(`div`,{class:i.join(` `),style:e.style,"data-row-id":r,children:e.children})]})}function Column(e){let{field:t}=e,r=[Gr];return t.type==="default"?e.children:(e.class&&r.push(...e.class.split(` `)),f(`div`,{"data-field-type":t.type,class:r.join(` `),children:e.children}))}function FormEditor$1(){let e=useService(`dragging`),t=useService(`eventBus`),a=useService(`formEditor`),o=useService(`injector`),s=useService(`selection`),{schema:l,properties:u}=a._getState(),{ariaLabel:p}=u,h=c(null),[,b]=r(l),[x,S]=r(!1);y(()=>{function handleSelectionChanged(e){b(e.selection||l)}return t.on(`selection.changed`,handleSelectionChanged),()=>{t.off(`selection.changed`,handleSelectionChanged)}},[t,l]),y(()=>{b(s.get()||l)},[s,l]);let[C,E]=r(null),M={drake:C};y(()=>{let r=e.createDragulaInstance({container:[Hr,Ur,Wr],mirrorContainer:h.current});E(r);let onDetach=()=>{r&&(r.destroy(),t.fire(`dragula.destroyed`))},onAttach=()=>{onDetach(),r=e.createDragulaInstance({container:[Hr,Ur,Wr],mirrorContainer:h.current}),E(r)},onCreate=e=>{E(e)},onDragStart=()=>{set(`grabbing`)},onDragEnd=()=>{unset()};return t.on(`attach`,onAttach),t.on(`detach`,onDetach),t.on(`dragula.created`,onCreate),t.on(`drag.start`,onDragStart),t.on(`drag.end`,onDragEnd),()=>{onDetach(),t.off(`attach`,onAttach),t.off(`detach`,onDetach),t.off(`dragula.created`,onCreate),t.off(`drag.start`,onDragStart),t.off(`drag.end`,onDragEnd)}},[e,t]),y(()=>{x||(S(!0),t.fire(`rendered`),t.fire(`formEditor.rendered`))},[t,x]);let N=d(()=>({Children,Column,Element:Element$1,Empty,Row,hoverInfo:{},applyVisibilityConditions:!1}),[]),I=d(()=>({getService(e,t=!0){return e===`form`?{_getState(){return{data:{},errors:{},properties:{ariaLabel:p,disabled:!0},schema:l}}}:o.get(e,t)},formId:a._id}),[p,a,o,l]),z=i(()=>{},[]),B=i(()=>{},[]);return f(`div`,{class:`fjs-form-editor`,children:f(SlotFillRoot,{children:[f(Gn.Provider,{value:M,children:[f(ModularSection,{rootClass:`fjs-palette-container`,section:`palette`,children:f(Palette,{})}),f(`div`,{ref:h,class:`fjs-form-container`,children:f(en.Provider,{value:I,children:f(tn.Provider,{value:N,children:f($t,{onSubmit:z,onReset:B})})})}),f(CreatePreview,{})]}),f(ModularSection,{rootClass:`fjs-properties-panel-container`,section:`propertiesPanel`,children:f(PropertiesPanel,{})}),f(ModularSection,{rootClass:`fjs-render-injector-container`,section:`renderInjector`,children:f(InjectedRendersRoot,{})})]})})}function CreatePreview(e){let{drake:t}=a(Gn),r=useService(`formFields`);return y(()=>{if(!t)return;function handleCloned(e,t,i){let a=e.dataset.fieldType;if(a){let i=findPaletteEntry$1(a,r);if(!i)return;let{label:o}=i,s=getPaletteIcon(i);e.innerHTML=``,e.class=`gu-mirror`,e.classList.add(`fjs-field-preview-container`),t.classList.contains(`fjs-palette-field`)&&e.classList.add(`cds--col`),l(f(FieldDragPreview,{label:o,Icon:s}),e)}else[`fjs-context-pad`,`fjs-row-dragger`,`fjs-debug-columns`].forEach(t=>{let r=e.querySelectorAll(`.`+t);r.length&&r.forEach(e=>e.remove())}),e.classList.add(`cds--grid`),e.classList.add(`cds--grid--condensed`)}return t.on(`cloned`,handleCloned),()=>t.off(`cloned`,handleCloned)},[t,r]),null}function findPaletteEntry$1(e,t){return collectPaletteEntries(t).find(t=>t.type===e)}var Renderer=class{constructor(e,t,i,a){let{container:o,compact:s=!1}=e;t.on(`form.init`,function(){t.fire(`canvas.init`,{svg:o,viewport:null})}),o.addEventListener(`mouseover`,function(){document.activeElement===document.body&&o.focus({preventScroll:!0})}),o.addEventListener(`click`,function(e){o.contains(document.activeElement)||o.focus({preventScroll:!0})});let App=()=>{let[e,t]=r(i._getState()),o={getService(e,t=!0){return a.get(e,t)}};i.on(`changed`,e=>{t(e)});let{schema:c}=e;return c?f(`div`,{class:`fjs-container fjs-editor-container ${s?`fjs-editor-compact`:``}`,children:f(Kn.Provider,{value:o,children:f(FormEditor$1,{})})}):null};t.on(`form.init`,()=>{l(f(App,{}),o)}),t.on(`form.destroy`,()=>{l(null,o)})}};Renderer.$inject=[`config.renderer`,`eventBus`,`formEditor`,`injector`];var $r={__depends__:[{__init__:[`formFields`,`renderer`],formFields:[`type`,EditorFormFields],renderer:[`type`,Renderer]}],debounce:[`factory`,DebounceFactory],eventBus:[`type`,EventBus],importer:[`type`,bn],formFieldRegistry:[`type`,FormFieldRegistry],pathRegistry:[`type`,Mt],formLayouter:[`type`,nn],formLayoutValidator:[`type`,FormLayoutValidator],fieldFactory:[`type`,sn]},ei=1e3,FormFieldContextActions=class{constructor(e){this._eventBus=e}registerProvider(e,t){t||(t=e,e=ei),this._eventBus.on(`formFieldContextActions.getProviders`,e,function(e){e.providers.push(t)})}getEntries(e){let t=this._getProviders(),r={};return Me(t,function(t){if(!I(t.getContextPadEntries))return;let i=t.getContextPadEntries(e);I(i)?r=i(r):Me(i,function(e,t){r[t]=e})}),r}_getProviders(){let e=this._eventBus.createEvent({type:`formFieldContextActions.getProviders`,providers:[]});return this._eventBus.fire(e),e.providers}};FormFieldContextActions.$inject=[`eventBus`];var DeleteActionProvider=class{constructor(e,t,r,i,a){this._modeling=t,this._formFieldRegistry=r,this._formFields=i,this._translate=a,e.registerProvider(500,this)}getContextPadEntries(e){if(e.type==="default")return{};let t=this._modeling,r=this._formFieldRegistry,i=this._formFields,a=this._translate;return{delete:{action:i=>{i.stopPropagation();let a=r.get(e._parent),o=getFormFieldIndex(a,e);t.removeFormField(e,a,o)},title:getRemoveButtonTitle(e,i,a),icon:`delete`,group:`actions`}}}};DeleteActionProvider.$inject=[`formFieldContextActions`,`modeling`,`formFieldRegistry`,`formFields`,`translate`];function getFormFieldIndex(e,t){let r=e.components.length;return e.components.forEach(({id:e},i)=>{e===t.id&&(r=i)}),r}function findPaletteEntry(e,t){return collectPaletteEntries(t).find(t=>t.type===e)}function getRemoveButtonTitle(e,t,r){let i=findPaletteEntry(e.type,t);return i?r(`Remove {label}`,{label:r(i.label)}):r(`Remove form field`)}var ti={__init__:[`formFieldContextActions`,`deleteActionProvider`],formFieldContextActions:[`type`,FormFieldContextActions],deleteActionProvider:[`type`,DeleteActionProvider]},ni=`is not a registered action`,ri=`is already registered`;function EditorActions(e,t){this._eventBus=e,this._actions={};var r=this;e.on(`diagram.init`,function(){r._registerDefaultActions(t),e.fire(`editorActions.init`,{editorActions:r})})}EditorActions.$inject=[`eventBus`,`injector`],EditorActions.prototype._registerDefaultActions=function(e){var t=e.get(`commandStack`,!1),r=e.get(`modeling`,!1),i=e.get(`selection`,!1),a=e.get(`zoomScroll`,!1),o=e.get(`copyPaste`,!1),s=e.get(`canvas`,!1),c=e.get(`rules`,!1),l=e.get(`keyboardMove`,!1),u=e.get(`keyboardMoveSelection`,!1);t&&(this.register(`undo`,function(){t.undo()}),this.register(`redo`,function(){t.redo()})),o&&i&&this.register(`copy`,function(){var e=i.get();if(e.length)return o.copy(e)}),o&&i&&this.register(`duplicate`,function(){var e=i.get();if(e.length)return o.duplicate(e)}),o&&this.register(`paste`,function(){o.paste()}),o&&i&&c&&this.register(`cut`,function(){var e=i.get();if(e.length){var t=c.allowed(`elements.delete`,{elements:e});if(t!==!1){var r=ee(t)?t:e;return o.cut(r.slice())}}}),a&&this.register(`stepZoom`,function(e){a.stepZoom(e.value)}),s&&this.register(`zoom`,function(e){s.zoom(e.value)}),r&&i&&c&&this.register(`removeSelection`,function(){var e=i.get();if(e.length){var t=c.allowed(`elements.delete`,{elements:e}),a;t!==!1&&(a=ee(t)?t:e,a.length&&r.removeElements(a.slice()))}}),l&&this.register(`moveCanvas`,function(e){l.moveCanvas(e)}),u&&this.register(`moveSelection`,function(e){u.moveSelection(e.direction,e.accelerated)})},EditorActions.prototype.trigger=function(e,t){if(!this._actions[e])throw error(e,ni);if(this._eventBus.fire(`editorActions.allowed`,{action:e,opts:t})!==!1)return this._actions[e](t)},EditorActions.prototype.register=function(e,t){var r=this;if(typeof e==`string`)return this._registerAction(e,t);Me(e,function(e,t){r._registerAction(t,e)})},EditorActions.prototype._registerAction=function(e,t){if(this.isRegistered(e))throw error(e,ri);this._actions[e]=t},EditorActions.prototype.unregister=function(e){if(!this.isRegistered(e))throw error(e,ni);this._actions[e]=void 0},EditorActions.prototype.getActions=function(){return Object.keys(this._actions)},EditorActions.prototype.isRegistered=function(e){return!!this._actions[e]};function error(e,t){return Error(e+` `+t)}var ii={__init__:[`editorActions`],editorActions:[`type`,EditorActions]},FormEditorActions=class extends EditorActions{constructor(e,t){super(e,t),e.on(`form.init`,()=>{this._registerDefaultActions(t),e.fire(`editorActions.init`,{editorActions:this})})}_registerDefaultActions(e){let t=e.get(`commandStack`,!1),r=e.get(`formFieldRegistry`,!1),i=e.get(`selection`,!1);t&&(this.register(`undo`,()=>{t.undo()}),this.register(`redo`,()=>{t.redo()})),r&&i&&this.register(`selectFormField`,(e={})=>{let{id:t}=e;if(!t)return;let a=r.get(t);a&&i.set(a)})}};FormEditorActions.$inject=[`eventBus`,`injector`];var ai={__depends__:[ii],editorActions:[`type`,FormEditorActions]},EditorTemplating=class{isTemplate(e){return Fe(e)&&(e.startsWith(`=`)||/{{/.test(e))}evaluate(e){return e}};EditorTemplating.$inject=[];var oi={__init__:[`expressionLanguage`,`templating`],expressionLanguage:[`type`,Qt],templating:[`type`,EditorTemplating]},si=[`c`,`C`],ci=[`v`,`V`],li=[`d`,`D`],ui=[`x`,`X`],di=[`y`,`Y`],fi=[`z`,`Z`];function hasModifier(e){return e.ctrlKey||e.metaKey||e.shiftKey||e.altKey}function isCmd(e){return e.altKey?!1:e.ctrlKey||e.metaKey}function isKey(e,t){return e=ee(e)?e:[e],e.indexOf(t.key)!==-1||e.indexOf(t.code)!==-1}function isShift(e){return e.shiftKey}function isCopy(e){return isCmd(e)&&isKey(si,e)}function isPaste(e){return isCmd(e)&&isKey(ci,e)}function isDuplicate(e){return isCmd(e)&&isKey(li,e)}function isCut(e){return isCmd(e)&&isKey(ui,e)}function isUndo(e){return isCmd(e)&&!isShift(e)&&isKey(fi,e)}function isRedo(e){return isCmd(e)&&(isKey(di,e)||isKey(fi,e)&&isShift(e))}var pi=`keyboard.keydown`,mi=`keyboard.keyup`,hi=1e3,gi=`Keyboard binding is now implicit; explicit binding to an element got removed. For more information, see https://github.com/bpmn-io/diagram-js/issues/661`;function Keyboard(e,t){var r=this;this._config=e||={},this._eventBus=t,this._keydownHandler=this._keydownHandler.bind(this),this._keyupHandler=this._keyupHandler.bind(this),t.on(`diagram.destroy`,function(){r._fire(`destroy`),r.unbind()}),e.bindTo&&console.error(`unsupported configuration <keyboard.bindTo>`,Error(gi));var i=e&&e.bind!==!1;t.on(`canvas.init`,function(e){r._target=e.svg,i&&r.bind(),r._fire(`init`)})}Keyboard.$inject=[`config.keyboard`,`eventBus`],Keyboard.prototype._keydownHandler=function(e){this._keyHandler(e,pi)},Keyboard.prototype._keyupHandler=function(e){this._keyHandler(e,mi)},Keyboard.prototype._keyHandler=function(e,t){var r;if(!this._isEventIgnored(e)){var i={keyEvent:e};r=this._eventBus.fire(t||pi,i),r&&e.preventDefault()}},Keyboard.prototype._isEventIgnored=function(e){return!1},Keyboard.prototype.bind=function(e){e&&console.error(`unsupported argument <node>`,Error(gi)),this.unbind(),e=this._node=this._target,ft.bind(e,`keydown`,this._keydownHandler),ft.bind(e,`keyup`,this._keyupHandler),this._fire(`bind`)},Keyboard.prototype.getBinding=function(){return this._node},Keyboard.prototype.unbind=function(){var e=this._node;e&&(this._fire(`unbind`),ft.unbind(e,`keydown`,this._keydownHandler),ft.unbind(e,`keyup`,this._keyupHandler)),this._node=null},Keyboard.prototype._fire=function(e){this._eventBus.fire(`keyboard.`+e,{node:this._node})},Keyboard.prototype.addListener=function(e,t,r){I(e)&&(r=t,t=e,e=hi),this._eventBus.on(r||pi,e,t)},Keyboard.prototype.removeListener=function(e,t){this._eventBus.off(t||pi,e)},Keyboard.prototype.hasModifier=hasModifier,Keyboard.prototype.isCmd=isCmd,Keyboard.prototype.isShift=isShift,Keyboard.prototype.isKey=isKey;var _i=500;function KeyboardBindings(e,t){var r=this;e.on(`editorActions.init`,_i,function(e){var i=e.editorActions;r.registerBindings(t,i)})}KeyboardBindings.$inject=[`eventBus`,`keyboard`],KeyboardBindings.prototype.registerBindings=function(e,t){function addListener(r,i){t.isRegistered(r)&&e.addListener(i)}addListener(`undo`,function(e){var r=e.keyEvent;if(isUndo(r))return t.trigger(`undo`),!0}),addListener(`redo`,function(e){var r=e.keyEvent;if(isRedo(r))return t.trigger(`redo`),!0}),addListener(`copy`,function(e){var r=e.keyEvent;if(isCopy(r))return t.trigger(`copy`),!0}),addListener(`paste`,function(e){var r=e.keyEvent;if(isPaste(r))return t.trigger(`paste`),!0}),addListener(`duplicate`,function(e){var r=e.keyEvent;if(isDuplicate(r))return t.trigger(`duplicate`),!0}),addListener(`cut`,function(e){var r=e.keyEvent;if(isCut(r))return t.trigger(`cut`),!0}),addListener(`stepZoom`,function(e){var r=e.keyEvent;if(isKey([`+`,`Add`,`=`],r)&&isCmd(r))return t.trigger(`stepZoom`,{value:1}),!0}),addListener(`stepZoom`,function(e){var r=e.keyEvent;if(isKey([`-`,`Subtract`],r)&&isCmd(r))return t.trigger(`stepZoom`,{value:-1}),!0}),addListener(`zoom`,function(e){var r=e.keyEvent;if(isKey(`0`,r)&&isCmd(r))return t.trigger(`zoom`,{value:1}),!0}),addListener(`removeSelection`,function(e){var r=e.keyEvent;if(isKey([`Backspace`,`Delete`,`Del`],r))return t.trigger(`removeSelection`),!0})};var vi={__init__:[`keyboard`,`keyboardBindings`],keyboard:[`type`,Keyboard],keyboardBindings:[`type`,KeyboardBindings]},yi=500,FormEditorKeyboardBindings=class{constructor(e,t){e.on(`editorActions.init`,yi,e=>{let{editorActions:r}=e;this.registerBindings(t,r)})}registerBindings(e,t){function addListener(r,i){t.isRegistered(r)&&e.addListener(i)}addListener(`undo`,e=>{let{keyEvent:r}=e;if(isUndo(r))return t.trigger(`undo`),!0}),addListener(`redo`,e=>{let{keyEvent:r}=e;if(isRedo(r))return t.trigger(`redo`),!0})}};FormEditorKeyboardBindings.$inject=[`eventBus`,`keyboard`];var bi={__depends__:[vi],__init__:[`keyboardBindings`],keyboardBindings:[`type`,FormEditorKeyboardBindings]},xi={__init__:[`dragging`],dragging:[`type`,Dragging]};function CommandStack(e,t){this._handlerMap={},this._stack=[],this._stackIdx=-1,this._currentExecution={actions:[],dirty:[],trigger:null},this._injector=t,this._eventBus=e,this._uid=1,e.on([`diagram.destroy`,`diagram.clear`],function(){this.clear(!1)},this)}CommandStack.$inject=[`eventBus`,`injector`],CommandStack.prototype.execute=function(e,t){if(!e)throw Error(`command required`);this._currentExecution.trigger=`execute`;let r={command:e,context:t};this._pushAction(r),this._internalExecute(r),this._popAction()},CommandStack.prototype.canExecute=function(e,t){let r={command:e,context:t},i=this._getHandler(e),a=this._fire(e,`canExecute`,r);if(a===void 0){if(!i)return!1;i.canExecute&&(a=i.canExecute(t))}return a},CommandStack.prototype.clear=function(e){this._stack.length=0,this._stackIdx=-1,e!==!1&&this._fire(`changed`,{trigger:`clear`})},CommandStack.prototype.undo=function(){let e=this._getUndoAction(),t;if(e){for(this._currentExecution.trigger=`undo`,this._pushAction(e);e&&(this._internalUndo(e),t=this._getUndoAction(),t&&t.id===e.id);)e=t;this._popAction()}},CommandStack.prototype.redo=function(){let e=this._getRedoAction(),t;if(e){for(this._currentExecution.trigger=`redo`,this._pushAction(e);e&&(this._internalExecute(e,!0),t=this._getRedoAction(),t&&t.id===e.id);)e=t;this._popAction()}},CommandStack.prototype.register=function(e,t){this._setHandler(e,t)},CommandStack.prototype.registerHandler=function(e,t){if(!e||!t)throw Error(`command and handlerCls must be defined`);let r=this._injector.instantiate(t);this.register(e,r)},CommandStack.prototype.canUndo=function(){return!!this._getUndoAction()},CommandStack.prototype.canRedo=function(){return!!this._getRedoAction()},CommandStack.prototype._getRedoAction=function(){return this._stack[this._stackIdx+1]},CommandStack.prototype._getUndoAction=function(){return this._stack[this._stackIdx]},CommandStack.prototype._internalUndo=function(e){let t=e.command,r=e.context,i=this._getHandler(t);this._atomicDo(()=>{this._fire(t,`revert`,e),i.revert&&this._markDirty(i.revert(r)),this._revertedAction(e),this._fire(t,`reverted`,e)})},CommandStack.prototype._fire=function(e,t,r){arguments.length<3&&(r=t,t=null);let i=t?[e+`.`+t,t]:[e],a;r=this._eventBus.createEvent(r);for(let e of i)if(a=this._eventBus.fire(`commandStack.`+e,r),r.cancelBubble)break;return a},CommandStack.prototype._createId=function(){return this._uid++},CommandStack.prototype._atomicDo=function(e){let t=this._currentExecution;t.atomic=!0;try{e()}finally{t.atomic=!1}},CommandStack.prototype._internalExecute=function(e,t){let r=e.command,i=e.context,a=this._getHandler(r);if(!a)throw Error(`no command handler registered for <`+r+`>`);this._pushAction(e),t||(this._fire(r,`preExecute`,e),a.preExecute&&a.preExecute(i),this._fire(r,`preExecuted`,e)),this._atomicDo(()=>{this._fire(r,`execute`,e),a.execute&&this._markDirty(a.execute(i)),this._executedAction(e,t),this._fire(r,`executed`,e)}),t||(this._fire(r,`postExecute`,e),a.postExecute&&a.postExecute(i),this._fire(r,`postExecuted`,e)),this._popAction()},CommandStack.prototype._pushAction=function(e){let t=this._currentExecution,r=t.actions,i=r[0];if(t.atomic)throw Error(`illegal invocation in <execute> or <revert> phase (action: `+e.command+`)`);e.id||=i&&i.id||this._createId(),r.push(e)},CommandStack.prototype._popAction=function(){let e=this._currentExecution,t=e.trigger,r=e.actions,i=e.dirty;r.pop(),r.length||(this._eventBus.fire(`elements.changed`,{elements:M(`id`,i.reverse())}),i.length=0,this._fire(`changed`,{trigger:t}),e.trigger=null)},CommandStack.prototype._markDirty=function(e){let t=this._currentExecution;e&&(e=ee(e)?e:[e],t.dirty=t.dirty.concat(e))},CommandStack.prototype._executedAction=function(e,t){let r=++this._stackIdx;t||this._stack.splice(r,this._stack.length,e)},CommandStack.prototype._revertedAction=function(e){this._stackIdx--},CommandStack.prototype._getHandler=function(e){return this._handlerMap[e]},CommandStack.prototype._setHandler=function(e,t){if(!e||!t)throw Error(`command and handler required`);if(this._handlerMap[e])throw Error(`overriding handler for command <`+e+`>`);this._handlerMap[e]=t};var Si={commandStack:[`type`,CommandStack]},Ci=1e3;function CommandInterceptor(e){this._eventBus=e}CommandInterceptor.$inject=[`eventBus`];function unwrapEvent(e,t){return function(r){return e.call(t||null,r.context,r.command,r)}}CommandInterceptor.prototype.on=function(e,t,r,i,a,o){if((I(t)||Le(t))&&(o=a,a=i,i=r,r=t,t=null),I(r)&&(o=a,a=i,i=r,r=Ci),z(a)&&(o=a,a=!1),!I(i))throw Error(`handlerFn must be a function`);ee(e)||(e=[e]);var s=this._eventBus;Me(e,function(e){var c=[`commandStack`,e,t].filter(function(e){return e}).join(`.`);s.on(c,r,a?unwrapEvent(i,o):i,o)})},CommandInterceptor.prototype.canExecute=createHook(`canExecute`),CommandInterceptor.prototype.preExecute=createHook(`preExecute`),CommandInterceptor.prototype.preExecuted=createHook(`preExecuted`),CommandInterceptor.prototype.execute=createHook(`execute`),CommandInterceptor.prototype.executed=createHook(`executed`),CommandInterceptor.prototype.postExecute=createHook(`postExecute`),CommandInterceptor.prototype.postExecuted=createHook(`postExecuted`),CommandInterceptor.prototype.revert=createHook(`revert`),CommandInterceptor.prototype.reverted=createHook(`reverted`);function createHook(e){let hookFn=function(t,r,i,a,o){(I(t)||Le(t))&&(o=a,a=i,i=r,r=t,t=null),this.on(t,e,r,i,a,o)};return hookFn}var IdBehavior=class extends CommandInterceptor{constructor(e,t){super(e),this.preExecute(`formField.remove`,function(e){let{formField:r}=e,{id:i}=r;t.unclaimId(r,i)},!0),this.preExecute(`formField.edit`,function(e){let{formField:r,properties:i}=e;`id`in i&&(t.unclaimId(r,r.id),t.claimId(r,i.id))},!0)}};IdBehavior.$inject=[`eventBus`,`modeling`];var KeyBehavior=class extends CommandInterceptor{constructor(e,t,r){super(e),this.preExecute(`formField.remove`,function(e){let{formField:i}=e,{key:a,type:o}=i,{config:s}=r.get(o);s.keyed&&t.unclaimKey(i,a)},!0),this.preExecute(`formField.edit`,function(e){let{formField:i,properties:a}=e,{key:o,type:s}=i,{config:c}=r.get(s);c.keyed&&`key`in a&&(t.unclaimKey(i,o),t.claimKey(i,a.key))},!0)}};KeyBehavior.$inject=[`eventBus`,`modeling`,`formFields`];var PathBehavior=class extends CommandInterceptor{constructor(e,t,r){super(e),this.preExecute(`formField.remove`,function(e){let{formField:i}=e,{path:a,type:o}=i,{config:s}=r.get(o);s.pathed&&t.unclaimPath(i,a)},!0),this.preExecute(`formField.edit`,function(e){let{formField:i,properties:a}=e,{path:o,type:s}=i,{config:c}=r.get(s);c.pathed&&`path`in a&&(t.unclaimPath(i,o),t.claimPath(i,a.path))},!0)}};PathBehavior.$inject=[`eventBus`,`modeling`,`formFields`];var ValidateBehavior=class extends CommandInterceptor{constructor(e){super(e),this.preExecute(`formField.edit`,function(e){let{properties:t}=e,{validate:r={}}=t;if(r.validationType){let e={...r};delete e.minLength,delete e.maxLength,delete e.pattern,t.validate=e}},!0)}};ValidateBehavior.$inject=[`eventBus`];var OptionsSourceBehavior=class extends CommandInterceptor{constructor(e){super(e),this.preExecute(`formField.edit`,function(e){let{properties:t}=e,r={};isValuesSourceUpdate(t)&&(Object.values(Wt).forEach(e=>{let i=Gt[e];B(t,i)??(r[Gt[e]]=void 0)}),(B(t,Gt[Wt.EXPRESSION])!==void 0||B(t,Gt[Wt.INPUT])!==void 0)&&(r.defaultValue=void 0),e.properties={...t,...r})},!0)}};OptionsSourceBehavior.$inject=[`eventBus`];function isValuesSourceUpdate(e){return Object.values(Gt).some(t=>B(e,t)!==void 0)}var wi={columns:`columns`,columnsExpression:`columnsExpression`},ColumnsSourceBehavior=class extends CommandInterceptor{constructor(e){super(e),this.preExecute(`formField.edit`,function(e){let{properties:t,oldProperties:r}=e;if(!Object.values(wi).some(e=>B(t,[e])!==void 0))return;let i=B(t,[wi.columns]),a=B(r,[wi.columns]),o=B(t,[wi.columnsExpression]),s=B(r,[wi.columnsExpression]);ee(i)&&!X(a)?e.properties={...t,columnsExpression:void 0}:Fe(o)&&!Fe(s)&&(e.properties={...t,columns:void 0})},!0)}};ColumnsSourceBehavior.$inject=[`eventBus`];var TableDataSourceBehavior=class extends CommandInterceptor{constructor(e){super(e),this.preExecute(`formField.add`,function(e){let{formField:t}=e;B(t,[`type`])===`table`&&(e.formField={...t,dataSource:`=${t.id}`})},!0)}};TableDataSourceBehavior.$inject=[`eventBus`];var Ti={__init__:[`idBehavior`,`keyBehavior`,`pathBehavior`,`validateBehavior`,`optionsSourceBehavior`,`columnsSourceBehavior`,`tableDataSourceBehavior`],idBehavior:[`type`,IdBehavior],keyBehavior:[`type`,KeyBehavior],pathBehavior:[`type`,PathBehavior],validateBehavior:[`type`,ValidateBehavior],optionsSourceBehavior:[`type`,OptionsSourceBehavior],columnsSourceBehavior:[`type`,ColumnsSourceBehavior],tableDataSourceBehavior:[`type`,TableDataSourceBehavior]};function arrayAdd$1(e,t,r){return e.splice(t,0,r),e}function arrayRemove(e,t){return e.splice(t,1),e}function updatePath(e,t,r){return refreshPathsRecursively(t,[...e.get(t._parent)._path,`components`,r]),t}function refreshPathsRecursively(e,t){e._path=t,(e.components||[]).forEach((e,r)=>{refreshPathsRecursively(e,[...t,`components`,r])})}function updateRow(e,t){return e.layout={...e.layout||{},row:t},e}var FormLayoutUpdater=class extends CommandInterceptor{constructor(e,t,r,i){super(e),this._eventBus=e,this._formLayouter=t,this._modeling=r,this._formEditor=i,this.preExecute([`formField.add`,`formField.remove`,`formField.move`,`id.updateClaim`],e=>this.updateRowIds(e)),e.on(`changed`,e=>{let{schema:t}=e;this.updateLayout(t)})}updateLayout(e){this._formLayouter.clear(),this._formLayouter.calculateLayout(Rt(e))}updateRowIds(e){let{schema:t}=this._formEditor._getState(),setRowIds=e=>{e.components&&e.components.length&&e.components.forEach(e=>{updateRow(e,this._formLayouter.getRowForField(e).id),setRowIds(e)})};setRowIds(t)}};FormLayoutUpdater.$inject=[`eventBus`,`formLayouter`,`modeling`,`formEditor`];var AddFormFieldHandler=class{constructor(e,t){this._formEditor=e,this._formFieldRegistry=t}execute(e){let{formField:t,targetFormField:r,targetIndex:i}=e,{schema:a}=this._formEditor._getState(),o=[...r._path,`components`];t._parent=r.id,arrayAdd$1(B(a,o),i,t),B(a,o).forEach((e,t)=>updatePath(this._formFieldRegistry,e,t)),this._formFieldRegistry.add(t),this._formEditor._setState({schema:a})}revert(e){let{formField:t,targetFormField:r,targetIndex:i}=e,{schema:a}=this._formEditor._getState(),o=[...r._path,`components`];arrayRemove(B(a,o),i),B(a,o).forEach((e,t)=>updatePath(this._formFieldRegistry,e,t)),this._formFieldRegistry.remove(t),this._formEditor._setState({schema:a})}};AddFormFieldHandler.$inject=[`formEditor`,`formFieldRegistry`];var EditFormFieldHandler=class{constructor(e,t){this._formEditor=e,this._formFieldRegistry=t}execute(e){let{formField:t,properties:r}=e,{schema:i}=this._formEditor._getState(),a={};for(let e in r){a[e]=t[e];let i=r[e];e===`id`?i!==t.id&&this._formFieldRegistry.updateId(t,i):t[e]=i}return e.oldProperties=a,this._formEditor._setState({schema:i}),t}revert(e){let{formField:t,oldProperties:r}=e,{schema:i}=this._formEditor._getState();for(let e in r){let i=r[e];e===`id`?i!==t.id&&this._formFieldRegistry.updateId(t,i):t[e]=i}return this._formEditor._setState({schema:i}),t}};EditFormFieldHandler.$inject=[`formEditor`,`formFieldRegistry`];var MoveFormFieldHandler=class{constructor(e,t,r,i){this._formEditor=e,this._formFieldRegistry=t,this._pathRegistry=r,this._formLayouter=i}execute(e){this.moveFormField(e)}revert(e){let{sourceFormField:t,targetFormField:r,sourceIndex:i,targetIndex:a,sourceRow:o,targetRow:s}=e;this.moveFormField({sourceFormField:r,targetFormField:t,sourceIndex:a,targetIndex:i,sourceRow:s,targetRow:o},!0)}moveFormField(e,t){let{sourceFormField:r,targetFormField:i,sourceIndex:a,targetIndex:o,targetRow:s}=e,{schema:c}=this._formEditor._getState(),l=[...r._path,`components`];if(r.id===i.id)t?a>o&&a--:a<o&&o--,updateRow(B(c,[...l,a]),s?s.id:this._formLayouter.nextRowId()),St(B(c,l),a,o),B(c,l).forEach((e,t)=>updatePath(this._formFieldRegistry,e,t));else{let e=B(c,[...l,a]);this._pathRegistry.executeRecursivelyOnFields(e,({field:e})=>{this._pathRegistry.unclaimPath(this._pathRegistry.getValuePath(e))}),e._parent=i.id,arrayRemove(B(c,l),a),B(c,l).forEach((e,t)=>updatePath(this._formFieldRegistry,e,t));let t=[...i._path,`components`];updateRow(e,s?s.id:this._formLayouter.nextRowId()),arrayAdd$1(B(c,t),o,e),B(c,t).forEach((e,t)=>updatePath(this._formFieldRegistry,e,t)),this._pathRegistry.executeRecursivelyOnFields(e,({field:e,isClosed:t,isRepeatable:r})=>{this._pathRegistry.claimPath(this._pathRegistry.getValuePath(e),{isClosed:t,isRepeatable:r,claimerId:e.id})})}this._formEditor._setState({schema:c})}};MoveFormFieldHandler.$inject=[`formEditor`,`formFieldRegistry`,`pathRegistry`,`formLayouter`];var RemoveFormFieldHandler=class{constructor(e,t){this._formEditor=e,this._formFieldRegistry=t}execute(e){let{sourceFormField:t,sourceIndex:r}=e,{schema:i}=this._formEditor._getState(),a=[...t._path,`components`],o=e.formField=B(i,[...a,r]);arrayRemove(B(i,a),r),B(i,a).forEach((e,t)=>updatePath(this._formFieldRegistry,e,t)),Pt(o,e=>this._formFieldRegistry.remove(e)),this._formEditor._setState({schema:i})}revert(e){let{formField:t,sourceFormField:r,sourceIndex:i}=e,{schema:a}=this._formEditor._getState(),o=[...r._path,`components`];arrayAdd$1(B(a,o),i,t),B(a,o).forEach((e,t)=>updatePath(this._formFieldRegistry,e,t)),Pt(t,e=>this._formFieldRegistry.add(e)),this._formEditor._setState({schema:a})}};RemoveFormFieldHandler.$inject=[`formEditor`,`formFieldRegistry`];var UpdateIdClaimHandler=class{constructor(e){this._formFieldRegistry=e}execute(e){let{claiming:t,formField:r,id:i}=e;t?this._formFieldRegistry._ids.claim(i,r):this._formFieldRegistry._ids.unclaim(i)}revert(e){let{claiming:t,formField:r,id:i}=e;t?this._formFieldRegistry._ids.unclaim(i):this._formFieldRegistry._ids.claim(i,r)}};UpdateIdClaimHandler.$inject=[`formFieldRegistry`];var UpdateKeyClaimHandler=class{constructor(e){this._pathRegistry=e}execute(e){let{claiming:t,formField:r,key:i}=e,a={replacements:{[r.id]:i}},o=this._pathRegistry.getValuePath(r,a);t?this._pathRegistry.claimPath(o,{isClosed:!0,claimerId:r.id}):this._pathRegistry.unclaimPath(o),e.valuePath=o}revert(e){let{claiming:t,formField:r,valuePath:i}=e;t?this._pathRegistry.unclaimPath(i):this._pathRegistry.claimPath(i,{isClosed:!0,claimerId:r.id})}};UpdateKeyClaimHandler.$inject=[`pathRegistry`];var UpdatePathClaimHandler=class{constructor(e){this._pathRegistry=e}execute(e){let{claiming:t,formField:r,path:i}=e,a={replacements:{[r.id]:i}},o=[];t?this._pathRegistry.executeRecursivelyOnFields(r,({field:e,isClosed:t,isRepeatable:r})=>{let i=this._pathRegistry.getValuePath(e,a);o.push({valuePath:i,isClosed:t,isRepeatable:r,claimerId:e.id}),this._pathRegistry.claimPath(i,{isClosed:t,isRepeatable:r,claimerId:e.id})}):this._pathRegistry.executeRecursivelyOnFields(r,({field:e,isClosed:t,isRepeatable:r})=>{let i=this._pathRegistry.getValuePath(e,a);o.push({valuePath:i,isClosed:t,isRepeatable:r,claimerId:e.id}),this._pathRegistry.unclaimPath(i)}),e.valuePaths=o}revert(e){let{claiming:t,valuePaths:r}=e;t?r.forEach(({valuePath:e})=>{this._pathRegistry.unclaimPath(e)}):r.forEach(({valuePath:e,isClosed:t,isRepeatable:r,claimerId:i})=>{this._pathRegistry.claimPath(e,{isClosed:t,isRepeatable:r,claimerId:i})})}};UpdatePathClaimHandler.$inject=[`pathRegistry`];var Modeling=class{constructor(e,t,r,i,a){this._commandStack=e,this._formEditor=r,this._formFieldRegistry=i,this._fieldFactory=a,t.on(`form.init`,()=>{this.registerHandlers()})}registerHandlers(){Object.entries(this.getHandlers()).forEach(([e,t])=>{this._commandStack.registerHandler(e,t)})}getHandlers(){return{"formField.add":AddFormFieldHandler,"formField.edit":EditFormFieldHandler,"formField.move":MoveFormFieldHandler,"formField.remove":RemoveFormFieldHandler,"id.updateClaim":UpdateIdClaimHandler,"key.updateClaim":UpdateKeyClaimHandler,"path.updateClaim":UpdatePathClaimHandler}}addFormField(e,t,r){let i=this._fieldFactory.create(e),a={formField:i,targetFormField:t,targetIndex:r};return this._commandStack.execute(`formField.add`,a),i}editFormField(e,t,r){z(t)||(t={[t]:r});let i={formField:e,properties:t};this._commandStack.execute(`formField.edit`,i)}moveFormField(e,t,r,i,a,o,s){let c={formField:e,sourceFormField:t,targetFormField:r,sourceIndex:i,targetIndex:a,sourceRow:o,targetRow:s};this._commandStack.execute(`formField.move`,c)}removeFormField(e,t,r){let i={formField:e,sourceFormField:t,sourceIndex:r};this._commandStack.execute(`formField.remove`,i)}claimId(e,t){let r={formField:e,id:t,claiming:!0};this._commandStack.execute(`id.updateClaim`,r)}unclaimId(e,t){let r={formField:e,id:t,claiming:!1};this._commandStack.execute(`id.updateClaim`,r)}claimKey(e,t){let r={formField:e,key:t,claiming:!0};this._commandStack.execute(`key.updateClaim`,r)}unclaimKey(e,t){let r={formField:e,key:t,claiming:!1};this._commandStack.execute(`key.updateClaim`,r)}claimPath(e,t){let r={formField:e,path:t,claiming:!0};this._commandStack.execute(`path.updateClaim`,r)}unclaimPath(e,t){let r={formField:e,path:t,claiming:!1};this._commandStack.execute(`path.updateClaim`,r)}};Modeling.$inject=[`commandStack`,`eventBus`,`formEditor`,`formFieldRegistry`,`fieldFactory`];var Ei={__depends__:[Ti,Si],__init__:[`formLayoutUpdater`,`modeling`],formLayoutUpdater:[`type`,FormLayoutUpdater],modeling:[`type`,Modeling]},Selection=class{constructor(e){this._eventBus=e,this._selection=null}get(){return this._selection}set(e){this._selection!==e&&(this._selection=e,this._eventBus.fire(`selection.changed`,{selection:this._selection}))}toggle(e){let t=this._selection===e?null:e;this.set(t)}clear(){this.set(null)}isSelected(e){return this._selection===e}};Selection.$inject=[`eventBus`];var SelectionBehavior=class{constructor(e,t){e.on([`commandStack.formField.add.postExecuted`,`commandStack.formField.move.postExecuted`],({context:e})=>{let{formField:r}=e;t.set(r)}),e.on(`commandStack.formField.remove.postExecuted`,({context:e})=>{let{sourceFormField:r,sourceIndex:i}=e,a=r.components[i]||r.components[i-1];a?t.set(a):t.clear()}),e.on(`formField.remove`,({formField:e})=>{t.isSelected(e)&&t.clear()})}};SelectionBehavior.$inject=[`eventBus`,`selection`];var Di={__init__:[`selection`,`selectionBehavior`],selection:[`type`,Selection],selectionBehavior:[`type`,SelectionBehavior]},SectionModuleBase=class{constructor(e,t){this._eventBus=e,this._sectionKey=t,this._eventBus.on(`${this._sectionKey}.section.rendered`,()=>{this.isSectionRendered=!0}),this._eventBus.on(`${this._sectionKey}.section.destroyed`,()=>{this.isSectionRendered=!1})}attachTo(e){this._onceSectionRendered(()=>this._eventBus.fire(`${this._sectionKey}.attach`,{container:e}))}detach(){this._onceSectionRendered(()=>this._eventBus.fire(`${this._sectionKey}.detach`))}reset(){this._onceSectionRendered(()=>this._eventBus.fire(`${this._sectionKey}.reset`))}_onceSectionRendered(e){this.isSectionRendered?e():this._eventBus.once(`${this._sectionKey}.section.rendered`,e)}},PaletteRenderer=class extends SectionModuleBase{constructor(e){super(e,`palette`)}};PaletteRenderer.$inject=[`eventBus`];var Oi={__init__:[`palette`],palette:[`type`,PaletteRenderer]},ki=1e3,PropertiesPanelRenderer=class extends SectionModuleBase{constructor(e){super(e,`propertiesPanel`)}registerProvider(e,t){t||=ki,typeof e.getGroups==`function`?(this._eventBus.on(`propertiesPanel.getProviders`,t,function(t){t.providers.push(e)}),this._eventBus.fire(`propertiesPanel.providersChanged`)):console.error(`Properties provider does not implement #getGroups(element) API`)}getProviders(){let e=this._eventBus.createEvent({type:`propertiesPanel.getProviders`,providers:[]});return this._eventBus.fire(e),e.providers}_getProviders(){return this.getProviders()}_destroy(){this._eventBus.fire(`propertiesPanel.destroyed`)}};PropertiesPanelRenderer.$inject=[`eventBus`];function ActionEntry(e){let{editField:t,field:r}=e,i=[];return i.push({id:`action`,component:Action,editField:t,field:r,isEdited:isEdited$3,isDefaultVisible:e=>e.type===`button`}),i}function Action(e){let{editField:t,field:r,id:i}=e,a=[`action`],o=useService(`translate`),getValue=()=>B(r,a,``),setValue=e=>t(r,a,e),getOptions=()=>[{label:o(`Submit`),value:`submit`},{label:o(`Reset`),value:`reset`}];return SelectEntry({element:r,getOptions,getValue,id:i,label:o(`Action`),setValue})}function AltTextEntry(e){let{editField:t,field:r}=e,i=[];return i.push({id:`alt`,component:AltText,editField:t,field:r,isEdited:isEdited$5,isDefaultVisible:e=>[`image`].includes(e.type)}),i}function AltText(e){let{editField:t,field:r,id:i}=e,a=useService(`debounce`),o=useService(`translate`),s=useVariables().map(e=>({name:e})),c=[`alt`],getValue=()=>B(r,c,``),setValue=e=>t(r,c,e);return FeelTemplatingEntry({debounce:a,element:r,feel:`optional`,getValue,id:i,label:o(`Alternative text`),tooltip:o(`Descriptive text for screen reader accessibility.`),setValue,singleLine:!0,variables:s})}var Ai=``;function ColumnsEntry(e){let{editField:t,field:r}=e;return[{id:`columns`,component:Columns,field:r,editField:t,isEdited:isEdited$3}]}function Columns(e){let{field:t,editField:r,id:a}=e;useService(`debounce`);let o=useService(`translate`),s=useService(`formLayoutValidator`),c=i(e=>s.validateField(t,e?parseInt(e):null),[t,s]),setValue=(e,i)=>{if(i)return;let a=B(t,[`layout`],{});r(t,[`layout`],E(a,[`columns`],e?parseInt(e):null))},getValue=()=>B(t,[`layout`,`columns`]),getOptions=()=>[{label:o(`Auto`),value:Ai},...asArray(16).filter(e=>e>=Hn).map(asOption)];return SelectEntry({element:t,id:a,label:o(`Columns`),getOptions,getValue,setValue,validate:c})}function asOption(e){return{value:e,label:e.toString()}}function asArray(e){return Array.from({length:e}).map((e,t)=>t+1)}function arrayAdd(e,t,r){let i=[...e];return i.splice(t,0,r),i}function countDecimals(e){let t=fn(e);return t.toString()===t.toFixed(0)?0:t.toFixed().split(`.`)[1].length||0}function isValidNumber(e){return(typeof e==`number`||typeof e==`string`)&&e!==``&&!isNaN(Number(e))}function isValidDotPath(e){return/^\w+(\.\w+)*$/.test(e)}function isProhibitedPath(e){let t=[`__proto__`,`prototype`,`constructor`];return e.split(`.`).some(e=>t.includes(e))}var ji=[`button`,`group`,`dynamiclist`,`iframe`,`table`,`documentPreview`],Mi=[`checkbox`,`checklist`,`datetime`,`number`,`radio`,`select`,`taglist`,`textfield`,`textarea`,`filepicker`],Ni=[`checklist`,`radio`,`select`,`taglist`];function hasEntryConfigured(e,t){let{propertiesPanelEntries:r=[]}=e;return r.length?r.some(e=>e===t):!1}function hasOptionsGroupsConfigured(e){let{propertiesPanelEntries:t=[]}=e;return t.length?t.some(e=>e===`values`):!1}function hasIntegerPathSegment(e){return e.split(`.`).some(e=>/^\d+$/.test(e))}function isEditedFromDefaultFactory(e,t=!0){return r=>{if(!r)return!1;let i=r.querySelector(`.cm-content`),a=i?i.innerText:r.value;return t&&!a?!1:a!==e}}function isTrueDefaultToggleSwitchEntryEdited(e){return e&&!e.checked}function DescriptionEntry(e){let{editField:t,field:r}=e,i=[];return i.push({id:`description`,component:Description,editField:t,field:r,isEdited:isEdited$5,isDefaultVisible:e=>e.type!==`filepicker`&&Mi.includes(e.type)}),i}function Description(e){let{editField:t,field:r,id:i}=e,a=useService(`debounce`),o=useService(`translate`),s=useVariables().map(e=>({name:e})),c=[`description`],getValue=()=>B(r,c,``),setValue=e=>t(r,c,e);return FeelTemplatingEntry({debounce:a,element:r,getValue,id:i,label:o(`Field description`),singleLine:!0,setValue,variables:s})}var Pi=``;function DefaultValueEntry(e){let{editField:t,field:r,getService:i}=e,a=i(`translate`),{type:o}=r,s=[];function isDefaultVisible(e){return t=>!Mi.includes(o)||Ni.includes(o)&&!t.values?!1:e(t)}let c={editField:t,field:r,id:`defaultValue`,label:a(`Default value`)};return s.push({...c,component:DefaultValueCheckbox,isEdited:isEdited$3,isDefaultVisible:isDefaultVisible(e=>e.type===`checkbox`)}),s.push({...c,component:DefaultValueNumber,isEdited,isDefaultVisible:isDefaultVisible(e=>e.type===`number`)}),s.push({...c,component:DefaultValueSingleSelect,isEdited:isEdited$3,isDefaultVisible:isDefaultVisible(e=>e.type===`radio`||e.type===`select`)}),s.push({...c,component:DefaultValueTextfield,isEdited,isDefaultVisible:isDefaultVisible(e=>e.type===`textfield`)}),s.push({...c,component:DefaultValueTextarea,isEdited:isEdited$1,isDefaultVisible:isDefaultVisible(e=>e.type===`textarea`)}),s}function DefaultValueCheckbox(e){let{editField:t,field:r,id:i,label:a}=e,o=useService(`translate`),{defaultValue:s}=r,c=[`defaultValue`],getOptions=()=>[{label:o(`Checked`),value:`true`},{label:o(`Not checked`),value:`false`}],setValue=e=>t(r,c,parseStringToBoolean(e)),getValue=()=>parseBooleanToString(s);return SelectEntry({element:r,getOptions,getValue,id:i,label:a,setValue})}function DefaultValueNumber(e){let{editField:t,field:r,id:a,label:o}=e,{decimalDigits:s,serializeToString:c=!1}=r,l=useService(`debounce`),u=useService(`translate`),d=[`defaultValue`],getValue=e=>{let t=B(r,d);if(isValidNumber(t))return c?fn(t).toFixed():t},setValue=(e,i)=>{if(i)return;let a;return isValidNumber(e)&&(a=c?e:Number(e)),t(r,d,a)},f=s||s===0;return TextfieldEntry({debounce:l,label:o,element:r,getValue,id:a,setValue,validate:i(e=>{if(e!=null){if(!isValidNumber(e))return u(`Should be a valid number.`);if(f&&countDecimals(e)>s)return u(`Should not contain more than {value} decimal digits.`,{value:s.toString()})}},[f,s,u])})}function DefaultValueSingleSelect(e){let{editField:t,field:r,id:i,label:a}=e,{defaultValue:o=Pi,values:s=[]}=r,c=useService(`translate`),l=[`defaultValue`],getOptions=()=>[{label:c(`<none>`),value:Pi},...s],setValue=e=>t(r,l,e.length?e:void 0),getValue=()=>o;return SelectEntry({element:r,getOptions,getValue,id:i,label:a,setValue})}function DefaultValueTextfield(e){let{editField:t,field:r,id:i,label:a}=e,o=useService(`debounce`),s=[`defaultValue`],getValue=()=>B(r,s,``),setValue=e=>t(r,s,e);return TextfieldEntry({debounce:o,element:r,getValue,id:i,label:a,setValue})}function DefaultValueTextarea(e){let{editField:t,field:r,id:i,label:a}=e,o=useService(`debounce`),s=[`defaultValue`],getValue=()=>B(r,s,``),setValue=e=>t(r,s,e);return TextAreaEntry({debounce:o,element:r,getValue,id:i,label:a,setValue})}function parseStringToBoolean(e){return e===`true`}function parseBooleanToString(e){return e===!0?`true`:`false`}function DisabledEntry(e){let{editField:t,field:r,getService:i}=e,a=[],o=i(`translate`);return a.push({id:`disabled`,component:Disabled,editField:t,field:r,isEdited:isEdited$7,isDefaultVisible:e=>Mi.includes(e.type),translate:o}),a}function Disabled(e){let{editField:t,field:r,id:i,translate:a}=e,o=[`disabled`],getValue=()=>B(r,o,``),setValue=e=>t(r,o,e);return ToggleSwitchEntry({element:r,getValue,id:i,label:a(`Disabled`),tooltip:a(`Disable this field when it should not be interactive for end-users. Its data will not be submitted. This setting takes precedence over read-only.`),inline:!0,setValue})}function IdEntry(e){let{editField:t,field:r}=e,i=[];return i.push({id:`id`,component:Id,editField:t,field:r,isEdited,isDefaultVisible:e=>e.type==="default"}),i}function Id(e){let{editField:t,field:r,id:a}=e,o=useService(`formFieldRegistry`),s=useService(`debounce`),c=useService(`translate`),l=[`id`],getValue=()=>B(r,l,``),setValue=(e,i)=>{if(!i)return t(r,l,e)},u=i(e=>{if(typeof e!=`string`||e.length===0)return c(`Must not be empty.`);let t=o._ids.assigned(e);return t&&t!==r?c(`Must be unique.`):validateId(e,c)||null},[o,r,c]);return TextfieldEntry({debounce:s,element:r,getValue,id:a,label:c(`ID`),setValue,validate:u})}var Fi=/\s/,Ii=/^([a-z][\w-.]*:)?[a-z_][\w-.]*$/i,Li=/^[a-z_][\w-.]*$/i;function validateId(e,t){if(containsSpace(e))return t(`Must not contain spaces.`);if(!Li.test(e))return Ii.test(e)?t(`Must not contain prefix.`):t(`Must be a valid QName.`)}function containsSpace(e){return Fi.test(e)}function KeyEntry(e){let{editField:t,field:r,getService:i}=e,a=[];return a.push({id:`key`,component:Key$2,editField:t,field:r,isEdited,isDefaultVisible:e=>{let{config:t}=i(`formFields`).get(e.type);return t.keyed}}),a}function Key$2(e){let{editField:t,field:r,id:a}=e,o=useService(`pathRegistry`),s=useService(`debounce`),c=useService(`translate`),l=[`key`],getValue=()=>B(r,l,``),setValue=(e,i)=>{if(!i)return t(r,l,e)},u=i(e=>{if(e===r.key)return null;if(!Fe(e)||e.length===0)return c(`Must not be empty.`);if(!isValidDotPath(e))return c(`Must be a variable or a dot separated path.`);if(hasIntegerPathSegment(e))return c(`Must not contain numerical path segments.`);if(isProhibitedPath(e))return c(`Must not be a prohibited path.`);let t={[r.id]:e.split(`.`)},i=o.getValuePath(r),a=o.getValuePath(r,{replacements:t});o.unclaimPath(i);let s=o.canClaimPath(a,{isClosed:!0,claimerId:r.id});return o.claimPath(i,{isClosed:!0,claimerId:r.id}),s?null:c(`Must not conflict with other key/path assignments.`)},[r,o,c]);return TextfieldEntry({debounce:s,description:c(`Binds to a form variable`),element:r,getValue,id:a,label:c(`Key`),tooltip:c(`Use a unique "key" to link the form element and the related input/output data. When dealing with nested data, break it down in the user task's input mapping before using it.`),setValue,validate:u})}function PathEntry(e){let{editField:t,field:r,getService:i}=e,{type:a}=r,o=[],s=i(`formFields`).get(a);return s&&s.config.pathed&&o.push({id:`path`,component:Path,editField:t,field:r,isEdited}),o}function Path(e){let{editField:t,field:r,id:a}=e,o=useService(`debounce`),s=useService(`pathRegistry`),c=useService(`formFields`).get(r.type).config.repeatable&&r.isRepeating,l=[`path`],u=useService(`translate`),getValue=()=>B(r,l,``),setValue=(e,i)=>{if(!i)return t(r,l,e)},d=i(e=>{if(!e&&c)return u(`Must not be empty`);if(!e&&!c||e===r.path)return null;if(!isValidDotPath(e))return u(c?`Must be a variable or a dot-separated path.`:`Must be empty, a variable or a dot-separated path.`);if(hasIntegerPathSegment(e))return u(`Must not contain numerical path segments.`);if(isProhibitedPath(e))return u(`Must not be a prohibited path.`);let t={replacements:{[r.id]:e.split(`.`)}};return s.executeRecursivelyOnFields(r,({field:e,isClosed:r,isRepeatable:i})=>{let a=s.getValuePath(e,t);return s.canClaimPath(a,{isClosed:r,isRepeatable:i,claimerId:e.id})})?null:u(`Must not cause two binding paths to collide`)},[r,c,s,u]),f=u(c?`Routes the children of this component into a form variable, may be left empty to route at the root level.`:`Routes the children of this component into a form variable.`);return TextfieldEntry({debounce:o,description:u(`Where the child variables of this component are pathed to.`),element:r,getValue,id:a,label:u(`Path`),tooltip:f,setValue,validate:d})}function simpleBoolEntryFactory(e){let{id:t,label:r,description:i,path:a,props:o,getValue:s,setValue:c,isDefaultVisible:l,isTrueDefault:u=!1}=e,{editField:d,field:f}=o;return{id:t,label:r,path:a,field:f,editField:d,description:i,component:SimpleBoolComponent,isEdited:u?isTrueDefaultToggleSwitchEntryEdited:isEdited$7,isDefaultVisible:l,getValue:s,setValue:c}}var SimpleBoolComponent=e=>{let{id:t,label:r,path:i,field:a,editField:o,getValue=()=>B(a,i,``),setValue=e=>o(a,i,e||!1),description:s}=e;return ToggleSwitchEntry({element:a,getValue,id:t,label:r,setValue,inline:!0,description:s})};function simpleSelectEntryFactory(e){let{id:t,label:r,path:i,props:a,optionsArray:o}=e,{editField:s,field:c}=a;return{id:t,label:r,path:i,field:c,editField:s,optionsArray:o,component:SimpleSelectComponent,isEdited:isEdited$3}}var SimpleSelectComponent=e=>{let{id:t,label:r,path:i,field:a,editField:o,optionsArray:s}=e,getValue=()=>B(a,i,``),setValue=e=>o(a,i,e),getOptions=()=>s;return SelectEntry({label:r,element:a,getOptions,getValue,id:t,setValue})};function simpleRangeIntegerEntryFactory(e){let{id:t,label:r,path:i,props:a,min:o,max:s}=e,{editField:c,field:l}=a;return{id:t,label:r,path:i,field:l,editField:c,min:o,max:s,component:SimpleRangeIntegerEntry,isEdited}}var SimpleRangeIntegerEntry=e=>{let{id:t,label:r,path:a,field:o,editField:s,min:c=-(2**53-1),max:l=2**53-1}=e,u=useService(`debounce`),d=useService(`translate`),getValue=()=>{let e=B(o,a);return isValidNumber(e)&&Number.isInteger(e)?e:null},setValue=(e,t)=>{t||s(o,a,Number(e))};return TextfieldEntry({debounce:u,label:r,element:o,getValue,id:t,setValue,validate:i(e=>{if(e!=null&&e!==``){if(!Number.isInteger(Number(e)))return d(`Should be an integer.`);if(fn(e).cmp(c)<0)return d(`Should be at least {value}.`,{value:c.toString()});if(fn(e).cmp(l)>0)return d(`Should be at most {value}.`,{value:l.toString()})}},[c,l,d])})};function GroupAppearanceEntry(e){let{field:t,translate:r}=e,{type:i}=t;return[`group`,`dynamiclist`].includes(i)?[simpleBoolEntryFactory({id:`showOutline`,path:[`showOutline`],label:r(`Show outline`),isTrueDefault:!0,props:e})]:[]}function LabelEntry(e){let{field:t,editField:r}=e,i=[];i.push({id:`date-label`,component:DateLabel,editField:r,field:t,isEdited:isEdited$5,isDefaultVisible:function(e){return e.type===`datetime`&&(e.subtype===hn.DATE||e.subtype===hn.DATETIME)}}),i.push({id:`time-label`,component:TimeLabel,editField:r,field:t,isEdited:isEdited$5,isDefaultVisible:function(e){return e.type===`datetime`&&(e.subtype===hn.TIME||e.subtype===hn.DATETIME)}});let isSimplyLabeled=e=>[...Mi.filter(e=>e!==`datetime`),...ji].includes(e.type);return i.push({id:`label`,component:Label$2,editField:r,field:t,isEdited:isEdited$5,isDefaultVisible:isSimplyLabeled}),i}function Label$2(e){let{editField:t,field:r,id:i}=e,a=useService(`debounce`),o=useService(`translate`),s=useVariables().map(e=>({name:e})),c=[`label`],getValue=()=>B(r,c,``),setValue=e=>t(r,c,e||``);return FeelTemplatingEntry({debounce:a,element:r,getValue,id:i,label:o(getLabelText(r.type)),singleLine:!0,setValue,variables:s})}function DateLabel(e){let{editField:t,field:r,id:i}=e,a=useService(`debounce`),o=useService(`translate`),s=useVariables().map(e=>({name:e})),c=Xt,getValue=()=>B(r,c,``),setValue=e=>t(r,c,e||``);return FeelTemplatingEntry({debounce:a,element:r,getValue,id:i,label:o(`Date label`),singleLine:!0,setValue,variables:s})}function TimeLabel(e){let{editField:t,field:r,id:i}=e,a=useService(`debounce`),o=useService(`translate`),s=useVariables().map(e=>({name:e})),c=Ot,getValue=()=>B(r,c,``),setValue=e=>t(r,c,e||``);return FeelTemplatingEntry({debounce:a,element:r,getValue,id:i,label:o(`Time label`),singleLine:!0,setValue,variables:s})}function getLabelText(e){switch(e){case`group`:case`dynamiclist`:return`Group label`;case`table`:return`Table label`;case`iframe`:case`documentPreview`:return`Title`;default:return`Field label`}}function HeightEntry(e){let{editField:t,field:r,id:i,description:a,isDefaultVisible:o,defaultValue:s}=e,c=[];return c.push({id:i+`-height`,component:Height,description:a,isEdited:isEdited$6,editField:t,field:r,defaultValue:s,isDefaultVisible:e=>I(o)?o(e):e.type===`spacer`}),c}function Height(e){let{description:t,editField:r,field:a,id:o}=e,s=useService(`debounce`),c=useService(`translate`),getValue=e=>B(a,[`height`],null),setValue=(e,t)=>{t||r(a,[`height`],e)};return NumberFieldEntry({debounce:s,description:t,label:c(`Height`),element:a,id:o,getValue,setValue,validate:i(e=>validate$9(e,c),[c])})}var validate$9=(e,t)=>{if(typeof e!=`number`)return t(`A number is required.`);if(!Number.isInteger(e))return t(`Should be an integer.`);if(e<1)return t(`Should be greater than zero.`)};function IFrameHeightEntry(e){let t=e.getService(`translate`);return[...HeightEntry({...e,description:t(`Height of the container in pixels.`),isDefaultVisible:e=>e.type===`iframe`})]}var Ri=/^(https):\/\/*/i;function IFrameUrlEntry(e){let{editField:t,field:r}=e,i=[];return i.push({id:`url`,component:Url,editField:t,field:r,isEdited:isEdited$5,isDefaultVisible:e=>e.type===`iframe`}),i}function Url(e){let{editField:t,field:r,id:a}=e,o=useService(`debounce`),s=useService(`translate`),c=useVariables().map(e=>({name:e})),l=[`url`],getValue=()=>B(r,l,``),setValue=e=>t(r,l,e);return FeelTemplatingEntry({debounce:o,element:r,feel:`optional`,getValue,id:a,label:s(`URL`),setValue,singleLine:!0,tooltip:getTooltip$1(s),validate:i(e=>validate$8(e,s),[s]),variables:c})}function getTooltip$1(e){return f(s,{children:[f(`p`,{children:e(`Enter a HTTPS URL to a source or populate it dynamically via a template or an expression (e.g., to pass a value from the variable).`)}),f(`p`,{children:e(`Please make sure that the URL is safe as it might impose security risks.`)}),f(`p`,{children:[e(`Not all external sources can be displayed in the iFrame. Read more about it in the`),` `,f(`a`,{target:`_blank`,href:`https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Frame-Options`,rel:`noreferrer`,children:e(`X-FRAME-OPTIONS documentation`)}),`.`]})]})}var validate$8=(e,t)=>{if(e&&!e.startsWith(`=`)&&!Ri.test(e))return t(`For security reasons the URL must start with "https".`)};function ImageSourceEntry(e){let{editField:t,field:r}=e,i=[];return i.push({id:`source`,component:Source$1,editField:t,field:r,isEdited:isEdited$5,isDefaultVisible:e=>e.type===`image`}),i}function Source$1(e){let{editField:t,field:r,id:i}=e,a=useService(`debounce`),o=useService(`translate`),s=useVariables().map(e=>({name:e})),c=[`source`],getValue=()=>B(r,c,``),setValue=e=>t(r,c,e);return FeelTemplatingEntry({debounce:a,description:o(`Expression or static value (link/data URI)`),element:r,feel:`optional`,getValue,id:i,label:o(`Image source`),tooltip:o(`Link referring to a hosted image, or use a data URI directly to embed image data into the form.`),setValue,singleLine:!0,variables:s})}var zi=isEditedFromDefaultFactory(Vt,!1);function TextEntry(e){let{editField:t,field:r}=e;return[{id:`text`,component:Text,editField:t,field:r,isEdited:zi,isDefaultVisible:e=>e.type===`text`}]}function Text(e){let{editField:t,field:r,id:i}=e,a=useService(`debounce`),o=useService(`translate`),s=useVariables().map(e=>({name:e})),c=[`text`],getValue=()=>B(r,c,``),setValue=e=>t(r,c,e||``);return FeelTemplatingEntry({debounce:a,description:description$2(o),element:r,getValue,id:i,label:o(`Text`),hostLanguage:`markdown`,setValue,variables:s})}var description$2=e=>f(s,{children:[e(`Supports markdown and templating.`),` `,f(`a`,{href:`https://docs.camunda.io/docs/components/modeler/forms/form-element-library/forms-element-library-text/`,target:`_blank`,rel:`noreferrer`,children:e(`Learn more`)})]});function HtmlEntry(e){let{editField:t,field:r}=e;return[{id:`content`,component:Content,editField:t,field:r,isEdited:isEdited$5,isDefaultVisible:e=>e.type===`html`}]}function Content(e){let{editField:t,field:r,id:i}=e,a=useService(`debounce`),o=useService(`translate`),s=useVariables().map(e=>({name:e})),c=[`content`],getValue=()=>B(r,c,``),setValue=e=>t(r,c,e||``);return FeelTemplatingEntry({debounce:a,description:description$1(o),element:r,getValue,id:i,label:o(`Content`),hostLanguage:`html`,validate:validate$7,setValue,variables:s})}var description$1=e=>f(s,{children:[e(`Supports HTML, styling, and templating. Styles are automatically scoped to the HTML component.`),` `,f(`a`,{href:`https://docs.camunda.io/docs/components/modeler/forms/form-element-library/forms-element-library-html/`,target:`_blank`,rel:`noreferrer`,children:e(`Learn more`)})]}),validate$7=e=>{if(typeof e!=`string`||e===``||e.startsWith(`=`))return null};function NumberEntries(e){let{editField:t,field:r,id:i}=e,a=[];return a.push({id:i+`-decimalDigits`,component:NumberDecimalDigits,isEdited:isEdited$6,editField:t,field:r,isDefaultVisible:e=>e.type===`number`}),a.push({id:i+`-step`,component:NumberArrowStep,isEdited,editField:t,field:r,isDefaultVisible:e=>e.type===`number`}),a}function NumberDecimalDigits(e){let{editField:t,field:r,id:a}=e,o=useService(`debounce`),s=useService(`translate`),getValue=e=>B(r,[`decimalDigits`]),setValue=(e,i)=>{i||t(r,[`decimalDigits`],e)};return NumberFieldEntry({debounce:o,label:s(`Decimal digits`),element:r,step:`any`,getValue,id:a,setValue,validate:i(e=>validateNumberEntries(e,s),[s])})}function NumberArrowStep(e){let{editField:t,field:r,id:a}=e,{decimalDigits:o}=r,s=useService(`debounce`),c=useService(`translate`),getValue=e=>{let t=B(r,[`increment`]);return isValidNumber(t)?t:null},clearLeadingZeroes=e=>{if(!e)return e;let t=e.replace(/^0+/g,``);return(t.startsWith(`.`)?`0`:``)+t},setValue=(e,i)=>{i||t(r,[`increment`],clearLeadingZeroes(e))},l=o||o===0,u=i(e=>{if(e!=null){if(!isValidNumber(e))return c(`Should be a valid number.`);if(fn(e).cmp(0)<=0)return c(`Should be greater than zero.`);if(l){let t=fn(`1e-${o}`);if(fn(e).cmp(t)<0)return c(`Should be at least {value}.`,{value:t.toString()});if(countDecimals(e)>o)return c(`Should not contain more than {value} decimal digits.`,{value:o.toString()})}}},[l,o,c]);return TextfieldEntry({debounce:s,label:c(`Increment`),element:r,getValue,id:a,setValue,validate:u})}var validateNumberEntries=(e,t)=>{if(typeof e==`number`){if(!Number.isInteger(e))return t(`Should be an integer.`);if(e<0)return t(`Should be greater than or equal to zero.`)}};function ExpressionFieldEntries(e){let{editField:t,field:r,id:i}=e,a=[];return a.push({id:`${i}-expression`,component:ExpressionFieldExpression,isEdited:isEdited$5,editField:t,field:r,isDefaultVisible:e=>e.type===`expression`}),a.push({id:`${i}-computeOn`,component:ExpressionFieldComputeOn,isEdited:isEdited$3,editField:t,field:r,isDefaultVisible:e=>e.type===`expression`}),a}function ExpressionFieldExpression(e){let{editField:t,field:r,id:i}=e,a=useService(`debounce`),o=useService(`translate`),s=useVariables().map(e=>({name:e})),getValue=()=>r.expression||``,setValue=e=>{t(r,[`expression`],e)};return FeelEntry({debounce:a,description:o(`Define an expression to calculate the value of this field`),element:r,feel:`required`,getValue,id:i,label:o(`Target value`),setValue,variables:s})}function ExpressionFieldComputeOn(e){let{editField:t,field:r,id:i}=e,a=useService(`translate`),getValue=()=>r.computeOn||``,setValue=e=>{t(r,[`computeOn`],e)},getOptions=()=>[{value:`change`,label:a(`Value changes`)},{value:`presubmit`,label:a(`Form submission`)}];return SelectEntry({id:i,label:a(`Compute on`),getValue,setValue,getOptions})}function NumberSerializationEntry(e){let{editField:t,field:r}=e,i=[];return i.push({id:`serialize-to-string`,component:SerializeToString,isEdited:isEdited$9,editField:t,field:r,isDefaultVisible:e=>e.type===`number`}),i}function SerializeToString(e){let{editField:t,field:r,id:i}=e,{defaultValue:a}=r,o=useService(`translate`),s=[`serializeToString`],getValue=()=>B(r,s,``),setValue=e=>((a||a===0)&&t(r,[`defaultValue`],e?fn(a).toFixed():Number(a)),t(r,s,e));return CheckboxEntry({element:r,getValue,id:i,label:o(`Output as string`),description:o(`Allows arbitrary precision values`),setValue})}function DateTimeEntry(e){let{editField:t,field:r,getService:i}=e,a=i(`translate`),o=[{id:`subtype`,component:DateTimeSubtypeSelect,isEdited:isEdited$3,editField:t,field:r,isDefaultVisible:e=>e.type===`datetime`,translate:a}];return o.push({id:`use24h`,component:Use24h,isEdited:isEdited$9,editField:t,field:r,isDefaultVisible:e=>e.type===`datetime`&&(e.subtype===hn.TIME||e.subtype===hn.DATETIME),translate:a}),o}function DateTimeSubtypeSelect(e){let{editField:t,field:r,id:i,translate:a}=e,getValue=e=>B(r,pn),clearTimeConfig=()=>{let e=[Ot,Ht,on,Bt];for(let i of e)t(r,i,void 0)},initTimeConfig=()=>{t(r,Ot,`Time`),t(r,Bt,zt.UTC_OFFSET),t(r,on,15)},clearDateConfig=()=>{let e=[Xt,rn];for(let i of e)t(r,i,void 0)},initDateConfig=()=>{t(r,Xt,`Date`)},setValue=e=>{let i=getValue();if(i!==e)return e===hn.DATE?(clearTimeConfig(),i===hn.TIME&&initDateConfig()):e===hn.TIME?(clearDateConfig(),i===hn.DATE&&initTimeConfig()):e===hn.DATETIME&&(i===hn.DATE&&initTimeConfig(),i===hn.TIME&&initDateConfig()),t(r,pn,e)},getDatetimeSubtypes=()=>Object.values(hn).map(e=>({label:a(ln[e]),value:e}));return SelectEntry({label:a(`Subtype`),element:r,getOptions:getDatetimeSubtypes,getValue,id:i,setValue})}function Use24h(e){let{editField:t,field:r,id:i,translate:a}=e,o=Ht,getValue=()=>B(r,o,``),setValue=e=>t(r,o,e);return CheckboxEntry({element:r,getValue,id:i,label:a(`Use 24h`),setValue})}var Bi=isEditedFromDefaultFactory(`15`);function DateTimeConstraintsEntry(e){let{editField:t,field:r,id:i}=e;function isDefaultVisible(e){return t=>t.type===`datetime`&&e.includes(t.subtype)}let a=[];return a.push({id:i+`-timeInterval`,component:TimeIntervalSelect,isEdited:Bi,editField:t,field:r,isDefaultVisible:isDefaultVisible([hn.TIME,hn.DATETIME])}),a.push({id:i+`-disallowPassedDates`,component:DisallowPassedDates,isEdited:isEdited$9,editField:t,field:r,isDefaultVisible:isDefaultVisible([hn.DATE,hn.DATETIME])}),a}function DisallowPassedDates(e){let{editField:t,field:r,id:i}=e,a=rn,o=useService(`translate`),getValue=()=>B(r,a,``),setValue=e=>t(r,a,e);return CheckboxEntry({element:r,getValue,id:i,label:o(`Disallow past dates`),setValue})}function TimeIntervalSelect(e){let{editField:t,field:r,id:i}=e,a=[1,5,10,15,30,60],o=useService(`translate`),getValue=e=>B(r,on),setValue=e=>t(r,on,parseInt(e)),getTimeIntervals=()=>a.map(e=>({label:e===60?`1h`:e+`m`,value:e}));return SelectEntry({label:o(`Time interval`),element:r,getOptions:getTimeIntervals,getValue,id:i,setValue})}var Vi=isEditedFromDefaultFactory(zt.UTC_OFFSET);function DateTimeFormatEntry(e){let{editField:t,field:r}=e,i=[];return i.push({id:`time-format`,component:TimeFormatSelect,isEdited:Vi,editField:t,field:r,isDefaultVisible:e=>e.type===`datetime`&&(e.subtype===hn.TIME||e.subtype===hn.DATETIME)}),i}function TimeFormatSelect(e){let{editField:t,field:r,id:i}=e,a=useService(`translate`),getValue=e=>B(r,Bt),setValue=e=>t(r,Bt,e),getTimeSerialisingFormats=()=>Object.values(zt).map(e=>({label:a(an[e]),value:e}));return SelectEntry({label:a(`Time format`),element:r,getOptions:getTimeSerialisingFormats,getValue,id:i,setValue})}function SelectEntries(e){return[simpleBoolEntryFactory({id:`searchable`,path:[`searchable`],label:e.getService(`translate`)(`Searchable`),props:e,isDefaultVisible:e=>e.type===`select`})]}function ValueEntry(e){let{editField:t,field:r,idPrefix:i,index:a,validateFactory:o}=e;return[{component:Label$1,editField:t,field:r,id:i+`-label`,idPrefix:i,index:a,validateFactory:o},{component:Value$1,editField:t,field:r,id:i+`-value`,idPrefix:i,index:a,validateFactory:o}]}function Label$1(e){let{editField:t,field:r,id:i,index:a,validateFactory:o}=e,s=useService(`debounce`),c=useService(`translate`),setValue=(e,i)=>{if(i)return;let o=B(r,[`values`]);return t(r,`values`,E(o,[a,`label`],e))},getValue=()=>B(r,[`values`,a,`label`]),l=d(()=>o(B(r,[`values`,a,`label`]),e=>e.label),[r,a,o]);return TextfieldEntry({debounce:s,element:r,getValue,id:i,label:c(`Label`),setValue,validate:l})}function Value$1(e){let{editField:t,field:r,id:i,index:a,validateFactory:o}=e,s=useService(`debounce`),c=useService(`translate`),setValue=(e,i)=>{if(i)return;let{defaultValue:o}=r,s=B(r,[`values`]),c=B(r,[`values`,a,`value`]);return!Pe(o)&&o===c&&E(r,[`defaultValue`],e),t(r,`values`,E(s,[a,`value`],e))},getValue=()=>B(r,[`values`,a,`value`]),l=d(()=>o(B(r,[`values`,a,`value`]),e=>e.value),[r,a,o]);return TextfieldEntry({debounce:s,element:r,getValue,id:i,label:c(`Value`),setValue,validate:l})}function CustomValueEntry(e){let{editField:t,field:r,idPrefix:i,index:a,validateFactory:o}=e;return[{component:Key$1,editField:t,field:r,id:i+`-key`,idPrefix:i,index:a,validateFactory:o},{component:Value,editField:t,field:r,id:i+`-value`,idPrefix:i,index:a,validateFactory:o}]}function Key$1(e){let{editField:t,field:r,id:i,index:a,validateFactory:o}=e,s=useService(`debounce`),c=useService(`translate`),setValue=(e,i)=>{if(i)return;let o=B(r,[`properties`]),s=Object.keys(o)[a];return t(r,`properties`,updateKey(o,s,e))},getValue=()=>Object.keys(B(r,[`properties`]))[a],l=d(()=>o(Object.keys(B(r,[`properties`]))[a]),[o,r,a]);return TextfieldEntry({debounce:s,element:r,getValue,id:i,label:c(`Key`),setValue,validate:l})}function Value(e){let{editField:t,field:r,id:i,index:a,validateFactory:o}=e,s=useService(`debounce`),c=useService(`translate`),setValue=e=>{let i=B(r,[`properties`]),o=Object.keys(i)[a];t(r,`properties`,updateValue(i,o,e))},getValue=()=>{let e=B(r,[`properties`]),t=Object.keys(e)[a];return B(r,[`properties`,t])};return TextfieldEntry({debounce:s,element:r,getValue,id:i,label:c(`Value`),setValue,validate:o(getValue())})}function updateValue(e,t,r){return{...e,[t]:r}}function updateKey(e,t,r){return Object.entries(e).reduce((e,i)=>{let[a,o]=i;return{...e,[a===t?r:a]:o}},{})}function AutoFocusSelectEntry(e){let{autoFocusEntry:t,element:r,getValue:i}=e,a=i(r),o=usePrevious(a),s=useService(`eventBus`);return y(()=>{t&&o&&a!==o&&setTimeout(()=>{s.fire(`propertiesPanel.showEntry`,{id:t})})},[a,t,o,s]),f(SelectEntry,{...e})}var Hi=isEditedFromDefaultFactory(Wt.STATIC);function OptionsSourceSelectEntry(e){let{editField:t,field:r,id:i,translate:a}=e;return[{id:i+`-select`,component:ValuesSourceSelect,isEdited:Hi,editField:t,field:r,translate:a}]}function ValuesSourceSelect(e){let{editField:t,field:r,id:i,translate:a}=e,o=qt,setValue=e=>{let i=r,a={};return a[Gt[e]]=At[e],i=t(r,a),i},getOptionsSourceOptions=()=>Object.values(Wt).map(e=>({label:a(vn[e]),value:e}));return AutoFocusSelectEntry({autoFocusEntry:getAutoFocusEntryId$1(r),label:a(`Type`),element:r,getOptions:getOptionsSourceOptions,getValue:o,id:i,setValue})}function getAutoFocusEntryId$1(e){let t=qt(e);return t===Wt.EXPRESSION?`optionsExpression-expression`:t===Wt.INPUT?`dynamicOptions-key`:t===Wt.STATIC?`staticOptions-0-label`:null}function InputKeyOptionsSourceEntry(e){let{editField:t,field:r,id:i}=e;return[{id:i+`-key`,component:InputValuesKey,isEdited,editField:t,field:r}]}function InputValuesKey(e){let{editField:t,field:r,id:a}=e,o=useService(`debounce`),s=useService(`translate`),c=Gt[Wt.INPUT],l=f(`div`,{children:[s(`The input property may be an array of simple values or alternatively follow this schema:`),f(`pre`,{children:f(`code`,{children:`[
|
|
1
|
+
import{o as e}from"./rolldown-runtime-B8BYMn-z.js";import{_ as t,c as r,d as i,f as a,g as o,h as s,i as c,m as l,n as u,o as d,r as f,s as p,t as h,u as y}from"./vendor-NJP34MHU.js";import{i as b}from"./translator-OIpY8kTG.js";import{F as x,H as S,t as C}from"./bridgeInstance-BZBhe5hF.js";import{A as E,I as M,R as N,_ as I,b as z,d as B,g as X,h as ee,k as te,m as fe,n as xe,p as Te,r as Oe,t as je,u as Me,v as Pe,x as Fe,y as Le}from"./dist-CRJyslwo.js";import{f as Re,g as ze}from"./moddle-CGpeSs3G.js";import{t as Be}from"./dist-BqwyxNP3.js";import{t as Ve}from"./platform-CjEV0T5t.js";import{a as He,c as Ue,d as We,g as Ge,h as Ke,i as qe,l as Je,m as Xe,n as Ze,r as Qe,s as $e,t as et,u as tt,v as nt}from"./documentBridge-4fZNBdp4.js";import{S as rt,g as it,k as at,v as ot,y as st}from"./bpmnTheme-C3HdVV1D.js";import{s as ct}from"./ui-BLMlfdD3.js";import{a as lt,i as ut,r as dt}from"./lib-De3fPoUi.js";import{$t as ft,Yt as pt,Zt as mt,rn as ht,tn as gt}from"./Viewer-CZiVl0t6.js";import{$ as _t,I as vt,lt as yt}from"./dist-CsBP6QjA.js";import{n as bt}from"./dist-DvFyMwGd.js";import{r as xt}from"./dist-sl8LIbwu.js";import{t as St}from"./array-move-Bc4mVEdq.js";import{Ct,E as wt,b as Tt,o as Et,w as Dt}from"./web-Q9VZNxQi.js";import{A as Ot,B as kt,C as At,D as jt,E as Mt,F as Nt,G as Pt,H as Ft,I as It,K as Lt,L as Rt,M as zt,N as Bt,O as Vt,P as Ht,R as Ut,S as Wt,T as Gt,U as Kt,V as qt,W as Jt,_ as Yt,a as Xt,b as Zt,c as Qt,d as $t,f as en,g as tn,h as nn,i as rn,j as an,k as on,l as sn,m as cn,n as ln,o as un,p as dn,q as fn,r as pn,s as mn,t as hn,u as gn,v as _n,w as vn,x as yn,y as bn,z as xn}from"./index.es-BP1Cc_0e.js";import{t as Sn}from"./formChecks-Bvuzw2sb.js";import{n as Cn,r as wn,t as Tn}from"./UnreadableFileLayer-DbW33CnE.js";fe();var En=e(dt());function _e(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,`default`)?e.default:e}var Ne=function(e,t){return Array.prototype.slice.call(e,t)},Dn=typeof setImmediate==`function`?function(e){setImmediate(e)}:function(e){setTimeout(e,0)},Ie=function(e,t,r){e&&Dn(function(){e.apply(r||null,t||[])})},On=Ne,kn=Ie,Ye=function(e,t){var r=t||{},i={};return e===void 0&&(e={}),e.on=function(t,r){return i[t]?i[t].push(r):i[t]=[r],e},e.once=function(t,r){return r._once=!0,e.on(t,r),e},e.off=function(t,r){var a=arguments.length;if(a===1)delete i[t];else if(a===0)i={};else{var o=i[t];if(!o)return e;o.splice(o.indexOf(r),1)}return e},e.emit=function(){var t=On(arguments);return e.emitterSnapshot(t.shift()).apply(this,t)},e.emitterSnapshot=function(t){var a=(i[t]||[]).slice(0);return function(){var i=On(arguments),o=this||e;if(t===`error`&&r.throws!==!1&&!a.length)throw i.length===1?i[0]:i;return a.forEach(function(a){r.async?kn(a,i,o):a.apply(o,i),a._once&&e.off(t,a)}),e}},e},An=_e(Ye),jn={},Mn=`(?:^|\\s)`,Nn=`(?:\\s|$)`;function le(e){let t=jn[e];return t?t.lastIndex=0:jn[e]=t=new RegExp(Mn+e+Nn,`g`),t}function Y(e,t){let r=e.className;r.length?le(t).test(r)||(e.className+=` `+t):e.className=t}function L(e,t){e.className=e.className.replace(le(t),` `).trim()}var ke=(e,t)=>({containers:t,moves:()=>!0,accepts:()=>!0,invalid:()=>!1,isContainer:()=>!1,transformOffset:e=>e,copy:!1,copySortSource:!1,revertOnSpill:!1,removeOnSpill:!1,direction:`vertical`,ignoreInputTextSelection:!0,mirrorContainer:document.body,...e});function ne(e){if(e.touches!==void 0)return e.touches.length;if(e.which!==void 0&&e.which!==0)return e.which;if(e.buttons!==void 0)return e.buttons;let t=e.button;if(t!==void 0)return t&1?1:t&2?3:t&4?2:0}var Ae=e=>{let t=e.getBoundingClientRect();return{left:t.left+re(`scrollLeft`,`pageXOffset`),top:t.top+re(`scrollTop`,`pageYOffset`)}},re=(e,t)=>typeof global[t]<`u`?global[t]:document.documentElement.clientHeight?document.documentElement[e]:document.body[e],ie=(e={},t,r)=>{let i=e.className||``;e.className+=` gu-hide`;let a=document.elementFromPoint(t,r);return e.className=i,a},oe=e=>e.width||e.right-e.left,ce=e=>e.height||e.bottom-e.top,v=e=>e.parentNode===document?null:e.parentNode,ue=e=>[`INPUT`,`TEXTAREA`,`SELECT`].includes(e?.tagName)||se(e),se=e=>!e||e.contentEditable===`false`?!1:e.contentEditable===`true`||se(v(e)),T=e=>{let n=()=>{let t=e;do t=t.nextSibling;while(t&&t.nodeType!==1);return t};return e.nextElementSibling||n()};window.global||(window.global=window);var Pn=document,Fn=Pn.documentElement;function De(e=[],t={}){Array.isArray(e)||(t=e,e=[]);let r,i,a,o,s,c,l,u,d,f,p,h,y,b=ke(t,e),x=An({containers:b.containers,start:ve,end:G,cancel:q,remove:W,destroy:ae,canMove:ge,dragging:!1});return b.removeOnSpill&&x.on(`over`,he).on(`out`,be),j(),x;function R(e){return x.containers.indexOf(e)!==-1||b.isContainer(e)}function j(e){let t=e?`removeEventListener`:`addEventListener`;Fn[t](`pointerdown`,me,!0),Fn[t](`pointerup`,D,!0)}function k(e){Fn[e?`removeEventListener`:`addEventListener`](`pointermove`,pe,!0)}function H(e){Fn[e?`removeEventListener`:`addEventListener`](`click`,de,!0)}function ae(){j(!0),D({})}function de(e){y&&e.preventDefault()}function me(e){if(c=e.clientX,l=e.clientY,ne(e)!==1||e.metaKey||e.ctrlKey)return;let t=e.target,r=A(t);r&&(y=r,k(),e.type===`pointerdown`&&(ue(t)?t.focus():e.preventDefault()))}function pe(e){if(!y)return;if(ne(e)===0){D({});return}if(e.clientX!==void 0&&Math.abs(e.clientX-c)<=(b.slideFactorX||0)&&e.clientY!==void 0&&Math.abs(e.clientY-l)<=(b.slideFactorY||0))return;if(b.ignoreInputTextSelection){let{clientX:t=0,clientY:r=0}=e;if(ue(Pn.elementFromPoint(t,r)))return}let t=y;k(!0),H(),G(),K(t);let r=Ae(a),i=b.transformOffset(r,e,a),{pageX:u=0,pageY:d=0}=e;o=u-i.left,s=d-i.top,Y(f||a,`gu-transit`),ye(),$(e)}function A(e){if(x.dragging&&r||R(e))return;let t=e;for(;v(e)&&R(v(e))===!1;)if(b.invalid(e,t)||(e=v(e),!e))return;let i=v(e);if(i&&!b.invalid(e,t)&&b.moves(e,i,t,T(e)))return{item:e,source:i}}function ge(e){return!!A(e)}function ve(e){let t=A(e);t&&K(t)}function K(e){Ee(e.item,e.source)&&(f=e.item.cloneNode(!0),x.emit(`cloned`,f,e.item,`copy`)),i=e.source,a=e.item,u=d=T(e.item),x.dragging=!0,x.emit(`drag`,a,i)}function G(){if(!x.dragging)return;let e=f||a;V(e,v(e))}function U(){y=!1,k(!0),H(!0)}function D(e){if(U(),!x.dragging)return;let t=f||a,{clientX:o=0,clientY:s=0}=e,c=J(ie(r,o,s),o,s);c&&(f&&b.copySortSource||!f||c!==i)?V(t,c):b.removeOnSpill?W():q()}function V(e,t){let r=v(e);f&&b.copySortSource&&t===i&&r.removeChild(a),P(t)?x.emit(`cancel`,e,i,i):x.emit(`drop`,e,t,i,d),F()}function W(){if(!x.dragging)return;let e=f||a,t=v(e);t&&t.removeChild(e),x.emit(f?`cancel`:`remove`,e,t,i),F()}function q(e){if(!x.dragging)return;let t=arguments.length>0?e:b.revertOnSpill,r=f||a,o=v(r),s=P(o);s===!1&&t&&(f?o&&o.removeChild(f):i.insertBefore(r,u)),s||t?x.emit(`cancel`,r,i,i):x.emit(`drop`,r,o,i,d),F()}function F(){let e=f||a;U(),Se(),e&&L(e,`gu-transit`),p&&clearTimeout(p),x.dragging=!1,h&&x.emit(`out`,e,h,i),x.emit(`dragend`,e),i=a=f=u=d=p=h=null}function P(e,t){let o;return o=t===void 0?r?d:T(f||a):t,e===i&&o===u}function J(e,t,r){let o=e;for(;o&&!g();)o=v(o);return o;function g(){if(R(o)===!1)return!1;let s=Q(o,e),c=Z(o,s,t,r);return P(o,c)?!0:b.accepts(a,o,i,c)}}function $(e){if(!r)return;e.preventDefault();let{clientX:t=0,clientY:c=0}=e,l=t-o,p=c-s;r.style.left=l+`px`,r.style.top=p+`px`;let y=f||a,S=ie(r,t,c),C=J(S,t,c),E=C!==null&&C!==h;(E||C===null)&&(we(),h=C,Ce());let M=v(y);if(C===i&&f&&!b.copySortSource){M&&M.removeChild(y);return}let N,I=Q(C,S);if(I!==null)N=Z(C,I,t,c);else if(b.revertOnSpill===!0&&!f)N=u,C=i;else{f&&M&&M.removeChild(y);return}(N===null&&E||N!==y&&N!==T(y))&&(d=N,C.insertBefore(y,N),x.emit(`shadow`,y,C,i));function _(e){x.emit(e,y,h,i)}function Ce(){E&&_(`over`)}function we(){h&&_(`out`)}}function he(e){L(e,`gu-hide`)}function be(e){x.dragging&&Y(e,`gu-hide`)}function ye(){if(r)return;let e=a.getBoundingClientRect();r=a.cloneNode(!0),r.style.width=oe(e)+`px`,r.style.height=ce(e)+`px`,L(r,`gu-transit`),Y(r,`gu-mirror`),b.mirrorContainer.appendChild(r),Fn.addEventListener(`pointermove`,$),Y(b.mirrorContainer,`gu-unselectable`),x.emit(`cloned`,r,a,`mirror`)}function Se(){r&&=(L(b.mirrorContainer,`gu-unselectable`),Fn.removeEventListener(`pointermove`,$),v(r).removeChild(r),null)}function Q(e,t){let r=t;for(;r!==e&&v(r)!==e;)r=v(r);return r===Fn?null:r}function Z(e,t,r,o){let s=(typeof b.direction==`function`?b.direction(a,e,i):b.direction)===`horizontal`;return t===e?O():m();function O(){let t=e.children.length,i,a,c;for(i=0;i<t;i++)if(a=e.children[i],c=a.getBoundingClientRect(),s&&c.left+c.width/2>r||!s&&c.top+c.height/2>o)return a;return null}function m(){let e=t.getBoundingClientRect();return w(s?r>e.left+oe(e)/2:o>e.top+ce(e)/2)}function w(e){return e?T(t):t}}function Ee(e,t){return typeof b.copy==`boolean`?b.copy:b.copy(e,t)}}function translate(e,t){return t||={},e.replace(/{([^}]+)}/g,function(e,r){return t[r]||`{`+r+`}`})}var In={translate:[`value`,translate]},Ln=`__fn`,Rn=1e3,zn=Array.prototype.slice;function EventBus(){this._listeners={},this.on(`diagram.destroy`,1,this._destroy,this)}EventBus.prototype.on=function(e,t,r,i){if(e=ee(e)?e:[e],I(t)&&(i=r,r=t,t=Rn),!Le(t))throw Error(`priority must be a number`);var a=r;i&&(a=xe(r,i),a[Ln]=r[Ln]||r);var o=this;e.forEach(function(e){o._addListener(e,{priority:t,callback:a,next:null})})},EventBus.prototype.once=function(e,t,r,i){var a=this;if(I(t)&&(i=r,r=t,t=Rn),!Le(t))throw Error(`priority must be a number`);function wrappedCallback(){wrappedCallback.__isTomb=!0;var t=r.apply(i,arguments);return a.off(e,wrappedCallback),t}wrappedCallback[Ln]=r,this.on(e,t,wrappedCallback)},EventBus.prototype.off=function(e,t){e=ee(e)?e:[e];var r=this;e.forEach(function(e){r._removeListener(e,t)})},EventBus.prototype.createEvent=function(e){var t=new InternalEvent;return t.init(e),t},EventBus.prototype.fire=function(e,t){var r,i,a,o=zn.call(arguments);if(typeof e==`object`&&(t=e,e=t.type),!e)throw Error(`no event type specified`);if(i=this._listeners[e],i){r=t instanceof InternalEvent?t:this.createEvent(t),o[0]=r;var s=r.type;e!==s&&(r.type=e);try{a=this._invokeListeners(r,o,i)}finally{e!==s&&(r.type=s)}return a===void 0&&r.defaultPrevented&&(a=!1),a}},EventBus.prototype.handleError=function(e){return this.fire(`error`,{error:e})===!1},EventBus.prototype._destroy=function(){this._listeners={}},EventBus.prototype._invokeListeners=function(e,t,r){for(var i;r&&!e.cancelBubble;)i=this._invokeListener(e,t,r),r=r.next;return i},EventBus.prototype._invokeListener=function(e,t,r){var i;if(r.callback.__isTomb)return i;try{i=invokeFunction(r.callback,t),i!==void 0&&(e.returnValue=i,e.stopPropagation()),i===!1&&e.preventDefault()}catch(e){if(!this.handleError(e))throw console.error(`unhandled error in event listener`,e),e}return i},EventBus.prototype._addListener=function(e,t){var r=this._getListeners(e),i;if(!r)this._setListeners(e,t);else{for(;r;){if(r.priority<t.priority){t.next=r,i?i.next=t:this._setListeners(e,t);return}i=r,r=r.next}i.next=t}},EventBus.prototype._getListeners=function(e){return this._listeners[e]},EventBus.prototype._setListeners=function(e,t){this._listeners[e]=t},EventBus.prototype._removeListener=function(e,t){var r=this._getListeners(e),i,a,o;if(!t)this._setListeners(e,null);else for(;r;)i=r.next,o=r.callback,(o===t||o[Ln]===t)&&(a?a.next=i:this._setListeners(e,i)),a=r,r=i};function InternalEvent(){}InternalEvent.prototype.stopPropagation=function(){this.cancelBubble=!0},InternalEvent.prototype.preventDefault=function(){this.defaultPrevented=!0},InternalEvent.prototype.init=function(e){je(this,e||{})};function invokeFunction(e,t){return e.apply(null,t)}function DebounceFactory(e=!0){let t=typeof e==`number`?e:e?300:0;return t?e=>Oe(e,t):e=>e}DebounceFactory.$inject=[`config.debounce`];var FormFieldRegistry=class extends dn{updateId(e,t){if(this._validateId(t),this._eventBus.fire(`formField.updateId`,{formField:e,newId:t}),this.remove(e),e.id=t,this.add(e),`components`in e)for(let r of e.components)r._parent=t}_validateId(e){if(!e)throw Error(`formField must have an id`);if(this.get(e))throw Error(`formField with id `+e+` already added`)}},Bn=16,Vn=16,Hn=2,Un=4,FormLayoutValidator=class{constructor(e,t,r){this._formLayouter=e,this._formFieldRegistry=t,this._translate=r}validateField(e={},t,r){if(Number.isInteger(t)){if(t<Hn)return this._translate(`Minimum {value} columns are allowed`,{value:Hn.toString()});if(t>Vn)return this._translate(`Maximum {value} columns are allowed`,{value:Vn.toString()})}r||=this._formLayouter.getRowForField(e);let i=parseInt(t)||0,a=1,o=+!t;return r.components.forEach(t=>{if(e.id===t)return;let r=(this._formFieldRegistry.get(t).layout||{}).columns;r||o++,i+=parseInt(r)||0,a++}),i>Bn||o>0&&i>calculateMaxColumnsWithAuto(o)||t===Bn&&a>1?this._translate(`New value exceeds the maximum of {value} columns per row`,{value:Bn.toString()}):a>Un?this._translate(`Maximum {value} fields per row are allowed`,{value:Un.toString()}):null}};FormLayoutValidator.$inject=[`formLayouter`,`formFieldRegistry`,`translate`];function calculateMaxColumnsWithAuto(e){return Bn-e*2}var Wn=createEmptyImage();function editorFormFieldClasses(e,{disabled:t=!1}={}){if(!e)throw Error(`type required`);return(0,En.default)(`fjs-form-field`,`fjs-form-field-${e}`,{"fjs-disabled":t})}function createDragger$1(e){let t,r,i;function onDragStart(e){t=this,r=e.clientX,i=e.clientY,e.dataTransfer&&e.dataTransfer.setDragImage(Wn,0,0),document.addEventListener(`dragover`,onDrag),document.addEventListener(`dragend`,onEnd),document.addEventListener(`drop`,preventDefault$1)}function onDrag(a){let o={x:a.clientX-r,y:a.clientY-i};return e.call(t,a,o)}function onEnd(){document.removeEventListener(`dragover`,onDrag),document.removeEventListener(`dragend`,onEnd),document.removeEventListener(`drop`,preventDefault$1)}return onDragStart}function throttle(e){let t=!1,r=[],i;return function(...a){r=a,i=this,!t&&(t=!0,e.apply(i,r),window.requestAnimationFrame(function(){r=i=t=void 0}))}}function preventDefault$1(e){e.preventDefault(),e.stopPropagation()}function createEmptyImage(){let e=new Image;return e.src=`data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7`,e}function EditorIFrame(e){let{field:t,domId:r}=e,{label:i}=t,a=Jt(t.type);return f(`div`,{class:editorFormFieldClasses(t.type),children:[f(Zt,{id:r,label:i}),f(`div`,{class:`fjs-iframe-placeholder`,id:r,children:f(`p`,{class:`fjs-iframe-placeholder-text`,children:[f(a,{width:`32`,height:`24`,viewBox:`0 0 56 56`}),`iFrame`]})})]})}EditorIFrame.config=_n.config;var Gn=o({drake:null});function getService(e,t){}var Kn=o({getService});function useService(e,t){let{getService:r}=a(Kn);return r(e,t)}var qn;function _extends$5(){return _extends$5=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r)({}).hasOwnProperty.call(r,i)&&(e[i]=r[i])}return e},_extends$5.apply(null,arguments)}var Jn=function SvgClose(e){return t(`svg`,_extends$5({xmlns:`http://www.w3.org/2000/svg`,width:16,height:16,fill:`currentColor`},e),qn||=t(`path`,{fillRule:`evenodd`,d:`m12 4.7-.7-.7L8 7.3 4.7 4l-.7.7L7.3 8 4 11.3l.7.7L8 8.7l3.3 3.3.7-.7L8.7 8z`,clipRule:`evenodd`}))},Yn,Xn;function _extends$4(){return _extends$4=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r)({}).hasOwnProperty.call(r,i)&&(e[i]=r[i])}return e},_extends$4.apply(null,arguments)}var Zn=function SvgDelete(e){return t(`svg`,_extends$4({xmlns:`http://www.w3.org/2000/svg`,width:16,height:16,fill:`none`},e),t(`rect`,{width:16,height:16,x:.536,fill:`#fff`,rx:3,style:{mixBlendMode:`multiply`}}),t(`path`,{fill:`#fff`,d:`M0 0h16v16H0z`,style:{mixBlendMode:`multiply`},transform:`translate(.536)`}),Yn||=t(`path`,{fill:`currentcolor`,d:`M7.536 6h-1v6h1zm3 0h-1v6h1z`}),Xn||=t(`path`,{fill:`currentcolor`,d:`M2.536 3v1h1v10a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V4h1V3zm2 11V4h8v10zm6-13h-4v1h4z`}))},Qn;function _extends$3(){return _extends$3=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r)({}).hasOwnProperty.call(r,i)&&(e[i]=r[i])}return e},_extends$3.apply(null,arguments)}var $n=function SvgDraggable(e){return t(`svg`,_extends$3({xmlns:`http://www.w3.org/2000/svg`,xmlSpace:`preserve`,width:16,height:16,fill:`currentcolor`,viewBox:`0 0 32 32`},e),Qn||=t(`path`,{d:`M10 6h4v4h-4zm8 0h4v4h-4zm-8 8h4v4h-4zm8 0h4v4h-4zm-8 8h4v4h-4zm8 0h4v4h-4z`}),t(`path`,{d:`M0 0h32v32H0z`,style:{fill:`none`}}))},er;function _extends$2(){return _extends$2=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r)({}).hasOwnProperty.call(r,i)&&(e[i]=r[i])}return e},_extends$2.apply(null,arguments)}var tr=function SvgSearch(e){return t(`svg`,_extends$2({xmlns:`http://www.w3.org/2000/svg`,width:15,height:15,fill:`none`},e),er||=t(`path`,{fill:`currentColor`,d:`m14.5 13.793-3.776-3.776a5.508 5.508 0 1 0-.707.707l3.776 3.776zM2 6.5a4.5 4.5 0 1 1 9 0 4.5 4.5 0 0 1-9 0`}))},nr,rr,ir,ar,or,sr,cr,lr;function _extends$1(){return _extends$1=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r)({}).hasOwnProperty.call(r,i)&&(e[i]=r[i])}return e},_extends$1.apply(null,arguments)}var ur=function SvgEmptyForm(e){return t(`svg`,_extends$1({xmlns:`http://www.w3.org/2000/svg`,width:126,height:96,fill:`none`},e),nr||=t(`path`,{fill:`#FF832B`,fillRule:`evenodd`,d:`M70 78v8a3 3 0 0 1-3 3h-8v-5h6v-6zm0-16h-5V46h5zm0-32h-5v-6h-6v-5h8a3 3 0 0 1 3 3zM43 19v5H27v-5zm-32 0v5H5v6H0v-8a3 3 0 0 1 3-3zM0 46h5v16H0zm0 32h5v6h6v5H3a3 3 0 0 1-3-3zm27 11v-5h16v5z`,clipRule:`evenodd`}),rr||=t(`rect`,{width:70,height:70,fill:`#E5E5E5`,rx:3,transform:`matrix(-1 0 0 1 94 0)`}),ir||=t(`mask`,{id:`EmptyForm_svg__a`,fill:`#fff`},t(`path`,{fillRule:`evenodd`,d:`M87.085 88.684 75.43 45.185l43.499 11.656-11.044 8.072 8.557 8.556-12.728 12.728-8.557-8.556z`,clipRule:`evenodd`})),ar||=t(`path`,{fill:`#393939`,fillRule:`evenodd`,d:`M87.085 88.684 75.43 45.185l43.499 11.656-11.044 8.072 8.557 8.556-12.728 12.728-8.557-8.556z`,clipRule:`evenodd`}),or||=t(`path`,{fill:`#393939`,d:`M75.43 45.185 70.6 46.48l-2.241-8.365 8.365 2.242zm11.655 43.499 4.037 2.95-6.163 8.432-2.704-10.088zm31.844-31.843 1.294-4.83 10.088 2.703-8.432 6.163zm-11.044 8.072-3.535 3.535-4.128-4.127 4.713-3.445zm8.557 8.556 3.535-3.535 3.536 3.535-3.536 3.536zm-12.728 12.728 3.536 3.536-3.536 3.535-3.536-3.535zm-8.557-8.556-4.036-2.951 3.444-4.713 4.128 4.128zM80.26 43.89 91.915 87.39l-9.66 2.588L70.6 46.48zm37.375 17.78L74.136 50.014l2.588-9.66 43.499 11.656zm-12.699-.795 11.043-8.072 5.901 8.073-11.043 8.072zm7.971 16.129-8.556-8.557 7.071-7.07 8.556 8.556zm-12.728 5.657 12.728-12.728 7.071 7.07-12.727 12.729zm-1.485-8.557 8.557 8.557-7.072 7.07-8.556-8.556zM83.049 85.733 91.12 74.69l8.073 5.901-8.072 11.044z`,mask:`url(#EmptyForm_svg__a)`}),sr||=t(`path`,{stroke:`#000`,strokeLinecap:`round`,strokeWidth:3,d:`m69.431 39.163-9.192-9.192`}),cr||=t(`path`,{stroke:`#000`,strokeLinecap:`round`,strokeWidth:3,d:`M1.5-1.5h8`,transform:`matrix(-1 0 0 1 68.213 50.123)`}),lr||=t(`path`,{stroke:`#000`,strokeLinecap:`round`,strokeWidth:3,d:`M78.969 36.367v-8`}))};function EditorText(e){let{type:t,text:r=``}=e.field,i=Jt(`text`),a=useService(`templating`),o=useService(`expressionLanguage`),s=useService(`translate`);return!r||!r.trim()?f(`div`,{class:editorFormFieldClasses(t),children:f(`div`,{class:`fjs-form-field-placeholder`,children:[f(i,{viewBox:`0 0 54 54`}),s(`Text view is empty`)]})}):o.isExpression(r)?f(`div`,{class:editorFormFieldClasses(t),children:f(`div`,{class:`fjs-form-field-placeholder`,children:[f(i,{viewBox:`0 0 54 54`}),s(`Text view is populated by an expression`)]})}):a.isTemplate(r)?f(`div`,{class:editorFormFieldClasses(t),children:f(`div`,{class:`fjs-form-field-placeholder`,children:[f(i,{viewBox:`0 0 54 54`}),s(`Text view is templated`)]})}):f(It,{...e,disableLinks:!0})}EditorText.config=It.config;function EditorHtml(e){let{type:t,content:r=``}=e.field,i=Jt(t),a=useService(`templating`),o=useService(`expressionLanguage`),s=useService(`translate`);return!r||!r.trim()?f(`div`,{class:editorFormFieldClasses(t),children:f(`div`,{class:`fjs-form-field-placeholder`,children:[f(i,{viewBox:`0 0 54 54`}),s(`Html view is empty`)]})}):o.isExpression(r)?f(`div`,{class:editorFormFieldClasses(t),children:f(`div`,{class:`fjs-form-field-placeholder`,children:[f(i,{viewBox:`0 0 54 54`}),s(`Html view is populated by an expression`)]})}):a.isTemplate(r)?f(`div`,{class:editorFormFieldClasses(t),children:f(`div`,{class:`fjs-form-field-placeholder`,children:[f(i,{viewBox:`0 0 54 54`}),s(`Html view is templated`)]})}):f(Yt,{...e,disableLinks:!0})}EditorHtml.config=Yt.config;function EditorTable(e){let{columnsExpression:t,columns:r,id:i,label:a}=e.field,o=useService(`translate`),s=typeof t==`string`&&t.length>0||Array.isArray(r)&&r.length===0?[{key:`1`,label:o(`Column {index}`,{index:`1`})},{key:`2`,label:o(`Column {index}`,{index:`2`})},{key:`3`,label:o(`Column {index}`,{index:`3`})}]:r,c=`fjs-form-${i}`;return f(`div`,{class:editorFormFieldClasses(`table`,{disabled:!0}),children:[f(Zt,{id:c,label:a}),f(`div`,{class:`fjs-table-middle-container`,children:f(`div`,{class:`fjs-table-inner-container`,children:f(`table`,{class:(0,En.default)(`fjs-table`,`fjs-disabled`),id:c,children:[f(`thead`,{class:`fjs-table-head`,children:f(`tr`,{class:`fjs-table-tr`,children:s.map(({key:e,label:t})=>f(`th`,{class:`fjs-table-th`,children:t},e))})}),f(`tbody`,{class:`fjs-table-body`,children:f(`tr`,{class:`fjs-table-tr`,children:s.map(({key:e})=>f(`td`,{class:`fjs-table-td`,children:`Content`},e))})})]})})})]})}EditorTable.config=Nt.config;var dr=`expression`;function EditorExpressionField(e){let{field:t}=e,{expression:r=``,key:i}=t,a=Jt(`expression`),o=useService(`expressionLanguage`),s=`Expression is empty`;return r.trim()&&o.isExpression(r)&&(s=`Expression for '${i}'`),f(`div`,{class:editorFormFieldClasses(dr),children:f(`div`,{class:`fjs-form-field-placeholder`,children:[f(a,{viewBox:`0 0 54 54`}),s]})})}EditorExpressionField.config={...mn.config,escapeGridRender:!1};function EditorDocumentPreview(e){let{field:t,domId:r}=e,i=useService(`translate`),{label:a}=t,o=Jt(t.type);return f(`div`,{class:editorFormFieldClasses(t.type),children:[f(Zt,{id:r,label:a}),f(`div`,{class:`fjs-documentPreview-placeholder`,id:r,children:f(`p`,{class:`fjs-documentPreview-placeholder-text`,children:[f(o,{width:`32`,height:`24`,viewBox:`0 0 56 56`}),i(`Document preview`)]})})]})}EditorDocumentPreview.config=un.config;var fr=[EditorIFrame,EditorText,EditorHtml,EditorTable,EditorExpressionField,EditorDocumentPreview],EditorFormFields=class extends cn{constructor(){super(),fr.forEach(e=>{this.register(e.config.type,e)})}},ModularSection=e=>{let{rootClass:t,RootElement:a,section:o,children:s}=e,c=useService(`eventBus`),l=useService(`config.${o}`),[u,p]=r(l&&l.parent||null),[b,x]=r(!0),S=d(()=>{if(u===null)return null;if(typeof u==`string`){if(!document.querySelector(u))throw Error(`Target root element with selector '${u}' not found for section '${o}'`);return document.querySelector(u)}if(!(u instanceof Element))throw Error(`Target root element for section '${o}' must be a valid selector or DOM element`);return u},[o,u]);y(()=>{let onAttach=({container:e})=>{p(e),x(!0)},onDetach=()=>{p(null),x(!1)},onReset=()=>{p(null),x(!0)};return c.on(`${o}.attach`,onAttach),c.on(`${o}.detach`,onDetach),c.on(`${o}.reset`,onReset),c.fire(`${o}.section.rendered`),()=>{c.off(`${o}.attach`,onAttach),c.off(`${o}.detach`,onDetach),c.off(`${o}.reset`,onReset),c.fire(`${o}.section.destroyed`)}},[c,o]),y(()=>{if(b)return c.fire(`${o}.rendered`,{element:S}),()=>{c.fire(`${o}.destroyed`,{element:S})}},[c,o,b,S]);let C=i(({children:e})=>a?f(a,{children:e}):f(`div`,{className:(0,En.default)(t,`bio-theme-parent`),children:e}),[t,a]);return b?u?h(f(C,{children:s}),S):f(C,{children:s}):null},pr=o({addFill(e,t){throw Error(`FillContext.addFill() uninitialized`)},removeFill(e){throw Error(`FillContext.addFill() uninitialized`)}}),Fill=e=>{let t=c(Symbol(`fill_uid`)),r=a(pr);return y(()=>{if(r)return r.addFill({id:t,...e}),()=>{r.removeFill(t)}},[r,e]),null},mr=o({fills:[]}),Slot=e=>{let{name:t,fillRoot:i=FillFragment,groupFn:o=_groupByGroupName,separatorFn=e=>null,limit:c}=e,{fills:l}=a(mr),u=d(()=>l.filter(e=>e.slot===t),[l,t]),p=d(()=>c?u.slice(0,c):u,[u,c]),h=d(()=>o(p),[p,o]),b=d(()=>buildFills(h,i,separatorFn),[h,i,separatorFn]),x=a(Kn),S=x?x.getService(`slotFillManager`,!1):null,C=x?x.getService(`eventBus`,!1):null,[E,M]=r([]);return y(()=>{if(!C||!S)return;M(S.getFills(t));let onChange=()=>M(S.getFills(t));return C.on(`slotFillManager.changed`,onChange),()=>C.off(`slotFillManager.changed`,onChange)},[C,S,t]),f(s,{children:[b,E.map(e=>f(FillContainer,{fill:e},e.fillId))]})},FillFragment=e=>f(s,{children:e.children},e.id);function FillContainer({fill:e}){let t=c(null),r=c(null);return y(()=>{let i=t.current;if(i)return r.current=e.render(i)||null,()=>{typeof r.current==`function`&&(r.current(),r.current=null),i.innerHTML=``}},[e]),f(`div`,{ref:t,"data-slot-fill":e.fillId})}var buildFills=(e,t,r)=>{let i=[];return e.forEach((e,a)=>{if(a!==0){let e=r(`__separator_${a}`);e&&i.push(e)}e.forEach(e=>{i.push(t(e))})}),i},_groupByGroupName=e=>{let t=[],r={};return e.forEach(function(e){let{group:i=`z_default`}=e,a=r[i];a||(r[i]=a=[],t.push(a)),a.push(e)}),t.forEach(e=>e.sort(_comparePriority)),Object.keys(r).sort().map(e=>r[e])},_comparePriority=(e,t)=>(t.priority||0)-(e.priority||0),noop$1=()=>{},SlotFillRoot=e=>{let[t,i]=r([]),{onSetFill:a=noop$1,onRemoveFill:o=noop$1}=e,s=d(()=>({addFill:e=>{i(t=>[...t.filter(t=>t.id!==e.id),e]),a(e)},removeFill:e=>{i(t=>t.filter(t=>t.id!==e)),o(e)}}),[o,a]),c=d(()=>({fills:t}),[t]);return f(mr.Provider,{value:c,children:f(pr.Provider,{value:s,children:e.children})})};function PaletteEntry(e){let{type:t,label:r,icon:i,iconUrl:a,getPaletteIcon:o}=e,s=useService(`modeling`),c=useService(`formEditor`),l=useService(`translate`),u=o({icon:i,iconUrl:a,label:r,type:t}),onKeyDown=e=>{if(e.code===`Enter`){let{fieldType:t}=e.target.dataset,{schema:r}=c._getState();s.addFormField({type:t},r,r.components.length)}};return f(`button`,{type:`button`,class:`fjs-palette-field fjs-drag-copy fjs-no-drop`,"data-field-type":t,title:l(`Create {label} element`,{label:l(r)}),onKeyDown,children:[u?f(u,{class:`fjs-palette-field-icon`,width:`36`,height:`36`,viewBox:`0 0 54 54`}):null,f(`span`,{class:`fjs-palette-field-text`,children:l(r)})]})}var hr=[{label:`Input`,id:`basic-input`},{label:`Selection`,id:`selection`},{label:`Presentation`,id:`presentation`},{label:`Containers`,id:`container`},{label:`Action`,id:`action`}];function Palette(e){let t=useService(`formFields`),a=useService(`translate`),o=c(collectPaletteEntries(t)),[s,l]=r(o.current),[u,d]=r(``),p=c(),h=groupEntries(s),b=i(e=>e.toLowerCase().replace(/\s+/g,``),[]),x=i(e=>{let t=b(u);if(!t)return!0;let r=b(a(e.label)),i=b(e.type);return r.includes(t)||i.includes(t)},[u,b,a]);y(()=>{let e=o.current.filter(x);l(e)},[x,u]);let S=i(e=>{d(()=>e.target.value)},[d]),C=i(e=>{d(``),p.current.focus()},[p,d]);return f(`div`,{class:`fjs-palette`,children:[f(`div`,{class:`fjs-palette-header`,title:a(`Components`),children:a(`Components`)}),f(`div`,{class:`fjs-palette-search-container`,children:[f(`span`,{class:`fjs-palette-search-icon`,children:f(tr,{})}),f(`input`,{class:`fjs-palette-search`,ref:p,type:`text`,placeholder:a(`Search components`),value:u,onInput:S}),u&&f(`button`,{type:`button`,title:a(`Clear content`),class:`fjs-palette-search-clear`,onClick:C,children:f(Jn,{})})]}),f(`div`,{class:`fjs-palette-entries`,children:[h.map(({label:e,entries:t,id:r})=>f(`div`,{class:`fjs-palette-group`,"data-group-id":r,children:[f(`span`,{class:`fjs-palette-group-title`,children:a(e)}),f(`div`,{class:`fjs-palette-fields fjs-drag-container fjs-no-drop`,children:t.map(e=>f(PaletteEntry,{getPaletteIcon,...e},e.type))})]},r)),h.length==0&&f(`div`,{class:`fjs-palette-no-entries`,children:a(`No components found.`)})]}),f(`div`,{class:`fjs-palette-footer`,children:f(Slot,{name:`editor-palette__footer`,fillRoot:FillRoot})})]})}var FillRoot=e=>f(`div`,{className:`fjs-palette-footer-fill`,children:e.children});function groupEntries(e){let t=hr.map(e=>({...e,entries:[]})),getGroup=e=>t.find(t=>e===t.id);return e.forEach(e=>{let{group:t}=e;getGroup(t).entries.push(e)}),t.filter(e=>e.entries.length)}function collectPaletteEntries(e){return Object.entries(e._formFields).map(([e,t])=>{let{config:r}=t;return{label:r.name||r.label,type:e,group:r.group,icon:r.icon,iconUrl:r.iconUrl}}).filter(({type:e})=>e!=="default")}function getPaletteIcon(e){let{icon:t,iconUrl:r,type:i,label:a}=e,o;return o=r?function Icon(){return f(`img`,{class:`fjs-field-icon-image`,width:36,style:{margin:`auto`},alt:a,src:Lt(r)})}:t||Jt(i),o}var InjectedRendersRoot=()=>{let e=useService(`renderInjector`).fetchRenderers(),t=d(()=>({useService,components:{Fill,Slot}}),[]);return f(s,{children:e.map(({Renderer:e},r)=>f(e,{...t},r))})};function Arrow(e){return f(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:`16`,height:`16`,viewBox:`0 0 16 16`,...e,children:f(`path`,{fillRule:`evenodd`,d:`M10,12 L3,12 C2.44771525,12 2,11.5522847 2,11 C2,10.4477153 2.44771525,10 3,10 L8,10 L8,5 C8,4.44771525 8.44771525,4 9,4 C9.55228475,4 10,4.44771525 10,5 L10,12 Z`,transform:`rotate(-45 6 8)`})})}function Close(e){return f(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:`16`,height:`16`,viewBox:`0 0 16 16`,...e,children:f(`path`,{fillRule:`evenodd`,d:`M12 4.7L11.3 4L8 7.3L4.7 4L4 4.7L7.3 8L4 11.3L4.7 12L8 8.7L11.3 12L12 11.3L8.7 8L12 4.7Z`,fill:`currentColor`})})}function Create(e){return f(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:`16`,height:`16`,viewBox:`0 0 16 16`,...e,children:f(`path`,{fillRule:`evenodd`,d:`M9,13 L9,9 L9,9 L13,9 C13.5522847,9 14,8.55228475 14,8 C14,7.44771525 13.5522847,7 13,7 L9,7 L9,7 L9,3 C9,2.44771525 8.55228475,2 8,2 C7.44771525,2 7,2.44771525 7,3 L7,7 L7,7 L3,7 C2.44771525,7 2,7.44771525 2,8 C2,8.55228475 2.44771525,9 3,9 L7,9 L7,9 L7,13 C7,13.5522847 7.44771525,14 8,14 C8.55228475,14 9,13.5522847 9,13 Z`})})}function Delete(e){return f(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:`16`,height:`16`,viewBox:`0 0 16 16`,...e,children:f(`path`,{fillRule:`evenodd`,d:`M9,4 L9,11 C9,12.1 8.6,12.55 7.5,12.55 L2.5,12.55 C1.4,12.55 1,12.1 1,11 L1,4 L9,4 Z M7.5,5.5 L2.5,5.5 L2.5,9.8 C2.5,10.46 3,11 3.61111111,11 L6.38888889,11 C7,11 7.5,10.46 7.5,9.8 L7.5,5.5 Z M10,1 L8,1 L7,0 L3,0 L2,1 L0,1 L0,2.5 L10,2.5 L10,1 Z`,transform:`translate(3 2)`})})}function Drag(e){return f(`svg`,{width:`16`,height:`16`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,...e,children:[f(`path`,{fill:`#fff`,style:{mixBlendMode:`multiply`},d:`M0 0h16v16H0z`}),f(`path`,{fill:`#fff`,style:{mixBlendMode:`multiply`},d:`M0 0h16v16H0z`}),f(`path`,{d:`M7 3H5v2h2V3zM11 3H9v2h2V3zM7 7H5v2h2V7zM11 7H9v2h2V7zM7 11H5v2h2v-2zM11 11H9v2h2v-2z`,fill:`#161616`})]})}function ExternalLink(e){return f(`svg`,{width:`16`,height:`16`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,...e,children:f(`path`,{fillRule:`evenodd`,clipRule:`evenodd`,d:`M12.637 12.637v-4.72h1.362v4.721c0 .36-.137.676-.411.95-.275.275-.591.412-.95.412H3.362c-.38 0-.703-.132-.967-.396A1.315 1.315 0 0 1 2 12.638V3.362c0-.38.132-.703.396-.967S2.982 2 3.363 2h4.553v1.363H3.363v9.274h9.274ZM14 2H9.28l-.001 1.362h2.408L5.065 9.984l.95.95 6.622-6.622v2.409H14V2Z`,fill:`currentcolor`})})}function Feel(e){return f(`svg`,{width:`14`,height:`14`,viewBox:`0 0 14 14`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,...e,children:[f(`path`,{d:`M3.6168 11.9894C3.47957 12.6745 3.22473 13.1809 2.85227 13.5085C2.48961 13.8362 1.97012 14 1.29381 14H0L0.308751 12.4213H1.57316L3.08751 4.78085H2.17596L2.48471 3.20213H3.39626L3.6315 2.01064C3.76872 1.32553 4.01866 0.819149 4.38132 0.491489C4.75378 0.16383 5.27817 0 5.95448 0H7.2483L6.93954 1.57872H5.67514L5.35168 3.20213H6.61609L6.30734 4.78085H5.04293L3.6168 11.9894Z`,fill:`currentcolor`}),f(`path`,{d:`M5.60492 11.0213L8.63361 6.86596L7.28099 3.20213H9.35403L10.0598 5.74894H10.2362L11.927 3.20213H14L10.986 7.25319L12.3239 11.0213H10.2509L9.54517 8.41489H9.36874L7.67796 11.0213H5.60492Z`,fill:`currentcolor`})]})}function Launch(e){return f(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 32 32`,...e,children:[f(`path`,{d:`M26,28H6a2.0027,2.0027,0,0,1-2-2V6A2.0027,2.0027,0,0,1,6,4H16V6H6V26H26V16h2V26A2.0027,2.0027,0,0,1,26,28Z`}),f(`polygon`,{points:`20 2 20 4 26.586 4 18 12.586 19.414 14 28 5.414 28 12 30 12 30 2 20 2`})]})}function OpenPopup(e){return f(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 16 16`,...e,children:f(`path`,{d:`M6 15L6 14 2.7 14 7 9.7 6.3 9 2 13.3 2 10 1 10 1 15zM10 1L10 2 13.3 2 9 6.3 9.7 7 14 2.7 14 6 15 6 15 1z`})})}function translateFallback(e,t){return t||={},e.replace(/{([^}]+)}/g,function(e,r){return t[r]||`{`+r+`}`})}function Header(e){let{element:t,headerProvider:r,translate:i=translateFallback}=e,{getElementIcon:a,getDocumentationRef:o,getElementLabel:s,getTypeLabel:c}=r,l=s(t),u=c(t),d=o&&o(t),p=a(t);return f(`div`,{class:`bio-properties-panel-header`,children:[f(`div`,{class:`bio-properties-panel-header-icon`,children:p&&f(p,{width:`32`,height:`32`,viewBox:`0 0 32 32`})}),f(`div`,{class:`bio-properties-panel-header-labels`,children:[f(`div`,{class:`bio-properties-panel-header-type`,children:u}),l?f(`div`,{class:`bio-properties-panel-header-label`,children:l}):null]}),f(`div`,{class:`bio-properties-panel-header-actions`,children:d?f(`a`,{rel:`noreferrer`,class:`bio-properties-panel-header-link`,href:d,title:i(`Open documentation`),target:`_blank`,children:f(ExternalLink,{})}):null})]})}var gr=o({description:{},getDescriptionForId:()=>{}}),_r=o({errors:{}}),vr=o({eventBus:null}),yr=o({}),br=o({layout:{},setLayout:()=>{},getLayoutForKey:()=>{},setLayoutForKey:()=>{}}),xr=o({tooltip:{},getTooltipForId:()=>{}});function useTooltipContext(e,t){let{getTooltipForId:r}=a(xr);return r(e,t)}function TooltipWrapper(e){let{forId:t,element:r}=e,i=useTooltipContext(t,r),a=e.value||i;return a?f(Tooltip,{...e,value:a,forId:`bio-properties-panel-${t}`}):e.children}function Tooltip(e){let{forId:t,value:i,parent:a,direction:o=`right`,position:s,showDelay:l=250,hideDelay:u=250}=e,[d,b]=r(!1),[x,S]=r(null),[C,E]=r(null),M=c(null),N=c(null),I=c(null),z=c(null),show=(e,t)=>{clearTimeout(M.current),clearTimeout(N.current),!d&&(t?M.current=setTimeout(()=>{b(!0)},l):b(!0))},handleWrapperMouseEnter=e=>{show(e,!0)},hide=(e=!1)=>{clearTimeout(M.current),clearTimeout(N.current),e?N.current=setTimeout(()=>{b(!1)},u):b(!1)};y(()=>()=>{clearTimeout(M.current),clearTimeout(N.current)},[]),y(()=>{if(!d)return;let handleClickOutside=e=>{I.current&&!I.current.contains(e.target)&&z.current&&!z.current.contains(e.target)&&hide(!1)};return document.addEventListener(`mousedown`,handleClickOutside),()=>{document.removeEventListener(`mousedown`,handleClickOutside)}},[d,hide]),p(()=>{if(!d||s){S(null),E(null);return}if(!I.current||!z.current)return;let{tooltipPosition:e,arrowOffset:t}=getTooltipPosition(I.current,z.current,o);S(e),E(t)},[d,s]);let handleMouseLeave=({relatedTarget:e})=>{if(e===I.current||e===z.current||e?.parentElement===z.current)return;let t=window.getSelection();if(t&&t.toString().length>0){let e=t.getRangeAt(0);if(z.current?.contains(e.commonAncestorContainer)||z.current?.contains(t.anchorNode)||z.current?.contains(t.focusNode))return}hide(!0)},handleTooltipMouseEnter=()=>{clearTimeout(N.current)},handleFocusOut=e=>{let{relatedTarget:t}=e;z.current?.contains(t)||I.current?.contains(t)||hide(!1)},hideTooltipViaEscape=e=>{e.code===`Escape`&&hide(!1)},renderTooltip=()=>{let e=s||(x?`right: ${x.right}; top: ${x.top}px;`:void 0),r=C==null?void 0:`margin-top: ${C}px;`;return f(`div`,{class:`bio-properties-panel-tooltip bio-theme-parent ${o}`,role:`tooltip`,id:`bio-properties-panel-tooltip`,"aria-labelledby":t,style:e,ref:z,onClick:e=>e.stopPropagation(),onMouseEnter:handleTooltipMouseEnter,onMouseLeave:handleMouseLeave,children:[f(`div`,{class:`bio-properties-panel-tooltip-content`,children:i}),f(`div`,{class:`bio-properties-panel-tooltip-arrow`,style:r})]})};return f(`div`,{class:`bio-properties-panel-tooltip-wrapper`,tabIndex:`0`,ref:I,onMouseEnter:handleWrapperMouseEnter,onMouseLeave:handleMouseLeave,onFocus:show,onBlur:handleFocusOut,onKeyDown:hideTooltipViaEscape,children:[e.children,d?a?h(renderTooltip(),a.current):renderTooltip():null]})}function getTooltipPosition(e,t,r){if(!e)return{tooltipPosition:null,arrowOffset:null};let i=e.getBoundingClientRect(),a=`calc(100% - ${i.x}px)`,o=i.top-10,s=null;if(t&&r===`right`){let e=t.getBoundingClientRect(),r=window.innerHeight-e.height,i=o;o>r&&(o=r),o<0&&(o=0),o!==i&&(s=16-(o-i))}return{tooltipPosition:{right:a,top:o},arrowOffset:s}}function useDescriptionContext(e,t){let{getDescriptionForId:r}=a(gr);return r(e,t)}function useDebounce(e,t){let r=i(t(e),[e,t]);return y(()=>()=>{r.flush?.()},[r]),r}function useError(e){let{errors:t}=a(_r);return t[e]}function useErrors(){let{errors:e}=a(_r);return e}function useEvent(e,t,r){let i=a(vr);r||({eventBus:r}=i);let o=c(!1);r&&!o.current&&r.on(e,t),y(()=>(r&&o.current&&r.on(e,t),o.current=!0,()=>{r&&r.off(e,t)}),[t,e,r])}function useLayoutState(e,t){let{getLayoutForKey:r,setLayoutForKey:o}=a(br);return[r(e,t),i(t=>{o(e,t)},[o])]}function usePrevious(e){let t=c();return y(()=>{t.current=e}),t.current}function useShowEntryEvent(e){let{onShow:t}=a(br),r=c(),o=c(!1),s=i(r=>{r.id===e&&(t(),o.current||=!0)},[e]);return y(()=>{o.current&&r.current&&(I(r.current.focus)&&r.current.focus(),I(r.current.select)&&r.current.select(),o.current=!1)}),useEvent(`propertiesPanel.showEntry`,s),r}function getScrollContainer(e,t){return e.current?mt(e.current,t,!0):null}function useStickyIntersectionObserver(e,t,a){let[o,s]=r(null),c=i(()=>{let r=getScrollContainer(e,t);r!==o&&s(r)},[e,t,o]);y(()=>{c()},[c]),useEvent(`propertiesPanel.attach`,c),useEvent(`propertiesPanel.detach`,c),y(()=>{let t=IntersectionObserver;if(!t)return;let r=e.current;if(!r||!o)return;let i=new t(e=>{o.scrollHeight!==0&&e.forEach(e=>{e.intersectionRatio<1?a(!0):e.intersectionRatio===1&&a(!1)})},{root:o,rootMargin:`0px 0px 999999% 0px`,threshold:[1]});return i.observe(r),()=>{i.unobserve(r)}},[e,o,a])}function useStaticCallback(e){let t=c(e);return p(()=>{t.current=e}),i((...e)=>t.current(...e),[])}function Group(e){let{element:o,entries:s=[],id:l,label:u,shouldOpen:d=!1,translate:p=translateFallback}=e,h=c(null),[b,x]=useLayoutState([`groups`,l,`open`],d),S=i(()=>x(!0),[x]),toggleOpen=()=>x(!b),[C,E]=r(!1),[M,N]=r(!1);y(()=>{let e=requestAnimationFrame(()=>{let e=s.find(e=>{let{id:t,isEdited:r}=e,i=gt(`[data-entry-id="${t}"]`);return!I(r)||!i?!1:r(gt(`.bio-properties-panel-input`,i))});E(e)});return()=>cancelAnimationFrame(e)},[s,E]);let z=useErrors(),B=s.some(e=>z[e.id]);useStickyIntersectionObserver(h,`div.bio-properties-panel-scroll-container`,N);let X={...a(br),onShow:S};return f(`div`,{class:`bio-properties-panel-group`,"data-group-id":`group-`+l,ref:h,children:[f(`div`,{class:(0,En.default)(`bio-properties-panel-group-header`,C?``:`empty`,b?`open`:``,M&&b?`sticky`:``),onClick:toggleOpen,children:[f(`div`,{class:`bio-properties-panel-group-header-title`,children:f(TooltipWrapper,{value:e.tooltip,forId:`group-`+l,element:o,children:u})}),f(`div`,{class:`bio-properties-panel-group-header-buttons`,children:[f(DataMarker,{edited:C,hasErrors:B,translate:p}),f(`button`,{type:`button`,title:p(`Toggle section`),class:`bio-properties-panel-group-header-button bio-properties-panel-arrow`,children:f(Arrow,{class:b?`bio-properties-panel-arrow-down`:`bio-properties-panel-arrow-right`})})]})]}),f(`div`,{class:(0,En.default)(`bio-properties-panel-group-entries`,b?`open`:``),children:f(br.Provider,{value:X,children:s.map(e=>{let{component:r,id:i}=e;return t(r,{...e,element:o,key:i})})})})]})}function DataMarker(e){let{edited:t,hasErrors:r,translate:i=translateFallback}=e;return r?f(`div`,{title:i(`Section contains an error`),class:`bio-properties-panel-dot bio-properties-panel-dot--error`}):t?f(`div`,{title:i(`Section contains edits`),class:`bio-properties-panel-dot`}):null}function Placeholder(e){let{text:t,icon:r}=e;return f(`div`,{class:`bio-properties-panel open`,children:f(`section`,{class:`bio-properties-panel-placeholder`,children:[r&&f(r,{class:`bio-properties-panel-placeholder-icon`}),f(`p`,{class:`bio-properties-panel-placeholder-text`,children:t})]})})}var Sr={},Cr={},wr={};function PropertiesPanel$1(e){let{element:i,headerProvider:a,placeholderProvider:o,groups:s,layoutConfig:c,layoutChanged:l,descriptionConfig:u,descriptionLoaded:p,tooltipConfig:h,tooltipLoaded:b,eventBus:x}=e,[S,C]=r(createLayout(c));useUpdateLayoutEffect(()=>{let e=createLayout(c);C(e)},[c]),y(()=>{typeof l==`function`&&l(S)},[S,l]);let getLayoutForKey=(e,t)=>B(S,e,t),setLayoutForKey=(e,t)=>{C(r=>{let i=je({},r);return E(i,e,t),i})},M={layout:S,setLayout:C,getLayoutForKey,setLayoutForKey},N=d(()=>createDescriptionContext(u),[u]);y(()=>{typeof p==`function`&&p(N)},[N,p]);let getDescriptionForId=(e,t)=>N[e]&&N[e](t),I={description:N,getDescriptionForId},z=d(()=>createTooltipContext(h),[h]);y(()=>{typeof b==`function`&&b(z)},[z,b]);let getTooltipForId=(e,t)=>z[e]&&z[e](t),X={tooltip:z,getTooltipForId},[te,fe]=r({}),onSetErrors=({errors:e})=>fe(e);useEvent(`propertiesPanel.setErrors`,onSetErrors,x);let xe={errors:te},Te={eventBus:x},Oe={element:i};return o&&!i?f(Placeholder,{...o.getEmpty()}):o&&ee(i)?f(Placeholder,{...o.getMultiple()}):f(br.Provider,{value:Oe,children:f(_r.Provider,{value:xe,children:f(gr.Provider,{value:I,children:f(xr.Provider,{value:X,children:f(br.Provider,{value:M,children:f(vr.Provider,{value:Te,children:f(`div`,{class:`bio-properties-panel bio-theme-parent`,children:[a?f(Header,{element:i,headerProvider:a}):null,f(`div`,{class:`bio-properties-panel-scroll-container`,children:s.map(e=>{let{component:r=Group,id:a}=e;return t(r,{...e,key:a,element:i})})})]})})})})})})})}function createLayout(e={},t=Sr){return{...t,...e}}function createDescriptionContext(e={}){return{...Cr,...e}}function createTooltipContext(e={}){return{...wr,...e}}function useUpdateLayoutEffect(e,t){let r=c(!1);p(()=>{if(r.current)return e();r.current=!0},t)}function CollapsibleEntry(e){let{element:o,entries:s=[],id:c,label:l,open:u,remove:d,translate:p=translateFallback}=e,[h,y]=r(u),toggleOpen=()=>y(!h),{onShow:b}=a(br),x={...a(br),onShow:i(()=>{y(!0),I(b)&&b()},[b,y])},S=p(`<empty>`),C=s.length>0;return f(`div`,{"data-entry-id":c,class:(0,En.default)(`bio-properties-panel-collapsible-entry`,h?`open`:``),children:[f(`div`,{class:`bio-properties-panel-collapsible-entry-header`,onClick:C?toggleOpen:null,children:[f(`div`,{class:(0,En.default)(`bio-properties-panel-collapsible-entry-header-title`,!l&&`empty`),children:l||S}),C&&f(`button`,{type:`button`,title:p(`Toggle list item`),class:`bio-properties-panel-arrow bio-properties-panel-collapsible-entry-arrow`,children:f(Arrow,{class:h?`bio-properties-panel-arrow-down`:`bio-properties-panel-arrow-right`})}),d?f(`button`,{type:`button`,title:p(`Delete item`),class:`bio-properties-panel-remove-entry`,onClick:d,children:f(Delete,{})}):null]}),f(`div`,{class:(0,En.default)(`bio-properties-panel-collapsible-entry-entries`,h?`open`:``),children:f(br.Provider,{value:x,children:s.map(e=>{let{component:r,id:i}=e;return t(r,{...e,element:o,key:i})})})})]})}function ListItem(e){let{autoFocusEntry:t,autoOpen:r,translate:i=translateFallback}=e;return y(()=>{if(r&&t){let e=gt(`[data-entry-id="${t}"]`),r=gt(`.bio-properties-panel-input`,e);r&&(I(r.select)?r.select():I(r.focus)&&r.focus(),r.scrollIntoView())}},[r,t]),f(`div`,{class:`bio-properties-panel-list-item`,children:f(CollapsibleEntry,{...e,open:r,translate:i})})}var noop$6=()=>{};function ListGroup(e){let{add:o,element:s,id:l,items:u,label:d,shouldOpen:p=!1,translate:h=translateFallback}=e;y(()=>{e.shouldSort!=null&&console.warn(`the property 'shouldSort' is no longer supported`)},[e.shouldSort]);let b=c(null),[x,S]=useLayoutState([`groups`,l,`open`],p),[C,E]=r(!1),M=i(()=>S(!0),[S]),[N,I]=r([]),[z,B]=r(!1),X=usePrevious(s),ee=i(()=>S(!x),[x]),te=s===X&&x&&z?getNewItemIds(u,N):[];y(()=>{I(u),B(!1)},[u]),useStickyIntersectionObserver(b,`div.bio-properties-panel-scroll-container`,E);let fe=!!u.length,xe={...a(br),onShow:M},handleAddClick=e=>{B(!0),S(!0),o(e)},Te=useErrors(),Oe=u.some(e=>{if(Te[e.id])return!0;if(e.entries)return e.entries.some(e=>Te[e.id])});return f(`div`,{class:`bio-properties-panel-group`,"data-group-id":`group-`+l,ref:b,children:[f(`div`,{class:(0,En.default)(`bio-properties-panel-group-header`,fe?``:`empty`,fe&&x?`open`:``,C&&x?`sticky`:``),onClick:fe?ee:noop$6,children:[f(`div`,{class:`bio-properties-panel-group-header-title`,children:f(TooltipWrapper,{value:e.tooltip,forId:`group-`+l,element:s,children:d})}),f(`div`,{class:`bio-properties-panel-group-header-buttons`,children:[o?f(`button`,{type:`button`,title:h(`Create new list item`),class:`bio-properties-panel-group-header-button bio-properties-panel-add-entry`,onClick:handleAddClick,children:[f(Create,{}),fe?null:f(`span`,{class:`bio-properties-panel-add-entry-label`,children:h(`Create`)})]}):null,fe?f(`div`,{title:h(`List contains {numOfItems} item${u.length==1?``:`s`}`,{numOfItems:u.length}),class:(0,En.default)(`bio-properties-panel-list-badge`,Oe?`bio-properties-panel-list-badge--error`:``),children:u.length}):null,fe?f(`button`,{type:`button`,title:h(`Toggle section`),class:`bio-properties-panel-group-header-button bio-properties-panel-arrow`,children:f(Arrow,{class:x?`bio-properties-panel-arrow-down`:`bio-properties-panel-arrow-right`})}):null]})]}),f(`div`,{class:(0,En.default)(`bio-properties-panel-list`,x&&fe?`open`:``),children:f(br.Provider,{value:xe,children:u.map((e,r)=>{if(!e)return;let{id:i}=e,a=te.includes(e.id);return t(ListItem,{...e,autoOpen:a,element:s,index:r,key:i,translate:h})})})})]})}function getNewItemIds(e,t){let r=e.map(e=>e.id),i=t.map(e=>e.id);return r.filter(e=>!i.includes(e))}function Description$1(e){let{element:t,forId:r,value:i}=e,a=useDescriptionContext(r,t),o=i||a;if(o)return f(`div`,{class:`bio-properties-panel-description`,children:o})}function Checkbox(e){let{id:t,label:i,onChange:a,disabled:o,value:s=!1,onFocus:c,onBlur:l,tooltip:u}=e,[d,p]=r(s),handleChangeCallback=({target:e})=>{a(e.checked)},handleChange=e=>{handleChangeCallback(e),p(e.target.value)};y(()=>{s!==d&&p(s)},[s]);let h=useShowEntryEvent(t);return f(`div`,{class:`bio-properties-panel-checkbox`,children:[f(`input`,{ref:h,id:prefixId$8(t),name:t,onFocus:c,onBlur:l,type:`checkbox`,class:`bio-properties-panel-input`,onChange:handleChange,checked:d,disabled:o}),f(`label`,{for:prefixId$8(t),class:`bio-properties-panel-label`,children:f(TooltipWrapper,{value:u,forId:t,element:e.element,children:i})})]})}function CheckboxEntry(e){let{element:t,id:r,description:i,label:a,getValue:o,setValue:s,disabled:c,onFocus:l,onBlur:u,tooltip:d}=e,p=o(t),h=useError(r);return f(`div`,{class:`bio-properties-panel-entry bio-properties-panel-checkbox-entry`,"data-entry-id":r,children:[f(Checkbox,{disabled:c,id:r,label:a,onChange:s,onFocus:l,onBlur:u,value:p,tooltip:d,element:t},t),h&&f(`div`,{class:`bio-properties-panel-error`,children:h}),f(Description$1,{forId:r,element:t,value:i})]})}function isEdited$9(e){return e&&!!e.checked}function prefixId$8(e){return`bio-properties-panel-${e}`}yt.define(),xt();function OpenPopupButton({onClick:e,title:t,translate:r=translateFallback}){return t??=r(`Open pop-up editor`),f(`button`,{type:`button`,title:t,class:`bio-properties-panel-open-feel-popup`,onClick:e,children:f(OpenPopup,{})})}var noop$5=()=>{},useBufferedFocus$1=function(e,t){let[i,a]=r(void 0);t.current=d(()=>({focus:t=>{e?e.focus(t):(t===void 0&&(t=1/0),a(t))}}),[e]),y(()=>{i!==void 0&&e&&(e.focus(i),a(!1))},[e,i])},Tr=u((e,t)=>{let{onInput:i,disabled:a,tooltipContainer:o,enableGutters:s,value:l,onLint:u=noop$5,onOpenPopup:d=noop$5,popupOpen:p,contentAttributes:h={},hostLanguage:b=null,singleLine:x=!1}=e,S=c(),[C,E]=r(),[M,N]=r(l||``);useBufferedFocus$1(C,t);let I=useStaticCallback(e=>{i(e),N(e)});y(()=>{let e;return e=new rt({container:S.current,onChange:I,value:M,onLint:u,contentAttributes:h,tooltipContainer:o,enableGutters:s,hostLanguage:b,singleLine:x,lineWrap:!0}),E(e),()=>{u([]),S.current.innerHTML=``,E(null)}},[]),y(()=>{C&&l!==M&&(C.setValue(l),N(l))},[l]);let handleClick=()=>{t.current.focus()};return f(`div`,{class:(0,En.default)(`bio-properties-panel-feelers-editor-container`,p?`popupOpen`:null),children:[p&&f(`div`,{class:`bio-properties-panel-feelers-editor__popup-placeholder`,children:`Opened in popup`}),f(`div`,{name:e.name,class:(0,En.default)(`bio-properties-panel-feelers-editor bio-properties-panel-input`,M?`edited`:null,a?`disabled`:null),ref:S,onClick:handleClick}),!a&&f(OpenPopupButton,{onClick:()=>d(`feelers`)})]})}),noop$4=()=>{},useBufferedFocus=function(e,t){let[i,a]=r(void 0);t.current=d(()=>({focus:t=>{e?e.focus(t):(t===void 0&&(t=1/0),a(t))}}),[e]),y(()=>{i!==void 0&&e&&(e.focus(i),a(!1))},[e,i])},Er=u((e,t)=>{let{contentAttributes:i,enableGutters:a,value:o,onInput:s,onKeyDown:l=noop$4,onBlur:u=noop$4,onFeelToggle:d=noop$4,onLint:p=noop$4,onOpenPopup:h=noop$4,placeholder:b,popupOpen:x,disabled:S,tooltipContainer:C,variables:E,feelLanguageContext:M,translate:N=translateFallback}=e,I=c(),[z,B]=r(),[X,ee]=r(o||``),{builtins:te,dialect:fe,parserDialect:xe,engines:Te}=M||{};useBufferedFocus(z,t);let Oe=useStaticCallback(e=>{s(e),ee(e)}),je=useStaticCallback(()=>{u()});y(()=>{let e,onKeyDown=t=>{if(l(t),t.key!==`Backspace`||!e)return;let r=e.getSelection(),i=r.ranges[r.mainIndex];i.from===0&&i.to===0&&d()};return e=new st({container:I.current,onChange:Oe,onKeyDown,onLint:p,placeholder:b,readOnly:S,tooltipContainer:C,value:X,variables:E,builtins:te,dialect:fe,parserDialect:xe,engines:Te,extensions:[...a?[_t()]:[],vt.lineWrapping,vt.domEventHandlers({blur:je})],contentAttributes:i}),B(e),()=>{p([]),I.current.innerHTML=``,B(null)}},[]),y(()=>{z&&o!==X&&(z.setValue(o),ee(o))},[o]),y(()=>{z&&z.setVariables(E)},[E]),y(()=>{z&&z.setPlaceholder(b)},[b]),y(()=>{z&&z.setEngines(Te)},[Te]);let handleClick=()=>{t.current.focus()};return f(`div`,{class:(0,En.default)(`bio-properties-panel-feel-editor-container`,S?`disabled`:null,x?`popupOpen`:null),children:[x&&f(`div`,{class:`bio-properties-panel-feel-editor__open-popup-placeholder`,children:N(`Opened in editor`)}),f(`div`,{name:e.name,class:(0,En.default)(`bio-properties-panel-input`,X?`edited`:null),ref:I,onClick:handleClick}),!S&&f(OpenPopupButton,{onClick:()=>h(`feel`),translate:N})]})});function FeelIndicator(e){let{active:t}=e;return t?f(`span`,{class:`bio-properties-panel-feel-indicator`,children:`=`}):null}var noop$3=()=>{};function FeelIcon(e){let{feel:t=!1,active:r,disabled:i=!1,onClick:a=noop$3,translate:o=translateFallback}=e,s=o(`FEEL expression is mandatory`),c=o(`Click to ${r?`remove`:`set a`} dynamic value with FEEL expression`),handleClick=e=>{a(e),e.pointerType||e.stopPropagation()};return f(`button`,{type:`button`,class:(0,En.default)(`bio-properties-panel-feel-icon`,r?`active`:null,t===`required`?`required`:`optional`),onClick:handleClick,disabled:t===`required`||i,title:t===`required`?s:c,children:f(Feel,{})})}function isCmd$1(e){return e.altKey?!1:e.ctrlKey||e.metaKey}function isCmdWithChar(e){return isCmd$1(e)&&e.key.length===1&&/^[a-zA-Z]$/.test(e.key)}function ToggleSwitch(e){let{id:t,label:i,onInput:a,value:o,switcherLabel:s,inline:c,onFocus:l,onBlur:u,inputRef:d,tooltip:p}=e,[h,b]=r(o),handleInputCallback=async()=>{a(!o)},handleInput=e=>{handleInputCallback(),b(e.target.value)};return y(()=>{o!==h&&b(o)},[o]),f(`div`,{class:(0,En.default)(`bio-properties-panel-toggle-switch`,{inline:c}),children:[f(`label`,{class:`bio-properties-panel-label`,for:prefixId$7(t),children:f(TooltipWrapper,{value:p,forId:t,element:e.element,children:i})}),f(`div`,{class:`bio-properties-panel-field-wrapper`,children:[f(`label`,{class:`bio-properties-panel-toggle-switch__switcher`,children:[f(`input`,{ref:d,id:prefixId$7(t),class:`bio-properties-panel-input`,type:`checkbox`,onFocus:l,onBlur:u,name:t,onInput:handleInput,checked:!!h}),f(`span`,{class:`bio-properties-panel-toggle-switch__slider`})]}),s&&f(`p`,{class:`bio-properties-panel-toggle-switch__label`,children:s})]})]})}function ToggleSwitchEntry(e){let{element:t,id:r,description:i,label:a,switcherLabel:o,inline:s,getValue:c,setValue:l,onFocus:u,onBlur:d,tooltip:p}=e,h=c(t);return f(`div`,{class:`bio-properties-panel-entry bio-properties-panel-toggle-switch-entry`,"data-entry-id":r,children:[f(ToggleSwitch,{id:r,label:a,value:h,onInput:l,onFocus:u,onBlur:d,switcherLabel:o,inline:s,tooltip:p,element:t},t),f(Description$1,{forId:r,element:t,value:i})]})}function isEdited$7(e){return e&&!!e.checked}function prefixId$7(e){return`bio-properties-panel-${e}`}function NumberField(e){let{debounce:t,disabled:i,displayLabel:a=!0,id:o,inputRef:s,label:c,max:l,min:u,onInput:p,step:h,value:b=``,onFocus:x,onBlur:S,tooltip:C}=e,[E,M]=r(b),N=d(()=>t(e=>{e.validity.valid&&p(e.value?parseFloat(e.value):void 0)}),[p,t]),handleInput=e=>{N(e.target),M(e.target.value)};return y(()=>{b!==E&&M(b)},[b]),f(`div`,{class:`bio-properties-panel-numberfield`,children:[a&&f(`label`,{for:prefixId$6(o),class:`bio-properties-panel-label`,children:f(TooltipWrapper,{value:C,forId:o,element:e.element,children:c})}),f(`input`,{id:prefixId$6(o),ref:s,type:`number`,name:o,spellCheck:`false`,autoComplete:`off`,disabled:i,class:`bio-properties-panel-input`,max:l,min:u,onInput:handleInput,onFocus:x,onBlur:S,step:h,value:E})]})}function NumberFieldEntry(e){let{debounce:t,description:i,disabled:a,element:o,getValue:s,id:c,label:l,max:u,min:d,setValue:p,step:h,onFocus:b,onBlur:x,validate:S,tooltip:C}=e,E=useError(c),[M,N]=r(null),z=s(o);y(()=>{if(I(S)){let e=S(z)||null;N(e)}},[z,S]);let onInput=e=>{if(e!==z){let t=null;I(S)&&(t=S(e)||null),p(e,t),N(t)}},B=E||M;return f(`div`,{class:(0,En.default)(`bio-properties-panel-entry`,B?`has-error`:``),"data-entry-id":c,children:[f(NumberField,{debounce:t,disabled:a,id:c,label:l,onFocus:b,onBlur:x,onInput,max:u,min:d,step:h,value:z,tooltip:C},o),B&&f(`div`,{class:`bio-properties-panel-error`,children:B}),f(Description$1,{forId:c,element:o,value:i})]})}function isEdited$6(e){return e&&!!e.value}function prefixId$6(e){return`bio-properties-panel-${e}`}var noop$2=()=>{};function FeelTextfield(e){let{debounce:t,id:o,element:s,label:l,hostLanguage:u,onInput:d,onBlur:p,onError:h,placeholder:b,feel:x,value:S=``,disabled:C=!1,variables:E,singleLine:M,tooltipContainer:N,OptionalComponent:I=Dr,tooltip:z,translate:B}=e,[X,ee]=r(getInitialFeelLocalValue(x,S)),te=useShowEntryEvent(o),fe=c(),xe=i(e=>{d(e===``||e===`=`?void 0:e)},[d]),Te=isFeelActive(x,X),Oe=getFeelValue(X),je=a(yr),[Me,Pe]=r(void 0),{eventBus:Le}=a(vr),[Re,ze]=r(!1),setFocus=(e=0)=>{let t=fe.current.contains(document.activeElement)?document.activeElement.selectionStart:1/0;Pe(t+e)},Be=useDebounce(xe,t),setAndCommitValue=e=>{Be.cancel?.(),ee(e),xe(e)},Ve=useStaticCallback(()=>{x!==`required`&&setAndCommitValue(Te?Oe:`=`+X)}),handleInputChange=e=>{Te&&(e=`=`+e),e!==X&&(ee(e),Be(e),!Te&&Fe(e)&&e.startsWith(`=`)&&setFocus(-1))},handleOptionalInputOnBlur=e=>{if(e.target.type===`checkbox`)setAndCommitValue(e.target.checked);else{let t=e.target.value.trim();t===X?Be.flush?.():setAndCommitValue(t)}p&&p(e)},handleFeelEditorOnBlur=()=>{Be.flush?.()},handleOnKeyDown=e=>{isCmdWithChar(e)&&Be.flush?.()},He=useStaticCallback((e=[])=>{e.some(e=>e.type===`Syntax Error`)?h(B(`Unparsable FEEL expression.`)):h(void 0)}),handleOpenPopup=(e=`feel`)=>{let t=Le.fire(`propertiesPanel.openPopup`,{element:s,entryId:o,hostLanguage:u,label:l,onInput:handleInputChange,singleLine:M,sourceElement:te.current,tooltipContainer:N,type:e,value:Oe,variables:E,feelLanguageContext:je});t&&Le.once(`propertiesPanelPopup.close`,()=>{ze(!1)}),ze(t===!0)};return y(()=>{Me!==void 0&&(te.current.focus(Me),Pe(void 0))},[Me]),y(()=>{S!==X&&ee(S||(Te?`=`:``))},[S]),y(()=>()=>{Le.fire(`propertiesPanel.closePopup`)},[]),y(()=>{let copyHandler=e=>{Te&&e.clipboardData.setData(`application/FEEL`,e.clipboardData.getData(`text`))},pasteHandler=e=>{if(Te||Re)return;if(e.clipboardData.getData(`application/FEEL`)){setTimeout(()=>{Ve(),setFocus()});return}let t=e.target;if(!(t instanceof HTMLInputElement)&&!(t instanceof HTMLTextAreaElement))return;let r=!t.value,i=t.selectionStart===0&&t.selectionEnd===t.value.length;if(r||i){let t=e.clipboardData.getData(`text`).trim();setAndCommitValue(t),!Te&&Fe(t)&&t.startsWith(`=`)&&setFocus(t.length-1),e.preventDefault()}};return fe.current.addEventListener(`copy`,copyHandler),fe.current.addEventListener(`cut`,copyHandler),fe.current.addEventListener(`paste`,pasteHandler),()=>{fe.current.removeEventListener(`copy`,copyHandler),fe.current.removeEventListener(`cut`,copyHandler),fe.current.removeEventListener(`paste`,pasteHandler)}},[fe,Te,Ve,setFocus]),f(`div`,{class:(0,En.default)(`bio-properties-panel-feel-entry`,{"feel-active":Te}),children:[f(`label`,{for:prefixId$5(o),class:`bio-properties-panel-label`,onClick:()=>setFocus(),children:[f(TooltipWrapper,{value:z,forId:o,element:e.element,children:l}),f(FeelIcon,{label:l,feel:x,onClick:Ve,active:Te,translate:B})]}),f(`div`,{class:`bio-properties-panel-feel-container`,ref:fe,children:[f(FeelIndicator,{active:Te,disabled:!isFeelOptional(x)||C,onClick:Ve}),Te?f(Er,{name:o,onInput:handleInputChange,onBlur:handleFeelEditorOnBlur,onKeyDown:handleOnKeyDown,contentAttributes:{id:prefixId$5(o),"aria-label":l},disabled:C,popupOpen:Re,onFeelToggle:()=>{Ve(),setFocus(!0)},onLint:He,onOpenPopup:handleOpenPopup,placeholder:b,value:Oe,variables:E,feelLanguageContext:je,ref:te,tooltipContainer:N,translate:B}):f(I,{...e,popupOpen:Re,onInput:handleInputChange,onKeyDown:handleOnKeyDown,onBlur:handleOptionalInputOnBlur,contentAttributes:{id:prefixId$5(o),"aria-label":l},value:X,ref:te,onOpenPopup:handleOpenPopup,containerRef:fe})]})]})}var Dr=u((e,t)=>{let{id:r,disabled:i,onInput:a,onKeyDown:o,value:s,onFocus:l,onBlur:u,placeholder:d}=e,p=c();return t.current={focus:e=>{let t=p.current;t&&(t.focus(),typeof e==`number`&&(e>s.length&&(e=s.length),t.setSelectionRange(e,e)))}},f(`input`,{id:prefixId$5(r),type:`text`,ref:p,name:r,spellCheck:`false`,autoComplete:`off`,disabled:i,class:`bio-properties-panel-input`,onInput:e=>a(e.target.value),onFocus:l,onKeyDown:o,onBlur:u,placeholder:d,value:s||``})}),Or=u((e,t)=>{let{id:r,debounce:i,disabled:a,onInput:o,value:s,min:l,max:u,step:d,onFocus:p,onBlur:h}=e,y=c();return t.current={focus:e=>{let t=y.current;t&&(t.focus(),typeof e==`number`&&e!==1/0&&(e>s.length&&(e=s.length),t.setSelectionRange(e,e)))}},f(NumberField,{id:r,debounce:i,disabled:a,displayLabel:!1,inputRef:y,max:u,min:l,onInput:o,step:d,value:s,onFocus:p,onBlur:h})});u((e,t)=>{let{id:r,disabled:i,onInput:a,value:o,onFocus:s,onBlur:l,placeholder:u}=e,d=c();return t.current={focus:()=>{let e=d.current;e&&(e.focus(),e.setSelectionRange(0,0))}},f(`textarea`,{id:prefixId$5(r),type:`text`,ref:d,name:r,spellCheck:`false`,autoComplete:`off`,disabled:i,class:`bio-properties-panel-input`,onInput:e=>a(e.target.value),onFocus:s,onBlur:l,placeholder:u,value:o||``,"data-gramm":`false`})});var kr=u((e,t)=>{let{id:r,onInput:i,value:a,onFocus:o,onBlur:s,switcherLabel:l}=e,u=c();return t.current={focus:()=>{let e=u.current;e&&e.focus()}},f(ToggleSwitch,{id:r,value:a,inputRef:u,onInput:i,onFocus:o,onBlur:s,switcherLabel:l})});u((e,t)=>{let{id:r,disabled:i,onInput:a,value:o,onFocus:s,onBlur:l}=e,u=c(),handleChange=({target:e})=>{a(e.checked)};return t.current={focus:()=>{let e=u.current;e&&e.focus()}},f(`input`,{ref:u,id:prefixId$5(r),name:r,onFocus:s,onBlur:l,type:`checkbox`,class:`bio-properties-panel-input`,onChange:handleChange,checked:o,disabled:i})});function FeelEntry(e){let{element:a,id:o,description:s,debounce:c,disabled:l,feel:u,label:d,getValue:p,setValue:h,tooltipContainer:b,hostLanguage:x,singleLine:S,validate:C,show:E=noop$2,example:M,variables:N,onFocus:z,onBlur:B,placeholder:X,tooltip:ee,translate:te=translateFallback}=e,[fe,xe]=r(null),[Te,Oe]=r(null),je=p(a);y(()=>{if(I(C)){let e=C(je)||null;xe(e)}},[je,C]);let Me=useStaticCallback(e=>{if(e!==p(a)){let t=null;I(C)&&(t=C(e)||null),h(e,t),xe(t)}}),Pe=i(e=>{Oe(e)},[]),Fe=useError(o)||Te||fe;return f(`div`,{class:(0,En.default)(e.class,`bio-properties-panel-entry`,Fe?`has-error`:``),"data-entry-id":o,children:[t(FeelTextfield,{...e,debounce:c,disabled:l,feel:u,id:o,key:a,label:d,onInput:Me,onError:Pe,onFocus:z,onBlur:B,placeholder:X,example:M,hostLanguage:x,singleLine:S,show:E,translate:te,value:je,variables:N,tooltipContainer:b,OptionalComponent:e.OptionalComponent,tooltip:ee}),Fe&&f(`div`,{class:`bio-properties-panel-error`,children:Fe}),f(Description$1,{forId:o,element:a,value:s})]})}function FeelNumberEntry(e){return f(FeelEntry,{class:`bio-properties-panel-feel-number`,OptionalComponent:Or,...e})}function FeelToggleSwitchEntry(e){return f(FeelEntry,{class:`bio-properties-panel-feel-toggle-switch`,OptionalComponent:kr,...e})}function FeelTemplatingEntry(e){return f(FeelEntry,{class:`bio-properties-panel-feel-templating`,OptionalComponent:Tr,...e})}function isEdited$5(e){return e?e.type===`checkbox`?!!e.checked||e.classList.contains(`edited`):!!e.value||e.classList.contains(`edited`):!1}function prefixId$5(e){return`bio-properties-panel-${e}`}function isFeelOptional(e){return e===`optional`||e===`optional-default-enabled`}function isFeelActive(e,t){return!!(e===`required`||Fe(t)&&t.startsWith(`=`))}function getFeelValue(e){return Fe(e)&&e.startsWith(`=`)?e.substring(1):e}function getInitialFeelLocalValue(e,t){return e===`optional-default-enabled`&&(t===void 0||t===``)?`=`:t}function Select(e){let{id:t,label:i,onChange:a,options:o=[],value:s=``,disabled:c,onFocus:l,onBlur:u,tooltip:d}=e,p=useShowEntryEvent(t),[h,b]=r(s),handleChangeCallback=({target:e})=>{a(e.value)},handleChange=e=>{handleChangeCallback(e),b(e.target.value)};return y(()=>{s!==h&&b(s)},[s]),f(`div`,{class:`bio-properties-panel-select`,children:[f(`label`,{for:prefixId$4(t),class:`bio-properties-panel-label`,children:f(TooltipWrapper,{value:d,forId:t,element:e.element,children:i})}),f(`select`,{ref:p,id:prefixId$4(t),name:t,class:`bio-properties-panel-input`,onInput:handleChange,onFocus:l,onBlur:u,value:h,disabled:c,children:o.map((e,t)=>e.children?f(`optgroup`,{label:e.label,children:e.children.map((e,t)=>f(`option`,{value:e.value,disabled:e.disabled,children:e.label},t))},t):f(`option`,{value:e.value,disabled:e.disabled,children:e.label},t))})]})}function SelectEntry(e){let{element:t,id:i,description:a,label:o,getValue:s,setValue:c,getOptions:l,disabled:u,onFocus:d,onBlur:p,validate:h,tooltip:b}=e,x=l(t),S=useError(i),[C,E]=r(null),M=s(t);y(()=>{if(I(h)){let e=h(M)||null;E(e)}},[M,h]);let onChange=e=>{if(e!==M){let t=null;I(h)&&(t=h(e)||null),c(e,t),E(t)}},N=S||C;return f(`div`,{class:(0,En.default)(`bio-properties-panel-entry`,N?`has-error`:``),"data-entry-id":i,children:[f(Select,{id:i,label:o,value:M,onChange,onFocus:d,onBlur:p,options:x,disabled:u,tooltip:b,element:t},t),N&&f(`div`,{class:`bio-properties-panel-error`,children:N}),f(Description$1,{forId:i,element:t,value:a})]})}function isEdited$3(e){return e&&!!e.value}function prefixId$4(e){return`bio-properties-panel-${e}`}function TextArea(e){let{id:t,element:o,label:s,debounce:l,onInput:u,value:d=``,disabled:p,monospace:h,onFocus:b,onBlur:x,onPaste:S,autoResize:C=!0,placeholder:E,rows:M=C?1:2,tooltip:N,translate:I=translateFallback}=e,[z,B]=r(d),X=useShowEntryEvent(t),ee=c(),te=c(z);te.current=z;let{eventBus:fe}=a(vr),[xe,Te]=r(!1),Oe=i(e=>{u(e===``?void 0:e)},[u]),je=useDebounce(Oe,l),handleLocalInput=e=>{e.target.value!==z&&(B(e.target.value),je(e.target.value))},handleOnBlur=e=>{let t=e.target.value.trim();je.cancel?.(),Oe(t),B(t),x&&x(e)},handleOnPaste=e=>{let t=e.target,r=!t.value,i=t.selectionStart===0&&t.selectionEnd===t.value.length;if(r||i){let t=e.clipboardData.getData(`text`).trim();B(t),je(t),S&&S(e),e.preventDefault()}else S&&S(e)},handleOnKeyDown=e=>{isCmdWithChar(e)&&je.flush?.()},handlePopupInput=e=>{e!==te.current&&(B(e),je(e))},handleOpenPopup=()=>{let e=fe.fire(`propertiesPanel.openPopup`,{element:o,entryId:t,label:s,onInput:handlePopupInput,sourceElement:X.current,value:z});e&&fe.once(`propertiesPanelPopup.close`,()=>{je.flush?.(),Te(!1)}),Te(e===!0)};return y(()=>()=>{fe&&fe.fire(`propertiesPanel.closePopup`)},[]),y(()=>{d!==z&&B(d)},[d]),f(`div`,{class:`bio-properties-panel-textarea`,children:[f(`label`,{for:prefixId$2(t),class:`bio-properties-panel-label`,children:f(TooltipWrapper,{value:N,forId:t,element:o,children:s})}),f(`div`,{class:(0,En.default)(`bio-properties-panel-textarea-container`,xe?`popupOpen`:null),ref:ee,children:[xe&&f(`div`,{class:`bio-properties-panel-textarea__open-popup-placeholder`,children:I(`Opened in editor`)}),f(`textarea`,{ref:X,id:prefixId$2(t),name:t,spellCheck:`false`,class:(0,En.default)(`bio-properties-panel-input`,h?`bio-properties-panel-input-monospace`:``,C?`auto-resize`:``),onInput:handleLocalInput,onFocus:b,onKeyDown:handleOnKeyDown,onBlur:handleOnBlur,onPaste:handleOnPaste,placeholder:E,rows:M,value:z,disabled:p,"data-gramm":`false`}),fe&&!p&&f(OpenPopupButton,{onClick:handleOpenPopup,translate:I})]})]})}function TextAreaEntry(e){let{element:t,id:i,description:a,debounce:o,label:s,getValue:c,setValue:l,rows:u,monospace:d,disabled:p,validate:h,onFocus:b,onBlur:x,onPaste:S,placeholder:C,autoResize:E,tooltip:M,translate:N}=e,z=useError(i),[B,X]=r(null),ee=c(t);y(()=>{if(I(h)){let e=h(ee)||null;X(e)}},[ee,h]);let te=useStaticCallback(e=>{if(e!==c(t)){let t=null;I(h)&&(t=h(e)||null),l(e,t),X(t)}}),fe=z||B;return f(`div`,{class:(0,En.default)(`bio-properties-panel-entry`,fe?`has-error`:``),"data-entry-id":i,children:[f(TextArea,{id:i,label:s,value:ee,onInput:te,onFocus:b,onBlur:x,onPaste:S,rows:u,debounce:o,monospace:d,disabled:p,placeholder:C,autoResize:E,tooltip:M,translate:N,element:t},t),fe&&f(`div`,{class:`bio-properties-panel-error`,children:fe}),f(Description$1,{forId:i,element:t,value:a})]})}function isEdited$1(e){return e&&!!e.value}function prefixId$2(e){return`bio-properties-panel-${e}`}function Textfield(e){let{debounce:t,disabled:a=!1,id:o,label:s,onInput:c,onFocus:l,onBlur:u,onPaste:d,placeholder:p,value:h=``,tooltip:b}=e,[x,S]=r(h||``),C=useShowEntryEvent(o),E=i(e=>{c(e===``?void 0:e)},[c]),M=useDebounce(E,t),handleOnBlur=e=>{let t=e.target.value.trim();M.cancel?.(),E(t),S(t),u&&u(e)},handleOnPaste=e=>{let t=e.target,r=!t.value,i=t.selectionStart===0&&t.selectionEnd===t.value.length;if(r||i){let t=e.clipboardData.getData(`text`).trim();S(t),M(t),d&&d(e),e.preventDefault()}else d&&d(e)},handleLocalInput=e=>{e.target.value!==x&&(S(e.target.value),M(e.target.value))};y(()=>{h!==x&&S(h)},[h]);let handleOnKeyDown=e=>{isCmdWithChar(e)&&M.flush?.()};return f(`div`,{class:`bio-properties-panel-textfield`,children:[f(`label`,{for:prefixId$1(o),class:`bio-properties-panel-label`,children:f(TooltipWrapper,{value:b,forId:o,element:e.element,children:s})}),f(`input`,{ref:C,id:prefixId$1(o),type:`text`,name:o,spellCheck:`false`,autoComplete:`off`,disabled:a,class:`bio-properties-panel-input`,onInput:handleLocalInput,onFocus:l,onKeyDown:handleOnKeyDown,onBlur:handleOnBlur,onPaste:handleOnPaste,placeholder:p,value:x})]})}function TextfieldEntry(e){let{element:t,id:i,description:a,debounce:o,disabled:s,label:c,getValue:l,setValue:u,validate:d,onFocus:p,onBlur:h,onPaste:b,placeholder:x,tooltip:S}=e,C=useError(i),[E,M]=r(null),N=l(t);y(()=>{if(I(d)){let e=d(N)||null;M(e)}},[N,d]);let z=useStaticCallback(e=>{if(e!==l(t)){let t=null;I(d)&&(t=d(e)||null),u(e,t),M(t)}}),B=C||E;return f(`div`,{class:(0,En.default)(`bio-properties-panel-entry`,B?`has-error`:``),"data-entry-id":i,children:[f(Textfield,{debounce:o,disabled:s,id:i,label:c,onInput:z,onFocus:p,onBlur:h,onPaste:b,placeholder:x,value:N,tooltip:S,element:t},t),B&&f(`div`,{class:`bio-properties-panel-error`,children:B}),f(Description$1,{forId:i,element:t,value:a})]})}function isEdited(e){return e&&!!e.value}function prefixId$1(e){return`bio-properties-panel-${e}`}function getPopupTitle({element:e,label:t}){let r=``;return e&&e.type&&(r=`${e.type} / `),`${r}${t}`}function createDragger(e,t){let r,i,a;function onDragStart(e){r=this,i=e.clientX,a=e.clientY,e.dataTransfer&&e.dataTransfer.setDragImage(t||emptyCanvas(),0,0),document.addEventListener(`dragover`,onDrag,!0),document.addEventListener(`dragenter`,preventDefault,!0),document.addEventListener(`dragend`,onEnd),document.addEventListener(`drop`,preventDefault)}function onDrag(t){let o={x:t.clientX-i,y:t.clientY-a};return e.call(r,t,o)}function onEnd(){document.removeEventListener(`dragover`,onDrag,!0),document.removeEventListener(`dragenter`,preventDefault,!0),document.removeEventListener(`dragend`,onEnd),document.removeEventListener(`drop`,preventDefault)}return onDragStart}function preventDefault(e){e.preventDefault(),e.stopPropagation()}function emptyCanvas(){return ht(`<canvas width="0" height="0" />`)}var noop=()=>{};function PopupComponent(e,t){let{className:r,delayInitialFocus:i,position:a,width:o,height:s,onClose:l,onPostActivate:u=noop,onPostDeactivate:d=noop,returnFocus:p=!0,closeOnEscape:h=!0,allowFocusMove=()=>!0,title:b}=e,x=c(null),S=c(null),C=t||S,handleKeydown=e=>{e.stopPropagation(),h&&e.key===`Escape`&&l()},handleFocus=()=>{x.current&&x.current.activate()},{top:E,left:M}=a||getCenterPosition(o,s),N={};return X(E)&&X(M)&&(N.top=E+`px`,N.left=M+`px`),o&&(N.width=o+`px`),s&&(N.height=s+`px`),y(()=>(C.current&&C.current.addEventListener(`focusin`,handleFocus),()=>{C.current&&C.current.removeEventListener(`focusin`,handleFocus)}),[C]),y(()=>(C.current&&(x.current=ot(C.current,{clickOutsideDeactivates:!0,delayInitialFocus:i,fallbackFocus:C.current,isKeyForward:e=>isTab(e)&&!e.shiftKey&&allowFocusMove(e),isKeyBackward:e=>isTab(e)&&e.shiftKey&&allowFocusMove(e),onPostActivate:u,onPostDeactivate:d,returnFocusOnDeactivate:p}),x.current.activate()),()=>x.current&&x.current.deactivate()),[C]),f(`div`,{"aria-label":b,tabIndex:-1,ref:C,onKeyDown:handleKeydown,role:`dialog`,class:(0,En.default)(`bio-properties-panel-popup`,`bio-theme-parent`,r),style:N,children:e.children})}var Ar=u(PopupComponent);Ar.Title=Title,Ar.Body=Body,Ar.Footer=Footer;function Title(e){let{eventBus:t}=a(vr),{children:r,className:i,draggable:o,title:l,showCloseButton:u=!1,closeButtonTooltip:d=`Close popup`,onClose:p,...h}=e,y=c({startPosition:null,newPosition:null}),b=c(),x=c(),onMove=(e,r)=>{cancel(e);let{x:i,y:a}=r,o={x:y.current.startPosition.x+i,y:y.current.startPosition.y+a},s=getPopupParent(x.current);s.style.top=o.y+`px`,s.style.left=o.x+`px`,t?.fire(`feelPopup.dragover`,{newPosition:o,delta:r})},onMoveStart=e=>{createDragger(onMove,b.current)(e),e.stopPropagation();let r=getPopupParent(x.current).getBoundingClientRect();y.current.startPosition={x:r.left,y:r.top},t?.fire(`feelPopup.dragstart`)},onMoveEnd=()=>{y.current.newPosition=null,t?.fire(`feelPopup.dragend`)};return f(`div`,{class:(0,En.default)(`bio-properties-panel-popup__header`,o&&`draggable`,i),ref:x,draggable:o,onDragStart:onMoveStart,onDragEnd:onMoveEnd,...h,children:[o&&f(s,{children:[f(`div`,{ref:b,class:`bio-properties-panel-popup__drag-preview`}),f(`div`,{class:`bio-properties-panel-popup__drag-handle`,children:f(Drag,{})})]}),f(`div`,{class:`bio-properties-panel-popup__title`,children:l}),r,u&&f(`button`,{type:`button`,title:d,class:`bio-properties-panel-popup__close`,onClick:p,children:f(Close,{})})]})}function Body(e){let{children:t,className:r,...i}=e;return f(`div`,{class:(0,En.default)(`bio-properties-panel-popup__body`,r),...i,children:t})}function Footer(e){let{children:t,className:r,...i}=e;return f(`div`,{class:(0,En.default)(`bio-properties-panel-popup__footer`,r),...i,children:e.children})}function getCenterPosition(e,t){if(!e||!t)return{};let r=window.innerWidth||document.documentElement.clientWidth,i=window.innerHeight||document.documentElement.clientHeight;return{left:Math.max(0,(r-e)/2),top:Math.max(0,(i-t)/2)}}function isTab(e){return e.key===`Tab`}function getPopupParent(e){return e.closest(`.bio-properties-panel-popup`)}function cancel(e){e.preventDefault(),e.stopPropagation()}var jr=700,Mr=400;function FeelPopup(e){let{entryId:t,onInput:r,onClose:i,title:a,type:o,value:l,links:u,variables:d,hostLanguage:p,singleLine:h,sourceElement:b,tooltipContainer:x,feelLanguageContext:S}=e,C=c(),E=c(),M=c(!1),handleSetReturnFocus=()=>{b&&b.focus()},onKeyDownCapture=e=>{e.key===`Escape`&&(M.current=autoCompletionOpen(e.target))},onKeyDown=e=>{e.key===`Escape`&&(M.current||=(i(),!1))};return y(()=>{C.current&&C.current.focus()},[C]),f(Ar,{className:`bio-properties-panel-feel-popup`,title:a,returnFocus:!1,closeOnEscape:!1,delayInitialFocus:!1,allowFocusMove:e=>!isSnippetNavigation(e),onPostDeactivate:handleSetReturnFocus,height:Mr,width:jr,ref:E,children:[f(Ar.Title,{title:a,showCloseButton:!0,closeButtonTooltip:`Save and close`,onClose:i,draggable:!0,children:f(s,{children:(u||[]).map((e,t)=>f(`a`,{rel:`noreferrer`,href:e.href,target:`_blank`,class:`bio-properties-panel-feel-popup__title-link`,children:[e.title,f(Launch,{})]},t))})}),f(Ar.Body,{children:f(`div`,{onKeyDownCapture,onKeyDown,class:`bio-properties-panel-feel-popup__body`,children:[o===`feel`&&f(Er,{enableGutters:!0,name:t,onInput:r,value:l,variables:d,feelLanguageContext:S,ref:C,tooltipContainer:x}),o===`feelers`&&f(Tr,{contentAttributes:{"aria-label":a},enableGutters:!0,hostLanguage:p,name:t,onInput:r,value:l,ref:C,singleLine:h,tooltipContainer:x})]})})]})}function autoCompletionOpen(e){let t=e.closest(`.cm-editor`);return t?t.querySelector(`.cm-tooltip-autocomplete`):null}function isSnippetNavigation(e){let t=e.target.closest(`.cm-editor`);return!!(t&&t.querySelector(`.cm-snippetField`))}var Nr=700,Pr=400;function TextPopup(e){let{entryId:t,onInput:r,onClose:i,title:a,value:o,sourceElement:s}=e,l=c(),u=c(),handleSetReturnFocus=()=>{s&&s.focus()};return y(()=>{l.current&&l.current.focus()},[l]),f(Ar,{className:`bio-properties-panel-text-popup`,title:a,returnFocus:!1,closeOnEscape:!0,delayInitialFocus:!1,onClose:i,onPostDeactivate:handleSetReturnFocus,height:Pr,width:Nr,ref:u,children:[f(Ar.Title,{title:a,showCloseButton:!0,closeButtonTooltip:`Save and close`,onClose:i,draggable:!0}),f(Ar.Body,{children:f(`textarea`,{id:prefixId(t),name:t,class:`bio-properties-panel-input`,ref:l,onInput:e=>r(e.target.value),value:o||``,spellCheck:`false`,autoComplete:`off`,"aria-label":a,"data-gramm":`false`})})]})}function prefixId(e){return`bio-properties-panel-popup-${e}`}var Fr=`text`,Ir=1e3,Lr=500,Popup=class{constructor(e,t={}){this._eventBus=e,this._config=t,this._isOpen=!1,this.registerProvider(`feel`,Lr,FeelPopup),this.registerProvider(`feelers`,Lr,FeelPopup),this.registerProvider(`text`,Lr,TextPopup),e.on(`propertiesPanel.openPopup`,(e,t)=>this.open(t.entryId,t,t.sourceElement)),e.on([`propertiesPanel.closePopup`,`propertiesPanel.detach`],()=>{this.close()})}registerProvider(e,t,r){r||(r=t,t=Ir),this._eventBus.on(`propertiesPanelPopup.getProviders.`+e,t,function(e){e.providers.push(r)})}_getProviders(e){let t=this._eventBus.createEvent({type:`propertiesPanelPopup.getProviders.`+e,providers:[]});return this._eventBus.fire(t),t.providers}isOpen(){return this._isOpen}open(e,t,r){return this.close(),this._openPopup({...t,entryId:e,sourceElement:r})}close(){this._closePopup()}_openPopup(e){let{element:t,label:r,sourceElement:i,type:a=Fr}=e,o=this._getProviders(a)[0];return o?(this._isOpen=!0,this._eventBus.fire(`propertiesPanelPopup.open`,{container:this._config.feelPopupContainer,config:{...e,component:o,links:this._config.getFeelPopupLinks?.(a)||[],onClose:()=>{this._closePopup(),setTimeout(()=>{i&&i.focus()},0)},title:getPopupTitle({element:t,label:r})}}),!0):!1}_closePopup(){this._isOpen&&(this._isOpen=!1,this._eventBus.fire(`propertiesPanelPopup.close`))}};Popup.$inject=[`eventBus`,`config.propertiesPanel`];var PopupRenderer=class{constructor(e){this._eventBus=e,this._container=null,this._element=null,e.on(`propertiesPanelPopup.open`,e=>{this._renderPopup(e)}),e.on(`propertiesPanelPopup.close`,()=>{this._removePopup()})}_renderPopup(e){let{container:t,config:r}=e;t=this._container=getContainer(t)||document.body;let i=this._element=createElement();t.appendChild(i),this._emit(`feelPopup.open`);let a=r.component;l(f(vr.Provider,{value:{eventBus:this._eventBus},children:f(a,{...r,eventBus:this._eventBus})}),i),this._emit(`feelPopup.opened`,{domNode:i})}_removePopup(){this._container&&(this._emit(`feelPopup.close`,{domNode:this._element}),l(null,this._element),this._container.removeChild(this._element),this._container=null,this._element=null,this._emit(`feelPopup.closed`))}_emit(e,t){this._eventBus.fire(e,t)}};PopupRenderer.$inject=[`eventBus`];function createElement(){let e=document.createElement(`div`);return e.classList.add(`bio-properties-panel-popup-container`),e}function getContainer(e){return Fe(e)?gt(e):e}var Rr={__init__:[`feelPopup`,`feelPopupRenderer`],feelPopup:[`type`,Popup],feelPopupRenderer:[`type`,PopupRenderer]};function getPropertiesPanelHeaderProvider(e={}){let{getDocumentationRef:t,formFields:r,translate:i}=e;return{getElementLabel:e=>{let{type:t}=e,i=r.get(t).config;return i.getSubheading?i.getSubheading(e):e.label},getElementIcon:e=>{let{type:t}=e,i=r.get(t).config,a=i.icon||Jt(t);if(a)return function IconComponent(){return f(a,{width:`36`,height:`36`,viewBox:`0 0 54 54`})};if(i.iconUrl)return getPaletteIcon({iconUrl:i.iconUrl,label:i.label})},getTypeLabel:e=>{let{type:t}=e;if(t==="default")return i(`Form`);let a=r.get(t).config;return i(a.name||a.label||t)},getDocumentationRef:t}}var zr={getEmpty:()=>({text:`Select a form field to edit its properties.`}),getMultiple:()=>({text:`Multiple form fields are selected. Select a single form field to edit its properties.`})};function useVariables(){let e=useService(`formEditor`).getSchema();return Ft(e)}var Br={};function PropertiesPanel(){let e=useService(`eventBus`),t=useService(`modeling`),a=useService(`selection`),o=useService(`formEditor`),s=useService(`formFields`),c=useService(`propertiesPanel`),l=useService(`config.propertiesPanel`)||Br,u=useService(`translate`),{feelPopupContainer:h}=l,[y,b]=r({selectedFormField:a.get()||o._getState().schema}),x=y.selectedFormField,S=i(t=>{b({selectedFormField:a.get()||o._getState().schema}),e.fire(`propertiesPanel.updated`,{formField:t})},[e,o,a]);p(()=>(e.on(`changed`,S),e.on(`import.done`,S),e.on(`selection.changed`,S),()=>{e.off(`changed`,S),e.off(`import.done`,S),e.off(`selection.changed`,S)}),[e,S]);let onFocus=()=>e.fire(`propertiesPanel.focusin`),onBlur=()=>e.fire(`propertiesPanel.focusout`),C=i((e,r,i)=>t.editFormField(e,r,i),[t]),E=c.getProviders(),M=d(()=>te(E,function(e,t){return ee(x)?[]:t.getGroups(x,C)(e)},[]),[E,x,C]),N=d(()=>getPropertiesPanelHeaderProvider({getDocumentationRef:l.getDocumentationRef,formFields:s,translate:u}),[s,l,u]);return f(`div`,{class:`fjs-properties-container`,"input-handle-modified-keys":`y,z`,children:f(`div`,{class:`fjs-properties-panel`,"data-field":x&&x.id,onFocusCapture:onFocus,onBlurCapture:onBlur,children:f(PropertiesPanel$1,{element:x,eventBus:e,groups:M,headerProvider:N,placeholderProvider:zr,feelPopupContainer:h})})})}var Vr=/^fjs-cursor-.*$/;function set(e){let t=pt(document.body);t.removeMatching(Vr),e&&t.add(`fjs-cursor-`+e)}function unset(){set(null)}var Hr=`fjs-drag-container`,Ur=`fjs-drop-container-vertical`,Wr=`fjs-drop-container-horizontal`,Gr=`fjs-drag-move`,Kr=`fjs-drag-row-move`,qr=`fjs-drag-copy`,Jr=`fjs-no-drop`,Yr=`fjs-no-move`,Xr=`fjs-error-drop`,Dragging=class{constructor(e,t,r,i,a,o){this._formFieldRegistry=e,this._formLayouter=t,this._formLayoutValidator=r,this._eventBus=i,this._modeling=a,this._pathRegistry=o}getTargetIndex(e,t,r){let i=r&&r.querySelector(`.fjs-element`),a=i&&this._formFieldRegistry.get(i.dataset.id);return a?getFormFieldIndex$1(t,a):e?getFormFieldIndex$1(t,this._formFieldRegistry.get(e.components[e.components.length-1]))+1:t.components.length}validateDrop(e,t){let r=e.querySelector(`.fjs-element`),i=this._formLayouter.getRow(t.dataset.rowId),a,o,s;if(r){if(o=this._formFieldRegistry.get(r.dataset.id),!o)return`No associated form field in the registry`;if(a=(o.layout||{}).columns,isRow(t)){s=getFormParent(t).dataset.id;let e=this._formLayoutValidator.validateField(o,a,i);if(e)return e}else s=t.dataset.id;if(!s)return`Drop is not a valid target`;let e=this._formFieldRegistry.get(s),c=this._formFieldRegistry.get(o._parent);if(e!==c){let t=this._pathRegistry.getValuePath(e),r=this._pathRegistry.getValuePath(c);if(t.join(`.`)!==r.join(`.`)&&!this._pathRegistry.executeRecursivelyOnFields(o,({field:e,isClosed:r,isRepeatable:i})=>{let a={cutoffNode:c.id},o=this._pathRegistry.getValuePath(e,a);return this._pathRegistry.canClaimPath([...t,...o],{isClosed:r,isRepeatable:i,knownAncestorIds:kt(s,this._formFieldRegistry)})}))return`Drop not allowed by path registry`}}}moveField(e,t,r,i,a){let o=e.querySelector(`.fjs-element`),s=this._formFieldRegistry.get(o.dataset.id),c=getFormParent(t),l=this._formFieldRegistry.get(c.dataset.id),u=getFormFieldIndex$1(l,s),d=this._formLayouter.getRowForField(s);this._modeling.moveFormField(s,l,i,u,a,d,r)}createNewField(e,t,r,i){let a={type:e.dataset.fieldType};a={...a,_parent:r.id,layout:{row:t?t.id:this._formLayouter.nextRowId(),columns:null}},this._modeling.addFormField(a,r,i)}handleRowDrop(e,t,r,i){let a=this._formFieldRegistry.get(t.dataset.id),o=e.querySelector(`.fjs-layout-row`),s=this._formLayouter.getRow(o.dataset.rowId);s.components.forEach((e,t)=>{let o=this._formFieldRegistry.get(e),c=getFormParent(r),l=this._formFieldRegistry.get(c.dataset.id),u=i&&i.querySelector(`.fjs-layout-row`),d=u&&this._formLayouter.getRow(u.dataset.rowId),f=i&&this._formFieldRegistry.get(d.components[0]),p=getFormFieldIndex$1(l,o),h=(u?getFormFieldIndex$1(a,f):a.components.length)+t;this._modeling.moveFormField(o,l,a,p,h,s,s)})}handleElementDrop(e,t,r,i,a){let o=this._formFieldRegistry.get(getFormParent(t).dataset.id),s;if(isRow(t)&&(s=this._formLayouter.getRow(t.dataset.rowId)),a.cancel(!0),this.validateDrop(e,t))return;let c=this.getTargetIndex(s,o,i);isPalette(r)?this.createNewField(e,s,o,c):this.moveField(e,r,s,o,c)}createDragulaInstance(e){let{container:t,mirrorContainer:r}=e||{},i=De({direction:function(e,t){return isRow(t)?`horizontal`:`vertical`},mirrorContainer:r,isContainer(e){return t.some(t=>e.classList.contains(t))},moves(e,t,r){return!r.classList.contains(Yr)&&(e.classList.contains(Gr)||e.classList.contains(qr)||e.classList.contains(Kr))},copy(e){return e.classList.contains(qr)},accepts:(e,t)=>(unsetDropNotAllowed(t),e.classList.contains(Kr)?!t.classList.contains(Wr):(this.validateDrop(e,t)&&setDropNotAllowed(t),!t.classList.contains(Jr))),transformOffset:(e,t,r)=>{if(r.classList.contains(Kr)){let e={x:-5,y:-60};return{left:t.clientX+e.x,top:t.clientY+e.y}}if(r.classList.contains(Gr)){let e={x:-5,y:-15};return{left:t.clientX+e.x,top:t.clientY+e.y}}return e},slideFactorX:10,slideFactorY:5});return i.on(`drag`,(e,t)=>{this.emit(`drag.start`,{element:e,source:t})}),i.on(`dragend`,e=>{this.emit(`drag.end`,{element:e})}),i.on(`drop`,(e,t,r,i)=>{this.emit(`drag.drop`,{element:e,target:t,source:r,sibling:i})}),i.on(`over`,(e,t,r)=>{this.emit(`drag.hover`,{element:e,container:t,source:r})}),i.on(`out`,(e,t,r)=>{this.emit(`drag.out`,{element:e,container:t,source:r})}),i.on(`cancel`,(e,t,r)=>{this.emit(`drag.cancel`,{element:e,container:t,source:r})}),i.on(`drop`,(e,t,r,a)=>{t?isDragRow(e)?this.handleRowDrop(e,t,r,a):this.handleElementDrop(e,t,r,a,i):i.remove()}),this.emit(`dragula.created`,i),i}emit(e,t){this._eventBus.fire(e,t)}};Dragging.$inject=[`formFieldRegistry`,`formLayouter`,`formLayoutValidator`,`eventBus`,`modeling`,`pathRegistry`];function getFormFieldIndex$1(e,t){let r=e.components.length;return e.components.forEach(({id:e},i)=>{e===t.id&&(r=i)}),r}function isRow(e){return e.classList.contains(`fjs-layout-row`)}function isDragRow(e){return e.classList.contains(Kr)}function isPalette(e){return e.classList.contains(`fjs-palette-fields`)}function getFormParent(e){return e.closest(`.fjs-element`)}function setDropNotAllowed(e){e.classList.add(Xr),set(`not-allowed`)}function unsetDropNotAllowed(e){e.classList.remove(Xr),set(`grabbing`)}function FieldDragPreview(e){let{class:t,Icon:r,label:i}=e;return f(`div`,{class:(0,En.default)(`fjs-field-preview`,t),children:[f(r,{class:`fjs-field-preview-icon`,width:`36`,height:`36`,viewBox:`0 0 54 54`}),f(`span`,{class:`fjs-field-preview-text`,children:i})]})}var Zr=/^cds--col(-lg)?/,Qr=16;function FieldResizer(e){let{field:t,position:r}=e,i=c(null),a=useService(`formLayoutValidator`),o=useService(`modeling`),s=c({startColumns:0,newColumns:0}),l=throttle((e,o)=>{let{x:c}=o,{layout:l={}}=t,u=calculateNewColumns(i.current,l.columns||s.current.startColumns,c,r);if(!a.validateField(t,u)){s.current.newColumns=u;let e=i.current.closest(`.fjs-layout-column`);removeMatching(e,Zr),e.classList.add(`cds--col-lg-${u}`)}}),onResizeStart=e=>{let i=getElementNode(t),a=getParent(i);createDragger$1(l)(e);let o=getColumnNode(i).getBoundingClientRect().width+Qr;s.current.startColumns=asColumns(o,a),setResizing(i,r)},onResizeEnd=()=>{let{layout:e={}}=t;s.current.newColumns&&o.editFormField(t,`layout`,{...e,columns:s.current.newColumns}),unsetResizing(getElementNode(t),r),s.current.newColumns=null};return t.type==="default"?null:f(`div`,{ref:i,class:(0,En.default)(`fjs-field-resize-handle`,`fjs-field-resize-handle-`+r,Yr),draggable:!0,onDragStart:onResizeStart,onDragEnd:onResizeEnd})}function asColumns(e,t){let r=1/16*t.getBoundingClientRect().width;return Math.round(e/r)}function calculateNewColumns(e,t,r,i){let a=getParent(e);return i===`left`&&(r*=-1),t+asColumns(r,a)}function getParent(e){return e.closest(`.fjs-layout-row`)}function removeMatching(e,t){return pt(e).removeMatching(t)}function getColumnNode(e){return e.closest(`.fjs-layout-column`)}function getElementNode(e){return gt(`.fjs-element[data-id="`+e.id+`"]`)}function setResizing(e,t){pt(e).add(`fjs-element-resizing-`+t)}function unsetResizing(e,t){pt(e).remove(`fjs-element-resizing-`+t)}function ContextPad(e){return e.children?f(`div`,{class:`fjs-context-pad`,children:e.children}):null}function ContextPadContent(e){let{field:t}=e,r=useService(`formFieldContextActions`);if(!useService(`selection`).isSelected(t)||t.type==="default")return null;let i=r.getEntries(t),a=Object.entries(i).filter(([,e])=>e.group!==`morph`);return f(ContextPad,{children:a.map(([e,t])=>f(`button`,{type:`button`,title:t.title,class:`fjs-context-pad-item`,onClick:t.action,children:f(Zn,{})},e))})}function EmptyGroup({translate:e}){return f(`div`,{class:`fjs-empty-component`,children:f(`span`,{class:`fjs-empty-component-text`,children:e(`Drag and drop components here.`)})})}function EmptyForm(){let e=useService(`translate`);return f(`div`,{class:`fjs-empty-editor`,children:f(`div`,{class:`fjs-empty-editor-card`,children:[f(ur,{}),f(`h2`,{children:e(`Build your form`)}),f(`span`,{children:e(`Drag and drop components here to start designing.`)}),f(`span`,{children:e(`Use the preview window to test your form.`)}),f(Slot,{name:`editor-empty-state__footer`})]})})}function Empty(e){let t=useService(`translate`);return[`group`,`dynamiclist`].includes(e.field.type)?f(EmptyGroup,{translate:t}):e.field.type==="default"?f(EmptyForm,{}):null}function Element$1(e){let t=useService(`eventBus`),o=useService(`selection`),{hoverInfo:s}=a(tn),{field:l}=e,{id:u,type:h,showOutline:b}=l,x=c(),[S,C]=r(!1);y(()=>{function scrollIntoView({selection:e}){let t=Kt(x.current);if(!e||e.type==="default"||e.id!==u||!t||!x.current)return;let r=x.current.getBoundingClientRect(),i=t.getBoundingClientRect(),a=r.height>i.height;(r.bottom>i.bottom||r.top<i.top)&&!a&&x.current.scrollIntoView({behavior:`auto`,block:`nearest`})}return t.on(`selection.changed`,scrollIntoView),()=>t.off(`selection.changed`,scrollIntoView)},[t,u]),p(()=>{o.isSelected(l)&&x.current.focus()},[o,l]);let E=i(e=>{let t=e.target.closest(`[data-id]`);t&&t.dataset.id===l.id&&o.toggle(l)},[l,o]),M=o.isSelected(l),N=d(()=>{let t=[];return e.class&&t.push(...e.class.split(` `)),M&&t.push(`fjs-editor-selected`),[`group`,`dynamiclist`].includes(h)&&t.push(b?`fjs-outlined`:`fjs-dashed-outlined`),S&&t.push(`fjs-editor-hovered`),t.join(` `)},[S,M,e.class,b,h]),onKeyPress=e=>{e.key===`Enter`&&(e.stopPropagation(),o.toggle(l))};return f(`div`,{class:N,"data-id":u,"data-field-type":h,tabIndex:h==="default"?-1:0,onClick:E,onKeyPress,onMouseOver:e=>{s.cleanup&&s.cleanup(),C(!0),s.cleanup=()=>C(!1),e.stopPropagation()},ref:x,children:[f(DebugColumns,{field:l}),f(ContextPadContent,{field:l}),e.children,f(FieldResizer,{position:`left`,field:l}),f(FieldResizer,{position:`right`,field:l})]})}function DebugColumns(e){let{field:t}=e;return!useService(`config.debugColumns`)||t.type=="default"?null:f(`div`,{style:`width: fit-content; padding: 2px 6px; height: 16px; background: var(--color-blue-205-100-95); display: flex; justify-content: center; align-items: center; position: absolute; bottom: -2px; z-index: 2; font-size: 10px; right: 3px;`,class:`fjs-debug-columns`,children:(t.layout||{}).columns||`auto`})}function Children(e){let{field:t}=e,{id:r,type:i,_parent:a}=t,o=[`fjs-children`,Ur];return i==="default"&&!a&&o.push(`fjs-editor-form-root`),e.class&&o.push(...e.class.split(` `)),f(`div`,{class:o.join(` `),"data-id":r,children:e.children})}function Row(e){let{row:t}=e,{id:r}=t,i=[Wr];return e.class&&i.push(...e.class.split(` `)),f(`div`,{class:(0,En.default)(Kr),children:[f(`span`,{class:`fjs-row-dragger`,children:f($n,{})}),f(`div`,{class:i.join(` `),style:e.style,"data-row-id":r,children:e.children})]})}function Column(e){let{field:t}=e,r=[Gr];return t.type==="default"?e.children:(e.class&&r.push(...e.class.split(` `)),f(`div`,{"data-field-type":t.type,class:r.join(` `),children:e.children}))}function FormEditor$1(){let e=useService(`dragging`),t=useService(`eventBus`),a=useService(`formEditor`),o=useService(`injector`),s=useService(`selection`),{schema:l,properties:u}=a._getState(),{ariaLabel:p}=u,h=c(null),[,b]=r(l),[x,S]=r(!1);y(()=>{function handleSelectionChanged(e){b(e.selection||l)}return t.on(`selection.changed`,handleSelectionChanged),()=>{t.off(`selection.changed`,handleSelectionChanged)}},[t,l]),y(()=>{b(s.get()||l)},[s,l]);let[C,E]=r(null),M={drake:C};y(()=>{let r=e.createDragulaInstance({container:[Hr,Ur,Wr],mirrorContainer:h.current});E(r);let onDetach=()=>{r&&(r.destroy(),t.fire(`dragula.destroyed`))},onAttach=()=>{onDetach(),r=e.createDragulaInstance({container:[Hr,Ur,Wr],mirrorContainer:h.current}),E(r)},onCreate=e=>{E(e)},onDragStart=()=>{set(`grabbing`)},onDragEnd=()=>{unset()};return t.on(`attach`,onAttach),t.on(`detach`,onDetach),t.on(`dragula.created`,onCreate),t.on(`drag.start`,onDragStart),t.on(`drag.end`,onDragEnd),()=>{onDetach(),t.off(`attach`,onAttach),t.off(`detach`,onDetach),t.off(`dragula.created`,onCreate),t.off(`drag.start`,onDragStart),t.off(`drag.end`,onDragEnd)}},[e,t]),y(()=>{x||(S(!0),t.fire(`rendered`),t.fire(`formEditor.rendered`))},[t,x]);let N=d(()=>({Children,Column,Element:Element$1,Empty,Row,hoverInfo:{},applyVisibilityConditions:!1}),[]),I=d(()=>({getService(e,t=!0){return e===`form`?{_getState(){return{data:{},errors:{},properties:{ariaLabel:p,disabled:!0},schema:l}}}:o.get(e,t)},formId:a._id}),[p,a,o,l]),z=i(()=>{},[]),B=i(()=>{},[]);return f(`div`,{class:`fjs-form-editor`,children:f(SlotFillRoot,{children:[f(Gn.Provider,{value:M,children:[f(ModularSection,{rootClass:`fjs-palette-container`,section:`palette`,children:f(Palette,{})}),f(`div`,{ref:h,class:`fjs-form-container`,children:f(en.Provider,{value:I,children:f(tn.Provider,{value:N,children:f($t,{onSubmit:z,onReset:B})})})}),f(CreatePreview,{})]}),f(ModularSection,{rootClass:`fjs-properties-panel-container`,section:`propertiesPanel`,children:f(PropertiesPanel,{})}),f(ModularSection,{rootClass:`fjs-render-injector-container`,section:`renderInjector`,children:f(InjectedRendersRoot,{})})]})})}function CreatePreview(e){let{drake:t}=a(Gn),r=useService(`formFields`);return y(()=>{if(!t)return;function handleCloned(e,t,i){let a=e.dataset.fieldType;if(a){let i=findPaletteEntry$1(a,r);if(!i)return;let{label:o}=i,s=getPaletteIcon(i);e.innerHTML=``,e.class=`gu-mirror`,e.classList.add(`fjs-field-preview-container`),t.classList.contains(`fjs-palette-field`)&&e.classList.add(`cds--col`),l(f(FieldDragPreview,{label:o,Icon:s}),e)}else[`fjs-context-pad`,`fjs-row-dragger`,`fjs-debug-columns`].forEach(t=>{let r=e.querySelectorAll(`.`+t);r.length&&r.forEach(e=>e.remove())}),e.classList.add(`cds--grid`),e.classList.add(`cds--grid--condensed`)}return t.on(`cloned`,handleCloned),()=>t.off(`cloned`,handleCloned)},[t,r]),null}function findPaletteEntry$1(e,t){return collectPaletteEntries(t).find(t=>t.type===e)}var Renderer=class{constructor(e,t,i,a){let{container:o,compact:s=!1}=e;t.on(`form.init`,function(){t.fire(`canvas.init`,{svg:o,viewport:null})}),o.addEventListener(`mouseover`,function(){document.activeElement===document.body&&o.focus({preventScroll:!0})}),o.addEventListener(`click`,function(e){o.contains(document.activeElement)||o.focus({preventScroll:!0})});let App=()=>{let[e,t]=r(i._getState()),o={getService(e,t=!0){return a.get(e,t)}};i.on(`changed`,e=>{t(e)});let{schema:c}=e;return c?f(`div`,{class:`fjs-container fjs-editor-container ${s?`fjs-editor-compact`:``}`,children:f(Kn.Provider,{value:o,children:f(FormEditor$1,{})})}):null};t.on(`form.init`,()=>{l(f(App,{}),o)}),t.on(`form.destroy`,()=>{l(null,o)})}};Renderer.$inject=[`config.renderer`,`eventBus`,`formEditor`,`injector`];var $r={__depends__:[{__init__:[`formFields`,`renderer`],formFields:[`type`,EditorFormFields],renderer:[`type`,Renderer]}],debounce:[`factory`,DebounceFactory],eventBus:[`type`,EventBus],importer:[`type`,bn],formFieldRegistry:[`type`,FormFieldRegistry],pathRegistry:[`type`,Mt],formLayouter:[`type`,nn],formLayoutValidator:[`type`,FormLayoutValidator],fieldFactory:[`type`,sn]},ei=1e3,FormFieldContextActions=class{constructor(e){this._eventBus=e}registerProvider(e,t){t||(t=e,e=ei),this._eventBus.on(`formFieldContextActions.getProviders`,e,function(e){e.providers.push(t)})}getEntries(e){let t=this._getProviders(),r={};return Me(t,function(t){if(!I(t.getContextPadEntries))return;let i=t.getContextPadEntries(e);I(i)?r=i(r):Me(i,function(e,t){r[t]=e})}),r}_getProviders(){let e=this._eventBus.createEvent({type:`formFieldContextActions.getProviders`,providers:[]});return this._eventBus.fire(e),e.providers}};FormFieldContextActions.$inject=[`eventBus`];var DeleteActionProvider=class{constructor(e,t,r,i,a){this._modeling=t,this._formFieldRegistry=r,this._formFields=i,this._translate=a,e.registerProvider(500,this)}getContextPadEntries(e){if(e.type==="default")return{};let t=this._modeling,r=this._formFieldRegistry,i=this._formFields,a=this._translate;return{delete:{action:i=>{i.stopPropagation();let a=r.get(e._parent),o=getFormFieldIndex(a,e);t.removeFormField(e,a,o)},title:getRemoveButtonTitle(e,i,a),icon:`delete`,group:`actions`}}}};DeleteActionProvider.$inject=[`formFieldContextActions`,`modeling`,`formFieldRegistry`,`formFields`,`translate`];function getFormFieldIndex(e,t){let r=e.components.length;return e.components.forEach(({id:e},i)=>{e===t.id&&(r=i)}),r}function findPaletteEntry(e,t){return collectPaletteEntries(t).find(t=>t.type===e)}function getRemoveButtonTitle(e,t,r){let i=findPaletteEntry(e.type,t);return i?r(`Remove {label}`,{label:r(i.label)}):r(`Remove form field`)}var ti={__init__:[`formFieldContextActions`,`deleteActionProvider`],formFieldContextActions:[`type`,FormFieldContextActions],deleteActionProvider:[`type`,DeleteActionProvider]},ni=`is not a registered action`,ri=`is already registered`;function EditorActions(e,t){this._eventBus=e,this._actions={};var r=this;e.on(`diagram.init`,function(){r._registerDefaultActions(t),e.fire(`editorActions.init`,{editorActions:r})})}EditorActions.$inject=[`eventBus`,`injector`],EditorActions.prototype._registerDefaultActions=function(e){var t=e.get(`commandStack`,!1),r=e.get(`modeling`,!1),i=e.get(`selection`,!1),a=e.get(`zoomScroll`,!1),o=e.get(`copyPaste`,!1),s=e.get(`canvas`,!1),c=e.get(`rules`,!1),l=e.get(`keyboardMove`,!1),u=e.get(`keyboardMoveSelection`,!1);t&&(this.register(`undo`,function(){t.undo()}),this.register(`redo`,function(){t.redo()})),o&&i&&this.register(`copy`,function(){var e=i.get();if(e.length)return o.copy(e)}),o&&i&&this.register(`duplicate`,function(){var e=i.get();if(e.length)return o.duplicate(e)}),o&&this.register(`paste`,function(){o.paste()}),o&&i&&c&&this.register(`cut`,function(){var e=i.get();if(e.length){var t=c.allowed(`elements.delete`,{elements:e});if(t!==!1){var r=ee(t)?t:e;return o.cut(r.slice())}}}),a&&this.register(`stepZoom`,function(e){a.stepZoom(e.value)}),s&&this.register(`zoom`,function(e){s.zoom(e.value)}),r&&i&&c&&this.register(`removeSelection`,function(){var e=i.get();if(e.length){var t=c.allowed(`elements.delete`,{elements:e}),a;t!==!1&&(a=ee(t)?t:e,a.length&&r.removeElements(a.slice()))}}),l&&this.register(`moveCanvas`,function(e){l.moveCanvas(e)}),u&&this.register(`moveSelection`,function(e){u.moveSelection(e.direction,e.accelerated)})},EditorActions.prototype.trigger=function(e,t){if(!this._actions[e])throw error(e,ni);if(this._eventBus.fire(`editorActions.allowed`,{action:e,opts:t})!==!1)return this._actions[e](t)},EditorActions.prototype.register=function(e,t){var r=this;if(typeof e==`string`)return this._registerAction(e,t);Me(e,function(e,t){r._registerAction(t,e)})},EditorActions.prototype._registerAction=function(e,t){if(this.isRegistered(e))throw error(e,ri);this._actions[e]=t},EditorActions.prototype.unregister=function(e){if(!this.isRegistered(e))throw error(e,ni);this._actions[e]=void 0},EditorActions.prototype.getActions=function(){return Object.keys(this._actions)},EditorActions.prototype.isRegistered=function(e){return!!this._actions[e]};function error(e,t){return Error(e+` `+t)}var ii={__init__:[`editorActions`],editorActions:[`type`,EditorActions]},FormEditorActions=class extends EditorActions{constructor(e,t){super(e,t),e.on(`form.init`,()=>{this._registerDefaultActions(t),e.fire(`editorActions.init`,{editorActions:this})})}_registerDefaultActions(e){let t=e.get(`commandStack`,!1),r=e.get(`formFieldRegistry`,!1),i=e.get(`selection`,!1);t&&(this.register(`undo`,()=>{t.undo()}),this.register(`redo`,()=>{t.redo()})),r&&i&&this.register(`selectFormField`,(e={})=>{let{id:t}=e;if(!t)return;let a=r.get(t);a&&i.set(a)})}};FormEditorActions.$inject=[`eventBus`,`injector`];var ai={__depends__:[ii],editorActions:[`type`,FormEditorActions]},EditorTemplating=class{isTemplate(e){return Fe(e)&&(e.startsWith(`=`)||/{{/.test(e))}evaluate(e){return e}};EditorTemplating.$inject=[];var oi={__init__:[`expressionLanguage`,`templating`],expressionLanguage:[`type`,Qt],templating:[`type`,EditorTemplating]},si=[`c`,`C`],ci=[`v`,`V`],li=[`d`,`D`],ui=[`x`,`X`],di=[`y`,`Y`],fi=[`z`,`Z`];function hasModifier(e){return e.ctrlKey||e.metaKey||e.shiftKey||e.altKey}function isCmd(e){return e.altKey?!1:e.ctrlKey||e.metaKey}function isKey(e,t){return e=ee(e)?e:[e],e.indexOf(t.key)!==-1||e.indexOf(t.code)!==-1}function isShift(e){return e.shiftKey}function isCopy(e){return isCmd(e)&&isKey(si,e)}function isPaste(e){return isCmd(e)&&isKey(ci,e)}function isDuplicate(e){return isCmd(e)&&isKey(li,e)}function isCut(e){return isCmd(e)&&isKey(ui,e)}function isUndo(e){return isCmd(e)&&!isShift(e)&&isKey(fi,e)}function isRedo(e){return isCmd(e)&&(isKey(di,e)||isKey(fi,e)&&isShift(e))}var pi=`keyboard.keydown`,mi=`keyboard.keyup`,hi=1e3,gi=`Keyboard binding is now implicit; explicit binding to an element got removed. For more information, see https://github.com/bpmn-io/diagram-js/issues/661`;function Keyboard(e,t){var r=this;this._config=e||={},this._eventBus=t,this._keydownHandler=this._keydownHandler.bind(this),this._keyupHandler=this._keyupHandler.bind(this),t.on(`diagram.destroy`,function(){r._fire(`destroy`),r.unbind()}),e.bindTo&&console.error(`unsupported configuration <keyboard.bindTo>`,Error(gi));var i=e&&e.bind!==!1;t.on(`canvas.init`,function(e){r._target=e.svg,i&&r.bind(),r._fire(`init`)})}Keyboard.$inject=[`config.keyboard`,`eventBus`],Keyboard.prototype._keydownHandler=function(e){this._keyHandler(e,pi)},Keyboard.prototype._keyupHandler=function(e){this._keyHandler(e,mi)},Keyboard.prototype._keyHandler=function(e,t){var r;if(!this._isEventIgnored(e)){var i={keyEvent:e};r=this._eventBus.fire(t||pi,i),r&&e.preventDefault()}},Keyboard.prototype._isEventIgnored=function(e){return!1},Keyboard.prototype.bind=function(e){e&&console.error(`unsupported argument <node>`,Error(gi)),this.unbind(),e=this._node=this._target,ft.bind(e,`keydown`,this._keydownHandler),ft.bind(e,`keyup`,this._keyupHandler),this._fire(`bind`)},Keyboard.prototype.getBinding=function(){return this._node},Keyboard.prototype.unbind=function(){var e=this._node;e&&(this._fire(`unbind`),ft.unbind(e,`keydown`,this._keydownHandler),ft.unbind(e,`keyup`,this._keyupHandler)),this._node=null},Keyboard.prototype._fire=function(e){this._eventBus.fire(`keyboard.`+e,{node:this._node})},Keyboard.prototype.addListener=function(e,t,r){I(e)&&(r=t,t=e,e=hi),this._eventBus.on(r||pi,e,t)},Keyboard.prototype.removeListener=function(e,t){this._eventBus.off(t||pi,e)},Keyboard.prototype.hasModifier=hasModifier,Keyboard.prototype.isCmd=isCmd,Keyboard.prototype.isShift=isShift,Keyboard.prototype.isKey=isKey;var _i=500;function KeyboardBindings(e,t){var r=this;e.on(`editorActions.init`,_i,function(e){var i=e.editorActions;r.registerBindings(t,i)})}KeyboardBindings.$inject=[`eventBus`,`keyboard`],KeyboardBindings.prototype.registerBindings=function(e,t){function addListener(r,i){t.isRegistered(r)&&e.addListener(i)}addListener(`undo`,function(e){var r=e.keyEvent;if(isUndo(r))return t.trigger(`undo`),!0}),addListener(`redo`,function(e){var r=e.keyEvent;if(isRedo(r))return t.trigger(`redo`),!0}),addListener(`copy`,function(e){var r=e.keyEvent;if(isCopy(r))return t.trigger(`copy`),!0}),addListener(`paste`,function(e){var r=e.keyEvent;if(isPaste(r))return t.trigger(`paste`),!0}),addListener(`duplicate`,function(e){var r=e.keyEvent;if(isDuplicate(r))return t.trigger(`duplicate`),!0}),addListener(`cut`,function(e){var r=e.keyEvent;if(isCut(r))return t.trigger(`cut`),!0}),addListener(`stepZoom`,function(e){var r=e.keyEvent;if(isKey([`+`,`Add`,`=`],r)&&isCmd(r))return t.trigger(`stepZoom`,{value:1}),!0}),addListener(`stepZoom`,function(e){var r=e.keyEvent;if(isKey([`-`,`Subtract`],r)&&isCmd(r))return t.trigger(`stepZoom`,{value:-1}),!0}),addListener(`zoom`,function(e){var r=e.keyEvent;if(isKey(`0`,r)&&isCmd(r))return t.trigger(`zoom`,{value:1}),!0}),addListener(`removeSelection`,function(e){var r=e.keyEvent;if(isKey([`Backspace`,`Delete`,`Del`],r))return t.trigger(`removeSelection`),!0})};var vi={__init__:[`keyboard`,`keyboardBindings`],keyboard:[`type`,Keyboard],keyboardBindings:[`type`,KeyboardBindings]},yi=500,FormEditorKeyboardBindings=class{constructor(e,t){e.on(`editorActions.init`,yi,e=>{let{editorActions:r}=e;this.registerBindings(t,r)})}registerBindings(e,t){function addListener(r,i){t.isRegistered(r)&&e.addListener(i)}addListener(`undo`,e=>{let{keyEvent:r}=e;if(isUndo(r))return t.trigger(`undo`),!0}),addListener(`redo`,e=>{let{keyEvent:r}=e;if(isRedo(r))return t.trigger(`redo`),!0})}};FormEditorKeyboardBindings.$inject=[`eventBus`,`keyboard`];var bi={__depends__:[vi],__init__:[`keyboardBindings`],keyboardBindings:[`type`,FormEditorKeyboardBindings]},xi={__init__:[`dragging`],dragging:[`type`,Dragging]};function CommandStack(e,t){this._handlerMap={},this._stack=[],this._stackIdx=-1,this._currentExecution={actions:[],dirty:[],trigger:null},this._injector=t,this._eventBus=e,this._uid=1,e.on([`diagram.destroy`,`diagram.clear`],function(){this.clear(!1)},this)}CommandStack.$inject=[`eventBus`,`injector`],CommandStack.prototype.execute=function(e,t){if(!e)throw Error(`command required`);this._currentExecution.trigger=`execute`;let r={command:e,context:t};this._pushAction(r),this._internalExecute(r),this._popAction()},CommandStack.prototype.canExecute=function(e,t){let r={command:e,context:t},i=this._getHandler(e),a=this._fire(e,`canExecute`,r);if(a===void 0){if(!i)return!1;i.canExecute&&(a=i.canExecute(t))}return a},CommandStack.prototype.clear=function(e){this._stack.length=0,this._stackIdx=-1,e!==!1&&this._fire(`changed`,{trigger:`clear`})},CommandStack.prototype.undo=function(){let e=this._getUndoAction(),t;if(e){for(this._currentExecution.trigger=`undo`,this._pushAction(e);e&&(this._internalUndo(e),t=this._getUndoAction(),t&&t.id===e.id);)e=t;this._popAction()}},CommandStack.prototype.redo=function(){let e=this._getRedoAction(),t;if(e){for(this._currentExecution.trigger=`redo`,this._pushAction(e);e&&(this._internalExecute(e,!0),t=this._getRedoAction(),t&&t.id===e.id);)e=t;this._popAction()}},CommandStack.prototype.register=function(e,t){this._setHandler(e,t)},CommandStack.prototype.registerHandler=function(e,t){if(!e||!t)throw Error(`command and handlerCls must be defined`);let r=this._injector.instantiate(t);this.register(e,r)},CommandStack.prototype.canUndo=function(){return!!this._getUndoAction()},CommandStack.prototype.canRedo=function(){return!!this._getRedoAction()},CommandStack.prototype._getRedoAction=function(){return this._stack[this._stackIdx+1]},CommandStack.prototype._getUndoAction=function(){return this._stack[this._stackIdx]},CommandStack.prototype._internalUndo=function(e){let t=e.command,r=e.context,i=this._getHandler(t);this._atomicDo(()=>{this._fire(t,`revert`,e),i.revert&&this._markDirty(i.revert(r)),this._revertedAction(e),this._fire(t,`reverted`,e)})},CommandStack.prototype._fire=function(e,t,r){arguments.length<3&&(r=t,t=null);let i=t?[e+`.`+t,t]:[e],a;r=this._eventBus.createEvent(r);for(let e of i)if(a=this._eventBus.fire(`commandStack.`+e,r),r.cancelBubble)break;return a},CommandStack.prototype._createId=function(){return this._uid++},CommandStack.prototype._atomicDo=function(e){let t=this._currentExecution;t.atomic=!0;try{e()}finally{t.atomic=!1}},CommandStack.prototype._internalExecute=function(e,t){let r=e.command,i=e.context,a=this._getHandler(r);if(!a)throw Error(`no command handler registered for <`+r+`>`);this._pushAction(e),t||(this._fire(r,`preExecute`,e),a.preExecute&&a.preExecute(i),this._fire(r,`preExecuted`,e)),this._atomicDo(()=>{this._fire(r,`execute`,e),a.execute&&this._markDirty(a.execute(i)),this._executedAction(e,t),this._fire(r,`executed`,e)}),t||(this._fire(r,`postExecute`,e),a.postExecute&&a.postExecute(i),this._fire(r,`postExecuted`,e)),this._popAction()},CommandStack.prototype._pushAction=function(e){let t=this._currentExecution,r=t.actions,i=r[0];if(t.atomic)throw Error(`illegal invocation in <execute> or <revert> phase (action: `+e.command+`)`);e.id||=i&&i.id||this._createId(),r.push(e)},CommandStack.prototype._popAction=function(){let e=this._currentExecution,t=e.trigger,r=e.actions,i=e.dirty;r.pop(),r.length||(this._eventBus.fire(`elements.changed`,{elements:M(`id`,i.reverse())}),i.length=0,this._fire(`changed`,{trigger:t}),e.trigger=null)},CommandStack.prototype._markDirty=function(e){let t=this._currentExecution;e&&(e=ee(e)?e:[e],t.dirty=t.dirty.concat(e))},CommandStack.prototype._executedAction=function(e,t){let r=++this._stackIdx;t||this._stack.splice(r,this._stack.length,e)},CommandStack.prototype._revertedAction=function(e){this._stackIdx--},CommandStack.prototype._getHandler=function(e){return this._handlerMap[e]},CommandStack.prototype._setHandler=function(e,t){if(!e||!t)throw Error(`command and handler required`);if(this._handlerMap[e])throw Error(`overriding handler for command <`+e+`>`);this._handlerMap[e]=t};var Si={commandStack:[`type`,CommandStack]},Ci=1e3;function CommandInterceptor(e){this._eventBus=e}CommandInterceptor.$inject=[`eventBus`];function unwrapEvent(e,t){return function(r){return e.call(t||null,r.context,r.command,r)}}CommandInterceptor.prototype.on=function(e,t,r,i,a,o){if((I(t)||Le(t))&&(o=a,a=i,i=r,r=t,t=null),I(r)&&(o=a,a=i,i=r,r=Ci),z(a)&&(o=a,a=!1),!I(i))throw Error(`handlerFn must be a function`);ee(e)||(e=[e]);var s=this._eventBus;Me(e,function(e){var c=[`commandStack`,e,t].filter(function(e){return e}).join(`.`);s.on(c,r,a?unwrapEvent(i,o):i,o)})},CommandInterceptor.prototype.canExecute=createHook(`canExecute`),CommandInterceptor.prototype.preExecute=createHook(`preExecute`),CommandInterceptor.prototype.preExecuted=createHook(`preExecuted`),CommandInterceptor.prototype.execute=createHook(`execute`),CommandInterceptor.prototype.executed=createHook(`executed`),CommandInterceptor.prototype.postExecute=createHook(`postExecute`),CommandInterceptor.prototype.postExecuted=createHook(`postExecuted`),CommandInterceptor.prototype.revert=createHook(`revert`),CommandInterceptor.prototype.reverted=createHook(`reverted`);function createHook(e){let hookFn=function(t,r,i,a,o){(I(t)||Le(t))&&(o=a,a=i,i=r,r=t,t=null),this.on(t,e,r,i,a,o)};return hookFn}var IdBehavior=class extends CommandInterceptor{constructor(e,t){super(e),this.preExecute(`formField.remove`,function(e){let{formField:r}=e,{id:i}=r;t.unclaimId(r,i)},!0),this.preExecute(`formField.edit`,function(e){let{formField:r,properties:i}=e;`id`in i&&(t.unclaimId(r,r.id),t.claimId(r,i.id))},!0)}};IdBehavior.$inject=[`eventBus`,`modeling`];var KeyBehavior=class extends CommandInterceptor{constructor(e,t,r){super(e),this.preExecute(`formField.remove`,function(e){let{formField:i}=e,{key:a,type:o}=i,{config:s}=r.get(o);s.keyed&&t.unclaimKey(i,a)},!0),this.preExecute(`formField.edit`,function(e){let{formField:i,properties:a}=e,{key:o,type:s}=i,{config:c}=r.get(s);c.keyed&&`key`in a&&(t.unclaimKey(i,o),t.claimKey(i,a.key))},!0)}};KeyBehavior.$inject=[`eventBus`,`modeling`,`formFields`];var PathBehavior=class extends CommandInterceptor{constructor(e,t,r){super(e),this.preExecute(`formField.remove`,function(e){let{formField:i}=e,{path:a,type:o}=i,{config:s}=r.get(o);s.pathed&&t.unclaimPath(i,a)},!0),this.preExecute(`formField.edit`,function(e){let{formField:i,properties:a}=e,{path:o,type:s}=i,{config:c}=r.get(s);c.pathed&&`path`in a&&(t.unclaimPath(i,o),t.claimPath(i,a.path))},!0)}};PathBehavior.$inject=[`eventBus`,`modeling`,`formFields`];var ValidateBehavior=class extends CommandInterceptor{constructor(e){super(e),this.preExecute(`formField.edit`,function(e){let{properties:t}=e,{validate:r={}}=t;if(r.validationType){let e={...r};delete e.minLength,delete e.maxLength,delete e.pattern,t.validate=e}},!0)}};ValidateBehavior.$inject=[`eventBus`];var OptionsSourceBehavior=class extends CommandInterceptor{constructor(e){super(e),this.preExecute(`formField.edit`,function(e){let{properties:t}=e,r={};isValuesSourceUpdate(t)&&(Object.values(Wt).forEach(e=>{let i=Gt[e];B(t,i)??(r[Gt[e]]=void 0)}),(B(t,Gt[Wt.EXPRESSION])!==void 0||B(t,Gt[Wt.INPUT])!==void 0)&&(r.defaultValue=void 0),e.properties={...t,...r})},!0)}};OptionsSourceBehavior.$inject=[`eventBus`];function isValuesSourceUpdate(e){return Object.values(Gt).some(t=>B(e,t)!==void 0)}var wi={columns:`columns`,columnsExpression:`columnsExpression`},ColumnsSourceBehavior=class extends CommandInterceptor{constructor(e){super(e),this.preExecute(`formField.edit`,function(e){let{properties:t,oldProperties:r}=e;if(!Object.values(wi).some(e=>B(t,[e])!==void 0))return;let i=B(t,[wi.columns]),a=B(r,[wi.columns]),o=B(t,[wi.columnsExpression]),s=B(r,[wi.columnsExpression]);ee(i)&&!X(a)?e.properties={...t,columnsExpression:void 0}:Fe(o)&&!Fe(s)&&(e.properties={...t,columns:void 0})},!0)}};ColumnsSourceBehavior.$inject=[`eventBus`];var TableDataSourceBehavior=class extends CommandInterceptor{constructor(e){super(e),this.preExecute(`formField.add`,function(e){let{formField:t}=e;B(t,[`type`])===`table`&&(e.formField={...t,dataSource:`=${t.id}`})},!0)}};TableDataSourceBehavior.$inject=[`eventBus`];var Ti={__init__:[`idBehavior`,`keyBehavior`,`pathBehavior`,`validateBehavior`,`optionsSourceBehavior`,`columnsSourceBehavior`,`tableDataSourceBehavior`],idBehavior:[`type`,IdBehavior],keyBehavior:[`type`,KeyBehavior],pathBehavior:[`type`,PathBehavior],validateBehavior:[`type`,ValidateBehavior],optionsSourceBehavior:[`type`,OptionsSourceBehavior],columnsSourceBehavior:[`type`,ColumnsSourceBehavior],tableDataSourceBehavior:[`type`,TableDataSourceBehavior]};function arrayAdd$1(e,t,r){return e.splice(t,0,r),e}function arrayRemove(e,t){return e.splice(t,1),e}function updatePath(e,t,r){return refreshPathsRecursively(t,[...e.get(t._parent)._path,`components`,r]),t}function refreshPathsRecursively(e,t){e._path=t,(e.components||[]).forEach((e,r)=>{refreshPathsRecursively(e,[...t,`components`,r])})}function updateRow(e,t){return e.layout={...e.layout||{},row:t},e}var FormLayoutUpdater=class extends CommandInterceptor{constructor(e,t,r,i){super(e),this._eventBus=e,this._formLayouter=t,this._modeling=r,this._formEditor=i,this.preExecute([`formField.add`,`formField.remove`,`formField.move`,`id.updateClaim`],e=>this.updateRowIds(e)),e.on(`changed`,e=>{let{schema:t}=e;this.updateLayout(t)})}updateLayout(e){this._formLayouter.clear(),this._formLayouter.calculateLayout(Rt(e))}updateRowIds(e){let{schema:t}=this._formEditor._getState(),setRowIds=e=>{e.components&&e.components.length&&e.components.forEach(e=>{updateRow(e,this._formLayouter.getRowForField(e).id),setRowIds(e)})};setRowIds(t)}};FormLayoutUpdater.$inject=[`eventBus`,`formLayouter`,`modeling`,`formEditor`];var AddFormFieldHandler=class{constructor(e,t){this._formEditor=e,this._formFieldRegistry=t}execute(e){let{formField:t,targetFormField:r,targetIndex:i}=e,{schema:a}=this._formEditor._getState(),o=[...r._path,`components`];t._parent=r.id,arrayAdd$1(B(a,o),i,t),B(a,o).forEach((e,t)=>updatePath(this._formFieldRegistry,e,t)),this._formFieldRegistry.add(t),this._formEditor._setState({schema:a})}revert(e){let{formField:t,targetFormField:r,targetIndex:i}=e,{schema:a}=this._formEditor._getState(),o=[...r._path,`components`];arrayRemove(B(a,o),i),B(a,o).forEach((e,t)=>updatePath(this._formFieldRegistry,e,t)),this._formFieldRegistry.remove(t),this._formEditor._setState({schema:a})}};AddFormFieldHandler.$inject=[`formEditor`,`formFieldRegistry`];var EditFormFieldHandler=class{constructor(e,t){this._formEditor=e,this._formFieldRegistry=t}execute(e){let{formField:t,properties:r}=e,{schema:i}=this._formEditor._getState(),a={};for(let e in r){a[e]=t[e];let i=r[e];e===`id`?i!==t.id&&this._formFieldRegistry.updateId(t,i):t[e]=i}return e.oldProperties=a,this._formEditor._setState({schema:i}),t}revert(e){let{formField:t,oldProperties:r}=e,{schema:i}=this._formEditor._getState();for(let e in r){let i=r[e];e===`id`?i!==t.id&&this._formFieldRegistry.updateId(t,i):t[e]=i}return this._formEditor._setState({schema:i}),t}};EditFormFieldHandler.$inject=[`formEditor`,`formFieldRegistry`];var MoveFormFieldHandler=class{constructor(e,t,r,i){this._formEditor=e,this._formFieldRegistry=t,this._pathRegistry=r,this._formLayouter=i}execute(e){this.moveFormField(e)}revert(e){let{sourceFormField:t,targetFormField:r,sourceIndex:i,targetIndex:a,sourceRow:o,targetRow:s}=e;this.moveFormField({sourceFormField:r,targetFormField:t,sourceIndex:a,targetIndex:i,sourceRow:s,targetRow:o},!0)}moveFormField(e,t){let{sourceFormField:r,targetFormField:i,sourceIndex:a,targetIndex:o,targetRow:s}=e,{schema:c}=this._formEditor._getState(),l=[...r._path,`components`];if(r.id===i.id)t?a>o&&a--:a<o&&o--,updateRow(B(c,[...l,a]),s?s.id:this._formLayouter.nextRowId()),St(B(c,l),a,o),B(c,l).forEach((e,t)=>updatePath(this._formFieldRegistry,e,t));else{let e=B(c,[...l,a]);this._pathRegistry.executeRecursivelyOnFields(e,({field:e})=>{this._pathRegistry.unclaimPath(this._pathRegistry.getValuePath(e))}),e._parent=i.id,arrayRemove(B(c,l),a),B(c,l).forEach((e,t)=>updatePath(this._formFieldRegistry,e,t));let t=[...i._path,`components`];updateRow(e,s?s.id:this._formLayouter.nextRowId()),arrayAdd$1(B(c,t),o,e),B(c,t).forEach((e,t)=>updatePath(this._formFieldRegistry,e,t)),this._pathRegistry.executeRecursivelyOnFields(e,({field:e,isClosed:t,isRepeatable:r})=>{this._pathRegistry.claimPath(this._pathRegistry.getValuePath(e),{isClosed:t,isRepeatable:r,claimerId:e.id})})}this._formEditor._setState({schema:c})}};MoveFormFieldHandler.$inject=[`formEditor`,`formFieldRegistry`,`pathRegistry`,`formLayouter`];var RemoveFormFieldHandler=class{constructor(e,t){this._formEditor=e,this._formFieldRegistry=t}execute(e){let{sourceFormField:t,sourceIndex:r}=e,{schema:i}=this._formEditor._getState(),a=[...t._path,`components`],o=e.formField=B(i,[...a,r]);arrayRemove(B(i,a),r),B(i,a).forEach((e,t)=>updatePath(this._formFieldRegistry,e,t)),Pt(o,e=>this._formFieldRegistry.remove(e)),this._formEditor._setState({schema:i})}revert(e){let{formField:t,sourceFormField:r,sourceIndex:i}=e,{schema:a}=this._formEditor._getState(),o=[...r._path,`components`];arrayAdd$1(B(a,o),i,t),B(a,o).forEach((e,t)=>updatePath(this._formFieldRegistry,e,t)),Pt(t,e=>this._formFieldRegistry.add(e)),this._formEditor._setState({schema:a})}};RemoveFormFieldHandler.$inject=[`formEditor`,`formFieldRegistry`];var UpdateIdClaimHandler=class{constructor(e){this._formFieldRegistry=e}execute(e){let{claiming:t,formField:r,id:i}=e;t?this._formFieldRegistry._ids.claim(i,r):this._formFieldRegistry._ids.unclaim(i)}revert(e){let{claiming:t,formField:r,id:i}=e;t?this._formFieldRegistry._ids.unclaim(i):this._formFieldRegistry._ids.claim(i,r)}};UpdateIdClaimHandler.$inject=[`formFieldRegistry`];var UpdateKeyClaimHandler=class{constructor(e){this._pathRegistry=e}execute(e){let{claiming:t,formField:r,key:i}=e,a={replacements:{[r.id]:i}},o=this._pathRegistry.getValuePath(r,a);t?this._pathRegistry.claimPath(o,{isClosed:!0,claimerId:r.id}):this._pathRegistry.unclaimPath(o),e.valuePath=o}revert(e){let{claiming:t,formField:r,valuePath:i}=e;t?this._pathRegistry.unclaimPath(i):this._pathRegistry.claimPath(i,{isClosed:!0,claimerId:r.id})}};UpdateKeyClaimHandler.$inject=[`pathRegistry`];var UpdatePathClaimHandler=class{constructor(e){this._pathRegistry=e}execute(e){let{claiming:t,formField:r,path:i}=e,a={replacements:{[r.id]:i}},o=[];t?this._pathRegistry.executeRecursivelyOnFields(r,({field:e,isClosed:t,isRepeatable:r})=>{let i=this._pathRegistry.getValuePath(e,a);o.push({valuePath:i,isClosed:t,isRepeatable:r,claimerId:e.id}),this._pathRegistry.claimPath(i,{isClosed:t,isRepeatable:r,claimerId:e.id})}):this._pathRegistry.executeRecursivelyOnFields(r,({field:e,isClosed:t,isRepeatable:r})=>{let i=this._pathRegistry.getValuePath(e,a);o.push({valuePath:i,isClosed:t,isRepeatable:r,claimerId:e.id}),this._pathRegistry.unclaimPath(i)}),e.valuePaths=o}revert(e){let{claiming:t,valuePaths:r}=e;t?r.forEach(({valuePath:e})=>{this._pathRegistry.unclaimPath(e)}):r.forEach(({valuePath:e,isClosed:t,isRepeatable:r,claimerId:i})=>{this._pathRegistry.claimPath(e,{isClosed:t,isRepeatable:r,claimerId:i})})}};UpdatePathClaimHandler.$inject=[`pathRegistry`];var Modeling=class{constructor(e,t,r,i,a){this._commandStack=e,this._formEditor=r,this._formFieldRegistry=i,this._fieldFactory=a,t.on(`form.init`,()=>{this.registerHandlers()})}registerHandlers(){Object.entries(this.getHandlers()).forEach(([e,t])=>{this._commandStack.registerHandler(e,t)})}getHandlers(){return{"formField.add":AddFormFieldHandler,"formField.edit":EditFormFieldHandler,"formField.move":MoveFormFieldHandler,"formField.remove":RemoveFormFieldHandler,"id.updateClaim":UpdateIdClaimHandler,"key.updateClaim":UpdateKeyClaimHandler,"path.updateClaim":UpdatePathClaimHandler}}addFormField(e,t,r){let i=this._fieldFactory.create(e),a={formField:i,targetFormField:t,targetIndex:r};return this._commandStack.execute(`formField.add`,a),i}editFormField(e,t,r){z(t)||(t={[t]:r});let i={formField:e,properties:t};this._commandStack.execute(`formField.edit`,i)}moveFormField(e,t,r,i,a,o,s){let c={formField:e,sourceFormField:t,targetFormField:r,sourceIndex:i,targetIndex:a,sourceRow:o,targetRow:s};this._commandStack.execute(`formField.move`,c)}removeFormField(e,t,r){let i={formField:e,sourceFormField:t,sourceIndex:r};this._commandStack.execute(`formField.remove`,i)}claimId(e,t){let r={formField:e,id:t,claiming:!0};this._commandStack.execute(`id.updateClaim`,r)}unclaimId(e,t){let r={formField:e,id:t,claiming:!1};this._commandStack.execute(`id.updateClaim`,r)}claimKey(e,t){let r={formField:e,key:t,claiming:!0};this._commandStack.execute(`key.updateClaim`,r)}unclaimKey(e,t){let r={formField:e,key:t,claiming:!1};this._commandStack.execute(`key.updateClaim`,r)}claimPath(e,t){let r={formField:e,path:t,claiming:!0};this._commandStack.execute(`path.updateClaim`,r)}unclaimPath(e,t){let r={formField:e,path:t,claiming:!1};this._commandStack.execute(`path.updateClaim`,r)}};Modeling.$inject=[`commandStack`,`eventBus`,`formEditor`,`formFieldRegistry`,`fieldFactory`];var Ei={__depends__:[Ti,Si],__init__:[`formLayoutUpdater`,`modeling`],formLayoutUpdater:[`type`,FormLayoutUpdater],modeling:[`type`,Modeling]},Selection=class{constructor(e){this._eventBus=e,this._selection=null}get(){return this._selection}set(e){this._selection!==e&&(this._selection=e,this._eventBus.fire(`selection.changed`,{selection:this._selection}))}toggle(e){let t=this._selection===e?null:e;this.set(t)}clear(){this.set(null)}isSelected(e){return this._selection===e}};Selection.$inject=[`eventBus`];var SelectionBehavior=class{constructor(e,t){e.on([`commandStack.formField.add.postExecuted`,`commandStack.formField.move.postExecuted`],({context:e})=>{let{formField:r}=e;t.set(r)}),e.on(`commandStack.formField.remove.postExecuted`,({context:e})=>{let{sourceFormField:r,sourceIndex:i}=e,a=r.components[i]||r.components[i-1];a?t.set(a):t.clear()}),e.on(`formField.remove`,({formField:e})=>{t.isSelected(e)&&t.clear()})}};SelectionBehavior.$inject=[`eventBus`,`selection`];var Di={__init__:[`selection`,`selectionBehavior`],selection:[`type`,Selection],selectionBehavior:[`type`,SelectionBehavior]},SectionModuleBase=class{constructor(e,t){this._eventBus=e,this._sectionKey=t,this._eventBus.on(`${this._sectionKey}.section.rendered`,()=>{this.isSectionRendered=!0}),this._eventBus.on(`${this._sectionKey}.section.destroyed`,()=>{this.isSectionRendered=!1})}attachTo(e){this._onceSectionRendered(()=>this._eventBus.fire(`${this._sectionKey}.attach`,{container:e}))}detach(){this._onceSectionRendered(()=>this._eventBus.fire(`${this._sectionKey}.detach`))}reset(){this._onceSectionRendered(()=>this._eventBus.fire(`${this._sectionKey}.reset`))}_onceSectionRendered(e){this.isSectionRendered?e():this._eventBus.once(`${this._sectionKey}.section.rendered`,e)}},PaletteRenderer=class extends SectionModuleBase{constructor(e){super(e,`palette`)}};PaletteRenderer.$inject=[`eventBus`];var Oi={__init__:[`palette`],palette:[`type`,PaletteRenderer]},ki=1e3,PropertiesPanelRenderer=class extends SectionModuleBase{constructor(e){super(e,`propertiesPanel`)}registerProvider(e,t){t||=ki,typeof e.getGroups==`function`?(this._eventBus.on(`propertiesPanel.getProviders`,t,function(t){t.providers.push(e)}),this._eventBus.fire(`propertiesPanel.providersChanged`)):console.error(`Properties provider does not implement #getGroups(element) API`)}getProviders(){let e=this._eventBus.createEvent({type:`propertiesPanel.getProviders`,providers:[]});return this._eventBus.fire(e),e.providers}_getProviders(){return this.getProviders()}_destroy(){this._eventBus.fire(`propertiesPanel.destroyed`)}};PropertiesPanelRenderer.$inject=[`eventBus`];function ActionEntry(e){let{editField:t,field:r}=e,i=[];return i.push({id:`action`,component:Action,editField:t,field:r,isEdited:isEdited$3,isDefaultVisible:e=>e.type===`button`}),i}function Action(e){let{editField:t,field:r,id:i}=e,a=[`action`],o=useService(`translate`),getValue=()=>B(r,a,``),setValue=e=>t(r,a,e),getOptions=()=>[{label:o(`Submit`),value:`submit`},{label:o(`Reset`),value:`reset`}];return SelectEntry({element:r,getOptions,getValue,id:i,label:o(`Action`),setValue})}function AltTextEntry(e){let{editField:t,field:r}=e,i=[];return i.push({id:`alt`,component:AltText,editField:t,field:r,isEdited:isEdited$5,isDefaultVisible:e=>[`image`].includes(e.type)}),i}function AltText(e){let{editField:t,field:r,id:i}=e,a=useService(`debounce`),o=useService(`translate`),s=useVariables().map(e=>({name:e})),c=[`alt`],getValue=()=>B(r,c,``),setValue=e=>t(r,c,e);return FeelTemplatingEntry({debounce:a,element:r,feel:`optional`,getValue,id:i,label:o(`Alternative text`),tooltip:o(`Descriptive text for screen reader accessibility.`),setValue,singleLine:!0,variables:s})}var Ai=``;function ColumnsEntry(e){let{editField:t,field:r}=e;return[{id:`columns`,component:Columns,field:r,editField:t,isEdited:isEdited$3}]}function Columns(e){let{field:t,editField:r,id:a}=e;useService(`debounce`);let o=useService(`translate`),s=useService(`formLayoutValidator`),c=i(e=>s.validateField(t,e?parseInt(e):null),[t,s]),setValue=(e,i)=>{if(i)return;let a=B(t,[`layout`],{});r(t,[`layout`],E(a,[`columns`],e?parseInt(e):null))},getValue=()=>B(t,[`layout`,`columns`]),getOptions=()=>[{label:o(`Auto`),value:Ai},...asArray(16).filter(e=>e>=Hn).map(asOption)];return SelectEntry({element:t,id:a,label:o(`Columns`),getOptions,getValue,setValue,validate:c})}function asOption(e){return{value:e,label:e.toString()}}function asArray(e){return Array.from({length:e}).map((e,t)=>t+1)}function arrayAdd(e,t,r){let i=[...e];return i.splice(t,0,r),i}function countDecimals(e){let t=fn(e);return t.toString()===t.toFixed(0)?0:t.toFixed().split(`.`)[1].length||0}function isValidNumber(e){return(typeof e==`number`||typeof e==`string`)&&e!==``&&!isNaN(Number(e))}function isValidDotPath(e){return/^\w+(\.\w+)*$/.test(e)}function isProhibitedPath(e){let t=[`__proto__`,`prototype`,`constructor`];return e.split(`.`).some(e=>t.includes(e))}var ji=[`button`,`group`,`dynamiclist`,`iframe`,`table`,`documentPreview`],Mi=[`checkbox`,`checklist`,`datetime`,`number`,`radio`,`select`,`taglist`,`textfield`,`textarea`,`filepicker`],Ni=[`checklist`,`radio`,`select`,`taglist`];function hasEntryConfigured(e,t){let{propertiesPanelEntries:r=[]}=e;return r.length?r.some(e=>e===t):!1}function hasOptionsGroupsConfigured(e){let{propertiesPanelEntries:t=[]}=e;return t.length?t.some(e=>e===`values`):!1}function hasIntegerPathSegment(e){return e.split(`.`).some(e=>/^\d+$/.test(e))}function isEditedFromDefaultFactory(e,t=!0){return r=>{if(!r)return!1;let i=r.querySelector(`.cm-content`),a=i?i.innerText:r.value;return t&&!a?!1:a!==e}}function isTrueDefaultToggleSwitchEntryEdited(e){return e&&!e.checked}function DescriptionEntry(e){let{editField:t,field:r}=e,i=[];return i.push({id:`description`,component:Description,editField:t,field:r,isEdited:isEdited$5,isDefaultVisible:e=>e.type!==`filepicker`&&Mi.includes(e.type)}),i}function Description(e){let{editField:t,field:r,id:i}=e,a=useService(`debounce`),o=useService(`translate`),s=useVariables().map(e=>({name:e})),c=[`description`],getValue=()=>B(r,c,``),setValue=e=>t(r,c,e);return FeelTemplatingEntry({debounce:a,element:r,getValue,id:i,label:o(`Field description`),singleLine:!0,setValue,variables:s})}var Pi=``;function DefaultValueEntry(e){let{editField:t,field:r,getService:i}=e,a=i(`translate`),{type:o}=r,s=[];function isDefaultVisible(e){return t=>!Mi.includes(o)||Ni.includes(o)&&!t.values?!1:e(t)}let c={editField:t,field:r,id:`defaultValue`,label:a(`Default value`)};return s.push({...c,component:DefaultValueCheckbox,isEdited:isEdited$3,isDefaultVisible:isDefaultVisible(e=>e.type===`checkbox`)}),s.push({...c,component:DefaultValueNumber,isEdited,isDefaultVisible:isDefaultVisible(e=>e.type===`number`)}),s.push({...c,component:DefaultValueSingleSelect,isEdited:isEdited$3,isDefaultVisible:isDefaultVisible(e=>e.type===`radio`||e.type===`select`)}),s.push({...c,component:DefaultValueTextfield,isEdited,isDefaultVisible:isDefaultVisible(e=>e.type===`textfield`)}),s.push({...c,component:DefaultValueTextarea,isEdited:isEdited$1,isDefaultVisible:isDefaultVisible(e=>e.type===`textarea`)}),s}function DefaultValueCheckbox(e){let{editField:t,field:r,id:i,label:a}=e,o=useService(`translate`),{defaultValue:s}=r,c=[`defaultValue`],getOptions=()=>[{label:o(`Checked`),value:`true`},{label:o(`Not checked`),value:`false`}],setValue=e=>t(r,c,parseStringToBoolean(e)),getValue=()=>parseBooleanToString(s);return SelectEntry({element:r,getOptions,getValue,id:i,label:a,setValue})}function DefaultValueNumber(e){let{editField:t,field:r,id:a,label:o}=e,{decimalDigits:s,serializeToString:c=!1}=r,l=useService(`debounce`),u=useService(`translate`),d=[`defaultValue`],getValue=e=>{let t=B(r,d);if(isValidNumber(t))return c?fn(t).toFixed():t},setValue=(e,i)=>{if(i)return;let a;return isValidNumber(e)&&(a=c?e:Number(e)),t(r,d,a)},f=s||s===0;return TextfieldEntry({debounce:l,label:o,element:r,getValue,id:a,setValue,validate:i(e=>{if(e!=null){if(!isValidNumber(e))return u(`Should be a valid number.`);if(f&&countDecimals(e)>s)return u(`Should not contain more than {value} decimal digits.`,{value:s.toString()})}},[f,s,u])})}function DefaultValueSingleSelect(e){let{editField:t,field:r,id:i,label:a}=e,{defaultValue:o=Pi,values:s=[]}=r,c=useService(`translate`),l=[`defaultValue`],getOptions=()=>[{label:c(`<none>`),value:Pi},...s],setValue=e=>t(r,l,e.length?e:void 0),getValue=()=>o;return SelectEntry({element:r,getOptions,getValue,id:i,label:a,setValue})}function DefaultValueTextfield(e){let{editField:t,field:r,id:i,label:a}=e,o=useService(`debounce`),s=[`defaultValue`],getValue=()=>B(r,s,``),setValue=e=>t(r,s,e);return TextfieldEntry({debounce:o,element:r,getValue,id:i,label:a,setValue})}function DefaultValueTextarea(e){let{editField:t,field:r,id:i,label:a}=e,o=useService(`debounce`),s=[`defaultValue`],getValue=()=>B(r,s,``),setValue=e=>t(r,s,e);return TextAreaEntry({debounce:o,element:r,getValue,id:i,label:a,setValue})}function parseStringToBoolean(e){return e===`true`}function parseBooleanToString(e){return e===!0?`true`:`false`}function DisabledEntry(e){let{editField:t,field:r,getService:i}=e,a=[],o=i(`translate`);return a.push({id:`disabled`,component:Disabled,editField:t,field:r,isEdited:isEdited$7,isDefaultVisible:e=>Mi.includes(e.type),translate:o}),a}function Disabled(e){let{editField:t,field:r,id:i,translate:a}=e,o=[`disabled`],getValue=()=>B(r,o,``),setValue=e=>t(r,o,e);return ToggleSwitchEntry({element:r,getValue,id:i,label:a(`Disabled`),tooltip:a(`Disable this field when it should not be interactive for end-users. Its data will not be submitted. This setting takes precedence over read-only.`),inline:!0,setValue})}function IdEntry(e){let{editField:t,field:r}=e,i=[];return i.push({id:`id`,component:Id,editField:t,field:r,isEdited,isDefaultVisible:e=>e.type==="default"}),i}function Id(e){let{editField:t,field:r,id:a}=e,o=useService(`formFieldRegistry`),s=useService(`debounce`),c=useService(`translate`),l=[`id`],getValue=()=>B(r,l,``),setValue=(e,i)=>{if(!i)return t(r,l,e)},u=i(e=>{if(typeof e!=`string`||e.length===0)return c(`Must not be empty.`);let t=o._ids.assigned(e);return t&&t!==r?c(`Must be unique.`):validateId(e,c)||null},[o,r,c]);return TextfieldEntry({debounce:s,element:r,getValue,id:a,label:c(`ID`),setValue,validate:u})}var Fi=/\s/,Ii=/^([a-z][\w-.]*:)?[a-z_][\w-.]*$/i,Li=/^[a-z_][\w-.]*$/i;function validateId(e,t){if(containsSpace(e))return t(`Must not contain spaces.`);if(!Li.test(e))return Ii.test(e)?t(`Must not contain prefix.`):t(`Must be a valid QName.`)}function containsSpace(e){return Fi.test(e)}function KeyEntry(e){let{editField:t,field:r,getService:i}=e,a=[];return a.push({id:`key`,component:Key$2,editField:t,field:r,isEdited,isDefaultVisible:e=>{let{config:t}=i(`formFields`).get(e.type);return t.keyed}}),a}function Key$2(e){let{editField:t,field:r,id:a}=e,o=useService(`pathRegistry`),s=useService(`debounce`),c=useService(`translate`),l=[`key`],getValue=()=>B(r,l,``),setValue=(e,i)=>{if(!i)return t(r,l,e)},u=i(e=>{if(e===r.key)return null;if(!Fe(e)||e.length===0)return c(`Must not be empty.`);if(!isValidDotPath(e))return c(`Must be a variable or a dot separated path.`);if(hasIntegerPathSegment(e))return c(`Must not contain numerical path segments.`);if(isProhibitedPath(e))return c(`Must not be a prohibited path.`);let t={[r.id]:e.split(`.`)},i=o.getValuePath(r),a=o.getValuePath(r,{replacements:t});o.unclaimPath(i);let s=o.canClaimPath(a,{isClosed:!0,claimerId:r.id});return o.claimPath(i,{isClosed:!0,claimerId:r.id}),s?null:c(`Must not conflict with other key/path assignments.`)},[r,o,c]);return TextfieldEntry({debounce:s,description:c(`Binds to a form variable`),element:r,getValue,id:a,label:c(`Key`),tooltip:c(`Use a unique "key" to link the form element and the related input/output data. When dealing with nested data, break it down in the user task's input mapping before using it.`),setValue,validate:u})}function PathEntry(e){let{editField:t,field:r,getService:i}=e,{type:a}=r,o=[],s=i(`formFields`).get(a);return s&&s.config.pathed&&o.push({id:`path`,component:Path,editField:t,field:r,isEdited}),o}function Path(e){let{editField:t,field:r,id:a}=e,o=useService(`debounce`),s=useService(`pathRegistry`),c=useService(`formFields`).get(r.type).config.repeatable&&r.isRepeating,l=[`path`],u=useService(`translate`),getValue=()=>B(r,l,``),setValue=(e,i)=>{if(!i)return t(r,l,e)},d=i(e=>{if(!e&&c)return u(`Must not be empty`);if(!e&&!c||e===r.path)return null;if(!isValidDotPath(e))return u(c?`Must be a variable or a dot-separated path.`:`Must be empty, a variable or a dot-separated path.`);if(hasIntegerPathSegment(e))return u(`Must not contain numerical path segments.`);if(isProhibitedPath(e))return u(`Must not be a prohibited path.`);let t={replacements:{[r.id]:e.split(`.`)}};return s.executeRecursivelyOnFields(r,({field:e,isClosed:r,isRepeatable:i})=>{let a=s.getValuePath(e,t);return s.canClaimPath(a,{isClosed:r,isRepeatable:i,claimerId:e.id})})?null:u(`Must not cause two binding paths to collide`)},[r,c,s,u]),f=u(c?`Routes the children of this component into a form variable, may be left empty to route at the root level.`:`Routes the children of this component into a form variable.`);return TextfieldEntry({debounce:o,description:u(`Where the child variables of this component are pathed to.`),element:r,getValue,id:a,label:u(`Path`),tooltip:f,setValue,validate:d})}function simpleBoolEntryFactory(e){let{id:t,label:r,description:i,path:a,props:o,getValue:s,setValue:c,isDefaultVisible:l,isTrueDefault:u=!1}=e,{editField:d,field:f}=o;return{id:t,label:r,path:a,field:f,editField:d,description:i,component:SimpleBoolComponent,isEdited:u?isTrueDefaultToggleSwitchEntryEdited:isEdited$7,isDefaultVisible:l,getValue:s,setValue:c}}var SimpleBoolComponent=e=>{let{id:t,label:r,path:i,field:a,editField:o,getValue=()=>B(a,i,``),setValue=e=>o(a,i,e||!1),description:s}=e;return ToggleSwitchEntry({element:a,getValue,id:t,label:r,setValue,inline:!0,description:s})};function simpleSelectEntryFactory(e){let{id:t,label:r,path:i,props:a,optionsArray:o}=e,{editField:s,field:c}=a;return{id:t,label:r,path:i,field:c,editField:s,optionsArray:o,component:SimpleSelectComponent,isEdited:isEdited$3}}var SimpleSelectComponent=e=>{let{id:t,label:r,path:i,field:a,editField:o,optionsArray:s}=e,getValue=()=>B(a,i,``),setValue=e=>o(a,i,e),getOptions=()=>s;return SelectEntry({label:r,element:a,getOptions,getValue,id:t,setValue})};function simpleRangeIntegerEntryFactory(e){let{id:t,label:r,path:i,props:a,min:o,max:s}=e,{editField:c,field:l}=a;return{id:t,label:r,path:i,field:l,editField:c,min:o,max:s,component:SimpleRangeIntegerEntry,isEdited}}var SimpleRangeIntegerEntry=e=>{let{id:t,label:r,path:a,field:o,editField:s,min:c=-(2**53-1),max:l=2**53-1}=e,u=useService(`debounce`),d=useService(`translate`),getValue=()=>{let e=B(o,a);return isValidNumber(e)&&Number.isInteger(e)?e:null},setValue=(e,t)=>{t||s(o,a,Number(e))};return TextfieldEntry({debounce:u,label:r,element:o,getValue,id:t,setValue,validate:i(e=>{if(e!=null&&e!==``){if(!Number.isInteger(Number(e)))return d(`Should be an integer.`);if(fn(e).cmp(c)<0)return d(`Should be at least {value}.`,{value:c.toString()});if(fn(e).cmp(l)>0)return d(`Should be at most {value}.`,{value:l.toString()})}},[c,l,d])})};function GroupAppearanceEntry(e){let{field:t,translate:r}=e,{type:i}=t;return[`group`,`dynamiclist`].includes(i)?[simpleBoolEntryFactory({id:`showOutline`,path:[`showOutline`],label:r(`Show outline`),isTrueDefault:!0,props:e})]:[]}function LabelEntry(e){let{field:t,editField:r}=e,i=[];i.push({id:`date-label`,component:DateLabel,editField:r,field:t,isEdited:isEdited$5,isDefaultVisible:function(e){return e.type===`datetime`&&(e.subtype===hn.DATE||e.subtype===hn.DATETIME)}}),i.push({id:`time-label`,component:TimeLabel,editField:r,field:t,isEdited:isEdited$5,isDefaultVisible:function(e){return e.type===`datetime`&&(e.subtype===hn.TIME||e.subtype===hn.DATETIME)}});let isSimplyLabeled=e=>[...Mi.filter(e=>e!==`datetime`),...ji].includes(e.type);return i.push({id:`label`,component:Label$2,editField:r,field:t,isEdited:isEdited$5,isDefaultVisible:isSimplyLabeled}),i}function Label$2(e){let{editField:t,field:r,id:i}=e,a=useService(`debounce`),o=useService(`translate`),s=useVariables().map(e=>({name:e})),c=[`label`],getValue=()=>B(r,c,``),setValue=e=>t(r,c,e||``);return FeelTemplatingEntry({debounce:a,element:r,getValue,id:i,label:o(getLabelText(r.type)),singleLine:!0,setValue,variables:s})}function DateLabel(e){let{editField:t,field:r,id:i}=e,a=useService(`debounce`),o=useService(`translate`),s=useVariables().map(e=>({name:e})),c=Xt,getValue=()=>B(r,c,``),setValue=e=>t(r,c,e||``);return FeelTemplatingEntry({debounce:a,element:r,getValue,id:i,label:o(`Date label`),singleLine:!0,setValue,variables:s})}function TimeLabel(e){let{editField:t,field:r,id:i}=e,a=useService(`debounce`),o=useService(`translate`),s=useVariables().map(e=>({name:e})),c=Ot,getValue=()=>B(r,c,``),setValue=e=>t(r,c,e||``);return FeelTemplatingEntry({debounce:a,element:r,getValue,id:i,label:o(`Time label`),singleLine:!0,setValue,variables:s})}function getLabelText(e){switch(e){case`group`:case`dynamiclist`:return`Group label`;case`table`:return`Table label`;case`iframe`:case`documentPreview`:return`Title`;default:return`Field label`}}function HeightEntry(e){let{editField:t,field:r,id:i,description:a,isDefaultVisible:o,defaultValue:s}=e,c=[];return c.push({id:i+`-height`,component:Height,description:a,isEdited:isEdited$6,editField:t,field:r,defaultValue:s,isDefaultVisible:e=>I(o)?o(e):e.type===`spacer`}),c}function Height(e){let{description:t,editField:r,field:a,id:o}=e,s=useService(`debounce`),c=useService(`translate`),getValue=e=>B(a,[`height`],null),setValue=(e,t)=>{t||r(a,[`height`],e)};return NumberFieldEntry({debounce:s,description:t,label:c(`Height`),element:a,id:o,getValue,setValue,validate:i(e=>validate$9(e,c),[c])})}var validate$9=(e,t)=>{if(typeof e!=`number`)return t(`A number is required.`);if(!Number.isInteger(e))return t(`Should be an integer.`);if(e<1)return t(`Should be greater than zero.`)};function IFrameHeightEntry(e){let t=e.getService(`translate`);return[...HeightEntry({...e,description:t(`Height of the container in pixels.`),isDefaultVisible:e=>e.type===`iframe`})]}var Ri=/^(https):\/\/*/i;function IFrameUrlEntry(e){let{editField:t,field:r}=e,i=[];return i.push({id:`url`,component:Url,editField:t,field:r,isEdited:isEdited$5,isDefaultVisible:e=>e.type===`iframe`}),i}function Url(e){let{editField:t,field:r,id:a}=e,o=useService(`debounce`),s=useService(`translate`),c=useVariables().map(e=>({name:e})),l=[`url`],getValue=()=>B(r,l,``),setValue=e=>t(r,l,e);return FeelTemplatingEntry({debounce:o,element:r,feel:`optional`,getValue,id:a,label:s(`URL`),setValue,singleLine:!0,tooltip:getTooltip$1(s),validate:i(e=>validate$8(e,s),[s]),variables:c})}function getTooltip$1(e){return f(s,{children:[f(`p`,{children:e(`Enter a HTTPS URL to a source or populate it dynamically via a template or an expression (e.g., to pass a value from the variable).`)}),f(`p`,{children:e(`Please make sure that the URL is safe as it might impose security risks.`)}),f(`p`,{children:[e(`Not all external sources can be displayed in the iFrame. Read more about it in the`),` `,f(`a`,{target:`_blank`,href:`https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Frame-Options`,rel:`noreferrer`,children:e(`X-FRAME-OPTIONS documentation`)}),`.`]})]})}var validate$8=(e,t)=>{if(e&&!e.startsWith(`=`)&&!Ri.test(e))return t(`For security reasons the URL must start with "https".`)};function ImageSourceEntry(e){let{editField:t,field:r}=e,i=[];return i.push({id:`source`,component:Source$1,editField:t,field:r,isEdited:isEdited$5,isDefaultVisible:e=>e.type===`image`}),i}function Source$1(e){let{editField:t,field:r,id:i}=e,a=useService(`debounce`),o=useService(`translate`),s=useVariables().map(e=>({name:e})),c=[`source`],getValue=()=>B(r,c,``),setValue=e=>t(r,c,e);return FeelTemplatingEntry({debounce:a,description:o(`Expression or static value (link/data URI)`),element:r,feel:`optional`,getValue,id:i,label:o(`Image source`),tooltip:o(`Link referring to a hosted image, or use a data URI directly to embed image data into the form.`),setValue,singleLine:!0,variables:s})}var zi=isEditedFromDefaultFactory(Vt,!1);function TextEntry(e){let{editField:t,field:r}=e;return[{id:`text`,component:Text,editField:t,field:r,isEdited:zi,isDefaultVisible:e=>e.type===`text`}]}function Text(e){let{editField:t,field:r,id:i}=e,a=useService(`debounce`),o=useService(`translate`),s=useVariables().map(e=>({name:e})),c=[`text`],getValue=()=>B(r,c,``),setValue=e=>t(r,c,e||``);return FeelTemplatingEntry({debounce:a,description:description$2(o),element:r,getValue,id:i,label:o(`Text`),hostLanguage:`markdown`,setValue,variables:s})}var description$2=e=>f(s,{children:[e(`Supports markdown and templating.`),` `,f(`a`,{href:`https://docs.camunda.io/docs/components/modeler/forms/form-element-library/forms-element-library-text/`,target:`_blank`,rel:`noreferrer`,children:e(`Learn more`)})]});function HtmlEntry(e){let{editField:t,field:r}=e;return[{id:`content`,component:Content,editField:t,field:r,isEdited:isEdited$5,isDefaultVisible:e=>e.type===`html`}]}function Content(e){let{editField:t,field:r,id:i}=e,a=useService(`debounce`),o=useService(`translate`),s=useVariables().map(e=>({name:e})),c=[`content`],getValue=()=>B(r,c,``),setValue=e=>t(r,c,e||``);return FeelTemplatingEntry({debounce:a,description:description$1(o),element:r,getValue,id:i,label:o(`Content`),hostLanguage:`html`,validate:validate$7,setValue,variables:s})}var description$1=e=>f(s,{children:[e(`Supports HTML, styling, and templating. Styles are automatically scoped to the HTML component.`),` `,f(`a`,{href:`https://docs.camunda.io/docs/components/modeler/forms/form-element-library/forms-element-library-html/`,target:`_blank`,rel:`noreferrer`,children:e(`Learn more`)})]}),validate$7=e=>{if(typeof e!=`string`||e===``||e.startsWith(`=`))return null};function NumberEntries(e){let{editField:t,field:r,id:i}=e,a=[];return a.push({id:i+`-decimalDigits`,component:NumberDecimalDigits,isEdited:isEdited$6,editField:t,field:r,isDefaultVisible:e=>e.type===`number`}),a.push({id:i+`-step`,component:NumberArrowStep,isEdited,editField:t,field:r,isDefaultVisible:e=>e.type===`number`}),a}function NumberDecimalDigits(e){let{editField:t,field:r,id:a}=e,o=useService(`debounce`),s=useService(`translate`),getValue=e=>B(r,[`decimalDigits`]),setValue=(e,i)=>{i||t(r,[`decimalDigits`],e)};return NumberFieldEntry({debounce:o,label:s(`Decimal digits`),element:r,step:`any`,getValue,id:a,setValue,validate:i(e=>validateNumberEntries(e,s),[s])})}function NumberArrowStep(e){let{editField:t,field:r,id:a}=e,{decimalDigits:o}=r,s=useService(`debounce`),c=useService(`translate`),getValue=e=>{let t=B(r,[`increment`]);return isValidNumber(t)?t:null},clearLeadingZeroes=e=>{if(!e)return e;let t=e.replace(/^0+/g,``);return(t.startsWith(`.`)?`0`:``)+t},setValue=(e,i)=>{i||t(r,[`increment`],clearLeadingZeroes(e))},l=o||o===0,u=i(e=>{if(e!=null){if(!isValidNumber(e))return c(`Should be a valid number.`);if(fn(e).cmp(0)<=0)return c(`Should be greater than zero.`);if(l){let t=fn(`1e-${o}`);if(fn(e).cmp(t)<0)return c(`Should be at least {value}.`,{value:t.toString()});if(countDecimals(e)>o)return c(`Should not contain more than {value} decimal digits.`,{value:o.toString()})}}},[l,o,c]);return TextfieldEntry({debounce:s,label:c(`Increment`),element:r,getValue,id:a,setValue,validate:u})}var validateNumberEntries=(e,t)=>{if(typeof e==`number`){if(!Number.isInteger(e))return t(`Should be an integer.`);if(e<0)return t(`Should be greater than or equal to zero.`)}};function ExpressionFieldEntries(e){let{editField:t,field:r,id:i}=e,a=[];return a.push({id:`${i}-expression`,component:ExpressionFieldExpression,isEdited:isEdited$5,editField:t,field:r,isDefaultVisible:e=>e.type===`expression`}),a.push({id:`${i}-computeOn`,component:ExpressionFieldComputeOn,isEdited:isEdited$3,editField:t,field:r,isDefaultVisible:e=>e.type===`expression`}),a}function ExpressionFieldExpression(e){let{editField:t,field:r,id:i}=e,a=useService(`debounce`),o=useService(`translate`),s=useVariables().map(e=>({name:e})),getValue=()=>r.expression||``,setValue=e=>{t(r,[`expression`],e)};return FeelEntry({debounce:a,description:o(`Define an expression to calculate the value of this field`),element:r,feel:`required`,getValue,id:i,label:o(`Target value`),setValue,variables:s})}function ExpressionFieldComputeOn(e){let{editField:t,field:r,id:i}=e,a=useService(`translate`),getValue=()=>r.computeOn||``,setValue=e=>{t(r,[`computeOn`],e)},getOptions=()=>[{value:`change`,label:a(`Value changes`)},{value:`presubmit`,label:a(`Form submission`)}];return SelectEntry({id:i,label:a(`Compute on`),getValue,setValue,getOptions})}function NumberSerializationEntry(e){let{editField:t,field:r}=e,i=[];return i.push({id:`serialize-to-string`,component:SerializeToString,isEdited:isEdited$9,editField:t,field:r,isDefaultVisible:e=>e.type===`number`}),i}function SerializeToString(e){let{editField:t,field:r,id:i}=e,{defaultValue:a}=r,o=useService(`translate`),s=[`serializeToString`],getValue=()=>B(r,s,``),setValue=e=>((a||a===0)&&t(r,[`defaultValue`],e?fn(a).toFixed():Number(a)),t(r,s,e));return CheckboxEntry({element:r,getValue,id:i,label:o(`Output as string`),description:o(`Allows arbitrary precision values`),setValue})}function DateTimeEntry(e){let{editField:t,field:r,getService:i}=e,a=i(`translate`),o=[{id:`subtype`,component:DateTimeSubtypeSelect,isEdited:isEdited$3,editField:t,field:r,isDefaultVisible:e=>e.type===`datetime`,translate:a}];return o.push({id:`use24h`,component:Use24h,isEdited:isEdited$9,editField:t,field:r,isDefaultVisible:e=>e.type===`datetime`&&(e.subtype===hn.TIME||e.subtype===hn.DATETIME),translate:a}),o}function DateTimeSubtypeSelect(e){let{editField:t,field:r,id:i,translate:a}=e,getValue=e=>B(r,pn),clearTimeConfig=()=>{let e=[Ot,Ht,on,Bt];for(let i of e)t(r,i,void 0)},initTimeConfig=()=>{t(r,Ot,`Time`),t(r,Bt,zt.UTC_OFFSET),t(r,on,15)},clearDateConfig=()=>{let e=[Xt,rn];for(let i of e)t(r,i,void 0)},initDateConfig=()=>{t(r,Xt,`Date`)},setValue=e=>{let i=getValue();if(i!==e)return e===hn.DATE?(clearTimeConfig(),i===hn.TIME&&initDateConfig()):e===hn.TIME?(clearDateConfig(),i===hn.DATE&&initTimeConfig()):e===hn.DATETIME&&(i===hn.DATE&&initTimeConfig(),i===hn.TIME&&initDateConfig()),t(r,pn,e)},getDatetimeSubtypes=()=>Object.values(hn).map(e=>({label:a(ln[e]),value:e}));return SelectEntry({label:a(`Subtype`),element:r,getOptions:getDatetimeSubtypes,getValue,id:i,setValue})}function Use24h(e){let{editField:t,field:r,id:i,translate:a}=e,o=Ht,getValue=()=>B(r,o,``),setValue=e=>t(r,o,e);return CheckboxEntry({element:r,getValue,id:i,label:a(`Use 24h`),setValue})}var Bi=isEditedFromDefaultFactory(`15`);function DateTimeConstraintsEntry(e){let{editField:t,field:r,id:i}=e;function isDefaultVisible(e){return t=>t.type===`datetime`&&e.includes(t.subtype)}let a=[];return a.push({id:i+`-timeInterval`,component:TimeIntervalSelect,isEdited:Bi,editField:t,field:r,isDefaultVisible:isDefaultVisible([hn.TIME,hn.DATETIME])}),a.push({id:i+`-disallowPassedDates`,component:DisallowPassedDates,isEdited:isEdited$9,editField:t,field:r,isDefaultVisible:isDefaultVisible([hn.DATE,hn.DATETIME])}),a}function DisallowPassedDates(e){let{editField:t,field:r,id:i}=e,a=rn,o=useService(`translate`),getValue=()=>B(r,a,``),setValue=e=>t(r,a,e);return CheckboxEntry({element:r,getValue,id:i,label:o(`Disallow past dates`),setValue})}function TimeIntervalSelect(e){let{editField:t,field:r,id:i}=e,a=[1,5,10,15,30,60],o=useService(`translate`),getValue=e=>B(r,on),setValue=e=>t(r,on,parseInt(e)),getTimeIntervals=()=>a.map(e=>({label:e===60?`1h`:e+`m`,value:e}));return SelectEntry({label:o(`Time interval`),element:r,getOptions:getTimeIntervals,getValue,id:i,setValue})}var Vi=isEditedFromDefaultFactory(zt.UTC_OFFSET);function DateTimeFormatEntry(e){let{editField:t,field:r}=e,i=[];return i.push({id:`time-format`,component:TimeFormatSelect,isEdited:Vi,editField:t,field:r,isDefaultVisible:e=>e.type===`datetime`&&(e.subtype===hn.TIME||e.subtype===hn.DATETIME)}),i}function TimeFormatSelect(e){let{editField:t,field:r,id:i}=e,a=useService(`translate`),getValue=e=>B(r,Bt),setValue=e=>t(r,Bt,e),getTimeSerialisingFormats=()=>Object.values(zt).map(e=>({label:a(an[e]),value:e}));return SelectEntry({label:a(`Time format`),element:r,getOptions:getTimeSerialisingFormats,getValue,id:i,setValue})}function SelectEntries(e){return[simpleBoolEntryFactory({id:`searchable`,path:[`searchable`],label:e.getService(`translate`)(`Searchable`),props:e,isDefaultVisible:e=>e.type===`select`})]}function ValueEntry(e){let{editField:t,field:r,idPrefix:i,index:a,validateFactory:o}=e;return[{component:Label$1,editField:t,field:r,id:i+`-label`,idPrefix:i,index:a,validateFactory:o},{component:Value$1,editField:t,field:r,id:i+`-value`,idPrefix:i,index:a,validateFactory:o}]}function Label$1(e){let{editField:t,field:r,id:i,index:a,validateFactory:o}=e,s=useService(`debounce`),c=useService(`translate`),setValue=(e,i)=>{if(i)return;let o=B(r,[`values`]);return t(r,`values`,E(o,[a,`label`],e))},getValue=()=>B(r,[`values`,a,`label`]),l=d(()=>o(B(r,[`values`,a,`label`]),e=>e.label),[r,a,o]);return TextfieldEntry({debounce:s,element:r,getValue,id:i,label:c(`Label`),setValue,validate:l})}function Value$1(e){let{editField:t,field:r,id:i,index:a,validateFactory:o}=e,s=useService(`debounce`),c=useService(`translate`),setValue=(e,i)=>{if(i)return;let{defaultValue:o}=r,s=B(r,[`values`]),c=B(r,[`values`,a,`value`]);return!Pe(o)&&o===c&&E(r,[`defaultValue`],e),t(r,`values`,E(s,[a,`value`],e))},getValue=()=>B(r,[`values`,a,`value`]),l=d(()=>o(B(r,[`values`,a,`value`]),e=>e.value),[r,a,o]);return TextfieldEntry({debounce:s,element:r,getValue,id:i,label:c(`Value`),setValue,validate:l})}function CustomValueEntry(e){let{editField:t,field:r,idPrefix:i,index:a,validateFactory:o}=e;return[{component:Key$1,editField:t,field:r,id:i+`-key`,idPrefix:i,index:a,validateFactory:o},{component:Value,editField:t,field:r,id:i+`-value`,idPrefix:i,index:a,validateFactory:o}]}function Key$1(e){let{editField:t,field:r,id:i,index:a,validateFactory:o}=e,s=useService(`debounce`),c=useService(`translate`),setValue=(e,i)=>{if(i)return;let o=B(r,[`properties`]),s=Object.keys(o)[a];return t(r,`properties`,updateKey(o,s,e))},getValue=()=>Object.keys(B(r,[`properties`]))[a],l=d(()=>o(Object.keys(B(r,[`properties`]))[a]),[o,r,a]);return TextfieldEntry({debounce:s,element:r,getValue,id:i,label:c(`Key`),setValue,validate:l})}function Value(e){let{editField:t,field:r,id:i,index:a,validateFactory:o}=e,s=useService(`debounce`),c=useService(`translate`),setValue=e=>{let i=B(r,[`properties`]),o=Object.keys(i)[a];t(r,`properties`,updateValue(i,o,e))},getValue=()=>{let e=B(r,[`properties`]),t=Object.keys(e)[a];return B(r,[`properties`,t])};return TextfieldEntry({debounce:s,element:r,getValue,id:i,label:c(`Value`),setValue,validate:o(getValue())})}function updateValue(e,t,r){return{...e,[t]:r}}function updateKey(e,t,r){return Object.entries(e).reduce((e,i)=>{let[a,o]=i;return{...e,[a===t?r:a]:o}},{})}function AutoFocusSelectEntry(e){let{autoFocusEntry:t,element:r,getValue:i}=e,a=i(r),o=usePrevious(a),s=useService(`eventBus`);return y(()=>{t&&o&&a!==o&&setTimeout(()=>{s.fire(`propertiesPanel.showEntry`,{id:t})})},[a,t,o,s]),f(SelectEntry,{...e})}var Hi=isEditedFromDefaultFactory(Wt.STATIC);function OptionsSourceSelectEntry(e){let{editField:t,field:r,id:i,translate:a}=e;return[{id:i+`-select`,component:ValuesSourceSelect,isEdited:Hi,editField:t,field:r,translate:a}]}function ValuesSourceSelect(e){let{editField:t,field:r,id:i,translate:a}=e,o=qt,setValue=e=>{let i=r,a={};return a[Gt[e]]=At[e],i=t(r,a),i},getOptionsSourceOptions=()=>Object.values(Wt).map(e=>({label:a(vn[e]),value:e}));return AutoFocusSelectEntry({autoFocusEntry:getAutoFocusEntryId$1(r),label:a(`Type`),element:r,getOptions:getOptionsSourceOptions,getValue:o,id:i,setValue})}function getAutoFocusEntryId$1(e){let t=qt(e);return t===Wt.EXPRESSION?`optionsExpression-expression`:t===Wt.INPUT?`dynamicOptions-key`:t===Wt.STATIC?`staticOptions-0-label`:null}function InputKeyOptionsSourceEntry(e){let{editField:t,field:r,id:i}=e;return[{id:i+`-key`,component:InputValuesKey,isEdited,editField:t,field:r}]}function InputValuesKey(e){let{editField:t,field:r,id:a}=e,o=useService(`debounce`),s=useService(`translate`),c=Gt[Wt.INPUT],l=f(`div`,{children:[s(`The input property may be an array of simple values or alternatively follow this schema:`),f(`pre`,{children:f(`code`,{children:`[
|
|
2
2
|
{
|
|
3
3
|
"label": "dollar",
|
|
4
4
|
"value": "$"
|