@appius-fr/apx 2.7.0 → 2.7.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +19 -0
- package/dist/APX.dev.mjs +427 -41
- package/dist/APX.mjs +1 -1
- package/dist/APX.prod.mjs +1 -1
- package/dist/APX.standalone.js +488 -46
- package/dist/APX.standalone.js.map +1 -1
- package/modules/scrollableTable/CHANGELOG.md +37 -0
- package/modules/scrollableTable/README.md +59 -3
- package/modules/scrollableTable/css/scrollableTable.css +23 -16
- package/modules/scrollableTable/scrollableTable.mjs +402 -23
- package/package.json +1 -1
package/dist/APX.prod.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var t={613:(t,e,n)=>{n.d(e,{Z:()=>i});var o=n(81),s=n.n(o),a=n(645),r=n.n(a)()(s());r.push([t.id,'/* Dialog styling */\n.APX-dialog {\n display: none;\n position: fixed;\n z-index: 1002;\n left: 0;\n top: 0;\n width: 100%;\n height: 100%;\n overflow: auto;\n background-color: rgba(0, 0, 0, 0.4);\n /* Dimmed background for focus on dialog */\n}\n\n.APX-dialog-content {\n background-color: #fefefe;\n padding: 40px;\n border: none;\n width: auto;\n min-width: 300px;\n max-width: 80%;\n margin: auto;\n border-radius: 8px;\n box-shadow: 0px 6px 20px rgba(0, 0, 0, 0.1);\n font-family: \'Helvetica Neue\', Arial, sans-serif;\n}\n\nh2.APX-dialog-title{\n margin-top:0;\n}\n\n.APX-close-dialog {\n color: #aaa;\n float: right;\n font-size: 24px;\n margin-top: -10px;\n /* Adjust positioning */\n margin-right: -10px;\n}\n\n.APX-close-dialog:hover,\n.APX-close-dialog:focus {\n color: #333;\n /* Darker color on hover/focus */\n cursor: pointer;\n}\n\n/* Input fields styling */\n.APX-dialog-content input[type="text"],\n.APX-dialog-content input[type="number"],\n.APX-dialog-content input[type="date"],\n.APX-dialog-content input[type="datetime-local"] {\n width: 100%;\n padding: 10px;\n margin-bottom: 20px;\n border: 1px solid #ccc;\n border-radius: 4px;\n font-family: \'Helvetica Neue\', Arial, sans-serif;\n font-size: 16px;\n box-sizing: border-box;\n transition: border-color 0.3s;\n}\n\n.APX-dialog-content input[type="text"]:focus,\n.APX-dialog-content input[type="number"]:focus,\n.APX-dialog-content input[type="date"]:focus,\n.APX-dialog-content input[type="datetime-local"]:focus {\n border-color: #2C3E50;\n /* Deep Blue Color */\n outline: none;\n}\n\n/* Button in the dialog */\n.APX-dialog-button-container button {\n position: relative;\n background-color: #2C3E50;\n color: #ECF0F1;\n border: none;\n padding: 10px 20px;\n border-radius: 5px;\n font-size: 16px;\n cursor: pointer;\n transition: all 0.3s ease;\n box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);\n}\n\n.APX-dialog-button-container button:hover {\n background-color: #34495E;\n transform: translateY(-1px);\n box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);\n}\n\n.APX-dialog-button-container {\n display: flex;\n gap: 10px;\n margin-top:1em;\n /* spacing between buttons */\n}\n\n/* Loading indicator */\n.APX-dialog-loading-indicator {\n display: flex;\n justify-content: center;\n align-items: center;\n height: 100px;\n width: 100%;\n}\n\n.APX-dialog-loading-indicator::before {\n content: \'\';\n width: 40px;\n height: 40px;\n border: 4px solid #f3f3f3;\n border-top: 4px solid #2C3E50;\n border-radius: 50%;\n animation: APX-dialog-spin 1s linear infinite;\n}\n\n@keyframes APX-dialog-spin {\n 0% { transform: rotate(0deg); }\n 100% { transform: rotate(360deg); }\n}\n.APX-dialog-button-disabled {\n opacity: 0.5;\n cursor: not-allowed !important;\n background-color: #95a5a6 !important; /* Grayed out color */\n box-shadow: none !important;\n transition: all 0.2s ease;\n transform: none !important;\n}\n\n.APX-dialog-button-disabled:hover {\n background-color: #95a5a6 !important; /* Keep gray on hover */\n transform: none !important;\n}\n\n/* Add a subtle strikethrough effect */\n.APX-dialog-button-disabled::after {\n content: \'\';\n position: absolute;\n top: 50%;\n left: 0;\n width: 100%;\n height: 1px;\n background-color: rgba(0, 0, 0, 0.2);\n transform: rotate(-5deg);\n}',""]);const i=r},773:(t,e,n)=>{n.d(e,{Z:()=>i});var o=n(81),s=n.n(o),a=n(645),r=n.n(a)()(s());r.push([t.id,"/* APX Scrollable Table: scrollable tbody with fixed thead/tfoot and aligned columns (CSS Grid + subgrid) */\n\n.apx-scrollable-table {\n display: grid;\n grid-template-columns: repeat(var(--apx-scrollable-cols, 3), minmax(0, 1fr));\n grid-template-rows: auto fit-content(var(--apx-scrollable-body-max-height, 200px)) auto;\n width: 100%;\n}\n\n/* Table with no tfoot: thead + tbody only */\n.apx-scrollable-table:not(.apx-scrollable-table--has-tfoot) {\n grid-template-rows: auto fit-content(var(--apx-scrollable-body-max-height, 200px));\n}\n\n/* Table with no thead: tbody + tfoot only */\n.apx-scrollable-table.apx-scrollable-table--no-thead {\n grid-template-rows: fit-content(var(--apx-scrollable-body-max-height, 200px)) auto;\n}\n\n/* Table with neither thead nor tfoot: tbody only */\n.apx-scrollable-table.apx-scrollable-table--no-thead:not(.apx-scrollable-table--has-tfoot) {\n grid-template-rows: fit-content(var(--apx-scrollable-body-max-height, 200px));\n}\n\n.apx-scrollable-table > thead,\n.apx-scrollable-table > tbody,\n.apx-scrollable-table > tfoot {\n display: grid;\n grid-template-columns: subgrid;\n grid-column: 1 / -1;\n grid-template-rows: repeat(var(--apx-scrollable-thead-rows, 1), auto);\n min-height: 0;\n}\n\n.apx-scrollable-table > thead {\n grid-template-rows: repeat(var(--apx-scrollable-thead-rows, 1), auto);\n}\n\n.apx-scrollable-table > tbody {\n grid-template-rows: repeat(var(--apx-scrollable-tbody-rows, 1), auto);\n overflow: auto;\n /* Reserve space for the vertical scrollbar so it doesn't shrink content width and trigger a horizontal scrollbar */\n scrollbar-gutter: stable;\n}\n\n.apx-scrollable-table > tfoot {\n grid-template-rows: repeat(var(--apx-scrollable-tfoot-rows, 1), auto);\n}\n\n.apx-scrollable-table > thead > tr,\n.apx-scrollable-table > tbody > tr,\n.apx-scrollable-table > tfoot > tr {\n display: contents;\n}\n\n.apx-scrollable-table th,\n.apx-scrollable-table td {\n /* Grid placement set by JS (grid-row, grid-column) for colspan/rowspan */\n min-width: 0;\n}\n",""]);const i=r},152:(t,e,n)=>{n.d(e,{Z:()=>i});var o=n(81),s=n.n(o),a=n(645),r=n.n(a)()(s());r.push([t.id,".APX-toast-container {\n position: fixed;\n display: flex;\n flex-direction: column;\n gap: var(--apx-toast-gap, 8px);\n z-index: var(--apx-toast-z-index, 11000);\n pointer-events: none;\n}\n\n.APX-toast-container--bottom-right { right: 12px; bottom: 12px; align-items: flex-end; }\n.APX-toast-container--bottom-left { left: 12px; bottom: 12px; align-items: flex-start; }\n.APX-toast-container--top-right { right: 12px; top: 12px; align-items: flex-end; }\n.APX-toast-container--top-left { left: 12px; top: 12px; align-items: flex-start; }\n\n.APX-toast {\n min-width: var(--apx-toast-min-width, 260px);\n max-width: var(--apx-toast-max-width, 420px);\n font-size: var(--apx-toast-font-size, 14px);\n border-radius: var(--apx-toast-radius, 6px);\n box-shadow: var(--apx-toast-shadow, 0 6px 24px rgba(0,0,0,0.2));\n padding: var(--apx-toast-padding, 10px 42px 10px 14px);\n color: #111;\n background: #eee;\n pointer-events: auto;\n position: relative;\n transition: opacity 180ms ease, transform 180ms ease;\n}\n\n.APX-toast--info { background: var(--apx-toast-info-bg, #0dcaf0); color: var(--apx-toast-info-fg, #052c65); }\n.APX-toast--success { background: var(--apx-toast-success-bg, #198754); color: var(--apx-toast-success-fg, #ffffff); }\n.APX-toast--warning { background: var(--apx-toast-warning-bg, #ffc107); color: var(--apx-toast-warning-fg, #664d03); }\n.APX-toast--danger { background: var(--apx-toast-danger-bg, #dc3545); color: var(--apx-toast-danger-fg, #ffffff); }\n\n.APX-toast__content { line-height: 1.35; }\n\n.APX-toast__close {\n position: absolute;\n top: 50%; right: 10px;\n width: 24px; height: 24px;\n transform: translateY(-50%);\n display: inline-flex; align-items: center; justify-content: center;\n background: transparent; color: currentColor;\n border: 0; border-radius: 4px; padding: 0; margin: 0;\n cursor: pointer; appearance: none; -webkit-appearance: none;\n opacity: .75; transition: opacity 120ms ease;\n}\n.APX-toast__close:hover { opacity: 1; }\n.APX-toast__close:focus { outline: 2px solid rgba(0,0,0,.2); outline-offset: 2px; }\n.APX-toast__close::before {\n content: '×';\n font-size: 16px; line-height: 1; text-align: center;\n}\n\n/* Progress bar (outside content, flush to toast edges) */\n.APX-toast__progress {\n position: absolute;\n left: 0;\n right: 0;\n height: var(--apx-toast-progress-height, 4px);\n display: flex;\n flex-direction: row;\n align-items: stretch;\n flex-shrink: 0;\n border-radius: inherit;\n overflow: visible;\n}\n.APX-toast__progress--top {\n top: 0;\n border-radius: var(--apx-toast-radius, 6px) var(--apx-toast-radius, 6px) 0 0;\n}\n.APX-toast__progress--bottom {\n bottom: 0;\n border-radius: 0 0 var(--apx-toast-radius, 6px) var(--apx-toast-radius, 6px);\n}\n/* Track contains the bar; no margin (pause button is on the corner, overlapping) */\n.APX-toast__progress-track {\n flex: 1;\n min-width: 0;\n overflow: hidden;\n}\n.APX-toast__progress-bar {\n height: 100%;\n width: 100%;\n max-width: 100%;\n transition: width 80ms linear;\n background: rgba(0, 0, 0, 0.25);\n}\n.APX-toast--info .APX-toast__progress-bar { background: rgba(5, 44, 101, 0.5); }\n.APX-toast--success .APX-toast__progress-bar { background: rgba(0, 0, 0, 0.25); }\n.APX-toast--warning .APX-toast__progress-bar { background: rgba(102, 77, 3, 0.5); }\n.APX-toast--danger .APX-toast__progress-bar { background: rgba(0, 0, 0, 0.25); }\n/* Pause/Resume button: round, center exactly on toast corner (top-left or bottom-left) */\n.APX-toast__progress-pause {\n position: absolute;\n width: var(--apx-toast-progress-pause-size, 18px);\n height: var(--apx-toast-progress-pause-size, 18px);\n left: 0;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n background: #eee;\n color: currentColor;\n border: 1px solid rgba(0, 0, 0, 0.35);\n border-radius: 50%;\n padding: 0;\n margin: 0;\n cursor: pointer;\n line-height: 1;\n opacity: 0.95;\n transition: opacity 120ms ease;\n flex-shrink: 0;\n}\n.APX-toast__progress--top .APX-toast__progress-pause {\n top: 0;\n transform: translate(-50%, -50%);\n}\n.APX-toast__progress--bottom .APX-toast__progress-pause {\n bottom: 0;\n transform: translate(-50%, 50%);\n}\n.APX-toast--info .APX-toast__progress-pause { background: var(--apx-toast-info-bg, #0dcaf0); border-color: rgba(5, 44, 101, 0.55); }\n.APX-toast--success .APX-toast__progress-pause { background: var(--apx-toast-success-bg, #198754); border-color: rgba(0, 0, 0, 0.3); }\n.APX-toast--warning .APX-toast__progress-pause { background: var(--apx-toast-warning-bg, #ffc107); border-color: rgba(102, 77, 3, 0.6); }\n.APX-toast--danger .APX-toast__progress-pause { background: var(--apx-toast-danger-bg, #dc3545); border-color: rgba(0, 0, 0, 0.35); }\n.APX-toast__progress-pause:hover { opacity: 1; }\n.APX-toast__progress-pause:focus { outline: 2px solid rgba(0,0,0,.4); outline-offset: -2px; }\n.APX-toast__progress-pause svg {\n width: 10px;\n height: 10px;\n display: block;\n}\n/* Extra top/bottom padding when progress bar is present (default content padding 10px + bar height) */\n.APX-toast--has-progress-top { padding-top: calc(10px + var(--apx-toast-progress-height, 4px)); }\n.APX-toast--has-progress-bottom { padding-bottom: calc(10px + var(--apx-toast-progress-height, 4px)); }\n/* Reserve space for stacking when pause button is present (button extends outside toast corner) */\n.APX-toast--has-progress-top.APX-toast--has-progress-pause { margin-top: calc(var(--apx-toast-progress-pause-size, 18px) / 2); }\n.APX-toast--has-progress-bottom.APX-toast--has-progress-pause { margin-bottom: calc(var(--apx-toast-progress-pause-size, 18px) / 2); }\n\n/* Animations */\n.APX-toast--enter { opacity: 0; transform: translateY(8px); }\n.APX-toast--enter.APX-toast--enter-active { opacity: 1; transform: translateY(0); }\n.APX-toast--exit { opacity: 1; transform: translateY(0); }\n.APX-toast--exit.APX-toast--exit-active { opacity: 0; transform: translateY(8px); }\n\n\n",""]);const i=r},570:(t,e,n)=>{n.d(e,{Z:()=>y});var o=n(81),s=n.n(o),a=n(645),r=n.n(a),i=n(667),l=n.n(i),c=new URL(n(203),n.b),d=new URL(n(597),n.b),p=new URL(n(360),n.b),u=new URL(n(463),n.b),f=r()(s()),h=l()(c),g=l()(d),m=l()(p),b=l()(u);f.push([t.id,`.apx-tristate {\n display: inline-block;\n vertical-align: middle;\n text-align: center;\n cursor: pointer;\n position: relative;\n min-width:13px;\n min-height:13px;\n background-size: contain;\n background-color: transparent;\n border-radius:3px;\n --apx-tristate-tick-color: transparent;\n --apx-tristate-checked-color: #0654ba;\n --apx-tristate-crossed-color: #f00;\n}\n.apx-tristate.unchecked {\n background-image: url(${h});\n}\n.apx-tristate.unchecked.apx-tristate--unchecked-indeterminate::after {\n content: '';\n position: absolute;\n inset: 0;\n display: block;\n pointer-events: none;\n}\n/* When --mixed is used (e.g. parent + sub-checkboxes), dash shows only when children are mixed */\n.apx-tristate.unchecked.apx-tristate--indeterminate-dash:not(.apx-tristate--mixed)::before,\n.apx-tristate.unchecked.apx-tristate--indeterminate-dash:not(.apx-tristate--mixed)::after {\n display: none;\n}\n.apx-tristate.unchecked.apx-tristate--indeterminate-dash::before {\n content: '';\n position: absolute;\n inset: 0;\n display: block;\n pointer-events: none;\n background-color: var(--apx-tristate-checked-color);\n border-radius: inherit;\n}\n.apx-tristate.unchecked.apx-tristate--indeterminate-dash::after {\n background-color: var(--apx-tristate-tick-color);\n -webkit-mask-repeat: no-repeat;\n -webkit-mask-position: center;\n -webkit-mask-size: 100% 100%;\n -webkit-mask-mode: alpha;\n mask-repeat: no-repeat;\n mask-position: center;\n mask-size: 100% 100%;\n mask-mode: alpha;\n -webkit-mask-image: url(${g});\n mask-image: url(${g});\n}\n.apx-tristate.unchecked.apx-tristate--indeterminate-filled-check::after {\n background-color: var(--apx-tristate-checked-color);\n border-radius: inherit;\n}\n.apx-tristate.checked {\n background-image: none;\n background-color: var(--apx-tristate-checked-color);\n}\n.apx-tristate.crossed {\n background-image: none;\n background-color: var(--apx-tristate-crossed-color);\n}\n\n.apx-tristate.checked::after,\n.apx-tristate.crossed::after {\n content: '';\n position: absolute;\n inset: 0;\n display: block;\n background-color: var(--apx-tristate-tick-color);\n -webkit-mask-repeat: no-repeat;\n -webkit-mask-position: center;\n -webkit-mask-size: 100% 100%;\n -webkit-mask-mode: alpha;\n mask-repeat: no-repeat;\n mask-position: center;\n mask-size: 100% 100%;\n mask-mode: alpha;\n pointer-events: none;\n}\n\n.apx-tristate.checked::after {\n -webkit-mask-image: url(${m});\n mask-image: url(${m});\n}\n\n.apx-tristate.crossed::after {\n -webkit-mask-image: url(${b});\n mask-image: url(${b});\n}`,""]);const y=f},645:t=>{t.exports=function(t){var e=[];return e.toString=function(){return this.map((function(e){var n="",o=void 0!==e[5];return e[4]&&(n+="@supports (".concat(e[4],") {")),e[2]&&(n+="@media ".concat(e[2]," {")),o&&(n+="@layer".concat(e[5].length>0?" ".concat(e[5]):""," {")),n+=t(e),o&&(n+="}"),e[2]&&(n+="}"),e[4]&&(n+="}"),n})).join("")},e.i=function(t,n,o,s,a){"string"==typeof t&&(t=[[null,t,void 0]]);var r={};if(o)for(var i=0;i<this.length;i++){var l=this[i][0];null!=l&&(r[l]=!0)}for(var c=0;c<t.length;c++){var d=[].concat(t[c]);o&&r[d[0]]||(void 0!==a&&(void 0===d[5]||(d[1]="@layer".concat(d[5].length>0?" ".concat(d[5]):""," {").concat(d[1],"}")),d[5]=a),n&&(d[2]?(d[1]="@media ".concat(d[2]," {").concat(d[1],"}"),d[2]=n):d[2]=n),s&&(d[4]?(d[1]="@supports (".concat(d[4],") {").concat(d[1],"}"),d[4]=s):d[4]="".concat(s)),e.push(d))}},e}},667:t=>{t.exports=function(t,e){return e||(e={}),t?(t=String(t.__esModule?t.default:t),/^['"].*['"]$/.test(t)&&(t=t.slice(1,-1)),e.hash&&(t+=e.hash),/["'() \t\n]|(%20)/.test(t)||e.needQuotes?'"'.concat(t.replace(/"/g,'\\"').replace(/\n/g,"\\n"),'"'):t):t}},81:t=>{t.exports=function(t){return t[1]}},379:t=>{var e=[];function n(t){for(var n=-1,o=0;o<e.length;o++)if(e[o].identifier===t){n=o;break}return n}function o(t,o){for(var a={},r=[],i=0;i<t.length;i++){var l=t[i],c=o.base?l[0]+o.base:l[0],d=a[c]||0,p="".concat(c," ").concat(d);a[c]=d+1;var u=n(p),f={css:l[1],media:l[2],sourceMap:l[3],supports:l[4],layer:l[5]};if(-1!==u)e[u].references++,e[u].updater(f);else{var h=s(f,o);o.byIndex=i,e.splice(i,0,{identifier:p,updater:h,references:1})}r.push(p)}return r}function s(t,e){var n=e.domAPI(e);return n.update(t),function(e){if(e){if(e.css===t.css&&e.media===t.media&&e.sourceMap===t.sourceMap&&e.supports===t.supports&&e.layer===t.layer)return;n.update(t=e)}else n.remove()}}t.exports=function(t,s){var a=o(t=t||[],s=s||{});return function(t){t=t||[];for(var r=0;r<a.length;r++){var i=n(a[r]);e[i].references--}for(var l=o(t,s),c=0;c<a.length;c++){var d=n(a[c]);0===e[d].references&&(e[d].updater(),e.splice(d,1))}a=l}}},569:t=>{var e={};t.exports=function(t,n){var o=function(t){if(void 0===e[t]){var n=document.querySelector(t);if(window.HTMLIFrameElement&&n instanceof window.HTMLIFrameElement)try{n=n.contentDocument.head}catch(t){n=null}e[t]=n}return e[t]}(t);if(!o)throw new Error("Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.");o.appendChild(n)}},216:t=>{t.exports=function(t){var e=document.createElement("style");return t.setAttributes(e,t.attributes),t.insert(e,t.options),e}},565:(t,e,n)=>{t.exports=function(t){var e=n.nc;e&&t.setAttribute("nonce",e)}},795:t=>{t.exports=function(t){if("undefined"==typeof document)return{update:function(){},remove:function(){}};var e=t.insertStyleElement(t);return{update:function(n){!function(t,e,n){var o="";n.supports&&(o+="@supports (".concat(n.supports,") {")),n.media&&(o+="@media ".concat(n.media," {"));var s=void 0!==n.layer;s&&(o+="@layer".concat(n.layer.length>0?" ".concat(n.layer):""," {")),o+=n.css,s&&(o+="}"),n.media&&(o+="}"),n.supports&&(o+="}");var a=n.sourceMap;a&&"undefined"!=typeof btoa&&(o+="\n/*# sourceMappingURL=data:application/json;base64,".concat(btoa(unescape(encodeURIComponent(JSON.stringify(a))))," */")),e.styleTagTransform(o,t,e.options)}(e,t,n)},remove:function(){!function(t){if(null===t.parentNode)return!1;t.parentNode.removeChild(t)}(e)}}}},589:t=>{t.exports=function(t,e){if(e.styleSheet)e.styleSheet.cssText=t;else{for(;e.firstChild;)e.removeChild(e.firstChild);e.appendChild(document.createTextNode(t))}}},203:t=>{t.exports="data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2732%27 height=%2732%27 viewBox=%270 0 32 32%27%3E%3Cmask id=%27frame-cutout%27%3E%3Crect width=%2732%27 height=%2732%27 fill=%27%23fff%27/%3E%3Crect x=%273%27 y=%273%27 width=%2726%27 height=%2726%27 rx=%274%27 ry=%274%27 fill=%27%23000%27/%3E%3C/mask%3E%3Crect width=%2732%27 height=%2732%27 fill=%27%23cccccc%27 mask=%27url%28%23frame-cutout%29%27/%3E%3C/svg%3E"},360:t=>{t.exports="data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2732%27 height=%2732%27 viewBox=%270 0 32 32%27%3E%3Cpath d=%27M6 17L12 23L26 9%27 fill=%27none%27 stroke=%27%23fff%27 stroke-width=%273%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27/%3E%3C/svg%3E"},597:t=>{t.exports="data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2732%27 height=%2732%27 viewBox=%270 0 32 32%27%3E%3Cpath d=%27M8 16h16%27 fill=%27none%27 stroke=%27%23fff%27 stroke-width=%273%27 stroke-linecap=%27round%27/%3E%3C/svg%3E"},463:t=>{t.exports="data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2732%27 height=%2732%27 viewBox=%270 0 32 32%27%3E%3Cpath d=%27M8 8L24 24M24 8L8 24%27 fill=%27none%27 stroke=%27%23fff%27 stroke-width=%273%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27/%3E%3C/svg%3E"}},e={};function n(o){var s=e[o];if(void 0!==s)return s.exports;var a=e[o]={id:o,exports:{}};return t[o](a,a.exports,n),a.exports}n.m=t,n.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return n.d(e,{a:e}),e},n.d=(t,e)=>{for(var o in e)n.o(e,o)&&!n.o(t,o)&&Object.defineProperty(t,o,{enumerable:!0,get:e[o]})},n.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),n.b=document.baseURI||self.location.href,n.nc=void 0;var o={};(()=>{n.d(o,{Z:()=>nt});let t=0;const e={},s={};function a(t,n,o,a="",r){const i=a?function(t,e){for(;t&&1===t.nodeType;){if(t.matches(e))return t;t=t.parentNode}return null}(t.target,a):r;function l(){e[n]&&e[n].reduce(((e,n)=>e.then((()=>new Promise(((e,o)=>{try{const s=n.bind(i)(t);s instanceof Promise?s.then(e).catch(o):e(s)}catch(t){o(t)}}))))),Promise.resolve()).catch((()=>{}))}i&&(clearTimeout(s[n]),0===o?l():s[n]=setTimeout(l,o))}var r=n(379),i=n.n(r),l=n(795),c=n.n(l),d=n(569),p=n.n(d),u=n(565),f=n.n(u),h=n(216),g=n.n(h),m=n(589),b=n.n(m),y=n(570),x={};function v(t){t.tristate=function(e={}){return t.elements.forEach((t=>{if("checkbox"===t.type){const[n,o,s]=function(t,e){const n=window.getComputedStyle(t);t.style.display="none";const o=document.createElement("div");if(o.classList.add("apx-tristate"),e.size){if(null!=e.size.width){const t=e.size.width;if("number"!=typeof t&&"string"!=typeof t)throw new TypeError("tristate size.width must be a number (px) or a string (CSS length).");o.style.width="number"==typeof t?t+"px":String(t)}if(null!=e.size.height){const t=e.size.height;if("number"!=typeof t&&"string"!=typeof t)throw new TypeError("tristate size.height must be a number (px) or a string (CSS length).");o.style.height="number"==typeof t?t+"px":String(t)}}e.classes&&o.classList.add(...function(t){let e=[];return"string"==typeof t?e=(t=t.replace(/\s\s+/g," ")).indexOf(" ")>-1?t.split(" "):t.indexOf(",")>-1?t.split(","):[t]:Array.isArray(t)&&(e=t),e}(e.classes));const s=function(t){const e=t.colors||{};return{tick:null!=e.tick?e.tick:t.tickColor,checked:null!=e.checked?e.checked:t.checkedColor,crossed:null!=e.crossed?e.crossed:t.crossedColor}}(e);null!=s.tick&&o.style.setProperty("--apx-tristate-tick-color",String(s.tick)),null!=s.checked&&o.style.setProperty("--apx-tristate-checked-color",String(s.checked)),null!=s.crossed&&o.style.setProperty("--apx-tristate-crossed-color",String(s.crossed)),o.style.margin=n.margin,t.checked?o.classList.add("checked"):o.classList.add("unchecked");const a=document.createElement("input");return a.type="hidden",a.name=t.name,t.dataset.name=t.name,t.removeAttribute("name"),e.defaultState?function(t,e,n){e.classList.remove("unchecked","checked","crossed"),"checked"===t.defaultState?(e.classList.add("checked"),n.value="true"):"unchecked"===t.defaultState?(e.classList.add("unchecked"),n.removeAttribute("name"),n.removeAttribute("value")):"crossed"===t.defaultState&&(e.classList.add("crossed"),n.value="false")}(e,o,a):t.checked?a.value="true":(a.name="",a.value=""),o.tabIndex=t.tabIndex,o.appendChild(a),t.parentNode.insertBefore(o,t.nextSibling),o.addEventListener("click",(function(n){!function(t,e,n){const o=t.classList.contains("checked"),s=t.classList.contains("crossed");t.classList.remove("unchecked","checked","crossed"),o?(t.classList.add("crossed"),e.checked=!1,n.value="false"):s?(t.classList.add("unchecked"),n.removeAttribute("name"),n.removeAttribute("value")):(t.classList.add("checked"),e.checked=!0,n.value="true",n.setAttribute("name",e.dataset.name))}(o,t,a),A(e,t,o,a,n)})),o.addEventListener("keyup",k.bind(null,t)),[t,o,a]}(t,e);n._apxTristate={dom:o,hiddenInput:s},e.callbacks&&e.callbacks.after&&"function"==typeof e.callbacks.after&&e.callbacks.after(n,o,s)}})),{setChildren:n=>function(t,e,n){const o=t.all().filter((t=>"checkbox"===t.type));if(0===o.length)return;o.length>1&&console.warn("APX tristate setChildren: only the first parent is linked to all children.");const s=o[0]._apxTristate;if(!s)return;const a=s.dom,r=s.hiddenInput;a.classList.add("apx-tristate--unchecked-indeterminate","apx-tristate--indeterminate-dash"),e.all().filter((t=>"checkbox"===t.type));const i=[];function l(){if(0===i.length)return;const t=i.map((t=>w(t.dom))),e=t.every((t=>"checked"===t)),n=t.every((t=>"crossed"===t)),o=t.every((t=>"unchecked"===t)),s=!e&&!n&&!o;a.classList.remove("unchecked","checked","crossed"),s?a.classList.add("apx-tristate--mixed"):a.classList.remove("apx-tristate--mixed"),e?(a.classList.add("checked"),r.value="true"):n?(a.classList.add("crossed"),r.value="false"):(a.classList.add("unchecked"),r.removeAttribute("name"),r.removeAttribute("value"))}function c(){const t=w(a);i.forEach((e=>function(t,e,n,o){e.classList.remove("unchecked","checked","crossed"),e.classList.add(o);const s=t.dataset.name||t.getAttribute("data-name")||t.name||"";"checked"===o?(n.value="true",s&&n.setAttribute("name",s),t.checked=!0):"crossed"===o?(n.value="false",s&&n.setAttribute("name",s),t.checked=!1):(n.removeAttribute("name"),n.removeAttribute("value"),t.checked=!1)}(e.checkbox,e.dom,e.hiddenInput,t)))}const d={...n,callbacks:{after(t,e,n){i.push({checkbox:t,dom:e,hiddenInput:n})},change:l}};e.tristate(d),l(),a.addEventListener("click",(()=>setTimeout(c,0)))}(t,n,e)}}}function w(t){return t.classList.contains("checked")?"checked":t.classList.contains("crossed")?"crossed":"unchecked"}function A(t,e,n,o,s){t.callbacks&&t.callbacks.change&&"function"==typeof t.callbacks.change&&t.callbacks.change(e,n,o),t.bubbleEvents&&("click"===s.type?e.dispatchEvent(new MouseEvent("click",{bubbles:!0,cancelable:!0})):"keyup"===s.type?e.dispatchEvent(new KeyboardEvent("keyup",{key:" ",bubbles:!0,cancelable:!0})):"change"===s.type&&e.dispatchEvent(new Event("change",{bubbles:!0,cancelable:!0})))}function k(t,e){32===e.keyCode&&(A(t,e),e.preventDefault(),e.target.click())}x.styleTagTransform=b(),x.setAttributes=f(),x.insert=p().bind(null,"head"),x.domAPI=c(),x.insertStyleElement=g(),i()(y.Z,x),y.Z&&y.Z.locals&&y.Z.locals;var P=n(773),X={};X.styleTagTransform=b(),X.setAttributes=f(),X.insert=p().bind(null,"head"),X.domAPI=c(),X.insertStyleElement=g(),i()(P.Z,X),P.Z&&P.Z.locals&&P.Z.locals;const E="_apxScrollableTable";function L(t){const e=t?.querySelector(":scope > tr");if(!e)return 0;let n=0;return e.querySelectorAll(":scope > th, :scope > td").forEach((t=>{n+=parseInt(t.getAttribute("colspan"),10)||1})),n}function C(t){return t?t.querySelectorAll(":scope > tr").length:0}function S(t,e){const n=t.querySelector("thead"),o=t.querySelector("tbody"),s=t.querySelector("tfoot"),a=function(t){const e=t.querySelector("thead"),n=t.querySelector("tbody"),o=e?L(e):0,s=n?L(n):0;return o||s||1}(t);if(0===a)return;const r=C(n),i=C(o),l=C(s);var c;t.style.setProperty("--apx-scrollable-cols",String(a)),t.style.setProperty("--apx-scrollable-thead-rows",String(Math.max(1,r))),t.style.setProperty("--apx-scrollable-tbody-rows",String(Math.max(1,i))),t.style.setProperty("--apx-scrollable-tfoot-rows",String(Math.max(1,l))),t.style.setProperty("--apx-scrollable-body-max-height",null==(c=e.maxHeight)?"200px":"number"==typeof c?`${c}px`:String(c)),t.classList.add("apx-scrollable-table"),t.classList.toggle("apx-scrollable-table--has-tfoot",!!(s&&l>0)),t.classList.toggle("apx-scrollable-table--no-thead",!(n&&r>0)),function(t){t.querySelectorAll("th, td").forEach((t=>{t.style.gridRow="",t.style.gridColumn=""}))}(t),[{section:n,rows:Math.max(1,r)},{section:o,rows:Math.max(1,i)},{section:s,rows:Math.max(1,l)}].forEach((({section:t,rows:e})=>{if(!t)return;const n=function(t,e,n){if(!t||0===e||0===n)return[];const o=Array.from({length:e},(()=>Array(n).fill(!1))),s=[],a=t.querySelectorAll(":scope > tr");for(let t=0;t<a.length;t++){const r=a[t].querySelectorAll(":scope > th, :scope > td");for(const a of r){const r=Math.min(parseInt(a.getAttribute("colspan"),10)||1,n),i=Math.min(parseInt(a.getAttribute("rowspan"),10)||1,e-t);let l=0;for(;l<n;){let e=!0;for(let n=t;n<t+i&&e;n++)for(let t=l;t<l+r&&e;t++)o[n]?.[t]&&(e=!1);if(e)break;l++}if(!(l+r>n)){for(let e=t;e<t+i;e++)for(let t=l;t<l+r;t++)o[e]&&(o[e][t]=!0);s.push({cell:a,row:t,col:l,colspan:r,rowspan:i})}}}return s}(t,e,a);!function(t){t.forEach((({cell:t,row:e,col:n,colspan:o,rowspan:s})=>{t.style.gridRow=`${e+1} / span ${s}`,t.style.gridColumn=`${n+1} / span ${o}`}))}(n)}))}var $=n(613),_={};_.styleTagTransform=b(),_.setAttributes=f(),_.insert=p().bind(null,"head"),_.domAPI=c(),_.insertStyleElement=g(),i()($.Z,_),$.Z&&$.Z.locals&&$.Z.locals;var T=n(152),M={};M.styleTagTransform=b(),M.setAttributes=f(),M.insert=p().bind(null,"head"),M.domAPI=c(),M.insertStyleElement=g(),i()(T.Z,M),T.Z&&T.Z.locals&&T.Z.locals;const N="undefined"!=typeof window&&"undefined"!=typeof document,j=new Map;let I=null,z=null;const O={position:"bottom-right",maxToasts:5,defaultDurationMs:5e3,zIndex:11e3,ariaLive:"polite",gap:8,dedupe:!1,containerClass:"",offset:0,progress:!1};function B(t,e){const n=document.createElement(t);return e&&e.split(" ").filter(Boolean).forEach((t=>n.classList.add(t))),n}function F(t){return t?'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" aria-hidden="true"><path d="M8 6L8 18L17 12Z"/></svg>':'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" aria-hidden="true"><line x1="9" y1="6" x2="9" y2="18"/><line x1="15" y1="6" x2="15" y2="18"/></svg>'}function q(t,e,n,o){const s=o.position,a=!0===o.pauseButton,r=B("div",`APX-toast__progress APX-toast__progress--${s}`),i=B("div","APX-toast__progress-track"),l=B("div","APX-toast__progress-bar");l.setAttribute("role","progressbar"),l.setAttribute("aria-valuemin","0"),l.setAttribute("aria-valuemax","100"),l.setAttribute("aria-label","Temps restant"),l.setAttribute("aria-valuenow","100"),l.style.width="100%",i.appendChild(l),r.appendChild(i);let c=null;return a&&(c=B("button","APX-toast__progress-pause"),c.type="button",c.setAttribute("aria-label","Pause"),c.setAttribute("title","Pause"),c.innerHTML=F(!1),r.insertBefore(c,i)),"top"===s?(t.insertBefore(r,e),t.classList.add("APX-toast--has-progress-top")):(t.insertBefore(r,n),t.classList.add("APX-toast--has-progress-bottom")),a&&t.classList.add("APX-toast--has-progress-pause"),{wrap:r,bar:l,pauseBtn:c}}function R(t){return{above:"top",below:"bottom",before:"left",after:"right"}[t]||t}function D(t){if("string"==typeof t)return t.includes("top")?"up":(t.includes("bottom"),"down");if("object"==typeof t&&null!==t){const e=t.type||(t.x||t.y?"sticky":null);if("sticky"===e||!e&&(t.x||t.y)){if(void 0!==t.y){if(t.y.startsWith("-"))return"down";const e=parseFloat(t.y);if(!isNaN(e))return t.y.includes("%")?e<50?"up":"down":e<400?"up":"down"}return"down"}if("anchored"===e&&t.placement){const e=R(t.placement);return"top"===e||"above"===e?"up":"down"}if("relative"===e){if(void 0!==t.y){const e=parseFloat(t.y);if(!isNaN(e))return e<0?"up":"down"}return"down"}}return"down"}function Z(){N&&(document.querySelectorAll('.APX-toast-container:not([data-apx-toast-managed="true"])').forEach((t=>{if(0===t.children.length){const e=t.getAttribute("data-apx-toast-position");e&&j.delete(e),t.remove()}})),z&&0===z.children.length&&(z.remove(),z=null),I=null)}function H(t){if("string"==typeof t)return`s:${t}`;if("object"==typeof t&&null!==t){const e=[],n=t.type||(t.x||t.y?"sticky":null);if(n&&e.push(`t:${n}`),void 0!==t.x&&e.push(`x:${t.x}`),void 0!==t.y&&e.push(`y:${t.y}`),t.element){const n=t.element.id||t.element.dataset?.apxToastAnchorId||`el_${function(t){const e=t.getBoundingClientRect(),n=`${t.tagName}_${e.left}_${e.top}_${e.width}_${e.height}`;let o=0;for(let t=0;t<n.length;t++)o=(o<<5)-o+n.charCodeAt(t),o&=o;return Math.abs(o).toString(36)}(t.element)}`;e.push(`el:${n}`)}if(t.placement){const n=R(t.placement);e.push(`p:${n}`)}return void 0!==t.gap&&e.push(`g:${t.gap}`),t.useNativeCSS&&e.push("native:true"),`o:${e.join("|")}`}return"s:bottom-right"}class U{constructor(t){this.config={...O,...t||{}},this.container=null,this.idToRef=new Map,this.open=[]}configure(t){this.config={...this.config,...t||{}},this.container&&this.applyContainerConfig()}setAriaLive(t){this.configure({ariaLive:t})}getOpenToasts(){return this.open.slice()}show(t){if(!N)return null;const e=this.normalizeOptions(t);if(this.config.dedupe&&e.id&&this.idToRef.has(e.id)){const t=this.idToRef.get(e.id);return t.update(e),t}const n=e.position||this.config.position||"bottom-right",o=void 0!==e.flow?e.flow:void 0!==this.config.flow?this.config.flow:"auto",s="auto"===o?D(n):o;this.ensureContainer();const a=B("div",`APX-toast APX-toast--${e.type}`);a.setAttribute("role","status");const r=e.id||`t_${Date.now()}_${Math.random().toString(36).slice(2,8)}`;a.dataset.toastId=r,e.className&&(a.className+=` ${e.className}`);const i=B("div","APX-toast__content");"string"==typeof e.message?i.textContent=e.message:e.message&&i.appendChild(e.message),a.appendChild(i);let l=null;!1!==e.dismissible&&(l=B("button","APX-toast__close"),l.setAttribute("aria-label","Close"),l.type="button",a.appendChild(l));let c=null,d=null,p=null;if(e.progress.enable&&e.durationMs>0){const t=q(a,i,l,e.progress);c=t.wrap,d=t.bar,p=t.pauseBtn}let u=null,f=null,h=null,g=null;if(n&&"object"==typeof n&&null!==n){const t=n.type||(n.x||n.y?"sticky":null);if(n.useNativeCSS&&("relative"===t||"anchored"===t)&&n.element){const e=n.element;g=e.style.position,e.style.position="relative";const o=H(n);let a=e.querySelector(`[data-apx-toast-position="${o}"]`);if(a)a.style.flexDirection="up"===s?"column-reverse":"column";else{if(a=B("div","APX-toast-container APX-toast-container-native"),a.setAttribute("data-apx-toast-position",o),a.style.position="absolute",a.style.zIndex=String(this.config.zIndex),a.style.gap=`${this.config.gap}px`,a.setAttribute("aria-live",String(this.config.ariaLive)),a.style.flexDirection="up"===s?"column-reverse":"column","relative"===t)void 0!==n.x&&(n.x.startsWith("-")?a.style.right=n.x.substring(1):a.style.left=n.x),void 0!==n.y&&(n.y.startsWith("-")?a.style.bottom=n.y.substring(1):a.style.top=n.y);else if("anchored"===t){const t=R(n.placement),e=n.gap||"1em";switch(t){case"top":a.style.bottom=`calc(100% + ${e})`,a.style.left="0";break;case"bottom":a.style.top=`calc(100% + ${e})`,a.style.left="0";break;case"left":a.style.right=`calc(100% + ${e})`,a.style.top="0";break;case"right":a.style.left=`calc(100% + ${e})`,a.style.top="0"}}e.appendChild(a)}u=a,h=()=>{if(e&&e.parentElement&&(e.style.position=g||"",a&&0===a.children.length)){const t=a.getAttribute("data-apx-toast-position");t&&j.delete(t),a.remove()}}}else{u=this.getContainerForPosition(n,s);const e=()=>{const t=this.calculatePosition(n,u);Object.assign(u.style,t)};if(e(),("relative"===t||"anchored"===t)&&n.element){let t=null,o=0;const s=16,a=()=>{const n=Date.now();n-o<s?(t&&cancelAnimationFrame(t),t=requestAnimationFrame((()=>{e(),o=Date.now()}))):(e(),o=n)},r=function(t){const e=[];let n=t.parentElement;for(;n&&n!==document.body&&n!==document.documentElement;){const t=window.getComputedStyle(n),o=t.overflow+t.overflowY+t.overflowX;(o.includes("scroll")||o.includes("auto"))&&e.push(n),n=n.parentElement}return e}(n.element);window.addEventListener("scroll",a,{passive:!0}),window.addEventListener("resize",a,{passive:!0}),r.forEach((t=>{t.addEventListener("scroll",a,{passive:!0})}));const i=new MutationObserver((()=>{n.element.parentElement||X.close("api")}));i.observe(document.body,{childList:!0,subtree:!0}),f=e,h=()=>{window.removeEventListener("scroll",a),window.removeEventListener("resize",a),r.forEach((t=>{t.removeEventListener("scroll",a)})),i.disconnect(),t&&cancelAnimationFrame(t)}}}}else u=this.getContainerForPosition(n,s);u?u.appendChild(a):this.container.appendChild(a),a.classList.add("APX-toast--enter"),requestAnimationFrame((()=>{a.classList.add("APX-toast--enter-active")}));let m=e.durationMs,b=null,y=null,x=!1,v=null;const w={click:new Set,close:new Set},A=()=>{if(m&&!(m<=0)&&(y=Date.now(),b=window.setTimeout((()=>X.close("timeout")),m),d)){const t=()=>{if(null==b||null==y)return;const n=Date.now()-y,o=Math.max(0,m-n),s=e.durationMs,a=s>0?Math.max(0,Math.min(100,o/s*100)):0;d.style.width=`${a}%`,d.setAttribute("aria-valuenow",String(Math.round(a))),v=requestAnimationFrame(t)};v=requestAnimationFrame(t)}},k=()=>{null!=b&&(window.clearTimeout(b),b=null,null!=y&&(m-=Date.now()-y)),null!=v&&(cancelAnimationFrame(v),v=null)},P=t=>{t.addEventListener("click",(e=>{e.stopPropagation(),x=!x,x?k():A();const n=x?"Reprendre":"Pause";t.setAttribute("aria-label",n),t.setAttribute("title",n),t.innerHTML=F(x)}))},X={id:r,el:a,close:t=>{cleanup(t||"api")},update:t=>{const n=this.normalizeOptions({...e,...t});if("string"==typeof n.message?i.textContent=n.message:n.message&&(i.innerHTML="",i.appendChild(n.message)),["info","success","warning","danger"].forEach((t=>a.classList.remove(`APX-toast--${t}`))),a.classList.add(`APX-toast--${n.type}`),e.className!==n.className&&(e.className&&a.classList.remove(...e.className.split(" ").filter(Boolean)),n.className&&a.classList.add(...n.className.split(" ").filter(Boolean))),e.progress=n.progress,c)!n.progress.enable||n.durationMs<=0?c.style.display="none":(c.style.display="",function(t,e,n,o,s){t.classList.remove("APX-toast--has-progress-top","APX-toast--has-progress-bottom"),t.classList.add("top"===s?"APX-toast--has-progress-top":"APX-toast--has-progress-bottom"),e.classList.remove("APX-toast__progress--top","APX-toast__progress--bottom"),e.classList.add(`APX-toast__progress--${s}`);const a="top"===s?n:o;e.nextElementSibling!==a&&t.insertBefore(e,a)}(a,c,i,l,n.progress.position));else if(n.progress.enable&&n.durationMs>0){const t=q(a,i,l,n.progress);c=t.wrap,d=t.bar,p=t.pauseBtn,p&&P(p)}c&&"none"!==c.style.display&&!0===n.progress.pauseButton?a.classList.add("APX-toast--has-progress-pause"):a.classList.remove("APX-toast--has-progress-pause"),e.durationMs=n.durationMs,m=n.durationMs,d&&(d.style.width="100%",d.setAttribute("aria-valuenow","100")),k(),A()},whenClosed:()=>L,on:(t,e)=>(w[t].add(e),()=>X.off(t,e)),off:(t,e)=>{w[t].delete(e)}},E=(t,e)=>w[t].forEach((t=>{try{t(e)}catch(t){}})),L=new Promise((t=>{const n=n=>{if(E("close",n),"function"==typeof e.onClose)try{e.onClose(X,n)}catch(t){}t()},o=t=>{if(!a)return;if(k(),null!=v&&(cancelAnimationFrame(v),v=null),h&&(h(),h=null),"overflow"===t){a.parentElement&&a.parentElement.removeChild(a);const e=this.open.indexOf(X);return e>=0&&this.open.splice(e,1),this.idToRef.delete(r),void n(t)}a.classList.add("APX-toast--exit"),requestAnimationFrame((()=>a.classList.add("APX-toast--exit-active")));const e=()=>{a.removeEventListener("transitionend",e),a.parentElement&&a.parentElement.removeChild(a);const o=this.open.indexOf(X);o>=0&&this.open.splice(o,1),this.idToRef.delete(r),I&&clearTimeout(I),I=setTimeout(Z,2e4),n(t)};a.addEventListener("transitionend",e)};X.close=t=>o(t||"api")}));return a.addEventListener("click",(t=>{if(E("click",t),"function"==typeof e.onClick)try{e.onClick(X,t)}catch(t){}})),a.addEventListener("mouseenter",k),a.addEventListener("mouseleave",(()=>{x||A()})),l&&l.addEventListener("click",(t=>{t.stopPropagation(),X.close("close")})),p&&P(p),this.open.push(X),this.idToRef.set(r,X),this.open.length>this.config.maxToasts&&this.open[0].close("overflow"),A(),X}info(t,e){return this.show({...e||{},message:t,type:"info"})}success(t,e){return this.show({...e||{},message:t,type:"success"})}warning(t,e){return this.show({...e||{},message:t,type:"warning"})}danger(t,e){return this.show({...e||{},message:t,type:"danger"})}closeAll(t){this.open.slice().forEach((e=>e.close(t||"api")))}normalizeOptions(t){const e={...t};return e.type||(e.type="info"),"boolean"!=typeof e.dismissible&&(e.dismissible=!0),"number"!=typeof e.durationMs&&(e.durationMs=this.config.defaultDurationMs),!e.id&&this.config.id&&(e.id=this.config.id),e.progress=function(t,e){const n=!0===e?{enable:!0,position:"top",pauseButton:!1}:e&&"object"==typeof e?{enable:!!e.enable,position:"bottom"===e.position?"bottom":"top",pauseButton:!0===e.pauseButton}:{enable:!1,position:"top",pauseButton:!1};return null==t?n:!0===t?{enable:!0,position:"top",pauseButton:!1}:"object"==typeof t?{enable:!!t.enable,position:"bottom"===t.position?"bottom":"top",pauseButton:!0===t.pauseButton}:{enable:!1,position:"top",pauseButton:!1}}(t.progress,this.config.progress),e}getContainerForPosition(t,e,n=!1){if(!N)return null;const o=H(t),s=e&&"auto"!==e?e:D(t);let a=j.get(o);if(!a&&N&&(a=document.querySelector(`[data-apx-toast-position="${o}"]`),a&&j.set(o,a)),a)a.style.flexDirection="up"===s?"column-reverse":"column",n&&!a.hasAttribute("data-apx-toast-managed")&&a.setAttribute("data-apx-toast-managed","true");else{a=B("div","APX-toast-container"),a.setAttribute("data-apx-toast-position",o),n&&a.setAttribute("data-apx-toast-managed","true");const e="string"==typeof t?t:t.type||"bottom-right";if(a.classList.add(`APX-toast-container--${e}`),a.setAttribute("aria-live",String(this.config.ariaLive)),a.style.zIndex=String(this.config.zIndex),a.style.gap=`${this.config.gap}px`,a.style.flexDirection="up"===s?"column-reverse":"column","object"==typeof t&&null!==t){a.style.position="fixed";const e=this.calculatePosition(t,a);Object.assign(a.style,e)}const r=N?(z||(z=document.querySelector(".APX-toast-wrapper"),z||(z=B("div","APX-toast-wrapper"),z.style.position="fixed",z.style.top="0",z.style.left="0",z.style.width="0",z.style.height="0",z.style.pointerEvents="none",z.style.zIndex="10000",document.body.appendChild(z))),z):null;r?r.appendChild(a):document.body.appendChild(a),j.set(o,a)}return a}ensureContainer(){if(this.container||!N)return;const t=this.config.position||"bottom-right",e=void 0!==this.config.flow?this.config.flow:"auto";this.container=this.getContainerForPosition(t,e,!0),this.applyContainerConfig()}applyContainerConfig(){if(!this.container)return;const t=this.config.position||"bottom-right",e="string"==typeof t?t:t.type||"bottom-right";if(this.container.style.zIndex=String(this.config.zIndex),this.container.style.gap=`${this.config.gap}px`,this.container.setAttribute("aria-live",String(this.config.ariaLive)),"string"==typeof t){const t=["bottom-right","bottom-left","top-right","top-left"].map((t=>`APX-toast-container--${t}`));this.container.classList.remove(...t),this.container.classList.add(`APX-toast-container--${e}`)}if(this.config.containerClass&&this.config.containerClass.split(" ").filter(Boolean).forEach((t=>{this.container.classList.add(t)})),"string"==typeof t)if(this.config.offset){const t=`${this.config.offset}px`;e.includes("bottom")?this.container.style.bottom=t:this.container.style.top=t,e.includes("right")?this.container.style.right=t:this.container.style.left=t}else e.includes("bottom")?this.container.style.bottom="":this.container.style.top="",e.includes("right")?this.container.style.right="":this.container.style.left="";else"object"==typeof t&&null!==t&&(this.container.style.position="fixed")}calculatePosition(t,e){if("string"==typeof t)return{};if("object"==typeof t&&null!==t){const e=t.type||(t.x||t.y?"sticky":null);if("sticky"===e||!e&&(t.x||t.y)){const e={};return void 0!==t.x&&(t.x.startsWith("-")?e.right=t.x.substring(1):e.left=t.x),void 0!==t.y&&(t.y.startsWith("-")?e.bottom=t.y.substring(1):e.top=t.y),e}if("relative"===e&&t.element){const e=t.element.getBoundingClientRect(),n=t=>{if(!t)return 0;const e=parseFloat(t);return t.includes("em")?16*e:e},o=n(t.x||"0"),s=n(t.y||"0");return{left:`${e.left+o}px`,top:`${e.top+s}px`}}if("anchored"===e&&t.element){const e=t.element.getBoundingClientRect(),n=(t=>{const e=parseFloat(t);return t.includes("em")?16*e:e})(t.gap||"1em"),o={};switch(R(t.placement)){case"top":o.bottom=`${window.innerHeight-e.top+n}px`,o.left=`${e.left}px`;break;case"bottom":o.top=`${e.bottom+n}px`,o.left=`${e.left}px`;break;case"left":o.right=`${window.innerWidth-e.left+n}px`,o.top=`${e.top}px`;break;case"right":o.left=`${e.right+n}px`,o.top=`${e.top}px`}return o}}return{}}}let W=null;const Y=()=>(W||(W=new U(undefined)),W);function J(t){return Y().show(t)}Object.assign(J,{create:(t,e)=>{if("string"==typeof t){const n=t,o=new U({...e||{}});return J.custom||(J.custom={}),J.custom[n]=o,o}return new U({...t||{}})},custom:{},use:t=>J.custom&&J.custom[t]||null,Manager:U,show:t=>Y().show(t),info:(t,e)=>Y().info(t,e),success:(t,e)=>Y().success(t,e),warning:(t,e)=>Y().warning(t,e),danger:(t,e)=>Y().danger(t,e),configure:t=>Y().configure(t),setAriaLive:t=>Y().setAriaLive(t),closeAll:t=>Y().closeAll(t),getOpenToasts:()=>Y().getOpenToasts()});const K=J,G=(t,e={})=>{if(!(t&&t instanceof HTMLFormElement))throw new TypeError("packFormToJSON expects an HTMLFormElement");const n=!0===e.numericKeysAlwaysArray,o=new FormData(t),s={},a=t=>t.reduce(((t,e)=>"key"===e.type?t?`${t}[${e.name}]`:e.name:"numeric"===e.type?`${t}[${e.index}]`:"array"===e.type?`${t}[]`:t),""),r=new Map,i=new Map,l=new Map,c=[],d=(t,e,n,o)=>{const s=r.get(t)??{isFinal:!1,isIntermediate:!1,hasArraySuffix:!1,key:o};r.has(t)||r.set(t,s),e?(s.isFinal=!0,s.key=o,n&&(s.hasArraySuffix=!0)):(s.isIntermediate=!0,s.key??=o)};for(const[t,e]of o.entries()){if(!t)continue;c.push({key:t,value:e});const n=Q(t);let o="";for(let e=0;e<n.length;e++){const s=n[e],a=e===n.length-1,r="array"===s.type;if("key"===s.type)o=o?`${o}[${s.name}]`:s.name;else if("numeric"===s.type){const t=o;let e=l.get(t);e||(e=new Set,l.set(t,e)),e.add(s.index),o=`${o}[${s.index}]`}else"array"===s.type&&(o=`${o}[]`);d(o,a,r&&a,t)}for(let t=0;t<n.length-1;t++){const e=n[t],o=n[t+1];if("key"===e.type){const t=e.name,n=i.get(t)??{hasNumeric:!1,hasString:!1};i.has(t)||i.set(t,n),o&&("numeric"===o.type?n.hasNumeric=!0:"key"!==o.type&&"array"!==o.type||(n.hasString=!0))}}}(()=>{const t=new Set,e=new Map;for(const[n,o]of r.entries())o.isFinal&&(t.add(n),e.set(n,o.key));for(const[n,o]of r.entries())if(o.isIntermediate)for(const s of t)if(n.startsWith(`${s}[`))throw new Error(`Path conflict: "${s}" is used as a final value (in field "${e.get(s)}"), but "${n}" tries to use it as an intermediate path (in field "${o.key}"). This creates incompatible data structures. You cannot use "${s}" as a primitive value and then access it as an object.`)})();const p=t=>{if(!t)return!1;const e=i.get(t);return e?.hasNumeric&&e?.hasString},u=t=>{const e=l.get(t);return!e||0===e.size||!!n||(t=>{if(0===t.length)return!1;const e=[...t].sort(((t,e)=>t-e));for(let t=0;t<e.length;t++)if(e[t]!==t)return!1;return!0})([...e])},f=t=>{const e={};for(let n=0;n<t.length;n++)e[n]=t[n];for(const[n,o]of Object.entries(t)){const t=Number.parseInt(n,10);(Number.isNaN(t)||n!==String(t))&&(e[n]=o)}return e},h=t=>{if(Array.isArray(t))return t;const e=[];if("object"==typeof t&&null!==t)for(const[n,o]of Object.entries(t)){const t=Number.parseInt(n,10);Number.isNaN(t)||(e[t]=o)}return e},g=(t,e,n,o=!1)=>{if(Array.isArray(t)){const o=f(t);return n&&null!==e&&(n[e]=o),o}if("object"!=typeof t||null===t){const t={};return n&&null!==e&&(n[e]=t),t}return t},m=(t,e,n)=>{if(!Array.isArray(t)){const o=h(t);return n&&null!==e&&(n[e]=o),o}return t},b=(t,e,n,o,s,a)=>{if("array"===e.type)t[e.name]??=[],Array.isArray(t[e.name])?t[e.name].push(n):t[e.name]=[t[e.name],n];else if("numeric"===e.type){const{index:s}=e;if(u(a)){for(t=m(t,o.key,o.container);t.length<=s;)t.push(void 0);t[s]=n}else(t=g(t,o.key,o.container,!0))[s]=n}else p(s)?(t=g(t,o.key,o.container,!0),Array.isArray(t[e.name])&&(t[e.name]=f(t[e.name])),void 0===t[e.name]||"object"==typeof t[e.name]&&null!==t[e.name]?void 0===t[e.name]?t[e.name]=n:Array.isArray(t[e.name])?t[e.name].push(n):t[e.name]=[t[e.name],n]:t[e.name]=n):void 0===t[e.name]?t[e.name]=n:Array.isArray(t[e.name])?t[e.name].push(n):t[e.name]=[t[e.name],n]},y=(t,e,n,o,s,r,i,l)=>{if("numeric"===e.type){const{index:n}=e,c=a(r.slice(0,i));if(u(c)&&!p(s)){for(t=m(t,o.key,o.container);t.length<=n;)t.push(void 0);if(t[n]??={},"object"!=typeof t[n]||null===t[n]){const e=r.slice(0,i+1),o=a(e);throw new Error(`Cannot access property on primitive value. Key "${l}" tries to access "${o}" but it is already a ${typeof t[n]} value: ${JSON.stringify(t[n])}. This should have been detected during conflict detection phase.`)}}else if(t=g(t,o.key,o.container,!0),t[n]??={},"object"!=typeof t[n]||null===t[n]){const e=r.slice(0,i+1),o=a(e);throw new Error(`Cannot access property on primitive value. Key "${l}" tries to access "${o}" but it is already a ${typeof t[n]} value: ${JSON.stringify(t[n])}. This should have been detected during conflict detection phase.`)}return t[n]}const c="numeric"===n?.type;if(p(s)){if(t=g(t,o.key,o.container,!0),t[e.name]??={},Array.isArray(t[e.name]))t[e.name]=f(t[e.name]);else if("object"!=typeof t[e.name]||null===t[e.name]){const n=r.slice(0,i+1),o=a(n);throw new Error(`Cannot access property on primitive value. Key "${l}" tries to access "${o}" but it is already a ${typeof t[e.name]} value: ${JSON.stringify(t[e.name])}. This should have been detected during conflict detection phase.`)}}else void 0===t[e.name]?t[e.name]=c?[]:{}:c&&!Array.isArray(t[e.name])?Object.keys(t[e.name]).some((t=>{const e=Number.parseInt(t,10);return Number.isNaN(e)||t!==String(e)}))||(t[e.name]=h(t[e.name])):c||V(t[e.name])||(Array.isArray(t[e.name])?t[e.name]=f(t[e.name]):t[e.name]={});if(void 0!==t[e.name]&&("object"!=typeof t[e.name]||null===t[e.name])){const n=r.slice(0,i+1),o=a(n);throw new Error(`Cannot access property on primitive value. Key "${l}" tries to access "${o}" but it is already a ${typeof t[e.name]} value: ${JSON.stringify(t[e.name])}. This should have been detected during conflict detection phase.`)}return t[e.name]};for(const{value:t,key:e}of c){if(!e)continue;const n=Q(e),o=[{container:s,key:null}];let r=s;const i="key"===n[0]?.type?n[0].name:"";for(let s=0;s<n.length;s++){const l=n[s],c=s===n.length-1,d=s+1<n.length?n[s+1]:null,p=o[o.length-1];if(c)b(r,l,t,p,i,a(n.slice(0,s)));else{const t=y(r,l,d,p,i,n,s,e);o.push({container:r,key:"numeric"===l.type?l.index:l.name}),r=t}}}return s},Q=t=>{const e=[];let n="",o=0;const s=t.length;for(;o<s;){const a=t[o];if("["===a){n&&(e.push({name:n,type:"key"}),n=""),o++;let a="";for(;o<s&&"]"!==t[o];)a+=t[o],o++;if(""===a){const t=e[e.length-1];t?t.type="array":e.push({name:"",type:"array"})}else{const t=Number.parseInt(a,10);Number.isNaN(t)||a!==String(t)?e.push({name:a,type:"key"}):e.push({name:String(t),type:"numeric",index:t})}o++}else n+=a,o++}return n&&e.push({name:n,type:"key"}),e},V=t=>"object"==typeof t&&null!==t&&!Array.isArray(t),tt={packFormToJSON:G},et=function(n,o=document){let s;if("string"==typeof o)o=document.querySelector(o);else if(et.isAPXObject(o))o=o.first();else if(!(o instanceof HTMLElement||o instanceof Document))throw new Error("Invalid context for APX");if("string"==typeof n&&n.startsWith("//")){s=document.evaluate(n,o,null,XPathResult.ANY_TYPE,null);let t=[],e=s.iterateNext();for(;e;)t.push(e),e=s.iterateNext();s=t}else if("string"==typeof n)s=o.querySelectorAll(n);else if(n instanceof HTMLElement)s=o.contains(n)?[n]:[];else if(n instanceof NodeList||n instanceof HTMLCollection)s=Array.from(n).filter((t=>o.contains(t)));else if(Array.isArray(n)&&n.every((t=>t instanceof HTMLElement)))s=n.filter((t=>o.contains(t)));else if("undefined"!=typeof jQuery&&n instanceof jQuery)s=Array.from(n.get()).filter((t=>o.contains(t)));else{if("function"!=typeof n)throw new Error("Invalid input type for APX");s=et(n(),o)}var r={elements:s,_isAPXObject:!0};return r.length=s.length,r.each=function(t){return this.elements instanceof Array&&this.elements.forEach(t),this.elements instanceof NodeList&&Array.from(this.elements).forEach(t),this},r.get=function(t){return this.elements[t]},r.all=function(){return this.elements instanceof Array?this.elements:this.elements instanceof NodeList?Array.from(this.elements):this},r.first=function(){return this.get(0)},function(n){let o=n.elements;n.listen=function(n,s,r){let i,l={};"string"==typeof s?(i=s,l=r||{}):l=s||{};const c=function(){const e=Math.random().toString(36).substr(2,9),n=`${Date.now()}_${e}_${t}`;return t=(t+1)%1e3,n}(),d=l.timeout||0;return Array.isArray(n)||(n=[n]),n.forEach((t=>{o.forEach((e=>{e.addEventListener(t,(t=>{a(t,c,d,i,e)}))}))})),{do:function(t){return e[c]||(e[c]=[]),e[c].push(t),this}}},n.trigger=function(t){let o;if("string"==typeof t)o=t,t=new Event(t,{bubbles:!0,cancelable:!0});else{if(!(t instanceof Event))return void console.error("Invalid event type provided to apx.trigger. It must be either a string or Event object.");o=t.type}n.elements.forEach((e=>{e.dispatchEvent(t)})),Object.keys(e).forEach((n=>{const s=e[n];if(s&&s.eventType===o){const{selector:e}=s;e&&!t.target.matches(e)||a(t,n,0,e,t.target)}}))}}(r),v(r),function(t){t.scrollableTable=function(e){const n="refresh"===e,o=n?null:e&&"object"==typeof e?e:{};return t.elements.forEach((t=>{if("TABLE"!==t.tagName)return;const e=t,s=e[E];s?n?S(e,s.options):o&&Object.keys(o).length>0&&(s.options={...s.options,...o},S(e,s.options)):n||(S(e,o),e[E]={options:{...o}})})),t}}(r),function(t){t.pack=function(t){const e=this.first();if(!e)throw new Error("No element found");if("FORM"!==e.tagName)throw new Error("Element is not a form");return G(e,t)}}(r),r};et.loadCss=function(t){return fetch(t).then((t=>t.text())).then((t=>{const e=document.createElement("style");e.type="text/css",e.textContent=t,document.head.appendChild(e)})).catch((t=>{console.error("Failed to load CSS:",t)}))},et.dialog=t=>{const{title:e,content:n,contentURI:o,buttons:s,size:a,showLoadingIndicator:r,contentMethod:i,contentData:l,contentHeaders:c}={title:"",content:"",contentURI:"",buttons:[],size:"medium",showLoadingIndicator:!1,contentMethod:"GET",contentData:null,contentHeaders:void 0,...t},d=document.createElement("div");d.innerHTML='<div class="APX-dialog"> <div class="APX-dialog-content"> <span class="APX-close-dialog">×</span> <h2 class="APX-dialog-title"></h2> <div class="APX-dialog-dynamic-content"></div> <div class="APX-dialog-button-container"></div> </div> </div>'.trim();const p=d.firstChild,u={},f={};["opening","opened","closing","closed","contentLoading","contentLoaded"].forEach((t=>{f[t]=new Promise((e=>{u[t]=e}))}));const h=t=>{u[t]?u[t]():console.warn(`No resolver found for lifecycle event: ${t}`)},g={element:p,buttons:{},isClosed:!1,lifecycle:f,disableButton:t=>{const e=p.querySelector(`.APX-dialog-button[data-key="${t}"]`);e&&(e.disabled=!0,e.classList.add("APX-dialog-button-disabled"))},enableButton:t=>{const e=p.querySelector(`.APX-dialog-button[data-key="${t}"]`);e&&(e.disabled=!1,e.classList.remove("APX-dialog-button-disabled"))},open:async()=>{try{h("opening"),await g.lifecycle.opening,r&&o?(document.body.appendChild(p),p.style.display="flex",p.querySelector(".APX-dialog-dynamic-content").innerHTML='<div class="APX-dialog-loading-indicator"></div>',await b()):(await b(),document.body.appendChild(p),p.style.display="flex"),h("opened"),await g.lifecycle.opened}catch(t){console.error("Error opening dialog:",t)}return g},close:async()=>{try{h("closing"),await g.lifecycle.closing,m(),h("closed"),await g.lifecycle.closed}catch(t){console.error("Error during dialog closing:",t)}return g}},m=()=>{g.isClosed||(g.isClosed=!0,p.style.display="none",document.body.contains(p)&&document.body.removeChild(p))},b=async()=>{const t=document.body.style.cursor;document.body.style.cursor="wait";const e=p.querySelector(".APX-dialog-dynamic-content");try{h("contentLoading"),await g.lifecycle.contentLoading;const t=o?await y(o):n;e.innerHTML=t,h("contentLoaded"),await g.lifecycle.contentLoaded}catch(t){console.error("Error loading content:",t)}finally{document.body.style.cursor=t}},y=async t=>{const e=(i||"GET").toUpperCase(),n={...c||{}},o=Object.keys(n).some((t=>"content-type"===t.toLowerCase())),s={method:e};if("POST"===e){let t;const e="undefined"!=typeof FormData&&l instanceof FormData,a="undefined"!=typeof URLSearchParams&&l instanceof URLSearchParams,r="undefined"!=typeof Blob&&l instanceof Blob,i="string"==typeof l,c=l&&"object"==typeof l&&!e&&!a&&!r;e?t=l:a?(t=l,o||(n["Content-Type"]="application/x-www-form-urlencoded;charset=UTF-8")):c?(t=JSON.stringify(l),o||(n["Content-Type"]="application/json")):(i||r||null!=l)&&(t=l),void 0!==t&&(s.body=t)}Object.keys(n).length>0&&(s.headers=n);const a=await fetch(t,s);if(!a.ok)throw new Error(`Failed to fetch content: ${a.statusText}`);return a.text()};return(()=>{const t=p.querySelector(".APX-dialog-content");if("auto"===a)return;const e={small:{width:"300px",height:"200px"},medium:{width:"500px",height:"400px"},large:{width:"800px",height:"600px"}}[a]||"object"==typeof a&&a;e&&(t.style.minWidth=e.width||"500px",t.style.minHeight=e.height||"400px")})(),(()=>{const t=p.querySelector(".APX-dialog-button-container");s.forEach((({key:e,label:n,order:o=0,align:s="flex-end",closeOnClick:a=!0})=>{const r=document.createElement("button");r.classList.add("APX-dialog-button"),r.textContent=n,r.style.order=o,r.setAttribute("data-key",e);const i={disable:()=>{r.disabled=!0,r.classList.add("APX-dialog-button-disabled")},enable:()=>{r.disabled=!1,r.classList.remove("APX-dialog-button-disabled")},key:e,element:r};if(a){let t=!1;const n=new Promise((e=>{r.onclick=()=>{t||r.disabled||(t=!0,e({dialog:g,button:i}),g.close())}}));g.buttons[e]=n}else{let t=[];const n={then:e=>("function"==typeof e&&t.push(e),n)};r.onclick=()=>{r.disabled||t.forEach((t=>t({dialog:g,button:i})))},g.buttons[e]=n}t.appendChild(r),t.style.justifyContent=s}))})(),p.querySelector(".APX-dialog-title").textContent=e,p.querySelector(".APX-close-dialog").onclick=g.close,g},et.toast=K,et.tools=tt,et.isAPXObject=function(t){return t&&!0===t._isAPXObject},et.is_numeric=t=>!isNaN(t-parseFloat(t));const nt=et})();var s=o.Z;export{s as default};
|
|
1
|
+
var t={613:(t,e,n)=>{n.d(e,{Z:()=>i});var o=n(81),s=n.n(o),a=n(645),r=n.n(a)()(s());r.push([t.id,'/* Dialog styling */\n.APX-dialog {\n display: none;\n position: fixed;\n z-index: 1002;\n left: 0;\n top: 0;\n width: 100%;\n height: 100%;\n overflow: auto;\n background-color: rgba(0, 0, 0, 0.4);\n /* Dimmed background for focus on dialog */\n}\n\n.APX-dialog-content {\n background-color: #fefefe;\n padding: 40px;\n border: none;\n width: auto;\n min-width: 300px;\n max-width: 80%;\n margin: auto;\n border-radius: 8px;\n box-shadow: 0px 6px 20px rgba(0, 0, 0, 0.1);\n font-family: \'Helvetica Neue\', Arial, sans-serif;\n}\n\nh2.APX-dialog-title{\n margin-top:0;\n}\n\n.APX-close-dialog {\n color: #aaa;\n float: right;\n font-size: 24px;\n margin-top: -10px;\n /* Adjust positioning */\n margin-right: -10px;\n}\n\n.APX-close-dialog:hover,\n.APX-close-dialog:focus {\n color: #333;\n /* Darker color on hover/focus */\n cursor: pointer;\n}\n\n/* Input fields styling */\n.APX-dialog-content input[type="text"],\n.APX-dialog-content input[type="number"],\n.APX-dialog-content input[type="date"],\n.APX-dialog-content input[type="datetime-local"] {\n width: 100%;\n padding: 10px;\n margin-bottom: 20px;\n border: 1px solid #ccc;\n border-radius: 4px;\n font-family: \'Helvetica Neue\', Arial, sans-serif;\n font-size: 16px;\n box-sizing: border-box;\n transition: border-color 0.3s;\n}\n\n.APX-dialog-content input[type="text"]:focus,\n.APX-dialog-content input[type="number"]:focus,\n.APX-dialog-content input[type="date"]:focus,\n.APX-dialog-content input[type="datetime-local"]:focus {\n border-color: #2C3E50;\n /* Deep Blue Color */\n outline: none;\n}\n\n/* Button in the dialog */\n.APX-dialog-button-container button {\n position: relative;\n background-color: #2C3E50;\n color: #ECF0F1;\n border: none;\n padding: 10px 20px;\n border-radius: 5px;\n font-size: 16px;\n cursor: pointer;\n transition: all 0.3s ease;\n box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);\n}\n\n.APX-dialog-button-container button:hover {\n background-color: #34495E;\n transform: translateY(-1px);\n box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);\n}\n\n.APX-dialog-button-container {\n display: flex;\n gap: 10px;\n margin-top:1em;\n /* spacing between buttons */\n}\n\n/* Loading indicator */\n.APX-dialog-loading-indicator {\n display: flex;\n justify-content: center;\n align-items: center;\n height: 100px;\n width: 100%;\n}\n\n.APX-dialog-loading-indicator::before {\n content: \'\';\n width: 40px;\n height: 40px;\n border: 4px solid #f3f3f3;\n border-top: 4px solid #2C3E50;\n border-radius: 50%;\n animation: APX-dialog-spin 1s linear infinite;\n}\n\n@keyframes APX-dialog-spin {\n 0% { transform: rotate(0deg); }\n 100% { transform: rotate(360deg); }\n}\n.APX-dialog-button-disabled {\n opacity: 0.5;\n cursor: not-allowed !important;\n background-color: #95a5a6 !important; /* Grayed out color */\n box-shadow: none !important;\n transition: all 0.2s ease;\n transform: none !important;\n}\n\n.APX-dialog-button-disabled:hover {\n background-color: #95a5a6 !important; /* Keep gray on hover */\n transform: none !important;\n}\n\n/* Add a subtle strikethrough effect */\n.APX-dialog-button-disabled::after {\n content: \'\';\n position: absolute;\n top: 50%;\n left: 0;\n width: 100%;\n height: 1px;\n background-color: rgba(0, 0, 0, 0.2);\n transform: rotate(-5deg);\n}',""]);const i=r},773:(t,e,n)=>{n.d(e,{Z:()=>i});var o=n(81),s=n.n(o),a=n(645),r=n.n(a)()(s());r.push([t.id,"/* APX Scrollable Table: scrollable tbody with fixed thead/tfoot and aligned columns (CSS Grid + subgrid)\n Use !important so page styles (e.g. display: table) do not override the grid layout. */\n\n/* --apx-scrollable-template-columns: set by JS (measured widths + gutter); fallback = equal columns + gutter */\n/* --apx-scrollable-gutter-width: space for vertical scrollbar so it does not overlap the last column (set to 0 to allow overlap) */\n/* --apx-scrollable-body-height: when class apx-scrollable-table--body-height is set, tbody row uses fixed height instead of max-height */\n.apx-scrollable-table {\n display: grid !important;\n grid-template-columns: var(--apx-scrollable-template-columns, repeat(var(--apx-scrollable-cols, 3), minmax(0, 1fr)) minmax(var(--apx-scrollable-gutter-width, 17px), var(--apx-scrollable-gutter-width, 17px)));\n grid-template-rows: auto var(--apx-scrollable-body-row-size, fit-content(var(--apx-scrollable-body-max-height, 200px))) auto;\n width: 100%;\n table-layout: unset !important;\n}\n\n.apx-scrollable-table--body-height {\n --apx-scrollable-body-row-size: var(--apx-scrollable-body-max-height, 200px);\n}\n\n/* Table with no tfoot: thead + tbody only */\n.apx-scrollable-table:not(.apx-scrollable-table--has-tfoot) {\n grid-template-rows: auto var(--apx-scrollable-body-row-size, fit-content(var(--apx-scrollable-body-max-height, 200px)));\n}\n\n/* Table with no thead: tbody + tfoot only */\n.apx-scrollable-table.apx-scrollable-table--no-thead {\n grid-template-rows: var(--apx-scrollable-body-row-size, fit-content(var(--apx-scrollable-body-max-height, 200px))) auto;\n}\n\n/* Table with neither thead nor tfoot: tbody only */\n.apx-scrollable-table.apx-scrollable-table--no-thead:not(.apx-scrollable-table--has-tfoot) {\n grid-template-rows: var(--apx-scrollable-body-row-size, fit-content(var(--apx-scrollable-body-max-height, 200px)));\n}\n\n/* --apx-scrollable-*-template-rows: set by JS (measured heights) or override in CSS / via options */\n.apx-scrollable-table > thead,\n.apx-scrollable-table > tbody,\n.apx-scrollable-table > tfoot {\n display: grid !important;\n grid-template-columns: subgrid;\n grid-column: 1 / -1;\n min-height: 0;\n}\n\n.apx-scrollable-table > thead {\n grid-template-rows: var(--apx-scrollable-thead-template-rows, repeat(var(--apx-scrollable-thead-rows, 1), auto));\n}\n\n.apx-scrollable-table > tbody {\n grid-template-rows: var(--apx-scrollable-tbody-template-rows, repeat(var(--apx-scrollable-tbody-rows, 1), auto));\n overflow: auto;\n}\n\n.apx-scrollable-table > tfoot {\n grid-template-rows: var(--apx-scrollable-tfoot-template-rows, repeat(var(--apx-scrollable-tfoot-rows, 1), auto));\n}\n\n.apx-scrollable-table > thead > tr,\n.apx-scrollable-table > tbody > tr,\n.apx-scrollable-table > tfoot > tr {\n display: contents !important;\n}\n\n.apx-scrollable-table th,\n.apx-scrollable-table td {\n min-width: 0;\n box-sizing: border-box;\n}\n",""]);const i=r},152:(t,e,n)=>{n.d(e,{Z:()=>i});var o=n(81),s=n.n(o),a=n(645),r=n.n(a)()(s());r.push([t.id,".APX-toast-container {\n position: fixed;\n display: flex;\n flex-direction: column;\n gap: var(--apx-toast-gap, 8px);\n z-index: var(--apx-toast-z-index, 11000);\n pointer-events: none;\n}\n\n.APX-toast-container--bottom-right { right: 12px; bottom: 12px; align-items: flex-end; }\n.APX-toast-container--bottom-left { left: 12px; bottom: 12px; align-items: flex-start; }\n.APX-toast-container--top-right { right: 12px; top: 12px; align-items: flex-end; }\n.APX-toast-container--top-left { left: 12px; top: 12px; align-items: flex-start; }\n\n.APX-toast {\n min-width: var(--apx-toast-min-width, 260px);\n max-width: var(--apx-toast-max-width, 420px);\n font-size: var(--apx-toast-font-size, 14px);\n border-radius: var(--apx-toast-radius, 6px);\n box-shadow: var(--apx-toast-shadow, 0 6px 24px rgba(0,0,0,0.2));\n padding: var(--apx-toast-padding, 10px 42px 10px 14px);\n color: #111;\n background: #eee;\n pointer-events: auto;\n position: relative;\n transition: opacity 180ms ease, transform 180ms ease;\n}\n\n.APX-toast--info { background: var(--apx-toast-info-bg, #0dcaf0); color: var(--apx-toast-info-fg, #052c65); }\n.APX-toast--success { background: var(--apx-toast-success-bg, #198754); color: var(--apx-toast-success-fg, #ffffff); }\n.APX-toast--warning { background: var(--apx-toast-warning-bg, #ffc107); color: var(--apx-toast-warning-fg, #664d03); }\n.APX-toast--danger { background: var(--apx-toast-danger-bg, #dc3545); color: var(--apx-toast-danger-fg, #ffffff); }\n\n.APX-toast__content { line-height: 1.35; }\n\n.APX-toast__close {\n position: absolute;\n top: 50%; right: 10px;\n width: 24px; height: 24px;\n transform: translateY(-50%);\n display: inline-flex; align-items: center; justify-content: center;\n background: transparent; color: currentColor;\n border: 0; border-radius: 4px; padding: 0; margin: 0;\n cursor: pointer; appearance: none; -webkit-appearance: none;\n opacity: .75; transition: opacity 120ms ease;\n}\n.APX-toast__close:hover { opacity: 1; }\n.APX-toast__close:focus { outline: 2px solid rgba(0,0,0,.2); outline-offset: 2px; }\n.APX-toast__close::before {\n content: '×';\n font-size: 16px; line-height: 1; text-align: center;\n}\n\n/* Progress bar (outside content, flush to toast edges) */\n.APX-toast__progress {\n position: absolute;\n left: 0;\n right: 0;\n height: var(--apx-toast-progress-height, 4px);\n display: flex;\n flex-direction: row;\n align-items: stretch;\n flex-shrink: 0;\n border-radius: inherit;\n overflow: visible;\n}\n.APX-toast__progress--top {\n top: 0;\n border-radius: var(--apx-toast-radius, 6px) var(--apx-toast-radius, 6px) 0 0;\n}\n.APX-toast__progress--bottom {\n bottom: 0;\n border-radius: 0 0 var(--apx-toast-radius, 6px) var(--apx-toast-radius, 6px);\n}\n/* Track contains the bar; no margin (pause button is on the corner, overlapping) */\n.APX-toast__progress-track {\n flex: 1;\n min-width: 0;\n overflow: hidden;\n}\n.APX-toast__progress-bar {\n height: 100%;\n width: 100%;\n max-width: 100%;\n transition: width 80ms linear;\n background: rgba(0, 0, 0, 0.25);\n}\n.APX-toast--info .APX-toast__progress-bar { background: rgba(5, 44, 101, 0.5); }\n.APX-toast--success .APX-toast__progress-bar { background: rgba(0, 0, 0, 0.25); }\n.APX-toast--warning .APX-toast__progress-bar { background: rgba(102, 77, 3, 0.5); }\n.APX-toast--danger .APX-toast__progress-bar { background: rgba(0, 0, 0, 0.25); }\n/* Pause/Resume button: round, center exactly on toast corner (top-left or bottom-left) */\n.APX-toast__progress-pause {\n position: absolute;\n width: var(--apx-toast-progress-pause-size, 18px);\n height: var(--apx-toast-progress-pause-size, 18px);\n left: 0;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n background: #eee;\n color: currentColor;\n border: 1px solid rgba(0, 0, 0, 0.35);\n border-radius: 50%;\n padding: 0;\n margin: 0;\n cursor: pointer;\n line-height: 1;\n opacity: 0.95;\n transition: opacity 120ms ease;\n flex-shrink: 0;\n}\n.APX-toast__progress--top .APX-toast__progress-pause {\n top: 0;\n transform: translate(-50%, -50%);\n}\n.APX-toast__progress--bottom .APX-toast__progress-pause {\n bottom: 0;\n transform: translate(-50%, 50%);\n}\n.APX-toast--info .APX-toast__progress-pause { background: var(--apx-toast-info-bg, #0dcaf0); border-color: rgba(5, 44, 101, 0.55); }\n.APX-toast--success .APX-toast__progress-pause { background: var(--apx-toast-success-bg, #198754); border-color: rgba(0, 0, 0, 0.3); }\n.APX-toast--warning .APX-toast__progress-pause { background: var(--apx-toast-warning-bg, #ffc107); border-color: rgba(102, 77, 3, 0.6); }\n.APX-toast--danger .APX-toast__progress-pause { background: var(--apx-toast-danger-bg, #dc3545); border-color: rgba(0, 0, 0, 0.35); }\n.APX-toast__progress-pause:hover { opacity: 1; }\n.APX-toast__progress-pause:focus { outline: 2px solid rgba(0,0,0,.4); outline-offset: -2px; }\n.APX-toast__progress-pause svg {\n width: 10px;\n height: 10px;\n display: block;\n}\n/* Extra top/bottom padding when progress bar is present (default content padding 10px + bar height) */\n.APX-toast--has-progress-top { padding-top: calc(10px + var(--apx-toast-progress-height, 4px)); }\n.APX-toast--has-progress-bottom { padding-bottom: calc(10px + var(--apx-toast-progress-height, 4px)); }\n/* Reserve space for stacking when pause button is present (button extends outside toast corner) */\n.APX-toast--has-progress-top.APX-toast--has-progress-pause { margin-top: calc(var(--apx-toast-progress-pause-size, 18px) / 2); }\n.APX-toast--has-progress-bottom.APX-toast--has-progress-pause { margin-bottom: calc(var(--apx-toast-progress-pause-size, 18px) / 2); }\n\n/* Animations */\n.APX-toast--enter { opacity: 0; transform: translateY(8px); }\n.APX-toast--enter.APX-toast--enter-active { opacity: 1; transform: translateY(0); }\n.APX-toast--exit { opacity: 1; transform: translateY(0); }\n.APX-toast--exit.APX-toast--exit-active { opacity: 0; transform: translateY(8px); }\n\n\n",""]);const i=r},570:(t,e,n)=>{n.d(e,{Z:()=>y});var o=n(81),s=n.n(o),a=n(645),r=n.n(a),i=n(667),l=n.n(i),c=new URL(n(203),n.b),d=new URL(n(597),n.b),p=new URL(n(360),n.b),u=new URL(n(463),n.b),f=r()(s()),h=l()(c),g=l()(d),m=l()(p),b=l()(u);f.push([t.id,`.apx-tristate {\n display: inline-block;\n vertical-align: middle;\n text-align: center;\n cursor: pointer;\n position: relative;\n min-width:13px;\n min-height:13px;\n background-size: contain;\n background-color: transparent;\n border-radius:3px;\n --apx-tristate-tick-color: transparent;\n --apx-tristate-checked-color: #0654ba;\n --apx-tristate-crossed-color: #f00;\n}\n.apx-tristate.unchecked {\n background-image: url(${h});\n}\n.apx-tristate.unchecked.apx-tristate--unchecked-indeterminate::after {\n content: '';\n position: absolute;\n inset: 0;\n display: block;\n pointer-events: none;\n}\n/* When --mixed is used (e.g. parent + sub-checkboxes), dash shows only when children are mixed */\n.apx-tristate.unchecked.apx-tristate--indeterminate-dash:not(.apx-tristate--mixed)::before,\n.apx-tristate.unchecked.apx-tristate--indeterminate-dash:not(.apx-tristate--mixed)::after {\n display: none;\n}\n.apx-tristate.unchecked.apx-tristate--indeterminate-dash::before {\n content: '';\n position: absolute;\n inset: 0;\n display: block;\n pointer-events: none;\n background-color: var(--apx-tristate-checked-color);\n border-radius: inherit;\n}\n.apx-tristate.unchecked.apx-tristate--indeterminate-dash::after {\n background-color: var(--apx-tristate-tick-color);\n -webkit-mask-repeat: no-repeat;\n -webkit-mask-position: center;\n -webkit-mask-size: 100% 100%;\n -webkit-mask-mode: alpha;\n mask-repeat: no-repeat;\n mask-position: center;\n mask-size: 100% 100%;\n mask-mode: alpha;\n -webkit-mask-image: url(${g});\n mask-image: url(${g});\n}\n.apx-tristate.unchecked.apx-tristate--indeterminate-filled-check::after {\n background-color: var(--apx-tristate-checked-color);\n border-radius: inherit;\n}\n.apx-tristate.checked {\n background-image: none;\n background-color: var(--apx-tristate-checked-color);\n}\n.apx-tristate.crossed {\n background-image: none;\n background-color: var(--apx-tristate-crossed-color);\n}\n\n.apx-tristate.checked::after,\n.apx-tristate.crossed::after {\n content: '';\n position: absolute;\n inset: 0;\n display: block;\n background-color: var(--apx-tristate-tick-color);\n -webkit-mask-repeat: no-repeat;\n -webkit-mask-position: center;\n -webkit-mask-size: 100% 100%;\n -webkit-mask-mode: alpha;\n mask-repeat: no-repeat;\n mask-position: center;\n mask-size: 100% 100%;\n mask-mode: alpha;\n pointer-events: none;\n}\n\n.apx-tristate.checked::after {\n -webkit-mask-image: url(${m});\n mask-image: url(${m});\n}\n\n.apx-tristate.crossed::after {\n -webkit-mask-image: url(${b});\n mask-image: url(${b});\n}`,""]);const y=f},645:t=>{t.exports=function(t){var e=[];return e.toString=function(){return this.map((function(e){var n="",o=void 0!==e[5];return e[4]&&(n+="@supports (".concat(e[4],") {")),e[2]&&(n+="@media ".concat(e[2]," {")),o&&(n+="@layer".concat(e[5].length>0?" ".concat(e[5]):""," {")),n+=t(e),o&&(n+="}"),e[2]&&(n+="}"),e[4]&&(n+="}"),n})).join("")},e.i=function(t,n,o,s,a){"string"==typeof t&&(t=[[null,t,void 0]]);var r={};if(o)for(var i=0;i<this.length;i++){var l=this[i][0];null!=l&&(r[l]=!0)}for(var c=0;c<t.length;c++){var d=[].concat(t[c]);o&&r[d[0]]||(void 0!==a&&(void 0===d[5]||(d[1]="@layer".concat(d[5].length>0?" ".concat(d[5]):""," {").concat(d[1],"}")),d[5]=a),n&&(d[2]?(d[1]="@media ".concat(d[2]," {").concat(d[1],"}"),d[2]=n):d[2]=n),s&&(d[4]?(d[1]="@supports (".concat(d[4],") {").concat(d[1],"}"),d[4]=s):d[4]="".concat(s)),e.push(d))}},e}},667:t=>{t.exports=function(t,e){return e||(e={}),t?(t=String(t.__esModule?t.default:t),/^['"].*['"]$/.test(t)&&(t=t.slice(1,-1)),e.hash&&(t+=e.hash),/["'() \t\n]|(%20)/.test(t)||e.needQuotes?'"'.concat(t.replace(/"/g,'\\"').replace(/\n/g,"\\n"),'"'):t):t}},81:t=>{t.exports=function(t){return t[1]}},379:t=>{var e=[];function n(t){for(var n=-1,o=0;o<e.length;o++)if(e[o].identifier===t){n=o;break}return n}function o(t,o){for(var a={},r=[],i=0;i<t.length;i++){var l=t[i],c=o.base?l[0]+o.base:l[0],d=a[c]||0,p="".concat(c," ").concat(d);a[c]=d+1;var u=n(p),f={css:l[1],media:l[2],sourceMap:l[3],supports:l[4],layer:l[5]};if(-1!==u)e[u].references++,e[u].updater(f);else{var h=s(f,o);o.byIndex=i,e.splice(i,0,{identifier:p,updater:h,references:1})}r.push(p)}return r}function s(t,e){var n=e.domAPI(e);return n.update(t),function(e){if(e){if(e.css===t.css&&e.media===t.media&&e.sourceMap===t.sourceMap&&e.supports===t.supports&&e.layer===t.layer)return;n.update(t=e)}else n.remove()}}t.exports=function(t,s){var a=o(t=t||[],s=s||{});return function(t){t=t||[];for(var r=0;r<a.length;r++){var i=n(a[r]);e[i].references--}for(var l=o(t,s),c=0;c<a.length;c++){var d=n(a[c]);0===e[d].references&&(e[d].updater(),e.splice(d,1))}a=l}}},569:t=>{var e={};t.exports=function(t,n){var o=function(t){if(void 0===e[t]){var n=document.querySelector(t);if(window.HTMLIFrameElement&&n instanceof window.HTMLIFrameElement)try{n=n.contentDocument.head}catch(t){n=null}e[t]=n}return e[t]}(t);if(!o)throw new Error("Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.");o.appendChild(n)}},216:t=>{t.exports=function(t){var e=document.createElement("style");return t.setAttributes(e,t.attributes),t.insert(e,t.options),e}},565:(t,e,n)=>{t.exports=function(t){var e=n.nc;e&&t.setAttribute("nonce",e)}},795:t=>{t.exports=function(t){if("undefined"==typeof document)return{update:function(){},remove:function(){}};var e=t.insertStyleElement(t);return{update:function(n){!function(t,e,n){var o="";n.supports&&(o+="@supports (".concat(n.supports,") {")),n.media&&(o+="@media ".concat(n.media," {"));var s=void 0!==n.layer;s&&(o+="@layer".concat(n.layer.length>0?" ".concat(n.layer):""," {")),o+=n.css,s&&(o+="}"),n.media&&(o+="}"),n.supports&&(o+="}");var a=n.sourceMap;a&&"undefined"!=typeof btoa&&(o+="\n/*# sourceMappingURL=data:application/json;base64,".concat(btoa(unescape(encodeURIComponent(JSON.stringify(a))))," */")),e.styleTagTransform(o,t,e.options)}(e,t,n)},remove:function(){!function(t){if(null===t.parentNode)return!1;t.parentNode.removeChild(t)}(e)}}}},589:t=>{t.exports=function(t,e){if(e.styleSheet)e.styleSheet.cssText=t;else{for(;e.firstChild;)e.removeChild(e.firstChild);e.appendChild(document.createTextNode(t))}}},203:t=>{t.exports="data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2732%27 height=%2732%27 viewBox=%270 0 32 32%27%3E%3Cmask id=%27frame-cutout%27%3E%3Crect width=%2732%27 height=%2732%27 fill=%27%23fff%27/%3E%3Crect x=%273%27 y=%273%27 width=%2726%27 height=%2726%27 rx=%274%27 ry=%274%27 fill=%27%23000%27/%3E%3C/mask%3E%3Crect width=%2732%27 height=%2732%27 fill=%27%23cccccc%27 mask=%27url%28%23frame-cutout%29%27/%3E%3C/svg%3E"},360:t=>{t.exports="data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2732%27 height=%2732%27 viewBox=%270 0 32 32%27%3E%3Cpath d=%27M6 17L12 23L26 9%27 fill=%27none%27 stroke=%27%23fff%27 stroke-width=%273%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27/%3E%3C/svg%3E"},597:t=>{t.exports="data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2732%27 height=%2732%27 viewBox=%270 0 32 32%27%3E%3Cpath d=%27M8 16h16%27 fill=%27none%27 stroke=%27%23fff%27 stroke-width=%273%27 stroke-linecap=%27round%27/%3E%3C/svg%3E"},463:t=>{t.exports="data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2732%27 height=%2732%27 viewBox=%270 0 32 32%27%3E%3Cpath d=%27M8 8L24 24M24 8L8 24%27 fill=%27none%27 stroke=%27%23fff%27 stroke-width=%273%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27/%3E%3C/svg%3E"}},e={};function n(o){var s=e[o];if(void 0!==s)return s.exports;var a=e[o]={id:o,exports:{}};return t[o](a,a.exports,n),a.exports}n.m=t,n.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return n.d(e,{a:e}),e},n.d=(t,e)=>{for(var o in e)n.o(e,o)&&!n.o(t,o)&&Object.defineProperty(t,o,{enumerable:!0,get:e[o]})},n.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),n.b=document.baseURI||self.location.href,n.nc=void 0;var o={};(()=>{n.d(o,{Z:()=>At});let t=0;const e={},s={};function a(t,n,o,a="",r){const i=a?function(t,e){for(;t&&1===t.nodeType;){if(t.matches(e))return t;t=t.parentNode}return null}(t.target,a):r;function l(){e[n]&&e[n].reduce(((e,n)=>e.then((()=>new Promise(((e,o)=>{try{const s=n.bind(i)(t);s instanceof Promise?s.then(e).catch(o):e(s)}catch(t){o(t)}}))))),Promise.resolve()).catch((()=>{}))}i&&(clearTimeout(s[n]),0===o?l():s[n]=setTimeout(l,o))}var r=n(379),i=n.n(r),l=n(795),c=n.n(l),d=n(569),p=n.n(d),u=n(565),f=n.n(u),h=n(216),g=n.n(h),m=n(589),b=n.n(m),y=n(570),x={};function v(t){t.tristate=function(e={}){return t.elements.forEach((t=>{if("checkbox"===t.type){const[n,o,s]=function(t,e){const n=window.getComputedStyle(t);t.style.display="none";const o=document.createElement("div");if(o.classList.add("apx-tristate"),e.size){if(null!=e.size.width){const t=e.size.width;if("number"!=typeof t&&"string"!=typeof t)throw new TypeError("tristate size.width must be a number (px) or a string (CSS length).");o.style.width="number"==typeof t?t+"px":String(t)}if(null!=e.size.height){const t=e.size.height;if("number"!=typeof t&&"string"!=typeof t)throw new TypeError("tristate size.height must be a number (px) or a string (CSS length).");o.style.height="number"==typeof t?t+"px":String(t)}}e.classes&&o.classList.add(...function(t){let e=[];return"string"==typeof t?e=(t=t.replace(/\s\s+/g," ")).indexOf(" ")>-1?t.split(" "):t.indexOf(",")>-1?t.split(","):[t]:Array.isArray(t)&&(e=t),e}(e.classes));const s=function(t){const e=t.colors||{};return{tick:null!=e.tick?e.tick:t.tickColor,checked:null!=e.checked?e.checked:t.checkedColor,crossed:null!=e.crossed?e.crossed:t.crossedColor}}(e);null!=s.tick&&o.style.setProperty("--apx-tristate-tick-color",String(s.tick)),null!=s.checked&&o.style.setProperty("--apx-tristate-checked-color",String(s.checked)),null!=s.crossed&&o.style.setProperty("--apx-tristate-crossed-color",String(s.crossed)),o.style.margin=n.margin,t.checked?o.classList.add("checked"):o.classList.add("unchecked");const a=document.createElement("input");return a.type="hidden",a.name=t.name,t.dataset.name=t.name,t.removeAttribute("name"),e.defaultState?function(t,e,n){e.classList.remove("unchecked","checked","crossed"),"checked"===t.defaultState?(e.classList.add("checked"),n.value="true"):"unchecked"===t.defaultState?(e.classList.add("unchecked"),n.removeAttribute("name"),n.removeAttribute("value")):"crossed"===t.defaultState&&(e.classList.add("crossed"),n.value="false")}(e,o,a):t.checked?a.value="true":(a.name="",a.value=""),o.tabIndex=t.tabIndex,o.appendChild(a),t.parentNode.insertBefore(o,t.nextSibling),o.addEventListener("click",(function(n){!function(t,e,n){const o=t.classList.contains("checked"),s=t.classList.contains("crossed");t.classList.remove("unchecked","checked","crossed"),o?(t.classList.add("crossed"),e.checked=!1,n.value="false"):s?(t.classList.add("unchecked"),n.removeAttribute("name"),n.removeAttribute("value")):(t.classList.add("checked"),e.checked=!0,n.value="true",n.setAttribute("name",e.dataset.name))}(o,t,a),A(e,t,o,a,n)})),o.addEventListener("keyup",k.bind(null,t)),[t,o,a]}(t,e);n._apxTristate={dom:o,hiddenInput:s},e.callbacks&&e.callbacks.after&&"function"==typeof e.callbacks.after&&e.callbacks.after(n,o,s)}})),{setChildren:n=>function(t,e,n){const o=t.all().filter((t=>"checkbox"===t.type));if(0===o.length)return;o.length>1&&console.warn("APX tristate setChildren: only the first parent is linked to all children.");const s=o[0]._apxTristate;if(!s)return;const a=s.dom,r=s.hiddenInput;a.classList.add("apx-tristate--unchecked-indeterminate","apx-tristate--indeterminate-dash"),e.all().filter((t=>"checkbox"===t.type));const i=[];function l(){if(0===i.length)return;const t=i.map((t=>w(t.dom))),e=t.every((t=>"checked"===t)),n=t.every((t=>"crossed"===t)),o=t.every((t=>"unchecked"===t)),s=!e&&!n&&!o;a.classList.remove("unchecked","checked","crossed"),s?a.classList.add("apx-tristate--mixed"):a.classList.remove("apx-tristate--mixed"),e?(a.classList.add("checked"),r.value="true"):n?(a.classList.add("crossed"),r.value="false"):(a.classList.add("unchecked"),r.removeAttribute("name"),r.removeAttribute("value"))}function c(){const t=w(a);i.forEach((e=>function(t,e,n,o){e.classList.remove("unchecked","checked","crossed"),e.classList.add(o);const s=t.dataset.name||t.getAttribute("data-name")||t.name||"";"checked"===o?(n.value="true",s&&n.setAttribute("name",s),t.checked=!0):"crossed"===o?(n.value="false",s&&n.setAttribute("name",s),t.checked=!1):(n.removeAttribute("name"),n.removeAttribute("value"),t.checked=!1)}(e.checkbox,e.dom,e.hiddenInput,t)))}const d={...n,callbacks:{after(t,e,n){i.push({checkbox:t,dom:e,hiddenInput:n})},change:l}};e.tristate(d),l(),a.addEventListener("click",(()=>setTimeout(c,0)))}(t,n,e)}}}function w(t){return t.classList.contains("checked")?"checked":t.classList.contains("crossed")?"crossed":"unchecked"}function A(t,e,n,o,s){t.callbacks&&t.callbacks.change&&"function"==typeof t.callbacks.change&&t.callbacks.change(e,n,o),t.bubbleEvents&&("click"===s.type?e.dispatchEvent(new MouseEvent("click",{bubbles:!0,cancelable:!0})):"keyup"===s.type?e.dispatchEvent(new KeyboardEvent("keyup",{key:" ",bubbles:!0,cancelable:!0})):"change"===s.type&&e.dispatchEvent(new Event("change",{bubbles:!0,cancelable:!0})))}function k(t,e){32===e.keyCode&&(A(t,e),e.preventDefault(),e.target.click())}x.styleTagTransform=b(),x.setAttributes=f(),x.insert=p().bind(null,"head"),x.domAPI=c(),x.insertStyleElement=g(),i()(y.Z,x),y.Z&&y.Z.locals&&y.Z.locals;var P=n(773),E={};E.styleTagTransform=b(),E.setAttributes=f(),E.insert=p().bind(null,"head"),E.domAPI=c(),E.insertStyleElement=g(),i()(P.Z,E),P.Z&&P.Z.locals&&P.Z.locals;const X="_apxScrollableTable",L="apx-scrollable-table",C="200px",S=16,$=new Set,_=new Map,T=new Map;let M=!1,z=null,N=0,j=null;function I(t){let e=0;return t.querySelectorAll(":scope > th, :scope > td").forEach((t=>{e+=parseInt(t.getAttribute("colspan"),10)||1})),e}function O(t){if(!t)return 0;const e=t.querySelectorAll(":scope > tr");let n=0;return e.forEach((t=>{const e=I(t);e>n&&(n=e)})),n}function q(t){return t?t.querySelectorAll(":scope > tr").length:0}function B(t){return null==t?C:"number"==typeof t?`${t}px`:String(t)}function F(t,e){const n=t.bodyHeightDynamic;if(n&&"function"==typeof n.get)return{bodySize:B(n.get(e)),useFixedHeight:"height"===n.useAs};const o=null!=t.height;return{bodySize:B(o?t.height:t.maxHeight),useFixedHeight:o}}function H(){const t=[];$.forEach((e=>{e.isConnected||t.push(e)})),t.forEach((t=>D(t))),$.forEach((t=>{const e=t[X];e?.options&&function(t,e){const{bodySize:n,useFixedHeight:o}=F(e,t);t.style.setProperty("--apx-scrollable-body-max-height",n),t.classList.toggle("apx-scrollable-table--body-height",o)}(t,e.options)}))}function R(){const t=Date.now();t-N<S?j||(j=requestAnimationFrame((()=>{j=null,N=Date.now(),H()}))):(N=t,H())}function D(t){$.delete(t),_.forEach(((e,n)=>{e.delete(t),0===e.size&&(_.delete(n),n.removeEventListener("scroll",Z))})),T.forEach(((e,n)=>{e.delete(t),0===e.size&&(T.delete(n),z&&z.unobserve(n))})),M&&0===$.size&&(window.removeEventListener("resize",W),M=!1)}function Z(){R()}function W(){R()}function U(t,e){const{scrollTargets:n,resizeWindow:o,resizeElements:s}=function(t){const e=t?.bodyHeightDynamic?.updateOn,n=e?.scrollOn,o=e?.resizeOn,s=[];null!=n&&Array.isArray(n)&&n.length>0?n.forEach((t=>{"document"===t?s.push(document.documentElement):t&&"function"==typeof t.addEventListener&&s.push(t)})):!0===e?.scroll&&(s.push(document.documentElement),s.push("undefined"!=typeof window?window:document.documentElement));let a=!1;const r=[];return null!=o&&Array.isArray(o)&&o.length>0?o.forEach((t=>{"window"===t?a=!0:t&&"function"==typeof t.addEventListener&&r.push(t)})):!1!==e?.resize&&(a=!0,r.push(document.documentElement)),{scrollTargets:s,resizeWindow:a,resizeElements:r}}(e);$.add(t),n.forEach((e=>{let n=_.get(e);n||(n=new Set,_.set(e,n),e.addEventListener("scroll",Z,{passive:!0})),n.add(t)})),o&&(M||(M=!0,window.addEventListener("resize",W,{passive:!0}))),s.forEach((e=>{let n=T.get(e);n||(n=new Set,T.set(e,n),z||(z=new ResizeObserver(W)),z.observe(e)),n.add(t)}))}function J(t){if(!t)return[];const e=t.querySelectorAll(":scope > tr");return Array.from(e).map((t=>t.getBoundingClientRect().height))}function Y(t,e,n){const o=t.querySelector("thead"),s=t.querySelector("tbody"),a=t.querySelector("tfoot"),r=function(t){const e=t.querySelector("thead"),n=t.querySelector("tbody"),o=t.querySelector("tfoot"),s=e?O(e):0,a=n?O(n):0,r=o?O(o):0;return Math.max(s,a,r,1)}(t);if(0===r)return;const i=t.classList.contains(L),l="string"==typeof e.gridTemplateColumns&&e.gridTemplateColumns.trim().length>0,c=l?null:n?.columnWidths??(i?null:function(t,e){const n=[t.querySelector("thead"),t.querySelector("tbody")].filter(Boolean);let o=null;for(const t of n){const n=t.querySelectorAll(":scope > tr");for(const t of n){const n=t.querySelectorAll(":scope > th, :scope > td");if(I(t)===e){if(Array.from(n).every((t=>1===(parseInt(t.getAttribute("colspan"),10)||1)))&&n.length===e){o=t;break}o||(o=t)}}if(o&&Array.from(o.querySelectorAll(":scope > th, :scope > td")).every((t=>1===(parseInt(t.getAttribute("colspan"),10)||1))))break}if(!o)return[];const s=new Array(e).fill(0),a=o.querySelectorAll(":scope > th, :scope > td");let r=0;for(const t of a){const n=Math.min(parseInt(t.getAttribute("colspan"),10)||1,e-r);if(n<=0)break;const o=t.getBoundingClientRect().width/n;for(let t=0;t<n;t++)s[r+t]=o;r+=n}if(0===r)return[];const i=s.some((t=>t>0))?Math.max(80,...s.filter((t=>t>0)))/2:80;for(let t=0;t<e;t++)s[t]<=0&&(s[t]=i);return s.slice(0,e)}(t,r)),d=q(o),p=q(s),u=q(a),f=n?.rowHeights??(i?null:{thead:J(o),tbody:J(s),tfoot:J(a)});t.style.setProperty("--apx-scrollable-cols",String(r)),t.style.setProperty("--apx-scrollable-thead-rows",String(Math.max(1,d))),t.style.setProperty("--apx-scrollable-tbody-rows",String(Math.max(1,p))),t.style.setProperty("--apx-scrollable-tfoot-rows",String(Math.max(1,u)));const{bodySize:h,useFixedHeight:g}=F(e,t);t.style.setProperty("--apx-scrollable-body-max-height",h),t.classList.toggle("apx-scrollable-table--body-height",g),t.classList.add(L),t.classList.toggle("apx-scrollable-table--has-tfoot",!!(a&&u>0)),t.classList.toggle("apx-scrollable-table--no-thead",!(o&&d>0)),t.offsetHeight;const m=" minmax(var(--apx-scrollable-gutter-width, 17px), var(--apx-scrollable-gutter-width, 17px))";if(l)t.style.setProperty("--apx-scrollable-template-columns",e.gridTemplateColumns.trim()+m);else if(c&&c.length===r){const n=null!=e.columnOverrides?function(t,e,n){if(!e||e.length!==t)return"";const o=t=>(Array.isArray(n),n[t]),s=[];for(let n=0;n<t;n++){const t=o(n);null!=t&&"string"==typeof t&&""!==t.trim()?s.push(t.trim()):s.push(`${Math.round(e[n])}fr`)}return s.join(" ")}(r,c,e.columnOverrides):c.map((t=>`${Math.round(t)}fr`)).join(" ");t.style.setProperty("--apx-scrollable-template-columns",n+m)}else t.style.removeProperty("--apx-scrollable-template-columns");!function(t){t.querySelectorAll("th, td").forEach((t=>{t.style.gridRow="",t.style.gridColumn=""}))}(t);const b=[{section:o,rows:Math.max(1,d),heights:f?.thead,key:"thead"},{section:s,rows:Math.max(1,p),heights:f?.tbody,key:"tbody"},{section:a,rows:Math.max(1,u),heights:f?.tfoot,key:"tfoot"}],y=e.gridTemplateRows&&"object"==typeof e.gridTemplateRows?e.gridTemplateRows:null,x=e.rowOverrides&&"object"==typeof e.rowOverrides?e.rowOverrides:null;return b.forEach((({section:t,rows:e,heights:n,key:o})=>{if(!t)return;const s=`--apx-scrollable-${o}-template-rows`,a=y?.[o],i=x?.[o];if("string"==typeof a&&a.trim().length>0)t.style.setProperty(s,a.trim());else if(n&&n.length>=e){const o=null!=i?function(t,e,n){if(!e||e.length<t)return"";const o=t=>Array.isArray(n)?n[t]:n?.[t],s=[];for(let n=0;n<t;n++){const t=o(n);null!=t&&"string"==typeof t&&""!==t.trim()?s.push(t.trim()):s.push(`${Math.round(e[n]??0)}px`)}return s.join(" ")}(e,n.slice(0,e),i):n.slice(0,e).map((t=>`${Math.round(t)}px`)).join(" ");t.style.setProperty(s,o)}else t.style.removeProperty(s);const l=function(t,e,n){if(!t||0===e||0===n)return[];const o=Array.from({length:e},(()=>Array(n).fill(!1))),s=[],a=t.querySelectorAll(":scope > tr");for(let t=0;t<a.length;t++){const r=a[t].querySelectorAll(":scope > th, :scope > td");for(const a of r){const r=Math.min(parseInt(a.getAttribute("colspan"),10)||1,n),i=Math.min(parseInt(a.getAttribute("rowspan"),10)||1,e-t);let l=0;for(;l<n;){let e=!0;for(let n=t;n<t+i&&e;n++)for(let t=l;t<l+r&&e;t++)o[n]?.[t]&&(e=!1);if(e)break;l++}if(!(l+r>n)){for(let e=t;e<t+i;e++)for(let t=l;t<l+r;t++)o[e]&&(o[e][t]=!0);s.push({cell:a,row:t,col:l,colspan:r,rowspan:i})}}}return s}(t,e,r);!function(t){t.forEach((({cell:t,row:e,col:n,colspan:o,rowspan:s})=>{t.style.gridRow=`${e+1} / span ${s}`,t.style.gridColumn=`${n+1} / span ${o}`}))}(l)})),{columnWidths:c,rowHeights:f}}var K=n(613),G={};G.styleTagTransform=b(),G.setAttributes=f(),G.insert=p().bind(null,"head"),G.domAPI=c(),G.insertStyleElement=g(),i()(K.Z,G),K.Z&&K.Z.locals&&K.Z.locals;var Q=n(152),V={};V.styleTagTransform=b(),V.setAttributes=f(),V.insert=p().bind(null,"head"),V.domAPI=c(),V.insertStyleElement=g(),i()(Q.Z,V),Q.Z&&Q.Z.locals&&Q.Z.locals;const tt="undefined"!=typeof window&&"undefined"!=typeof document,et=new Map;let nt=null,ot=null;const st={position:"bottom-right",maxToasts:5,defaultDurationMs:5e3,zIndex:11e3,ariaLive:"polite",gap:8,dedupe:!1,containerClass:"",offset:0,progress:!1};function at(t,e){const n=document.createElement(t);return e&&e.split(" ").filter(Boolean).forEach((t=>n.classList.add(t))),n}function rt(t){return t?'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" aria-hidden="true"><path d="M8 6L8 18L17 12Z"/></svg>':'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" aria-hidden="true"><line x1="9" y1="6" x2="9" y2="18"/><line x1="15" y1="6" x2="15" y2="18"/></svg>'}function it(t,e,n,o){const s=o.position,a=!0===o.pauseButton,r=at("div",`APX-toast__progress APX-toast__progress--${s}`),i=at("div","APX-toast__progress-track"),l=at("div","APX-toast__progress-bar");l.setAttribute("role","progressbar"),l.setAttribute("aria-valuemin","0"),l.setAttribute("aria-valuemax","100"),l.setAttribute("aria-label","Temps restant"),l.setAttribute("aria-valuenow","100"),l.style.width="100%",i.appendChild(l),r.appendChild(i);let c=null;return a&&(c=at("button","APX-toast__progress-pause"),c.type="button",c.setAttribute("aria-label","Pause"),c.setAttribute("title","Pause"),c.innerHTML=rt(!1),r.insertBefore(c,i)),"top"===s?(t.insertBefore(r,e),t.classList.add("APX-toast--has-progress-top")):(t.insertBefore(r,n),t.classList.add("APX-toast--has-progress-bottom")),a&&t.classList.add("APX-toast--has-progress-pause"),{wrap:r,bar:l,pauseBtn:c}}function lt(t){return{above:"top",below:"bottom",before:"left",after:"right"}[t]||t}function ct(t){if("string"==typeof t)return t.includes("top")?"up":(t.includes("bottom"),"down");if("object"==typeof t&&null!==t){const e=t.type||(t.x||t.y?"sticky":null);if("sticky"===e||!e&&(t.x||t.y)){if(void 0!==t.y){if(t.y.startsWith("-"))return"down";const e=parseFloat(t.y);if(!isNaN(e))return t.y.includes("%")?e<50?"up":"down":e<400?"up":"down"}return"down"}if("anchored"===e&&t.placement){const e=lt(t.placement);return"top"===e||"above"===e?"up":"down"}if("relative"===e){if(void 0!==t.y){const e=parseFloat(t.y);if(!isNaN(e))return e<0?"up":"down"}return"down"}}return"down"}function dt(){tt&&(document.querySelectorAll('.APX-toast-container:not([data-apx-toast-managed="true"])').forEach((t=>{if(0===t.children.length){const e=t.getAttribute("data-apx-toast-position");e&&et.delete(e),t.remove()}})),ot&&0===ot.children.length&&(ot.remove(),ot=null),nt=null)}function pt(t){if("string"==typeof t)return`s:${t}`;if("object"==typeof t&&null!==t){const e=[],n=t.type||(t.x||t.y?"sticky":null);if(n&&e.push(`t:${n}`),void 0!==t.x&&e.push(`x:${t.x}`),void 0!==t.y&&e.push(`y:${t.y}`),t.element){const n=t.element.id||t.element.dataset?.apxToastAnchorId||`el_${function(t){const e=t.getBoundingClientRect(),n=`${t.tagName}_${e.left}_${e.top}_${e.width}_${e.height}`;let o=0;for(let t=0;t<n.length;t++)o=(o<<5)-o+n.charCodeAt(t),o&=o;return Math.abs(o).toString(36)}(t.element)}`;e.push(`el:${n}`)}if(t.placement){const n=lt(t.placement);e.push(`p:${n}`)}return void 0!==t.gap&&e.push(`g:${t.gap}`),t.useNativeCSS&&e.push("native:true"),`o:${e.join("|")}`}return"s:bottom-right"}class ut{constructor(t){this.config={...st,...t||{}},this.container=null,this.idToRef=new Map,this.open=[]}configure(t){this.config={...this.config,...t||{}},this.container&&this.applyContainerConfig()}setAriaLive(t){this.configure({ariaLive:t})}getOpenToasts(){return this.open.slice()}show(t){if(!tt)return null;const e=this.normalizeOptions(t);if(this.config.dedupe&&e.id&&this.idToRef.has(e.id)){const t=this.idToRef.get(e.id);return t.update(e),t}const n=e.position||this.config.position||"bottom-right",o=void 0!==e.flow?e.flow:void 0!==this.config.flow?this.config.flow:"auto",s="auto"===o?ct(n):o;this.ensureContainer();const a=at("div",`APX-toast APX-toast--${e.type}`);a.setAttribute("role","status");const r=e.id||`t_${Date.now()}_${Math.random().toString(36).slice(2,8)}`;a.dataset.toastId=r,e.className&&(a.className+=` ${e.className}`);const i=at("div","APX-toast__content");"string"==typeof e.message?i.textContent=e.message:e.message&&i.appendChild(e.message),a.appendChild(i);let l=null;!1!==e.dismissible&&(l=at("button","APX-toast__close"),l.setAttribute("aria-label","Close"),l.type="button",a.appendChild(l));let c=null,d=null,p=null;if(e.progress.enable&&e.durationMs>0){const t=it(a,i,l,e.progress);c=t.wrap,d=t.bar,p=t.pauseBtn}let u=null,f=null,h=null,g=null;if(n&&"object"==typeof n&&null!==n){const t=n.type||(n.x||n.y?"sticky":null);if(n.useNativeCSS&&("relative"===t||"anchored"===t)&&n.element){const e=n.element;g=e.style.position,e.style.position="relative";const o=pt(n);let a=e.querySelector(`[data-apx-toast-position="${o}"]`);if(a)a.style.flexDirection="up"===s?"column-reverse":"column";else{if(a=at("div","APX-toast-container APX-toast-container-native"),a.setAttribute("data-apx-toast-position",o),a.style.position="absolute",a.style.zIndex=String(this.config.zIndex),a.style.gap=`${this.config.gap}px`,a.setAttribute("aria-live",String(this.config.ariaLive)),a.style.flexDirection="up"===s?"column-reverse":"column","relative"===t)void 0!==n.x&&(n.x.startsWith("-")?a.style.right=n.x.substring(1):a.style.left=n.x),void 0!==n.y&&(n.y.startsWith("-")?a.style.bottom=n.y.substring(1):a.style.top=n.y);else if("anchored"===t){const t=lt(n.placement),e=n.gap||"1em";switch(t){case"top":a.style.bottom=`calc(100% + ${e})`,a.style.left="0";break;case"bottom":a.style.top=`calc(100% + ${e})`,a.style.left="0";break;case"left":a.style.right=`calc(100% + ${e})`,a.style.top="0";break;case"right":a.style.left=`calc(100% + ${e})`,a.style.top="0"}}e.appendChild(a)}u=a,h=()=>{if(e&&e.parentElement&&(e.style.position=g||"",a&&0===a.children.length)){const t=a.getAttribute("data-apx-toast-position");t&&et.delete(t),a.remove()}}}else{u=this.getContainerForPosition(n,s);const e=()=>{const t=this.calculatePosition(n,u);Object.assign(u.style,t)};if(e(),("relative"===t||"anchored"===t)&&n.element){let t=null,o=0;const s=16,a=()=>{const n=Date.now();n-o<s?(t&&cancelAnimationFrame(t),t=requestAnimationFrame((()=>{e(),o=Date.now()}))):(e(),o=n)},r=function(t){const e=[];let n=t.parentElement;for(;n&&n!==document.body&&n!==document.documentElement;){const t=window.getComputedStyle(n),o=t.overflow+t.overflowY+t.overflowX;(o.includes("scroll")||o.includes("auto"))&&e.push(n),n=n.parentElement}return e}(n.element);window.addEventListener("scroll",a,{passive:!0}),window.addEventListener("resize",a,{passive:!0}),r.forEach((t=>{t.addEventListener("scroll",a,{passive:!0})}));const i=new MutationObserver((()=>{n.element.parentElement||E.close("api")}));i.observe(document.body,{childList:!0,subtree:!0}),f=e,h=()=>{window.removeEventListener("scroll",a),window.removeEventListener("resize",a),r.forEach((t=>{t.removeEventListener("scroll",a)})),i.disconnect(),t&&cancelAnimationFrame(t)}}}}else u=this.getContainerForPosition(n,s);u?u.appendChild(a):this.container.appendChild(a),a.classList.add("APX-toast--enter"),requestAnimationFrame((()=>{a.classList.add("APX-toast--enter-active")}));let m=e.durationMs,b=null,y=null,x=!1,v=null;const w={click:new Set,close:new Set},A=()=>{if(m&&!(m<=0)&&(y=Date.now(),b=window.setTimeout((()=>E.close("timeout")),m),d)){const t=()=>{if(null==b||null==y)return;const n=Date.now()-y,o=Math.max(0,m-n),s=e.durationMs,a=s>0?Math.max(0,Math.min(100,o/s*100)):0;d.style.width=`${a}%`,d.setAttribute("aria-valuenow",String(Math.round(a))),v=requestAnimationFrame(t)};v=requestAnimationFrame(t)}},k=()=>{null!=b&&(window.clearTimeout(b),b=null,null!=y&&(m-=Date.now()-y)),null!=v&&(cancelAnimationFrame(v),v=null)},P=t=>{t.addEventListener("click",(e=>{e.stopPropagation(),x=!x,x?k():A();const n=x?"Reprendre":"Pause";t.setAttribute("aria-label",n),t.setAttribute("title",n),t.innerHTML=rt(x)}))},E={id:r,el:a,close:t=>{cleanup(t||"api")},update:t=>{const n=this.normalizeOptions({...e,...t});if("string"==typeof n.message?i.textContent=n.message:n.message&&(i.innerHTML="",i.appendChild(n.message)),["info","success","warning","danger"].forEach((t=>a.classList.remove(`APX-toast--${t}`))),a.classList.add(`APX-toast--${n.type}`),e.className!==n.className&&(e.className&&a.classList.remove(...e.className.split(" ").filter(Boolean)),n.className&&a.classList.add(...n.className.split(" ").filter(Boolean))),e.progress=n.progress,c)!n.progress.enable||n.durationMs<=0?c.style.display="none":(c.style.display="",function(t,e,n,o,s){t.classList.remove("APX-toast--has-progress-top","APX-toast--has-progress-bottom"),t.classList.add("top"===s?"APX-toast--has-progress-top":"APX-toast--has-progress-bottom"),e.classList.remove("APX-toast__progress--top","APX-toast__progress--bottom"),e.classList.add(`APX-toast__progress--${s}`);const a="top"===s?n:o;e.nextElementSibling!==a&&t.insertBefore(e,a)}(a,c,i,l,n.progress.position));else if(n.progress.enable&&n.durationMs>0){const t=it(a,i,l,n.progress);c=t.wrap,d=t.bar,p=t.pauseBtn,p&&P(p)}c&&"none"!==c.style.display&&!0===n.progress.pauseButton?a.classList.add("APX-toast--has-progress-pause"):a.classList.remove("APX-toast--has-progress-pause"),e.durationMs=n.durationMs,m=n.durationMs,d&&(d.style.width="100%",d.setAttribute("aria-valuenow","100")),k(),A()},whenClosed:()=>L,on:(t,e)=>(w[t].add(e),()=>E.off(t,e)),off:(t,e)=>{w[t].delete(e)}},X=(t,e)=>w[t].forEach((t=>{try{t(e)}catch(t){}})),L=new Promise((t=>{const n=n=>{if(X("close",n),"function"==typeof e.onClose)try{e.onClose(E,n)}catch(t){}t()},o=t=>{if(!a)return;if(k(),null!=v&&(cancelAnimationFrame(v),v=null),h&&(h(),h=null),"overflow"===t){a.parentElement&&a.parentElement.removeChild(a);const e=this.open.indexOf(E);return e>=0&&this.open.splice(e,1),this.idToRef.delete(r),void n(t)}a.classList.add("APX-toast--exit"),requestAnimationFrame((()=>a.classList.add("APX-toast--exit-active")));const e=()=>{a.removeEventListener("transitionend",e),a.parentElement&&a.parentElement.removeChild(a);const o=this.open.indexOf(E);o>=0&&this.open.splice(o,1),this.idToRef.delete(r),nt&&clearTimeout(nt),nt=setTimeout(dt,2e4),n(t)};a.addEventListener("transitionend",e)};E.close=t=>o(t||"api")}));return a.addEventListener("click",(t=>{if(X("click",t),"function"==typeof e.onClick)try{e.onClick(E,t)}catch(t){}})),a.addEventListener("mouseenter",k),a.addEventListener("mouseleave",(()=>{x||A()})),l&&l.addEventListener("click",(t=>{t.stopPropagation(),E.close("close")})),p&&P(p),this.open.push(E),this.idToRef.set(r,E),this.open.length>this.config.maxToasts&&this.open[0].close("overflow"),A(),E}info(t,e){return this.show({...e||{},message:t,type:"info"})}success(t,e){return this.show({...e||{},message:t,type:"success"})}warning(t,e){return this.show({...e||{},message:t,type:"warning"})}danger(t,e){return this.show({...e||{},message:t,type:"danger"})}closeAll(t){this.open.slice().forEach((e=>e.close(t||"api")))}normalizeOptions(t){const e={...t};return e.type||(e.type="info"),"boolean"!=typeof e.dismissible&&(e.dismissible=!0),"number"!=typeof e.durationMs&&(e.durationMs=this.config.defaultDurationMs),!e.id&&this.config.id&&(e.id=this.config.id),e.progress=function(t,e){const n=!0===e?{enable:!0,position:"top",pauseButton:!1}:e&&"object"==typeof e?{enable:!!e.enable,position:"bottom"===e.position?"bottom":"top",pauseButton:!0===e.pauseButton}:{enable:!1,position:"top",pauseButton:!1};return null==t?n:!0===t?{enable:!0,position:"top",pauseButton:!1}:"object"==typeof t?{enable:!!t.enable,position:"bottom"===t.position?"bottom":"top",pauseButton:!0===t.pauseButton}:{enable:!1,position:"top",pauseButton:!1}}(t.progress,this.config.progress),e}getContainerForPosition(t,e,n=!1){if(!tt)return null;const o=pt(t),s=e&&"auto"!==e?e:ct(t);let a=et.get(o);if(!a&&tt&&(a=document.querySelector(`[data-apx-toast-position="${o}"]`),a&&et.set(o,a)),a)a.style.flexDirection="up"===s?"column-reverse":"column",n&&!a.hasAttribute("data-apx-toast-managed")&&a.setAttribute("data-apx-toast-managed","true");else{a=at("div","APX-toast-container"),a.setAttribute("data-apx-toast-position",o),n&&a.setAttribute("data-apx-toast-managed","true");const e="string"==typeof t?t:t.type||"bottom-right";if(a.classList.add(`APX-toast-container--${e}`),a.setAttribute("aria-live",String(this.config.ariaLive)),a.style.zIndex=String(this.config.zIndex),a.style.gap=`${this.config.gap}px`,a.style.flexDirection="up"===s?"column-reverse":"column","object"==typeof t&&null!==t){a.style.position="fixed";const e=this.calculatePosition(t,a);Object.assign(a.style,e)}const r=tt?(ot||(ot=document.querySelector(".APX-toast-wrapper"),ot||(ot=at("div","APX-toast-wrapper"),ot.style.position="fixed",ot.style.top="0",ot.style.left="0",ot.style.width="0",ot.style.height="0",ot.style.pointerEvents="none",ot.style.zIndex="10000",document.body.appendChild(ot))),ot):null;r?r.appendChild(a):document.body.appendChild(a),et.set(o,a)}return a}ensureContainer(){if(this.container||!tt)return;const t=this.config.position||"bottom-right",e=void 0!==this.config.flow?this.config.flow:"auto";this.container=this.getContainerForPosition(t,e,!0),this.applyContainerConfig()}applyContainerConfig(){if(!this.container)return;const t=this.config.position||"bottom-right",e="string"==typeof t?t:t.type||"bottom-right";if(this.container.style.zIndex=String(this.config.zIndex),this.container.style.gap=`${this.config.gap}px`,this.container.setAttribute("aria-live",String(this.config.ariaLive)),"string"==typeof t){const t=["bottom-right","bottom-left","top-right","top-left"].map((t=>`APX-toast-container--${t}`));this.container.classList.remove(...t),this.container.classList.add(`APX-toast-container--${e}`)}if(this.config.containerClass&&this.config.containerClass.split(" ").filter(Boolean).forEach((t=>{this.container.classList.add(t)})),"string"==typeof t)if(this.config.offset){const t=`${this.config.offset}px`;e.includes("bottom")?this.container.style.bottom=t:this.container.style.top=t,e.includes("right")?this.container.style.right=t:this.container.style.left=t}else e.includes("bottom")?this.container.style.bottom="":this.container.style.top="",e.includes("right")?this.container.style.right="":this.container.style.left="";else"object"==typeof t&&null!==t&&(this.container.style.position="fixed")}calculatePosition(t,e){if("string"==typeof t)return{};if("object"==typeof t&&null!==t){const e=t.type||(t.x||t.y?"sticky":null);if("sticky"===e||!e&&(t.x||t.y)){const e={};return void 0!==t.x&&(t.x.startsWith("-")?e.right=t.x.substring(1):e.left=t.x),void 0!==t.y&&(t.y.startsWith("-")?e.bottom=t.y.substring(1):e.top=t.y),e}if("relative"===e&&t.element){const e=t.element.getBoundingClientRect(),n=t=>{if(!t)return 0;const e=parseFloat(t);return t.includes("em")?16*e:e},o=n(t.x||"0"),s=n(t.y||"0");return{left:`${e.left+o}px`,top:`${e.top+s}px`}}if("anchored"===e&&t.element){const e=t.element.getBoundingClientRect(),n=(t=>{const e=parseFloat(t);return t.includes("em")?16*e:e})(t.gap||"1em"),o={};switch(lt(t.placement)){case"top":o.bottom=`${window.innerHeight-e.top+n}px`,o.left=`${e.left}px`;break;case"bottom":o.top=`${e.bottom+n}px`,o.left=`${e.left}px`;break;case"left":o.right=`${window.innerWidth-e.left+n}px`,o.top=`${e.top}px`;break;case"right":o.left=`${e.right+n}px`,o.top=`${e.top}px`}return o}}return{}}}let ft=null;const ht=()=>(ft||(ft=new ut(undefined)),ft);function gt(t){return ht().show(t)}Object.assign(gt,{create:(t,e)=>{if("string"==typeof t){const n=t,o=new ut({...e||{}});return gt.custom||(gt.custom={}),gt.custom[n]=o,o}return new ut({...t||{}})},custom:{},use:t=>gt.custom&>.custom[t]||null,Manager:ut,show:t=>ht().show(t),info:(t,e)=>ht().info(t,e),success:(t,e)=>ht().success(t,e),warning:(t,e)=>ht().warning(t,e),danger:(t,e)=>ht().danger(t,e),configure:t=>ht().configure(t),setAriaLive:t=>ht().setAriaLive(t),closeAll:t=>ht().closeAll(t),getOpenToasts:()=>ht().getOpenToasts()});const mt=gt,bt=(t,e={})=>{if(!(t&&t instanceof HTMLFormElement))throw new TypeError("packFormToJSON expects an HTMLFormElement");const n=!0===e.numericKeysAlwaysArray,o=new FormData(t),s={},a=t=>t.reduce(((t,e)=>"key"===e.type?t?`${t}[${e.name}]`:e.name:"numeric"===e.type?`${t}[${e.index}]`:"array"===e.type?`${t}[]`:t),""),r=new Map,i=new Map,l=new Map,c=[],d=(t,e,n,o)=>{const s=r.get(t)??{isFinal:!1,isIntermediate:!1,hasArraySuffix:!1,key:o};r.has(t)||r.set(t,s),e?(s.isFinal=!0,s.key=o,n&&(s.hasArraySuffix=!0)):(s.isIntermediate=!0,s.key??=o)};for(const[t,e]of o.entries()){if(!t)continue;c.push({key:t,value:e});const n=yt(t);let o="";for(let e=0;e<n.length;e++){const s=n[e],a=e===n.length-1,r="array"===s.type;if("key"===s.type)o=o?`${o}[${s.name}]`:s.name;else if("numeric"===s.type){const t=o;let e=l.get(t);e||(e=new Set,l.set(t,e)),e.add(s.index),o=`${o}[${s.index}]`}else"array"===s.type&&(o=`${o}[]`);d(o,a,r&&a,t)}for(let t=0;t<n.length-1;t++){const e=n[t],o=n[t+1];if("key"===e.type){const t=e.name,n=i.get(t)??{hasNumeric:!1,hasString:!1};i.has(t)||i.set(t,n),o&&("numeric"===o.type?n.hasNumeric=!0:"key"!==o.type&&"array"!==o.type||(n.hasString=!0))}}}(()=>{const t=new Set,e=new Map;for(const[n,o]of r.entries())o.isFinal&&(t.add(n),e.set(n,o.key));for(const[n,o]of r.entries())if(o.isIntermediate)for(const s of t)if(n.startsWith(`${s}[`))throw new Error(`Path conflict: "${s}" is used as a final value (in field "${e.get(s)}"), but "${n}" tries to use it as an intermediate path (in field "${o.key}"). This creates incompatible data structures. You cannot use "${s}" as a primitive value and then access it as an object.`)})();const p=t=>{if(!t)return!1;const e=i.get(t);return e?.hasNumeric&&e?.hasString},u=t=>{const e=l.get(t);return!e||0===e.size||!!n||(t=>{if(0===t.length)return!1;const e=[...t].sort(((t,e)=>t-e));for(let t=0;t<e.length;t++)if(e[t]!==t)return!1;return!0})([...e])},f=t=>{const e={};for(let n=0;n<t.length;n++)e[n]=t[n];for(const[n,o]of Object.entries(t)){const t=Number.parseInt(n,10);(Number.isNaN(t)||n!==String(t))&&(e[n]=o)}return e},h=t=>{if(Array.isArray(t))return t;const e=[];if("object"==typeof t&&null!==t)for(const[n,o]of Object.entries(t)){const t=Number.parseInt(n,10);Number.isNaN(t)||(e[t]=o)}return e},g=(t,e,n,o=!1)=>{if(Array.isArray(t)){const o=f(t);return n&&null!==e&&(n[e]=o),o}if("object"!=typeof t||null===t){const t={};return n&&null!==e&&(n[e]=t),t}return t},m=(t,e,n)=>{if(!Array.isArray(t)){const o=h(t);return n&&null!==e&&(n[e]=o),o}return t},b=(t,e,n,o,s,a)=>{if("array"===e.type)t[e.name]??=[],Array.isArray(t[e.name])?t[e.name].push(n):t[e.name]=[t[e.name],n];else if("numeric"===e.type){const{index:s}=e;if(u(a)){for(t=m(t,o.key,o.container);t.length<=s;)t.push(void 0);t[s]=n}else(t=g(t,o.key,o.container,!0))[s]=n}else p(s)?(t=g(t,o.key,o.container,!0),Array.isArray(t[e.name])&&(t[e.name]=f(t[e.name])),void 0===t[e.name]||"object"==typeof t[e.name]&&null!==t[e.name]?void 0===t[e.name]?t[e.name]=n:Array.isArray(t[e.name])?t[e.name].push(n):t[e.name]=[t[e.name],n]:t[e.name]=n):void 0===t[e.name]?t[e.name]=n:Array.isArray(t[e.name])?t[e.name].push(n):t[e.name]=[t[e.name],n]},y=(t,e,n,o,s,r,i,l)=>{if("numeric"===e.type){const{index:n}=e,c=a(r.slice(0,i));if(u(c)&&!p(s)){for(t=m(t,o.key,o.container);t.length<=n;)t.push(void 0);if(t[n]??={},"object"!=typeof t[n]||null===t[n]){const e=r.slice(0,i+1),o=a(e);throw new Error(`Cannot access property on primitive value. Key "${l}" tries to access "${o}" but it is already a ${typeof t[n]} value: ${JSON.stringify(t[n])}. This should have been detected during conflict detection phase.`)}}else if(t=g(t,o.key,o.container,!0),t[n]??={},"object"!=typeof t[n]||null===t[n]){const e=r.slice(0,i+1),o=a(e);throw new Error(`Cannot access property on primitive value. Key "${l}" tries to access "${o}" but it is already a ${typeof t[n]} value: ${JSON.stringify(t[n])}. This should have been detected during conflict detection phase.`)}return t[n]}const c="numeric"===n?.type;if(p(s)){if(t=g(t,o.key,o.container,!0),t[e.name]??={},Array.isArray(t[e.name]))t[e.name]=f(t[e.name]);else if("object"!=typeof t[e.name]||null===t[e.name]){const n=r.slice(0,i+1),o=a(n);throw new Error(`Cannot access property on primitive value. Key "${l}" tries to access "${o}" but it is already a ${typeof t[e.name]} value: ${JSON.stringify(t[e.name])}. This should have been detected during conflict detection phase.`)}}else void 0===t[e.name]?t[e.name]=c?[]:{}:c&&!Array.isArray(t[e.name])?Object.keys(t[e.name]).some((t=>{const e=Number.parseInt(t,10);return Number.isNaN(e)||t!==String(e)}))||(t[e.name]=h(t[e.name])):c||xt(t[e.name])||(Array.isArray(t[e.name])?t[e.name]=f(t[e.name]):t[e.name]={});if(void 0!==t[e.name]&&("object"!=typeof t[e.name]||null===t[e.name])){const n=r.slice(0,i+1),o=a(n);throw new Error(`Cannot access property on primitive value. Key "${l}" tries to access "${o}" but it is already a ${typeof t[e.name]} value: ${JSON.stringify(t[e.name])}. This should have been detected during conflict detection phase.`)}return t[e.name]};for(const{value:t,key:e}of c){if(!e)continue;const n=yt(e),o=[{container:s,key:null}];let r=s;const i="key"===n[0]?.type?n[0].name:"";for(let s=0;s<n.length;s++){const l=n[s],c=s===n.length-1,d=s+1<n.length?n[s+1]:null,p=o[o.length-1];if(c)b(r,l,t,p,i,a(n.slice(0,s)));else{const t=y(r,l,d,p,i,n,s,e);o.push({container:r,key:"numeric"===l.type?l.index:l.name}),r=t}}}return s},yt=t=>{const e=[];let n="",o=0;const s=t.length;for(;o<s;){const a=t[o];if("["===a){n&&(e.push({name:n,type:"key"}),n=""),o++;let a="";for(;o<s&&"]"!==t[o];)a+=t[o],o++;if(""===a){const t=e[e.length-1];t?t.type="array":e.push({name:"",type:"array"})}else{const t=Number.parseInt(a,10);Number.isNaN(t)||a!==String(t)?e.push({name:a,type:"key"}):e.push({name:String(t),type:"numeric",index:t})}o++}else n+=a,o++}return n&&e.push({name:n,type:"key"}),e},xt=t=>"object"==typeof t&&null!==t&&!Array.isArray(t),vt={packFormToJSON:bt},wt=function(n,o=document){let s;if("string"==typeof o)o=document.querySelector(o);else if(wt.isAPXObject(o))o=o.first();else if(!(o instanceof HTMLElement||o instanceof Document))throw new Error("Invalid context for APX");if("string"==typeof n&&n.startsWith("//")){s=document.evaluate(n,o,null,XPathResult.ANY_TYPE,null);let t=[],e=s.iterateNext();for(;e;)t.push(e),e=s.iterateNext();s=t}else if("string"==typeof n)s=o.querySelectorAll(n);else if(n instanceof HTMLElement)s=o.contains(n)?[n]:[];else if(n instanceof NodeList||n instanceof HTMLCollection)s=Array.from(n).filter((t=>o.contains(t)));else if(Array.isArray(n)&&n.every((t=>t instanceof HTMLElement)))s=n.filter((t=>o.contains(t)));else if("undefined"!=typeof jQuery&&n instanceof jQuery)s=Array.from(n.get()).filter((t=>o.contains(t)));else{if("function"!=typeof n)throw new Error("Invalid input type for APX");s=wt(n(),o)}var r={elements:s,_isAPXObject:!0};return r.length=s.length,r.each=function(t){return this.elements instanceof Array&&this.elements.forEach(t),this.elements instanceof NodeList&&Array.from(this.elements).forEach(t),this},r.get=function(t){return this.elements[t]},r.all=function(){return this.elements instanceof Array?this.elements:this.elements instanceof NodeList?Array.from(this.elements):this},r.first=function(){return this.get(0)},function(n){let o=n.elements;n.listen=function(n,s,r){let i,l={};"string"==typeof s?(i=s,l=r||{}):l=s||{};const c=function(){const e=Math.random().toString(36).substr(2,9),n=`${Date.now()}_${e}_${t}`;return t=(t+1)%1e3,n}(),d=l.timeout||0;return Array.isArray(n)||(n=[n]),n.forEach((t=>{o.forEach((e=>{e.addEventListener(t,(t=>{a(t,c,d,i,e)}))}))})),{do:function(t){return e[c]||(e[c]=[]),e[c].push(t),this}}},n.trigger=function(t){let o;if("string"==typeof t)o=t,t=new Event(t,{bubbles:!0,cancelable:!0});else{if(!(t instanceof Event))return void console.error("Invalid event type provided to apx.trigger. It must be either a string or Event object.");o=t.type}n.elements.forEach((e=>{e.dispatchEvent(t)})),Object.keys(e).forEach((n=>{const s=e[n];if(s&&s.eventType===o){const{selector:e}=s;e&&!t.target.matches(e)||a(t,n,0,e,t.target)}}))}}(r),v(r),function(t){t.scrollableTable=function(e){const n="refresh"===e,o=n?null:e&&"object"==typeof e?e:{};return t.elements.forEach((t=>{if("TABLE"!==t.tagName)return;const e=t,s=e[X];if(s){if(n)Y(e,s.options,s);else if(o&&Object.keys(o).length>0){s.options={...s.options,...o};const t=Y(e,s.options,s);t?.columnWidths&&(s.columnWidths=t.columnWidths),t?.rowHeights&&(s.rowHeights=t.rowHeights)}const t=s.options;return void(t?.bodyHeightDynamic?U(e,t):D(e))}if(n)return;console.log("[APX scrollableTable] create",e);const a=Y(e,o,void 0);e[X]={options:{...o},columnWidths:a?.columnWidths||void 0,rowHeights:a?.rowHeights||void 0},o?.bodyHeightDynamic&&U(e,o)})),t}}(r),function(t){t.pack=function(t){const e=this.first();if(!e)throw new Error("No element found");if("FORM"!==e.tagName)throw new Error("Element is not a form");return bt(e,t)}}(r),r};wt.loadCss=function(t){return fetch(t).then((t=>t.text())).then((t=>{const e=document.createElement("style");e.type="text/css",e.textContent=t,document.head.appendChild(e)})).catch((t=>{console.error("Failed to load CSS:",t)}))},wt.dialog=t=>{const{title:e,content:n,contentURI:o,buttons:s,size:a,showLoadingIndicator:r,contentMethod:i,contentData:l,contentHeaders:c}={title:"",content:"",contentURI:"",buttons:[],size:"medium",showLoadingIndicator:!1,contentMethod:"GET",contentData:null,contentHeaders:void 0,...t},d=document.createElement("div");d.innerHTML='<div class="APX-dialog"> <div class="APX-dialog-content"> <span class="APX-close-dialog">×</span> <h2 class="APX-dialog-title"></h2> <div class="APX-dialog-dynamic-content"></div> <div class="APX-dialog-button-container"></div> </div> </div>'.trim();const p=d.firstChild,u={},f={};["opening","opened","closing","closed","contentLoading","contentLoaded"].forEach((t=>{f[t]=new Promise((e=>{u[t]=e}))}));const h=t=>{u[t]?u[t]():console.warn(`No resolver found for lifecycle event: ${t}`)},g={element:p,buttons:{},isClosed:!1,lifecycle:f,disableButton:t=>{const e=p.querySelector(`.APX-dialog-button[data-key="${t}"]`);e&&(e.disabled=!0,e.classList.add("APX-dialog-button-disabled"))},enableButton:t=>{const e=p.querySelector(`.APX-dialog-button[data-key="${t}"]`);e&&(e.disabled=!1,e.classList.remove("APX-dialog-button-disabled"))},open:async()=>{try{h("opening"),await g.lifecycle.opening,r&&o?(document.body.appendChild(p),p.style.display="flex",p.querySelector(".APX-dialog-dynamic-content").innerHTML='<div class="APX-dialog-loading-indicator"></div>',await b()):(await b(),document.body.appendChild(p),p.style.display="flex"),h("opened"),await g.lifecycle.opened}catch(t){console.error("Error opening dialog:",t)}return g},close:async()=>{try{h("closing"),await g.lifecycle.closing,m(),h("closed"),await g.lifecycle.closed}catch(t){console.error("Error during dialog closing:",t)}return g}},m=()=>{g.isClosed||(g.isClosed=!0,p.style.display="none",document.body.contains(p)&&document.body.removeChild(p))},b=async()=>{const t=document.body.style.cursor;document.body.style.cursor="wait";const e=p.querySelector(".APX-dialog-dynamic-content");try{h("contentLoading"),await g.lifecycle.contentLoading;const t=o?await y(o):n;e.innerHTML=t,h("contentLoaded"),await g.lifecycle.contentLoaded}catch(t){console.error("Error loading content:",t)}finally{document.body.style.cursor=t}},y=async t=>{const e=(i||"GET").toUpperCase(),n={...c||{}},o=Object.keys(n).some((t=>"content-type"===t.toLowerCase())),s={method:e};if("POST"===e){let t;const e="undefined"!=typeof FormData&&l instanceof FormData,a="undefined"!=typeof URLSearchParams&&l instanceof URLSearchParams,r="undefined"!=typeof Blob&&l instanceof Blob,i="string"==typeof l,c=l&&"object"==typeof l&&!e&&!a&&!r;e?t=l:a?(t=l,o||(n["Content-Type"]="application/x-www-form-urlencoded;charset=UTF-8")):c?(t=JSON.stringify(l),o||(n["Content-Type"]="application/json")):(i||r||null!=l)&&(t=l),void 0!==t&&(s.body=t)}Object.keys(n).length>0&&(s.headers=n);const a=await fetch(t,s);if(!a.ok)throw new Error(`Failed to fetch content: ${a.statusText}`);return a.text()};return(()=>{const t=p.querySelector(".APX-dialog-content");if("auto"===a)return;const e={small:{width:"300px",height:"200px"},medium:{width:"500px",height:"400px"},large:{width:"800px",height:"600px"}}[a]||"object"==typeof a&&a;e&&(t.style.minWidth=e.width||"500px",t.style.minHeight=e.height||"400px")})(),(()=>{const t=p.querySelector(".APX-dialog-button-container");s.forEach((({key:e,label:n,order:o=0,align:s="flex-end",closeOnClick:a=!0})=>{const r=document.createElement("button");r.classList.add("APX-dialog-button"),r.textContent=n,r.style.order=o,r.setAttribute("data-key",e);const i={disable:()=>{r.disabled=!0,r.classList.add("APX-dialog-button-disabled")},enable:()=>{r.disabled=!1,r.classList.remove("APX-dialog-button-disabled")},key:e,element:r};if(a){let t=!1;const n=new Promise((e=>{r.onclick=()=>{t||r.disabled||(t=!0,e({dialog:g,button:i}),g.close())}}));g.buttons[e]=n}else{let t=[];const n={then:e=>("function"==typeof e&&t.push(e),n)};r.onclick=()=>{r.disabled||t.forEach((t=>t({dialog:g,button:i})))},g.buttons[e]=n}t.appendChild(r),t.style.justifyContent=s}))})(),p.querySelector(".APX-dialog-title").textContent=e,p.querySelector(".APX-close-dialog").onclick=g.close,g},wt.toast=mt,wt.tools=vt,wt.isAPXObject=function(t){return t&&!0===t._isAPXObject},wt.is_numeric=t=>!isNaN(t-parseFloat(t));const At=wt})();var s=o.Z;export{s as default};
|