@aurelia-mdc-web/all 9.3.2-au2 → 9.3.3-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/alert/alert-configuration.js.map +1 -0
- package/dist/alert/alert-modal/alert-modal.js.map +1 -0
- package/dist/alert/alert-modal/i-alert-modal-payload.js.map +1 -0
- package/dist/alert/alert-service.js.map +1 -0
- package/dist/alert/decorators/confirm-action.js.map +1 -0
- package/dist/alert/decorators/using-progress.js.map +1 -0
- package/dist/alert/exceptions-tracker.js.map +1 -0
- package/dist/alert/global-progress/global-progress.js.map +1 -0
- package/dist/alert/prompt-dialog/prompt-dialog.js.map +1 -0
- package/dist/banner/mdc-banner.js.map +1 -0
- package/dist/base/attributes/mdc-focus-trap.js.map +1 -0
- package/dist/base/elements/i-validated-element.js.map +1 -0
- package/dist/base/elements/mdc-promisify-reference.js.map +1 -0
- package/dist/base/index.js.map +1 -0
- package/dist/base/interceptors.js.map +1 -0
- package/dist/base/material-palette.js.map +1 -0
- package/dist/base/mdc-component.js.map +1 -0
- package/dist/base/next-element.js.map +1 -0
- package/dist/button/enhance-mdc-button.js.map +1 -0
- package/dist/button/mdc-button-label.js.map +1 -0
- package/dist/button/mdc-button.js.map +1 -0
- package/dist/card/mdc-card-action-buttons.js.map +1 -0
- package/dist/card/mdc-card-action-icons.js.map +1 -0
- package/dist/card/mdc-card-actions/mdc-card-actions.js.map +1 -0
- package/dist/card/mdc-card-media/mdc-card-media.js.map +1 -0
- package/dist/card/mdc-card-primary-action.js.map +1 -0
- package/dist/card/mdc-card.js.map +1 -0
- package/dist/checkbox/mdc-checkbox.js.map +1 -0
- package/dist/chips/mdc-chip/mdc-chip.js.map +1 -0
- package/dist/chips/mdc-chip-action/enhance-mdc-chip-action.js.map +1 -0
- package/dist/chips/mdc-chip-action/mdc-chip-action.js.map +1 -0
- package/dist/chips/mdc-chip-set/mdc-chip-set.js.map +1 -0
- package/dist/circular-progress/mdc-circular-progress.js.map +1 -0
- package/dist/data-table/mdc-data-table-row.js.map +1 -0
- package/dist/data-table/mdc-data-table.js.map +1 -0
- package/dist/dialog/mdc-dialog-actions.js.map +1 -0
- package/dist/dialog/mdc-dialog-content.js.map +1 -0
- package/dist/dialog/mdc-dialog-service.js.map +1 -0
- package/dist/dialog/mdc-dialog-title.js.map +1 -0
- package/dist/dialog/mdc-dialog.js.map +1 -0
- package/dist/drawer/mdc-drawer-app-content.js.map +1 -0
- package/dist/drawer/mdc-drawer-content.js.map +1 -0
- package/dist/drawer/mdc-drawer-header/mdc-drawer-header.js.map +1 -0
- package/dist/drawer/mdc-drawer.js.map +1 -0
- package/dist/elevation/mdc-elevation.js.map +1 -0
- package/dist/expandable/mdc-expandable.js.map +1 -0
- package/dist/fab/enhance-mdc-fab.js.map +1 -0
- package/dist/fab/mdc-fab-icon.js.map +1 -0
- package/dist/fab/mdc-fab.js.map +1 -0
- package/dist/floating-label/mdc-floating-label.js.map +1 -0
- package/dist/form-field/mdc-form-field.js.map +1 -0
- package/dist/icon/mdc-icon.js.map +1 -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.js.map +1 -0
- package/dist/icon-button/mdc-icon-button.js.map +1 -0
- package/dist/image-list/mdc-image-list-item/mdc-image-list-item.js.map +1 -0
- package/dist/image-list/mdc-image-list.js.map +1 -0
- package/dist/index.js.map +1 -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.map +1 -0
- package/dist/layout-grid/mdc-layout-grid.js.map +1 -0
- package/dist/line-ripple/mdc-line-ripple.js.map +1 -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.js.map +1 -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.map +1 -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.map +1 -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.map +1 -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.js.map +1 -0
- package/dist/list/mdc-list-divider/mdc-list-divider.js.map +1 -0
- package/dist/list/mdc-list-group.js.map +1 -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.map +1 -0
- package/dist/list/mdc-list-item/mdc-list-item-trailing.js.map +1 -0
- package/dist/list/mdc-list-item/mdc-list-item.js.map +1 -0
- package/dist/list/mdc-list-item-overline-text.js.map +1 -0
- package/dist/list/mdc-list-item-primary-text.js.map +1 -0
- package/dist/list/mdc-list-item-secondary-text.js.map +1 -0
- package/dist/list/mdc-list.js.map +1 -0
- package/dist/lookup/discardable-promise.js.map +1 -0
- package/dist/lookup/mdc-lookup-configuration.js.map +1 -0
- package/dist/lookup/mdc-lookup.js.map +1 -0
- package/dist/mdc-configuration.js.map +1 -0
- package/dist/menu/mdc-menu-selection-group-icon.js.map +1 -0
- package/dist/menu/mdc-menu-selection-group.js.map +1 -0
- package/dist/menu/mdc-menu.js.map +1 -0
- package/dist/menu-surface/mdc-menu-surface-anchor.js.map +1 -0
- package/dist/menu-surface/mdc-menu-surface.js.map +1 -0
- package/dist/notched-outline/mdc-notched-outline.js.map +1 -0
- package/dist/radio/mdc-radio.js.map +1 -0
- package/dist/ripple/mdc-ripple.js.map +1 -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.js.map +1 -0
- package/dist/segmented-button/mdc-segmented-button.js.map +1 -0
- package/dist/select/mdc-default-select-configuration.js.map +1 -0
- package/dist/select/mdc-select-adapter-aurelia.js.map +1 -0
- package/dist/select/mdc-select-foundation-aurelia.js.map +1 -0
- package/dist/select/mdc-select-helper-text/mdc-select-helper-text.js.map +1 -0
- package/dist/select/mdc-select-icon.js.map +1 -0
- package/dist/select/mdc-select-value-observer.js.map +1 -0
- package/dist/select/mdc-select.js.map +1 -0
- package/dist/slider/mdc-slider-foundation-aurelia.js.map +1 -0
- package/dist/slider/mdc-slider.js.map +1 -0
- package/dist/snackbar/mdc-snackbar-service.js.map +1 -0
- package/dist/snackbar/mdc-snackbar.js.map +1 -0
- package/dist/switch/enhance-mdc-switch.js.map +1 -0
- package/dist/switch/mdc-switch.js.map +1 -0
- package/dist/tab-bar/indicator/mdc-tab-indicator.js.map +1 -0
- package/dist/tab-bar/mdc-tab-bar.js.map +1 -0
- package/dist/tab-bar/scroller/mdc-tab-scroller.js.map +1 -0
- package/dist/tab-bar/tab/mdc-tab.js.map +1 -0
- package/dist/text-field/enhance-mdc-text-field.js.map +1 -0
- package/dist/text-field/mdc-default-text-field-configuration.js.map +1 -0
- package/dist/text-field/mdc-inputmask.js.map +1 -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.js.map +1 -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.map +1 -0
- package/dist/text-field/mdc-text-field.js.map +1 -0
- package/dist/tooltip/mdc-default-tooltip-configuration.js.map +1 -0
- package/dist/tooltip/mdc-tooltip-attribute.js.map +1 -0
- package/dist/tooltip/mdc-tooltip.js.map +1 -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.map +1 -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.map +1 -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.js.map +1 -0
- package/dist/top-app-bar/mdc-top-app-bar-title.js.map +1 -0
- package/dist/top-app-bar/mdc-top-app-bar.js.map +1 -0
- package/dist/tree-view/i-tree-node.js.map +1 -0
- package/dist/tree-view/mdc-tree-node-meta.js.map +1 -0
- package/dist/tree-view/mdc-tree-node.js.map +1 -0
- package/dist/tree-view/mdc-tree-view.js.map +1 -0
- package/dist/tree-view/node-filter.js.map +1 -0
- package/dist/typography/mdc-typography.js.map +1 -0
- package/dist/validation/mdc-validation-controller-factory.js.map +1 -0
- package/dist/validation/mdc-validation-result-presenter.js.map +1 -0
- package/dist/validation/validate.js.map +1 -0
- package/package.json +1 -1
- package/dist/src/alert/alert-configuration.js.map +0 -1
- package/dist/src/alert/alert-modal/alert-modal.js.map +0 -1
- package/dist/src/alert/alert-modal/i-alert-modal-payload.js.map +0 -1
- package/dist/src/alert/alert-service.js.map +0 -1
- package/dist/src/alert/decorators/confirm-action.js.map +0 -1
- package/dist/src/alert/decorators/using-progress.js.map +0 -1
- package/dist/src/alert/exceptions-tracker.js.map +0 -1
- package/dist/src/alert/global-progress/global-progress.js.map +0 -1
- package/dist/src/alert/prompt-dialog/prompt-dialog.js.map +0 -1
- package/dist/src/banner/mdc-banner.js.map +0 -1
- package/dist/src/base/attributes/mdc-focus-trap.js.map +0 -1
- package/dist/src/base/elements/i-validated-element.js.map +0 -1
- package/dist/src/base/elements/mdc-promisify-reference.js.map +0 -1
- package/dist/src/base/index.js.map +0 -1
- package/dist/src/base/interceptors.js.map +0 -1
- package/dist/src/base/material-palette.js.map +0 -1
- package/dist/src/base/mdc-component.js.map +0 -1
- package/dist/src/base/next-element.js.map +0 -1
- package/dist/src/button/enhance-mdc-button.js.map +0 -1
- package/dist/src/button/mdc-button-label.js.map +0 -1
- package/dist/src/button/mdc-button.js.map +0 -1
- package/dist/src/card/mdc-card-action-buttons.js.map +0 -1
- package/dist/src/card/mdc-card-action-icons.js.map +0 -1
- package/dist/src/card/mdc-card-actions/mdc-card-actions.js.map +0 -1
- package/dist/src/card/mdc-card-media/mdc-card-media.js.map +0 -1
- package/dist/src/card/mdc-card-primary-action.js.map +0 -1
- package/dist/src/card/mdc-card.js.map +0 -1
- package/dist/src/checkbox/mdc-checkbox.js.map +0 -1
- package/dist/src/chips/mdc-chip/mdc-chip.js.map +0 -1
- package/dist/src/chips/mdc-chip-action/enhance-mdc-chip-action.js.map +0 -1
- package/dist/src/chips/mdc-chip-action/mdc-chip-action.js.map +0 -1
- package/dist/src/chips/mdc-chip-set/mdc-chip-set.js.map +0 -1
- package/dist/src/circular-progress/mdc-circular-progress.js.map +0 -1
- package/dist/src/data-table/mdc-data-table-row.js.map +0 -1
- package/dist/src/data-table/mdc-data-table.js.map +0 -1
- package/dist/src/dialog/mdc-dialog-actions.js.map +0 -1
- package/dist/src/dialog/mdc-dialog-content.js.map +0 -1
- package/dist/src/dialog/mdc-dialog-service.js.map +0 -1
- package/dist/src/dialog/mdc-dialog-title.js.map +0 -1
- package/dist/src/dialog/mdc-dialog.js.map +0 -1
- package/dist/src/drawer/mdc-drawer-app-content.js.map +0 -1
- package/dist/src/drawer/mdc-drawer-content.js.map +0 -1
- package/dist/src/drawer/mdc-drawer-header/mdc-drawer-header.js.map +0 -1
- package/dist/src/drawer/mdc-drawer.js.map +0 -1
- package/dist/src/elevation/mdc-elevation.js.map +0 -1
- package/dist/src/expandable/mdc-expandable.js.map +0 -1
- package/dist/src/fab/enhance-mdc-fab.js.map +0 -1
- package/dist/src/fab/mdc-fab-icon.js.map +0 -1
- package/dist/src/fab/mdc-fab.js.map +0 -1
- package/dist/src/floating-label/mdc-floating-label.js.map +0 -1
- package/dist/src/form-field/mdc-form-field.js.map +0 -1
- package/dist/src/icon/mdc-icon.js.map +0 -1
- package/dist/src/icon-button/enhance-mdc-icon-button.js.map +0 -1
- package/dist/src/icon-button/mdc-icon-button-icon/mdc-icon-button-icon.js.map +0 -1
- package/dist/src/icon-button/mdc-icon-button.js.map +0 -1
- package/dist/src/image-list/mdc-image-list-item/mdc-image-list-item.js.map +0 -1
- package/dist/src/image-list/mdc-image-list.js.map +0 -1
- package/dist/src/index.js.map +0 -1
- package/dist/src/layout-grid/mdc-layout-grid-cell/mdc-layout-grid-cell.js.map +0 -1
- package/dist/src/layout-grid/mdc-layout-grid-inner.js.map +0 -1
- package/dist/src/layout-grid/mdc-layout-grid.js.map +0 -1
- package/dist/src/line-ripple/mdc-line-ripple.js.map +0 -1
- package/dist/src/linear-progress/mdc-linear-progress.js.map +0 -1
- package/dist/src/list/mdc-deprecated-list/mdc-deprecated-list-divider/mdc-deprecated-list-divider.js.map +0 -1
- package/dist/src/list/mdc-deprecated-list/mdc-deprecated-list-group.js.map +0 -1
- package/dist/src/list/mdc-deprecated-list/mdc-deprecated-list-item/enhance-mdc-deprecated-list-item.js.map +0 -1
- package/dist/src/list/mdc-deprecated-list/mdc-deprecated-list-item/mdc-deprecated-list-item-graphic.js.map +0 -1
- package/dist/src/list/mdc-deprecated-list/mdc-deprecated-list-item/mdc-deprecated-list-item-meta.js.map +0 -1
- package/dist/src/list/mdc-deprecated-list/mdc-deprecated-list-item/mdc-deprecated-list-item.js.map +0 -1
- package/dist/src/list/mdc-deprecated-list/mdc-deprecated-list-item-primary-text.js.map +0 -1
- package/dist/src/list/mdc-deprecated-list/mdc-deprecated-list-item-secondary-text.js.map +0 -1
- package/dist/src/list/mdc-deprecated-list/mdc-deprecated-list.js.map +0 -1
- package/dist/src/list/mdc-list-divider/mdc-list-divider.js.map +0 -1
- package/dist/src/list/mdc-list-group.js.map +0 -1
- package/dist/src/list/mdc-list-item/enhance-mdc-list-item.js.map +0 -1
- package/dist/src/list/mdc-list-item/mdc-list-item-leading.js.map +0 -1
- package/dist/src/list/mdc-list-item/mdc-list-item-trailing.js.map +0 -1
- package/dist/src/list/mdc-list-item/mdc-list-item.js.map +0 -1
- package/dist/src/list/mdc-list-item-overline-text.js.map +0 -1
- package/dist/src/list/mdc-list-item-primary-text.js.map +0 -1
- package/dist/src/list/mdc-list-item-secondary-text.js.map +0 -1
- package/dist/src/list/mdc-list.js.map +0 -1
- package/dist/src/lookup/discardable-promise.js.map +0 -1
- package/dist/src/lookup/mdc-lookup-configuration.js.map +0 -1
- package/dist/src/lookup/mdc-lookup.js.map +0 -1
- package/dist/src/mdc-configuration.js.map +0 -1
- package/dist/src/menu/mdc-menu-selection-group-icon.js.map +0 -1
- package/dist/src/menu/mdc-menu-selection-group.js.map +0 -1
- package/dist/src/menu/mdc-menu.js.map +0 -1
- package/dist/src/menu-surface/mdc-menu-surface-anchor.js.map +0 -1
- package/dist/src/menu-surface/mdc-menu-surface.js.map +0 -1
- package/dist/src/notched-outline/mdc-notched-outline.js.map +0 -1
- package/dist/src/radio/mdc-radio.js.map +0 -1
- package/dist/src/ripple/mdc-ripple.js.map +0 -1
- package/dist/src/segmented-button/mdc-segmented-button-segment/enhance-mdc-segmented-button-segment.js.map +0 -1
- package/dist/src/segmented-button/mdc-segmented-button-segment/mdc-segmented-button-segment.js.map +0 -1
- package/dist/src/segmented-button/mdc-segmented-button.js.map +0 -1
- package/dist/src/select/mdc-default-select-configuration.js.map +0 -1
- package/dist/src/select/mdc-select-adapter-aurelia.js.map +0 -1
- package/dist/src/select/mdc-select-foundation-aurelia.js.map +0 -1
- package/dist/src/select/mdc-select-helper-text/mdc-select-helper-text.js.map +0 -1
- package/dist/src/select/mdc-select-icon.js.map +0 -1
- package/dist/src/select/mdc-select-value-observer.js.map +0 -1
- package/dist/src/select/mdc-select.js.map +0 -1
- package/dist/src/slider/mdc-slider-foundation-aurelia.js.map +0 -1
- package/dist/src/slider/mdc-slider.js.map +0 -1
- package/dist/src/snackbar/mdc-snackbar-service.js.map +0 -1
- package/dist/src/snackbar/mdc-snackbar.js.map +0 -1
- package/dist/src/switch/enhance-mdc-switch.js.map +0 -1
- package/dist/src/switch/mdc-switch.js.map +0 -1
- package/dist/src/tab-bar/indicator/mdc-tab-indicator.js.map +0 -1
- package/dist/src/tab-bar/mdc-tab-bar.js.map +0 -1
- package/dist/src/tab-bar/scroller/mdc-tab-scroller.js.map +0 -1
- package/dist/src/tab-bar/tab/mdc-tab.js.map +0 -1
- package/dist/src/text-field/enhance-mdc-text-field.js.map +0 -1
- package/dist/src/text-field/mdc-default-text-field-configuration.js.map +0 -1
- package/dist/src/text-field/mdc-inputmask.js.map +0 -1
- package/dist/src/text-field/mdc-text-field-character-counter.js.map +0 -1
- package/dist/src/text-field/mdc-text-field-helper-line/mdc-text-field-helper-line.js.map +0 -1
- package/dist/src/text-field/mdc-text-field-helper-text/mdc-text-field-helper-text.js.map +0 -1
- package/dist/src/text-field/mdc-text-field-icon.js.map +0 -1
- package/dist/src/text-field/mdc-text-field.js.map +0 -1
- package/dist/src/tooltip/mdc-default-tooltip-configuration.js.map +0 -1
- package/dist/src/tooltip/mdc-tooltip-attribute.js.map +0 -1
- package/dist/src/tooltip/mdc-tooltip.js.map +0 -1
- package/dist/src/top-app-bar/enhance-top-app-bar-actions.js.map +0 -1
- package/dist/src/top-app-bar/mdc-top-app-bar-action-item.js.map +0 -1
- package/dist/src/top-app-bar/mdc-top-app-bar-fixed-adjust.js.map +0 -1
- package/dist/src/top-app-bar/mdc-top-app-bar-nav-icon.js.map +0 -1
- package/dist/src/top-app-bar/mdc-top-app-bar-row.js.map +0 -1
- package/dist/src/top-app-bar/mdc-top-app-bar-section/mdc-top-app-bar-section.js.map +0 -1
- package/dist/src/top-app-bar/mdc-top-app-bar-title.js.map +0 -1
- package/dist/src/top-app-bar/mdc-top-app-bar.js.map +0 -1
- package/dist/src/tree-view/i-tree-node.js.map +0 -1
- package/dist/src/tree-view/mdc-tree-node-meta.js.map +0 -1
- package/dist/src/tree-view/mdc-tree-node.js.map +0 -1
- package/dist/src/tree-view/mdc-tree-view.js.map +0 -1
- package/dist/src/tree-view/node-filter.js.map +0 -1
- package/dist/src/typography/mdc-typography.js.map +0 -1
- package/dist/src/validation/mdc-validation-controller-factory.js.map +0 -1
- package/dist/src/validation/mdc-validation-result-presenter.js.map +0 -1
- package/dist/src/validation/validate.js.map +0 -1
- /package/dist/{src/alert → alert}/alert-configuration.js +0 -0
- /package/dist/{src/alert → alert}/alert-modal/alert-modal.js +0 -0
- /package/dist/{src/alert → alert}/alert-modal/i-alert-modal-payload.js +0 -0
- /package/dist/{src/alert → alert}/alert-service.js +0 -0
- /package/dist/{src/alert → alert}/decorators/confirm-action.js +0 -0
- /package/dist/{src/alert → alert}/decorators/using-progress.js +0 -0
- /package/dist/{src/alert → alert}/exceptions-tracker.js +0 -0
- /package/dist/{src/alert → alert}/global-progress/global-progress.js +0 -0
- /package/dist/{src/alert → alert}/prompt-dialog/prompt-dialog.js +0 -0
- /package/dist/{src/banner → banner}/mdc-banner.js +0 -0
- /package/dist/{src/base → base}/attributes/mdc-focus-trap.js +0 -0
- /package/dist/{src/base → base}/elements/i-validated-element.js +0 -0
- /package/dist/{src/base → base}/elements/mdc-promisify-reference.js +0 -0
- /package/dist/{src/base → base}/index.js +0 -0
- /package/dist/{src/base → base}/interceptors.js +0 -0
- /package/dist/{src/base → base}/material-palette.js +0 -0
- /package/dist/{src/base → base}/mdc-component.js +0 -0
- /package/dist/{src/base → base}/next-element.js +0 -0
- /package/dist/{src/button → button}/enhance-mdc-button.js +0 -0
- /package/dist/{src/button → button}/mdc-button-label.js +0 -0
- /package/dist/{src/button → button}/mdc-button.js +0 -0
- /package/dist/{src/card → card}/mdc-card-action-buttons.js +0 -0
- /package/dist/{src/card → card}/mdc-card-action-icons.js +0 -0
- /package/dist/{src/card → card}/mdc-card-actions/mdc-card-actions.js +0 -0
- /package/dist/{src/card → card}/mdc-card-media/mdc-card-media.js +0 -0
- /package/dist/{src/card → card}/mdc-card-primary-action.js +0 -0
- /package/dist/{src/card → card}/mdc-card.js +0 -0
- /package/dist/{src/checkbox → checkbox}/mdc-checkbox.js +0 -0
- /package/dist/{src/chips → chips}/mdc-chip/mdc-chip.js +0 -0
- /package/dist/{src/chips → chips}/mdc-chip-action/enhance-mdc-chip-action.js +0 -0
- /package/dist/{src/chips → chips}/mdc-chip-action/mdc-chip-action.js +0 -0
- /package/dist/{src/chips → chips}/mdc-chip-set/mdc-chip-set.js +0 -0
- /package/dist/{src/circular-progress → circular-progress}/mdc-circular-progress.js +0 -0
- /package/dist/{src/data-table → data-table}/mdc-data-table-row.js +0 -0
- /package/dist/{src/data-table → data-table}/mdc-data-table.js +0 -0
- /package/dist/{src/dialog → dialog}/mdc-dialog-actions.js +0 -0
- /package/dist/{src/dialog → dialog}/mdc-dialog-content.js +0 -0
- /package/dist/{src/dialog → dialog}/mdc-dialog-service.js +0 -0
- /package/dist/{src/dialog → dialog}/mdc-dialog-title.js +0 -0
- /package/dist/{src/dialog → dialog}/mdc-dialog.js +0 -0
- /package/dist/{src/drawer → drawer}/mdc-drawer-app-content.js +0 -0
- /package/dist/{src/drawer → drawer}/mdc-drawer-content.js +0 -0
- /package/dist/{src/drawer → drawer}/mdc-drawer-header/mdc-drawer-header.js +0 -0
- /package/dist/{src/drawer → drawer}/mdc-drawer.js +0 -0
- /package/dist/{src/elevation → elevation}/mdc-elevation.js +0 -0
- /package/dist/{src/expandable → expandable}/mdc-expandable.js +0 -0
- /package/dist/{src/fab → fab}/enhance-mdc-fab.js +0 -0
- /package/dist/{src/fab → fab}/mdc-fab-icon.js +0 -0
- /package/dist/{src/fab → fab}/mdc-fab.js +0 -0
- /package/dist/{src/floating-label → floating-label}/mdc-floating-label.js +0 -0
- /package/dist/{src/form-field → form-field}/mdc-form-field.js +0 -0
- /package/dist/{src/icon → icon}/mdc-icon.js +0 -0
- /package/dist/{src/icon-button → icon-button}/enhance-mdc-icon-button.js +0 -0
- /package/dist/{src/icon-button → icon-button}/mdc-icon-button-icon/mdc-icon-button-icon.js +0 -0
- /package/dist/{src/icon-button → icon-button}/mdc-icon-button.js +0 -0
- /package/dist/{src/image-list → image-list}/mdc-image-list-item/mdc-image-list-item.js +0 -0
- /package/dist/{src/image-list → image-list}/mdc-image-list.js +0 -0
- /package/dist/{src/index.js → index.js} +0 -0
- /package/dist/{src/layout-grid → layout-grid}/mdc-layout-grid-cell/mdc-layout-grid-cell.js +0 -0
- /package/dist/{src/layout-grid → layout-grid}/mdc-layout-grid-inner.js +0 -0
- /package/dist/{src/layout-grid → layout-grid}/mdc-layout-grid.js +0 -0
- /package/dist/{src/line-ripple → line-ripple}/mdc-line-ripple.js +0 -0
- /package/dist/{src/linear-progress → linear-progress}/mdc-linear-progress.js +0 -0
- /package/dist/{src/list → list}/mdc-deprecated-list/mdc-deprecated-list-divider/mdc-deprecated-list-divider.js +0 -0
- /package/dist/{src/list → list}/mdc-deprecated-list/mdc-deprecated-list-group.js +0 -0
- /package/dist/{src/list → list}/mdc-deprecated-list/mdc-deprecated-list-item/enhance-mdc-deprecated-list-item.js +0 -0
- /package/dist/{src/list → list}/mdc-deprecated-list/mdc-deprecated-list-item/mdc-deprecated-list-item-graphic.js +0 -0
- /package/dist/{src/list → list}/mdc-deprecated-list/mdc-deprecated-list-item/mdc-deprecated-list-item-meta.js +0 -0
- /package/dist/{src/list → list}/mdc-deprecated-list/mdc-deprecated-list-item/mdc-deprecated-list-item.js +0 -0
- /package/dist/{src/list → list}/mdc-deprecated-list/mdc-deprecated-list-item-primary-text.js +0 -0
- /package/dist/{src/list → list}/mdc-deprecated-list/mdc-deprecated-list-item-secondary-text.js +0 -0
- /package/dist/{src/list → list}/mdc-deprecated-list/mdc-deprecated-list.js +0 -0
- /package/dist/{src/list → list}/mdc-list-divider/mdc-list-divider.js +0 -0
- /package/dist/{src/list → list}/mdc-list-group.js +0 -0
- /package/dist/{src/list → list}/mdc-list-item/enhance-mdc-list-item.js +0 -0
- /package/dist/{src/list → list}/mdc-list-item/mdc-list-item-leading.js +0 -0
- /package/dist/{src/list → list}/mdc-list-item/mdc-list-item-trailing.js +0 -0
- /package/dist/{src/list → list}/mdc-list-item/mdc-list-item.js +0 -0
- /package/dist/{src/list → list}/mdc-list-item-overline-text.js +0 -0
- /package/dist/{src/list → list}/mdc-list-item-primary-text.js +0 -0
- /package/dist/{src/list → list}/mdc-list-item-secondary-text.js +0 -0
- /package/dist/{src/list → list}/mdc-list.js +0 -0
- /package/dist/{src/lookup → lookup}/discardable-promise.js +0 -0
- /package/dist/{src/lookup → lookup}/mdc-lookup-configuration.js +0 -0
- /package/dist/{src/lookup → lookup}/mdc-lookup.js +0 -0
- /package/dist/{src/mdc-configuration.js → mdc-configuration.js} +0 -0
- /package/dist/{src/menu → menu}/mdc-menu-selection-group-icon.js +0 -0
- /package/dist/{src/menu → menu}/mdc-menu-selection-group.js +0 -0
- /package/dist/{src/menu → menu}/mdc-menu.js +0 -0
- /package/dist/{src/menu-surface → menu-surface}/mdc-menu-surface-anchor.js +0 -0
- /package/dist/{src/menu-surface → menu-surface}/mdc-menu-surface.js +0 -0
- /package/dist/{src/notched-outline → notched-outline}/mdc-notched-outline.js +0 -0
- /package/dist/{src/radio → radio}/mdc-radio.js +0 -0
- /package/dist/{src/ripple → ripple}/mdc-ripple.js +0 -0
- /package/dist/{src/segmented-button → segmented-button}/mdc-segmented-button-segment/enhance-mdc-segmented-button-segment.js +0 -0
- /package/dist/{src/segmented-button → segmented-button}/mdc-segmented-button-segment/mdc-segmented-button-segment.js +0 -0
- /package/dist/{src/segmented-button → segmented-button}/mdc-segmented-button.js +0 -0
- /package/dist/{src/select → select}/mdc-default-select-configuration.js +0 -0
- /package/dist/{src/select → select}/mdc-select-adapter-aurelia.js +0 -0
- /package/dist/{src/select → select}/mdc-select-foundation-aurelia.js +0 -0
- /package/dist/{src/select → select}/mdc-select-helper-text/mdc-select-helper-text.js +0 -0
- /package/dist/{src/select → select}/mdc-select-icon.js +0 -0
- /package/dist/{src/select → select}/mdc-select-value-observer.js +0 -0
- /package/dist/{src/select → select}/mdc-select.js +0 -0
- /package/dist/{src/slider → slider}/mdc-slider-foundation-aurelia.js +0 -0
- /package/dist/{src/slider → slider}/mdc-slider.js +0 -0
- /package/dist/{src/snackbar → snackbar}/mdc-snackbar-service.js +0 -0
- /package/dist/{src/snackbar → snackbar}/mdc-snackbar.js +0 -0
- /package/dist/{src/switch → switch}/enhance-mdc-switch.js +0 -0
- /package/dist/{src/switch → switch}/mdc-switch.js +0 -0
- /package/dist/{src/tab-bar → tab-bar}/indicator/mdc-tab-indicator.js +0 -0
- /package/dist/{src/tab-bar → tab-bar}/mdc-tab-bar.js +0 -0
- /package/dist/{src/tab-bar → tab-bar}/scroller/mdc-tab-scroller.js +0 -0
- /package/dist/{src/tab-bar → tab-bar}/tab/mdc-tab.js +0 -0
- /package/dist/{src/text-field → text-field}/enhance-mdc-text-field.js +0 -0
- /package/dist/{src/text-field → text-field}/mdc-default-text-field-configuration.js +0 -0
- /package/dist/{src/text-field → text-field}/mdc-inputmask.js +0 -0
- /package/dist/{src/text-field → text-field}/mdc-text-field-character-counter.js +0 -0
- /package/dist/{src/text-field → text-field}/mdc-text-field-helper-line/mdc-text-field-helper-line.js +0 -0
- /package/dist/{src/text-field → text-field}/mdc-text-field-helper-text/mdc-text-field-helper-text.js +0 -0
- /package/dist/{src/text-field → text-field}/mdc-text-field-icon.js +0 -0
- /package/dist/{src/text-field → text-field}/mdc-text-field.js +0 -0
- /package/dist/{src/tooltip → tooltip}/mdc-default-tooltip-configuration.js +0 -0
- /package/dist/{src/tooltip → tooltip}/mdc-tooltip-attribute.js +0 -0
- /package/dist/{src/tooltip → tooltip}/mdc-tooltip.js +0 -0
- /package/dist/{src/top-app-bar → top-app-bar}/enhance-top-app-bar-actions.js +0 -0
- /package/dist/{src/top-app-bar → top-app-bar}/mdc-top-app-bar-action-item.js +0 -0
- /package/dist/{src/top-app-bar → top-app-bar}/mdc-top-app-bar-fixed-adjust.js +0 -0
- /package/dist/{src/top-app-bar → top-app-bar}/mdc-top-app-bar-nav-icon.js +0 -0
- /package/dist/{src/top-app-bar → top-app-bar}/mdc-top-app-bar-row.js +0 -0
- /package/dist/{src/top-app-bar → top-app-bar}/mdc-top-app-bar-section/mdc-top-app-bar-section.js +0 -0
- /package/dist/{src/top-app-bar → top-app-bar}/mdc-top-app-bar-title.js +0 -0
- /package/dist/{src/top-app-bar → top-app-bar}/mdc-top-app-bar.js +0 -0
- /package/dist/{src/tree-view → tree-view}/i-tree-node.js +0 -0
- /package/dist/{src/tree-view → tree-view}/mdc-tree-node-meta.js +0 -0
- /package/dist/{src/tree-view → tree-view}/mdc-tree-node.js +0 -0
- /package/dist/{src/tree-view → tree-view}/mdc-tree-view.js +0 -0
- /package/dist/{src/tree-view → tree-view}/node-filter.js +0 -0
- /package/dist/types/{src/alert → alert}/alert-configuration.d.ts +0 -0
- /package/dist/types/{src/alert → alert}/alert-modal/alert-modal.d.ts +0 -0
- /package/dist/types/{src/alert → alert}/alert-modal/i-alert-modal-payload.d.ts +0 -0
- /package/dist/types/{src/alert → alert}/alert-service.d.ts +0 -0
- /package/dist/types/{src/alert → alert}/decorators/confirm-action.d.ts +0 -0
- /package/dist/types/{src/alert → alert}/decorators/using-progress.d.ts +0 -0
- /package/dist/types/{src/alert → alert}/exceptions-tracker.d.ts +0 -0
- /package/dist/types/{src/alert → alert}/global-progress/global-progress.d.ts +0 -0
- /package/dist/types/{src/alert → alert}/prompt-dialog/prompt-dialog.d.ts +0 -0
- /package/dist/types/{src/banner → banner}/mdc-banner.d.ts +0 -0
- /package/dist/types/{src/base → base}/attributes/mdc-focus-trap.d.ts +0 -0
- /package/dist/types/{src/base → base}/elements/i-validated-element.d.ts +0 -0
- /package/dist/types/{src/base → base}/elements/mdc-promisify-reference.d.ts +0 -0
- /package/dist/types/{src/base → base}/index.d.ts +0 -0
- /package/dist/types/{src/base → base}/interceptors.d.ts +0 -0
- /package/dist/types/{src/base → base}/material-palette.d.ts +0 -0
- /package/dist/types/{src/base → base}/mdc-component.d.ts +0 -0
- /package/dist/types/{src/base → base}/next-element.d.ts +0 -0
- /package/dist/types/{src/button → button}/enhance-mdc-button.d.ts +0 -0
- /package/dist/types/{src/button → button}/mdc-button-label.d.ts +0 -0
- /package/dist/types/{src/button → button}/mdc-button.d.ts +0 -0
- /package/dist/types/{src/card → card}/mdc-card-action-buttons.d.ts +0 -0
- /package/dist/types/{src/card → card}/mdc-card-action-icons.d.ts +0 -0
- /package/dist/types/{src/card → card}/mdc-card-actions/mdc-card-actions.d.ts +0 -0
- /package/dist/types/{src/card → card}/mdc-card-media/mdc-card-media.d.ts +0 -0
- /package/dist/types/{src/card → card}/mdc-card-primary-action.d.ts +0 -0
- /package/dist/types/{src/card → card}/mdc-card.d.ts +0 -0
- /package/dist/types/{src/checkbox → checkbox}/mdc-checkbox.d.ts +0 -0
- /package/dist/types/{src/chips → chips}/mdc-chip/mdc-chip.d.ts +0 -0
- /package/dist/types/{src/chips → chips}/mdc-chip-action/enhance-mdc-chip-action.d.ts +0 -0
- /package/dist/types/{src/chips → chips}/mdc-chip-action/mdc-chip-action.d.ts +0 -0
- /package/dist/types/{src/chips → chips}/mdc-chip-set/mdc-chip-set.d.ts +0 -0
- /package/dist/types/{src/circular-progress → circular-progress}/mdc-circular-progress.d.ts +0 -0
- /package/dist/types/{src/data-table → data-table}/mdc-data-table-row.d.ts +0 -0
- /package/dist/types/{src/data-table → data-table}/mdc-data-table.d.ts +0 -0
- /package/dist/types/{src/dialog → dialog}/mdc-dialog-actions.d.ts +0 -0
- /package/dist/types/{src/dialog → dialog}/mdc-dialog-content.d.ts +0 -0
- /package/dist/types/{src/dialog → dialog}/mdc-dialog-service.d.ts +0 -0
- /package/dist/types/{src/dialog → dialog}/mdc-dialog-title.d.ts +0 -0
- /package/dist/types/{src/dialog → dialog}/mdc-dialog.d.ts +0 -0
- /package/dist/types/{src/drawer → drawer}/mdc-drawer-app-content.d.ts +0 -0
- /package/dist/types/{src/drawer → drawer}/mdc-drawer-content.d.ts +0 -0
- /package/dist/types/{src/drawer → drawer}/mdc-drawer-header/mdc-drawer-header.d.ts +0 -0
- /package/dist/types/{src/drawer → drawer}/mdc-drawer.d.ts +0 -0
- /package/dist/types/{src/elevation → elevation}/mdc-elevation.d.ts +0 -0
- /package/dist/types/{src/expandable → expandable}/mdc-expandable.d.ts +0 -0
- /package/dist/types/{src/fab → fab}/enhance-mdc-fab.d.ts +0 -0
- /package/dist/types/{src/fab → fab}/mdc-fab-icon.d.ts +0 -0
- /package/dist/types/{src/fab → fab}/mdc-fab.d.ts +0 -0
- /package/dist/types/{src/floating-label → floating-label}/mdc-floating-label.d.ts +0 -0
- /package/dist/types/{src/form-field → form-field}/mdc-form-field.d.ts +0 -0
- /package/dist/types/{src/icon → icon}/mdc-icon.d.ts +0 -0
- /package/dist/types/{src/icon-button → icon-button}/enhance-mdc-icon-button.d.ts +0 -0
- /package/dist/types/{src/icon-button → icon-button}/mdc-icon-button-icon/mdc-icon-button-icon.d.ts +0 -0
- /package/dist/types/{src/icon-button → icon-button}/mdc-icon-button.d.ts +0 -0
- /package/dist/types/{src/image-list → image-list}/mdc-image-list-item/mdc-image-list-item.d.ts +0 -0
- /package/dist/types/{src/image-list → image-list}/mdc-image-list.d.ts +0 -0
- /package/dist/types/{src/index.d.ts → index.d.ts} +0 -0
- /package/dist/types/{src/layout-grid → layout-grid}/mdc-layout-grid-cell/mdc-layout-grid-cell.d.ts +0 -0
- /package/dist/types/{src/layout-grid → layout-grid}/mdc-layout-grid-inner.d.ts +0 -0
- /package/dist/types/{src/layout-grid → layout-grid}/mdc-layout-grid.d.ts +0 -0
- /package/dist/types/{src/line-ripple → line-ripple}/mdc-line-ripple.d.ts +0 -0
- /package/dist/types/{src/linear-progress → linear-progress}/mdc-linear-progress.d.ts +0 -0
- /package/dist/types/{src/list → list}/mdc-deprecated-list/mdc-deprecated-list-divider/mdc-deprecated-list-divider.d.ts +0 -0
- /package/dist/types/{src/list → list}/mdc-deprecated-list/mdc-deprecated-list-group.d.ts +0 -0
- /package/dist/types/{src/list → list}/mdc-deprecated-list/mdc-deprecated-list-item/enhance-mdc-deprecated-list-item.d.ts +0 -0
- /package/dist/types/{src/list → list}/mdc-deprecated-list/mdc-deprecated-list-item/mdc-deprecated-list-item-graphic.d.ts +0 -0
- /package/dist/types/{src/list → list}/mdc-deprecated-list/mdc-deprecated-list-item/mdc-deprecated-list-item-meta.d.ts +0 -0
- /package/dist/types/{src/list → list}/mdc-deprecated-list/mdc-deprecated-list-item/mdc-deprecated-list-item.d.ts +0 -0
- /package/dist/types/{src/list → list}/mdc-deprecated-list/mdc-deprecated-list-item-primary-text.d.ts +0 -0
- /package/dist/types/{src/list → list}/mdc-deprecated-list/mdc-deprecated-list-item-secondary-text.d.ts +0 -0
- /package/dist/types/{src/list → list}/mdc-deprecated-list/mdc-deprecated-list.d.ts +0 -0
- /package/dist/types/{src/list → list}/mdc-list-divider/mdc-list-divider.d.ts +0 -0
- /package/dist/types/{src/list → list}/mdc-list-group.d.ts +0 -0
- /package/dist/types/{src/list → list}/mdc-list-item/enhance-mdc-list-item.d.ts +0 -0
- /package/dist/types/{src/list → list}/mdc-list-item/mdc-list-item-leading.d.ts +0 -0
- /package/dist/types/{src/list → list}/mdc-list-item/mdc-list-item-trailing.d.ts +0 -0
- /package/dist/types/{src/list → list}/mdc-list-item/mdc-list-item.d.ts +0 -0
- /package/dist/types/{src/list → list}/mdc-list-item-overline-text.d.ts +0 -0
- /package/dist/types/{src/list → list}/mdc-list-item-primary-text.d.ts +0 -0
- /package/dist/types/{src/list → list}/mdc-list-item-secondary-text.d.ts +0 -0
- /package/dist/types/{src/list → list}/mdc-list.d.ts +0 -0
- /package/dist/types/{src/lookup → lookup}/discardable-promise.d.ts +0 -0
- /package/dist/types/{src/lookup → lookup}/mdc-lookup-configuration.d.ts +0 -0
- /package/dist/types/{src/lookup → lookup}/mdc-lookup.d.ts +0 -0
- /package/dist/types/{src/mdc-configuration.d.ts → mdc-configuration.d.ts} +0 -0
- /package/dist/types/{src/menu → menu}/mdc-menu-selection-group-icon.d.ts +0 -0
- /package/dist/types/{src/menu → menu}/mdc-menu-selection-group.d.ts +0 -0
- /package/dist/types/{src/menu → menu}/mdc-menu.d.ts +0 -0
- /package/dist/types/{src/menu-surface → menu-surface}/mdc-menu-surface-anchor.d.ts +0 -0
- /package/dist/types/{src/menu-surface → menu-surface}/mdc-menu-surface.d.ts +0 -0
- /package/dist/types/{src/notched-outline → notched-outline}/mdc-notched-outline.d.ts +0 -0
- /package/dist/types/{src/radio → radio}/mdc-radio.d.ts +0 -0
- /package/dist/types/{src/ripple → ripple}/mdc-ripple.d.ts +0 -0
- /package/dist/types/{src/segmented-button → segmented-button}/mdc-segmented-button-segment/enhance-mdc-segmented-button-segment.d.ts +0 -0
- /package/dist/types/{src/segmented-button → segmented-button}/mdc-segmented-button-segment/mdc-segmented-button-segment.d.ts +0 -0
- /package/dist/types/{src/segmented-button → segmented-button}/mdc-segmented-button.d.ts +0 -0
- /package/dist/types/{src/select → select}/mdc-default-select-configuration.d.ts +0 -0
- /package/dist/types/{src/select → select}/mdc-select-adapter-aurelia.d.ts +0 -0
- /package/dist/types/{src/select → select}/mdc-select-foundation-aurelia.d.ts +0 -0
- /package/dist/types/{src/select → select}/mdc-select-helper-text/mdc-select-helper-text.d.ts +0 -0
- /package/dist/types/{src/select → select}/mdc-select-icon.d.ts +0 -0
- /package/dist/types/{src/select → select}/mdc-select-value-observer.d.ts +0 -0
- /package/dist/types/{src/select → select}/mdc-select.d.ts +0 -0
- /package/dist/types/{src/slider → slider}/mdc-slider-foundation-aurelia.d.ts +0 -0
- /package/dist/types/{src/slider → slider}/mdc-slider.d.ts +0 -0
- /package/dist/types/{src/snackbar → snackbar}/mdc-snackbar-service.d.ts +0 -0
- /package/dist/types/{src/snackbar → snackbar}/mdc-snackbar.d.ts +0 -0
- /package/dist/types/{src/switch → switch}/enhance-mdc-switch.d.ts +0 -0
- /package/dist/types/{src/switch → switch}/mdc-switch.d.ts +0 -0
- /package/dist/types/{src/tab-bar → tab-bar}/indicator/mdc-tab-indicator.d.ts +0 -0
- /package/dist/types/{src/tab-bar → tab-bar}/mdc-tab-bar.d.ts +0 -0
- /package/dist/types/{src/tab-bar → tab-bar}/scroller/mdc-tab-scroller.d.ts +0 -0
- /package/dist/types/{src/tab-bar → tab-bar}/tab/mdc-tab.d.ts +0 -0
- /package/dist/types/{src/text-field → text-field}/enhance-mdc-text-field.d.ts +0 -0
- /package/dist/types/{src/text-field → text-field}/mdc-default-text-field-configuration.d.ts +0 -0
- /package/dist/types/{src/text-field → text-field}/mdc-inputmask.d.ts +0 -0
- /package/dist/types/{src/text-field → text-field}/mdc-text-field-character-counter.d.ts +0 -0
- /package/dist/types/{src/text-field → text-field}/mdc-text-field-helper-line/mdc-text-field-helper-line.d.ts +0 -0
- /package/dist/types/{src/text-field → text-field}/mdc-text-field-helper-text/mdc-text-field-helper-text.d.ts +0 -0
- /package/dist/types/{src/text-field → text-field}/mdc-text-field-icon.d.ts +0 -0
- /package/dist/types/{src/text-field → text-field}/mdc-text-field.d.ts +0 -0
- /package/dist/types/{src/tooltip → tooltip}/mdc-default-tooltip-configuration.d.ts +0 -0
- /package/dist/types/{src/tooltip → tooltip}/mdc-tooltip-attribute.d.ts +0 -0
- /package/dist/types/{src/tooltip → tooltip}/mdc-tooltip.d.ts +0 -0
- /package/dist/types/{src/top-app-bar → top-app-bar}/enhance-top-app-bar-actions.d.ts +0 -0
- /package/dist/types/{src/top-app-bar → top-app-bar}/mdc-top-app-bar-action-item.d.ts +0 -0
- /package/dist/types/{src/top-app-bar → top-app-bar}/mdc-top-app-bar-fixed-adjust.d.ts +0 -0
- /package/dist/types/{src/top-app-bar → top-app-bar}/mdc-top-app-bar-nav-icon.d.ts +0 -0
- /package/dist/types/{src/top-app-bar → top-app-bar}/mdc-top-app-bar-row.d.ts +0 -0
- /package/dist/types/{src/top-app-bar → top-app-bar}/mdc-top-app-bar-section/mdc-top-app-bar-section.d.ts +0 -0
- /package/dist/types/{src/top-app-bar → top-app-bar}/mdc-top-app-bar-title.d.ts +0 -0
- /package/dist/types/{src/top-app-bar → top-app-bar}/mdc-top-app-bar.d.ts +0 -0
- /package/dist/types/{src/tree-view → tree-view}/i-tree-node.d.ts +0 -0
- /package/dist/types/{src/tree-view → tree-view}/mdc-tree-node-meta.d.ts +0 -0
- /package/dist/types/{src/tree-view → tree-view}/mdc-tree-node.d.ts +0 -0
- /package/dist/types/{src/tree-view → tree-view}/mdc-tree-view.d.ts +0 -0
- /package/dist/types/{src/tree-view → tree-view}/node-filter.d.ts +0 -0
- /package/dist/types/{src/typography → typography}/mdc-typography.d.ts +0 -0
- /package/dist/types/{src/validation → validation}/mdc-validation-controller-factory.d.ts +0 -0
- /package/dist/types/{src/validation → validation}/mdc-validation-result-presenter.d.ts +0 -0
- /package/dist/types/{src/validation → validation}/validate.d.ts +0 -0
- /package/dist/{src/typography → typography}/mdc-typography.js +0 -0
- /package/dist/{src/validation → validation}/mdc-validation-controller-factory.js +0 -0
- /package/dist/{src/validation → validation}/mdc-validation-result-presenter.js +0 -0
- /package/dist/{src/validation → validation}/validate.js +0 -0
|
@@ -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 { 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';\nimport { MdcConfiguration } from '../mdc-configuration';\n\nconst inputEvents = ['click', 'input', 'keydown', 'blur'];\nconst bodyEvents = ['touchstart', 'mousedown', 'click'];\n\n/**\n * @selector mdc-lookup\n */\n@inject(Element, MdcConfiguration)\n@customElement({ name: 'mdc-lookup', template })\nexport class MdcLookup implements EventListenerObject {\n constructor(private root: HTMLElement, private configuration: MdcConfiguration) {\n this.debounce = this.configuration.lookup.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.input?.value && 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 @@
|
|
|
1
|
+
{"version":3,"file":"mdc-configuration.js","sourceRoot":"","sources":["../src/mdc-configuration.ts"],"names":[],"mappings":";;;AAAA,qEAAoE;AACpE,gFAAkF;AAClF,gGAA0F;AAC1F,4GAAqG;AACrG,mGAA6F;AAE7F,MAAa,gBAAgB;IAC3B,MAAM,GAAkC,IAAI,wDAA6B,EAAE,CAAC;IAC5E,MAAM,GAAkC,IAAI,gEAA6B,EAAE,CAAC;IAC5E,SAAS,GAAqC,IAAI,uEAAgC,EAAE,CAAC;IACrF,OAAO,GAAmC,IAAI,kEAA8B,EAAE,CAAC;IAC/E,KAAK,GAA0B,IAAI,2CAAqB,EAAE,CAAC;CAC5D;AAND,4CAMC","sourcesContent":["import { MdcAlertConfiguration } from './alert/alert-configuration';\nimport { 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 alert: MdcAlertConfiguration = new MdcAlertConfiguration();\n}\n\n"]}
|
|
@@ -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,qCAAkD;IAIrC,yBAAyB;4BAFrC,IAAA,gBAAM,EAAC,OAAO,CAAC,EACf,IAAA,yBAAe,EAAC,+BAA+B,CAAC;;;;;;;;YACjD,qLAMC;;;YANY,+DAAyB;;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;;;;AALU,8DAAyB","sourcesContent":["import { customAttribute, inject } from 'aurelia';\r\n\r\n@inject(Element)\r\n@customAttribute('mdc-menu-selection-group-icon')\r\nexport class MdcMenuSelectionGroupIcon {\r\n constructor(private root: HTMLElement) { }\r\n\r\n attached() {\r\n this.root.classList.add('mdc-menu__selection-group-icon');\r\n }\r\n}\r\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mdc-menu-selection-group.js","sourceRoot":"","sources":["../../src/menu/mdc-menu-selection-group.ts"],"names":[],"mappings":";;;;AAAA,qCAAwC;IAG3B,qBAAqB;4BADjC,IAAA,uBAAa,EAAC,EAAE,IAAI,EAAE,0BAA0B,EAAE,QAAQ,EAAE,4EAA4E,EAAE,CAAC;;;;;;;;YAC5I,qLAAsC;;;YAAzB,+DAAqB;;;;;AAArB,sDAAqB","sourcesContent":["import { customElement } from 'aurelia';\r\n\r\n@customElement({ name: 'mdc-menu-selection-group', template: '<template class=\"mdc-menu__selection-group\"><au-slot></au-slot></template>' })\r\nexport class MdcMenuSelectionGroup { }\r\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mdc-menu.js","sourceRoot":"","sources":["../../src/menu/mdc-menu.ts"],"names":[],"mappings":"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","sourcesContent":["import { MdcComponent, booleanAttr, number } from '../base';\r\nimport { MDCMenuFoundation, DefaultFocusState, MDCMenuAdapter, Corner, MDCMenuItemComponentEventDetail, strings, cssClasses } from '@material/menu';\r\nimport { MDCListIndex } from '@material/list';\r\nimport { MDCMenuDistance } from '@material/menu-surface';\r\nimport { numbers as listConstants } from '@material/list/constants';\r\nimport { closest } from '@material/dom/ponyfill';\r\nimport { inject, customElement, bindable, BindingMode } from 'aurelia';\r\nimport { CustomElement } from '@aurelia/runtime-html';\r\nimport template from './mdc-menu.html?raw';\r\nimport { MdcList } from '../list/mdc-list';\r\nimport { IMdcListActionEvent, MdcListItem } from '../list/mdc-list-item/mdc-list-item';\r\nimport { MdcMenuSurface } from '../menu-surface/mdc-menu-surface';\r\n\r\nstrings.SELECTED_EVENT = strings.SELECTED_EVENT.toLowerCase();\r\n\r\n/**\r\n * @selector mdc-menu\r\n * @emits mdcmenu:selected | Indicates that a menu item has been selected\r\n */\r\n@inject(Element)\r\n@customElement({ name: 'mdc-menu', template })\r\nexport class MdcMenu extends MdcComponent<MDCMenuFoundation> {\r\n menuSurface: MdcMenuSurface; // assigned in html\r\n\r\n // TODO: can we use child here?\r\n // @child('mdc-list')\r\n get list_(): MdcList | undefined {\r\n const el = this.root.querySelector('mdc-list,mdc-deprecated-list');\r\n return el ? CustomElement.for<MdcList>(el).viewModel : undefined;\r\n }\r\n\r\n /** Used to indicate that the menu is using fixed positioning */\r\n @bindable({ set: booleanAttr })\r\n fixed: boolean;\r\n\r\n @bindable({ set: booleanAttr })\r\n typeahead?: boolean;\r\n typeaheadChanged() {\r\n if (this.list_ && this.typeahead !== undefined) {\r\n setTimeout(() => { this.list_!.typeahead = this.typeahead!; }, 0);\r\n }\r\n }\r\n\r\n /** Makes the menu element direct child of the body */\r\n @bindable({ set: booleanAttr, mode: BindingMode.oneTime })\r\n hoistToBody: boolean;\r\n\r\n /** Set to indicate an element the menu should be anchored to */\r\n @bindable()\r\n anchor?: Element | null;\r\n\r\n /** Sets default focus state where the menu should focus every time when menu is opened. Focuses the list root ('list') element by default. */\r\n @bindable()\r\n defaultFocusState: keyof typeof DefaultFocusState = 'LIST_ROOT';\r\n defaultFocusStateChanged() {\r\n this.foundation?.setDefaultFocusState(DefaultFocusState[this.defaultFocusState]);\r\n }\r\n\r\n /** Override the opening point of the menu. (Default: TOP_START) */\r\n @bindable()\r\n anchorCorner: keyof typeof Corner;\r\n\r\n /** Sets the distance from the anchor point that the menu surface should be shown */\r\n @bindable()\r\n anchorMargin: Partial<MDCMenuDistance>;\r\n\r\n /** Sets whether the menu should open and close without animation when the open/close methods are called */\r\n @bindable({ set: booleanAttr })\r\n quickOpen: boolean;\r\n\r\n /** Sets whether the menu surface should stay open after item selection */\r\n @bindable({ set: booleanAttr })\r\n stayOpenOnSelection: boolean;\r\n\r\n @bindable()\r\n maxHeight: number;\r\n\r\n @bindable({ set: number })\r\n openBottomBias: number;\r\n\r\n /** Sets whether focus should be restored after the menu is closed */\r\n @bindable({ set: booleanAttr })\r\n skipRestoreFocus: boolean;\r\n skipRestoreFocusChanged() {\r\n if (this.skipRestoreFocus) {\r\n this.root.setAttribute('data-menu-item-skip-restore-focus', 'true');\r\n } else {\r\n this.root.removeAttribute('data-menu-item-skip-restore-focus');\r\n }\r\n }\r\n\r\n @bindable({ set: booleanAttr })\r\n selectOnTab: boolean;\r\n\r\n @bindable({ set: booleanAttr })\r\n stayOpen: boolean;\r\n\r\n handleKeydown_(evt: KeyboardEvent) {\r\n const focusedItemIndex = this.list_?.foundation?.getFocusedItemIndex() ?? listConstants.UNSET_INDEX;\r\n if (this.selectOnTab && (evt.key === 'Tab' || evt.keyCode === 9)\r\n && focusedItemIndex !== listConstants.UNSET_INDEX) {\r\n this.foundation?.handleItemAction(this.items[focusedItemIndex]);\r\n } else {\r\n this.foundation?.handleKeydown(evt);\r\n }\r\n return true;\r\n }\r\n\r\n handleItemAction_(evt: IMdcListActionEvent) {\r\n this.foundation?.handleItemAction(this.items[evt.detail.index]);\r\n return true;\r\n }\r\n\r\n handleMenuSurfaceOpened_() {\r\n this.foundation?.handleMenuSurfaceOpened();\r\n return true;\r\n }\r\n\r\n get open(): boolean {\r\n return this.menuSurface.open;\r\n }\r\n\r\n set open(value: boolean) {\r\n this.menuSurface.open = value;\r\n }\r\n\r\n /** Toggles the menu to open or close */\r\n toggle() {\r\n this.open = !this.open;\r\n }\r\n\r\n openAnchored(anchor: HTMLElement) {\r\n this.anchor = anchor;\r\n this.open = true;\r\n }\r\n\r\n get wrapFocus(): boolean {\r\n return this.list_ ? this.list_.wrapFocus : false;\r\n }\r\n\r\n set wrapFocus(value: boolean) {\r\n if (this.list_) {\r\n this.list_.wrapFocus = value;\r\n }\r\n }\r\n\r\n /**\r\n * @return Whether typeahead logic is currently matching some user prefix.\r\n */\r\n get typeaheadInProgress() {\r\n return this.list_ ? this.list_.typeaheadInProgress : false;\r\n }\r\n\r\n /**\r\n * Return the items within the menu. Note that this only contains the set of elements within\r\n * the items container that are proper list items, and not supplemental / presentational DOM\r\n * elements.\r\n */\r\n get items(): Element[] {\r\n return this.list_ ? this.list_.listElements : [];\r\n }\r\n\r\n /**\r\n * Retrieves the selected index. Only applicable to select menus.\r\n * @return The selected index, which is a number for single selection and\r\n * radio lists, and an array of numbers for checkbox lists.\r\n */\r\n get selectedIndex(): MDCListIndex {\r\n return this.list_ ? this.list_.selectedIndex : listConstants.UNSET_INDEX;\r\n }\r\n\r\n /**\r\n * Sets the selected index of the list. Only applicable to select menus.\r\n * @param index The selected index, which is a number for single selection and\r\n * radio lists, and an array of numbers for checkbox lists.\r\n */\r\n set selectedIndex(index: MDCListIndex) {\r\n if (this.list_) {\r\n this.list_.selectedIndex = index;\r\n }\r\n }\r\n\r\n attaching() {\r\n if (this.defaultFocusState !== undefined) {\r\n this.defaultFocusStateChanged();\r\n }\r\n if (this.hoistToBody) {\r\n // when menu is a direct body child there may be a vertical scrollbar briefly shown\r\n // when MDCMenuSurfaceFoundation.cssClasses.OPEN added to the menu surface\r\n // which breaks alignment\r\n this.root.style.position = 'fixed';\r\n }\r\n }\r\n\r\n initialSyncWithDOM() {\r\n this.typeaheadChanged();\r\n }\r\n\r\n /**\r\n * Given the next desired character from the user, adds it to the typeahead\r\n * buffer. Then, attempts to find the next option matching the buffer. Wraps\r\n * around if at the end of options.\r\n *\r\n * @param nextChar The next character to add to the prefix buffer.\r\n * @param startingIndex The index from which to start matching. Only relevant\r\n * when starting a new match sequence. To start a new match sequence,\r\n * clear the buffer using `clearTypeaheadBuffer`, or wait for the buffer\r\n * to clear after a set interval defined in list foundation. Defaults to\r\n * the currently focused index.\r\n * @return The index of the matched item, or -1 if no match.\r\n */\r\n typeaheadMatchItem(nextChar: string, startingIndex?: number): number {\r\n if (this.list_) {\r\n return this.list_.typeaheadMatchItem(nextChar, startingIndex);\r\n }\r\n return -1;\r\n }\r\n\r\n /**\r\n * Layout the underlying list element in the case of any dynamic updates\r\n * to its structure.\r\n */\r\n layout() {\r\n if (this.list_) {\r\n this.list_.layout();\r\n }\r\n }\r\n\r\n /**\r\n * @param corner Default anchor corner alignment of top-left menu corner.\r\n */\r\n setAnchorCorner(corner: Corner) {\r\n this.menuSurface.setAnchorCorner(corner);\r\n }\r\n\r\n /**\r\n * Sets the list item as the selected row at the specified index.\r\n * @param index Index of list item within menu.\r\n */\r\n setSelectedIndex(index: number) {\r\n this.foundation?.setSelectedIndex(index);\r\n }\r\n\r\n /**\r\n * Sets the enabled state to isEnabled for the menu item at the given index.\r\n * @param index Index of the menu item\r\n * @param isEnabled The desired enabled state of the menu item.\r\n */\r\n setEnabled(index: number, isEnabled: boolean): void {\r\n this.foundation?.setEnabled(index, isEnabled);\r\n }\r\n\r\n /**\r\n * @return The item within the menu at the index specified.\r\n */\r\n getOptionByIndex(index: number): Element | null {\r\n const items = this.items;\r\n\r\n if (index < items.length) {\r\n return this.items[index];\r\n } else {\r\n return null;\r\n }\r\n }\r\n\r\n /**\r\n * @param index A menu item's index.\r\n * @return The primary text within the menu at the index specified.\r\n */\r\n getPrimaryTextAtIndex(index: number): string {\r\n const item = this.getOptionByIndex(index);\r\n if (item && this.list_) {\r\n return this.list_.getPrimaryText(item) || '';\r\n }\r\n return '';\r\n }\r\n\r\n setAbsolutePosition(x: number, y: number) {\r\n this.menuSurface.setAbsolutePosition(x, y);\r\n }\r\n\r\n getDefaultFoundation() {\r\n // DO NOT INLINE this variable. For backward compatibility, foundations take a Partial<MDCFooAdapter>.\r\n // To ensure we don't accidentally omit any methods, we need a separate, strongly typed adapter variable.\r\n const adapter: MDCMenuAdapter = {\r\n addClassToElementAtIndex: (index, className) => {\r\n const list = this.items;\r\n list[index].classList.add(className);\r\n },\r\n removeClassFromElementAtIndex: (index, className) => {\r\n const list = this.items;\r\n list[index].classList.remove(className);\r\n },\r\n addAttributeToElementAtIndex: (index, attr, value) => {\r\n const list = this.items;\r\n list[index].setAttribute(attr, value);\r\n },\r\n removeAttributeFromElementAtIndex: (index, attr) => {\r\n const list = this.items;\r\n list[index].removeAttribute(attr);\r\n },\r\n getAttributeFromElementAtIndex: (index, attr) => {\r\n const list = this.items;\r\n return list[index].getAttribute(attr);\r\n },\r\n elementContainsClass: (element, className) => element.classList.contains(className),\r\n closeSurface: (skipRestoreFocus: boolean) => {\r\n if (!this.stayOpenOnSelection) {\r\n this.menuSurface?.close(skipRestoreFocus);\r\n }\r\n },\r\n getElementIndex: (element) => this.items.indexOf(element),\r\n notifySelected: (evtData) => {\r\n const item = this.items[evtData.index];\r\n this.emit<IMdcMenuItemComponentEventDetail>(strings.SELECTED_EVENT,\r\n { index: evtData.index, item, data: CustomElement.for<MdcListItem>(item).viewModel.value });\r\n },\r\n getMenuItemCount: () => this.items.length,\r\n focusItemAtIndex: (index) => (this.items[index] as HTMLElement).focus(),\r\n focusListRoot: () => (this.root.querySelector(strings.LIST_SELECTOR) as HTMLElement).focus(),\r\n isSelectableItemAtIndex: (index) => !!closest(this.items[index], `.${cssClasses.MENU_SELECTION_GROUP}`),\r\n getSelectedSiblingOfItemAtIndex: (index) => {\r\n const selectionGroupEl = closest(this.items[index], `.${cssClasses.MENU_SELECTION_GROUP}`) as HTMLElement;\r\n const selectedItemEl = selectionGroupEl.querySelector(`.${cssClasses.MENU_SELECTED_LIST_ITEM}`);\r\n return selectedItemEl ? this.items.indexOf(selectedItemEl) : -1;\r\n },\r\n };\r\n return new MDCMenuFoundation(adapter);\r\n }\r\n\r\n}\r\n\r\nexport interface IMdcMenuItemComponentEventDetail extends MDCMenuItemComponentEventDetail {\r\n data: unknown;\r\n}\r\n\r\n/** @hidden */\r\nexport interface IMdcMenuItemComponentEvent extends Event {\r\n readonly detail: IMdcMenuItemComponentEventDetail;\r\n}\r\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mdc-menu-surface-anchor.js","sourceRoot":"","sources":["../../src/menu-surface/mdc-menu-surface-anchor.ts"],"names":[],"mappings":";;;;AAAA,qCAAkD;AAClD,yDAAoD;IAIvC,oBAAoB;4BAFhC,IAAA,gBAAM,EAAC,OAAO,CAAC,EACf,IAAA,yBAAe,EAAC,yBAAyB,CAAC;;;;;;;;YAC3C,qLAMC;;;YANY,+DAAoB;;QACX,IAAI;QAAxB,YAAoB,IAAiB;YAAjB,SAAI,GAAJ,IAAI,CAAa;QAAI,CAAC;QAE1C,QAAQ;YACN,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,yBAAU,CAAC,MAAM,CAAC,CAAC;QAC7C,CAAC;;;;AALU,oDAAoB","sourcesContent":["import { inject, customAttribute } from 'aurelia';\r\nimport { cssClasses } from '@material/menu-surface';\r\n\r\n@inject(Element)\r\n@customAttribute('mdc-menu-surface-anchor')\r\nexport class MdcMenuSurfaceAnchor {\r\n constructor(private root: HTMLElement) { }\r\n\r\n attached() {\r\n this.root.classList.add(cssClasses.ANCHOR);\r\n }\r\n}\r\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mdc-menu-surface.js","sourceRoot":"","sources":["../../src/menu-surface/mdc-menu-surface.ts"],"names":[],"mappings":"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","sourcesContent":["import { MdcComponent, booleanAttr, number } from '../base';\r\nimport { MDCMenuSurfaceFoundation, MDCMenuSurfaceAdapter, cssClasses, Corner, MDCMenuDistance, strings } from '@material/menu-surface';\r\nimport { inject, customAttribute, bindable, BindingMode } from 'aurelia';\r\nimport { getCorrectPropertyName } from '@material/animation/util';\r\n\r\nstrings.OPENED_EVENT = strings.OPENED_EVENT.toLowerCase();\r\nstrings.CLOSED_EVENT = strings.CLOSED_EVENT.toLowerCase();\r\n\r\n@inject(Element)\r\n@customAttribute('mdc-menu-surface')\r\nexport class MdcMenuSurface extends MdcComponent<MDCMenuSurfaceFoundation> implements EventListenerObject {\r\n originalParent: HTMLElement | null;\r\n private previousFocus?: HTMLElement | SVGElement | null;\r\n\r\n @bindable()\r\n anchor?: Element | null;\r\n\r\n /** Sets the foundation to use page offsets for an positioning when the menu is hoisted to the body. */\r\n @bindable({ set: booleanAttr, mode: BindingMode.oneTime })\r\n hoistToBody: boolean;\r\n\r\n @bindable({ set: booleanAttr })\r\n fixed: boolean;\r\n fixedChanged() {\r\n if (this.fixed) {\r\n this.root.classList.add(cssClasses.FIXED);\r\n } else {\r\n this.root.classList.remove(cssClasses.FIXED);\r\n }\r\n this.foundation?.setFixedPosition(this.fixed);\r\n }\r\n\r\n @bindable()\r\n anchorCorner?: keyof typeof Corner;\r\n anchorCornerChanged() {\r\n if (this.anchorCorner !== undefined) {\r\n this.foundation?.setAnchorCorner(Corner[this.anchorCorner]);\r\n }\r\n }\r\n\r\n @bindable()\r\n anchorMargin?: Partial<MDCMenuDistance>;\r\n anchorMarginChanged() {\r\n if (this.anchorMargin !== undefined) {\r\n this.foundation?.setAnchorMargin(this.anchorMargin);\r\n }\r\n }\r\n\r\n @bindable({ set: booleanAttr })\r\n quickOpen: boolean;\r\n quickOpenChanged() {\r\n this.foundation?.setQuickOpen(this.quickOpen);\r\n }\r\n\r\n @bindable({ set: booleanAttr })\r\n fullWidth: boolean;\r\n fullWidthChanged() {\r\n if (this.fullWidth) {\r\n this.root.classList.add('mdc-menu-surface--fullwidth');\r\n } else {\r\n this.root.classList.remove('mdc-menu-surface--fullwidth');\r\n }\r\n }\r\n\r\n @bindable({ set: booleanAttr })\r\n stayOpen: boolean;\r\n\r\n @bindable({ set: number })\r\n maxHeight: number;\r\n async maxHeightChanged() {\r\n await this.initialised;\r\n this.foundation?.setMaxHeight(this.maxHeight);\r\n }\r\n\r\n @bindable({ set: booleanAttr })\r\n horizontallyCenteredOnViewport: boolean;\r\n async horizontallyCenteredOnViewportChanged() {\r\n await this.initialised;\r\n this.foundation?.setIsHorizontallyCenteredOnViewport(this.horizontallyCenteredOnViewport);\r\n }\r\n\r\n @bindable({ set: number })\r\n openBottomBias: number;\r\n async openBottomBiasChanged() {\r\n await this.initialised;\r\n this.foundation?.setOpenBottomBias(this.openBottomBias);\r\n }\r\n\r\n get open(): boolean {\r\n return this.foundation?.isOpen() ?? false;\r\n }\r\n\r\n set open(value: boolean) {\r\n if (value) {\r\n this.foundation?.open();\r\n } else {\r\n this.foundation?.close();\r\n }\r\n }\r\n\r\n handleKeydown(evt: KeyboardEvent) {\r\n this.foundation?.handleKeydown(evt);\r\n }\r\n\r\n handleBodyClick(evt: MouseEvent) {\r\n if (!this.stayOpen) {\r\n this.foundation?.handleBodyClick(evt);\r\n }\r\n }\r\n\r\n attaching() {\r\n this.root.classList.add(cssClasses.ROOT);\r\n }\r\n\r\n handleEvent(evt: Event): void {\r\n switch (evt.currentTarget) {\r\n case this.root:\r\n switch (evt.type) {\r\n case 'keydown': this.handleKeydown(evt as KeyboardEvent); break;\r\n }\r\n break;\r\n case document.body:\r\n switch (evt.type) {\r\n case 'click': this.handleBodyClick(evt as MouseEvent); break;\r\n }\r\n break;\r\n }\r\n }\r\n\r\n registerBodyClickListener() {\r\n // this is different to native implementation\r\n // refer to https://github.com/material-components/material-components-web/issues/6188\r\n // capture so that no race between handleBodyClick and quickOpen when\r\n // menusurface opened on button click which registers this listener\r\n document.body.addEventListener('click', this);\r\n }\r\n\r\n deregisterBodyClickListener() {\r\n document.body.removeEventListener('click', this);\r\n }\r\n\r\n initialSyncWithDOM() {\r\n this.fixedChanged();\r\n this.fullWidthChanged();\r\n this.quickOpenChanged();\r\n this.anchorCornerChanged();\r\n this.anchorMarginChanged();\r\n\r\n const parentEl = this.root.parentElement;\r\n if (!this.anchor) {\r\n this.anchor = parentEl?.classList.contains(cssClasses.ANCHOR) ? parentEl : null;\r\n }\r\n if (this.hoistToBody) {\r\n this.originalParent = this.root.parentElement;\r\n if (this.originalParent) {\r\n document.body.appendChild(this.originalParent.removeChild(this.root));\r\n this.foundation?.setIsHoisted(true);\r\n }\r\n }\r\n this.foundation?.setFixedPosition(this.fixed);\r\n if (this.anchorCorner) {\r\n this.foundation?.setAnchorCorner(Corner[this.anchorCorner]);\r\n }\r\n if (this.anchorMargin) {\r\n this.foundation?.setAnchorMargin(this.anchorMargin);\r\n }\r\n if (this.maxHeight) {\r\n this.foundation?.setMaxHeight(this.maxHeight);\r\n }\r\n if (this.horizontallyCenteredOnViewport !== undefined) {\r\n this.foundation?.setIsHorizontallyCenteredOnViewport(this.horizontallyCenteredOnViewport);\r\n }\r\n this.listen('keydown', this);\r\n }\r\n\r\n destroy() {\r\n this.unlisten('keydown', this);\r\n if (this.originalParent) {\r\n this.originalParent.appendChild(document.body.removeChild(this.root));\r\n }\r\n super.destroy();\r\n }\r\n\r\n close(skipRestoreFocus = false) {\r\n this.foundation?.close(skipRestoreFocus);\r\n }\r\n\r\n /** Sets the absolute x/y position to position based on. Requires the menu to be hoisted. */\r\n setAbsolutePosition(x: number, y: number) {\r\n this.foundation?.setAbsolutePosition(x, y);\r\n this.hoistToBody = true;\r\n }\r\n\r\n /**\r\n * @param corner Default anchor corner alignment of top-left surface corner.\r\n */\r\n setAnchorCorner(corner: Corner) {\r\n this.foundation?.setAnchorCorner(corner);\r\n }\r\n\r\n getDefaultFoundation() {\r\n // DO NOT INLINE this variable. For backward compatibility, foundations take a Partial<MDCFooAdapter>.\r\n // To ensure we don't accidentally omit any methods, we need a separate, strongly typed adapter variable.\r\n const adapter: MDCMenuSurfaceAdapter = {\r\n addClass: (className) => this.root.classList.add(className),\r\n removeClass: (className) => this.root.classList.remove(className),\r\n hasClass: (className) => this.root.classList.contains(className),\r\n hasAnchor: () => !!this.anchor,\r\n notifyClose: () => {\r\n this.emit(MDCMenuSurfaceFoundation.strings.CLOSED_EVENT, {});\r\n this.deregisterBodyClickListener();\r\n },\r\n notifyClosing: () => {\r\n this.emit(MDCMenuSurfaceFoundation.strings.CLOSING_EVENT, {});\r\n },\r\n notifyOpen: () => {\r\n this.emit(MDCMenuSurfaceFoundation.strings.OPENED_EVENT, {});\r\n this.registerBodyClickListener();\r\n },\r\n notifyOpening: () => {\r\n this.emit(MDCMenuSurfaceFoundation.strings.OPENING_EVENT, {});\r\n },\r\n isElementInContainer: (el) => this.root.contains(el),\r\n isRtl: () => getComputedStyle(this.root).getPropertyValue('direction') === 'rtl',\r\n setTransformOrigin: (origin) => {\r\n const propertyName =\r\n `${getCorrectPropertyName(window, 'transform')}-origin`;\r\n this.root.style.setProperty(propertyName, origin);\r\n },\r\n isFocused: () => document.activeElement === this.root,\r\n saveFocus: () => {\r\n this.previousFocus = document.activeElement as HTMLElement | SVGElement | null;\r\n },\r\n restoreFocus: () => {\r\n if (this.root.contains(document.activeElement)) {\r\n if (this.previousFocus?.focus) {\r\n this.previousFocus.focus();\r\n }\r\n }\r\n },\r\n getInnerDimensions: () => {\r\n const firstChild = this.root.firstElementChild as HTMLElement;\r\n // workaround https://github.com/material-components/material-components-web/issues/6709\r\n // by explicitly displaying vertical scroll if a list does not fit\r\n this.root.style.overflowY = this.root.offsetHeight < firstChild.offsetHeight ? 'scroll' : '';\r\n return {\r\n width: this.root.offsetWidth,\r\n height: this.root.offsetHeight\r\n };\r\n },\r\n getAnchorDimensions: () => this.anchor ? this.anchor.getBoundingClientRect() : null,\r\n getWindowDimensions: () => {\r\n return { width: window.innerWidth, height: window.innerHeight };\r\n },\r\n getBodyDimensions: () => {\r\n return { width: document.body.clientWidth, height: document.body.clientHeight };\r\n },\r\n getWindowScroll: () => {\r\n return { x: window.pageXOffset, y: window.pageYOffset };\r\n },\r\n setPosition: (position) => {\r\n const rootHTML = this.root;\r\n rootHTML.style.left = 'left' in position ? `${position.left}px` : '';\r\n rootHTML.style.right = 'right' in position ? `${position.right}px` : '';\r\n rootHTML.style.top = 'top' in position ? `${position.top}px` : '';\r\n rootHTML.style.bottom = 'bottom' in position ? `${position.bottom}px` : '';\r\n },\r\n setMaxHeight: (height) => {\r\n (this.root).style.maxHeight = height;\r\n },\r\n };\r\n return new MDCMenuSurfaceFoundation(adapter);\r\n }\r\n\r\n}\r\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mdc-notched-outline.js","sourceRoot":"","sources":["../../src/notched-outline/mdc-notched-outline.ts"],"names":[],"mappings":";;;;AAAA,kCAAuC;AACvC,+DAA8G;AAC9G,6DAAsE;AACtE,qCAAyD;AACzD,0GAAsD;IAIzC,iBAAiB;4BAF7B,IAAA,gBAAM,EAAC,OAAO,CAAC,EACf,IAAA,uBAAa,EAAC,EAAE,IAAI,EAAE,qBAAqB,EAAE,QAAQ,EAAR,sCAAQ,EAAE,CAAC;;;;sBAClB,mBAAY;;;;iCAApB,SAAQ,WAAyC;;;;kCAK7E,IAAA,iBAAO,EAAC,EAAE,KAAK,EAAE,IAAI,2CAA0B,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC;YACrE,4KAAA,MAAM,6BAAN,MAAM,uFAAgB;YANxB,qLAmDC;;;YAnDY,+DAAiB;;QACpB,aAAa,CAAe,CAAC,mBAAmB;QAExD,KAAK,CAAe;QAGpB,MAAM,iEAAgB;QACtB,aAAa;YACX,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;gBACvB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;gBAC5B,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,kBAAkB,GAAG,IAAI,CAAC;gBAC3C,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,4BAAU,CAAC,gBAAgB,CAAC,CAAC;gBACrD,qBAAqB,CAAC,GAAG,EAAE;oBACzB,IAAI,CAAC,KAAM,CAAC,KAAK,CAAC,kBAAkB,GAAG,EAAE,CAAC;gBAC5C,CAAC,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;YACzB,CAAC;QACH,CAAC;QAED,kBAAkB;YAChB,IAAI,CAAC,aAAa,EAAE,CAAC;QACvB,CAAC;QAED;;;WAGG;QACH,KAAK,CAAC,UAAkB;YACtB,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;QACrC,CAAC;QAED;;WAEG;QACH,UAAU;YACR,IAAI,CAAC,UAAU,EAAE,UAAU,EAAE,CAAC;QAChC,CAAC;QAED,oBAAoB;YAClB,sGAAsG;YACtG,yGAAyG;YACzG,MAAM,OAAO,GAA6B;gBACxC,QAAQ,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC;gBAC3D,WAAW,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC;gBACjE,qBAAqB,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,WAAW,CAAC,OAAO,EAAE,GAAG,KAAK,IAAI,CAAC;gBAC7F,wBAAwB,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC;aACjF,CAAC;YACF,OAAO,IAAI,6CAA2B,CAAC,OAAO,CAAC,CAAC;QAClD,CAAC;;;;;;;;AAjDU,8CAAiB","sourcesContent":["import { MdcComponent } from '../base';\r\nimport { MDCNotchedOutlineFoundation, MDCNotchedOutlineAdapter, cssClasses } from '@material/notched-outline';\r\nimport { MDCFloatingLabelFoundation } from '@material/floating-label';\r\nimport { inject, customElement, slotted } from 'aurelia';\r\nimport template from './mdc-notched-outline.html?raw';\r\n\r\n@inject(Element)\r\n@customElement({ name: 'mdc-notched-outline', template })\r\nexport class MdcNotchedOutline extends MdcComponent<MDCNotchedOutlineFoundation> {\r\n private notchElement_!: HTMLElement; // assigned in html\r\n\r\n label?: HTMLElement;\r\n\r\n @slotted({ query: `.${MDCFloatingLabelFoundation.cssClasses.ROOT}` })\r\n labels: HTMLElement[];\r\n labelsChanged() {\r\n if (this.labels.length) {\r\n this.label = this.labels[0];\r\n this.label.style.transitionDuration = '0s';\r\n this.root.classList.add(cssClasses.OUTLINE_UPGRADED);\r\n requestAnimationFrame(() => {\r\n this.label!.style.transitionDuration = '';\r\n });\r\n } else {\r\n this.label = undefined;\r\n }\r\n }\r\n\r\n initialSyncWithDOM() {\r\n this.labelsChanged();\r\n }\r\n\r\n /**\r\n * Updates classes and styles to open the notch to the specified width.\r\n * @param notchWidth The notch width in the outline.\r\n */\r\n notch(notchWidth: number) {\r\n this.foundation?.notch(notchWidth);\r\n }\r\n\r\n /**\r\n * Updates classes and styles to close the notch.\r\n */\r\n closeNotch() {\r\n this.foundation?.closeNotch();\r\n }\r\n\r\n getDefaultFoundation() {\r\n // DO NOT INLINE this variable. For backward compatibility, foundations take a Partial<MDCFooAdapter>.\r\n // To ensure we don't accidentally omit any methods, we need a separate, strongly typed adapter variable.\r\n const adapter: MDCNotchedOutlineAdapter = {\r\n addClass: (className) => this.root.classList.add(className),\r\n removeClass: (className) => this.root.classList.remove(className),\r\n setNotchWidthProperty: (width) => this.notchElement_.style.setProperty('width', `${width}px`),\r\n removeNotchWidthProperty: () => this.notchElement_.style.removeProperty('width'),\r\n };\r\n return new MDCNotchedOutlineFoundation(adapter);\r\n }\r\n\r\n}\r\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mdc-radio.js","sourceRoot":"","sources":["../../src/radio/mdc-radio.ts"],"names":[],"mappings":"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","sourcesContent":["import { MdcComponent, booleanAttr } from '../base';\r\nimport { MDCRadioFoundation, MDCRadioAdapter } from '@material/radio';\r\nimport { inject, customElement, CustomElement, bindable } from 'aurelia';\r\nimport template from './mdc-radio.html?raw';\r\n\r\nlet radioId = 0;\r\n\r\n/**\r\n * @selector mdc-radio\r\n */\r\n@inject(Element)\r\n@customElement({ name: 'mdc-radio', template })\r\nexport class MdcRadio extends MdcComponent<MDCRadioFoundation> {\r\n constructor(root: IMdcRadioElement) {\r\n super(root);\r\n defineMdcRadioElementApis(this.root);\r\n }\r\n\r\n nativeControl_: HTMLInputElement;\r\n\r\n id = `mdc-radio-${++radioId}-input`;\r\n\r\n /** Disables the component */\r\n @bindable({ set: booleanAttr })\r\n disabled: boolean;\r\n disabledChanged() {\r\n if (this.nativeControl_) {\r\n this.nativeControl_.disabled = this.disabled;\r\n }\r\n }\r\n\r\n /** Set the component touch target to 48 x 48 px */\r\n @bindable({ set: booleanAttr })\r\n touch: boolean;\r\n\r\n _checked?: boolean;\r\n /** Use to verify the checked value */\r\n get checked(): boolean {\r\n if (this.nativeControl_) {\r\n return this.nativeControl_.checked;\r\n } else {\r\n return this._checked ?? false;\r\n }\r\n }\r\n\r\n set checked(checked: boolean) {\r\n this._checked = checked;\r\n if (this.nativeControl_) {\r\n this.nativeControl_.checked = checked;\r\n }\r\n }\r\n\r\n _value?: string;\r\n /** Value of the radio button */\r\n get value(): string {\r\n if (this.nativeControl_) {\r\n return this.nativeControl_.value;\r\n } else {\r\n return this._value ?? '';\r\n }\r\n }\r\n\r\n set value(value: string) {\r\n this._value = value;\r\n if (this.nativeControl_) {\r\n this.nativeControl_.value = value;\r\n }\r\n }\r\n\r\n attaching() {\r\n if (this.root.hasAttribute('checked')) {\r\n const attributeValue = this.root.getAttribute('checked');\r\n\r\n if (attributeValue || attributeValue === '') {\r\n (this.root as IMdcRadioElement).checked = true;\r\n }\r\n }\r\n }\r\n\r\n initialSyncWithDOM() {\r\n this.disabledChanged();\r\n if (this._checked !== undefined) {\r\n this.checked = this._checked;\r\n }\r\n if (this._value !== undefined) {\r\n this.value = this._value;\r\n }\r\n }\r\n\r\n destroy() {\r\n this._checked = undefined;\r\n }\r\n\r\n getDefaultFoundation() {\r\n // DO NOT INLINE this variable. For backward compatibility, foundations take a Partial<MDCFooAdapter>.\r\n // To ensure we don't accidentally omit any methods, we need a separate, strongly typed adapter variable.\r\n const adapter: MDCRadioAdapter = {\r\n addClass: (className) => this.root.classList.add(className),\r\n removeClass: (className) => this.root.classList.remove(className),\r\n setNativeControlDisabled: (disabled) => this.nativeControl_.disabled =\r\n disabled,\r\n };\r\n return new MDCRadioFoundation(adapter);\r\n }\r\n\r\n /** Set focus to the radio button */\r\n focus() {\r\n this.nativeControl_.focus();\r\n }\r\n\r\n /** Set focus away from the radio button */\r\n blur() {\r\n this.nativeControl_.blur();\r\n }\r\n}\r\n\r\n/** @hidden */\r\nexport interface IMdcRadioElement extends HTMLElement {\r\n checked: boolean;\r\n $au: {\r\n 'au:resource:custom-element': {\r\n viewModel: MdcRadio;\r\n };\r\n };\r\n}\r\n\r\nfunction defineMdcRadioElementApis(element: HTMLElement) {\r\n Object.defineProperties(element, {\r\n type: {\r\n value: 'radio',\r\n },\r\n checked: {\r\n get(this: IMdcRadioElement) {\r\n return CustomElement.for<MdcRadio>(this).viewModel.checked;\r\n },\r\n set(this: IMdcRadioElement, value: boolean) {\r\n CustomElement.for<MdcRadio>(this).viewModel.checked = value;\r\n },\r\n configurable: true\r\n },\r\n value: {\r\n get(this: IMdcRadioElement) {\r\n return CustomElement.for<MdcRadio>(this).viewModel.value;\r\n },\r\n set(this: IMdcRadioElement, value: string) {\r\n CustomElement.for<MdcRadio>(this).viewModel.value = value;\r\n }\r\n },\r\n focus: {\r\n value(this: IMdcRadioElement) {\r\n CustomElement.for<MdcRadio>(this).viewModel.focus();\r\n },\r\n configurable: true\r\n },\r\n blur: {\r\n value(this: IMdcRadioElement) {\r\n CustomElement.for<MdcRadio>(this).viewModel.blur();\r\n },\r\n configurable: true\r\n }\r\n });\r\n}\r\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mdc-ripple.js","sourceRoot":"","sources":["../../src/ripple/mdc-ripple.ts"],"names":[],"mappings":"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","sourcesContent":["import { MdcComponent, booleanAttr } from '../base';\r\nimport { MDCRippleFoundation, MDCRippleAdapter, util } from '@material/ripple';\r\nimport { matches } from '@material/dom/ponyfill';\r\nimport { applyPassive } from '@material/dom/events';\r\nimport { customAttribute, bindable, inject } from 'aurelia';\r\n\r\n@inject(Element)\r\n@customAttribute('mdc-ripple')\r\nexport class MdcRipple extends MdcComponent<MDCRippleFoundation> {\r\n @bindable()\r\n input?: HTMLInputElement;\r\n\r\n @bindable()\r\n surface?: HTMLElement;\r\n\r\n @bindable()\r\n computeBoundingRect: () => ClientRect;\r\n\r\n @bindable({ set: booleanAttr })\r\n disabled: boolean;\r\n\r\n @bindable({ set: booleanAttr })\r\n unbounded: boolean;\r\n unboundedChanged() {\r\n this.foundation?.setUnbounded(Boolean(this.unbounded));\r\n }\r\n\r\n @bindable({ set: booleanAttr })\r\n activeSurface: boolean;\r\n\r\n @bindable({ set: booleanAttr })\r\n noClass: boolean;\r\n\r\n @bindable({ set: booleanAttr })\r\n primary: boolean;\r\n\r\n @bindable({ set: booleanAttr })\r\n accent: boolean;\r\n\r\n attaching() {\r\n if (!this.noClass) {\r\n (this.surface ?? this.root).classList.add('mdc-ripple-surface');\r\n if (this.primary) {\r\n (this.surface ?? this.root).classList.add('mdc-ripple-surface--primary');\r\n }\r\n if (this.accent) {\r\n (this.surface ?? this.root).classList.add('mdc-ripple-surface--accent');\r\n }\r\n }\r\n }\r\n\r\n initialSyncWithDOM() {\r\n this.unboundedChanged();\r\n }\r\n\r\n activate() {\r\n this.foundation?.activate();\r\n }\r\n\r\n deactivate() {\r\n this.foundation?.deactivate();\r\n }\r\n\r\n layout() {\r\n this.foundation?.layout();\r\n }\r\n\r\n getDefaultFoundation() {\r\n return new MDCRippleFoundation(this.createAdapter());\r\n }\r\n\r\n createAdapter(): MDCRippleAdapter {\r\n return {\r\n addClass: (className) => (this.surface ?? this.root).classList.add(className),\r\n browserSupportsCssVars: () => util.supportsCssVariables(window),\r\n computeBoundingRect: this.computeBoundingRect ?? (() => (this.surface ?? this.root).getBoundingClientRect()),\r\n containsEventTarget: (target) => this.root.contains(target as Node),\r\n deregisterDocumentInteractionHandler: (evtType, handler) => document.documentElement.removeEventListener(evtType, handler, applyPassive()),\r\n deregisterInteractionHandler: (evtType, handler) => {\r\n if (this.input) {\r\n this.input.removeEventListener(evtType, handler, applyPassive());\r\n } else {\r\n this.root.removeEventListener(evtType, handler, applyPassive());\r\n }\r\n },\r\n deregisterResizeHandler: (handler) => window.removeEventListener('resize', handler),\r\n getWindowPageOffset: () => ({ x: window.pageXOffset, y: window.pageYOffset }),\r\n isSurfaceActive: () => this.activeSurface && matches(this.input ?? this.root, ':active'),\r\n isSurfaceDisabled: () => this.disabled,\r\n isUnbounded: () => this.unbounded,\r\n registerDocumentInteractionHandler: (evtType, handler) => document.documentElement.addEventListener(evtType, handler, applyPassive()),\r\n registerInteractionHandler: (evtType, handler) => {\r\n if (this.input) {\r\n this.input.addEventListener(evtType, handler, applyPassive());\r\n } else {\r\n this.root.addEventListener(evtType, handler, applyPassive());\r\n }\r\n },\r\n registerResizeHandler: (handler) => window.addEventListener('resize', handler),\r\n removeClass: (className) => (this.surface ?? this.root).classList.remove(className),\r\n updateCssVariable: (varName, value) => (this.surface ?? this.root).style.setProperty(varName, value),\r\n };\r\n }\r\n}\r\n\r\n/** @hidden */\r\nexport interface IMdcRippleElement extends HTMLElement {\r\n $au: {\r\n 'au:resource:custom-attribute:mdc-ripple': {\r\n viewModel: MdcRipple;\r\n // boundProperties: { binding: Binding & { targetProperty: string }; observer: BehaviorPropertyObserver }[];\r\n };\r\n };\r\n}\r\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"enhance-mdc-segmented-button-segment.js","sourceRoot":"","sources":["../../../src/segmented-button/mdc-segmented-button-segment/enhance-mdc-segmented-button-segment.ts"],"names":[],"mappings":";;;;AAAA,qCAAgD;IAGnC,gCAAgC;4BAD5C,+BAAqB;;;;;;;;YACtB,qLAIC;;;YAJY,+DAAgC;;QAC3C,SAAS,CAAC,QAA2C;YACnD,QAAQ,CAAC,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAC,UAAU,CAAC,iCAAiC,EAAE,gFAAgF,CAAC,CAAC;QAC1K,CAAC;;;;AAHU,4EAAgC","sourcesContent":["import { templateCompilerHooks } from 'aurelia';\r\n\r\n@templateCompilerHooks\r\nexport class EnhanceMdcSegmentedButtonSegment {\r\n compiling(template: HTMLElement | HTMLTemplateElement) {\r\n template.innerHTML = template.innerHTML.replaceAll('mdc-segmented-button-segment=\"\"', 'as-element=\"mdc-segmented-button-segment\" mdc-segmented-button-segment-element');\r\n }\r\n}\r\n"]}
|
package/dist/segmented-button/mdc-segmented-button-segment/mdc-segmented-button-segment.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mdc-segmented-button-segment.js","sourceRoot":"","sources":["../../../src/segmented-button/mdc-segmented-button-segment/mdc-segmented-button-segment.ts"],"names":[],"mappings":"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","sourcesContent":["import { booleanAttr, MdcComponent } from '../../base';\r\nimport { CustomElement } from '@aurelia/runtime-html';\r\nimport { inject, customElement, bindable } from 'aurelia';\r\nimport { MDCSegmentedButtonSegmentAdapter, MDCSegmentedButtonSegmentFoundation, SegmentDetail } from '@material/segmented-button';\r\nimport { events } from '@material/segmented-button/segmented-button/constants';\r\nimport template from './mdc-segmented-button-segment.html?raw';\r\nimport { MdcSegmentedButton } from '../mdc-segmented-button';\r\n\r\n/**\r\n * @selector button[mdc-segmented-button-segment]\r\n */\r\n@inject(Element, MdcSegmentedButton)\r\n@customElement({ name: 'mdc-segmented-button-segment', template })\r\nexport class MdcSegmentedButtonSegment extends MdcComponent<MDCSegmentedButtonSegmentFoundation> {\r\n constructor(root: IMdcSegmentedButtonSegmentElement) {\r\n super(root);\r\n defineMdcSegmentedButtonSegmentElementApis(root);\r\n }\r\n\r\n private isSingleSelect: boolean;\r\n private index: number;\r\n\r\n /** Indicates the segment has touch target support */\r\n @bindable({ set: booleanAttr })\r\n touch: boolean;\r\n\r\n /** Sets an icon in the segment */\r\n @bindable()\r\n icon: string;\r\n\r\n private _checked?: boolean;\r\n /** Use to verify the checked value */\r\n get checked(): boolean {\r\n if (this.foundation) {\r\n return this.foundation?.isSelected();\r\n } else {\r\n return this._checked ?? false;\r\n }\r\n }\r\n\r\n /**\r\n * Whether the segment is checked.\r\n */\r\n set checked(value: boolean) {\r\n this._checked = value;\r\n if (value) {\r\n this.foundation?.setSelected();\r\n } else {\r\n this.foundation?.setUnselected();\r\n }\r\n }\r\n\r\n handleClick() {\r\n this.foundation?.handleClick();\r\n }\r\n\r\n // eslint-disable-next-line @typescript-eslint/require-await\r\n async beforeFoundationCreated() {\r\n if (this.root.hasAttribute('checked')) {\r\n const attributeValue = this.root.getAttribute('checked');\r\n\r\n if (attributeValue || attributeValue === '') {\r\n this.checked = true;\r\n }\r\n }\r\n }\r\n\r\n initialSyncWithDOM() {\r\n if (this._checked !== undefined) {\r\n this.checked = this._checked;\r\n }\r\n }\r\n\r\n getDefaultFoundation(): MDCSegmentedButtonSegmentFoundation {\r\n // DO NOT INLINE this variable. For backward compatibility, foundations take\r\n // a Partial<MDCFooAdapter>. To ensure we don't accidentally omit any\r\n // methods, we need a separate, strongly typed adapter variable.\r\n // tslint:disable:object-literal-sort-keys Methods should be in the same order as the adapter interface.\r\n const adapter: MDCSegmentedButtonSegmentAdapter = {\r\n isSingleSelect: () => {\r\n return this.isSingleSelect;\r\n },\r\n getAttr: (attrName) => {\r\n return this.root.getAttribute(attrName);\r\n },\r\n setAttr: (attrName, value) => {\r\n this.root.setAttribute(attrName, value);\r\n },\r\n addClass: (className) => {\r\n this.root.classList.add(className);\r\n },\r\n removeClass: (className) => {\r\n this.root.classList.remove(className);\r\n },\r\n hasClass: (className) => {\r\n return this.root.classList.contains(className);\r\n },\r\n notifySelectedChange: selected => this.notifySelectedChange(events.SELECTED, selected),\r\n getRootBoundingClientRect: () => {\r\n return this.root.getBoundingClientRect();\r\n }\r\n };\r\n return new MDCSegmentedButtonSegmentFoundation(adapter);\r\n }\r\n\r\n notifySelectedChange(event: string, selected: boolean) {\r\n this.emit<SegmentDetail>(\r\n event, {\r\n index: this.index,\r\n selected,\r\n segmentId: this.getSegmentId()\r\n }, true /* shouldBubble */);\r\n }\r\n\r\n setIsSingleSelect(isSingleSelect: boolean) {\r\n this.isSingleSelect = isSingleSelect;\r\n this.root.setAttribute('role', isSingleSelect ? 'radio' : '');\r\n }\r\n\r\n /**\r\n * Sets segment's index value\r\n *\r\n * @hidden\r\n * @param index Segment's index within wrapping segmented button\r\n */\r\n setIndex(index: number) {\r\n this.index = index;\r\n }\r\n\r\n /**\r\n * @hidden\r\n * @return Returns segment's segmentId if it was set by client\r\n */\r\n getSegmentId(): string | undefined {\r\n return this.foundation?.getSegmentId();\r\n }\r\n}\r\n\r\n/** @hidden */\r\nexport interface IMdcSegmentedButtonSegmentElement extends HTMLElement {\r\n checked: boolean;\r\n indeterminate: boolean;\r\n $au: {\r\n 'au:resource:custom-element': {\r\n viewModel: MdcSegmentedButtonSegment;\r\n };\r\n };\r\n}\r\n\r\nfunction defineMdcSegmentedButtonSegmentElementApis(element: IMdcSegmentedButtonSegmentElement) {\r\n Object.defineProperties(element, {\r\n type: {\r\n value: 'checkbox'\r\n },\r\n tagName: {\r\n get() {\r\n return 'MDC-SEGMENTED-BUTTON-SEGMENT';\r\n }\r\n },\r\n checked: {\r\n get(this: IMdcSegmentedButtonSegmentElement) {\r\n return CustomElement.for<MdcSegmentedButtonSegment>(this).viewModel.checked;\r\n },\r\n set(this: IMdcSegmentedButtonSegmentElement, value: boolean) {\r\n CustomElement.for<MdcSegmentedButtonSegment>(this).viewModel.checked = value;\r\n },\r\n configurable: true\r\n }\r\n });\r\n}\r\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mdc-segmented-button.js","sourceRoot":"","sources":["../../src/segmented-button/mdc-segmented-button.ts"],"names":[],"mappings":"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","sourcesContent":["import { booleanAttr, MdcComponent } from '../base';\r\nimport { MDCSegmentedButtonAdapter, MDCSegmentedButtonFoundation, SegmentDetail } from '@material/segmented-button';\r\nimport { events } from '@material/segmented-button/segmented-button/constants';\r\nimport { inject, customElement, bindable, slotted, CustomElement } from 'aurelia';\r\nimport { MdcSegmentedButtonSegment } from './mdc-segmented-button-segment/mdc-segmented-button-segment';\r\nimport template from './mdc-segmented-button.html?raw';\r\n\r\n/**\r\n * @selector mdc-segmented-button\r\n */\r\n@inject(Element)\r\n@customElement({ name: 'mdc-segmented-button', template })\r\nexport class MdcSegmentedButton extends MdcComponent<MDCSegmentedButtonFoundation> {\r\n\r\n /** Indicates the segmented button only allows one segment to be selected at a time */\r\n @bindable({ set: booleanAttr })\r\n single: boolean;\r\n singleChanged() {\r\n this.root.setAttribute('role', this.single ? 'radiogroup' : 'group');\r\n }\r\n\r\n @slotted({ query: 'button' })\r\n segmentElements!: HTMLElement[];\r\n\r\n get segmentsList(): MdcSegmentedButtonSegment[] {\r\n return this.segmentElements.map(x => CustomElement.for<MdcSegmentedButtonSegment>(x).viewModel);\r\n }\r\n\r\n initialSyncWithDOM() {\r\n const isSingleSelect = this.foundation!.isSingleSelect();\r\n for (let i = 0; i < this.segmentsList.length; i++) {\r\n const segment = this.segmentsList[i];\r\n segment.setIndex(i);\r\n segment.setIsSingleSelect(isSingleSelect);\r\n }\r\n }\r\n\r\n handleSelected(event: CustomEvent<SegmentDetail>) {\r\n this.foundation?.handleSelected(event.detail);\r\n }\r\n\r\n getDefaultFoundation(): MDCSegmentedButtonFoundation {\r\n const adapter: MDCSegmentedButtonAdapter = {\r\n hasClass: (className) => {\r\n return this.root.classList.contains(className);\r\n },\r\n getSegments: () => {\r\n return this.mappedSegments();\r\n },\r\n selectSegment: (indexOrSegmentId) => {\r\n const segmentDetail = this.mappedSegments().find(\r\n (detail) => detail.index === indexOrSegmentId ||\r\n detail.segmentId === indexOrSegmentId);\r\n if (segmentDetail) {\r\n this.segmentsList[segmentDetail.index].checked = true;\r\n }\r\n },\r\n unselectSegment: (indexOrSegmentId) => {\r\n const segmentDetail = this.mappedSegments().find(\r\n (detail) => detail.index === indexOrSegmentId ||\r\n detail.segmentId === indexOrSegmentId);\r\n if (segmentDetail) {\r\n this.segmentsList[segmentDetail.index].checked = false;\r\n this.segmentsList[segmentDetail.index].notifySelectedChange('unselected', false);\r\n }\r\n },\r\n notifySelectedChange: (detail) => {\r\n this.emit<SegmentDetail>(\r\n events.CHANGE, detail, true /* shouldBubble */\r\n );\r\n }\r\n };\r\n return new MDCSegmentedButtonFoundation(adapter);\r\n }\r\n\r\n /**\r\n * @return Returns child segments mapped to readonly SegmentDetail list\r\n */\r\n private mappedSegments(): readonly SegmentDetail[] {\r\n return this.segmentsList.map(\r\n (segment: MdcSegmentedButtonSegment, index: number) => {\r\n return {\r\n index,\r\n selected: segment.checked,\r\n segmentId: segment.getSegmentId()\r\n };\r\n });\r\n }\r\n}\r\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mdc-default-select-configuration.js","sourceRoot":"","sources":["../../src/select/mdc-default-select-configuration.ts"],"names":[],"mappings":";;;AAAA,MAAa,6BAA6B;IACxC,QAAQ,CAAW;CACpB;AAFD,sEAEC","sourcesContent":["export class MdcDefaultSelectConfiguration {\r\n outlined?: boolean;\r\n}\r\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mdc-select-adapter-aurelia.js","sourceRoot":"","sources":["../../src/select/mdc-select-adapter-aurelia.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG","sourcesContent":["/**\r\n * @license\r\n * Copyright 2018 Google Inc.\r\n *\r\n * Permission is hereby granted, free of charge, to any person obtaining a copy\r\n * of this software and associated documentation files (the \"Software\"), to deal\r\n * in the Software without restriction, including without limitation the rights\r\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\r\n * copies of the Software, and to permit persons to whom the Software is\r\n * furnished to do so, subject to the following conditions:\r\n *\r\n * The above copyright notice and this permission notice shall be included in\r\n * all copies or substantial portions of the Software.\r\n *\r\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\r\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\r\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\r\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\r\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\r\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\r\n * THE SOFTWARE.\r\n */\r\n\r\nimport {Corner} from '@material/menu-surface/constants';\r\n\r\n/**\r\n * Defines the shape of the adapter expected by the foundation.\r\n * Implement this adapter for your framework of choice to delegate updates to\r\n * the component in your framework of choice. See architecture documentation\r\n * for more details.\r\n * https://github.com/material-components/material-components-web/blob/master/docs/code/architecture.md\r\n * @hidden\r\n */\r\nexport interface MDCSelectAdapterAurelia {\r\n /**\r\n * Adds class to select anchor element.\r\n */\r\n addClass(className: string): void;\r\n\r\n /**\r\n * Removes a class from the select anchor element.\r\n */\r\n removeClass(className: string): void;\r\n\r\n /**\r\n * Returns true if the select anchor element contains the given class name.\r\n */\r\n hasClass(className: string): boolean;\r\n\r\n /**\r\n * Activates the bottom line, showing a focused state.\r\n */\r\n activateBottomLine(): void;\r\n\r\n /**\r\n * Deactivates the bottom line.\r\n */\r\n deactivateBottomLine(): void;\r\n\r\n /**\r\n * Returns true if label exists, false if it doesn't.\r\n */\r\n hasLabel(): boolean;\r\n\r\n /**\r\n * Floats label determined based off of the shouldFloat argument.\r\n */\r\n floatLabel(shouldFloat: boolean): void;\r\n\r\n /**\r\n * Returns width of label in pixels, if the label exists.\r\n */\r\n getLabelWidth(): number;\r\n\r\n /**\r\n * Styles the label as required, if the label exists.\r\n */\r\n setLabelRequired(isRequired: boolean): void;\r\n\r\n /**\r\n * Returns true if outline element exists, false if it doesn't.\r\n */\r\n hasOutline(): boolean;\r\n\r\n /**\r\n * Only implement if outline element exists.\r\n */\r\n notchOutline(labelWidth: number): void;\r\n\r\n /**\r\n * Closes notch in outline element, if the outline exists.\r\n */\r\n closeOutline(): void;\r\n\r\n /**\r\n * Sets the line ripple transform origin center.\r\n */\r\n setRippleCenter(normalizedX: number): void;\r\n\r\n /**\r\n * Emits a change event when an element is selected.\r\n * !!! MODIFIED FOR AURELIA !!!\r\n */\r\n notifyChange(value: unknown): void;\r\n\r\n /**\r\n * Sets the text content of the selectedText element to the given string.\r\n */\r\n setSelectedText(text: string): void;\r\n\r\n /**\r\n * Returns whether the select anchor is focused.\r\n */\r\n isSelectAnchorFocused(): boolean;\r\n\r\n /**\r\n * Gets the given attribute on the select anchor element.\r\n */\r\n getSelectAnchorAttr(attr: string): string|null;\r\n\r\n /**\r\n * Sets the given attribute on the select anchor element.\r\n */\r\n setSelectAnchorAttr(attr: string, value: string): void;\r\n\r\n /**\r\n * Removes the given attribute on the select anchor element.\r\n */\r\n removeSelectAnchorAttr(attr: string): void;\r\n\r\n // Menu-related methods ======================================================\r\n /**\r\n * Adds class to the menu element.\r\n */\r\n addMenuClass(className: string): void;\r\n\r\n /**\r\n * Removes a class from the menu element.\r\n */\r\n removeMenuClass(className: string): void;\r\n\r\n /**\r\n * Opens the menu.\r\n */\r\n openMenu(): void;\r\n\r\n /**\r\n * Closes the menu.\r\n */\r\n closeMenu(): void;\r\n\r\n /**\r\n * Returns the select anchor element.\r\n */\r\n getAnchorElement(): Element | null;\r\n\r\n /**\r\n * Sets the menu anchor element.\r\n */\r\n setMenuAnchorElement(anchorEl: Element): void;\r\n\r\n /**\r\n * Sets the menu anchor corner.\r\n */\r\n setMenuAnchorCorner(anchorCorner: Corner): void;\r\n\r\n /**\r\n * Sets whether the menu should wrap focus.\r\n */\r\n setMenuWrapFocus(wrapFocus: boolean): void;\r\n\r\n /**\r\n * Focuses the menu item element at the given index.\r\n */\r\n focusMenuItemAtIndex(index: number): void;\r\n\r\n /**\r\n * Returns the number of menu items.\r\n */\r\n getMenuItemCount(): number;\r\n\r\n /**\r\n * Returns an array representing the VALUE_ATTR attributes of each menu item.\r\n * !!! MODIFIED FOR AURELIA !!!\r\n */\r\n getMenuItemValues(): unknown[];\r\n\r\n /**\r\n * Gets the text content of the menu item element at the given index.\r\n */\r\n getMenuItemTextAtIndex(index: number): string;\r\n\r\n /**\r\n * Returns the selected index.\r\n */\r\n getSelectedIndex(): number;\r\n\r\n /**\r\n * Sets the selected index in the menu.\r\n */\r\n setSelectedIndex(index: number): void;\r\n\r\n /**\r\n * Returns whether typeahead is in progress in the menu.\r\n */\r\n isTypeaheadInProgress(): boolean;\r\n\r\n /**\r\n * Adds a character to the list typeahead buffer and returns index of the\r\n * next item in the list matching the buffer.\r\n */\r\n typeaheadMatchItem(nextChar: string, startingIndex: number): number;\r\n}\r\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mdc-select-foundation-aurelia.js","sourceRoot":"","sources":["../../src/select/mdc-select-foundation-aurelia.ts"],"names":[],"mappings":"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","sourcesContent":["/**\r\n * @license\r\n * Copyright 2016 Google Inc.\r\n *\r\n * Permission is hereby granted, free of charge, to any person obtaining a copy\r\n * of this software and associated documentation files (the \"Software\"), to deal\r\n * in the Software without restriction, including without limitation the rights\r\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\r\n * copies of the Software, and to permit persons to whom the Software is\r\n * furnished to do so, subject to the following conditions:\r\n *\r\n * The above copyright notice and this permission notice shall be included in\r\n * all copies or substantial portions of the Software.\r\n *\r\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\r\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\r\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\r\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\r\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\r\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\r\n * THE SOFTWARE.\r\n */\r\n\r\nimport { MDCFoundation } from '@material/base/foundation';\r\nimport { KEY, normalizeKey } from '@material/dom/keyboard';\r\nimport { Corner } from '@material/menu-surface/constants';\r\n\r\nimport { MDCSelectAdapterAurelia } from './mdc-select-adapter-aurelia';\r\nimport { cssClasses, numbers, strings, MDCSelectIconFoundation, MDCSelectHelperTextFoundation, MDCSelectFoundationMap } from '@material/select';\r\n\r\n// !!! MODIFIED FOR AURELIA !!!\r\nexport class MDCSelectFoundationAurelia extends MDCFoundation<MDCSelectAdapterAurelia> {\r\n static get cssClasses() {\r\n return cssClasses;\r\n }\r\n\r\n static get numbers() {\r\n return numbers;\r\n }\r\n\r\n static get strings() {\r\n return strings;\r\n }\r\n\r\n /**\r\n * See {@link MDCSelectAdapter} for typing information on parameters and return types.\r\n */\r\n static get defaultAdapter(): MDCSelectAdapterAurelia {\r\n // tslint:disable:object-literal-sort-keys Methods should be in the same order as the adapter interface.\r\n return {\r\n addClass: () => undefined,\r\n removeClass: () => undefined,\r\n hasClass: () => false,\r\n activateBottomLine: () => undefined,\r\n deactivateBottomLine: () => undefined,\r\n getSelectedIndex: () => -1,\r\n setSelectedIndex: () => undefined,\r\n hasLabel: () => false,\r\n floatLabel: () => undefined,\r\n getLabelWidth: () => 0,\r\n setLabelRequired: () => undefined,\r\n hasOutline: () => false,\r\n notchOutline: () => undefined,\r\n closeOutline: () => undefined,\r\n setRippleCenter: () => undefined,\r\n notifyChange: () => undefined,\r\n setSelectedText: () => undefined,\r\n isSelectAnchorFocused: () => false,\r\n getSelectAnchorAttr: () => '',\r\n setSelectAnchorAttr: () => undefined,\r\n removeSelectAnchorAttr: () => undefined,\r\n addMenuClass: () => undefined,\r\n removeMenuClass: () => undefined,\r\n openMenu: () => undefined,\r\n closeMenu: () => undefined,\r\n getAnchorElement: () => null,\r\n setMenuAnchorElement: () => undefined,\r\n setMenuAnchorCorner: () => undefined,\r\n setMenuWrapFocus: () => undefined,\r\n focusMenuItemAtIndex: () => undefined,\r\n getMenuItemCount: () => 0,\r\n getMenuItemValues: () => [],\r\n getMenuItemTextAtIndex: () => '',\r\n isTypeaheadInProgress: () => false,\r\n typeaheadMatchItem: () => -1,\r\n };\r\n // tslint:enable:object-literal-sort-keys\r\n }\r\n\r\n private readonly leadingIcon: MDCSelectIconFoundation | undefined;\r\n private readonly helperText: MDCSelectHelperTextFoundation | undefined;\r\n\r\n // Disabled state\r\n private disabled = false;\r\n // isMenuOpen is used to track the state of the menu by listening to the\r\n // MDCMenuSurface:closed event For reference, menu.open will return false if\r\n // the menu is still closing, but isMenuOpen returns false only after the menu\r\n // has closed\r\n private isMenuOpen = false;\r\n // By default, select is invalid if it is required but no value is selected.\r\n private useDefaultValidation = true;\r\n private customValidity = true;\r\n private lastSelectedIndex = numbers.UNSET_INDEX;\r\n\r\n /* istanbul ignore next: optional argument is not a branch statement */\r\n /**\r\n * @param adapter\r\n * @param foundationMap Map from subcomponent names to their subfoundations.\r\n */\r\n constructor(adapter?: Partial<MDCSelectAdapterAurelia>, foundationMap: Partial<MDCSelectFoundationMap> = {}) {\r\n super({ ...MDCSelectFoundationAurelia.defaultAdapter, ...adapter });\r\n\r\n this.leadingIcon = foundationMap.leadingIcon;\r\n this.helperText = foundationMap.helperText;\r\n }\r\n\r\n /** Returns the index of the currently selected menu item, or -1 if none. */\r\n getSelectedIndex(): number {\r\n return this.adapter.getSelectedIndex();\r\n }\r\n\r\n setSelectedIndex(index: number, closeMenu = false, skipNotify = false) {\r\n if (index >= this.adapter.getMenuItemCount()) {\r\n return;\r\n }\r\n\r\n // !!! MODIFIED FOR AURELIA TO SUPPORT TEXT IN \"EMPTY\" ITEMS !!!\r\n const menuItemValues = this.adapter.getMenuItemValues();\r\n if (index === numbers.UNSET_INDEX || menuItemValues[index] === undefined || menuItemValues[index] === null) {\r\n this.adapter.setSelectedText('');\r\n } else {\r\n this.adapter.setSelectedText(\r\n this.adapter.getMenuItemTextAtIndex(index).trim());\r\n }\r\n\r\n this.adapter.setSelectedIndex(index);\r\n\r\n if (closeMenu) {\r\n this.adapter.closeMenu();\r\n }\r\n\r\n if (!skipNotify && this.lastSelectedIndex !== index) {\r\n this.handleChange();\r\n }\r\n this.lastSelectedIndex = index;\r\n }\r\n\r\n // !!! MODIFIED FOR AURELIA !!!\r\n setValue(value: unknown, skipNotify = false) {\r\n const index = this.adapter.getMenuItemValues().indexOf(value);\r\n this.setSelectedIndex(index, /** closeMenu */ false, skipNotify);\r\n }\r\n\r\n // !!! MODIFIED FOR AURELIA !!!\r\n getValue() {\r\n const index = this.adapter.getSelectedIndex();\r\n const menuItemValues = this.adapter.getMenuItemValues();\r\n return index !== numbers.UNSET_INDEX ? menuItemValues[index] : undefined;\r\n }\r\n\r\n getDisabled() {\r\n return this.disabled;\r\n }\r\n\r\n setDisabled(isDisabled: boolean) {\r\n this.disabled = isDisabled;\r\n if (this.disabled) {\r\n this.adapter.addClass(cssClasses.DISABLED);\r\n this.adapter.closeMenu();\r\n } else {\r\n this.adapter.removeClass(cssClasses.DISABLED);\r\n }\r\n\r\n if (this.leadingIcon) {\r\n this.leadingIcon.setDisabled(this.disabled);\r\n }\r\n\r\n if (this.disabled) {\r\n // Prevent click events from focusing select. Simply pointer-events: none\r\n // is not enough since screenreader clicks may bypass this.\r\n this.adapter.removeSelectAnchorAttr('tabindex');\r\n } else {\r\n this.adapter.setSelectAnchorAttr('tabindex', '0');\r\n }\r\n\r\n this.adapter.setSelectAnchorAttr('aria-disabled', this.disabled.toString());\r\n }\r\n\r\n /** Opens the menu. */\r\n openMenu() {\r\n this.adapter.addClass(cssClasses.ACTIVATED);\r\n this.adapter.openMenu();\r\n this.isMenuOpen = true;\r\n this.adapter.setSelectAnchorAttr('aria-expanded', 'true');\r\n }\r\n\r\n /**\r\n * @param content Sets the content of the helper text.\r\n */\r\n setHelperTextContent(content: string) {\r\n if (this.helperText) {\r\n this.helperText.setContent(content);\r\n }\r\n }\r\n\r\n /**\r\n * Re-calculates if the notched outline should be notched and if the label\r\n * should float.\r\n */\r\n layout() {\r\n if (this.adapter.hasLabel()) {\r\n const optionHasValue = this.getValue() !== undefined; // !!! MODIFIED FOR AURELIA !!!\r\n const isFocused = this.adapter.hasClass(cssClasses.FOCUSED);\r\n const shouldFloatAndNotch = optionHasValue || isFocused;\r\n const isRequired = this.adapter.hasClass(cssClasses.REQUIRED);\r\n\r\n this.notchOutline(shouldFloatAndNotch);\r\n this.adapter.floatLabel(shouldFloatAndNotch);\r\n this.adapter.setLabelRequired(isRequired);\r\n }\r\n }\r\n\r\n /**\r\n * Synchronizes the list of options with the state of the foundation. Call\r\n * this whenever menu options are dynamically updated.\r\n */\r\n layoutOptions() {\r\n const menuItemValues = this.adapter.getMenuItemValues();\r\n const selectedIndex = menuItemValues.indexOf(this.getValue());\r\n this.setSelectedIndex(\r\n selectedIndex, /** closeMenu */ false, /** skipNotify */ true);\r\n }\r\n\r\n handleMenuOpened() {\r\n if (this.adapter.getMenuItemValues().length === 0) {\r\n return;\r\n }\r\n\r\n // Menu should open to the last selected element, should open to first menu item otherwise.\r\n const selectedIndex = this.getSelectedIndex();\r\n const focusItemIndex = selectedIndex >= 0 ? selectedIndex : 0;\r\n this.adapter.focusMenuItemAtIndex(focusItemIndex);\r\n }\r\n\r\n handleMenuClosed() {\r\n this.adapter.removeClass(cssClasses.ACTIVATED);\r\n this.isMenuOpen = false;\r\n this.adapter.setSelectAnchorAttr('aria-expanded', 'false');\r\n\r\n // Unfocus the select if menu is closed without a selection\r\n if (!this.adapter.isSelectAnchorFocused()) {\r\n this.blur();\r\n }\r\n }\r\n\r\n /**\r\n * Handles value changes, via change event or programmatic updates.\r\n */\r\n handleChange() {\r\n this.layout();\r\n this.adapter.notifyChange(this.getValue());\r\n\r\n const isRequired = this.adapter.hasClass(cssClasses.REQUIRED);\r\n if (isRequired && this.useDefaultValidation) {\r\n this.setValid(this.isValid());\r\n }\r\n }\r\n\r\n handleMenuItemAction(index: number) {\r\n this.setSelectedIndex(index, /** closeMenu */ true);\r\n }\r\n\r\n /**\r\n * Handles focus events from select element.\r\n */\r\n handleFocus() {\r\n this.adapter.addClass(cssClasses.FOCUSED);\r\n this.layout();\r\n\r\n this.adapter.activateBottomLine();\r\n }\r\n\r\n /**\r\n * Handles blur events from select element.\r\n */\r\n handleBlur() {\r\n if (this.isMenuOpen) {\r\n return;\r\n }\r\n this.blur();\r\n }\r\n\r\n handleClick(normalizedX: number) {\r\n if (this.disabled) {\r\n return;\r\n }\r\n\r\n if (this.isMenuOpen) {\r\n this.adapter.closeMenu();\r\n return;\r\n }\r\n\r\n this.adapter.setRippleCenter(normalizedX);\r\n\r\n this.openMenu();\r\n }\r\n\r\n /**\r\n * Handles keydown events on select element. Depending on the type of\r\n * character typed, does typeahead matching or opens menu.\r\n */\r\n handleKeydown(event: KeyboardEvent) {\r\n if (this.isMenuOpen || !this.adapter.hasClass(cssClasses.FOCUSED)) {\r\n return;\r\n }\r\n\r\n const isEnter = normalizeKey(event) === KEY.ENTER;\r\n const isSpace = normalizeKey(event) === KEY.SPACEBAR;\r\n const arrowUp = normalizeKey(event) === KEY.ARROW_UP;\r\n const arrowDown = normalizeKey(event) === KEY.ARROW_DOWN;\r\n\r\n // Typeahead\r\n if (!isSpace && event.key && event.key.length === 1 ||\r\n isSpace && this.adapter.isTypeaheadInProgress()) {\r\n const key = isSpace ? ' ' : event.key;\r\n const typeaheadNextIndex =\r\n this.adapter.typeaheadMatchItem(key, this.getSelectedIndex());\r\n if (typeaheadNextIndex >= 0) {\r\n this.setSelectedIndex(typeaheadNextIndex);\r\n }\r\n event.preventDefault();\r\n return;\r\n }\r\n\r\n if (!isEnter && !isSpace && !arrowUp && !arrowDown) {\r\n return;\r\n }\r\n\r\n // Increment/decrement index as necessary and open menu.\r\n if (arrowUp && this.getSelectedIndex() > 0) {\r\n this.setSelectedIndex(this.getSelectedIndex() - 1);\r\n } else if (\r\n arrowDown &&\r\n this.getSelectedIndex() < this.adapter.getMenuItemCount() - 1) {\r\n this.setSelectedIndex(this.getSelectedIndex() + 1);\r\n }\r\n\r\n this.openMenu();\r\n event.preventDefault();\r\n }\r\n\r\n /**\r\n * Opens/closes the notched outline.\r\n */\r\n notchOutline(openNotch: boolean) {\r\n if (!this.adapter.hasOutline()) {\r\n return;\r\n }\r\n const isFocused = this.adapter.hasClass(cssClasses.FOCUSED);\r\n\r\n if (openNotch) {\r\n const labelScale = numbers.LABEL_SCALE;\r\n const labelWidth = this.adapter.getLabelWidth() * labelScale;\r\n this.adapter.notchOutline(labelWidth);\r\n } else if (!isFocused) {\r\n this.adapter.closeOutline();\r\n }\r\n }\r\n\r\n /**\r\n * Sets the aria label of the leading icon.\r\n */\r\n setLeadingIconAriaLabel(label: string) {\r\n if (this.leadingIcon) {\r\n this.leadingIcon.setAriaLabel(label);\r\n }\r\n }\r\n\r\n /**\r\n * Sets the text content of the leading icon.\r\n */\r\n setLeadingIconContent(content: string) {\r\n if (this.leadingIcon) {\r\n this.leadingIcon.setContent(content);\r\n }\r\n }\r\n\r\n setUseDefaultValidation(useDefaultValidation: boolean) {\r\n this.useDefaultValidation = useDefaultValidation;\r\n }\r\n\r\n setValid(isValid: boolean) {\r\n if (!this.useDefaultValidation) {\r\n this.customValidity = isValid;\r\n }\r\n\r\n this.adapter.setSelectAnchorAttr('aria-invalid', (!isValid).toString());\r\n if (isValid) {\r\n this.adapter.removeClass(cssClasses.INVALID);\r\n this.adapter.removeMenuClass(cssClasses.MENU_INVALID);\r\n } else {\r\n this.adapter.addClass(cssClasses.INVALID);\r\n this.adapter.addMenuClass(cssClasses.MENU_INVALID);\r\n }\r\n\r\n this.syncHelperTextValidity(isValid);\r\n }\r\n\r\n isValid() {\r\n if (this.useDefaultValidation &&\r\n this.adapter.hasClass(cssClasses.REQUIRED) &&\r\n !this.adapter.hasClass(cssClasses.DISABLED)) {\r\n // See notes for required attribute under https://www.w3.org/TR/html52/sec-forms.html#the-select-element\r\n // TL;DR: Invalid if no index is selected, or if the first index is selected and has an empty value.\r\n return this.getSelectedIndex() !== numbers.UNSET_INDEX &&\r\n (this.getSelectedIndex() !== 0 || Boolean(this.getValue()));\r\n }\r\n return this.customValidity;\r\n }\r\n\r\n setRequired(isRequired: boolean) {\r\n if (isRequired) {\r\n this.adapter.addClass(cssClasses.REQUIRED);\r\n } else {\r\n this.adapter.removeClass(cssClasses.REQUIRED);\r\n }\r\n this.adapter.setSelectAnchorAttr('aria-required', isRequired.toString());\r\n this.adapter.setLabelRequired(isRequired);\r\n }\r\n\r\n getRequired() {\r\n return this.adapter.getSelectAnchorAttr('aria-required') === 'true';\r\n }\r\n\r\n init() {\r\n const anchorEl = this.adapter.getAnchorElement();\r\n if (anchorEl) {\r\n this.adapter.setMenuAnchorElement(anchorEl);\r\n this.adapter.setMenuAnchorCorner(Corner.BOTTOM_START);\r\n }\r\n this.adapter.setMenuWrapFocus(false);\r\n\r\n this.setDisabled(this.adapter.hasClass(cssClasses.DISABLED));\r\n this.syncHelperTextValidity(!this.adapter.hasClass(cssClasses.INVALID));\r\n this.layout();\r\n this.layoutOptions();\r\n }\r\n\r\n /**\r\n * Unfocuses the select component.\r\n */\r\n private blur() {\r\n this.adapter.removeClass(cssClasses.FOCUSED);\r\n this.layout();\r\n this.adapter.deactivateBottomLine();\r\n\r\n const isRequired = this.adapter.hasClass(cssClasses.REQUIRED);\r\n if (isRequired && this.useDefaultValidation) {\r\n this.setValid(this.isValid());\r\n }\r\n }\r\n\r\n private syncHelperTextValidity(isValid: boolean) {\r\n if (!this.helperText) {\r\n return;\r\n }\r\n\r\n this.helperText.setValidity(isValid);\r\n\r\n const helperTextVisible = this.helperText.isVisible();\r\n const helperTextId = this.helperText.getId();\r\n\r\n if (helperTextVisible && helperTextId) {\r\n this.adapter.setSelectAnchorAttr(strings.ARIA_DESCRIBEDBY, helperTextId);\r\n } else {\r\n // Needed because screenreaders will read labels pointed to by\r\n // `aria-describedby` even if they are `aria-hidden`.\r\n this.adapter.removeSelectAnchorAttr(strings.ARIA_DESCRIBEDBY);\r\n }\r\n }\r\n}\r\n\r\n// tslint:disable-next-line:no-default-export Needed for backward compatibility with MDC Web v0.44.0 and earlier.\r\nexport default MDCSelectFoundationAurelia;\r\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mdc-select-helper-text.js","sourceRoot":"","sources":["../../../src/select/mdc-select-helper-text/mdc-select-helper-text.ts"],"names":[],"mappings":";;;;AAAA,qCAAuD;AACvD,6CAAmH;AACnH,qCAA0D;AAC1D,gHAAyD;AAE5C,QAAA,uBAAuB,GAAG;IACrC,IAAI,EAAE,wBAAwB;CAC/B,CAAC;IAIW,mBAAmB;4BAF/B,IAAA,gBAAM,EAAC,OAAO,CAAC,EACf,IAAA,uBAAa,EAAC,EAAE,IAAI,EAAE,wBAAwB,EAAE,QAAQ,EAAR,yCAAQ,EAAE,CAAC;;;;sBACnB,mBAAY;;;;;;;;;;mCAApB,SAAQ,WAA2C;;;;sCAIjF,IAAA,kBAAQ,EAAC,EAAE,GAAG,EAAE,kBAAW,EAAE,CAAC;sCAG9B,IAAA,kBAAQ,EAAC,EAAE,GAAG,EAAE,kBAAW,EAAE,CAAC;kCAG9B,IAAA,kBAAQ,GAAE;YALX,wLAAA,UAAU,6BAAV,UAAU,+FAAU;YAGpB,wLAAA,UAAU,6BAAV,UAAU,+FAAU;YAGpB,4KAAA,MAAM,6BAAN,MAAM,uFAAW;YAXnB,qLAkCC;;;YAlCY,+DAAmB;;QAC9B,oBAAoB,GAAG,6BAAoB,CAAC;QAC5C,IAAI,GAAG,+BAAuB,CAAC,IAAI,CAAC;QAGpC,UAAU,qEAAU;QAGpB,UAAU,uIAAU;QAGpB,MAAM,mIAAW;QAEjB,gDAAgD;QAChD,IAAI,sBAAsB;YACxB,OAAO,IAAI,CAAC,UAAW,CAAC;QAC1B,CAAC;QAED,oBAAoB;YAClB,sGAAsG;YACtG,yGAAyG;YACzG,MAAM,OAAO,GAA+B;gBAC1C,QAAQ,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC;gBAC3D,WAAW,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC;gBACjE,QAAQ,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC;gBAChE,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC;gBAC/C,OAAO,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC;gBAC7D,UAAU,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC;gBACrD,UAAU,EAAE,CAAC,OAAO,EAAE,EAAE;oBACtB,IAAI,CAAC,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC;gBAClC,CAAC;aACF,CAAC;YACF,OAAO,IAAI,sCAA6B,CAAC,OAAO,CAAC,CAAC;QACpD,CAAC;;;;;;;;AAjCU,kDAAmB","sourcesContent":["import { MdcComponent, booleanAttr } from '../../base';\r\nimport { helperTextCssClasses, MDCSelectHelperTextFoundation, MDCSelectHelperTextAdapter } from '@material/select';\r\nimport { customElement, inject, bindable } from 'aurelia';\r\nimport template from './mdc-select-helper-text.html?raw';\r\n\r\nexport const mdcHelperTextCssClasses = {\r\n ROOT: 'mdc-select-helper-text'\r\n};\r\n\r\n@inject(Element)\r\n@customElement({ name: 'mdc-select-helper-text', template })\r\nexport class MdcSelectHelperText extends MdcComponent<MDCSelectHelperTextFoundation> {\r\n helperTextCssClasses = helperTextCssClasses;\r\n ROOT = mdcHelperTextCssClasses.ROOT;\r\n\r\n @bindable({ set: booleanAttr })\r\n persistent: boolean;\r\n\r\n @bindable({ set: booleanAttr })\r\n validation: boolean;\r\n\r\n @bindable()\r\n errors: string[];\r\n\r\n // Provided for access by MDCTextField component\r\n get foundationForTextField(): MDCSelectHelperTextFoundation {\r\n return this.foundation!;\r\n }\r\n\r\n getDefaultFoundation() {\r\n // DO NOT INLINE this variable. For backward compatibility, foundations take a Partial<MDCFooAdapter>.\r\n // To ensure we don't accidentally omit any methods, we need a separate, strongly typed adapter variable.\r\n const adapter: MDCSelectHelperTextAdapter = {\r\n addClass: (className) => this.root.classList.add(className),\r\n removeClass: (className) => this.root.classList.remove(className),\r\n hasClass: (className) => this.root.classList.contains(className),\r\n getAttr: (attr) => this.root.getAttribute(attr),\r\n setAttr: (attr, value) => this.root.setAttribute(attr, value),\r\n removeAttr: (attr) => this.root.removeAttribute(attr),\r\n setContent: (content) => {\r\n this.root.textContent = content;\r\n },\r\n };\r\n return new MDCSelectHelperTextFoundation(adapter);\r\n }\r\n}\r\n\r\n/** @hidden */\r\nexport interface IMdcSelectHelperTextElement extends HTMLElement {\r\n $au: {\r\n 'au:resource:custom-element': {\r\n viewModel: MdcSelectHelperText;\r\n };\r\n };\r\n}\r\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mdc-select-icon.js","sourceRoot":"","sources":["../../src/select/mdc-select-icon.ts"],"names":[],"mappings":";;;;AAAA,kCAAuC;AACvC,6CAA0F;AAC1F,qCAAkD;AAErC,QAAA,cAAc,GAAG;IAC5B,SAAS,EAAE,iBAAiB;CAC7B,CAAC;IAIW,aAAa;4BAFzB,IAAA,gBAAM,EAAC,OAAO,CAAC,EACf,IAAA,yBAAe,EAAC,sBAAc,CAAC,SAAS,CAAC;;;;sBACP,mBAAY;6BAApB,SAAQ,WAAqC;;;;YAAxE,qLAqBC;;;YArBY,+DAAa;;QACxB,SAAS;YACP,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,gBAAO,CAAC,qBAAqB,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC;QAC1E,CAAC;QAED,oBAAoB;YAClB,sGAAsG;YACtG,yGAAyG;YACzG,MAAM,OAAO,GAAyB;gBACpC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC;gBAC/C,OAAO,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC;gBAC7D,UAAU,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC;gBACrD,UAAU,EAAE,CAAC,OAAO,EAAE,EAAE;oBACtB,IAAI,CAAC,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC;gBAClC,CAAC;gBACD,0BAA0B,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC;gBAC/E,4BAA4B,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;gBACnF,gBAAgB,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,gCAAuB,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,aAAa,EAAE,IAAI,CAAC,kBAAkB,CAAC;aACzH,CAAC;YACF,OAAO,IAAI,gCAAuB,CAAC,OAAO,CAAC,CAAC;QAC9C,CAAC;;;;AApBU,sCAAa","sourcesContent":["import { MdcComponent } from '../base';\r\nimport { MDCSelectIconFoundation, MDCSelectIconAdapter, strings } from '@material/select';\r\nimport { inject, customAttribute } from 'aurelia';\r\n\r\nexport const mdcIconStrings = {\r\n ATTRIBUTE: 'mdc-select-icon'\r\n};\r\n\r\n@inject(Element)\r\n@customAttribute(mdcIconStrings.ATTRIBUTE)\r\nexport class MdcSelectIcon extends MdcComponent<MDCSelectIconFoundation> {\r\n attaching() {\r\n this.root.classList.add(strings.LEADING_ICON_SELECTOR.replace('.', ''));\r\n }\r\n\r\n getDefaultFoundation() {\r\n // DO NOT INLINE this variable. For backward compatibility, foundations take a Partial<MDCFooAdapter>.\r\n // To ensure we don't accidentally omit any methods, we need a separate, strongly typed adapter variable.\r\n const adapter: MDCSelectIconAdapter = {\r\n getAttr: (attr) => this.root.getAttribute(attr),\r\n setAttr: (attr, value) => this.root.setAttribute(attr, value),\r\n removeAttr: (attr) => this.root.removeAttribute(attr),\r\n setContent: (content) => {\r\n this.root.textContent = content;\r\n },\r\n registerInteractionHandler: (evtType, handler) => this.listen(evtType, handler),\r\n deregisterInteractionHandler: (evtType, handler) => this.unlisten(evtType, handler),\r\n notifyIconAction: () => this.emit(MDCSelectIconFoundation.strings.ICON_EVENT, {} /* evtData */, true /* shouldBubble */),\r\n };\r\n return new MDCSelectIconFoundation(adapter);\r\n }\r\n}\r\n\r\n/** @hidden */\r\nexport interface IMdcSelectIconElement extends HTMLElement {\r\n $au: {\r\n 'au:resource:custom-attribute:mdc-select-icon': {\r\n viewModel: MdcSelectIcon;\r\n };\r\n };\r\n}\r\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mdc-select-value-observer.js","sourceRoot":"","sources":["../../src/select/mdc-select-value-observer.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n subscriberCollection,\n AccessorType,\n} from '@aurelia/runtime';\n\nimport type {\n ICollectionObserver,\n IndexMap,\n IObserver,\n IObserverLocator,\n ISubscriber,\n ISubscriberCollection,\n} from '@aurelia/runtime';\n\nimport { INode, CustomElement } from '@aurelia/runtime-html';\nimport { IMdcSelectElement, MdcSelect } from './mdc-select';\n\n// const hasOwn = Object.prototype.hasOwnProperty;\nconst childObserverOptions = {\n childList: true,\n subtree: true,\n characterData: true\n};\n\n// function defaultMatcher(a: unknown, b: unknown): boolean {\n// return a === b;\n// }\n\nexport interface IOptionElement extends HTMLOptionElement {\n model?: unknown;\n}\n\nexport interface MdcSelectValueObserver extends\n ISubscriberCollection { }\n\nexport interface INodeObserverConfigBase {\n /**\n * Indicates the list of events can be used to observe a particular property\n */\n readonly events: string[];\n /**\n * Indicates whether this property is readonly, so observer wont attempt to assign value\n * example: input.files\n */\n readonly readonly?: boolean;\n /**\n * A default value to assign to the corresponding property if the incoming value is null/undefined\n */\n readonly default?: unknown;\n}\n\n\nexport interface INodeObserver extends IObserver {\n /**\n * Instruct this node observer event observation behavior\n */\n useConfig(config: INodeObserverConfigBase): void;\n}\n\n@subscriberCollection()\nexport class MdcSelectValueObserver implements INodeObserver {\n public currentValue: unknown = void 0;\n public oldValue: unknown = void 0;\n\n public readonly obj: IMdcSelectElement;\n public config: INodeObserverConfigBase;\n\n public hasChanges: boolean = false;\n // ObserverType.Layout is not always true\n // but for simplicity, always treat as such\n public type: AccessorType = (AccessorType.Node | AccessorType.Observer | AccessorType.Layout) as AccessorType;\n\n public arrayObserver?: ICollectionObserver<'array'> = void 0;\n public nodeObserver?: MutationObserver = void 0;\n\n private observing: boolean = false;\n private listened: boolean = false;\n\n public constructor(\n obj: INode,\n // deepscan-disable-next-line\n _key: PropertyKey,\n config: INodeObserverConfigBase,\n _: IObserverLocator\n ) {\n this.obj = obj as unknown as IMdcSelectElement;\n this.config = config;\n }\n\n optionsWereSet: boolean;\n\n setElementValue(skipNotify: boolean) {\n // do not pass the value to the element if options has never been set\n // the value will be passed on when options do arrive\n if (this.optionsWereSet) {\n CustomElement.for<MdcSelect>(this.obj).viewModel.setValue(this.currentValue, skipNotify);\n }\n }\n\n public getValue(): unknown {\n // is it safe to assume the observer has the latest value?\n // todo: ability to turn on/off cache based on type\n return this.observing\n ? this.currentValue\n // : this.obj.multiple\n // ? Array.from(this.obj.options).map(o => o.value)\n : this.obj.value;\n }\n\n public setValue(newValue: unknown): void {\n this.oldValue = this.currentValue;\n this.currentValue = newValue;\n this.hasChanges = newValue !== this.oldValue;\n // this.observeArray(newValue instanceof Array ? newValue : null);\n if (this.optionsWereSet) {\n this.flushChanges();\n }\n }\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n public flushChanges(): void {\n if (this.hasChanges) {\n this.hasChanges = false;\n this.synchronizeOptions();\n }\n }\n\n public handleCollectionChange(): void {\n // always sync \"selected\" property of <options/>\n // immediately whenever the array notifies its mutation\n this.synchronizeOptions();\n }\n\n public notify(): void {\n const oldValue = this.oldValue;\n const newValue = this.currentValue;\n if (newValue === oldValue) {\n return;\n }\n this.subs.notify(newValue, oldValue);\n }\n\n public handleEvent(): void {\n const shouldNotify = this.synchronizeValue();\n if (shouldNotify) {\n this.subs.notify(this.currentValue, this.oldValue);\n }\n }\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n public synchronizeOptions(_indexMap?: IndexMap): void {\n this.setElementValue(true);\n // const { currentValue, obj } = this;\n // // const isArray = Array.isArray(currentValue);\n // // const matcher = obj.matcher !== void 0 ? obj.matcher : defaultMatcher;\n // // const matcher = defaultMatcher;\n // const options = CustomElement.for<MdcSelect>(obj).viewModel.items;\n // let i = options.length;\n\n // while (i-- > 0) {\n // // const option = options[i];\n // // const optionValue = hasOwn.call(option, 'model') ? option.model : option.value;\n // // const optionValue = option.value;\n // // if (isArray) {\n // // option.selected = (currentValue as unknown[]).findIndex(item => !!matcher(optionValue, item)) !== -1;\n // // continue;\n // // }\n // if (!this.optionsWereSet) {\n // this.optionsWereSet = true;\n // this.setElementValue(true);\n // }\n // // option.selected = !!matcher(optionValue, currentValue);\n // }\n }\n\n public synchronizeValue(): boolean {\n // Spec for synchronizing value from `<select/>` to `SelectObserver`\n // When synchronizing value to observed <select/> element, do the following steps:\n // A. If `<select/>` is multiple\n // 1. Check if current value, called `currentValue` is an array\n // a. If not an array, return true to signal value has changed\n // b. If is an array:\n // i. gather all current selected <option/>, in to array called `values`\n // ii. loop through the `currentValue` array and remove items that are nolonger selected based on matcher\n // iii. loop through the `values` array and add items that are selected based on matcher\n // iv. Return false to signal value hasn't changed\n // B. If the select is single\n // 1. Let `value` equal the first selected option, if no option selected, then `value` is `null`\n // 2. assign `this.currentValue` to `this.oldValue`\n // 3. assign `value` to `this.currentValue`\n // 4. return `true` to signal value has changed\n const obj = this.obj;\n const options = CustomElement.for<MdcSelect>(obj).viewModel.items ?? [];\n const len = options.length;\n // const currentValue = this.currentValue;\n let i = 0;\n\n /*\n if (obj.multiple) {\n // A.\n if (!(currentValue instanceof Array)) {\n // A.1.a\n return true;\n }\n // A.1.b\n // multi select\n let option: IOptionElement;\n const matcher = obj.matcher ?? defaultMatcher;\n // A.1.b.i\n const values: unknown[] = [];\n while (i < len) {\n option = options[i];\n if (option.selected) {\n values.push(hasOwn.call(option, 'model')\n ? option.model\n : option.value\n );\n }\n ++i;\n }\n // A.1.b.ii\n i = 0;\n while (i < currentValue.length) {\n const a = currentValue[i];\n // Todo: remove arrow fn\n if (values.findIndex(b => !!matcher(a, b)) === -1) {\n currentValue.splice(i, 1);\n } else {\n ++i;\n }\n }\n // A.1.b.iii\n i = 0;\n while (i < values.length) {\n const a = values[i];\n // Todo: remove arrow fn\n if (currentValue.findIndex(b => !!matcher(a, b)) === -1) {\n currentValue.push(a);\n }\n ++i;\n }\n // A.1.b.iv\n return false;\n }\n */\n // B. single select\n // B.1\n let value: unknown = undefined;\n while (i < len) {\n const option = options[i];\n if (option.value === this.obj.value) {\n // value = hasOwn.call(option, 'model') ? option.model : option.value;\n value = option.value;\n break;\n }\n ++i;\n }\n // B.2\n this.oldValue = this.currentValue;\n // B.3\n this.currentValue = value;\n // B.4\n return true;\n }\n\n private start(): void {\n const vm = CustomElement.for<MdcSelect>(this.obj).viewModel;\n vm.initialised.then(() => {\n (this.nodeObserver = new this.obj.ownerDocument.defaultView!.MutationObserver(records => this.handleNodeChange(records)))\n .observe(vm.menu.root, childObserverOptions);\n // this.observeArray(this.currentValue instanceof Array ? this.currentValue : null);\n this.observing = true;\n if (vm.items?.length) {\n this.optionsWereSet = true;\n this.synchronizeOptions();\n }\n });\n }\n\n private stop(): void {\n this.optionsWereSet = false;\n this.nodeObserver?.disconnect();\n this.arrayObserver?.unsubscribe(this);\n this.nodeObserver\n = this.arrayObserver\n = void 0;\n this.observing = false;\n }\n\n // todo: observe all kind of collection\n // private observeArray(array: unknown[] | null): void {\n // this.arrayObserver?.unsubscribe(this);\n // this.arrayObserver = void 0;\n // if (array !== null) {\n // if (!this.obj.multiple) {\n // throw new Error('Only null or Array instances can be bound to a multi-select.');\n // }\n // (this.arrayObserver = this.observerLocator.getArrayObserver(array)).subscribe(this);\n // }\n // }\n\n public handleNodeChange(records: MutationRecord[]): void {\n if (records.find(x => x.type === 'childList'\n && (Array.from(x.addedNodes).find(y => (y as HTMLElement).tagName === 'MDC-LIST-ITEM')\n || Array.from(x.removedNodes).find(y => (y as HTMLElement).tagName === 'MDC-LIST-ITEM'))\n )) {\n this.optionsWereSet = true;\n this.synchronizeOptions();\n const shouldNotify = this.synchronizeValue();\n if (shouldNotify) {\n this.notify();\n }\n }\n }\n\n public subscribe(subscriber: ISubscriber): void {\n if (this.subs.add(subscriber) && this.subs.count === 1) {\n for (const e of this.config.events) {\n this.obj.addEventListener(e, this);\n }\n this.listened = true;\n this.start();\n }\n }\n\n public unsubscribe(subscriber: ISubscriber): void {\n if (this.subs.remove(subscriber) && this.subs.count === 0) {\n for (const e of this.config.events) {\n this.obj.removeEventListener(e, this);\n }\n this.listened = false;\n this.stop();\n }\n }\n\n useConfig(config: INodeObserverConfigBase): void {\n this.config = config;\n if (this.listened) {\n for (const e of this.config.events) {\n this.obj.removeEventListener(e, this);\n }\n for (const e of this.config.events) {\n this.obj.addEventListener(e, this);\n }\n }\n }\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mdc-select.js","sourceRoot":"","sources":["../../src/select/mdc-select.ts"],"names":[],"mappings":"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","sourcesContent":["import { MdcComponent, IValidatedElement, IError, booleanAttr } from '../base';\nimport { cssClasses, MDCSelectFoundationMap, MDCSelectEventDetail, strings } from '@material/select';\nimport { inject, customElement, INode, IPlatform, bindable } from 'aurelia';\nimport { MdcSelectIcon, IMdcSelectIconElement, mdcIconStrings } from './mdc-select-icon';\nimport { MdcSelectHelperText, mdcHelperTextCssClasses } from './mdc-select-helper-text/mdc-select-helper-text';\nimport { MDCNotchedOutline } from '@material/notched-outline';\nimport { MDCMenuItemEvent, Corner } from '@material/menu';\nimport { MDCSelectFoundationAurelia } from './mdc-select-foundation-aurelia';\nimport { MDCSelectAdapterAurelia } from './mdc-select-adapter-aurelia';\nimport { MDCMenuDistance } from '@material/menu-surface';\nimport { processContent, BindingMode, CustomElement, CustomAttribute } from '@aurelia/runtime-html';\nimport template from './mdc-select.html?raw';\nimport { MdcFloatingLabel } from '../floating-label/mdc-floating-label';\nimport { MdcLineRipple } from '../line-ripple/mdc-line-ripple';\nimport { MdcListItem } from '../list/mdc-list-item/mdc-list-item';\nimport { MdcMenu } from '../menu/mdc-menu';\nimport { MdcConfiguration } from '../mdc-configuration';\n\nstrings.CHANGE_EVENT = strings.CHANGE_EVENT.toLowerCase();\n\nlet selectId = 0;\n\n/**\n * @selector mdc-select\n * @emits mdcselect:change | Emitted if user changed the value\n */\n@inject(Element, IPlatform, MdcConfiguration)\n@customElement({ name: 'mdc-select', template })\n@processContent(function processContent(node: INode, platform: IPlatform) {\n const el = node as Element;\n\n const leadingIcon = el.querySelector(`[${mdcIconStrings.ATTRIBUTE}]`);\n leadingIcon?.remove();\n\n const template = platform.document.createElement('template');\n template.setAttribute('au-slot', '');\n template.innerHTML = el.innerHTML;\n el.innerHTML = '';\n el.appendChild(template);\n\n // move icon to the slot - this allows omitting slot specification\n if (leadingIcon) {\n const div = platform.document.createElement('div');\n div.appendChild(leadingIcon);\n const iconTemplate = platform.document.createElement('template');\n iconTemplate.setAttribute('au-slot', 'leading-icon');\n iconTemplate.innerHTML = div.innerHTML;\n el.appendChild(iconTemplate);\n }\n}\n)\nexport class MdcSelect extends MdcComponent<MDCSelectFoundationAurelia> {\n constructor(root: HTMLElement, private platform: IPlatform, private configuration: MdcConfiguration) {\n super(root);\n this.outlined = this.configuration.select.outlined;\n defineMdcSelectElementApis(this.root);\n this.root.id = this.id;\n }\n\n id: string = `mdc-select-${++selectId}`;\n public menu: MdcMenu;\n private selectAnchor: HTMLElement;\n private selectedText: HTMLElement;\n\n private menuElement?: Element;\n\n get items(): MdcListItem[] | undefined {\n return this.menu.list_?.items;\n }\n\n private leadingIcon?: MdcSelectIcon;\n\n private helperText?: MdcSelectHelperText;\n private lineRipple?: MdcLineRipple;\n private mdcLabel: MdcFloatingLabel;\n private outline?: MDCNotchedOutline;\n errors = new Map<IError, boolean>();\n\n /** Sets the select label */\n @bindable()\n label: string;\n labelChanged() {\n this.platform.domQueue.queueTask(() => this.foundation?.layout());\n }\n\n /** Styles the select as an outlined select */\n @bindable({ set: booleanAttr })\n outlined?: boolean;\n outlinedChanged() {\n this.platform.domQueue.queueTask(() => this.foundation?.layout());\n }\n\n /** Makes the value required */\n @bindable({ set: booleanAttr })\n required: boolean;\n requiredChanged() {\n if (this.required) {\n this.selectAnchor?.setAttribute('aria-required', 'true');\n } else {\n this.selectAnchor?.removeAttribute('aria-required');\n }\n this.foundation?.setRequired(this.required ?? false);\n this.platform.domWriteQueue.queueTask(() => this.foundation?.layout());\n }\n\n /** Enables/disables the select */\n @bindable({ set: booleanAttr })\n disabled?: boolean;\n disabledChanged() {\n if (this.disabled !== undefined) {\n this.foundation?.setDisabled(this.disabled);\n }\n }\n\n /** Hoists the select DOM to document.body */\n @bindable({ set: booleanAttr, mode: BindingMode.oneTime })\n hoistToBody: boolean;\n\n /** Sets the select DOM position to fixed */\n @bindable({ set: booleanAttr, mode: BindingMode.oneTime })\n fixed: boolean;\n\n /** Sets the margin between the select input and the dropdown */\n @bindable()\n anchorMargin: Partial<MDCMenuDistance>;\n\n /** Sets the select dropdown width to match content */\n @bindable({ set: booleanAttr })\n naturalWidth: boolean;\n\n private _value: unknown;\n get value(): unknown {\n if (this.foundation) {\n return this.foundation.getValue();\n } else {\n return this._value;\n }\n }\n\n set value(value: unknown) {\n this.setValue(value);\n }\n\n setValue(value: unknown, skipNotify: boolean = false) {\n this._value = value;\n if (this.foundation) {\n this.foundation.setValue(value, skipNotify);\n this.foundation.layout();\n }\n }\n\n get valid(): boolean {\n return this.foundation?.isValid() ?? true;\n }\n\n set valid(value: boolean) {\n this.foundation?.setValid(value);\n }\n\n get selectedIndex(): number {\n return this.foundation!.getSelectedIndex();\n }\n\n set selectedIndex(selectedIndex: number) {\n this.foundation?.setSelectedIndex(selectedIndex, /** closeMenu */ true);\n }\n\n addError(error: IError) {\n this.errors.set(error, true);\n this.valid = false;\n }\n\n removeError(error: IError) {\n this.errors.delete(error);\n this.valid = this.errors.size === 0;\n }\n\n renderErrors() {\n if (this.helperText) {\n this.helperText.errors = Array.from(this.errors.keys()).filter(x => x.message !== null).map(x => x.message!);\n }\n }\n\n async attaching() {\n const nextSibling = this.root.nextElementSibling;\n if (nextSibling?.tagName === mdcHelperTextCssClasses.ROOT.toUpperCase()) {\n this.helperText = CustomElement.for<MdcSelectHelperText>(nextSibling).viewModel;\n await this.helperText.initialised;\n }\n }\n\n beforeFoundationCreated() {\n const leadingIconEl = this.root.querySelector<IMdcSelectIconElement>(`${strings.LEADING_ICON_SELECTOR}`);\n if (leadingIconEl) {\n this.leadingIcon = CustomAttribute.for<MdcSelectIcon>(leadingIconEl, mdcIconStrings.ATTRIBUTE)?.viewModel;\n }\n this.menu.list_!.singleSelection = true;\n }\n\n initialSyncWithDOM() {\n // set initial value without emitting change events\n this.foundation?.setValue(this._value, true);\n this.foundation?.layout();\n this.errors = new Map<IError, boolean>();\n this.valid = true;\n\n this.labelChanged();\n this.disabledChanged();\n this.outlinedChanged();\n this.requiredChanged();\n }\n\n getDefaultFoundation() {\n // DO NOT INLINE this variable. For backward compatibility, foundations take a Partial<MDCFooAdapter>.\n // To ensure we don't accidentally omit any methods, we need a separate, strongly typed adapter variable.\n const adapter: MDCSelectAdapterAurelia = {\n ...this.getSelectAdapterMethods(),\n ...this.getCommonAdapterMethods(),\n ...this.getOutlineAdapterMethods(),\n ...this.getLabelAdapterMethods(),\n };\n return new MDCSelectFoundationAurelia(adapter, this.getFoundationMap());\n }\n\n private getSelectAdapterMethods() {\n return {\n setSelectedText: (text: string) => {\n this.selectedText.textContent = text;\n },\n isSelectAnchorFocused: () => document.activeElement === this.selectAnchor,\n getSelectAnchorAttr: (attr: string) => this.selectAnchor.getAttribute(attr),\n setSelectAnchorAttr: (attr: string, value: string) => {\n this.selectAnchor.setAttribute(attr, value);\n },\n removeSelectAnchorAttr: (attr: string) => {\n this.selectAnchor.removeAttribute(attr);\n },\n addMenuClass: (className: string) => {\n this.menuElement?.classList.add(className);\n },\n removeMenuClass: (className: string) => {\n this.menuElement?.classList.remove(className);\n },\n openMenu: () => {\n this.menu.open = true;\n this.menu.root.style.minWidth = this.menu.root.style.maxWidth = (this.hoistToBody || this.fixed) && !this.naturalWidth\n ? `${this.root.clientWidth}px`\n : '';\n },\n closeMenu: () => { this.menu.open = false; },\n getAnchorElement: () => this.root.querySelector(strings.SELECT_ANCHOR_SELECTOR)!,\n setMenuAnchorElement: (anchorEl: HTMLElement) => {\n this.menu.anchor = anchorEl;\n },\n setMenuAnchorCorner: (anchorCorner: Corner) => {\n this.menu.setAnchorCorner(anchorCorner);\n },\n setMenuWrapFocus: (wrapFocus: boolean) => {\n this.menu.wrapFocus = wrapFocus;\n },\n getSelectedIndex: () => {\n const index = this.menu.selectedIndex;\n return index instanceof Array ? index[0] : index;\n },\n setSelectedIndex: (index: number) => {\n this.menu.selectedIndex = index;\n },\n removeAttributeAtIndex: (index: number, attributeName: string) => {\n this.menu.items[index].removeAttribute(attributeName);\n },\n focusMenuItemAtIndex: (index: number) => {\n (this.menu.items[index] as HTMLElement).focus();\n },\n getMenuItemCount: () => this.menu.items.length,\n getMenuItemValues: () => this.menu.items.map(x => CustomElement.for<MdcListItem>(x).viewModel.value),\n getMenuItemTextAtIndex: (index: number) => this.menu.getPrimaryTextAtIndex(index),\n isTypeaheadInProgress: () => this.menu.typeaheadInProgress,\n typeaheadMatchItem: (nextChar: string, startingIndex: number) => this.menu.typeaheadMatchItem(nextChar, startingIndex),\n };\n }\n\n private getCommonAdapterMethods() {\n return {\n addClass: (className: string) => {\n this.root.classList.add(className);\n },\n removeClass: (className: string) => {\n this.root.classList.remove(className);\n },\n hasClass: (className: string) => this.root.classList.contains(className),\n setRippleCenter: (normalizedX: number) => this.lineRipple?.setRippleCenter(normalizedX),\n activateBottomLine: () => this.lineRipple?.activate(),\n deactivateBottomLine: () => this.lineRipple?.deactivate(),\n notifyChange: (value: string) => {\n const index = this.selectedIndex;\n this.emit<MDCSelectEventDetail>(strings.CHANGE_EVENT, { value, index }, true /* shouldBubble */);\n this.emit<MDCSelectEventDetail>('change', { value, index }, true /* shouldBubble */);\n },\n };\n }\n\n private getOutlineAdapterMethods() {\n return {\n hasOutline: () => Boolean(this.outline),\n notchOutline: (labelWidth: number) => this.outline?.notch(labelWidth),\n closeOutline: () => this.outline?.closeNotch(),\n };\n }\n\n private getLabelAdapterMethods() {\n return {\n hasLabel: () => !!this.mdcLabel,\n floatLabel: (shouldFloat: boolean) => this.mdcLabel?.float(shouldFloat),\n getLabelWidth: () => this.mdcLabel ? this.mdcLabel.getWidth() : 0,\n setLabelRequired: (isRequired: boolean) => this.mdcLabel?.setRequired(isRequired),\n };\n }\n\n handleChange() {\n this.foundation?.handleChange();\n this.emit('change', {}, true);\n }\n\n handleFocus() {\n this.foundation?.handleFocus();\n }\n\n handleBlur() {\n this.foundation?.handleBlur();\n // if class is set it means the menu is open,\n // do not emit blur since \"conceptually\" the element is still active\n if (!this.root.classList.contains(cssClasses.FOCUSED)) {\n this.emit('blur', {}, true);\n }\n }\n\n handleClick(evt: MouseEvent) {\n this.selectAnchor.focus();\n this.foundation?.handleClick(this.getNormalizedXCoordinate(evt));\n }\n\n handleKeydown(evt: KeyboardEvent) {\n this.foundation?.handleKeydown(evt);\n return true;\n }\n\n handleMenuItemAction(evt: MDCMenuItemEvent) {\n this.foundation?.handleMenuItemAction(evt.detail.index);\n }\n\n handleMenuOpened() {\n this.foundation?.handleMenuOpened();\n }\n\n handleMenuClosed() {\n this.foundation?.handleMenuClosed();\n if (!this.root.classList.contains(cssClasses.FOCUSED)) {\n this.emit('blur', {}, true);\n }\n }\n\n handleItemsChanged() {\n this.foundation?.layoutOptions();\n this.foundation?.layout();\n }\n\n focus() {\n this.selectAnchor.focus();\n }\n\n blur() {\n this.selectAnchor.blur();\n }\n\n /**\n * @hidden\n * Calculates where the line ripple should start based on the x coordinate within the component.\n */\n private getNormalizedXCoordinate(evt: MouseEvent | TouchEvent): number {\n const targetClientRect = (evt.target as Element).getBoundingClientRect();\n const xCoordinate =\n this.isTouchEvent(evt) ? evt.touches[0].clientX : evt.clientX;\n return xCoordinate - targetClientRect.left;\n }\n\n private isTouchEvent(evt: MouseEvent | TouchEvent): evt is TouchEvent {\n return Boolean((evt as TouchEvent).touches);\n }\n\n /**\n * @hidden\n * Returns a map of all subcomponents to subfoundations.\n */\n private getFoundationMap(): Partial<MDCSelectFoundationMap> {\n return {\n helperText: this.helperText?.foundation,\n leadingIcon: this.leadingIcon?.foundation\n };\n }\n}\n\n/** @hidden */\nexport interface IMdcSelectElement extends IValidatedElement {\n $au: {\n 'au:resource:custom-element': {\n viewModel: MdcSelect;\n };\n };\n value: unknown;\n}\n\nfunction defineMdcSelectElementApis(element: HTMLElement) {\n Object.defineProperties(element, {\n value: {\n get(this: IMdcSelectElement) {\n return CustomElement.for<MdcSelect>(this).viewModel.value;\n },\n set(this: IMdcSelectElement, value: unknown) {\n // aurelia binding converts \"undefined\" and \"null\" into empty string\n // this does not translate well into \"empty\" menu items when several selects are bound to the same field\n CustomElement.for<MdcSelect>(this).viewModel.value = value === '' ? undefined : value;\n },\n configurable: true\n },\n options: {\n get(this: IMdcSelectElement) {\n return CustomElement.for<MdcSelect>(this).viewModel.root.querySelectorAll('.mdc-list-item');\n },\n configurable: true\n },\n selectedIndex: {\n get(this: IMdcSelectElement) {\n return CustomElement.for<MdcSelect>(this).viewModel.selectedIndex;\n },\n set(this: IMdcSelectElement, value: number) {\n CustomElement.for<MdcSelect>(this).viewModel.selectedIndex = value;\n },\n configurable: true\n },\n valid: {\n get(this: IMdcSelectElement) {\n return CustomElement.for<MdcSelect>(this).viewModel.valid;\n },\n set(this: IMdcSelectElement, value: boolean) {\n CustomElement.for<MdcSelect>(this).viewModel.valid = value;\n },\n configurable: true\n },\n addError: {\n value(this: IMdcSelectElement, error: IError) {\n CustomElement.for<MdcSelect>(this).viewModel.addError(error);\n },\n configurable: true\n },\n removeError: {\n value(this: IMdcSelectElement, error: IError) {\n CustomElement.for<MdcSelect>(this).viewModel.removeError(error);\n },\n configurable: true\n },\n renderErrors: {\n value(this: IMdcSelectElement): void {\n CustomElement.for<MdcSelect>(this).viewModel.renderErrors();\n },\n configurable: true\n },\n focus: {\n value(this: IMdcSelectElement) {\n CustomElement.for<MdcSelect>(this).viewModel.focus();\n },\n configurable: true\n },\n blur: {\n value(this: IMdcSelectElement) {\n CustomElement.for<MdcSelect>(this).viewModel.blur();\n },\n configurable: true\n }\n });\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mdc-slider-foundation-aurelia.js","sourceRoot":"","sources":["../../src/slider/mdc-slider-foundation-aurelia.ts"],"names":[],"mappings":";;;AAAA,6CAAuD;AAEvD,iFAAiF;AACjF,yEAAyE;AACzE,iDAAiD;AACjD,MAAa,0BAA2B,SAAQ,4BAAmB;IACjE,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,OAAO,CAAC,qBAAqB,EAAE,CAAC;IAC9C,CAAC;IAED,gEAAgE;IAChE,IAAI,IAAI,CAAC,CAAa,IAAI,CAAC;CAC5B;AAPD,gEAOC","sourcesContent":["import { MDCSliderFoundation } from '@material/slider';\r\n\r\n// overriding lets the rest of the foundation to always get a fresh bounding rect\r\n// otherwise resizing a container, or moving an element ruins interaction\r\n// @ts-expect-error rect is private in base class\r\nexport class MdcSliderFoundationAurelia extends MDCSliderFoundation {\r\n get rect(): ClientRect {\r\n return this.adapter.getBoundingClientRect();\r\n }\r\n\r\n // eslint-disable-next-line @typescript-eslint/no-empty-function\r\n set rect(_: ClientRect) { }\r\n}\r\n"]}
|