@mgdis/mg-components 5.6.0 → 5.7.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/{index-4dcc1812.js → index-5e7ede97.js} +109 -3
- package/dist/cjs/loader.cjs.js +4 -3
- package/dist/cjs/{mg-badge_30.cjs.entry.js → mg-action-more_31.cjs.entry.js} +623 -445
- package/dist/cjs/mg-components.cjs.js +7 -3
- package/dist/collection/collection-manifest.json +5 -4
- package/dist/collection/components/atoms/mg-badge/mg-badge.js +1 -1
- package/dist/collection/components/atoms/mg-button/mg-button.css +7 -21
- package/dist/collection/components/atoms/mg-button/mg-button.js +1 -1
- package/dist/collection/components/atoms/mg-icon/mg-icon.conf.js +27 -27
- package/dist/collection/components/atoms/mg-icon/mg-icon.js +3 -3
- package/dist/collection/components/atoms/mg-tag/mg-tag.js +1 -1
- package/dist/collection/components/atoms/mg-tooltip/mg-tooltip.js +12 -15
- package/dist/collection/components/molecules/inputs/MgInput.js +6 -1
- package/dist/collection/components/molecules/inputs/mg-input-checkbox/mg-input-checkbox.css +4 -3
- package/dist/collection/components/molecules/inputs/mg-input-checkbox/mg-input-checkbox.js +3 -2
- package/dist/collection/components/molecules/inputs/mg-input-date/mg-input-date.css +4 -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.css +4 -0
- package/dist/collection/components/molecules/inputs/mg-input-numeric/mg-input-numeric.js +1 -1
- package/dist/collection/components/molecules/inputs/mg-input-password/mg-input-password.css +4 -0
- package/dist/collection/components/molecules/inputs/mg-input-radio/mg-input-radio.css +4 -3
- package/dist/collection/components/molecules/inputs/mg-input-radio/mg-input-radio.js +2 -1
- package/dist/collection/components/molecules/inputs/mg-input-select/mg-input-select.css +4 -0
- 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.css +4 -0
- package/dist/collection/components/molecules/inputs/mg-input-textarea/mg-input-textarea.css +4 -0
- 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.css +4 -4
- package/dist/collection/components/molecules/menu/mg-menu/mg-menu.js +2 -3
- package/dist/collection/components/molecules/menu/mg-menu-item/mg-menu-item.css +2 -1
- package/dist/collection/components/molecules/menu/mg-menu-item/mg-menu-item.js +31 -11
- package/dist/collection/components/molecules/mg-action-more/mg-action-more.conf.js +1 -0
- package/dist/collection/components/molecules/mg-action-more/mg-action-more.css +38 -0
- package/dist/collection/components/molecules/mg-action-more/mg-action-more.js +252 -0
- package/dist/collection/components/molecules/mg-form/mg-form.js +2 -2
- package/dist/collection/components/molecules/mg-message/mg-message.js +1 -1
- package/dist/collection/components/molecules/mg-pagination/mg-pagination.js +19 -1
- package/dist/collection/components/molecules/mg-panel/mg-panel.js +2 -2
- package/dist/collection/components/molecules/mg-popover/mg-popover.css +0 -1
- package/dist/collection/components/molecules/mg-popover/mg-popover.js +17 -4
- package/dist/collection/components/molecules/mg-skip-links/mg-skip-links.js +2 -1
- package/dist/collection/components/molecules/mg-tabs/mg-tabs.css +2 -1
- package/dist/collection/components/molecules/mg-tabs/mg-tabs.js +9 -8
- package/dist/collection/locales/en/messages.json +6 -1
- package/dist/collection/locales/fr/messages.json +6 -1
- package/dist/collection/locales/index.js +1 -1
- package/dist/collection/styles/mg-icon-animation.scss +6 -0
- package/dist/collection/styles/navigation-button.scss +2 -1
- package/dist/collection/utils/behaviors.utils.js +16 -34
- package/dist/collection/utils/components.utils.js +3 -1
- package/dist/collection/utils/locale.utils.js +9 -9
- package/dist/collection/utils/unit.test.utils.js +32 -4
- package/dist/collection/variables.css +2 -1
- package/dist/components/MgInput.js +6 -1
- package/dist/components/components.utils.js +3 -1
- package/dist/components/index.d.ts +10 -0
- package/dist/components/index.js +2 -1
- package/dist/components/index2.js +26 -14
- package/dist/components/mg-action-more.d.ts +11 -0
- package/dist/components/mg-action-more.js +215 -0
- package/dist/components/mg-badge2.js +1 -1
- package/dist/components/mg-button2.js +2 -2
- package/dist/components/mg-form.js +2 -2
- package/dist/components/mg-icon2.js +30 -30
- package/dist/components/mg-input-checkbox.js +3 -3
- package/dist/components/mg-input-date.js +2 -2
- package/dist/components/mg-input-numeric.js +2 -2
- package/dist/components/mg-input-password.js +1 -1
- package/dist/components/mg-input-radio.js +2 -2
- package/dist/components/mg-input-select2.js +2 -2
- package/dist/components/mg-input-text2.js +1 -1
- package/dist/components/mg-input-textarea.js +2 -2
- package/dist/components/mg-input-toggle.js +1 -1
- package/dist/components/mg-menu-item2.js +75 -72
- package/dist/components/mg-menu.js +1 -246
- package/dist/components/mg-menu2.js +247 -0
- package/dist/components/mg-message.js +1 -1
- package/dist/components/mg-pagination.js +3 -1
- package/dist/components/mg-panel.js +2 -2
- package/dist/components/mg-popover2.js +17 -3
- package/dist/components/mg-skip-links.js +1 -1
- package/dist/components/mg-tabs.js +10 -9
- package/dist/components/mg-tag.js +1 -1
- package/dist/components/mg-tooltip2.js +12 -15
- package/dist/esm/{index-dc9a2348.js → index-03cceb11.js} +109 -4
- package/dist/esm/loader.js +4 -3
- package/dist/esm/{mg-badge_30.entry.js → mg-action-more_31.entry.js} +623 -446
- package/dist/esm/mg-components.js +4 -3
- package/dist/mg-components/locales/en/messages.json +6 -1
- package/dist/mg-components/locales/fr/messages.json +6 -1
- package/dist/mg-components/mg-components.css +1 -1
- package/dist/mg-components/mg-components.esm.js +1 -1
- package/dist/mg-components/p-4cfd5423.entry.js +1 -0
- package/dist/mg-components/p-e126dd84.js +2 -0
- package/dist/mg-components/styles/mg-icon-animation.scss +6 -0
- package/dist/mg-components/styles/navigation-button.scss +2 -1
- package/dist/mg-components/variables.css +2 -1
- package/dist/types/components/molecules/inputs/mg-input-textarea/mg-input-textarea.d.ts +1 -1
- package/dist/types/components/molecules/menu/mg-menu-item/mg-menu-item.d.ts +7 -1
- package/dist/types/components/molecules/mg-action-more/mg-action-more.conf.d.ts +42 -0
- package/dist/types/components/molecules/mg-action-more/mg-action-more.d.ts +81 -0
- package/dist/types/components/molecules/mg-pagination/mg-pagination.d.ts +4 -0
- package/dist/types/components/molecules/mg-popover/mg-popover.d.ts +2 -1
- package/dist/types/components.d.ts +54 -0
- package/dist/types/locales/index.d.ts +12 -2
- package/dist/types/stencil-public-runtime.d.ts +9 -0
- package/dist/types/utils/behaviors.utils.d.ts +1 -7
- package/dist/types/utils/locale.utils.d.ts +5 -5
- package/dist/types/utils/unit.test.utils.d.ts +20 -2
- package/loader/index.d.ts +9 -0
- package/package.json +17 -16
- package/readme.md +0 -18
- package/dist/.storybook/utils.js +0 -24
- package/dist/collection/components/atoms/mg-badge/doc/mg-badge.stories.js +0 -27
- package/dist/collection/components/atoms/mg-button/doc/mg-button.stories.js +0 -38
- package/dist/collection/components/atoms/mg-card/doc/mg-card.stories.js +0 -18
- package/dist/collection/components/atoms/mg-character-left/doc/mg-character-left.stories.js +0 -20
- package/dist/collection/components/atoms/mg-divider/doc/mg-divider.stories.js +0 -18
- package/dist/collection/components/atoms/mg-icon/doc/mg-icon.stories.js +0 -41
- package/dist/collection/components/atoms/mg-input-title/doc/mg-input-title.stories.js +0 -21
- package/dist/collection/components/atoms/mg-tag/doc/mg-tag.stories.js +0 -22
- package/dist/collection/components/atoms/mg-tooltip/doc/mg-tooltip.stories.js +0 -50
- package/dist/collection/components/molecules/inputs/mg-input-checkbox/doc/mg-input-checkbox.stories.js +0 -50
- package/dist/collection/components/molecules/inputs/mg-input-date/doc/mg-input-date.stories.js +0 -43
- package/dist/collection/components/molecules/inputs/mg-input-numeric/doc/mg-input-numeric.stories.js +0 -68
- package/dist/collection/components/molecules/inputs/mg-input-password/doc/mg-input-password.stories.js +0 -46
- package/dist/collection/components/molecules/inputs/mg-input-radio/doc/mg-input-radio.stories.js +0 -59
- package/dist/collection/components/molecules/inputs/mg-input-select/doc/mg-input-select.stories.js +0 -77
- package/dist/collection/components/molecules/inputs/mg-input-text/doc/mg-input-text.stories.js +0 -110
- package/dist/collection/components/molecules/inputs/mg-input-textarea/doc/mg-input-textarea.stories.js +0 -54
- package/dist/collection/components/molecules/inputs/mg-input-toggle/doc/mg-input-toggle.stories.js +0 -51
- package/dist/collection/components/molecules/menu/mg-menu/doc/mg-menu.stories.js +0 -119
- package/dist/collection/components/molecules/menu/mg-menu-item/doc/mg-menu-item.stories.js +0 -34
- package/dist/collection/components/molecules/mg-details/doc/mg-details.stories.js +0 -24
- package/dist/collection/components/molecules/mg-form/doc/mg-form.stories.js +0 -47
- package/dist/collection/components/molecules/mg-illustrated-message/doc/mg-illustrated-message.stories.js +0 -19
- package/dist/collection/components/molecules/mg-message/doc/mg-message.stories.js +0 -39
- package/dist/collection/components/molecules/mg-modal/doc/mg-modal.stories.js +0 -39
- package/dist/collection/components/molecules/mg-pagination/doc/mg-pagination.stories.js +0 -20
- package/dist/collection/components/molecules/mg-panel/doc/mg-panel.stories.js +0 -22
- package/dist/collection/components/molecules/mg-popover/doc/mg-popover.stories.js +0 -34
- package/dist/collection/components/molecules/mg-skip-links/doc/mg-skip-links.stories.js +0 -24
- package/dist/collection/components/molecules/mg-tabs/doc/mg-tabs.stories.js +0 -53
- package/dist/collection/stories/grids.stories.js +0 -7
- package/dist/collection/stories/helpers.stories.js +0 -23
- package/dist/collection/stories/icons.stories.js +0 -25
- package/dist/collection/stories/typography.stories.js +0 -24
- package/dist/mg-components/p-182bd802.js +0 -2
- package/dist/mg-components/p-f7da9dd2.entry.js +0 -1
- package/dist/types/components/atoms/mg-badge/doc/mg-badge.stories.d.ts +0 -13
- package/dist/types/components/atoms/mg-button/doc/mg-button.stories.d.ts +0 -16
- package/dist/types/components/atoms/mg-card/doc/mg-card.stories.d.ts +0 -6
- package/dist/types/components/atoms/mg-character-left/doc/mg-character-left.stories.d.ts +0 -6
- package/dist/types/components/atoms/mg-divider/doc/mg-divider.stories.d.ts +0 -6
- package/dist/types/components/atoms/mg-icon/doc/mg-icon.stories.d.ts +0 -26
- package/dist/types/components/atoms/mg-input-title/doc/mg-input-title.stories.d.ts +0 -6
- package/dist/types/components/atoms/mg-tag/doc/mg-tag.stories.d.ts +0 -6
- package/dist/types/components/atoms/mg-tooltip/doc/mg-tooltip.stories.d.ts +0 -18
- package/dist/types/components/molecules/inputs/mg-input-checkbox/doc/mg-input-checkbox.stories.d.ts +0 -11
- package/dist/types/components/molecules/inputs/mg-input-date/doc/mg-input-date.stories.d.ts +0 -12
- package/dist/types/components/molecules/inputs/mg-input-numeric/doc/mg-input-numeric.stories.d.ts +0 -32
- package/dist/types/components/molecules/inputs/mg-input-password/doc/mg-input-password.stories.d.ts +0 -22
- package/dist/types/components/molecules/inputs/mg-input-radio/doc/mg-input-radio.stories.d.ts +0 -20
- package/dist/types/components/molecules/inputs/mg-input-select/doc/mg-input-select.stories.d.ts +0 -34
- package/dist/types/components/molecules/inputs/mg-input-text/doc/mg-input-text.stories.d.ts +0 -39
- package/dist/types/components/molecules/inputs/mg-input-textarea/doc/mg-input-textarea.stories.d.ts +0 -19
- package/dist/types/components/molecules/inputs/mg-input-toggle/doc/mg-input-toggle.stories.d.ts +0 -12
- package/dist/types/components/molecules/menu/mg-menu/doc/mg-menu.stories.d.ts +0 -22
- package/dist/types/components/molecules/menu/mg-menu-item/doc/mg-menu-item.stories.d.ts +0 -12
- package/dist/types/components/molecules/mg-details/doc/mg-details.stories.d.ts +0 -11
- package/dist/types/components/molecules/mg-form/doc/mg-form.stories.d.ts +0 -11
- package/dist/types/components/molecules/mg-illustrated-message/doc/mg-illustrated-message.stories.d.ts +0 -6
- package/dist/types/components/molecules/mg-message/doc/mg-message.stories.d.ts +0 -26
- package/dist/types/components/molecules/mg-modal/doc/mg-modal.stories.d.ts +0 -13
- package/dist/types/components/molecules/mg-pagination/doc/mg-pagination.stories.d.ts +0 -11
- package/dist/types/components/molecules/mg-panel/doc/mg-panel.stories.d.ts +0 -11
- package/dist/types/components/molecules/mg-popover/doc/mg-popover.stories.d.ts +0 -22
- package/dist/types/components/molecules/mg-skip-links/doc/mg-skip-links.stories.d.ts +0 -11
- package/dist/types/components/molecules/mg-tabs/doc/mg-tabs.stories.d.ts +0 -20
- package/dist/types/home/runner/work/mg-components/mg-components/.stencil/.storybook/utils.d.ts +0 -1
- package/dist/types/stories/grids.stories.d.ts +0 -5
- package/dist/types/stories/helpers.stories.d.ts +0 -13
- package/dist/types/stories/icons.stories.d.ts +0 -13
- package/dist/types/stories/typography.stories.d.ts +0 -5
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
let e,t,n,l=!1,o=!1,s=!1,i=!1,r=!1;const c="http://www.w3.org/1999/xlink",f={},u=e=>"object"==(e=typeof e)||"function"===e;function a(e){var t,n,l;return null!==(l=null===(n=null===(t=e.head)||void 0===t?void 0:t.querySelector('meta[name="csp-nonce"]'))||void 0===n?void 0:n.getAttribute("content"))&&void 0!==l?l:void 0}const d=(e,t,...n)=>{let l=null,o=null,s=null,i=!1,r=!1;const c=[],f=t=>{for(let n=0;n<t.length;n++)l=t[n],Array.isArray(l)?f(l):null!=l&&"boolean"!=typeof l&&((i="function"!=typeof e&&!u(l))&&(l+=""),i&&r?c[c.length-1].t+=l:c.push(i?$(null,l):l),r=i)};if(f(n),t){t.key&&(o=t.key),t.name&&(s=t.name);{const e=t.className||t.class;e&&(t.class="object"!=typeof e?e:Object.keys(e).filter((t=>e[t])).join(" "))}}if("function"==typeof e)return e(null===t?{}:t,c,m);const a=$(e,null);return a.l=t,c.length>0&&(a.o=c),a.i=o,a.u=s,a},$=(e,t)=>({$:0,h:e,t,m:null,o:null,l:null,i:null,u:null}),h={},m={forEach:(e,t)=>e.map(p).forEach(t),map:(e,t)=>e.map(p).map(t).map(y)},p=e=>({vattrs:e.l,vchildren:e.o,vkey:e.i,vname:e.u,vtag:e.h,vtext:e.t}),y=e=>{if("function"==typeof e.vtag){const t=Object.assign({},e.vattrs);return e.vkey&&(t.key=e.vkey),e.vname&&(t.name=e.vname),d(e.vtag,t,...e.vchildren||[])}const t=$(e.vtag,e.vtext);return t.l=e.vattrs,t.o=e.vchildren,t.i=e.vkey,t.u=e.vname,t},b=e=>oe(e).p,v=(e,t,n)=>{const l=b(e);return{emit:e=>w(l,t,{bubbles:!!(4&n),composed:!!(2&n),cancelable:!!(1&n),detail:e})}},w=(e,t,n)=>{const l=he.ce(t,n);return e.dispatchEvent(l),l},g=new WeakMap,k=e=>"sc-"+e.v,j=(e,t,n,l,o,s)=>{if(n!==l){let i=re(e,t),r=t.toLowerCase();if("class"===t){const t=e.classList,o=O(n),s=O(l);t.remove(...o.filter((e=>e&&!s.includes(e)))),t.add(...s.filter((e=>e&&!o.includes(e))))}else if("style"===t){for(const t in n)l&&null!=l[t]||(t.includes("-")?e.style.removeProperty(t):e.style[t]="");for(const t in l)n&&l[t]===n[t]||(t.includes("-")?e.style.setProperty(t,l[t]):e.style[t]=l[t])}else if("key"===t);else if("ref"===t)l&&l(e);else if(i||"o"!==t[0]||"n"!==t[1]){const f=u(l);if((i||f&&null!==l)&&!o)try{if(e.tagName.includes("-"))e[t]=l;else{const o=null==l?"":l;"list"===t?i=!1:null!=n&&e[t]==o||(e[t]=o)}}catch(e){}let a=!1;r!==(r=r.replace(/^xlink\:?/,""))&&(t=r,a=!0),null==l||!1===l?!1===l&&""!==e.getAttribute(t)||(a?e.removeAttributeNS(c,t):e.removeAttribute(t)):(!i||4&s||o)&&!f&&(l=!0===l?"":l,a?e.setAttributeNS(c,t,l):e.setAttribute(t,l))}else t="-"===t[2]?t.slice(3):re(de,r)?r.slice(2):r[2]+t.slice(3),n&&he.rel(e,t,n,!1),l&&he.ael(e,t,l,!1)}},S=/\s/,O=e=>e?e.split(S):[],M=(e,t,n,l)=>{const o=11===t.m.nodeType&&t.m.host?t.m.host:t.m,s=e&&e.l||f,i=t.l||f;for(l in s)l in i||j(o,l,s[l],void 0,n,t.$);for(l in i)j(o,l,s[l],i[l],n,t.$)},x=(o,r,c,f)=>{const u=r.o[c];let a,d,$,h=0;if(l||(s=!0,"slot"===u.h&&(e&&f.classList.add(e+"-s"),u.$|=u.o?2:1)),null!==u.t)a=u.m=$e.createTextNode(u.t);else if(1&u.$)a=u.m=$e.createTextNode("");else{if(i||(i="svg"===u.h),a=u.m=$e.createElementNS(i?"http://www.w3.org/2000/svg":"http://www.w3.org/1999/xhtml",2&u.$?"slot-fb":u.h),i&&"foreignObject"===u.h&&(i=!1),M(null,u,i),null!=e&&a["s-si"]!==e&&a.classList.add(a["s-si"]=e),u.o)for(h=0;h<u.o.length;++h)d=x(o,u,h,a),d&&a.appendChild(d);"svg"===u.h?i=!1:"foreignObject"===a.tagName&&(i=!0)}return a["s-hn"]=n,3&u.$&&(a["s-sr"]=!0,a["s-cr"]=t,a["s-sn"]=u.u||"",$=o&&o.o&&o.o[c],$&&$.h===u.h&&o.m&&C(o.m,!1)),a},C=(e,t)=>{he.$|=1;const l=e.childNodes;for(let e=l.length-1;e>=0;e--){const o=l[e];o["s-hn"]!==n&&o["s-ol"]&&(L(o).insertBefore(o,E(o)),o["s-ol"].remove(),o["s-ol"]=void 0,s=!0),t&&C(o,t)}he.$&=-2},R=(e,t,l,o,s,i)=>{let r,c=e["s-cr"]&&e["s-cr"].parentNode||e;for(c.shadowRoot&&c.tagName===n&&(c=c.shadowRoot);s<=i;++s)o[s]&&(r=x(null,l,s,e),r&&(o[s].m=r,c.insertBefore(r,E(t))))},P=(e,t,n,l,s)=>{for(;t<=n;++t)(l=e[t])&&(s=l.m,H(l),o=!0,s["s-ol"]?s["s-ol"].remove():C(s,!0),s.remove())},T=(e,t)=>e.h===t.h&&("slot"===e.h?e.u===t.u:e.i===t.i),E=e=>e&&e["s-ol"]||e,L=e=>(e["s-ol"]?e["s-ol"]:e).parentNode,N=(e,t)=>{const n=t.m=e.m,l=e.o,o=t.o,s=t.h,r=t.t;let c;null===r?(i="svg"===s||"foreignObject"!==s&&i,"slot"===s||M(e,t,i),null!==l&&null!==o?((e,t,n,l)=>{let o,s,i=0,r=0,c=0,f=0,u=t.length-1,a=t[0],d=t[u],$=l.length-1,h=l[0],m=l[$];for(;i<=u&&r<=$;)if(null==a)a=t[++i];else if(null==d)d=t[--u];else if(null==h)h=l[++r];else if(null==m)m=l[--$];else if(T(a,h))N(a,h),a=t[++i],h=l[++r];else if(T(d,m))N(d,m),d=t[--u],m=l[--$];else if(T(a,m))"slot"!==a.h&&"slot"!==m.h||C(a.m.parentNode,!1),N(a,m),e.insertBefore(a.m,d.m.nextSibling),a=t[++i],m=l[--$];else if(T(d,h))"slot"!==a.h&&"slot"!==m.h||C(d.m.parentNode,!1),N(d,h),e.insertBefore(d.m,a.m),d=t[--u],h=l[++r];else{for(c=-1,f=i;f<=u;++f)if(t[f]&&null!==t[f].i&&t[f].i===h.i){c=f;break}c>=0?(s=t[c],s.h!==h.h?o=x(t&&t[r],n,c,e):(N(s,h),t[c]=void 0,o=s.m),h=l[++r]):(o=x(t&&t[r],n,r,e),h=l[++r]),o&&L(a.m).insertBefore(o,E(a.m))}i>u?R(e,null==l[$+1]?null:l[$+1].m,n,l,r,$):r>$&&P(t,i,u)})(n,l,t,o):null!==o?(null!==e.t&&(n.textContent=""),R(n,null,t,o,0,o.length-1)):null!==l&&P(l,0,l.length-1),i&&"svg"===s&&(i=!1)):(c=n["s-cr"])?c.parentNode.textContent=r:e.t!==r&&(n.data=r)},W=e=>{const t=e.childNodes;let n,l,o,s,i,r;for(l=0,o=t.length;l<o;l++)if(n=t[l],1===n.nodeType){if(n["s-sr"])for(i=n["s-sn"],n.hidden=!1,s=0;s<o;s++)if(r=t[s].nodeType,t[s]["s-hn"]!==n["s-hn"]||""!==i){if(1===r&&i===t[s].getAttribute("slot")){n.hidden=!0;break}}else if(1===r||3===r&&""!==t[s].textContent.trim()){n.hidden=!0;break}W(n)}},A=[],D=e=>{let t,n,l,s,i,r,c=0;const f=e.childNodes,u=f.length;for(;c<u;c++){if(t=f[c],t["s-sr"]&&(n=t["s-cr"])&&n.parentNode)for(l=n.parentNode.childNodes,s=t["s-sn"],r=l.length-1;r>=0;r--)n=l[r],n["s-cn"]||n["s-nr"]||n["s-hn"]===t["s-hn"]||(F(n,s)?(i=A.find((e=>e.g===n)),o=!0,n["s-sn"]=n["s-sn"]||s,i?i.k=t:A.push({k:t,g:n}),n["s-sr"]&&A.map((e=>{F(e.g,n["s-sn"])&&(i=A.find((e=>e.g===n)),i&&!e.k&&(e.k=i.k))}))):A.some((e=>e.g===n))||A.push({g:n}));1===t.nodeType&&D(t)}},F=(e,t)=>1===e.nodeType?null===e.getAttribute("slot")&&""===t||e.getAttribute("slot")===t:e["s-sn"]===t||""===t,H=e=>{e.l&&e.l.ref&&e.l.ref(null),e.o&&e.o.map(H)},U=(e,t)=>{t&&!e.j&&t["s-p"]&&t["s-p"].push(new Promise((t=>e.j=t)))},q=(e,t)=>{if(e.$|=16,!(4&e.$))return U(e,e.S),je((()=>V(e,t)));e.$|=512},V=(e,t)=>{const n=e.O;let l;return t&&(e.$|=256,e.M&&(e.M.map((([e,t])=>I(n,e,t))),e.M=null),l=I(n,"componentWillLoad")),J(l,(()=>_(e,n,t)))},_=async(e,t,n)=>{const l=e.p,o=l["s-rc"];n&&(e=>{const t=e.C,n=e.p,l=t.$,o=((e,t)=>{var n;let l=k(t);const o=ae.get(l);if(e=11===e.nodeType?e:$e,o)if("string"==typeof o){let t,s=g.get(e=e.head||e);if(s||g.set(e,s=new Set),!s.has(l)){{t=$e.createElement("style"),t.innerHTML=o;const l=null!==(n=he.R)&&void 0!==n?n:a($e);null!=l&&t.setAttribute("nonce",l),e.insertBefore(t,e.querySelector("link"))}s&&s.add(l)}}else e.adoptedStyleSheets.includes(o)||(e.adoptedStyleSheets=[...e.adoptedStyleSheets,o]);return l})(n.shadowRoot?n.shadowRoot:n.getRootNode(),t);10&l&&(n["s-sc"]=o,n.classList.add(o+"-h"),2&l&&n.classList.add(o+"-s"))})(e);z(e,t),o&&(o.map((e=>e())),l["s-rc"]=void 0);{const t=l["s-p"],n=()=>B(e);0===t.length?n():(Promise.all(t).then(n),e.$|=4,t.length=0)}},z=(i,r)=>{try{r=r.render(),i.$&=-17,i.$|=2,((i,r)=>{const c=i.p,f=i.C,u=i.P||$(null,null),a=(e=>e&&e.h===h)(r)?r:d(null,null,r);if(n=c.tagName,f.T&&(a.l=a.l||{},f.T.map((([e,t])=>a.l[t]=c[e]))),a.h=null,a.$|=4,i.P=a,a.m=u.m=c.shadowRoot||c,e=c["s-sc"],t=c["s-cr"],l=0!=(1&f.$),o=!1,N(u,a),he.$|=1,s){let e,t,n,l,o,s;D(a.m);let i=0;for(;i<A.length;i++)e=A[i],t=e.g,t["s-ol"]||(n=$e.createTextNode(""),n["s-nr"]=t,t.parentNode.insertBefore(t["s-ol"]=n,t));for(i=0;i<A.length;i++)if(e=A[i],t=e.g,e.k){for(l=e.k.parentNode,o=e.k.nextSibling,n=t["s-ol"];n=n.previousSibling;)if(s=n["s-nr"],s&&s["s-sn"]===t["s-sn"]&&l===s.parentNode&&(s=s.nextSibling,!s||!s["s-nr"])){o=s;break}(!o&&l!==t.parentNode||t.nextSibling!==o)&&t!==o&&(!t["s-hn"]&&t["s-ol"]&&(t["s-hn"]=t["s-ol"].parentNode.nodeName),l.insertBefore(t,o))}else 1===t.nodeType&&(t.hidden=!0)}o&&W(a.m),he.$&=-2,A.length=0})(i,r)}catch(e){ce(e,i.p)}return null},B=e=>{const t=e.p,n=e.O,l=e.S;I(n,"componentDidRender"),64&e.$||(e.$|=64,K(t),I(n,"componentDidLoad"),e.L(t),l||G()),e.N(t),e.j&&(e.j(),e.j=void 0),512&e.$&&ke((()=>q(e,!1))),e.$&=-517},G=()=>{K($e.documentElement),ke((()=>w(de,"appload",{detail:{namespace:"mg-components"}})))},I=(e,t,n)=>{if(e&&e[t])try{return e[t](n)}catch(e){ce(e)}},J=(e,t)=>e&&e.then?e.then(t):t(),K=e=>e.classList.add("hydrated"),Q=(e,t,n)=>{if(t.W){e.watchers&&(t.A=e.watchers);const l=Object.entries(t.W),o=e.prototype;if(l.map((([e,[l]])=>{31&l||2&n&&32&l?Object.defineProperty(o,e,{get(){return((e,t)=>oe(this).D.get(t))(0,e)},set(n){((e,t,n,l)=>{const o=oe(e),s=o.p,i=o.D.get(t),r=o.$,c=o.O;if(n=((e,t)=>null==e||u(e)?e:4&t?"false"!==e&&(""===e||!!e):2&t?parseFloat(e):1&t?e+"":e)(n,l.W[t][0]),(!(8&r)||void 0===i)&&n!==i&&(!Number.isNaN(i)||!Number.isNaN(n))&&(o.D.set(t,n),c)){if(l.A&&128&r){const e=l.A[t];e&&e.map((e=>{try{c[e](n,i,t)}catch(e){ce(e,s)}}))}2==(18&r)&&q(o,!1)}})(this,e,n,t)},configurable:!0,enumerable:!0}):1&n&&64&l&&Object.defineProperty(o,e,{value(...t){const n=oe(this);return n.F.then((()=>n.O[e](...t)))}})})),1&n){const n=new Map;o.attributeChangedCallback=function(e,t,l){he.jmp((()=>{const t=n.get(e);if(this.hasOwnProperty(t))l=this[t],delete this[t];else if(o.hasOwnProperty(t)&&"number"==typeof this[t]&&this[t]==l)return;this[t]=(null!==l||"boolean"!=typeof this[t])&&l}))},e.observedAttributes=l.filter((([e,t])=>15&t[0])).map((([e,l])=>{const o=l[1]||e;return n.set(o,e),512&l[0]&&t.T.push([e,o]),o}))}}return e},X=(e,t={})=>{var n;const l=[],o=t.exclude||[],s=de.customElements,i=$e.head,r=i.querySelector("meta[charset]"),c=$e.createElement("style"),f=[];let u,d=!0;Object.assign(he,t),he.H=new URL(t.resourcesUrl||"./",$e.baseURI).href,e.map((e=>{e[1].map((t=>{const n={$:t[0],v:t[1],W:t[2],U:t[3]};n.W=t[2],n.U=t[3],n.T=[],n.A={};const i=n.v,r=class extends HTMLElement{constructor(e){super(e),ie(e=this,n),1&n.$&&e.attachShadow({mode:"open"})}connectedCallback(){u&&(clearTimeout(u),u=null),d?f.push(this):he.jmp((()=>(e=>{if(0==(1&he.$)){const t=oe(e),n=t.C,l=()=>{};if(1&t.$)Y(e,t,n.U);else{t.$|=1,12&n.$&&(e=>{const t=e["s-cr"]=$e.createComment("");t["s-cn"]=!0,e.insertBefore(t,e.firstChild)})(e);{let n=e;for(;n=n.parentNode||n.host;)if(n["s-p"]){U(t,t.S=n);break}}n.W&&Object.entries(n.W).map((([t,[n]])=>{if(31&n&&e.hasOwnProperty(t)){const n=e[t];delete e[t],e[t]=n}})),(async(e,t,n,l,o)=>{if(0==(32&t.$)){{if(t.$|=32,(o=ue(n)).then){const e=()=>{};o=await o,e()}o.isProxied||(n.A=o.watchers,Q(o,n,2),o.isProxied=!0);const e=()=>{};t.$|=8;try{new o(t)}catch(e){ce(e)}t.$&=-9,t.$|=128,e()}if(o.style){let e=o.style;const t=k(n);if(!ae.has(t)){const l=()=>{};((e,t,n)=>{let l=ae.get(e);pe&&n?(l=l||new CSSStyleSheet,"string"==typeof l?l=t:l.replaceSync(t)):l=t,ae.set(e,l)})(t,e,!!(1&n.$)),l()}}}const s=t.S,i=()=>q(t,!0);s&&s["s-rc"]?s["s-rc"].push(i):i()})(0,t,n)}l()}})(this)))}disconnectedCallback(){he.jmp((()=>(()=>{if(0==(1&he.$)){const e=oe(this),t=e.O;e.q&&(e.q.map((e=>e())),e.q=void 0),I(t,"disconnectedCallback")}})()))}componentOnReady(){return oe(this).V}};n._=e[0],o.includes(i)||s.get(i)||(l.push(i),s.define(i,Q(r,n,1)))}))}));{c.innerHTML=l+"{visibility:hidden}.hydrated{visibility:inherit}",c.setAttribute("data-styles","");const e=null!==(n=he.R)&&void 0!==n?n:a($e);null!=e&&c.setAttribute("nonce",e),i.insertBefore(c,r?r.nextSibling:i.firstChild)}d=!1,f.length?f.map((e=>e.connectedCallback())):he.jmp((()=>u=setTimeout(G,30)))},Y=(e,t,n)=>{n&&n.map((([n,l,o])=>{const s=ee(e,n),i=Z(t,o),r=te(n);he.ael(s,l,i,r),(t.q=t.q||[]).push((()=>he.rel(s,l,i,r)))}))},Z=(e,t)=>n=>{try{256&e.$?e.O[t](n):(e.M=e.M||[]).push([t,n])}catch(e){ce(e)}},ee=(e,t)=>8&t?de:e,te=e=>0!=(2&e),ne=e=>he.R=e,le=new WeakMap,oe=e=>le.get(e),se=(e,t)=>le.set(t.O=e,t),ie=(e,t)=>{const n={$:0,p:e,C:t,D:new Map};return n.F=new Promise((e=>n.N=e)),n.V=new Promise((e=>n.L=e)),e["s-p"]=[],e["s-rc"]=[],Y(e,n,t.U),le.set(e,n)},re=(e,t)=>t in e,ce=(e,t)=>(0,console.error)(e,t),fe=new Map,ue=e=>{const t=e.v.replace(/-/g,"_"),n=e._,l=fe.get(n);return l?l[t]:import(`./${n}.entry.js`).then((e=>(fe.set(n,e),e[t])),ce)
|
|
2
|
+
/*!__STENCIL_STATIC_IMPORT_SWITCH__*/},ae=new Map,de="undefined"!=typeof window?window:{},$e=de.document||{head:{}},he={$:0,H:"",jmp:e=>e(),raf:e=>requestAnimationFrame(e),ael:(e,t,n,l)=>e.addEventListener(t,n,l),rel:(e,t,n,l)=>e.removeEventListener(t,n,l),ce:(e,t)=>new CustomEvent(e,t)},me=e=>Promise.resolve(e),pe=(()=>{try{return new CSSStyleSheet,"function"==typeof(new CSSStyleSheet).replaceSync}catch(e){}return!1})(),ye=[],be=[],ve=(e,t)=>n=>{e.push(n),r||(r=!0,t&&4&he.$?ke(ge):he.raf(ge))},we=e=>{for(let t=0;t<e.length;t++)try{e[t](performance.now())}catch(e){ce(e)}e.length=0},ge=()=>{we(ye),we(be),(r=ye.length>0)&&he.raf(ge)},ke=e=>me().then(e),je=ve(be,!0);export{h as H,X as b,v as c,b as g,d as h,me as p,se as r,ne as s}
|
|
@@ -35,6 +35,7 @@ $navigation-button-column-gap: 1rem;
|
|
|
35
35
|
background-color: unset;
|
|
36
36
|
border: none;
|
|
37
37
|
font-family: var(--font-family);
|
|
38
|
+
font-weight: 400;
|
|
38
39
|
color: hsl(var(--#{$element}-color-hsl, var(--color-dark)));
|
|
39
40
|
line-height: var(--line-height);
|
|
40
41
|
text-decoration: none;
|
|
@@ -44,7 +45,7 @@ $navigation-button-column-gap: 1rem;
|
|
|
44
45
|
&:disabled,
|
|
45
46
|
&--disabled {
|
|
46
47
|
cursor: default;
|
|
47
|
-
opacity:
|
|
48
|
+
opacity: var(--mg-disabled-opacity);
|
|
48
49
|
}
|
|
49
50
|
&:focus-visible {
|
|
50
51
|
z-index: 10;
|
|
@@ -102,6 +102,7 @@
|
|
|
102
102
|
Global
|
|
103
103
|
*/
|
|
104
104
|
--default-size: 3.5rem;
|
|
105
|
+
--mg-disabled-opacity: 0.4;
|
|
105
106
|
|
|
106
107
|
/*
|
|
107
108
|
<mg-icon>
|
|
@@ -117,7 +118,7 @@
|
|
|
117
118
|
|
|
118
119
|
--mg-button-border-radius: 0.3rem;
|
|
119
120
|
--mg-button-icon-border-radius: var(--default-size);
|
|
120
|
-
--mg-button-disabled-opacity:
|
|
121
|
+
--mg-button-disabled-opacity: var(--mg-disabled-opacity);
|
|
121
122
|
--mg-button-gradient: 1; /* Can only be 1 or 0 to enable disable gradient */
|
|
122
123
|
--mg-button-border-variation: 1; /* Can only be 1 or 0 to enable disable border variation */
|
|
123
124
|
|
|
@@ -143,7 +143,7 @@ export declare class MgInputTextarea {
|
|
|
143
143
|
private handleBlur;
|
|
144
144
|
/**
|
|
145
145
|
* Get pattern validity
|
|
146
|
-
* Pattern is not defined on textarea field
|
|
146
|
+
* Pattern is not defined on textarea field: https://developer.mozilla.org/fr/docs/Web/HTML/Element/Textarea
|
|
147
147
|
*
|
|
148
148
|
* @returns {boolean} is pattern valid
|
|
149
149
|
*/
|
|
@@ -83,7 +83,7 @@ export declare class MgMenuItem {
|
|
|
83
83
|
/**
|
|
84
84
|
* Does an Element have given Status
|
|
85
85
|
*
|
|
86
|
-
* @param {
|
|
86
|
+
* @param {HTMLMgMenuItemElement} mgMenuItemElement to parse
|
|
87
87
|
* @param {MgMenuItem['status']} status to check
|
|
88
88
|
* @returns {boolean} true if element with status is found
|
|
89
89
|
*/
|
|
@@ -119,6 +119,12 @@ export declare class MgMenuItem {
|
|
|
119
119
|
* @returns {void} update displayNotificationBadge value
|
|
120
120
|
*/
|
|
121
121
|
private updateDisplayNotificationBadge;
|
|
122
|
+
/**
|
|
123
|
+
* Method to control if one of component children have active status
|
|
124
|
+
*
|
|
125
|
+
* @returns {boolean} truthy if component has active child
|
|
126
|
+
*/
|
|
127
|
+
private hasActiveChild;
|
|
122
128
|
/*************
|
|
123
129
|
* Lifecycle *
|
|
124
130
|
*************/
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { MgBadge } from '../../atoms/mg-badge/mg-badge';
|
|
2
|
+
import { MgButton } from '../../atoms/mg-button/mg-button';
|
|
3
|
+
import { MgIcon } from '../../atoms/mg-icon/mg-icon';
|
|
4
|
+
import { MgMenuItem } from '../menu/mg-menu-item/mg-menu-item';
|
|
5
|
+
/**
|
|
6
|
+
* prop icon type
|
|
7
|
+
*/
|
|
8
|
+
export type MgActionMoreIconType = {
|
|
9
|
+
icon: MgIcon['icon'];
|
|
10
|
+
};
|
|
11
|
+
/**
|
|
12
|
+
* prop button type
|
|
13
|
+
*/
|
|
14
|
+
export type MgActionMoreButtonType = {
|
|
15
|
+
isIcon: MgButton['isIcon'];
|
|
16
|
+
variant: MgButton['variant'];
|
|
17
|
+
label?: MgButton['label'];
|
|
18
|
+
};
|
|
19
|
+
/**
|
|
20
|
+
* locals message type
|
|
21
|
+
*/
|
|
22
|
+
export type MgActionMoreMessageType = {
|
|
23
|
+
label: string;
|
|
24
|
+
};
|
|
25
|
+
/**
|
|
26
|
+
* prop item type
|
|
27
|
+
*/
|
|
28
|
+
export type MgActionMoreItemType = {
|
|
29
|
+
label: string;
|
|
30
|
+
mouseEventHandler: IMouseEventHandler;
|
|
31
|
+
status?: MgMenuItem['status'];
|
|
32
|
+
icon?: MgIcon['icon'];
|
|
33
|
+
href?: MgMenuItem['href'];
|
|
34
|
+
badge?: Pick<MgBadge, 'value' | 'label'>;
|
|
35
|
+
};
|
|
36
|
+
/**
|
|
37
|
+
* MouseEvent callback interface
|
|
38
|
+
*/
|
|
39
|
+
interface IMouseEventHandler {
|
|
40
|
+
(event: MouseEvent): void;
|
|
41
|
+
}
|
|
42
|
+
export {};
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import { MgActionMoreItemType, MgActionMoreButtonType, MgActionMoreIconType } from './mg-action-more.conf';
|
|
2
|
+
export declare class MgActionMore {
|
|
3
|
+
/************
|
|
4
|
+
* Internal *
|
|
5
|
+
************/
|
|
6
|
+
private readonly name;
|
|
7
|
+
private readonly mgPopoverIdentifier;
|
|
8
|
+
private messages;
|
|
9
|
+
/**************
|
|
10
|
+
* Decorators *
|
|
11
|
+
**************/
|
|
12
|
+
/**
|
|
13
|
+
* Get component DOM element
|
|
14
|
+
*/
|
|
15
|
+
element: HTMLMgActionMoreElement;
|
|
16
|
+
/**
|
|
17
|
+
* Define displaied icon
|
|
18
|
+
* Default: {icon: 'ellipsis'}
|
|
19
|
+
*/
|
|
20
|
+
icon: MgActionMoreIconType;
|
|
21
|
+
validateIcon(newValue: MgActionMore['icon']): void;
|
|
22
|
+
/**
|
|
23
|
+
* Define button properties
|
|
24
|
+
* Default: {variant: 'flat', isIcon: true}.
|
|
25
|
+
*/
|
|
26
|
+
button: MgActionMoreButtonType;
|
|
27
|
+
validateButton(newValue: MgActionMore['button']): void;
|
|
28
|
+
/**
|
|
29
|
+
* Define the menu-items elements
|
|
30
|
+
*/
|
|
31
|
+
items: MgActionMoreItemType[];
|
|
32
|
+
validateItems(newValue: MgActionMore['items']): void;
|
|
33
|
+
/**
|
|
34
|
+
* Define if chevron is display
|
|
35
|
+
*/
|
|
36
|
+
displayChevron: boolean;
|
|
37
|
+
validateDisplayChevron(newValue: MgActionMore['displayChevron']): void;
|
|
38
|
+
/**
|
|
39
|
+
* Menu expanded state
|
|
40
|
+
* Default: false.
|
|
41
|
+
*/
|
|
42
|
+
expanded: boolean;
|
|
43
|
+
/************
|
|
44
|
+
* Merthods *
|
|
45
|
+
***********/
|
|
46
|
+
/**
|
|
47
|
+
* Toogle expanded props
|
|
48
|
+
*
|
|
49
|
+
* @returns {void}
|
|
50
|
+
*/
|
|
51
|
+
private toggleExpanded;
|
|
52
|
+
/**
|
|
53
|
+
* Button click handler
|
|
54
|
+
*
|
|
55
|
+
* @returns {void}
|
|
56
|
+
*/
|
|
57
|
+
private handleButton;
|
|
58
|
+
/**
|
|
59
|
+
* Item click handler
|
|
60
|
+
*
|
|
61
|
+
* @param {MouseEvent} event click event
|
|
62
|
+
* @param {MgActionMoreItemType['mouseEventHandler']} customHandler item['mouseEventHandler']
|
|
63
|
+
* @returns {void}
|
|
64
|
+
*/
|
|
65
|
+
private handleItemClick;
|
|
66
|
+
/*************
|
|
67
|
+
* Lifecycle *
|
|
68
|
+
*************/
|
|
69
|
+
/**
|
|
70
|
+
* Validate props
|
|
71
|
+
*
|
|
72
|
+
* @returns {void}
|
|
73
|
+
*/
|
|
74
|
+
componentWillLoad(): void;
|
|
75
|
+
/**
|
|
76
|
+
* Render
|
|
77
|
+
*
|
|
78
|
+
* @returns {HTMLElement} HTML Element
|
|
79
|
+
*/
|
|
80
|
+
render(): HTMLElement;
|
|
81
|
+
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { EventEmitter } from '../../../stencil-public-runtime';
|
|
2
|
-
import { Placement } from '@popperjs/core';
|
|
3
2
|
import { ClassList } from '../../../utils/components.utils';
|
|
3
|
+
import { Placement } from '@popperjs/core';
|
|
4
4
|
export declare class MgPopover {
|
|
5
5
|
/************
|
|
6
6
|
* Internal *
|
|
@@ -9,6 +9,7 @@ export declare class MgPopover {
|
|
|
9
9
|
private popover;
|
|
10
10
|
private closeButtonId;
|
|
11
11
|
private windows;
|
|
12
|
+
private resizeObserver;
|
|
12
13
|
private messages;
|
|
13
14
|
private readonly classArrowHide;
|
|
14
15
|
/**************
|
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
* It contains typing information for all components that exist in this project.
|
|
6
6
|
*/
|
|
7
7
|
import { HTMLStencilElement, JSXBase } from "./stencil-public-runtime";
|
|
8
|
+
import { MgActionMoreButtonType, MgActionMoreIconType, MgActionMoreItemType } from "./components/molecules/mg-action-more/mg-action-more.conf";
|
|
8
9
|
import { BadgeVariantType } from "./components/atoms/mg-badge/mg-badge.conf";
|
|
9
10
|
import { ButtonType, VariantType } from "./components/atoms/mg-button/mg-button.conf";
|
|
10
11
|
import { IconSizeType, IconVariantType } from "./components/atoms/mg-icon/mg-icon.conf";
|
|
@@ -20,6 +21,24 @@ import { SkipLink } from "./components/molecules/mg-skip-links/mg-skip-links.con
|
|
|
20
21
|
import { SizeType, TabItem } from "./components/molecules/mg-tabs/mg-tabs.conf";
|
|
21
22
|
import { TagVariantType } from "./components/atoms/mg-tag/mg-tag.conf";
|
|
22
23
|
export namespace Components {
|
|
24
|
+
interface MgActionMore {
|
|
25
|
+
/**
|
|
26
|
+
* Define button properties Default: {variant: 'flat', isIcon: true}.
|
|
27
|
+
*/
|
|
28
|
+
"button": MgActionMoreButtonType;
|
|
29
|
+
/**
|
|
30
|
+
* Define if chevron is display
|
|
31
|
+
*/
|
|
32
|
+
"displayChevron": boolean;
|
|
33
|
+
/**
|
|
34
|
+
* Define displaied icon Default: {icon: 'ellipsis'}
|
|
35
|
+
*/
|
|
36
|
+
"icon": MgActionMoreIconType;
|
|
37
|
+
/**
|
|
38
|
+
* Define the menu-items elements
|
|
39
|
+
*/
|
|
40
|
+
"items": MgActionMoreItemType[];
|
|
41
|
+
}
|
|
23
42
|
interface MgBadge {
|
|
24
43
|
/**
|
|
25
44
|
* Badge label. Include short description. Required for accessibility
|
|
@@ -942,6 +961,10 @@ export namespace Components {
|
|
|
942
961
|
* Component current page
|
|
943
962
|
*/
|
|
944
963
|
"currentPage": number;
|
|
964
|
+
/**
|
|
965
|
+
* Hide navigation label
|
|
966
|
+
*/
|
|
967
|
+
"hideNavigationLabels": boolean;
|
|
945
968
|
/**
|
|
946
969
|
* Identifier is used for the element ID (id is a reserved prop in Stencil.js) If not set, it will be created.
|
|
947
970
|
*/
|
|
@@ -1153,6 +1176,12 @@ export interface MgTabsCustomEvent<T> extends CustomEvent<T> {
|
|
|
1153
1176
|
target: HTMLMgTabsElement;
|
|
1154
1177
|
}
|
|
1155
1178
|
declare global {
|
|
1179
|
+
interface HTMLMgActionMoreElement extends Components.MgActionMore, HTMLStencilElement {
|
|
1180
|
+
}
|
|
1181
|
+
var HTMLMgActionMoreElement: {
|
|
1182
|
+
prototype: HTMLMgActionMoreElement;
|
|
1183
|
+
new (): HTMLMgActionMoreElement;
|
|
1184
|
+
};
|
|
1156
1185
|
interface HTMLMgBadgeElement extends Components.MgBadge, HTMLStencilElement {
|
|
1157
1186
|
}
|
|
1158
1187
|
var HTMLMgBadgeElement: {
|
|
@@ -1334,6 +1363,7 @@ declare global {
|
|
|
1334
1363
|
new (): HTMLMgTooltipElement;
|
|
1335
1364
|
};
|
|
1336
1365
|
interface HTMLElementTagNameMap {
|
|
1366
|
+
"mg-action-more": HTMLMgActionMoreElement;
|
|
1337
1367
|
"mg-badge": HTMLMgBadgeElement;
|
|
1338
1368
|
"mg-button": HTMLMgButtonElement;
|
|
1339
1369
|
"mg-card": HTMLMgCardElement;
|
|
@@ -1367,6 +1397,24 @@ declare global {
|
|
|
1367
1397
|
}
|
|
1368
1398
|
}
|
|
1369
1399
|
declare namespace LocalJSX {
|
|
1400
|
+
interface MgActionMore {
|
|
1401
|
+
/**
|
|
1402
|
+
* Define button properties Default: {variant: 'flat', isIcon: true}.
|
|
1403
|
+
*/
|
|
1404
|
+
"button"?: MgActionMoreButtonType;
|
|
1405
|
+
/**
|
|
1406
|
+
* Define if chevron is display
|
|
1407
|
+
*/
|
|
1408
|
+
"displayChevron"?: boolean;
|
|
1409
|
+
/**
|
|
1410
|
+
* Define displaied icon Default: {icon: 'ellipsis'}
|
|
1411
|
+
*/
|
|
1412
|
+
"icon"?: MgActionMoreIconType;
|
|
1413
|
+
/**
|
|
1414
|
+
* Define the menu-items elements
|
|
1415
|
+
*/
|
|
1416
|
+
"items": MgActionMoreItemType[];
|
|
1417
|
+
}
|
|
1370
1418
|
interface MgBadge {
|
|
1371
1419
|
/**
|
|
1372
1420
|
* Badge label. Include short description. Required for accessibility
|
|
@@ -2343,6 +2391,10 @@ declare namespace LocalJSX {
|
|
|
2343
2391
|
* Component current page
|
|
2344
2392
|
*/
|
|
2345
2393
|
"currentPage"?: number;
|
|
2394
|
+
/**
|
|
2395
|
+
* Hide navigation label
|
|
2396
|
+
*/
|
|
2397
|
+
"hideNavigationLabels"?: boolean;
|
|
2346
2398
|
/**
|
|
2347
2399
|
* Identifier is used for the element ID (id is a reserved prop in Stencil.js) If not set, it will be created.
|
|
2348
2400
|
*/
|
|
@@ -2501,6 +2553,7 @@ declare namespace LocalJSX {
|
|
|
2501
2553
|
"placement"?: Placement;
|
|
2502
2554
|
}
|
|
2503
2555
|
interface IntrinsicElements {
|
|
2556
|
+
"mg-action-more": MgActionMore;
|
|
2504
2557
|
"mg-badge": MgBadge;
|
|
2505
2558
|
"mg-button": MgButton;
|
|
2506
2559
|
"mg-card": MgCard;
|
|
@@ -2537,6 +2590,7 @@ export { LocalJSX as JSX };
|
|
|
2537
2590
|
declare module "@stencil/core" {
|
|
2538
2591
|
export namespace JSX {
|
|
2539
2592
|
interface IntrinsicElements {
|
|
2593
|
+
"mg-action-more": LocalJSX.MgActionMore & JSXBase.HTMLAttributes<HTMLMgActionMoreElement>;
|
|
2540
2594
|
"mg-badge": LocalJSX.MgBadge & JSXBase.HTMLAttributes<HTMLMgBadgeElement>;
|
|
2541
2595
|
"mg-button": LocalJSX.MgButton & JSXBase.HTMLAttributes<HTMLMgButtonElement>;
|
|
2542
2596
|
"mg-card": LocalJSX.MgCard & JSXBase.HTMLAttributes<HTMLMgCardElement>;
|
|
@@ -22,7 +22,9 @@ declare const messages: {
|
|
|
22
22
|
};
|
|
23
23
|
form: {
|
|
24
24
|
required: string;
|
|
25
|
+
requiredSingle: string;
|
|
25
26
|
allRequired: string;
|
|
27
|
+
allRequiredSingle: string;
|
|
26
28
|
};
|
|
27
29
|
message: {
|
|
28
30
|
closeButton: string;
|
|
@@ -55,6 +57,9 @@ declare const messages: {
|
|
|
55
57
|
moreLabel: string;
|
|
56
58
|
badgeLabel: string;
|
|
57
59
|
};
|
|
60
|
+
actionMore: {
|
|
61
|
+
label: string;
|
|
62
|
+
};
|
|
58
63
|
};
|
|
59
64
|
fr: {
|
|
60
65
|
errors: {
|
|
@@ -79,7 +84,9 @@ declare const messages: {
|
|
|
79
84
|
};
|
|
80
85
|
form: {
|
|
81
86
|
required: string;
|
|
87
|
+
requiredSingle: string;
|
|
82
88
|
allRequired: string;
|
|
89
|
+
allRequiredSingle: string;
|
|
83
90
|
};
|
|
84
91
|
message: {
|
|
85
92
|
closeButton: string;
|
|
@@ -112,16 +119,19 @@ declare const messages: {
|
|
|
112
119
|
moreLabel: string;
|
|
113
120
|
badgeLabel: string;
|
|
114
121
|
};
|
|
122
|
+
actionMore: {
|
|
123
|
+
label: string;
|
|
124
|
+
};
|
|
115
125
|
};
|
|
116
126
|
};
|
|
117
127
|
/**
|
|
118
128
|
* Get Intl object
|
|
119
129
|
*
|
|
120
130
|
* @param {HTMLElement} element element we need to get the language
|
|
121
|
-
* @returns {{ locale: string; messages: unknown }} messages object
|
|
131
|
+
* @returns {{ locale: string; messages: Record<string, unknown> }} messages object
|
|
122
132
|
*/
|
|
123
133
|
export declare const initLocales: (element: HTMLElement) => {
|
|
124
134
|
locale: string;
|
|
125
|
-
messages: unknown
|
|
135
|
+
messages: Record<string, unknown>;
|
|
126
136
|
};
|
|
127
137
|
export {};
|
|
@@ -257,6 +257,15 @@ export declare function getAssetPath(path: string): string;
|
|
|
257
257
|
* @returns the set path
|
|
258
258
|
*/
|
|
259
259
|
export declare function setAssetPath(path: string): string;
|
|
260
|
+
/**
|
|
261
|
+
* Used to specify a nonce value that corresponds with an application's
|
|
262
|
+
* [Content Security Policy (CSP)](https://developer.mozilla.org/en-US/docs/Web/HTTP/CSP).
|
|
263
|
+
* When set, the nonce will be added to all dynamically created script and style tags at runtime.
|
|
264
|
+
* Alternatively, the nonce value can be set on a `meta` tag in the DOM head
|
|
265
|
+
* (<meta name="csp-nonce" content="{ nonce value here }" />) and will result in the same behavior.
|
|
266
|
+
* @param nonce The value to be used for the nonce attribute.
|
|
267
|
+
*/
|
|
268
|
+
export declare function setNonce(nonce: string): void;
|
|
260
269
|
/**
|
|
261
270
|
* Retrieve a Stencil element for a given reference
|
|
262
271
|
* @param ref the ref to get the Stencil element for
|
|
@@ -7,7 +7,7 @@ export declare class OverflowBehavior {
|
|
|
7
7
|
private element;
|
|
8
8
|
private render;
|
|
9
9
|
private resizeObserver;
|
|
10
|
-
private
|
|
10
|
+
private moreElement;
|
|
11
11
|
private children;
|
|
12
12
|
constructor(element: Element, render: () => HTMLElement);
|
|
13
13
|
/**********
|
|
@@ -19,12 +19,6 @@ export declare class OverflowBehavior {
|
|
|
19
19
|
* @returns {void}
|
|
20
20
|
*/
|
|
21
21
|
disconnect: () => void;
|
|
22
|
-
/**
|
|
23
|
-
* Update more element status if active child
|
|
24
|
-
*
|
|
25
|
-
* @returns {void}
|
|
26
|
-
*/
|
|
27
|
-
updateActiveStatus: () => void;
|
|
28
22
|
/************
|
|
29
23
|
* Internal *
|
|
30
24
|
************/
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
* @param {string} currency currency to apply
|
|
7
7
|
* @returns {string} formatted currency
|
|
8
8
|
*/
|
|
9
|
-
export declare
|
|
9
|
+
export declare const localeCurrency: (number: number, locale: string, currency: string) => string;
|
|
10
10
|
/**
|
|
11
11
|
* Format number to locale
|
|
12
12
|
*
|
|
@@ -14,7 +14,7 @@ export declare function localeCurrency(number: number, locale: string, currency:
|
|
|
14
14
|
* @param {string} locale locale to apply
|
|
15
15
|
* @returns {string} formatted number
|
|
16
16
|
*/
|
|
17
|
-
export declare
|
|
17
|
+
export declare const localeNumber: (number: number, locale: string) => string;
|
|
18
18
|
/**
|
|
19
19
|
* Date RegExp
|
|
20
20
|
*/
|
|
@@ -26,7 +26,7 @@ export declare const dateRegExp: RegExp;
|
|
|
26
26
|
* @param {string} locale locale to apply
|
|
27
27
|
* @returns {string} formatted date
|
|
28
28
|
*/
|
|
29
|
-
export declare
|
|
29
|
+
export declare const localeDate: (date: string, locale: string) => string;
|
|
30
30
|
/**
|
|
31
31
|
* Get locale and messages
|
|
32
32
|
* We load the defined locale but for now we only support the first subtag for messages
|
|
@@ -34,9 +34,9 @@ export declare function localeDate(date: string, locale: string): string;
|
|
|
34
34
|
* @param {HTMLElement} element element we need to get the language
|
|
35
35
|
* @param {unknown} messages messages to use
|
|
36
36
|
* @param {string} defaultLocale default messages locale
|
|
37
|
-
* @returns {{ locale: string; messages: unknown }} messages object
|
|
37
|
+
* @returns {{ locale: string; messages: Record<string, unknown> }} messages object
|
|
38
38
|
*/
|
|
39
39
|
export declare const getLocaleMessages: (element: HTMLElement, messages: unknown, defaultLocale: string) => {
|
|
40
40
|
locale: string;
|
|
41
|
-
messages: unknown
|
|
41
|
+
messages: Record<string, unknown>;
|
|
42
42
|
};
|
|
@@ -70,9 +70,27 @@ export declare const setupResizeObserverMock: ({ disconnect, observe }: setupRes
|
|
|
70
70
|
/**
|
|
71
71
|
* force popover id when component use randomed identifier
|
|
72
72
|
*
|
|
73
|
-
* @param {Element}
|
|
73
|
+
* @param {Element} component element wich include mg-popover
|
|
74
74
|
* @param {string} id new fixed id
|
|
75
|
+
* @param {string} interactiveElement element where attribute 'aria-controls' is set
|
|
75
76
|
* @returns {void}
|
|
76
77
|
*/
|
|
77
|
-
export declare const forcePopoverId: (
|
|
78
|
+
export declare const forcePopoverId: (component: Element, id: string, interactiveElement?: string) => void;
|
|
79
|
+
/**
|
|
80
|
+
* fix popper console.error in test
|
|
81
|
+
* it is generated in @popperjs/core/dist/cjs/popper.js l.1859
|
|
82
|
+
* this is due to internal function isHTMLElement(), so we can not mock it directly.
|
|
83
|
+
* this function check if test DOM element mockHTMLElement instance is 'instanceof HTMLElement'
|
|
84
|
+
* so we only override the console.error side effect for this error
|
|
85
|
+
*
|
|
86
|
+
* @returns {void}
|
|
87
|
+
*/
|
|
88
|
+
export declare const mockConsoleError: () => void;
|
|
89
|
+
/**
|
|
90
|
+
* Add missing window.frames property to test context
|
|
91
|
+
* usefull for component with iframe listeners, ex: mg-popover
|
|
92
|
+
*
|
|
93
|
+
* @returns {void}
|
|
94
|
+
*/
|
|
95
|
+
export declare const mockWindowFrames: () => void;
|
|
78
96
|
export {};
|
package/loader/index.d.ts
CHANGED
|
@@ -10,3 +10,12 @@ export interface CustomElementsDefineOptions {
|
|
|
10
10
|
}
|
|
11
11
|
export declare function defineCustomElements(win?: Window, opts?: CustomElementsDefineOptions): Promise<void>;
|
|
12
12
|
export declare function applyPolyfills(): Promise<void>;
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* Used to specify a nonce value that corresponds with an application's CSP.
|
|
16
|
+
* When set, the nonce will be added to all dynamically created script and style tags at runtime.
|
|
17
|
+
* Alternatively, the nonce value can be set on a meta tag in the DOM head
|
|
18
|
+
* (<meta name="csp-nonce" content="{ nonce value here }" />) which
|
|
19
|
+
* will result in the same behavior.
|
|
20
|
+
*/
|
|
21
|
+
export declare function setNonce(nonce: string): void;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mgdis/mg-components",
|
|
3
|
-
"version": "5.
|
|
3
|
+
"version": "5.7.0",
|
|
4
4
|
"description": "MG Components",
|
|
5
5
|
"packageManager": "pnpm@7.17.1",
|
|
6
6
|
"engineStrict": true,
|
|
@@ -29,49 +29,50 @@
|
|
|
29
29
|
},
|
|
30
30
|
"dependencies": {
|
|
31
31
|
"@popperjs/core": "^2.11.6",
|
|
32
|
-
"@stencil/core": "^2.
|
|
32
|
+
"@stencil/core": "^2.22.1",
|
|
33
33
|
"normalize.css": "^8.0.1"
|
|
34
34
|
},
|
|
35
35
|
"devDependencies": {
|
|
36
36
|
"@babel/core": "^7.20.12",
|
|
37
|
-
"@babel/plugin-transform-react-jsx": "^7.20.
|
|
37
|
+
"@babel/plugin-transform-react-jsx": "^7.20.13",
|
|
38
38
|
"@pxtrn/storybook-addon-docs-stencil": "^6.4.1",
|
|
39
39
|
"@stencil/eslint-plugin": "^0.4.0",
|
|
40
40
|
"@stencil/sass": "^1.5.2",
|
|
41
|
-
"@storybook/addon-a11y": "^6.5.
|
|
42
|
-
"@storybook/addon-actions": "^6.5.
|
|
43
|
-
"@storybook/addon-docs": "^6.5.
|
|
44
|
-
"@storybook/addon-essentials": "^6.5.
|
|
45
|
-
"@storybook/addon-links": "^6.5.
|
|
46
|
-
"@storybook/html": "^6.5.
|
|
41
|
+
"@storybook/addon-a11y": "^6.5.16",
|
|
42
|
+
"@storybook/addon-actions": "^6.5.16",
|
|
43
|
+
"@storybook/addon-docs": "^6.5.16",
|
|
44
|
+
"@storybook/addon-essentials": "^6.5.16",
|
|
45
|
+
"@storybook/addon-links": "^6.5.16",
|
|
46
|
+
"@storybook/html": "^6.5.16",
|
|
47
47
|
"@storybook/preset-scss": "^1.0.3",
|
|
48
48
|
"@types/jest": "^26.0.24",
|
|
49
49
|
"@types/jest-image-snapshot": "^4.3.2",
|
|
50
|
+
"@types/node": "^18.14.0",
|
|
50
51
|
"@typescript-eslint/eslint-plugin": "^4.33.0",
|
|
51
52
|
"@typescript-eslint/parser": "^4.33.0",
|
|
52
53
|
"babel-loader": "^8.3.0",
|
|
53
54
|
"babel-plugin-jsx-pragmatic": "^1.0.2",
|
|
54
|
-
"chromatic": "^6.
|
|
55
|
+
"chromatic": "^6.15.0",
|
|
55
56
|
"css-loader": "^5.2.7",
|
|
56
57
|
"eslint": "^7.32.0",
|
|
57
58
|
"eslint-plugin-jsdoc": "^38.1.6",
|
|
58
59
|
"eslint-plugin-jsx-a11y": "^6.7.1",
|
|
59
|
-
"eslint-plugin-react": "^7.32.
|
|
60
|
+
"eslint-plugin-react": "^7.32.2",
|
|
60
61
|
"eslint-plugin-storybook": "^0.6.10",
|
|
61
62
|
"husky": "^7.0.4",
|
|
62
63
|
"jest": "^26.6.3",
|
|
63
64
|
"jest-cli": "^26.6.3",
|
|
64
65
|
"jest-image-snapshot": "^4.5.1",
|
|
65
66
|
"jest-junit": "^13.2.0",
|
|
66
|
-
"jsx-dom": "^8.0.
|
|
67
|
+
"jsx-dom": "^8.0.4",
|
|
67
68
|
"npm-run-all": "^4.1.5",
|
|
68
|
-
"prettier": "^2.8.
|
|
69
|
+
"prettier": "^2.8.3",
|
|
69
70
|
"puppeteer": "^13.7.0",
|
|
70
|
-
"sass": "^1.
|
|
71
|
+
"sass": "^1.58.0",
|
|
71
72
|
"sass-loader": "^10.4.1",
|
|
72
73
|
"style-loader": "^2.0.0",
|
|
73
74
|
"ts-node": "^10.9.1",
|
|
74
|
-
"turbo": "^1.
|
|
75
|
+
"turbo": "^1.8.1",
|
|
75
76
|
"typescript": "~4.4.4"
|
|
76
77
|
},
|
|
77
78
|
"license": "BSD-3-Clause",
|
|
@@ -85,7 +86,7 @@
|
|
|
85
86
|
"lint:prettier": "prettier --check **/*.{ts,tsx,scss,html,mdx,json}",
|
|
86
87
|
"lint:prettier:fix": "prettier --write **/*.{ts,tsx,scss,html,mdx,json}",
|
|
87
88
|
"test": "TZ=UTC stencil test --spec --e2e",
|
|
88
|
-
"test:unit": "TZ=UTC stencil test --spec",
|
|
89
|
+
"test:unit": "TZ=UTC stencil test --spec --collectCoverage --reporters=\"default\" --reporters=\"jest-junit\"",
|
|
89
90
|
"test:e2e": "stencil test --e2e",
|
|
90
91
|
"test.watch": "stencil test --spec --e2e --watchAll",
|
|
91
92
|
"generate": "stencil generate",
|
package/readme.md
CHANGED
|
@@ -102,24 +102,6 @@ When a selector contains too many declaration it is recommended to organize them
|
|
|
102
102
|
}
|
|
103
103
|
```
|
|
104
104
|
|
|
105
|
-
### Accessibility
|
|
106
|
-
|
|
107
|
-
A good pratice is to manage hover, focus and active state at the same place.
|
|
108
|
-
|
|
109
|
-
```SCSS
|
|
110
|
-
/* SCSS */
|
|
111
|
-
button {
|
|
112
|
-
&:hover, &:focus, &:active {
|
|
113
|
-
text-decoration: underline;
|
|
114
|
-
}
|
|
115
|
-
}
|
|
116
|
-
|
|
117
|
-
/* CSS */
|
|
118
|
-
button:hover, button:focus, button:active {
|
|
119
|
-
text-decoration: underline;
|
|
120
|
-
}
|
|
121
|
-
```
|
|
122
|
-
|
|
123
105
|
## Storybook
|
|
124
106
|
|
|
125
107
|
The plugin [storybook-addon-docs-stencil
|