@mgdis/mg-components 6.9.0 → 6.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/events.utils-D5SAtkpQ.js +28 -0
- package/dist/cjs/events.utils-D5SAtkpQ.js.map +1 -0
- package/dist/cjs/index-CATFkm3O.js +4 -0
- package/dist/cjs/{index-CTU2m-sy.js → index-CfIlskRh.js} +20 -6
- package/dist/cjs/{index-CTU2m-sy.js.map → index-CfIlskRh.js.map} +1 -1
- package/dist/cjs/index.es-BCLy9yYb.js +250 -0
- package/dist/cjs/index.es-BCLy9yYb.js.map +1 -0
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/mg-action-more_37.cjs.entry.js +382 -373
- package/dist/cjs/mg-action-more_37.cjs.entry.js.map +1 -1
- package/dist/cjs/mg-alert.cjs.entry.js +7 -7
- package/dist/cjs/mg-components.cjs.js +1 -1
- package/dist/cjs/mg-input-combobox.cjs.entry.js +774 -0
- package/dist/cjs/mg-input-combobox.cjs.entry.js.map +1 -0
- package/dist/cjs/mg-input-combobox.entry.cjs.js.map +1 -0
- package/dist/cjs/mg-input-rich-text-editor.cjs.entry.js +16 -14
- package/dist/cjs/mg-input-rich-text-editor.cjs.entry.js.map +1 -1
- package/dist/cjs/mg-input-rich-text-editor.entry.cjs.js.map +1 -1
- package/dist/cjs/mg-loader.cjs.entry.js +5 -5
- package/dist/cjs/mg-progress.cjs.entry.js +11 -11
- package/dist/collection/collection-manifest.json +1 -0
- package/dist/collection/components/atoms/mg-button/mg-button.js +3 -2
- package/dist/collection/components/atoms/mg-button/mg-button.js.map +1 -1
- package/dist/collection/components/atoms/mg-tooltip/mg-tooltip.js +47 -57
- package/dist/collection/components/atoms/mg-tooltip/mg-tooltip.js.map +1 -1
- package/dist/collection/components/molecules/inputs/mg-input-combobox/mg-input-combobox.conf.js +2 -0
- package/dist/collection/components/molecules/inputs/mg-input-combobox/mg-input-combobox.conf.js.map +1 -0
- package/dist/collection/components/molecules/inputs/mg-input-combobox/mg-input-combobox.js +1443 -0
- package/dist/collection/components/molecules/inputs/mg-input-combobox/mg-input-combobox.js.map +1 -0
- package/dist/collection/components/molecules/inputs/mg-input-date/mg-input-date.js +1 -1
- package/dist/collection/components/molecules/inputs/mg-input-numeric/mg-input-numeric.js +2 -2
- package/dist/collection/components/molecules/inputs/mg-input-numeric/mg-input-numeric.js.map +1 -1
- package/dist/collection/components/molecules/inputs/mg-input-password/mg-input-password.js +1 -1
- package/dist/collection/components/molecules/inputs/mg-input-radio/mg-input-radio.js +1 -1
- package/dist/collection/components/molecules/inputs/mg-input-rich-text-editor/editor/editor.scss +1 -0
- package/dist/collection/components/molecules/inputs/mg-input-rich-text-editor/mg-input-rich-text-editor.js +3 -3
- package/dist/collection/components/molecules/inputs/mg-input-rich-text-editor/mg-input-rich-text-editor.js.map +1 -1
- package/dist/collection/components/molecules/inputs/mg-input-select/mg-input-select.js +1 -1
- package/dist/collection/components/molecules/inputs/mg-input-text/mg-input-text.js +1 -1
- package/dist/collection/components/molecules/inputs/mg-input-textarea/mg-input-textarea.js +1 -1
- package/dist/collection/components/molecules/inputs/mg-input-toggle/mg-input-toggle.js +1 -1
- package/dist/collection/components/molecules/menus/mg-menu/mg-menu.js +2 -2
- package/dist/collection/components/molecules/menus/mg-menu/mg-menu.js.map +1 -1
- package/dist/collection/components/molecules/menus/mg-menu-item/mg-menu-item.js +3 -3
- package/dist/collection/components/molecules/menus/mg-menu-item/mg-menu-item.js.map +1 -1
- package/dist/collection/components/molecules/mg-action-more/mg-action-more.js +2 -2
- package/dist/collection/components/molecules/mg-action-more/mg-action-more.js.map +1 -1
- package/dist/collection/components/molecules/mg-alert/mg-alert.js +1 -1
- package/dist/collection/components/molecules/mg-details/mg-details.js +1 -1
- package/dist/collection/components/molecules/mg-form/mg-form.js +1 -1
- package/dist/collection/components/molecules/mg-illustrated-message/mg-illustrated-message.js +1 -1
- package/dist/collection/components/molecules/mg-loader/mg-loader.js +1 -1
- package/dist/collection/components/molecules/mg-message/mg-message.js +2 -2
- package/dist/collection/components/molecules/mg-modal/mg-modal.js +2 -2
- package/dist/collection/components/molecules/mg-pagination/mg-pagination.js +3 -3
- package/dist/collection/components/molecules/mg-panel/mg-panel.js +1 -1
- package/dist/collection/components/molecules/mg-popover/mg-popover-content/mg-popover-content.js +1 -1
- package/dist/collection/components/molecules/mg-popover/mg-popover.js +55 -81
- package/dist/collection/components/molecules/mg-popover/mg-popover.js.map +1 -1
- package/dist/collection/components/molecules/mg-progress/mg-progress.js +1 -1
- package/dist/collection/components/molecules/mg-skip-links/mg-skip-links.js +1 -1
- package/dist/collection/components/molecules/mg-tabs/mg-tabs.js +6 -5
- package/dist/collection/components/molecules/mg-tabs/mg-tabs.js.map +1 -1
- package/dist/collection/locales/en/messages.json +8 -1
- package/dist/collection/locales/fr/messages.json +8 -1
- package/dist/collection/utils/behaviors.utils.js +3 -3
- package/dist/collection/utils/behaviors.utils.js.map +1 -1
- package/dist/collection/utils/events.utils.js +22 -0
- package/dist/collection/utils/events.utils.js.map +1 -0
- package/dist/collection/utils/floating-ui.utils.js +46 -2
- package/dist/collection/utils/floating-ui.utils.js.map +1 -1
- package/dist/components/events.utils.js +26 -0
- package/dist/components/events.utils.js.map +1 -0
- package/dist/components/floating-ui.utils.js +47 -3
- package/dist/components/floating-ui.utils.js.map +1 -1
- package/dist/components/index.es.js +136 -43
- package/dist/components/index.es.js.map +1 -1
- package/dist/components/index2.js +18 -4
- package/dist/components/index2.js.map +1 -1
- package/dist/components/mg-action-more.js +8 -8
- package/dist/components/mg-action-more.js.map +1 -1
- package/dist/components/mg-alert.js +6 -6
- package/dist/components/mg-badge2.js +6 -6
- package/dist/components/mg-button2.js +9 -8
- package/dist/components/mg-button2.js.map +1 -1
- package/dist/components/mg-character-left2.js +4 -4
- package/dist/components/mg-details.js +4 -4
- package/dist/components/mg-details.js.map +1 -1
- package/dist/components/mg-form.js +8 -8
- package/dist/components/mg-icon2.js +6 -6
- package/dist/components/mg-illustrated-message.js +6 -6
- package/dist/components/mg-input-checkbox.js +9 -9
- package/dist/components/mg-input-combobox.d.ts +11 -0
- package/dist/components/mg-input-combobox.js +897 -0
- package/dist/components/mg-input-combobox.js.map +1 -0
- package/dist/components/mg-input-date.js +18 -18
- package/dist/components/mg-input-date.js.map +1 -1
- package/dist/components/mg-input-numeric.js +16 -16
- package/dist/components/mg-input-numeric.js.map +1 -1
- package/dist/components/mg-input-password.js +5 -5
- package/dist/components/mg-input-password.js.map +1 -1
- package/dist/components/mg-input-radio.js +8 -8
- package/dist/components/mg-input-rich-text-editor.js +15 -13
- package/dist/components/mg-input-rich-text-editor.js.map +1 -1
- package/dist/components/mg-input-select2.js +9 -9
- package/dist/components/mg-input-select2.js.map +1 -1
- package/dist/components/mg-input-text2.js +11 -11
- package/dist/components/mg-input-text2.js.map +1 -1
- package/dist/components/mg-input-textarea.js +9 -9
- package/dist/components/mg-input-textarea.js.map +1 -1
- package/dist/components/mg-input-title2.js +4 -4
- package/dist/components/mg-input-toggle.js +7 -7
- package/dist/components/mg-input2.js +8 -8
- package/dist/components/mg-item-more2.js +12 -12
- package/dist/components/mg-item-more2.js.map +1 -1
- package/dist/components/mg-loader.js +1 -70
- package/dist/components/mg-loader.js.map +1 -1
- package/dist/components/mg-loader2.js +75 -0
- package/dist/components/mg-loader2.js.map +1 -0
- package/dist/components/mg-menu-item2.js +13 -13
- package/dist/components/mg-menu-item2.js.map +1 -1
- package/dist/components/mg-message2.js +6 -6
- package/dist/components/mg-modal.js +10 -10
- package/dist/components/mg-pagination2.js +9 -9
- package/dist/components/mg-panel.js +10 -10
- package/dist/components/mg-popover-content2.js +5 -5
- package/dist/components/mg-popover-content2.js.map +1 -1
- package/dist/components/mg-popover2.js +60 -86
- package/dist/components/mg-popover2.js.map +1 -1
- package/dist/components/mg-progress.js +11 -11
- package/dist/components/mg-skip-links.js +3 -3
- package/dist/components/mg-table.js +6 -6
- package/dist/components/mg-tabs.js +18 -17
- package/dist/components/mg-tabs.js.map +1 -1
- package/dist/components/mg-tag.js +4 -4
- package/dist/components/mg-tooltip-content2.js +1 -1
- package/dist/components/mg-tooltip-content2.js.map +1 -1
- package/dist/components/mg-tooltip2.js +56 -66
- package/dist/components/mg-tooltip2.js.map +1 -1
- package/dist/esm/events.utils-yMGqY8YG.js +26 -0
- package/dist/esm/events.utils-yMGqY8YG.js.map +1 -0
- package/dist/esm/index-CAuxALt5.js +4 -0
- package/dist/esm/{index-SQlkEaXW.js → index-DmsGewMC.js} +20 -6
- package/dist/esm/{index-SQlkEaXW.js.map → index-DmsGewMC.js.map} +1 -1
- package/dist/esm/index.es-rLV3KFPd.js +223 -0
- package/dist/esm/index.es-rLV3KFPd.js.map +1 -0
- package/dist/esm/loader.js +1 -1
- package/dist/esm/mg-action-more_37.entry.js +383 -374
- package/dist/esm/mg-action-more_37.entry.js.map +1 -1
- package/dist/esm/mg-alert.entry.js +7 -7
- package/dist/esm/mg-components.js +1 -1
- package/dist/esm/mg-input-combobox.entry.js +772 -0
- package/dist/esm/mg-input-combobox.entry.js.map +1 -0
- package/dist/esm/mg-input-rich-text-editor.entry.js +17 -15
- package/dist/esm/mg-input-rich-text-editor.entry.js.map +1 -1
- package/dist/esm/{mg-input.conf-BtkqaBXm.js → mg-input.conf-CNgv8hc5.js} +3 -3
- package/dist/esm/{mg-input.conf-BtkqaBXm.js.map → mg-input.conf-CNgv8hc5.js.map} +1 -1
- package/dist/esm/mg-loader.entry.js +5 -5
- package/dist/esm/mg-progress.entry.js +11 -11
- package/dist/mg-components/locales/en/messages.json +8 -1
- package/dist/mg-components/locales/fr/messages.json +8 -1
- package/dist/mg-components/mg-components.esm.js +1 -1
- package/dist/mg-components/mg-input-combobox.entry.esm.js.map +1 -0
- package/dist/mg-components/mg-input-rich-text-editor.entry.esm.js.map +1 -1
- package/dist/mg-components/p-0f761c6c.entry.js +2 -0
- package/dist/mg-components/p-0f761c6c.entry.js.map +1 -0
- package/dist/mg-components/{p-650d6986.entry.js → p-73099ed7.entry.js} +3 -3
- package/dist/mg-components/p-73099ed7.entry.js.map +1 -0
- package/dist/mg-components/p-88f77de2.entry.js +2 -0
- package/dist/mg-components/{p-680948e3.entry.js.map → p-88f77de2.entry.js.map} +1 -1
- package/dist/mg-components/p-CNgv8hc5.js +2 -0
- package/dist/mg-components/{p-BtkqaBXm.js.map → p-CNgv8hc5.js.map} +1 -1
- package/dist/mg-components/p-DK9teKTo.js +2 -0
- package/dist/mg-components/{p-CqGbLOnN.js.map → p-DK9teKTo.js.map} +1 -1
- package/dist/mg-components/{p-583b3769.entry.js → p-ad66e7b3.entry.js} +2 -2
- package/dist/mg-components/p-cdbe689e.entry.js +2 -0
- package/dist/mg-components/{p-9acc6504.entry.js.map → p-cdbe689e.entry.js.map} +1 -1
- package/dist/mg-components/p-d3a868f0.entry.js +2 -0
- package/dist/mg-components/p-d3a868f0.entry.js.map +1 -0
- package/dist/mg-components/p-rLV3KFPd.js +2 -0
- package/dist/mg-components/p-rLV3KFPd.js.map +1 -0
- package/dist/mg-components/p-yMGqY8YG.js +2 -0
- package/dist/mg-components/p-yMGqY8YG.js.map +1 -0
- package/dist/types/components/atoms/mg-tooltip/mg-tooltip.d.ts +6 -5
- package/dist/types/components/molecules/inputs/mg-input-combobox/mg-input-combobox.conf.d.ts +24 -0
- package/dist/types/components/molecules/inputs/mg-input-combobox/mg-input-combobox.d.ts +340 -0
- package/dist/types/components/molecules/mg-popover/mg-popover.d.ts +5 -9
- package/dist/types/components.d.ts +247 -2
- package/dist/types/utils/events.utils.d.ts +4 -0
- package/dist/types/utils/floating-ui.utils.d.ts +9 -1
- package/ide/intellij/web-types.json +400 -1
- package/ide/vscode/html-custom-data.json +332 -0
- package/package.json +12 -12
- package/dist/cjs/index.es-jXqiN1uw.js +0 -152
- package/dist/cjs/index.es-jXqiN1uw.js.map +0 -1
- package/dist/esm/index.es-DDBtzymI.js +0 -130
- package/dist/esm/index.es-DDBtzymI.js.map +0 -1
- package/dist/mg-components/p-650d6986.entry.js.map +0 -1
- package/dist/mg-components/p-680948e3.entry.js +0 -2
- package/dist/mg-components/p-9acc6504.entry.js +0 -2
- package/dist/mg-components/p-BtkqaBXm.js +0 -2
- package/dist/mg-components/p-CqGbLOnN.js +0 -2
- package/dist/mg-components/p-DDBtzymI.js +0 -2
- package/dist/mg-components/p-DDBtzymI.js.map +0 -1
- package/dist/mg-components/p-c0fb6f62.entry.js +0 -2
- package/dist/mg-components/p-c0fb6f62.entry.js.map +0 -1
- /package/dist/mg-components/{p-583b3769.entry.js.map → p-ad66e7b3.entry.js.map} +0 -0
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
var t=Object.defineProperty;var e=t=>{throw TypeError(t)};var s=(e,s,r)=>s in e?t(e,s,{enumerable:true,configurable:true,writable:true,value:r}):e[s]=r;var r=(t,e,r)=>s(t,typeof e!="symbol"?e+"":e,r),i=(t,s,r)=>s.has(t)||e("Cannot "+r);var n=(t,e,s)=>(i(t,e,"read from private field"),s?s.call(t):e.get(t)),a=(t,s,r)=>s.has(t)?e("Cannot add the same private member more than once"):s instanceof WeakSet?s.add(t):s.set(t,r),o=(t,e,s,r)=>(i(t,e,"write to private field"),e.set(t,s),s);const u=(t="",e=10)=>{const s=new Uint8Array(e);crypto.getRandomValues(s);const r=Array.from(s).map((t=>t.toString(16).padStart(2,"0"))).join("").slice(0,e);return t!==""?`${t}-${r}`:r},h=t=>v(t)&&/^([a-z][a-z0-9]*)(-[a-z0-9]+)*$/.exec(t)!==null;class l{constructor(t=[]){r(this,"classes");r(this,"add",(t=>{this.has(t)||this.classes.push(t)}));r(this,"delete",(t=>{const e=this.classes.indexOf(t);e>-1&&this.classes.splice(e,1)}));r(this,"has",(t=>this.classes.includes(t)));r(this,"join",(()=>this.classes.join(" ")));this.classes=t}}const c=t=>Array.isArray(t)&&t.every((t=>typeof t=="string")),f=(t,e)=>e.includes(t==null?void 0:t.tagName.toLowerCase()),m='a[href], button, input, textarea, select, details, [tabindex]:not([tabindex="-1"]), [identifier], mg-button',p=t=>{const e=y(t),s=g(t);return[t,...e,...s]},y=(t,e=[])=>{if(t.self!==t.top)try{const s=t.parent;return s?(e.push(s),y(s,e)):e}catch(t){return console.error("Different hosts between iframes:",t),e}return e},g=(t,e=[])=>{if(t.frames.length>0)for(const s of Array.from(t.frames))e.push(s),g(s,e);return e},v=t=>typeof t=="string"&&t.trim()!=="",b=t=>typeof t=="object"?JSON.stringify(t):`${t}`,d=t=>typeof t=="number"&&!Number.isNaN(t),w=t=>typeof t=="string"?t.toLocaleLowerCase().normalize("NFD").replaceAll(/[\u0300-\u036f]/g,""):t,x=async t=>{if(t)return t()},O=t=>typeof t=="object"&&!Array.isArray(t)&&t!==null,I=(t,e,s)=>{const r=".";if(!O(t)||typeof e!="string")return s;const[i,...n]=e.split(r);return n.length?I(t[i],n.join(r)):t[i]},N={FIRST:"first",NEXT:"next",PREVIOUS:"previous",LAST:"last"},S=10;class D{constructor(t){r(this,"items",[]);r(this,"total");r(this,"top",S);r(this,"next");r(this,"baseIndex",1);r(this,"getIndexFromCursor",((t="first",e)=>{if(!Array.isArray(this.items)||!this.items.length)return null;const s=this.items.length-this.baseIndex;let r=0,i=0;if(["previous","next"].includes(t)&&e){const t=this.items.findIndex((t=>JSON.stringify(t)===JSON.stringify(e)));if(t===-1)return 0;i=t}return t==="first"?r=0:t==="last"?r=s:t==="previous"?r=JSON.stringify(this.items[i])===JSON.stringify(this.items[0])?s:i-this.baseIndex:t==="next"&&(r=JSON.stringify(this.items[i])===JSON.stringify(this.items[s])?0:i+this.baseIndex),r}));if(O(t))Array.isArray(t.items)&&(this.items=t.items),typeof t.top=="number"&&(this.top=t.top),this.total=typeof t.total=="number"?t.total:this.items.length,this.next=t.next;else throw new Error("Page - init must match IPage type.")}}var A,F,J;class k{constructor(t,e){r(this,"items",[]);a(this,A,S);a(this,F);a(this,J);r(this,"getPage",((t=0,e)=>{const s=typeof e=="function"?this.items.filter(e):this.items;let r;return n(this,F)?r=n(this,F):s.length>t+n(this,A)&&(r=()=>this.getPage(t+n(this,A),e)),new D({items:s.slice(t,t+n(this,A)),total:n(this,J),top:n(this,A),next:r})}));Array.isArray(t)&&(this.items=t),e&&(["string","function"].includes(typeof e.next)||O(e.next)&&URL.canParse(e.next))&&o(this,F,e.next),typeof(e==null?void 0:e.top)=="number"&&o(this,A,e.top),typeof(e==null?void 0:e.total)=="number"&&o(this,J,e.total)}}A=new WeakMap,F=new WeakMap,J=new WeakMap;var E=Object.defineProperty,j=(t,e)=>{for(var s in e)E(t,s,{get:e[s],enumerable:true})},P={};j(P,{err:()=>U,map:()=>W,ok:()=>T,unwrap:()=>$,unwrapErr:()=>C});var T=t=>({isOk:true,isErr:false,value:t}),U=t=>({isOk:false,isErr:true,value:t});function W(t,e){if(t.isOk){const s=e(t.value);return s instanceof Promise?s.then((t=>T(t))):T(s)}if(t.isErr){const e=t.value;return U(e)}throw"should never get here"}var $=t=>{if(t.isOk)return t.value;throw t.value},C=t=>{if(t.isErr)return t.value;throw t.value};const z=t=>{const e={value:"2023",pattern:"yyyy"},s={value:"12",pattern:"mm"},r={value:"24",pattern:"dd"};return G([e.value,s.value,r.value].join("-"),t,{timeZone:"UTC"}).replace(e.value,e.pattern).replace(s.value,s.pattern).replace(r.value,r.pattern)},L=t=>t.toISOString().split("T")[0],M=(t,e,s)=>{const r=t.closest("[lang]"),i=Intl.NumberFormat.supportedLocalesOf(r==null?void 0:r.lang),n=i.length>0&&typeof i[0]=="string"?i[0]:navigator.language||s,a=n.split("-").shift();return Object.keys(e).length===0?{locale:n,messages:{lang:s}}:{locale:n,messages:e[a]||e[s]||{lang:s}}},R=(t,e,s)=>new Intl.NumberFormat(e,{style:"currency",currency:s}).format(t),X=(t,e,s=0)=>new Intl.NumberFormat(e,{minimumFractionDigits:s}).format(Number(t)),Z=(t,e,s=0)=>new Intl.NumberFormat(e,{style:"percent",minimumFractionDigits:s,maximumFractionDigits:s}).format(t),q=(t,e,s,r="short",i=0)=>new Intl.NumberFormat(e,{style:"unit",unit:s,unitDisplay:r,minimumFractionDigits:i,maximumFractionDigits:i}).format(t),B=/^\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12]\d|3[01])$/,G=(t,e,s)=>typeof t!="string"||t===""||!B.test(t)?"":new Intl.DateTimeFormat(e,s).format(new Date(t)),H=(t,e)=>s=>M(s,t,e);export{p as B,c as D,G as F,b as G,D as H,w as J,N as K,B as L,u as P,h as U,d as W,x as X,k as Y,l as Z,v as a,f as b,L as c,z as d,Z as e,q as f,m as g,O as i,X as l,R as o,I as q,H as u};
|
|
2
|
+
//# sourceMappingURL=p-rLV3KFPd.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"p-rLV3KFPd.js","sources":["../stencil-helpers/dist/index.es.js"],"sourcesContent":["var Ue = Object.defineProperty;\nvar fe = (e) => {\n throw TypeError(e);\n};\nvar Ze = (e, t, r) => t in e ? Ue(e, t, { enumerable: !0, configurable: !0, writable: !0, value: r }) : e[t] = r;\nvar $ = (e, t, r) => Ze(e, typeof t != \"symbol\" ? t + \"\" : t, r), ue = (e, t, r) => t.has(e) || fe(\"Cannot \" + r);\nvar v = (e, t, r) => (ue(e, t, \"read from private field\"), r ? r.call(e) : t.get(e)), j = (e, t, r) => t.has(e) ? fe(\"Cannot add the same private member more than once\") : t instanceof WeakSet ? t.add(e) : t.set(e, r), U = (e, t, r, s) => (ue(e, t, \"write to private field\"), s ? s.call(e, r) : t.set(e, r), r);\nconst Pt = (e = \"\", t = 10) => {\n const r = new Uint8Array(t);\n crypto.getRandomValues(r);\n const s = Array.from(r).map((n) => n.toString(16).padStart(2, \"0\")).join(\"\").slice(0, t);\n return e !== \"\" ? `${e}-${s}` : s;\n}, Ut = (e) => De(e) && /^([a-z][a-z0-9]*)(-[a-z0-9]+)*$/.exec(e) !== null;\nclass Zt {\n constructor(t = []) {\n /**\n * Available classes\n */\n $(this, \"classes\");\n /**\n * Add class\n * @param className - class name to add\n */\n $(this, \"add\", (t) => {\n this.has(t) || this.classes.push(t);\n });\n /**\n * Delete class\n * @param className - class name to delete\n */\n $(this, \"delete\", (t) => {\n const r = this.classes.indexOf(t);\n r > -1 && this.classes.splice(r, 1);\n });\n /**\n * Check if class exist in list\n * @param className - class name to check\n * @returns class name is in the list\n */\n $(this, \"has\", (t) => this.classes.includes(t));\n /**\n * Join classes seperated by spaces\n * @returns joined values\n */\n $(this, \"join\", () => this.classes.join(\" \"));\n this.classes = t;\n }\n}\nconst Dt = (e) => Array.isArray(e) && e.every((t) => typeof t == \"string\"), qt = (e, t) => t.includes(e == null ? void 0 : e.tagName.toLowerCase()), Ht = 'a[href], button, input, textarea, select, details, [tabindex]:not([tabindex=\"-1\"]), [identifier], mg-button', Bt = (e) => {\n const t = _e(e), r = ve(e);\n return [e, ...t, ...r];\n}, _e = (e, t = []) => {\n if (e.self !== e.top)\n try {\n const r = e.parent;\n return r ? (t.push(r), _e(r, t)) : t;\n } catch (r) {\n return console.error(\"Different hosts between iframes:\", r), t;\n }\n return t;\n}, ve = (e, t = []) => {\n if (e.frames.length > 0)\n for (const r of Array.from(e.frames))\n t.push(r), ve(r, t);\n return t;\n}, De = (e) => typeof e == \"string\" && e.trim() !== \"\", Gt = (e) => typeof e == \"object\" ? JSON.stringify(e) : `${e}`, Wt = (e) => typeof e == \"number\" && !Number.isNaN(e), Jt = (e) => typeof e == \"string\" ? e.toLocaleLowerCase().normalize(\"NFD\").replaceAll(/[\\u0300-\\u036f]/g, \"\") : e, Xt = async (e) => {\n if (e) return e();\n}, ie = (e) => typeof e == \"object\" && !Array.isArray(e) && e !== null, qe = (e, t, r) => {\n const s = \".\";\n if (!ie(e) || typeof t != \"string\")\n return r;\n const [n, ...i] = t.split(s);\n return i.length ? qe(e[n], i.join(s)) : e[n];\n}, Kt = {\n FIRST: \"first\",\n NEXT: \"next\",\n PREVIOUS: \"previous\",\n LAST: \"last\"\n}, we = 10;\nclass He {\n constructor(t) {\n /**\n * Define items\n */\n $(this, \"items\", []);\n /**\n * Define total\n */\n $(this, \"total\");\n /**\n * Define top\n */\n $(this, \"top\", we);\n /**\n * Define next\n */\n $(this, \"next\");\n /**\n * Define base index\n */\n $(this, \"baseIndex\", 1);\n /**\n * Get index of items from cursor\n * @param cursor - cursor to find\n * @param oldItem - previous item\n * @returns item index\n */\n $(this, \"getIndexFromCursor\", (t = \"first\", r) => {\n if (!Array.isArray(this.items) || !this.items.length) return null;\n const n = this.items.length - this.baseIndex;\n let i = 0, a = 0;\n if ([\"previous\", \"next\"].includes(t) && r) {\n const c = this.items.findIndex((l) => JSON.stringify(l) === JSON.stringify(r));\n if (c === -1) return 0;\n a = c;\n }\n return t === \"first\" ? i = 0 : t === \"last\" ? i = n : t === \"previous\" ? i = JSON.stringify(this.items[a]) === JSON.stringify(this.items[0]) ? n : a - this.baseIndex : t === \"next\" && (i = JSON.stringify(this.items[a]) === JSON.stringify(this.items[n]) ? 0 : a + this.baseIndex), i;\n });\n if (ie(t))\n Array.isArray(t.items) && (this.items = t.items), typeof t.top == \"number\" && (this.top = t.top), this.total = typeof t.total == \"number\" ? t.total : this.items.length, this.next = t.next;\n else\n throw new Error(\"Page - init must match IPage type.\");\n }\n}\nvar S, N, M;\nclass Yt {\n constructor(t, r) {\n /**\n * Define paginated items\n */\n $(this, \"items\", []);\n /* Privates */\n j(this, S, we);\n j(this, N);\n j(this, M);\n /**\n * Get page\n * @param offset - pagiantion offset\n * @param filter - filter methode\n * @returns formated page\n */\n $(this, \"getPage\", (t = 0, r) => {\n const s = typeof r == \"function\" ? this.items.filter(r) : this.items;\n let n;\n return v(this, N) ? n = v(this, N) : s.length > t + v(this, S) && (n = () => this.getPage(t + v(this, S), r)), new He({\n items: s.slice(t, t + v(this, S)),\n total: v(this, M),\n top: v(this, S),\n next: n\n });\n });\n Array.isArray(t) && (this.items = t), r && ([\"string\", \"function\"].includes(typeof r.next) || ie(r.next) && URL.canParse(r.next)) && U(this, N, r.next), typeof (r == null ? void 0 : r.top) == \"number\" && U(this, S, r.top), typeof (r == null ? void 0 : r.total) == \"number\" && U(this, M, r.total);\n }\n}\nS = new WeakMap(), N = new WeakMap(), M = new WeakMap();\nvar K = {\n updatable: !0,\n slotRelocation: !0,\n // TODO(STENCIL-914): remove this option when `experimentalSlotFixes` is the default behavior\n experimentalSlotFixes: !1\n}, Be = Object.defineProperty, Ge = (e, t) => {\n for (var r in t)\n Be(e, r, { get: t[r], enumerable: !0 });\n}, We = \"http://www.w3.org/2000/svg\", Je = \"http://www.w3.org/1999/xhtml\", pe = (e, t) => t in e, ge = \"http://www.w3.org/1999/xlink\", O = typeof window < \"u\" ? window : {}, z = {\n $flags$: 0,\n $resourcesUrl$: \"\",\n jmp: (e) => e(),\n raf: (e) => requestAnimationFrame(e),\n ael: (e, t, r, s) => e.addEventListener(t, r, s),\n rel: (e, t, r, s) => e.removeEventListener(t, r, s),\n ce: (e, t) => new CustomEvent(e, t)\n}, Xe = (e) => e != null && e !== void 0, xe = (e) => (e = typeof e, e === \"object\" || e === \"function\"), Ke = {};\nGe(Ke, {\n err: () => me,\n map: () => Ye,\n ok: () => V,\n unwrap: () => Qe,\n unwrapErr: () => Ve\n});\nvar V = (e) => ({\n isOk: !0,\n isErr: !1,\n value: e\n}), me = (e) => ({\n isOk: !1,\n isErr: !0,\n value: e\n});\nfunction Ye(e, t) {\n if (e.isOk) {\n const r = t(e.value);\n return r instanceof Promise ? r.then((s) => V(s)) : V(r);\n }\n if (e.isErr) {\n const r = e.value;\n return me(r);\n }\n throw \"should never get here\";\n}\nvar Qe = (e) => {\n if (e.isOk)\n return e.value;\n throw e.value;\n}, Ve = (e) => {\n if (e.isErr)\n return e.value;\n throw e.value;\n}, Se = (e) => {\n const t = de(e, \"childNodes\");\n e.tagName && e.tagName.includes(\"-\") && e[\"s-cr\"] && e.tagName !== \"SLOT-FB\" && Ee(t, e.tagName).forEach((s) => {\n s.nodeType === 1 && s.tagName === \"SLOT-FB\" && (tt(s, ae(s), !1).length ? s.hidden = !0 : s.hidden = !1);\n });\n let r = 0;\n for (r = 0; r < t.length; r++) {\n const s = t[r];\n s.nodeType === 1 && de(s, \"childNodes\").length && Se(s);\n }\n}, et = (e) => {\n const t = [];\n for (let r = 0; r < e.length; r++) {\n const s = e[r][\"s-nr\"] || void 0;\n s && s.isConnected && t.push(s);\n }\n return t;\n};\nfunction Ee(e, t, r) {\n let s = 0, n = [], i;\n for (; s < e.length; s++)\n i = e[s], i[\"s-sr\"] && (!t || i[\"s-hn\"] === t) && r === void 0 && n.push(i), n = [...n, ...Ee(i.childNodes, t, r)];\n return n;\n}\nvar tt = (e, t, r = !0) => {\n const s = [];\n (r && e[\"s-sr\"] || !e[\"s-sr\"]) && s.push(e);\n let n = e;\n for (; n = n.nextSibling; )\n ae(n) === t && (r || !n[\"s-sr\"]) && s.push(n);\n return s;\n}, $e = (e, t) => e.nodeType === 1 ? e.getAttribute(\"slot\") === null && t === \"\" || e.getAttribute(\"slot\") === t : e[\"s-sn\"] === t ? !0 : t === \"\", ae = (e) => typeof e[\"s-sn\"] == \"string\" ? e[\"s-sn\"] : e.nodeType === 1 && e.getAttribute(\"slot\") || void 0;\nfunction rt(e) {\n if (e.assignedElements || e.assignedNodes || !e[\"s-sr\"]) return;\n const t = (r) => (function(s) {\n const n = [], i = this[\"s-sn\"];\n s != null && s.flatten && console.error(`\n Flattening is not supported for Stencil non-shadow slots. \n You can use \\`.childNodes\\` to nested slot fallback content.\n If you have a particular use case, please open an issue on the Stencil repo.\n `);\n const a = this[\"s-cr\"].parentElement;\n return (a.__childNodes ? a.childNodes : et(a.childNodes)).forEach((l) => {\n i === ae(l) && n.push(l);\n }), r ? n.filter(\n (l) => l.nodeType === 1\n /* ElementNode */\n ) : n;\n }).bind(e);\n e.assignedElements = t(!0), e.assignedNodes = t(!1);\n}\nfunction de(e, t) {\n if (\"__\" + t in e) {\n const r = e[\"__\" + t];\n return typeof r != \"function\" ? r : r.bind(e);\n } else\n return typeof e[t] != \"function\" ? e[t] : e[t].bind(e);\n}\nvar st = (e, t, ...r) => {\n let s = null, n = null, i = null, a = !1, c = !1;\n const l = [], f = (o) => {\n for (let g = 0; g < o.length; g++)\n s = o[g], Array.isArray(s) ? f(s) : s != null && typeof s != \"boolean\" && ((a = !xe(s)) && (s = String(s)), a && c ? l[l.length - 1].$text$ += s : l.push(a ? ee(null, s) : s), c = a);\n };\n f(r);\n const p = ee(e, null);\n return p.$attrs$ = t, l.length > 0 && (p.$children$ = l), p.$key$ = n, p.$name$ = i, p;\n}, ee = (e, t) => {\n const r = {\n $flags$: 0,\n $tag$: e,\n $text$: t,\n $elm$: null,\n $children$: null\n };\n return r.$attrs$ = null, r.$key$ = null, r.$name$ = null, r;\n}, nt = {}, it = (e) => e && e.$tag$ === nt, ye = (e, t, r, s, n, i, a) => {\n if (r === s)\n return;\n let c = pe(e, t), l = t.toLowerCase();\n if (t === \"class\") {\n const f = e.classList, p = he(r);\n let o = he(s);\n f.remove(...p.filter((g) => g && !o.includes(g))), f.add(...o.filter((g) => g && !p.includes(g)));\n } else if (t === \"style\") {\n for (const f in r)\n (!s || s[f] == null) && (f.includes(\"-\") ? e.style.removeProperty(f) : e.style[f] = \"\");\n for (const f in s)\n (!r || s[f] !== r[f]) && (f.includes(\"-\") ? e.style.setProperty(f, s[f]) : e.style[f] = s[f]);\n } else if (t !== \"key\") if (t === \"ref\")\n s && s(e);\n else if (!e.__lookupSetter__(t) && t[0] === \"o\" && t[1] === \"n\") {\n if (t[2] === \"-\" ? t = t.slice(3) : pe(O, l) ? t = l.slice(2) : t = l[2] + t.slice(3), r || s) {\n const f = t.endsWith(Oe);\n t = t.replace(ot, \"\"), r && z.rel(e, t, r, f), s && z.ael(e, t, s, f);\n }\n } else {\n const f = xe(s);\n if ((c || f && s !== null) && !n)\n try {\n if (e.tagName.includes(\"-\"))\n e[t] !== s && (e[t] = s);\n else {\n const o = s ?? \"\";\n t === \"list\" ? c = !1 : (r == null || e[t] != o) && (typeof e.__lookupSetter__(t) == \"function\" ? e[t] = o : e.setAttribute(t, o));\n }\n } catch {\n }\n let p = !1;\n l !== (l = l.replace(/^xlink\\:?/, \"\")) && (t = l, p = !0), s == null || s === !1 ? (s !== !1 || e.getAttribute(t) === \"\") && (p ? e.removeAttributeNS(ge, t) : e.removeAttribute(t)) : (!c || i & 4 || n) && !f && e.nodeType === 1 && (s = s === !0 ? \"\" : s, p ? e.setAttributeNS(ge, t, s) : e.setAttribute(t, s));\n }\n}, at = /\\s/, he = (e) => (typeof e == \"object\" && e && \"baseVal\" in e && (e = e.baseVal), !e || typeof e != \"string\" ? [] : e.split(at)), Oe = \"Capture\", ot = new RegExp(Oe + \"$\"), te = (e, t, r, s) => {\n const n = t.$elm$.nodeType === 11 && t.$elm$.host ? t.$elm$.host : t.$elm$, i = e && e.$attrs$ || {}, a = t.$attrs$ || {};\n for (const c of be(Object.keys(i)))\n c in a || ye(\n n,\n c,\n i[c],\n void 0,\n r,\n t.$flags$\n );\n for (const c of be(Object.keys(a)))\n ye(\n n,\n c,\n i[c],\n a[c],\n r,\n t.$flags$\n );\n};\nfunction be(e) {\n return e.includes(\"ref\") ? (\n // we need to sort these to ensure that `'ref'` is the last attr\n [...e.filter((t) => t !== \"ref\"), \"ref\"]\n ) : (\n // no need to sort, return the original array\n e\n );\n}\nvar D, B, I, re = !1, G = !1, oe = !1, b = !1, W = (e, t, r) => {\n var s;\n const n = t.$children$[r];\n let i = 0, a, c, l;\n if (re || (oe = !0, n.$tag$ === \"slot\" && (n.$flags$ |= n.$children$ ? (\n // slot element has fallback content\n // still create an element that \"mocks\" the slot element\n 2\n ) : (\n // slot element does not have fallback content\n // create an html comment we'll use to always reference\n // where actual slot content should sit next to\n 1\n ))), n.$text$ !== null)\n a = n.$elm$ = O.document.createTextNode(n.$text$);\n else if (n.$flags$ & 1)\n a = n.$elm$ = O.document.createTextNode(\"\"), te(null, n, b);\n else {\n if (b || (b = n.$tag$ === \"svg\"), !O.document)\n throw new Error(\n \"You are trying to render a Stencil component in an environment that doesn't support the DOM. Make sure to populate the [`window`](https://developer.mozilla.org/en-US/docs/Web/API/Window/window) object before rendering a component.\"\n );\n if (a = n.$elm$ = O.document.createElementNS(\n b ? We : Je,\n !re && K.slotRelocation && n.$flags$ & 2 ? \"slot-fb\" : n.$tag$\n ), b && n.$tag$ === \"foreignObject\" && (b = !1), te(null, n, b), Xe(D) && a[\"s-si\"] !== D && a.classList.add(a[\"s-si\"] = D), n.$children$)\n for (i = 0; i < n.$children$.length; ++i)\n c = W(e, n, i), c && a.appendChild(c);\n n.$tag$ === \"svg\" ? b = !1 : a.tagName === \"foreignObject\" && (b = !0);\n }\n return a[\"s-hn\"] = I, n.$flags$ & 3 && (a[\"s-sr\"] = !0, a[\"s-cr\"] = B, a[\"s-sn\"] = n.$name$ || \"\", a[\"s-rf\"] = (s = n.$attrs$) == null ? void 0 : s.ref, rt(a), l = e && e.$children$ && e.$children$[r], l && l.$tag$ === n.$tag$ && e.$elm$ && L(e.$elm$, !1), Re(B, a, t.$elm$, e == null ? void 0 : e.$elm$)), a;\n}, L = (e, t) => {\n z.$flags$ |= 1;\n const r = Array.from(e.__childNodes || e.childNodes);\n e[\"s-sr\"] && K.experimentalSlotFixes;\n for (let s = r.length - 1; s >= 0; s--) {\n const n = r[s];\n n[\"s-hn\"] !== I && n[\"s-ol\"] && (T(F(n).parentNode, n, F(n)), n[\"s-ol\"].remove(), n[\"s-ol\"] = void 0, n[\"s-sh\"] = void 0, oe = !0), t && L(n, t);\n }\n z.$flags$ &= -2;\n}, Ae = (e, t, r, s, n, i) => {\n let a = e[\"s-cr\"] && e[\"s-cr\"].parentNode || e, c;\n for (a.shadowRoot && a.tagName === I && (a = a.shadowRoot); n <= i; ++n)\n s[n] && (c = W(null, r, n), c && (s[n].$elm$ = c, T(a, c, F(t))));\n}, ke = (e, t, r) => {\n for (let s = t; s <= r; ++s) {\n const n = e[s];\n if (n) {\n const i = n.$elm$;\n je(n), i && (G = !0, i[\"s-ol\"] ? i[\"s-ol\"].remove() : L(i, !0), i.remove());\n }\n }\n}, lt = (e, t, r, s, n = !1) => {\n let i = 0, a = 0, c = 0, l = 0, f = t.length - 1, p = t[0], o = t[f], g = s.length - 1, u = s[0], d = s[g], h, _;\n for (; i <= f && a <= g; )\n if (p == null)\n p = t[++i];\n else if (o == null)\n o = t[--f];\n else if (u == null)\n u = s[++a];\n else if (d == null)\n d = s[--g];\n else if (Z(p, u, n))\n R(p, u, n), p = t[++i], u = s[++a];\n else if (Z(o, d, n))\n R(o, d, n), o = t[--f], d = s[--g];\n else if (Z(p, d, n))\n (p.$tag$ === \"slot\" || d.$tag$ === \"slot\") && L(p.$elm$.parentNode, !1), R(p, d, n), T(e, p.$elm$, o.$elm$.nextSibling), p = t[++i], d = s[--g];\n else if (Z(o, u, n))\n (p.$tag$ === \"slot\" || d.$tag$ === \"slot\") && L(o.$elm$.parentNode, !1), R(o, u, n), T(e, o.$elm$, p.$elm$), o = t[--f], u = s[++a];\n else {\n for (c = -1, l = i; l <= f; ++l)\n if (t[l] && t[l].$key$ !== null && t[l].$key$ === u.$key$) {\n c = l;\n break;\n }\n c >= 0 ? (_ = t[c], _.$tag$ !== u.$tag$ ? h = W(t && t[a], r, c) : (R(_, u, n), t[c] = void 0, h = _.$elm$), u = s[++a]) : (h = W(t && t[a], r, a), u = s[++a]), h && T(\n F(p.$elm$).parentNode,\n h,\n F(p.$elm$)\n );\n }\n i > f ? Ae(\n e,\n s[g + 1] == null ? null : s[g + 1].$elm$,\n r,\n s,\n a,\n g\n ) : a > g && ke(t, i, f);\n}, Z = (e, t, r = !1) => e.$tag$ === t.$tag$ ? e.$tag$ === \"slot\" ? e.$name$ === t.$name$ : r ? (r && !e.$key$ && t.$key$ && (e.$key$ = t.$key$), !0) : e.$key$ === t.$key$ : !1, F = (e) => e && e[\"s-ol\"] || e, R = (e, t, r = !1) => {\n const s = t.$elm$ = e.$elm$, n = e.$children$, i = t.$children$, a = t.$tag$, c = t.$text$;\n let l;\n c === null ? (b = a === \"svg\" ? !0 : a === \"foreignObject\" ? !1 : b, te(e, t, b), n !== null && i !== null ? lt(s, n, t, i, r) : i !== null ? (e.$text$ !== null && (s.textContent = \"\"), Ae(s, null, t, i, 0, i.length - 1)) : (\n // don't do this on initial render as it can cause non-hydrated content to be removed\n !r && K.updatable && n !== null && ke(n, 0, n.length - 1)\n ), b && a === \"svg\" && (b = !1)) : (l = s[\"s-cr\"]) ? l.parentNode.textContent = c : e.$text$ !== c && (s.data = c);\n}, x = [], Te = (e) => {\n let t, r, s;\n const n = e.__childNodes || e.childNodes;\n for (const i of n) {\n if (i[\"s-sr\"] && (t = i[\"s-cr\"]) && t.parentNode) {\n r = t.parentNode.__childNodes || t.parentNode.childNodes;\n const a = i[\"s-sn\"];\n for (s = r.length - 1; s >= 0; s--)\n if (t = r[s], !t[\"s-cn\"] && !t[\"s-nr\"] && t[\"s-hn\"] !== i[\"s-hn\"])\n if ($e(t, a)) {\n let c = x.find((l) => l.$nodeToRelocate$ === t);\n G = !0, t[\"s-sn\"] = t[\"s-sn\"] || a, c ? (c.$nodeToRelocate$[\"s-sh\"] = i[\"s-hn\"], c.$slotRefNode$ = i) : (t[\"s-sh\"] = i[\"s-hn\"], x.push({\n $slotRefNode$: i,\n $nodeToRelocate$: t\n })), t[\"s-sr\"] && x.map((l) => {\n $e(l.$nodeToRelocate$, t[\"s-sn\"]) && (c = x.find((f) => f.$nodeToRelocate$ === t), c && !l.$slotRefNode$ && (l.$slotRefNode$ = c.$slotRefNode$));\n });\n } else x.some((c) => c.$nodeToRelocate$ === t) || x.push({\n $nodeToRelocate$: t\n });\n }\n i.nodeType === 1 && Te(i);\n }\n}, je = (e) => {\n e.$attrs$ && e.$attrs$.ref && e.$attrs$.ref(null), e.$children$ && e.$children$.map(je);\n}, T = (e, t, r) => (typeof t[\"s-sn\"] == \"string\" && t[\"s-sr\"] && t[\"s-cr\"] && Re(t[\"s-cr\"], t, e, t.parentElement), e == null ? void 0 : e.insertBefore(t, r));\nfunction Re(e, t, r, s) {\n var n, i;\n let a;\n if (e && typeof t[\"s-sn\"] == \"string\" && t[\"s-sr\"] && e.parentNode && e.parentNode[\"s-sc\"] && (a = t[\"s-si\"] || e.parentNode[\"s-sc\"])) {\n const c = t[\"s-sn\"], l = t[\"s-hn\"];\n if ((n = r.classList) == null || n.add(a + \"-s\"), s && ((i = s.classList) != null && i.contains(a + \"-s\"))) {\n let f = (s.__childNodes || s.childNodes)[0], p = !1;\n for (; f; ) {\n if (f[\"s-sn\"] !== c && f[\"s-hn\"] === l && f[\"s-sr\"]) {\n p = !0;\n break;\n }\n f = f.nextSibling;\n }\n p || s.classList.remove(a + \"-s\");\n }\n }\n}\nvar ct = (e, t, r = !1) => {\n var s, n, i, a, c;\n const l = e.$hostElement$, f = e.$cmpMeta$, p = e.$vnode$ || ee(null, null), o = it(t) ? t : st(null, null, t);\n if (I = l.tagName, f.$attrsToReflect$ && (o.$attrs$ = o.$attrs$ || {}, f.$attrsToReflect$.map(\n ([g, u]) => o.$attrs$[u] = l[g]\n )), r && o.$attrs$)\n for (const g of Object.keys(o.$attrs$))\n l.hasAttribute(g) && ![\"key\", \"ref\", \"style\", \"class\"].includes(g) && (o.$attrs$[g] = l[g]);\n o.$tag$ = null, o.$flags$ |= 4, e.$vnode$ = o, o.$elm$ = p.$elm$ = l.shadowRoot || l, D = l[\"s-sc\"], re = !!(f.$flags$ & 1) && !(f.$flags$ & 128), B = l[\"s-cr\"], G = !1, R(p, o, r);\n {\n if (z.$flags$ |= 1, oe) {\n Te(o.$elm$);\n for (const g of x) {\n const u = g.$nodeToRelocate$;\n if (!u[\"s-ol\"] && O.document) {\n const d = O.document.createTextNode(\"\");\n d[\"s-nr\"] = u, T(u.parentNode, u[\"s-ol\"] = d, u);\n }\n }\n for (const g of x) {\n const u = g.$nodeToRelocate$, d = g.$slotRefNode$;\n if (d) {\n const h = d.parentNode;\n let _ = d.nextSibling;\n {\n let E = (s = u[\"s-ol\"]) == null ? void 0 : s.previousSibling;\n for (; E; ) {\n let y = (n = E[\"s-nr\"]) != null ? n : null;\n if (y && y[\"s-sn\"] === u[\"s-sn\"] && h === (y.__parentNode || y.parentNode)) {\n for (y = y.nextSibling; y === u || y != null && y[\"s-sr\"]; )\n y = y == null ? void 0 : y.nextSibling;\n if (!y || !y[\"s-nr\"]) {\n _ = y;\n break;\n }\n }\n E = E.previousSibling;\n }\n }\n const C = u.__parentNode || u.parentNode, P = u.__nextSibling || u.nextSibling;\n (!_ && h !== C || P !== _) && u !== _ && (!u[\"s-hn\"] && u[\"s-ol\"] && (u[\"s-hn\"] = u[\"s-ol\"].parentNode.nodeName), T(h, u, _), u.nodeType === 1 && u.tagName !== \"SLOT-FB\" && (u.hidden = (i = u[\"s-ih\"]) != null ? i : !1)), u && typeof d[\"s-rf\"] == \"function\" && d[\"s-rf\"](d);\n } else\n u.nodeType === 1 && (r && (u[\"s-ih\"] = (a = u.hidden) != null ? a : !1), u.hidden = !0);\n }\n }\n G && Se(o.$elm$), z.$flags$ &= -2, x.length = 0;\n }\n if (K.experimentalScopedSlotChanges && f.$flags$ & 2) {\n const g = o.$elm$.__childNodes || o.$elm$.childNodes;\n for (const u of g)\n u[\"s-hn\"] !== I && !u[\"s-sh\"] && (r && u[\"s-ih\"] == null && (u[\"s-ih\"] = (c = u.hidden) != null ? c : !1), u.hidden = !0);\n }\n B = void 0;\n};\nconst q = {\n content_wrap: 0,\n ignore: [],\n ignore_with: \"_!i-£___£%_\",\n strict: !1,\n tab_size: 2,\n tag_wrap: 0,\n tag_wrap_width: 80,\n trim: []\n}, m = \"__!i-£___£%__\", w = \"!i-£___£%_\", Ne = [\n \"area\",\n \"base\",\n \"br\",\n \"col\",\n \"embed\",\n \"hr\",\n \"img\",\n \"input\",\n \"link\",\n \"meta\",\n \"param\",\n \"source\",\n \"track\",\n \"wbr\"\n], le = (e) => /<(?:[A-Za-z]+[A-Za-z0-9]*)(?:\\s+.*?)*?\\/{0,1}>/.test(e) || /<(?<Element>(?:[A-Za-z]+[A-Za-z0-9]*:)?(?:[A-Za-z]+[A-Za-z0-9]*))(?:\\s+.*?)*?>(?:.|\\n)*?<\\/{1}\\k<Element>>/.test(e) || /<(?<Element>(?:[a-z][a-z0-9._]*:)?[a-z][a-z0-9._]*-[a-z0-9._-]+)(?:\\s+.*?)*?>(?:.|\\n)*?<\\/{1}\\k<Element>>/.test(e), ze = (e, t) => {\n if (!e || !t)\n throw new Error(\"Both 'current' and 'updates' must be passed-in to mergeObjects()\");\n let r;\n if (Array.isArray(e))\n r = structuredClone(e).concat(t);\n else if (typeof e == \"object\") {\n r = { ...e };\n for (let s of Object.keys(t))\n typeof t[s] != \"object\" ? r[s] = t[s] : r[s] = ze(r[s] || {}, t[s]);\n }\n return r;\n}, ft = (e, t) => ze(structuredClone(e), t), ut = (e) => (e = e.replace(/<[\\w:\\-]+([^>]*[^\\/])>/g, (t, r) => t.replace(r, (s) => s.replace(/\\n/g, w + \"nl!\").replace(/\\r/g, w + \"cr!\").replace(/\\s/g, w + \"ws!\"))), e), pt = (e) => e.replace(/\\n/g, m + \"nl!\").replace(/\\r/g, m + \"cr!\").replace(/\\s/g, m + \"ws!\"), gt = (e) => {\n const t = /\\s*<([a-zA-Z0-9:-]+)[^>]*>\\n\\s*<\\/\\1>(?=\\n[ ]*[^\\n]*__!i-£___£%__[^\\n]*\\n)(\\n[ ]*\\S[^\\n]*\\n)|<([a-zA-Z0-9:-]+)[^>]*>(?=\\n[ ]*[^\\n]*__!i-£___£%__[^\\n]*\\n)(\\n[ ]*\\S[^\\n]*\\n\\s*)<\\/\\3>/g;\n return e.replace(t, (r, s, n, i, a) => {\n const c = n || a;\n if (!c)\n return r;\n const l = c.replace(/\\n/g, m + \"nl!\").replace(/\\r/g, m + \"cr!\").replace(/\\s/g, m + \"ws!\");\n return r.replace(c, l);\n });\n}, $t = (e) => {\n const t = /<([A-Za-z][A-Za-z0-9]*|[a-z][a-z0-9._]*-[a-z0-9._-]+)((?:\\s+[A-Za-z0-9_-]+=\"[^\"]*\"|\\s*[a-z]*)*)>/g;\n return e = e.replace(t, (r, s, n) => r.replace(n, (i) => i.replace(/</g, w + \"lt!\").replace(/>/g, w + \"gt!\"))), e;\n}, dt = (e, t) => {\n const r = t.ignore, s = t.ignore_with;\n for (let n = 0; n < r.length; n++) {\n const i = new RegExp(`<${r[n]}[^>]*>((.|\n)*?)</${r[n]}>`, \"g\");\n e = e.replace(i, (a, c) => a.replace(c, (l) => l.replace(/</g, \"-\" + s + \"lt-\").replace(/>/g, \"-\" + s + \"gt-\").replace(/\\n/g, \"-\" + s + \"nl-\").replace(/\\r/g, \"-\" + s + \"cr-\").replace(/\\s/g, \"-\" + s + \"ws-\")));\n }\n return e;\n}, yt = (e, t) => {\n for (let r = 0; r < t.length; r++) {\n const s = new RegExp(`(<${t[r]}[^>]*>)\\\\s+`, \"g\"), n = new RegExp(`\\\\s+(</${t[r]}>)`, \"g\");\n e = e.replace(s, \"$1\").replace(n, \"$1\");\n }\n return e;\n}, ht = (e) => (e = e.replace(/<[\\w:\\-]+([^>]*[^\\/])>/g, (t, r) => t.replace(r, (s) => s.replace(new RegExp(w + \"nl!\", \"g\"), `\n`).replace(new RegExp(w + \"cr!\", \"g\"), \"\\r\").replace(new RegExp(w + \"ws!\", \"g\"), \" \"))), e), bt = (e) => (e = e.replace(/.*__!i-£___£%__[a-z]{2}!.*/g, (t) => t.replace(/__!i-£___£%__[a-z]{2}!/g, (r) => r.replace(new RegExp(m + \"nl!\", \"g\"), `\n`).replace(new RegExp(m + \"cr!\", \"g\"), \"\\r\").replace(new RegExp(m + \"ws!\", \"g\"), \" \"))), e), _t = (e) => (e = e.replace(/<[\\w:\\-]+([^>]*)>/g, (t, r) => t.replace(r, (s) => s.replace(new RegExp(w + \"lt!\", \"g\"), \"<\").replace(new RegExp(w + \"gt!\", \"g\"), \">\"))), e), vt = (e, t) => {\n const r = t.ignore, s = t.ignore_with;\n for (let n = 0; n < r.length; n++) {\n const i = new RegExp(`<${r[n]}[^>]*>((.|\n)*?)</${r[n]}>`, \"g\");\n e = e.replace(i, (a, c) => a.replace(c, (l) => l.replace(new RegExp(\"-\" + s + \"lt-\", \"g\"), \"<\").replace(new RegExp(\"-\" + s + \"gt-\", \"g\"), \">\").replace(new RegExp(\"-\" + s + \"nl-\", \"g\"), `\n`).replace(new RegExp(\"-\" + s + \"cr-\", \"g\"), \"\\r\").replace(new RegExp(\"-\" + s + \"ws-\", \"g\"), \" \")));\n }\n return e;\n}, wt = (e) => {\n var s, n;\n if (typeof e != \"object\") throw new Error(\"Config must be an object.\");\n if (!(Object.hasOwn(e, \"content_wrap\") || Object.hasOwn(e, \"ignore\") || Object.hasOwn(e, \"ignore_with\") || Object.hasOwn(e, \"strict\") || Object.hasOwn(e, \"tab_size\") || Object.hasOwn(e, \"tag_wrap\") || Object.hasOwn(e, \"tag_wrap_width\") || Object.hasOwn(e, \"trim\"))) return q;\n let r = e.tab_size;\n if (r) {\n if (typeof r != \"number\") throw new Error(`tab_size must be a number, not ${typeof e.tab_size}.`);\n if (!Number.isSafeInteger(r)) throw new Error(`Tab size ${r} is not safe. See https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/isSafeInteger for more info.`);\n if (r = Math.floor(r), r < 1 || r > 16) throw new Error(\"Tab size out of range. Expecting 1 to 16.\");\n e.tab_size = r;\n }\n if (Object.hasOwn(e, \"content_wrap\") && typeof e.content_wrap != \"number\")\n throw new Error(`content_wrap config must be a number, not ${typeof e.tag_wrap_width}.`);\n if (Object.hasOwn(e, \"ignore\") && (!Array.isArray(e.ignore) || !((s = e.ignore) != null && s.every((i) => typeof i == \"string\"))))\n throw new Error(\"Ignore config must be an array of strings.\");\n if (Object.hasOwn(e, \"ignore_with\") && typeof e.ignore_with != \"string\")\n throw new Error(`Ignore_with config must be a string, not ${typeof e.ignore_with}.`);\n if (Object.hasOwn(e, \"strict\") && typeof e.strict != \"boolean\")\n throw new Error(`Strict config must be a boolean, not ${typeof e.strict}.`);\n if (Object.hasOwn(e, \"tag_wrap\") && typeof e.tag_wrap == \"boolean\" && (console.warn(\"tag_wrap as a boolean is deprecated, and will not be supported in v0.9.0+. Use `tag_wrap: <number>` instead; where <number> is the max character width acceptable before wrapping attributes.\"), e.tag_wrap_width ? e.tag_wrap = e.tag_wrap_width : e.tag_wrap = q.tag_wrap_width), Object.hasOwn(e, \"tag_wrap\") && typeof e.tag_wrap != \"number\")\n throw new Error(`tag_wrap config must be a number, not ${typeof e.tag_wrap}.`);\n if (Object.hasOwn(e, \"tag_wrap_width\") && console.warn(\"tag_wrap_width is deprecated, and will not be supported in v0.9.0+. Use `tag_wrap: <number>` instead; where <number> is the max character width acceptable before wrapping attributes.\"), Object.hasOwn(e, \"tag_wrap_width\") && typeof e.tag_wrap_width != \"number\")\n throw new Error(`tag_wrap_width config must be a number, not ${typeof e.tag_wrap_width}.`);\n if (Object.hasOwn(e, \"trim\") && (!Array.isArray(e.trim) || !((n = e.trim) != null && n.every((i) => typeof i == \"string\"))))\n throw new Error(\"Trim config must be an array of strings.\");\n return ft(q, e);\n}, xt = (e, t, r) => {\n const s = e.split(/\\s+/);\n if (s.length === 0)\n return \"\";\n const n = [];\n let i = \"\", a = !0;\n s.forEach((l) => {\n if (l !== \"\")\n if (i === \"\")\n i = l;\n else if (l.length >= t)\n a ? (n.push(i.padStart(i.length)), n.push(l.padStart(l.length)), a = !1) : (n.push(i.padStart(i.length + r)), n.push(l.padStart(l.length + r)));\n else {\n const f = i + \" \" + l;\n f.length <= t ? i = f : (a ? (n.push(i.padStart(i.length)), a = !1) : n.push(i.padStart(i.length + r)), i = l);\n }\n }), i !== \"\" && n.push(i.padStart(i.length + r));\n const c = n.join(`\n`);\n return pt(c);\n}, mt = (e, t = !0) => t && !le(e) ? e : e.replace(/<([a-zA-Z\\-0-9:]+)[^>]*>/g, (r, s) => Ne.indexOf(s) > -1 ? `${r.substring(0, r.length - 1)} />`.replace(/\\/\\s\\//g, \"/\") : r.replace(/[\\s]?\\/>/g, `></${s}>`)), St = (e, t = !1) => (e = e.replace(/<textarea[^>]*>((.|\\n)*?)<\\/textarea>/g, (r, s) => r.replace(s, (n) => n.replace(/</g, \"<\").replace(/>/g, \">\").replace(/\"/g, \""\").replace(/'/g, \"'\").replace(/\\n/g, \" \").replace(/\\r/g, \" \").replace(/\\s/g, \" \"))), t && (e = e.replace(/<textarea[^>]*>((.|\\n)*?)<\\/textarea>/g, (r, s) => (r = r.replace(s, (n) => n.replace(/\\n|\\t/g, \"\").replace(/[a-z]+=\"\\s*\"/ig, \"\").replace(/>\\s+</g, \"><\").replace(/\\s+/g, \" \")), r = r.replace(/\\s+/g, \" \").replace(/\\s>/g, \">\").replace(/>\\s/g, \">\").replace(/\\s</g, \"<\").replace(/class=[\"']\\s/g, (n) => n.replace(/\\s/g, \"\")).replace(/(class=.*)\\s([\"'])/g, \"$1$2\"), r))), e), Et = (e, t = !0) => t && !le(e) ? e : (e = St(e), e.replace(/\\n|\\t/g, \"\").replace(/>\\s+</g, \"><\").replace(/\\s+/g, \" \").replace(/(.+=)\"\\s+\"/ig, '$1\"\"').replace(/(.+=)'\\s+'/ig, \"$1''\").replace(/\\s>/g, \">\").replace(/<\\s\\//g, \"</\").replace(/>\\s/g, \">\").replace(/\\s</g, \"<\").replace(/class=[\"']\\s/g, (r) => r.replace(/\\s/g, \"\")).replace(/(class=.*)\\s([\"'])/g, \"$1$2\"));\nlet H, se;\nconst A = {\n line: []\n}, Ot = (e) => {\n A.line = [];\n let t = -1;\n const r = /(<[^>]+>)|([^<]+)/g;\n return e = e.replace(r, (s, n, i) => (n ? A.line.push({ type: \"tag\", value: s }) : i && i.trim().length > 0 && A.line.push({ type: \"text\", value: s }), t++, `\n[#-# : ${t} : ${s} : #-#]\n`)), e;\n}, At = (e) => (e = mt(e, !1), se.length > 0 && (e = yt(e, se)), e = Et(e, !1), e = Ot(e), e), kt = (e, t) => {\n const r = t.tab_size, s = t.tag_wrap, n = t.content_wrap;\n let i = \"\";\n A.line.forEach((l, f) => {\n e = e.replace(/\\n+/g, `\n`).replace(`[#-# : ${f} : ${l.value} : #-#]`, (p) => {\n var _, C, P;\n let o = 0;\n const g = `[#-# : ${f - 1} : ${(_ = A.line[f - 1]) == null ? void 0 : _.value} : #-#]`, u = /<[A-Za-z]+\\b[^>]*(?:.|\\n)*?\\/?>/g;\n i += \"0\", f === 0 && o++, p.indexOf(`#-# : ${f} : </`) > -1 && o++, g.indexOf(\"<!doctype\") > -1 && o++, g.indexOf(\"<!--\") > -1 && o++, g.indexOf(\"/> : #-#\") > -1 && o++, g.indexOf(`#-# : ${f - 1} : </`) > -1 && o++, ((C = A.line[f - 1]) == null ? void 0 : C.type) === \"text\" && o++;\n const d = i.length - o;\n if (i = i.substring(0, d), H && p.indexOf(\"<!--\") > -1) return \"\";\n let h = p.replace(`[#-# : ${f} : `, \"\").replace(\" : #-#]\", \"\");\n if (((P = A.line[f]) == null ? void 0 : P.type) === \"text\" && n > 0 && h.length >= n && (h = xt(h, n, r * d)), s > 0 && l.value.length > s && u.test(l.value)) {\n const E = /\\s{1}[A-Za-z-]+(?:=\".*?\")?/g, y = l.value.split(E).filter(Boolean), Fe = l.value.matchAll(E), Y = r * d, Me = Y + r;\n let Q = y[0].padStart(y[0].length + Y) + `\n`;\n for (const ce of Fe) {\n const Pe = ce[0].trim().padStart(ce[0].trim().length + Me) + `\n`;\n Q += Pe;\n }\n const Ce = y[1].padStart(\n y[1].trim().length + Y + (H && Ne.includes(y[0].slice(1)) ? 1 : 0)\n );\n return Q += Ce, Q;\n } else\n return h.padStart(h.length + r * d);\n });\n }), s > 0 && (e = ut(e)), n > 0 && /\\n[ ]*[^\\n]*__!i-£___£%__[^\\n]*\\n/.test(e) && (e = gt(e)), e = e.replace(\n /<(?<Element>.+).*>[^<]*?[^><\\/\\s][^<]*?<\\/{1}\\k<Element>|<script[^>]*>\\s+<\\/script>|<(\\w+)>\\s+<\\/(\\w+)|<(?:([\\w:\\._-]+)|([\\w:\\._-]+)[^>]*[^\\/])>\\s+<\\/([\\w:\\._-]+)>/g,\n (l) => l.replace(/\\n|\\t|\\s{2,}/g, \"\")\n ), n > 0 && (e = bt(e)), s > 0 && (e = ht(e)), H && (e = e.replace(/\\s\\/>|\\/>/g, \">\"));\n const a = e.substring(0, 1), c = e.substring(e.length - 1);\n return a === `\n` && (e = e.substring(1, e.length)), c === `\n` && (e = e.substring(0, e.length - 1)), e;\n}, Tt = (e, t) => {\n if (!le(e)) return e;\n const r = t ? wt(t) : q;\n H = r.strict;\n const s = r.ignore.length > 0;\n return se = r.trim, s && (e = dt(e, r)), e = $t(e), e = At(e), e = kt(e, r), e = _t(e), s && (e = vt(e, r)), e;\n}, jt = (e, t, r) => {\n [null, void 0, \"\", !1].includes(r) || [\"innerHTML\", \"style\", \"\"].includes(t) || e.setAttribute(t, [\"object\", \"function\"].includes(typeof r) ? \"⚠️ Property must be set through a script or a framework-specific syntax.\" : r);\n}, Ie = (e, t, r, s, n) => {\n if (t && typeof t == \"string\") {\n const i = document.createElement(t);\n Object.keys(r || {}).forEach((a) => {\n jt(i, a, r[a]);\n }), s == null || s.forEach((a) => {\n Ie(i, a.$tag$, a.$attrs$, a.$children$, a.$text$);\n }), r != null && r.innerHTML && (i.innerHTML = r.innerHTML), e.appendChild(i);\n }\n n && (e.innerHTML = n);\n}, Qt = (e, t, r = []) => {\n const s = {};\n if (typeof e != \"object\")\n throw new Error(\"filterArgs - args isn't an object.\");\n for (const n in e)\n if (!r.includes(n)) {\n const i = e[n], a = n.replace(/([a-z])([A-Z])/g, \"$1-$2\").toLowerCase();\n (!t || !Object.keys(t).includes(n) || t[n] !== i) && (s[a] = i);\n }\n return s;\n}, Vt = (e, t) => {\n var s, n;\n const r = document.getElementById(\"storybook-root\");\n if (r !== null)\n return (n = document.querySelector(\"[lang]\")) == null || n.setAttribute(\"lang\", ((s = t.globals) == null ? void 0 : s.locale) || \"en\"), ct(\n {\n $cmpMeta$: {\n $flags$: 0,\n $tagName$: r.tagName\n },\n $hostElement$: r\n },\n e(t)\n ), r.children[r.children.length - 1];\n}, er = ({ $tag$: e, $attrs$: t, $children$: r, $text$: s }) => {\n const n = document.createElement(\"div\");\n return Ie(n, e, t, r, s), Tt(n.innerHTML, {\n tag_wrap: 40,\n content_wrap: 120\n }).replace(/=\"true\"/g, \"\");\n}, J = (e, t) => {\n if (!t)\n return;\n const r = t.split(\"/\");\n return `${e}${r.slice(2, r.length - 1).join(\"-\")}--docs`;\n};\nvar k, X;\nclass tr {\n constructor(t) {\n /**\n * JsonDocs\n */\n $(this, \"jsonDoc\");\n /**\n * Get component data from the jsonDoc\n * @param tagName - tag name we want to get the data from\n * @returns component data\n */\n j(this, k, (t) => this.jsonDoc.components.find((r) => r.tag === t));\n /**\n * Get the control for the given prop\n * Based on https://storybook.js.org/docs/api/arg-types#controltype\n * @param prop - prop to get control for\n * @returns control type and options if applicable\n */\n j(this, X, (t) => {\n const r = t.type.replace(/\"([^\"]+)\"/g, \"$1\").replace(/\\s/g, \"\").replace(/\\(.*?\\)/g, (s) => s.replace(/\\|/g, \" OR \")).split(\"|\").map((s) => s.trim().replace(/ OR /g, \"|\"));\n return t.type === \"string\" ? { control: { type: \"text\" } } : t.type === \"number\" ? { control: { type: \"number\" } } : t.type === \"boolean\" ? { control: { type: \"boolean\" } } : t.type.startsWith(\"{\") && t.type.endsWith(\"}\") ? { control: { type: \"object\" } } : r.length > 1 ? r.includes(\"string\") ? { control: { type: \"text\" } } : r.every((s) => s == null ? void 0 : s.includes(\"[]\")) ? { control: { type: \"object\" } } : (r.unshift(void 0), { control: { type: \"select\" }, options: r }) : { control: { type: \"object\" } };\n });\n /**\n * Extract component arg types from the component data\n * @param tagName - tag name we want to extract the arg types from\n * @returns component arg types\n */\n $(this, \"extractArgTypes\", (t) => {\n const r = v(this, k).call(this, t), s = r == null ? void 0 : r.props.reduce((p, o) => {\n const { control: g, options: u } = v(this, X).call(this, o);\n return {\n ...p,\n [o.name]: {\n name: o.attr || o.name,\n description: o.docs,\n type: { required: o.required },\n table: {\n category: \"props\",\n type: { summary: o.type },\n defaultValue: { summary: o.default }\n },\n control: g,\n options: u\n }\n };\n }, {}), n = r == null ? void 0 : r.events.reduce(\n (p, o) => ({\n ...p,\n [o.event]: {\n name: o.event,\n description: o.docs,\n table: {\n category: \"events\",\n type: { summary: o.detail }\n }\n }\n }),\n {}\n ), i = r == null ? void 0 : r.methods.reduce(\n (p, o) => ({\n ...p,\n [o.name]: {\n name: o.name,\n description: o.docs,\n table: {\n category: \"methods\",\n type: { summary: o.signature }\n }\n }\n }),\n {}\n ), a = r == null ? void 0 : r.slots.reduce(\n (p, o) => ({\n ...p,\n [o.name]: {\n name: o.name !== \"\" ? o.name : \"default\",\n // default slot are unnamed\n description: o.docs,\n table: {\n category: \"slots\",\n type: { summary: void 0 }\n }\n }\n }),\n {}\n ), c = r == null ? void 0 : r.styles.reduce(\n (p, o) => ({\n ...p,\n [o.name]: {\n name: o.name,\n description: o.docs,\n table: {\n category: \"custom properties\",\n type: { summary: void 0 }\n }\n }\n }),\n {}\n ), l = r == null ? void 0 : r.dependencies.reduce((p, o) => {\n const g = v(this, k).call(this, o);\n return g ? {\n ...p,\n [o]: {\n name: o,\n description: `<a href=\"./?path=/docs/${J(\"\", g == null ? void 0 : g.filePath)}\">View Component Documentation</a>`,\n table: {\n category: \"depends on\",\n type: { summary: void 0 }\n }\n }\n } : p;\n }, {}), f = r == null ? void 0 : r.dependents.reduce((p, o) => {\n const g = v(this, k).call(this, o);\n return g ? {\n ...p,\n [o]: {\n name: o,\n description: `<a href=\"./?path=/docs/${J(\"\", g == null ? void 0 : g.filePath)}\">View Component Documentation</a>`,\n table: {\n category: \"used by\",\n type: { summary: void 0 }\n }\n }\n } : p;\n }, {});\n return {\n ...s,\n ...n,\n ...i,\n ...a,\n ...c,\n ...l,\n ...f\n };\n });\n /**\n * Extract component description from the component data\n * @param tagName - tag name we want to extract the description from\n * @returns component description\n */\n $(this, \"extractComponentDescription\", (t) => {\n const r = v(this, k).call(this, t);\n return (r == null ? void 0 : r.readme) || (r == null ? void 0 : r.docs);\n });\n this.jsonDoc = t;\n }\n}\nk = new WeakMap(), X = new WeakMap();\nconst Rt = (e, t) => {\n if (t)\n return `${e}${t}`;\n}, Le = (e) => {\n let t = e.overview ? `${e.overview}\n\n` : \"\";\n const r = e.props.filter(({ attr: n }) => n !== void 0);\n r.length && (t += `Attributes:\n`, t += r.map(({ attr: n, docs: i }) => `- \\`${n}\\`: ${i}\n`).join(\"\"), t += `\n`);\n const s = e.props.filter(({ attr: n }) => n === void 0);\n return s.length && (t += `Properties:\n`, t += s.map(({ name: n, docs: i }) => `- \\`${n}\\`: ${i}\n`).join(\"\"), t += `\n`), e.methods.length && (t += `Methods:\n`, t += e.methods.map(({ name: n, docs: i }) => `- \\`${n}\\`: ${i}\n`).join(\"\"), t += `\n`), e.events.length && (t += `Events:\n`, t += e.events.map(({ event: n, docs: i }) => `- \\`${n}\\`: ${i}\n`).join(\"\"), t += `\n`), e.listeners.length && (t += `Listeners:\n`, t += e.listeners.map(({ event: n }) => `- \\`${n}\\`\n`).join(\"\"), t += `\n`), e.slots.length && (t += `Slots:\n`, t += e.slots.map(({ name: n, docs: i }) => `- \\`${n}\\`: ${i}\n`).join(\"\"), t += `\n`), t;\n}, ne = (e) => `${e.docs}\n\nType: \\`${e.type}\\``, rr = (e, t, r, s) => ({\n $schema: \"https://json.schemastore.org/web-types\",\n name: e,\n version: t,\n \"description-markup\": \"markdown\",\n contributions: {\n html: {\n elements: r.components.map((n) => {\n const i = J(s, n.filePath);\n return {\n name: n.tag,\n description: Le(n),\n \"doc-url\": i,\n attributes: n.props.filter((a) => a.attr).map((a) => ({\n name: a.attr,\n description: ne(a),\n \"doc-url\": i,\n value: {\n type: a.type,\n default: a.default,\n required: a.required\n }\n })),\n js: {\n properties: n.props.map((a) => ({\n name: a.name,\n description: ne(a),\n \"doc-url\": i,\n value: {\n type: a.type,\n default: a.default,\n required: a.required\n }\n })),\n events: n.events.map((a) => ({\n name: a.event,\n description: a.docs\n }))\n },\n css: {\n properties: n.styles.map((a) => ({\n name: a.name,\n description: a.docs\n }))\n }\n };\n })\n }\n }\n}), Nt = (e, t, r) => [\n { name: \"Storybook\", url: J(e, r) },\n { name: \"Sources\", url: Rt(t, r) }\n], zt = (e) => {\n if (!e.values.some(({ value: t }) => t === void 0))\n return e.values.map(({ value: t }) => ({ name: t }));\n}, sr = (e, t, r) => ({\n version: 1.1,\n tags: e.components.map((s) => {\n const n = Nt(t, r, s.filePath);\n return {\n name: s.tag,\n description: Le(s),\n attributes: s.props.map((i) => ({\n name: i.attr || i.name,\n description: ne(i),\n values: zt(i),\n references: n\n })),\n references: n\n };\n }),\n globalAttributes: [],\n valueSets: []\n}), nr = (e) => ({\n version: 1.1,\n properties: e.components.flatMap(\n (t) => t.styles.map((r) => ({\n name: r.name,\n description: r.docs\n }))\n )\n}), ir = (e) => {\n const t = { value: \"2023\", pattern: \"yyyy\" }, r = { value: \"12\", pattern: \"mm\" }, s = { value: \"24\", pattern: \"dd\" };\n return Ft([t.value, r.value, s.value].join(\"-\"), e, { timeZone: \"UTC\" }).replace(t.value, t.pattern).replace(r.value, r.pattern).replace(s.value, s.pattern);\n}, ar = (e) => e.toISOString().split(\"T\")[0], It = (e, t, r) => {\n const s = e.closest(\"[lang]\"), n = Intl.NumberFormat.supportedLocalesOf(s == null ? void 0 : s.lang), i = n.length > 0 && typeof n[0] == \"string\" ? n[0] : navigator.language || r, a = i.split(\"-\").shift();\n return Object.keys(t).length === 0 ? {\n locale: i,\n messages: { lang: r }\n } : {\n locale: i,\n messages: t[a] || t[r] || { lang: r }\n };\n}, or = (e, t, r) => new Intl.NumberFormat(t, { style: \"currency\", currency: r }).format(e), lr = (e, t, r = 0) => new Intl.NumberFormat(t, { minimumFractionDigits: r }).format(Number(e)), cr = (e, t, r = 0) => new Intl.NumberFormat(t, {\n style: \"percent\",\n minimumFractionDigits: r,\n maximumFractionDigits: r\n}).format(e), fr = (e, t, r, s = \"short\", n = 0) => new Intl.NumberFormat(t, {\n style: \"unit\",\n unit: r,\n unitDisplay: s,\n minimumFractionDigits: n,\n maximumFractionDigits: n\n}).format(e), Lt = /^\\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12]\\d|3[01])$/, Ft = (e, t, r) => typeof e != \"string\" || e === \"\" || !Lt.test(e) ? \"\" : new Intl.DateTimeFormat(t, r).format(new Date(e)), ur = (e, t) => (r) => It(r, e, t), pr = ({ disconnect: e, observe: t, takeRecords: r }) => {\n class s {\n constructor(i) {\n /**\n *\n */\n $(this, \"disconnect\", e);\n /**\n *\n */\n $(this, \"observe\", t);\n /**\n *\n */\n $(this, \"takeRecords\", r);\n /**\n *\n */\n $(this, \"cb\");\n this.cb = i;\n }\n }\n return [window, global].forEach((n) => {\n Object.defineProperty(n, \"MutationObserver\", {\n writable: !0,\n configurable: !0,\n value: s\n });\n }), s;\n}, gr = ({ disconnect: e, observe: t }) => {\n class r {\n constructor(n) {\n /**\n *\n */\n $(this, \"disconnect\", e);\n /**\n *\n */\n $(this, \"observe\", t);\n /**\n *\n */\n $(this, \"unobserve\");\n /**\n *\n */\n $(this, \"cb\");\n this.cb = n;\n }\n }\n return [window, global].forEach((s) => {\n Object.defineProperty(s, \"ResizeObserver\", {\n writable: !0,\n configurable: !0,\n value: r\n });\n }), r;\n};\nclass Mt extends Event {\n constructor() {\n super(...arguments);\n /**\n *\n */\n $(this, \"detail\");\n }\n // eslint-disable-line @typescript-eslint/no-explicit-any\n}\nconst $r = () => {\n class e extends Mt {\n }\n return [window, global].forEach((t) => {\n Object.defineProperty(t, \"SubmitEvent\", {\n writable: !0,\n configurable: !0,\n value: e\n });\n }), e;\n}, dr = (e) => {\n const t = (r) => (setTimeout(r, 1), e(), 0);\n return [window, global].forEach((r) => {\n Object.defineProperty(r, \"requestAnimationFrame\", {\n writable: !0,\n configurable: !0,\n value: t\n });\n }), t;\n};\nexport {\n Zt as ClassList,\n Kt as Cursor,\n He as Page,\n Yt as Paginate,\n tr as StorybookPreview,\n Dt as allItemsAreString,\n Jt as cleanString,\n Pt as createID,\n Lt as dateRegExp,\n ar as dateToString,\n ur as defineLocales,\n Qt as filterArgs,\n Ht as focusableElements,\n ir as getLocaleDatePattern,\n qe as getObjectValueFromKey,\n _e as getParentWindows,\n er as getStoryHTML,\n J as getStorybookUrl,\n Bt as getWindows,\n ie as isObject,\n qt as isTagName,\n Wt as isValidNumber,\n De as isValidString,\n Ut as isValideID,\n or as localeCurrency,\n Ft as localeDate,\n lr as localeNumber,\n cr as localePercent,\n fr as localeUnit,\n Xt as nextTick,\n dr as setUpRequestAnimationFrameMock,\n pr as setupMutationObserverMock,\n gr as setupResizeObserverMock,\n $r as setupSubmitEventMock,\n Vt as stencilWrapper,\n Gt as toString,\n nr as vsCodeCssGenerator,\n sr as vsCodeGenerator,\n rr as webTypesGenerator\n};\n//# sourceMappingURL=index.es.js.map\n"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
const E={TAB:"Tab",ENTER:"Enter",DOWN:"Down",UP:"Up",LEFT:"Left",RIGHT:"Right",ARROWDOWN:"ArrowDown",ARROWUP:"ArrowUp",ARROWRIGHT:"ArrowRight",ARROWLEFT:"ArrowLeft",HOME:"Home",END:"End",ESC:"Esc",ESCAPE:"Escape",NUMPADENTER:"NumpadEnter",SPACE:"Space"};export{E as K};
|
|
2
|
+
//# sourceMappingURL=p-yMGqY8YG.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"p-yMGqY8YG.js","sources":["src/utils/events.utils.ts"],"sourcesContent":["/**\n * Keyboard keys\n */\nexport const Keys: Record<string, KeyboardEvent['key']> = {\n TAB: 'Tab',\n ENTER: 'Enter',\n DOWN: 'Down',\n UP: 'Up',\n LEFT: 'Left',\n RIGHT: 'Right',\n ARROWDOWN: 'ArrowDown',\n ARROWUP: 'ArrowUp',\n ARROWRIGHT: 'ArrowRight',\n ARROWLEFT: 'ArrowLeft',\n HOME: 'Home',\n END: 'End',\n ESC: 'Esc',\n ESCAPE: 'Escape',\n NUMPADENTER: 'NumpadEnter',\n SPACE: 'Space',\n};\n"],"names":[],"mappings":"AAAA;;AAEG;AACU,MAAA,IAAI,GAAyC;AACxD,IAAA,GAAG,EAAE,KAAK;AACV,IAAA,KAAK,EAAE,OAAO;AACd,IAAA,IAAI,EAAE,MAAM;AACZ,IAAA,EAAE,EAAE,IAAI;AACR,IAAA,IAAI,EAAE,MAAM;AACZ,IAAA,KAAK,EAAE,OAAO;AACd,IAAA,SAAS,EAAE,WAAW;AACtB,IAAA,OAAO,EAAE,SAAS;AAClB,IAAA,UAAU,EAAE,YAAY;AACxB,IAAA,SAAS,EAAE,WAAW;AACtB,IAAA,IAAI,EAAE,MAAM;AACZ,IAAA,GAAG,EAAE,KAAK;AACV,IAAA,GAAG,EAAE,KAAK;AACV,IAAA,MAAM,EAAE,QAAQ;AAChB,IAAA,WAAW,EAAE,aAAa;AAC1B,IAAA,KAAK,EAAE,OAAO;;;;;"}
|
|
@@ -6,11 +6,12 @@ export declare class MgTooltip {
|
|
|
6
6
|
/************
|
|
7
7
|
* Internal *
|
|
8
8
|
************/
|
|
9
|
-
private floatingUICleanup;
|
|
10
9
|
private mgTooltipContent;
|
|
11
10
|
private tooltipedElement;
|
|
11
|
+
private arrowElement;
|
|
12
12
|
private windows;
|
|
13
13
|
private hasCustomTabIndex;
|
|
14
|
+
private tooltipStrategy;
|
|
14
15
|
private guard;
|
|
15
16
|
/**************
|
|
16
17
|
* Decorators *
|
|
@@ -34,7 +35,7 @@ export declare class MgTooltip {
|
|
|
34
35
|
* Tooltip placement
|
|
35
36
|
*/
|
|
36
37
|
placement: TooltipPlacementType;
|
|
37
|
-
watchPlacement(newValue:
|
|
38
|
+
watchPlacement(newValue: TooltipPlacementType): void;
|
|
38
39
|
/**
|
|
39
40
|
* Display tooltip
|
|
40
41
|
*/
|
|
@@ -86,10 +87,10 @@ export declare class MgTooltip {
|
|
|
86
87
|
*/
|
|
87
88
|
private setMgButtonWrapper;
|
|
88
89
|
/**
|
|
89
|
-
*
|
|
90
|
-
* @
|
|
90
|
+
* Update tooltip position
|
|
91
|
+
* @returns autoUpdate function
|
|
91
92
|
*/
|
|
92
|
-
private
|
|
93
|
+
private updateTooltip;
|
|
93
94
|
/**
|
|
94
95
|
* Define selected element to become tooltip selector and init listeners
|
|
95
96
|
* @param element - tooltiped element
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { CursorType } from '@mgdis/stencil-helpers';
|
|
2
|
+
/**
|
|
3
|
+
* Define action type
|
|
4
|
+
*/
|
|
5
|
+
export type ActionType = {
|
|
6
|
+
name: 'scroll' | 'load-data' | 'load-more';
|
|
7
|
+
cursor?: CursorType;
|
|
8
|
+
};
|
|
9
|
+
/**
|
|
10
|
+
* Define request mapping type
|
|
11
|
+
*/
|
|
12
|
+
export type RequestMappingType = {
|
|
13
|
+
filter: string;
|
|
14
|
+
};
|
|
15
|
+
/**
|
|
16
|
+
* Define response mapping type
|
|
17
|
+
*/
|
|
18
|
+
export type ResponseMappingType = {
|
|
19
|
+
total: string;
|
|
20
|
+
items: string;
|
|
21
|
+
next: string;
|
|
22
|
+
itemTitle: string;
|
|
23
|
+
itemValue: string;
|
|
24
|
+
};
|
|
@@ -0,0 +1,340 @@
|
|
|
1
|
+
import { EventEmitter } from '../../../../stencil-public-runtime';
|
|
2
|
+
import { ClassList, Paginate } from '@mgdis/stencil-helpers';
|
|
3
|
+
import { type RequestMappingType, type ResponseMappingType } from './mg-input-combobox.conf';
|
|
4
|
+
import { type TooltipPosition, type Width } from '../mg-input/mg-input.conf';
|
|
5
|
+
import type { Option } from '../../../../types';
|
|
6
|
+
export declare class MgInputCombobox {
|
|
7
|
+
/************
|
|
8
|
+
* Internal *
|
|
9
|
+
************/
|
|
10
|
+
private readonly classFocus;
|
|
11
|
+
private input;
|
|
12
|
+
private loadMoreElement;
|
|
13
|
+
private popoverId;
|
|
14
|
+
private messages;
|
|
15
|
+
private hasDisplayedError;
|
|
16
|
+
private handlerInProgress;
|
|
17
|
+
private loadingAction;
|
|
18
|
+
private page;
|
|
19
|
+
/**************
|
|
20
|
+
* Decorators *
|
|
21
|
+
**************/
|
|
22
|
+
/**
|
|
23
|
+
* Get component DOM element
|
|
24
|
+
*/
|
|
25
|
+
element: HTMLMgInputComboboxElement;
|
|
26
|
+
/**
|
|
27
|
+
* Define component value
|
|
28
|
+
*/
|
|
29
|
+
value: string | Option;
|
|
30
|
+
watchValue(newValue: MgInputCombobox['value']): void;
|
|
31
|
+
/**
|
|
32
|
+
* Define components items
|
|
33
|
+
*/
|
|
34
|
+
items: (string | Option)[];
|
|
35
|
+
watchItems(newValue: MgInputCombobox['items']): void;
|
|
36
|
+
/**
|
|
37
|
+
* Define items label
|
|
38
|
+
* Include short description. Required for accessibility.
|
|
39
|
+
* @example
|
|
40
|
+
* ```
|
|
41
|
+
* Countries
|
|
42
|
+
* ```
|
|
43
|
+
*/
|
|
44
|
+
itemsLabel: string;
|
|
45
|
+
/**
|
|
46
|
+
* Identifier is used for the element ID (id is a reserved prop in Stencil.js)
|
|
47
|
+
*/
|
|
48
|
+
identifier: string;
|
|
49
|
+
watchIdentifier(newValue: MgInputCombobox['identifier']): void;
|
|
50
|
+
/**
|
|
51
|
+
* Input name
|
|
52
|
+
* If not set the value equals the identifier
|
|
53
|
+
*/
|
|
54
|
+
name: string;
|
|
55
|
+
/**
|
|
56
|
+
* Input label
|
|
57
|
+
*/
|
|
58
|
+
label: string;
|
|
59
|
+
/**
|
|
60
|
+
* Define if label is displayed on top
|
|
61
|
+
*/
|
|
62
|
+
labelOnTop: boolean;
|
|
63
|
+
/**
|
|
64
|
+
* Define if label is visible
|
|
65
|
+
*/
|
|
66
|
+
labelHide: boolean;
|
|
67
|
+
/**
|
|
68
|
+
* Define input placeholder.
|
|
69
|
+
* It should be a word or short phrase that demonstrates the expected type of data, not a replacement for labels or help combobox.
|
|
70
|
+
*/
|
|
71
|
+
placeholder?: string;
|
|
72
|
+
/**
|
|
73
|
+
* Define if input is required
|
|
74
|
+
*/
|
|
75
|
+
required: boolean;
|
|
76
|
+
/**
|
|
77
|
+
* Define if input is readonly
|
|
78
|
+
*/
|
|
79
|
+
readonly: boolean;
|
|
80
|
+
watchReadonly(newValue: MgInputCombobox['readonly']): void;
|
|
81
|
+
/**
|
|
82
|
+
* Define if input is disabled
|
|
83
|
+
*/
|
|
84
|
+
disabled: boolean;
|
|
85
|
+
watchValidityChange(newValue: boolean, _oldValue: boolean, prop: string): void;
|
|
86
|
+
watchDisabled(newValue: MgInputCombobox['disabled']): void;
|
|
87
|
+
/**
|
|
88
|
+
* Define input width
|
|
89
|
+
*/
|
|
90
|
+
mgWidth: Width;
|
|
91
|
+
watchMgWidth(newValue: MgInputCombobox['mgWidth']): void;
|
|
92
|
+
/**
|
|
93
|
+
* Add a tooltip message next to the input
|
|
94
|
+
*/
|
|
95
|
+
tooltip?: string;
|
|
96
|
+
/**
|
|
97
|
+
* Define tooltip position
|
|
98
|
+
*/
|
|
99
|
+
tooltipPosition: TooltipPosition;
|
|
100
|
+
/**
|
|
101
|
+
* Add a help text under the input, usually expected data format and example
|
|
102
|
+
*/
|
|
103
|
+
helpText?: string;
|
|
104
|
+
/**
|
|
105
|
+
* Define API url to fetch
|
|
106
|
+
* @example
|
|
107
|
+
* ```
|
|
108
|
+
* {
|
|
109
|
+
* url: "http://myapi.com?$select='href,name'&my-custom-param='my-custom-value'", // url to fetch
|
|
110
|
+
* }
|
|
111
|
+
* ```
|
|
112
|
+
*/
|
|
113
|
+
fetchurl?: string | URL;
|
|
114
|
+
watchFetchUrl(newValue: MgInputCombobox['fetchurl']): void;
|
|
115
|
+
/**
|
|
116
|
+
* Define fetch options object
|
|
117
|
+
* Require `fetchurl` prop to be defined otherwith it will be ignored if defined
|
|
118
|
+
* @see {@link https://developer.mozilla.org/en-US/docs/Web/API/RequestInit}
|
|
119
|
+
* @example JSON headers:
|
|
120
|
+
* ```json
|
|
121
|
+
* {
|
|
122
|
+
* "headers": {
|
|
123
|
+
* "authorization": "my-token"
|
|
124
|
+
* }
|
|
125
|
+
* }
|
|
126
|
+
* ```
|
|
127
|
+
*/
|
|
128
|
+
fetchoptions?: RequestInit;
|
|
129
|
+
watchFetchOptions(newValue: MgInputCombobox['fetchoptions']): void;
|
|
130
|
+
/**
|
|
131
|
+
* Define fetch request mappings.
|
|
132
|
+
* Required with `fetchurl`
|
|
133
|
+
* @example
|
|
134
|
+
* ```
|
|
135
|
+
* {
|
|
136
|
+
* request: {
|
|
137
|
+
* filter: 'name', // `filter` key
|
|
138
|
+
* },
|
|
139
|
+
* response: {
|
|
140
|
+
* total: 'body.data.total', // response object mapping to get `total` value
|
|
141
|
+
* items: 'body.data.results' // response object mapping to get `items` value
|
|
142
|
+
* next: 'body.next' // response object mapping to get `next` items
|
|
143
|
+
* itemTitle: 'name', // item property to map on item['title']
|
|
144
|
+
* itemValue: 'href', // item property to map on item['value']
|
|
145
|
+
* }
|
|
146
|
+
* }
|
|
147
|
+
* ```
|
|
148
|
+
*/
|
|
149
|
+
fetchmappings?: {
|
|
150
|
+
request: RequestMappingType;
|
|
151
|
+
response: ResponseMappingType;
|
|
152
|
+
};
|
|
153
|
+
watchFetchMappings(newValue: MgInputCombobox['fetchmappings']): void;
|
|
154
|
+
/**
|
|
155
|
+
* Define input valid state
|
|
156
|
+
*/
|
|
157
|
+
valid: boolean;
|
|
158
|
+
/**
|
|
159
|
+
* Define input invalid state
|
|
160
|
+
*/
|
|
161
|
+
invalid: boolean;
|
|
162
|
+
/**
|
|
163
|
+
* Define if items are loading
|
|
164
|
+
*/
|
|
165
|
+
isLoading: boolean;
|
|
166
|
+
/**
|
|
167
|
+
* Formated items for display
|
|
168
|
+
*/
|
|
169
|
+
options: Paginate<Option>;
|
|
170
|
+
watchOptions(newValue: Paginate<Option>): void;
|
|
171
|
+
/**
|
|
172
|
+
* Active option
|
|
173
|
+
*/
|
|
174
|
+
option: Option;
|
|
175
|
+
/**
|
|
176
|
+
* Option filter
|
|
177
|
+
*/
|
|
178
|
+
filter: string;
|
|
179
|
+
watchFilter(newValue: MgInputCombobox['filter']): void;
|
|
180
|
+
/**
|
|
181
|
+
* Component classes
|
|
182
|
+
*/
|
|
183
|
+
classCollection: ClassList;
|
|
184
|
+
/**
|
|
185
|
+
* Error message to display
|
|
186
|
+
*/
|
|
187
|
+
errorMessage: string;
|
|
188
|
+
/**
|
|
189
|
+
* Popover display state
|
|
190
|
+
*/
|
|
191
|
+
popoverDisplay: boolean;
|
|
192
|
+
watchPopoverDisplay(newValue: MgInputCombobox['popoverDisplay']): void;
|
|
193
|
+
/**
|
|
194
|
+
* Emited event when value change
|
|
195
|
+
*/
|
|
196
|
+
valueChange: EventEmitter<HTMLMgInputComboboxElement['value']>;
|
|
197
|
+
/**
|
|
198
|
+
* Emited event when filter change
|
|
199
|
+
*/
|
|
200
|
+
filterChange: EventEmitter<string>;
|
|
201
|
+
/**
|
|
202
|
+
* Emited event when `load-more` is called
|
|
203
|
+
*/
|
|
204
|
+
loadMore: EventEmitter<void>;
|
|
205
|
+
/**
|
|
206
|
+
* Emited event when checking validity
|
|
207
|
+
*/
|
|
208
|
+
inputValid: EventEmitter<HTMLMgInputComboboxElement['valid']>;
|
|
209
|
+
/**
|
|
210
|
+
* Public method to play input focus
|
|
211
|
+
*/
|
|
212
|
+
setFocus(): Promise<void>;
|
|
213
|
+
/**
|
|
214
|
+
* Display input error if it exists.
|
|
215
|
+
*/
|
|
216
|
+
displayError(): Promise<void>;
|
|
217
|
+
/**
|
|
218
|
+
* Set an error and display a custom error message.
|
|
219
|
+
* This method can be used to set the component's error state from its concombobox by passing a boolean value to the `valid` parameter.
|
|
220
|
+
* It must be paired with an error message to display for the given concombobox.
|
|
221
|
+
* When used to set validity to `false`, you should use this method again to reset the validity to `true`.
|
|
222
|
+
* @param valid - value indicating the validity
|
|
223
|
+
* @param errorMessage - the error message to display
|
|
224
|
+
*/
|
|
225
|
+
setError(valid: MgInputCombobox['valid'], errorMessage: string): Promise<void>;
|
|
226
|
+
/**
|
|
227
|
+
* Reset value, validity and error state
|
|
228
|
+
*/
|
|
229
|
+
reset(): Promise<void>;
|
|
230
|
+
/**
|
|
231
|
+
* Handle `click` event on option
|
|
232
|
+
* @param event - option element click event
|
|
233
|
+
*/
|
|
234
|
+
private handleOptionClick;
|
|
235
|
+
/**
|
|
236
|
+
* Handle `click` event on reset button
|
|
237
|
+
* @param event - click event
|
|
238
|
+
*/
|
|
239
|
+
private handleResetButton;
|
|
240
|
+
/**
|
|
241
|
+
* Handle `display-change` event on mg-popover
|
|
242
|
+
*/
|
|
243
|
+
private handlePopoverDisplay;
|
|
244
|
+
/**
|
|
245
|
+
* Handle input event
|
|
246
|
+
*/
|
|
247
|
+
private handleFilterInput;
|
|
248
|
+
/**
|
|
249
|
+
* Handle `blur` event
|
|
250
|
+
*/
|
|
251
|
+
private handleFilterBlur;
|
|
252
|
+
/**
|
|
253
|
+
* Handle `focus` event
|
|
254
|
+
*/
|
|
255
|
+
private handleFilterFocus;
|
|
256
|
+
/**
|
|
257
|
+
* Handle load-more <mg-button> `click`
|
|
258
|
+
*/
|
|
259
|
+
private handleLoadMoreButton;
|
|
260
|
+
/**
|
|
261
|
+
* Handle `keypress` event
|
|
262
|
+
* @param event - keyboard event
|
|
263
|
+
*/
|
|
264
|
+
private handleFilterKeydown;
|
|
265
|
+
/**
|
|
266
|
+
* Scroll to next option from cursor
|
|
267
|
+
* @param index - targeted option index to scroll into
|
|
268
|
+
*/
|
|
269
|
+
private scrollToIndex;
|
|
270
|
+
/**
|
|
271
|
+
* Is option the current value
|
|
272
|
+
* @param option - option to match with
|
|
273
|
+
* @returns true if option is the current value
|
|
274
|
+
*/
|
|
275
|
+
private isCurrentOption;
|
|
276
|
+
/**
|
|
277
|
+
* Set value prop
|
|
278
|
+
* @param newValue - slected option item
|
|
279
|
+
*/
|
|
280
|
+
private setValue;
|
|
281
|
+
/**
|
|
282
|
+
* get value prop title
|
|
283
|
+
* @returns value title
|
|
284
|
+
*/
|
|
285
|
+
private getValueTitle;
|
|
286
|
+
/**
|
|
287
|
+
* Method to set validity values
|
|
288
|
+
* @param newValue - valid new value
|
|
289
|
+
*/
|
|
290
|
+
private setValidity;
|
|
291
|
+
/**
|
|
292
|
+
* Check if input is valid
|
|
293
|
+
*/
|
|
294
|
+
private checkValidity;
|
|
295
|
+
/**
|
|
296
|
+
* Set input error message
|
|
297
|
+
* @param errorMessage - errorMessage override
|
|
298
|
+
*/
|
|
299
|
+
private setErrorMessage;
|
|
300
|
+
/**
|
|
301
|
+
* Get filtered options from `filter` input value
|
|
302
|
+
* @returns filtered options
|
|
303
|
+
*/
|
|
304
|
+
private optionsFilter;
|
|
305
|
+
/**
|
|
306
|
+
* Loading wrapper with a given action
|
|
307
|
+
* @param action - wrapped loading action
|
|
308
|
+
* @returns promisified action
|
|
309
|
+
*/
|
|
310
|
+
private loadingWrapper;
|
|
311
|
+
/**
|
|
312
|
+
* Go to next page
|
|
313
|
+
* @returns promise
|
|
314
|
+
*/
|
|
315
|
+
private goToNextPage;
|
|
316
|
+
/**
|
|
317
|
+
* Go to next page
|
|
318
|
+
* @returns promise
|
|
319
|
+
*/
|
|
320
|
+
private updatePage;
|
|
321
|
+
/**
|
|
322
|
+
* Fetch request
|
|
323
|
+
* @param url - to fetch
|
|
324
|
+
* @returns new page from url
|
|
325
|
+
*/
|
|
326
|
+
private getOptions;
|
|
327
|
+
/*************
|
|
328
|
+
* Lifecycle *
|
|
329
|
+
*************/
|
|
330
|
+
/**
|
|
331
|
+
* Check if component props are well configured on init
|
|
332
|
+
* @returns timeout
|
|
333
|
+
*/
|
|
334
|
+
componentWillLoad(): ReturnType<typeof setTimeout>;
|
|
335
|
+
/**
|
|
336
|
+
* Render
|
|
337
|
+
* @returns HTML Element
|
|
338
|
+
*/
|
|
339
|
+
render(): HTMLElement;
|
|
340
|
+
}
|
|
@@ -12,7 +12,8 @@ export declare class MgPopover {
|
|
|
12
12
|
private mgPopover;
|
|
13
13
|
private mgPopoverContent;
|
|
14
14
|
private windows;
|
|
15
|
-
private
|
|
15
|
+
private interactiveElement;
|
|
16
|
+
private arrowElement;
|
|
16
17
|
/**************
|
|
17
18
|
* Decorators *
|
|
18
19
|
**************/
|
|
@@ -63,11 +64,6 @@ export declare class MgPopover {
|
|
|
63
64
|
* @param event - mouse event
|
|
64
65
|
*/
|
|
65
66
|
private clickOutside;
|
|
66
|
-
/**
|
|
67
|
-
* Update aria-expanded attribute on interactive element
|
|
68
|
-
* @param expanded - expanded state
|
|
69
|
-
*/
|
|
70
|
-
private updateAriaExpanded;
|
|
71
67
|
/**
|
|
72
68
|
* Show popover
|
|
73
69
|
*/
|
|
@@ -99,10 +95,10 @@ export declare class MgPopover {
|
|
|
99
95
|
*/
|
|
100
96
|
private getClosestPlacements;
|
|
101
97
|
/**
|
|
102
|
-
*
|
|
103
|
-
* @
|
|
98
|
+
* Update popover position
|
|
99
|
+
* @returns autoUpdate function
|
|
104
100
|
*/
|
|
105
|
-
private
|
|
101
|
+
private updatePopover;
|
|
106
102
|
/*************
|
|
107
103
|
* Lifecycle *
|
|
108
104
|
*************/
|