@componyx/ui 0.0.0-stage → 1.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (169) hide show
  1. package/AppSkin/AppSkin.css +1268 -0
  2. package/AppSkin/AppSkin.js +2748 -0
  3. package/AppSkin/Themes/Default.css +241 -0
  4. package/Base/Base.js +3407 -0
  5. package/Base/ComponentIcons.css +66 -0
  6. package/Base/Font/ComponentIcons.woff +0 -0
  7. package/Base/Font/UI.woff +0 -0
  8. package/Base/Library.js +8432 -0
  9. package/Base/NavigationManager.js +462 -0
  10. package/Base/ResponsiveTemplates.js +371 -0
  11. package/Base/Sanitizer.js +288 -0
  12. package/Base/Themes/Default.css +255 -0
  13. package/Base/UI.css +618 -0
  14. package/Base/UIResourcePath.js +6 -0
  15. package/Bindary/Bindary.js +2011 -0
  16. package/Bindary/Modules/Connection.js +216 -0
  17. package/Bindary/Modules/Core.js +854 -0
  18. package/Bindary/Modules/DataUpdater.js +351 -0
  19. package/Bindary/Modules/ExpressionEngine.js +347 -0
  20. package/Bindary/Modules/ProxyManager.js +482 -0
  21. package/Bindary/Modules/Renderer.js +605 -0
  22. package/Bindary/Modules/Router.js +291 -0
  23. package/Bindary/Modules/Scroller.js +89 -0
  24. package/Bindary/Modules/Template.js +1273 -0
  25. package/BookmarkSpy/BookmarkSpy.js +430 -0
  26. package/Box/Box.css +36 -0
  27. package/Box/Box.js +1685 -0
  28. package/Button/Button.css +470 -0
  29. package/Button/Button.js +1398 -0
  30. package/Button/Themes/Default.css +200 -0
  31. package/Carousel/Carousel.css +273 -0
  32. package/Carousel/Carousel.js +607 -0
  33. package/ColorButton/ColorButton.css +39 -0
  34. package/ColorButton/ColorButton.js +336 -0
  35. package/ColorPicker/ColorPicker.css +359 -0
  36. package/ColorPicker/ColorPicker.js +972 -0
  37. package/ComboBox/ComboBox.css +357 -0
  38. package/ComboBox/ComboBox.js +2342 -0
  39. package/ComboBox/Themes/Default.css +23 -0
  40. package/DataPager/DataPager.css +72 -0
  41. package/DataPager/DataPager.js +674 -0
  42. package/DatePicker/DatePicker.css +227 -0
  43. package/DatePicker/DatePicker.js +1531 -0
  44. package/DatePicker/Themes/Default.css +26 -0
  45. package/Dialog/Dialog.css +106 -0
  46. package/Dialog/Dialog.js +572 -0
  47. package/Dialog/Themes/Default.css +10 -0
  48. package/Editor/Data/Emoji.json +8285 -0
  49. package/Editor/Data/Special.json +1042 -0
  50. package/Editor/Editor.css +1562 -0
  51. package/Editor/Editor.js +4058 -0
  52. package/Editor/Font/Editor.woff +0 -0
  53. package/Editor/Modules/ComponentFactory.js +565 -0
  54. package/Editor/Modules/ContentManager.js +748 -0
  55. package/Editor/Modules/DialogManager.js +1234 -0
  56. package/Editor/Modules/EventManager.js +458 -0
  57. package/Editor/Modules/Format.js +950 -0
  58. package/Editor/Modules/History.js +191 -0
  59. package/Editor/Modules/LayoutState.js +379 -0
  60. package/Editor/Modules/ListManager.js +296 -0
  61. package/Editor/Modules/MenuManager.js +388 -0
  62. package/Editor/Modules/NodeManager.js +681 -0
  63. package/Editor/Modules/ParagraphButtons.js +122 -0
  64. package/Editor/Modules/Resizer.js +176 -0
  65. package/Editor/Modules/SelectionRange.js +564 -0
  66. package/Editor/Modules/SourceViewBuilder.js +212 -0
  67. package/Editor/Modules/SymbolPicker.js +208 -0
  68. package/Editor/Modules/Table.js +2327 -0
  69. package/Editor/Modules/TableDialog.js +757 -0
  70. package/Editor/Modules/Toolbar.js +375 -0
  71. package/Editor/Modules/TooltipMenu.js +125 -0
  72. package/Editor/Modules/Utility.js +131 -0
  73. package/Editor/Themes/Default.css +204 -0
  74. package/FileUpload/FileUpload.css +156 -0
  75. package/FileUpload/FileUpload.js +898 -0
  76. package/FileUpload/Themes/Default.css +17 -0
  77. package/Form/Form.css +1934 -0
  78. package/Form/Form.js +4943 -0
  79. package/Form/Modules/ActionManager.js +368 -0
  80. package/Form/Modules/BuildPanelManager.js +319 -0
  81. package/Form/Modules/ComponentFactory.js +468 -0
  82. package/Form/Modules/ComponentPanel.js +265 -0
  83. package/Form/Modules/ConfigPanelManager.js +685 -0
  84. package/Form/Modules/DataBinder.js +602 -0
  85. package/Form/Modules/DataObserver.js +717 -0
  86. package/Form/Modules/Draggable.js +756 -0
  87. package/Form/Modules/OptionsPanel.js +342 -0
  88. package/Form/Modules/Renderer.js +1889 -0
  89. package/Form/Modules/RuleEngine.js +585 -0
  90. package/Form/Modules/RulesPanel.js +1158 -0
  91. package/Form/Modules/Types.js +1709 -0
  92. package/Form/Modules/ValidationManager.js +194 -0
  93. package/Form/Themes/Default.css +216 -0
  94. package/FormField/FormField.css +468 -0
  95. package/FormField/FormField.js +576 -0
  96. package/FormField/Themes/Default.css +99 -0
  97. package/Grid/Grid.css +544 -0
  98. package/Grid/Grid.js +3761 -0
  99. package/Grid/Themes/Default.css +43 -0
  100. package/LICENSE +126 -0
  101. package/MaskedTextBox/MaskedTextBox.css +28 -0
  102. package/MaskedTextBox/MaskedTextBox.js +642 -0
  103. package/MaskedTextBox/Themes/Default.css +6 -0
  104. package/Menu/Menu.css +328 -0
  105. package/Menu/Menu.js +2386 -0
  106. package/Menu/Themes/Default.css +24 -0
  107. package/NumericBox/NumericBox.css +120 -0
  108. package/NumericBox/NumericBox.js +984 -0
  109. package/PanelBar/PanelBar.css +123 -0
  110. package/PanelBar/PanelBar.js +505 -0
  111. package/PanelBar/Themes/Default.css +51 -0
  112. package/PieChart/PieChart.css +95 -0
  113. package/PieChart/PieChart.js +820 -0
  114. package/PieChart/Themes/Default.css +9 -0
  115. package/README.md +178 -3
  116. package/Slider/Slider.css +348 -0
  117. package/Slider/Slider.js +1306 -0
  118. package/Slider/Themes/Default.css +44 -0
  119. package/TabStrip/TabStrip.css +52 -0
  120. package/TabStrip/TabStrip.js +362 -0
  121. package/TabStrip/Themes/Default.css +35 -0
  122. package/TimePicker/Themes/Default.css +30 -0
  123. package/TimePicker/TimePicker.css +253 -0
  124. package/TimePicker/TimePicker.js +1485 -0
  125. package/TooltipManager/Themes/Default.css +21 -0
  126. package/TooltipManager/TooltipManager.css +227 -0
  127. package/TooltipManager/TooltipManager.js +791 -0
  128. package/Validator/Validator.css +54 -0
  129. package/Validator/Validator.js +2508 -0
  130. package/componyx.html-data.json +619 -0
  131. package/index.js +27 -0
  132. package/package.json +43 -4
  133. package/types/AppSkin.d.ts +842 -0
  134. package/types/Base.d.ts +1034 -0
  135. package/types/Bindary.d.ts +1196 -0
  136. package/types/BookmarkSpy.d.ts +112 -0
  137. package/types/Box.d.ts +374 -0
  138. package/types/Button.d.ts +455 -0
  139. package/types/Carousel.d.ts +136 -0
  140. package/types/ColorButton.d.ts +120 -0
  141. package/types/ColorPicker.d.ts +225 -0
  142. package/types/ComboBox.d.ts +507 -0
  143. package/types/DataPager.d.ts +152 -0
  144. package/types/DatePicker.d.ts +354 -0
  145. package/types/Dialog.d.ts +160 -0
  146. package/types/Editor.d.ts +1289 -0
  147. package/types/FileUpload.d.ts +206 -0
  148. package/types/Form.d.ts +3078 -0
  149. package/types/FormField.d.ts +204 -0
  150. package/types/Grid.d.ts +911 -0
  151. package/types/Library.d.ts +1899 -0
  152. package/types/MaskedTextBox.d.ts +91 -0
  153. package/types/Menu.d.ts +577 -0
  154. package/types/NumericBox.d.ts +310 -0
  155. package/types/PanelBar.d.ts +223 -0
  156. package/types/PieChart.d.ts +224 -0
  157. package/types/ResponsiveTemplates.d.ts +108 -0
  158. package/types/Slider.d.ts +227 -0
  159. package/types/TabStrip.d.ts +185 -0
  160. package/types/TimePicker.d.ts +265 -0
  161. package/types/TooltipManager.d.ts +178 -0
  162. package/types/UI.d.ts +29 -0
  163. package/types/Validator.d.ts +653 -0
  164. package/types/index.d.ts +59 -0
  165. package/ui.css +11783 -0
  166. package/ui.js +79477 -0
  167. package/ui.min.css +138 -0
  168. package/ui.min.js +264 -0
  169. package/ui.min.js.map +1 -0
package/ui.min.js ADDED
@@ -0,0 +1,264 @@
1
+ /*! Componyx.UI | (c) E.H. Daanen / Componyx | BUSL-1.1 | componyx.com/license */
2
+ (async function(window){var Dt=Object.defineProperty;var u=(F,r)=>Dt(F,"name",{value:r,configurable:!0});globalThis.componyx={},globalThis.CMP=globalThis.componyx,(function(F){let r,Oe=new Set,C,Ne,qe=1,pe=F.requestAnimationFrame,De=F.cancelAnimationFrame,Qe=/(\-([a-z]){1})/g,Xe=F.navigator,ht=Xe.pointerEnabled==!0,pt=(Xe.msMaxTouchPoints||Xe.maxTouchPoints)>0&&(ht||"ontouchstart"in document.documentElement),Je={onmousedown:"onpointerdown",onmouseup:"onpointerup",onmousemove:"onpointermove"};u(function(){},"_noop");let He=new WeakMap,Le=u(function(e){e.preventDefault(),e.stopPropagation();},"_stopEvent"),je=u(function(e){e.preventDefault();},"_preventDefault"),et=u(function(e,t){const n=getComputedStyle(e).touchAction;e.__touchAction!==void 0||n&&n!=="auto"||(e.__touchAction=e.style.touchAction,e.style.touchAction=t);},"_setTouchAction"),tt=u(function(e){e.__touchAction!==void 0&&(e.style.touchAction=e.__touchAction,delete e.__touchAction);},"_resetTouchAction"),Ye=u(function(e,t,n){return Array.prototype.slice.call(e,t,n)},"_slice"),xe=u(function(e,t){t?t.parentElement.insertBefore(e,t):(r(null,null,"head",!0)||r.getDocument().body).appendChild(e);},"_addTag"),rt=u(function(e,t,n){var i=e.__events[t],o=i.get(n);o&&(r.each(o,function(l){if(l.listenerMethod){e.removeEventListener(l.orgEventType,l.listenerMethod,l.options||!1);let a=ke(e),c;for(c=a.length-1;c>=0;c--){let s=a[c];s.handlerGuid===n&&s.listener===l.listenerMethod&&a.splice(c,1);}}}),i.delete(n)),i.size==0&&(e.__events[t]=null,e[t]&&(e[t]=null));},"_removeHandler"),ke=u(function(e){let t=He.get(e);return t||(t=[],He.set(e,t)),t},"_getNativeListeners"),yt=u(function(e){return r.styleValue(e,"box-sizing",!0)==="border-box"},"_isBorderBox"),nt=u(function(e,t){var n=r.element(r.getDocument().body),i=r.getDocument().createElement("div"),o=r.styleValue,l="1px",a={};return r.updateStyle(n.style,r.format("border-style:solid;border-color:transparent;width:{0};min-width:{0};height:{0};min-height:{0}",l)),r.updateStyle(n.style,r.format("{0}top:{1};{0}right:{2};{0}bottom:{3};{0}left:{4};","padding-",o(e,"paddingTop"),o(e,"paddingRight"),o(e,"paddingBottom"),o(e,"paddingLeft"))),r.updateStyle(n.style,r.format("{0}top-{1}:{2};{0}right-{1}:{3};{0}bottom-{1}:{4};{0}left-{1}:{5};","border-","width",o(e,"borderTopWidth"),o(e,"borderRightWidth"),o(e,"borderBottomWidth"),o(e,"borderLeftWidth"))),i.style.width=i.style.height="1px",n.appendChild(i),t=="border"?(r.updateStyle(n.style,"padding:0"),c("border")):(r.updateStyle(n.style,"border:0"),c("padding")),r.remove(n),a;function c(s){var f=r.getPos(n),d=r.getPos(n.firstChild);a[s+"Top"]=d.top-f.top,a[s+"Right"]=f.right-d.right,a[s+"Bottom"]=f.bottom-d.bottom,a[s+"Left"]=d.left-f.left;}},"_getSize"),mt=u(function(e,t,n,i,o){var l=[],a=[],c=-1,s,f=!1,d=u(function(){f=!0;},"stop"),h;if(e=r.trim(e),n=r.trim(n)||"*",t=t||r.getDocument(),l=t.getElementsByClassName(e),s=l.length,n!="*"||i)for(n=" "+n.toLowerCase()+" ",i&&n!=" * "?h=u(function(y,p){return n.indexOf(" "+y.nodeName.toLowerCase()+" ")>-1&&i(y,p)},"fn"):n!=" * "?h=u(function(y,p){return n.indexOf(" "+y.nodeName.toLowerCase()+" ")>-1},"fn"):h=i;++c<s&&!f;)h(l[c],d)&&(a.push(l[c]),o&&(f=!0));else if(o)for(;++c<s&&!f;)a.push(l[c]),o&&(f=!0);else for(;++c<s;)a.push(l[c]);return o?a[0]||null:a},"_getElementsByClassName"),Ze=u(function(e,t,n,i){var o=[],l=-1,a=0,c=!1,s=u(function(){c=!0;},"stop"),f=[],d;if(t=r.trim(t)||"*",t=t.toLowerCase(),e=e||r.getDocument(),t.indexOf(" ")!=-1?(f=e.getElementsByTagName("*"),t=" "+t+" ",n?d=u(function(h,y){return t.indexOf(" "+h.nodeName.toLowerCase()+" ")>-1&&n(h,y)},"fn"):d=u(function(h,y){return t.indexOf(" "+h.nodeName.toLowerCase()+" ")>-1},"fn")):(d=n,f=e.getElementsByTagName(t)),a=f.length,d)for(;++l<a&&!c;)d(f[l],s)&&(o.push(f[l]),i&&(c=!0));else if(i)for(;++l<a&&!c;)o.push(f[l]),i&&(c=!0);else for(;++l<a;)o.push(f[l]);return i?o[0]||null:o},"_getElements"),Be=u(function(e,t,n,i){var o=[],l,a=!1,c,s=u(function(){a=!0;},"stop");if(t=r.trim(t)||"*",t=t.toLowerCase(),l=e,t!="*"?(t=" "+t+" ",n?c=u(function(f,d){return t.indexOf(" "+f.nodeName.toLowerCase()+" ")>-1&&n(f,d)},"fn"):c=u(function(f,d){return t.indexOf(" "+f.nodeName.toLowerCase()+" ")>-1},"fn")):c=n,c)for(;(l=l.parentNode)&&!a;)c(l,s)&&(o.push(l),i&&(a=!0));else if(i)for(;(l=l.parentNode)&&!a;)o.push(l),i&&(a=!0);else for(;l=l.parentNode;)o.push(l);return i?o[0]||null:o},"_getParentElements"),Ve=u(function(e,t){e=e||r.defaultView(t||this).event,e instanceof Event&&(r.event=e);let n=e.type.toLowerCase(),i=t?t.__events[n]:this.__events["on"+n],o=[],l=null,a=Ye(arguments);if(t=t||this,!i)return;a.length>2?a=a.slice(2):a=null,i.forEach(function(d,h,y){if(l!=!1){let _=[];for(var p=0;p<d.length;++p){let g=d[p],v=[];if(!g.fired&&(g.fireOnce&&(g.fired=!0,_.push(g)),r.isEmpty(g.args)||(v=g.args.slice()),a&&(v=v.concat(a)),v.push(e),l=g.handler.apply(g.context||t,v),o.push(l),e.returnValue!=null&&e.returnValue===!1&&(l=!1),l==!1))break}if(_.length>0)if(_.length==d.length)r.off(t,n,h);else for(var p=0;p<_.length;++p){let v=d.indexOf(_[p]);v>-1&&d.splice(v,1);}}});const c=r.defaultView(r.getDocument()),s=c.Promise||Promise,f=o.filter(d=>d instanceof s);return f.length>0?Promise.all(f).then(()=>l):l},"_handleEvent"),We=u(function(e){return e=e.toLowerCase(),e.indexOf("on")!==0&&(e="on"+e),Je[e]&&(e=Je[e]),e},"_translateEventType"),it=u(function(e,t){var n=e[t];return e.touches&&e.touches[0]?n=e.touches[0][t]:e.changedTouches&&e.changedTouches[0]&&(n=e.changedTouches[0][t]),n},"_eventKey"),ot=u(function(e,t,n,i){var o=e.left>=t.left&&e.left<=t.right||t.left>=e.left&&t.left<=e.right||e.right>=t.left&&e.right<=t.right||t.right>=e.left&&t.right<=e.right,l=e.top>=t.top&&e.top<=t.bottom||t.top>=e.top&&t.top<=e.bottom||e.bottom>=t.top&&e.bottom<=t.bottom||t.bottom>=e.top&&t.bottom<=e.bottom;return n=n??!0,i=i??!0,n&&i?o&&l:i?l:o},"_touch"),gt=u(function(e){return e.__guid||(e.__guid=r.guid()),Ue(e)},"_setGUID"),Ue=u(function(e){return e.__guid},"_getGUID"),Me=u(function(e,t,n){e.__callbackQueue||(e.__callbackQueue=[]);var i=e.__callbackQueue[e.__callbackQueue.length]={};i.complete=t,i.error=n;},"_addCallback"),lt=u(function(e){var t=!1;if(e.type=="text/css")try{var n=e.sheet.cssRules;}catch(i){t=!0,r.log(i.message+" "+e.href);}return t},"_refuseCssRules"),Pe=u(function(e,t){if(e){if(t||(t=lt(e)),e.onload=e.onreadystatechange=null,e.__busy=null,e.hasAttribute&&e.hasAttribute("__busy")&&e.removeAttribute("__busy"),e.__callbackQueue){for(var n=0;e.__callbackQueue[n];++n)t?e.__callbackQueue[n].error():e.__callbackQueue[n].complete();e.__callbackQueue=null,e.hasAttribute&&e.hasAttribute("__callbackQueue")&&e.removeAttribute("__callbackQueue");}t&&(e.__error=!0);}},"_srcReady"),vt=u(function(e){const t=r.styleValue,n=r.getDocument().createElement("div"),i=e.offsetWidth,o=e.offsetHeight,l=e.getBoundingClientRect();return n.style.position=t(e,"position",!0),n.style.left=t(e,"left",!0),n.style.right=t(e,"right",!0),n.style.top=t(e,"top",!0),n.style.bottom=t(e,"bottom",!0),n.style.marginLeft=t(e,"marginLeft",!0),n.style.marginRight=t(e,"marginRight",!0),n.style.marginTop=t(e,"marginTop",!0),n.style.marginBottom=t(e,"marginBottom",!0),n.style.zIndex=t(e,"zIndex",!0),n.style.width=r.unit(l.width),n.style.height=r.unit(l.height),n.style.overflow="hidden",n.style.setProperty("--cui-mask-width",`${i}px`),n.style.setProperty("--cui-mask-height",`${o}px`),e.replaceWith(n),n.appendChild(e),n},"_createMask"),bt=u(function(e){var t=e.parentNode;return t.replaceWith(e),t},"_removeMask");u(function(e){var t=e.style,n={position:t.position,left:t.left,right:t.right,top:t.top,bottom:t.bottom,margin:t.margin,"margin-left":t.marginLeft,"margin-right":t.marginRight,"margin-top":t.marginTop,"margin-bottom":t.marginBottom,width:t.width,"box-sizing":t.boxSizing};return n},"_getPositionStyle");u(function(e,t){var n=[];r.each(t,function(i,o){n.push(o+":"+i+";");}),r.updateStyle(e.style,n.join(""));},"_setPositionStyle");let St=u(function(e){var t=r.styleValue(e,"opacity");return t!=""?t:1},"_getOpacity"),Fe=u(function(e,t){e.style.opacity=t;},"_setOpacity"),ze=u(function(e){return e==null||e==null||r.isArray(e)?e:[e]},"_toArray"),at=u(function(e,t){let n=e.ownerDocument.documentElement;if(!(t&&!Oe.size)){if(t)for(;e&&e!=n;)Oe.has(e)&&(e.style.display="none"),e=e.parentNode;else for(;e&&e!=n;)e.style.display=="none"&&(e.style.display="",Oe.add(e)),e=e.parentNode;t&&(Oe=new Set);}},"_setDisplay"),Ct=u(function(e){const{scrollX:t,scrollY:n,boundary:i,scrollContainer:o,state:l}=e;let a=1;if(l.scrolling)return;l.scrolling=!0;let c={...l.currentPositions},s={x:t?c.left<i.left?"left":c.right>i.right?"right":null:null,y:n?c.top<i.top?"up":c.bottom>i.bottom?"down":null:null};function f(){const d=l.currentPositions||{},h=o,y=t&&(s.x==="left"&&h.scrollLeft===0||s.x==="right"&&h.scrollLeft>=h.scrollWidth-h.clientWidth),p=n&&(s.y==="up"&&h.scrollTop===0||s.y==="down"&&h.scrollTop>=h.scrollHeight-h.clientHeight);if(!l.dragging||y||p||t&&(s.x==="left"&&d.left>c.left||s.x==="right"&&d.left<c.left)||n&&(s.y==="up"&&d.top>c.top||s.y==="down"&&d.top<c.top)){l.scrolling=!1;return}let _=0,g=0;if(t&&s.x&&(_=s.x==="left"?-a:a),n&&s.y&&(g=s.y==="up"?-a:a),_===0&&g===0){l.scrolling=!1;return}l.scrolledByDrag=!0,h.scrollBy(_,g),a=Math.min(a+1,10),c={...l.currentPositions},l.drag&&l.drag(),l.scrolledByDrag=!1,pe(f);}u(f,"step"),pe(f);},"_scrollDraggable"),st={replacer:u(function(e,t,n,i,o,l,a){var c=r.JSON.CasingOption,s=r.JSON.OptimizerOption;n=n||c.NONE,i=i||s.NONE;var f=null,d=[],h=(i&s.OPTIMIZED)==s.OPTIMIZED,y=h||(i&s.EXCLUDENULL)==s.EXCLUDENULL,p=h||(i&s.EXCLUDEFALSE)==s.EXCLUDEFALSE,_=h||(i&s.EXCLUDEZERO)==s.EXCLUDEZERO,g=h||(i&s.EXCLUDEEMPTY)==s.EXCLUDEEMPTY;if((n||i||o||a)&&t!=null&&typeof t=="object"){for(var v in t)f=v,!o||o[v]&&!l||!o[v]&&l?(n!=c.NONE&&/^[A-Z]/.test(v)&&Object.hasOwnProperty.call(t,v)&&(f=r.format("{0}{1}",n==c.CAMELCASE?v.charAt(0).toLowerCase():v.charAt(0).toUpperCase(),v.substr(1)),t[f]=t[v],delete t[v]),a&&a(f,t[f],t)):d.push(v);r.each(d,function(E){delete t[E];});}if(!(r.isEmpty(t)&&y||typeof t=="number"&&t==0&&_||typeof t=="boolean"&&t===!1&&p||typeof t=="string"&&t===""&&g))return t},"replacer")},_t={once:u(function(e,t){return this.add(e,t,!0)},"once"),add:u(function(e,t,n){return r.on(this,this.eventName,e,t,null,null,n)},"add"),has:u(function(e){let t=this.eventName.toLowerCase(),n=!1;return this[t+"_"]&&(n=r.has(this,t+"_",e)),!n&&this[t]&&(n=r.has(this,t,e)),n},"has"),remove:u(function(e){var t=this.eventName.toLowerCase();this[t+"_"]&&r.off(this,t+"_",e),this[t]&&r.off(this,t,e);},"remove"),removeAll:u(function(){var e=this.eventName.toLowerCase();this[e]&&r.off(this,e);},"removeAll"),disable:u(function(e=!1){var t=this;e?t.__priorityDisabled=!0:t.__disabled=!0,clearTimeout(t.__disabledTimerId),t.__disabledTimerId=setTimeout(function(){t.__disabled=null;},0);},"disable"),enable:u(function(e=!1){var t=this;clearTimeout(t.__disabledTimerId),e?t.__priorityDisabled=!1:t.__disabled=!1;},"enable"),priorityAdd:u(function(e,t,n){return r.on(this,this.eventName+"_",e,t,null,null,n)},"priorityAdd"),priorityRemove:u(function(e){var t=this.eventName.toLowerCase();(!e||e==2)&&this[t+"_"]&&r.off(this,t+"_"),(!e||e==1)&&this[t]&&r.off(this,t);},"priorityRemove"),fire:u(function(e,t){const n=this.eventName.toLowerCase(),i=r.defaultView(r.getDocument()),o=i.Promise||Promise;let l,a,c=[];r.isEmpty(t)&&(t=[]),r.isArray(t)||(t=[t]),!this.__priorityDisabled&&this[n+"_"]&&(l=this[n+"_"].apply(e,t),l!==void 0&&c.push(l)),!this.__disabled&&this[n]&&(a=this[n].apply(e,t),a!==void 0&&c.push(a));const s=c.filter(f=>f instanceof o);return s.length>0?Promise.all(s).then(()=>{}):a!==void 0?a:l},"fire"),isBound:u(function(){var e=this.eventName.toLowerCase();return this[e+"_"]||this[e]},"isBound"),handlers:u(function(){return this.__events?this.__events[this.eventName.toLowerCase()]:null},"handlers"),priorityHandlers:u(function(){return this.__events?this.__events[this.eventName.toLowerCase()+"_"]:null},"priorityHandlers")},Et=typeof Object.create!="function"?function(e){function t(){}return u(t,"F"),t.prototype=e,new t}:Object.create,ut=u(function(e){const t=r.isPlainObject(e.source),n=r.isArray(e.source);if(!e.source||e.source===e.target)return e.target;if(!t&&!n||Object.isFrozen(e.source))return e.source;for(var i=0;i<e.exclude.length;++i)if(e.exclude[i][0]===e.source)return e.exclude[i][1];let o=null;if(t&&e.types&&(!e.typeCheck||e.typeCheck==="constructor"?o=e.source.constructor&&e.source.constructor.name:o=e.source[e.typeCheck]),typeof e.source=="object"&&!t&&!n&&!(e.source.constructor!==Object&&e.types&&e.types[o]))try{const l=structuredClone(e.source);return e.exclude.push([e.source,l]),l}catch{return e.source}if(typeof e.source=="object")if(n)e.target=r.isArray(e.target)?e.target:[];else if(o&&e.types&&e.types[o]){const l=e.types[o]||e.source.constructor;e.target=e.target||new l;}else e.target=!e.target||"function object".indexOf(typeof e.target)==-1?{}:e.target;return e.exclude.push([e.source,e.target]),r.each(e.source,function(l,a){let c=typeof l,s=e.target[a],f=typeof s,d=e.deep&&l&&typeof l=="object"&&s&&typeof s=="object"&&(r.isPlainObject(l)||r.isArray(l));if(e.omit.has(a)||c=="undefined"||f=="undefined"&&!e.extend||e.excludeFunctions&&c==="function"||f!="undefined"&&e.overwrite==0&&!d||!r.isEmpty(s)&&e.overwrite!=1&&!d||r.isEmpty(e.source[a])&&(e.excludeEmpty==1||e.excludeEmpty==2&&r.isPlainObject(s)))return;let h=e.converter[a];if(h)e.target[a]=h(l,a,e.target),e.report&&(e.report.changed=!0);else if(e.deep&&(r.isPlainObject(l)||r.isArray(l)||typeof l=="object"&&l!==null)){const y=Object.create(e);y.target=e.target[a],y.source=l,y.exclude=e.exclude.slice(),e.target[a]=ut(y);}else e.report&&e.target[a]!==l?(e.target[a]=l,e.report.changed=!0):e.report||(e.target[a]=l);}),e.target},"_clone"),G=u(function(e,t,n,i){var o=[],l=[];n=n||function(){return !0},i=i??!1,c(e,[]);for(var a=0;a<o.length;a++)l.push(new Ge(e,t,o[a][0],o[a][1]));return i?l[0]:l;function c(s,f){for(var d=-1,h,y,p;++d<s.length&&!p;)h=s[d],n(h)?(o.push([f.concat(d),h]),i&&(p=!0)):(y=G.children(h,t),y&&r.isArray(y)&&c(y,f.concat(d)));}},"_path");G.children=function(e,t){if(!t)return null;var n=-1,i=t.split(".");if(i.length==1)return e[i[0]];for(;++n<i.length;)e=e[i[n]];return e},G.getItem=function(e,t,n){var i=t.length-1,o=-1,l;for(i<0&&(i=0);++o<=i;)l=e[t[o]],e=G.children(l,n);return l};let Ge=u(function(e,t,n,i){this.items=e,this.recursionKey=t,this.item=i,this.children=G.children(this.item,this.recursionKey),this.tree=n,this.index=n[n.length-1],this.startTree=n.slice();},"Path");Ge.prototype={create:u(function(){return new Ge(this.items,this.recursionKey,this.tree.slice(0),this.item)},"create"),start:u(function(){return this.tree=this.startTree.slice(),this.index=this.tree[this.tree.length-1],this.item=G.getItem(this.items,this.tree,this.recursionKey),this.children=G.children(this.item,this.recursionKey),this},"start"),root:u(function(){return this.tree=[this.tree[0]],this.index=this.tree[0],this.item=this.items[this.index],this.children=G.children(this.item,this.recursionKey),this},"root"),hasParent:u(function(){return this.tree.length>1},"hasParent"),parent:u(function(){return this.tree.length==1?this:(this.tree.pop(),this.index=this.tree[this.tree.length-1],this.item=G.getItem(this.items,this.tree,this.recursionKey),this.children=G.children(this.item,this.recursionKey),this)},"parent"),first:u(function(){return this.index=0,this.tree[this.tree.length-1]=this.index,this.item=G.getItem(this.items,this.tree,this.recursionKey),this.children=G.children(this.item,this.recursionKey),this},"first"),last:u(function(){return this.index=this.length()-1,this.tree[this.tree.length-1]=this.index,this.item=G.getItem(this.items,this.tree,this.recursionKey),this.children=G.children(this.item,this.recursionKey),this},"last"),previous:u(function(){return this.hasPrevious()&&(this.index--,this.tree[this.tree.length-1]=this.index,this.item=G.getItem(this.items,this.tree,this.recursionKey),this.children=G.children(this.item,this.recursionKey)),this},"previous"),next:u(function(){return this.hasNext()&&(this.index++,this.tree[this.tree.length-1]=this.index,this.item=G.getItem(this.items,this.tree,this.recursionKey),this.children=G.children(this.item,this.recursionKey)),this},"next"),sibling:u(function(e){return this.index=e,this.tree[this.tree.length-1]=this.index,this.item=G.getItem(this.items,this.tree,this.recursionKey),this.children=G.children(this.item,this.recursionKey),this},"sibling"),child:u(function(e){return !Array.isArray(this.children)||e<0||e>=this.children.length?this:(this.index=e,this.tree.push(e),this.item=G.getItem(this.items,this.tree,this.recursionKey),this.children=G.children(this.item,this.recursionKey),this)},"child"),firstChild:u(function(){return this.child(0)},"firstChild"),lastChild:u(function(){return this.child(this.children?.length-1)},"lastChild"),hasNext:u(function(){return this.index+1<this.length()},"hasNext"),hasPrevious:u(function(){return this.index-1>=0},"hasPrevious"),length:u(function(){return this.hasParent()?this.create().parent().children.length:this.items.length},"length"),path:u(function(e,t){return G(this.items,this.recursionKey,e,t)},"path")},Ne=u(function(e,t,n){this.id=r.guid(),this.e=e,this.p=t,this.s=n,this.startTime=null,this.elapsedTime=null,this.isReverse=!1,this.state=0,this.display={},this.cache={},this.kill=!1,this.update();},"Animation"),Ne.prototype={start:u(function(){C.active[this.id]=this,this.startTime=null,this.state=C.State.STARTED,this.isReverse=!1,C.run(this);},"start"),play:u(function(){this.state!=C.State.PLAYING&&(this.state==C.State.PAUSED&&this.elapsedTime&&(this.startTime=new Date().getTime()-this.elapsedTime),this.state=C.State.PLAYING,C.run(this));},"play"),pause:u(function(){this.state=C.State.PAUSED,this.update();},"pause"),complete:u(function(){this.startTime=null,this.state=C.State.COMPLETED,C.run(this);},"complete"),stop:u(function(){this.startTime=null,this.state=C.State.STOPPED,this.s.onStop&&this.s.onStop();},"stop"),reverse:u(function(){this.startTime=null,this.state=C.State.STARTED,this.isReverse=!0,this.update(),C.run(this);},"reverse"),kill:u(function(){C.timerId?this.kill=!0:C.kill(this.id);},"kill"),update:u(function(){var e=C.unitRegExp,t=C.relativeRegExp,n,i,o,l,a,c,s,f,d,h,y,p,_,g,v,E,D,b,S,I,L,X=new Date().getTime();for(this.startTime===null&&(this.startTime=X),this.elapsedTime=X-this.startTime,this.elapsedTime>=this.s.duration&&(this.state=C.State.COMPLETED),n=0;this.e[n];++n){l=this.e[n],c=this.p.length>n?this.p[n]:this.p[this.p.length-1],f=this.display[n.toString()]={};for(a in c){if(e.lastIndex=t.lastIndex=0,d=n.toString()+"_"+a,s=null,v=E="",I=L=!1,!(s=this.cache[d])){if(r.isArray(c[a])?(g=c[a][0].toString(),o=c[a][1],o=typeof o=="number"?{duration:o}:o||{},typeof o.easing>"u"&&(o.easing=this.s.easing),typeof o.duration>"u"&&(o.duration=this.s.duration),typeof o.easeBackOvershoot>"u"&&(o.easeBackOvershoot=this.s.easeBackOvershoot)):(g=c[a].toString(),o=this.s),s=this.cache[d]={},s.settings=o,s.name=a.indexOf("-")===-1?a:a.replace(Qe,function(V){return V.substring(1).toUpperCase()}),s.isStyle=l.style[s.name]!=null||s.name=="opacity",s.isSize=s.name.indexOf("width")>-1||s.name.indexOf("height")>-1,s.name=="opacity"?v=St(l):v=s.isStyle?r.styleValue(l,s.name):l[s.name],a=="display"||a=="visibility")f["end_"+a]=g;else if(E=C.getColor(g.replace(t,""))){t.test(g)&&(I=!0,g.indexOf("-")===0&&(L=!0)),D={red:0,green:0,blue:0,alpha:null},v=C.getColor(v)||{red:0,green:0,blue:0,alpha:null};for(S in D)E[S]!=null&&(D[S]=E[S]-v[S],I&&(D[S]=L?E[S]*-1:E[S]));s.color=!0,s.fromValue=v,s.changeValue=D;}else for(s.fromValue=[],s.unit=[],s.changeValue=[],v=v.toString().split(" "),E=g.split(" "),i=0;E[i]!=null;++i)if(I=L=!1,t.test(E[i].toString())&&(I=!0,E[i].indexOf("-")===0&&(L=!0),E[i]=E[i].toString().replace(t,"")||0),e.test(r.trim(E.toString()))){if(s.unit[i]=E[i].toString().replace(e,""),e.test(r.trim(v[i].toString()))){if(h=v[i].toString().replace(e,""),s.isStyle&&s.unit[i]!=h){for(y=l.style[s.name],_=[],p=0;p<i;++p)_.push(p+1+"px");l.style[s.name]=r.trim(_.join(" ")+" "+E[i]),_=r.styleValue(l,s.name,!0),l.style[s.name]=y,E[i]=i?_.split(" ")[i]:_,s.unit[i]=h;}v[i]=parseFloat(v[i]);}else v[i]=0;s.unit[i]=s.unit[i]||h,s.fromValue[i]=v[i],E[i]=parseFloat(E[i]),I?s.changeValue[i]=L?E[i]*-1:E[i]:s.changeValue[i]=E[i]-v[i],s.name!=="opacity"&&(s.unit[i]=s.unit[i]||"px");}}if(s.unit){for(b=[],i=0;s.fromValue[i]!=null;++i)b[i]=C.setValue(s.fromValue[i],s.changeValue[i],this,s.settings),s.unit[i]==="px"&&(b[i]=Math.round(b[i])),b[i]<0&&s.isSize&&(b[i]=0),s.isStyle&&s.name!=="opacity"&&(b[i]+=s.unit[i]||"");s.isStyle?s.name==="opacity"?Fe(l,b.join("")):l.style[s.name]=b.join(" "):l[s.name]=b.join(" ");}else if(s.color){b={red:0,green:0,blue:0,alpha:null},v={red:s.fromValue.red,green:s.fromValue.green,blue:s.fromValue.blue,alpha:s.fromValue.alpha},D={red:s.changeValue.red,green:s.changeValue.green,blue:s.changeValue.blue,alpha:s.changeValue.alpha};for(S in b)D[S]!=null&&(b[S]=C.setValue(v[S],D[S],this,s.settings),S!="alpha"&&(b[S]=Math.ceil(b[S])),b[S]<0&&(b[S]=0),b[S]>255&&(b[S]=255));b.alpha!=null?b="rgba("+b.red+","+b.green+","+b.blue+","+b.alpha+")":b="rgb("+b.red+","+b.green+","+b.blue+")",s.isStyle?l.style[s.name]=b:l[s.name]=b;}}(this.state==C.State.STARTED||this.state==C.State.COMPLETED)&&(this.state==C.State.STARTED&&(this.isReverse||(f.start_visibility=r.styleValue(l,"visibility"),f.start_display=r.styleValue(l,"display")),l.style.display=="none"&&(l.style.display=""),l.style.visibility=r.styleValue(l,"visibility")=="hidden"?"visible":l.style.visibility,l.style.display=r.styleValue(l,"display")=="none"?r.defaultDisplay(l.nodeName):l.style.display),this.state==C.State.COMPLETED&&(f.start_visibility||f.start_display||f.end_visibility||f.end_display)&&(this.isReverse?(l.style.visibility=f.start_visibility?f.start_visibility:l.style.visibility,l.style.display=f.start_display?f.start_display:l.style.display):(l.style.visibility=f.end_visibility?f.end_visibility:l.style.visibility,l.style.display=f.end_display?f.end_display:l.style.display)));}this.state==C.State.STARTED&&(this.state=C.State.PLAYING);},"update")},C={State:{STARTED:0,PLAYING:1,PAUSED:2,COMPLETED:3,STOPPED:4},unitRegExp:/^([-+]?[0-9]*\.?[0-9]+)/,relativeRegExp:/^[+|-][=]/g,hexColorRegExp:/^[#]([0-9a-fA-F]{3}$|[0-9a-fA-F]{6}$)/g,rgbColorRegExp:/^rgb/gi,active:{},timerId:null,requestAnimationFrame:u(function(e,t){return pe?pe(e):setInterval(e,t)},"requestAnimationFrame"),cancelAnimationFrame:u(function(e){De?De(e):clearInterval(e);},"cancelAnimationFrame"),ease:{linear:u(function(e,t,n,i){return n+e/t*i},"linear"),easeInQuad:u(function(e,t,n,i){return C.ease.easeInPoly(e,t,n,i)},"easeInQuad"),easeOutQuad:u(function(e,t,n,i){return C.ease.easeOutPoly(e,t,n,i)},"easeOutQuad"),easeInOutQuad:u(function(e,t,n,i){return C.ease.easeInOutPoly(e,t,n,i)},"easeInOutQuad"),easeInCubic:u(function(e,t,n,i){return C.ease.easeInPoly(e,t,n,i,2)},"easeInCubic"),easeOutCubic:u(function(e,t,n,i){return C.ease.easeOutPoly(e,t,n,i,2)},"easeOutCubic"),easeInOutCubic:u(function(e,t,n,i){return C.ease.easeInOutPoly(e,t,n,i,2)},"easeInOutCubic"),easeInQuart:u(function(e,t,n,i){return C.ease.easeInPoly(e,t,n,i,3)},"easeInQuart"),easeOutQuart:u(function(e,t,n,i){return C.ease.easeOutPoly(e,t,n,i,3)},"easeOutQuart"),easeInOutQuart:u(function(e,t,n,i){return C.ease.easeInOutPoly(e,t,n,i,3)},"easeInOutQuart"),easeInQuint:u(function(e,t,n,i){return C.ease.easeInPoly(e,t,n,i,4)},"easeInQuint"),easeOutQuint:u(function(e,t,n,i){return C.ease.easeOutPoly(e,t,n,i,4)},"easeOutQuint"),easeInOutQuint:u(function(e,t,n,i){return C.ease.easeInOutPoly(e,t,n,i,4)},"easeInOutQuint"),easeInPoly:u(function(e,t,n,i,o){var l=e/t;return o=o||1,n+l*Math.pow(l,o)*i},"easeInPoly"),easeOutPoly:u(function(e,t,n,i,o){var l=1-e/t;o=o||1;var a=1-1*l*Math.pow(l,o);return n+a*i},"easeOutPoly"),easeInOutPoly:u(function(e,t,n,i,o){return e/(t/2)<1?C.ease.easeInPoly(e,t/2,n,i/2,o):C.ease.easeOutPoly(e-t/2,t/2,n+i/2,i/2,o)},"easeInOutPoly"),easeInSine:u(function(e,t,n,i){return -i*Math.cos(e/t*(Math.PI/2))+i+n},"easeInSine"),easeOutSine:u(function(e,t,n,i){return i*Math.sin(e/t*(Math.PI/2))+n},"easeOutSine"),easeInOutSine:u(function(e,t,n,i){return -i/2*(Math.cos(Math.PI*e/t)-1)+n},"easeInOutSine"),easeInExpo:u(function(e,t,n,i){return e==0?n:i*Math.pow(2,10*(e/t-1))+n},"easeInExpo"),easeOutExpo:u(function(e,t,n,i){return e==t?n+i:i*(-Math.pow(2,-10*e/t)+1)+n},"easeOutExpo"),easeInOutExpo:u(function(e,t,n,i){return e==0?n:e==t?n+i:(e/=t/2)<1?i/2*Math.pow(2,10*(e-1))+n:i/2*(-Math.pow(2,-10*--e)+2)+n},"easeInOutExpo"),easeInCirc:u(function(e,t,n,i){return -i*(Math.sqrt(1-(e/=t)*e)-1)+n},"easeInCirc"),easeOutCirc:u(function(e,t,n,i){return i*Math.sqrt(1-(e=e/t-1)*e)+n},"easeOutCirc"),easeInOutCirc:u(function(e,t,n,i){return (e/=t/2)<1?-i/2*(Math.sqrt(1-e*e)-1)+n:i/2*(Math.sqrt(1-(e-=2)*e)+1)+n},"easeInOutCirc"),easeInElastic:u(function(e,t,n,i){var a=1.70158,o=0,l=i;if(e==0)return n;if((e/=t)==1)return n+i;if(o||(o=t*.3),l<Math.abs(i)){l=i;var a=o/4;}else var a=o/(2*Math.PI)*Math.asin(i/l);return -(l*Math.pow(2,10*(e-=1))*Math.sin((e*t-a)*(2*Math.PI)/o))+n},"easeInElastic"),easeOutElastic:u(function(e,t,n,i){var a=1.70158,o=0,l=i;if(e==0)return n;if((e/=t)==1)return n+i;if(o||(o=t*.3),l<Math.abs(i)){l=i;var a=o/4;}else var a=o/(2*Math.PI)*Math.asin(i/l);return l*Math.pow(2,-10*e)*Math.sin((e*t-a)*(2*Math.PI)/o)+i+n},"easeOutElastic"),easeInOutElastic:u(function(e,t,n,i){var a=1.70158,o=0,l=i;if(e==0)return n;if((e/=t/2)==2)return n+i;if(o||(o=t*(.3*1.5)),l<Math.abs(i)){l=i;var a=o/4;}else var a=o/(2*Math.PI)*Math.asin(i/l);return e<1?-.5*(l*Math.pow(2,10*(e-=1))*Math.sin((e*t-a)*(2*Math.PI)/o))+n:l*Math.pow(2,-10*(e-=1))*Math.sin((e*t-a)*(2*Math.PI)/o)*.5+i+n},"easeInOutElastic"),easeInBack:u(function(e,t,n,i,o){return (o==null||o==null)&&(o=1.70158),i*(e/=t)*e*((o+1)*e-o)+n},"easeInBack"),easeOutBack:u(function(e,t,n,i,o){return (o==null||o==null)&&(o=1.70158),i*((e=e/t-1)*e*((o+1)*e+o)+1)+n},"easeOutBack"),easeInOutBack:u(function(e,t,n,i,o){return (o==null||o==null)&&(o=1.70158),(e/=t/2)<1?i/2*(e*e*(((o*=1.525)+1)*e-o))+n:i/2*((e-=2)*e*(((o*=1.525)+1)*e+o)+2)+n},"easeInOutBack"),easeInBounce:u(function(e,t,n,i){return i-C.ease.easeOutBounce(t-e,t,0,i)+n},"easeInBounce"),easeOutBounce:u(function(e,t,n,i){return (e/=t)<1/2.75?i*(7.5625*e*e)+n:e<2/2.75?i*(7.5625*(e-=1.5/2.75)*e+.75)+n:e<2.5/2.75?i*(7.5625*(e-=2.25/2.75)*e+.9375)+n:i*(7.5625*(e-=2.625/2.75)*e+.984375)+n},"easeOutBounce"),easeInOutBounce:u(function(e,t,n,i){return e<t/2?C.ease.easeInBounce(e*2,t,0,i)*.5+n:C.ease.easeOutBounce(e*2-t,t,0,i)*.5+i*.5+n},"easeInOutBounce")},start:u(function(e,t,n){var i;return e=r.isArray(e)?e:[e],t=r.isArray(t)?t:[t],n=typeof n=="number"?{duration:n}:n||{},n={duration:typeof n.duration<"u"?n.duration||0:r.animationSettings.duration,easing:n.easing||r.animationSettings.easing,easeBackOvershoot:r.isEmpty(n.easeBackOvershoot)?r.animationSettings.easeBackOvershoot:n.easeBackOvershoot,onFrame:typeof n.onFrame<"u"?n.onFrame:r.animationSettings.onFrame,onStop:typeof n.onStop<"u"?n.onStop:r.animationSettings.onStop,onComplete:typeof n.onComplete<"u"?n.onComplete:r.animationSettings.onComplete},i=new Ne(e,t,n),C.active[i.id]=i,C.timerId||(C.timerId=C.requestAnimationFrame(C.update,r.animationSettings.interval)),i},"start"),run:u(function(e){e.update(),e.state==C.State.COMPLETED?(e.s.onComplete&&e.s.onComplete(),C.timerId?e.kill=!0:C.kill(e.id)):C.timerId||(C.active[e.id]=e,C.timerId=C.requestAnimationFrame(C.update,r.animationSettings.interval));},"run"),kill:u(function(e){C.active[e]=null,delete C.active[e];},"kill"),update:u(function(){var e,t,n=[],i=[],o;if(r.isEmpty(C.active)){C.cancelAnimationFrame(C.timerId),C.timerId=null;return}else for(e in C.active)t=C.active[e],t.state==C.State.PLAYING&&(t.update(),t.s.onFrame&&n.push(t.s.onFrame)),!t.kill&&t.state==C.State.COMPLETED&&(t.s.onComplete&&n.push(t.s.onComplete),t.kill=!0),t.kill&&i.push(t.id);for(o=0;o<n.length;++o)n[o]();for(o=0;o<i.length;++o)C.kill(i[o]);pe&&(C.timerId=C.requestAnimationFrame(C.update,r.animationSettings.interval));},"update"),setValue:u(function(e,t,n,i){var o;return n.isReverse&&(e+=t,t=t*-1),n.state==C.State.COMPLETED||n.elapsedTime>=i.duration?o=e+t:(o=C.ease[i.easing](n.elapsedTime,i.duration,e,t,i.easeBackOvershoot),(t>0&&o>e+t||t<0&&o<e+t)&&(o=e+t)),o},"setValue"),getColor:u(function(e){if(typeof e!="string")return null;var t=C.hexColorRegExp,n=C.rgbColorRegExp;if(t.lastIndex=n.lastIndex=0,t.test(e)){var i=r.hexToRgb(e.substring(1));return {red:i[0],green:i[1],blue:i[2]}}else if(n.test(e)){var o=e.replace(/[^\d%,.]/g,"").split(","),l=u(function(c){return /%$/g.test(c)?(c=parseInt(c.replace("%",""),10),Math.ceil(c/100*255)):parseInt(c,10)},"convert"),e={red:l(o[0]),green:l(o[1]),blue:l(o[2]),alpha:o.length>3?parseFloat(o[3]):null};return e}return null},"getColor")},r=u(function(e,t,n,i,o){return typeof e=="string"&&!r.isEmpty(e)&&e.indexOf("#")!=0&&(e=[e,null]),r.isArray(e)?mt(e[0],t,n,e[1],i):!e||typeof e=="function"?o?Be(t,n,e,i):Ze(t,n,e,i):r.getDocument().getElementById(e.substr(1))},"$"),componyx.library=F.$lib=r,r.getDocument=function(){return r.document||F.document},r.document=null,r.touch=pt,r.event=null,r.webSockets=[],r.createEvent=function(e){var t=u(function(){this.eventName=e.toLowerCase();},"fn");return t.prototype=_t,new t},r.animationSettings={duration:1e3,interval:10,easing:"linear",easeBackOvershoot:null,onFrame:null,onStop:null,onComplete:null},r.guid=function(){return qe++,`${Date.now().toString(36)}${qe.toString(36)}`},r.registerNamespace=function(e){for(var t=e.split("."),n=F,i,o=0;o<t.length;++o)i=t[o],n[i]?n=n[i]:n=n[i]={};},r.selectable=function(e){e=e||{};var t,n,i,o,l,a,c,s,f,d,h,y,p,_,g,v,E,D=r.scrollableRoot(),b,S={},I,L,X,V,K,O=[],M=[],k=[],$=0,ae=0,ee=0,fe=0,ye=r.getScrollBarSize(),ce=!0,W,Ce,me,_e,Ee,P={left:0,top:0,width:0,height:0},Q={LEFT:1,RIGHT:2,TOP:4,BOTTOM:8},Ke={settings:e,disabled:!1,enable:u(function(){var m=e.selectMode?e.selectMode.toString().toLowerCase():"";return e.shiftSelect=e.shiftSelect!=null?e.shiftSelect:!0,e.ctrlSelect=e.ctrlSelect!=null?e.ctrlSelect:!0,e.selectedClass=e.selectedClass||"selected",e.dragZone=e.dragZone||D,e.selectZone=e.selectZone||e.dragZone,I=r.textSelection(e.dragZone),f=e.dragZone,!e.selectMode||m=="drag_click"?e.selectMode=0:m=="drag"?e.selectMode=1:m=="click"&&(e.selectMode=2),(!e.selectMode||e.selectMode==2)&&w(),e.selectMode<=1&&(r.on(F,"resize",Re),r.on(r.getDocument(),"pointerup",ie),r.on(r.getDocument(),"pointerup",ge),r.on(r.getDocument(),"pointermove",se),r.on(e.dragZone,"pointerdown",z),r.on(e.dragZone,"dragstart",Le)),this.disabled=!1,t=!1,this},"enable"),disable:u(function(){return (!e.selectMode||e.selectMode==2)&&x(),e.selectMode<=1&&(r.off(F,"resize",Re),r.off(r.getDocument(),"pointerup",ie),r.off(r.getDocument(),"pointerup",ge),r.off(r.getDocument(),"pointermove",se),r.off(e.dragZone,"pointerdown",z),r.off(e.dragZone,"dragstart",Le)),t=!1,this.disabled=!0,this},"disable"),update:u(function(){this.disable(),this.enable();},"update"),deselect:u(function(m){O=[],M=[];for(var T=0;T<S.length;++T)be(S[T][0]);e.onSelect&&m!==!1&&e.onSelect(Se());},"deselect"),select:u(function(m){O=[],M=[];for(var T=0;T<S.length;++T)he(S[T][0]);e.onSelect&&m!==!1&&e.onSelect(Se());},"select"),getSelectable:u(function(){return S},"getSelectable"),getSelection:u(function(){return A()},"getSelection")};return Ke.enable();function Re(){clearTimeout(K),K=setTimeout(function(){x(),w();},0);}function w(){R();for(var m=0;m<S.length;++m)r.on(S[m][0],"click",le),e.selectMode<=1&&r.on(S[m][0],"pointerup",Te);}function x(){for(var m=0;m<S.length;++m)r.off(S[m][0],"click",le),e.selectMode<=1&&r.off(S[m][0],"pointerup",Te);}function R(){var m=q(),T,H=e.dragZone,N=H.scrollLeft,Z=H.scrollTop;S=[],O=[],H.scrollLeft=0,H.scrollTop=0;for(var U=0;U<m.length;++U)T=m[U],S[U]=[T,r.getPos(T)];H.scrollLeft=N,H.scrollTop=Z;}function q(){return e.include?e.include:e.excludeTags?(b=" "+e.excludeTags.toUpperCase()+" ",r(function(m){return b.indexOf(" "+m.nodeName+" ")==-1&&(!e.exclude||r.indexOf(e.exclude,m)==-1)},e.selectZone)):r(function(m){return !e.exclude||r.indexOf(e.exclude,m)==-1},e.selectZone,e.includeTags)}function z(m){if(!(m.button>0||m.pointerType==="touch")){var T,H,N=r.styleValue(f,"position")||"static",Z=f==D||N!="static",U=r.styleValue(f,"overflow-x"),Y=r.styleValue(f,"overflow-y"),re=r.getScrollPosition(),J=r.clientX(m),ne=r.clientY(m);o=Z&&U!="hidden"&&f.scrollWidth>f.clientWidth,l=Z&&Y!="hidden"&&f.scrollHeight>f.clientHeight,Z=o||l,Z||(f=D),f==D?(H=r.getWindowSize(),W={top:0,right:0,bottom:0,left:0},W.right=H.width,W.bottom=H.height,o=D.scrollWidth>D.clientWidth,l=D.scrollHeight>D.clientHeight,Z=o||l):(W=r.getPos(f),T=r.borderAndPadding(f,!0),W.top+=T.borderTop,W.right-=T.borderRight,W.bottom-=T.borderBottom,W.left+=T.borderLeft,l&&(W.right-=ye.width),o&&(W.bottom-=ye.height)),!((!Z||f==D)&&(J>W.right||ne>W.bottom)||f!=D&&(J+re.scrollLeft>W.right||ne+re.scrollTop>W.bottom))&&(Ce=f.scrollWidth-f.clientWidth,me=f.scrollHeight-f.clientHeight,W.top+=e.scrollOffsetY||2,W.left+=e.scrollOffsetX||2,W.bottom-=e.scrollOffsetY||2,W.right-=e.scrollOffsetX||2,n=!1,t=!0,M=[],E=m.shiftKey,v=m.ctrlKey,I.disable(),i&&i.parentNode.removeChild(i),i=f.appendChild(r.getDocument().createElement("div")),i.style.width=i.style.height="0px",e.dragSelectionClass?i.className=e.dragSelectionClass:i.style.border="1px dotted black",Z?(i.style.position="absolute",r.setPos(i,{top:ne+re.scrollTop,left:J+re.scrollLeft})):(i.style.position="fixed",r.setPos(i,{top:ne,left:J})),a=r.borderAndPadding(i),_=parseInt(i.style.top,10),g=parseInt(i.style.left,10),d=y=r.clientX(m)+f.scrollLeft,h=p=r.clientY(m)+f.scrollTop,i.style.display="none");}}function ie(m){t&&(t=!1,De(Ee),Ee=null,oe(),I.enable(),k=[],c=s=!1,y=p=0,n&&(e.liveUpdate||$e(m),e.onDragEnd&&e.onDragEnd(Se(m)),n=!1),i.parentNode.removeChild(i),i=null);}function se(m){_e=m,Ee||(Ee=pe(()=>{_e&&_e.type==="pointermove"&&j(_e),Ee=null;}));}function j(m){if(t){var T=r.getScrollPosition(),H=r.clientX(m)+f.scrollLeft,N=r.clientY(m)+f.scrollTop,Z=H-y,U=N-p,Y=parseInt(i.style.width,10),re=parseInt(i.style.height,10),J=parseInt(i.style.left,10),ne=parseInt(i.style.top,10),Ae,Ie,ct,dt;H<d?c?(J+=Z,Y-=Z):(Y=Math.abs(Z),J=g+Z,c=!0):c?(Y=Math.abs(Z),J=g+Z,c=!1):Y+=Z,N<h?s?(ne+=U,re-=U):(re=Math.abs(U),ne=_+U,s=!0):s?(re=Math.abs(U),ne=_+U,s=!1):re+=U,ct=Y+a.width,dt=re+a.height,y=H,p=N,!(Math.abs(H-d)<1&&Math.abs(N-h)<1)&&(n||(e.liveUpdate&&(e.toggleDragSelect||e.ctrlSelect)&&(k=A()),e.appendDragSelect||ve(m),ce=!1,n=!0,i.style.display="",e.onDragStart&&e.onDragStart(Se(m))),X=null,f==D?(H=r.clientX(m),N=r.clientY(m)):(H=r.clientX(m)+T.scrollLeft,N=r.clientY(m)+T.scrollTop),H<=W.left&&o&&f.scrollLeft?(Ae=!0,X=Q.LEFT,$=Math.round((W.left-H)/2)||1):H>=W.right&&o&&f.scrollLeft<Ce&&(Ae=!0,X=Q.RIGHT,$=Math.round((H-W.right)/2)||1),N<=W.top&&l&&f.scrollTop?(Ie=!0,X+=Q.TOP,ae=Math.round((W.top-N)/2)||1):N>=W.bottom&&l&&f.scrollTop<me&&(Ie=!0,X+=Q.BOTTOM,ae=Math.round((N-W.bottom)/2)||1),(!V||!Ae)&&(o&&c&&J<f.scrollLeft&&(J=f.scrollLeft,Y=parseInt(i.style.width,10)),o&&!c&&J+ct>f.scrollLeft+f.clientWidth&&(Y=f.scrollLeft+f.clientWidth-(J+a.width)),i.style.width=r.unit(Y>0?Y:0),i.style.left=r.unit(J)),(!V||!Ie)&&(l&&s&&ne<f.scrollTop&&(ne=f.scrollTop,re=parseInt(i.style.height,10)),l&&!s&&ne+dt>f.scrollTop+f.clientHeight&&(re=f.scrollTop+f.clientHeight-(ne+a.height)),i.style.height=r.unit(re>0?re:0),i.style.top=r.unit(ne)),X!=null&&!V?ue(J,ne,Y,re):X==null?oe():(Ae||(P.left=J,P.width=Y),Ie||(P.top=ne,P.height=re)),e.onDrag&&e.onDrag(Se(m)),!V&&e.liveUpdate&&$e(m));}}function ue(m,T,H,N){oe(),P.left=m,P.top=T,P.width=H,P.height=N,ee=f.scrollLeft,fe=f.scrollTop,V=setTimeout(te,5);}function oe(){clearTimeout(V),V=null,ee=fe=0;}function te(){var m=f.scrollLeft,T=f.scrollTop,H=Math.abs(f.scrollLeft-ee)==0,N=Math.abs(f.scrollTop-fe)==0,Z,U,Y;X&Q.LEFT&&(Z=!0,H&&(m-=$),m<0&&(m=0),y-=U=Math.abs(m-ee),y<d&&!c&&(P.width=0,c=!0),c?m==0?(P.width+=P.left,P.left=0):(P.width+=U,P.left-=U):P.width-=U),X&Q.RIGHT&&(Z=!0,H&&(m+=$),m>Ce&&(m=Ce),y+=U=Math.abs(m-ee),y>=d&&c&&(P.width=0,c=!1),c?(P.left+=Y,P.width-=Y):(P.width+=Y,P.left+P.width+a.width>f.scrollWidth&&(P.width=f.scrollWidth-(P.left+a.width)))),X&Q.TOP&&(Z=!0,N&&(T-=ae),T<0&&(T=0),p-=Y=Math.abs(T-fe),p<h&&!s&&(P.height=0,s=!0),s?T==0?(P.height+=P.top,P.top=0):(P.height+=Y,P.top-=Y):P.height-=Y),X&Q.BOTTOM&&(Z=!0,N&&(T+=ae),T>me&&(T=me),p+=Y=Math.abs(T-fe),p>=h&&s&&(P.height=0,s=!1),s?(P.top+=Y,P.height-=Y):(P.height+=Y,P.top+P.height+a.height>f.scrollHeight&&(P.height=f.scrollHeight-(P.top+a.height)))),Z?(P.width<0&&(P.width=0),P.height<0&&(P.height=0),i.style.width=r.unit(P.width),i.style.height=r.unit(P.height),i.style.left=r.unit(P.left),i.style.top=r.unit(P.top),e.liveUpdate&&$e(),fe=T,ee=m,V=setTimeout(de,0)):oe();}function de(){f.scrollTop=fe,f.scrollLeft=ee,f.scrollTop>=me&&(X&Q.BOTTOM||X&Q.TOP)||f.scrollLeft>=Ce&&(X&Q.RIGHT||X&Q.LEFT)?oe():V=setTimeout(te,5);}function Te(){ce=!1;}function ge(){e.clearOnOutsideClick&&ce&&B(),ce=!0;}function ve(m){!m.shiftKey&&!m.ctrlKey&&B();}function B(){var m=A();M=[],O=[];for(var T=0;T<m.length;++T)be(m[T]);e.onSelect&&e.onSelect(Se());}function A(){for(var m=[],T=0;T<S.length;++T)r.hasClass(S[T][0],e.selectedClass)&&m.push(S[T][0]);return m}function le(m){if(ce){var T=this,H=r.hasClass(T,e.selectedClass),N=e.shiftSelect&&m.shiftKey,Z=e.ctrlSelect&&m.ctrlKey;M=[],O=[],N?we(T):(!Z&&!e.appendClickSelect&&ve(m),H&&(e.toggleClickSelect||Z)?be(T):he(T)),e.onSelect&&e.onSelect(Se(m));}}function we(m){var T,H,N,Z=0,U,Y,re=u(function(ne){return r.hasClass(ne[0],e.selectedClass)},"comparer");T=r.indexOf(S,function(ne){return ne[0]===m}),H=r.indexOf(S,re),N=r.indexOf(Ye(S).reverse(),re),N>-1&&(N=S.length-1-N),N==H&&(L=!1),L&&T>N?(L=!1,Y=!0):!L&&T<H&&(L=!0,Y=!0),H==N&&H==-1&&(H=N=0),T<=N&&L?(Z=T,U=Y?H:N):T>=H&&(Z=Y?N:H,U=T),B();for(var J=0;J<S.length;++J)m=S[J][0],J>=Z&&J<=U?he(m):be(m);}function be(m){r.hasClass(m,e.selectedClass)&&(r.removeClass(m,e.selectedClass),M.push(m));}function he(m){r.hasClass(m,e.selectedClass)||(r.addClass(m,e.selectedClass),O.push(m));}function $e(m){var T=r.getPos(i),H=e.shiftSelect&&E,N=e.ctrlSelect&&v,Z,U;if(f!=D&&wt(T,f),e.liveUpdate)Tt(T,N,H);else for(var Y=0;Y<S.length;++Y)Z=S[Y][0],U=S[Y][1],ft(U,T)&&((e.toggleDragSelect||N)&&r.hasClass(Z,e.selectedClass)?be(Z):he(Z));e.onSelect&&e.onSelect(Se(m));}function Tt(m,T,H){for(var N,Z,U=e.appendDragSelect||T||H,Y=0;Y<S.length;++Y)N=S[Y][0],Z=S[Y][1],ft(Z,m)?(e.toggleDragSelect||T)&&r.indexOf(k,N)>-1?be(N):he(N):U&&r.indexOf(k,N)>-1&&he(N);}function wt(m,T){return m.top+=T.scrollTop,m.right+=T.scrollLeft,m.bottom+=T.scrollTop,m.left+=T.scrollLeft,m}function ft(m,T){return ot(m,T)}function Se(m){return {selected:O,deselected:M,settings:e,event:m||null}}},r.resizable=function(e,t){t=t||{};var n=[],i=!1,o=!1,l,a,c=r.getDocument().createElement("div"),s=r.getDocument().createElement("div"),f=0,d=0,h=0,y=0,p,_,g,v,E,D,b=r.textSelection(r.getDocument().documentElement);t.resizeHandles=ze(t.resizeHandles),t.defaultHandles=r.isEmpty(t.defaultHandles)?!0:t.defaultHandles,t.minResizeX=t.minResizeX?t.minResizeX:1,t.minResizeY=t.minResizeX?t.minResizeX:1;var S={element:e,settings:t,disabled:!1,enable:u(function(){t.defaultHandles&&(_=r.styleValue(e,"position"),"relative absolute fixed".indexOf(_)==-1&&(_=e.style.position=_="relative"),c.className="draghandle-e",s.className="draghandle-s",r.updateStyle(c.style,"position: absolute; top: 0px; right: -3px; width: 7px; height: 100%; cursor: e-resize"),r.updateStyle(s.style,"position: absolute; left: 0px; bottom: -3px; height: 7px; width: 100%; cursor: s-resize"),e.appendChild(c),e.appendChild(s),O(c,"e"),O(s,"s")),r.each(t.resizeHandles,function(M){r.each(M,function(k,$){O(k,$.toLowerCase());});}),n.pointerup=r.on(r.getDocument(),"pointerup",L),n.pointermove=r.on(r.getDocument(),"pointermove",X);function O(M,k){var $={};$.resizeHandle=M;const ae=/[ew]/.test(k),ee=/[ns]/.test(k);et(M,ae&&ee?"none":ae?"pan-y":"pan-x"),$.dragstart=r.on(M,"dragstart",Le),$.pointerdown=r.on(M,"pointerdown",I,k),n.push($);}return u(O,"bind"),this.disabled=!1,this},"enable"),disable:u(function(){return r.each(n,function(O,M){r.off(O.resizeHandle,"dragstart",O.dragstart),r.off(O.resizeHandle,"pointerdown",O.pointerdown),tt(O.resizeHandle);}),r.off(r.getDocument(),"pointerup",n.pointerup),r.off(r.getDocument(),"pointermove",n.pointermove),this.disabled=!0,this},"disable")};return S.enable();function I(O,M){if(!(M.button>0)){var k=t.resizeGhost||e,$=t.boundaryZone?r.borderAndPadding(t.boundaryZone,!0):null,ae=r.getScrollPosition(),ee=r.clientX(M)+ae.scrollLeft,fe=r.clientY(M)+ae.scrollTop;p=O,o=!1,i=!0,b.disable(),E=r.margin(e),D=r.borderAndPadding(k),f=ee,d=fe,h=e.offsetWidth-D.width,y=e.offsetHeight-D.height,t.resizeGhost?(k.style.display="",v=r.getPos(e),k.style.position="absolute",r.setPos(k,{top:v.top,left:v.left}),k.style.width=r.unit(h),k.style.height=r.unit(y),v=r.getPos(k),k.style.display="none"):v=r.getPos(e),t.boundaryZone&&(g=r.getPos(t.boundaryZone),g.top+=$.borderTop,g.right-=$.borderRight,g.bottom-=$.borderBottom,g.left+=$.borderLeft),V(M);}}function L(O){if(i){var M=t.resizeGhost||e;i=!1,b.enable(),De(l),l=null,o&&(o=!1,r.removeClass(M,t.resizeClass),t.resizeGhost&&(D=r.borderAndPadding(e),e.style.width=r.unit(M.offsetWidth-D.width),e.style.height=r.unit(M.offsetHeight-D.height),M.style.display="none"),t.onResizeEnd&&t.onResizeEnd(K(O)));}}function X(O){a=O,l||(l=pe(()=>{a&&a.type==="pointermove"&&V(a),l=null;}));}function V(O){if(i){var M,k,$,ae,ee=t.resizeGhost||e,fe=r.getScrollPosition(),ye=r.clientX(O)+fe.scrollLeft,ce=r.clientY(O)+fe.scrollTop;Math.abs(ye-f)<t.minResizeX&&Math.abs(ce-d)<t.minResizeY||(o||(o=!0,ee.style.display="",r.addClass(ee,t.resizeClass),t.ghostOnly&&(e.style.display="none"),t.onResizeStart&&t.onResizeStart(K(O))),$=v.left,ae=v.top,M=h+(p.indexOf("e")>-1?ye-f:f-ye),k=y+(p.indexOf("s")>-1?ce-d:d-ce),t.tickX&&(M=Math.round(M/t.tickX)*t.tickX),t.tickY&&(k=Math.round(k/t.tickY)*t.tickY),g&&($+(M+D.width)+E.right>g.right&&(M=g.right-$-E.right-D.width,M=t.tickX?Math.floor(M/t.tickX)*t.tickX:M),ae+(k+D.height)+E.bottom>g.bottom&&(k=g.bottom-ae-E.bottom-D.height,k=t.tickY?Math.floor(k/t.tickY)*t.tickY:k)),M=M<0?0:M,k=k<0?0:k,(p.indexOf("e")>-1||p.indexOf("w")>-1)&&(ee.style.width=r.unit(M)),(p.indexOf("n")>-1||p.indexOf("s")>-1)&&(ee.style.height=r.unit(k)),t.onResize&&t.onResize(K(O)));}}function K(O){return {element:e,startWidth:h,startHeight:y,startX:f,startY:d,settings:t,event:O,direction:p}}},r.draggable=function(e,t){t=t||{};var n={},i=!1,o,l,a={dragging:!1,scrolling:!1,currentPositions:null,drag:null},c,s,f,d,h,y,p,_=0,g=0,v=t.dragHandle||e,E,D,b,S,I,L,X,V,K,O,M,k,$=r.textSelection(document);t.dropZones&&typeof t.dropZones!="function"&&(t.dropZones=ze(t.dropZones));var ae={element:e,settings:t,disabled:!1,enable:u(function(){var w=t.dropAcceptMode;return r.isEmpty(w)?w=0:typeof w=="string"&&(w==="full"?w=0:w==="half"?w=1:w=2),t.dropAcceptMode=w,t.moveOriginal=t.moveOriginal==null?!0:t.moveOriginal,t.dragX=t.dragX==null?!0:t.dragX,t.dragY=t.dragY==null?!0:t.dragY,t.minDragX=t.minDragX?t.minDragX:0,t.minDragY=t.minDragY?t.minDragY:0,et(v,t.dragX===t.dragY?"none":t.dragX?"pan-y":"pan-x"),n.dragstart=r.on(v,"dragstart",Le),n.pointerdown=r.on(v,"pointerdown",ee),n.pointerup=r.on(r.getDocument(),"pointerup",W),n.pointermove=r.on(r.getDocument(),"pointermove",ye),this.disabled=!1,this},"enable"),disable:u(function(){return r.each(n,function(w,x){var R=r.getDocument();"dragstart pointerdown".indexOf(x)>-1&&(R=v),r.off(R,x,w);}),tt(v),this.disabled=!0,this},"disable"),startDrag:u(function(w){ee(w||r.event,!0);},"startDrag"),endDrag:u(function(w){W(w||r.event);},"endDrag")};return ae.enable();function ee(w,x){if(!(!x&&w.button>0)){var R=_e(e,r.isEmpty(t.dragGhost)),q=t.dragGhost,z=r.getPos(e,null),ie=R!=="fixed"?z:r.getPos(e,null,!1),se=q||e,j=r.getScrollPosition(),ue=r.clientX(w)+j.scrollLeft,oe=r.clientY(w)+j.scrollTop;if(!(!x&&!t.dragHandle&&!(ue>ie.left&&ue<ie.right&&oe>ie.top&&oe<ie.bottom))){if(a.dragging=!1,i=!0,$.disable(),se.style.display="",M=t.ignoreMargins?{top:0,bottom:0,left:0,right:0}:r.margin(e),b=z.left,S=z.top,E=r.clientX(w),D=r.clientY(w),o=null,q){var te={top:ie.top,left:ie.left,bottom:"auto",right:"auto"};if(K=_e(se,!0),K==="fixed"&&(te.top-=j.scrollTop,te.left-=j.scrollLeft,R!=="fixed"&&(b-=j.scrollLeft,S-=j.scrollTop)),r.setPos(se,te),z=r.getPos(se,null),se.style.display="none",t.autoGhostSize){var de=r.borderAndPadding(se);se.style.width=r.unit(e.offsetWidth-de.width),se.style.height=r.unit(e.offsetHeight-de.height);}}else K=R;_=ue-z.left,g=oe-z.top,l=t.boundaryZone&&t.ignoreBoundaryBorders!==!0?r.borderAndPadding(t.boundaryZone,!0):null,fe(j),ce(w);}}}function fe(w){if(t.boundaryZone)if(O||(O={}),K==="absolute"&&t.boundaryZone===r.getDocument().documentElement)O.top=w.scrollTop,O.left=w.scrollLeft,O.right=w.scrollLeft+F.innerWidth,O.bottom=w.scrollTop+F.innerHeight;else {let x=l||{borderTop:0,borderRight:0,borderBottom:0,borderLeft:0},R=r.getPos(t.boundaryZone);O.top=R.top,O.left=R.left,O.right=R.right,O.bottom=R.bottom,O.top+=x.borderTop-(t.boundaryOvershootTop||0),O.right-=x.borderRight-(t.boundaryOvershootRight||0),O.bottom-=x.borderBottom-(t.boundaryOvershootBottom||0),O.left+=x.borderLeft-(t.boundaryOvershootLeft||0);}}function ye(w){c=w,k||(k=pe(()=>{c&&c.type==="pointermove"&&ce(c),k=null;}));}function ce(w){if(!i)return;let x=t.dragGhost||e,R=r.getScrollPosition(),q=r.clientX(w)+R.scrollLeft,z=r.clientY(w)+R.scrollTop,ie=t.dragX&&Math.abs(r.clientX(w)-E)>=t.minDragX,se=t.dragY&&Math.abs(r.clientY(w)-D)>=t.minDragY,j=t.scrollX,ue=t.scrollY,oe=t.boundaryZone,te=Math.round;if(!ie&&!se)return;if(!a.dragging){if(me(x),p=y,y=null,h=[],t.onDragStart&&t.onDragStart(Q(w)),t.cancelDrag){i=t.cancelDrag=!1;return}if(a.dragging=!0,x.style.display="",t.dragGhost&&t.ghostOnly&&(e.style.display="none"),t.dragClass&&r.addClass(e,t.dragClass),t.dragGhost){let B=e.getBoundingClientRect(),A=r.clientX(w)-B.left,le=r.clientY(w)-B.top,we=A/B.width,be=le/B.height;if(B.width!=x.offsetWidth&&(_-=(e.offsetWidth-x.offsetWidth)*we),B.height!=x.offsetHeight&&(g-=(e.offsetHeight-x.offsetHeight)*be),t.dragClass&&r.addClass(x,t.dragClass),d=t.dropZones&&typeof t.dropZones=="function"?t.dropZones():t.dropZones,d&&!d.length&&(d=null),d)for(let he=0;he<d.length;++he)h[he]=r.getPos(d[he],null,!1);}X=x.offsetWidth,V=x.offsetHeight,s=Ce(x),oe&&!f&&(f=u(()=>{!a.scrolledByDrag&&a.dragging&&c&&ce(c);},"_boundaryScrollHandler"),oe===r.getDocument().documentElement||oe===r.getDocument().body?r.getDocument().addEventListener("scroll",f,{passive:!0}):oe.addEventListener("scroll",f,{passive:!0}));}if(K==="fixed"&&o&&(_+=R.scrollLeft-o.scrollLeft,g+=R.scrollTop-o.scrollTop),c=w,I=q-_,L=z-g,K==="absolute"&&fe(R),O){let B=Ee(I,L,X,V);if(I=B.boundaryLeft!=null?B.boundaryLeft:B.left,L=B.boundaryTop!=null?B.boundaryTop:B.top,te=Math.floor,o&&K!=="fixed"){if(B.boundaryLeft!=null&&j){const A=R.scrollLeft-o.scrollLeft;A>0?I=Math.min(B.left+A,B.boundaryLeft):A<0&&(I=Math.max(B.left+A,B.boundaryLeft));}if(B.boundaryTop!=null&&ue){const A=R.scrollTop-o.scrollTop;A>0?L=Math.min(B.top+A,B.boundaryTop):A<0&&(L=Math.max(B.top+A,B.boundaryTop));}}a.currentPositions={left:B.left-M.left,top:B.top-M.top,right:B.left+X+M.right,bottom:B.top+V+M.bottom},a.drag=()=>{ce(c);},(j&&B.boundaryLeft!=null||ue&&B.boundaryTop!=null)&&Ct({scrollX:j,scrollY:ue,boundary:O,scrollContainer:oe,state:a});}let de=0,Te=0,ge,ve;t.tickX&&(I=te(I/t.tickX*t.tickX)),t.tickY&&(L=te(L/t.tickY*t.tickY)),t.dragX?(de=I-b,K==="fixed"&&(I+=R.scrollLeft),ge=I):(I=b,ge=K==="fixed"?I+R.scrollLeft:I),t.dragY?(Te=L-S,K==="fixed"&&(L+=R.scrollTop),ve=L):(L=S,ve=K==="fixed"?L+R.scrollTop:L),x.style.transform=`translate(${s.x+de}px, ${s.y+Te}px)`,P(ge,ve,X,V,w),t.onDrag&&t.onDrag(Q(w)),o=R;}function W(w){if(i){var x=t.dragGhost||e,R=t.boundaryZone,q=y!=null?d[y]:null;if(De(k),k=null,i=!1,$.enable(),a.dragging){a.dragging=!1,R&&(R===r.getDocument().documentElement||R===r.getDocument().body?r.getDocument().removeEventListener("scroll",f):R.removeEventListener("scroll",f)),t.dragClass&&(r.removeClass(e,t.dragClass),r.removeClass(x,t.dragClass)),me(x);let z=r.getPos(x);x.style.transform="",r.setPos(x,{left:z.left,top:z.top}),d&&!q&&!t.allowDropOutZone?Re():t.dragGhost&&(t.allowDropOutZone||!d||q)&&Ke(),t.dragGhost&&(x.style.display="none"),q&&(t.dropClass&&(r.addClass(e,t.dropClass),r.addClass(q,t.dropClass)),t.onDrop&&t.onDrop(Q(w))),t.onDragEnd&&t.onDragEnd(Q(w));}}}function Ce(w){const x=F.getComputedStyle(w).transform;if(x==="none")return {x:0,y:0};const R=x.match(/matrix\((.*)\)/);if(R&&R[1]){const q=R[1].split(",").map(parseFloat);return {x:q[4],y:q[5]}}return {x:0,y:0}}function me(w){var x=y!=null?d[y]:null;t.droppableClass&&(r.removeClass(w,t.droppableClass),x&&r.removeClass(x,t.droppableClass));}function _e(w,x){var R=r.styleValue(w,"position");return x&&"fixed absolute relative".indexOf(R)==-1&&(R=w.style.position="fixed"),R}function Ee(w,x,R,q){const z={left:w,top:x};return w-M.left<O.left?z.boundaryLeft=O.left+M.left:w+R+M.right>O.right&&(z.boundaryLeft=O.right-(R+M.right)),x-M.top<O.top?z.boundaryTop=O.top+M.top:x+q+M.bottom>O.bottom&&(z.boundaryTop=O.bottom-(q+M.bottom)),z}function P(w,x,R,q,z){if(!d)return null;let ie=y!=null?d[y]:null,se=t.dragGhost||e,j=w+R,ue=x+q,oe=!1,te=null,de=[];for(let A=0;A<d.length;A++){let le=h[A];oe=t.dropAcceptMode?t.dropAcceptMode==1?ge(le):ve(le):Te(le),oe&&de.push({element:d[A],depth:B(d[A])});}de.length&&(de.sort((A,le)=>le.depth-A.depth),te=de[0].element),ie&&te!=ie&&(t.dropClass&&(r.removeClass(e,t.dropClass),r.removeClass(ie,t.dropClass)),t.droppableClass&&r.removeClass(ie,t.droppableClass),t.onDroppableLeave&&t.onDroppableLeave(Q(z))),te?(y=d.indexOf(te),r.addClass(te,t.droppableClass),r.addClass(se,t.droppableClass),te==ie&&t.onDroppable?t.onDroppable(Q(z)):te!=ie&&(t.onDroppableEnter&&t.onDroppableEnter(Q(z)),t.onDroppable&&t.onDroppable(Q(z)))):(y=null,r.removeClass(se,t.droppableClass));function Te(A){var le=w>=A.left&&j<=A.right,we=x>=A.top&&ue<=A.bottom;return le&&we}u(Te,"full");function ge(A){var le=A.right-A.left>=R/2&&(j<=A.right&&j-A.left>=R/2||j>A.right&&j-A.right<=R/2),we=A.bottom-A.top>=q/2&&(ue<=A.bottom&&ue-A.top>=q/2||ue>A.bottom&&ue-A.bottom<=q/2);return le&&we}u(ge,"half");function ve(A){return ot({top:x,right:j,bottom:ue,left:w},A)}u(ve,"touch");function B(A){let le=0;for(;A.parentElement;)le++,A=A.parentElement;return le}u(B,"getDepth");}function Q(w){return {element:e,settings:t,event:w,left:I,top:L,dropZone:y!=null?d[y]:null,dropZonePos:y!=null?h[y]:null,boundaryPos:O||null}}function Ke(){if(t.moveOriginal){var w=r.styleValue(e,"position"),x;K==="fixed"&&w!=="fixed"&&(x=r.getPos(t.dragGhost,null,!1)),K!=="fixed"&&w==="fixed"?x=r.getPos(t.dragGhost,null,!0):x=r.getPos(t.dragGhost),r.setPos(e,{left:x.left,top:x.top});}}function Re(){!t.dragGhost&&t.moveOriginal&&r.setPos(e,{left:b,top:S}),y=p,y!=null&&t.dropClass&&(r.addClass(e,t.dropClass),r.addClass(d[p],t.dropClass));}},r.fadeIn=function(e,t){var n,i=r.each({el:e},function(o,l,a){r.isArray(o)||(a[l]=[o]);});return n=i.el,r.each(n,function(o,l){o.style.display!="none"&&(o.style.display="none"),Fe(o,0);}),r.animate(n,{display:"",opacity:1},t)},r.fadeOut=function(e,t){var n=r.isArray(e)?e:[e];return r.each(n,function(i,o){i.style.display=="none"&&(i.style.display=""),Fe(i,1);}),r.animate(n,{display:"none",opacity:0},t)},r.slide=function(e,t=!1,n="slide",i="right",o=!1,l){let a=vt(e),c=n=="slide"?"cui-slide":"cui-reveal",s="absolute fixed".indexOf(r.styleValue(a,"position"))==-1,f=["cui-mask","cui-"+i,t?`${c}-out`:`${c}-in`,o?"cui-fade":"",s?"cui-static":""].filter(Boolean),d=u(()=>{bt(e),l();},"complete");return a.classList.add(...f),a.offsetWidth,r.cssAnimation(a,void 0,[e],{onComplete:d})},r.cssAnimation=function(e,t="cui-animation",n=[],i={}){let o=!1,l=!1,a=!1,c=!1,s=u(g=>g.target===e||n.includes(g.target),"isAllowed"),f=u(()=>{(i.isComplete&&i.isComplete()||(!o||a)&&(!l||c))&&(_(),i.onComplete&&i.onComplete());},"isComplete"),d=u(g=>{s(g)&&(o=!0,i.onStart&&i.onStart());},"onTransitionStart"),h=u(g=>{s(g)&&(l=!0,i.onStart&&i.onStart());},"onAnimationStart"),y=u(g=>{s(g)&&(a=!0,f());},"onTransitionEnd"),p=u(g=>{s(g)&&(c=!0,f());},"onAnimationEnd"),_=u(()=>{e.classList.remove(...t.split(" ")),e.removeEventListener("transitionstart",d),e.removeEventListener("animationstart",h),e.removeEventListener("transitionend",y),e.removeEventListener("animationend",p);},"cleanup");return _(),e.addEventListener("transitionstart",d),e.addEventListener("animationstart",h),e.addEventListener("transitionend",y),e.addEventListener("animationend",p),e.classList.add(...t.split(" ")),e.offsetWidth,{abort:u(()=>{_();},"abort"),complete:u(()=>{_(),i.onComplete&&i.onComplete();},"complete")}},r.animateToClass=function(e,t,n,o){if(!e||!t||!r.defaultView(e).getComputedStyle&&!defaultView(e).body.currentStyle)return;var o=o||{},l=o.onComplete!=null?o.onComplete:r.animationSettings.onComplete,a,c,s,f,d,h,y,p,_=[],g=/^[-\d|\d]+([\D]+)|^[#]([0-9a-fA-F]{3}$|[0-9a-fA-F]{6}$)|^rgb/gi,v,E,D,b=r.each({el:e,c:t,s:n},function(I,L,X){r.isArray(I)||(X[L]=[I]);});for(v=b.el,E=b.c||[],D=b.s||[],h=0;h<v.length;++h){f=_[h]={},c=E.length>h?E[h]:E[E.length-1],s=D.length>h?D[h]:D[D.length-1],a=r.getDocument().createElement(v[h].nodeName),r.getDocument().body.appendChild(a),a.className=v[h].className,S(a,c.split(" "),s),p=r.defaultView(e).getComputedStyle(a,null);for(d in p)/^[\d]+$/g.test(d)&&(d=p[d].replace(/(\-([a-z]){1})/g,function(I){return I.substring(1).toUpperCase()})),y=p[d],y&&(d=="display"||d=="visibility"||g.test(y))&&(f[d]=y);a.parentNode.removeChild(a);}return o.onComplete=function(){for(h=0;h<v.length;++h){c=E.length>h?E[h]:E[E.length-1],s=D.length>h?D[h]:D[D.length-1],f=_.length>h?_[h]:_[_.length-1],S(v[h],c.split(" "),s);for(d in f)v[h].style[d]="";}l&&l();},r.animate(v,_,o);function S(I,L,X){r.each(L,function(V){X&&X[V]&&X[V].toLowerCase()=="add"?r.addClass(I,V):X&&X[V]&&X[V].toLowerCase()=="remove"?r.removeClass(I,V):r.toggleClass(I,V);});}},r.animate=function(e,t,n){return C.start(e,t,n)},r.move=function(e,t,n,i){if(n<t)Array.prototype.splice.apply(e,[n,0].concat(e.splice(t,i||1)));else {for(var o=-1,l=[];++o<i;)l.push(e[t+o]);Array.prototype.splice.apply(e,[n,0].concat(l)),e.splice(t,i),n-=i;}return n},r.each=function(e,t,n,i,o,l,a){if(!e)return;arguments.length===1&&r.isPlainObject(e)&&({object:e,callback:t,args:n,startIndex:i,manualFetching:o,last:l,reverse:a}=e);let c,s=i!==void 0?i:a?e.length-1:0,f=e.length,d=typeof f!="number",h=[],y,p=u(function(_,g){return _?!1:(g&&g(),!0)},"isEmpty");if(o){if(a?++s:--s,d){for(c in e)h.push(c);if(f=h.length,p(f,l))return;y=u(function(_,g,v,E,D,b){a?--g:++g,!a&&g<D||a&&g>=0?t(_[v[g]],v[g],_,E,function(){y(_,g,v,E,D,b);}):b&&b();},"next"),y(e,s,h,n,f,l);}else {if(p(f,l))return;y=u(function(_,g,v,E,D){a?--g:++g,!a&&g<E||a&&g>=0?t(_[g],g,_,v,function(){y(_,g,v,E,D);}):D&&D();},"next"),y(e,s,n,f,l);}return e}if(d){for(c in e)if(t(e[c],c,e,n)===!1)break}else for(;(a?s>=0:s<f)&&t(e[s],s,e,n)!==!1;a?--s:++s);return e},r.clone=function(e,t,n,i,o,l,a,c,s,f,d,h,y){let p,_={};return arguments.length===1&&r.isPlainObject(e)?p=e:p={target:e,source:t,deep:n,overwrite:i,extend:o,excludeEmpty:l,excludeFunctions:a,exclude:c,omit:s,types:f,typeCheck:d,converter:h,report:y},p.overwrite=p.overwrite!=null?p.overwrite:0,p.extend=p.extend!=null?p.extend:!0,p.excludeEmpty=p.excludeEmpty!=null?p.excludeEmpty:0,p.exclude||(p.exclude=[]),p.omit?p.omit instanceof Set||(p.omit=new Set(Object.keys(p.omit))):p.omit=new Set,p.converter||(p.converter={}),typeof p.overwrite=="boolean"&&(p.overwrite=p.overwrite?1:0),typeof p.excludeEmpty=="boolean"&&(p.excludeEmpty=p.excludeEmpty?1:0),typeof p.source=="function"&&(p.source.apply(_),p.source=_),ut(p)},r.getConstructor=function(e){return Object.prototype.toString.call(e).match(/^\[object\s(.*)\]$/)[1]},r.type=function(e){return {}.toString.call(e).match(/\s([a-zA-Z]+)/)[1].toLowerCase()},r.getPrototypeOf=function(e){return e.constructor&&e.constructor.prototype||e.__proto__||e.prototype||Object.prototype},r.isEmpty=function(e,t){return typeof e>"u"||e==null?!0:typeof e=="string"?t===!1?e=="":r.trim(e)=="":typeof e=="number"||typeof e=="boolean"?!1:r.isArray(e)?e.length==0:r.isDOM(e)?!1:r.isPlainObject(e)?Object.keys(e).length===0:!1},r.isPlainObject=function(e,t=!1){const n=e&&r.type(e)=="object";return !n||!t?n:e.constructor===Object||e.constructor==null},r.isPrimitive=function(e){return e!==Object(e)},r.isXMLElement=function(e){var t=(e?e.ownerDocument||e:0).documentElement;return t?t.nodeName!=="HTML":!1},r.isElement=function(e){return r.defaultView(e)&&e instanceof r.defaultView(e).HTMLElement},r.isDOM=function(e){return r.defaultView(e)&&e instanceof r.defaultView(e).Node},r.defaultView=function(e){let t=u(function(n){return "[object HTMLDocument]".indexOf(Object.prototype.toString.call(n))>-1},"check");return e&&e.ownerDocument&&t(e.ownerDocument)?e.ownerDocument.defaultView||null:e&&t(e)&&e.defaultView||null},r.isArray=Array.isArray,r.isDate=function(e){const t=r.getDocument().defaultView.Date;return e instanceof t},r.ready=function(e,t,n){var i=this,o={handler:e,args:t,object:n||F};if(document.readyState==="interactive"||document.readyState==="complete"){c(o,null);return}this.handlers||(this.handlers=[],r.getDocument().addEventListener("DOMContentLoaded",l,!1)),this.handlers.push(o);function l(s){r.getDocument().removeEventListener("DOMContentLoaded",l,!1),a(s);}u(l,"DOMContentLoaded");function a(s){r.each(i.handlers,function(f){c(f,s);});}u(a,"ready");function c(s,f){s.args?(s.args.push(f),s.handler.apply(s.object,s.args)):s.handler(f);}u(c,"invoke");},r.once=function(e,t,n,i,o,l){return r.on(e,t,n,i,o,l,!0)},r.on=function(e,t,n,i,o,l,a,c){arguments.length===1&&r.isPlainObject(e)&&({obj:e,eventType:t,handler:n,args:i,context:o,unique:l,fireOnce:a,options:c}=e);let s=t.split(" "),f=gt(n);return i=i??null,i=ze(i),r.each(s,function(d){let h=We(d);e.__events||(e.__events={}),e.__events[h]||(e.__events[h]=new Map,e[h]&&e.__events[h].set("0",[{handler:e[h],args:null}]));let y=e.__events[h].get(f);if(y||e.__events[h].set(f,y=[]),y.length==0||!l||c){let p=null;r.isDOM(e)||"[object Window][object DOMWindow]".indexOf(Object.prototype.toString.call(e))>-1?c?(p=u(function(_){let g=i?i.slice():[];g.push(_),n.apply(o||e,g);},"listenerMethod"),e.addEventListener(d,p,c),ke(e).push({type:d,handlerGuid:f,listener:p,options:c})):h in e?e[h]=Ve.bind(e):y.length==0&&(p=Ve.bind(e),e.addEventListener(d,p),ke(e).push({type:d,handlerGuid:f,listener:p,options:!1})):e[h]=Ve.bind(e,{type:h},e),y[y.length]={handler:n,context:o,args:i,fireOnce:a,orgEventType:d,listenerMethod:p};}}),f},r.has=function(e,t,n){var i=typeof n=="string"?n:Ue(n);return r.isEmpty(i)?!1:(t=We(t),!!(e.__events&&e.__events[t]&&e.__events[t].has(i)))},r.off=function(e,o,n){var i=!n||typeof n=="string"?n:Ue(n),o=r.isEmpty(o)?null:o,l;!e.__events||n&&r.isEmpty(i)||(o?r.each(o.split(" "),function(a){a=We(a),r.isEmpty(i)?(l=e.__events[a],l&&l.forEach(function(c,s,f){r.off(e,a,s);}),delete e.__events[a],delete e[a]):r.has(e,a,i)&&rt(e,a,i);}):(r.each(e.__events,function(a,c){a&&a.forEach(function(s,f,d){rt(e,c,f);}),delete e[c];}),delete e.__events,He.delete(e)));},r.copyEvents=function(e,t){var n=t.__events;return r.each(n,function(i,o){i&&i.forEach(function(l,a,c){r.each(l,function(s,f){r.on(e,o,s.handler,s.args,s.context,!1,s.fireOnce);});});}),e},r.fireEvent=function(e,t,n,i,o){n=n||!1,i=i||!1;var l=new CustomEvent(t,{bubbles:n,cancelable:i});return o&&r.clone(l,o),e.dispatchEvent(l)},r.httpRequestHandlers={onStart:r.createEvent("onStart"),onComplete:r.createEvent("onComplete"),onSuccess:r.createEvent("onSuccess"),onError:r.createEvent("onError"),onAbort:r.createEvent("onAbort")},r.xhrSettings={xhr:null,url:null,data:null,responseType:null,method:"POST",contentType:"",headers:null,jsonResponseDataWrapper:"",jsonDeserializer:null,jsonParseWrappedDataString:!0,async:!0,timeout:null,repeatInterval:null,onStart:null,onComplete:null,onSuccess:null,onError:null,onAbort:null,onProgress:null,onUploadProgress:null,onUploadError:null},r.addHTML=function(e,t,n,i){var o,l,a,c,s,f,d,p={},g=[],v=0,E=0,D=0,b=0;o=r.getDocument().createElement("div"),o.style.display="none",o.innerHTML=e,p.title=o.getElementsByTagName("title")[0],p.title&&(p.title=p.title.textContent),r(function(L){g.push(L);},o,"base meta title"),r.each(g,function(L){r.remove(L);}),g=[],r(function(L){g.push(L);},o,"script link style"),p.html=o.innerHTML,p.script=[],p.css=[],p.element=t;for(var S=0;S<g.length;++S)f=g[S],r.remove(f),!(!r.isEmpty(f.id)&&r("#"+f.id))&&(d=f.nodeName.toLowerCase(),d=="script"?f.src?(++E,p.script.push(r.addScriptSource(f.src,f.id,{onComplete:u(function(){r.defer(function(){++D,I();});},"onComplete")},!1,!1))):f.text&&p.script.push(f):d=="link"&&f.rel=="stylesheet"&&f.href?(++v,p.css.push(r.addCssSource(f.href,f.id,{onComplete:u(function(){r.defer(function(){++b,I();});},"onComplete")}))):d=="style"&&p.css.push(r.addCssTag(f.innerHTML,f.id)));v+E==0&&I();function I(){if(b==v&&D==E){if(n)for(l in n)(c=r("#"+l))&&(a=n[l],s=typeof a=="string"?r("#"+a):a,s.appendChild(c));else t&&(t.innerHTML=o.innerHTML);r.each(p.script,function(L,X){L.text&&(p.script[X]=r.addScriptTag(L.text,L.id));}),i&&i(p);}}u(I,"callback");},r.load=function(e,t,n){var i=e.onSuccess!=null?e.onSuccess:r.xhrSettings.onSuccess;return e.method=e.method||e.requestMethod||"GET",e.onSuccess=function(o){r.addHTML(o.data,t,n,function(l){o.title=l.title,o.html=l.html,o.css=l.css,o.script=l.script,o.element=l.element,i&&i(o);});},r.xhr(e)},r.xhr=function(e){var t,n,i,o,l,a=!0,c,s=r.getDocument(),f={HTML:"text/html",XML1:"text/xml",XML2:"application/xml",JSON:"application/json",FORMURL:"application/x-www-form-urlencoded"},d=u(function(y){return e[y]!=null?e[y]:r.xhrSettings[y]},"setHandler");return e=e||{},e={xhr:e.xhr||r.xhrSettings.xhr,url:e.url||r.xhrSettings.url,data:e.data,responseType:e.responseType||r.xhrSettings.responseType,method:(e.method||e.requestMethod||r.xhrSettings.method||r.xhrSettings.requestMethod||"POST").toUpperCase(),contentType:(e.contentType||e.requestContentType||r.xhrSettings.contentType||r.xhrSettings.requestContentType||"").toUpperCase(),headers:e.headers||e.requestHeaders||r.xhrSettings.headers||r.xhrSettings.requestHeaders,jsonResponseDataWrapper:e.jsonResponseDataWrapper||r.xhrSettings.jsonResponseDataWrapper,jsonDeserializer:e.jsonDeserializer||r.xhrSettings.jsonDeserializer,jsonParseWrappedDataString:typeof e.jsonParseWrappedDataString<"u"?e.jsonParseWrappedDataString:r.xhrSettings.jsonParseWrappedDataString,async:typeof e.async<"u"?e.async:r.xhrSettings.async,timeout:e.timeout||r.xhrSettings.timeout,repeatInterval:e.repeatInterval||r.xhrSettings.repeatInterval,onStart:d("onStart"),onComplete:d("onComplete"),onSuccess:d("onSuccess"),onError:d("onError"),onAbort:d("onAbort"),onProgress:d("onProgress"),onUploadProgress:d("onUploadProgress"),onUploadError:d("onUploadError")},t=e.xhr,t||(t=e.xhr=new s.defaultView.XMLHttpRequest),e.contentType||(c=f.JSON,e.method=="GET"||typeof e.data=="string"&&!r.startsWith(e.data,"{")?c=f.FORMURL:e.data instanceof FormData&&(c=null),e.contentType=c),e.responseType&&(t.responseType=e.responseType),h();function h(){var y={xhr:t||null,data:null,timeout:null,event:null,settings:e},p,_=u(function(b,S){e[b]&&e[b](S),r.httpRequestHandlers[b]&&r.httpRequestHandlers[b].fire(F,S);},"fire"),g=u(function(b,S){return S?S(b):r.getDocument().defaultView.JSON.parse(b)},"parse");(e.onError||r.httpRequestHandlers.onError.isBound())&&(l=!0),t.upload&&(e.onProgress&&(t.onprogress=function(b){y.event=b,_("onProgress",y);}),e.onUploadProgress&&(t.upload.onprogress=function(b){y.event=b,_("onUploadProgress",y);}),e.onUploadError&&(t.upload.onerror=function(b){y.event=b,_("onUploadError",y);})),_("onStart",y);var v=t.onreadystatechange=function(){var b,S=null,I=e.jsonResponseDataWrapper,L;if(i||o||t.readyState==4){if(p=!0,y.timeout=o,t.onreadystatechange=null,L=t.status,i){_("onAbort",y);return}if(L>=200&&L<300||L===304)b=t.responseText,t.responseText!=""&&(S=t.getResponseHeader("content-type"),S&&t.responseXML&&(S.toLowerCase().indexOf(f.XML1)>-1||S.toLowerCase().indexOf(f.XML2)>-1)?b=t.responseXML.documentElement:S&&S.toLowerCase().indexOf(f.JSON)>-1&&(b=t.responseText,r.isEmpty(b)||(b=g(b,e.jsonDeserializer),!r.isEmpty(b)&&r.isPlainObject(b)&&I&&b[I]!==void 0&&(b=b[I],typeof b=="string"&&!r.isEmpty(b)&&e.jsonParseWrappedDataString&&(b=g(b,e.jsonDeserializer)))))),y.data=b,_("onSuccess",y);else {var X=`XHR failed.
3
+ `;o&&(X="XHR timed out after "+e.timeout+` ms.
4
+ `),r.log(X+"Status: "+t.status+" "+t.statusText),l&&_("onError",y);}_("onComplete",y),a&&!r.isEmpty(e.repeatInterval)&&(n=setTimeout(function(){h();},e.repeatInterval));}};if(e.timeout&&e.timeout>0&&(t.timeout=e.timeout,t.ontimeout=function(){p||(o=!0,v());}),e.method=="GET")if(r.isPlainObject(e.data)){var E=[];r.each(e.data,function(b,S){E.push(S+"="+encodeURIComponent(b));}),e.url+="?"+E.join("&");}else e.data&&(e.data.match(/^\?|^\&/)&&(e.data=e.data.substring(1)),e.url+="?"+e.data);t.open(e.method,e.url,e.async),r.each(e.headers,function(b,S){t.setRequestHeader(b,S);}),e.method=="GET"?t.send(null):(e.contentType&&t.setRequestHeader("Content-Type",e.contentType),t.send(r.isPlainObject(e.data)?r.getDocument().defaultView.JSON.stringify(e.data):e.data||null)),e.async||v();var D={abort:u(function(b){b&&(clearTimeout(n),a=!1),i=!0,t.abort();},"abort"),xhr:t,settings:e};return D}},r.wsSettings={url:null,binaryType:null,data:null,pooling:!0,onOpen:null,onClose:null,onMessage:null,onError:null},r.ws=function(e){var t,n;if(!("WebSocket"in F)){r.log("WebSocket not supported.");return}return e={url:e.url||r.wsSettings.url,data:e.data||r.wsSettings.data,binaryType:e.binaryType||r.wsSettings.binaryType,pooling:e.pooling||r.wsSettings.pooling,onOpen:e.onOpen!=null?e.onOpen:r.wsSettings.onOpen,onClose:e.onClose!=null?e.onClose:r.wsSettings.onClose,onMessage:e.onMessage!=null?e.onMessage:r.wsSettings.onMessage,onError:e.onError!=null?e.onError:r.wsSettings.onError},n=e.url.toLowerCase(),e.pooling&&r.webSockets[n]&&r.webSockets[n].readyState<=1?t=r.webSockets[n]:(t=new WebSocket(e.url),r.on(t,"error",function(i){r.log(i.message);}),e.pooling&&(r.webSockets[n]=t,r.on(t,"close",function(i){delete r.webSockets[n];}))),e.binaryType&&(t.binaryType=e.binaryType),t.readyState==1?t.send(e.data):(e.onOpen||e.data)&&r.on(t,"open",function(i){e.data&&t.send(data),e.onOpen&&!r.has(t,"open",e.onOpen)&&e.onOpen(i);}),e.onClose&&!r.has(t,"close",e.onClose)&&r.on(t,"close",e.onClose),e.onMessage&&!r.has(t,"message",e.onMessage)&&r.on(t,"message",e.onMessage),e.onError&&!r.has(t,"error",e.onError)&&r.on(t,"error",e.onError),t},r.addScriptSource=function(e,t,n,i,o,l){var a=null,c=r(null,null,"head",!0)||r.getDocument().body,s;n={onStart:n&&n.onStart?n.onStart:null,onComplete:n&&n.onComplete?n.onComplete:null},(!t||(a=r("#"+t))==null)&&(s=Ze(c,"script",function(d){return d.getAttribute("src")==e}),s.length>0&&(a=s[0]));function f(d,h){n[d]&&n[d](h),r.httpRequestHandlers[d].fire(F,h);}return u(f,"fire"),a?a.__busy?Me(a,function(){f("onComplete",a);},function(){f("onError",a);}):a.__error?f("onError",a):f("onComplete",a):(a=r.getDocument().createElement("script"),t&&(a.id=t),a.src=e,a.type="text/javascript",a.async=i||!1,a.defer=o||!1,a.__busy=!0,Me(a,function(){f("onComplete",a);},function(){f("onError",a);}),a.onload=function(){Pe(a);},a.onerror=function(){Pe(a,!0);},xe(a,l),f("onStart",a)),a},r.addCssSource=function(e,t,n,i){var o=r(null,null,"head",!0)||r.getDocument().body,l=r("#"+t),a;n={onStart:n&&n.onStart!=null?n.onStart:null,onComplete:n&&n.onComplete!=null?n.onComplete:null},(!t||(l=r("#"+t))==null)&&(a=Ze(o,"link",function(s){return s.getAttribute("src")==e}),a.length>0&&(l=a[0]));function c(s,f){n[s]&&n[s](f),r.httpRequestHandlers[s].fire(F,f);}return u(c,"fire"),l?l.__busy?Me(l,function(){c("onComplete",l);},function(){c("onError",l);}):lt(l)?c("onError",l):c("onComplete",l):(l=r.getDocument().createElement("link"),t&&(l.id=t),l.href=e,l.rel="Stylesheet",l.type="text/css",l.__busy=!0,Me(l,function(){c("onComplete",l);},function(){c("onError",l);}),l.onload=function(){Pe(l);},l.onerror=function(){Pe(l,!0);},xe(l,i),c("onStart",l)),l},r.addScriptTag=function(e,t,n){if(t&&r("#"+t))return r("#"+t);var i=r.getDocument().createElement("script");r(null,null,"head",!0)||r.getDocument().body;return t&&(i.id=t),i.type="text/javascript",i.text=e,xe(i,n),i},r.addCssTag=function(e,t,n){if(t&&r("#"+t))return r("#"+t);var i=r.getDocument().createElement("style");r(null,null,"head",!0)||r.getDocument().body;return t&&(i.id=t),i.styleSheet?i.styleSheet.cssText=e:i.appendChild(r.getDocument().createTextNode(e)),xe(i,n),i},r.setCssRule=function(e,t,n,i,o){var l,a=e.cssRules||e.rules,c=a.length,s,f=n instanceof RegExp,d=u(function(y){return i==null?e.deleteRule(y):o?r.updateStyle(a[y].style,i):a[y].style.cssText=i,y},"updateRule");if(r.isEmpty(n))return d(t);f?s=u(function(y){return y.selectorText&&y.selectorText.match(n)},"comparer"):s=u(function(y){return y.selectorText===n},"comparer");for(var h=0;h<c;++h)if(l=a[h],s(l))return d(h);return e.insertRule(n+"{"+i+"}",r.isEmpty(t)?c:t)},r.getCssRule=function(e,t){var n,i=e.cssRules||e.rules,o=i.length,l,a=[],c=t instanceof RegExp;c?l=u(function(f){return f.selectoText&&f.selectorText.match(t)},"comparer"):l=u(function(f){return f.selectorText===t},"comparer");for(var s=0;s<o;++s)n=i[s],l(n)&&a.push(n);return a},r.keepAlive=function(e,t){var n=r.getDocument().createElement("iframe");n.style.display="none",n.src="javascript:'';",r.getDocument().body.appendChild(n);var i=setInterval(function(){n.src=e+"?"+new Date().getTime();},t||3e5),o=u(function(){clearInterval(i),r.getDocument().body.removeChild(n);},"kill");return o},r.element=function(e,t,n,i,o,l){arguments.length===1&&r.isPlainObject(e)&&({container:e,before:t,tag:n,content:i,attrs:o,props:l}=e);let a=r.getDocument().createElement(n||"div");return t?t.parentElement.insertBefore(a,t):e&&e.appendChild(a),i&&(r.isArray(i)?r.isDOM(i[0])?r.each(i,function(c){a.appendChild(c);}):a.innerHTML=i.join(""):r.isDOM(i)?a.appendChild(i):a.textContent=i),r.each(o,function(c,s){c!=null&&a.setAttribute(s,c);}),r.each(l,function(c,s){c!=null&&(a[s]=c);}),a},r.commonAncestor=function(e,t,n){var i,o=u(function(c,s){return c==n&&s(),!0},"stop"),l=r(o,e,null,!1,!0).reverse(),a=r(o,t,null,!1,!0).reverse();return r.each(l,function(c,s){if(i=l[s],i!=a[s])return i=l[s-1],!1}),i},r.sibling=function(e,t,n,i,o){for(var l=t?function(c){return c.previousSibling}:function(c){return c.nextSibling},a=u(function(c){for(;c&&!l(c);)c.parentNode!=i?c=c.parentNode:c=null;if(c)return l(c)},"fnNext");(e=a(e))&&(n&&n!=e.nodeType||o&&!e.textContent.length););return e},r.firstChildByTagName=function(e,t){for(e=e.firstElementChild;e;){if(e.nodeName&&e.nodeName.toLowerCase()==t.toLowerCase())return e;e=e.nextElementSibling;}return null},r.children=function(e){if(!e)return null;var t=[];for(e=e.firstElementChild;e;)e.nodeType==1&&t.push(e),e=e.nextElementSibling;return t},r.appendChildren=function(e,t){for(var n=e.firstChild,i;n;)i=n.nextSibling,t.appendChild(n),n=i;return t},r.remove=function(e){return e&&e.remove(),e},r.removeChildren=function(e){r.extract(e);},r.surround=function(e,t){if(!r.isInDOM(e)&&!(t instanceof r.defaultView(e).DocumentFragment)){var n=t.parentNode,i=t.nextSibling;n&&(i?n.insertBefore(e,i):n.appendChild(e));}return e.appendChild(t),e},r.unsurround=function(e){return e.parentNode.replaceChild(r.extract(e),e)},r.extract=function(e,t){var n=r.getDocument().createDocumentFragment(),i;if(e.nodeName.toLowerCase()=="template"&&e.content&&e.content.childNodes.length&&(e=e.content),t)for(i=[];e.firstChild;)i.push(r.remove(e.firstChild));else for(;e.firstChild;)n.appendChild(e.firstChild);return i||n},r.fragmentFromHTML=function(e){var t=r.getDocument().createElement("div");return t.innerHTML=e,extract(t)},r.insertNode=function(e,t,n,i){var o=r.defaultView(e).getSelection(),l=!0;i&&!t&&(l=!1),i=i||o.getRangeAt(0),o.rangeCount&&(n&&i.deleteContents(),i.insertNode(e),l&&(t||i.collapse(!1),o.removeAllRanges(),o.addRange(i)));},r.getNodesInRange=function(e,t){if(t=t||r.getDocument().defaultView.getSelection().getRangeAt(0),!t||t.collapsed)return [];var n=t.startContainer,i=t.endContainer,o,l,a=u(function(s){if(s.hasChildNodes())return s.firstChild;for(;s&&!s.nextSibling;)s=s.parentNode;return s?s.nextSibling:null},"fnNextNode");if(n==i)return [n];for(o=[];n&&n!=i;)o.push(n=a(n));for(n=t.startContainer;n&&n!=t.commonAncestorContainer;)o.unshift(n),n=n.parentNode;if(!e)return o;for(var c=0;c<o.length;++c)n=o[c],e.indexOf(n.nodeName)>-1&&l.push(n);return l},r.encodeString=function(e){if(!e)return "";for(var t=e.split(""),n,i=0;i<t.length;++i)switch(t[i]){case"\\":t[i]="\\\\";break;case'"':t[i]='\\"';break;case"'":t[i]="\\'";break;case"\b":t[i]="\\b";break;case"\f":t[i]="\\f";break;case`
5
+ `:t[i]="\\n";break;case"\r":t[i]="\\r";break;case" ":t[i]="\\t";break;default:n=t[i].charCodeAt(0),(n<32||n>127)&&(t[i]="\\u"+("0000"+n.toString(16)).slice(-4));break}return t.join("")},r.encodeHTML=function(e){if(!e)return "";for(var t=e.split(""),n,i="&nbsp;",o=0;o<t.length;++o)switch(t[o]){case"<":t[o]="&lt;";break;case">":t[o]="&gt;";break;case"&":t[o]="&amp;";break;case'"':t[o]="&quot;";break;case"'":t[o]="&#39;";break;case" ":t[o]=i+i;break;case" ":t[o]=i+i+i+i;break;case`
6
+ `:t[o]="<br />";break;default:n=t[o].charCodeAt(0),(n<32||n>127)&&(t[o]="&#"+n+";");break}return t.join("")},r.hasClass=function(e,t){if(!e||!e.className||!t)return !1;for(var n="",i="",o=t.split(" "),l=0;l<o.length;++l)if(t=o[l],n=" "+e.className+" ",i=" "+t+" ",n.indexOf(i)==-1)return !1;return !0},r.toggleClass=function(e,t){if(e)for(var n=t.split(" "),i=0;i<n.length;++i)t=n[i],r.hasClass(e,t)?r.removeClass(e,t):r.addClass(e,t);},r.addClass=function(e,t){if(!(!e||!t))for(var n=t.split(" "),i=0;i<n.length;++i)t=n[i],e.className?r.hasClass(e,t)||(e.className+=" "+t):e.className=t;},r.removeClass=function(e,t){if(!(!e||!e.className||!t)){for(var n=t.split(" "),i,o,l=0;l<n.length;++l)t=n[l],i=" "+e.className+" ",o=new RegExp("\\s"+r.trim(t)+"\\s"),i=i.replace(o," "),e.className=r.trim(i);r.isEmpty(r.trim(e.className))&&e.removeAttribute("class");}},r.styleValue=function(e,t,n){if(t.indexOf("-")>-1&&(t=t.replace(Qe,function(i){return i.substring(1).toUpperCase()})),!n&&e.style[t])return e.style[t];if(r.defaultView(e).getComputedStyle)return r.defaultView(e).getComputedStyle(e,null)[t]},r.setStyle=function(e,t){t?e.setAttribute("style",t):e.removeAttribute("style");},r.updateStyle=function(e,t){for(var n,i,o,l="###semicolon###",a=t.replace(/\\;/g,l).split(";"),c=0;c<a.length;++c)n=a[c].split(/:(.+)/),i=r.trim(n[0]),o=n[1]!=null?r.trim(n[1].replace(l,CSS.escape(";"))):void 0,i.endsWith(":")&&(i=i.substr(0,i.length-1)),i&&(o==null?e.setProperty(i,""):r.endsWith(o,"!important")?e.setProperty(i,o.replace("!important",""),"important"):e.setProperty(i,o));},r.copyComputedStyle=function(e,t){var n=r.defaultView(e).getComputedStyle?r.defaultView(e).getComputedStyle(e,null):e.currentStyle,i=[],o;for(var l in n)n[l]&&(o=l.replace(/(([A-Z]){1})/g,function(a){return "-"+a.toLowerCase()}),i.push(o+":"+n[l]));r.setStyle(t,i.join(";"));},r.getStyleSheet=function(e,t){for(var n=0;n<r.getDocument().styleSheets.length;++n)if(e&&r.getDocument().styleSheets[n].ownerNode.id==e||t&&r.getDocument().styleSheets[n].ownerNode.href==t)return r.getDocument().styleSheets[n]},r.eventSource=function(e){return e.target||e.srcElement},r.eventRelated=function(e){return e.relatedTarget||e.type=="mouseout"?e.toElement:e.fromElement},r.clientX=function(e){return it(e,"clientX")},r.clientY=function(e){return it(e,"clientY")},r.getPos=function(e,t,n){at(e);var i,o=e.getBoundingClientRect(),l={top:o.top,right:o.right,bottom:o.bottom,left:o.left,width:o.width,height:o.height};return at(e,!0),r.isEmpty(n)&&r.styleValue(e,"position")==="fixed"||n||(t?(o=t.getBoundingClientRect(),l.top-=o.top,l.right-=o.left,l.bottom-=o.top,l.left-=o.left):(i=r.getScrollPosition(),l.top+=i.scrollTop,l.right+=i.scrollLeft,l.bottom+=i.scrollTop,l.left+=i.scrollLeft)),l},r.setPos=function(e,t,n){var i,o=e.style,l={},a={top:!r.isEmpty(t.top)&&t.top!="auto",right:!r.isEmpty(t.right)&&t.right!="auto",bottom:!r.isEmpty(t.bottom)&&t.bottom!="auto",left:!r.isEmpty(t.left)&&t.left!="auto"};n&&(l.top=e.style.marginTop,l.right=e.style.marginRight,l.bottom=e.style.marginBottom,l.left=e.style.marginLeft,r.updateStyle(e.style,"margin: 0px !important;")),c("top"),c("right"),c("bottom"),c("left"),i=r.getPos(e),s("top"),s("right"),s("bottom"),s("left"),n&&(r.updateStyle(e.style,"margin:;"),e.style.marginTop=l.top,e.style.marginRight=l.right,e.style.marginBottom=l.bottom,e.style.marginLeft=l.left);function c(f){o[f]=a[f]?r.unit(t[f]):o[f];}u(c,"init");function s(f){o[f]=a[f]&&i[f]!=t[f]?r.unit(t[f]-(i[f]-t[f])):o[f];}u(s,"set");},r.positionedParent=function(e){var t=Be(e,null,function(n,i){if(!r.isElement(n))return i(),!1;var o=r.styleValue(n,"position"),l=o=="relative"||o=="absolute"||o=="fixed";return l?(i(),!0):!1});return t&&t.length>0?t[0]:null},r.getScrollPosition=function(){var e={};return e.scrollLeft=r.getDocument().defaultView.scrollX,e.scrollTop=r.getDocument().defaultView.scrollY,e},r.escapeRegExp=function(e){return e.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")},r.trim=function(e){return e&&e.toString().replace(/^[\s|\n|\r|\t]+/,"").replace(/[\s|\n|\r|\t]+$/,"")},r.startsWith=function(e,t,n){return n?e.toLowerCase().indexOf(t.toLowerCase())===0:e.indexOf(t)===0},r.endsWith=function(e,t,n){var i=e.length-t.length;return i<0?!1:n?e.toLowerCase().lastIndexOf(t.toLowerCase())===i:e.lastIndexOf(t)===i},r.indexOf=function(e,t,n,i){if(r.isEmpty(e))return -1;var o=typeof t!="function"&&t||"",l;typeof t=="string"?(l=o.toString().toLowerCase(),t=u(function(c){return c===o},"comparer"),n?t=u(function(c){return c.toString().toLowerCase()==l},"comparer"):i||(t=u(function(c){return c==o},"comparer"))):typeof t!="function"&&(t=u(function(c){return c===o},"comparer"));for(var a=0;a<e.length;++a)if(t(e[a]))return a;return -1},r.path=function(e,t,n,i){return G(e,t,n,i)},r.textSelection=function(e){var t={},n=e==r.getDocument()?r.getDocument().body:e,i={disable:u(function(){typeof e.onselectstart<"u"&&r.on(e,"selectstart",je),r.each(["Moz","webkit","ms",""],function(o){o+=o?"UserSelect":"userSelect",o in n.style&&r.styleValue(n,o)!="none"&&(t[o]=n.style[o],n.style[o]="none");});},"disable"),enable:u(function(){typeof e.onselectstart<"u"&&r.off(e,"selectstart",je),r.each(t,function(o,l){n.style[l]=o;});},"enable")};return i},r.rgbToHex=function(e,t,n){var i,o,l;return i=e.toString(16),i.length==1&&(i="0"+i),o=t.toString(16),o.length==1&&(o="0"+o),l=n.toString(16),l.length==1&&(l="0"+l),i+o+l},r.hexToRgb=function(e){var t="00",n="00",i="00";return e&&(e.indexOf("#")==0&&(e=e.substr(1)),e.length==3?(t=e.substring(0,1)+e.substring(0,1),n=e.substring(1,2)+e.substring(1,2),i=e.substring(2,3)+e.substring(2,3)):(t=e.length>1?e.substring(0,2):"00",n=e.length>3?e.substring(2,4):"00",i=e.length>5?e.substring(4,6):"00")),[parseInt(t,16),parseInt(n,16),parseInt(i,16)]},r.rgbToHsv=function(e,t,n){e/=255,t/=255,n/=255;var i=Math.min(e,t,n),o=Math.max(e,t,n),l=o-i,a=0,c=0,s=o;if(i!=o){switch(c=l/o,o){case e:a=(t-n)/l+(t<n?6:0);break;case t:a=(n-e)/l+2;break;case n:a=(e-t)/l+4;break}a/=6;}return [a,c,s]},r.hsvToRgb=function(e,t,n){var i=e/.16666666666666666,o=i-Math.floor(i),l=Math.floor(i)%2?1-o:o,a=n,c=(1-t)*n,s=c+(a-c)*l,f,d,h;return i==6&&(i=0),[f,d,h]=[[a,s,c],[s,a,c],[c,a,s],[c,s,a],[s,c,a],[a,c,s]][Math.floor(i)],[Math.round(f*255),Math.round(d*255),Math.round(h*255)]},r.getWindowSize=function(){var e={width:0,height:0};return e.width=r.getDocument().documentElement.clientWidth||r.getDocument().body.clientWidth,e.height=r.getDocument().documentElement.clientHeight||r.getDocument().body.clientHeight,e},r.getScrollBarSize=function(){var e=r.getDocument().body.appendChild(r.getDocument().createElement("div")),t=e.appendChild(r.getDocument().createElement("div")),n={width:0,height:0};return e.style.overflow="scroll",e.style.width=t.style.width="100px",e.style.height=t.style.height="100px",n.width=e.scrollWidth-e.clientWidth,n.height=e.scrollHeight-e.clientHeight,e.parentNode.removeChild(e),n},r.unit=function(e,t){return /[^\d]$/.test(r.trim(e.toString()))?e:e+(t||"px")},r.size=function(e,t){var n=r.borderAndPadding(e),i=t?r.margin(e):null,o=n.borderLeft+n.borderRight,l=n.borderTop+n.borderBottom,a=e.scrollWidth,c=e.scrollHeight,s={};return s.width=a+o,s.height=c+l,t&&(s.width+=i.width,s.height+=i.height),a>e.offsetWidth-o&&(s.width+=n.paddingRight),c>e.offsetHeight-l&&(s.height+=n.paddingBottom),s},r.border=function(e){return nt(e,"border")},r.padding=function(e){return nt(e,"padding")},r.borderAndPadding=function(e,t){var n=r.clone(r.border(e),r.padding(e));return t||t!==!1&&!yt(e)?(n.width=n.borderLeft+n.borderRight+n.paddingLeft+n.paddingRight,n.height=n.borderTop+n.borderBottom+n.paddingTop+n.paddingBottom):n.width=n.height=0,n},r.margin=function(e){const t=F.getComputedStyle(e),n={top:parseFloat(t.marginTop),right:parseFloat(t.marginRight),bottom:parseFloat(t.marginBottom),left:parseFloat(t.marginLeft)};return n.width=n.left+n.right,n.height=n.top+n.bottom,n},r.isInDOM=function(e){return r.contains(r.getDocument().documentElement,e)},r.contains=function(e,t){return !t||!e?!1:r.isElement(t)?e!==t&&e.contains&&e.contains(t):Be(t,null,function(n,i){return n===e?(i(),!0):!1}).length>0},r.padLeft=function(e,t,n){return Array(t-String(e).length+1).join(n||"0")+e},r.padRight=function(e,t,n){return e+Array(t-String(e).length+1).join(n||"0")},r.roundNumber=function(e,t,n){return r.isEmpty(e)||isNaN(e)?e:(typeof e=="string"&&(e=parseFloat(e)),!n||n.toString().toLowerCase()=="round"?Math.round(e*Math.pow(10,t))/Math.pow(10,t):n.toString().toLowerCase()=="floor"?Math.floor(e*Math.pow(10,t))/Math.pow(10,t):n.toString().toLowerCase()=="ceil"?Math.ceil(e*Math.pow(10,t))/Math.pow(10,t):e)},r.reverseText=function(e){return e.split("").reverse().join("")},r.format=function(e){var t=Ye(arguments,1);return r.isPlainObject(t[0])&&(t=t[0]),e.replace(/\{+([^{}]+)\}+/g,n);function n(i){var o=i.toString(),l=(o.match(/\{/g)||[]).length,a=(o.match(/\}/g)||[]).length;return l>=1&&l%2!=0&&a>=1&&a%2!=0&&(o=o.replace(/\{([^{}]+)\}/,c)),o.replace("{{","{").replace("}}","}");function c(s){var f=s.substring(1,s.length-1);return F.isNaN(f)?t[f]:t[parseInt(f,10)]}}},r.formatNumber=function(e,t,n,i,o,l,a,c){if(r.isEmpty(e)||isNaN(e))return e;var s="",f="",d="",y="0000000000000000000000000000000";return l||(l="."),o&&o!="none"&&(e=r.roundNumber(e,i,o)),i>31&&(i=31),s=e.toString(),s.indexOf(".")==0&&(s="0"+s),s.indexOf(".")>-1?(d=s.substr(s.indexOf(".")+1),f=s.replace("."+d,"")):f=s,r.isEmpty(c)||(f=(c+f).slice(c.length*-1)),t||(f=f.replace(/(?=^0+[1-9]*)0+/,"")),f||(f="0"),r.isEmpty(i)||(i==0?d="":d.toString().length>i?d=d.substr(0,i):d.toString().length<i&&(d+=y.substr(0,i-d.toString().length))),n||(d=d.replace(/([0]+$)/g,"")),a?s=f.replace(/(?=(\d{3})+$)/g,a).replace(/^[^0-9]/g,""):s=f,i!=0&&d&&(s+=l+d),s},r.formatDate=function(e,t){var n=e.getDate(),i=e.getMonth()+1,o=e.getFullYear(),l=e.getHours(),a=e.getMinutes(),c=e.getSeconds();return t=t||"MM-dd-yyyy",t.replace(/yyyy/gi,o).replace("MM",r.padLeft(i,2)).replace("M",i).replace(/dd/gi,r.padLeft(n,2)).replace(/d/gi,n).replace(/hh/gi,r.padLeft(l,2)).replace(/h/gi,l).replace("mm",r.padLeft(a,2)).replace("m",a).replace(/ss/gi,r.padLeft(c,2)).replace(/s/gi,c)},r.parseDate=function(e,t){var n=t.match(/([^\w])/)[1];t=t.toLowerCase().replace("t"," "),e=e.toLowerCase().replace("t"," ").replace(/[\/\.\-]/g,n);var i=r.trim(t.replace(/(h+:[^\s]*)([\s]|$)/gi,"")),o=i.split(n),l=r.trim(e.replace(/(\d+:[^\s]*)([^\d]|$)/g,"")),a=l.split(n),c=l.length<e.length,s=u(function(L){return /^[0-9]+$/.test(L)},"isDigit"),f=u(function(L,X){r.each(L,function(V,K){var O=X[K];O&&(V.length<O.length?L[K]+=V[0]:O.length<V.length&&V.length==2&&(X[K]="0"+O[0]));});},"equalize");if(!s(a[0])||!parseFloat(a[0])||!s(a[1])||!parseFloat(a[1])||!s(a[2])||!parseFloat(a[2]))return null;f(o,a);var d=o.join(n),h=a.join(n),y=h.substring(d.indexOf("y"),d.lastIndexOf("y")+1),p=h.substring(d.indexOf("m"),d.lastIndexOf("m")+1),_=h.substring(d.indexOf("d"),d.lastIndexOf("d")+1),g=new Date(parseFloat(y),parseFloat(p)-1,parseFloat(_));if(c&&t.indexOf("h:")>-1){var v=r.trim(e.replace(l,"")),E=v.split(":");if(E.filter(function(L){return s(L)}).length>0){var D=r.trim(t.replace(i,""));o=D.split(":"),f(o,E),d=o.join(":"),h=E.join(":");var b=h.substring(d.indexOf("h"),d.lastIndexOf("h")+1),S=h.substring(d.indexOf("m"),d.lastIndexOf("m")+1),I=d.indexOf("s")>-1?h.substring(d.indexOf("s"),d.lastIndexOf("s")+1):0;g.setHours(b),g.setMinutes(S),g.setSeconds(I);}}return g},r.isLeapYear=function(e){return e%4==0&&e%100!=0||e%400==0},r.getWeekNumber=function(e,t){t=r.isEmpty(t)?1:t;var n=new Date(Date.UTC(e.getFullYear(),e.getMonth(),e.getDate())),i=n.getUTCDay();t==0||t==6?(t==6&&(i=i==6?0:i+1),n.setUTCDate(n.getUTCDate()-i)):n.setUTCDate(n.getUTCDate()+4-(i||7));var o=new Date(Date.UTC(n.getUTCFullYear(),0,1)),l=Math.ceil(((n-o)/864e5+1)/7);if(t==1)return l;var a=new Date(Date.UTC(n.getUTCFullYear()+1,0,1));return (a-n)/864e5>6?l:1},r.getDateOfWeek=function(e,t,n){var i=new Date(Date.UTC(t,0,1+(e-1)*7)),o=i.getUTCDay()-n;return o<4?i.setDate(i.getUTCDate()-i.getUTCDay()+n):i.setDate(i.getUTCDate()+7-(i.getUTCDay()-n)),i},r.selectTextRange=function(e,c,s){var i=e.ownerDocument,o=r.defaultView(e),l=e.nodeValue||e.textContent||e.innerText||e.value||"",a=l.length,c=c||0,s=s||a-c,f=c+s,d=null,h=null,y=null,p=null;if(c>f)return;e.focus&&e.focus(),e.setSelectionRange?e.setSelectionRange(c,f):(e.firstChild?(y=_(c),p=_(f),c=c-y.start,f=f-p.start,y=y.node,p=p.node):y=p=e,d=i.createRange(),d.setStart(y,c),d.setEnd(p,f),h=o.getSelection(),h.removeAllRanges(),h.addRange(d));function _(g){var v=e.firstChild,E={start:0,node:null},D=0,S="";if(E.node=v,g>0){for(;v&&D<g;)S=v.nodeValue||v.textContent||v.innerText,D+=S.length,E.node=v,v=v.nextSibling;E.start=D-S.length;}for(v=E.node;v.nodeType!=3;)E.node=v.firstChild,v=E.node;return E}u(_,"getNode");},r.setText=function(e,t){(t==null||t==null)&&(t="");var n=e.nodeName.toLowerCase(),i=n=="input"||n=="textarea"||n=="select";i&&t!=e.value?e.value=t:!i&&e.textContent!=null&&(e.textContent=t);},r.focusable=function(e){return e.tabIndex>-1&&!e.disabled&&e.offsetHeight>0},r.visible=function(e,i){var n=r.styleValue,i=i||e,o=e.offsetHeight>0&&n(e,"visibility")!="hidden";for(i!=e&&(e=e.parentNode);e&&e!=i&&o;)o=n(e,"visibility")!="hidden",e=e.parentNode;return o},r.scrollableRoot=function(){var e,t;return r.getDocument().documentElement.scrollTop>0?r.getDocument().documentElement:r.getDocument().body.scrollTop>0?r.getDocument().body:(e=r.getDocument().body.appendChild(r.getDocument().createElement("div")),r.setStyle(e,"width:1px;height:"+r.getWindowSize().height+1e3),r.getDocument().documentElement.scrollTop=1,r.getDocument().body.scrollTop=1,t=r.getDocument().documentElement.scrollTop>0?r.getDocument().documentElement:r.getDocument().body,t.scrollTop=0,e.parentNode.removeChild(e),t)},r.prototype=function(e,t){e.prototype=Et(t),e.prototype.constructor=e;},r.instantiate=function(e,t){return r.clone(new e,t,!0,!0,!0,!1,!0)},r.defer=function(e){F.Promise?F.Promise.resolve().then(e):setTimeout(e,0);},r.scrollTo=function(e,t,n,i){t=t||r.scrollableRoot(),(!n||n==2)&&(t.scrollTop=0),n>1&&(t.scrollLeft=0);var o=r.getPos(e,t),l={};(!n||n==2)&&(l.scrollTop=o.top),n>1&&(l.scrollLeft=o.left),i?r.animate(t,l,i):r.each(l,function(a,c){t[c]=a;});},r.inViewport=function(e){if(!e)return !1;var t=r.getWindowSize(),n={},i=r.getScrollPosition(),o={top:i.scrollTop,bottom:i.scrollTop+t.height,left:i.scrollLeft,right:i.scrollLeft+t.width},l=r.getPos(e);return n.top=l.top>=o.top&&l.top<=o.bottom,n.bottom=l.bottom>=o.top&&l.bottom<=o.bottom,n.left=l.left>=o.left&&l.left<=o.right,n.right=l.right>=o.left&&l.right<=o.right,n.visible=(n.top||n.bottom)&&(n.left||n.right),n.full=n.top&&n.bottom&&n.left&&n.right,n},r.log=function(e){if(!(!r.getDocument().defaultView.console||!r.getDocument().defaultView.console.log)){var t=new Date;r.getDocument().defaultView.console.log(r.format("{0}:{1}:{2} {3}",r.padLeft(t.getHours(),2),r.padLeft(t.getMinutes(),2),r.padLeft(t.getSeconds(),2),e));}},r.JSON={CasingOption:{NONE:0,CAMELCASE:1,PASCALCASE:2},OptimizerOption:{NONE:0,EXCLUDENULL:1,EXCLUDEFALSE:2,EXCLUDEZERO:4,EXCLUDEEMPTY:8,OPTIMIZED:16},serialize:u(function(e,t,n,i,o,l){var a=null;return r.each(i,function(c){a||(a={}),a[c]=!0;}),r.getDocument().defaultView.JSON.stringify(e,function(c,s){return st.replacer(c,s,t,n,a,o,l)})},"serialize"),deserialize:u(function(e,t,n,i,o,l){var a=null;return r.each(i,function(c){a||(a={}),a[c]=!0;}),r.getDocument().defaultView.JSON.parse(e,function(c,s){return st.replacer(c,s,t,n,a,o,l)})},"deserialize")},F.$=F.$||F.$lib;})(window);
7
+ })(window);
8
+
9
+
10
+ (async function(window){var Ce=Object.defineProperty;var l=(I,C)=>Ce(I,"name",{value:C,configurable:!0});componyx.UI={},globalThis.$UI=componyx.UI,componyx.UI.base={},(function(I){var C={},U=0,G,X,H,v="data-ui-",T=v+"template",$e=v+"contentfrom",Z=v+"settings",Ee=v+"settingsid",Y=v+"cloneable",le=v+"interpolate",z=v+"type",L=v+"action",F=v+"group",V=Object.getPrototypeOf($lib.createEvent("")),ce=Object.create(V),k="componyx.UI.",A="cui-",w="hidden",J=Symbol("detected"),ee={},ue=l(function(e){if(!$UI.version||e.indexOf("?v=")>-1||e.indexOf("&v=")>-1)return e;var t="v="+$UI.version;return e.indexOf("?")>-1?e+"&"+t:e+"?"+t},"_addVersion"),Q=l(function(e){for(var t=I,n=0;n<e.length;++n)t=t[e[n]];return t},"_getObj"),ye=(function(e){var t=Object.create(V);t.fire=function(){if(U===0){if(G){H=setTimeout(this.fire.bind(this));return}return X=!1,V.fire.call(this,null,[])}};function n(){this.eventName=e;}return l(n,"Fn"),n.prototype=t,new n})("onPostRender"),fe=l(function(e){if($lib.isEmpty(e)||typeof e!="string")return e;e=e.trim();const t=e.match(/^([\w$.]+)\((.*)\);?$/);let n=null;t&&(e=t[1],n=t[2].trim());let i=I;for(const r of e.split("."))if(i=i?.[r],!i)return null;if(typeof i!="function"||!t||!n)return i;let s=[];return n&&(s=n.split(",").map(r=>r.trim())),(...r)=>{const o=s.map((c,u)=>{try{return c.length>=2&&c[0]==="'"&&c[c.length-1]==="'"&&(c='"'+c.slice(1,-1).replace(/\\'/g,"'").replace(/"/g,'\\"')+'"'),JSON.parse(c)}catch{return r[u]}});return i(...o)}},"_getMethod"),te=l(function(e){var t=l(function(){this.eventName=e;},"fn");return t.prototype=ce,new t},"_createEvent"),de=l(function(){this.dispose=function(e){for(var t in this)this[t].priorityRemove&&this[t].priorityRemove(e);},this.onPreRender=$base.static.createEvent("onPreRender"),this.onPostRender=$base.static.createEvent("onPostRender"),this.onShow=$base.static.createEvent("onShow"),this.onHide=$base.static.createEvent("onHide"),this.onDestroy=$base.static.createEvent("onDestroy"),this.onPreApplyTemplate=$base.static.createEvent("onPreApplyTemplate"),this.onPostApplyTemplate=$base.static.createEvent("onPostApplyTemplate"),this.onAjaxStart=$base.static.createEvent("onAjaxStart"),this.onAjaxComplete=$base.static.createEvent("onAjaxComplete"),this.onAjaxSuccess=$base.static.createEvent("onAjaxSuccess"),this.onAjaxError=$base.static.createEvent("onAjaxError"),this.onAjaxProgress=$base.static.createEvent("onAjaxProgress"),this.onAjaxUploadProgress=$base.static.createEvent("onAjaxUploadProgress"),this.onAjaxUploadError=$base.static.createEvent("onAjaxUploadError"),this.onAjaxAbort=$base.static.createEvent("onAjaxAbort"),this.onClick=$base.static.createEvent("onClick");},"_baseEvents"),he=l(function(){let e=this;this.beforeElement=null,this.name=null,this.theme=null,this.themeName=null,this.cssClass="",this.cssClassTouch="touch",this.autoTouchConfig=!0,this.cloneInput=!1,this.keepInputId=!0,this.keepInputEventHandlers=!1,this.disableDefaultCssClass=!1,this.renderState=$base.static.RenderState.NONE,this.element=null,this.showing=!1,this.allowPostRender=!0,this.renderWhenConnected=!1,this.ignoreConnectionCallbacks=!1,this.canRender=!0,this.templates=new Map,this.store=[],this.observing=!1,this.attributeObserver=null,this.removalObserver=null,this.__suppressNextChangeEvent=!1,this.__hidden=!0,this.__ajax={},this.__createdTemplates={},this.__focus=!1,this.ajax={url:"",absoluteURL:!0,headers:null,jsonResponseDataWrapper:"d",jsonDeserializer:null,load:new $base.static.AjaxMethod(e),addMethod:l(function(t){if(this[t]==null)this[t]=new $base.static.AjaxMethod(e);else {var n=this[t];this[t]=new $base.static.AjaxMethod(e),$lib.clone(this[t],n,!0,!0,!0);}},"addMethod")};},"_baseProperties"),ve=l(function(e){let t=g(e,Z);return $lib.isEmpty(t)?null:(q(e,Z),t.indexOf("{")!=0&&(t="{"+t+"}"),I.JSON.parse(t))},"_getGroupTagSettings"),ge=l(function(e){if(e[J])return;let t=g(e,Z),n=g(e,Ee),i=n?ee[n]:null;if(!$lib.isEmpty(t)){q(e,Z),t.indexOf("{")!=0&&(t="{"+t+"}");var s=I.JSON.parse(t);i?i=$lib.clone(s,i,!0,!1):i=s;}return i},"_getComponentTagSettings"),g=l((e,t)=>e.getAttribute(t)||e.getAttribute(t.slice(5)),"_getAttribute"),N=l((e,t)=>e.hasAttribute(t)||e.hasAttribute(t.slice(5)),"_hasAttribute"),q=l((e,t)=>{e.removeAttribute(t),e.removeAttribute(t.slice(5));},"_removeAttribute"),_e=l(e=>e.replace(/-([a-z0-9])/gi,(t,n)=>n.toUpperCase()),"_toCamelCase"),Ie=l(e=>{let t=e.startsWith(v)?e.split("-").slice(2).join("-"):e.startsWith(v.slice(5))?e.split("-").slice(1).join("-"):e;return _e(t)},"_getPropertyName"),Re=l(e=>Array.from(e.attributes).filter(t=>{const n=t.name.toLowerCase();return n.startsWith(v)||n.startsWith(v.slice(5))}).map(t=>({name:t.name.toLowerCase(),value:t.value})),"_getDataAttributes"),ne=l(function(e,t){const n=C[e]=C[e]||{},i=Re(t);n.attrs=n.attrs||{};for(const s in n.attrs)i.some(r=>r.name===s)||(ie.call(this,t,s,""),delete n.attrs[s]);i.forEach(s=>{ie.call(this,t,s.name,s.value),n.attrs[s.name]=s.value;});},"_initDataAttributes"),ie=l(function(e,t,n,i=!1){if(n===null||e===null||!(t.startsWith(v)||t.startsWith(v.slice(5))))return;let r=Ie(t),o=this[r],c=!1,u=!1,a={};if(o!==void 0){if(i&&e.removeAttribute(t),r==="settingsid"&&(n=ee[n]),this.observing&&this.attributeObserver&&(c=!0,this.observing=!1),n==="")Array.isArray(o)?a[r]=[]:o&&typeof o=="object"?a[r]={}:typeof o=="string"?a[r]="":a[r]=null;else switch(typeof o){case"boolean":a[r]=n==="true";break;case"number":a[r]=parseFloat(n);break;case"object":try{const d=n.trim();let f,E=!0;try{f=JSON.parse(d);}catch{E=!1;}if(o===null&&!E){a[r]=n;break}if(r==="settings"){const h=E?f:JSON.parse("{"+d+"}");for(let b in h)a[b]=h[b];}else E&&(a[r]=f);}catch(d){throw console.error(`Failed to parse JSON for ${t}:`,d),d}break;default:a[r]=n;break}return Object.keys(a).length>0&&(u=this.cloneProperties(a)),c&&setTimeout(()=>{this.observing=!0;},0),u}},"_setPropertyFromAttribute"),pe=l(function(e){$UI.groupStore[e]||($UI.groupStore[e]={items:[],exclude:[]});},"_createGroup"),me=l(function(e){if(e.__uiDetected)return null;let t=e.tagName.toLowerCase(),n;if(t.startsWith(A.toLowerCase()))n=t.substr(A.length),n=n.split(/[\-]+/).map(i=>i.charAt(0).toUpperCase()+i.slice(1)).join("");else if(N(e,z))n=g(e,z);else return null;return n.split(".").length==1&&(n=k+n),e.__uiDetected=!0,n},"_getComponentType"),re=l(function(e,t,n){t[n]&&(e[n]=function(i,s,r){s[i](r),t[i](r);}.bind(this,n,e[n]));},"_monkeyPatch"),xe=l(function(e){var t=this;if(!t.__createdTemplates[e])return;const n=t.__createdTemplates[e].containers;delete t.__createdTemplates[e],t.element&&n.forEach(i=>{i?.isConnected&&$UI.detect(i);});},"_detect");ce.fire=function(e,t,n){return t==null?t=[]:$lib.isArray(t)||(t=[t]),n!==!1&&t.unshift(e),V.fire.call(this,e,t)},componyx.UI.__sourceElements={},componyx.UI.version=null,componyx.UI.autoDetect=!0,componyx.UI.store={},componyx.UI.elementStore=new Map,componyx.UI.groupStore={},componyx.UI.scriptResources={global:""},componyx.UI.cssResources={global:[]},componyx.UI.resourcesBefore=null,Object.defineProperty(componyx.UI,"busy",{get:l(function(){return X},"get")}),componyx.UI.useCustomElementNames=!1,componyx.UI.themeName=null,componyx.UI.onDemandResourceLoading=!0,Object.defineProperty(componyx.UI,"tagPrefix",{get:l(()=>A,"get"),set:l(e=>A=e,"set")}),componyx.UI.setResourcePath=function(e,t,n,i){var s=$UI.scriptResources,r=$UI.cssResources;e&&(s.global=e),t&&(r.global[0]=t,n>$base.static.ThemeOption.BASE&&(r.global[n]=i));},componyx.UI.getScriptResourcePath=function(e){return ue($UI.scriptResources[e]||$lib.format($UI.scriptResources.global,e))},componyx.UI.getCssResourcePath=function(e,t=0){return ue(($UI.cssResources[e]||[])[t]||$lib.format($UI.cssResources.global[t],e))},componyx.UI.createComponent=function(e,t,n,i){const{loadScript:s=!1,namespace:r=k}=i??{};if(s)return (async()=>(e=await $UI.loadComponentScript(r+e),$UI.createComponent(e,t,n,{...i,loadScript:!1})))();let o=$UI.store[t.id],c=l((u,a)=>{const d=`${A}${u.name.replace(/([A-Z])/g,"-$1").toLowerCase().replace(/^-/,"")}`;return o=document.createElement(d),o.id=a.id,o.init(a),o},"create");if(o&&o.renderState!=$base.static.RenderState.NONE&&o.destroy(),e.prototype instanceof I.HTMLElement)if($lib.isEmpty(t.renderWhenConnected)&&(t.renderWhenConnected=!1),n){if(n.nodeName.toLowerCase().startsWith(A))o=n,t&&o.cloneProperties(t);else {let u=[];$lib.each($lib.children(n),function(a){N(a,T)&&u.push(a);}),o=c(e,t),$lib.each(u,function(a){o.collectTemplate(a);}),n.replaceWith(o);}t?.containerElement&&t.containerElement!==o.parentElement&&t.containerElement.insertBefore(o,t.beforeElement);}else o=c(e,t),t?.containerElement&&t.containerElement.insertBefore(o,t.beforeElement);else o=new e(t.id,t);return o},componyx.UI.loadComponentScript=async function(e){const t=e.split("."),n=t[t.length-1],i=Q(t);if(i)return i;let s=$UI.getScriptResourcePath(n);s.startsWith("/")||(s="/"+s),U++,await import(s);const r=`${n.charAt(0).toLowerCase()+n.slice(1)}_modules`,o=Q(t.slice(0,-1).concat([r]));return o&&await o.loaded,U--,Q(t)},componyx.UI.detect=async function(e,t){let n=new Map,i=[],s=[],r=[],o=[],c=l(function(a){var d=$UI.elementStore.get(a);d&&(d.inputId||d.hiddenInputId)&&t&&o.push(d);},"addToInputList");$lib.isEmpty(t)&&(t=!0),$lib(function(a){N(a,F)&&!$lib.isEmpty(a.id)&&(i.push(a),pe(a.id),q(a,F));},e,A+"group"),$lib.each(i,function(a){var d=(g(a,L)||"").toLowerCase(),f=(g(a,F)||"").replace(/\s/,"").split(","),E=ve(a),h,b;$lib.isEmpty(d)&&N(a,L)&&(d="none"),$lib.isEmpty(E)||(h=E.theme,b=E.themeName),$lib(function(p,m){N(p,F)&&m();let y;if(n.set(p,""),y=me(p)){var P=p.id||y.toLowerCase()+"_"+$lib.guid(),x=$lib.indexOf(f,p.id)>-1;p.id=P,x?r.push([p,y]):(r.push([p,y,d,h,b]),c(p)),$UI.addToGroup(a.id,p.id),((g(p,L)||"").toLowerCase()==="clone"||x)&&$UI.groupStore[a.id].exclude.push(P);}},a),$lib.unsurround(a);}),$lib(function(a){var d;N(a,T)&&g(a,Y)!="false"&&$lib(function(f){n.set(f,"");},a),!n.has(a)&&(d=me(a))&&(r.push([a,d]),c(a));},e),$lib.each(o,function(a){a.getSourceElement(a.inputId||a.hiddenInputId);});for(const a of r)$lib.contains(e||document,a[0])&&await u(...a);return $lib.each(s,function(a){$lib.remove(a);}),r;async function u(a,d,f,E,h){let b,p,m=(g(a,L)||"").toLowerCase(),y=a.id||$lib.guid();if(a.id=y,h=h||$UI.themeName,m!="clone"&&(m=m||f),$lib.isEmpty(m)&&!N(a,L)&&(m="show"),b=$UI.store[y],b)if(p=b.templates,$lib.isElement(b)){if(b.renderWhenConnected&&b.renderState){delete a.__uiDetected;return}ne.bind(b)(y,b);}else {if(b.element===a&&!t){delete a.__uiDetected;return}if(m!="clone"&&b.element===a){var P=a.parentElement,x=a.nextSibling;b.destroy(),P.insertBefore(a,x);}else b.element===a&&b.destroy();}let B=d.split("."),O=Q(B);if(G=!0,O===void 0&&(a[J]=!0,O=await $UI.loadComponentScript(d),$UI.store[y]&&$lib.isElement($UI.store[y])&&$UI.store[y].renderWhenConnected)){G=!1,delete a[J],delete a.__uiDetected;return}await $UI.onPreLoadSettings.fire(a),G=!1,q(a,z),a.__uiType=d,delete a[J],delete a.__uiDetected;const j=ge(a)||{};p&&(j.templates=p),$lib.isEmpty(E)||(j.theme=E),$lib.isEmpty(h)||(j.themeName=h),j.id=y,b=$UI.createComponent(O,j,a),$lib.isElement(b)||ne.bind(b)(y,$lib("#"+y)),!(O.prototype instanceof I.HTMLElement&&b.renderWhenConnected)&&(m=="clone"?s.push(a):m=="render"?b.render():m=="show"&&b.show());}},componyx.UI.addSettings=function(e,t){ee[e]=t;},componyx.UI.addToGroup=function(e,t){pe(e),$UI.groupStore[e].items.push(t);},componyx.UI.renderGroup=function(e,t,n,i,s){var r=$UI.groupStore[e];n=n||[],$lib.each(r.items,function(o){var c=n.slice().concat(r.exclude);if($UI.store[o]&&(!c.length||$lib.indexOf(c,o)==-1)){var u=$UI.store[o];u.theme=$lib.isEmpty(i)?u.theme:i,u.themeName=$lib.isEmpty(s)?u.themeName:s,t==!1?u.renderState||u.render():u.show();}});},componyx.UI.destroyGroup=function(e,t){$lib.each($UI.groupStore[e].items,function(n){$UI.store[n]&&$UI.store[n].destroy();}),t&&$UI.removeGroup(e);},componyx.UI.removeGroup=function(e){delete $UI.groupStore[e];},componyx.UI.destroy=function(e){var t=[];$UI.elementStore.forEach(function(n,i){$lib.contains(e,i)&&t.push(n);}),$.each(t,function(n){n.destroy.bind(n)();});},componyx.UI.onPreLoadSettings=te("onPreLoadSettings"),componyx.UI.onPreRender=te("onPreRender"),componyx.UI.onPostRender=ye,componyx.UI.base.Component=function(e,t,n){var i=this,s=$lib.isElement(t);if(this.id=e,this.containerElement=s?t:t?t.containerElement:null,this.style="",this.tabIndex=null,this.events=this.events||{},he.apply(this),de.apply(this.events),t&&!s&&(delete t.containerElement,this.cloneProperties(t)),n&&(n.constructor.toString().indexOf("Array")==-1&&(n=[n]),$lib.each(n,function(r){typeof r=="function"&&(r=new r),$lib.clone({target:i,source:r,deep:!0,overwrite:!1,extend:!0,excludeEmpty:!1,excludeFunctions:!1});})),i.id){$UI.store[i.id]=i;let r=$lib("#"+i.id);s=$lib.isElement(i),!r&&i.containerElement&&i.containerElement.isConnected&&(s?r=i.containerElement.insertBefore(i,i.beforeElement):r=i.containerElement.insertBefore(document.createElement("div"),i.beforeElement)),r&&(r.id=i.id,r.style.display="none",i.element=r,$UI.elementStore.set(r,i));}},I.$base=componyx.UI.base,componyx.UI.base.static={ThemeOption:{NONE:-1,BASE:0,DEFAULT:1,getName:l(function(e){return $base.static.getKeyByValue(this,e).toLowerCase()},"getName")},RenderState:{NONE:0,RENDERING:1,RENDERED:2},AnimationEasingOption:{linear:0,easeInQuad:1,easeOutQuad:2,easeInOutQuad:3,easeInCubic:4,easeOutCubic:5,easeInOutCubic:6,easeInQuart:7,easeOutQuart:8,easeInOutQuart:9,easeInQuint:10,easeOutQuint:11,easeInOutQuint:12,easeInSine:13,easeOutSine:14,easeInOutSine:15,easeInExpo:16,easeOutExpo:17,easeInOutExpo:18,easeInCirc:19,easeOutCirc:20,easeInOutCirc:21,easeInElastic:22,easeOutElastic:23,easeInOutElastic:24,easeInBack:25,easeOutBack:26,easeInOutBack:27,easeInBounce:28,easeOutBounce:29,easeInOutBounce:30,getName:l(function(e){return $base.static.getKeyByValue(this,e)},"getName")},getMethod:l(function(e){return fe(e)},"getMethod"),getKeyByValue:l(function(e,t){for(var n in e)if(e[n]==t)return n.toString();return null},"getKeyByValue"),initDragSettings:l(function(e,t){return $lib.each(e.dropZones,function(n,i){e.dropZones[i]=typeof n=="string"?$lib("#"+n):n;}),e.dragHandle=typeof e.dragHandle=="string"?$lib("#"+e.dragHandle):e.dragHandle,e.dragGhost=typeof e.dragGhost=="string"?$lib("#"+e.dragGhost):e.dragGhost,e.boundaryZone=typeof e.boundaryZone=="string"?$lib("#"+e.boundaryZone):e.boundaryZone,t&&$lib.clone(e,t,!1,2,!0),$lib.each(e,function(n,i){n&&typeof n=="function"&&re(e,t,i);}),e},"initDragSettings"),initResizeSettings:l(function(e,t){return $lib.each(e.resizeHandles,function(n,i){e.resizeHandles[i]=typeof n=="string"?$lib("#"+n):n;}),e.resizeGhost=typeof e.resizeGhost=="string"?$lib("#"+e.resizeGhost):e.resizeGhost,e.boundaryZone=typeof e.boundaryZone=="string"?$lib("#"+e.boundaryZone):e.boundaryZone,t&&$lib.clone(e,t,!1,2,!0),$lib.each(e,function(n,i){n&&typeof n=="function"&&re(e,t,i);}),e},"initResizeSettings"),initSelectSettings:l(function(e,t){return $lib.each(e.include,function(n,i){e.include[i]=typeof n=="string"?$lib("#"+n):n;}),$lib.each(e.exclude,function(n,i){e.exclude[i]=typeof n=="string"?$lib("#"+n):n;}),e.dragZone=typeof e.dragZone=="string"?$lib("#"+e.dragZone):e.dragZone,e.selectZone=typeof e.selectZone=="string"?$lib("#"+e.selectZone):e.selectZone,t&&$lib.clone(e,t,!1,2,!0),$lib.each(e,function(n,i){n&&typeof n=="function"&&re(e,t,i);}),e},"initSelectSettings"),AjaxMethod:l(function(e){this.url="",this.absoluteURL=!0,this.jsonResponseDataWrapper=null,this.jsonDeserializer=null,this.endPointMethod="",this.customParameters="",this.headers=null,this.isDefined=function(){return !$lib.isEmpty(e.ajax.url)||!$lib.isEmpty(this.url)},this.invoke=function(t,n,i,s,r,o,c,u,a){let d=this.url||e.ajax.url,f=this.absoluteURL||e.ajax.absoluteURL,E=this.headers||e.ajax.headers,h=this.customParameters,b="";return f||(d=d.startsWith("/")?`${location.origin}${d}`:`${location.origin}/${d}`),this.endPointMethod&&(d+="/"+this.endPointMethod),!(t instanceof FormData)&&(typeof t!="string"||$lib.startsWith(t,"{"))?(typeof t!="string"&&(t=I.JSON.stringify(t)),typeof h!="string"&&(h=I.JSON.stringify(h)),h&&h.match(/^\{/)&&(h=h.substring(1,h.length-1)),t&&t.match(/^\{/)&&(t=t.substring(1,t.length-1)),t&&h?t+=", "+h:h&&(t=h),t&&(t="{"+t+"}"),this.jsonResponseDataWrapper!=null?b=this.jsonResponseDataWrapper:e.ajax.jsonResponseDataWrapper!=null&&(b=e.ajax.jsonResponseDataWrapper)):(h&&(h.match(/^\?/)||h.match(/^\&/))&&(h=h.substring(1)),t&&h?t+="&"+h:h&&(t=h)),$lib.xhr({url:d,data:t,headers:E,jsonResponseDataWrapper:b,jsonDeserializer:this.jsonDeserializer||e.ajax.jsonDeserializer,onStart:n,onComplete:i,onSuccess:s,onError:r,onProgress:o,onUploadProgress:c,onUploadError:u,onAbort:a})};},"AjaxMethod"),ItemList:l(function(){var e=this;this.get=function(s){return e[t(s)]},this.getByValue=function(s){return e[n(s)]},this.getByText=function(s,r){return e[i(s,r)]},this.previous=function(s){for(var r=t(s),o=e[--r],c=o;o&&o.disabled;)o=e[--r],o===c&&(o=null);return o},this.next=function(s){for(var r=t(s),o=e[++r],c=o;o&&o.disabled;)o=e[++r],o===c&&(o=null);return o},this.find=function(s,r){var o=e.filter(s);return r&&o[t(r,o)+1]||o[0]},this.filter=function(s){var r=[];return $lib.each(e,function(o){$lib.startsWith(o.text,s,!0)&&r.push(o);}),r};function t(s,r){return $lib.indexOf(r||e,function(o){return o.id===s})}l(t,"getIndex");function n(s,r){return $lib.indexOf(r||e,function(o){return o.value===s})}l(n,"getIndexByValue");function i(s,r,o){return $lib.indexOf(o||e,function(c){return r?c.text.toLowerCase()===s.toLowerCase():c.text===s})}l(i,"getIndexByText");},"ItemList"),Item:l(function(e){this.attributes={},this.id="",this.templateId="",this.cssClass="",this.text="",this.value="",this.title="",this.disabled=!1,this.readOnly=!1,this.selected=!1,$lib.clone(this,e,!0,!0,!0,!0,!1);},"Item"),createEvent:l(function(e){return te(e)},"createEvent")},componyx.UI.base.WebComponent=class extends HTMLElement{static{l(this,"WebComponent");}constructor(){super(),this.events=this.events||{},he.apply(this),de.apply(this.events);}init(t){C[this.id]={props:t};}async connectedCallback(){if(this.ignoreConnectionCallbacks)return;let t=this.id;if($lib.isEmpty(t)&&(t=Object.getPrototypeOf(this).constructor.name.toLowerCase()+$lib.guid(),this.setAttribute("id",t)),!$UI.store[t]||$UI.store[t]!==this){const n=C[t]=C[t]||{},i=n.props;$lib.isEmpty(i)||this.cloneProperties(i),ne.bind(this)(t,this);}$UI.store[t]=this,this.renderWhenConnected&&this.renderState==$base.static.RenderState.NONE&&(await $UI.onPreLoadSettings.fire(this),this.renderState==$base.static.RenderState.NONE&&this.show());}disconnectedCallback(){!this.ignoreConnectionCallbacks&&this.element&&this.destroy();}render(t,n,i){this.renderState==$base.static.RenderState.RENDERING||this.canRender===!1||(this.destroy(!0,!1),$UI.store[this.id]=this,this.element=this,this.initRenderPhase(t,n,i));}destroy(t,n=!0){$base.methods.destroy.call(this,t,n);}getCssClass(t,n){return $base.methods.getCssClass.call(this,t,n)}cloneProperties(t){$base.methods.cloneProperties.call(this,t);}postRender(){$base.methods.postRender.call(this);}},componyx.UI.base.methods={mutationCallback(e,t){let n=!1;if(this.observing){clearTimeout(this.mutationRenderTimerId);for(const i of e){let s=i.attributeName.toLowerCase(),r=i.target.getAttribute(i.attributeName);if(ie.bind(this)(this.element,s,r)){n=!0;const o=C[this.id];o?.attrs&&(o.attrs[s]=r);}}n&&(this.mutationRenderTimerId=setTimeout(()=>{this.render();},0));}},ajaxCall:l(function(e,t,n,i){n=n||{};let s=this,r=$lib.guid(),o=l(()=>{s.__ajax&&s.__ajax[e]&&s.__ajax[e][r]&&delete s.__ajax[e][r];},"clear"),c=l((m,y)=>{n[`on${m}`]&&n[`on${m}`](y),s.events[`onAjax${m}`].fire(s,[y].concat(i||[]));},"invoke"),u=l(m=>{c("Start",m);},"begin"),a=l(m=>{o(),c("Complete",m);},"end"),d=l(m=>{c("Success",m);},"success"),f=l(m=>{c("Error",m);},"error"),E=l(m=>{c("Progress",m);},"progress"),h=l(m=>{c("UploadProgress",m);},"uploadProgress"),b=l(m=>{c("UploadError",m);},"uploadError"),p=l(m=>{o(),c("Abort",m);},"abort");return s.__ajax[e]||(s.__ajax[e]={}),s.__ajax[e][r]=s.ajax[e].invoke(t,u,a,d,f,E,h,b,p),s.__ajax[e][r]},"ajaxCall"),getCssClass:l(function(e,t){const n=Object.keys(e).find(s=>e[s]===t);if(!n)return t;const i=n.split("_").map(s=>s.charAt(0).toUpperCase()+s.slice(1).toLowerCase()).join("");return this[`cssClass${i}`]||t},"getCssClass"),suppressNextChangeEvent:l(function(e){this.__suppressNextChangeEvent=!0;try{e();}finally{this.__suppressNextChangeEvent=!1;}},"suppressNextChangeEvent"),toggle:l(function(){this.showing?this.hide():this.show();},"toggle"),show:l(function(e){var t=this;t.showing=!0,t.renderState==$base.static.RenderState.NONE?t.render():t.renderState==$base.static.RenderState.RENDERED&&t.__hidden?(t.element.classList.remove(w),t.__hidden=!1,e!=!1&&t.events.onShow.fire(t)):t.containerElement=t.element.parentNode;},"show"),hide:l(function(e){var t=this;if(t.showing=!1,t.renderState==$base.static.RenderState.RENDERED&&!t.__hidden){var n,i,s=$lib("focus",t.element);for(i=0;i<s.length;++i)n=s[i],n.blur&&n.blur(),$lib.removeClass(n,"focus");t.element.classList.add(w),t.__hidden=!0,e!=!1&&t.events.onHide.fire(t);}},"hide"),destroy:l(function(e,t=!0){var n=this,i=n.element,s,r;if(n.renderState!=$base.static.RenderState.NONE){if(n.events.onDestroy.fire(n),n.renderState==$base.static.RenderState.RENDERED){for(s in n.__ajax)for(r in n.__ajax[s])n.__ajax[s][r].abort();$lib.each(n.store,function(c){$UI.store[c]&&$UI.store[c].destroy();});}else n.renderState==$base.static.RenderState.RENDERING&&U--;if(n.events.dispose(e?2:null),i&&($lib.isEmpty(i.id)||i.id===n.id)){var o=n.inputId||n.hiddenInputId;$lib.isEmpty(o)||this.getSourceElement(o),t?(n.element=null,(!this.showing&&i.parentNode||this.showing&&i.parentNode)&&$lib.remove(i),delete C[n.id]):i.innerHTML="";}}$lib.each(n.__createdTemplates,function(c){clearTimeout(c.timerId);}),n.renderState=$base.static.RenderState.NONE,n.element=null,n.__createdTemplates={},n.__ajax={},n.store=[],delete $UI.store[n.id],$UI.elementStore.delete(i),this.attributeObserver&&this.attributeObserver.disconnect(),this.removalObserver&&this.removalObserver.disconnect();},"destroy"),render:l(function(e,t,n,i,s){this.renderState==$base.static.RenderState.RENDERING||this.canRender===!1||(this.createElement(t,i,s),this.initRenderPhase(e,t,n));},"render"),initRenderPhase:l(function(e,t,n){const i=this;if(clearTimeout(H),U++,X=!0,i.renderState=$base.static.RenderState.RENDERING,i.hasTheme=n,$UI.elementStore.delete(i.element),$UI.elementStore.set(i.element,i),this.configureElement(t),this.setupMutationObserver(),this.invokePreRender()===!0){U--;return}this.registerResources(e);},"initRenderPhase"),createElement:l(function(e,t,n){n||$UI.useCustomElementNames?t=n||A+e:t=t||"div";let i=this,s=document.createElement(t),r=i.containerElement,o,u=i.element?.isConnected?i.element:$lib("#"+i.id);u&&(i.element=u,i.collectTemplates()),i.renderState==$base.static.RenderState.RENDERED&&(i.templates.forEach(function(a){a.content&&a.content.forEach(function(d){d.nodeType===Node.ELEMENT_NODE&&d.__uiType&&d.setAttribute(z,d.__uiType);});}),u&&(o=u.nextSibling,r=u.parentNode),i.destroy(!0),o?r.insertBefore(u,o):u&&r.appendChild(u)),$UI.store[i.id]=i,u?(u.isConnected&&u.parentNode.replaceChild(s,u),i.templates.size&&i.templates.forEach(function(a){a.content||s.appendChild(a.element);}),r&&r!=s.parentNode&&r.appendChild(s),$lib.each(u.attributes,a=>{s.setAttribute(a.name,a.value);})):(r=r||document.body,r.appendChild(s)),i.element=s;},"createElement"),configureElement:l(function(e){let t=this,n=this.element,i=this.beforeElement,s=$base.static.ThemeOption.DEFAULT;i&&i!=n.nextElementSibling&&i.parentNode&&i.parentNode.insertBefore(n,i),t.containerElement=n.parentNode,n.id=t.id,n.className=this.disableDefaultCssClass?t.cssClass??"":`${e} ${t.cssClass||""}`.trim(),n.style.display="",typeof t.style=="string"&&$lib.setStyle(n,t.style),n.classList.add(w),t.__hidden=!0,t.theme=t.theme!=null?t.theme:s||0,$.addClass(n,t.getThemeCSS()),t.cssClassTouch&&$lib.touch&&$lib.addClass(n,t.cssClassTouch),$lib.isEmpty(t.title)||(n.title=t.title),$lib.on(n,"click",function(r){t.events.onClick.fire(t,r);});},"configureElement"),setupMutationObserver:l(function(){const e=this,t=this.element.ownerDocument;this.attributeObserver&&this.attributeObserver.disconnect(),this.removalObserver&&this.removalObserver.disconnect(),this.observing&&(this.attributeObserver=new MutationObserver(this.mutationCallback.bind(this)),this.attributeObserver.observe(this.element,{attributes:!0}),this.removalObserver=new MutationObserver(n=>{for(const i of n)for(const s of i.removedNodes)if(s===e.element&&!(e instanceof t.defaultView.HTMLElement)){e.destroy();return}}),this.removalObserver.observe(this.element.parentElement,{childList:!0}));},"setupMutationObserver"),invokePreRender:l(function(){let e=this;$UI.onPreRender.fire(e);const t={cancel:!1};return e.events.onPreRender.fire(e,t),t.cancel},"invokePreRender"),registerResources:l(function(e,t){const n=this,i=n.theme,s=e?e.call(n):[],r=s[0],o=$UI.onDemandResourceLoading?(s[1]||[]).filter(f=>!$UI[f]):[],c=[];let u=0,a=0;const d=l(function(){if(!(u<o.length||a<c.length)&&n.renderState==$base.static.RenderState.RENDERING){if(n.element&&n.element!==$UI.store[n.id]?.element){--U;return}t?t():n.render&&n.render();}},"handler");if($UI.onDemandResourceLoading&&i>$base.static.ThemeOption.NONE){let f=$UI.getCssResourcePath(r);if(f&&c.push({src:f,id:k+r+".css"}),i!=$base.static.ThemeOption.BASE&&n.hasTheme!==!1){const E=$base.static.ThemeOption.getName(i);f=$UI.getCssResourcePath(r,i),f&&c.push({src:f,id:$lib.format("{0}{1}.{2}.css",k,r,E)});}}if(!o.length&&!c.length){d();return}$lib.each(o,function(f){const E=$UI.getScriptResourcePath(f);$lib.addScriptSource(E,k+f+".js",{onComplete:l(function(){u++,d();},"onComplete")},null,null,$UI.resourcesBefore);}),$lib.each(c,function(f){$lib.addCssSource(f.src,f.id,{onComplete:l(function(){a++,d();},"onComplete")},$UI.resourcesBefore);});},"registerResources"),getThemeCSS:l(function(){var e=[],t=this.theme,n=this.themeName;return t>$base.static.ThemeOption.NONE&&(e.push("theme"),t>=$base.static.ThemeOption.DEFAULT&&e.push("theme-"+$base.static.ThemeOption.getName(t))),n&&e.push(n),e.length?e.join(" "):""},"getThemeCSS"),move:l(function(e,t){var n=this.element;e.insertBefore(n,t),this.containerElement=e;},"move"),renderChildren:l(function(){for(var e=-1,t=!0,n;++e<this.store.length;)(n=$UI.store[this.store[e]])?(n.renderState!=$base.static.RenderState.RENDERED&&(t=!1),n.renderState||n.render()):t=!1;t&&this.postRender();},"renderChildren"),isReady:l(function(){for(var e=-1,t=this.allowPostRender,n=$base.static.RenderState.RENDERED;t&&++e<this.store.length;)t=$UI.store[this.store[e]]&&$UI.store[this.store[e]].renderState==n;t&&this.postRender();},"isReady"),postRender:l(function(){var e=this;if(e.renderState==$base.static.RenderState.RENDERING){if(e.renderState=$base.static.RenderState.RENDERED,e.allowPostRender=!0,e.showing&&e.show(),U--,e.events.onPostRender.fire(e),e.renderState!=$base.static.RenderState.RENDERED)return !1;if(U==0){clearTimeout(H);var t=l(function(n){n.renderState==$base.static.RenderState.RENDERED&&$UI.onPostRender.fire();},"ready");H=setTimeout(t.bind(this,e),0);}return !0}},"postRender"),addTemplate:l(function(e,t,n,i){var s,r=this,o=this.templates;if($lib.isEmpty(t)){o.has(e)?o.delete(e):($lib(function(u){if(N(u,T)&&g(u,T)===e)return s=u,!1},r.element,"div"),$lib.remove(s));return}if(s=document.createElement("div"),s.setAttribute(T,e),s.setAttribute(Y,n??!0),s.setAttribute(le,i??!0),$lib.isArray(t))for(var c=0;c<t.length;++c)s.appendChild(t[c]);else typeof t=="string"?s.innerHTML=t:s.appendChild(t);r.collectTemplate(s);},"addTemplate"),hasTemplate:l(function(e){var t=this,n=this.templates;return n.has(e)||t.collectTemplates(),n.has(e)},"hasTemplate"),collectTemplates:l(function(){var e=this,t=[],n=$lib.children(e.element);return $lib.each(n,function(i){N(i,T)&&t.push(i);}),$lib.each(t,function(i){e.collectTemplate(i);}),t},"collectTemplates"),collectTemplate:l(function(e){if(!e)return null;var t=g(e,T),n=g(e,Y),i=g(e,le);return $lib.isEmpty(t)&&(t=$lib.guid(),e.setAttribute(T,t)),this.templates.set(t,{element:e,content:null,cloneable:!!($lib.isEmpty(n)||n==="true"),interpolate:!!($lib.isEmpty(i)||i==="true")}),e.classList.add(w),e},"collectTemplate"),getTemplateContent:l(function(e){let t=this,n,i,s=this.templates,r=new Set(["template","contentfrom","cloneable","interpolate"]),o=l(a=>Array.from(a.attributes).some(d=>{let f=d.name.toLowerCase();if(f==="class"||f==="style")return !1;if(f.startsWith("data-ui-")&&(f=f.slice(5)),f.startsWith("ui-")){let E=f.slice(3);return !r.has(E)}return !0}),"hasMeaningfulAttributes"),c=!1;if(s.has(e)||t.collectTemplates(),s.has(e)){if(i=s.get(e),!i.content){n=i.element;var u=g(n,$e);u?u=$lib("#"+u):c=n.nodeName!=="TEMPLATE"&&o(n),c?i.content=[n]:i.content=$lib.extract(u||n,!0),u&&$lib.remove(u),$lib.remove(n);}return i.content}else return null},"getTemplateContent"),applyTemplate:l(function(e,t,n,i){let s=this.getTemplateContent(t);if(!s)return;let r=this,o=r.templates,c=$lib.isArray(n),u=o.get(t),a=u.cloneable,d=u.interpolate,f=u.element,E=f.nodeName=="TEMPLATE",h=s.length==1&&s[0]===f;if(h?(a&&(f=f.cloneNode(!0)),f.classList.contains(w)&&f.classList.remove(w)):(f.innerHTML="",$lib.each(s,function(p){p=a?p.cloneNode(!0):p,E?f.content.appendChild(p):f.appendChild(p);})),n=n||{},r.events.onPreApplyTemplate.fire(r,{id:t,template:f,element:e,values:n,matchHandler:i}),d&&!$lib.isEmpty(n)&&(f=b(f)),e.nodeName.toLowerCase()=="input")e.value=f.textContent;else {if(h)e.appendChild(f);else for(s=E?f.content:f;s.firstChild;)e.appendChild(s.firstChild);let p=r.__createdTemplates[t];p||(p=r.__createdTemplates[t]={containers:[],timerId:null}),e&&!p.containers.includes(e)&&p.containers.push(e),clearTimeout(p.timerId),p.timerId=setTimeout(xe.bind(r,t));}r.events.onPostApplyTemplate.fire(r,{id:t,template:f,element:e,values:n,matchHandler:i});function b(p){let m=/\{+([^\{\}\s]+)\}+/gm,y=[],P=[],x,B={},O=p.ownerDocument.createTreeWalker(p,NodeFilter.SHOW_TEXT,null,!1);for(;x=O.nextNode();)y.push(x);for(O=p.ownerDocument.createTreeWalker(p,NodeFilter.SHOW_ELEMENT,null,!1);x=O.nextNode();)for(let _ of x.attributes)m.test(_.value)&&P.push({element:x,name:_.name,value:_.value});$lib.each(y,function(_){if(_.nodeValue.match(m)){let S=p.ownerDocument.createElement("div");S.innerHTML=_.nodeValue.replace(m,j);for(let W in B){const M=S.querySelector("#"+W);M&&M.replaceWith(B[W]);}_.parentElement.replaceChild(S,_),$.unsurround(S);}}),$lib.each(P,function(_){_.element.setAttribute(_.name,_.value.replace(m,j));});function j(_){var S=_.toString(),W=(S.match(/\{/g)||[]).length,M=(S.match(/\}/g)||[]).length;return W>=1&&W%2!=0&&M>=1&&M%2!=0&&(S=S.replace(/\{([^\{\}\s]+)\}/,Se)),S.replace("{{","{").replace("}}","}");function Se(se){var R="",oe=!1,ae=0,K=se.substring(1,se.length-1);if(n&&c)for(;ae<n.length&&!oe;)R=be(n[ae]),ae++;else n&&(R=be(n));if(i&&(R=i(se,R)),typeof R=="string"||typeof R=="number")return R;if(R&&R instanceof $lib.defaultView(p).Node){let D=$lib.guid();return B[D]=R,`<span id="${D}"></span>`}return R;function be(D){return oe=!0,D[K]!=null?D[K]:D.attributes&&D.attributes[K]?D.attributes[K]:(oe=!1,"")}}}return l(j,"replace"),p}l(b,"parseTemplate");},"applyTemplate"),postBack:l(function(e,t){var n=this,i=null,r=null,r=null;if(t?i=$lib("#"+t):(r=$lib(null,n.element,"form",!0,!0),r==null?i=document.getElementsByTagName("form")[0]:i=r),!i)return !1;n.setPostBackArgs(i,e),i.submit();},"postBack"),setPostBackArgs:l(function(e,t){var n=this,i;e.__EVENTTARGET||(i=document.createElement("input"),i.type="hidden",i.id=i.name="__EVENTTARGET",e.appendChild(i)),e.__EVENTARGUMENT||(i=document.createElement("input"),i.type="hidden",i.id=i.name="__EVENTARGUMENT",e.appendChild(i)),e.__EVENTTARGET.value=n.name,e.__EVENTARGUMENT.value=t;},"setPostBackArgs"),clone:l(function(e,t,n,i,s){let r=this,o=r.id,c=r.containerElement;if(r.theme=t.theme,r.themeName=t.themeName,r.renderState=$base.static.RenderState.NONE,t.store.push(o),!e)return;s||(s={}),e.collectTemplates();let u=$lib.clone({element:"",events:"",templates:"",store:"",attributeObserver:"",removalObserver:"",observing:""},s);$lib.clone(r,e,!0,!0,!0,!0,!0,null,u),i!=!1&&r.cloneEvents(e.events),n!=!1&&(r.templates=new Map(e.templates)),r.id=o,r.containerElement=c,r.theme=t.theme,r.themeName=t.themeName,r.renderState=$base.static.RenderState.NONE;},"clone"),cloneProperties:l(function(e){const t=this;let n=!1;e.events&&(t.cloneEvents(e.events),n=!0),delete e.events;for(const i in e){const s=e[i],r=t[i];if(s===null||typeof s!="object")t[i]=s;else if(Array.isArray(s)||$lib.isPlainObject(s,!0)){const o={changed:!1};t[i]=$lib.clone({target:Array.isArray(s)?t[i]||[]:t[i]||{},source:s,deep:!0,overwrite:!0,extend:!0,excludeEmpty:2,excludeFunctions:!1,report:o}),!n&&o.changed&&(n=!0);continue}else t[i]=s;!n&&t[i]!==r&&(n=!0);}return n},"cloneProperties"),cloneEvents:l(function(e){let t=this.events,i,s=l(function(r,o,c){r&&r.forEach(function(u,a){$lib.each(u,function(d){c?o.priorityAdd(d.handler,d.args,d.fireOnce):o.add(d.handler,d.args,d.fireOnce);});});},"copyHandlers");for(let r in e)t[r]||(t[r]=$base.static.createEvent(r)),t[r].add&&(i=e[r],typeof i=="string"?(i=fe(i),i&&(i.__guid=e[r],t[r].has(i)||t[r].add(i))):typeof i=="function"?t[r].add(i):i&&i.isBound&&i.isBound()&&(s(i.priorityHandlers(),t[r],!0),s(i.handlers(),t[r])));},"cloneEvents"),onFocus:l(function(e){e=e||this,!e.__focus&&(e.__focus=!0,e.events.onFocus.fire(e));},"onFocus"),onBlur:l(function(e){e=e||this,!($lib.event&&$lib.event.relatedTarget&&e.element.contains($lib.event.relatedTarget))&&(e.__focus=!1,e.events.onBlur.fire(e));},"onBlur"),delegateFocusEvents:l(function(e){this.events.onFocus.priorityAdd(e.onFocus,e),this.events.onBlur.priorityAdd(e.onBlur,e);},"delegateFocusEvents"),createSyncedInput:l(function(e,t,n=!0){let i=document.createElement("input"),s=this;e&&(i=this.getSourceElement(e),i.disabled&&(this.disabled=!0),i.readOnly&&(this.readOnly=!0)),n&&(i.type="hidden"),i.__value=i.value,$lib.isEmpty(this.name)||i.setAttribute("name",this.name);const r=Object.getOwnPropertyDescriptor(HTMLInputElement.prototype,"value");return Object.defineProperty(i,"value",{get(){return r.get.call(this)},set(o){this.__value!==o&&(r.set.call(this,o),this.__value=o,t&&t.apply(i,[s]));},configurable:!0}),i.__setValue=function(o){o!=this.__value&&(this.__value=o,r.set.call(this,o),!s?.__suppressNextChangeEvent&&$lib.fireEvent(this,"change"));}.bind(i),this.element.appendChild(i)},"createSyncedInput"),getSourceElement:l(function(e){var t=$lib("#"+e);if(t){this.keepInputId||t.removeAttribute("id"),$UI.__sourceElements[e]=t;let i=t.onchange;t.onchange=null,t.remove(),t.onchange=i;}else t=$UI.__sourceElements[e];if(this.cloneInput){var n=t.cloneNode(!0);return this.keepInputEventHandlers?$lib.copyEvents(n,t):n}else return t},"getSourceElement")},$lib.ready(function(){$UI.autoDetect!==!1&&$UI.detect.bind(I,null)();});})(window);
11
+ })(window);
12
+
13
+
14
+ (function(s,c){var e=s+(c?"{0}.min":"{0}");componyx.UI.setResourcePath(e+".js",e+".css",1,s+"{0}.Themes.Default.css");})("/src?d=",!0);
15
+
16
+
17
+ (async function(window){var L=Object.defineProperty;var i=(s,n)=>L(s,"name",{value:n,configurable:!0});(async function(s){let n={placeHolderId:"placeholderid",css:"css",js:"js",onPostDetect:"onPostDetect",onMatchMediaChange:"onMatchMediaChange",onActivate:"onActivate",onDeactivate:"onDeactivate",onLoadSrc:"onLoadSrc",onLoadComplete:"onLoadComplete"},d={},f={},h;$lib.each(n,function(a,e){n[e]="data-rsp-template-"+e.toLowerCase();}),n.template="data-rsp-template";const c=componyx.responsiveTemplates={autoDetect:!0,launchTemplateId:null,fallbackTemplateId:null,activeTemplate:null,onPostDetect:$lib.createEvent("onPostDetect"),onMatchMediaChange:$lib.createEvent("onMatchMediaChange"),onActivate:$lib.createEvent("onActivate"),onDeactivate:$lib.createEvent("onDeactivate"),onLoadSrc:$lib.createEvent("onLoadSrc"),onLoadComplete:$lib.createEvent("onLoadComplete"),detect:i(async function(){let a=$lib(function(t){return t.hasAttribute(n.template)&&t.id},document.body,"div section"),e;d={},f={},h=null,$lib.each(a,function(t){c.add(t.id,t.getAttribute(n.template),t.getAttribute(n.css),t.getAttribute(n.js),{onMatchMediaChange:b(t.getAttribute(n.onMatchMediaChange)),onActivate:b(t.getAttribute(n.onActivate)),onDeactivate:b(t.getAttribute(n.onDeactivate)),onLoadSrc:b(t.getAttribute(n.onLoadSrc)),onLoadComplete:b(t.getAttribute(n.onLoadComplete))}),e=b(t.getAttribute(n.onPostDetect)),e&&e();}),c.onPostDetect.fire(s);},"detect"),add:i(async function(a,e,t,o,u){let r=$lib("#"+a),p=$($lib("#"+a)),l;d[a]={element:r,placeHolders:p,css:$lib.trim(t)||"",js:$lib.trim(o)||"",callbacks:u},c.deactivate(a),e&&s.matchMedia?(l=s.matchMedia(e),l.addEventListener("change",async function(A){await C(A.target,a);}),d[a].mediaQuery=l,($lib.isEmpty(c.launchTemplateId)&&l.matches||c.launchTemplateId===a)&&c.activate(a)):(c.launchTemplateId===a||c.fallbackTemplateId===a)&&c.activate(a);},"add"),activate:i(async function(a){let e=d[a],t=$lib("#"+a);c.activeTemplate=e,t.parentNode.replaceChild(e.element,t),e.element.style.display="",$lib.each(e.placeHolders,function(o){let u=o.getAttribute(n.placeHolderId),r;$lib.isEmpty(o.id)&&(r=g(u),o.id=u,r.removeAttribute("id"),$lib.appendChildren(r,o),f[u]=o);}),h&&document.body.contains(h)&&h.focus(),await v(e,"onActivate"),c.onActivate.fire(s,[e]),e.sourcesLoaded?m(e,!1):(e.js||e.css)&&y(a);},"activate"),deactivate:i(async function(a){let e=d[a],t=document.createElement("div");h=document.activeElement,e.element.parentNode&&(t.id=a,t.style.display="none",e.element.parentNode.replaceChild(t,e.element),m(e,!0),c.activeTemplate===e&&(c.activeTemplate=null),await v(e,"onDeactivate"),c.onDeactivate.fire(s,[e]));},"deactivate")};function b(a){if(!a)return null;let e=a.split("."),t=e.length,o=s,u;return $lib.each(e,function(r,p){u=o[r],p!=t-1&&(o=o[r]);}),u}i(b,"getHandler");function $(a){let e=$lib(function(t){return t.hasAttribute(n.placeHolderId)},a);return $lib.each(e,function(t){$lib.isEmpty(t.id)||(f[t.id]=t);}),e}i($,"getPlaceHolders");function g(a){return f[a]?f[a]:f[a]=$lib("#"+a)}i(g,"getActivePlaceHolder");async function C(a,e){let t=d[e];await v(t,"onMatchMediaChange"),c.onMatchMediaChange.fire(s,[t]),a.matches?c.activate(e):c.deactivate(e);}i(C,"matchMediaChange");async function y(a){let e=d[a],t=e.js?e.js.split(/\s+/):[],o=e.css?e.css.split(/\s+/):[],u=t.length+o.length,r=0,p=i(async function(l){await v(e,"onLoadSrc",[l]),c.onLoadSrc.fire(s,[l]),u==r&&(e.sourcesLoaded=!0,await v(e,"onLoadComplete"),c.onLoadComplete.fire(s));},"callback");e.tags=[],$lib.each(t,function(l){e.tags.push($lib.addScriptSource(l,"",{onComplete:i(function(){++r,p(l);},"onComplete")}));}),$lib.each(o,function(l){e.tags.push($lib.addCssSource(l,"",{onComplete:i(function(){++r,p(l);},"onComplete")}));});}i(y,"registerSources");function m(a,e){$lib.each(a.tags||[],function(t){t&&t.nodeName==="LINK"&&(t.disabled=e);});}i(m,"toggleSources");async function v(a,e,t){t=t||[],a.callbacks&&a.callbacks[e]&&(t.unshift(a),await a.callbacks[e].apply(s,t));}i(v,"call"),$lib.ready(function(){c.autoDetect&&c.detect();});})(window);
18
+ })(window);
19
+
20
+
21
+ var x$3=Object.defineProperty;var p$6=(c,e)=>x$3(c,"name",{value:e,configurable:!0});componyx.base_modules=componyx.base_modules||{},componyx.base_modules.NavigationManager=class{static{p$6(this,"NavigationManager");}#i;constructor(e,t={}){this.container=e,this.horizontalRoot=t.horizontalRoot||!1,this.tabNavigation=t.tabNavigation,this.getButton=t.getButton,this.isExpandable=t.isExpandable,this.isFocusable=t.isFocusable,this.getExpander=t.getExpander,this.getCollapseTarget=t.getCollapseTarget,this.isExpanded=t.isExpanded,this.onExpand=t.onExpand,this.onCollapse=t.onCollapse,this.onCollapseAll=t.onCollapseAll,this.moveRootToLeft=!1,this.expanding={},this.collapsing={},this.focusedPath=$lib.path(t.itemList,"itemList",null,!0).create(),this.focusedButton=null,this.#i=this.#r.bind(this),this.attach();}attach(){this.container.addEventListener("keydown",this.#i);}destroy(){this.container.removeEventListener("keydown",this.#i),this.moveRootToLeft=!1,this.focusedButton=null,this.focusedPath=null,this.expanding={},this.collapsing={};}isExpanding(e){return !!this.expanding[e]}isCollapsing(e){return !!this.collapsing[e]}setFocusFromEvent(e,t){if(!this.getButton(e)?.contains(t.target))return this.setFocus(e.id)}setFocus(e){const t=this.focusedPath?.path(i=>i.id===e,!0);return this.#e(t)}expandComplete(e){if(!this.isExpanding(e))return;this.expanding[e]=!1;const t=this.focusedPath?.path(s=>s.id===e,!0);if(!t)return;const i=t.create().firstChild();i&&this.#n(i);}collapseComplete(e){if(!this.isCollapsing(e)||!this.collapsing[e])return;this.collapsing[e]=!1;const t=this.focusedPath?.path(s=>s.id===e,!0);let i=!1;if(t&&this.isFocusable(t.item)){let s=t;this.moveRootToLeft&&(s=this.#a(s)),i=this.#e(s),this.moveRootToLeft=!1;}if(!i){const s=this.getExpander?.();s&&s.focus();}}#e(e){if(!e?.item)return !1;this.focusedPath=e;const t=this.getButton(e.item);return t?(this.focusedButton?.isConnected&&(this.focusedButton.tabIndex=-1),this.focusedButton=t,t.tabIndex=0,t.focus({preventScroll:!0}),t.ownerDocument.activeElement===t):!1}#n(e){const t=this.#t(e);t&&this.#e(t);}#t(e){let t=e.create().first(),i=t.item;for(;!this.isFocusable(t.item);)if(!t.hasNext()||(t.next(),t.item===i))return null;return t}#s(e){let t=e.create().last(),i=t.item;for(;!this.isFocusable(t.item);)if(!t.hasPrevious()||(t.previous(),t.item===i))return null;return t}#o(e){const t=e.create(),i=e.item;if(!t.hasNext())return this.#t(t);for(t.next();!this.isFocusable(t.item);){if(!t.hasNext())return this.#t(t.first());if(t.next(),t.item===i)return null}return t}#a(e){const t=e.create(),i=e.item;if(!t.hasPrevious())return this.#s(t);for(t.previous();!this.isFocusable(t.item);){if(!t.hasPrevious())return this.#s(t.last());if(t.previous(),t.item===i)return null}return t}#r(e){if(e.target.closest("input, textarea, select, [contenteditable]")||!this.focusedPath)return;const t=e.key,i=this.focusedPath,s=!i.hasParent(),r=s&&this.horizontalRoot,f=t==="Tab"&&this.tabNavigation;let d=!0,n=null;if(t==="ArrowRight"&&(!s||!this.horizontalRoot)||t==="ArrowDown"&&r){if(this.isExpanded?.(i.item)){const o=i.create().firstChild();n=this.#t(o);}else if(this.onExpand){if(this.isExpandable?.(i.item))this.expanding[i.item.id]=!0,this.onExpand(i.item);else if(t==="ArrowRight"&&this.horizontalRoot){let a=i;for(;a.hasParent();)a=a.parent();this.onCollapseAll?.(),n=this.#o(a);}}}else if(t==="Escape"||t==="ArrowLeft"&&!s){if(this.onCollapse){let o=null;if(this.getCollapseTarget?o=this.getCollapseTarget(i.item):i.hasParent()&&(o=i.parent().item),o&&(this.collapsing[o.id]=!0,this.onCollapse(o),t==="ArrowLeft"&&this.horizontalRoot&&o.id!=="root")){let a=i.path(h=>h.id===o.id,!0);a?.item&&!a.hasParent()&&(this.moveRootToLeft=!0);}}}else if(t==="ArrowLeft"&&r||t==="ArrowUp"&&!r)n=this.#a(i);else if((t==="ArrowRight"||f)&&r||(t==="ArrowDown"||f)&&!r)n=this.#o(i);else if(t==="Home")n=this.#t(i);else if(t==="End")n=this.#s(i);else if(t.length===1&&!/\s/.test(t)){const o=i.hasParent()?i.parent().create().children:i.items,a=o.findIndex(l=>l.id===i.item.id),h=o.length,g=t.toLowerCase();for(let l=a+1;l<a+h+1;l++){let u=o[l%h];if(this.isFocusable(u)&&u.text?.[0]?.toLowerCase()===g){n=i.path(m=>m.id===u.id,!0);break}}}else d=!1;n&&this.#e(n),d&&(e.preventDefault(),e.stopPropagation());}};componyx.base_modules.NavigationManager;
22
+
23
+
24
+ var b$5=Object.defineProperty;var d$8=(c,t)=>b$5(c,"name",{value:t,configurable:!0});componyx.base_modules=componyx.base_modules||{},componyx.base_modules.Sanitizer=class{static{d$8(this,"Sanitizer");}#e=["a","abbr","acronym","address","area","article","aside","b","bdi","big","blockquote","br","button","caption","center","cite","code","col","colgroup","data","datalist","dd","del","details","dfn","dir","div","dl","dt","em","fieldset","figcaption","figure","font","footer","form","h1","h2","h3","h4","h5","h6","header","hr","i","img","input","ins","kbd","keygen","label","legend","li","main","map","mark","menu","menuitem","meter","nav","ol","optgroup","option","output","p","pre","progress","q","rp","rt","ruby","s","samp","section","select","small","span","strike","strong","sub","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","tt","u","ul","var","wbr"];#t=[/^data-bindary/i,/^b-/i,/^mso-/i,/^o:/i,/^w:/i,/^v:/i,/^xmlns(:.*)?$/i];#i=["display","color","background-color",/^font(-.*)?$/,/^text(-.*)?$/,"margin",/^margin(-.*)?$/,"padding",/^padding(-.*)?$/,"border",/^border(-.*)?$/,"width","height","max-width","max-height","min-width","min-height","opacity",/^flex(-.*)?$/,"justify-content","align-items","align-content","align-self","order",/^grid(-.*)?$/];#s={class:d$8(t=>t.split(/\s+/).filter(e=>!/^mso/i.test(e)).join(" "),"class")};constructor(t={}){this.allowTags=t.allowTags||this.#e,this.denyAttributes=t.denyAttributes||this.#t,this.allowCss=t.allowCss||this.#i,this.attributeValueFilters=t.attributeValueFilters||this.#s;}sanitize(t){let e=document.createElement("div");return e.innerHTML=t,this.sanitizeNode(e),e.innerHTML}sanitizeNode(t){let e=t.firstChild;for(;e;){const i=e.nodeType;let a=e.nextSibling;if(i===1){const n=e.nodeName.toLowerCase();if(this.allowTags.includes(n)){for(let l=e.attributes.length-1;l>=0;l--){const o=e.attributes[l],s=o.name.toLowerCase(),u=o.value,f=s.startsWith("on"),m=this.denyAttributes.some(r=>r instanceof RegExp?r.test(s):s.startsWith(r)),h=this.isSafeAttrValue(s,u);if(f||m||!h)e.removeAttribute(o.name);else if(this.attributeValueFilters?.[s]){const r=this.applyAttributeValueFilter(s,u);r?e.setAttribute(s,r):e.removeAttribute(s);}else if(s==="style"){const r=this.sanitizeStyleAttr(u);r?e.setAttribute("style",r):e.removeAttribute("style");}}this.sanitizeNode(e);}else {for(a=e.nextSibling;e.attributes.length>0;)e.removeAttribute(e.attributes[0].name);e.remove();}}else i!=3&&(a=e.nextSibling,e.remove());e=a||e.nextSibling;}}decodeHTML(t){const e=document.createElement("textarea");return e.innerHTML=t,e.value}isAllowedCssProperty(t){return this.allowCss.some(e=>typeof e=="string"?e===t:e instanceof RegExp?e.test(t):!1)}isSafeProtocol(t){try{const e=t.replace(/\\[nrtf]/gi,"").replace(/[\s\u0000-\u001F]+/g,"").toLowerCase();return !(e.includes("javascript:")||e.includes("data:text/html")||e.includes("data:")&&!/^data:image\/(png|jpeg|jpg|gif|webp);base64,[a-z0-9+/=]+$/i.test(e))}catch{return !1}}isSafeCssValue(t){const e=t.toLowerCase().trim();return !(e.includes("expression(")||e.includes("javascript:")||e.startsWith("@")||e.startsWith("_")||e.includes("data:")&&!e.includes("data:image/"))}sanitizeStyleAttr(t){const e=document.createElement("div");e.style.cssText=t;const i=[];for(let a=0;a<e.style.length;a++){const n=e.style[a].toLowerCase(),l=e.style.getPropertyValue(n).trim();this.isAllowedCssProperty(n)&&this.isSafeCssValue(l)&&i.push(`${n}: ${l}`);}return i.join("; ")}isSafeAttrValue(t,e){try{if(t==="style")return !0;const i=this.decodeHTML(e);return !!this.isSafeProtocol(i)}catch{return !1}}applyAttributeValueFilter(t,e){const i=this.attributeValueFilters?.[t];return i?i(e):e}};componyx.base_modules.Sanitizer;
25
+
26
+
27
+ var f$2=Object.defineProperty;var c$8=(e,t)=>f$2(e,"name",{value:t,configurable:!0});componyx.bindary_modules=componyx.bindary_modules||{};const n$3=componyx.bindary_modules.core={liveBindTimers:new WeakMap,cache:null,data:null,routeRdy:{},useShorthand:!0,prefix:null,longPrefix:"data-bindary-",shortPrefix:"b-",hyphenatedAttributes:!0,dksc:".",ipc:"@",dataLabel:["appData","routeData","viewData"],viewContainer:null,xhr:[],dataWS:null,dataXHR:null,viewURL:null,controllerURL:null,dataChanges:{},modelDataChanges:new Map,dataLocks:{},repItemClones:{},launchRoutePath:null,liveBindTimerId:null,scrollTimerId:null,historyTimerId:null,scrollPos:{},historyLength:null,historyAction:null,allowHistoryScroll:null,secure:null,viewTree:null,tempViewContainer:null,callbacks:{},scrollableRoot:null,autoUpdateView:!0,observing:!0,observed:null,busy:!1,rendering:!1,linkRegEx:/^((ftp|http)*s*:\/\/)|^([a-zA-Z]+\:)|^(\.\.\/)|^(\/\/)|^(\#)/gi,escapeRegEx:/\\\${1}(parent)*$/,methodRegEx:/(^\${1}(component|context)+.)/,dataKeyRegEx:/\{\{([^\{\}\s]+)\}\}/gm,hasBindingRegEx:/\{\{([\s\S]*?)\}\}/,singleWord:/^(\${0,1}\w+)$/,attrRegEx:/((,+\s*|^)([^=\s]+))\s*=+\s*(?=(?:[^'"]*('|")[^\4]*\4)*[^'"]*$)/gm,quoteRegEx:/"/g,timeRegEx:/t|\s?hh|\s?h|:mm|:m|:ss|:s/gi,valueKey:"$value",parentKey:"$parent",key:"$key",postRenderFlag:!1,waiters:[],valueHandlers:[],templateUpdate:null,templateList:null,routeCallbackId:null,rendered:[],components:{},pendingUpdate:!1,pendingFullRender:!1,pendingPartialUpdate:!1,pendingPartialFullRender:!1,pendingTreeItems:new WeakSet,pendingTreeBatch:[],dataBindTrigger:null,dataBindLive:!1,renderPass:0,omit:{root:"",parent:"",children:"",context:"",repeatValue:"",value:"",element:"",repeatElements:"",isRendered:"",livePath:""},attr:{id:"",view:"",context:"",value:"",html:"",bind:"",live:"",type:"",attributes:"",hasValue:"",repeat:"",repeatItemId:"",itemId:"",filter:"",viewFormatter:"",dataFormatter:"",includable:"",include:"",component:"",observe:"",load:"",preRender:"",postRender:"",if:"",elseIf:"",else:"",on:"",updateId:"",keep:"",ignore:""},scroller:null,sanitizer:null,expressionEngine:null,getId(){return $bindary.idPrefix+$lib.guid()},clearPendingUpdate(){const e=n$3.pendingFullRender;return n$3.pendingUpdate=!1,n$3.pendingFullRender=!1,e},clearPendingPartialUpdate(){const e=n$3.pendingTreeBatch,t=n$3.pendingPartialFullRender;return n$3.pendingPartialUpdate=!1,n$3.pendingTreeBatch=[],n$3.pendingPartialFullRender=!1,e.forEach(r=>n$3.pendingTreeItems.delete(r)),{batch:e,complete:t}},fireEvent(e,t=[],r){let i=e.charAt(0).toUpperCase()+e.slice(1),a="on"+i,l,o={cancel:!1};if(t||(t=[]),t.push(o),$bindary.route&&!r){let s=$bindary.route,d=$bindary.controller,u=n$3.parseExp(s,n$3.getRoutePath(),s["controller"+i])||e;d&&d[u]&&(l=d[u].apply(d,t));}if($bindary[a]&&$bindary[a].fire($bindary,t),l===!1||o.cancel===!0)return !1},srcState(e,t){n$3.cache.srcReady[e]=t;},preLoad(){n$3.fireEvent("preLoad",null,!0);},load(){n$3.viewURL&&n$3.setTitle(n$3.cache.view[n$3.viewURL].title),n$3.fireEvent("load");},preRender(e){n$3.dataBindTrigger=e,n$3.busy=!0,n$3.rendering=!0,n$3.fireEvent("preRender");},postRender(){if(n$3.hasLoadingIncludes()){n$3.postRenderFlag=!0;return}n$3.dataBindTrigger=null,n$3.dataBindLive=!1,n$3.postRenderFlag=!1,n$3.busy=!1,n$3.rendering=!1,n$3.setRenderStates(),$bindary.linkDispatching&&n$3.dispatchLinks(),n$3.dataChanges={},n$3.modelDataChanges=new Map,n$3.fireEvent("postRender"),n$3.routeCallbackId&&n$3.postLoad();},postLoad(){n$3.scroller.init(void 0,$bindary.routePath),n$3.routeCallbackId=null,n$3.routeRdy[$bindary.routeIndex]=!0,n$3.data=void 0,n$3.fireEvent("postLoad");},setTitle(e){let t=$bindary.baseTitle||"";e?document.title=t+e:document.title||(document.title=t);},setRenderStates(){$lib.each(n$3.rendered,function(e){e.isRendered=!0;}),n$3.rendered=[];},hasLoadingIncludes(){let e=!1;return $lib.each(n$3.cache.include,function(t){return !(e=t.loading)}),e},createTempViewContainer(){n$3.tempViewContainer||(n$3.tempViewContainer=document.createElement("div"));},getViewContainer(){return n$3.viewContainer||(n$3.viewContainer=$lib(function(e){return e.hasAttribute(n$3.attr.view)},null,"",!0)),n$3.viewContainer},isRouteCallback(e){return n$3.routeCallbackId&&!$lib.isEmpty(e)&&(e.callbackId===n$3.routeCallbackId||$lib.indexOf(e,function(t){return n$3.routeCallbackId==t.callbackId})>-1)},parseExp(e,t,r){if(!e||!e.pathExp||!r||r.search(/\$\d/)==-1)return r;let i=e.path,a=i.exec(t);for(let l=0;l<a.length;++l)r=r.replace($lib.format("${0}",l),a[l]||"");return e.path.lastIndex=0,r},getTemplateFlags(e,t){const r=Object.fromEntries(t.map(i=>[i,void 0]));for(let i=e;i;i=i.parentElement){for(const a of t){if(r[a]!==void 0)continue;const l=i.getAttribute(n$3.attr[a]);if(l!==null)if(l==="true")r[a]=!0;else if(l==="false")r[a]=!1;else if(l===""||l==="null")r[a]=null;else {const o=Number(l);r[a]=isNaN(o)?null:o;}}if(t.every(a=>r[a]!==void 0))break}return r},keepAttributes(e){const{keep:t}=n$3.getTemplateFlags(e,["keep"]);return t??$bindary.keepAttributes},setItemPlaceHolder(e,t){n$3.createPlaceHolder(e,t.parentElement,t),!e.inRepeat&&!e.repeatDataKey&&(e.isRendered=!1),(!e.repeatDataKey||t!=e.repeatPlaceHolder)&&$lib.remove(t);},createPlaceHolder(e,t,r){let i=e.sourceElement.nodeName,a=document.createElement(i);return a.style.display="none",a.setAttribute(n$3.attr.id,e.id),e.inRepeat||(a.id=e.id),a._bindaryPlaceholder=!0,r?t.insertBefore(a,r):t.appendChild(a),a},dispatchLinks(e){n$3.getBaseHref().match(n$3.linkRegEx)||$lib(n$3.dispatchLink,e||document,"a");},dispatchLink(e){n$3.dispatchable(e)&&($bindary.prettyURL&&!$lib.has(e,"click",n$3.dispatch)?$lib.on(e,"click",n$3.dispatch):$bindary.prettyURL||(e.href="#"+e.href));},dispatch(e){let t=this.getAttribute("href");this.getAttribute("target");let i=n$3.getBaseHref(),a=i+t.replace(/^\//,"");!n$3.dispatchable(this)||i.match(n$3.linkRegEx)||n$3.isBookmarkJump(a)||(this.href="javascript:void(0);",setTimeout(function(l){this.href=l;}.bind(this,t),0),$bindary.loadRoute(a));},dispatchable(e){let t=e.getAttribute("href"),r=e.getAttribute("target");return !$lib.isEmpty(t)&&$lib.isEmpty(r)&&!t.match(n$3.linkRegEx)},getBaseHref(){let e=$lib(null,document,"head",!0),t=$lib(null,e,"base",!0),r=t?t.getAttribute("href"):"";return r==="/"?"":r},getRoutePath(){let e=$bindary.rootPath||"/",t=null;return $bindary.prettyURL?t=location.pathname.replace(e,""):t=n$3.getHashtag(),$lib.isEmpty(t)?"":decodeURIComponent(t)},getLocationOrigin(){return window.location.origin?window.location.origin:window.location.protocol+"//"+window.location.hostname+(window.location.port?":"+window.location.port:"")},getHashtag(){let e=window.location.hash.split("#")[1];return $lib.isEmpty(e)?null:(e.indexOf("!")==0&&(e=e.substr(1)),e)},getAnchor(){let e,t,r=window.location.href,i=r.lastIndexOf("#");return $bindary.prettyURL&&window.location.hash?e=window.location.hash.substr(1):!$bindary.prettyURL&&i>-1&&(t=r.substr(i+1),r.substr(r.indexOf("#")+1)!==t&&(e=t)),e},removeAnchor(e){let t;return (t=e.indexOf("#"))>-1&&(e=e.substr(0,t)),e},isBookmarkJump(e){return n$3.removeAnchor(e)===$bindary.routePath&&($bindary.prettyURL&&e.indexOf("#")>-1||!$bindary.prettyURL&&n$3.getAnchor())},getFullPath(e){return n$3.getLocationOrigin()+$bindary.rootPath+e},initCache(){n$3.cache={srcReady:{},view:{},controller:{},routeData:{},viewData:{},include:{}};},clearCache(e,t,r,i,a){let l=c$8(function(o){let s=t&&i?[]:o.script;s=r&&a?s:s.concat(o.css),$lib.each(s,function(d){let u=d.nodeName.toLowerCase();(u=="style"&&!a||u=="link"&&!r||u=="script"&&d.src&&!t||u=="script"&&d.text&&!i)&&$lib.remove(d);});},"clear");e||$lib.each(n$3.cache.controller,function(o){$lib.remove(o);}),t&&r&&i&&a||($lib.each(n$3.cache.view,function(o){l(o);}),$lib.each(n$3.cache.include,function(o){l(o);})),!e&&!t&&!r&&!i&&!a&&n$3.initCache();},initializePrefix(e,t=!0){n$3.prefix=e,n$3.hyphenatedAttributes=t,Object.keys(n$3.attr).forEach(r=>{n$3.attr[r]=e+(n$3.hyphenatedAttributes?n$3.camelToKebab(r):r.toLowerCase());});},camelToKebab(e){return e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()},clearWaiters(){let e=n$3.waiters.length,t;if(e!=0)for(;--e;)t=n$3.waiters[e],t.waiting||n$3.waiters.splice(e,1);},useWS(){return $bindary.useWebSocket&&$bindary.websocketSupport},formatDate(e,t){return t=t||$bindary.dateFormat,$lib.formatDate(e,t)},customEventHandler(){n$3.eventHandler.apply(this,arguments);},eventHandler(e,t,r,i,a,l,o){if(t.restoreContext(r),!a)n$3.call(e,[t,o],l);else {let s=[];s.unshift(t),i.push(o),e.apply(this,s.concat(i));}},call(e,t,r){if(!e)return;let i=t[0];r||(r=n$3.getMethodContext(e,i)),e=n$3.methodName(e);let a=e.split("."),l=a.length;return $lib.each(a,function(o,s){!r&&$bindary.controller&&$bindary.controller[o]?r=$bindary.controller:r||(r=window),e=r[o],s!=l-1&&(r=r[o]);}),e.apply(r,t)},methodName(e){let t="$component",r="$context";return e=e.replace(n$3.methodRegEx,""),e.replace("\\"+t,t).replace("\\"+r,r)},getMethodContext(e,t){if(!e)return null;let r=e.split(".");if(n$3.isKey(r[0],"$context"))return t.context;if(!t.isComponent||!n$3.isKey(r[0],"$component"))return null;for(;!t.component;)t=t.parent;return t.context},resolveContentExpression(e){const t=e.childNodes;let r=!1;const i=[];for(let a=0;a<t.length;a++){const l=t[a];l.nodeType===1?r=!0:l.nodeType===3&&l.data.includes("{{")&&i.push(l);}if(i.length===0)return !1;if(!r)return !0;for(const a of i){const l=document.createElement("span");l.textContent=a.data,a.replaceWith(l);}return !1},hasContentExpression(e){const t=e.childNodes;let r=t.length;for(;r--;){const i=t[r];if(i.nodeType===1)return !1;if(i.nodeType===3&&i.data.includes("{{"))return !0}return !1},hasExpression(e){return e.indexOf("{{")>-1&&e.match(n$3.hasBindingRegEx)!==null},isKey(e,t){return e&&e.indexOf(t)==0},dataKeyMatch(e,t){return e&&t&&$lib.startsWith(e,t+n$3.dksc)},literalContainsKey(e){let t=(e.match(/\{/g)||[]).length,r=(e.match(/\}/g)||[]).length;return t>=1&&t%2==0&&r>=1&&r%2==0},escapeDataKey(e){$lib.each(e,function(t,r){e[r]=t.replace(n$3.escapeRegEx,"$$1");});},toBoolean(e){if(!e)return !1;switch(e.toLowerCase().trim()){case"false":case"no":case"0":return !1;default:return !0}},getElementValue(e){const t=e.element;for(const r of n$3.valueHandlers)if(r.matcher(e)&&r.getValue)return r.getValue(t);return t.contentEditable=="true"?t.innerHTML:t.value},setElementValue(e,t,r){const i=e.element;for(const a of n$3.valueHandlers)if(a.matcher(e)&&a.setValue)return a.setValue(i,t);r&&i.innerHTML!=t?i.innerHTML=t:r||$lib.setText(i,t);},createJSON(e){return e.replace(n$3.quoteRegEx,'\\"').replace(n$3.attrRegEx,'"$2"$3":"').substr(1)+'"'},addDataContainer(e,t){if(!e)return null;let r,i=0,a=e[0],l;return a==n$3.parentKey||a==n$3.valueKey||a==n$3.key?t=!1:a=="$"?(t=!0,a=e[1]||a,++i):t&&(l=!0),t&&$lib.indexOf(n$3.dataLabel,a)==-1&&(a in $bindary.viewData?r=n$3.dataLabel[2]:a in $bindary.routeData?r=n$3.dataLabel[1]:a in $bindary.appData&&(r=n$3.dataLabel[0]),r&&e.splice(i,0,r)),l&&e.splice(0,0,"$"),e}};componyx.bindary_modules.core;
28
+
29
+
30
+ const d$7=componyx.bindary_modules.core,o$7=componyx.bindary_modules.dataUpdater={initUpdateRules(e,t){return e=e?$lib.isArray(e)?e:[e]:[{}],t&&!$lib.isEmpty(t[0])&&(e=t.concat(e)),e},update(e,t){if(e){if(d$7.fireEvent("preDataUpdate",[e])===!1)return;let a=o$7.updateData.bind(o$7,e);if(d$7.autoUpdateView=!1,d$7.dataLocks["#"]?d$7.dataLocks["#"].push(a):(a(),d$7.fireEvent("postDataUpdate")),d$7.autoUpdateView=!0,!o$7.advance(e)){d$7.routeCallbackId&&d$7.postRender();return}}t!==!1&&$bindary.updateView(!1);},advance(e){let t=!0,a,i;$lib.isArray(e)||(e=[e]);for(let f=0;f<e.length;++f)i=e[f],i.isError&&(d$7.fireEvent("dataError",[i])===!1&&(t=!1),d$7.clearPendingUpdate()),i.callbackId&&i.callbackId!==d$7.routeCallbackId&&(d$7.callbacks[i.callbackId]?(a=d$7.callbacks[i.callbackId](i),delete d$7.callbacks[i.callbackId],a===!1&&(t=!1)):t=!1);return d$7.dataLocks["#"]&&(t=!1),t},updateData(e){$lib.isArray(e)||(e=[e]);for(let t=0;t<e.length;++t){let a=e[t].data;a&&(o$7.prepareContainer(d$7.dataLabel[0],a),($lib.isEmpty(e[t].routeIndex)||e[t].routeIndex===$bindary.routeIndex)&&(o$7.prepareContainer(d$7.dataLabel[1],a),d$7.cache.routeData[$bindary.routeIndex]=$bindary.routeData),($lib.isEmpty(e[t].routePath)||e[t].routePath===$bindary.routePath)&&(o$7.prepareContainer(d$7.dataLabel[2],a),d$7.cache.viewData[$bindary.routePath]=$bindary.viewData));}},prepareContainer(e,t){let a=t[e];if(!a)return;let i=o$7.updateContainer.bind(o$7,e,a,t[e+"Rules"]);d$7.dataLocks[e]?d$7.dataLocks[e].push(i):i();},updateContainer(e,t,a){let i,f,n,l,r,c,u=$bindary[e];for(let p in t)r=u,f=t[p],n=a?a[p]:null,l=n?n.path:null,n&&(!$lib.isEmpty(n.routePath)&&e===d$7.dataLabel[2]?r=d$7.cache.viewData[n.routePath]:!$lib.isEmpty(n.routeIndex)&&e===d$7.dataLabel[1]&&(r=d$7.cache.routeData[n.routeIndex])),i=l?o$7.getTargetModel(l,r):{key:p,obj:r},l=e+d$7.dksc+(l||p),c=o$7.updateModel.bind(o$7,i.key,i.obj,f,n,l),d$7.dataLocks[l]?d$7.dataLocks[l].push(c):c();},updateModel(e,t,a,i,f){let n=$lib.isArray(a),l=$bindary.defaultUpdateRule;if(d$7.observed=!1,!(a==null&&i&&i.ignoreNullValues)){if(i?$lib.isEmpty(i.update)&&(i.update=l):i={update:l},(i&&typeof i.equalityCheck=="boolean"?i.equalityCheck:$bindary.equalityCheck)&&o$7.deepEqual(t[e],a))return;$lib.isEmpty(t[e])||i.update===!1||!(n||$lib.isPlainObject(a))?t[e]=a:n?o$7.updateArray(t[e],a,i):$lib.clone(t[e],a,!0,!0,!0,null,null,null,i.omitKeys),d$7.observed||o$7.dataChange(f,i,n);}},deepEqual(e,t,a=new WeakMap){if(e===t)return !0;if(e instanceof Date&&t instanceof Date)return e.getTime()===t.getTime();if(typeof e!="object"||e===null||typeof t!="object"||t===null)return !1;if(a.has(e)){if(a.get(e).has(t))return !0}else a.set(e,new WeakSet);a.get(e).add(t);let i=Object.keys(e),f=Object.keys(t);if(i.length!==f.length)return !1;for(let n of i)if(!f.includes(n)||!o$7.deepEqual(e[n],t[n],a))return !1;return !0},getTargetModel(e,t){let a,i;for(;e;)i=e.indexOf(d$7.dksc),a=i>-1?e.substr(0,i):e,i>-1?(t=t[a]=t[a]||{},e=i>-1?e.substr(i+d$7.dksc.length):null):e=null;return {key:a,obj:t}},dataChange(e,t,a){d$7.dataChanges[e]||(d$7.dataChanges[e]=[]),t&&a&&d$7.dataChanges[e].push(t);},updateArray(e,t,a){if(a||(a={}),$lib.isEmpty(a.removeIndex)&&a.removeCount>0&&(a.removeIndex=e.length-a.removeCount),a.removeCount>0&&e.splice(a.removeIndex,a.removeCount),$lib.isEmpty(a.addCount)&&(a.addCount=0),a.updateKey){let i=a.updateKey,f=[];a.keys=[],a.removeByKeyValues&&$lib.each(a.removeByKeyValues,function(n){let l=$lib.indexOf(e,function(r){return r[i]==n});l>-1&&(a.keys.push(l.toString()),e.splice(l,1));}),$lib.each(t,function(n){let l=$lib.indexOf(e,function(r){return r[i]===n[i]});l>-1?(a.keys.push(l.toString()),e[l]=n):f.push(n);}),f.length&&o$7.extendTargetArray(e,f,a);}else o$7.extendTargetArray(e,t,a);},extendTargetArray(e,t,a){a.addCount=t.length,a.addCount>0&&$lib.isEmpty(a.addIndex)?e.push.apply(e,t):a.addCount>0&&e.splice.apply(e,[a.addIndex,0].concat(t)),$lib.isEmpty(a.addIndex)&&a.addCount>0&&(a.addIndex=e.length-a.addCount);}};componyx.bindary_modules.dataUpdater;
31
+
32
+
33
+ var y$3=Object.defineProperty;var r$6=(e,a)=>y$3(e,"name",{value:a,configurable:!0});const t=componyx.bindary_modules.core,u$7=componyx.bindary_modules.dataUpdater,o$6=componyx.bindary_modules.connection={connect:r$6(function(e){let a,i=r$6(function(n){n&&n.code&&$lib.log($lib.trim(n.code+" "+n.reason)),setTimeout(function(){window.location.reload();},0);},"reloadPage");$bindary.connected||!$bindary.dataServerURL||($bindary.dataServerURL=o$6.getDataServerURL($bindary.dataServerURL),t.useWS()?t.dataWS=$lib.ws({url:$bindary.dataServerURL,onOpen:r$6(function(n){t.fireEvent("webSocketOpen",[t.dataWS,n]),$bindary.connected=!0,t.dataWS.send(e);},"onOpen"),onMessage:r$6(function(n){o$6.received(window.JSON.parse(n.data));},"onMessage"),onClose:r$6(function(n){$bindary.connected=!1,t.fireEvent("webSocketClose",[t.dataWS,n]),[1006,1011,1012,1013].includes(n.code)&&$bindary.reloadPageOnWebSocketServerError&&i(n);},"onClose")}):$bindary.dataServerURL&&(a={url:$bindary.dataServerURL,repeatInterval:$bindary.xhrUpdateInterval,data:e,onSuccess:r$6(function(n){$bindary.dataRequest.initialLoad&&($bindary.dataRequest.initialLoad=!1,n.settings.data=window.JSON.stringify($bindary.dataRequest)),$bindary.connected=!0,o$6.xhrResponse(n);},"onSuccess")},t.dataXHR=$lib.xhr(a),t.xhr.push(t.dataXHR)));},"connect"),disconnect:r$6(function(){$bindary.connected&&(t.useWS()?t.dataWS.close():t.dataXHR.abort(!0),t.dataWS=t.dataXHR=null,$bindary.connected=!1);},"disconnect"),getDataServerURL:r$6(function(e){let a=$bindary.relativeDataServerURL,i=$bindary.secure!=null?$bindary.secure:t.secure;return t.useWS()&&!/^(ws+s*\:\/\/)/gi.test(e)?e=i?"wss://"+e:"ws://"+e:!t.useWS()&&!a&&!/^(http+s*\:\/\/)/gi.test(e)&&(e=i?"https://"+e:"http://"+e),e},"getDataServerURL"),dataSend:r$6(function(e,a){if($bindary.dataServerURL){if(e=o$6.stringifyQuery(e),a&&!t.useWS()){let i={url:$bindary.dataServerURL,data:e,onSuccess:r$6(function(n){o$6.xhrResponse(n);},"onSuccess")};return $lib.xhr(i).xhr}else if(!$bindary.connected||t.useWS()&&t.dataWS.readyState!==t.dataWS.OPEN?($bindary.connected=!1,o$6.connect(e)):t.useWS()?t.dataWS.send(e):(t.dataXHR.abort(!0),t.dataXHR.settings.data=e,t.dataXHR=$lib.xhr(t.dataXHR.settings)),t.useWS()&&a)return t.dataWS}},"dataSend"),xhrResponse:r$6(function(e){if(!e.data)return;let a=e.data,i=$lib.isArray(a)?a.length-1:-1,n=i>-1?a[i].clientId:a.clientId;$lib.isEmpty($bindary.clientId)&&!$lib.isEmpty(n)&&($bindary.clientId=n,t.dataXHR&&(typeof t.dataXHR.settings.data=="string"&&(t.dataXHR.settings.data=window.JSON.parse(t.dataXHR.settings.data)),t.dataXHR.settings.data.clientId=$bindary.clientId)),o$6.received(a);},"xhrResponse"),received:r$6(function(e){if(!e)return;let a=$lib.isArray(e)?e.length-1:-1,i=a>-1?e[a].clientId:e.clientId;$lib.isEmpty($bindary.clientId)&&!$lib.isEmpty(i)&&($bindary.clientId=$bindary.dataRequest.clientId=i),$lib.isEmpty($bindary.routeIndex)||t.routeRdy[$bindary.routeIndex]?u$7.update(e):t.isRouteCallback(e)?o$6.routeLoaded(e):u$7.update(e,!1);},"received"),routeLoaded:r$6(async function(e){componyx.bindary_modules.router.loaded(e);},"routeLoaded"),createDataRequestMsg(e,a,i,n,s){let c=$bindary.routes[$bindary.routeIndex],l,d={};return d.clientId=$bindary.clientId||null,d.routeIndex=$bindary.routeIndex,d.routePath=$bindary.routePath,d.serverMethod=t.parseExp(c,$bindary.routePath,a||"")||"",d.callbackId=i||null,d.initialLoad=n||!1,d.webSocketUpdate=s||!1,d.data=t.parseExp(c,$bindary.routePath,o$6.stringifyQuery(e)),l=JSON.stringify(d),$bindary.dataRequest=d,l},stringifyQuery(e){return e&&typeof e=="object"?JSON.stringify(e):e||null}};componyx.bindary_modules.connection;
34
+
35
+
36
+ var b$4=Object.defineProperty;var a$2=(p,f)=>b$4(p,"name",{value:f,configurable:!0});componyx.bindary_modules.core;componyx.bindary_modules=componyx.bindary_modules||{},componyx.bindary_modules.ExpressionEngine=class{static{a$2(this,"ExpressionEngine");}constructor(){this.resolveRegex=/^[\$A-Za-z_][\w.@\[\]]*(\(\))?/,this.allowedCharsRegex=/^[|&+\-*/().,\s<>=!?:@_\$[\]{}_A-Za-z0-9'".]+$/,this.allowedMathFunctions=["abs","ceil","floor","round","max","min","trunc","sqrt","pow","log","exp","random"],this.allowedStringFunctions=["toLowerCase","toUpperCase","trim","replace","includes","indexOf","startsWith","endsWith","slice","substring"];}evaluate(f,w){const v=this.allowedCharsRegex,F=this.allowedMathFunctions,S=this.allowedStringFunctions,M=a$2((e,i)=>{if(e[i]!=="(")return null;let n=1,l=i+1;for(;l<e.length&&n>0;)e[l]==="("?n++:e[l]===")"&&n--,l++;return n!==0?null:{content:e.slice(i+1,l-1),endIndex:l-1}},"extractParentheses"),m=a$2((e,i)=>{if(e=e.trim(),!e||!v.test(e))return null;let n=0,l="";for(;n<e.length;){let s=e[n];if(/\s/.test(s)){n++;continue}if(/\d/.test(s)){l+=s,n++;continue}if(s==='"'||s==="'"){const r=s;let o=n++;for(;n<e.length;){if(e[n]==="\\"){n+=2;continue}if(e[n]===r)break;n++;}if(n>=e.length)return null;l+=e.slice(o,++n);continue}let u=e.slice(n).match(/^(Math|String)\.([A-Za-z_]\w*)/);if(u){const r=u[1],o=u[2];if(!(r==="Math"?F:S).includes(o)||(l+=r==="Math"?`${r}.${o}`:`String.prototype.${o}.call`,n+=u[0].length,e[n]!=="("))return null;const d=M(e,n);if(!d)return null;const g=m(d.content,i+n+1);if(g===null)return null;r==="Math"?l+=`(${g})`:l+=`( ${g} )`,n=d.endIndex+1;continue}const t=e[n+4];if(e.startsWith("true",n)&&(t===void 0||!/[\w]/.test(t))){l+="true",n+=4;continue}const c=e[n+5];if(e.startsWith("false",n)&&(c===void 0||!/[\w]/.test(c))){l+="false",n+=5;continue}if(e.startsWith("null",n)&&!/\w/.test(e[n+4]??"")){l+="null",n+=4;continue}if(s==="{"){if(e[n+1]==="}"){l+="{}",n+=2;continue}return null}if(s==="["){if(e[n+1]==="]"){l+="[]",n+=2;continue}return null}let h=e.slice(n).match(this.resolveRegex);if(h){const r=h[0];w&&w(r,i+n),l+=`resolver(${JSON.stringify(r)})`,n+=r.length;continue}if("&|+-*/%()<>!=?:@,.".includes(s)){l+=s,n++;continue}return null}return l},"processExpression");function y(e,i=0,n=!1){let l="",s=null,u=!1;for(;i<e.length;){let t=e[i];if(t==="\\"&&!u){u=!0,l+=JSON.stringify(t)+" + ",i++;continue}if(u){u=!1,l+=JSON.stringify(t)+" + ",i++;continue}if(!u&&(t==='"'||t==="'")&&(s===null?s=t:s===t&&(s=null)),n){if(s===null&&t==="}"&&e[i+1]==="}")return {value:l,index:i+2};l+=t,i++;}else if(t==="{"&&e[i+1]==="{"){const c=y(e,i+2,!0),h=i+2;if(!c)return null;const r=c.value;i=c.index;const o=m(r,h);if(o===null)return null;l+="("+o+") + ";continue}else l+=JSON.stringify(t)+" + ",i++;}return n?null:{value:l,index:i}}if(a$2(y,"process"),!f)return null;const $=y(f,0,!1);if(!$)return null;let _=$.value.replace(/\s*\+\s*$/,"");return Function("resolver",`"use strict"; return (${_})`)}};componyx.bindary_modules.expressionEngine;
37
+
38
+
39
+ const d$6=componyx.bindary_modules.core,r$5=componyx.bindary_modules.proxyManager={proxyMap:new WeakMap,proxyDataKeys:new WeakMap,targetSymbol:Symbol("target"),isProxy(e){return !!(e&&e[r$5.targetSymbol])},getTarget(e){return e?e[r$5.targetSymbol]:null},handleDataChange(e,t,i,o,n,s,a=[]){let l=t===void 0&&n&&n.removeCount?i:t;if(l&&r$5.isProxy(l)){let y=r$5.proxyDataKeys.get(l)||new Set,p=Array.from(y);a.push(...p.filter(u=>u!==o&&!a.includes(u)));}r$5.setDataChange(o,n,e,t,i,a,s);},setDataChange(e,t,i,o,n,s,a={}){if(!e)return;let l=a.viewTree,y=typeof a.createEvent=="function"?a.createEvent():a.event,p=e.split(".").slice(0,-1).join("."),u=r$5.proxyMap.get(i)?.get(p);if(l&&$lib.each(a.treeState,(f,c)=>{l[c].restoreContext(f);}),y){let f=a.element||document,c=y.detail;if(c&&Object.assign(c,{dataKey:e,additionalDataKeys:s,target:i,targetProxy:u,eventPayload:a.eventPayload,data:t,value:o,oldValue:n}),!f.dispatchEvent(y))return d$6.observed=!0,!0;c.viewTree&&(l=c.viewTree);}if(t&&$lib.isArray(i)){let f=e.split(".");f.pop(),e=f.join(".");}d$6.observed=!0,$bindary.dataChange(e,null,t,!1),s.length>0&&s.forEach(f=>$bindary.dataChange(f,null,t,!1)),d$6.autoUpdateView&&$bindary.autoUpdateView&&$bindary.updateViewDelayed(!1,null,l);},getKey(e,t,i){if(!(i&&window.isNaN(t)))return $lib.format("{0}{1}{2}",e||"",e?".":"",t||"")},createProxy(e,t,i){if(!r$5.isValidProxyObject(e))return e;e[r$5.targetSymbol]&&(e=e[r$5.targetSymbol]);let o=r$5.proxyMap.get(e),n=i?.reuseProxy===!1?"!"+t:t;if(!o)o=new Map,r$5.proxyMap.set(e,o);else if(o.size>0&&i?.reuseProxy!==!1){let l=o.values().next().value,y=r$5.proxyDataKeys.get(l);return y||(y=new Set,r$5.proxyDataKeys.set(l,y)),y.add(t),l}else if(o.has(n))return o.get(n);let s=Object.create(r$5.proxyHandler),a=s.proxy=new Proxy(e,s);return s.settings=i,s.dataKey=t,a[r$5.targetSymbol]=e,o.set(n,a),r$5.proxyDataKeys.set(a,new Set([t])),a},isValidProxyObject(e){return e!=null&&($lib.isPlainObject(e)||$lib.isArray(e))},proxyHandler:{proxy:null,dataKey:null,settings:null,get(e,t){if(typeof t=="symbol")return e[t];if(t==="prototype")return Object.getPrototypeOf(e);if(t in e){let i=r$5.getKey(this.dataKey,t),o=e[t],n="function";if(r$5.isValidProxyObject(o)){const s=r$5.createProxy(o,i,this.settings),a=r$5.proxyDataKeys.get(this.proxy);if(a&&a.size>1){const l=r$5.proxyDataKeys.get(s);l&&(Array.from(l).some(p=>Array.from(a).some(u=>u.startsWith(p+".")))||a.forEach(p=>{if(p!==this.dataKey){const u=r$5.getKey(p,t);u&&l.add(u);}}));}return Reflect.set(e,t,s)?s:o}else return !$lib.isArray(e)&&typeof o==n&&typeof e!=n&&!(o.prototype&&o.prototype.constructor===o)?o.bind(e):o}},set(e,t,i){let o=$lib.isArray(e),n=typeof t!="symbol"?r$5.getKey(this.dataKey,t,o):void 0,s=e[t],a=Object.prototype.hasOwnProperty.call(e,t),l=e[t]!==i,y=(!d$6.busy||$bindary.observeDuringRender)&&d$6.observing,p=this.settings;if(typeof t=="symbol")return Reflect.set(e,t,i);if(a&&l&&n&&r$5.isProxy(s)){let f=r$5.proxyDataKeys.get(s);f&&(f.delete(n),f.size===0&&r$5.proxyDataKeys.delete(s));}i=r$5.createProxy(i,n,p);const u=Reflect.set(e,t,i);if(u&&n&&y&&l){let f=Array.from(r$5.proxyDataKeys.get(this.proxy)||[this.dataKey]),c=f.filter(x=>x!==this.dataKey).map(x=>r$5.getKey(x,t,o)).filter(Boolean);r$5.handleDataChange(e,i,s,n,o?{keys:[t],hadValue:a}:{hadValue:a},p,c);}return u},defineProperty(e,t,i){return i&&i.value!==void 0&&this.set(e,t,i.value),Reflect.defineProperty(e,t,i)},deleteProperty(e,t){let i=this.settings;if(t in e){let o=e[t],n=$lib.isArray(e),s=n?{removeIndex:parseInt(t),removeCount:1}:{removeCount:1},a=typeof t!="symbol"?r$5.getKey(this.dataKey,t,n):void 0,l=(!d$6.busy||$bindary.observeDuringRender)&&d$6.observing;const y=Reflect.deleteProperty(e,t);if(typeof t=="symbol")return y;if(y&&a&&r$5.isProxy(o)){let p=r$5.proxyDataKeys.get(o);p&&(p.delete(a),p.size===0&&r$5.proxyDataKeys.delete(o));}if(y&&a&&l){let p=Array.from(r$5.proxyDataKeys.get(this.proxy)||[this.dataKey]),u=p.filter(f=>f!==this.dataKey).map(f=>r$5.getKey(f,t,n)).filter(Boolean);r$5.handleDataChange(e,void 0,o,a,s,i,u);}return y}return !0}}};componyx.bindary_modules.proxyManager;
40
+
41
+
42
+ var m$6=Object.defineProperty;var c$7=(i,e)=>m$6(i,"name",{value:e,configurable:!0});const a$1=componyx.bindary_modules.core;componyx.bindary_modules.Renderer=class{constructor(i,e,t,l){this.item=i,this.update=t,this.inRepeat=i.inRepeat,this.next=l,this.element=e,this.treeState=null,this.context=null,this.key=null,this.dataChange=null;}render(i,e){let t=this,l=t.item;t.treeState=null,l.repeatDataKey?(t.context=i||t.context,t.key=$lib.isEmpty(e)?t.key:e,t.renderRepeatItem(t.context,t.key)):t.renderItem();}renderRepeatItem(i,e){let t=this,l=t.item;$lib.isArray(l.repeatValue)&&(l.index=parseInt(e)),l.key=e,l.defineContext(i),l.setContextValue(),l.element=l.repeatElements[e]||l.repeatPlaceHolder,l.repeatItemIdDataKey&&(l.repeatItemIdValue=l.getDataValue(l.repeatItemIdDataKey,l.context)),t.renderElement(t.createRepeatElement);}renderItem(){let i=this,e=i.item;e.setContextValue(),e.element=i.element,i.renderElement(i.createElement);}renderElement(i){let e=this,t=e.item,l=t.element;e.mustRender(t,l)?(i.bind(this)(),t.include?e.includeItem():t.includeFile?e.includeFile():t.component?e.load():e.postRender()):e.next();}mustRender(){let i=this,e=i.item,t=e.element;return !e.isActiveRepeatItem(e)||e.hasValue!=null&&i.isEmpty(e)||a$1.call(e.preRender,[e,i.render])===!1?(a$1.setItemPlaceHolder(e,t),!1):!0}isEmpty(i){let e=i.hasValue[0].length==0?i.dataKey?i.value:i.context:i.getDataValue(i.hasValue,i.context);return $lib.isEmpty(e)}includeItem(){let i=this,e=i.item,t;if(e.component&&a$1.components[e.component]&&(e.context=a$1.components[e.component](e)),t=e.getIncludeItem(),!e.children.length&&!t&&a$1.hasLoadingIncludes()){i.waiting=!0,a$1.waiters.push(i);return}i.waiting=!1,i.load(t);}includeFile(){let i=this,e=i.item,t=$bindary.includeRootURL+($lib.startsWith(e.includeFile,"/")?e.includeFile.substr(1):e.getDataValue(e.includeFile,e.context)),l=a$1.cache.include[t];if(l){if(l.loading){l.waiters.push(i);return}i.load(l);}else i.createFileInclude(t),a$1.xhr.push($lib.load({url:t,onSuccess:c$7(function(n){a$1.cache.include[n.settings.url].dataLoaded(n);},"onSuccess")},e.element));}createFileInclude(i){let e=this,t={};a$1.cache.include[i]=t,t.loading=!0,t.waiters=[],t.waiters.push(e),t.dataLoaded=function(l){let n=a$1.cache.include[l.settings.url];n.loading=!1,n.html=l.html,n.css=l.css,n.script=l.script,a$1.renderPass++,$lib.each(n.waiters,function(s){s.item.restoreContext(s.treeState),s.load.bind(s)(n);}),$lib.each(a$1.waiters,function(s){s.item.restoreContext(s.treeState),s.includeItem.bind(s)();}),delete n.waiters,a$1.clearWaiters(),a$1.postRenderFlag&&a$1.postRender();};}load(i){let e=this,t=e.item,l=t.element;if(i){if(!l.childNodes.length)if(t.loaded=!1,i.html){let n=t.children.length?i.cachedHtml:i.html;$lib.addHTML(n,t.element);}else l.appendChild(i.sourceElement.cloneNode(!0));if(!t.children.length)if(i.html)$bindary.createViewTree(l,t),$lib.each(t.children,n=>{n.included=!0;}),i.cachedHtml=l.innerHTML;else {let n=i.clone(t);n.included=!0,t.children.push(n);}}else t.loaded=!1;if(t.loaded)e.postRender();else {if(t.loaded=!0,t.component&&((!i||i.html)&&(t.context=a$1.components[t.component](t)),t.context?.load&&t.context.load(t)),a$1.call(t.load,[t]),t.observeDataKeyPath){let n=t.contextDataKeyPath?t.livePath[t.contextDataKeyPath]+a$1.dksc+t.observeDataKeyPath:t.observeDataKeyPath;t.context[t.observeDataKeyPath]=$bindary.observe(t.context[t.observeDataKeyPath],n,{viewTree:[t],reuseProxy:!1});}e.postRender();}}componentDataChange(i){let e=i.detail.eventPayload;item.restoreContext(e.treeState),i.detail.viewTree=[item];}createRepeatElement(){let i=this,e=i.item,t=e.repeatPlaceHolder,l=e.repeatElements,n=l[e.key];return (!n||n._bindaryPlaceholder||e.dataChange?.recreate||$lib.isEmpty(e.dataChange?.recreate)&&$bindary.defaultRecreateRule)&&(n=e.sourceElement.cloneNode(!0),n.removeAttribute("id"),n.setAttribute(a$1.attr.id,e.id),n.style.display=e.display,t.parentNode.insertBefore(n,t),l[e.key]=n),e.element=n,i.inRepeat=!0,i.createElement()}createElement(){let i=this,e=i.item,t=e.context,l=e.element,n=c$7(function(s,r){r==null?l.hasAttribute(s)&&l.removeAttribute(s):(typeof r=="object"&&(r=JSON.stringify(r)),l.getAttribute(s)!==r&&l.setAttribute(s,r));},"setValue");return i.treeState=e.captureTreeState(),l.style.display=e.display,$lib.each(e.attributes,function(s,r){if(e.attributeExpressions&&e.attributeExpressions[r]){let d=e.attributeExpressions[r],o=d(e.expressionTokenResolver.bind(e));n(r,o);}else {let d=s.match(a$1.singleWord)?e.getDataValue(e.createDataKey(s,!1),t):void 0;n(r,d??s);}}),$lib.each(e.events,function(s,r){$lib.has(l,r,a$1.customEventHandler)&&$lib.off(l,r,a$1.customEventHandler),$lib.on(l,r,a$1.customEventHandler,[s,e,i.treeState,null,!1,a$1.getMethodContext(s,e)]);}),i.clearInputEvents(),i.setElementValue(),i.bindInputEvents(),l}setElementValue(){let i=this,e=i.item,t=e.element,l=e.elementInfo,n=e.value,s=e.dataType;if(t===a$1.dataBindTrigger&&a$1.dataBindLive||!e.dataKey&&!e.expression||l.isSelect)return;if(e.viewFormatter&&(n=a$1.call(e.viewFormatter,[e,t,n])),n=i.formatValue(n),l.isRadio||l.isCheck){if(Array.isArray(n)){const d=$lib.isEmpty(t.value)||t.value==="on"?t.name:t.value;t.checked=n.includes(d);}else typeof n=="boolean"?t.checked=$lib.isEmpty(t.value)||s!="boolean"?n:a$1.toBoolean(t.value)==n:t.checked=n==t.value;t._bindaryLastState=`${t.checked}:${t.value}`;return}Array.isArray(n)&&(n=n.map(d=>i.formatValue(d)).join(",")),n=$lib.isEmpty(n,!1)?"":n.toString();const r=e.isHTML||t.contentEditable==="true";n=r?$bindary.trustHTML||e.trusted?n:$bindary.sanitizer?$bindary.sanitizer(n):a$1.sanitizer.sanitize(n):n,a$1.setElementValue(e,n,r),t._bindaryLastState=r?t.innerHTML:t.value;}formatValue(i){let e=this,t=e.item,l=t.elementInfo,n=t.dataType,s=t.element,r=null;if(typeof i=="string"&&/^\d{4}-\d{2}-\d{2}/.test(i)&&(r=new Date(i),$lib.isDate(r)&&!isNaN(r.getTime())&&(i=r)),$lib.isDate(i)){let d,o=r||i;return isNaN(o.getTime())?"":(l.isInput&&s.type=="date"?d="YYYY-MM-DD":n=="date"&&(d=$bindary.dateFormat.replace(a$1.timeRegEx,"")),a$1.formatDate(o,d))}else if(typeof i=="number"&&n?.startsWith("number")){const d=n.match(/^number(?:\((\d+)\))?$/),o=d?.[1]!=null?parseInt(d[1]):$bindary.decimalPrecision;return $lib.formatNumber(i,!1,!0,o,null,$bindary.decimalSeparator)}return i}clearInputEvents(){let i=this,e=i.item,t=e.element;$lib.has(t,"blur",a$1.eventHandler)&&$lib.off(t,"blur",a$1.eventHandler),$lib.has(t,"change",a$1.eventHandler)&&$lib.off(t,"change",a$1.eventHandler),$lib.has(t,"input",i.deferDataBind)&&$lib.off(t,"input",i.deferDataBind);}bindInputEvents(){let i=this,e=i.item,t=e.element;if(!e.inputBind)return;let l=i.treeState;$lib.defer(function(n,s){let r=this,d=r.item;n.isContentEditable?$lib.on(n,"blur",a$1.eventHandler,[r.dataBind.bind(r,!1),d,s,[],!0,null],r,!0):$lib.on(n,"change",a$1.eventHandler,[r.dataBind.bind(r,!1),d,s,[],!0,null],r,!0),($bindary.liveBind&&d.liveBind!==!1||d.liveBind)&&n.type!="hidden"&&$lib.on(n,"input",r.deferDataBind,[s],r,!0);}.bind(i,t,l));}deferDataBind(i,e){const t=this,l=t.item.element,n=Number(t.item.liveBind),s=!isNaN(n)&&n>=0?n:$bindary.liveBindDelay||0,r=function(o){a$1.eventHandler(this.dataBind.bind(this,!0),this.item,o,[],!0,null);}.bind(t,i);a$1.liveBindTimers.has(l)&&clearTimeout(a$1.liveBindTimers.get(l));const d=setTimeout(r,s);a$1.liveBindTimers.set(l,d);}dataBind(i){let e=this,t=e.item,l=t.elementInfo,n=t.element,s=a$1.getElementValue(t);(l.isCheck||l.isRadio?`${n.checked}:${s}`:s)!==n._bindaryLastState&&a$1.fireEvent("preDataBind",[t,n,function(){t.dataBind(i);}])!==!1&&t.dataBind(i);}postRender(){let i=this,e=i.item;e.children&&e.children.length&&$bindary.renderView(i.update,e.children),e.elementInfo&&e.elementInfo.isSelect&&e.dataKey&&i.setSelectValue(),i.inRepeat?a$1.rendered.push(e):e.isRendered=!0,e.component&&e.context?.postRender&&e.context.postRender(e),a$1.call(e.postRender,[e])===!1&&(e.element.style.display="none"),e.key=e.index=e.value=null,i.next();}setSelectValue(){let i=this,e=i.item,t=e.dataKey;$lib("#"+e.id).value=e.getDataValue(t,e.context);}};componyx.bindary_modules.Renderer;
43
+
44
+
45
+ var b$3=Object.defineProperty;var i$1=(r,t)=>b$3(r,"name",{value:t,configurable:!0});const e$1=componyx.bindary_modules.core,y$2=componyx.bindary_modules.connection,f$1=componyx.bindary_modules.dataUpdater,o$5=componyx.bindary_modules.router={getRouteIndex:i$1(function(r){if(r==null)return -1;let t,a,l=-1;for(;!a&&++l<$bindary.routes.length;)t=$bindary.routes[l].path,$bindary.routes[l].pathExp?a=r.match(t):a=t===r;return a?l:-1},"getRouteIndex"),load:i$1(function(r){e$1.routeError=!1;let t=o$5.getRouteIndex(r);if(o$5.trackHistory(r),t==-1)return $bindary.routes.length&&r&&o$5.error({type:"route",routePath:r}),t;if($lib.isEmpty($bindary.routeIndex))e$1.createTempViewContainer();else if(o$5.unload($bindary.routeIndex,r)===!1)return;let a=$bindary.routes[t],l=$lib.isEmpty(a.observing)?$bindary.observing:a.observing,c=a.data,d=e$1.parseExp(a,r,a.viewURL)||a.viewURL||"",u=e$1.parseExp(a,r,a.controllerURL)||a.controllerURL||"";e$1.routeCallbackId=$lib.guid(),e$1.viewURL=d?$bindary.viewRootURL+d:"",e$1.controllerURL=u?$bindary.controllerRootURL+u:"",e$1.busy=!0,$bindary.route=a,$bindary.routeIndex=t,$bindary.routePath=r,$bindary.controller=e$1.cache.controller[e$1.controllerURL],e$1.routeRdy[t]=!1,e$1.data=void 0,e$1.preLoad(),$bindary.routeData=e$1.cache.routeData[t]=e$1.cache.routeData[t]?e$1.cache.routeData[t]:l?$bindary.observe({},e$1.dataLabel[1]):{},$bindary.viewData=e$1.cache.viewData[r]=e$1.cache.viewData[r]?e$1.cache.viewData[r]:l?$bindary.observe({},e$1.dataLabel[2]):{},e$1.controllerURL&&$bindary.controller&&e$1.srcState(e$1.controllerURL,!0),e$1.viewURL&&(e$1.srcState(e$1.viewURL,!1),e$1.cache.view[e$1.viewURL]?$lib.addHTML(e$1.cache.view[e$1.viewURL].data,null,null,function(n){e$1.srcState(e$1.viewURL,!0),e$1.cache.view[e$1.viewURL].script=n.script,e$1.cache.view[e$1.viewURL].css=n.css,e$1.tempViewContainer.innerHTML="",o$5.loaded();}):e$1.xhr.push($lib.load({url:e$1.viewURL,onSuccess:i$1(function(n){e$1.srcState(e$1.viewURL,!0),e$1.cache.view[e$1.viewURL]={data:n.data,html:e$1.tempViewContainer.innerHTML,script:n.script,css:n.css,title:n.title},e$1.tempViewContainer.innerHTML="",o$5.loaded();},"onSuccess"),onError:i$1(n=>{o$5.error({type:"view",status:n.xhr?.status,url:e$1.viewURL});},"onError")},e$1.tempViewContainer,null))),$bindary.controller||($bindary.controller=e$1.cache.controller[e$1.controllerURL]={},e$1.controllerURL&&(e$1.srcState(e$1.controllerURL,!1),$lib.addScriptSource(e$1.controllerURL,null,{onComplete:i$1(function(n){e$1.srcState(e$1.controllerURL,!0),o$5.loaded();},"onComplete"),onError:i$1(function(n){delete e$1.cache.controller[e$1.controllerURL],o$5.error({type:"controller",url:e$1.controllerURL});},"onError")})));let s={dataRequest:y$2.createDataRequestMsg(c,a.dataServerLoad,e$1.routeCallbackId,!0),routeReady:i$1(function(n){o$5.loaded(n);},"routeReady")};e$1.fireEvent("dataRequest",[s])!==!1&&(a.dataConnect!=!1&&$bindary.dataServerURL?y$2.dataSend(s.dataRequest):o$5.loaded(null));},"load"),loaded:i$1(function(r){if(!e$1.routeError&&(r!==void 0&&(e$1.data=r),e$1.data!==void 0&&(!e$1.viewURL||e$1.cache.srcReady[e$1.viewURL])&&(!e$1.controllerURL||e$1.cache.srcReady[e$1.controllerURL]))){let t=o$5.isError(e$1.data);if(e$1.busy=!1,e$1.data&&!e$1.isRouteCallback(e$1.data)&&!t)return;t||e$1.load(),f$1.update(e$1.data);}},"loaded"),unload:i$1(function(r,t,a){let l=e$1.fireEvent("unload",[r,t,a]);if(l===!1)return window.history.replaceState({routePath:$bindary.routePath},"",getFullPath($bindary.routePath)),l;clearTimeout(e$1.liveBindTimerId),e$1.clearPendingUpdate(),$lib.each(e$1.xhr,function(c){c.abort(!0);}),$bindary.caching?($bindary.cacheRouteData||delete e$1.cache.routeData[$bindary.routeIndex],$bindary.cacheViewData||delete e$1.cache.viewData[$bindary.routePath],$bindary.cacheInternalTags||$bindary.clearCache(!0,!0,!0,!1,!1)):$bindary.clearCache(),e$1.viewURL=e$1.controllerURL=null,e$1.callbacks={},e$1.viewTree=null,e$1.xhr=[],$bindary.clearViewOnUnload&&e$1.getViewContainer()&&(e$1.getViewContainer().innerHTML=""),$bindary.route&&$bindary.route.dataServerUnload&&(a?$bindary.unload(null,$bindary.route.dataServerUnload):$bindary.dataSend(null,$bindary.route.dataServerUnload,null,null,!1));},"unload"),error:i$1(function(r){e$1.routeError||(e$1.routeError=!0,e$1.busy=!1,e$1.tempViewContainer&&(e$1.tempViewContainer.innerHTML=""),$lib.each(e$1.xhr,t=>{t.abort(!0);}),e$1.fireEvent("routeError",[Object.assign({routePath:$bindary.routePath,route:$bindary.route},r)]));},"error"),trackHistory:i$1(function(r){if(e$1.historyAction=!1,e$1.allowHistoryScroll&&window.history.length==e$1.historyLength&&$bindary.routePath!=r&&(e$1.historyAction=!0),$lib.isEmpty($bindary.routeIndex)){let t=window.JSON.parse(window.sessionStorage.getItem("scrollPosition"));t&&t.path===r?(e$1.historyAction=!0,e$1.scrollPos[r]=t):e$1.historyAction=!1;}e$1.historyLength=window.history.length,e$1.allowHistoryScroll=!$bindary.prettyURL;},"trackHistory"),isError(r){let t=!1;if(r)return $lib.isArray(r)||(r=[r]),$lib.each(r,function(a){return !(t=!!a.isError)}),t}};componyx.bindary_modules.router;
46
+
47
+
48
+ const e=componyx.bindary_modules.core,o$4=componyx.bindary_modules.scroller={routePath:"",timeout:null,anchor:null,pos:null,timerId:null,init(l,r){const t=e.scrollPos[$bindary.routePath];if(o$4.routePath=r,e.scrollableRoot=e.scrollableRoot||$lib.scrollableRoot(),e.scrollableRoot.scrollTop=0,clearTimeout(o$4.timerId),o$4.timeout=new Date().getTime()+$bindary.scrollRetryTimeout,!e.historyAction){(l||$bindary.anchorScroll)&&(o$4.anchor=e.getAnchor(),o$4.anchor&&(o$4.timerId=setTimeout(o$4.scrollToAnchor,0)));return}!t||!(t.y+t.x)||(o$4.pos=t,o$4.timerId=setTimeout(o$4.scrollToPosition,0));},scrollToAnchor(){let l;const{routePath:r,timeout:t,anchor:i}=o$4;$bindary.routePath===r&&((l=$lib("#"+i))||(l=document.getElementsByName(i)[0])?e.fireEvent("anchorScroll",[l],!0)!==!1&&$lib.scrollTo(l,null,2):new Date().getTime()<=t&&(o$4.timerId=setTimeout(o$4.scrollToAnchor,0)));},scrollToPosition(){const{routePath:l,timeout:r,pos:t}=o$4;if($bindary.routePath!==l||!e.historyAction)return;const i=e.scrollableRoot.scrollHeight,s=e.scrollableRoot.scrollWidth;new Date().getTime()>r||s>=t.width&&i>=t.height?(window.scrollTo(t.x,t.y),e.historyAction=!1):o$4.timerId=setTimeout(o$4.scrollToPosition,0);}};componyx.bindary_modules.scroller;
49
+
50
+
51
+ var E$2=Object.defineProperty;var x$2=($,e)=>E$2($,"name",{value:e,configurable:!0});const n$2=componyx.bindary_modules.core,V$1=componyx.bindary_modules.dataUpdater;class k$2{static{x$2(this,"TemplateBase");}resolveLivePath(e){let t=e,l=this;if(!e)return e;if(l.livePath[e])return l.livePath[e];let r=l.parent,a=l.getParentRepeater(),i=l.contextDataKey&&e!=l.contextDataKeyPath||l.repeatDataKeyPath&&e!=l.repeatDataKeyPath,s=i?l:r,h,p;if((e.endsWith(n$2.dksc+n$2.valueKey)||e.endsWith(n$2.dksc+n$2.key))&&(e=e.replace(new RegExp("\\"+n$2.dksc.split("").join("\\")+"(\\$value|\\$key)$"),"")),a&&(e=e.replace(a.repeatDataKeyPath,a.repeatDataKeyPath+n$2.dksc+a.key)),s&&(p=s.contextDataKeyPath,h=s.livePath?s.livePath[p]:null,h&&h!=p&&!e.startsWith(h)&&e.startsWith(p)&&(e=e.replace(p,h))),e.indexOf(n$2.ipc)>-1){let o=e.split(n$2.dksc),u=[];$lib.each(o,(y,f)=>{if(y.indexOf(n$2.ipc)==0){let d=l.indexKey[y.substr(n$2.ipc.length)];typeof d!="number"&&(u.push(d.join(n$2.dksc).substr(n$2.dksc.length+1)),d=l.getDataValue(d,s)),o[f]=d;}}),l.pointerPaths=u,e=o.join(n$2.dksc);}return this.livePath[t]=e}getParentRepeater(){let e=this;if(!e.inRepeat)return null;for(;e=e.parent;)if(e.repeatDataKeyPath&&!$lib.isEmpty(e.key))return e;return null}getDataChange(){let e=this,t=n$2.dataChanges,l=n$2.modelDataChanges,r=t["#"+e.updateId]||(l.size>0?l.get(e.context)||l.get(e.repeatValue):null);if(r||(e.repeatDataKey&&(r=t[e.livePath[e.repeatDataKeyPath]],e.rewriteArray(r)||(r=e.getChangedIndexes(r))),!r&&e.hasParentChange()&&(r=[])),!r){let a=e.resolveLivePaths();$lib.isEmpty(e.pointerPaths)||(a=a.concat(e.pointerPaths)),$lib.each(a,i=>(r=t[i]||null,!r&&i&&$lib.each(t,(s,h)=>(n$2.dataKeyMatch(i,h)&&(r=[]),r==null)),r==null));}e.dataChange=r||null;}rewriteArray(e){let t=!1;return $lib.each(e,l=>(t=$lib.isEmpty(l),!t)),t}hasParentChange(){let e=this,t=e.parent;if(!t||!t.dataChange)return !1;let l=t.updateId;return l&&n$2.dataChanges["#"+l]?(e.updateId=l,e.updateIdFromParent=!0):e.repeatDataKey||t.repeatDataKey?!1:e.paths.findIndex(r=>{let a=!1;return $lib.each(t.paths,i=>!(a=r.startsWith(i))),a})>-1}createDataKeyPath(e,t){let l=this;if(e==null)return e;let r=e.join(n$2.dksc),a=!0,i;if(e[0]==="$"&&(r=r.substr(1+n$2.dksc.length),a=!1),n$2.isKey(e[0],n$2.parentKey)){for(;n$2.isKey(e[0],n$2.parentKey);)i=l.parent,e=e.slice(1);t=i.contextDataKeyPath;}return a&&t?t+n$2.dksc+r:r}createDataKey(e,t){let l=this;return !e||e=="null"?e:(e=e.replace(/\[+([\w.$]+)\]+/g,function(r,a){let i=parseInt(a,10);return isNaN(i)?l.indexKey.push(n$2.addDataContainer(a.split(n$2.dksc),!1)):l.indexKey.push(i),n$2.dksc+n$2.ipc+(l.indexKey.length-1)}),$lib.startsWith(e,n$2.dksc+n$2.ipc)&&(e=e.substr(n$2.dksc.length)),n$2.addDataContainer(e.split(n$2.dksc),t))}getDataValue(e,t){let l=this;if(!e)return null;if(n$2.isKey(e[0],n$2.valueKey))return (t||"").toString();let r=0,a,i,s,h=t;if(e[0]==="$")t=$bindary,e=e.slice(1),$lib.indexOf(n$2.dataLabel,e[0])==-1&&(t=window);else if(n$2.isKey(e[0],n$2.parentKey))for(i=l.parent,a=i.context;n$2.isKey(e[0],n$2.parentKey);){for(;t===a&&i;)i=i.parent,a=i?i.context:null;e=e.slice(1),t=a;}if(n$2.escapeDataKey(e),n$2.isKey(e,n$2.key))return l.key;for(;t&&r<e.length;)e[r].indexOf(n$2.ipc)==0?(s=l.indexKey[e[r].substr(n$2.ipc.length)],typeof s!="number"&&(s=l.getDataValue(s,h)),t=t[s],r++):t=t[e[r++]];return t}}class C$5 extends k$2{static{x$2(this,"TemplateItem");}constructor(e,t,l,r,a){super();let i=this;i.root=r?r.root:i,e&&(i.id=e.id=e.id||n$2.getId(),e.setAttribute(n$2.attr.id,i.id)),i.parent=r,i.children=[],i.repeatPlaceHolder=null,i.trusted=null,i.includable=null,i.includableRoot=!1,i.included=!1,i.includeFile=null,i.include=null,i.isComponent=!1,i.loaded=!1,i.element=null,i.sourceElement=null,i.display=null,i.elementInfo=null,i.context=null,i.repeatValue=null,i.repeatItemIdValue=null,i.itemId=null,i.index=null,i.key=null,i.value=null,i.isRendered=!1,i.dataChange=null,i.indexKey=[],i.repeatElements={},i.dataType=null,i.inputBind=null,i.liveBind=null,i.updateId=null,i.updateIdFromParent=null,i.isHTML=!1,i.if=null,i.ifExpr=null,i.elseIf=null,i.elseIfExpr=null,i.else=null,i.conditionMet=null,i.dataFormatter=null,i.viewFormatter=null,i.preRender=null,i.postRender=null,i.load=null,i.filter=null,i.events=null,i.hasValue=null,i.dataKey=null,i.expressionValue=null,i.expression=null,i.attributes=null,i.attributeExpressions=null,i.repeatDataKey=null,i.repeatItemIdDataKey=null,i.contextDataKey=null,i.hasValueDataKeyPath=null,i.repeatDataKeyPath=null,i.contextDataKeyPath=null,i.dataKeyPath=null,i.dataKeyPaths=null,i.attributeDataKeyPaths=null,i.conditionalDataKeyPaths=null,i.treeState=null,i.treeStatePass=null,r?r.children.push(i):a!==!1&&n$2.viewTree.push(i),n$2.templateList.push(i),e&&i.parseTemplateElement(e,t,l,r);}parseTemplateElement(e,t,l,r){let a=this,{keep:i,live:s}=n$2.getTemplateFlags(e,["keep","live"]),h=s,p=i===null?$bindary.keepAttributes:i,o=r?r.contextDataKeyPath:null,u=o!=null,y=r?r.includable:!1,f=e.getAttribute(n$2.attr.include),d=!(e.hasAttribute(n$2.attr.repeat)||e.hasAttribute(n$2.attr.context)||u||y),g=e.getAttribute(n$2.attr.value),K=e.getAttribute(n$2.attr.html),A=e.hasAttribute(n$2.attr.bind),m=e.getAttribute(n$2.attr.bind)||g||K||"",I=e.getAttribute(n$2.attr.attributes),P=e.getAttribute(n$2.attr.hasValue),c=x$2((b,D)=>{(p||a[b]==null||!$lib.isEmpty(D))&&(a[b]=D!="null"?D:null);},"updateValue");p&&(a.hasValue=null,a.isHTML=!1),a.expression=null,a.ifExpr=null,a.elseIfExpr=null,a.dataKeyPaths=[],a.conditionalDataKeyPaths=[],K&&$lib.startsWith(K,"trust:")&&(K=K.substr(6),a.trusted=!0),a.includable=y,e.hasAttribute(n$2.attr.includable)&&(a.includableRoot=e.getAttribute(n$2.attr.includable)!="null",a.includable=e.getAttribute(n$2.attr.includable)=="null"?y:!0),a.isComponent=r?r.isComponent:!1,c("component",e.getAttribute(n$2.attr.component)),a.isComponent=a.component?!0:a.isComponent,a.parseInclude(f,u),a.isComponent&&(d=!1);const v=n$2.hasContentExpression(e);!A&&(v||m.indexOf("{{")!=-1)?(a.expressionValue=v?e.textContent:m,m=null,v&&(e.textContent="")):m=$lib.isEmpty(m)?null:a.createDataKey(m,d),a.isRendered=!1,a.display=e.style.display,a.sourceElement=a.tempElement=e,a.elementInfo=a.getElementInfo(e),c("dataType",(e.getAttribute(n$2.attr.type)||"").toLowerCase()),c("dataKey",m),c("inputBind",A),c("liveBind",h),c("updateId",e.getAttribute(n$2.attr.updateId)),c("itemId",e.getAttribute(n$2.attr.itemId)),c("attributes",I&&I!="null"?window.JSON.parse("{"+n$2.createJSON(I)+"}"):I),l?(a.attributes=a.attributes||{},$lib.each(l,(b,D)=>{a.attributes[D]=b;})):this.collectAttributes(e),a.dataKey||(a.expression=null),P&&P=="null"?a.hasValue=null:e.hasAttribute(n$2.attr.hasValue)&&(a.hasValue=$lib.isEmpty(P)?P.split(n$2.dksc):a.createDataKey(P,d)),m&&(a.isHTML=!$lib.isEmpty(K)),d=!(u||a.includable||a.isComponent),e.hasAttribute(n$2.attr.repeat)&&(c("repeatDataKey",a.createDataKey(e.getAttribute(n$2.attr.repeat),d)),c("repeatItemIdDataKey",a.createDataKey(e.getAttribute(n$2.attr.repeatItemId),!1)),a.includable||(c("repeatDataKeyPath",a.createDataKeyPath(a.repeatDataKey,o)),o=a.repeatDataKeyPath||o)),e.hasAttribute(n$2.attr.context)&&(c("contextDataKey",a.createDataKey(e.getAttribute(n$2.attr.context),!e.hasAttribute(n$2.attr.repeat)&&d)),a.includable||(c("contextDataKeyPath",a.createDataKeyPath(a.contextDataKey,o)),o=a.contextDataKeyPath||o)),e.hasAttribute(n$2.attr.observe)&&c("observeDataKeyPath",e.getAttribute(n$2.attr.observe)),a.includable||(a.dataKey&&(a.dataKeyPath=a.createDataKeyPath(a.dataKey,o)),a.hasValue&&a.hasValue[0].length>0&&(a.hasValueDataKeyPath=a.createDataKeyPath(a.hasValue,o))),a.contextDataKeyPath=o,c("dataFormatter",e.getAttribute(n$2.attr.dataFormatter)),c("viewFormatter",e.getAttribute(n$2.attr.viewFormatter)),c("preRender",e.getAttribute(n$2.attr.preRender)),c("if",e.getAttribute(n$2.attr.if)),c("elseIf",e.getAttribute(n$2.attr.elseIf)),a.else=e.hasAttribute(n$2.attr.else)&&e.getAttribute(n$2.attr.else)!="null",c("postRender",e.getAttribute(n$2.attr.postRender)),c("load",e.getAttribute(n$2.attr.load)),c("filter",e.getAttribute(n$2.attr.filter)),a.evaluateExpressions(),a.events=$lib.clone(a.events||{},t,!0,!0);for(let b in a.events)t[b]=="null"&&($lib.off(e,b,n$2.customEventHandler),delete a.events[b]);}evaluateExpressions(){const e=this,t=e.contextDataKeyPath,l={},r=x$2(function(a,i,s){if(s.endsWith("()"))return;let h=e.createDataKeyPath(e.createDataKey(s),t);a[h]||i.push(h),a[h]=!0;},"tokenHandler");e.dataKeyPaths=[],e.conditionalDataKeyPaths=[],e.if&&e.if.indexOf("{{")!=-1&&(e.ifExpr=n$2.expressionEngine.evaluate(e.if,r.bind(this,l,e.conditionalDataKeyPaths))),e.elseIf&&e.elseIf.indexOf("{{")!=-1&&(e.elseIfExpr=n$2.expressionEngine.evaluate(e.elseIf,r.bind(this,l,e.conditionalDataKeyPaths))),e.expressionValue&&(e.expression=n$2.expressionEngine.evaluate(e.expressionValue,r.bind(this,{},e.dataKeyPaths))),e.createAttributeExpressions();}parseInclude(e,t){if($lib.isEmpty(e))return;let l=this,r=!(t||l.includable||l.isComponent);l.includeFile=$lib.startsWith(e,"file:")?e.substr(5):null,l.includeFile&&(l.includeFile=$lib.startsWith(l.includeFile,"/")?l.includeFile:l.createDataKey(l.includeFile,r)),e=="null"||l.includeFile?l.include=null:l.include=$lib.startsWith(e,"#")?e:l.createDataKey(e,r);}getElementInfo(e){let t={};return t.name=e.nodeName.toLowerCase(),t.isInput=t.name=="input",t.isTextArea=t.name=="textarea",t.isSelect=t.name=="select",t.isCheck=t.isInput&&e.type=="checkbox",t.isRadio=t.isInput&&e.type=="radio",t}createAttributeExpressions(){const e=this,t=e.contextDataKeyPath,l={},r=x$2(a=>{if(a.endsWith("()"))return;let i=e.createDataKeyPath(e.createDataKey(a),t);l[i]||e.attributeDataKeyPaths.push(i),l[i]=!0;},"addKey");e.attributeExpressions={},e.attributeDataKeyPaths=[],$lib.each(e.attributes,(a,i)=>{if(a.match(n$2.singleWord))r(a);else {const s=n$2.expressionEngine.evaluate(a,h=>{r(h);});e.attributeExpressions[i]=s;}});}collectAttributes(e){let t=this,l="attributes",r=t[l]||{};$lib.each(e.attributes,a=>{a.name.indexOf(n$2.prefix)!=0&&a.value.match(n$2.hasBindingRegEx)!=null&&(r[a.name]=a.value);}),$lib.isEmpty(r)||(t[l]=r);}updateKeyPaths(){let e=this,t=e.contextDataKeyPath,l=e.parent.contextDataKeyPath;e.repeatDataKey&&(l=e.repeatDataKeyPath=e.createDataKeyPath(e.repeatDataKey,l)),e.contextDataKey&&(l=e.createDataKeyPath(e.contextDataKey,l)),e.dataKey&&(e.dataKeyPath=e.createDataKeyPath(e.dataKey,l)),e.hasValue&&(e.hasValueDataKeyPath=e.createDataKeyPath(e.hasValue,l)),e.contextDataKeyPath=l;const r=x$2((a,i,s)=>{a.startsWith(t)&&(s[i]=l+a.slice(t.length));},"replaceContext");$lib.each(e.dataKeyPaths,r),$lib.each(e.attributeDataKeyPaths,r),$lib.each(e.conditionalDataKeyPaths,r);}resolveLivePaths(e){let t=this;if(e!==!1&&t.paths)return t.paths;let l=Array.from(new Set([t.repeatDataKeyPath,t.contextDataKeyPath,t.dataKeyPath,t.hasValueDataKeyPath,t.observeDataKeyPath].concat(t.dataKeyPaths||[]).concat(t.attributeDataKeyPaths||[]).concat(t.conditionalDataKeyPaths||[]))).filter(r=>r!=null);return $lib.each(l,(r,a)=>{l[a]=r?t.resolveLivePath(r):null;}),t.paths=l}getChangedIndexes(e){let t=this,l,r=t.resolveLivePath(t.repeatDataKeyPath),a=r.split(n$2.dksc).length,i=V$1.initUpdateRules({},e),s=i[i.length-1];return s.keys=[],$lib.each(n$2.dataChanges,(h,p)=>{if($lib.startsWith(p,r)){let o=p.split(n$2.dksc),u=o[a];u!==void 0&&s.keys.indexOf(u)==-1&&(s.keys.push(u),l=!0);}}),l?i:e}initRepeater(e,t,l,r){let a=this;a.repeatElements||(a.repeatElements={}),r&&(a.clearRepeater(e),l?.isConnected||(l=null));let i=a.repeatPlaceHolder;i?.isConnected?l?.isConnected&&l.parentNode.insertBefore(i,l):(a.repeatPlaceHolder=n$2.createPlaceHolder(a,t,l),a.repeatPlaceHolder.removeAttribute("id"),e&&$lib.remove(e));}clearRepeater(e){let t=this,l=t.resolveLivePath(t.repeatDataKeyPath)+n$2.dksc;$lib.each(n$2.repItemClones,(i,s)=>{$lib.startsWith(s,l)&&delete n$2.repItemClones[s];}),$lib.each(t.repeatElements,i=>{$lib.remove(i);}),(t.parent?.element||document).querySelectorAll(`[${n$2.attr.id}="${t.id}"]`).forEach(i=>{i!==e&&i!==t.repeatPlaceHolder&&i.remove();}),t.repeatElements={};}isActiveRepeatItem(){let e=this,t=e.itemId,l=e;if($lib.isEmpty(t))return !0;for(;l&&$lib.isEmpty(l.repeatItemIdValue);)l=l.parent;return !l||l.repeatItemIdValue===t}getIncludeItem(){let e=this,t=$lib.startsWith(e.include,"#"),l=t?e.include.substr(1):e.getDataValue(e.include,!e.component&&e.parent?e.parent.context:e.context);return e.getTemplateItemById(l)}getTemplateItemById(e){if($lib.isEmpty(e))return null;let t=$lib.indexOf(n$2.templateList,function(l){return l.id==e});return t>-1?n$2.templateList[t]:null}dataBind(e){let t=this;if(!t)return;let l=t.element,r=n$2.getElementValue(t),a=t.elementInfo,i=t.dataKey.slice(0),s=t.dataKey[t.dataKey.length-1],h=a.isRadio||a.isCheck,p=h&&($lib.isEmpty(r)||a.isCheck&&r=="on"),o=t.dataType,u;if(i.pop(),l._bindaryLastState=a.isRadio||a.isCheck?`${l.checked}:${r}`:r,t.dataFormatter?r=n$2.call(t.dataFormatter,[t,l,r]):h?p?r=l.checked:(r=t.castValue(r,o),!l.checked&&o=="boolean"&&(r=!r)):o&&(r=t.castValue(r,o)),n$2.observed=!1,t.repeatValue)n$2.isKey(t.dataKey,n$2.valueKey)?(u=t.repeatValue)&&(u[t.key]=r):(u=t.getDataValue(i,t.repeatValue[t.key]))&&(u[s]=r);else if(t.dataKey.length==1?u=t.context:u=t.getDataValue(i,t.context),Array.isArray(u[s])&&a.isCheck&&o!=="boolean"){const f=u[s],d=!$lib.isEmpty(r)&&r!=="on"?r:l.name;if(l.checked)f.includes(d)||f.push(d);else {const g=f.indexOf(d);g>-1&&f.splice(g,1);}}else if(Array.isArray(u[s])&&typeof r=="string")if($lib.isEmpty(r))u[s]=[];else {const f=r.split(",").map(d=>d.trim()).filter(d=>d.length>0);u[s]=o?f.map(d=>t.castValue(d,o)):f;}else u&&(a.isCheck&&!p&&!l.checked&&o!=="boolean"&&(r=""),u[s]=r);n$2.dataBindLive=!1,u&&(n$2.dataBindLive=e,$bindary.dataBindTrigger=l);const y=u?t.repeatValue&&n$2.isKey(t.dataKey,n$2.valueKey)?u[t.key]:u[s]:r;n$2.fireEvent("postDataBind",[t,l,u,y]),u&&!n$2.observed&&($bindary.dataChange(t.resolveLivePath(t.dataKeyPath),null,null,!1),$bindary.updateViewDelayed());}castValue(e,t){return t?t=="boolean"?n$2.toBoolean(e):$lib.isEmpty(e)&&(t=="date"||t=="datetime"||t=="number")?null:t=="date"?$lib.parseDate(e,$bindary.dateFormat.replace(n$2.timeRegEx,"")):t=="datetime"?$lib.parseDate(e,$bindary.dateFormat):t.startsWith("number")?parseFloat(e.replace($bindary.decimalSeparator,".")):e:e}clone(e){let t=x$2((l,r)=>{let a=new componyx.bindary_modules.TemplateItem(null,null,null,null,!1);return $lib.each(l.children,i=>{a.children.push(t(i,a));}),$lib.each(l,(i,s)=>{n$2.omit[s]===void 0&&typeof i!="function"&&!$lib.isEmpty(i)&&(a[s]=i);}),a.evaluateExpressions(),a.livePath={},a.parent=r,a.root=l.root,a},"cloner");return t(this,e||this.parent)}getClone(){let e=this,t=e.resolveLivePath(e.repeatDataKeyPath),l=n$2.repItemClones[t];return l||(n$2.repItemClones[t]=e.clone())}defineContext(e){let t=this,l;t.context=e,t.contextDataKey?t.context=t.getDataValue(t.contextDataKey,e):t.dataKey&&t.dataKey[0]=="$"&&(l=$lib.indexOf(n$2.dataLabel,t.dataKey[1]),l>-1&&(t.context=$bindary[n$2.dataLabel[l]]));}setContextValue(){let e=this,t=e.context;if(!($lib.isEmpty(e.dataKey)&&!e.expression))if(e.expression){let l=e.expression(e.expressionTokenResolver.bind(e));e.value=l??"";}else e.value=e.getDataValue(e.dataKey,t);}expressionTokenResolver(e){let t=this;if(e.endsWith("()")){const l=e.slice(0,-2);if(t.isComponent){let r=t;for(;r&&!r.component;)r=r.parent;if(r?.context?.[l])return r.context[l](t)}return $bindary.controller?$bindary.controller[l](t):""}else return t.getDataValue(e.split("."),t.context)}captureTreeState(){let e=this,t=e.parent?.treeStatePass==n$2.renderPass?e.parent.treeState.slice():e.parent?.captureTreeState().slice()||[];return t.push({key:e.key,index:e.index,inRepeat:e.inRepeat,repeatItemIdValue:e.repeatItemIdValue,context:e.context,value:e.value,element:e.element,livePath:$lib.clone({},e.livePath)}),e.treeState=t,e.treeStatePass=n$2.renderPass,t}restoreContext(e){let t=this,l=e.length,r;for(t.treeState=e;--l>-1;)r=e[l],t.key=r.key,t.index=r.index,t.inRepeat=r.inRepeat,t.repeatItemIdValue=r.repeatItemIdValue,t.context=r.context,t.value=r.value,t.element=r.element,t.livePath=r.livePath,t=t.parent;}}componyx.bindary_modules.TemplateItem=C$5;({TemplateItem:componyx.bindary_modules.TemplateItem});
52
+
53
+
54
+ (async function(window){var ye=Object.defineProperty;var l=(d,T)=>ye(d,"name",{value:T,configurable:!0});(async function(d){componyx.bindary_modules=componyx.bindary_modules||{},componyx.bindary_modules.loaded=(async()=>{})(),await componyx.bindary_modules.loaded;const T=componyx.base_modules.Sanitizer,t=componyx.bindary_modules.core,U=componyx.bindary_modules.dataUpdater,h=componyx.bindary_modules.connection,O=componyx.bindary_modules.proxyManager,j=componyx.bindary_modules.Renderer,P=componyx.bindary_modules.router,M=componyx.bindary_modules.scroller,k=componyx.bindary_modules.TemplateItem,J=componyx.bindary_modules.ExpressionEngine;t.scroller=M,t.expressionEngine=new J,t.sanitizer=new T,t.initializePrefix(t.shortPrefix),t.initCache(),componyx.bindary={launchOnLoad:!0,dataServerURL:null,relativeDataServerURL:!1,viewRootURL:"",controllerRootURL:"",includeRootURL:"",get websocketSupport(){return "WebSocket"in d},useWebSocket:!0,secure:null,xhrUpdateInterval:null,scrollRetryInterval:50,scrollRetryTimeout:2e3,liveBind:!0,liveBindDelay:0,onWebSocketOpen:$lib.createEvent("onWebSocketOpen"),onWebSocketClose:$lib.createEvent("onWebSocketClose"),onPreDataBind:$lib.createEvent("onPreDataBind"),onPostDataBind:$lib.createEvent("onPostDataBind"),onDataError:$lib.createEvent("onDataError"),onRouteError:$lib.createEvent("onRouteError"),onPreLoad:$lib.createEvent("onPreLoad"),onDataRequest:$lib.createEvent("onDataRequest"),onLoad:$lib.createEvent("onLoad"),onPreDataUpdate:$lib.createEvent("onPreDataUpdate"),onPostDataUpdate:$lib.createEvent("onPostDataUpdate"),onPreRender:$lib.createEvent("onPreRender"),onPostRender:$lib.createEvent("onPostRender"),onPostLoad:$lib.createEvent("onPostLoad"),onVisibilityChange:$lib.createEvent("onVisibilityChange"),onAnchorScroll:$lib.createEvent("onAnchorScroll"),onUnload:$lib.createEvent("onUnload"),idPrefix:"bindary_",dateFormat:"MM/dd/yyyy hh:mm",decimalSeparator:".",decimalPrecision:null,clientId:null,dataRequest:null,route:null,routeIndex:null,routePath:"",rootPath:"/",baseTitle:"",controller:{},appData:{},routeData:{},viewData:{},routes:[],detectOutsideView:!0,dirtyChecks:!1,prettyURL:!0,linkDispatching:!0,clearViewOnUnload:!1,connected:!1,keepAttributes:!1,anchorScroll:!0,caching:!0,cacheInternalTags:!1,cacheRouteData:!0,cacheViewData:!1,defaultUpdateRule:!1,equalityCheck:!0,defaultRecreateRule:!1,observing:!0,observeDuringRender:!1,autoUpdateView:!0,trustHTML:!1,reloadPageOnWebSocketServerError:!0,reloadRouteOnPageRestore:!0,dataBindTrigger:null,sanitizer:null,get onDataBind(){return console.warn("'onDataBind' is deprecated, mapped to 'onPreDataBind'."),$bindary.onPreDataBind},get useShorthand(){return t.useShorthand},set useShorthand(e){t.useShorthand=e,t.initializePrefix(e===!0?t.shortPrefix:t.longPrefix);},get hyphenatedAttributes(){return t.hyphenatedAttributes},set hyphenatedAttributes(e){t.initializePrefix(t.prefix,e);},get attributePrefix(){return t.prefix},setCustomPrefix:l(function(e){t.initializePrefix(e);},"setCustomPrefix"),launch:l(function(){_();},"launch"),addRoute:l(function(e){return e.pathExp=e.path instanceof RegExp,$bindary.routes.push(e),$bindary.routes.length-1},"addRoute"),loadRoute:l(function(e){if($lib.isEmpty(e))e=t.getRoutePath();else if($bindary.prettyURL){let n=t.getFullPath(e);e=t.removeAnchor(e),$bindary.routePath!=e&&d.history.pushState({routePath:e},"",n);}return P.load(e)},"loadRoute"),dispatchLinks:l(function(e){t.dispatchLinks(e);},"dispatchLinks"),dispatchLink:l(function(e){t.dispatchLink(e);},"dispatchLink"),addComponent:l(function(e,n){t.components[e]=n;},"addComponent"),observe:l(function(e,n,r){return r&&r.viewTree&&(r.treeState=[],$lib.each(r.viewTree,(i,o)=>{r.treeState[o]=i.captureTreeState();})),O.createProxy(e,n,r)},"observe"),getProxyManager:l(function(){return O},"getProxyManager"),stopObserving:l(function(){t.observing=!1;},"stopObserving"),startObserving:l(function(){t.observing=!0;},"startObserving"),registerValueHandler:l(function(e,n,r){const i=$lib.guid();return t.valueHandlers.push({id:i,matcher:e,getValue:n,setValue:r}),i},"registerValueHandler"),unregisterValueHandler:l(function(e){const n=t.valueHandlers.findIndex(r=>r.id===e);n!==-1&&t.valueHandlers.splice(n,1);},"unregisterValueHandler"),lock:l(function(e,n){if(!e&&!n)t.dataLocks["#"]=t.dataLocks["#"]||[];else {let r=$lib.format("{0}{1}",n||t.dataLabel[2],e?t.dksc+e:"");t.dataLocks[r]=t.dataLocks[r]||[];}},"lock"),unlock:l(function(e,n,r,i){let o;!e&&!n?o="#":o=$lib.format("{0}{1}",n||t.dataLabel[2],e?t.dksc+e:""),r||(t.autoUpdateView=!1,$lib.each(t.dataLocks[o],function(u){u();}),t.autoUpdateView=!0,t.fireEvent("postDataUpdate")),delete t.dataLocks[o],!r&&i!=!1&&g();},"unlock"),dataBind:l(function(e){$lib.each(e,function(n){let r=R(n);r&&r.dataBind();});},"dataBind"),dataChangeForModel:l(function(e,n,r){t.modelDataChanges.set(e,U.initUpdateRules(t.modelDataChanges.get(e),n)),r!=!1&&g();},"dataChangeForModel"),dataChangeForId:l(function(e,n,r){t.dataChanges["#"+e]=U.initUpdateRules(n,t.dataChanges["#"+e]),r!=!1&&g();},"dataChangeForId"),dataChange:l(function(e,n,r,i){e=$lib.isEmpty(n)?e:$lib.format("{0}.{1}",typeof n=="number"?t.dataLabel[n]:n,e),t.dataChanges[e]=U.initUpdateRules(r,t.dataChanges[e]),i!=!1&&g();},"dataChange"),clearDataChanges:l(function(){t.updatePending=!1,t.pendingComplete=!1,t.busy||(t.dataChanges={});},"clearDataChanges"),dataSendAsync:l(function(e,n,r,i){return new Promise(o=>{this.dataSend(e,n,r,o,i);})},"dataSendAsync"),dataSend:l(function(e,n,r,i,o){let u=$lib.guid(),a=function(s,v,D){return v&&(t.updatePending=!1,t.pendingComplete=!1),s&&s(D),v}.bind(d,i,o);return $lib.isEmpty(r)||($bindary.clientId=r),t.callbacks[u]=a,h.dataSend(h.createDataRequestMsg(e,n,u),!0)},"dataSend"),unload:l(function(e,n,r){r!=null&&($bindary.clientId=r);let i;if(e=h.createDataRequestMsg(e,n),t.useWS())h.dataSend(e);else return navigator.sendBeacon?i=navigator.sendBeacon(h.getDataServerURL($bindary.dataServerURL),e):$lib.xhr({url:h.getDataServerURL($bindary.dataServerURL),data:e,async:!1}),i},"unload"),updateTemplateItem:l(function(e,n,r){return ue(e,n,r)},"updateTemplateItem"),removeTemplateItem:l(function(e){const n=R(e);if(!n)return;A(n);let r=$lib.indexOf(t.templateList,i=>i.id===n.id);if(r>-1&&t.templateList.splice(r,1),n.parent){const i=n.parent.children;r=i.findIndex(o=>o.id===n.id),r>-1&&i.splice(r,1);}else r=t.viewTree.findIndex(i=>i.id===n.id),r>-1&&t.viewTree.splice(r,1);n.children=[];},"removeTemplateItem"),updateView:l(function(e,n,r){n&&L(),g(e,r,!0);},"updateView"),updateViewDelayed:l(function(e,n,r){n&&L(),te(e,r);},"updateViewDelayed"),createViewTree:l(function(e,n){L(e,n);},"createViewTree"),renderView:l(function(e,n){I(e,n);},"renderView"),disconnect:l(function(){h.disconnect();},"disconnect"),getTemplateItem:l(function(e){return R(e)},"getTemplateItem"),getViewContainer:l(function(){return t.viewContainer},"getViewContainer"),getAnchor:l(function(){return t.getAnchor()},"getAnchor"),getBaseHref:l(function(){return t.getBaseHref()},"getBaseHref"),getCache:l(function(){return t.cache},"getCache"),clearCache:l(function(e,n,r,i,o){t.clearCache(e,n,r,i,o);},"clearCache")},d.$bindary=componyx.bindary,Object.defineProperty(d.$bindary,"busy",{get:l(function(){return t.busy},"get")}),Object.defineProperty(d.$bindary,"dataKeySeparatorChar",{get:l(function(){return t.dksc},"get"),set:l(function(e){t.dksc=e;},"set")}),Object.defineProperty(d.$bindary,"indexPointerChar",{get:l(function(){return t.ipc},"get"),set:l(function(e){t.ipc=e;},"set")});function _(){let e=t.getRoutePath();t.allowHistoryScroll=!$bindary.prettyURL,t.secure=t.getLocationOrigin().match(/^https:\/\//)!=null,$bindary.prettyURL||($lib.has(d,"hashchange",w)||$lib.on(d,"hashchange",w),$lib.has(document,"click",H)||$lib.on(document,"click",H)),$bindary.observing&&($bindary.appData=$bindary.observe($bindary.appData,t.dataLabel[0]),$bindary.routeData=$bindary.observe($bindary.routeData,t.dataLabel[1]),$bindary.viewData=$bindary.observe($bindary.viewData,t.dataLabel[2])),X(),$bindary.linkDispatching&&t.dispatchLinks(),t.launchRoutePath=$bindary.routePath,$lib.isEmpty(e)&&!$lib.isEmpty($bindary.routePath)&&(e=t.removeAnchor($bindary.prettyURL?$bindary.routePath:$bindary.routePath.replace(/^[\/#!]+/,""))),$bindary.routePath=null;let n=$lib.clone({},Y());n.routePath=e,d.history.replaceState(n,"",d.location.href),P.load(e)==-1&&g(!0);}l(_,"launch");function X(){let e=$lib(null,document,"head",!0);$lib(null,e,"base",!0)||$lib.element(e,null,"base",null,{href:"/"});}l(X,"createBaseHref");function Y(){try{return d.history.state}catch(e){return $lib.log(e.message),null}}l(Y,"getHistoryState");function G(e){clearTimeout(t.scrollTimerId),t.scrollTimerId=setTimeout(Q,100);}l(G,"scroll");function Q(){let e=$bindary.routePath;if($lib.isEmpty(e))return;let n=$lib.getWindowSize(),r=d.pageXOffset||document.documentElement.scrollLeft||document.body.scrollLeft||0,i=d.pageYOffset||document.documentElement.scrollTop||document.body.scrollTop||0;t.scrollPos[e]={path:e,x:r,y:i,width:n.width+r,height:n.height+i},d.sessionStorage.setItem("scrollPosition",d.JSON.stringify(t.scrollPos[e]));}l(Q,"saveScrollPosition");function H(){t.allowHistoryScroll=!1,clearTimeout(t.historyTimerId),t.historyTimerId=setTimeout(function(){t.allowHistoryScroll=!0;},0);}l(H,"docClick");function w(e){let n=t.getHashtag();t.isBookmarkJump(n)?M.init(!0):($lib.isEmpty(n)&&(n=t.launchRoutePath),P.load(n));}l(w,"hashChange");function Z(e){let n=e&&e.state&&!$lib.isEmpty(e.state.routePath)?e.state.routePath:null,r=t.getAnchor();!$bindary.prettyURL&&!n||(t.allowHistoryScroll=!0,n||(n=t.getRoutePath()),!(!$lib.isEmpty(r)&&t.isBookmarkJump(n+"#"+r))&&P.load(n));}l(Z,"popState");function ee(){t.fireEvent("onVisibilityChange")!==!1&&document.visibilityState==="visible"&&t.useWS()&&$bindary.connected&&h.dataSend(h.createDataRequestMsg(null,"",null,!1,!0));}l(ee,"visibilityChange");function te(e,n){if(!n){if(t.pendingFullRender=t.pendingFullRender||e,t.pendingUpdate)return;t.pendingUpdate=!0,queueMicrotask(function(){t.pendingUpdate&&g(t.clearPendingUpdate());});return}if(t.pendingUpdate)return;const r=n.filter(i=>!t.pendingTreeItems.has(i));r.length!==0&&(r.forEach(i=>t.pendingTreeItems.add(i)),t.pendingTreeBatch=t.pendingTreeBatch.concat(r),t.pendingPartialFullRender=t.pendingPartialFullRender||e,!t.pendingPartialUpdate&&(t.pendingPartialUpdate=!0,queueMicrotask(function(){if(!t.pendingPartialUpdate)return;const{batch:i,complete:o}=t.clearPendingPartialUpdate();g(o,i,!0);})));}l(te,"updateViewDelayed");function g(e,n,r){const i=$bindary.dataBindTrigger;if($bindary.dataBindTrigger=null,n||t.clearPendingUpdate(),!t.viewTree&&!n&&(e=!0,ne()),!e&&!t.templateUpdate&&$lib.isEmpty(t.dataChanges)&&t.modelDataChanges.size==0){t.postRender();return}t.templateUpdate=!1,t.preRender(i),I(!e,n,r);}l(g,"updateView");function ne(){t.viewURL&&(t.getViewContainer().innerHTML=t.cache.view[t.viewURL].html),L();}l(ne,"createView");function I(e,n,r){let i=r||!n,o,u=l(function(a,s){a&&(s.inRepeat||s.included)&&(a.removeAttribute("id"),a.setAttribute(t.attr.id,s.id));},"setIdAttr");i&&t.renderPass++,n||(o=d),n=n||t.viewTree||[],$lib.each(n,function(a,s,v,D,E){let c,y,p=a.parent;if(a.livePath={},a.dataChange=null,c=null,a.updateIdFromParent&&(a.updateIdFromParent=a.updateId=null),p&&(o=p.context,p.isComponent&&(a.isComponent=!0)),!a.included&&p&&(a.included=p.included),a.inRepeat=!1,p&&(p.inRepeat||p.repeatDataKeyPath)&&(a.key=p.key,a.inRepeat=!0,a.repeatDataKey&&(a=a.getClone())),c=ae(a),a.includable&&!a.included)return $lib.remove(c),E();if(a.component?a.loaded&&a.inRepeat&&!a.observeDataKeyPath&&(a.context=null,a.element=c,a.context=t.components[a.component](a)):a.context=o,a.includable&&a.updateKeyPaths(),ie(c,a,v[s-1])||!c)return E();if(!a.component&&!a.repeatDataKey&&a.defineContext(a.context),a.resolveLivePaths(!1),e&&(a.getDataChange(),a.dataChange==null&&a.isRendered))return (!$bindary.dirtyChecks||le(a))&&!a.repeatDataKey&&a.children&&a.children.length&&(a.element=c,I(e,a.children),a.component&&a.context?.postRender&&a.context.postRender(a)),E();if(!a.repeatDataKey&&c&&c._bindaryPlaceholder){let V=a.sourceElement.cloneNode(!0);c.parentElement.replaceChild(V,c),a.element=c=V,u(c,a);}else !a.repeatDataKey&&c&&u(c,a);let m=new j(a,c,e,E);a.repeatDataKey?(a.repeatValue=y=a.getDataValue(a.repeatDataKey,o),!$lib.isEmpty(a.repeatElements)&&$lib.contains(p?p.element:document,a.repeatElements[0])&&re(a.dataChange)?$lib.each(a.dataChange,function(b,W,ce,fe,C){let pe=0,x=a.repeatElements,z=$lib.isArray(y),q=(function(){for(let f in x)return x[f].parentNode})();b.removeCount>0&&z&&oe(a,b),$lib.each(b.keys||[],function(f,F,K,be,B){f=f.toString(),$lib.isEmpty(y?.[f])?(x[f]&&($lib.remove(x[f]),delete x[f]),B()):(x[f]||a.initRepeater(null,q),m.next=B,m.dataChange=b,m.render(y[f],f));},null,null,!0,function(){if(b.addCount>0&&z){let f=$lib.isEmpty(b.addIndex)?y.length-b.addCount:b.addIndex;a.initRepeater(null,q,x[f.toString()]),$lib.each(y,function(F,K,be,B,he){return m.next=he,m.render(F,K),++pe!=b.addCount},null,f,!0,C);}else C();});},null,null,!0,E):(a.filter&&(y=t.call(a.filter,[a,y])),a.dataChange=[],a.initRepeater(c,c.parentNode,c.nextElementSibling,!0),$lib.each(y||[],function(b,W,ce,fe,C){m.next=C,m.render(b,W);},null,null,!0,E))):(a.dataChange=[],m.render());},null,null,!0,i?t.postRender:null);}l(I,"renderView");function re(e){let n=!0;return $lib.isEmpty(e)?!1:($lib.each(e,function(r){return n=!$lib.isEmpty(r.keys)||!$lib.isEmpty(r.addCount)||!$lib.isEmpty(r.removeCount)}),n)}l(re,"dataChangeIsUpdate");function ae(e){let n;if(n=$lib("#"+e.id),!n&&(!e.includable||e.included)){let r=e.parent&&e.parent.element?e.parent.element:null;if(n=$lib(i=>i.getAttribute(t.attr.id)===e.id,r,e.sourceElement.nodeName,!0),!n&&r){let i=r.querySelectorAll("template");$lib.each(i,o=>{if(n=o.content.getElementById(e.id),n)return !1});}}return n}l(ae,"getElement");function ie(e,n,r){let i=n.else||!$lib.isEmpty(n.elseIf)||!$lib.isEmpty(n.if),o=!1,u;if(!i)return !1;const a=l(()=>n.ifExpr?!!n.ifExpr(n.expressionTokenResolver.bind(n)):!!t.call(n.if,[n]),"evalIf"),s=l(()=>n.elseIfExpr?!!n.elseIfExpr(n.expressionTokenResolver.bind(n)):!!t.call(n.elseIf,[n]),"evalElseIf");return n.if?(u=a(),o=!(n.conditionMet=u)):(n.elseIf||n.else)&&(o=n.conditionMet=r.conditionMet,o||(u=n.elseIf?s():!0,o=!(n.conditionMet=u))),o&&e&&!e._bindaryPlaceholder&&t.setItemPlaceHolder(n,e),o}l(ie,"skipItem");function le(e){if(t.modelDataChanges.size)return !0;let n=!1,r=e.resolveLivePaths();return $lib.each(r,function(i){return $lib.each(t.dataChanges,function(o,u){return t.dataKeyMatch(u,i)&&(n=!0),!n}),!n}),n}l(le,"checkRecursive");function oe(e,n){let r=e.repeatElements;for(let i=0;i<n.removeCount;++i){let o=(n.removeIndex+i).toString();$lib.remove(r[o]),delete r[o];}}l(oe,"removeRepeatElements");function ue(e,n,r){let i=R(e),o,u;if(i)i.parseTemplateElement(e,S(e),null,i.parent);else {for(o=e.parentNode;o;)u=R(o),u!=null?(i=new k(e,S(e),null,u),o=null):o=o.parentNode;u||(i=new k(e,S(e),null));}return r&&A(i),n&&L(e,i),t.templateUpdate=!0,i}l(ue,"updateTemplateItem");function A(e){!e||!Array.isArray(e.children)||(e.children.forEach(n=>{A(n);const r=$lib.indexOf(t.templateList,i=>i.id===n.id);r>-1&&t.templateList.splice(r,1);}),e.children=[]);}l(A,"removeTemplateItemTree");function R(e){let n=e.getAttribute&&e.getAttribute(t.attr.id)||e.id;if($lib.isEmpty(n))return null;let r=$lib.indexOf(t.templateList,function(i){return i.id===n});return r>-1?t.templateList[r]:null}l(R,"getTemplateItem");function L(e,n){let r,i,o=[],u;for(e||(t.templateList=[],t.viewTree=[]),N($bindary.detectOutsideView?e||document.documentElement:t.getViewContainer(),n,o),u=0;u<o.length;++u)$lib.remove(o[u]);for(u=0;u<t.templateList.length;++u)r=t.templateList[u].sourceElement,!(!r||t.keepAttributes(r))&&(i=S(r),$lib.each(t.attr,function(a,s){s!="view"&&s!="id"&&r.removeAttribute(a);}),$lib.each(i,function(a,s){r.removeAttribute(t.attr.on+"-"+s);}));}l(L,"createViewTree");function N(e,n,r){let i=e.nodeName=="TEMPLATE"&&e.content?e.content.firstChild:e.firstChild,o,u,a,s,v;for(;i;){if(s=i.nodeType,v=s==1?se(i):null,o=s==1?v.events:null,u=s==1?v.attributes:null,a=n,s!=1||!i.hasAttribute(t.attr.ignore)){const D=s==1?t.resolveContentExpression(i):!1;(s==1&&(de(i)||!$lib.isEmpty(o)||!$lib.isEmpty(u))||D)&&((a=R(i))?a.parseTemplateElement(i,o,u,a.parent):a=new k(i,o,u,n),a.includableRoot&&r.push(i)),s==1&&N(i,a,r);}i=i.nextSibling;}}l(N,"iterate");function se(e){let n,r={},i={};for(let o=0;o<e.attributes.length;++o)n=e.attributes[o],$lib.startsWith(n.nodeName,t.attr.on)?r[n.nodeName.substr(t.attr.on.length+1)]=n.value:n.name.indexOf(t.prefix)!=0&&t.hasExpression(n.value)&&(i[n.name]=n.value);return {events:r,attributes:i}}l(se,"getEventsAndAttributes");function S(e){let n,r={};for(let i=0;i<e.attributes.length;++i)n=e.attributes[i],$lib.startsWith(n.nodeName,t.attr.on)&&(r[n.nodeName.substr(t.attr.on.length+1)]=n.value);return r}l(S,"getEvents");function de(e){const n=["view","id","keep","live"];for(let r in t.attr)if(!n.includes(r)&&e.hasAttribute(t.attr[r]))return !0;return !1}l(de,"hasTemplateAttribute"),$lib.on(document,"visibilitychange",ee),$lib.on(d,"scroll",G),$lib.on(d,"popstate",Z),$lib.on(d,"pageshow",e=>{e.persisted&&$bindary.reloadRouteOnPageRestore&&P.load(t.getRoutePath());}),$lib.on(d,"pagehide",()=>{$lib.isEmpty($bindary.routeIndex)||P.unload($bindary.routeIndex,$bindary.routePath,!0);}),$.ready(async()=>{await componyx.bindary_modules.loaded,$.defer(()=>{$bindary.launchOnLoad&&_();});}),componyx.bindary.TemplateItem=componyx.bindary_modules.TemplateItem;})(window);
55
+ })(window);
56
+
57
+
58
+ var s$3=Object.defineProperty;var l$2=(a,t)=>s$3(a,"name",{value:t,configurable:!0});componyx.UI.editor_modules=componyx.UI.editor_modules||{},componyx.UI.editor_modules.ComponentFactory=class{static{l$2(this,"ComponentFactory");}#i=null;#o=null;#r=null;#t=null;constructor(t){this.editor=t,this.utility=t.utility;const r=componyx.UI.Box.ExpandDirectionOption,i=t.toolbarDisplay==componyx.UI.Editor.ToolbarDisplayOption.FOOTER?r.DOWN:r.UP;this.tooltipManager=this.createTooltipManager("buttonTooltipManager",t.buttonTooltipManagerId,t.element,{selectableTooltipContent:!1,showOnFocus:!1,expandDirection:i});}get colorSwatchBox(){return this.#i}get colorPicker(){return this.#o}setActiveExpandButton(t){this.#t=t;}createMenu(t,r,i,e={}){t=this.#e(t);const o=$UI.createComponent(componyx.UI.Menu,{id:t,containerElement:i});return o.clone($UI.store[r],this.editor),o.expandOnClick=e.expandOnClick??!0,o.visibleRoot=e.visibleRoot??!1,o.horizontalRoot=e.horizontalRoot??!1,o.collapseAllOnSelect=e.collapseAllOnSelect??!0,o.autoFit=!0,o.showing=!0,o.events.onPostRender.priorityAdd(()=>{this.editor.isReady.apply(this.editor);}),o}createBox(t,r,i,e={}){t=this.#e(t);const o=this.editor,n=$UI.createComponent(componyx.UI.Box,{id:t,containerElement:i});return n.clone($UI.store[r],o),n.cssClass=e.cssClass,n.hideOnOutsideClick=e.hideOnOutsideClick||!1,n.autoPosition=e.autoPositionOption??componyx.UI.Box.AutoPositionOption.EXPAND,n.expandDirection=e.expandDirection??componyx.UI.Box.ExpandDirectionOption.DOWN,n.alignX=e.alignXOption||componyx.UI.Box.AlignXOption.CENTER,n.autoInvertFit=!0,n.setContentTemplate(e.content),n.events.onPostRender.priorityAdd(()=>{o.isReady.apply(o);},null),n}createTooltipManager(t,r,i,e={}){let o=$UI.createComponent(componyx.UI.TooltipManager,{id:this.#e(t),containerElement:i});if(o.clone($UI.store[r],this.editor,!0,!0,{triggers:""}),!o.boxId){const n=this.createBox("_TooltipManagerBox",null,this.editor.element);n.animation.showType=n.animation.hideType=0,o.boxId=n.id;}return o.cssClass=e.cssClass,o.selectableTooltipContent=e.selectableTooltipContent!=!1,o.showOnFocus=e.showOnFocus!=!1,o.showing=!0,$lib.isEmpty(e.showOnPointerEvent)||(o.showOnPointerEvent=e.showOnPointerEvent),o.events.onPostRender.priorityAdd(()=>{this.editor.isReady.apply(this.editor);},null),o}createValidator(){const t=this.#e("Validator"),r=$UI.createComponent(componyx.UI.Validator,{id:t,containerElement:this.editor.element});return r.clone($UI.store[this.editor.validatorId],this.editor),r.events.onPreInit.priorityAdd(()=>{this.editor.isReady.apply(this.editor);}),r.events.onInvalid.priorityAdd(()=>{let i=this.editor.dialogManager.activeDialog;i&&$UI.store[i.id+"_Confirm"].disable();}),r.events.onValid.priorityAdd(()=>{let i=this.editor.dialogManager.activeDialog;i&&$UI.store[i.id+"_Confirm"].enable();}),r}createDialog(t,r,i={}){const e=$UI.createComponent(componyx.UI.Dialog,{id:this.#e(t),containerElement:this.editor.element});return e.clone($UI.store[r],this.editor),e.cssClass=i.cssClass||null,e.autoFit=!1,e.buttons.deny=!1,e.buttons.cancelText=this.editor.labels.dialogCancel,e.buttons.confirmText=this.editor.labels.dialogConfirm,e.modal=i.modal!==void 0?i.modal:!0,e.autoPosition=i.autoPosition!==void 0?i.autoPosition:5,e.setHeaderTemplate(i.header),e.setContentTemplate(i.content),i.footer&&e.setFooterTemplate(i.footer),e.events.onPostRender.priorityAdd(()=>{this.editor.isReady.apply(this.editor);}),e.events.onShow.priorityAdd(()=>{this.editor.hideTooltips();}),e.events.onShowComplete.priorityAdd(()=>{this.editor.hideTooltips(),this.editor.storeRange(this.editor.selectionRange.getRange().cloneRange()),this.editor.eventManager.disposeEvents(),i.onShowComplete&&i.onShowComplete();}),e.events.onConfirm.priorityAdd(()=>{this.editor.cancelSelectionChange=!1,this.editor.activateDocument(),this.editor.selectionRange.restoreRange(this.editor.getStoredRange()),i.onConfirm();}),e.events.onHideComplete.priorityAdd(()=>{this.editor.cancelSelectionChange=!1,this.editor.activateDocument(),this.editor.eventManager.bindEvents(),i.onHide&&i.onHide(),this.editor.dialogManager.activeDialog=null,requestAnimationFrame(()=>{this.editor.activateDocument();const o=this.editor.getEditorElement();this.editor.selectionRange.restoreRange(this.editor.getStoredRange()),o.focus();});}),e}createButton(t,r,i,e={}){let o=$UI.createComponent(componyx.UI.Button,{id:this.#e(t),containerElement:i});return o.clone($UI.store[r],this.editor),o.cssClass=e.cssClass,o.cssClassIcon="icon "+e.cssClassIcon,o.contentAlign=$lib.isEmpty(e.contentAlign)?componyx.UI.Button.AlignOption.CENTER:e.contentAlign,o.primary=!1,o.transparent=e.transparent!==!1,o.transparentBorder=e.transparentBorder!==!1,o.type=e.type?e.type:0,o.hasIcon=!!e.cssClassIcon,o.menuItemId=e.menuItemId,o.menuId=e.menuItemId&&!e.menuId?this.editor.id+"_Menu":e.menuId,o.boxId=e.boxId?this.#e(e.boxId):null,o.radioGroupId=e.radioGroupId||null,o.text=e.text||null,o.tooltipManagerId=this.tooltipManager.id,o.tooltipId=this.#a(e),o.shortcutKey=e.shortcutKey,o.shortcutScope=()=>this.editor.getEditorElement(),e.radioGroupId&&(o.type=componyx.UI.Button.TypeOption.RADIOBUTTON),e.command&&(o.command=function(n){this.editor.paragraphButtons.destroy(this.editor.getEditorElement()),e.command(e,n);}.bind(this)),e.onSelect&&o.events.onSelect.priorityAdd(e.onSelect,null),e.boxId&&e.boxId=="ColorSwatch"&&(o.expandCommand=()=>{this.setActiveExpandButton(o);}),o.events.onPostRender.priorityAdd(()=>{this.editor.isReady.apply(this.editor);},null),o.showing=!0,e.cssVariable&&(o.__cssVariable=e.cssVariable),o}createComboBox(t,r,i,e={}){let o=$UI.createComponent(componyx.UI.ComboBox,{id:this.#e(t),containerElement:i});return o.clone($UI.store[r],this.editor),o.cssClass=e.cssClass,o.allowInput=e.allowInput??!1,o.allowCustomValue=e.allowCustomValue??!1,o.placeholder=e.allowInput?this.editor.labels.comboBoxPlaceholderEditable:this.editor.labels.comboBoxPlaceholderReadOnly,o.events.onPostRender.priorityAdd(()=>{this.editor.isReady.apply(this.editor);}),e.itemList&&(o.itemList=e.itemList),e.noResultTemplate&&o.setNoResultTemplate(e.noResultTemplate),e.onItemSelect&&o.events.onItemSelect.priorityAdd(()=>{e.onItemSelect();}),e.onClear&&o.events.onClear.priorityAdd(()=>{e.onClear();}),o.show(),o}createFormField(t,r,i,e={}){let o=$UI.createComponent(componyx.UI.FormField,{id:this.#e(t),containerElement:i});return o.clone($UI.store[r],this.editor),o.cssClass=e.cssClass,o.labelDisplay=e.labelDisplay||3,o.inline=e.inline||!1,o.switch=e.switch||!1,o.setLabelTemplate(e.label),o.setFieldTemplate(e.field),o.show(),o}createColorButton(t,r,i,e={}){let o=$UI.createComponent(componyx.UI.ColorButton,{id:this.#e(t),containerElement:i});if(e.command){const n=$UI.createComponent(componyx.UI.Button,{id:t+"_Button",containerElement:this.editor.element,command:e.command,primary:!1,transparentBorder:!1,transparent:!0});o.buttonId=n.id;}return o.clone($UI.store[r],this.editor),o.show(),o}createColorSwatch(){let t=$lib.element("","","","",{class:this.editor.getCssClass(this.editor.classOption.SWATCH)}),r=$lib.element("","","footer"),i=this.#l(),e=this.editor.getCssClass(this.editor.classOption.COLORSWATCH_BOX);$lib.each(this.editor.colorSwatchColors.concat(i),(o,n)=>{$lib.element(t,"","a","",{id:this.#e(`swatch-color-${n}`),class:this.editor.getCssClass(this.editor.classOption.SWATCH_COLOR),style:`background:${o}`},{onclick:this.#n.bind(this,o)});}),this.#i=this.createBox("ColorSwatch",this.editor.colorSwatchBoxId,this.editor.element,{cssClass:e,content:[t,r]}),this.#i.render(),this.#r=t,this.createButton("clearColor",this.editor.clearColorButtonId,r,{command:l$2(()=>this.#d(),"command"),cssClass:this.editor.getCssClass(this.editor.classOption.CLEARCOLOR_BUTTON),cssClassIcon:"ico-cross"}),this.createButton("toggleColorPicker",this.editor.colorPickerButtonId,r,{command:l$2(()=>this.#c(),"command"),cssClass:this.editor.getCssClass(this.editor.classOption.COLORPICKER_BUTTON),cssClassIcon:this.utility.iconPrefix+"palette"});}createColorPicker(){let t=this.#e("ColorPicker"),r;this.#o=$UI.createComponent(componyx.UI.ColorPicker,{id:t,containerElement:this.editor.element}),this.#o.clone($UI.store[this.editor.colorPickerId],this.editor),this.#o.popupView=!0,this.#o.showing=!0,this.#o.boxId?r=$UI.store[this.#o.boxId]:(r=$UI.createComponent(componyx.UI.Box,{id:t+"_ColorPickerBox",containerElement:this.editor.element}),this.#o.boxId=r.id),r.events.onShowComplete.priorityAdd(()=>{this.editor.eventManager.disposeEvents();},null),r.events.onHideComplete.priorityAdd(()=>{this.editor.eventManager.bindEvents();},null),this.#o.events.onPostRender.priorityAdd(()=>{this.editor.isReady.apply(this.editor);},null);}#a(t){let r=t.shortcutKey,i=t.id,e=t.name,o=t.tooltip||e;return r&&!t.tooltip&&(o+=` (Ctrl+${r.toUpperCase()})`),o&&this.tooltipManager.addTooltip(i,o),i}#n(t){this.#t.__color=t,this.#t.__cssVariable&&this.editor.element.style.setProperty(this.#t.__cssVariable,t||"none"),this.#i.hide(),this.#t.command();}#l(){return window.JSON.parse(window.localStorage.getItem(this.editor.localStoragePrefix+"CustomSwatch")||"[]")}#s(t){let r=!0;return $lib.each(this.#r.childNodes,i=>r=i.style.cssText.indexOf(t)==-1),r&&$lib.element(this.#r,"","","",{id:this.#e(`swatch-color-${this.#r.childNodes.length}`),class:this.editor.getCssClass(this.editor.classOption.SWATCH_COLOR),style:`background: ${t}`}),r}#d(){this.#n(null);}#c(){this.#o.expand(null,null,(t,r)=>{let i=this.editor.utility.toCSSColor(r.rgba);if(this.#s(i)){let o=this.#l();o.push(i),window.localStorage.setItem(this.editor.localStoragePrefix+"CustomSwatch",window.JSON.stringify(o));}this.editor.eventManager.bindEvents(),this.#n(i);},null,!0,!0);}#e(t){return this.utility.getId(t)}};componyx.UI.editor_modules.ComponentFactory;
59
+
60
+
61
+ var m$5=Object.defineProperty;var b$2=(f,e)=>m$5(f,"name",{value:e,configurable:!0});componyx.UI.editor_modules=componyx.UI.editor_modules||{},componyx.UI.editor_modules.ContentManager=class{static{b$2(this,"ContentManager");}constructor(e){this.editor=e,this.utility=e.utility;}getContent(e){let t=$lib.element();return e=e||this.editor.getEditorElement(),this.editor.resizer.clear(!0),t.innerHTML=e.innerHTML,this.cleanSource(t),this.editor.table.clearAll(t,!0),t.innerHTML}ensureDocStructure(e,t,i){this.editor.activateDocument(),this.hasContent()||this.insertParagraph();const r=this.editor.selectionRange;t=t||r.ensureTextRange(r.getRange()),i=i||r.createRangeMarker(t),this.editor.resizer.clear(!0),this.editor.paragraphButtons.destroy(e),this.ensureWrappedNodes(e),this.ensureTableCellStructure(e),this.restoreEditorAttrs(e);for(const l of e.querySelectorAll('figure:not([contenteditable="false"]):not(:has(table)'))l.remove();let o=this.ensureBlockNodes(e);r.restoreRangeToMarker(i,this.editor.getDoc().createRange()),this.createSelectables(e);for(const l of o)this.cleanUp(l,null,t,i),l.childNodes.length||l.remove();i&&(r.restoreRangeToMarker(i,this.editor.getDoc().createRange()),r.removeRangeMarker(i)),this.editor.history.addItem();}ensureBlockNodes(e){let t=new Set,i;const r=Array.from(e.childNodes);return $lib.each(r,o=>{let l=this.editor.nodeManager.isBlock(o);if(o.nodeName==="DIV"&&o.contentEditable!=="false")if(Array.from(o.childNodes).some(a=>this.editor.nodeManager.isBlock(a)))i=o;else {let a=$lib.element("","","p");$lib.surround(a,o),$lib.unsurround(o),i=a;}else !l&&!i?i=$lib.surround($lib.element("","","p"),o):l?i=o:i.appendChild(o);t.add(i);}),t}ensureWrappedNodes(e){$lib.each(this.editor.nodeManager.getElementsByTagName(e,"HR IMG VIDEO IFRAME OBJECT EMBED TABLE SVG"),t=>{let i=t.nodeName,r=t.parentNode,o=i=="TABLE",l=i.match(this.utility.figureNodesRegEx),n=t.closest("figure");n?t=n:t.nodeName=="IMG"&&!this.editor.nodeManager.isBlock(t.parentNode,!0)?(t.parentNode.childNodes.length>1?t=$lib.surround($lib.element("","","span"),t):t=t.parentNode,t.style.display="inline-block",t.style.width="fit-content"):r==e||r.nodeName=="DIV"&&l||" DIV FIGURE ".indexOf(" "+r.nodeName+" ")==-1?(t=$lib.surround($lib.element("","",l?"figure":"div","",""),t),t.parentNode!=e&&t.parentNode.nodeName=="DIV"&&$lib.unsurround(t.parentNode)):t=r,o||(t.contentEditable=!1),t.nodeName=="FIGURE"&&o&&t.classList.add(this.editor.getCssClass(this.editor.classOption.TABLE_WRAPPER));});}cleanUp(e,t,i,r){let o=$lib.isEmpty(r);const l=this.editor.selectionRange;r=r||l.createRangeMarker(i||l.getRange()),this.replaceBoldItalic(e),this.clearDoubles(e,t,r),e.normalize(),this.mergeNodes(e,t,r),this.removeRedundantStyleNodes(e),l.restoreRangeToMarker(r,this.editor.getDoc().createRange()),o&&l.removeRangeMarker(r);}replaceBoldItalic(e){let t=this.editor.nodeManager.getElementsByTagName(e,"b i");$lib.each(t,i=>{$lib.surround($lib.element("","",i.nodeName=="B"?"strong":"em"),i),$lib.unsurround(i);});}clearDoubles(e,t,i){let r=this.editor.nodeManager,o=r.getElementsByTagName(e,t||this.utility.layoutNodeNames.join(" ")),l,n,a,d,c;$lib.each(o,h=>{if(r.contains(e,h)){if(d=r.isStyleNode(h),c=h.textContent,r.canRemove(h))r.removeNodeAndKeepMarkers(h,i);else for(l=r.getElementsByTagName(h,h.nodeName.toUpperCase()),n=0;n<l.length;++n)if(a=l[n],r.canRemove(h))r.removeNodeAndKeepMarkers(h,i);else if(!d)$lib.unsurround(a);else if(r.isStyleNode(a))if(a.textContent==c)this.editor.format.copyStyles(a,h),$lib.unsurround(a);else {let g=!0,u=a;for(;u&&u!=h;)r.isStyleNode(u)&&(g=this.editor.format.hasEqualStyles(h,u)),u=g?u.parentNode:null;g&&$lib.unsurround(a);}}});}mergeNodes(e,t,i){let r=this.editor.nodeManager.getElementsByTagName(e,t||this.utility.layoutNodeNames.join(" ")),o=$lib("#"+i.startId),l=i.endId?$lib("#"+i.endId):null,n,a,s,d;for(a=0;a<r.length;++a)n=r[a],s=n.previousSibling,d=n.nextSibling,(o&&s==o||l&&s==l)&&(s=s.previousSibling),(o&&d==o||l&&d==l)&&(d=d.nextSibling),(this.editor.nodeManager.isStyleNode(n)||n.nodeType==1&&!n.hasAttributes())&&(this.editor.format.canMerge(s,n)&&(s.nextSibling&&s.nextSibling==o?n.insertBefore(o,n.firstChild):s.nextSibling&&s.nextSibling==l&&n.insertBefore(l,n.firstChild),n.insertBefore($lib.extract(s),n.firstChild),$lib.remove(s)),this.editor.format.canMerge(d,n)&&(d.previousSibling&&d.previousSibling==o?n.appendChild(o):d.previousSibling&&d.previousSibling==l&&n.appendChild(l),n.appendChild($lib.extract(d)),$lib.remove(d)));}removeRedundantStyleNodes(e){const t=this.editor.nodeManager.getElementsByTagName(e,"SPAN"),i=new Map;$lib.each(t,r=>{this.editor.nodeManager.isStyleNode(r)&&this.isRedundantStyleNode(r,i)&&$lib.unsurround(r);});}isRedundantStyleNode(e,t){const i=this.editor.format.getLayoutTreeStyles(e.parentNode,t);let r=!0;return this.editor.format.iterateStyle(e,(o,l)=>{const n=o==="font-family"&&l===this.editor.defaultFontFamily,a=o==="font-size"&&l===this.editor.defaultFontSize;if(i[o]===void 0){if(n||a)return;r=!1;}else if(i[o]!==l)return r=!1}),r}cleanSource(e=null,t=!0){const i=e||this.editor.getEditorElement();return this.clearEditorAttributes(i),this.clearContentEditableChildren(i),t&&this.clearZeroWidth(i),this.clearEmptyParagraph(i),this.editor.table.clearAll(i),this.editor.paragraphButtons.destroy(i),e||this.editor.resizer.clear(!0),i.innerHTML}ensureTableCellStructure(e){e.querySelectorAll("td, th").forEach(t=>{if(!t.firstChild){const i=$lib.element({tag:"p"});i.appendChild($lib.element({tag:"br"})),t.appendChild(i);return}this.ensureBlockNodes(t);});}restoreEditorAttrs(e){const t=this.utility.attrPrefix,i=this.editor.nodeManager;$lib.each(e.querySelectorAll("a, hr"),r=>{r.nodeName=="A"&&i.isBookmark(r)?r.setAttribute(t+"bookmark",""):r.nodeName=="HR"&&i.isPageBreak(r)&&r.setAttribute(t+"pagebreak","");});}clearEditorAttributes(e){e=e||this.editor.getEditorElement();const t=this.utility.attrPrefix,i=[t+"media",t+"embed",t+"styleid"];$lib.each(e.getElementsByTagName("*"),r=>{r.hasAttributes()&&Array.from(r.attributes).filter(o=>o.name.startsWith(t)&&!i.includes(o.name)).forEach(o=>r.removeAttribute(o.name));});}clearZeroWidth(e){e=e||this.editor.getEditorElement();let t=e.ownerDocument.createTreeWalker(e,NodeFilter.SHOW_TEXT,null,null),i,r=[];for(;i=t.nextNode();)i.nodeValue.match(this.utility.zeroWidthRegEx)&&(i.nodeValue=i.nodeValue.replace(this.utility.zeroWidthRegEx,"")),i.nodeValue.length==0&&r.push(i);r.forEach(o=>{o.remove();});}clearContentEditableChildren(e){e=e||this.editor.getEditorElement(),e.querySelectorAll("[contenteditable]").forEach(t=>t.removeAttribute("contenteditable"));}clearEmptyParagraph(e){if(e=e||this.editor.getEditorElement(),e&&e.innerHTML=="<p><br></p>")for(;e.firstChild;)e.firstChild.remove();}insertParagraph(){const e=this.editor.selectionRange,t=!this.hasContent();let i=e.getRange(),r=e.getRootNodesInRange(i),o=r[r.length-1],l=this.editor.getDoc().createElement("p"),n=$lib.element("","","br");l.appendChild(n),o&&o.nodeName!=="TD"&&o.nodeName!=="TH"&&(i=e.collapseRangeToNode(o)),i.deleteContents(),e.insertIntoRange(i,l,n),e.restoreRange(i),this.setBlockAttr(l),t||this.editor.history.addItem(i);}insertBR(e){let t=$lib.element("","","br"),i=e.startContainer,r=this.editor.getDoc().createTextNode(this.utility.zeroWidthChar);i.nodeType===3&&i.nodeValue.match(this.utility.zeroWidthRegEx)&&(e.setStart(i,i.length),e.collapse(!0)),this.editor.selectionRange.insertIntoRange(e,t,t,!0),this.editor.selectionRange.insertIntoRange(e,r,r,!1);}insertHTML(e){this.editor.activateDocument(),this.hasContent()||this.insertParagraph();const t=this.editor.selectionRange,i=this.editor.nodeManager,r=this.editor.history;let o=e.node||i.createNode(e),l=t.ensureTextRange(t.getRange()),n=t.createRangeMarker(l);l.collapsed||(l=t.restoreRangeToMarker(n,l),l.deleteContents(),l=t.restoreRangeToMarker(n,l));let a=$lib("#"+n.startId)||$lib("#"+n.endId),s=i.getRootNode(a),d;if(e.tag&&e.isPhrasingContent==null&&this.editor.nodeManager.isBlock($lib.element("","",e.tag),!0)&&(e.isPhrasingContent=!1),e.isPhrasingContent===!1){let c=i.getSiblings(s,null,a);if(c.length>1||c.length===1&&c[0].nodeName!=="BR"){let h=$lib.element(s.parentElement,s.nextSibling,"p",c);i.nodeHasContent(s)||s.remove(),s=d=h;}else d=s.nextSibling;}if(e.isPhrasingContent!==!1){$lib.insertNode(o,!0,!0,l),l.setStartAfter(o),l.setEndAfter(o),l.collapse(!1);let c=this.editor.getDoc().createTextNode(this.utility.zeroWidthChar);$lib.insertNode(c,!0,!0,l),l.collapse(!0);}else s.nodeName.match(this.utility.blockNodeRegEx)?(i.nodeHasContent(s)?s.parentElement.insertBefore(o,d):s.parentElement.replaceChild(o,s),o.nextSibling||(l.selectNodeContents(o),l.collapse(!1),r.noHistory(()=>this.insertParagraph()))):s.insertBefore(o,a.nextElementSibling||a),o.nextSibling&&(l.selectNodeContents(o.nextSibling),l.collapse(!0));return t.removeRangeMarker(n),e.select&&this.editor.selectNode.bind(o)(),r.addItem(),o}hasContent(){const e=this.editor.getEditorElement();return !e.textContent.length&&e.firstChild&&e.firstChild.nodeType!=1&&e.firstChild.remove(),e.childNodes.length!=0}setBlockAttr(e){this.editor.isBlockViewSelected()&&e.setAttribute(this.utility.attrPrefix+"blockview",e.nodeName);}setBlockAttrAll(e=!0,t){t=t||this.editor.getEditorElement();let i=this.utility.attrPrefix+"blockview";$lib.each(t.childNodes,r=>{e?r.setAttribute(i,r.nodeName):e||r.removeAttribute(i);});}createSelectables(e){new Set(e.querySelectorAll(this.editor.selectableNodes.join(","))).forEach(t=>this.editor.bindNodeEvents(t));}};componyx.UI.editor_modules.ContentManager;
62
+
63
+
64
+ var M$1=Object.defineProperty;var g$3=(k,e)=>M$1(k,"name",{value:e,configurable:!0});componyx.UI.editor_modules=componyx.UI.editor_modules||{},componyx.UI.editor_modules.DialogManager=class{static{g$3(this,"DialogManager");}#t=null;#e;#i;#a;#l;#s;#o;constructor(e){this.editor=e,this.cf=e.componentFactory,this.utility=e.utility,this.validator=this.cf.createValidator();const t=this.#r.bind(this),i={validator:this.validator,addValidatorRules:g$3((l,a)=>this.#n(l,a),"addValidatorRules")};this.#e=new x$1(e,this.cf,t),this.#i=new R$2(e,this.cf,t,i),this.#a=new N$1(e,this.cf,t,i),this.#l=new G(e,this.cf,this.utility,t,i),this.#s=new H$1(e,this.cf,t,i),this.#o=new componyx.UI.editor_modules.TableDialog(e),this.createTableDialog();}get activeDialog(){return this.#t}set activeDialog(e){this.#t=e;}get sourceDialog(){return this.#e.dialog}get bookmarkDialog(){return this.#i.dialog}get linkDialog(){return this.#a.dialog}get imageDialog(){return this.#l.dialog}get mediaDialog(){return this.#s.dialog}get tableDialog(){return this.#o}createSourceDialog(){this.#e.create();}createBookmarkDialog(){this.#i.create();}createLinkDialog(){this.#a.create();}createImageDialog(){this.#l.create();}createMediaDialog(){this.#s.create();}createTableDialog(){this.#o.create();}#n(e,t){this.#t=e,this.validator.clear(),$lib.each(t,i=>{const l=i.name,a=i.dataType;this.validator.addRule(l,{live:!0},0),a&&this.validator.addRule(l,{dataType:a,live:!0},1);}),this.validator.validate();}#r(e){return this.utility.getId(e)}};class x$1{static{g$3(this,"SourceDialog");}#t=null;#e;#i;#a;constructor(e,t,i){this.#e=e,this.#i=t,this.#a=i;}get dialog(){return this.#t}create(){const e=this.#e,t=this.#i,i=this.#a,l=$lib.element("","","",e.labels.sourceViewDialogHeader),a=$lib.element("","","","",{class:e.getCssClass(e.classOption.SOURCE_VIEW)});this.#t=t.createDialog("SourceDialog",e.sourceDialogId,{cssClass:e.getCssClass(e.classOption.SOURCE_DIALOG),header:l,content:a,onShowComplete:g$3(()=>{e.createSourceViewBuilder(e.getEditorElement(),a);},"onShowComplete"),onConfirm:g$3(()=>{e.setSourceViewBuilderHTML(e.getEditorElement());},"onConfirm"),onHide:g$3(()=>{e.getSourceViewStore().delete(e.getEditorElement()),$UI.store[i("source")].deselect();},"onHide")});}show(){this.#t?.show();}}class R$2{static{g$3(this,"BookmarkDialog");}#t=null;#e;#i;#a;#l;constructor(e,t,i,l){this.#e=e,this.#i=t,this.#a=i,this.#l=l;}get dialog(){return this.#t}create(){const e=this.#e,t=this.#i,i=this.#a,l=$lib.element("","","",e.labels.bookmarkDialogHeader),a=$lib.element("","","input","",{type:"text",name:i("bookmark"),placeholder:e.labels.bookmarkInputPlaceholder}),s=$lib.element("","","",a);this.#t=t.createDialog("BookmarkDialog",e.bookmarkDialogId,{cssClass:e.getCssClass(e.classOption.BOOKMARK_DIALOG),header:l,content:s,onShowComplete:g$3(()=>{a.value=e.layoutState.activeLayout.bookmark?e.layoutState.activeLayout.bookmark.id:"",this.#l.addValidatorRules(this.#t,[{name:a.name}]);},"onShowComplete"),onConfirm:g$3(()=>{e.layoutState.activeLayout.bookmark?e.layoutState.activeLayout.bookmark.id=a.value:e.contentManager.insertHTML({tag:"a",selectable:!0,allowContent:!1,attributes:{id:a.value,[e.utility.attrPrefix+"bookmark"]:""}});},"onConfirm"),onHide:g$3(()=>{a.value="";},"onHide")});}show(){this.#t?.show();}}class N$1{static{g$3(this,"LinkDialog");}#t=null;#e;#i;#a;#l;constructor(e,t,i,l){this.#e=e,this.#i=t,this.#a=i,this.#l=l;}get dialog(){return this.#t}create(){const e=this.#e,t=this.#i,i=this.#a,l=$lib.element("","","",e.labels.linkDialogHeader),a=$lib.element(),s=$lib.element(),n=$lib.element(),r=$lib.element(),o=$lib.element(),d=$lib.element("","","input","",{id:i("linkDownloadable"),type:"checkbox"}),c=$lib.element("","","input","",{id:i("linkText"),name:i("linkText")}),h=$lib.element("","","input","",{id:i("linkTitle")}),m=t.createComboBox("linkHref",e.linkDialogHrefComboBoxId,r,{allowInput:!0,allowCustomValue:!0,noResultTemplate:e.labels.comboBoxNoResult,onItemSelect:g$3(()=>this.#l.validator.validate(),"onItemSelect"),onClear:g$3(()=>this.#l.validator.validate(),"onClear")}),L=t.createComboBox("linkTarget",e.linkDialogTargetComboBoxId,o,{allowInput:!1}),f=t.createButton("removeLink",e.linkDialogRemoveButtonId,a,{transparent:!1,transparentBorder:!1,text:e.labels.removeLink,command:g$3(()=>e.removeLink(),"command"),cssClass:this.#e.getCssClass(this.#e.classOption.REMOVE)}),C={};C.href=t.createFormField("fldHref",e.linkDialogHrefFormFieldId,n,{label:e.labels.linkHref,field:r.firstElementChild}).element,C.text=t.createFormField("fldText",e.linkDialogTextFormFieldId,n,{label:e.labels.linkText,field:c}).element,C.title=t.createFormField("fldTitle",e.linkDialogTitleFormFieldId,n,{label:e.labels.linkTitle,field:h}).element,C.target=t.createFormField("fldTarget",e.linkDialogTargetFormFieldId,n,{label:e.labels.linkTarget,field:o.firstElementChild}).element,f.render(),t.createFormField("fldDownloadable",e.linkDialogDownloadableFormFieldId,a,{label:e.labels.linkDownloadable,field:d,labelDisplay:5,switch:!0});let y="{href}{text}{title}{target}",I="LinkDialogContent",D="Default"+I,u=e.hasTemplate(I);e.hasTemplate(I)||(e.addTemplate(D,y,!1),I=D),e.applyTemplate(s,I,C),s.querySelector(`#${i("fldHref")}`)||(C.href.style.display="none",s.appendChild(C.href)),this.#t=t.createDialog("LinkDialog",e.linkDialogId,{cssClass:e.getCssClass(e.classOption.LINK_DIALOG),header:l,footer:a,content:s,onShowComplete:g$3(()=>{const T=m.element.querySelector("input[type=text]"),v=e.selectionRange.getRange(),p=e.layoutState.activeLayout.link;this.#m(this.#d(m)),this.#m(this.#c(L)),c.disabled=!v.collapsed||e.layoutState.activeLayout.link,h.value="",T.name=i("linkHref"),d.checked=!1,f.hide(),p?(c.value=p.textContent,h.value=p.getAttribute("title"),m.setValue(p.getAttribute("href")),L.setValue(p.target),p.hasAttribute("download")&&(d.checked=!0),f.show()):v.collapsed||(c.value=v.toString()),this.#s(u,m.getValue(),[{name:T.name,dataType:4}]);const A=p?{href:p.getAttribute("href"),text:p.textContent,title:p.getAttribute("title"),target:p.target,downloadable:p.hasAttribute("download")}:null;e.events.onLinkDialogShow.fire(e,{container:s,activeItem:A,confirmSelection:g$3((b,E,F)=>this.#n(b,E,F,m,c,h),"confirmSelection")});},"onShowComplete"),onConfirm:g$3(()=>{this.#r(m,c,h,L,d);},"onConfirm"),onHide:g$3(()=>{c.value="";},"onHide")});}show(){this.#t?.show();}#s(e,t,i){if(this.#o(i),e){const l=$UI.store[this.#t.id+"_Confirm"];t?l.enable():l.disable();}}#o(e){const t=this.#a,i=t("linkHref"),l=this.#l.validator;l.clear(),$lib.each(e,a=>{const s=a.name,n=a.dataType;l.addRule(s,{live:!0},0),s==i?l.addRule(s,{onValidation:g$3((r,o)=>{const d=l.validateType({dataType:n},o.fieldValue),c=$UI.store[i];return d?!0:$lib.indexOf(c.itemList,h=>h.text===o.fieldValue)>-1},"onValidation"),live:!0,alwaysCheck:!0},6):n&&l.addRule(s,{dataType:n,live:!0},1);}),l.validate();}#n(e,t,i,l,a,s){l.setValue(e),t&&(a.value=t),i&&(s.value=i),$UI.store[this.#t.id+"_Confirm"].enable();}#r(e,t,i,l,a){const s=this.#e,n=e.getValue(),r=l.getValue();if(s.layoutState.activeLayout.link){const o=s.layoutState.activeLayout.link;o.href=n,o.target=r,o.title=i.value,a.checked?o.setAttribute("download",""):o.removeAttribute("download"),t.disabled||(o.textContent=t.value||n),s.history.addItem();}else {const o=s.selectionRange.getRange(),d={tag:"a",attributes:{href:n,title:i.value,target:r,rel:"noreferer",download:a.checked?"":void 0},selectable:!0,allowContent:!0,textContent:o.collapsed?t.value||n:null};o.collapsed?s.contentManager.insertHTML(d):s.format.pasteFormat([s.nodeManager.createNode(d)],!1);}}#d(e){const t=this.#e.getEditorElement().getElementsByTagName("a");return this.#g(e),$lib.each(t,i=>{if(i.hasAttribute("href")&&$lib.startsWith(i.getAttribute("href"),"#"))return;const l=i.getAttribute("href");let a;l?a={id:l,text:l}:i.id&&(a={id:"#"+i.id,text:this.#e.labels.bookmarkPrefix+": "+i.id}),a&&e.itemList.push(a);}),e}#c(e){const t=this.#e.getDoc().getElementsByTagName("iframe"),i=this.#e.labels;return this.#g(e),e.itemList.push({id:"_self",text:i.linkTargetCurrent,selected:!0}),e.itemList.push({id:"_blank",text:i.linkTargetNew}),$lib.each(t,l=>{l.name&&e.itemList.push({text:l.name});}),e}#g(e){e.itemList&&e.itemList.length?e.itemList.length=0:e.itemList=[],e.renderState==2&&e.clear();}#m(e){e.renderState==2&&e.load(!1,null,!1);}}class G{static{g$3(this,"ImageDialog");}#t=null;#e;#i;#a;#l;#s;constructor(e,t,i,l,a){this.#e=e,this.#i=t,this.#a=i,this.#l=l,this.#s=a;}get dialog(){return this.#t}create(){const e=this.#e,t=this.#i,i=this.#l,l=e.getCssClass(e.classOption.FIELD_HALF),a=i("imgSrc"),s=$lib.element("","","",e.labels.imageDialogHeader),n=$lib.element(),r=$lib.element(),o=$lib.element(),d=$lib.element(),c=$lib.element(),h=this.#h(()=>{$UI.store[i("ImageDialog_Confirm")].enable();}),m=this.#u(),L=$lib.element("","","input","",{id:i("imgAlt")}),f=$lib.element("","","input","",{id:i("imgCaption")}),C=$lib.element("","","input","",{id:i("imgWidth")}),y=$lib.element(c,"","input","",{id:i("imgHeight")}),I=$lib.element(d,"","input","",{id:a,name:a},{readOnly:!e.allowImageUrlInput}),D=$lib.element("","","input","",{id:i("imgInline"),type:"checkbox"},{onclick:g$3(function(){f.disabled=this.checked,m.hideAll(),this.checked?m.toggle([0,1,2,3,4],!0):m.toggle([5,6,7],!0);},"onclick")});e.allowImageFileSelect&&this.#g(d,h),this.#m(c),[C,y].forEach(b=>$lib.on(b,"input",h.constrainProportions)),$lib.on(I,"change",h.urlChange),e.allowImageUrlInput||$lib.on(I,"click",()=>{d.querySelector('input[type="file"]').click();});const u={};u.source=t.createFormField("fldImgSrc",e.imageDialogSourceFormFieldId,o,{label:e.labels.imageSource,field:d}).element,u.alt=t.createFormField("fldImgAlt",e.imageDialogAltFormFieldId,o,{label:e.labels.imageAlt,field:L}).element,u.width=t.createFormField("fldImgWidth",e.imageDialogWidthFormFieldId,o,{label:e.labels.imageWidth,field:C,inline:!0,cssClass:l}).element,u.height=t.createFormField("fldImgHeight",e.imageDialogHeightFormFieldId,o,{label:e.labels.imageHeight,field:c,inline:!0,cssClass:l}).element,u.caption=t.createFormField("fldImgCaption",e.imageDialogCaptionFormFieldId,o,{label:e.labels.caption,field:f}).element,u.alignment=t.createFormField("fldImgAlignment",e.imageDialogAlignmentFormFieldId,o,{label:e.labels.imageAlignment,field:m.content}).element,u.inline=t.createFormField("fldImgInline",e.imageDialogInlineFormFieldId,n,{label:e.labels.imageInline,field:D,switch:!0,labelDisplay:5}).element;let T="{source}{alt}{width}{height}{caption}{alignment}",v="ImageDialogContent",p=e.hasTemplate(v),A="Default"+v;e.hasTemplate(v)||(e.addTemplate(A,T,!1),v=A),e.applyTemplate(r,v,u),r.querySelector(`#${i("fldImgSrc")}`)||(u.source.style.display="none",r.appendChild(u.source)),this.#t=t.createDialog("ImageDialog",e.imageDialogId,{cssClass:e.classOption.IMAGE_DIALOG,header:s,footer:n,content:r,onShowComplete:g$3(()=>{const b=e.layoutState.activeLayout.image,E=e.selectionRange.getRange(),F=e.nodeManager.getRootNode(E.startContainer);if(m.hideAll(),b){const w=b.parentElement,$=w.querySelector("figcaption");I.value=b.getAttribute("src"),L.value=b.alt,C.value=b.width,y.value=b.height,h.widthRatio=b.__widthRatio||b.width/b.height,f.value=$?$.textContent:"",w.nodeName=="SPAN"?(f.disabled=D.checked=!0,m.toggle([0,1,2,3,4],!0)):(f.disabled=D.checked=!1,m.toggle([5,6,7],!0)),m.select(w);}else I.value=L.value=C.value=y.value=f.value="",F&&F.textContent.length?(D.checked=f.disabled=!0,m.toggle([0,1,2,3,4],!0)):(D.checked=f.disabled=!1,m.toggle([5,6,7],!0));this.#o(p,I.value,[{name:I.name,dataType:5}]);const _=b?{src:b.getAttribute("src"),alt:b.alt,width:b.width,height:b.height,caption:f.value}:null;e.events.onImageDialogShow.fire(e,{container:r,activeItem:_,confirmSelection:g$3((w,$,S)=>this.#n(w,$,S,I,L,f,h),"confirmSelection")});},"onShowComplete"),onConfirm:g$3(()=>{this.#r(I,L,C,y,f,D,m,h);},"onConfirm")});}show(){this.#t?.show();}#o(e,t,i){if(this.#e.allowImageUrlInput)this.#s.addValidatorRules(this.#t,i);else {const l=$UI.store[this.#t.id+"_Confirm"];t?l.enable():l.disable();}}#n(e,t,i,l,a,s,n){l.value=e,t&&a&&(a.value=t),i&&s&&(s.value=i);const r=new Image;r.onload=n.onLoad.bind(r),r.src=e,$UI.store[this.#t.id+"_Confirm"].enable();}#r(e,t,i,l,a,s,n,r){const o=this.#e;let d,c="",h=o.layoutState.activeLayout.image?o.layoutState.activeLayout.image.parentNode:null;if(o.layoutState.activeLayout.image&&(h.nodeName=="FIGURE"&&!s.checked||h.nodeName=="SPAN"&&s.checked)){d=o.layoutState.activeLayout.image,this.#c(d,{src:e,alt:t,width:i,height:l,events:r});let m=d.parentElement.querySelector("figcaption");!m&&a.value?(m=$lib.element("","","figcaption",a.value),d.parentElement.appendChild(m)):m&&(a.value?m.textContent=a.value:m.remove());}else h&&h.remove(),d=this.#c($lib.element("","","img"),{src:e,alt:t,width:i,height:l,events:r}),!a.disabled&&a.value&&(c=$lib.element("","","figcaption",a.value).outerHTML),h=o.history.noHistory(()=>o.contentManager.insertHTML({tag:s.checked?"span":"figure",styles:s.checked?{display:"inline-block",width:"fit-content"}:{width:"fit-content"},isPhrasingContent:s.checked,selectable:!0,select:!0,allowContent:!1,innerHTML:d.outerHTML+c})),h.firstElementChild.__widthRatio=r.widthRatio;if(s.checked){const m=n.selected.cssClass.replace("button ","").trim();this.#d(h,m);}else {const m=n.selected.cssClass.replace("button ","").trim();this.#d(h,m);}o.history.addItem();}#d(e,t){switch(e.style.removeProperty("float"),e.style.removeProperty("vertical-align"),e.style.removeProperty("margin-left"),e.style.removeProperty("margin-right"),t){case"img-inline-align-default-top":e.style.verticalAlign="top";break;case"img-inline-align-default-center":e.style.verticalAlign="middle";break;case"img-inline-align-default-bottom":e.style.verticalAlign="bottom";break;case"img-inline-align-left":e.style.float="left";break;case"img-inline-align-right":e.style.float="right";break;case"img-align-center":e.style.marginLeft="auto",e.style.marginRight="auto";break;case"img-align-right":e.style.marginLeft="auto";break}}#c(e,t){return e.contentEditable=!1,e.src=t.src.value,e.alt=t.alt.value,e.width=t.width.value,e.height=t.height.value,e.__widthRatio=t.events.widthRatio,e.style.removeProperty("width"),e.style.removeProperty("height"),e}#g(e,t){const i=this.#l,l=i("fileButtonInput"),a=$lib.element(e,"","label",""),s=this.#i.createButton("imgFileButton",this.#e.imageDialogFileButtonId,a,{cssClass:this.#e.getCssClass(this.#e.classOption.FILE_SELECT),cssClassIcon:"ico-upload",tooltip:this.#e.labels.imageFileButtonTooltip});return a.htmlFor=l,s.render(),$lib.element(a,"","input","","",{id:l,type:"file",accept:"image/*",hidden:!0,onchange:t.fileChange}),s}#m(e){const t=this.#i.createButton("imgUnlockButton",this.#e.imageDialogConstrainButtonId,e,{cssClass:this.#e.getCssClass(this.#e.classOption.LOCK),cssClassIcon:this.#a.iconPrefix+"lock",type:1,tooltip:this.#e.labels.imageConstrainButtonTooltip});return t.render(),t}#h(e){const t=this.#l,i=this.#e;this.#s.validator;const a={widthRatio:null,urlChange:g$3(function(s){const n=new Image;n.onload=a.onLoad.bind(n),n.src=this.value;},"urlChange"),fileChange:g$3(function(s){const n=this.files[0],r=window.URL.createObjectURL(n),o=new Image;$lib("#"+t("imgSrc")).value=r,o.onload=a.onLoad.bind(o,n),o.src=r,i.events.onImageSelect.fire(i,{imageElement:this,file:n||null}),this.value="",e();},"fileChange"),onLoad:g$3(function(s){$lib("#"+t("imgWidth")).value=this.width,$lib("#"+t("imgHeight")).value=this.height,a.widthRatio=this.width/this.height,i.events.onImageLoad.fire(i,{imageElement:this,file:s||null});},"onLoad"),constrainProportions:g$3(function(s){const n=this,r=n.id.indexOf("Width")>-1,o=r?$lib("#"+t("imgHeight")):$lib("#"+t("imgWidth")),d=parseFloat(n.value),c=a.widthRatio;isNaN(d)||$lib("#"+t("imgSrc")).value==""||$UI.store[t("imgUnlockButton")].selected||(o.value=Math.round(r?d*(1/c):d*c));},"constrainProportions")};return a}#u(){const e=this.#i,t=this.#e,i=this.#a,l={buttons:[],content:$lib.element(),selected:null,create:g$3(function(n){n.onSelect=function(r){this.selected=r;}.bind(this),this.buttons.push(e.createButton(n.id,t.imageDialogAlignButtonId,this.content,n));},"create"),hideAll:g$3(function(){$lib.each(this.buttons,n=>{n.deselect(),n.hide();});},"hideAll"),toggle:g$3(function(n,r){$lib.each(n,(o,d)=>{const c=this.buttons[o];d||c.select(),r?c.show():c.hide();});},"toggle"),select:g$3(function(n){const r=n.style;let o="";r.float=="left"?o="img-inline-align-left":r.float=="right"?o="img-inline-align-right":r.verticalAlign=="top"?o="img-inline-align-default-top":r.verticalAlign=="middle"?o="img-inline-align-default-center":r.verticalAlign=="bottom"?o="img-inline-align-default-bottom":r.marginLeft=="auto"&&r.marginRight=="auto"?o="img-align-center":r.marginLeft=="auto"&&(o="img-align-right"),$lib.each(this.buttons,d=>{if(d.cssClass.includes(o))return d.select(),!1});},"select")},a=t.labels,s=t.classOption;return l.create({id:"imgInlineAlignDefaultBottom",text:a.alignBottom,cssClass:t.getCssClass(s.IMG_INLINE_ALIGN_DEFAULT_BOTTOM),cssClassIcon:i.iconPrefix+t.getCssClass(s.IMG_INLINE_ALIGN_DEFAULT_BOTTOM),radioGroupId:"imageAlign1"}),l.create({id:"imgInlineAlignDefaultCenter",text:a.alignMiddle,cssClass:t.getCssClass(s.IMG_INLINE_ALIGN_DEFAULT_CENTER),cssClassIcon:i.iconPrefix+t.getCssClass(s.IMG_INLINE_ALIGN_DEFAULT_CENTER),radioGroupId:"imageAlign1"}),l.create({id:"imgInlineAlignDefaultTop",text:a.alignTop,cssClass:t.getCssClass(s.IMG_INLINE_ALIGN_DEFAULT_TOP),cssClassIcon:i.iconPrefix+t.getCssClass(s.IMG_INLINE_ALIGN_DEFAULT_TOP),radioGroupId:"imageAlign1"}),l.create({id:"imgInlineAlignLeft",text:a.alignLeft,cssClass:t.getCssClass(s.IMG_INLINE_ALIGN_LEFT),cssClassIcon:i.iconPrefix+t.getCssClass(s.IMG_INLINE_ALIGN_LEFT),radioGroupId:"imageAlign1"}),l.create({id:"imgInlineAlignRight",text:a.alignRight,cssClass:t.getCssClass(s.IMG_INLINE_ALIGN_RIGHT),cssClassIcon:i.iconPrefix+t.getCssClass(s.IMG_INLINE_ALIGN_RIGHT),radioGroupId:"imageAlign1"}),l.create({id:"imgAlignLeft",text:a.alignLeft,cssClass:t.getCssClass(s.IMG_ALIGN_LEFT),cssClassIcon:i.iconPrefix+t.getCssClass(s.IMG_ALIGN_LEFT),radioGroupId:"imageAlign2"}),l.create({id:"imgAlignCenter",text:a.alignCenter,cssClass:t.getCssClass(s.IMG_ALIGN_CENTER),cssClassIcon:i.iconPrefix+t.getCssClass(s.IMG_ALIGN_CENTER),radioGroupId:"imageAlign2"}),l.create({id:"imgAlignRight",text:a.alignRight,cssClass:t.getCssClass(s.IMG_ALIGN_RIGHT),cssClassIcon:i.iconPrefix+t.getCssClass(s.IMG_ALIGN_RIGHT),radioGroupId:"imageAlign2"}),l}}class H$1{static{g$3(this,"MediaDialog");}#t=null;#e;#i;#a;#l;constructor(e,t,i,l){this.#e=e,this.#i=t,this.#a=i,this.#l=l;}get dialog(){return this.#t}create(){const e=this.#e,t=this.#i,i=this.#a,l=i("mediaSrc"),a=i("mediaEmbed"),s=e.utility.attrPrefix+"embed",n=$lib.element("","","",e.labels.mediaDialogHeader),r=$lib.element(),o=$lib.element(),d=$lib.element("","","input","",{id:l,name:l}),c=$lib.element("","","textarea","",{id:a,name:a}),h=$lib.element("","","input","",{id:i("mediaCaption")}),m=$lib.element("","","input","",{id:i("mediaWidth")}),L={inputChanged:function(u){const T=u.target,v=T==d?c:d;v.disabled=T.value!="",T==d?this.#l.addValidatorRules(this.#t,[{name:d.name,dataType:4}]):this.#l.addValidatorRules(this.#t,[{name:c.name}]);}.bind(this)};[d,c].forEach(u=>$lib.on(u,"input",L.inputChanged));const f={};f.source=t.createFormField("fldMediaSrc",e.mediaDialogSourceFormFieldId,o,{label:e.labels.mediaSource,field:d}).element,f.embed=t.createFormField("fldMediaEmbed",e.mediaDialogEmbedFormFieldId,o,{label:e.labels.mediaEmbed,field:c}).element,f.width=t.createFormField("fldMediaWidth",e.mediaDialogWidthFormFieldId,o,{label:e.labels.mediaWidth,field:m}).element,f.caption=t.createFormField("fldCaption",e.mediaDialogCaptionFormFieldId,o,{label:e.labels.caption,field:h}).element;let C="{source}{embed}{caption}{width}",y="MediaDialogContent",I="Default"+y,D=e.hasTemplate(y);e.hasTemplate(y)||(e.addTemplate(I,C,!1),y=I),e.applyTemplate(r,y,f),r.querySelector(`#${i("fldMediaSrc")}`)||(f.source.style.display="none",r.appendChild(f.source)),r.querySelector(`#${i("fldMediaEmbed")}`)||(f.embed.style.display="none",r.appendChild(f.embed)),this.#t=t.createDialog("MediaDialog",e.mediaDialogId,{cssClass:e.getCssClass(e.classOption.MEDIA_DIALOG),header:n,content:r,onShowComplete:g$3(()=>{const u=e.layoutState.activeLayout.media;d.value=c.value=m.value="",d.disabled=c.disabled=!1,u&&(u.hasAttribute(s)?(c.value=u.firstElementChild.innerHTML,d.disabled=!0):(d.value=u.firstElementChild.firstElementChild.src,c.disabled=!0),m.value=u.style.width),this.#s(D,d.value,c.value?[{name:c.name}]:[{name:d.name,dataType:4}]);const T=u?{src:u.hasAttribute(s)?null:d.value,embed:u.hasAttribute(s)?c.value:null,width:m.value,caption:u.querySelector("figcaption")?.textContent||""}:null;e.events.onMediaDialogShow.fire(e,{container:r,activeItem:T,confirmSelection:g$3((v,p)=>this.#o(v,p,d,h),"confirmSelection")});},"onShowComplete"),onConfirm:g$3(()=>{this.#n(d,c,h,m,s);},"onConfirm")});}show(){this.#t?.show();}#s(e,t,i){if(this.#l.addValidatorRules(this.#t,i),e){const l=$UI.store[this.#t.id+"_Confirm"];t?l.enable():l.disable();}}#o(e,t,i,l){i.value=e,t&&(l.value=t),$UI.store[this.#t.id+"_Confirm"].enable();}#n(e,t,i,l,a){const s=this.#e;$lib.each(s.mediaURLReplacement,h=>{e.value.match(h.match)&&(e.value=e.value.replace(h.match,h.replace));});let n=s.layoutState.activeLayout.media,r=$lib.element(),o="",d=t.value?t.value:$lib.element("","","iframe","",{allow:"encrypted-media",allowfullscreen:"true",contenteditable:"false"},{src:e.value}).outerHTML;r.setAttribute("style","position: relative; padding-bottom: 56.25%;"),r.innerHTML=d;const c=r.querySelector("iframe");c&&c.setAttribute("style","position: absolute; left: 0; top: 0; width: 100%; height: 100%; border: 0;"),d=r.outerHTML,n?(n.removeAttribute(a),n.style.width=l.value?$lib.unit(l.value):null,n.innerHTML=d,i.value&&n.appendChild($lib.element("","","figcaption",i.value)),s.history.addItem()):(i.value&&(o=$lib.element("","","figcaption",i.value).outerHTML),n=s.history.noHistory(()=>s.contentManager.insertHTML({tag:"figure",styles:{width:l.value?$lib.unit(l.value):null},attributes:{[s.utility.attrPrefix+"media"]:""},selectable:!0,select:!0,allowContent:!1,isPhrasingContent:!1,innerHTML:d+o}))),t.value&&n.setAttribute(a,""),s.history.addItem();}}componyx.UI.editor_modules.DialogManager;
65
+
66
+
67
+ var R$1=Object.defineProperty;var p$5=(m,t)=>R$1(m,"name",{value:t,configurable:!0});componyx.UI.editor_modules=componyx.UI.editor_modules||{},componyx.UI.editor_modules.EventManager=class{static{p$5(this,"EventManager");}#t;#e;constructor(t){this.editor=t,this.utility=t.utility;}bindEvents(){if(!this.editor.getEditorElement())return;const t=this.editor.getEditorElement(),e=this.editor.getDoc();t.contentEditable=!0,t.spellcheck=this.editor.defaultSpellcheck,$lib.on(t,"focus",this.focus,null,this,!0),$lib.on(t,"blur",this.blur,null,this,!0),$lib.on(t,"drop",this.drop,null,this,!0),$lib.on(t,"dragEnd",this.dragEnd,null,this,!0),$lib.on(t,"paste",this.paste,null,this,!0),$lib.on(t,"pointerdown",this.pointerDown,null,this,!0),$lib.on(t,"keydown",this.keyDown,null,this,!0),$lib.on(e,"selectionchange",this.selectionChange,null,this,!0),$lib.on(e,"pointerup",this.pointerUp,null,this,!0),$lib.on(document,"pointerup",this.documentPointerUp,null,this,!0),$lib.on(document,"keyup",this.documentKeyUp,null,this,!0),$lib.on(window,"resize",this.windowResize,null,this,!0),this.editor.table.bindEvents();}disposeEvents(){if(!this.editor.getEditorElement())return;const t=this.editor.getEditorElement(),e=this.editor.getDoc();$lib.off(t,"focus",this.focus),$lib.off(t,"blur",this.blur),$lib.off(t,"drop",this.drop),$lib.off(t,"dragEnd",this.dragEnd),$lib.off(t,"paste",this.paste),$lib.off(t,"pointerdown",this.pointerDown),$lib.off(t,"keydown",this.keyDown),$lib.off(e,"selectionchange",this.selectionChange),$lib.off(e,"pointerup",this.pointerUp),$lib.off(document,"pointerup",this.documentPointerUp),$lib.off(document,"keyup",this.documentKeyUp),$lib.off(window,"resize",this.windowResize),this.editor.table.disposeEvents();}focus(t){this.editor.setActiveEditor(t.target)&&(this.editor.activateDocument(),this.editor.cancelSelectionChange=!1,this.editor.contentManager.hasContent()||this.editor.contentManager.insertParagraph(),this.editor.hasEditables()||this.editor.element.classList.add(this.editor.getCssClass(this.editor.classOption.FOCUS)),this.editor.setToolbarBoxDisplay(),this.editor.layoutState.resetActiveModes());}blur(t){if(this.editor.allowToolbarBoxHide){const e=this.editor.getActiveEditor(t.target);e&&this.editor.contentManager.clearEmptyParagraph(e);}this.editor.hasEditables()||this.editor.element.classList.remove(this.editor.getCssClass(this.editor.classOption.FOCUS)),this.editor.deactivateDocument(),this.editor.setToolbarBoxDisplay(!1),this.editor.cancelSelectionChange=!0;}selectionChange(t){const i=(t.target?.ownerDocument||document).activeElement;!i||!this.editor.setActiveEditor(i)||this.editor.cancelSelectionChange||(clearTimeout(this.#t),this.#t=setTimeout(this.#i.bind(this,i),0));}keyDown(t){if(!this.editor.setActiveEditor(t.target))return;this.editor.activateDocument(),this.editor.contentManager.hasContent()||this.editor.contentManager.insertParagraph();const e=this.editor.selectionRange,i=e.getRange(),o=i.startContainer,d=e.getNodesInRange(i),s=e.getRootNodesInRange(i,d),r=s[0],l=r.previousSibling,u=s[s.length-1],n=this.editor.nodeManager.isList(r)||r.nodeName==="LI",a=t.key.toLowerCase(),c=this.utility.isPrintableChar(t),b=!!r.closest("td, th");if(this.editor.setToolbarBoxDisplay(),c&&!e.allowContent(i))return !1;if((c||" enter tab delete backspace ".indexOf(" "+a+" ")>-1)&&this.#o(r,i.collapsed===!1),t.ctrlKey&&a==="a")return e.selectAll(),!1;if(a==="enter"&&t.shiftKey)return this.editor.contentManager.insertBR(i),!1;if(a==="enter"&&!t.shiftKey&&r.nodeName!=="P"&&!n)return this.editor.contentManager.insertParagraph(),!1;if(a==="backspace"&&i.collapsed){const h=o.nodeType===3&&o.nodeValue.match(/^\uFEFF+$/),E=o.nodeName==="BR";if(h||E){const g=h?this.editor.nodeManager.sibling(o,r,!0):o,y=h?o:o.nextSibling?.nodeValue?.match(/^\uFEFF+$/)?o.nextSibling:null,f=this.editor.nodeManager.sibling(g,r,!0,3);if(g?.nodeName==="BR")return g.remove(),y?.remove(),f&&(i.setStart(f,f.textContent.length),i.collapse(!0),e.restoreRange(i)),!1}}if(c&&i.collapsed&&o.nodeType===3&&this.editor.nodeManager.isLayoutNode(o.parentNode)&&o.textContent.match(/^\uFEFF+$/g)&&(i.setStart(o,0),i.setEnd(o,o.length),this.editor.storeRange(i)),c&&r.textContent.length===0&&this.editor.nodeManager.createTextNodePlaceHolder(r),a==="backspace"&&e.isCaretAtListItemStart(i))return this.editor.indent("-"+this.editor.indentValue),!1;if(a==="tab")return !t.shiftKey&&!n&&b?void 0:(!t.shiftKey&&i.collapsed&&!n?e.insertIntoRange(i,this.editor.getDoc().createTextNode(this.utility.tabChar),null,!0):this.editor.indent((t.shiftKey?"-":"")+this.editor.indentValue),!1);if(t.ctrlKey&&this.editor.getSortedCommands().find(h=>h.shortcutKey&&h.shortcutKey.toLowerCase()===a))return !1;if(a==="backspace"&&i.collapsed&&l&&l.contentEditable==="false"&&e.isCaretAtParagraphStart(i))return l.hasAttribute(this.utility.selAttr)?this.editor.selectNode.call(l,!1):i.startContainer.previousSibling.remove(),!1;if((r.contentEditable==="false"||o.contentEditable==="false")&&" enter delete backspace ".indexOf(" "+a+" ")>-1&&(this.editor.resizer.clear(!0),this.editor.paragraphButtons.destroy(this.editor.getEditorElement()),r.contentEditable==="false"?$lib.each(s,h=>{h.nodeType===1&&h.contentEditable==="false"&&h.remove();}):o.remove(),(a==="backspace"||a==="delete")&&u.contentEditable==="false"))return !1}pointerDown(t){if(!this.editor.setActiveEditor(t.target))return;const e=$lib.clientX(t);setTimeout(this.editor.nodeManager.createCursorSpace.bind(this.editor.nodeManager,e),0);}pointerUp(t){this.editor.menuManager.menu.collapseAllDelayed(),this.editor.toolbar.hideBoxes(t),this.editor.format.cloneStamp&&this.editor.format.pasteFormat(),this.editor.format.cloneStamp=null,this.editor.deactivateDocument();}documentPointerUp(t){this.editor.toolbar.hideBoxes(t);}documentKeyUp(t){this.editor.deactivateDocument();}drop(t){const e=$lib.clientX(t),i=$lib.clientY(t),o=t.dataTransfer.files,d=this.editor.getDoc();if(o.length&&(d.caretRangeFromPoint||d.caretPositionFromPoint)){let s,r;$lib.each(o,l=>{if(l&&l.type.match("image.*")){t.stopPropagation(),t.preventDefault();const u=window.URL.createObjectURL(l),n=new Image;d.caretRangeFromPoint&&!s?s=d.caretRangeFromPoint(e,i):s||(r=d.caretPositionFromPoint(e,i),s=d.createRange(),s.setStart(r.offsetNode,r.offset),s.collapse()),s.insertNode(n),s.setStartAfter(n),n.onload=()=>{this.editor.activateDocument(),n.setAttribute("width",n.naturalWidth),n.setAttribute("height",n.naturalHeight),n.__widthRatio=n.width/n.height;const a=$lib.element({tag:"figure"});a.contentEditable=!1,$lib.surround(a,n),this.editor.events.onImageLoad.fire(this.editor,{imageElement:n,file:l});},n.src=u,this.editor.events.onImageDrop.fire(this.editor,{imageElement:n,file:l});}}),this.editor.contentManager.ensureDocStructure(this.editor.getEditorElement());}return this.editor.history.addItem(),!1}dragEnd(t){this.editor.history.addItem();}paste(t){const e=!!t.clipboardData?.getData("text/html");setTimeout(()=>{const i=this.editor.getEditorElement(),o=this.editor.selectionRange,d=o.ensureTextRange(o.getRange()),s=o.createRangeMarker(d),r=i.innerHTML;e&&(i.innerHTML=this.editor.sanitizer?this.editor.sanitizer(r):this.editor.getSanitizer().sanitize(r)),this.editor.contentManager.ensureDocStructure(i,null,s),this.editor.events.onPaste.fire(this.editor,{event:t});},0);}windowResize(t){setTimeout(()=>{const e=this.editor.getSelectedNodes();this.editor.getEditorElement()&&e.length===1&&this.editor.selectNode.call(e[0],!1);},0);}#i(t){const e=this.editor.selectionRange;this.editor.activateDocument(),e.getRange(),!(this.editor.renderState!==2||!this.editor.setActiveEditor(t)||!e.getSelection().rangeCount)&&(e.rangeChanged(this.editor.getStoredRange())&&(this.editor.storeRange(e.getRange()),this.editor.contentManager.hasContent()||this.editor.contentManager.insertParagraph(),this.editor.clearSelection(),this.editor.resizer.clear(),e.selectNodesInRange(this.editor.getStoredRange()),!this.editor.element.className.includes(" fullscreen")&&this.editor.getToolbarDisplay(this.editor.getEditorElement())===componyx.UI.Editor.ToolbarDisplayOption.CARET&&this.editor.setToolbarBoxDisplay(!this.editor.getStoredRange().collapsed),this.editor.events.onSelectionChange.fire(this.editor)),this.editor.layoutState.getState(),this.editor.deactivateDocument());}#o(t,e=!1){clearTimeout(this.#e),this.#e=setTimeout(()=>{const i=this.editor.selectionRange;if(this.editor.activateDocument(),!this.editor.history.hasDocumentChanged())return;const o=i.ensureTextRange(this.editor.selectionRange.getRange()),d=i.createRangeMarker(o);e?this.editor.contentManager.ensureDocStructure(this.editor.getEditorElement(),o,d):(this.editor.contentManager.cleanUp(t,null,o,d),i.removeRangeMarker(d)),this.editor.history.addItem(),this.editor.layoutState.getState();},0);}};componyx.UI.editor_modules.EventManager;
68
+
69
+
70
+ var C$4=Object.defineProperty;var p$4=(R,e)=>C$4(R,"name",{value:e,configurable:!0});componyx.UI.editor_modules=componyx.UI.editor_modules||{},componyx.UI.editor_modules.Format=class{static{p$4(this,"Format");}constructor(e){this.editor=e,this.instance=e,this.utility=e.utility,this.cloneStamp=null;}setBlockStyle(e,t){const i=this.editor;i.activateDocument();const r=i.selectionRange,n=i.history;let s=r.getRange();if(!s)return;let l=r.getRootNodesInRange(s);!l||!l.length||(l.forEach(a=>{t==null||t===""?a.style.removeProperty(e):a.style.setProperty(e,t);}),n.addItem());}toggleLayoutNode(e){this.editor.activateDocument();let t=this.editor.selectionRange.getRange();if(!this.allowContent(t))return;t=this.editor.selectionRange.ensureTextRange(t);let i=this.editor.selectionRange.getRootNodesInRange(t),r=i.length,n=i[0],s=e.tag,l=e.styles,a=this.isClearStyle(l),o=!l||!$lib.isEmpty(a),h=this.editor.nodeManager.getLayoutNode(s,t.startContainer,i[0]),d,u;if(this.editor.history.historyStack.get(this.editor.getEditorElement()).items.length==0&&(t=this.editor.history.addItem(t)),t.collapsed)this.isWordSelection(t,n)?h&&l&&this.canUpdateStyleNode(h,n,a)?(this.updateNodeStyles(h,l),this.editor.contentManager.cleanUp(n,null,t)):h&&o?this.removeWordLayoutNode(s,n,t,a):a||this.addWordLayoutNode(s,l,n,t):(h&&o?this.removeLayoutNode(s,n,t,a):a||this.addLayoutNode(this.createLayoutNode(s,l),t),this.editor.contentManager.cleanUp(n,null,t));else {d=this.editor.selectionRange.createRangeMarker(t),t=this.editor.selectionRange.restoreRangeToMarker(d,this.editor.getDoc().createRange());for(var g=0;g<r;++g){let f=!0;if(n=i[g],u=g==r-1,!("UL OL TABLE TR".split(" ").indexOf(n.nodeName)>-1)){if(h&&o)this.removeNodesFromRange(n,s,t,!g,u,a);else if(!a){let c=this.createLayoutNode(s,l);f=this.addNodeToRange(n,c,t,!g,u),g===0&&c.insertBefore($lib("#"+d.startId),c.firstChild);}f&&(t=this.editor.selectionRange.restoreRangeToMarker(d,this.editor.getDoc().createRange()),this.editor.contentManager.cleanUp(n,null,t,d));}}}this.editor.history.addItem(this.editor.selectionRange.getRange(),d);}copyFormat(){this.editor.activateDocument();let e=this.editor.selectionRange.getRange(),t=this.editor.nodeManager.getRootNode(e.startContainer);return this.cloneStamp=this.editor.nodeManager.getLayoutNodes(e.startContainer,t,!0),$lib.isEmpty(this.cloneStamp)&&(this.cloneStamp=null),this.cloneStamp}pasteFormat(e,t=!0){if(this.editor.activateDocument(),e=e||this.cloneStamp,e){t&&this.editor.history.noHistory(()=>this.clearFormat());let i=this.editor.selectionRange,r=i.ensureTextRange(i.getRange()),n=i.createRangeMarker(r),s=i.getRootNodesInRange(r),l=s.length,a=s[0],o,h;r.collapsed&&!this.isWordSelection(r,a)?this.addLayoutNode(this.editor.nodeManager.buildLayoutTree(e),r):(r.collapsed&&(o=this.createWordRange(a,n)),r=o?o.range:r,$lib.each(s,(d,u)=>{h=u==l-1,this.addNodeToRange(d,this.editor.nodeManager.buildLayoutTree(e),r,!u,h)&&(r=this.editor.selectionRange.restoreRangeToMarker(n,this.editor.getDoc().createRange()),this.editor.contentManager.cleanUp(d,null,r,n));}),o&&o.clear()),this.editor.history.addItem(null,n),arguments.length||(this.cloneStamp=null);}}clearFormat(){this.editor.activateDocument();let e=this.editor.selectionRange,t="*",i=e.ensureTextRange(this.editor.selectionRange.getRange()),r=e.getRootNodesInRange(i),n=r.length,s=r[0],l;if(i.collapsed)this.isWordSelection(i,s)?this.removeWordLayoutNode(t,s,i):this.removeLayoutNode(t,s,i);else {let a=e.createRangeMarker(i);i=e.restoreRangeToMarker(a,this.editor.getDoc().createRange()),$lib.each(r,(o,h)=>{s=r[h],l=h==n-1,this.removeNodesFromRange(s,t,i,!h,l),i=e.restoreRangeToMarker(a,this.editor.getDoc().createRange()),this.editor.contentManager.cleanUp(s,null,i,a);}),e.removeRangeMarker(a);}this.editor.history.addItem();}addLayoutNode(e,t){$lib.insertNode(this.editor.nodeManager.getRootNode(e),!0,!0,t),t.setStart(this.editor.nodeManager.createTextNodePlaceHolder(e,null,this.utility.zeroWidthChar),0),t.collapse(!0);let i=e.nextSibling;i&&i.textContent==this.utility.zeroWidthChar&&i.remove();}removeLayoutNode(e,t,i,r){this.createEmptyWord(i),this.removeWordLayoutNode(e,t,i,r);}addWordLayoutNode(e,t,i,r){let n=this.editor.selectionRange.createRangeMarker(r),s=this.createLayoutNode(e,t).outerHTML,l=`</${e}>`,a=s.substr(0,s.length-l.length);this.surroundWord(i,n,a,l),this.editor.selectionRange.restoreRangeToMarker(n,r),this.editor.contentManager.cleanUp(i,null,r,n),this.editor.selectionRange.removeRangeMarker(n),r.commonAncestorContainer.normalize();}removeWordLayoutNode(e,t,i,r){let n=this.editor.selectionRange.createRangeMarker(i),s=this.createWordRange(t,n,!0);this.removeNodesFromRange(t,e,s.range,!0,!0,r),s.clear(),this.editor.selectionRange.restoreRangeToMarker(n,i),this.editor.contentManager.cleanUp(t,null,i,n),this.editor.selectionRange.removeRangeMarker(n);}createEmptyWord(e){let t=this.editor.getDoc().createTextNode(this.utility.zeroWidthChar+this.utility.zeroWidthChar);$lib.insertNode(t,!0,!0,e),e.setStart(t,1),e.collapse(!0);}createWordRange(e,t,i){let r=this.utility.newGuid(),n=this.utility.newGuid(),s='<span id="'+r+'"></span>',l='<span id="'+n+'"></span>',a;return this.surroundWord(e,t,s,l,i),a=this.editor.getDoc().createRange(),a.setStartAfter($lib("#"+r)),a.setEndBefore($lib("#"+n)),{range:this.editor.selectionRange.ensureTextRange(a),clear:p$4(function(){e.querySelectorAll("#"+r).forEach(o=>o.remove()),e.querySelectorAll("#"+n).forEach(o=>o.remove());},"clear")}}surroundWord(e,t,i,r,n){let s=$lib("#"+t.startId),l="\u200C",a="\u200D",o=this.getTextNodeWithSpace(s,e,!0),h=this.getTextNodeWithSpace(s,e);o.textContent.length||(o.textContent=this.utility.zeroWidthChar),h.textContent.length||(h.textContent=this.utility.zeroWidthChar),o.textContent=o.textContent.replace(this.utility.prevWordRegEx,n?l+"$1$2":"$1"+l+"$2"),h.textContent=h.textContent.replace(this.utility.nextWordRegEx,n?"$1$2"+a:"$1"+a+"$2");let d=e.innerHTML;d=d.replace(/[\u200c]/gm,i).replace(/[\u200d]/gm,r),e.innerHTML=d;}getTextNodeWithSpace(e,t,i){let r;for(e=this.editor.nodeManager.getFirstTextNode(e,t,i,!0);!e.textContent.match(/[\s]/gm)&&(r=this.editor.nodeManager.getFirstTextNode(this.editor.nodeManager.sibling(e,t,i,null,!0),t,i,!0),r&&r!=e);){const n=this.editor.getDoc().createRange();if(i?(n.setStartAfter(r),n.setEndBefore(e)):(n.setStartAfter(e),n.setEndBefore(r)),n.cloneContents().querySelector("br"))break;e=r;}return e}addNodeToRange(e,t,i,r,n){this.editor.selectionRange.splitRange(i,r,n);let s=this.editor.nodeManager.getElementsByTagName(e,"*"),l=s.filter(o=>this.editor.nodeManager.isBlock(o)||this.editor.nodeManager.isLayoutRoot(o)),a=[];if(l.length){if(!r&&!n?(a=this.editor.nodeManager.getSiblings(e,e.lastChild),a.push(e.lastChild)):a=this.editor.nodeManager.getSiblings(e,n?i.endContainer.nextSibling:null,r?i.startContainer.previousSibling:null),$lib.each(l,o=>{let h=a.indexOf(o);h>-1&&a.splice(h,1);}),a.length){let o=this.editor.getDoc().createRange();if(o.setStartBefore(a[0]),o.setEndAfter(a[a.length-1]),o.toString().length)this.editor.selectionRange.surroundRange(o,t);else return !1}}else {let o=this.editor.getDoc().createRange();if(o.selectNodeContents(e),r&&o.setStart(i.startContainer,i.startOffset),n&&o.setEnd(i.endContainer,i.endOffset),o.toString().length||e.nodeName=="FIGURE"&&t.nodeName=="A"&&!t.parentNode)this.editor.selectionRange.surroundRange(o,t);else return !1}return !0}removeNodesFromRange(e,t,i,r,n,s){let l=this.editor.getDoc().createRange(),a=i.startContainer,o=i.endContainer,h,d=o.textContent.length,u=[],g=new Map,f,c;t=t.toUpperCase(),this.editor.selectionRange.splitRange(i,r,n),a=i.startContainer,o=i.endContainer,h=i.startOffset,d=o.textContent.length,r&&(t=="*"||s?(u=this.editor.nodeManager.getLayoutNodes(i.startContainer,e,null,s?2:null),c=u[u.length-1]):(c=this.editor.nodeManager.getLayoutNode(t,i.startContainer,e),u[0]=c),c&&$lib.each(u,(m,S)=>{g.set(m.cloneNode(!1),this.editor.nodeManager.getSiblings(m,i.startContainer,i.endContainer)),this.removeLayout(m,s),i.setStart(a,h),n&&i.setEnd(o,d);})),l.selectNodeContents(e),r&&l.setStart(i.startContainer,i.startOffset),n&&l.setEnd(i.endContainer,i.endContainer.textContent.length),f=l.extractContents();let y=$lib.element("","","");y.appendChild(f),this.removeNodes(this.editor.nodeManager.getElementsByTagName(y,t),t,s),l.insertNode($lib.extract(y)),this.restoreSiblings(g);}removeNodes(e,t,i){$lib.each(e,r=>{(this.editor.nodeManager.isTextDecorationNode(r)||this.editor.nodeManager.isStyleNode(r))&&(t=="*"||r.nodeName==t)&&this.removeLayout(r,i);});}removeLayout(e,t){if(t){const i=this.hasStyleKey(e,t);i&&this.hasOtherStyleKeys(e,t)?e.style.removeProperty(t):i&&$lib.unsurround(e);}else $lib.unsurround(e);}restoreSiblings(e){for(let[t,i]of e)$lib.each(i,r=>{$lib.surround(t.cloneNode(!1),r);});}restoreOriginalStyleNode(e,t){let i=t.nextSibling;for($lib.surround(e,t);i;)t=i,i=t.nextSibling,e.appendChild(t);}canUpdateStyleNode(e,t,i){if(!i)return !0;let r=this.editor.nodeManager.getLayoutNodes(e,t,null,2),n=!0;return $lib.each(r,s=>n=!this.hasStyleKey(s,i)),n}createLayoutNode(e,t,i,r,n){return this.updateNodeStyles($lib.element("","",e,i,r,n),t)}updateNodeStyles(e,t,i){return $lib.isEmpty(t)||e.setAttribute(this.utility.attrPrefix+"style",""),$lib.each(t,(r,n)=>{i?e.style.removeProperty(n):e.style.setProperty(n,r);}),e}getLayoutTreeStyles(e,t=new Map){if(!e)return {};if(t.has(e))return t.get(e);let i={},r=e;for(;r;)this.editor.nodeManager.isStyleNode(r)&&this.iterateStyle(r,(n,s)=>{n in i||(i[n]=s);}),r=r.parentNode;return t.set(e,i),i}updateDeeperStyleNodes(e,t){if($lib.isEmpty(t))return;let i=this.editor.nodeManager.getElementsByTagName(e,"span");$lib.each(i,r=>{this.editor.nodeManager.isStyleNode(r)&&(this.hasDifferentStyleProp(e,r)?this.updateNodeStyles(r,t,!0):$lib.unsurround(r));});}hasEqualStyles(e,t){if(e.style.cssText==t.style.cssText)return !0;let i={has:!1};return this.iterateStyle(t,function(r,n,s){return r.has=e.style[n]==s}.bind(this,i)),i.has}hasDifferentStyleProp(e,t){let i={has:!1};return this.iterateStyle(t,function(r,n,s){return !(r.has=$lib.isEmpty(e.style[n]))}.bind(this,i)),i.has}hasOtherStyleKeys(e,t){let i={has:!1};return this.iterateStyle(e,function(r,n,s){return !(r.has=n!=t)}.bind(this,i)),i.has}hasStyleKey(e,t){let i={has:!1};return this.iterateStyle(e,function(r,n,s){return !(r.has=n==t)}.bind(this,i)),i.has}copyStyles(e,t){this.iterateStyle(e,(i,r)=>{t.style[i]=r;});}iterateStyle(e,t){if(!e.style)return;let i=e.style.cssText.split(";"),r,n;$lib.each(i,s=>{if(r=s.split(/:(.+)/),n=$lib.trim(r[0]),!$lib.isEmpty(n))return t(n,$lib.trim(r[1]))});}canMerge(e,t){return e?this.editor.nodeManager.isStyleNode(e)&&this.editor.nodeManager.isStyleNode(t)?e.style.cssText==t.style.cssText:(e.nodeType!=1||!e.hasAttributes())&&e.nodeName==t.nodeName:!1}isClearStyle(e){let t=null;return $lib.each(e,(i,r)=>(i==null&&(t=r),!t)),t}allowContent(e){return e.startContainer.nodeType!=1||e.startContainer.contentEditable!="false"}isWordSelection(e,t){let i=e.startContainer,r=this.editor.nodeManager.getTextContainer(i,t),n=this.getPreviousChar(i,r,e),s=this.getNextChar(i,r,e);return !$lib.isEmpty(n)&&n.match(/[^\s]/)&&!$lib.isEmpty(s)&&s.match(/[^\s]/)}getPreviousChar(e,t,i){let r,n="";return i.startOffset>0?n=e.textContent[i.startOffset-1]:(r=this.editor.nodeManager.sibling(e,t,!0,null,!0),n=r?r.textContent[r.textContent.length-1]:""),n}getNextChar(e,t,i){let r,n="";return e.textContent.length>i.startOffset?n=e.textContent[i.startOffset]:(r=this.editor.nodeManager.sibling(e,t,!1,null,!0),n=r?r.textContent[0]:""),n}};componyx.UI.editor_modules.FormatManager;
71
+
72
+
73
+ var c$6=Object.defineProperty;var h$4=(d,e)=>c$6(d,"name",{value:e,configurable:!0});componyx.UI.editor_modules=componyx.UI.editor_modules||{},componyx.UI.editor_modules.History=class{static{h$4(this,"History");}constructor(e){this.editor=e,this.historyStack=new Map,this.cancelHistoryAction=!1;}init(e){this.historyStack.set(e,{items:[],index:-1});}dispose(){this.historyStack=new Map;}addItem(e,t){let o=this.editor.getEditorElement();if(this.cancelHistoryAction||!this.hasDocumentChanged()){t&&this.editor.selectionRange.removeRangeMarker(t);return}let r=this.editor.isBlockViewSelected();this.editor.activateDocument(),this.editor.hideOverlays(),this.editor.disableBlockView(),e=this.editor.selectionRange.ensureTextRange(e||this.editor.selectionRange.getRange());let i=this.historyStack.get(o),l=i.items.length-(i.index+1),s={marker:t||this.editor.selectionRange.createRangeMarker(e),html:o.innerHTML};r&&this.editor.toggleBlockView(!0),e=this.editor.selectionRange.restoreRangeToMarker(s.marker,o.ownerDocument.createRange()),this.editor.selectionRange.removeRangeMarker(s.marker),o.normalize(),this.editor.selectionRange.selectNodesInRange(e),l>0&&i.items.splice(l*-1),i.items.push(s);const n=this.editor.maxHistoryLength;if(n&&i.items.length>n){const a=i.items.length-n;i.items.splice(0,a);}return i.index=i.items.length-1,i.index>0&&this.editor.getComponent("undo").enable(),this.editor.getComponent("redo").disable(),e}undo(e){let t=this.historyStack.get(e);t.index!=0&&(t.index--,this.restoreItem(),this.editor.getComponent("redo").enable(),t.index==0&&this.editor.getComponent("undo").disable(),this.editor.events.onUndo.fire(this.editor,null));}redo(e){let t=this.historyStack.get(e);t.index!=t.items.length-1&&(t.index++,this.restoreItem(),this.editor.getComponent("undo").enable(),t.index==t.items.length-1&&this.editor.getComponent("redo").disable(),this.editor.events.onRedo.fire(this.editor,null));}restoreItem(){this.editor.activateDocument();let e=this.editor.getEditorElement(),t=this.historyStack.get(e),o=t.items[t.index];this.editor.hideOverlays(),this.editor.disableBlockView(),e.innerHTML=o.html,this.editor.contentManager.createSelectables(e);let r=this.editor.selectionRange.restoreRangeToMarker(o.marker,e.ownerDocument.createRange());this.editor.selectionRange.removeRangeMarker(o.marker),this.editor.selectionRange.selectNodesInRange(r),this.editor.isBlockViewSelected()&&this.editor.toggleBlockView(!0);}hasDocumentChanged(){let e=this.editor.getEditorElement(),t=this.historyStack.get(e);if($lib.isEmpty(t.items))return !0;let o=t.items[t.index],r=o.marker,i=$lib.element("","","",[o.html]);return $lib.remove(i.querySelector("#"+r.startId)),r.endId&&$lib.remove(i.querySelector("#"+r.endId)),i.innerHTML!=e.innerHTML}noHistory(e){this.cancelHistoryAction=!0;let t=e();return this.cancelHistoryAction=!1,t}destroy(){this.historyStack=new Map;}};componyx.UI.editor_modules.History;
74
+
75
+
76
+ var c$5=Object.defineProperty;var r$4=(d,t)=>c$5(d,"name",{value:t,configurable:!0});componyx.UI.editor_modules=componyx.UI.editor_modules||{},componyx.UI.editor_modules.LayoutState=class{static{r$4(this,"LayoutState");}constructor(t){this.editor=t,this.utility=t.utility,this.tree=null,this.activeLayout={},this.activeMode={editableElement:null,keys:{}},this.checkCommands=[];}init(){this.activeLayout.block="P",this.activeLayout.align="left",this.activeLayout.fontSize=this.editor.defaultFontSize,this.activeLayout.fontFamily=this.editor.defaultFontFamily,this.activeLayout.styleItem={},this.checkCommands=this.editor.getSortedCommands().filter(t=>!$lib.isEmpty(t.isActive)),this.checkCommands.forEach(t=>{this.activeLayout[t.id]=null;});}dispose(){this.editor=null,this.utility=null,this.tree=null,this.activeLayout={},this.activeMode={editableElement:null,keys:{}},this.checkCommands=[];}getState(){this.editor.activateDocument();let t=this.editor.selectionRange.getRange();if(t){let e=t.startContainer,i=e.nodeType==1?e:e.parentElement,o=this.editor.nodeManager.getRootNode(i),n=this.getSurroundingLayoutNodes(i,o),a=n.layoutNodes,s=n.tree;if(s.length){if(this.tree&&this.tree.length==s.length){let l=!1;if($lib.each(this.tree,(h,u)=>!(l=!h.isEqualNode(s[u]))),!l)return}if(this.tree=[],$lib.each(s,(l,h)=>{this.tree.push(l.cloneNode(!0));}),this.activeLayout.block=o.nodeName,this.activeLayout.align=o.style.textAlign||this.editor.defaultAlign,this.activeLayout.lineHeight=o.style.lineHeight||this.editor.defaultLineHeight,this.activeLayout.fontFamily=this.editor.defaultFontFamily,this.activeLayout.styleItem={},this.detectFontSize(i,a),a.fontFamilyNode&&(this.activeLayout.fontFamily=a.fontFamilyNode.style.fontFamily.replace(/\"/g,"")),a.styleNode){let l=this.editor.menuManager.loadMenuItem(a.styleNode.getAttribute(this.utility.attrPrefix+"styleid"));l&&(this.activeLayout.styleItem=l.item);}this.checkCommands.forEach(l=>{this.activeLayout[l.id]=a[l.id];}),this.editor.hasEditables()||(this.updatePath(s),this.updateWordCount());}}this.updateLayoutSettings();}getSurroundingLayoutNodes(t,e){let i={},o=[],n=this.checkCommands.slice(),a=this.editor.getEditorElement();for(;t&&t!=a;)o.push(t),t!=e&&(!$lib.isEmpty(t.style.fontSize)&&!i.fontSizeNode&&(i.fontSizeNode=t),!$lib.isEmpty(t.style.fontFamily)&&!i.fontFamilyNode&&(i.fontFamilyNode=t)),!$lib.isEmpty(t.getAttribute(this.utility.attrPrefix+"styleid"))&&!i.styleNode&&(i.styleNode=t),$lib.each(n,(s,l)=>{s.isActive(t,s)&&(i[s.id]=s.getNode?s.getNode(t):t);}),t=t==e?null:t.parentElement;return {layoutNodes:i,tree:o.reverse()}}detectFontSize(t,e){let i=this.getFontSize(t);e.fontSizeNode&&(e.fontSizeNode==t||this.getFontSize(e.fontSizeNode)==i)?this.activeLayout.fontSize=e.fontSizeNode.style.fontSize:(this.activeLayout.fontSize=i,!this.editor.menuManager.loadMenuItem("fontSize_"+i)&&this.editor.addMissingFontSize&&(this.deselectMenuItem("fontSize"),this.editor.menuManager.buildFontSizeMenu([i]),this.editor.deactivateDocument(),this.editor.menuManager.renderMenuItem("FontSize"),this.editor.activateDocument()));}getFontSize(t){let e=window.getComputedStyle(t,null).getPropertyValue("font-size");return parseFloat(e)+"px"}updateLayoutSettings(){this.updateContent("block",this.activeLayout.block),this.updateContent("fontFamily",this.activeLayout.fontFamily),this.updateContent("fontSize",this.activeLayout.fontSize),this.updateContent("align",this.activeLayout.align),this.updateContent("lineHeight",this.activeLayout.lineHeight),this.updateContent("style",this.activeLayout.styleItem.text,this.activeLayout.styleItem.id),this.checkCommands.forEach(t=>{let e=t.id,i=this.editor.getComponent(e);i&&(this.activeLayout[e]&&!i.selected?i.select():!this.activeLayout[e]&&i.selected&&i.deselect());});}updateContent(t,e,i){i||(i=e);let o=t+"_"+i,n=this.editor.getComponent(t),a=this.editor.menuManager.loadMenuItem(o);if(!a)return this.deselectMenuItem(t);n&&!n.hasIcon&&(n.text=e,n.updateContent()),this.cancelMenuItemCommand(a.item),this.editor.menuManager.selectMenuItem(o);}cancelMenuItemCommand(t){let e=t.command;t.command=function(){t.command=e;};}deselectMenuItem(t){let e=this.editor.menuManager.getSelectedItemId(t);e&&this.editor.menuManager.deselectMenuItem(e);}updatePath(t){let e=this.editor.getPathElement();if(!e)return;let i=t.length;e.innerHTML="",$lib.each(t,(o,n)=>{$lib.on($lib.element(e,"","",o.nodeName.toLowerCase(),"",{className:"path-item"}),"click",this.editor.selectNode.bind(o,!0)),i>n+1&&$lib.element(e,"","","\u203A","",{className:"path-divider"});});}updateWordCount(){let t=this.editor.getWordCountElement();t&&(t.innerHTML="",this.editor.applyTemplate(t,"WordCount",this.getWordCount()));}getWordCount(){let t=this.editor.getEditorElement(),e=t.textContent,i=[];return $lib.each(t.childNodes,o=>{let n=o.textContent.replace(/\n+/g," ").replace(/\s+/g," ").replace(/^\s+/,"").replace(/\s+$/,"").split(" ");n[0]==""&&n.shift(),i=i.concat(n);}),{words:i.length,chars:e.replace(/\n+/g,"").length}}addActiveMode(t,e){this.activeMode.editableElement=this.editor.getEditorElement(),this.activeMode.keys[t]=e.bind(this.editor,!1);}removeActiveMode(t){delete this.activeMode.keys[t];}resetActiveModes(){let t=this.editor.getEditorElement();if(!this.activeMode.editableElement||this.activeMode.editableElement==t||$lib.isEmpty(this.activeMode.keys))return;let e=t;this.editor.setActiveEditor(this.activeMode.editableElement),$lib.each(this.activeMode.keys,function(i){i();}),this.editor.setActiveEditor(e);}};componyx.UI.editor_modules.LayoutState;
77
+
78
+
79
+ var y$1=Object.defineProperty;var c$4=(u,e)=>y$1(u,"name",{value:e,configurable:!0});componyx.UI.editor_modules=componyx.UI.editor_modules||{},componyx.UI.editor_modules.ListManager=class{static{c$4(this,"ListManager");}constructor(e){this.editor=e,this.utility=e.utility;}toggleListItem(e,o){this.editor.activateDocument(),this.editor.contentManager.hasContent()||this.editor.contentManager.insertParagraph();let t=this.editor.selectionRange,l=t.getRange(),s=t.getNodesInRange(l),d=t.getListItemNodesInRange(s),m=t.getRootNodesInRange(l,s,!1),i=t.createRangeMarker(t.ensureTextRange(l)),n=this.editor.menuManager.getSelectedItemId(e),a="list-style-type",r={},h=!1;n&&(n=n.replace(`${e}_`,"")),n=="disc"||n=="decimal"?(h=!0,r[a]=null):r[a]=n,$lib.each(m,g=>{if(g.nodeName==e)if(o)this.editor.format.updateNodeStyles(g,r,h);else {let f=g,p;for(;f;)p=this.editor.nodeManager.getListNode(f.parentElement,this.editor.getEditorElement()),this.decreaseListIndent(f,d,!p),f=p;}else {let f=this.editor.format.updateNodeStyles($lib.element("","",e),r);this.utility.listFilter.indexOf(g.nodeName)==-1&&f.appendChild($lib.element("","","li")),g.style.removeProperty(a),this.editor.nodeManager.setBlockElement(g,this.editor.nodeManager.getRootNode(f).cloneNode(!0));}}),this.editor.history.addItem(l,i),this.editor.deactivateDocument();}toggleListItemType(e){this.toggleListItem(e,!0);}increaseListIndent(e){let o=e.parentElement.nodeName,t=e.querySelector(this.utility.listFilter),l=e.previousElementSibling&&e.previousElementSibling.nodeName=="LI"?e.previousElementSibling:null,s=e.nextElementSibling&&e.nextElementSibling.nodeName=="LI"?e.nextElementSibling:null,d=s&&s.firstChild&&this.utility.listFilter.indexOf(s.firstChild.nodeName)>-1?s.firstChild:null,m=c$4(i=>{let n=i.parentElement;i.remove(),n.childNodes.length||n.remove();},"removeList");if(l){let i=l.querySelector(this.utility.listFilter);i||(i=$lib.element(l,"",o)),i.appendChild(e),t&&(i.insertBefore($lib.extract(t),e.nextSibling),m(t)),d&&(i.appendChild($lib.extract(d)),m(d));}else if(d)d.insertBefore(e,d.firstChild),t&&(d.insertBefore($lib.extract(t),e.nextSibling),m(t));else if(t){let i=e.cloneNode(!1);if(i.appendChild(this.editor.nodeManager.getNodesBefore(e,t)),t.insertBefore(i,t.firstChild),e.style.listStyleType="none",this.editor.nodeManager.sibling(t,e)){t.remove();let a=$lib.extract(e);if(a.childNodes.length){let r=e.cloneNode(!1);r.appendChild(a),t.appendChild(r);}e.appendChild(t);}}else {let i=e.cloneNode(!0);e.style.listStyleType="none",e.innerHTML="",e.appendChild($lib.element("","",o,i));}}decreaseListIndent(e,o,t=!0){let l=e.firstElementChild,s=e.parentElement,d=e.nextElementSibling,m=this.editor.getDoc().createDocumentFragment(),i=this.editor.getDoc().createDocumentFragment(),n,a,r,h,g;for(;l;)o.has(l)?(t&&o.delete(l),h=l.nextElementSibling,m.appendChild(l),n=l.querySelector(this.utility.listFilter),l=h,n&&this.increaseListDepth(n)):l=h?null:l.nextElementSibling;if(h)for(r=h;r;)h=r.nextElementSibling,i.appendChild(r),r=h;if(s.nodeName=="LI"){let f=m.lastChild;s.parentElement.insertBefore(m,s.nextElementSibling),n=s.firstElementChild,this.utility.listFilter.indexOf(n.nodeName)>-1&&!n.childNodes.length&&n.remove(),i.childNodes.length&&(a=f.querySelector(this.utility.listFilter),a||(a=$lib.element(f,"",e.nodeName)));}else {for(;r=m.firstChild;)g=$lib.element("","","p",$lib.extract(r)),s.insertBefore(g,d),r.remove();i.childNodes.length&&(a=$lib.element("","",e.nodeName),s.insertBefore(a,d));}a&&a.appendChild(i),e.childNodes.length||e.remove();}increaseListDepth(e){let o=$lib.element("","",e.nodeName),t=$lib.element("","","li","",{style:"list-style-type: none"});$lib.surround(t,e),$lib.surround(o,t);}isCaretAtListItemStart(e){let o=e.startContainer,t=o.nodeType==3?o.parentElement:o;return e.startOffset==0&&t.nodeName=="LI"}};componyx.UI.editor_modules.ListManager;
80
+
81
+
82
+ var u$6=Object.defineProperty;var d$5=(h,t)=>u$6(h,"name",{value:t,configurable:!0});componyx.UI.editor_modules=componyx.UI.editor_modules||{},componyx.UI.editor_modules.MenuManager=class{static{d$5(this,"MenuManager");}constructor(t){this.editor=t,this.cf=t.componentFactory,this.utility=t.utility,this.menu=null,this.defaultMenuButton=null;}loadMenuItem(t){return this.menu.loadItem(t)}renderMenuItem(t){let e=this.loadMenuItem(t);e&&this.menu.renderItem(e.item);}selectMenuItem(t){this.menu.selectItem(t);}deselectMenuItem(t){this.menu.deselectItem(t);}getSelectedItemId(t){return this.menu.getSelectedItemId(t)}getMenu(){return this.menu}async createMenu(){this.menu=this.cf.createMenu("Menu",this.editor.menuId,this.editor.element);let t=this.menu.itemList;this.#n(),t.push(this.#t({id:"Block"})),t.push(this.#t({id:"FontFamily"})),t.push(this.#t({id:"FontSize"})),t.push(this.#t({id:"Style"})),t.push(this.#t({id:"Align"})),t.push(this.#t({id:"LineHeight"})),t.push(this.#t({id:"OrderedList",cssClassItemGroup:"item-group box ordered-list"})),t.push(this.#t({id:"UnorderedList",cssClassItemGroup:"item-group box unordered-list"})),this.#l(),this.buildFontSizeMenu(this.editor.fontSizes),this.#d(),this.#h(),this.#a(),this.#s(this.menu.itemList[6],"OL",this.editor.orderedList),this.#s(this.menu.itemList[7],"UL",this.editor.unorderedList),await this.#o();}buildFontSizeMenu(t){let e,i=this.menu.itemList[2],l="fontSize";i.itemList.length||i.itemList.push(this.#e(l,this.editor.setFontSize.bind(this.editor,null))),$lib.each(t,s=>{let n=s.replace(/([^\d])/g,""),o={id:`${l}_${s}`,value:s,text:s,command:this.editor.setFontSize.bind(this.editor,s),radioGroupId:l};e&&n!=e&&(o.cssClass="first-type"),i.itemList.push(this.#t(o)),e=n;}),i.itemList.sort((s,n)=>parseFloat(s.value)-parseFloat(n.value));}#n(){this.defaultMenuButton=$UI.createComponent(componyx.UI.Button,{id:this.utility.getId("DefaultMenuButton"),primary:!1});}#e(t,e){return this.#t({id:`${t}_Default`,text:this.editor.labels.default,radioGroupId:t,command:e})}#t(t){return t.type=2,t.buttonId||(t.buttonId=this.defaultMenuButton.id),new componyx.UI.Menu.Item(t)}#l(){let t=this.menu.itemList[0],e="block",i=d$5((l,s,n,o,a)=>this.#t({id:a+"_"+l,value:l,text:this.editor.labels[l]?this.editor.labels[l]:s,templateId:n,command:o,radioGroupId:a}),"fn");for(let l=1;l<7;++l){let s=`H${l}`;t.itemList.push(i(s,`Heading ${l}`,s+"_Template",this.editor.setBlock.bind(this.editor,`h${l}`,null),e)),this.menu.addTemplate(s+"_Template",`<h${l}>{text}</h${l}>`);}t.itemList.push(i("P","Paragraph","Paragraph_Template",this.editor.setBlock.bind(this.editor,"p",null),e)),this.menu.addTemplate("Paragraph_Template","<p>{text}</p>"),t.itemList.push(i("PRE","Pre","Pre_Template",this.editor.setBlock.bind(this.editor,"pre",null),e)),this.menu.addTemplate("Pre_Template","<pre>{text}</pre>");}async#o(){let t=document.fonts;await t.ready;let e=new Set;const i=[];if(this.editor.detectFonts&&t.forEach(n=>{let o=n.family;e.has(o)||(i.push(o),e.add(o));}),this.editor.includeWebSafeFonts){let n=this.utility.webFonts;$lib.each(n,o=>{!e.has(o)&&t.check(`12px "${o}"`)&&(i.push(o),e.add(o));});}$lib.each(this.editor.fonts,n=>{e.has(n)||(i.push(n),e.add(n));}),$lib.each(this.editor.excludeFonts,n=>{if(e.has(n)){let o=i.indexOf(n);o>-1&&i.splice(o,1);}});let l=this.menu.itemList[1],s="fontFamily";l.itemList.push(this.#e(s,this.editor.setFontFamily.bind(this.editor,null))),$lib.each(i.sort(),n=>{l.itemList.push(this.#t({id:`${s}_${n}`,value:n,text:n,command:this.editor.setFontFamily.bind(this.editor,n),radioGroupId:"fontFamily"}));});}#d(){let t=this.menu.itemList[3];this.menu.addTemplate("StyleItem_Template",'<div class="style-item"><div class="preview {previewCssClass}"></div><div class="text">{text}</div></div>'),$lib.each(this.editor.styles,i=>{t.itemList.push(this.#i(i));});}#i(t){let e=this.#t({id:t.id,text:t.name,templateId:t.templateId||"StyleItem_Template",command:this.editor.setStyle.bind(this.editor,t),radioGroupId:"style",isCategory:t.isCategory,attributes:{previewCssClass:t.previewCssClass}});return $lib.each(t.itemList,i=>{e.itemList.push(this.#i(i));}),e}#h(){let t=this.menu.itemList[4],e=this.editor.labels,i="align",l=this.utility.iconPrefix;t.itemList.push(this.#e(i,this.editor.align.bind(this.editor,null))),$lib.each([`${i}Left`,`${i}Center`,`${i}Right`,`${i}Justify`],s=>{let n=`icon ${l+s.replace("align","align-").toLowerCase()}`,o={id:s.replace("align","align_").toLowerCase(),text:`<span class="${n}"></span>${e[s]}`,command:this.editor.align.bind(this.editor,s.toLowerCase().replace("align","")),radioGroupId:i};t.itemList.push(this.#t(o));});}#a(){let t=this.menu.itemList[5],e="lineHeight";t.itemList.push(this.#e(e,this.editor.lineHeight.bind(this.editor,null))),$lib.each(this.editor.lineHeights,i=>{t.itemList.push(this.#t({id:`${e}_${i}`,text:i,command:this.editor.lineHeight.bind(this.editor,i),radioGroupId:"lineHeight"}));});}#s(t,e,i){let l=this.utility.iconPrefix;$lib.each(i,s=>{t.itemList.push(this.#t({id:`${e}_${s}`,command:d$5(()=>this.editor.listManager.toggleListItemType(e),"command"),radioGroupId:e,cssClassIcon:`icon ico-xl ${l}list-${s.toLowerCase()}`,hasIcon:!0}));});}};componyx.UI.editor_modules.MenuManager;
83
+
84
+
85
+ var d$4=Object.defineProperty;var o$3=(u,e)=>d$4(u,"name",{value:e,configurable:!0});componyx.UI.editor_modules=componyx.UI.editor_modules||{},componyx.UI.editor_modules.NodeManager=class{static{o$3(this,"NodeManager");}constructor(e){this.editor=e,this.utility=e.utility;}isBookmark(e){return e&&e.nodeType==1&&e.nodeName=="A"&&e.hasAttribute("id")&&!e.hasAttribute("href")}isImage(e){return e&&e.nodeType==1&&!!e.querySelector(":scope > img")}isMedia(e){return e&&e.nodeType==1&&e.nodeName=="FIGURE"&&e.hasAttribute(this.utility.attrPrefix+"media")}isLink(e){return e&&e.nodeType==1&&e.nodeName=="A"&&e.href}isTagMatch(e,t){let i=!1,r=t.nodeName.toLowerCase();return e=$lib.isArray(e)?e:[e],$lib.each(e,function(l){return i=r==l.toLowerCase(),!i}),i}isBlock(e,t=!1){if(!e||e.nodeType!=1)return !1;let i=e.nodeName;return !t&&i.match(this.utility.wrappedNodesRegEx)?!1:i.match(this.utility.blockNodeRegEx)?!0:window.getComputedStyle(e,null).getPropertyValue("position")=="static"&&window.getComputedStyle(e,null).getPropertyValue("display")=="block"}isList(e){return e.nodeType==1&&"UL OL".split(" ").indexOf(e.nodeName)>-1}isLayoutRoot(e){return e.nodeType==1&&"LI".split(" ").indexOf(e.nodeName)>-1}isLayoutNode(e){return this.isTextDecorationNode(e)||this.isStyleNode(e)}isTextDecorationNode(e){return e.nodeType==1&&$lib.isEmpty(e.id)&&this.utility.layoutNodeNames.filter(t=>t!="span").indexOf(e.nodeName.toLowerCase())>-1}isStyleNode(e){return e.nodeType==1&&e.nodeName=="SPAN"&&!$lib.isEmpty(e.style.cssText)}contains(e,t){return $lib.contains(e,t)}getImageFromNode(e){return e.nodeName==="IMG"?e:e.querySelector("img")}getInnerNodeByName(e,t){return e.nodeName===t?e:e.querySelector(t)}getRootNode(e,t=!0){let i=this.editor.getEditorElement();if(e==i)return e.firstChild;if(e.parentElement==i)return e;for(;e;)if(e.parentElement&&!this.isBlock(e)&&(!t||!this.isLayoutRoot(e)))e=e.parentElement;else return e}getSurroundingNodes(e,t){let i=this.editor.getEditorElement(),r=[];for(t=t||i;e&&e!=t;)r.push(e),e=e.parentElement;return r}sibling(e,t,i,r,l){let s=i?function(n){return n.previousSibling}:function(n){return n.nextSibling},a=o$3(function(n){let h;for(;n&&n!=t&&!(h=s(n));)n.parentNode!=t?n=n.parentNode:n=null;return h},"fnNext");for(;(e=a(e))&&(r&&r!=e.nodeType||l&&!e.nodeName.match(this.utility.voidNodeRegEx)&&!e.textContent.length||e.nodeType==1&&e.hasAttribute(this.utility.markerAttr)););return e}getSiblings(e,t,i,r=!0){let l=t,s=[];if(l&&this.contains(e,l))for(;l=this.sibling(l,e,!0,null,r);)s.unshift(l);if(l=i,l&&this.contains(e,l))for(;l=this.sibling(l,e,!1,null,r);)s.push(l);return s}getElementsByTagName(e,t,i=!0){let r=t.split(" ").length>1,l=e.getElementsByTagName(r?"*":t),s=[];return t=" "+t.toUpperCase()+" ",$lib.each(l,a=>{(!r||t.indexOf(" "+a.nodeName+" ")>-1)&&(!i||!a.hasAttribute(this.utility.markerAttr))&&s.push(a);}),s}getFirstTextNode(e,t,i,r){for(r==null&&(r=!0);e&&(e.nodeType!=3||r&&!e.textContent.length);)e.hasChildNodes()?e=i?e.lastChild:e.firstChild:e=this.sibling(e,t,i,null,r);return e}nextNode(e){if(!e)return null;if(e.hasChildNodes())return e.firstChild;for(;e&&!e.nextSibling;)e=e.parentNode;return e?e.nextSibling:null}canRemove(e){return this.isLayoutNode(e)&&(!this.nodeHasContent(e,!1)||e.firstElementChild==null&&e.textContent.match(/^\uFEFF+$/g))}nodeHasContent(e,t=!0){if(e.textContent.length)return !0;for(e=e.firstElementChild;e;){if((!t||t&&e.nodeName!="BR")&&!e.hasAttribute(this.utility.markerAttr))return !0;e=e.nextElementSibling;}return !1}createTextNodePlaceHolder(e,t,i){let r=this.editor.getDoc(),l=r.createTextNode(i||"");return t?t.parentNode.insertBefore(l,t):e.nodeName.match(this.utility.voidNodeRegEx)?e.parentNode.insertBefore(l,e):e.appendChild(l),l}createNode(e){let t;if(e.attributes||(e.attributes={}),e.cssClass&&(e.attributes.class=e.cssClass),e.outerHTML){let i=$lib.element();i.innerHTML=e.outerHTML,t=$lib.unsurround(i);}else t=this.editor.format.createLayoutNode(e.tag,e.styles,e.innerHTML?[e.innerHTML]:e.textContent,e.attributes,e.properties);return $lib.isEmpty(e.allowContent)||(t.contentEditable=e.allowContent),e.selectable&&this.editor.bindNodeEvents(t),t}getTextContainer(e,t){for(;e!=t&&"DIV TD LI".split(" ").indexOf(e.nodeName)==-1;)e=e.parentNode;return e}getNodesBefore(e,t){let i=e.firstChild,r=document.createDocumentFragment(),l,s=r;for(;i&&i!=t&&i!=e;)i.contains(t)?(s=i.cloneNode(!1),r.appendChild(s),i=i.firstChild):(l=i.nextSibling,s.appendChild(i),i=l);return r}getListNode(e,t){return this.getMatchingNode(e,t,i=>this.utility.listFilter.indexOf(i.nodeName)>-1)}getListItemNode(e,t){return this.getMatchingNode(e,t,i=>i.nodeName=="LI")}getLayoutNode(e,t,i){e=e.toUpperCase();let r=o$3(l=>!!(l.nodeName===e||e==="SPAN"&&this.isStyleNode(l)),"isMatch");return this.getMatchingNode(t,i,r)}getMatchingNode(e,t,i){let r=e;for(;r&&r!=t&&!i(r);)r=r.parentNode;return i(r)?r:null}getLayoutNodes(e,t,i,r){let l=[],s=e,a,n;for(;s!=t;)a=this.isTextDecorationNode(s),n=this.isStyleNode(s),(!r&&(a||n)||r==1&&a||r>1&&n)&&l.push(i?s.cloneNode(!1):s),s=s.parentNode;return l.reverse()}buildLayoutTree(e){let t;return $lib.each(e,i=>{let r=i.cloneNode(!1);i.hasAttribute(this.utility.selAttr)&&this.editor.bindNodeEvents(r),t&&t.appendChild(r),t=r;}),t}removeNodeAndKeepMarkers(e,t){let i=this.editor.getDoc(),r=e.querySelector("#"+t.startId),l=t.endId?e.querySelector("#"+t.endId):null;if(r||l){let s=i.createDocumentFragment();r&&s.appendChild(r),l&&s.appendChild(l),e.replaceWith(s);}else $lib.remove(e);}setBlockElement(e,t){let i=t&&t.firstElementChild?t.firstElementChild:t;i.appendChild($lib.extract(e)),this.isLayoutRoot(e)?e.appendChild(t):(this.editor.format.copyStyles(e,t),e.replaceWith(t)),i.childNodes.length||i.appendChild(this.editor.getDoc().createTextNode(this.utility.zeroWidthChar));}createCursorSpace(e){if(this.editor.activateDocument(),!this.editor.contentManager.hasContent())return;let t=this.editor.selectionRange.getRange(),i=this.editor.selectionRange.getRootNodesInRange(t),r=i[0],l=r.firstChild,s=r.lastChild;if(l&&l!=r&&l.nodeType==1&&l.hasAttribute(this.utility.selAttr)&&l.contentEditable=="false"){let a=this.editor.getDoc().createTextNode(this.utility.zeroWidthChar);e<$lib.getPos(l).left&&!l?.previousSibling?.nodeValue?.match(this.utility.zeroWidthRegEx)?(l.parentNode.insertBefore(a,l),t.setStart(a,0),t.collapse(!0),this.editor.selectionRange.restoreRange(t)):s.nodeType==1&&s.nodeName!="BR"&&e>$lib.getPos(s).right&&!s?.nextSibling?.nodeValue?.match(this.utility.zeroWidthRegEx)&&(s.parentNode.insertBefore(a,s.nextSibling),t.setStart(a,0),t.collapse(!0),this.editor.selectionRange.restoreRange(t));}}};componyx.UI.editor_modules.NodeManager;
86
+
87
+
88
+ var h$3=Object.defineProperty;var d$3=(n,t)=>h$3(n,"name",{value:t,configurable:!0});componyx.UI.editor_modules=componyx.UI.editor_modules||{},componyx.UI.editor_modules.ParagraphButtons=class{static{d$3(this,"ParagraphButtons");}#t=new Map;constructor(t){this.editor=t,this.utility=t.utility;}show(t,e){let s=this.#t.get(t),o=e.nodeName.match(this.utility.voidNodeRegEx)?e.parentNode:e,i=this.utility.saveScroll(t);s||(s=this.#o(t));let l=s.before,r=s.after;l.remove(),r.remove(),o.appendChild(l),o.appendChild(r);let a=$lib.getPos(e);r.style.display=l.style.display="",$lib.setPos(l,{top:a.top-l.offsetHeight/2,left:a.left},!0),$lib.setPos(r,{top:a.bottom-r.offsetHeight/2,left:a.right-r.offsetWidth/2},!0),this.utility.resetScroll(t,i);}hide(){for(let[t,e]of this.#t)e.before.style.display=e.after.style.display="none";}destroy(t){const e=`a.button.${this.editor.getCssClass(this.editor.classOption.PARAGRAPH)}`;t.querySelectorAll(`${e}`).forEach(s=>s.remove()),this.#t=new Map;}#o(t){let e=`${this.utility.buttonCss} ${this.editor.getThemeCSS()} ${this.editor.getCssClass(this.editor.classOption.PARAGRAPH)}`,s=this.#e(t,{className:e+" before"}),o=this.#e(t,{className:e+" after"}),i={before:s,after:o};return s.onclick=this.#s.bind(this,s,!0),o.onclick=this.#s.bind(this,o,!1),s.contentEditable=!1,o.contentEditable=!1,this.#t.set(t,i),i}#e(t,e){return $lib.element(t,"","a","","",e)}#s(t,e,s){this.editor.activateDocument();let o=this.editor.nodeManager.getRootNode(t,!1),i=$lib.element("","","p",$lib.element("","","br"));e?o.parentNode.insertBefore(i,o):o.nextElementSibling?o.parentNode.insertBefore(i,o.nextElementSibling):o.parentNode.appendChild(i),this.editor.contentManager.setBlockAttr(i);let l=this.editor.selectionRange.getSelection(),r=this.editor.selectionRange.getRange();r.selectNode(i.firstChild),r.collapse(!0),l.removeAllRanges(),l.addRange(r),s.preventDefault(),s.stopPropagation(),this.editor.history.addItem(),this.editor.deactivateDocument();}};componyx.UI.editor_modules.ParagraphButtons;
89
+
90
+
91
+ var p$3=Object.defineProperty;var o$2=(h,e)=>p$3(h,"name",{value:e,configurable:!0});componyx.UI.editor_modules=componyx.UI.editor_modules||{},componyx.UI.editor_modules.Resizer=class{static{o$2(this,"Resizer");}#e=null;#t=!1;constructor(e){this.editor=e,this.defaultConfig={cssPrefix:"image-resize"},this.resizableTypes=[{filter:o$2(t=>t.nodeName==="IMG","filter"),config:{}}];}get resizable(){return this.#e}get resizing(){return this.#t}getConfig(e){if(!e)return null;const t=this.resizableTypes.find(s=>s.filter(e));return t?Object.assign({},this.defaultConfig,t.config):null}set(e){if(!e||this.#e&&this.#e.element===e)return;this.clear(!0);const t=this.getConfig(e);if(!t)return;const s=this.editor,i=s.getEditorElement();let l=$lib.element(i,"","","",null,{className:t.cssPrefix+"-handle"}),c=i.appendChild(l.cloneNode(!1)),n=i.appendChild(l.cloneNode(!1)),a=i.appendChild(l.cloneNode(!1)),f=i.appendChild(e.cloneNode(!1));f.classList.add(t.cssPrefix+"-ghost"),f.style.display="none",l.classList.add("nw"),c.classList.add("ne"),n.classList.add("sw"),a.classList.add("se");const u=o$2(d=>{let r=$lib.getPos(d);$lib.setPos(l,{top:r.top,left:r.left},!0),$lib.setPos(c,{top:r.top,left:r.right},!0),$lib.setPos(n,{top:r.bottom,left:r.left},!0),$lib.setPos(a,{top:r.bottom,left:r.right},!0);},"setPos");u(e);const g={defaultHandles:!1,resizeHandles:[{nw:l,ne:c},{sw:n,se:a}],resizeGhost:f,onResizeStart:o$2(()=>{this.#t=!0;},"onResizeStart"),onResize:o$2(d=>{d.event.preventDefault();},"onResize"),onResizeEnd:o$2(()=>{s.activateDocument();const d=s.utility.saveScroll(i);u(e),s.history.addItem(),s.activateDocument(),this.set(e),s.paragraphButtons.show(i,e.parentNode),s.utility.resetScroll(i,d),s.deactivateDocument();},"onResizeEnd")};this.#e=$lib.resizable(e,g);}clear(e=!1){const t=this.#e,s=this.editor.getStoredRange();if(!t)return;const i=s?.startContainer,l=i?t.element.contains(i):!1;if(!(e||!this.#t&&!l))return;const n=t.element,a=this.getConfig(n);return this.editor.getEditorElement().querySelectorAll(`.${a.cssPrefix}-ghost,.${a.cssPrefix}-handle`).forEach(u=>u.remove()),t.disable(),this.#e=null,this.#t=!1,n}};componyx.UI.editor_modules.Resizer;
92
+
93
+
94
+ var g$2=Object.defineProperty;var u$5=(c,e)=>g$2(c,"name",{value:e,configurable:!0});componyx.UI.editor_modules=componyx.UI.editor_modules||{},componyx.UI.editor_modules.SelectionRange=class{static{u$5(this,"SelectionRange");}constructor(e){this.editor=e,this.util=e.utility;}getRange(){let e=this.editor.getEditorElement(),t=this.editor.getDoc(),n=this.getSelection(),r;return n.rangeCount||(e.focus(),n.rangeCount||(r=t.createRange(),r.selectNodeContents(e.firstChild||e),r.collapse(!0),n.addRange(r))),r=n.getRangeAt(0),this.editor.hasContent()&&r.startContainer==e&&r.startOffset==0&&r.setStart(e.firstChild,0),r}selectAll(){let e=this.getRange(),t=this.editor.getEditorElement();e.setStartBefore(t.firstElementChild),e.setEndAfter(t.lastElementChild),this.selectNodesInRange(e);}getSelection(){let e=this.editor._iframe;return e?e.contentWindow.getSelection():window.getSelection()}ensureTextRange(e){let t,n=e.collapsed,r=e.startContainer,o=e.endContainer,s=u$5((i,d,a)=>{let l,f=!1;if(i){if(i.nodeName.match(this.util.voidNodeRegEx)){let h=i.previousSibling;for(;h&&h.nodeName.match(this.util.voidNodeRegEx);)h=h.previousSibling;if(h&&(f=!0,l=h.nodeType==3?h:this.editor.nodeManager.getFirstTextNode(h,d,!0),l))return {textNode:l,useEndOffset:f}}i=i.nodeType==1?i.firstChild||this.editor.nodeManager.createTextNodePlaceHolder(i,a):i,l=i;}else l=this.editor.nodeManager.createTextNodePlaceHolder(d,a);return {textNode:l,useEndOffset:f}},"getTextNode");if(r.nodeType==1){t=r.childNodes[e.startOffset];let{textNode:i,useEndOffset:d}=s(t,r,r.firstChild),a=d?i.textContent.length:0;e.setStart(i,a),n&&!e.collapsed&&(e.setStart(e.startContainer,a),e.collapse(!0));}if(e.collapsed)return e;if(o.nodeType==1){t=o.childNodes[e.endOffset]||o.lastChild;let{textNode:i}=s(t,o);e.setEnd(i,i.textContent.length);}return e}restoreRangeToMarker(e,t){return this.restoreRange(this.setRangeToMarker(t,e.startId,e.endId))}restoreRange(e){let t=this.getSelection();return t.removeAllRanges(),t.addRange(e),e}setRangeToMarker(e,t,n){let r=this.editor.getDoc(),o=$lib("#"+t),s=$lib("#"+n),i=s?s.previousSibling:null;if(!o&&!s)return $lib.log("setRangeToMarker() exception, no marker found."),e;if(o){let d=o.nextSibling;d&&d.nodeType==3?e.setStart(d,0):(d&&d.hasChildNodes()&&(d=this.editor.nodeManager.getFirstTextNode(d,o.parentElement)),d&&d.nodeType==3?e.setStart(d,0):(d=this.editor.nodeManager.getFirstTextNode(o.previousSibling,o.parentElement,!0),d?e.setStart(d,d.textContent.length):(d=r.createTextNode(""),o.parentNode.insertBefore(d,o),e.setStart(d,0))));}return s&&(i&&i.nodeType==3?e.setEnd(i,i.textContent.length):(i&&i.hasChildNodes()&&(i=this.editor.nodeManager.getFirstTextNode(i,s.parentElement,!0)),i&&i.nodeType==3?e.setEnd(i,i.textContent.length):(i=this.editor.nodeManager.getFirstTextNode(s.nextSibling,s.parentElement),i||(i=r.createTextNode(""),s.parentNode.insertBefore(i,s)),e.setEnd(i,0)))),e}createRangeMarker(e){let t=this.editor.getDoc(),n=e.startContainer,r=e.startOffset,o=e.collapsed?null:e.endContainer,s=e.endOffset,i=t.createElement("span"),d=this.util.newGuid(),a,l;if(i.id=d,i.setAttribute(this.util.markerAttr,""),n.nodeType==1||!r?n.parentNode.insertBefore(i,n):(l=n.splitText(r),l.parentNode.insertBefore(i,l),(!l.textContent.length||l.nodeValue.match(/^\uFEFF+$/))&&l.remove(),o&&n==o&&(s-=r,o=l)),o){let f=t.createElement("span");a=this.util.newGuid(),f.id=a,f.setAttribute(this.util.markerAttr,""),o.nodeType==1||o.textContent.length==s?o.parentElement.insertBefore(f,o.nextSibling):(l=o.splitText(s),l.parentNode.insertBefore(f,l),(!l.textContent.length||l.nodeValue.match(/^\uFEFF+$/))&&l.remove());}return {startId:d,endId:a}}removeRangeMarker(e){const t=this.editor.getEditorElement();t.querySelectorAll("#"+e.startId).forEach(n=>n.remove()),e.endId&&t.querySelectorAll("#"+e.endId).forEach(n=>n.remove());}getNodesInRange(e){let t=e.startContainer,n=e.endContainer,r=e.startOffset,o=e.endOffset;if(t==n&&t.nodeType==1&&r==0&&o==t.childNodes.length)return [t];t.nodeType==1&&t.childNodes.length>r&&(t=t.childNodes[r]),n.nodeType==1&&n.childNodes.length>o&&(n=n.childNodes[o]);let s=[t];if(t==n)return s;for(;t&&t!=n;)t=this.editor.nodeManager.nextNode(t),t&&s.push(t);return s}getRootNodesInRange(e,t,n=!0){let r=new Map,o=[],s;t=t||this.getNodesInRange(e);for(let i=0;i<t.length;++i)s=this.editor.nodeManager.getRootNode(t[i],n),s&&!r.has(s)&&(r.set(s,!0),o.push(s));return o}selectNodeContents(e){let t=this.editor.getDoc(),n=t.createRange();return n.selectNodeContents(e),this.restoreRange(n)}selectNodesInRange(e){let t=this.getRootNodesInRange(e),n=this.editor.nodeManager.getSurroundingNodes(e.startContainer,t[0]);$lib.each(t.concat(n),r=>{r.nodeType==1&&r.hasAttribute(this.util.selAttr)&&this.editor.selectNode.bind(r,!1)();});}collapseRangeToNode(e,t=!1){let n=this.editor.getDoc(),r=n.createRange();return r.selectNode(e),r.collapse(t),this.restoreRange(r)}getSelectedHTML(e){return $lib.element("","","",e.cloneContents()).innerHTML}splitRange(e,t,n){let r=e.startOffset,o=e.endOffset,s=e.endContainer.textContent.length;return t&&r>0&&(e.startContainer==e.endContainer&&(o-=r,s-=r),e.setStart(e.startContainer.splitText(r),0)),n&&o<s&&e.endContainer.splitText(o),e}rangeChanged(e){let t=this.getRange(),n=e;return n?t.startContainer!=n.startContainer||t.endContainer!=n.endContainer||t.startOffset!=n.startOffset||t.endOffset!=n.endOffset:!0}insertIntoRange(e,t,n,r){n=n||t,e.insertNode(t),r?(e.setStartAfter(n),e.setEndAfter(n)):(e.setStartBefore(n),e.setEndBefore(n));}surroundRange(e,t){let n=this.editor.format;t.appendChild(e.extractContents()),n.updateDeeperStyleNodes(t,n.getLayoutTreeStyles(t)),e.insertNode(this.editor.nodeManager.getRootNode(t));}getListItemNodesInRange(e){let t=this.editor.getEditorElement(),n=new Set;return $lib.each(e,r=>{let o=this.editor.nodeManager.getListItemNode(r,this.editor.nodeManager.getListNode(r,t)||t);o&&n.add(o);}),n}isCaretAtListItemStart(e){let t=e.startContainer,n=t.nodeType==3?t.parentElement:t;return e.startOffset==0&&n.nodeName=="LI"}isCaretAtParagraphStart(e){let t=e.startContainer,n=t.nodeType==3?t.parentElement:t;return e.startOffset==0&&n.nodeName=="P"}allowContent(e){return e.startContainer.nodeType!=1||e.startContainer.contentEditable!="false"}};componyx.UI.editor_modules.RangeManager;
95
+
96
+
97
+ var m$4=Object.defineProperty;var u$4=(c,e)=>m$4(c,"name",{value:e,configurable:!0});componyx.UI.editor_modules=componyx.UI.editor_modules||{},componyx.UI.editor_modules.SourceViewBuilder=class{static{u$4(this,"SourceViewBuilder");}constructor(e,t="",i="span",l="root-item",s=null){this.targetNode=e,this.buttonCssClass=t,this.defTagName=i,this.rootItemText=l,this.voidNodeRegEx=s;}outerHTML(){let e=this.targetNode.querySelector(".item.root"),t=$lib.remove(e.querySelector(".tag")),i=this.targetNode.textContent;return e.insertBefore(t,e.querySelector(".item")),i}build(e){this.targetNode.innerHTML="";let t=this,i=$lib.element(this.targetNode,"","","","",{className:"item root"});i.onclick=t.select.bind(t,i),t.createButton(i,{className:this.buttonCssClass,onclick:t.edit.bind(t,i,!0)}),$lib.element(i,"","span",this.rootItemText,"",{className:"tag"}),t.createEditBox(i,!0),t.buildSection(e,i);}buildSection(e,t,i){let l=this,s=e.firstChild,o,r,a,n,d;for(;s;)o=s.nodeType,n=s.nodeName.toLowerCase(),r=s.firstElementChild!=null,o==1?(a=$lib.element(t,i,"","","",{className:"item"}),a.onclick=l.select.bind(l,a),l.createButton(a,{className:this.buttonCssClass,onclick:l.edit.bind(l,a,!1)}),r?$lib.element(a,"",this.defTagName,"","",{className:"expand",onclick:l.toggleExpand.bind(l,a)}):a.className+=" childless",l.createEditBox(a,!1),d=$lib.element(a,"",this.defTagName,`<${n}`,"",{className:"tag"}),s.hasAttributes()&&l.buildAttributes(s,d),d.appendChild(document.createTextNode(">")),r?l.buildSection(s,a):this.writeData(s,a),(s.hasChildNodes()||!this.voidNodeRegEx||!n.match(this.voidNodeRegEx))&&(d=$lib.element(a,"",this.defTagName,`</${n}>`,"",{className:"end-tag"}))):this.writeData(s,t),s=s.nextSibling;}createEditBox(e,t){$lib.element(e,"","span","","",{className:"edit-box",contentEditable:!0,spellcheck:!1,onblur:this.edit.bind(this,e,t)});}writeData(e,t){let i=$lib.element(t,"",this.defTagName),l=e.nodeType;i.className=l==8?"data comment":"data",i.textContent=l==8?` <!-- ${e.textContent} -->`:e.textContent;}buildAttributes(e,t){$lib.each(e.attributes,i=>{t.appendChild(document.createTextNode(" ")),$lib.element(t,"",this.defTagName,i.name,{class:"attr-name"}),t.appendChild(document.createTextNode('="')),$lib.element(t,"",this.defTagName,i.value,{class:"attr-value"}),t.appendChild(document.createTextNode('"'));});}createButton(e,t){$lib.element(e,"","a","","",t);}toggleExpand(e,t){e.classList.toggle("collapsed"),t.preventDefault();}select(e,t){if(!e||(t&&t.stopPropagation(),e.classList.contains("edit-mode")))return;let i=this.targetNode.querySelector(".selected");i!=e&&(i&&i.classList.remove("selected","edit-mode"),e.classList.toggle("selected"));}edit(e,t,i){let l=e.querySelector(".edit-box");t&&this.saved||(i.stopPropagation(),e.classList.contains("edit-mode")?(e.classList.remove("edit-mode"),this.save(e,t)):(e.classList.add("edit-mode"),t?l.textContent=this.outerHTML():l.textContent=e.textContent,l.focus()));}save(e,t){let i=e.querySelector(".edit-box"),l=e.parentNode,s=$lib.element({tag:"template"});t&&(l=e,e.querySelectorAll(".item").forEach(o=>o.remove())),s.innerHTML=i.textContent,i.textContent="",this.buildSection(s.content,l,t?null:e),t?(e.firstElementChild.outerHTML=e.firstElementChild.outerHTML,e.firstElementChild.onclick=this.edit.bind(this,e,!0)):e.remove(),this.select(t?e:l.querySelector(".item"));}};componyx.UI.editor_modules.SourceViewBuilder;
98
+
99
+
100
+ var C$3=Object.defineProperty;var r$3=(h,e)=>C$3(h,"name",{value:e,configurable:!0});componyx.UI.editor_modules=componyx.UI.editor_modules||{},componyx.UI.editor_modules.SymbolPicker=class{static{r$3(this,"SymbolPicker");}constructor(e,l,s,o,i,t){this.editor=e,this.cf=e.componentFactory,this.symbols=t,this.selectedCategory=void 0,this.searchFilter="",this.categoriesEl=null,this.symbolViewEl=null,this.headerEl=null,this.searchEl=null,this.symbolsEl=null,this.footerEl=null,this.nameEl=null,this.box=this.#i(s,l,o,i,t);}show(e){const l=$UI.store[this.editor.utility.getId(e.id)];this.box.expander=l.element,this.box.show();}#i(e,l,s,o,i){const t=this.editor,n=t.classOption;this.categoriesEl=$lib.element("","","","",{class:t.getCssClass(n.SYMBOL_CATEGORIES)}),this.symbolViewEl=$lib.element("","","","",{class:t.getCssClass(n.SYMBOL_VIEW)}),this.headerEl=$lib.element(this.symbolViewEl,"","header","",{class:t.getCssClass(n.SYMBOL_HEADER)}),this.searchEl=$lib.element(this.headerEl,"","input","",{type:"text",placeholder:t.labels.symbolSearchInputPlaceholder},{onfocus:r$3(()=>{t.eventManager.disposeEvents();},"onfocus"),onblur:r$3(()=>{t.eventManager.bindEvents();},"onblur"),oninput:this.#t.bind(this)}),this.symbolsEl=$lib.element(this.symbolViewEl,"","","",{class:t.getCssClass(n.SYMBOL_ITEMS)}),this.footerEl=$lib.element(this.symbolViewEl,"","footer","",{class:t.getCssClass(n.SYMBOL_FOOTER)}),this.nameEl=$lib.element(this.footerEl,"","span"),$lib.element(this.categoriesEl,"","a",o[0],{class:t.getCssClass(n.SYMBOL_CATEGORY)},{onclick:this.#e.bind(this,null)}),$lib.each(i,(g,c)=>{$lib.element(this.categoriesEl,"","a",o[c+1]||g.name,{class:t.getCssClass(n.SYMBOL_CATEGORY)},{onclick:this.#e.bind(this,c)});});const d=t.getCssClass(n.SYMBOL_PICKER_BOX)+" "+s,a=this.cf.createBox(e,l,t.element,{cssClass:d,content:[this.categoriesEl,this.symbolViewEl]});return a.animation.showType=a.animation.hideType=0,a.events.onShowComplete.priorityAdd(()=>{this.#o();}),a.events.onHideComplete.priorityAdd(()=>{this.#n();}),a.render(),a}#e(e){if(e===void 0)this.selectedCategory=e=null;else if(e===this.selectedCategory&&this.searchFilter===this.searchEl.value)return;this.selectedCategory=e,this.#t(),this.#l();}#l(){const e=this.editor.getCssClass(this.editor.classOption.ACTIVE),l=this.editor.getCssClass(this.editor.classOption.SYMBOL_CATEGORY),s=this.selectedCategory===null?0:this.selectedCategory+1;this.categoriesEl.querySelectorAll(`.${l}`).forEach((o,i)=>o.classList.toggle(e,i===s));}#t(){const e=this.selectedCategory,l=this.editor.classOption;this.searchFilter=this.searchEl.value.toLowerCase(),this.symbolsEl.innerHTML="",$lib.each(this.symbols,(s,o)=>{if(!(e!=null&&e!==o)&&($lib.each(s.values,i=>{(!this.searchFilter||(i.name||"").toLowerCase().includes(this.searchFilter))&&$lib.element(this.symbolsEl,"","a",i.value,{class:this.editor.getCssClass(l.SYMBOL),title:i.name},{onpointerover:this.#s.bind(this,i),onfocus:this.#s.bind(this,i),onclick:this.#a.bind(this,i)});}),e!=null))return !1});}#o(){const e=this.editor.selectionRange;this.editor.storeRange(e.ensureTextRange(e.getRange()).cloneRange()),this.searchEl.value="",this.#e(this.selectedCategory);}#n(){const e=this.editor.getStoredRange(),l=this.editor.selectionRange.getRange();e!==l&&this.editor.selectionRange.restoreRange(e),setTimeout(()=>{this.editor.getEditorElement().focus();},0);}#s(e){this.nameEl.textContent=e.name;}#a(e,l){const s=this.editor;s.activateDocument(),s.contentManager.hasContent()||s.contentManager.insertParagraph();const o=s.getDoc().createTextNode(e.value);s.contentManager.insertHTML({node:o});const i=s.selectionRange,t=i.ensureTextRange(i.getRange());s.storeRange(t),this.box.hide(),s.toolbar.hideBoxes(l);}};componyx.UI.editor_modules.SymbolPicker;
101
+
102
+
103
+ var C$2=Object.defineProperty;var p$2=(b,t)=>C$2(b,"name",{value:t,configurable:!0});componyx.UI.editor_modules=componyx.UI.editor_modules||{},componyx.UI.editor_modules.Table=class{static{p$2(this,"Table");}#s=new Set;#e=null;#v=!1;#p=new WeakMap;#a=null;#m=null;#x=null;#W;#_;#F;#o;#g;#y;#d;#I;#R;#r;#w;constructor(t){this.editor=t,this.cf=t.componentFactory,this.utility=t.utility,this.#W=t.getCssClass(t.classOption.TABLE_PICKER),this.#_=t.getCssClass(t.classOption.TABLE_PICKER_GRID),this.#F=t.getCssClass(t.classOption.TABLE_PICKER_LABEL),this.#o=t.getCssClass(t.classOption.TABLE_WRAPPER),this.#y=t.getCssClass(t.classOption.TABLE_ANCHOR),this.#g=t.getCssClass(t.classOption.TABLE_SELECTED),this.#d=t.getCssClass(t.classOption.TABLE_COL_HANDLE),this.#I=t.getCssClass(t.classOption.TABLE_COL_HANDLE_ACTIVE),this.#R=t.getCssClass(t.classOption.TABLE_MENU_BUTTON),this.menu=null,this.pickerBox=null,this.editor.events.onUndo.priorityAdd(()=>{this.afterHistoryAction();}),this.editor.events.onRedo.priorityAdd(()=>{this.afterHistoryAction();});}bindEvents(){if(!this.editor.getEditorElement())return;const t=this.editor.getEditorElement(),e=this.editor.getDoc();$lib.on(t,"cut",this.#U,null,this,!0),$lib.on(t,"copy",this.#z,null,this,!0),$lib.on(t,"paste",this.#K,null,this,!0),$lib.on(t,"pointerdown",this.#X,null,this,!0),$lib.on(t,"pointerover",this.#V,null,this,!0),$lib.on(t,"pointermove",this.#G,null,this,!0),$lib.on(t,"keydown",this.#j,null,this,!0),$lib.on(t,"contextmenu",this.#J,null,this,!0),$lib.on(e,"selectionchange",this.#Q,null,this,!0),$lib.on(e,"pointerdown",this.removeMenuButton,null,this,!0),$lib.on(e,"pointerdown pointerup",this.#at,null,this,!0),$lib.on(e,"pointerup",this.#T,null,this,!0),$lib.on(e,"pointermove",this.#lt,null,this,!0);}disposeEvents(){if(!this.editor.getEditorElement())return;const t=this.editor.getEditorElement(),e=this.editor.getDoc();$lib.off(t,"cut",this.#U),$lib.off(t,"copy",this.#z),$lib.off(t,"paste",this.#K),$lib.off(t,"pointerdown",this.#X),$lib.off(t,"pointerover",this.#V),$lib.off(t,"pointermove",this.#G),$lib.off(t,"pointerup",this.#T),$lib.off(t,"keydown",this.#j),$lib.off(t,"contextmenu",this.#J),$lib.off(e,"selectionchange",this.#Q),$lib.off(e,"pointerdown",this.removeMenuButton),$lib.off(e,"pointerdown pointerup",this.#at),$lib.off(e,"pointerup",this.#T),$lib.off(e,"pointermove",this.#lt),this.clearSelection();}destroy(){this.disposeEvents(),this.editor.events.onUndo.priorityRemove(2),this.editor.events.onRedo.priorityRemove(2);}clearAll(t,e=!1){const s=t||this.editor.getEditorElement();s&&(s.querySelectorAll(`figure.${this.#o}`).forEach(i=>{i.querySelectorAll(`:scope > .${this.#d}`).forEach(n=>n.remove()),i.querySelectorAll(`:scope > a.${this.#R}`).forEach(n=>n.remove()),e&&(i.classList.remove(this.#o),i.className||i.removeAttribute("class"));}),s.querySelectorAll("td, th").forEach(i=>{i.classList.remove(this.#g,this.#y),i.className||i.removeAttribute("class");}));}clearSelection(){this.#S(),this.#s=new Set,this.#e=null,this.#w=null,this.removeMenuButton(),this.menu&&this.menu.collapseAll(!0);}updateContextCell(t){this.#w=t;}afterHistoryAction(){this.clearAll(),this.editor.getEditorElement().querySelectorAll("table").forEach(t=>{this.#M(t),this.#C(t);});}createPicker(){const t=this.createPickerBox(),e=$lib.element({container:t,attrs:{class:this.#_}}),s=$lib.element({container:t,content:"0 x 0",attrs:{class:this.#F}});for(let i=0;i<100;i++){const n=$lib.element();n.dataset.row=Math.floor(i/10)+1,n.dataset.col=i%10+1,e.appendChild(n);}$lib.on(e,"pointerover",i=>{const n=i.target.closest("[data-row]");if(!n)return;const o=+n.dataset.row,r=+n.dataset.col;[...e.children].forEach(l=>l.classList.toggle(this.#g,+l.dataset.row<=o&&+l.dataset.col<=r)),s.textContent=`${o} \xD7 ${r}`;}),$lib.on(e,"click",i=>{const n=i.target.closest("[data-row]");n&&(this.insertTable(+n.dataset.row,+n.dataset.col),this.pickerBox.events.onHideComplete.add(()=>{[...e.children].forEach(o=>o.classList.remove(this.#g)),s.textContent="0 \xD7 0";}),this.pickerBox.hide());});}createPickerBox(){const t=this.editor,e=$lib.element();return this.pickerBox=this.cf.createBox("TablePicker",t.tablePickerBoxId,t.element,{cssClass:this.#W,content:e}),e}showMenuButton(t){let e=t.closest("table").closest(`figure.${this.#o}`),s=e.querySelector(`a.${this.#R}`);if(!s){const i=`${this.utility.buttonLucentCss} ${this.editor.getThemeCSS()} ${this.#R} ico-cog`;s=$lib.element({container:e,tag:"a",props:{className:i,contentEditable:!1}}),$lib.on(s,"click",this.#Y,null,this);}this.#w=t,this.#r=s,this.positionMenuButton(t);}positionMenuButton(t){const e=this.#r;if(!e)return;const s=e.closest(`figure.${this.#o}`),i=s.getBoundingClientRect(),n=t.getBoundingClientRect(),o=e.offsetWidth||30,r=e.offsetHeight||30;e.style.left=`${n.right-i.left-o}px`,e.style.top=`${n.top-i.top-r}px`,e.style.display="";}hideMenuButton(){this.#r&&(this.#r.style.display="none");}removeMenuButton(t){if(!this.#r||this.#a)return;const e=t?.target;if(!e){this.#r.remove(),this.#r=null;return}if(e.closest?.(`a.${this.#R}`))return;const s=e.closest?.("td,th");if(s){const i=this.#r.closest(`figure.${this.#o}`),n=s.closest(`figure.${this.#o}`);if(i===n)return}this.#r.remove(),this.#r=null;}insertTable(t=3,e=3){const s=$lib.element({tag:"colgroup"}),i=$lib.element({tag:"tbody"}),n=$lib.element({tag:"table",content:[s,i]});n.style.borderCollapse="collapse",n.style.width="100%";for(let r=0;r<e;r++)s.appendChild($lib.element({tag:"col"}));for(let r=0;r<t;r++){const l=$lib.element({container:i,tag:"tr"});for(let h=0;h<e;h++)l.appendChild(this.#h());}const o=$lib.element({tag:"figure",content:[n],props:{className:this.#o}});this.editor.contentManager.insertHTML({node:o,isPhrasingContent:!1}),this.editor.getDoc().defaultView.requestAnimationFrame(()=>{this.editor.activateDocument(),this.#M(n),this.#C(n);const r=n.querySelector("td,th");this.editor.bindNodeEvents(o),this.#n(r);});}addRow(t=!1){const{cell:e,table:s}=this.#t();if(!e)return;const i=e.parentElement,n=this.#O(i,e),o=this.#f(s.rows[0]),r=$lib.element({tag:"tr"});for(let l=0;l<o;l++)r.appendChild(this.#h());t?i.before(r):i.after(r),this.#n(r.cells[n]),this.menu.collapseAll(!0);}removeRow(){const{cell:t,table:e}=this.#t();if(!e||e.rows.length<=1)return;const s=this.#$t(e),i=Math.min(...s.map(r=>this.#$(e,r))),n=this.#O(t.parentElement,t);s.forEach(r=>r.remove());const o=e.rows[Math.min(i,e.rows.length-1)];this.#n(o.cells[n]),this.menu.collapseAll(!0);}addColumn(t=!1){const{cell:e,table:s}=this.#t();if(!e)return;const i=e.parentElement,n=this.#k(i,e),o=this.#$(s,i);Array.from(s.rows).forEach(h=>{const a=this.#u(h,n);a&&(t?a.before(this.#h()):a.after(this.#h()));}),this.#M(s,n);const r=t?n:n+1,l=this.#u(s.rows[o],r);this.#C(s),this.#n(l),this.menu.collapseAll(!0);}removeColumn(){const{cell:t,table:e}=this.#t();if(!t||this.#f(e.rows[0])<=1)return;const s=t.parentElement,i=this.#k(s,t),n=this.#$(e,s);Array.from(e.rows).forEach(l=>{const h=this.#u(l,i);if(!h)return;const a=this.#k(l,h),c=h.colSpan||1;a===i?c===1?h.remove():h.colSpan--:a<i&&h.colSpan--;}),this.#M(e);const o=e.rows[n],r=this.#u(o,i);this.#C(e),this.#n(r),this.menu.collapseAll(!0);}canMerge(){return this.#c(this.#t().table).length>1}canSplit(){return this.#c(this.#t().table).some(t=>(t.colSpan||1)>1||(t.rowSpan||1)>1)}canMergeRight(){const{cell:t,table:e}=this.#t();if(!t||this.#c(e).length>1)return !1;const s=this.#l(e),i=this.#i(s,t);if(!i)return !1;const n=s[i.r]?.[i.c+(t.colSpan||1)];if(!n)return !1;const o=this.#i(s,n);return (n.rowSpan||1)===(t.rowSpan||1)&&o.r===i.r}canMergeDown(){const{cell:t,table:e}=this.#t();if(!t||this.#c(e).length>1)return !1;const s=this.#l(e),i=this.#i(s,t);if(!i)return !1;const n=s[i.r+(t.rowSpan||1)]?.[i.c];if(!n)return !1;const o=this.#i(s,n);return (n.colSpan||1)===(t.colSpan||1)&&o.c===i.c}merge(t){if(t=t||this.#c(this.#t().table),!t||t.length<2)return;const{table:e}=this.#t(),s=this.#l(e);let i=1/0,n=-1/0,o=1/0,r=-1/0;t.forEach(u=>{const d=this.#i(s,u);d&&(i=Math.min(i,d.r),n=Math.max(n,d.r+(u.rowSpan||1)-1),o=Math.min(o,d.c),r=Math.max(r,d.c+(u.colSpan||1)-1));});const l=new Set;for(let u=i;u<=n;u++)for(let d=o;d<=r;d++)s[u]?.[d]&&l.add(s[u][d]);const[h,...a]=l;h.colSpan=r-o+1,h.rowSpan=n-i+1;const c=document.createDocumentFragment();this.#b(c,h),a.forEach(u=>this.#b(c,u,!0)),h.innerHTML="",h.appendChild(c),a.forEach(u=>u.remove()),this.#n(h),this.menu.collapseAll(!0);}mergeRight(){const{cell:t,table:e}=this.#t();if(!t)return;const s=this.#l(e),i=this.#i(s,t);if(!i)return;const n=s[i.r]?.[i.c+(t.colSpan||1)];if(!n)return;const o=document.createDocumentFragment();this.#b(o,t),this.#b(o,n,!0),t.colSpan=(t.colSpan||1)+(n.colSpan||1),t.innerHTML="",t.appendChild(o),n.remove(),this.#n(t),this.menu.collapseAll(!0);}mergeDown(){const{cell:t,table:e}=this.#t();if(!t)return;const s=this.#l(e),i=this.#i(s,t);if(!i)return;const n=s[i.r+(t.rowSpan||1)]?.[i.c];if(!n)return;const o=document.createDocumentFragment();this.#b(o,t),this.#b(o,n,!0),t.rowSpan=(t.rowSpan||1)+(n.rowSpan||1),t.innerHTML="",t.appendChild(o),n.remove(),this.#n(t),this.menu.collapseAll(!0);}split(t){if(t=t||this.#c(this.#t().table),!t||!t.length)return;const{table:e}=this.#t(),s=this.#l(e),i=t[0];t.forEach(n=>{this.#q(e,n,s);}),this.#n(i),this.menu.collapseAll(!0);}#b(t,e,s=!1){const i=Array.from(e.childNodes);if(!i.length){if(!s){const n=$lib.element({tag:"p"});$lib.element({container:n,tag:"br"}),t.appendChild(n);}return}s&&i.length===1&&i[0].nodeName==="P"&&i[0].childNodes.length===1&&i[0].firstChild?.nodeName==="BR"||i.forEach(n=>t.appendChild(n.cloneNode(!0)));}#q(t,e,s){const i=e.colSpan||1,n=e.rowSpan||1;if(s=s||this.#l(t),i>1){e.colSpan=1;for(let o=1;o<i;o++)e.parentElement.insertBefore(this.#h(),e.nextElementSibling);}if(n>1){const o=this.#i(s,e);if(!o)return;e.rowSpan=1;for(let r=1;r<n;r++){const l=t.rows[o.r+r];if(!l)continue;const h=s[o.r+r]?.[o.c+i];for(let a=0;a<i;a++){const c=this.#h();l.insertBefore(c,h);}}}}#U(t){const{cell:e,table:s}=this.#t();if(!s)return;const i=this.#B();i&&(t.clipboardData.setData("text/html",i.html),t.clipboardData.setData("text/plain",i.text),t.preventDefault(),this.#ut(this.#c(s)),this.#n(e));}#z(t){const e=this.#B();e&&(t.clipboardData.setData("text/html",e.html),t.clipboardData.setData("text/plain",e.text),t.preventDefault());}#K(t){const{cell:e,table:s}=this.#t();if(!e||!s)return;const i=t.clipboardData.getData("text/html");if(i){const n=$lib.element({content:[i]}),o=n.querySelector(":scope > table");if(!o||(o.remove(),n.textContent.trim()))return;t.preventDefault(),this.#St(o,s,e);}else {const n=t.clipboardData.getData("text/plain");n&&(t.preventDefault(),this.#tt(n));}this.#n(e);}#X(t){if(t.button!==0)return;this.#w=null;const e=t.target.closest("td,th");if(!e)return;const s=this.#e&&!this.#dt(e,this.#e);s&&this.#v||(s&&this.clearSelection(),this.#v=!0,this.#S(),this.#P(e),t.shiftKey&&this.#e?(t.preventDefault(),this.#L(this.#e,e)):t.ctrlKey||t.metaKey?(t.preventDefault(),this.#s.has(e)?this.#s.delete(e):this.#s.add(e),this.#e=e):(this.#s=new Set([e]),this.#e=e),this.#A(),this.showMenuButton(e),this.#C(e.closest("table")));}#V(t){if(!this.#v)return;const e=t.target.closest("td,th");!e||!this.#e||this.#dt(e,this.#e)&&(this.#S(),this.#L(this.#e,e),this.#A());}#G(t){this.#Tt();}#T(t){const e=t.target.closest("td,th");this.#v=!1,e&&e.closest("table").style.removeProperty("user-select");}#j(t){this.#It(t);const{cell:e}=this.#t();!e||!this.editor.getEditorElement().contains(e)||(this.#P(e),t.shiftKey&&["ArrowLeft","ArrowRight","ArrowUp","ArrowDown"].includes(t.key)?this.#yt(t,e):this.#xt(t,e));}#J(t){const e=t.target.closest("td,th");e&&(this.#s.size<=1&&!this.editor.selectionRange.getRange().collapsed||(this.#w=e,t.preventDefault(),this.#Y()));}#Q(t){const{cell:e,table:s}=this.#t();e&&this.showMenuButton(e);}#Y(){this.#r&&this.hideMenuButton(),this.menu?this.menu.renderState==$base.static.RenderState.RENDERED&&(this.#Z(),this.menu.expand("root")):this.#ft();}#ft(){const t=componyx.UI.Menu.Item,e=this.editor.labels;this.menu=this.cf.createMenu("TableMenu",this.editor.tableMenuId,this.editor.element);const s=this.menu.itemList,i=!1;s.push(new t({id:"Cut",text:e.tableMenuCut,hasIcon:!0,selectable:i,cssClassIcon:"icon ico-editor-cut",command:p$2(()=>this.#gt(),"command")})),s.push(new t({id:"Copy",text:e.tableMenuCopy,hasIcon:!0,selectable:i,cssClassIcon:"icon ico-copy",command:p$2(()=>this.#wt(),"command")})),s.push(new t({id:"Paste",text:e.tableMenuPaste,hasIcon:!0,selectable:i,cssClassIcon:"icon ico-editor-clipboard",command:p$2(()=>this.#bt(),"command")})),s.push(new t({id:"PastePlainText",text:e.tableMenuPastePlainText,hasIcon:!0,selectable:i,cssClassIcon:"icon ico-editor-clipboard-text",command:p$2(()=>this.#Ct(),"command")}));const n=new t({id:"Row",text:e.tableMenuRow,hasIcon:!0,selectable:i,cssClassIcon:"icon ico-editor-row"});n.itemList.push(new t({id:"AddRowAbove",text:e.tableMenuAddRowAbove,hasIcon:!0,selectable:i,cssClassIcon:"icon ico-editor-add-above",command:p$2(()=>this.addRow(!0),"command")})),n.itemList.push(new t({id:"AddRowBelow",text:e.tableMenuAddRowBelow,hasIcon:!0,selectable:i,cssClassIcon:"icon ico-editor-add-below",command:p$2(()=>this.addRow(),"command")})),n.itemList.push(new t({id:"RemoveRow",text:e.tableMenuRemoveRow,hasIcon:!0,selectable:i,cssClassIcon:"icon ico-editor-remove-row",command:p$2(()=>this.removeRow(),"command")})),s.push(n);const o=new t({id:"Col",text:e.tableMenuColumn,hasIcon:!0,cssClassIcon:"icon ico-editor-col",selectable:i});o.itemList.push(new t({id:"AddColLeft",text:e.tableMenuAddColumnLeft,hasIcon:!0,selectable:i,cssClassIcon:"icon ico-editor-add-left",command:p$2(()=>this.addColumn(!0),"command")})),o.itemList.push(new t({id:"AddColRight",text:e.tableMenuAddColumnRight,hasIcon:!0,selectable:i,cssClassIcon:"icon ico-editor-add-right",command:p$2(()=>this.addColumn(),"command")})),o.itemList.push(new t({id:"RemoveCol",text:e.tableMenuRemoveColumn,hasIcon:!0,selectable:i,cssClassIcon:"icon ico-editor-remove-col",command:p$2(()=>this.removeColumn(),"command")})),s.push(o);const r=new t({id:"Merge",text:e.tableMenuMerge,hasIcon:!0,selectable:i,cssClassIcon:"icon ico-editor-merge-cells"});r.itemList.push(new t({id:"MergeSelection",selectable:i,text:e.tableMenuMergeSelection,command:p$2(()=>this.merge(),"command")})),r.itemList.push(new t({id:"MergeRight",selectable:i,text:e.tableMenuMergeRight,command:p$2(()=>this.mergeRight(),"command")})),r.itemList.push(new t({id:"MergeDown",selectable:i,text:e.tableMenuMergeDown,command:p$2(()=>this.mergeDown(),"command")})),s.push(r),s.push(new t({id:"Split",selectable:i,text:e.tableMenuSplit,hasIcon:!0,cssClassIcon:"icon ico-editor-split-cells",command:p$2(()=>this.split(),"command")})),s.push(new t({id:"Settings",selectable:i,text:e.tableMenuSettings,hasIcon:!0,cssClassIcon:"icon ico-cog",command:p$2(()=>this.#mt(),"command")})),s.push(new t({id:"DeleteTable",text:e.tableMenuDelete,hasIcon:!0,selectable:i,cssClassIcon:"icon ico-bin",command:p$2(()=>this.#pt(),"command")})),this.menu.events.onPostRender.priorityAdd(()=>{this.#Z(),this.menu.expand("root");}),this.menu.expandOnClick=componyx.UI.Menu.ExpandOnClickOption.ROOT,this.menu.visibleRoot=!1,this.menu.showType=this.menu.hideType=0,this.menu.show();}#Z(){const{table:t}=this.#t();t&&t.rows.length>1?this.menu.enableItem("RemoveRow"):this.menu.disableItem("RemoveRow"),t&&this.#f(t.rows[0])>1?this.menu.enableItem("RemoveCol"):this.menu.disableItem("RemoveCol"),this.canMerge()?this.menu.enableItem("MergeSelection"):this.menu.disableItem("MergeSelection"),this.canMergeRight()?this.menu.enableItem("MergeRight"):this.menu.disableItem("MergeRight"),this.canMergeDown()?this.menu.enableItem("MergeDown"):this.menu.disableItem("MergeDown"),this.canSplit()?this.menu.enableItem("Split"):this.menu.disableItem("Split");}#pt(){const{table:t}=this.#t();if(!t)return;(t.closest(`figure.${this.#o}`)||t).remove(),this.#D(t),this.#n(),this.menu.collapseAll(!0);}#mt(){this.menu.collapseAll(!0),this.editor.dialogManager.tableDialog.show(this.#t());}async#gt(){const{cell:t,table:e}=this.#t();e&&(await this.#ct(),this.#ut(this.#c(e)),this.#n(t),this.menu.collapseAll(!0));}async#wt(){await this.#ct(),this.menu.collapseAll(!0);}async#bt(){const{cell:t}=this.#t();if(!t)return;this.#N(t);const e=await navigator.clipboard.read(),s=e[0];if(!s.types.includes("text/html"))return;const i=await s.getType("text/html"),n=await i.text(),o=s.types.includes("text/plain")?await(await s.getType("text/plain")).text():"",r=new DataTransfer;r.setData("text/html",n),o&&r.setData("text/plain",o),this.editor.getEditorElement().dispatchEvent(new ClipboardEvent("paste",{clipboardData:r,bubbles:!0,cancelable:!0})),this.menu.collapseAll(!0);}async#Ct(){const{cell:t,table:e}=this.#t();if(!t||!e)return;const s=await navigator.clipboard.readText();this.#tt(s),this.#n(t),this.menu.collapseAll(!0);}async#tt(t){const{cell:e}=this.#t();if(!e)return;const s=this.editor.selectionRange.getRange();e.contains(s.startContainer)&&(s.deleteContents(),s.insertNode(document.createTextNode(t)),s.collapse(!1),this.editor.selectionRange.ensureTextRange(s));}#xt(t,e){const s=e.closest("table"),i=this.#l(s),n=this.#i(i,e),o=t.key;if(!n)return;const{r,c:l}=n,h=e.rowSpan||1,a=e.colSpan||1;let c=null;if(o==="Tab"){const u=Array.from(s.querySelectorAll("td,th")),d=u.indexOf(e);t.shiftKey?c=u[d-1]??null:d<u.length-1?c=u[d+1]:(this.addRow(),c=s.rows[s.rows.length-1].cells[0]);}else if(o==="ArrowLeft"){if(!this.#et(e))return;if(c=i[r]?.[l-1]??null,!c){t.preventDefault(),t.stopPropagation();return}}else if(o==="ArrowRight"){if(!this.#st(e))return;if(c=i[r]?.[l+a]??null,!c){t.preventDefault(),t.stopPropagation();return}}else if(o==="ArrowUp"){if(!this.#it(e))return;if(c=i[r-1]?.[l]??null,!c){t.preventDefault(),t.stopPropagation();return}}else if(o==="ArrowDown"){if(!this.#nt(e))return;if(c=i[r+h]?.[l]??null,!c){t.preventDefault(),t.stopPropagation();return}}c&&(t.preventDefault(),t.stopPropagation(),this.#N(c,!1),this.#E(c,o==="ArrowRight"||o==="ArrowDown"||o==="Tab"));}#yt(t,e){const s=t.key,i=e.closest("table"),n=this.#l(i);if(this.#s.size<=1&&(s==="ArrowRight"&&!this.#st(e,!1)||s==="ArrowLeft"&&!this.#et(e,!1)||s==="ArrowDown"&&!this.#nt(e)||s==="ArrowUp"&&!this.#it(e)))return;this.#e||(this.#e=e);const o=this.#i(n,this.#e);let r=o.r,l=o.r+(this.#e.rowSpan||1)-1,h=o.c,a=o.c+(this.#e.colSpan||1)-1;this.#s.forEach(w=>{const g=this.#i(n,w);g&&(r=Math.min(r,g.r),l=Math.max(l,g.r+(w.rowSpan||1)-1),h=Math.min(h,g.c),a=Math.max(a,g.c+(w.colSpan||1)-1));});const c=o.r<=(r+l)/2?l:r,u=o.c<=(h+a)/2?a:h;let d=c,f=u;s==="ArrowRight"?f=u+1:s==="ArrowLeft"?f=u-1:s==="ArrowDown"?d=c+1:s==="ArrowUp"&&(d=c-1);const m=n[d]?.[f]??null;m&&(t.preventDefault(),t.stopPropagation(),this.#S(),this.#L(this.#e,m),this.#A(),this.editor.getDoc().defaultView.requestAnimationFrame(()=>{this.editor.activateDocument(),this.#E(this.#e,!0);}));}#et(t,e=!0){const s=this.editor.selectionRange.getRange();if(e&&!s.collapsed||!t.contains(s.startContainer)||s.startOffset!==0)return !1;let i=s.startContainer;for(;i&&i!==t;){if(i.previousSibling)return !1;i=i.parentNode;}return !0}#st(t,e=!0){const s=this.editor.selectionRange.getRange();if(e&&!s.collapsed)return !1;const i=s.endContainer,n=i.nodeType===Node.TEXT_NODE?i.length:i.childNodes.length;if(!t.contains(i)||s.endOffset!==n)return !1;let o=i;for(;o&&o!==t;){if(o.nextSibling)return !1;o=o.parentNode;}return !0}#it(t){const e=this.editor.selectionRange.getRange(),s=getComputedStyle(t),i=parseFloat(s.lineHeight)||16,n=parseFloat(s.paddingTop)||0;let o=e.getBoundingClientRect();if(o.top===0){const l=e.startContainer;o=(l.nodeType===Node.ELEMENT_NODE?l:l.parentElement).getBoundingClientRect();}const r=t.getBoundingClientRect();return o.top-(r.top+n)<i/2}#nt(t){const e=this.editor.selectionRange.getRange(),s=getComputedStyle(t),i=parseFloat(s.lineHeight)||16,n=parseFloat(s.paddingBottom)||0;let o=e.getBoundingClientRect();if(o.top===0){const l=e.startContainer;o=(l.nodeType===Node.ELEMENT_NODE?l:l.parentElement).getBoundingClientRect();}const r=t.getBoundingClientRect();return o.bottom-(r.bottom-n)<i/2}#E(t,e){this.#P(t);const s=Array.from(t.children).filter(o=>this.editor.nodeManager.isBlock(o)),i=e?s[0]:s[s.length-1],n=this.editor.selectionRange.getRange();n.selectNodeContents(i),this.editor.selectionRange.ensureTextRange(n),n.collapse(e),this.editor.selectionRange.restoreRange(n);}#C(t){const e=t.closest(`figure.${this.#o}`);if(!e)return;if(this.#D(t),this.#H(t).forEach(i=>{const n=$lib.element({container:e,props:{className:this.#d}});this.#rt(n,i,t),$lib.on(n,"pointerdown",this.#Rt,[i,t],this);}),!this.#p.has(t)){const i=new ResizeObserver(()=>{if(!t.isConnected){i.disconnect(),this.#p.delete(t);return}this.#ot(t);});i.observe(t),this.#p.set(t,i);}}#ot(t){if(!t?.isConnected)return;const e=this.#H(t);t.closest(`figure.${this.#o}`).querySelectorAll(`:scope > .${this.#d}`).forEach((i,n)=>this.#rt(i,e[n],t));}#rt(t,e,s){const i=s.closest(`figure.${this.#o}`),n=i.getBoundingClientRect(),o=s.getBoundingClientRect();t.style.left=Math.round(o.left-n.left+e.offsetLeft+e.offsetWidth-t.offsetWidth/2)+"px",t.style.top=Math.round(o.top-n.top)+"px",t.style.height=s.offsetHeight+"px";}#D(t=null){t?(this.#p.get(t)?.disconnect(),this.#p.delete(t),t.closest(`figure.${this.#o}`)?.querySelectorAll(`:scope > .${this.#d}`).forEach(s=>s.remove())):(this.editor.getEditorElement().querySelectorAll(`.${this.#d}`).forEach(s=>s.remove()),this.#p=new WeakMap);}#Rt(t,e,s){if(s.button!==0)return;s.preventDefault(),s.stopPropagation(),this.hideMenuButton();const i=s.target,n=this.#H(e),o=n.findIndex(f=>f===t),r=n[n.length-1]===t,l=t.nextElementSibling,h=t.previousElementSibling,a=this.#ht(e),c=e.getBoundingClientRect(),u=n.slice(0,o).reduce((f,m)=>f+m.offsetWidth,0),d=r&&a?h:l;i.classList.add(this.#I),this.#a={col:t,table:e,isLast:r,usePercent:a,totalWidth:e.offsetWidth,startColWidth:t.offsetWidth,startNextColWidth:d?d.offsetWidth:0,nextCol:d,startX:c.left+u+t.offsetWidth};}#lt(t){this.#a&&(this.#x=t,this.#m||(this.#m=this.editor.getDoc().defaultView.requestAnimationFrame(()=>{this.editor.activateDocument(),this.#x&&this.#Et(this.#x),this.#m=null,this.#x=null;})));}#Et(t){const{col:e,table:s,isLast:i,usePercent:n,totalWidth:o,startColWidth:r,startX:l}=this.#a,h=t.clientX-l,a=Math.max(30,r+h);if(i&&!n){const c=Math.max(o-r+30,o+h);s.style.width=c.toFixed(0)+"px",e.style.width=a.toFixed(0)+"px";}else {const c=this.#a.nextCol,u=r+this.#a.startNextColWidth-a;if(!c||u<30)return;n?(e.style.width=(a/o*100).toFixed(2)+"%",c.style.width=(u/o*100).toFixed(2)+"%"):(e.style.width=a.toFixed(0)+"px",c.style.width=u.toFixed(0)+"px");}this.#ot(s);}#at(){if(!this.#a)return;const{table:t}=this.#a;this.#m&&(cancelAnimationFrame(this.#m),this.#m=null),this.#a=null,this.#x=null,t.closest(`figure.${this.#o}`).querySelectorAll(`:scope > .${this.#d}`).forEach(i=>i.classList.remove(this.#I));const{cell:s}=this.#t();this.#n(s),s&&this.#r&&this.positionMenuButton(s);}async#ct(){const t=this.#B();t&&await navigator.clipboard.write([new ClipboardItem({"text/html":new Blob([t.html],{type:"text/html"}),"text/plain":new Blob([t.text],{type:"text/plain"})})]);}#B(){const{table:t}=this.#t();if(!t||this.#s.size===0)return null;const e=new Map;this.#s.forEach(i=>{const n=i.parentElement;e.has(n)||e.set(n,[]),e.get(n).push(i);});const s=$lib.element({tag:"table"});return e.forEach(i=>{const n=$lib.element({container:s,tag:"tr"});i.forEach(o=>{$lib.element({container:n,tag:"td",content:[o.innerHTML],props:{colSpan:o.colSpan||void 0,rowSpan:o.rowSpan||void 0},attrs:{style:o.getAttribute?.("style")}});});}),{html:s.outerHTML,text:s.innerText}}#St(t,e,s){const i=this.#$(e,s.parentElement),n=this.#O(s.parentElement,s),o=this.utility.tableIdAttr,r=$lib.guid();e.setAttribute(o,r),this.#Mt(t,e,s,i,n),this.#vt(t,e,i,n),setTimeout(()=>{const l=this.editor.getEditorElement().querySelector(`[${o}="${r}"]`);if(!l)return;l.removeAttribute(o);const h=this.#u(l.rows[i],n);this.#M(l),this.#n(h);},0);}#Mt(t,e,s,i,n){const o=this.#Bt(t),r=t.rows.length,l=s.closest("tbody")||s.closest("thead")||s.closest("tfoot")||e;for(;e.rows.length<i+r;){const u=$lib.element({container:l,tag:"tr"});for(let d=0;d<this.#f(e.rows[0]);d++)u.appendChild(this.#h());}const h=n+o,a=this.#f(e.rows[0]),c=h-a;if(c>0)for(const u of e.rows)for(let d=0;d<c;d++)u.appendChild(this.#h());for(let u=i;u<i+r;u++)for(let d=n;d<n+o;d++){const f=this.#u(e.rows[u],d);f&&((f.colSpan||1)>1||(f.rowSpan||1)>1)&&this.#q(e,f);}}#vt(t,e,s,i){Array.from(t.rows).forEach((n,o)=>{let r=0;Array.from(n.cells).forEach(l=>{const h=e.rows[s+o],a=this.#u(h,i+r);if(a){a.innerHTML=l.innerHTML,a.colSpan=l.colSpan||1,a.rowSpan=l.rowSpan||1,l.hasAttribute("style")?a.setAttribute("style",l.getAttribute("style")):a.removeAttribute("style");for(let c=1;c<(a.rowSpan||1);c++)for(let u=0;u<(a.colSpan||1);u++){const d=this.#u(e.rows[s+o+c],i+r+u);d&&d.remove();}r+=l.colSpan||1;}});});}#L(t,e){const s=t.closest("table"),i=this.#l(s),n=this.#i(i,t),o=this.#i(i,e);if(!n||!o)return;let r=Math.min(n.r,o.r),l=Math.max(n.r,o.r),h=Math.min(n.c,o.c),a=Math.max(n.c,o.c),c=!0;for(;c;){c=!1;for(let u=r;u<=l;u++)for(let d=h;d<=a;d++){const f=i[u]?.[d];if(!f)continue;const m=this.#At(f,i);m.minRow<r&&(r=m.minRow,c=!0),m.minCol<h&&(h=m.minCol,c=!0),m.maxRow>l&&(l=m.maxRow,c=!0),m.maxCol>a&&(a=m.maxCol,c=!0);}}this.#s=new Set;for(let u=r;u<=l;u++)for(let d=h;d<=a;d++){const f=i[u]?.[d];f&&this.#s.add(f);}}#l(t){const e=[];return Array.from(t.rows).forEach((i,n)=>{e[n]||(e[n]=[]);let o=0;Array.from(i.children).forEach(r=>{for(;e[n][o];)o++;const l=r.rowSpan||1,h=r.colSpan||1;for(let a=0;a<l;a++)for(let c=0;c<h;c++)e[n+a]||(e[n+a]=[]),e[n+a][o+c]=r;o+=h;});}),e}#i(t,e){for(let s=0;s<t.length;s++)for(let i=0;i<(t[s]?.length||0);i++)if(t[s][i]===e)return {r:s,c:i};return null}#At(t,e){const s=this.#i(e,t),i=t.rowSpan||1,n=t.colSpan||1;return {minRow:s.r,maxRow:s.r+i-1,minCol:s.c,maxCol:s.c+n-1}}#N(t,e=!0){if(!t||(this.#S(),this.#s=new Set([t]),this.#e=t,this.#A(),!e))return;const s=this.editor.selectionRange.getRange();(!t.contains(s.startContainer)||!s.collapsed)&&this.#E(t,!0);}#S(){this.#s.forEach(t=>{t.classList.remove(this.#g,this.#y),t.className||t.removeAttribute("class");}),this.#e&&(this.#e.classList.remove(this.#y),this.#e.className||this.#e.removeAttribute("class"));}#A(){this.#s.size>1&&this.#s.forEach(t=>t.classList.add(this.#g)),this.#e&&this.#e.classList.add(this.#y);}#c(t){return Array.from(this.#s)}#$t(t){return [...new Set(this.#c(t).map(e=>e.parentElement))]}#t(){const t=this.editor.selectionRange,e=t.getRange(),s=t.getNodesInRange(e);let o=t.getRootNodesInRange(e,s)[0]?.closest("td,th")||this.#w||this.#Dt();return o?.isConnected||(o=null),{cell:o,table:o?.closest("table")}}#It(t){const e=this.editor.selectionRange.getRange(),s=e.startContainer,i=s.nodeType===Node.TEXT_NODE?s.parentElement:s,n=i.closest(`figure.${this.#o}`),o=this.utility.isPrintableChar(t);let r=i.closest("td,th");n&&!r&&(e.collapsed?(r=n.querySelector("td,th"),r&&this.#E(r,!0)):(o||t.key==="Delete"||t.key==="Backspace")&&(r=n.querySelector("td,th"),r&&(e.setStart(r.firstElementChild,0),this.editor.selectionRange.ensureTextRange(e),this.editor.selectionRange.restoreRange(e))));}#Tt(){const t=this.editor.selectionRange.getRange();if(t.collapsed)return;const e=t.startContainer,s=t.endContainer,i=e.nodeType===Node.TEXT_NODE?e.parentElement:e,n=s.nodeType===Node.TEXT_NODE?s.parentElement:s,o=i.closest("td, th"),r=n.closest("td, th");if(o&&o!==r){const l=this.#l(o.closest("table")),h=this.#i(l,o),a=r?this.#i(l,r):null;r?a.r>h.r||a.r===h.r&&a.c>h.c:!0;this.editor.getDoc().defaultView.requestAnimationFrame(()=>{this.#E(o,!0);});}}#P(t){if(!t)return;const e=this.editor.selectionRange,s=e.getRange(),i=Array.from(t.childNodes).filter(o=>o.nodeType===Node.TEXT_NODE||o.nodeType===Node.ELEMENT_NODE&&!this.editor.nodeManager.isBlock(o));if(i.length){const o=e.createRangeMarker(s),r=$lib.element({tag:"p"});t.insertBefore(r,i[0]),i.forEach(l=>r.appendChild(l)),(!r.firstChild||r.firstChild.nodeName==="BR")&&(r.innerHTML="",$lib.element({container:r,tag:"br"})),e.restoreRangeToMarker(o,s);return}if(!Array.from(t.children).some(o=>this.editor.nodeManager.isBlock(o))){const o=$lib.element({tag:"p"}),r=$lib.element({container:o,tag:"br"});e.insertIntoRange(s,o,r),e.restoreRange(s);return}if(s.startContainer===t){const o=t.children[s.startOffset]||t.lastElementChild;s.selectNodeContents(o),s.collapse(!0),e.ensureTextRange(s),e.restoreRange(s);}Array.from(t.children).filter(o=>this.editor.nodeManager.isBlock(o)&&!o.firstChild).forEach(o=>$lib.element({container:o,tag:"br"}));}#Dt(){return this.#s.values().next().value??null}#ht(t){const e=t.style.width||"";return e===""||e==="100%"||e.endsWith("%")}#h(t=null){const e=$lib.element({tag:"p"});$lib.element({container:e,tag:"br"});return $lib.element({tag:"td",container:t,content:e})}#M(t,e=-1){const s=t.querySelector("colgroup");if(!s)return;const i=this.#f(t.rows[0]),n=this.#ht(t),o=t.offsetWidth,r=Array.from(s.children).map(l=>l.offsetWidth);r.splice(e+1,0,0),s.innerHTML="";for(let l=0;l<i;l++){const h=$lib.element({container:s,tag:"col"});let a;if(e>=0&&(l===e||l===e+1)){const c=Math.floor(r[e]/2);l===e?a=c:a=r[e]-c;}else a=r[l]||o/i;h.style.width=n?(a/o*100).toFixed(2)+"%":a.toFixed(0)+"px";}}#Lt(t,e){let s=t.querySelector(e);if(!s){const i=t.querySelector("tfoot");s=$lib.element({container:t,tag:e,before:e==="tbody"&&i?i:null});}return s}#Bt(t){let e=0;for(const s of t.rows)e=Math.max(e,this.#f(s));return e}#f(t){let e=0;for(const s of t.cells)e+=s.colSpan||1;return e}#O(t,e){return Array.from(t.cells).indexOf(e)}#$(t,e){return Array.from(t.rows).indexOf(e)}#k(t,e){let s=0;for(const i of t.cells){if(i===e)return s;s+=i.colSpan||1;}return -1}#u(t,e){let s=0;for(const i of t.cells){const n=i.colSpan||1;if(s<=e&&e<s+n)return i;s+=n;}return null}#H(t){return Array.from(t.querySelectorAll(":scope > colgroup > col"))}#ut(t){t.forEach(e=>{const s=$lib.element({tag:"p"});$lib.element({container:s,tag:"br"}),e.innerHTML="",e.appendChild(s);});}#dt(t,e){return t?.closest("table")===e?.closest("table")}#n(t){const e=t?.closest("table");this.clearSelection(),this.removeMenuButton(),e&&this.#D(e),this.editor.history.addItem(),e&&this.#C(e),t&&this.#N(t);}};componyx.UI.editor_modules.Table;
104
+
105
+
106
+ var m$3=Object.defineProperty;var n$1=(b,e)=>m$3(b,"name",{value:e,configurable:!0});componyx.UI.editor_modules=componyx.UI.editor_modules||{},componyx.UI.editor_modules.TableDialog=class{static{n$1(this,"TableDialog");}#T=null;#t;#s;#r=null;#A=null;#m=null;#d={borderWidth:!1,borderStyle:!1,borderColor:!1};#a={borderStyle:!1,borderColor:!1};#l={borderWidth:!1,borderStyle:!1,borderColor:!1};#x=null;#h=null;#C=null;#D=null;#E=null;#W=null;#g=null;#f=null;#y=null;#p=null;#S=null;#F=null;#w=null;#$=null;#H=null;#B=null;#v=null;#V=null;#L=null;#R=null;#I=null;#O=null;#_=null;#q;#k;#i;constructor(e){this.#t=e,this.#s=e.componentFactory,this.utility=e.utility,this.#q=e.getCssClass(this.#t.classOption.TABLE_SELECTED),this.#k=e.getCssClass(this.#t.classOption.TABLE_DIALOG_PANEL),this.#i=e.getCssClass(e.classOption.FIELD_HALF);}get dialog(){return this.#T}show(e){this.#r=e,this.#T?.show();}create(){const e=this.#t,l=this.#s,s="TableDialog",t=$lib.element("","","",e.labels.tableDialogHeader||"Table Settings"),o=$lib.element();this.#A=$lib.element("","","","",{class:e.getCssClass(e.classOption.TABLE_DIALOG_CATEGORIES)}),this.#m=$lib.element("","","","",{class:e.getCssClass(e.classOption.TABLE_DIALOG_VIEW)});const r=[{label:e.labels.tableDialogCategoryTable,fn:n$1(()=>this.#P("table"),"fn")},{label:e.labels.tableDialogCategoryRow,fn:n$1(()=>this.#P("row"),"fn")},{label:e.labels.tableDialogCategoryCell,fn:n$1(()=>this.#P("cell"),"fn")}];$lib.each(r,i=>{$lib.element(this.#A,"","a",i.label,{class:e.getCssClass(e.classOption.TABLE_DIALOG_CATEGORY)},{onclick:i.fn});}),this.#m.append(this.#z(),this.#U(),this.#M()),o.append(this.#A,this.#m),this.#T=l.createDialog(s,e.tableDialogId,{cssClass:e.getCssClass(e.classOption.TABLE_DIALOG),header:t,content:o,onShowComplete:n$1(()=>this.#Y(),"onShowComplete"),onConfirm:n$1(()=>this.#j(),"onConfirm"),onHide:n$1(()=>{const i=this.#r.cell;i.classList.remove(this.#q),i.className||i.removeAttribute("class"),this.#r=null;},"onHide")});}#P(e){this.#m.querySelectorAll(`.${this.#k}`).forEach(s=>{s.style.display=s.dataset.category===e?"":"none";});const l=this.#t.getCssClass(this.#t.classOption.ACTIVE);$lib.each(this.#A.children,(s,t)=>{const o=["table","row","cell"];s.classList.toggle(l,o[t]===e);});}#z(){const e=this.#t,l=this.#s,s=this.#N("table"),t=e.labels,o=e.tableDialog,r=$lib.element(),i={};this.#x=$lib.element("","","input","",{type:"text",id:this.#o("tableWidth")}),i.width=l.createFormField("fldTableWidth",o.tableWidthFormFieldId,r,{label:t.tableWidth,field:this.#x}).element,this.#g=$lib.element("","","input","",{type:"text",id:this.#o("tableCellSpacing")}),i.cellSpacing=l.createFormField("fldTableCellSpacing",o.tableCellSpacingFormFieldId,r,{label:t.tableCellSpacing,field:this.#g,cssClass:this.#i}).element,this.#f=$lib.element("","","input","",{type:"text",id:this.#o("tableCellPadding")}),i.cellPadding=l.createFormField("fldTableCellPadding",o.tableCellPaddingFormFieldId,r,{label:t.tableCellPadding,field:this.#f,cssClass:this.#i}).element,this.#h=this.#b("tableAlignment",o.horizontalAlignComboBoxId,[{value:"left",text:t.alignLeft},{value:"center",text:t.alignCenter},{value:"right",text:t.alignRight}]),i.alignment=l.createFormField("fldTableAlignment",o.tableAlignFormFieldId,r,{label:t.tableAlignment,field:this.#h.element}).element,this.#C=$lib.element({tag:"input",props:{type:"text",id:this.#o("tableBorderWidth"),oninput:n$1(()=>{this.#d.borderWidth=!0;},"oninput")}}),i.borderWidth=l.createFormField("fldTableBorderWidth",o.tableBorderWidthFormFieldId,r,{label:t.borderWidth,field:this.#C,cssClass:this.#i}).element,this.#D=this.#b("tableBorderStyle",o.borderStyleComboBoxId,[{value:"none",text:t.borderStyleNone},{value:"solid",text:t.borderStyleSolid},{value:"dashed",text:t.borderStyleDashed},{value:"dotted",text:t.borderStyleDotted},{value:"double",text:t.borderStyleDouble}],()=>{this.#d.borderStyle=!0;}),i.borderStyle=l.createFormField("fldTableBorderStyle",o.tableBorderStyleFormFieldId,r,{label:t.borderStyle,field:this.#D.element,cssClass:this.#i}).element,this.#E=this.#u("tableBorderColor",o.tableBorderColorFormFieldId,o.borderColorButtonId,r,t.borderColor,!0,()=>{this.#d.borderColor=!0;}),i.borderColor=r.lastElementChild,this.#W=this.#u("tableBgColor",o.tableBgColorFormFieldId,o.bgColorButtonId,r,t.bgColor,!0),i.bgColor=r.lastElementChild,this.#y=$lib.element("","","input","",{type:"text",id:this.#o("tableCaption")}),i.caption=l.createFormField("fldTableCaption",o.tableCaptionFormFieldId,r,{label:t.caption,field:this.#y}).element;const d="{width}{cellSpacing}{cellPadding}{alignment}{borderWidth}{borderStyle}{borderColor}{bgColor}{caption}",a="TableDialogTable",h="Default"+a;return e.hasTemplate(a)?e.applyTemplate(s,a,i):(e.addTemplate(h,d,!1),e.applyTemplate(s,h,i)),s}#U(){const e=this.#t,l=this.#s,s=this.#N("row"),t=e.labels,o=e.tableDialog,r=$lib.element(),i={};this.#p=$lib.element("","","input","",{type:"checkbox",id:this.#o("rowIsHeader")}),i.isHeader=l.createFormField("fldRowIsHeader",o.rowIsHeaderFormFieldId,r,{label:t.headerRow,field:this.#p,switch:!0,labelDisplay:5}).element,this.#S=$lib.element("","","input","",{type:"checkbox",id:this.#o("rowIsFooter")}),i.isFooter=l.createFormField("fldRowIsFooter",o.rowIsFooterFormFieldId,r,{label:t.footerRow,field:this.#S,switch:!0,labelDisplay:5}).element,this.#F=$lib.element("","","input","",{type:"text",id:this.#o("rowHeight")}),i.height=l.createFormField("fldRowHeight",o.rowHeightFormFieldId,r,{label:t.rowHeight,field:this.#F}).element,this.#$=this.#b("rowBorderStyle",o.borderStyleComboBoxId,[{value:"none",text:t.borderStyleNone},{value:"solid",text:t.borderStyleSolid},{value:"dashed",text:t.borderStyleDashed},{value:"dotted",text:t.borderStyleDotted},{value:"double",text:t.borderStyleDouble}],()=>{this.#a.borderStyle=!0;}),i.borderStyle=l.createFormField("fldRowBorderStyle",o.rowBorderStyleFormFieldId,r,{label:t.borderStyle,field:this.#$.element}).element,this.#H=this.#u("rowBorderColor",o.rowBorderColorFormFieldId,o.borderColorButtonId,r,t.borderColor,!0,()=>{this.#a.borderColor=!0;}),i.borderColor=r.lastElementChild,this.#w=this.#u("rowBgColor",o.rowBgColorFormFieldId,o.bgColorButtonId,r,t.bgColor,!0),i.bgColor=r.lastElementChild;const d="{isHeader}{isFooter}{height}{borderStyle}{borderColor}{bgColor}",a="TableDialogRow",h="Default"+a;return e.hasTemplate(a)?e.applyTemplate(s,a,i):(e.addTemplate(h,d,!1),e.applyTemplate(s,h,i)),s}#M(){const e=this.#t,l=this.#s,s=this.#N("cell"),t=e.labels,o=e.tableDialog,r=$lib.element(),i={};this.#B=$lib.element("","","input","",{type:"text",id:this.#o("cellWidth")}),i.width=l.createFormField("fldCellWidth",o.cellWidthFormFieldId,r,{label:t.cellWidth,field:this.#B,cssClass:this.#i}).element,this.#v=$lib.element("","","input","",{type:"text",id:this.#o("cellHeight")}),i.height=l.createFormField("fldCellHeight",o.cellHeightFormFieldId,r,{label:t.cellHeight,field:this.#v,cssClass:this.#i}).element,this.#V=this.#b("cellVerticalAlign",o.verticalAlignComboBoxId,[{value:"top",text:t.alignTop},{value:"middle",text:t.alignMiddle},{value:"bottom",text:t.alignBottom}]),i.verticalAlign=l.createFormField("fldCellVerticalAlign",o.cellVerticalAlignFormFieldId,r,{label:t.verticalAlign,field:this.#V.element,cssClass:this.#i}).element,this.#L=this.#b("cellHorizontalAlign",o.horizontalAlignComboBoxId,[{value:"left",text:t.alignLeft},{value:"center",text:t.alignCenter},{value:"right",text:t.alignRight}]),i.horizontalAlign=l.createFormField("fldCellHorizontalAlign",o.cellHorizontalAlignFormFieldId,r,{label:t.horizontalAlign,field:this.#L.element,cssClass:this.#i}).element,this.#I=$lib.element({tag:"input",props:{type:"text",id:this.#o("cellBorderWidth"),oninput:n$1(()=>{this.#l.borderWidth=!0;},"oninput")}}),i.borderWidth=l.createFormField("fldCellBorderWidth",o.cellBorderWidthFormFieldId,r,{label:t.borderWidth,field:this.#I,cssClass:this.#i}).element,this.#O=this.#b("cellBorderStyle",o.borderStyleComboBoxId,[{value:"none",text:t.borderStyleNone},{value:"solid",text:t.borderStyleSolid},{value:"dashed",text:t.borderStyleDashed},{value:"dotted",text:t.borderStyleDotted},{value:"double",text:t.borderStyleDouble}],()=>{this.#l.borderStyle=!0;}),i.borderStyle=l.createFormField("fldCellBorderStyle",o.cellBorderStyleFormFieldId,r,{label:t.borderStyle,field:this.#O.element,cssClass:this.#i}).element,this.#_=this.#u("cellBorderColor",o.cellBorderColorFormFieldId,o.borderColorButtonId,r,t.borderColor,!0,()=>{this.#l.borderColor=!0;}),i.borderColor=r.lastElementChild,this.#R=this.#u("cellBgColor",o.cellBgColorFormFieldId,o.bgColorButtonId,r,t.bgColor,!0),i.bgColor=r.lastElementChild;const d="{width}{height}{verticalAlign}{horizontalAlign}{borderWidth}{borderStyle}{padding}{borderColor}{bgColor}",a="TableDialogCell",h="Default"+a;return e.hasTemplate(a)?e.applyTemplate(s,a,i):(e.addTemplate(h,d,!1),e.applyTemplate(s,h,i)),s}#Y(){const{cell:e,table:l}=this.#r||{},s=e.closest("tr");e.classList.add(this.#q),this.#m.querySelectorAll(`.${this.#k}`).forEach(t=>{t.style.display="";}),this.#T.getBox().update(),this.#P("cell"),l&&this.#J(l,e),s&&this.#K(s),e&&this.#Q(e),this.#Z();}#Z(){this.#d={borderWidth:!1,borderStyle:!1,borderColor:!1},this.#a={borderStyle:!1,borderColor:!1},this.#l={borderWidth:!1,borderStyle:!1,borderColor:!1,padding:!1};}#j(){let{cell:e,table:l}=this.#r||{},s=e?.closest("tr");l&&this.#X(l),s&&this.#ee(s,l),e=this.#r.cell,e&&this.#te(e),this.#t.table.updateContextCell(e),this.#t.history.addItem();}#J(e,l){this.#x.value=e.style.width||"",this.#g.value=e.style.borderSpacing||"",this.#f.value=l.style.padding||"",this.#y.value=e.querySelector("caption")?.textContent||"",this.#W&&this.#W.setRGBA(...this.#n(e.style.backgroundColor)),this.#C.value=e.style.borderWidth||"",this.#D.setValue(e.style.borderStyle||""),this.#E&&this.#E.setRGBA(...this.#n(e.style.borderColor)),e.style.marginLeft==="auto"&&e.style.marginRight==="auto"?this.#h.setValue("center"):e.style.marginLeft==="auto"?this.#h.setValue("right"):e.style.float?this.#h.setValue(e.style.float):this.#h.setValue("");}#K(e){this.#p.checked=e.parentElement?.tagName==="THEAD",this.#S.checked=e.parentElement?.tagName==="TFOOT",this.#F.value=e.style.height||"",this.#w&&this.#w.setRGBA(...this.#n(e.style.backgroundColor)),this.#$.setValue(e.style.borderStyle||""),this.#H&&this.#H.setRGBA(...this.#n(e.style.borderColor));}#Q(e){this.#B.value=e.style.width||"",this.#v.value=e.style.height||"",this.#I.value=e.style.borderWidth||"",this.#V.setValue(e.style.verticalAlign||""),this.#L.setValue(e.style.textAlign||""),this.#O.setValue(e.style.borderStyle||""),this.#R&&this.#R.setRGBA(...this.#n(e.style.backgroundColor)),this.#_&&this.#_.setRGBA(...this.#n(e.style.borderColor));}#X(e){this.#e(e,"width",this.#x.value),this.#e(e,"backgroundColor",this.#c(this.#W)),this.#g.value?(e.style.borderCollapse="separate",this.#e(e,"borderSpacing",$lib.unit(this.#g.value))):(e.style.borderCollapse="collapse",e.style.removeProperty("border-spacing"));const l=this.#C.value?$lib.unit(this.#C.value):"",s=this.#D.getValue()||"",t=this.#c(this.#E);this.#e(e,"borderWidth",l),this.#e(e,"borderStyle",s),this.#e(e,"borderColor",t);const o=this.#f.value?$lib.unit(this.#f.value):"",r=this.#r?.cell;switch(e.querySelectorAll("td, th").forEach(d=>{const a=d===r;this.#d.borderWidth&&(!a||!this.#l.borderWidth)&&this.#e(d,"borderWidth",l),this.#d.borderStyle&&(!a||!this.#l.borderStyle)&&this.#e(d,"borderStyle",s),this.#d.borderColor&&(!a||!this.#l.borderColor)&&this.#e(d,"borderColor",t),this.#e(d,"padding",o);}),e.style.removeProperty("float"),e.style.removeProperty("margin-left"),e.style.removeProperty("margin-right"),this.#h.getValue()){case"center":e.style.marginLeft=e.style.marginRight="auto";break;case"right":e.style.marginLeft="auto";break;case"left":e.style.float="left";break}let i=e.querySelector("caption");this.#y.value?(i||(i=e.ownerDocument.createElement("caption"),e.insertBefore(i,e.firstChild)),i.textContent=this.#y.value):i&&i.remove();}#ee(e,l){const s=l.ownerDocument,t=l.querySelector("tbody")||this.#le(l,"tbody");if(this.#p.checked&&e.parentElement?.tagName!=="THEAD"){let d=l.querySelector("thead");d||(d=s.createElement("thead"),l.insertBefore(d,l.firstChild)),this.#G(e,"TH"),d.appendChild(e);}else if(!this.#p.checked&&e.parentElement?.tagName==="THEAD"){const d=e.parentElement;this.#G(e,"TD"),t.insertBefore(e,t.firstChild),d.children.length||d.remove();}if(this.#S.checked&&e.parentElement?.tagName!=="TFOOT"){let d=l.querySelector("tfoot");d||(d=s.createElement("tfoot"),l.appendChild(d)),this.#G(e,"TD"),d.insertBefore(e,d.firstChild);}else if(!this.#S.checked&&e.parentElement?.tagName==="TFOOT"){const d=e.parentElement;t.appendChild(e),this.#G(e,"TD"),d.children.length||d.remove();}this.#e(e,"height",this.#F.value?$lib.unit(this.#F.value):""),this.#e(e,"backgroundColor",this.#c(this.#w));const o=this.#$.getValue()||"",r=this.#c(this.#H),i=this.#r?.cell;this.#a.borderStyle&&this.#e(e,"borderStyle",o),this.#a.borderColor&&this.#e(e,"borderColor",r),e.querySelectorAll("td, th").forEach(d=>{const a=d===i;this.#a.borderStyle&&(!a||!this.#l.borderStyle)&&this.#e(d,"borderStyle",o),this.#a.borderColor&&(!a||!this.#l.borderColor)&&this.#e(d,"borderColor",r);});}#te(e){this.#e(e,"width",this.#B.value?$lib.unit(this.#B.value):""),this.#e(e,"height",this.#v.value?$lib.unit(this.#v.value):""),this.#e(e,"verticalAlign",this.#V.getValue()),this.#e(e,"textAlign",this.#L.getValue()),this.#e(e,"backgroundColor",this.#c(this.#R)),this.#l.borderWidth&&this.#e(e,"borderWidth",this.#I.value?$lib.unit(this.#I.value):""),this.#l.borderStyle&&this.#e(e,"borderStyle",this.#O.getValue()),this.#l.borderColor&&this.#e(e,"borderColor",this.#c(this.#_));}#G(e,l){const s=e.ownerDocument,{cell:t,table:o}=this.#r||{};for(const r of [...e.cells])if(r.nodeName!==l){const i=s.createElement(l);i.innerHTML=r.innerHTML;for(const d of r.attributes)i.setAttribute(d.name,d.value);r.replaceWith(i),r===t&&(this.#r.cell=i);}}#c(e){const l=e?.getValue();return l?`rgba(${l})`:""}#e(e,l,s){s?e.style[l]=s:e.style.removeProperty(l.replace(/([A-Z])/g,"-$1").toLowerCase());}#N(e){const l=$lib.element({attrs:{"data-category":e,class:this.#k}});return l.style.display="none",l}#b(e,l,s,t=null){const o=[];$lib.each(s,i=>{o.push({id:i.value,value:i.value,text:i.text});});const r=this.#s.createComboBox(e,l,null,{itemList:o});return t&&(r.events.onItemSelect.priorityAdd(t),r.events.onItemDeselect.priorityAdd(t)),r}#u(e,l,s,t,o,r=!1,i=null){this.#t;const a=this.#s,h=a.createColorButton(e,s,t,{command:n$1(()=>{const c=a.colorSwatchBox;if(c)if(c.showing){const u=h.getButton();u.__color?h.setRGBA(...this.#n(u.__color)):h.setRGBA(255,0,0,0),i&&i();}else a.setActiveExpandButton(h.getButton()),c.expander=h.element,c.show();},"command")});return a.createFormField("fld_"+e,l,t,{label:o,field:h.element,cssClass:r?this.#i:void 0}),h}#n(e){if(!e)return [255,0,0,0];const l=$lib.element({container:document.body});l.style.color=e;const s=getComputedStyle(l).color;return l.remove(),s.match(/[\d.]+/g)}#le(e,l){let s=e.querySelector(l);if(!s){s=e.ownerDocument.createElement(l);const t=e.querySelector("tfoot");l==="tbody"&&t?e.insertBefore(s,t):e.appendChild(s);}return s}#o(e){return this.utility.getId(e)}};componyx.UI.editor_modules.TableDialog;
107
+
108
+
109
+ var I$3=Object.defineProperty;var m$2=(u,e)=>I$3(u,"name",{value:e,configurable:!0});componyx.UI.editor_modules=componyx.UI.editor_modules||{},componyx.UI.editor_modules.Toolbar=class{static{m$2(this,"Toolbar");}#i=null;#e=null;#s=null;#r=null;#t=null;#o=null;constructor(e){this.editor=e,this.cf=e.componentFactory;}get element(){return this.#i}get emojiPicker(){return this.#t}get toolbarBoxShowing(){return this.#e?.showing??!1}get specialPicker(){return this.#o}createToolbar(){const e=this.editor,t=e.componentFactory,i=e.classOption,s=e.commands,l=e.getSortedCommands();this.#i=e.element.appendChild($lib.element()),this.#i.className=e.getCssClass(i.TOOLBAR),$lib.each(s,(o,n)=>{o.id=o.id||n,o.name=n,o.tooltip=e.labels[`${o.name}CommandTooltip`]||o.tooltip,l.push(o),o.selector&&!e.selectableNodes.includes(o.selector)&&e.selectableNodes.push(o.selector);}),l.sort((o,n)=>o.group<n.group?-1:o.group>n.group?1:o.position<n.position?-1:o.position>n.position?1:0);let r,a,c=this.#i;$lib.each(l,o=>{o.show&&(r!==o.group&&(r=o.group,a=$lib.element(c,"","","","",{className:e.getCssClass(i.GROUP)})),t.createButton(o.id,o.buttonId,a,o),o.id==="more"&&(c=this.#n()));});const h=m$2(o=>e.utility.getId(o),"getId");return $UI.store[h("undo")]?.disable(),$UI.store[h("redo")]?.disable(),this.#i}createToolbarBox(){const e=this.editor;this.#e=this.cf.createBox("Toolbar",e.toolbarBoxId,e.element,{cssClass:e.getCssClass(e.classOption.TOOLBAR_BOX),content:this.#i}),this.#e.render(),$lib.on(this.#e.element,"pointerdown",()=>{e.allowToolbarBoxHide=!1;});}async createEmojiSymbolPicker(){const e=this.editor;let t=e.emojiSymbolResourcePath;!e.emojiSymbolData&&!t||(e.emojiSymbolData||(e.emojiSymbolData=await e.utility.fetchData(t)),this.#t=new componyx.UI.editor_modules.SymbolPicker(e,e.emojiSymbolPickerBoxId,"EmojiSymbolPicker",e.getCssClass(e.classOption.EMOJI_SYMBOL_PICKER),e.labels.emojiSymbolCategories,e.emojiSymbolData));}async createSpecialSymbolPicker(){const e=this.editor;let t=e.specialSymbolResourcePath;!e.specialSymbolData&&!t||(e.specialSymbolData||(e.specialSymbolData=await e.utility.fetchData(t)),this.#o=new componyx.UI.editor_modules.SymbolPicker(e,e.specialSymbolPickerBoxId,"SpecialSymbolPicker",e.getCssClass(e.classOption.SPECIAL_SYMBOL_PICKER),e.labels.specialSymbolCategories,e.specialSymbolData));}setToolbarBoxDisplay(e=!0){const t=this.editor,i=t.element.className.includes(" fullscreen");if(!(!this.#e||t.renderState!==2||!e&&i)){if(!t.allowToolbarBoxHide&&!e){t.allowToolbarBoxHide=!0;return}clearTimeout(this.#r),this.#r=setTimeout(()=>{e?this.#a():this.#e.hide();},0);}}setButtonState(e,t=[]){const i=this.editor,s=m$2(l=>i.utility.getId(l),"getId");$lib.each(i.getSortedCommands(),l=>{if(!l.show||t.includes(l.id))return;const r=$UI.store[s(l.id)];r&&(e&&r.disabled?r.enable():!e&&!r.disabled&&r.disable());});}hideBoxes(e){const t=this.editor,i=e.target,s=m$2(S=>t.utility.getId(S),"getId"),l=t.commands,r=l.fontColor,a=l.fontBGColor,c=l.emoji,h=l.special,o=t.componentFactory,n=o.colorSwatchBox,g=o.colorPicker,p=t.table.pickerBox,b=n?.showing,x=this.#t?.box.showing,f=this.#o?.box.showing,d=this.#s?.element,y=b&&r&&d?.contains($UI.store[s(r.id)]?.element)||b&&a&&d?.contains($UI.store[s(a.id)]?.element)||x&&c&&d?.contains($UI.store[s(c.id)]?.element)||f&&h&&d?.contains($UI.store[s(h.id)]?.element);this.#l(i,[n?.element,g?.element])&&n?.hide(),this.#t&&this.#l(i,[this.#t.box.element])&&this.#t.box.hide(),this.#o&&this.#l(i,[this.#o.box.element])&&this.#o.box.hide(),p&&this.#l(i,[p.element])&&p.hide(),this.#s&&!y&&this.#l(i,[d])&&(this.#s.hide(),$UI.store[s("more")]?.deselect());}showSpecialSymbolPicker(e){this.#o?.show(e);}showEmojiSymbolPicker(e){this.#t?.show(e);}#n(){const e=this.editor,t=$lib.element();return this.#s=this.cf.createBox("ToolbarMore",e.toolbarMoreBoxId,e.element,{cssClass:e.getCssClass(e.classOption.TOOLBAR_MORE),content:t}),this.#s.render(),t}#a(){const e=this.editor,t=e.selectionRange,i=e.getEditorElement(),s=componyx.UI.Box,l=e.element.className.includes(" fullscreen"),r=e.getToolbarDisplay(i),a=componyx.UI.Editor.ToolbarDisplayOption,c=i.offsetWidth/3;if(this.#e.expander=i,this.#e.alignX=null,this.#e.expandDirection=s.ExpandDirectionOption.UP,!l&&r===a.CARET){const h=t.getRange();if(h.collapsed)return;const o=this.#c();this.#e.expander=t.getRootNodesInRange(h)[0],this.#e.alignX=s.AlignXOption.CENTER,o.x<=c?this.#e.alignX=s.AlignXOption.LEFT:o.x>c*2&&(this.#e.alignX=s.AlignXOption.RIGHT);}else r===a.HEADER||r===a.CARET?this.#e.expandDirection=s.ExpandDirectionOption.UP:this.#e.expandDirection=s.ExpandDirectionOption.DOWN;this.#e.update(null,!0);}#c(){const e=this.editor.selectionRange.getRange().cloneRange();e.collapse(!0);const t=e.getClientRects()[0];return t?{x:t.left,y:t.top}:{x:0,y:0}}#l(e,t){if(!e)return !0;let i=!0;return $lib.each(t,s=>{if(s)return i=e!==s&&!s.contains(e)}),i}};componyx.UI.editor_modules.Toolbar;
110
+
111
+
112
+ var u$3=Object.defineProperty;var r$2=(n,t)=>u$3(n,"name",{value:t,configurable:!0});componyx.UI.editor_modules=componyx.UI.editor_modules||{},componyx.UI.editor_modules.TooltipMenu=class{static{r$2(this,"TooltipMenu");}#t=null;#e={link:null,editButton:null,removeButton:null};constructor(t){this.editor=t,this.utility=t.utility,this.tooltipManager=t.componentFactory.createTooltipManager("documentTooltipManager",t.documentTooltipManagerId,t.element,{cssClass:t.getCssClass(t.classOption.DOC_TOOLTIPS),showOnPointerEvent:0});}show(t){const e=this.editor.layoutState.activeLayout,i=this.#e;!e.link&&!e.image&&!e.media||(i.link||this.#i(),i.link.style.display="none",e.link?.href&&(i.link.style.display="",i.link.href=e.link.href,i.link.textContent=e.link.href),this.tooltipManager.addTrigger(t,this.#t),this.tooltipManager.showTooltip(t));}dispose(){this.tooltipManager?.destroy(),this.tooltipManager=null;}#i(){const t=$lib.element();this.#t=this.utility.getId("selectedNode"),this.#o(t),$lib.on(t,"pointerdown",()=>{this.editor.allowToolbarBoxHide=!1;}),this.tooltipManager.addTooltip(this.#t,t,!1);}#o(t){const e="TooltipMenu",i=`${this.utility.buttonLucentCss} ${this.editor.getThemeCSS()}`,a=this.editor.getCssClass(this.editor.classOption.TOOLTIP_MENU_LINK),s={link:`<a class="${a}" target="_blank">`,editButton:`<a class="${i} edit ico-pencil">`,removeButton:`<a class="${i} remove ico-bin">`};s["/link"]=s["/editButton"]=s["/removeButton"]="</a>",this.editor.hasTemplate(e)||this.editor.addTemplate(e,"{link}{/link}{editButton}{/editButton}{removeButton}{/removeButton}",!0),this.editor.applyTemplate(t,e,s);const l=this.#e;l.link=t.querySelector(`a.${a.replaceAll(" ",".")}`),l.editButton=t.querySelector(`a.${i.replaceAll(" ",".")}.edit`),l.removeButton=t.querySelector(`a.${i.replaceAll(" ",".")}.remove`),l.editButton.onclick=()=>{const o=this.editor.layoutState.activeLayout;o.link?this.editor.insertLink():o.image?this.editor.insertImage():o.media&&this.editor.insertMedia();},l.removeButton.onclick=()=>{const o=this.editor.layoutState.activeLayout;this.tooltipManager.hideAllTooltips(!0),o.link?this.editor.removeLink():o.image?this.editor.removeImage():o.media&&this.editor.removeMedia();};}};componyx.UI.editor_modules.TooltipMenu;
113
+
114
+
115
+ var o$1=Object.defineProperty;var r$1=(i,t)=>o$1(i,"name",{value:t,configurable:!0});componyx.UI.editor_modules=componyx.UI.editor_modules||{},componyx.UI.editor_modules.Utility=class{static{r$1(this,"Utility");}constructor(t){this.editor=t,this.webFonts=["Helvetica","Arial","Arial Black","Verdana","Tahoma","Trebuchet MS","Impact","Gill Sans","Times New Roman","Georgia","Palatino","Baskerville","Andal\uFFFD Mon","Courier","Lucida","Monaco","Bradley Hand","Brush Script MT","Luminari","Comic Sans MS"],this.zeroWidthChar="\uFEFF",this.tabChar="\u2003",this.attrPrefix="data-ui-editor-",this.iconPrefix="ico-editor-",this.markerAttr=this.attrPrefix+"marker",this.selAttr=this.attrPrefix+"selected",this.tableIdAttr=this.attrPrefix+"te-id",this.localStoragePrefix="componyx.UI.Editor.",this.zeroWidthRegEx=/[\uFEFF]/gm,this.prevWordRegEx=/([\s])*([^\s]*$|[\uFEFF]+$)/m,this.nextWordRegEx=/(^[^\s]*|^[\uFEFF]+)([\s]*)/m,this.voidNodeRegEx=/^(AREA|BASE|BR|COL|EMBED|HR|IMG|INPUT|LINK|META|SOURCE|TRACK|WBR)$/i,this.blockNodeRegEx=/^(FIGURE|UL|OL|DIV|P|H\d+)$/i,this.wrappedNodesRegEx=/^(TABLE|HR|OBJECT|EMBED|SVG|VIDEO)$/i,this.figureNodesRegEx=/^(IMG|VIDEO|TABLE|SVG|EMBED|OBJECT)$/i,this.layoutNodeNames=["strong","em","u","s","sub","sup","span"],this.listFilter="UL,OL",this.buttonCss="button theme basic",this.buttonLucentCss=this.buttonCss+" lucent",this.cssVariables={fontColor:"--font-color",fontBGColor:"--font-bg-color"};}newGuid(){return this.editor.id+"_"+$lib.guid()}getId(t){return this.editor.id+"_"+t}isPrintableChar(t){return " capslock shift backspace control tab enter insert delete home end pageup pagedown arrowleft arrowright arrowup arrowdown numlock ".indexOf(" "+t.key.toLowerCase()+" ")==-1&&!t.ctrlKey}toCSSColor(t){return $lib.isArray(t)?`rgba(${t.join(",")})`:t}saveScroll(t){let e=[t.scrollTop,t.scrollLeft];return t.scrollTop=t.scrollLeft=0,e}resetScroll(t,e){t.scrollTop=e[0],t.scrollLeft=e[1];}getContentEditable(t){let e=t;return e&&e.window===e?e=e.document.body:e&&e.nodeType!==Node.ELEMENT_NODE&&(e=e.parentElement),e?e.closest('.editor[contenteditable="true"]')||e.closest(`.${this.editor.getCssClass(this.editor.classOption.CONTENT)}[contenteditable="true"]`):null}async fetchData(t){return await(await fetch(t)).json()}};componyx.UI.editor_modules.Utility;
116
+
117
+
118
+ (async function(window){var gt=Object.defineProperty;var n=(S,O)=>gt(S,"name",{value:O,configurable:!0});(async function(S){componyx.UI.editor_modules=componyx.UI.editor_modules||{},componyx.UI.editor_modules.loaded=(async()=>{})(),await componyx.UI.editor_modules.loaded;const O=componyx.base_modules.Sanitizer,Ie=componyx.UI.editor_modules.ContentManager,Ce=componyx.UI.editor_modules.ComponentFactory,ye=componyx.UI.editor_modules.DialogManager,we=componyx.UI.editor_modules.EventManager,Te=componyx.UI.editor_modules.Format,Se=componyx.UI.editor_modules.History,Ee=componyx.UI.editor_modules.LayoutState,Me=componyx.UI.editor_modules.ListManager,Le=componyx.UI.editor_modules.MenuManager,Re=componyx.UI.editor_modules.NodeManager,ke=componyx.UI.editor_modules.ParagraphButtons,Ae=componyx.UI.editor_modules.Resizer,Fe=componyx.UI.editor_modules.SelectionRange,G=componyx.UI.editor_modules.SourceViewBuilder,De=componyx.UI.editor_modules.Table,Be=componyx.UI.editor_modules.Toolbar,ve=componyx.UI.editor_modules.TooltipMenu,xe=componyx.UI.editor_modules.Utility;componyx.UI.Editor=n(function(c,_e){let e=this,Oe=$base.static.ThemeOption,E=componyx.UI.Editor.ToolbarDisplayOption,z,f,$=[],N,g,P,W,I,l,d,h,j,K,R=new Map,F=new Map,D,s="ico-editor-";this.classOption=Object.freeze({TOOLBAR:"toolbar",TOOLBAR_BOX:"toolbar-box",TOOLBAR_MORE:"toolbar-more",GROUP:"group",CONTENT:"editor-content",FOOTER:"footer",PATH:"path",WORD_COUNT:"word-count",FULLSCREEN:"fullscreen",PREVIEW:"preview",SOURCE_VIEW:"source-view",BOOKMARK:"bookmark",FIGURE:"figure",MEDIA:"media",LINK_DIALOG:"link-dialog",BOOKMARK_DIALOG:"bookmark-dialog",IMAGE_DIALOG:"image-dialog",MEDIA_DIALOG:"media-dialog",SOURCE_DIALOG:"source-dialog",FOCUS:"focus",FRAMED:"framed",HIDDEN:"hidden",TOOLTIP_MENU_LINK:"tooltip-menu-link",DOC_TOOLTIPS:"doc-tooltips",IMG_INLINE_ALIGN_DEFAULT_TOP:"img-inline-align-default-top",IMG_INLINE_ALIGN_DEFAULT_CENTER:"img-inline-align-default-center",IMG_INLINE_ALIGN_DEFAULT_BOTTOM:"img-inline-align-default-bottom",IMG_INLINE_ALIGN_LEFT:"img-inline-align-left",IMG_INLINE_ALIGN_RIGHT:"img-inline-align-right",IMG_ALIGN_LEFT:"img-align-left",IMG_ALIGN_CENTER:"img-align-center",IMG_ALIGN_RIGHT:"img-align-right",COLORSWATCH_BOX:"box color-swatch",SWATCH:"swatch",SWATCH_COLOR:"swatch-color",CLEARCOLOR_BUTTON:"clear-color-button",COLORPICKER_BUTTON:"color-picker-button",SYMBOL_PICKER_BOX:"box symbol-picker",EMOJI_SYMBOL_PICKER:"emoji-picker",SPECIAL_SYMBOL_PICKER:"special-picker",SYMBOL_CATEGORIES:"symbol-categories",SYMBOL_VIEW:"symbol-view",SYMBOL_CATEGORY:"symbol-category",SYMBOL_ITEMS:"symbol-items",SYMBOL_HEADER:"symbol-header",SYMBOL_FOOTER:"symbol-footer",SYMBOL:"symbol",TABLE_PICKER:"te-picker",TABLE_PICKER_GRID:"te-picker-grid",TABLE_PICKER_LABEL:"te-picker-label",TABLE_WRAPPER:"te-wrapper",TABLE_ANCHOR:"te-anchor",TABLE_SELECTED:"te-selected",TABLE_COL_HANDLE:"te-col-handle",TABLE_COL_HANDLE_ACTIVE:"te-col-handle-active",TABLE_MENU_BUTTON:"te-menu-button",TABLE_DIALOG:"table-dialog",TABLE_DIALOG_CATEGORIES:"table-dialog-categories",TABLE_DIALOG_VIEW:"table-dialog-view",TABLE_DIALOG_PANEL:"table-dialog-panel",TABLE_DIALOG_CATEGORY:"table-dialog-category",ACTIVE:"active",REMOVE:"remove",LOCK:"lock",FILE_SELECT:"file-select",FIELD_HALF:"field-half",PARAGRAPH:"paragraph",PDF_EXPORT:"editor-pdf-export"}),this.editorHeight="",this.defaultFontSize="16px",this.defaultFontFamily="Arial",this.defaultAlign="",this.defaultLineHeight="",this.content="",this.toolbarDisplay=E.HEADER,this.iframe=!1,this.detectFonts=!0,this.includeWebSafeFonts=!0,this.addMissingFontSize=!0,this.defaultSpellcheck=!0,this.sourceViewInDialog=!1,this.allowImageFileSelect=!0,this.allowImageUrlInput=!0,this.indentValue="20px",this.maxHistoryLength=null,this.localStoragePrefix="editor",this.emojiSymbolResourcePath="src?d=Editor.Emoji.json",this.specialSymbolResourcePath="src?d=Editor.Special.json",this.emojiSymbolData=null,this.specialSymbolData=null,this.editableElements=[],this.fonts=[],this.excludeFonts=[],this.fontSizes=["8px","9px","10px","11px","12px","13px","14px","16px","18px","20px","24px","28px","32px","36px","40px","48px","60px","72px","96px"],this.styles=[],this.lineHeights=["0","0.5","1","1.1","1.2","1.3","1.4","1.5","2","2.5","3","4"],this.orderedList=["decimal","lower-alpha","lower-greek","lower-roman","upper-alpha","upper-roman"],this.unorderedList=["disc","circle","square"],this.colorSwatchColors=["LightCoral","Plum","LightBlue","PaleTurquoise","PaleGreen","LemonChiffon","IndianRed","Orchid","SkyBlue","Turquoise","LightGreen","PaleGoldenrod","Red","MediumOrchid","DeepSkyBlue","Cyan","GreenYellow","Gold","Crimson","DarkOrchid","SteelBlue","LightSeaGreen","LimeGreen","Orange","DarkRed","Indigo","MidnightBlue","DarkCyan","Green","DarkOrange","White","LightGray","DarkGray","Gray","DimGray","Black"],this.visibleCommands=[],this.extraCommands={},this.labels={comboBoxPlaceholderEditable:"- Select or Enter -",comboBoxPlaceholderReadOnly:"- Select - ",alignLeft:"Left",alignCenter:"Center",alignRight:"Right",alignJustify:"Justify",alignTop:"Top",alignMiddle:"Middle",alignBottom:"Bottom",borderStyleNone:"None",borderStyleSolid:"Solid",borderStyleDashed:"Dashed",borderStyleDotted:"Dotted",borderStyleDouble:"Double",dialogConfirm:"OK",dialogCancel:"Cancel",sourceViewDialogHeader:"Source View",sourceViewRootItem:"document",bookmarkDialogHeader:"Insert/Edit Bookmark",bookmarkInputPlaceholder:"Bookmark name",bookmarkPrefix:"Bookmark",symbolSearchInputPlaceholder:"Search",linkDialogHeader:"Insert/Edit Link",linkHref:"URL",linkText:"Text",linkTitle:"Title",linkTarget:"Target",linkTargetCurrent:"Current window",linkTargetNew:"New window",linkDownloadable:"Downloadable",removeLink:"Remove link",imageDialogHeader:"Insert/Edit Image",imageSource:"Image URL/File",imageAlt:"Alternative text",imageWidth:"Width",imageHeight:"Height",imageAlignment:"Alignment",imageAlignLeft:"Left",imageAlignCenter:"Center",imageAlignRight:"Right",imageInlineAlignDefaultTop:"Top",imageInlineAlignDefaultCenter:"Center",imageInlineAlignDefaultBottom:"Bottom",imageInlineAlignLeft:"Left",imageInlineAlignRight:"Right",imageInline:"Inline image",imageFileButtonTooltip:"Upload file from computer",imageConstrainButtonTooltip:"Lock/Unlock image proportions",mediaDialogHeader:"Insert/Edit Media",mediaSource:"Media URL",mediaEmbed:"Media Embed",mediaWidth:"Width",comboBoxNoResult:"",default:"- Default -",emojiSymbolCategories:["All"],specialSymbolCategories:["All"],tableDialogHeader:"Table Settings",tableDialogCategoryTable:"Table",tableDialogCategoryRow:"Row",tableDialogCategoryCell:"Cell",tableWidth:"Width",tableAlignment:"Alignment",tableCellSpacing:"Cell Spacing",tableCellPadding:"Cell Padding",headerRow:"Header Row",footerRow:"Footer Row",rowHeight:"Height",cellWidth:"Width",cellHeight:"Height",cellPadding:"Padding",caption:"Caption",bgColor:"Background Color",borderWidth:"Border Width",borderStyle:"Border Style",borderColor:"Border Color",verticalAlign:"Vertical Align",horizontalAlign:"Horizontal Align",tableMenuCut:"Cut",tableMenuCopy:"Copy",tableMenuPaste:"Paste",tableMenuPastePlainText:"Paste as plain text",tableMenuRow:"Row",tableMenuAddRowAbove:"Add Row above",tableMenuAddRowBelow:"Add Row below",tableMenuRemoveRow:"Remove Row",tableMenuColumn:"Column",tableMenuAddColumnLeft:"Add Column left",tableMenuAddColumnRight:"Add Column right",tableMenuRemoveColumn:"Remove Column",tableMenuMerge:"Merge",tableMenuMergeSelection:"Merge Selection",tableMenuMergeRight:"Merge Right",tableMenuMergeDown:"Merge Down",tableMenuSplit:"Split Cells",tableMenuSettings:"Settings",tableMenuDelete:"Delete Table",undoCommandTooltip:"",redoCommandTooltip:"",boldCommandTooltip:"",italicCommandTooltip:"",underlineCommandTooltip:"",strikeThroughCommandTooltip:"",fontColorCommandTooltip:"",fontBGColorCommandTooltip:"",blockCommandTooltip:"",fontFamilyCommandTooltip:"",fontSizeCommandTooltip:"",styleCommandTooltip:"",alignCommandTooltip:"",lineHeightCommandTooltip:"",indentMinCommandTooltip:"",indentPlusCommandTooltip:"",orderedListCommandTooltip:"",unorderedListCommandTooltip:"",checkListCommandTooltip:"",linkCommandTooltip:"",imageCommandTooltip:"",mediaCommandTooltip:"",tableCommandTooltip:"",subscriptCommandTooltip:"",superscriptCommandTooltip:"",copyFormatCommandTooltip:"",clearFormatCommandTooltip:"",bookmarkCommandTooltip:"",horizontalLineCommandTooltip:"",pageBreakCommandTooltip:"",sourceCommandTooltip:"",expandCommandTooltip:"",previewCommandTooltip:"",saveCommandTooltip:"",exportCommandTooltip:"",printCommandTooltip:"",moreCommandTooltip:"",blockViewCommandTooltip:"",specialCommandTooltip:"",emojiCommandTooltip:""},this.includeStylesheets=[],this.PDFExportSettings={filename:"export.pdf",margin:[10,10,10,10],autoPaging:"text",html2canvas:{useCORS:!0,allowTaint:!1,logging:!1},x:0,y:0,width:180,windowWidth:680},this.mediaURLReplacement=[{match:/(youtube\.com\/)watch\?v=/gi,replace:"$1embed/"},{match:/youtu\.be\/([a-zA-Z0-9_-]+)/gi,replace:"youtube.com/embed/$1"}],this.selectableNodes=["a","figure",'[contenteditable="false"]'],this.menuId=null,this.tableMenuId=null,this.toolbarBoxId=null,this.toolbarMoreBoxId=null,this.colorSwatchBoxId=null,this.clearColorButtonId=null,this.colorPickerId=null,this.sourceDialogId=null,this.bookmarkDialogId=null,this.linkDialogId=null,this.imageDialogId=null,this.mediaDialogId=null,this.linkDialog={hrefFormFieldId:null,textFormFieldId:null,titleFormFieldId:null,targetFormFieldId:null,downloadableFormFieldId:null,hrefComboBoxId:null,targetComboBoxId:null,removeButtonId:null},this.imageDialog={sourceFormFieldId:null,altFormFieldId:null,widthFormFieldId:null,heightFormFieldId:null,captionFormFieldId:null,alignmentFormFieldId:null,fileButtonId:null,constrainButtonId:null},this.mediaDialog={sourceFormFieldId:null,embedFormFieldId:null,widthFormFieldId:null,captionFormFieldId:null},this.tableDialog={tableWidthFormFieldId:null,tableAlignFormFieldId:null,tableBorderWidthFormFieldId:null,tableBorderStyleFormFieldId:null,tableCellSpacingFormFieldId:null,tableCellPaddingFormFieldId:null,tableCaptionFormFieldId:null,tableBgColorFormFieldId:null,tableBorderColorFormFieldId:null,rowIsHeaderFormFieldId:null,rowIsFooterFormFieldId:null,rowHeightFormFieldId:null,rowBgColorFormFieldId:null,rowBorderStyleFormFieldId:null,rowBorderColorFormFieldId:null,cellWidthFormFieldId:null,cellHeightFormFieldId:null,cellVerticalAlignFormFieldId:null,cellHorizontalAlignFormFieldId:null,cellBorderWidthFormFieldId:null,cellBorderStyleFormFieldId:null,cellPaddingFormFieldId:null,cellBgColorFormFieldId:null,cellBorderColorFormFieldId:null,horizontalAlignComboBoxId:null,verticalAlignComboBoxId:null,borderStyleComboBoxId:null,borderColorButtonId:null,bgColorButtonId:null},this.validatorId=null,this.emojiSymbolPickerBoxId=null,this.specialSymbolPickerBoxId=null,this.buttonTooltipManagerId=null,this.documentTooltipManagerId=null,this.tablePickerBoxId=null,this.sanitizer=null,this.selectionRange=null,this.nodeManager=null,this.contentManager=null,this.format=null,this.history=null,this.layoutState=null,this.utility=null,this.componentFactory=null,this.dialogManager=null,this.eventManager=null,this.listManager=null,this.menuManager=null,this.paragraphButtons=null,this.resizer=null,this.sourceViewBuilder=null,this.table=null,this.toolbar=null,this.tooltipMenu=null,this.allowToolbarBoxHide=!0,this.cancelSelectionChange=!1,Object.defineProperty(this,"_iframe",{get:n(()=>h,"get")}),this.selectNode=ee,this.getSelectedNodes=()=>l.querySelectorAll(`*[${e.utility.selAttr}="1"]`),this.clearSelection=()=>{let t=e.getSelectedNodes();$lib.each(t,o=>{o.setAttribute(e.utility.selAttr,"");}),e.paragraphButtons.hide();},this.hasContent=()=>e.contentManager.hasContent(),this.getToolbarDisplay=t=>J(t),this.setToolbarBoxDisplay=t=>{X(t);},this.activateDocument=()=>{C();},this.deactivateDocument=()=>{M();},this.getActiveEditor=function(t){return Z(t)},this.setActiveEditor=function(t){return U(t)},this.bindNodeEvents=t=>{Ge(t);},this.getDoc=()=>I,this.getStoredRange=()=>f,this.storeRange=t=>{f=t;},this.getWordCountElement=()=>W,this.getPathElement=()=>P,this.getComponent=t=>$UI.store[m(t)],this.getSourceViewStore=()=>F,this.isBlockViewSelected=()=>ot(),this.disableBlockView=()=>{dt();},this.hideOverlays=()=>{e.resizer.clear(!0),e.paragraphButtons.destroy(e.getEditorElement()),e.hideTooltips();},this.hideTooltips=()=>{e.tooltipMenu.tooltipManager.hideAllTooltips(!0),e.componentFactory.tooltipManager.hideAllTooltips(!0);},this.createSourceViewBuilder=(t,o)=>{Y(t,o);},this.setSourceViewBuilderHTML=t=>{q(t);},this.getSortedCommands=()=>$,this.getCssClass=t=>{const o=e.classOption,r=Object.keys(o).find(a=>o[a]===t).split("_").map(a=>a.charAt(0).toUpperCase()+a.slice(1).toLowerCase()).join("");return e[`cssClass${r}`]||t},this.getSanitizer=function(){return D||(D=new O,e.events.onCreateSanitizer.fire(e,{sanitizer:D})),D};function Ne(t){Object.assign(this,t),this.onStylesheetsLoaded=$base.static.createEvent("onStylesheetsLoaded"),this.onImageDrop=$base.static.createEvent("onImageDrop"),this.onImageSelect=$base.static.createEvent("onImageSelect"),this.onImageLoad=$base.static.createEvent("onImageLoad"),this.onPaste=$base.static.createEvent("onPaste"),this.onUndo=$base.static.createEvent("onUndo"),this.onRedo=$base.static.createEvent("onRedo"),this.onSelectionChange=$base.static.createEvent("onSelectionChange"),this.onSave=$base.static.createEvent("onSave"),this.onLinkDialogShow=$base.static.createEvent("onLinkDialogShow"),this.onImageDialogShow=$base.static.createEvent("onImageDialogShow"),this.onMediaDialogShow=$base.static.createEvent("onMediaDialogShow"),this.onCreateSanitizer=$base.static.createEvent("onCreateSanitizer");}n(Ne,"EditorEvents"),this.events=new Ne(this.events),$base.Component.apply(this,[c,_e]),this.addEditableElement=function(t){const o=t.element||$lib("#"+t.id);if(this.editableElements.some(a=>(a.element||$lib("#"+a.id))===o))return;const r={doc:I,el:l};this.editableElements.push(t),B(o),r.el?.isConnected&&(I=r.doc,l=r.el);},this.undo=function(){e.history.undo(l);},this.redo=function(){e.history.redo(l);},this.bold=()=>{p({tag:"strong"});},this.italic=()=>{p({tag:"em"});},this.underline=()=>{p({tag:"u"});},this.strikeThrough=()=>{p({tag:"s"});},this.sub=()=>{p({tag:"sub"});},this.sup=()=>{p({tag:"sup"});},this.indent=t=>{H(t);},this.clearFormat=()=>{he();},this.copyFormat=()=>ge(),this.pasteFormat=t=>{e.format.pasteFormat(t);},this.setBlock=t=>{rt(t);},this.toggleLayoutNode=t=>{p(t);},this.insert=t=>{v(t);},this.toggleSourceView=(t=null)=>{_($UI.store[m("source")],t),se();},this.toggleBlockView=(t=null)=>{_($UI.store[m("blockView")],t),x();},this.toggleExpandedView=(t=null)=>{_($UI.store[m("expand")],t),re();},this.togglePreview=(t=null)=>{_($UI.store[m("preview")],t),de();},this.save=()=>{ue();},this.exportToPDF=()=>{me();},this.print=()=>{ce();},this.hasEditables=()=>y(),this.bookmark=()=>{te();},this.insertLink=()=>{ne();},this.removeLink=()=>{lt();},this.insertImage=()=>{ie();},this.removeImage=()=>{at();},this.insertMedia=()=>{le();},this.removeMedia=()=>{st();},this.align=t=>{e.format.setBlockStyle("text-align",t);},this.lineHeight=t=>{e.format.setBlockStyle("line-height",t);},this.setFontFamily=t=>{p({tag:"span",styles:{"font-family":t}});},this.setFontSize=t=>{p({tag:"span",styles:{"font-size":t}});},this.setFontColor=t=>{let o=e.getComponent(t.id);p({tag:"span",styles:{color:o.__color}});},this.setFontBGColor=t=>{let o=e.getComponent(t.id);p({tag:"span",styles:{"background-color":o.__color}});},this.setStyle=t=>{v(t.elementSettings);},this.commands={undo:{command:e.undo,shortcutKey:"z",cssClassIcon:s+"undo",show:!0,buttonId:null,group:0,position:0},redo:{command:e.redo,shortcutKey:"y",cssClassIcon:s+"redo",show:!0,buttonId:null,group:0,position:0},bold:{id:"strong",command:e.bold,shortcutKey:"b",cssClassIcon:s+"bold",show:!0,isActive:L.bind(e,"strong"),type:1,buttonId:null,group:1,position:0,elementSettings:{tag:"strong"}},italic:{id:"em",command:e.italic,shortcutKey:"i",cssClassIcon:s+"italic",show:!0,isActive:L.bind(e,"em"),type:1,buttonId:null,group:1,position:0,elementSettings:{tag:"em"}},underline:{id:"u",command:e.underline,shortcutKey:"u",cssClassIcon:s+"underline",show:!0,isActive:L.bind(e,"u"),type:1,buttonId:null,group:1,position:0,elementSettings:{tag:"u"}},strikeThrough:{id:"s",command:e.strikeThrough,cssClassIcon:s+"strikethrough",show:!0,isActive:L.bind(e,"s"),type:1,buttonId:null,group:1,position:0,elementSettings:{tag:"s"}},fontColor:{command:e.setFontColor,cssClassIcon:s+"font-color",show:!0,buttonId:null,type:1,boxId:"ColorSwatch",cssVariable:"--font-color",group:1,position:0},fontBGColor:{command:e.setFontBGColor,cssClassIcon:s+"font-bgcolor",show:!0,buttonId:null,type:1,boxId:"ColorSwatch",cssVariable:"--font-bg-color",group:1,position:0},block:{command:null,show:!0,buttonId:null,menuId:null,menuItemId:"Block",cssClass:"block",contentAlign:0,group:2,position:0},fontFamily:{command:null,show:!0,buttonId:null,menuId:null,menuItemId:"FontFamily",cssClass:"font-family",contentAlign:0,group:2,position:0},fontSize:{command:null,show:!0,buttonId:null,menuId:null,menuItemId:"FontSize",cssClass:"font-size",contentAlign:0,group:2,position:0},style:{command:null,show:!1,buttonId:null,menuId:null,menuItemId:"Style",cssClass:"style",contentAlign:0,group:2,position:0},align:{command:null,cssClassIcon:s+"align-left",show:!0,buttonId:null,menuItemId:"Align",group:3,position:0},lineHeight:{command:null,cssClassIcon:s+"line-height",show:!0,buttonId:null,menuItemId:"LineHeight",group:3,position:0},indentMin:{command:H.bind(e,"-"+e.indentValue),cssClassIcon:s+"indent-min",show:!0,buttonId:null,group:3,position:0},indentPlus:{command:H.bind(e,e.indentValue),cssClassIcon:s+"indent-plus",show:!0,buttonId:null,group:3,position:0},orderedList:{command:oe.bind(e,"OL",null),cssClassIcon:s+"ol",show:!0,buttonId:null,menuId:null,menuItemId:"OrderedList",group:4,position:0},unorderedList:{command:oe.bind(e,"UL",null),cssClassIcon:s+"ul",show:!0,buttonId:null,menuId:null,menuItemId:"UnorderedList",group:4,position:0},link:{command:ne,shortcutKey:"k",cssClassIcon:s+"link",show:!0,isActive:Ze,selectable:!0,buttonId:null,group:5,position:0},image:{command:ie,cssClassIcon:s+"image",show:!0,isActive:Xe,getNode:Qe.bind(e),selectable:!0,buttonId:null,group:5,position:0},media:{command:le,cssClassIcon:s+"media",show:!0,isActive:Je,selectable:!0,buttonId:null,group:5,position:0},table:{command:null,cssClassIcon:s+"table",show:!0,selectable:!0,buttonId:null,boxId:"TablePicker",group:5,position:0},subscript:{id:"sub",command:e.sub,cssClassIcon:s+"sub",show:!0,isActive:L.bind(e,"sub"),type:1,buttonId:null,group:6,position:0,elementSettings:{tag:"sub"}},superscript:{id:"sup",command:e.sup,cssClassIcon:s+"super",show:!0,isActive:L.bind(e,"sup"),type:1,buttonId:null,group:6,position:0,elementSettings:{tag:"sup"}},copyFormat:{command:ge,cssClassIcon:s+"brush",show:!0,buttonId:null,group:6,position:0},clearFormat:{command:he,cssClassIcon:s+"formatting-clear",show:!0,buttonId:null,group:6,position:0},bookmark:{command:te,cssClassIcon:s+"bookmark",show:!0,isActive:Q,buttonId:null,group:7,position:0},horizontalLine:{command:et,cssClassIcon:s+"line",show:!0,buttonId:null,group:7,position:0},pageBreak:{command:tt,cssClassIcon:s+"pagebreak",show:!0,buttonId:null,group:7,position:0},source:{command:se,cssClassIcon:s+"source",show:!0,type:1,buttonId:null,group:8,position:0},expand:{command:re,cssClassIcon:s+"expand",show:!0,buttonId:null,type:1,group:8,position:0},preview:{command:de,cssClassIcon:s+"preview",show:!0,buttonId:null,type:1,group:8,position:0},save:{command:ue,cssClassIcon:s+"save",show:!0,buttonId:null,group:8,position:0},export:{command:me,cssClassIcon:s+"pdf",show:!0,buttonId:null,group:8,position:0},print:{command:ce,cssClassIcon:s+"print",show:!0,buttonId:null,group:8,position:0},more:{command:null,cssClass:"more",cssClassIcon:s+"more",show:!0,buttonId:null,type:1,boxId:"ToolbarMore",expandDirection:"right",group:9,position:0},blockView:{command:x,cssClassIcon:s+"block",show:!0,type:1,buttonId:null,group:10,position:0},special:{command:nt,cssClassIcon:s+"omega",show:!0,buttonId:null,group:10,position:0},emoji:{command:it,cssClassIcon:s+"emoji",show:!0,buttonId:null,group:10,position:0}},this.setLinkDialogContentTemplate=function(t){e.addTemplate("LinkDialogContent",t,!1);},this.setImageDialogContentTemplate=function(t){e.addTemplate("ImageDialogContent",t,!1);},this.setMediaDialogContentTemplate=function(t){e.addTemplate("MediaDialogContent",t,!1);},this.setTableDialogTableTemplate=function(t){e.addTemplate("TableDialogTable",t,!1);},this.setTableDialogRowTemplate=function(t){e.addTemplate("TableDialogRow",t,!1);},this.setTableDialogCellTemplate=function(t){e.addTemplate("TableDialogCell",t,!1);},this.setWordCountTemplate=function(t){e.addTemplate("WordCount",t,!1);},this.setTooltipMenuTemplate=function(t){e.addTemplate("TooltipMenu",t,!1);},this.addCommand=function(t,o){e.commands[t]=o;},this.initCommands=function(t,o=!0){const i={"*core":["undo","redo","bold","italic","underline","strikeThrough","align","indentMin","indentPlus","copyFormat","clearFormat"],"*list":["orderedList","unorderedList"],"*font":["fontSize","fontFamily"],"*font-color":["fontColor","fontBGColor"]},r=new Set(t.flatMap(a=>i[a]||a));for(const a in e.commands)e.commands[a].show=r.has(a)?o:!o;},this.getEditorElement=function(){return l},this.focus=function(t=!0){if(l.focus(),t){let o=e.selectionRange.getSelection();o.selectAllChildren(l.lastElementChild||l),o.collapseToEnd();}},this.cleanSource=(t=!0)=>{e.contentManager.cleanSource(null,t);},this.getValue=t=>this.getContent(t),this.getContent=function(t){return e.contentManager.getContent(t)},this.setValue=(t,o)=>this.setContent(t,o),this.setContent=function(t,o,i=!0){o=o||l,o.innerHTML=e.sanitizer?e.sanitizer(t):e.getSanitizer().sanitize(t),e.contentManager.ensureDocStructure(o);},this.getRange=function(){C();let t=e.selectionRange.getRange();return M(),t},this.setToolbarButtonState=function(t,o=[]){k(t,o);},this.render=function(){if(e.renderState!=$base.static.RenderState.RENDERING){$base.methods.render.call(e,Pe,"editor",Oe.DEFAULT);return}e.hasTemplate("WordCount")||e.addTemplate("WordCount","{words} words, {chars} characters",!1),$lib.each(e.extraCommands,(t,o)=>{e.addCommand(o,t);}),$lib.isEmpty(e.visibleCommands)||e.initCommands(e.visibleCommands),He(),Ve();},this.postRender=function(){e.renderState==$base.static.RenderState.RENDERING&&(e.iframe||(y()?($lib.each(e.editableElements,t=>{B(t.element||$lib("#"+t.id));}),e.element.classList.add(e.getCssClass(e.classOption.HIDDEN))):(B(d,!1),setTimeout(function(){I.defaultView.focus(),l.focus();}))),$base.methods.postRender.call(this),e.layoutState.updateLayoutSettings());},this.destroy=function(...t){ut(),$base.methods.destroy.call(this,...t);};function Pe(){var t=["Button","FormField","ComboBox","Dialog","Menu","ColorButton","ColorPicker","NumericBox","Validator","TooltipManager"];return ["Editor",t]}n(Pe,"preRender");function Ue(){C(),e.content&&e.setContent(content),M(),e.renderState==2&&e.layoutState.updateLayoutSettings();}n(Ue,"init");function He(){e.utility=new xe(e),e.componentFactory=new Ce(e),e.contentManager=new Ie(e),e.dialogManager=new ye(e),e.eventManager=new we(e),e.format=new Te(e),e.history=new Se(e),e.layoutState=new Ee(e),e.listManager=new Me(e),e.menuManager=new Le(e),e.nodeManager=new Re(e),e.paragraphButtons=new ke(e),e.resizer=new Ae(e),e.selectionRange=new Fe(e),e.sourceViewBuilder=new G(e),e.table=new De(e),e.toolbar=new Be(e),e.tooltipMenu=new ve(e);}n(He,"instantiateModules");async function Ve(){N=e.toolbar.createToolbar(),e.layoutState.init(),(y()||e.toolbarDisplay==E.FOOTER)&&e.toolbar.createToolbarBox(),y()?e.sourceViewInDialog=!0:(Ke(),ze(),e.toolbarDisplay==E.FOOTER&&e.element.appendChild(N)),e.sourceViewInDialog&&e.dialogManager.createSourceDialog(),await e.menuManager.createMenu(),e.componentFactory.createColorSwatch(),e.componentFactory.createColorPicker(),await e.toolbar.createEmojiSymbolPicker(),await e.toolbar.createSpecialSymbolPicker(),e.table.createPicker(),e.renderChildren();}n(Ve,"draw");function y(){return !$lib.isEmpty(e.editableElements)}n(y,"hasEditables");function Y(t,o){let i=new G(o,`${e.utility.buttonCss} ${e.getThemeCSS()} edit`,"span",e.labels.sourceViewRootItem,e.utility.voidNodeRegEx);i.build(t.cloneNode(!0)),F.set(t,i);}n(Y,"createSourceViewBuilder");function q(t){t.innerHTML=F.get(t).outerHTML();}n(q,"setSourceViewBuilderHTML");function Ge(t){const o=e.selectionRange;(Q(t)||t.nodeName=="FIGURE"&&!t.querySelector("table"))&&(t.contentEditable=!1),t.setAttribute(e.utility.selAttr,""),$lib.on(t,"click",ee.bind(t,!1,!0)),t.nodeName!="A"&&($lib.on(t,"pointerenter",function(i){U(i.target)&&(C(),f=o.getRange(),f.collapsed&&!e.getSelectedNodes().length&&e.paragraphButtons.show(l,this));}),$lib.on(t,"pointerleave",function(i){U(i.target)&&(C(),f=o.getRange(),e.getSelectedNodes().length||e.paragraphButtons.hide());}));}n(Ge,"bindNodeEvents");function ze(){g=$lib.element(e.element,"","","",null,{className:e.getCssClass(e.classOption.FOOTER)}),P=$lib.element(g,"","","",null,{className:e.getCssClass(e.classOption.PATH)}),W=$lib.element(g,"","","",null,{className:e.getCssClass(e.classOption.WORD_COUNT)}),$lib.element(g,"","","",null,{className:"c-logo"}),j=$lib.element(g,"","","",null,{className:"resize-handle"}),P.innerHTML="&nbsp;";let t={defaultHandles:!1,resizeHandles:{s:j}};e.iframe&&(t.onResizeStart=We,t.onResizeEnd=je),$lib.resizable(d,t);}n(ze,"createFooter");function We(){K=$lib.element(document.body,"","","",{style:"position: fixed; z-index: 9999; inset: 0px 0px 0px 0px; opacity: 0;"});}n(We,"createResizeMask");function je(){$lib.remove(K);}n(je,"removeResizeMask");function Ke(){d=$lib.element(e.element),d.className=e.getCssClass(e.classOption.CONTENT),d.style.boxSizing="border-box",$lib.isEmpty(e.name)||d.setAttribute("name",e.name),e.editorHeight&&(d.style.height=$lib.unit(e.editorHeight)),e.iframe&&(h=document.createElement("iframe"),h.setAttribute("allowtransparency","true"),h.setAttribute("frameborder","0"),h.style.width=h.style.height="100%",h.style.display="block",d.appendChild(h),e.element.classList.add(e.getCssClass(e.classOption.FRAMED)),h.onload=function(){B(h.contentWindow.document.body),$lib.addClass(l,"iframe"),qe();});}n(Ke,"createEditor");function B(t,o=!0){if(I=t.ownerDocument,l=t,e.history.init(l),e.eventManager.bindEvents(),o&&Ye(t),Ue(),l.tabIndex==-1&&!$lib.isEmpty(e.tabIndex)&&l.setAttribute("tabindex",e.tabIndex),!e.sourceViewInDialog){let i=$lib.element(e.element);i.className=e.getCssClass(e.classOption.SOURCE_VIEW),i.style.display="none",R.set(l,i);}}n(B,"setupEditor");function Ye(t){const o=e.element.className.replace(/\bhidden\b/g,"").trim().replace(/\s+/g," ");$lib.addClass(t,o),$lib.removeClass(t,e.getCssClass(e.classOption.FOCUS)+" "+e.getCssClass(e.classOption.FRAMED));}n(Ye,"copyCssClass");function qe(){let t=e.includeStylesheets,o=$lib.isEmpty(t)?0:t.length,i=0,r=n(()=>{++i>=o&&e.events.onStylesheetsLoaded.fire(e);},"onComplete");$lib.isEmpty(e.includeStylesheets)?r():(C(),$lib.each(e.includeStylesheets,a=>{$lib.addCssSource(a,"",{onComplete:r});}),M());}n(qe,"addStylesheets");function X(t=!0){e.toolbar.setToolbarBoxDisplay(t);}n(X,"setToolbarBoxDisplay");function J(t){let o=e.editableElements,i=e.editableElements.findIndex(r=>!$lib.isEmpty(r.toolbarDisplay)&&(r.element===t||r.id===t.id));return i>-1?o[i].toolbarDisplay:e.toolbarDisplay}n(J,"getToolbarDisplay");function C(){let t=e.selectionRange.getSelection();e.iframe&&($lib.document=I,$lib.defer(M)),I.defaultView.focus(),(!t.rangeCount||!$lib.contains(l,e.selectionRange.getRange().startContainer))&&(t.removeAllRanges(),l.focus());}n(C,"activateDocument");function M(){$lib.document=S.document;}n(M,"deactivateDocument");function U(t){let o=Z(t);return y()?o?(d=l=o,I=l.ownerDocument,!0):!1:o===l}n(U,"setActiveEditor");function Z(t){let o=e.utility.getContentEditable(t);return y()?e.editableElements.findIndex(i=>(i.element||$lib("#"+i.id))==o)>-1?o:null:o}n(Z,"getActiveEditor");function Q(t){return e.nodeManager.isBookmark(t)}n(Q,"isBookmark");function Xe(t){return e.nodeManager.isImage(t)}n(Xe,"isImage");function Je(t){return e.nodeManager.isMedia(t)}n(Je,"isMedia");function Ze(t){return e.nodeManager.isLink(t)}n(Ze,"isLink");function L(t,o){return e.nodeManager.isTagMatch(t,o)}n(L,"isTagMatch");function Qe(t){return e.nodeManager.getInnerNodeByName(t,"IMG")}n(Qe,"getImageFromNode");function ee(t=!1,o=!1,i){if(l.contentEditable!="true"||this.parentNode.hasAttribute(e.utility.selAttr))return;const r=e.selectionRange;C(),e.cancelSelectionChange=!0,e.contentManager.hasContent()||e.contentManager.insertParagraph();let a=this,u=r.getRange();t=t||a.contentEditable=="false"&&a.firstElementChild?.nodeName!=="TABLE"&&!a.querySelector('[contenteditable="true"]'),o&&e.clearSelection(),o&&t&&u.collapse(!0),u.collapsed&&t&&(u=e.selectionRange.selectNodeContents(a)),a.hasAttribute(e.utility.selAttr)&&a.setAttribute(e.utility.selAttr,"1"),e.layoutState.getState();let w=e.getSelectedNodes(),b=e.layoutState.activeLayout;w.length==1&&b.image?e.resizer.set(b.image):e.resizer.clear(!0),a.nodeName!="A"&&(w.length==1?e.paragraphButtons.show(l,a):e.paragraphButtons.hide()),w.length==1&&e.tooltipMenu.show(a),e.cancelSelectionChange=!1,f=u,i&&i.stopPropagation();}n(ee,"selectNode");function te(){e.dialogManager.bookmarkDialog||e.dialogManager.createBookmarkDialog(),e.dialogManager.bookmarkDialog.show();}n(te,"bookmark");function et(){let t=$lib.element("","","hr");v({tag:"div",isPhrasingContent:!1,selectable:!0,allowContent:!1,innerHTML:t.outerHTML});}n(et,"insertHR");function tt(){let t=$lib.element({tag:"hr",attrs:{style:"page-break-before: always;",[`${e.utility.attrPrefix}pagebreak`]:""}});v({tag:"div",isPhrasingContent:!1,selectable:!0,allowContent:!1,innerHTML:t.outerHTML});}n(tt,"insertPageBreak");function v(t){return e.contentManager.insertHTML(t)}n(v,"insertHTML");function x(){if(!$UI.store[m("blockView")])return;let t=$UI.store[m("blockView")],o=t.selected;e.contentManager.setBlockAttrAll(o),o?e.layoutState.addActiveMode("blockView",e.toggleBlockView):e.layoutState.removeActiveMode("blockView");}n(x,"blockView");function ot(){let t=$UI.store[m("blockView")];return t?t.selected:!1}n(ot,"isBlockViewSelected");function nt(t){e.toolbar.showSpecialSymbolPicker(t);}n(nt,"specialSymbols");function it(t){e.toolbar.showEmojiSymbolPicker(t);}n(it,"emojiSymbols");function H(t){C();let o=e.listManager,i=e.selectionRange,r=e.nodeManager,a=parseFloat(t),u=a>0,w=t.replace(a,""),b=i.getRange(),pe=i.getNodesInRange(b),be=i.getListItemNodesInRange(pe),ct=i.getRootNodesInRange(b,pe,!1),mt=i.createRangeMarker(i.ensureTextRange(b));$lib.each(ct,T=>{if(r.isList(T))u||o.decreaseListIndent(T,be);else {let fe=T.style.marginLeft?parseFloat(T.style.marginLeft)+a:a;fe<0?T.style.removeProperty("margin-left"):T.style.marginLeft=fe+w;}}),be.forEach(T=>{u&&o.increaseListIndent(T);}),e.history.addItem(b,mt);}n(H,"indent");function oe(t,o){e.listManager.toggleListItem(t,o);}n(oe,"toggleListItem");function ne(){e.dialogManager.linkDialog||e.dialogManager.createLinkDialog(),e.dialogManager.linkDialog.show();}n(ne,"insertLink");function lt(){if(e.layoutState.activeLayout.link){let t=e.selectionRange,o=t.ensureTextRange(t.getRange()),i=t.createRangeMarker(o);$lib.unsurround(e.layoutState.activeLayout.link),e.history.addItem(o,i),e.dialogManager.linkDialog.showing&&e.dialogManager.linkDialog.hide();}}n(lt,"removeLink");function ie(t){e.dialogManager.imageDialog||e.dialogManager.createImageDialog(),e.dialogManager.imageDialog.show();}n(ie,"insertImage");function at(){const t=e.layoutState.activeLayout.image;if(!t)return;e.resizer.clear(!0),e.hideTooltips();const o=t.closest("figure")||t;ae(o);}n(at,"removeImage");function le(t){e.dialogManager.mediaDialog||e.dialogManager.createMediaDialog(),e.dialogManager.mediaDialog.show();}n(le,"insertMedia");function st(){const t=e.layoutState.activeLayout.media;t&&(e.hideTooltips(),ae(t));}n(st,"removeMedia");function ae(t){if(!t)return;const o=e.getEditorElement(),i=e.nodeManager,r=e.selectionRange,a=i.sibling(t,o,!1)||i.sibling(t,o,!0),u=r.getRange();t.remove(),a?(u.selectNodeContents(a),u.collapse(!0)):e.contentManager.hasContent()||e.contentManager.insertParagraph(),e.history.addItem();}n(ae,"removeNodeAndRestoreCaret");function se(){if(e.dialogManager.sourceDialog){e.dialogManager.sourceDialog.show();return}let t=R.get(l);$UI.store[m("source")].selected?(e.layoutState.addActiveMode("source",e.toggleSourceView),k(!1,["source","expand"]),t.style.display="",t.style.height=d.style.height,d.style.display="none",g&&(g.style.display="none"),e.eventManager.disposeEvents(),e.hideOverlays(),e.disableBlockView(),e.cleanSource(),Y(l,t),t.focus()):(k(!0),d.style.display="",g&&(g.style.display=""),t.style.display="none",e.eventManager.bindEvents(),q(l),e.contentManager.ensureDocStructure(l),e.layoutState.removeActiveMode("source"),l.focus());}n(se,"sourceView");function k(t,o=[]){$lib.each($,function(i){if(!i.show||o.indexOf(i.id)>-1)return;let r=$UI.store[m(i.id)];t&&r.disabled?r.enable():!t&&!r.disabled&&r.disable();});}n(k,"setToolbarButtonState");function re(){let t=J(l)!=1?E.HEADER:E.FOOTER,o=e.getCssClass(e.classOption.FULLSCREEN),i=o+"-"+E.getName(t),r=y()?l:e.element;if($UI.store[m("expand")].selected)e.layoutState.addActiveMode("expand",e.toggleExpandedView),$lib.addClass(e.element,o),$lib.addClass(r,i),$lib.on(S,"resize",V),V();else {if($lib.removeClass(e.element,o),$lib.removeClass(r,i),d.style.height="",e.editorHeight&&(d.style.height=$lib.unit(e.editorHeight)),!e.sourceViewInDialog){let u=R.get(l);u.style.height=d.style.height;}$lib.off(S,"resize",V),e.layoutState.removeActiveMode("expand");}X(e.toolbar.toolbarBoxShowing);}n(re,"expandedView");function de(){let t=e.getCssClass(e.classOption.PREVIEW);$UI.store[m("preview")].selected?(e.layoutState.addActiveMode("preview",e.togglePreview),$lib.addClass(l,t),k(!1,["preview","expand"]),f=e.selectionRange.getRange(),e.selectionRange.getSelection().removeAllRanges(),e.hideOverlays(),e.disableBlockView(),e.cleanSource(),e.eventManager.disposeEvents(),l.contentEditable=!1):($lib.removeClass(l,t),k(!0),l.contentEditable=!0,e.contentManager.ensureDocStructure(l),e.eventManager.bindEvents(),e.layoutState.removeActiveMode("preview"),l.focus(),f&&e.selectionRange.restoreRange(f));}n(de,"preview");function ue(){e.events.onSave.fire(e,{html:e.getContent(l)});}n(ue,"save");function ce(){const t=e.iframe?h.contentWindow:S,o=l,i=o.innerHTML;o.innerHTML=e.getContent(),t.print(),o.innerHTML=i,e.contentManager.createSelectables(o);}n(ce,"print");function me(){let t=new S.jspdf.jsPDF,o=$lib.element({props:{className:e.getCssClass(e.classOption.PDF_EXPORT)},content:[e.getContent(l)]}),i=$lib.clone({target:{},source:e.PDFExportSettings,deep:!0,overwrite:1});return o.style.width=(i.windowWidth||1024)+"px",t.html(o,i).then(()=>t.save(i.filename||"document.pdf")).catch(r=>console.error("PDF export failed:",r))}n(me,"exportToPDF");function rt(t,o){C(),l.focus();let i=e.selectionRange,r=e.nodeManager,a=i.ensureTextRange(i.getRange()),u=i.getRootNodesInRange(a),w=i.createRangeMarker(a);$lib.each(u,b=>{b.nodeName.toLowerCase()!=t&&r.setBlockElement(b,o?r.getRootNode(o).cloneNode(!0):e.format.createLayoutNode(t));}),x(),a=e.selectionRange.restoreRangeToMarker(w,I.createRange()),e.history.addItem(a,w);}n(rt,"setBlock");function ge(){return e.format.copyFormat()}n(ge,"copyFormat");function he(){e.format.clearFormat();}n(he,"clearFormat");function p(t){e.format.toggleLayoutNode(t);}n(p,"toggleLayoutNode");function V(){clearTimeout(z),z=setTimeout(function(){M();let t=g?g.offsetHeight:0,o=$lib.getWindowSize().height-(N.offsetHeight+t);if(d.style.height=$lib.unit(o),!e.sourceViewInDialog){let i=R.get(l);i.style.height=d.style.height;}},0);}n(V,"updateHeight");function dt(){if(!$UI.store[m("blockView")])return;let t=$UI.store[m("blockView")];t.selected&&(t.deselect(),x());}n(dt,"disableBlockView");function _(t,o=null){o===!0?t.select():o===!1||t.selected?t.deselect():t.select();}n(_,"toggleMenuButton");function m(t){return e.id+"_"+t}n(m,"getId");function ut(){y()?$lib.each(e.editableElements,t=>{l=t.element||$lib("#"+t.id),e.eventManager.disposeEvents(),e.table.destroy();}):(e.eventManager.disposeEvents(),e.table.destroy()),e.cancelSelectionChange=!1,e.layoutState.dispose(),e.tooltipMenu.dispose(),e.history.dispose(),$=[],R=new Map,F=new Map;}n(ut,"dispose");},"Editor"),componyx.UI.Editor.StyleItem=function(A){var c=A;this.id=c?c.id:$lib.guid(),this.text=c?c.text:"",this.previewCssClass=c?c.previewCssClass:"",this.isCategory=c?c.isCategory:!1,this.templateId=c?c.templateId:"",this.elementSettings=c?c.elementSettings||{}:{},this.itemList=[];},componyx.UI.Editor.ToolbarDisplayOption={HEADER:0,FOOTER:1,CARET:2,getName:n(function(A){return $base.static.getKeyByValue(this,A).toLowerCase()},"getName")},componyx.UI.Editor.prototype=Object.create($base.methods),componyx.UI.Editor.prototype.constructor=componyx.UI.Editor;})(window);
119
+ })(window);
120
+
121
+
122
+ var b$1=Object.defineProperty;var s$2=(t,e)=>b$1(t,"name",{value:e,configurable:!0});const r=new Set(["type","id","name","element","viewElement","editElement","lineBreakElement"]),a=Symbol("renderedComponent"),u$2=Symbol("parent"),h$2=Symbol("element"),d$2=Symbol("lineBreakElement"),c$3=Symbol("viewElement"),p$1=Symbol("editElement"),C$1=s$2(()=>{const t=componyx.UI.form_modules.Types;return Object.fromEntries(Object.entries(t))},"_cloneableTypes"),i=s$2((t,e)=>{let l=r;e&&e._keepOriginal!==!1&&(l=new Set(r),l.delete("id"),l.delete("name"),delete e._keepOriginal),e&&$lib.clone({target:t,source:e,deep:!0,overwrite:!0,excludeEmpty:!0,omit:l,types:C$1(),typeCheck:"type"});},"_clone");componyx.UI.form_modules=componyx.UI.form_modules||{};const m$1={HEADER:0,BUILD_PANE_TOP:1,BUILD_PANE_BOTTOM:2,CONFIG_PANE_TOP:3,CONFIG_PANE_BOTTOM:4},E$1={FIELD_SET:0,FIELD:1,CONTENT_FIELD:2,SPACER_FIELD:3,getName(t){return $base.static.getKeyByValue(this,t).split("_").map(l=>l.charAt(0).toUpperCase()+l.slice(1).toLowerCase()).join("")}},T$1={TEXTBOX:0,TEXTAREA:1,CHECKBOX:2,RADIO:3,SWITCH:4,MASKEDTEXTBOX:5,NUMERICBOX:6,COMBOBOX:7,DATEPICKER:8,TIMEPICKER:9,SLIDER:10,FILEUPLOAD:11,EDITOR:12,getName(t){let e={5:"MaskedTextBox",6:"NumericBox",7:"ComboBox",8:"DatePicker",9:"TimePicker",10:"Slider",11:"FileUpload",12:"Editor"};if(e[t])return e[t];const l=$base.static.getKeyByValue(this,t);return l.charAt(0).toUpperCase()+l.slice(1).toLowerCase()}},A={EDIT:0,VIEW:1,BUILD:2,PREVIEW:3},I$2={NONE:0,DEFAULT:1,BANNERED:2},D={ALWAYS:"always",INIT:"init",CHANGE:"change",SHOW_SECTION:"show_section",BEFORE_SUBMIT:"before_submit",SUBMIT_SUCCEEDED:"submit_succeeded",SUBMIT_FAILED:"submit_failed"},g$1={VISIBLE:"visible",HIDDEN:"hidden",SECTION_HIDDEN:"section_hidden"},B={EQUAL:"equal",NOT_EQUAL:"not_equal",GREATER_THAN:"greater_than",GREATER_THAN_OR_EQUAL:"greater_than_or_equal",LESS_THAN:"less_than",LESS_THAN_OR_EQUAL:"less_than_or_equal",CONTAINS:"contains",NOT_CONTAINS:"not_contains",STARTS_WITH:"starts_with",ENDS_WITH:"ends_with",EMPTY:"empty",NOT_EMPTY:"not_empty",VISIBLE:"visible",HIDDEN:"hidden",ENABLED:"enabled",DISABLED:"disabled",REQUIRED:"required",OPTIONAL:"optional"};class L{static{s$2(this,"FieldRole");}constructor(e){this.id=null,this.label=null,this.defaultValue=null,this.inputType=null,i(this,e);}}class y{static{s$2(this,"ServerEndpoint");}constructor(e){this.id="",this.label="",this.absoluteURL=!1,this.url="",this.method="GET",this.headers={},this.params={},this.timeout=null,this.credentials="same-origin",this.responseType="json",this.preFetch=null,this.postFetch=null,i(this,e);}}class N extends y{static{s$2(this,"DataSource");}constructor(e){super(e),this.inputType=e?.inputType||null;}}class n{static{s$2(this,"BaseType");}#e;constructor(){this.#e=this.constructor.name,Object.defineProperty(this,"type",{value:this.#e,writable:!1,enumerable:!0,configurable:!1});}get parent(){return this[u$2]}set parent(e){this[u$2]=e;}get type(){return this.#e}}class o extends n{static{s$2(this,"BaseField");}constructor(){super(),this.panelTemplates=null,this.id="",this.name="",this.width="100%",this.cssClass="",this.cssClassIcon="",this.style="",this.tooltip="",this.visible=!0,this.disabled=!1,this.label="",this.value="",this.lineBreak=!1,this.viewTemplate=null,this.viewTemplateId=null,this.editTemplate=null,this.editTemplateId=null,this.componentSettings=new S;}get element(){return this[h$2]}set element(e){this[h$2]=e;}get lineBreakElement(){return this[d$2]}set lineBreakElement(e){this[d$2]=e;}}class _ extends o{static{s$2(this,"BaseSet");}constructor(){super(),this.headerTemplate=null,this.footerTemplate=null,this.fieldSets=[];}}class R extends o{static{s$2(this,"BuildBlock");}constructor(e){super(),this.blockType=E$1.FIELD,this.inputType=null,this.customType=null,this.panelId="",this.inputId=null,this.fieldSet=null,i(this,e);}}class f extends _{static{s$2(this,"Section");}constructor(e){super(),i(this,e);}}class x extends _{static{s$2(this,"FieldSet");}constructor(e){super(),this.allowAsRoot=!0,this.layout=I$2.DEFAULT,this.repeatable=!1,this.repeatLabel="",this.maxRepeats=0,this.fields=[],i(this,e);}}class F$1 extends o{static{s$2(this,"Field");}constructor(e){super(),this.placeholder="",this.labelDisplay=3,this.bindingKey="",this.role="",this.autoDataBind=null,this.hideLabel=null,this.viewAsLabel=!1,this.inlineOptions=!0,this.optionWidth="auto",this.options=[],this.inputType=T$1.TEXTBOX,this.customType=null,this.dataSourceId=null,this.dataSourcePreview=!0,this.readOnly=!1,this.required=!1,this.validationSettings=new O$2,this.ruleCases=[],this.inputId=null,this.viewElementId=null,this.formFieldId=null,i(this,e);}get viewElement(){return this[c$3]}set viewElement(e){this[c$3]=e;}get editElement(){return this[p$1]}set editElement(e){this[p$1]=e;}get renderedEditComponent(){return this[a]}set renderedEditComponent(e){this[a]=e;}}class w extends o{static{s$2(this,"FieldOption");}constructor(e){super(),this.selected=!1,this.inputId=null,this.formFieldId=null,i(this,e);}}class U extends o{static{s$2(this,"ContentField");}constructor(e){super(),this.trustHTML=!1,this.margin=null,this.padding=null,this.borderWidth=null,this.borderRadius=null,this.borderColor=null,this.backgroundColor=null,i(this,e);}}class v$1 extends o{static{s$2(this,"SpacerField");}constructor(e){super(),this.width="100%",this.showDivider=!1,this.height=null,i(this,e);}}class S extends n{static{s$2(this,"ComponentSettings");}constructor(){super();}}class O$2 extends n{static{s$2(this,"ValidationSettings");}constructor(e){super(),this.dataType=null,this.compareFieldId=null,this.compareOperator=null,this.minLength=null,this.maxLength=null,this.minRange=null,this.maxRange=null,this.pattern=null,i(this,e);}}class k$1{static{s$2(this,"Command");}constructor(e){this.id=null,this.command=null,this.isVisible=null,this.isEnabled=null,this.shortcutKey="",this.cssClass="",this.cssClassIcon="",this.location=m$1.HEADER,this.events=null,this.buttonId=null,i(this,e);}}class P extends n{static{s$2(this,"RuleCase");}constructor(){super(),this.id=null,this.trigger=null,this.runVisibility=null,this.ruleGroups=[],this.actions=[];}}class H extends n{static{s$2(this,"RuleGroup");}constructor(){super(),this.id=null,this.rules=[],this.logicalOperator=null;}}class M extends n{static{s$2(this,"Rule");}constructor(){super(),this.id=null,this.sourceId=null,this.logicalOperator=null,this.comparisonOperator=null,this.value=null,this.isRangeEnd=null;}}class V extends n{static{s$2(this,"Action");}constructor(e){super(),this.id=null,this.runtimeActionId=null,this.targetFieldSetId=null,this.value=null,i(this,e);}}componyx.UI.form_modules.Types={CommandLocationOption:m$1,BlockTypeOption:E$1,InputTypeOption:T$1,DisplayModeOption:A,FieldSetLayoutOption:I$2,RuleCaseTriggerOption:D,RuleCaseRunVisibilityOption:g$1,RuleComparisonOperatorOption:B,FieldRole:L,ServerEndpoint:y,DataSource:N,BuildBlock:R,BaseField:o,Section:f,FieldSet:x,Field:F$1,FieldOption:w,ContentField:U,SpacerField:v$1,ComponentSettings:S,ValidationSettings:O$2,Command:k$1,RuleCase:P,RuleGroup:H,Rule:M,Action:V};componyx.UI.form_modules.Types;
123
+
124
+
125
+ var k=Object.defineProperty;var u$1=(S,e)=>k(S,"name",{value:e,configurable:!0});componyx.UI.form_modules=componyx.UI.form_modules||{},componyx.UI.form_modules.Draggable=class{static{u$1(this,"Draggable");}#e;constructor(e){this.form=e,this.draggables=new Map,this.#e=e.classOption;}destroy(){this.draggables.forEach(e=>{e.disable();});}createDraggableOption(e){let i=e.element,l=e.panel.contentElement,s=i.querySelector("."+this.#t(this.#e.DRAG_HANDLE)),n=this.#c.bind(this),t=this.#g.bind(this),o=this.#D.bind(this),r=this.#b.bind(this);this.createDraggable(e,s,this.form.ownerDocument.documentElement,[l],n,t,o,r);}createDraggableField(e){if(this.form.displayMode!==this.form.constructor.DisplayModeOption.BUILD)return;let i=e.element,l=e.type==="BuildBlock",s=e.type==="FieldSet"||l&&e.blockType==this.form.constructor.BlockTypeOption.FIELD_SET,n=l?null:i.querySelector("."+this.#t(this.#e.DRAG_HANDLE)),t=this.form.ownerDocument.documentElement,o=u$1(()=>[Array.from(this.form.querySelectorAll("section")).find(a=>a.offsetParent)||this.form.querySelector("."+this.#t(this.#e.FORM_PANE))],"getRootZones"),r=u$1(()=>o().concat(this.#a(s||l?i:null)),"dropZones"),d=s&&!l?this.#u.bind(this):this.form.isField(e.type)?this.#m.bind(this):this.#p.bind(this),f=this.#S.bind(this),c=this.#E.bind(this),h=s?this.#F.bind(this):this.#y.bind(this);this.createDraggable(e,n,t,r,d,f,c,h);}createDraggable(e,i,l,s,n,t,o,r){this.draggables.has(e.element)&&(this.draggables.get(e.element).disable(),this.draggables.delete(e.element));let d=$lib.draggable(e.element,$base.static.initDragSettings({dragGhost:this.#f(e.element),dragHandle:i,autoGhostSize:!1,moveOriginal:!1,ignoreMargins:!0,scrollX:!0,scrollY:!0,boundaryZone:l,minDragX:1,minDragY:1,dropAcceptMode:2,dragClass:this.#t(this.#e.DRAGGING),droppableClass:this.#t(this.#e.DROPPABLE),dropZones:s,onDragStart:n,onDroppable:t,onDroppableLeave:o,onDrop:r,_dragItem:e},this.form.dragSettings));this.draggables.set(e.element,d);}#a(e=null){return Array.from(this.form.querySelectorAll("fieldset")).filter(i=>i!==e&&i.offsetParent!==null)}#f(e){const i=e.classList.contains(this.#t(this.#e.FIELD_OPTIONS_ITEM))&&e.closest(".content")||e,l=$lib.element(i,null);return l.classList.add(this.#t(this.#e.DRAG_GHOST)),l.style.display="none",l}#c(e){const i=e.element.querySelector("input");e.settings.dragGhost.innerHTML=i.value.trim()||this.form.labels.FieldOption,e.settings.dragGhost.classList.add(this.#t(this.#e.FIELD_OPTIONS_ITEM_GHOST));}#p(e){const i=e.element.cloneNode(!0),l=this.#t(this.#e.DRAG_GHOST),s=i.querySelector(`.${l}`),n=i.querySelector(".button");$lib.remove(n),$lib.remove(s),e.settings.dragGhost.innerHTML=i.outerHTML;}#m(e){const i=e.settings._dragItem,l=this.form.buildBlocks.find(s=>(s.inputType??null)===(i.inputType??null)&&(this.form.constructor.BlockTypeOption.getName(s.blockType)??null)===(i.type??null)&&(s.customType??null)===(i.customType??null));e.settings.dragGhost.innerHTML="",this.form.buildPanelManager.createBuildBlockElement(l,e.settings.dragGhost);}#u(e){let i=e.settings._dragItem,l=this.form.getFields(i).length,s=i.label||this.form.labels.fieldSet,n=l===1?this.form.labels.field:this.form.labels.fields;e.settings.dragGhost.classList.add(this.#t(this.#e.FIELD_SET)),e.settings.dragGhost.innerHTML=`${s} (${l} ${n})`;}#g(e){const i=e.dropZone,l=Array.from(i.querySelectorAll("."+this.#t(this.#e.FIELD_OPTIONS_ITEM))).filter(r=>r!==e.element&&!r.classList.contains(this.#t(this.#e.FIELD_OPTIONS_ITEM_NEW))),s=this.#h(l,e.settings),n=this.#i(),t=this.#s();if(!s.el||!s.metrics)return;e.settings.closestOptionEl&&e.settings.closestOptionEl!==s.el&&this.#d(e),e.settings.closestOptionEl=s.el;const o=s.el.classList;o.remove(n),o.remove(t),o.add(this.#t(this.#e.DROPPABLE)),s.metrics.isAbove?o.add(n):o.add(t);}#S(e){let i=e.settings._dragItem,l=i.type==="BuildBlock",s=i.type==="FieldSet"||l&&i.blockType==this.form.constructor.BlockTypeOption.FIELD_SET,n=Array.from(e.dropZone.querySelectorAll(s?"fieldset":":scope > .field-pane > .form-field")).filter(t=>t!==e.element);if(s&&e.dropZone.nodeName==="FIELDSET"&&e.dropZone!==e.element&&n.push(e.dropZone),!this.#B(i,e.dropZone))this.#l(e),e.dropZone.classList.add(this.#t(this.#e.DROP_DENIED)),e.settings.dragGhost.classList.add(this.#t(this.#e.DROP_DENIED)),e.settings._allowDrop=!1;else {e.settings._allowDrop=!0;const t=this.#h(n,e.settings);e.settings.closestFieldEl&&e.settings.closestFieldEl!=t.el&&this.#l(e),t.el?(e.settings.closestFieldEl=t.el,this.#O(t.el,t.metrics,s)):e.dropZone.classList.add(this.#r());}}#h(e,i){const l=i._dragItem.element,s={el:null,metrics:null,distance:1/0};for(const n of e){if(l.contains(n))continue;const t=this.#L(n,i.dragGhost);if(t.isInsideX&&t.isInsideY){s.el=n,s.metrics=t;break}t.distance<s.distance&&(s.el=n,s.metrics=t,s.distance=t.distance);}return s}#D(e){this.#d(e);}#E(e){this.#l(e);}#b(e){const i=e.settings._dragItem.element,l=e.settings._dragItem.field,s=e.settings._dragItem.option,n=e.settings.closestOptionEl,t=n.classList;!n||i===n||(t.contains(this.#i())?i.parentElement.insertBefore(i,n):i.parentElement.insertBefore(i,n.nextElementSibling),this.#I(s,l,n),this.form.updateFieldOptions(l),this.#d(e));}#y(e){if(!e.settings._allowDrop){this.#l(e);return}let i=e.dropZone,l=this.form.findFieldSetByElement(this.form.fieldSets,i),s=e.settings._dragItem,n=e.settings.closestFieldEl,t;s.type==="BuildBlock"?t=this.form.createItemFromBuildBlock(s):(t=s,this.form.removeField(t));const o=n?l.fields.find(r=>r.element===n):null;if(this.#_(t,l,o),t=l.fields.find(r=>r.id===t.id),n){const r=n.classList;r.contains(this.#n())||r.contains(this.#o())?this.form.scaleInlineSiblings(t):(!t.width||t.width.endsWith("%"))&&(r.contains(this.#i())||r.contains(this.#s()))&&(t.width="100%");}t.selected=!0,this.form.renderField(t),this.form.rebindFieldElements(t.parent),this.form.events.onDropField.fire(this,{item:t}),this.#l(e),s.type==="Field"&&this.form.autoNameCandidates.add(t.id);}#F(e){if(!e.settings._allowDrop){this.#l(e);return}let i=e.settings._dragItem,l=e.settings.closestFieldEl,s;i.type==="BuildBlock"?s=this.form.createItemFromBuildBlock(i):(s=i,this.form.removeFieldSet(s)),this.#T(s,e.dropZone,l),s.selected=!0,this.form.renderFieldSet(s),this.form.rebindFieldSetLabels(s.parent),this.form.events.onDropField.fire(this,{item:s}),this.#l(e);}#B(e,i){const l=e.type==="Field",s=e.type==="FieldSet",n=e.type==="BuildBlock",t=" FIELDSET SECTION ".indexOf(` ${i.nodeName} `)>-1?this.form.findFieldSetByElement(this.form.fieldSets,i):null,o=!t||t.type==="SECTION";if(l)return !(o||t.fieldSets&&t.fieldSets.length>0||t.fields.length===1&&t.fields[0].id===e.id);if(s){const r=!e.parent||e.parent.type==="SECTION",d=e.parent?e.parent.fieldSets:this.form.fieldSets;return !(r&&d.length===1||e.element.contains(i)||o&&!e.allowAsRoot||t&&t.fieldSets?.length===1&&t.fieldSets[0].id===e.id)}return !(n&&(o&&e.blockType!==this.form.constructor.BlockTypeOption.FIELD_SET||o&&e.fieldSet&&!e.fieldSet.allowAsRoot||e.blockType===this.form.constructor.BlockTypeOption.FIELD&&t&&t.fieldSets&&t.fieldSets.length>0))}#L(e,i){const l=e.getBoundingClientRect(),s=$lib.margin(e),n=l.top+s.top,t=l.left+s.left,o=l.bottom,r=l.right,d=(l.right-l.left)/2,f=(l.bottom-l.top)/2,c=l.left+d,h=l.top+f,a=i.getBoundingClientRect(),p=a.left+a.width/2,m=a.top+a.height/2,D=p>t&&p<r,g=m>n&&m<o,E=m<h,b=m>h,y=g&&p<c,F=g&&p>c,B=Math.max(t,Math.min(p,r)),L=Math.max(n,Math.min(m,o)),O=Math.hypot(B-p,L-m),I=Math.abs(p-c)/d,_=Math.abs(m-h)/f,T=I<.3&&_<.3;return {top:n,left:t,bottom:o,right:r,fieldCenterX:c,fieldCenterY:h,fieldWidth:d,fieldHeight:f,dragCenterX:p,dragCenterY:m,isInsideX:D,isInsideY:g,isAbove:E,isBelow:b,isLeft:y,isRight:F,isInsideCenter:T,distance:O}}#O(e,i,l){const s=[this.#n(),this.#o(),this.#s(),this.#i(),this.#r()],n=e.classList;n.add(this.#t(this.#e.DROPPABLE));let t="";i.isInsideCenter&&l?t=this.#r():i.isLeft?t=this.#n():i.isRight?t=this.#o():i.isBelow?t=this.#s():t=this.#i(),s.forEach(o=>{o!==t&&n.remove(o);}),n.add(t);}#d(e){if(!e.settings.closestOptionEl)return;const i=e.settings.closestOptionEl,l=i.classList;l.remove(this.#t(this.#e.DROPPABLE)),l.remove(this.#s()),l.remove(this.#i()),e.settings.closestOptionEl=null;}#l(e){const i=e.settings.closestFieldEl;if(e.dropZone.classList.remove(this.#r()),e.dropZone.classList.remove(this.#t(this.#e.DROP_DENIED)),e.settings.dragGhost.classList.remove(this.#t(this.#e.DROP_DENIED)),!i)return;const l=i.classList;l.remove(this.#t(this.#e.DROPPABLE)),l.remove(this.#s()),l.remove(this.#i()),l.remove(this.#o()),l.remove(this.#n()),l.remove(this.#r()),e.settings.closestFieldEl=null;}#I(e,i,l){const s=i.options,n=l.classList,t=l._option.id,o=s.findIndex(f=>String(f.id)===String(e.id));o>-1&&s.splice(o,1);const r=s.findIndex(f=>String(f.id)===t),d=n.contains(this.#i())?r:r+1;s.splice(d,0,e);}#_(e,i,l){e.lineBreak;const n=l?.element.classList;let t=!1,o=i.fields.length;if(l){const r=i.fields.findIndex(d=>d.id===l.id);if(n.contains(this.#i())){let d=r;for(;d>0&&!i.fields[d].lineBreak;)d--;o=d,t=!0,this.form.addLineBreak(i.fields[d]);}else if(n.contains(this.#s())){let d=r+1;for(;d<i.fields.length&&!i.fields[d].lineBreak;)d++;o=d,t=!0;}else n.contains(this.#n())?(o=r,l.lineBreak&&(this.form.removeLineBreak(l),t=!0)):n.contains(this.#o())&&(o=r+1);}o=Math.min(o,i.fields.length),i.fields.splice(o,0,e),this.form.getField(e.id,i).lineBreak=t,this.form.setParentReferences(i.fields||this.form.fieldSets,i);}#T(e,i,l){let s,n,t,o=l?.classList,r=!1;const d=o&&(o.contains(this.#i())||o.contains(this.#s())||o.contains(this.#n())||o.contains(this.#o()));if(i.classList.contains(this.#t(this.#e.FORM_PANE)))s=this.form.fieldSets;else if(i.tagName==="SECTION")t=this.form.fieldSets.find(h=>h.element===i),s=t?t.fieldSets||(t.fieldSets=[]):this.form.fieldSets;else if(l){const h=d?l.parentElement.closest("fieldset")||null:i;h?(t=this.form.findFieldSetByElement(this.form.fieldSets,h),s=t.fieldSets||(t.fieldSets=[])):s=this.form.fieldSets;}let f=s.length,c=l?s.find(h=>h.element===l):null;if(c){const h=s.findIndex(a=>a.id===c.id);if(o.contains(this.#i())){let a=h;for(;a>0&&!s[a].lineBreak;)a--;f=a,r=!0,this.form.addLineBreak(s[a]);}else if(o.contains(this.#s())){let a=h+1;for(;a<s.length&&!s[a].lineBreak;)a++;f=a,r=!0;}else o.contains(this.#n())?(f=h,c.lineBreak&&(this.form.removeLineBreak(c),r=!0)):o.contains(this.#o())&&(f=h+1);}else i.classList.contains(this.#r())&&(t=this.form.findFieldSetByElement(this.form.fieldSets,i),t&&(t.fields&&t.fields.length>0&&(n=this.form.ensureItemId(new this.form.constructor.FieldSet({layout:this.form.constructor.FieldSetLayoutOption.NONE})),n.fields=t.fields,t.fields=[],t.fieldSets=t.fieldSets||[],t.fieldSets.push(n)),s=t.fieldSets||(t.fieldSets=[]),f=s.length));s.splice(f,0,e),this.form.getFieldSet(e.id,s).lineBreak=r,this.form.setParentReferences(this.form.fieldSets),n&&(n.fields.forEach(h=>this.form.destroyField(h)),this.form.renderFieldSet(n));}#i(){return this.#t(this.#e.DROP_ABOVE)}#s(){return this.#t(this.#e.DROP_BELOW)}#n(){return this.#t(this.#e.DROP_LEFT)}#o(){return this.#t(this.#e.DROP_RIGHT)}#r(){return this.#t(this.#e.DROP_INSIDE)}#t(e){return this.form.getCssClass(e)}};componyx.UI.form_modules.Draggable;
126
+
127
+
128
+ var c$2=Object.defineProperty;var s$1=(d,o)=>c$2(d,"name",{value:o,configurable:!0});componyx.UI.form_modules=componyx.UI.form_modules||{},componyx.UI.form_modules.ActionManager=class{static{s$1(this,"ActionManager");}constructor(o){this.form=o,this.cf=o.componentFactory,this.expressionEngine=o.expressionEngine;}registerDefaultActions(){[{id:"value",config:{supportsFieldSet:!1,setValue:!0,label:this.form.labels.action_value,execute:s$1((t,e)=>{this.form.dataBinder.setModelValue(e,t.value),this.form.ruleEngine.updateRuleDrivenState(e,"value",t.value),this.updateTarget(e);},"execute")}},{id:"expression",config:{supportsFieldSet:!1,setExpression:!0,label:this.form.labels.action_expression,execute:s$1((t,e)=>{const i=this.evaluateExpression(t.expression);this.form.dataBinder.setModelValue(e,i),this.form.ruleEngine.updateRuleDrivenState(e,"value",i),this.updateTarget(e);},"execute")}},{id:"feedback",config:{supportsFieldSet:!1,setExpression:!0,label:this.form.labels.action_feedback,execute:s$1((t,e)=>{const i=e.element.querySelector("."+this.form.getCssClass(this.form.classOption.RULE_FEEDBACK)),l=this.evaluateExpression(t.expression);i.textContent=l,this.form.ruleEngine.updateRuleDrivenState(e,"feedback",l);},"execute")}},{id:"alert",config:{supportsFieldSet:!1,setExpression:!0,label:this.form.labels.action_alert,execute:s$1((t,e)=>{const i=`${this.form.id}_${t.id}_alert`;this.cf.createComponent(this.form,componyx.UI.Dialog,this.cf.createElement(i).id,this.form.alertDialogId).alert(null,this.form.labels.alertDialogHeader,this.evaluateExpression(t.expression));},"execute")}},{id:"confirm",config:{supportsFieldSet:!1,setExpression:!0,mustAwait:!0,label:this.form.labels.action_confirm,execute:s$1(async(t,e)=>new Promise(i=>{const l=`${this.form.id}_${t.id}_confirm`;this.cf.createComponent(this.form,componyx.UI.Dialog,this.cf.createElement(l).id,this.form.confirmDialogId).confirm((a,n)=>{i({success:!!n});},this.form.labels.confirmDialogHeader,this.evaluateExpression(t.expression));}),"execute")}},{id:"hide",config:{supportsFieldSet:!0,label:this.form.labels.action_hide,execute:s$1((t,e)=>{e.visible=!1,this.updateTarget(e);},"execute")}},{id:"show",config:{supportsFieldSet:!0,label:this.form.labels.action_show,execute:s$1((t,e)=>{e.visible=!0,this.updateTarget(e);},"execute")}},{id:"disable",config:{supportsFieldSet:!0,label:this.form.labels.action_disable,execute:s$1((t,e)=>{this.toggleDisabledState(t,e,!0);},"execute")}},{id:"enable",config:{supportsFieldSet:!0,label:this.form.labels.action_enable,execute:s$1((t,e)=>{this.toggleDisabledState(t,e,!1);},"execute")}},{id:"required",config:{supportsFieldSet:!0,label:this.form.labels.action_required,execute:s$1((t,e)=>{(e.type==="FieldSet"?this.form.getFields(e)||[]:[e]).forEach(r=>{r.required=!0,this.form.renderer.updateField(r);});},"execute")}},{id:"optional",config:{supportsFieldSet:!0,label:this.form.labels.action_optional,execute:s$1((t,e)=>{(e.type==="FieldSet"?this.form.getFields(e)||[]:[e]).forEach(r=>{r.required=!1,this.form.renderer.updateField(r);});},"execute")}},{id:"readonly",config:{supportsFieldSet:!1,label:this.form.labels.action_read,execute:s$1((t,e)=>{e.readOnly=!0,this.updateTarget(e);},"execute")}},{id:"editable",config:{supportsFieldSet:!1,label:this.form.labels.action_editable,execute:s$1((t,e)=>{e.readOnly=!1,this.updateTarget(e);},"execute")}},{id:"disable_next",config:{supportsFieldSet:!1,label:this.form.labels.action_disable_next,execute:s$1((t,e)=>{(!this.form.hasSections()||this.form.isLastSection()?this.form.renderer.submitButton:this.form.renderer.nextButton)?.disable();},"execute")}},{id:"enable_next",config:{supportsFieldSet:!1,label:this.form.labels.action_enable_next,execute:s$1((t,e)=>{(!this.form.hasSections()||this.form.isLastSection()?this.form.renderer.submitButton:this.form.renderer.nextButton)?.enable();},"execute")}},{id:"cancel_submit",config:{supportsFieldSet:!1,label:this.form.labels.action_cancel,execute:s$1((t,e)=>{this.form.submitCanceled=!0;},"execute")}},{id:"show_section",config:{supportsFieldSet:!1,setValue:!0,label:this.form.labels.action_show_section,execute:s$1((t,e)=>{if(!this.form.hasSections()||!t.value)return;const i=this.form.fieldSets.find(l=>l.id===t.value);i&&this.form.showSection(i);},"execute")}},{id:"end_form",config:{supportsFieldSet:!1,label:this.form.labels.action_end,execute:s$1((t,e)=>(this.form.ended=!0,this.form.events.onEndForm.fire(this.form),!1),"execute")}}].forEach(t=>{this.form.registerAction(t.id,t.config);}),this.registerApiActions();}toggleDisabledState(o,t,e){const i=t.options||[],l=new Set(o.value||[]),r=this.form.constructor.InputTypeOption,a=[r.CHECKBOX,r.SWITCH,r.RADIO,r.COMBOBOX].includes(t.inputType);t.type=="Field"&&a&&l.size?l.size===i.length?t.disabled=e:i.forEach(n=>{l.has(n.value)&&(n.disabled=e);}):t.disabled=e,this.updateTarget(t);}updateTarget(o){o.type==="FieldSet"?this.form.renderer.updateFieldSet(o):this.form.renderer.updateField(o);}registerApiActions(){this.form.actionEndpoints.forEach(o=>{this.form.registerAction(`api_${o.id}`,{supportsFieldSet:!1,mustAwait:!0,label:`${o.label}`,execute:s$1(async(t,e)=>{const i=await this.form.fetchFromEndpoint(o,{form:this.form,action:t,target:e}),l=this.form.constructor;if($lib.isEmpty(i.actions))return i;const r=new Map(this.form.getFields().map(a=>[a.id,a]));for(const a of i.actions){const n=r.get(a.fieldId);await this.form.executeAction(new l.Action({runtimeActionId:a.runtimeActionId,value:a.value}),n);}return i},"execute")});});}evaluateExpression(o){const t=this.form.getFields(),e=s$1(i=>{const l=t.find(a=>a.name===i);if(!l)return '""';const r=this.form.dataBinder.getModelValue(l);return r!==void 0?r:null},"resolver");return this.expressionEngine.evaluate(o)(e)}};componyx.UI.form_modules.ActionManager;
129
+
130
+
131
+ var c$1=Object.defineProperty;var l$1=(h,e)=>c$1(h,"name",{value:e,configurable:!0});componyx.UI.form_modules=componyx.UI.form_modules||{},componyx.UI.form_modules.BuildPanelManager=class{static{l$1(this,"BuildPanelManager");}#e;#t;#i;#n;#s=[];constructor(e){this.form=e,this.panelBar=null,this.cf=e.componentFactory,this.navigatorMenu=null,this.navigatorSearchInput=null,this.#e=e.classOption;}createPanelBar(e,s,t,i){const n=$UI.createComponent(componyx.UI.PanelBar,{id:s,containerElement:e});n.clone($UI.store[t],this.form),n.events.onPostRender.priorityAdd(()=>{this.createBuildBlocks(),this.form.navigatorPanelId&&this.panelBar.panels.find(a=>a.id===this.form.navigatorPanelId)&&this.createNavigator();},null),n.events.onPostRender.priorityAdd(()=>{this.form.isReady();},null,!0),n.expandOnPointerEnter=!1,n.multiExpand=!0,n.showing=!0,n.panels=i,this.panelBar=n;}createBuildBlocks(){this.form.buildBlocks.forEach((e,s)=>{const t=e.panelId,i=$lib.isEmpty(t)?this.panelBar.panels[0]:this.panelBar.panels.find(a=>a.id===t),n=i.contentElement;if(e.id=$lib.isEmpty(e.id)?`build_item_${s}`:e.id,e.label?.startsWith(":")){const a=e.label.slice(1);this.form.labels[a]&&(e.label=this.form.labels[a]);}this.createBuildBlock(e,n);}),this.form.renderChildren();}createBuildBlock(e,s){let t=this.createBuildBlockElement(e,s);this.cf.createButton(t,this.form.getId(e,"insert"),this.insertBuildBlockButtonId,{hasIcon:!0,cssClassIcon:"ico-plus",cssClass:this.form.getCssClass(this.#e.BUILD_BLOCK_INSERT),command:this.form.insertBuildBlock.bind(this.form,e)}),this.form.draggable.createDraggableField(e);}createBuildBlockElement(e,s){const t=$lib.element(s,"","","",{class:`${this.form.getCssClass(this.#e.BUILD_BLOCK)} ${e.cssClass}`.trim()});this.cf.createDragHandle(t),$lib.element(t,"","i","",{class:`${this.form.getCssClass(this.#e.ICON)} ${e.cssClassIcon}`.trim()});const i=$lib.element(t,"","span","",{class:`${this.form.getCssClass(this.#e.LABEL)}`.trim()});return i.innerHTML=e.label,e.element=t,t}createNavigator(){const e=this.form.navigatorPanelId,s=this.panelBar.panels.find(n=>n.id===e),t=s.contentElement,i=$lib.element({container:t});this.navigatorSearchInput=this.cf.createInput({container:i,type:"text",placeholder:this.form.labels.navigatorSearchHint,events:{oninput:l$1(()=>{clearTimeout(this.#n),this.#n=setTimeout(()=>{const n=this.form.getFields(),a=this.navigatorSearchInput.value.toLowerCase(),r=n.find(m=>((m.label||"")+" "+(m.name||"")).toLowerCase().includes(a));if(!r){this.navigatorMenu.deselectItem();return}let o=[],d=r;for(;d.parent;)o.push(d.parent.id),d=d.parent;this.navigatorMenu.expand(o.reverse(),null,!1,!0),$UI.store[`${this.navigatorMenu.id}_${r.id}`].element.scrollIntoView({behavior:"smooth",block:"nearest"}),this.navigatorMenu.selectItem(r.id),this.navigatorSearchInput.focus();},this.form.navigatorSearchDelay);},"oninput")}}),this.navigatorSearchInput.style.display="none",this.navigatorMenu=this.cf.createComponent(t,componyx.UI.Menu,`${this.form.id}_navigator_menu`,this.form.navigatorMenuId,{horizontalRoot:!1,itemGroupStyle:"position: static",itemList:this.buildNavigatorMenu(),events:{onPostRender:l$1(()=>{this.navigatorSearchInput.style.display="";},"onPostRender"),onItemSelect:l$1((n,a)=>{this.selectItem(a);},"onItemSelect")}}),this.navigatorMenu.render();}scheduleNavigatorUpdate(){!this.navigatorMenu||this.navigatorMenu.renderState!==$base.static.RenderState.RENDERED||(this.#s=[],clearTimeout(this.#i),clearTimeout(this.#t),this.#t=setTimeout(()=>{this.updateNavigator();}));}scheduleNavigatorItemUpdate(e,s){!this.navigatorMenu||this.navigatorMenu.renderState!==$base.static.RenderState.RENDERED||this.#t||(this.#s.push({item:e,isRemoveField:s}),clearTimeout(this.#i),this.#i=setTimeout(()=>{this.#s.forEach(t=>this.updateNavigatorItem(t.item,t.isRemoveField)),this.#s=[],this.#i=null;}));}updateNavigatorItem(e,s){if(!this.navigatorMenu||this.navigatorMenu.renderState!==$base.static.RenderState.RENDERED)return;const t=this.navigatorMenu,i=t.loadItem(e.id),n=i?.item;if(n)if(s){const a=i.hasParent()?i.parent().item:null;if(t.removeItem(e.id),a&&a.itemList){const r=a.itemList.findIndex(o=>o.id===e.id);r>=0&&a.itemList.splice(r,1);}n.itemList=[];}else n.text=e.label||e.name||e.id,t.renderItem(n),n.expanded&&t.expand(n.id,null,!1,!0);}updateNavigator(){const e=this.navigatorMenu,s=this.navigatorMenu.getExpandedItems();e.itemList=this.buildNavigatorMenu(),e.destroy(),e.events.onPostRender.priorityAdd(()=>{if(this.navigatorSearchInput.style.display="",s?.length){const t=s.filter(i=>i.attributes.type==="Section"?this.form.getSection(i.id):i.attributes.type==="FieldSet"?this.form.getFieldSet(i.id):this.form.getField(i.id)).map(i=>i.id);t.length&&this.navigatorMenu.expand(t,null,!1,!0);}}),e.events.onItemSelect.priorityAdd((t,i)=>{this.selectItem(i);}),e.render(),this.#t=null;}selectItem(e){const s=e.item,t=s.attributes.type;this.form.isField(t)?this.form.selectField(this.form.getField(s.id)):t==="FieldSet"?this.form.selectFieldSet(this.form.getFieldSet(s.id)):this.form.selectSection(this.form.getSection(s.id));}buildNavigatorMenu(e=this.form.fieldSets,s=null){const t=s?s.itemList=[]:[];return e.forEach(i=>{const n=i.type==="Section"?"ico-folder-closed":"ico-group",a=new componyx.UI.Menu.Item({id:i.id,text:i.label||i.id,hasIcon:!0,cssClassIcon:`${this.form.getCssClass(this.#e.ICON)} ${n}`.trim(),attributes:{type:i.type}});t.push(a),$lib.isEmpty(i.fieldSets)?(i.fields||[]).forEach(r=>{const o=new componyx.UI.Menu.Item({id:r.id,text:r.label||r.name,hasIcon:!0,cssClassIcon:`${this.form.getCssClass(this.#e.ICON)} ${r.cssClassIcon}`.trim(),attributes:{type:r.type}});a.itemList=a.itemList||[],a.itemList.push(o);}):this.buildNavigatorMenu(i.fieldSets,a);}),t}};componyx.UI.form_modules.BuildPanelManager;
132
+
133
+
134
+ var h$1=Object.defineProperty;var l=(c,e)=>h$1(c,"name",{value:e,configurable:!0});componyx.UI.form_modules=componyx.UI.form_modules||{},componyx.UI.form_modules.ComponentFactory=class{static{l(this,"ComponentFactory");}#t;constructor(e){this.form=e,this.InputTypeOption=this.form.constructor.InputTypeOption,this.#t=e.classOption;}getComponentType(e){return componyx.UI[this.InputTypeOption.getName(e)]}createElement(e){const t=$lib(`#${e}`);return t||$lib.element(this.form,"","","","",{id:`${e}`})}setAttribute(e,t,r=""){e.setAttribute(t,r);}createInput({type:e,id:t,name:r,value:n,placeholder:o,checked:i,disabled:p,events:u,container:a}){const s=$lib.element(a,"",e==="textarea"?"textarea":"input","","",{type:e!=="textarea"?e:void 0,id:t||void 0,name:r,value:$lib.isEmpty(n)?void 0:n,placeholder:$lib.isEmpty(o)?void 0:o,checked:i===!0?!0:void 0,disabled:p===!0?!0:void 0});return $lib.each(u,(m,d)=>{$lib.on(s,d,m);}),s}createTextarea(e,t,r,n,o){return this.createInput({type:"textarea",id:e,name:t,value:r,placeholder:n,events:o})}createCheckbox(e,t,r,n,o){return this.createInput({type:"checkbox",id:e,name:t,value:r,checked:n,events:o})}createRadio(e,t,r,n,o){return this.createInput({type:"radio",id:e,name:t,value:r,checked:n,events:o})}createTextInput(e,t,r,n,o){return this.createInput({type:"text",id:e,name:t,value:r,placeholder:n,events:o})}createHiddenInput(e){return this.createInput({type:"hidden",container:this.form,id:e})}createDragHandle(e){const t=$lib.element(e,"","","",{class:this.form.getCssClass(this.#t.DRAG_HANDLE)});t.innerHTML="<b></b><b></b><b></b>";}createNumericBox(e,t,r,n){return n.decimalSeparator=this.form.format.decimalSeparator,n.groupSeparator=this.form.format.groupSeparator,this.createComponent(e,this.getComponentType(this.InputTypeOption.NUMERICBOX),this.createElement(t).id,r,n)}createComboBox(e,t,r,n={},o){n.placeholder||(n.placeholder=this.form.labels.comboBoxDefaultHint);const i=this.createComponent(e,this.getComponentType(this.InputTypeOption.COMBOBOX),this.createElement(t).id,r,n);return o&&i.setNoResultTemplate(n.noResultLabel),i}createColorButton(e,t,r,n){return this.createComponent(e,componyx.UI.ColorButton,this.createElement(t).id,r,n)}createButton(e,t,r,n){return this.createComponent(e,componyx.UI.Button,t,r,{...n,transparent:$lib.isEmpty(n.transparent)?!0:n.transparent,transparentBorder:$lib.isEmpty(n.transparentBorder)?!0:n.transparentBorder,primary:$lib.isEmpty(n.primary)?!1:n.primary,hasIcon:!$lib.isEmpty(n.cssClassIcon),cssClassIcon:`${this.form.getCssClass(this.#t.ICON)} ${n.cssClassIcon}`,tooltipManagerId:this.form.tooltipManager.id,tooltipId:this.addTooltip(t.replace(`${this.form.id}_`,""),n),command:n.command,renderId:!1})}addTooltip(e,t){let r=t.key,n=t.tooltip||"";return r&&!t.tooltip&&(n+=` (Ctrl+${r.toUpperCase()})`),n?(this.form.tooltipManager.addTooltip(e,n),e):null}createFormField(e,t,r,n,o,i={},p){const u=this.createComponent(e,componyx.UI.FormField,t,r,{...i,wrapFieldContent:!(o&&o.nodeName==="INPUT"||o.nodeName==="TEXTAREA"),tooltipManagerId:i.tooltipId?this.form.tooltipManager.id:null,borderless:!1,events:{onPostRender:l(a=>{p&&p(a);},"onPostRender")},_mustRender:!1});return u.setLabelTemplate(n),u.setFieldTemplate(o),this.form.renderState===$base.static.RenderState.RENDERED&&u.render(),this.form.displayMode===this.form.constructor.DisplayModeOption.BUILD&&(u.element.tabIndex=0),u}createTooltipManager(e,t,r,n={}){const o=$UI.createComponent(componyx.UI.Box,{id:t+"_TooltipManagerBox",containerElement:e,cssClass:this.form.getCssClass(this.#t.FIELD_TOOLTIP),expandDirection:componyx.UI.Box.ExpandDirectionOption.DOWN,autoPosition:componyx.UI.Box.AutoPositionOption.EXPAND,alignX:componyx.UI.Box.AlignXOption.CENTER,autoInvertFit:!0});return this.createComponent(e,componyx.UI.TooltipManager,t,r,{...n,boxId:o.id,_mustRender:!1})}createComponent(e,t,r,n,o={}){const i=$UI.createComponent(t,{id:r,containerElement:e});i.clone($UI.store[n],this.form);const{events:p,...u}=o;if(Object.assign(i,Object.fromEntries(Object.entries(u).filter(([a,s])=>s!==void 0))),o._disableDataBinding!==!0&&(i.hiddenInputId!==void 0&&$lib.isEmpty(i.hiddenInputId)||i.inputId!==void 0&&$lib.isEmpty(i.hiddenInputId))){let a=`${r}_value`,s=$lib(`#${a}`);s||(s=this.createHiddenInput(a),this.form.isBuildMode()&&this.setAttribute(s,"data-ui-form-setting")),i.hiddenInputId!==void 0?i.hiddenInputId=s.id:i.inputId!==void 0&&(i.inputId=s.id);}if(i.keepInputId=!0,i.cloneInput=!1,i.ignoreConnectionCallbacks=!0,i.showing=$lib.isEmpty(o.showing)?!0:o.showing,p&&typeof p=="object")for(const[a,s]of Object.entries(p))!a||!s||i.events?.[a]?.priorityAdd&&i.events[a].priorityAdd(s);return i.events.onPostRender.priorityAdd(()=>{this.form.isReady();},null,!0),this.form.renderState===$base.static.RenderState.RENDERED&&o._mustRender!==!1&&i.render(),i}getComponentConfig(e,t=!0){const r={name:e.name,value:e.value,placeholder:e.placeholder,events:{}};return e.inputType===this.InputTypeOption.MASKEDTEXTBOX?this.configureMaskedTextBox(e,r):e.inputType===this.InputTypeOption.NUMERICBOX?this.configureNumericBox(e,r):e.inputType===this.InputTypeOption.COMBOBOX?this.configureComboBox(e,r,t):e.inputType===this.InputTypeOption.DATEPICKER?this.configureDatePicker(e,r):e.inputType===this.InputTypeOption.TIMEPICKER?this.configureTimePicker(e,r):e.inputType===this.InputTypeOption.SLIDER?this.configureSlider(e,r):e.inputType===this.InputTypeOption.FILEUPLOAD?this.configureFileUpload(e,r):e.inputType===this.InputTypeOption.EDITOR&&this.configureEditor(e,r),r}configureMaskedTextBox(e,t={}){const r=e.componentSettings||{},n={allowedCharacters:0};return this.#e(r,t,n)}configureNumericBox(e,t={}){const r=e.componentSettings||{};return t.decimalSeparator=this.form.format.decimalSeparator,t.groupSeparator=this.form.format.groupSeparator,this.#e(r,t)}configureComboBox(e,t={},r=!0){const n=e.componentSettings||{};return this.#e(n,t),e.dataSourceId?(t.loadOnDemand=!0,this.configureDataSource(t,e.dataSourceId)):$lib.isEmpty(e.options)||(t.itemList=e.options.map(o=>(this.form.ensureItemId(o),{id:o.id,text:o.label,value:o.value,selected:r?o.selected:!1,disabled:o.disabled}))),this.form.isBuildMode()&&(t.events={onPostRender:l(o=>{this.form.updateFieldOptions(e);},"onPostRender")}),t}configureDatePicker(e,t={}){const r=e.componentSettings||{};return t.dateFormat=this.form.format.dateFormat,this.#e(r,t)}configureTimePicker(e,t={}){const r=e.componentSettings||{},n={incrementalValue:5};return this.#e(r,t,n)}configureSlider(e,t={}){const r=e.componentSettings||{};if(this.#e(r,t),r.range){const n=$lib.element({container:this.form,tag:"input",props:{id:`${e.id}_Range`,type:"hidden"}});t.rangeHiddenInputId=n.id;}return r.tickMarks&&(t.tickMarkSide=componyx.UI.Slider.TickMarkSideOption.BOTH,t.tickMarkValueSide=componyx.UI.Slider.TickMarkSideOption.AFTER),t}configureFileUpload(e,t={}){const r=e.componentSettings||{};return e.dataSourceId&&this.configureDataSource(t,e.dataSourceId),this.#e(r,t)}configureEditor(e,t={}){const r=e.componentSettings||{},{visibleCommands:n,...o}=r,i=n||{},p=["*core"],u=["*list"],a=[...u,"block","link","special"];t.visibleCommands=[...p],i.all&&(t.visibleCommands=[...p,...a],["all","list","block","link","special"].forEach(s=>delete i[s]));for(const[s,m]of Object.entries(i)){let d=t.visibleCommands;!m||d.includes(`${s}`)||d.includes(`*${s}`)||t.visibleCommands.push(s);}return this.#e(o,t),t}configureDataSource(e,t){let r=this.form.dataSources.find(o=>o.id===t),n;return e.ajax={customParameters:r.params??{}},r.inputType===this.InputTypeOption.FILEUPLOAD?n=e.ajax.upload={}:n=e.ajax.load={},n.url=r.url,n.absoluteURL=r.absoluteURL||!0,n.headers=r.headers||null,e}#e(e,t,r={}){for(const n in e)e[n]!==void 0&&(Array.isArray(e[n])?t[n]=[...e[n]]:typeof e[n]=="object"&&e[n]!==null?t[n]={...e[n]}:t[n]=e[n]);for(const n in r)t[n]===void 0&&r[n]!==void 0&&(t[n]=r[n]);return t}};componyx.UI.form_modules.ComponentFactory;
135
+
136
+
137
+ var E=Object.defineProperty;var c=(C,t)=>E(C,"name",{value:t,configurable:!0});componyx.UI.form_modules=componyx.UI.form_modules||{},componyx.UI.form_modules.ComponentPanel=class{static{c(this,"ComponentPanel");}constructor(t,i){this.form=t,this.cf=t.componentFactory,this.cpm=i,this.InputTypeOption=this.cpm.InputTypeOption;}render(t){const i="ComponentPanel",s=this.cf.getComponentType(t.inputType).name,m=`ComponentPanel_${s}`,I=t.panelTemplates?.[i],l=this.cpm.panelBar.panels.find(a=>a.id===i),r=l.contentElement,p=`${this.form.id}_${i}_`,e=t.componentSettings||new this.form.constructor.ComponentSettings,f="componentSettings.",w=$lib.format(this.form.labels.componentPanelHeader,this.form.labels[`${s.charAt(0).toLowerCase()+s.slice(1)}`]||s),D=this.cpm.createBindingEvents(t),v=c((a,o,u,h,k={},T=this.form)=>this.cf.createComponent(T,componyx.UI[a],this.cf.createElement(`${p}${o}_input`).id,this.form[u],{...k,name:o==="value"?o:f+o,value:h,events:{...k.events||{},...D}}),"createComponent"),b=c((a,o,u,h,k={},T)=>({id:o,label:this.form.labels[o],fieldElement:v(a,o,u,h,k,T).element}),"componentField"),n=c((...a)=>b("NumericBox",...a),"numericField"),V=c((...a)=>b("MaskedTextBox",...a),"maskedField"),x=c((a,o,u,h={})=>{const k=$lib.isEmpty(u)?null:$lib.formatDate($lib.parseDate(u,"YYYY-MM-DD"),this.form.format.dateFormat);return b("DatePicker",a,o,k,{...h,dateFormat:this.form.format.dateFormat})},"dateField"),y=c((...a)=>b("TimePicker",...a),"timeField");this.cpm.panelBar.updatePanelTitle(l,w),this.cpm.panelBar.showPanel(l);let d=[],g=[];switch(e.parent=t,t.inputType){case this.InputTypeOption.MASKEDTEXTBOX:$lib.isEmpty(e.mask)&&(e.mask="____-____"),$lib.isEmpty(e.allowedCharacters)&&(e.allowedCharacters=0),d=[{id:"mask",type:"input",value:e.mask,config:{tooltipId:this.cf.addTooltip(`${p}mask_tooltip`,{tooltip:this.form.labels.maskTooltip})}},V("value","valueMaskedTextBoxId",t.value,{mask:e.mask}),{id:"allowedCharacters",type:"radio",options:[{value:0,label:this.form.labels.allowedCharactersAlphanumeric,checked:e.allowedCharacters===0},{value:1,label:this.form.labels.allowedCharactersDigits,checked:e.allowedCharacters===1},{value:2,label:this.form.labels.allowedCharactersLetters,checked:e.allowedCharacters===2}]}];break;case this.InputTypeOption.NUMERICBOX:e.precision=$lib.isEmpty(e.precision)?0:parseFloat(e.precision),d=[n("precision","precisionNumericBoxId",e.precision),n("value","valueNumericBoxId",t.value,{precision:e.precision}),n("minValue","minValueNumericBoxId",e.minValue,{precision:e.precision}),n("maxValue","maxValueNumericBoxId",e.maxValue,{precision:e.precision})];break;case this.InputTypeOption.COMBOBOX:d=[{id:"multiSelect",type:"checkbox",checked:e.multiSelect,config:{switch:!0},events:{onchange:c(()=>{t.options?.forEach(h=>{h.selected=!1;}),this.cpm.renderOptionsPanel(t);},"onchange")}},{id:"multiSelectTagging",type:"checkbox",checked:e.multiSelectTagging,config:{switch:!0}},{id:"allowInput",type:"checkbox",checked:e.allowInput,config:{switch:!0}}];break;case this.InputTypeOption.DATEPICKER:e.allowedDates=e.allowedDates||[],d=[{id:"today",type:"checkbox",checked:e.today,config:{switch:!0},events:{onchange:c(h=>{this.cpm.setDisabled(`${p+s}_value_field`,h.target.checked);},"onchange")}},x("value","valueDatePickerId",t.value),x("minValue","minValueDatePickerId",e.minValue),x("maxValue","maxValueDatePickerId",e.maxValue),{id:"allowedDates",fieldElement:this.#t(this.cf.getComponentType(this.InputTypeOption.DATEPICKER),`${p}allowedDates_input`,this.form.addAllowedDatePickerId,e.allowedDates)},{id:"disallowDates",type:"checkbox",checked:e.disallowDates,config:{switch:!0}}];break;case this.InputTypeOption.TIMEPICKER:e.allowedTimes=e.allowedTimes||[],d=[y("value","valueTimePickerId",t.value),y("minValue","minValueTimePickerId",e.minValue),y("maxValue","maxValueTimePickerId",e.maxValue),n("incrementalValue","incrementalValueNumericBoxId",e.incrementalValue,{incrementalValue:5}),{id:"allowedTimes",fieldElement:this.#t(this.cf.getComponentType(this.InputTypeOption.TIMEPICKER),`${p}allowedTimes_input`,this.form.addAllowedTimePickerId,e.allowedTimes)},{id:"disallowTimes",type:"checkbox",value:e.disallowTimes,config:{switch:!0}}];break;case this.InputTypeOption.SLIDER:d=[{id:"range",type:"checkbox",checked:e.range,config:{switch:!0}},{id:"trackSize",type:"input",value:e.trackSize},e.range?n("startValue","startValueNumericBoxId",e.startValue):null,n("value","valueNumericBoxId",t.value),n("minValue","minValueNumericBoxId",e.minValue),n("maxValue","maxValueNumericBoxId",e.maxValue),n("tickMarks","tickMarksNumericBoxId",e.tickMarks)];break;case this.InputTypeOption.FILEUPLOAD:d=[{id:"accept",type:"input",value:e.accept||""},n("maxFileSize","maxFileSizeNumericBoxId",e.maxFileSize),n("maxFiles","maxFilesNumericBoxId",e.maxFiles),{id:"dataSourceId",fieldElement:this.cpm.createDataSourceCombo(`${p}fileUpload_dataSourceId`,this.InputTypeOption.FILEUPLOAD,"componentSettings.dataSourceId")}];break;case this.InputTypeOption.EDITOR:const a=e.visibleCommands||{},o=a.all,u={switch:!0,disabled:o};o&&(a.list=a.block=a.link=a.special=!0),d=[{id:"all",name:"visibleCommands.all",type:"checkbox",checked:o,config:{switch:!0}},{id:"list",name:"visibleCommands.list",type:"checkbox",checked:e.list,config:u},{id:"block",name:"visibleCommands.block",type:"checkbox",checked:e.block,config:u},{id:"link",name:"visibleCommands.link",type:"checkbox",checked:e.link,config:u},{id:"special",name:"visibleCommands.special",type:"checkbox",checked:e.special,config:u}];break}if(t.customType){const a=this.form.constructor.getCustomType(t.customType);a&&(g=a.configGetter(this.form,t,i));}this.cpm.renderPanel(t,r,[...d,...g],I||m,`${p+s}_`,f),this.cpm.bindProperties(t,r);}#t(t,i,s,m){const I=this.cf.createComponent(this.form,t,i,s).element,l=$lib.element({content:I,props:{className:this.cpm.getCssClass(this.cpm.classOption.ALLOWED_LIST)}});return this.cf.createButton(l,`${i}_add`,this.form.addAllowedItemButtonId,{hasIcon:!0,cssClassIcon:"ico-plus",cssClass:this.cpm.getCssClass(this.cpm.classOption.ADD),command:c(()=>{const r=$UI.store[i],p=r.constructor.name==="DatePicker",e=p&&!$lib.isEmpty(r.getDate())?$lib.formatDate(r.getDate(),"YYYY-MM-DD"):r.getValue();e&&(m.includes(e)||(m.push(e),this.#e(l,m,i)));},"command")}),this.#e(l,m,i),l}#e(t,i,s){let m=t.querySelector("ul"),I=$UI.store[s].constructor.name==="DatePicker";m?m.innerHTML="":m=$lib.element({container:t,tag:"ul"});for(const l of i){const r=$lib.element({container:m,tag:"li"});$lib.element({container:r,tag:"span",content:I?$lib.formatDate(this.#a(l),this.form.format.dateFormat):l});const p=this.cf.createButton(r,`${s}_remove`,this.form.removeAllowedItemButtonId,{hasIcon:!0,cssClassIcon:"ico-bin",cssClass:this.cpm.getCssClass(this.cpm.classOption.REMOVE),command:c(()=>{const e=i.findIndex(f=>f===l);e!==-1&&i.splice(e,1),this.#e(t,i,s);},"command")});r.appendChild(p.element);}}#a(t){return $lib.parseDate(t,"YYYY-MM-DD")}};componyx.UI.form_modules.ComponentPanel;
138
+
139
+
140
+ var F=Object.defineProperty;var v=(T,e)=>F(T,"name",{value:e,configurable:!0});componyx.UI.form_modules=componyx.UI.form_modules||{},componyx.UI.form_modules.ConfigPanelManager=class{static{v(this,"ConfigPanelManger");}#e;#t;#u;constructor(e){this.form=e,this.cf=e.componentFactory,this.draggable=e.draggable,this.panelBar=null,this.labels=this.form.labels,this.InputTypeOption=this.form.constructor.InputTypeOption,this.classOption=e.classOption,this.getCssClass=e.getCssClass,this.expressionEngine=e.expressionEngine,this.componentPanel=new componyx.UI.form_modules.ComponentPanel(e,this),this.optionsPanel=new componyx.UI.form_modules.OptionsPanel(e,this),this.rulesPanel=new componyx.UI.form_modules.RulesPanel(e,this);}destroy(){this.rulesPanel.destroy();}isFieldSetActive(e){return this.#e===e.id}isFieldActive(e){return this.#t===e.id}setActiveFieldSet(e){this.#e=e.id;}setActiveField(e){this.#t=e.id;}clearActive(){this.#e=null,this.#t=null,this.form.dataBinder.clearValueHandlers();}createPanelBar(e,t,a,n){const i=$UI.createComponent(componyx.UI.PanelBar,{id:t,containerElement:e});i.clone($UI.store[a],this.form),i.events.onPostRender.priorityAdd(()=>{this.form.isReady();},null,!0),i.expandOnPointerEnter=!1,i.showing=!0,i.panels=n,this.panelBar=i;}applyPanelTemplate(e,t){e.innerHTML="",this.form.applyTemplate(e,t,this.#m(t));}renderPanel(e,t,a=[],n,i="",l=""){this.applyPanelTemplate(t,n);for(const o of a){if(!o)continue;let{id:s,name:r,label:h,type:m,value:b,options:B,checked:d,placeholder:y,config:p={},events:C,fieldElement:_,disableDataBinding:P}=o,I=`${i}${s}`,u=`${i}${s}_input`,f=this.labels[s+"Hint"],c,g;if(r=r||l+s,!!(c=$lib(`#${I}`))){if(h||(h=this.labels[s]),!y&&f&&(y=f),$lib.isEmpty(p.labelDisplay)&&" checkbox radio ".indexOf(` ${m} `)==-1&&(p.labelDisplay=componyx.UI.FormField.LabelDisplayOption.ABOVE),!m&&_){this.renderComponentField(t,c,h,_,p);continue}if(Array.isArray(B)&&B.length>0){const $=$lib.element({attrs:{class:this.getCssClass(this.classOption.CONFIG_CHOICE_GROUP)}});for(const x of B)u=`${I}_${x.value}_input`,g=m==="radio"?this.cf.createRadio(u,r,x.value,x.checked||!1,x.events):this.cf.createCheckbox(u,r,x.value,x.checked||!1,x.events),this.cf.createFormField($,`${I}_${x.value}_field`,"",x.label||x.value,g,{...p,inline:!0}),P||this.#i(g);this.cf.createFormField(t,`${c.id}_field`,"",h,$,p);}else {switch(m==="checkbox"&&d===void 0&&e[s]!=null?d=e[s]:m!=="checkbox"&&b===void 0&&e[s]!=null&&(b=e[s]),m){case"input":g=this.cf.createTextInput(u,r,b,y,C);break;case"textarea":g=this.cf.createTextarea(u,r,b,y,C);break;case"checkbox":g=this.cf.createCheckbox(u,r,b,d||!1,C);break;default:continue}P||this.#i(g),this.cf.createFormField(t,`${c.id}_field`,"",h,g,p);}}}}renderComponentField(e,t,a,n,i){i.events||(i.events={}),i.events.onPostRender=l=>{const o=l.id.replace(/_field$/,"_input"),s=$UI.store[o];s&&(s.renderState===$base.static.RenderState.RENDERED?l.linkLabelToInput():s.events.onPostRender.priorityAdd(()=>{l.linkLabelToInput();}));},this.cf.createFormField(e,`${t.id}_field`,"",a,n,i);}renderFieldSetPanel(e){const t="FieldSetPanel",a=e.panelTemplates?.[t]??t,n=this.panelBar.panels.find(m=>m.id===t),i=n.contentElement,l=`${this.form.id}_${t}_`,o=this.createBindingEvents(e),s=v((m,b)=>{this.form.setLabelDisplay(e,b.item.value);},"selectLabelDisplay"),r=e.parent,h=r&&r.type==="FieldSet";this.renderPanel(e,i,[{id:"id",label:this.labels.fieldSetId,type:"input",value:e.id,disableDataBinding:!0,config:{disabled:!0}},{id:"layout",label:this.labels.fieldSetLayout,fieldElement:this.#n(`${l}layout_input`,o)},{id:"labelDisplay",label:this.labels.fieldLabelDisplay,fieldElement:this.#l(`${l}labelDisplay_input`,{onItemSelect:s},!0)},h?{id:"repeatable",label:this.labels.fieldSetRepeatable,type:"checkbox",config:{switch:!0}}:null,h?{id:"maxRepeats",label:this.labels.fieldSetMaxRepeats,fieldElement:this.cf.createNumericBox(this.form,`${l}maxRepeats_input`,this.form.panelMaxRepeatsNumericBoxId,{name:"maxRepeats",value:e.maxRepeats,events:o}).element}:null,h?{id:"repeatLabel",label:this.labels.fieldSetRepeatLabel,type:"input",value:e.repeatLabel}:null,{id:"tooltip",type:"textarea"},{id:"lineBreak",type:"checkbox",config:{switch:!0}},{id:"visible",type:"checkbox",config:{switch:!0}},{id:"disabled",type:"checkbox",config:{switch:!0}}],a,l),this.bindProperties(e,i);}renderFieldTypePanel(e){e.type==="ContentField"?this.renderContentFieldPanel(e):e.type==="SpacerField"?this.renderSpacerFieldPanel(e):this.renderFieldPanel(e);}renderFieldPanel(e){const t="FieldPanel",a=e.panelTemplates?.[t]??t,n=this.panelBar.panels.find(d=>d.id===t),i=n.contentElement,l=`${this.form.id}_${t}_`,o=e.inputType<=this.InputTypeOption.TEXTAREA||e.inputType==this.InputTypeOption.COMBOBOX||e.inputType==this.InputTypeOption.NUMERICBOX,s=e.inputType<=this.InputTypeOption.TEXTAREA,r=this.createBindingEvents(e),h=e.inputType>=this.InputTypeOption.MASKEDTEXTBOX,m=this.form.fieldRoles?.length>0;let b=[],B=[{id:"name",label:this.labels.fieldName,type:"input",config:{required:!0},disableDataBinding:!0,events:{input:v(d=>{const y=d.target.value,p=this.form.getFields().some(C=>C.id!==e.id&&C.name===y);!y||p?d.target.classList.add("invalid"):d.target.classList.remove("invalid");},"input"),blur:v(d=>{const y=e.name,p=d.target.value.trim(),C=this.form.getFields().some(_=>_.id!==e.id&&_.name===p);d.target.classList.remove("invalid"),!p||C?d.target.value=e.name=e.id:(e.name=p,this.form.getFields().forEach(_=>{(_.ruleCases||[]).forEach(P=>{(P.actions||[]).forEach(I=>{if(I.expression){const u=[];if(this.expressionEngine.evaluate(I.expression,(f,c)=>{f===y&&u.push({startIndex:c,length:f.length});}),u.length>0){u.sort((c,g)=>g.startIndex-c.startIndex);let f=I.expression;for(const c of u)f=f.substring(0,c.startIndex)+p+f.substring(c.startIndex+c.length);I.expression=f,_.id===e.id&&this.renderRulesPanel(e);}}});});})),this.form.autoNameCandidates.delete(e.id),this.form.save();},"blur")}},{id:"labelDisplay",label:this.labels.fieldLabelDisplay,fieldElement:this.#l(`${l}labelDisplay_input`,r)},o?{id:"placeholder",label:this.labels.fieldPlaceholder,type:"input"}:null,{id:"tooltip",type:"textarea"},s?{id:"value",type:e.inputType==this.InputTypeOption.TEXTAREA?"textarea":"input"}:null,m?{id:"role",label:this.labels.fieldRole,fieldElement:this.#s(`${l}fieldRole_input`,e,r),config:{tooltipId:this.cf.addTooltip(`${l}role_tooltip`,{tooltip:this.labels.fieldRoleTooltip})}}:null,{id:"width",label:this.labels.fieldWidth,fieldElement:this.#a(`${l}fieldWidth_input`,e,r),config:{tooltipId:this.cf.addTooltip(`${l}width_tooltip`,{tooltip:this.labels.fieldWidthTooltip})}},{id:"required",label:this.labels.validationRequired,type:"checkbox",config:{switch:!0}},{id:"lineBreak",type:"checkbox",config:{switch:!0}},{id:"visible",type:"checkbox",config:{switch:!0}},{id:"disabled",type:"checkbox",config:{switch:!0},events:{onchange:v(d=>{this.setDisabled(`${l}readOnly_field`,d.target.checked);},"onchange")}},s?{id:"readOnly",type:"checkbox",config:{switch:!0}}:null];if(e.customType){const d=this.form.constructor.getCustomType(e.customType);d&&(b=d.configGetter(this.form,e,t));}this.renderPanel(e,i,[...B,...b],a,l),h&&this.labels.fieldMoreSettings&&this.cf.createButton(i,`${l}_more_settings`,this.moreSettingsButtonId,{hasIcon:!1,text:this.labels.fieldMoreSettings,cssClass:this.getCssClass(this.classOption.MORE_SETTINGS),primary:!1,command:v(()=>{this.panelBar.expandPanel("ComponentPanel");},"command")}),this.bindProperties(e,i);}renderContentFieldPanel(e){const t="ContentFieldPanel",a=e.panelTemplates?.[t]??t,n=this.panelBar.panels.find(r=>r.id===t),i=n.contentElement,l=`${this.form.id}_${t}_`,o=this.createBindingEvents(e),s=this.form.colorPicker.id;this.renderPanel(e,i,[{id:"width",label:this.labels.fieldWidth,fieldElement:this.#a(`${l}fieldWidth_input`,e,o),config:{tooltipId:this.cf.addTooltip(`${l}width_tooltip`,{tooltip:this.labels.fieldWidthTooltip})}},{id:"margin",type:"input"},{id:"padding",type:"input"},{id:"borderWidth",fieldElement:this.cf.createNumericBox(this.form,`${l}borderWidth_input`,this.form.borderWidthNumericBoxId,{name:"borderWidth",minValue:0,maxValue:25,value:e.borderWidth,events:o}).element},{id:"borderRadius",type:"input"},{id:"borderColor",fieldElement:this.cf.createColorButton(this.form,`${l}borderColor_input`,this.form.borderColorButtonId,{colorPickerId:s,name:"borderColor",value:e.borderColor,events:o}).element,config:{labelDisplay:componyx.UI.FormField.LabelDisplayOption.AFTER}},{id:"backgroundColor",fieldElement:this.cf.createColorButton(this.form,`${l}backgroundColor_input`,this.form.backgroundColorButtonId,{colorPickerId:s,name:"backgroundColor",value:e.backgroundColor,events:o}).element,config:{labelDisplay:componyx.UI.FormField.LabelDisplayOption.AFTER}},{id:"lineBreak",type:"checkbox",config:{switch:!0}},{id:"visible",type:"checkbox",config:{switch:!0}}],a,l),this.bindProperties(e,i);}renderSpacerFieldPanel(e){const t="SpacerFieldPanel",a=e.panelTemplates?.[t]??t,n=this.panelBar.panels.find(o=>o.id===t),i=n.contentElement,l=`${this.form.id}_${t}_`;this.renderPanel(e,i,[{id:"showDivider",type:"checkbox",config:{switch:!0}},{id:"height",type:"input"}],a,l),this.bindProperties(e,i);}renderComponentPanel(e){this.componentPanel.render(e);}renderOptionsPanel(e){this.optionsPanel.render(e);}renderValidationPanel(e){const t="ValidationPanel",a=e.panelTemplates?.[t]??t,n=this.panelBar.panels.find(h=>h.id===t),i=n.contentElement,l=`${this.form.id}_${t}_`,o="validationSettings.",s=e.validationSettings||new this.form.constructor.ValidationSettings,r=this.createBindingEvents(e);s.compareOperator||(s.compareOperator="=="),s.parent=e,this.renderPanel(e,i,[{id:"required",label:this.labels.validationRequired,type:"checkbox",config:{switch:!0}},{id:"dataType",name:`${o}dataType`,label:this.labels.validationDataType,fieldElement:this.#o(l,o,r)},{id:"length",label:this.labels.validationLength,fieldElement:this.#h(l,o,r)},{id:"range",label:this.labels.validationRange,fieldElement:this.#p(l,o,r)},{id:"pattern",name:`${o}pattern`,label:this.labels.validationPattern,placeholder:this.labels.validationPatternHint,type:"textarea"},{id:"compare",label:this.labels.validationCompare,fieldElement:this.#c(l,o,e,r),config:{disabled:this.form.getFields().length<=1}}],a,l),this.bindProperties(e,i);}renderRulesPanel(e){this.rulesPanel.render(e);}createBindingEvents(e){return this.form.dataBinder.cancelUpdate(),{onPostRender:v(t=>{this.form.dataBinder.bindSettingProperties(e,t.element),this.form.dataBinder.updateView(!0);},"onPostRender")}}bindProperties(e,t){this.form.dataBinder.bindSettingProperties(e,t);}setDisabled(e,t=!0){Array.isArray(e)||(e=[e]),e.forEach(a=>{const n=$UI.store[a];n&&(t?n.disable():n.enable());});}toggleFieldDisplay(e,t,a){const n=$UI.store[e+t+"_field"];a?n.show():n.hide();}createDataSourceCombo(e,t,a,n){return this.cf.createComboBox(this.form,e,this.form.dataSourceComboBoxId,{name:a,placeholder:this.labels.comboBoxDefaultHint,allowInput:!1,itemList:this.form.dataSources.filter(i=>[i.inputType].flat().includes(t)).map(i=>({id:i.id,text:i.label})),events:n}).element}#i(e){e.setAttribute("data-ui-form-setting","");}#n(e,t){return this.cf.createComboBox(this.form,e,this.form.layoutComboBoxId,{name:"layout",placeholder:this.labels.comboBoxDefaultHint,allowInput:!1,itemList:[{id:"0",text:this.labels.fieldSetLayoutNone},{id:"1",text:this.labels.fieldSetLayoutDefault},{id:"2",text:this.labels.fieldSetLayoutBannered}],events:t}).element}#l(e,t,a=!1){const n=[{id:"1",value:"3",text:this.labels.fieldLabelDisplayAbove},{id:"2",value:"4",text:this.labels.fieldLabelDisplayBefore},{id:"3",value:"1",text:this.labels.fieldLabelDisplayFloating},{id:"4",value:"2",text:this.labels.fieldLabelDisplayInside}];return this.cf.createComboBox(this.form,e,this.form.labelDisplayComboBoxId,{name:"labelDisplay",placeholder:this.labels.comboBoxDefaultHint,allowInput:!1,itemList:n,events:t,_disableDataBinding:a}).element}#s(e,t,a){const n=this.form.getFields(),i=v((s,r)=>r?Array.isArray(r)?r.includes(s):r===s:!0,"isCompatibleType"),l=new Set(n.filter(s=>s.id!==t.id&&s.role).map(s=>s.role)),o=this.form.fieldRoles.filter(s=>!l.has(s.id)&&i(t.inputType,s.inputType)).map(s=>({id:s.id,text:s.label}));return this.cf.createComboBox(this.form,e,this.form.fieldWidthComboBoxId,{name:"role",placeholder:this.labels.comboBoxDefaultHint,allowInput:!1,value:t.role,itemList:o,disabled:!o.length,events:a}).element}#a(e,t,a){return this.cf.createComboBox(this.form,e,this.form.fieldWidthComboBoxId,{name:"width",placeholder:this.labels.fieldWidthHint,allowInput:!0,allowCustomValue:!0,value:t.width,itemList:[{id:"1",text:this.labels.fieldWidth1PerRow,value:"100%"},{id:"2",text:this.labels.fieldWidth2PerRow,value:"50%"},{id:"3",text:this.labels.fieldWidth3PerRow,value:"33%"},{id:"4",text:this.labels.fieldWidth4PerRow,value:"25%"},{id:"5",text:this.labels.fieldWidthAuto,value:""}],events:a}).element}#o(e,t,a){return this.cf.createComboBox(this.form,`${e}dataType_input`,this.form.dataTypeComboBoxId,{name:`${t}dataType`,placeholder:this.labels.comboBoxDefaultHint,allowInput:!1,itemList:[{id:"0",text:this.labels.validationDataTypeInteger},{id:"1",text:this.labels.validationDataTypeFloat},{id:"2",text:this.labels.validationDataTypeDateTime},{id:"3",text:this.labels.validationDataTypeEmail},{id:"4",text:this.labels.validationDataTypeURL},{id:"5",text:this.labels.validationDataTypeSource}],events:a}).element}#r(e,t,a){return this.cf.createComboBox(this.form,e,this.form.compareOperatorComboBoxId,{name:`${t}compareOperator`,cssClass:this.getCssClass(this.classOption.COMBOBOX_VAL_COMPARE_OPERATOR),allowInput:!1,disableClearButton:!0,itemList:[{id:"0",value:"==",text:this.labels.operator_equal},{id:"1",value:"<",text:this.labels.operator_less_than},{id:"2",value:"<=",text:this.labels.operator_less_than_or_equal},{id:"3",value:">=",text:this.labels.operator_greater_than_or_equal},{id:"4",value:">",text:this.labels.operator_greater_than}],events:a}).element}#d(e,t,a,n){const i=this.form.getFields(),l=i.filter(o=>o.id!==t.id).map(o=>({id:o.id,text:o.name}));return this.cf.createComboBox(this.form,e,this.form.compareFieldComboBoxId,{name:`${a}compareFieldId`,placeholder:this.labels.comboBoxDefaultHint,cssClass:this.getCssClass(this.classOption.COMBOBOX_VAL_COMPARE_FIELD),allowInput:!1,itemList:l,events:n}).element}#h(e,t,a){const n=$lib.element(),i=this.cf.createNumericBox(this.form,`${e}min_length_input`,this.form.minLengthNumericBoxId,{name:t+"minLength",placeholder:this.labels.validationMinLengthHint,events:a}).element,l=this.cf.createNumericBox(this.form,`${e}max_length_input`,this.form.maxLengthNumericBoxId,{name:t+"maxLength",placeholder:this.labels.validationMaxLengthHint,events:a}).element;return n.appendChild(i),n.appendChild(l),n}#p(e,t,a){const n=$lib.element(),i=this.cf.createNumericBox(this.form,`${e}min_range_input`,this.form.minRangeNumericBoxId,{name:t+"minRange",placeholder:this.labels.validationMinRangeHint,events:a}).element,l=this.cf.createNumericBox(this.form,`${e}max_range_input`,this.form.maxRangeNumericBoxId,{name:t+"maxRange",placeholder:this.labels.validationMaxRangeHint,events:a}).element;return n.appendChild(i),n.appendChild(l),n}#c(e,t,a,n){const i=$lib.element(),l=this.#r(`${e}compare_operator_input`,t,n),o=this.#d(`${e}compare_field_input`,a,t,n);return i.appendChild(l),i.appendChild(o),i}#m(e){let t={},a=`${this.form.id}_${e}_`,n=this.form.getTemplateTags(e);return $lib.each(n,i=>{t[i]=`<div id="${a}${i}"></div>`;}),t}};componyx.UI.form_modules.ConfigPanelManager;
141
+
142
+
143
+ var T=Object.defineProperty;var d$1=(b,t)=>T(b,"name",{value:t,configurable:!0});componyx.UI.form_modules=componyx.UI.form_modules||{},componyx.UI.form_modules.DataBinder=class{static{d$1(this,"DataBinder");}#i;#n;#s;#r;#e=[];#o=null;#u=new Map;constructor(t){this.form=t,this.InputTypeOption=this.form.constructor.InputTypeOption,this.#n="data-ui-form-setting",this.form.isBuildMode()?(this.#s=this.checkSetting.bind(this),$bindary.onPreDataBind.add(this.#s)):(this.#r=this.postDataBind.bind(this),$bindary.onPostDataBind.add(this.#r));}get valueHandlers(){return this.#e}destroy(t){$bindary.onPreDataBind.remove(this.#s),$bindary.onPostDataBind.remove(this.#r),this.clearValueHandlers(),t&&$bindary.removeTemplateItem(this.form);}clearValueHandlers(){this.#e.forEach(t=>{$bindary.unregisterValueHandler(t);}),this.#e=[];}checkSetting(t,i){i.hasAttribute(this.#n)&&(this.form.dataObserver.shouldProcessChanges=!0);}isMultiValueField(t){return t.inputType===this.InputTypeOption.CHECKBOX||t.inputType===this.InputTypeOption.SWITCH?!0:t.inputType===this.InputTypeOption.COMBOBOX?this.isMultiSelectComboBox(t):!1}isMultiSelectComboBox(t){return t.componentSettings?.multiSelect?!0:t.inputId&&t.renderedEditComponent?.multiSelect?(console.warn(`Form Field "${t.name}" in Form ${this.form.id} inferred as multiSelect from component. Consider setting componentSettings.multiSelect explicitly.`),!0):!1}postDataBind(t,i,s,n){if(!this.form.contains(i)||this.form.isBuildMode())return;const r=this.form.fieldAttribute,e=i.closest(`[${r}]`),o=e.getAttribute(r),l=this.form.getField(o);this.form.bindToCustomModel&&this.setModelValue(l,n,!1),this.form.ruleEngine.updateRuleDrivenState(l,"value",n,!0),this.form.ruleEngine.applyRules(l);}initModelValue(t){if(this.form.isBuildMode())return;const i=t.inputType===this.InputTypeOption.CHECKBOX||t.inputType===this.InputTypeOption.SWITCH||t.inputType===this.InputTypeOption.COMBOBOX||t.inputType===this.InputTypeOption.RADIO,s=t.inputType===this.InputTypeOption.COMBOBOX&&this.isMultiSelectComboBox(t);if(!i){let e=this.getModelValue(t);$lib.isEmpty(e)&&($lib.isEmpty(t.value)?$lib.isEmpty(t.role?.defaultValue)||this.setModelValue(t,t.role.defaultValue):this.setModelValue(t,t.value));return}let n=[],r=!1;for(const e of t.options??[])!!(e.name||e.bindingKey)?this.getModelValue(e)===void 0&&e.selected&&this.setModelValue(e,e.value??!0):(r=!0,e.selected&&n.push(e.value));if(r){if(this.getModelValue(t)===void 0){const o=t.inputType===this.InputTypeOption.RADIO||t.inputType===this.InputTypeOption.COMBOBOX&&!s?n[0]:n.length?n:[];this.setModelValue(t,o);}}else (t.options??[]).length===0&&this.isMultiValueField(t)&&this.getModelValue(t)===void 0&&this.setModelValue(t,[]);}getModelValue(t){let i=this.getValueBindingKey(t),s=this.form.values;if(!this.form.isPreviewMode()&&this.form.bindToCustomModel&&this.form.customModelGetter){const n=this.form.customModelGetter();n&&(s=n);}return this.#m(s,i)}setModelValue(t,i,s=!0){const n=this.getValueBindingKey(t),r=this.#c(t,i);if(this.#l(this.form.values,n,r),s&&!this.form.isPreviewMode()&&this.form.bindToCustomModel&&this.form.customModelGetter){const e=this.form.customModelGetter();e&&this.#l(e,n,r);}}getValueBindingKey(t){let i=t.parent,s=t.bindingKey||t.name;if(!s&&i?.type==="Field"&&(s=i.bindingKey||i.name),i?.type==="FieldSet"&&i?.repeatable){const n=i.parent.fieldSets,r=i.repeatGroupId?n.find(u=>u.id===i.repeatGroupId):i,e=r.id,o=n.filter(u=>u.id===r.id||u.repeatGroupId===r.id),l=o.findIndex(u=>u.id===i.id),p=l>=0?l:0;return `${e}[${p}].${s}`}return s}#m=d$1((t,i)=>{const s=this.#h(t,i,!1);return s?s.parent[s.lastKey]:void 0},"#getNestedValue");#l=d$1((t,i,s)=>{const n=this.#h(t,i,!0);n&&(s===void 0?delete n.parent[n.lastKey]:n.parent[n.lastKey]=s);},"#setNestedValue");#c(t,i){return i==null&&t?.inputType!==void 0&&this.isMultiValueField(t)?[]:i}bindContext(t){let i=`${$bindary.attributePrefix}context`,s=`${$bindary.attributePrefix}keep`,n=`${$bindary.attributePrefix}live`;this.form.isBuildMode()?(t.setAttribute(i,`$UI.store.${this.form.id}`),t.setAttribute(n,this.form.settingUpdateDelay),t.setAttribute(s,"true")):(this.form.isPreviewMode()||!this.form.bindToCustomModel)&&t.setAttribute(i,`$UI.store.${this.form.id}`);}bindSettingProperties(t,i){const s=Array.isArray(i)?i:[i],n=`[${this.#n}]`,r=s.flatMap(e=>Array.from(e.querySelectorAll(`[contenteditable]${n}, input${n}, textarea${n}`)));for(const e of r)this.bindProperty(t,e),e.tagName==="INPUT"&&(e.type==="hidden"&&this.#d(e,"date-picker",o=>$UI.store[o].getISOValue()),this.#d(e,"numeric-box",o=>$UI.store[o].getNumberValue()));}bindProperty(t,i){const s=this.#y(t),n=i.name||i.dataset.name;n&&(this.#t(i,`${s}.${n}`),i.isContentEditable&&i.setAttribute(`${$bindary.attributePrefix}live`,"false"));}scheduleBindFieldsToModel(t){const i=Array.isArray(t)?t:t?[t]:[];if(!t){this.#p.call(this);return}i.forEach(s=>{s&&s.id&&this.#u.set(s.id,s);}),this.#p.call(this);}#p(){this.#o||(this.#o=setTimeout(()=>{this.#o=null;const t=Array.from(this.#u.values());this.#u.clear(),this.bindFieldsToModel(t);},0));}bindFieldsToModel(t,i){const s=d$1(n=>{n.forEach(r=>{r.fields&&r.fields.forEach(e=>{if(e.autoDataBind===!1||!e.element?.isConnected)return;let o=this.form.bindToCustomModel,l=d$1(u=>((this.form.isPreviewMode()||!o)&&(u="values."+u),u),"resolveBindingKey"),p=l(this.getValueBindingKey(e));if(this.form.isViewMode()){let u;e.type==="ContentField"?(u=e.viewElement.querySelector(`.${this.form.getCssClass(this.form.classOption.CONTENT)}`),u&&u.setAttribute(`${$bindary.attributePrefix}html`,p)):(u=e.viewElement.querySelector(e.viewAsLabel?"span":"input, textarea"),u&&this.#t(u,p,!0,e));}else {let u=Array.from(e.editElement.querySelectorAll("input, textarea")),c=u.filter(a=>a.type==="hidden");if(e.inputType===this.InputTypeOption.NUMERICBOX){const a=$UI.store[this.form.getId(e,"input")],h=a.getInput();this.#t(h,p),this.#a(h,a.id,m=>$UI.store[m].getNumberValue());}else if(e.inputType===this.InputTypeOption.DATEPICKER)this.#t(c[0],p),this.#a(c[0],this.form.getId(e,"input"),a=>$UI.store[a].getISOValue());else if(e.inputType===this.InputTypeOption.EDITOR){const a=$UI.store[this.form.getId(e,"input")],h=a.getEditorElement(),m=d$1(f=>h===f.element,"matcher"),y=d$1(f=>a.getContent(),"getValue"),g=d$1((f,I)=>a.setContent(I),"setValue");this.#t(h,p),this.#e.push($bindary.registerValueHandler(m,y,g));}else e.inputType===this.InputTypeOption.SLIDER?e.componentSettings?.range?this.#t(c.find(a=>a.id===this.form.getId(e,"input_range")),p):this.#t(c[0],p):u.forEach((a,h)=>{if(!(a.name.trim()===""||e.inputType>=this.InputTypeOption.COMBOBOX&&a.type!="hidden")){if(e.inputType===this.InputTypeOption.RADIO&&$lib.isEmpty(this.getValueBindingKey(e))||e.inputType===this.InputTypeOption.CHECKBOX||e.inputType===this.InputTypeOption.SWITCH){let m=e.options.find(y=>y.element===a);m.parent=e,p=l(this.getValueBindingKey(m));}this.#t(a,p);}});}}),r.fieldSets&&r.fieldSets.length>0&&this.bindFieldsToModel(r.fieldSets);});},"processFieldSets");t&&!Array.isArray(t)&&(t=[t]),t||(t=this.form.fieldSets),s(t),this.updateView(this.form.hasDataBindRootContext,i);}cancelUpdate(){clearTimeout(this.#i);}updateView(t,i){clearTimeout(this.#i),this.#i=setTimeout(()=>{let s=$bindary.updateTemplateItem(this.form,!0,!0);i&&$bindary.onPostRender.once(i),$bindary.updateView(!0,!1,t?[s]:null),this.form.dataObserver.restoreActiveState();},0);}#d(t,i,s){const n=t.closest(`.${i}`);if(!n)return;const r=$UI.store[n.id];r&&this.#a(t,r.id,s);}#a(t,i,s){const n=t.id;let r;$lib.isEmpty(n)?r=d$1(e=>e.element===t,"matcher"):r=d$1(e=>e.element.id===n,"matcher"),this.#e.push($bindary.registerValueHandler(r,()=>s(i)));}#h=d$1((t,i,s=!1)=>{const n=i.split(".");let r=t;for(let e=0;e<n.length-1;e++){const o=n[e];if(r[o]==null)if(s)r[o]={};else return;if(r=r[o],typeof r!="object")return}return {parent:r,lastKey:n[n.length-1]}},"#traversePath");#y(t){const i=[];for(;t.parent;){const n=t.parent,r=t.type,e=r==="FieldSet"?"fieldSets":"fields",o=n[e];if(!Array.isArray(o))break;const l=o.findIndex(p=>p.id===t.id);if(l===-1)break;i.unshift(`${e}[${l}]`),t=n;}const s=this.form.fieldSets.findIndex(n=>n.id===t.id);return i.unshift(`fieldSets[${s}]`),i.join(".")}#t(t,i,s,n){let r=s?"value":"bind",e=`${$bindary.attributePrefix+r}`;if(t.setAttribute(e,i),n?.inputType===this.InputTypeOption.DATEPICKER)t.setAttribute($bindary.attributePrefix+"type","date");else if(n?.inputType===this.InputTypeOption.NUMERICBOX){const o=n.componentSettings?.precision,l=o!=null?`number(${o})`:"number";t.setAttribute($bindary.attributePrefix+"type",l);}}};componyx.UI.form_modules.DataBinder;
144
+
145
+
146
+ var I$1=Object.defineProperty;var d=(p,e)=>I$1(p,"name",{value:e,configurable:!0});componyx.UI.form_modules=componyx.UI.form_modules||{},componyx.UI.form_modules.DataObserver=class{static{d(this,"DataObserver");}#u;#h;#t=!1;#n=!1;#S=new Set(["ruleCases","name","selected","element","viewElement","editElement","lineBreakElement","parent"]);#I={Section:new Set(["label"]),FieldSet:new Set(["label","repeatLabel","layout","tooltip","repeatable","maxRepeats","lineBreak","visible","disabled"]),Field:new Set(["label","labelDisplay","placeholder","value","width","tooltip","required","lineBreak","visible","readOnly","disabled","margin","padding","borderWidth","borderRadius","borderColor","backgroundColor","showDivider","height"])};#l={};#F={};#i=null;#s=null;#r=null;#o=null;#e={NONE:0,MINOR:1,MAJOR:2};constructor(e){this.form=e,this.eventName=`componyx.UI.Form.FieldSets.${this.form.id}`,this.history=[],this.historyIndex=-1,this.isTrackingHistory=!0,this.shouldProcessChanges=!1,this.pendingChanges=[],this.maxHistoryLength=e.maxHistoryLength,this.expandedPanelIds=[],this.activeElement=null,this.#l={[this.form.constructor.InputTypeOption.DATEPICKER]:new Set(["today"]),[this.form.constructor.InputTypeOption.MASKEDTEXTBOX]:new Set(["mask"])};}destroy(){this.history=[],this.historyIndex=-1,this.pendingChanges=[],this.expandedPanelIds=[],this.form.removeEventListener(this.eventName,this.#c);}observe(){this.destroy(),this.form.isBuildMode()||(this.form.values=$bindary.observe(this.form.values,`$UI.store.${this.form.id}.values`,{element:this.form})),this.form.isBuildMode()&&(this.form.addEventListener(this.eventName,this.#c),this.form.fieldSets=$bindary.observe(this.form.fieldSets,`$UI.store.${this.form.id}.fieldSets`,{createEvent:d(()=>new CustomEvent(this.eventName,{detail:{},cancelable:!0}),"createEvent"),element:this.form}));}restoreActiveState(){this.#v();}canUndo(){return this.historyIndex>0}canRedo(){return this.historyIndex<this.history.length-1}undo(){if(!this.canUndo())return;const e=this.history[this.historyIndex];this.#t=!0,this.#o=new Promise(t=>{this.#r=t;}),this.#g(e,!0),this.historyIndex--,this.#m().then(()=>{this.#t=!1,this.form.updateCommandStates();});}redo(){if(!this.canRedo())return;this.historyIndex++;const e=this.history[this.historyIndex];this.#t=!0,this.#o=new Promise(t=>{this.#r=t;}),this.#g(e,!1),this.#m().then(()=>{this.#t=!1,this.form.updateCommandStates();});}withoutTracking(e,t){const r=this.isTrackingHistory;this.isTrackingHistory=!1;try{e();}finally{t&&this.processPendingChanges(this.isTrackingHistory),this.isTrackingHistory=r;}}async#m(){return this.#o?this.#o:Promise.resolve()}processPendingChanges(){this.#p(this.isTrackingHistory);}#c=d(e=>{if(this.#n)return;e.preventDefault?.();const t=e.detail,r=t?.dataKey,s=r?.split("."),n=this.isTrackingHistory,i=$bindary.getTemplateItem(this.form);if(this.#T(s)||!i){this.form.scheduleSave();return}this.pendingChanges.push(e.detail),clearTimeout(this.#h),clearTimeout(this.#u),this.#u=setTimeout(()=>this.#p(n),0);},"#onChange");#T(e){for(const t of this.#S)if(e.includes(t))return !0;return !1}#p(e){const t=this.pendingChanges.slice();this.pendingChanges.length=0,t.length!==0&&(!this.#t&&e&&(this.history=this.history.slice(0,this.historyIndex+1),this.historyIndex<0?(this.history.push([]),this.history.push(t),this.historyIndex=1):(this.history.push(t),this.maxHistoryLength&&this.history.length>this.maxHistoryLength&&this.history.shift(),this.historyIndex=this.history.length-1)),!this.#n&&(this.shouldProcessChanges||this.#t)&&(this.#n=!0,this.form.ensureValidFieldSet(),this.form.setParentReferences(this.form.fieldSets),this.#C(t),this.#n=!1,this.form.scheduleSave()),this.#y(),this.shouldProcessChanges=!1);}#g(e,t){(t?[...e].reverse():e).forEach(({dataKey:s,data:n,targetProxy:i,value:l,oldValue:o})=>{const h=s.split("."),a=h[h.length-1];Array.isArray(i)?n.removeIndex!==void 0?t?i.splice(n.removeIndex,0,o):i.splice(n.removeIndex,n.removeCount??1):t?n?.hadValue?i[a]=o:i.splice(Number(a),1):n&&n.removeCount?i.splice(Number(a),1):i[a]=l:t?n?.hadValue?i[a]=o:delete i[a]:n&&n.removeCount?delete i[a]:i[a]=l;}),clearTimeout(this.#h),this.#h=setTimeout(()=>this.#y(),0);}#y(){this.#r?(this.#r(),this.#r=null):this.form.updateCommandStates();}#C(e){const t=new Set,r=new Set,s=new Set,n=this.form.selectedFieldId,i=this.form.selectedFieldSetId;if(this.#P(),this.#A(e,r,s),this.#w(e,r,s),this.#O(e,r,s,t),this.#b(e,t),this.#t){if(n&&this.form.selectedFieldId===n){this.form.deselectField(n),this.form.deselectFieldSet(i);let l=this.form.getField(n);l&&this.form.selectField(l);}else if(i&&this.form.selectedFieldSetId===i){this.form.deselectFieldSet(i);let l=this.form.getField(i);l&&this.form.selectFieldSet(l);}}else this.#v();}#P(){const e=this.form.ownerDocument||document,t=this.activeElement||e.activeElement,r=this.form.configPanelManager.panelBar;this.expandedPanelIds=r.panels.filter(s=>s.expanded).map(s=>s.id),t&&t.id?(this.#i=t.id,["INPUT","TEXTAREA"].includes(t.tagName)&&typeof t.selectionStart=="number"?this.#s={start:t.selectionStart,end:t.selectionEnd}:this.#s=null):this.#i=this.#s=null;}#v(){const e=this.form.configPanelManager.panelBar;if(Array.isArray(this.expandedPanelIds))for(const r of this.expandedPanelIds){const s=e.getPanelById(r);s&&!s.disabled&&e.expandPanel(r,!0);}if(!this.#i)return;const t=$lib("#"+this.#i);t&&(t.focus({preventScroll:!0}),t.scrollIntoView({behavior:"smooth",block:"nearest"}),this.#s&&t.setSelectionRange(this.#s.start,this.#s.end),this.expandedPanelIds=this.#i=this.#s=null);}#A(e,t,r){this.#a("Section",e,t,r,null,{destroy:d(s=>this.form.destroySection(s),"destroy"),render:d(s=>this.form.renderSection(s),"render"),update:d(s=>this.form.updateSection(s),"update")});}#w(e,t,r){this.#a("FieldSet",e,t,r,null,{destroy:d(s=>this.form.destroyFieldSet(s),"destroy"),render:d(s=>this.form.renderFieldSet(s),"render"),update:d(s=>this.form.updateFieldSet(s),"update")});}#O(e,t,r,s){this.#a("Field",e,t,r,s,{destroy:d(n=>this.form.destroyField(n),"destroy"),render:d(n=>this.form.renderField(n),"render"),update:d(n=>this.form.updateField(n),"update")});}#a(e,t,r,s,n,i){const l=this.#R(e,t);for(const{target:o,wasRemoved:h,wasAdded:a,changes:f}of l.values()){const u=o.id;if(this.#f(o,r)&&!this.#f(o,s))continue;if(h){i.destroy(o),r.add(u),s.delete(u),n&&n.add(u);continue}let c=!1,m=!1,g=!1;for(const y of f){const S=this.#f(o,s);if(y.data?.removeIndex!==void 0&&!this.#d(e,o))i.destroy(o),r.add(u),s.delete(u),c=!0,m=!1,n&&n.add(u);else if(c)i.render(o),m=!0,c=!1;else if(!S&&!m){if(a)i.render(o),m=!0;else {const v=this.#x(e,y,o);v===this.#e.MINOR&&!g?(i.update(o),g=!0):v===this.#e.MAJOR&&(i.render(o),m=!0);}n&&n.add(u);}}m&&s.add(u);}}#b(e,t){const r=new Map;for(const{target:s,targetProxy:n,value:i,oldValue:l,data:o}of e){let h=null;if(Array.isArray(n)?o?.removeIndex!==void 0&&l?.type==="FieldOption"?h=l:i?.type==="FieldOption"&&(h=i):s?.type==="FieldOption"&&(h=s),!h)continue;let a=h.parent;!a&&Array.isArray(n)&&(a=this.form.getFields().find(f=>f.options===n)),a&&!t.has(a.id)&&r.set(a.id,a);}for(const s of r.values())this.form.updateFieldOptions(s),t.add(s.id),this.form.configPanelManager.renderOptionsPanel(s);}#R(e,t){const r=new Map,s=d((n,i)=>i==="Field"?this.form.isField(n):n===i,"matchesType");for(const n of t){const{target:i,targetProxy:l,value:o,oldValue:h,data:a}=n;let f=null;if(Array.isArray(l)?a?.removeIndex!==void 0&&s(h?.type,e)?f=h:s(o?.type,e)&&(f=o,h&&!this.#d(e,h)&&r.set(h.id,{target:h,wasRemoved:!0,wasAdded:!1,changes:[n]})):s(i?.type,e)?f=i:e==="Field"&&s(i?.parent?.type,e)&&(f=i.parent),!f)continue;const u=f.id;r.has(u)||r.set(u,{target:f,wasRemoved:!this.#d(e,f),wasAdded:!1,changes:[]});const c=r.get(u),m=Array.isArray(i);c.changes.push(n),!c.wasRemoved&&m&&o!==void 0&&h===void 0&&(c.wasAdded=!0);}return r}#d(e,t){return this.form.isField(e)?t.parent?t.parent.fields?.some(r=>r.id===t.id):!1:e==="FieldSet"?(t.parent?t.parent.fieldSets:this.form.fieldSets)?.some(s=>s.id===t.id):e==="Section"?this.form.fieldSets?.some(r=>r.id===t.id):!1}#f(e,t){let r=e.parent;for(;r;){if(t.has(r.id))return !0;r=r.parent;}return !1}#x(e,t,r){if(this.form.displayMode!==this.form.constructor.DisplayModeOption.BUILD)return this.#e.MAJOR;const s=t.dataKey.split("."),n=s.length,i=s.pop(),l=this.#I[e],o=e=="Field"?r.inputType:null,h=e=="Field"?this.form.constructor.getCustomType(r.customType):null;if(h){if(h.omitProps&&h.omitProps.has(i))return this.#e.NONE;if(h.minorProps&&h.minorProps.has(i))return this.#e.MINOR}return s[n-2]=="validationSettings"?this.#e.MINOR:s[n-2]=="componentSettings"?this.#F[o]?.has(i)?this.#e.NONE:this.#l[o]?.has(i)||l?.has(i)?this.#e.MINOR:this.#e.MAJOR:l?l.has(i)||e==="Field"&&this.#l[o]?.has(i)?this.#e.MINOR:this.#e.MAJOR:this.#e.MAJOR}};componyx.UI.form_modules.DataObserver;
147
+
148
+
149
+ var I=Object.defineProperty;var O$1=(b,e)=>I(b,"name",{value:e,configurable:!0});componyx.UI.form_modules=componyx.UI.form_modules||{},componyx.UI.form_modules.OptionsPanel=class{static{O$1(this,"OptionsPanel");}#t;constructor(e,t){this.form=e,this.cf=e.componentFactory,this.cpm=t,this.InputTypeOption=this.cpm.InputTypeOption;}render(e){const t="FieldOptionsPanel",s=e.panelTemplates?.[t]??t,n=this.cpm.panelBar.panels.find(a=>a.id===t),o=n.contentElement,i=`${this.form.id}_${t}_`,l=this.form.dataSources.some(a=>[a.inputType].flat().includes(e.inputType)),r=[["options"],["dataSourceId","dataSourcePreview"]],d=O$1(()=>{$lib(`#${i}optionsType_static_input`).checked&&(this.form.getFields().find(a=>a.id===e.id).dataSourceId=null,this.form.dataObserver.shouldProcessChanges=!0),this.#m(o,i,"optionsType",r);},"onChange"),c=[{id:"optionsType",label:this.form.labels.fieldOptionsType,type:"radio",name:"optionsType",config:{cssClass:this.cpm.getCssClass(this.cpm.classOption.FIELD_OPTIONS_TYPE)},options:[{value:"static",label:this.form.labels.fieldOptionsTypeStatic,checked:$lib.isEmpty(e.dataSourceId),events:{onchange:d}},{value:"dataSource",label:this.form.labels.fieldOptionsTypeDataSource,checked:!$lib.isEmpty(e.dataSourceId),disabled:!l,events:{onchange:d}}],disableDataBinding:!0}],h=`${i}dataSourcePreview_input`,m=this.cpm.createBindingEvents(e);if(l){const a=!$lib.isEmpty(e.dataSourceId),p={...m};if(c.push({id:"dataSourceId",fieldElement:this.cpm.createDataSourceCombo(`${i}dataSourceId_input`,e.inputType,"dataSourceId",p),config:{showing:a}}),e.dataSourcePreview){const u=a?this.cf.configureComboBox(e):{disabled:!0};c.push({id:"dataSourcePreview",fieldElement:this.#o(h,e,u),config:{showing:a}});}}e.inputType!==this.InputTypeOption.COMBOBOX&&(c.push({id:"inlineOptions",label:this.form.labels.fieldInlineOptions,type:"checkbox",events:{onchange:O$1(a=>{this.cpm.toggleFieldDisplay(i,"optionWidth",a.target.checked);},"onchange")},config:{switch:!0}}),c.push({id:"optionWidth",label:this.form.labels.fieldOptionWidth,fieldElement:this.#n(`${i}optionWidth`,m),config:{showing:e.inlineOptions}})),c.push({id:"options",fieldElement:this.#a(e,n),config:{showing:$lib.isEmpty(e.dataSourceId)}}),this.cpm.renderPanel(e,o,c,s,i),this.cpm.bindProperties(e,o);}#n(e,t){return this.cf.createComboBox(this.form,e,this.form.fieldOptionWidthComboBoxId,{name:"optionWidth",placeholder:this.form.labels.comboBoxDefaultHint,allowInput:!1,itemList:[{id:"0",text:this.form.labels.fieldOptionWidthAuto,value:"auto"},{id:"1",text:this.form.labels.fieldOptionWidth2PerRow,value:"50%"},{id:"2",text:this.form.labels.fieldOptionWidth3PerRow,value:"33%"},{id:"3",text:this.form.labels.fieldOptionWidth4PerRow,value:"25%"}],events:t}).element}#o(e,t,s){const n=this.cf.createComboBox(this.form,e,this.form.previewComboBoxId,{name:"dataSourcePreview",allowInput:!1,_disableDataBinding:!0,_mustRender:!1,multiSelect:t.inputType===this.InputTypeOption.CHECKBOX||t.inputType===this.InputTypeOption.SWITCH||t.componentSettings&&t.componentSettings.multiSelect});return $lib.clone(n,s,!0,!0,!0,!0,!0,null),n.render(),n.element}#a(e,t){const s=e.inputType===this.InputTypeOption.CHECKBOX||e.inputType===this.InputTypeOption.SWITCH,n=e.inputType===this.InputTypeOption.COMBOBOX,o=s||n&&e.componentSettings&&e.componentSettings.multiSelect,i=$lib.element(null,null,"div",null,"",{className:this.cpm.getCssClass(this.cpm.classOption.FIELD_OPTIONS)}),l=$lib.element(i,null,"div",null,"",{className:this.cpm.getCssClass(this.cpm.classOption.FIELD_OPTIONS_HEADER)});return $lib.element(l,null),$lib.element(l,null,"div",this.form.labels.fieldOptionLabelHeader,{title:this.form.labels.fieldOptionLabelHeader}),$lib.element(l,null,"div",this.form.labels.fieldOptionValueHeader,{title:this.form.labels.fieldOptionValueHeader}),$lib.element(l,null,"div",this.form.labels.fieldOptionSelectedHeader,{title:this.form.labels.fieldOptionSelectedHeader}),$lib.element(l,null,"div",this.form.labels.fieldOptionDisabledHeader,{title:this.form.labels.fieldOptionDisabledHeader}),$lib.element(l,null),e.options&&e.options.forEach(r=>{this.#e(i,e,r,o,t);}),this.#e(i,e,new this.form.constructor.FieldOption,o,t),i.addEventListener("input",r=>{if(r.target&&r.target.tagName.toLowerCase()==="input"){const d=r.target,c=d.closest(`.${this.cpm.getCssClass(this.cpm.classOption.FIELD_OPTIONS_ITEM)}`),h=c._option,m=c.querySelectorAll("input"),a=m[0],p=m[1];if(!h)return;const u=!e.options.some(f=>f.id===h.id);if(r.target===a&&(p.value=a.value.trim()),u&&!d.value.trim())return;this.#p(e,h,c);}}),i}#e(e,t,s,n,o){const i=$lib.isEmpty(s.id),l=this.cpm.getCssClass(this.cpm.classOption.FIELD_OPTIONS_ITEM),r=i?`${l} ${this.cpm.getCssClass(this.cpm.classOption.FIELD_OPTIONS_ITEM_NEW)}`:l,d=t.inputType===this.InputTypeOption.RADIO||!n,c=this.form.labels.newItemPrefix+this.form.labels.fieldOption,h=this.form.labels.newItemPrefix+this.form.labels.fieldOptionValue,m=`${this.form.id}_${o.id}_`;this.form.ensureItemId(s);const a=d?this.cf.createRadio(`${m}${s.id}_select`,"selected","",s.selected):this.cf.createCheckbox("","selected","",s.selected),p=$lib.element({container:e,tag:"div",props:{className:r,_option:s}});$lib.element(p,null),$lib.element(p,null,"div",this.cf.createTextInput(`${m}${s.id}_label`,"label",s.label,c)),$lib.element(p,null,"div",this.cf.createTextInput(`${m}${s.id}_value`,"value",s.value,h)),$lib.element(p,null,"div",a),$lib.element(p,null,"div",this.cf.createCheckbox(`${m}${s.id}_disable`,"disabled","",s.disabled));$lib.element(p,null);i||(this.#l(p,t,s,o),this.#s(p,t,s));}#c(e){const t=this.cpm.panelBar.panels.find(l=>l.id==="FieldOptionsPanel"),s=e.inputType===this.InputTypeOption.CHECKBOX||e.inputType===this.InputTypeOption.SWITCH,n=e.inputType===this.InputTypeOption.COMBOBOX,o=s||n&&e.componentSettings?.multiSelect,i=t.contentElement.querySelector("."+this.cpm.getCssClass(this.cpm.classOption.FIELD_OPTIONS));this.#e(i,e,new this.form.constructor.FieldOption,o,t);}#p(e,t,s){const n=s.querySelectorAll("input"),o=e.options.findIndex(i=>i.id===t.id);o>-1&&(t=e.options[o]),this.form.dataObserver.shouldProcessChanges=!0,(e.inputType===this.InputTypeOption.RADIO||e.inputType===this.InputTypeOption.COMBOBOX&&!e.componentSettings?.multiSelect)&&Array.from(n).some(l=>l.name==="selected"&&l.checked)&&e.options.forEach(l=>{l.selected=!1;}),n.forEach(i=>{i.name==="label"?t.label=i.value.trim():i.name==="value"?t.value=i.value.trim():i.name==="selected"?t.selected=i.checked:i.name==="disabled"&&(t.disabled=i.checked);}),t.label||(t.label=`${this.form.labels.fieldOption} ${o>-1?o:e.options.length}`),t.value||(t.value=this.form.getValidFieldNameFromLabel(t.label)),o==-1&&(e.options.push(t),this.#c(e),$lib.removeClass(s,this.cpm.getCssClass(this.cpm.classOption.FIELD_OPTIONS_ITEM_NEW)),s.classList.add(this.cpm.getCssClass(this.cpm.classOption.FIELD_OPTIONS_ITEM)),s._option=t,this.#l(s,e,t),this.#s(s,e,t)),this.#i(e);}#s(e,t,s){const n=`${this.form.id}_FieldOptionsPanel_options_`,o=Array.from(e.children),i=o[5],l=this.cf.createButton(i,`${n}_${s.id}_remove`,this.form.removeFieldOptionButtonId,{hasIcon:!0,cssClassIcon:"ico-bin",cssClass:this.cpm.getCssClass(this.cpm.classOption.REMOVE)});l.command=this.#r.bind(this,t,s,l);}#r(e,t,s){const n=e.options.findIndex(i=>i.id===t.id);n!==-1&&e.options.splice(n,1);const o=s.element.closest("."+this.cpm.getCssClass(this.cpm.classOption.FIELD_OPTIONS_ITEM));o.parentElement.removeChild(o),this.#i(e);}#i(e){clearTimeout(this.#t),this.#t=setTimeout(()=>{this.form.updateFieldOptions(e);},0);}#l(e,t,s,n){const o=e.querySelector("div");n||(n=this.cpm.panelBar.panels.find(i=>i.id==="FieldOptionsPanel")),this.cf.createDragHandle(o),this.cpm.draggable.createDraggableOption({element:e,field:t,option:s,panel:n});}#m(e,t,s,n){const o=Array.from(e.querySelectorAll(`input[name="${s}"]`)),i=o.findIndex(l=>l.checked);n.flat().forEach(l=>{$UI.store[`${t+l}_field`]?.hide();}),(n[i]||[]).forEach(l=>{$UI.store[`${t+l}_field`]?.show();});}};componyx.UI.form_modules.OptionsPanel;
150
+
151
+
152
+ var C=Object.defineProperty;var m=(f,e)=>C(f,"name",{value:e,configurable:!0});componyx.UI.form_modules=componyx.UI.form_modules||{},componyx.UI.form_modules.Renderer=class{static{m(this,"Renderer");}#e;#n;#a;#s;#t={};#i;constructor(e){this.form=e,this.cf=e.componentFactory,this.InputTypeOption=e.constructor.InputTypeOption,this.classOption=e.classOption,this.getCssClass=e.getCssClass,this.sectionTabStrip=null,this.prevButton=null,this.nextButton=null,this.submitButton=null;}get id(){return this.form.id}get labels(){return this.form.labels}get fieldSets(){return this.form.fieldSets}get formPane(){return this.#a?this.#a:this.#a=this.form.querySelector("."+this.getCssClass(this.classOption.FORM_PANE))}get header(){return this.#e}get footer(){return this.#n||(this.#n=$lib.element({container:this.formPane.parentElement,tag:"footer"})),this.#n}get saveStatusElement(){return this.#e.querySelector(`.${this.getCssClass(this.classOption.SAVE_STATUS)}`)}destroy(){this.#s=null,this.clearValueHandlers(),this.sectionTabStrip?.destroy(),this.prevButton?.destroy(),this.nextButton?.destroy(),this.submitButton?.destroy();}clearValueHandlers(){this.#t&&(Object.keys(this.#t).forEach(e=>{$bindary.unregisterValueHandler(this.#t[e]);}),this.#t={});}createHeader(){let e="Header",t=this.getCssClass(this.classOption.TITLE),s=this.getCssClass(this.classOption.SAVE_STATUS),i=this.getCssClass(this.classOption.SPINNER),n=this.getCssClass(this.classOption.SECTION_SWITCH),a=this.getCssClass(this.classOption.COMMANDS),o={title:$lib.format('<h1 class="{0}"></h1>',t),saveStatus:$lib.format('<div class="{0}"><div class="{1}"></div></div>',s,i),sectionSwitch:this.form.isBuildMode()?$lib.format('<div class="{0}"></div>',n):"",commands:this.form.isBuildMode()||this.form.isPreviewMode()?$lib.format('<span class="{0}"></span>',a):""};this.#e=$lib.element(this.form,"","header"),this.form.hasTemplate(e)&&this.form.applyTemplate(this.#e,e,o);const r=this.#e.querySelector("."+t),l=this.#e.querySelector("."+n),h=this.#e.querySelector("."+a),d=this.#e.querySelector("."+s),c=this.form.hasSections();if(r&&(r.innerHTML=this.labels.headerTitle),!this.form.isBuildMode()&&!this.form.isPreviewMode()){d&&(d.style.display="none"),$lib.isEmpty(this.labels.headerTitle)&&(this.#e.style.display="none");return}if(l){const u=`${this.id}_section_switch`,p=this.cf.createCheckbox(`${u}_input`,"","",c,{onchange:m(()=>{this.form.toggleSectionMode();},"onchange")});this.cf.createFormField(l,u,this.form.sectionSwitchFormFieldId,this.labels.sectionSwitch,p,{switch:!0});}if(h){const u=this.form.commands.filter(p=>p.location===this.form.constructor.CommandLocationOption.HEADER);$lib.each(u,(p,b)=>{p.id=p.id||`${this.id}_command_header_${b}`,this.cf.createButton(h,p.id,p.buttonId,{...p,shortcutScope:this.form,primary:!0,hasIcon:!0,disabled:p.isEnabled?!p.isEnabled():!1,showing:p.isVisible?p.isVisible():!0});});}d&&(d.setAttribute("data-busy",this.labels.saveInProgress),d.setAttribute("data-success",this.labels.saveSuccess),d.setAttribute("data-failed",this.labels.saveFailed),d.style.visibility="hidden"),this.form.isBuildMode()&&c&&this.renderSectionTabStrip();}renderSectionTabStrip(e=!1){const t=this.#e.parentNode.querySelector(`:scope > .${this.getCssClass(this.classOption.SECTIONS)}`)||$lib.element({tag:"nav",container:this.#e.parentNode,before:this.#e.nextElementSibling,attrs:{class:this.getCssClass(this.classOption.SECTIONS)}});if(this.sectionTabStrip&&this.sectionTabStrip.destroy(),t.innerHTML="",!this.form.hasSections()){t.remove();return}const s=`${this.form.id}_section_add`,i=this.form.fieldSets.length>1,n=this.form.fieldSets.map(o=>{const r=this.#o(null,o.label,`${o.id}_input`),l=i?$lib.element({tag:"i",attrs:{class:this.getCssClass(this.classOption.SECTION_REMOVE)}}):null,h=i?[r,l]:r,d={id:o.id,content:h,selected:o.selected};return this.form.dataBinder.bindProperty(o,r),i&&$lib.on(l,"click",c=>{c.stopPropagation(),this.form.removeSection(o);}),d}),a=m(()=>setTimeout(()=>{const o=n.find(l=>l.selected),r=o&&$lib(`#${o.id}_input`);r&&(r.focus(),this.#i&&this.#i.id===o.id&&r.setSelectionRange(this.#i.start,this.#i.end)),this.#i=null;},0),"setFocus");n.push({id:s,text:`${this.labels.addItemPrefix}${this.labels.section}`,hasIcon:!0,cssClass:this.getCssClass(this.classOption.SECTION_ADD),cssClassIcon:"ico-plus",selected:!1}),this.sectionTabStrip=this.cf.createComponent(t,componyx.UI.TabStrip,`${this.form.id}_section_tabstrip`,this.form.sectionTabStripId,{itemList:n,alignment:componyx.UI.TabStrip.AlignmentOption.TOP,events:{onPostRender:e?()=>{a();}:null,onItemSelect:m((o,r)=>{if(r.item.id===s)this.form.addSection();else {const l=document.activeElement,h=$lib(`#${r.item.id}_input`);l==h&&(this.#i={id:r.item.id,start:l.selectionStart,end:l.selectionEnd}),this.form.selectSection(this.form.getSection(r.item.id),!0);}},"onItemSelect")}});}createStepIndicator(e){const t=$lib.element({container:e,attrs:{class:this.getCssClass(this.classOption.STEP_INDICATOR)}});this.form.fieldSets.forEach(s=>{const i=$lib.element({container:t,attrs:{id:`${this.form.id}_${s.id}_step`,class:this.getCssClass(this.classOption.STEP)}});$lib.element({container:i,tag:"span",content:s.label});});}ensurePrevButton(){return this.prevButton||(this.prevButton=this.cf.createButton(this.footer,`${this.form.id}_section_prev`,this.form.previousSectionButtonId,{transparent:!1,hasIcon:!0,cssClassIcon:"ico-arrow-l",cssClass:this.getCssClass(this.classOption.SECTION_PREVIOUS),command:this.form.previousSection.bind(this.form),text:this.labels.previous})),this.prevButton}ensureNextButton(){return this.nextButton||(this.nextButton=this.cf.createButton(this.footer,`${this.form.id}_section_next`,this.form.nextSectionButtonId,{transparent:!1,hasIcon:!0,cssClassIcon:"ico-arrow-r",iconAlign:componyx.UI.Button.AlignOption.RIGHT,cssClass:this.getCssClass(this.classOption.SECTION_NEXT),command:this.form.nextSection.bind(this.form),text:this.labels.next,disabled:!0})),this.nextButton}ensureSubmitButton(){return this.submitButton||(this.submitButton=this.cf.createButton(this.footer,`${this.form.id}_submit`,this.submitButtonId,{transparent:!1,primary:!0,cssClass:this.getCssClass(this.classOption.SUBMIT),command:this.form.submit.bind(this.form),text:this.labels.submit,disabled:!0})),this.submitButton}destroySection(e){e.fieldSets&&e.fieldSets.forEach(t=>{this.destroyFieldSet(t);}),e.element&&e.element.remove(),e.element=null,this.renderSectionTabStrip(),this.form.buildPanelManager.scheduleNavigatorUpdate();}renderSection(e){const t=this.fieldSets.findIndex(i=>i.id===e.id),s=this.getNextConnectedElement(this.fieldSets,t);this.createSection(e),this.formPane.insertBefore(e.element,s),e.fieldSets.forEach(i=>this.renderFieldSet(i)),this.form.buildPanelManager.scheduleNavigatorUpdate();}updateSection(e){const t=$lib(`#${e.id}_input`);t.value=e.label,this.form.buildPanelManager.scheduleNavigatorItemUpdate(e);}destroyFieldSet(e){e.element&&(e.fieldSets&&e.fieldSets.forEach(t=>{this.destroyFieldSet(t);}),$lib.isEmpty(e.fields)||e.fields.forEach(t=>{this.destroyField(t);}),e.element&&e.element.remove(),e.element=null,this.form.removeLineBreak(e,!1),this.form.rebindFieldSetLabels(),this.form.rebindFieldElements(),!this.form.isBuildMode()&&e.parent&&e.parent.type==="FieldSet"&&e.repeatable&&this.#$(e),this.form.autoDataBindFields&&!this.form.isBuildMode()&&this.form.dataBinder.scheduleBindFieldsToModel(e.parent),this.form.buildPanelManager.scheduleNavigatorUpdate());}renderFieldSet(e){this.form.ensureItemId(e);const t=e.parent,s=this.form.selectedFieldSetId===e.id||e.selected,i=t?.element||this.formPane,n=t?.fieldSets||this.fieldSets,a=n.findIndex(r=>r.id===e.id),o=this.getNextConnectedElement(n,a);s&&this.form.deselectFieldSet(),this.createFieldSet(e),i.insertBefore(e.element,o),e.lineBreakElement&&e.element.parentElement.insertBefore(e.lineBreakElement,e.element),e.fieldSets&&e.fieldSets.forEach(r=>this.renderFieldSet(r)),e.fields&&e.fields.forEach(r=>this.renderField(r)),this.form.rebindFieldSetLabels(),this.form.rebindFieldElements(),s&&this.form.selectFieldSet(e),this.form.buildPanelManager.scheduleNavigatorUpdate();}updateFieldSet(e,t=!0){this.#r(e),this.#S(e),this.#I(e),this.#y(e),this.#g(e),this.#A(e),this.#X(e),!this.form.isBuildMode()&&e.parent&&e.parent.type==="FieldSet"&&e.repeatable&&this.#$(e),t&&this.form.events.onUpdateFieldSet.fire(this.form,{fieldSet:e}),this.form.buildPanelManager.scheduleNavigatorItemUpdate(e),this.form.renderState==$base.static.RenderState.RENDERED&&(this.form.isEditMode()||this.form.isPreviewMode())&&this.form.validationManager.validator.validate(this.form,!0);}renderField(e){this.form.ensureItemId(e),this.destroyField(e);const t=this.form.getFieldContext(e),s=this.form.selectedFieldId===e.id||e.selected;if(s&&(this.form.deselectFieldSet(),this.form.deselectField()),!t){s&&this.selectFirst();return}let i;if(t.fieldSet.element?.isConnected){if(i=$lib(this.getCssClass(this.classOption.FIELD_PANE),t.fieldSet.element,"",!0),this.createField(e,i),t.isLastField)i.appendChild(e.element);else {const n=t.fieldSet.fields,a=n.findIndex(r=>r.id===e.id),o=this.getNextConnectedElement(n,a);i.insertBefore(e.element,o||null);}e.lineBreakElement&&i.insertBefore(e.lineBreakElement,e.element);}else i=this.createFieldSet(t.fieldSet),this.createField(e,i);this.form.autoDataBindFields&&!this.form.isBuildMode()&&this.form.dataBinder.scheduleBindFieldsToModel([e.parent]),this.form.rebindFieldElements(e.parent),s&&this.form.selectField(e),this.form.buildPanelManager.scheduleNavigatorUpdate();}updateField(e,t=!0){const s=$UI.store[e.element.id],i=this.form.constructor.getCustomType(e.customType),n=componyx.UI.FormField.LabelDisplayOption;if(this.form.isViewMode()||(s.setRequired(e.required||!1),this.form.validationManager.updateRequiredRule(e)),this.#w(e.parent),this.#r(e),this.#g(e),this.#I(e),this.#y(e),this.#U(e),this.form.isViewMode()||this.#V(e),this.form.isBuildMode()?(s.setLabelDisplay(e.labelDisplay==n.FLOATING||e.labelDisplay==n.INSIDE?n.ABOVE:e.labelDisplay||0),this.#P(e),e.type==="ContentField"?this.#k(e):e.type==="SpacerField"&&this.#c(e)):(s.setLabelDisplay(e.labelDisplay||0),s.linkLabelToInput()),e.type==="Field"&&!this.form.isViewMode())if(i)i.updater&&i.updater(this.form,e);else if(e.inputType===this.InputTypeOption.TEXTBOX||e.inputType===this.InputTypeOption.TEXTAREA){const a=this.#T(e),o=e.editElement.querySelector("input, textarea");this.#b({input:o,name:e.name,value:a,placeholder:e.placeholder,disabled:e.disabled,readOnly:e.readOnly});}else e.inputType>=this.InputTypeOption.MASKEDTEXTBOX&&(this.form.isBuildMode()&&this.#O(e),(!this.form.isBuildMode()||e.inputType!=this.InputTypeOption.COMBOBOX)&&(this.form.renderState!==$base.static.RenderState.RENDERED&&this.form.classList.remove("hidden"),this.#q(e),this.form.renderState!==$base.static.RenderState.RENDERED&&this.form.classList.add("hidden")));this.form.renderState==$base.static.RenderState.RENDERED&&(this.form.isEditMode()||this.form.isPreviewMode())&&this.form.validationManager.validator.validate(this.form,!0),t&&this.form.events.onUpdateField.fire(this.form,{field:e}),this.form.buildPanelManager.scheduleNavigatorItemUpdate(e);}updateFieldOptions(e){!e.editElement||!this.form.isBuildMode()||(e.inputType==this.InputTypeOption.COMBOBOX?this.#O(e):(e.editElement.innerHTML="",this.#u(e,e.editElement),this.#l(e)));}destroyField(e){const t=`${this.id}_${e.id}`;if(!(!e.element||!$UI.store[t])){if(e.type==="ContentField"&&this.#s){const s=this.form.getId(e,"content"),i=this.#s.editableElements.findIndex(n=>n.id===s);i!==-1&&(this.#s.editableElements.splice(i,1),this.#t[s]&&($bindary.unregisterValueHandler(this.#t[s]),delete this.#t[s]));}$lib.each(e.options,function(s,i){$UI.store[`${t}_${i}`]&&$UI.store[`${t}_${i}`].destroy(),s.element=null;}),e.inputType>this.InputTypeOption.SWITCH&&$UI.store[t+"_input"].destroy(),$UI.store[t].destroy(),e.element=e.editElement=e.viewElement=null,this.form.removeLineBreak(e,!1),this.form.rebindFieldElements(e.parent),this.form.buildPanelManager.scheduleNavigatorItemUpdate(e,!0);}}getNextConnectedElement(e,t){for(let s=t+1;s<e.length;s++){const i=e[s],n=i.lineBreakElement||i.element;if(n?.isConnected)return n}return null}createSection(e){$lib.isEmpty(e.id)&&this.form.ensureItemId(e);let t=e.element,s=e.id,i=`SectionHeader_${s}`,n=`SectionFooter_${s}`;return t?t.innerHTML="":(t=$lib.element(this.formPane,"","section"),t.id=`${this.id}_${e.id}`),e.element=t,this.#v(e),!this.form.hasTemplate(i)&&e.headerTemplate&&this.form.addTemplate(i,e.headerTemplate),!this.form.hasTemplate(n)&&e.footerTemplate&&this.form.addTemplate(n,e.footerTemplate),this.form.hasTemplate(i)&&this.form.applyTemplate($lib.element(t,"","header"),i,e),this.form.hasTemplate(n)&&this.form.applyTemplate($lib.element(t,"","footer"),n,e),e.element}createFieldSet(e){this.form.ensureItemId(e);let t=e.id,s=e.element,i,n=`Header_${t}`,a=`Footer_${t}`,o=e.parent?.element||this.formPane,r=o.querySelector("footer"),l=e.parent?.fieldSets||this.fieldSets,h=l.findIndex(u=>u.id===e.id),d=!$lib.isEmpty(e.tooltip);if(!s||!s.isConnected){s=$lib.element({tag:"fieldset",props:{id:`${this.id}_${t}`}});const u=this.getNextConnectedElement(l,h);o.insertBefore(s,u||r),e.element=s,i=$lib.element({attrs:{class:this.getCssClass(this.classOption.FIELD_PANE)}});}else i=$lib(this.getCssClass(this.classOption.FIELD_PANE),s,"",!0),s.innerHTML="",s.className="";i.setAttribute("data-placeholder",this.labels.fieldPaneEmptyHint);const c=$lib.element(s,"","legend",this.form.isBuildMode()?"":[e.label]);return this.form.isBuildMode()&&(this.#o(c,e.label),$lib.on(c,"click",()=>{c.querySelector("input").focus();})),(this.form.isBuildMode()||d)&&$lib.element({container:c,tag:"i",attrs:{class:this.getCssClass(this.classOption.ICON)+" "+this.getCssClass(this.classOption.TOOLTIP_ICON)}}),!this.form.isBuildMode()&&!d&&$lib.isEmpty(e.label)&&(c.style.display="none"),!this.form.hasTemplate(n)&&e.headerTemplate&&this.form.addTemplate(n,e.headerTemplate),!this.form.hasTemplate(a)&&e.footerTemplate&&this.form.addTemplate(a,e.footerTemplate),this.form.hasTemplate(n)&&this.form.applyTemplate($lib.element(s,"","header"),n,e),s.appendChild(i),this.form.hasTemplate(a)&&($lib.element(s,"","p","",{class:this.getCssClass(this.classOption.FILLER)}),this.form.applyTemplate($lib.element(s,"","footer"),a,e)),this.form.isBuildMode()&&this.#C(e),this.updateFieldSet(e,!1),this.form.events.onRenderFieldSet.fire(this,{fieldSet:e}),i}createField(e,t){this.form.ensureItemId(e);let s=!this.form.isBuildMode()&&e.hideLabel!==!0&&e.type!=="ContentField"&&e.type!=="SpacerField",i=s?$lib.element({tag:"span",content:e.label}):"",n=this.cf.createFormField(t,this.id+"_"+e.id,e.formFieldId,s?[i]:"",this.#B(e),{inline:!1,borderless:!1,cssClass:e.cssClass,style:e.style,required:this.form.isViewMode()?!1:e.required,labelDisplay:$lib.isEmpty(e.labelDisplay)?$lib.isEmpty(this.form.labelDisplay)?void 0:this.form.labelDisplay:e.labelDisplay},this.#D.bind(this,e));e.element=n.element;}updateLabel(e){this.#r(e);}#o(e,t,s){return $lib.element({container:e,tag:"input",attrs:{"data-ui-form-setting":""},props:{id:s,type:"text",name:"label",value:t,placeholder:this.labels.labelPlaceholder}})}#S(e){const t=e.element,s=t.classList,i=$lib.isEmpty(e.layout)?0:parseFloat(e.layout),n=this.form.constructor.FieldSetLayoutOption;s.remove(this.getCssClass(this.classOption.LAYOUTLESS),this.getCssClass(this.classOption.BANNERED)),i===n.NONE?t.classList.add(this.getCssClass(this.classOption.LAYOUTLESS)):i===n.BANNERED&&t.classList.add(this.getCssClass(this.classOption.BANNERED));}#v(e){const t=e.element;e.cssClass?t.className=e.cssClass:t.removeAttribute("class"),e.style?t.style=e.style:t.removeAttribute("style");}#B(e){let t=$lib.element();if(this.form.isViewMode()){let s=$lib.element(t);s.className=this.getCssClass(this.classOption.VIEW_FIELD),e.viewElement=s;}else {let s=$lib.element(t);s.className=this.getCssClass(this.classOption.EDIT_FIELD),e.editElement=s;}return this.form.isBuildMode()&&e.type!=="ContentField"&&(t.inert=!0),t}#M(e,t,s){let i=e.viewTemplateId||"View_"+e.id,n=!0;if(!this.form.hasTemplate(i)&&e.viewTemplate&&this.form.addTemplate(i,e.viewTemplate),this.form.hasTemplate(i))this.form.applyTemplate(t,i,e);else if(e.type==="ContentField")this.#h(e);else if(e.type==="SpacerField")this.#m(e);else if(e.customType){const a=this.form.constructor.getCustomType(e.customType);if(a&&a.renderer)a.renderer(this.form,e,t,!0,s),n=!1;else {let o=a.getter?a.getter(e):e.value,r=$lib.element(t,"","span");r.textContent=o,r.classList.add(this.getCssClass(this.classOption.READONLY));}}else {let a=e.viewAsLabel?"span":"input",o;(e.inputType===this.InputTypeOption.TEXTAREA||e.inputType===this.InputTypeOption.EDITOR)&&(a="textarea"),e.viewElementId?(o=t.appendChild(this.form.getSourceElement(e.viewElementId)),a=o.nodeName.toLowerCase()):(o=$lib.element(t,"",a),!e.viewAsLabel&&a=="input"&&(o.type="text")),o.textContent=e.value,o.classList.add(this.getCssClass(this.classOption.READONLY)),(a=="input"||a=="textarea")&&(o.readOnly=!0,o.name=e.name||"",o.placeholder=e.placeholder||""),$lib.isEmpty(e.width)||(o.width=$lib.unit(e.width));}this.form.events.onRenderViewTemplate.fire(this.form,{field:e}),n&&s();}#L(e,t,s){let i=e.editTemplateId||"Edit_"+e.id,n=!0;if(!this.form.hasTemplate(i)&&e.editTemplate&&this.form.addTemplate(i,e.editTemplate),this.form.hasTemplate(i))this.form.applyTemplate(t,i,e);else if(e.type==="ContentField")this.form.isBuildMode()?(this.#N(e,s),n=!1):this.#h(e);else if(e.type==="SpacerField")this.#m(e);else {const a=this.form.constructor.getCustomType(e.customType);if(a)a.renderer&&(e.renderedEditComponent=a.renderer(this.form,e,t,!1,s)),n=!1;else if(e.inputType<=this.InputTypeOption.TEXTAREA)e.renderedEditComponent=this.#x(e,t);else if(e.inputType<=this.InputTypeOption.SWITCH)n=!1,this.#u(e,t,s);else {let o=this.cf.getComponentConfig(e,!this.form.isBuildMode());o.events.onPostRender=s,n=!1,e.renderedEditComponent=this.cf.createComponent(t,this.cf.getComponentType(e.inputType),this.form.getId(e,"input"),e.inputId,o);}this.#l(e);}this.form.events.onRenderEditTemplate.fire(this.form,{field:e}),n&&s();}#l(e){if(!this.form.isBuildMode()){const t=$lib.element({container:e.editElement,attrs:{class:this.getCssClass(this.classOption.FEEDBACK)}});$lib.element({container:t,tag:"span",attrs:{class:this.getCssClass(this.classOption.RULE_FEEDBACK)}}),$lib.element({container:t,attrs:{class:this.getCssClass(this.classOption.VALIDATION_FEEDBACK)}});}}#N(e,t){const s=this.#d(e);this.form.ownerDocument||document;const n=m(a=>{const o=m(l=>s.id===l.element.id,"matcher"),r=m(l=>this.#s.getValue(l),"getValue");this.#t[s.id]&&$bindary.unregisterValueHandler(this.#t[s.id]),this.#t[s.id]=$bindary.registerValueHandler(o,r),this.form.dataBinder.updateView(!0),t&&t();},"wrappedCallback");if(s.id=this.form.getId(e,"content"),s.dataset.name="value",this.form.dataBinder.bindProperty(e,s),this.#s)this.#s.addEditableElement({element:s}),n();else {const a={...e.componentSettings,editableElements:[{element:s}],events:{onPostRender:n}};this.#s=this.cf.createComponent(this.form,componyx.UI.Editor,`${this.form.id}_content_field_editor`,this.form.contentFieldEditorId,a);}}#h(e){const t=this.#d(e);t.innerHTML=e.trustHTML?e.value:this.sanitizer?this.form.sanitizer(e.value):this.form.getSanitizer().sanitize(e.value);}#d(e){const t=this.form.isViewMode()?e.viewElement:e.editElement,s=$lib.element({container:t,attrs:{class:this.getCssClass(this.classOption.CONTENT)}});return this.#p(e),this.form.isViewMode()||(s.contentEditable=!0),s}#p(e){const t=this.form.isViewMode()?e.viewElement:e.editElement,s=t.querySelector(`:scope > .${this.getCssClass(this.classOption.CONTENT)}`),i=s.style,n=[{prop:"margin",unit:!0},{prop:"padding",unit:!0},{prop:"borderWidth",unit:!0},{prop:"borderColor",rgba:!0},{prop:"borderRadius",unit:!0},{prop:"backgroundColor",rgba:!0}];for(const{prop:a,unit:o,rgba:r}of n)!$lib.isEmpty(e[a])&&e[a]!="0"?i[a]=o?$lib.unit(e[a]):r?`rgba(${e[a]})`:e[a]:i.removeProperty(a);}#m(e){const t=this.form.isViewMode()?e.viewElement:e.editElement,s=$lib.element({container:t,attrs:{class:this.getCssClass(this.classOption.SPACER)}});return this.#c(e),s}#c(e){const t=this.form.isViewMode()?e.viewElement:e.editElement,s=t.querySelector(`:scope > .${this.getCssClass(this.classOption.SPACER)}`),i=this.getCssClass(this.classOption.DIVIDER);e.height?s.style.height=$lib.unit(e.height):s.style.removeProperty("height"),e.showDivider?s.classList.add(i):s.classList.remove(i);}#x(e,t){return e.inputId?t.appendChild(this.form.getSourceElement(e.inputId)):this.cf.createInput({type:e.inputType==this.InputTypeOption.TEXTAREA?"textarea":"text",container:t})}#u(e,t,s=()=>{}){const i=e.inlineOptions&&!$lib.isEmpty(e.optionWidth)&&e.optionWidth!="auto",n=m(()=>{$lib.element({container:t,content:this.labels.addItemPrefix+this.labels.fieldOption,attrs:{class:this.getCssClass(this.classOption.EMPTY)}});},"createEmpty"),a=m(r=>{const l=e.inputType===this.InputTypeOption.RADIO,h=r.inputId?this.form.getSourceElement(r.inputId):e.inputId?this.form.getSourceElement(e.inputId):$lib.element("","","input",""),d=i?{style:`flex-basis:${e.optionWidth}`}:{inline:e.inlineOptions||!1};e.inputType===this.InputTypeOption.SWITCH&&(d.switch=!0),this.form.ensureItemId(r),this.#b({input:h,name:e.name,value:r.value,disabled:r.disabled}),h.checked=r.selected,h.type=l?"radio":"checkbox",this.cf.createFormField(o,this.form.getId(e,`${r.id}_field`),r.formFieldId,r.label,h,d),r.element=h,this.form.events.onRenderEditFieldOption.fire(this.form,{field:e,option:r});},"createOption");t.innerHTML="";const o=$lib.element({container:t,attrs:{class:this.getCssClass(this.classOption.FIELD_OPTIONS)}});e.inlineOptions&&o.classList.add(this.getCssClass(this.classOption.FIELD_OPTIONS_INLINE)),i&&o.classList.add(this.getCssClass(this.classOption.FIELD_OPTIONS_ROW)),e.dataSourceId?this.#f(e).then(r=>{r.itemList.length>0?r.itemList.forEach(l=>{a({id:l.id||this.form.guid(),name:e.name,value:l.value,label:l.text||l.value,selected:l.selected,disabled:l.disabled});}):n(),s();}):$lib.isEmpty(e.options)?(n(),s()):(e.options.forEach(a),s());}async#f(e){const t={itemList:[]},s=this.form.dataSources.find(n=>n.id===e.dataSourceId);return s&&this.form.fetchFromEndpoint(s,{form:this.form,field:e})||t}#b({input:e,name:t,value:s,placeholder:i,disabled:n,readOnly:a}){e.name=t||"",e.value=s||"",e.placeholder=i||"",e.disabled=$lib.isEmpty(n)?!1:n,e.readOnly=$lib.isEmpty(n)?!1:a;}async#D(e,t){if(e){let s=t.element;if(s.setAttribute(this.form.fieldAttribute,e.id),e.element=s,this.form.isBuildMode()){let n=s.querySelector(":scope > label");if(e.type==="FieldSet"||e.type==="Field"){const a=this.#o(n,e.label);e.type==="Field"&&(a.onblur=o=>{if(this.form.autoNameCandidates.has(e.id)){const r=$lib(`#${this.form.id}_FieldPanel_name_input`);if(r){const l=o.target.value.trim(),h=this.form.getValidFieldNameFromLabel(l),d=new FocusEvent("blur",{bubbles:!0,cancelable:!0});r.value=`${h}`,r.dispatchEvent(d);}}});}else n.classList.add(this.getCssClass(this.classOption.DISABLED)),n.textContent=e.label;this.#C(e);}const i=m(()=>{this.form.events.onRenderField.fire(this.form,{field:e}),this.form.dataBinder.initModelValue(e),this.updateField(e,!1);},"callback");this.form.isViewMode()?this.#M(e,e.viewElement,i):this.#L(e,e.editElement,i);}}#C(e){e.type==="Field"&&e.cssClassIcon&&$lib.element({container:e.element,tag:"i",attrs:{class:`${this.getCssClass(this.classOption.ICON)} ${e.cssClassIcon}`.trim()}}),this.#R(e),this.cf.createDragHandle(e.element),this.form.draggable.createDraggableField(e),this.#_(e);}#R(e){const t=$lib.element(e.element,"","","",{class:this.getCssClass(this.classOption.BUILD_MENU)}),s=m((i,n)=>{const a=i.type==="FieldSet"?this.form.addFieldSet.bind(this.form,i,n):this.form.addField.bind(this.form,i,n);return ()=>{a(),setTimeout(()=>{(this.form.ownerDocument||document).activeElement?.blur();},0);}},"addAction");this.cf.createButton(t,this.form.getId(e,"remove"),this.form.removeFieldButtonId,{hasIcon:!0,cssClassIcon:"ico-bin",cssClass:this.getCssClass(this.classOption.REMOVE),command:e.type==="FieldSet"?this.form.removeFieldSet.bind(this.form,e,!0):this.form.removeField.bind(this.form,e,!0)}),this.cf.createButton(t,this.form.getId(e,"clone"),this.form.cloneFieldButtonId,{hasIcon:!0,cssClassIcon:"ico-copy",cssClass:this.getCssClass(this.classOption.CLONE),command:s(e,!0)}),this.cf.createButton(t,this.form.getId(e,"add"),this.form.addFieldButtonId,{hasIcon:!0,cssClassIcon:"ico-plus",cssClass:this.getCssClass(this.classOption.ADD),command:s(e,!1)});}#_(e){$lib.has(e.element,"click",this.#E)||$lib.on(e.element,"click",this.#E,[e],this);}#E(e,t){t.target.closest(`.${this.getCssClass(this.classOption.BUILD_MENU)}`)||(e.type==="FieldSet"?this.form.selectFieldSet(e):this.form.selectField(e),t.stopPropagation());}#I(e){const t=e.element,s=this.getCssClass(this.classOption.DISABLED);if(e.disabled)t.classList.add(s),this.form.isBuildMode()||(t.inert=!0);else {if(this.form.isViewMode())return;t.classList.remove(s),t.inert=!1;const i=[this.InputTypeOption.CHECKBOX,this.InputTypeOption.SWITCH,this.InputTypeOption.RADIO].includes(e.inputType);e.type==="Field"&&(e.inputType===this.InputTypeOption.COMBOBOX?(e.options||[]).forEach(n=>{const a=$UI.store[this.form.getId(e,"input")];n.disabled?a.disableItem(n.id):a.enableItem(n.id);}):i&&(e.options||[]).forEach(n=>{n.element.disabled=n.disabled;}));}}#y(e){const t=e.element,s=this.getCssClass(this.classOption.INVISIBLE);this.form.isBuildMode()?e.visible?t.classList.remove(s):t.classList.add(s):t.style.display=e.visible!==!1?"":"none";}#w(e){let t=0;(e.fields||[]).forEach((s,i)=>{const n=s.width?.toString().endsWith("%")?parseFloat(s.width):0;!s.lineBreak&&(i===0||n>=100||t>=100||t+n>100)&&this.form.addLineBreak(s),t=s.lineBreak?n:t+n;});}#r(e){if(!(e.type!=="FieldSet"&&e.type!=="Field"))if(e.type==="Field"){if(!this.form.isBuildMode())$UI.store[e.element.id].updateLabel(e.label);else {const t=e.element.querySelector(":scope > label > input");t&&(t.value=e.label);}return}else {const t=":scope > legend",s=e.element.querySelector(this.form.isBuildMode()?`${t} > input`:t);s&&(s.nodeName==="INPUT"?s.value=e.label:e.tooltip?s.firstChild.textContent=e.label:s.textContent=e.label);}}#g(e){const t=e.lineBreak;!t&&e.lineBreakElement?.isConnected&&this.form.removeLineBreak(e),t&&!e.lineBreakElement?.isConnected&&this.form.addLineBreak(e);}#A(e){const t=e.element.querySelector(`.${this.getCssClass(this.classOption.TOOLTIP_ICON)}`),s=this.form.tooltipManager,i=s.hasTemplate(e.id);t&&(t.style.display=$lib.isEmpty(e.tooltip)?"none":"",$lib.isEmpty(e.tooltip)&&i?s.removeTooltip(e.id):!$lib.isEmpty(e.tooltip)&&!i&&(s.addTooltip(e.id,e.tooltip),s.addTrigger(t,e.id)));}#P(e){let t=this.getCssClass(this.classOption.FIELD_INDICATORS),s=e.element.querySelector(`.${t}`),i=["type","compareOperator","parent"];s||(s=$lib.element({container:e.element,attrs:{class:t}}));let n=s.querySelector(`.${this.getCssClass(this.classOption.RULES_ICON)}`),a=s.querySelector(`.${this.getCssClass(this.classOption.VALIDATOR_ICON)}`);e.ruleCases?.length?n||$lib.element({container:s,tag:"i",attrs:{class:`${this.getCssClass(this.classOption.ICON)} ${this.getCssClass(this.classOption.RULES_ICON)}`}}):n?.remove(),e.required||Object.entries(e.validationSettings??{}).some(([o,r])=>!i.includes(o)&&!$lib.isEmpty(r))?a||$lib.element({container:s,tag:"i",attrs:{class:`${this.getCssClass(this.classOption.ICON)} ${this.getCssClass(this.classOption.VALIDATOR_ICON)}`}}):a?.remove(),s.childNodes.length||s.remove();}#V(e){const t=$UI.store[e.element.id],s=this.form.tooltipManager,i=s.hasTemplate(e.id);t.tooltipManagerId=s.id,t.tooltipId=$lib.isEmpty(e.tooltip)?null:e.id,$lib.isEmpty(e.tooltip)&&i?s.removeTooltip(e.id):!$lib.isEmpty(e.tooltip)&&!i&&s.addTooltip(e.id,e.tooltip),t.updateTooltip();}#U(e){const t=e.element;if($lib.isEmpty(e.width)){t.style.removeProperty("width");return}let s=e.width.toString().trim().endsWith("%"),i=e.width;if(s){const n=parseInt(i,10);if(100%n&&(i=(100/Math.round(100/n)).toFixed(6)+"%"),this.form.isBuildMode()){const a=this.getInlineFieldCount(e);t.style.width=`calc(${i} - var(--field-margin-right, 0px) - (var(--droppable-margin, 0px) / ${a}))`;}else t.style.width=`calc(${i} - var(--field-margin-right, 0px))`;}else t.style.width=$lib.unit(i);}getInlineFieldCount(e){const t=e.parent.fields,s=t.findIndex(a=>a.id===e.id);if(s===-1)return 1;let i=s;for(;i>0&&!t[i].lineBreak;)i--;let n=s+1;for(;n<t.length&&!t[n].lineBreak;)n++;return t.slice(i,n).length||1}#T(e){return this.form.isBuildMode()?e.value:this.form.dataBinder.getModelValue(e)}#O(e){const t=$UI.store[this.form.getId(e,"input")];if(e.inputType===this.InputTypeOption.COMBOBOX){const s=m(i=>i>0?`${e.placeholder?`${e.placeholder} `:""}(${i} ${this.labels.fieldOptions})`:e.placeholder,"getPlaceholderValue");e.dataSourceId?this.#f(e).then(i=>{t.setPlaceholder(s(i.totalItemCount||i.itemList.length));}):t.setPlaceholder(s(e.options?.length||0));}else e.inputType===this.InputTypeOption.MASKEDTEXTBOX?t.mask=e.componentSettings?.mask:t.setPlaceholder&&t.setPlaceholder(e.placeholder);}#k(e){this.form.isBuildMode()&&(this.#H(e),this.#p(e));}#H(e){const t=this.#s;if(!t||t.renderState!=$base.static.RenderState.RENDERED)return;const s=this.form.getId(e,"content"),i=t.editableElements.findIndex(n=>n.id===s);i!==-1&&t.getValue()!==e.value&&t.setValue(e.value,t.editableElements[i]);}#q(e){const t=$UI.store[this.form.getId(e,"input")],s=e.componentSettings||{};if(t.renderState!=$base.static.RenderState.RENDERED)return;let i=t.getValue(),n=this.#T(e);if(e.inputType===this.InputTypeOption.COMBOBOX){const a=i?i.split(",").map(l=>l.trim()):[],o=Array.isArray(n)?n:[];a.length===o.length&&a.every((l,h)=>l===o[h])||t.suppressNextChangeEvent(()=>{t.setValue(o.join(","));});}else if(e.inputType===this.InputTypeOption.DATEPICKER){let a=n;!n&&s.today&&(a=$lib.formatDate(new Date,t.dateFormat)),a!==i&&t.suppressNextChangeEvent(()=>{t.setValue(a);});}else e.inputType>=this.InputTypeOption.MASKEDTEXTBOX&&t.setValue&&i!=n&&t.suppressNextChangeEvent(()=>{t.setValue(n??null);});}#X(e){const t=this.form.getId(e,"add_repeat"),s=e.parent&&e.parent.type==="FieldSet"&&e.repeatable&&!e.repeatGroupId,i=$UI.store[t],n=e.repeatLabel||e.label,a=n?`${this.labels.addItemPrefix} ${n}`:this.labels.fieldSetRepeatButton;if(i&&!i.element?.isConnected&&i.destroy(),s)if(e.element.classList.add(this.getCssClass(this.classOption.REPEATABLE)),!i||!i.renderState){const o=e.element;this.cf.createButton(o,t,this.form.addRepeatButtonId,{hasIcon:!0,transparent:!1,cssClassIcon:"ico-plus",text:a,cssClass:this.getCssClass(this.classOption.REPEAT_ADD),command:this.form.addRepeatedFieldSet.bind(this.form,e)});}else i.text=a,i.updateContent();else !s&&i&&i.destroy();}#$(e){if(this.#F(this.form.values,e),this.form.bindToCustomModel&&this.form.customModelGetter){const t=this.form.customModelGetter();t&&this.#F(t,e);}}#F(e,t){const s=t.parent.fieldSets,i=t.repeatGroupId?s.find(l=>l.id===t.repeatGroupId):t,n=i.id,a=s.filter(l=>l.id===i.id||l.repeatGroupId===i.id),o=a.findIndex(l=>l.id===t.id),r=o>=0?o:0;Array.isArray(e[n])||(e[n]=[]),e[n][r]||(e[n][r]={}),e[n].length>a.length&&(e[n].length=a.length);}};componyx.UI.form_modules.Renderer;
153
+
154
+
155
+ var O=Object.defineProperty;var u=(t,e)=>O(t,"name",{value:e,configurable:!0});componyx.UI.form_modules=componyx.UI.form_modules||{};const g={equal:u((t,e)=>Array.isArray(t)&&Array.isArray(e)?t.length===e.length&&t.every(i=>e.includes(i)):Array.isArray(t)?t.includes(e):Array.isArray(e)?e.includes(t):t===e,"equal"),not_equal:u((t,e)=>Array.isArray(t)&&Array.isArray(e)?!(t.length===e.length&&t.every(i=>e.includes(i))):Array.isArray(t)?!t.includes(e):Array.isArray(e)?!e.includes(t):t!==e,"not_equal"),greater_than:u((t,e)=>Array.isArray(t)?t.length>e:t>e,"greater_than"),greater_than_or_equal:u((t,e)=>Array.isArray(t)?t.length>=e:t>=e,"greater_than_or_equal"),less_than:u((t,e)=>Array.isArray(t)?t.length<e:t<e,"less_than"),less_than_or_equal:u((t,e)=>Array.isArray(t)?t.length<=e:t<=e,"less_than_or_equal"),contains:u((t,e)=>Array.isArray(t)&&Array.isArray(e)?e.some(i=>t.includes(i)):Array.isArray(t)?t.includes(e):typeof t=="string"?t.indexOf(e)!==-1:!1,"contains"),not_contains:u((t,e)=>Array.isArray(t)&&Array.isArray(e)?e.every(i=>!t.includes(i)):Array.isArray(t)?!t.includes(e):typeof t=="string"?t.indexOf(e)===-1:!1,"not_contains"),starts_with:u((t,e)=>typeof t=="string"&&t.startsWith(e),"starts_with"),ends_with:u((t,e)=>typeof t=="string"&&t.endsWith(e),"ends_with"),empty:u(t=>Array.isArray(t)?t.length===0:t==null||t==="","empty"),not_empty:u(t=>Array.isArray(t)?t.length>0:!(t==null||t===""),"not_empty")};componyx.UI.form_modules.RuleEngine=class{static{u(this,"RuleEngine");}#i;#a=!1;#r;#e;#t=new Map;#s={on:"show",off:"hide"};#n={on:"readOnly",off:"editable"};#o={on:"disable",off:"enable"};#l={on:"required",off:"optional"};constructor(e){this.form=e,this.dataBinder=e.dataBinder,this.InputTypeOption=e.constructor.InputTypeOption,this.TriggerOption=e.constructor.RuleCaseTriggerOption,this.RunVisibilityOption=e.constructor.RuleCaseRunVisibilityOption,this.ComparisonOperatorOption=e.constructor.RuleComparisonOperatorOption,this.ActionOption=e.constructor.RuleActionOption;}destroy(){this.#f();}initRules(e=this.TriggerOption.INIT){this.#e||this.#h(),this.#r={},this.form.getFields().forEach(i=>this.#u(i,e));}applyRules(e,i=this.TriggerOption.CHANGE){this.#u(e,i);}updateRuleDrivenState(e,i,n,o=!1){const r=this.#t.get(e.id);r&&(r.ruleState??={},r.ruleState[i]=n,r.manualChange=o);}#h(){this.#e=new Map,this.form.getFields().forEach(e=>{const i=e.id;(e.ruleCases||[]).forEach(n=>{(n.ruleGroups||[]).forEach(o=>{(o.rules||[]).forEach(r=>{const s=r.sourceId;this.#e.has(s)||this.#e.set(s,new Set),this.#e.get(s).add(i);});});});});}#f(){const e=this.form.getFields();for(const[i]of this.#t){const n=this.form.getField(i,null,e);n&&this.#d(n,!0);}this.#t=new Map;}async#u(e,i){if(!this.#a){this.#a=!0;try{this.#i=this.form.getFields();const n=new Set,o=[...this.#e.get(e.id)||[],...this.#p(i)];for(;o.length>0;){const r=o.shift();if(n.has(r))continue;n.add(r);const s=this.form.getField(r,null,this.#i);if(!s)continue;if(this.#d(s),this.form.ended)return;const l=this.form.getParentSection(s),d=s.ruleCases||[];for(const a of d)if(!(l&&!l.visible&&a.runVisibility!==this.RunVisibilityOption.SECTION_HIDDEN)&&(!a.trigger||a.trigger===this.TriggerOption.ALWAYS||a.trigger===i)){if(this.#y(s)&&a.runVisibility!==this.RunVisibilityOption.HIDDEN&&a.runVisibility!==this.RunVisibilityOption.SECTION_HIDDEN||!this.#A(a))continue;const f=a.actions||[];for(const h of f){const A=h.targetFieldSetId?this.form.getFieldSet(h.targetFieldSetId):s,m=this.form.runtimeActions[h.runtimeActionId];this.#g(s,h);const y=await this.form.executeAction(h,A);if(m?.mustAwait&&y&&y.success===!1)break}}(this.#e.get(r)||[]).forEach(a=>{n.has(a)||o.push(a);});}}finally{this.#a=!1;}}}#p(e){const i=[];return this.#i.forEach(n=>{(n.ruleCases||[]).forEach(r=>{const s=!r.ruleGroups||r.ruleGroups.length===0,l=r.actions&&r.actions.length>0,d=!r.trigger||r.trigger===this.TriggerOption.ALWAYS||r.trigger===e;s&&l&&d&&i.push(n.id);});}),i}#g(e,i){if(![this.#s.on,this.#s.off,this.#n.on,this.#n.off,this.#o.on,this.#o.off,this.#l.on,this.#l.off,"value","expression","feedback"].includes(i?.runtimeActionId))return;const o=i?.targetFieldSetId?this.form.getFields(this.form.getFieldSet(i.targetFieldSetId))||[]:[e],r={};[this.#l.on,this.#l.off].includes(i.runtimeActionId)&&(r.required=!0),[this.#s.on,this.#s.off].includes(i.runtimeActionId)&&(r.visible=!0),[this.#n.on,this.#n.off].includes(i.runtimeActionId)&&(r.readOnly=!0),[this.#o.on,this.#o.off].includes(i.runtimeActionId)&&(r.disabled=!0),o.forEach(s=>{const l=this.#t.get(s.id)||{original:{},affectedByFieldSet:null};if(Object.keys(r).forEach(d=>{d in l.original||(l.original[d]=s[d]);}),i.runtimeActionId=="feedback"&&!("feedback"in l.original)){const d=this.#c(s);d&&(l.original.feedback=d.textContent);}"value"in l.original||(l.original.value=this.dataBinder.getModelValue(s)),s.options&&Array.isArray(s.options)&&(l.original.options=s.options.map(d=>({id:d.id,disabled:d.disabled}))),i.targetFieldSetId&&(l.affectedByFieldSet=i.targetFieldSetId),this.#t.set(s.id,l);});}#d(e,i){const n=this.#t.get(e.id);if(!n)return;const o=u(r=>{const s=this.#t.get(r.id);if(!s)return;const{value:l,feedback:d,options:a,...p}=s.original;if(("value"in s.original&&i||!s.manualChange)&&g.equal(s.ruleState?.value,this.dataBinder.getModelValue(r))&&this.form.dataBinder.setModelValue(r,s.original.value),"feedback"in s.original){const c=this.#c(r);c&&s.ruleState?.feedback===c.textContent&&(c.textContent=s.original.feedback);}a&&Array.isArray(a)&&r.options.forEach(c=>{const f=a.find(h=>h.id===c.id);f&&(c.disabled=f.disabled);}),$lib.isEmpty(p)||(Object.assign(r,p),this.form.updateField(r));},"restore");n.affectedByFieldSet?(this.form.getFields(this.form.getFieldSet(n.affectedByFieldSet))||[]).forEach(o):o(e);}#c(e){return e.element.querySelector("."+this.form.getCssClass(this.form.classOption.RULE_FEEDBACK))}#y(e){if(e.id in this.#r)return this.#r[e.id];let i=e,n=!1;for(;i;){if(i.visible===!1){n=!0;break}if(i.type==="Section")break;i=i.parent;}return this.#r[e.id]=n,n}#A(e){if(!e.ruleGroups||e.ruleGroups.length===0)return !0;let i;const n=e.ruleGroups;for(let o=0;o<n.length;o++){const r=this.#m(n[o]);o===0?i=r:i=(n[o-1].logicalOperator||"AND")==="OR"?i||r:i&&r;}return i}#m(e){if(!e?.rules||e.rules.length===0)return !1;let i;const n=e.rules;for(let o=0;o<n.length;o++){const r=this.#O(n[o]);o===0?i=r:i=(n[o-1].logicalOperator||"AND")==="OR"?i||r:i&&r;}return i}#O(e){if(!e?.sourceId||!e.comparisonOperator)return !1;const i=this.#I(e);if(!i)return !1;const n=g.hasOwnProperty(e.comparisonOperator);let o;if(n){if(i.inputType===this.InputTypeOption.CHECKBOX||i.inputType===this.InputTypeOption.SWITCH){const s=this.dataBinder.getModelValue(i);Array.isArray(s)?i.componentSettings?.range?o=e.isRangeEnd?s[1]:s[0]:o=s:o=(i.options||[]).filter(l=>!!this.dataBinder.getModelValue(l)).map(l=>l.value!==void 0?l.value:l.name||null).filter(l=>l!==null);}else o=this.dataBinder.getModelValue(i);const r=g[e.comparisonOperator];return r?r(o,e.value):!1}else {const r={[this.ComparisonOperatorOption.VISIBLE]:["visible",!0],[this.ComparisonOperatorOption.DISABLED]:["disabled",!0],[this.ComparisonOperatorOption.REQUIRED]:["required",!0],[this.ComparisonOperatorOption.HIDDEN]:["visible",!1],[this.ComparisonOperatorOption.ENABLED]:["disabled",!1],[this.ComparisonOperatorOption.OPTIONAL]:["required",!1]},[s,l]=r[e.comparisonOperator];return i[s]===l}}#I(e){return e?.sourceId&&this.form.getField(e.sourceId,null,this.#i)||null}};componyx.UI.form_modules.RuleEngine;
156
+
157
+
158
+ var b=Object.defineProperty;var h=(I,t)=>b(I,"name",{value:t,configurable:!0});componyx.UI.form_modules=componyx.UI.form_modules||{},componyx.UI.form_modules.RulesPanel=class{static{h(this,"RulesPanel");}#t;#e;#a;#s;constructor(t,s){this.#a="RulesPanel",this.#e=`${t.id}_${this.#a}_`,this.form=t,this.expressionEngine=t.expressionEngine,this.labels=t.labels,this.cf=t.componentFactory,this.cpm=s,this.#t=this.form.constructor,this.InputTypeOption=this.#t.InputTypeOption,this.LabelDisplayOption=componyx.UI.FormField.LabelDisplayOption,this.RunVisibilityOption=this.#t.RuleCaseRunVisibilityOption;}destroy(){this.#s&&this.#D(this.#s),this.#s=null;}render(t){const s=this.cpm.panelBar.panels.find(i=>i.id===this.#a),e=s.contentElement;e.innerHTML="",this.#s=this.form.getFields().find(i=>i.id===t.id),this.cf.createButton(e,`${this.#e}add_case`,this.form.addRuleCaseButtonId,{transparent:!1,hasIcon:!0,cssClassIcon:"ico-plus",cssClass:this.cpm.getCssClass(this.cpm.classOption.ADD),text:`${this.labels.addItemPrefix}${this.labels.ruleCase}`,command:this.#T.bind(this)}),(t.ruleCases||[]).forEach(i=>{this.#d(e,i.id);});}createValueInput(t,s,e){this.#p(t,s,e);}createExpressionInput(t,s,e){this.#g(t,s,e);}#h(t){return this.#s.ruleCases.find(s=>s.id===t)||null}#R(t,s){return s.ruleGroups?.find(e=>e.id===t)||null}#B(t,s){return s.rules?.find(e=>e.id===t)||null}#x(t,s){return s.actions?.find(e=>e.id===t)||null}#d(t,s){const e=this.#h(s),i=`${this.#e}${e.id}`,n=this.#i(t,this.cpm.classOption.RULE_CASE,i),l=$lib.element({tag:"span",content:this.labels.ruleCaseHeader}),o=$lib.element({container:n,tag:"header",content:l});this.cf.createButton(o,`${i}_remove`,this.form.removeRuleCaseButtonId,{hasIcon:!0,cssClassIcon:"ico-bin",cssClass:this.cpm.getCssClass(this.cpm.classOption.REMOVE),command:this.#v.bind(this,this.#s,e)});const a=this.#i(n);this.cf.createFormField(a,`${i}_trigger`,"",this.labels.ruleCaseTrigger,this.#H(a,`${i}_trigger_input`,e),{cssClass:this.cpm.getCssClass(this.cpm.classOption.RULE_CASE_TRIGGER),labelDisplay:this.LabelDisplayOption.BEFORE,inline:!0}),this.cf.createFormField(a,`${i}_run_visibility`,"",this.labels.ruleCaseRunVisibility,this.#G(a,`${i}_run_visibility_input`,e),{cssClass:this.cpm.getCssClass(this.cpm.classOption.RULE_CASE_RUN_VISIBILITY),labelDisplay:this.LabelDisplayOption.BEFORE,inline:!0}),this.#m(a),this.cf.createButton(a,`${i}add_group`,this.form.addRuleGroupButtonId,{transparent:!1,hasIcon:!0,cssClassIcon:"ico-plus",cssClass:this.cpm.getCssClass(this.cpm.classOption.ADD),text:`${this.labels.addItemPrefix}${this.labels.ruleGroup}`,command:this.#r.bind(this,e.id)}),this.#y(a,e),this.#A(a,e);}#m(t){$lib.element({container:t,tag:"p",attrs:{class:this.cpm.getCssClass(this.cpm.classOption.LINE_BREAK)}});}#y(t,s){const e=this.#i(t,this.cpm.classOption.RULE_GROUPS);e.setAttribute("data-placeholder",this.labels.ruleGroupsEmptyHint),(s.ruleGroups||[]).forEach(i=>{this.#f(e,s,i.id);});}#A(t,s){const e=`${this.#e}${s.id}`,i=this.#i(t,this.cpm.classOption.ACTIONS),n=$lib.element({container:i,tag:"header",content:this.labels.actionsHeader});this.cf.createButton(n,`${e}add_action`,this.form.addActionButtonId,{hasIcon:!0,cssClassIcon:"ico-plus",cssClass:this.cpm.getCssClass(this.cpm.classOption.ADD),command:this.#L.bind(this,s)});let l=!1;(s.actions||[]).forEach(o=>{this.#I(i,s,o.id,l),this.form.runtimeActions[o.runtimeActionId]?.mustAwait&&(l=!0);});}#f(t,s,e){const i=this.#R(e,s),n=`${this.#e}${i.id}`,l=this.#i(t,this.cpm.classOption.RULE_GROUP,n);i.parent=s;const o=this.#i(l,this.cpm.classOption.RULES);(i.rules||[]).forEach(a=>{this.#C(o,i,a.id);}),this.cf.createFormField(l,`${n}_logical_operator`,"",this.labels.ruleGroupConnector,this.#_(l,`${n}_logical_operator_input`,i,{onItemSelect:h((a,r)=>{if(r.item.id==="X"){i.logicalOperator=null;const c=s.ruleGroups.findIndex(u=>u.id===i.id);c!==-1&&s.ruleGroups.slice(c).forEach(p=>this.#c(s,p));}else i.logicalOperator=r.item.id,s.ruleGroups[s.ruleGroups.length-1].id===i.id&&this.#r(s.id);},"onItemSelect")}),{labelDisplay:this.LabelDisplayOption.BEFORE});}#C(t,s,e){const i=this.#B(e,s),n=`${this.#e}${i.id}`,l=this.#i(t,this.cpm.classOption.RULE,n);l._rule=i,i.parent=s;const o=`${this.cpm.getCssClass(this.cpm.classOption.RULE_VALUE)} ${this.cpm.getCssClass(this.cpm.classOption.DISABLED)}`,a=$lib.element({container:l,props:{className:o,inert:!0}});this.#M(l,`${n}_field`,i),this.#X(l,`${n}_comparison_operator`,i);const r=this.#_(l,`${n}_logical_operator`,i,{onItemSelect:h((c,u)=>{if(u.item.id==="X"){const p=s.rules.findIndex(d=>d.id===i.id);p!==-1&&s.rules.slice(p).forEach(m=>this.#u(s,m));}else i.logicalOperator=u.item.id,s.rules[s.rules.length-1].id===i.id&&this.#S(s);},"onItemSelect")});l.insertBefore(a,r);}#I(t,s,e,i){const n=this.#x(e,s),l=`${this.#e}${n.id}`,o=this.#i(t,this.cpm.classOption.ACTION,l);i&&o.classList.add(this.cpm.getCssClass(this.cpm.classOption.ACTION_FOLLOW_UP)),n.parent=s;const a=$lib.element({container:o,props:{className:`${this.cpm.getCssClass(this.cpm.classOption.ACTION_VALUE)} ${this.cpm.getCssClass(this.cpm.classOption.DISABLED)}`,inert:!0}});this.#k(o,`${l}`,n),this.#W(o,`${l}`,n),this.cf.createButton(o,`${l}_remove`,this.form.removeActionButtonId,{hasIcon:!0,cssClassIcon:"ico-bin",cssClass:this.cpm.getCssClass(this.cpm.classOption.REMOVE),command:this.#V.bind(this,s,n)}).element,this.#m(o),o.appendChild(a);}#T(){const t=new this.#t.RuleCase({trigger:this.#t.RuleCaseTriggerOption.ALWAYS,ruleGroups:[],actions:[]}),s=this.#s;t.id=this.form.guid(),s.ruleCases=s.ruleCases||[],s.ruleCases.push(t);const e=this.cpm.panelBar.panels.find(i=>i.id===this.#a);this.#d(e.contentElement,t.id),this.#r(t.id),this.form.updateField(this.#s);}#v(t,s){const e=t.ruleCases.findIndex(n=>n.id===s.id);e!==-1&&t.ruleCases.splice(e,1);const i=$lib(`#${this.#e}${s.id}`);i&&i.remove(),this.form.updateField(this.#s);}#r(t){const s=this.#h(t),e=new this.#t.RuleGroup({rules:[],logicalOperator:"AND"}),i=new this.#t.Rule;e.id=this.form.guid(),i.id=this.form.guid(),s.ruleGroups=s.ruleGroups||[],s.ruleGroups.push(e),e.rules.push(i);const n=$lib(`#${this.#e}${s.id}`).querySelector(`.${this.cpm.getCssClass(this.cpm.classOption.RULE_GROUPS)}`);this.#f(n,s,e.id);}#c(t,s){(s.rules||[]).forEach(n=>{this.#u(s,n);});const e=t.ruleGroups.findIndex(n=>n.id===s.id);e!==-1&&t.ruleGroups.splice(e,1);const i=$lib(`#${this.#e}${s.id}`);i&&i.remove();}#S(t){const s=new this.#t.Rule({sourceId:null,property:null,comparisonOperator:null,value:null});s.id=this.form.guid(),t.rules=t.rules||[],t.rules.push(s);const e=$lib(`#${this.#e}${t.id}`).querySelector(`.${this.cpm.getCssClass(this.cpm.classOption.RULES)}`);this.#C(e,t,s.id);}#u(t,s){const e=t.rules.findIndex(n=>n.id===s.id);e!==-1&&t.rules.splice(e,1),$lib(`#${this.#e}${s.id}`).remove(),(!t.rules||t.rules.length===0)&&this.#c(t.parent,t);}#L(t){const s=new this.#t.Action({value:null});s.id=this.form.guid(),t.actions=t.actions||[],t.actions.push(s);const e=$lib(`#${this.#e}${t.id}`).querySelector(`.${this.cpm.getCssClass(this.cpm.classOption.ACTIONS)}`);this.#I(e,t,s.id,!1),this.#b(t);}#V(t,s){const e=t.actions.findIndex(n=>n.id===s.id);e!==-1&&t.actions.splice(e,1),$lib(`#${this.#e}${s.id}`).remove(),this.#b(t);}#b(t){const s=this.cpm.getCssClass(this.cpm.classOption.ACTION_FOLLOW_UP);let e=!1;(t.actions||[]).forEach(i=>{const n=$lib(`#${this.#e}${i.id}`);if(!n)return;n.classList.toggle(s,e),this.form.runtimeActions[i.runtimeActionId]?.mustAwait&&(e=!0);});}#D(t){(t.ruleCases||[]).forEach(s=>{(s.ruleGroups||[]).slice().forEach(e=>{(e.rules||[]).slice().forEach(i=>{$lib.isEmpty(i.sourceId)&&this.#u(e,i);}),(!e.rules||e.rules.length===0)&&this.#c(s,e);});});}#i(t,s,e){return $lib.element({container:t,props:{id:e||void 0,className:s?this.cpm.getCssClass(s):void 0}})}#F(t,s,e){const i=this.form.fieldSets,n=i.map(l=>({id:l.id,text:l.name,selected:l.id===e.value}));this.cf.createComboBox(t,`${e.id}_input`,this.form.sectionsValueComboBoxId,{placeholder:this.labels.comboBoxDefaultHint,allowInput:!1,disableClearButton:!0,itemList:n,events:{onItemSelect:h((l,o)=>{e.value=l.getValue();},"onItemSelect")}});}#p(t,s,e){const i=this.form.constructor,n=i.getCustomType(s.inputTypeName),l=this.InputTypeOption,o=`${e.id}_input`,a=this.#U.bind(this),r=h((d,m)=>{e.value=m.value;},"onChanged"),c={onChanged:r},u=h((d,m,f={})=>this.cf.createComponent(t,m||this.cf.getComponentType(s.inputType),this.cf.createElement(o).id,d,{...f,_disableDataBinding:!0,value:e.value,events:{...f.events||{}}}),"createComponent");if(this.#n(t,e.id),n?.renderValueInput)return n.renderValueInput({form:this.form,field:s,target:e,container:t});const p=s.componentSettings||{};switch(s.inputType){case l.TEXTBOX:case l.TEXTAREA:return a(t,e,o);case l.MASKEDTEXTBOX:return u(this.form.valueMaskedTextBoxId,null,{mask:p.mask||"____-____",events:c});case l.NUMERICBOX:return u(this.form.valueNumericBoxId,null,{precision:$lib.isEmpty(p.precision)?0:parseFloat(p.precision),minValue:p.minValue,maxValue:p.maxValue,events:c});case l.SLIDER:return u(this.form.valueNumericBoxId,this.cf.getComponentType(l.NUMERICBOX),{minValue:p.minValue,maxValue:p.maxValue,events:c});case l.DATEPICKER:return u(this.form.valueDatePickerId,null,{dateFormat:this.form.format.dateFormat,events:{onChanged:h((d,m)=>{e.value=$lib.formatDate(m.date,"YYYY-MM-DD");},"onChanged")}});case l.TIMEPICKER:return u(this.form.valueTimePickerId,null,{events:c});case l.CHECKBOX:case l.SWITCH:case l.RADIO:case l.COMBOBOX:return this.#O(t,s,e);default:a(t,e,o);}}#U(t,s,e){return this.cf.createInput({container:t,id:e,type:s.type==="Rule"?"text":"textarea",value:s.value||"",placeholder:this.labels.actionValueHint,events:{input:h(i=>{s.value=i.target.value;},"input")}})}#O(t,s,e,i=!0,n=!1){const l=`${this.#e}${e.type}_${e.id}_input`,o=n||s.inputType===this.InputTypeOption.CHECKBOX||s.inputType===this.InputTypeOption.SWITCH||s.componentSettings?.multiSelect==!0,a=this.cf.createComboBox(t,l,this.form.optionsValueComboBoxId,{allowInput:!1,_disableDataBinding:!0,_mustRender:!1,multiSelect:o,events:{onItemSelect:h((c,u)=>{e.value=c.getValue().split(",");},"onItemSelect"),onItemDeselect:h((c,u)=>{e.value=c.getValue().split(",");},"onItemDeselect")}}),r=this.cf.configureComboBox(s,{},!1);return (r.itemList||[]).forEach(c=>{e.value&&e.value.includes(c.value)&&(c.selected=!0);}),$lib.clone(a,r,!0,!0,!0,!0,!0,null),i&&a.setSelectAllTemplate(`{checkBox} ${this.labels.comboBoxSelectAll}`),a.render(),a.element}#g(t,s,e){this.#n(t,e.id);const i=`${this.#e}${e.id}_expression`,n=this.#i(t,this.cpm.classOption.EXPRESSION);this.cf.createInput({container:n,type:"textarea",id:`${i}_input`,value:e.expression||"",placeholder:this.labels.actionExpressionHint,events:{input:h(o=>{const a=o.target,r=s.inputType===this.InputTypeOption.NUMERICBOX;a.value=a.value.replace(/(\{\{[^}]*\}\})|./g,(c,u)=>{if(u){const p=/[^0-9+\-*/().,\s<>=!?:@_\$[\]_A-Za-z0-9'"\\]/g;return "{{"+u.slice(2,-2).replace(p,"")+"}}"}else return r?/[\d+\-*/()., ]/.test(c)?c:"":c}),e.expression=o.target.value;},"input"),keydown:h(o=>{s.inputType===this.InputTypeOption.NUMERICBOX&&!/[0-9+\-*/()., ]/.test(o.key)&&!["Backspace","Delete","ArrowLeft","ArrowRight","Tab"].includes(o.key)&&o.preventDefault();},"keydown")}});const l=this.#i(n,this.cpm.classOption.EXPRESSION_CONTROLS);return this.#w(l,i,e),this.#P(l,i,e),n}#E(t){const s=t.selectionStart,e=this.#N(t.value);for(const i of e)if(s>i.start&&s<i.end)return !0;return !1}#N(t){const s=/\{\{[^{}]+\}\}/g;let e,i=[];for(;(e=s.exec(t))!==null;)i.push({start:e.index,end:e.index+e[0].length});return i}#w(t,s,e){let i=e.parent.runVisibility===this.RunVisibilityOption.SECTION_HIDDEN||!this.form.hasSections()?this.form.getFields():this.form.getFields().filter(l=>this.form.getParentSection(l).selected),n=i.map(l=>({id:l.name,text:l.name}));this.cf.createComboBox(t,`${s}_fieldCombo`,this.form.compareFieldComboBoxId,{name:"exprField",placeholder:this.labels.comboBoxDefaultHint,allowInput:!1,disableClearButton:!0,itemList:n,events:{onItemSelect:h((l,o)=>{const a=$lib(`#${s}_input`),r=this.#E(a),c=r?`${o.item.id}`:`{{${o.item.id}}}`;this.#$(a,c),a.focus();},"onItemSelect")}});}#P(t,s,e){const i=["abs","ceil","floor","round","max","min","trunc","sqrt","pow"],n=i.map(l=>({id:l,text:`Math.${l}()`}));this.cf.createComboBox(t,`${s}_mathCombo`,this.form.operatorComboBoxId,{name:"exprMath",placeholder:this.labels.comboBoxDefaultHint,allowInput:!1,disableClearButton:!0,itemList:n,events:{onItemSelect:h((l,o)=>{const a=$lib(`#${s}_input`),r=this.#E(a),c=r?`Math.${o.item.id}()`:`{{Math.${o.item.id}()}}`,u=r?-1:-3;this.#$(a,c,u),a.focus();},"onItemSelect")}});}#$(t,s,e=0){const i=t.selectionStart??t.value.length,n=t.selectionEnd??t.value.length,l=t.value.substring(0,i),o=t.value.substring(n);t.value=l+s+o;let a=i+s.length+e;a<0&&(a=0),a>t.value.length&&(a=t.value.length),t.selectionStart=t.selectionEnd=a,t.focus(),t.dispatchEvent(new Event("input"));}#M(t,s,e){let i=e.parent,n=i.parent.runVisibility===this.RunVisibilityOption.SECTION_HIDDEN||!this.form.hasSections()?this.form.getFields():this.form.getFields().filter(r=>this.form.getParentSection(r).selected),l=e.sourceId,o=n.flatMap(r=>r.inputType===this.InputTypeOption.SLIDER&&r.componentSettings?.range?[{id:`${r.id}_start`,text:`${r.name} (${this.labels.start})`,selected:r.id===l&&!e.isRangeEnd},{id:`${r.id}_end`,text:`${r.name} (${this.labels.end})`,selected:r.id===l&&e.isRangeEnd}]:[{id:r.id,text:r.name,selected:r.id===l}]),a={onItemSelect:h((r,c)=>{const u=c.item.id;e.isRangeEnd=u.endsWith("_end"),e.sourceId=u.replace(/_start$|_end$/,""),this.#p(this.#o(t),this.form.getField(e.sourceId),e);},"onItemSelect")};return this.cf.createComboBox(t,s,this.form.sourceFieldComboBoxId,{name:"sourceId",placeholder:this.labels.ruleFieldHint,cssClass:this.cpm.getCssClass(this.cpm.classOption.COMBOBOX_RULE_FIELD),allowInput:!1,disableClearButton:!0,itemList:o,events:a}).element}#X(t,s,e){const i=e.comparisonOperator,n=Object.values(this.#t.RuleComparisonOperatorOption).map(o=>({id:o,text:this.labels[`operator_${o}`],selected:o===i})),l={onItemSelect:h((o,a)=>{const r=this.#o(t);e.comparisonOperator=a.item.id,["empty","not_empty","visible","hidden","enabled","disabled","required","optional"].includes(a.item.id)?this.#l(r):this.#l(r,!1);},"onItemSelect")};return this.cf.createComboBox(t,s,this.form.comparisonComboBoxId,{name:"comparisonOperator",placeholder:this.labels.ruleComparisonOperatorHint,cssClass:this.cpm.getCssClass(this.cpm.classOption.COMBOBOX_RULE_COMPARISON_OPERATOR),allowInput:!1,disableClearButton:!0,itemList:n,events:l}).element}#_(t,s,e,i){const n=[{id:"AND",text:this.labels.operator_and},{id:"OR",text:this.labels.operator_or},{id:"X",text:`${this.labels.removeItemPrefix.trim()}`,hasIcon:!0,cssClassIcon:"icon ico-bin"}];return n.forEach(l=>{l.selected=l.id===e?.logicalOperator;}),this.cf.createComboBox(t,s,this.form.logicalOperatorComboBoxId,{name:"logicalOperator",placeholder:this.labels.comboBoxDefaultHint,cssClass:this.cpm.getCssClass(this.cpm.classOption.COMBOBOX_LOGICAL_OPERATOR),allowInput:!1,disableClearButton:!0,itemList:n,events:i}).element}#H(t,s,e){const i=e.trigger||this.#t.RuleCaseTriggerOption.ALWAYS,n=Object.values(this.#t.RuleCaseTriggerOption).map(o=>({id:o,text:this.labels[`trigger_${o}`],selected:o===i})),l={onItemSelect:h((o,a)=>{e.trigger=a.item.id;},"onItemSelect")};return this.cf.createComboBox(t,s,this.form.triggerComboBoxId,{name:"trigger",allowInput:!1,disableClearButton:!0,itemList:n,events:l}).element}#G(t,s,e){const i=e.runVisibility||this.RunVisibilityOption.VISIBLE,n=Object.values(this.RunVisibilityOption).map(o=>({id:o,text:this.labels[`run_visibility_${o}`],selected:o===i})),l={onItemSelect:h((o,a)=>{e.runVisibility=a.item.id;},"onItemSelect")};return this.cf.createComboBox(t,s,this.form.runVisibilityComboBoxId,{name:"runVisibility",allowInput:!1,disableClearButton:!0,itemList:n,events:l}).element}#k(t,s,e){const i=[],n=e.runtimeActionId,l=this.form.runtimeActions,o=this.#s,a=this.InputTypeOption,r=[a.CHECKBOX,a.SWITCH,a.RADIO,a.COMBOBOX].includes(o.inputType),c=[a.TEXTBOX,a.TEXTAREA,a.NUMERICBOX],u={onItemSelect:h((p,d)=>{e.runtimeActionId=d.item.id;const m=l[e.runtimeActionId],f=this.#o(t,this.cpm.classOption.ACTION_VALUE),C=$UI.store[`${s}_target_input`];C&&(C.renderState===$base.static.RenderState.RENDERED?m.supportsFieldSet?C.enable():C.disable():C.disabled=!m.supportsFieldSet),r&&(e.runtimeActionId==="disable"||e.runtimeActionId==="enable")?(this.#l(f,!1),this.#n(f,o.id),this.#O(f,o,e,!0,!0)):m.setValue?(this.#l(f,!1),m.id==="show_section"?this.#F(f,o,e):this.#p(f,o,e)):m.setExpression?(this.#l(f,!1),this.#g(f,o,e)):this.#n(f,e.id);},"onItemSelect"),onClear:h(()=>{e.runtimeActionId=null,this.#n(this.#o(t,this.cpm.classOption.ACTION_VALUE),e.id);},"onClear")};return Object.entries(l).forEach(([p,d])=>{(d.setValue||d.setExpression)&&o.inputType===a.FILEUPLOAD||d.setExpression&&!c.includes(o.inputType)||p==="cancel_submit"&&e.parent?.trigger!==this.#t.RuleCaseTriggerOption.BEFORE_SUBMIT||p==="show_section"&&!this.form.hasSections()&&p!==n||i.push({id:p,text:d.label,tooltip:d.description||void 0,selected:p===n});}),this.cf.createComboBox(t,s+"_action_input",this.form.actionComboBoxId,{name:"action",placeholder:this.labels.comboBoxDefaultHint,cssClass:this.cpm.getCssClass(this.cpm.classOption.COMBOBOX_ACTION),allowInput:!1,tooltipManagerId:this.form.tooltipManager.id,itemList:i,events:u}).element}#W(t,s,e){const i=this.#s,n=this.form.runtimeActions,l=i.parent,o=e.targetFieldSetId||i.id,a=[{id:i.id,text:`${this.labels.applyToItemPrefix} ${this.labels.field} (${i.name})`,selected:o===i.id},{id:`fieldset_${l.id}`,text:`${this.labels.applyToItemPrefix} ${this.labels.fieldSet} (${l.id})`,selected:o===l.id}];return this.cf.createComboBox(t,`${s}_target_input`,this.form.actionTargetComboBoxId,{name:"actionTarget",placeholder:this.labels.comboBoxDefaultHint,allowInput:!1,disableClearButton:!0,disabled:e.runtimeActionId?!n[e.runtimeActionId].supportsFieldSet:!0,itemList:a,events:{onItemSelect:h((c,u)=>{const p=u.item.id,d=this.#o(t,this.cpm.classOption.ACTION_VALUE);p.startsWith("fieldset_")?(e.targetFieldSetId=p.replace("fieldset_",""),this.#l(d,!0)):(e.targetFieldSetId=null,this.#l(d,!1));},"onItemSelect")}}).element}#l(t,s=!0){t.inert=s,s?t.classList.add(this.cpm.getCssClass(this.cpm.classOption.DISABLED)):t.classList.remove(this.cpm.getCssClass(this.cpm.classOption.DISABLED));}#o(t,s=this.cpm.classOption.RULE_VALUE){return t.querySelector(`.${this.cpm.getCssClass(s)}`)}#n(t,s){const e=`${this.#e}${s}_input`;$UI.store[e]?.renderState>0&&$UI.store[e].destroy(),t.innerHTML="";}};componyx.UI.form_modules.RulesPanel;
159
+
160
+
161
+ var p=Object.defineProperty;var s=(l,t)=>p(l,"name",{value:t,configurable:!0});componyx.UI.form_modules=componyx.UI.form_modules||{},componyx.UI.form_modules.ValidationManager=class{static{s(this,"ValidationManager");}constructor(t){this.form=t,this.labels=t.labels,this.InputTypeOption=this.form.constructor.InputTypeOption,this.TypeOption=componyx.UI.Validator.TypeOption,this.operatorLabels={"==":this.labels.operator_equal,"!=":this.labels.operator_not_equal,"<":this.labels.operator_less_than,"<=":this.labels.operator_less_than_or_equal,">=":this.labels.operator_greater_than_or_equal,">":this.labels.operator_greater_than},this.validator=this.form.componentFactory.createComponent(this,componyx.UI.Validator,this.form.id+"_Validator",this.form.validatorId,{detectFields:!1,dateFormat:this.form.format.dateFormat,decimalSeparator:this.form.format.decimalSeparator,groupSeparator:this.form.format.groupSeparator,feedbackIdentifyingCssClass:this.form.getCssClass(this.form.classOption.VALIDATION_FEEDBACK),events:{onValid:s(()=>{if(!this.form.renderNavigationButtons)return;(!this.form.hasSections()||this.form.isLastSection()?this.form.renderer.submitButton:this.form.renderer.nextButton).enable();},"onValid"),onInvalid:s(()=>{if(!this.form.renderNavigationButtons)return;(!this.form.hasSections()||this.form.isLastSection()?this.form.renderer.submitButton:this.form.renderer.nextButton).disable();},"onInvalid")}});}destroy(){this.validator.destroy();}addRules(t){if(this.form.isBuildMode()||!Array.isArray(t))return;this.validator.clear();let o=!1,e=s(a=>{a.forEach(r=>{let i=!1;r.fieldSets?.length&&e(r.fieldSets),r.fields?.forEach(n=>{i=this.addFieldRules(n),!o&&i&&(o=!0);});});},"recurse");return e(t),o}addFieldRules(t){const o=componyx.UI.Validator.DataTypeOption,e=t.validationSettings;let a=!1;if(t.required&&(a=this.updateRequiredRule(t)),!e)return a;if((e.minRange||e.maxRange)&&(a=this.#t(t,this.TypeOption.RANGE,"range",{min:e.minRange,max:e.maxRange})),(e.minLength||e.maxLength)&&(a=this.#t(t,this.TypeOption.LENGTH,"length",{min:e.minLength,max:e.maxLength})),e.dataType){const r=Object.keys(o).find(i=>o[i]==e.dataType).toLowerCase();a=this.#t(t,this.TypeOption.DATATYPE,r,{dataType:parseInt(e.dataType,10)});}if(e.compareFieldId){const r=this.form.getField(e.compareFieldId),i=this.operatorLabels[e.compareOperator]||e.compareOperator;a=this.#t(t,this.TypeOption.COMPARE,"compare",{fields:[r.name],operators:[e.compareOperator],compareFieldName:r.label||r.name,operatorText:i?.toLowerCase()});}return e.pattern&&(a=this.#t(t,this.TypeOption.REGEX,"pattern",{pattern:e.pattern})),a}updateRequiredRule(t){return this.validator.removeRule(t.name,this.TypeOption.REQUIRED),t.required?(this.#t(t,this.TypeOption.REQUIRED,"required"),!0):!1}#t(t,o,e,a={}){const r=this.labels[`validatorMessage_${e}`],i=$.format(r,{field:t.label||t.name,min:a.min,max:a.max,compareField:a.compareFieldName,operator:a.operatorText,dataType:a.dataType,pattern:a.pattern}),n={autoValidate:!0,live:!0,...a,msg:i};return t.inputType===this.InputTypeOption.EDITOR&&(n.getValue=m=>$UI.store[this.form.getId(t,"input")].getContent(m)),this.validator.addRule(t.name,n,o),!0}};componyx.UI.form_modules.ValidationManager;
162
+
163
+
164
+ (async function(window){var R=Object.defineProperty;var p=(b,S)=>R(b,"name",{value:S,configurable:!0});(async function(b){componyx.UI.form_modules=componyx.UI.form_modules||{},componyx.UI.form_modules.loaded=(async()=>{})(),await componyx.UI.form_modules.loaded;const S=componyx.base_modules.Sanitizer,g=componyx.UI.form_modules.ActionManager,I=componyx.UI.form_modules.BuildPanelManager,E=componyx.UI.form_modules.DataBinder,C=componyx.UI.form_modules.DataObserver,O=componyx.UI.form_modules.Draggable,y=componyx.UI.form_modules.ComponentFactory,T=componyx.UI.form_modules.ConfigPanelManager,B=componyx.UI.form_modules.Renderer,P=componyx.UI.form_modules.RuleEngine,u=componyx.UI.form_modules.Types,v=componyx.UI.form_modules.ValidationManager,F={dateFormat:"mm/dd/yyyy",decimalSeparator:".",groupSeparator:","};class n extends componyx.UI.base.WebComponent{static{p(this,"Form");}static#l=new Map;#f;#C="data-ui-form-field";#e;#i;#t;#a;#m;#o;#u;#S;#d;#s=n.BlockTypeOption;#r;#h={};dataBinder;draggable;dataObserver;#b;classOption=Object.freeze({BUILD_MODE:"build-mode",PREVIEW_MODE:"preview-mode",EDIT_MODE:"edit-mode",VIEW_MODE:"view-mode",FIXED_LAYOUT:"fixed-layout",PANES:"panes",BUILD_PANE:"build-pane",CONFIG_PANE:"config-pane",FORM_PANE:"form-pane",FIELD_PANE:"field-pane",PANE_HIDDEN:"pane-hidden",EDGE_TOP:"edge-top",EDGE_BOTTOM:"edge-bottom",LINE_BREAK:"line-break",VIEW_FIELD:"view-field",EDIT_FIELD:"edit-field",BUILD_FIELD:"build-field",BUILD_MENU:"build-menu",LABEL:"label",REMOVE:"remove",CLONE:"clone",ADD:"add",DISABLED:"disabled",INVISIBLE:"invisible",READONLY:"readonly",FILLER:"filler",BUILD_BLOCK:"build-block",BUILD_BLOCK_INSERT:"insert",FIELD_INDICATORS:"field-indicators",ICON:"icon",TOOLTIP_ICON:"ico-question-mark",RULES_ICON:"ico-chip",VALIDATOR_ICON:"ico-validator",DRAG_GHOST:"drag-ghost",DRAG_HANDLE:"drag-handle",DRAGGING:"dragging",DROPPABLE:"droppable",DROP_LEFT:"drop-left",DROP_RIGHT:"drop-right",DROP_ABOVE:"drop-above",DROP_BELOW:"drop-below",DROP_INSIDE:"drop-inside",DROP_DENIED:"drop-denied",FIELD_SET:"field-set",BANNERED:"bannered",LAYOUTLESS:"layoutless",SELECTED:"selected",TITLE:"title",SECTION_SWITCH:"section-switch",COMMANDS:"commands",SECTIONS:"sections",SECTION_ADD:"section-add",SECTION_REMOVE:"section-remove icon ico-bin",SECTION_PREVIOUS:"section-prev",SECTION_NEXT:"section-next",STEP_INDICATOR:"step-indicator",STEP:"step",STEP_ACTIVE:"step-active",SUBMIT:"submit",CONFIG_CHOICE_GROUP:"config-choice-group",MORE_SETTINGS:"more-settings",FIELD_OPTIONS_TYPE:"options-type",FIELD_OPTIONS:"field-options",FIELD_OPTIONS_INLINE:"options-inline",FIELD_OPTIONS_ROW:"options-row",FIELD_OPTIONS_HEADER:"option-header",FIELD_OPTIONS_ITEM:"option-item",FIELD_OPTIONS_ITEM_NEW:"option-new",FIELD_OPTIONS_ITEM_GHOST:"option-item-ghost",ALLOWED_LIST:"allowed-list",REPEATABLE:"repeatable",REPEAT_ADD:"repeat-add",REPEAT_REMOVE:"repeat-remove",EMPTY:"empty",FIELD_TOOLTIP:"tooltip field-tooltip",SPACER:"spacer",CONTENT:"content",DIVIDER:"divider",COMBOBOX_VAL_COMPARE_OPERATOR:"val-compare-operator",COMBOBOX_VAL_COMPARE_FIELD:"val-compare-field",COMBOBOX_LOGICAL_OPERATOR:"logical-operator",COMBOBOX_RULE_FIELD:"rule-field",COMBOBOX_RULE_COMPARISON_OPERATOR:"rule-comparison-operator",COMBOBOX_ACTION:"action",RULE_CASE:"rule-case",RULE_CASE_TRIGGER:"rule-case-trigger",RULE_CASE_RUN_VISIBILITY:"rule-case-run-visibility",ACTIONS:"actions",RULE_GROUPS:"rule-groups",RULE_GROUP:"rule-group",RULES:"rules",RULE:"rule",RULE_VALUE:"rule-value",ACTION:"action",ACTION_FOLLOW_UP:"follow-up",ACTION_VALUE:"action-value",EXPRESSION:"expression",EXPRESSION_CONTROLS:"expr-controls",FEEDBACK:"feedback",VALIDATION_FEEDBACK:"val-feedback",RULE_FEEDBACK:"rule-feedback",SAVE_STATUS:"save-status",SAVE_STATUS_BUSY:"busy",SAVE_STATUS_SUCCESS:"success",SAVE_STATUS_FAILED:"failed",SPINNER:"spinner"});constructor(e,t){super(e,t),this.#r={group:["Section",this.#s.getName(this.#s.FIELD_SET)],input:[this.#s.getName(this.#s.FIELD)],content:[this.#s.getName(this.#s.CONTENT_FIELD),this.#s.getName(this.#s.SPACER_FIELD)]},this.#S={Header:["title","saveStatus","sectionSwitch","commands"],FieldSetPanel:["id","layout","labelDisplay","repeatable","maxRepeats","repeatLabel","tooltip","lineBreak","visible","disabled"],FieldPanel:["name","labelDisplay","placeholder","tooltip","value","role","width","required","lineBreak","visible","disabled","readOnly"],ContentFieldPanel:["width","margin","padding","borderWidth","borderRadius","borderColor","backgroundColor","lineBreak","visible"],SpacerFieldPanel:["showDivider","height"],FieldOptionsPanel:["optionsType","dataSourceId","dataSourcePreview","inlineOptions","optionWidth","options"],ComponentPanel_MaskedTextBox:["mask","value","allowedCharacters"],ComponentPanel_NumericBox:["precision","value","minValue","maxValue"],ComponentPanel_ComboBox:["multiSelect","multiSelectTagging","allowInput"],ComponentPanel_DatePicker:["today","value","minValue","maxValue","allowedDates","disallowDates"],ComponentPanel_TimePicker:["value","minValue","maxValue","incrementalValue","allowedTimes","disallowTimes"],ComponentPanel_Slider:["range","trackSize","startValue","value","minValue","maxValue","tickMarks"],ComponentPanel_FileUpload:["accept","maxFileSize","maxFiles","dataSourceId"],ComponentPanel_Editor:["all","list","block","link","special"],ValidationPanel:["required","dataType","length","range","compare","pattern"]},this.#u=s=>{const l=(s.ctrlKey||s.metaKey)&&s.key.toLowerCase()==="z",a=(s.ctrlKey||s.metaKey)&&(s.key.toLowerCase()==="y"||s.shiftKey&&s.key.toLowerCase()==="z");(l||a)&&s.preventDefault();},this.tabIndex,this.format=F,this.displayMode=n.DisplayModeOption.EDIT,this.labelDisplay=null,this.fixedLayout=!0,this.renderNavigationButtons=!0,this.autoDataBindFields=!0,this.bindToCustomModel=!1,this.customModelGetter=null,this.hasDataBindRootContext=!1,this.fieldSets=[],this.values={},this.fieldRoles=[],this.buildPanels=[{id:"Fields",cssClass:"fields-panel",title:":buildPanel_fields",expanded:!0},{id:"Content",cssClass:"content-panel",title:":buildPanel_content"},{id:"Navigator",cssClass:"navigator-panel",title:":buildPanel_navigator"}],this.configPanels=[{id:"FieldSetPanel",cssClass:"fieldset-panel",title:":configPanel_fieldset"},{id:"FieldPanel",cssClass:"field-panel",title:":configPanel_field"},{id:"ContentFieldPanel",cssClass:"content-field-panel",title:":configPanel_content"},{id:"SpacerFieldPanel",cssClass:"spacer-field-panel",title:":configPanel_spacer"},{id:"FieldOptionsPanel",cssClass:"field-options-panel",title:":configPanel_fieldOptions"},{id:"ComponentPanel",cssClass:"component-panel"},{id:"ValidationPanel",cssClass:"validation-panel",title:":configPanel_validation"},{id:"RulesPanel",cssClass:"rules-panel",title:":configPanel_rules"}],this.buildBlocks=[new n.BuildBlock({label:":textbox",inputType:n.InputTypeOption.TEXTBOX,cssClass:"text-box-field",cssClassIcon:"ico-text"}),new n.BuildBlock({label:":textarea",inputType:n.InputTypeOption.TEXTAREA,cssClass:"text-area-field",cssClassIcon:"ico-textarea"}),new n.BuildBlock({label:":checkbox",inputType:n.InputTypeOption.CHECKBOX,cssClass:"check-box-field",cssClassIcon:"ico-checkbox"}),new n.BuildBlock({label:":radio",inputType:n.InputTypeOption.RADIO,cssClass:"radio-field",cssClassIcon:"ico-radio"}),new n.BuildBlock({label:":switch",inputType:n.InputTypeOption.SWITCH,cssClass:"switch-field",cssClassIcon:"ico-switch"}),new n.BuildBlock({label:":numericBox",inputType:n.InputTypeOption.NUMERICBOX,cssClass:"numeric-box-field",cssClassIcon:"ico-com-numeric-box"}),new n.BuildBlock({label:":comboBox",inputType:n.InputTypeOption.COMBOBOX,cssClass:"combo-box-field",cssClassIcon:"ico-com-combo-box"}),new n.BuildBlock({label:":datePicker",inputType:n.InputTypeOption.DATEPICKER,cssClass:"date-picker-field",cssClassIcon:"ico-com-date-picker"}),new n.BuildBlock({label:":timePicker",inputType:n.InputTypeOption.TIMEPICKER,cssClass:"time-picker-field",cssClassIcon:"ico-com-time-picker"}),new n.BuildBlock({label:":maskedTextBox",inputType:n.InputTypeOption.MASKEDTEXTBOX,cssClass:"masked-text-box-field",cssClassIcon:"ico-com-masked-textbox"}),new n.BuildBlock({label:":slider",inputType:n.InputTypeOption.SLIDER,cssClass:"slider-field",cssClassIcon:"ico-com-slider"}),new n.BuildBlock({label:":fileUpload",inputType:n.InputTypeOption.FILEUPLOAD,cssClass:"file-upload-field",cssClassIcon:"ico-com-file-upload"}),new n.BuildBlock({label:":editor",inputType:n.InputTypeOption.EDITOR,cssClass:"rich-textbox-field",cssClassIcon:"ico-italic"}),new n.BuildBlock({blockType:n.BlockTypeOption.FIELD_SET,label:":fieldSet",cssClass:"field-set",cssClassIcon:"ico-group",panelId:"Content"}),new n.BuildBlock({blockType:n.BlockTypeOption.CONTENT_FIELD,label:":contentField",cssClass:"content-field",cssClassIcon:"ico-com-editor",panelId:"Content",componentSettings:{visibleCommands:["*core","*list","block","link","horizontalLine","image","media","table","special","emoji"]}}),new n.BuildBlock({blockType:n.BlockTypeOption.SPACER_FIELD,label:":spacerField",cssClass:"spacer-field",cssClassIcon:"ico-divider",panelId:"Content"})],this.commands=[new n.Command({command:this.undo.bind(this),events:{onMouseDown:this.setActiveElement.bind(this)},shortcutKey:"z",isVisible:this.isBuildMode.bind(this),isEnabled:this.canPerformHistoryAction.bind(this,"undo"),cssClass:"undo",cssClassIcon:"ico-undo",location:n.CommandLocationOption.HEADER,buttonId:null}),new n.Command({command:this.redo.bind(this),events:{onMouseDown:this.setActiveElement.bind(this)},isVisible:this.isBuildMode.bind(this),isEnabled:this.canPerformHistoryAction.bind(this,"redo"),shortcutKey:"y",cssClass:"redo",cssClassIcon:"ico-redo",location:n.CommandLocationOption.HEADER,buttonId:null}),new n.Command({command:this.setDisplayMode.bind(this,n.DisplayModeOption.PREVIEW),isVisible:this.isBuildMode.bind(this),location:n.CommandLocationOption.HEADER,shortcutKey:"p",cssClass:"preview-mode",cssClassIcon:"ico-eye",buttonId:null}),new n.Command({command:this.setDisplayMode.bind(this,n.DisplayModeOption.BUILD),isVisible:this.isPreviewMode.bind(this),location:n.CommandLocationOption.HEADER,shortcutKey:"e",cssClass:"build-mode",cssClassIcon:"ico-com-form",buttonId:null}),new n.Command({command:this.togglePane.bind(this,"build"),isVisible:this.isBuildMode.bind(this),location:n.CommandLocationOption.BUILD_PANE_BOTTOM,shortcutKey:"",cssClass:"toggle-build-pane",cssClassIcon:"ico-arrow-l-bracket",buttonId:null}),new n.Command({command:this.togglePane.bind(this,"config"),isVisible:this.isBuildMode.bind(this),location:n.CommandLocationOption.CONFIG_PANE_BOTTOM,shortcutKey:"",cssClass:"toggle-config-pane",cssClassIcon:"ico-arrow-r-bracket",buttonId:null})],this.labels={newItemPrefix:"New ",addItemPrefix:"Add ",removeItemPrefix:"Remove ",applyToItemPrefix:"Apply to ",labelPlaceholder:"Enter a label",headerTitle:"Form Header",sectionSwitch:"Enable Sections",lineBreak:"Line break",visible:"Visible",disabled:"Disabled",readOnly:"Readonly",selected:"Selected",tooltip:"Tooltip",tooltipHint:"Text shown via info icon",value:"Default Value",minValue:"Minimum Value",maxValue:"Maximum Value",comboBoxDefaultHint:"- Select -",comboBoxSelectAll:"Select All",section:"Section",fieldSet:"Field Set",fieldSets:"Field Sets",fieldPaneEmptyHint:"Drag a field here...",fieldSetId:"ID",fieldSetLayout:"Layout",fieldSetLayoutNone:"None",fieldSetLayoutDefault:"Default",fieldSetLayoutBannered:"Bannered",fieldSetRepeatable:"Repeatable",fieldSetMaxRepeats:"Max Repeats",fieldSetRepeatLabel:"Repeat label",fieldSetRepeatButton:"Add Another",field:"Field",fields:"Fields",fieldName:"Field Name",fieldPlaceholder:"Placeholder",fieldPlaceholderHint:"Text shown when empty",fieldWidth:"Width",fieldWidthHint:"- Select an option or type a value - ",fieldWidthTooltip:"Select an option or type a value.<br> Custom widths below 360px may not be applied due to layout constraints.<br> Use valid CSS units (e.g., 200px, 100%, 20ch).",fieldRole:"Role",fieldRoleTooltip:"Set a role that defines how the data of this field should be processed by the backend upon form submission.",fieldWidthAuto:"Auto (360px)",fieldWidth1PerRow:"100% (1 field per row)",fieldWidth2PerRow:"50% (2 fields per row)",fieldWidth3PerRow:"33% (3 fields per row)",fieldWidth4PerRow:"25% (4 fields per row)",fieldLabelDisplay:"Label Display",fieldLabelDisplayAbove:"Above",fieldLabelDisplayBefore:"Before",fieldLabelDisplayFloating:"Floating",fieldLabelDisplayInside:"Inside",fieldMoreSettings:"More Settings...",fieldInlineOptions:"Inline Options",fieldOptionWidth:"Option Width",fieldOptionWidthAuto:"Auto",fieldOptionWidth2PerRow:"50% (2 items per row)",fieldOptionWidth3PerRow:"33% (3 items per row)",fieldOptionWidth4PerRow:"25% (4 items per row)",fieldOption:"Option",fieldOptions:"Options",fieldOptionValue:"Option Value",fieldOptionsType:"Options Type",fieldOptionsTypeStatic:"Static",fieldOptionsTypeDataSource:"Data Source",fieldOptionLabelHeader:"Label",fieldOptionValueHeader:"Value",fieldOptionSelectedHeader:"Selected",fieldOptionDisabledHeader:"Disabled",dataSource:"Data Source",dataSourcePreview:"Data Source Preview",optionLabelHeader:"Label",optionValueHeader:"Value",optionSelectedHeader:"Selected",optionDisabledHeader:"Disabled",validationRequired:"Required",validationDataType:"Data Type",validationDataTypeInteger:"Integer",validationDataTypeFloat:"Float",validationDataTypeDateTime:"DateTime",validationDataTypeEmail:"Email",validationDataTypeURL:"URL",validationDataTypeSource:"Source",validationPattern:"Pattern",validationPatternHint:"Type a regular expression ^[0-9]+$",validationLength:"Length",validationMinLengthHint:"Min Length",validationMaxLengthHint:"Max Length",validationRange:"Range",validationMinRangeHint:"Min Range",validationMaxRangeHint:"Max Range",validationCompare:"Compare To",validatorMessage_required:"{field} is required.",validatorMessage_range:"{field} must be between {min} and {max}.",validatorMessage_length:"{field} must be between {min} and {max} characters long.",validatorMessage_integer:"{field} must be a valid number.",validatorMessage_float:"{field} must be a valid decimal number.",validatorMessage_email:"{field} must be a valid email address.",validatorMessage_datetime:"{field} must be a valid date.",validatorMessage_url:"{field} must be a valid URL.",validatorMessage_source:"{field} must be a valid source.",validatorMessage_compare:"{field} must be {operator} {compareField}.",validatorMessage_pattern:"{field} has an invalid format.",ruleCase:"Rule Case",ruleGroup:"Rule Group",ruleCaseHeader:"Rule Case",ruleCaseTrigger:"Trigger",ruleCaseRunVisibility:"Run When",ruleGroupConnector:"Group Connector",ruleGroupsEmptyHint:"Actions run unconditionally when no rules are set.",actionsHeader:"Actions",ruleFieldHint:"- Field -",ruleComparisonOperatorHint:"- Condition -",operator_and:"AND",operator_or:"OR",operator_equal:"Equal",operator_not_equal:"Not Equal",operator_less_than:"Less Than",operator_less_than_or_equal:"Less / Equal",operator_greater_than_or_equal:"Greater / Equal",operator_greater_than:"Greater Than",operator_contains:"Contains",operator_not_contains:"Not Contains",operator_starts_with:"Starts With",operator_ends_with:"Ends With",operator_empty:"Empty",operator_not_empty:"Not Empty",operator_visible:"Visible",operator_hidden:"Hidden",operator_enabled:"Enabled",operator_disabled:"Disabled",operator_required:"Required",operator_optional:"Optional",trigger_always:"Always",trigger_change:"On Field Change",trigger_init:"On Form Load",trigger_show_section:"On Show Section",trigger_before_submit:"Before Form Submit",trigger_submit_succeeded:"After Succesful Submit",trigger_submit_failed:"After Failed Submit",run_visibility_visible:"Field is Visible",run_visibility_hidden:"Field is Visible or Hidden",run_visibility_section_hidden:"Section is Hidden",action_value:"Set Value",action_expression:"Set Value Expression",action_feedback:"Feedback Message",action_alert:"Alert Dialog",action_confirm:"Confirmation Dialog",action_required:"Set Required",action_optional:"Set Optional",action_hide:"Hide",action_show:"Show",action_disable:"Disable",action_enable:"Enable",action_read:"Read only",action_editable:"Editable",action_disable_next:"Disable Next/Submit",action_enable_next:"Enable Next / Submit",action_cancel:"Cancel Submit",action_show_section:"Show Section",action_end:"End Form",actionValueHint:"Enter a value",actionExpressionHint:"Enter a value or expression",componentPanelHeader:"{0} Configuration",textbox:"Textbox",textarea:"Textarea",checkbox:"Checkbox",radio:"Radio",switch:"Switch",maskedTextBox:"Masked Textbox",numericBox:"Number",comboBox:"Dropdown",datePicker:"Date",timePicker:"Time",slider:"Slider",fileUpload:"File Upload",editor:"Editor",contentField:"Content",spacerField:"Spacer",multiSelect:"Enable Multi-Selection",multiSelectTagging:"Selections as Tags",allowInput:"Allow Typing",today:"Default to Today",allowedDates:"Allow Listed Dates",disallowDates:"Disallow Listed Dates",precision:"Decimal Precision",mask:"Mask",maskTooltip:"Use `A` for letters, `0` for digits, and `_` as default input slot (based on allowed characters).<br> For example: 'AA-0000' allows 2 letters, and 4 digits.",allowedCharacters:"Allowed Characters",allowedCharactersAlphanumeric:"Alphanumeric",allowedCharactersDigits:"Digits",allowedCharactersLetters:"Letters",range:"Enable Range Selection",trackSize:"Track Size",trackSizeHint:"200px, 100%, 20ch \u2014 use CSS units",startValue:"Start Value",tickMarks:"Tick Marks",incrementalValue:"Step Interval (minutes)",allowedTimes:"Allowed Times",disallowTimes:"Disallow Listed Times",accept:"Accept",acceptHint:".png, .jpg, .jpeg ",maxFileSize:"Max. File Size (KB)",maxFiles:"Max. Files",all:"All Options",list:"Lists",block:"Block styles",link:"Links",special:"Special chars",margin:"Margin",marginHint:"5px, 100% - use CSS units",padding:"Padding",paddingHint:"5px, 100% - use CSS units",backgroundColor:"Background Color",borderWidth:"Border Width",borderColor:"Border Color",borderRadius:"Border Radius",borderRadiusHint:"5px, 100% - use CSS units",showDivider:"Show Divider",height:"Height",heightHint:"10px, 2em - use CSS units",saveInProgress:"Saving...",saveSuccess:"Saved...",saveFailed:"Save Failed",alertDialogHeader:"Alert",confirmDialogHeader:"Confirm",previous:"Previous",next:"Next",submit:"Submit",navigatorSearchHint:"Find Field",buildPanel_fields:"Fields",buildPanel_content:"Content",buildPanel_navigator:"Navigator",configPanel_fieldset:"FieldSet Configuration",configPanel_field:"Field Configuration",configPanel_content:"Content Field Configuration",configPanel_spacer:"Spacer Field Configuration",configPanel_fieldOptions:"Field Options",configPanel_validation:"Validation Rules",configPanel_rules:"Conditional Rules"},this.dataSources=[new n.DataSource({id:"CategoryListExample",inputType:[n.InputTypeOption.CHECKBOX,n.InputTypeOption.RADIO,n.InputTypeOption.COMBOBOX],label:"Category List Example",url:"/api/get-categories",method:"GET",headers:{},absoluteURL:!1,params:{}}),new n.DataSource({id:"ImageUploadExample",inputType:n.InputTypeOption.FILEUPLOAD,label:"Image Upload Example",url:"/api/upload-image",method:"POST",headers:{},absoluteURL:!1,params:{}})],this.actionEndpoints=[],this.saveEndpoint=null,this.submitEndpoint=null,this.navigatorPanelId="Navigator",this.crsfToken=null,this.includeDisabledFields=!1,this.maxHistoryLength=null,this.settingUpdateDelay=500,this.autoSaveDelay=500,this.navigatorSearchDelay=500,this.sanitizer=null,this.dragSettings={},this.removeFieldButtonId=null,this.cloneFieldButtonId=null,this.addFieldButtonId=null,this.removeFieldOptionButtonId=null,this.addFieldOptionButtonId=null,this.removeAllowedItemButtonId=null,this.addAllowedItemOptionButtonId=null,this.buildPanelBarId=null,this.configPanelBarId=null,this.insertBuildBlockButtonId=null,this.layoutComboBoxId=null,this.labelDisplayComboBoxId=null,this.fieldWidthComboBoxId=null,this.fieldOptionWidthComboBoxId=null,this.moreSettingsButtonId=null,this.dataTypeComboBoxId=null,this.compareOperatorComboBoxId=null,this.compareFieldComboBoxId=null,this.dataSourceComboBoxId=null,this.dataSourcePreviewComboBoxId=null,this.maxRepeatsNumericBoxId=null,this.minLengthNumericBoxId=null,this.maxLengthNumericBoxId=null,this.minRangeNumericBoxId=null,this.maxRangeNumericBoxId=null,this.removeOptionButtonId=null,this.addRuleCaseButtonId=null,this.removeRuleCaseButtonId=null,this.addRuleGroupButtonId=null,this.addActionButtonId=null,this.removeActionButtonId=null,this.triggerComboBoxId=null,this.runVisibilityComboBoxId=null,this.actionComboBoxId=null,this.actionTargetComboBoxId=null,this.sourceFieldComboBoxId=null,this.comparisonComboBoxId=null,this.logicalOperatorComboBoxId=null,this.optionsValueComboBoxId=null,this.sectionsValueComboBoxId=null,this.valueDatePickerId=null,this.minValueDatePickerId=null,this.maxValueDatePickerId=null,this.valueTimePickerId=null,this.minValueTimePickerId=null,this.maxValueTimePickerId=null,this.valueNumericBoxId=null,this.minValueNumericBoxId=null,this.maxValueNumericBoxId=null,this.startValueNumericBoxId=null,this.precisionNumericBoxId=null,this.tickMarksNumericBoxId=null,this.incrementalValueNumericBoxId=null,this.addAllowedDatePickerId=null,this.addAllowedTimePickerId=null,this.maxFileSizeNumericBoxId=null,this.maxFilesNumericBoxId=null,this.borderWidthNumericBoxId=null,this.borderColorButtonId=null,this.backgroundColorButtonId=null,this.contentFieldEditorId=null,this.colorPickerId=null,this.sectionSwitchFormFieldId=null,this.alertDialogId=null,this.confirmDialogId=null,this.previousSectionButtonId=null,this.nextSectionButtonId=null,this.submitButtonId=null,this.tooltipManagerId=null,this.validatorId=null,this.navigatorMenuId=null,this.ended=!1,this.autoNameCandidates=new Set,this.submitCanceled=!1,this.colorPicker=null,this.tooltipManager=null,this.validator=null,this.repeatedFieldSets=[],this.expressionEngine=null,this.actionManager=null,this.buildPanelManager=null,this.componentFactory=null,this.configPanelManager=null,this.dataBinder=null,this.draggable=null,this.dataObserver=null,this.ruleEngine=null,this.renderer=null,this.validationManager=null;function i(s){Object.assign(this,s),this.onRenderFieldSet=$base.static.createEvent("onRenderFieldSet"),this.onRenderField=$base.static.createEvent("onRenderField"),this.onRenderViewTemplate=$base.static.createEvent("onRenderViewTemplate"),this.onRenderEditTemplate=$base.static.createEvent("onRenderEditTemplate"),this.onRenderEditFieldOption=$base.static.createEvent("onRenderEditFieldOption"),this.onUpdateFieldSet=$base.static.createEvent("onRenderFieldSet"),this.onUpdateField=$base.static.createEvent("onRenderField"),this.onDropField=$base.static.createEvent("onDropField"),this.onSelectFieldSet=$base.static.createEvent("onSelectFieldSet"),this.onSelectField=$base.static.createEvent("onSelectField"),this.onCreateSanitizer=$base.static.createEvent("onCreateSanitizer"),this.onSave=$base.static.createEvent("onSave"),this.onSubmit=$base.static.createEvent("onSubmit"),this.onSubmitCanceled=$base.static.createEvent("onSubmitCanceled"),this.onEndForm=$base.static.createEvent("onEndForm");}p(i,"FormEvents"),this.events=new i(this.events);}get prevButton(){return this.renderer.prevButton}get nextButton(){return this.renderer.nextButton}get submitButton(){return this.renderer.submitButton}get fieldAttribute(){return this.#C}get selectedFieldSetId(){return this.#i}get selectedFieldId(){return this.#t}get runtimeActions(){return this.#h}static registerCustomType(e,t){if(n.#l||(n.#l=new Map),n.#l.has(e))throw new Error(`Custom field type "${e}" is already registered.`);n.#l.set(e,t);}static getCustomType(e){if(e)return n.#l?.get(e)}guid(){return String(this.#f++)}registerAction(e,t){this.#h[e]=t;}async executeAction(e,t){const i=this.#h[e.runtimeActionId];if(!i||!i.execute)return;const s=i.execute(e,t);return i.mustAwait&&s instanceof Promise?await s:s}getSanitizer(){return this.#d||(this.#d=new S,this.events.onCreateSanitizer.fire(this,{sanitizer:this.#d})),this.#d}getParentSection(e){let t=e.parent;for(;t;){if(t.type==="Section")return t;t=t.parent;}return null}getEnabledFieldValues(){const e=JSON.parse(JSON.stringify(this.values));for(const t of this.getFields())t.disabled&&this.dataBinder.setModelValue(t,void 0);return e}isGroup(e){return this.#r.group.includes(e)}isInputField(e){return this.#r.input.includes(e)}isContentField(e){return this.#r.content.includes(e)}isField(e){return this.isInputField(e)||this.isContentField(e)}setHeaderTemplate(e){this.addTemplate("Header",e,!1);}setFieldSetPanel(e){this.addTemplate("FieldSetPanel",e,!1);}setFieldPanel(e){this.addTemplate("FieldPanel",e,!1);}setContentFieldPanel(e){this.addTemplate("ContentFieldPanel",e,!1);}setSpacerFieldPanel(e){this.addTemplate("SpacerFieldPanel",e,!1);}setFieldOptionsPanel(e){this.addTemplate("FieldOptionsPanel",e,!1);}setComponentPanel_MaskedTextBox(e){this.addTemplate("ComponentPanel_MaskedTextBox",e,!1);}setComponentPanel_NumericBox(e){this.addTemplate("ComponentPanel_NumericBox",e,!1);}setComponentPanel_ComboBox(e){this.addTemplate("ComponentPanel_ComboBox",e,!1);}setComponentPanel_DatePicker(e){this.addTemplate("ComponentPanel_DatePicker",e,!1);}setComponentPanel_TimePicker(e){this.addTemplate("ComponentPanel_TimePicker",e,!1);}setComponentPanel_Slider(e){this.addTemplate("ComponentPanel_Slider",e,!1);}setComponentPanel_FileUpload(e){this.addTemplate("ComponentPanel_FileUpload",e,!1);}setComponentPanel_Editor(e){this.addTemplate("ComponentPanel_Editor",e,!1);}setValidationPanel(e){this.addTemplate("ValidationPanel",e,!1);}setOption(e){this.addTemplate("Option",e,!1);}setRule(e){this.addTemplate("Rule",e,!1);}setAction(e){this.addTemplate("Action",e,!1);}isBuildMode(){return this.displayMode===n.DisplayModeOption.BUILD}isPreviewMode(){return this.displayMode===n.DisplayModeOption.PREVIEW}isEditMode(){return this.displayMode===n.DisplayModeOption.EDIT}isViewMode(){return this.displayMode===n.DisplayModeOption.VIEW}setDisplayMode(e){this.displayMode=e;const t=this.#t;this.render(),!$lib.isEmpty(t)&&e===n.DisplayModeOption.BUILD&&this.events.onPostRender.priorityAdd(()=>{const i=this.getFields().find(s=>s.id===t);i&&this.selectField(i);},null,!0);}togglePane(e="build"){const t=e==="build"?this.#a.classList:this.#o.classList,i=this.getCssClass(this.classOption.PANE_HIDDEN);t.contains(i)?t.remove(i):t.add(i);}canPerformHistoryAction(e){return e=="undo"&&this.dataObserver.canUndo()||e=="redo"&&this.dataObserver.canRedo()}updateCommandStates(){this.isBuildMode()&&$lib.each(this.commands,e=>{const t=$UI.store[e.id];if($lib.isEmpty(e.isVisible)||e.isVisible()?t.show():t.hide(),$lib.isEmpty(e.isEnabled)||!t.showing)return;const i=e.isEnabled();t.disabled&&i?t.enable():!t.disabled&&!i&&t.disable();});}undo(){this.dataObserver.undo();}redo(){this.dataObserver.redo();}setActiveElement(){const e=this.ownerDocument||document;this.dataObserver.activeElement=e.activeElement;}withoutTracking(e,t=!0){this.dataObserver.withoutTracking(e,t);}processChanges(){this.dataObserver.processPendingChanges();}hasSections(){return this.fieldSets.some(e=>e.type==="Section")}getSection(e){for(const t of this.fieldSets)if(t.id===e&&t.type==="Section")return t;return null}getFieldSet(e,t=this.fieldSets){for(const i of t){if(i.id===e)return i;const s=i.fieldSets||[],l=this.getFieldSet(e,s);if(l)return l}return null}getField(e,t=null,i=null){return (i||this.getFields(t)).find(s=>s.id===e)||null}getFields(e=null){const t=e||this,i=t.fields||[],s=(t.fieldSets||[]).flatMap(l=>this.getFields(l));return i.concat(s)}getFieldSets(e=null){let t=e?.fieldSets||[];return e||(t=(this.fieldSets||[]).flatMap(i=>i.type==="Section"?i.fieldSets||[]:[i])),t.concat(t.flatMap(i=>this.getFieldSets(i)))}getFieldByFieldOption(e){return this.getFields().find(t=>t.options&&t.options.find(i=>i.id===e.id))||null}getValidFieldNameFromLabel(e){return e.replace(/[,.]/g,"-").replace(/[^a-zA-Z0-9_\s\-]/g,"").replace(/\s+/g,"_").toLowerCase()}getFieldContext(e){if(!e?.parent)return null;const t=e.parent,i=t.parent?.fieldSets||this.fieldSets||[],s=i.findIndex(d=>d.id===t.id),l=t.fields.findIndex(d=>d.id===e.id);if(s===-1||l===-1)return null;const a=t.fields[l-1]||null,o=t.fields[l+1]||null,r=i[s+1]||null;return {fieldSet:t,fieldSetIndex:s,fieldIndex:l,previousField:a,nextField:o,nextFieldSet:r,isLastField:!o,isLastFieldSet:!r}}findFieldSetByElement(e,t){for(const i of e){if(i.element===t)return i;if(i.fieldSets){const s=this.findFieldSetByElement(i.fieldSets,t);if(s)return s}}return null}insertBuildBlock(e){const t=this.getActiveFieldSet(),i=t.parent?.fieldSets||this.fieldSets,s=i.findIndex(l=>l===t);if(e.lineBreak=!0,e.blockType===n.BlockTypeOption.FIELD_SET){const l=this.createItemFromBuildBlock(e);i.splice(s+1,0,l),l.parent=t.parent,this.renderFieldSet(l);}else {const l=this.createItemFromBuildBlock(e);t.fields.push(l),this.setParentReferences(t.parent?.fieldSets,t.parent),this.renderField(l);}}createItemFromBuildBlock(e){const t=n.BlockTypeOption.getName(e.blockType),i=n[t],s={};e.blockType===n.BlockTypeOption.FIELD||e.blockType===n.BlockTypeOption.FIELD_SET?s.label=this.labels.newItemPrefix+e.label:s.label=e.label;const l=this.ensureItemId(new i({...e,...s,_keepOriginal:!1}));return e.editTemplate&&(l.editTemplate=e.editTemplate),e.viewTemplate&&(l.viewTemplate=e.viewTemplate),!l.componentSettings&&e.blockType!==n.BlockTypeOption.FIELDSET&&(l.componentSettings={}),this.autoNameCandidates.add(l.id),l}getActiveFieldSet(){return this.#i?this.getFieldSet(this.#i):this.fieldSets[this.fieldSets.length-1]}toggleSectionMode(){this.hasSections()?this.disableSectionMode():this.enableSectionMode();}disableSectionMode(){this.hasSections()&&(this.withoutTracking(()=>{const e=[];this.fieldSets.forEach(t=>{t.fieldSets&&t.fieldSets.forEach(i=>{i._keepOriginal=!1,e.push(new n.FieldSet(i));}),this.destroySection(t);}),this.fieldSets=e,this.setParentReferences(),this.fieldSets.forEach(t=>this.renderer.renderFieldSet(t));}),this.renderer.renderSectionTabStrip(),this.updateRemoveButtonState(),this.dataObserver.observe(),this.updateCommandStates(),this.save());}enableSectionMode(){this.hasSections()||(this.dataObserver.withoutTracking(()=>{const e=[...this.fieldSets];this.fieldSets=[],this.#m.innerHTML="",this.addSection(e,!1);}),this.dataObserver.observe(),this.updateCommandStates(),this.save());}previousSection(){const e=this.fieldSets.findIndex(t=>t.visible);e>0&&this.showSection(this.fieldSets[e-1]);}nextSection(){const e=this.fieldSets.findIndex(t=>t.visible);e<this.fieldSets.length-1&&this.showSection(this.fieldSets[e+1]);}isFirstSection(){return this.hasSections()?this.fieldSets.findIndex(t=>t.visible)==0:!1}isLastSection(){return this.hasSections()?this.fieldSets.findIndex(t=>t.visible)==this.fieldSets.length-1:!1}showSection(e){if(this.isBuildMode()||!this.hasSections())return;const t=this.fieldSets.find(i=>i.visible);t&&t!==e&&this.#g(t,!1),this.#g(e,!0),this.initRules(e.fieldSets);}initRules(e=this.fieldSets){let t=!1;this.isViewMode()||(t=this.validationManager.addRules(e)),this.renderNavigationButtons&&(this.hasSections()?this.#P(t):t||this.submitButton?.enable()),t&&this.validationManager.validator.validate(this,!0),this.ruleEngine.initRules(),this.isViewMode()?this.submitButton?.hide():setTimeout(()=>{this.#T(e);});}addSection(e=[],t=!0){const i=new n.Section({_keepOriginal:!1,label:this.labels.newItemPrefix+this.labels.section,fieldSets:e.length?e:[]});return this.ensureItemId(i),this.fieldSets.push(i),e.length||this.ensureValidFieldSet(!0),this.setParentReferences(i.fieldSets,i),this.renderer.renderSection(i),this.selectSection(i),this.renderer.renderSectionTabStrip(t),this.updateRemoveButtonState(),i}removeSection(e){const t=this.fieldSets,i=t.findIndex(o=>o.id===e.id),s=t[i-1]||null,l=t[i+1]||null;t.splice(i,1),this.destroySection(e),this.updateRemoveButtonState(),this.resetConfigPanelBar();const a=s&&s.element&&s.element.isConnected?s:l&&l.element&&l.element.isConnected?l:null;a&&this.selectSection(a,!0);}addRepeatedFieldSet(e){if(this.isBuildMode())return;const t=e.id,i=e.parent,s=i?.fieldSets||this.fieldSets,l=s.filter(c=>c.repeatGroupId===t),a=l[l.length-1]||e,o=this.addFieldSet({...e,repeatGroupId:t,id:a.id},!0);this.repeatedFieldSets.push(o),o.element.classList.add(this.getCssClass(this.classOption.REPEATABLE));const r=[...l,o];r.forEach((c,m)=>{c.label=this.#I(e.repeatLabel||e.label,m+1),this.renderer.updateLabel(c);});const d=$UI.store[this.getId(e,"add_repeat")];this.#c(d,o.element),e.maxRepeats&&r.length>=e.maxRepeats&&d?.disable();const h=$UI.store[this.getId(e,"remove_repeat")];h?(h.command=this.removeRepeatedFieldSet.bind(this,o),this.#c(h,o.element)):this.componentFactory.createButton(o.element,this.getId(e,"remove_repeat"),this.removeRepeatButtonId,{hasIcon:!0,cssClassIcon:"ico-bin",cssClass:this.getCssClass(this.classOption.REPEAT_REMOVE),command:this.removeRepeatedFieldSet.bind(this,o)});}#c(e,t){e.destroy(),e.containerElement=t,e.render();}removeRepeatedFieldSet(e){const t=e.repeatGroupId,i=e.parent?.fieldSets||this.fieldSets,s=i.find(f=>f.id===t),l=this.getId(s,"add_repeat"),a=$UI.store[l],o=this.getId(s,"remove_repeat"),r=$UI.store[o];this.removeFieldSet(e);const d=this.repeatedFieldSets.findIndex(f=>f.id===e.id);d!==-1&&this.repeatedFieldSets.splice(d,1);const h=s?.parent?.fieldSets||this.fieldSets,c=h.filter(f=>f.repeatGroupId===t),m=c.length?c[c.length-1]:s;c.forEach((f,D)=>{f.label=this.#I(s.repeatLabel||s.label,D+1),this.renderer.updateLabel(f);}),this.#c(a,m.element),m.id!==s.id?(r.command=this.removeRepeatedFieldSet.bind(this,m),this.#c(r,m.element)):remove.destroy(),s&&s.maxRepeats&&c.length<s.maxRepeats&&a?.enable();}addFieldSet(e,t){let i=this.labels.newItemPrefix+this.labels.fieldSet,s=e.parent,l=s?.fieldSets||this.fieldSets,a=l.findIndex(h=>h.id===e.id),o=a>=0&&a<l.length-1?l[a+1]:null,r=t?{...e,_keepOriginal:!1}:{label:i},d=this.ensureItemId(new n.FieldSet(r));return d.lineBreak=!o||o.lineBreak===!0,l.splice(a+1,0,d),this.setParentReferences(l,s),this.renderFieldSet(d),this.selectFieldSet(d),this.updateRemoveButtonState(),d}removeFieldSet(e,t){const i=e.parent,s=i?.fieldSets||this.fieldSets,l=s.findIndex(d=>d.id===e.id),a=s[l-1],o=s[l+1];o&&e.lineBreak&&o.lineBreak===!1&&this.addLineBreak(o),s.splice(l,1),this.destroyFieldSet(e),this.updateRemoveButtonState(),t&&this.resetConfigPanelBar();const r=a?.element.isConnected?a:o?.element.isConnected?o:null;r&&this.selectFieldSet(r);}addField(e,t=!1){const i=this.getFieldContext(e);if(!i)return;let s=this.labels.newItemPrefix+this.labels.field,l=t?{...e,_keepOriginal:!1}:{label:s,inputType:e.inputType},a=n[e.type],o=new a(l);return this.ensureItemId(o),o.lineBreak=!i.nextField||i.nextField.lineBreak===!0,i.fieldSet.fields.splice(i.fieldIndex+1,0,o),this.setParentReferences(i.fieldSet.parent?.fieldSets||this.fieldSets,i.fieldSet.parent),this.renderField(o),this.selectField(o),this.autoNameCandidates.add(o.id),o}removeField(e,t=!1){const i=this.getFieldContext(e),s=e.lineBreak;let l=!1;if(!i)return;i.nextField&&s&&i.nextField.lineBreak===!1&&(l=!0,this.addLineBreak(i.nextField)),i.fieldSet.fields.splice(i.fieldIndex,1),this.destroyField(e),l?this.scaleInlineSiblings(i.nextField):!s&&i.previousField&&this.scaleInlineSiblings(i.previousField),t&&this.resetConfigPanelBar();const a=i.previousField?.element.isConnected?i.previousField:i.nextField?.element.isConnected?i.nextField:null;a?this.selectField(a):(this.deselectField(),this.selectFieldSet(i.fieldSet));}scaleInlineSiblings(e){let t=e.parent.fields,i=t.findIndex(c=>c.id===e.id),s=[];if(i===-1)return;s.push(e);const l=p(c=>c.element&&c.width?.toString().endsWith("%")?parseFloat(c.width):0,"width");let a=i,o=i+1,r=l(e);for(;a>0&&!t[a].lineBreak&&r+l(t[a-1])<=100;)r+=l(t[--a]);for(a<i&&s.push(...t.slice(a,i));o<t.length&&!t[o].lineBreak&&r+l(t[o])<=100;)r+=l(t[o++]);o>i+1&&s.push(...t.slice(i+1,o));const d=["100%","50%","33%","25%"],h=Math.min(s.length-1,3);e.element||((!e.width||e.width.endsWith("%"))&&(e.width=d[h]),s=s.filter(c=>c.id!==e.id)),s.forEach(c=>{(!c.width||c.width.endsWith("%"))&&(c.width=d[h],this.updateField(c));});}resetConfigPanelBar(){const e=this.configPanelManager.panelBar;e.collapseAllPanels(!0),e.disableAllPanels();}setLabelDisplay(e,t){e.fields.forEach(i=>{$lib.isEmpty(t)||(this.dataObserver.shouldProcessChanges=!0,i.labelDisplay=parseFloat(t));});}destroySection(e){this.renderer.destroySection(e);}renderSection(e){this.renderer.renderSection(e);}updateSection(e){this.renderer.updateSection(e);}destroyFieldSet(e){this.renderer.destroyFieldSet(e);}renderFieldSet(e){this.renderer.renderFieldSet(e);}updateFieldSet(e){this.renderer.updateFieldSet(e);}renderField(e){this.renderer.renderField(e);}updateField(e){this.renderer.updateField(e);}updateFieldOptions(e){this.renderer.updateFieldOptions(e);}destroyField(e){this.renderer.destroyField(e);}setParentReferences(e=this.fieldSets,t=null){t||(e=this.fieldSets),e.forEach(i=>{i.parent=t,i.fieldSets&&this.setParentReferences(i.fieldSets,i),i.fields&&i.fields.forEach(s=>{s.parent=i;});});}addLineBreak(e){if(e.lineBreak=!0,!e.element||e.lineBreakElement?.isConnected)return;let t=document.createElement("p");t.classList.add(this.getCssClass(this.classOption.LINE_BREAK)),e.element.parentElement.insertBefore(t,e.element),e.lineBreakElement=t;}removeLineBreak(e,t=!0){t&&(e.lineBreak=!1),e.lineBreakElement&&(e.lineBreakElement.remove(),e.lineBreakElement=null);}getCssClass(e){return super.getCssClass(this.classOption,e)}updateRemoveButtonState(){if(!this.isBuildMode())return;const e=this.fieldSets,t=p((i,s=!1)=>{const l=$UI.store[this.getId(i,"remove")];s&&!l.disabled?l.disable():s||l.enable();},"setButtonState");e.length&&e[0].type==="FieldSet"?e.length===1?t(e[0],!0):e.forEach(i=>t(i)):e.length&&e[0].type==="Section"&&e.forEach(i=>{const s=i.fieldSets;s.length===1?t(s[0],!0):s.forEach(l=>t(l));});}ensureItemId(e,t=!1){if($lib.isEmpty(e.id)){const i=this.guid();if(e.type==="Field"&&!$lib.isEmpty(e.name)){const s=t?e.name.split("_").slice(0,-1).join("_"):e.name;e.id=`${s}_${i}`;}else e.id=`${e.type}_${i}`;}return e.type==="Field"&&$lib.isEmpty(e.name)&&(e.name=e.id),e}deselectSection(){if(!this.#e)return;const e=this.getSection(this.#e);e&&(e.selected=!1,e.element&&(e.element.style.display="none")),this.#e=null;}selectSection(e,t=!1){if(this.#e!==e.id){if(this.renderState!=$base.static.RenderState.RENDERED){this.#e=e.id;return}this.deselectSection(),e.selected=!0,e.element.style.display="",this.#e=e.id,this.renderer.renderSectionTabStrip(!0),t&&this.selectFirst(e);}}deselectFieldSet(){if(this.isBuildMode()){if(this.#i){const e=this.getFieldSet(this.#i);e&&(e.selected=!1,e.element&&e.element.classList.remove(this.getCssClass(this.classOption.SELECTED))),this.#i=null,this.configPanelManager.clearActive();}this.configPanelManager.panelBar&&this.configPanelManager.panelBar.disableAllPanels();}}selectFieldSet(e){if(!this.isBuildMode())return;const t=this.configPanelManager,i=this.configPanelManager.isFieldSetActive(e),s=t.panelBar,l=e.element.querySelector("legend > input"),a=this.ownerDocument||document;if(this.#i===e.id){(a.activeElement===l||!this.#t)&&(s.enablePanel("FieldSetPanel"),s.expandPanel("FieldSetPanel"));return}this.deselectFieldSet(),this.deselectField(),this.hasSections()&&this.selectSection(e.parent),e.selected=!0,e.element.classList.add(this.getCssClass(this.classOption.SELECTED)),this.#i=e.id,t.setActiveFieldSet(e),s.collapseAllPanels(!!this.dataObserver.activePanelId),s.hidePanel("ComponentPanel"),s.enablePanel("FieldSetPanel"),s.expandPanel("FieldSetPanel"),i||(this.dataBinder.bindProperty(e,l),t.renderFieldSetPanel(e),t.renderRulesPanel(e),this.dataBinder.updateView(!0)),this.events.onSelectFieldSet.fire(this,{fieldSet:e});}deselectField(){if(this.isBuildMode()&&this.#t){const e=this.getField(this.#t);e&&(e.selected=!1,e.element&&e.element.classList.remove(this.getCssClass(this.classOption.SELECTED))),this.#t=null;}}selectField(e){if(!this.isBuildMode())return;const t=this.configPanelManager,i=t.isFieldActive(e),s=t.panelBar,l=e.inputType==n.InputTypeOption.CHECKBOX||e.inputType==n.InputTypeOption.RADIO||e.inputType==n.InputTypeOption.SWITCH||e.inputType==n.InputTypeOption.COMBOBOX,a=e.inputType>=n.InputTypeOption.MASKEDTEXTBOX,o=e.type+"Panel",r=e.element.querySelector("label > input"),d=this.ownerDocument||document;if(this.#t===e.id){d.activeElement===r&&s.expandPanel(o);return}this.configPanelManager.destroy(),this.deselectFieldSet(),this.deselectField(),this.selectFieldSet(e.parent),s.enableAllPanels(),s.showAllPanels(),e.selected=!0,e.element.classList.add(this.getCssClass(this.classOption.SELECTED)),this.#t=e.id,t.setActiveField(e),s.collapseAllPanels(!!this.dataObserver.activePanelId),l||s.disablePanel("FieldOptionsPanel"),a||s.hidePanel("ComponentPanel"),i||(r&&this.dataBinder.bindProperty(e,r),["Field","ContentField","SpacerField"].forEach(h=>o!==h+"Panel"&&s.hidePanel(h+"Panel")),t.renderFieldTypePanel(e),t.renderValidationPanel(e),t.renderRulesPanel(e),this.dataObserver.activePanelId||s.expandPanel(o),l&&t.renderOptionsPanel(e),a&&t.renderComponentPanel(e),this.dataBinder.updateView(!0)),e.element.scrollIntoView({behavior:"smooth",block:"nearest"}),this.events.onSelectField.fire(this,{field:e});}selectFirst(e){const t=p(s=>s.fieldSets&&s.fieldSets.length?t(s.fieldSets[0]):s.fields&&s.fields.length?s.fields[0]:s,"getFirstSelectable"),i=t(e||this.fieldSets[0]);i.type==="FieldSet"?this.selectFieldSet(i):this.selectField(i);}rebindFieldSetLabels(e=null){if(!this.isBuildMode())return;(e?.fieldSets?e.fieldSets:this.getFieldSets()).forEach(i=>{if(!i.element||!i.element.isConnected)return;const s=i.element.querySelector("legend > input");s&&this.dataBinder.bindProperty(i,s);}),this.dataBinder.updateView(!0);}rebindFieldElements(e=null){if(!this.isBuildMode())return;(e?this.getFields(e):this.getFields()).forEach(i=>{if(!i.element||!i.element.isConnected)return;const s=i.element.querySelector("label > input");if(s&&this.dataBinder.bindProperty(i,s),i.type==="ContentField"){const l=$lib("#"+this.getId(i,"content"));this.dataBinder.bindProperty(i,l);}}),this.dataBinder.updateView(!0);}rehydrate(e=this.fieldSets){for(let t=0;t<e.length;t++){let i={...e[t],_keepOriginal:!0};e[t]=e[t].type==="Section"?new n.Section(i):new n.FieldSet(i);}}async render(){if(this.renderState!=$base.static.RenderState.RENDERING){super.render(this.#F,"form");return}componyx.UI.editor_modules&&await componyx.UI.editor_modules.loaded,componyx.bindary_modules&&await componyx.bindary_modules.loaded,this.#O(),this.#f=this.#y(this.getFieldSets()),this.actionManager.registerDefaultActions(),this.isBuildMode()?(this.classList.add(this.getCssClass(this.classOption.BUILD_MODE)),this.fixedLayout&&this.classList.add(this.getCssClass(this.classOption.FIXED_LAYOUT)),this.addEventListener("keydown",this.#u,{capture:!0})):this.isPreviewMode()?this.classList.add(this.getCssClass(this.classOption.PREVIEW_MODE)):this.isViewMode()?this.classList.add(this.getCssClass(this.classOption.VIEW_MODE)):this.isEditMode()&&this.classList.add(this.getCssClass(this.classOption.EDIT_MODE));const e=p(t=>{if(t instanceof componyx.UI.PanelBar.Panel||(t=new componyx.UI.PanelBar.Panel(t)),typeof t.title=="string"&&t.title.startsWith(":")){const i=t.title.slice(1);this.labels[i]&&(t.title=this.labels[i]);}return t},"resolvePanel");this.buildPanels=this.buildPanels.map(e),this.configPanels=this.configPanels.map(e),this.tabIndex=$lib.isEmpty(this.tabIndex)?-1:this.tabIndex,this.#v(),this.#x(),this.updateCommandStates(),this.renderChildren();}async postRender(){if(this.renderState!=$base.static.RenderState.RENDERING)return;const e=p(()=>{this.hasSections()?this.showSection(this.fieldSets[0]):this.initRules();},"initForm"),t=this.isPreviewMode()||this.autoDataBindFields&&!this.isBuildMode();if(this.dataBinder.bindContext(this),this.dataObserver.observe(),t&&this.dataBinder.bindFieldsToModel(this.fieldSets,e),this.isBuildMode()&&this.updateRemoveButtonState(),super.postRender(),this.isBuildMode()){if(this.#e){let i=this.#e;this.#e=null,this.selectSection(this.getSection(i),!0);}$lib.isEmpty(this.#t)&&this.selectFirst();return}t||e();}destroy(e,t=!0){this.#R(t),super.destroy(e,t);}scheduleSave(){clearTimeout(this.#b),this.#b=setTimeout(async()=>{await this.save();},this.autoSaveDelay);}async save(){let e;const t=this.renderer.saveStatusElement,i=this.getCssClass(this.classOption.SAVE_STATUS_BUSY);t.style.visibility="",t.classList.add(i),t.offsetWidth,this.saveEndpoint&&(e=await this.fetchFromEndpoint(this.saveEndpoint,{form:this},{fieldSets:this.fieldSets})),e||(e={error:!1,success:!0}),await this.events.onSave.fire(this,e),t.classList.remove(i),t.offsetWidth,e?.error?t.classList.add(this.getCssClass(this.classOption.SAVE_STATUS_FAILED)):t.classList.add(this.getCssClass(this.classOption.SAVE_STATUS_SUCCESS)),$lib.cssAnimation(t,void 0,[],{onComplete:p(()=>{t.className=this.getCssClass(this.classOption.SAVE_STATUS),t.style.visibility="hidden";},"onComplete")});}async submit(){if(this.isPreviewMode())return;const e=this.includeDisabledFields?this.values:this.getEnabledFieldValues();let t;if(await this.ruleEngine.initRules(this.constructor.RuleCaseTriggerOption.BEFORE_SUBMIT),this.submitCanceled){await this.events.onSubmitCanceled.fire(this,{values:e}),this.submitCanceled=!1;return}this.submitEndpoint&&(t=await this.fetchFromEndpoint(this.submitEndpoint,{form:this},{values:e})),t||(t={error:!1,success:!0}),await this.events.onSubmit.fire(this,{values:e,result:t}),this.renderState&&(t?.error||(t.success?await this.ruleEngine.initRules(this.constructor.RuleCaseTriggerOption.SUBMIT_SUCCEEDED):await this.ruleEngine.initRules(this.constructor.RuleCaseTriggerOption.SUBMIT_FAILED)));}async fetchFromEndpoint(e,t={},i={}){let s={...e.params,...i};this.crsfToken!=null&&!("csrfToken"in i)&&(s.csrfToken=this.crsfToken),typeof e.preFetch=="string"&&(e.preFetch=$base.static.getMethod(e.preFetch)),typeof e.postFetch=="string"&&(e.postFetch=$base.static.getMethod(e.postFetch)),typeof e.preFetch=="function"&&(s=await e.preFetch(s,t)||s);let l=e.absoluteURL?e.url:e.url.startsWith("/")?`${location.origin}${e.url}`:`${location.origin}/${e.url}`;const a={method:e.method||"GET",headers:e.headers||{},credentials:e.credentials||"same-origin"};if(a.method.toUpperCase()==="GET"&&s){const r=new URLSearchParams(s).toString();r&&(l+=(l.includes("?")?"&":"?")+r);}else s&&(a.body=JSON.stringify(s),a.headers["Content-Type"]="application/json");let o;try{const r=p(async(d,h="json")=>{switch(h){case"text":return await d.text();case"blob":return await d.blob();default:return await d.json()}},"parseResponse");if(e.timeout){const d=new AbortController,h=setTimeout(()=>d.abort(),e.timeout);a.signal=d.signal;const c=await fetch(l,a);clearTimeout(h),o=await r(c,e.responseType);}else {const d=await fetch(l,a);o=await r(d,e.responseType);}}catch(r){console.error(`Failed to fetch from "${e.label||e.id}"`+(r.name==="AbortError"?` (timed out after ${e.timeout} ms)`:""),r),o={error:!0,success:!1,ex:r};}return typeof e.postFetch=="function"&&await e.postFetch(o,t),o}#O(){this.expressionEngine=new componyx.bindary_modules.ExpressionEngine,this.componentFactory=new y(this),this.draggable=new O(this),this.buildPanelManager=new I(this),this.configPanelManager=new T(this),this.dataBinder=new E(this),this.dataObserver=new C(this),this.renderer=new B(this),this.ruleEngine=new P(this),this.actionManager=new g(this),this.validationManager=new v(this);}#y(e){let t=0;function i(s){for(const l of s)if(l){if(l.id){const a=l.id.split("_"),o=parseInt(a[a.length-1],10);!isNaN(o)&&o>t&&(t=o);}for(const a in l)Array.isArray(l[a])&&i(l[a]);}}return p(i,"traverse"),i(e),t+1}#T(e){setTimeout(()=>{for(const t of e){const i=this.getFields(t);for(const s of i){if(!s.visible||s.disabled||$lib.isEmpty(s.inputType))continue;const l=this.#B(s.editElement);if(l){l.focus();return}}}});}#B(e){return e.querySelector('input:not([type="hidden"]), textarea, select, [contenteditable="true"]')||null}#P(e){let t,i=this.renderer.ensurePrevButton(),s=this.renderer.ensureNextButton();this.isFirstSection()?i.hide():i.show(),this.isLastSection()?(s.hide(),t=this.submitButton):(this.submitButton.hide(),t=s),t.show(),e?t.disable():t.enable();}#g(e,t=!0){const i=$lib(`#${this.id}_${e.id}_step`),s=this.getCssClass(this.classOption.STEP_ACTIVE);e.visible=t,e.element.style.display=t?"":"none",t?i.classList.add(s):i.classList.remove(s);}#I(e,t){return $lib.isEmpty(e)?"":`${e.replace(/\s+\d+$/,"")||""} ${t}`}#v(){this.#n("Header"),this.#n("FieldSetPanel"),this.#n("FieldPanel"),this.#n("ContentFieldPanel"),this.#n("SpacerFieldPanel"),this.#n("FieldOptionsPanel"),this.#n("ValidationPanel"),$lib.each(n.InputTypeOption,e=>{e>=n.InputTypeOption.MASKEDTEXTBOX&&this.#n(`ComponentPanel_${n.InputTypeOption.getName(e)}`);});}#n(e){const t=this.getTemplateTags(e);this.hasTemplate(e)||this.addTemplate(e,t.map(i=>`{${i}}`).join(""),!1);}getTemplateTags(e){return this.#S[e]}#F(){let e=[],t=this.getFields(),i=p(function(s){return function(l){return !l.editTemplate&&l.inputType==s}},"comparer");return e.push("Menu"),e.push("Button"),e.push("ColorPicker"),e.push("ColorButton"),e.push("PanelBar"),e.push("TabStrip"),e.push("Validator"),e.push("Dialog"),e.push("TooltipManager"),(this.isBuildMode()||$lib.indexOf(t,i(n.InputTypeOption.MASKEDTEXTBOX))>-1)&&e.push("MaskedTextBox"),(this.isBuildMode()||$lib.indexOf(t,i(n.InputTypeOption.NUMERICBOX))>-1)&&e.push("NumericBox"),(this.isBuildMode()||$lib.indexOf(t,i(n.InputTypeOption.COMBOBOX))>-1)&&e.push("ComboBox"),(this.isBuildMode()||$lib.indexOf(t,i(n.InputTypeOption.DATEPICKER))>-1)&&e.push("DatePicker"),(this.isBuildMode()||$lib.indexOf(t,i(n.InputTypeOption.TIMEPICKER))>-1)&&e.push("TimePicker"),(this.isBuildMode()||$lib.indexOf(t,i(n.InputTypeOption.SLIDER))>-1)&&e.push("Slider"),(this.isBuildMode()||$lib.indexOf(t,i(n.InputTypeOption.FILEUPLOAD))>-1)&&e.push("FileUpload"),(this.isBuildMode()||$lib.indexOf(t,i(n.InputTypeOption.EDITOR))>-1||t.findIndex(s=>s.type===n.BlockTypeOption.CONTENT_FIELD)>-1)&&e.push("Editor"),["Form",e]}#x(){this.tooltipManager=this.componentFactory.createTooltipManager(this,this.id+"_TooltipManager",this.tooltipManagerId),this.colorPicker=this.componentFactory.createComponent(this,componyx.UI.ColorPicker,this.id+"_ColorPicker",this.colorPickerId,{popupView:!0}),this.renderer.createHeader();const e=$lib.element(this,"","","",{class:this.getCssClass(this.classOption.PANES)});this.isBuildMode()?(this.#a=$lib.element(e,"","","",{class:this.getCssClass(this.classOption.BUILD_PANE)}),this.#E(this.#a)):this.hasSections()&&this.renderer.createStepIndicator(e),this.#m=$lib.element(e,"","","",{class:this.getCssClass(this.classOption.FORM_PANE)}),$lib.isEmpty(this.fieldSets)?this.ensureValidFieldSet(!0):this.fieldSets.some(i=>!(i instanceof n.Section||i instanceof n.FieldSet))&&this.rehydrate(),this.setParentReferences(this.fieldSets),this.#p();const t=this.bindToCustomModel&&this.customModelGetter?this.customModelGetter():this.values;t&&this.#D(t),this.isBuildMode()&&(this.#o=$lib.element(e,"","","",{class:this.getCssClass(this.classOption.CONFIG_PANE)}),this.#E(this.#o),this.buildPanelManager.createPanelBar(this.#a,`${this.id}_BuildPanelBar`,this.buildPanelBarId,this.buildPanels),this.configPanelManager.createPanelBar(this.#o,`${this.id}_ConfigPanelBar`,this.configPanelBarId,this.configPanels)),!this.isBuildMode()&&this.renderNavigationButtons&&this.renderer.ensureSubmitButton();}ensureValidFieldSet(e=!1){const t=p(()=>{const i=new n.FieldSet({_keepOriginal:!1,label:this.labels.newItemPrefix+this.labels.fieldSet,layout:n.FieldSetLayoutOption.NONE,fields:e?[new n.Field({_keepOriginal:!1,label:this.labels.newItemPrefix+this.labels.field,inputType:n.InputTypeOption.TEXTBOX,cssClassIcon:"ico-text",lineBreak:!0})]:[]});return this.ensureItemId(i),e&&(this.ensureItemId(i.fields[0]),this.autoNameCandidates.add(i.fields[0].id)),i},"createFieldSet");if($lib.isEmpty(this.fieldSets)){this.fieldSets=[t()];return}this.fieldSets.every(i=>i.type==="Section")&&this.fieldSets.forEach(i=>{(!Array.isArray(i.fieldSets)||i.fieldSets.length===0)&&(i.fieldSets=[t()]);});}#D(e){this.getFieldSets().forEach(i=>{if(!i.repeatable||i.repeatGroupId)return;const s=e[i.id];Array.isArray(s)&&s.length>1&&s.slice(1).forEach(()=>this.addRepeatedFieldSet(i));});}#E(e){const t=e===this.#a,i=t?n.CommandLocationOption.BUILD_PANE_TOP:n.CommandLocationOption.CONFIG_PANE_TOP,s=t?n.CommandLocationOption.BUILD_PANE_BOTTOM:n.CommandLocationOption.CONFIG_PANE_BOTTOM,l=this.commands.filter(d=>d.location===i||d.location===s),a=$lib.element({container:e,attrs:{class:this.getCssClass(this.classOption.EDGE_TOP)}}),o=$lib.element({container:e,attrs:{class:this.getCssClass(this.classOption.EDGE_BOTTOM)}}),r=t?`${this.id}_command_build_edge_`:`${this.id}_command_config_edge_`;$lib.each(l,(d,h)=>{d.id=d.id||`${r}${h}`;const c=d.location===i?a:o;this.componentFactory.createButton(c,d.id,d.buttonId,{...d,shortcutScope:this,primary:!1,transparent:!1,transparentBorder:!1,hasIcon:!0,showing:d.isVisible?d.isVisible():!0});});}#p(e=this.fieldSets){e.forEach(t=>{if(t.type||(t.type="FieldSet"),t.type==="Section")this.renderer.createSection(t),this.#p(t.fieldSets),t.visible=!1,t.element.style.display="none";else {let i=this.renderer.createFieldSet(t);t.fieldSets&&t.fieldSets.length?this.#p(t.fieldSets):t.fields&&t.fields.forEach(s=>{if(s.type||(s.type="Field",s.inputType==null&&(s.inputType=n.InputTypeOption.TEXTBOX)),!s.cssClassIcon||!s.cssClass){const l=this.buildBlocks.find(a=>s.type==="Field"&&a.blockType===n.BlockTypeOption.FIELD&&a.inputType===s.inputType||s.type==="ContentField"&&a.blockType===n.BlockTypeOption.CONTENT_FIELD||s.type==="SpacerField"&&a.blockType===n.BlockTypeOption.SPACER_FIELD);l&&(s.cssClassIcon=s.cssClassIcon||l.cssClassIcon,s.cssClass=s.cssClass||l.cssClass);}this.renderer.createField(this.ensureItemId(s),i);});}});}getId(e,t){return `${this.id}_${e.id}_${t.toLowerCase()}`}#R(e){this.renderState<$base.static.RenderState.RENDERING||(this.removeEventListener("keydown",this.#u,{capture:!0}),this.autoNameCandidates=new Set,this.ruleEngine?.destroy(),this.draggable?.destroy(),this.dataBinder?.destroy(e),this.dataObserver?.destroy(),this.renderer?.destroy(),this.configPanelManager?.destroy(),this.validationManager?.destroy(),this.deselectSection(),this.deselectFieldSet(),this.deselectField(),this.#L(),this.#w(),this.values={},this.actionManager=null,this.buildPanelManager=null,this.draggable=null,this.dataBinder=null,this.dataObserver=null,this.renderer=null,this.ruleEngine=null,this.configPanelManager=null,this.componentFactory=null,this.validationManager=null,this.ended=!1);}#w(){if(!this.repeatedFieldSets?.length)return;const e=new Set(this.repeatedFieldSets.map(i=>i.id)),t=p(i=>{for(let s=i.length-1;s>=0;s--){const l=i[s];e.has(l.id)?i.splice(s,1):Array.isArray(l.fieldSets)&&l.fieldSets.length&&t(l.fieldSets);}},"removeFromTree");t(this.fieldSets),this.repeatedFieldSets=[];}#L(){const e=p(t=>{t.fields?.forEach(i=>{i.element=null,i.viewElement=null,i.editElement=null,i.lineBreakElement=null;}),t.fieldSets?.forEach(e),t.element=null,t.lineBreakElement&&(t.lineBreakElement=null);},"disposeFieldSet");this.fieldSets?.forEach(e);}}n.CommandLocationOption=u.CommandLocationOption,n.BlockTypeOption=u.BlockTypeOption,n.InputTypeOption=u.InputTypeOption,n.DisplayModeOption=u.DisplayModeOption,n.FieldSetLayoutOption=u.FieldSetLayoutOption,n.RuleCaseTriggerOption=u.RuleCaseTriggerOption,n.RuleCaseRunVisibilityOption=u.RuleCaseRunVisibilityOption,n.RuleComparisonOperatorOption=u.RuleComparisonOperatorOption,n.FieldRole=u.FieldRole,n.ServerEndpoint=u.ServerEndpoint,n.DataSource=u.DataSource,n.BuildBlock=u.BuildBlock,n.Section=u.Section,n.FieldSet=u.FieldSet,n.Field=u.Field,n.FieldOption=u.FieldOption,n.ContentField=u.ContentField,n.SpacerField=u.SpacerField,n.ComponentSettings=u.ComponentSettings,n.ValidationSettings=u.ValidationSettings,n.Command=u.Command,n.RuleCase=u.RuleCase,n.RuleGroup=u.RuleGroup,n.Rule=u.Rule,n.Action=u.Action,Object.assign(n.prototype,Object.fromEntries(Object.entries($base.methods).filter(([x])=>!["render","postRender","destroy","getCssClass"].includes(x)))),n.prototype.constructor=n,componyx.UI.Form=n,customElements.define(`${$UI.tagPrefix}${n.name.toLowerCase()}`,n);})();
165
+ })();
166
+
167
+
168
+ (async function(window){var vt=Object.defineProperty;var a=(T,M)=>vt(T,"name",{value:M,configurable:!0});(function(T){componyx.UI.AppSkin=a(function(ze,Ge){T.$appskin=this;let t=this,z=componyx.UI.AppSkin.ScreenOption,y=componyx.UI.AppSkin.MenuTypeOption,G=componyx.UI.AppSkin.FooterDisplayOption,p=componyx.UI.AppSkin.MenuSectionOption,ie=componyx.UI.AppSkin.RoutePathMatchingOption,se=componyx.UI.AppSkin.FailureReasonOption,L=componyx.UI.AppSkin.TileSizeOption,m,N,w,C,O,B,_,U,h,b,ae,oe,W,E,q,v,F,le,re,H,k,D,A,ue,Q=!0,ce,I,R=!0,ye,Ie,Te,Ae,o;this.classOption=Object.freeze({FULL:"full",ERROR:"error",TOPBAR:"topbar",FOOTER:"footer",REQUIRED:"required",MENU_LEFT:"menu-left",AUTHENTICATED:"authenticated",SEARCH_ACTIVE:"search-active",PORTAL_MENU:"portal-menu",SIDE_MENU:"side-menu",LOGIN:"login",VERIFICATION:"verification",HEADER_ALL:"header-all",HEADER_MENU_HIDDEN:"header-menu-hidden",HEADER_OVERFLOW:"header-overflow",BODY:"body",PAGE:"page",VIEW:"view",OVERLAY:"overlay",SIDEBAR:"sidebar",APP_CONTENT:"app-content",SEARCH:"search",SEARCH_RESULT:"search-result",SPINNER:"spinner",BOX:"box",PRELOADER:"preloader",MENU:"menu",MAIN:"main",SIDE:"side",PORTAL:"portal",HEADER_MENU:"header-menu",QUICK_LAUNCH:"quick-launch",FOOTER_MENU:"footer-menu",BUTTON:"button",MENU_BUTTON:"menu-button",ACCOUNT:"account",ACCOUNT_AVATAR:"account-avatar",NO_ACTION:"no-action",SUB_GROUP:"sub-group",ROW_START:"row-start",SHADE:"shade",LOGIN_SCREEN:"login-screen",LOGIN_VERIFICATION:"login-verification",CONTENT:"content",USER:"user",PASS:"pass",REMEMBER:"remember",CODE:"code",MESSAGE:"message",ICON_MENU:"ico-menu ico-m",ICON_USER:"ico-user",ICON_LOCK:"ico-lock",ICON_KEY:"ico-key",ICON_EYE:"ico-eye",ICON_EYE_BLOCKED:"ico-eye-blocked"}),this.getCssClass=function(e){return $base.methods.getCssClass.call(t,t.classOption,e)},this.authenticationRequired=!0,this.authenticated=!1,this.launchMenu=!0,this.hideMenuButtonOnLogin=!1,this.fullscreen=!1,this.fullpage=!1,this.showRememberMe=!1,this.persistentTopBar=!1,this.persistentMenuButton=!1,this.menuLeft=!1,this.accountButtonAvatar=!1,this.useLoginTemplate=!0,this.useBindary=!0,this.menuType=y.PORTALMENU,this.menuRoutePathMatching=ie.PARTIAL,this.footerDisplay=G.MENU,this.searchDelay=100,this.searchLabel="Search",this.searchNoResultLabel="No results found.",this.searchCategoryLabels={},this.accountAction=null,this.avatarInitials="",this.avatarImagePath="",this.loadingLabel="Loading...",this.mainCategoryLabel="",this.username="Not logged in",this.usernameLabel="USERNAME",this.passwordLabel="PASSWORD",this.rememberMeLabel="Remember me",this.loginButtonLabel="LOGIN",this.authenticationFailureLabel="Authentication failed",this.authenticationFailureReasonLabels=["CRSF-Token mismatch.","Maximum sign-in attempts exceeded.","Username and/or parssword is incorrect.","Verification code is incorrect.","The verification code has expired.","Maximum verification attempts exceeded.","Authentication failed."],this.verificationButtonLabel="VERIFY",this.verificationCodeLabel="Verification Code",this.verificationCodeLength=6,this.verificationFailedReloadDelay=5e3,this.crsfToken=null,this.menu=[],this.mainMenuId=null,this.headerMenuId=null,this.footerMenuId=null,this.quickLaunchMenuId=null,this.menuButtonId=null,this.loginButtonId=null,this.verificationButtonId=null,this.accountButtonId=null,this.usernameFormFieldId=null,this.passwordFormFieldId=null,this.rememberMeFormFieldId=null,this.verificationCodeFormFieldId=null;function We(e){Object.assign(this,e),this.onShowLogin=$base.static.createEvent("onShowLogin"),this.onShowLoginVerification=$base.static.createEvent("onShowLoginVerification"),this.onShowPage=$base.static.createEvent("onShowPage"),this.onShowError=$base.static.createEvent("onShowError"),this.onShowMenu=$base.static.createEvent("onShowMenu"),this.onHideMenu=$base.static.createEvent("onHideMenu"),this.onLoginAttempt=$base.static.createEvent("onLoginAttempt"),this.onLoginVerificationAttempt=$base.static.createEvent("onLoginVerificationAttempt"),this.onLogout=$base.static.createEvent("onLogout"),this.onPreSearchResults=$base.static.createEvent("onPreSearchResults"),this.onRenderSearchResult=$base.static.createEvent("onRenderSearchResult"),this.onPostSearchResults=$base.static.createEvent("onPostSearchResults"),this.onResize=$base.static.createEvent("onResize");}a(We,"AppSkinEvents"),this.events=new We(this.events),$base.Component.apply(this,[ze,Ge]),o=this.classOption,this.ajax.addMethod("authenticate"),this.ajax.addMethod("search"),this.setHeaderTemplate=function(e){t.addTemplate("Header",e,!1);},this.setFooterTemplate=function(e){t.addTemplate("Footer",e,!1);},this.setSidebarTemplate=function(e){t.addTemplate("SidebarLeft",e,!1);},this.setLoginTemplate=function(e){t.addTemplate("Login",e,!1);},this.setLoginVerificationTemplate=function(e){t.addTemplate("LoginVerification",e,!1);},this.setErrorTemplate=function(e){t.addTemplate("Error",e,!1);},this.setNotFoundTemplate=function(e){t.addTemplate("NotFound",e,!1);},this.setPageHeaderTemplate=function(e){t.addTemplate("PageHeader",e,!1);},this.setPageFooterTemplate=function(e){t.addTemplate("PageFooter",e,!1);},this.setFullscreen=function(e){e?$lib.addClass(t.element,t.getCssClass(o.FULL)):$lib.removeClass(t.element,t.getCssClass(o.FULL));},this.setFullpage=function(e){e?$lib.addClass(D.firstChild,t.getCssClass(o.FULL)):$lib.removeClass(D.firstChild,t.getCssClass(o.FULL));},this.launch=function(){Se();},this.updateMenuState=function(e,n){Me(e,n);},this.activeScreen=function(){return k},this.getMainMenu=function(){return h},this.getHeaderMenu=function(){return b},this.getFooterMenu=function(){return ae},this.getQuickLaunchMenu=function(){return oe},this.preloader=function(){return I},this.showLogin=function(){$t();},this.showLoginVerification=function(){Nt();},this.toggleMenu=function(){xe();},this.showMenu=function(e){ne(e);},this.hideMenu=function(e){$(e);},this.checkHeaderOverflow=function(){x();},this.showPage=function(e){if(R&&t.launchMenu&&t.menuType==y.PORTALMENU)return;let n=A.style.display!="none";X(),Fe(),O.style.display="",(!n||e)&&($lib.removeClass(t.element,t.getCssClass(o.ERROR)),A.style.display="none",D.style.display=""),document.documentElement.style.overflow="",C&&(C.style.display="",$lib.addClass(t.element,t.getCssClass(o.TOPBAR))),t.events.onShowPage.fire(t);},this.hasError=function(){return A.style.display!="none"},this.search=function(e){ve(e);},this.login=function(e){Ee(e);},this.verifyCode=function(e){we(e);},this.logout=function(e){Ot(e);},this.render=async function(){if(t.renderState!=$base.static.RenderState.RENDERING){$base.methods.render.call(t,je,"app-skin");return}componyx.UI.menu_modules&&await componyx.UI.menu_modules.loaded,t.hasTemplate("Header")||t.addTemplate("Header","{logo}{quickLaunchMenu}{searchBox}{menuButton}{topbar}{menu}{/topbar}",!1),t.hasTemplate("Footer")||t.addTemplate("Footer","{menu}{username}{accountButton}",!1),t.hasTemplate("Login")||t.addTemplate("Login","{logo}{username}{password}{rememberMe}{loginButton}{failedMessage}",!1),t.hasTemplate("LoginVerification")||t.addTemplate("LoginVerification","{logo}{verificationCode}{verificationButton}{failedMessage}",!1),t.hasTemplate("Error")||t.addTemplate("Error","<p><b>Description:</b> {message}</p><p><b>Status:</b> {status}</p><p><b>Timestamp:</b> {timestamp}</p><p><b>Log Id:</b> {id}</p>",!1),t.hasTemplate("NotFound")||t.addTemplate("NotFound","<p>The page you are looking for does not exist.</p>",!1),Ze();},this.postRender=function(){t.renderState==$base.static.RenderState.RENDERING&&Ke();},this.destroy=function(...e){Ut(),$base.methods.destroy.call(this,...e);};function je(){return ["AppSkin",["Button","FormField","Box","Menu"]]}a(je,"preRender");async function Ke(){t.useBindary&&await Ye(),t.ajax.authenticate.isDefined()||(t.ajax.authenticate.url="authenticate"),t.ajax.search.isDefined()||(t.ajax.search.url="search"),N.style.display="none",Se(),$base.methods.postRender.call(t);}a(Ke,"postRender");async function Ye(){await componyx.bindary_modules.loaded,$bindary.routes&&$bindary.routes.length&&($bindary.onAnchorScroll.add(qe),$bindary.onLoad.add(Xe),$bindary.linkDispatching&&!t.events.onRenderSearchResult.has(Re)&&t.events.onRenderSearchResult.priorityAdd(Re)),D.firstChild.setAttribute($bindary.attributePrefix+"view","");}a(Ye,"handleRoutes");function Xe(){let e=$bindary.routePath,n=$bindary.getAnchor();if(n&&(e+="#"+n),$bindary.prettyURL){let i=$bindary.getBaseHref();!$lib.isEmpty(i)&&$lib.startsWith(e,i)&&(e=e.replace(i,""));}Me(e,!$bindary.prettyURL),R=!1;}a(Xe,"loadRoute");function Re(e,n){$bindary.dispatchLink(n.anchor);}a(Re,"dispatchLink");function qe(e){if(!B)return;let n=B.offsetHeight;return C&&(n+=C.offsetHeight),$lib.scrollTo(e),document.documentElement.scrollTop-=n,!1}a(qe,"anchorScroll");function Me(e,n){let i=t.menuRoutePathMatching;if(i==ie.DISABLED)return;e=e.toLowerCase();let s,l=e.indexOf("#")>-1,r=l?e.split("#")[0]:null,d=$lib.path(t.menu,"itemList",function(u){let f=(u.href||"").toLowerCase();return $lib.isEmpty(f)||u.itemList&&u.itemList.some(P=>(P.href||"").toLowerCase()===f)||n&&f.indexOf("#")==0&&(f=f.substr(1),f.indexOf("!")==0&&(f=f.substr(1)),$lib.isEmpty(f))?!1:(l&&r===f.toLowerCase()&&(s=u),i==ie.PARTIAL?e===f||e.indexOf(f)==0&&"?/".indexOf(e.split(f)[1][0])>-1:e===f)},!0);if(!d&&s&&(d=$lib.path(t.menu,"itemList",function(u){return u===s},!0)),d&&!d.item.selected){let u=d.create().root(),f;if(u.item.menuSection==p.HEADER&&(f=u.item==d.item?d.create():Je(d.create()),f&&!f.item.selected)){let P=Le(f.create());P?.length&&b.expand(P,null,!1,!0),b.collapseAll(!0),me(b,f.item);}if(!d.item.selected){if(g()){let P=Le(d.create(),!0);P?.length&&h.expand(P,null,!1,!0);}me(h,d.item,g()&&(!$lib.event||$lib.event.type!="click"||!Qe($lib.event.target)));}}else d||(J(h),J(b),J(ae),J(oe),h&&h.showCategory(null,!1,!0),x());}a(Me,"updateMenuState");function J(e){e&&e.deselectItem();}a(J,"deselectItem");function Qe(e){return $lib.contains(h.element,e)}a(Qe,"isMainMenuTarget");function Je(e){let n;for(;e;){if(n=e.item,n.isCategory&&!n.categoryInHeader&&b.loadItem(n.id))return e;e=e.hasParent()?e.parent():null;}return null}a(Je,"getLastHeaderItem");function Le(e,n){let i=[];for(n&&!$lib.isEmpty(e.children)&&i.push(e.item.id);e.hasParent();)i.unshift(e.parent().item.id);return i}a(Le,"buildPath");function Se(){R=!0,X(),t.authenticationRequired&&!t.authenticated?($lib.addClass(t.element,t.getCssClass(o.REQUIRED)),t.showLogin()):t.launchMenu?ne():t.showPage(),x();}a(Se,"launch");function Ze(){let e=t.element,n=$lib(null,"","html",!0);t.element.classList.forEach(i=>{i!=="app-skin"&&i!=="hidden"&&n.classList.add(i);}),t.menuLeft&&$lib.addClass(e,t.getCssClass(o.MENU_LEFT)),it(e),t.setFullscreen(t.fullscreen),t.setFullpage(t.fullpage),t.footerDisplay==G.PERSISTENT&&Pe(),tt(),nt(),t.renderChildren();}a(Ze,"draw");function et(e){let n=document.createElement("div"),i=n.appendChild(document.createElement("i")),s=t.id+"_preloader",l;l=n.appendChild(document.createElement("b")),l.appendChild(document.createTextNode(t.loadingLabel)),i.className=t.getCssClass(o.SPINNER),I=$UI.createComponent(componyx.UI.Box,{id:s,containerElement:e}),t.store.push(s),I.setContentTemplate(n),I.cssClass=`${t.getCssClass(o.BOX)} ${t.getCssClass(o.PRELOADER)}`,I.showing=!1,I.modal=!0,I.theme=$base.static.ThemeOption.NONE,I.animation.showType=I.animation.hideType=componyx.UI.Box.AnimationTypeOption.NONE,I.autoPosition=componyx.UI.Box.AutoPositionOption.CENTER,I.events.onPostRender.priorityAdd(function(){t.isReady.apply(t);},null);}a(et,"createPreloader");function tt(){$lib.on(T,"resize",ge),$lib.on(document,"click",Ve),g()&&$lib.on(ue,"click",ke);}a(tt,"bindEvents");function nt(){$lib.httpRequestHandlers.onSuccess.add(function(e){let n=e.xhr.getResponseHeader("content-type"),i=e.data,s=a(function(l){return typeof l=="string"?T.JSON.parse(l):l},"parse");if(n&&n.toLowerCase().indexOf("application/json")>-1&&i)return i=s(i),i&&i.d&&(i=s(i.d)),$e(i)}),t.useBindary&&componyx.bindary_modules?.loaded.then(()=>{$bindary.onDataError.add(function(e){return $e(e)}),$bindary.onRouteError.add(function(e){const n=e.type==="route"||e.status===404||e.status===410;n&&!document.head.querySelector("meta[data-appskin-noindex]")&&document.head.insertAdjacentHTML("beforeend",'<meta name="robots" content="noindex" data-appskin-noindex>'),Ne({status:e.status},n?"NotFound":"Error");}),$bindary.onPreLoad.add(function(){ce=null,document.head.querySelector("meta[data-appskin-noindex]")?.remove(),t.showPage(!0);});}).catch(console.error);}a(nt,"bindErrorEvent");function $e(e){if(!e||!e.isError){t.showPage(!0);return}let n=e.data&&e.data.appData?e.data.appData:e;if(ce!=n)return ce=n,Ne(n)}a($e,"error");function Ne(e,n="Error"){let i,s=e.timestamp;s&&!(s instanceof Date)&&(s=new Date(s)),t.preloader().hide(),t.showPage(),$lib.addClass(t.element,t.getCssClass(o.ERROR)),D.style.display="none";let l=A.firstChild;return l.innerHTML="",A.style.display="",i=c(l,"div"),t.applyTemplate(i,n,{timestamp:s&&!isNaN(s)?$lib.formatDate(s,"dd-MM-yyyy HH:mm:ss"):"-",message:e.message||"-",stackTrace:e.stackTrace||"-",id:e.id||"-",status:e.status||"-"}),t.events.onShowError.fire(t),!1}a(Ne,"showError");function it(e){let n=c(e,"div",t.getCssClass(o.BODY));ct(e),at(e),st(e),O=c(e,"",t.getCssClass(o.PAGE)),t.hasTemplate("PageHeader")&&(n=c(O,"header"),t.applyTemplate(n,"PageHeader")),A=c(O,"",t.getCssClass(o.ERROR),j()),A.style.display="none",D=c(O,"",t.getCssClass(o.VIEW),j()),t.hasTemplate("PageFooter")&&(n=c(O,"footer"),t.applyTemplate(n,"PageFooter")),t.useLoginTemplate&&(yt(e),It(e)),t.footerDisplay>G.DISABLED&&ot(e),ue=c(e,"div",t.getCssClass(o.OVERLAY)),t.authenticated&&$lib.addClass(t.element,t.getCssClass(o.AUTHENTICATED)),et(e);}a(it,"createLayout");function st(e){let n="Sidebar";if(!t.hasTemplate(n))return;let i=$lib.format("{0}_{1}_",t.id,n),s=c(e,"",t.getCssClass(o.SIDEBAR),content);t.applyTemplate(s,n,Y(i)),de(i);}a(st,"createSidebar");function at(e){let n=t.id+"_Header_",i;B=c(e,"header"),t.applyTemplate(B,"Header",Y(n)),B.appendChild(j($lib.extract(B))),C=$lib("#"+n+"TopBar"),C&&(C.appendChild(j($lib.extract(C))),$lib.addClass(t.element,t.getCssClass(o.TOPBAR))),(i=$lib("#"+n+"Menu"))&&fe(p.HEADER)&&(b=Z(i.parentNode,i.id,t.headerMenuId,p.HEADER,Ct())),de(n);}a(at,"createHeader");function ot(e){let n=t.id+"_Footer_",i;_=c(e,"footer"),t.applyTemplate(_,"Footer",Y(n)),_.appendChild(j($lib.extract(_))),(i=$lib("#"+n+"Menu"))&&fe(p.FOOTER)&&(ae=Z(i.parentNode,i.id,t.headerMenuId,p.FOOTER,bt())),de(n);}a(ot,"createFooter");function de(e){let n;(n=$lib("#"+e+"QuickLaunchMenu"))&&fe(p.QUICKLAUNCH)&&(oe=Z(n.parentNode,n.id,t.quickLaunchMenuId,p.QUICKLAUNCH,Et())),(n=$lib("#"+e+"SearchBox"))&&(W=lt(n)),(n=$lib("#"+e+"Username"))&&(n.innerHTML=t.username),rt($lib("#"+e+"MenuButton")),ut($lib("#"+e+"AccountButton"));}a(de,"replacePlaceHolders");function fe(e){let n=!1;return $lib.each(t.menu,function(i){if(i.menuSection===e)return !(n=!0)}),n}a(fe,"hasMenu");function j(e){return c(null,"",t.getCssClass(o.APP_CONTENT),e)}a(j,"createContent");function S(...e){return e.filter(n=>!$lib.isEmpty(n)).join(" ").replace(/\s+/g," ").trim()}a(S,"joinCssClasses");function c(e,n,i,s){return $lib.element(e,"",n,s,i?{class:i}:null)}a(c,"createElement");function lt(e){let n=c(null,"div",t.getCssClass(o.SEARCH)),i=c(n,"input");return e.parentNode.replaceChild(n,e),n.setAttribute("tabindex","0"),i.placeholder=t.searchLabel,$lib.on(n,"focus",function(){$lib.addClass(t.element,t.getCssClass(o.SEARCH_ACTIVE)),i.focus();}),$lib.on(i,"blur",function(){$lib.removeClass(t.element,t.getCssClass(o.SEARCH_ACTIVE));}),$lib.on(i,"keyup paste",function(){clearTimeout(Te),Te=setTimeout(ve,t.searchDelay);}),$lib.on(i,"focus",function(){$lib.addClass(t.element,t.getCssClass(o.SEARCH_ACTIVE)),E&&!$lib.isEmpty(W.value)&&(E.style.display="");}),i}a(lt,"createSearchBox");function rt(e){e&&(m=ee(e.parentNode,e.id,t.menuButtonId,{cssClass:t.getCssClass(o.MENU_BUTTON),cssClassIcon:t.getCssClass(o.ICON_MENU)},function(n,i){xe();}));}a(rt,"createMenuButton");function ut(e){if(!e)return;let n=t.authenticated,i=$base.static.getMethod(t.accountAction),s={};i||(i=n?t.showLogin:t.logout),s.cssClass=t.getCssClass(o.ACCOUNT),n&&t.accountButtonAvatar?(s.cssClass=t.getCssClass(o.ACCOUNT_AVATAR),t.element.style.setProperty("--avatar-initials",`'${t.avatarInitials}'`)):n?s.cssClassIcon=t.getCssClass(o.ICON_USER):(s.cssClassIcon=t.getCssClass(o.ICON_LOCK),i=t.showLogin),ee(e.parentNode,e.id,t.accountButtonId,s,i),t.avatarImagePath&&t.element.style.setProperty("--avatar-image",`url('${t.avatarImagePath}')`);}a(ut,"createAccountButton");function ct(e){let n=t.id+"_MainMenu";g()&&(e=ht(e)),h=Z(e,n,t.mainMenuId,p.MAIN,gt());}a(ct,"createMainMenu");function Z(e,n,i,s,l){if(!e||!t.menu.length)return;l||(l={}),l.id=n,l.containerElement=e;let r=$UI.createComponent(componyx.UI.Menu,l),d;return r.clone($UI.store[i],t),r.templates=ft(),r.mainCategoryLabel=t.mainCategoryLabel,r.events.onPostRender.priorityAdd(function(){t.isReady.apply(t);},null),r.showing=s==p.MAIN&&g()||s==p.HEADER||s>=p.FOOTER,s==p.HEADER&&(r.itemGroupBoxId=mt()),s==p.MAIN&&r.events.onHide.priorityAdd(function(){$lib.removeClass(t.element,t.getCssClass(o.PORTAL_MENU));}),$lib.each(t.menu,function(u,f){(u.menuSection==s||s==p.MAIN&&u.menuSection==p.HEADER)&&(u.id=u.id||$lib.guid(),s==p.HEADER&&(u=Oe(u)),(s==p.HEADER||s==p.MAIN&&u.menuSection==p.HEADER||s==p.MAIN&&t.menuType==y.PORTALMENU)&&(!u.selectable&&!u.command&&!u.href&&(u.cssClass=S(u.cssClass,t.getCssClass(o.NO_ACTION))),u.__command===void 0&&(u.__command=u.command||null),u.command=K,u.itemList&&_e(u.itemList)),s==p.MAIN&&u.menuSection==p.MAIN&&(Q=!1),s==p.MAIN&&t.menuType==y.PORTALMENU&&(d=pe(u,f,d),u.isCategory&&dt(u.itemList)),r.itemList.push(u));}),r}a(Z,"createMenu");function Oe(e){let n=new componyx.UI.AppSkin.MenuItem(e);return n.selectable=!0,n.command=n.__command,n.subGroupId=null,n.__cssClass!=null&&(n.cssClass=n.__cssClass),n.isCategory&&!n.categoryInHeader?(n.isCategory=!1,n.itemList=[],n):($lib.each(e.itemList,function(i,s){n.itemList[s]=Oe(i);}),n)}a(Oe,"copyItem");function dt(e){let n;$lib.each(e,function(i,s){n=pe(i,s,n),i.isCategory&&pe(i.itemList);});}a(dt,"createPortalItems");function pe(e,n,i){let s=["1","2","3","4"],l;return e.cssClass=e.cssClass||"",e.__cssClass=e.cssClass,e.groupTileSize||(e.groupTileSize=null),(!i||!$lib.isEmpty(e.groupTileSize)&&e.groupTileSize!=i.groupTileSize)&&(i={},i.tileSize=0,i.id=$lib.guid(),i.groupTileSize=e.groupTileSize?e.groupTileSize:e.buttonTileSize<=L.MEDIUM?L.MEDIUM:L.LARGE,e.cssClassSubGroup=S(t.getCssClass(o.SUB_GROUP),L.getName(i.groupTileSize).replace("_","-"))),e.subGroupId=i.id,e.buttonTileSize=e.buttonTileSize||L.MEDIUM,e.cssClass=S(e.cssClass,L.getName(e.buttonTileSize).replace("_","-")),l=s[n%4],l&&(e.cssClass=S(e.cssClass,t.getCssClass(o.SHADE)+"-"+l)),n%4==3&&s.reverse(),i.groupTileSize==L.LARGE&&e.buttonTileSize<=L.SMALL_WIDE&&(i.tileSize==2||i.tileSize==10)&&(e.cssClass=S(e.cssClass,t.getCssClass(o.ROW_START))),i.tileSize+=e.buttonTileSize,i.tileSize>=i.groupTileSize&&(i=null),i}a(pe,"createPortalItem");function ft(){let e=new Map,n="Header Footer Login Error PageHeader PageFooter";return t.templates.size&&t.templates.forEach(function(i,s){n.indexOf(s)==-1&&e.set(s,i);}),e}a(ft,"getMenuItemTemplates");function _e(e){$lib.each(e,function(n,i){n.id=n.id||$lib.guid(),!n.selectable&&!n.command&&!n.href&&(n.cssClass=S(n.cssClass,t.getCssClass(o.NO_ACTION))),n.__command===void 0&&(n.__command=n.command||null),n.command=K,n.itemList&&_e(n.itemList);});}a(_e,"setCommands");function K(e,n){let i=e===h,s=i?b:h;if(i&&n&&n.event&&n.event.type=="click"&&!n.item.isCategory&&n.item.selectable&&$lib.styleValue(ue,"display",!0)!="none"&&$(),!s){if(t.menuType===y.PORTALMENU){let d=h.loadItem(n.item.id),u=d?.item;if(!u)return;Ue(h,u);}return}let l=s.loadItem(n.item.id),r=l?.item;if(!r){if(i&&n.item.__command){let d=$base.static.getMethod(n.item.__command);d&&d(e,n);}return}Ue(s,r),i||(r.isCategory?(h.showCategory(r.id,!1,!V()),V()||ne(),x()):V()?$(!1,he):he());}a(K,"defaultCommand");function Ue(e,n){n.command=n.__command,me(e,n),n.command=K,n.href&&(t.menuType==y.PORTALMENU||A.style.display!="none")&&t.showPage(!0);}a(Ue,"executeCommand");function he(){h.showCategory(null,!1,!0),x();}a(he,"showMainCategory");function pt(e){g()?U.events.onHideComplete.priorityAdd(e,null,!0):h.events.onHide.priorityAdd(e,null,!0);}a(pt,"setHideMenuCallback");function me(e,n,i){let s;s=n.href||null,n.href=null,e.selectItem(n.id),s!=null&&(n.href=s),i&&setTimeout($lib.scrollTo.bind(this,$UI.store[e.id+"_"+n.id].element,U.element),0);}a(me,"selectItem");function ee(e,n,i,s,l){let r=$UI.createComponent(componyx.UI.Button,{id:n,containerElement:e}),d;return r.clone($UI.store[i],t),r.renderId=!1,r.transparent=$lib.isEmpty(s.transparent)?!0:s.transparent,r.cssClass=S(t.getCssClass(o.BUTTON),s.cssClass),r.cssClassIcon=$lib.isEmpty(s.cssClassIcon)?"":s.cssClassIcon,r.hasIcon=!$lib.isEmpty(s.cssClassIcon),r.command=r.command?r.command:l,r.events.onPostRender.priorityAdd(function(){t.isReady.apply(t);},null),r.showing=!0,$lib.isEmpty(s.text)||(d=document.createElement("b"),$lib.setText(d,s.text),r.text=d.outerHTML),r}a(ee,"createButton");function ht(e){let n=t.id+"_SideMenuBox",i=t.sideMenuBoxId,s=$UI.createComponent(componyx.UI.Box,{id:n,containerElement:e});return s.clone($UI.store[i],t),s.theme=$base.static.ThemeOption.NONE,s.cssClass=`${t.getCssClass(o.BOX)} ${t.getCssClass(o.SIDE_MENU)}`,s.animation.showType=s.animation.hideType=3,s.autoPosition=0,s.autoFit=!1,s.events.onHideComplete.priorityAdd(function(){$lib.removeClass(t.element,t.getCssClass(o.SIDE_MENU));}),s.render(),U=s,s.contentElement}a(ht,"createSideMenuBox");function mt(){let e=t.id+"_HeaderMenuBox",n=$UI.createComponent(componyx.UI.Box,{id:e,containerElement:null});return n.alignX=componyx.UI.Box.AlignXOption.CENTER,n.id}a(mt,"createHeaderItemGroupBox");function Ct(){let e={};return e.cssClass=`${t.getCssClass(o.MENU)} ${t.getCssClass(o.HEADER_MENU)}`,e}a(Ct,"getHeaderProps");function Et(){let e={};return e.cssClass=`${t.getCssClass(o.MENU)} ${t.getCssClass(o.QUICK_LAUNCH)}`,e}a(Et,"getQuickLaunchProps");function bt(){let e={};return e.cssClass=`${t.getCssClass(o.MENU)} ${t.getCssClass(o.FOOTER_MENU)}`,e}a(bt,"getFooterProps");function gt(){let e={};if(e.cssClass=S(t.getCssClass(o.MENU),t.getCssClass(o.MAIN),g()?t.getCssClass(o.SIDE):t.getCssClass(o.PORTAL)),e.horizontalRoot=!g(),g()){let n=$UI.createComponent(componyx.UI.Button,{id:t.id+"_DefaultButton",decoration:1});e.buttonId=n.id;}return e}a(gt,"getMainMenuProps");function Y(e){let n={};return n.topbar='<div id="'+e+'TopBar" class="topbar">',n["/topbar"]="</div>",n.logo='<figure id="'+e+'Logo" class="logo"></figure>',n.menuButton='<a id="'+e+'MenuButton"></a>',n.accountButton='<a id="'+e+'AccountButton"></a>',n.loginButton='<a id="'+e+'LoginButton"></a>',n.menu='<b id="'+e+'Menu"></b>',n.quickLaunchMenu='<b id="'+e+'QuickLaunchMenu"></b>',n.searchBox='<div id="'+e+'SearchBox"></div>',n.username='<b id="'+e+'Username" class="username"></b>',n.password='<b id="'+e+'Password"></b>',n.rememberMe='<b id="'+e+'RememberMe"></b>',n.failedMessage='<b id="'+e+'FailedMessage"></b>',n.verificationCode='<b id="'+e+'VerificationCode"></b>',n.verificationButton='<a id="'+e+'VerificationButton"></a>',n}a(Y,"getinterpolations");function yt(e){let n=t.id+"_Login_",i,s,l;N=c(e,"",t.getCssClass(o.LOGIN_SCREEN)),t.applyTemplate(N,"Login",Y(n)),c(N,"",t.getCssClass(o.CONTENT),$lib.extract(N)),(i=$lib("#"+n+"Username"))&&(l=c(null,"",t.getCssClass(o.USER)),i.parentNode.replaceChild(l,i),q=Ce("username"),te(l,i.id,t.usernameFormFieldId,t.usernameLabel,q),s=c(l,"i",t.getCssClass(o.ICON_USER))),(i=$lib("#"+n+"Password"))&&(l=c(null,"",t.getCssClass(o.PASS)),i.parentNode.replaceChild(l,i),v=Ce("password"),te(l,i.id,t.passwordFormFieldId,t.passwordLabel,v),s=c(l,"i",t.getCssClass(o.ICON_KEY)),s=c(l,"i",t.getCssClass(o.ICON_EYE)),Tt(v),$lib.on(s,"click",At)),t.showRememberMe&&(i=$lib("#"+n+"RememberMe"))&&(l=c(null,"",t.getCssClass(o.REMEMBER)),i.parentNode.replaceChild(l,i),F=c(null,"input"),F.type="checkbox",F.checked=!0,te(l,i.id,t.rememberMeFormFieldId,t.rememberMeLabel,F)),(i=$lib("#"+n+"LoginButton"))&&(l=c(),i.parentNode.replaceChild(l,i),ee(l,i.id,t.loginButtonId,{cssClass:t.getCssClass(o.LOGIN),text:t.loginButtonLabel,transparent:!1},function(){Ee();})),(i=$lib("#"+n+"FailedMessage"))&&(le=c(null,"",t.getCssClass(o.MESSAGE)),i.parentNode.replaceChild(le,i));}a(yt,"createLoginScreen");function It(e){let n=t.id+"_LoginVerification_",i,s;w=c(e,"",`${t.getCssClass(o.LOGIN_SCREEN)} ${t.getCssClass(o.LOGIN_VERIFICATION)}`),w.style.display="none",t.applyTemplate(w,"LoginVerification",Y(n)),c(w,"",t.getCssClass(o.CONTENT),$lib.extract(w)),(i=$lib("#"+n+"VerificationCode"))&&(s=c(null,"",t.getCssClass(o.CODE)),i.parentNode.replaceChild(s,i),H=Ce("code"),H.maxLength=t.verificationCodeLength,te(s,i.id,t.verificationCodeFormFieldId,t.verificationCodeLabel,H)),(i=$lib("#"+n+"VerificationButton"))&&(s=c(),i.parentNode.replaceChild(s,i),ee(s,i.id,t.verificationButtonId,{cssClass:t.getCssClass(o.VERIFICATION),text:t.verificationButtonLabel,transparent:!1},function(){we();})),(i=$lib("#"+n+"FailedMessage"))&&(re=c(null,"",t.getCssClass(o.MESSAGE)),i.parentNode.replaceChild(re,i));}a(It,"createLoginVerificationScreen");function te(e,n,i,s,l){let r=$UI.createComponent(componyx.UI.FormField,{id:n,containerElement:e});r.clone($UI.store[i],t),r.setFieldTemplate(l),r.label=s,r.labelDisplay=l.type=="checkbox"?0:componyx.UI.FormField.LabelDisplayOption.INSIDE,r.events.onPostRender.priorityAdd(function(){t.isReady.apply(t);},null),r.showing=!0,r.render();}a(te,"createFormField");function Ce(e){return $lib.element("","","input",null,{type:"text",name:e,autocomplete:"off",spellcheck:"false"})}a(Ce,"createInput");function Tt(e){e.name=="pass"&&$lib.on(e,"keydown",function(n){n.key=="Enter"&&Ee();});}a(Tt,"bindInputEvents");function At(e){let n=this,i=$lib.hasClass(n,t.getCssClass(o.ICON_EYE_BLOCKED));v.type=i?"password":"text",n.className=i?t.getCssClass(o.ICON_EYE):t.getCssClass(o.ICON_EYE_BLOCKED);}a(At,"togglePasswordDisplay");function ve(e){e=e??W.value;let n={terms:e};if($lib.isEmpty(e)){E&&(E.style.display="none");return}t.ajaxCall("search",n,{onSuccess:a(function(i){Rt(i.data);},"onSuccess"),onError:a(function(i){De(t.searchNoResultLabel);},"onError")});}a(ve,"search");function Rt(e){let n={data:e,container:E,cancel:!1},i={};De(""),t.events.onPreSearchResults.fire(t,n),n.cancel!==!0&&(e&&e.length>0?$lib.each(e,function(s){let l=s.route.replace(/\\/,"/").toLowerCase(),r=s.title,d=Mt(l);i[d]||(i[d]=c(E,"nav"),c(i[d],"h2","",d));let u=$lib.element(i[d],"","a",r,{href:l}),f={...n,item:s,anchor:u};t.events.onRenderSearchResult.fire(t,f);}):E.innerHTML=t.searchNoResultLabel,$lib.each(i,function(s){s.firstElementChild.textContent+=" ("+(s.childNodes.length-1)+")";}),E.style.display="",t.events.onPostSearchResults.fire(t,n));}a(Rt,"showSearchResult");function De(e){E||(E=c(t.element,"div",t.getCssClass(o.SEARCH_RESULT))),E.innerHTML=e;}a(De,"createSearchResult");function Mt(e){if(e.indexOf("/")==-1)return t.searchCategoryLabels[""]||"";let n=e.substr(0,e.lastIndexOf("/"));return t.searchCategoryLabels[n]||n}a(Mt,"getSearchCategory");function X(){Lt([N,O,D,A]),$lib.removeClass(t.element,`${t.getCssClass(o.LOGIN)} ${t.getCssClass(o.ERROR)}`),k=z.PAGE,!R&&t.menuType!=y.SIDEMENU&&(h?.hide(),m?.deselect()),C&&!t.persistentTopBar&&(C.style.display="none",$lib.removeClass(t.element,t.getCssClass(o.TOPBAR))),t.footerDisplay!=G.PERSISTENT&&_&&St();}a(X,"hideAll");function Lt(e){for(let n=0;n<e.length;++n)e[n]&&(e[n].style.display="none");}a(Lt,"hide");function xe(){k==z.PORTAL&&R||(V()?$():ne());}a(xe,"toggleMenu");function ne(e){!e&&V()||(t.menuType==y.PORTALMENU?(X(),k=z.PORTAL,document.documentElement.style.overflow="hidden",h.show(),ge()):(t.showPage(),U.show(e||R)),t.footerDisplay==G.MENU&&Pe(),$lib.addClass(t.element,t.menuType==y.PORTALMENU?t.getCssClass(o.PORTAL_MENU):t.getCssClass(o.SIDE_MENU)),m&&(m.showing||m.show(),m.select()),t.events.onShowMenu.fire(t));}a(ne,"showMenu");function $(e,n){!e&&!V()||R&&t.launchMenu||(n&&pt(function(){he();}),t.events.onHideMenu.fire(t),t.showPage(),g()&&(m.deselect(),U.hide(e)));}a($,"hideMenu");function V(){return g()&&U.showing||!g()&&h.showing}a(V,"menuIsShowing");function g(){return t.menuType===y.SIDEMENU}a(g,"isSideMenu");function Pe(){_.style.display="",$lib.addClass(t.element,t.getCssClass(o.FOOTER));}a(Pe,"showFooter");function St(){_.style.display="none",$lib.removeClass(t.element,t.getCssClass(o.FOOTER));}a(St,"hideFooter");function $t(){g()&&$(),X(),t.hideMenuButtonOnLogin&&m?.hide(),N.style.display="",k=z.LOGIN,$lib.addClass(t.element,t.getCssClass(o.LOGIN)),q.focus(),v.type="password",t.events.onShowLogin.fire(t);}a($t,"showLogin");function Nt(){g()&&$(),X(),w.style.display="",k=z.LOGIN_VERIFICATION,$lib.addClass(t.element,`${t.getCssClass(o.LOGIN)} ${t.getCssClass(o.VERIFICATION)}`),H.focus(),t.events.onShowLoginVerification.fire(t);}a(Nt,"showLoginVerification");function Ee(e){e||(e={crsfToken:t.crsfToken,username:q.value,password:v.value,persistent:F?F.checked:!1}),be(e,function(n){n.data.cancel=!1,t.events.onLoginAttempt.fire(t,n.data),n.data.cancel!==!0&&(n.data.authenticationState?n.data.authenticationState==componyx.UI.AppSkin.AuthenticationStateOption.CREDENTIALS_VALIDATED?n.data.redirectPath?t.useBindary&&$bindary&&$bindary.routes&&$bindary.routes.length&&$bindary.loadRoute(n.data.redirectPath):t.showLoginVerification():T.location.reload():Be([v],n.data,le));});}a(Ee,"login");function we(e){e||(e={crsfToken:t.crsfToken,verificationCode:H.value}),be(e,function(n){if(n.data.cancel=!1,t.events.onLoginVerificationAttempt.fire(t,n.data),n.data.cancel!==!0)if(n.data.authenticationState)n.data.authenticationState==componyx.UI.AppSkin.AuthenticationStateOption.AUTHENTICATED&&T.location.reload();else {let i=n.data.failureReason;Be([H],n.data,re),(i==se.VERIFICATION_CODE_EXPIRED||i==se.MAX_VERIFY_ATTEMPTS_EXCEEDED)&&setTimeout(function(){T.location.reload();},t.verificationFailedReloadDelay);}});}a(we,"verifyCode");function Ot(e){e||(e={signout:!0}),be(e,function(n){n.data.cancel=!1,t.events.onLogout.fire(t,n.data),n.data.cancel!==!0&&(n.data&&n.data.failureMessage&&$lib.log(n.data.failureMessage),T.location.reload());});}a(Ot,"logout");function Be(e,n,i){let s=_t(n.failureReason);i&&(i.innerHTML=n.failureMessage||s||""),e.forEach(r=>{r.value="";}),e[0].focus();let l="Authentication failed. ";n.failureReason&&(l+=`Reason: ${se.getName(n.failureReason)}. `),n.failureMessage&&(l+=`Message: ${n.failureMessage}.`),$lib.log(l);}a(Be,"authenticationFailed");function _t(e){return $lib.isEmpty(e)?t.authenticationFailureLabel:t.authenticationFailureReasonLabels[e]}a(_t,"getAuthenticationFailureLabel");function be(e,n){t.ajaxCall("authenticate",e,{onSuccess:n});}a(be,"invokeAuthenticationMiddleware");function Fe(){if(!m)return;let e=t.persistentMenuButton||!Q||$lib.hasClass(t.element,t.getCssClass(o.HEADER_MENU_HIDDEN))||!$lib.isEmpty(h?.getActiveCategoryId());e&&!m.showing?m.show():!e&&m.showing&&m.hide();}a(Fe,"updateMenuButtonVisibility");function ge(e){clearTimeout(ye),ye=setTimeout(function(){let n=document.documentElement.style;x(),n.overflow="";},0);}a(ge,"resize");function x(){if(!b||!b.itemList.length){He();return}clearTimeout(Ie),Q&&$lib.addClass(t.element,t.getCssClass(o.HEADER_ALL)),Ie=setTimeout(function(){b.show();let e=$lib(null,b.element,"nav",!0),n=null;if(!e)return;C&&$lib.contains(C,b.element)&&(n=C.style.display||"",C.style.display="");let i=e.scrollWidth==e.clientWidth,s=t.getCssClass(o.HEADER_OVERFLOW),l=t.element,r,d=$lib.hasClass(l,s),u={headerOverflow:!i,cancel:!1};if(t.events.onResize.fire(t,u),u.cancel!==!0){if(i){let f=t.useBindary&&$bindary&&$bindary.routes&&$bindary.routes.length>0;$lib.removeClass(l,t.getCssClass(o.HEADER_MENU_HIDDEN)),t.menuType==y.SIDEMENU&&Q&&(!R||!f)&&$lib.isEmpty(h.getActiveCategoryId())&&(Fe(),$(!0));}else b.hide();!i&&d?($lib.addClass(l,t.getCssClass(o.HEADER_MENU_HIDDEN)),m&&!m.showing&&m.show()):i?i&&d&&$lib.getWindowSize().width>Ae&&($lib.removeClass(l,s),e.scrollWidth!=e.clientWidth?$lib.addClass(l,s):r=!0):($lib.addClass(l,s),Ae=$lib.getWindowSize().width,r=!0);}n!=null&&(C.style.display=n),r?x():He();},0);}a(x,"checkHeaderOverflow");function He(){t.useBindary&&$bindary&&$bindary.routes&&$bindary.routes.length>0||(R=!1);}a(He,"headerOverflowCheckComplete");function ke(e){let n=$lib.eventSource(e);n==m.element||$lib.contains(m.element,n)||n==h.element||$lib.contains(h.element,n)||U.showing&&$();}a(ke,"detectMenuToggle");function Ve(e){let n=e.target;E&&(n.nodeName.toLowerCase()=="a"||n!=W&&n!=W.parentNode&&n!=E&&!$lib.contains(E,n))&&(E.style.display="none");}a(Ve,"hideSearchResult");function Ut(){$lib.off(T,"resize",ge),$lib.off(t.element,"click",ke),$lib.off(document,"click",Ve);}a(Ut,"dispose");},"AppSkin"),componyx.UI.AppSkin.prototype=Object.create($base.methods),componyx.UI.AppSkin.prototype.constructor=componyx.UI.AppSkin,componyx.UI.AppSkin.ScreenOption={LOGIN:0,LOGIN_VERIFICATION:1,PORTAL:2,PAGE:3},componyx.UI.AppSkin.MenuTypeOption={PORTALMENU:0,SIDEMENU:1},componyx.UI.AppSkin.MenuSectionOption={HEADER:0,MAIN:1,FOOTER:2,QUICKLAUNCH:3},componyx.UI.AppSkin.TileSizeOption={SMALL:1,SMALL_WIDE:2,MEDIUM:4,MEDIUM_WIDE:8,LARGE:16,getName:a(function(M){return $base.static.getKeyByValue(this,M).toLowerCase()},"getName")},componyx.UI.AppSkin.RoutePathMatchingOption={DISABLED:0,EXACT:1,PARTIAL:2},componyx.UI.AppSkin.FooterDisplayOption={DISABLED:0,MENU:1,PERSISTENT:2},componyx.UI.AppSkin.FailureReasonOption={CRSF_TOKEN_MISMATCH:0,MAX_SIGNIN_ATTEMPTS_EXCEEDED:1,USERNAME_OR_PASSWORD_MISMATCH:2,VERIFICATION_CODE_MISMATCH:3,VERIFICATION_CODE_EXPIRED:4,MAX_VERIFY_ATTEMPTS_EXCEEDED:5,OTHER:6,getName:a(function(M){return $base.static.getKeyByValue(this,M).toLowerCase()},"getName")},componyx.UI.AppSkin.AuthenticationStateOption={UNAUTHENTICATED:0,CREDENTIALS_VALIDATED:1,AUTHENTICATED:2},componyx.UI.AppSkin.MenuItem=function(M){this.menuSection=componyx.UI.AppSkin.MenuSectionOption.HEADER,this.groupTileSize=null,this.buttonTileSize=componyx.UI.AppSkin.TileSizeOption.MEDIUM,this.categoryInHeader=!1,componyx.UI.Menu.Item.call(this,M);};})(window);
169
+ })(window);
170
+
171
+
172
+ (async function(window){var T=Object.defineProperty;var i=(a,g)=>T(a,"name",{value:g,configurable:!0});(function(a){componyx.UI.BookmarkSpy=i(function(_,r){let t=this,U=a.requestAnimationFrame,R=a.cancelAnimationFrame,$,o,P,u,p,c,f,S,d=new Map,m=[];this.cssClass="selected",this.cssClassParent="",this.horizontal=!1,this.updateURL=!0,this.fireAnchorClick=!1,this.scroller=null,this.anchorContainer=null,this.offset=0,this.tags="",this.menuId=null;function z(e){Object.assign(this,e),this.onPreInit=$base.static.createEvent("onPreInit"),this.onPostInit=$base.static.createEvent("onPostInit"),this.onChange=$base.static.createEvent("onChange");}i(z,"BookmarkSpyEvents"),this.events=new z(this.events),r?$lib.isElement(r)&&(r={containerElement:r}):r={},r.cssClass==null&&(r.cssClass=this.cssClass),$base.Component.apply(this,[_,r]),this.hide=null,this.show=function(){t.renderState==$base.static.RenderState.NONE&&this.render();},this.init=function(){const e=t.element;t.destroy(!0,!1),t.element=e,t.hasTheme=!1,$UI.store[t.id]=t,e&&($UI.elementStore.set(e,t),$base.methods.setupMutationObserver.call(t)),t.renderState=$base.static.RenderState.RENDERED,t.events.onPreInit.fire(t),$UI.busy?$UI.onPostRender.has(I)||$UI.onPostRender.once(I):I();},this.render=this.init,this.destroy=function(...e){F(),$base.methods.destroy.call(this,...e);};function I(){S=a.location.pathname,o=k(t.scroller)||$lib.scrollableRoot(),P=k(t.anchorContainer)||document;let e=$lib(null,o,t.tags),s=$lib(null,P,"a");$lib.each(e,function(n){let l=A(n.id,s);l&&(m.push(n),d.set(n.id,l),p=l,u||(u=l));}),m.reverse(),E(),t.events.onPostInit.fire(t);}i(I,"init");function k(e){return e&&typeof e=="string"&&$lib("#"+e)?$lib("#"+e):e}i(k,"getElement");function A(e,s){if($lib.isEmpty(e))return;let n;return $lib.each(s,function(l){let h=l.href.lastIndexOf("#");if(h>-1&&l.href.substr(h+1)===e)return n=l,!1}),n}i(A,"getAnchor");function E(){if(!d.size||a.location.pathname!==S)return;let e=t.horizontal?o.scrollLeft:o.scrollTop;($lib.isEmpty(f)||Math.abs(f-e)>=1)&&(f=e,x()),$=U(E);}i(E,"update");function x(){f==0?L():B()?M():$lib.each(m,function(e){let s=o!==$lib.scrollableRoot()?$lib.getPos(o,null,!0):{top:0,left:0},n=$lib.getPos(e,null,!0);if((t.horizontal?n.left-(s.left+o.clientLeft):n.top-(s.top+o.clientTop))<=t.offset)return C(d.get(e.id)),!1});}i(x,"spy");function B(){let e=t.horizontal?o.clientWidth:o.clientHeight,s=t.horizontal?o.scrollWidth:o.scrollHeight,n=s-e;return Math.abs(f-n)<1}i(B,"isScrollEnd");function L(){C(u);}i(L,"selectFirst");function M(){C(p);}i(M,"selectLast");function C(e){if(e===c)return;let s=c,n=e.href.split("#"),l=n.length-1;c=e,s&&v(s),t.cssClass&&$lib.addClass(e,t.cssClass),t.cssClassParent&&y(e),t.fireAnchorClick&&e.click(),e.scrollIntoView({block:"nearest",behavior:"smooth"});let h={selected:c,deselected:s};if(O(h),t.updateURL){let b;$lib.isEmpty(a.location.hash)?b=a.location.href+"#"+n[l]:b=a.location.href.replace(/(.+)(#.+)$/,"$1#"+n[l]),a.history.replaceState(null,"",b);}t.events.onChange.fire(t,h);}i(C,"selectItem");function O(e){if(!t.menuId)return;let s=$UI.store[t.menuId];e.deselected&&s.deselectItem($UI.elementStore.get(e.deselected).id.replace(s.id+"_","")),s.selectItem($UI.elementStore.get(e.selected).id.replace(s.id+"_",""));}i(O,"updateMenu");function y(e,s){$lib(function(n){let l=N(n.previousElementSibling);l&&(s?$lib.removeClass(l,t.cssClassParent):$lib.addClass(l,t.cssClassParent),y(l));},e,"",!1,!0);}i(y,"selectParent");function N(e){if(!e)return null;if(e.nodeName.toLowerCase()==="a")return e;let s=$lib(null,e,"a");if(s.length)return s[s.length-1]}i(N,"getParentAnchor");function v(e){$lib.removeClass(e,t.cssClass),t.cssClassParent&&y(e,!0);}i(v,"deselectItem");function F(){R($),$=null,c&&v(c),m=[],d=new Map,u=p=f=c=null;}i(F,"dispose");},"BookmarkSpy"),componyx.UI.BookmarkSpy.prototype=Object.create($base.methods),componyx.UI.BookmarkSpy.prototype.constructor=componyx.UI.BookmarkSpy;})(window);
173
+ })(window);
174
+
175
+
176
+ (async function(window){var Me=Object.defineProperty;var a=(T,v)=>Me(T,"name",{value:v,configurable:!0});(function(T){componyx.UI.Box=a(function(me,ge){var e=this,j,Y,p=[],k=null,L,F,h={},c=null,O=!1,I=!1,Z=!1,q=!1,X=null,N=0,D=0,J=!1,g=!0,A=null,P,S,$e="position:fixed; left:0px; top:0px; width:100%; height:100%;";$base.static.ThemeOption;var f=componyx.UI.Box.AutoPositionOption,u=componyx.UI.Box.ExpandDirectionOption,Q=componyx.UI.Box.AlignXOption,ee=componyx.UI.Box.AlignYOption,y=componyx.UI.Box.AnimationTypeOption,d={CONTENT:"content",MODAL:"modal",EXPANDED:"expanded",HORIZONTALINVERTED:"inverted",VERTICALINVERTED:"inverted",SHOW:"show",SHOWANIMATION:"show-animation",HIDEANIMATION:"hide-animation"};this.cssClassContent="",this.cssClassModal="",this.cssClassHorizontalInverted="",this.cssClassVerticalInverted="",this.top="",this.right="",this.bottom="",this.left="",this.width="",this.height="",this.stretchToExpander=!1,this.stretchToContent=!1,this.handleFocus=!1,this.autoFocus=!0,this.tabIndexFocus=!1,this.autoPosition=f.NONE,this.autoFit=!0,this.autoInvertFit=!1,this.autoResizeFit=!1,this.autoInvertAnimation=!0,this.resizeToMaxWidth=!0,this.resizeToMaxHeight=!0,this.modal=!1,this.draggable=!1,this.hideOnOutsideClick=!1,this.trackPointer=!1,this.alignX=null,this.alignY=null,this.contentTag="div",this.expandDirection=u.RIGHT,this.expander=null,this.enterKeySubmitter=null,Object.defineProperty(this,"contentElement",{get:a(function(){return j},"get")}),this.animation={showType:null,showClass:null,showDirection:null,showFade:null,hideType:null,hideClass:null,hideDirection:null,hideFade:null},this.dragSettings={};function xe(t){Object.assign(this,t),this.onPrePosition=$base.static.createEvent("onPrePosition"),this.onPostPosition=$base.static.createEvent("onPostPosition"),this.onAutoFit=$base.static.createEvent("onAutoFit"),this.onShowComplete=$base.static.createEvent("onShowComplete"),this.onHideComplete=$base.static.createEvent("onHideComplete");}a(xe,"BoxEvents"),this.events=new xe(this.events),$base.Component.apply(this,[me,ge]),this.setContentTemplate=function(t){e.addTemplate("Content",t,!1);},this.update=function(t,i){w(),t&&(e.addTemplate("Content",t,!1),e.applyTemplate(e.contentElement,"Content")),(e.modal||e.handleFocus)&&de(),e.autoPosition==f.EXPAND&&ie(),e.showing||!i?(e.showing&&e.autoPosition==f.EXPAND&&e.expander!=A&&(M(A,!0),M(e.expander),A=e.expander),pe()):this.show();},this.stopAnimation=function(){w();},this.toggle=function(){ue(),$base.methods.toggle.call(e);},this.show=function(t,i){ye(t,i);},this.hide=function(t){Ee(t);},this.render=function(){if(e.renderState!=$base.static.RenderState.RENDERING){$base.methods.render.call(e,Ie,"box",!1);return}e.ajax.load&&e.ajax.load.isDefined()?Ne():ce();},this.destroy=function(...t){w(),ze(),$base.methods.destroy.call(this,...t);};function ye(t,i){var n=e.animation;e.element;var s=n.showType!=null?n.showType:y.SLIDE;if(ue(),e.showing&&J){g=!0,z(),t&&w();return}if(J=!0,g=!1,A=e.expander,e.renderState!=$base.static.RenderState.RENDERED){J=!1,e.renderState==$base.static.RenderState.NONE&&$base.methods.show.call(e);return}z(),w(),Te(),le(),e.autoPosition==f.POINTER&&(S=i??{clientX:$lib.event?$lib.clientX($lib.event):0,clientY:$lib.event?$lib.clientY($lib.event):0}),t||!s?re(t):L||(L=setTimeout(re.bind(e,t),0));}a(ye,"show");function re(t){var i=e.animation,n=e.element,l=i.showType!=null?i.showType:y.SLIDE,s=he(),o=i.showFade!=null?i.showFade:!1;$base.methods.show.call(e),n.style.display="",pe(),M(e.expander),_e(),e.showing=!0,e.trackPointer&&($lib.on(document,"pointermove",te,null,e),$lib.on(document,"pointerup",U,e.hideOnOutsideClick)),P.style.display="none",e.autoInvertAnimation&&O&&(s=s.indexOf("right")>-1?s.replace("right","left"):s.replace("left","right")),e.autoInvertAnimation&&I&&(s=s.indexOf("down")>-1?s.replace("down","up"):s.replace("up","down")),!t&&l>0?l==y.SLIDE?c=$lib.slide(n,!1,"slide",s,o,V):l==y.REVEAL?c=$lib.slide(n,!1,"reveal",s,o,V):l==y.CSS?c=$lib.cssAnimation(n,i.showClass||d.SHOWANIMATION,[],{onComplete:V}):V():V(),g=!0;}a(re,"execShow");function Ee(t){if(!e.showing){z(),t&&w();return}if(e.renderState==$base.static.RenderState.RENDERED){var i=e.animation,n=i.hideType!=null?i.hideType:y.SLIDE;z(),w(),g=!1,t||!n?fe(t):F||(F=setTimeout(fe.bind(e,t),0));}}a(Ee,"hide");function fe(t){var i=e.animation,n=e.element,l=i.hideType!=null?i.hideType:y.SLIDE,s=Oe(),o=i.hideFade!=null?i.hideFade:!1,r={event:$lib.event,cancel:!1};if(e.showing=!1,e.events.onHide.fire(e,r),r.cancel){e.showing=g=!0;return}le(),U(),n.style.display="",P.style.display="none",!t&&l>0?(e.autoInvertAnimation&&O&&(s=s.indexOf("right")>-1?s.replace("right","left"):s.replace("left","right")),e.autoInvertAnimation&&I&&(s=s.indexOf("down")>-1?s.replace("down","up"):s.replace("up","down")),l==y.SLIDE?c=$lib.slide(n,!0,"slide",s,o,_):l==y.REVEAL?c=$lib.slide(n,!0,"reveal",s,o,_):l==y.CSS?c=$lib.cssAnimation(n,i.hideClass||d.HIDEANIMATION,[],{onComplete:_}):_()):_(),g=!0;}a(fe,"execHide");function V(){if(!(arguments[0]&&arguments[0]instanceof Event&&arguments[0].target!==e.element)){var t=e.element;L=null,$lib.addClass(t,d.SHOW),t.style.display="",e.modal&&(P.style.display=""),(e.modal||e.handleFocus)&&(de(),Ce(),$lib.on(t,"keydown",ne),e.autoFocus&&p.length>0&&setTimeout(function(){ne();},1)),c&&(c=null,K()),e.events.onShowComplete.fire(e);}}a(V,"showComplete");function _(){if(!(arguments[0]&&arguments[0]instanceof Event&&arguments[0].target!==e.element)){var t=e.element;F=null,(e.modal||e.handleFocus)&&$lib.off(t,"keydown",ne),$lib.removeClass(t,d.SHOW),M(e.expander,!0),e.showing=!1,c=null,S=null,$base.methods.hide.call(e,!1),e.events.onHideComplete.fire(e);}}a(_,"hideComplete");function z(){clearTimeout(L),clearTimeout(F),L=F=null;}a(z,"clearTimers");function te(t){const i=t.pointerType;(i==="mouse"||i==="pen")&&K();}a(te,"trackPointer");function U(t){$lib.off(document,"pointermove",te),$lib.off(document,"pointerup",U),t&&(g=!0,G());}a(U,"stopPointerTracking");function ue(){ie(),e.expander!=A&&e.autoPosition==f.EXPAND&&(e.hide(!0),M(A,!0));}a(ue,"checkExpander");function ie(){!$lib.isEmpty(e.expander)&&typeof e.expander=="string"&&$lib("#"+e.expander)&&(e.expander=$lib("#"+e.expander));}a(ie,"getExpander");function Te(){var t=e.animation.showDirection||"right",i=e.expandDirection==u.DOWN||e.expandDirection==u.UP;ve(),e.expandDirection!=null?$lib.addClass(e.element,u.getName(e.expandDirection)):$lib.addClass(e.element,t),i&&e.alignX>0?$lib.addClass(e.element,$lib.format("align-{0}",Q.getName(e.alignX))):!i&&e.alignY>0&&$lib.addClass(e.element,$lib.format("align-{0}",ee.getName(e.alignY)));}a(Te,"addDirectionClass");function ve(){$lib.removeClass(e.element,"down right up left align-left align-center align-right align-top align-bottom");}a(ve,"clearDirectionClasses");function M(t,i){$lib.isEmpty(t)||e.autoPosition!=f.EXPAND||(i?$lib.removeClass(t,d.EXPANDED):$lib.addClass(t,d.EXPANDED));}a(M,"setExpanded");function G(){g&&e.hide(),g=!0;}a(G,"checkHide");function Ce(){$lib(function(t){t.blur&&t.blur();},document.body);}a(Ce,"blurAll");function de(){p=[],$lib(function(t){$lib.focusable(t)&&p.push(t);},e.element),e.tabIndexFocus&&(p=p.sort(function(t,i){return t.tabIndex-i.tabIndex}));}a(de,"createFocusableList");function ne(t){let i=t?t.key:null,n=t?t.shiftKey:!1,l,s,o,r,x=e.element.ownerDocument||document;if(p.length&&(!t||i=="Tab")){if(t){if(s=$lib.eventSource(t),l=o=$lib.indexOf(p,s),o==-1)return;o==p.length-1?o=n?o-1:0:n?o--:o++,o<0&&(o=0),t.returnValue=!1;}else l=p.length,o=0;for(;!r&&l!=o;)p[o].focus(),r=p[o]===x.activeElement,r||(n?o--:o++,o<0&&(o=p.length-1),o!=l&&o==p.length&&(o=0));return !1}}a(ne,"setFocus");function he(){var t=e.animation;return t.showDirection?t.showDirection:e.expandDirection!=null?u.getName(e.expandDirection):"right"}a(he,"getShowDirection");function Oe(){var t=e.animation;return t.hideDirection!=null?t.hideDirection:he()}a(Oe,"getHideDirection");function w(){c&&c.complete(),c=null;}a(w,"stopAnimation");function Ie(){return ["Box"]}a(Ie,"preRender");function Ne(t,i){e.ajaxCall("load",null,{onSuccess:De});}a(Ne,"load");function De(t){ce(t.data);}a(De,"dataLoaded");function ce(t){var i=e.element,n=document.createElement(e.contentTag||"div");P=document.createElement("div"),P.className=e.cssClassModal||d.MODAL,$lib.updateStyle(P.style,$e),i.appendChild(P),n.className=e.cssClassContent||d.CONTENT,i.appendChild(n),t?n.innerHTML=t:e.applyTemplate(n,"Content"),j=n,X=new ResizeObserver(B),X.observe(j),Ve(),e.draggable&&(Y=$lib.draggable(e.element,$base.static.initDragSettings(e.dragSettings))),e.postRender();}a(ce,"draw");function pe(){h={},$lib.setStyle(e.element,""),ie(),Pe(),we(),K();}a(pe,"activate");function Pe(){if(!(!e.showing||c||!e.stretchToExpander&&!e.stretchToContent)){var t=e.element,i,n;e.stretchToContent&&(i=$lib.size(e.contentElement),t.style.minWidth=$lib.unit(i.width),t.style.minHeight=$lib.unit(i.height)),e.stretchToExpander&&e.expander&&(n=$lib.size(e.expander),i||(i=$lib.size(e.contentElement)),n.width>i.width&&(t.style.minWidth=$lib.unit(n.width)));}}a(Pe,"stretch");function we(){var t=e.element,i=e.contentElement,n=[];$lib.updateStyle(t.style,e.style),i.style.width=i.style.height="",e.top&&n.push("top: "+$lib.unit(e.top)),e.right&&n.push("right: "+$lib.unit(e.right)),e.bottom&&n.push("bottom: "+$lib.unit(e.bottom)),e.left&&n.push("left: "+$lib.unit(e.left)),e.width&&n.push("width: "+$lib.unit(e.width)),e.height&&n.push("height: "+$lib.unit(e.height)),n.length>0&&$lib.updateStyle(t.style,n.join(";"));}a(we,"setStyle");function K(){if(clearTimeout(k),k=null,!(!e.showing||c||e.autoPosition==f.NONE&&!e.autoFit)){var t=e.element;if(N=D=0,e.events.onPrePosition.fire(e,null),e.autoInvertFit&&($lib.removeClass(t,e.cssClassHorizontalInverted||d.HORIZONTALINVERTED),$lib.removeClass(t,e.cssClassVerticalInverted||d.VERTICALINVERTED)),e.autoPosition!=f.NONE){var i=h.position||$lib.styleValue(t,"position");i!="absolute"&&i!="fixed"&&(t.style.position="fixed",i="fixed",h.position=i),t.style.position=i,e.autoPosition==f.EXPAND?Re(i):e.autoPosition==f.POINTER&&S?Ae(i,S.clientX,S.clientY):Se(i);}e.events.onPostPosition.fire(e,null),e.autoFit&&He();}}a(K,"position");function oe(){$lib.updateStyle(e.element.style,"left: $; right: $; top: $; bottom: $; width: $; height: $;".replace(/\$/g,"auto"));}a(oe,"clearPosition");function Re(t){oe();var i={},n=e.expandDirection==u.DOWN||e.expandDirection==u.UP,l=e.element,s=e.expander,o=$lib.getPos(s,null,t=="fixed"),r=h.width=h.width||l.offsetWidth,x=h.height=h.height||l.offsetHeight,H=n&&e.alignX>0?s.offsetWidth:0,C=!n&&e.alignY>0?s.offsetHeight:0;switch(N=o.width,D=o.height,e.expandDirection){case u.DOWN:i.left=o.left,i.top=o.bottom;break;case u.UP:i.left=o.left,i.top=o.top-x;break;case u.RIGHT:i.left=o.right,i.top=o.top;break;case u.LEFT:i.left=o.left-r,i.top=o.top;break}n&&e.alignX>0?e.alignX==Q.CENTER?i.left+=H/2-r/2:i.left=o.right-r:!n&&e.alignY>0&&(e.alignY==ee.CENTER?i.top+=C/2-x/2:i.top=o.bottom-x),$lib.setPos(l,i,!0);}a(Re,"positionExpand");function Ae(t,i,n){var l={},s=e.animation.showDirection||"right",o=e.element,r=h.width=h.width||o.offsetWidth,x=h.height=h.height||o.offsetHeight,H=$lib.getScrollPosition(),C=t!="fixed"?n+H.scrollTop:n,m=t!="fixed"?i+H.scrollLeft:i;oe(),e.expandDirection!=null&&(s=u.getName(e.expandDirection)),s.indexOf("left")>-1?l.left=m-r:l.left=m,s.indexOf("up")>-1?l.top=C-x:l.top=C,e.alignX==Q.CENTER?l.left=m-r/2:e.alignX>0&&(l.left=m-r),e.alignY==ee.CENTER?l.top=C-x/2:e.alignY>0&&(l.top=C-x),$lib.setPos(o,l,!0);}a(Ae,"positionAtPointer");function Se(t){var i=e.element,n;oe(),n=$lib.getPos(i,$lib.positionedParent(i),t=="fixed"),e.autoPosition<=f.TOPRIGHT?i.style.top="0%":e.autoPosition<=f.RIGHT?(i.style.top="50%",i.style.marginTop=$lib.unit(n.height/2*-1)):i.style.bottom="0%",e.autoPosition==f.TOPLEFT||e.autoPosition==f.LEFT||e.autoPosition==f.BOTTOMLEFT?i.style.left="0%":e.autoPosition==f.TOPCENTER||e.autoPosition==f.CENTER||e.autoPosition==f.BOTTOMCENTER?(i.style.left="50%",i.style.marginLeft=$lib.unit(n.width/2*-1)):i.style.right="0%";}a(Se,"positionAuto");function He(){var t=e.element,i=$lib.getWindowSize(),n=$lib.getPos(t,null,!0),l=e.autoPosition==f.NONE||e.autoPosition==f.EXPAND||e.autoPosition==f.POINTER,s=!!(l&&(n.left<0||n.right>i.width)),o=!!(l&&(n.top<0||n.bottom>i.height)),r=e.expandDirection==u.DOWN||e.expandDirection==u.UP;O=I=Z=q=!1,t.style.removeProperty("--expander-offset"),s&&(Fe(n,i),r&&($lib.removeClass(e.element,"align-left align-center align-right"),t.style.left&&t.style.left!="auto"?$lib.addClass(e.element,"align-left"):$lib.addClass(e.element,"align-right")),o||(t.style.top=$lib.unit(n.top-parseFloat($.styleValue(t,"margin-top",!0))))),o&&(Le(n,i),r||($lib.removeClass(e.element,"align-top align-center align-bottom"),t.style.top&&t.style.top!="auto"?$lib.addClass(e.element,"align-top"):$lib.addClass(e.element,"align-bottom")),s||(t.style.left=$lib.unit(n.left-parseFloat($.styleValue(t,"margin-left",!0))))),(s||o)&&(t.style.position="fixed",Xe(t,r),e.events.onAutoFit.fire(e,{fitX:s,fitY:o,invertedX:O,invertedY:I,resizedX:Z,resizedY:q}));}a(He,"fit");function Le(t,i){var n=e.element,l=be(n,!0),s=0,o=0,r=0,m=t.height<=i.height,b=a(function(){if(m||!e.autoResizeFit)return;const W=T.getComputedStyle(n),se=(W.boxSizing||W.getPropertyValue("box-sizing")||"content-box").toLowerCase();let E;e.resizeToMaxHeight?(E=i.height,n.style.top=$lib.unit(0)):E=I?r:s;let R=E;if(se==="content-box"){const ae=$lib.borderAndPadding(n);R=E-ae.height;}n.style.height=R>0?$lib.unit(R):"0px",h.height=null,q=!0;},"resize");if($lib.updateStyle(n.style,"top:auto;bottom:auto;margin-top:0px !important;margin-bottom:0px !important;"),e.autoPosition!=f.EXPAND||!e.autoInvertFit||e.expandDirection!=u.DOWN&&e.expandDirection!=u.UP)return t.top<0?n.style.top=$lib.unit(0):n.style.bottom=$lib.unit(0),b();if(e.expandDirection==u.DOWN){if(t.top<0)return n.style.top=$lib.unit(0),b();if(t.top-D>i.height)return n.style.bottom=$lib.unit(0),b();s=i.height-t.top,o=l.top-(l.height+D),r=o<0?l.bottom-l.height-D:l.height;}else {if(t.bottom>i.height)return n.style.bottom=$lib.unit(0),b();if(t.bottom+D<0)return n.style.top=$lib.unit(0),b();s=i.height<t.bottom?i.height:t.bottom,o=l.bottom+D,r=o<0?0:i.height-o;}if(t.height<=r){$lib.addClass(n,e.cssClassVerticalInverted||d.VERTICALINVERTED),n.style.top=$lib.unit(o),I=!0;return}else return s>=r?m&&t.top>=0?n.style.bottom=$lib.unit(0):n.style.top=t.top>=0?$lib.unit(t.top):$lib.unit(0):n.style.top=o>=0?$lib.unit(o):$lib.unit(0),r>s&&($lib.addClass(n,e.cssClassVerticalInverted||d.VERTICALINVERTED),I=!0),e.resizeToMaxHeight||(m=s>=r?t.height<=s:t.height<=r),b()}a(Le,"fitVertical");function Fe(t,i){var n=e.element,l=be(n),s=0,o=0,r=0,m=t.width<=i.width,b=a(function(){if(m||!e.autoResizeFit)return;const W=T.getComputedStyle(n),se=(W.boxSizing||W.getPropertyValue("box-sizing")||"content-box").toLowerCase();let E;e.resizeToMaxWidth?(E=i.width,n.style.left=$lib.unit(0)):E=O?r:s;let R=E;if(se==="content-box"){const ae=$lib.borderAndPadding(n);R=E-ae.width;}n.style.width=R>0?$lib.unit(R):"0px",h.width=null,Z=!0;},"resize");if($lib.updateStyle(n.style,"left:auto;right:auto;margin-left:0px !important;margin-right:0px !important;"),e.autoPosition!=f.EXPAND||!e.autoInvertFit||e.expandDirection!=u.RIGHT&&e.expandDirection!=u.LEFT)return t.left<0?n.style.left=$lib.unit(0):n.style.right=$lib.unit(0),b();if(e.expandDirection==u.RIGHT){if(t.left<0)return n.style.left=$lib.unit(0),b();if(t.left-N>i.width)return n.style.right=$lib.unit(0),b();s=i.width-t.left,o=l.left-(l.width+N),r=o<0?l.right-l.width-N:l.width;}else {if(t.right>i.width)return n.style.right=$lib.unit(0),b();if(t.right+N<0)return n.style.left=$lib.unit(0),b();s=i.width<t.right?i.width:t.right,o=l.right+N,r=o<0?0:i.width-o;}if(t.width<=r){$lib.addClass(n,e.cssClassHorizontalInverted||d.HORIZONTALINVERTED),n.style.left=$lib.unit(o),O=!0;return}else return s>=r?m&&t.left>=0?n.style.right=$lib.unit(0):n.style.left=t.left>=0?$lib.unit(t.left):$lib.unit(0):n.style.left=o>=0?$lib.unit(o):$lib.unit(0),r>s&&($lib.addClass(n,e.cssClassHorizontalInverted||d.HORIZONTALINVERTED),O=!0),e.resizeToMaxWidth||(m=s>=r?t.width<=s:t.width<=r),b()}a(Fe,"fitHorizontal");function Xe(t,i){if(!e.expander)return;const n=t.getBoundingClientRect(),l=e.expander.getBoundingClientRect(),s=l.left+l.width/2,o=l.top+l.height/2;if(i){if(t.classList.contains("align-left")){const r=Math.floor(s-n.left);t.style.setProperty("--expander-offset",r+"px");}else if(t.classList.contains("align-right")){const r=Math.floor(n.right-s);t.style.setProperty("--expander-offset",r+"px");}}else if(t.classList.contains("align-top")){const r=Math.floor(o-n.top);t.style.setProperty("--expander-offset",r+"px");}else if(t.classList.contains("align-bottom")){const r=Math.floor(n.bottom-o);t.style.setProperty("--expander-offset",r+"px");}}a(Xe,"setExpanderOffset");function be(t,i){var n=i?e.cssClassVerticalInverted||d.VERTICALINVERTED:e.cssClassHorizontalInverted||d.HORIZONTALINVERTED,l;return $lib.hasClass(t,n)?l=$lib.getPos(t,null,!0):($lib.addClass(t,n),l=$lib.getPos(t,null,!0),$lib.removeClass(t,n)),l}a(be,"getInvertRect");function Ve(){$lib.on(T,"resize",B,null,e),$lib.on(T,"scroll",B,null,e),$lib.on(e.element,"pointerdown pointerup",function(){g=!1;},null,e),$lib.on(e.element,"pointercancel",function(){g=!0;},null,e),$lib.on(e.element,"keydown",function(t){const i=e.element.ownerDocument||document,n=i.activeElement;if(!t.defaultPrevented&&e.enterKeySubmitter&&t.key?.toLowerCase()=="enter"&&!t.shiftKey&&n&&e.element.contains(n)){let l=e.enterKeySubmitter;l=typeof l=="string"?$lib("#"+l):l,$lib.fireEvent(l,"click",!0,!0);}});}a(Ve,"bindGlobalEvents");function _e(){e.hideOnOutsideClick&&!$lib.has(document,"pointerup",G)&&$lib.on(document,"pointerup",G);}a(_e,"bindOutsideClickHandler");function le(){$lib.off(document,"pointerup",G);}a(le,"removeOutsideClickHandler");function B(){clearTimeout(k),k=setTimeout(K,0);}a(B,"positionDelayed");function ze(){$lib.off(T,"resize",B),$lib.off(T,"scroll",B),$lib.off(document,"pointermove",te),$lib.off(document,"pointerup",U),X&&(X.disconnect(),X=null),z(),le(),Y&&Y.disable(),Y=null,S=null,h={};}a(ze,"dispose");},"Box"),componyx.UI.Box.prototype=Object.create($base.methods),componyx.UI.Box.prototype.constructor=componyx.UI.Box,componyx.UI.Box.AutoPositionOption={NONE:0,TOPLEFT:1,TOPCENTER:2,TOPRIGHT:3,LEFT:4,CENTER:5,RIGHT:6,BOTTOMLEFT:7,BOTTOMCENTER:8,BOTTOMRIGHT:9,POINTER:10,EXPAND:11},componyx.UI.Box.ExpandDirectionOption={DOWN:0,RIGHT:1,UP:2,LEFT:3,getName:a(function(v){return $base.static.getKeyByValue(this,v).toLowerCase()},"getName")},componyx.UI.Box.AlignXOption={LEFT:0,CENTER:1,RIGHT:2,getName:a(function(v){return $base.static.getKeyByValue(this,v).toLowerCase()},"getName")},componyx.UI.Box.AlignYOption={TOP:0,CENTER:1,BOTTOM:2,getName:a(function(v){return $base.static.getKeyByValue(this,v).toLowerCase()},"getName")},componyx.UI.Box.AnimationTypeOption={NONE:0,SLIDE:1,REVEAL:2,CSS:3};})(window);
177
+ })(window);
178
+
179
+
180
+ (async function(window){var le=Object.defineProperty;var o=(S,c)=>le(S,"name",{value:c,configurable:!0});(function(S){componyx.UI.Button=o(function(B,T){let e=this,f,N=componyx.UI.Button.SizeOption,s=componyx.UI.Button.TypeOption,i=componyx.UI.Button.ExpandDirectionOption,d=componyx.UI.Button.AlignOption,C=componyx.UI.Button.DecorationOption,u,p,b=[],A,x=new Map,M,R,a={SIZE_PREFIX:"size-",CONTENT_ALIGN:"content",SPLIT:"split",TRANSPARENT:"lucent",BASIC:"basic",PRIMARY:"pri",BORDER:"border",COMMAND:"command",ICON:"icon",CONTENT_HOLDER:"content-holder",EXPAND:"expand",EXPAND_ICON:"expand-icon",CHECK:"check",RADIO:"radio",RIPPLE:"ripple",RIPPLE_MASK:"ripple-mask",UNDERLINE:"line-under",OVERLINE:"line-over",FRONTLINE:"line-front",BACKLINE:"line-back"};this.cssClassContentAlign="",this.cssClassIconAlign="",this.cssClassSplit="",this.cssClassCommand="",this.cssClassExpand="",this.cssClassExpandIcon="",this.cssClassIcon="",this.cssClassContentHolder="",this.shortcutKey=null,this.shortcutScope=null,this.keyboardExpand=!0,this.href=null,this.target=null,this.command=null,this.expandCommand=null,this.collapseCommand=null,this.text=null,this.iconUrl=null,this.size=N.MEDIUM,this.contentAlign=d.CENTER,this.iconAlign=d.LEFT,this.type=s.COMMANDBUTTON,this.expandDirection=i.DOWN,this.decoration=C.BACKGROUND,this.radioGroupId=null,this.renderId=!0,this.autoPostBack=!1,this.hasIcon=!1,this.disabled=!1,this.selected=!1,this.expanded=!1,this.split=!1,this.transparent=!1,this.transparentBorder=!0,this.primary=!0,this.rippleAnimation=!0,this.menuId=null,this.menuItemId=null,this.boxId=null,this.tooltipManagerId=null,this.tooltipId=null,Object.defineProperty(this,"contentElement",{get:o(function(){return f},"get")});function W(t){Object.assign(this,t),["Focus","Blur","PointerEnter","PointerLeave","PointerDown","PointerUp","DblClick","Select","Deselect"].forEach(l=>{this[`on${l}`]=$base.static.createEvent(`on${l}`);}),["Command","Expand"].forEach(l=>{["Click","PointerEnter","PointerLeave","PointerDown","PointerUp","DblClick"].forEach(r=>{this[`on${l}${r}`]=$base.static.createEvent(`on${l}${r}`);});});}o(W,"ButtonEvents"),this.events=new W(this.events),$base.Component.apply(this,[B,T]),this.isKeyboardNavigation=function(){return R},this.toggleSelect=function(){k();},this.select=function(){P();},this.deselect=function(){w();},this.enable=function(){ee();},this.disable=function(t){V(t);},this.focus=function(){te();},this.blur=function(){X();},this.commandClick=function(){$();},this.expandClick=function(){L();},this.getCommandButton=function(){return e.split?u:e.element},this.getExpandButton=function(){return e.split?p:null},this.updateContent=function(){G();},this.setContentTemplate=function(t){e.addTemplate("Content",t,!1);},this.clone=function(t,n,l,r){$base.methods.clone.call(e,t,n,l,r),t&&(e.command=t.command);},this.render=function(){if(e.renderState!=$base.static.RenderState.RENDERING){$base.methods.render.call(e,j,"button",!0,"a");return}Y(),componyx.UI.Button.ShortcutManager.registerButton(e),e.renderId||e.element.removeAttribute("id");},this.postRender=function(){if(e.renderState!=$base.static.RenderState.RENDERING)return;e.tooltipManagerId&&e.tooltipId&&$UI.store[e.tooltipManagerId].addTrigger(e.element,e.tooltipId);let t=e.split?e.getExpandButton():e.element;e.menuId?t.setAttribute("aria-haspopup","menu"):e.boxId&&t.setAttribute("aria-haspopup","dialog"),$base.methods.postRender.call(e);},this.destroy=function(...t){se(),$base.methods.destroy.call(this,...t);};function j(){return ["Button"]}o(j,"preRender");function Y(){let t=e.element,n=document.createElement("span"),l=$lib.isEmpty(e.expandDirection)?i.DOWN:e.expandDirection,r=e.menuId||e.boxId||e.expandCommand,m=null,I=q(e.decoration);if(f=document.createElement("div"),e.command=K(e.command),e.expandCommand=K(e.expandCommand),e.command&&r&&(e.split=!0),t.classList.add(e.primary?a.PRIMARY:a.BASIC),e.transparent&&t.classList.add(a.TRANSPARENT),e.transparentBorder||t.classList.add(a.BORDER),I&&t.classList.add(I),e.type==s.CHECKBUTTON?t.classList.add(a.CHECK):e.type==s.RADIOBUTTON&&t.classList.add(a.RADIO),e.size&&e.size!==N.MEDIUM&&t.classList.add(a.SIZE_PREFIX+e.size),f.className=e.cssClassContentHolder||a.CONTENT_HOLDER,e.split?(u=document.createElement("div"),p=document.createElement("div"),m=e.cssClassSplit||a.SPLIT,t.classList.add(m,i.getName(l)),u.className=e.cssClassCommand||a.COMMAND,p.className=e.cssClassExpand||a.EXPAND,e.hasIcon&&u.appendChild(n),u.appendChild(f),t.appendChild(u),_(p),t.appendChild(p)):(e.hasIcon&&t.appendChild(n),t.appendChild(f),r&&(t.classList.add(i.getName(l)),_(t)),Z()),(!e.href||e.split)&&t.setAttribute("role","button"),v(e.disabled?-1:e.tabIndex),e.hasIcon&&(e.iconAlign===d.CENTER?e.iconAlign=d.LEFT:e.iconAlign===d.RIGHT&&f.parentNode.insertBefore(f,n),t.className+=" "+(e.cssClassIconAlign||a.ICON)+"-"+z(e.iconAlign,d.LEFT),n.className=e.cssClassIcon||a.ICON,n.classList.add(a.ICON),e.iconURL&&(n.style.backgroundImage="url("+e.iconURL+")")),G(),e.disabled||H(t,u,p),e.selected&&(e.selected=!1,P()),e.disabled&&V(!0),!e.menuId&&!e.boxId){e.postRender();return}e.menuId?$UI.store[e.menuId].renderState==$base.static.RenderState.RENDERED?e.postRender():$UI.store[e.menuId].events.onPostRender.priorityAdd(function(){e.postRender();},null):$UI.store[e.boxId].renderState==$base.static.RenderState.RENDERED?e.postRender():$UI.store[e.boxId].events.onPostRender.priorityAdd(function(){e.postRender();},null);}o(Y,"draw");function Z(){if($lib.isEmpty(e.href))return;let t=e.element,n=t;t.nodeName.toLowerCase()!=="a"&&(A=n=$lib.element(t,"","a")),n.href=e.href,e.target&&(n.target=e.target);}o(Z,"setAnchor");function q(t){return t?t==C.UNDERLINE?a.UNDERLINE:t==C.OVERLINE?a.OVERLINE:t==C.FRONTLINE?a.FRONTLINE:a.BACKLINE:""}o(q,"getDecoration");function K(t){return $base.static.getMethod(t)}o(K,"convertCommand");function G(){let t=e.element,n=$lib.format("{0}-{1}",e.cssClassContentAlign||a.CONTENT_ALIGN,z(e.contentAlign));f.style.display=f.innerHTML="",t.classList.remove(n),e.hasTemplate("Content")?e.applyTemplate(f,"Content"):e.text!=null&&(f.innerHTML=e.text),$lib.isEmpty(f.innerHTML)||t.classList.add(n);}o(G,"applyContent");function _(t){let n=document.createElement("span");n.className=e.cssClassExpandIcon||a.EXPAND_ICON,t.appendChild(n);}o(_,"createExpandIcon");function H(t,n,l){let r=e.split?n:t,m=e.menuId||e.boxId||e.expandCommand,I="pointerup pointerenter pointerleave";b=[],e.keyboardExpand&&m&&$lib.on(e.element,"keydown",Q);const y=o(E=>{h(E,"focus",()=>e.onFocus.call(e)),h(E,"blur",()=>e.onBlur.call(e));},"bindFocusBlur");(e.split?[n,l]:[t]).forEach(E=>{h(E,"pointerdown",$lib.addClass,[E,"pressed"]),h(E,I,$lib.removeClass,[E,"pressed"]);}),e.split?(y(l),y(n),e.rippleAnimation&&(F(l),h(l,"pointerdown",D,[l],e)),h(l,"click",E=>L()),U(l,"onExpand")):y(t),e.rippleAnimation&&(F(r),h(r,"pointerdown",D,[r],e)),h(r,"click",E=>(e.type>0&&k(),$())),h(t,"keydown",E=>{if(E.key==="Enter"||E.key===" "){return D(r,E),e.type>0&&k(),R=!0,$();}}),U(r,"onCommand"),U(t,"on"),A&&h(t,"click",()=>{A.click(),e.element.focus();});}o(H,"bindGlobalEvents");function h(t,n,l,r,m){let I=$lib.on(t,n,l,r,m);b.push({el:t,type:n,id:I});}o(h,"bind");function U(t,n){$lib.each(["PointerEnter","PointerLeave","PointerDown","PointerUp","DblClick"],function(l){h(t,l.toLowerCase(),function(){e.events[n+l].fire(e,g());});});}o(U,"bindEvents");function J(){$lib.each(b,function(t){$lib.off(t.el,t.type,t.id);}),b=[];}o(J,"unbindEvents");function g(){return {event:$lib.event}}o(g,"createEventArgs");function Q(t){if(e.disabled)return;const n=t.key,l=e.expanded,r=e.expandDirection||i.DOWN,m=r===i.UP||r===i.DOWN;(!l&&(m&&n==="ArrowDown"||!m&&n==="ArrowRight")||l&&(n==="Escape"||m&&n==="ArrowUp"||!m&&n==="ArrowLeft"))&&(R=!0,L(),e.split&&D(p,t),R=!1);}o(Q,"handleKeyboardExpand");function F(t){let n=$lib.element($lib.element(t),"","span");x.set(t,n),n.parentNode.className=a.RIPPLE_MASK,n.parentNode.style.display="none";}o(F,"createRipple");function D(t,n){if(n.type==="keydown"&&n.key!=" "&&n.key!="Enter"||getComputedStyle(e.element).pointerEvents==="none")return;let l=x.get(t);clearTimeout(M),l.className="",setTimeout(function(r,m,I){let y=$lib.getPos(r,null,!0);I.parentNode&&(I.parentNode.style.display="",I.style.top=$lib.clientY(m)-y.top+"px",I.style.left=$lib.clientX(m)-y.left+"px",I.addEventListener("animationend",function(){M=setTimeout(function(){if(!x)return;let O=x.get(r);O&&O.parentNode&&(O.parentNode.style.display="none");},0);}),I.className=a.RIPPLE);}.bind(this,t,n,l),0);}o(D,"rippleAnimation");function $(){let t=!0,n=e.menuId||e.boxId||e.expandCommand;if(e.disabled||(e.command?t=e.command():!e.split&&n&&(t=L()),t===!1))return !1;e.events.onCommandClick.fire(e,g()),e.autoPostBack&&e.postBack();}o($,"commandClick");function L(){let t=!0;if(!e.disabled){if(e.expanded&&e.collapseCommand?t=e.collapseCommand():!e.expanded&&e.expandCommand&&(t=e.expandCommand()),!$lib.isEmpty(t)&&t==!1)return !1;(e.menuId||e.boxId)&&ne(),e.expanded=!e.expanded,e.events.onExpandClick.fire(e,g());}}o(L,"toggleExpand");function k(){e.selected?e.type==s.CHECKBUTTON&&w():P();}o(k,"toggleSelect");function P(){if(e.disabled||e.selected)return;let t=e.split?e.element.firstElementChild:e.element;e.type==s.RADIOBUTTON&&(componyx.UI.Button.RadioGroups[e.radioGroupId]&&componyx.UI.Button.RadioGroups[e.radioGroupId].deselect(),componyx.UI.Button.RadioGroups[e.radioGroupId]=e),e.selected=!0,t.classList.add("selected"),e.events.onSelect.fire(e,g());}o(P,"select");function w(){if(e.disabled||!e.selected)return;let t=e.split?e.element.firstElementChild:e.element;e.type==s.RADIOBUTTON&&e.radioGroupId&&delete componyx.UI.Button.RadioGroups[e.radioGroupId],e.selected=!1,t.classList.remove("selected"),e.events.onDeselect.fire(e,g());}o(w,"deselect");function ee(){let t=e.element;e.disabled=!1,t.classList.remove("disabled"),v(e.tabIndex),b.length==0&&H(t,u,p);}o(ee,"enable");function V(t){e.selected&&!t&&w(),e.disabled=!0,e.element.classList.add("disabled"),v(-1),J();}o(V,"disable");function v(t){const n=Number(t)||0;e.element.setAttribute("tabindex",n);}o(v,"setTabIndex");function z(t,n){return t=$lib.isEmpty(t)?n||d.CENTER:t,d.getName(t)}o(z,"getAlignment");function te(){X(),e.split?u.focus():e.element.focus();}o(te,"focus");function X(){e.split?(u.blur(),p.blur()):e.element.blur();}o(X,"blur");function ne(){e.menuId?oe():ie();}o(ne,"expandWidget");function oe(){let t=$UI.store[e.menuId],n=e.isKeyboardNavigation();t.rootExpandDirection=$lib.isEmpty(e.expandDirection)?i.DOWN:e.expandDirection,t.events.onLastItemCollapseComplete.priorityAdd(()=>{e.expanded=!1;},null,!0),t.events.onItemExpandComplete.priorityAdd(()=>{e.expanded=!0,n&&setTimeout(()=>{t.element.focus();});},null,!0),t.expand(e.menuItemId,e.element,!0);}o(oe,"expandMenu");function ie(){let t=$UI.store[e.boxId];t.expander=e.element,t.expandDirection=$lib.isEmpty(e.expandDirection)?i.DOWN:e.expandDirection,t.autoPosition=componyx.UI.Box.AutoPositionOption.EXPAND,t.events.onHideComplete.priorityAdd(()=>{e.expanded=!1;},null,!0),t.toggle();}o(ie,"expandBox");function se(){let t=componyx.UI.Button.RadioGroups;t[e.radioGroupId]===e&&delete t[e.radioGroupId],e.split=!1,A=null,x=new Map;}o(se,"dispose");},"Button"),componyx.UI.Button.prototype=Object.create($base.methods),componyx.UI.Button.prototype.constructor=componyx.UI.Button,componyx.UI.Button.RadioGroups={},componyx.UI.Button.ShortcutManager=(()=>{const c=new Map,B=navigator.userAgent.toLowerCase().includes("Mac");function T(s){const i=[];return (s.ctrlKey||B&&s.metaKey)&&i.push("ctrl"),s.altKey&&i.push("alt"),s.shiftKey&&i.push("shift"),s.key&&i.push(s.key.toLowerCase()),i.join("+")}o(T,"getKeyCombo");function e(s){const i=T(s),d=c.get(i);if(!d)return;const C=f(d,s);C&&(C.commandClick(),s.preventDefault());}o(e,"keydown");function f(s,i){const d=i.target?.ownerDocument||document,C=d.activeElement;for(const p of s)if(N(p)===C)return p;let u=C;for(;u;){for(const p of s){const b=N(p);if(b&&b.contains(u))return p}u=u.parentElement;}return null}o(f,"getActiveButton");function N(s){const i=s.shortcutScope;return typeof i=="function"?i():typeof i=="string"?$lib("#"+i):i}return o(N,"getScopedElement"),{registerButton(s){if(!s.shortcutKey)return;let i=s.shortcutKey.toLowerCase(),d=s.element.ownerDocument;/^(ctrl|alt|shift)\+/.test(i)||(i="ctrl+"+i),c.has(i)||c.set(i,new Set),c.get(i).add(s),$lib.has(d,"keydown",e)||$lib.on(d,"keydown",e);},unregisterButton(s){if(!s.key)return;let i=s.shortcutKey.toLowerCase(),d=s.element.ownerDocument;/^(ctrl|alt|shift)\+/.test(i)||(i="ctrl+"+i),c.get(i)?.delete(s),c.size===0&&$lib.off(d,"keydown",e);}}})(),componyx.UI.Button.getSelected=function(c){return componyx.UI.Button.RadioGroups[c]},componyx.UI.Button.SizeOption={SMALL:"s",MEDIUM:"m",LARGE:"l",XLARGE:"xl"},componyx.UI.Button.TypeOption={COMMANDBUTTON:0,CHECKBUTTON:1,RADIOBUTTON:2},componyx.UI.Button.ExpandDirectionOption={DOWN:0,RIGHT:1,UP:2,LEFT:3,getName:o(function(c){return $base.static.getKeyByValue(this,c).toLowerCase()},"getName")},componyx.UI.Button.AlignOption={LEFT:0,CENTER:1,RIGHT:2,getName:o(function(c){return $base.static.getKeyByValue(this,c).toLowerCase()},"getName")},componyx.UI.Button.DecorationOption={BACKGROUND:0,UNDERLINE:1,OVERLINE:2,FRONTLINE:3,BACKLINE:4,getName:o(function(c){return $base.static.getKeyByValue(this,c).toLowerCase()},"getName")};})();
181
+ })();
182
+
183
+
184
+ (async function(window){var J=Object.defineProperty;var f=(C,D)=>J(C,"name",{value:D,configurable:!0});(function(C){componyx.UI.Carousel=f(function(P,H){var e=this,a,M,I,T,$,E,m={},d={},g,n,h,z,b,X=5e3,y=!0;$base.static.ThemeOption;var o={HORIZONTAL:"horizontal",DRAG:"drag",VIEWPORT:"viewport",SLIDER:"slider",NAVIGATION:"navigation",PREVIOUS:"previous",NEXT:"next",ITEM:"item",MOVEBACK:"move-back",MOVEFORWARD:"move-forward",MOVETO:"move-to",SELECTED:"selected",OUT_OF_VIEW:"out-of-view"};this.horizontal=!1,this.fullscreen=!1,this.dragNavigation=!0,this.wheelNavigation=!0,this.keyboardNavigation=!0,this.initialTransition=!0,this.dragRevealPercentage=50,this.dragSelectSpeed=20,this.rotateInterval=0,this.selectedIndex=0,this.animation={cssClass:"slide-animation"};function Y(t){Object.assign(this,t),this.onItemSelect=$base.static.createEvent("onItemSelect"),this.onTransitionComplete=$base.static.createEvent("onTransitionComplete");}f(Y,"CarouselEvents"),this.events=new Y(this.events),$base.Component.apply(this,[P,H]),this.stop=function(){clearTimeout(z);},this.start=function(t){e.stop(),e.rotateInterval=t||X,z=setTimeout(S,e.rotateInterval);},this.getSelectedIndex=function(){return n},this.selectItem=function(t,i){c(t,i);},this.render=function(){if(e.renderState!=$base.static.RenderState.RENDERING){$base.methods.render.call(e,G,"carousel",!1);return}j();},this.postRender=function(){e.renderState==$base.static.RenderState.RENDERING&&$base.methods.postRender.call(e)&&(c(0,!0),e.selectedIndex>0?c(e.selectedIndex,e.initialTransition):e.rotateInterval&&e.start(e.rotateInterval));},this.destroy=function(t){q(),$base.methods.destroy.call(this,t);};function G(){return ["Carousel"]}f(G,"preRender");function j(){var t=-1,i=e.horizontal;e.fullscreen||e.element.setAttribute("tabindex",0),i&&$lib.addClass(e.element,o.HORIZONTAL),M=$lib.element(e.element,null,"",null,{class:o.VIEWPORT}),a=$lib.element(M,null,"",null,{class:o.SLIDER}),I=$lib.element(e.element,null,"",null,{class:o.NAVIGATION}),w(I,o.PREVIOUS,"div",Z),T=$lib.element(I,null,"ul"),e.templates.forEach(function(s,r){var l=$lib.element(a,null,"",null,{class:`${o.ITEM} ${o.OUT_OF_VIEW}`});i||(l.style.height=100/e.templates.size+"%"),e.applyTemplate(l,r),w(T,o.ITEM,"li",c.bind(e,++t,null));}),b=e.templates.size,i?a.style.width=b*100+"%":a.style.height=b*100+"%",w(I,o.NEXT,"div",S),B(),e.dragNavigation&&$lib.addClass(e.element,o.DRAG),e.postRender();}f(j,"draw");function w(t,i,s,r){var l=$lib.element($lib.element(t,null,s,null,{class:i}),null,"a",null,{href:"javascript:void(0);"});$lib.on(l.parentElement,"click",r);}f(w,"createItem");function B(){var t=document,i=e.fullscreen?t:e.element;e.dragNavigation&&$lib.on(i,"mousedown",W),$lib.on(t,"mousemove",R),$lib.on(t,"mouseup",F),$lib.on(C,"resize",N),e.keyboardNavigation&&$lib.on(i,"keydown",V),e.wheelNavigation&&$lib.on(i,"wheel",U),$lib.on(I,"mousedown",K);}f(B,"bindEvents");function N(){$lib.defer(function(){c(n,!0);});}f(N,"resize");function K(){y=!1;}f(K,"cancelDrag");function Z(){c(n-1);}f(Z,"prevItem");function S(){c(n+1);}f(S,"nextItem");function V(t){var i=t.key,s=" "+i.toString()+" ",r=e.horizontal,l;r&&" ArrowLeft ArrowRight ".indexOf(s)==-1||!r&&" PageUp PageDown Home End ArrowUp ArrowDown ".indexOf(s)==-1||(i=="End"?l=b-1:i=="Home"?l=0:l=" PageUp ArrowUp ArrowLeft ".indexOf(s)>-1?n-1:n+1,c(l),e.fullscreen||t.preventDefault());}f(V,"key");function U(t){var i=t.deltaY>0;i&&n==b-1||!i&&!n||(c(i?n+1:n-1),e.fullscreen||t.preventDefault());}f(U,"wheel");function W(t){if($||!y)return;let i=e.horizontal?"left":"top",s=$lib(o.ITEM,a);if($=!0,m.x=$lib.clientX(t),m.y=$lib.clientY(t),m.width=e.element.offsetWidth,m.height=e.element.offsetHeight,m.left=parseFloat(a.style.left)||0,m.top=parseFloat(a.style.top)||0,m.time=new Date().getTime(),d={},E){var r=$lib.styleValue(a,i,!0),l=e.horizontal?e.element.offsetWidth:e.element.offsetHeight,u=Math.round(-parseFloat(r)/l);u=Math.max(0,Math.min(b-1,u)),_(),c(u,!0),a.style[i]=r,m[i]=parseFloat(r)||0;}for(let p=0;p<s.length;p++)$lib.removeClass(s[p],o.OUT_OF_VIEW);R(t);}f(W,"startDrag");function R(t){if(!$)return;let i=e.horizontal,s=$lib.clientX(t),r=$lib.clientY(t),l=m.x-s,u=m.y-r,p=i?l:u,v=p>0;!p||v&&n==b-1||!v&&!n||(e.stop(),i?a.style.left=$lib.unit(m.left-l):a.style.top=$lib.unit(m.top-u),d.x=s,d.moveX=l,d.y=r,d.moveY=u);}f(R,"drag");function F(t){if(!y){y=!0;return}if($){var i=e.horizontal,s=e.dragRevealPercentage/100||.5;e.dragSelectSpeed/100||.2;var l=i&&Math.abs(d.moveX)/m.width>=s||!i&&Math.abs(d.moveY)/m.height>=s,u=i?d.moveX:d.moveY,p=u>0,v;l||(v=new Date().getTime()-m.time,l=Math.abs(u)/v>=.2),$=E=!1,c(l?p?n+1:n-1:n);}}f(F,"endDrag");function c(t,i){var s=!0;t>=b?(s=!1,t=0):t<0&&(s=!1,t=b-1);let r=e.animation,l=e.horizontal,u=l?"left":"top";$base.static.AnimationEasingOption.getName(r.easing)||$base.static.AnimationEasingOption.getName($base.static.AnimationEasingOption.easeOutCubic);let v=l?t*e.element.offsetWidth:t*e.element.offsetHeight,A=$lib(null,T,"li"),k=$lib(o.ITEM,a);if(e.stop(),_(),h=n,n=t,E=!0,$lib.isEmpty(a.style[u])&&(a.style[u]="0px"),!i){var L=$lib.unit(v*-1);a.style[u]!=L?(g=$lib.cssAnimation(a,r.cssClass||void 0,[],{onComplete:O}),a.style[u]=L):O();}if(h!=n){for(let x=0;x<k.length;x++)$lib.removeClass(k[x],o.OUT_OF_VIEW);$lib.removeClass(A[h],o.SELECTED),!$lib.isEmpty(h)&&s&&Math.abs(h-n)==1&&$lib.addClass(A[h],h<n?o.MOVEFORWARD:o.MOVEBACK),$lib.addClass(A[n],o.MOVETO);}e.events.onItemSelect.fire(e,{index:n,previousIndex:h}),i&&O();}f(c,"selectItem");function _(){g?g.complete():$lib.hasClass(a,e.animation.cssClass)&&O(),g=null;}f(_,"stopAnimation");function O(){let t=e.horizontal?"left":"top",i=e.horizontal?n*e.element.offsetWidth:n*e.element.offsetHeight,s=$lib(o.ITEM,a),r=$lib(null,T,"li");a.style[t]=$lib.unit(i*-1),$lib.off(a,"transitionend animationend",O),$lib.removeClass(a,e.animation.cssClass);for(let l=0;l<s.length;l++)l!==n&&$lib.addClass(s[l],o.OUT_OF_VIEW);$lib.removeClass(r[h],o.MOVEBACK+" "+o.MOVEFORWARD),$lib.removeClass(r[n],o.MOVETO),$lib.addClass(r[n],o.SELECTED),g=null,E=!1,e.rotateInterval&&e.start(e.rotateInterval),e.events.onTransitionComplete.fire(e,{index:n});}f(O,"transitionComplete");function q(){var t=document;_(),e.stop(),e.fullscreen&&($lib.off(t,"mousedown",W),$lib.off(t,"keydown",V),$lib.off(t,"wheel",U)),$lib.off(t,"mousemove",R),$lib.off(t,"mouseup",F),$lib.off(C,"resize",N),d={},E=$=!1,n=h=void 0;}f(q,"dispose");},"Carousel"),componyx.UI.Carousel.prototype=Object.create($base.methods),componyx.UI.Carousel.prototype.constructor=componyx.UI.Carousel;})(window);
185
+ })(window);
186
+
187
+
188
+ (async function(window){var O=Object.defineProperty;var i=(p,h)=>O(p,"name",{value:h,configurable:!0});(function(p){componyx.UI.ColorButton=i(function(b,m){var e=this,r;$base.static.ThemeOption;var l,n,d,f={COLORBOX:"color-box"};this.cssClassColorBox="",this.hsba=null,this.rgba=null,this.hex="",this.value="",this.buttonId=null,this.colorPickerId=null,this.hiddenInputId=null;function C(t){Object.assign(this,t),this.onConfirm=$base.static.createEvent("onConfirm");}i(C,"ColorButtonEvents"),this.events=new C(this.events),$base.Component.apply(this,[b,m]),this.getValue=function(){return d.value},this.setValue=function(t){this.setRGBA.apply(this,t.split(","));},this.getRGBA=function(){return n.slice()},this.setRGBA=function(t,o,s,a=1){n=[t,o,s,a].map(u=>parseFloat(u)),c.apply(e,n);},this.getHex=function(){return $lib.rgbToHex.apply(e,n)},this.setHex=function(t){n=$lib.hexToRgb(t),c.apply(e,n);},this.getButton=function(){return r},this.render=function(){if(e.renderState!=$base.static.RenderState.RENDERING){$base.methods.render.call(e,R,"color-button",!1);return}v();},this.postRender=function(){e.renderState==$base.static.RenderState.RENDERING&&B();};function R(){return ["ColorButton",["Button"]]}i(R,"preRender");function B(){var t;e.value?e.value.startsWith("#")?n=$lib.hexToRgb(e.value.replace("#","")):n=e.value.split(",").map(o=>parseFloat(o)):e.rgba?(n=e.rgba.split(","),$lib.each(n,function(o,s){n[s]=s==3?parseFloat(o):parseInt(o,10);})):e.hsba?(t=e.hsba.split(",").map(o=>parseFloat(o)),n=componyx.UI.ColorPicker.hsvToRgb.apply(e,t),n[3]=t[3]):n=[255,0,0,0],c.apply(e,n),$base.methods.postRender.call(e);}i(B,"postRender");function v(){d=e.createSyncedInput(e.hiddenInputId,function(){e.setValue(this.value);}),y(e.buttonId,e.element),e.colorPickerId?(l=$UI.store[e.colorPickerId],l.renderState==$base.static.RenderState.RENDERED?e.renderChildren():l.events.onPostRender.priorityAdd(function(){e.renderChildren();})):e.renderChildren();}i(v,"draw");function y(t,o){var s=e.id+"_"+(t||$lib.guid());r=$UI.createComponent(componyx.UI.Button,{id:s,containerElement:o}),r.primary=r.transparentBorder=!1,r.transparent=!0,r.clone($UI.store[t],e),r.command=r.command||g,r.events.onPostRender.priorityAdd(function(){e.isReady.apply(e);},null),r.showing=!0,r.setContentTemplate(I());}i(y,"createButton");function I(){var t=document.createElement("div");return t.appendChild(document.createElement("div")),t.className=e.cssClassColorBox||f.COLORBOX,t}i(I,"createColorBox");function g(){if(!l)return;const t=n.slice();t[3]==0&&(t[3]=1),l.expand(r.element,t,x);}i(g,"expand");function x(t,o){n=o.rgba,c.apply(e,n),e.events.onConfirm.fire(e,o);}i(x,"confirm");function c(t,o,s,a){a==null&&(a=1);const u=[t,o,s,a].join(",");$().firstChild.style.backgroundColor=`rgba(${u})`,d.__setValue(e.getRGBA()[3]===0?"":u);}i(c,"setColor");function $(){return $lib(e.cssClassColorBox||f.COLORBOX,r.element,"",!0)}i($,"getColorBox");},"ColorButton"),componyx.UI.ColorButton.prototype=Object.create($base.methods),componyx.UI.ColorButton.prototype.constructor=componyx.UI.ColorButton;})();
189
+ })();
190
+
191
+
192
+ (async function(window){var fe=Object.defineProperty;var i=(D,g)=>fe(D,"name",{value:g,configurable:!0});(function(D){componyx.UI.ColorPicker=i(function(B,P){var t=this,p,b,m,H,l,d,N;$base.static.ThemeOption;var u={SATURATION:"saturation",HUE:"hue",PREVIEW:"preview",INPUTCONTAINER:"input-container",PICKER:"picker",RGB:"rgb",HSB:"hsb",ALPHA:"alpha",HEX:"hex",BUTTON:"button"};this.cssClassPreview="",this.cssClassSaturation="",this.cssClassHue="",this.cssClassInputContainer="",this.cssClassPicker="",this.cssClassHSB="",this.cssClassRGB="",this.cssClassAlpha="",this.cssClassHex="",this.cssClassConfirmButton="",this.cssClassCancelButton="",this.cssClassClearButton="",this.confirmButtonLabel="OK",this.cancelButtonLabel="Cancel",this.clearButtonLabel="No Color",this.hsba=null,this.rgba=null,this.hex="",this.popupView=!1,this.numericBoxId=null,this.boxId=null,this.confirmButtonId=null,this.cancelButtonId=null,this.clearButtonId=null;function q(e){Object.assign(this,e),this.onChange=$base.static.createEvent("onChange"),this.onConfirm=$base.static.createEvent("onConfirm");}i(q,"ColorPickerEvents"),this.events=new q(this.events),$base.Component.apply(this,[B,P]),this.getBox=function(){return l},this.expand=function(e,o,s,n,r,a){N=s,e?(l.expander=e,l.autoPosition=componyx.UI.Box.AutoPositionOption.EXPAND):(l.expander=null,l.autoPosition=componyx.UI.Box.AutoPositionOption.CENTER),n&&(l.position=n),o&&(d=o,this.setRGBA.apply(t,o)),l.modal=r||!1,a?ae():l.show();},this.getHSBA=function(){return he()},this.setHSBA=function(e,o,s,n){R(e,o,s,$lib.isEmpty(n)?1:n),E();},this.getRGBA=function(){return I()},this.setRGBA=function(e,o,s,n){C(e,o,s,$lib.isEmpty(n)?1:n),v();},this.getHex=function(){return be()},this.setHex=function(e){T(e),O();},this.render=function(){if(t.renderState!=$base.static.RenderState.RENDERING){$base.methods.render.call(t,J,"color-picker",!1);return}ee();},this.postRender=function(){t.renderState==$base.static.RenderState.RENDERING&&Q();},this.destroy=function(...e){me(),$base.methods.destroy.call(this,...e);};function J(){var e=["NumericBox"];return t.popupView&&(e.push("Button"),e.push("Box")),["ColorPicker",e]}i(J,"preRender");function Q(){var e;l&&l.update(H),t.rgba?(d=t.rgba.split(","),$lib.each(d,function(o,s){d[s]=s==3?parseFloat(o):parseInt(o,10);}),C.apply(t,d),v()):t.hsba?(e=t.hsba.split(","),$lib.each(e,function(o,s){e[s]=parseFloat(o);}),R.apply(t,t.hsba.split(/\D/)),E()):(T(t.hex||"ff0000"),O()),d=I(),$base.methods.postRender.call(t);}i(Q,"postRender");function ee(){var e=t.element;t.popupView?oe():G(e),t.renderChildren();}i(ee,"draw");function G(e){var o=document.createElement("div"),s=document.createElement("div"),n=document.createElement("div"),r=document.createElement("div"),a=document.createElement("div"),c=document.createElement("div"),h=document.createElement("div");return o.className=t.cssClassSaturation||u.SATURATION,s.className=t.cssClassHue||u.HUE,n.className=t.cssClassInputContainer||u.INPUTCONTAINER,r.className=t.cssClassHSB||u.HSB,a.className=t.cssClassRGB||u.RGB,c.className=t.cssClassAlpha||u.ALPHA,h.className=t.cssClassHex||u.HEX,e.appendChild(o),e.appendChild(s),e.appendChild(n),te(n,t.cssClassPreview||u.PREVIEW),n.appendChild(r),n.appendChild(a),n.appendChild(c),n.appendChild(h),ne(o),se(s),y(r,"h",360,E),y(r,"s",100,E),y(r,"v",100,E),y(a,"r",255,v),y(a,"g",255,v),y(a,"b",255,v),y(c,"a",100,de),re(h),$lib.on(o,"mousedown",ue),$lib.on(s,"mousedown",pe),e}i(G,"createContent");function w(e,r,s,n){var r=t.id+r,a=$UI.createComponent(componyx.UI.Button,{id:r,containerElement:e});return a.transparentBorder=a.primary=!1,a.clone($UI.store[s],t),a.cssClass=a.cssClass||u.BUTTON+(n.cssClass?" "+n.cssClass:""),a.text=n.text,a.command=n.command,a.primary=n.primary||!1,a.transparent=n.transparent||!1,a.events.onPostRender.priorityAdd(function(){t.isReady.apply(t);},null),a.showing=!0,a}i(w,"createButton");function te(e,o){var s=document.createElement("div");s.appendChild(document.createElement("div")),s.className=o,e.appendChild(s);}i(te,"createColorBox");function oe(){var e=t.id+"_Box",o;l=$UI.createComponent(componyx.UI.Box,{id:e,containerElement:t.element}),l.clone($UI.store[t.boxId],t),l.cssClass=l.cssClass||t.cssClassPopupBox||u.BOX,l.showing=!1,l.hideOnOutsideClick=l.autoResizeFit=l.autoInvertFit=!0,l.autoPosition=componyx.UI.Box.AutoPositionOption.EXPAND,l.events.onPostRender.priorityAdd(function(){t.isReady.apply(t);},null),H=t.element.appendChild(document.createElement("div")),G(H),o=H.appendChild(document.createElement("div")),w(o,"confirm",t.confirmButtonId,{cssClass:t.cssClassConfirmButton,text:t.confirmButtonLabel,command:ie,primary:!0}),w(o,"cancel",t.cancelButtonId,{cssClass:t.cssClassCancelButton,text:t.cancelButtonLabel,command:le}),w(o,"clear",t.clearButtonId,{cssClass:t.cssClassClearButton,text:t.clearButtonLabel,command:ce,transparent:!0});}i(oe,"createPopup");function ne(e){var o=Y(e),n=$lib.styleValue(o,"left",!0),r=$lib.styleValue(o,"top",!0);return n=$lib.isEmpty(n)?0:Math.abs(parseInt(n,10)),r=$lib.isEmpty(r)?0:Math.abs(parseInt(r,10)),o.style.top=$lib.unit(r*-1),o.style.left=$lib.unit(255-n),p=$lib.draggable(o,{boundaryZone:e,boundaryOvershootLeft:n,boundaryOvershootRight:n,boundaryOvershootTop:r,boundaryOvershootBottom:r,onDrag:function(a){$lib.defer(X.bind(this,a));}.bind(this)}),o}i(ne,"createSaturationPicker");function se(e){var o=Y(e),n=$lib.styleValue(o,"top",!0);return n=$lib.isEmpty(n)?0:Math.abs(parseInt(n,10)),o.style.top=$lib.unit(n*-1),b=$lib.draggable(o,{boundaryZone:e,boundaryOvershootTop:n,boundaryOvershootBottom:n,dragX:!1,onDrag:function(r){$lib.defer(X.bind(this,r));}.bind(this)}),o}i(se,"createHuePicker");function X(e){let o=e.element,s=$lib.getPos(o),n=o.style.transform,r=o.style.left,a=o.style.top;o.style.transform="",o.style.left=o.style.top="",$.setPos(o,{left:s.left,top:s.top}),S(),o.style.transform=n,o.style.left=r,o.style.top=a;}i(X,"drag");function Y(e){var o=e.appendChild(document.createElement("div"));return o.className=t.cssClassPicker||u.PICKER,o}i(Y,"createPicker");function y(e,o,s,n){o=t.id+"_"+o;var r=$UI.createComponent(componyx.UI.NumericBox,{id:o,containerElement:e});r.clone($UI.store[t.numericBoxId],t),r.events.onPostRender.priorityAdd(function(){t.isReady.apply(t);},null),r.maxLength=3,r.minValue=0,r.maxValue=s,r.showing=!0,r.events.onChange.priorityAdd(n,null);}i(y,"createNumericBox");function re(e){var o=e.appendChild(document.createElement("div"));m=o.appendChild(document.createElement("input")),m.id=t.id+"_hex",m.type="text",m.maxLength=6,$lib.on(m,"keydown",function(s){var n=s.key;return s.ctrlKey||" End Home ArrowLeft ArrowUp ArrowRight ArrowDown Delete Backspace Tab 0 1 2 3 4 5 6 7 8 9 A B C D E F ".indexOf(" "+n.toString()+" ")>-1}),$lib.on(m,"keyup",O);}i(re,"createTextBox");function ae(){l.showing?l.hide():l.show();}i(ae,"togglePopup");function ie(){d=I(),l.hide(),N&&N(t,{rgba:d}),N=null,t.events.onConfirm.fire(t,{rgba:d});}i(ie,"confirm");function le(){C.apply(t,d),v(),l.hide();}i(le,"cancel");function ce(){const e=d.slice();e[3]=0,C.apply(t,e),v();}i(ce,"clear");function ue(){var e=$lib.getScrollPosition(),o=p.settings.boundaryOvershootLeft,s=p.settings.boundaryOvershootTop,n=p.element.parentNode,r=$lib.getPos(n),a=$lib.borderAndPadding(n),c=r.top+a.borderTop-s,h=r.top+a.borderTop+(255-s),f=r.left+a.borderLeft-o,K=r.left+a.borderLeft+(255-o),k=$lib.clientX($lib.event)+e.scrollLeft-o,_=$lib.clientY($lib.event)+e.scrollTop-s;k<f&&(k=f),k>K&&(k=K),_<c&&(_=c),_>h&&(_=h),$lib.setPos(p.element,{top:_,left:k}),S(),p.startDrag($lib.event);}i(ue,"saturationSelect");function pe(e){var o=$lib.getScrollPosition(),s=b.settings.boundaryOvershootTop,n=b.element.parentNode,r=$lib.getPos(n),a=$lib.borderAndPadding(n),c=r.top+a.borderTop-s,h=r.top+a.borderTop+(255-s),f=$lib.clientY(e)+o.scrollTop-s;f<c&&(f=c),f>h&&(f=h),$lib.setPos(b.element,{top:f}),S(),b.startDrag(e);}i(pe,"hueSelect");function S(){var e=b,o=p,s=1-(Math.round(e.element.style.top.replace(/[^0-9\.\-]/g,""))+e.settings.boundaryOvershootTop)/255,n=(Math.round(o.element.style.left.replace(/[^0-9\.\-]/g,""))+o.settings.boundaryOvershootLeft)/255,r=1-(Math.round(o.element.style.top.replace(/[^0-9\.\-]/g,""))+o.settings.boundaryOvershootTop)/255,a=j(s,n,r),c=x();c===0&&(c=1,M(c)),a.push(c),V(s),A.apply(t,a),R(s,n,r),C.apply(t,a),T($lib.rgbToHex.apply(t,a)),U();}i(S,"sliderChanged");function E(){var e=[],o;e[0]=$UI.store[t.id+"_h"].getValue()||0,e[1]=$UI.store[t.id+"_s"].getValue()||0,e[2]=$UI.store[t.id+"_v"].getValue()||0,e[0]/=360,e[1]/=100,e[2]/=100,o=j.apply(t,e),o.push(x()),V(e[0]),A.apply(t,o),C.apply(t,o),T($lib.rgbToHex.apply(t,o)),L.apply(t,e),U();}i(E,"hsbChanged");function v(){var e=I(),o=F.apply(t,e);o.push(x()),V(o[0]),A.apply(t,e),R.apply(t,o),T($lib.rgbToHex.apply(t,e)),L.apply(t,o),U();}i(v,"rgbChanged");function de(){A.apply(t,I()),U();}i(de,"alphaChanged");function O(){var e=$lib.hexToRgb($lib("#"+t.id+"_hex").value||0),o=F.apply(t,e);e.push(x()),V(o[0]),A.apply(t,e),R.apply(t,o),C.apply(t,e),L.apply(t,o),U();}i(O,"hexChanged");function U(){t.events.onChange.fire(t,{rgba:I()});}i(U,"changed");function V(e){var o=e/.16666666666666666,s=o-Math.floor(o),n=0,r=0,a=0;switch(o==6&&(o=0),Math.floor(o)){case 0:n=255,r=s*255;break;case 1:n=255-s*255,r=255;break;case 2:r=255,a=s*255;break;case 3:r=255-s*255,a=255;break;case 4:n=s*255,a=255;break;case 5:n=255,a=255-s*255;break}$lib(t.cssClassSaturation||u.SATURATION,t.element,"div",!0).style.backgroundColor="rgba("+[Math.round(n),Math.round(r),Math.round(a),1].join(",")+")";}i(V,"setSaturationBaseColor");function L(e,o,s){b.element.style.top=$lib.unit((1-e)*255-b.settings.boundaryOvershootTop),p.element.style.left=$lib.unit(o*255-p.settings.boundaryOvershootLeft),p.element.style.top=$lib.unit((1-s)*255-p.settings.boundaryOvershootTop);}i(L,"setSliders");function R(e,o,s,n){e=Math.round(e*360),$UI.store[t.id+"_h"].setValue(e==360?0:e),$UI.store[t.id+"_s"].setValue(Math.round(o*100)),$UI.store[t.id+"_v"].setValue(Math.round(s*100)),M(n);}i(R,"setHSBA");function C(e,o,s,n){$UI.store[t.id+"_r"].setValue(e),$UI.store[t.id+"_g"].setValue(o),$UI.store[t.id+"_b"].setValue(s),M(n);}i(C,"setRGBA");function M(e){$lib.isEmpty(e)?$lib.isEmpty($UI.store[t.id+"_a"].getValue())&&$UI.store[t.id+"_a"].setValue(100):$UI.store[t.id+"_a"].setValue(Math.round(e*100));}i(M,"setAlpha");function T(e){m.value=e.replace("#","");}i(T,"setHex");function A(e,o,s,n){n=$lib.isEmpty(n)?100:n,$lib(t.cssClassPreview||u.PREVIEW,t.element,"div",!0).firstChild.style.backgroundColor="rgba("+[e,o,s,n].join(",")+")";}i(A,"setPreview");function he(){var e=[];return e[0]=parseInt($UI.store[t.id+"_h"].getValue()||0,10),e[1]=parseInt($UI.store[t.id+"_s"].getValue()||0,10),e[2]=parseInt($UI.store[t.id+"_v"].getValue()||0,10),e[3]=x(),e}i(he,"getHSBA");function I(){var e=[];return e[0]=parseInt($UI.store[t.id+"_r"].getValue()||0,10),e[1]=parseInt($UI.store[t.id+"_g"].getValue()||0,10),e[2]=parseInt($UI.store[t.id+"_b"].getValue()||0,10),e[3]=x(),e}i(I,"getRGBA");function be(){return "#"+m.value}i(be,"getHex");function x(){return parseInt($UI.store[t.id+"_a"].getValue()||100,10)/100}i(x,"getAlpha");function F(e,o,s){return componyx.UI.ColorPicker.rgbToHsv(e,o,s)}i(F,"rgbToHsv");function j(e,o,s){return componyx.UI.ColorPicker.hsvToRgb(e,o,s)}i(j,"hsvToRgb");function me(){l=null;}i(me,"dispose");},"ColorPicker"),componyx.UI.ColorPicker.prototype=Object.create($base.methods),componyx.UI.ColorPicker.prototype.constructor=componyx.UI.ColorPicker,componyx.UI.ColorPicker.rgbToHsv=function(g,B,P){return $lib.rgbToHsv(g,B,P)},componyx.UI.ColorPicker.hsvToRgb=function(g,B,P){return $lib.hsvToRgb(g,B,P)};})();
193
+ })();
194
+
195
+
196
+ (async function(window){var lt=Object.defineProperty;var s=(G,J)=>lt(G,"name",{value:J,configurable:!0});(function(G){componyx.UI.ComboBox=s(function(ye,Se){var e=this,m={},U={},u=null,y="SelectAll",Q=!1,X=null,S=null,O=null,R=null,c=null,p=null,Z=!1,d=null,h=null,E=null,te=null,le=!1,ie=!1,D=!1,I=null,g=null,C={},P=0,W=null,M=!1,q="",H=!0,z=null;$base.static.ThemeOption;var Y=componyx.UI.ComboBox.FilterOption,f={GROW:"grow",SIZER:"sizer",MULTISELECT:"multi",ALLOWINPUT:"allow-input",TAGGING:"tagging",TAG:"button tag",DISABLED:"disabled",EXPANDBUTTON:"button expand down",EXPANDSPLIT:"split",EXPANDICON:"expand-icon",CLEARBUTTON:"button clear",BOX:"box",DATAPAGER:"data-pager",BOXHEADER:"header header-label",BOXFOOTER:"footer",LIST:"list",ITEM:"item",ITEMICON:"icon",ITEMCHECKBOX:"checkbox",ITEMSELECTALL:"item select-all",PRELOADER:"preloader",NORESULT:"no-result"};this.cssClassExpandButton="",this.cssClassExpandIcon="",this.cssClassClearButton="",this.cssClassDataPager="",this.cssClassListBox="",this.cssClassList="",this.cssClassItem="",this.cssClassItemIcon="",this.cssClassItemCheckBox="",this.cssClassItemSelectAll="",this.cssClassPreloader="",this.cssClassNoResult="",this.columnIdentifyingCssClass="",this.itemTemplateId=null,this.allowInput=!0,this.allowCustomValue=!1,this.splitButton=!1,this.multiSelect=!1,this.multiSelectTagging=!1,this.autoGrow=!1,this.keyboardNavigation=!0,this.collapseOnItemSelect=!0,this.loadOnRender=!1,this.loadOnDemand=!1,this.reloadOnExpand=!1,this.loadOnDemandCharStart=0,this.loadOnDemandDelay=250,this.disableClearButton=!1,this.enableDataPager=!1,this.disabled=!1,this.keepSelectionOnReload=!0,this.disableExpandOnClick=!1,this.placeholder="",this.width="",this.name="",this.value="",this.itemList=null,this.tooltipManagerId=null,this.tooltipId=null,this.expandButtonId=null,this.clearButtonId=null,this.tagButtonId=null,this.listBoxId=null,this.dataPagerId=null,this.hiddenInputId=null;function Le(t){Object.assign(this,t),this.onFocus=$base.static.createEvent("onFocus"),this.onBlur=$base.static.createEvent("onBlur"),this.onInputFocus=$base.static.createEvent("onInputFocus"),this.onInputBlur=$base.static.createEvent("onInputBlur"),this.onItemClick=$base.static.createEvent("onItemClick"),this.onItemSelect=$base.static.createEvent("onItemSelect"),this.onItemDeselect=$base.static.createEvent("onItemDeselect"),this.onClear=$base.static.createEvent("onClear"),this.onPreLoadItemList=$base.static.createEvent("onPreLoadItemList"),this.onPostLoadItemList=$base.static.createEvent("onPostLoadItemList"),this.onPostRenderItemList=$base.static.createEvent("onPostRenderItemList"),this.onPreRenderItem=$base.static.createEvent("onPreRenderItem"),this.onPostRenderItem=$base.static.createEvent("onPostRenderItem");}s(Le,"ComboBoxEvents"),this.events=new Le(this.events),$base.Component.apply(this,[ye,Se]),this.setHeaderTemplate=function(t){e.addTemplate("Header",t,!1);},this.setFooterTemplate=function(t){e.addTemplate("Footer",t,!1);},this.setSelectAllTemplate=function(t){e.addTemplate("SelectAll",t,!0);},this.setMultiSelectInputTemplate=function(t){e.addTemplate("MultiSelectInput",t,!0);},this.setPreloaderTemplate=function(t){e.addTemplate("Preloader",t,!0);},this.setNoResultTemplate=function(t){e.addTemplate("NoResult",t,!0);},this.setItemTagTemplate=function(t){e.addTemplate("ItemTag",t,!0);},this.setPlaceholder=function(t){u.placeholder=t,e.placeholder=t;},this.toggleSelectItem=function(t){M=!0,ue(t);},this.selectItems=function(t){for(var l=0;l<t.length;++l)e.selectItem(t[l]);},this.deselectItems=function(t){if(!$lib.isEmpty(t))for(var l=0;l<t.length;++l)w(t[l]);},this.selectItem=function(t){M=!0,N(t);},this.deselectItem=function(t){w(t);},this.enableItem=function(t){Ze(t);},this.disableItem=function(t){ve(t);},this.getItemElement=function(t){return m[t]},this.getListBox=function(){return d},this.showListBox=function(){d.show();},this.hideListBox=function(){d.hide();},this.getSelectedItem=function(){for(const t in C)return C[t];return null},this.getSelectedItems=function(){if(!e.multiSelect)return this.getSelectedItem();var t=[];for(var l in C)t.push(C[l]);return t},this.getValue=function(){return !e.multiSelect&&e.allowCustomValue&&u.value!==E.value&&ne(),E.value},this.clear=function(){Te();},this.clearSelection=function(){k();},this.clearInput=function(){_();},this.clearList=function(){me();},this.getInput=function(){return u},this.disable=function(){e.disabled=!0,!(e.renderState<$base.static.RenderState.RENDERED)&&(u.disabled=!0,$lib.addClass(e.element,f.DISABLED),d.hide(!0),c.disable(),p&&p.disable());},this.enable=function(){e.disabled=!1,!(e.renderState<$base.static.RenderState.RENDERED)&&(u.disabled=!1,$lib.removeClass(e.element,f.DISABLED),c.enable(),p&&p.enable());},this.setValue=function(t,l){if(!e.itemList){e.value=t,D=!0;return}var i=e.getSelectedItems();if(!$lib.isEmpty(i)){$.isArray(i)||(i=[i]);var a=[];$lib.each(i,function(n){a.push(n.id);}),e.deselectItems(a);}if(!$lib.isEmpty(t)){var r=t.split(",");$lib.each(r,function(n){var o=e.itemList.getByValue(n);o&&e.selectItem(o.id);});}l&&j();},this.focus=function(){j();},this.load=function(t,l,i){t&&(k(),_(),me()),S=null,K(l,i,!1);},this.render=function(){if(e.renderState!=$base.static.RenderState.RENDERING){$base.methods.render.call(e,xe,"combo-box");return}e.hasTemplate("Default")||e.addTemplate("Default","{checkBox}{icon}{text}",!0),e.hasTemplate("MultiSelectInput")||e.addTemplate("MultiSelectInput","{count} items selected",!0),we();},this.postRender=function(){e.renderState!=$base.static.RenderState.RENDERED&&(c.getCommandButton().removeAttribute("tabindex"),c.split&&c.getExpandButton().removeAttribute("tabindex"),V(),Oe(),F(),$base.methods.postRender.call(e)&&(e.itemList?se():e.loadOnRender&&K(null,!1,!0)));},this.destroy=function(...t){tt(),$base.methods.destroy.call(this,...t);};function xe(){var t=["Box","Button"];return e.enableDataPager&&t.push("DataPager"),["ComboBox",t]}s(xe,"preRender");function Be(){var t=d.element,l=$lib.borderAndPadding(t),i=/min-width:[^;]*(;|$)/gi,a=t.style.position,r=t.style.getPropertyPriority("position");a&&r=="important"&&(a+=" !"+r),t.style.position="";var n=c.element.offsetWidth-l.width;t.style.position=a,d.style.match(i)?d.style=d.style.replace(i,$lib.format("min-width:{0}px;",n>0?n:0)):(d.style&&!$lib.endsWith(d.style,";")&&(d.style+=";"),d.style+=$lib.format("min-width:{0}px;",n>0?n:0));}s(Be,"setListBoxMinWidth");function Oe(){var t=u;$lib.on(t,"focus",Me,t),$lib.on(t,"focus",e.onFocus,e),$lib.on(t,"blur",He,t),$lib.on(t,"blur",e.onBlur,e),$lib.on(t,"keydown",Fe,t),$lib.on(t,"input",ke,t),e.tooltipManagerId&&e.tooltipId&&$UI.store[e.tooltipManagerId].addTrigger(t,e.tooltipId);}s(Oe,"bindInputEvents");function K(t,l,i,a){var r=u,n=r.value||q||"",o,b=null;l=l!==!1,b={text:t?S?S.text:"":n,pageIndex:t||1},e.events.onPreLoadItemList.fire(e,b),o=e.loadOnDemandCharStart,!(!i&&!t&&(a&&o>0&&n.length<o||S&&S.text==n))&&(clearTimeout(X),X=null,g=I=null,S=b,Q=!0,q="",h&&h.hide(),e.keepSelectionOnReload||k(),e.ajax.load&&e.ajax.load.isDefined()?(te&&te.abort(),Je(),te=e.ajaxCall("load",G.JSON.stringify(b),{onSuccess:s(function(L){se(t||-1,L,l,a);},"onSuccess")})):se(null,null,l,a));}s(K,"load");function se(t,l,i,a){var r=null;if(Q=!1,le=a||!1,l?(e.itemList=[],l.data&&(r=typeof l.data=="string"?G.JSON.parse(l.data):l.data,e.itemList=r?r.itemList||[]:[])):e.itemList&&(e.itemList=typeof e.itemList=="string"?G.JSON.parse(e.itemList):e.itemList||[]),pe(),Ae(r,t),e.events.onPostLoadItemList.fire(e,null),e.itemList.length>0?(Ge(r,a),!e.loadOnDemand&&O&&oe()):Qe(),a||Ee(),le=!1,D=!1,!e.itemList.length&&!x()?.childNodes.length?d.hide():d.update(null,i),z){let n=z;z=null,Ce(n);}e.events.onPostRenderItemList.fire(e,null);}s(se,"dataLoaded");function pe(){e.itemList||(e.itemList=[]),e.itemList.getByValue||$base.static.ItemList.call(e.itemList);}s(pe,"setupItemList");function Ae(t,l){h&&t&&t.totalItemCount&&t.totalItemCount>t.itemList.length?(h.itemCount=t.totalItemCount,l==-1?h.setPageIndex(1):h.setPageIndex(l),h.show()):h&&h.hide();}s(Ae,"setupPager");function we(){e.itemList&&e.itemList.length==0&&(e.itemList=null),e.multiSelect&&$lib.addClass(e.element,f.MULTISELECT),e.allowInput&&$lib.addClass(e.element,f.ALLOWINPUT),ee()&&$lib.addClass(e.element,f.TAGGING),e.autoGrow&&$lib.addClass(e.element,f.GROW),e.disabled&&$lib.addClass(e.element,f.DISABLED),$lib.isEmpty(e.width)||(e.element.style.width=$lib.unit(e.width)),Re(),Ne(),E=e.createSyncedInput(e.hiddenInputId,function(){e.setValue(this.value);}),R=$lib.element(e.element),R.className=f.SIZER,R.style.display="none",e.value=e.value||E.value,$lib.isEmpty(e.value)||(D=!0,E.__setValue(e.value)),e.renderChildren();}s(we,"draw");function Re(){var t=e.id+"_Expand";c=$UI.createComponent(componyx.UI.Button,{id:t,containerElement:e.element}),c.transparentBorder=c.primary=!1,c.clone($UI.store[e.expandButtonId],e),c.showing=!0,c.textSelection=!0,c.split=e.splitButton,c.cssClass=c.cssClass||e.cssClassExpandButton||f.EXPANDBUTTON,c.boxId=c.split?e.id+"_Box":null,c.setContentTemplate(De()),c.events.onPostRender.priorityAdd(()=>{e.isReady.apply(e);},null),c.disabled=e.disabled,c.delegateFocusEvents(e),c.split?c.events.onCommandPointerDown.priorityAdd(function(){d.showing&&(H=!1);}):(c.events.onPointerDown.priorityAdd(function(){H=!1;}),c.command=function(){if(H=!0,Z){Z=!1,c.deselect();return}if(e.disableExpandOnClick){c.deselect();return}($lib.event.type!="keydown"||$lib.event.key!=" ")&&d.toggle();});}s(Re,"createExpandButton");function De(){var t=[],l,i;return e.splitButton?t.push(he()):(l=document.createElement("span"),l.className=e.cssClassExpandIcon||f.EXPANDICON,t.push(he()),t.push(l)),e.disableClearButton||(i=e.element.appendChild(document.createElement("div")),Pe(i),t.push(p.containerElement)),t}s(De,"createContent");function Pe(t){var l=e.id+"_Clear";p=$UI.createComponent(componyx.UI.Button,{id:l,containerElement:t}),p.clone($UI.store[e.clearButtonId],e),p.hasIcon=!0,p.transparent=!0,p.cssClass=p.cssClass||e.cssClassClearButton||f.CLEARBUTTON,p.command=et,p.disabled=e.disabled,p.delegateFocusEvents(e),p.events.onPostRender.priorityAdd(()=>{e.isReady.apply(e);},null),p.events.onPostRender.priorityAdd(()=>{e.isReady.apply(e);},null),p.showing=!0;}s(Pe,"createClearButton");function he(){return u=document.createElement("input"),u.className=u.style.cssText="",u.type="text",u.autoComplete="off",u.spellcheck=!1,u.setAttribute("autocomplete","off"),u.setAttribute("spellcheck","false"),u.placeholder=e.placeholder,e.disabled&&(u.disabled=!0),e.allowInput||(u.readOnly=!0),e.value&&(u.value=e.value),u}s(he,"createInput");function Ne(){var t=e.id+"_Box",l=$UI.createComponent(componyx.UI.Box,{id:t,containerElement:e.element}),i=document.createElement("div"),a=document.createElement("div"),r=document.createElement("div"),n=document.createElement("ul");d=l,l.clone($UI.store[e.listBoxId],e),n.className=e.cssClassList||f.LIST,e.hasTemplate("Header")||e.hasTemplate("Footer")||e.enableDataPager?(e.hasTemplate("Header")&&(e.applyTemplate(a,"Header"),a.className=e.cssClassHeader||f.BOXHEADER,i.appendChild(a)),i.appendChild(n),e.enableDataPager&&_e(i),e.hasTemplate("Footer")&&(e.applyTemplate(r,"Footer"),r.className=e.cssClassFooter||f.BOXFOOTER,i.appendChild(r)),l.setContentTemplate(i)):l.setContentTemplate(n),l.theme=$base.static.ThemeOption.NONE,l.cssClass=l.cssClass||e.cssClassListBox||f.BOX,l.showing=!1,l.hideOnOutsideClick=l.autoResizeFit=l.autoInvertFit=!0,l.resizeToMaxHeight=!1,l.expander=c.id,l.expandDirection=componyx.UI.Box.ExpandDirectionOption.DOWN,l.autoPosition=componyx.UI.Box.AutoPositionOption.EXPAND,l.events.onPostRender.priorityAdd(()=>{e.isReady.apply(e);},null),l.events.onPrePosition.priorityAdd(function(o){$lib.removeClass(o.element,"resized"),x().style.maxHeight="";}),l.events.onAutoFit.priorityAdd(function(o,b){if(b.resizedY){var L=x(),T=0,v=L.parentNode.firstChild;for($lib.addClass(o.element,"resized");v;)v!=L&&(T+=v.offsetHeight),v=v.nextSibling;for(v=L;v!=o.element.parentNode;)T+=$lib.borderAndPadding(v).height,v=v.parentNode;T=o.element.offsetHeight-T,L.style.maxHeight=T>0?$lib.unit(T):$lib.unit(0);}},null),l.events.onHide.priorityAdd(function(o,b){b.cancel=!H,H=!0,c.split||c.deselect();}),l.events.onHideComplete.priorityAdd(function(){e.element&&e.element.parentNode&&($lib.isEmpty(I)||($lib.removeClass(m[I],"focus"),$lib.isEmpty(g)||$lib.addClass(m[g],"selected"))),ne(),I=null,O=null;}),l.events.onShow.priorityAdd(function(){Be();},null),l.events.onShowComplete.priorityAdd(function(){e.element&&(j(),e.loadOnDemand&&(e.reloadOnExpand||$lib.isEmpty(e.itemList))?(e.reloadOnExpand&&(S=null),ae(0)):O?oe():!$lib.isEmpty(g)&&!$.isEmpty(m)&&ce(m[g]));});}s(Ne,"createListBox");function _e(t){var l=e.id+"_Pager";h=$UI.createComponent(componyx.UI.DataPager,{id:l,containerElement:t}),h.visiblePages=0,h.pageSize=25,h.clone($UI.store[e.dataPagerId],e),h.cssClass=h.cssClass||e.cssClassDataPager||f.DATAPAGER,h.delegateFocusEvents(e),h.events.onPostRender.priorityAdd(()=>{e.isReady.apply(e);},null),h.events.onIndexChange.priorityAdd(Ue,null);}s(_e,"createDataPager");function Ue(t,l){K(l.pageIndex);}s(Ue,"pageIndexChange");function Me(t,l){$lib.addClass(e.element,"focus"),ie&&(t.value=""),t.value&&e.allowInput&&t.select(),e.events.onInputFocus.fire(e,A(null));}s(Me,"inputFocus");function He(t){$lib.removeClass(e.element,"focus"),d.showing||ne(),e.events.onInputBlur.fire(e,A(null));}s(He,"inputBlur");function ne(){const t=u,l=e.getSelectedItem();if(e.multiSelect)Ee();else if(l&&t.value!==l.text)if(e.allowCustomValue){const i=t.value.trim();k(),de(i),E.__setValue(i);}else t.value=l.text;else l||(e.allowCustomValue?E.__setValue(t.value):$lib.fireEvent(E,"change"));}s(ne,"commitInputValue");function Fe(t,l){var i=l.key;F(),!l.ctrlKey&&(Ve(i,l),V());}s(Fe,"inputKeyDown");function Ve(t,l){var i=" Backspace Delete ",a=t=="ArrowUp"||t=="ArrowDown",r=e.itemList&&e.itemList.length>0,n=!1,o;if(O=null,e.loadOnDemand||(i=i.replace(" Backspace Delete","")),t=="Tab"){H=!0,d.hide();return}if(n=t.match(/\s|\w|[!@#$%^&*()_+\-=\[\]{};':"\\|,.<>\/?]/)!=null||i.indexOf(t)>-1,n&&i.indexOf(" "+t+" ")==-1&&(o=t),t=="Enter"||t==" "&&!e.allowInput){if(!$lib.isEmpty(I))I==y?be():ue(I);else if(e.allowInput&&e.allowCustomValue&&e.multiSelect){const b=u.value.trim();$lib.isEmpty(b)||(Q||X?z=b:Ce(b));}e.multiSelect||d.hide(),l.preventDefault();return}if(a||!e.loadOnDemand&&n)if(a&&l.preventDefault(),d.showing&&r){if(oe(t)===!1){l.preventDefault();return}}else O=t,r&&d.show();else e.loadOnDemand&&n&&(q="",i.indexOf(" "+t+" ")==-1&&(q=o),ae());F();}s(Ve,"keyDownAction");function ke(t){if(F(),V(),$lib.isEmpty(t.value)){g&&w(g);return}e.loadOnDemand&&ae();}s(ke,"inputChanged");function F(){if(e.autoGrow){var t=$lib.isEmpty(u.value)?e.placeholder:u.value;R.textContent=t.replace(/\s/g,"\xA0")+"\xA0\xA0\xA0\xA0",R.style.display="inline-block",u.style.width=$lib.unit(R.offsetWidth),R.style.display="none";}}s(F,"autoGrow");function ae(t=null){clearTimeout(X),!Q&&(X=setTimeout(function(){K(null,null,null,!0);},$.isEmpty(t)?e.loadOnDemandDelay:t));}s(ae,"loadOnDemand");function oe(t){if(e.keyboardNavigation){var l=u,i,a=e.itemList,r=I||g,n="",o=null,b=!1,L=e.multiSelect&&e.hasTemplate("SelectAll");if(t=t??O,e.allowInput)if(O==null){const T=l.selectionStart,v=l.selectionEnd;T!==v?i=l.value.substring(0,T)+t+l.value.substring(v):i=(T>0?l.value.substr(0,T):l.value)+t;}else i=l.value;else i=t;switch(O=null,t){case"ArrowUp":if(r==y?n=a[a.length-1].id:!r||!(o=a.previous(r))?n=L?y:a[a.length-1].id:n=o.id,n==y){re();return}break;case"ArrowDown":if(r==y?n=a[0].id:!r||!(o=a.next(r))?n=L?y:a[0].id:n=o.id,n==y){re();return}break;default:r=r!=y?r:"",o=e.itemList.find(i,e.allowInput?null:r),o&&(n=o.id,e.allowInput&&(b=!0));break}return $lib.isEmpty(n)?!e.multiSelect&&!$lib.isEmpty(g)&&!e.allowCustomValue&&w(g,!1):e.multiSelect?Ie(n,!0):N(n,!0),b&&$lib.selectTextRange(l,i.length),$lib.isEmpty(n)||e.multiSelect==!0}}s(oe,"navigate");function Ge(t,l){var i=null,a=x(),r=","+e.value+",",n=!!(e.allowInput&&t&&t.filteredColumns&&!$lib.isEmpty(S)&&!$lib.isEmpty(S.text)),o=null,b=!1;if(m={},a.innerHTML="",e.multiSelect&&e.hasTemplate("SelectAll")){var L={},T=e.cssClassItemCheckBox||f.ITEMCHECKBOX;L.checkBox=$lib.format('<span class="{0}"></span>',T),a.appendChild(i=document.createElement("li")),i.className=e.cssClassItemSelectAll||f.ITEMSELECTALL,e.applyTemplate(i,y,L),$lib.on(i,"click",be),$lib.on(i,"pointerenter",re),m[y]=i;}t&&t.filteredColumns&&(W={});for(var v=0;v<e.itemList.length;++v){var B=e.itemList[v];$lib.isEmpty(B.id)&&(B.id=B.text.replace(/\s/g,"_")),B.value=$lib.isEmpty(B.value)?B.id:B.value,o=$lib.clone({},B,!0),o.text=$lib.encodeHTML(o.text),n&&Ke(o,t),i=Xe(o,v),(o.selected||C[o.id]||D&&r.indexOf(","+o.value+",")>-1)&&(M=b=!0,N(o.id,!0));}!e.multiSelect&&b&&!l&&d.hide();}s(Ge,"drawItemList");function Xe(t,l){let i=x(),a=[],r,n,o=document.createElement("li"),b;return m[t.id]?i.replaceChild(o,m[t.id]):i.appendChild(o),m[t.id]=o,e.events.onPreRenderItem.fire(e,A(t)),r=t.cssClassCheckBox||e.cssClassItemCheckBox||f.ITEMCHECKBOX,n=t.cssClassIcon||e.cssClassItemIcon||f.ITEMICON,a[0]={},o.className=t.cssClass||e.cssClassItem||f.ITEM,(l!=null&&l%2!=0||l==null&&$lib.indexOf(i.childNodes,o)%2!=0)&&$lib.addClass(o,"odd"),e.multiSelect&&(a[0].checkBox=$lib.format('<span class="{0}"></span>',r)),t.hasIcon&&(a[0].icon=$lib.format('<i class="{0}"></i>',n)),a[1]=t,t.templateId||e.itemTemplateId?e.applyTemplate(o,t.templateId||e.itemTemplateId,a):e.applyTemplate(o,"Default",a),(b=$lib(n,o)[0])&&t.iconURL&&(b.style.backgroundImage="url("+t.iconURL+")"),t.disabled?ve(t.id):e.tooltipManagerId&&t.tooltip&&We(o,t),ze(o,t),e.events.onPostRenderItem.fire(e,A(t)),o}s(Xe,"drawItem");function We(t,l){const i=$UI.store[e.tooltipManagerId],a=`${e.id}_${l.id}`;i.addTooltip(a,tooltip),i.addTrigger(t,a);}s(We,"addTooltip");function ze(t,l){$lib.on(t,"pointerenter",Ie,[l.id,!1]),$lib.on(t,"click",function(i){e.multiSelect?ue(i):N(i),e.events.onItemClick.fire(e,A(e.itemList.get(i)));},l.id,e);}s(ze,"bindItemEvents");function Ke(t,l){var i='<b class="match">$1</b>';$lib.each(l.filteredColumns,function(r,n){W[n]||(W[n]=a(r.filter,r.value||u.value)),t[n]?t[n]=t[n].toString().replace(W[n],i):t.attributes&&t.attributes[n]&&(t.attributes[n]=t.attributes[n].toString().replace(W[n],i));});function a(r,n){switch(n=$lib.escapeRegExp(n),r){case Y.STARTSWITH:return new RegExp("^("+n+")","gi");case Y.CONTAINS:return new RegExp("("+n+")","gi");case Y.EQUALS:return new RegExp("^("+n+")$","gi");case Y.ENDSWITH:return new RegExp("("+n+")$","gi")}}s(a,"createRegEx");}s(Ke,"highlightMatch");function Je(){if(e.hasTemplate("Preloader")){var t=document.createElement("li"),l=x();l.innerHTML="",l.appendChild(t),t.className=e.cssClassPreloader||f.PRELOADER,e.applyTemplate(t,"Preloader");}}s(Je,"showPreloader");function Qe(){var t=x();if(t.innerHTML="",e.hasTemplate("NoResult")){var l=document.createElement("li");t.appendChild(l),l.className=e.cssClassNoResult||f.NORESULT,e.applyTemplate(l,"NoResult");}}s(Qe,"showNoResult");function A(t,l){return {item:t,event:$lib.event}}s(A,"eventArgs");function be(l){var l=y,i=m[l],a=$lib.hasClass(i,"selected");$lib.toggleClass(i,"selected"),$lib.each(e.itemList,function(r){a?w(r.id):N(r.id);}),a&&_();}s(be,"selectAll");function re(){var t=y;I&&$lib.removeClass(m[I],"focus"),$lib.addClass(m[t],"focus"),I=t;}s(re,"focusSelectAll");function Ie(t,l,i){e.itemList.get(t);!d.showing||t==I||(I&&$lib.removeClass(m[I],"focus"),$lib.addClass(m[t],"focus"),I=t,!$lib.isEmpty(g)&&g!=t&&$lib.removeClass(m[g],"selected"),l&&ce(m[t]));}s(Ie,"focusItem");function ue(t){e.itemList.get(t);C[t]?w(t):N(t),M=!1;}s(ue,"toggleSelectItem");function N(t,l=!1){var i=e.itemList.get(t),a=m[t];if(i.disabled)return;if(!M&&i.selected){!l&&e.collapseOnItemSelect&&d.hide();return}const r=!!C[t];i.selected=!0,$lib.addClass(a,"selected"),e.multiSelect?(C[t]=i,fe(),e.multiSelectTagging&&ge(i)):(k(),C[t]=i,$lib.isEmpty(I)||$lib.removeClass(m[I],"focus"),I=null,g=t,E.__setValue(i.value),E.value===e.value&&(D=!1),!l&&e.collapseOnItemSelect?d.hide():ce(a)),(!r||!e.allowInput)&&(ee()?_():de(i.text,e.__focus)),$lib.addClass(e.element,"selected"),V(),M=!1,r||e.events.onItemSelect.fire(e,A(i));}s(N,"selectItem");function w(t,l){var i=e.itemList.get(t),a=m[t];i?(i.selected=!1,g=null,$lib.removeClass(a,"selected")):(i={},i.id=t),delete C[t],e.multiSelect?(fe(),e.multiSelectTagging&&qe(t),P||$lib.removeClass(e.element,"selected")):(E.__setValue(""),$lib.removeClass(e.element,"selected")),i.value===e.value&&(D=!1),l!==!1&&!ee()&&de("",e.__focus),V(),e.events.onItemDeselect.fire(e,A(i));}s(w,"deselectItem");function ve(t){var l=$e(t);l.disabled=!0,$lib.addClass(m[t],"disabled");}s(ve,"disableItem");function Ze(t){var l=$e(t);l.disabled=!1,$lib.removeClass(m[t],"disabled");}s(Ze,"enableItem");function Ce(t){if(C[t])return;pe();let l=e.itemList.getByText(t,!0);if(l&&!l.disabled){N(l.id),_();return}let i={id:t,value:t,text:t,selected:!0,disabled:!1};C[t]=i,e.multiSelectTagging&&ge(i),fe(),_(),V(),$lib.addClass(e.element,"selected"),e.events.onItemSelect.fire(e,A(i));}s(Ce,"addCustomValue");function ge(t){if(!U[t.id]){var l=$UI.createComponent(componyx.UI.Button,{id:je(t.id),beforeElement:u});if(U[t.id]=l,l.clone($UI.store[e.tagButtonId],e),l.primary=!e.allowInput,l.iconAlign=2,l.hasIcon=!0,l.transparentBorder=!0,l.cssClass=f.TAG,l.command=function(a){$lib.event.stopPropagation(),w(a);}.bind(e,t.id),l.delegateFocusEvents(e),e.hasTemplate("ItemTag")){var i=$lib.element();e.applyTemplate(i,"ItemTag",t),l.text=i.innerHTML;}else l.text=t.text;l.show();}}s(ge,"createTag");function qe(t){U[t]&&(U[t].destroy(),delete U[t]);}s(qe,"removeTag");function ce(t){var l=x();l.scrollTop=t.offsetTop-l.offsetTop;}s(ce,"scrollToItem");function x(){return $lib(e.cssClassList||f.LIST,d.element,"ul")[0]}s(x,"getList");function Ye(){var t=u;return !$lib.isEmpty(t.value)}s(Ye,"hasInputValue");function de(t,l){var i=u;(!e.multiSelect||!le)&&(i.value=t,ie=!1,F()),l&&j(i);}s(de,"setInputValue");function Ee(){var t=u;!t||ee()||(P>1?(e.applyTemplate(t,"MultiSelectInput",{count:P}),ie=!0):P==1&&(t.value=e.getSelectedItems()[0].text),F());}s(Ee,"setMultiSelectValue");function j(t){t=t||u,$lib.visible(t)&&!t.hasFocus&&t.focus();}s(j,"setFocus");function V(){if(!e.disableClearButton){var t=!$lib.isEmpty(C)||Ye();t?p.element.style.visibility="":p.element.style.visibility="hidden";}}s(V,"toggleClearButton");function fe(){var t=[];$lib.each(C,function(l,i){t.push(l.value);}),P=t.length,E.__setValue(t.length>0?t.join(","):"");}s(fe,"storeSelected");function ee(){return e.multiSelect&&e.multiSelectTagging}s(ee,"tagging");function je(t){return $lib.format("{0}_{1}",e.id,t)}s(je,"getItemId");function $e(t){return typeof t=="string"?e.itemList.get(t):t}s($e,"getItem");function et(){Z=!0,e.events.onClear.fire(e,null),e.loadOnDemand&&me(),Te(),p.element.style.visibility="hidden";}s(et,"clearCommand");function Te(){k(),_();}s(Te,"clear");function k(){if(Object.keys(C).length>0)for(const l in C)w(l);else E.__setValue("");P=0;}s(k,"clearSelection");function _(){var t=u;t.value="",S=null,e.loadOnDemand&&e.loadOnRender&&K(null,d.showing,null,!1);}s(_,"clearInput");function me(){S=null;var t=x();t.innerHTML="",e.itemList&&(e.itemList.length=0),h&&h.hide();}s(me,"clearList");function tt(){d&&d.hide(!0),z=null,d=null,m={},U={},h=I=g=S=c=p=null,C={},P=0,D=Z=!1;}s(tt,"dispose");},"ComboBox"),componyx.UI.ComboBox.prototype=Object.create($base.methods),componyx.UI.ComboBox.prototype.constructor=componyx.UI.ComboBox,componyx.UI.ComboBox.FilterOption={STARTSWITH:0,CONTAINS:1,EQUALS:2,ENDSWITH:3},componyx.UI.ComboBox.Item=function(J){this.hasIcon=!1,this.cssClassIcon=null,this.cssClassCheckBox=null,this.iconURL="",this.tooltip="",$base.static.Item.call(this,J);};})(window);
197
+ })(window);
198
+
199
+
200
+ (async function(window){var X=Object.defineProperty;var s=(B,O)=>X(B,"name",{value:O,configurable:!0});(function(B){componyx.UI.DataPager=s(function(l,N){var e=this,i=1,f=0,U=0,v=!0,$;$base.static.ThemeOption;var p={DATAPAGER:"data-pager",BUTTONFIRST:"button first",BUTTONLAST:"button last",BUTTONPREVIOUS:"button prev",BUTTONNEXT:"button next",BUTTONPREVIOUSGROUP:"button prev-group",BUTTONNEXTGROUP:"button next-group",BUTTONPAGE:"button page",PAGEHOLDER:"page-holder"},r={FIRST:-1,LAST:-2,PREVIOUS:-3,NEXT:-4,PREVIOUSGROUP:-5,NEXTGROUP:-6};this.cssClassButtonHolder="",this.cssClassInfoHolder="",this.cssClassPageHolder="",this.itemCount=0,this.pageSize=50,this.visiblePages=5,this.pageIndex=1,this.name="",this.initialIndexChange=!1,this.numericBoxId=null,this.hiddenInputId=null,this.buttons={firstPageButtonId:null,lastPageButtonId:null,previousPageButtonId:null,nextPageButtonId:null,previousPageGroupButtonId:null,nextPageGroupButtonId:null,pageButtonId:null};function E(a){Object.assign(this,a),this.onFocus=$base.static.createEvent("onFocus"),this.onBlur=$base.static.createEvent("onBlur"),this.onIndexChange=$base.static.createEvent("onIndexChange");}s(E,"DataPagerEvents"),this.events=new E(this.events),$base.Component.apply(this,[l,N]),this.setButtonTemplate=function(a){e.addTemplate("Button",a);},this.setInfoTemplate=function(a){e.addTemplate("Info",a);},this.getPageIndex=function(){return i},this.setPageIndex=function(a){w(a);},this.getPageCount=function(){return T()},this.getPageFirst=function(){return getPageFirst()},this.getPageLast=function(){return getPageLast()},this.render=function(){if(e.renderState!=$base.static.RenderState.RENDERING){$base.methods.render.call(e,R,"data-pager",!1);return}e.hasTemplate("Button")||e.addTemplate("Button","{first}{previous}{pages}{next}{last}{pageJump}"),e.hasTemplate("Info")||e.addTemplate("Info","Page {pageIndex}-{pageCount} / items {firstItemIndex}-{lastItemIndex} ({itemCount})"),G();};function R(){return ["DataPager",["Button","NumericBox"]]}s(R,"preRender");function C(){U++,f==U&&(y(),v=e.initialIndexChange,!e.pageIndex&&!$lib.isEmpty($.value)&&!isNaN($.value)&&(e.pageIndex=parseInt($.value,10)),e.itemCount>0&&h(e.pageIndex),v=!0,$=e.createSyncedInput(e.hiddenInputId,function(){e.setPageIndex(this.value);}),$.__setValue(i),$base.methods.postRender.call(e));}s(C,"postRender");function G(){f=U=0,S();}s(G,"draw");function S(){var a={},t=e.id,n=null,d=document.createElement("div");if(a.first=$lib.format('<div id="{0}_{1}"></div>',t,"First"),a.last=$lib.format('<div id="{0}_{1}"></div>',t,"Last"),a.previous=$lib.format('<div id="{0}_{1}"></div>',t,"Prev"),a.next=$lib.format('<div id="{0}_{1}"></div>',t,"Next"),a.pages=$lib.format('<div id="{0}_{1}"></div><div id="{0}_{2}"></div><div id="{0}_{3}"></div>',t,"PrevGroup","Pages","NextGroup"),a.pageJump=$lib.format('<div id="{0}_{1}"></div>',t,"PageJump"),e.cssClassButtonHolder&&(d.className=e.cssClassButtonHolder),e.element.appendChild(d),e.applyTemplate(d,"Button",a),n=$lib($lib.format("#{0}_{1}",t,"Pages")),n&&e.visiblePages>0&&(f=2+e.visiblePages),$lib($lib.format("#{0}_First",t))&&f++,$lib($lib.format("#{0}_Last",t))&&f++,$lib($lib.format("#{0}_Prev",t))&&f++,$lib($lib.format("#{0}_Next",t))&&f++,$lib($lib.format("#{0}_PageJump",e.id))&&f++,$lib($lib.format("#{0}_First",t))&&P($lib.format("{0}_First",t),e.buttons.firstPageButtonId,null,null,p.BUTTONFIRST,r.FIRST),$lib($lib.format("#{0}_Last",t))&&P($lib.format("{0}_Last",t),e.buttons.lastPageButtonId,null,null,p.BUTTONLAST,r.LAST),$lib($lib.format("#{0}_Prev",t))&&P($lib.format("{0}_Prev",t),e.buttons.previousPageButtonId,null,null,p.BUTTONPREVIOUS,r.PREVIOUS),$lib($lib.format("#{0}_Next",t))&&P($lib.format("{0}_Next",t),e.buttons.nextPageButtonId,null,null,p.BUTTONNEXT,r.NEXT),n&&e.visiblePages>0){n.className=e.cssClassPageHolder||p.PAGEHOLDER,P($lib.format("{0}_PrevGroup",t),e.buttons.previousPageGroupButtonId,n,"...",p.BUTTONPREVIOUSGROUP,r.PREVIOUSGROUP);for(var u=1;u<=e.visiblePages;u++)P($lib.format("{0}_{1}",t,u),e.buttons.pageButtonId,n,null,p.BUTTONPAGE,u);P($lib.format("{0}_NextGroup",t),e.buttons.nextPageGroupButtonId,n,"...",p.BUTTONNEXTGROUP,r.NEXTGROUP);}else n.style.display=$lib("#"+t+"_PrevGroup").style.display=$lib("#"+t+"_NextGroup").style.display="none";$lib($lib.format("#{0}_PageJump",e.id))&&L();}s(S,"drawButtons");function y(){var a={},t=e.id,n=document.createElement("div");a.pageIndex=$lib.format('<span id="{0}_{1}"></span>',t,"PageIndex"),a.pageCount=$lib.format('<span id="{0}_{1}"></span>',t,"PageCount"),a.firstItemIndex=$lib.format('<span id="{0}_{1}"></span>',t,"FirstIndex"),a.lastItemIndex=$lib.format('<span id="{0}_{1}"></span>',t,"LastIndex"),a.itemCount=$lib.format('<span id="{0}_{1}"></span>',t,"ItemCount"),e.cssClassInfoHolder&&(n.className=e.cssClassInfoHolder),e.element.appendChild(n),e.applyTemplate(n,"Info",a);}s(y,"drawInfo");function P(a,t,n,d,u,b){var o=$UI.createComponent(componyx.UI.Button,{id:a,containerElement:n});o.primary=!1,o.transparent=!0,o.clone($UI.store[t],e),n?(o.contentAlign=componyx.UI.Button.AlignOption.CENTER,o.text=d,b!=r.PREVIOUSGROUP&&b!=r.NEXTGROUP&&(o.type=componyx.UI.Button.TypeOption.RADIOBUTTON,o.radioGroupId=n.id)):o.hasIcon=!0,o.cssClass=u,o.events.onPostRender.priorityAdd(C,null),o.command=function(){F(b);},o.delegateFocusEvents(e),o.show();}s(P,"createButton");function L(){var a=$lib.format("{0}_PageJump",e.id),t=$UI.createComponent(componyx.UI.NumericBox,{id:a});return t.clone($UI.store[e.numericBoxId],e),t.minValue=1,t.maxValue=T(),t.events.onPostRender.priorityAdd(C,null),t.events.onChanged.priorityAdd(V,null),t.delegateFocusEvents(e),t.show(),t}s(L,"createPageJump");function V(a,t){if(!a.getValue()){a.setValue(i);return}h(parseInt(a.getValue(),10));}s(V,"pageJump");function F(a){if(e.itemCount){var t=1,n=e.visiblePages;switch(a){case r.FIRST:{t=1;break}case r.LAST:{t=T();break}case r.PREVIOUS:{t=i-1;break}case r.NEXT:{t=i+1;break}case r.PREVIOUSGROUP:{t=Math.floor((i-1)/n)*n;break}case r.NEXTGROUP:{t=Math.ceil(i/n)*n+1;break}default:{t=Math.floor((i-1)/n)*n+a;break}}h(t);}}s(F,"buttonAction");function T(){return Math.ceil(e.itemCount/e.pageSize)}s(T,"getPageCount");function A(){return (i-1)*e.pageSize+1}s(A,"getFirstItemIndex");function H(){var a=(i-1)*e.pageSize+e.pageSize;return a>e.itemCount?e.itemCount:a}s(H,"getLastItemIndex");function w(a){v=!1,h(a),v=!0;}s(w,"setPageIndex");function h(a){var t=e.id,n=e.visiblePages,d=$UI.store[$lib.format("{0}_First",t)],u=$UI.store[$lib.format("{0}_Last",t)],b=$UI.store[$lib.format("{0}_Prev",t)],o=$UI.store[$lib.format("{0}_Next",t)],m=$UI.store[$lib.format("{0}_PrevGroup",t)],g=$UI.store[$lib.format("{0}_NextGroup",t)],x=$UI.store[$lib.format("{0}_PageJump",e.id)],_=Math.floor((a-1)/n)*n,I=T(),c=null;if(a>I&&(a=I),i=a,$&&$.__setValue(i),d&&i==1?d.disable():d&&d.enable(),b&&i==1?b.disable():b&&b.enable(),u&&i==I?u.disable():u&&u.enable(),o&&i==I?o.disable():o&&o.enable(),m&&!_?m.disable():m&&m.enable(),g&&_+n>=I?g.disable():g&&g.enable(),I<=n?(m&&m.hide(),g&&g.hide()):(m&&m.show(),g&&g.show()),$lib($lib.format("#{0}_Pages",t))&&n>0)for(var a=1;a<=n;a++)c=$UI.store[$lib.format("{0}_{1}",t,a)],c.text=(_+a).toString(),c.updateContent(),_+a>I?c.hide():(c.show(),c.disabled&&c.enable(),_+a==i&&c.select());D(),x&&x.getValue()!=i.toString()&&(x.maxValue=I,x.setValue(i.toString(),!1)),v&&e.events.onIndexChange.fire(e,{pageIndex:i});}s(h,"update");function D(){$lib($lib.format("#{0}_PageIndex",l))&&($lib($lib.format("#{0}_PageIndex",l)).innerHTML=i),$lib($lib.format("#{0}_PageCount",l))&&($lib($lib.format("#{0}_PageCount",l)).innerHTML=T()),$lib($lib.format("#{0}_FirstIndex",l))&&($lib($lib.format("#{0}_FirstIndex",l)).innerHTML=A()),$lib($lib.format("#{0}_LastIndex",l))&&($lib($lib.format("#{0}_LastIndex",l)).innerHTML=H()),$lib($lib.format("#{0}_ItemCount",l))&&($lib($lib.format("#{0}_ItemCount",l)).innerHTML=e.itemCount);}s(D,"updateLabels");},"DataPager"),componyx.UI.DataPager.prototype=Object.create($base.methods),componyx.UI.DataPager.prototype.constructor=componyx.UI.DataPager;})();
201
+ })();
202
+
203
+
204
+ (async function(window){var Ge=Object.defineProperty;var s=(K,le)=>Ge(K,"name",{value:le,configurable:!0});(function(K){componyx.UI.DatePicker=s(function(be,ve){var e=this,F,Z=new Date,o=null,g=null,d=null,v=null,I=null,C=null,l=null,T=null,_=null,O=null,G,k=[];$base.static.ThemeOption;var Oe=componyx.UI.DatePicker.FirstDayOfWeekOption,N=componyx.UI.DatePicker.ViewModeOption,h={NUMERICBOX:"numeric-box",DAY:"day",MONTH:"month",YEAR:"year",LAST:" last",PICKER:"button picker",CALENDAR:"dialog calendar",PREVMONTH:"button prev",NEXTMONTH:"button next",HEADERLABEL:"header-label",WEEKNUMBER:"week-number",CURRENTWEEK:"current-week",TODAY:"today",INACTIVE:"inactive"};this.cssClassNumericBox="",this.cssClassDay="",this.cssClassMonth="",this.cssClassYear="",this.cssClassPicker="",this.cssClassCalendar="",this.cssClassPrevMonth="",this.cssClassNextMonth="",this.cssClassHeaderLabel="",this.cssClassWeekNumber="",this.cssClassCurrentWeek="",this.cssClassToday="",this.cssClassInactive="",this.dateFormat="MM/dd/yyyy",this.firstDayOfWeek=Oe.SUNDAY,this.today=!1,this.dayPlaceholder="DD",this.monthPlaceholder="MM",this.yearPlaceholder="YYYY",this.viewMode=N.INPUT_CALENDAR_POPUP,this.weekNumbers=!0,this.readOnly=!1,this.disabled=!1,this.calendarDayLeadingZero=!1,this.autoFocus=!0,this.months=["January","February","March","April","May","June","July","August","September","October","November","December"],this.days=["su","mo","tu","we","th","fr","sa"],this.name="",this.value=null,this.minValue=null,this.maxValue=null,this.allowedDates=[],this.disallowDates=!1,this.pickerButtonId=null,this.dayNumericBoxId=null,this.monthNumericBoxId=null,this.yearNumericBoxId=null,this.calendarMonthNumericBoxId=null,this.calendarYearNumericBoxId=null,this.dialogId=null,this.hiddenInputId=null;function Ee(t){Object.assign(this,t),this.onFocus=$base.static.createEvent("onFocus"),this.onBlur=$base.static.createEvent("onBlur"),this.onChanged=$base.static.createEvent("onChanged"),this.onCalendarWeekRender=$base.static.createEvent("onCalendarWeekRender"),this.onCalendarDayRender=$base.static.createEvent("onCalendarDayRender");}s(Ee,"DatePickerEvents"),this.events=new Ee(this.events),$base.Component.apply(this,[be,ve]),this.reset=function(t){He($lib.isEmpty(t)?!1:t);},this.clear=function(t){ge($lib.isEmpty(t)?!1:t);},this.select=function(){Se();},this.getDayNumericBox=function(){return $UI.store[e.id+"_D"]},this.getMonthNumericBox=function(){return $UI.store[e.id+"_M"]},this.getYearNumericBox=function(){return $UI.store[e.id+"_Y"]},this.getCalendarMonthNumericBox=function(){return l?$UI.store[l.id+"_M"]:null},this.getCalendarYearNumericBox=function(){return l?$UI.store[l.id+"_Y"]:null},this.showCalendar=function(){B();},this.hideCalendar=function(){fe();},this.getDate=function(){return We()},this.setDate=function(t,n){U(t,$lib.isEmpty(n)?!1:n);},this.setValue=function(t,n){U(t||null,$lib.isEmpty(n)?!1:n);},this.getValue=function(){return Ke()},this.getISOValue=function(){const t=this.getDate();return t?$lib.formatDate(t,"yyyy-MM-dd"):null},this.setSeparatorTemplate=function(t){e.addTemplate("Separator",t,!0);},this.isAllowedDate=function(t){return me(t)},this.render=function(){if(e.renderState!=$base.static.RenderState.RENDERING){$base.methods.render.call(e,Ne,"date-picker");return}Me();},this.postRender=function(){e.renderState!=$base.static.RenderState.RENDERED&&((e.viewMode==N.INPUT_CALENDAR_STATIC||e.viewMode==N.CALENDAR)&&B(),e.viewMode==N.INPUT_CALENDAR_POPUP&&(z(d.getInput()),z(v.getInput()),z(I.getInput())),$base.methods.postRender.call(e));},this.destroy=function(...t){Ze(),$base.methods.destroy.call(this,...t);};function Ne(){var t=["Button","NumericBox"];return e.viewMode!=N.INPUT&&t.push("Dialog"),["DatePicker",t]}s(Ne,"preRender");function z(t){$lib.on(t,"keyup",Te);}s(z,"setInputEvent");function Me(){var t=e.dateFormat.toLowerCase(),n=t.match(/[^\w]/)[0];F=e.createSyncedInput(e.hiddenInputId,function(){U(this.value);}),Ae(),($lib.touch&&e.autoTouchConfig&&V()||!$lib.isEmpty(e.allowedDates))&&(e.readOnly=!0),e.viewMode<3&&(Q(t),t=t.substring(t.indexOf(n)+1),e.applyTemplate(e.element,"Separator"),Q(t),t=t.substring(t.indexOf(n)+1),e.applyTemplate(e.element,"Separator"),Q(t)),ye(),$lib.isEmpty(o)||(O=o.getDate()),V()&&(Ve(),$lib.on(K,"keyup",re)),e.viewMode!=N.INPUT&&Le(),e.renderChildren();}s(Me,"draw");function Ae(){var t=e.allowedDates;o=e.value=e.value||F.value,$lib.isEmpty(o)?e.today&&(o=Z):o=R(o),e.minValue=R(e.minValue),e.maxValue=R(e.maxValue),$lib.each(t,function(n,i){n.indexOf(" ")>-1?t[i]=[R(n.split(" ")[0]),R(n.split(" ")[1])]:t[i]=[R(n)];});}s(Ae,"initDates");function R(t){return typeof t!="string"?t:/^\d{4}-\d{2}-\d{2}/.test(t)?new Date(t):$lib.parseDate(t,e.dateFormat)}s(R,"convertDate");function Q(t){t.indexOf("d")==0&&we(e.element),t.indexOf("m")==0&&ee(e.element),t.indexOf("y")==0&&te(e.element);}s(Q,"addInput");function we(t){var n=e.dateFormat.toLowerCase(),i=n.indexOf("d")>n.indexOf("m")+n.indexOf("y");d=ne(t,e.id+"_D",e.dayNumericBoxId),d.id=e.id+"_D",d.cssClass+=" "+(e.cssClassDay||h.DAY)+(i?h.LAST:""),d.placeholder=e.dayPlaceholder||"",d.maxLength=2,d.minValue=1,d.maxValue=31,d.readOnly=e.readOnly,d.disabled=e.disabled,d.selectOnFocus=e.autoFocus?!0:d.selectOnFocus,d.showButtons=i&&$lib.isEmpty(e.allowedDates),d.leadingZeros=M("dd"),d.digitPadLeftValue=d.leadingZeros?"00":null,d.value=o?D(o.getDate(),M("dd")):"",d.events.onChange.priorityAdd(Pe),d.events.onChanged.priorityAdd(A,[!1]),d.events.onIncrement.priorityAdd(_e),d.events.onDecrement.priorityAdd(Fe);}s(we,"createDayInput");function ee(t,n){e.cssClassMonth||h.MONTH;var u=n?l.id+"_M":e.id+"_M",a=ne(t,u,n?e.calendarMonthNumericBoxId:e.monthNumericBoxId,n),r=e.dateFormat.toLowerCase(),c=r.indexOf("m")>r.indexOf("d")+r.indexOf("y");a.id=n?l.id+"_M":e.id+"_M",a.cssClass+=" "+(e.cssClassMonth||h.MONTH)+(c?h.LAST:""),a.placeholder=e.monthPlaceholder||"",a.maxLength=2,a.minValue=1,a.maxValue=12,a.readOnly=!n&&e.readOnly?!0:a.readOnly,a.disabled=e.disabled,a.selectOnFocus=e.autoFocus?!0:a.selectOnFocus,a.showButtons=c&&$lib.isEmpty(e.allowedDates),a.leadingZeros=M("mm"),a.digitPadLeftValue=a.leadingZeros?"00":null,a.value=o?D(o.getMonth()+1,M("mm")):"",a.events.onChanged.priorityAdd(A,[n]),a.events.onIncrement.priorityAdd(Re.bind(e,n)),a.events.onDecrement.priorityAdd(Ue.bind(e,n)),n?(a.events.onChange.priorityAdd(S,["m",n]),a.showButtons=r.indexOf("m")>r.indexOf("y"),a.focusGroupId=e.id+"_C",T=a):(v=a,v.events.onChange.priorityAdd($e));}s(ee,"createMonthInput");function te(t,n){e.cssClassYear||h.YEAR;var u=n?l.id+"_Y":e.id+"_Y",a=ne(t,u,n?e.calendarYearNumericBoxId:e.yearNumericBoxId,n),r=e.dateFormat.toLowerCase(),c=r.indexOf("y")>r.indexOf("d")+r.indexOf("m");a.cssClass+=" "+(e.cssClassYear||h.YEAR)+(c?h.LAST:""),a.placeholder=e.yearPlaceholder||"",a.maxLength=4,a.minValue=1800,a.maxValue=9999,a.readOnly=!n&&e.readOnly?!0:a.readOnly,a.disabled=e.disabled,a.selectOnFocus=e.autoFocus?!0:a.selectOnFocus,a.showButtons=c&&$lib.isEmpty(e.allowedDates),a.value=o?o.getFullYear():"",n?(_=a,a.events.onChange.priorityAdd(S,["y",n]),a.showButtons=r.indexOf("y")>r.indexOf("m"),a.focusGroupId=e.id+"_C"):(I=a,a.events.onChange.priorityAdd(ae),a.events.onIncrement.priorityAdd(ae),a.events.onDecrement.priorityAdd(ae)),a.events.onIncrement.priorityAdd(A,[n]),a.events.onDecrement.priorityAdd(A,[n]),a.events.onChanged.priorityAdd(A,[n]);}s(te,"createYearInput");function ne(t,n,i,u){var a=$UI.createComponent(componyx.UI.NumericBox,{id:n,containerElement:t});return a.clone($UI.store[i],e),a.showing=!0,a.cssClass=a.cssClass||e.cssClassNumericBox||h.NUMERICBOX,a.focusGroupId=e.id,a.focusableButtons=!1,a.events.onPostRender.priorityAdd(()=>{e.isReady.apply(e);},null),!u&&e.viewMode==N.INPUT_CALENDAR_POPUP&&!e.disabled&&(a.events.onClick.priorityAdd(function(){G=!1,B();}),a.events.onFocus.priorityAdd(function(){G=!0;})),a.delegateFocusEvents(e),a}s(ne,"createInput");function re(t){G&&t.key=="Tab"&&B(),G=!1,$lib.defer(function(){const n=e.element.ownerDocument.activeElement;!e.element.contains(n)&&l&&l.hide();}.bind(e));}s(re,"checkTabFocus");function M(t){return e.dateFormat.toLowerCase().indexOf(t)>-1}s(M,"hasLeadingZero");function D(t,n){return t=t.toString(),n&&t.length!=2?"0"+t:t}s(D,"addNil");function S(t,n,i,u){var a=u.event?u.event.key:null;if(!(!e.autoFocus||!a||a=="ArrowUp"||a=="ArrowDown")){var r=e.dateFormat.toLowerCase(),c=r.match(/[^\w]/)[0];n&&(r=r.replace("dd","").replace(c+c,c));var y=r.indexOf(t),b=y+r.substr(y).indexOf(c)+1,$,f;if(!b||b==y){var m=r.match(new RegExp(t,"g"));b==y&&m&&m.length==i.getValue().length&&A();return}$=r.substr(b,1).toUpperCase(),$=n?l.id+"_"+$:e.id+"_"+$,f=$UI.store[$],i.getValue().length==b-y-1&&f.select();}}s(S,"moveFocus");function Pe(t,n){var i=e.dateFormat.toLowerCase(),u=i.indexOf("d")>i.indexOf("m")+i.indexOf("y");O=d.getValue(),u?se(!0):E(o)&&parseFloat(O)<32&&parseFloat(O)>j(o)&&(i.indexOf("y")>i.indexOf("d")&&I.clear(),i.indexOf("m")>i.indexOf("d")&&v.clear()),S("d",!1,t,n);}s(Pe,"dayInputChange");function $e(t,n){se(!1),S("m",!1,t,n);}s($e,"monthInputChange");function ae(t,n){se(!1),S("y",!1,t,n);}s(ae,"yearInputChange");function se(t){if(I.getValue().length==4){var n=null,i=null;e.dateFormat.toLowerCase();var a,r=ce(I.getValue(),v.getValue(),"01");if(!(!r||isNaN(r)))return n=j(r),i=parseFloat(O)>n?n:O,t?i.length==1?(a=d.digitPadLeftValue,d.digitPadLeftValue=null,d.setValue(i),d.digitPadLeftValue=a):d.setValue(i):(i=i||1,d.setValue(i)),O=i,r}}s(se,"setMonthEnd");function Te(t){var n=t.key,i=E(o);i&&(n=="Enter"||n==" ")&&l&&l.showing&&(fe(),this.blur());}s(Te,"inputKeyUp");function E(t){return t&&!isNaN(t.getTime())}s(E,"validDate");function _e(t,n){E(o)&&(o.setDate(o.getDate()+1),O=o.getDate(),X(o)),A();}s(_e,"incrementDay");function Fe(t,n){E(o)&&(o.setDate(o.getDate()-1),O=o.getDate(),X(o)),A();}s(Fe,"decrementDay");function Re(t){var n=t?g:o;E(n)&&de(t),A(t);}s(Re,"incrementMonth");function Ue(t){var n=t?g:o;E(n)&&ue(t),A(t);}s(Ue,"decrementMonth");function ue(t){var n=t?g:o,i=j(new Date(n.getFullYear(),n.getMonth()-1,1));n.getDate()>i&&(n.setDate(i),t||(O=i)),n.setMonth(n.getMonth()-1),X(n,t);}s(ue,"setPreviousMonth");function de(t){var n=t?g:o,i=j(new Date(n.getFullYear(),n.getMonth()+1,1));n.getDate()>i&&(n.setDate(i),t||(O=i)),n.setMonth(n.getMonth()+1),X(n,t);}s(de,"setNextMonth");function X(t,n){n?(T.setValue(D(t.getMonth()+1,M("mm"))),_.setValue(t.getFullYear())):(d.setValue(D(t.getDate(),M("dd"))),v.setValue(D(t.getMonth()+1,M("mm"))),I.setValue(t.getFullYear()));}s(X,"setInputs");function A(t){if(!t)U(ce(I.getValue(),v.getValue(),d.getValue()),!0,!1),E(o)&&B();else {var n=T.getValue(),i=_.getValue();!$lib.isEmpty(n)&&!$lib.isEmpty(i)&&(g=new Date(parseFloat(i),parseFloat(n)-1,1),E(g)&&W());}}s(A,"valueChanged");function ce(t,n,i){return $lib.parseDate($lib.format("{0}/{1}/{2}",t,D(n,!0),D(i,!0)),"yyyy/mm/dd")}s(ce,"parseDate");function Ve(){var t=e.id+"_Picker";C=$UI.createComponent(componyx.UI.Button,{id:t,containerElement:e.element}),C.clone($UI.store[e.pickerButtonId],e),C.transparent=!0,C.cssClass=C.cssClass||e.cssClassPicker||h.PICKER,C.hasIcon=!0,C.events.onPostRender.priorityAdd(()=>{e.isReady.apply(e);},null),C.command=function(){Ye();},C.type=componyx.UI.Button.TypeOption.CHECKBUTTON,C.disabled=e.disabled,C.delegateFocusEvents(e),C.showing=!0;}s(Ve,"createPicker");function Le(){var t=e.id+"_Dialog",n=document.createElement("div"),i=document.createElement("div"),u=document.createElement("div");i.id=t+"_Content",l=$UI.createComponent(componyx.UI.Dialog,{id:t,containerElement:e.element}),l.clone($UI.store[e.dialogId],e),l.cssClass=l.cssClass||e.cssClassCalendar||h.CALENDAR,l.autoFit=l.buttons.close=l.buttons.confirm=l.buttons.deny=l.buttons.cancel=!1,l.events.onPostRender.priorityAdd(a,null),l.events.onPostRender.priorityAdd(()=>{e.isReady.apply(e);},null),l.setHeaderTemplate(n),l.setContentTemplate(i),l.setFooterTemplate(u),l.expandDirection=componyx.UI.Box.ExpandDirectionOption.DOWN,V()?(l.expander=e.id,l.autoPosition=componyx.UI.Box.AutoPositionOption.EXPAND,l.autoInvertFit=l.autoFit=!0,l.events.onHideComplete.priorityAdd(function(){C.deselect();},null),l.hideOnOutsideClick=!0):(l.autoPosition=componyx.UI.Box.AutoPositionOption.NONE,l.showing=!0);function a(){r(),y(),$();}s(a,"calendarReady");function r(){var f=c(l.id+"_Prev"),m=document.createElement("span");f.id=l.id+"_Prev",f.cssClass=e.cssClassPrevMonth||h.PREVMONTH,f.command=function(){ke();},f.delegateFocusEvents(e),f=c(l.id+"_Next"),f.id=l.id+"_Next",f.cssClass=e.cssClassNextMonth||h.NEXTMONTH,f.command=function(){Be();},f.delegateFocusEvents(e),m.id=l.id+"_HeaderLabel",m.className=e.cssClassHeaderLabel||h.HEADERLABEL,n.appendChild(m);}s(r,"createHeader");function c(f){var m=$UI.createComponent(componyx.UI.Button,{id:f,containerElement:n});return m.clone(null,e),m.showing=!0,m.hasIcon=!0,m.transparent=!0,m.events.onPostRender.priorityAdd(()=>{e.isReady.apply(e);},null),m}s(c,"createButton");function y(){var f=document.createElement("table"),m=0,x=0,w=null,L=null;for(i.appendChild(f),b(f);m<6;++m)for(L=f.insertRow(-1),e.weekNumbers&&(w=L.insertCell(-1),$lib.addClass(w,e.cssClassWeekNumber||h.WEEKNUMBER)),x=0;x<7;x++)w=L.insertCell(-1);}s(y,"createContent");function b(f){var m=null,x=null,w=0;for(m=f.insertRow(-1),e.weekNumbers&&(x=document.createElement("th"),$lib.addClass(x,e.cssClassWeekNumber||h.WEEKNUMBER),m.appendChild(x));w<7;w++)x=document.createElement("th"),x.innerHTML=e.days[w],$lib.addClass(x,e.cssClassDay||h.DAY),m.appendChild(x);}s(b,"drawHeader");function $(){var f=e.dateFormat.toLowerCase();f.indexOf("m")<f.indexOf("y")?(ee(u,!0),te(u,!0)):(te(u,!0),ee(u,!0));}s($,"createFooter");}s(Le,"createCalendar");function ke(){ue(!0),W();}s(ke,"prevMonth");function Be(){de(!0),W();}s(Be,"nextMonth");function Ye(){l.showing?l.hide():B(!0);}s(Ye,"toggleCalendar");function B(t=!1){if(!l)return;var n=E(g),i=E(o),u=o||Z;if(C&&C.select(),V()||(t=!0),!n||!i||!V())g=new Date(u.getFullYear(),u.getMonth(),1),W(),l.show();else if(g.getMonth()===u.getMonth()&&g.getFullYear()===u.getFullYear()){var a=D(1,e.calendarDayLeadingZero),r=$lib.indexOf(k,function(y){return y.text===a});k[u.getDate()-1+r].select(),l.show();}else g=new Date(u.getFullYear(),u.getMonth(),1),W(),l.show();l.element.querySelectorAll("input, a").forEach(y=>{t?y.setAttribute("tabindex","0"):y.setAttribute("tabindex","-1");});}s(B,"showCalendar");function fe(){l.hide();}s(fe,"hideCalendar");function W(){t(),n(),i();function t(){var u=$lib($lib.format("#{0}_HeaderLabel",l.id)),a=document.createElement("span"),r=document.createElement("span"),c=e.dateFormat.toLowerCase();a.className=e.cssClassMonth||h.MONTH,a.innerHTML=e.months[g.getMonth()],r.className=e.cssClassYear||h.YEAR,r.innerHTML=g.getFullYear(),u.innerHTML="",c.indexOf("m")<c.indexOf("y")?(u.appendChild(a),u.appendChild(r)):(u.appendChild(r),u.appendChild(a));}s(t,"updateHeader");function n(){T.events.onChange.disable(!0),T.events.onChanged.disable(!0),_.events.onChange.disable(!0),_.events.onChanged.disable(!0),T.setValue(D(g.getMonth()+1,M("mm"))),_.setValue(g.getFullYear()),T.events.onChange.enable(!0),T.events.onChanged.enable(!0),_.events.onChange.enable(!0),_.events.onChanged.enable(!0);}s(n,"updateFooter");function i(){var u=$lib($lib.format("#{0}_Content",l.id)),a=0,r=0,c=0,y=new Date(g.getFullYear(),g.getMonth(),1),b=y.getDay()-e.firstDayOfWeek,$=$lib(null,u,"table",!0),f=0;for(b<0&&(b+=7),a=0;a<6;++a){var m=$lib(null,$,"tr")[a+1];if(c=0,m.className="",a==0&&b>0&&y.setDate(y.getDate()-b),e.events.onCalendarWeekRender.fire(e,{row:m,date:new Date(y)}),e.weekNumbers){var x=$lib(null,m,"td")[0];x.innerHTML=$lib.getWeekNumber(y,e.firstDayOfWeek);}for(;b>0;)w(m,y,f++),b--,c++;for(r=c;r<7;r++)w(m,y,f++);}function w(L,P,Y){var H=$lib(null,L,"td")[e.weekNumbers?Y%7+1:Y%7],oe=document.createElement("div"),Ce=P.getFullYear(),De=P.getMonth(),q=P.getDate(),p=null;H.className="",$lib.addClass(H,e.cssClassDay||h.DAY),J(P)==J(Z)&&($lib.addClass(L,e.cssClassCurrentWeek||h.CURRENTWEEK),$lib.addClass(H,e.cssClassToday||h.TODAY)),P.getMonth()!=g.getMonth()&&$lib.addClass(H,e.cssClassInactive||h.INACTIVE),k[Y]?(p=k[Y],p.deselect(),p.command=function(){he(Ce,De,q);},p.text=D(q,e.calendarDayLeadingZero),p.updateContent()):(H.appendChild(oe),k[Y]=p=$UI.createComponent(componyx.UI.Button,{id:$lib.format("{0}_{1}",e.id,Y),containerElement:oe}),p.clone(null,e),p.containerElement=oe,p.renderId=!1,p.transparent=!0,p.text=D(q,e.calendarDayLeadingZero),p.type=componyx.UI.Button.TypeOption.RADIOBUTTON,p.radioGroupId=e.id,p.command=function(){he(Ce,De,q);},p.selected=!1,p.delegateFocusEvents(e),p.show()),me(P)?p.enable():p.disable(),o&&J(P)==J(o)&&p.select(),e.events.onCalendarDayRender.fire(e,{row:L,cell:H,button:p,date:new Date(P)}),P.setDate(P.getDate()+1);}s(w,"drawDay");}s(i,"drawMonth");}s(W,"updateCalendar");function me(t){var n=e.minValue,i=e.maxValue,u=e.allowedDates,a=t.getTime();if(n&&a<n.getTime())return !1;if(i&&a>i.getTime())return !1;if(!$lib.isEmpty(u)){var r=u[$lib.indexOf(u,function(c){return c.length==1?c[0].getTime()===a:a>c[0].getTime()&&a<c[1].getTime()})];if(r&&e.disallowDates||!r&&!e.disallowDates)return !1}return !0}s(me,"isAllowedDate");function J(t){return parseInt(t.getFullYear()+D(t.getMonth(),!0)+D(t.getDate(),!0),10)}s(J,"comparableDate");function he(t,n,i){o=new Date(t,n,i),O=o.getDate(),V()||(g=new Date(t,n,i)),C&&C.focus(),U(o),V()&&l.hide();}s(he,"selectDay");function pe(t){t?(I.events.onChange.enable(!0),I.events.onChanged.enable(!0),v.events.onChange.enable(!0),v.events.onChanged.enable(!0),d.events.onChange.enable(!0),d.events.onChanged.enable(!0)):(I.events.onChange.disable(!0),I.events.onChanged.disable(!0),v.events.onChange.disable(!0),v.events.onChanged.disable(!0),d.events.onChange.disable(!0),d.events.onChanged.disable(!0));}s(pe,"toggleEvents");function j(t){var n=t.getMonth();return n==1?$lib.isLeapYear(t.getFullYear())?29:28:n==3||n==5||n==8||n==10?30:31}s(j,"getDayCount");function He(t){var n=e.value?e.value:e.today?Z:null;n?U(n,t):ge(t);}s(He,"reset");function ge(t){U(null,t);}s(ge,"clear");function Se(){var t=$lib(null,e.element,"input")[0];t.select();}s(Se,"select");function We(){return o}s(We,"getDate");function U(t,n,i){var u=e.minValue,a=e.maxValue,r=F.value,c=e.viewMode<N.CALENDAR;c&&pe(),t?(o=typeof t=="string"?R(t):ie(t),u&&o.getTime()<u.getTime()?o=ie(u):a&&o.getTime()>a.getTime()&&(o=ie(a)),c&&(I.setValue(o.getFullYear()),v.setValue(D(o.getMonth()+1,M("mm"))),d.setValue(D(o.getDate(),M("dd"))))):(o=null,i!=!1&&c&&(I.setValue(""),v.setValue(""),d.setValue(""))),c&&pe(!0),ye(),n!=!1&&r!=F.value&&e.events.onChanged.fire(e,{date:o});}s(U,"setDate");function ie(t){return new Date(t.getFullYear(),t.getMonth(),t.getDate())}s(ie,"createNewDate");function Ke(){return F.value}s(Ke,"getValue");function ye(){var t=e.dateFormat.toLowerCase();if(E(o)){var n=t;n=n.replace("yyyy",o.getFullYear()),n=t.indexOf("mm")>-1?n.replace("mm",D(o.getMonth()+1,!0)):n.replace("m",o.getMonth()+1),n=t.indexOf("dd")>-1?n.replace("dd",D(o.getDate(),!0)):n.replace("d",o.getDate()),F.__setValue(n);}else F.__setValue("");}s(ye,"setValue");function V(){var t=e.viewMode;return t==N.INPUT_CALENDAR_POPUP||t==N.CALENDAR_POPUP}s(V,"isPopup");function Ze(){k=[],C=null,l=null,g=null,o=null,$lib.off(K,"keyup",re);}s(Ze,"dispose");},"DatePicker"),componyx.UI.DatePicker.prototype=Object.create($base.methods),componyx.UI.DatePicker.prototype.constructor=componyx.UI.DatePicker,componyx.UI.DatePicker.FirstDayOfWeekOption={SUNDAY:0,MONDAY:1,SATURDAY:6},componyx.UI.DatePicker.ViewModeOption={INPUT_CALENDAR_POPUP:0,INPUT_CALENDAR_STATIC:1,INPUT:2,CALENDAR:3,CALENDAR_POPUP:4};})(window);
205
+ })(window);
206
+
207
+
208
+ (async function(window){var U=Object.defineProperty;var s=(p,h)=>U(p,"name",{value:h,configurable:!0});(function(p){componyx.UI.Dialog=s(function(v,x){var e=this;$base.static.ThemeOption;this.cssClassBox="",this.cssClassContentHeader="",this.cssClassContentFooter="",this.cssClassContentHolder="",this.cssClassButtonHolder="",this.autoClose=!0,this.confirmOnEnterKey=!0,this.buttons={close:!0,confirm:!0,deny:!0,cancel:!0,confirmText:"OK",denyText:"No",cancelText:"Cancel",closeButtonId:null,confirmButtonId:null,denyButtonId:null,cancelButtonId:null};function E(t){Object.assign(this,t),this.onConfirm=$base.static.createEvent("onConfirm"),this.onDeny=$base.static.createEvent("onDeny"),this.onCancel=$base.static.createEvent("onCancel"),this.onClose=$base.static.createEvent("onClose"),this.onShowComplete=$base.static.createEvent("onShowComplete"),this.onHideComplete=$base.static.createEvent("onHideComplete");}s(E,"DialogEvents"),this.events=new E(this.events),$base.Component.apply(this,[v,x,componyx.UI.Box]),this.setHeaderTemplate=function(t){e.addTemplate("Header",t,!1);},this.setFooterTemplate=function(t){e.addTemplate("Footer",t,!1);},this.setContentTemplate=function(t){e.addTemplate("Content",t,!1);},this.getBox=function(){return $UI.store[e.id+"_Box"]},this.show=function(){$base.methods.show.call(e),B();},this.confirm=function(t,n,r,a,i,o){e.destroy(),e.buttons.cancel=!1,e.buttons.confirmText=i||this.buttons.confirmText,e.buttons.denyText=o||this.buttons.denyText,e.autoClose=e.modal=!0,e.autoPosition=e.autoPosition||componyx.UI.Box.AutoPositionOption.CENTER,t&&(e.events.onConfirm.priorityAdd(t,[e,!0],!0),e.events.onDeny.priorityAdd(t,[e,!1],!0)),n&&e.setHeaderTemplate(n),r&&e.setContentTemplate(r),a&&e.setFooterTemplate(a),e.show();},this.alert=function(t,n,r,a,i){e.destroy(),e.buttons.deny=e.buttons.cancel=!1,e.buttons.confirmText=i||this.buttons.confirmText,e.autoClose=e.modal=!0,e.autoPosition=e.autoPosition||componyx.UI.Box.AutoPositionOption.CENTER,t&&e.events.onConfirm.priorityAdd(t,[e]),n&&e.setHeaderTemplate(n),r&&e.setContentTemplate(r),a&&e.setFooterTemplate(a),e.show();},this.hide=function(){C();},this.render=function(){if(e.renderState!=$base.static.RenderState.RENDERING){$base.methods.render.call(e,T,"dialog");return}e.ajax.load&&e.ajax.load.isDefined()?$():y();},this.postRender=function(){e.renderState!=$base.static.RenderState.RENDERED&&$base.methods.postRender.call(e);},this.destroy=function(...t){var n=$UI.store;n[e.id+"_Box"]&&n[e.id+"_Box"].destroy(),$base.methods.destroy.call(this,...t);};function B(){if(e.showing=!0,e.renderState==$base.static.RenderState.RENDERED){var t=$UI.store[e.id+"_Box"];t.style=e.style,t.top=e.top,t.right=e.right,t.bottom=e.bottom,t.left=e.left,t.width=e.width,t.height=e.height,t.autoPosition=$lib.isEmpty(e.autoPosition)?componyx.UI.Box.AutoPositionOption.CENTER:e.autoPosition,t.expander=e.expander,t.autoFit=e.autoFit,t.autoInvertFit=e.autoInvertFit,t.autoResizeFit=e.autoResizeFit,t.invertMarginHorizontal=e.invertMarginHorizontal,t.invertMarginVertical=e.invertMarginVertical,t.show();}}s(B,"show");function C(){if(e.showing&&(e.showing=!1,e.events.onHide.fire(e),e.renderState==$base.static.RenderState.RENDERED)){var t=$UI.store[e.id+"_Box"];t.showing&&t.hide();}}s(C,"hide");function I(){e.events.onShowComplete.fire(e);}s(I,"showComplete");function g(){e.showing=!1,$base.methods.hide.call(e,!1),e.events.onHideComplete.fire(e);}s(g,"hideComplete");function T(){return ["Dialog",["Box","Button"]]}s(T,"preRender");function $(t,n){e.ajaxCall("load",null,{onSuccess:H});}s($,"load");function H(t){y(t.data);}s(H,"dataLoaded");function y(t){$lib.setStyle(e.element,""),w(t),e.renderChildren();}s(y,"draw");function w(t){var n=$UI.createComponent(componyx.UI.Box,{id:e.id+"_Box"}),r=document.createElement("div"),a=document.createElement("div"),i=document.createElement("div"),o=document.createElement("div"),d=document.createElement("div"),l=document.createElement("div");a.id=e.id+"_Header",a.className=e.cssClassContentHeader||"header",o.className=e.cssClassContentHolder||"content-holder",d.className=e.cssClassContentFooter||"footer",i.id=e.id+"_HButtonHolder",l.id=e.id+"_FButtonHolder",l.className=i.className=e.cssClassButtonHolder||"button-holder",e.applyTemplate(a,"Header"),e.applyTemplate(d,"Footer"),t?o.innerHTML=t:e.applyTemplate(o,"Content"),a.appendChild(i),d.appendChild(l),R(i,l),r.appendChild(o),r.appendChild(d),r.appendChild(a),n.clone(e,e,!1,!1),n.containerElement=e.element,n.element=null,n.renderState=$base.static.RenderState.NONE,n.theme=$base.static.ThemeOption.NONE,n.cssClass=e.cssClassBox||"box dialog-box",n.setContentTemplate(r),n.showing=!1,n.dragSettings.dragHandle=a.id,n.events.onPostRender.priorityAdd(()=>{e.isReady.apply(e);},null),n.events.onHide.priorityAdd(C,null),n.events.onShowComplete.priorityAdd(function(m){I();},null),n.events.onHideComplete.priorityAdd(function(m){g();},null);}s(w,"createBox");function R(t,n){e.buttons.close&&c(e.id+"_Close",e.buttons.closeButtonId,t,u,{cssClass:"close",hasIcon:!0,primary:!0}),e.buttons.confirm&&c(e.id+"_Confirm",e.buttons.confirmButtonId,n,D,{cssClass:"confirm",text:e.buttons.confirmText,primary:!0}),e.buttons.deny&&c(e.id+"_Deny",e.buttons.denyButtonId,n,N,{cssClass:"deny",text:e.buttons.denyText}),e.buttons.cancel&&c(e.id+"_Cancel",e.buttons.cancelButtonId,n,S,{cssClass:"cancel",text:e.buttons.cancelText});}s(R,"createButtons");function c(t,n,r,a,i){let o=$UI.createComponent(componyx.UI.Button,{id:t,containerElement:r});o.clone($UI.store[n],e),o.transparentBorder=o.primary=!!i.primary,o.cssClass=o.cssClass||i.cssClass||"",o.hasIcon||(o.hasIcon=o.transparent=i.hasIcon),o.text=o.text||i.text||"",o.events.onPostRender.priorityAdd(function(d,l,m){var b=l.command;l.command=function(){var f=!0;if(b&&(f=b(l,m)),!$lib.isEmpty(f)&&f==!1)return !1;d();}.bind(e),e.confirmOnEnterKey&&t.indexOf("_Confirm")>-1&&($UI.store[e.id+"_Box"].enterKeySubmitter=l.getCommandButton());}.bind(e,a),null),o.events.onPostRender.priorityAdd(()=>{e.isReady.apply(e);},null),o.showing=!0;}s(c,"createButton");function u(){e.events.onClose.fire(e),e.hide();}s(u,"close");function D(){e.events.onConfirm.fire(e),e.autoClose&&u();}s(D,"confirm");function N(){e.events.onDeny.fire(e),e.autoClose&&u();}s(N,"deny");function S(){e.events.onCancel.fire(e),e.autoClose&&u();}s(S,"cancel");},"Dialog"),componyx.UI.Dialog.prototype=Object.create($base.methods),componyx.UI.Dialog.prototype.constructor=componyx.UI.Dialog;})();
209
+ })();
210
+
211
+
212
+ (async function(window){var ce=Object.defineProperty;var a=(S,O)=>ce(S,"name",{value:O,configurable:!0});(function(S){componyx.UI.FileUpload=a(function(z,H){var n=this,h,C,m,c,u,b,B,d=[],l=[],U=[],y=!1,g=!1,L=["B","KB","MB","GB","TB"],E,f={SELECTBUTTON:"button select",UPLOADBUTTON:"button upload",CANCELBUTTON:"button cancel",DROPZONE:"drop-zone",LIST:"list",NAME:"name",PROGRESSBAR:"progress",STATE:"state",SUCCESS:"success",ERROR:"error",ABORT:"error"};$base.static.ThemeOption;this.cssClassSelectButton="",this.cssClassUploadButton="",this.cssClassCancelButton="",this.cssClassDropzone="",this.cssClassList="",this.cssClassName="",this.cssClassProgressBar="",this.cssClassState="",this.cssClassSuccess="",this.cssClassError="",this.cssClassAbort="",this.accept="",this.maxFileSize=null,this.maxFiles=null,this.preventDuplicates=!1,this.dragAndDrop=!0,this.dropLabel="Drag & Drop files here",this.successLabel="",this.errorLabel="failed",this.abortLabel="aborted",this.selectButtonLabel="Select files",this.selectButtonId="",this.uploadButtonLabel="Upload",this.uploadButtonId="",this.cancelButtonLabel="",this.cancelButtonId="",this.rejectedDialogHeader="Rejected Files",this.rejectedDialogId="",Object.defineProperty(this,"files",{get:a(function(){return l.slice(0)},"get")}),Object.defineProperty(this,"uploading",{get:a(function(){return y},"get")});function G(e){Object.assign(this,e),this.onChange=$base.static.createEvent("onChange"),this.onDragOver=$base.static.createEvent("onDragOver"),this.onDragLeave=$base.static.createEvent("onDragLeave"),this.onDrop=$base.static.createEvent("onDrop"),this.onAccept=$base.static.createEvent("onAccept"),this.onCancel=$base.static.createEvent("onCancel"),this.onPreUploadFile=$base.static.createEvent("onPreUploadFile"),this.onUploadProgress=$base.static.createEvent("onUploadProgress"),this.onPostUploadFile=$base.static.createEvent("onPostUploadFile"),this.onUploadComplete=$base.static.createEvent("onUploadComplete");}a(G,"FileUploadEvents"),this.events=new G(this.events),$base.Component.apply(this,[z,H]),this.ajax.addMethod("upload"),this.upload=function(){x();},this.getValue=function(){return U},this.clear=function(){n.renderState==2&&($lib.each(E,function(e){e.destroy();}),u.innerHTML="",u.style.display="none",b.style.visibility="hidden",b.firstChild.style.width="0%",h.value="",g=!1);},this.cancel=function(e){$lib.each(E,function(t){(!e||t.__file===e)&&t.commandClick();});},this.render=function(){if(n.renderState!=$base.static.RenderState.RENDERING){$base.methods.render.call(n,Z,"file-upload");return}g=!1,k();},this.destroy=function(...e){re(),$base.methods.destroy.call(this,...e);};function Z(){return ["FileUpload",["Button","Dialog"]]}a(Z,"preRender");function k(){var e=document.createElement("span"),t=document.createElement("div");e.innerHTML=n.selectButtonLabel,c=document.createElement("div"),c.className=n.cssClassDropzone||f.DROPZONE,n.dragAndDrop?c.setAttribute("data-drop-text",n.dropLabel):$lib.addClass(c,"disabled"),h=V(),u=document.createElement("div"),u.className=n.cssClassList||f.LIST,u.style.display="none",C=_(n.selectButtonId,c,n.cssClassSelectButton||f.SELECTBUTTON),C.setContentTemplate([e,h]),C.render(),m=_(n.uploadButtonId,t,n.cssClassUploadButton||f.UPLOADBUTTON,n.uploadButtonLabel),m.disabled=!0,m.command=x,m.render(),b=A(t,!0),n.element.appendChild(c),n.element.appendChild(u),n.element.appendChild(t),n.accept&&(B=n.accept.replace(/ /g,"").split(",")),K(),n.renderChildren();}a(k,"draw");function K(){n.dragAndDrop&&($lib.on(c,"ondrop",J),$lib.on(c,"ondragover",q),$lib.on(c,"ondragleave",Q)),$lib.on(h,"onchange",W);}a(K,"bindEvents");function V(){var e=document.createElement("input");return e.type="file",e.multiple=n.maxFiles!=1,e.accept=n.accept,e}a(V,"createFileInput");function _(e,t,s,i,o){var r=n.id+"_"+$lib.guid(),p=$UI.createComponent(componyx.UI.Button,{id:r,containerElement:t});return p.clone($UI.store[e],n),p.cssClass=s,p.showing=!0,p.text=i,o!=!1&&p.events.onPostRender.priorityAdd(function(){n.isReady.apply(n);},null),p}a(_,"createButton");function W(){h.value&&(F(h.files),n.events.onChange.fire(n));}a(W,"change");function q(e){e.preventDefault(),!n.uploading&&($lib.addClass(c,"active"),n.events.onDragOver.fire(n,e));}a(q,"dragOver");function J(e){e.dataTransfer.files&&(e.preventDefault(),$lib.removeClass(c,"active"),!n.uploading&&(F(e.dataTransfer.files),n.events.onDrop.fire(n,e)));}a(J,"drop");function Q(e){c.contains(e.relatedTarget)||n.uploading||($lib.removeClass(c,"active"),n.events.onDragLeave.fire(n,e));}a(Q,"dragLeave");function F(e){let t=X(e);l=l.concat(t.accept),t.reject.length&&ee(t.reject),P(),R(),b.style.visibility="hidden",l.length!=0&&(h.value="",te());}a(F,"filesSelected");function X(e){let t=[],s=[],i,o=l.slice();return $lib.each(e,function(r){if(!$lib.isEmpty(n.maxFiles)&&o.length>=n.maxFiles||n.preventDuplicates&&o.some(p=>N(p,r))){s.push(r);return}if(i=r.size/1024,(!n.maxFileSize||i<=n.maxFileSize)&&Y(r)){const p={cancel:!1,file:r};n.events.onAccept.fire(n,p),p.cancel?s.push(r):(t.push(r),o.push(r));}else s.push(r);}),{accept:t,reject:s}}a(X,"accept");function N(e,t){return e.name===t.name&&e.size===t.size&&e.lastModified===t.lastModified}a(N,"filesMatch");function Y(e){if(!B)return !0;var t=!1,s=e.type.split("/"),i=e.name.substr(e.name.lastIndexOf("."));return $lib.indexOf(B,function(o){return $lib.startsWith(o,".")?t=o?.toLowerCase()==i?.toLowerCase():(o=o.split("/"),t=o[0]?.toLowerCase()==s[0]?.toLowerCase()&&(o[1]=="*"||o[1]?.toLowerCase()==s[1]?.toLowerCase())),t}),t}a(Y,"acceptType");function ee(e){const t=`${n.id}_rejected`,s=$UI.createComponent(componyx.UI.Dialog,{id:t,containerElement:n.element}),i=[];s.clone($UI.store[n.rejectedDialogId],n),e.forEach(o=>{i.push($lib.element({content:`${o.name} (${w(o.size)})`}));}),s.alert(null,n.rejectedDialogHeader,i);}a(ee,"showRejected");function P(){l.length>0?m.enable():m.disable();}a(P,"toggleUploadButton");function R(){l.length>0?u.style.display="":u.style.display="none";}a(R,"toggleList");function te(){var e=document.createElement("ul"),t,s,i,o;u.innerHTML="",u.appendChild(e),E=[],g=!1,$lib.each(l,function(r,p){t=e.appendChild(document.createElement("li")),t.id=n.id+"_"+$lib.guid(),s=t.appendChild(document.createElement("div")),s.className=n.cssClassName||f.NAME;var D=s.appendChild(document.createElement("span"));D.textContent=r.name,D=s.appendChild(document.createElement("span")),D.textContent=w(r.size),A(t),s=t.appendChild(document.createElement("div")),s.className=n.cssClassState||f.STATE,s=t.appendChild(document.createElement("div")),i=document.createElement("i"),i.className="ico-cross",o=_(n.cancelButtonId,s,n.cssClassCancelButton||f.CANCELBUTTON,n.cancelButtonLabel,!1),o.hasIcon=!0,o.transparent=!0,o.cssClassIcon="icon ico-cross",o.command=ne.bind(this,o),o.__file=r,o.__itemId=t.id,o.show(),E.push(o);});}a(te,"drawItemList");function A(e,t){var s=e.appendChild(document.createElement("div"));return s.className=n.cssClassProgressBar||f.PROGRESSBAR,s.style.visibility="hidden",s.appendChild(document.createElement("b")),t&&$lib.addClass(s,"total"),s}a(A,"createProgressBar");function w(e){var t=0;if(e<=0)return e+L[0];for(;$lib.roundNumber(e,2)>=1e3&&t<L.length;)e/=1024,t++;return $lib.roundNumber(e,2)+L[t]}a(w,"printSize");function ne(e){var t=e.__itemId,s=e.__file,i=l.length>0?se(s):-1;d[i]?d[i].abort():($lib.remove($lib("#"+t)),l.length>0&&l.splice(i,1),(!g||u.firstElementChild?.childNodes?.length==0)&&(P(),R())),$||n.events.onCancel.fire(n,{id:t,file:s,fileIndex:i});}a(ne,"cancelFile");function x(){var e;y=!0,m.disable(),C.disable(),$lib.each(l,function(t,s){t&&(e=new FormData,e.append(n.name||t.name,t),n.events.onPreUploadFile.fire(n,{fileIndex:s,formData:e}),d.push(n.ajaxCall("upload",e,{onStart:a(function(i){ae(i,s);},"onStart"),onUploadProgress:a(function(i){ie(i,s);},"onUploadProgress"),onSuccess:a(function(i){oe(i,s);},"onSuccess"),onUploadError:a(function(i){M(i,s);},"onUploadError"),onError:a(function(i){M(i,s);},"onError"),onAbort:a(function(i){le(i,s);},"onAbort")},[s])));});}a(x,"upload");function se(e){return $lib.indexOf(l,function(t){return e==t})}a(se,"getFileIndex");function v(e){return $lib(null,u,"li")[e]}a(v,"getItem");function T(e){return $lib("progress",e,"div",!0).firstChild}a(T,"getProgressBar");function I(e){return $lib("state",e,"div",!0)}a(I,"getStatusLabel");function ae(e,t){var s=v(t);T(s).parentNode.style.visibility="";}a(ae,"start");function ie(e,t){var s=e.event,i=s.lengthComputable?Math.floor(s.loaded/s.total*100):0,o=T(v(t));o.style.width=i+"%",d[t].__progress=i/100,j(),n.events.onUploadProgress.fire(n,{fileIndex:t,xhr:d[t],percentage:i});}a(ie,"progress");function j(e){var t=0;$lib.each(d,function(s){s.__progress&&(t+=s.__progress);}),b.style.visibility="",b.firstChild.style.width=t/d.length*100+"%";}a(j,"setTotalProgress");function oe(e,t){let s=v(t),i=e.data&&typeof e.data=="object"?e.data:{name:l[t].name};T(s).style.width="100%",$lib.addClass(s,h.cssClassSuccess||f.SUCCESS),I(s).innerHTML=n.successLabel,U.push(i),n.events.onPostUploadFile.fire(n,{fileIndex:t,xhr:d[t],file:i}),$(t);}a(oe,"success");function M(e,t){var s=v(t);$lib.addClass(s,h.cssClassError||f.ERROR),I(s).innerHTML=n.errorLabel,$(t);}a(M,"error");function le(e,t){var s=v(t);$lib.addClass(s,h.cssClassAbort||f.ABORT),I(s).innerHTML=n.abortLabel,$(t);}a(le,"abort");function $(e){d[e].__ready=!0,d[e].__progress=1,j(),$lib.indexOf(d,function(t){return !t.__ready})==-1&&(n.events.onUploadComplete.fire(n),y=!1,l=[],d=[],g=!0,C.enable(),m.disable());}a($,"complete");function re(){U=[],l=[],d=[];}a(re,"dispose");},"FileUpload"),componyx.UI.FileUpload.prototype=Object.create($base.methods),componyx.UI.FileUpload.prototype.constructor=componyx.UI.FileUpload;})();
213
+ })();
214
+
215
+
216
+ (async function(window){var F=Object.defineProperty;var a=(f,d)=>F(f,"name",{value:d,configurable:!0});(function(f){componyx.UI.FormField=function(d,I){let e=this,E='input:not([type="hidden"]):not([type="file"]), textarea, select',i=componyx.UI.FormField.LabelDisplayOption,c,r={INLINE:"inline",REQUIRED:"required",BORDERLESS:"borderless",TRANSPARENT:"lucent",SWITCH:"switch",TOOLTIP_ICON:"icon ico-question-mark",CONTENT_WRAPPER:"field-content-wrapper",DISABLED:"disabled"};this.cssClassInline="",this.cssClassRequired="",this.cssClassBorderless="",this.cssClassTransparent="",this.cssClassSwitch="",this.cssClassLabel="",this.cssClassTooltipIcon="",this.cssClassContentWrapper="",this.label="",this.inline=!1,this.required=!1,this.borderless=!0,this.transparent=!1,this.switch=!1,this.wrapFieldContent=!1,this.disabled=!1,this.labelDisplay=i.AUTO,this.tooltipManagerId=null,this.tooltipId=null,$base.Component.apply(this,[d,I]),this.setInline=function(t){o(t,e.cssClassInline||r.INLINE),e.inline=t||!1;},this.setRequired=function(t){o(t,e.cssClassRequired||r.REQUIRED),e.required=t||!1;},this.setBorderless=function(t){o(t,e.cssClassBorderless||r.BORDERLESS),e.borderless=t||!1;},this.setTransparent=function(t){o(t,e.cssClassTransparent||r.TRANSPARENT),e.transparent=t||!1;},this.setSwitch=function(t){o(t,e.cssClassSwitch||r.SWITCH),e.switch=t||!1;},this.setLabelDisplay=function(t){var s=e.element.firstElementChild;if($lib.removeClass(e.element,"inside above before after"),t==i.AUTO){var l=s?s.nodeName.toLowerCase():"";if(!h(s)||l=="input"&&" checkbox radio text password email search url tel ".indexOf(" "+s.type+" ")==-1){$lib.addClass(e.element,i.getName(i.ABOVE));return}l=="input"&&(s.type=="checkbox"||s.type=="radio")?$lib.addClass(e.element,i.getName(i.AFTER)):C(i.FLOATING);}else t<=i.INSIDE?C(t):$lib.addClass(e.element,i.getName(t));},this.setLabelTemplate=function(t){e.addTemplate("Label",t,!1);},this.setFieldTemplate=function(t){e.addTemplate("Field",t,!1);},this.updateLabel=function(t){let s=e.element.querySelector(":scope > label"),l=e.element.querySelector(":scope > b");s&&(s.innerHTML="",e.addTemplate("Label",t,!1),e.applyTemplate(s,"Label"),l&&(l.setAttribute("title",s.textContent),m(l)),e.updateTooltip());},this.linkLabelToInput=function(){const t=`${e.id}_${$lib.guid()}`,s=e.element.querySelector(":scope > label"),l=u();if(s&&l){l.id||(l.id=t),s.htmlFor=l.id,l.hasAttribute("placeholder")||l.setAttribute("placeholder","");const n=new MutationObserver(()=>{l.id&&(s.htmlFor=l.id,n.disconnect());});n.observe(l,{attributes:!0,attributeFilter:["id"]});}},this.updateTooltip=function(){if(e.tooltipManagerId){const t=$UI.store[e.tooltipManagerId];c&&(t.removeTrigger(c),c.remove()),e.tooltipId&&(c=$lib.element({container:e.element.querySelector(":scope > label"),tag:"i",attrs:{class:e.cssClassTooltipIcon||r.TOOLTIP_ICON}}),t.addTrigger(c,e.tooltipId));}},this.disable=function(){e.element.inert=!0,e.disabled=!0,o(!0,r.DISABLED);},this.enable=function(){e.element.inert=!1,e.disabled=!1,o(!1,r.DISABLED);},this.render=function(){if(e.renderState!=$base.static.RenderState.RENDERING){$base.methods.render.call(e,T,"form-field");return}y();},this.postRender=function(){e.renderState==$base.static.RenderState.RENDERING&&(e.updateTooltip(),$base.methods.postRender.call(e));};function T(){return ["FormField"]}a(T,"preRender");function y(){let t=document.createElement("label"),s=e.element;e.cssClassLabel&&$lib.addClass(t,e.cssClassLabel),e.applyTemplate(s,"Field"),e.hasTemplate("Label")?e.applyTemplate(t,"Label"):e.label&&(t.textContent=e.label);let l=s.firstElementChild,n=h(l);if(n&&N(l)){let p=s.appendChild(document.createElement("b"));p.setAttribute("title",t.textContent),m(p);}if(e.setInline(e.inline),e.setRequired(e.required),e.setBorderless(e.borderless),e.setTransparent(e.transparent),e.setSwitch(e.switch),e.setLabelDisplay(e.labelDisplay),e.element.inert=!1,e.disabled&&e.disable(),e.wrapFieldContent||!n&&($lib.hasClass(e.element,"above")||$lib.hasClass(e.element,"floating")||$lib.hasClass(e.element,"inside"))){let p=L(),R=$lib.element({container:e.element,attrs:{class:e.cssClassContentWrapper||r.CONTENT_WRAPPER}});$lib.surround(R,p);}s.appendChild(t),e.linkLabelToInput(),e.postRender();}a(y,"draw");function L(){for(var t=document.createDocumentFragment(),s=e.element.firstChild,l;s;)l=s.nextSibling,t.appendChild(s),s=l;return t}a(L,"getFieldContent");function m(t){$lib.has(t,"click",b)||$lib.on(t,"click",b);}a(m,"bindLabelEvent");function b(t){var s=u();s&&(t.stopPropagation(),s.focus(),s.click?s.click():$lib.fireEvent(s,"click",!0,!0));}a(b,"pretendLabelClick");function h(t){if(!t||!t.nodeName)return !1;const s=t.nodeName.toLowerCase();return s==="input"?(t.getAttribute("type")||"").toLowerCase()!=="hidden":s==="textarea"||s==="select"}a(h,"isFormElement");function u(){const t=Array.from(e.element.querySelectorAll(E)),s=".form-field";return t.find(l=>{let n=l.closest(s);if(!n)return !1;for(;n;){if(n===e.element)return !0;if($UI.elementStore.has(n))return !1;n=n.parentElement?.closest(s);}return !1})||null}a(u,"getFormElement");function N(t){return t.nodeName.toLowerCase()==="input"&&(t.type=="checkbox"||t.type=="radio")}a(N,"isCheckOrRadio");function C(t){let s=u(),l="placeholder";s&&(s.hasAttribute(l)||s.setAttribute(l,""),s.getAttribute(l)===""&&(s.nodeName==="TEXTAREA"||s.nodeName==="INPUT")?$lib.addClass(e.element,i.getName(t).replace("_"," ")):$lib.addClass(e.element,i.getName(i.ABOVE)));}a(C,"setInsideDisplay");function o(t,s){t?$lib.addClass(e.element,s):$lib.removeClass(e.element,s);}a(o,"setCss");},componyx.UI.FormField.prototype=Object.create($base.methods),componyx.UI.FormField.prototype.constructor=componyx.UI.FormField,componyx.UI.FormField.LabelDisplayOption={AUTO:0,FLOATING:1,INSIDE:2,ABOVE:3,BEFORE:4,AFTER:5,getName:a(function(d){return $base.static.getKeyByValue(this,d).toLowerCase()},"getName")};})();
217
+ })();
218
+
219
+
220
+ (async function(window){var Ri=Object.defineProperty;var o=(M,Q)=>Ri(M,"name",{value:Q,configurable:!0});(function(M){componyx.UI.Grid=o(function(J,Et){var t=this,me,Re=!0,he=[];$base.static.ThemeOption;var z=componyx.UI.Grid.RowSelectionOption,Ne=componyx.UI.Grid.RowExpansionOption,Le=componyx.UI.Grid.GroupExpansionOption,De=componyx.UI.Grid.ColumnSortingOption,Ce=componyx.UI.Grid.SortOrderOption,v=componyx.UI.Grid.FilterInputTypeOption,C=componyx.UI.Grid.FilterMenuOptions,It=C.EQUALTO+C.NOTEQUALTO+C.GREATERTHAN+C.GREATERTHANOREQUALTO+C.LESSTHAN+C.LESSTHANOREQUALTO+C.EMPTY+C.NOTEMPTY,$t=C.EQUALTO+C.NOTEQUALTO+C.STARTSWITH+C.NOTSTARTSWITH+C.ENDSWITH+C.NOTENDSWITH+C.CONTAINS+C.NOTCONTAINS+C.EMPTY+C.NOTEMPTY,j,le={},F={},be={},_e=[],Z={},ne=[],Y,Ke=0,Ge,Ae,R,Ee,Pe,se=[],k,U,b,O,Ve,y,Qe,w,B,K,oe,Ie,g={header:null,filter:null,content:null,columnIndex:null,columnStartWidth:null,totalWidth:null,columnDistribution:null},L,$e,ae=!1,Te,Tt=o(function(e,i){var l=L[e].items,n=r.EXPANDED,s=t.cssClassGroupHead||r.GROUP_HEAD,a=D(e),d=$lib(s,a,"td",!0);d&&(i==null?$lib.toggleClass(d,n):i==""?$lib.addClass(d,n):$lib.removeClass(d,n),$lib.hasClass(d,n)?t.events.onItemGroupExpand.fire(t,X(_(e),a,d)):t.events.onItemGroupCollapse.fire(t,X(_(e),a,d)));for(var f=0;f<l.length;++f)a=D(l[f].id),i==null?a.style.display=a.style.display=="none"?"":"none":a.style.display=i,l[f].isGroup&&a.style.display=="none"&&displayRows(l[f].id,"none");},"_displayRows"),r={HEADER:"header",CONTENT:"content",DATA_PAGER:"data-pager",RESIZABLE:"resizable",DRAGGABLE:"draggable",SELECTABLE:"selectable",DRAG:"drag",SCROLLABLE_X:"scrollable-x",SCROLLABLE_Y:"scrollable-y",TEXTBOX:"textbox",FILTERROW:"filter",FILTER_BUTTON:"button filter",FILTERMENU:"menu filter",FILTERRANGE:"range",FILTER_FROM:"filter-from",FILTER_TO:"filter-to",SORTASC:"asc",SORTDESC:"desc",HEADER_LABEL:"header-label",RESIZE_HANDLE:"resize-handle",COLUMN_SORTING:"column-sorting",DRAG_GHOST:"drag-ghost",DROPPABLE:"droppable",LEFT:"left",RIGHT:"right",TOP:"top",BOTTOM:"bottom",PRELOADER:"preloader",NORESULT:"noresult",CHECKBOX:"checkbox",EXPAND:"expand",EXPAND_ICON:"expand-icon",EXPANDED:"expanded",SELECTED:"selected",COLUMN_GROUP:"column-group",COLUMN:"column",FIXED_COLUMN:"fixed-column",HIDDEN_COLUMN:"hidden-column",ITEM:"",GROUP_ITEM:"group-item",GROUP_HEAD:"group-head"};this.cssClassHeader="",this.cssClassContent="",this.cssClassDataPager="",this.cssClassFilterButton="",this.cssClassFilterMenu="",this.cssClassFilterFrom="",this.cssClassFilterTo="",this.cssClassHeaderLabel="",this.cssClassResizeHandle="",this.cssClassDragGhost="",this.cssClassPreloader="",this.cssClassNoResult="",this.cssClassCheckBox="",this.cssClassExpand="",this.cssClassExpandIcon="",this.cssClassItem="",this.cssClassGroupItem="",this.cssClassGroupHead="",this.cssClassFixedColumn="",this.cssClassHiddenColumn="",this.itemTemplateId=null,this.groupIndent=10,this.fixedColumns=0,this.fixedColumnScrollUpdate=100,this.viewportBottomOffset=0,this.contentHeight="",this.contentStyle="",this.draggableHeaders=!0,this.resizableHeaders=!0,this.draggableItems=!1,this.preserveTotalWidth=!1,this.enableDataPager=!1,this.enableTooltipManager=!0,this.enableFilterRow=!0,this.enableExpandColumn=!0,this.clearSelectionOnOutsideClick=!1,this.useViewportHeight=!1,this.columnSorting=De.NONE,this.rowSelection=z.NONE,this.rowExpansion=Ne.NONE,this.groupExpansion=Le.ICON,this.filterMenuLabels={},this.filterBetweenLabels=[],this.itemList=null,this.columnGroups=[],this.columns=[],this.filterMenuId=null,this.dataPagerId=null,this.tooltipManagerId=null,this.headerDragSettings={},this.itemDragSettings={},this.headerResizeSettings={},this.selectSettings={};function gt(e){Object.assign(this,e),this.onItemClick=$base.static.createEvent("onItemClick"),this.onItemSelect=$base.static.createEvent("onItemSelect"),this.onItemDeselect=$base.static.createEvent("onItemDeselect"),this.onItemExpand=$base.static.createEvent("onItemExpand"),this.onItemCollapse=$base.static.createEvent("onItemCollapse"),this.onItemGroupExpand=$base.static.createEvent("onItemGroupExpand"),this.onItemGroupCollapse=$base.static.createEvent("onItemGroupCollapse"),this.onPreRenderItem=$base.static.createEvent("onPreRenderItem"),this.onPostRenderItem=$base.static.createEvent("onPostRenderItem"),this.onPreLoadItemList=$base.static.createEvent("onPreLoadItemList"),this.onPostLoadItemList=$base.static.createEvent("onPostLoadItemList"),this.onPostRenderItemList=$base.static.createEvent("onPostRenderItemList"),this.onPreLoadItem=$base.static.createEvent("onPreLoadItem"),this.onPostLoadItem=$base.static.createEvent("onPostLoadItem"),this.onColumnOrderChange=$base.static.createEvent("onColumnOrderChange"),this.onColumnResize=$base.static.createEvent("onColumnResize"),this.onColumnSort=$base.static.createEvent("onColumnSort"),this.onItemOrderChange=$base.static.createEvent("onItemOrderChange");}o(gt,"GridEvents"),this.events=new gt(this.events),$base.Component.apply(this,[J,Et]),this.ajax.addMethod("loadItem"),this.setPreloaderTemplate=function(e){t.addTemplate("Preloader",e,!1);},this.setItemPreloaderTemplate=function(e){t.addTemplate("ItemPreloader",e,!1);},this.setNoResultTemplate=function(e){t.addTemplate("NoResult",e,!1);},this.toggleSelectItem=function(e){ae=!0,Me(e);},this.selectItems=function(e){for(var i=0;i<e.length;++i)t.selectItem(e[i]);},this.deselectItems=function(e){for(var i=0;i<e.length;++i)de(e[i]);},this.selectItem=function(e){ae=!0,re(e);},this.deselectItem=function(e){de(e);},this.toggleExpandItem=function(e){ht(e);},this.expandItem=function(e){ve(e);},this.collapseItem=function(e){Oe(e);},this.toggleExpandItemGroup=function(e){pe(e,null);},this.expandItemGroup=function(e){pe(e,!0);},this.collapseItemGroup=function(e){pe(e,!1);},this.enableItem=function(e){Oi(e);},this.disableItem=function(e){Ct(e);},this.getColumnGroupIndex=function(e){return I(t.columnGroups,e)},this.getColumnGroup=function(e){return t.columnGroups[I(t.columnGroups,e)]},this.removeColumnGroup=function(e){t.columnGroups.splice(I(t.columnGroups,e),1);},this.getColumnIndex=function(e){return I(t.columns,e)},this.getColumn=function(e){return t.columns[I(t.columns,e)]},this.removeColumn=function(e){t.columns.splice(I(t.columns,e),1);},this.showColumnGroup=function(e){Xe(e,!0);},this.hideColumnGroup=function(e){Xe(e,!1);},this.showColumn=function(e){We(e,!0);},this.hideColumn=function(e){We(e,!1);},this.selectable=function(){return y},this.cancelSelectClick=function(){$e=!0,y&&y.disable();},this.filter=function(e,i,l){for(var n in e)at(n,e[n].value,e[n].type),t.enableFilterRow&&e[n].updateInput!=!1&&(oi(n,e[n].value),j.selectItem(n));i!=!1&&q(l);},this.sort=function(e,i,l){for(var n in e)rt(n,e[n]);i!=!1&&q(l);},this.load=function(e,i){e&&Fe(),q(i);},this.getItem=function(e){return t.itemList[I(t.itemList,e)]},this.removeItem=function(e){mt(e);},this.renderItem=function(e){var i=b.firstChild;B!=null&&(B.style.display="none"),w!=null&&(w.style.display="none"),i.style.display="",et(i,e,I(t.itemList,e.id)),y&&y.update();},this.render=async function(){if(t.renderState!=$base.static.RenderState.RENDERING){$base.methods.render.call(t,yt,"grid");return}t.enableFilterRow&&componyx.UI.menu_modules&&await componyx.UI.menu_modules.loaded,St();},this.postRender=function(){t.renderState==$base.static.RenderState.RENDERING&&vt();},this.destroy=function(...e){xi(),$base.methods.destroy.call(this,...e);};function yt(){var e=t.cssClassFixedColumn||r.FIXED_COLUMN,i=[],l="componyx.UI.Grid.global";if(t.enableDataPager&&i.push("DataPager"),i.push("Box"),i.push("TooltipManager"),i.push("Button"),t.fixedColumns>0&&(Y=$lib.getStyleSheet(l),Y||($lib.addCssTag($lib.format("#{0} .{1} { }",t.id,e),l),Y=$lib.getStyleSheet(l))),t.enableFilterRow){var n=o(function(s){return function(a){return !a.disableFilter&&!a.filterTemplate&&a.filterInputType===s}},"comparer");i.push("Menu"),$lib.indexOf(t.columns,n(v.NUMERICBOX))>-1&&i.push("NumericBox"),$lib.indexOf(t.columns,n(v.COMBOBOX))>-1&&i.push("ComboBox"),$lib.indexOf(t.columns,n(v.DATEPICKER))>-1&&i.push("DatePicker"),$lib.indexOf(t.columns,n(v.TIMEPICKER))>-1&&i.push("TimePicker"),$lib.indexOf(t.columns,n(v.SLIDER))>-1&&i.push("Slider");}return ["Grid",i]}o(yt,"preRender");function vt(){$base.methods.postRender.call(t)&&q();}o(vt,"postRender");function q(e){let i={sortOrder:F,filter:le,pageIndex:e||1};t.events.onPreLoadItemList.fire(t,i),oe=null,K=null,Pe=!0,R&&R.hide(),t.ajax.load&&t.ajax.load.isDefined()?(qt(),se[0]&&se[0].abort(),se[0]=t.ajaxCall("load",M.JSON.stringify(i),{onSuccess:o(function(l){Je(e||-1,l);},"onSuccess")})):Je();}o(q,"load");function Je(e,i){var l=null;Pe=!1,i?(t.itemList=[],i.data&&(l=typeof i.data=="string"?M.JSON.parse(i.data):i.data,t.itemList=l?l.itemList||[]:[])):t.itemList&&(t.itemList=typeof t.itemList=="string"?M.JSON.parse(t.itemList):t.itemList||[]),t.itemList||(t.itemList=[]),Ot(l,e),t.events.onPostLoadItemList.fire(t,i),t.itemList.length>0?Zt():ti(),Be(),t.events.onPostRenderItemList.fire(t,i);}o(Je,"dataLoaded");function Ot(e,i){R&&e&&e.totalItemCount&&e.totalItemCount>e.itemList.length?(R.itemCount=e.totalItemCount,i==-1?R.setPageIndex(1):R.setPageIndex(i),R.show()):R&&R.hide();}o(Ot,"setupPager");function St(){Ve=$lib.getScrollBarSize(),t.enableTooltipManager&&Rt(),Nt(),Xt(),Qe=t.createSyncedInput(),t.enableDataPager&&Wt(),$lib.on(M,"resize",Be),he.push($lib.on(document,"click",function(){y&&$e&&y.enable(),$e=!1;})),xt(),t.renderChildren();}o(St,"draw");function xt(){t.clearSelectionOnOutsideClick&&(me=$lib.on(t.element,"pointerdown",function(){Re=!1;},null,t),he.push($lib.on(document,"pointerup",function(e){Re&&Fe(),Re=!0;},null,t)));}o(xt,"bindOutsideClickHandler");function Rt(){var e=t.id+"_TooltipManager";if(O=$UI.createComponent(componyx.UI.TooltipManager,{id:e,containerElement:t.element}),O.clone($UI.store[t.tooltipManagerId],t,!0,!0,{triggers:""}),!O.boxId){var i=$UI.createComponent(componyx.UI.Box,{id:e+"_TempBox",containerElement:t.element});i.expandDirection=componyx.UI.Box.ExpandDirectionOption.DOWN,i.autoPosition=componyx.UI.Box.AutoPositionOption.EXPAND,i.alignX=componyx.UI.Box.AlignXOption.CENTER,i.autoInvertFit=!0,O.boxId=i.id;}O.showing=!0,O.events.onPostRender.priorityAdd(function(){t.isReady.apply(t);},null);}o(Rt,"createTooltipManager");function Nt(){var e=t.element.appendChild(document.createElement("div")),i=e.appendChild(document.createElement("div")).appendChild(document.createElement("table")),l=tt(e.firstChild),n=i.appendChild(document.createElement("colgroup"));i.appendChild(document.createElement("tbody"));var a=t.cssClassCheckBox||r.CHECKBOX,d=t.cssClassExpand||r.EXPAND,f=t.cssClassHiddenColumn||r.HIDDEN_COLUMN,p=t.cssClassFixedColumn||r.FIXED_COLUMN,c,u,T,S,G={},x=0,h,H=[],W,V,P,A,N,E;for(be={},Ee=Ze(),P=Ee[0],e.className=t.cssClassHeader||r.HEADER,k=e,t.resizableHeaders&&$lib.addClass(e,r.RESIZABLE),t.draggableHeaders&&$lib.addClass(e,r.DRAGGABLE),h=0;h<P;++h)H.push(i.insertRow(-1));for(h=ee()?-1:0;h<t.columns.length;++h){A=null,u=t.columns[h]||null,x=h>-1?Ee[1][u.id]-1:0,W=t.fixedColumns>0&&h<t.fixedColumns,c=document.createElement("th"),c.rowSpan=P-x,N=c.appendChild(document.createElement("div")).appendChild(document.createElement("span")),N.className=t.cssClassHeaderLabel||r.HEADER_LABEL;var te=n.appendChild(document.createElement("col"));if(H[x].appendChild(c),h==-1){$lib.addClass(c,d),$lib.addClass(te,d),W&&$lib.addClass(c,p);continue}if(T=u.columnGroupId,c.id=t.id+"_h_"+u.id,c.setAttribute("tabindex","0"),E=u.headerTooltipTemplate?u.headerTooltipTemplate:t.getTemplateContent("HeaderTooltip_"+u.id),u.headerText=$lib.isEmpty(u.headerText)?"":u.headerText,u.visible==!1&&($lib.addClass(te,f),$lib.addClass(c,f)),W&&$lib.addClass(c,p),E&&(u.headerTooltipTemplate=E,O&&(O.addTooltip(u.id,E),O.addTrigger(c.id,u.id))),u.columnTemplate&&t.addTemplate("Column_"+u.id,u.columnTemplate),u.filterTemplate&&t.addTemplate("Filter_"+u.id,u.filterTemplate),$lib.addClass(c,u.cssClassHeader||r.COLUMN),u.style&&$lib.updateStyle(c.style,u.style),u.cssClassHeader&&$lib.addClass(te,u.cssClassHeader),$lib.isEmpty(u.width)||(te.style.width=$lib.unit(u.width)),u.checkBox?($lib.addClass(c,a),$lib.addClass(te,a),t.rowSelection==z.MULTI&&(A=N.appendChild(document.createElement("span")),A.className=a,$lib.isEmpty(u.headerText)||N.appendChild(document.createTextNode(u.headerText)),$lib.on(A,"click",ai,[A]))):(N.innerHTML=u.headerText,t.resizableHeaders&&u.resizable!=!1&&(V=c.firstChild.appendChild(document.createElement("span")),V.className=t.cssClassResizeHandle||r.RESIZE_HANDLE)),!$lib.isEmpty(T))for(;!$lib.isEmpty(T);)S=t.columnGroups[I(t.columnGroups,T)],G[T]?G[T].colSpan++:(c=document.createElement("th"),c.colSpan=1,G[T]=c,N=c.appendChild(document.createElement("div")).appendChild(document.createElement("span")),N.innerHTML=S.headerText,$lib.addClass(c,S.cssClass||r.COLUMN_GROUP),W&&$lib.addClass(c,p),S.style&&$lib.updateStyle(c.style,S.style),H[--x].appendChild(c)),T=S.parentId;}for(Lt(i),h=0;h<t.columns.length;++h)u=t.columns[h],Dt(ce(u.id),u,l);for(h=0;h<t.columnGroups.length;++h)S.visible==!1&&Xe(t.columnGroups[h].id,!1);t.enableFilterRow&&Gt(e);function Ze(){for(var ie,xe,fe,ue=[0,{}],Ye=0;Ye<t.columns.length;++Ye){for(fe=t.columns[Ye],xe=fe.columnGroupId,ie=1,ue[1][fe.id]=ie;!$lib.isEmpty(xe);)++ie,ie>ue[1][fe.id]&&(ue[1][fe.id]=ie),xe=t.columnGroups[I(t.columnGroups,xe)].parentId;ie>ue[0]&&(ue[0]=ie);}return ue}o(Ze,"getDepthLevels");}o(Nt,"createHeader");function Lt(e){for(var i=$lib(null,e,"tr",!0),l,n;i&&!l;)n=i.firstChild,$lib.addClass(n,"first"),l=n.rowSpan>1,i=i.nextSibling;}o(Lt,"setHeaderFirstChildClass");function Dt(e,i,l){if(!(i.checkBox||i.expand)){var n=$lib(t.cssClassResizeHandle||r.RESIZE_HANDLE,e,"span",!0),s=$lib(t.cssClassHeaderLabel||r.HEADER_LABEL,e,"span",!0),a=!i.disableSorting&&t.columnSorting!=De.NONE;t.resizableHeaders&&n&&$lib.resizable(e,$base.static.initResizeSettings({resizeHandles:{e:n},defaultHandles:!1,onResizeStart:fi,onResize:o(function(d){$lib.defer(hi.bind(t,d));},"onResize"),onResizeEnd:mi},t.headerResizeSettings)),a&&(s.classList.add(r.COLUMN_SORTING),$lib.on(s,"click",ri,[i.id,null])),t.draggableHeaders&&($lib.on(s,"pointerdown",je,i.id),n&&$lib.on(n,"pointerdown",je,i.id),$lib.has(document,"pointerup",Ue)||$lib.on(document,"pointerup",Ue),be[i.id]=$lib.draggable(e,$base.static.initDragSettings({dragGhost:l,autoGhostSize:!0,minDragX:1,dragY:!1,dropAcceptMode:2,droppableClass:t.headerDragSettings.droppableClass||r.DROPPABLE,dropZones:_t(i),onDragStart:di,onDroppable:o(function(d){$lib.defer(ci.bind(t,d));},"onDroppable"),onDroppableLeave:ui,onDrop:pi},t.headerDragSettings)));}}o(Dt,"bindHeaderEvents");function je(e){be[e].disable();}o(je,"disableDrag");function Ue(){ne.push(setTimeout(function(){$lib.each(be,function(e){e.disabled&&e.enable();});},0));}o(Ue,"enableDrag");function _t(e){var i,l,n=[];for(i=0;i<t.columns.length;++i)l=t.columns[i],l.id!=e.id&&l.columnGroupId==e.columnGroupId&&n.push(ce(l.id));return n}o(_t,"getHeaderDropZones");function we(e){if(!Te)return Ie=$lib(null,b,"tr");var i=[];return $lib.each(t.itemList,function(l){l.parentId===e.parentId&&i.push(D(l.id));}),i}o(we,"getItemDropZones");function Gt(e){var i=e.appendChild(document.createElement("div")).appendChild(document.createElement("table")),l=i.appendChild(document.createElement("colgroup"));i.appendChild(document.createElement("tbody"));var s=t.cssClassCheckBox||r.CHECKBOX,a=t.cssClassExpand||r.EXPAND,d=t.cssClassHiddenColumn||r.HIDDEN_COLUMN,f=t.cssClassFixedColumn||r.FIXED_COLUMN,p=i.insertRow(-1),m,c,u,T,S,G;U=i.parentNode,i.className=t.cssClassFilterRow||r.FILTERROW,$lib.on(U,"keydown",At,null,t);for(var x=ee()?-1:0;x<t.columns.length;++x){if(G=t.fixedColumns>0&&x<t.fixedColumns,c=t.columns[x]||null,m=p.appendChild(document.createElement("td")),m.appendChild(document.createElement("div")),S=m.firstChild.appendChild(document.createElement("div")),T=l.appendChild(document.createElement("col")),x==-1){$lib.addClass(m,a),$lib.addClass(T,a),G&&$lib.addClass(m,f);continue}if(u=$lib.format("{0}_FilterInput_{1}",t.id,c.id),$lib.addClass(m,c.cssClassHeader||r.COLUMN),G&&$lib.addClass(m,f),c.visible==!1&&($lib.addClass(T,d),$lib.addClass(m,d)),c.cssClassHeader&&$lib.addClass(T,c.cssClassHeader),$lib.isEmpty(c.width)||(T.style.width=$lib.unit(c.width)),c.checkBox)$lib.addClass(m,s),$lib.addClass(T,s);else if(!c.disableFilter){var h=c.filterMenuOptions,H=h&C.BETWEEN||h&C.NOTBETWEEN,W=h==C.BETWEEN+C.NOTBETWEEN||h==C.BETWEEN||h==C.NOTBETWEEN,V=c.filterInputType===v.SLIDER,P;if(h||(h=qe(c)),H&&(P=$lib.element(m.firstChild,"","",null,{class:r.FILTERRANGE})),t.hasTemplate("Filter_"+c.id)||t.hasTemplate("RangeFilter_"+c.id))W||t.applyTemplate(S,"Filter_"+c.id),H&&t.applyTemplate(P,"RangeFilter_"+c.id);else {if(H&&!V){var A=$lib.element(P,"","label");A.className=t.cssClassFilterFrom||r.FILTER_FROM,A.innerHTML=t.filterBetweenLabels[0]||"<b>From</b>";var N=$lib.element(P,"","label");N.className=t.cssClassFilterTo||r.FILTER_TO,N.innerHTML=t.filterBetweenLabels[1]||"<b>To</b>";}if(V)$lib.remove(P),Mt(c,u,h,S);else {var E;c.filterInputType?c.filterInputType==v.NUMERICBOX?E=Ut:c.filterInputType==v.COMBOBOX?E=wt:c.filterInputType==v.DATEPICKER?E=Bt:c.filterInputType==v.TIMEPICKER&&(E=Ht):E=Pt,W||E(c,u,h,S),H&&(E(c,u+"_From",h,A),E(c,u+"_To",h,N));}}Ft(c,h,m.firstChild);}}}o(Gt,"createFilterRow");function At(e){if(e.key!=="Enter")return;let i=t.id+"_FilterInput_",l=null,n=e.target;for(;n;)n.id&&n.id.indexOf(i)===0&&(l=n),n=n.parentElement;if(!l)return;let s=l.id.replace(/_From$|_To$/,"");e.preventDefault(),ot(s.replace(i,""));}o(At,"filterKeydown");function qe(e){switch(e.filterInputType){case v.NUMERICBOX:case v.DATEPICKER:case v.TIMEPICKER:case v.SLIDER:return It;case v.COMBOBOX:case v.TEXTBOX:return $t}}o(qe,"getDefaultOptions");function Pt(e,i,l,n){var s=n.appendChild(document.createElement("input"));s.id=i,s.type="text",s.className=t.cssClassTextBox||r.TEXTBOX;}o(Pt,"createTextBox");function Ut(e,i,l,n){var s=$UI.createComponent(componyx.UI.NumericBox,{id:i,containerElement:n});s.clone($UI.store[e.filterInputId],t),s.events.onPostRender.priorityAdd(function(){t.isReady.apply(t);},null,!0),s.showing=!0;}o(Ut,"createNumericBox");function wt(e,i,l,n){var s=$UI.createComponent(componyx.UI.ComboBox,{id:i,containerElement:n}),a=l&C.IN||l&C.NOTIN;s.clone($UI.store[e.filterInputId],t),s.multiSelect=a,s.events.onPostRender.priorityAdd(function(){t.isReady.apply(t);},null,!0),s.showing=!0;}o(wt,"createComboBox");function Bt(e,i,l,n){var s=$UI.createComponent(componyx.UI.DatePicker,{id:i,containerElement:n});s.clone($UI.store[e.filterInputId],t),s.events.onPostRender.priorityAdd(function(){t.isReady.apply(t);},null,!0),s.showing=!0;}o(Bt,"createDatePicker");function Ht(e,i,l,n){var s=$UI.createComponent(componyx.UI.TimePicker,{id:i,containerElement:n});s.clone($UI.store[e.filterInputId],t),s.events.onPostRender.priorityAdd(function(){t.isReady.apply(t);},null,!0),s.showing=!0;}o(Ht,"createTimePicker");function Mt(e,i,l,n){var s=$UI.createComponent(componyx.UI.Slider,{id:i,containerElement:n});s.clone($UI.store[e.filterInputId],t),s.events.onPostRender.priorityAdd(function(){t.isReady.apply(t);},null,!0),s.showing=!0;}o(Mt,"createSlider");function Ft(e,i,l){var n=$lib.format("{0}_FilterButton_{1}",t.id,e.id),s=$UI.createComponent(componyx.UI.Button,{id:n,containerElement:l}),a=!i||Math.log(i)/Math.log(2)%1==0;s.primary=s.transparentBorder=!1,s.clone($UI.store[e.filterButtonId],t),s.hasIcon=!0,s.cssClass=s.cssClass||t.cssClassFilterButton||r.FILTER_BUTTON,s.command=li.bind(t,s),s.events.onPostRender.priorityAdd(function(){t.isReady.apply(t);},null,!0),s.showing=!0,a||(s.menuId=$lib.format("{0}_FilterMenu",t.id),s.menuItemId=e.id,O&&(s.tooltipManagerId=O.id,s.tooltipId=e.id+"_Filter"),kt(e,i));}o(Ft,"createFilterButton");function kt(e,s){var l=$lib.format("{0}_FilterMenu",t.id),n=j||$UI.createComponent(componyx.UI.Menu,{id:l,containerElement:t.element}),s=e.filterMenuOptions,a=new componyx.UI.Menu.Item,d,f;s||(s=qe(e)),a.id=e.id,n.itemList.push(a);for(var p in C)f=C[p],s&f&&(d=new componyx.UI.Menu.Item,d.id=$lib.format("{0}_{1}",a.id,f),d.value=f,d.key=p,d.text=t.filterMenuLabels[p]||p,d.radioGroupId=e.id,d.type=componyx.UI.Menu.TypeOption.RADIOBUTTON,a.itemList.push(d),(!e.filterMenuSelectedOption&&a.itemList.length==1||e.filterMenuSelectedOption==C[p])&&(d.selected=!0,O&&O.addTooltip(e.id+"_Filter",d.text)));j||(j=n,n.clone($UI.store[t.filterMenuId],t),n.cssClass=n.cssClass||t.cssClassFilterMenu||r.FILTERMENU,n.expandOnClick=!0,n.visibleRoot=!1,n.showing=!0,n.collapseAllOnSelect=!0,n.events.onPostRender.priorityAdd(()=>{t.isReady.apply(t);},null),n.events.onItemExpand.priorityAdd(()=>{O?.hideAllTooltips();}),n.events.onItemSelect.priorityAdd(ii)),st(e,a.itemList[0]);}o(kt,"createFilterMenu");function Xt(){var e,i,l,n,s,a=t.cssClassHiddenColumn||r.HIDDEN_COLUMN,d=t.cssClassCheckBox||r.CHECKBOX,f=t.cssClassExpand||r.EXPAND;for(b=t.element.appendChild(document.createElement("div")),b.className=t.cssClassContent||r.CONTENT,t.rowSelection>z.NONE&&$lib.addClass(b,r.SELECTABLE),$lib.isEmpty(t.contentStyle)||$lib.setStyle(b,t.contentStyle),$lib.isEmpty(t.contentHeight)||(b.style.height=$lib.unit(t.contentHeight)),e=b.appendChild(document.createElement("table")),l=e.appendChild(document.createElement("colgroup")),e.appendChild(document.createElement("tbody")),s=ee()?-1:0;s<t.columns.length;++s){if(n=l.appendChild(document.createElement("col")),s==-1){$lib.addClass(n,f);continue}i=t.columns[s],i.visible==!1&&$lib.addClass(n,a),i.checkBox&&$lib.addClass(n,d),i.cssClass&&$lib.addClass(n,i.cssClass),$lib.isEmpty(i.width)||(n.style.width=$lib.unit(i.width));}}o(Xt,"createContent");function Wt(){var e=t.id+"_Pager";R=$UI.createComponent(componyx.UI.DataPager,{id:e,containerElement:t.element}),R.visiblePages=0,R.clone($UI.store[t.dataPagerId],t),R.cssClass=R.cssClass||t.cssClassDataPager||r.DATA_PAGER,R.events.onPostRender.priorityAdd(function(){t.isReady.apply(t);},null),R.events.onIndexChange.priorityAdd(zt,null);}o(Wt,"createDataPager");function zt(e,i){q(i.pageIndex);}o(zt,"pageIndexChange");function Zt(){var e=b.firstChild,i=$lib(null,e,"tbody",!0);Ie=null,B!=null&&(B.style.display="none"),w!=null&&(w.style.display="none"),e.style.display="",i.parentNode.replaceChild(document.createElement("tbody"),i),Te=!1,L={},_e=[];for(var l=0;l<t.itemList.length;++l)et(e,t.itemList[l]);K=null,ne.push(setTimeout(Kt.bind(t,e),0));}o(Zt,"drawItemList");function et(e,i,l){var n,s,a,d,f,p,m,c,u,T=i.cssClass||t.cssClassItem||r.ITEM,S=t.cssClassHiddenColumn||r.HIDDEN_COLUMN,G=t.cssClassFixedColumn||r.FIXED_COLUMN,x=t.cssClassCheckBox||r.CHECKBOX,h=t.cssClassExpand||r.EXPAND,H=t.cssClassExpandIcon||r.EXPAND_ICON,W=t.cssClassGroupHead||r.GROUP_HEAD,V=t.cssClassGroupItem||r.GROUP_ITEM,P=t.cssClassExpandIcon||r.EXPAND_ICON,A=i.groupIndent||t.groupIndent,N,E=D(i.id);for(K=i,E?(n=E.rowIndex,e.deleteRow(n),E=e.insertRow(n)):(E=l?e.insertRow(l):e.insertRow(-1),n=E.rowIndex),E.id=bt(i.id),T&&(E.className=T),n%2!=0&&$lib.addClass(E,"odd"),t.events.onPreRenderItem.fire(t,X(i,E,null)),s=ee()?-1:0;s<t.columns.length;++s){if(a=t.columns[s]||null,d=E.appendChild(document.createElement("td")),N=t.fixedColumns>0&&s<t.fixedColumns,s==-1){i.expandable!=!1&&(p=d.appendChild(document.createElement("span")),p.className=H,$lib.addClass(d,h)),N&&$lib.addClass(d,G);continue}$lib.addClass(d,a.cssClass),a.visible==!1&&$lib.addClass(d,S),N&&$lib.addClass(d,G),a.checkBox?(f=d.appendChild(document.createElement("span")),f.className=x,$lib.addClass(d,x),t.rowSelection==z.MULTI&&$lib.on(d,"click",function(te,Ze){Ze.stopPropagation(),Me(te);},i.id,t)):(i.isGroup||!$lib.isEmpty(i.parentId))&&(s==0||s==1&&t.columns[0].checkBox)?(m=d.appendChild(document.createElement("div")),m.className=V,$lib.isEmpty(i.parentId)||(u=L[i.parentId],I(u.items,i.id)==-1&&u.items.push(i),m.style.marginLeft=$lib.unit(u.indent),$lib.addClass(d,V),u.expanded===!1&&(E.style.display="none")),i.isGroup&&(Te=!0,L[i.id]||(L[i.id]={},L[i.id].items=[]),L[i.id].expanded=u?u.expanded:i.groupExpanded,L[i.id].indent=u?u.indent+A:A,c=m.appendChild(document.createElement("span")),$lib.addClass(d,W),$lib.addClass(c,P),i.groupExpanded&&$lib.addClass(d,r.EXPANDED),L[i.id].items.length>0&&pe(i.id,L[i.id].expanded)),t.applyTemplate(m,"Column_"+a.id,i)):t.applyTemplate(d,"Column_"+a.id,i);}i.disabled&&Ct(i.id),(i.selected||Z[i.id])&&(ae=!0,re(i.id)),i.expanded&&ve(i.id),Yt(E,p,t.groupExpansion==Le.ITEM?m:c,i),t.draggableItems&&i.draggable&&ne.push(setTimeout(function(){Vt(i,E);}.bind(t,i,E),0)),t.events.onPostRenderItem.fire(t,X(i,E,null));}o(et,"drawItem");function Yt(e,i,l,n){$lib.on(e,"click",function(s){$e||(t.rowSelection==z.SINGLE&&Me(s),t.events.onItemClick.fire(t,X(_(s),e,null)));},n.id,t),i&&($lib.on(i.parentNode,"pointerdown",t.cancelSelectClick),$lib.on(i.parentNode,"click",ht,n.id,t)),l&&n.isGroup&&n.groupExpandable&&t.groupExpansion!=Le.NONE&&($lib.on(l,"pointerdown",t.cancelSelectClick),$lib.on(l,"click",pe,[n.id,null],t));}o(Yt,"bindItemEvents");function Kt(e){t.rowSelection==z.MULTI&&(y==null?(y=$lib.selectable($base.static.initSelectSettings({dragZone:b,includeTags:"tr",exclude:$lib("disabled",e,"tr"),toggleClickSelect:t.selectSettings.toggleClickSelect!=!1,selectMode:t.draggableItems||t.autoTouchConfig&&$lib.touch?2:"",onSelect:yi},t.selectSettings)),$lib.on(b,"pointerdown",function(i){var l=i.pointerType==="touch";y.settings.appendClickSelect=l||t.selectSettings.appendClickSelect,y.settings.toggleClickSelect=l||t.selectSettings.toggleClickSelect!==!1;})):(y.settings.exclude=$lib("disabled",e,"tr"),y.update()));}o(Kt,"initSelectable");function Vt(e,i){var l=i;$lib.touch&&t.autoTouchConfig&&(l=i.firstElementChild,l.setAttribute("style","touch-action: none")),_e.push($lib.draggable(l,$base.static.initDragSettings({dragGhost:tt(i.parentNode,"tr"),autoGhostSize:!1,minDragY:1,dragX:!1,dropAcceptMode:2,droppableClass:t.itemDragSettings.droppableClass||r.DROPPABLE,dropZones:!e.isGroup&&$lib.isEmpty(e.parentId)&&Ie?Ie:we(e),onDragStart:bi,onDragEnd:Ei,onDroppable:o(function(n){$lib.defer(Ii.bind(t,n));},"onDroppable"),onDroppableLeave:$i,onDrop:Ti},t.itemDragSettings)));}o(Vt,"initDraggable");function tt(e,i){var l=$lib.element(e,null,i);return l.className=t.cssClassDragGhost||r.DRAG_GHOST,l.style.display="none",l}o(tt,"createDragGhost");function Be(){ne.push(setTimeout(Qt,0));}o(Be,"detectViewportSize");function Qt(){if(t.useViewportHeight){var e=$lib.getWindowSize();b.style.height="auto";var i=$lib.getPos(b),l=e.height-i.top-(t.viewportBottomOffset||0);i.top+i.height>l&&(b.style.height=$lib.unit(l));}it(),Jt();}o(Qt,"detect");function it(){var e=$lib.styleValue(b,"overflow-x");$lib.removeClass(t.element,r.SCROLLABLE_X),!("hidden visible".indexOf(e)>-1||b.firstChild.offsetWidth<=b.clientWidth)&&($lib.addClass(t.element,r.SCROLLABLE_X),$lib.has(b,"scroll",lt)||$lib.on(b,"scroll",lt));}o(it,"detectScrollX");function Jt(){var e=$lib.styleValue(b,"overflow-y");$lib.removeClass(t.element,r.SCROLLABLE_Y),k.firstChild.style.paddingRight="",U&&(U.style.paddingRight=""),!("hidden visible".indexOf(e)>-1||b.firstChild.offsetHeight<=b.clientHeight&&e!="scroll")&&($lib.addClass(t.element,r.SCROLLABLE_Y),k.firstChild.style.paddingRight=$lib.unit(Ve.width),U&&(U.style.paddingRight=k.firstChild.style.paddingRight));}o(Jt,"detectScrollY");function lt(){clearTimeout(Ge),Ge=setTimeout(function(){jt();},0);}o(lt,"scrollDelayed");function jt(){var e=b.scrollLeft,i=k.firstChild,l=t.cssClassFixedColumn||r.FIXED_COLUMN;Ke!=e&&(i.style.marginLeft=$lib.unit(e*-1),U&&(U.firstChild.style.marginLeft=i.style.marginLeft),t.fixedColumns>0&&(clearTimeout(Ae),Ae=setTimeout(function(){$lib.setCssRule(Y,null,"#"+t.id+" ."+l,"left:"+e+"px;");},t.fixedColumnScrollUpdate)),Ke=e);}o(jt,"scroll");function qt(){nt(b),B!=null?B.style.display="":t.hasTemplate("Preloader")&&(B=b.appendChild(document.createElement("div")),B.className=t.cssClassPreloader||r.PRELOADER,t.applyTemplate(B,"Preloader"));}o(qt,"showPreloader");function ei(e){if(t.hasTemplate("ItemPreloader")){var i=e.appendChild(document.createElement("div"));i.className=t.cssClassPreloader||r.PRELOADER,t.applyTemplate(i,"ItemPreloader");}}o(ei,"showItemPreloader");function ti(){nt(b),w!=null?w.style.display="":t.hasTemplate("NoResult")&&(w=b.appendChild(document.createElement("div")),w.className=t.cssClassNoResult||r.NORESULT,t.applyTemplate(w,"NoResult"));}o(ti,"showNoResult");function nt(e){var i=$lib.children(e);$lib.each(i,function(l){l.style.display="none";});}o(nt,"hideChildren");function ii(e,i){var l=i.item,n=l.key,s=t.columns[I(t.columns,l.radioGroupId)];st(s,l),O&&(O.getBox()&&O.getBox().hide(!0),O.addTooltip(s.id+"_Filter",t.filterMenuLabels[n]||n));}o(ii,"selectFilter");function st(e,i){var l=i.value,n=l==C.BETWEEN||l==C.NOTBETWEEN;if(e.filterInputType===v.SLIDER){var s=$UI.store[$lib.format("{0}_FilterInput_{1}",t.id,e.id)],a=s.getValue(),d=$lib.isArray(a);(d&&!n||!d&&n)&&(n?s.value=a:s.value=a[1],s.range=n,s.render());return}var f=ze(e.id).firstElementChild,p=f.firstElementChild,m=$lib(r.FILTERRANGE,f,"div",!0);m&&(p.style.display=n?"none":"",m.style.display=n?"":"none");}o(st,"toggleFilterView");function li(e){var i=e.id.replace(t.id+"_FilterButton_","");ot(i);}o(li,"filterCommand");function ot(e){var i=t.columns[I(t.columns,e)],l=i.filterMenuSelectedOption||1,n=l,s;j&&(s=j.getSelectedItem(e),n=s?C[s.key]:l),ni(e,si(e),n);}o(ot,"triggerFilter");function ni(e,i,l){at(e,i,l),q();}o(ni,"filter");function at(e,i,l){l!=C.EMPTY&&l!=C.NOTEMPTY&&$lib.isEmpty(i)||$lib.isArray(i)&&$lib.isEmpty(i.join(""))?delete le[e]:(le[e]={},le[e].type=C.getName(l),le[e].value=i);}o(at,"setColumnFilter");function si(e){var i=I(t.columns,e),l=t.columns[i],n=ze(null,i),s=[],a=$lib.format("{0}_FilterInput_{1}",t.id,l.id),d=a+"_From",f=a+"_To",p,m="getValue";return l.filterInputType?n.firstChild.style.display!="none"?c($UI.store[a][m]()):(c($UI.store[d][m]()),c($UI.store[f][m]())):(p=$lib("#"+a),n.firstChild.style.display!="none"?c(p.value):(c($lib("#"+d).value),c($lib("#"+f).value))),s;function c(u){$lib.isEmpty(u)||(s=$lib.isArray(u)?s.concat(u.slice(0)):s.concat([u]));}}o(si,"getFilterValue");function oi(e,i){var l=I(t.columns,e),n=t.columns[l],s=ze(null,l),a=$lib.format("{0}_FilterInput_{1}",t.id,n.id),d=a+"_From",f=a+"_To",p;n.filterInputType?s.firstChild.style.display!="none"?m(a):(m(d),m(f)):(p=$lib("#"+a),s.firstChild.style.display!="none"?p.value=i:($lib("#"+d).value=i,$lib("#"+f).value=i));function m(c){n.filterInputType==v.COMBOBOX?($UI.store[c].clearSelection(),$UI.store[c].selectedItems($lib.isArray(i)?i:[i])):$UI.store[c].setValue(i);}o(m,"setValue");}o(oi,"setFilterValue");function ai(e){$lib.hasClass(e,r.SELECTED)?($lib.removeClass(e,r.SELECTED),y.deselect()):($lib.addClass(e,r.SELECTED),y.select());}o(ai,"selectAll");function ri(e,i){rt(e,i),t.events.onColumnSort.fire(t,{columnId:e,order:F[e]}),q();}o(ri,"sort");function rt(e,i){var l=ce(e),n=r.SORTASC+" "+r.SORTDESC;$lib.isEmpty(i)?$lib.hasClass(l,r.SORTASC)?($lib.removeClass(l,r.SORTASC),$lib.addClass(l,r.SORTDESC)):$lib.hasClass(l,r.SORTDESC)?$lib.removeClass(l,r.SORTDESC):$lib.addClass(l,r.SORTASC):($lib.removeClass(l,n),i==Ce.ASC?$lib.addClass(l,r.SORTASC):i==Ce.DESC&&$lib.addClass(l,r.SORTDESC)),t.columnSorting!=De.MULTI&&($lib.each(F,function(s,a){a!=e&&$lib.removeClass(ce(a),n);}),F={}),$lib.hasClass(l,r.SORTASC)?F[e]=Ce.ASC:$lib.hasClass(l,r.SORTDESC)?F[e]=Ce.DESC:e in F&&delete F[e];}o(rt,"setColumnSortOrder");function Li(){return $lib(t.cssClassHeader||r.HEADER,t.element,"div")}o(Li,"getHeader");function di(e){e.settings.dragGhost.innerHTML=e.element.firstChild.textContent;}o(di,"headerDragStart");function ci(e){var i=e.dropZone,l=e.dropZonePos.left+i.offsetWidth/2,n=r.LEFT,s=r.RIGHT,a=$lib.getScrollPosition(),d=$lib.clientX($lib.event)+a.scrollLeft;$lib.removeClass(i,n+" "+s),d<=l?$lib.addClass(i,n):$lib.addClass(i,s);}o(ci,"headerDroppable");function ui(e){$lib.removeClass(e.dropZone,r.LEFT+" "+r.RIGHT);}o(ui,"headerDroppableLeave");function pi(e){var i,l=e.element.id.replace(t.id+"_h_",""),n=e.dropZone.id.replace(t.id+"_h_",""),s=I(t.columns,l),a=I(t.columns,n),d=$lib.hasClass(e.dropZone,r.RIGHT),f=$lib(null,k,"table"),p=$lib(null,b,"tr",!0);$lib.removeClass(e.dropZone,r.LEFT+" "+r.RIGHT),$lib.updateStyle(e.element.style,"position:;left:;top:;"),d&&++a,s!=a&&(Ci(f[0],s,l,a,n,d),t.enableFilterRow&&dt($lib(null,f[1],"tr",!0),s,a),!Pe&&p&&dt(p,s,a),i=t.columns.splice(s,1)[0],a>s&&--a,t.columns.splice(a,0,i),t.events.onColumnOrderChange.fire(t,{sourceIndex:s,targetIndex:a}));}o(pi,"headerDrop");function fi(e){Si(e);}o(fi,"headerResizeStart");function mi(e){it(),t.events.onColumnResize.fire(t,{columnIndex:g.columnIndex,element:e.element});}o(mi,"headerResizeEnd");function hi(e){var i=g.columnIndex,l=e.element.style.width,n,s=0;ge(i,l),t.preserveTotalWidth&&g.columnDistribution.length>0?(n=(g.columnStartWidth-parseFloat(l))/g.columnDistribution.length,$lib.each(g.columnDistribution,function(a){l=a.width+n+s,l>=0?ge(a.index,$lib.unit(l)):(ge(a.index,"0px"),s=l);})):t.preserveTotalWidth||(n=parseFloat(l)-g.columnStartWidth,t.element.style.width=$lib.unit(g.totalWidth+n));}o(hi,"headerResize");function ge(e,i){g.header[e].style.width=g.content[e].style.width=i,g.filter!=null&&(g.filter[e].style.width=i);}o(ge,"updateColumnWidth");function Ci(e,i,l,n,s,a){var d=$lib(null,e,"tr")[Ee[1][l]-1],f=ce(l),p=ce(s);He($lib(null,e,"colgroup",!0),i,n),a&&(p=p.nextSibling||null),p?d.insertBefore(f,p):d.appendChild(f);}o(Ci,"changeHeaderColumnOrder");function dt(e,i,l){var n=ee()?1:0,s=t.columns.length+n;for(He($lib(null,e.parentNode.parentNode,"colgroup",!0),i,l);e;)e.childNodes.length==s&&He(e,i,l),e=e.nextSibling;}o(dt,"changeColumnOrder");function He(e,i,l){i=Se(i),l=Se(l);var n=e.childNodes,s=l>=n.length;s?e.appendChild(n[i]):e.insertBefore(n[i],n[l]);}o(He,"changeOrder");function bi(e){var i=ye(e.element),l=i.cloneNode(!0),n=e.settings.dragGhost,s=l.childNodes,a=i.firstChild;for(n.parentNode!=i.parentNode&&i.parentNode.appendChild(n),n.innerHTML="";a;){var d=s[0];d.style.width=$lib.unit(a.offsetWidth),n.appendChild(d),a=a.nextSibling;}$lib.addClass(i,r.DRAG);}o(bi,"itemDragStart");function Ei(e){$lib.removeClass(ye(e.element),r.DRAG);}o(Ei,"itemDragEnd");function Ii(e){var i=e.dropZone,l=e.dropZonePos.top+i.offsetHeight/2,n=r.TOP,s=r.BOTTOM,a=$lib.getScrollPosition(),d=$lib.clientY($lib.event)+a.scrollTop;$lib.removeClass(i,n+" "+s),d<=l?$lib.addClass(i,n):$lib.addClass(i,s);}o(Ii,"itemDroppable");function $i(e){ut(e.dropZone);}o($i,"itemDroppableLeave");function Ti(e){var i=t.itemList,l=e.dropZone,n=ye(e.element),s=$lib.hasClass(l,r.BOTTOM),a=$lib.indexOf(e.settings.dropZones,n),d=$lib.indexOf(e.settings.dropZones,l);if(Math.abs(d-a)>1||d>a&&s||d<a&&!s){var f=s?l.nextElementSibling:l,p=_(n.id.replace(t.id+"_","")),m=_(l.id.replace(t.id+"_","")),u=[],T=[p];if(a=I(i,p.id),p.isGroup&&(T=T.concat(ke(p.id)),ct(T,u)),m.isGroup&&s){var S=ke(m.id);ct([m].concat(S),u),d=I(i,S[S.length-1].id)+1,f=i[d]?D(i[d].id):null;}else d=I(i,m.id);!m.isGroup&&s&&++d;var G=$lib.move(i,a,d,T.length);$lib.each(T,function(x){var h=D(x.id);h.parentNode.insertBefore(h,f);}),$lib.each(u,function(x){ve(x);}),gi(Te?null:we()),t.events.onItemOrderChange.fire(t,{items:T,fromIndex:a,toIndex:d,resultIndex:G,dropZone:l,nextRow:f});}ut(e.dropZone),$lib.updateStyle(e.element.style,"left:;top:;"),$lib.isEmpty(e.element.getAttribute("style"))&&e.element.removeAttribute("style");}o(Ti,"itemDrop");function gi(e){$lib.each(_e,function(i){var l,n;e?i.settings.dropZones=e:(l=ye(i.element),n=_(l.id.replace(t.id+"_","")),i.settings.dropZones=we(n));});}o(gi,"updateItemDropZones");function ct(e,i){return i||(i=[]),$lib.each(e,function(l){l.expanded&&(i.push(l.id),Oe(l.id));}),i}o(ct,"collapseItems");function ye(e){return e.nodeName.toLowerCase()==="tr"?e:e.parentNode}o(ye,"getTableRow");function ut(e){$lib.removeClass(e,r.TOP+" "+r.BOTTOM);}o(ut,"clearDropZoneCSS");function yi(e){var i;for(i=0;i<e.deselected.length;i++)de(e.deselected[i].id.replace(t.id+"_",""),e.event);for(i=0;i<e.selected.length;i++)re(e.selected[i].id.replace(t.id+"_",""),e.event);}o(yi,"onSelect");function Me(e){var i=Z[e]!=null;t.rowSelection==z.MULTI?i?de(e):re(e):(Fe(),i||re(e)),ae=!1;}o(Me,"toggleSelectItem");function re(e){if(!$lib.isEmpty(e)){var i=_(e),l=D(e);!ae&&i.disabled||(Z[e]=i,i.selected=!0,pt(),$lib.addClass(l,r.SELECTED),ae=!1,t.events.onItemSelect.fire(t,X(i,l,null)),ft(i));}}o(re,"selectItem");function de(e){if(!$lib.isEmpty(e)){var i=_(e),l=D(e);delete Z[e],i.selected=!1,pt(),$lib.removeClass(l,r.SELECTED),t.events.onItemDeselect.fire(t,X(i,l,null)),ft(i,!0);}}o(de,"deselectItem");function pt(){var e=[];$lib.each(Z,function(i,l){e.push($lib.isEmpty(i.value)?i.id:i.value);}),Qe.value=e.length>0?e.join(","):"";}o(pt,"storeSelected");function Fe(){if(y)y.deselect();else if(!$lib.isEmpty(Z))for(var e in Z)de(e);}o(Fe,"clearSelection");function ft(e,i){t.rowSelection!=z.MULTI||!e.isGroup||$lib.each(ke(e.id),function(l){i?de(l.id):re(l.id);});}o(ft,"selectItemsInGroup");function ke(e){var i=[e],l=[];return $lib.each(t.itemList,function(n,s){$lib.isEmpty(n.parentId)||$lib.indexOf(i,n.parentId)>-1&&(n.isGroup&&i.push(n.id),l.push(n));}),l}o(ke,"getItemsInGroup");function mt(e){var i=D(e),l=I(t.itemList,e),n=t.itemList[l],s=b.firstChild;i&&s.deleteRow(i.rowIndex),!$lib.isEmpty(n.parentId)&&L[n.parentId]&&L[n.parentId].items.splice(I(L[n.parentId].items,n.id),1),t.itemList.splice(l,1),n.isGroup&&$lib.each(L[n.id],function(a){mt(a.id);}),y&&y.update();}o(mt,"removeItem");function ht(e){var i=_(e);i.expanded?Oe(i.id):ve(i.id);}o(ht,"toggleExpandItem");function ve(e){var i=_(e),l=D(e),n=b.firstChild,s,a,d=t.itemTemplateId||i.templateId,f={id:e};i.disabled||!d||(a=n.insertRow(l.rowIndex+1),t.rowExpansion==Ne.SINGLE&&!$lib.isEmpty(oe)&&Oe(oe),t.enableExpandColumn&&(s=a.appendChild(document.createElement("td")),$lib.addClass(s,t.cssClassExpand||r.EXPAND)),s=a.appendChild(document.createElement("td")),s.colSpan=t.columns.length,i.expanded=!0,$lib.addClass(l,"expanded"),oe=e,y&&y.settings.exclude.push(a),t.ajax.loadItem&&t.ajax.loadItem.isDefined()?(se[1]&&se[1].abort(),t.events.onPreLoadItem.fire(t),ei(s),se[1]=t.ajaxCall("loadItem",M.JSON.stringify(f),{onSuccess:o(function(p){var m=typeof p.data=="string"?M.JSON.parse(p.data):p.data;$lib.removeChildren(s),t.applyTemplate(s,d,m),t.events.onPostLoadItem.fire(t,p);},"onSuccess")})):$lib.isEmpty(d)||t.applyTemplate(s,d,i),t.events.onItemExpand.fire(t,X(i,l,s)));}o(ve,"expandItem");function Oe(e){var i=_(e),l=D(e),n=b.firstChild,s=t.itemTemplateId||i.templateId;i.disabled||!s||(i.expanded=!1,oe=null,$lib.removeClass(l,"expanded"),n.deleteRow(l.rowIndex+1),t.events.onItemCollapse.fire(t,X(i,l,null)));}o(Oe,"collapseItem");function pe(e,i){var l=i?"":null;i===!1&&(l="none"),Tt(e,l);}o(pe,"expandItemGroup");function vi(e){var i=[],l=o(function(n){$lib.each(t.columns,function(s){s.columnGroupId==n&&i.push(s);}),$lib.each(t.columnGroups,function(s){s.parentId==n&&l(s.id);});},"findColumns");return l(e),i}o(vi,"getGroupColumns");function Xe(e,i){var l=t.columnGroups[I(t.columnGroups,e)];l.visible=i,$lib.each(vi(e),function(n){We(n,i);});}o(Xe,"setColumnGroupDisplay");function We(e,i){var l=t.columns[I(t.columns,e)],n=Se(I(t.columns,e)),s=t.cssClassHiddenColumn||r.HIDDEN_COLUMN,a=i?$lib.removeClass:$lib.addClass,d=k.firstChild,f,p=b.firstChild,m=$lib.children($lib(null,p,"tr",!0).parentNode);l.visible=i,a($lib.children($lib(null,d,"th",!0).parentNode)[n],s),a($lib.children($lib(null,d,"col",!0).parentNode)[n],s),a($lib.children($lib(null,p,"col",!0).parentNode)[n],s),t.enableFilterRow&&(f=U.firstChild,a($lib.children($lib(null,f,"th",!0).parentNode)[n],s),a($lib.children($lib(null,f,"col",!0).parentNode)[n],s));for(var c=0;c<m.length;++c)a($lib.children(m[c])[n],s);}o(We,"setColumnDisplay");function Ct(e){var i=_(e);i.disabled=!0,$lib.addClass(D(e),"disabled");}o(Ct,"disableItem");function Oi(e){var i=_(e);i.disabled=!1,$lib.removeClass(D(e),"disabled");}o(Oi,"enableItem");function ze(e,i){var l;return i=i??I(t.columns,e),l=$lib(t.cssClassFilterRow||r.FILTERROW,t.element,null,!0),$lib.children($lib(null,l,"tr",!0))[Se(i)]}o(ze,"getFilterCell");function ce(e){return $lib($lib.format("#{0}_h_{1}",t.id,e))}o(ce,"getColumnTableHeader");function Si(e){var i=e.element.id.replace(t.id+"_h_",""),l=$lib(null,k,"table"),n,s=[],a=$lib.borderAndPadding(t.element),d=ee()?1:0;g.header=g.filter=g.content=null,g.columnIndex=I(t.columns,i),g.header=f(l[0]).slice(d),g.content=f(b.firstChild).slice(d),t.enableFilterRow&&(g.filter=l[1]?f(l[1]).slice(d):null),g.totalWidth=t.element.offsetWidth-a.width,g.columnStartWidth=e.startWidth,t.preserveTotalWidth&&(g.columnDistribution=[],n=t.columns[g.columnIndex]),$lib.each(t.columns,function(p,m){var c=$lib("#"+t.id+"_h_"+p.id),u=c.offsetWidth;s[m]=u,t.preserveTotalWidth&&p!=n&&p.resizable!=!1&&!p.checkBox&&g.columnDistribution.push({index:m,width:u});}),$lib.each(s,function(p,m){ge(m,$lib.unit(p));});function f(p){var m=$lib(null,p,"colgroup",!0);return $lib(null,m,"col")}o(f,"getTableCols");}o(Si,"storeTableData");function ee(){return t.enableExpandColumn&&t.rowExpansion>Ne.NONE}o(ee,"showExpandColumn");function I(e,i){return $lib.indexOf(e,function(l){return l.id===i.toString()})}o(I,"getIndex");function Se(e){var i=ee()?1:0;return e+i}o(Se,"getCellIndex");function D(e){return $lib("#"+bt(e))}o(D,"getItemRow");function bt(e){return t.id+"_"+e}o(bt,"getItemId");function _(e){return K&&K.id===e?K:K=$lib.path(t.itemList,"itemList",function(i){return i.id===e},!0).item}o(_,"loadItem");function X(e,i,l){return {item:e,tr:i,td:l,event:$lib.event}}o(X,"eventArgs");function xi(){$.each(ne,function(e){clearTimeout(e);}),clearTimeout(Ge),clearTimeout(Ae),$lib.off(M,"resize",Be),$lib.off(document,"pointerup",Ue),me&&$lib.off(t.element,"pointerdown",me),$lib.each(he,function(e){$lib.off(document,"pointerup",e);}),Y&&Y.cssRules.length<=1&&$lib.remove(Y.ownerNode),ne=[],he=[],Z={},le={},F={},K=j=Y=me=y=w=B=b=k=U=oe=null;}o(xi,"dispose");},"Grid"),componyx.UI.Grid.prototype=Object.create($base.methods),componyx.UI.Grid.prototype.constructor=componyx.UI.Grid,componyx.UI.Grid.RowSelectionOption={NONE:0,SINGLE:1,MULTI:2},componyx.UI.Grid.RowExpansionOption={NONE:0,SINGLE:1,MULTI:2},componyx.UI.Grid.GroupExpansionOption={NONE:0,ICON:1,ITEM:2},componyx.UI.Grid.ColumnSortingOption={NONE:0,SINGLE:1,MULTI:2},componyx.UI.Grid.SortOrderOption={ASC:0,DESC:1},componyx.UI.Grid.FilterMenuOptions={EQUALTO:1,NOTEQUALTO:2,GREATERTHAN:4,GREATERTHANOREQUALTO:8,LESSTHAN:16,LESSTHANOREQUALTO:32,STARTSWITH:64,NOTSTARTSWITH:128,ENDSWITH:256,NOTENDSWITH:512,CONTAINS:1024,NOTCONTAINS:2048,BETWEEN:4096,NOTBETWEEN:8192,IN:16384,NOTIN:32768,EMPTY:65536,NOTEMPTY:131072,getName:o(function(Q){return $base.static.getKeyByValue(this,Q).toLowerCase()},"getName")},componyx.UI.Grid.FilterInputTypeOption={TEXTBOX:0,NUMERICBOX:1,COMBOBOX:2,DATEPICKER:3,TIMEPICKER:4,SLIDER:5},componyx.UI.Grid.Item=class{static{o(this,"GridItem");}constructor(J){this.cssClassCheckBox="",this.cssClassExpand="",this.draggable=!0,this.expandable=!0,this.expanded=!1,this.isGroup=!1,this.groupExpandable=!0,this.groupExpanded=!0,this.groupIndent=null,this.parentId=null,$base.static.Item.call(this,J);}},componyx.UI.Grid.ColumnGroup=class{static{o(this,"ColumnGroup");}constructor(J){this.id=null,this.parentId=null,this.headerText=null,this.cssClass=null,this.style=null,$lib.clone(this,J,!0,!0,!0,!0,!1);}},componyx.UI.Grid.Column=class{static{o(this,"Column");}constructor(J){this.id=null,this.columnGroupId=null,this.headerText=null,this.cssClassHeader=null,this.cssClass=null,this.style=null,this.width=null,this.resizable=!0,this.checkBox=!1,this.visible=!0,this.disableSorting=!1,this.disableFilter=!1,this.filterMenuOptions=null,this.filterMenuSelectedOption=null,this.filterInputType=null,this.headerTooltipTemplate=null,this.columnTemplate=null,this.filterTemplate=null,this.rangeFilterTemplate=null,this.filterButtonId=null,this.filterInputId=null,$lib.clone(this,J,!0,!0,!0,!0,!1);}};})(window);
221
+ })(window);
222
+
223
+
224
+ (async function(window){var o=Object.defineProperty;var l=(n,a)=>o(n,"name",{value:a,configurable:!0});(function(){class n extends componyx.UI.base.WebComponent{static{l(this,"MaskedTextBox");}#e=null;#t=[];#s=[];#r;#u="____-____";#a=!1;#c;constructor(t,e){super(t,e),this.mask=this.#u,this.allowedCharacters=n.AllowedCharactersOption.ALPHANUMERIC,this.customPattern=/^[A-Z0-9]+$/,this.showMaskHint=null,this.maskHint=" (A=letters, 0=digits)",this.inputId=null;function s(i){Object.assign(this,i),this.onChanged=$base.static.createEvent("onChanged");}l(s,"MaskedTextBoxEvents"),this.events=new s(this.events);}get input(){return this.#e}get value(){return this.#s.join("")}get mask(){return this.#r}set mask(t){t!==this.#r&&($lib.isEmpty(t)?this.#r=this.#u:this.#r=t,this.renderState===$base.static.RenderState.RENDERED&&(this.setMaskHint(),this.#l(),this.renderValue()));}set value(t){let e=0;this.#s.fill(""),this.#t.length||this.#l(),$lib.isEmpty(t)&&(t="");for(let s=0;s<t.length&&e<this.#t.length;s++){const i=t[s];this.#o(i,e)&&(this.#s[e++]=i);}this.renderState===$base.static.RenderState.RENDERED&&this.renderValue();}getValue(){return this.value}setValue(t){this.value=t;}setMaskHint(){const t=this.mask.replace(/\\./g,""),e=this.showMaskHint==null?t.includes("A")||t.includes("0"):this.showMaskHint;this.classList.remove("mask-hint"),e&&(this.dataset.hint=this.mask.replace(/\\([\\a-zA-Z0-9_])/g,"$1")+this.maskHint,this.classList.add("mask-hint"));}render(){if(this.renderState!=$base.static.RenderState.RENDERING){super.render(this.#g,"masked-textbox");return}this.#I(),this.renderChildren();}destroy(t,e=!0){this.#v(),super.destroy(t,e);}#g(){return [n.name]}#I(){this.#e=this.createSyncedInput(this.inputId,function(t){t.value=this.value;},!1),typeof this.customPattern=="string"&&(this.customPattern=new RegExp(this.customPattern)),this.#e.type="text",this.element.appendChild(this.#e),this.#l(),this.setMaskHint(),this.renderValue(),this.#x();}#l(){let t=0,e=!1;this.#t=[],this.#s=[];for(let s=0;s<this.mask.length;s++){const i=this.mask[s],h=this.mask[s-1];if(i=="\\"){e=!0,h=="\\"&&(e=!1,t++);continue}this.#d(i,e?h:null)&&(this.#t.push({maskIndex:t,token:i}),this.#s.push("")),t++;}}renderValue(){this.#e.__setValue(this.#C());}#C(){let t=[],e=0,s=!1;for(let i=0;i<this.mask.length;i++){const h=this.mask[i],r=this.mask[i-1];h==="\\"?(s=!0,r=="\\"&&(s=!1,t.push(h))):this.#d(h,s?r:null)?(t.push(this.#s[e]!==""?this.#s[e]:"_"),e++,s=!0):t.push(h);}return t.join("")}#d(t,e){return e!=="\\"&&(t==="_"||t==="A"||t==="0")}#x(){$lib.on(this.#e,"blur",this.#f,null,this,!0),$lib.on(this.#e,"paste",this.#k,null,this,!0),$lib.on(this.#e,"keydown",this.#m,null,this,!0),$lib.on(this.#e,"focus click",this.#p,null,this,!0);}#b(){this.#e&&($lib.off(this.#e,"blur",this.#f),$lib.off(this.#e,"paste",this.#k),$lib.off(this.#e,"keydown",this.#m),$lib.off(this.#e,"focus click",this.#p));}#f(t){const e=this.value;e!==this.#c&&(this.#c=e,this.events.onChanged.fire(this,{value:e,event:t}));}#k(t){t.preventDefault();const e=(t.clipboardData||window.clipboardData).getData("text");let s=this.#n(this.#e.selectionStart);if(s!==null){for(let i of e){if(s>=this.#t.length)break;this.#o(i,s)&&s<this.#t.length&&(this.#s[s++]=i);}this.renderValue(),s<this.#t.length?this.#i(this.#h(s)):this.#i((this.#t.at(-1)?.maskIndex??this.mask.length-1)+1);}}#m(t){const e=this.#e.selectionStart,s=this.#e.selectionEnd;if(!(["ArrowLeft","ArrowRight","Home","End","Tab","Shift","Control","Alt","Meta"].includes(t.key)||t.ctrlKey&&t.key.toLowerCase()==="v")){if(t.preventDefault(),e!==s){let i=this.#A();if(t.key==="Backspace"||t.key==="Delete"){i!==null&&this.#i(this.#h(i));return}}if(t.key==="Backspace"){let i=this.#S(e);i!==null&&this.#w(i);return}else if(t.key==="Delete"){let i=this.#n(e);i!==null&&this.#E(i);return}if(t.key.length===1){if(e>this.#t[this.#t.length-1].maskIndex)return;const i=this.#n(e);this.#o(t.key,i)&&this.#y(e,t.key);}}}#E(t){for(let e=t;e<this.#s.length-1;e++)this.#s[e]=this.#s[e+1];this.#s[this.#s.length-1]="",this.renderValue(),this.#i(this.#h(t));}#y(t,e){const s=this.#n(t);s!==null&&(this.#s[s]=e,this.renderValue(),s<this.#t.length-1?this.#i(this.#h(s+1)):this.#i((this.#t.at(-1)?.maskIndex??this.mask.length-1)+1));}#w(t){t!==null&&(this.#s[t]="",this.renderValue(),this.#i(this.#h(t)));}#o(t,e=null){let s=null;return e!==null&&this.#t[e]&&(s=this.#t[e].token),s==="0"?/\d/.test(t):s==="A"?/[a-zA-Z]/.test(t):this.allowedCharacters===n.AllowedCharactersOption.DIGITS?/\d/.test(t):this.allowedCharacters===n.AllowedCharactersOption.LETTERS?/[a-zA-Z]/.test(t):this.allowedCharacters===n.AllowedCharactersOption.CUSTOM&&this.customPattern instanceof RegExp?this.customPattern.test(t):/\w/.test(t)}#n(t){let e=this.#t.findIndex(s=>s.maskIndex>=t);return e===-1?null:e}#S(t){for(var e=this.#t.length-1;e>=0;e--)if(this.#t[e].maskIndex<t)return e;return null}#h(t){return this.#t[t].maskIndex}#p(t){t.type==="focus"&&(this.#a=!0),setTimeout(()=>{const e=this.#e.selectionStart,s=this.#t.at(-1)?.maskIndex??0;if(this.#a){const i=this.#s.findIndex(r=>r===""),h=i!==-1?this.#t[i].maskIndex:this.mask.length;this.#i(h),this.#a=!1;return}if(!(e>=s)&&!this.#t.some(i=>i.maskIndex===e)){const i=this.#n(e);i!==null?this.#i(this.#h(i)):this.#i(s);}},0);}#i(t){this.#e.setSelectionRange(t,t);}#A(){const t=this.#e.selectionStart,e=this.#e.selectionEnd,s=this.#n(t);return t>this.#t[this.#t.length-1].maskIndex||e<this.#t[0].maskIndex?null:(t!==e&&(this.#t.forEach((i,h)=>{i.maskIndex>=t&&i.maskIndex<e&&(this.#s[h]="");}),this.renderValue()),s)}#v(){this.#b();}}n.AllowedCharactersOption={ALPHANUMERIC:0,DIGITS:1,LETTERS:2,CUSTOM:3},Object.assign(n.prototype,Object.fromEntries(Object.entries($base.methods).filter(([a])=>!["render","destroy","getCssClass"].includes(a)))),n.prototype.constructor=n,componyx.UI.MaskedTextBox=n,customElements.define(`${componyx.UI.tagPrefix}${n.name.replace(/([A-Z])/g,"-$1").toLowerCase().replace(/^-/,"")}`,n);})();
225
+ })(window);
226
+
227
+
228
+ (async function(window){var et=Object.defineProperty;var a=(F,te)=>et(F,"name",{value:te,configurable:!0});(async function(F){componyx.UI.menu_modules=componyx.UI.menu_modules||{},componyx.UI.menu_modules.loaded=(async()=>{})(),await componyx.UI.menu_modules.loaded;const te=componyx.base_modules.NavigationManager;componyx.UI.Menu=a(function(Re,Te){var n=this,W=!1,H=!1,X=!1,ne=null,E=!0,D=!0,d={},K=[],p=null,O=null,k=null,T=!1,A=null,L=null,I=!1,U,ie,P=componyx.UI.Menu.ExpandOnClickOption,le=componyx.UI.Menu.ExpandDirectionOption,M=componyx.UI.Menu.TypeOption,N=componyx.UI.Menu.CollapseTypeOption,f={EXPANDING:0,EXPANDED:1,COLLAPSING:2,COLLAPSED:3},b={HORIZONTALROOT:"horizontal",ITEM:"button item",ITEMGROUP:"item-group box",ITEMGROUPROOT:"root",ITEMGROUPVISIBLEROOT:"visible-root",ITEMGROUPSTATIC:"static",CATEGORY:"cat",CATEGORY_NAVIGATOR:"cat-nav",CATEGORY_CONTAINER:"cat-container",SUBGROUP:"sub-group",ITEMCHILDLESS:"childless",SELECTEDCHILD:"sel-child",EXPANDED:"expanded"};this.cssClassItemGroup="",this.cssClassItemGroupRoot="",this.cssClassItemGroupHorizontalRoot="",this.cssClassItemGroupVisibleRoot="",this.cssClassItemGroupHiddenRoot="",this.cssClassSubGroup="",this.cssClassItem="",this.cssClassItemChildless="",this.mainCategoryLabel="",this.itemTemplateId=null,this.itemGroupStyle="",this.visibleRoot=!0,this.horizontalRoot=!0,this.tabNavigation=!0,this.renderOnExpand=!1,this.expandable=!0,this.singleExpand=!1,this.expandOnSelect=!0,this.collapseAllOnSelect=!1,this.expandOnClick=P.ROOT,this.rootExpandDirection=null,this.expandDirection=null,this.collapseType=N.SINGLE,this.collapseAllType=N.CASCADE,this.expandDelay=100,this.collapseDelay=100,this.buttonId=null,this.rootItemGroupBoxId=null,this.itemGroupBoxId=null,this.itemList=[],this.navigationManager=null;function _e(e){Object.assign(this,e),this.onItemClick=$base.static.createEvent("onItemClick"),this.onItemSelect=$base.static.createEvent("onItemSelect"),this.onItemDeselect=$base.static.createEvent("onItemDeselect"),this.onItemExpand=$base.static.createEvent("onItemExpand"),this.onItemExpandComplete=$base.static.createEvent("onItemExpandComplete"),this.onItemCollapse=$base.static.createEvent("onItemCollapse"),this.onItemCollapseComplete=$base.static.createEvent("onItemCollapseComplete"),this.onLastItemCollapseComplete=$base.static.createEvent("onLastItemCollapseComplete"),this.onPreRenderItemGroup=$base.static.createEvent("onPreRenderItemGroup"),this.onPostRenderItemGroup=$base.static.createEvent("onPostRenderItemGroup"),this.onPreRenderItem=$base.static.createEvent("onPreRenderItem"),this.onPostRenderItem=$base.static.createEvent("onPostRenderItem"),this.onPreLoadItemList=$base.static.createEvent("onPreLoadItemList"),this.onPostLoadItemList=$base.static.createEvent("onPostLoadItemList"),this.onPostRenderItemList=$base.static.createEvent("onPostRenderItemList");}a(_e,"MenuEvents"),this.events=new _e(this.events),$base.Component.apply(this,[Re,Te]),this.expand=function(e,t,i,l){var o=!$lib.isEmpty(p);if(o&&A!==t&&(o=!1,n.collapseAll(!0),A=null),e=e||["root"],$lib.isArray(e)||(e=[e]),n.visibleRoot&&(e=e.filter(s=>s!=="root"),!e.length)){console.warn(`Ignoring expand of root level for menu ${n.id} because visibleRoot is true.`);return}l=e.length>1||l,E=!0,D=!1,I=l,$lib.each(e,function(s){var c=d[s]<=f.EXPANDED,u=C(s),r=u.animation,v=r.showType;if(I&&(u.animation.showType=0),c)i&&(s=="root"?n.collapseAll():S(s));else {var y=x(s);t&&(A=typeof t=="string"?$lib("#"+t):t),y.isCategory?Q(s,null,I):_(s,l);}I&&(r.showType=v);}),I=!1;},this.collapse=function(e,t){e=e||["root"],$lib.isArray(e)||(e=[e]),I=e.length>1||t,$lib.each(e,function(i){S(i);}),I=!1;},this.cancelExpand=function(){ne=!0;},this.showCategory=function(e,t,i){Q(e,t,i);},this.loadItem=function(e){return m(e)},this.selectItem=function(e){J(e);},this.deselectItem=function(e){e=$lib.isEmpty(e)?L:e,e&&j(e);},this.enableItem=function(e){Ze(e);},this.disableItem=function(e,t){xe(e,t);},this.getActiveCategoryId=function(){return U},this.getSelectedItemId=function(e){var t=n.getSelectedItem(e);return t?t.id:null},this.getSelectedItem=function(e){return !$lib.isEmpty(e)&&componyx.UI.Button.RadioGroups[n.id+"_"+e]?x(componyx.UI.Button.RadioGroups[n.id+"_"+e].id.replace(n.id+"_","")):$lib.isEmpty(L)?null:x(L)},this.getExpandedItems=function(){var e=$lib.path(n.itemList,"itemList",function(i){return i.expanded}),t=[];return $lib.each(e,function(i){t.push(i.item);}),t},this.collapseAllDelayed=function(e){D=!0,Z(null,e);},this.collapseAll=function(e){q(e);},this.getItemGroupBox=function(e){return C(e)},this.removeItem=function(e){var t=m(e);t&&ae(t.item);},this.renderItem=function(e){var t=m(e.id),i=t.index,l=t.hasParent()?t.parent().item:null,o=l?.id;oe(C(o).contentElement,e,l,i==t.start().length()-1?null:i);},this.show=function(){$base.methods.show.call(n),n.renderState==$base.static.RenderState.RENDERED&&n.visibleRoot&&n.itemList&&n.itemList.length&&C().show();},this.hide=function(e){if(n.renderState!=$base.static.RenderState.RENDERED){$base.methods.hide.call(n);return}var t=a(function(){if(n.visibleRoot){var i=C();i.events.onHideComplete.priorityAdd(function(){$base.methods.hide.call(n);},null,!0),i.hide();}else $base.methods.hide.call(n);},"fn");ke()?this.collapseAll(e):t();},this.render=function(){if(n.renderState!=$base.static.RenderState.RENDERING){$base.methods.render.call(n,ge,"menu");return}n.hasTemplate("Default")||n.addTemplate("Default","{text}",!0),n.element.tabIndex=Number(n.tabIndex)||0,Ue(),n.allowPostRender=!1,de(),n.allowPostRender=!0,n.renderChildren();},this.postRender=function(){n.renderState==$base.static.RenderState.RENDERING&&($base.methods.postRender.call(this),n.visibleRoot&&C()&&C().show(),E=!0,$lib.each(K,function(e){var t=C(e),i=t.animation,l=i.showType;I=!0,t.animation.showType=0,_(e,!0),i.showType=l,I=!1;}),n.visibleRoot&&n.expandOnClick<=P.ALWAYS&&(E=!1),K=[]);},this.destroy=function(...e){Je(),$base.methods.destroy.call(this,...e);},this.draw=function(e){w(e);};function ge(){return ["Menu",["Box","Button"]]}a(ge,"preRender");function de(e){var t;n.events.onPreLoadItemList.fire(n,null),n.ajax.load&&n.ajax.load.isDefined()?(t='"parentItem": ',t+=e?F.JSON.stringify(e):"null",n.ajaxCall("load",t,{onSuccess:a(function(){De(e);},"onSuccess")})):e?w(e.itemList,e):w(n.itemList);}a(de,"load");function De(e,t){var i=[];if(t){if(t.data){var l=typeof t.data=="string"?F.JSON.parse(t.data):t.data;i=l?l.itemList||[]:[];}i||(i=[]);}n.events.onPostLoadItemList.fire(n,null),e?(e.itemList=i,w(e.itemList,e)):(n.itemList=i,w(n.itemList)),n.events.onPostRenderItemList.fire(n,null);}a(De,"dataLoaded");function w(e,t){if(!e||!e.length)return;let i,l=-1;if(!t||!$UI.store[h(t.id+"_Box")]?i=pe(t):i=$UI.store[h(t.id+"_Box")].contentElement,$lib.removeChildren(i),t&&t.isCategory){var o=Ne(t);oe(i,o,t);}for(;++l<e.length;)oe(i,e[l],t);T&&t&&O==t.id&&me();}a(w,"draw");function Le(){n.navigationManager||(n.navigationManager=new te(n.element,{itemList:n.itemList,horizontalRoot:n.horizontalRoot,tabNavigation:n.tabNavigation,getButton:a(e=>$UI.store[h(e.id)]?.element,"getButton"),getExpander:a(()=>A,"getExpander"),getCollapseTarget:a(e=>{const t=e.id,i=m(t);return i?.hasParent()?i.parent().item:n.visibleRoot?null:x("root")},"getCollapseTarget"),isExpanded:a(e=>d[e.id]===f.EXPANDED,"isExpanded"),isExpandable:a(e=>R(e),"isExpandable"),isFocusable:a(e=>!e.disabled,"isFocusable"),onExpand:a(e=>{E=!0,_(e.id);},"onExpand"),onCollapse:a(e=>{S(e.id);},"onCollapse"),onCollapseAll:a(()=>{q(!0),E=!0;},"onCollapseAll")}));}a(Le,"createNavigationManager");function oe(e,t,i,l){var o,s,c=$UI.store[h(t.id)]!=null,u=he(t),r=$lib.isEmpty(t.subGroupId)?null:n.id+"_"+t.subGroupId,v=t.cssClassSubGroup?t.cssClassSubGroup:n.cssClassSubGroup||b.SUBGROUP,y=$lib.isEmpty(t.expandable)?n.expandable:t.expandable,g;c&&ae(t),$lib.isEmpty(t.id)&&(t.id=$lib.format("{0}{1}",i?i.id+"_":"",$lib.guid())),t.type=t.type||M.COMMANDBUTTON,t.selectable=$lib.isEmpty(t.selectable)&&(!R(t)||t.type!=M.COMMANDBUTTON||t.href)?!0:t.selectable,r&&(!u||u.id!=r)&&(u=$lib.element(e,"","",null,{id:r,class:v})),o=Pe(u||e,t,i,l),n.events.onPreRenderItem.fire(n,$(t)),R(t)||$lib.addClass(o.element,n.cssClassItemChildless||b.ITEMCHILDLESS),R(t)&&(pe(t),s=C(t.id),t.__static=s.__static,t.__static&&$lib.addClass(o.element,"static")),Be(o,t,i),t.selected?(t.selected=!1,J(t.id)):t.selectedChild&&$lib.addClass(o.element,b.SELECTEDCHILD),t.disabled&&xe(t.id,!0),t.itemList&&t.itemList.length>0&&(g=(y==!1||t.expanded)&&(i||n.visibleRoot),g&&K.push(t.id),(g||!n.renderOnExpand)&&w(t.itemList,t)),n.events.onPostRenderItem.fire(n,$(t));}a(oe,"drawItem");function Pe(e,t,i,l){var o=h(t.id),s=t.templateId||n.itemTemplateId||"Default",c=document.createElement("div"),u=t.buttonId||n.buttonId,r=$UI.createComponent(componyx.UI.Button,{id:o,containerElement:e}),v=$lib.isEmpty(t.expandDirection)?be(n.visibleRoot&&!i):t.expandDirection,y=$lib.isEmpty(t.expandOnSelect)?n.expandOnSelect:t.expandOnSelect,g=`${b.ITEM} ${(t.cssClass||n.cssClassItem||"").replace(/\s\s+/g," ")}`;return t.selectable?g+=" selectable":!t.command&&!t.href&&(g+=" no-action"),r.clone($UI.store[u],n),r.transparent=!0,r.split=r.split==!0?!0:!y&&!t.isCategory&&t.expandable!=!1&&t.selectable&&R(t),r.cssClass=g,r.cssClassIcon=t.cssClassIcon||n.cssClassItemIcon||"",r.style=t.style,r.expandDirection=v,r.contentAlign=0,r.iconAlign=0,r.hasIcon=t.hasIcon,r.iconURL=t.iconURL,r.selected=t.selected,r.disabled=t.disabled,r.tabIndex=-1,r.keyboardExpand=!1,r.type=t.type||0,r.renderId=!1,r.target=t.target,r.href=t.href,r.title=t.title,r.events.onPostRender.priorityAdd(function(G,B){let Oe=i?i.itemList:n.itemList;if(!$lib.isEmpty(G)&&Oe[G+1]){let Qe=$UI.store[h(Oe[G+1].id)];B.move(e,Qe.element);}let je=C(i?.id),Ae=je.__static?"treeitem":"menuitem";se(B.getCommandButton(),Ae),B.split&&se(B.getExpandButton(),Ae),Le(),setTimeout(()=>{n.isReady.apply(n);});},[l]),r.events.onSelect.priorityAdd(function(G){J(G);},[t.id]),r.events.onDeselect.priorityAdd(function(G){j(G);},[t.id]),r.__menuItem=t,R(t)&&!t.isCategory&&(r.expandCommand=function(){}),t.type==M.RADIOBUTTON?(r.radioGroupId=$lib.isEmpty(t.radioGroupId)?i?h(i.id):n.id:n.id+"_"+t.radioGroupId,r.hasIcon=!0):t.type==M.CHECKBUTTON&&(r.hasIcon=!0),n.applyTemplate(c,s,t),r.setContentTemplate($lib.extract(c)),r.showing=!0,r.render(),r}a(Pe,"createButton");function pe(e){var t=e?h(e.id+"_Box"):n.id+"_Box",i=!e&&!$lib.isEmpty(n.rootItemGroupBoxId)?n.rootItemGroupBoxId:n.itemGroupBoxId,l=e&&e.itemGroupStyle||n.itemGroupStyle,o=$UI.createComponent(componyx.UI.Box,{id:t,containerElement:n.element}),s;return e&&!$lib.isEmpty(e.itemGroupBoxId)&&(i=e.itemGroupBoxId),n.events.onPreRenderItemGroup.fire(n,$(e)),e?s=e.cssClassItemGroup||n.cssClassItemGroup||b.ITEMGROUP:(s=n.cssClassItemGroup||b.ITEMGROUP,s+=" "+(n.cssClassItemGroupRoot||b.ITEMGROUPROOT),n.horizontalRoot&&(s+=" "+(n.cssClassItemGroupHorizontalRoot||b.HORIZONTALROOT),$lib.addClass(n.element,b.HORIZONTALROOT)),n.visibleRoot&&(s+=" "+(n.cssClassItemGroupVisibleRoot||b.ITEMGROUPVISIBLEROOT),o.autoFit=!1)),o.clone($UI.store[i],n),l&&(o.style=l),o.theme=$base.static.ThemeOption.NONE,o.cssClass+=o.cssClass?" "+s:s,o.modal=o.draggable=!1,o.contentTag="nav",o.events.onPostRender.priorityAdd(function(c,u){u.__static=Ge(u);let r=u.__static?"tree":"menu";if(se(u.contentElement,r),u.__static){if(c&&!c.isCategory){let y=$UI.store[h(c.id)].element;u.move(y.parentNode,y.nextSibling);}u.autoPosition=0,u.autoFit=!1,$lib.addClass(u.element,b.ITEMGROUPSTATIC),u.animation.showDirection=u.animation.hideDirection="down";}else {if(c){let v=$UI.store[h(c.id)];fe(v.getCommandButton()),v.split&&fe(v.getExpandButton());}we(u,c),H=!0;}n.events.onPostRenderItemGroup.fire(n,$(c)),n.isReady.apply(n);},[e]),!e&&n.visibleRoot&&(o.animation.showType==null&&(o.animation.showType=0),o.animation.hideType==null&&(o.animation.hideType=0),o.events.onShowComplete.priorityAdd(re,[null]),d.root==f.EXPANDED),o.render(),o.contentElement}a(pe,"createItemGroup");function fe(e){e.setAttribute("aria-haspopup","menu");}a(fe,"setAriaPopupAttr");function se(e,t){e.setAttribute("role",t);}a(se,"setAriaRoleAttr");function Ne(e){var t=new componyx.UI.Menu.Item,i=Se(e.id),l=i?i.id:null;return t.text=i?i.text:n.mainCategoryLabel,t.hasChildItems=t.expandable=!1,t.hasIcon=!0,t.cssClass=b.CATEGORY_NAVIGATOR+(i?"":" root"),t.command=function(){Q(l,!0),E=!1;},t.__nav=!0,t}a(Ne,"createCategoryNavigator");function Se(e){for(var t=m(e),i=t.hasParent()?t.parent().item:null;i;){if(i.isCategory)return i;t.hasParent()?i=t.parent().item:i=null;}return i}a(Se,"getParentCategoryItem");function ae(e){var t;$lib.each(e.itemList,function(l,o){ae(l);});var i=C(e.id);$UI.store[h(e.id)]&&$UI.store[h(e.id)].destroy(),i&&(i.destroy(),i.showing=!1),t=he(e),t&&!t.childNodes.length&&$lib.remove(t),delete d[e.id];}a(ae,"removeItem");function Ge(e){var t=e.element;t.classList.remove("hidden");let i="absolute fixed".indexOf($lib.styleValue(t,"position",!0))==-1;return t.classList.add("hidden"),i}a(Ge,"isStaticBox");function C(e){return $lib.isEmpty(e)||e=="root"?$UI.store[n.id+"_Box"]:$UI.store[h(e+"_Box")]}a(C,"getItemBox");function he(e){var t=e.subGroupId;return $lib.isEmpty(t)?null:$lib($lib.format("#{0}_{1}",n.id,t))}a(he,"getSubGroup");function h(e){return n.id+"_"+e}a(h,"getItemId");function x(e){if(e&&typeof e!="string")return e;if(e&&e!="root")return $UI.store[h(e)]?.__menuItem?$UI.store[h(e)].__menuItem:m(e).item;let t=new componyx.UI.Menu.Item;return t.id="root",t.hasChildItems=!0,t.__lastCollapse=!0,t.__static=C(t.id).__static,t}a(x,"getItem");function m(e){if(e=="root")return null;let t=$lib.path(n.itemList,"itemList",function(i){return i.id===e},!0);return t?t.create():null}a(m,"loadItem");function be(e){return e?n.rootExpandDirection!=null?n.rootExpandDirection:n.horizontalRoot?le.DOWN:le.RIGHT:n.expandDirection!=null?n.expandDirection:le.RIGHT}a(be,"defaultDirection");function $(e){return {item:e||null,itemElement:e?$lib("#"+h(e.id)):null,event:$lib.event}}a($,"eventArgs");function Ue(){$lib.on(document,"pointerup",Z,null,n),$lib.on(document,"pointerup",Ce),$lib.on(n.element,"pointerup",function(){D=!1,n.visibleRoot||(E=!1);}),$lib.on(n.element,"focus",Me);}a(Ue,"bindGlobalEvents");function Me(){if(!n.navigationManager)return;const e=n.element.ownerDocument.activeElement;if(n.element.contains(e)&&e!==n.element)return;let t=n.itemList[0],i=p?m(p):null;i!=null&&(t=i.firstChild()?.item||t),n.navigationManager.setFocus(t.id);}a(Me,"focus");function Ce(){D=!0,n.visibleRoot||(E=!0);}a(Ce,"allowance");function we(e,t){n.expandOnClick==P.NEVER&&($lib.on(e.element,"pointerenter",function(){var i=t?t.id:"root";d[i]<f.COLLAPSING&&_(i);},null,n),$lib.on(e.element,"pointerleave",function(){Z();},null,n));}a(we,"bindBoxEvents");function Be(e,t,i){t.id;if(e.events.onClick.priorityAdd((s,c)=>{n.navigationManager.setFocusFromEvent(t,c);}),t.type==M.COMMANDBUTTON&&e.events.onCommandClick.priorityAdd(function(s,c){J(t.id);}),t.expandable==!1)return;let o=n.visibleRoot&&(!i||i.isCategory);if(t.__static||!R(t.id)||n.expandOnClick==P.ALWAYS||n.expandOnClick==P.ROOT&&o){let s=function(c){He(c.id);}.bind(n,t);e.split?e.events.onExpandClick.priorityAdd(s):e.events.onCommandClick.priorityAdd(s);}e.events.onCommandClick.priorityAdd(function(s){if(X=!1,Xe(s),ne){ne=null;return}var c=$lib.isEmpty(s.expandOnSelect)?n.expandOnSelect:s.expandOnSelect;(!e.split||c&&s.selectable)&&_(s.id);}.bind(n,t)),e.split&&e.events.onExpandClick.priorityAdd(function(s){X=!1,_(s.id);}.bind(n,t)),!t.__static&&n.expandOnClick!=P.ALWAYS&&e.events.onPointerEnter.priorityAdd(function(s){H&&(X=!0,_(s.id));}.bind(n,t));}a(Be,"bindItemEvents");function Xe(e){var t=$lib.isEmpty(e.collapseAllOnSelect)?n.collapseAllOnSelect:e.collapseAllOnSelect;e.selectable&&!e.__static&&t&&(n.cancelExpand(),_(e.id,!0),q());}a(Xe,"collapseOnSelect");function He(e){var t=x(e);t.__static||!R(e)?E=!0:(E&&S(p),E=!E);}a(He,"expandItemClick");function me(){var e=O;T=O=null,_(e,!0);}a(me,"expandCachedItem");function _(e,t){var i=e!="root"?m(e):null,l=e=="root"?x(e):i.item,o=i&&i.hasParent()?i.parent().item.id:"root",s=C(e),c=t||l.__static?0:$lib.isEmpty(l.expandDelay)?n.expandDelay:l.expandDelay;if(!(!E||l.disabled||e==O||e!="root"&&d[o]>=f.COLLAPSING)){if(l.isCategory){X||Q(e,null,t);return}if(clearTimeout(k),W=!1,s&&s.showing&&l.__static){W=!0,p=e,S(e);return}else s&&!s.showing&&!$lib.isEmpty(p)&&(e==p||V(p,e))&&(p=null);if(!((!s||s.showing)&&!$lib.isEmpty(p)&&(e==p||V(p,e)))){if(ie=null,$lib.event){const u=$lib.clientX($lib.event),r=$lib.clientY($lib.event);(!$lib.isEmpty(u)||!$lib.isEmpty(r))&&(ie={clientX:u,clientY:r});}c?k=setTimeout(function(){Ee(e);},c):Ee(e);}}}a(_,"expand");function Ee(e){var t=e==="root",i=t?null:m(e),l=t?x(e):i.item,o=i&&i.hasParent()?i.parent().item.id:null,s=ze(e,o),c=s||!o&&d.root===void 0,u=p,r=C(e),v=$UI.store[h(e)],y=r?r.contentElement:null,g=$lib.isEmpty(l.expandDirection)?be(c):l.expandDirection;if(clearTimeout(k),s&&!n.visibleRoot&&(E=!0,$lib.event&&$lib.event.type=="click"&&(D=!1)),o&&d[o]==f.EXPANDING||!n.visibleRoot&&d.root==f.EXPANDING){O=l.id,T=!0;return}if(R(l)&&(!y||y.childNodes.length==0)){T=!0,O=l.id,$lib.isEmpty(l.itemList)?de(l):w(l.itemList,l);return}if(p=O=null,T=!1,(l.__static||s&&!n.visibleRoot||!o&&n.visibleRoot||!o&&d.root===f.EXPANDED||d[o]===f.EXPANDED)&&(p=l.id,R(l)&&(!d[l.id]||d[l.id]>=f.COLLAPSING)?d[l.id]=f.EXPANDING:d[l.id]=f.EXPANDED),u!=p&&!V(p,u)&&(!l.__static||n.singleExpand)&&S(u),d[l.id]==f.EXPANDING){if(r.stopAnimation(),r.autoInvertFit=!1,r.autoResizeFit=!1,l.__static)v&&($lib.addClass(v.element,b.EXPANDED),ve(e));else {let B=s?A:$UI.store[h(e)]?.element;B?(r.autoInvertFit=!0,r.autoResizeFit=!0,r.expander=B,r.expandDirection=g,r.autoPosition=componyx.UI.Box.AutoPositionOption.EXPAND):r.autoPosition=componyx.UI.Box.AutoPositionOption.POINTER;}r.events.onShowComplete.remove(re),r.events.onHideComplete.remove(ue),r.events.onShowComplete.priorityAdd(re,[l.id]),r.events.onHideComplete.priorityAdd(ue,[l.id,r.animation.hideType]),r.show(!1,ie),n.events.onItemExpand.fire(n,$(l));}}a(Ee,"expandItem");function re(e){let t=x(e),i=$UI.store[h(e)],l,o;d[t.id]==f.EXPANDING&&(setTimeout(()=>{D=!0;}),d[t.id]=f.EXPANDED,t.expanded=!0,i?i.element.setAttribute("aria-expanded","true"):A&&A.setAttribute("aria-expanded","true"),n.navigationManager.expandComplete(e),n.events.onItemExpandComplete.fire(n,$(t)),T&&(l=m(O),l&&(o=l.hasParent()?l.parent().item.id:null),(t.id=="root"||t.id==o)&&me()));}a(re,"expandItemComplete");function ke(){var e=!1;return $lib.each(d,function(t){return e=t===f.COLLAPSING,!e}),e}a(ke,"isCollapsing");function Z(e,t){!D||!H||(O=null,T=!1,clearTimeout(k),p&&(k=setTimeout(function(i){q(i);}.bind(n,t),n.collapseDelay)));}a(Z,"collapseAllDelayed");function q(e=!1){if(!H)return;I=e,O=null,T=!1;let t=p;if(n.expandOnClick<=P.ALWAYS&&n.visibleRoot&&t=="root"){E=!1;return}p=null,t=Ye(t),t&&S(t),I=!1;}a(q,"collapseAll");function Ye(e){for(;e;){let t=d[e];if(t===f.EXPANDING||t===f.EXPANDED)return e;const i=e!=="root"?m(e):null;e=i&&i.hasParent()?i.parent().item.id:null;}return null}a(Ye,"findValidCollapseStart");function S(e){e&&(e!="root"&&(e=Ve(e,p?n.collapseType:n.collapseAllType)),e&&Y(e));}a(S,"collapse");function Ve(e,t){if(t==N.CASCADE)return e;for(var i=m(e),l=i.item,o;l;)o=l.__lastCollapse=ce(l),Y(l.id),!o&&i.hasParent()?l=i.parent().item:l=null;}a(Ve,"concurrentCollapse");function Y(e,t){if(!$lib.isEmpty(e)){var i=x(e),l=p?n.collapseType==N.CASCADE:!1,o=C(e),s=i.__lastCollapse,c=n.navigationManager.isCollapsing(e);if(t=$lib.isEmpty(t)?!!X:!!t,$lib.isEmpty(s)&&(s=i.__lastCollapse=ce(i)),Ke(i,s,t,c))s&&(X=!1),o&&Fe(s)&&(o.animation.hideType=componyx.UI.Box.AnimationTypeOption.NONE),d[i.id]=f.COLLAPSING,i.expanded=!1,o?(o.__static&&ve(e,!0),o.__pointerEnterEvent=t,o.hide(),n.events.onItemCollapse.fire(n,$(i))):ue(e);else if(!s&&l&&i.__static){var u=e!="root"?m(e):null,r=u&&u.hasParent()?u.parent().item.id:null;Y(r);}}}a(Y,"collapseItem");function Fe(e){if(I)return !0;var t=p?n.collapseType:n.collapseAllType;return t==N.CASCADE?!1:t>N.SINGLE?!0:p==null?!1:!e}a(Fe,"isInstantCollapse");function ue(e,t){let i=e!="root"?m(e):null,l=e=="root"?x(e):i.item,o=C(e),s=ce(l),c=p?n.collapseType:n.collapseAllType,u=i&&i.hasParent()?i.parent().item.id:null,r=$UI.store[h(e)],v=null,y;d[l.id]==f.COLLAPSING&&(d[l.id]=f.COLLAPSED,n.navigationManager.collapseComplete(e),r?($lib.removeClass(r.element,b.EXPANDED),r.element.setAttribute("aria-expanded","false")):A&&A.setAttribute("aria-expanded","false"),o&&(o.animation.hideType!=t&&(o.animation.hideType=t),y=o.__pointerEnterEvent,delete o.__pointerEnterEvent,n.events.onItemCollapseComplete.fire(n,$(l))),c!=N.CASCADE&&l.__lastCollapse&&!s&&u&&(delete l.__lastCollapse,S(u)),c==N.CASCADE&&!s&&u!=null?Y(u,y):u==null&&!n.visibleRoot&&(v=We())?Y(v,y):u==null&&n.visibleRoot&&n.expandOnClick<=P.ALWAYS&&!p&&(E=!1),o&&l.__lastCollapse&&(delete l.__lastCollapse,n.events.onLastItemCollapseComplete.fire(n,$(l))),I=!1);}a(ue,"collapseItemComplete");function ze(e,t){return n.visibleRoot?!1:e==="root"?!0:t?d[t]===void 0:d.root===void 0}a(ze,"isVirtualRootExpand");function We(){var e=null;return $lib.each(d,function(t,i){var l=m(i);if(t<=f.EXPANDED&&(i=="root"||!l.hasParent()))return e=i,!1}),e}a(We,"getLaunchItemId");function ce(e){if(e.isCategory||e.id=="root")return !0;if($lib.isEmpty(p)){var t=!0;return $lib.each(d,function(l,o){if(e.id!=o&&l<f.COLLAPSING)return t=!1}),t}var i=m(e.id);return i.hasParent()?W?e.id==p:(e=i.parent().item,e.id==p||V(p,e.id)):!0}a(ce,"isLastCollapsible");function Ke(e,t,i,l){let o=n.singleExpand;if(l)return !0;if(e.expandable==!1||e.isCategory||d[e.id]>=f.COLLAPSING||e.id=="root"&&(n.visibleRoot||!$lib.isEmpty(p)))return !1;if(W)return !0;if(e.__static)return i?!1:!!(o&&!$lib.isEmpty(p)&&p!=e.id&&t);if(p==e.id)return !1;let s=!0;return $lib.each(d,function(c,u){return u!=e.id&&c<=f.COLLAPSING&&!e.__static&&(s=!V(u,e.id)),s}),s}a(Ke,"collapsible");function ve(e,t){var i=$UI.store[h(e)].element;$lib.removeClass(i,"right down"),$lib.addClass(i,t?"right":"down");}a(ve,"toggleButtonDirection");function V(e,t){if(e=="root")return !1;var i=m(e),l=!1;if(!i)return l;for(;i.hasParent()&&i.parent()&&!l;)l=i.item.id===t;return l}a(V,"inPath");function J(e){var t=x(e),i=$UI.store[h(e)],l=a(function(o){if(o.command=qe(o.command))return o.command(n,$(o))},"command");!t||t.disabled||(l(t),!t.__nav&&!t.selected&&t.selectable&&(t.type==M.COMMANDBUTTON?(L&&j(L),t.selected=!0,L=t.id,i.events.onSelect.disable(!0),i.select(),i.events.onSelect.enable(!0),$e(t,!0)):(t.selected=!0,i&&!i.selected&&(i.events.onSelect.disable(!0),i.select(),i.events.onSelect.enable(!0))),n.events.onItemSelect.fire(n,$(t))));}a(J,"selectItem");function j(e){var t=x(e),i=$UI.store[h(e)];!t||t.disabled||!t.selected||!t.selectable||(t.selected=!1,t.type==M.COMMANDBUTTON?(i.events.onDeselect.disable(!0),i.deselect(),i.events.onDeselect.enable(!0),L=null,$e(t,!1)):i.selected&&i.deselect(),n.events.onItemDeselect.fire(n,$(t)));}a(j,"deselectItem");function Q(e,t,i){var l=C(e),o,s=C(U),c=U;s!==l&&(!$lib.isEmpty(s.__hidingId)&&d[s.__hidingId]===f.COLLAPSING?C(s.__hidingId).hide(!0):d[U]===f.EXPANDING&&s.show(!0),U=e,ee(l,!0),ee(s,!0),$lib.isEmpty(e)||$lib.addClass(l.element,C().element.className),$lib.addClass(n.element,b.CATEGORY),o=$lib.element(n.element,"","",null,{class:b.CATEGORY_CONTAINER}),t?(l.move(o),s.move(o),l.events.onShowComplete.priorityAdd(ye,[e,o,s,c]),d[e]=f.EXPANDING,$lib.isEmpty(c)||(d[c]=f.COLLAPSING),l.show(i)):(s.move(o),l.move(o),d[e]=f.EXPANDED,l.__hidingId=c,l.show(!0),s.events.onHideComplete.priorityAdd(Ie,[c,o]),$lib.isEmpty(c)||(d[c]=f.COLLAPSING),s.hide(i)));}a(Q,"showCategory");function ee(e,t){var i=e.animation;t?(i.showType=i.hideType=3,$lib.addClass(e.element,b.CATEGORY),e.autoFit=!1):(i.showType=i.hideType=0,$lib.removeClass(e.element,b.CATEGORY),$lib.removeClass(n.element,b.CATEGORY));}a(ee,"setCategoryBoxDisplay");function ye(e,t,i,l){var o=C(e);$lib.isEmpty(l)||(d[l]=f.COLLAPSED),d[e]=f.EXPANDED,i.hide(!0),ee(o),$lib.unsurround(t),o.events.onShowComplete.remove(ye);}a(ye,"showCategoryComplete");function Ie(e,t){var i=C(e);ee(i),$lib.isEmpty(e)||($lib.removeClass(i.element,$lib.format("{0} {1} {2}",b.ITEMGROUPROOT,b.ITEMGROUPVISIBLEROOT,b.HORIZONTALROOT)),d[e]=f.COLLAPSED),$lib.unsurround(t),delete C(U).__hidingId,i.events.onHideComplete.remove(Ie);}a(Ie,"hideCategoryComplete");function xe(e,t){var i=x(e),l=$UI.store[h(e)];i&&(i.selected&&!t&&j(i.id),i.disabled=!0,l&&l.disable());}a(xe,"disableItem");function Ze(e){var t=x(e),i=$UI.store[h(e)];t&&(t.disabled=!1,i&&i.enable());}a(Ze,"enableItem");function qe(e){return $base.static.getMethod(e)}a(qe,"convertCommand");function $e(e,t){var i=m(e.id);if(i)for(;i.hasParent();){e=i.parent().item;var l=$UI.store[h(e.id)],o=l?l.element:null;t?(e.selectedChild=!0,$lib.addClass(o,b.SELECTEDCHILD)):(e.selectedChild=!1,$lib.removeClass(o,b.SELECTEDCHILD));}}a($e,"updateParents");function R(e){return !!e.hasChildItems||!$lib.isEmpty(e.itemList)}a(R,"hasChildItems");function Je(){$lib.each(n.store,e=>{$UI.store[e]&&delete $UI.store[e].__menuItem;}),$lib.off(document,"mouseup",Z),$lib.off(document,"mouseup",Ce),n.navigationManager?.destroy(),n.navigationManager=null,K=[],d={},H=!1,U=T=L=O=p=A=null,D=E=!0,I=!1;}a(Je,"dispose");},"Menu"),componyx.UI.Menu.prototype=Object.create($base.methods),componyx.UI.Menu.prototype.constructor=componyx.UI.Menu,componyx.UI.Menu.ExpandDirectionOption={DOWN:0,RIGHT:1,UP:2,LEFT:3,getName:a(function(z){return $base.static.getKeyByValue(this,z).toLowerCase()},"getName")},componyx.UI.Menu.TypeOption={COMMANDBUTTON:0,CHECKBUTTON:1,RADIOBUTTON:2},componyx.UI.Menu.ExpandOnClickOption={ROOT:0,ALWAYS:1,NEVER:2},componyx.UI.Menu.CollapseTypeOption={CASCADE:0,SINGLE:1,CONCURRENT:2,INSTANT:3},componyx.UI.Menu.Item=function(z){this.cssClassItemGroup="",this.cssClassSubGroup="",this.cssClassIcon="",this.style="",this.itemGroupStyle="",this.hasIcon=!1,this.iconURL=null,this.type=componyx.UI.Menu.TypeOption.COMMANDBUTTON,this.href=null,this.target=null,this.command=null,this.radioGroupId="",this.subGroupId=null,this.expandDirection=null,this.isCategory=null,this.expandOnSelect=null,this.collapseAllOnSelect=null,this.expandable=!0,this.expanded=!1,this.selectable=null,this.selectedChild=!1,this.hasChildItems=!1,this.expandDelay=null,this.itemGroupBoxId=null,this.buttonId=null,this.itemList=[],$base.static.Item.call(this,z);};})();
229
+ })();
230
+
231
+
232
+ (async function(window){var q=Object.defineProperty;var l=(N,g)=>q(N,"name",{value:g,configurable:!0});(function(N){componyx.UI.NumericBox=l(function(w,V){var e=this,f=null,s,y="",m="",b=!1,E;$base.static.ThemeOption;var C=componyx.UI.NumericBox.RoundingOption,d={DISABLED:"disabled",READONLY:"read-only",BUTTONS:"buttons",BUTTONHOLDER:"button-holder",BUTTON:"button",PLUS:"plus",MINUS:"minus",VERTICAL:"vertical"};this.cssClassDisabled=null,this.cssClassReadOnly=null,this.cssClassButtonHolder=null,this.cssClassButton=null,this.cssClassPlus=null,this.cssClassMinus=null,this.disabled=!1,this.readOnly=!1,this.keyboardNavigation=!0,this.showButtons=!0,this.verticalButtons=!0,this.focusableButtons=!0,this.minValue=null,this.maxValue=null,this.width="",this.incrementalValue=1,this.placeholder=null,this.decimalSeparator=".",this.groupSeparator=null,this.precision=0,this.rounding=C.ROUND,this.leadingZeros=!1,this.trailingZeros=!0,this.digitPadLeftValue=null,this.selectOnFocus=!1,this.focusGroupId=null,this.focusGroupFirst=!1,this.name="",this.value=null,this.buttonId=null,this.tooltipManagerId=null,this.tooltipId=null,this.inputId=null;function D(t){Object.assign(this,t),this.onFocus=$base.static.createEvent("onFocus"),this.onBlur=$base.static.createEvent("onBlur"),this.onInputFocus=$base.static.createEvent("onInputFocus"),this.onInputBlur=$base.static.createEvent("onInputBlur"),this.onChange=$base.static.createEvent("onChange"),this.onChanged=$base.static.createEvent("onChanged"),this.onIncrement=$base.static.createEvent("onIncrement"),this.onDecrement=$base.static.createEvent("onDecrement");}l(D,"NumericBoxEvents"),this.events=new D(this.events),$base.Component.apply(this,[w,V]),this.setPlaceholder=function(t){s.placeholder=t,e.placeholder=t;},this.select=function(){K();},this.focus=function(){s.focus();},this.getInput=function(){return s},this.getValue=function(){return s.value},this.getNumberValue=function(){let t=p();if($lib.isEmpty(t))return null;if(Math.max(t.lastIndexOf(","),t.lastIndexOf("."))===-1)return Number(t);const i=t.split(/[,\.]/),o=i.at(-1).length,u=i.join("");return +(u.slice(0,-o)+"."+u.slice(-o))},this.setValue=function(t,n){$lib.isEmpty(t)&&(t=""),v(t),n!==!1?a(!1,!1,!1):m=y=t;},this.reset=function(t){v(e.value),t!==!1?a(!1,!1,!1):m=y=e.value;},this.clear=function(t){v(""),t!==!1?a(!1,!1,!1):m=y="";},this.increment=function(){$(!0);},this.decrement=function(){x(!0);},this.render=function(){if(e.renderState!=$base.static.RenderState.RENDERING){$base.methods.render.call(e,F,"numeric-box",!1);return}G();},this.destroy=function(...t){$base.methods.destroy.call(this,...t),Y();};function F(){return ["NumericBox",["Button"]]}l(F,"preRender");function G(){let t=document.createElement("div"),n=e.name,i;s=e.createSyncedInput(e.inputId,function(){e.setValue(this.value);},!1),e.inputId&&(s.disabled&&(e.disabled=!0),s.readOnly&&(e.readOnly=!0)),i=e.value||s.value,$lib.isEmpty(i)||v(i),s.className=s.style.cssText="",s.type="text",s.setAttribute("inputmode","numeric"),s.setAttribute("pattern","[0-9]*"),s.readOnly=e.readOnly||!1,s.disabled=e.disabled||!1,s.placeholder=e.placeholder||"",e.width&&(e.element.style.width=$lib.unit(e.width)),n&&s.setAttribute("name",n),s.setAttribute("autocomplete","off"),e.element.appendChild(s),e.disabled&&$lib.addClass(e.element,e.cssClassDisabled||d.DISABLED),e.readOnly&&$lib.addClass(e.element,e.cssClassReadOnly||d.READONLY),e.showButtons&&($lib.addClass(e.element,d.BUTTONS),T(t),S(t),t.className=e.cssClassButtonHolder||d.BUTTONHOLDER,e.element.appendChild(t),e.verticalButtons&&$lib.addClass(t,d.VERTICAL)),$lib.isEmpty(e.focusGroupId)||(componyx.UI.NumericBox.FocusGroups[e.focusGroupId]||(componyx.UI.NumericBox.FocusGroups[e.focusGroupId]=[]),componyx.UI.NumericBox.FocusGroups[e.focusGroupId].push(e)),e.tooltipManagerId&&e.tooltipId&&$UI.store[e.tooltipManagerId].addTrigger(s,e.tooltipId),y=m=s.value,A(s),$base.methods.postRender.call(e);}l(G,"draw");function S(t){var n=O(t,e.id+"_Min");n.cssClass+=" "+(e.cssClassMinus||d.MINUS),e.disabled||(n.events.onPointerDown.priorityAdd(function(i,o){b=!0,H(o.event);}),n.events.onClick.priorityAdd(function(i,o){b||(x(),a()),b=!1;})),n.show();}l(S,"createMinusButton");function T(t){var n=O(t,e.id+"_Plus");n.cssClass+=" "+(e.cssClassPlus||d.PLUS),e.disabled||(n.events.onPointerDown.priorityAdd(function(i,o){b=!0,P();}),n.events.onClick.priorityAdd(function(i,o){b||($(),a()),b=!1;})),n.show();}l(T,"createPlusButton");function O(t,n){var i=$UI.createComponent(componyx.UI.Button,{id:n,containerElement:t});return i.transparentBorder=i.primary=!1,i.cssClass=e.cssClassButton||d.BUTTON,i.clone($UI.store[e.buttonId],e),i.disabled=e.disabled,i.delegateFocusEvents(e),e.focusableButtons||(i.tabIndex=-1),i}l(O,"createButton");function A(t){!e.readOnly&&!e.disabled&&($lib.on(t,"keydown",L),$lib.on(t,"input",_),e.keyboardNavigation&&($lib.on(t,"keydown",M),$lib.on(t,"keyup",k))),$lib.on(t,"blur",U),$lib.on(document,"pointerup",h),$lib.on(document,"pointerdown",R),$lib.on(t,"focus",function(n){componyx.UI.NumericBox.FocusGroupActive[e.focusGroupId]=e,!(e.readOnly||e.disabled)&&e.selectOnFocus&&(E=setTimeout(function(){$lib.selectTextRange(t);},0)),e.events.onInputFocus.fire(e,{event:$lib.event});}),$lib.on(t,"focus",e.onFocus,e,e);}l(A,"bindEvents");function L(){var t=$lib.event,n=t.key,i=e.decimalSeparator,o=i==n,u=s.value;if(n=="Enter"){U();return}if(" End Home ArrowLeft ArrowRight ArrowUp ArrowDown Delete Backspace Tab ".indexOf(" "+n+" ")>-1)return !0;(o&&(!e.precision||u.indexOf(o)>-1)||!o&&n.match(/[0-9]/)==null)&&t.preventDefault();}l(L,"validateInput");function _(){let t=e.decimalSeparator;s.__value=s.value.replace(t,"");}l(_,"acceptInput");function k(){a(!0);}l(k,"checkValueChange");function M(){var t=$lib.event,n=t.key;n=="ArrowUp"?$():n=="ArrowDown"&&x();}l(M,"navigate");function a(t=!1,n=!1,i=!0){var o=$lib.event,u=s,c=o?o.key:null;c!="Tab"&&(t&&m!=u.value?(m=u.value,e.events.onChange.fire(e,{value:p(),event:$lib.event,incremental:n})):!t&&y!=u.value&&(y=m=u.value,e.events.onChanged.fire(e,{value:p(),event:$lib.event}),i&&$lib.fireEvent(u,"change",!0,!0)));}l(a,"valueChanged");function U(){let t=p();clearTimeout(E),v(t),a(!1,!1),e.events.onInputBlur.fire(e,{event:$lib.event}),e.onBlur.call(e);}l(U,"inputBlur");function P(){h(),$(),f=setTimeout(function(){f=setInterval(function(){e.renderState===$base.static.RenderState.RENDERED?$():h();},50);},500);}l(P,"holdIncrement");function $(t){if(!t){let I=B();if(I!=null&&I!=e){I.increment();return}}let n=p(),i=n,o=e.incrementalValue,u=e.minValue,c=e.maxValue;$lib.isEmpty(n)?r(u)?n=u:r(o)?!r(c)||o<=c?n=o:n=c:r(c)?n=c:n=0:r(n)&&(n=parseFloat(n)+o),v(n,!0),e.events.onIncrement.fire(e,{value:p(),previousValue:i,event:$lib.event}),a(!0,!0);}l($,"increment");function H(){h(),x(),f=setTimeout(function(){f=setInterval(function(){e.renderState===$base.static.RenderState.RENDERED?x():h();},50);},500);}l(H,"holdDecrement");function x(t){if(!t){let I=B();if(I!=null&&I!=e){I.decrement();return}}let n=p(),i=n,o=e.incrementalValue,u=e.minValue,c=e.maxValue;$lib.isEmpty(n)?r(c)?n=c:r(o)?!r(u)||o>=u?n=o:n=u:r(u)?n=u:n=0:r(n)&&(n=parseFloat(n)-o),v(n,!0),e.events.onDecrement.fire(e,{value:p(),previousValue:i,event:$lib.event}),a(!0,!0);}l(x,"decrement");function R(){b||h();}l(R,"documentStop");function h(){if(f&&e.renderState===$base.static.RenderState.RENDERED){var t=B();t?.element?.isConnected?t.focus():s?.element?.isConnected&&s.focus(),a();}clearInterval(f),clearTimeout(f),f=null;}l(h,"stopHold");function B(){if($lib.isEmpty(e.focusGroupId))return null;var t=componyx.UI.NumericBox.FocusGroupActive[e.focusGroupId];return t||Z()}l(B,"getFocusedBox");function Z(){var t=componyx.UI.NumericBox.FocusGroups[e.focusGroupId],n=$lib.indexOf(t,function(i){return i.focusGroupFirst});return n>-1?t[n]:t[0]}l(Z,"getFocusGroupFirst");function p(){let t=s.value,n=e.groupSeparator;return n&&(n=$lib.escapeRegExp(n),t=t.replace(new RegExp(n,"g"),"")),t.replace(e.decimalSeparator,".")}l(p,"getValue");function r(t){return !$lib.isEmpty(t)&&!isNaN(t)}l(r,"isNumber");function j(t){return $lib.formatNumber(t,e.leadingZeros,e.trailingZeros,e.precision,C.getName(e.rounding),e.decimalSeparator,e.groupSeparator,e.digitPadLeftValue)}l(j,"formatNumber");function v(t,n){var i=e.minValue,o=e.maxValue,u=e.incrementalValue;r(t)&&(u>1&&(t=Math.round(t/u)*u),i!=null&&t<i?t=n&&o!=null?o:i:o!=null&&t>o&&(t=n&&i!=null?i:o),t=j(t)),s.value!=t&&s.__setValue(t);}l(v,"setValue");function K(){var t=s;t.select();}l(K,"select");function Y(){var t=componyx.UI.NumericBox.FocusGroups[e.focusGroupId]||null,n=componyx.UI.NumericBox.FocusGroupActive,i=-1;$lib.isEmpty(e.focusGroupId)||(n[e.focusGroupId]===e&&delete n[e.focusGroupId],t&&(i=$lib.indexOf(t,function(o){return o===e})),i>-1&&t.splice(i,1)),$lib.off(document,"pointerup",h),$lib.off(document,"pointerdown",R);}l(Y,"dispose");},"NumericBox"),componyx.UI.NumericBox.prototype=Object.create($base.methods),componyx.UI.NumericBox.prototype.constructor=componyx.UI.NumericBox,componyx.UI.NumericBox.FocusGroups={},componyx.UI.NumericBox.FocusGroupActive={},componyx.UI.NumericBox.RoundingOption={NONE:0,ROUND:1,FLOOR:2,CEIL:3,getName:l(function(g){return $base.static.getKeyByValue(this,g).toLowerCase()},"getName")};})();
233
+ })();
234
+
235
+
236
+ (async function(window){var r=Object.defineProperty;var o=(n,a)=>r(n,"name",{value:a,configurable:!0});(function(){class n extends componyx.UI.base.WebComponent{static{o(this,"PanelBar");}classOption={PANEL:"panel",ICON:"icon",TITLE:"title",CONTENT:"content",EXPANDED:"expanded",DISABLED:"disabled"};constructor(e,t){super(e,t),this.expandOnPointerEnter=!1,this.multiExpand=!1,this.panels=[];function s(i){Object.assign(this,i),this.onPanelExpand=$base.static.createEvent("onPanelExpand"),this.onPanelCollapse=$base.static.createEvent("onPanelCollapse");}o(s,"PanelBarEvents"),this.events=new s(this.events);}getPanelByElement(e){return this.panels.find(t=>t.element===e)}getPanelById(e){return this.panels.find(t=>t.id===e)}updatePanelTitle(e,t){let s=e instanceof HTMLElement?e:typeof e=="string"?this.getPanelById(e).element:e.element,i=this.#e(this.classOption.TITLE),l=s.querySelector(`header .${i}`);typeof t=="string"?l.innerHTML=t:l.appendChild(t),e.title=t;}showPanel(e){let t=e instanceof HTMLElement?e:typeof e=="string"?this.getPanelById(e).element:e.element;t.style.display="";}hidePanel(e){let t=e instanceof HTMLElement?e:typeof e=="string"?this.getPanelById(e).element:e.element;t.style.display="none";}toggleExpandPanel(e){const t=e instanceof HTMLElement?e:typeof e=="string"?this.getPanelById(e).element:e.element,s=this.#e(this.classOption.EXPANDED);t.classList.contains(s)?this.collapsePanel(e):this.expandPanel(e);}expandPanel(e,t=!1){const s=e instanceof HTMLElement?e:typeof e=="string"?this.getPanelById(e).element:e.element,i=this.#e(this.classOption.EXPANDED);e=this.getPanelByElement(s),this.multiExpand||this.collapseAllPanels(t),t&&(s.style.transition="none",s.offsetHeight),s.classList.add(i),this.events.onPanelExpand.fire(this,{panel:e}),e.expanded=!0,t&&requestAnimationFrame(()=>{s.style.transition="";});}collapsePanel(e,t=!1){const s=e instanceof HTMLElement?e:typeof e=="string"?this.getPanelById(e).element:e.element,i=this.#e(this.classOption.EXPANDED);t&&(s.style.transition="none",s.offsetHeight),e=this.getPanelByElement(s),s.classList.remove(i),this.events.onPanelCollapse.fire(this,{panel:e}),e.expanded=!1,t&&requestAnimationFrame(()=>{s.style.transition="";});}disablePanel(e){const t=e instanceof HTMLElement?e:typeof e=="string"?this.getPanelById(e).element:e.element,s=this.#e(this.classOption.DISABLED);t.classList.add(s),t.inert=!0,this.getPanelByElement(t).disabled=!0;}enablePanel(e){const t=e instanceof HTMLElement?e:typeof e=="string"?this.getPanelById(e).element:e.element,s=this.#e(this.classOption.DISABLED);t.classList.remove(s),t.inert=!1,this.getPanelByElement(t).disabled=!1;}collapseAllPanels(e=!1){const t=this.#e(this.classOption.EXPANDED);this.panels.forEach(s=>{const i=s.element;i&&i.classList.contains(t)&&this.collapsePanel(i,e);});}enableAllPanels(){this.panels.forEach(e=>{this.enablePanel(e);});}disableAllPanels(){this.panels.forEach(e=>{this.disablePanel(e);});}showAllPanels(){this.panels.forEach(e=>{this.showPanel(e);});}hideAllPanels(){this.panels.forEach(e=>{this.hidePanel(e);});}render(){if(this.renderState!=$base.static.RenderState.RENDERING){super.render(this.#s,"panel-bar");return}this.#i(),$lib.on(document,"focus",this.#t,null,this,!0),this.renderChildren();}destroy(e,t=!0){this.#o(),super.destroy(e,t);}#s(){return [n.name]}#i(){this.panels.forEach((e,t)=>{this.#n(e,e.templateId||`Content_${t}`);});}#n(e,t){const s=$lib.element(this.element,"","","",{id:$lib.isEmpty(e.id)?void 0:`${this.id}_${e.id}`,class:this.#e(this.classOption.PANEL),style:e.style||void 0}),i=$lib.element("","","span",e.title,{class:this.#e(this.classOption.TITLE)}),l=$lib.element(s,"","header",i),c=$lib.element(s,"","","",{class:this.#e(this.classOption.CONTENT)});if(e.cssClass&&s.classList.add(e.cssClass),e.hasIcon){let h=$lib.element(l,i,"i","",{class:this.#e(this.classOption.ICON)});e.cssClassIcon&&h.classList.add(e.cssClassIcon);}if(e.minHeight&&(s.style.minHeight=$lib.unit(e.minHeight)),e.maxHeight&&(s.style.minHeight=$lib.unit(e.minHeight)),e.content||(e.content=this.getTemplateContent(t)),e.content&&$lib.element(c,"","",e.content),e.element=s,e.contentElement=c,e.expanded&&this.expandPanel(s),e.disabled){let h=this.#e(this.classOption.DISABLED);s.classList.add(h),s.inert=!0;}this.#l(s,l);}#e(e){return super.getCssClass(this.classOption,e)}#l(e,t){this.expandOnPointerEnter&&$lib.on(e,"pointerenter",this.#a,[e],this,!0),$lib.on(t,"click",this.toggleExpandPanel,[e],this,!0);}#a(e,t){t.pointerType!=="touch"&&this.expandPanel(e);}#t(e){const t=e.target,s=this.#e(this.classOption.PANEL);if(this.contains(t)){const i=t.closest("."+s);this.expandPanel(i);}}#o(){$lib.off(document,"focus",this.#t);}}n.Panel=class{static{o(this,"Panel");}constructor(e){this.id=null,this.expanded=!1,this.hasIcon=!1,this.cssClass="",this.cssClassIcon="",this.style="",this.minHeight="",this.maxHeight="",this.title="",this.content="",this.templateId="",this.element=null,this.contentElement=null,Object.defineProperties(this,Object.getOwnPropertyDescriptors(e));}},Object.assign(n.prototype,Object.fromEntries(Object.entries($base.methods).filter(([a])=>!["render","destroy","getCssClass"].includes(a)))),n.prototype.constructor=n,componyx.UI.PanelBar=n,customElements.define(`${componyx.UI.tagPrefix}${n.name.replace(/([A-Z])/g,"-$1").toLowerCase().replace(/^-/,"")}`,n);})();
237
+ })();
238
+
239
+
240
+ (async function(window){var v=Object.defineProperty;var E=(s,f)=>v(s,"name",{value:f,configurable:!0});(function(){class s extends componyx.UI.base.WebComponent{static{E(this,"PieChart");}#e;#t;#c;#l;#o;#n;#d;#s=[];#a=null;#i;#u;#h=[];#r;#g;classOption={CHART:"chart",HALF:"half-pie",DONUT:"donut",LEGEND:"legend",LEGEND_ITEM:"legend-item",LEGEND_ITEM_COLOR:"legend-item-color",LEGEND_ITEM_LABEL:"legend-item-label",SEGMENT_LABEL:"segment-label",SEGMENT_OVERLAY:"segment-overlay",SEGMENT_HOVER:"segment-hover"};constructor(e,t){super(e,t),this.shape=s.ShapeOption.PIE,this.segmentLabelDisplay=s.SegmentLabelDisplayOption.OUTER,this.segmentLabelContent=s.SegmentLabelContentOption.VALUE,this.isHalf=!1,this.showLegend=!0,this.showValuesInLegend=!1,this.startAngle=0,this.donutInnerRatio=.6,this.baseColor="#3b82f6",this.segmentLabelOffset=null,this.segments=[],this.tooltipManagerId=null;function n(i){Object.assign(this,i),this.onSegmentEnter=$base.static.createEvent("onSegmentEnter"),this.onSegmentLeave=$base.static.createEvent("onSegmentLeave"),this.onSegmentClick=$base.static.createEvent("onSegmentClick"),this.onRenderSegmentLabel=$base.static.createEvent("onRenderSegmentLabel"),this.onRenderLegendLabel=$base.static.createEvent("onRenderLegendLabel");}E(n,"PieChartEvents"),this.events=new n(this.events);}render(){if(this.renderState!=$base.static.RenderState.RENDERING){super.render(this.#O,"pie-chart");return}this.#C(),this.renderChildren();}async postRender(){this.renderState==$base.static.RenderState.RENDERING&&(super.postRender(),this.#p());}destroy(e,t=!0){this.#w(),super.destroy(e,t);}getCssClass(e){return super.getCssClass(this.classOption,e)}#O(){let e=[];return e.push("TooltipManager"),["PieChart",e]}#C(){this.#d=this.segments.reduce((e,t)=>e+t.value,0),this.isHalf?(this.classList.add(this.getCssClass(this.classOption.HALF)),this.#n=270,this.#o=180):(this.#n=this.startAngle??0,this.#o=360),this.shape===s.ShapeOption.DONUT&&(this.classList.add(this.getCssClass(this.classOption.DONUT)),this.style.setProperty("--donut-inner-stop",`${this.donutInnerRatio*100}%`)),this.#i=this.#R(this,this.id+"_TooltipManager",this.tooltipManagerId),this.#D(),this.#T(),this.#$(),this.showLegend&&this.#y(),this.style.removeProperty("--chart-size"),this.isHalf&&this.style.setProperty("--chart-size",`${this.#l}px`);}#R(e,t,n){const i=$UI.createComponent(componyx.UI.Box,{id:t+"_TooltipManagerBox",containerElement:e,trackPointer:!0,alignX:componyx.UI.Box.AlignXOption.CENTER,alignY:componyx.UI.Box.AlignYOption.BOTTOM,expandDirection:componyx.UI.Box.ExpandDirectionOption.UP,autoInvertFit:!0,animation:{showType:0,hideType:0}});return this.#v(e,componyx.UI.TooltipManager,t,n,{boxId:i.id,selectableTooltipContent:!1,arrowless:!0})}#v(e,t,n,i,l={}){const o=$UI.createComponent(t,{id:n,containerElement:e});return o.clone($UI.store[i],this),Object.assign(o,Object.fromEntries(Object.entries(l).filter(([g,a])=>a!==void 0))),o.showing=!0,o.events.onPostRender.priorityAdd(()=>{this.isReady.apply(this);},null,!0),o}#T(){const e=this.#s.map(r=>r.segment),t=e.length,[n,i,l]=$lib.hexToRgb(this.baseColor),[o,g,a]=$lib.rgbToHsv(n,i,l),d=(this.isHalf?.5:1)/t;e.forEach((r,m)=>{if(!r.color){const L=(o+m*d)%1,R=Math.max(g,.6),c=Math.max(a,.75),[h,u,p]=$lib.hsvToRgb(L,R,c);r.color="#"+$lib.rgbToHex(h,u,p);}});}#$(){this.#e=$lib.element({container:this,attrs:{class:this.getCssClass(this.classOption.CHART)}}),this.#e.style.background=this.#I(),this.classList.remove("hidden"),this.#l=this.#e.getBoundingClientRect().width,this.classList.add("hidden"),this.segmentLabelDisplay!==s.SegmentLabelDisplayOption.NONE&&this.#A(),this.#t=$lib.element({container:this.#e,attrs:{class:this.getCssClass(this.classOption.SEGMENT_OVERLAY)}}),this.#x(),this.#S();}#A(){let e=this.#n;this.#h=[],this.segments.forEach(t=>{const n=this.#L(t.value),i=this.#M(e,n),l={element:$lib.element({container:this,attrs:{class:this.getCssClass(this.classOption.SEGMENT_LABEL)}}),midAngleRad:this.#N(this.#U(i))},o=`${t.value}${t.valueSuffix||""}`;this.segmentLabelContent==s.SegmentLabelContentOption.LABEL_VALUE?l.element.innerText=`${t.label} (${o})`:this.segmentLabelContent==s.SegmentLabelContentOption.LABEL?l.element.innerText=t.label:l.element.innerText=o,this.#h.push(l),this.#m(l),this.events.onRenderSegmentLabel.fire(this,{segment:t,element:l.element}),e+=n;});}#p(){this.#h.forEach(e=>this.#m(e));}#m(e){const t=this.#l/2,n=this.shape===s.ShapeOption.DONUT?t*this.donutInnerRatio:0,i=this.segmentLabelDisplay===s.SegmentLabelDisplayOption.INNER,l=this.segmentLabelOffset??(i?.5:20),o=i?n+(t-n)*l:t+l,g=this.#e.getBoundingClientRect(),a=this.getBoundingClientRect(),d=g.left-a.left+t,r=g.top-a.top+t;e.element.style.left=`${d+o*Math.cos(e.midAngleRad)}px`,e.element.style.top=`${r+o*Math.sin(e.midAngleRad)}px`;}#S(){this.#r?.disconnect(),this.#r=new ResizeObserver(()=>{const e=this.#e?.getBoundingClientRect().width;!e||e===this.#l||(this.#l=e,this.#p(),this.isHalf&&this.style.setProperty("--chart-size",`${e}px`));}),this.#r.observe(this.#e);}#y(){this.#c=$lib.element({container:this,attrs:{class:this.getCssClass(this.classOption.LEGEND)}}),this.segments.forEach(e=>{const t=$lib.element({container:this.#c,attrs:{class:this.getCssClass(this.classOption.LEGEND_ITEM)}}),n=$lib.element({tag:"span",container:t,attrs:{class:this.getCssClass(this.classOption.LEGEND_ITEM_COLOR)}}),i=$lib.element({tag:"span",container:t,attrs:{class:this.getCssClass(this.classOption.LEGEND_ITEM_LABEL)}});n.style.backgroundColor=e.color,this.showValuesInLegend?i.innerText=`${e.label} (${e.value}${e.valueSuffix})`:i.innerText=e.label,this.events.onRenderLegendLabel.fire(this,{segment:e,element:i});});}#x(){$lib.on(this.#e,"pointermove pointerdown",e=>{clearTimeout(this.#u);const t=this.#f(e);t!==this.#a&&(this.#a=t,this.#E(t),t!==null?(this.#e.style.cursor="pointer",this.events.onSegmentEnter.fire(this,{segment:this.segments[t],event:e})):(this.#e.style.cursor="default",this.events.onSegmentLeave.fire(this,{segment:null,event:e})));}),$lib.on(this.#e,"click",e=>{const t=this.#f(e);t!==null&&this.events.onSegmentClick.fire(this,{segment:this.segments[t],event:e});}),$lib.on(this.#e,"pointerleave",e=>{e.pointerType!=="touch"&&(this.#u=setTimeout(()=>this.#b(e)));}),this.#g=e=>{e.pointerType==="touch"&&!this.#e?.contains(e.target)&&this.#b(e);},this.ownerDocument.addEventListener("pointerdown",this.#g);}#b(e){this.#a!==null&&(this.#a=null,this.#E(null),this.#e.style.cursor="default",this.events.onSegmentLeave.fire(this,{segment:null,event:e}));}#D(){this.#s=[];let e=0;this.segments.forEach((t,n)=>{const i=this.#L(t.value),l=e+i;this.#s.push({startAngle:e,endAngle:l,segment:t}),e=l;});}#I(){let e=[];return this.#s.forEach(t=>{const n=t.segment.endColor||t.segment.color;e.push(`${t.segment.color} ${t.startAngle}deg, ${n} ${t.endAngle}deg`);}),this.isHalf&&e.push(`transparent ${this.#o}deg 360deg`),`conic-gradient(from ${this.#n}deg, ${e.join(", ")})`}#E(e){if(this.#i.removeTooltip(this.id),e===null){this.#t.style.background="transparent",this.#t.classList.remove(this.getCssClass(this.classOption.SEGMENT_HOVER));return}const t=this.#s[e];this.#t.style.background=`conic-gradient(from ${this.#n}deg, transparent 0deg ${t.startAngle}deg, ${t.segment.color} ${t.startAngle}deg ${t.endAngle}deg, transparent ${t.endAngle}deg 360deg)`,this.#t.classList.add(this.getCssClass(this.classOption.SEGMENT_HOVER)),t.segment.tooltip&&(this.#i.addTooltip(this.id,t.segment.tooltip),this.#i.addTrigger(this.#t,this.id),this.#i.showTooltip(this.#t,!0));}#f(e){const t=this.#e.getBoundingClientRect(),n=t.width,i=e.clientX-t.left,l=e.clientY-t.top,o=n/2,g=n/2,a=i-o,d=l-g,r=Math.hypot(a,d),m=n/2,L=this.shape===s.ShapeOption.DONUT?m*this.donutInnerRatio:0;if(r<L||r>m)return null;let c=Math.atan2(d,a)*180/Math.PI;c<0&&(c+=360),c=(c+90)%360;let h=c-this.#n;if(h<0&&(h+=360),this.isHalf&&h>this.#o)return null;let u=0,p=this.#s.length-1;for(;u<=p;){const b=Math.floor((u+p)/2),O=this.#s[b];if(h>=O.startAngle&&h<O.endAngle)return b;h<O.startAngle?p=b-1:u=b+1;}return null}#N(e){return e/180*Math.PI}#L(e){return e/this.#d*this.#o}#M(e,t){return e+t/2}#U(e){return e-90}#w(){this.#r?.disconnect(),this.#r=null,this.#e=null,this.#t=null,this.#c=null,this.#s=[],this.#h=[],this.#a=null,this.#i=null,this.ownerDocument.removeEventListener("pointerdown",this.#g),this.#g=null;}}class f{static{E(this,"Segment");}constructor(e){this.id=null,this.label=null,this.tooltip=null,this.color=null,this.endColor=null,this.value=null,this.valueSuffix="",_clone(this,e);}}s.Segment=f,s.ShapeOption={PIE:"pie",DONUT:"donut"},s.SegmentLabelDisplayOption={NONE:"none",INNER:"inner",OUTER:"outer"},s.SegmentLabelContentOption={VALUE:"value",LABEL:"label",LABEL_VALUE:"label_value"},Object.assign(s.prototype,Object.fromEntries(Object.entries($base.methods).filter(([C])=>!["render","postRender","destroy","getCssClass"].includes(C)))),s.prototype.constructor=s,componyx.UI.PieChart=s,customElements.define(`${componyx.UI.tagPrefix}${s.name.replace(/([A-Z])/g,"-$1").toLowerCase().replace(/^-/,"")}`,s);})();
241
+ })();
242
+
243
+
244
+ (async function(window){var Oe=Object.defineProperty;var l=(x,te)=>Oe(x,"name",{value:te,configurable:!0});(function(x){componyx.UI.Slider=l(function(be,ge){var e=this,k,b,v,w,H,p,h,g,m,f,L=[],W,P,E,ie,M=[],G,F,O,T=componyx.UI.Slider.TickMarkSideOption,A,B,ne;$base.static.ThemeOption;var u={ANIMATION:"animation",VERTICAL:"vertical",REVERSED:"reversed",DISABLED:"disabled",CONTENT:"content",TICK_SIDE_BEFORE:"tick-side-before",TICK_SIDE_AFTER:"tick-side-after",TICKS:"ticks",TICK_MARK:"tick",MINOR:"minor",MAJOR:"major",TRACK:"track",FIXED_TRACK_SIZE:"fixed-track-size",RANGE:"range",HANDLE:"handle",START_HANDLE:"handle start",SELECTED:"selected",SELECTED_START:"selected-start",DECREASE_BUTTON:"button decrease",INCREASE_BUTTON:"button increase",EXPAND_ICON:"expand-icon"};this.vertical=!1,this.range=!1,this.showButtons=!0,this.showTooltips=!0,this.reversed=!1,this.animation=!0,this.disabled=!1,this.tickMarkSide=T.NONE,this.tickMarkValueSide=T.NONE,this.trackSize="",this.decimalSeparator=".",this.decimalPlaces=0,this.minValue=0,this.maxValue=100,this.minChange=1,this.maxChange=0,this.startValue=0,this.value=null,this.tickMarks=10,this.tickMarkValueStep=1,this.minorTickMarkStep=0,this.majorTickMarkStep=0,this.tickMarkLabels={},this.decreaseButtonId=null,this.increaseButtonId=null,this.tooltipManagerId=null,this.hiddenInputId=null,this.startHiddenInputId=null,this.rangeHiddenInputId=null;function Ee(t){Object.assign(this,t),this.onFocus=$base.static.createEvent("onFocus"),this.onBlur=$base.static.createEvent("onBlur"),this.onChange=$base.static.createEvent("onChange");}l(Ee,"SliderEvents"),this.events=new Ee(this.events),$base.Component.apply(this,[be,ge]),this.setValueTemplate=function(t){e.addTemplate("Value",t,!1);},this.setStartValueTemplate=function(t){e.addTemplate("StartValue",t,!1);},this.getValue=function(){return e.range?[g,h]:h},this.setValue=function(t){y(t);},this.setStartValue=function(t){S(t);},this.render=function(){if(e.renderState!=$base.static.RenderState.RENDERING){$base.methods.render.call(e,ve,"slider");return}e.hasTemplate("Value")||e.addTemplate("Value","{value}",!0),e.hasTemplate("StartValue")||e.addTemplate("StartValue","{value}",!0),$lib.isEmpty(e.value)&&(e.range?e.value=e.maxValue||0:e.value=e.minValue||0),Te();},this.postRender=function(){e.renderState==$base.static.RenderState.RENDERING&&$base.methods.postRender.call(e)&&(y(e.value),e.range?S(e.startValue):pe());},this.destroy=function(...t){Be(),$base.methods.destroy.call(this,...t);};function ve(){return ["Slider"]}l(ve,"preRender");function Te(){var t=e.tickMarkValueSide,i=e.range,n=e.reversed;A=e.createSyncedInput(e.hiddenInputId,function(){var r=this.value;y($lib.isEmpty(r)?null:parseFloat(r));}),i&&(B=e.createSyncedInput(e.startHiddenInputId,function(){var r=this.value;S($lib.isEmpty(r)?null:parseFloat(r));}),ne=e.createSyncedInput(e.rangeHiddenInputId,function(){var r=this.value;if($lib.isEmpty(r))y(null),S(null);else {var a=r.split(",").map(c=>c.trim()),o=a[0]!==void 0&&!isNaN(a[0])?parseFloat(a[0]):null,s=a[1]!==void 0&&!isNaN(a[1])?parseFloat(a[1]):null;S(o),y(s);}}),$lib.isEmpty(e.startValue)&&!$lib.isEmpty(B.value)&&!isNaN(B.value)&&(e.startValue=parseFloat(B.value))),e.vertical&&$lib.addClass(e.element,u.VERTICAL),n&&$lib.addClass(e.element,u.REVERSED),i&&$lib.addClass(e.element,u.RANGE),e.disabled&&$lib.addClass(e.element,u.DISABLED),e.tickMarkSide===T.BEFORE?$lib.addClass(e.element,u.TICK_SIDE_BEFORE):e.tickMarkSide===T.AFTER&&$lib.addClass(e.element,u.TICK_SIDE_AFTER),e.showButtons&&(n?oe(e.element):le(e.element)),k=$lib.element(e.element,null,"",null,{class:u.CONTENT}),e.majorTickMarkStep&&$lib.addClass(e.element,u.MAJOR),e.minorTickMarkStep&&$lib.addClass(e.element,u.MINOR),re(t===T.BOTH||t===T.BEFORE,""),Se(),$e(),i&&(f=ae(u.START_HANDLE,Me)),m=ae(u.HANDLE,Ve),i&&n&&q(!0),re(t===T.BOTH||t===T.AFTER," after"),e.showButtons&&(n?le(e.element):oe(e.element)),e.showTooltips&&ye(),$lib.isEmpty(e.value)&&!$lib.isEmpty(A.value)&&!isNaN(A.value)&&(e.value=parseFloat(A.value)),Ie(),e.renderChildren();}l(Te,"draw");function re(t,i){if(!(!e.tickMarks||e.tickMarkSide===T.NONE)){var n=$lib.element(k,null,"ul",null,{class:u.TICKS+i}),r=e.reversed,a=e.tickMarks,o=e.minorTickMarkStep,s=e.majorTickMarkStep,c=null,d=0;if(!(i&&e.tickMarkSide===T.BEFORE||!i&&e.tickMarkSide===T.AFTER))for(r&&(d=a),d;r?d>=0:d<=a;r?--d:++d)t&&(c=r?e.maxValue-I()/a*(a-d):e.minValue+I()/a*d,c=$.formatNumber(c,!1,!0,e.decimalPlaces,!1,e.decimalSeparator)),ke(n,t&&d%e.tickMarkValueStep==0?c:null,o&&d%o==0,s&&d%s==0);}}l(re,"createTicks");function ke(t,i,n,r){var a="";i!=null&&(i=(e.tickMarkLabels&&e.tickMarkLabels[i]||i).toString()),r?a=" "+u.MAJOR:n&&(a=" "+u.MINOR),$lib.element(t,null,"li",i!=null?$lib.element(null,null,"b",i):null,{class:u.TICK_MARK+a});}l(ke,"createTickMark");function Se(){b=$lib.element(k,null,"",null,{class:u.TRACK}),e.trackSize&&(e.element.classList.add(u.FIXED_TRACK_SIZE),e.vertical?k.style.height=$lib.unit(e.trackSize):k.style.width=$lib.unit(e.trackSize));}l(Se,"createTrack");function $e(){v=$lib.element(b,null,"",null,{class:u.RANGE});}l($e,"createRange");function ae(t,i){var n=$lib.element(k,null,"span",null,{class:t,tabindex:e.disabled?"":"0"}),r=e.vertical,s={boundaryZone:b,onDrag:l(function(){e.disabled||$lib.defer(i);},"onDrag"),onDragEnd:l(function(){n.focus();},"onDragEnd"),dragX:!e.disabled&&!r,dragY:!e.disabled&&r,ignoreBoundaryBorders:!0};return $lib.styleValue(n,"box-sizing",!0)!="border-box"&&(n.style.boxSizing="border-box"),e.disabled||Ce(n),$lib.draggable(n,s)}l(ae,"createDraggableHandle");function le(t){var i=e.vertical?" up":" left";e.reversed&&(i=e.vertical?" down":" right"),w=se(t,e.id+"_decrease",u.DECREASE_BUTTON+i),w.events.onCommandClick.priorityAdd(function(){$lib.event.type=="keydown"&&(K(),R());}),w.events.onPointerDown.priorityAdd(function(){K();}),w.events.onPointerUp.priorityAdd(R);}l(le,"createDecreaseButton");function oe(t){var i=e.vertical?" down":" right";e.reversed&&(i=e.vertical?" up":" left"),H=se(t,e.id+"_increase",u.INCREASE_BUTTON+i),H.events.onCommandClick.priorityAdd(function(){$lib.event.type=="keydown"&&(X(),R());}),H.events.onPointerDown.priorityAdd(function(){X();}),H.events.onPointerUp.priorityAdd(R);}l(oe,"createIncreaseButton");function se(t,i,n){var r=$UI.createComponent(componyx.UI.Button,{id:i,containerElement:t});return r.transparent=r.transparentBorder=r.hasIcon=!0,r.cssClassIcon=u.EXPAND_ICON,r.primary=!1,r.cssClass=n,r.clone($UI.store[e.buttonId],e),r.disabled=e.disabled,r.events.onPostRender.priorityAdd(function(){e.isReady.apply(e);},null),r.delegateFocusEvents(e),r.showing=!0,r}l(se,"createButton");function ye(){var t=e.id+"_TooltipManager";if(p=$UI.createComponent(componyx.UI.TooltipManager,{id:t,containerElement:e.element}),p.singleBoxInstance=!1,p.clone($UI.store[e.tooltipManagerId],e,!0,!0,{triggers:""}),!p.boxId){var i=$UI.createComponent(componyx.UI.Box,{id:t+"_Box",containerElement:e.element});i.autoPosition=componyx.UI.Box.AutoPositionOption.EXPAND,e.vertical?(i.alignY=componyx.UI.Box.AlignXOption.CENTER,i.expandDirection=componyx.UI.Box.ExpandDirectionOption.LEFT):(i.alignX=componyx.UI.Box.AlignXOption.CENTER,i.expandDirection=componyx.UI.Box.ExpandDirectionOption.UP),i.autoInvertFit=!0,p.boxId=i.id;}p.showing=!0,p.events.onPostRender.priorityAdd(function(){e.isReady.apply(e);},null);}l(ye,"createTooltipManager");function Ie(){if(e.showTooltips&&(e.events.onFocus.priorityAdd(function(){p.allowHide(!1),clearTimeout(P),P=setTimeout(function(){p.showTooltip(m.element),e.range&&p.showTooltip(f.element);},0);}),e.events.onBlur.priorityAdd(function(){clearTimeout(P),P=setTimeout(function(){E||(p.allowHide(!0),p.hideTooltip(m.element),e.range&&p.hideTooltip(f.element));},0);})),L.push([x,"resize",$lib.on(x,"resize",function(){var i=h;h=null,y(i),f&&(i=g,g=null,S(g));})]),!e.disabled){var t="mouseup";$lib.on(document,t,Z,!1),$lib.on(document,t,R),L.push([document,"mouseup",$lib.on(document,"mouseup",function(){E&&E.focus(),E=null;})]),$lib.on(k,"mousedown",function(i){$lib.defer(_e.bind(e,i));});}}l(Ie,"bindEvents");function Ce(t){$lib.on(t,"focus",e.onFocus,e,e),$lib.on(t,"blur",e.onBlur,e,e),$lib.on(t,"keydown",Re),$lib.on(t,"keyup",R),$lib.on(t,"mousedown",Z,!0),$lib.on(t,"mousedown",J,!1);}l(Ce,"bindHandleEvents");function Y(t,i,n){if(e.showTooltips){var r=e.id+"_"+n,a=$lib.element();e.tickMarkLabels&&e.tickMarkLabels[i]&&(i=e.tickMarkLabels[i]),e.applyTemplate(a,n,{value:i}),p.addTooltip(r,a.innerHTML),p.triggers.get(t)||p.addTrigger(t,r),(e.__focus||E)&&p.showTooltip(t);}}l(Y,"showTooltip");function J(t){e.animation&&(G=t,t?$lib.addClass(e.element,u.ANIMATION):$lib.removeClass(e.element,u.ANIMATION));}l(J,"animationState");function Z(t){ie=t;}l(Z,"cancelSelectState");function Re(t){var i=t.key,n=e.vertical,r=e.reversed,a=this===m.element?m:f,o=i=="ArrowUp",s=i=="ArrowDown",c=i=="ArrowLeft",d=i=="ArrowRight";(o||s||c||d)&&(!r&&!n&&(d||o)||!r&&n&&(d||s)||r&&!n&&(c||s)||r&&n&&(c||o)?X(a):K(a),(o||s)&&t.preventDefault());}l(Re,"key");function _e(t){if(!(t.button>0||ie)){var i=e.vertical,n=e.reversed,r=e.maxChange,a=$lib.getScrollPosition(),o=i?$lib.clientY(t)+a.scrollTop:$lib.clientX(t)+a.scrollLeft,s=$lib.getPos(k),c=U(m),d=f?U(f):null,C=o,_,V,N;C-=i?s.top:s.left,_=Math.abs(C-c),f&&(V=Math.abs(C-d)),N=Q(C),J(!0),F=!1,O=t,f&&(V<_||V===_&&C<d&&!n)?(r&&Math.abs(g-N)>r&&(N+=C>d&&!n?r:r*-1),E=f.element,S(N)):(r&&Math.abs(h-N)>r&&(N+=C>c&&!n?r:r*-1),E=m.element,y(N));}}l(_e,"select");function Me(){ue(f,S);}l(Me,"dragStartHandle");function Ve(){ue(m,y);}l(Ve,"dragHandle");function ue(t,i){let n=t.element,r=$lib.getPos(n),a=n.style.transform,o=n.style.left,s=n.style.top;n.style.transform="",n.style.left=n.style.top="",$.setPos(n,{left:r.left,top:r.top}),i(Q(U(t))),n.style.transform=a,n.style.left=o,n.style.top=s;}l(ue,"setDragHandle");function q(t){var i=f.element,n=m.element;t?k.insertBefore(i,n):k.insertBefore(n,i);}l(q,"switchHandles");function U(t){var i=t.element.style,n=e.vertical?i.top:i.left;return Math.round(z(n))}l(U,"getHandlePosition");function S(t){t=ee(t),h!=null&&t>h&&(t=h);var i=j(t),n=f.element,r=n.nextElementSibling,a=t!=g;a&&(g=t,ce(n,i),h==e.maxValue&&g==h&&r===m.element?(q(),n.focus()):h==e.maxValue&&g!=h&&r!==m.element&&(q(!0),n.focus()),G?($lib.on(v,"transitionend animationend",D,[!0,n,t,E,O]),Y(n,t,"StartValue"),de(i)):(de(i),D(!0,n,t,E,O)));}l(S,"setStartValue");function y(t){t=ee(t),g!=null&&t<g&&(t=g);var i=j(t),n=m.element;n.nextElementSibling;var a=t!=h;a&&(h=t,ce(n,i),G?($lib.on(v,"transitionend animationend",D,[!1,n,t,E,O]),Y(n,t,"Value"),fe(i)):(fe(i),D(!1,n,t,E,O)));}l(y,"setValue");function D(t,i,n,r,a){if($lib.off(v,"transitionend animationend",D),Ne(n,t),Y(i,n,t?"StartValue":"Value"),J(!1),t?pe():Ae(),t?B.__setValue(n):A.__setValue(n),e.range){let o=B.value,s=A.value,c=`${o||""},${s||""}`;ne.__setValue(c);}e.events.onChange.fire(e,{isStart:t,value:n}),r&&r===E&&!F&&(F=!0,t?f.startDrag(a):m.startDrag(a));}l(D,"valueChanged");function ce(t,i){i=$lib.unit(i),e.vertical&&t.style.top!=i?t.style.top=i:!e.vertical&&t.style.left!=i&&(t.style.left=$lib.unit(i));}l(ce,"setPosition");function de(t){var i=e.vertical,n=e.reversed,r=e.vertical?b.offsetHeight:b.offsetWidth,a=i?"height":"width",o=i?"marginTop":"marginLeft",s=z(v.style[a]),c;n&&(o=i?"marginBottom":"marginRight",t=r-t),c=z(v.style[o]),v.style[o]=$lib.unit(t),t!=c&&(t>c?v.style[a]=$lib.unit(s-(t-c)):v.style[a]=$lib.unit(s+(c-t)));}l(de,"setRangeStart");function fe(t){var i=e.vertical,n=e.reversed,r=e.vertical?b.offsetHeight:b.offsetWidth,a=i?"marginTop":"marginLeft",o;n&&(a=i?"marginBottom":"marginRight"),e.reversed&&(t=r-t),o=z(v.style[a]),t=t-o,t=$lib.unit(t<0?0:t),e.vertical?v.style.height=t:v.style.width=t;}l(fe,"setRange");function Ne(t,i){if(!(!e.tickMarks||e.tickMarkSide===T.NONE)){var n=i?u.SELECTED_START:u.SELECTED;e.tickMarkSide;var a=e.tickMarks,o=I()/a,s=t/o;if(M)for(var c=M.length,d;--c>=0;)d=M[c],$lib.hasClass(d,n)&&$lib.removeClass(d,n),!$lib.hasClass(d,u.SELECTED_START)&&!$lib.hasClass(d,u.SELECTED)&&M.splice(c,0);t%o>0&&(s=Math.floor(t/o));var C=$lib(null,k,"ul");$lib.each(C,function(_){if(_.childNodes.length>0){var V=e.reversed?_.childNodes[_.childNodes.length-1-s]:_.childNodes[s];$lib.addClass(V,n),$lib.indexOf(M,V)==-1&&M.push(V);}});}}l(Ne,"selectTickMark");function z(t){return parseFloat(t.replace(/[^0-9\.\-]/g,""))||0}l(z,"getNumericValue");function K(t,i){t||(t=e.range?f:m),me(t),W=setTimeout(K.bind(this,t,!0),i?40:500);}l(K,"decrease");function X(t,i){t=t||m,me(t,!0),W=setTimeout(X.bind(this,t,!0),i?40:500);}l(X,"increase");function me(t,i){var n=U(t),r=Q(n),a=e.minChange;R(),i?r+=a:r-=a,t===f?S(r):y(r);}l(me,"change");function R(){clearTimeout(W);}l(R,"stop");function Q(t){var i=e.reversed,n=e.vertical?b.offsetHeight:b.offsetWidth,r=e.minValue+I()*(t/n),a=e.minChange;return i&&(r=e.maxValue-I()*(t/n)),r%a>0&&(r=Math.round(r/a)*a),ee(r)}l(Q,"positionToValue");function ee(t){return t==null?t:t<e.minValue?e.minValue:t>e.maxValue?e.maxValue:t}l(ee,"validateValue");function j(t){var i=e.reversed,n=e.vertical?b.offsetHeight:b.offsetWidth,r=e.minValue;return i?n-(t-r)/I()*n:(t-r)/I()*n}l(j,"valueToPosition");function I(){return e.maxValue-e.minValue}l(I,"getValueDelta");function pe(){var t=m.settings,i=e.reversed,n=e.vertical?b.offsetHeight:b.offsetWidth,r=e.minChange/I()*n,a=he(m.element),o="boundaryOvershoot";if(r>1&&(t.tickY=t.tickX=r),t[o+"Top"]=t[o+"Bottom"]=t[o+"Left"]=t[o+"Right"]=a,e.range&&g!=null){var s=j(g);i?t[o+"Bottom"]=t[o+"Right"]=(n-s-a)*-1:t[o+"Top"]=t[o+"Left"]=(s-a)*-1;}}l(pe,"updateHandleSettings");function Ae(){if(e.range){var t=f.settings,i=e.reversed,n=e.vertical?b.offsetHeight:b.offsetWidth,r=e.minChange/I()*n,a="boundaryOvershoot",o=he(f.element),s=j(h);r>1&&(t.tickY=t.tickX=r),t[a+"Top"]=t[a+"Bottom"]=t[a+"Left"]=t[a+"Right"]=o,i?t[a+"Top"]=t[a+"Left"]=(s-o)*-1:t[a+"Bottom"]=t[a+"Right"]=(n-s-o)*-1;}}l(Ae,"updateStartHandleSettings");function he(t){return e.vertical?Math.round(t.offsetHeight/2):Math.round(t.offsetWidth/2)}l(he,"getOvershoot");function Be(){$lib.each(L,function(t){$lib.off(t[0],t[1],t[2]);}),$lib.off(document,"mouseup",Z),$lib.off(document,"mouseup",R),g=h=E=null,L=[],M=[],m=f=null;}l(Be,"dispose");},"Slider"),componyx.UI.Slider.prototype=Object.create($base.methods),componyx.UI.Slider.prototype.constructor=componyx.UI.Slider,componyx.UI.Slider.TickMarkSideOption={NONE:0,BEFORE:1,AFTER:2,BOTH:3};})(window);
245
+ })(window);
246
+
247
+
248
+ (async function(window){var U=Object.defineProperty;var s=(p,l)=>U(p,"name",{value:l,configurable:!0});(async function(p){componyx.UI.tabStrip_modules=componyx.UI.tabStrip_modules||{},componyx.UI.tabStrip_modules.loaded=(async()=>{})(),await componyx.UI.tabStrip_modules.loaded;const l=componyx.base_modules.NavigationManager;componyx.UI.TabStrip=s(function(m,b){var e=this;$base.static.ThemeOption;var c=componyx.UI.TabStrip.AlignmentOption,u={STRIP:"strip",ITEM:"item"};this.cssClassStrip="",this.cssClassItem="",this.cssClassItemIcon="",this.selectedItemId="",this.alignment=c.TOP,this.buttonId=null,this.itemList=[],this.navigationManager=null;function f(t){Object.assign(this,t),this.onItemSelect=$base.static.createEvent("onItemSelect"),this.onItemDeselect=$base.static.createEvent("onItemDeselect");}s(f,"TabStripEvents"),this.events=new f(this.events),$base.Component.apply(this,[m,b]),this.render=function(){if(e.renderState!=$base.static.RenderState.RENDERING){$base.methods.render.call(e,h,"tab-strip");return}e.element.tabIndex=Number(e.tabIndex)||0,y();},this.destroy=function(...t){x(),$base.methods.destroy.call(this,...t);};function h(){return ["TabStrip",["Button"]]}s(h,"preRender");function y(){var t=document.createElement("div"),n=!0;t.className=u.STRIP,$lib.addClass(e.element,c.getName(e.alignment)),$lib.each(e.itemList,function(o,a){$lib.isEmpty(o.id)&&(o.id=a),v(o),o.selected&&(n=!1);}),e.element.appendChild(t),e.element.setAttribute("role","tablist"),e.selectedItemId?$UI.store[r(e.selectedItemId)].select():n&&$UI.store[r(e.itemList[0].id)].select(),$lib.on(e.element,"focus",g);}s(y,"draw");function g(){if(!e.navigationManager)return;const t=e.element.ownerDocument.activeElement;e.element.contains(t)&&t!==e.element||e.navigationManager.setFocus(e.itemList[0].id);}s(g,"focus");function v(t){var n=$UI.createComponent(componyx.UI.Button,{id:r(t.id),containerElement:e.element}),o=t.buttonId||e.buttonId;n.clone($UI.store[o],e),n.renderId=!1,n.cssClass="button "+(t.cssClass||e.cssClassItem||u.ITEM),n.cssClassIcon=t.cssClassIcon||e.cssClassItemIcon,n.hasIcon=t.hasIcon||!1,n.iconURL=t.iconURL,n.selected=t.selected,n.disabled=t.disabled,n.split=t.split,$lib.isEmpty(t.transparent)?o||(n.transparent=!0):n.transparent=t.transparent,$lib.isEmpty(t.transparentBorder)?o||(n.transparentBorder=!1):n.transparentBorder=t.transparentBorder,$lib.isEmpty(t.primary)?o||(n.primary=!1):n.primary=t.primary,$lib.isEmpty(t.decoration)?o||(n.decoration=e.alignment==c.TOP?componyx.UI.Button.DecorationOption.OVERLINE:componyx.UI.Button.DecorationOption.UNDERLINE):n.decoration=t.decoration,n.menuId=t.menuId,n.menuItemId=t.menuItemId,n.boxId=t.boxId,n.type=componyx.UI.Button.TypeOption.RADIOBUTTON,n.radioGroupId=e.id,n.tabIndex=-1,n.events.onSelect.priorityAdd(function(a,d){e.events.onItemSelect.fire(e,I(a,t));}),n.events.onDeselect.priorityAdd(function(a,d){e.events.onItemDeselect.fire(e,I(a,t));}),t.content?n.setContentTemplate(t.content):n.text=t.text,n.events.onClick.priorityAdd((a,d)=>{e.navigationManager.setFocusFromEvent(t,d);}),n.events.onPostRender.priorityAdd(a=>{a.getCommandButton().setAttribute("role","tab"),T(),setTimeout(()=>{e.isReady.apply(e);});},null),n.show();}s(v,"createTab");function T(){e.navigationManager||(e.navigationManager=new l(e.element,{itemList:e.itemList,horizontalRoot:!0,tabNavigation:!0,getButton:s(t=>$UI.store[r(t.id)]?.element,"getButton"),isExpandable:s(t=>!1,"isExpandable"),isFocusable:s(t=>!t.disabled,"isFocusable")}));}s(T,"createNavigationManager");function r(t){return $lib.format("{0}_{1}",e.id,t)}s(r,"getItemId");function I(t,n){return {button:t,item:n,event:$lib.event}}s(I,"eventArgs");function x(){e.navigationManager?.destroy(),e.navigationManager=null;}s(x,"dispose");},"TabStrip"),componyx.UI.TabStrip.prototype=Object.create($base.methods),componyx.UI.TabStrip.prototype.constructor=componyx.UI.TabStrip,componyx.UI.TabStrip.AlignmentOption={TOP:0,BOTTOM:1,getName:s(function(i){return $base.static.getKeyByValue(this,i).toLowerCase()},"getName")},componyx.UI.TabStrip.Item=function(i){this.content=null,this.hasIcon=null,this.cssClassIcon="",this.iconURL=null,this.split=null,this.transparent=null,this.transparentBorder=null,this.primary=null,this.decoration=null,this.menuId=null,this.menuItemId=null,this.boxId=null,this.buttonId=null,$base.static.Item.call(this,i);};})();
249
+ })();
250
+
251
+
252
+ (async function(window){var st=Object.defineProperty;var n=(H,te)=>st(H,"name",{value:te,configurable:!0});(function(H){componyx.UI.TimePicker=n(function(Te,ve){var t=this,k,T=null,v=null;$base.static.ThemeOption;var b=componyx.UI.TimePicker.ViewModeOption,c,O,P,L,U,m,p,I,E,K,_,W,M,h={},Y={},X={},ie,ne,y,S,w,j,r={NUMERICBOX:"numeric-box",HOUR:"hour",MINUTE:"minute",HOURCLOCK:"clock hour",MINUTECLOCK:"clock minute",CLOCKHAND:"clock-hand",CLOCKITEM:"clock-item",SELECTED:"selected",BETWEEN:"between",PICKER:"button picker",PM:"button pm",AM:"button am",TWENTYFOURCLOCK:"clock-24",TWENTYFOURHAND:"hand-24",SEPARATOR:"separator",INPUT:"input",BUTTONHOLDER:"button-holder",DISABLED:"disabled"};this.cssClassNumericBox="",this.cssClassHour="",this.cssClassMinute="",this.hourPlaceholder="HH",this.minutePlaceholder="MM",this.readOnly=!1,this.disabled=!1,this.autoFocus=!0,this.hourLeadingZero=!0,this.is24HourClock=!0,this.meridiemValue="AM",this.name="",this.value=null,this.minValue=null,this.maxValue=null,this.incrementalValue=null,this.allowedTimes=[],this.disallowTimes=!1,this.viewMode=b.INPUT_CLOCK_POPUP,this.hourNumericBoxId=null,this.minuteNumericBoxId=null,this.clockDialogId=null,this.pmButtonId=null,this.amButtonId=null,this.pickerButtonId=null,this.hiddenInputId=null;function Ve(e){Object.assign(this,e),this.onFocus=$base.static.createEvent("onFocus"),this.onBlur=$base.static.createEvent("onBlur"),this.onChanged=$base.static.createEvent("onChanged");}n(Ve,"TimePickerEvents"),this.events=new Ve(this.events),$base.Component.apply(this,[Te,ve]),this.reset=function(e){Ye($lib.isEmpty(e)?!1:e);},this.clear=function(e){Xe($lib.isEmpty(e)?!1:e);},this.select=function(){je();},this.getHour=function(){return tt()},this.getMinute=function(){return it()},this.getValue=function(){return et()},this.setValue=function(e,i){g(e,$lib.isEmpty(i)?!1:i);},this.getMeridiemValue=function(){return t.is24HourClock?"":ze()},this.setMeridiemValue=function(e){t.is24HourClock||$UI.store[t.id+"_"+e.toUpperCase()].select();},this.showClock=function(){x();},this.hideClock=function(){Z();},this.selectHourClock=function(){N();},this.selectMinuteClock=function(){B();},this.render=function(){if(t.renderState!=$base.static.RenderState.RENDERING){$base.methods.render.call(t,Oe,"time-picker");return}Pe();},this.postRender=function(){if(t.renderState==$base.static.RenderState.RENDERING){if(c){var e=c.getBox().contentElement.firstElementChild.firstElementChild;$lib.on(e,"mousedown",Me),$lib.on(e,"mousemove",ce),$lib.on(e,"mouseleave",fe),$lib.on(e,"wheel",J),$lib.on(document,"mouseup",fe);}t.viewMode==b.INPUT_CLOCK_POPUP&&(oe(T.getInput()),oe(v.getInput())),$base.methods.postRender.call(t)&&(g(t.value,!1),t.meridiemValue&&!t.is24HourClock&&t.setMeridiemValue(t.meridiemValue),N());}},this.destroy=function(...e){nt(),$base.methods.destroy.call(this,...e);};function Oe(){var e=["Button","NumericBox"];return t.viewMode!=b.INPUT&&e.push("Dialog"),["TimePicker",e]}n(Oe,"preRender");function Pe(){k=t.createSyncedInput(t.hiddenInputId,function(){g(this.value);}),t.value=t.value||k.value,t.viewMode<b.CLOCK&&(($lib.touch&&t.autoTouchConfig||!$lib.isEmpty(t.allowedTimes))&&(t.readOnly=!0),Le(),De(),ae(t.element),He(),t.viewMode==b.INPUT_CLOCK_POPUP&&(we(),$lib.on(H,"keyup",se),$lib.on(H,"keyup",re),t.events.onFocus.priorityAdd(function(){j=!1;}),t.events.onBlur.priorityAdd(function(){j=!0;})),t.is24HourClock||ue(t.element)),t.viewMode!=b.INPUT&&xe(),t.renderChildren();}n(Pe,"draw");function Le(){var e=t.minValue,i=t.maxValue,l=t.allowedTimes;t.incrementalValue=Ue(t.incrementalValue),e&&(e=e.split(":"),t.minValue=e[0]+":"+$lib.padLeft(G(e[1]),2)),i&&(i=i.split(":"),t.maxValue=i[0]+":"+$lib.padLeft(G(i[1]),2)),$lib.each(l,function(o,s){o.indexOf(" ")>-1?l[s]=[o.split(" ")[0],o.split(" ")[1]]:l[s]=[o];});}n(Le,"initTimes");function Ue(e){return $lib.isEmpty(e)||e==0||(e=parseInt(e,10),isNaN(e))?0:e!==1&&60%e!==0?5:e}n(Ue,"validateIncrement");function G(e){e=parseInt(e,10);let i=parseInt(t.incrementalValue,10);return i===1?e:e-e%i}n(G,"floorToIncrement");function De(){var e,i=t.minValue?t.minValue.split(":")[0]:null,l=t.maxValue?t.maxValue.split(":")[0]:null;T=e=le(t.element,t.id+"_H",t.hourNumericBoxId),e.cssClass+=" "+(t.cssClassHour||r.HOUR),e.placeholder=t.hourPlaceholder,e.maxLength=2,$lib.isEmpty(i)?e.minValue=t.is24HourClock?0:1:e.minValue=null,$lib.isEmpty(l)?e.maxValue=t.is24HourClock?23:12:e.maxValue=null,e.selectOnFocus=t.autoFocus?!0:T.selectOnFocus,e.showButtons=!1,e.digitPadLeftValue=t.hourLeadingZero?"00":null,e.value=t.value?t.value.split(":")[0]:"",e.events.onChange.priorityAdd(Ke,null);}n(De,"createHourInput");function He(){var e;v=e=le(t.element,t.id+"_M",t.minuteNumericBoxId),e.cssClass+=" "+(t.cssClassMinute||r.MINUTE),e.placeholder=t.minutePlaceholder,e.maxLength=2,e.maxValue=59,e.selectOnFocus=t.autoFocus?!0:v.selectOnFocus,e.showButtons=!(e.readOnly&&!$lib.isEmpty(t.allowedTimes)),e.digitPadLeftValue="00",e.value=t.value&&t.value.split(":")[1]||"";}n(He,"createMinuteInput");function le(e,i,l){var o=$UI.createComponent(componyx.UI.NumericBox,{id:i,containerElement:e});return o.clone($UI.store[l],t),o.cssClass=o.cssClass||t.cssClassNumericBox||r.NUMERICBOX,o.focusGroupId=t.id,o.readOnly=t.readOnly,o.disabled=t.disabled,o.focusableButtons=!1,o.leadingZeros=!0,o.minValue=0,o.incrementalValue=t.incrementalValue?0:1,o.showing=!0,o.delegateFocusEvents(t),o.events.onChanged.priorityAdd(he,null),o.events.onIncrement.priorityAdd(Ce),o.events.onDecrement.priorityAdd(We),o.events.onPostRender.priorityAdd(function(){t.isReady.apply(t);},null),t.viewMode==b.INPUT_CLOCK_POPUP&&($lib.endsWith(i,"_H")?(o.events.onClick.priorityAdd(function(s){_=!1,x();}),o.events.onFocus.priorityAdd(function(){N(),x(),_=!0;})):(o.events.onClick.priorityAdd(function(s){_=!1,x();}),o.events.onFocus.priorityAdd(function(){B(),x(),_=!0;}))),o}n(le,"createInput");function oe(e){$lib.on(e,"keyup",_e);}n(oe,"setInputEvent");function _e(e){var i=e.key;!$lib.isEmpty(k.value)&&(i=="Enter"||i==" ")&&c&&c.showing&&(Z(),this.blur());}n(_e,"inputKeyUp");function se(e){_&&e.key=="Tab"&&x(),_=!1;}n(se,"checkTabFocus");function re(e){$lib.defer(function(){j&&e.key=="Tab"&&Z(),j=!1;}.bind(t,e));}n(re,"checkTabBlur");function ae(e){$lib.element(e,"","span",":",{class:r.SEPARATOR});}n(ae,"createSeparator");function we(){var e=t.id+"_Picker";y=q(t.element,e,t.pickerButtonId),y.transparent=!0,y.cssClass=r.PICKER,y.hasIcon=!0,y.type=componyx.UI.Button.TypeOption.CHECKBUTTON,y.command=function(){N(),c.toggle();};}n(we,"createPicker");function ue(e){var i=t.id,l="PM",o="AM",s=$lib.element(e,"","","",{class:r.BUTTONHOLDER});w=q(s,i+"_"+o,t.amButtonId,o),w.transparent=!0,w.primary=e!==t.element,w.cssClass=r.AM,S=q(s,i+"_"+l,t.pmButtonId,l),S.transparent=!0,S.primary=e!==t.element,S.cssClass=r.PM;}n(ue,"createMeridiemButtons");function q(e,i,l,o){var s=$UI.createComponent(componyx.UI.Button,{id:i,containerElement:e});return s.type=componyx.UI.Button.TypeOption.RADIOBUTTON,s.radioGroupId=t.id,s.text=o,s.clone($UI.store[l],t),s.disabled=t.disabled,s.delegateFocusEvents(t),s.events.onPostRender.priorityAdd(function(){t.isReady.apply(t);},null),s.showing=!0,s}n(q,"createButton");function xe(){var e=t.id+"_Clock",i=$lib.element(),l=$lib.element();c=$UI.createComponent(componyx.UI.Dialog,{id:e,containerElement:t.element}),c.clone($UI.store[t.dialogId],t),c.cssClass=r.CLOCK,c.autoFit=c.buttons.close=c.buttons.deny=c.buttons.confirm=c.buttons.cancel=!1,c.events.onPostRender.priorityAdd(function(){t.isReady.apply(t);},null),c.setHeaderTemplate(i),c.setContentTemplate(l),c.expandDirection=componyx.UI.Box.ExpandDirectionOption.DOWN,t.viewMode==b.INPUT_CLOCK_POPUP?(c.expander=t.id,c.autoPosition=componyx.UI.Box.AutoPositionOption.EXPAND,c.autoInvertFit=c.autoFit=!0,c.events.onHideComplete.priorityAdd(function(){y.deselect(),!t.is24HourClock&&t.viewMode==b.INPUT_CLOCK_POPUP&&w.focus();},null),c.hideOnOutsideClick=!0):c.showing=!0,o(),s();function o(){O=$lib.element(i,"","","--",{class:r.INPUT+" "+r.HOUR}),ae(i),P=$lib.element(i,"","","--",{class:r.INPUT+" "+r.MINUTE}),t.viewMode==b.CLOCK&&!t.is24HourClock&&ue(i),$lib.on(O,"click",N),$lib.on(P,"click",B);}n(o,"createHeader");function s(){L=$lib.element(l,"","","",{class:r.HOURCLOCK}),U=$lib.element(l,"","","",{class:r.MINUTECLOCK}),u($lib.element(L)),t.is24HourClock&&$lib.element(L,"","","",{class:r.TWENTYFOURCLOCK}),a($lib.element(U));}n(s,"createContent");function u(f){m=$lib.element(f,"","","",{class:r.CLOCKHAND}),m.tabIndex="0",$lib.on(m,"keydown",J),$lib.on(m,"blur",function(){t.onBlur.call(t);}),Y={},C(f);}n(u,"createHours");function a(f){p=$lib.element(f,"","","",{class:r.CLOCKHAND}),p.tabIndex="0",$lib.on(p,"keydown",J),$lib.on(p,"blur",function(){t.onBlur.call(t);}),X=[],C(f,!0);}n(a,"createMinutes");function C(f,d){for(var V=!d&&t.is24HourClock?24:12,D=0;D<V;++D){var F=D,ke=d?$lib.padLeft(F*5,2):D?F:12,ye=!d&&D>11?50:100,lt=(100-ye*Math.sin(2*Math.PI/12*(D+3)))/2,ot=(100-ye*Math.cos(2*Math.PI/12*(D+3)))/2,R=$lib.element(f,"","","",{class:r.CLOCKITEM});!d&&F==0&&V==24&&(ke="00"),R.style.top=lt+"%",R.style.left=ot+"%",R.innerHTML="<span>"+ke+"</span>",d?X[(F*5).toString()]=R:Y[F.toString()]=R;}}n(C,"createClock");}n(xe,"createClockDialog");function Ne(e,i,l,o,s){var u=(e-l)*(e-l)+(i-o)*(i-o);return u<=s*s}n(Ne,"isInCircle");function J(e){var i=e.key,l=e.deltaY!=null&&e.deltaY!=0,o=i=="ArrowUp",s=i=="ArrowDown",u=i=="ArrowLeft",a=i=="ArrowRight";if(o||s||u||a||l){var C=e.deltaY>0||a||s,f=$lib.hasClass(L,r.SELECTED)?m:p,d=f===m?I:E||0,V=t.incrementalValue||1;f===m?d+=C?1:-1:C?d+=V:d=d==0?60-V:d-V,g(f===m?Q(d,E):Q(I,d)),l&&e.preventDefault();}}n(J,"navigate");function x(){y&&y.select(),c.show();}n(x,"showClock");function Z(){c.hide();}n(Z,"hideClock");function Me(e){K=!0,W=L,M=m,$lib.hasClass(U,r.SELECTED)&&(W=U,M=p);var i=$lib.getPos(W,null,!0);h.radius=(i.bottom-i.top)/2,h.innerRadius=h.radius/2,h.cy=i.top+h.radius,h.cx=i.left+h.radius,ce(e);}n(Me,"startDrag");function ce(e){if(K){var i=$lib.clientX(e),l=$lib.clientY(e),o=h.cy-l,s=i-h.cx,u=Math.atan2(o,s),a=90-u*(180/Math.PI);a<0&&(a=360+a),W==U?Ee(Je(a)):$e(qe(a,t.is24HourClock&&Ne(i,l,h.cx,h.cy,h.innerRadius)));}}n(ce,"drag");function fe(){K&&(M.focus(),M===m&&!$lib.isEmpty(I)?B():M===p&&!$lib.isEmpty(I)&&!$lib.isEmpty(E)&&t.viewMode==b.INPUT_CLOCK_POPUP&&Z(),g(Q(I,E))),K=!1;}n(fe,"endDrag");function Q(e,i){return de(e)+":"+de(i)}n(Q,"mergeValues");function de(e){return $lib.isEmpty(e)?"":e}n(de,"validateValue");function N(){$lib.hasClass(O,r.SELECTED)||(me(),Se());}n(N,"selectHourClock");function B(){$lib.hasClass(P,r.SELECTED)||(me(!0),Be());}n(B,"selectMinuteClock");function me(e){var i=e?P:O,l=e?O:P,o=e?U:L,s=e?L:U;$lib.removeClass(l,r.SELECTED),$lib.removeClass(s,r.SELECTED),$lib.addClass(i,r.SELECTED),$lib.addClass(o,r.SELECTED);}n(me,"toggleClock");function Se(){var e=pe();$lib.each(Y,function(i,l){(!e||e.hours[l])&&Ae(parseFloat(l))?$lib.removeClass(i,r.DISABLED):$lib.addClass(i,r.DISABLED);});}n(Se,"enableHourClockItems");function Be(){var e=pe();$lib.each(X,function(i,l){(!e||e.times[parseFloat(I).toString()+":"+l])&&Fe(parseFloat(I),parseFloat(l))?$lib.removeClass(i,r.DISABLED):(E==l&&(E=""),$lib.addClass(i,r.DISABLED));});}n(Be,"enableMinuteClockItems");function pe(){var e,i=t.incrementalValue||null,l=z(),o=ee();if(i){var s=new Date,u=new Date;for(e={times:{},hours:{}},s.setHours(l[0],l[1]),u.setHours(o[0],o[1]);s<u;)e.hours[s.getHours().toString()]=!0,e.times[s.getHours().toString()+":"+s.getMinutes().toString()]=!0,s=be(s,i);e.hours[s.getHours().toString()]=!0,e.times[s.getHours().toString()+":"+s.getMinutes().toString()]=!0;}return e}n(pe,"getIncrementalValues");function Ae(e){var i=t.allowedTimes,l=z(),o=ee();if(e<l[0]||e>o[0])return !1;if(!$lib.isEmpty(i)){var s=i[$lib.indexOf(i,function(u){return u[0].split(":")[0]==e||u.length>1&&u[1].split(":")[0]==e})];if(s&&t.disallowDates||!s&&!t.disallowDates)return !1}return !0}n(Ae,"isAllowedHour");function Fe(e,i){var l=t.allowedTimes,o=z(),s=ee();if(e==o[0]&&i<o[1]||e==s[0]&&i>s[1])return !1;if(!$lib.isEmpty(l)){var u=l[$lib.indexOf(l,function(a){if(a.length==1)return a=a[0].split(":"),a[0]==e&&a[1]==i;var C=parseFloat(a[0].split(":").join("")),f=parseFloat(a[1].split(":").join("")),d=parseFloat(e.toString()+$lib.padLeft(i.toString(),2));return d>=C&&d<=f})];if(u&&t.disallowDates||!u&&!t.disallowDates)return !1}return !0}n(Fe,"isAllowedTime");function z(){return t.minValue?t.minValue.split(":"):[0,0]}n(z,"getMinValue");function ee(){return t.maxValue?t.maxValue.split(":"):[Re(),59]}n(ee,"getMaxValue");function Re(){return t.is24HourClock?23:11}n(Re,"getMaxHours");function Ke(e,i){var l=i.event?i.event.key:null;t.autoFocus&&l!=null&&l!="ArrowUp"&&l!="ArrowDown"&&!i.incremental&&T.getValue().length==2&&v.select();}n(Ke,"moveFocus");function We(e){Ce(e,null,null,t.incrementalValue?t.incrementalValue*-1:e.incrementalValue*-1);}n(We,"decrement");function Ce(e,i,l,o){if(e.incrementalValue==1){he();return}var s=T.getValue()||0,u=v.getValue()||0;o==null&&(o=t.incrementalValue);var a=new Date;a.setHours(parseFloat(s),parseFloat(u)),a=be(a,o),g(a.getHours()+":"+a.getMinutes());}n(Ce,"increment");function be(e,i){var l=new Date(e.getTime()+i*6e4);return l}n(be,"addMinutes");function he(){var e=T.getValue()+":"+v.getValue();g(e);}n(he,"valueChanged");function Ye(){g(t.value);}n(Ye,"reset");function Xe(){g();}n(Xe,"clear");function je(){var e=$lib(null,t.element,"input")[0];e.select();}n(je,"select");function g(e,i){e=e||"",e==":"&&(e="");var l=t.is24HourClock,o=e.split(":"),s,u=o[0]?$lib.padLeft(o[0],2):"",a=o[1]?$lib.padLeft(o[1],2):"",C=t.minValue?parseFloat(t.minValue.replace(":","")):null,f=t.maxValue?parseFloat(t.maxValue.replace(":","")):null;if(u&&(s=parseFloat(u),!l&&s>11||l&&s>23?u="00":s<0&&(u=l?"23":"11")),a&&(t.incrementalValue&&(a=G(a).toString()),s=parseFloat(a),s>59?a="00":s<0&&(a="59")),!$lib.isEmpty(e)){var d=parseFloat($lib.format("{0}{1}",u,a||"00"));C&&d<C?(C=C.toString(),a=C.slice(-2),u=$lib.padLeft(C.substr(0,C.length-a.length),2)):f&&d>f&&(f=f.toString(),a=f.slice(-2),u=$lib.padLeft(f.substr(0,f.length-a.length),2)),e=$lib.padLeft(u,2)+":"+$lib.padLeft(a,2);}!l&&u=="00"&&(u="12"),t.viewMode<b.CLOCK&&(T.getValue()!=u&&T.setValue(u),v.getValue()!=a&&v.setValue(a)),c&&(!t.is24HourClock&&u=="12"&&(u=0),Ge($lib.isEmpty(u)?null:parseFloat(u),$lib.isEmpty(a)?null:parseFloat(a)));var V=k.value;!$lib.isEmpty(u)&&!$lib.isEmpty(a)?k.__setValue(e):k.__setValue(""),i!=!1&&V!=e&&t.events.onChanged.fire(t,{value:e});}n(g,"setValue");function Ge(e,i){$e(e),Ee(i);}n(Ge,"setClockValue");function $e(e){if(e!==I){if(I=e,Ie([ne,m]),$lib.isEmpty(e)){O.textContent="--",A(m,0);return}var i=Y[e.toString()];if(N(),$lib.hasClass(i,r.DISABLED)){I="";return}Ze(O,e),$lib.addClass(i,r.SELECTED),ne=i,$lib.addClass(m,r.SELECTED),A(m,Qe(e)),t.is24HourClock&&e>11?$lib.addClass(m,r.TWENTYFOURHAND):$lib.removeClass(m,r.TWENTYFOURHAND);}}n($e,"setClockHour");function Ee(e){if(e!==E){if(Ie([ie,p]),p.firstChild&&($lib.remove(p.firstChild),$lib.removeClass(p,r.BETWEEN)),$lib.isEmpty(e)){P.textContent="--",E=0,A(p,0);return}t.incrementalValue&&(e=G(e)),E=e;var i=X[e.toString()];if(B(),$lib.hasClass(i,r.DISABLED)){E="",E=0;return}if(P.textContent=$lib.padLeft(e.toString(),2),i)$lib.addClass(i,r.SELECTED),ie=i;else {var l=$lib.element(p);$lib.element(l,"","span",$lib.padLeft(e,2)),A(l,ge(e)*-1),$.addClass(p,r.BETWEEN);}$lib.addClass(p,r.SELECTED),A(p,ge(e));}}n(Ee,"setClockMinute");function Ze(e,i){i==0&&!t.is24HourClock&&(i=12),e.textContent=$lib.padLeft(i.toString(),2);}n(Ze,"setDisplayValue");function Ie(e){$lib.each(e,function(i){i&&$lib.removeClass(i,r.SELECTED);});}n(Ie,"clearSelected");function A(e,i){e.style.transform="rotate("+i+"deg)";}n(A,"rotate");function qe(e,i){var l=Math.round(.03333333333333333*e);return i?(l=l+12,l>23&&(l=12)):l>11&&(l=0),l}n(qe,"degreesToHour");function Je(e){var i=Math.round(.16666666666666666*e);return i>59?0:i}n(Je,"degreesToMinute");function Qe(e){e=t.is24HourClock&&e>11?e-12:e;var i=360/12*e;return i>=360?0:i}n(Qe,"hourToDegrees");function ge(e){var i=6*e;return i>=360?0:i}n(ge,"minuteToDegrees");function ze(){var e=componyx.UI.Button.getSelected(t.id);return e.text}n(ze,"getMeridiemValue");function et(){return k.value}n(et,"getValue");function tt(){var e=k.value.split(":")[0];return e?parseInt(e,10):null}n(tt,"getHour");function it(){var e=k.value.split(":")[1];return e?parseInt(e,10):null}n(it,"getMinute");function nt(){c=S=w=null,$lib.off(H,"keyup",se),$lib.off(H,"keyup",re);}n(nt,"dispose");},"TimePicker"),componyx.UI.TimePicker.prototype=Object.create($base.methods),componyx.UI.TimePicker.prototype.constructor=componyx.UI.TimePicker,componyx.UI.TimePicker.ViewModeOption={INPUT_CLOCK_POPUP:0,INPUT_CLOCK_STATIC:1,INPUT:2,CLOCK:3};})(window);
253
+ })(window);
254
+
255
+
256
+ (async function(window){var K=Object.defineProperty;var o=(N,I)=>K(N,"name",{value:I,configurable:!0});(function(N){componyx.UI.TooltipManager=o(function(X,j){var i=this;$base.static.ThemeOption;var c=!0,b,d,v=new Map,l,h={},T={},R,f=componyx.UI.TooltipManager.PointerEventOption,y=new Map;this.cssClassBox="",this.visibleDuration=null,this.showOnPointerEvent=f.ENTER,this.showOnFocus=!0,this.showOnBlur=!1,this.selectableTooltipContent=!1,this.showDelay=200,this.hideDelay=200,this.arrowless=!1,this.singleBoxInstance=!0,Object.defineProperty(this,"triggers",{get:o(function(){return y},"get"),set:o(function(e){if(e instanceof Map){y=e;return}var t=new Map;Array.isArray(e)?e.forEach(function(n){t.set(n.triggerId,n);}):$lib.each(e,function(n,r){t.set(r,n);}),y=t;},"set"),enumerable:!0,configurable:!0}),this.boxId=null,$base.Component.apply(this,[X,j]),this.getBox=function(e){return s(e)},this.activeTriggerId=function(e){return s(e).__currentTriggerId},this.addTooltip=function(e,t,n){i.addTemplate(e,t,n),T[e]=!0,!i.singleBoxInstance&&!h[e]&&w(e);},this.removeTooltip=function(e,t=!1){var r,u=[],a=s(e);if(i.addTemplate(e,null),T[e]=!0,!t)for(i.triggers.forEach(function(B,x){B.tooltipId===e&&u.push(x);}),r=0;r<u.length;++r)i.removeTrigger(u[r]);$lib.isEmpty(a.__currentTriggerId)||(clearTimeout(a.__timerId),a.hide(!0),a.__currentTriggerId=null),i.singleBoxInstance?a.__tooltipId===e&&(a.contentElement.innerHTML=""):(a.destroy(),delete h[e]);},this.addTrigger=function(e,t,n,r,u){i.triggers.set(e,{tooltipId:t,showOnFocus:r,showOnBlur:u,showOnPointerEvent:n}),i.renderState==$base.static.RenderState.RENDERED&&U(e);},this.removeTrigger=function(e){i.renderState==$base.static.RenderState.RENDERED&&g(e),i.triggers.delete(e);},this.showTooltip=function(e,t=!1){t&&(c=!1),D(e);},this.hideTooltip=function(e,t){m(e,t);},this.hideAllTooltips=function(e){P(e);},this.allowHide=function(e){b=!e;},this.render=function(){if(i.renderState!=$base.static.RenderState.RENDERING){$base.methods.render.call(i,L,"tooltip-manager");return}if(i.singleBoxInstance)w();else {var e=!0;$lib.each(i.templates,function(t,n){h[n]||(e=!1,w(n));}),e&&M();}},this.destroy=function(...e){J(),$base.methods.destroy.call(this,...e);};function L(){return ["TooltipManager",["Box"]]}o(L,"preRender");function M(){i.renderState!=$base.static.RenderState.RENDERED&&(W(),$base.methods.postRender.call(i));}o(M,"postRender");function w(e){var t=i.id+"_Box",n=i.arrowless?" arrowless":"";e&&(t+=e),l=$UI.createComponent(componyx.UI.Box,{id:t,containerElement:i.element}),l.clone($UI.store[i.boxId],i),l.cssClass=(l.cssClass||i.cssClassBox||"box tooltip")+n,l.theme=$base.static.ThemeOption.NONE,l.autoPosition=l.autoPosition!=null&&l.autoPosition!=componyx.UI.Box.AutoPositionOption.NONE?l.autoPosition:componyx.UI.Box.AutoPositionOption.POINTER,l.style=i.selectableTooltipContent?"":"pointer-events: none",l.__timerId=null,l.__currentTriggerId=null,l.events.onPostRender.priorityAdd(M,null),l.events.onHideComplete.priorityAdd(q,e),l.render(),e&&(h[e]=l);}o(w,"createBox");function W(){i.triggers.forEach(function(e,t){U(t);}),i.singleBoxInstance&&A(),$lib.on(document,"pointerdown",P,!1);}o(W,"bindEvents");function U(e){var t=null,n=i.triggers.get(e),r=i.showOnFocus,u=i.showOnBlur,a=$lib.isElement(e)?e:$lib("#"+e.toString()),B=n.tooltipId,x=p;g(e),i.showOnPointerEvent!=f.NONE&&(t=H(i.showOnPointerEvent)),!$lib.isEmpty(n.showOnPointerEvent)&&n.showOnPointerEvent!=i.showOnPointerEvent&&(n.showOnPointerEvent==f.NONE?t=null:t=H(n.showOnPointerEvent)),!$lib.isEmpty(n.showOnFocus)&&n.showOnFocus!=r&&(r=n.showOnFocus),!$lib.isEmpty(n.showOnBlur)&&n.showOnBlur!=u&&(u=n.showOnBlur),!(t&&$lib.has(a,t,p)||!t&&$lib.has(a,"focus",$))&&(t=="pointerdown"&&(x=F),t&&$lib.on(a,t,x,e),t=="pointerenter"&&$lib.on(a,"pointerleave",_,e),r&&($lib.on(a,"focus",$,e),$lib.on(a,"blur",S,[e,!1])),u&&$lib.on(a,"blur",O,[e,!0]),i.singleBoxInstance||A(B));}o(U,"bindTriggerEvents");function A(e){var t=s(e);!t||!i.selectableTooltipContent||!t.trackPointer&&!$lib.has(t.element,"pointerenter",C)&&($lib.on(t.element,"pointerenter",C,[e]),$lib.on(t.element,"pointerleave",function(n){if(!$lib.isEmpty(s(n).__currentTriggerId)){var r=G(s(n).__currentTriggerId);if(r==f.ENTER){var u=new Date().getTime();t.__extraHideDelay=null,i.visibleDuration>0&&u-t.__visibleStart<i.visibleDuration&&(t.__extraHideDelay=i.visibleDuration-(u-t.__visibleStart)),_(s(n).__currentTriggerId);}}},[e]),$lib.on(t.element,"pointerdown",function(){d=!0,c=!1;}));}o(A,"bindBoxEvents");function C(e){clearTimeout(s(e).__timerId);}o(C,"boxEnter");function G(e){var t=i.triggers.get(e);return $lib.isEmpty(t.showOnPointerEvent)?i.showOnPointerEvent:t.showOnPointerEvent}o(G,"getPointerEvent");function H(e){return e==f.DOWN?"pointerdown":e==f.ENTER?"pointerenter":"contextmenu"}o(H,"getPointerEventType");function g(e){var t=$lib.isElement(e)?e:$lib("#"+e.toString());t&&($lib.off(t,"pointerdown",F),$lib.off(t,"pointerenter contextmenu",p),$lib.off(t,"pointerleave",_),$lib.off(t,"focus",$),$lib.off(t,"blur",O),$lib.off(t,"blur",S));}o(g,"removeEvent");function $(e,t){clearTimeout(R),v.set(e,!0),p(e);}o($,"triggerFocus");function S(e,t){R=setTimeout(O.bind(i,e,t),0);}o(S,"triggerBlurDelayed");function O(e,t,n){d?c=!1:c=!0,d=!1,v.set(e,!1),t?p(e):_(e),c=!0;}o(O,"triggerBlur");function F(e){c=!1,p(e);}o(F,"triggerClick");function V(e){if(i.visibleDuration>0){var t=s(E(e));t.__extraHideDelay=null,t.__visibleStart=new Date().getTime(),t.__timerId=setTimeout(function(){m(e);},i.visibleDuration);}}o(V,"setVisibleTime");function p(e){var t=E(e),n=s(t);$lib.event.type=="contextmenu"&&$lib.event.preventDefault(),clearTimeout(n.__timerId),!i.showDelay||e==n.__currentTriggerId&&n.showing?(n.__currentTriggerId=e,D(e)):(n.hide(!0),n.__currentTriggerId=e,n.__timerId=setTimeout(function(){D(e);},i.showDelay));}o(p,"showTooltipDelayed");function D(e){var t=i.triggers.get(e)?.tooltipId,n=t?s(t):null,r=n.autoPosition,u;if(!(!n||!i.hasTemplate(t))){if(clearTimeout(n.__timerId),n.showing){u=typeof e=="string"?$lib("#"+e):e,n.expander&&n.expander!=u&&(n.expander=e),n.__currentTriggerId=e,k(t,e);return}n.hide(!0),n.__currentTriggerId=e,r==componyx.UI.Box.AutoPositionOption.POINTER&&$lib.event&&$lib.event.type==="focus"&&(n.autoPosition=componyx.UI.Box.AutoPositionOption.EXPAND),n.autoPosition==componyx.UI.Box.AutoPositionOption.EXPAND&&(n.expander=e),k(t,e),n.autoPosition=r;}}o(D,"showTooltip");function P(e){if(!c||b){c=!0;return}if(i.singleBoxInstance){let t=s();if(!t)return;e||!i.hideDelay&&!t.__extraHideDelay?(clearTimeout(t.__timerId),t.hide(e)):(t.__timerId=setTimeout(function(){clearTimeout(t.__timerId),t.hide();},(i.hideDelay||0)+t.__extraHideDelay||0),t.__extraHideDelay=null);}else i.triggers.forEach(function(t,n){e?m(n,!0):_(n);});c=!0;}o(P,"hideAllTooltips");function _(e){if(!$lib.isEmpty(e)){var t=E(e),n=t?s(t):null;$lib.isEmpty(t)||n.__currentTriggerId!=e||v.get(e)||!c||b||(clearTimeout(n.__timerId),!i.hideDelay&&!n.__extraHideDelay?m(e):n.__timerId=setTimeout(function(){m(e);},(i.hideDelay||0)+n.__extraHideDelay||0),n.__extraHideDelay=null);}}o(_,"hideTooltipDelayed");function m(e,t){if(!b){var n=E(e),r=s(n);$lib.isEmpty(n)||r.__currentTriggerId!=e||(clearTimeout(r.__timerId),r.hide(t));}}o(m,"hideTooltip");function q(e){s(e).__currentTriggerId=null;}o(q,"hideTooltipComplete");function k(e,t){var n=s(e),r;!T[e]&&(r=z(e))&&r.childNodes.length>0&&i.addTemplate(n.__tooltipId,r,i.templates.get(n.__tooltipId).cloneable),n.contentElement.innerHTML="",i.applyTemplate(n.contentElement,e),T[e]=!1,n.__tooltipId=e,n.update(null,!0),V(t);}o(k,"updateBox");function E(e){var t=i.triggers.get(e);if(t)return t.tooltipId}o(E,"getTooltipId");function s(e){return i.singleBoxInstance?l:h[e]}o(s,"getBox");function z(e){return $lib.extract(s(e).contentElement)}o(z,"extractBoxContent");function J(){$lib.off(document,"pointerdown",P),i.triggers.forEach(function(e,t){g(t);}),d=!1,c=!0;}o(J,"dispose");},"TooltipManager"),componyx.UI.TooltipManager.prototype=Object.create($base.methods),componyx.UI.TooltipManager.prototype.constructor=componyx.UI.TooltipManager,componyx.UI.TooltipManager.PointerEventOption={NONE:0,ENTER:1,DOWN:2,CONTEXT:3},componyx.UI.TooltipManager.Trigger=function(){this.triggerId=null,this.tooltipId=null,this.showOnPointerEvent=null,this.showOnFocus=null,this.showOnBlur=null;};})();
257
+ })();
258
+
259
+
260
+ (async function(window){var ni=Object.defineProperty;var u=(W,se)=>ni(W,"name",{value:se,configurable:!0});(function(W){componyx.UI.Validator=u(function(_e,Be){let a=this,Ge=["themeDefault"],o=null,A={},q=!1,Q=null,H=null,Y=!1,y,V={VALIDATOR:"validator",FEEDBACK:"feedback",SUMMARY:"summary",VALIDATING:"validating",VALID:"valid",INVALID:"invalid",ICON:"icon",MULTIPLE:"multiple",TOOLTIPTRIGGER:"tooltip-trigger"},D={VALIDATING:0,VALID:1,INVALID:2},b=componyx.UI.Validator.TypeOption,g=componyx.UI.Validator.DataTypeOption,X=componyx.UI.Validator.ShowValidFieldsOption,v=componyx.UI.Validator.MessageDisplayOption,P="data-ui-validator-",de="input,textarea,select,[contenteditable=true]",Ke=["email","url","tel","number","date","time","range"],z=null,L=Object.create,k={msg:""},R=u(e=>({value:e,writable:!0,enumerable:!0}),"_prop"),oe=u(function(e){this.when=R(e);},"_Required"),ue=u(function(e){this.dataType=R(e);},"_DataType"),Z=u(function(e,i){this.min=R(e),this.max=R(i);},"_Range"),fe=u(function(e){this.pattern=R(e);},"_RegEx"),ce=u(function(e,i){this.fields=R(e),this.operators=R(i);},"_Compare"),pe=u(function(e){this.onValidation=R(e);},"_Custom"),me=u(function(e,i){this.onBeforeValidation=R(e),this.onAfterValidation=R(i);},"_Ajax"),p={feedbackId:"",autoValidate:"",live:"",getValue:"",required:L(k,new oe),dataType:L(k,new ue),length:L(k,new Z),range:L(k,new Z),regex:L(k,new fe),compare:L(k,new ce),custom:L(k,new pe),ajax:L(k,new me)};p.id=P+"id",p.feedbackId=P+"feedbackid",p.autoValidate=P+"autovalidate",p.live=P+"live",p.getValue=P+"getvalue",$lib.each(p,function(e,i){e==p.id||e==p.feedbackId||e==p.autoValidate||e==p.live||e==p.getValue||$lib.each(p[i],function(t,n){p[i][n]=P+i.toLowerCase()+"-"+n.toLowerCase();});}),this.cssClassFeedback="",this.cssClassSummary="",this.cssClassValidating="",this.cssClassValid="",this.cssClassInvalid="",this.cssClassIcon="",this.cssClassTooltipTrigger="",this.validatingFieldMessage="",this.validFieldMessage="",this.invalidFieldMessage="",this.ajaxErrorMessage="",this.validatingFieldMessageDelay=50,this.showValidFields=X.NONE,this.messageDisplay=v.FEEDBACKFIRST,this.summaryMessageDisplay=v.FEEDBACKFIRST,this.showValidFieldsInSummary=!1,this.feedbackIdentifyingCssClass="",this.summaryContainerId="",this.formId=null,this.dateFormat="mm/dd/yyyy",this.decimalSeparator=".",this.groupSeparator=",",this.rules=null,this.validFields={},this.invalidFields={},this.friendlyFieldNames={},this.staticASPNETFieldNames=!0,this.validationCssOnField=!0,this.live=!1,this.liveDelay=0,this.detectFields=!0,this.tooltipTriggerTabIndex="",this.tooltipManagerId=null;function je(e){Object.assign(this,e),this.onPreInit=$base.static.createEvent("onPreInit"),this.onPostInit=$base.static.createEvent("onPostInit"),this.onValidField=$base.static.createEvent("onValidField"),this.onInvalidField=$base.static.createEvent("onInvalidField"),this.onValid=$base.static.createEvent("onValid"),this.onInvalid=$base.static.createEvent("onInvalid"),this.onFieldFeedback=$base.static.createEvent("onFieldFeedback");}u(je,"ValidatorEvents"),this.events=new je(this.events),$base.Component.apply(this,[_e,Be]),this.ajax.addMethod("validate"),this.isValid=function(){return Te()},this.validateRequired=function(e,i){return Fe(e,i)},this.validateCompare=function(e,i,t){return $e(e,i,t)},this.validateRange=function(e,i,t){return Ae(e,i,t)},this.validateLength=function(e,i){return Ee(e,i)},this.validateType=function(e,i){return Ve(e,i)},this.validateRegEx=function(e,i){return Ce(e,i)},this.getFields=function(){return o},this.setValidatingFieldFeedbackTemplate=function(e){a.addTemplate("ValidatingFieldFeedback",e);},this.setValidFieldFeedbackTemplate=function(e){a.addTemplate("ValidFieldFeedback",e);},this.setInvalidFieldFeedbackTemplate=function(e){a.addTemplate("InvalidFieldFeedback",e);},this.setValidFieldSummaryTemplate=function(e){a.addTemplate("ValidFieldSummary",e);},this.setInvalidFieldSummaryTemplate=function(e){a.addTemplate("InvalidFieldSummary",e);},this.setInvalidFieldPopupTemplate=function(e){a.addTemplate("InvalidFieldPopup",e);},this.hide=null,this.show=function(){a.renderState==$base.static.RenderState.NONE&&this.render();},this.init=function(){if(a.renderState==$base.static.RenderState.RENDERING)return;const e=a.element;let i=["Box","TooltipManager"];a.destroy(!0,!1),a.element=e,a.hasTheme=!1,$UI.store[a.id]=a,e&&($UI.elementStore.set(e,a),$base.methods.setupMutationObserver.call(a)),a.renderState=$base.static.RenderState.RENDERING,a.registerResources(function(){return ["Validator",i]},function(){a.hasTemplate("ValidatingFieldFeedback")||a.addTemplate("ValidatingFieldFeedback","{icon}{message}",!0),a.hasTemplate("ValidFieldFeedback")||a.addTemplate("ValidFieldFeedback","{icon}{message}",!0),a.hasTemplate("InvalidFieldFeedback")||a.addTemplate("InvalidFieldFeedback","{icon}{tooltipTrigger}{multiple}[ 1-{messageCount} ]{/multiple}{/tooltipTrigger} {message}",!0),a.hasTemplate("ValidFieldSummary")||a.addTemplate("ValidFieldSummary","{icon}{fieldName} {message}",!0),a.hasTemplate("InvalidFieldSummary")||a.addTemplate("InvalidFieldSummary","{icon}{fieldName}: {tooltipTrigger}{multiple}[ 1-{messageCount} ]{/multiple}{/tooltipTrigger} {message}",!0),a.hasTemplate("InvalidFieldPopup")||a.addTemplate("InvalidFieldPopup","{message}",!0),a.renderState=$base.static.RenderState.RENDERED,Ze(),a.events.onPreInit.fire(a),$UI.busy?$UI.onPostRender.has(ee)||$UI.onPostRender.once(ee):ee();});},this.render=this.init,this.detect=function(e,i=!1){let t,n,l={},r=u((s,m)=>{let h=s.getAttribute(m);if(h!=null)return h;if(m.startsWith("data-ui-validator-")){const T=m.slice(18);if(h=s.getAttribute("ui-val-"+T),h!=null||(h=s.getAttribute("ui-validator-"+T),h!=null))return h}return null},"getValidatorAttr"),c=u((s,m)=>r(s,m)!=null,"hasValidatorAttr"),f=u(function(s,m,h){var T=L(k,h);return T.feedBackId=r(s,p.feedbackId),T.autoValidate=c(s,p.autoValidate)?r(s,p.autoValidate)!="false":null,T.live=c(s,p.live)?r(s,p.live)!="false":null,T.getValue=r(s,p.getValue),T.msg=r(s,m.msg),T.native=m===p.required&&s.hasAttribute("required")||m===p.dataType&&Ke.includes(s.type)||m===p.length&&(s.hasAttribute("minlength")||s.hasAttribute("maxlength"))||m===p.range&&(s.hasAttribute("min")||s.hasAttribute("max"))||m===p.regex&&s.hasAttribute("pattern"),T.checkValidity=T.native?s.checkValidity.bind(s):null,T},"setup");z=e||N()||document;let d=z.querySelectorAll(de);i&&(d=Array.from(d).filter(s=>be(s))),$lib.each(d,function(s){let m=C(s);if(!($lib.isEmpty(m)||l[m]||c(s,p.id)&&r(s,p.id)!=a.id)){if(l[m]=!0,c(s,p.required.msg)&&(t=f(s,p.required,new oe(r(s,p.required.when))),a.addRule(m,t,b.REQUIRED)),c(s,p.dataType.msg)&&(n=r(s,p.dataType.dataType),t=f(s,p.dataType,new ue($lib.isEmpty(n)?0:g[n.toUpperCase()])),a.addRule(m,t,b.DATATYPE)),c(s,p.length.msg)&&(t=f(s,p.length,new Z(r(s,p.length.min),r(s,p.length.max))),a.addRule(m,t,b.LENGTH)),c(s,p.range.msg)&&(t=f(s,p.range,new Z(r(s,p.range.min),r(s,p.range.max))),a.addRule(m,t,b.RANGE)),c(s,p.regex.msg)&&(t=f(s,p.regex,new fe(r(s,p.regex.pattern))),a.addRule(m,t,b.REGEX)),c(s,p.compare.msg)){const h=(r(s,p.compare.fields)||"").split(",").map($=>$.trim()),T=(r(s,p.compare.operators)||"").split(",").map($=>$.trim());t=f(s,p.compare,new ce(h,T)),a.addRule(m,t,b.COMPARE);}c(s,p.custom.onValidation)&&(t=f(s,p.custom,new pe(x(r(s,p.custom.onValidation)))),a.addRule(m,t,b.CUSTOM)),c(s,p.ajax.msg)&&(t=f(s,p.ajax,new me(x(r(s,p.ajax.onBeforeValidation)),x(r(s,p.ajax.onAfterValidation)))),a.addRule(m,t,b.AJAX));}}),z=null;},this.addRule=function(e,i,t){var n=N();e&&($lib.isArray(e)||(e=[e]),i||(i={}),o||(o={},n&&$lib.on(n,"submit",ie)),i.fields&&!$lib.isArray(i.fields)&&(i.fields=[i.fields]),$lib.each(e,function(l){let r=E(l);if(o[l]?(o[l].isValid=!1,o[l].lastValue=null,o[l].lastMsg=null,$lib.isEmpty(i.feedbackId)||(o[l].feedbackId=i.feedbackId),$lib.isEmpty(i.autoValidate)||(o[l].autoValidate=i.autoValidate),$lib.isEmpty(i.live)||(o[l].live=i.live),$lib.isEmpty(i.getValue)||(o[l].getValue=i.getValue)):o[l]={feedbackId:i.feedbackId,autoValidate:i.autoValidate,live:i.live,getValue:i.getValue,isValid:!1,lastValue:null,lastMsg:null,element:r||null},r&&o[l].autoValidate!=!1){let f=[r];r.type=="radio"&&(f=G(r)),t===b.COMPARE&&i.fields&&i.fields.forEach(d=>{let s=d instanceof HTMLElement?d:E(d);s&&f.indexOf(s)===-1&&(s.type=="radio"?f=f.concat(G(s)):f.push(s));}),$lib.each(f,function(d){let s=d.isContentEditable?"blur":"change";$lib.on(d,s,Ie,[d,!1],null,!0),$lib.on(d,"focus",xe,l,null,!0),d.nodeName.toLowerCase()!="select"&&(o[l].live==!0||a.live&&o[l].live!=!1)&&$lib.on(d,"input",ve,[d,!1],null,!0);});}delete i.feedbackId,delete i.autoValidate,delete i.live,delete i.getValue,$lib.isEmpty(t)||(o[l][t]||(o[l].isValid=!1),o[l][t]=i);var c=o[l][b.REQUIRED];(!o[l][b.REQUIRED]||c.when&&!ge(c.when,r))&&$lib.isEmpty(S(r))&&(o[l].isValid=!0);}));},this.resetState=function(e){$lib.each(e,function(i){Se(o[i],i);});},this.resetStates=function(e){$lib.each(o,function(i,t){(!e||e&&i.element&&e.contains(i.element))&&Se(i,t);});},this.hasRules=function(e){return o!=null&&o[e]!=null},this.hasRule=function(e,i){return o!=null&&o[e]!=null&&o[e][i]!=null},this.getRules=function(e){return o!=null&&o[e]!=null?o[e]:null},this.removeRule=function(e,i){o&&((!e.constructor||e.constructor.toString().indexOf("Array")==-1)&&(e=[e]),$lib.each(e,function(t){o[t]&&o[t][i]&&(w(t),delete o[t][i],o[t].lastValue=null,We(t)||(ne(t),delete o[t]));}));},this.removeRules=function(e){o&&(e=Array.isArray(e)?e:[e],$lib.each(e,function(i){o[i]&&(w(i),delete o[i],ne(i));}));},this.clear=function(e,i){var t=[];a.clearFeedback(e,i),$lib.each(o,function(n,l){if(e){if(n.element&&(document.contains(n.element)||i)&&!e.contains(n.element))return;t.push(l);}ne(l);}),e?$lib.each(t,function(n){delete o[n],A[n]&&delete A[n];}):(o=null,A={});},this.clearFeedback=function(e,i){$lib.each(o,function(t,n){e&&t.element&&(document.contains(t.element)||i)&&!e.contains(t.element)||w(n);});},this.clearFieldFeedback=function(e){w(e);},this.validate=function(e,i){return he(e,i)},this.validateField=function(e){return M(E(e)),o[e].isValid},this.destroy=function(...e){a.clear(),$base.methods.destroy.call(this,...e);};function ee(){a.rules&&qe(),a.detectFields&&a.detect(),Qe(),a.events.onPostInit.fire(a);}u(ee,"postInit");function qe(){typeof a.rules=="string"&&(a.rules=W.JSON.parse(a.rules)),$lib.each(a.rules,function(e){a.addRule(e.fieldName,e,e.type);});}u(qe,"initRules");function Qe(){var e;if(a.validFields)for(var i=0;a.validFields[i];++i)e=a.validFields[i],o[e].isValid=!0,K(E(e),D.VALID,o[e].feedbackId,!0);for(e in a.invalidFields)K(E(e),D.INVALID,o[e].feedbackId,!0,a.invalidFields[e]);}u(Qe,"initFeedback");function E(e){return $lib(function(i){var t=C(i);return !!(t&&t==e)},z||N(),"*",!0)}u(E,"getFieldByName");function G(e){let i=C(e),t=N()||document,n=t.querySelectorAll('input[type="radio"]'),l=[];return $lib.each(n,function(r){i==C(r)&&l.push(r);}),l}u(G,"getRadioFields");function C(e){var i=e.getAttribute("name");return i&&i.indexOf("$")>-1&&a.staticASPNETFieldNames&&(i=i.substr(i.lastIndexOf("$")+1)),i}u(C,"getFieldName");function S(e){let i,t=o[C(e)];if(Y&&t.lastValue!=null)return t.lastValue;if(" input textarea ".indexOf(" "+e.nodeName.toLowerCase()+" ")>-1)if(e.type=="radio"){let n=G(e);$lib.each(n,function(l){if(l.checked)return i=l.value,!1});}else i=e.value;else if(e.nodeName.toLowerCase()=="select")i=e.options[e.selectedIndex].value;else {let n=t.getValue;i=n?x(n)(e):e.innerHTML;}return i}u(S,"getFieldValue");function N(){if(a.formId)return $lib("#"+a.formId)}u(N,"getForm");function ie(e){return q=!0,he(null,!1,e)}u(ie,"validateForm");function he(e,i,t){const n=u(l=>be(l)?l.disabled||!i?!0:l.type==="checkbox"||l.type==="radio"?l.checked:!$lib.isEmpty(S(l)):!1,"shouldValidate");if($lib.isEmpty(o))return U(t);if(e){let l=e.querySelectorAll(de),r={};$lib.each(l,function(c,f){let d=C(c);!r[d]&&o[d]&&n(c)&&(r[d]=!0,M(c,!0));});}else $lib.each(o,function(l,r){let c=E(r);n(c)&&M(E(r),!0);});if($lib.isEmpty(A))q=!1;else {let l=N();return l&&$lib.off(l,"submit",ie),t&&t.preventDefault(),!1}return U(t)}u(he,"validate");function be(e){return e.type==="hidden"?e.parentElement.offsetParent!==null:e.offsetParent!==null}u(be,"isVisible");function He(){var e=N(),i=q;q=!1;var t=U();t&&i&&e.submit(),i&&$lib.on(e,"submit",ie);}u(He,"asyncValidationComplete");function U(e){if(Te()){var i=N();return i&&a.setPostBackArgs(i),a.events.onValid.fire(a),!0}else return e&&e.preventDefault(),a.events.onInvalid.fire(a),!1}u(U,"validationComplete");function Te(){var e=!0;return $lib.isEmpty(o)||$lib.each(o,function(i){return e=i.isValid}),e}u(Te,"isValid");function Ie(e,i){M(e,i);}u(Ie,"validateFieldOnChange");function ve(e,i,t){var n=t.key;ye(),n!="Tab"&&(Q=setTimeout(function(){M(e,i);},a.liveDelay));}u(ve,"validateFieldOnInput");function ye(){clearTimeout(Q),Q=null;}u(ye,"clearLiveTimer");function M(e,i,t=new Set){if(t.has(e))return;Y=!1;let n=!0,l=!0,r=C(e),c=e.type,f=S(e)||"",d=o[r],s=a.messageDisplay==v.FEEDBACKALL||a.messageDisplay==v.FEEDBACKFIRST_TOOLTIPALL||a.messageDisplay==v.TOOLTIPALL||i&&(a.summaryMessageDisplay==v.FEEDBACKALL||a.summaryMessageDisplay==v.FEEDBACKFIRST_TOOLTIPALL),m=[],h=d?.[b.DATATYPE]?d[b.DATATYPE].dataType:null;if(Q&&ye(),t.add(e),!d){ae(e,t);return}if(e.disabled){w(r),d.isValid=!0,i||U();return}if(A[r]){A[r].cached.push(function(){M(e,i);});return}if(!d[b.REQUIRED]&&!d[b.CUSTOM]&&!d[b.COMPARE]&&!i&&d.lastValue!=null&&d.lastValue===f&&" radio checkbox ".indexOf(c)==-1){a.messageDisplay>=v.TOOLTIPFIRST&&d.tooltipTrigger&&y.showTooltip(d.tooltipTrigger),U();return}if(Y=!0,d.lastValue=f,d.isValid=!1,d[b.REQUIRED]&&(l=n=Fe(d[b.REQUIRED],e,m)),(s||n)&&d[b.COMPARE]){let T=d[b.DATATYPE]?.dataType;n=$e(d[b.COMPARE],f,T,m),l&&(l=n);}if(!$lib.isEmpty(f)){(s||n)&&d[b.DATATYPE]&&(n=Ve(d[b.DATATYPE],f,m),l&&(l=n)),(s||n)&&d[b.LENGTH]&&(n=Ee(d[b.LENGTH],f,m),l&&(l=n)),(s||n)&&d[b.RANGE]&&(n=Ae(d[b.RANGE],f,h,m),l&&(l=n)),(s||n)&&d[b.REGEX]&&(n=Ce(d[b.REGEX],f,m),l&&(l=n));let T=d[b.CUSTOM];if(T&&(T.alwaysCheck||s||n)&&(n=Xe(T,{settings:T,field:e,fieldName:r,fieldValue:f,valid:l},m),(l||T.alwaysCheck)&&(l=n)),n&&d[b.AJAX]&&a.ajax.validate&&a.ajax.validate.isDefined()){ze(d[b.AJAX],e,r,f,i),A[r].cached.push(function(){ae(e,t);});return}}d.isValid=l,Re(e,i,m),d.silent=!1,Y=!1,ae(e,t);}u(M,"validateField");function ae(e,i=new Set){let t=[],n=C(e),l=o[n];(!l||!l[b.COMPARE])&&(t=Ye(e)),t.forEach(r=>{let c=C(r),f=o[c];f&&(f.silent=!0,M(r,!1,i));});}u(ae,"validateDependentFields");function Ye(e){const i=[];return $lib.each(o,function(t,n){const l=t[b.COMPARE];!l||!l.fields||l.fields.forEach(r=>{(r instanceof HTMLElement?r:E(r))===e&&i.push(E(n));});}),i}u(Ye,"getDependentFields");function Fe(e,i,t){let n=!1;if(e.native&&!e.when)n=e.checkValidity();else {if(e.when&&!ge(e.when,i))return !0;if(i.type=="checkbox")n=i.checked;else if(i.type=="radio"){let l=G(i);$lib.each(l,function(r){if(r.checked)return n=!0,!1});}else n=!$lib.isEmpty(S(i));}return !n&&!$lib.isEmpty(e.msg)&&t.push(e.msg),n}u(Fe,"validateRequired");function ge(e,i){return x(e)(a,{field:i})}u(ge,"isRequired");function Ve(e,i,t){var n=!0;if(e.native)n=e.checkValidity();else switch(e.dataType){case g.INTEGER:{var l=new RegExp("^[0-9]*["+$lib.escapeRegExp(a.groupSeparator)+"]*[0-9]+$");n=l.test(i);break}case g.FLOAT:{var r=new RegExp("^[0-9]*["+$lib.escapeRegExp(a.groupSeparator)+"]?[0-9]*["+$lib.escapeRegExp(a.decimalSeparator)+"]?[0-9]+$");n=r.test(i);break}case g.DATETIME:{var c=$lib.parseDate(i,a.dateFormat.toLowerCase());c||(n=!1);break}case g.EMAIL:{n=/^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,6}$/.test(i);break}case g.URL:{n=/^(https?|ftp):\/\/[-A-Za-z0-9+&@#\/%?=~_|!:,.;]+[-A-Za-z0-9+&@#\/%=~_|]$/.test(i);break}case g.SOURCE:{n=/^(blob:)?(https?|ftp|file):\/\/[-A-Za-z0-9+&@#\/%?=~_|!:,.;]+[-A-Za-z0-9+&@#\/%=~_|]$/.test(i)||/^\/[-A-Za-z0-9+&@#\/%?=~_|!:,.;]*$/.test(i);break}}return O(e,t,n)}u(Ve,"validateType");function Ee(e,i,t){let n=!0,l=i.length;return e.native?n=e.checkValidity():($lib.isEmpty(e.min)||(n=l>=e.min),n&&!$lib.isEmpty(e.max)&&(n=l<=e.max)),O(e,t,n)}u(Ee,"validateLength");function Ae(e,i,t,n){var l=!0;if(e.native)l=e.checkValidity();else if(t==g.DATETIME){var r=$lib.parseDate(i,a.dateFormat.toLowerCase()),c=$lib.parseDate(e.min,a.dateFormat.toLowerCase()),f=$lib.parseDate(e.max,a.dateFormat.toLowerCase());r?(c&&(l=_(r)>=_(c)),f&&l&&(l=_(r)<=_(f))):l=!1;}else if(t==g.INTEGER||t==g.FLOAT){var d=i.replace(a.decimalSeparator,".");l=!isNaN(d),l&&(isNaN(e.min)||(l=parseFloat(d)>=parseFloat(e.min)),l&&!isNaN(e.max)&&(l=parseFloat(d)<=parseFloat(e.max)));}else $lib.isEmpty(e.min)||(l=i>=e.min),l&&!$lib.isEmpty(e.max)&&(l=i<=e.max);return O(e,n,l)}u(Ae,"validateRange");function Ce(e,i,t){let n=!1;return e.native?n=e.checkValidity():(typeof e.pattern=="string"&&(e.pattern=new RegExp(e.pattern)),n=e.pattern.test(i)),O(e,t,n)}u(Ce,"validateRegEx");function $e(e,i,t,n){const l=e.fields,r=e.operators||[];let c=!0;for(let f=0;f<l.length;f++){const d=l[f],s=r[f]||r[0]||"==";let m;if(d instanceof HTMLElement)m=d.value;else if(typeof d=="string"){const h=E(d);m=h?h.value:d;}else m=d;if(t===g.INTEGER||t===g.FLOAT){const h=parseFloat(i.replace(a.decimalSeparator,".")),T=parseFloat(m.replace(a.decimalSeparator,"."));if(isNaN(h)||isNaN(T))return O(e,n,!1);i=h,m=T;}else if(t===g.DATETIME){const h=a.dateFormat.toLowerCase(),T=$lib.parseDate(i,h),$=$lib.parseDate(m,h);if(!T||!$)return O(e,n,!1);i=_(T),m=_($);}switch(s){case"<":c=i<m;break;case"<=":c=i<=m;break;case">=":c=i>=m;break;case">":c=i>m;break;default:c=i==m;}if(!c)break}return O(e,n,c)}u($e,"validateCompare");function Xe(e,i,t){return O(e,t,x(e.onValidation)(a,i))}u(Xe,"validateCustom");function ze(e,i,t,n,l){var r;A[t]={cached:[]},e.onBeforeValidation&&(r=x(e.onBeforeValidation)(a,{field:i,fieldName:t,fieldValue:n,feedbackId:o[t].feedbackId,settings:e})),e.data&&(r=r?$lib.clone(r,e.data,!0):e.data),r&&r.validationFields&&r.validationFields[0]&&($lib.isEmpty(r.validationFields[0].fieldName)&&(r.validationFields[0].fieldName=t),$lib.isEmpty(r.validationFields[0].value)&&(r.validationFields[0].value=n)),H=setTimeout(function(){K(i,D.VALIDATING,o[t].feedbackId,!1);},a.validatingFieldMessageDelay),a.ajaxCall("validate",r,{onSuccess:u(function(c){De(i,t,n,e,l,c);},"onSuccess"),onError:u(function(c){De(i,t,n,e,l,c,!0);},"onError")});}u(ze,"validateAjax");function O(e,i,t){return !t&&!$lib.isEmpty(e.msg)&&i&&i.push(e.msg),t}u(O,"addMsg");function De(e,i,t,n,l,r,c){var f,d=o[i],s=A[i].cached,m=n.data;H&&clearTimeout(H),H=null,d.lastValue=d.lastMsg=null,d.isValid=!1,d.silent=!1,f=a.ajaxErrorMessage,m&&m.validationFields&&$lib.each(m.validationFields,function(h){h.fieldName=h.value=null;}),c||(f=$lib.isEmpty(r.data.msg)?n.msg:r.data.msg,d.lastValue=t,d.lastMsg=f,d.isValid=r.data.isValid,!r.data.isValid&&(!f.constructor||f.constructor.toString().indexOf("Array")==-1)&&(f=[f]),n.onAfterValidation&&x(n.onAfterValidation)(a,{field:e,fieldName:i,fieldValue:t})),Re(e,l,f,!0),delete A[i],s&&s.length&&s.forEach(h=>h());}u(De,"validateAjaxFieldComplete");function Re(e,i,t,n){var l=C(e),r=S(e),c=o[l],f=a.showValidFields,d=Le(e,l,r,c,t);Oe(e),c.isValid?a.events.onValidField.fire(a,d):a.events.onInvalidField.fire(a,d),c.isValid&&(f==X.ALL||f==X.FILLED&&!$lib.isEmpty(r)||f==X.REQUIRED&&c[b.REQUIRED])?(w(l),K(e,D.VALID,o[l].feedbackId,i,t)):c.isValid?w(l):K(e,D.INVALID,o[l].feedbackId,i,t),!i&&!n?U():n&&$lib.isEmpty(A)&&He();}u(Re,"validateFieldComplete");function Le(){var e=arguments;return {fieldElement:e[0],fieldName:e[1],fieldValue:e[2],fieldData:e[3],msg:e[4],feedbackElement:e[5],summaryElement:e[6]}}u(Le,"eventArgs");function _(e){return parseInt(e.getFullYear()+ke(e.getMonth(),!0)+ke(e.getDate(),!0))}u(_,"comparableDate");function ke(e,i){return e=e.toString(),i&&e.length!=2?"0"+e:e}u(ke,"addNil");function K(e,i,t,T,l){if(e){var r=t?$lib("#"+t):Je(e),c=a.summaryContainerId?$lib("#"+a.summaryContainerId):null,f=C(e),d=S(e),s=o[f],m=s.silent,h={},T=c&&T,$=a.cssClassTooltipTrigger||V.TOOLTIPTRIGGER,J=a.cssClassInvalid||V.INVALID,re=a.cssClassValid||V.VALID,Ne=a.cssClassValidating||V.VALIDATING,I,F,B,Me,we;switch(m||(r&&a.messageDisplay>v.NONE&&(B=document.createElement("ul"),s.feedbackElement?.isConnected&&(I=s.feedbackElement,I.parentNode.replaceChild(B,I)),s.feedbackElement=I=B,le(I),$lib.addClass(I,a.cssClassFeedback||V.FEEDBACK),r.appendChild(I)),T&&(i==D.INVALID&&a.summaryMessageDisplay>v.NONE||i==D.VALID&&a.showValidFieldsInSummary)&&(B=document.createElement("ul"),s.summaryElement?.isConnected&&(F=s.summaryElement,F.parentNode.replaceChild(B,F)),s.summaryElement=F=B,le(F),$lib.addClass(F,a.cssClassSummary||V.SUMMARY),c.appendChild(F)),h.fieldName=a.friendlyFieldNames[f]||f,h.icon=$lib.format('<span class="{0}"></span>',a.cssClassIcon||V.ICON)),i){case D.VALIDATING:{if(a.validationCssOnField&&$lib.addClass(e,Ne),!I)break;h.message=a.validatingFieldMessage,I&&j(I,Ne,"ValidatingFieldFeedback",h);break}case D.VALID:{if(a.validationCssOnField&&$lib.addClass(e,re),!I&&!F)break;h.message=a.validFieldMessage,I&&j(I,re,"ValidFieldFeedback",h),F&&j(F,re,"ValidFieldSummary",h);break}case D.INVALID:{if(a.validationCssOnField&&$lib.addClass(e,J),m||!I&&!F&&a.messageDisplay<3)break;let ei=$lib.format('<span class="{0}">',a.cssClassMultiple||V.MULTIPLE),ii=$lib.format('<span class="{0}">',$),ai="</span>",Pe="tooltipTrigger",ti="multiple";$lib.addClass(I,J),h.messageCount=l.length,h.tooltipTrigger=h["/tooltipTrigger"]="",h.multiple='<span style="display:none;">',h["/multiple"]="</span>",l.length||l.push(a.invalidFieldMessage),l.length>1&&a.messageDisplay==v.FEEDBACKFIRST_TOOLTIPALL&&(h[ti]=ei,h[Pe]=ii,h["/"+Pe]=ai),$lib.each(l,function(li,Ue){h.message=li,I&&a.messageDisplay<v.TOOLTIPFIRST&&(Ue==0||a.messageDisplay==v.FEEDBACKALL)&&(Me=j(I,J,"InvalidFieldFeedback",h)),F&&(Ue==0||a.messageDisplay==v.FEEDBACKALL)&&(we=j(F,J,"InvalidFieldSummary",h));}),l.length>0&&(a.messageDisplay>=v.TOOLTIPFIRST?te(e,l,!1,s):I&&a.messageDisplay==v.FEEDBACKFIRST_TOOLTIPALL&&te($lib($,Me,"",!0),l,!0,s),F&&a.summaryMessageDisplay==v.FEEDBACKFIRST_TOOLTIPALL&&te($lib($,we,"",!0),l,!0,s,!0));break}}s.lastMsg=l,a.events.onFieldFeedback.fire(a,Le(e,f,d,s,l,I,F));}}u(K,"addFieldFeedback");function j(e,i,t,n){$lib.addClass(e,i);var l=e.appendChild(document.createElement("li"));return a.applyTemplate(l,t,n),l}u(j,"createItem");function w(e){if(e){var i=o[e];i.feedbackElement&&(i.feedbackElement.innerHTML=""),i.summaryElement&&(i.summaryElement.innerHTML=""),i.lastMsg=null,i.tooltipId&&(y.hideTooltip(i.tooltipTrigger),y.removeTrigger(i.tooltipTrigger),i.tooltipId=i.tooltipTrigger=null),i.summaryTooltipId&&(y.hideTooltip(i.summaryTooltipTrigger),y.removeTrigger(i.summaryTooltipTrigger),i.summaryTooltipId=i.summaryTooltipTrigger=null),i.element&&Oe(i.element);}}u(w,"clearFieldFeedback");function Oe(e){if(e){var i=a.cssClassInvalid||V.INVALID,t=a.cssClassValid||V.VALID,n=a.cssClassValidating||V.VALIDATING;$lib.removeClass(e,n+" "+t+" "+i);}}u(Oe,"clearCss");function Ze(){var e=a.id+"_TooltipManager";if(y=$UI.createComponent(componyx.UI.TooltipManager,{id:e}),y.clone($UI.store[a.tooltipManagerId],a,!0,!0,{triggers:""}),y.singleBoxInstance=!1,!y.boxId){var i=$UI.createComponent(componyx.UI.Box,{id:e+"_TempBox"});i.expandDirection=componyx.UI.Box.ExpandDirectionOption.DOWN,i.autoPosition=componyx.UI.Box.AutoPositionOption.EXPAND,i.autoInvertFit=!0,y.boxId=i.id;}y.show();}u(Ze,"createTooltipManager");function te(e,i,t,n,l){if(e){var r=document.createElement("ul"),c={},f=l?n.summaryTooltipId:n.tooltipId;f||(f=$lib.guid()),l?(n.summaryTooltipId=f,n.summaryTooltipTrigger=e):(n.tooltipId=f,n.tooltipTrigger=e),le(r),$lib.addClass(r,"tooltip"),$lib.each(i,function(d){c.message=d,a.applyTemplate(r.appendChild(document.createElement("li")),"InvalidFieldPopup",c);}),y.addTooltip(f,r),t?(e.setAttribute("tabindex",a.tooltipTriggerTabIndex||"0"),y.addTrigger(e,f)):y.addTrigger(e,f,0,!1,!1),t||y.showTooltip(e);}}u(te,"addTooltip");function xe(e){var i=o[e];i.tooltipTrigger&&y.hideTooltip(i.tooltipTrigger);}u(xe,"hideTooltip");function Je(e){if(!a.feedbackIdentifyingCssClass)return null;var i=null;return $lib(function(t,n){return (i=$lib(a.feedbackIdentifyingCssClass,t)[0])&&n(),!1},e,"",!1,!0),i||null}u(Je,"getFeedbackElement");function le(e){$lib.addClass(e,a.className||V.VALIDATOR),a.theme>$base.static.ThemeOption.NONE&&($lib.addClass(e,"theme"),$lib.addClass(e,Ge[parseInt(a.theme,10)-1]));}u(le,"addValidatorClass");function x(e){return $base.static.getMethod(e)}u(x,"getMethod");function We(e){if(!o[e])return !1;for(var i in b)if(o[e][b[i]])return !0;return !1}u(We,"hasRule");function Se(e,i){e&&(e.isValid=!1,e.lastValue=null,!e[b.REQUIRED]&&$lib.isEmpty(S(e.element||E(i)))&&(e.isValid=!0));}u(Se,"resetState");function ne(e){let i=E(e),t=[i];i&&(i.type=="radio"&&(t=G(i)),$lib.each(t,function(n){$lib.off(n,"blur change",Ie),$lib.off(n,"focus",xe),$lib.off(n,"input",ve);}));}u(ne,"removeBinding");},"Validator"),componyx.UI.Validator.prototype=Object.create($base.methods),componyx.UI.Validator.prototype.constructor=componyx.UI.Validator,componyx.UI.Validator.TypeOption={REQUIRED:0,DATATYPE:1,LENGTH:2,RANGE:3,REGEX:4,COMPARE:5,CUSTOM:6,AJAX:7},componyx.UI.Validator.DataTypeOption={INTEGER:0,FLOAT:1,DATETIME:2,EMAIL:3,URL:4,SOURCE:5},componyx.UI.Validator.ShowValidFieldsOption={NONE:0,REQUIRED:1,FILLED:2,ALL:3},componyx.UI.Validator.MessageDisplayOption={NONE:0,FEEDBACKFIRST:1,FEEDBACKALL:2,FEEDBACKFIRST_TOOLTIPALL:3,TOOLTIPFIRST:4,TOOLTIPALL:5},componyx.UI.Validator.Rule=function(){this.fieldName=null,this.type=null,this.feedbackId=null,this.autoValidate=null,this.getValue=null,this.live=null,this.msg=null,this.min=null,this.max=null,this.pattern=null,this.field=null,this.dataType=null,this.onValidation=null,this.onBeforeValidation=null,this.onAfterValidation=null;};})(window);
261
+ })(window);
262
+ //# sourceMappingURL=ui.min.js.map
263
+
264
+ componyx.UI.onDemandResourceLoading = false;