@tylertech/forge 2.0.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/LICENSE +202 -0
- package/README.md +124 -0
- package/dist/busy-indicator/forge-busy-indicator.css +6 -0
- package/dist/button/forge-button.css +6 -0
- package/dist/dialog/forge-dialog-utils.css +6 -0
- package/dist/dialog/forge-dialog.css +6 -0
- package/dist/expansion-panel/forge-expansion-panel.css +6 -0
- package/dist/floating-action-button/forge-floating-action-button.css +6 -0
- package/dist/floating-label/forge-floating-label.css +6 -0
- package/dist/forge-core.css +6 -0
- package/dist/forge-dark.css +6 -0
- package/dist/forge.css +6 -0
- package/dist/form-field/forge-form-field.css +6 -0
- package/dist/icon-button/forge-icon-button.css +6 -0
- package/dist/popup/forge-popup.css +6 -0
- package/dist/quantity-field/forge-quantity-field.css +6 -0
- package/dist/ripple/forge-ripple.css +6 -0
- package/dist/scaffold/forge-scaffold.css +6 -0
- package/dist/table/forge-table.css +6 -0
- package/dist/theme/forge-theme.css +6 -0
- package/dist/tooltip/forge-tooltip.css +6 -0
- package/dist/typography/forge-form.css +6 -0
- package/dist/typography/forge-typography.css +6 -0
- package/dist/utils/forge-flex.css +6 -0
- package/dist/utils/forge-grid.css +6 -0
- package/dist/utils/forge-utils.css +6 -0
- package/esm/accordion/accordion-adapter.d.ts +48 -0
- package/esm/accordion/accordion-adapter.js +63 -0
- package/esm/accordion/accordion-constants.d.ts +11 -0
- package/esm/accordion/accordion-constants.js +14 -0
- package/esm/accordion/accordion-foundation.d.ts +27 -0
- package/esm/accordion/accordion-foundation.js +61 -0
- package/esm/accordion/accordion.d.ts +30 -0
- package/esm/accordion/accordion.js +52 -0
- package/esm/accordion/index.d.ts +10 -0
- package/esm/accordion/index.js +14 -0
- package/esm/app-bar/app-bar-adapter.d.ts +43 -0
- package/esm/app-bar/app-bar-adapter.js +60 -0
- package/esm/app-bar/app-bar-constants.d.ts +33 -0
- package/esm/app-bar/app-bar-constants.js +37 -0
- package/esm/app-bar/app-bar-foundation.d.ts +35 -0
- package/esm/app-bar/app-bar-foundation.js +70 -0
- package/esm/app-bar/app-bar.d.ts +34 -0
- package/esm/app-bar/app-bar.js +71 -0
- package/esm/app-bar/help-button/app-bar-help-button-adapter.d.ts +18 -0
- package/esm/app-bar/help-button/app-bar-help-button-adapter.js +19 -0
- package/esm/app-bar/help-button/app-bar-help-button-constants.d.ts +8 -0
- package/esm/app-bar/help-button/app-bar-help-button-constants.js +10 -0
- package/esm/app-bar/help-button/app-bar-help-button-foundation.d.ts +21 -0
- package/esm/app-bar/help-button/app-bar-help-button-foundation.js +29 -0
- package/esm/app-bar/help-button/app-bar-help-button.d.ts +23 -0
- package/esm/app-bar/help-button/app-bar-help-button.js +48 -0
- package/esm/app-bar/help-button/index.d.ts +10 -0
- package/esm/app-bar/help-button/index.js +14 -0
- package/esm/app-bar/index.d.ts +16 -0
- package/esm/app-bar/index.js +20 -0
- package/esm/app-bar/menu-button/app-bar-menu-button-constants.d.ts +8 -0
- package/esm/app-bar/menu-button/app-bar-menu-button-constants.js +10 -0
- package/esm/app-bar/menu-button/app-bar-menu-button.d.ts +17 -0
- package/esm/app-bar/menu-button/app-bar-menu-button.js +34 -0
- package/esm/app-bar/menu-button/index.d.ts +8 -0
- package/esm/app-bar/menu-button/index.js +12 -0
- package/esm/app-bar/notification-button/app-bar-notification-button-adapter.d.ts +23 -0
- package/esm/app-bar/notification-button/app-bar-notification-button-adapter.js +28 -0
- package/esm/app-bar/notification-button/app-bar-notification-button-constants.d.ts +14 -0
- package/esm/app-bar/notification-button/app-bar-notification-button-constants.js +17 -0
- package/esm/app-bar/notification-button/app-bar-notification-button-foundation.d.ts +32 -0
- package/esm/app-bar/notification-button/app-bar-notification-button-foundation.js +79 -0
- package/esm/app-bar/notification-button/app-bar-notification-button.d.ts +29 -0
- package/esm/app-bar/notification-button/app-bar-notification-button.js +78 -0
- package/esm/app-bar/notification-button/index.d.ts +10 -0
- package/esm/app-bar/notification-button/index.js +14 -0
- package/esm/app-bar/profile-button/app-bar-profile-button-adapter.d.ts +34 -0
- package/esm/app-bar/profile-button/app-bar-profile-button-adapter.js +72 -0
- package/esm/app-bar/profile-button/app-bar-profile-button-constants.d.ts +31 -0
- package/esm/app-bar/profile-button/app-bar-profile-button-constants.js +25 -0
- package/esm/app-bar/profile-button/app-bar-profile-button-foundation.d.ts +66 -0
- package/esm/app-bar/profile-button/app-bar-profile-button-foundation.js +199 -0
- package/esm/app-bar/profile-button/app-bar-profile-button.d.ts +42 -0
- package/esm/app-bar/profile-button/app-bar-profile-button.js +112 -0
- package/esm/app-bar/profile-button/index.d.ts +10 -0
- package/esm/app-bar/profile-button/index.js +14 -0
- package/esm/app-bar/search/app-bar-search-adapter.d.ts +59 -0
- package/esm/app-bar/search/app-bar-search-adapter.js +73 -0
- package/esm/app-bar/search/app-bar-search-constants.d.ts +38 -0
- package/esm/app-bar/search/app-bar-search-constants.js +42 -0
- package/esm/app-bar/search/app-bar-search-foundation.d.ts +62 -0
- package/esm/app-bar/search/app-bar-search-foundation.js +126 -0
- package/esm/app-bar/search/app-bar-search.d.ts +52 -0
- package/esm/app-bar/search/app-bar-search.js +101 -0
- package/esm/app-bar/search/index.d.ts +10 -0
- package/esm/app-bar/search/index.js +14 -0
- package/esm/autocomplete/autocomplete-adapter.d.ts +90 -0
- package/esm/autocomplete/autocomplete-adapter.js +222 -0
- package/esm/autocomplete/autocomplete-component-delegate.d.ts +34 -0
- package/esm/autocomplete/autocomplete-component-delegate.js +76 -0
- package/esm/autocomplete/autocomplete-constants.d.ts +68 -0
- package/esm/autocomplete/autocomplete-constants.js +49 -0
- package/esm/autocomplete/autocomplete-foundation.d.ts +175 -0
- package/esm/autocomplete/autocomplete-foundation.js +857 -0
- package/esm/autocomplete/autocomplete-utils.d.ts +22 -0
- package/esm/autocomplete/autocomplete-utils.js +36 -0
- package/esm/autocomplete/autocomplete.d.ts +85 -0
- package/esm/autocomplete/autocomplete.js +162 -0
- package/esm/autocomplete/index.d.ts +12 -0
- package/esm/autocomplete/index.js +16 -0
- package/esm/avatar/avatar-adapter.d.ts +42 -0
- package/esm/avatar/avatar-adapter.js +63 -0
- package/esm/avatar/avatar-component-delegate.d.ts +16 -0
- package/esm/avatar/avatar-component-delegate.js +15 -0
- package/esm/avatar/avatar-constants.d.ts +25 -0
- package/esm/avatar/avatar-constants.js +32 -0
- package/esm/avatar/avatar-foundation.d.ts +47 -0
- package/esm/avatar/avatar-foundation.js +119 -0
- package/esm/avatar/avatar.d.ts +36 -0
- package/esm/avatar/avatar.js +71 -0
- package/esm/avatar/index.d.ts +11 -0
- package/esm/avatar/index.js +15 -0
- package/esm/backdrop/backdrop-adapter.d.ts +36 -0
- package/esm/backdrop/backdrop-adapter.js +40 -0
- package/esm/backdrop/backdrop-constants.d.ts +26 -0
- package/esm/backdrop/backdrop-constants.js +31 -0
- package/esm/backdrop/backdrop-foundation.d.ts +38 -0
- package/esm/backdrop/backdrop-foundation.js +82 -0
- package/esm/backdrop/backdrop.d.ts +51 -0
- package/esm/backdrop/backdrop.js +85 -0
- package/esm/backdrop/index.d.ts +10 -0
- package/esm/backdrop/index.js +14 -0
- package/esm/badge/badge-adapter.d.ts +17 -0
- package/esm/badge/badge-adapter.js +20 -0
- package/esm/badge/badge-component-delegate.d.ts +16 -0
- package/esm/badge/badge-component-delegate.js +15 -0
- package/esm/badge/badge-constants.d.ts +21 -0
- package/esm/badge/badge-constants.js +26 -0
- package/esm/badge/badge-foundation.d.ts +24 -0
- package/esm/badge/badge-foundation.js +55 -0
- package/esm/badge/badge.d.ts +26 -0
- package/esm/badge/badge.js +51 -0
- package/esm/badge/index.d.ts +11 -0
- package/esm/badge/index.js +15 -0
- package/esm/banner/banner-adapter.d.ts +30 -0
- package/esm/banner/banner-adapter.js +44 -0
- package/esm/banner/banner-constants.d.ts +34 -0
- package/esm/banner/banner-constants.js +41 -0
- package/esm/banner/banner-foundation.d.ts +31 -0
- package/esm/banner/banner-foundation.js +73 -0
- package/esm/banner/banner.d.ts +35 -0
- package/esm/banner/banner.js +67 -0
- package/esm/banner/index.d.ts +10 -0
- package/esm/banner/index.js +14 -0
- package/esm/bottom-sheet/bottom-sheet-adapter.d.ts +70 -0
- package/esm/bottom-sheet/bottom-sheet-adapter.js +129 -0
- package/esm/bottom-sheet/bottom-sheet-constants.d.ts +49 -0
- package/esm/bottom-sheet/bottom-sheet-constants.js +47 -0
- package/esm/bottom-sheet/bottom-sheet-foundation.d.ts +79 -0
- package/esm/bottom-sheet/bottom-sheet-foundation.js +327 -0
- package/esm/bottom-sheet/bottom-sheet.d.ts +58 -0
- package/esm/bottom-sheet/bottom-sheet.js +85 -0
- package/esm/bottom-sheet/index.d.ts +10 -0
- package/esm/bottom-sheet/index.js +14 -0
- package/esm/busy-indicator/busy-indicator-adapter.d.ts +159 -0
- package/esm/busy-indicator/busy-indicator-adapter.js +201 -0
- package/esm/busy-indicator/busy-indicator-constants.d.ts +49 -0
- package/esm/busy-indicator/busy-indicator-constants.js +58 -0
- package/esm/busy-indicator/busy-indicator-foundation.d.ts +97 -0
- package/esm/busy-indicator/busy-indicator-foundation.js +268 -0
- package/esm/busy-indicator/busy-indicator.d.ts +73 -0
- package/esm/busy-indicator/busy-indicator.js +111 -0
- package/esm/busy-indicator/index.d.ts +10 -0
- package/esm/busy-indicator/index.js +14 -0
- package/esm/button/button-component-delegate.d.ts +24 -0
- package/esm/button/button-component-delegate.js +39 -0
- package/esm/button/button-constants.d.ts +28 -0
- package/esm/button/button-constants.js +33 -0
- package/esm/button/button.d.ts +43 -0
- package/esm/button/button.js +160 -0
- package/esm/button/index.d.ts +9 -0
- package/esm/button/index.js +13 -0
- package/esm/button-toggle/button-toggle/button-toggle-adapter.d.ts +30 -0
- package/esm/button-toggle/button-toggle/button-toggle-adapter.js +62 -0
- package/esm/button-toggle/button-toggle/button-toggle-constants.d.ts +33 -0
- package/esm/button-toggle/button-toggle/button-toggle-constants.js +35 -0
- package/esm/button-toggle/button-toggle/button-toggle-foundation.d.ts +37 -0
- package/esm/button-toggle/button-toggle/button-toggle-foundation.js +74 -0
- package/esm/button-toggle/button-toggle/button-toggle.d.ts +37 -0
- package/esm/button-toggle/button-toggle/button-toggle.js +76 -0
- package/esm/button-toggle/button-toggle/index.d.ts +10 -0
- package/esm/button-toggle/button-toggle/index.js +14 -0
- package/esm/button-toggle/button-toggle-group/button-toggle-group-adapter.d.ts +44 -0
- package/esm/button-toggle/button-toggle-group/button-toggle-group-adapter.js +125 -0
- package/esm/button-toggle/button-toggle-group/button-toggle-group-constants.d.ts +35 -0
- package/esm/button-toggle/button-toggle-group/button-toggle-group-constants.js +33 -0
- package/esm/button-toggle/button-toggle-group/button-toggle-group-foundation.d.ts +57 -0
- package/esm/button-toggle/button-toggle-group/button-toggle-group-foundation.js +198 -0
- package/esm/button-toggle/button-toggle-group/button-toggle-group.d.ts +38 -0
- package/esm/button-toggle/button-toggle-group/button-toggle-group.js +94 -0
- package/esm/button-toggle/button-toggle-group/index.d.ts +10 -0
- package/esm/button-toggle/button-toggle-group/index.js +14 -0
- package/esm/button-toggle/index.d.ts +7 -0
- package/esm/button-toggle/index.js +7 -0
- package/esm/calendar/calendar-adapter.d.ts +160 -0
- package/esm/calendar/calendar-adapter.js +425 -0
- package/esm/calendar/calendar-component-delegate.d.ts +21 -0
- package/esm/calendar/calendar-component-delegate.js +27 -0
- package/esm/calendar/calendar-constants.d.ts +261 -0
- package/esm/calendar/calendar-constants.js +170 -0
- package/esm/calendar/calendar-dom-utils.d.ts +46 -0
- package/esm/calendar/calendar-dom-utils.js +301 -0
- package/esm/calendar/calendar-dropdown/calendar-dropdown-constants.d.ts +15 -0
- package/esm/calendar/calendar-dropdown/calendar-dropdown-constants.js +11 -0
- package/esm/calendar/calendar-dropdown/calendar-dropdown.d.ts +41 -0
- package/esm/calendar/calendar-dropdown/calendar-dropdown.js +106 -0
- package/esm/calendar/calendar-dropdown/index.d.ts +7 -0
- package/esm/calendar/calendar-dropdown/index.js +7 -0
- package/esm/calendar/calendar-foundation.d.ts +547 -0
- package/esm/calendar/calendar-foundation.js +2218 -0
- package/esm/calendar/calendar-locale-utils.d.ts +20 -0
- package/esm/calendar/calendar-locale-utils.js +133 -0
- package/esm/calendar/calendar-menu/calendar-menu-adapter.d.ts +43 -0
- package/esm/calendar/calendar-menu/calendar-menu-adapter.js +156 -0
- package/esm/calendar/calendar-menu/calendar-menu-constants.d.ts +74 -0
- package/esm/calendar/calendar-menu/calendar-menu-constants.js +76 -0
- package/esm/calendar/calendar-menu/calendar-menu-foundation.d.ts +66 -0
- package/esm/calendar/calendar-menu/calendar-menu-foundation.js +229 -0
- package/esm/calendar/calendar-menu/calendar-menu-utils.d.ts +12 -0
- package/esm/calendar/calendar-menu/calendar-menu-utils.js +85 -0
- package/esm/calendar/calendar-menu/calendar-menu.d.ts +48 -0
- package/esm/calendar/calendar-menu/calendar-menu.js +86 -0
- package/esm/calendar/calendar-menu/index.d.ts +11 -0
- package/esm/calendar/calendar-menu/index.js +15 -0
- package/esm/calendar/calendar-utils.d.ts +64 -0
- package/esm/calendar/calendar-utils.js +309 -0
- package/esm/calendar/calendar.d.ts +96 -0
- package/esm/calendar/calendar.js +282 -0
- package/esm/calendar/core/calendar-base.d.ts +34 -0
- package/esm/calendar/core/calendar-base.js +6 -0
- package/esm/calendar/core/date-range.d.ts +15 -0
- package/esm/calendar/core/date-range.js +16 -0
- package/esm/calendar/core/index.d.ts +7 -0
- package/esm/calendar/core/index.js +7 -0
- package/esm/calendar/index.d.ts +17 -0
- package/esm/calendar/index.js +21 -0
- package/esm/card/card-constants.d.ts +17 -0
- package/esm/card/card-constants.js +22 -0
- package/esm/card/card.d.ts +27 -0
- package/esm/card/card.js +58 -0
- package/esm/card/index.d.ts +8 -0
- package/esm/card/index.js +12 -0
- package/esm/checkbox/checkbox-adapter.d.ts +71 -0
- package/esm/checkbox/checkbox-adapter.js +216 -0
- package/esm/checkbox/checkbox-component-delegate.d.ts +37 -0
- package/esm/checkbox/checkbox-component-delegate.js +92 -0
- package/esm/checkbox/checkbox-constants.d.ts +72 -0
- package/esm/checkbox/checkbox-constants.js +67 -0
- package/esm/checkbox/checkbox-foundation.d.ts +35 -0
- package/esm/checkbox/checkbox-foundation.js +175 -0
- package/esm/checkbox/checkbox.d.ts +28 -0
- package/esm/checkbox/checkbox.js +69 -0
- package/esm/checkbox/index.d.ts +11 -0
- package/esm/checkbox/index.js +15 -0
- package/esm/chip-field/chip-field-adapter.d.ts +32 -0
- package/esm/chip-field/chip-field-adapter.js +51 -0
- package/esm/chip-field/chip-field-component-delegate.d.ts +45 -0
- package/esm/chip-field/chip-field-component-delegate.js +125 -0
- package/esm/chip-field/chip-field-constants.d.ts +31 -0
- package/esm/chip-field/chip-field-constants.js +36 -0
- package/esm/chip-field/chip-field-foundation.d.ts +30 -0
- package/esm/chip-field/chip-field-foundation.js +151 -0
- package/esm/chip-field/chip-field.d.ts +21 -0
- package/esm/chip-field/chip-field.js +28 -0
- package/esm/chip-field/index.d.ts +11 -0
- package/esm/chip-field/index.js +15 -0
- package/esm/chips/chip/chip-adapter.d.ts +51 -0
- package/esm/chips/chip/chip-adapter.js +115 -0
- package/esm/chips/chip/chip-constants.d.ts +53 -0
- package/esm/chips/chip/chip-constants.js +47 -0
- package/esm/chips/chip/chip-foundation.d.ts +69 -0
- package/esm/chips/chip/chip-foundation.js +264 -0
- package/esm/chips/chip/chip.d.ts +50 -0
- package/esm/chips/chip/chip.js +98 -0
- package/esm/chips/chip/index.d.ts +10 -0
- package/esm/chips/chip/index.js +14 -0
- package/esm/chips/chip-set/chip-set-adapter.d.ts +23 -0
- package/esm/chips/chip-set/chip-set-adapter.js +33 -0
- package/esm/chips/chip-set/chip-set-constants.d.ts +21 -0
- package/esm/chips/chip-set/chip-set-constants.js +26 -0
- package/esm/chips/chip-set/chip-set-foundation.d.ts +35 -0
- package/esm/chips/chip-set/chip-set-foundation.js +74 -0
- package/esm/chips/chip-set/chip-set.d.ts +29 -0
- package/esm/chips/chip-set/chip-set.js +67 -0
- package/esm/chips/chip-set/index.d.ts +10 -0
- package/esm/chips/chip-set/index.js +14 -0
- package/esm/chips/index.d.ts +7 -0
- package/esm/chips/index.js +7 -0
- package/esm/circular-progress/circular-progress-adapter.d.ts +28 -0
- package/esm/circular-progress/circular-progress-adapter.js +42 -0
- package/esm/circular-progress/circular-progress-constants.d.ts +17 -0
- package/esm/circular-progress/circular-progress-constants.js +21 -0
- package/esm/circular-progress/circular-progress-foundation.d.ts +32 -0
- package/esm/circular-progress/circular-progress-foundation.js +66 -0
- package/esm/circular-progress/circular-progress.d.ts +27 -0
- package/esm/circular-progress/circular-progress.js +65 -0
- package/esm/circular-progress/index.d.ts +10 -0
- package/esm/circular-progress/index.js +14 -0
- package/esm/color-picker/color-picker-adapter.d.ts +78 -0
- package/esm/color-picker/color-picker-adapter.js +175 -0
- package/esm/color-picker/color-picker-constants.d.ts +79 -0
- package/esm/color-picker/color-picker-constants.js +65 -0
- package/esm/color-picker/color-picker-foundation.d.ts +67 -0
- package/esm/color-picker/color-picker-foundation.js +235 -0
- package/esm/color-picker/color-picker-gradient-slider.d.ts +30 -0
- package/esm/color-picker/color-picker-gradient-slider.js +135 -0
- package/esm/color-picker/color-picker-slider.d.ts +38 -0
- package/esm/color-picker/color-picker-slider.js +118 -0
- package/esm/color-picker/color-picker-utils.d.ts +40 -0
- package/esm/color-picker/color-picker-utils.js +197 -0
- package/esm/color-picker/color-picker.d.ts +43 -0
- package/esm/color-picker/color-picker.js +80 -0
- package/esm/color-picker/index.d.ts +10 -0
- package/esm/color-picker/index.js +14 -0
- package/esm/constants.d.ts +9 -0
- package/esm/constants.js +9 -0
- package/esm/core/base/base-adapter.d.ts +42 -0
- package/esm/core/base/base-adapter.js +56 -0
- package/esm/core/base/base-component.d.ts +11 -0
- package/esm/core/base/base-component.js +8 -0
- package/esm/core/base/index.d.ts +7 -0
- package/esm/core/base/index.js +7 -0
- package/esm/core/delegates/base-component-delegate.d.ts +40 -0
- package/esm/core/delegates/base-component-delegate.js +84 -0
- package/esm/core/delegates/form-field-component-delegate.d.ts +24 -0
- package/esm/core/delegates/form-field-component-delegate.js +11 -0
- package/esm/core/delegates/index.d.ts +7 -0
- package/esm/core/delegates/index.js +7 -0
- package/esm/core/index.d.ts +9 -0
- package/esm/core/index.js +9 -0
- package/esm/core/mask/date-input-mask.d.ts +35 -0
- package/esm/core/mask/date-input-mask.js +155 -0
- package/esm/core/mask/index.d.ts +7 -0
- package/esm/core/mask/index.js +7 -0
- package/esm/core/mask/time-input-mask.d.ts +38 -0
- package/esm/core/mask/time-input-mask.js +163 -0
- package/esm/core/utils/date-utils.d.ts +42 -0
- package/esm/core/utils/date-utils.js +133 -0
- package/esm/core/utils/index.d.ts +9 -0
- package/esm/core/utils/index.js +9 -0
- package/esm/core/utils/svg-utils.d.ts +14 -0
- package/esm/core/utils/svg-utils.js +62 -0
- package/esm/core/utils/time-utils.d.ts +21 -0
- package/esm/core/utils/time-utils.js +111 -0
- package/esm/core/utils/utils.d.ts +11 -0
- package/esm/core/utils/utils.js +26 -0
- package/esm/date-picker/base/base-date-picker-adapter.d.ts +98 -0
- package/esm/date-picker/base/base-date-picker-adapter.js +157 -0
- package/esm/date-picker/base/base-date-picker-constants.d.ts +52 -0
- package/esm/date-picker/base/base-date-picker-constants.js +33 -0
- package/esm/date-picker/base/base-date-picker-foundation.d.ts +152 -0
- package/esm/date-picker/base/base-date-picker-foundation.js +608 -0
- package/esm/date-picker/base/base-date-picker-utils.d.ts +6 -0
- package/esm/date-picker/base/base-date-picker-utils.js +21 -0
- package/esm/date-picker/base/base-date-picker.d.ts +82 -0
- package/esm/date-picker/base/base-date-picker.js +135 -0
- package/esm/date-picker/date-picker-adapter.d.ts +39 -0
- package/esm/date-picker/date-picker-adapter.js +121 -0
- package/esm/date-picker/date-picker-component-delegate.d.ts +34 -0
- package/esm/date-picker/date-picker-component-delegate.js +73 -0
- package/esm/date-picker/date-picker-constants.d.ts +20 -0
- package/esm/date-picker/date-picker-constants.js +25 -0
- package/esm/date-picker/date-picker-foundation.d.ts +34 -0
- package/esm/date-picker/date-picker-foundation.js +155 -0
- package/esm/date-picker/date-picker.d.ts +26 -0
- package/esm/date-picker/date-picker.js +54 -0
- package/esm/date-picker/index.d.ts +11 -0
- package/esm/date-picker/index.js +15 -0
- package/esm/date-range-picker/date-range-picker-adapter.d.ts +65 -0
- package/esm/date-range-picker/date-range-picker-adapter.js +190 -0
- package/esm/date-range-picker/date-range-picker-component-delegate.d.ts +41 -0
- package/esm/date-range-picker/date-range-picker-component-delegate.js +86 -0
- package/esm/date-range-picker/date-range-picker-constants.d.ts +34 -0
- package/esm/date-range-picker/date-range-picker-constants.js +38 -0
- package/esm/date-range-picker/date-range-picker-foundation.d.ts +60 -0
- package/esm/date-range-picker/date-range-picker-foundation.js +342 -0
- package/esm/date-range-picker/date-range-picker.d.ts +33 -0
- package/esm/date-range-picker/date-range-picker.js +64 -0
- package/esm/date-range-picker/index.d.ts +11 -0
- package/esm/date-range-picker/index.js +15 -0
- package/esm/dialog/dialog-adapter.d.ts +75 -0
- package/esm/dialog/dialog-adapter.js +164 -0
- package/esm/dialog/dialog-constants.d.ts +65 -0
- package/esm/dialog/dialog-constants.js +59 -0
- package/esm/dialog/dialog-foundation.d.ts +102 -0
- package/esm/dialog/dialog-foundation.js +451 -0
- package/esm/dialog/dialog.d.ts +71 -0
- package/esm/dialog/dialog.js +120 -0
- package/esm/dialog/index.d.ts +10 -0
- package/esm/dialog/index.js +14 -0
- package/esm/divider/divider-constants.d.ts +11 -0
- package/esm/divider/divider-constants.js +14 -0
- package/esm/divider/divider.d.ts +19 -0
- package/esm/divider/divider.js +26 -0
- package/esm/divider/index.d.ts +8 -0
- package/esm/divider/index.js +12 -0
- package/esm/drawer/base/base-drawer-adapter.d.ts +24 -0
- package/esm/drawer/base/base-drawer-adapter.js +48 -0
- package/esm/drawer/base/base-drawer-constants.d.ts +27 -0
- package/esm/drawer/base/base-drawer-constants.js +30 -0
- package/esm/drawer/base/base-drawer-foundation.d.ts +32 -0
- package/esm/drawer/base/base-drawer-foundation.js +89 -0
- package/esm/drawer/base/base-drawer.d.ts +30 -0
- package/esm/drawer/base/base-drawer.js +42 -0
- package/esm/drawer/base/index.d.ts +9 -0
- package/esm/drawer/base/index.js +9 -0
- package/esm/drawer/drawer/drawer-constants.d.ts +8 -0
- package/esm/drawer/drawer/drawer-constants.js +10 -0
- package/esm/drawer/drawer/drawer.d.ts +21 -0
- package/esm/drawer/drawer/drawer.js +24 -0
- package/esm/drawer/drawer/index.d.ts +8 -0
- package/esm/drawer/drawer/index.js +12 -0
- package/esm/drawer/index.d.ts +9 -0
- package/esm/drawer/index.js +9 -0
- package/esm/drawer/mini-drawer/index.d.ts +8 -0
- package/esm/drawer/mini-drawer/index.js +12 -0
- package/esm/drawer/mini-drawer/mini-drawer-constants.d.ts +11 -0
- package/esm/drawer/mini-drawer/mini-drawer-constants.js +14 -0
- package/esm/drawer/mini-drawer/mini-drawer.d.ts +17 -0
- package/esm/drawer/mini-drawer/mini-drawer.js +24 -0
- package/esm/drawer/modal-drawer/index.d.ts +10 -0
- package/esm/drawer/modal-drawer/index.js +14 -0
- package/esm/drawer/modal-drawer/modal-drawer-adapter.d.ts +20 -0
- package/esm/drawer/modal-drawer/modal-drawer-adapter.js +30 -0
- package/esm/drawer/modal-drawer/modal-drawer-constants.d.ts +15 -0
- package/esm/drawer/modal-drawer/modal-drawer-constants.js +19 -0
- package/esm/drawer/modal-drawer/modal-drawer-foundation.d.ts +22 -0
- package/esm/drawer/modal-drawer/modal-drawer-foundation.js +52 -0
- package/esm/drawer/modal-drawer/modal-drawer.d.ts +21 -0
- package/esm/drawer/modal-drawer/modal-drawer.js +28 -0
- package/esm/expansion-panel/expansion-panel-adapter.d.ts +33 -0
- package/esm/expansion-panel/expansion-panel-adapter.js +182 -0
- package/esm/expansion-panel/expansion-panel-constants.d.ts +38 -0
- package/esm/expansion-panel/expansion-panel-constants.js +47 -0
- package/esm/expansion-panel/expansion-panel-foundation.d.ts +59 -0
- package/esm/expansion-panel/expansion-panel-foundation.js +151 -0
- package/esm/expansion-panel/expansion-panel.d.ts +60 -0
- package/esm/expansion-panel/expansion-panel.js +81 -0
- package/esm/expansion-panel/index.d.ts +10 -0
- package/esm/expansion-panel/index.js +14 -0
- package/esm/field/field-adapter.d.ts +101 -0
- package/esm/field/field-adapter.js +184 -0
- package/esm/field/field-constants.d.ts +36 -0
- package/esm/field/field-constants.js +36 -0
- package/esm/field/field-foundation.d.ts +65 -0
- package/esm/field/field-foundation.js +328 -0
- package/esm/field/field.d.ts +40 -0
- package/esm/field/field.js +78 -0
- package/esm/file-picker/file-picker-adapter.d.ts +81 -0
- package/esm/file-picker/file-picker-adapter.js +134 -0
- package/esm/file-picker/file-picker-component-delegate.d.ts +23 -0
- package/esm/file-picker/file-picker-component-delegate.js +49 -0
- package/esm/file-picker/file-picker-constants.d.ts +41 -0
- package/esm/file-picker/file-picker-constants.js +44 -0
- package/esm/file-picker/file-picker-foundation.d.ts +66 -0
- package/esm/file-picker/file-picker-foundation.js +226 -0
- package/esm/file-picker/file-picker.d.ts +45 -0
- package/esm/file-picker/file-picker.js +88 -0
- package/esm/file-picker/index.d.ts +11 -0
- package/esm/file-picker/index.js +15 -0
- package/esm/floating-action-button/floating-action-button-component-delegate.d.ts +22 -0
- package/esm/floating-action-button/floating-action-button-component-delegate.js +36 -0
- package/esm/floating-action-button/floating-action-button-constants.d.ts +27 -0
- package/esm/floating-action-button/floating-action-button-constants.js +32 -0
- package/esm/floating-action-button/floating-action-button.d.ts +40 -0
- package/esm/floating-action-button/floating-action-button.js +126 -0
- package/esm/floating-action-button/index.d.ts +9 -0
- package/esm/floating-action-button/index.js +13 -0
- package/esm/floating-label/floating-label-adapter.d.ts +23 -0
- package/esm/floating-label/floating-label-adapter.js +32 -0
- package/esm/floating-label/floating-label-constants.d.ts +13 -0
- package/esm/floating-label/floating-label-constants.js +14 -0
- package/esm/floating-label/floating-label-foundation.d.ts +17 -0
- package/esm/floating-label/floating-label-foundation.js +71 -0
- package/esm/floating-label/floating-label.d.ts +27 -0
- package/esm/floating-label/floating-label.js +34 -0
- package/esm/floating-label/index.d.ts +9 -0
- package/esm/floating-label/index.js +9 -0
- package/esm/icon/icon-adapter.d.ts +23 -0
- package/esm/icon/icon-adapter.js +43 -0
- package/esm/icon/icon-component-delegate.d.ts +15 -0
- package/esm/icon/icon-component-delegate.js +15 -0
- package/esm/icon/icon-constants.d.ts +27 -0
- package/esm/icon/icon-constants.js +31 -0
- package/esm/icon/icon-foundation.d.ts +58 -0
- package/esm/icon/icon-foundation.js +187 -0
- package/esm/icon/icon-registry.d.ts +53 -0
- package/esm/icon/icon-registry.js +94 -0
- package/esm/icon/icon-utils.d.ts +12 -0
- package/esm/icon/icon-utils.js +66 -0
- package/esm/icon/icon.d.ts +46 -0
- package/esm/icon/icon.js +89 -0
- package/esm/icon/index.d.ts +13 -0
- package/esm/icon/index.js +23 -0
- package/esm/icon-button/icon-button-component-delegate.d.ts +31 -0
- package/esm/icon-button/icon-button-component-delegate.js +68 -0
- package/esm/icon-button/icon-button-constants.d.ts +30 -0
- package/esm/icon-button/icon-button-constants.js +43 -0
- package/esm/icon-button/icon-button.d.ts +57 -0
- package/esm/icon-button/icon-button.js +219 -0
- package/esm/icon-button/index.d.ts +9 -0
- package/esm/icon-button/index.js +13 -0
- package/esm/index.d.ts +70 -0
- package/esm/index.js +212 -0
- package/esm/inline-message/index.d.ts +8 -0
- package/esm/inline-message/index.js +12 -0
- package/esm/inline-message/inline-message-constants.d.ts +11 -0
- package/esm/inline-message/inline-message-constants.js +14 -0
- package/esm/inline-message/inline-message.d.ts +16 -0
- package/esm/inline-message/inline-message.js +23 -0
- package/esm/keyboard-shortcut/index.d.ts +11 -0
- package/esm/keyboard-shortcut/index.js +15 -0
- package/esm/keyboard-shortcut/keyboard-shortcut-adapter.d.ts +44 -0
- package/esm/keyboard-shortcut/keyboard-shortcut-adapter.js +79 -0
- package/esm/keyboard-shortcut/keyboard-shortcut-constants.d.ts +29 -0
- package/esm/keyboard-shortcut/keyboard-shortcut-constants.js +44 -0
- package/esm/keyboard-shortcut/keyboard-shortcut-foundation.d.ts +63 -0
- package/esm/keyboard-shortcut/keyboard-shortcut-foundation.js +165 -0
- package/esm/keyboard-shortcut/keyboard-shortcut-utils.d.ts +16 -0
- package/esm/keyboard-shortcut/keyboard-shortcut-utils.js +61 -0
- package/esm/keyboard-shortcut/keyboard-shortcut.d.ts +45 -0
- package/esm/keyboard-shortcut/keyboard-shortcut.js +93 -0
- package/esm/label-value/index.d.ts +11 -0
- package/esm/label-value/index.js +15 -0
- package/esm/label-value/label-value-adapter.d.ts +24 -0
- package/esm/label-value/label-value-adapter.js +47 -0
- package/esm/label-value/label-value-component-delegate.d.ts +29 -0
- package/esm/label-value/label-value-component-delegate.js +54 -0
- package/esm/label-value/label-value-constants.d.ts +27 -0
- package/esm/label-value/label-value-constants.js +30 -0
- package/esm/label-value/label-value-foundation.d.ts +33 -0
- package/esm/label-value/label-value-foundation.js +80 -0
- package/esm/label-value/label-value.d.ts +34 -0
- package/esm/label-value/label-value.js +65 -0
- package/esm/linear-progress/index.d.ts +8 -0
- package/esm/linear-progress/index.js +12 -0
- package/esm/linear-progress/linear-progress-constants.d.ts +18 -0
- package/esm/linear-progress/linear-progress-constants.js +22 -0
- package/esm/linear-progress/linear-progress.d.ts +44 -0
- package/esm/linear-progress/linear-progress.js +143 -0
- package/esm/list/index.d.ts +7 -0
- package/esm/list/index.js +7 -0
- package/esm/list/list/index.d.ts +10 -0
- package/esm/list/list/index.js +14 -0
- package/esm/list/list/list-adapter.d.ts +61 -0
- package/esm/list/list/list-adapter.js +99 -0
- package/esm/list/list/list-constants.d.ts +18 -0
- package/esm/list/list/list-constants.js +22 -0
- package/esm/list/list/list-foundation.d.ts +48 -0
- package/esm/list/list/list-foundation.js +142 -0
- package/esm/list/list/list.d.ts +38 -0
- package/esm/list/list/list.js +77 -0
- package/esm/list/list-item/index.d.ts +10 -0
- package/esm/list/list-item/index.js +14 -0
- package/esm/list/list-item/list-item-adapter.d.ts +101 -0
- package/esm/list/list-item/list-item-adapter.js +175 -0
- package/esm/list/list-item/list-item-constants.d.ts +57 -0
- package/esm/list/list-item/list-item-constants.js +59 -0
- package/esm/list/list-item/list-item-foundation.d.ts +102 -0
- package/esm/list/list-item/list-item-foundation.js +305 -0
- package/esm/list/list-item/list-item.d.ts +72 -0
- package/esm/list/list-item/list-item.js +168 -0
- package/esm/list-dropdown/cascading-list-dropdown-aware-foundation.d.ts +43 -0
- package/esm/list-dropdown/cascading-list-dropdown-aware-foundation.js +62 -0
- package/esm/list-dropdown/index.d.ts +10 -0
- package/esm/list-dropdown/index.js +10 -0
- package/esm/list-dropdown/list-dropdown-adapter.d.ts +64 -0
- package/esm/list-dropdown/list-dropdown-adapter.js +282 -0
- package/esm/list-dropdown/list-dropdown-aware-foundation.d.ts +40 -0
- package/esm/list-dropdown/list-dropdown-aware-foundation.js +62 -0
- package/esm/list-dropdown/list-dropdown-aware.d.ts +34 -0
- package/esm/list-dropdown/list-dropdown-aware.js +54 -0
- package/esm/list-dropdown/list-dropdown-constants.d.ts +101 -0
- package/esm/list-dropdown/list-dropdown-constants.js +39 -0
- package/esm/list-dropdown/list-dropdown-foundation.d.ts +64 -0
- package/esm/list-dropdown/list-dropdown-foundation.js +224 -0
- package/esm/list-dropdown/list-dropdown-utils.d.ts +35 -0
- package/esm/list-dropdown/list-dropdown-utils.js +347 -0
- package/esm/list-dropdown/list-dropdown.d.ts +63 -0
- package/esm/list-dropdown/list-dropdown.js +86 -0
- package/esm/menu/index.d.ts +10 -0
- package/esm/menu/index.js +14 -0
- package/esm/menu/menu-adapter.d.ts +67 -0
- package/esm/menu/menu-adapter.js +202 -0
- package/esm/menu/menu-constants.d.ts +59 -0
- package/esm/menu/menu-constants.js +48 -0
- package/esm/menu/menu-foundation.d.ts +101 -0
- package/esm/menu/menu-foundation.js +514 -0
- package/esm/menu/menu.d.ts +71 -0
- package/esm/menu/menu.js +136 -0
- package/esm/open-icon/index.d.ts +10 -0
- package/esm/open-icon/index.js +14 -0
- package/esm/open-icon/open-icon-adapter.d.ts +18 -0
- package/esm/open-icon/open-icon-adapter.js +27 -0
- package/esm/open-icon/open-icon-constants.d.ts +20 -0
- package/esm/open-icon/open-icon-constants.js +25 -0
- package/esm/open-icon/open-icon-foundation.d.ts +22 -0
- package/esm/open-icon/open-icon-foundation.js +35 -0
- package/esm/open-icon/open-icon.d.ts +29 -0
- package/esm/open-icon/open-icon.js +55 -0
- package/esm/page-state/index.d.ts +8 -0
- package/esm/page-state/index.js +12 -0
- package/esm/page-state/page-state-constants.d.ts +8 -0
- package/esm/page-state/page-state-constants.js +10 -0
- package/esm/page-state/page-state.d.ts +16 -0
- package/esm/page-state/page-state.js +23 -0
- package/esm/paginator/index.d.ts +10 -0
- package/esm/paginator/index.js +14 -0
- package/esm/paginator/paginator-adapter.d.ts +96 -0
- package/esm/paginator/paginator-adapter.js +149 -0
- package/esm/paginator/paginator-constants.d.ts +74 -0
- package/esm/paginator/paginator-constants.js +75 -0
- package/esm/paginator/paginator-foundation.d.ts +132 -0
- package/esm/paginator/paginator-foundation.js +402 -0
- package/esm/paginator/paginator.d.ts +59 -0
- package/esm/paginator/paginator.js +135 -0
- package/esm/popup/index.d.ts +10 -0
- package/esm/popup/index.js +14 -0
- package/esm/popup/popup-adapter.d.ts +43 -0
- package/esm/popup/popup-adapter.js +136 -0
- package/esm/popup/popup-constants.d.ts +54 -0
- package/esm/popup/popup-constants.js +52 -0
- package/esm/popup/popup-foundation.d.ts +68 -0
- package/esm/popup/popup-foundation.js +249 -0
- package/esm/popup/popup.d.ts +49 -0
- package/esm/popup/popup.js +94 -0
- package/esm/product-icon/index.d.ts +10 -0
- package/esm/product-icon/index.js +14 -0
- package/esm/product-icon/product-icon-adapter.d.ts +27 -0
- package/esm/product-icon/product-icon-adapter.js +50 -0
- package/esm/product-icon/product-icon-constants.d.ts +38 -0
- package/esm/product-icon/product-icon-constants.js +46 -0
- package/esm/product-icon/product-icon-foundation.d.ts +40 -0
- package/esm/product-icon/product-icon-foundation.js +116 -0
- package/esm/product-icon/product-icon.d.ts +32 -0
- package/esm/product-icon/product-icon.js +65 -0
- package/esm/profile-card/index.d.ts +10 -0
- package/esm/profile-card/index.js +14 -0
- package/esm/profile-card/profile-card-adapter.d.ts +46 -0
- package/esm/profile-card/profile-card-adapter.js +81 -0
- package/esm/profile-card/profile-card-constants.d.ts +33 -0
- package/esm/profile-card/profile-card-constants.js +39 -0
- package/esm/profile-card/profile-card-foundation.d.ts +48 -0
- package/esm/profile-card/profile-card-foundation.js +108 -0
- package/esm/profile-card/profile-card.d.ts +38 -0
- package/esm/profile-card/profile-card.js +94 -0
- package/esm/quantity-field/index.d.ts +11 -0
- package/esm/quantity-field/index.js +15 -0
- package/esm/quantity-field/quantity-field-adapter.d.ts +77 -0
- package/esm/quantity-field/quantity-field-adapter.js +225 -0
- package/esm/quantity-field/quantity-field-component-delegate.d.ts +44 -0
- package/esm/quantity-field/quantity-field-component-delegate.js +129 -0
- package/esm/quantity-field/quantity-field-constants.d.ts +35 -0
- package/esm/quantity-field/quantity-field-constants.js +41 -0
- package/esm/quantity-field/quantity-field-foundation.d.ts +36 -0
- package/esm/quantity-field/quantity-field-foundation.js +100 -0
- package/esm/quantity-field/quantity-field.d.ts +29 -0
- package/esm/quantity-field/quantity-field.js +89 -0
- package/esm/radio/index.d.ts +8 -0
- package/esm/radio/index.js +12 -0
- package/esm/radio/radio-adapter.d.ts +70 -0
- package/esm/radio/radio-adapter.js +250 -0
- package/esm/radio/radio-constants.d.ts +30 -0
- package/esm/radio/radio-constants.js +36 -0
- package/esm/radio/radio-foundation.d.ts +31 -0
- package/esm/radio/radio-foundation.js +80 -0
- package/esm/radio/radio.d.ts +31 -0
- package/esm/radio/radio.js +73 -0
- package/esm/ripple/forge-ripple.d.ts +11 -0
- package/esm/ripple/forge-ripple.js +10 -0
- package/esm/ripple/index.d.ts +11 -0
- package/esm/ripple/index.js +15 -0
- package/esm/ripple/ripple-adapter.d.ts +23 -0
- package/esm/ripple/ripple-adapter.js +47 -0
- package/esm/ripple/ripple-constants.d.ts +15 -0
- package/esm/ripple/ripple-constants.js +19 -0
- package/esm/ripple/ripple-foundation.d.ts +30 -0
- package/esm/ripple/ripple-foundation.js +48 -0
- package/esm/ripple/ripple.d.ts +31 -0
- package/esm/ripple/ripple.js +59 -0
- package/esm/scaffold/index.d.ts +8 -0
- package/esm/scaffold/index.js +12 -0
- package/esm/scaffold/scaffold-constants.d.ts +8 -0
- package/esm/scaffold/scaffold-constants.js +10 -0
- package/esm/scaffold/scaffold.d.ts +19 -0
- package/esm/scaffold/scaffold.js +26 -0
- package/esm/select/core/base-select-adapter.d.ts +68 -0
- package/esm/select/core/base-select-adapter.js +167 -0
- package/esm/select/core/base-select-constants.d.ts +28 -0
- package/esm/select/core/base-select-constants.js +22 -0
- package/esm/select/core/base-select-foundation.d.ts +137 -0
- package/esm/select/core/base-select-foundation.js +609 -0
- package/esm/select/core/base-select.d.ts +51 -0
- package/esm/select/core/base-select.js +67 -0
- package/esm/select/core/index.d.ts +10 -0
- package/esm/select/core/index.js +10 -0
- package/esm/select/core/select-utils.d.ts +18 -0
- package/esm/select/core/select-utils.js +27 -0
- package/esm/select/index.d.ts +20 -0
- package/esm/select/index.js +11 -0
- package/esm/select/option/index.d.ts +10 -0
- package/esm/select/option/index.js +14 -0
- package/esm/select/option/option-adapter.d.ts +17 -0
- package/esm/select/option/option-adapter.js +14 -0
- package/esm/select/option/option-constants.d.ts +21 -0
- package/esm/select/option/option-constants.js +24 -0
- package/esm/select/option/option-foundation.d.ts +67 -0
- package/esm/select/option/option-foundation.js +149 -0
- package/esm/select/option/option.d.ts +51 -0
- package/esm/select/option/option.js +122 -0
- package/esm/select/option-group/index.d.ts +8 -0
- package/esm/select/option-group/index.js +12 -0
- package/esm/select/option-group/option-group-constants.d.ts +11 -0
- package/esm/select/option-group/option-group-constants.js +14 -0
- package/esm/select/option-group/option-group.d.ts +26 -0
- package/esm/select/option-group/option-group.js +45 -0
- package/esm/select/select/index.d.ts +10 -0
- package/esm/select/select/index.js +14 -0
- package/esm/select/select/select-adapter.d.ts +85 -0
- package/esm/select/select/select-adapter.js +159 -0
- package/esm/select/select/select-constants.d.ts +37 -0
- package/esm/select/select/select-constants.js +42 -0
- package/esm/select/select/select-foundation.d.ts +96 -0
- package/esm/select/select/select-foundation.js +338 -0
- package/esm/select/select/select.d.ts +54 -0
- package/esm/select/select/select.js +129 -0
- package/esm/select/select-component-delegate.d.ts +30 -0
- package/esm/select/select-component-delegate.js +62 -0
- package/esm/select/select-dropdown/index.d.ts +10 -0
- package/esm/select/select-dropdown/index.js +14 -0
- package/esm/select/select-dropdown/select-dropdown-adapter.d.ts +36 -0
- package/esm/select/select-dropdown/select-dropdown-adapter.js +123 -0
- package/esm/select/select-dropdown/select-dropdown-constants.d.ts +16 -0
- package/esm/select/select-dropdown/select-dropdown-constants.js +21 -0
- package/esm/select/select-dropdown/select-dropdown-foundation.d.ts +35 -0
- package/esm/select/select-dropdown/select-dropdown-foundation.js +88 -0
- package/esm/select/select-dropdown/select-dropdown.d.ts +31 -0
- package/esm/select/select-dropdown/select-dropdown.js +83 -0
- package/esm/skeleton/index.d.ts +8 -0
- package/esm/skeleton/index.js +12 -0
- package/esm/skeleton/skeleton-constants.d.ts +8 -0
- package/esm/skeleton/skeleton-constants.js +10 -0
- package/esm/skeleton/skeleton.d.ts +16 -0
- package/esm/skeleton/skeleton.js +23 -0
- package/esm/slider/index.d.ts +9 -0
- package/esm/slider/index.js +13 -0
- package/esm/slider/slider-component-delegate.d.ts +27 -0
- package/esm/slider/slider-component-delegate.js +42 -0
- package/esm/slider/slider-constants.d.ts +41 -0
- package/esm/slider/slider-constants.js +38 -0
- package/esm/slider/slider.d.ts +92 -0
- package/esm/slider/slider.js +298 -0
- package/esm/stepper/core/stepper-utils.d.ts +51 -0
- package/esm/stepper/core/stepper-utils.js +139 -0
- package/esm/stepper/index.d.ts +7 -0
- package/esm/stepper/index.js +7 -0
- package/esm/stepper/step/index.d.ts +10 -0
- package/esm/stepper/step/index.js +14 -0
- package/esm/stepper/step/step-adapter.d.ts +76 -0
- package/esm/stepper/step/step-adapter.js +161 -0
- package/esm/stepper/step/step-constants.d.ts +76 -0
- package/esm/stepper/step/step-constants.js +82 -0
- package/esm/stepper/step/step-foundation.d.ts +78 -0
- package/esm/stepper/step/step-foundation.js +248 -0
- package/esm/stepper/step/step.d.ts +49 -0
- package/esm/stepper/step/step.js +127 -0
- package/esm/stepper/stepper/index.d.ts +10 -0
- package/esm/stepper/stepper/index.js +14 -0
- package/esm/stepper/stepper/stepper-adapter.d.ts +67 -0
- package/esm/stepper/stepper/stepper-adapter.js +148 -0
- package/esm/stepper/stepper/stepper-constants.d.ts +77 -0
- package/esm/stepper/stepper/stepper-constants.js +79 -0
- package/esm/stepper/stepper/stepper-foundation.d.ts +76 -0
- package/esm/stepper/stepper/stepper-foundation.js +292 -0
- package/esm/stepper/stepper/stepper.d.ts +44 -0
- package/esm/stepper/stepper/stepper.js +95 -0
- package/esm/switch/index.d.ts +9 -0
- package/esm/switch/index.js +13 -0
- package/esm/switch/switch-component-delegate.d.ts +32 -0
- package/esm/switch/switch-component-delegate.js +70 -0
- package/esm/switch/switch-constants.d.ts +26 -0
- package/esm/switch/switch-constants.js +31 -0
- package/esm/switch/switch.d.ts +53 -0
- package/esm/switch/switch.js +155 -0
- package/esm/table/index.d.ts +12 -0
- package/esm/table/index.js +16 -0
- package/esm/table/multi-sort-manager.d.ts +18 -0
- package/esm/table/multi-sort-manager.js +67 -0
- package/esm/table/table-adapter.d.ts +80 -0
- package/esm/table/table-adapter.js +120 -0
- package/esm/table/table-constants.d.ts +104 -0
- package/esm/table/table-constants.js +115 -0
- package/esm/table/table-foundation.d.ts +271 -0
- package/esm/table/table-foundation.js +918 -0
- package/esm/table/table-row.d.ts +13 -0
- package/esm/table/table-row.js +14 -0
- package/esm/table/table-utils.d.ts +389 -0
- package/esm/table/table-utils.js +1415 -0
- package/esm/table/table.d.ts +182 -0
- package/esm/table/table.js +290 -0
- package/esm/table/types.d.ts +157 -0
- package/esm/table/types.js +26 -0
- package/esm/tabs/index.d.ts +7 -0
- package/esm/tabs/index.js +7 -0
- package/esm/tabs/tab/index.d.ts +10 -0
- package/esm/tabs/tab/index.js +14 -0
- package/esm/tabs/tab/tab-adapter.d.ts +54 -0
- package/esm/tabs/tab/tab-adapter.js +103 -0
- package/esm/tabs/tab/tab-constants.d.ts +32 -0
- package/esm/tabs/tab/tab-constants.js +32 -0
- package/esm/tabs/tab/tab-foundation.d.ts +43 -0
- package/esm/tabs/tab/tab-foundation.js +98 -0
- package/esm/tabs/tab/tab.d.ts +42 -0
- package/esm/tabs/tab/tab.js +79 -0
- package/esm/tabs/tab-bar/index.d.ts +10 -0
- package/esm/tabs/tab-bar/index.js +14 -0
- package/esm/tabs/tab-bar/tab-bar-adapter.d.ts +98 -0
- package/esm/tabs/tab-bar/tab-bar-adapter.js +223 -0
- package/esm/tabs/tab-bar/tab-bar-constants.d.ts +64 -0
- package/esm/tabs/tab-bar/tab-bar-constants.js +79 -0
- package/esm/tabs/tab-bar/tab-bar-foundation.d.ts +96 -0
- package/esm/tabs/tab-bar/tab-bar-foundation.js +385 -0
- package/esm/tabs/tab-bar/tab-bar.d.ts +64 -0
- package/esm/tabs/tab-bar/tab-bar.js +123 -0
- package/esm/text-field/index.d.ts +11 -0
- package/esm/text-field/index.js +15 -0
- package/esm/text-field/text-field-adapter.d.ts +34 -0
- package/esm/text-field/text-field-adapter.js +109 -0
- package/esm/text-field/text-field-component-delegate.d.ts +45 -0
- package/esm/text-field/text-field-component-delegate.js +125 -0
- package/esm/text-field/text-field-constants.d.ts +21 -0
- package/esm/text-field/text-field-constants.js +25 -0
- package/esm/text-field/text-field-foundation.d.ts +14 -0
- package/esm/text-field/text-field-foundation.js +16 -0
- package/esm/text-field/text-field.d.ts +17 -0
- package/esm/text-field/text-field.js +26 -0
- package/esm/theme/color-constants.d.ts +313 -0
- package/esm/theme/color-constants.js +363 -0
- package/esm/theme/index.d.ts +7 -0
- package/esm/theme/index.js +7 -0
- package/esm/theme/theme-utils.d.ts +9 -0
- package/esm/theme/theme-utils.js +68 -0
- package/esm/time-picker/index.d.ts +12 -0
- package/esm/time-picker/index.js +16 -0
- package/esm/time-picker/time-picker-adapter.d.ts +80 -0
- package/esm/time-picker/time-picker-adapter.js +208 -0
- package/esm/time-picker/time-picker-component-delegate.d.ts +33 -0
- package/esm/time-picker/time-picker-component-delegate.js +68 -0
- package/esm/time-picker/time-picker-constants.d.ts +59 -0
- package/esm/time-picker/time-picker-constants.js +48 -0
- package/esm/time-picker/time-picker-foundation.d.ts +146 -0
- package/esm/time-picker/time-picker-foundation.js +814 -0
- package/esm/time-picker/time-picker-utils.d.ts +25 -0
- package/esm/time-picker/time-picker-utils.js +122 -0
- package/esm/time-picker/time-picker.d.ts +76 -0
- package/esm/time-picker/time-picker.js +198 -0
- package/esm/toast/index.d.ts +10 -0
- package/esm/toast/index.js +14 -0
- package/esm/toast/toast-adapter.d.ts +83 -0
- package/esm/toast/toast-adapter.js +146 -0
- package/esm/toast/toast-constants.d.ts +58 -0
- package/esm/toast/toast-constants.js +63 -0
- package/esm/toast/toast-foundation.d.ts +67 -0
- package/esm/toast/toast-foundation.js +150 -0
- package/esm/toast/toast.d.ts +49 -0
- package/esm/toast/toast.js +93 -0
- package/esm/toolbar/index.d.ts +8 -0
- package/esm/toolbar/index.js +12 -0
- package/esm/toolbar/toolbar-constants.d.ts +25 -0
- package/esm/toolbar/toolbar-constants.js +30 -0
- package/esm/toolbar/toolbar.d.ts +26 -0
- package/esm/toolbar/toolbar.js +58 -0
- package/esm/tooltip/index.d.ts +11 -0
- package/esm/tooltip/index.js +15 -0
- package/esm/tooltip/tooltip-adapter.d.ts +74 -0
- package/esm/tooltip/tooltip-adapter.js +127 -0
- package/esm/tooltip/tooltip-constants.d.ts +35 -0
- package/esm/tooltip/tooltip-constants.js +41 -0
- package/esm/tooltip/tooltip-foundation.d.ts +104 -0
- package/esm/tooltip/tooltip-foundation.js +251 -0
- package/esm/tooltip/tooltip-utils.d.ts +13 -0
- package/esm/tooltip/tooltip-utils.js +53 -0
- package/esm/tooltip/tooltip.d.ts +47 -0
- package/esm/tooltip/tooltip.js +80 -0
- package/esm/utils/color-utils.d.ts +14 -0
- package/esm/utils/color-utils.js +35 -0
- package/esm/utils/index.d.ts +6 -0
- package/esm/utils/index.js +6 -0
- package/esm/view-switcher/index.d.ts +11 -0
- package/esm/view-switcher/index.js +15 -0
- package/esm/view-switcher/view/index.d.ts +8 -0
- package/esm/view-switcher/view/index.js +12 -0
- package/esm/view-switcher/view/view-constants.d.ts +8 -0
- package/esm/view-switcher/view/view-constants.js +10 -0
- package/esm/view-switcher/view/view.d.ts +16 -0
- package/esm/view-switcher/view/view.js +23 -0
- package/esm/view-switcher/view-switcher-adapter.d.ts +93 -0
- package/esm/view-switcher/view-switcher-adapter.js +281 -0
- package/esm/view-switcher/view-switcher-constants.d.ts +38 -0
- package/esm/view-switcher/view-switcher-constants.js +43 -0
- package/esm/view-switcher/view-switcher-foundation.d.ts +38 -0
- package/esm/view-switcher/view-switcher-foundation.js +122 -0
- package/esm/view-switcher/view-switcher.d.ts +40 -0
- package/esm/view-switcher/view-switcher.js +73 -0
- package/package.json +22 -0
- package/styles/app-bar/_mixins.scss +242 -0
- package/styles/app-bar/_variables.scss +34 -0
- package/styles/app-bar/app-bar.scss +22 -0
- package/styles/app-bar/search/_mixins.scss +238 -0
- package/styles/app-bar/search/_variables.scss +18 -0
- package/styles/app-bar/search/app-bar-search.scss +16 -0
- package/styles/autocomplete/autocomplete.scss +12 -0
- package/styles/avatar/_mixins.scss +46 -0
- package/styles/avatar/_variables.scss +16 -0
- package/styles/avatar/avatar.scss +16 -0
- package/styles/backdrop/_mixins.scss +31 -0
- package/styles/backdrop/_variables.scss +12 -0
- package/styles/backdrop/backdrop.scss +32 -0
- package/styles/badge/_mixins.scss +121 -0
- package/styles/badge/_variables.scss +87 -0
- package/styles/badge/badge.scss +40 -0
- package/styles/banner/_mixins.scss +219 -0
- package/styles/banner/_variables.scss +88 -0
- package/styles/banner/banner.scss +24 -0
- package/styles/bottom-sheet/_mixins.scss +98 -0
- package/styles/bottom-sheet/_variables.scss +7 -0
- package/styles/bottom-sheet/bottom-sheet.scss +21 -0
- package/styles/busy-indicator/_mixins.scss +184 -0
- package/styles/busy-indicator/_variables.scss +9 -0
- package/styles/busy-indicator/busy-indicator.scss +23 -0
- package/styles/busy-indicator/forge-busy-indicator.scss +8 -0
- package/styles/button/_button-base.scss +183 -0
- package/styles/button/_button-filled-theme.scss +60 -0
- package/styles/button/_button-filled.scss +71 -0
- package/styles/button/_button-outlined-theme.scss +175 -0
- package/styles/button/_button-outlined.scss +76 -0
- package/styles/button/_button-protected-theme.scss +60 -0
- package/styles/button/_button-protected.scss +88 -0
- package/styles/button/_button-ripple.scss +69 -0
- package/styles/button/_button-shared-theme.scss +447 -0
- package/styles/button/_button-text-theme.scss +60 -0
- package/styles/button/_button-text.scss +57 -0
- package/styles/button/_button.mixins.scss +148 -0
- package/styles/button/_mixins.scss +183 -0
- package/styles/button/forge-button.scss +9 -0
- package/styles/button-toggle/button-toggle/_mixins.scss +98 -0
- package/styles/button-toggle/button-toggle/button-toggle.scss +35 -0
- package/styles/button-toggle/button-toggle-group/_mixins.scss +79 -0
- package/styles/button-toggle/button-toggle-group/button-toggle-group.scss +16 -0
- package/styles/calendar/_mixins.scss +440 -0
- package/styles/calendar/_variables.scss +79 -0
- package/styles/calendar/calendar-menu/_mixins.scss +419 -0
- package/styles/calendar/calendar-menu/_variables.scss +10 -0
- package/styles/calendar/calendar-menu/calendar-menu.scss +22 -0
- package/styles/calendar/calendar.scss +26 -0
- package/styles/card/_mixins.scss +45 -0
- package/styles/card/_variables.scss +9 -0
- package/styles/card/card.scss +16 -0
- package/styles/checkbox/_checkbox-custom-properties.scss +11 -0
- package/styles/checkbox/_checkbox-theme.scss +577 -0
- package/styles/checkbox/_checkbox.mixins.scss +595 -0
- package/styles/checkbox/checkbox.scss +19 -0
- package/styles/chip-field/_base.scss +298 -0
- package/styles/chip-field/_core.scss +25 -0
- package/styles/chip-field/_mixins.scss +26 -0
- package/styles/chip-field/_selector.scss +229 -0
- package/styles/chip-field/_variables.scss +76 -0
- package/styles/chip-field/chip-field.scss +16 -0
- package/styles/chips/chip/_mixins.scss +277 -0
- package/styles/chips/chip/_variables.scss +7 -0
- package/styles/chips/chip/chip.scss +22 -0
- package/styles/chips/chip-set/_mixins.scss +40 -0
- package/styles/chips/chip-set/_variables.scss +6 -0
- package/styles/chips/chip-set/chip-set.scss +16 -0
- package/styles/circular-progress/_keyframes.scss +185 -0
- package/styles/circular-progress/_mixins.scss +320 -0
- package/styles/circular-progress/_variables.scss +50 -0
- package/styles/circular-progress/circular-progress.scss +9 -0
- package/styles/color-picker/_mixins.scss +231 -0
- package/styles/color-picker/_variables.scss +6 -0
- package/styles/color-picker/color-picker.scss +21 -0
- package/styles/date-picker/date-picker.scss +12 -0
- package/styles/date-range-picker/date-range-picker.scss +12 -0
- package/styles/dialog/_mixins.scss +199 -0
- package/styles/dialog/_variables.scss +22 -0
- package/styles/dialog/dialog.scss +16 -0
- package/styles/dialog/forge-dialog-utils.scss +31 -0
- package/styles/dialog/forge-dialog.scss +8 -0
- package/styles/divider/_mixins.scss +47 -0
- package/styles/divider/_variables.scss +7 -0
- package/styles/divider/divider.scss +31 -0
- package/styles/drawer/base/_mixins.scss +137 -0
- package/styles/drawer/base/_variables.scss +11 -0
- package/styles/drawer/drawer/_mixins.scss +10 -0
- package/styles/drawer/drawer/_variables.scss +12 -0
- package/styles/drawer/drawer/drawer.scss +25 -0
- package/styles/drawer/mini-drawer/_mixins.scss +66 -0
- package/styles/drawer/mini-drawer/_variables.scss +7 -0
- package/styles/drawer/mini-drawer/mini-drawer.scss +40 -0
- package/styles/drawer/modal-drawer/_mixins.scss +69 -0
- package/styles/drawer/modal-drawer/modal-drawer.scss +8 -0
- package/styles/expansion-panel/_mixins.scss +87 -0
- package/styles/expansion-panel/expansion-panel.scss +16 -0
- package/styles/expansion-panel/forge-expansion-panel.scss +16 -0
- package/styles/field/_base.scss +622 -0
- package/styles/field/_core.scss +61 -0
- package/styles/field/_selector.scss +560 -0
- package/styles/field/_utils.scss +48 -0
- package/styles/field/_variables.scss +126 -0
- package/styles/file-picker/_mixins.scss +153 -0
- package/styles/file-picker/_variables.scss +8 -0
- package/styles/file-picker/file-picker.scss +16 -0
- package/styles/floating-action-button/_extended-fab-theme.scss +238 -0
- package/styles/floating-action-button/_fab-custom-properties.scss +29 -0
- package/styles/floating-action-button/_fab-theme.scss +541 -0
- package/styles/floating-action-button/_fab.mixins.scss +351 -0
- package/styles/floating-action-button/forge-floating-action-button.scss +16 -0
- package/styles/floating-label/_mixins.scss +291 -0
- package/styles/floating-label/_variables.scss +15 -0
- package/styles/floating-label/forge-floating-label.scss +8 -0
- package/styles/forge-core.scss +14 -0
- package/styles/forge-dark.scss +10 -0
- package/styles/forge.scss +26 -0
- package/styles/form-field/_mixins.scss +71 -0
- package/styles/form-field/forge-form-field.scss +8 -0
- package/styles/icon/_mixins.scss +37 -0
- package/styles/icon/_variables.scss +10 -0
- package/styles/icon/icon.scss +26 -0
- package/styles/icon-button/_mixins.scss +345 -0
- package/styles/icon-button/_variables.scss +42 -0
- package/styles/icon-button/forge-icon-button.scss +8 -0
- package/styles/inline-message/_mixins.scss +82 -0
- package/styles/inline-message/_variables.scss +67 -0
- package/styles/inline-message/inline-message.scss +18 -0
- package/styles/label-value/_base.scss +252 -0
- package/styles/label-value/_core.scss +15 -0
- package/styles/label-value/_mixins.scss +15 -0
- package/styles/label-value/_selector.scss +167 -0
- package/styles/label-value/_variables.scss +37 -0
- package/styles/label-value/label-value.scss +17 -0
- package/styles/linear-progress/_mixins.scss +11 -0
- package/styles/linear-progress/_variables.scss +15 -0
- package/styles/linear-progress/linear-progress.scss +40 -0
- package/styles/list/list/_mixins.scss +45 -0
- package/styles/list/list/list.scss +16 -0
- package/styles/list/list-item/_mixins.scss +392 -0
- package/styles/list/list-item/_variables.scss +25 -0
- package/styles/list/list-item/list-item.scss +30 -0
- package/styles/menu/menu.scss +12 -0
- package/styles/open-icon/_mixins.scss +39 -0
- package/styles/open-icon/_variables.scss +8 -0
- package/styles/open-icon/open-icon.scss +16 -0
- package/styles/page-state/_mixins.scss +123 -0
- package/styles/page-state/_variables.scss +9 -0
- package/styles/page-state/page-state.scss +17 -0
- package/styles/paginator/_mixins.scss +136 -0
- package/styles/paginator/_variables.scss +6 -0
- package/styles/paginator/paginator.scss +21 -0
- package/styles/popup/_mixins.scss +86 -0
- package/styles/popup/_variables.scss +7 -0
- package/styles/popup/forge-popup.scss +8 -0
- package/styles/popup/popup.scss +16 -0
- package/styles/product-icon/_mixins.scss +49 -0
- package/styles/product-icon/_variables.scss +7 -0
- package/styles/product-icon/product-icon.scss +16 -0
- package/styles/profile-card/_mixins.scss +83 -0
- package/styles/profile-card/profile-card.scss +22 -0
- package/styles/quantity-field/_mixins.scss +116 -0
- package/styles/quantity-field/forge-quantity-field.scss +18 -0
- package/styles/quantity-field/quantity-field.scss +16 -0
- package/styles/radio/_mixins.scss +309 -0
- package/styles/radio/_radio-theme.scss +314 -0
- package/styles/radio/radio.scss +19 -0
- package/styles/ripple/forge-ripple.scss +17 -0
- package/styles/scaffold/_mixins.scss +194 -0
- package/styles/scaffold/forge-scaffold.scss +43 -0
- package/styles/scaffold/scaffold.scss +21 -0
- package/styles/select/select/_base.scss +84 -0
- package/styles/select/select/_core.scss +23 -0
- package/styles/select/select/_mixins.scss +25 -0
- package/styles/select/select/_selector.scss +88 -0
- package/styles/select/select/_variables.scss +16 -0
- package/styles/select/select/select.scss +17 -0
- package/styles/select/select-dropdown/select-dropdown.scss +8 -0
- package/styles/skeleton/_mixins.scss +132 -0
- package/styles/skeleton/_variables.scss +45 -0
- package/styles/skeleton/skeleton.scss +18 -0
- package/styles/slider/slider.scss +33 -0
- package/styles/stepper/step/_mixins.scss +416 -0
- package/styles/stepper/step/_variables.scss +21 -0
- package/styles/stepper/step/step.scss +164 -0
- package/styles/stepper/stepper/_mixins.scss +113 -0
- package/styles/stepper/stepper/stepper.scss +22 -0
- package/styles/switch/_switch-mixins.scss +301 -0
- package/styles/switch/_switch-theme.scss +701 -0
- package/styles/switch/switch.scss +80 -0
- package/styles/table/_mixins.scss +527 -0
- package/styles/table/_variables.scss +57 -0
- package/styles/table/forge-table.scss +12 -0
- package/styles/tabs/tab/_mixins.scss +165 -0
- package/styles/tabs/tab/_variables.scss +9 -0
- package/styles/tabs/tab/tab.scss +30 -0
- package/styles/tabs/tab-bar/_mixins.scss +78 -0
- package/styles/tabs/tab-bar/tab-bar.scss +19 -0
- package/styles/text-field/_base.scss +76 -0
- package/styles/text-field/_core.scss +19 -0
- package/styles/text-field/_mixins.scss +28 -0
- package/styles/text-field/_selector.scss +57 -0
- package/styles/text-field/_variables.scss +20 -0
- package/styles/text-field/text-field.scss +17 -0
- package/styles/theme/_custom-properties.scss +311 -0
- package/styles/theme/_icon-mixins.scss +62 -0
- package/styles/theme/_index.scss +7 -0
- package/styles/theme/_keys.scss +477 -0
- package/styles/theme/_theme-dark.scss +47 -0
- package/styles/theme/_theme-utils.scss +23 -0
- package/styles/theme/_theme-values.scss +244 -0
- package/styles/theme/_theme.scss +353 -0
- package/styles/theme/forge-material-icons.scss +19 -0
- package/styles/theme/forge-theme.scss +9 -0
- package/styles/time-picker/time-picker.scss +12 -0
- package/styles/toast/_mixins.scss +242 -0
- package/styles/toast/_variables.scss +52 -0
- package/styles/toast/toast.scss +18 -0
- package/styles/toolbar/_mixins.scss +79 -0
- package/styles/toolbar/_variables.scss +10 -0
- package/styles/toolbar/toolbar.scss +28 -0
- package/styles/tooltip/_mixins.scss +98 -0
- package/styles/tooltip/_variables.scss +18 -0
- package/styles/tooltip/forge-tooltip.scss +12 -0
- package/styles/typography/_index.scss +7 -0
- package/styles/typography/_mixins.scss +93 -0
- package/styles/typography/_variables.scss +100 -0
- package/styles/typography/forge-form.scss +67 -0
- package/styles/typography/forge-typography.scss +9 -0
- package/styles/utils/_functions-grid.scss +8 -0
- package/styles/utils/_mixins-animation.scss +37 -0
- package/styles/utils/_mixins-core.scss +18 -0
- package/styles/utils/_mixins-flex.scss +53 -0
- package/styles/utils/_mixins-grid.scss +29 -0
- package/styles/utils/_mixins-media.scss +38 -0
- package/styles/utils/_mixins.scss +45 -0
- package/styles/utils/_variables-flex.scss +30 -0
- package/styles/utils/_variables-grid.scss +9 -0
- package/styles/utils/_variables-media.scss +11 -0
- package/styles/utils/forge-flex.scss +30 -0
- package/styles/utils/forge-grid.scss +54 -0
- package/styles/utils/forge-utils.scss +45 -0
- package/styles/view-switcher/_mixins.scss +49 -0
- package/styles/view-switcher/_variables.scss +6 -0
- package/styles/view-switcher/view/view.scss +12 -0
- package/styles/view-switcher/view-switcher.scss +32 -0
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022 Tyler Technologies, Inc.
|
|
4
|
+
* License: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { debounce } from '@tylertech/forge-core';
|
|
7
|
+
import { EXPANSION_PANEL_CONSTANTS } from './expansion-panel-constants';
|
|
8
|
+
export class ExpansionPanelFoundation {
|
|
9
|
+
constructor(_adapter) {
|
|
10
|
+
this._adapter = _adapter;
|
|
11
|
+
this._open = false;
|
|
12
|
+
this._useAnimations = true;
|
|
13
|
+
this._orientation = EXPANSION_PANEL_CONSTANTS.strings.ORIENTATION_VERTICAL;
|
|
14
|
+
this._isInitialized = false;
|
|
15
|
+
this._clickListener = debounce((evt) => this._onClick(evt), EXPANSION_PANEL_CONSTANTS.numbers.CLICK_DEBOUNCE_THRESHOLD, true);
|
|
16
|
+
this._keydownListener = (evt) => this._onKeydown(evt);
|
|
17
|
+
this._headerSlotChangeListener = (evt) => this._onHeaderSlotChanged(evt);
|
|
18
|
+
}
|
|
19
|
+
initialize() {
|
|
20
|
+
this.connect();
|
|
21
|
+
this._adapter.initialize(this._open, this._orientation);
|
|
22
|
+
this._isInitialized = true;
|
|
23
|
+
}
|
|
24
|
+
connect() {
|
|
25
|
+
this._adapter.registerHeaderSlotListener(this._headerSlotChangeListener);
|
|
26
|
+
this._adapter.registerClickListener(this._clickListener);
|
|
27
|
+
this._adapter.registerKeydownListener(this._keydownListener);
|
|
28
|
+
}
|
|
29
|
+
disconnect() {
|
|
30
|
+
this._adapter.deregisterHeaderSlotListener(this._headerSlotChangeListener);
|
|
31
|
+
this._adapter.deregisterClickListener(this._clickListener);
|
|
32
|
+
this._adapter.deregisterKeydownListener(this._keydownListener);
|
|
33
|
+
}
|
|
34
|
+
setOpenImmediate(open) {
|
|
35
|
+
if (open) {
|
|
36
|
+
this._openPanel(false);
|
|
37
|
+
}
|
|
38
|
+
else {
|
|
39
|
+
this._closePanel(false);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
_applyOpen(value) {
|
|
43
|
+
if (!this._isInitialized) {
|
|
44
|
+
this._open = value;
|
|
45
|
+
return;
|
|
46
|
+
}
|
|
47
|
+
if (value) {
|
|
48
|
+
if (this._openCallback) {
|
|
49
|
+
Promise.resolve(this._openCallback())
|
|
50
|
+
.then(() => {
|
|
51
|
+
this._open = value;
|
|
52
|
+
this._openPanel(this._useAnimations);
|
|
53
|
+
})
|
|
54
|
+
.catch(() => { });
|
|
55
|
+
}
|
|
56
|
+
else {
|
|
57
|
+
this._open = value;
|
|
58
|
+
this._openPanel(this._useAnimations);
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
else {
|
|
62
|
+
if (this._closeCallback) {
|
|
63
|
+
Promise.resolve(this._closeCallback())
|
|
64
|
+
.then(() => {
|
|
65
|
+
this._open = value;
|
|
66
|
+
this._closePanel(this._useAnimations);
|
|
67
|
+
})
|
|
68
|
+
.catch(() => { });
|
|
69
|
+
}
|
|
70
|
+
else {
|
|
71
|
+
this._open = value;
|
|
72
|
+
this._closePanel(this._useAnimations);
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
/** Controls the open state of the panel. */
|
|
77
|
+
get open() {
|
|
78
|
+
return this._open;
|
|
79
|
+
}
|
|
80
|
+
set open(value) {
|
|
81
|
+
value = Boolean(value);
|
|
82
|
+
if (this._open !== value) {
|
|
83
|
+
this._applyOpen(value);
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
get openCallback() {
|
|
87
|
+
return this._openCallback;
|
|
88
|
+
}
|
|
89
|
+
set openCallback(callback) {
|
|
90
|
+
this._openCallback = callback;
|
|
91
|
+
}
|
|
92
|
+
get closeCallback() {
|
|
93
|
+
return this._closeCallback;
|
|
94
|
+
}
|
|
95
|
+
set closeCallback(callback) {
|
|
96
|
+
this._closeCallback = callback;
|
|
97
|
+
}
|
|
98
|
+
get orientation() {
|
|
99
|
+
return this._orientation;
|
|
100
|
+
}
|
|
101
|
+
set orientation(value) {
|
|
102
|
+
this._orientation = value;
|
|
103
|
+
}
|
|
104
|
+
get useAnimations() {
|
|
105
|
+
return this._useAnimations;
|
|
106
|
+
}
|
|
107
|
+
set useAnimations(value) {
|
|
108
|
+
if (this._useAnimations !== !!value) {
|
|
109
|
+
this._useAnimations = !!value;
|
|
110
|
+
this._adapter.setHostAttribute(EXPANSION_PANEL_CONSTANTS.attributes.USE_ANIMATIONS, `${this._useAnimations}`);
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
/**
|
|
114
|
+
* Handles click events on the header element.
|
|
115
|
+
* @param {MouseEvent} evt The click event.
|
|
116
|
+
*/
|
|
117
|
+
_onClick(evt) {
|
|
118
|
+
evt.stopPropagation();
|
|
119
|
+
this._toggle();
|
|
120
|
+
this._emitEvent();
|
|
121
|
+
}
|
|
122
|
+
/**
|
|
123
|
+
* Handles keydown events on the header.
|
|
124
|
+
* @param {KeyboardEvent} evt The keydown event
|
|
125
|
+
*/
|
|
126
|
+
_onKeydown(evt) {
|
|
127
|
+
evt.stopPropagation();
|
|
128
|
+
if (evt.key === 'Space' || evt.key === 'Enter' || evt.keyCode === 32 || evt.keyCode === 13) {
|
|
129
|
+
evt.preventDefault();
|
|
130
|
+
this._toggle();
|
|
131
|
+
this._emitEvent();
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
_emitEvent() {
|
|
135
|
+
this._adapter.emitHostEvent(EXPANSION_PANEL_CONSTANTS.events.TOGGLE, this._open);
|
|
136
|
+
}
|
|
137
|
+
_toggle() {
|
|
138
|
+
this.open = !this.open;
|
|
139
|
+
}
|
|
140
|
+
_openPanel(animate) {
|
|
141
|
+
this._adapter.setHostAttribute(EXPANSION_PANEL_CONSTANTS.attributes.OPEN, '');
|
|
142
|
+
this._adapter.setOpenState(true, this._orientation, animate);
|
|
143
|
+
}
|
|
144
|
+
_closePanel(animate) {
|
|
145
|
+
this._adapter.removeHostAttribute(EXPANSION_PANEL_CONSTANTS.attributes.OPEN);
|
|
146
|
+
this._adapter.setOpenState(false, this._orientation, animate);
|
|
147
|
+
}
|
|
148
|
+
_onHeaderSlotChanged(evt) {
|
|
149
|
+
this._adapter.setHeaderVisibility(!!evt.target.assignedNodes().length);
|
|
150
|
+
}
|
|
151
|
+
}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022 Tyler Technologies, Inc.
|
|
4
|
+
* License: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { BaseComponent, IBaseComponent } from '../core/base/base-component';
|
|
7
|
+
export interface IExpansionPanelComponent extends IBaseComponent {
|
|
8
|
+
open: boolean;
|
|
9
|
+
useAnimations: boolean;
|
|
10
|
+
openCallback: () => void | Promise<void>;
|
|
11
|
+
closeCallback: () => void | Promise<void>;
|
|
12
|
+
orientation: string;
|
|
13
|
+
toggle(): void;
|
|
14
|
+
setOpenImmediate(open: boolean): void;
|
|
15
|
+
}
|
|
16
|
+
declare global {
|
|
17
|
+
interface HTMLElementTagNameMap {
|
|
18
|
+
'forge-expansion-panel': IExpansionPanelComponent;
|
|
19
|
+
}
|
|
20
|
+
interface HTMLElementEventMap {
|
|
21
|
+
'forge-expansion-panel-toggle': CustomEvent<boolean>;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* A web component that encapsulates the functionality of expanding/collapsing content when clicked.
|
|
26
|
+
*/
|
|
27
|
+
export declare class ExpansionPanelComponent extends BaseComponent implements IExpansionPanelComponent {
|
|
28
|
+
static get observedAttributes(): string[];
|
|
29
|
+
private _foundation;
|
|
30
|
+
constructor();
|
|
31
|
+
initializedCallback(): void;
|
|
32
|
+
connectedCallback(): void;
|
|
33
|
+
attributeChangedCallback(name: string, oldValue: string, newValue: string): void;
|
|
34
|
+
disconnectedCallback(): void;
|
|
35
|
+
/** Controls the open state of the panel. */
|
|
36
|
+
open: boolean;
|
|
37
|
+
/**
|
|
38
|
+
* Sets the function to call when the panel wants to open.
|
|
39
|
+
* The function must return a promise which can be resolved to
|
|
40
|
+
* open the panel or rejected which cancels the panel open.
|
|
41
|
+
*/
|
|
42
|
+
openCallback: () => void | Promise<void>;
|
|
43
|
+
/**
|
|
44
|
+
* Sets the function to call when the panel wants to close.
|
|
45
|
+
* The function must return a promise which can be resolved to
|
|
46
|
+
* close the panel or rejected which cancels the panel close.
|
|
47
|
+
*/
|
|
48
|
+
closeCallback: () => void | Promise<void>;
|
|
49
|
+
/**
|
|
50
|
+
* Sets the orientation of the panel expansion.
|
|
51
|
+
* Valid values are 'vertical' (default) or 'horizontal'.
|
|
52
|
+
*/
|
|
53
|
+
orientation: string;
|
|
54
|
+
/** Gets/sets if animations are used in the expand/collapse transition. */
|
|
55
|
+
useAnimations: boolean;
|
|
56
|
+
/** Toggles the collapsed state. */
|
|
57
|
+
toggle(): void;
|
|
58
|
+
/** Forces the expansion panel to expand/collapse without transition animations. */
|
|
59
|
+
setOpenImmediate(open: boolean): void;
|
|
60
|
+
}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022 Tyler Technologies, Inc.
|
|
4
|
+
* License: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { __decorate } from "tslib";
|
|
7
|
+
import { attachShadowTemplate, coerceBoolean, CustomElement, FoundationProperty } from '@tylertech/forge-core';
|
|
8
|
+
import { BaseComponent } from '../core/base/base-component';
|
|
9
|
+
import { ExpansionPanelAdapter } from './expansion-panel-adapter';
|
|
10
|
+
import { EXPANSION_PANEL_CONSTANTS } from './expansion-panel-constants';
|
|
11
|
+
import { ExpansionPanelFoundation } from './expansion-panel-foundation';
|
|
12
|
+
const template = '<template><div class=\"forge-expansion-panel\" part=\"root\"><div class=\"forge-expansion-panel__header\" role=\"button\" aria-controls=\"content\" aria-expanded=\"false\" part=\"header\"><slot name=\"header\"></slot></div><div id=\"content\" role=\"group\" class=\"forge-expansion-panel__content\" style=\"height: 0; opacity: 0; visibility: hidden;\" part=\"content\"><slot></slot></div></div></template>';
|
|
13
|
+
const styles = '.forge-expansion-panel{display:block;display:var(--forge-expansion-panel-display,block);height:auto;height:var(--forge-expansion-panel-height,auto)}.forge-expansion-panel__header{outline:0}.forge-expansion-panel__header:hover{cursor:pointer}.forge-expansion-panel__header forge-open-icon{margin-left:auto}.forge-expansion-panel__content{overflow:hidden;overflow:var(--forge-expansion-panel-content-overflow,hidden);max-height:none;max-height:var(--forge-expansion-panel-content-max-height,none)}.forge-expansion-panel__content::-webkit-scrollbar{width:16px;width:var(--forge-scrollbar-width,16px);height:16px;height:var(--forge-scrollbar-height,16px)}.forge-expansion-panel__content::-webkit-scrollbar-corner{background-color:#f0f0f0;background-color:var(--forge-theme-scrollbar-track,#f0f0f0)}.forge-expansion-panel__content::-webkit-scrollbar-track{background-color:#f0f0f0;background-color:var(--forge-theme-scrollbar-track,#f0f0f0)}.forge-expansion-panel__content::-webkit-scrollbar-track:hover{background-color:#ececec;background-color:var(--forge-theme-scrollbar-track-hover,#ececec)}.forge-expansion-panel__content::-webkit-scrollbar-thumb{background-color:#bdbdbd;background-color:var(--forge-theme-scrollbar-thumb,#bdbdbd);height:32px;height:var(--forge-scrollbar-min-height,32px);width:32px;width:var(--forge-scrollbar-min-width,32px);border-radius:10px;border-radius:var(--forge-scrollbar-border-radius,10px);border-width:3px;border-width:var(--forge-scrollbar-border-width,3px);border-style:solid;border-color:transparent;background-clip:content-box}.forge-expansion-panel__content::-webkit-scrollbar-thumb:hover{background-color:#9e9e9e;background-color:var(--forge-theme-scrollbar-thumb-hover,#9e9e9e)}:host{display:block}:host([hidden]){display:none}';
|
|
14
|
+
/**
|
|
15
|
+
* A web component that encapsulates the functionality of expanding/collapsing content when clicked.
|
|
16
|
+
*/
|
|
17
|
+
let ExpansionPanelComponent = class ExpansionPanelComponent extends BaseComponent {
|
|
18
|
+
constructor() {
|
|
19
|
+
super();
|
|
20
|
+
attachShadowTemplate(this, template, styles);
|
|
21
|
+
this._foundation = new ExpansionPanelFoundation(new ExpansionPanelAdapter(this));
|
|
22
|
+
}
|
|
23
|
+
static get observedAttributes() {
|
|
24
|
+
return [
|
|
25
|
+
EXPANSION_PANEL_CONSTANTS.attributes.OPEN,
|
|
26
|
+
EXPANSION_PANEL_CONSTANTS.attributes.ORIENTATION,
|
|
27
|
+
EXPANSION_PANEL_CONSTANTS.attributes.USE_ANIMATIONS
|
|
28
|
+
];
|
|
29
|
+
}
|
|
30
|
+
initializedCallback() {
|
|
31
|
+
this._foundation.initialize();
|
|
32
|
+
}
|
|
33
|
+
connectedCallback() {
|
|
34
|
+
this._foundation.connect();
|
|
35
|
+
}
|
|
36
|
+
attributeChangedCallback(name, oldValue, newValue) {
|
|
37
|
+
switch (name) {
|
|
38
|
+
case EXPANSION_PANEL_CONSTANTS.attributes.OPEN:
|
|
39
|
+
this.open = coerceBoolean(newValue);
|
|
40
|
+
break;
|
|
41
|
+
case EXPANSION_PANEL_CONSTANTS.attributes.ORIENTATION:
|
|
42
|
+
this.orientation = newValue;
|
|
43
|
+
break;
|
|
44
|
+
case EXPANSION_PANEL_CONSTANTS.attributes.USE_ANIMATIONS:
|
|
45
|
+
this.useAnimations = coerceBoolean(newValue);
|
|
46
|
+
break;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
disconnectedCallback() {
|
|
50
|
+
this._foundation.disconnect();
|
|
51
|
+
}
|
|
52
|
+
/** Toggles the collapsed state. */
|
|
53
|
+
toggle() {
|
|
54
|
+
this.open = !this.open;
|
|
55
|
+
}
|
|
56
|
+
/** Forces the expansion panel to expand/collapse without transition animations. */
|
|
57
|
+
setOpenImmediate(open) {
|
|
58
|
+
this._foundation.setOpenImmediate(open);
|
|
59
|
+
}
|
|
60
|
+
};
|
|
61
|
+
__decorate([
|
|
62
|
+
FoundationProperty()
|
|
63
|
+
], ExpansionPanelComponent.prototype, "open", void 0);
|
|
64
|
+
__decorate([
|
|
65
|
+
FoundationProperty()
|
|
66
|
+
], ExpansionPanelComponent.prototype, "openCallback", void 0);
|
|
67
|
+
__decorate([
|
|
68
|
+
FoundationProperty()
|
|
69
|
+
], ExpansionPanelComponent.prototype, "closeCallback", void 0);
|
|
70
|
+
__decorate([
|
|
71
|
+
FoundationProperty()
|
|
72
|
+
], ExpansionPanelComponent.prototype, "orientation", void 0);
|
|
73
|
+
__decorate([
|
|
74
|
+
FoundationProperty()
|
|
75
|
+
], ExpansionPanelComponent.prototype, "useAnimations", void 0);
|
|
76
|
+
ExpansionPanelComponent = __decorate([
|
|
77
|
+
CustomElement({
|
|
78
|
+
name: EXPANSION_PANEL_CONSTANTS.elementName
|
|
79
|
+
})
|
|
80
|
+
], ExpansionPanelComponent);
|
|
81
|
+
export { ExpansionPanelComponent };
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022 Tyler Technologies, Inc.
|
|
4
|
+
* License: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
export * from './expansion-panel-adapter';
|
|
7
|
+
export * from './expansion-panel-constants';
|
|
8
|
+
export * from './expansion-panel-foundation';
|
|
9
|
+
export * from './expansion-panel';
|
|
10
|
+
export declare function defineExpansionPanelComponent(): void;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022 Tyler Technologies, Inc.
|
|
4
|
+
* License: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { defineCustomElement } from '@tylertech/forge-core';
|
|
7
|
+
import { ExpansionPanelComponent } from './expansion-panel';
|
|
8
|
+
export * from './expansion-panel-adapter';
|
|
9
|
+
export * from './expansion-panel-constants';
|
|
10
|
+
export * from './expansion-panel-foundation';
|
|
11
|
+
export * from './expansion-panel';
|
|
12
|
+
export function defineExpansionPanelComponent() {
|
|
13
|
+
defineCustomElement(ExpansionPanelComponent);
|
|
14
|
+
}
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022 Tyler Technologies, Inc.
|
|
4
|
+
* License: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { IFontInfo } from '@tylertech/forge-core';
|
|
7
|
+
import { BaseAdapter, IBaseAdapter } from '../core/base/base-adapter';
|
|
8
|
+
import { IFloatingLabel } from '../floating-label/floating-label';
|
|
9
|
+
import { IFieldComponent } from './field';
|
|
10
|
+
export interface IFieldAdapter extends IBaseAdapter {
|
|
11
|
+
setRootClass(classes: string | string[]): void;
|
|
12
|
+
removeRootClass(classes: string | string[]): void;
|
|
13
|
+
addInputListener(type: string, listener: (evt: Event) => void): void;
|
|
14
|
+
removeInputListener(type: string, listener: (evt: Event) => void): void;
|
|
15
|
+
setInputClass(className: string): void;
|
|
16
|
+
removeInputClass(className: string): void;
|
|
17
|
+
addLabelSlotListener(listener: (evt: Event) => void): void;
|
|
18
|
+
removeLabelSlotListener(listener: (evt: Event) => void): void;
|
|
19
|
+
setLabelClass(name: string): void;
|
|
20
|
+
removeLabelClass(name: string): void;
|
|
21
|
+
addLeadingSlotListener(listener: (evt: Event) => void): void;
|
|
22
|
+
removeLeadingSlotListener(listener: (evt: Event) => void): void;
|
|
23
|
+
addTrailingSlotListener(listener: (evt: Event) => void): void;
|
|
24
|
+
removeTrailingSlotListener(listener: (evt: Event) => void): void;
|
|
25
|
+
addAddonEndSlotListener(listener: (evt: Event) => void): void;
|
|
26
|
+
removeAddonEndSlotListener(listener: (evt: Event) => void): void;
|
|
27
|
+
hasAddonEndNodes(): boolean;
|
|
28
|
+
hasLabel(): boolean;
|
|
29
|
+
hasLeadingNodes(): boolean;
|
|
30
|
+
hasPlaceholder(): boolean;
|
|
31
|
+
hasTrailingNodes(): boolean;
|
|
32
|
+
inputHasFocus(): boolean;
|
|
33
|
+
inputHasValue(): boolean;
|
|
34
|
+
fieldHasValue(): boolean;
|
|
35
|
+
isDisabled(): boolean;
|
|
36
|
+
isReadonly(): boolean;
|
|
37
|
+
getLabelFontMetrics(): IFontInfo;
|
|
38
|
+
getLabelWidth(fontSize: number, fontFamily: string): number;
|
|
39
|
+
initialize(required: boolean, rootSelector: string): void;
|
|
40
|
+
initializeFloatingLabel(): IFloatingLabel;
|
|
41
|
+
ensureLabelOrder(): void;
|
|
42
|
+
ensureSlottedLabel(): void;
|
|
43
|
+
destroy(): void;
|
|
44
|
+
setValueChangedListener(context: any, listener: (value: any) => void): void;
|
|
45
|
+
destroyValueChangeListener(): void;
|
|
46
|
+
detectLabel(required: boolean): void;
|
|
47
|
+
setRoomy(isRoomy: boolean): void;
|
|
48
|
+
setDense(isDense: boolean): void;
|
|
49
|
+
setInputAttributeObserver(listener: (name: string, value: string | null) => void): void;
|
|
50
|
+
}
|
|
51
|
+
export declare class FieldAdapter extends BaseAdapter<IFieldComponent> implements IFieldAdapter {
|
|
52
|
+
protected _rootElement: HTMLElement;
|
|
53
|
+
protected _labelSlot: HTMLSlotElement;
|
|
54
|
+
protected _leadingSlot: HTMLSlotElement;
|
|
55
|
+
protected _trailingSlot: HTMLSlotElement;
|
|
56
|
+
protected _addonEndSlot: HTMLSlotElement;
|
|
57
|
+
protected _labelElement: HTMLLabelElement;
|
|
58
|
+
protected _inputElement: HTMLInputElement;
|
|
59
|
+
protected _inputMutationObserver: MutationObserver;
|
|
60
|
+
protected _valueChangeListeners: Array<() => void>;
|
|
61
|
+
constructor(component: IFieldComponent);
|
|
62
|
+
initialize(required: boolean, rootSelector: string): void;
|
|
63
|
+
destroy(): void;
|
|
64
|
+
hasLabel(): boolean;
|
|
65
|
+
ensureSlottedLabel(): void;
|
|
66
|
+
ensureLabelOrder(): void;
|
|
67
|
+
addLabelSlotListener(listener: (evt: Event) => void): void;
|
|
68
|
+
removeLabelSlotListener(listener: (evt: Event) => void): void;
|
|
69
|
+
addLeadingSlotListener(listener: (evt: Event) => void): void;
|
|
70
|
+
removeLeadingSlotListener(listener: (evt: Event) => void): void;
|
|
71
|
+
addTrailingSlotListener(listener: (evt: Event) => void): void;
|
|
72
|
+
removeTrailingSlotListener(listener: (evt: Event) => void): void;
|
|
73
|
+
addAddonEndSlotListener(listener: (evt: Event) => void): void;
|
|
74
|
+
removeAddonEndSlotListener(listener: (evt: Event) => void): void;
|
|
75
|
+
addInputListener(type: string, listener: (evt: Event) => void): void;
|
|
76
|
+
removeInputListener(type: string, listener: (evt: Event) => void): void;
|
|
77
|
+
setValueChangedListener(context: any, listener: (value: any) => void): void;
|
|
78
|
+
destroyValueChangeListener(): void;
|
|
79
|
+
detectLabel(required: boolean): void;
|
|
80
|
+
initializeFloatingLabel(): IFloatingLabel;
|
|
81
|
+
inputHasValue(): boolean;
|
|
82
|
+
fieldHasValue(): boolean;
|
|
83
|
+
hasPlaceholder(): boolean;
|
|
84
|
+
inputHasFocus(): boolean;
|
|
85
|
+
setLabelClass(name: string): void;
|
|
86
|
+
removeLabelClass(name: string): void;
|
|
87
|
+
setRoomy(isRoomy: boolean): void;
|
|
88
|
+
setDense(isDense: boolean): void;
|
|
89
|
+
hasLeadingNodes(): boolean;
|
|
90
|
+
hasTrailingNodes(): boolean;
|
|
91
|
+
hasAddonEndNodes(): boolean;
|
|
92
|
+
setInputClass(className: string): void;
|
|
93
|
+
removeInputClass(className: string): void;
|
|
94
|
+
setRootClass(classes: string | string[]): void;
|
|
95
|
+
removeRootClass(classes: string | string[]): void;
|
|
96
|
+
setInputAttributeObserver(listener: (name: string, value: string | null) => void): void;
|
|
97
|
+
isDisabled(): boolean;
|
|
98
|
+
isReadonly(): boolean;
|
|
99
|
+
getLabelWidth(fontSize: number, fontFamily: string): number;
|
|
100
|
+
getLabelFontMetrics(): IFontInfo;
|
|
101
|
+
}
|
|
@@ -0,0 +1,184 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022 Tyler Technologies, Inc.
|
|
4
|
+
* License: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { addClass, calculateFontWidth, getShadowElement, listenOwnProperty, Platform, removeClass, getActiveElement, createElementAttributeObserver, toggleClass } from '@tylertech/forge-core';
|
|
7
|
+
import { BaseAdapter } from '../core/base/base-adapter';
|
|
8
|
+
import { FloatingLabel } from '../floating-label/floating-label';
|
|
9
|
+
import { FIELD_CONSTANTS } from './field-constants';
|
|
10
|
+
export class FieldAdapter extends BaseAdapter {
|
|
11
|
+
constructor(component) {
|
|
12
|
+
super(component);
|
|
13
|
+
this._valueChangeListeners = [];
|
|
14
|
+
}
|
|
15
|
+
initialize(required, rootSelector) {
|
|
16
|
+
this._rootElement = getShadowElement(this._component, rootSelector);
|
|
17
|
+
this._labelSlot = getShadowElement(this._component, 'slot[name=label]');
|
|
18
|
+
this._leadingSlot = getShadowElement(this._component, 'slot[name=leading]');
|
|
19
|
+
this._trailingSlot = getShadowElement(this._component, 'slot[name=trailing]');
|
|
20
|
+
this._addonEndSlot = getShadowElement(this._component, 'slot[name=addon-end]');
|
|
21
|
+
this._inputElement = this._component.querySelector('input:not([type=checkbox]):not([type=radio])');
|
|
22
|
+
this.detectLabel(required);
|
|
23
|
+
}
|
|
24
|
+
destroy() {
|
|
25
|
+
if (this._inputMutationObserver) {
|
|
26
|
+
this._inputMutationObserver.disconnect();
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
hasLabel() {
|
|
30
|
+
return !!this._labelElement;
|
|
31
|
+
}
|
|
32
|
+
ensureSlottedLabel() {
|
|
33
|
+
this._labelElement.slot = 'label';
|
|
34
|
+
}
|
|
35
|
+
ensureLabelOrder() {
|
|
36
|
+
if (this._labelElement) {
|
|
37
|
+
const children = Array.from(this._component.children);
|
|
38
|
+
if (children.length > 1 && children.indexOf(this._labelElement) < children.indexOf(this._inputElement)) {
|
|
39
|
+
this._component.appendChild(this._labelElement);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
addLabelSlotListener(listener) {
|
|
44
|
+
this._labelSlot.addEventListener('slotchange', listener);
|
|
45
|
+
}
|
|
46
|
+
removeLabelSlotListener(listener) {
|
|
47
|
+
if (this._labelSlot) {
|
|
48
|
+
this._labelSlot.removeEventListener('slotchange', listener);
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
addLeadingSlotListener(listener) {
|
|
52
|
+
this._leadingSlot.addEventListener('slotchange', listener);
|
|
53
|
+
}
|
|
54
|
+
removeLeadingSlotListener(listener) {
|
|
55
|
+
if (this._leadingSlot) {
|
|
56
|
+
this._leadingSlot.removeEventListener('slotchange', listener);
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
addTrailingSlotListener(listener) {
|
|
60
|
+
this._trailingSlot.addEventListener('slotchange', listener);
|
|
61
|
+
}
|
|
62
|
+
removeTrailingSlotListener(listener) {
|
|
63
|
+
if (this._trailingSlot) {
|
|
64
|
+
this._trailingSlot.removeEventListener('slotchange', listener);
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
addAddonEndSlotListener(listener) {
|
|
68
|
+
this._addonEndSlot.addEventListener('slotchange', listener);
|
|
69
|
+
}
|
|
70
|
+
removeAddonEndSlotListener(listener) {
|
|
71
|
+
if (this._addonEndSlot) {
|
|
72
|
+
this._addonEndSlot.removeEventListener('slotchange', listener);
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
addInputListener(type, listener) {
|
|
76
|
+
this._inputElement.addEventListener(type, listener);
|
|
77
|
+
}
|
|
78
|
+
removeInputListener(type, listener) {
|
|
79
|
+
if (this._inputElement) {
|
|
80
|
+
this._inputElement.removeEventListener(type, listener);
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
setValueChangedListener(context, listener) {
|
|
84
|
+
this.destroyValueChangeListener();
|
|
85
|
+
const destroyListener = listenOwnProperty(context, this._inputElement, 'value', listener);
|
|
86
|
+
this._valueChangeListeners.push(destroyListener);
|
|
87
|
+
}
|
|
88
|
+
destroyValueChangeListener() {
|
|
89
|
+
this._valueChangeListeners.forEach(cb => cb());
|
|
90
|
+
}
|
|
91
|
+
detectLabel(required) {
|
|
92
|
+
this._labelElement = this._component.querySelector('label');
|
|
93
|
+
// Due to a Safari bug with ::slotted::after selectors, we need to manually append the required 'asterisk' to the label text
|
|
94
|
+
// https://bugs.webkit.org/show_bug.cgi?id=178237
|
|
95
|
+
if (required && Platform.WEBKIT && this._labelElement && !this._labelElement.innerText.endsWith('*')) {
|
|
96
|
+
const asterisk = document.createElement('span');
|
|
97
|
+
asterisk.style.color = 'var(--mdc-theme-error)';
|
|
98
|
+
asterisk.style.marginLeft = '1px';
|
|
99
|
+
asterisk.textContent = '*';
|
|
100
|
+
this._labelElement.appendChild(asterisk);
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
initializeFloatingLabel() {
|
|
104
|
+
return new FloatingLabel(this._labelElement);
|
|
105
|
+
}
|
|
106
|
+
inputHasValue() {
|
|
107
|
+
return this._inputElement.value ? this._inputElement.value.trim().length > 0 : false;
|
|
108
|
+
}
|
|
109
|
+
// An overrideable method for more generic field values where input.value is not the value.
|
|
110
|
+
fieldHasValue() {
|
|
111
|
+
return this.inputHasValue();
|
|
112
|
+
}
|
|
113
|
+
hasPlaceholder() {
|
|
114
|
+
return this._inputElement.placeholder ? this._inputElement.placeholder.trim().length > 0 : false;
|
|
115
|
+
}
|
|
116
|
+
inputHasFocus() {
|
|
117
|
+
return this._inputElement === getActiveElement();
|
|
118
|
+
}
|
|
119
|
+
setLabelClass(name) {
|
|
120
|
+
if (this._labelElement) {
|
|
121
|
+
this._labelElement.classList.add(name);
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
removeLabelClass(name) {
|
|
125
|
+
if (this._labelElement) {
|
|
126
|
+
this._labelElement.classList.remove(name);
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
setRoomy(isRoomy) {
|
|
130
|
+
toggleClass(this._rootElement, isRoomy, FIELD_CONSTANTS.classes.ROOMY);
|
|
131
|
+
}
|
|
132
|
+
setDense(isDense) {
|
|
133
|
+
toggleClass(this._rootElement, isDense, FIELD_CONSTANTS.classes.DENSE);
|
|
134
|
+
}
|
|
135
|
+
hasLeadingNodes() {
|
|
136
|
+
if (!this._leadingSlot) {
|
|
137
|
+
return false;
|
|
138
|
+
}
|
|
139
|
+
return this._leadingSlot.assignedNodes().length > 0;
|
|
140
|
+
}
|
|
141
|
+
hasTrailingNodes() {
|
|
142
|
+
if (!this._trailingSlot) {
|
|
143
|
+
return false;
|
|
144
|
+
}
|
|
145
|
+
return this._trailingSlot.assignedNodes().length > 0;
|
|
146
|
+
}
|
|
147
|
+
hasAddonEndNodes() {
|
|
148
|
+
if (!this._addonEndSlot) {
|
|
149
|
+
return false;
|
|
150
|
+
}
|
|
151
|
+
return this._addonEndSlot.assignedNodes().length > 0;
|
|
152
|
+
}
|
|
153
|
+
setInputClass(className) {
|
|
154
|
+
this._inputElement.classList.add(className);
|
|
155
|
+
}
|
|
156
|
+
removeInputClass(className) {
|
|
157
|
+
this._inputElement.classList.remove(className);
|
|
158
|
+
}
|
|
159
|
+
setRootClass(classes) {
|
|
160
|
+
addClass(classes, this._rootElement);
|
|
161
|
+
}
|
|
162
|
+
removeRootClass(classes) {
|
|
163
|
+
removeClass(classes, this._rootElement);
|
|
164
|
+
}
|
|
165
|
+
setInputAttributeObserver(listener) {
|
|
166
|
+
this._inputMutationObserver = createElementAttributeObserver(this._inputElement, listener, FIELD_CONSTANTS.observedInputAttributes);
|
|
167
|
+
}
|
|
168
|
+
isDisabled() {
|
|
169
|
+
return this._inputElement.hasAttribute('disabled');
|
|
170
|
+
}
|
|
171
|
+
isReadonly() {
|
|
172
|
+
return this._inputElement.hasAttribute('readonly');
|
|
173
|
+
}
|
|
174
|
+
getLabelWidth(fontSize, fontFamily) {
|
|
175
|
+
return calculateFontWidth(this._labelElement.innerText, { fontSize, fontFamily });
|
|
176
|
+
}
|
|
177
|
+
getLabelFontMetrics() {
|
|
178
|
+
const style = getComputedStyle(this._labelElement);
|
|
179
|
+
return {
|
|
180
|
+
fontSize: parseInt(style.fontSize || '16', 10),
|
|
181
|
+
fontFamily: style.fontFamily || 'Roboto'
|
|
182
|
+
};
|
|
183
|
+
}
|
|
184
|
+
}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022 Tyler Technologies, Inc.
|
|
4
|
+
* License: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
export declare const FIELD_CONSTANTS: {
|
|
7
|
+
attributes: {
|
|
8
|
+
DENSITY: string;
|
|
9
|
+
FLOAT_LABEL_TYPE: string;
|
|
10
|
+
SHAPE: string;
|
|
11
|
+
INVALID: string;
|
|
12
|
+
REQUIRED: string;
|
|
13
|
+
HOST_LABEL_FLOATING: string;
|
|
14
|
+
};
|
|
15
|
+
observedInputAttributes: string[];
|
|
16
|
+
classes: {
|
|
17
|
+
DISABLED: string;
|
|
18
|
+
READONLY: string;
|
|
19
|
+
INPUT_FOCUSED: string;
|
|
20
|
+
LEADING: string;
|
|
21
|
+
TRAILING: string;
|
|
22
|
+
ADDON_END: string;
|
|
23
|
+
ADDON_END_CONTAINER: string;
|
|
24
|
+
FOCUSED: string;
|
|
25
|
+
LABEL_FOCUSED: string;
|
|
26
|
+
SHAPE_ROUNDED: string;
|
|
27
|
+
INVALID: string;
|
|
28
|
+
REQUIRED: string;
|
|
29
|
+
DENSE: string;
|
|
30
|
+
ROOMY: string;
|
|
31
|
+
LABEL: string;
|
|
32
|
+
};
|
|
33
|
+
};
|
|
34
|
+
export declare type FieldDensityType = 'roomy' | 'default' | 'dense';
|
|
35
|
+
export declare type FieldFloatLabelType = 'always' | 'auto';
|
|
36
|
+
export declare type FieldShapeType = 'default' | 'rounded';
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022 Tyler Technologies, Inc.
|
|
4
|
+
* License: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
const attributes = {
|
|
7
|
+
DENSITY: 'density',
|
|
8
|
+
FLOAT_LABEL_TYPE: 'float-label-type',
|
|
9
|
+
SHAPE: 'shape',
|
|
10
|
+
INVALID: 'invalid',
|
|
11
|
+
REQUIRED: 'required',
|
|
12
|
+
HOST_LABEL_FLOATING: `forge-label-floating`
|
|
13
|
+
};
|
|
14
|
+
const observedInputAttributes = ['disabled', 'readonly', 'value', 'placeholder'];
|
|
15
|
+
const classes = {
|
|
16
|
+
DISABLED: 'forge-field--disabled',
|
|
17
|
+
READONLY: 'forge-field--readonly',
|
|
18
|
+
INPUT_FOCUSED: 'forge-field__input--focused',
|
|
19
|
+
LEADING: 'forge-field--leading',
|
|
20
|
+
TRAILING: 'forge-field--trailing',
|
|
21
|
+
ADDON_END: 'forge-field--addon-end',
|
|
22
|
+
ADDON_END_CONTAINER: 'forge-field__addon-end-container',
|
|
23
|
+
FOCUSED: 'forge-field--focused',
|
|
24
|
+
LABEL_FOCUSED: 'forge-field__label--focused',
|
|
25
|
+
SHAPE_ROUNDED: 'forge-field--shape-rounded',
|
|
26
|
+
INVALID: 'forge-field--invalid',
|
|
27
|
+
REQUIRED: 'forge-field--required',
|
|
28
|
+
DENSE: 'forge-field--dense',
|
|
29
|
+
ROOMY: 'forge-field--roomy',
|
|
30
|
+
LABEL: 'forge-field--label'
|
|
31
|
+
};
|
|
32
|
+
export const FIELD_CONSTANTS = {
|
|
33
|
+
attributes,
|
|
34
|
+
observedInputAttributes,
|
|
35
|
+
classes
|
|
36
|
+
};
|