@universal-material/web 3.7.2 → 3.9.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/.claude-plugin/plugin.json +12 -0
- package/README.md +12 -0
- package/app-bar/top-app-bar.d.ts +20 -4
- package/app-bar/top-app-bar.d.ts.map +1 -1
- package/app-bar/top-app-bar.js +84 -33
- package/app-bar/top-app-bar.js.map +1 -1
- package/app-bar/top-app-bar.styles.d.ts.map +1 -1
- package/app-bar/top-app-bar.styles.js +18 -1
- package/app-bar/top-app-bar.styles.js.map +1 -1
- package/badge/badge.d.ts +5 -2
- package/badge/badge.d.ts.map +1 -1
- package/badge/badge.js +9 -6
- package/badge/badge.js.map +1 -1
- package/badge/badge.styles.d.ts.map +1 -1
- package/badge/badge.styles.js +1 -0
- package/badge/badge.styles.js.map +1 -1
- package/bundle.min.js +5480 -2170
- package/button/button-base.d.ts +9 -2
- package/button/button-base.d.ts.map +1 -1
- package/button/button-base.js +12 -5
- package/button/button-base.js.map +1 -1
- package/button/button-set.d.ts +3 -3
- package/button/button-set.d.ts.map +1 -1
- package/button/button-set.js +7 -7
- package/button/button-set.js.map +1 -1
- package/button/button.d.ts +10 -7
- package/button/button.d.ts.map +1 -1
- package/button/button.js +17 -14
- package/button/button.js.map +1 -1
- package/button/fab-menu-color-context.d.ts +2 -2
- package/button/fab-menu-color-context.d.ts.map +1 -1
- package/button/fab-menu-color-context.js.map +1 -1
- package/button/fab-menu-item.d.ts +3 -3
- package/button/fab-menu-item.d.ts.map +1 -1
- package/button/fab-menu-item.js +11 -11
- package/button/fab-menu-item.js.map +1 -1
- package/button/fab-menu.d.ts +20 -5
- package/button/fab-menu.d.ts.map +1 -1
- package/button/fab-menu.js +48 -11
- package/button/fab-menu.js.map +1 -1
- package/button/fab.d.ts +22 -7
- package/button/fab.d.ts.map +1 -1
- package/button/fab.js +49 -11
- package/button/fab.js.map +1 -1
- package/button/icon-button.d.ts +13 -7
- package/button/icon-button.d.ts.map +1 -1
- package/button/icon-button.js +14 -8
- package/button/icon-button.js.map +1 -1
- package/button/toggle-button.d.ts +6 -6
- package/button/toggle-button.d.ts.map +1 -1
- package/button/toggle-button.js +10 -10
- package/button/toggle-button.js.map +1 -1
- package/button-field/button-field.d.ts +6 -3
- package/button-field/button-field.d.ts.map +1 -1
- package/button-field/button-field.js +12 -9
- package/button-field/button-field.js.map +1 -1
- package/calendar/calendar-adapter.d.ts +3 -0
- package/calendar/calendar-adapter.d.ts.map +1 -1
- package/calendar/calendar-adapter.js.map +1 -1
- package/calendar/calendar-base.d.ts +18 -1
- package/calendar/calendar-base.d.ts.map +1 -1
- package/calendar/calendar-base.js +188 -25
- package/calendar/calendar-base.js.map +1 -1
- package/calendar/calendar.d.ts +6 -2
- package/calendar/calendar.d.ts.map +1 -1
- package/calendar/calendar.js +12 -8
- package/calendar/calendar.js.map +1 -1
- package/calendar/default-calendar-adapter.d.ts +3 -0
- package/calendar/default-calendar-adapter.d.ts.map +1 -1
- package/calendar/default-calendar-adapter.js +17 -5
- package/calendar/default-calendar-adapter.js.map +1 -1
- package/calendar/range-calendar.d.ts +2 -2
- package/calendar/range-calendar.d.ts.map +1 -1
- package/calendar/range-calendar.js +9 -9
- package/calendar/range-calendar.js.map +1 -1
- package/card/card-content.d.ts +7 -2
- package/card/card-content.d.ts.map +1 -1
- package/card/card-content.js +10 -5
- package/card/card-content.js.map +1 -1
- package/card/card-media.d.ts +5 -2
- package/card/card-media.d.ts.map +1 -1
- package/card/card-media.js +8 -5
- package/card/card-media.js.map +1 -1
- package/card/card.d.ts +4 -4
- package/card/card.d.ts.map +1 -1
- package/card/card.js +5 -5
- package/card/card.js.map +1 -1
- package/checkbox/checkbox-list-item.d.ts +4 -4
- package/checkbox/checkbox-list-item.d.ts.map +1 -1
- package/checkbox/checkbox-list-item.js +5 -5
- package/checkbox/checkbox-list-item.js.map +1 -1
- package/checkbox/checkbox.d.ts +10 -3
- package/checkbox/checkbox.d.ts.map +1 -1
- package/checkbox/checkbox.js +14 -7
- package/checkbox/checkbox.js.map +1 -1
- package/chip/chip-set.d.ts +3 -3
- package/chip/chip-set.d.ts.map +1 -1
- package/chip/chip-set.js +6 -6
- package/chip/chip-set.js.map +1 -1
- package/chip/chip.d.ts +8 -5
- package/chip/chip.d.ts.map +1 -1
- package/chip/chip.js +23 -20
- package/chip/chip.js.map +1 -1
- package/chip-field/chip-field.d.ts +6 -3
- package/chip-field/chip-field.d.ts.map +1 -1
- package/chip-field/chip-field.js +9 -9
- package/chip-field/chip-field.js.map +1 -1
- package/collapse/collapse.d.ts +26 -0
- package/collapse/collapse.d.ts.map +1 -0
- package/collapse/collapse.js +62 -0
- package/collapse/collapse.js.map +1 -0
- package/collapse/collapse.styles.d.ts +2 -0
- package/collapse/collapse.styles.d.ts.map +1 -0
- package/collapse/collapse.styles.js +8 -0
- package/collapse/collapse.styles.js.map +1 -0
- package/config.js.map +1 -1
- package/css/universal-material.css +2 -1
- package/css/universal-material.min.css +2 -1
- package/custom-elements.json +17175 -9684
- package/datepicker/datepicker.d.ts +54 -3
- package/datepicker/datepicker.d.ts.map +1 -1
- package/datepicker/datepicker.js +202 -6
- package/datepicker/datepicker.js.map +1 -1
- package/datepicker/datepicker.styles.d.ts.map +1 -1
- package/datepicker/datepicker.styles.js +25 -0
- package/datepicker/datepicker.styles.js.map +1 -1
- package/datepicker/format.d.ts +19 -0
- package/datepicker/format.d.ts.map +1 -0
- package/datepicker/format.js +47 -0
- package/datepicker/format.js.map +1 -0
- package/datepicker/range-datepicker.d.ts +58 -0
- package/datepicker/range-datepicker.d.ts.map +1 -0
- package/datepicker/range-datepicker.js +212 -0
- package/datepicker/range-datepicker.js.map +1 -0
- package/dialog/confirm-dialog-builder.d.ts +3 -3
- package/dialog/confirm-dialog-builder.d.ts.map +1 -1
- package/dialog/confirm-dialog-builder.js.map +1 -1
- package/dialog/dialog-builder.d.ts +5 -4
- package/dialog/dialog-builder.d.ts.map +1 -1
- package/dialog/dialog-builder.js +10 -3
- package/dialog/dialog-builder.js.map +1 -1
- package/dialog/dialog-button-def.d.ts +3 -3
- package/dialog/dialog-button-def.d.ts.map +1 -1
- package/dialog/dialog-button-def.js.map +1 -1
- package/dialog/dialog.d.ts +10 -2
- package/dialog/dialog.d.ts.map +1 -1
- package/dialog/dialog.js +22 -14
- package/dialog/dialog.js.map +1 -1
- package/dialog/message-dialog-builder.d.ts +2 -2
- package/dialog/message-dialog-builder.d.ts.map +1 -1
- package/dialog/message-dialog-builder.js.map +1 -1
- package/elevation/elevation.d.ts +2 -2
- package/elevation/elevation.d.ts.map +1 -1
- package/elevation/elevation.js +4 -4
- package/elevation/elevation.js.map +1 -1
- package/expansion-panel/expansion-panel-container.d.ts +24 -0
- package/expansion-panel/expansion-panel-container.d.ts.map +1 -0
- package/expansion-panel/expansion-panel-container.js +54 -0
- package/expansion-panel/expansion-panel-container.js.map +1 -0
- package/expansion-panel/expansion-panel-container.styles.d.ts +2 -0
- package/expansion-panel/expansion-panel-container.styles.d.ts.map +1 -0
- package/expansion-panel/expansion-panel-container.styles.js +9 -0
- package/expansion-panel/expansion-panel-container.styles.js.map +1 -0
- package/expansion-panel/expansion-panel.d.ts +37 -0
- package/expansion-panel/expansion-panel.d.ts.map +1 -0
- package/expansion-panel/expansion-panel.js +89 -0
- package/expansion-panel/expansion-panel.js.map +1 -0
- package/expansion-panel/expansion-panel.styles.d.ts +2 -0
- package/expansion-panel/expansion-panel.styles.d.ts.map +1 -0
- package/expansion-panel/expansion-panel.styles.js +66 -0
- package/expansion-panel/expansion-panel.styles.js.map +1 -0
- package/field/field-base.d.ts +17 -3
- package/field/field-base.d.ts.map +1 -1
- package/field/field-base.js +30 -20
- package/field/field-base.js.map +1 -1
- package/field/field-defaults-context.d.ts +2 -2
- package/field/field-defaults-context.d.ts.map +1 -1
- package/field/field-defaults-context.js.map +1 -1
- package/field/field-defaults.d.ts +3 -3
- package/field/field-defaults.d.ts.map +1 -1
- package/field/field-defaults.js.map +1 -1
- package/field/field-variant.d.ts +1 -1
- package/field/field-variant.d.ts.map +1 -1
- package/field/field-variant.js.map +1 -1
- package/field/field.d.ts +7 -3
- package/field/field.d.ts.map +1 -1
- package/field/field.js +10 -6
- package/field/field.js.map +1 -1
- package/icon/icon.d.ts +2 -2
- package/icon/icon.d.ts.map +1 -1
- package/icon/icon.js +4 -4
- package/icon/icon.js.map +1 -1
- package/index.d.ts +29 -1
- package/index.d.ts.map +1 -1
- package/index.js +29 -1
- package/index.js.map +1 -1
- package/list/list-item.d.ts +19 -2
- package/list/list-item.d.ts.map +1 -1
- package/list/list-item.js +29 -6
- package/list/list-item.js.map +1 -1
- package/list/list-item.styles.d.ts.map +1 -1
- package/list/list-item.styles.js +13 -0
- package/list/list-item.styles.js.map +1 -1
- package/list/list.d.ts +2 -2
- package/list/list.d.ts.map +1 -1
- package/list/list.js +4 -4
- package/list/list.js.map +1 -1
- package/menu/menu-item.d.ts +9 -3
- package/menu/menu-item.d.ts.map +1 -1
- package/menu/menu-item.js +16 -10
- package/menu/menu-item.js.map +1 -1
- package/menu/menu.d.ts +18 -2
- package/menu/menu.d.ts.map +1 -1
- package/menu/menu.js +37 -18
- package/menu/menu.js.map +1 -1
- package/menu/menu.styles.d.ts.map +1 -1
- package/menu/menu.styles.js +5 -0
- package/menu/menu.styles.js.map +1 -1
- package/navigation/drawer-headline.d.ts +2 -2
- package/navigation/drawer-headline.d.ts.map +1 -1
- package/navigation/drawer-headline.js +6 -6
- package/navigation/drawer-headline.js.map +1 -1
- package/navigation/drawer-headline.styles.js +1 -1
- package/navigation/drawer-headline.styles.js.map +1 -1
- package/navigation/drawer-item.d.ts +3 -3
- package/navigation/drawer-item.d.ts.map +1 -1
- package/navigation/drawer-item.js +17 -12
- package/navigation/drawer-item.js.map +1 -1
- package/navigation/drawer.d.ts +2 -2
- package/navigation/drawer.d.ts.map +1 -1
- package/navigation/drawer.js +4 -4
- package/navigation/drawer.js.map +1 -1
- package/navigation/side-navigation.d.ts +9 -2
- package/navigation/side-navigation.d.ts.map +1 -1
- package/navigation/side-navigation.js +15 -8
- package/navigation/side-navigation.js.map +1 -1
- package/navigation-bar/navigation-bar-item.d.ts +40 -0
- package/navigation-bar/navigation-bar-item.d.ts.map +1 -0
- package/navigation-bar/navigation-bar-item.js +113 -0
- package/navigation-bar/navigation-bar-item.js.map +1 -0
- package/navigation-bar/navigation-bar-item.styles.d.ts +2 -0
- package/navigation-bar/navigation-bar-item.styles.d.ts.map +1 -0
- package/navigation-bar/navigation-bar-item.styles.js +101 -0
- package/navigation-bar/navigation-bar-item.styles.js.map +1 -0
- package/navigation-bar/navigation-bar.d.ts +40 -0
- package/navigation-bar/navigation-bar.d.ts.map +1 -0
- package/navigation-bar/navigation-bar.js +85 -0
- package/navigation-bar/navigation-bar.js.map +1 -0
- package/navigation-bar/navigation-bar.styles.d.ts +2 -0
- package/navigation-bar/navigation-bar.styles.d.ts.map +1 -0
- package/navigation-bar/navigation-bar.styles.js +44 -0
- package/navigation-bar/navigation-bar.styles.js.map +1 -0
- package/navigation-rail/navigation-rail-headline.d.ts +23 -0
- package/navigation-rail/navigation-rail-headline.d.ts.map +1 -0
- package/navigation-rail/navigation-rail-headline.js +28 -0
- package/navigation-rail/navigation-rail-headline.js.map +1 -0
- package/navigation-rail/navigation-rail-headline.styles.d.ts +2 -0
- package/navigation-rail/navigation-rail-headline.styles.d.ts.map +1 -0
- package/navigation-rail/navigation-rail-headline.styles.js +19 -0
- package/navigation-rail/navigation-rail-headline.styles.js.map +1 -0
- package/navigation-rail/navigation-rail-item.d.ts +58 -0
- package/navigation-rail/navigation-rail-item.d.ts.map +1 -0
- package/navigation-rail/navigation-rail-item.js +160 -0
- package/navigation-rail/navigation-rail-item.js.map +1 -0
- package/navigation-rail/navigation-rail-item.styles.d.ts +2 -0
- package/navigation-rail/navigation-rail-item.styles.d.ts.map +1 -0
- package/navigation-rail/navigation-rail-item.styles.js +182 -0
- package/navigation-rail/navigation-rail-item.styles.js.map +1 -0
- package/navigation-rail/navigation-rail.d.ts +66 -0
- package/navigation-rail/navigation-rail.d.ts.map +1 -0
- package/navigation-rail/navigation-rail.js +223 -0
- package/navigation-rail/navigation-rail.js.map +1 -0
- package/navigation-rail/navigation-rail.styles.d.ts +2 -0
- package/navigation-rail/navigation-rail.styles.d.ts.map +1 -0
- package/navigation-rail/navigation-rail.styles.js +220 -0
- package/navigation-rail/navigation-rail.styles.js.map +1 -0
- package/overflow-menu/overflow-menu-item.d.ts +8 -0
- package/overflow-menu/overflow-menu-item.d.ts.map +1 -1
- package/overflow-menu/overflow-menu-item.js +8 -0
- package/overflow-menu/overflow-menu-item.js.map +1 -1
- package/overflow-menu/overflow-menu.d.ts +8 -2
- package/overflow-menu/overflow-menu.d.ts.map +1 -1
- package/overflow-menu/overflow-menu.js +10 -1
- package/overflow-menu/overflow-menu.js.map +1 -1
- package/package.json +21 -5
- package/progress/circular-progress.d.ts +9 -2
- package/progress/circular-progress.d.ts.map +1 -1
- package/progress/circular-progress.js +9 -6
- package/progress/circular-progress.js.map +1 -1
- package/progress/progress-bar.d.ts +9 -2
- package/progress/progress-bar.d.ts.map +1 -1
- package/progress/progress-bar.js +9 -6
- package/progress/progress-bar.js.map +1 -1
- package/radio/radio-list-item.d.ts +4 -4
- package/radio/radio-list-item.d.ts.map +1 -1
- package/radio/radio-list-item.js +5 -5
- package/radio/radio-list-item.js.map +1 -1
- package/radio/radio.d.ts +6 -3
- package/radio/radio.d.ts.map +1 -1
- package/radio/radio.js +9 -6
- package/radio/radio.js.map +1 -1
- package/ripple/ripple.d.ts +2 -2
- package/ripple/ripple.d.ts.map +1 -1
- package/ripple/ripple.js +9 -9
- package/ripple/ripple.js.map +1 -1
- package/scaffold/pane.d.ts +127 -0
- package/scaffold/pane.d.ts.map +1 -0
- package/scaffold/pane.js +220 -0
- package/scaffold/pane.js.map +1 -0
- package/scaffold/pane.styles.d.ts +2 -0
- package/scaffold/pane.styles.d.ts.map +1 -0
- package/scaffold/pane.styles.js +1909 -0
- package/scaffold/pane.styles.js.map +1 -0
- package/scaffold/scaffold.d.ts +45 -0
- package/scaffold/scaffold.d.ts.map +1 -0
- package/scaffold/scaffold.js +170 -0
- package/scaffold/scaffold.js.map +1 -0
- package/scaffold/scaffold.styles.d.ts +2 -0
- package/scaffold/scaffold.styles.d.ts.map +1 -0
- package/scaffold/scaffold.styles.js +69 -0
- package/scaffold/scaffold.styles.js.map +1 -0
- package/scaffold/scroll-container-context.d.ts +4 -0
- package/scaffold/scroll-container-context.d.ts.map +1 -0
- package/scaffold/scroll-container-context.js +3 -0
- package/scaffold/scroll-container-context.js.map +1 -0
- package/scss/utilities/_divider.scss +4 -0
- package/search/search.d.ts +6 -3
- package/search/search.d.ts.map +1 -1
- package/search/search.js +10 -7
- package/search/search.js.map +1 -1
- package/search/search.styles.d.ts.map +1 -1
- package/search/search.styles.js +7 -2
- package/search/search.styles.js.map +1 -1
- package/select/option.d.ts +9 -3
- package/select/option.d.ts.map +1 -1
- package/select/option.js +14 -8
- package/select/option.js.map +1 -1
- package/select/select-navigation-controller.d.ts +4 -4
- package/select/select-navigation-controller.d.ts.map +1 -1
- package/select/select-navigation-controller.js.map +1 -1
- package/select/select.d.ts +22 -12
- package/select/select.d.ts.map +1 -1
- package/select/select.js +81 -31
- package/select/select.js.map +1 -1
- package/shared/button-wrapper.d.ts +4 -1
- package/shared/button-wrapper.d.ts.map +1 -1
- package/shared/button-wrapper.js +8 -8
- package/shared/button-wrapper.js.map +1 -1
- package/shared/char-count-text-field/native-text-field-wrapper.d.ts +15 -2
- package/shared/char-count-text-field/native-text-field-wrapper.d.ts.map +1 -1
- package/shared/char-count-text-field/native-text-field-wrapper.js +16 -6
- package/shared/char-count-text-field/native-text-field-wrapper.js.map +1 -1
- package/shared/menu-field/menu-field-navigation-controller.d.ts +3 -3
- package/shared/menu-field/menu-field-navigation-controller.d.ts.map +1 -1
- package/shared/menu-field/menu-field-navigation-controller.js.map +1 -1
- package/shared/menu-field/menu-field.d.ts +5 -5
- package/shared/menu-field/menu-field.d.ts.map +1 -1
- package/shared/menu-field/menu-field.js.map +1 -1
- package/shared/selection-control/selection-control-list-item.d.ts +2 -2
- package/shared/selection-control/selection-control-list-item.d.ts.map +1 -1
- package/shared/selection-control/selection-control-list-item.js +14 -1
- package/shared/selection-control/selection-control-list-item.js.map +1 -1
- package/shared/selection-control/selection-control.d.ts +10 -1
- package/shared/selection-control/selection-control.d.ts.map +1 -1
- package/shared/selection-control/selection-control.js +24 -7
- package/shared/selection-control/selection-control.js.map +1 -1
- package/shared/sets/set-base.d.ts +1 -1
- package/shared/sets/set-base.d.ts.map +1 -1
- package/shared/sets/set-base.js +2 -2
- package/shared/sets/set-base.js.map +1 -1
- package/shared/text-field-base/text-field-base.d.ts +37 -2
- package/shared/text-field-base/text-field-base.d.ts.map +1 -1
- package/shared/text-field-base/text-field-base.js +66 -4
- package/shared/text-field-base/text-field-base.js.map +1 -1
- package/skills/badge/SKILL.md +43 -0
- package/skills/buttons/SKILL.md +115 -0
- package/skills/card/SKILL.md +162 -0
- package/skills/chips/SKILL.md +95 -0
- package/skills/collapse/SKILL.md +37 -0
- package/skills/datepicker/SKILL.md +110 -0
- package/skills/dialog/SKILL.md +92 -0
- package/skills/drawer/SKILL.md +94 -0
- package/skills/expansion-panel/SKILL.md +65 -0
- package/skills/fab/SKILL.md +79 -0
- package/skills/list/SKILL.md +105 -0
- package/skills/menu/SKILL.md +120 -0
- package/skills/navigation-bar/SKILL.md +87 -0
- package/skills/navigation-rail/SKILL.md +127 -0
- package/skills/overview/SKILL.md +44 -0
- package/skills/progress/SKILL.md +63 -0
- package/skills/scaffold/SKILL.md +392 -0
- package/skills/search/SKILL.md +65 -0
- package/skills/select/SKILL.md +120 -0
- package/skills/selection-controls/SKILL.md +88 -0
- package/skills/setup/SKILL.md +58 -0
- package/skills/slider/SKILL.md +119 -0
- package/skills/snackbar/SKILL.md +70 -0
- package/skills/tab-bar/SKILL.md +55 -0
- package/skills/text-field/SKILL.md +114 -0
- package/skills/theming/SKILL.md +80 -0
- package/skills/top-app-bar/SKILL.md +64 -0
- package/skills/typeahead/SKILL.md +113 -0
- package/slider/slider.d.ts +73 -0
- package/slider/slider.d.ts.map +1 -0
- package/slider/slider.js +506 -0
- package/slider/slider.js.map +1 -0
- package/slider/slider.styles.d.ts +2 -0
- package/slider/slider.styles.d.ts.map +1 -0
- package/slider/slider.styles.js +292 -0
- package/slider/slider.styles.js.map +1 -0
- package/snackbar/snackbar.d.ts +13 -4
- package/snackbar/snackbar.d.ts.map +1 -1
- package/snackbar/snackbar.js +37 -28
- package/snackbar/snackbar.js.map +1 -1
- package/snackbar/snackbar.styles.js +1 -1
- package/snackbar/snackbar.styles.js.map +1 -1
- package/switch/switch-list-item.d.ts +4 -4
- package/switch/switch-list-item.d.ts.map +1 -1
- package/switch/switch-list-item.js +5 -5
- package/switch/switch-list-item.js.map +1 -1
- package/switch/switch.d.ts +3 -3
- package/switch/switch.d.ts.map +1 -1
- package/switch/switch.js +5 -5
- package/switch/switch.js.map +1 -1
- package/tab-bar/tab-bar.d.ts +9 -6
- package/tab-bar/tab-bar.d.ts.map +1 -1
- package/tab-bar/tab-bar.js +43 -23
- package/tab-bar/tab-bar.js.map +1 -1
- package/tab-bar/tab.d.ts +10 -5
- package/tab-bar/tab.d.ts.map +1 -1
- package/tab-bar/tab.js +14 -9
- package/tab-bar/tab.js.map +1 -1
- package/text-area/text-area.d.ts +6 -3
- package/text-area/text-area.d.ts.map +1 -1
- package/text-area/text-area.js +12 -9
- package/text-area/text-area.js.map +1 -1
- package/text-field/text-field.d.ts +31 -3
- package/text-field/text-field.d.ts.map +1 -1
- package/text-field/text-field.js +53 -13
- package/text-field/text-field.js.map +1 -1
- package/typeahead/highlight.d.ts +2 -2
- package/typeahead/highlight.d.ts.map +1 -1
- package/typeahead/highlight.js +7 -7
- package/typeahead/highlight.js.map +1 -1
- package/typeahead/typeahead-template-render.d.ts +4 -0
- package/typeahead/typeahead-template-render.d.ts.map +1 -1
- package/typeahead/typeahead-template-render.js +4 -0
- package/typeahead/typeahead-template-render.js.map +1 -1
- package/typeahead/typeahead.d.ts +14 -7
- package/typeahead/typeahead.d.ts.map +1 -1
- package/typeahead/typeahead.js +29 -18
- package/typeahead/typeahead.js.map +1 -1
- package/vscode.html-custom-data.json +1146 -326
package/elevation/elevation.js
CHANGED
|
@@ -2,15 +2,15 @@ import { __decorate } from "tslib";
|
|
|
2
2
|
import { LitElement } from 'lit';
|
|
3
3
|
import { customElement } from 'lit/decorators.js';
|
|
4
4
|
import { styles } from './elevation.styles.js';
|
|
5
|
-
let
|
|
5
|
+
let Elevation = class Elevation extends LitElement {
|
|
6
6
|
static { this.styles = styles; }
|
|
7
7
|
connectedCallback() {
|
|
8
8
|
super.connectedCallback();
|
|
9
9
|
this.ariaHidden = 'true';
|
|
10
10
|
}
|
|
11
11
|
};
|
|
12
|
-
|
|
12
|
+
Elevation = __decorate([
|
|
13
13
|
customElement('u-elevation')
|
|
14
|
-
],
|
|
15
|
-
export {
|
|
14
|
+
], Elevation);
|
|
15
|
+
export { Elevation };
|
|
16
16
|
//# sourceMappingURL=elevation.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"elevation.js","sourceRoot":"","sources":["../../src/elevation/elevation.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AACjC,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAElD,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAGxC,IAAM,
|
|
1
|
+
{"version":3,"file":"elevation.js","sourceRoot":"","sources":["../../src/elevation/elevation.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AACjC,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAElD,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAGxC,IAAM,SAAS,GAAf,MAAM,SAAU,SAAQ,UAAU;aACvB,WAAM,GAAG,MAAM,AAAT,CAAU;IAEvB,iBAAiB;QACxB,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAC1B,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC;IAC3B,CAAC;;AANU,SAAS;IADrB,aAAa,CAAC,aAAa,CAAC;GAChB,SAAS,CAOrB","sourcesContent":["import { LitElement } from 'lit';\nimport { customElement } from 'lit/decorators.js';\n\nimport { styles } from './elevation.styles.js';\n\n@customElement('u-elevation')\nexport class Elevation extends LitElement {\n static override styles = styles;\n\n override connectedCallback() {\n super.connectedCallback();\n this.ariaHidden = 'true';\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'u-elevation': Elevation;\n }\n}\n"]}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { HTMLTemplateResult, LitElement } from 'lit';
|
|
2
|
+
/**
|
|
3
|
+
* Coordinates a group of `<u-expansion-panel>` children. When `multi` is `false`
|
|
4
|
+
* (default), opening one panel closes the others.
|
|
5
|
+
*
|
|
6
|
+
* @slot - Default slot for `<u-expansion-panel>` children.
|
|
7
|
+
*/
|
|
8
|
+
export declare class ExpansionPanelContainer extends LitElement {
|
|
9
|
+
#private;
|
|
10
|
+
static styles: import("lit").CSSResult[];
|
|
11
|
+
/**
|
|
12
|
+
* When `true`, multiple panels may be expanded simultaneously.
|
|
13
|
+
*/
|
|
14
|
+
multi: boolean;
|
|
15
|
+
connectedCallback(): void;
|
|
16
|
+
disconnectedCallback(): void;
|
|
17
|
+
render(): HTMLTemplateResult;
|
|
18
|
+
}
|
|
19
|
+
declare global {
|
|
20
|
+
interface HTMLElementTagNameMap {
|
|
21
|
+
'u-expansion-panel-container': ExpansionPanelContainer;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=expansion-panel-container.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"expansion-panel-container.d.ts","sourceRoot":"","sources":["../../src/expansion-panel/expansion-panel-container.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,kBAAkB,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AAO3D;;;;;GAKG;AACH,qBACa,uBAAwB,SAAQ,UAAU;;IACrD,OAAgB,MAAM,4BAAwB;IAE9C;;OAEG;IACyC,KAAK,UAAS;IAEjD,iBAAiB;IAKjB,oBAAoB;IAKpB,MAAM,IAAI,kBAAkB;CActC;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,6BAA6B,EAAE,uBAAuB,CAAC;KACxD;CACF"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { __decorate } from "tslib";
|
|
2
|
+
import { html, LitElement } from 'lit';
|
|
3
|
+
import { customElement, property } from 'lit/decorators.js';
|
|
4
|
+
import { styles as baseStyles } from '../shared/base.styles.js';
|
|
5
|
+
import { ExpansionPanel } from './expansion-panel.js';
|
|
6
|
+
import { styles } from './expansion-panel-container.styles.js';
|
|
7
|
+
/**
|
|
8
|
+
* Coordinates a group of `<u-expansion-panel>` children. When `multi` is `false`
|
|
9
|
+
* (default), opening one panel closes the others.
|
|
10
|
+
*
|
|
11
|
+
* @slot - Default slot for `<u-expansion-panel>` children.
|
|
12
|
+
*/
|
|
13
|
+
let ExpansionPanelContainer = class ExpansionPanelContainer extends LitElement {
|
|
14
|
+
constructor() {
|
|
15
|
+
super(...arguments);
|
|
16
|
+
/**
|
|
17
|
+
* When `true`, multiple panels may be expanded simultaneously.
|
|
18
|
+
*/
|
|
19
|
+
this.multi = false;
|
|
20
|
+
this.#handlePanelChange = (event) => {
|
|
21
|
+
if (this.multi)
|
|
22
|
+
return;
|
|
23
|
+
const target = event.target;
|
|
24
|
+
if (!(target instanceof ExpansionPanel) || !target.expanded)
|
|
25
|
+
return;
|
|
26
|
+
for (const panel of this.querySelectorAll('u-expansion-panel')) {
|
|
27
|
+
if (panel !== target && panel.expanded) {
|
|
28
|
+
panel.expanded = false;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
static { this.styles = [baseStyles, styles]; }
|
|
34
|
+
connectedCallback() {
|
|
35
|
+
super.connectedCallback();
|
|
36
|
+
this.addEventListener('change', this.#handlePanelChange);
|
|
37
|
+
}
|
|
38
|
+
disconnectedCallback() {
|
|
39
|
+
super.disconnectedCallback();
|
|
40
|
+
this.removeEventListener('change', this.#handlePanelChange);
|
|
41
|
+
}
|
|
42
|
+
render() {
|
|
43
|
+
return html `<slot></slot>`;
|
|
44
|
+
}
|
|
45
|
+
#handlePanelChange;
|
|
46
|
+
};
|
|
47
|
+
__decorate([
|
|
48
|
+
property({ type: Boolean, reflect: true })
|
|
49
|
+
], ExpansionPanelContainer.prototype, "multi", void 0);
|
|
50
|
+
ExpansionPanelContainer = __decorate([
|
|
51
|
+
customElement('u-expansion-panel-container')
|
|
52
|
+
], ExpansionPanelContainer);
|
|
53
|
+
export { ExpansionPanelContainer };
|
|
54
|
+
//# sourceMappingURL=expansion-panel-container.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"expansion-panel-container.js","sourceRoot":"","sources":["../../src/expansion-panel/expansion-panel-container.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAsB,UAAU,EAAE,MAAM,KAAK,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAE5D,OAAO,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,MAAM,EAAE,MAAM,uCAAuC,CAAC;AAE/D;;;;;GAKG;AAEI,IAAM,uBAAuB,GAA7B,MAAM,uBAAwB,SAAQ,UAAU;IAAhD;;QAGL;;WAEG;QACyC,UAAK,GAAG,KAAK,CAAC;QAgB1D,uBAAkB,GAAG,CAAC,KAAY,EAAE,EAAE;YACpC,IAAI,IAAI,CAAC,KAAK;gBAAE,OAAO;YACvB,MAAM,MAAM,GAAG,KAAK,CAAC,MAA+B,CAAC;YACrD,IAAI,CAAC,CAAC,MAAM,YAAY,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ;gBAAE,OAAO;YACpE,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,gBAAgB,CAAiB,mBAAmB,CAAC,EAAE,CAAC;gBAC/E,IAAI,KAAK,KAAK,MAAM,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;oBACvC,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC;gBACzB,CAAC;YACH,CAAC;QACH,CAAC,CAAC;IACJ,CAAC;aA/BiB,WAAM,GAAG,CAAC,UAAU,EAAE,MAAM,CAAC,AAAvB,CAAwB;IAOrC,iBAAiB;QACxB,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAC1B,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC;IAC3D,CAAC;IAEQ,oBAAoB;QAC3B,KAAK,CAAC,oBAAoB,EAAE,CAAC;QAC7B,IAAI,CAAC,mBAAmB,CAAC,QAAQ,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC;IAC9D,CAAC;IAEQ,MAAM;QACb,OAAO,IAAI,CAAA,eAAe,CAAC;IAC7B,CAAC;IAED,kBAAkB,CAShB;;AAzB0C;IAA3C,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;sDAAe;AAN/C,uBAAuB;IADnC,aAAa,CAAC,6BAA6B,CAAC;GAChC,uBAAuB,CAgCnC","sourcesContent":["import { html, HTMLTemplateResult, LitElement } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\n\nimport { styles as baseStyles } from '../shared/base.styles.js';\nimport { ExpansionPanel } from './expansion-panel.js';\nimport { styles } from './expansion-panel-container.styles.js';\n\n/**\n * Coordinates a group of `<u-expansion-panel>` children. When `multi` is `false`\n * (default), opening one panel closes the others.\n *\n * @slot - Default slot for `<u-expansion-panel>` children.\n */\n@customElement('u-expansion-panel-container')\nexport class ExpansionPanelContainer extends LitElement {\n static override styles = [baseStyles, styles];\n\n /**\n * When `true`, multiple panels may be expanded simultaneously.\n */\n @property({ type: Boolean, reflect: true }) multi = false;\n\n override connectedCallback() {\n super.connectedCallback();\n this.addEventListener('change', this.#handlePanelChange);\n }\n\n override disconnectedCallback() {\n super.disconnectedCallback();\n this.removeEventListener('change', this.#handlePanelChange);\n }\n\n override render(): HTMLTemplateResult {\n return html`<slot></slot>`;\n }\n\n #handlePanelChange = (event: Event) => {\n if (this.multi) return;\n const target = event.target as ExpansionPanel | null;\n if (!(target instanceof ExpansionPanel) || !target.expanded) return;\n for (const panel of this.querySelectorAll<ExpansionPanel>('u-expansion-panel')) {\n if (panel !== target && panel.expanded) {\n panel.expanded = false;\n }\n }\n };\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'u-expansion-panel-container': ExpansionPanelContainer;\n }\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"expansion-panel-container.styles.d.ts","sourceRoot":"","sources":["../../src/expansion-panel/expansion-panel-container.styles.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,MAAM,yBAMlB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"expansion-panel-container.styles.js","sourceRoot":"","sources":["../../src/expansion-panel/expansion-panel-container.styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAC;;;;;;CAMzB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css `\n :host {\n display: flex;\n flex-direction: column;\n gap: var(--u-expansion-panel-container-gap, 0.5rem);\n }\n`;\n"]}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { HTMLTemplateResult, LitElement } from 'lit';
|
|
2
|
+
import '../ripple/ripple.js';
|
|
3
|
+
import '../collapse/collapse.js';
|
|
4
|
+
/**
|
|
5
|
+
* @slot header - Content shown in the clickable header row.
|
|
6
|
+
* @slot - Default slot for the panel body (animated via `u-collapse`).
|
|
7
|
+
* @csspart header - The header row container.
|
|
8
|
+
* @csspart chevron - The default chevron icon (rotates on expand).
|
|
9
|
+
* @csspart content - The collapsible body wrapper.
|
|
10
|
+
* @fires change - Dispatched when the `expanded` state toggles.
|
|
11
|
+
*/
|
|
12
|
+
export declare class ExpansionPanel extends LitElement {
|
|
13
|
+
#private;
|
|
14
|
+
static styles: import("lit").CSSResult[];
|
|
15
|
+
/**
|
|
16
|
+
* Whether the panel body is expanded.
|
|
17
|
+
*/
|
|
18
|
+
get expanded(): boolean;
|
|
19
|
+
set expanded(value: boolean);
|
|
20
|
+
/**
|
|
21
|
+
* Disables toggling the panel via header click.
|
|
22
|
+
*/
|
|
23
|
+
disabled: boolean;
|
|
24
|
+
/**
|
|
25
|
+
* Hides the default chevron toggle icon.
|
|
26
|
+
*/
|
|
27
|
+
hideToggle: boolean;
|
|
28
|
+
/** Toggles `expanded`. No-op when `disabled`. */
|
|
29
|
+
toggle(): void;
|
|
30
|
+
render(): HTMLTemplateResult;
|
|
31
|
+
}
|
|
32
|
+
declare global {
|
|
33
|
+
interface HTMLElementTagNameMap {
|
|
34
|
+
'u-expansion-panel': ExpansionPanel;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
//# sourceMappingURL=expansion-panel.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"expansion-panel.d.ts","sourceRoot":"","sources":["../../src/expansion-panel/expansion-panel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,kBAAkB,EAAE,UAAU,EAAW,MAAM,KAAK,CAAC;AAMpE,OAAO,qBAAqB,CAAC;AAC7B,OAAO,yBAAyB,CAAC;AAEjC;;;;;;;GAOG;AACH,qBACa,cAAe,SAAQ,UAAU;;IAC5C,OAAgB,MAAM,4BAAwB;IAI9C;;OAEG;IACH,IACI,QAAQ,IAAI,OAAO,CAEtB;IAED,IAAI,QAAQ,CAAC,KAAK,EAAE,OAAO,EAO1B;IAED;;OAEG;IACyC,QAAQ,UAAS;IAE7D;;OAEG;IACmE,UAAU,UAAS;IAEzF,iDAAiD;IACjD,MAAM,IAAI,IAAI;IAKL,MAAM,IAAI,kBAAkB;CAwBtC;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,mBAAmB,EAAE,cAAc,CAAC;KACrC;CACF"}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
import { __decorate } from "tslib";
|
|
2
|
+
import { html, LitElement, nothing } from 'lit';
|
|
3
|
+
import { customElement, property } from 'lit/decorators.js';
|
|
4
|
+
import { styles as baseStyles } from '../shared/base.styles.js';
|
|
5
|
+
import { styles } from './expansion-panel.styles.js';
|
|
6
|
+
import '../ripple/ripple.js';
|
|
7
|
+
import '../collapse/collapse.js';
|
|
8
|
+
/**
|
|
9
|
+
* @slot header - Content shown in the clickable header row.
|
|
10
|
+
* @slot - Default slot for the panel body (animated via `u-collapse`).
|
|
11
|
+
* @csspart header - The header row container.
|
|
12
|
+
* @csspart chevron - The default chevron icon (rotates on expand).
|
|
13
|
+
* @csspart content - The collapsible body wrapper.
|
|
14
|
+
* @fires change - Dispatched when the `expanded` state toggles.
|
|
15
|
+
*/
|
|
16
|
+
let ExpansionPanel = class ExpansionPanel extends LitElement {
|
|
17
|
+
constructor() {
|
|
18
|
+
super(...arguments);
|
|
19
|
+
this.#expanded = false;
|
|
20
|
+
/**
|
|
21
|
+
* Disables toggling the panel via header click.
|
|
22
|
+
*/
|
|
23
|
+
this.disabled = false;
|
|
24
|
+
/**
|
|
25
|
+
* Hides the default chevron toggle icon.
|
|
26
|
+
*/
|
|
27
|
+
this.hideToggle = false;
|
|
28
|
+
this.#handleHeaderClick = () => {
|
|
29
|
+
this.toggle();
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
static { this.styles = [baseStyles, styles]; }
|
|
33
|
+
#expanded;
|
|
34
|
+
/**
|
|
35
|
+
* Whether the panel body is expanded.
|
|
36
|
+
*/
|
|
37
|
+
get expanded() {
|
|
38
|
+
return this.#expanded;
|
|
39
|
+
}
|
|
40
|
+
set expanded(value) {
|
|
41
|
+
const old = this.#expanded;
|
|
42
|
+
this.#expanded = value;
|
|
43
|
+
this.requestUpdate('expanded', old);
|
|
44
|
+
if (old !== value) {
|
|
45
|
+
this.dispatchEvent(new Event('change', { bubbles: true, composed: true }));
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
/** Toggles `expanded`. No-op when `disabled`. */
|
|
49
|
+
toggle() {
|
|
50
|
+
if (this.disabled)
|
|
51
|
+
return;
|
|
52
|
+
this.expanded = !this.expanded;
|
|
53
|
+
}
|
|
54
|
+
render() {
|
|
55
|
+
return html `
|
|
56
|
+
<div class="header" part="header" @click=${this.#handleHeaderClick}>
|
|
57
|
+
<div class="header-content">
|
|
58
|
+
<slot name="header"></slot>
|
|
59
|
+
</div>
|
|
60
|
+
${this.hideToggle ? nothing : html `
|
|
61
|
+
<span class="chevron" part="chevron" aria-hidden="true">
|
|
62
|
+
<svg xmlns="http://www.w3.org/2000/svg" height="1em" viewBox="0 -960 960 960" width="1em" fill="currentColor">
|
|
63
|
+
<path d="M480-344 240-584l56-56 184 184 184-184 56 56-240 240Z" />
|
|
64
|
+
</svg>
|
|
65
|
+
</span>
|
|
66
|
+
`}
|
|
67
|
+
<u-ripple ?disabled=${this.disabled}></u-ripple>
|
|
68
|
+
</div>
|
|
69
|
+
<u-collapse class="body" part="content" ?open=${this.expanded}>
|
|
70
|
+
<slot></slot>
|
|
71
|
+
</u-collapse>
|
|
72
|
+
`;
|
|
73
|
+
}
|
|
74
|
+
#handleHeaderClick;
|
|
75
|
+
};
|
|
76
|
+
__decorate([
|
|
77
|
+
property({ type: Boolean, reflect: true })
|
|
78
|
+
], ExpansionPanel.prototype, "expanded", null);
|
|
79
|
+
__decorate([
|
|
80
|
+
property({ type: Boolean, reflect: true })
|
|
81
|
+
], ExpansionPanel.prototype, "disabled", void 0);
|
|
82
|
+
__decorate([
|
|
83
|
+
property({ type: Boolean, reflect: true, attribute: 'hide-toggle' })
|
|
84
|
+
], ExpansionPanel.prototype, "hideToggle", void 0);
|
|
85
|
+
ExpansionPanel = __decorate([
|
|
86
|
+
customElement('u-expansion-panel')
|
|
87
|
+
], ExpansionPanel);
|
|
88
|
+
export { ExpansionPanel };
|
|
89
|
+
//# sourceMappingURL=expansion-panel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"expansion-panel.js","sourceRoot":"","sources":["../../src/expansion-panel/expansion-panel.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAsB,UAAU,EAAE,OAAO,EAAE,MAAM,KAAK,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAE5D,OAAO,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAE,MAAM,EAAE,MAAM,6BAA6B,CAAC;AAErD,OAAO,qBAAqB,CAAC;AAC7B,OAAO,yBAAyB,CAAC;AAEjC;;;;;;;GAOG;AAEI,IAAM,cAAc,GAApB,MAAM,cAAe,SAAQ,UAAU;IAAvC;;QAGL,cAAS,GAAG,KAAK,CAAC;QAmBlB;;WAEG;QACyC,aAAQ,GAAG,KAAK,CAAC;QAE7D;;WAEG;QACmE,eAAU,GAAG,KAAK,CAAC;QA6BzF,uBAAkB,GAAG,GAAG,EAAE;YACxB,IAAI,CAAC,MAAM,EAAE,CAAC;QAChB,CAAC,CAAC;IACJ,CAAC;aA7DiB,WAAM,GAAG,CAAC,UAAU,EAAE,MAAM,CAAC,AAAvB,CAAwB;IAE9C,SAAS,CAAS;IAElB;;OAEG;IAEH,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED,IAAI,QAAQ,CAAC,KAAc;QACzB,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC;QAC3B,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACvB,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;QACpC,IAAI,GAAG,KAAK,KAAK,EAAE,CAAC;YAClB,IAAI,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,QAAQ,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QAC7E,CAAC;IACH,CAAC;IAYD,iDAAiD;IACjD,MAAM;QACJ,IAAI,IAAI,CAAC,QAAQ;YAAE,OAAO;QAC1B,IAAI,CAAC,QAAQ,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC;IACjC,CAAC;IAEQ,MAAM;QACb,OAAO,IAAI,CAAA;iDACkC,IAAI,CAAC,kBAAkB;;;;UAI9D,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAA;;;;;;SAMjC;8BACqB,IAAI,CAAC,QAAQ;;sDAEW,IAAI,CAAC,QAAQ;;;KAG9D,CAAC;IACJ,CAAC;IAED,kBAAkB,CAEhB;;AApDF;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;8CAG1C;AAc2C;IAA3C,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;gDAAkB;AAKS;IAArE,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,aAAa,EAAE,CAAC;kDAAoB;AA9B9E,cAAc;IAD1B,aAAa,CAAC,mBAAmB,CAAC;GACtB,cAAc,CA8D1B","sourcesContent":["import { html, HTMLTemplateResult, LitElement, nothing } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\n\nimport { styles as baseStyles } from '../shared/base.styles.js';\nimport { styles } from './expansion-panel.styles.js';\n\nimport '../ripple/ripple.js';\nimport '../collapse/collapse.js';\n\n/**\n * @slot header - Content shown in the clickable header row.\n * @slot - Default slot for the panel body (animated via `u-collapse`).\n * @csspart header - The header row container.\n * @csspart chevron - The default chevron icon (rotates on expand).\n * @csspart content - The collapsible body wrapper.\n * @fires change - Dispatched when the `expanded` state toggles.\n */\n@customElement('u-expansion-panel')\nexport class ExpansionPanel extends LitElement {\n static override styles = [baseStyles, styles];\n\n #expanded = false;\n\n /**\n * Whether the panel body is expanded.\n */\n @property({ type: Boolean, reflect: true })\n get expanded(): boolean {\n return this.#expanded;\n }\n\n set expanded(value: boolean) {\n const old = this.#expanded;\n this.#expanded = value;\n this.requestUpdate('expanded', old);\n if (old !== value) {\n this.dispatchEvent(new Event('change', { bubbles: true, composed: true }));\n }\n }\n\n /**\n * Disables toggling the panel via header click.\n */\n @property({ type: Boolean, reflect: true }) disabled = false;\n\n /**\n * Hides the default chevron toggle icon.\n */\n @property({ type: Boolean, reflect: true, attribute: 'hide-toggle' }) hideToggle = false;\n\n /** Toggles `expanded`. No-op when `disabled`. */\n toggle(): void {\n if (this.disabled) return;\n this.expanded = !this.expanded;\n }\n\n override render(): HTMLTemplateResult {\n return html`\n <div class=\"header\" part=\"header\" @click=${this.#handleHeaderClick}>\n <div class=\"header-content\">\n <slot name=\"header\"></slot>\n </div>\n ${this.hideToggle ? nothing : html`\n <span class=\"chevron\" part=\"chevron\" aria-hidden=\"true\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"1em\" viewBox=\"0 -960 960 960\" width=\"1em\" fill=\"currentColor\">\n <path d=\"M480-344 240-584l56-56 184 184 184-184 56 56-240 240Z\" />\n </svg>\n </span>\n `}\n <u-ripple ?disabled=${this.disabled}></u-ripple>\n </div>\n <u-collapse class=\"body\" part=\"content\" ?open=${this.expanded}>\n <slot></slot>\n </u-collapse>\n `;\n }\n\n #handleHeaderClick = () => {\n this.toggle();\n };\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'u-expansion-panel': ExpansionPanel;\n }\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"expansion-panel.styles.d.ts","sourceRoot":"","sources":["../../src/expansion-panel/expansion-panel.styles.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,MAAM,yBA+DlB,CAAC"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { css } from 'lit';
|
|
2
|
+
export const styles = css `
|
|
3
|
+
:host {
|
|
4
|
+
display: block;
|
|
5
|
+
position: relative;
|
|
6
|
+
background-color: var(--u-expansion-panel-bg-color, var(--u-color-surface-container-low, rgb(247, 242, 250)));
|
|
7
|
+
color: var(--u-expansion-panel-color, var(--u-color-on-surface, rgb(29, 27, 32)));
|
|
8
|
+
border-radius: var(--u-expansion-panel-shape-corner, var(--u-shape-corner-medium, 12px));
|
|
9
|
+
overflow: hidden;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
.header {
|
|
13
|
+
position: relative;
|
|
14
|
+
display: flex;
|
|
15
|
+
align-items: center;
|
|
16
|
+
gap: var(--u-expansion-panel-header-gap, 0.75rem);
|
|
17
|
+
padding: var(--u-expansion-panel-header-padding, 0.75rem 1rem);
|
|
18
|
+
min-height: var(--u-expansion-panel-header-min-height, 3rem);
|
|
19
|
+
cursor: pointer;
|
|
20
|
+
user-select: none;
|
|
21
|
+
font-family: var(--u-font-family);
|
|
22
|
+
line-height: var(--u-title-m-line-height);
|
|
23
|
+
font-size: var(--u-title-m-font-size);
|
|
24
|
+
letter-spacing: var(--u-title-m-letter-spacing);
|
|
25
|
+
font-weight: var(--u-title-m-font-weight);
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
:host([disabled]) .header {
|
|
29
|
+
cursor: default;
|
|
30
|
+
color: color-mix(in srgb, var(--u-color-on-surface, rgb(29, 27, 32)) 38%, transparent);
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
.header-content {
|
|
34
|
+
flex: 1 1 auto;
|
|
35
|
+
min-width: 0;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
.chevron {
|
|
39
|
+
flex: 0 0 auto;
|
|
40
|
+
display: inline-flex;
|
|
41
|
+
align-items: center;
|
|
42
|
+
justify-content: center;
|
|
43
|
+
font-size: 1.5rem;
|
|
44
|
+
line-height: 1;
|
|
45
|
+
color: var(--u-expansion-panel-chevron-color, var(--u-color-on-surface-variant, rgb(73, 69, 79)));
|
|
46
|
+
transition: transform 200ms ease-out;
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
:host([expanded]) .chevron {
|
|
50
|
+
transform: rotate(180deg);
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
.body {
|
|
54
|
+
border-top: 1px solid transparent;
|
|
55
|
+
transition: border-color 200ms ease-out;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
:host([expanded]) .body {
|
|
59
|
+
border-top-color: var(--u-expansion-panel-divider-color, var(--u-color-outline-variant, rgb(202, 196, 208)));
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
::slotted([slot=header]) {
|
|
63
|
+
display: block;
|
|
64
|
+
}
|
|
65
|
+
`;
|
|
66
|
+
//# sourceMappingURL=expansion-panel.styles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"expansion-panel.styles.js","sourceRoot":"","sources":["../../src/expansion-panel/expansion-panel.styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+DzB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css `\n :host {\n display: block;\n position: relative;\n background-color: var(--u-expansion-panel-bg-color, var(--u-color-surface-container-low, rgb(247, 242, 250)));\n color: var(--u-expansion-panel-color, var(--u-color-on-surface, rgb(29, 27, 32)));\n border-radius: var(--u-expansion-panel-shape-corner, var(--u-shape-corner-medium, 12px));\n overflow: hidden;\n }\n\n .header {\n position: relative;\n display: flex;\n align-items: center;\n gap: var(--u-expansion-panel-header-gap, 0.75rem);\n padding: var(--u-expansion-panel-header-padding, 0.75rem 1rem);\n min-height: var(--u-expansion-panel-header-min-height, 3rem);\n cursor: pointer;\n user-select: none;\n font-family: var(--u-font-family);\n line-height: var(--u-title-m-line-height);\n font-size: var(--u-title-m-font-size);\n letter-spacing: var(--u-title-m-letter-spacing);\n font-weight: var(--u-title-m-font-weight);\n }\n\n :host([disabled]) .header {\n cursor: default;\n color: color-mix(in srgb, var(--u-color-on-surface, rgb(29, 27, 32)) 38%, transparent);\n }\n\n .header-content {\n flex: 1 1 auto;\n min-width: 0;\n }\n\n .chevron {\n flex: 0 0 auto;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n font-size: 1.5rem;\n line-height: 1;\n color: var(--u-expansion-panel-chevron-color, var(--u-color-on-surface-variant, rgb(73, 69, 79)));\n transition: transform 200ms ease-out;\n }\n\n :host([expanded]) .chevron {\n transform: rotate(180deg);\n }\n\n .body {\n border-top: 1px solid transparent;\n transition: border-color 200ms ease-out;\n }\n\n :host([expanded]) .body {\n border-top-color: var(--u-expansion-panel-divider-color, var(--u-color-outline-variant, rgb(202, 196, 208)));\n }\n\n ::slotted([slot=header]) {\n display: block;\n }\n`;\n"]}
|
package/field/field-base.d.ts
CHANGED
|
@@ -1,17 +1,28 @@
|
|
|
1
1
|
import { Context, ContextProvider } from '@lit/context';
|
|
2
2
|
import { CSSResultGroup } from '@lit/reactive-element/css-tag';
|
|
3
3
|
import { LitElement, nothing, TemplateResult } from 'lit';
|
|
4
|
-
import {
|
|
5
|
-
export declare abstract class
|
|
4
|
+
import { FieldDefaults } from './field-defaults.js';
|
|
5
|
+
export declare abstract class FieldBase extends LitElement {
|
|
6
6
|
static styles: CSSResultGroup;
|
|
7
7
|
private readonly config;
|
|
8
|
+
/**
|
|
9
|
+
* The Field variant to render. When omitted, falls back to the variant
|
|
10
|
+
* provided by the surrounding `fieldDefaultsContext` (or `'filled'`).
|
|
11
|
+
*/
|
|
8
12
|
variant: 'filled' | 'outlined' | undefined;
|
|
9
13
|
/**
|
|
10
14
|
* The floating label for the field
|
|
11
15
|
*/
|
|
12
16
|
label: string | undefined;
|
|
13
17
|
protected _innerCounter: string | undefined;
|
|
18
|
+
/**
|
|
19
|
+
* Custom counter text shown in the supporting line, overriding the
|
|
20
|
+
* automatic character-count counter
|
|
21
|
+
*/
|
|
14
22
|
counter: string | undefined;
|
|
23
|
+
/**
|
|
24
|
+
* Whether to hide the counter from the supporting text line
|
|
25
|
+
*/
|
|
15
26
|
hideCounter: boolean;
|
|
16
27
|
/**
|
|
17
28
|
* Supporting text conveys additional information about the field, such as how it will be used
|
|
@@ -26,12 +37,15 @@ export declare abstract class UmFieldBase extends LitElement {
|
|
|
26
37
|
* Whether the field is empty or not. This changes the behavior of the floating label when the field is not focused.
|
|
27
38
|
*/
|
|
28
39
|
empty: boolean;
|
|
40
|
+
/**
|
|
41
|
+
* Whether the field is disabled
|
|
42
|
+
*/
|
|
29
43
|
disabled: boolean;
|
|
30
44
|
/**
|
|
31
45
|
* Get or sets where or not the field is in a visually invalid state.
|
|
32
46
|
*/
|
|
33
47
|
invalid: boolean;
|
|
34
|
-
static setDefaults(contextRoot: HTMLElement, config:
|
|
48
|
+
static setDefaults(contextRoot: HTMLElement, config: FieldDefaults): ContextProvider<Context<HTMLElement, FieldDefaults>>;
|
|
35
49
|
/**
|
|
36
50
|
* Whether the field has a leading icon or not
|
|
37
51
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"field-base.d.ts","sourceRoot":"","sources":["../../src/field/field-base.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAE/D,OAAO,EAAQ,UAAU,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAOhE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"field-base.d.ts","sourceRoot":"","sources":["../../src/field/field-base.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAE/D,OAAO,EAAQ,UAAU,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAOhE,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD,8BAAsB,SAAU,SAAQ,UAAU;IAChD,OAAgB,MAAM,EAAE,cAAc,CAAwB;IAI9D,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA4B;IAEnD;;;OAGG;IACS,OAAO,EAAE,QAAQ,GAAG,UAAU,GAAG,SAAS,CAAY;IAElE;;OAEG;IAEH,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;IAEjB,SAAS,CAAC,aAAa,EAAE,MAAM,GAAG,SAAS,CAAC;IAErD;;;OAGG;IACS,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;IAExC;;OAEG;IACqD,WAAW,UAAS;IAE5E;;OAEG;IACyC,cAAc,EAAE,MAAM,GAAG,SAAS,CAAC;IAE/E;;;OAGG;IACoC,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAErE;;OAEG;IACyC,KAAK,UAAS;IAE1D;;OAEG;IACyC,QAAQ,UAAS;IAE7D;;OAEG;IACyC,OAAO,UAAS;IAE5D,MAAM,CAAC,WAAW,CAChB,WAAW,EAAE,WAAW,EACxB,MAAM,EAAE,aAAa,GACpB,eAAe,CAAC,OAAO,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;IAOvD;;;;OAIG;IAEH,cAAc,UAAS;IAEvB;;;;OAIG;IAEH,eAAe,UAAS;IAExB;;;;OAIG;IAEH,YAAY,UAAS;IAGrB,SAAS,CAAC,QAAQ,CAAC,oBAAoB,EAAG,WAAW,EAAE,CAAC;IAGxD,SAAS,CAAC,QAAQ,CAAC,qBAAqB,EAAG,WAAW,EAAE,CAAC;IAGzD,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAiB;IAE7B,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAe;IACzC,SAAS,CAAC,UAAU,EAAG,WAAW,CAAC;;cAO3C,MAAM,IAAI,cAAc;IA+C3C,SAAS,CAAC,QAAQ,CAAC,aAAa,IAAI,cAAc;IAElD,SAAS,CAAC,kBAAkB,IAAI,cAAc;IAIrC,iBAAiB;IAK1B,OAAO,CAAC,2BAA2B;IASnC,OAAO,CAAC,4BAA4B;IAIpC,OAAO,CAAC,yBAAyB;IAIjC,SAAS,CAAC,yBAAyB,IAAI,cAAc,GAAG,OAAO,OAAO;CAGvE"}
|
package/field/field-base.js
CHANGED
|
@@ -6,7 +6,7 @@ import { classMap } from 'lit/directives/class-map.js';
|
|
|
6
6
|
import { styles as baseStyles } from '../shared/base.styles.js';
|
|
7
7
|
import { styles } from './field-base.styles.js';
|
|
8
8
|
import { fieldDefaultsContext } from './field-defaults-context.js';
|
|
9
|
-
export class
|
|
9
|
+
export class FieldBase extends LitElement {
|
|
10
10
|
static { this.styles = [baseStyles, styles]; }
|
|
11
11
|
static setDefaults(contextRoot, config) {
|
|
12
12
|
return new ContextProvider(contextRoot, {
|
|
@@ -16,12 +16,22 @@ export class UmFieldBase extends LitElement {
|
|
|
16
16
|
}
|
|
17
17
|
constructor() {
|
|
18
18
|
super();
|
|
19
|
+
/**
|
|
20
|
+
* The Field variant to render. When omitted, falls back to the variant
|
|
21
|
+
* provided by the surrounding `fieldDefaultsContext` (or `'filled'`).
|
|
22
|
+
*/
|
|
19
23
|
this.variant = 'filled';
|
|
24
|
+
/**
|
|
25
|
+
* Whether to hide the counter from the supporting text line
|
|
26
|
+
*/
|
|
20
27
|
this.hideCounter = false;
|
|
21
28
|
/**
|
|
22
29
|
* Whether the field is empty or not. This changes the behavior of the floating label when the field is not focused.
|
|
23
30
|
*/
|
|
24
31
|
this.empty = false;
|
|
32
|
+
/**
|
|
33
|
+
* Whether the field is disabled
|
|
34
|
+
*/
|
|
25
35
|
this.disabled = false;
|
|
26
36
|
/**
|
|
27
37
|
* Get or sets where or not the field is in a visually invalid state.
|
|
@@ -116,59 +126,59 @@ export class UmFieldBase extends LitElement {
|
|
|
116
126
|
__decorate([
|
|
117
127
|
consume({ context: fieldDefaultsContext, subscribe: true }),
|
|
118
128
|
state()
|
|
119
|
-
],
|
|
129
|
+
], FieldBase.prototype, "config", void 0);
|
|
120
130
|
__decorate([
|
|
121
131
|
property()
|
|
122
|
-
],
|
|
132
|
+
], FieldBase.prototype, "variant", void 0);
|
|
123
133
|
__decorate([
|
|
124
134
|
property()
|
|
125
|
-
],
|
|
135
|
+
], FieldBase.prototype, "label", void 0);
|
|
126
136
|
__decorate([
|
|
127
137
|
state()
|
|
128
|
-
],
|
|
138
|
+
], FieldBase.prototype, "_innerCounter", void 0);
|
|
129
139
|
__decorate([
|
|
130
140
|
property()
|
|
131
|
-
],
|
|
141
|
+
], FieldBase.prototype, "counter", void 0);
|
|
132
142
|
__decorate([
|
|
133
143
|
property({ type: Boolean, attribute: 'hide-counter' })
|
|
134
|
-
],
|
|
144
|
+
], FieldBase.prototype, "hideCounter", void 0);
|
|
135
145
|
__decorate([
|
|
136
146
|
property({ attribute: 'supporting-text' })
|
|
137
|
-
],
|
|
147
|
+
], FieldBase.prototype, "supportingText", void 0);
|
|
138
148
|
__decorate([
|
|
139
149
|
property({ attribute: 'error-text' })
|
|
140
|
-
],
|
|
150
|
+
], FieldBase.prototype, "errorText", void 0);
|
|
141
151
|
__decorate([
|
|
142
152
|
property({ type: Boolean, reflect: true })
|
|
143
|
-
],
|
|
153
|
+
], FieldBase.prototype, "empty", void 0);
|
|
144
154
|
__decorate([
|
|
145
155
|
property({ type: Boolean, reflect: true })
|
|
146
|
-
],
|
|
156
|
+
], FieldBase.prototype, "disabled", void 0);
|
|
147
157
|
__decorate([
|
|
148
158
|
property({ type: Boolean, reflect: true })
|
|
149
|
-
],
|
|
159
|
+
], FieldBase.prototype, "invalid", void 0);
|
|
150
160
|
__decorate([
|
|
151
161
|
property({ type: Boolean, attribute: 'has-leading-icon', reflect: true })
|
|
152
|
-
],
|
|
162
|
+
], FieldBase.prototype, "hasLeadingIcon", void 0);
|
|
153
163
|
__decorate([
|
|
154
164
|
property({ type: Boolean, attribute: 'has-trailing-icon', reflect: true })
|
|
155
|
-
],
|
|
165
|
+
], FieldBase.prototype, "hasTrailingIcon", void 0);
|
|
156
166
|
__decorate([
|
|
157
167
|
property({ type: Boolean, attribute: 'has-error-text', reflect: true })
|
|
158
|
-
],
|
|
168
|
+
], FieldBase.prototype, "hasErrorText", void 0);
|
|
159
169
|
__decorate([
|
|
160
170
|
queryAssignedElements({ slot: 'leading-icon', flatten: true })
|
|
161
|
-
],
|
|
171
|
+
], FieldBase.prototype, "assignedLeadingIcons", void 0);
|
|
162
172
|
__decorate([
|
|
163
173
|
queryAssignedElements({ slot: 'trailing-icon', flatten: true })
|
|
164
|
-
],
|
|
174
|
+
], FieldBase.prototype, "assignedTrailingIcons", void 0);
|
|
165
175
|
__decorate([
|
|
166
176
|
queryAssignedElements({ slot: 'error-text', flatten: true })
|
|
167
|
-
],
|
|
177
|
+
], FieldBase.prototype, "assignedErrorTexts", void 0);
|
|
168
178
|
__decorate([
|
|
169
179
|
query('.label', true)
|
|
170
|
-
],
|
|
180
|
+
], FieldBase.prototype, "_labelElement", void 0);
|
|
171
181
|
__decorate([
|
|
172
182
|
query('.container', true)
|
|
173
|
-
],
|
|
183
|
+
], FieldBase.prototype, "_container", void 0);
|
|
174
184
|
//# sourceMappingURL=field-base.js.map
|
package/field/field-base.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"field-base.js","sourceRoot":"","sources":["../../src/field/field-base.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,OAAO,EAAW,eAAe,EAAE,MAAM,cAAc,CAAC;AAGjE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAkB,MAAM,KAAK,CAAC;AAChE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,qBAAqB,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAClF,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAEvD,OAAO,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAGnE,MAAM,OAAgB,WAAY,SAAQ,UAAU;aAClC,WAAM,GAAmB,CAAC,UAAU,EAAE,MAAM,CAAC,AAAvC,CAAwC;IAyC9D,MAAM,CAAC,WAAW,CAChB,WAAwB,EACxB,MAAuB;QAEvB,OAAO,IAAI,eAAe,CAAC,WAAW,EAAE;YACtC,OAAO,EAAE,oBAAoB;YAC7B,YAAY,EAAE,MAAM;SACrB,CAAC,CAAC;IACL,CAAC;IAsCD;QACE,KAAK,EAAE,CAAC;QAlFE,YAAO,GAAsC,QAAQ,CAAC;QAWV,gBAAW,GAAG,KAAK,CAAC;QAa5E;;WAEG;QACyC,UAAK,GAAG,KAAK,CAAC;QACd,aAAQ,GAAG,KAAK,CAAC;QAE7D;;WAEG;QACyC,YAAO,GAAG,KAAK,CAAC;QAY5D;;;;WAIG;QAEH,mBAAc,GAAG,KAAK,CAAC;QAEvB;;;;WAIG;QAEH,oBAAe,GAAG,KAAK,CAAC;QAExB;;;;WAIG;QAEH,iBAAY,GAAG,KAAK,CAAC;QAgBnB,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC;IAC3B,CAAC;IAEkB,MAAM;QACvB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,MAAM,EAAE,OAAO,IAAI,QAAQ,CAAC;QAEjE,MAAM,OAAO,GAAG;YACd,CAAC,OAAO,CAAC,EAAE,IAAI;YACf,UAAU,EAAE,CAAC,IAAI,CAAC,KAAK;SACxB,CAAC;QAEF,MAAM,OAAO,GAAG,IAAI,CAAA;;eAET,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,aAAa;;KAE5C,CAAC;QAEF,MAAM,OAAO,GAAG,IAAI,CAAA;;;;6CAIqB,IAAI,CAAC,KAAK;;;;KAIlD,CAAC;QAEF,OAAO,IAAI,CAAA;8BACe,QAAQ,CAAC,OAAO,CAAC;UACrC,OAAO,KAAK,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO;2EACuB,IAAI,CAAC,2BAA2B;0CACjE,IAAI,CAAC,KAAK;oDACA,IAAI,CAAC,aAAa,EAAE;6EACK,IAAI,CAAC,4BAA4B;kBAC5F,IAAI,CAAC,yBAAyB,EAAE;;;;kEAIgB,IAAI,CAAC,yBAAyB;iBAC/E,IAAI,CAAC,SAAS;;;iBAGd,IAAI,CAAC,cAAc;;UAE1B,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO;;QAEtC,IAAI,CAAC,kBAAkB,EAAE;KAC5B,CAAC;IACJ,CAAC;IAIS,kBAAkB;QAC1B,OAAO,IAAI,CAAA,EAAE,CAAC;IAChB,CAAC;IAEQ,iBAAiB;QACxB,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAC1B,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC;IAC3D,CAAC;IAEO,2BAA2B;QACjC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,UAAU,GAAG,MAAM,CAAC;QAC7C,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,oBAAoB,CAAC,MAAM,GAAG,CAAC,CAAC;QAE3D,UAAU,CAAC,GAAG,EAAE;YACd,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,UAAU,GAAG,EAAE,CAAC;QAC3C,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,4BAA4B;QAClC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,qBAAqB,CAAC,MAAM,GAAG,CAAC,CAAC;IAC/D,CAAC;IAEO,yBAAyB;QAC/B,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC,CAAC;IACzD,CAAC;IAES,yBAAyB;QACjC,OAAO,OAAO,CAAC;IACjB,CAAC;;AArKgB;IAFhB,OAAO,CAAC,EAAE,OAAO,EAAE,oBAAoB,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;IAC3D,KAAK,EAAE;2CAC6C;AAEzC;IAAX,QAAQ,EAAE;4CAAuD;AAMlE;IADC,QAAQ,EAAE;0CACe;AAEP;IAAlB,KAAK,EAAE;kDAA6C;AACzC;IAAX,QAAQ,EAAE;4CAA6B;AAEgB;IAAvD,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC;gDAAqB;AAKhC;IAA3C,QAAQ,CAAC,EAAE,SAAS,EAAE,iBAAiB,EAAE,CAAC;mDAAoC;AAMxC;IAAtC,QAAQ,CAAC,EAAE,SAAS,EAAE,YAAY,EAAE,CAAC;8CAA+B;AAKzB;IAA3C,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;0CAAe;AACd;IAA3C,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;6CAAkB;AAKjB;IAA3C,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;4CAAiB;AAkB5D;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,kBAAkB,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;mDACnD;AAQvB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,mBAAmB,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;oDACnD;AAQxB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;iDACnD;AAGF;IADlB,qBAAqB,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;yDACP;AAGrC;IADlB,qBAAqB,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;0DACP;AAGxC;IADhB,qBAAqB,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;uDACT;AAEZ;IAAvC,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC;kDAA8C;AAC/B;IAApC,KAAK,CAAC,YAAY,EAAE,IAAI,CAAC;+CAAoC","sourcesContent":["import { consume, Context, ContextProvider } from '@lit/context';\nimport { CSSResultGroup } from '@lit/reactive-element/css-tag';\n\nimport { html, LitElement, nothing, TemplateResult } from 'lit';\nimport { property, query, queryAssignedElements, state } from 'lit/decorators.js';\nimport { classMap } from 'lit/directives/class-map.js';\n\nimport { styles as baseStyles } from '../shared/base.styles.js';\nimport { styles } from './field-base.styles.js';\nimport { fieldDefaultsContext } from './field-defaults-context.js';\nimport { UmFieldDefaults } from './field-defaults.js';\n\nexport abstract class UmFieldBase extends LitElement {\n static override styles: CSSResultGroup = [baseStyles, styles];\n\n @consume({ context: fieldDefaultsContext, subscribe: true })\n @state()\n private readonly config: UmFieldDefaults | undefined;\n\n @property() variant: 'filled' | 'outlined' | undefined = 'filled';\n\n /**\n * The floating label for the field\n */\n @property()\n label: string | undefined;\n\n @state() protected _innerCounter: string | undefined;\n @property() counter: string | undefined;\n\n @property({ type: Boolean, attribute: 'hide-counter' }) hideCounter = false;\n\n /**\n * Supporting text conveys additional information about the field, such as how it will be used\n */\n @property({ attribute: 'supporting-text' }) supportingText: string | undefined;\n\n /**\n * For text fields that validate their content (such as passwords), replace supporting text with error text when applicable.\n * If `errorText` is not an empty string, changing the property `invalid` to `true` will show the `errorText` instead of `supportingText`\n */\n @property({ attribute: 'error-text' }) errorText: string | undefined;\n\n /**\n * Whether the field is empty or not. This changes the behavior of the floating label when the field is not focused.\n */\n @property({ type: Boolean, reflect: true }) empty = false;\n @property({ type: Boolean, reflect: true }) disabled = false;\n\n /**\n * Get or sets where or not the field is in a visually invalid state.\n */\n @property({ type: Boolean, reflect: true }) invalid = false;\n\n static setDefaults(\n contextRoot: HTMLElement,\n config: UmFieldDefaults,\n ): ContextProvider<Context<HTMLElement, UmFieldDefaults>> {\n return new ContextProvider(contextRoot, {\n context: fieldDefaultsContext,\n initialValue: config,\n });\n }\n\n /**\n * Whether the field has a leading icon or not\n *\n * _Note:_ Readonly\n */\n @property({ type: Boolean, attribute: 'has-leading-icon', reflect: true })\n hasLeadingIcon = false;\n\n /**\n * Whether the field has a trailing icon or not\n *\n * _Note:_ Readonly\n */\n @property({ type: Boolean, attribute: 'has-trailing-icon', reflect: true })\n hasTrailingIcon = false;\n\n /**\n * Whether the field has an error text or not\n *\n * _Note:_ Readonly\n */\n @property({ type: Boolean, attribute: 'has-error-text', reflect: true })\n hasErrorText = false;\n\n @queryAssignedElements({ slot: 'leading-icon', flatten: true })\n protected readonly assignedLeadingIcons!: HTMLElement[];\n\n @queryAssignedElements({ slot: 'trailing-icon', flatten: true })\n protected readonly assignedTrailingIcons!: HTMLElement[];\n\n @queryAssignedElements({ slot: 'error-text', flatten: true })\n private readonly assignedErrorTexts!: HTMLElement[];\n\n @query('.label', true) private readonly _labelElement!: HTMLElement;\n @query('.container', true) protected _container!: HTMLElement;\n\n constructor() {\n super();\n this.variant = undefined;\n }\n\n protected override render(): TemplateResult {\n const variant = this.variant ?? this.config?.variant ?? 'filled';\n\n const classes = {\n [variant]: true,\n 'no-label': !this.label,\n };\n\n const counter = html`\n <slot class=\"counter\" name=\"counter\">\n <div>${this.counter ?? this._innerCounter}</div>\n </slot>\n `;\n\n const outline = html`\n <div class=\"outline\">\n <div class=\"outline-start\"></div>\n <div class=\"outline-notch\">\n <div class=\"outline-notch-label\">${this.label}</div>\n </div>\n <div class=\"outline-end\"></div>\n </div>\n `;\n\n return html`\n <div class=\"container ${classMap(classes)}\">\n ${variant === 'outlined' ? outline : nothing}\n <slot class=\"icon leading-icon\" name=\"leading-icon\" @slotchange=\"${this.handleLeadingIconSlotChange}\"></slot>\n <label class=\"label\" id=\"label\">${this.label}</label>\n <div class=\"input-wrapper\" part=\"wrapper\">${this.renderControl()}</div>\n <slot class=\"icon trailing-icon\" name=\"trailing-icon\" @slotchange=\"${this.handleTrailingIconSlotChange}\">\n <span>${this.renderDefaultTrailingIcon()}</span>\n </slot>\n </div>\n <div class=\"supporting-text\" id=\"supporting-text\">\n <slot class=\"error-text\" name=\"error-text\" @slotchange=\"${this.handleErrorTextSlotChange}\">\n <div>${this.errorText}</div>\n </slot>\n <slot name=\"supporting-text\" id=\"supporting-text\">\n <div>${this.supportingText}</div>\n </slot>\n ${this.hideCounter ? nothing : counter}\n </div>\n ${this.renderAfterContent()}\n `;\n }\n\n protected abstract renderControl(): TemplateResult;\n\n protected renderAfterContent(): TemplateResult {\n return html``;\n }\n\n override connectedCallback() {\n super.connectedCallback();\n this.hasLeadingIcon = !!this.assignedLeadingIcons.length;\n }\n\n private handleLeadingIconSlotChange() {\n this._labelElement.style.transition = 'none';\n this.hasLeadingIcon = this.assignedLeadingIcons.length > 0;\n\n setTimeout(() => {\n this._labelElement.style.transition = '';\n });\n }\n\n private handleTrailingIconSlotChange() {\n this.hasTrailingIcon = this.assignedTrailingIcons.length > 0;\n }\n\n private handleErrorTextSlotChange() {\n this.hasErrorText = this.assignedErrorTexts.length > 0;\n }\n\n protected renderDefaultTrailingIcon(): TemplateResult | typeof nothing {\n return nothing;\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"field-base.js","sourceRoot":"","sources":["../../src/field/field-base.ts"],"names":[],"mappings":"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","sourcesContent":["import { consume, Context, ContextProvider } from '@lit/context';\nimport { CSSResultGroup } from '@lit/reactive-element/css-tag';\n\nimport { html, LitElement, nothing, TemplateResult } from 'lit';\nimport { property, query, queryAssignedElements, state } from 'lit/decorators.js';\nimport { classMap } from 'lit/directives/class-map.js';\n\nimport { styles as baseStyles } from '../shared/base.styles.js';\nimport { styles } from './field-base.styles.js';\nimport { fieldDefaultsContext } from './field-defaults-context.js';\nimport { FieldDefaults } from './field-defaults.js';\n\nexport abstract class FieldBase extends LitElement {\n static override styles: CSSResultGroup = [baseStyles, styles];\n\n @consume({ context: fieldDefaultsContext, subscribe: true })\n @state()\n private readonly config: FieldDefaults | undefined;\n\n /**\n * The Field variant to render. When omitted, falls back to the variant\n * provided by the surrounding `fieldDefaultsContext` (or `'filled'`).\n */\n @property() variant: 'filled' | 'outlined' | undefined = 'filled';\n\n /**\n * The floating label for the field\n */\n @property()\n label: string | undefined;\n\n @state() protected _innerCounter: string | undefined;\n\n /**\n * Custom counter text shown in the supporting line, overriding the\n * automatic character-count counter\n */\n @property() counter: string | undefined;\n\n /**\n * Whether to hide the counter from the supporting text line\n */\n @property({ type: Boolean, attribute: 'hide-counter' }) hideCounter = false;\n\n /**\n * Supporting text conveys additional information about the field, such as how it will be used\n */\n @property({ attribute: 'supporting-text' }) supportingText: string | undefined;\n\n /**\n * For text fields that validate their content (such as passwords), replace supporting text with error text when applicable.\n * If `errorText` is not an empty string, changing the property `invalid` to `true` will show the `errorText` instead of `supportingText`\n */\n @property({ attribute: 'error-text' }) errorText: string | undefined;\n\n /**\n * Whether the field is empty or not. This changes the behavior of the floating label when the field is not focused.\n */\n @property({ type: Boolean, reflect: true }) empty = false;\n\n /**\n * Whether the field is disabled\n */\n @property({ type: Boolean, reflect: true }) disabled = false;\n\n /**\n * Get or sets where or not the field is in a visually invalid state.\n */\n @property({ type: Boolean, reflect: true }) invalid = false;\n\n static setDefaults(\n contextRoot: HTMLElement,\n config: FieldDefaults,\n ): ContextProvider<Context<HTMLElement, FieldDefaults>> {\n return new ContextProvider(contextRoot, {\n context: fieldDefaultsContext,\n initialValue: config,\n });\n }\n\n /**\n * Whether the field has a leading icon or not\n *\n * _Note:_ Readonly\n */\n @property({ type: Boolean, attribute: 'has-leading-icon', reflect: true })\n hasLeadingIcon = false;\n\n /**\n * Whether the field has a trailing icon or not\n *\n * _Note:_ Readonly\n */\n @property({ type: Boolean, attribute: 'has-trailing-icon', reflect: true })\n hasTrailingIcon = false;\n\n /**\n * Whether the field has an error text or not\n *\n * _Note:_ Readonly\n */\n @property({ type: Boolean, attribute: 'has-error-text', reflect: true })\n hasErrorText = false;\n\n @queryAssignedElements({ slot: 'leading-icon', flatten: true })\n protected readonly assignedLeadingIcons!: HTMLElement[];\n\n @queryAssignedElements({ slot: 'trailing-icon', flatten: true })\n protected readonly assignedTrailingIcons!: HTMLElement[];\n\n @queryAssignedElements({ slot: 'error-text', flatten: true })\n private readonly assignedErrorTexts!: HTMLElement[];\n\n @query('.label', true) private readonly _labelElement!: HTMLElement;\n @query('.container', true) protected _container!: HTMLElement;\n\n constructor() {\n super();\n this.variant = undefined;\n }\n\n protected override render(): TemplateResult {\n const variant = this.variant ?? this.config?.variant ?? 'filled';\n\n const classes = {\n [variant]: true,\n 'no-label': !this.label,\n };\n\n const counter = html`\n <slot class=\"counter\" name=\"counter\">\n <div>${this.counter ?? this._innerCounter}</div>\n </slot>\n `;\n\n const outline = html`\n <div class=\"outline\">\n <div class=\"outline-start\"></div>\n <div class=\"outline-notch\">\n <div class=\"outline-notch-label\">${this.label}</div>\n </div>\n <div class=\"outline-end\"></div>\n </div>\n `;\n\n return html`\n <div class=\"container ${classMap(classes)}\">\n ${variant === 'outlined' ? outline : nothing}\n <slot class=\"icon leading-icon\" name=\"leading-icon\" @slotchange=\"${this.handleLeadingIconSlotChange}\"></slot>\n <label class=\"label\" id=\"label\">${this.label}</label>\n <div class=\"input-wrapper\" part=\"wrapper\">${this.renderControl()}</div>\n <slot class=\"icon trailing-icon\" name=\"trailing-icon\" @slotchange=\"${this.handleTrailingIconSlotChange}\">\n <span>${this.renderDefaultTrailingIcon()}</span>\n </slot>\n </div>\n <div class=\"supporting-text\" id=\"supporting-text\">\n <slot class=\"error-text\" name=\"error-text\" @slotchange=\"${this.handleErrorTextSlotChange}\">\n <div>${this.errorText}</div>\n </slot>\n <slot name=\"supporting-text\" id=\"supporting-text\">\n <div>${this.supportingText}</div>\n </slot>\n ${this.hideCounter ? nothing : counter}\n </div>\n ${this.renderAfterContent()}\n `;\n }\n\n protected abstract renderControl(): TemplateResult;\n\n protected renderAfterContent(): TemplateResult {\n return html``;\n }\n\n override connectedCallback() {\n super.connectedCallback();\n this.hasLeadingIcon = !!this.assignedLeadingIcons.length;\n }\n\n private handleLeadingIconSlotChange() {\n this._labelElement.style.transition = 'none';\n this.hasLeadingIcon = this.assignedLeadingIcons.length > 0;\n\n setTimeout(() => {\n this._labelElement.style.transition = '';\n });\n }\n\n private handleTrailingIconSlotChange() {\n this.hasTrailingIcon = this.assignedTrailingIcons.length > 0;\n }\n\n private handleErrorTextSlotChange() {\n this.hasErrorText = this.assignedErrorTexts.length > 0;\n }\n\n protected renderDefaultTrailingIcon(): TemplateResult | typeof nothing {\n return nothing;\n }\n}\n"]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { FieldDefaults } from './field-defaults.js';
|
|
2
2
|
export declare const fieldDefaultsContext: {
|
|
3
|
-
__context__:
|
|
3
|
+
__context__: FieldDefaults;
|
|
4
4
|
};
|
|
5
5
|
//# sourceMappingURL=field-defaults-context.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"field-defaults-context.d.ts","sourceRoot":"","sources":["../../src/field/field-defaults-context.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"field-defaults-context.d.ts","sourceRoot":"","sources":["../../src/field/field-defaults-context.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD,eAAO,MAAM,oBAAoB;;CAA2D,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"field-defaults-context.js","sourceRoot":"","sources":["../../src/field/field-defaults-context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAI7C,MAAM,CAAC,MAAM,oBAAoB,GAAG,aAAa,
|
|
1
|
+
{"version":3,"file":"field-defaults-context.js","sourceRoot":"","sources":["../../src/field/field-defaults-context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAI7C,MAAM,CAAC,MAAM,oBAAoB,GAAG,aAAa,CAAgB,0BAA0B,CAAC,CAAC","sourcesContent":["import { createContext } from '@lit/context';\n\nimport { FieldDefaults } from './field-defaults.js';\n\nexport const fieldDefaultsContext = createContext<FieldDefaults>('u-field-defaults-context');\n"]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export interface
|
|
3
|
-
variant:
|
|
1
|
+
import { FieldVariant } from './field-variant.js';
|
|
2
|
+
export interface FieldDefaults {
|
|
3
|
+
variant: FieldVariant;
|
|
4
4
|
}
|
|
5
5
|
//# sourceMappingURL=field-defaults.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"field-defaults.d.ts","sourceRoot":"","sources":["../../src/field/field-defaults.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"field-defaults.d.ts","sourceRoot":"","sources":["../../src/field/field-defaults.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,YAAY,CAAC;CACvB"}
|