@aurelia-mdc-web/all 9.2.2-au2 → 9.3.0-au2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/banner/mdc-banner.html +21 -0
- package/dist/banner/mdc-banner.js +151 -0
- package/dist/banner/mdc-banner.js.map +1 -0
- package/dist/base/attributes/mdc-focus-trap.js +68 -0
- package/dist/base/attributes/mdc-focus-trap.js.map +1 -0
- package/dist/base/elements/i-validated-element.js +2 -0
- package/dist/base/elements/i-validated-element.js.map +1 -0
- package/dist/base/elements/mdc-promisify-reference.js +45 -0
- package/dist/base/elements/mdc-promisify-reference.js.map +1 -0
- package/dist/base/index.js +20 -0
- package/dist/base/index.js.map +1 -0
- package/dist/base/interceptors.js +22 -0
- package/dist/base/interceptors.js.map +1 -0
- package/dist/base/material-palette.js +23 -0
- package/dist/base/material-palette.js.map +1 -0
- package/dist/base/mdc-component.js +57 -0
- package/dist/base/mdc-component.js.map +1 -0
- package/dist/base/next-element.js +35 -0
- package/dist/base/next-element.js.map +1 -0
- package/dist/button/enhance-mdc-button.js +24 -0
- package/dist/button/enhance-mdc-button.js.map +1 -0
- package/dist/button/mdc-button-label.js +32 -0
- package/dist/button/mdc-button-label.js.map +1 -0
- package/dist/button/mdc-button.html +12 -0
- package/dist/button/mdc-button.js +99 -0
- package/dist/button/mdc-button.js.map +1 -0
- package/dist/card/mdc-card-action-buttons.js +36 -0
- package/dist/card/mdc-card-action-buttons.js.map +1 -0
- package/dist/card/mdc-card-action-icons.js +36 -0
- package/dist/card/mdc-card-action-icons.js.map +1 -0
- package/dist/card/mdc-card-actions/mdc-card-actions.html +3 -0
- package/dist/card/mdc-card-actions/mdc-card-actions.js +38 -0
- package/dist/card/mdc-card-actions/mdc-card-actions.js.map +1 -0
- package/dist/card/mdc-card-media/mdc-card-media.html +5 -0
- package/dist/card/mdc-card-media/mdc-card-media.js +47 -0
- package/dist/card/mdc-card-media/mdc-card-media.js.map +1 -0
- package/dist/card/mdc-card-primary-action.html +5 -0
- package/dist/card/mdc-card-primary-action.js +38 -0
- package/dist/card/mdc-card-primary-action.js.map +1 -0
- package/dist/card/mdc-card.html +3 -0
- package/dist/card/mdc-card.js +38 -0
- package/dist/card/mdc-card.js.map +1 -0
- package/dist/checkbox/mdc-checkbox.html +12 -0
- package/dist/checkbox/mdc-checkbox.js +219 -0
- package/dist/checkbox/mdc-checkbox.js.map +1 -0
- package/dist/chips/mdc-chip/mdc-chip.html +24 -0
- package/dist/chips/mdc-chip/mdc-chip.js +274 -0
- package/dist/chips/mdc-chip/mdc-chip.js.map +1 -0
- package/dist/chips/mdc-chip-action/enhance-mdc-chip-action.js +24 -0
- package/dist/chips/mdc-chip-action/enhance-mdc-chip-action.js.map +1 -0
- package/dist/chips/mdc-chip-action/mdc-chip-action.html +25 -0
- package/dist/chips/mdc-chip-action/mdc-chip-action.js +149 -0
- package/dist/chips/mdc-chip-action/mdc-chip-action.js.map +1 -0
- package/dist/chips/mdc-chip-set/mdc-chip-set.html +10 -0
- package/dist/chips/mdc-chip-set/mdc-chip-set.js +139 -0
- package/dist/chips/mdc-chip-set/mdc-chip-set.js.map +1 -0
- package/dist/circular-progress/mdc-circular-progress.html +38 -0
- package/dist/circular-progress/mdc-circular-progress.js +107 -0
- package/dist/circular-progress/mdc-circular-progress.js.map +1 -0
- package/dist/data-table/mdc-data-table-row.js +41 -0
- package/dist/data-table/mdc-data-table-row.js.map +1 -0
- package/dist/data-table/mdc-data-table.html +49 -0
- package/dist/data-table/mdc-data-table.js +427 -0
- package/dist/data-table/mdc-data-table.js.map +1 -0
- package/dist/dialog/mdc-dialog-actions.js +44 -0
- package/dist/dialog/mdc-dialog-actions.js.map +1 -0
- package/dist/dialog/mdc-dialog-content.js +29 -0
- package/dist/dialog/mdc-dialog-content.js.map +1 -0
- package/dist/dialog/mdc-dialog-service.js +62 -0
- package/dist/dialog/mdc-dialog-service.js.map +1 -0
- package/dist/dialog/mdc-dialog-title.js +25 -0
- package/dist/dialog/mdc-dialog-title.js.map +1 -0
- package/dist/dialog/mdc-dialog.html +14 -0
- package/dist/dialog/mdc-dialog.js +225 -0
- package/dist/dialog/mdc-dialog.js.map +1 -0
- package/dist/drawer/mdc-drawer-app-content.js +28 -0
- package/dist/drawer/mdc-drawer-app-content.js.map +1 -0
- package/dist/drawer/mdc-drawer-content.js +28 -0
- package/dist/drawer/mdc-drawer-content.js.map +1 -0
- package/dist/drawer/mdc-drawer-header/mdc-drawer-header.html +5 -0
- package/dist/drawer/mdc-drawer-header/mdc-drawer-header.js +43 -0
- package/dist/drawer/mdc-drawer-header/mdc-drawer-header.js.map +1 -0
- package/dist/drawer/mdc-drawer.html +6 -0
- package/dist/drawer/mdc-drawer.js +131 -0
- package/dist/drawer/mdc-drawer.js.map +1 -0
- package/dist/elevation/mdc-elevation.js +40 -0
- package/dist/elevation/mdc-elevation.js.map +1 -0
- package/dist/expandable/mdc-expandable.html +28 -0
- package/dist/expandable/mdc-expandable.js +109 -0
- package/dist/expandable/mdc-expandable.js.map +1 -0
- package/dist/fab/enhance-mdc-fab.js +24 -0
- package/dist/fab/enhance-mdc-fab.js.map +1 -0
- package/dist/fab/mdc-fab-icon.js +32 -0
- package/dist/fab/mdc-fab-icon.js.map +1 -0
- package/dist/fab/mdc-fab.html +13 -0
- package/dist/fab/mdc-fab.js +90 -0
- package/dist/fab/mdc-fab.js.map +1 -0
- package/dist/floating-label/mdc-floating-label.html +1 -0
- package/dist/floating-label/mdc-floating-label.js +56 -0
- package/dist/floating-label/mdc-floating-label.js.map +1 -0
- package/dist/form-field/mdc-form-field.html +6 -0
- package/dist/form-field/mdc-form-field.js +82 -0
- package/dist/form-field/mdc-form-field.js.map +1 -0
- package/dist/icon/mdc-icon.html +3 -0
- package/dist/icon/mdc-icon.js +29 -0
- package/dist/icon/mdc-icon.js.map +1 -0
- package/dist/icon-button/enhance-mdc-icon-button.js +24 -0
- package/dist/icon-button/enhance-mdc-icon-button.js.map +1 -0
- package/dist/icon-button/mdc-icon-button-icon/mdc-icon-button-icon.html +4 -0
- package/dist/icon-button/mdc-icon-button-icon/mdc-icon-button-icon.js +44 -0
- package/dist/icon-button/mdc-icon-button-icon/mdc-icon-button-icon.js.map +1 -0
- package/dist/icon-button/mdc-icon-button.html +11 -0
- package/dist/icon-button/mdc-icon-button.js +99 -0
- package/dist/icon-button/mdc-icon-button.js.map +1 -0
- package/dist/image-list/mdc-image-list-item/mdc-image-list-item.html +9 -0
- package/dist/image-list/mdc-image-list-item/mdc-image-list-item.js +58 -0
- package/dist/image-list/mdc-image-list-item/mdc-image-list-item.js.map +1 -0
- package/dist/image-list/mdc-image-list.html +7 -0
- package/dist/image-list/mdc-image-list.js +91 -0
- package/dist/image-list/mdc-image-list.js.map +1 -0
- package/dist/index.js +162 -44
- package/dist/index.js.map +1 -1
- package/dist/layout-grid/mdc-layout-grid-cell/mdc-layout-grid-cell.html +12 -0
- package/dist/layout-grid/mdc-layout-grid-cell/mdc-layout-grid-cell.js +92 -0
- package/dist/layout-grid/mdc-layout-grid-cell/mdc-layout-grid-cell.js.map +1 -0
- package/dist/layout-grid/mdc-layout-grid-inner.js +25 -0
- package/dist/layout-grid/mdc-layout-grid-inner.js.map +1 -0
- package/dist/layout-grid/mdc-layout-grid.html +8 -0
- package/dist/layout-grid/mdc-layout-grid.js +106 -0
- package/dist/layout-grid/mdc-layout-grid.js.map +1 -0
- package/dist/line-ripple/mdc-line-ripple.js +54 -0
- package/dist/line-ripple/mdc-line-ripple.js.map +1 -0
- package/dist/linear-progress/mdc-linear-progress.html +12 -0
- package/dist/linear-progress/mdc-linear-progress.js +128 -0
- package/dist/linear-progress/mdc-linear-progress.js.map +1 -0
- package/dist/list/mdc-deprecated-list/mdc-deprecated-list-divider/mdc-deprecated-list-divider.html +4 -0
- package/dist/list/mdc-deprecated-list/mdc-deprecated-list-divider/mdc-deprecated-list-divider.js +44 -0
- package/dist/list/mdc-deprecated-list/mdc-deprecated-list-divider/mdc-deprecated-list-divider.js.map +1 -0
- package/dist/list/mdc-deprecated-list/mdc-deprecated-list-group.js +65 -0
- package/dist/list/mdc-deprecated-list/mdc-deprecated-list-group.js.map +1 -0
- package/dist/list/mdc-deprecated-list/mdc-deprecated-list-item/enhance-mdc-deprecated-list-item.js +24 -0
- package/dist/list/mdc-deprecated-list/mdc-deprecated-list-item/enhance-mdc-deprecated-list-item.js.map +1 -0
- package/dist/list/mdc-deprecated-list/mdc-deprecated-list-item/mdc-deprecated-list-item-graphic.js +32 -0
- package/dist/list/mdc-deprecated-list/mdc-deprecated-list-item/mdc-deprecated-list-item-graphic.js.map +1 -0
- package/dist/list/mdc-deprecated-list/mdc-deprecated-list-item/mdc-deprecated-list-item-meta.js +32 -0
- package/dist/list/mdc-deprecated-list/mdc-deprecated-list-item/mdc-deprecated-list-item-meta.js.map +1 -0
- package/dist/list/mdc-deprecated-list/mdc-deprecated-list-item/mdc-deprecated-list-item.html +8 -0
- package/dist/list/mdc-deprecated-list/mdc-deprecated-list-item/mdc-deprecated-list-item.js +109 -0
- package/dist/list/mdc-deprecated-list/mdc-deprecated-list-item/mdc-deprecated-list-item.js.map +1 -0
- package/dist/list/mdc-deprecated-list/mdc-deprecated-list-item-primary-text.js +28 -0
- package/dist/list/mdc-deprecated-list/mdc-deprecated-list-item-primary-text.js.map +1 -0
- package/dist/list/mdc-deprecated-list/mdc-deprecated-list-item-secondary-text.js +28 -0
- package/dist/list/mdc-deprecated-list/mdc-deprecated-list-item-secondary-text.js.map +1 -0
- package/dist/list/mdc-deprecated-list/mdc-deprecated-list.html +15 -0
- package/dist/list/mdc-deprecated-list/mdc-deprecated-list.js +358 -0
- package/dist/list/mdc-deprecated-list/mdc-deprecated-list.js.map +1 -0
- package/dist/list/mdc-list-divider/mdc-list-divider.html +7 -0
- package/dist/list/mdc-list-divider/mdc-list-divider.js +51 -0
- package/dist/list/mdc-list-divider/mdc-list-divider.js.map +1 -0
- package/dist/list/mdc-list-group.js +65 -0
- package/dist/list/mdc-list-group.js.map +1 -0
- package/dist/list/mdc-list-item/enhance-mdc-list-item.js +24 -0
- package/dist/list/mdc-list-item/enhance-mdc-list-item.js.map +1 -0
- package/dist/list/mdc-list-item/mdc-list-item-leading.js +54 -0
- package/dist/list/mdc-list-item/mdc-list-item-leading.js.map +1 -0
- package/dist/list/mdc-list-item/mdc-list-item-trailing.js +56 -0
- package/dist/list/mdc-list-item/mdc-list-item-trailing.js.map +1 -0
- package/dist/list/mdc-list-item/mdc-list-item.html +13 -0
- package/dist/list/mdc-list-item/mdc-list-item.js +152 -0
- package/dist/list/mdc-list-item/mdc-list-item.js.map +1 -0
- package/dist/list/mdc-list-item-overline-text.js +25 -0
- package/dist/list/mdc-list-item-overline-text.js.map +1 -0
- package/dist/list/mdc-list-item-primary-text.js +28 -0
- package/dist/list/mdc-list-item-primary-text.js.map +1 -0
- package/dist/list/mdc-list-item-secondary-text.js +28 -0
- package/dist/list/mdc-list-item-secondary-text.js.map +1 -0
- package/dist/list/mdc-list.html +5 -0
- package/dist/list/mdc-list.js +302 -0
- package/dist/list/mdc-list.js.map +1 -0
- package/dist/lookup/discardable-promise.js +25 -0
- package/dist/lookup/discardable-promise.js.map +1 -0
- package/dist/lookup/mdc-lookup-configuration.js +10 -0
- package/dist/lookup/mdc-lookup-configuration.js.map +1 -0
- package/dist/lookup/mdc-lookup.html +27 -0
- package/dist/lookup/mdc-lookup.js +462 -0
- package/dist/lookup/mdc-lookup.js.map +1 -0
- package/dist/mdc-configuration.js +11 -0
- package/dist/mdc-configuration.js.map +1 -0
- package/dist/menu/mdc-menu-selection-group-icon.js +28 -0
- package/dist/menu/mdc-menu-selection-group-icon.js.map +1 -0
- package/dist/menu/mdc-menu-selection-group.js +21 -0
- package/dist/menu/mdc-menu-selection-group.js.map +1 -0
- package/dist/menu/mdc-menu.html +6 -0
- package/dist/menu/mdc-menu.js +362 -0
- package/dist/menu/mdc-menu.js.map +1 -0
- package/dist/menu-surface/mdc-menu-surface-anchor.js +29 -0
- package/dist/menu-surface/mdc-menu-surface-anchor.js.map +1 -0
- package/dist/menu-surface/mdc-menu-surface.js +317 -0
- package/dist/menu-surface/mdc-menu-surface.js.map +1 -0
- package/dist/notched-outline/mdc-notched-outline.html +7 -0
- package/dist/notched-outline/mdc-notched-outline.js +78 -0
- package/dist/notched-outline/mdc-notched-outline.js.map +1 -0
- package/dist/radio/mdc-radio.html +9 -0
- package/dist/radio/mdc-radio.js +161 -0
- package/dist/radio/mdc-radio.js.map +1 -0
- package/dist/ripple/mdc-ripple.js +147 -0
- package/dist/ripple/mdc-ripple.js.map +1 -0
- package/dist/segmented-button/mdc-segmented-button-segment/enhance-mdc-segmented-button-segment.js +24 -0
- package/dist/segmented-button/mdc-segmented-button-segment/enhance-mdc-segmented-button-segment.js.map +1 -0
- package/dist/segmented-button/mdc-segmented-button-segment/mdc-segmented-button-segment.html +11 -0
- package/dist/segmented-button/mdc-segmented-button-segment/mdc-segmented-button-segment.js +169 -0
- package/dist/segmented-button/mdc-segmented-button-segment/mdc-segmented-button-segment.js.map +1 -0
- package/dist/segmented-button/mdc-segmented-button.html +3 -0
- package/dist/segmented-button/mdc-segmented-button.js +104 -0
- package/dist/segmented-button/mdc-segmented-button.js.map +1 -0
- package/dist/select/mdc-default-select-configuration.js +4 -0
- package/dist/select/mdc-default-select-configuration.js.map +1 -0
- package/dist/select/mdc-select-adapter-aurelia.js +24 -0
- package/dist/select/mdc-select-adapter-aurelia.js.map +1 -0
- package/dist/select/mdc-select-foundation-aurelia.js +420 -0
- package/dist/select/mdc-select-foundation-aurelia.js.map +1 -0
- package/dist/select/mdc-select-helper-text/mdc-select-helper-text.html +7 -0
- package/dist/select/mdc-select-helper-text/mdc-select-helper-text.js +72 -0
- package/dist/select/mdc-select-helper-text/mdc-select-helper-text.js.map +1 -0
- package/dist/select/mdc-select-icon.js +46 -0
- package/dist/select/mdc-select-icon.js.map +1 -0
- package/dist/select/mdc-select-value-observer.js +283 -0
- package/dist/select/mdc-select-value-observer.js.map +1 -0
- package/dist/select/mdc-select.html +38 -0
- package/dist/select/mdc-select.js +461 -0
- package/dist/select/mdc-select.js.map +1 -0
- package/dist/slider/mdc-slider-foundation-aurelia.js +12 -0
- package/dist/slider/mdc-slider-foundation-aurelia.js.map +1 -0
- package/dist/slider/mdc-slider.html +36 -0
- package/dist/slider/mdc-slider.js +414 -0
- package/dist/slider/mdc-slider.js.map +1 -0
- package/dist/snackbar/mdc-snackbar-service.js +29 -0
- package/dist/snackbar/mdc-snackbar-service.js.map +1 -0
- package/dist/snackbar/mdc-snackbar.html +14 -0
- package/dist/snackbar/mdc-snackbar.js +141 -0
- package/dist/snackbar/mdc-snackbar.js.map +1 -0
- package/dist/switch/enhance-mdc-switch.js +24 -0
- package/dist/switch/enhance-mdc-switch.js.map +1 -0
- package/dist/switch/mdc-switch.html +21 -0
- package/dist/switch/mdc-switch.js +85 -0
- package/dist/switch/mdc-switch.js.map +1 -0
- package/dist/tab-bar/indicator/mdc-tab-indicator.html +9 -0
- package/dist/tab-bar/indicator/mdc-tab-indicator.js +72 -0
- package/dist/tab-bar/indicator/mdc-tab-indicator.js.map +1 -0
- package/dist/tab-bar/mdc-tab-bar.html +6 -0
- package/dist/tab-bar/mdc-tab-bar.js +137 -0
- package/dist/tab-bar/mdc-tab-bar.js.map +1 -0
- package/dist/tab-bar/scroller/mdc-tab-scroller.html +11 -0
- package/dist/tab-bar/scroller/mdc-tab-scroller.js +102 -0
- package/dist/tab-bar/scroller/mdc-tab-scroller.js.map +1 -0
- package/dist/tab-bar/tab/mdc-tab.html +20 -0
- package/dist/tab-bar/tab/mdc-tab.js +143 -0
- package/dist/tab-bar/tab/mdc-tab.js.map +1 -0
- package/dist/text-field/enhance-mdc-text-field.js +28 -0
- package/dist/text-field/enhance-mdc-text-field.js.map +1 -0
- package/dist/text-field/mdc-default-text-field-configuration.js +4 -0
- package/dist/text-field/mdc-default-text-field-configuration.js.map +1 -0
- package/dist/text-field/mdc-text-field-character-counter.js +38 -0
- package/dist/text-field/mdc-text-field-character-counter.js.map +1 -0
- package/dist/text-field/mdc-text-field-helper-line/mdc-text-field-helper-line.html +7 -0
- package/dist/text-field/mdc-text-field-helper-line/mdc-text-field-helper-line.js +42 -0
- package/dist/text-field/mdc-text-field-helper-line/mdc-text-field-helper-line.js.map +1 -0
- package/dist/text-field/mdc-text-field-helper-text/mdc-text-field-helper-text.html +6 -0
- package/dist/text-field/mdc-text-field-helper-text/mdc-text-field-helper-text.js +62 -0
- package/dist/text-field/mdc-text-field-helper-text/mdc-text-field-helper-text.js.map +1 -0
- package/dist/text-field/mdc-text-field-icon.js +60 -0
- package/dist/text-field/mdc-text-field-icon.js.map +1 -0
- package/dist/text-field/mdc-text-field.html +29 -0
- package/dist/text-field/mdc-text-field.js +581 -0
- package/dist/text-field/mdc-text-field.js.map +1 -0
- package/dist/tooltip/mdc-default-tooltip-configuration.js +6 -0
- package/dist/tooltip/mdc-default-tooltip-configuration.js.map +1 -0
- package/dist/tooltip/mdc-tooltip-attribute.js +148 -0
- package/dist/tooltip/mdc-tooltip-attribute.js.map +1 -0
- package/dist/tooltip/mdc-tooltip.html +7 -0
- package/dist/tooltip/mdc-tooltip.js +341 -0
- package/dist/tooltip/mdc-tooltip.js.map +1 -0
- package/dist/top-app-bar/enhance-top-app-bar-actions.js +25 -0
- package/dist/top-app-bar/enhance-top-app-bar-actions.js.map +1 -0
- package/dist/top-app-bar/mdc-top-app-bar-action-item.js +29 -0
- package/dist/top-app-bar/mdc-top-app-bar-action-item.js.map +1 -0
- package/dist/top-app-bar/mdc-top-app-bar-fixed-adjust.js +29 -0
- package/dist/top-app-bar/mdc-top-app-bar-fixed-adjust.js.map +1 -0
- package/dist/top-app-bar/mdc-top-app-bar-nav-icon.js +29 -0
- package/dist/top-app-bar/mdc-top-app-bar-nav-icon.js.map +1 -0
- package/dist/top-app-bar/mdc-top-app-bar-row.js +24 -0
- package/dist/top-app-bar/mdc-top-app-bar-row.js.map +1 -0
- package/dist/top-app-bar/mdc-top-app-bar-section/mdc-top-app-bar-section.html +3 -0
- package/dist/top-app-bar/mdc-top-app-bar-section/mdc-top-app-bar-section.js +32 -0
- package/dist/top-app-bar/mdc-top-app-bar-section/mdc-top-app-bar-section.js.map +1 -0
- package/dist/top-app-bar/mdc-top-app-bar-title.js +24 -0
- package/dist/top-app-bar/mdc-top-app-bar-title.js.map +1 -0
- package/dist/top-app-bar/mdc-top-app-bar.html +9 -0
- package/dist/top-app-bar/mdc-top-app-bar.js +121 -0
- package/dist/top-app-bar/mdc-top-app-bar.js.map +1 -0
- package/dist/tree-view/i-tree-node.js +2 -0
- package/dist/tree-view/i-tree-node.js.map +1 -0
- package/dist/tree-view/mdc-tree-node-meta.js +28 -0
- package/dist/tree-view/mdc-tree-node-meta.js.map +1 -0
- package/dist/tree-view/mdc-tree-node.js +21 -0
- package/dist/tree-view/mdc-tree-node.js.map +1 -0
- package/dist/tree-view/mdc-tree-view.html +30 -0
- package/dist/tree-view/mdc-tree-view.js +152 -0
- package/dist/tree-view/mdc-tree-view.js.map +1 -0
- package/dist/tree-view/node-filter.js +27 -0
- package/dist/tree-view/node-filter.js.map +1 -0
- package/dist/types/banner/mdc-banner.d.ts +39 -0
- package/dist/types/base/attributes/mdc-focus-trap.d.ts +14 -0
- package/dist/types/base/elements/i-validated-element.d.ts +11 -0
- package/dist/types/base/elements/mdc-promisify-reference.d.ts +7 -0
- package/dist/types/base/index.d.ts +10 -0
- package/dist/types/base/interceptors.d.ts +5 -0
- package/dist/types/base/material-palette.d.ts +295 -0
- package/dist/types/base/mdc-component.d.ts +22 -0
- package/dist/types/base/next-element.d.ts +1 -0
- package/dist/types/button/enhance-mdc-button.d.ts +3 -0
- package/dist/types/button/mdc-button-label.d.ts +9 -0
- package/dist/types/button/mdc-button.d.ts +35 -0
- package/dist/types/card/mdc-card-action-buttons.d.ts +9 -0
- package/dist/types/card/mdc-card-action-icons.d.ts +9 -0
- package/dist/types/card/mdc-card-actions/mdc-card-actions.d.ts +9 -0
- package/dist/types/card/mdc-card-media/mdc-card-media.d.ts +13 -0
- package/dist/types/card/mdc-card-primary-action.d.ts +9 -0
- package/dist/types/card/mdc-card.d.ts +9 -0
- package/dist/types/checkbox/mdc-checkbox.d.ts +65 -0
- package/dist/types/chips/mdc-chip/mdc-chip.d.ts +54 -0
- package/dist/types/chips/mdc-chip-action/enhance-mdc-chip-action.d.ts +3 -0
- package/dist/types/chips/mdc-chip-action/mdc-chip-action.d.ts +37 -0
- package/dist/types/chips/mdc-chip-set/mdc-chip-set.d.ts +26 -0
- package/dist/types/circular-progress/mdc-circular-progress.d.ts +32 -0
- package/dist/types/data-table/mdc-data-table-row.d.ts +9 -0
- package/dist/types/data-table/mdc-data-table.d.ts +75 -0
- package/dist/types/dialog/mdc-dialog-actions.d.ts +9 -0
- package/dist/types/dialog/mdc-dialog-content.d.ts +8 -0
- package/dist/types/dialog/mdc-dialog-service.d.ts +20 -0
- package/dist/types/dialog/mdc-dialog-title.d.ts +6 -0
- package/dist/types/dialog/mdc-dialog.d.ts +46 -0
- package/dist/types/drawer/mdc-drawer-app-content.d.ts +6 -0
- package/dist/types/drawer/mdc-drawer-content.d.ts +6 -0
- package/dist/types/drawer/mdc-drawer-header/mdc-drawer-header.d.ts +10 -0
- package/dist/types/drawer/mdc-drawer.d.ts +31 -0
- package/dist/types/elevation/mdc-elevation.d.ts +10 -0
- package/dist/types/expandable/mdc-expandable.d.ts +33 -0
- package/dist/types/fab/enhance-mdc-fab.d.ts +3 -0
- package/dist/types/fab/mdc-fab-icon.d.ts +9 -0
- package/dist/types/fab/mdc-fab.d.ts +24 -0
- package/dist/types/floating-label/mdc-floating-label.d.ts +17 -0
- package/dist/types/form-field/mdc-form-field.d.ts +21 -0
- package/dist/types/icon/mdc-icon.d.ts +7 -0
- package/dist/types/icon-button/enhance-mdc-icon-button.d.ts +3 -0
- package/dist/types/icon-button/mdc-icon-button-icon/mdc-icon-button-icon.d.ts +20 -0
- package/dist/types/icon-button/mdc-icon-button.d.ts +22 -0
- package/dist/types/image-list/mdc-image-list-item/mdc-image-list-item.d.ts +16 -0
- package/dist/types/image-list/mdc-image-list.d.ts +22 -0
- package/dist/types/index.d.ts +137 -0
- package/dist/types/layout-grid/mdc-layout-grid-cell/mdc-layout-grid-cell.d.ts +22 -0
- package/dist/types/layout-grid/mdc-layout-grid-inner.d.ts +6 -0
- package/dist/types/layout-grid/mdc-layout-grid.d.ts +26 -0
- package/dist/types/line-ripple/mdc-line-ripple.d.ts +18 -0
- package/dist/types/linear-progress/mdc-linear-progress.d.ts +18 -0
- package/dist/types/list/mdc-deprecated-list/mdc-deprecated-list-divider/mdc-deprecated-list-divider.d.ts +10 -0
- package/dist/types/list/mdc-deprecated-list/mdc-deprecated-list-group.d.ts +13 -0
- package/dist/types/list/mdc-deprecated-list/mdc-deprecated-list-item/enhance-mdc-deprecated-list-item.d.ts +3 -0
- package/dist/types/list/mdc-deprecated-list/mdc-deprecated-list-item/mdc-deprecated-list-item-graphic.d.ts +9 -0
- package/dist/types/list/mdc-deprecated-list/mdc-deprecated-list-item/mdc-deprecated-list-item-meta.d.ts +9 -0
- package/dist/types/list/mdc-deprecated-list/mdc-deprecated-list-item/mdc-deprecated-list-item.d.ts +44 -0
- package/dist/types/list/mdc-deprecated-list/mdc-deprecated-list-item-primary-text.d.ts +6 -0
- package/dist/types/list/mdc-deprecated-list/mdc-deprecated-list-item-secondary-text.d.ts +6 -0
- package/dist/types/list/mdc-deprecated-list/mdc-deprecated-list.d.ts +114 -0
- package/dist/types/list/mdc-list-divider/mdc-list-divider.d.ts +14 -0
- package/dist/types/list/mdc-list-group.d.ts +13 -0
- package/dist/types/list/mdc-list-item/enhance-mdc-list-item.d.ts +3 -0
- package/dist/types/list/mdc-list-item/mdc-list-item-leading.d.ts +13 -0
- package/dist/types/list/mdc-list-item/mdc-list-item-trailing.d.ts +13 -0
- package/dist/types/list/mdc-list-item/mdc-list-item.d.ts +52 -0
- package/dist/types/list/mdc-list-item-overline-text.d.ts +6 -0
- package/dist/types/list/mdc-list-item-primary-text.d.ts +6 -0
- package/dist/types/list/mdc-list-item-secondary-text.d.ts +6 -0
- package/dist/types/list/mdc-list.d.ts +107 -0
- package/dist/types/lookup/discardable-promise.d.ts +11 -0
- package/dist/types/lookup/mdc-lookup-configuration.d.ts +9 -0
- package/dist/types/lookup/mdc-lookup.d.ts +107 -0
- package/dist/types/mdc-configuration.d.ts +10 -0
- package/dist/types/menu/mdc-menu-selection-group-icon.d.ts +5 -0
- package/dist/types/menu/mdc-menu-selection-group.d.ts +2 -0
- package/dist/types/menu/mdc-menu.d.ts +127 -0
- package/dist/types/menu-surface/mdc-menu-surface-anchor.d.ts +5 -0
- package/dist/types/menu-surface/mdc-menu-surface.d.ts +44 -0
- package/dist/types/notched-outline/mdc-notched-outline.d.ts +19 -0
- package/dist/types/radio/mdc-radio.d.ts +40 -0
- package/dist/types/ripple/mdc-ripple.d.ts +29 -0
- package/dist/types/segmented-button/mdc-segmented-button-segment/enhance-mdc-segmented-button-segment.d.ts +3 -0
- package/dist/types/segmented-button/mdc-segmented-button-segment/mdc-segmented-button-segment.d.ts +49 -0
- package/dist/types/segmented-button/mdc-segmented-button.d.ts +20 -0
- package/dist/types/select/mdc-default-select-configuration.d.ts +3 -0
- package/dist/types/select/mdc-select-adapter-aurelia.d.ts +176 -0
- package/dist/types/select/mdc-select-foundation-aurelia.d.ts +142 -0
- package/dist/types/select/mdc-select-helper-text/mdc-select-helper-text.d.ts +25 -0
- package/dist/types/select/mdc-select-icon.d.ts +17 -0
- package/dist/types/select/mdc-select-value-observer.d.ts +59 -0
- package/dist/types/select/mdc-select.d.ts +99 -0
- package/dist/types/slider/mdc-slider-foundation-aurelia.d.ts +5 -0
- package/dist/types/slider/mdc-slider.d.ts +66 -0
- package/dist/types/snackbar/mdc-snackbar-service.d.ts +16 -0
- package/dist/types/snackbar/mdc-snackbar.d.ts +37 -0
- package/dist/types/switch/enhance-mdc-switch.d.ts +3 -0
- package/dist/types/switch/mdc-switch.d.ts +23 -0
- package/dist/types/tab-bar/indicator/mdc-tab-indicator.d.ts +12 -0
- package/dist/types/tab-bar/mdc-tab-bar.d.ts +30 -0
- package/dist/types/tab-bar/scroller/mdc-tab-scroller.d.ts +31 -0
- package/dist/types/tab-bar/tab/mdc-tab.d.ts +44 -0
- package/dist/types/text-field/enhance-mdc-text-field.d.ts +3 -0
- package/dist/types/text-field/mdc-default-text-field-configuration.d.ts +3 -0
- package/dist/types/text-field/mdc-text-field-character-counter.d.ts +14 -0
- package/dist/types/text-field/mdc-text-field-helper-line/mdc-text-field-helper-line.d.ts +17 -0
- package/dist/types/text-field/mdc-text-field-helper-text/mdc-text-field-helper-text.d.ts +21 -0
- package/dist/types/text-field/mdc-text-field-icon.d.ts +20 -0
- package/dist/types/text-field/mdc-text-field.d.ts +105 -0
- package/dist/types/tooltip/mdc-default-tooltip-configuration.d.ts +5 -0
- package/dist/types/tooltip/mdc-tooltip-attribute.d.ts +51 -0
- package/dist/types/tooltip/mdc-tooltip.d.ts +47 -0
- package/dist/types/top-app-bar/enhance-top-app-bar-actions.d.ts +3 -0
- package/dist/types/top-app-bar/mdc-top-app-bar-action-item.d.ts +5 -0
- package/dist/types/top-app-bar/mdc-top-app-bar-fixed-adjust.d.ts +6 -0
- package/dist/types/top-app-bar/mdc-top-app-bar-nav-icon.d.ts +5 -0
- package/dist/types/top-app-bar/mdc-top-app-bar-row.d.ts +2 -0
- package/dist/types/top-app-bar/mdc-top-app-bar-section/mdc-top-app-bar-section.d.ts +3 -0
- package/dist/types/top-app-bar/mdc-top-app-bar-title.d.ts +2 -0
- package/dist/types/top-app-bar/mdc-top-app-bar.d.ts +18 -0
- package/dist/types/tree-view/i-tree-node.d.ts +7 -0
- package/dist/types/tree-view/mdc-tree-node-meta.d.ts +5 -0
- package/dist/types/tree-view/mdc-tree-node.d.ts +2 -0
- package/dist/types/tree-view/mdc-tree-view.d.ts +35 -0
- package/dist/types/tree-view/node-filter.d.ts +4 -0
- package/dist/types/typography/mdc-typography.d.ts +46 -0
- package/dist/types/validation/mdc-validation-controller-factory.d.ts +7 -0
- package/dist/types/validation/mdc-validation-result-presenter.d.ts +4 -0
- package/dist/typography/mdc-typography.js +327 -0
- package/dist/typography/mdc-typography.js.map +1 -0
- package/dist/validation/mdc-validation-controller-factory.js +17 -0
- package/dist/validation/mdc-validation-controller-factory.js.map +1 -0
- package/dist/validation/mdc-validation-result-presenter.js +31 -0
- package/dist/validation/mdc-validation-result-presenter.js.map +1 -0
- package/package.json +56 -43
- package/src/banner/doc/api.json +1106 -0
- package/src/banner/mdc-banner.html +21 -0
- package/src/banner/mdc-banner.ts +116 -0
- package/src/base/attributes/mdc-focus-trap.ts +42 -0
- package/src/base/dist/attributes/mdc-focus-trap.js +68 -0
- package/src/base/dist/attributes/mdc-focus-trap.js.map +1 -0
- package/src/base/dist/elements/i-validated-element.js +2 -0
- package/src/base/dist/elements/i-validated-element.js.map +1 -0
- package/src/base/dist/elements/mdc-promisify-reference.js +45 -0
- package/src/base/dist/elements/mdc-promisify-reference.js.map +1 -0
- package/src/base/dist/index.js +20 -0
- package/src/base/dist/index.js.map +1 -0
- package/src/base/dist/interceptors.js +22 -0
- package/src/base/dist/interceptors.js.map +1 -0
- package/src/base/dist/material-palette.js +23 -0
- package/src/base/dist/material-palette.js.map +1 -0
- package/src/base/dist/mdc-component.js +56 -0
- package/src/base/dist/mdc-component.js.map +1 -0
- package/src/base/dist/next-element.js +35 -0
- package/src/base/dist/next-element.js.map +1 -0
- package/src/base/dist/types/attributes/mdc-focus-trap.d.ts +14 -0
- package/src/base/dist/types/elements/i-validated-element.d.ts +11 -0
- package/src/base/dist/types/elements/mdc-promisify-reference.d.ts +7 -0
- package/src/base/dist/types/index.d.ts +10 -0
- package/src/base/dist/types/interceptors.d.ts +5 -0
- package/src/base/dist/types/material-palette.d.ts +295 -0
- package/src/base/dist/types/mdc-component.d.ts +22 -0
- package/src/base/dist/types/next-element.d.ts +1 -0
- package/src/base/doc/api.json +1408 -0
- package/src/base/elements/i-validated-element.ts +12 -0
- package/src/base/elements/mdc-promisify-reference.ts +21 -0
- package/src/base/index.ts +23 -0
- package/src/base/interceptors.ts +25 -0
- package/src/base/material-palette.md +7 -0
- package/src/base/material-palette.ts +22 -0
- package/src/base/mdc-component.ts +69 -0
- package/src/base/next-element.ts +39 -0
- package/src/button/doc/api.json +621 -0
- package/src/button/enhance-mdc-button.ts +8 -0
- package/src/button/mdc-button-label.ts +15 -0
- package/src/button/mdc-button.html +12 -0
- package/src/button/mdc-button.ts +62 -0
- package/src/card/doc/api.json +214 -0
- package/src/card/mdc-card-action-buttons.ts +19 -0
- package/src/card/mdc-card-action-icons.ts +19 -0
- package/src/card/mdc-card-actions/mdc-card-actions.html +3 -0
- package/src/card/mdc-card-actions/mdc-card-actions.ts +15 -0
- package/src/card/mdc-card-media/mdc-card-media.html +5 -0
- package/src/card/mdc-card-media/mdc-card-media.ts +21 -0
- package/src/card/mdc-card-primary-action.html +5 -0
- package/src/card/mdc-card-primary-action.ts +16 -0
- package/src/card/mdc-card.html +3 -0
- package/src/card/mdc-card.ts +16 -0
- package/src/checkbox/doc/api.json +1320 -0
- package/src/checkbox/mdc-checkbox.html +12 -0
- package/src/checkbox/mdc-checkbox.ts +217 -0
- package/src/chips/doc/api.json +2533 -0
- package/src/chips/mdc-chip/mdc-chip.html +24 -0
- package/src/chips/mdc-chip/mdc-chip.ts +290 -0
- package/src/chips/mdc-chip-action/enhance-mdc-chip-action.ts +8 -0
- package/src/chips/mdc-chip-action/mdc-chip-action.html +25 -0
- package/src/chips/mdc-chip-action/mdc-chip-action.ts +143 -0
- package/src/chips/mdc-chip-set/mdc-chip-set.html +10 -0
- package/src/chips/mdc-chip-set/mdc-chip-set.ts +117 -0
- package/src/chips/styles/_index.scss +1 -0
- package/src/chips/styles/mdc-chips.import.scss +1 -0
- package/src/chips/styles/mdc-chips.scss +11 -0
- package/src/circular-progress/doc/api.json +1085 -0
- package/src/circular-progress/mdc-circular-progress.html +38 -0
- package/src/circular-progress/mdc-circular-progress.ts +91 -0
- package/src/circular-progress/styles/_index.scss +1 -0
- package/src/circular-progress/styles/mdc-circular-progress.import.scss +1 -0
- package/src/circular-progress/styles/mdc-circular-progress.scss +14 -0
- package/src/data-table/doc/api.json +2064 -0
- package/src/data-table/mdc-data-table-row.ts +24 -0
- package/src/data-table/mdc-data-table.html +49 -0
- package/src/data-table/mdc-data-table.ts +432 -0
- package/src/dialog/doc/api.json +1667 -0
- package/src/dialog/mdc-dialog-actions.ts +23 -0
- package/src/dialog/mdc-dialog-content.ts +11 -0
- package/src/dialog/mdc-dialog-service.ts +80 -0
- package/src/dialog/mdc-dialog-title.ts +8 -0
- package/src/dialog/mdc-dialog.html +14 -0
- package/src/dialog/mdc-dialog.ts +224 -0
- package/src/drawer/doc/api.json +1416 -0
- package/src/drawer/mdc-drawer-app-content.ts +11 -0
- package/src/drawer/mdc-drawer-content.ts +11 -0
- package/src/drawer/mdc-drawer-header/mdc-drawer-header.html +5 -0
- package/src/drawer/mdc-drawer-header/mdc-drawer-header.ts +18 -0
- package/src/drawer/mdc-drawer.html +6 -0
- package/src/drawer/mdc-drawer.ts +125 -0
- package/src/drawer/styles/_index.scss +1 -0
- package/src/drawer/styles/mdc-drawer.import.scss +1 -0
- package/src/drawer/styles/mdc-drawer.scss +0 -0
- package/src/elevation/doc/api.json +317 -0
- package/src/elevation/mdc-elevation.ts +23 -0
- package/src/expandable/doc/api.json +677 -0
- package/src/expandable/mdc-expandable.html +28 -0
- package/src/expandable/mdc-expandable.ts +104 -0
- package/src/expandable/styles/_icon-variables.scss +3 -0
- package/src/expandable/styles/_index.scss +1 -0
- package/src/expandable/styles/_mixins.scss +287 -0
- package/src/expandable/styles/_variables.scss +17 -0
- package/src/expandable/styles/mdc-expandable.import.scss +1 -0
- package/src/expandable/styles/mdc-expandable.scss +3 -0
- package/src/fab/doc/api.json +396 -0
- package/src/fab/enhance-mdc-fab.ts +8 -0
- package/src/fab/mdc-fab-icon.ts +15 -0
- package/src/fab/mdc-fab.html +13 -0
- package/src/fab/mdc-fab.ts +50 -0
- package/src/floating-label/doc/api.json +914 -0
- package/src/floating-label/mdc-floating-label.html +1 -0
- package/src/floating-label/mdc-floating-label.ts +44 -0
- package/src/form-field/doc/api.json +948 -0
- package/src/form-field/mdc-form-field.html +6 -0
- package/src/form-field/mdc-form-field.ts +60 -0
- package/src/icon/doc/api.json +224 -0
- package/src/icon/mdc-icon.html +3 -0
- package/src/icon/mdc-icon.ts +11 -0
- package/src/icon-button/doc/api.json +1109 -0
- package/src/icon-button/enhance-mdc-icon-button.ts +8 -0
- package/src/icon-button/mdc-icon-button-icon/mdc-icon-button-icon.html +4 -0
- package/src/icon-button/mdc-icon-button-icon/mdc-icon-button-icon.ts +29 -0
- package/src/icon-button/mdc-icon-button.html +11 -0
- package/src/icon-button/mdc-icon-button.ts +69 -0
- package/src/image-list/doc/api.json +438 -0
- package/src/image-list/mdc-image-list-item/mdc-image-list-item.html +9 -0
- package/src/image-list/mdc-image-list-item/mdc-image-list-item.ts +31 -0
- package/src/image-list/mdc-image-list.html +7 -0
- package/src/image-list/mdc-image-list.ts +73 -0
- package/src/image-list/styles/_index.scss +1 -0
- package/src/image-list/styles/mdc-image-list.import.scss +1 -0
- package/src/image-list/styles/mdc-image-list.scss +7 -0
- package/src/index.ts +238 -0
- package/src/layout-grid/doc/api.json +600 -0
- package/src/layout-grid/mdc-layout-grid-cell/mdc-layout-grid-cell.html +12 -0
- package/src/layout-grid/mdc-layout-grid-cell/mdc-layout-grid-cell.ts +49 -0
- package/src/layout-grid/mdc-layout-grid-inner.ts +8 -0
- package/src/layout-grid/mdc-layout-grid.html +8 -0
- package/src/layout-grid/mdc-layout-grid.ts +67 -0
- package/src/layout-grid/styles/_index.scss +1 -0
- package/src/layout-grid/styles/mdc-layout-grid.import.scss +1 -0
- package/src/layout-grid/styles/mdc-layout-grid.scss +11 -0
- package/src/line-ripple/doc/api.json +857 -0
- package/src/line-ripple/mdc-line-ripple.ts +41 -0
- package/src/linear-progress/doc/api.json +949 -0
- package/src/linear-progress/mdc-linear-progress.html +12 -0
- package/src/linear-progress/mdc-linear-progress.ts +103 -0
- package/src/list/doc/api.json +5725 -0
- package/src/list/mdc-deprecated-list/mdc-deprecated-list-divider/mdc-deprecated-list-divider.html +4 -0
- package/src/list/mdc-deprecated-list/mdc-deprecated-list-divider/mdc-deprecated-list-divider.ts +18 -0
- package/src/list/mdc-deprecated-list/mdc-deprecated-list-group.ts +27 -0
- package/src/list/mdc-deprecated-list/mdc-deprecated-list-item/enhance-mdc-deprecated-list-item.ts +8 -0
- package/src/list/mdc-deprecated-list/mdc-deprecated-list-item/mdc-deprecated-list-item-graphic.ts +15 -0
- package/src/list/mdc-deprecated-list/mdc-deprecated-list-item/mdc-deprecated-list-item-meta.ts +15 -0
- package/src/list/mdc-deprecated-list/mdc-deprecated-list-item/mdc-deprecated-list-item.html +8 -0
- package/src/list/mdc-deprecated-list/mdc-deprecated-list-item/mdc-deprecated-list-item.ts +108 -0
- package/src/list/mdc-deprecated-list/mdc-deprecated-list-item-primary-text.ts +11 -0
- package/src/list/mdc-deprecated-list/mdc-deprecated-list-item-secondary-text.ts +11 -0
- package/src/list/mdc-deprecated-list/mdc-deprecated-list.html +15 -0
- package/src/list/mdc-deprecated-list/mdc-deprecated-list.ts +331 -0
- package/src/list/mdc-list-divider/mdc-list-divider.html +7 -0
- package/src/list/mdc-list-divider/mdc-list-divider.ts +24 -0
- package/src/list/mdc-list-group.ts +27 -0
- package/src/list/mdc-list-item/enhance-mdc-list-item.ts +8 -0
- package/src/list/mdc-list-item/mdc-list-item-leading.ts +34 -0
- package/src/list/mdc-list-item/mdc-list-item-trailing.ts +36 -0
- package/src/list/mdc-list-item/mdc-list-item.html +13 -0
- package/src/list/mdc-list-item/mdc-list-item.ts +136 -0
- package/src/list/mdc-list-item-overline-text.ts +8 -0
- package/src/list/mdc-list-item-primary-text.ts +11 -0
- package/src/list/mdc-list-item-secondary-text.ts +11 -0
- package/src/list/mdc-list.html +5 -0
- package/src/list/mdc-list.ts +300 -0
- package/src/list/styles/_index.scss +1 -0
- package/src/list/styles/mdc-list.import.scss +1 -0
- package/src/list/styles/mdc-list.scss +6 -0
- package/src/lookup/discardable-promise.ts +24 -0
- package/src/lookup/doc/api.json +2370 -0
- package/src/lookup/mdc-lookup-configuration.ts +11 -0
- package/src/lookup/mdc-lookup.html +27 -0
- package/src/lookup/mdc-lookup.ts +413 -0
- package/src/mdc-configuration.ts +12 -0
- package/src/menu/doc/api.json +2246 -0
- package/src/menu/mdc-menu-selection-group-icon.ts +11 -0
- package/src/menu/mdc-menu-selection-group.ts +4 -0
- package/src/menu/mdc-menu.html +6 -0
- package/src/menu/mdc-menu.ts +340 -0
- package/src/menu-surface/doc/api.json +1800 -0
- package/src/menu-surface/mdc-menu-surface-anchor.ts +12 -0
- package/src/menu-surface/mdc-menu-surface.ts +275 -0
- package/src/notched-outline/doc/api.json +943 -0
- package/src/notched-outline/mdc-notched-outline.html +7 -0
- package/src/notched-outline/mdc-notched-outline.ts +60 -0
- package/src/radio/doc/api.json +1159 -0
- package/src/radio/mdc-radio.html +9 -0
- package/src/radio/mdc-radio.ts +162 -0
- package/src/resource.d.ts +22 -0
- package/src/ripple/doc/api.json +1212 -0
- package/src/ripple/mdc-ripple.ts +114 -0
- package/src/ripple/styles/_index.scss +1 -0
- package/src/ripple/styles/mdc-ripple.import.scss +1 -0
- package/src/ripple/styles/mdc-ripple.scss +10 -0
- package/src/segmented-button/doc/api.json +1937 -0
- package/src/segmented-button/mdc-segmented-button-segment/enhance-mdc-segmented-button-segment.ts +8 -0
- package/src/segmented-button/mdc-segmented-button-segment/mdc-segmented-button-segment.html +11 -0
- package/src/segmented-button/mdc-segmented-button-segment/mdc-segmented-button-segment.ts +170 -0
- package/src/segmented-button/mdc-segmented-button.html +3 -0
- package/src/segmented-button/mdc-segmented-button.ts +89 -0
- package/src/select/doc/api.json +4247 -0
- package/src/select/mdc-default-select-configuration.ts +3 -0
- package/src/select/mdc-select-adapter-aurelia.ts +213 -0
- package/src/select/mdc-select-foundation-aurelia.ts +484 -0
- package/src/select/mdc-select-helper-text/mdc-select-helper-text.html +7 -0
- package/src/select/mdc-select-helper-text/mdc-select-helper-text.ts +55 -0
- package/src/select/mdc-select-icon.ts +41 -0
- package/src/select/mdc-select-value-observer.ts +346 -0
- package/src/select/mdc-select.html +38 -0
- package/src/select/mdc-select.ts +480 -0
- package/src/slider/doc/api.json +1954 -0
- package/src/slider/mdc-slider-foundation-aurelia.ts +13 -0
- package/src/slider/mdc-slider.html +36 -0
- package/src/slider/mdc-slider.ts +409 -0
- package/src/slider/styles/_index.scss +1 -0
- package/src/slider/styles/mdc-slider.import.scss +1 -0
- package/src/slider/styles/mdc-slider.scss +8 -0
- package/src/snackbar/doc/api.json +1699 -0
- package/src/snackbar/mdc-snackbar-service.ts +48 -0
- package/src/snackbar/mdc-snackbar.html +14 -0
- package/src/snackbar/mdc-snackbar.ts +109 -0
- package/src/switch/doc/api.json +899 -0
- package/src/switch/enhance-mdc-switch.ts +8 -0
- package/src/switch/mdc-switch.html +21 -0
- package/src/switch/mdc-switch.ts +86 -0
- package/src/tab-bar/doc/api.json +4253 -0
- package/src/tab-bar/indicator/mdc-tab-indicator.html +9 -0
- package/src/tab-bar/indicator/mdc-tab-indicator.ts +51 -0
- package/src/tab-bar/mdc-tab-bar.html +6 -0
- package/src/tab-bar/mdc-tab-bar.ts +119 -0
- package/src/tab-bar/scroller/mdc-tab-scroller.html +11 -0
- package/src/tab-bar/scroller/mdc-tab-scroller.ts +85 -0
- package/src/tab-bar/tab/mdc-tab.html +20 -0
- package/src/tab-bar/tab/mdc-tab.ts +118 -0
- package/src/text-field/doc/api.json +3179 -0
- package/src/text-field/enhance-mdc-text-field.ts +12 -0
- package/src/text-field/mdc-default-text-field-configuration.ts +3 -0
- package/src/text-field/mdc-text-field-character-counter.ts +32 -0
- package/src/text-field/mdc-text-field-helper-line/mdc-text-field-helper-line.html +7 -0
- package/src/text-field/mdc-text-field-helper-line/mdc-text-field-helper-line.ts +37 -0
- package/src/text-field/mdc-text-field-helper-text/mdc-text-field-helper-text.html +6 -0
- package/src/text-field/mdc-text-field-helper-text/mdc-text-field-helper-text.ts +47 -0
- package/src/text-field/mdc-text-field-icon.ts +59 -0
- package/src/text-field/mdc-text-field.html +29 -0
- package/src/text-field/mdc-text-field.ts +535 -0
- package/src/text-field/styles/_index.scss +1 -0
- package/src/text-field/styles/mdc-text-field.import.scss +1 -0
- package/src/text-field/styles/mdc-text-field.scss +8 -0
- package/src/tooltip/doc/api.json +2531 -0
- package/src/tooltip/mdc-default-tooltip-configuration.ts +5 -0
- package/src/tooltip/mdc-tooltip-attribute.ts +118 -0
- package/src/tooltip/mdc-tooltip.html +7 -0
- package/src/tooltip/mdc-tooltip.ts +303 -0
- package/src/top-app-bar/doc/api.json +1752 -0
- package/src/top-app-bar/enhance-top-app-bar-actions.ts +9 -0
- package/src/top-app-bar/mdc-top-app-bar-action-item.ts +12 -0
- package/src/top-app-bar/mdc-top-app-bar-fixed-adjust.ts +13 -0
- package/src/top-app-bar/mdc-top-app-bar-nav-icon.ts +12 -0
- package/src/top-app-bar/mdc-top-app-bar-row.ts +7 -0
- package/src/top-app-bar/mdc-top-app-bar-section/mdc-top-app-bar-section.html +3 -0
- package/src/top-app-bar/mdc-top-app-bar-section/mdc-top-app-bar-section.ts +9 -0
- package/src/top-app-bar/mdc-top-app-bar-title.ts +7 -0
- package/src/top-app-bar/mdc-top-app-bar.html +9 -0
- package/src/top-app-bar/mdc-top-app-bar.ts +93 -0
- package/src/tree-view/doc/api.json +1710 -0
- package/src/tree-view/i-tree-node.ts +8 -0
- package/src/tree-view/mdc-tree-node-meta.ts +11 -0
- package/src/tree-view/mdc-tree-node.ts +4 -0
- package/src/tree-view/mdc-tree-view.html +30 -0
- package/src/tree-view/mdc-tree-view.ts +147 -0
- package/src/tree-view/node-filter.ts +12 -0
- package/src/tree-view/styles/_index.scss +1 -0
- package/src/tree-view/styles/_mixins.scss +145 -0
- package/src/tree-view/styles/_variables.scss +8 -0
- package/src/tree-view/styles/mdc-tree-view.import.scss +1 -0
- package/src/tree-view/styles/mdc-tree-view.scss +3 -0
- package/src/typography/doc/api.json +3058 -0
- package/src/typography/mdc-typography.ts +130 -0
- package/src/validation/doc/api.json +371 -0
- package/src/validation/mdc-validation-controller-factory.ts +20 -0
- package/src/validation/mdc-validation-result-presenter.ts +36 -0
- package/{_index.scss → styles/_index.scss} +1 -1
- package/{mdc-all.import.scss → styles/mdc-all.import.scss} +1 -1
- package/{mdc-all.scss → styles/mdc-all.scss} +9 -9
|
@@ -0,0 +1,462 @@
|
|
|
1
|
+
import { __esDecorate, __runInitializers } from "tslib";
|
|
2
|
+
import { customElement, inject, bindable, BindingMode, CustomElement } from 'aurelia';
|
|
3
|
+
import { DiscardablePromise } from './discardable-promise';
|
|
4
|
+
import { MdcDefaultLookupConfiguration } from './mdc-lookup-configuration';
|
|
5
|
+
import { booleanAttr, number } from '../base';
|
|
6
|
+
import { closest } from '@material/dom/ponyfill';
|
|
7
|
+
import template from './mdc-lookup.html?raw';
|
|
8
|
+
const inputEvents = ['click', 'input', 'keydown', 'blur'];
|
|
9
|
+
const bodyEvents = ['touchstart', 'mousedown', 'click'];
|
|
10
|
+
/**
|
|
11
|
+
* @selector mdc-lookup
|
|
12
|
+
*/
|
|
13
|
+
let MdcLookup = (() => {
|
|
14
|
+
let _classDecorators = [inject(Element, MdcDefaultLookupConfiguration), customElement({ name: 'mdc-lookup', template })];
|
|
15
|
+
let _classDescriptor;
|
|
16
|
+
let _classExtraInitializers = [];
|
|
17
|
+
let _classThis;
|
|
18
|
+
let _input_decorators;
|
|
19
|
+
let _input_initializers = [];
|
|
20
|
+
let _input_extraInitializers = [];
|
|
21
|
+
let _twoLine_decorators;
|
|
22
|
+
let _twoLine_initializers = [];
|
|
23
|
+
let _twoLine_extraInitializers = [];
|
|
24
|
+
let _displayField_decorators;
|
|
25
|
+
let _displayField_initializers = [];
|
|
26
|
+
let _displayField_extraInitializers = [];
|
|
27
|
+
let _valueField_decorators;
|
|
28
|
+
let _valueField_initializers = [];
|
|
29
|
+
let _valueField_extraInitializers = [];
|
|
30
|
+
let _options_decorators;
|
|
31
|
+
let _options_initializers = [];
|
|
32
|
+
let _options_extraInitializers = [];
|
|
33
|
+
let _hoistToBody_decorators;
|
|
34
|
+
let _hoistToBody_initializers = [];
|
|
35
|
+
let _hoistToBody_extraInitializers = [];
|
|
36
|
+
let _naturalWidth_decorators;
|
|
37
|
+
let _naturalWidth_initializers = [];
|
|
38
|
+
let _naturalWidth_extraInitializers = [];
|
|
39
|
+
let _menuClass_decorators;
|
|
40
|
+
let _menuClass_initializers = [];
|
|
41
|
+
let _menuClass_extraInitializers = [];
|
|
42
|
+
let _value_decorators;
|
|
43
|
+
let _value_initializers = [];
|
|
44
|
+
let _value_extraInitializers = [];
|
|
45
|
+
let _debounce_decorators;
|
|
46
|
+
let _debounce_initializers = [];
|
|
47
|
+
let _debounce_extraInitializers = [];
|
|
48
|
+
let _preloadOptions_decorators;
|
|
49
|
+
let _preloadOptions_initializers = [];
|
|
50
|
+
let _preloadOptions_extraInitializers = [];
|
|
51
|
+
let _selectOnBlur_decorators;
|
|
52
|
+
let _selectOnBlur_initializers = [];
|
|
53
|
+
let _selectOnBlur_extraInitializers = [];
|
|
54
|
+
let _selectOnTab_decorators;
|
|
55
|
+
let _selectOnTab_initializers = [];
|
|
56
|
+
let _selectOnTab_extraInitializers = [];
|
|
57
|
+
let _virtual_decorators;
|
|
58
|
+
let _virtual_initializers = [];
|
|
59
|
+
let _virtual_extraInitializers = [];
|
|
60
|
+
var MdcLookup = class {
|
|
61
|
+
static { _classThis = this; }
|
|
62
|
+
static {
|
|
63
|
+
const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(null) : void 0;
|
|
64
|
+
_input_decorators = [bindable()];
|
|
65
|
+
_twoLine_decorators = [bindable({ set: booleanAttr })];
|
|
66
|
+
_displayField_decorators = [bindable()];
|
|
67
|
+
_valueField_decorators = [bindable()];
|
|
68
|
+
_options_decorators = [bindable()];
|
|
69
|
+
_hoistToBody_decorators = [bindable({ set: booleanAttr, mode: BindingMode.oneTime })];
|
|
70
|
+
_naturalWidth_decorators = [bindable({ set: booleanAttr })];
|
|
71
|
+
_menuClass_decorators = [bindable()];
|
|
72
|
+
_value_decorators = [bindable({ mode: BindingMode.twoWay })];
|
|
73
|
+
_debounce_decorators = [bindable({ set: number })];
|
|
74
|
+
_preloadOptions_decorators = [bindable({ set: booleanAttr })];
|
|
75
|
+
_selectOnBlur_decorators = [bindable({ set: booleanAttr })];
|
|
76
|
+
_selectOnTab_decorators = [bindable({ set: booleanAttr })];
|
|
77
|
+
_virtual_decorators = [bindable({ set: booleanAttr })];
|
|
78
|
+
__esDecorate(null, null, _input_decorators, { kind: "field", name: "input", static: false, private: false, access: { has: obj => "input" in obj, get: obj => obj.input, set: (obj, value) => { obj.input = value; } }, metadata: _metadata }, _input_initializers, _input_extraInitializers);
|
|
79
|
+
__esDecorate(null, null, _twoLine_decorators, { kind: "field", name: "twoLine", static: false, private: false, access: { has: obj => "twoLine" in obj, get: obj => obj.twoLine, set: (obj, value) => { obj.twoLine = value; } }, metadata: _metadata }, _twoLine_initializers, _twoLine_extraInitializers);
|
|
80
|
+
__esDecorate(null, null, _displayField_decorators, { kind: "field", name: "displayField", static: false, private: false, access: { has: obj => "displayField" in obj, get: obj => obj.displayField, set: (obj, value) => { obj.displayField = value; } }, metadata: _metadata }, _displayField_initializers, _displayField_extraInitializers);
|
|
81
|
+
__esDecorate(null, null, _valueField_decorators, { kind: "field", name: "valueField", static: false, private: false, access: { has: obj => "valueField" in obj, get: obj => obj.valueField, set: (obj, value) => { obj.valueField = value; } }, metadata: _metadata }, _valueField_initializers, _valueField_extraInitializers);
|
|
82
|
+
__esDecorate(null, null, _options_decorators, { kind: "field", name: "options", static: false, private: false, access: { has: obj => "options" in obj, get: obj => obj.options, set: (obj, value) => { obj.options = value; } }, metadata: _metadata }, _options_initializers, _options_extraInitializers);
|
|
83
|
+
__esDecorate(null, null, _hoistToBody_decorators, { kind: "field", name: "hoistToBody", static: false, private: false, access: { has: obj => "hoistToBody" in obj, get: obj => obj.hoistToBody, set: (obj, value) => { obj.hoistToBody = value; } }, metadata: _metadata }, _hoistToBody_initializers, _hoistToBody_extraInitializers);
|
|
84
|
+
__esDecorate(null, null, _naturalWidth_decorators, { kind: "field", name: "naturalWidth", static: false, private: false, access: { has: obj => "naturalWidth" in obj, get: obj => obj.naturalWidth, set: (obj, value) => { obj.naturalWidth = value; } }, metadata: _metadata }, _naturalWidth_initializers, _naturalWidth_extraInitializers);
|
|
85
|
+
__esDecorate(null, null, _menuClass_decorators, { kind: "field", name: "menuClass", static: false, private: false, access: { has: obj => "menuClass" in obj, get: obj => obj.menuClass, set: (obj, value) => { obj.menuClass = value; } }, metadata: _metadata }, _menuClass_initializers, _menuClass_extraInitializers);
|
|
86
|
+
__esDecorate(null, null, _value_decorators, { kind: "field", name: "value", static: false, private: false, access: { has: obj => "value" in obj, get: obj => obj.value, set: (obj, value) => { obj.value = value; } }, metadata: _metadata }, _value_initializers, _value_extraInitializers);
|
|
87
|
+
__esDecorate(null, null, _debounce_decorators, { kind: "field", name: "debounce", static: false, private: false, access: { has: obj => "debounce" in obj, get: obj => obj.debounce, set: (obj, value) => { obj.debounce = value; } }, metadata: _metadata }, _debounce_initializers, _debounce_extraInitializers);
|
|
88
|
+
__esDecorate(null, null, _preloadOptions_decorators, { kind: "field", name: "preloadOptions", static: false, private: false, access: { has: obj => "preloadOptions" in obj, get: obj => obj.preloadOptions, set: (obj, value) => { obj.preloadOptions = value; } }, metadata: _metadata }, _preloadOptions_initializers, _preloadOptions_extraInitializers);
|
|
89
|
+
__esDecorate(null, null, _selectOnBlur_decorators, { kind: "field", name: "selectOnBlur", static: false, private: false, access: { has: obj => "selectOnBlur" in obj, get: obj => obj.selectOnBlur, set: (obj, value) => { obj.selectOnBlur = value; } }, metadata: _metadata }, _selectOnBlur_initializers, _selectOnBlur_extraInitializers);
|
|
90
|
+
__esDecorate(null, null, _selectOnTab_decorators, { kind: "field", name: "selectOnTab", static: false, private: false, access: { has: obj => "selectOnTab" in obj, get: obj => obj.selectOnTab, set: (obj, value) => { obj.selectOnTab = value; } }, metadata: _metadata }, _selectOnTab_initializers, _selectOnTab_extraInitializers);
|
|
91
|
+
__esDecorate(null, null, _virtual_decorators, { kind: "field", name: "virtual", static: false, private: false, access: { has: obj => "virtual" in obj, get: obj => obj.virtual, set: (obj, value) => { obj.virtual = value; } }, metadata: _metadata }, _virtual_initializers, _virtual_extraInitializers);
|
|
92
|
+
__esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
|
|
93
|
+
MdcLookup = _classThis = _classDescriptor.value;
|
|
94
|
+
if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
|
|
95
|
+
__runInitializers(_classThis, _classExtraInitializers);
|
|
96
|
+
}
|
|
97
|
+
root;
|
|
98
|
+
defaultConfiguration;
|
|
99
|
+
constructor(root, defaultConfiguration) {
|
|
100
|
+
this.root = root;
|
|
101
|
+
this.defaultConfiguration = defaultConfiguration;
|
|
102
|
+
this.debounce = this.defaultConfiguration.debounce;
|
|
103
|
+
defineMdcLookupElementApis(this.root);
|
|
104
|
+
}
|
|
105
|
+
menuSurface;
|
|
106
|
+
isWrapperOpen = false;
|
|
107
|
+
optionsArray;
|
|
108
|
+
focusedOption = undefined;
|
|
109
|
+
searching = false;
|
|
110
|
+
errorMessage = undefined;
|
|
111
|
+
notFound = false;
|
|
112
|
+
menu;
|
|
113
|
+
/** Reference to the input */
|
|
114
|
+
input = __runInitializers(this, _input_initializers, void 0);
|
|
115
|
+
/** Sets the menu list to have two lines */
|
|
116
|
+
twoLine = (__runInitializers(this, _input_extraInitializers), __runInitializers(this, _twoLine_initializers, void 0));
|
|
117
|
+
/**
|
|
118
|
+
* Sets the way an option is displayed in the input element.
|
|
119
|
+
* When set to a string, the object property with such name is used.
|
|
120
|
+
* When set to a function, it is called with an option as a parameter to retrieve the display string.
|
|
121
|
+
* When undefined, an option.toString() is used.
|
|
122
|
+
*/
|
|
123
|
+
displayField = (__runInitializers(this, _twoLine_extraInitializers), __runInitializers(this, _displayField_initializers, void 0));
|
|
124
|
+
displayFieldChanged() {
|
|
125
|
+
if (this.displayField instanceof Function) {
|
|
126
|
+
this.getDisplay = this.displayField;
|
|
127
|
+
}
|
|
128
|
+
else if (typeof this.displayField === 'string') {
|
|
129
|
+
this.getDisplay = option => option[this.displayField];
|
|
130
|
+
}
|
|
131
|
+
else {
|
|
132
|
+
this.getDisplay = option => option?.toString() ?? '';
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
getDisplay = (__runInitializers(this, _displayField_extraInitializers), option => option?.toString() ?? '');
|
|
136
|
+
/**
|
|
137
|
+
* Sets the way a value is set.
|
|
138
|
+
* When set to a string, the object property with such name is used.
|
|
139
|
+
* When set to a function, it is called with an option as a parameter to retrieve the value.
|
|
140
|
+
* When undefined, an option is used as a value.
|
|
141
|
+
*/
|
|
142
|
+
valueField = __runInitializers(this, _valueField_initializers, void 0);
|
|
143
|
+
valueFieldChanged() {
|
|
144
|
+
if (this.valueField instanceof Function) {
|
|
145
|
+
this.getValue = this.valueField;
|
|
146
|
+
}
|
|
147
|
+
else if (typeof this.valueField === 'string') {
|
|
148
|
+
this.getValue = option => option !== undefined ? option[this.valueField] : undefined;
|
|
149
|
+
}
|
|
150
|
+
else {
|
|
151
|
+
this.getValue = option => option;
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
getValue = (__runInitializers(this, _valueField_extraInitializers), option => option);
|
|
155
|
+
/**
|
|
156
|
+
* Sets the array of options to display.
|
|
157
|
+
* Can be an async function which returns an array.
|
|
158
|
+
*/
|
|
159
|
+
options = __runInitializers(this, _options_initializers, void 0);
|
|
160
|
+
optionsChanged() {
|
|
161
|
+
const shouldRefresh = this.getOptions !== undefined;
|
|
162
|
+
this.setGetOptions();
|
|
163
|
+
if (shouldRefresh) {
|
|
164
|
+
this.optionsArray = undefined;
|
|
165
|
+
this.value = undefined;
|
|
166
|
+
if (this.preloadOptions) {
|
|
167
|
+
this.loadOptions(false);
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
setGetOptions() {
|
|
172
|
+
if (this.options instanceof Function) {
|
|
173
|
+
this.getOptions = this.options;
|
|
174
|
+
}
|
|
175
|
+
else {
|
|
176
|
+
this.getOptions = this.getOptionsDefault;
|
|
177
|
+
}
|
|
178
|
+
}
|
|
179
|
+
/** Hoists the menu to document body */
|
|
180
|
+
hoistToBody = (__runInitializers(this, _options_extraInitializers), __runInitializers(this, _hoistToBody_initializers, void 0));
|
|
181
|
+
/** Sets the menu width to fit content */
|
|
182
|
+
naturalWidth = (__runInitializers(this, _hoistToBody_extraInitializers), __runInitializers(this, _naturalWidth_initializers, void 0));
|
|
183
|
+
/** The CSS class to set on the menu. Helps styling body hoisted menus */
|
|
184
|
+
menuClass = (__runInitializers(this, _naturalWidth_extraInitializers), __runInitializers(this, _menuClass_initializers, void 0));
|
|
185
|
+
getOptions = __runInitializers(this, _menuClass_extraInitializers);
|
|
186
|
+
async getOptionsDefault(filter, value) {
|
|
187
|
+
const options = this.options;
|
|
188
|
+
if (value !== undefined) {
|
|
189
|
+
return Promise.resolve([options.find(x => this.getValue(x) === value)]);
|
|
190
|
+
}
|
|
191
|
+
else {
|
|
192
|
+
return Promise.resolve(options.filter(x => this.getDisplay(x).toUpperCase().includes((filter || '').toUpperCase())));
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
/** The selected value */
|
|
196
|
+
value = __runInitializers(this, _value_initializers, void 0);
|
|
197
|
+
suppressValueChanged = __runInitializers(this, _value_extraInitializers);
|
|
198
|
+
async valueChanged() {
|
|
199
|
+
if (this.suppressValueChanged) {
|
|
200
|
+
this.suppressValueChanged = false;
|
|
201
|
+
return;
|
|
202
|
+
}
|
|
203
|
+
await this.updateFilterBasedOnValue();
|
|
204
|
+
this.root.dispatchEvent(new CustomEvent('change', { bubbles: true, detail: { value: this.value } }));
|
|
205
|
+
}
|
|
206
|
+
setValue(value) {
|
|
207
|
+
if (this.value === value) {
|
|
208
|
+
return;
|
|
209
|
+
}
|
|
210
|
+
this.suppressValueChanged = true;
|
|
211
|
+
this.value = value;
|
|
212
|
+
}
|
|
213
|
+
/** Sets debounce in milliseconds */
|
|
214
|
+
debounce = __runInitializers(this, _debounce_initializers, void 0);
|
|
215
|
+
/** Loads the options to the menu when attached */
|
|
216
|
+
preloadOptions = (__runInitializers(this, _debounce_extraInitializers), __runInitializers(this, _preloadOptions_initializers, void 0));
|
|
217
|
+
/** Enables a first option select on blur */
|
|
218
|
+
selectOnBlur = (__runInitializers(this, _preloadOptions_extraInitializers), __runInitializers(this, _selectOnBlur_initializers, void 0));
|
|
219
|
+
/** Enables an item selection on Tab press */
|
|
220
|
+
selectOnTab = (__runInitializers(this, _selectOnBlur_extraInitializers), __runInitializers(this, _selectOnTab_initializers, void 0));
|
|
221
|
+
/** TODO: Enables the options list virtualisation */
|
|
222
|
+
virtual = (__runInitializers(this, _selectOnTab_extraInitializers), __runInitializers(this, _virtual_initializers, void 0));
|
|
223
|
+
bound() {
|
|
224
|
+
this.valueFieldChanged();
|
|
225
|
+
this.displayFieldChanged();
|
|
226
|
+
this.setGetOptions();
|
|
227
|
+
}
|
|
228
|
+
async attached() {
|
|
229
|
+
if (this.input) {
|
|
230
|
+
inputEvents.forEach(x => this.input.addEventListener(x, this));
|
|
231
|
+
}
|
|
232
|
+
await this.updateFilterBasedOnValue();
|
|
233
|
+
if (!this.value && this.preloadOptions) {
|
|
234
|
+
await this.loadOptions(false);
|
|
235
|
+
}
|
|
236
|
+
bodyEvents.forEach(x => document.body.addEventListener(x, this));
|
|
237
|
+
}
|
|
238
|
+
detaching() {
|
|
239
|
+
if (this.input) {
|
|
240
|
+
inputEvents.forEach(x => this.input.removeEventListener(x, this));
|
|
241
|
+
}
|
|
242
|
+
bodyEvents.forEach(x => document.body.removeEventListener(x, this));
|
|
243
|
+
}
|
|
244
|
+
/** Opens lookup menu */
|
|
245
|
+
open() {
|
|
246
|
+
if (this.input?.disabled || this.input?.readOnly || this.menu.open || this.optionsArray === undefined && !this.searching && !this.errorMessage) {
|
|
247
|
+
return;
|
|
248
|
+
}
|
|
249
|
+
if (!this.naturalWidth) {
|
|
250
|
+
this.menu.root.style.width = `${this.input?.clientWidth}px`;
|
|
251
|
+
}
|
|
252
|
+
this.menu.open = true;
|
|
253
|
+
}
|
|
254
|
+
/** Closes lookup menu */
|
|
255
|
+
close() {
|
|
256
|
+
this.menu.open = false;
|
|
257
|
+
}
|
|
258
|
+
handleEvent(evt) {
|
|
259
|
+
switch (evt.currentTarget) {
|
|
260
|
+
case this.input:
|
|
261
|
+
switch (evt.type) {
|
|
262
|
+
case 'click':
|
|
263
|
+
this.open();
|
|
264
|
+
break;
|
|
265
|
+
case 'input':
|
|
266
|
+
this.filterChanged();
|
|
267
|
+
break;
|
|
268
|
+
case 'keydown':
|
|
269
|
+
this.onInputKeydown(evt);
|
|
270
|
+
break;
|
|
271
|
+
case 'blur':
|
|
272
|
+
this.onBlur();
|
|
273
|
+
break;
|
|
274
|
+
}
|
|
275
|
+
break;
|
|
276
|
+
case document.body:
|
|
277
|
+
switch (evt.type) {
|
|
278
|
+
case 'mousedown':
|
|
279
|
+
this.onBodyMousedown(evt);
|
|
280
|
+
break;
|
|
281
|
+
case 'touchstart':
|
|
282
|
+
this.onBodyMousedown(evt);
|
|
283
|
+
break;
|
|
284
|
+
case 'click':
|
|
285
|
+
this.handleBodyClick(evt);
|
|
286
|
+
break;
|
|
287
|
+
}
|
|
288
|
+
break;
|
|
289
|
+
}
|
|
290
|
+
}
|
|
291
|
+
debouncePromise = __runInitializers(this, _virtual_extraInitializers);
|
|
292
|
+
searchPromise;
|
|
293
|
+
async filterChanged() {
|
|
294
|
+
this.debouncePromise?.discard();
|
|
295
|
+
this.debouncePromise = new DiscardablePromise(new Promise(r => setTimeout(() => r(), this.debounce ?? 0)));
|
|
296
|
+
try {
|
|
297
|
+
await this.debouncePromise;
|
|
298
|
+
}
|
|
299
|
+
catch (e) {
|
|
300
|
+
return;
|
|
301
|
+
}
|
|
302
|
+
this.setValue(undefined);
|
|
303
|
+
this.searchPromise?.discard();
|
|
304
|
+
await this.loadOptions(this.input?.isFocused === true);
|
|
305
|
+
}
|
|
306
|
+
async loadOptions(open) {
|
|
307
|
+
this.searching = true;
|
|
308
|
+
this.errorMessage = undefined;
|
|
309
|
+
if (open) {
|
|
310
|
+
this.open();
|
|
311
|
+
}
|
|
312
|
+
this.optionsArray = undefined;
|
|
313
|
+
try {
|
|
314
|
+
this.searchPromise = new DiscardablePromise(this.getOptions(this.input?.value, undefined));
|
|
315
|
+
this.optionsArray = await this.searchPromise;
|
|
316
|
+
if (this.optionsArray === undefined) {
|
|
317
|
+
this.close();
|
|
318
|
+
}
|
|
319
|
+
}
|
|
320
|
+
catch (e) {
|
|
321
|
+
if (e !== DiscardablePromise.discarded) {
|
|
322
|
+
this.errorMessage = e.message;
|
|
323
|
+
this.optionsArray = undefined;
|
|
324
|
+
}
|
|
325
|
+
}
|
|
326
|
+
finally {
|
|
327
|
+
this.searching = false;
|
|
328
|
+
}
|
|
329
|
+
}
|
|
330
|
+
setFilter(filter) {
|
|
331
|
+
if (!this.input || this.input.value === filter) {
|
|
332
|
+
return;
|
|
333
|
+
}
|
|
334
|
+
this.input.value = filter ?? '';
|
|
335
|
+
}
|
|
336
|
+
async updateFilterBasedOnValue() {
|
|
337
|
+
if (this.value !== undefined) {
|
|
338
|
+
this.optionsArray = await this.getOptions(undefined, this.value);
|
|
339
|
+
}
|
|
340
|
+
else {
|
|
341
|
+
this.optionsArray = undefined;
|
|
342
|
+
}
|
|
343
|
+
if (this.optionsArray?.length) {
|
|
344
|
+
this.setFilter(this.getDisplay(this.optionsArray[0]));
|
|
345
|
+
}
|
|
346
|
+
else {
|
|
347
|
+
this.setFilter(undefined);
|
|
348
|
+
}
|
|
349
|
+
}
|
|
350
|
+
handleMenuItemAction(evt) {
|
|
351
|
+
this.select(evt.detail.data);
|
|
352
|
+
}
|
|
353
|
+
select(option) {
|
|
354
|
+
this.value = this.getValue(option);
|
|
355
|
+
this.close();
|
|
356
|
+
this.input?.focus();
|
|
357
|
+
}
|
|
358
|
+
suppressBlur;
|
|
359
|
+
async onBlur() {
|
|
360
|
+
if (this.suppressBlur) {
|
|
361
|
+
this.suppressBlur = false;
|
|
362
|
+
return;
|
|
363
|
+
}
|
|
364
|
+
if (this.selectOnBlur && this.optionsArray?.length && this.value === undefined) {
|
|
365
|
+
this.value = this.getValue(this.optionsArray[0]);
|
|
366
|
+
}
|
|
367
|
+
this.close();
|
|
368
|
+
// re-emit on root
|
|
369
|
+
if (this.debouncePromise !== undefined) {
|
|
370
|
+
await this.debouncePromise;
|
|
371
|
+
}
|
|
372
|
+
this.root.dispatchEvent(new CustomEvent('blur'));
|
|
373
|
+
this.root.dispatchEvent(new CustomEvent('focusout'));
|
|
374
|
+
}
|
|
375
|
+
onInputKeydown(evt) {
|
|
376
|
+
switch (evt.code) {
|
|
377
|
+
case 'ArrowDown':
|
|
378
|
+
if (!this.menu.open) {
|
|
379
|
+
this.open();
|
|
380
|
+
}
|
|
381
|
+
this.suppressBlur = true;
|
|
382
|
+
this.menu.list_?.foundation?.focusFirstElement();
|
|
383
|
+
break;
|
|
384
|
+
case 'ArrowUp':
|
|
385
|
+
if (!this.menu.open) {
|
|
386
|
+
this.open();
|
|
387
|
+
}
|
|
388
|
+
this.suppressBlur = true;
|
|
389
|
+
this.menu.list_?.foundation?.focusLastElement();
|
|
390
|
+
break;
|
|
391
|
+
case 'Space':
|
|
392
|
+
if (evt.ctrlKey) {
|
|
393
|
+
if (this.menu.open) {
|
|
394
|
+
this.close();
|
|
395
|
+
}
|
|
396
|
+
else {
|
|
397
|
+
this.loadOptions(true);
|
|
398
|
+
}
|
|
399
|
+
}
|
|
400
|
+
break;
|
|
401
|
+
}
|
|
402
|
+
}
|
|
403
|
+
onBodyMousedown(evt) {
|
|
404
|
+
// this is needed to prevent text field label jumping
|
|
405
|
+
if (closest(evt.target, 'mdc-menu')) {
|
|
406
|
+
evt.preventDefault();
|
|
407
|
+
}
|
|
408
|
+
return true;
|
|
409
|
+
}
|
|
410
|
+
handleBodyClick(evt) {
|
|
411
|
+
if (!closest(evt.target, 'mdc-menu') && !evt.target.classList.contains('mdc-text-field') && !evt.target.classList.contains('mdc-text-field__input')) {
|
|
412
|
+
this.menuSurface.foundation?.handleBodyClick(evt);
|
|
413
|
+
}
|
|
414
|
+
}
|
|
415
|
+
handleMenuKeydown(event) {
|
|
416
|
+
if (this.hoistToBody && (event.key === 'Tab' || event.keyCode === 9)) {
|
|
417
|
+
this.input?.focus();
|
|
418
|
+
}
|
|
419
|
+
return true;
|
|
420
|
+
}
|
|
421
|
+
addError(error) {
|
|
422
|
+
if (this.input && Object.getOwnPropertyDescriptor(this.input, 'addError')) {
|
|
423
|
+
this.input.addError(error);
|
|
424
|
+
}
|
|
425
|
+
}
|
|
426
|
+
removeError(error) {
|
|
427
|
+
if (this.input && Object.getOwnPropertyDescriptor(this.input, 'addError')) {
|
|
428
|
+
this.input.removeError(error);
|
|
429
|
+
}
|
|
430
|
+
}
|
|
431
|
+
renderErrors() {
|
|
432
|
+
if (this.input && Object.getOwnPropertyDescriptor(this.input, 'renderErrors')) {
|
|
433
|
+
this.input.renderErrors();
|
|
434
|
+
}
|
|
435
|
+
}
|
|
436
|
+
};
|
|
437
|
+
return MdcLookup = _classThis;
|
|
438
|
+
})();
|
|
439
|
+
export { MdcLookup };
|
|
440
|
+
function defineMdcLookupElementApis(element) {
|
|
441
|
+
Object.defineProperties(element, {
|
|
442
|
+
addError: {
|
|
443
|
+
value(error) {
|
|
444
|
+
CustomElement.for(this).viewModel.addError(error);
|
|
445
|
+
},
|
|
446
|
+
configurable: true
|
|
447
|
+
},
|
|
448
|
+
removeError: {
|
|
449
|
+
value(error) {
|
|
450
|
+
CustomElement.for(this).viewModel.removeError(error);
|
|
451
|
+
},
|
|
452
|
+
configurable: true
|
|
453
|
+
},
|
|
454
|
+
renderErrors: {
|
|
455
|
+
value() {
|
|
456
|
+
CustomElement.for(this).viewModel.renderErrors();
|
|
457
|
+
},
|
|
458
|
+
configurable: true
|
|
459
|
+
},
|
|
460
|
+
});
|
|
461
|
+
}
|
|
462
|
+
//# sourceMappingURL=mdc-lookup.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mdc-lookup.js","sourceRoot":"","sources":["../../src/lookup/mdc-lookup.ts"],"names":[],"mappings":"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","sourcesContent":["import { customElement, inject, bindable, BindingMode, CustomElement } from 'aurelia';\nimport { DiscardablePromise } from './discardable-promise';\nimport { MdcDefaultLookupConfiguration } from './mdc-lookup-configuration';\nimport { IValidatedElement, IError, booleanAttr, number } from '../base';\nimport { closest } from '@material/dom/ponyfill';\nimport template from './mdc-lookup.html?raw';\nimport { MdcMenuSurface } from '../menu-surface/mdc-menu-surface';\nimport { MdcMenu, IMdcMenuItemComponentEvent } from '../menu/mdc-menu';\n\nconst inputEvents = ['click', 'input', 'keydown', 'blur'];\nconst bodyEvents = ['touchstart', 'mousedown', 'click'];\n\n/**\n * @selector mdc-lookup\n */\n@inject(Element, MdcDefaultLookupConfiguration)\n@customElement({ name: 'mdc-lookup', template })\nexport class MdcLookup implements EventListenerObject {\n constructor(private root: HTMLElement, private defaultConfiguration: MdcDefaultLookupConfiguration) {\n this.debounce = this.defaultConfiguration.debounce;\n defineMdcLookupElementApis(this.root);\n }\n\n private menuSurface: MdcMenuSurface;\n public isWrapperOpen: boolean = false;\n public optionsArray?: unknown[];\n public focusedOption: unknown = undefined;\n public searching: boolean = false;\n public errorMessage: string | undefined = undefined;\n public notFound: boolean = false;\n public menu: MdcMenu;\n\n /** Reference to the input */\n @bindable()\n public input?: HTMLInputElement & { isFocused: boolean };\n\n /** Sets the menu list to have two lines */\n @bindable({ set: booleanAttr })\n twoLine: boolean;\n\n /**\n * Sets the way an option is displayed in the input element.\n * When set to a string, the object property with such name is used.\n * When set to a function, it is called with an option as a parameter to retrieve the display string.\n * When undefined, an option.toString() is used.\n */\n @bindable()\n displayField: string | undefined | ((option: unknown) => string);\n displayFieldChanged() {\n if (this.displayField instanceof Function) {\n this.getDisplay = this.displayField;\n } else if (typeof this.displayField === 'string') {\n this.getDisplay = option => (option as Record<string, string>)[this.displayField as string];\n } else {\n this.getDisplay = option => (option as Record<string, unknown>)?.toString() ?? '';\n }\n }\n\n getDisplay: (option: unknown) => string = option => (option as Record<string, unknown>)?.toString() ?? '';\n\n /**\n * Sets the way a value is set.\n * When set to a string, the object property with such name is used.\n * When set to a function, it is called with an option as a parameter to retrieve the value.\n * When undefined, an option is used as a value.\n */\n @bindable()\n valueField: string | undefined | ((option: unknown) => unknown);\n valueFieldChanged() {\n if (this.valueField instanceof Function) {\n this.getValue = this.valueField;\n } else if (typeof this.valueField === 'string') {\n this.getValue = option => option !== undefined ? (option as Record<string, unknown>)[this.valueField as string] : undefined;\n } else {\n this.getValue = option => option;\n }\n }\n\n getValue: (option: unknown) => unknown = option => option;\n\n /**\n * Sets the array of options to display.\n * Can be an async function which returns an array.\n */\n @bindable()\n options: unknown[] | undefined | ((filter: string, value: unknown) => Promise<unknown[]>);\n optionsChanged() {\n const shouldRefresh = this.getOptions !== undefined;\n this.setGetOptions();\n if (shouldRefresh) {\n this.optionsArray = undefined;\n this.value = undefined;\n if (this.preloadOptions) {\n this.loadOptions(false);\n }\n }\n }\n\n setGetOptions() {\n if (this.options instanceof Function) {\n this.getOptions = this.options;\n } else {\n this.getOptions = this.getOptionsDefault;\n }\n }\n\n /** Hoists the menu to document body */\n @bindable({ set: booleanAttr, mode: BindingMode.oneTime })\n hoistToBody: boolean;\n\n /** Sets the menu width to fit content */\n @bindable({ set: booleanAttr })\n naturalWidth: boolean;\n\n /** The CSS class to set on the menu. Helps styling body hoisted menus */\n @bindable()\n menuClass: string;\n\n getOptions: (filter: string | undefined, value: unknown) => Promise<unknown[]>;\n\n async getOptionsDefault(filter: string, value: unknown): Promise<unknown[]> {\n const options = this.options as unknown[];\n if (value !== undefined) {\n return Promise.resolve([options.find(x => this.getValue(x) === value)]);\n } else {\n return Promise.resolve(options.filter(x => this.getDisplay(x).toUpperCase().includes((filter || '').toUpperCase())));\n }\n }\n\n /** The selected value */\n @bindable({ mode: BindingMode.twoWay })\n value: unknown;\n suppressValueChanged: boolean;\n async valueChanged() {\n if (this.suppressValueChanged) {\n this.suppressValueChanged = false;\n return;\n }\n await this.updateFilterBasedOnValue();\n this.root.dispatchEvent(new CustomEvent('change', { bubbles: true, detail: { value: this.value } }));\n }\n setValue(value: unknown) {\n if (this.value === value) {\n return;\n }\n this.suppressValueChanged = true;\n this.value = value;\n }\n\n /** Sets debounce in milliseconds */\n @bindable({ set: number })\n debounce: number;\n\n /** Loads the options to the menu when attached */\n @bindable({ set: booleanAttr })\n preloadOptions: boolean;\n\n /** Enables a first option select on blur */\n @bindable({ set: booleanAttr })\n selectOnBlur: boolean;\n\n /** Enables an item selection on Tab press */\n @bindable({ set: booleanAttr })\n selectOnTab: boolean;\n\n /** TODO: Enables the options list virtualisation */\n @bindable({ set: booleanAttr })\n virtual: boolean;\n\n bound() {\n this.valueFieldChanged();\n this.displayFieldChanged();\n this.setGetOptions();\n }\n\n async attached() {\n if (this.input) {\n inputEvents.forEach(x => this.input!.addEventListener(x, this));\n }\n await this.updateFilterBasedOnValue();\n if (!this.value && this.preloadOptions) {\n await this.loadOptions(false);\n }\n bodyEvents.forEach(x => document.body.addEventListener(x, this));\n }\n\n detaching() {\n if (this.input) {\n inputEvents.forEach(x => this.input!.removeEventListener(x, this));\n }\n bodyEvents.forEach(x => document.body.removeEventListener(x, this));\n }\n\n /** Opens lookup menu */\n open() {\n if (this.input?.disabled || this.input?.readOnly || this.menu.open || this.optionsArray === undefined && !this.searching && !this.errorMessage) {\n return;\n }\n if (!this.naturalWidth) {\n this.menu.root.style.width = `${this.input?.clientWidth}px`;\n }\n this.menu.open = true;\n }\n\n /** Closes lookup menu */\n close() {\n this.menu.open = false;\n }\n\n handleEvent(evt: Event): void {\n switch (evt.currentTarget) {\n case this.input:\n switch (evt.type) {\n case 'click': this.open(); break;\n case 'input': this.filterChanged(); break;\n case 'keydown': this.onInputKeydown(evt as KeyboardEvent); break;\n case 'blur': this.onBlur(); break;\n }\n break;\n case document.body:\n switch (evt.type) {\n case 'mousedown': this.onBodyMousedown(evt as MouseEvent); break;\n case 'touchstart': this.onBodyMousedown(evt as TouchEvent); break;\n case 'click': this.handleBodyClick(evt as MouseEvent); break;\n }\n break;\n }\n }\n\n debouncePromise: DiscardablePromise<void>;\n searchPromise: DiscardablePromise<unknown[]>;\n async filterChanged() {\n this.debouncePromise?.discard();\n this.debouncePromise = new DiscardablePromise(new Promise(r => setTimeout(() => r(), this.debounce ?? 0)));\n try {\n await this.debouncePromise;\n } catch (e) {\n return;\n }\n this.setValue(undefined);\n this.searchPromise?.discard();\n await this.loadOptions(this.input?.isFocused === true);\n }\n\n async loadOptions(open: boolean) {\n this.searching = true;\n this.errorMessage = undefined;\n if (open) {\n this.open();\n }\n this.optionsArray = undefined;\n try {\n this.searchPromise = new DiscardablePromise(this.getOptions(this.input?.value, undefined));\n this.optionsArray = await this.searchPromise;\n if (this.optionsArray === undefined) {\n this.close();\n }\n } catch (e) {\n if (e !== DiscardablePromise.discarded) {\n this.errorMessage = e.message;\n this.optionsArray = undefined;\n }\n } finally {\n this.searching = false;\n }\n }\n\n setFilter(filter: string | undefined) {\n if (!this.input || this.input.value === filter) {\n return;\n }\n this.input.value = filter ?? '';\n }\n\n async updateFilterBasedOnValue() {\n if (this.value !== undefined) {\n this.optionsArray = await this.getOptions(undefined, this.value);\n } else {\n this.optionsArray = undefined;\n }\n if (this.optionsArray?.length) {\n this.setFilter(this.getDisplay(this.optionsArray[0]));\n } else {\n this.setFilter(undefined);\n }\n }\n\n handleMenuItemAction(evt: IMdcMenuItemComponentEvent) {\n this.select(evt.detail.data);\n }\n\n select(option: unknown) {\n this.value = this.getValue(option);\n this.close();\n this.input?.focus();\n }\n\n suppressBlur: boolean;\n async onBlur() {\n if (this.suppressBlur) {\n this.suppressBlur = false;\n return;\n }\n if (this.selectOnBlur && this.optionsArray?.length && this.value === undefined) {\n this.value = this.getValue(this.optionsArray[0]);\n }\n this.close();\n // re-emit on root\n if (this.debouncePromise !== undefined) {\n await this.debouncePromise;\n }\n this.root.dispatchEvent(new CustomEvent('blur'));\n this.root.dispatchEvent(new CustomEvent('focusout'));\n }\n\n onInputKeydown(evt: KeyboardEvent) {\n switch (evt.code) {\n case 'ArrowDown': if (!this.menu.open) {\n this.open();\n }\n this.suppressBlur = true;\n this.menu.list_?.foundation?.focusFirstElement();\n break;\n case 'ArrowUp':\n if (!this.menu.open) {\n this.open();\n }\n this.suppressBlur = true;\n this.menu.list_?.foundation?.focusLastElement();\n break;\n case 'Space':\n if (evt.ctrlKey) {\n if (this.menu.open) {\n this.close();\n } else {\n this.loadOptions(true);\n }\n }\n break;\n }\n }\n\n onBodyMousedown(evt: MouseEvent | TouchEvent) {\n // this is needed to prevent text field label jumping\n if (closest(evt.target as HTMLElement, 'mdc-menu')) {\n evt.preventDefault();\n }\n return true;\n }\n\n handleBodyClick(evt: MouseEvent) {\n if (!closest(evt.target as HTMLElement, 'mdc-menu') && !(evt.target as HTMLElement).classList.contains('mdc-text-field') && !(evt.target as HTMLElement).classList.contains('mdc-text-field__input')) {\n this.menuSurface.foundation?.handleBodyClick(evt);\n }\n }\n\n handleMenuKeydown(event: KeyboardEvent) {\n if (this.hoistToBody && (event.key === 'Tab' || event.keyCode === 9)) {\n this.input?.focus();\n }\n return true;\n }\n\n addError(error: IError) {\n if (this.input && Object.getOwnPropertyDescriptor(this.input, 'addError')) {\n (this.input as HTMLElement as IValidatedElement).addError(error);\n }\n }\n\n removeError(error: IError) {\n if (this.input && Object.getOwnPropertyDescriptor(this.input, 'addError')) {\n (this.input as HTMLElement as IValidatedElement).removeError(error);\n }\n }\n\n renderErrors() {\n if (this.input && Object.getOwnPropertyDescriptor(this.input, 'renderErrors')) {\n (this.input as HTMLElement as IValidatedElement).renderErrors();\n }\n }\n}\n\n/** @hidden */\nexport interface IMdcLookupElement extends IValidatedElement {\n $au: {\n 'au:resource:custom-element': {\n viewModel: MdcLookup;\n };\n };\n}\n\nfunction defineMdcLookupElementApis(element: HTMLElement) {\n Object.defineProperties(element, {\n addError: {\n value(this: IMdcLookupElement, error: IError) {\n CustomElement.for<MdcLookup>(this).viewModel.addError(error);\n },\n configurable: true\n },\n removeError: {\n value(this: IMdcLookupElement, error: IError) {\n CustomElement.for<MdcLookup>(this).viewModel.removeError(error);\n },\n configurable: true\n },\n renderErrors: {\n value(this: IMdcLookupElement): void {\n CustomElement.for<MdcLookup>(this).viewModel.renderErrors();\n },\n configurable: true\n },\n });\n}\n"]}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { MdcDefaultLookupConfiguration } from './lookup/mdc-lookup-configuration';
|
|
2
|
+
import { MdcDefaultSelectConfiguration } from './select/mdc-default-select-configuration';
|
|
3
|
+
import { MdcDefaultTextFieldConfiguration } from './text-field/mdc-default-text-field-configuration';
|
|
4
|
+
import { MdcDefaultTooltipConfiguration } from './tooltip/mdc-default-tooltip-configuration';
|
|
5
|
+
export class MdcConfiguration {
|
|
6
|
+
lookup = new MdcDefaultLookupConfiguration();
|
|
7
|
+
select = new MdcDefaultSelectConfiguration();
|
|
8
|
+
textField = new MdcDefaultTextFieldConfiguration();
|
|
9
|
+
tooltip = new MdcDefaultTooltipConfiguration();
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=mdc-configuration.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mdc-configuration.js","sourceRoot":"","sources":["../src/mdc-configuration.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,6BAA6B,EAAE,MAAM,mCAAmC,CAAC;AAClF,OAAO,EAAE,6BAA6B,EAAE,MAAM,2CAA2C,CAAC;AAC1F,OAAO,EAAE,gCAAgC,EAAE,MAAM,mDAAmD,CAAC;AACrG,OAAO,EAAE,8BAA8B,EAAE,MAAM,6CAA6C,CAAC;AAE7F,MAAM,OAAO,gBAAgB;IAC3B,MAAM,GAAkC,IAAI,6BAA6B,EAAE,CAAC;IAC5E,MAAM,GAAkC,IAAI,6BAA6B,EAAE,CAAC;IAC5E,SAAS,GAAqC,IAAI,gCAAgC,EAAE,CAAC;IACrF,OAAO,GAAmC,IAAI,8BAA8B,EAAE,CAAC;CAChF","sourcesContent":["import { MdcDefaultLookupConfiguration } from './lookup/mdc-lookup-configuration';\nimport { MdcDefaultSelectConfiguration } from './select/mdc-default-select-configuration';\nimport { MdcDefaultTextFieldConfiguration } from './text-field/mdc-default-text-field-configuration';\nimport { MdcDefaultTooltipConfiguration } from './tooltip/mdc-default-tooltip-configuration';\n\nexport class MdcConfiguration {\n lookup: MdcDefaultLookupConfiguration = new MdcDefaultLookupConfiguration();\n select: MdcDefaultSelectConfiguration = new MdcDefaultSelectConfiguration();\n textField: MdcDefaultTextFieldConfiguration = new MdcDefaultTextFieldConfiguration();\n tooltip: MdcDefaultTooltipConfiguration = new MdcDefaultTooltipConfiguration();\n}\n\n"]}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { __esDecorate, __runInitializers } from "tslib";
|
|
2
|
+
import { customAttribute, inject } from 'aurelia';
|
|
3
|
+
let MdcMenuSelectionGroupIcon = (() => {
|
|
4
|
+
let _classDecorators = [inject(Element), customAttribute('mdc-menu-selection-group-icon')];
|
|
5
|
+
let _classDescriptor;
|
|
6
|
+
let _classExtraInitializers = [];
|
|
7
|
+
let _classThis;
|
|
8
|
+
var MdcMenuSelectionGroupIcon = class {
|
|
9
|
+
static { _classThis = this; }
|
|
10
|
+
static {
|
|
11
|
+
const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(null) : void 0;
|
|
12
|
+
__esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
|
|
13
|
+
MdcMenuSelectionGroupIcon = _classThis = _classDescriptor.value;
|
|
14
|
+
if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
|
|
15
|
+
__runInitializers(_classThis, _classExtraInitializers);
|
|
16
|
+
}
|
|
17
|
+
root;
|
|
18
|
+
constructor(root) {
|
|
19
|
+
this.root = root;
|
|
20
|
+
}
|
|
21
|
+
attached() {
|
|
22
|
+
this.root.classList.add('mdc-menu__selection-group-icon');
|
|
23
|
+
}
|
|
24
|
+
};
|
|
25
|
+
return MdcMenuSelectionGroupIcon = _classThis;
|
|
26
|
+
})();
|
|
27
|
+
export { MdcMenuSelectionGroupIcon };
|
|
28
|
+
//# sourceMappingURL=mdc-menu-selection-group-icon.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mdc-menu-selection-group-icon.js","sourceRoot":"","sources":["../../src/menu/mdc-menu-selection-group-icon.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;IAIrC,yBAAyB;4BAFrC,MAAM,CAAC,OAAO,CAAC,EACf,eAAe,CAAC,+BAA+B,CAAC;;;;;;;;YACjD,6KAMC;;;YANY,uDAAyB;;QAChB,IAAI;QAAxB,YAAoB,IAAiB;YAAjB,SAAI,GAAJ,IAAI,CAAa;QAAI,CAAC;QAE1C,QAAQ;YACN,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;QAC5D,CAAC;;;;SALU,yBAAyB","sourcesContent":["import { customAttribute, inject } from 'aurelia';\n\n@inject(Element)\n@customAttribute('mdc-menu-selection-group-icon')\nexport class MdcMenuSelectionGroupIcon {\n constructor(private root: HTMLElement) { }\n\n attached() {\n this.root.classList.add('mdc-menu__selection-group-icon');\n }\n}\n"]}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { __esDecorate, __runInitializers } from "tslib";
|
|
2
|
+
import { customElement } from 'aurelia';
|
|
3
|
+
let MdcMenuSelectionGroup = (() => {
|
|
4
|
+
let _classDecorators = [customElement({ name: 'mdc-menu-selection-group', template: '<template class="mdc-menu__selection-group"><au-slot></au-slot></template>' })];
|
|
5
|
+
let _classDescriptor;
|
|
6
|
+
let _classExtraInitializers = [];
|
|
7
|
+
let _classThis;
|
|
8
|
+
var MdcMenuSelectionGroup = class {
|
|
9
|
+
static { _classThis = this; }
|
|
10
|
+
static {
|
|
11
|
+
const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(null) : void 0;
|
|
12
|
+
__esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
|
|
13
|
+
MdcMenuSelectionGroup = _classThis = _classDescriptor.value;
|
|
14
|
+
if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
|
|
15
|
+
__runInitializers(_classThis, _classExtraInitializers);
|
|
16
|
+
}
|
|
17
|
+
};
|
|
18
|
+
return MdcMenuSelectionGroup = _classThis;
|
|
19
|
+
})();
|
|
20
|
+
export { MdcMenuSelectionGroup };
|
|
21
|
+
//# sourceMappingURL=mdc-menu-selection-group.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mdc-menu-selection-group.js","sourceRoot":"","sources":["../../src/menu/mdc-menu-selection-group.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;IAG3B,qBAAqB;4BADjC,aAAa,CAAC,EAAE,IAAI,EAAE,0BAA0B,EAAE,QAAQ,EAAE,4EAA4E,EAAE,CAAC;;;;;;;;YAC5I,6KAAsC;;;YAAzB,uDAAqB;;;;;SAArB,qBAAqB","sourcesContent":["import { customElement } from 'aurelia';\n\n@customElement({ name: 'mdc-menu-selection-group', template: '<template class=\"mdc-menu__selection-group\"><au-slot></au-slot></template>' })\nexport class MdcMenuSelectionGroup { }\n"]}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
<template class="mdc-menu"
|
|
2
|
+
mdc-menu-surface="fixed.bind: fixed; anchor-corner.bind: anchorCorner; anchor-margin.bind: anchorMargin; hoist-to-body.bind: hoistToBody; anchor.bind: anchor; quick-open.bind: quickOpen; max-height.bind: maxHeight; open-bottom-bias.bind: openBottomBias; stay-open.bind: stayOpen"
|
|
3
|
+
mdc-menu-surface.ref="menuSurface" keydown.trigger="handleKeydown_($event)"
|
|
4
|
+
mdcmenusurface:opened.trigger="handleMenuSurfaceOpened_()" mdclist:action.trigger="handleItemAction_($event)">
|
|
5
|
+
<au-slot></au-slot>
|
|
6
|
+
</template>
|