@mgdis/mg-components 5.16.0 → 5.18.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-fede8ee2.js → index-c042e24b.js} +321 -68
- package/dist/cjs/index-c042e24b.js.map +1 -0
- package/dist/cjs/index.cjs.js +2 -0
- package/dist/cjs/index.cjs.js.map +1 -0
- package/dist/cjs/loader.cjs.js +5 -12
- package/dist/cjs/loader.cjs.js.map +1 -0
- package/dist/cjs/mg-action-more_34.cjs.entry.js +485 -163
- package/dist/cjs/mg-action-more_34.cjs.entry.js.map +1 -0
- package/dist/cjs/mg-components.cjs.js +5 -3
- package/dist/cjs/mg-components.cjs.js.map +1 -0
- package/dist/cjs/mg-item-more.cjs.entry.js +4 -2
- package/dist/cjs/mg-item-more.cjs.entry.js.map +1 -0
- package/dist/cjs/{mg-menu.conf-f9d0ddec.js → mg-menu.conf-43aacf30.js} +2 -0
- package/dist/cjs/mg-menu.conf-43aacf30.js.map +1 -0
- package/dist/collection/assets/icons/index.js +7 -2
- package/dist/collection/collection-manifest.json +37 -37
- package/dist/collection/components/atoms/mg-badge/mg-badge.conf.js +1 -0
- package/dist/collection/components/atoms/mg-badge/mg-badge.conf.js.map +1 -0
- package/dist/collection/components/atoms/mg-badge/mg-badge.js +6 -4
- package/dist/collection/components/atoms/mg-badge/mg-badge.js.map +1 -0
- package/dist/collection/components/atoms/mg-badge/test/mg-badge.e2e.playwright.js +33 -0
- package/dist/collection/components/atoms/mg-badge/test/mg-badge.e2e.playwright.js.map +1 -0
- package/dist/collection/components/atoms/mg-badge/test/mg-badge.spec.js +70 -0
- package/dist/collection/components/atoms/mg-badge/test/mg-badge.spec.js.map +1 -0
- package/dist/collection/components/atoms/mg-button/mg-button.conf.js +1 -0
- package/dist/collection/components/atoms/mg-button/mg-button.conf.js.map +1 -0
- package/dist/collection/components/atoms/mg-button/mg-button.js +10 -6
- package/dist/collection/components/atoms/mg-button/mg-button.js.map +1 -0
- package/dist/collection/components/atoms/mg-button/test/mg-button.e2e.js +91 -0
- package/dist/collection/components/atoms/mg-button/test/mg-button.e2e.js.map +1 -0
- package/dist/collection/components/atoms/mg-button/test/mg-button.spec.js +142 -0
- package/dist/collection/components/atoms/mg-button/test/mg-button.spec.js.map +1 -0
- package/dist/collection/components/atoms/mg-card/mg-card.conf.js +1 -0
- package/dist/collection/components/atoms/mg-card/mg-card.conf.js.map +1 -0
- package/dist/collection/components/atoms/mg-card/mg-card.js +8 -5
- package/dist/collection/components/atoms/mg-card/mg-card.js.map +1 -0
- package/dist/collection/components/atoms/mg-card/test/mg-card.e2e.js +36 -0
- package/dist/collection/components/atoms/mg-card/test/mg-card.e2e.js.map +1 -0
- package/dist/collection/components/atoms/mg-card/test/mg-card.spec.js +43 -0
- package/dist/collection/components/atoms/mg-card/test/mg-card.spec.js.map +1 -0
- package/dist/collection/components/atoms/mg-character-left/mg-character-left.js +3 -2
- package/dist/collection/components/atoms/mg-character-left/mg-character-left.js.map +1 -0
- package/dist/collection/components/atoms/mg-character-left/test/mg-character-left.e2e.js +15 -0
- package/dist/collection/components/atoms/mg-character-left/test/mg-character-left.e2e.js.map +1 -0
- package/dist/collection/components/atoms/mg-character-left/test/mg-character-left.spec.js +42 -0
- package/dist/collection/components/atoms/mg-character-left/test/mg-character-left.spec.js.map +1 -0
- package/dist/collection/components/atoms/mg-divider/mg-divider.js +2 -1
- package/dist/collection/components/atoms/mg-divider/mg-divider.js.map +1 -0
- package/dist/collection/components/atoms/mg-divider/test/mg-divider.e2e.js +11 -0
- package/dist/collection/components/atoms/mg-divider/test/mg-divider.e2e.js.map +1 -0
- package/dist/collection/components/atoms/mg-divider/test/mg-divider.spec.js +14 -0
- package/dist/collection/components/atoms/mg-divider/test/mg-divider.spec.js.map +1 -0
- package/dist/collection/components/atoms/mg-icon/mg-icon.conf.js +1 -0
- package/dist/collection/components/atoms/mg-icon/mg-icon.conf.js.map +1 -0
- package/dist/collection/components/atoms/mg-icon/mg-icon.js +11 -7
- package/dist/collection/components/atoms/mg-icon/mg-icon.js.map +1 -0
- package/dist/collection/components/atoms/mg-icon/test/mg-icon.e2e.js +55 -0
- package/dist/collection/components/atoms/mg-icon/test/mg-icon.e2e.js.map +1 -0
- package/dist/collection/components/atoms/mg-icon/test/mg-icon.spec.js +84 -0
- package/dist/collection/components/atoms/mg-icon/test/mg-icon.spec.js.map +1 -0
- package/dist/collection/components/atoms/mg-input-title/mg-input-title.js +2 -1
- package/dist/collection/components/atoms/mg-input-title/mg-input-title.js.map +1 -0
- package/dist/collection/components/atoms/mg-input-title/test/mg-input-title.e2e.js +18 -0
- package/dist/collection/components/atoms/mg-input-title/test/mg-input-title.e2e.js.map +1 -0
- package/dist/collection/components/atoms/mg-input-title/test/mg-input-title.spec.js +27 -0
- package/dist/collection/components/atoms/mg-input-title/test/mg-input-title.spec.js.map +1 -0
- package/dist/collection/components/atoms/mg-tag/mg-tag.conf.js +1 -0
- package/dist/collection/components/atoms/mg-tag/mg-tag.conf.js.map +1 -0
- package/dist/collection/components/atoms/mg-tag/mg-tag.js +6 -4
- package/dist/collection/components/atoms/mg-tag/mg-tag.js.map +1 -0
- package/dist/collection/components/atoms/mg-tag/test/mg-tag.e2e.js +37 -0
- package/dist/collection/components/atoms/mg-tag/test/mg-tag.e2e.js.map +1 -0
- package/dist/collection/components/atoms/mg-tag/test/mg-tag.spec.js +71 -0
- package/dist/collection/components/atoms/mg-tag/test/mg-tag.spec.js.map +1 -0
- package/dist/collection/components/atoms/mg-tooltip/mg-tooltip-content/mg-tooltip-content.js +2 -1
- package/dist/collection/components/atoms/mg-tooltip/mg-tooltip-content/mg-tooltip-content.js.map +1 -0
- package/dist/collection/components/atoms/mg-tooltip/mg-tooltip.conf.js +1 -0
- package/dist/collection/components/atoms/mg-tooltip/mg-tooltip.conf.js.map +1 -0
- package/dist/collection/components/atoms/mg-tooltip/mg-tooltip.js +38 -16
- package/dist/collection/components/atoms/mg-tooltip/mg-tooltip.js.map +1 -0
- package/dist/collection/components/atoms/mg-tooltip/test/mg-tooltip.e2e.js +138 -0
- package/dist/collection/components/atoms/mg-tooltip/test/mg-tooltip.e2e.js.map +1 -0
- package/dist/collection/components/atoms/mg-tooltip/test/mg-tooltip.spec.js +272 -0
- package/dist/collection/components/atoms/mg-tooltip/test/mg-tooltip.spec.js.map +1 -0
- package/dist/collection/components/molecules/inputs/MgInput.conf.js +1 -0
- package/dist/collection/components/molecules/inputs/MgInput.conf.js.map +1 -0
- package/dist/collection/components/molecules/inputs/MgInput.js +3 -2
- package/dist/collection/components/molecules/inputs/MgInput.js.map +1 -0
- package/dist/collection/components/molecules/inputs/mg-input-checkbox/MgInputCheckboxList.js +2 -1
- package/dist/collection/components/molecules/inputs/mg-input-checkbox/MgInputCheckboxList.js.map +1 -0
- package/dist/collection/components/molecules/inputs/mg-input-checkbox/mg-input-checkbox-paginated/mg-input-checkbox-paginated.js +12 -7
- package/dist/collection/components/molecules/inputs/mg-input-checkbox/mg-input-checkbox-paginated/mg-input-checkbox-paginated.js.map +1 -0
- package/dist/collection/components/molecules/inputs/mg-input-checkbox/mg-input-checkbox.conf.js +1 -0
- package/dist/collection/components/molecules/inputs/mg-input-checkbox/mg-input-checkbox.conf.js.map +1 -0
- package/dist/collection/components/molecules/inputs/mg-input-checkbox/mg-input-checkbox.js +109 -27
- package/dist/collection/components/molecules/inputs/mg-input-checkbox/mg-input-checkbox.js.map +1 -0
- package/dist/collection/components/molecules/inputs/mg-input-checkbox/test/mg-input-checkbox.e2e.playwright.js +243 -0
- package/dist/collection/components/molecules/inputs/mg-input-checkbox/test/mg-input-checkbox.e2e.playwright.js.map +1 -0
- package/dist/collection/components/molecules/inputs/mg-input-checkbox/test/mg-input-checkbox.spec.js +638 -0
- package/dist/collection/components/molecules/inputs/mg-input-checkbox/test/mg-input-checkbox.spec.js.map +1 -0
- package/dist/collection/components/molecules/inputs/mg-input-date/mg-input-date.conf.js +1 -0
- package/dist/collection/components/molecules/inputs/mg-input-date/mg-input-date.conf.js.map +1 -0
- package/dist/collection/components/molecules/inputs/mg-input-date/mg-input-date.js +88 -15
- package/dist/collection/components/molecules/inputs/mg-input-date/mg-input-date.js.map +1 -0
- package/dist/collection/components/molecules/inputs/mg-input-date/test/mg-input-date.e2e.js +123 -0
- package/dist/collection/components/molecules/inputs/mg-input-date/test/mg-input-date.e2e.js.map +1 -0
- package/dist/collection/components/molecules/inputs/mg-input-date/test/mg-input-date.spec.js +379 -0
- package/dist/collection/components/molecules/inputs/mg-input-date/test/mg-input-date.spec.js.map +1 -0
- package/dist/collection/components/molecules/inputs/mg-input-numeric/mg-input-numeric.conf.js +1 -0
- package/dist/collection/components/molecules/inputs/mg-input-numeric/mg-input-numeric.conf.js.map +1 -0
- package/dist/collection/components/molecules/inputs/mg-input-numeric/mg-input-numeric.js +120 -46
- package/dist/collection/components/molecules/inputs/mg-input-numeric/mg-input-numeric.js.map +1 -0
- package/dist/collection/components/molecules/inputs/mg-input-numeric/test/mg-input-numeric.e2e.js +212 -0
- package/dist/collection/components/molecules/inputs/mg-input-numeric/test/mg-input-numeric.e2e.js.map +1 -0
- package/dist/collection/components/molecules/inputs/mg-input-numeric/test/mg-input-numeric.spec.js +456 -0
- package/dist/collection/components/molecules/inputs/mg-input-numeric/test/mg-input-numeric.spec.js.map +1 -0
- package/dist/collection/components/molecules/inputs/mg-input-password/mg-input-password.js +92 -16
- package/dist/collection/components/molecules/inputs/mg-input-password/mg-input-password.js.map +1 -0
- package/dist/collection/components/molecules/inputs/mg-input-password/test/mg-input-password.e2e.js +115 -0
- package/dist/collection/components/molecules/inputs/mg-input-password/test/mg-input-password.e2e.js.map +1 -0
- package/dist/collection/components/molecules/inputs/mg-input-password/test/mg-input-password.spec.js +289 -0
- package/dist/collection/components/molecules/inputs/mg-input-password/test/mg-input-password.spec.js.map +1 -0
- package/dist/collection/components/molecules/inputs/mg-input-radio/mg-input-radio.conf.js +1 -0
- package/dist/collection/components/molecules/inputs/mg-input-radio/mg-input-radio.conf.js.map +1 -0
- package/dist/collection/components/molecules/inputs/mg-input-radio/mg-input-radio.js +91 -15
- package/dist/collection/components/molecules/inputs/mg-input-radio/mg-input-radio.js.map +1 -0
- package/dist/collection/components/molecules/inputs/mg-input-radio/test/mg-input-radio.e2e.js +154 -0
- package/dist/collection/components/molecules/inputs/mg-input-radio/test/mg-input-radio.e2e.js.map +1 -0
- package/dist/collection/components/molecules/inputs/mg-input-radio/test/mg-input-radio.spec.js +355 -0
- package/dist/collection/components/molecules/inputs/mg-input-radio/test/mg-input-radio.spec.js.map +1 -0
- package/dist/collection/components/molecules/inputs/mg-input-select/mg-input-select.conf.js +1 -0
- package/dist/collection/components/molecules/inputs/mg-input-select/mg-input-select.conf.js.map +1 -0
- package/dist/collection/components/molecules/inputs/mg-input-select/mg-input-select.js +95 -17
- package/dist/collection/components/molecules/inputs/mg-input-select/mg-input-select.js.map +1 -0
- package/dist/collection/components/molecules/inputs/mg-input-select/test/mg-input-select.e2e.js +194 -0
- package/dist/collection/components/molecules/inputs/mg-input-select/test/mg-input-select.e2e.js.map +1 -0
- package/dist/collection/components/molecules/inputs/mg-input-select/test/mg-input-select.spec.js +399 -0
- package/dist/collection/components/molecules/inputs/mg-input-select/test/mg-input-select.spec.js.map +1 -0
- package/dist/collection/components/molecules/inputs/mg-input-text/mg-input-text.js +104 -27
- package/dist/collection/components/molecules/inputs/mg-input-text/mg-input-text.js.map +1 -0
- package/dist/collection/components/molecules/inputs/mg-input-text/test/mg-input-text.e2e.js +171 -0
- package/dist/collection/components/molecules/inputs/mg-input-text/test/mg-input-text.e2e.js.map +1 -0
- package/dist/collection/components/molecules/inputs/mg-input-text/test/mg-input-text.spec.js +343 -0
- package/dist/collection/components/molecules/inputs/mg-input-text/test/mg-input-text.spec.js.map +1 -0
- package/dist/collection/components/molecules/inputs/mg-input-textarea/mg-input-textarea.js +108 -31
- package/dist/collection/components/molecules/inputs/mg-input-textarea/mg-input-textarea.js.map +1 -0
- package/dist/collection/components/molecules/inputs/mg-input-textarea/test/mg-input-textarea.e2e.js +129 -0
- package/dist/collection/components/molecules/inputs/mg-input-textarea/test/mg-input-textarea.e2e.js.map +1 -0
- package/dist/collection/components/molecules/inputs/mg-input-textarea/test/mg-input-textarea.spec.js +318 -0
- package/dist/collection/components/molecules/inputs/mg-input-textarea/test/mg-input-textarea.spec.js.map +1 -0
- package/dist/collection/components/molecules/inputs/mg-input-toggle/mg-input-toggle.conf.js +1 -0
- package/dist/collection/components/molecules/inputs/mg-input-toggle/mg-input-toggle.conf.js.map +1 -0
- package/dist/collection/components/molecules/inputs/mg-input-toggle/mg-input-toggle.js +6 -4
- package/dist/collection/components/molecules/inputs/mg-input-toggle/mg-input-toggle.js.map +1 -0
- package/dist/collection/components/molecules/inputs/mg-input-toggle/test/mg-input-toggle.e2e.js +125 -0
- package/dist/collection/components/molecules/inputs/mg-input-toggle/test/mg-input-toggle.e2e.js.map +1 -0
- package/dist/collection/components/molecules/inputs/mg-input-toggle/test/mg-input-toggle.spec.js +203 -0
- package/dist/collection/components/molecules/inputs/mg-input-toggle/test/mg-input-toggle.spec.js.map +1 -0
- package/dist/collection/components/molecules/menu/mg-menu/mg-menu.conf.js +1 -0
- package/dist/collection/components/molecules/menu/mg-menu/mg-menu.conf.js.map +1 -0
- package/dist/collection/components/molecules/menu/mg-menu/mg-menu.js +9 -5
- package/dist/collection/components/molecules/menu/mg-menu/mg-menu.js.map +1 -0
- package/dist/collection/components/molecules/menu/mg-menu/test/mg-menu.e2e.js +268 -0
- package/dist/collection/components/molecules/menu/mg-menu/test/mg-menu.e2e.js.map +1 -0
- package/dist/collection/components/molecules/menu/mg-menu/test/mg-menu.spec.js +175 -0
- package/dist/collection/components/molecules/menu/mg-menu/test/mg-menu.spec.js.map +1 -0
- package/dist/collection/components/molecules/menu/mg-menu-item/mg-menu-item.conf.js +1 -0
- package/dist/collection/components/molecules/menu/mg-menu-item/mg-menu-item.conf.js.map +1 -0
- package/dist/collection/components/molecules/menu/mg-menu-item/mg-menu-item.js +10 -7
- package/dist/collection/components/molecules/menu/mg-menu-item/mg-menu-item.js.map +1 -0
- package/dist/collection/components/molecules/menu/mg-menu-item/test/mg-menu-item.e2e.js +119 -0
- package/dist/collection/components/molecules/menu/mg-menu-item/test/mg-menu-item.e2e.js.map +1 -0
- package/dist/collection/components/molecules/menu/mg-menu-item/test/mg-menu-item.spec.js +295 -0
- package/dist/collection/components/molecules/menu/mg-menu-item/test/mg-menu-item.spec.js.map +1 -0
- 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.conf.js.map +1 -0
- package/dist/collection/components/molecules/mg-action-more/mg-action-more.js +19 -13
- package/dist/collection/components/molecules/mg-action-more/mg-action-more.js.map +1 -0
- package/dist/collection/components/molecules/mg-action-more/test/mg-action-more.e2e.playwright.js +128 -0
- package/dist/collection/components/molecules/mg-action-more/test/mg-action-more.e2e.playwright.js.map +1 -0
- package/dist/collection/components/molecules/mg-action-more/test/mg-action-more.spec.js +187 -0
- package/dist/collection/components/molecules/mg-action-more/test/mg-action-more.spec.js.map +1 -0
- package/dist/collection/components/molecules/mg-details/mg-details.js +2 -1
- package/dist/collection/components/molecules/mg-details/mg-details.js.map +1 -0
- package/dist/collection/components/molecules/mg-details/test/mg-details.e2e.playwright.js +30 -0
- package/dist/collection/components/molecules/mg-details/test/mg-details.e2e.playwright.js.map +1 -0
- package/dist/collection/components/molecules/mg-details/test/mg-details.spec.js +42 -0
- package/dist/collection/components/molecules/mg-details/test/mg-details.spec.js.map +1 -0
- package/dist/collection/components/molecules/mg-form/mg-form.js +8 -6
- package/dist/collection/components/molecules/mg-form/mg-form.js.map +1 -0
- package/dist/collection/components/molecules/mg-form/test/mg-form.e2e.js +169 -0
- package/dist/collection/components/molecules/mg-form/test/mg-form.e2e.js.map +1 -0
- package/dist/collection/components/molecules/mg-form/test/mg-form.spec.js +277 -0
- package/dist/collection/components/molecules/mg-form/test/mg-form.spec.js.map +1 -0
- package/dist/collection/components/molecules/mg-illustrated-message/mg-illustrated-message.js +3 -2
- package/dist/collection/components/molecules/mg-illustrated-message/mg-illustrated-message.js.map +1 -0
- package/dist/collection/components/molecules/mg-illustrated-message/test/mg-illustrated-message.e2e.js +39 -0
- package/dist/collection/components/molecules/mg-illustrated-message/test/mg-illustrated-message.e2e.js.map +1 -0
- package/dist/collection/components/molecules/mg-illustrated-message/test/mg-illustrated-message.spec.js +36 -0
- package/dist/collection/components/molecules/mg-illustrated-message/test/mg-illustrated-message.spec.js.map +1 -0
- package/dist/collection/components/molecules/mg-item-more/mg-item-more.conf.js +1 -0
- package/dist/collection/components/molecules/mg-item-more/mg-item-more.conf.js.map +1 -0
- package/dist/collection/components/molecules/mg-item-more/mg-item-more.js +11 -7
- package/dist/collection/components/molecules/mg-item-more/mg-item-more.js.map +1 -0
- package/dist/collection/components/molecules/mg-item-more/test/mg-item-more.e2e.playwright.js +85 -0
- package/dist/collection/components/molecules/mg-item-more/test/mg-item-more.e2e.playwright.js.map +1 -0
- package/dist/collection/components/molecules/mg-item-more/test/mg-item-more.spec.js +106 -0
- package/dist/collection/components/molecules/mg-item-more/test/mg-item-more.spec.js.map +1 -0
- package/dist/collection/components/molecules/mg-message/mg-message.conf.js +1 -0
- package/dist/collection/components/molecules/mg-message/mg-message.conf.js.map +1 -0
- package/dist/collection/components/molecules/mg-message/mg-message.js +7 -5
- package/dist/collection/components/molecules/mg-message/mg-message.js.map +1 -0
- package/dist/collection/components/molecules/mg-message/test/mg-message.e2e.js +64 -0
- package/dist/collection/components/molecules/mg-message/test/mg-message.e2e.js.map +1 -0
- package/dist/collection/components/molecules/mg-message/test/mg-message.spec.js +109 -0
- package/dist/collection/components/molecules/mg-message/test/mg-message.spec.js.map +1 -0
- package/dist/collection/components/molecules/mg-modal/mg-modal.conf.js +1 -0
- package/dist/collection/components/molecules/mg-modal/mg-modal.conf.js.map +1 -0
- package/dist/collection/components/molecules/mg-modal/mg-modal.js +7 -5
- package/dist/collection/components/molecules/mg-modal/mg-modal.js.map +1 -0
- package/dist/collection/components/molecules/mg-modal/test/mg-modal.e2e.playwright.js +62 -0
- package/dist/collection/components/molecules/mg-modal/test/mg-modal.e2e.playwright.js.map +1 -0
- package/dist/collection/components/molecules/mg-modal/test/mg-modal.e2e.template.js +40 -0
- package/dist/collection/components/molecules/mg-modal/test/mg-modal.e2e.template.js.map +1 -0
- package/dist/collection/components/molecules/mg-modal/test/mg-modal.firefox.e2e.playwright.js +26 -0
- package/dist/collection/components/molecules/mg-modal/test/mg-modal.firefox.e2e.playwright.js.map +1 -0
- package/dist/collection/components/molecules/mg-modal/test/mg-modal.spec.js +122 -0
- package/dist/collection/components/molecules/mg-modal/test/mg-modal.spec.js.map +1 -0
- package/dist/collection/components/molecules/mg-pagination/mg-pagination.conf.js +1 -0
- package/dist/collection/components/molecules/mg-pagination/mg-pagination.conf.js.map +1 -0
- package/dist/collection/components/molecules/mg-pagination/mg-pagination.js +5 -4
- package/dist/collection/components/molecules/mg-pagination/mg-pagination.js.map +1 -0
- package/dist/collection/components/molecules/mg-pagination/test/mg-pagination.e2e.playwright.js +57 -0
- package/dist/collection/components/molecules/mg-pagination/test/mg-pagination.e2e.playwright.js.map +1 -0
- package/dist/collection/components/molecules/mg-pagination/test/mg-pagination.spec.js +121 -0
- package/dist/collection/components/molecules/mg-pagination/test/mg-pagination.spec.js.map +1 -0
- package/dist/collection/components/molecules/mg-panel/mg-panel.conf.js +1 -0
- package/dist/collection/components/molecules/mg-panel/mg-panel.conf.js.map +1 -0
- package/dist/collection/components/molecules/mg-panel/mg-panel.js +17 -12
- package/dist/collection/components/molecules/mg-panel/mg-panel.js.map +1 -0
- package/dist/collection/components/molecules/mg-panel/test/mg-panel.e2e.playwright.js +106 -0
- package/dist/collection/components/molecules/mg-panel/test/mg-panel.e2e.playwright.js.map +1 -0
- package/dist/collection/components/molecules/mg-panel/test/mg-panel.spec.js +213 -0
- package/dist/collection/components/molecules/mg-panel/test/mg-panel.spec.js.map +1 -0
- package/dist/collection/components/molecules/mg-popover/mg-popover-content/mg-popover-content.js +4 -3
- package/dist/collection/components/molecules/mg-popover/mg-popover-content/mg-popover-content.js.map +1 -0
- package/dist/collection/components/molecules/mg-popover/mg-popover.js +40 -18
- package/dist/collection/components/molecules/mg-popover/mg-popover.js.map +1 -0
- package/dist/collection/components/molecules/mg-popover/test/mg-popover.e2e.js +159 -0
- package/dist/collection/components/molecules/mg-popover/test/mg-popover.e2e.js.map +1 -0
- package/dist/collection/components/molecules/mg-popover/test/mg-popover.spec.js +142 -0
- package/dist/collection/components/molecules/mg-popover/test/mg-popover.spec.js.map +1 -0
- package/dist/collection/components/molecules/mg-skip-links/mg-skip-links.conf.js +1 -0
- package/dist/collection/components/molecules/mg-skip-links/mg-skip-links.conf.js.map +1 -0
- package/dist/collection/components/molecules/mg-skip-links/mg-skip-links.js +5 -3
- package/dist/collection/components/molecules/mg-skip-links/mg-skip-links.js.map +1 -0
- package/dist/collection/components/molecules/mg-skip-links/test/mg-skip-links.e2e.js +55 -0
- package/dist/collection/components/molecules/mg-skip-links/test/mg-skip-links.e2e.js.map +1 -0
- package/dist/collection/components/molecules/mg-skip-links/test/mg-skip-links.spec.js +55 -0
- package/dist/collection/components/molecules/mg-skip-links/test/mg-skip-links.spec.js.map +1 -0
- package/dist/collection/components/molecules/mg-tabs/mg-tabs.conf.js +1 -0
- package/dist/collection/components/molecules/mg-tabs/mg-tabs.conf.js.map +1 -0
- package/dist/collection/components/molecules/mg-tabs/mg-tabs.js +8 -5
- package/dist/collection/components/molecules/mg-tabs/mg-tabs.js.map +1 -0
- package/dist/collection/components/molecules/mg-tabs/test/mg-tabs.e2e.playwright.js +76 -0
- package/dist/collection/components/molecules/mg-tabs/test/mg-tabs.e2e.playwright.js.map +1 -0
- package/dist/collection/components/molecules/mg-tabs/test/mg-tabs.spec.js +332 -0
- package/dist/collection/components/molecules/mg-tabs/test/mg-tabs.spec.js.map +1 -0
- package/dist/collection/index.js +1 -0
- package/dist/collection/index.js.map +1 -0
- package/dist/collection/locales/index.js +4 -3
- package/dist/collection/locales/index.js.map +1 -0
- package/dist/collection/locales/index.spec.js +27 -0
- package/dist/collection/locales/index.spec.js.map +1 -0
- package/dist/collection/stories/icon-gallery.js +4 -3
- package/dist/collection/stories/icon-gallery.js.map +1 -0
- package/dist/collection/test/typography.e2e.playwright.js +12 -0
- package/dist/collection/test/typography.e2e.playwright.js.map +1 -0
- package/dist/collection/utils/behaviors.utils.js +1 -0
- package/dist/collection/utils/behaviors.utils.js.map +1 -0
- package/dist/collection/utils/behaviors.utils.spec.js +57 -0
- package/dist/collection/utils/behaviors.utils.spec.js.map +1 -0
- package/dist/collection/utils/components.utils.js +7 -0
- package/dist/collection/utils/components.utils.js.map +1 -0
- package/dist/collection/utils/components.utils.spec.js +128 -0
- package/dist/collection/utils/components.utils.spec.js.map +1 -0
- package/dist/collection/utils/e2e.test.utils.js +46 -0
- package/dist/collection/utils/e2e.test.utils.js.map +1 -0
- package/dist/collection/utils/locale.utils.js +1 -0
- package/dist/collection/utils/locale.utils.js.map +1 -0
- package/dist/collection/utils/locale.utils.spec.js +52 -0
- package/dist/collection/utils/locale.utils.spec.js.map +1 -0
- package/dist/collection/utils/playwright.e2e.test.utils.js +100 -0
- package/dist/collection/utils/playwright.e2e.test.utils.js.map +1 -0
- package/dist/collection/utils/stencil.e2e.test.utils.js +33 -0
- package/dist/collection/utils/stencil.e2e.test.utils.js.map +1 -0
- package/dist/collection/utils/unit.test.utils.js +2 -1
- package/dist/collection/utils/unit.test.utils.js.map +1 -0
- package/dist/components/MgInput.js +2 -0
- package/dist/components/MgInput.js.map +1 -0
- package/dist/components/components.utils.js +9 -1
- package/dist/components/components.utils.js.map +1 -0
- package/dist/components/index.d.ts +5 -37
- package/dist/components/index.js +3 -36
- package/dist/components/index.js.map +1 -0
- package/dist/components/index2.js +2 -0
- package/dist/components/index2.js.map +1 -0
- package/dist/components/mg-action-more.js +14 -4
- package/dist/components/mg-action-more.js.map +1 -0
- package/dist/components/mg-badge.js +2 -0
- package/dist/components/mg-badge.js.map +1 -0
- package/dist/components/mg-badge2.js +8 -1
- package/dist/components/mg-badge2.js.map +1 -0
- package/dist/components/mg-button.js +2 -0
- package/dist/components/mg-button.js.map +1 -0
- package/dist/components/mg-button2.js +8 -1
- package/dist/components/mg-button2.js.map +1 -0
- package/dist/components/mg-card.js +2 -0
- package/dist/components/mg-card.js.map +1 -0
- package/dist/components/mg-card2.js +6 -1
- package/dist/components/mg-card2.js.map +1 -0
- package/dist/components/mg-character-left.js +2 -0
- package/dist/components/mg-character-left.js.map +1 -0
- package/dist/components/mg-character-left2.js +5 -1
- package/dist/components/mg-character-left2.js.map +1 -0
- package/dist/components/mg-details.js +7 -1
- package/dist/components/mg-details.js.map +1 -0
- package/dist/components/mg-divider.js +3 -1
- package/dist/components/mg-divider.js.map +1 -0
- package/dist/components/mg-form.js +7 -2
- package/dist/components/mg-form.js.map +1 -0
- package/dist/components/mg-icon.js +2 -0
- package/dist/components/mg-icon.js.map +1 -0
- package/dist/components/mg-icon2.js +21 -3
- package/dist/components/mg-icon2.js.map +1 -0
- package/dist/components/mg-illustrated-message.js +3 -1
- package/dist/components/mg-illustrated-message.js.map +1 -0
- package/dist/components/mg-input-checkbox-paginated.js +2 -0
- package/dist/components/mg-input-checkbox-paginated.js.map +1 -0
- package/dist/components/mg-input-checkbox-paginated2.js +6 -1
- package/dist/components/mg-input-checkbox-paginated2.js.map +1 -0
- package/dist/components/mg-input-checkbox.js +64 -14
- package/dist/components/mg-input-checkbox.js.map +1 -0
- package/dist/components/mg-input-date.js +51 -9
- package/dist/components/mg-input-date.js.map +1 -0
- package/dist/components/mg-input-numeric.js +82 -39
- package/dist/components/mg-input-numeric.js.map +1 -0
- package/dist/components/mg-input-password.js +53 -11
- package/dist/components/mg-input-password.js.map +1 -0
- package/dist/components/mg-input-radio.js +53 -10
- package/dist/components/mg-input-radio.js.map +1 -0
- package/dist/components/mg-input-select.js +2 -0
- package/dist/components/mg-input-select.js.map +1 -0
- package/dist/components/mg-input-select2.js +53 -10
- package/dist/components/mg-input-select2.js.map +1 -0
- package/dist/components/mg-input-text.js +2 -0
- package/dist/components/mg-input-text.js.map +1 -0
- package/dist/components/mg-input-text2.js +64 -23
- package/dist/components/mg-input-text2.js.map +1 -0
- package/dist/components/mg-input-textarea.js +69 -27
- package/dist/components/mg-input-textarea.js.map +1 -0
- package/dist/components/mg-input-title.js +2 -0
- package/dist/components/mg-input-title.js.map +1 -0
- package/dist/components/mg-input-title2.js +6 -1
- package/dist/components/mg-input-title2.js.map +1 -0
- package/dist/components/mg-input-toggle.js +11 -1
- package/dist/components/mg-input-toggle.js.map +1 -0
- package/dist/components/mg-item-more.js +7 -1
- package/dist/components/mg-item-more.js.map +1 -0
- package/dist/components/mg-menu-item.js +2 -0
- package/dist/components/mg-menu-item.js.map +1 -0
- package/dist/components/mg-menu-item2.js +9 -1
- package/dist/components/mg-menu-item2.js.map +1 -0
- package/dist/components/mg-menu.conf.js +2 -0
- package/dist/components/mg-menu.conf.js.map +1 -0
- package/dist/components/mg-menu.js +2 -0
- package/dist/components/mg-menu.js.map +1 -0
- package/dist/components/mg-menu2.js +8 -1
- package/dist/components/mg-menu2.js.map +1 -0
- package/dist/components/mg-message.js +8 -1
- package/dist/components/mg-message.js.map +1 -0
- package/dist/components/mg-modal.js +8 -2
- package/dist/components/mg-modal.js.map +1 -0
- package/dist/components/mg-pagination.js +2 -0
- package/dist/components/mg-pagination.js.map +1 -0
- package/dist/components/mg-pagination2.js +6 -1
- package/dist/components/mg-pagination2.js.map +1 -0
- package/dist/components/mg-panel.js +16 -7
- package/dist/components/mg-panel.js.map +1 -0
- package/dist/components/mg-popover-content.js +2 -0
- package/dist/components/mg-popover-content.js.map +1 -0
- package/dist/components/mg-popover-content2.js +3 -1
- package/dist/components/mg-popover-content2.js.map +1 -0
- package/dist/components/mg-popover.js +2 -0
- package/dist/components/mg-popover.js.map +1 -0
- package/dist/components/mg-popover2.js +40 -15
- package/dist/components/mg-popover2.js.map +1 -0
- package/dist/components/mg-skip-links.js +5 -1
- package/dist/components/mg-skip-links.js.map +1 -0
- package/dist/components/mg-tabs.js +8 -1
- package/dist/components/mg-tabs.js.map +1 -0
- package/dist/components/mg-tag.js +7 -1
- package/dist/components/mg-tag.js.map +1 -0
- package/dist/components/mg-tooltip-content.js +2 -0
- package/dist/components/mg-tooltip-content.js.map +1 -0
- package/dist/components/mg-tooltip-content2.js +3 -1
- package/dist/components/mg-tooltip-content2.js.map +1 -0
- package/dist/components/mg-tooltip.js +2 -0
- package/dist/components/mg-tooltip.js.map +1 -0
- package/dist/components/mg-tooltip2.js +37 -12
- package/dist/components/mg-tooltip2.js.map +1 -0
- package/dist/components/popper.js +2 -0
- package/dist/components/popper.js.map +1 -0
- package/dist/esm/{index-1d40b052.js → index-ce01e63b.js} +321 -68
- package/dist/esm/index-ce01e63b.js.map +1 -0
- package/dist/esm/index.js +2 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/loader.js +6 -13
- package/dist/esm/loader.js.map +1 -0
- package/dist/esm/mg-action-more_34.entry.js +485 -163
- package/dist/esm/mg-action-more_34.entry.js.map +1 -0
- package/dist/esm/mg-components.js +6 -4
- package/dist/esm/mg-components.js.map +1 -0
- package/dist/esm/mg-item-more.entry.js +4 -2
- package/dist/esm/mg-item-more.entry.js.map +1 -0
- package/dist/esm/{mg-menu.conf-2cc079ae.js → mg-menu.conf-012fc9b4.js} +2 -0
- package/dist/esm/mg-menu.conf-012fc9b4.js.map +1 -0
- package/dist/mg-components/index.esm.js +2 -0
- package/dist/mg-components/index.esm.js.map +1 -0
- package/dist/mg-components/mg-components.esm.js +2 -1
- package/dist/mg-components/mg-components.esm.js.map +1 -0
- package/dist/mg-components/p-1aa89acf.js +3 -0
- package/dist/mg-components/p-1aa89acf.js.map +1 -0
- package/dist/mg-components/p-1d7d6fa0.js +2 -0
- package/dist/mg-components/p-1d7d6fa0.js.map +1 -0
- package/dist/mg-components/p-9257e8f1.entry.js +2 -0
- package/dist/mg-components/p-9257e8f1.entry.js.map +1 -0
- package/dist/mg-components/p-ff3ca349.entry.js +2 -0
- package/dist/mg-components/p-ff3ca349.entry.js.map +1 -0
- package/dist/types/components/atoms/mg-badge/test/mg-badge.e2e.playwright.d.ts +1 -0
- package/dist/types/components/atoms/mg-tooltip/mg-tooltip.d.ts +2 -1
- package/dist/types/components/molecules/inputs/mg-input-checkbox/mg-input-checkbox.d.ts +22 -1
- package/dist/types/components/molecules/inputs/mg-input-checkbox/test/mg-input-checkbox.e2e.playwright.d.ts +1 -0
- package/dist/types/components/molecules/inputs/mg-input-date/mg-input-date.d.ts +17 -2
- package/dist/types/components/molecules/inputs/mg-input-numeric/mg-input-numeric.d.ts +35 -20
- package/dist/types/components/molecules/inputs/mg-input-password/mg-input-password.d.ts +16 -1
- package/dist/types/components/molecules/inputs/mg-input-radio/mg-input-radio.d.ts +16 -1
- package/dist/types/components/molecules/inputs/mg-input-select/mg-input-select.d.ts +16 -1
- package/dist/types/components/molecules/inputs/mg-input-text/mg-input-text.d.ts +17 -5
- package/dist/types/components/molecules/inputs/mg-input-textarea/mg-input-textarea.d.ts +17 -5
- package/dist/types/components/molecules/mg-action-more/test/mg-action-more.e2e.playwright.d.ts +2 -0
- package/dist/types/components/molecules/mg-details/test/mg-details.e2e.playwright.d.ts +1 -0
- package/dist/types/components/molecules/mg-form/mg-form.d.ts +1 -1
- package/dist/types/components/molecules/mg-item-more/test/mg-item-more.e2e.playwright.d.ts +1 -0
- package/dist/types/components/molecules/mg-modal/test/mg-modal.e2e.playwright.d.ts +1 -0
- package/dist/types/components/molecules/mg-modal/test/mg-modal.e2e.template.d.ts +12 -0
- package/dist/types/components/molecules/mg-modal/test/mg-modal.firefox.e2e.playwright.d.ts +1 -0
- package/dist/types/components/molecules/mg-pagination/test/mg-pagination.e2e.playwright.d.ts +1 -0
- package/dist/types/components/molecules/mg-panel/mg-panel.d.ts +1 -1
- package/dist/types/components/molecules/mg-panel/test/mg-panel.e2e.playwright.d.ts +1 -0
- package/dist/types/components/molecules/mg-popover/mg-popover.d.ts +1 -0
- package/dist/types/components/molecules/mg-tabs/test/mg-tabs.e2e.playwright.d.ts +1 -0
- package/dist/types/components.d.ts +79 -11
- package/dist/types/stencil-public-runtime.d.ts +43 -17
- package/dist/types/test/typography.e2e.playwright.d.ts +1 -0
- package/dist/types/utils/components.utils.d.ts +6 -0
- package/dist/types/utils/e2e.test.utils.d.ts +22 -0
- package/dist/types/utils/stencil.e2e.test.utils.d.ts +14 -0
- package/loader/index.d.ts +2 -2
- package/package.json +5 -5
- package/dist/esm/polyfills/css-shim.js +0 -1
- package/dist/mg-components/p-067080e4.js +0 -1
- package/dist/mg-components/p-3286bc46.entry.js +0 -1
- package/dist/mg-components/p-3bf1e2f0.js +0 -2
- package/dist/mg-components/p-91f4a30d.entry.js +0 -1
|
@@ -0,0 +1,243 @@
|
|
|
1
|
+
import { setPageContent, expect, describe, describeEach, testEach, updateScreenshotClass, test } from "../../../../../utils/playwright.e2e.test.utils";
|
|
2
|
+
import { createID } from "../../../../../utils/components.utils";
|
|
3
|
+
import { renderAttributes, renderProperties } from "../../../../../utils/e2e.test.utils";
|
|
4
|
+
import { checkboxTypes } from "../mg-input-checkbox.conf";
|
|
5
|
+
const TIMEOUT = 1000;
|
|
6
|
+
const baseArgs = {
|
|
7
|
+
label: 'legend',
|
|
8
|
+
value: [
|
|
9
|
+
{ title: 'Batman', value: false },
|
|
10
|
+
{ title: 'Robin', value: false },
|
|
11
|
+
{ title: 'Joker', value: false },
|
|
12
|
+
{ title: 'Bane', value: false },
|
|
13
|
+
],
|
|
14
|
+
};
|
|
15
|
+
const createHTML = (args, identifier = createID()) => `<mg-input-checkbox ${renderAttributes(Object.assign(Object.assign({}, args), { identifier }))}></mg-input-checkbox><script>${renderProperties(args, `[identifier="${identifier}"]`)}</script>`;
|
|
16
|
+
const waitForInteractiveElement = async (page, type) => {
|
|
17
|
+
// wait few seconds to insure to have the interactive element rendered
|
|
18
|
+
const interactiveElement = await page.locator(type === 'multi' ? 'mg-button[tabindex="0"].hydrated' : 'mg-icon[tabindex="0"].hydrated').first();
|
|
19
|
+
return interactiveElement.waitFor({ timeout: 3000 });
|
|
20
|
+
};
|
|
21
|
+
describe('mg-input-checkbox', () => {
|
|
22
|
+
describeEach(checkboxTypes)('type %s', (type) => {
|
|
23
|
+
testEach([
|
|
24
|
+
Object.assign(Object.assign({}, baseArgs), { readonly: true }),
|
|
25
|
+
Object.assign(Object.assign({}, baseArgs), { readonly: true, labelOnTop: true }),
|
|
26
|
+
Object.assign(Object.assign({}, baseArgs), { disabled: true }),
|
|
27
|
+
Object.assign(Object.assign({}, baseArgs), { inputVerticalList: true, helpText: 'HelpText Message' }),
|
|
28
|
+
Object.assign(Object.assign({}, baseArgs), { inputVerticalList: true, helpText: 'HelpText Message', labelOnTop: true }),
|
|
29
|
+
Object.assign(Object.assign({}, baseArgs), { helpText: `<mg-icon icon='user' size='small'></mg-icon> Welcome batman` }),
|
|
30
|
+
Object.assign(Object.assign({}, baseArgs), { helpText: 'HelpText Message', required: true }),
|
|
31
|
+
Object.assign(Object.assign({}, baseArgs), { helpText: 'HelpText Message', required: true, readonly: true }),
|
|
32
|
+
Object.assign(Object.assign({}, baseArgs), { helpText: 'HelpText Message', required: true, disabled: true }),
|
|
33
|
+
])('Should render with template %s', async (page, args) => {
|
|
34
|
+
await setPageContent(page, createHTML(Object.assign(Object.assign({}, args), { type, value: [
|
|
35
|
+
{ title: 'Batman', value: true },
|
|
36
|
+
{ title: 'Robin', value: false },
|
|
37
|
+
{ title: 'Joker', value: null },
|
|
38
|
+
{ title: 'Bane', value: true, disabled: true },
|
|
39
|
+
] })));
|
|
40
|
+
await expect(page.locator('.e2e-screenshot')).toHaveScreenshot();
|
|
41
|
+
});
|
|
42
|
+
testEach([true, false])(`render with tooltip, case label-on-top %s`, async (page, labelOnTop) => {
|
|
43
|
+
await setPageContent(page, createHTML(Object.assign(Object.assign({}, baseArgs), { tooltip: 'Tooltip message', labelOnTop,
|
|
44
|
+
type })));
|
|
45
|
+
const KEY_TAB = 'Tab';
|
|
46
|
+
await expect(page.locator('mg-input-checkbox.hydrated')).toBeDefined();
|
|
47
|
+
// wait few seconds to insure to have the interactive element rendered
|
|
48
|
+
await waitForInteractiveElement(page, type);
|
|
49
|
+
await expect(page.locator('.e2e-screenshot')).toHaveScreenshot();
|
|
50
|
+
let actions = [KEY_TAB];
|
|
51
|
+
// when label on top tooltip is on first tab (next to label)
|
|
52
|
+
if (!labelOnTop) {
|
|
53
|
+
await updateScreenshotClass(page, { height: '65px', width: '500px' });
|
|
54
|
+
// when type is 'multi' the tooltip is on second tab
|
|
55
|
+
actions = type !== 'multi' ? [...actions, KEY_TAB, KEY_TAB, KEY_TAB, KEY_TAB] : [...actions, KEY_TAB];
|
|
56
|
+
}
|
|
57
|
+
for (const key of actions) {
|
|
58
|
+
await page.keyboard.down(key);
|
|
59
|
+
}
|
|
60
|
+
await page.locator('mg-tooltip-content').waitFor({ timeout: TIMEOUT });
|
|
61
|
+
await expect(page.locator('.e2e-screenshot')).toHaveScreenshot();
|
|
62
|
+
});
|
|
63
|
+
testEach([
|
|
64
|
+
Object.assign(Object.assign({}, baseArgs), { type }),
|
|
65
|
+
Object.assign(Object.assign({}, baseArgs), { type, labelOnTop: true }),
|
|
66
|
+
Object.assign(Object.assign({}, baseArgs), { type, labelHide: true }),
|
|
67
|
+
Object.assign(Object.assign({}, baseArgs), { type, helpText: 'HelpText Message' }),
|
|
68
|
+
])('Should render without tooltip %s', async (page, args) => {
|
|
69
|
+
await setPageContent(page, createHTML(args));
|
|
70
|
+
await page.waitForSelector('mg-input-checkbox.hydrated');
|
|
71
|
+
await expect(page.locator('.e2e-screenshot')).toHaveScreenshot();
|
|
72
|
+
// when multi open checkbox in popover
|
|
73
|
+
if (type === 'multi') {
|
|
74
|
+
// wait few seconds to insure to have the interactive element rendered
|
|
75
|
+
await waitForInteractiveElement(page, type);
|
|
76
|
+
await updateScreenshotClass(page, { width: '300px', height: '200px' });
|
|
77
|
+
await page.keyboard.down('Tab');
|
|
78
|
+
await page.keyboard.down('Enter');
|
|
79
|
+
await page.locator('mg-popover-content').waitFor({ timeout: TIMEOUT });
|
|
80
|
+
}
|
|
81
|
+
await page.keyboard.down('Tab');
|
|
82
|
+
await expect(page.locator('.e2e-screenshot')).toHaveScreenshot();
|
|
83
|
+
await page.locator('mg-input-checkbox .mg-input__input-group:first-of-type input').press('Space');
|
|
84
|
+
await page.keyboard.down('Tab');
|
|
85
|
+
await page.locator('mg-input-checkbox .mg-input__input-group:nth-of-type(2) input').press('Space');
|
|
86
|
+
await page.keyboard.down('Tab');
|
|
87
|
+
await page.locator('mg-input-checkbox .mg-input__input-group:nth-of-type(3) input').press('Space');
|
|
88
|
+
await page.keyboard.down('Tab');
|
|
89
|
+
await page.locator('mg-input-checkbox .mg-input__input-group:nth-of-type(4) input').press('Space');
|
|
90
|
+
await expect(page.locator('.e2e-screenshot')).toHaveScreenshot();
|
|
91
|
+
});
|
|
92
|
+
testEach([
|
|
93
|
+
Object.assign(Object.assign({}, baseArgs), { helpText: 'HelpText Message', required: true, type }),
|
|
94
|
+
Object.assign(Object.assign({}, baseArgs), { helpText: "Message d'aide", lang: 'fr', required: true, type }),
|
|
95
|
+
])('Should render error when leaving an empty required input %s', async (page, args) => {
|
|
96
|
+
await setPageContent(page, createHTML(args));
|
|
97
|
+
await page.waitForSelector('mg-input-checkbox.hydrated');
|
|
98
|
+
// when multi open checkbox in popover
|
|
99
|
+
if (type === 'multi') {
|
|
100
|
+
// wait few seconds to insure to have the interactive element rendered
|
|
101
|
+
await waitForInteractiveElement(page, type);
|
|
102
|
+
await updateScreenshotClass(page, { width: '300px', height: '200px' });
|
|
103
|
+
await page.keyboard.down('Tab');
|
|
104
|
+
await page.keyboard.down('Enter');
|
|
105
|
+
await page.locator('mg-popover-content').waitFor({ timeout: TIMEOUT });
|
|
106
|
+
}
|
|
107
|
+
await page.keyboard.down('Tab');
|
|
108
|
+
await page.keyboard.down('Tab');
|
|
109
|
+
await page.keyboard.down('Tab');
|
|
110
|
+
await page.keyboard.down('Tab');
|
|
111
|
+
await page.keyboard.down('Tab');
|
|
112
|
+
if (type === 'multi') {
|
|
113
|
+
await page.keyboard.down('Escape');
|
|
114
|
+
}
|
|
115
|
+
await updateScreenshotClass(page, { width: 'unset', height: 'unset' });
|
|
116
|
+
await expect(page.locator('.e2e-screenshot')).toHaveScreenshot();
|
|
117
|
+
});
|
|
118
|
+
testEach([
|
|
119
|
+
{ label: 'long label long label long label long label long label long label long label long label long label long label long label', type, tooltip: 'tooltip message' },
|
|
120
|
+
{
|
|
121
|
+
label: 'long label long label long label long label long label long label long label long label long label long label long label',
|
|
122
|
+
type,
|
|
123
|
+
tooltip: 'tooltip message',
|
|
124
|
+
labelOnTop: true,
|
|
125
|
+
},
|
|
126
|
+
])('render long label in .mg-form-group, %s', async (page, args) => {
|
|
127
|
+
await setPageContent(page, `<div class="mg-form-group">${createHTML(Object.assign(Object.assign(Object.assign({}, baseArgs), args), { value: [
|
|
128
|
+
{ title: 'Batman', value: true },
|
|
129
|
+
{ title: 'Robin', value: false },
|
|
130
|
+
{ title: 'Joker', value: null },
|
|
131
|
+
{ title: 'Bane', value: true, disabled: true },
|
|
132
|
+
] }))}</div>`);
|
|
133
|
+
await page.waitForSelector('mg-input-checkbox.hydrated');
|
|
134
|
+
await expect(page.locator('.e2e-screenshot')).toHaveScreenshot();
|
|
135
|
+
});
|
|
136
|
+
testEach([false, true])('Ensure component fit in width 200px with label-on-top: %s', async (page, labelOnTop) => {
|
|
137
|
+
await setPageContent(page, createHTML(Object.assign(Object.assign({}, baseArgs), { labelOnTop, type })));
|
|
138
|
+
await page.waitForSelector('mg-input-checkbox.hydrated');
|
|
139
|
+
await page.setViewportSize({ width: 200, height: 100 });
|
|
140
|
+
await expect(page.locator('.e2e-screenshot')).toHaveScreenshot();
|
|
141
|
+
});
|
|
142
|
+
});
|
|
143
|
+
describe('type multi', () => {
|
|
144
|
+
const selectedValues = baseArgs.value.map(argValue => (Object.assign(Object.assign({}, argValue), { value: true })));
|
|
145
|
+
const smallValues = baseArgs.value.map((argValue, index) => (Object.assign(Object.assign({}, argValue), { title: index.toString(), value: true })));
|
|
146
|
+
testEach([
|
|
147
|
+
{ disable: true, value: selectedValues },
|
|
148
|
+
{ disable: true, value: smallValues },
|
|
149
|
+
])('Ensure component fit in width 200px with display-values: %s', async (page, args) => {
|
|
150
|
+
await setPageContent(page, createHTML(Object.assign(Object.assign(Object.assign({}, baseArgs), args), { type: 'multi', displaySelectedValues: true })));
|
|
151
|
+
await page.waitForSelector('mg-input-checkbox.hydrated');
|
|
152
|
+
// wait few seconds to insure to have the interactive element rendered
|
|
153
|
+
await waitForInteractiveElement(page, 'multi');
|
|
154
|
+
await expect(page.locator('.e2e-screenshot')).toHaveScreenshot();
|
|
155
|
+
});
|
|
156
|
+
testEach([false, true])('Ensure component fit in width 200px with display-values: %s', async (page, displaySelectedValues) => {
|
|
157
|
+
await setPageContent(page, createHTML(Object.assign(Object.assign({}, baseArgs), { type: 'multi', value: selectedValues, displaySelectedValues })));
|
|
158
|
+
await page.waitForSelector('mg-input-checkbox.hydrated');
|
|
159
|
+
// wait few seconds to insure to have the interactive element rendered
|
|
160
|
+
await waitForInteractiveElement(page, 'multi');
|
|
161
|
+
await page.setViewportSize({ width: 200, height: 100 });
|
|
162
|
+
await expect(page.locator('.e2e-screenshot')).toHaveScreenshot();
|
|
163
|
+
});
|
|
164
|
+
test('Should render "multi" with search', async ({ page }) => {
|
|
165
|
+
const value = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21].map((item, index) => ({
|
|
166
|
+
title: index === 9 ? `my super long title item ${item} is very super long and finaly it could not be shorter so what can I do with it` : `${item}`,
|
|
167
|
+
value: false,
|
|
168
|
+
}));
|
|
169
|
+
await setPageContent(page, createHTML(Object.assign(Object.assign({}, baseArgs), { value })));
|
|
170
|
+
// wait few seconds to insure to have the interactive element rendered
|
|
171
|
+
await waitForInteractiveElement(page, 'multi');
|
|
172
|
+
await expect(page.locator('.e2e-screenshot')).toHaveScreenshot();
|
|
173
|
+
await updateScreenshotClass(page, { width: '450px', height: '470px' });
|
|
174
|
+
// open popover
|
|
175
|
+
await page.keyboard.down('Tab');
|
|
176
|
+
await page.keyboard.down('Enter');
|
|
177
|
+
await page.locator('mg-popover-content').waitFor({ timeout: TIMEOUT });
|
|
178
|
+
await expect(page.locator('.e2e-screenshot')).toHaveScreenshot();
|
|
179
|
+
// take focus in search input
|
|
180
|
+
await page.keyboard.down('Tab');
|
|
181
|
+
await expect(page.locator('.e2e-screenshot')).toHaveScreenshot();
|
|
182
|
+
// got to navigation after 10th input
|
|
183
|
+
for (const index of value.map((_item, index) => index)) {
|
|
184
|
+
if (index < 10)
|
|
185
|
+
await page.keyboard.down('Tab');
|
|
186
|
+
}
|
|
187
|
+
await expect(page.locator('.e2e-screenshot')).toHaveScreenshot();
|
|
188
|
+
// use navigatio to go to last page
|
|
189
|
+
await page.keyboard.down('Tab');
|
|
190
|
+
await page.keyboard.down('Tab');
|
|
191
|
+
await page.keyboard.down('Tab');
|
|
192
|
+
await page.keyboard.down('Enter');
|
|
193
|
+
await page.keyboard.down('Enter');
|
|
194
|
+
await expect(page.locator('.e2e-screenshot')).toHaveScreenshot();
|
|
195
|
+
await page.getByPlaceholder(/value/).fill('2');
|
|
196
|
+
await expect(page.locator('.e2e-screenshot')).toHaveScreenshot();
|
|
197
|
+
// update search with an unmatchable value
|
|
198
|
+
await page.getByPlaceholder(/value/).fill('batman');
|
|
199
|
+
await expect(page.locator('.e2e-screenshot')).toHaveScreenshot();
|
|
200
|
+
// close popover
|
|
201
|
+
await page.keyboard.down('Escape');
|
|
202
|
+
await updateScreenshotClass(page, { width: '285px', height: '35px' });
|
|
203
|
+
await expect(page.locator('.e2e-screenshot')).toHaveScreenshot();
|
|
204
|
+
});
|
|
205
|
+
test('Should render "multi" with 2 sections', async ({ page }) => {
|
|
206
|
+
const value = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21].map((item, index) => ({
|
|
207
|
+
title: `item ${item}`,
|
|
208
|
+
value: [5, 12, 13, 17].some(item => item === index),
|
|
209
|
+
}));
|
|
210
|
+
await setPageContent(page, createHTML(Object.assign(Object.assign({}, baseArgs), { value })));
|
|
211
|
+
await expect(page.locator('.e2e-screenshot')).toHaveScreenshot();
|
|
212
|
+
// wait few seconds to insure to have the interactive element rendered
|
|
213
|
+
await waitForInteractiveElement(page, 'multi');
|
|
214
|
+
await updateScreenshotClass(page, { width: '450px', height: '570px' });
|
|
215
|
+
// open popover
|
|
216
|
+
await page.keyboard.down('Tab');
|
|
217
|
+
await page.keyboard.down('Enter');
|
|
218
|
+
await page.locator('mg-popover-content').waitFor({ timeout: TIMEOUT });
|
|
219
|
+
await expect(page.locator('.e2e-screenshot')).toHaveScreenshot();
|
|
220
|
+
});
|
|
221
|
+
test('Should render "multi" with 2 sections and a closed selected section', async ({ page }) => {
|
|
222
|
+
const value = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21].map((item, index) => ({
|
|
223
|
+
title: `item ${item}`,
|
|
224
|
+
value: [5, 12, 13, 17].some(item => item === index),
|
|
225
|
+
}));
|
|
226
|
+
await setPageContent(page, createHTML(Object.assign(Object.assign({}, baseArgs), { value })));
|
|
227
|
+
// wait few seconds to insure to have the interactive element rendered
|
|
228
|
+
await waitForInteractiveElement(page, 'multi');
|
|
229
|
+
await expect(page.locator('.e2e-screenshot')).toHaveScreenshot();
|
|
230
|
+
await updateScreenshotClass(page, { width: '450px', height: '570px' });
|
|
231
|
+
// open popover
|
|
232
|
+
await page.keyboard.down('Tab');
|
|
233
|
+
await page.keyboard.down('Enter');
|
|
234
|
+
await page.locator('mg-popover-content').waitFor({ timeout: TIMEOUT });
|
|
235
|
+
// close section
|
|
236
|
+
await page.keyboard.down('Tab');
|
|
237
|
+
await page.keyboard.down('Tab');
|
|
238
|
+
await page.keyboard.down('Enter');
|
|
239
|
+
await expect(page.locator('.e2e-screenshot')).toHaveScreenshot();
|
|
240
|
+
});
|
|
241
|
+
});
|
|
242
|
+
});
|
|
243
|
+
//# sourceMappingURL=mg-input-checkbox.e2e.playwright.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mg-input-checkbox.e2e.playwright.js","sourceRoot":"","sources":["../../../../../../src/components/molecules/inputs/mg-input-checkbox/test/mg-input-checkbox.e2e.playwright.ts"],"names":[],"mappings":"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","sourcesContent":["import { setPageContent, expect, describe, describeEach, testEach, updateScreenshotClass, PageType, test } from '../../../../../utils/playwright.e2e.test.utils';\nimport { createID } from '../../../../../utils/components.utils';\nimport { renderAttributes, renderProperties } from '../../../../../utils/e2e.test.utils';\nimport { CheckboxType, checkboxTypes } from '../mg-input-checkbox.conf';\n\nconst TIMEOUT = 1000;\n\nconst baseArgs = {\n label: 'legend',\n value: [\n { title: 'Batman', value: false },\n { title: 'Robin', value: false },\n { title: 'Joker', value: false },\n { title: 'Bane', value: false },\n ],\n};\n\nconst createHTML = (args, identifier = createID()) =>\n `<mg-input-checkbox ${renderAttributes({ ...args, identifier })}></mg-input-checkbox><script>${renderProperties(args, `[identifier=\"${identifier}\"]`)}</script>`;\n\nconst waitForInteractiveElement = async (page: PageType, type: CheckboxType) => {\n // wait few seconds to insure to have the interactive element rendered\n const interactiveElement = await page.locator(type === 'multi' ? 'mg-button[tabindex=\"0\"].hydrated' : 'mg-icon[tabindex=\"0\"].hydrated').first();\n return interactiveElement.waitFor({ timeout: 3000 });\n};\n\ndescribe('mg-input-checkbox', () => {\n describeEach(checkboxTypes)('type %s', (type: CheckboxType) => {\n testEach([\n { ...baseArgs, readonly: true },\n { ...baseArgs, readonly: true, labelOnTop: true },\n { ...baseArgs, disabled: true },\n { ...baseArgs, inputVerticalList: true, helpText: 'HelpText Message' },\n { ...baseArgs, inputVerticalList: true, helpText: 'HelpText Message', labelOnTop: true },\n { ...baseArgs, helpText: `<mg-icon icon='user' size='small'></mg-icon> Welcome batman` },\n { ...baseArgs, helpText: 'HelpText Message', required: true },\n { ...baseArgs, helpText: 'HelpText Message', required: true, readonly: true },\n { ...baseArgs, helpText: 'HelpText Message', required: true, disabled: true },\n ])('Should render with template %s', async (page: PageType, args: object) => {\n await setPageContent(\n page,\n createHTML({\n ...args,\n type,\n value: [\n { title: 'Batman', value: true },\n { title: 'Robin', value: false },\n { title: 'Joker', value: null },\n { title: 'Bane', value: true, disabled: true },\n ],\n }),\n );\n\n await expect(page.locator('.e2e-screenshot')).toHaveScreenshot();\n });\n testEach([true, false])(`render with tooltip, case label-on-top %s`, async (page: PageType, labelOnTop: boolean) => {\n await setPageContent(\n page,\n createHTML({\n ...baseArgs,\n tooltip: 'Tooltip message',\n labelOnTop,\n type,\n }),\n );\n\n const KEY_TAB = 'Tab';\n\n await expect(page.locator('mg-input-checkbox.hydrated')).toBeDefined();\n\n // wait few seconds to insure to have the interactive element rendered\n await waitForInteractiveElement(page, type);\n\n await expect(page.locator('.e2e-screenshot')).toHaveScreenshot();\n\n let actions = [KEY_TAB];\n\n // when label on top tooltip is on first tab (next to label)\n if (!labelOnTop) {\n await updateScreenshotClass(page, { height: '65px', width: '500px' });\n\n // when type is 'multi' the tooltip is on second tab\n actions = type !== 'multi' ? [...actions, KEY_TAB, KEY_TAB, KEY_TAB, KEY_TAB] : [...actions, KEY_TAB];\n }\n\n for (const key of actions) {\n await page.keyboard.down(key);\n }\n\n await page.locator('mg-tooltip-content').waitFor({ timeout: TIMEOUT });\n\n await expect(page.locator('.e2e-screenshot')).toHaveScreenshot();\n });\n\n testEach([\n { ...baseArgs, type },\n { ...baseArgs, type, labelOnTop: true },\n { ...baseArgs, type, labelHide: true },\n { ...baseArgs, type, helpText: 'HelpText Message' },\n ])('Should render without tooltip %s', async (page: PageType, args) => {\n await setPageContent(page, createHTML(args));\n\n await page.waitForSelector('mg-input-checkbox.hydrated');\n\n await expect(page.locator('.e2e-screenshot')).toHaveScreenshot();\n\n // when multi open checkbox in popover\n if (type === 'multi') {\n // wait few seconds to insure to have the interactive element rendered\n await waitForInteractiveElement(page, type);\n await updateScreenshotClass(page, { width: '300px', height: '200px' });\n await page.keyboard.down('Tab');\n await page.keyboard.down('Enter');\n await page.locator('mg-popover-content').waitFor({ timeout: TIMEOUT });\n }\n\n await page.keyboard.down('Tab');\n\n await expect(page.locator('.e2e-screenshot')).toHaveScreenshot();\n\n await page.locator('mg-input-checkbox .mg-input__input-group:first-of-type input').press('Space');\n\n await page.keyboard.down('Tab');\n await page.locator('mg-input-checkbox .mg-input__input-group:nth-of-type(2) input').press('Space');\n\n await page.keyboard.down('Tab');\n await page.locator('mg-input-checkbox .mg-input__input-group:nth-of-type(3) input').press('Space');\n\n await page.keyboard.down('Tab');\n await page.locator('mg-input-checkbox .mg-input__input-group:nth-of-type(4) input').press('Space');\n\n await expect(page.locator('.e2e-screenshot')).toHaveScreenshot();\n });\n\n testEach([\n { ...baseArgs, helpText: 'HelpText Message', required: true, type },\n { ...baseArgs, helpText: \"Message d'aide\", lang: 'fr', required: true, type },\n ])('Should render error when leaving an empty required input %s', async (page: PageType, args) => {\n await setPageContent(page, createHTML(args));\n\n await page.waitForSelector('mg-input-checkbox.hydrated');\n\n // when multi open checkbox in popover\n if (type === 'multi') {\n // wait few seconds to insure to have the interactive element rendered\n await waitForInteractiveElement(page, type);\n await updateScreenshotClass(page, { width: '300px', height: '200px' });\n await page.keyboard.down('Tab');\n await page.keyboard.down('Enter');\n await page.locator('mg-popover-content').waitFor({ timeout: TIMEOUT });\n }\n\n await page.keyboard.down('Tab');\n await page.keyboard.down('Tab');\n await page.keyboard.down('Tab');\n await page.keyboard.down('Tab');\n await page.keyboard.down('Tab');\n\n if (type === 'multi') {\n await page.keyboard.down('Escape');\n }\n\n await updateScreenshotClass(page, { width: 'unset', height: 'unset' });\n\n await expect(page.locator('.e2e-screenshot')).toHaveScreenshot();\n });\n\n testEach([\n { label: 'long label long label long label long label long label long label long label long label long label long label long label', type, tooltip: 'tooltip message' },\n {\n label: 'long label long label long label long label long label long label long label long label long label long label long label',\n type,\n tooltip: 'tooltip message',\n labelOnTop: true,\n },\n ])('render long label in .mg-form-group, %s', async (page: PageType, args: object) => {\n await setPageContent(\n page,\n `<div class=\"mg-form-group\">${createHTML({\n ...baseArgs,\n ...args,\n value: [\n { title: 'Batman', value: true },\n { title: 'Robin', value: false },\n { title: 'Joker', value: null },\n { title: 'Bane', value: true, disabled: true },\n ],\n })}</div>`,\n );\n\n await page.waitForSelector('mg-input-checkbox.hydrated');\n\n await expect(page.locator('.e2e-screenshot')).toHaveScreenshot();\n });\n\n testEach([false, true])('Ensure component fit in width 200px with label-on-top: %s', async (page: PageType, labelOnTop) => {\n await setPageContent(page, createHTML({ ...baseArgs, labelOnTop, type }));\n\n await page.waitForSelector('mg-input-checkbox.hydrated');\n\n await page.setViewportSize({ width: 200, height: 100 });\n\n await expect(page.locator('.e2e-screenshot')).toHaveScreenshot();\n });\n });\n\n describe('type multi', () => {\n const selectedValues = baseArgs.value.map(argValue => ({ ...argValue, value: true }));\n const smallValues = baseArgs.value.map((argValue, index) => ({ ...argValue, title: index.toString(), value: true }));\n testEach([\n { disable: true, value: selectedValues },\n { disable: true, value: smallValues },\n ])('Ensure component fit in width 200px with display-values: %s', async (page: PageType, args: object) => {\n await setPageContent(page, createHTML({ ...baseArgs, ...args, type: 'multi', displaySelectedValues: true }));\n\n await page.waitForSelector('mg-input-checkbox.hydrated');\n\n // wait few seconds to insure to have the interactive element rendered\n await waitForInteractiveElement(page, 'multi');\n\n await expect(page.locator('.e2e-screenshot')).toHaveScreenshot();\n });\n testEach([false, true])('Ensure component fit in width 200px with display-values: %s', async (page: PageType, displaySelectedValues) => {\n await setPageContent(page, createHTML({ ...baseArgs, type: 'multi', value: selectedValues, displaySelectedValues }));\n\n await page.waitForSelector('mg-input-checkbox.hydrated');\n\n // wait few seconds to insure to have the interactive element rendered\n await waitForInteractiveElement(page, 'multi');\n\n await page.setViewportSize({ width: 200, height: 100 });\n\n await expect(page.locator('.e2e-screenshot')).toHaveScreenshot();\n });\n\n test('Should render \"multi\" with search', async ({ page }) => {\n const value = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21].map((item, index) => ({\n title: index === 9 ? `my super long title item ${item} is very super long and finaly it could not be shorter so what can I do with it` : `${item}`,\n value: false,\n }));\n await setPageContent(page, createHTML({ ...baseArgs, value }));\n\n // wait few seconds to insure to have the interactive element rendered\n await waitForInteractiveElement(page, 'multi');\n\n await expect(page.locator('.e2e-screenshot')).toHaveScreenshot();\n\n await updateScreenshotClass(page, { width: '450px', height: '470px' });\n\n // open popover\n await page.keyboard.down('Tab');\n await page.keyboard.down('Enter');\n\n await page.locator('mg-popover-content').waitFor({ timeout: TIMEOUT });\n\n await expect(page.locator('.e2e-screenshot')).toHaveScreenshot();\n\n // take focus in search input\n await page.keyboard.down('Tab');\n await expect(page.locator('.e2e-screenshot')).toHaveScreenshot();\n\n // got to navigation after 10th input\n for (const index of value.map((_item, index) => index)) {\n if (index < 10) await page.keyboard.down('Tab');\n }\n await expect(page.locator('.e2e-screenshot')).toHaveScreenshot();\n\n // use navigatio to go to last page\n await page.keyboard.down('Tab');\n await page.keyboard.down('Tab');\n await page.keyboard.down('Tab');\n await page.keyboard.down('Enter');\n await page.keyboard.down('Enter');\n\n await expect(page.locator('.e2e-screenshot')).toHaveScreenshot();\n\n await page.getByPlaceholder(/value/).fill('2');\n\n await expect(page.locator('.e2e-screenshot')).toHaveScreenshot();\n\n // update search with an unmatchable value\n await page.getByPlaceholder(/value/).fill('batman');\n\n await expect(page.locator('.e2e-screenshot')).toHaveScreenshot();\n\n // close popover\n await page.keyboard.down('Escape');\n await updateScreenshotClass(page, { width: '285px', height: '35px' });\n await expect(page.locator('.e2e-screenshot')).toHaveScreenshot();\n });\n\n test('Should render \"multi\" with 2 sections', async ({ page }) => {\n const value = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21].map((item, index) => ({\n title: `item ${item}`,\n value: [5, 12, 13, 17].some(item => item === index),\n }));\n await setPageContent(page, createHTML({ ...baseArgs, value }));\n\n await expect(page.locator('.e2e-screenshot')).toHaveScreenshot();\n\n // wait few seconds to insure to have the interactive element rendered\n await waitForInteractiveElement(page, 'multi');\n\n await updateScreenshotClass(page, { width: '450px', height: '570px' });\n\n // open popover\n await page.keyboard.down('Tab');\n await page.keyboard.down('Enter');\n await page.locator('mg-popover-content').waitFor({ timeout: TIMEOUT });\n\n await expect(page.locator('.e2e-screenshot')).toHaveScreenshot();\n });\n\n test('Should render \"multi\" with 2 sections and a closed selected section', async ({ page }) => {\n const value = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21].map((item, index) => ({\n title: `item ${item}`,\n value: [5, 12, 13, 17].some(item => item === index),\n }));\n await setPageContent(page, createHTML({ ...baseArgs, value }));\n\n // wait few seconds to insure to have the interactive element rendered\n await waitForInteractiveElement(page, 'multi');\n\n await expect(page.locator('.e2e-screenshot')).toHaveScreenshot();\n\n await updateScreenshotClass(page, { width: '450px', height: '570px' });\n\n // open popover\n await page.keyboard.down('Tab');\n await page.keyboard.down('Enter');\n await page.locator('mg-popover-content').waitFor({ timeout: TIMEOUT });\n\n // close section\n await page.keyboard.down('Tab');\n await page.keyboard.down('Tab');\n await page.keyboard.down('Enter');\n\n await expect(page.locator('.e2e-screenshot')).toHaveScreenshot();\n });\n });\n});\n"]}
|