Home
last modified time | relevance | path

Searched refs:_getHandlers (Results 1 – 2 of 2) sorted by relevance

/plugin/bpmnio/vendor/dmn-js/dist/
H A Ddmn-viewer.production.min.js16 <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="`+l.width+'" height="'+l.height+'" viewBox="'+l.x+" "+l.y+" "+l.width+" "+l.height+'" version="1.1">'+a+o+"</svg>";t({svg:c})})});Ve.prototype.getModules=function(){return this._modules};Ve.prototype.destroy=function(){kn.prototype.destroy.call(this),$e(this._container)};Ve.prototype.on=function(n,e,t,i){return this.get("eventBus").on(n,e,t,i)};Ve.prototype.off=function(n,e){this.get("eventBus").off(n,e)};Ve.prototype._init=function(n,e){var{additionalModules:t,canvas:i,...r}=e,s=e.modules||this.getModules(),o=[{drd:["value",this]}],a=[...o,...s,...t||[]],l={...r,canvas:{...i,container:n},modules:a};kn.call(this,l),e&&e.container&&this.attachTo(e.container)};Ve.prototype._emit=function(n,e){return this.get("eventBus").fire(n,e)};Ve.prototype._createContainer=function(){return le('<div class="dmn-drd-container"></div>')};Ve.prototype.open=function(n){var e=this;return new Promise((t,i)=>{var r;try{return e._definitions&&e.clear(),e._definitions=n,tm(e,n,function(s,o){s?(s.warnings=o||[],i(s)):t({warnings:o||[]})})}catch(s){r=s}r?(r.warnings=r.warnings||[],i(r)):t({warnings:[]})})};Ve.prototype.attachTo=function(n){if(!n)throw new Error("parentNode required");this.detach();var e=this._container;n.appendChild(e),this._emit("attach",{}),this.get("canvas").resized()};Ve.prototype.detach=function(){var n=this._container,e=n.parentNode;e&&(this._emit("detach",{}),e.removeChild(n))};Ve.prototype._modules=[Nm,rt,Hm,za,Ym,Gm];var fr=class{constructor(e){D(this,e),En(this,"businessObject",{writable:!0})}},Ou=class extends fr{constructor(e){super(e),En(this,"rows",{enumerable:!0,value:this.rows||[]}),En(this,"cols",{enumerable:!0,value:this.cols||[]})}},ku=class extends fr{constructor(e){super(e),En(this,"root",{writable:!0}),En(this,"cells",{enumerable:!0,value:this.cells||[]})}},Cu=class extends fr{constructor(e){super(e),En(this,"root",{writable:!0}),En(this,"cells",{enumerable:!0,value:this.cells||[]})}},Su=class extends fr{constructor(e){super(e),En(this,"row",{writable:!0}),En(this,"col",{writable:!0})}},vk={root:Ou,row:ku,col:Cu,cell:Su};function Jm(n,e){let t=vk[n];if(!t)throw new Error("unknown type "+n);return new t(e)}function En(n,e,t){Object.defineProperty(n,e,t)}var zs=class{constructor(){this._uid=12}create(e,t={}){return t.id||(t.id=e+"_"+this._uid++),Jm(e,t)}createRoot(e){return this.create("root",e)}createRow(e){return this.create("row",e)}createCol(e){return this.create("col",e)}createCell(e){return this.create("cell",e)}};var hr=class{constructor(e){this._eventBus=e,this._elements={},e.on("table.clear",this.clear.bind(this))}add(e,t){let{id:i}=e;this._elements[i]=e}remove(e){let t=e.id||e;delete this._elements[t]}get(e){return this._elements[e]}getAll(){return Eu(this._elements)}forEach(e){Eu(this._elements).forEach(t=>e(t))}filter(e){return Eu(this._elements).filter(t=>e(t))}clear(){this._elements={}}updateId(e,t){this._validateId(t),typeof e=="string"&&(e=this.get(e)),this._eventBus.fire("element.updateId",{element:e,newId:t}),this.remove(e),e.id=t,this.add(e)}_validateId(e){if(!e)throw new Error("element must have an id");if(this._elements[e])throw new Error("element with id "+e+" already added")}};hr.$inject=["eventBus"];function Eu(n){return Object.keys(n).map(function(e){return n[e]})}var dr=class{constructor(e){this._listeners={},e.on("elements.changed",({elements:t})=>{this.elementsChanged(t)}),e.on("root.remove",t=>{let i=t.root.id;this._listeners[i]&&e.once("root.add",r=>{let s=r.root.id;this.updateId(i,s)})}),e.on("element.updateId",({element:t,newId:i})=>{this.updateId(t.id,i)})}elementsChanged(e){let t={},i=e.length;for(let r=0;r<i;r++){let{id:s}=e[r];if(t[s])return;t[s]=!0;let o=this._listeners[s]&&this._listeners[s].length;if(o)for(let a=0;a<o;a++)this._listeners[s][a]&&this._listeners[s][a]()}}onElementsChanged(e,t){this._listeners[e]||(this._listeners[e]=[]),this._listeners[e][this._listeners[e].length]=t}offElementsChanged(e,t){if(this._listeners[e])if(t){let i=this._listeners[e].indexOf(t);i!==-1&&this._listeners[e].splice(i,1)}else this._listeners[e].length=0}updateId(e,t){this._listeners[e]&&(this._listeners[t]=this._listeners[e],delete this._listeners[e])}};dr.$inject=["eventBus"];var xk=1e3,Ws=class{constructor(){this._listeners={}}getComponent(e,t){let i=this._listeners[e];if(!i)return;let r;for(let s=0;s<i.length&&(r=i[s].callback(t),!r);s++);return r}getComponents(e,t){let i=this._listeners[e],r=[];if(!i)return r;for(let s=0;s<i.length;s++){let o=i[s].callback(t);o&&r.push(o)}return r.length,r}onGetComponent(e,t,i){if(Ie(t)&&(i=t,t=xk),!Ce(t))throw new Error("priority must be a number");let r=this._getListeners(e),s,o,a={priority:t,callback:i};for(o=0;s=r[o];o++)if(s.priority<t){r.splice(o,0,a);return}r.push(a)}offGetComponent(e,t){let i=this._getListeners(e),r,s,o;if(t)for(o=i.length-1;r=i[o];o--)s=r.callback,s===t&&i.splice(o,1);else i.length=0}_getListeners(e){let t=this._listeners[e];return t||(this._listeners[e]=t=[]),t}};var Hs=class extends z{constructor(e){super(e);let t=this._injector=e.injector;this._sheet=t.get("sheet"),this._changeSupport=t.get("changeSupport"),this._components=t.get("components"),this._eventBus=t.get("eventBus");let i=t.get("throttle");this.onElementsChanged=this.onElementsChanged.bind(this),this.onScroll=i(this.onScroll.bind(this))}onElementsChanged(){this.forceUpdate()}onScroll(){this._eventBus.fire("sheet.scroll")}getChildContext(){return{changeSupport:this._changeSupport,components:this._components,injector:this._injector}}componentWillMount(){let{id:e}=this._sheet.getRoot();this._changeSupport.onElementsChanged(e,this.onElementsChanged)}componentWillUnmount(){let{id:e}=this._sheet.getRoot();this._changeSupport.offElementsChanged(e,this.onElementsChanged)}render(){let{rows:e,cols:t}=this._sheet.getRoot(),i=this._components.getComponents("table.before"),r=this._components.getComponents("table.after"),s=this._components.getComponent("table.head"),o=this._components.getComponent("table.body"),a=this._components.getComponent("table.foot");return E(1,"div","tjs-container",[i&&i.map((l,c)=>F(2,l,null,c)),E(1,"div","tjs-table-container",E(1,"table","tjs-table",[s&&F(2,s,{rows:e,cols:t}),o&&F(2,o,{rows:e,cols:t}),a&&F(2,a,{rows:e,cols:t})],0),2,{onScroll:this.onScroll}),r&&r.map((l,c)=>F(2,l,null,c))],0)}};var pr=class{constructor(e,t,i,r,s){let{container:o}=i;this._container=o,r.on("root.added",()=>{or(F(2,Hs,{injector:s}),o)}),r.on("root.remove",()=>{or(null,o)})}getContainer(){return this._container}};pr.$inject=["changeSupport","components","config.renderer","eventBus","injector"];var Ha={__init__:["changeSupport","components","renderer"],changeSupport:["type",dr],components:["type",Ws],renderer:["type",pr]};var mr=class{constructor(e,t){this._elementRegistry=e,this._eventBus=t,this._root=null,t.on("table.clear",()=>{this.setRoot(null)})}setRoot(e){if(this._root){let t=this._root;this._eventBus.fire("root.remove",{root:t}),this._root=null,this._eventBus.fire("root.removed",{root:t})}e&&this._eventBus.fire("root.add",{root:e}),this._root=e,e&&this._eventBus.fire("root.added",{root:e})}getRoot(){return this._root||this.setRoot({id:"__implicitroot",rows:[],cols:[]}),this._root}addRow(e,t){let i=this.getRoot();if(i.cols.length!=e.cells.length)throw new Error("number of cells is not equal to number of cols");return typeof t=="undefined"&&(t=i.rows.length),Xa(t,i.rows,e),e.root=i,this._elementRegistry.add(e),e.cells.forEach((r,s)=>{this._elementRegistry.add(r),r.row=e,r.col=i.cols[s],Xa(t,i.cols[s].cells,r)}),this._eventBus.fire("row.add",{row:e}),e}removeRow(e){let t=this.getRoot();typeof e=="string"&&(e=this._elementRegistry.get(e));let i=t.rows.indexOf(e);i!==-1&&(Ua(i,t.rows),e.root=void 0,this._elementRegistry.remove(e),e.cells.forEach((r,s)=>{this._elementRegistry.remove(r),r.col=void 0,Ua(i,t.cols[s].cells)}),this._eventBus.fire("row.remove",{row:e}))}addCol(e,t){let i=this.getRoot();if(this._elementRegistry.add(e),i.rows.length!=e.cells.length)throw new Error("number of cells is not equal to number of rows");return typeof t=="undefined"&&(t=i.cols.length),Xa(t,i.cols,e),e.root=i,e.cells.forEach((r,s)=>{this._elementRegistry.add(r),r.col=e,r.row=i.rows[s],Xa(t,i.rows[s].cells,r)}),this._eventBus.fire("col.add",{col:e}),e}removeCol(e){let t=this.getRoot();typeof e=="string"&&(e=this._elementRegistry.get(e));let i=t.cols.indexOf(e);i!==-1&&(Ua(i,t.cols),e.root=void 0,this._elementRegistry.remove(e),e.cells.forEach((r,s)=>{this._elementRegistry.remove(r),r.row=void 0,Ua(i,t.rows[s].cells)}),this._eventBus.fire("col.remove",{col:e}))}resized(){this._eventBus.fire("sheet.resized")}};mr.$inject=["elementRegistry","eventBus"];function Xa(n,e,t){return e.splice(n,0,t)}function Ua(n,e){return e.splice(n,1)}function Ya(n=!0){let e=typeof n=="number"?n:n?300:0;return e?t=>Wd(t,e):t=>t}Ya.$inject=["config.throttle"];var Zm={__depends__:[Ha],__init__:["elementFactory","sheet"],elementFactory:["type",zs],elementRegistry:["type",hr],eventBus:["type",ye],sheet:["type",mr],throttle:["factory",Ya]};var Xs=class{constructor(e={}){let{injector:t}=e;if(!t){let{modules:i,config:r}=this._init(e);t=bk(r,i)}this.get=t.get,this.invoke=t.invoke,this.get("eventBus").fire("table.init"),this.get("eventBus").fire("diagram.init")}_init(e){let{modules:t,...i}=e;return{modules:t,config:i}}destroy(){let e=this.get("eventBus");e.fire("table.destroy"),e.fire("diagram.destroy")}clear(){let e=this.get("eventBus");e.fire("table.clear"),e.fire("diagram.clear")}};function bk(n,e){let t=[{config:["value",n]},Zm].concat(e||[]),i=new xi(t);return i.init(),i}var eg=Xs;function Ka(n){if(!n)return"<null>";let e=n.id?` id="${n.id}"`:"";return`<${n.$type}${e} />`}function Au(n,e){function t(l,c,u){var f=l.gfx;if(f)throw new Error(`already rendered ${Ka(l)}`);return n.element(l,c,u)}function i(l){return n.table(l)}function r(l){l.id||(l.id="decision");let c=l.decisionLogic;if(c){if(!c.output)throw new Error(`missing output for ${Ka(c)}`);let u=i(c);c.input&&s(c.input,u,c),s(c.output,u,c),o(c.rule,u,c)}else throw new Error(`no table for ${Ka(l)}`)}function s(l,c,u){B(l,function(f){t(f,c,u)})}function o(l,c,u){B(l,function(f){t(f,c,u),a(f.inputEntry,f),a(f.outputEntry,f)})}function a(l,c,u){B(l,function(f){t(f,c,u)})}return{handleDecision:r}}function tg(n,e,t){let i=n.get("tableImporter"),r=n.get("eventBus"),s=n.get("sheet"),o=n.get("modeling",!1),a,l=[];function c(u){let f={create(d,p,m,y){return i.create(d,p,m,y)},table(d){return i.add(d)},element(d,p,m){return i.add(d,p,m)},error(d,p){l.push({message:d,context:p})}};new Au(f,{canAddMissingEntries:o}).handleDecision(u)}r.fire("import.render.start",{decision:e});try{c(e)}catch(u){a=u}r.fire("import.render.complete",{error:a,warnings:l}),r.fire("elements.changed",{elements:[s.getRoot()]}),t(a,l)}function wk(){return{elements:[],index:{}}}function ng(n,e){let{elements:t,index:i}=n;return i[e]?n:{elements:[...t,e],index:{...i,[e]:!0}}}function Ok(n,e){return n.elements.join(e)}function gr(...n){let e=wk();return n.forEach(function(t){let i=typeof t;i==="string"&&t.length>0?e=ng(e,t):i==="object"&&t!==null&&Object.keys(t).forEach(function(r){t[r]&&(e=ng(e,r))})}),Ok(e," ")}function zt(n){let e=n.constructor;return Ga(e,n)}function Ga(n,e){let t=n.$inject;if(!t)return;let{injector:i}=e.context,r=[...t,function(...s){for(let o in s){let a=t[o],l=s[o];e[a]=l}}];i.invoke(r)}function _u(n,...e){return function(...t){let i;return e.forEach(function(r){if(i=r.call(n,...t),typeof i!="undefined")return!1}),i}.bind(n)}function cn(n,e){Object.keys(e).forEach(function(t){if(t==="$inject"||t==="__init")return;let i=e[t];t==="constructor"&&i.call(n,n.props,n.context);let r=n[t];if(typeof r!="undefined"){if(typeof r!="function")throw new Error(`failed to mixin <${t}>: cannot combine with non-fn component value`);n[t]=_u(n,r,i)}else n[t]=i.bind(n)}),"$inject"in e&&Ga(e,n),"__init"in e&&e.__init.call(n,n.props,n.context)}var ig={getSelectionClasses(){let{selected:n,selectedSecondary:e,focussed:t}=this.state;return gr({selected:n,"selected-secondary":e,focussed:t})},selectionChanged(n){this.setState(n)},componentWillUpdate(n){n.elementId!==this.props.elementId&&this.updateSelectionSubscription(!1)},componentDidUpdate(n){n.elementId!==this.props.elementId&&this.updateSelectionSubscription(!0)},componentDidMount(){this.updateSelectionSubscription(!0)},componentWillUnmount(){this.updateSelectionSubscription(!1)},updateSelectionSubscription(n){let{elementId:e}=this.props;e&&e&&this.eventBus[n?"on":"off"](`selection.${e}.changed`,this.selectionChanged)}},Tu=ig;ig.$inject=["eventBus"];var Us=class extends z{constructor(e,t){super(e,t),cn(this,Tu),zt(this)}getRenderProps(...e){let{className:t,elementId:i,coords:r,...s}=this.props,o={className:gr(...e,this.getSelectionClasses(),t)};return i&&(o["data-element-id"]=i),r&&(o["data-coords"]=r),{...o,...s}}};var An=class extends Us{constructor(e,t){super(e,t),this.state={}}render(){let{children:e}=this.props,t=this.getRenderProps("cell");return on(E(1,"td",null,e,0,{...t}))}};var rg={slotFill(n,e){let{type:t,context:i,...r}=n,s=this.components.getComponent(t,i)||e;return s?on(F(2,s,{...i,...r})):null},slotFills(n){let{type:e,context:t,...i}=n;return this.components.getComponents(e,t).map(s=>on(F(2,s,{...t,...i})))}},Ci=rg;rg.$inject=["components"];var sg=400,yr=class extends z{constructor(t,i){super(t,i);$(this,"onElementsChanged",()=>{this.forceUpdate()});cn(this,Ci),zt(this)}componentDidMount(){this.changeSupport.onElementsChanged(this.getRoot(),this.onElementsChanged)}componentWillUnmount(){this.changeSupport.offElementsChanged(this.getRoot(),this.onElementsChanged)}getRoot(){return this.sheet.getRoot()}render(){let r=(this.getRoot().businessObject.get("annotationsWidth")||sg)+"px";return E(1,"th","annotation header",[this.slotFills({type:"cell-inner",context:{cellType:"annotations",col:this.sheet.getRoot(),minWidth:sg}}),this.translate("Annotations")],0,{style:{width:r}})}};yr.$inject=["changeSupport","sheet","translate"];function Mu(n){let{row:e}=n,{id:t,description:i}=e.businessObject;return F(2,An,{className:"annotation",elementId:t,children:i||"-"})}function Ja(n){n.onGetComponent("cell",({cellType:e})=>{if(e==="after-label-cells")return yr;if(e==="after-rule-cells")return Mu})}Ja.$inject=["components"];var og={__init__:["annotationsProvider"],annotationsProvider:["type",Ja]};function Ys(n,e){return D({id:n.id,type:n.$type,businessObject:n},e)}var vr=class{constructor(e,t,i){this._elementFactory=e,this._eventBus=t,this._sheet=i}add(e){let t;if(Q(e,"dmn:DecisionTable"))t=this._elementFactory.createRoot(Ys(e)),this._sheet.setRoot(t);else if(Q(e,"dmn:InputClause"))t=this._elementFactory.createCol(Ys(e)),this._sheet.addCol(t);else if(Q(e,"dmn:OutputClause"))t=this._elementFactory.createCol(Ys(e)),this._sheet.addCol(t);else if(Q(e,"dmn:DecisionRule")){e.inputEntry||(e.inputEntry=[]),e.outputEntry||(e.outputEntry=[]);let i=[...e.inputEntry,...e.outputEntry].map(r=>this._elementFactory.createCell(Ys(r)));t=this._elementFactory.createRow(D(Ys(e),{cells:i})),this._sheet.addRow(t)}return this._eventBus.fire("dmnElement.added",{element:t}),t}};vr.$inject=["elementFactory","eventBus","sheet"];var ag={__depends__:[rt],tableImporter:["type",vr]};var lg={__depends__:[ag,Ha]};var Ks=class extends z{constructor(t,i){super(t,i);$(this,"onElementsChanged",()=>{this.forceUpdate()});cn(this,Ci),this._sheet=i.injector.get("sheet"),this._changeSupport=i.changeSupport}componentWillMount(){let t=this._sheet.getRoot();this._changeSupport.onElementsChanged(t.id,this.onElementsChanged)}componentWillUnmount(){let t=this._sheet.getRoot();this._changeSupport.offElementsChanged(t.id,this.onElementsChanged)}render(){let t=this._sheet.getRoot();if(!Q(t,"dmn:DMNElement"))return null;let i=Ot(t),r=i.input,s=i.output;return E(1,"thead",null,E(1,"tr",null,[E(1,"th","index-column"),this.slotFills({type:"cell",context:{cellType:"before-label-cells"}}),r&&r.map((o,a)=>{let l=o.width||"192px";return this.slotFill({type:"cell",context:{cellType:"input-header",input:o,index:a,inputsLength:r.length,width:l},key:o.id},kk)}),s.map((o,a)=>this.slotFill({type:"cell",context:{cellType:"output-header",output:o,index:a,outputsLength:s.length},key:o.id},Ck)),this.slotFills({type:"cell",context:{cellType:"after-label-cells"}})],0),2)}};function kk(n,e){let{input:t,className:i,index:r}=n,{label:s,inputExpression:o,inputValues:a}=t,l=e.injector.get("translate"),c=(i||"")+" input-cell";return E(1,"th",c,[E(1,"div","clause",l(r===0?"When":"And"),0),s?E(1,"div","input-label",s,0,{title:l("Input label: ")+s}):E(1,"div","input-expression",o.text,0,{title:l("Input expression: ")+o.text}),E(1,"div","input-variable",a&&a.text||o.typeRef,0,{title:a&&a.text?l("Input values"):l("Input type")})],0,{"data-col-id":t.id},t.id)}function Ck(n,e){let{output:t,className:i,index:r}=n,{label:s,name:o,outputValues:a,typeRef:l}=t,c=e.injector.get("translate"),u=(i||"")+" output-cell";return E(1,"th",u,[E(1,"div","clause",c(r===0?"Then":"And"),0),s?E(1,"div","output-label",s,0,{title:c("Output label")}):E(1,"div","output-name",o,0,{title:c("Output name")}),E(1,"div","output-variable",a&&a.text||l,0,{title:a&&a.text?c("Output values"):c("Output type")})],0,null,t.id)}function Za(n){n.onGetComponent("table.head",()=>Ks)}Za.$inject=["components"];var cg={__init__:["decisionTableHeadProvider"],decisionTableHeadProvider:["type",Za]};var xr=class extends z{constructor(e,t){super(e,t),this._translate=t.injector.get("translate"),zt(this)}render(){let e=this.sheet.getRoot();if(!Q(e,"dmn:DMNElement"))return null;let{name:t}=e.businessObject.$parent,i=this.components.getComponent("hit-policy")||Sk;return E(1,"div","decision-table-properties",[E(1,"div","decision-table-name",t,0,{title:this._translate("Decision name: ")+t}),E(1,"div","decision-table-header-separator"),F(2,i)],4)}};xr.$inject=["sheet","components"];function Sk(){return null}var Ek=500,br=class{constructor(e){e.onGetComponent("table.before",Ek,()=>xr)}};br.$inject=["components"];var ug={__init__:["decisionTableProperties"],decisionTableProperties:["type",br]};var Gs=class extends z{render(){let{row:e,rowIndex:t}=this.props,{components:i}=this.context,r=i.getComponents("cell-inner",{cellType:"rule-index",row:e,rowIndex:t});return E(1,"td","rule-index",[r&&r.map(s=>F(2,s,{row:e,rowIndex:t})),t+1],0,{"data-element-id":e.id,"data-row-id":e.id})}};var wr=class{constructor(e){e.onGetComponent("cell",({cellType:t})=>{if(t==="before-rule-cells")return Gs})}};wr.$inject=["components"];var fg={__init__:["decisionRuleIndices"],decisionRuleIndices:["type",wr]};var Ak=[{label:"FEEL",value:"feel"}],Or=class{constructor(e){this._injector=e;let t=e.get("config.expressionLanguages")||{};this._config={options:Ak,defaults:{editor:"feel"}},t.options&&(this._config.options=t.options);let i=this._getLegacyDefaults();D(this._config.defaults,i,t.defaults)}getDefault(e){let{defaults:t}=this._config,i=t[e]||t.editor;return this._getLanguageByValue(i)||this.getAll()[0]}getLabel(e){let t=this._getLanguageByValue(e);return t?t.label:e}getAll(){return this._config.options}_getLegacyDefaults(){let e={},t=this._injector,i=t.get("config.defaultInputExpressionLanguage"),r=t.get("config.defaultOutputExpressionLanguage");return i&&(e.inputCell=i),r&&(e.outputCell=r),e}_getLanguageByValue(e){return we(this.getAll(),t=>e===t.value)}};Or.$inject=["injector"];var Ru={__init__:["expressionLanguages"],expressionLanguages:["type",Or]};var kr=class{constructor(e){this._feelLanguageContext=e}getConfig(){return this._feelLanguageContext}};kr.$inject=["config.feelLanguageContext"];var Pu={__init__:["feelLanguageContext"],feelLanguageContext:["type",kr]};var Js=class extends z{render({rows:e,cols:t}){let{components:i}=this.context;return E(1,"tbody",null,e.map((r,s)=>{let o=i.getComponent("row",{rowType:"rule"});return o&&F(2,o,{row:r,rowIndex:s,cols:t},r.id)}),0)}};var Zs=class extends z{constructor(e,t){super(e,t),cn(this,Ci)}render(){let{row:e,rowIndex:t,cols:i}=this.props,{cells:r}=e;return E(1,"tr",null,[this.slotFills({type:"cell",context:{cellType:"before-rule-cells",row:e,rowIndex:t}}),r.map((s,o)=>this.slotFill({type:"cell",context:{cellType:"rule",cell:s,rowIndex:t,colIndex:o},key:s.id,row:e,col:i[o]})),this.slotFills({type:"cell",context:{cellType:"after-rule-cells",row:e,rowIndex:t}})],0)}};var eo=class extends z{render(){let{cell:e,row:t,col:i}=this.props;return Q(e,"dmn:UnaryTests")?F(2,An,{className:"input-cell",elementId:e.id,"data-row-id":t.id,"data-col-id":i.id,children:e.businessObject.text}):F(2,An,{className:"output-cell",elementId:e.id,"data-row-id":t.id,"data-col-id":i.id,children:e.businessObject.text})}};var Cr=class{constructor(e){e.onGetComponent("table.body",()=>Js),e.onGetComponent("row",({rowType:t})=>{if(t==="rule")return Zs}),e.onGetComponent("cell",({cellType:t})=>{if(t==="rule")return eo})}};Cr.$inject=["components"];var hg={__depends__:[Ru,Pu],__init__:["decisionRules"],decisionRules:["type",Cr]};var dg=[{label:"Unique",value:{hitPolicy:"UNIQUE",aggregation:void 0},explanation:"No overlap is possible and all rules are disjoint. Only a single rule can be matched"},{label:"First",value:{hitPolicy:"FIRST",aggregation:void 0},explanation:"Rules may overlap. The first matching rule will be chosen"},{label:"Priority",value:{hitPolicy:"PRIORITY",aggregation:void 0},explanation:"Rules may overlap. The one with the highest priority will be chosen"},{label:"Any",value:{hitPolicy:"ANY",aggregation:void 0},explanation:"Rules may overlap. Their output have to match"},{label:"Collect",value:{hitPolicy:"COLLECT",aggregation:void 0},explanation:"Collects the values of all matching rules"},{label:"Collect (Sum)",value:{hitPolicy:"COLLECT",aggregation:"SUM"},explanation:"Collects the values of all matching rules and sums up to a single value"},{label:"Collect (Min)",value:{hitPolicy:"COLLECT",aggregation:"MIN"},explanation:"Collects the values of all matching rules and uses the lowest value"},{label:"Collect (Max)",value:{hitPolicy:"COLLECT",aggregation:"MAX"},explanation:"Collects the values of all matching rules and uses the highest value"},{label:"Collect (Count)",value:{hitPolicy:"COLLECT",aggregation:"COUNT"},explanation:"Collects the values of all matching rules and counts the number of them"},{label:"Rule order",value:{hitPolicy:"RULE ORDER",aggregation:void 0},explanation:"Collects the values of all matching rules in rule order"},{label:"Output order",value:{hitPolicy:"OUTPUT ORDER",aggregation:void 0},explanation:"Collects the values of all matching rules in decreasing output priority order"}];var Sr=class extends z{constructor(e,t){super(e,t),this._translate=t.injector.get("translate"),zt(this)}getRoot(){return this.sheet.getRoot()}render(){let e=this.getRoot(),t=e.businessObject,{aggregation:i,hitPolicy:r}=t,s=we(dg,o=>_k(o.value,{aggregation:i,hitPolicy:r}));return E(1,"div","hit-policy header",[E(1,"label","dms-label",this._translate("Hit policy:"),0),E(1,"span","hit-policy-value",this._translate(s.label),0)],4,{title:this._translate(s.explanation)})}};Sr.$inject=["sheet"];function _k(n,e){return n.hitPolicy===e.hitPolicy&&n.aggregation===e.aggregation}function el(n){n.onGetComponent("hit-policy",()=>Sr)}el.$inject=["components"];var pg={__init__:["hitPolicyProvider"],hitPolicyProvider:["type",el]};var to=class extends z{constructor(t,i){super(t,i);$(this,"onClick",()=>{this._eventBus.fire("showDrd")});let{injector:r}=i;this._translate=r.get("translate"),this._eventBus=r.get("eventBus")}render(){return E(1,"div","view-drd",E(1,"button","view-drd-button",this._translate("View DRD"),0,{type:"button",onClick:this.onClick}),2,null,null,t=>this.node=t)}};var Er=class{constructor(e,t,i,r){this._injector=i,this._sheet=r,e.onGetComponent("table.before",()=>{if(this.canViewDrd())return to}),t.on("showDrd",()=>{let s=i.get("_parent",!1),o=r.getRoot(),a=mg(o);if(!a)return;let l=s.getView(a);s.open(l)})}canViewDrd(){let e=this._injector.get("_parent",!1);if(!e)return!1;let t=this._sheet.getRoot(),i=mg(t);return!!e.getView(i)}};Er.$inject=["components","eventBus","injector","sheet"];function mg(n){let{businessObject:e}=n;return e?e.$parent.$parent:void 0}var gg={__init__:["viewDrd"],viewDrd:["type",Er]};var Ar=class{constructor(e){e.onGetComponent("table.before",()=>Kn)}};Ar.$inject=["components"];var yg={__init__:["poweredBy"],poweredBy:["type",Ar]};var no=class n extends eg{constructor(e={}){let t=n._createContainer();super(D(e,{renderer:{container:t}})),this._container=t}open(e){var t=this;return new Promise((i,r)=>{var s;try{return t._decision&&t.clear(),t._decision=e,tg(t,e,function(o,a){o?(o.warnings=a||[],r(o)):i({warnings:a||[]})})}catch(o){s=o}s?(s.warnings=s.warnings||[],r(s)):i({warnings:[]})})}_init(e){let{modules:t,additionalModules:i,...r}=e,s=t||this.getModules(),o=i||[],a=[{decisionTable:["value",this]}];return{modules:[yg,...s,...o,...a],config:r}}on(e,t,i,r){return this.get("eventBus").on(e,t,i,r)}off(e,t){this.get("eventBus").off(e,t)}_emit(e,t){return this.get("eventBus").fire(e,t)}attachTo(e){if(!e)throw new Error("parentNode required");this.detach();let t=this._container;e.appendChild(t),this._emit("attach",{})}detach(){let e=this._container;e.parentNode&&(this._emit("detach",{}),$e(e))}destroy(){super.destroy(),this.detach()}getModules(){return n._getModules()}static _getModules(){return[og,lg,rt,cg,ug,fg,hg,pg,gg]}static _createContainer(){return le('<div class="dmn-decision-table-container"></div>')}};var _r=class{constructor(e){this._listeners={},e.on("elements.changed",({elements:t})=>{this.elementsChanged(t)}),e.on("element.updateId",({element:t,newId:i})=>{this.updateId(t.id,i)})}elementsChanged(e){let t={},i=e.length;for(let r=0;r<i;r++){let{id:s}=e[r];if(t[s])return;t[s]=!0;let o=this._listeners[s]&&this._listeners[s].length;if(o)for(let a=0;a<o;a++)this._listeners[s][a]&&this._listeners[s][a]()}}onElementsChanged(e,t){this._listeners[e]||(this._listeners[e]=[]),this._listeners[e][this._listeners[e].length]=t}offElementsChanged(e,t){if(this._listeners[e])if(t){let i=this._listeners[e].indexOf(t);i!==-1&&this._listeners[e].splice(i,1)}else this._listeners[e].length=0}updateId(e,t){this._listeners[e]&&(this._listeners[t]=this._listeners[e],delete this._listeners[e])}};_r.$inject=["eventBus"];var Tk=1e3,io=class{constructor(){this._listeners={}}getComponent(e,t){let i=this._listeners[e];if(!i)return;let r;for(let s=0;s<i.length&&(r=i[s].callback(t),!r);s++);return r}getComponents(e,t){let i=this._listeners[e];if(!i)return;let r=[];for(let s=0;s<i.length;s++){let o=i[s].callback(t);o&&r.push(o)}if(r.length)return r}onGetComponent(e,t,i){if(Ie(t)&&(i=t,t=Tk),!Ce(t))throw new Error("priority must be a number");let r=this._getListeners(e),s,o,a={priority:t,callback:i};for(o=0;s=r[o];o++)if(s.priority<t){r.splice(o,0,a);return}r.push(a)}offGetComponent(e,t){let i=this._getListeners(e),r,s,o;if(t)for(o=i.length-1;r=i[o];o--)s=r.callback,s===t&&i.splice(o,1);else i.length=0}_getListeners(e){let t=this._listeners[e];return t||(this._listeners[e]=t=[]),t}};var ro=class extends z{constructor(e){super(e);let t=this._injector=e.injector;this._changeSupport=t.get("changeSupport"),this._components=t.get("components"),this._renderer=t.get("renderer")}getChildContext(){return{changeSupport:this._changeSupport,components:this._components,renderer:this._renderer,injector:this._injector}}render(){let e=this._components.getComponents("viewer");return E(1,"div","viewer-container",e&&e.map((t,i)=>F(2,t,null,i)),0)}};var Tr=class{constructor(e,t,i,r,s){let{container:o}=i;this._container=o,r.on("renderer.mount",()=>{or(F(2,ro,{injector:s}),o)}),r.on("renderer.unmount",()=>{or(null,o)})}getContainer(){return this._container}};Tr.$inject=["changeSupport","components","config.renderer","eventBus","injector"];var vg={__init__:["changeSupport","components","renderer"],changeSupport:["type",_r],components:["type",io],eventBus:["type",ye],renderer:["type",Tr]};var Si=class{constructor(e={}){let{injector:t}=e;if(!t){let{modules:i,config:r}=this._init(e);t=Mk(r,i)}this.get=t.get,this.invoke=t.invoke,this.get("eventBus").fire("viewer.init")}_init(e){let{modules:t,...i}=e;return{modules:t,config:i}}destroy(){this.get("eventBus").fire("viewer.destroy")}clear(){this.get("eventBus").fire("viewer.clear")}};function Mk(n,e){let t=[{config:["value",n]},vg].concat(e||[]),i=new xi(t);return i.init(),i}var Mr=class{constructor(e,t){this._eventBus=t,this._viewer=e}getDecision(){return this._viewer.getDecision()}updateId(e,t){var i=this.getDecision();if(e!==i)throw new Error("element !== decision");this._eventBus.fire("element.updateId",{element:e,newId:t}),e.id=t}};Mr.$inject=["viewer","eventBus"];var xg={__init__:["elementRegistry"],elementRegistry:["type",Mr]};var so=class extends z{constructor(e,t){super(e,t),this._viewer=t.injector.get("viewer")}render(){let{name:e}=this._viewer.getDecision();return E(1,"div","decision-properties",E(1,"h3","decision-name",e,0),2)}};var Rk=1500,Rr=class{constructor(e){e.onGetComponent("viewer",Rk,()=>so)}};Rr.$inject=["components"];var bg={__init__:["decisionProperties"],decisionProperties:["type",Rr]};var oo=class extends z{constructor(e,t){super(e,t),this._translate=t.injector.get("translate"),this._viewer=t.injector.get("viewer")}render(){let{decisionLogic:e,variable:t}=this._viewer.getDecision();return E(1,"div","literal-expression-properties",E(1,"table",null,[E(1,"tr",null,[E(1,"td",null,this._translate("Variable name:"),0),E(1,"td",null,E(1,"span",null,t.name||"-",0),2)],4),E(1,"tr",null,[E(1,"td",null,this._translate("Variable type:"),0),E(1,"td",null,E(1,"span",null,this._translate(t.typeRef||"")||"-",0),2)],4),E(1,"tr",null,[E(1,"td",null,this._translate("Expression language:"),0),E(1,"td",null,E(1,"span",null,e.expressionLanguage||"-",0),2)],4)],4),2)}};var Pk=500,Pr=class{constructor(e){e.onGetComponent("viewer",Pk,()=>oo)}};Pr.$inject=["components"];var wg={__depends__:[],__init__:["literalExpressionProperties"],literalExpressionProperties:["type",Pr]};var Dk=2e3,Dr=class{constructor(e){e.onGetComponent("viewer",Dk,()=>Kn)}};Dr.$inject=["components"];var Og={__init__:["poweredBy"],poweredBy:["type",Dr]};var ao=class extends z{constructor(e,t){super(e,t),this._viewer=t.injector.get("viewer")}render(){let{text:e}=this._viewer.getDecision().decisionLogic;return E(1,"div","textarea",E(1,"div","content",e,0),2)}};var Br=class{constructor(e){e.onGetComponent("viewer",()=>ao)}};Br.$inject=["components"];var kg={__init__:["textarea"],textarea:["type",Br]};var Ir=class extends z{constructor(t,i){super(t,i);$(this,"onClick",()=>{this._eventBus.fire("showDrd")});let{injector:r}=i;this._translate=r.get("translate"),this._eventBus=r.get("eventBus")}render(){return E(1,"div","view-drd",E(1,"button","view-drd-button",this._translate("View DRD"),0,{type:"button",onClick:this.onClick}),2,null,null,t=>this.node=t)}};Ir.$inject=["translate"];var Bk=2e3,$r=class{constructor(e,t,i,r){this._injector=r,this._viewer=t,e.onGetComponent("viewer",Bk,()=>{if(this.canViewDrd())return Ir}),i.on("showDrd",()=>{let s=r.get("_parent",!1),o=this.getDefinitions(),a=s.getView(o);s.open(a)})}canViewDrd(){let e=this._injector.get("_parent",!1);if(!e)return;let t=this.getDefinitions();return!!e.getView(t)}getDefinitions(){return Ik(this._viewer.getDecision())}};$r.$inject=["components","viewer","eventBus","injector"];function Ik(n){return n.$parent}var Cg={__init__:["viewDrd"],viewDrd:["type",$r]};var lo=class n extends Si{constructor(e={}){let t=n._createContainer();super(D(e,{renderer:{container:t}})),this._container=t}open(e){var t=this;return new Promise(function(i,r){var s;try{t._decision&&(t.clear(),t.get("eventBus").fire("renderer.unmount")),t._decision=e,t.get("eventBus").fire("import",e),t.get("eventBus").fire("renderer.mount")}catch(o){s=o}s?(s.warnings=s.warnings||[],r(s)):i({warnings:[]})})}_init(e){let{modules:t,additionalModules:i,...r}=e,s=t||this.getModules(),o=i||[],a=[{viewer:["value",this]}];return{modules:[...s,...o,...a],config:r}}on(e,t,i,r){return this.get("eventBus").on(e,t,i,r)}off(e,t){this.get("eventBus").off(e,t)}_emit(e,t){return this.get("eventBus").fire(e,t)}getDecision(){return this._decision}attachTo(e){if(!e)throw new Error("parentNode required");this.detach(),e.appendChild(this._container),this._emit("attach",{})}detach(){let e=this._container;e.parentNode&&(this._emit("detach",{}),$e(e))}destroy(){super.destroy(),this.detach()}getModules(){return n._getModules()}static _getModules(){return[xg,rt,bg,wg,Og,kg,Cg]}static _createContainer(){return le('<div class="dmn-literal-expression-container"></div>')}};var co=class{constructor(e){e.onGetComponent("viewer",()=>$k),e.onGetComponent("viewer",()=>Lk),e.onGetComponent("viewer",()=>Nk)}};$(co,"$inject",["components"]);function $k(n,{injector:e}){let i=e.get("components").getComponents("header");return E(1,"div","dmn-boxed-expression-section dmn-boxed-expression-header",i&&i.map((r,s)=>F(2,r,null,s)),0)}function Lk(n,{injector:e}){let i=e.get("components").getComponents("body");return E(1,"div","dmn-boxed-expression-section dmn-boxed-expression-body",i&&i.map((r,s)=>F(2,r,null,s)),0)}function Nk(n,{injector:e}){let i=e.get("components").getComponents("footer");return E(1,"div","dmn-boxed-expression-section dmn-boxed-expression-footer",i&&i.map((r,s)=>F(2,r,null,s)),0)}var uo=class{constructor(e){e.onGetComponent("viewer",()=>{let t=e.getComponents("table.before")||[];return()=>E(1,"div",null,t.map((i,r)=>F(2,i,null,r)),0)})}};$(uo,"$inject",["components"]);var Sg={__init__:["viewRenderer","tableJsSupport"],viewRenderer:["type",co],tableJsSupport:["type",uo]};var qk=2e3,Lr=class{constructor(e){e.onGetComponent("viewer",qk,()=>Kn)}};Lr.$inject=["components"];var Eg={__init__:["poweredBy"],poweredBy:["type",Lr]};var fo=class{constructor(e){e.onGetComponent("expression",({expression:t})=>{if(Q(t,"dmn:LiteralExpression"))return Fk})}};$(fo,"$inject",["components"]);function Fk({expression:n},e){let i=e.injector.get("literalExpression").getText(n);return E(1,"div","textarea",E(1,"div","content",i,0),2)}var Ei=class{getText(e){return e.get("text")}};var Ag={__init__:["literalExpressionComponent"],literalExpressionComponent:["type",fo],literalExpression:["type",Ei]};var ho=class{getParameters(e){return e.get("formalParameter")}getBody(e){return e.get("body")}getKind(e){return e.get("kind")||"FEEL"}};var po=class{constructor(e){e.onGetComponent("expression",({expression:t})=>{if(Q(t,"dmn:FunctionDefinition"))return jk})}};$(po,"$inject",["components"]);function jk({expression:n},e){let t=e.injector.get("functionDefinition"),i=t.getKind(n),r=t.getParameters(n),s=t.getBody(n);return E(1,"div","function-definition",[F(2,Qk,{kind:i}),F(2,zk,{parameters:r}),F(2,Hk,{expression:s})],4)}var Vk={FEEL:"F",Java:"J",PMML:"P"};function Qk({kind:n},e){let t=e.injector.get("translate");return E(1,"div","function-definition-kind",Vk[n],0,{title:t("Function kind: {kind}",{kind:n})})}function zk({parameters:n}){return E(1,"div","function-definition-parameters",E(1,"div",null,[xe("("),n.reduce((e,t)=>e.concat(F(2,Wk,{parameter:t}),", "),[]).slice(0,-1),xe(")")],0),2)}function Wk({parameter:n}){let{name:e,typeRef:t}=n,i=e||"<unnamed>";return E(1,"span",null,t?`${i}: ${t}`:i,0)}function Hk({expression:n},e){let t=e.components.getComponent("expression",{expression:n});return E(1,"div","function-definition-body",F(2,t,{expression:n}),2)}var _g={__init__:["functionDefinitionComponent"],functionDefinition:["type",ho],functionDefinitionComponent:["type",po]};var Nr=class extends z{constructor(t,i){super(t,i);$(this,"onClick",()=>{this._eventBus.fire("showDrd")});let{injector:r}=i;this._translate=r.get("translate"),this._eventBus=r.get("eventBus")}render(){return E(1,"div","view-drd",E(1,"button","view-drd-button",this._translate("View DRD"),0,{type:"button",onClick:this.onClick}),2,null,null,t=>this.node=t)}};Nr.$inject=["translate"];var Xk=2e3,qr=class{constructor(e,t,i){this._injector=i,e.onGetComponent("viewer",Xk,()=>{if(this.canViewDrd())return Nr}),t.on("showDrd",()=>{let r=i.get("_parent",!1),s=r.getDefinitions(),o=r.getView(s);r.open(o)})}canViewDrd(){let e=this._injector.get("_parent",!1);if(!e)return;let t=e.getDefinitions();return!!e.getView(t)}};qr.$inject=["components","eventBus","injector"];var Tg={__init__:["viewDrd"],viewDrd:["type",qr]};function Du(n,e){let t=e.injector.get("viewer"),{name:i}=t.getRootElement();return E(1,"div","element-properties",E(1,"h2","element-name",i,0),2)}var Fr=class{constructor(e){e.onGetComponent("header",()=>Du)}};Fr.$inject=["components"];var Mg={__init__:["elementProperties"],elementProperties:["type",Fr]};var Uk=100,jr=class{constructor(e){e.onGetComponent("body",()=>Yk),e.onGetComponent("expression",Uk,()=>Gk)}};$(jr,"$inject",["components"]);function Yk(n,{injector:e}){let t=e.get("components"),r=e.get("viewer").getRootElement(),s=Kk(r),o=t.getComponent("expression",{expression:s});return F(2,o,{expression:s})}function Kk(n){if(Q(n,"dmn:Decision"))return n.get("decisionLogic");if(Q(n,"dmn:BusinessKnowledgeModel"))return n.get("encapsulatedLogic")}function Gk({expression:n}){return E(1,"div",null,E(1,"span",null,[xe("Expression of type "),n.$type,xe(" is not supported.")],0,{style:"color:red;"}),2)}var Rg={__init__:["elementLogic"],elementLogic:["type",jr]};var Ai=class{constructor(e){this._viewer=e}getName(){let e=this.getVariable(),t=this._getElement();return(e?e.get("name"):null)||t.get("name")}getType(){let e=this.getVariable();return e?e.get("typeRef"):"Any"}_getElement(){return this._viewer.getRootElement()}getVariable(){return this._getElement().get("variable")}};$(Ai,"$inject",["viewer"]);var Vr=class{constructor(e){e.onGetComponent("footer",()=>Jk)}};$(Vr,"$inject",["components"]);function Jk(n,e){let t=e.injector.get("elementVariable"),i=e.injector.get("translate"),r=t.getName(),s=t.getType();return E(1,"div","element-variable",[E(1,"h2",null,xe("Result"),2),E(1,"div","element-variable-name",[E(1,"span","element-variable-name-label",i("Variable name"),0),E(1,"span",null,r,0)],4),E(1,"div","element-variable-type",[E(1,"span","element-variable-type-label",i("Variable type"),0),E(1,"span",null,s,0)],4)],4)}var Pg={__init__:["elementVariableComponent"],elementVariable:["type",Ai],elementVariableComponent:["type",Vr]};var Qr=class n extends Si{constructor(e={}){let t=n._createContainer();super(D(e,{renderer:{container:t}})),this._container=t}open(e){let t=this.get("eventBus");return new Promise((i,r)=>{let s;try{this.getRootElement()&&(this.clear(),t.fire("renderer.unmount")),this._setRootElement(e),t.fire("import",e),t.fire("renderer.mount")}catch(o){s=o}s?(s.warnings=s.warnings||[],r(s)):i({warnings:[]})})}_init(e){let{modules:t,additionalModules:i,...r}=e,s=t||this.getModules(),o=i||[],a=[{viewer:["value",this]}];return{modules:[...s,...o,...a],config:r}}on(e,t,i,r){return this.get("eventBus").on(e,t,i,r)}off(e,t){this.get("eventBus").off(e,t)}_emit(e,t){return this.get("eventBus").fire(e,t)}getRootElement(){return this._root}_setRootElement(e){this._root=e}attachTo(e){if(!e)throw new Error("parentNode required");this.detach(),e.appendChild(this._container),this._emit("attach",{})}detach(){let e=this._container;e.parentNode&&(this._emit("detach",{}),$e(e))}destroy(){super.destroy(),this.detach()}getModules(){return[Sg,rt,Eg,Tg,Mg,Rg,_g,Ag,Pg]}static _createContainer(){return le('<div class="dmn-boxed-expression-container"></div>')}};function Bu(n){let e={variables:[],rootElement:dC(n)};for(let t=n;t;t=t.$parent)Zk(t,e);return e.variables}function Zk(n,e){zr(n,"dmn:Decision")?eC(n,e):zr(n,"dmn:BusinessKnowledgeModel")?tC(n,e):zr(n,"dmn:Expression")&&uC(n,e)}function eC(n,e){for(let t of n.get("informationRequirement"))nC(t,e);for(let t of n.get("knowledgeRequirement"))Bg(t,e)}function tC(n,e){for(let t of n.get("knowledgeRequirement"))Bg(t,e)}function nC(n,e){let t=n.get("requiredInput");t&&iC(t,e);let i=n.get("requiredDecision");i&&rC(i,e)}function iC(n,e){let t=Iu(n,e.rootElement);if(!t)return;let i=t.get("name");i&&e.variables.push({name:i,origin:t})}function rC(n,e){let t=Iu(n,e.rootElement);if(!t)return;let i=t.get("name");if(!i)return;let r={name:i,origin:t},s=t.get("decisionLogic");s&&sC(s,r,e),e.variables.push(r)}function sC(n,e,t){if(zr(n,"dmn:DecisionTable")){let i=n.get("output");oC(i,e,t)}}function oC(n,e,t){if(n.length===1){let r={...Dg(n[0]),name:e.name};Object.assign(e,r);return}let i=n.map(Dg);e.entries=i.filter(r=>!!r.name)}function Dg(n){let e={name:n.name};return n.typeRef&&(e.detail=n.typeRef),e}function Bg(n,e){let t=n.get("requiredKnowledge");t&&aC(t,e)}function aC(n,e){let t=Iu(n,e.rootElement);t&&zr(t,"dmn:BusinessKnowledgeModel")&&lC(t,e)}function lC(n,e){let t=n.get("name");if(!t)return;let i={name:t,origin:n},r=n.get("encapsulatedLogic");r&&cC(r,i),e.variables.push(i)}function cC(n,e,t){let r=n.get("formalParameter").map((s,o)=>{let a={name:s.get("name")||`param ${o+1}`,type:s.get("typeRef")};return a.type||delete a.type,a});Object.assign(e,{type:"function",params:r})}function uC(n,e){zr(n,"dmn:FunctionDefinition")&&fC(n,e)}function fC(n,e){let t=n.get("formalParameter");for(let i of t)hC(i,e)}function hC(n,e){let t=n.get("name");if(!t)return;let i={name:t,origin:n};n.get("typeRef")&&(i.detail=n.get("typeRef")),e.variables.push(i)}function dC(n){let e=n;for(;e.$parent;)e=e.$parent;return e}function Iu(n,e){let t=n.get("href");if(!t||!t.startsWith("#"))return;let i=t.slice(1);return e.get("drgElement").find(s=>s.get("id")===i)}function zr(n,e){return n.$instanceOf(e)}var tl=class{constructor(e){e.registerProvider(this)}getVariables(e,t){return e.concat(Bu(t))}};tl.$inject=["variableResolver"];var pC=["string","boolean","number","date","time","dateTime","dayTimeDuration","yearMonthDuration","Any"],mo=class{constructor(e){this._dataTypes=e||pC}getAll(){return this._dataTypes}};mo.$inject=["config.dataTypes"];var mC=1e3;function st(n){this._eventBus=n}st.$inject=["eventBus"];function gC(n,e){return function(t){return n.call(e||null,t.context,t.command,t)}}st.prototype.on=function(n,e,t,i,r,s){if((Ie(e)||Ce(e))&&(s=r,r=i,i=t,t=e,e=null),Ie(t)&&(s=r,r=i,i=t,t=mC),dt(r)&&(s=r,r=!1),!Ie(i))throw new Error("handlerFn must be a function");_e(n)||(n=[n]);var o=this._eventBus;B(n,function(a){var l=["commandStack",a,e].filter(function(c){return c}).join(".");o.on(l,t,r?gC(i,s):i,s)})};st.prototype.canExecute=_n("canExecute");st.prototype.preExecute=_n("preExecute");st.prototype.preExecuted=_n("preExecuted");st.prototype.execute=_n("execute");st.prototype.executed=_n("executed");st.prototype.postExecute=_n("postExecute");st.prototype.postExecuted=_n("postExecuted");st.prototype.revert=_n("revert");st.prototype.reverted=_n("reverted");function _n(n){return function(t,i,r,s,o){(Ie(t)||Ce(t))&&(o=s,s=r,r=i,i=t,t=null),this.on(t,n,i,r,s,o)}}var Ig="id",go=class extends st{constructor(e){super(e),this.executed("element.updateProperties",this.updateIds.bind(this))}updateIds({context:e}){let{element:t,oldProperties:i,properties:r}=e,s=Ot(t);if(this.shouldSkipUpdate(s,i,r))return;let o=vC(s);o.get("drgElement").forEach(c=>{xC(c,i.id,r.id)}),o.get("artifact").forEach(c=>{bC(c,i.id,r.id)})}shouldSkipUpdate(e,t,i){return!yC(t,i)||!Q(e,"dmn:DRGElement")&&!Q(e,"dmn:TextAnnotation")}};go.$inject=["eventBus"];function yC(n,e){return Ig in n&&Ig in e}function vC(n){let e=n;for(;!Q(e,"dmn:Definitions");)e=e.$parent;return e}function xC(n,e,t){B({authorityRequirement:()=>{n.authorityRequirement.forEach(r=>{let{requiredAuthority:s,requiredDecision:o,requiredInput:a}=r;s&&s.href===`#${e}`&&(s.href=`#${t}`),o&&o.href===`#${e}`&&(o.href=`#${t}`),a&&a.href===`#${e}`&&(a.href=`#${t}`)})},informationRequirement:()=>{n.informationRequirement.forEach(r=>{let{requiredDecision:s,requiredInput:o}=r;s&&s.href===`#${e}`&&(s.href=`#${t}`),o&&o.href===`#${e}`&&(o.href=`#${t}`)})},knowledgeRequirement:()=>{n.knowledgeRequirement.forEach(r=>{let{requiredKnowledge:s}=r;s&&s.href===`#${e}`&&(s.href=`#${t}`)})}},(r,s)=>{n[s]&&r()})}function bC(n,e,t){B({sourceRef:()=>{let{sourceRef:r}=n;r.href===`#${e}`&&(r.href=`#${t}`)},targetRef:()=>{let{targetRef:r}=n;r.href===`#${e}`&&(r.href=`#${t}`)}},(r,s)=>{n[s]&&r()})}var $u="id",Wr=class{constructor(e,t){this._elementRegistry=e,this._moddle=t}execute(e){let{element:t,properties:i}=e,r=Ot(t),{changed:s,oldProperties:o}=this.updateProperties(r,i);return e.oldProperties=o,[...s,t]}revert(e){let{element:t,oldProperties:i}=e;var r=Ot(t),{changed:s}=this.updateProperties(r,i);return[...s,t]}updateProperties(e,t){let i=this._moddle.ids;return wt(t,(r,s,o)=>{let a=e.get(o);if($g(s)){if(!Lg(a)&&!$g(a))throw new Error(`non-existing property <${o}>: cannot update values`);let{changed:l,oldProperties:c}=this.updateProperties(a,s);return{changed:[...r.changed,...l,a],oldProperties:{...r.oldProperties,[o]:c}}}return o===$u&&wC(e,s)&&(i.unclaim(e[$u]),this._elementRegistry.updateId(e,s),i.claim(s,e)),e.set(o,s),{changed:r.changed,oldProperties:{...r.oldProperties,[o]:a}}},{changed:[],oldProperties:{}})}};Wr.$inject=["elementRegistry","moddle"];function wC(n,e){return n[$u]!==e}function $g(n){return ht(n)&&dt(n)&&!Lg(n)}function Lg(n){return!!(n!=null&&n.$type)}var yo=class{constructor(e,t,i){this._commandStack=e,this._viewer=t,this._eventBus=i,OC(this._getHandlers(),e)}_getHandlers(){return{"element.updateProperties":Wr}}updateProperties(e,t){let i={element:e,properties:t};this._commandStack.execute("element.updateProperties",i)}};yo.$inject=["commandStack","viewer","eventBus"];function OC(n,e){B(n,function(t,i){e.registerHandler(i,t)})}var Kg=Pb(qg());function SC(n){return n&&n.__esModule&&Object.prototype.hasOwnProperty.call(n,"default")?n.default:n}var Lu,Fg;function EC(){if(Fg)return Lu;Fg=1,Lu=n;function n(e,t){return e^t}return Lu}var Nu,jg;function AC(){if(jg)return Nu;jg=1;var n=/\b(Array|Date|Object|Math|JSON)\b/g;Nu=function(s,o){var a=i(e(s));return o&&typeof o=="string"&&(o=r(o)),o?t(s,a,o):a};function e(s){return s.replace(/\.\w+|\w+ *\(|"[^"]*"|'[^']*'|\/([^/]+)\//g,"").replace(n,"").match(/[a-zA-Z_]\w*/g)||[]}function t(s,o,a){var l=/\.\w+|\w+ *\(|"[^"]*"|'[^']*'|\/([^/]+)\/|[a-zA-Z_]\w*/g;return s.replace(l,function(c){return c[c.length-1]=="("||~o.indexOf(c)?a(c):c})}function i(s){for(var o=[],a=0;a<s.length;a++)~o.indexOf(s[a])||o.push(s[a]);return o}function r(s){return function(o){return s+o}}return Nu}var qu,Vg;function _C(){if(Vg)return qu;Vg=1;var n=EC(),e=AC();qu=t;function t(r,s){if(!(this instanceof t))return new t(r,s);if(this.node=this.start=this.peeked=r,this.root=s,this.closingTag=!1,this._revisit=!0,this._selects=[],this._rejects=[],r&&this.higher(r))throw new Error("root must be a parent or ancestor to node")}t.prototype.reset=function(r){return this.node=r||this.start,this},t.prototype.revisit=function(r){return this._revisit=r==null?!0:r,this},t.prototype.opening=function(){return this.node.nodeType==1&&(this.closingTag=!1),this},t.prototype.atOpening=function(){return!this.closingTag},t.prototype.closing=function(){return this.node.nodeType==1&&(this.closingTag=!0),this},t.prototype.atClosing=function(){return this.closingTag},t.prototype.next=i("nextSibling","firstChild"),t.prototype.previous=t.prototype.prev=i("previousSibling","lastChild");function i(r,s){var o=r=="nextSibling";return function(l,c,u){l=this.compile(l),c=c&&c>0?c:1;for(var f=this.node,h=this.closingTag,d=this._revisit;f;){if(n(o,h)&&f[s])f=f[s],h=!o;else if(f.nodeType==1&&!f[s]&&n(o,h)){if(h=o,!d)continue}else if(f[r])f=f[r],h=!o;else if(f=f.parentNode,h=o,!d)continue;if(!f||this.higher(f,this.root))break;if(l(f)&&this.selects(f,u)&&this.rejects(f,u)){if(--c)continue;return u||(this.node=f),this.closingTag=h,f}}return null}}return t.prototype.select=function(r){return r=this.compile(r),this._selects.push(r),this},t.prototype.selects=function(r,s){var o=this._selects,a=o.length;if(!a)return!0;for(var l=0;l<a;l++)if(o[l].call(this,r,s))return!0;return!1},t.prototype.reject=function(r){return r=this.compile(r),this._rejects.push(r),this},t.prototype.rejects=function(r,s){var o=this._rejects,a=o.length;if(!a)return!0;for(var l=0;l<a;l++)if(o[l].call(this,r,s))return!1;return!0},t.prototype.higher=function(r){var s=this.root;if(!s)return!1;for(r=r.parentNode;r&&r!=s;)r=r.parentNode;return r!=s},t.prototype.compile=function(r){switch(typeof r){case"number":return function(s){return r==s.nodeType};case"string":return new Function("node","Object.freeze(node); return "+e(r,"node."));case"function":return r;default:return function(){return!0}}},t.prototype.peak=t.prototype.peek=function(r,s){return arguments.length==1&&(s=r,r=!0),s=s==null?1:s,s?s>0?this.next(r,s,!0):this.prev(r,Math.abs(s),!0):this.node},t.prototype.use=function(r){return r(this),this},qu}var TC=_C(),Qg=SC(TC),St=window.getSelection();function ju(n){St==null||St.removeAllRanges(),St==null||St.addRange(n)}function zg(){return St}function MC(n){if(!(St!=null&&St.rangeCount))return null;var e=St.focusNode;return nl(e)&&(e=e.parentNode),n==e||n.contains(e)}function Wg(n,e){var t=RC(n,e);ju(t)}function Hg(n){if(!MC(n))return null;var e=St.getRangeAt(0),t=e.startContainer,i=e.endContainer,r=e.startOffset,s=e.endOffset,o=Qg(n.firstChild,n),a=o.node,l,c=!1,u,f=0;function h(p,m){return arguments.length===1&&(m=p),p.parentNode===i&&m==i.childNodes[s]}function d(p,m){return arguments.length===1&&(m=p),p.parentNode===t&&m==t.childNodes[r]}for(;a&&(d(a)&&!c&&(u=f),!(h(a)||Fu(a)&&i===a));){if(c||(Fu(a)||l&&l.nextSibling==a&&(Xg(a)||Ug(a)))&&f++,nl(a)){if(t===a&&(u=f+r),i===a){f+=s;break}f+=a.textContent.length}if((nl(a)||c)&&(d(a,a.nextSibling)&&(u=f),h(a,a.nextSibling)))break;l=a,a=o.next(),c=o.closingTag}return{start:typeof u=="undefined"?f:u,end:f}}function RC(n,e){for(var t=e.start,i=e.end,r=document.createRange(),s=Qg(n.firstChild,n),o=s.node,a=!1,l=0,c;o;){if(l===t&&(a?r.setStartAfter(o):r.setStartBefore(o)),l===i)return a?r.setEndAfter(o):r.setEndBefore(o),r;if(a||(Fu(o)||o.previousSibling&&(Xg(o)||Ug(o)))&&l++,nl(o)){if(c=o.textContent.length,l<=t&&l+c>t&&r.setStart(o,t-l),l+c>i)return r.setEnd(o,i-l),r;l+=c}o=s.next(),a=s.closingTag}return l<=t&&(n.lastChild?r.setStartAfter(n.lastChild):r.setStart(n,0)),n.lastChild?r.setEndAfter(n.lastChild):r.setEnd(n,0),r}function nl(n){return n.nodeType===3}function Fu(n){return n.nodeType===1&&n.nodeName==="BR"}function Xg(n){return n.nodeType===1&&n.nodeName==="DIV"}function Ug(n){return n.nodeType===1&&n.nodeName==="P"}function Yg(n,e,t){var i=n.start,r=i,s=e.substring(i);t.lastIndexOf(s)===t.length-s.length&&(e=e.substring(0,e.length-s.length),t=t.substring(0,t.length-s.length));var o=PC(e,t);return o&&(o.type==="remove"?r=o.newStart:r=o.newEnd),DC(r)}function PC(n,e){var t,i,r,s=0,o,a,l=0;for(e.length>n.length?(i=e,o=n):(i=n,o=e);s<i.length;)r=i.charAt(s),a=o.charAt(l),r!==a?(t||(t={l_start:s,s_start:l}),s++):(t&&!t.complete&&(t.l_end=s,t.s_end=l,t.complete=!0),l++,s++);if(t&&!t.complete&&(t.complete=!0,t.s_end=o.length,t.l_end=i.length),!!t)return e.length>n.length?{newStart:t.l_start,newEnd:t.l_end,type:"add"}:{newStart:t.s_start,newEnd:t.s_end,type:e.length<n.length?"remove":"replace"}}function DC(n,e){return{start:n,end:e===void 0?n:e}}var vo=class extends z{constructor(t,i){super(t,i);$(this,"onFocus",t=>{var i=this.props.onFocus;this.setState({focussed:!0}),typeof i=="function"&&i(t)});$(this,"onBlur",t=>{let{onBlur:i,onChange:r,value:s}=this.props;if(this.setState({focussed:!1}),typeof r=="function"&&this.node){let o=il(this.node);o!==s&&r(o)}typeof i=="function"&&i(t)});$(this,"onkeydown",t=>{if(t.which===13){if(t.preventDefault(),this.props.ctrlForNewline&&!$C(t)||this.props.singleLine)return;t.stopPropagation(),IC(),this.onInput(t)}});$(this,"onInput",t=>{var i=this.props.onInput;if(typeof i=="function"){var r=il(this.node);i(r)}});$(this,"onPaste",t=>{if(this.props.singleLine){let i=(t.clipboardData||window.clipboardData).getData("text");document.execCommand("insertText",!1,i.replace(/\n/g," ")),t.preventDefault()}});this.state={}}componentWillUpdate(t,i){var r=this.node,s=i.focussed&&Hg(r);this.selected=s&&{range:s,text:il(r)}}componentDidUpdate(){var t=this.selected;if(!t)return;let i=t.range,r=t.text,s=this.node,o=il(s),a=o!==r?Yg(i,r,o):i;Wg(s,a)}getClassName(){let{className:t,placeholder:i,value:r}=this.props;return[t||"","content-editable",!r&&i?"placeholder":""].join(" ")}render(t){var{label:i,value:r,placeholder:s}=t;return r=(0,Kg.default)(r).replace(/\r?\n/g,"<br/>")+"<br/>",E(1,"div",this.getClassName(),null,1,{"aria-label":i,role:"textbox","aria-multiline":!this.props.singleLine,tabIndex:"0",contentEditable:"true",spellCheck:"false","data-placeholder":s||"",onInput:this.onInput,onkeypress:this.onkeypress,onPaste:this.onPaste,onFocus:this.onFocus,onBlur:this.onBlur,onkeydown:this.onkeydown,dangerouslySetInnerHTML:{__html:r}},null,o=>this.node=o)}};function BC(){return document.createElement("br")}function il(n){return n.innerText.replace(/\n$/,"")}function IC(){var n=zg(),e=n.getRangeAt(0);if(e){var t=e.cloneRange(),i=BC();t.deleteContents(),t.insertNode(i),t.setStartAfter(i),t.setEndAfter(i),ju(t)}}function $C(n){return n.metaKey||n.ctrlKey}var xo=class extends z{constructor(t,i){super(t,i);$(this,"onFocus",t=>{this.setState({focussed:!0});var{onFocus:i}=this.props;typeof i=="function"&&i(t)});$(this,"onBlur",t=>{this.setState({focussed:!1});let{invalid:i}=this.state;i&&this.setState({changing:!1,invalid:!1});let{onBlur:r}=this.props;typeof r=="function"&&r(t)});this.state={changing:!1,focussed:!1};let{injector:r}=i,s=r.get("debounceInput");this.inputChanged=s(o=>{let{onChange:a}=this.props;typeof a=="function"&&a(o);let l=this.state.changing;this.setState({changing:l===o?!1:l})}),this.onInput=o=>{var a=this.props.validate||function(){},l=a(o);this.setState({changing:o,invalid:l}),l||this.inputChanged(o)}}getClassName(){var{className:t,value:i}=this.props,{changing:r,focussed:s,invalid:o}=this.state;return t+=" editable",s&&(t+=" focussed"),o&&(t+=" invalid"),!i&&!r&&(t+=" empty"),t}getDisplayValue(){var{value:t,placeholder:i}=this.props,{focussed:r,changing:s}=this.state;return typeof s=="string"&&(t=s),t||(t=r?"":i||""),t}getEditor(t={}){return F(2,vo,{className:t.className,ctrlForNewline:this.props.ctrlForNewline,label:this.props.label,onFocus:this.onFocus,onBlur:this.onBlur,onInput:this.onInput,value:this.getDisplayValue()})}};var Qu=[],ey=[];(()=>{let n="lc,34,7n,7,7b,19,,,,2,,2,,,20,b,1c,l,g,,2t,7,2,6,2,2,,4,z,,u,r,2j,b,1m,9,9,,o,4,,9,,3,,5,17,3,3b,f,,w,1j,,,,4,8,4,,3,7,a,2,t,,1m,,,,2,4,8,,9,,a,2,q,,2,2,1l,,4,2,4,2,2,3,3,,u,2,3,,b,2,1l,,4,5,,2,4,,k,2,m,6,,,1m,,,2,,4,8,,7,3,a,2,u,,1n,,,,c,,9,,14,,3,,1l,3,5,3,,4,7,2,b,2,t,,1m,,2,,2,,3,,5,2,7,2,b,2,s,2,1l,2,,,2,4,8,,9,,a,2,t,,20,,4,,2,3,,,8,,29,,2,7,c,8,2q,,2,9,b,6,22,2,r,,,,,,1j,e,,5,,2,5,b,,10,9,,2u,4,,6,,2,2,2,p,2,4,3,g,4,d,,2,2,6,,f,,jj,3,qa,3,t,3,t,2,u,2,1s,2,,7,8,,2,b,9,,19,3,3b,2,y,,3a,3,4,2,9,,6,3,63,2,2,,1m,,,7,,,,,2,8,6,a,2,,1c,h,1r,4,1c,7,,,5,,14,9,c,2,w,4,2,2,,3,1k,,,2,3,,,3,1m,8,2,2,48,3,,d,,7,4,,6,,3,2,5i,1m,,5,ek,,5f,x,2da,3,3x,,2o,w,fe,6,2x,2,n9w,4,,a,w,2,28,2,7k,,3,,4,,p,2,5,,47,2,q,i,d,,12,8,p,b,1a,3,1c,,2,4,2,2,13,,1v,6,2,2,2,2,c,,8,,1b,,1f,,,3,2,2,5,2,,,16,2,8,,6m,,2,,4,,fn4,,kh,g,g,g,a6,2,gt,,6a,,45,5,1ae,3,,2,5,4,14,3,4,,4l,2,fx,4,ar,2,49,b,4w,,1i,f,1k,3,1d,4,2,2,1x,3,10,5,,8,1q,,c,2,1g,9,a,4,2,,2n,3,2,,,2,6,,4g,,3,8,l,2,1l,2,,,,,m,,e,7,3,5,5f,8,2,3,,,n,,29,,2,6,,,2,,,2,,2,6j,,2,4,6,2,,2,r,2,2d,8,2,,,2,2y,,,,2,6,,,2t,3,2,4,,5,77,9,,2,6t,,a,2,,,4,,40,4,2,2,4,,w,a,14,6,2,4,8,,9,6,2,3,1a,d,,2,ba,7,,6,,,2a,m,2,7,,2,,2,3e,6,3,,,2,,7,,,20,2,3,,,,9n,2,f0b,5,1n,7,t4,,1r,4,29,,f5k,2,43q,,,3,4,5,8,8,2,7,u,4,44,3,1iz,1j,4,1e,8,,e,,m,5,,f,11s,7,,h,2,7,,2,,5,79,7,c5,4,15s,7,31,7,240,5,gx7k,2o,3k,6o".split(",").map(e=>e?parseInt(e,36):1);for(let e=0,t=0;e<n.length;e++)(e%2?ey:Qu).push(t=t+n[e])})();function LC(n){if(n<768)return!1;for(let e=0,t=Qu.length;;){let i=e+t>>1;if(n<Qu[i])t=i;else if(n>=ey[i])e=i+1;else return!0;if(e==t)return!1}}function Gg(n){return n>=127462&&n<=127487}var Jg=8205;function ty(n,e,t=!0,i=!0){return(t?ny:NC)(n,e,i)}function ny(n,e,t){if(e==n.length)return e;e&&iy(n.charCodeAt(e))&&ry(n.charCodeAt(e-1))&&e--;let i=Vu(n,e);for(e+=Zg(i);e<n.length;){let r=Vu(n,e);if(i==Jg||r==Jg||t&&LC(r))e+=Zg(r),i=r;else if(Gg(r)){let s=0,o=e-2;for(;o>=0&&Gg(Vu(n,o));)s++,o-=2;if(s%2==0)break;e+=2}else break}return e}function NC(n,e,t){for(;e>0;){let i=ny(n,e-2,t);if(i<e)return i;e--}return 0}function Vu(n,e){let t=n.charCodeAt(e);if(!ry(t)||e+1==n.length)return t;let i=n.charCodeAt(e+1);return iy(i)?(t-55296<<10)+(i-56320)+65536:t}function iy(n){return n>=56320&&n<57344}function ry(n){return n>=55296&&n<56320}function Zg(n){return n<65536?1:2}var J=class n{lineAt(e){if(e<0||e>this.length)throw new RangeError(`Invalid position ${e} in document of length ${this.length}`);return this.lineInner(e,!1,1,0)}line(e){if(e<1||e>this.lines)throw new RangeError(`Invalid line number ${e} in ${this.lines}-line document`);return this.lineInner(e,!0,1,0)}replace(e,t,i){[e,t]=Kr(this,e,t);let r=[];return this.decompose(0,e,r,2),i.length&&i.decompose(0,i.length,r,3),this.decompose(t,this.length,r,1),Xr.from(r,this.length-(t-e)+i.length)}append(e){return this.replace(this.length,this.length,e)}slice(e,t=this.length){[e,t]=Kr(this,e,t);let i=[];return this.decompose(e,t,i,0),Xr.from(i,t-e)}eq(e){if(e==this)return!0;if(e.length!=this.length||e.lines!=this.lines)return!1;let t=this.scanIdentical(e,1),i=this.length-this.scanIdentical(e,-1),r=new Mi(this),s=new Mi(e);for(let o=t,a=t;;){if(r.next(o),s.next(o),o=0,r.lineBreak!=s.lineBreak||r.done!=s.done||r.value!=s.value)return!1;if(a+=r.value.length,r.done||a>=i)return!0}}iter(e=1){return new Mi(this,e)}iterRange(e,t=this.length){return new ll(this,e,t)}iterLines(e,t){let i;if(e==null)i=this.iter();else{t==null&&(t=this.lines+1);let r=this.line(e).from;i=this.iterRange(r,Math.max(r,t==this.lines+1?this.length:t<=1?0:this.line(t-1).to))}return new cl(i)}toString(){return this.sliceString(0)}toJSON(){let e=[];return this.flatten(e),e}constructor(){}static of(e){if(e.length==0)throw new RangeError("A document must have at least one line");return e.length==1&&!e[0]?n.empty:e.length<=32?new mt(e):Xr.from(mt.split(e,[]))}},mt=class n extends J{constructor(e,t=qC(e)){super(),this.text=e,this.length=t}get lines(){return this.text.length}get children(){return null}lineInner(e,t,i,r){for(let s=0;;s++){let o=this.text[s],a=r+o.length;if((t?i:a)>=e)return new Wu(r,a,i,o);r=a+1,i++}}decompose(e,t,i,r){let s=e<=0&&t>=this.length?this:new n(sy(this.text,e,t),Math.min(t,this.length)-Math.max(0,e));if(r&1){let o=i.pop(),a=al(s.text,o.text.slice(),0,s.length);if(a.length<=32)i.push(new n(a,o.length+s.length));else{let l=a.length>>1;i.push(new n(a.slice(0,l)),new n(a.slice(l)))}}else i.push(s)}replace(e,t,i){if(!(i instanceof n))return super.replace(e,t,i);[e,t]=Kr(this,e,t);let r=al(this.text,al(i.text,sy(this.text,0,e)),t),s=this.length+i.length-(t-e);return r.length<=32?new n(r,s):Xr.from(n.split(r,[]),s)}sliceString(e,t=this.length,i=` method in anonymousFunctionfc9810193db00.tg.Ga.anonymousObjectfc98101948605.constructor.anonymousObjectfc9810194b505.constructor.anonymousObjectfc9810194ea05.constructor.st.yo
H A Ddmn-modeler.production.min.js1939 "></span>`),document.body.appendChild(this._dragImage),t.dataTransfer.setDragImage&&t.dataTransfer.setDragImage(this._dragImage,0,0),e instanceof pt?jW(e,i):e instanceof mt&&FW(e,i),this._dragAndDrop.startDrag(e,t)}};Rc.$inject=["components","elementRegistry","eventBus","dragAndDrop","renderer","rules","sheet","translate"];function $W(n,e,t){let i=e.get(n.dataset.colId);if(!i)return-1;let{cols:r}=t.getRoot();return r.indexOf(i)}function p2(n,e,t){let i=n.dataset.rowId;if(!i)return;let r=pn(`[data-row-id=${i}]`,e);k(r,o=>{Tc(o)&&(ee(o).add("dragover"),ee(o).add(t))})}function m2(n,e,t){let i=n.dataset.colId;if(!i)return;let r=pn(`[data-col-id=${i}]`,e);k(r,o=>{Tc(o)&&(ee(o).add("dragover"),ee(o).add(t))})}function tw(n){let e=pn(".dragover",n);k(e,t=>{Tc(t)&&(ee(t).remove("dragover"),ee(t).remove("top"),ee(t).remove("right"),ee(t).remove("bottom"),ee(t).remove("left"))})}function jW(n,e){let t=pn(`[data-row-id=${n.id}]`,e);k(t,i=>{Tc(i)&&ee(i).add("dragged")})}function FW(n,e){let t=pn(`[data-col-id=${n.id}]`,e);k(t,i=>{Tc(i)&&ee(i).add("dragged")})}function qW(n){let e=pn(".dragged",n);k(e,t=>{Tc(t)&&ee(t).remove("dragged")})}function g2(n,e){let t=e.getBoundingClientRect();return n.clientX<t.left+t.width/2?iw:BW}function y2(n,e){let t=e.getBoundingClientRect();return n.clientY<t.top+t.height/2?nw:NW}function VW(n,e,t,i){return i.indexOf(n)>i.indexOf(e)&&(e=WW(e,i)),t===nw?zW(e,i):e}function HW(n,e,t,i){return i.indexOf(n)>i.indexOf(e)&&(e=QW(e,i)),t===iw?UW(e,i):e}function zW(n,e){let t=e.indexOf(n);return e[Math.max(0,t-1)]}function WW(n,e){let t=e.indexOf(n);return e[Math.min(e.length-1,t+1)]}function UW(n,e){let t=e.indexOf(n);if(Te(n)){let i=e.filter(o=>Te(o))[0],r=e.indexOf(i);return e[Math.max(r,t-1)]}return e[Math.max(0,t-1)]}function QW(n,e){let t=e.indexOf(n);if(ie(n)){let i=e.filter(s=>ie(s)),r=i[i.length-1],o=e.indexOf(r);return e[Math.min(o,t+1)]}return e[Math.min(e.length-1,t+1)]}function Tc(n){return n&&(n.nodeType===1||n.nodeType==11)}var v2={__depends__:[d2,El],__init__:["dmnDragAndDrop"],dmnDragAndDrop:["type",Rc]};var nd=class extends L{constructor(t,i){super(t,i);M(this,"onElementsChanged",()=>{this.forceUpdate()});M(this,"changeDescription",t=>{this._modeling.updateProperties(this._element,{description:t})});this._elementRegistry=i.injector.get("elementRegistry"),this._modeling=i.injector.get("modeling"),this._changeSupport=this.context.changeSupport;let{id:r}=this.props.context;this._element=this._elementRegistry.get(r)}componentWillMount(){this._element&&this._changeSupport.onElementsChanged(this._element.id,this.onElementsChanged)}componentDidMount(){let{autoFocus:t}=this.props.context;t&&this.node&&KW(this.node).focus()}componentWillUnmount(){if(this._element){this._changeSupport.offElementsChanged(this._element.id,this.onElementsChanged);let{businessObject:t}=this._element,{description:i}=t;Ie(i)&&!i.length&&this.changeDescription(null)}}render(){if(!this._element)return;let{businessObject:t}=this._element,{description:i}=t;if(Ie(i))return y(1,"div","context-menu-container description-editor",P(2,rw,{className:"dms-input",onChange:this.changeDescription,value:i}),2,null,null,r=>this.node=r)}},rw=class extends an{render(){return y(1,"div",this.getClassName(),this.getEditor(),0)}};function KW(n){return X(".content-editable",n)}var GW=500,XW=750,x2=26,Ac=class{constructor(e,t,i,r,o,s,a){M(this,"addDescription",e=>{this._modeling.updateProperties(e,{description:""});let t=this._renderer.getContainer(),r=Gi(e.id,t).getBoundingClientRect(),o=b2(t,r);this._contextMenu.open(o,{contextMenuType:"cell-description",id:e.id,autoFocus:!0,offset:{x:4,y:4}})});M(this,"removeDescription",e=>{this._modeling.updateProperties(e,{description:null}),this._contextMenu.close()});this._contextMenu=t,this._modeling=o,this._renderer=s,this._translate=a,r.on("cell.click",XW,l=>{if(l.defaultPrevented)return;let{target:c,id:u}=l,f=i.get(u);if(!Ge(f,["dmn:UnaryTests","dmn:LiteralExpression"]))return;_2(f)||l.preventDefault();let d=s.getContainer(),p=c.getBoundingClientRect(),m=b2(d,p);t.open(m,{contextMenuType:"cell-description",autoFocus:!1,id:u,offset:{x:4,y:4}})}),e.onGetComponent("context-menu",(l={})=>{if(l.contextMenuType&&l.contextMenuType==="cell-description"){let c=i.get(l.id),u=_2(c);if(Ie(u))return nd}}),e.onGetComponent("context-menu-cell-additional",GW,(l={})=>{if(l.contextMenuType&&l.contextMenuType==="context-menu"){let{id:c}=l;if(!c)return;let u=i.get(c);if(!u)return;let{businessObject:f}=u,{description:h}=f,d=Ie(h),p=d?"remove-description":"add-description",m=d?()=>this.removeDescription(u):()=>this.addDescription(u);return y(1,"div",`context-menu-group-entry ${p}`,Ie(h)?this._translate("Remove cell description"):this._translate("Add cell description"),0,{onClick:m})}})}};Ac.$inject=["components","contextMenu","elementRegistry","eventBus","modeling","renderer","translate"];function b2(n,e){let{top:t,left:i,width:r,height:o}=e;return{x:i+n.parentNode.scrollLeft-x2,y:t+n.parentNode.scrollTop,width:r+2*x2,height:o}}function _2(n){return n&&n.businessObject&&n.businessObject.description}var w2={__depends__:[Gt,_l],__init__:["description"],description:["type",Ac]};var Mc=class{constructor(e,t,i,r,o,s){this._modeling=i,this._translate=o,this._expressionLanguages=r,e.onGetComponent("context-menu-cell-additional",(a={})=>{if(a.contextMenuType&&a.contextMenuType==="context-menu"){let{event:l,id:c}=a;if(!c)return;let u=t.get(c);if(!u||!this._shouldDisplayContextMenuEntry(u))return;let f=h=>{s.open({x:(l||h).pageX,y:(l||h).pageY},{contextMenuType:"expression-language",id:c})};return y(1,"div","context-menu-group-entry",this._translate("Change cell expression language"),0,{onClick:f})}}),e.onGetComponent("context-menu",(a={})=>{if(a.contextMenuType&&a.contextMenuType==="expression-language"){let{id:l}=a;if(!l)return;let c=t.get(l);if(!c)return;let u=this._getElementExpressionLanguage(c),f=r.getAll(),h="context-menu-group-entry context-menu-entry-set-expression-language",d=this._translate("Expression language");return()=>y(1,"div","context-menu-flex",y(1,"div","context-menu-group",y(1,"div",h,[y(1,"div",null,d,0),P(2,pe,{label:d,className:"expression-language",onChange:p=>this.onChange(c,p),options:f,value:u})],4),2),2)}}),e.onGetComponent("context-menu",(a={})=>{if(a.contextMenuType==="input-edit")return()=>{let{inputExpression:l}=a.input;if(!this._shouldDisplayContextMenuEntry(l))return;let c=this._getElementExpressionLanguage(l),u=r.getAll(),f=this._translate("Expression language");return y(1,"div","context-menu-container ref-language",y(1,"div","dms-form-control",[y(1,"label","dms-label",f,0),P(2,pe,{label:f,className:"ref-language",value:c||"",onChange:h=>this.onChange(l,h),options:u})],4),2)}})}onChange(e,t){this._modeling.editExpressionLanguage(e,t)}_shouldDisplayContextMenuEntry(e){return this._expressionLanguages.getAll().length>1?!0:this._getElementExpressionLanguage(e)!==this._getDefaultElementExpressionLanguage(e)}_getElementExpressionLanguage(e){return Ke(e).expressionLanguage||this._getDefaultElementExpressionLanguage(e)}_getDefaultElementExpressionLanguage(e){return this._expressionLanguages.getDefault(ie(e.col)?"inputCell":"outputCell").value}};Mc.$inject=["components","elementRegistry","modeling","expressionLanguages","translate","contextMenu"];var C2={__depends__:[Qt],__init__:["expressionLanguage"],expressionLanguage:["type",Mc]};var Pc=class extends L{constructor(t,i){super(t,i);M(this,"onElementsChanged",()=>{this.forceUpdate()});M(this,"setDecisionTableName",t=>{this.modeling.editDecisionTableName(t)});Ce(this)}componentWillMount(){this.setupChangeListeners({bind:this.getBusinessObject().id})}componentWillUnmount(){this.setupChangeListeners({unbind:this.getBusinessObject().id})}setupChangeListeners({bind:t,unbind:i}){typeof i=="string"&&this.changeSupport.offElementsChanged(i,this.onElementsChanged),typeof t=="string"&&this.changeSupport.onElementsChanged(t,this.onElementsChanged)}getBusinessObject(){return this.sheet.getRoot().businessObject.$parent}render(){let t=this.getBusinessObject(),{name:i}=t,r=this.components.getComponent("hit-policy")||YW;return y(1,"div","decision-table-properties",[P(2,ow,{label:this.translate("Decision name"),className:"decision-table-name",value:i,ctrlForNewline:!0,onBlur:ZW,onChange:this.setDecisionTableName,elementId:"__decisionProperties_name",coords:"0:__decisionProperties"}),y(1,"div","decision-table-header-separator"),P(2,r)],4)}};Pc.$inject=["sheet","modeling","changeSupport","components","translate"];var ow=class extends an{constructor(e,t){super(e,t),this._translate=t.injector.get("translate"),Ut(this,Yf)}render(){let e=this.props.value,t=Ro(this.getSelectionClasses(),this.getClassName());return y(1,"div",t,this.getEditor(),0,{"data-element-id":this.props.elementId,"data-coords":this.props.coords,title:this._translate("Decision name: ")+e})}};function YW(){return null}function ZW(n){n.target.scroll(0,0)}var JW=500,Dc=class{constructor(e){e.onGetComponent("table.before",JW,()=>Pc)}};Dc.$inject=["components"];var E2={__depends__:[Kt],__init__:["decisionTableProperties"],decisionTableProperties:["type",Dc]};var Ic=class extends L{constructor(t,i){super(t,i);M(this,"onChange",({aggregation:t,hitPolicy:i})=>{this.modeling.editHitPolicy(i,t)});M(this,"onElementsChanged",()=>{this.forceUpdate()});this._translate=i.injector.get("translate"),Ce(this)}componentDidMount(){this.changeSupport.onElementsChanged(this.getRoot().id,this.onElementsChanged)}componentWillUnmount(){this.changeSupport.offElementsChanged(this.getRoot().id,this.onElementsChanged)}getRoot(){return this.sheet.getRoot()}render(){let t=this.getRoot(),i=t.businessObject,{aggregation:r,hitPolicy:o}=i,s=ye(oh,a=>e8(a.value,{aggregation:r,hitPolicy:o}));return y(1,"div","hit-policy",[y(1,"label","dms-label",this._translate("Hit policy:"),0),P(2,pe,{className:"hit-policy-edit-policy-select",label:this._translate("Hit policy"),onChange:this.onChange,options:oh.map(a=>({...a,label:this._translate(a.label)})),value:s.value,"data-hit-policy":"true",noInput:!0})],4,{title:this._translate(s.explanation)})}};Ic.$inject=["changeSupport","sheet","modeling"];function e8(n,e){return n.hitPolicy===e.hitPolicy&&n.aggregation===e.aggregation}function $y(n){n.onGetComponent("hit-policy",()=>Ic)}$y.$inject=["components"];var S2={__depends__:[Gt],__init__:["hitPolicyProvider"],hitPolicyProvider:["type",$y]};var Lc=class extends ae{constructor(e,t){super(e),this.executed(["row.add","row.remove","col.add","col.remove"],O2(i=>{var r=i.context,o=r.row||r.col;this.updateRoot(o,r.oldRoot)})),this.reverted(["row.add","row.remove","col.add","col.remove"],O2(i=>{var r=i.context,o=r.row||r.col;this.updateRoot(o,r.newRoot)}))}updateRoot(e,t){var i=e.root,r=e.businessObject;if(O(e,"dmn:DecisionRule")){if(t){let s=t.businessObject.get("rule"),a=s.indexOf(r);s.splice(a,1),r.$parent=null}if(i){let o=i.businessObject,s=i.rows.indexOf(e);o.get("rule").splice(s,0,r),r.$parent=o,e.cells.forEach((a,l)=>{this.wireCell(a,e,l)})}}if(O(e,"dmn:InputClause")||O(e,"dmn:OutputClause")){let o,s;if(t){let a=t.businessObject,l=a.get("input"),c=a.get("output");if(O(e,"dmn:InputClause")&&(o=l,s=l.indexOf(r)),O(e,"dmn:OutputClause")&&(o=c,s=c.indexOf(r)),s===-1)throw new Error("inconsistent model: clause not in table");o.splice(s,1),r.$parent=null,e.cells.forEach((u,f)=>{this.unwireCell(u,t.rows[f])})}if(i){let a=i.businessObject,l=a.get("input"),c=a.get("output"),u=i.cols.indexOf(e),f,h;O(e,"dmn:InputClause")&&(h=l,f=u),O(e,"dmn:OutputClause")&&(h=c,f=u-l.length),h.splice(f,0,r),r.$parent=a,e.cells.forEach((d,p)=>{this.wireCell(d,i.rows[p],u)})}}}unwireCell(e,t){var i=e.businessObject;let r=t.businessObject,o=r.get("inputEntry"),s=r.get("outputEntry"),a,l;if(O(e,"dmn:UnaryTests")&&(a=o),O(e,"dmn:LiteralExpression")&&(a=s),l=a.indexOf(i),l===-1)throw new Error("cell not in row");a.splice(l,1),i.$parent=null}wireCell(e,t,i){var r=e.businessObject;let o=t.businessObject,s=o.get("inputEntry"),a=o.get("outputEntry"),l,c;r.$parent!==o&&(O(e,"dmn:UnaryTests")&&(l=s,c=i),O(e,"dmn:LiteralExpression")&&(l=a,c=i-s.length),l.splice(c,0,r),r.$parent=o)}};Lc.$inject=["eventBus","sheet"];function O2(n){return function(e){var t=e.context,i=t.row||t.col;O(i,"dmn:DMNElement")&&n(e)}}var Bc=class{constructor(e){this._model=e}create(e,t={}){var i=this._model.create(e,t||{});return O(i,"dmn:InputClause")&&(t.inputExpression?i.inputExpression=t.inputExpression:(i.inputExpression=this.create("dmn:LiteralExpression",{typeRef:"string"}),i.inputExpression.$parent=i)),O(i,"dmn:OutputClause")&&(i.typeRef=t.typeRef||"string"),(O(i,"dmn:UnaryTests")||O(i,"dmn:LiteralExpression"))&&(i.text=t.text||""),this._ensureId(i),i}_needsId(e){return O(e,"dmn:DMNElement")}_ensureId(e){var t=(e.$type||"").replace(/^[^:]*:/g,"")+"_";!e.id&&this._needsId(e)&&(e.id=this._model.ids.nextPrefixed(t,e))}};Bc.$inject=["moddle"];var Nc=class extends As{constructor(e){super(),this._dmnFactory=e}create(e,t){let i=this._dmnFactory,{businessObject:r,type:o,...s}=t;if(!r){if(!o){if(e==="root")o="dmn:DecisionTable";else if(e==="cell"){let{col:a}=s;O(a,"dmn:OutputClause")&&(o="dmn:LiteralExpression"),O(a,"dmn:InputClause")&&(o="dmn:UnaryTests")}if(!o)throw new Error("cannot guess <type>")}r=i.create(o)}return super.create(e,{businessObject:r,id:r.id,...s})}};Nc.$inject=["dmnFactory"];var $c=class{constructor(e,t){this._sheet=e,this._elementFactory=t}execute(e){let t=this._sheet,i=this._elementFactory,r=t.getRoot(),{row:o,index:s}=e;return typeof s=="undefined"&&(s=e.index=r.rows.length),e.newRoot=r,o.cells.length||r.cols.forEach((a,l)=>{let c=i.create("cell",{row:o,col:a});o.cells[l]=c}),t.addRow(o,s),t.getRoot()}revert(e){let{row:t}=e,i=this._sheet;return i.removeRow(t),i.getRoot()}};$c.$inject=["sheet","elementFactory"];var jc=class{constructor(e){this._sheet=e}execute(e){let t=this._sheet,i=t.getRoot(),{row:r}=e,o=e.oldIndex=i.rows.indexOf(r);if(e.oldRoot=r.root,o===-1)throw new Error(`row#${r.id} not in sheet`);return t.removeRow(r),t.getRoot()}revert(e){let{row:t,oldIndex:i}=e,r=this._sheet;return r.addRow(t,i),r.getRoot()}};jc.$inject=["sheet"];var Fc=class{constructor(e){this._modeling=e}preExecute(e){let{row:t}=e;this._modeling.removeRow(t)}postExecute(e){let{row:t,index:i}=e;this._modeling.addRow(t,i)}};Fc.$inject=["modeling"];var qc=class{constructor(e,t){this._sheet=e,this._elementFactory=t}execute(e){let t=this._sheet,i=this._elementFactory,r=t.getRoot(),{col:o,index:s}=e;return typeof s=="undefined"&&(s=e.index=r.cols.length),e.newRoot=r,o.cells.length||r.rows.forEach((a,l)=>{let c=i.create("cell",{row:a,col:o});o.cells[l]=c}),t.addCol(o,s),t.getRoot()}revert(e){let{col:t}=e,i=this._sheet;return i.removeCol(t),i.getRoot()}};qc.$inject=["sheet","elementFactory"];var Vc=class{constructor(e,t){this._sheet=e,this._elementFactory=t}execute(e){let t=this._sheet,{col:i}=e,r=e.oldRoot=i.root;if((e.oldIndex=r.cols.indexOf(i))===-1)throw new Error(`col#${i.id} not in sheet`);return t.removeCol(i),t.getRoot()}revert(e){let{col:t,oldIndex:i}=e,r=this._sheet;return r.addCol(t,i),r.getRoot()}};Vc.$inject=["sheet","elementFactory"];var Hc=class{constructor(e){this._modeling=e}preExecute(e){let{col:t}=e;this._modeling.removeCol(t)}postExecute(e){let{col:t,index:i}=e;this._modeling.addCol(t,i)}};Hc.$inject=["modeling"];var id=class{execute(e){let{cell:t}=e;return t}revert(e){let{cell:t}=e;return t}};var zc=class n{constructor(e,t,i){this._eventBus=e,this._elementFactory=t,this._commandStack=i,e.on("table.init",()=>{t8(this.getHandlers(),i)})}getHandlers(){return n._getHandlers()}static _getHandlers(){return{"row.add":$c,"row.remove":jc,"row.move":Fc,"col.add":qc,"col.remove":Vc,"col.move":Hc,"cell.edit":id}}_create(e,t){return t instanceof Oo?t:this._elementFactory.create(e,t)}addRow(e,t){let i=this._create("row",e),r={row:i,index:t};return this._commandStack.execute("row.add",r),i}removeRow(e){this._commandStack.execute("row.remove",{row:e})}moveRow(e,t){let i={row:e,index:t};this._commandStack.execute("row.move",i)}addCol(e,t){let i=this._create("col",e),r={col:i,index:t};return this._commandStack.execute("col.add",r),i}removeCol(e){this._commandStack.execute("col.remove",{col:e})}moveCol(e,t){let i={col:e,index:t};this._commandStack.execute("col.move",i)}editCell(e,t){let i={cell:e,...t};this._commandStack.execute("cell.edit",i)}};zc.$inject=["eventBus","elementFactory","commandStack"];function t8(n,e){k(n,function(t,i){e.registerHandler(i,t)})}var Wc=class{constructor(e,t,i){this._dmnFactory=e,this._moddle=t,this._modeling=i}execute(e){let{element:t,allowedValues:i}=e;return O(t,"dmn:InputClause")?(t.inputValues?e.oldAllowedValues=t.inputValues.text:jy(i)||(t.inputValues=this._dmnFactory.create("dmn:UnaryTests",{text:""})),jy(i)?t.inputValues&&delete t.inputValues:t.inputValues.text=i.join(",")):(t.outputValues&&t?e.oldAllowedValues=t.outputValues.text:jy(i)||(t.outputValues=this._dmnFactory.create("dmn:UnaryTests",{text:""})),jy(i)?t.outputValues&&delete t.outputValues:t.outputValues.text=i.join(",")),t}revert(e){let{element:t,oldAllowedValues:i}=e;return O(t,"dmn:InputClause")?i?(t.inputValues||(t.inputValues=this._dmnFactory.create("dmn:UnaryTests",{text:""})),t.inputValues.text=i):delete t.inputValues:i?(t.outputValues||(t.outputValues=this._dmnFactory.create("dmn:UnaryTests",{text:""})),t.outputValues.text=i):delete t.outputValues,t}};Wc.$inject=["dmnFactory","moddle","modeling"];function jy(n){return n===null}var sw="id",sr=class{constructor(e,t){this._elementRegistry=e,this._moddle=t}execute(e){let{element:t,properties:i}=e,r=Ke(t),{changed:o,oldProperties:s}=this.updateProperties(r,i);return e.oldProperties=s,[...o,t]}revert(e){let{element:t,oldProperties:i}=e;var r=Ke(t),{changed:o}=this.updateProperties(r,i);return[...o,t]}updateProperties(e,t){let i=this._moddle.ids;return st(t,(r,o,s)=>{let a=e.get(s);if(k2(o)){if(!R2(a)&&!k2(a))throw new Error(`non-existing property <${s}>: cannot update values`);let{changed:l,oldProperties:c}=this.updateProperties(a,o);return{changed:[...r.changed,...l,a],oldProperties:{...r.oldProperties,[s]:c}}}return s===sw&&n8(e,o)&&(i.unclaim(e[sw]),this._elementRegistry.updateId(e,o),i.claim(o,e)),e.set(s,o),{changed:r.changed,oldProperties:{...r.oldProperties,[s]:a}}},{changed:[],oldProperties:{}})}};sr.$inject=["elementRegistry","moddle"];function n8(n,e){return n[sw]!==e}function k2(n){return Me(n)&&Pe(n)&&!R2(n)}function R2(n){return!!(n!=null&&n.$type)}var Uc=class{constructor(e){this._moddle=e}execute(e){let t=this._moddle.ids,i=e.id,r=e.element;e.claiming?t.claim(i,r):t.unclaim(i)}revert(e){let t=this._moddle.ids,i=e.id,r=e.element;e.claiming?t.unclaim(i):t.claim(i,r)}};Uc.$inject=["moddle"];var Qc=class n extends zc{constructor(e,t,i,r){super(e,t,i),this._eventBus=e,this._elementFactory=t,this._commandStack=i,this._sheet=r}getHandlers(){return n._getHandlers()}static _getHandlers(){return T({},super._getHandlers(),{editAllowedValues:Wc,"element.updateProperties":sr,"id.updateClaim":Uc})}editDecisionTableName(e){let o={element:this._sheet.getRoot().businessObject.$parent,properties:{name:e}};this._commandStack.execute("element.updateProperties",o)}editDecisionTableId(e){let o={element:this._sheet.getRoot().businessObject.$parent,properties:{id:e}};this._commandStack.execute("element.updateProperties",o)}editHitPolicy(e,t){let o={element:this._sheet.getRoot().businessObject,properties:{hitPolicy:e,aggregation:t}};this._commandStack.execute("element.updateProperties",o)}updateProperties(e,t){let i={element:e,properties:t};this._commandStack.execute("element.updateProperties",i)}editInputExpression(e,t){let i={element:e,properties:t};this._commandStack.execute("element.updateProperties",i)}editOutputName(e,t){let i={element:e,properties:{name:t}};this._commandStack.execute("element.updateProperties",i)}editInputExpressionTypeRef(e,t){let i={element:e,properties:{typeRef:t}};this._commandStack.execute("element.updateProperties",i)}editOutputTypeRef(e,t){let i={element:e,properties:{typeRef:t}};this._commandStack.execute("element.updateProperties",i)}editCell(e,t){let i={element:e,properties:{text:t}};this._commandStack.execute("element.updateProperties",i)}editAnnotation(e,t){let i={element:e,properties:{description:t}};this._commandStack.execute("element.updateProperties",i)}editAllowedValues(e,t){let i={element:e,allowedValues:t};this._commandStack.execute("editAllowedValues",i)}editExpressionLanguage(e,t){let i={element:e,properties:{expressionLanguage:t}};this._commandStack.execute("element.updateProperties",i)}claimId(e,t){let i={id:e,element:t,claiming:!0};this._commandStack.execute("id.updateClaim",i)}unclaimId(e,t){let i={id:e,element:t};this._commandStack.execute("id.updateClaim",i)}};Qc.$inject=["eventBus","elementFactory","commandStack","sheet"];var Kc=class extends ae{constructor(e,t,i){super(e),this._ids=t.ids,this._modeling=i,this.preExecute(["row.add","col.add"],r=>{let o=r.context,s=o.row||o.col;this.claimId(s.businessObject),s.cells&&s.cells.forEach(a=>this.claimId(a.businessObject))})}claimId(e){e.id&&!this._ids.assigned(e.id)&&this._modeling.claimId(e.id,e),e.$descriptor.properties.forEach(t=>{let i=e[t.name];i&&(F(i)&&i.forEach(r=>this.claimId(r)),i.$type&&this.claimId(i))})}};Kc.$inject=["eventBus","moddle","modeling"];var Gc=class extends ae{constructor(e,t){super(e),this._modeling=t,this.preExecute(["row.remove","col.remove"],i=>{let r=i.context,o=r.row||r.col;this.unclaimId(o.businessObject),o.cells&&o.cells.forEach(s=>this.unclaimId(s.businessObject))})}unclaimId(e){e.id&&this._modeling.unclaimId(e.id,e),e.$descriptor.properties.forEach(t=>{let i=e[t.name];i&&(F(i)&&i.forEach(r=>this.unclaimId(r)),i.$type&&this.unclaimId(i))})}};Gc.$inject=["eventBus","modeling"];var T2={__init__:["idClaimBehavior","idUnclaimBehavior"],idClaimBehavior:["type",Kc],idUnclaimBehavior:["type",Gc]};var A2={__init__:["dmnUpdater","idChangeBehavior","nameChangeBehavior","modeling"],__depends__:[T2,xs],dmnUpdater:["type",Lc],dmnFactory:["type",Bc],elementFactory:["type",Nc],idChangeBehavior:["type",Gn],nameChangeBehavior:["type",qi],modeling:["type",Qc]};var rd=class extends L{constructor(e,t){super(e,t),this.changeCellValue=this.changeCellValue.bind(this),this.onElementsChanged=this.onElementsChanged.bind(this)}onElementsChanged(){this.forceUpdate()}componentWillMount(){let{injector:e}=this.context,{cell:t}=this.props,i=this._changeSupport=this.context.changeSupport;this._modeling=e.get("modeling"),i.onElementsChanged(t.id,this.onElementsChanged)}componentWillUnmount(){let{cell:e}=this.props;this._changeSupport.offElementsChanged(e.id,this.onElementsChanged)}changeCellValue(e){let{cell:t}=this.props;this._modeling.editCell(t.businessObject,e)}render(){let{cell:e,rowIndex:t,row:i,col:r,colIndex:o}=this.props,s=O(e,"dmn:UnaryTests"),a=e.businessObject;return P(2,Rn,{className:s?"input-cell":"output-cell",elementId:e.id,coords:`${t}:${o}`,"data-row-id":i.id,"data-col-id":r.id,children:P(2,lw,{placeholder:s?"-":"",onChange:this.changeCellValue,value:a.text,businessObject:a})})}},aw=class extends L{constructor(e,t){super(e,t),this.state={focussed:!1},this.onFocus=this.onFocus.bind(this),this.onBlur=this.onBlur.bind(this)}onFocus(){this.setState({focussed:!0})}onBlur(){this.setState({focussed:!1})}render(){let{focussed:e}=this.state;return y(1,"div",`feel-editor${e?" focussed":""}`,[e&&En(P(2,Ri,{...this.props,autoFocus:!0,onBlur:this.onBlur})),En(P(2,Tn,{...this.props,onInput:()=>{},onFocus:this.onFocus}))],0,{onClick:this.onFocus})}},lw=class extends L{constructor(e,t){super(e,t),this._expressionLanguages=t.injector.get("expressionLanguages"),this._translate=t.injector.get("translate"),this._variableResolver=t.injector.get("variableResolver",!1)}isDefaultExpressionLanguage(e){let{expressionLanguage:t}=e,i=this.getDefaultExpressionLanguage().value;return!t||t===i}getDescription(e){return e.description}getExpressionLanguageLabel(e){let{expressionLanguage:t}=e,i=this.getDefaultExpressionLanguage();return this._expressionLanguages.getLabel(t)||i.label}isScript(){let{businessObject:e}=this.props,t=this.getDefaultExpressionLanguage();return this._isInputCell()?e.text.indexOf(`
1940 `)!==-1?!0:e.expressionLanguage&&e.expressionLanguage!==t:!1}_isInputCell(){return O(this.props.businessObject,"dmn:UnaryTests")}getDefaultExpressionLanguage(){let e=this._isInputCell()?"inputCell":"outputCell";return this._expressionLanguages.getDefault(e)}getEditor(){return this.isFEEL()?aw:Tn}isFEEL(){return this.getExpressionLanguage()==="feel"}getExpressionLanguage(){let{businessObject:e}=this.props;return e.expressionLanguage||this.getDefaultExpressionLanguage().value}_getVariables(){let{businessObject:e}=this.props;return this._variableResolver&&this._variableResolver.getVariables(e)}_getLabel(){return this._isInputCell()?this._translate("Input"):this._translate("Output")}render(){let{businessObject:e,placeholder:t,value:i,onChange:r}=this.props,o=this.getDescription(e),s=this.isDefaultExpressionLanguage(e),a=this.getExpressionLanguageLabel(e),l=this.isScript(),c=this.getEditor(),u=this._getVariables();return y(1,"div","cell-editor",[Ie(o)&&y(1,"div","description-indicator"),P(2,c,{label:this._getLabel(),className:l?"script-editor":"",ctrlForNewline:!0,onInput:r,value:i,placeholder:t,variables:u,feelLanguageDialect:"unaryTests"}),!s&&y(1,"span","dms-badge dmn-expression-language",[y(1,"span","dms-badge-icon dmn-icon-file-code"),y(1,"span","dms-badge-label",a,0)],4,{title:this._translate("Expression language: {expressionLanguageLabel}",{expressionLanguageLabel:a})})],0)}};var i8=1500,Xc=class{constructor(e){e.onGetComponent("cell",i8,({cellType:t})=>{if(t==="rule")return rd})}};Xc.$inject=["components"];var M2={__depends__:[Kt,tg],__init__:["decisionRulesEditor"],decisionRulesEditor:["type",Xc]};var Fy=4,Yc=class extends L{constructor(e,t){super(e,t),this._translate=t.injector.get("translate"),this.state={top:0,left:0,isVisible:!1,isDisabled:!1,selection:null},Ce(this);let{debounceInput:i}=this;this.onClick=this.onClick.bind(this),this.handleSelectionChanged=this.handleSelectionChanged.bind(this),this.hideAndShowDebounced=this.hideAndShowDebounced.bind(this),this.showDebounced=i(this.showDebounced.bind(this)),this.updatePosition=this.updatePosition.bind(this)}componentDidMount(){let{eventBus:e}=this;e.on("cellSelection.changed",this.handleSelectionChanged),e.on("commandStack.changed",this.updatePosition),e.on("sheet.scroll",this.hideAndShowDebounced)}componentWillUnmount(){let{eventBus:e}=this;e.off("cellSelection.changed",this.handleSelectionChanged),e.off("commandStack.changed",this.updatePosition),e.off("sheet.scroll",this.hideAndShowDebounced)}hideAndShowDebounced(){this.state.isVisible&&(this.hide(),this.showDebounced())}showDebounced(){this.show()}hide(e={}){this.setState({...e,isVisible:!1})}show(e={}){this.setState({...e,isVisible:!0}),this.updatePosition()}handleSelectionChanged({elementId:e}){let{elementRegistry:t,expressionLanguages:i,simpleMode:r}=this,o=t.get(e);if(!o||!r.canSimpleEdit(o)){this.hide({isDisabled:!1,selection:null});return}let s=r8(o),a=!o8(o,s,i);this.show({isDisabled:a,selection:o})}updatePosition(){let{selection:e}=this.state,{node:t}=this;if(!e||!t)return;let{renderer:i}=this,r=i.getContainer(),o=r.getBoundingClientRect(),a=Gi(e.id,r).getBoundingClientRect(),l=this.node.getBoundingClientRect(),{scrollLeft:c,scrollTop:u}=a8(t),f={};a.left+a.width/2>o.width/2?f.left=-o.left+a.left-l.width+Fy+c+"px":f.left=-o.left+a.left+a.width-Fy+c+"px",a.top+a.height/2>o.height/2?f.top=-o.top+a.top-l.height+Fy+u+"px":f.top=-o.top+a.top-Fy+u+"px",T(this.node.style,f)}onClick(){let{eventBus:e}=this,{isDisabled:t}=this.state;if(t)return;let{selection:i}=this,r=i.get();r&&(e.fire("simpleMode.open",{element:r,node:Gi(r.id,this._container)}),this.hide())}render(){let{isDisabled:e,isVisible:t,top:i,left:r}=this.state,o=["simple-mode-button","no-deselect"];return e&&o.push("disabled"),t?y(1,"div",o.join(" "),y(1,"span","dmn-icon-edit"),2,{onClick:this.onClick,style:{top:i,left:r},title:e?this._translate("Editing not supported for set expression language"):this._translate("Edit")},null,s=>this.node=s):null}};Yc.$inject=["debounceInput","elementRegistry","eventBus","expressionLanguages","renderer","selection","simpleMode"];function r8(n){return n.businessObject.expressionLanguage}function o8(n,e,t){return!e||e===s8(n,t)}function s8(n,e){if(ie(n.col))return e.getDefault("inputCell").value;if(Te(n.col))return e.getDefault("outputCell").value}function a8(n){let e=De(n,".tjs-table-container");if(!e)return{scrollTop:0,scrollLeft:0};let{scrollLeft:t,scrollTop:i}=e;return{scrollTop:i,scrollLeft:t}}var Zc=class{constructor(e,t,i,r,o){this._providers=[],e.onGetComponent("table.before",()=>Yc),r.on("simpleMode.open",({element:s,node:a})=>{let{left:l,top:c,width:u,height:f}=a.getBoundingClientRect(),h=o.getContainer();t.open({x:l+h.parentNode.scrollLeft,y:c+h.parentNode.scrollTop,width:u,height:f},{contextMenuType:"simple-mode-edit",element:s,offset:{x:4,y:4}})}),r.on("cell.click",s=>{let{event:a,node:l,id:c}=s;if(l8(a)){let u=i.get(c);u&&r.fire("simpleMode.open",{node:l,element:u}),s.preventDefault()}})}registerProvider(e){this._providers.push(e)}canSimpleEdit(e){return this._providers.reduce((t,i)=>t||i(e),!1)}};Zc.$inject=["components","contextMenu","elementRegistry","eventBus","renderer"];function l8(n){return n.altKey?!1:n.ctrlKey||n.metaKey}var en={__depends__:[Gt,Po,Qt],__init__:["simpleMode"],simpleMode:["type",Zc]};function P2(n){if(!n||c8(n))return"none";if(n.trim()==="true")return"true";if(n.trim()==="false")return"false"}function c8(n){return n===""}var u8="true",f8="false",cw="none",od=class extends L{constructor(e,t){super(e,t),this._translate=t.injector.get("translate"),this._modeling=t.injector.get("modeling");let{element:i}=this.props.context,r=P2(i.businessObject.text);this.state={value:r||cw},this.editCell=this.editCell.bind(this),this.onChange=this.onChange.bind(this)}editCell(e,t){this._modeling.editCell(e,t)}onChange(e){let{element:t}=this.props.context;this.editCell(t.businessObject,e===cw?"":e),this.setState({value:e})}render(){let{value:e}=this.state,t=[{label:"-",value:cw},{label:this._translate("Yes"),value:u8},{label:this._translate("No"),value:f8}];return y(1,"div","simple-boolean-edit context-menu-container",[y(1,"h3","dms-heading",this._translate("Edit boolean"),0),y(1,"h4","dms-heading",this._translate("Set value"),0),P(2,pe,{label:this._translate("Boolean value"),noInput:!0,className:"dms-block",onChange:this.onChange,options:t,value:e})],4)}};var Jc=class{constructor(e,t){t.registerProvider(i=>(ie(i.col)||Te(i.col))&&D2(i)==="boolean"),e.onGetComponent("context-menu",(i={})=>{if(i.contextMenuType&&i.contextMenuType==="simple-mode-edit"){if(!i.element)return;if(D2(i.element)==="boolean")return od}})}};Jc.$inject=["components","simpleMode"];function D2(n){return ie(n.col)?n.col&&n.col.businessObject.inputExpression.typeRef:n.col&&n.col.businessObject.typeRef}var I2={__depends__:[Bt,en],__init__:["simpleBooleanEdit"],simpleBooleanEdit:["type",Jc]};var h8=/^\d{4}(?:-\d\d){2}$/,d8=/^\[date\("([^"]*)"\)..date\("([^"]*)"\)\]$/,p8=/^(<|>)\s*date\("([^"]*)"\)$/,m8=/^date\("([^"]*)"\)$/,g8="exact",y8="before",v8="after",x8="between";function zo(n){if(!h8.test(n.trim()))return"Date must match pattern yyyy-MM-dd"}function Qr(n,e){if(n===g8)return`date("${e[0]}")`;if(n===y8)return`< date("${e[0]}")`;if(n===v8)return`> date("${e[0]}")`;if(n===x8)return`[date("${e[0]}")..date("${e[1]}")]`}function Bn(){let n=new Date;return n.setUTCHours(0,0,0,0),n.toISOString().slice(0,10)}function ea(n){if(!n||n.trim()==="")return{type:"exact",date:""};let e=n.match(d8);if(e)return{type:"between",dates:[e[1],e[2]]};if(e=n.match(p8),e)return{type:e[1]==="<"?"before":"after",date:e[2]};if(e=n.match(m8),e)return{type:"exact",date:e[1]}}var L2="exact",b8="before",_8="after",sd="between",ad=class extends L{constructor(e,t){super(e,t),this._translate=t.injector.get("translate"),this._modeling=t.injector.get("modeling");let{element:i}=this.props.context,r=ea(i.businessObject.text);if(r){let s;r.date?s=[r.date,""]:r.dates?s=r.dates:s=["",""],this.state={type:r.type,dates:s}}else this.state={type:L2,dates:["",""]};let o=t.injector.get("debounceInput");this.debouncedEditCell=o(this.editCell.bind(this)),this.editCell=this.editCell.bind(this),this.onTypeChange=this.onTypeChange.bind(this),this.onSetStartDateTodayClick=this.onSetStartDateTodayClick.bind(this),this.onSetEndDateTodayClick=this.onSetEndDateTodayClick.bind(this),this.onStartDateInput=this.onStartDateInput.bind(this),this.onEndDateInput=this.onEndDateInput.bind(this)}editCell(e,t){this._modeling.editCell(e,t)}onTypeChange(e){let{element:t}=this.props.context,{dates:i}=this.state;this.setState({type:e}),ea(Qr(e,i))&&this.editCell(t.businessObject,Qr(e,i))}onSetStartDateTodayClick(){let{element:e}=this.props.context,{dates:t,type:i}=this.state,r=Bn();this.setState({dates:[r,t[1]]}),ea(Qr(i,[r,t[1]]))&&this.editCell(e.businessObject,Qr(i,[r,t[1]]))}onSetEndDateTodayClick(){let{element:e}=this.props.context,{dates:t,type:i}=this.state,r=Bn();this.setState({dates:[t[0],r]}),ea(Qr(i,[t[0],r]))&&this.editCell(e.businessObject,Qr(i,[t[0],r]))}onStartDateInput({value:e}){let{element:t}=this.props.context,{dates:i,type:r}=this.state;this.setState({dates:[e,i[1]]}),this.debouncedEditCell(t.businessObject,Qr(r,[e,i[1]]))}onEndDateInput({value:e}){let{element:t}=this.props.context,{dates:i,type:r}=this.state;this.setState({dates:[i[0],e]}),this.debouncedEditCell(t.businessObject,Qr(r,[i[0],e]))}render(){let{dates:e,type:t}=this.state,i=[{label:this._translate("Exactly"),value:L2},{label:this._translate("Before"),value:b8},{label:this._translate("After"),value:_8},{label:this._translate("Between"),value:sd}];return y(1,"div","context-menu-container simple-date-edit",[y(1,"h3","dms-heading",this._translate("Edit date"),0),y(1,"div","dms-fill-row",P(2,pe,{label:this._translate("Test type"),noInput:!0,onChange:this.onTypeChange,options:i,value:t}),2),y(1,"h4","dms-heading",t===sd?this._translate("Edit start date"):this._translate("Set date"),0),y(1,"div",null,[P(2,ot,{label:t===sd?this._translate("Start date"):this._translate("Date"),className:"start-date-input dms-block",onInput:this.onStartDateInput,placeholder:this._translate("e.g. { sample }",{sample:Bn()}),validate:r=>zo(r)&&this._translate(zo(r)),value:e[0]}),y(1,"p","dms-hint",[y(1,"button","use-today",this._translate("Use today"),0,{type:"button",onClick:this.onSetStartDateTodayClick}),Z(".")],4)],4),t===sd&&y(1,"h4","dms-heading",this._translate("Edit end date"),0),t===sd&&y(1,"div",null,[P(2,ot,{label:this._translate("End date"),className:"end-date-input dms-block",onInput:this.onEndDateInput,placeholder:this._translate("e.g. { sample }",{sample:Bn()}),validate:r=>zo(r)&&this._translate(zo(r)),value:e[1]}),y(1,"p","dms-hint",[y(1,"button","use-today",this._translate("Use today"),0,{type:"button",onClick:this.onSetEndDateTodayClick}),Z(".")],4)],4)],0)}};var ld=class extends L{constructor(e,t){super(e,t),this._translate=t.injector.get("translate"),this._modeling=t.injector.get("modeling");let{element:i}=this.props.context,r=ea(i.businessObject.text);this.state={date:r?r.date:""};let o=t.injector.get("debounceInput");this.debouncedEditCell=o(this.editCell.bind(this)),this.editCell=this.editCell.bind(this),this.onClick=this.onClick.bind(this),this.onInput=this.onInput.bind(this)}editCell(e,t){this._modeling.editCell(e,t)}onClick(){let{element:e}=this.props.context,t=Bn();this.setState({date:t}),this.editCell(e.businessObject,`date("${t}")`)}onInput({value:e}){let{element:t}=this.props.context;this.setState({date:e}),this.debouncedEditCell(t.businessObject,`date("${e}")`)}render(){let{date:e}=this.state;return y(1,"div","context-menu-container simple-date-edit",[y(1,"h3","dms-heading",this._translate("Edit date"),0),y(1,"h4","dms-heading",this._translate("Set date"),0),y(1,"div",null,[P(2,ot,{label:this._translate("Date value"),onInput:this.onInput,placeholder:this._translate("e.g. { example } ",{example:Bn()}),validate:t=>zo(t)&&this._translate(zo(t)),value:e,className:"dms-block"}),y(1,"p","dms-hint",y(1,"button","use-today",this._translate("Use today"),0,{type:"button",onClick:this.onClick}),2)],4)],4)}};var eu=class{constructor(e,t){t.registerProvider(i=>{let r=B2(i);return(ie(i.col)||Te(i.col))&&N2(r)}),e.onGetComponent("context-menu",(i={})=>{if(i.contextMenuType&&i.contextMenuType==="simple-mode-edit"){if(!i.element)return;let r=B2(i.element);if(N2(r)){if(ie(i.element.col))return ad;if(Te(i.element.col))return ld}}})}};eu.$inject=["components","simpleMode"];function B2(n){return ie(n.col)?n.col&&n.col.businessObject.inputExpression.typeRef:n.col&&n.col.businessObject.typeRef}function N2(n){return n==="date"}var $2={__depends__:[Bt,en],__init__:["simpleDateEdit"],simpleDateEdit:["type",eu]};var w8=/^\d{4}(?:-\d\d){2}T(?:\d\d:){2}\d\d(?:Z|(?:[@+-][^")]+))?$/,C8=/^\[date and time\("([^"]*)"\)..date and time\("([^"]*)"\)\]$/,E8=/^(<|>)\s*date and time\("([^"]*)"\)$/,S8=/^date and time\("([^"]*)"\)$/,O8="exact",k8="before",R8="after",T8="between";function Wo(n){if(!w8.test(n.trim()))return"Date and time must match pattern yyyy-MM-ddTHH:mm:ss[time zone]"}function Kr(n,e){if(n===O8)return`date and time("${e[0]}")`;if(n===k8)return`< date and time("${e[0]}")`;if(n===R8)return`> date and time("${e[0]}")`;if(n===T8)return`[date and time("${e[0]}")..date and time("${e[1]}")]`}function Uo(){let n=new Date;return n.setUTCHours(0,0,0,0),n.toISOString().replace(".000Z","Z")}function ta(n){if(!n||n.trim()==="")return{type:"exact",date:""};let e=n.match(C8);if(e)return{type:"between",dates:[e[1],e[2]]};if(e=n.match(E8),e)return{type:e[1]==="<"?"before":"after",date:e[2]};if(e=n.match(S8),e)return{type:"exact",date:e[1]}}var j2="exact",A8="before",M8="after",cd="between",ud=class extends L{constructor(e,t){super(e,t),this._translate=t.injector.get("translate"),this._modeling=t.injector.get("modeling");let{element:i}=this.props.context,r=ta(i.businessObject.text);if(r){let s;r.date?s=[r.date,""]:r.dates?s=r.dates:s=["",""],this.state={type:r.type,dates:s}}else this.state={type:j2,dates:["",""]};let o=t.injector.get("debounceInput");this.debouncedEditCell=o(this.editCell.bind(this)),this.editCell=this.editCell.bind(this),this.onTypeChange=this.onTypeChange.bind(this),this.onSetStartDateTodayClick=this.onSetStartDateTodayClick.bind(this),this.onSetEndDateTodayClick=this.onSetEndDateTodayClick.bind(this),this.onStartDateInput=this.onStartDateInput.bind(this),this.onEndDateInput=this.onEndDateInput.bind(this)}editCell(e,t){this._modeling.editCell(e,t)}onTypeChange(e){let{element:t}=this.props.context,{dates:i}=this.state;this.setState({type:e}),ta(Kr(e,i))&&this.editCell(t.businessObject,Kr(e,i))}onSetStartDateTodayClick(){let{element:e}=this.props.context,{dates:t,type:i}=this.state,r=Uo();this.setState({dates:[r,t[1]]}),ta(Kr(i,[r,t[1]]))&&this.editCell(e.businessObject,Kr(i,[r,t[1]]))}onSetEndDateTodayClick(){let{element:e}=this.props.context,{dates:t,type:i}=this.state,r=Uo();this.setState({dates:[t[0],r]}),ta(Kr(i,[t[0],r]))&&this.editCell(e.businessObject,Kr(i,[t[0],r]))}onStartDateInput({value:e}){let{element:t}=this.props.context,{dates:i,type:r}=this.state;this.setState({dates:[e,i[1]]}),this.debouncedEditCell(t.businessObject,Kr(r,[e,i[1]]))}onEndDateInput({value:e}){let{element:t}=this.props.context,{dates:i,type:r}=this.state;this.setState({dates:[i[0],e]}),this.debouncedEditCell(t.businessObject,Kr(r,[i[0],e]))}render(){let{dates:e,type:t}=this.state,i=[{label:this._translate("Exactly"),value:j2},{label:this._translate("Before"),value:A8},{label:this._translate("After"),value:M8},{label:this._translate("Between"),value:cd}];return y(1,"div","context-menu-container simple-date-edit",[y(1,"h3","dms-heading",this._translate("Edit date and time"),0),y(1,"div","dms-fill-row",P(2,pe,{label:this._translate("Test type"),noInput:!0,onChange:this.onTypeChange,options:i,value:t}),2),y(1,"h4","dms-heading",t===cd?this._translate("Edit start date and time"):this._translate("Set date and time"),0),y(1,"div",null,[P(2,ot,{label:t===cd?this._translate("Start date and time"):this._translate("Date and time"),className:"start-date-input dms-block",onInput:this.onStartDateInput,placeholder:this._translate("e.g. { sample }",{sample:Uo()}),validate:r=>Wo(r)&&this._translate(Wo(r)),value:e[0]}),y(1,"p","dms-hint",y(1,"button","use-today",this._translate("Use today"),0,{type:"button",onClick:this.onSetStartDateTodayClick}),2)],4),t===cd&&y(1,"h4","dms-heading",this._translate("Edit end date and time"),0),t===cd&&y(1,"div",null,[P(2,ot,{label:this._translate("End date and time"),className:"end-date-input dms-block",onInput:this.onEndDateInput,placeholder:this._translate("e.g. { sample }",{sample:Uo()}),validate:r=>Wo(r)&&this._translate(Wo(r)),value:e[1]}),y(1,"p","dms-hint",y(1,"button","use-today",this._translate("Use today"),0,{type:"button",onClick:this.onSetEndDateTodayClick}),2)],4)],0)}};var fd=class extends L{constructor(e,t){super(e,t),this._translate=t.injector.get("translate"),this._modeling=t.injector.get("modeling");let{element:i}=this.props.context,r=ta(i.businessObject.text);this.state={date:r?r.date:""};let o=t.injector.get("debounceInput");this.debouncedEditCell=o(this.editCell.bind(this)),this.editCell=this.editCell.bind(this),this.onClick=this.onClick.bind(this),this.onInput=this.onInput.bind(this)}editCell(e,t){this._modeling.editCell(e,t)}onClick(){let{element:e}=this.props.context,t=Uo();this.setState({date:t}),this.editCell(e.businessObject,`date and time("${t}")`)}onInput({value:e}){let{element:t}=this.props.context;this.setState({date:e}),this.debouncedEditCell(t.businessObject,`date and time("${e}")`)}render(){let{date:e}=this.state;return y(1,"div","context-menu-container simple-date-edit",[y(1,"h3","dms-heading",this._translate("Edit date and time"),0),y(1,"h4","dms-heading",this._translate("Set date and time"),0),y(1,"div",null,[P(2,ot,{label:this._translate("Date and time value"),onInput:this.onInput,placeholder:this._translate("e.g. { sample }",{sample:Uo()}),validate:t=>Wo(t)&&this._translate(Wo(t)),value:e,className:"dms-block"}),y(1,"p","dms-hint",y(1,"button","use-today",this._translate("Use today"),0,{type:"button",onClick:this.onClick}),2)],4)],4)}};var tu=class{constructor(e,t){t.registerProvider(i=>{let r=F2(i);return(ie(i.col)||Te(i.col))&&q2(r)}),e.onGetComponent("context-menu",(i={})=>{if(i.contextMenuType&&i.contextMenuType==="simple-mode-edit"){if(!i.element)return;let r=F2(i.element);if(q2(r)){if(ie(i.element.col))return ud;if(Te(i.element.col))return fd}}})}};tu.$inject=["components","simpleMode"];function F2(n){return ie(n.col)?n.col&&n.col.businessObject.inputExpression.typeRef:n.col&&n.col.businessObject.typeRef}function q2(n){return n==="dateTime"}var V2={__depends__:[Bt,en],__init__:["simpleDateTimeEdit"],simpleDateTimeEdit:["type",tu]};var uw={equals:"=",less:"<",lessEquals:"<=",greater:">",greaterEquals:">="};function P8(n){return di(uw).filter(e=>n===uw[e])[0]}function H2(n){if(!n||D8(n.trim()))return{type:"comparison",values:[]};let e=B8(n);if(e)return e;let t=N8(n);if(t)return t}function D8(n){return n===""}function qy(n,e){return n==="equals"?`duration("${e}")`:`${uw[n]} duration("${e}")`}function nu(n,e,t,i){return`${t==="exclude"?"]":"["}duration("${n}")..duration("${e}")${i==="exclude"?"[":"]"}`}function z2(n,e){if(n==="yearMonthDuration")return I8(e);if(n==="dayTimeDuration")return L8(e)}function I8(n){return/^P(\d+Y\d+M|\d+Y|\d+M)$/.test(n)}function L8(n){return/^P(\d+DT\d+H|\d+D|T\d+H)$/.test(n)}function fw(n){let e=/^duration\("([^"]*)"\)$/.exec(n);return e&&e[1]}function B8(n){let e=fw(n);if(e)return{type:"comparison",operator:"equals",values:[e]};let{operator:t,value:i}=W2(/^(?<operator>=|(:?<|>)=?)\s*duration\("(?<value>[^"]*)"\)$/,n);if(t&&i)return{type:"comparison",values:[i],operator:P8(t)}}function N8(n){let{start:e,end:t,firstValue:i,secondValue:r}=W2(/^(?<start>[[\]])duration\("(?<firstValue>[^"]*)"\)\.\.duration\("(?<secondValue>[^"]*)"\)(?<end>[[\]])$/,n);if(e&&t)return{type:"range",values:[i,r],start:e==="]"?"exclude":"include",end:t==="["?"exclude":"include"}}function W2(n,e){let{groups:t}=n.exec(e)||{groups:{}};return t}var $8={yearMonthDuration:"Must match PnYnM",dayTimeDuration:"Must match PnDTnH"},Qo=class extends L{constructor(e,t){super(e,t),this._translate=t.injector.get("translate"),this._type=e.type,this.onInput=this.onInput.bind(this),this.validate=this.validate.bind(this),this.state={value:e.value}}onInput({value:e}){this.setState({value:e}),this.props.onInput(e)}validate(e){if(!z2(this._type,e))return this._translate($8[this._type])}_getPlaceholder(){if(this._type==="yearMonthDuration")return this._translate("e.g. { sample }",{sample:"P1Y2M"});this._type==="dayTimeDuration"&&this._translate("e.g. { sample }",{sample:"P1DT2H"})}render(){return P(2,ot,{label:this.props.label,type:"text",onInput:this.onInput,placeholder:this._getPlaceholder(),validate:this.validate,value:this.state.value,className:this.props.className})}};var iu="comparison",ru="range",hd=class extends L{constructor(e,t){super(e,t),this._translate=t.injector.get("translate"),this._modeling=t.injector.get("modeling");let{element:i}=this.props.context;this._type=j8(i);let r=H2(i.businessObject.text,this._type);r?this.state={type:r.type,comparisonOperator:r.operator||"equals",startValue:r.values[0]||"",endValue:r.values[1]||"",rangeStartType:r.start||"include",rangeEndType:r.end||"include"}:this.state={type:iu,comparisonOperator:"equals",startValue:"",endValue:"",rangeStartType:"include",rangeEndType:"include"};let o=t.injector.get("debounceInput");this.debouncedEditCell=o(this.editCell.bind(this)),this.editCell=this.editCell.bind(this),this.onComparisonOperatorChange=this.onComparisonOperatorChange.bind(this),this.onComparisonValueChange=this.onComparisonValueChange.bind(this),this.onTypeChange=this.onTypeChange.bind(this),this.onRangeStartTypeChange=this.onRangeStartTypeChange.bind(this),this.onRangeStartValueChange=this.onRangeStartValueChange.bind(this),this.onRangeEndTypeChange=this.onRangeEndTypeChange.bind(this),this.onRangeEndValueChange=this.onRangeEndValueChange.bind(this)}editCell(e,t){this._modeling.editCell(e,t)}onTypeChange(e){let{element:t}=this.props.context,{comparisonOperator:i,startValue:r,endValue:o,rangeStartType:s,rangeEndType:a}=this.state;e===iu?this.editCell(t.businessObject,qy(i,r)):this.editCell(t.businessObject,nu(r,o,s,a)),this.setState({type:e})}onComparisonOperatorChange(e){let{element:t}=this.props.context,{type:i,startValue:r}=this.state;i===iu&&(this.editCell(t.businessObject,qy(e,r)),this.setState({comparisonOperator:e}))}onComparisonValueChange(e){let{element:t}=this.props.context,{type:i,comparisonOperator:r}=this.state;i===iu&&(this.debouncedEditCell(t.businessObject,qy(r,e)),this.setState({startValue:e}))}onRangeStartTypeChange(e){let{element:t}=this.props.context,{type:i,startValue:r,endValue:o,rangeEndType:s}=this.state;i===ru&&(this.editCell(t.businessObject,nu(r,o,e,s)),this.setState({rangeStartType:e}))}onRangeStartValueChange(e){let{element:t}=this.props.context,{type:i,endValue:r,rangeStartType:o,rangeEndType:s}=this.state;i===ru&&(this.editCell(t.businessObject,nu(e,r,o,s)),this.setState({startValue:e}))}onRangeEndTypeChange(e){let{element:t}=this.props.context,{type:i,startValue:r,endValue:o,rangeStartType:s}=this.state;i===ru&&(this.editCell(t.businessObject,nu(r,o,s,e)),this.setState({rangeEndType:e}))}onRangeEndValueChange(e){let{element:t}=this.props.context,{type:i,startValue:r,rangeStartType:o,rangeEndType:s}=this.state;i===ru&&(this.editCell(t.businessObject,nu(r,e,o,s)),this.setState({endValue:e}))}renderComparison(e,t){let i=[{label:this._translate("Equals"),value:"equals"},{label:this._translate("Less"),value:"less"},{label:this._translate("Less or equals"),value:"lessEquals"},{label:this._translate("Greater"),value:"greater"},{label:this._translate("Greater or equals"),value:"greaterEquals"}];return y(1,"div","comparison",[y(1,"h4","dms-heading",Z("Value"),2),y(1,"div","dms-fill-row dms-input-duration-edit-row",[P(2,pe,{label:this._translate("Comparison operator"),noInput:!0,onChange:this.onComparisonOperatorChange,options:i,value:e}),Z("\xA0"),P(2,Qo,{label:this._translate("Duration value"),type:this._type,className:"comparison-duration-input",onInput:this.onComparisonValueChange,value:t})],4)],4)}renderRange(e,t,i,r){let o=[{label:this._translate("Include"),value:"include"},{label:this._translate("Exclude"),value:"exclude"}];return y(1,"div","range",[y(1,"h4","dms-heading",this._translate("Start value"),0),y(1,"div","dms-fill-row dms-input-duration-edit-row",[P(2,pe,{label:this._translate("Range start operator"),noInput:!0,onChange:this.onRangeStartTypeChange,options:o,value:i}),Z("\xA0"),P(2,Qo,{label:this._translate("Range start value"),type:this._type,className:"range-start-duration-input",onInput:this.onRangeStartValueChange,value:e})],4),y(1,"h4","dms-heading",this._translate("End value"),0),y(1,"div","dms-fill-row dms-input-duration-edit-row",[P(2,pe,{label:this._translate("Range end operator"),noInput:!0,onChange:this.onRangeEndTypeChange,options:o,value:r}),Z("\xA0"),P(2,Qo,{label:this._translate("Range end value"),type:this._type,className:"range-end-duration-input",onInput:this.onRangeEndValueChange,value:t})],4)],4)}render(){let{type:e,comparisonOperator:t,startValue:i,endValue:r,rangeStartType:o,rangeEndType:s}=this.state,a=[{label:this._translate("Comparison"),value:iu},{label:this._translate("Range"),value:ru}];return y(1,"div","context-menu-container simple-duration-edit",[y(1,"h3","dms-heading",this._translate("Edit duration"),0),y(1,"div","dms-fill-row",P(2,pe,{label:this._translate("Test type"),noInput:!0,onChange:this.onTypeChange,options:a,value:e}),2),e===iu&&this.renderComparison(t,i),e===ru&&this.renderRange(i,r,o,s)],0)}};function j8(n){return n.col.businessObject.inputExpression.typeRef}var dd=class extends L{constructor(e,t){super(e,t),this._translate=t.injector.get("translate"),this._modeling=t.injector.get("modeling");let{element:i}=this.props.context;this._type=F8(i);let r=t.injector.get("debounceInput");this.debouncedEditCell=r(this.editCell.bind(this)),this.editCell=this.editCell.bind(this),this.onInput=this.onInput.bind(this)}editCell(e,t){this._modeling.editCell(e,t)}onInput(e){let{element:t}=this.props.context;this.debouncedEditCell(t.businessObject,`duration("${e}")`)}render(){let e=fw(this.props.context.element.businessObject.text,this._type);return y(1,"div","context-menu-container simple-duration-edit",[y(1,"h3","dms-heading",this._translate("Edit duration"),0),y(1,"h4","dms-heading",this._translate("Set duration"),0),P(2,Qo,{label:this._translate("Duration value"),onInput:this.onInput,value:e,type:this._type,className:"dms-block"})],4)}};function F8(n){return n.col.businessObject.typeRef}var ou=class{constructor(e,t){t.registerProvider(i=>{let r=U2(i);return(ie(i.col)||Te(i.col))&&Q2(r)}),e.onGetComponent("context-menu",(i={})=>{if(i.contextMenuType&&i.contextMenuType==="simple-mode-edit"){if(!i.element)return;let r=U2(i.element);if(Q2(r)){if(ie(i.element.col))return hd;if(Te(i.element.col))return dd}}})}};ou.$inject=["components","simpleMode"];function U2(n){return ie(n.col)?n.col&&n.col.businessObject.inputExpression.typeRef:n.col&&n.col.businessObject.typeRef}var q8=["yearMonthDuration","dayTimeDuration"];function Q2(n){return q8.includes(n)}var K2={__depends__:[Bt,en],__init__:["simpleDurationEdit"],simpleDurationEdit:["type",ou]};var V8=/^(-?(?:[0-9]|\.[0-9])+)$|^((?:<|>|=){0,2})\s*(-?(?:[0-9]|\.[0-9])+)$/,H8=/^(\[|\]){1}(-?(?:[0-9]|\.[0-9])+){1,}\.\.(-?(?:[0-9]|\.[0-9])+){1,}(\[|\]){1}$/,hw={equals:"=",less:"<",lessEquals:"<=",greater:">",greaterEquals:">="};function z8(n){return di(hw).filter(e=>n===hw[e])[0]}function Vy(n){if(!n||W8(n.trim()))return{type:"comparison"};let e=n.match(V8),t=n.match(H8);if(e){if(U8(e))return{type:"comparison",value:parseFloat(e[1]),operator:"equals"};if(Q8(e))return{type:"comparison",value:parseFloat(e[3]),operator:z8(e[2])}}else if(t)return{type:"range",values:[t[2],t[3]].map(i=>parseFloat(i)),start:t[1]==="]"?"exclude":"include",end:t[4]==="["?"exclude":"include"}}function W8(n){return n===""}function U8(n){return n[0]&&n[1]&&!n[2]&&!n[3]}function Q8(n){return n[0]&&!n[1]&&n[2]&&n[3]}function Hy(n,e){return n==="equals"?`${e}`:`${hw[n]} ${e}`}function su(n,e,t,i){return`${t==="exclude"?"]":"["}${n}..${e}${i==="exclude"?"[":"]"}`}var au="comparison",lu="range",pd=class extends L{constructor(e,t){super(e,t),this._translate=t.injector.get("translate"),this._modeling=t.injector.get("modeling");let{element:i}=this.props.context,r=Vy(i.businessObject.text);r?this.state={type:r.type,comparisonOperator:r.operator||"equals",comparisonValue:r.value||0,rangeStartValue:r.values?r.values[0]:0,rangeEndValue:r.values?r.values[1]:0,rangeStartType:r.start||"include",rangeEndType:r.end||"include"}:this.state={type:au,comparisonOperator:"equals",comparisonValue:0,rangeStartValue:0,rangeEndValue:0,rangeStartType:"include",rangeEndType:"include"};let o=t.injector.get("debounceInput");this.debouncedEditCell=o(this.editCell.bind(this)),this.editCell=this.editCell.bind(this),this.onComparisonOperatorChange=this.onComparisonOperatorChange.bind(this),this.onComparisonValueChange=this.onComparisonValueChange.bind(this),this.onTypeChange=this.onTypeChange.bind(this),this.onRangeStartTypeChange=this.onRangeStartTypeChange.bind(this),this.onRangeStartValueChange=this.onRangeStartValueChange.bind(this),this.onRangeEndTypeChange=this.onRangeEndTypeChange.bind(this),this.onRangeEndValueChange=this.onRangeEndValueChange.bind(this)}editCell(e,t){this._modeling.editCell(e,t)}onTypeChange(e){let{element:t}=this.props.context,{comparisonOperator:i,comparisonValue:r,rangeStartValue:o,rangeEndValue:s,rangeStartType:a,rangeEndType:l}=this.state;e===au?this.editCell(t.businessObject,Hy(i,r)):this.editCell(t.businessObject,su(o,s,a,l)),this.setState({type:e})}onComparisonOperatorChange(e){let{element:t}=this.props.context,{type:i,comparisonValue:r}=this.state;i===au&&(this.editCell(t.businessObject,Hy(e,r)),this.setState({comparisonOperator:e}))}onComparisonValueChange(e){let{element:t}=this.props.context,{type:i,comparisonOperator:r}=this.state;i===au&&(this.debouncedEditCell(t.businessObject,Hy(r,e)),this.setState({comparisonValue:e}))}onRangeStartTypeChange(e){let{element:t}=this.props.context,{type:i,rangeStartValue:r,rangeEndValue:o,rangeEndType:s}=this.state;i===lu&&(this.editCell(t.businessObject,su(r,o,e,s)),this.setState({rangeStartType:e}))}onRangeStartValueChange(e){let{element:t}=this.props.context,{type:i,rangeEndValue:r,rangeStartType:o,rangeEndType:s}=this.state;i===lu&&(this.editCell(t.businessObject,su(e,r,o,s)),this.setState({rangeStartValue:e}))}onRangeEndTypeChange(e){let{element:t}=this.props.context,{type:i,rangeStartValue:r,rangeEndValue:o,rangeStartType:s}=this.state;i===lu&&(this.editCell(t.businessObject,su(r,o,s,e)),this.setState({rangeEndType:e}))}onRangeEndValueChange(e){let{element:t}=this.props.context,{type:i,rangeStartValue:r,rangeStartType:o,rangeEndType:s}=this.state;i===lu&&(this.editCell(t.businessObject,su(r,e,o,s)),this.setState({rangeEndValue:e}))}renderComparison(e,t){let i=[{label:this._translate("Equals"),value:"equals"},{label:this._translate("Less"),value:"less"},{label:this._translate("Less or equals"),value:"lessEquals"},{label:this._translate("Greater"),value:"greater"},{label:this._translate("Greater or equals"),value:"greaterEquals"}];return y(1,"div","comparison",[y(1,"h4","dms-heading",this._translate("Value"),0),y(1,"div","dms-fill-row",[P(2,pe,{label:this._translate("Comparison operator"),noInput:!0,onChange:this.onComparisonOperatorChange,options:i,value:e}),Z("\xA0"),P(2,St,{label:this._translate("Value"),className:"comparison-number-input",onInput:this.onComparisonValueChange,type:"number",value:t})],4)],4)}renderRange(e,t,i,r){let o=[{label:this._translate("Include"),value:"include"},{label:this._translate("Exclude"),value:"exclude"}];return y(1,"div","range",[y(1,"h4","dms-heading",this._translate("Start value"),0),y(1,"div","dms-fill-row",[P(2,pe,{label:this._translate("Start value"),noInput:!0,onChange:this.onRangeStartTypeChange,options:o,value:i}),Z("\xA0"),P(2,St,{className:"range-start-number-input",onInput:this.onRangeStartValueChange,type:"number",value:e})],4),y(1,"h4","dms-heading",this._translate("End value"),0),y(1,"div","dms-fill-row",[P(2,pe,{label:this._translate("End value"),noInput:!0,onChange:this.onRangeEndTypeChange,options:o,value:r}),Z("\xA0"),P(2,St,{className:"range-end-number-input",onInput:this.onRangeEndValueChange,type:"number",value:t})],4)],4)}render(){let{type:e,comparisonOperator:t,comparisonValue:i,rangeStartValue:r,rangeEndValue:o,rangeStartType:s,rangeEndType:a}=this.state,l=[{label:this._translate("Comparison"),value:au},{label:this._translate("Range"),value:lu}];return y(1,"div","context-menu-container simple-number-edit",[y(1,"h3","dms-heading",this._translate("Edit number"),0),y(1,"div","dms-fill-row",P(2,pe,{label:this._translate("Test type"),noInput:!0,onChange:this.onTypeChange,options:l,value:e}),2),e===au&&this.renderComparison(t,i),e===lu&&this.renderRange(r,o,s,a)],0)}};var md=class extends L{constructor(e,t){super(e,t),this._translate=t.injector.get("translate"),this._modeling=t.injector.get("modeling");let{element:i}=this.props.context,r=Vy(i.businessObject.text);r?this.state={value:r.value}:this.state={value:""};let o=t.injector.get("debounceInput");this.debouncedEditCell=o(this.editCell.bind(this)),this.editCell=this.editCell.bind(this),this.onInput=this.onInput.bind(this)}editCell(e,t){this._modeling.editCell(e,t)}onInput(e){let{element:t}=this.props.context;this.debouncedEditCell(t.businessObject,e),this.setState({value:e})}render(){let{value:e}=this.state;return y(1,"div","context-menu-container simple-number-edit",[y(1,"h3","dms-heading",this._translate("Edit number"),0),y(1,"h4","dms-heading",this._translate("Set value"),0),P(2,St,{onInput:this.onInput,type:"number",value:e})],4)}};var cu=class{constructor(e,t){t.registerProvider(i=>{let r=G2(i);return(ie(i.col)||Te(i.col))&&X2(r)}),e.onGetComponent("context-menu",(i={})=>{if(i.contextMenuType&&i.contextMenuType==="simple-mode-edit"){if(!i.element)return;let r=G2(i.element);if(X2(r)){if(ie(i.element.col))return pd;if(Te(i.element.col))return md}}})}};cu.$inject=["components","simpleMode"];function G2(n){return ie(n.col)?n.col&&n.col.businessObject.inputExpression.typeRef:n.col&&n.col.businessObject.typeRef}var K8=["number","integer","long","double"];function X2(n){return K8.includes(n)}var Y2={__depends__:[Bt,en],__init__:["simpleNumberEdit"],simpleNumberEdit:["type",cu]};function gd(n){if(!n||J2(n.trim()))return{type:"disjunction",values:[]};let e=n.split(","),t={type:"disjunction",values:[]},i="";if(e.forEach(o=>{i+=o,/^"[^"]*"$/.test(i.trim())?(t.values.push(i.trim()),i=""):i+=","}),!i)return t;t.type="negation",t.values=[],i="";let r=n.match(/^\s*not\((.*)\)\s*$/);if(r&&(e=r[1].split(","),e.forEach(o=>{i+=o,/^"[^"]*"$/.test(i.trim())?(t.values.push(i.trim()),i=""):i+=","}),!i))return t}function Z2(n){let e=ie(n)?n.inputValues:n.outputValues;return!e||J2(e.text)?[]:e.text.split(",").map(t=>t.trim())}function J2(n){return n===""}var na="disjunction",zy="negation",G8="Predefined values",X8="Predefined values",Y8="Custom values",yd=class extends L{constructor(e,t){super(e,t),this._translate=t.injector.get("translate"),this._modeling=t.injector.get("modeling");let i=gd(e.context.element.businessObject.text);i||(i={values:[],type:na});let r=Z2(e.context.element.col.businessObject),o=i.values.filter(u=>!pw(r,u)),s=ie(e.context.element.col),a=r.map(u=>({value:u,isChecked:pw(i.values,u),isRemovable:!1,group:s?this._translate(G8):this._translate(X8)}));s&&(a=a.concat(o.map(u=>({value:u,isChecked:!0,isRemovable:!0,group:this._translate(Y8)}))));let l="";!s&&i.values.length&&!pw(r,i.values[0])&&(l=i.values[0]),this.state={items:a,unaryTestsType:i.type,inputValue:l,isOutputValueInputChecked:l!==""};let c=t.injector.get("debounceInput");this.debouncedEditCell=c(this.editCell.bind(this)),this.editCell=this.editCell.bind(this),this.addUnaryTestsListItem=this.addUnaryTestsListItem.bind(this),this.onInput=this.onInput.bind(this),this.onKeyDown=this.onKeyDown.bind(this),this.onOutputValueInputClick=this.onOutputValueInputClick.bind(this),this.onUnaryTestsListChanged=this.onUnaryTestsListChanged.bind(this),this.onUnaryTestsTypeChange=this.onUnaryTestsTypeChange.bind(this)}editCell(e,t){this._modeling.editCell(e,t)}onUnaryTestsTypeChange(e){let{items:t}=this.state,i=dw(t),{element:r}=this.props.context;e===na?(this.editCell(r.businessObject,i.join(",")),this.setState({unaryTestsType:na})):(this.editCell(r.businessObject,`not(${i.join(",")})`),this.setState({unaryTestsType:zy}))}onUnaryTestsListChanged(e){let t=dw(e),{element:i}=this.props.context,{unaryTestsType:r}=this.state;r===na?this.editCell(i.businessObject,t.join(",")):this.editCell(i.businessObject,`not(${t.join(",")})`),this.setState({items:e,isOutputValueInputChecked:!1})}onOutputValueInputClick(){let{element:e}=this.props.context,{inputValue:t,items:i}=this.state,r=gd(t);!r||r.values.length>1||(this.editCell(e.businessObject,`${r.values.join("")}`),this.setState({items:i.map(o=>(o.isChecked=!1,o)),isOutputValueInputChecked:!0}))}onInput({isValid:e,value:t}){let{isOutputValueInputChecked:i}=this.state;this.setState({inputValue:t});let{element:r}=this.props.context;!ie(r)&&e&&i&&this.debouncedEditCell(r.businessObject,t)}onKeyDown({isValid:e,event:t}){if(!Z8(t.keyCode))return;let{element:i}=this.props.context,r=ie(i.col);(r||!e)&&(t.stopPropagation(),t.preventDefault()),e&&(r?this.addUnaryTestsListItem():this.onOutputValueInputClick())}addUnaryTestsListItem(){let{inputValue:e,items:t,unaryTestsType:i}=this.state,r=gd(e);if(!r)return;let{element:o}=this.props.context,s=dw(t),a=[].concat(s,r.values);i===na?this.editCell(o.businessObject,a.join(",")):this.editCell(o.businessObject,`not(${a.join(",")})`);let l=t.concat(r.values.map(c=>({value:c,isChecked:!0,isRemovable:!0,group:this._translate("Custom values")})));this.setState({items:l,inputValue:""})}render(){let{element:e}=this.props.context,{inputValue:t,isOutputValueInputChecked:i,items:r,unaryTestsType:o}=this.state,s=[{label:this._translate("Match one"),value:na},{label:this._translate("Match none"),value:zy}],a=ie(e.col),l=o===zy,c=!a&&r.length>0;return y(1,"div","simple-string-edit context-menu-container",[y(1,"h3","dms-heading",this._translate("Edit string"),0),a&&y(1,"p",null,P(2,pe,{label:this._translate("String value"),noInput:!0,onChange:this.onUnaryTestsTypeChange,options:s,value:l?zy:na},null,u=>this.selectNode=u),2),P(2,Js,{onChange:this.onUnaryTestsListChanged,items:r,type:a?"checkbox":"radio"}),a?y(1,"h4","dms-heading",this._translate("Add values"),0):y(1,"h4","dms-heading",this._translate("Set value"),0),y(1,"div","dms-fill-row",[c&&y(64,"input","cursor-pointer",null,1,{checked:i,onClick:this.onOutputValueInputClick,type:"radio",style:{marginRight:"8px"}}),P(2,ot,{label:a?this._translate("Values"):this._translate("Value"),className:"dms-block",onKeyDown:this.onKeyDown,onInput:this.onInput,placeholder:a?this._translate('"value", "value", ...'):this._translate('"value"'),type:"text",validate:u=>{if(!gd(u))return this._translate("Strings must be in double quotes")},value:t})],0)],0)}};function Z8(n){return n===13}function dw(n){return n.filter(e=>e.isChecked).map(e=>e.value)}function pw(n,e){return n.indexOf(e)!==-1}var uu=class{constructor(e,t){t.registerProvider(i=>(ie(i.col)||Te(i.col))&&eD(i)==="string"),e.onGetComponent("context-menu",(i={})=>{if(i.contextMenuType&&i.contextMenuType==="simple-mode-edit"){if(!i.element)return;if(eD(i.element)==="string")return yd}})}};uu.$inject=["components","simpleMode"];function eD(n){return ie(n.col)?n.col&&n.col.businessObject.inputExpression.typeRef:n.col&&n.col.businessObject.typeRef}var tD={__depends__:[Bt,en],__init__:["simpleStringEdit"],simpleStringEdit:["type",uu]};var J8=/^(?:\d\d:){2}\d\d(?:Z|(?:[@+-][^")]+))?$/,e9=/^\[time\("([^"]*)"\)..time\("([^"]*)"\)\]$/,t9=/^(<|>)\s*time\("([^"]*)"\)$/,n9=/^time\("([^"]*)"\)$/,i9="exact",r9="before",o9="after",s9="between";function Ko(n){if(!J8.test(n.trim()))return"Time must match pattern hh:mm:ss[time zone]"}function Gr(n,e){if(n===i9)return`time("${e[0]}")`;if(n===r9)return`< time("${e[0]}")`;if(n===o9)return`> time("${e[0]}")`;if(n===s9)return`[time("${e[0]}")..time("${e[1]}")]`}function vd(){return new Date().toISOString().slice(11,-5)+"Z"}function ia(n){if(!n||n.trim()==="")return{type:"exact",time:""};let e=n.match(e9);if(e)return{type:"between",times:[e[1],e[2]]};if(e=n.match(t9),e)return{type:e[1]==="<"?"before":"after",time:e[2]};if(e=n.match(n9),e)return{type:"exact",time:e[1]}}var nD="exact",a9="before",l9="after",Wy="between",xd=class extends L{constructor(e,t){super(e,t),this._translate=t.injector.get("translate"),this._modeling=t.injector.get("modeling");let{element:i}=this.props.context,r=ia(i.businessObject.text);if(r){let s;r.time?s=[r.time,""]:r.times?s=r.times:s=["",""],this.state={type:r.type,times:s}}else this.state={type:nD,times:["",""]};let o=t.injector.get("debounceInput");this.debouncedEditCell=o(this.editCell.bind(this)),this.editCell=this.editCell.bind(this),this.onTypeChange=this.onTypeChange.bind(this),this.onSetStartTimeNowClick=this.onSetStartTimeNowClick.bind(this),this.onSetEndTimeNowClick=this.onSetEndTimeNowClick.bind(this),this.onStartTimeInput=this.onStartTimeInput.bind(this),this.onEndTimeInput=this.onEndTimeInput.bind(this)}editCell(e,t){this._modeling.editCell(e,t)}onTypeChange(e){let{element:t}=this.props.context,{times:i}=this.state;this.setState({type:e}),ia(Gr(e,i))&&this.editCell(t.businessObject,Gr(e,i))}onSetStartTimeNowClick(){let{element:e}=this.props.context,{times:t,type:i}=this.state,r=vd();this.setState({times:[r,t[1]]}),ia(Gr(i,[r,t[1]]))&&this.editCell(e.businessObject,Gr(i,[r,t[1]]))}onSetEndTimeNowClick(){let{element:e}=this.props.context,{times:t,type:i}=this.state,r=vd();this.setState({times:[t[0],r]}),ia(Gr(i,[t[0],r]))&&this.editCell(e.businessObject,Gr(i,[t[0],r]))}onStartTimeInput({value:e}){let{element:t}=this.props.context,{times:i,type:r}=this.state;this.setState({times:[e,i[1]]}),this.debouncedEditCell(t.businessObject,Gr(r,[e,i[1]]))}onEndTimeInput({value:e}){let{element:t}=this.props.context,{times:i,type:r}=this.state;this.setState({times:[i[0],e]}),this.debouncedEditCell(t.businessObject,Gr(r,[i[0],e]))}render(){let{times:e,type:t}=this.state,i=[{label:this._translate("Exactly"),value:nD},{label:this._translate("Before"),value:a9},{label:this._translate("After"),value:l9},{label:this._translate("Between"),value:Wy}];return y(1,"div","context-menu-container simple-time-edit",[y(1,"h3","dms-heading",this._translate("Edit time"),0),y(1,"div","dms-fill-row",P(2,pe,{label:this._translate("Time"),noInput:!0,onChange:this.onTypeChange,options:i,value:t}),2),y(1,"h4","dms-heading",t===Wy?this._translate("Edit start time"):this._translate("Set time"),0),y(1,"div",null,[P(2,ot,{label:this._translate("Start time"),className:"start-time-input dms-block",onInput:this.onStartTimeInput,placeholder:this._translate("e.g. { example } ",{example:Bn()}),validate:r=>Ko(r)&&this._translate(Ko(r)),value:e[0]}),y(1,"p","dms-hint",[y(1,"button","use-now",this._translate("Use now"),0,{type:"button",onClick:this.onSetStartTimeNowClick}),Z(".")],4)],4),t===Wy&&y(1,"h4","dms-heading",this._translate("Edit end time"),0),t===Wy&&y(1,"div",null,[P(2,ot,{label:this._translate("End time"),className:"end-time-input dms-block",onInput:this.onEndTimeInput,placeholder:this._translate("e.g. { example } ",{example:Bn()}),validate:r=>Ko(r)&&this._translate(Ko(r)),value:e[1]}),y(1,"p","dms-hint",[y(1,"button","use-now",this._translate("Use now"),0,{type:"button",onClick:this.onSetEndTimeNowClick}),Z(".")],4)],4)],0)}};var bd=class extends L{constructor(e,t){super(e,t),this._translate=t.injector.get("translate"),this._modeling=t.injector.get("modeling");let{element:i}=this.props.context,r=ia(i.businessObject.text);this.state={date:r?r.date:""};let o=t.injector.get("debounceInput");this.debouncedEditCell=o(this.editCell.bind(this)),this.editCell=this.editCell.bind(this),this.onClick=this.onClick.bind(this),this.onInput=this.onInput.bind(this)}editCell(e,t){this._modeling.editCell(e,t)}onClick(){let{element:e}=this.props.context,t=vd();this.setState({date:t}),this.editCell(e.businessObject,`time("${t}")`)}onInput({value:e}){let{element:t}=this.props.context;this.setState({date:e}),this.debouncedEditCell(t.businessObject,`time("${e}")`)}render(){let{date:e}=this.state;return y(1,"div","context-menu-container simple-time-edit",[y(1,"h3","dms-heading",this._translate("Edit time"),0),y(1,"h4","dms-heading",this._translate("Set time"),0),y(1,"div",null,[P(2,ot,{label:this._translate("Time value"),onInput:this.onInput,placeholder:this._translate("e.g. { example } ",{example:Bn()}),validate:t=>Ko(t)&&this._translate(Ko(t)),value:e,className:"dms-block"}),y(1,"p","dms-hint",[y(1,"button","use-now",this._translate("Use now"),0,{type:"button",onClick:this.onClick}),Z(".")],4)],4)],4)}};var fu=class{constructor(e,t){t.registerProvider(i=>{let r=iD(i);return(ie(i.col)||Te(i.col))&&rD(r)}),e.onGetComponent("context-menu",(i={})=>{if(i.contextMenuType&&i.contextMenuType==="simple-mode-edit"){if(!i.element)return;let r=iD(i.element);if(rD(r)){if(ie(i.element.col))return xd;if(Te(i.element.col))return bd}}})}};fu.$inject=["components","simpleMode"];function iD(n){return ie(n.col)?n.col&&n.col.businessObject.inputExpression.typeRef:n.col&&n.col.businessObject.typeRef}function rD(n){return n==="time"}var oD={__depends__:[Bt,en],__init__:["simpleTimeEdit"],simpleTimeEdit:["type",fu]};var hu=class extends L{constructor(t,i){super(t,i);M(this,"onElementsChanged",()=>{this.forceUpdate()});M(this,"handleMouseDown",t=>{let i=De(t.target,"th",!1);c9({node:i,event:t,minWidth:this.props.minWidth||150,onEnd:this.saveWidth})});M(this,"saveWidth",t=>{let{col:i}=this.props,r={};O(i,"dmn:DecisionTable")?r.annotationsWidth=t:r.width=t,this.modeling.updateProperties(i,r)});Ce(this)}componentDidMount(){let t=this.getRoot();this.changeSupport.onElementsChanged(t,this.onElementsChanged)}componentWillUnmount(){let t=this.getRoot();this.changeSupport.offElementsChanged(t,this.onElementsChanged)}getRoot(){return this.sheet.getRoot()}isLastInputOrOutput(){let{col:t}=this.props,i=this.getRoot(),r=Ke(i);if(O(t,"dmn:InputClause")){let o=r.get("input");return o.indexOf(t)===o.length-1}else if(O(t,"dmn:OutputClause")){let o=r.get("output");return o.indexOf(t)===o.length-1}}render(){let t=this.isLastInputOrOutput()?{right:"-7px",width:"27px"}:null;return y(1,"div","resize-column-handle",null,1,{onMouseDown:this.handleMouseDown,title:this.translate("Resize"),style:t})}};hu.$inject=["sheet","changeSupport","translate","modeling"];function c9({node:n,event:e,minWidth:t,onEnd:i=u9}){e.preventDefault();let r=n.getBoundingClientRect().width,o=e.clientX,s;document.addEventListener("mousemove",a),document.addEventListener("mouseup",l);function a(u){u.preventDefault();let f=c(u.clientX);s&&cancelAnimationFrame(s),s=requestAnimationFrame(()=>{n.style.width=f+"px"})}function l(u){u.preventDefault(),document.removeEventListener("mousemove",a),document.removeEventListener("mouseup",l);let f=c(u.clientX);i(f)}function c(u){let f=u-o;return Math.max(r+f,t)}}function u9(){}function Uy(n){n.onGetComponent("cell-inner",(e={})=>{let{cellType:t}=e;if(t==="input-cell"||t==="output-cell"||t==="annotations")return hu})}Uy.$inject=["components"];var sD={__init__:["columnResizeProvider"],columnResizeProvider:["type",Uy]};var _d=class n extends Ao{getModules(){return[...Ao._getModules(),...n._getModules()]}static _getModules(){return[RR,DR,Po,Gt,lg,LR,BR,Xi,NR,Jn,h2,sD,v2,w2,C2,Qt,Yn,Bt,E2,cg,S2,_l,A2,M2,Mo,en,I2,$2,V2,K2,Y2,tD,oD,tl]}};var du=class{constructor(e){this._listeners={},e.on("elements.changed",({elements:t})=>{this.elementsChanged(t)}),e.on("element.updateId",({element:t,newId:i})=>{this.updateId(t.id,i)})}elementsChanged(e){let t={},i=e.length;for(let r=0;r<i;r++){let{id:o}=e[r];if(t[o])return;t[o]=!0;let s=this._listeners[o]&&this._listeners[o].length;if(s)for(let a=0;a<s;a++)this._listeners[o][a]&&this._listeners[o][a]()}}onElementsChanged(e,t){this._listeners[e]||(this._listeners[e]=[]),this._listeners[e][this._listeners[e].length]=t}offElementsChanged(e,t){if(this._listeners[e])if(t){let i=this._listeners[e].indexOf(t);i!==-1&&this._listeners[e].splice(i,1)}else this._listeners[e].length=0}updateId(e,t){this._listeners[e]&&(this._listeners[t]=this._listeners[e],delete this._listeners[e])}};du.$inject=["eventBus"];var f9=1e3,wd=class{constructor(){this._listeners={}}getComponent(e,t){let i=this._listeners[e];if(!i)return;let r;for(let o=0;o<i.length&&(r=i[o].callback(t),!r);o++);return r}getComponents(e,t){let i=this._listeners[e];if(!i)return;let r=[];for(let o=0;o<i.length;o++){let s=i[o].callback(t);s&&r.push(s)}if(r.length)return r}onGetComponent(e,t,i){if(ge(t)&&(i=t,t=f9),!se(t))throw new Error("priority must be a number");let r=this._getListeners(e),o,s,a={priority:t,callback:i};for(s=0;o=r[s];s++)if(o.priority<t){r.splice(s,0,a);return}r.push(a)}offGetComponent(e,t){let i=this._getListeners(e),r,o,s;if(t)for(s=i.length-1;r=i[s];s--)o=r.callback,o===t&&i.splice(s,1);else i.length=0}_getListeners(e){let t=this._listeners[e];return t||(this._listeners[e]=t=[]),t}};var Cd=class extends L{constructor(e){super(e);let t=this._injector=e.injector;this._changeSupport=t.get("changeSupport"),this._components=t.get("components"),this._renderer=t.get("renderer")}getChildContext(){return{changeSupport:this._changeSupport,components:this._components,renderer:this._renderer,injector:this._injector}}render(){let e=this._components.getComponents("viewer");return y(1,"div","viewer-container",e&&e.map((t,i)=>P(2,t,null,i)),0)}};var pu=class{constructor(e,t,i,r,o){let{container:s}=i;this._container=s,r.on("renderer.mount",()=>{xa(P(2,Cd,{injector:o}),s)}),r.on("renderer.unmount",()=>{xa(null,s)})}getContainer(){return this._container}};pu.$inject=["changeSupport","components","config.renderer","eventBus","injector"];var aD={__init__:["changeSupport","components","renderer"],changeSupport:["type",du],components:["type",wd],eventBus:["type",ut],renderer:["type",pu]};var ra=class{constructor(e={}){let{injector:t}=e;if(!t){let{modules:i,config:r}=this._init(e);t=h9(r,i)}this.get=t.get,this.invoke=t.invoke,this.get("eventBus").fire("viewer.init")}_init(e){let{modules:t,...i}=e;return{modules:t,config:i}}destroy(){this.get("eventBus").fire("viewer.destroy")}clear(){this.get("eventBus").fire("viewer.clear")}};function h9(n,e){let t=[{config:["value",n]},aD].concat(e||[]),i=new os(t);return i.init(),i}var mu=class{constructor(e,t){this._eventBus=t,this._viewer=e}getDecision(){return this._viewer.getDecision()}updateId(e,t){var i=this.getDecision();if(e!==i)throw new Error("element !== decision");this._eventBus.fire("element.updateId",{element:e,newId:t}),e.id=t}};mu.$inject=["viewer","eventBus"];var lD={__init__:["elementRegistry"],elementRegistry:["type",mu]};var Ed=class extends L{constructor(e,t){super(e,t),this._viewer=t.injector.get("viewer")}render(){let{name:e}=this._viewer.getDecision();return y(1,"div","decision-properties",y(1,"h3","decision-name",e,0),2)}};var d9=1500,gu=class{constructor(e){e.onGetComponent("viewer",d9,()=>Ed)}};gu.$inject=["components"];var cD={__init__:["decisionProperties"],decisionProperties:["type",gu]};var Sd=class extends L{constructor(e,t){super(e,t),this._translate=t.injector.get("translate"),this._viewer=t.injector.get("viewer")}render(){let{decisionLogic:e,variable:t}=this._viewer.getDecision();return y(1,"div","literal-expression-properties",y(1,"table",null,[y(1,"tr",null,[y(1,"td",null,this._translate("Variable name:"),0),y(1,"td",null,y(1,"span",null,t.name||"-",0),2)],4),y(1,"tr",null,[y(1,"td",null,this._translate("Variable type:"),0),y(1,"td",null,y(1,"span",null,this._translate(t.typeRef||"")||"-",0),2)],4),y(1,"tr",null,[y(1,"td",null,this._translate("Expression language:"),0),y(1,"td",null,y(1,"span",null,e.expressionLanguage||"-",0),2)],4)],4),2)}};var p9=500,yu=class{constructor(e){e.onGetComponent("viewer",p9,()=>Sd)}};yu.$inject=["components"];var uD={__depends__:[],__init__:["literalExpressionProperties"],literalExpressionProperties:["type",yu]};var m9=2e3,vu=class{constructor(e){e.onGetComponent("viewer",m9,()=>co)}};vu.$inject=["components"];var fD={__init__:["poweredBy"],poweredBy:["type",vu]};var Od=class extends L{constructor(e,t){super(e,t),this._viewer=t.injector.get("viewer")}render(){let{text:e}=this._viewer.getDecision().decisionLogic;return y(1,"div","textarea",y(1,"div","content",e,0),2)}};var xu=class{constructor(e){e.onGetComponent("viewer",()=>Od)}};xu.$inject=["components"];var hD={__init__:["textarea"],textarea:["type",xu]};var bu=class extends L{constructor(t,i){super(t,i);M(this,"onClick",()=>{this._eventBus.fire("showDrd")});let{injector:r}=i;this._translate=r.get("translate"),this._eventBus=r.get("eventBus")}render(){return y(1,"div","view-drd",y(1,"button","view-drd-button",this._translate("View DRD"),0,{type:"button",onClick:this.onClick}),2,null,null,t=>this.node=t)}};bu.$inject=["translate"];var g9=2e3,_u=class{constructor(e,t,i,r){this._injector=r,this._viewer=t,e.onGetComponent("viewer",g9,()=>{if(this.canViewDrd())return bu}),i.on("showDrd",()=>{let o=r.get("_parent",!1),s=this.getDefinitions(),a=o.getView(s);o.open(a)})}canViewDrd(){let e=this._injector.get("_parent",!1);if(!e)return;let t=this.getDefinitions();return!!e.getView(t)}getDefinitions(){return y9(this._viewer.getDecision())}};_u.$inject=["components","viewer","eventBus","injector"];function y9(n){return n.$parent}var dD={__init__:["viewDrd"],viewDrd:["type",_u]};var Go=class n extends ra{constructor(e={}){let t=n._createContainer();super(T(e,{renderer:{container:t}})),this._container=t}open(e){var t=this;return new Promise(function(i,r){var o;try{t._decision&&(t.clear(),t.get("eventBus").fire("renderer.unmount")),t._decision=e,t.get("eventBus").fire("import",e),t.get("eventBus").fire("renderer.mount")}catch(s){o=s}o?(o.warnings=o.warnings||[],r(o)):i({warnings:[]})})}_init(e){let{modules:t,additionalModules:i,...r}=e,o=t||this.getModules(),s=i||[],a=[{viewer:["value",this]}];return{modules:[...o,...s,...a],config:r}}on(e,t,i,r){return this.get("eventBus").on(e,t,i,r)}off(e,t){this.get("eventBus").off(e,t)}_emit(e,t){return this.get("eventBus").fire(e,t)}getDecision(){return this._decision}attachTo(e){if(!e)throw new Error("parentNode required");this.detach(),e.appendChild(this._container),this._emit("attach",{})}detach(){let e=this._container;e.parentNode&&(this._emit("detach",{}),Qe(e))}destroy(){super.destroy(),this.detach()}getModules(){return n._getModules()}static _getModules(){return[lD,qe,cD,uD,fD,hD,dD]}static _createContainer(){return te('<div class="dmn-literal-expression-container"></div>')}};var kd=class extends L{constructor(t,i){super(t,i);M(this,"onElementsChanged",()=>{this.forceUpdate()});M(this,"setDecisionName",t=>{this._modeling.editDecisionName(t)});this._viewer=i.injector.get("viewer"),this._modeling=i.injector.get("modeling"),this._translate=i.injector.get("translate"),this.setupChangeListeners({bind:this.getDecision().id})}componentWillUnmount(){this.setupChangeListeners({unbind:this.getDecision().id})}getDecision(){return this._viewer.getDecision()}setupChangeListeners({bind:t,unbind:i}){let{changeSupport:r}=this.context;typeof i=="string"&&r.offElementsChanged(i,this.onElementsChanged),typeof t=="string"&&r.onElementsChanged(t,this.onElementsChanged)}render(){let{name:t}=this.getDecision();return y(1,"header","decision-properties",P(2,mw,{label:this._translate("Decision name"),className:"decision-name editor",value:t,onBlur:v9,onChange:this.setDecisionName}),2)}},mw=class extends an{render(){return y(1,"h3",this.getClassName(),this.getEditor(),0)}};function v9(n){n.target.scroll(0,0)}var x9=1500,wu=class{constructor(e){e.onGetComponent("viewer",x9,()=>kd)}};wu.$inject=["components"];var pD={__depends__:[Kt,qe],__init__:["decisionProperties"],decisionProperties:["type",wu]};var mD="is not a registered action",b9="is already registered",Cu=class{constructor(e,t){this._actions={undo(){e.undo()},redo(){e.redo()}}}trigger(e,t){if(!this._actions[e])throw gw(e,mD);return this._actions[e](t)}register(e,t){if(typeof e=="string")return this._registerAction(e,t);k(e,(i,r)=>{this._registerAction(r,i)},this)}_registerAction(e,t){if(this.isRegistered(e))throw gw(e,b9);this._actions[e]=t}unregister(e){if(!this.isRegistered(e))throw gw(e,mD);this._actions[e]=void 0}isRegistered(e){return!!this._actions[e]}};Cu.$inject=["commandStack","eventBus"];function gw(n,e){return new Error(n+" "+e)}var gD={__init__:["editorActions"],editorActions:["type",Cu]};function yw(n){return n.altKey?!1:n.ctrlKey||n.metaKey}function vw(n){return n.shiftKey}var yD="Keyboard binding is now implicit; explicit binding to an element got removed. For more information, see https://github.com/bpmn-io/diagram-js/pull/662",Eu=class{constructor(e,t,i,r){M(this,"_init",()=>{this._registerDefaultBindings(),this._fire("init")});M(this,"_destroy",()=>{this._fire("destroy"),this.unbind(),this._listeners=null});M(this,"_keyHandler",e=>{var t,i,r=this._listeners,o=e.keyCode||e.charCode||-1;for(t=0;i=r[t];t++)if(i(o,e)){e.preventDefault(),e.stopPropagation();return}});M(this,"unbind",()=>{var e=this._node;e&&(this._fire("unbind"),q.unbind(e,"keydown",this._keyHandler,!0)),this._node=null});this._config=e||{},this._eventBus=t,this._editorActions=i,this._listeners=[],t.on("viewer.destroy",this._destroy),t.on("viewer.init",this._init),t.on("attach",()=>{this._config.bindTo&&console.error("unsupported configuration <keyboard.bindTo>",new Error(yD)),this._target=r.getContainer();var o=this._config&&this._config.bind!==!1;o&&this.bind()}),t.on("detach",this.unbind)}bind(e){e&&console.error("unsupported argument <node>",new Error(yD)),this.unbind(),e=this._node=this._target,q.bind(e,"keydown",this._keyHandler,!0),this._fire("bind")}getBinding(){return this._node}_fire(e){this._eventBus.fire("keyboard."+e,{node:this._node,listeners:this._listeners})}_registerDefaultBindings(){var e=this._listeners,t=this._editorActions;function i(o,s){if(yw(s)&&!vw(s)&&o===90)return t.trigger("undo"),!0}function r(o,s){if(yw(s)&&(o===89||o===90&&vw(s)))return t.trigger("redo"),!0}e.push(i),e.push(r)}addListener(e){this._listeners.unshift(e)}removeListener(e){this._listeners=this._listeners.filter(t=>t!==e)}};Eu.$inject=["config.keyboard","eventBus","editorActions","renderer"];var Qy={__depends__:[gD],__init__:["keyboard"],keyboard:["type",Eu]};var Rd=class extends L{constructor(t,i){super(t,i);M(this,"onChange",()=>{let t=this._viewer.getDecision();t.variable&&this.setState({name:t.variable.name})});this._translate=i.injector.get("translate"),this._viewer=i.injector.get("viewer"),this._modeling=i.injector.get("modeling"),this._dataTypes=i.injector.get("dataTypes"),this._eventBus=i.injector.get("eventBus");let r=this._viewer.getDecision();this.state={name:r.variable.name,typeRef:r.variable.typeRef},this.setVariableName=this.setVariableName.bind(this),this.setVariableType=this.setVariableType.bind(this)}setVariableName(t){this._modeling.editVariableName(t),this.setState({name:t})}componentWillMount(){this._eventBus.on("elements.changed",this.onChange)}componentWillUnmount(){this._eventBus.off("elements.changed",this.onChange)}setVariableType(t){t===""?(this._modeling.editVariableType(void 0),this.setState({typeRef:void 0})):(this._modeling.editVariableType(t),this.setState({typeRef:t}))}render(){let{name:t,typeRef:i}=this.state,r=this._dataTypes.getAll().map(o=>({label:this._translate(o),value:o}));return y(1,"div","literal-expression-properties",y(1,"table","variables-table",[y(1,"tr",null,[y(1,"td",null,this._translate("Variable name:"),0),y(1,"td",null,P(2,St,{label:this._translate("Variable name"),className:"variable-name-input",onInput:this.setVariableName,placeholder:this._translate("name"),value:t||""}),2)],4),y(1,"tr",null,[y(1,"td",null,this._translate("Variable type:"),0),y(1,"td",null,y(1,"div","dms-fill-row",P(2,pe,{label:this._translate("Variable type"),onChange:this.setVariableType,options:r,value:i,className:"variable-type-select dms-block"}),2),2)],4),P(2,xw)],4),2)}},xw=class extends L{constructor(e,t){super(e,t),this._translate=t.injector.get("translate"),this._viewer=t.injector.get("viewer"),this._modeling=t.injector.get("modeling"),this._expressionLanguages=t.injector.get("expressionLanguages"),this.setExpressionLanguage=this.setExpressionLanguage.bind(this)}setExpressionLanguage(e){e===""?this._modeling.editExpressionLanguage(void 0):this._modeling.editExpressionLanguage(e)}_getExpressionLanguage(){let t=this._viewer.getDecision().decisionLogic;return t&&t.expressionLanguage?t.expressionLanguage.toLowerCase():this._getDefaultExpressionLanguage()}_getDefaultExpressionLanguage(){return this._expressionLanguages.getDefault().value}_shouldRender(){return this._expressionLanguages.getAll().length>1?!0:this._getExpressionLanguage()!==this._getDefaultExpressionLanguage()}render(){if(!this._shouldRender())return null;let e=this._getExpressionLanguage(),t=this._expressionLanguages.getAll();return y(1,"tr",null,[y(1,"td",null,this._translate("Expression language:"),0),y(1,"td",null,y(1,"div","dms-fill-row",P(2,pe,{label:this._translate("Expression language"),onChange:this.setExpressionLanguage,options:t,value:e,className:"expression-language-select dms-block"}),2),2)],4)}};var _9=500,Su=class{constructor(e){e.onGetComponent("viewer",_9,()=>Rd)}};Su.$inject=["components"];var vD={__depends__:[Kt,Qy,Qt,Yn,Xi],__init__:["literalExpressionProperties"],literalExpressionProperties:["type",Su]};var Ou=class n{constructor(e,t,i){this._commandStack=e,this._viewer=t,this._eventBus=i,i.on("viewer.init",()=>{w9(this.getHandlers(),e)})}getHandlers(){return n._getHandlers()}static _getHandlers(){return{"element.updateProperties":sr}}getDecision(){return this._viewer.getDecision()}editDecisionName(e){let i={element:this.getDecision(),properties:{name:e}};this._commandStack.execute("element.updateProperties",i)}editDecisionId(e){let i={element:this.getDecision(),properties:{id:e}};this._commandStack.execute("element.updateProperties",i)}editLiteralExpressionText(e){let r={element:this.getDecision().decisionLogic,properties:{text:e}};this._commandStack.execute("element.updateProperties",r)}editExpressionLanguage(e){let r={element:this.getDecision().decisionLogic,properties:{expressionLanguage:e}};this._commandStack.execute("element.updateProperties",r)}editVariableName(e){let r={element:this.getDecision().variable,properties:{name:e}};this._commandStack.execute("element.updateProperties",r)}editVariableType(e){let r={element:this.getDecision().variable,properties:{typeRef:e}};this._commandStack.execute("element.updateProperties",r)}updateProperties(e,t){let i={element:e,properties:t};this._commandStack.execute("element.updateProperties",i)}};Ou.$inject=["commandStack","viewer","eventBus"];function w9(n,e){k(n,function(t,i){e.registerHandler(i,t)})}var xD={__init__:["idChangeBehavior","nameChangeBehavior","modeling"],commandStack:["type",ke],idChangeBehavior:["type",Gn],nameChangeBehavior:["type",qi],modeling:["type",Ou]};var Td=class extends L{constructor(e,t){super(e,t),this._modeling=t.injector.get("modeling"),this._viewer=t.injector.get("viewer"),this._expressionLanguages=t.injector.get("expressionLanguages"),this._variableResolver=t.injector.get("variableResolver",!1),this._translate=t.injector.get("translate"),this.editLiteralExpressionText=this.editLiteralExpressionText.bind(this),this.onElementsChanged=this.onElementsChanged.bind(this);let{id:i}=this.getLiteralExpression();t.changeSupport.onElementsChanged(i,this.onElementsChanged)}getLiteralExpression(){return this._viewer.getDecision().decisionLogic}onElementsChanged(){this.forceUpdate()}editLiteralExpressionText(e){this._modeling.editLiteralExpressionText(e)}getEditor(){return this.isFeel()?bw:_w}isFeel(){return this.getExpressionLanguage()==="feel"}getExpressionLanguage(){return this.getLiteralExpression().expressionLanguage||this._expressionLanguages.getDefault().value}_getVariables(){let e=this.getLiteralExpression();return this._variableResolver&&this._variableResolver.getVariables(e)}render(){let{text:e}=this.getLiteralExpression(),t=this.getEditor(),i=this._getVariables();return P(2,t,{label:this._translate("Literal expression editor"),className:"textarea editor",value:e,onChange:this.editLiteralExpressionText,variables:i})}},bw=class extends L{render(){return P(2,Ri,{label:this.props.label,className:this.props.className,value:this.props.value,onInput:this.props.onChange,variables:this.props.variables})}},_w=class extends an{render(){return y(1,"div",this.getClassName(),this.getEditor(),0)}};var ku=class{constructor(e){e.onGetComponent("viewer",()=>Td)}};ku.$inject=["components"];var bD={__depends__:[Kt,qe],__init__:["textarea"],textarea:["type",ku]};var Ad=class n extends Go{getModules(){return[...Go._getModules(),...n._getModules()]}static _getModules(){return[pD,Qy,vD,xD,Qt,Yn,Xi,bD,tl]}};var Md=class{constructor(e){e.onGetComponent("viewer",()=>C9),e.onGetComponent("viewer",()=>E9),e.onGetComponent("viewer",()=>S9)}};M(Md,"$inject",["components"]);function C9(n,{injector:e}){let i=e.get("components").getComponents("header");return y(1,"div","dmn-boxed-expression-section dmn-boxed-expression-header",i&&i.map((r,o)=>P(2,r,null,o)),0)}function E9(n,{injector:e}){let i=e.get("components").getComponents("body");return y(1,"div","dmn-boxed-expression-section dmn-boxed-expression-body",i&&i.map((r,o)=>P(2,r,null,o)),0)}function S9(n,{injector:e}){let i=e.get("components").getComponents("footer");return y(1,"div","dmn-boxed-expression-section dmn-boxed-expression-footer",i&&i.map((r,o)=>P(2,r,null,o)),0)}var Pd=class{constructor(e){e.onGetComponent("viewer",()=>{let t=e.getComponents("table.before")||[];return()=>y(1,"div",null,t.map((i,r)=>P(2,i,null,r)),0)})}};M(Pd,"$inject",["components"]);var _D={__init__:["viewRenderer","tableJsSupport"],viewRenderer:["type",Md],tableJsSupport:["type",Pd]};var O9=2e3,Ru=class{constructor(e){e.onGetComponent("viewer",O9,()=>co)}};Ru.$inject=["components"];var wD={__init__:["poweredBy"],poweredBy:["type",Ru]};var Dd=class{constructor(e){e.onGetComponent("expression",({expression:t})=>{if(O(t,"dmn:LiteralExpression"))return k9})}};M(Dd,"$inject",["components"]);function k9({expression:n},e){let i=e.injector.get("literalExpression").getText(n);return y(1,"div","textarea",y(1,"div","content",i,0),2)}var oa=class{getText(e){return e.get("text")}};var CD={__init__:["literalExpressionComponent"],literalExpressionComponent:["type",Dd],literalExpression:["type",oa]};var Tu=class{getParameters(e){return e.get("formalParameter")}getBody(e){return e.get("body")}getKind(e){return e.get("kind")||"FEEL"}};var Id=class{constructor(e){e.onGetComponent("expression",({expression:t})=>{if(O(t,"dmn:FunctionDefinition"))return R9})}};M(Id,"$inject",["components"]);function R9({expression:n},e){let t=e.injector.get("functionDefinition"),i=t.getKind(n),r=t.getParameters(n),o=t.getBody(n);return y(1,"div","function-definition",[P(2,A9,{kind:i}),P(2,M9,{parameters:r}),P(2,D9,{expression:o})],4)}var T9={FEEL:"F",Java:"J",PMML:"P"};function A9({kind:n},e){let t=e.injector.get("translate");return y(1,"div","function-definition-kind",T9[n],0,{title:t("Function kind: {kind}",{kind:n})})}function M9({parameters:n}){return y(1,"div","function-definition-parameters",y(1,"div",null,[Z("("),n.reduce((e,t)=>e.concat(P(2,P9,{parameter:t}),", "),[]).slice(0,-1),Z(")")],0),2)}function P9({parameter:n}){let{name:e,typeRef:t}=n,i=e||"<unnamed>";return y(1,"span",null,t?`${i}: ${t}`:i,0)}function D9({expression:n},e){let t=e.components.getComponent("expression",{expression:n});return y(1,"div","function-definition-body",P(2,t,{expression:n}),2)}var ED={__init__:["functionDefinitionComponent"],functionDefinition:["type",Tu],functionDefinitionComponent:["type",Id]};var Au=class extends L{constructor(t,i){super(t,i);M(this,"onClick",()=>{this._eventBus.fire("showDrd")});let{injector:r}=i;this._translate=r.get("translate"),this._eventBus=r.get("eventBus")}render(){return y(1,"div","view-drd",y(1,"button","view-drd-button",this._translate("View DRD"),0,{type:"button",onClick:this.onClick}),2,null,null,t=>this.node=t)}};Au.$inject=["translate"];var I9=2e3,Mu=class{constructor(e,t,i){this._injector=i,e.onGetComponent("viewer",I9,()=>{if(this.canViewDrd())return Au}),t.on("showDrd",()=>{let r=i.get("_parent",!1),o=r.getDefinitions(),s=r.getView(o);r.open(s)})}canViewDrd(){let e=this._injector.get("_parent",!1);if(!e)return;let t=e.getDefinitions();return!!e.getView(t)}};Mu.$inject=["components","eventBus","injector"];var SD={__init__:["viewDrd"],viewDrd:["type",Mu]};function ww(n,e){let t=e.injector.get("viewer"),{name:i}=t.getRootElement();return y(1,"div","element-properties",y(1,"h2","element-name",i,0),2)}var Pu=class{constructor(e){e.onGetComponent("header",()=>ww)}};Pu.$inject=["components"];var OD={__init__:["elementProperties"],elementProperties:["type",Pu]};var L9=100,Du=class{constructor(e){e.onGetComponent("body",()=>B9),e.onGetComponent("expression",L9,()=>$9)}};M(Du,"$inject",["components"]);function B9(n,{injector:e}){let t=e.get("components"),r=e.get("viewer").getRootElement(),o=N9(r),s=t.getComponent("expression",{expression:o});return P(2,s,{expression:o})}function N9(n){if(O(n,"dmn:Decision"))return n.get("decisionLogic");if(O(n,"dmn:BusinessKnowledgeModel"))return n.get("encapsulatedLogic")}function $9({expression:n}){return y(1,"div",null,y(1,"span",null,[Z("Expression of type "),n.$type,Z(" is not supported.")],0,{style:"color:red;"}),2)}var kD={__init__:["elementLogic"],elementLogic:["type",Du]};var Xo=class{constructor(e){this._viewer=e}getName(){let e=this.getVariable(),t=this._getElement();return(e?e.get("name"):null)||t.get("name")}getType(){let e=this.getVariable();return e?e.get("typeRef"):"Any"}_getElement(){return this._viewer.getRootElement()}getVariable(){return this._getElement().get("variable")}};M(Xo,"$inject",["viewer"]);var Iu=class{constructor(e){e.onGetComponent("footer",()=>j9)}};M(Iu,"$inject",["components"]);function j9(n,e){let t=e.injector.get("elementVariable"),i=e.injector.get("translate"),r=t.getName(),o=t.getType();return y(1,"div","element-variable",[y(1,"h2",null,Z("Result"),2),y(1,"div","element-variable-name",[y(1,"span","element-variable-name-label",i("Variable name"),0),y(1,"span",null,r,0)],4),y(1,"div","element-variable-type",[y(1,"span","element-variable-type-label",i("Variable type"),0),y(1,"span",null,o,0)],4)],4)}var RD={__init__:["elementVariableComponent"],elementVariable:["type",Xo],elementVariableComponent:["type",Iu]};var sa=class n extends ra{constructor(e={}){let t=n._createContainer();super(T(e,{renderer:{container:t}})),this._container=t}open(e){let t=this.get("eventBus");return new Promise((i,r)=>{let o;try{this.getRootElement()&&(this.clear(),t.fire("renderer.unmount")),this._setRootElement(e),t.fire("import",e),t.fire("renderer.mount")}catch(s){o=s}o?(o.warnings=o.warnings||[],r(o)):i({warnings:[]})})}_init(e){let{modules:t,additionalModules:i,...r}=e,o=t||this.getModules(),s=i||[],a=[{viewer:["value",this]}];return{modules:[...o,...s,...a],config:r}}on(e,t,i,r){return this.get("eventBus").on(e,t,i,r)}off(e,t){this.get("eventBus").off(e,t)}_emit(e,t){return this.get("eventBus").fire(e,t)}getRootElement(){return this._root}_setRootElement(e){this._root=e}attachTo(e){if(!e)throw new Error("parentNode required");this.detach(),e.appendChild(this._container),this._emit("attach",{})}detach(){let e=this._container;e.parentNode&&(this._emit("detach",{}),Qe(e))}destroy(){super.destroy(),this.detach()}getModules(){return[_D,qe,wD,SD,OD,kD,ED,CD,RD]}static _createContainer(){return te('<div class="dmn-boxed-expression-container"></div>')}};var Ld=class{constructor(e,t){this.registerBindings(t,e)}registerBindings(e,t){function i(r,o){t.isRegistered(r)&&e.addListener(o)}i("undo",function(r){let o=r.keyEvent;if(Tp(o))return t.trigger("undo"),!0}),i("redo",function(r){let o=r.keyEvent;if(Ap(o))return t.trigger("redo"),!0})}};M(Ld,"$inject",["editorActions","keyboard"]);var TD={__depends__:[_o],__init__:["keyboardBindings"],keyboardBindings:["type",Ld]};var Lu=class extends ae{constructor(t,i){super(t);M(this,"updateName",({context:t})=>{let{element:i,properties:r}=t;this.isNameChanged(r)&&(this.isVariable(i)?this.handleVariableNameChange(i):this.isVariableContainer(i)&&this.handleVariableContainerNameChange(i))});this._modeling=i,this.postExecuted("element.updateProperties",this.updateName)}isNameChanged(t){return"name"in t}isVariable(t){let i=AD(t);return O(t,"dmn:InformationItem")&&i&&i.get("variable")===t}isVariableContainer(t){let i=t.get("variable");return i&&O(i,"dmn:InformationItem")}handleVariableNameChange(t){let i=AD(t),r=t.get("name");r!==i.get("name")&&this._modeling.updateProperties(i,{name:r})}handleVariableContainerNameChange(t){let i=t.get("variable"),r=t.get("name");i&&r!==i.get("name")&&this._modeling.updateProperties(i,{name:r})}};M(Lu,"$inject",["eventBus","modeling"]);function AD(n){return n.$parent}var Bu=class{constructor(e,t,i){this._commandStack=e,this._viewer=t,this._eventBus=i,F9(this._getHandlers(),e)}_getHandlers(){return{"element.updateProperties":sr}}updateProperties(e,t){let i={element:e,properties:t};this. (…)
[all...]