@lion/ui 0.20.0-menu-system.0 → 0.20.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/calendar-suites.js +1 -0
- package/collapsible.js +0 -1
- package/components/button/src/LionButton.js +0 -4
- package/components/button/test-suites/LionButton.suite.js +0 -1
- package/components/calendar/src/LionCalendar.js +1 -3
- package/components/calendar/test/lion-calendar.test.js +67 -47
- package/components/calendar/test-suites/LionCalendar.suite.js +79 -0
- package/components/combobox/test/lion-combobox.test.js +0 -1
- package/components/form-core/src/FormatMixin.js +7 -2
- package/components/form-core/src/form-group/FormGroupMixin.js +0 -7
- package/components/form-core/src/registration/FormRegistrarMixin.js +0 -11
- package/components/form-core/test/FormControlMixin.test.js +0 -1
- package/components/form-core/test/FormatMixin.test.js +4 -1
- package/components/form-core/test/validate/Validator.test.js +0 -2
- package/components/form-core/test-suites/FormatMixin.suite.js +242 -65
- package/components/form-core/test-suites/ValidateMixin.suite.js +0 -2
- package/components/form-core/test-suites/ValidateMixinFeedbackPart.suite.js +0 -1
- package/components/input/test/input-integrations.test.js +3 -2
- package/components/input/test/lion-input-integrations.test.js +2 -1
- package/components/input-amount/test/lion-input-amount-integrations.test.js +1 -1
- package/components/input-amount-dropdown/src/LionInputAmountDropdown.js +22 -4
- package/components/input-amount-dropdown/test/lion-input-amount-dropdown-integrations.test.js +22 -0
- package/components/input-amount-dropdown/test-suites/LionInputAmountDropdown.suite.js +59 -3
- package/components/input-date/test/lion-input-date-integrations.test.js +1 -1
- package/components/input-datepicker/src/localizeNamespaceLoader.js +0 -1
- package/components/input-datepicker/test/lion-input-datepicker-integrations.test.js +1 -1
- package/components/input-datepicker/test/lion-input-datepicker.test.js +19 -9
- package/components/input-datepicker/test-suites/LionInputDatepicker.suite.js +35 -0
- package/components/input-email/src/LionInputEmail.js +2 -0
- package/components/input-email/test/lion-input-email-integrations.test.js +1 -1
- package/components/input-email/test/lion-input-email.test.js +6 -0
- package/components/input-file/src/validators.js +31 -1
- package/components/input-file/test/FileValidators.test.js +31 -0
- package/components/input-file/translations/bg.js +1 -0
- package/components/input-file/translations/cs.js +1 -0
- package/components/input-file/translations/de.js +2 -0
- package/components/input-file/translations/en.js +1 -0
- package/components/input-file/translations/es.js +1 -0
- package/components/input-file/translations/fr.js +1 -0
- package/components/input-file/translations/hu.js +1 -0
- package/components/input-file/translations/id.js +1 -0
- package/components/input-file/translations/it.js +1 -0
- package/components/input-file/translations/nl.js +1 -0
- package/components/input-file/translations/pl.js +1 -0
- package/components/input-file/translations/ro.js +1 -0
- package/components/input-file/translations/ru.js +1 -0
- package/components/input-file/translations/sk.js +1 -0
- package/components/input-file/translations/uk.js +1 -0
- package/components/input-file/translations/zh.js +1 -0
- package/components/input-iban/test/lion-input-iban-integrations.test.js +1 -1
- package/components/input-stepper/test-suites/lion-input-stepper.integration.suite.js +2 -2
- package/components/input-tel/src/LionInputTel.js +1 -1
- package/components/input-tel/test-suites/LionInputTel.suite.js +7 -0
- package/components/localize/test/date/formatDate.test.js +0 -1
- package/components/overlays/src/OverlayController.js +110 -278
- package/components/overlays/src/OverlayMixin.js +11 -58
- package/components/overlays/src/OverlaysManager.js +2 -2
- package/components/overlays/src/configurations/visibility-trigger-partials/withHoverInteraction.js +41 -9
- package/components/overlays/src/utils/adopt-styles.js +2 -3
- package/components/overlays/src/utils/get-focusable-elements.js +0 -4
- package/components/overlays/src/utils/is-equal-config.js +6 -10
- package/components/overlays/test/OverlayController.test.js +14 -127
- package/components/overlays/test/utils-tests/is-equal-config.test.js +1 -1
- package/components/overlays/test-suites/OverlayMixin.suite.js +8 -8
- package/components/overlays/test-suites/WithHoverInteraction.suite.js +212 -0
- package/components/overlays/types/ArrowMixinTypes.ts +1 -3
- package/components/overlays/types/OverlayConfig.ts +5 -20
- package/components/overlays/types/OverlayMixinTypes.ts +0 -2
- package/components/select-rich/test/lion-select-rich.test.js +0 -3
- package/components/textarea/test/lion-textarea-integrations.test.js +2 -1
- package/components/tooltip/test/lion-tooltip.test.js +9 -1
- package/custom-elements.json +18086 -30683
- package/dist-types/components/button/src/LionButton.d.ts +0 -1
- package/dist-types/components/button/src/LionButton.d.ts.map +1 -1
- package/dist-types/components/button/test-suites/LionButton.suite.d.ts.map +1 -1
- package/dist-types/components/calendar/src/LionCalendar.d.ts.map +1 -1
- package/dist-types/components/calendar/test/lion-calendar.test.d.ts.map +1 -1
- package/dist-types/components/calendar/test-suites/LionCalendar.suite.d.ts +5 -0
- package/dist-types/components/calendar/test-suites/LionCalendar.suite.d.ts.map +1 -0
- package/dist-types/components/combobox/src/LionCombobox.d.ts +1 -1
- package/dist-types/components/dialog/src/LionDialog.d.ts +2 -6
- package/dist-types/components/dialog/src/LionDialog.d.ts.map +1 -1
- package/dist-types/components/form-core/src/FormatMixin.d.ts.map +1 -1
- package/dist-types/components/form-core/src/form-group/FormGroupMixin.d.ts.map +1 -1
- package/dist-types/components/form-core/src/registration/FormRegistrarMixin.d.ts.map +1 -1
- package/dist-types/components/form-core/test-suites/FormatMixin.suite.d.ts +50 -5
- package/dist-types/components/form-core/test-suites/FormatMixin.suite.d.ts.map +1 -1
- package/dist-types/components/form-core/test-suites/ValidateMixin.suite.d.ts.map +1 -1
- package/dist-types/components/form-core/test-suites/ValidateMixinFeedbackPart.suite.d.ts.map +1 -1
- package/dist-types/components/icon/src/LionIcon.d.ts +2 -2
- package/dist-types/components/input-amount-dropdown/src/LionInputAmountDropdown.d.ts.map +1 -1
- package/dist-types/components/input-amount-dropdown/test/lion-input-amount-dropdown-integrations.test.d.ts +2 -0
- package/dist-types/components/input-amount-dropdown/test/lion-input-amount-dropdown-integrations.test.d.ts.map +1 -0
- package/dist-types/components/input-amount-dropdown/test-suites/LionInputAmountDropdown.suite.d.ts.map +1 -1
- package/dist-types/components/input-datepicker/src/LionInputDatepicker.d.ts +1 -1
- package/dist-types/components/input-datepicker/src/localizeNamespaceLoader.d.ts.map +1 -1
- package/dist-types/components/input-datepicker/test/lion-input-datepicker.test.d.ts.map +1 -1
- package/dist-types/components/input-datepicker/test-suites/LionInputDatepicker.suite.d.ts +7 -0
- package/dist-types/components/input-datepicker/test-suites/LionInputDatepicker.suite.d.ts.map +1 -0
- package/dist-types/components/input-email/src/LionInputEmail.d.ts.map +1 -1
- package/dist-types/components/input-file/src/validators.d.ts +11 -0
- package/dist-types/components/input-file/src/validators.d.ts.map +1 -1
- package/dist-types/components/input-file/translations/bg-BG.d.ts +1 -0
- package/dist-types/components/input-file/translations/bg.d.ts +1 -0
- package/dist-types/components/input-file/translations/cs-CZ.d.ts +1 -0
- package/dist-types/components/input-file/translations/cs.d.ts +1 -0
- package/dist-types/components/input-file/translations/de-DE.d.ts +1 -0
- package/dist-types/components/input-file/translations/de.d.ts +1 -0
- package/dist-types/components/input-file/translations/en-AU.d.ts +1 -0
- package/dist-types/components/input-file/translations/en-GB.d.ts +1 -0
- package/dist-types/components/input-file/translations/en-PH.d.ts +1 -0
- package/dist-types/components/input-file/translations/en-US.d.ts +1 -0
- package/dist-types/components/input-file/translations/en.d.ts +1 -0
- package/dist-types/components/input-file/translations/es-ES.d.ts +1 -0
- package/dist-types/components/input-file/translations/es.d.ts +1 -0
- package/dist-types/components/input-file/translations/fr-BE.d.ts +1 -0
- package/dist-types/components/input-file/translations/fr-FR.d.ts +1 -0
- package/dist-types/components/input-file/translations/fr.d.ts +1 -0
- package/dist-types/components/input-file/translations/hu-HU.d.ts +1 -0
- package/dist-types/components/input-file/translations/hu.d.ts +1 -0
- package/dist-types/components/input-file/translations/id-ID.d.ts +1 -0
- package/dist-types/components/input-file/translations/id.d.ts +1 -0
- package/dist-types/components/input-file/translations/it-IT.d.ts +1 -0
- package/dist-types/components/input-file/translations/it.d.ts +1 -0
- package/dist-types/components/input-file/translations/nl-BE.d.ts +1 -0
- package/dist-types/components/input-file/translations/nl-NL.d.ts +1 -0
- package/dist-types/components/input-file/translations/nl.d.ts +1 -0
- package/dist-types/components/input-file/translations/pl-PL.d.ts +1 -0
- package/dist-types/components/input-file/translations/pl.d.ts +1 -0
- package/dist-types/components/input-file/translations/ro-RO.d.ts +1 -0
- package/dist-types/components/input-file/translations/ro.d.ts +1 -0
- package/dist-types/components/input-file/translations/ru-RU.d.ts +1 -0
- package/dist-types/components/input-file/translations/ru.d.ts +1 -0
- package/dist-types/components/input-file/translations/sk-SK.d.ts +1 -0
- package/dist-types/components/input-file/translations/sk.d.ts +1 -0
- package/dist-types/components/input-file/translations/uk-UA.d.ts +1 -0
- package/dist-types/components/input-file/translations/uk.d.ts +1 -0
- package/dist-types/components/input-file/translations/zh-CN.d.ts +1 -0
- package/dist-types/components/input-file/translations/zh.d.ts +1 -0
- package/dist-types/components/input-tel/src/LionInputTel.d.ts.map +1 -1
- package/dist-types/components/input-tel/test-suites/LionInputTel.suite.d.ts.map +1 -1
- package/dist-types/components/overlays/src/OverlayController.d.ts +12 -24
- package/dist-types/components/overlays/src/OverlayController.d.ts.map +1 -1
- package/dist-types/components/overlays/src/OverlayMixin.d.ts.map +1 -1
- package/dist-types/components/overlays/src/configurations/visibility-trigger-partials/withHoverInteraction.d.ts.map +1 -1
- package/dist-types/components/overlays/src/utils/get-focusable-elements.d.ts.map +1 -1
- package/dist-types/components/overlays/src/utils/is-equal-config.d.ts.map +1 -1
- package/dist-types/components/overlays/test-suites/WithHoverInteraction.suite.d.ts +17 -0
- package/dist-types/components/overlays/test-suites/WithHoverInteraction.suite.d.ts.map +1 -0
- package/dist-types/components/overlays/types/ArrowMixinTypes.d.ts.map +1 -1
- package/dist-types/components/overlays/types/OverlayConfig.d.ts +2 -12
- package/dist-types/components/overlays/types/OverlayConfig.d.ts.map +1 -1
- package/dist-types/components/overlays/types/OverlayMixinTypes.d.ts +0 -1
- package/dist-types/components/overlays/types/OverlayMixinTypes.d.ts.map +1 -1
- package/dist-types/components/select-rich/src/LionSelectRich.d.ts +3 -11
- package/dist-types/components/select-rich/src/LionSelectRich.d.ts.map +1 -1
- package/dist-types/components/tooltip/src/LionTooltip.d.ts +1 -1
- package/dist-types/components/tooltip/test/lion-tooltip.test.d.ts.map +1 -1
- package/dist-types/exports/calendar-suites.d.ts +2 -0
- package/dist-types/exports/calendar-suites.d.ts.map +1 -0
- package/dist-types/exports/input-datepicker-suites.d.ts +2 -0
- package/dist-types/exports/input-datepicker-suites.d.ts.map +1 -0
- package/dist-types/exports/input-file.d.ts +1 -1
- package/dist-types/exports/overlays-test-suites.d.ts +1 -0
- package/dist-types/exports/overlays.d.ts +0 -3
- package/dist-types/exports/overlays.d.ts.map +1 -1
- package/dist-types/tsconfig.tsbuildinfo +1 -1
- package/docs/components/checkbox-group/overview.md +2 -2
- package/docs/components/collapsible/overview.md +1 -1
- package/docs/components/combobox/api-table.md +8 -21
- package/docs/components/combobox/overview.md +1 -1
- package/docs/components/combobox/use-cases.md +1 -1
- package/docs/components/dialog/api-table.md +6 -31
- package/docs/components/dialog/overview.md +1 -1
- package/docs/components/fieldset/overview.md +5 -5
- package/docs/components/form/overview.md +3 -3
- package/docs/components/form/use-cases.md +2 -2
- package/docs/components/icon/use-cases.md +1 -1
- package/docs/components/input/overview.md +1 -1
- package/docs/components/input-amount/overview.md +3 -3
- package/docs/components/input-amount-dropdown/api-table.md +2 -2
- package/docs/components/input-date/overview.md +3 -3
- package/docs/components/input-datepicker/api-table.md +4 -21
- package/docs/components/input-datepicker/overview.md +5 -5
- package/docs/components/input-email/api-table.md +1 -1
- package/docs/components/input-email/overview.md +2 -2
- package/docs/components/input-file/overview.md +1 -1
- package/docs/components/input-file/use-cases.md +18 -0
- package/docs/components/input-iban/overview.md +2 -2
- package/docs/components/input-range/overview.md +2 -2
- package/docs/components/input-stepper/overview.md +1 -1
- package/docs/components/input-tel/api-table.md +1 -1
- package/docs/components/input-tel/overview.md +1 -1
- package/docs/components/input-tel/use-cases.md +6 -6
- package/docs/components/input-tel-dropdown/api-table.md +1 -1
- package/docs/components/input-tel-dropdown/overview.md +1 -1
- package/docs/components/listbox/use-cases.md +1 -1
- package/docs/components/radio-group/overview.md +3 -3
- package/docs/components/select/use-cases.md +1 -1
- package/docs/components/select-rich/api-table.md +5 -21
- package/docs/components/select-rich/use-cases.md +2 -2
- package/docs/components/tabs/examples.md +1 -1
- package/docs/components/tooltip/api-table.md +11 -36
- package/docs/components/tooltip/use-cases.md +34 -1
- package/docs/fundamentals/index.md +4 -4
- package/docs/fundamentals/node-tools/publish-docs/overview.md +3 -3
- package/docs/fundamentals/node-tools/rocket-preset-extend-lion-docs/overview.md +2 -2
- package/docs/fundamentals/rationales/accessibility.md +1 -1
- package/docs/fundamentals/systems/core/SlotMixin.md +1 -1
- package/docs/fundamentals/systems/core/overview.md +1 -1
- package/docs/fundamentals/systems/form/formatting-and-parsing.md +4 -4
- package/docs/fundamentals/systems/form/model-value.md +1 -1
- package/docs/fundamentals/systems/form/overview.md +28 -28
- package/docs/fundamentals/systems/form/validate.md +2 -2
- package/docs/fundamentals/systems/localize/overview.md +4 -4
- package/docs/fundamentals/systems/overlays/api-table.md +34 -36
- package/docs/fundamentals/systems/overlays/configuration.md +2 -2
- package/docs/fundamentals/systems/overlays/overview.md +5 -5
- package/docs/fundamentals/systems/overlays/use-cases.md +2 -2
- package/docs/fundamentals/tools/helpers/overview.md +1 -1
- package/docs/fundamentals/tools/singleton-manager/overview.md +4 -4
- package/docs/guides/how-to/create-a-custom-field.md +5 -5
- package/docs/guides/how-to/create-a-form.md +4 -4
- package/docs/guides/how-to/extend-a-native-input.md +2 -2
- package/docs/guides/how-to/index.md +1 -1
- package/docs/guides/index.md +8 -8
- package/docs/guides/principles/index.md +5 -5
- package/docs/guides/principles/styling.md +1 -1
- package/exports/calendar-suites.js +1 -0
- package/exports/collapsible.js +0 -1
- package/exports/input-datepicker-suites.js +1 -0
- package/exports/input-file.js +5 -1
- package/exports/overlays-test-suites.js +1 -0
- package/exports/overlays.js +0 -6
- package/input-datepicker-suites.js +1 -0
- package/input-file.js +5 -1
- package/overlays-test-suites.js +1 -0
- package/overlays.js +0 -6
- package/package.json +2 -2
- package/components/collapsible/src/DisclosureMixin.js +0 -313
- package/components/collapsible/test-suites/DisclosureMixin.suite.js +0 -30
- package/components/collapsible/types/DisclosureMixinTypes.ts +0 -48
- package/components/menu/CHANGELOG.md +0 -37
- package/components/menu/README.md +0 -335
- package/components/menu/index.js +0 -2
- package/components/menu/lion-menu-overlay.js +0 -3
- package/components/menu/lion-menu.js +0 -3
- package/components/menu/lion-spinbutton.js +0 -3
- package/components/menu/lion-toolbar.js +0 -3
- package/components/menu/lion-tree.js +0 -3
- package/components/menu/package.json +0 -46
- package/components/menu/requirements.temp.md +0 -12
- package/components/menu/src/InteractiveListMixin.js +0 -840
- package/components/menu/src/LionMenu.js +0 -250
- package/components/menu/src/LionMenuHybrid.js +0 -46
- package/components/menu/src/LionMenuOverlay.js +0 -155
- package/components/menu/src/LionSpinbutton.js +0 -213
- package/components/menu/src/LionToolbar.js +0 -94
- package/components/menu/src/LionTree.js +0 -52
- package/components/menu/src/MoreButtonMenuMixin.js +0 -278
- package/components/menu/src/MultiLevelListMixin.js +0 -311
- package/components/menu/src/utils/isInView.js +0 -26
- package/components/menu/src/utils/listItemInteractions.js +0 -124
- package/components/menu/test/InteractiveListMixin.test.js +0 -3
- package/components/menu/test/MoreButtonMenuMixin.test.js +0 -4
- package/components/menu/test/MultiLevelListMixin.test.js +0 -3
- package/components/menu/test/lion-menu-hybrid.test.js +0 -3
- package/components/menu/test/lion-menu.test.js +0 -11
- package/components/menu/test/lion-toolbar.test.js +0 -8
- package/components/menu/test/lion-tree.test.js +0 -7
- package/components/menu/test-helpers/mimicKeyPress.js +0 -9
- package/components/menu/test-suites/InteractiveListMixin.suite.js +0 -454
- package/components/menu/test-suites/LionMenu.suite.js +0 -113
- package/components/menu/test-suites/LionMenuHybrid.suite.js +0 -583
- package/components/menu/test-suites/MoreButtonMenuMixin.suite.js +0 -372
- package/components/menu/test-suites/MultiLevelListMixin.suite.js +0 -303
- package/components/menu/types/InteractiveListMixinTypes.d.ts +0 -84
- package/components/navigation-bar/README.md +0 -1
- package/components/navigation-bar/src/LionNavigationBar.js +0 -439
- package/components/navigation-bar/src/types.js +0 -41
- package/components/overlays/NEXT.md +0 -49
- package/components/overlays/test/withHoverInteraction.test.js +0 -90
- package/dist-types/components/collapsible/src/DisclosureMixin.d.ts +0 -3
- package/dist-types/components/collapsible/src/DisclosureMixin.d.ts.map +0 -1
- package/dist-types/components/collapsible/test-suites/DisclosureMixin.suite.d.ts +0 -2
- package/dist-types/components/collapsible/test-suites/DisclosureMixin.suite.d.ts.map +0 -1
- package/dist-types/components/collapsible/types/DisclosureMixinTypes.d.ts +0 -24
- package/dist-types/components/collapsible/types/DisclosureMixinTypes.d.ts.map +0 -1
- package/dist-types/components/menu/index.d.ts +0 -3
- package/dist-types/components/menu/index.d.ts.map +0 -1
- package/dist-types/components/menu/lion-menu-overlay.d.ts +0 -2
- package/dist-types/components/menu/lion-menu-overlay.d.ts.map +0 -1
- package/dist-types/components/menu/lion-menu.d.ts +0 -2
- package/dist-types/components/menu/lion-menu.d.ts.map +0 -1
- package/dist-types/components/menu/lion-spinbutton.d.ts +0 -2
- package/dist-types/components/menu/lion-spinbutton.d.ts.map +0 -1
- package/dist-types/components/menu/lion-toolbar.d.ts +0 -2
- package/dist-types/components/menu/lion-toolbar.d.ts.map +0 -1
- package/dist-types/components/menu/lion-tree.d.ts +0 -2
- package/dist-types/components/menu/lion-tree.d.ts.map +0 -1
- package/dist-types/components/menu/src/InteractiveListMixin.d.ts +0 -617
- package/dist-types/components/menu/src/InteractiveListMixin.d.ts.map +0 -1
- package/dist-types/components/menu/src/LionMenu.d.ts +0 -635
- package/dist-types/components/menu/src/LionMenu.d.ts.map +0 -1
- package/dist-types/components/menu/src/LionMenuHybrid.d.ts +0 -19
- package/dist-types/components/menu/src/LionMenuHybrid.d.ts.map +0 -1
- package/dist-types/components/menu/src/LionMenuOverlay.d.ts +0 -1015
- package/dist-types/components/menu/src/LionMenuOverlay.d.ts.map +0 -1
- package/dist-types/components/menu/src/LionSpinbutton.d.ts +0 -58
- package/dist-types/components/menu/src/LionSpinbutton.d.ts.map +0 -1
- package/dist-types/components/menu/src/LionToolbar.d.ts +0 -8
- package/dist-types/components/menu/src/LionToolbar.d.ts.map +0 -1
- package/dist-types/components/menu/src/LionTree.d.ts +0 -447
- package/dist-types/components/menu/src/LionTree.d.ts.map +0 -1
- package/dist-types/components/menu/src/MoreButtonMenuMixin.d.ts +0 -39
- package/dist-types/components/menu/src/MoreButtonMenuMixin.d.ts.map +0 -1
- package/dist-types/components/menu/src/MultiLevelListMixin.d.ts +0 -503
- package/dist-types/components/menu/src/MultiLevelListMixin.d.ts.map +0 -1
- package/dist-types/components/menu/src/utils/isInView.d.ts +0 -9
- package/dist-types/components/menu/src/utils/isInView.d.ts.map +0 -1
- package/dist-types/components/menu/src/utils/listItemInteractions.d.ts +0 -48
- package/dist-types/components/menu/src/utils/listItemInteractions.d.ts.map +0 -1
- package/dist-types/components/menu/test/InteractiveListMixin.test.d.ts +0 -2
- package/dist-types/components/menu/test/InteractiveListMixin.test.d.ts.map +0 -1
- package/dist-types/components/menu/test/MoreButtonMenuMixin.test.d.ts +0 -2
- package/dist-types/components/menu/test/MoreButtonMenuMixin.test.d.ts.map +0 -1
- package/dist-types/components/menu/test/MultiLevelListMixin.test.d.ts +0 -2
- package/dist-types/components/menu/test/MultiLevelListMixin.test.d.ts.map +0 -1
- package/dist-types/components/menu/test/lion-menu-hybrid.test.d.ts +0 -2
- package/dist-types/components/menu/test/lion-menu-hybrid.test.d.ts.map +0 -1
- package/dist-types/components/menu/test/lion-menu.test.d.ts +0 -2
- package/dist-types/components/menu/test/lion-menu.test.d.ts.map +0 -1
- package/dist-types/components/menu/test/lion-toolbar.test.d.ts +0 -2
- package/dist-types/components/menu/test/lion-toolbar.test.d.ts.map +0 -1
- package/dist-types/components/menu/test/lion-tree.test.d.ts +0 -2
- package/dist-types/components/menu/test/lion-tree.test.d.ts.map +0 -1
- package/dist-types/components/menu/test-helpers/mimicKeyPress.d.ts +0 -7
- package/dist-types/components/menu/test-helpers/mimicKeyPress.d.ts.map +0 -1
- package/dist-types/components/menu/test-suites/InteractiveListMixin.suite.d.ts +0 -14
- package/dist-types/components/menu/test-suites/InteractiveListMixin.suite.d.ts.map +0 -1
- package/dist-types/components/menu/test-suites/LionMenu.suite.d.ts +0 -9
- package/dist-types/components/menu/test-suites/LionMenu.suite.d.ts.map +0 -1
- package/dist-types/components/menu/test-suites/LionMenuHybrid.suite.d.ts +0 -5
- package/dist-types/components/menu/test-suites/LionMenuHybrid.suite.d.ts.map +0 -1
- package/dist-types/components/menu/test-suites/MoreButtonMenuMixin.suite.d.ts +0 -14
- package/dist-types/components/menu/test-suites/MoreButtonMenuMixin.suite.d.ts.map +0 -1
- package/dist-types/components/menu/test-suites/MultiLevelListMixin.suite.d.ts +0 -11
- package/dist-types/components/menu/test-suites/MultiLevelListMixin.suite.d.ts.map +0 -1
- package/dist-types/components/navigation-bar/src/LionNavigationBar.d.ts +0 -238
- package/dist-types/components/navigation-bar/src/LionNavigationBar.d.ts.map +0 -1
- package/dist-types/components/navigation-bar/src/types.d.ts +0 -85
- package/dist-types/components/navigation-bar/src/types.d.ts.map +0 -1
- package/dist-types/components/overlays/test/withHoverInteraction.test.d.ts +0 -2
- package/dist-types/components/overlays/test/withHoverInteraction.test.d.ts.map +0 -1
- package/dist-types/exports/define/lion-item.d.ts +0 -2
- package/dist-types/exports/define/lion-item.d.ts.map +0 -1
- package/dist-types/exports/define/lion-menu-overlay.d.ts +0 -2
- package/dist-types/exports/define/lion-menu-overlay.d.ts.map +0 -1
- package/dist-types/exports/define/lion-menu.d.ts +0 -2
- package/dist-types/exports/define/lion-menu.d.ts.map +0 -1
- package/dist-types/exports/define/lion-navigation-bar.d.ts +0 -2
- package/dist-types/exports/define/lion-navigation-bar.d.ts.map +0 -1
- package/dist-types/exports/define/lion-toolbar.d.ts +0 -2
- package/dist-types/exports/define/lion-toolbar.d.ts.map +0 -1
- package/dist-types/exports/define/lion-tree.d.ts +0 -2
- package/dist-types/exports/define/lion-tree.d.ts.map +0 -1
- package/dist-types/exports/menu-test-suites.d.ts +0 -4
- package/dist-types/exports/menu-test-suites.d.ts.map +0 -1
- package/dist-types/exports/menu.d.ts +0 -7
- package/dist-types/exports/menu.d.ts.map +0 -1
- package/dist-types/exports/navigation-bar.d.ts +0 -2
- package/dist-types/exports/navigation-bar.d.ts.map +0 -1
- package/docs/components/menu/api-table.md +0 -460
- package/docs/components/menu/applyMenuDemoStyles.js +0 -173
- package/docs/components/menu/extensions.md +0 -262
- package/docs/components/menu/index.md +0 -13
- package/docs/components/menu/overview.md +0 -422
- package/docs/components/menu/use-cases.md +0 -77
- package/exports/define/lion-item.js +0 -3
- package/exports/define/lion-menu-overlay.js +0 -3
- package/exports/define/lion-menu.js +0 -3
- package/exports/define/lion-navigation-bar.js +0 -3
- package/exports/define/lion-toolbar.js +0 -3
- package/exports/define/lion-tree.js +0 -3
- package/exports/menu-test-suites.js +0 -4
- package/exports/menu.js +0 -7
- package/exports/navigation-bar.js +0 -1
- package/menu-test-suites.js +0 -4
- package/menu.js +0 -7
- package/navigation-bar.js +0 -1
|
@@ -4,11 +4,12 @@ import { IsDateDisabled, MaxDate, MinDate, MinMaxDate } from '@lion/ui/form-core
|
|
|
4
4
|
import { aTimeout, defineCE, expect, fixture as _fixture, nextFrame } from '@open-wc/testing';
|
|
5
5
|
import { mimicClick } from '@lion/ui/overlays-test-helpers.js';
|
|
6
6
|
import sinon from 'sinon';
|
|
7
|
-
import { setViewport } from '@web/test-runner-commands';
|
|
7
|
+
import { sendKeys, setViewport } from '@web/test-runner-commands';
|
|
8
8
|
import { DatepickerInputObject } from '@lion/ui/input-datepicker-test-helpers.js';
|
|
9
9
|
import { LionInputDatepicker } from '@lion/ui/input-datepicker.js';
|
|
10
10
|
|
|
11
11
|
import '@lion/ui/define/lion-input-datepicker.js';
|
|
12
|
+
import { runDatepickerSuite } from '../test-suites/LionInputDatepicker.suite.js';
|
|
12
13
|
|
|
13
14
|
/**
|
|
14
15
|
* @typedef {import('lit').TemplateResult} TemplateResult
|
|
@@ -479,10 +480,14 @@ describe('<lion-input-datepicker>', () => {
|
|
|
479
480
|
// Open the calendar
|
|
480
481
|
await elObj.openCalendar();
|
|
481
482
|
|
|
483
|
+
const selectedDateEl = calendarEl?.shadowRoot?.querySelector(
|
|
484
|
+
'.calendar__day-button[selected]',
|
|
485
|
+
);
|
|
486
|
+
// @ts-ignore
|
|
487
|
+
selectedDateEl?.focus();
|
|
488
|
+
|
|
482
489
|
// Move focus to 18th of December
|
|
483
|
-
|
|
484
|
-
?.querySelector('#js-content-wrapper')
|
|
485
|
-
?.dispatchEvent(new KeyboardEvent('keydown', { key: 'ArrowRight' }));
|
|
490
|
+
await sendKeys({ press: 'ArrowRight' });
|
|
486
491
|
|
|
487
492
|
expect(/** @type {Date} */ (calendarEl.focusedDate).getTime()).to.equal(
|
|
488
493
|
new Date('December 18, 2020 03:24:00 GMT+0000').getTime(),
|
|
@@ -597,11 +602,12 @@ describe('<lion-input-datepicker>', () => {
|
|
|
597
602
|
<lion-input-datepicker label="End date" name="endDate"></lion-input-datepicker>
|
|
598
603
|
`);
|
|
599
604
|
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
|
|
605
|
+
// @ts-expect-error
|
|
606
|
+
const elements = el.parentElement.children;
|
|
607
|
+
// @ts-expect-error
|
|
608
|
+
const startLabel = elements.startDate.querySelector('button').ariaLabel;
|
|
609
|
+
// @ts-expect-error
|
|
610
|
+
const endLabel = elements.endDate.querySelector('button').ariaLabel;
|
|
605
611
|
|
|
606
612
|
expect(startLabel).to.not.equal(endLabel);
|
|
607
613
|
});
|
|
@@ -833,4 +839,8 @@ describe('<lion-input-datepicker>', () => {
|
|
|
833
839
|
).to.be.true;
|
|
834
840
|
});
|
|
835
841
|
});
|
|
842
|
+
|
|
843
|
+
describe('Run suite', () => {
|
|
844
|
+
runDatepickerSuite();
|
|
845
|
+
});
|
|
836
846
|
});
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { expect, html, fixture, waitUntil, unsafeStatic } from '@open-wc/testing';
|
|
2
|
+
import { sendKeys } from '@web/test-runner-commands';
|
|
3
|
+
|
|
4
|
+
/** @typedef {import('@lion/ui/input-datepicker.js').LionInputDatepicker} LionInputDatepicker */
|
|
5
|
+
|
|
6
|
+
export function runDatepickerSuite({
|
|
7
|
+
datepickerTagName = 'lion-input-datepicker',
|
|
8
|
+
calendarTagName = 'lion-calendar',
|
|
9
|
+
} = {}) {
|
|
10
|
+
const tag = unsafeStatic(datepickerTagName);
|
|
11
|
+
|
|
12
|
+
it('should not reopen the datepicker popup when the date is selected by keyboard', async () => {
|
|
13
|
+
/** @type {LionInputDatepicker} */
|
|
14
|
+
const el = await fixture(html`<${tag} .modelValue="${new Date('2018/05/30')}"></${tag}>`);
|
|
15
|
+
await el.updateComplete;
|
|
16
|
+
|
|
17
|
+
// @ts-ignore
|
|
18
|
+
const openDatepickerButton = el._invokerNode;
|
|
19
|
+
openDatepickerButton?.focus();
|
|
20
|
+
openDatepickerButton?.click();
|
|
21
|
+
/**
|
|
22
|
+
* @returns {HTMLElement | null | undefined}
|
|
23
|
+
*/
|
|
24
|
+
const getSelectedDateEl = () =>
|
|
25
|
+
el?.shadowRoot
|
|
26
|
+
?.querySelector(calendarTagName)
|
|
27
|
+
?.shadowRoot?.querySelector('.calendar__day-button[selected]');
|
|
28
|
+
await waitUntil(getSelectedDateEl);
|
|
29
|
+
getSelectedDateEl()?.focus();
|
|
30
|
+
await sendKeys({ press: 'ArrowLeft' });
|
|
31
|
+
await sendKeys({ press: 'Enter' });
|
|
32
|
+
|
|
33
|
+
expect(el.opened).to.be.false;
|
|
34
|
+
});
|
|
35
|
+
}
|
|
@@ -10,6 +10,8 @@ import { LocalizeMixin } from '@lion/ui/localize-no-side-effects.js';
|
|
|
10
10
|
export class LionInputEmail extends LocalizeMixin(LionInput) {
|
|
11
11
|
constructor() {
|
|
12
12
|
super();
|
|
13
|
+
this.autocomplete = 'email';
|
|
14
|
+
|
|
13
15
|
// local-part@domain where the local part may be up to 64 characters long
|
|
14
16
|
// and the domain may have a maximum of 255 characters.
|
|
15
17
|
// @see https://www.wikiwand.com/en/Email_address
|
|
@@ -15,6 +15,12 @@ describe('<lion-input-email>', () => {
|
|
|
15
15
|
expect(_inputNode.type).to.equal('text');
|
|
16
16
|
});
|
|
17
17
|
|
|
18
|
+
it('sets autocomplete to "email"', async () => {
|
|
19
|
+
const el = await fixture(`<lion-input-email></lion-input-email>`);
|
|
20
|
+
// @ts-expect-error [allow-protected] inside tests
|
|
21
|
+
expect(el._inputNode.getAttribute('autocomplete')).to.equal('email');
|
|
22
|
+
});
|
|
23
|
+
|
|
18
24
|
it('has validator "IsEmail" applied by default', async () => {
|
|
19
25
|
// More elaborate tests can be found in lion-validate/test/StringValidators.test.js
|
|
20
26
|
const el = await fixture(`<lion-input-email></lion-input-email>`);
|
|
@@ -2,13 +2,14 @@ import { Validator } from '@lion/ui/form-core.js';
|
|
|
2
2
|
import { getLocalizeManager } from '@lion/ui/localize-no-side-effects.js';
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
|
+
* @typedef {import('../../form-core/types/validate/index.js').FeedbackMessageData} FeedbackMessageData
|
|
5
6
|
* @typedef {import('../../form-core/types/validate/validate.js').ValidatorConfig} ValidatorConfig
|
|
6
7
|
* @typedef {import('../../form-core/types/validate/validate.js').ValidatorParam} ValidatorParam
|
|
7
8
|
* @typedef {import('../../form-core/types/validate/validate.js').ValidatorOutcome} ValidatorOutcome
|
|
8
9
|
* @typedef {import('../types/input-file.js').InputFile} InputFile
|
|
9
10
|
*/
|
|
10
11
|
|
|
11
|
-
/* eslint max-classes-per-file: ["error",
|
|
12
|
+
/* eslint max-classes-per-file: ["error", 3] */
|
|
12
13
|
export class IsAcceptedFile extends Validator {
|
|
13
14
|
static validatorName = 'IsAcceptedFile';
|
|
14
15
|
|
|
@@ -112,3 +113,32 @@ export class DuplicateFileNames extends Validator {
|
|
|
112
113
|
return localizeManager.msg('lion-input-file:uploadTextDuplicateFileName');
|
|
113
114
|
}
|
|
114
115
|
}
|
|
116
|
+
|
|
117
|
+
export class MaxFileCount extends Validator {
|
|
118
|
+
static get validatorName() {
|
|
119
|
+
return 'MaxFileCount';
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
/**
|
|
123
|
+
* @param {Partial<FeedbackMessageData>} [data]
|
|
124
|
+
* @returns {Promise<string|Element>}
|
|
125
|
+
*/
|
|
126
|
+
static async getMessage(data) {
|
|
127
|
+
const localizeManager = getLocalizeManager();
|
|
128
|
+
if (!data?.params || typeof data.params !== 'number' || data.params <= 0) {
|
|
129
|
+
return 'Invalid MaxFileCount parameter. Please provide a valid number greater than 0.';
|
|
130
|
+
}
|
|
131
|
+
return localizeManager.msg('lion-input-file:maxFileCountExceeded', {
|
|
132
|
+
maxFileCount: data.params,
|
|
133
|
+
});
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
/**
|
|
137
|
+
* @param {File[]} value
|
|
138
|
+
* @param {number} maxFiles
|
|
139
|
+
* @returns {boolean}
|
|
140
|
+
*/
|
|
141
|
+
execute(value, maxFiles = this.param || 0) {
|
|
142
|
+
return maxFiles > 0 && value.length > maxFiles;
|
|
143
|
+
}
|
|
144
|
+
}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { expect } from '@open-wc/testing';
|
|
2
|
+
import { MaxFileCount } from '@lion/ui/input-file.js';
|
|
2
3
|
import { IsAcceptedFile } from '../src/validators.js';
|
|
3
4
|
|
|
4
5
|
describe('lion-input-file: IsAcceptedFile', () => {
|
|
@@ -167,4 +168,34 @@ describe('lion-input-file: IsAcceptedFile', () => {
|
|
|
167
168
|
expect(returnVal).to.be.true;
|
|
168
169
|
});
|
|
169
170
|
});
|
|
171
|
+
|
|
172
|
+
describe('Max File Count', () => {
|
|
173
|
+
/**
|
|
174
|
+
*
|
|
175
|
+
* @param {string} filename
|
|
176
|
+
* @returns {File}
|
|
177
|
+
*/
|
|
178
|
+
const newFile = filename => new File([], filename);
|
|
179
|
+
|
|
180
|
+
it('Allow up to 2 files', () => {
|
|
181
|
+
const validator = new MaxFileCount(2);
|
|
182
|
+
expect(MaxFileCount.validatorName).to.equal('MaxFileCount');
|
|
183
|
+
|
|
184
|
+
let isEnabled = validator.execute([newFile('file1.txt'), newFile('file2.txt')]);
|
|
185
|
+
expect(isEnabled).to.be.false;
|
|
186
|
+
|
|
187
|
+
isEnabled = validator.execute([
|
|
188
|
+
newFile('file1.txt'),
|
|
189
|
+
newFile('file2.txt'),
|
|
190
|
+
newFile('file3.txt'),
|
|
191
|
+
]);
|
|
192
|
+
expect(isEnabled).to.be.true;
|
|
193
|
+
});
|
|
194
|
+
|
|
195
|
+
it('Allow any number of files with empty param', () => {
|
|
196
|
+
const validator = new MaxFileCount();
|
|
197
|
+
const isEnabled = validator.execute([newFile('file1.txt'), newFile('file2.txt')]);
|
|
198
|
+
expect(isEnabled).to.be.false;
|
|
199
|
+
});
|
|
200
|
+
});
|
|
170
201
|
});
|
|
@@ -17,4 +17,5 @@ export default {
|
|
|
17
17
|
selectTextDuplicateFileName: 'Файл със същото име на файл вече е налице.',
|
|
18
18
|
selectTextMultipleFile: 'Избор на файлове',
|
|
19
19
|
selectTextSingleFile: 'Избор на файл',
|
|
20
|
+
maxFileCountExceeded: 'Броят на качените файлове не може да надвишава {maxFileCount}.',
|
|
20
21
|
};
|
|
@@ -18,4 +18,5 @@ export default {
|
|
|
18
18
|
selectTextDuplicateFileName: 'Soubor se stejným názvem byl již přítomen.',
|
|
19
19
|
selectTextMultipleFile: 'Vybrat soubory',
|
|
20
20
|
selectTextSingleFile: 'Vybrat soubor',
|
|
21
|
+
maxFileCountExceeded: 'Počet nahraných souborů nesmí překročit {maxFileCount}.',
|
|
21
22
|
};
|
|
@@ -17,4 +17,6 @@ export default {
|
|
|
17
17
|
selectTextDuplicateFileName: 'Eine Datei mit demselben Dateinamen war bereits vorhanden.',
|
|
18
18
|
selectTextMultipleFile: 'Dateien auswählen',
|
|
19
19
|
selectTextSingleFile: 'Datei auswählen',
|
|
20
|
+
maxFileCountExceeded:
|
|
21
|
+
'Die Anzahl der hochgeladenen Dateien darf {maxFileCount} nicht überschreiten.',
|
|
20
22
|
};
|
|
@@ -16,4 +16,5 @@ export default {
|
|
|
16
16
|
selectTextDuplicateFileName: 'A file with same filename was already present.',
|
|
17
17
|
selectTextMultipleFile: 'Select files',
|
|
18
18
|
selectTextSingleFile: 'Select file',
|
|
19
|
+
maxFileCountExceeded: 'The number of uploaded files must not exceed {maxFileCount}.',
|
|
19
20
|
};
|
|
@@ -17,4 +17,5 @@ export default {
|
|
|
17
17
|
selectTextDuplicateFileName: 'Ya había un archivo con el mismo nombre de archivo.',
|
|
18
18
|
selectTextMultipleFile: 'Seleccionar archivos',
|
|
19
19
|
selectTextSingleFile: 'Seleccionar archivo',
|
|
20
|
+
maxFileCountExceeded: 'El número de archivos cargados no puede superar {maxFileCount}.',
|
|
20
21
|
};
|
|
@@ -18,4 +18,5 @@ export default {
|
|
|
18
18
|
selectTextDuplicateFileName: 'Un fichier portant le même nom de fichier était déjà présent.',
|
|
19
19
|
selectTextMultipleFile: 'Sélectionnez des fichiers',
|
|
20
20
|
selectTextSingleFile: 'Sélectionnez un fichier',
|
|
21
|
+
maxFileCountExceeded: 'Le nombre de fichiers téléchargés ne peut pas dépasser {maxFileCount}.',
|
|
21
22
|
};
|
|
@@ -17,4 +17,5 @@ export default {
|
|
|
17
17
|
selectTextDuplicateFileName: 'Már volt ilyen nevű fájl.',
|
|
18
18
|
selectTextMultipleFile: 'Fájl(ok) kiválasztása',
|
|
19
19
|
selectTextSingleFile: 'Fájl kiválasztása',
|
|
20
|
+
maxFileCountExceeded: 'A feltöltött fájlok száma nem haladhatja meg a {maxFileCount}-ot.',
|
|
20
21
|
};
|
|
@@ -16,4 +16,5 @@ export default {
|
|
|
16
16
|
selectTextDuplicateFileName: 'File dengan nama file yang sama sudah ada.',
|
|
17
17
|
selectTextMultipleFile: 'Pilih beberapa file',
|
|
18
18
|
selectTextSingleFile: 'Pilih berkas',
|
|
19
|
+
maxFileCountExceeded: 'Jumlah file yang diunggah tidak boleh melebihi {maxFileCount}.',
|
|
19
20
|
};
|
|
@@ -17,4 +17,5 @@ export default {
|
|
|
17
17
|
selectTextDuplicateFileName: 'Un file con lo stesso nome file era già presente.',
|
|
18
18
|
selectTextMultipleFile: 'Seleziona file',
|
|
19
19
|
selectTextSingleFile: 'Seleziona file',
|
|
20
|
+
maxFileCountExceeded: 'Il numero di file caricati non può superare {maxFileCount}.',
|
|
20
21
|
};
|
|
@@ -17,4 +17,5 @@ export default {
|
|
|
17
17
|
selectTextDuplicateFileName: 'Er bestaat al een bestand met dezelfde bestandsnaam.',
|
|
18
18
|
selectTextMultipleFile: 'Selecteer bestanden',
|
|
19
19
|
selectTextSingleFile: 'Selecteer bestand',
|
|
20
|
+
maxFileCountExceeded: 'Het aantal geüploade bestanden mag niet meer dan {maxFileCount} zijn.',
|
|
20
21
|
};
|
|
@@ -17,4 +17,5 @@ export default {
|
|
|
17
17
|
selectTextDuplicateFileName: 'Plik o tej samej nazwie już istnieje.',
|
|
18
18
|
selectTextMultipleFile: 'Wybierz pliki',
|
|
19
19
|
selectTextSingleFile: 'Wybierz plik',
|
|
20
|
+
maxFileCountExceeded: 'Liczba przesłanych plików nie może przekraczać {maxFileCount}.',
|
|
20
21
|
};
|
|
@@ -17,4 +17,5 @@ export default {
|
|
|
17
17
|
selectTextDuplicateFileName: 'Există deja un fişier cu acelaşi nume de fişier.',
|
|
18
18
|
selectTextMultipleFile: 'Selectare fișiere',
|
|
19
19
|
selectTextSingleFile: 'Selectare fișier',
|
|
20
|
+
maxFileCountExceeded: 'Numărul de fișiere încărcate nu poate depăși {maxFileCount}.',
|
|
20
21
|
};
|
|
@@ -16,4 +16,5 @@ export default {
|
|
|
16
16
|
selectTextDuplicateFileName: 'Файл с таким названием уже существует.',
|
|
17
17
|
selectTextMultipleFile: 'Выберите файлы',
|
|
18
18
|
selectTextSingleFile: 'Выберите файл',
|
|
19
|
+
maxFileCountExceeded: 'Количество загруженных файлов не может превышать {maxFileCount}.',
|
|
19
20
|
};
|
|
@@ -17,4 +17,5 @@ export default {
|
|
|
17
17
|
selectTextDuplicateFileName: 'Súbor s rovnakým názvom súboru už existoval.',
|
|
18
18
|
selectTextMultipleFile: 'Vybrať súbory',
|
|
19
19
|
selectTextSingleFile: 'Vybrať súbor',
|
|
20
|
+
maxFileCountExceeded: 'Počet nahratých súborov nesmie prekročiť {maxFileCount}.',
|
|
20
21
|
};
|
|
@@ -17,4 +17,5 @@ export default {
|
|
|
17
17
|
selectTextDuplicateFileName: 'Файл із такою назвою вже існував.',
|
|
18
18
|
selectTextMultipleFile: 'Виберіть файли',
|
|
19
19
|
selectTextSingleFile: 'Виберіть файл',
|
|
20
|
+
maxFileCountExceeded: 'Кількість завантажених файлів не може перевищувати {maxFileCount}.',
|
|
20
21
|
};
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { defineCE } from '@open-wc/testing';
|
|
2
1
|
import {
|
|
3
|
-
runInteractionStateMixinSuite,
|
|
4
2
|
runFormatMixinSuite,
|
|
3
|
+
runInteractionStateMixinSuite,
|
|
5
4
|
} from '@lion/ui/form-core-test-suites.js';
|
|
5
|
+
import { defineCE } from '@open-wc/testing';
|
|
6
6
|
import { LionInputStepper } from '../src/LionInputStepper.js';
|
|
7
7
|
|
|
8
8
|
export const runInputStepperIntegrationSuite = (klass = LionInputStepper) => {
|
|
@@ -137,6 +137,7 @@ export class LionInputTel extends LocalizeMixin(LionInput) {
|
|
|
137
137
|
*/
|
|
138
138
|
constructor() {
|
|
139
139
|
super();
|
|
140
|
+
this.autocomplete = 'tel';
|
|
140
141
|
|
|
141
142
|
/**
|
|
142
143
|
* Determines what the formatter output should look like.
|
|
@@ -192,7 +193,6 @@ export class LionInputTel extends LocalizeMixin(LionInput) {
|
|
|
192
193
|
*/
|
|
193
194
|
firstUpdated(changedProperties) {
|
|
194
195
|
super.firstUpdated(changedProperties);
|
|
195
|
-
|
|
196
196
|
// This will trigger the right keyboard on mobile
|
|
197
197
|
this._inputNode.inputMode = 'tel';
|
|
198
198
|
}
|
|
@@ -222,6 +222,13 @@ export function runInputTelSuite({ klass = LionInputTel } = {}) {
|
|
|
222
222
|
expect(el._inputNode.inputMode).to.equal('tel');
|
|
223
223
|
});
|
|
224
224
|
|
|
225
|
+
it('sets autocomplete to "tel"', async () => {
|
|
226
|
+
const el = await fixture(html` <${tag}></${tag}> `);
|
|
227
|
+
await el.updateComplete;
|
|
228
|
+
// @ts-expect-error [allow-protected] inside tests
|
|
229
|
+
expect(el._inputNode.getAttribute('autocomplete')).to.equal('tel');
|
|
230
|
+
});
|
|
231
|
+
|
|
225
232
|
it('formats according to locale', async () => {
|
|
226
233
|
const el = await fixture(
|
|
227
234
|
html` <${tag} .modelValue="${'+31612345678'}" .allowedRegions="${['NL']}"></${tag}> `,
|
|
@@ -210,7 +210,6 @@ describe('formatDate', () => {
|
|
|
210
210
|
locale,
|
|
211
211
|
};
|
|
212
212
|
const parsedDate = /** @type {Date} */ (parseDate('12.10.2019'));
|
|
213
|
-
// @ts-ignore - dynamic locale key access
|
|
214
213
|
expect(formatDate(parsedDate, options)).to.equal(LOCALE_FORMATTED_DATE_MAP[locale]);
|
|
215
214
|
});
|
|
216
215
|
});
|