@angular/material 16.2.2 → 17.0.0-next.1
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/_index.scss +21 -65
- package/autocomplete/index.d.ts +40 -71
- package/autocomplete/testing/index.d.ts +5 -23
- package/button/_button-base.scss +3 -3
- package/button/_button-theme-private.scss +3 -2
- package/button/_button-theme.scss +18 -25
- package/button/_fab-theme.scss +42 -48
- package/button/_icon-button-theme.scss +19 -26
- package/button/index.d.ts +22 -31
- package/card/_card-theme.scss +82 -51
- package/checkbox/_checkbox-theme.scss +72 -54
- package/checkbox/index.d.ts +22 -42
- package/checkbox/testing/index.d.ts +6 -12
- package/core/_core-theme.scss +24 -39
- package/core/index.d.ts +17 -28
- package/core/mdc-helpers/_mdc-helpers.scss +19 -22
- package/core/option/_optgroup-theme.scss +13 -23
- package/core/option/_option-theme.scss +23 -37
- package/core/ripple/_ripple-theme.scss +6 -10
- package/core/selection/pseudo-checkbox/_pseudo-checkbox-theme.scss +17 -24
- package/core/style/_private.scss +3 -3
- package/core/style/_sass-utils.scss +7 -0
- package/core/style/_validation.scss +43 -0
- package/core/theming/_inspection.scss +256 -0
- package/core/theming/_m2-inspection.scss +211 -0
- package/core/theming/_theming.scss +169 -16
- package/core/tokens/m2/mat/_card.scss +15 -21
- package/core/tokens/m2/mat/_form-field.scss +48 -19
- package/core/tokens/m2/mat/_optgroup.scss +12 -17
- package/core/tokens/m2/mat/_option.scss +16 -28
- package/core/tokens/m2/mat/_paginator.scss +16 -18
- package/core/tokens/m2/mat/_radio.scss +7 -10
- package/core/tokens/m2/mat/_slide-toggle.scss +9 -17
- package/core/tokens/m2/mat/_slider.scss +43 -0
- package/core/tokens/m2/mdc/_checkbox.scss +21 -20
- package/core/tokens/m2/mdc/_elevated-card.scss +6 -9
- package/core/tokens/m2/mdc/_extended-fab.scss +8 -17
- package/core/tokens/m2/mdc/_fab.scss +6 -7
- package/core/tokens/m2/mdc/_filled-text-field.scss +17 -23
- package/core/tokens/m2/mdc/_icon-button.scss +1 -1
- package/core/tokens/m2/mdc/_linear-progress.scss +9 -10
- package/core/tokens/m2/mdc/_list.scss +44 -42
- package/core/tokens/m2/mdc/_outlined-card.scss +7 -10
- package/core/tokens/m2/mdc/_outlined-text-field.scss +15 -21
- package/core/tokens/m2/mdc/_radio.scss +11 -11
- package/core/tokens/m2/mdc/_slider.scss +147 -0
- package/core/tokens/m2/mdc/_switch.scss +16 -19
- package/core/typography/_definition.scss +258 -0
- package/core/typography/_property-getters.scss +63 -0
- package/core/typography/_typography-utils.scss +9 -69
- package/core/typography/_typography.scss +10 -343
- package/core/typography/_versioning.scss +86 -0
- package/dialog/_dialog-theme.scss +10 -0
- package/dialog/index.d.ts +44 -86
- package/dialog/testing/index.d.ts +6 -18
- package/esm2022/autocomplete/autocomplete-origin.mjs +9 -17
- package/esm2022/autocomplete/autocomplete-trigger.mjs +32 -41
- package/esm2022/autocomplete/autocomplete.mjs +58 -71
- package/esm2022/autocomplete/testing/autocomplete-harness.mjs +20 -33
- package/esm2022/button/button-base.mjs +32 -27
- package/esm2022/button/button.mjs +6 -6
- package/esm2022/button/fab.mjs +25 -33
- package/esm2022/button/icon-button.mjs +6 -6
- package/esm2022/button/testing/button-harness.mjs +3 -3
- package/esm2022/card/card.mjs +2 -2
- package/esm2022/checkbox/checkbox.mjs +72 -79
- package/esm2022/checkbox/testing/checkbox-harness.mjs +41 -36
- package/esm2022/core/datetime/native-date-adapter.mjs +14 -11
- package/esm2022/core/option/optgroup.mjs +19 -26
- package/esm2022/core/option/option.mjs +25 -35
- package/esm2022/core/version.mjs +1 -1
- package/esm2022/datepicker/calendar.mjs +1 -1
- package/esm2022/datepicker/datepicker-base.mjs +2 -2
- package/esm2022/datepicker/datepicker-toggle.mjs +1 -1
- package/esm2022/dialog/dialog-container.mjs +52 -77
- package/esm2022/dialog/dialog-ref.mjs +1 -1
- package/esm2022/dialog/dialog.mjs +16 -46
- package/esm2022/dialog/public-api.mjs +2 -2
- package/esm2022/dialog/testing/dialog-harness.mjs +13 -16
- package/esm2022/dialog/testing/dialog-opener.mjs +17 -27
- package/esm2022/dialog/testing/index.mjs +2 -2
- package/esm2022/form-field/form-field.mjs +3 -3
- package/esm2022/form-field/testing/error-harness.mjs +10 -12
- package/esm2022/form-field/testing/form-field-harness.mjs +45 -48
- package/esm2022/list/action-list.mjs +2 -2
- package/esm2022/list/list.mjs +2 -2
- package/esm2022/list/nav-list.mjs +2 -2
- package/esm2022/list/selection-list.mjs +2 -2
- package/esm2022/menu/menu-content.mjs +9 -16
- package/esm2022/menu/menu-trigger.mjs +14 -25
- package/esm2022/menu/menu.mjs +15 -29
- package/esm2022/menu/public-api.mjs +3 -3
- package/esm2022/menu/testing/menu-harness.mjs +29 -43
- package/esm2022/paginator/paginator.mjs +24 -38
- package/esm2022/paginator/testing/paginator-harness.mjs +25 -27
- package/esm2022/progress-bar/progress-bar.mjs +2 -2
- package/esm2022/progress-spinner/progress-spinner.mjs +2 -2
- package/esm2022/radio/radio.mjs +58 -83
- package/esm2022/radio/testing/radio-harness.mjs +31 -38
- package/esm2022/select/select.mjs +194 -212
- package/esm2022/select/testing/select-harness.mjs +18 -23
- package/esm2022/slide-toggle/slide-toggle.mjs +43 -53
- package/esm2022/slide-toggle/testing/slide-toggle-harness.mjs +33 -40
- package/esm2022/slider/slider.mjs +2 -2
- package/esm2022/snack-bar/simple-snack-bar.mjs +1 -1
- package/esm2022/snack-bar/snack-bar-container.mjs +17 -32
- package/esm2022/snack-bar/snack-bar-ref.mjs +1 -1
- package/esm2022/snack-bar/snack-bar.mjs +11 -25
- package/esm2022/snack-bar/testing/snack-bar-harness.mjs +18 -31
- package/esm2022/table/table-data-source.mjs +15 -18
- package/esm2022/table/testing/cell-harness.mjs +4 -4
- package/esm2022/table/testing/row-harness.mjs +4 -4
- package/esm2022/table/testing/table-harness.mjs +22 -24
- package/esm2022/tabs/public-api.mjs +7 -8
- package/esm2022/tabs/tab-body.mjs +13 -29
- package/esm2022/tabs/tab-group.mjs +55 -79
- package/esm2022/tabs/tab-header.mjs +13 -34
- package/esm2022/tabs/tab-label-wrapper.mjs +6 -18
- package/esm2022/tabs/tab-nav-bar/tab-nav-bar.mjs +119 -168
- package/esm2022/tabs/tab.mjs +25 -37
- package/esm2022/tooltip/testing/tooltip-harness.mjs +21 -23
- package/esm2022/tooltip/tooltip.mjs +68 -101
- package/fesm2022/autocomplete/testing.mjs +20 -33
- package/fesm2022/autocomplete/testing.mjs.map +1 -1
- package/fesm2022/autocomplete.mjs +96 -126
- package/fesm2022/autocomplete.mjs.map +1 -1
- package/fesm2022/button/testing.mjs +2 -2
- package/fesm2022/button/testing.mjs.map +1 -1
- package/fesm2022/button.mjs +61 -63
- package/fesm2022/button.mjs.map +1 -1
- package/fesm2022/card.mjs +2 -2
- package/fesm2022/card.mjs.map +1 -1
- package/fesm2022/checkbox/testing.mjs +41 -36
- package/fesm2022/checkbox/testing.mjs.map +1 -1
- package/fesm2022/checkbox.mjs +72 -79
- package/fesm2022/checkbox.mjs.map +1 -1
- package/fesm2022/core.mjs +49 -61
- package/fesm2022/core.mjs.map +1 -1
- package/fesm2022/datepicker.mjs +3 -3
- package/fesm2022/datepicker.mjs.map +1 -1
- package/fesm2022/dialog/testing.mjs +30 -43
- package/fesm2022/dialog/testing.mjs.map +1 -1
- package/fesm2022/dialog.mjs +67 -122
- package/fesm2022/dialog.mjs.map +1 -1
- package/fesm2022/form-field/testing.mjs +54 -59
- package/fesm2022/form-field/testing.mjs.map +1 -1
- package/fesm2022/form-field.mjs +2 -2
- package/fesm2022/form-field.mjs.map +1 -1
- package/fesm2022/list.mjs +8 -8
- package/fesm2022/list.mjs.map +1 -1
- package/fesm2022/menu/testing.mjs +30 -44
- package/fesm2022/menu/testing.mjs.map +1 -1
- package/fesm2022/menu.mjs +34 -66
- package/fesm2022/menu.mjs.map +1 -1
- package/fesm2022/paginator/testing.mjs +25 -27
- package/fesm2022/paginator/testing.mjs.map +1 -1
- package/fesm2022/paginator.mjs +24 -38
- package/fesm2022/paginator.mjs.map +1 -1
- package/fesm2022/progress-bar.mjs +2 -2
- package/fesm2022/progress-bar.mjs.map +1 -1
- package/fesm2022/progress-spinner.mjs +2 -2
- package/fesm2022/progress-spinner.mjs.map +1 -1
- package/fesm2022/radio/testing.mjs +31 -38
- package/fesm2022/radio/testing.mjs.map +1 -1
- package/fesm2022/radio.mjs +59 -84
- package/fesm2022/radio.mjs.map +1 -1
- package/fesm2022/select/testing.mjs +18 -23
- package/fesm2022/select/testing.mjs.map +1 -1
- package/fesm2022/select.mjs +196 -214
- package/fesm2022/select.mjs.map +1 -1
- package/fesm2022/slide-toggle/testing.mjs +33 -40
- package/fesm2022/slide-toggle/testing.mjs.map +1 -1
- package/fesm2022/slide-toggle.mjs +43 -53
- package/fesm2022/slide-toggle.mjs.map +1 -1
- package/fesm2022/slider.mjs +2 -2
- package/fesm2022/slider.mjs.map +1 -1
- package/fesm2022/snack-bar/testing.mjs +19 -32
- package/fesm2022/snack-bar/testing.mjs.map +1 -1
- package/fesm2022/snack-bar.mjs +27 -56
- package/fesm2022/snack-bar.mjs.map +1 -1
- package/fesm2022/table/testing.mjs +28 -30
- package/fesm2022/table/testing.mjs.map +1 -1
- package/fesm2022/table.mjs +15 -18
- package/fesm2022/table.mjs.map +1 -1
- package/fesm2022/tabs.mjs +234 -368
- package/fesm2022/tabs.mjs.map +1 -1
- package/fesm2022/tooltip/testing.mjs +21 -23
- package/fesm2022/tooltip/testing.mjs.map +1 -1
- package/fesm2022/tooltip.mjs +69 -102
- package/fesm2022/tooltip.mjs.map +1 -1
- package/form-field/_form-field-density.scss +3 -4
- package/form-field/_form-field-focus-overlay.scss +13 -18
- package/form-field/_form-field-native-select.scss +30 -67
- package/form-field/_form-field-subscript.scss +4 -8
- package/form-field/_form-field-theme.scss +33 -76
- package/form-field/_mdc-text-field-structure-overrides.scss +20 -0
- package/form-field/testing/index.d.ts +14 -44
- package/input/_input-theme.scss +11 -23
- package/list/_list-theme.scss +34 -40
- package/menu/index.d.ts +22 -44
- package/menu/testing/index.d.ts +6 -23
- package/package.json +7 -286
- package/paginator/_paginator-theme.scss +15 -24
- package/paginator/index.d.ts +6 -22
- package/paginator/testing/index.d.ts +9 -22
- package/prebuilt-themes/deeppurple-amber.css +1 -1
- package/prebuilt-themes/indigo-pink.css +1 -1
- package/prebuilt-themes/pink-bluegrey.css +1 -1
- package/prebuilt-themes/purple-green.css +1 -1
- package/progress-bar/_progress-bar-theme.scss +25 -23
- package/progress-spinner/_progress-spinner-theme.scss +14 -3
- package/radio/_radio-theme.scss +23 -38
- package/radio/index.d.ts +22 -45
- package/radio/testing/index.d.ts +7 -23
- package/schematics/migration.json +4 -4
- package/schematics/ng-add/index.js +2 -2
- package/schematics/ng-add/index.mjs +2 -2
- package/schematics/ng-update/index_bundled.js +4 -4
- package/schematics/ng-update/index_bundled.js.map +1 -1
- package/select/index.d.ts +47 -68
- package/select/testing/index.d.ts +9 -22
- package/slide-toggle/_slide-toggle-theme.scss +23 -40
- package/slide-toggle/index.d.ts +17 -27
- package/slide-toggle/testing/index.d.ts +6 -13
- package/slider/_slider-theme.scss +65 -82
- package/snack-bar/_snack-bar-theme.scss +10 -2
- package/snack-bar/index.d.ts +40 -62
- package/snack-bar/testing/index.d.ts +5 -20
- package/table/index.d.ts +2 -31
- package/table/testing/index.d.ts +17 -34
- package/tabs/index.d.ts +60 -144
- package/tooltip/_tooltip-theme.scss +12 -3
- package/tooltip/index.d.ts +26 -49
- package/tooltip/testing/index.d.ts +7 -17
- package/_theming.scss +0 -43
- package/_token-theming.scss +0 -2
- package/autocomplete/_autocomplete-theme.import.scss +0 -1
- package/badge/_badge-legacy-index.scss +0 -3
- package/badge/_badge-theme.import.scss +0 -11
- package/bottom-sheet/_bottom-sheet-legacy-index.scss +0 -2
- package/bottom-sheet/_bottom-sheet-theme.import.scss +0 -10
- package/button/_button-base.import.scss +0 -4
- package/button/_button-theme.import.scss +0 -13
- package/button-toggle/_button-toggle-legacy-index.scss +0 -2
- package/button-toggle/_button-toggle-theme.import.scss +0 -15
- package/button-toggle/_button-toggle-variables.import.scss +0 -1
- package/button-toggle/_button-toggle-variables.scss +0 -16
- package/card/_card-theme.import.scss +0 -3
- package/checkbox/_checkbox-theme.import.scss +0 -10
- package/chips/_chips-theme.import.scss +0 -4
- package/core/_core-legacy-index.scss +0 -16
- package/core/_core.import.scss +0 -60
- package/core/color/_all-color.import.scss +0 -53
- package/core/color/_color-legacy-index.scss +0 -1
- package/core/density/private/_all-density.import.scss +0 -15
- package/core/density/private/_compatibility.import.scss +0 -4
- package/core/density/private/_density-legacy-index.scss +0 -5
- package/core/focus-indicators/_focus-indicators-legacy-index.scss +0 -5
- package/core/focus-indicators/_focus-indicators.import.scss +0 -23
- package/core/mdc-helpers/_mdc-helpers.import.scss +0 -9
- package/core/option/_optgroup-theme.import.scss +0 -4
- package/core/option/_option-legacy-index.scss +0 -5
- package/core/option/_option-theme.import.scss +0 -4
- package/core/ripple/_ripple-legacy-index.scss +0 -3
- package/core/ripple/_ripple.import.scss +0 -20
- package/core/selection/pseudo-checkbox/_pseudo-checkbox-legacy-index.scss +0 -2
- package/core/selection/pseudo-checkbox/_pseudo-checkbox-theme.import.scss +0 -17
- package/core/style/_button-common.import.scss +0 -4
- package/core/style/_checkbox-common.import.scss +0 -11
- package/core/style/_elevation.import.scss +0 -17
- package/core/style/_form-common.import.scss +0 -16
- package/core/style/_layout-common.import.scss +0 -1
- package/core/style/_list-common.import.scss +0 -2
- package/core/style/_menu-common.import.scss +0 -18
- package/core/style/_private.import.scss +0 -15
- package/core/style/_style-legacy-index.scss +0 -24
- package/core/style/_variables.import.scss +0 -8
- package/core/style/_vendor-prefixes.import.scss +0 -1
- package/core/theming/_all-theme.import.scss +0 -86
- package/core/theming/_palette.import.scss +0 -12
- package/core/theming/_theming-legacy-index.scss +0 -22
- package/core/theming/_theming.import.scss +0 -24
- package/core/typography/_all-typography.import.scss +0 -76
- package/core/typography/_typography-legacy-index.scss +0 -18
- package/core/typography/_typography-utils.import.scss +0 -9
- package/core/typography/_typography.import.scss +0 -14
- package/datepicker/_datepicker-legacy-index.scss +0 -9
- package/datepicker/_datepicker-theme.import.scss +0 -17
- package/dialog/_dialog-legacy-padding.import.scss +0 -1
- package/dialog/_dialog-theme.import.scss +0 -1
- package/dialog/_mdc-dialog-structure-overrides.import.scss +0 -1
- package/divider/_divider-legacy-index.scss +0 -3
- package/divider/_divider-offset.import.scss +0 -1
- package/divider/_divider-theme.import.scss +0 -6
- package/esm2022/legacy-autocomplete/autocomplete-module.mjs +0 -51
- package/esm2022/legacy-autocomplete/autocomplete-origin.mjs +0 -28
- package/esm2022/legacy-autocomplete/autocomplete-trigger.mjs +0 -60
- package/esm2022/legacy-autocomplete/autocomplete.mjs +0 -40
- package/esm2022/legacy-autocomplete/index.mjs +0 -9
- package/esm2022/legacy-autocomplete/legacy-autocomplete_public_index.mjs +0 -5
- package/esm2022/legacy-autocomplete/public-api.mjs +0 -48
- package/esm2022/legacy-autocomplete/testing/autocomplete-harness-filters.mjs +0 -9
- package/esm2022/legacy-autocomplete/testing/autocomplete-harness.mjs +0 -39
- package/esm2022/legacy-autocomplete/testing/index.mjs +0 -9
- package/esm2022/legacy-autocomplete/testing/public-api.mjs +0 -9
- package/esm2022/legacy-button/button-module.mjs +0 -29
- package/esm2022/legacy-button/button.mjs +0 -177
- package/esm2022/legacy-button/index.mjs +0 -9
- package/esm2022/legacy-button/legacy-button_public_index.mjs +0 -5
- package/esm2022/legacy-button/public-api.mjs +0 -10
- package/esm2022/legacy-button/testing/button-harness.mjs +0 -82
- package/esm2022/legacy-button/testing/index.mjs +0 -9
- package/esm2022/legacy-button/testing/public-api.mjs +0 -9
- package/esm2022/legacy-card/card-module.mjs +0 -87
- package/esm2022/legacy-card/card.mjs +0 -276
- package/esm2022/legacy-card/index.mjs +0 -9
- package/esm2022/legacy-card/legacy-card_public_index.mjs +0 -5
- package/esm2022/legacy-card/public-api.mjs +0 -10
- package/esm2022/legacy-card/testing/card-harness-filters.mjs +0 -9
- package/esm2022/legacy-card/testing/card-harness.mjs +0 -47
- package/esm2022/legacy-card/testing/index.mjs +0 -9
- package/esm2022/legacy-card/testing/public-api.mjs +0 -9
- package/esm2022/legacy-checkbox/checkbox-module.mjs +0 -31
- package/esm2022/legacy-checkbox/checkbox.mjs +0 -137
- package/esm2022/legacy-checkbox/index.mjs +0 -9
- package/esm2022/legacy-checkbox/legacy-checkbox_public_index.mjs +0 -5
- package/esm2022/legacy-checkbox/public-api.mjs +0 -36
- package/esm2022/legacy-checkbox/testing/checkbox-harness.mjs +0 -46
- package/esm2022/legacy-checkbox/testing/index.mjs +0 -9
- package/esm2022/legacy-checkbox/testing/public-api.mjs +0 -9
- package/esm2022/legacy-chips/chip-default-options.mjs +0 -15
- package/esm2022/legacy-chips/chip-input.mjs +0 -198
- package/esm2022/legacy-chips/chip-list.mjs +0 -718
- package/esm2022/legacy-chips/chip-text-control.mjs +0 -9
- package/esm2022/legacy-chips/chip.mjs +0 -445
- package/esm2022/legacy-chips/chips-module.mjs +0 -68
- package/esm2022/legacy-chips/index.mjs +0 -9
- package/esm2022/legacy-chips/legacy-chips_public_index.mjs +0 -5
- package/esm2022/legacy-chips/public-api.mjs +0 -13
- package/esm2022/legacy-chips/testing/chip-avatar-harness.mjs +0 -26
- package/esm2022/legacy-chips/testing/chip-harness-filters.mjs +0 -2
- package/esm2022/legacy-chips/testing/chip-harness.mjs +0 -95
- package/esm2022/legacy-chips/testing/chip-input-harness.mjs +0 -86
- package/esm2022/legacy-chips/testing/chip-list-harness.mjs +0 -90
- package/esm2022/legacy-chips/testing/chip-listbox-harness.mjs +0 -48
- package/esm2022/legacy-chips/testing/chip-option-harness.mjs +0 -49
- package/esm2022/legacy-chips/testing/chip-remove-harness.mjs +0 -30
- package/esm2022/legacy-chips/testing/index.mjs +0 -9
- package/esm2022/legacy-chips/testing/public-api.mjs +0 -14
- package/esm2022/legacy-core/index.mjs +0 -9
- package/esm2022/legacy-core/legacy-core_public_index.mjs +0 -5
- package/esm2022/legacy-core/option/index.mjs +0 -69
- package/esm2022/legacy-core/option/optgroup.mjs +0 -30
- package/esm2022/legacy-core/option/option.mjs +0 -54
- package/esm2022/legacy-core/public-api.mjs +0 -170
- package/esm2022/legacy-core/testing/index.mjs +0 -9
- package/esm2022/legacy-core/testing/optgroup-harness-filters.mjs +0 -9
- package/esm2022/legacy-core/testing/optgroup-harness.mjs +0 -47
- package/esm2022/legacy-core/testing/option-harness-filters.mjs +0 -9
- package/esm2022/legacy-core/testing/option-harness.mjs +0 -58
- package/esm2022/legacy-core/testing/public-api.mjs +0 -12
- package/esm2022/legacy-dialog/dialog-animations.mjs +0 -17
- package/esm2022/legacy-dialog/dialog-config.mjs +0 -22
- package/esm2022/legacy-dialog/dialog-container.mjs +0 -85
- package/esm2022/legacy-dialog/dialog-content-directives.mjs +0 -209
- package/esm2022/legacy-dialog/dialog-module.mjs +0 -57
- package/esm2022/legacy-dialog/dialog-ref.mjs +0 -16
- package/esm2022/legacy-dialog/dialog.mjs +0 -106
- package/esm2022/legacy-dialog/index.mjs +0 -9
- package/esm2022/legacy-dialog/legacy-dialog_public_index.mjs +0 -5
- package/esm2022/legacy-dialog/public-api.mjs +0 -40
- package/esm2022/legacy-dialog/testing/dialog-harness.mjs +0 -36
- package/esm2022/legacy-dialog/testing/dialog-opener.mjs +0 -56
- package/esm2022/legacy-dialog/testing/index.mjs +0 -9
- package/esm2022/legacy-dialog/testing/public-api.mjs +0 -10
- package/esm2022/legacy-form-field/error.mjs +0 -46
- package/esm2022/legacy-form-field/form-field-module.mjs +0 -67
- package/esm2022/legacy-form-field/form-field.mjs +0 -530
- package/esm2022/legacy-form-field/hint.mjs +0 -56
- package/esm2022/legacy-form-field/index.mjs +0 -9
- package/esm2022/legacy-form-field/label.mjs +0 -25
- package/esm2022/legacy-form-field/legacy-form-field_public_index.mjs +0 -5
- package/esm2022/legacy-form-field/placeholder.mjs +0 -26
- package/esm2022/legacy-form-field/prefix.mjs +0 -27
- package/esm2022/legacy-form-field/public-api.mjs +0 -62
- package/esm2022/legacy-form-field/suffix.mjs +0 -27
- package/esm2022/legacy-form-field/testing/error-harness.mjs +0 -26
- package/esm2022/legacy-form-field/testing/form-field-harness.mjs +0 -73
- package/esm2022/legacy-form-field/testing/index.mjs +0 -9
- package/esm2022/legacy-form-field/testing/public-api.mjs +0 -19
- package/esm2022/legacy-input/index.mjs +0 -9
- package/esm2022/legacy-input/input-module.mjs +0 -45
- package/esm2022/legacy-input/input.mjs +0 -62
- package/esm2022/legacy-input/legacy-input_public_index.mjs +0 -5
- package/esm2022/legacy-input/public-api.mjs +0 -21
- package/esm2022/legacy-input/testing/index.mjs +0 -9
- package/esm2022/legacy-input/testing/public-api.mjs +0 -24
- package/esm2022/legacy-list/index.mjs +0 -9
- package/esm2022/legacy-list/legacy-list_public_index.mjs +0 -5
- package/esm2022/legacy-list/list-module.mjs +0 -75
- package/esm2022/legacy-list/list.mjs +0 -223
- package/esm2022/legacy-list/public-api.mjs +0 -22
- package/esm2022/legacy-list/selection-list.mjs +0 -619
- package/esm2022/legacy-list/testing/action-list-harness.mjs +0 -67
- package/esm2022/legacy-list/testing/index.mjs +0 -9
- package/esm2022/legacy-list/testing/list-harness-base.mjs +0 -97
- package/esm2022/legacy-list/testing/list-harness-filters.mjs +0 -9
- package/esm2022/legacy-list/testing/list-harness.mjs +0 -51
- package/esm2022/legacy-list/testing/list-item-harness-base.mjs +0 -74
- package/esm2022/legacy-list/testing/nav-list-harness.mjs +0 -71
- package/esm2022/legacy-list/testing/public-api.mjs +0 -12
- package/esm2022/legacy-list/testing/selection-list-harness.mjs +0 -129
- package/esm2022/legacy-menu/index.mjs +0 -9
- package/esm2022/legacy-menu/legacy-menu_public_index.mjs +0 -5
- package/esm2022/legacy-menu/menu-content.mjs +0 -27
- package/esm2022/legacy-menu/menu-item.mjs +0 -41
- package/esm2022/legacy-menu/menu-module.mjs +0 -50
- package/esm2022/legacy-menu/menu-trigger.mjs +0 -31
- package/esm2022/legacy-menu/menu.mjs +0 -40
- package/esm2022/legacy-menu/public-api.mjs +0 -49
- package/esm2022/legacy-menu/testing/index.mjs +0 -9
- package/esm2022/legacy-menu/testing/menu-harness.mjs +0 -56
- package/esm2022/legacy-menu/testing/public-api.mjs +0 -9
- package/esm2022/legacy-paginator/index.mjs +0 -9
- package/esm2022/legacy-paginator/legacy-paginator_public_index.mjs +0 -5
- package/esm2022/legacy-paginator/paginator-module.mjs +0 -49
- package/esm2022/legacy-paginator/paginator.mjs +0 -53
- package/esm2022/legacy-paginator/public-api.mjs +0 -36
- package/esm2022/legacy-paginator/testing/index.mjs +0 -9
- package/esm2022/legacy-paginator/testing/paginator-harness.mjs +0 -41
- package/esm2022/legacy-paginator/testing/public-api.mjs +0 -15
- package/esm2022/legacy-progress-bar/index.mjs +0 -9
- package/esm2022/legacy-progress-bar/legacy-progress-bar_public_index.mjs +0 -5
- package/esm2022/legacy-progress-bar/progress-bar-module.mjs +0 -30
- package/esm2022/legacy-progress-bar/progress-bar.mjs +0 -190
- package/esm2022/legacy-progress-bar/public-api.mjs +0 -11
- package/esm2022/legacy-progress-bar/testing/index.mjs +0 -9
- package/esm2022/legacy-progress-bar/testing/progress-bar-harness.mjs +0 -38
- package/esm2022/legacy-progress-bar/testing/public-api.mjs +0 -9
- package/esm2022/legacy-progress-spinner/index.mjs +0 -9
- package/esm2022/legacy-progress-spinner/legacy-progress-spinner_public_index.mjs +0 -5
- package/esm2022/legacy-progress-spinner/progress-spinner-module.mjs +0 -30
- package/esm2022/legacy-progress-spinner/progress-spinner.mjs +0 -286
- package/esm2022/legacy-progress-spinner/public-api.mjs +0 -19
- package/esm2022/legacy-progress-spinner/testing/index.mjs +0 -9
- package/esm2022/legacy-progress-spinner/testing/progress-spinner-harness.mjs +0 -39
- package/esm2022/legacy-progress-spinner/testing/public-api.mjs +0 -9
- package/esm2022/legacy-radio/index.mjs +0 -9
- package/esm2022/legacy-radio/legacy-radio_public_index.mjs +0 -5
- package/esm2022/legacy-radio/public-api.mjs +0 -31
- package/esm2022/legacy-radio/radio-module.mjs +0 -29
- package/esm2022/legacy-radio/radio.mjs +0 -112
- package/esm2022/legacy-radio/testing/index.mjs +0 -9
- package/esm2022/legacy-radio/testing/public-api.mjs +0 -9
- package/esm2022/legacy-radio/testing/radio-harness.mjs +0 -58
- package/esm2022/legacy-select/index.mjs +0 -9
- package/esm2022/legacy-select/legacy-select_public_index.mjs +0 -5
- package/esm2022/legacy-select/public-api.mjs +0 -37
- package/esm2022/legacy-select/select-animations.mjs +0 -56
- package/esm2022/legacy-select/select-errors.mjs +0 -39
- package/esm2022/legacy-select/select-module.mjs +0 -51
- package/esm2022/legacy-select/select.mjs +0 -447
- package/esm2022/legacy-select/testing/index.mjs +0 -9
- package/esm2022/legacy-select/testing/public-api.mjs +0 -9
- package/esm2022/legacy-select/testing/select-harness-filters.mjs +0 -9
- package/esm2022/legacy-select/testing/select-harness.mjs +0 -36
- package/esm2022/legacy-slide-toggle/index.mjs +0 -9
- package/esm2022/legacy-slide-toggle/legacy-slide-toggle_public_index.mjs +0 -5
- package/esm2022/legacy-slide-toggle/public-api.mjs +0 -32
- package/esm2022/legacy-slide-toggle/slide-toggle-config.mjs +0 -18
- package/esm2022/legacy-slide-toggle/slide-toggle-module.mjs +0 -42
- package/esm2022/legacy-slide-toggle/slide-toggle.mjs +0 -137
- package/esm2022/legacy-slide-toggle/testing/index.mjs +0 -9
- package/esm2022/legacy-slide-toggle/testing/public-api.mjs +0 -15
- package/esm2022/legacy-slide-toggle/testing/slide-toggle-harness.mjs +0 -50
- package/esm2022/legacy-slider/index.mjs +0 -9
- package/esm2022/legacy-slider/legacy-slider_public_index.mjs +0 -5
- package/esm2022/legacy-slider/public-api.mjs +0 -10
- package/esm2022/legacy-slider/slider-module.mjs +0 -30
- package/esm2022/legacy-slider/slider.mjs +0 -847
- package/esm2022/legacy-slider/testing/index.mjs +0 -9
- package/esm2022/legacy-slider/testing/public-api.mjs +0 -9
- package/esm2022/legacy-slider/testing/slider-harness-filters.mjs +0 -2
- package/esm2022/legacy-slider/testing/slider-harness.mjs +0 -122
- package/esm2022/legacy-snack-bar/index.mjs +0 -9
- package/esm2022/legacy-snack-bar/legacy-snack-bar_public_index.mjs +0 -5
- package/esm2022/legacy-snack-bar/public-api.mjs +0 -53
- package/esm2022/legacy-snack-bar/simple-snack-bar.mjs +0 -45
- package/esm2022/legacy-snack-bar/snack-bar-container.mjs +0 -39
- package/esm2022/legacy-snack-bar/snack-bar-module.mjs +0 -34
- package/esm2022/legacy-snack-bar/snack-bar.mjs +0 -47
- package/esm2022/legacy-snack-bar/testing/index.mjs +0 -9
- package/esm2022/legacy-snack-bar/testing/public-api.mjs +0 -9
- package/esm2022/legacy-snack-bar/testing/snack-bar-harness.mjs +0 -46
- package/esm2022/legacy-table/cell.mjs +0 -163
- package/esm2022/legacy-table/index.mjs +0 -9
- package/esm2022/legacy-table/legacy-table_public_index.mjs +0 -5
- package/esm2022/legacy-table/public-api.mjs +0 -20
- package/esm2022/legacy-table/row.mjs +0 -165
- package/esm2022/legacy-table/table-data-source.mjs +0 -27
- package/esm2022/legacy-table/table-module.mjs +0 -98
- package/esm2022/legacy-table/table.mjs +0 -72
- package/esm2022/legacy-table/testing/cell-harness.mjs +0 -62
- package/esm2022/legacy-table/testing/index.mjs +0 -9
- package/esm2022/legacy-table/testing/public-api.mjs +0 -27
- package/esm2022/legacy-table/testing/row-harness.mjs +0 -76
- package/esm2022/legacy-table/testing/table-harness.mjs +0 -34
- package/esm2022/legacy-table/text-column.mjs +0 -65
- package/esm2022/legacy-tabs/index.mjs +0 -9
- package/esm2022/legacy-tabs/ink-bar.mjs +0 -73
- package/esm2022/legacy-tabs/legacy-tabs_public_index.mjs +0 -5
- package/esm2022/legacy-tabs/public-api.mjs +0 -94
- package/esm2022/legacy-tabs/tab-body.mjs +0 -64
- package/esm2022/legacy-tabs/tab-content.mjs +0 -27
- package/esm2022/legacy-tabs/tab-group.mjs +0 -72
- package/esm2022/legacy-tabs/tab-header.mjs +0 -75
- package/esm2022/legacy-tabs/tab-label-wrapper.mjs +0 -30
- package/esm2022/legacy-tabs/tab-label.mjs +0 -27
- package/esm2022/legacy-tabs/tab-nav-bar/index.mjs +0 -9
- package/esm2022/legacy-tabs/tab-nav-bar/tab-nav-bar.mjs +0 -164
- package/esm2022/legacy-tabs/tab.mjs +0 -46
- package/esm2022/legacy-tabs/tabs-module.mjs +0 -99
- package/esm2022/legacy-tabs/testing/index.mjs +0 -9
- package/esm2022/legacy-tabs/testing/public-api.mjs +0 -12
- package/esm2022/legacy-tabs/testing/tab-group-harness.mjs +0 -61
- package/esm2022/legacy-tabs/testing/tab-harness-filters.mjs +0 -2
- package/esm2022/legacy-tabs/testing/tab-harness.mjs +0 -71
- package/esm2022/legacy-tabs/testing/tab-link-harness.mjs +0 -45
- package/esm2022/legacy-tabs/testing/tab-nav-bar-harness.mjs +0 -70
- package/esm2022/legacy-tabs/testing/tab-nav-panel-harness.mjs +0 -31
- package/esm2022/legacy-tooltip/index.mjs +0 -9
- package/esm2022/legacy-tooltip/legacy-tooltip_public_index.mjs +0 -5
- package/esm2022/legacy-tooltip/public-api.mjs +0 -47
- package/esm2022/legacy-tooltip/testing/index.mjs +0 -9
- package/esm2022/legacy-tooltip/testing/public-api.mjs +0 -9
- package/esm2022/legacy-tooltip/testing/tooltip-harness.mjs +0 -35
- package/esm2022/legacy-tooltip/tooltip-animations.mjs +0 -28
- package/esm2022/legacy-tooltip/tooltip-module.mjs +0 -35
- package/esm2022/legacy-tooltip/tooltip.mjs +0 -108
- package/expansion/_expansion-legacy-index.scss +0 -2
- package/expansion/_expansion-theme.import.scss +0 -12
- package/expansion/_expansion-variables.import.scss +0 -1
- package/fesm2022/legacy-autocomplete/testing.mjs +0 -35
- package/fesm2022/legacy-autocomplete/testing.mjs.map +0 -1
- package/fesm2022/legacy-autocomplete.mjs +0 -146
- package/fesm2022/legacy-autocomplete.mjs.map +0 -1
- package/fesm2022/legacy-button/testing.mjs +0 -78
- package/fesm2022/legacy-button/testing.mjs.map +0 -1
- package/fesm2022/legacy-button.mjs +0 -194
- package/fesm2022/legacy-button.mjs.map +0 -1
- package/fesm2022/legacy-card/testing.mjs +0 -43
- package/fesm2022/legacy-card/testing.mjs.map +0 -1
- package/fesm2022/legacy-card.mjs +0 -353
- package/fesm2022/legacy-card.mjs.map +0 -1
- package/fesm2022/legacy-checkbox/testing.mjs +0 -42
- package/fesm2022/legacy-checkbox/testing.mjs.map +0 -1
- package/fesm2022/legacy-checkbox.mjs +0 -157
- package/fesm2022/legacy-checkbox.mjs.map +0 -1
- package/fesm2022/legacy-chips/testing.mjs +0 -365
- package/fesm2022/legacy-chips/testing.mjs.map +0 -1
- package/fesm2022/legacy-chips.mjs +0 -1399
- package/fesm2022/legacy-chips.mjs.map +0 -1
- package/fesm2022/legacy-core/testing.mjs +0 -92
- package/fesm2022/legacy-core/testing.mjs.map +0 -1
- package/fesm2022/legacy-core.mjs +0 -92
- package/fesm2022/legacy-core.mjs.map +0 -1
- package/fesm2022/legacy-dialog/testing.mjs +0 -80
- package/fesm2022/legacy-dialog/testing.mjs.map +0 -1
- package/fesm2022/legacy-dialog.mjs +0 -449
- package/fesm2022/legacy-dialog.mjs.map +0 -1
- package/fesm2022/legacy-form-field/testing.mjs +0 -87
- package/fesm2022/legacy-form-field/testing.mjs.map +0 -1
- package/fesm2022/legacy-form-field.mjs +0 -726
- package/fesm2022/legacy-form-field.mjs.map +0 -1
- package/fesm2022/legacy-input/testing.mjs +0 -2
- package/fesm2022/legacy-input/testing.mjs.map +0 -1
- package/fesm2022/legacy-input.mjs +0 -97
- package/fesm2022/legacy-input.mjs.map +0 -1
- package/fesm2022/legacy-list/testing.mjs +0 -436
- package/fesm2022/legacy-list/testing.mjs.map +0 -1
- package/fesm2022/legacy-list.mjs +0 -891
- package/fesm2022/legacy-list.mjs.map +0 -1
- package/fesm2022/legacy-menu/testing.mjs +0 -52
- package/fesm2022/legacy-menu/testing.mjs.map +0 -1
- package/fesm2022/legacy-menu.mjs +0 -145
- package/fesm2022/legacy-menu.mjs.map +0 -1
- package/fesm2022/legacy-paginator/testing.mjs +0 -38
- package/fesm2022/legacy-paginator/testing.mjs.map +0 -1
- package/fesm2022/legacy-paginator.mjs +0 -92
- package/fesm2022/legacy-paginator.mjs.map +0 -1
- package/fesm2022/legacy-progress-bar/testing.mjs +0 -34
- package/fesm2022/legacy-progress-bar/testing.mjs.map +0 -1
- package/fesm2022/legacy-progress-bar.mjs +0 -210
- package/fesm2022/legacy-progress-bar.mjs.map +0 -1
- package/fesm2022/legacy-progress-spinner/testing.mjs +0 -35
- package/fesm2022/legacy-progress-spinner/testing.mjs.map +0 -1
- package/fesm2022/legacy-progress-spinner.mjs +0 -312
- package/fesm2022/legacy-progress-spinner.mjs.map +0 -1
- package/fesm2022/legacy-radio/testing.mjs +0 -54
- package/fesm2022/legacy-radio/testing.mjs.map +0 -1
- package/fesm2022/legacy-radio.mjs +0 -130
- package/fesm2022/legacy-radio.mjs.map +0 -1
- package/fesm2022/legacy-select/testing.mjs +0 -32
- package/fesm2022/legacy-select/testing.mjs.map +0 -1
- package/fesm2022/legacy-select.mjs +0 -541
- package/fesm2022/legacy-select.mjs.map +0 -1
- package/fesm2022/legacy-slide-toggle/testing.mjs +0 -47
- package/fesm2022/legacy-slide-toggle/testing.mjs.map +0 -1
- package/fesm2022/legacy-slide-toggle.mjs +0 -177
- package/fesm2022/legacy-slide-toggle.mjs.map +0 -1
- package/fesm2022/legacy-slider/testing.mjs +0 -118
- package/fesm2022/legacy-slider/testing.mjs.map +0 -1
- package/fesm2022/legacy-slider.mjs +0 -863
- package/fesm2022/legacy-slider.mjs.map +0 -1
- package/fesm2022/legacy-snack-bar/testing.mjs +0 -42
- package/fesm2022/legacy-snack-bar/testing.mjs.map +0 -1
- package/fesm2022/legacy-snack-bar.mjs +0 -128
- package/fesm2022/legacy-snack-bar.mjs.map +0 -1
- package/fesm2022/legacy-table/testing.mjs +0 -150
- package/fesm2022/legacy-table/testing.mjs.map +0 -1
- package/fesm2022/legacy-table.mjs +0 -538
- package/fesm2022/legacy-table.mjs.map +0 -1
- package/fesm2022/legacy-tabs/testing.mjs +0 -239
- package/fesm2022/legacy-tabs/testing.mjs.map +0 -1
- package/fesm2022/legacy-tabs.mjs +0 -549
- package/fesm2022/legacy-tabs.mjs.map +0 -1
- package/fesm2022/legacy-tooltip/testing.mjs +0 -31
- package/fesm2022/legacy-tooltip/testing.mjs.map +0 -1
- package/fesm2022/legacy-tooltip.mjs +0 -148
- package/fesm2022/legacy-tooltip.mjs.map +0 -1
- package/form-field/_form-field-theme.import.scss +0 -29
- package/form-field/_mdc-text-field-theme-variable-refresh.scss +0 -88
- package/grid-list/_grid-list-legacy-index.scss +0 -2
- package/grid-list/_grid-list-theme.import.scss +0 -10
- package/icon/_icon-legacy-index.scss +0 -2
- package/icon/_icon-theme.import.scss +0 -5
- package/input/_input-theme.import.scss +0 -1
- package/legacy-autocomplete/_autocomplete-legacy-index.scss +0 -2
- package/legacy-autocomplete/_autocomplete-theme.import.scss +0 -7
- package/legacy-autocomplete/_autocomplete-theme.scss +0 -57
- package/legacy-autocomplete/index.d.ts +0 -115
- package/legacy-autocomplete/testing/index.d.ts +0 -41
- package/legacy-button/_button-base.import.scss +0 -21
- package/legacy-button/_button-base.scss +0 -114
- package/legacy-button/_button-legacy-index.scss +0 -22
- package/legacy-button/_button-theme.import.scss +0 -11
- package/legacy-button/_button-theme.scss +0 -223
- package/legacy-button/index.d.ts +0 -87
- package/legacy-button/testing/index.d.ts +0 -49
- package/legacy-card/_card-legacy-index.scss +0 -2
- package/legacy-card/_card-theme.import.scss +0 -10
- package/legacy-card/_card-theme.scss +0 -78
- package/legacy-card/index.d.ts +0 -201
- package/legacy-card/testing/index.d.ts +0 -56
- package/legacy-checkbox/_checkbox-legacy-index.scss +0 -2
- package/legacy-checkbox/_checkbox-theme.import.scss +0 -7
- package/legacy-checkbox/_checkbox-theme.scss +0 -138
- package/legacy-checkbox/index.d.ts +0 -116
- package/legacy-checkbox/testing/index.d.ts +0 -30
- package/legacy-chips/_chips-legacy-index.scss +0 -7
- package/legacy-chips/_chips-theme.import.scss +0 -14
- package/legacy-chips/_chips-theme.scss +0 -133
- package/legacy-chips/index.d.ts +0 -705
- package/legacy-chips/testing/index.d.ts +0 -316
- package/legacy-core/_core-theme.scss +0 -65
- package/legacy-core/_core.import.scss +0 -5
- package/legacy-core/_core.scss +0 -18
- package/legacy-core/color/_all-color.import.scss +0 -4
- package/legacy-core/color/_all-color.scss +0 -28
- package/legacy-core/density/private/_all-density.import.scss +0 -3
- package/legacy-core/density/private/_all-density.scss +0 -46
- package/legacy-core/density/private/_compatibility.import.scss +0 -4
- package/legacy-core/density/private/_compatibility.scss +0 -74
- package/legacy-core/index.d.ts +0 -218
- package/legacy-core/option/_optgroup-theme.import.scss +0 -27
- package/legacy-core/option/_optgroup-theme.scss +0 -52
- package/legacy-core/option/_option-legacy-index.scss +0 -5
- package/legacy-core/option/_option-theme.import.scss +0 -27
- package/legacy-core/option/_option-theme.scss +0 -86
- package/legacy-core/testing/index.d.ts +0 -80
- package/legacy-core/theming/_all-theme.import.scss +0 -3
- package/legacy-core/theming/_all-theme.scss +0 -89
- package/legacy-core/typography/_all-typography.import.scss +0 -4
- package/legacy-core/typography/_all-typography.scss +0 -105
- package/legacy-dialog/_dialog-legacy-index.scss +0 -2
- package/legacy-dialog/_dialog-theme.import.scss +0 -10
- package/legacy-dialog/_dialog-theme.scss +0 -53
- package/legacy-dialog/index.d.ts +0 -271
- package/legacy-dialog/testing/index.d.ts +0 -63
- package/legacy-form-field/_form-field-fill-theme.import.scss +0 -13
- package/legacy-form-field/_form-field-fill-theme.scss +0 -136
- package/legacy-form-field/_form-field-legacy-index.scss +0 -29
- package/legacy-form-field/_form-field-legacy-theme.import.scss +0 -14
- package/legacy-form-field/_form-field-legacy-theme.scss +0 -204
- package/legacy-form-field/_form-field-outline-theme.import.scss +0 -13
- package/legacy-form-field/_form-field-outline-theme.scss +0 -167
- package/legacy-form-field/_form-field-standard-theme.import.scss +0 -11
- package/legacy-form-field/_form-field-standard-theme.scss +0 -55
- package/legacy-form-field/_form-field-theme.import.scss +0 -29
- package/legacy-form-field/_form-field-theme.scss +0 -278
- package/legacy-form-field/index.d.ts +0 -370
- package/legacy-form-field/testing/index.d.ts +0 -76
- package/legacy-input/_input-legacy-index.scss +0 -2
- package/legacy-input/_input-theme.import.scss +0 -11
- package/legacy-input/_input-theme.scss +0 -115
- package/legacy-input/index.d.ts +0 -41
- package/legacy-input/testing/index.d.ts +0 -20
- package/legacy-list/_list-legacy-index.scss +0 -2
- package/legacy-list/_list-theme.import.scss +0 -10
- package/legacy-list/_list-theme.scss +0 -124
- package/legacy-list/index.d.ts +0 -396
- package/legacy-list/testing/index.d.ts +0 -419
- package/legacy-menu/_menu-legacy-index.scss +0 -2
- package/legacy-menu/_menu-theme.import.scss +0 -10
- package/legacy-menu/_menu-theme.scss +0 -84
- package/legacy-menu/index.d.ts +0 -127
- package/legacy-menu/testing/index.d.ts +0 -47
- package/legacy-paginator/_paginator-legacy-index.scss +0 -2
- package/legacy-paginator/_paginator-theme.import.scss +0 -11
- package/legacy-paginator/_paginator-theme.scss +0 -92
- package/legacy-paginator/_paginator-variables.import.scss +0 -1
- package/legacy-paginator/_paginator-variables.scss +0 -13
- package/legacy-paginator/index.d.ts +0 -87
- package/legacy-paginator/testing/index.d.ts +0 -36
- package/legacy-prebuilt-themes/legacy-deeppurple-amber.css +0 -1
- package/legacy-prebuilt-themes/legacy-indigo-pink.css +0 -1
- package/legacy-prebuilt-themes/legacy-pink-bluegrey.css +0 -1
- package/legacy-prebuilt-themes/legacy-purple-green.css +0 -1
- package/legacy-progress-bar/_progress-bar-legacy-index.scss +0 -2
- package/legacy-progress-bar/_progress-bar-theme.import.scss +0 -6
- package/legacy-progress-bar/_progress-bar-theme.scss +0 -93
- package/legacy-progress-bar/index.d.ts +0 -131
- package/legacy-progress-bar/testing/index.d.ts +0 -28
- package/legacy-progress-spinner/_progress-spinner-legacy-index.scss +0 -3
- package/legacy-progress-spinner/_progress-spinner-theme.import.scss +0 -7
- package/legacy-progress-spinner/_progress-spinner-theme.scss +0 -52
- package/legacy-progress-spinner/index.d.ts +0 -129
- package/legacy-progress-spinner/testing/index.d.ts +0 -29
- package/legacy-radio/_radio-legacy-index.scss +0 -2
- package/legacy-radio/_radio-theme.import.scss +0 -8
- package/legacy-radio/_radio-theme.scss +0 -104
- package/legacy-radio/index.d.ts +0 -75
- package/legacy-radio/testing/index.d.ts +0 -50
- package/legacy-select/_select-legacy-index.scss +0 -2
- package/legacy-select/_select-theme.import.scss +0 -11
- package/legacy-select/_select-theme.scss +0 -107
- package/legacy-select/index.d.ts +0 -230
- package/legacy-select/testing/index.d.ts +0 -38
- package/legacy-slide-toggle/_slide-toggle-legacy-index.scss +0 -3
- package/legacy-slide-toggle/_slide-toggle-theme.import.scss +0 -11
- package/legacy-slide-toggle/_slide-toggle-theme.scss +0 -111
- package/legacy-slide-toggle/index.d.ts +0 -113
- package/legacy-slide-toggle/testing/index.d.ts +0 -34
- package/legacy-slider/_slider-legacy-index.scss +0 -3
- package/legacy-slider/_slider-theme.import.scss +0 -8
- package/legacy-slider/_slider-theme.scss +0 -210
- package/legacy-slider/index.d.ts +0 -303
- package/legacy-slider/testing/index.d.ts +0 -68
- package/legacy-snack-bar/_snack-bar-legacy-index.scss +0 -2
- package/legacy-snack-bar/_snack-bar-theme.import.scss +0 -11
- package/legacy-snack-bar/_snack-bar-theme.scss +0 -72
- package/legacy-snack-bar/index.d.ts +0 -118
- package/legacy-snack-bar/testing/index.d.ts +0 -28
- package/legacy-table/_table-legacy-index.scss +0 -3
- package/legacy-table/_table-theme.import.scss +0 -8
- package/legacy-table/_table-theme.scss +0 -78
- package/legacy-table/index.d.ts +0 -298
- package/legacy-table/testing/index.d.ts +0 -149
- package/legacy-tabs/_tabs-common.import.scss +0 -11
- package/legacy-tabs/_tabs-common.scss +0 -173
- package/legacy-tabs/_tabs-legacy-index.scss +0 -6
- package/legacy-tabs/_tabs-theme.import.scss +0 -9
- package/legacy-tabs/_tabs-theme.scss +0 -188
- package/legacy-tabs/index.d.ts +0 -338
- package/legacy-tabs/testing/index.d.ts +0 -195
- package/legacy-tooltip/_tooltip-legacy-index.scss +0 -3
- package/legacy-tooltip/_tooltip-theme.import.scss +0 -9
- package/legacy-tooltip/_tooltip-theme.scss +0 -67
- package/legacy-tooltip/index.d.ts +0 -117
- package/legacy-tooltip/testing/index.d.ts +0 -30
- package/list/_list-theme.import.scss +0 -1
- package/menu/_menu-theme.import.scss +0 -2
- package/paginator/_paginator-theme.import.scss +0 -6
- package/paginator/_paginator-variables.import.scss +0 -1
- package/paginator/_paginator-variables.scss +0 -15
- package/progress-bar/_progress-bar-theme.import.scss +0 -3
- package/progress-spinner/_progress-spinner-theme.import.scss +0 -3
- package/radio/_radio-theme.import.scss +0 -4
- package/select/_select-theme.import.scss +0 -7
- package/sidenav/_sidenav-legacy-index.scss +0 -2
- package/sidenav/_sidenav-theme.import.scss +0 -8
- package/slide-toggle/_slide-toggle-theme.import.scss +0 -7
- package/slider/_slider-theme.import.scss +0 -2
- package/snack-bar/_snack-bar-theme.import.scss +0 -5
- package/sort/_sort-legacy-index.scss +0 -2
- package/sort/_sort-theme.import.scss +0 -5
- package/stepper/_stepper-legacy-index.scss +0 -7
- package/stepper/_stepper-theme.import.scss +0 -16
- package/stepper/_stepper-variables.import.scss +0 -6
- package/table/_table-flex-styles.import.scss +0 -1
- package/table/_table-theme.import.scss +0 -8
- package/tabs/_tabs-common.import.scss +0 -11
- package/tabs/_tabs-theme.import.scss +0 -5
- package/toolbar/_toolbar-legacy-index.scss +0 -4
- package/toolbar/_toolbar-theme.import.scss +0 -14
- package/toolbar/_toolbar-variables.import.scss +0 -1
- package/tooltip/_tooltip-theme.import.scss +0 -2
- package/tree/_tree-legacy-index.scss +0 -2
- package/tree/_tree-theme.import.scss +0 -9
- package/tree/_tree-variables.import.scss +0 -1
|
@@ -7,7 +7,23 @@
|
|
|
7
7
|
*/
|
|
8
8
|
import { coerceBooleanProperty } from '@angular/cdk/coercion';
|
|
9
9
|
import { ComponentHarness, HarnessPredicate, } from '@angular/cdk/testing';
|
|
10
|
-
|
|
10
|
+
/** Harness for interacting with an MDC-based mat-radio-group in tests. */
|
|
11
|
+
export class MatRadioGroupHarness extends ComponentHarness {
|
|
12
|
+
constructor() {
|
|
13
|
+
super(...arguments);
|
|
14
|
+
this._buttonClass = MatRadioButtonHarness;
|
|
15
|
+
}
|
|
16
|
+
/** The selector for the host element of a `MatRadioGroup` instance. */
|
|
17
|
+
static { this.hostSelector = '.mat-mdc-radio-group'; }
|
|
18
|
+
/**
|
|
19
|
+
* Gets a `HarnessPredicate` that can be used to search for a radio group with specific
|
|
20
|
+
* attributes.
|
|
21
|
+
* @param options Options for filtering which radio group instances are considered a match.
|
|
22
|
+
* @return a `HarnessPredicate` configured with the given options.
|
|
23
|
+
*/
|
|
24
|
+
static with(options = {}) {
|
|
25
|
+
return new HarnessPredicate(this, options).addOption('name', options.name, MatRadioGroupHarness._checkRadioGroupName);
|
|
26
|
+
}
|
|
11
27
|
/** Gets the name of the radio-group. */
|
|
12
28
|
async getName() {
|
|
13
29
|
const hostName = await this._getGroupNameFromHost();
|
|
@@ -125,28 +141,27 @@ export class _MatRadioGroupHarnessBase extends ComponentHarness {
|
|
|
125
141
|
return true;
|
|
126
142
|
}
|
|
127
143
|
}
|
|
128
|
-
/** Harness for interacting with an MDC-based mat-radio-
|
|
129
|
-
export class
|
|
144
|
+
/** Harness for interacting with an MDC-based mat-radio-button in tests. */
|
|
145
|
+
export class MatRadioButtonHarness extends ComponentHarness {
|
|
130
146
|
constructor() {
|
|
131
147
|
super(...arguments);
|
|
132
|
-
this.
|
|
148
|
+
this._textLabel = this.locatorFor('label');
|
|
149
|
+
this._clickLabel = this._textLabel;
|
|
150
|
+
this._input = this.locatorFor('input');
|
|
133
151
|
}
|
|
134
|
-
/** The selector for the host element of a `
|
|
135
|
-
static { this.hostSelector = '.mat-mdc-radio-
|
|
152
|
+
/** The selector for the host element of a `MatRadioButton` instance. */
|
|
153
|
+
static { this.hostSelector = '.mat-mdc-radio-button'; }
|
|
136
154
|
/**
|
|
137
|
-
* Gets a `HarnessPredicate` that can be used to search for a radio
|
|
155
|
+
* Gets a `HarnessPredicate` that can be used to search for a radio button with specific
|
|
138
156
|
* attributes.
|
|
139
|
-
* @param options Options for filtering which radio
|
|
157
|
+
* @param options Options for filtering which radio button instances are considered a match.
|
|
140
158
|
* @return a `HarnessPredicate` configured with the given options.
|
|
141
159
|
*/
|
|
142
160
|
static with(options = {}) {
|
|
143
|
-
return new HarnessPredicate(this, options)
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
constructor() {
|
|
148
|
-
super(...arguments);
|
|
149
|
-
this._input = this.locatorFor('input');
|
|
161
|
+
return new HarnessPredicate(this, options)
|
|
162
|
+
.addOption('label', options.label, (harness, label) => HarnessPredicate.stringMatches(harness.getLabelText(), label))
|
|
163
|
+
.addOption('name', options.name, async (harness, name) => (await harness.getName()) === name)
|
|
164
|
+
.addOption('checked', options.checked, async (harness, checked) => (await harness.isChecked()) == checked);
|
|
150
165
|
}
|
|
151
166
|
/** Whether the radio-button is checked. */
|
|
152
167
|
async isChecked() {
|
|
@@ -206,26 +221,4 @@ export class _MatRadioButtonHarnessBase extends ComponentHarness {
|
|
|
206
221
|
}
|
|
207
222
|
}
|
|
208
223
|
}
|
|
209
|
-
/** Harness for interacting with an MDC-based mat-radio-button in tests. */
|
|
210
|
-
export class MatRadioButtonHarness extends _MatRadioButtonHarnessBase {
|
|
211
|
-
constructor() {
|
|
212
|
-
super(...arguments);
|
|
213
|
-
this._textLabel = this.locatorFor('label');
|
|
214
|
-
this._clickLabel = this._textLabel;
|
|
215
|
-
}
|
|
216
|
-
/** The selector for the host element of a `MatRadioButton` instance. */
|
|
217
|
-
static { this.hostSelector = '.mat-mdc-radio-button'; }
|
|
218
|
-
/**
|
|
219
|
-
* Gets a `HarnessPredicate` that can be used to search for a radio button with specific
|
|
220
|
-
* attributes.
|
|
221
|
-
* @param options Options for filtering which radio button instances are considered a match.
|
|
222
|
-
* @return a `HarnessPredicate` configured with the given options.
|
|
223
|
-
*/
|
|
224
|
-
static with(options = {}) {
|
|
225
|
-
return new HarnessPredicate(this, options)
|
|
226
|
-
.addOption('label', options.label, (harness, label) => HarnessPredicate.stringMatches(harness.getLabelText(), label))
|
|
227
|
-
.addOption('name', options.name, async (harness, name) => (await harness.getName()) === name)
|
|
228
|
-
.addOption('checked', options.checked, async (harness, checked) => (await harness.isChecked()) == checked);
|
|
229
|
-
}
|
|
230
|
-
}
|
|
231
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8taGFybmVzcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9tYXRlcmlhbC9yYWRpby90ZXN0aW5nL3JhZGlvLWhhcm5lc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HO0FBRUgsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFDNUQsT0FBTyxFQUdMLGdCQUFnQixFQUVoQixnQkFBZ0IsR0FFakIsTUFBTSxzQkFBc0IsQ0FBQztBQUc5QixNQUFNLE9BQWdCLHlCQVdwQixTQUFRLGdCQUFnQjtJQUd4Qix3Q0FBd0M7SUFDeEMsS0FBSyxDQUFDLE9BQU87UUFDWCxNQUFNLFFBQVEsR0FBRyxNQUFNLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1FBQ3BELCtFQUErRTtRQUMvRSwrRUFBK0U7UUFDL0Usa0VBQWtFO1FBQ2xFLElBQUksUUFBUSxLQUFLLElBQUksRUFBRTtZQUNyQixPQUFPLFFBQVEsQ0FBQztTQUNqQjtRQUNELDJFQUEyRTtRQUMzRSx5RUFBeUU7UUFDekUsNkJBQTZCO1FBQzdCLE1BQU0sVUFBVSxHQUFHLE1BQU0sSUFBSSxDQUFDLHlCQUF5QixFQUFFLENBQUM7UUFDMUQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUU7WUFDdEIsT0FBTyxJQUFJLENBQUM7U0FDYjtRQUNELElBQUksQ0FBQyxJQUFJLENBQUMsNEJBQTRCLENBQUMsVUFBVSxDQUFDLEVBQUU7WUFDbEQsTUFBTSxLQUFLLENBQUMsc0RBQXNELENBQUMsQ0FBQztTQUNyRTtRQUNELE9BQU8sVUFBVSxDQUFDLENBQUMsQ0FBRSxDQUFDO0lBQ3hCLENBQUM7SUFFRCxzQ0FBc0M7SUFDdEMsS0FBSyxDQUFDLEtBQUs7UUFDVCxPQUFPLENBQUMsTUFBTSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxXQUFXLENBQWdCLElBQUksQ0FBQyxDQUFDO0lB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QyxNQUFNLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQyxLQUFLLElBQUksQ0FBQzthQUM1RixTQUFTLENBQ1IsU0FBUyxFQUNULE9BQU8sQ0FBQyxPQUFPLEVBQ2YsS0FBSyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsRUFBRSxDQUFDLENBQUMsTUFBTSxPQUFPLENBQUMsU0FBUyxFQUFFLENBQUMsSUFBSSxPQUFPLENBQ25FLENBQUM7SUFDTixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbmltcG9ydCB7Y29lcmNlQm9vbGVhblByb3BlcnR5fSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xuaW1wb3J0IHtcbiAgQXN5bmNGYWN0b3J5Rm4sXG4gIEJhc2VIYXJuZXNzRmlsdGVycyxcbiAgQ29tcG9uZW50SGFybmVzcyxcbiAgQ29tcG9uZW50SGFybmVzc0NvbnN0cnVjdG9yLFxuICBIYXJuZXNzUHJlZGljYXRlLFxuICBUZXN0RWxlbWVudCxcbn0gZnJvbSAnQGFuZ3VsYXIvY2RrL3Rlc3RpbmcnO1xuaW1wb3J0IHtSYWRpb0J1dHRvbkhhcm5lc3NGaWx0ZXJzLCBSYWRpb0dyb3VwSGFybmVzc0ZpbHRlcnN9IGZyb20gJy4vcmFkaW8taGFybmVzcy1maWx0ZXJzJztcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIF9NYXRSYWRpb0dyb3VwSGFybmVzc0Jhc2U8XG4gIEJ1dHRvblR5cGUgZXh0ZW5kcyBDb21wb25lbnRIYXJuZXNzQ29uc3RydWN0b3I8QnV0dG9uPiAmIHtcbiAgICB3aXRoOiAob3B0aW9ucz86IEJ1dHRvbkZpbHRlcnMpID0+IEhhcm5lc3NQcmVkaWNhdGU8QnV0dG9uPjtcbiAgfSxcbiAgQnV0dG9uIGV4dGVuZHMgQ29tcG9uZW50SGFybmVzcyAmIHtcbiAgICBpc0NoZWNrZWQoKTogUHJvbWlzZTxib29sZWFuPjtcbiAgICBnZXRWYWx1ZSgpOiBQcm9taXNlPHN0cmluZyB8IG51bGw+O1xuICAgIGdldE5hbWUoKTogUHJvbWlzZTxzdHJpbmcgfCBudWxsPjtcbiAgICBjaGVjaygpOiBQcm9taXNlPHZvaWQ+O1xuICB9LFxuICBCdXR0b25GaWx0ZXJzIGV4dGVuZHMgQmFzZUhhcm5lc3NGaWx0ZXJzLFxuPiBleHRlbmRzIENvbXBvbmVudEhhcm5lc3Mge1xuICBwcm90ZWN0ZWQgYWJzdHJhY3QgX2J1dHRvbkNsYXNzOiBCdXR0b25UeXBlO1xuXG4gIC8qKiBHZXRzIHRoZSBuYW1lIG9mIHRoZSByYWRpby1ncm91cC4gKi9cbiAgYXN5bmMgZ2V0TmFtZSgpOiBQcm9taXNlPHN0cmluZyB8IG51bGw+IHtcbiAgICBjb25zdCBob3N0TmFtZSA9IGF3YWl0IHRoaXMuX2dldEdyb3VwTmFtZUZyb21Ib3N0KCk7XG4gICAgLy8gSXQncyBub3QgcG9zc2libGUgdG8gYWx3YXlzIGRldGVybWluZSB0aGUgXCJuYW1lXCIgb2YgYSByYWRpby1ncm91cCBieSByZWFkaW5nXG4gICAgLy8gdGhlIGF0dHJpYnV0ZS4gVGhpcyBpcyBiZWNhdXNlIHRoZSByYWRpby1ncm91cCBkb2VzIG5vdCBzZXQgdGhlIFwibmFtZVwiIGFzIGFuXG4gICAgLy8gZWxlbWVudCBhdHRyaWJ1dGUgaWYgdGhlIFwibmFtZVwiIHZhbHVlIGlzIHNldCB0aHJvdWdoIGEgYmluZGluZy5cbiAgICBpZiAoaG9zdE5hbWUgIT09IG51bGwpIHtcbiAgICAgIHJldHVybiBob3N0TmFtZTtcbiAgICB9XG4gICAgLy8gSW4gY2FzZSB3ZSBjb3VsZG4ndCBkZXRlcm1pbmUgdGhlIFwibmFtZVwiIG9mIGEgcmFkaW8tZ3JvdXAgYnkgcmVhZGluZyB0aGVcbiAgICAvLyBcIm5hbWVcIiBhdHRyaWJ1dGUsIHdlIHRyeSB0byBkZXRlcm1pbmUgdGhlIFwibmFtZVwiIG9mIHRoZSBncm91cCBieSBnb2luZ1xuICAgIC8vIHRocm91Z2ggYWxsIHJhZGlvIGJ1dHRvbnMuXG4gICAgY29uc3QgcmFkaW9OYW1lcyA9IGF3YWl0IHRoaXMuX2dldE5hbWVzRnJvbVJhZGlvQnV0dG9ucygpO1xuICAgIGlmICghcmFkaW9OYW1lcy5sZW5ndGgpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbiAgICBpZiAoIXRoaXMuX2NoZWNrUmFkaW9OYW1lc0luR3JvdXBFcXVhbChyYWRpb05hbWVzKSkge1xuICAgICAgdGhyb3cgRXJyb3IoJ1JhZGlvIGJ1dHRvbnMgaW4gcmFkaW8tZ3JvdXAgaGF2ZSBtaXNtYXRjaGluZyBuYW1lcy4nKTtcbiAgICB9XG4gICAgcmV0dXJuIHJhZGlvTmFtZXNbMF0hO1xuICB9XG5cbiAgLyoqIEdldHMgdGhlIGlkIG9mIHRoZSByYWRpby1ncm91cC4gKi9cbiAgYXN5bmMgZ2V0SWQoKTogUHJvbWlzZTxzdHJpbmcgfCBudWxsPiB7XG4gICAgcmV0dXJuIChhd2FpdCB0aGlzLmhvc3QoKSkuZ2V0UHJvcGVydHk8c3RyaW5nIHwgbnVsbD4oJ2lkJyk7XG4gIH1cblxuICAvKiogR2V0cyB0aGUgY2hlY2tlZCByYWRpby1idXR0b24gaW4gYSByYWRpby1ncm91cC4gKi9cbiAgYXN5bmMgZ2V0Q2hlY2tlZFJhZGlvQnV0dG9uKCk6IFByb21pc2U8QnV0dG9uIHwgbnVsbD4ge1xuICAgIGZvciAobGV0IHJhZGlvQnV0dG9uIG9mIGF3YWl0IHRoaXMuZ2V0UmFkaW9CdXR0b25zKCkpIHtcbiAgICAgIGlmIChhd2FpdCByYWRpb0J1dHRvbi5pc0NoZWNrZWQoKSkge1xuICAgICAgICByZXR1cm4gcmFkaW9CdXR0b247XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgLyoqIEdldHMgdGhlIGNoZWNrZWQgdmFsdWUgb2YgdGhlIHJhZGlvLWdyb3VwLiAqL1xuICBhc3luYyBnZXRDaGVja2VkVmFsdWUoKTogUHJvbWlzZTxzdHJpbmcgfCBudWxsPiB7XG4gICAgY29uc3QgY2hlY2tlZFJhZGlvID0gYXdhaXQgdGhpcy5nZXRDaGVja2VkUmFkaW9CdXR0b24oKTtcbiAgICBpZiAoIWNoZWNrZWRSYWRpbykge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuICAgIHJldHVybiBjaGVja2VkUmFkaW8uZ2V0VmFsdWUoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIGEgbGlzdCBvZiByYWRpbyBidXR0b25zIHdoaWNoIGFyZSBwYXJ0IG9mIHRoZSByYWRpby1ncm91cC5cbiAgICogQHBhcmFtIGZpbHRlciBPcHRpb25hbGx5IGZpbHRlcnMgd2hpY2ggcmFkaW8gYnV0dG9ucyBhcmUgaW5jbHVkZWQuXG4gICAqL1xuICBhc3luYyBnZXRSYWRpb0J1dHRvbnMoZmlsdGVyPzogQnV0dG9uRmlsdGVycyk6IFByb21pc2U8QnV0dG9uW10+IHtcbiAgICByZXR1cm4gdGhpcy5sb2NhdG9yRm9yQWxsKHRoaXMuX2J1dHRvbkNsYXNzLndpdGgoZmlsdGVyKSkoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVja3MgYSByYWRpbyBidXR0b24gaW4gdGhpcyBncm91cC5cbiAgICogQHBhcmFtIGZpbHRlciBBbiBvcHRpb25hbCBmaWx0ZXIgdG8gYXBwbHkgdG8gdGhlIGNoaWxkIHJhZGlvIGJ1dHRvbnMuIFRoZSBmaXJzdCB0YWIgbWF0Y2hpbmdcbiAgICogICAgIHRoZSBmaWx0ZXIgd2lsbCBiZSBzZWxlY3RlZC5cbiAgICovXG4gIGFzeW5jIGNoZWNrUmFkaW9CdXR0b24oZmlsdGVyPzogQnV0dG9uRmlsdGVycyk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IHJhZGlvQnV0dG9ucyA9IGF3YWl0IHRoaXMuZ2V0UmFkaW9CdXR0b25zKGZpbHRlcik7XG4gICAgaWYgKCFyYWRpb0J1dHRvbnMubGVuZ3RoKSB7XG4gICAgICB0aHJvdyBFcnJvcihgQ291bGQgbm90IGZpbmQgcmFkaW8gYnV0dG9uIG1hdGNoaW5nICR7SlNPTi5zdHJpbmdpZnkoZmlsdGVyKX1gKTtcbiAgICB9XG4gICAgcmV0dXJuIHJhZGlvQnV0dG9uc1swXS5jaGVjaygpO1xuICB9XG5cbiAgLyoqIEdldHMgdGhlIG5hbWUgYXR0cmlidXRlIG9mIHRoZSBob3N0IGVsZW1lbnQuICovXG4gIHByaXZhdGUgYXN5bmMgX2dldEdyb3VwTmFtZUZyb21Ib3N0KCkge1xuICAgIHJldHVybiAoYXdhaXQgdGhpcy5ob3N0KCkpLmdldEF0dHJpYnV0ZSgnbmFtZScpO1xuICB9XG5cbiAgLyoqIEdldHMgYSBsaXN0IG9mIHRoZSBuYW1lIGF0dHJpYnV0ZXMgb2YgYWxsIGNoaWxkIHJhZGlvIGJ1dHRvbnMuICovXG4gIHByaXZhdGUgYXN5bmMgX2dldE5hbWVzRnJvbVJhZGlvQnV0dG9ucygpOiBQcm9taXNlPHN0cmluZ1tdPiB7XG4gICAgY29uc3QgZ3JvdXBOYW1lczogc3RyaW5nW10gPSBbXTtcbiAgICBmb3IgKGxldCByYWRpbyBvZiBhd2FpdCB0aGlzLmdldFJhZGlvQnV0dG9ucygpKSB7XG4gICAgICBjb25zdCByYWRpb05hbWUgPSBhd2FpdCByYWRpby5nZXROYW1lKCk7XG4gICAgICBpZiAocmFkaW9OYW1lICE9PSBudWxsKSB7XG4gICAgICAgIGdyb3VwTmFtZXMucHVzaChyYWRpb05hbWUpO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gZ3JvdXBOYW1lcztcbiAgfVxuXG4gIC8qKiBDaGVja3MgaWYgdGhlIHNwZWNpZmllZCByYWRpbyBuYW1lcyBhcmUgYWxsIGVxdWFsLiAqL1xuICBwcml2YXRlIF9jaGVja1JhZGlvTmFtZXNJbkdyb3VwRXF1YWwocmFkaW9OYW1lczogc3RyaW5nW10pOiBib29sZWFuIHtcbiAgICBsZXQgZ3JvdXBOYW1lOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcbiAgICBmb3IgKGxldCByYWRpb05hbWUgb2YgcmFkaW9OYW1lcykge1xuICAgICAgaWYgKGdyb3VwTmFtZSA9PT0gbnVsbCkge1xuICAgICAgICBncm91cE5hbWUgPSByYWRpb05hbWU7XG4gICAgICB9IGVsc2UgaWYgKGdyb3VwTmFtZSAhPT0gcmFkaW9OYW1lKSB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2tzIGlmIGEgcmFkaW8tZ3JvdXAgaGFybmVzcyBoYXMgdGhlIGdpdmVuIG5hbWUuIFRocm93cyBpZiBhIHJhZGlvLWdyb3VwIHdpdGhcbiAgICogbWF0Y2hpbmcgbmFtZSBjb3VsZCBiZSBmb3VuZCBidXQgaGFzIG1pc21hdGNoaW5nIHJhZGlvLWJ1dHRvbiBuYW1lcy5cbiAgICovXG4gIHByb3RlY3RlZCBzdGF0aWMgYXN5bmMgX2NoZWNrUmFkaW9Hcm91cE5hbWUoXG4gICAgaGFybmVzczogX01hdFJhZGlvR3JvdXBIYXJuZXNzQmFzZTxhbnksIGFueSwgYW55PixcbiAgICBuYW1lOiBzdHJpbmcsXG4gICkge1xuICAgIC8vIENoZWNrIGlmIHRoZXJlIGlzIGEgcmFkaW8tZ3JvdXAgd2hpY2ggaGFzIHRoZSBcIm5hbWVcIiBhdHRyaWJ1dGUgc2V0XG4gICAgLy8gdG8gdGhlIGV4cGVjdGVkIGdyb3VwIG5hbWUuIEl0J3Mgbm90IHBvc3NpYmxlIHRvIGFsd2F5cyBkZXRlcm1pbmVcbiAgICAvLyB0aGUgXCJuYW1lXCIgb2YgYSByYWRpby1ncm91cCBieSByZWFkaW5nIHRoZSBhdHRyaWJ1dGUuIFRoaXMgaXMgYmVjYXVzZVxuICAgIC8vIHRoZSByYWRpby1ncm91cCBkb2VzIG5vdCBzZXQgdGhlIFwibmFtZVwiIGFzIGFuIGVsZW1lbnQgYXR0cmlidXRlIGlmIHRoZVxuICAgIC8vIFwibmFtZVwiIHZhbHVlIGlzIHNldCB0aHJvdWdoIGEgYmluZGluZy5cbiAgICBpZiAoKGF3YWl0IGhhcm5lc3MuX2dldEdyb3VwTmFtZUZyb21Ib3N0KCkpID09PSBuYW1lKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gICAgLy8gQ2hlY2sgaWYgdGhlcmUgaXMgYSBncm91cCB3aXRoIHJhZGlvLWJ1dHRvbnMgdGhhdCBhbGwgaGF2ZSB0aGUgc2FtZVxuICAgIC8vIGV4cGVjdGVkIG5hbWUuIFRoaXMgaW1wbGllcyB0aGF0IHRoZSBncm91cCBoYXMgdGhlIGdpdmVuIG5hbWUuIEl0J3NcbiAgICAvLyBub3QgcG9zc2libGUgdG8gYWx3YXlzIGRldGVybWluZSB0aGUgbmFtZSBvZiBhIHJhZGlvLWdyb3VwIHRocm91Z2hcbiAgICAvLyB0aGUgYXR0cmlidXRlIGJlY2F1c2UgdGhlcmUgaXNcbiAgICBjb25zdCByYWRpb05hbWVzID0gYXdhaXQgaGFybmVzcy5fZ2V0TmFtZXNGcm9tUmFkaW9CdXR0b25zKCk7XG4gICAgaWYgKHJhZGlvTmFtZXMuaW5kZXhPZihuYW1lKSA9PT0gLTEpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgaWYgKCFoYXJuZXNzLl9jaGVja1JhZGlvTmFtZXNJbkdyb3VwRXF1YWwocmFkaW9OYW1lcykpIHtcbiAgICAgIHRocm93IEVycm9yKFxuICAgICAgICBgVGhlIGxvY2F0b3IgZm91bmQgYSByYWRpby1ncm91cCB3aXRoIG5hbWUgXCIke25hbWV9XCIsIGJ1dCBzb21lIGAgK1xuICAgICAgICAgIGByYWRpby1idXR0b24ncyB3aXRoaW4gdGhlIGdyb3VwIGhhdmUgbWlzbWF0Y2hpbmcgbmFtZXMsIHdoaWNoIGlzIGludmFsaWQuYCxcbiAgICAgICk7XG4gICAgfVxuICAgIHJldHVybiB0cnVlO1xuICB9XG59XG5cbi8qKiBIYXJuZXNzIGZvciBpbnRlcmFjdGluZyB3aXRoIGFuIE1EQy1iYXNlZCBtYXQtcmFkaW8tZ3JvdXAgaW4gdGVzdHMuICovXG5leHBvcnQgY2xhc3MgTWF0UmFkaW9Hcm91cEhhcm5lc3MgZXh0ZW5kcyBfTWF0UmFkaW9Hcm91cEhhcm5lc3NCYXNlPFxuICB0eXBlb2YgTWF0UmFkaW9CdXR0b25IYXJuZXNzLFxuICBNYXRSYWRpb0J1dHRvbkhhcm5lc3MsXG4gIFJhZGlvQnV0dG9uSGFybmVzc0ZpbHRlcnNcbj4ge1xuICAvKiogVGhlIHNlbGVjdG9yIGZvciB0aGUgaG9zdCBlbGVtZW50IG9mIGEgYE1hdFJhZGlvR3JvdXBgIGluc3RhbmNlLiAqL1xuICBzdGF0aWMgaG9zdFNlbGVjdG9yID0gJy5tYXQtbWRjLXJhZGlvLWdyb3VwJztcbiAgcHJvdGVjdGVkIF9idXR0b25DbGFzcyA9IE1hdFJhZGlvQnV0dG9uSGFybmVzcztcblxuICAvKipcbiAgICogR2V0cyBhIGBIYXJuZXNzUHJlZGljYXRlYCB0aGF0IGNhbiBiZSB1c2VkIHRvIHNlYXJjaCBmb3IgYSByYWRpbyBncm91cCB3aXRoIHNwZWNpZmljXG4gICAqIGF0dHJpYnV0ZXMuXG4gICAqIEBwYXJhbSBvcHRpb25zIE9wdGlvbnMgZm9yIGZpbHRlcmluZyB3aGljaCByYWRpbyBncm91cCBpbnN0YW5jZXMgYXJlIGNvbnNpZGVyZWQgYSBtYXRjaC5cbiAgICogQHJldHVybiBhIGBIYXJuZXNzUHJlZGljYXRlYCBjb25maWd1cmVkIHdpdGggdGhlIGdpdmVuIG9wdGlvbnMuXG4gICAqL1xuICBzdGF0aWMgd2l0aDxUIGV4dGVuZHMgTWF0UmFkaW9Hcm91cEhhcm5lc3M+KFxuICAgIHRoaXM6IENvbXBvbmVudEhhcm5lc3NDb25zdHJ1Y3RvcjxUPixcbiAgICBvcHRpb25zOiBSYWRpb0dyb3VwSGFybmVzc0ZpbHRlcnMgPSB7fSxcbiAgKTogSGFybmVzc1ByZWRpY2F0ZTxUPiB7XG4gICAgcmV0dXJuIG5ldyBIYXJuZXNzUHJlZGljYXRlKHRoaXMsIG9wdGlvbnMpLmFkZE9wdGlvbihcbiAgICAgICduYW1lJyxcbiAgICAgIG9wdGlvbnMubmFtZSxcbiAgICAgIE1hdFJhZGlvR3JvdXBIYXJuZXNzLl9jaGVja1JhZGlvR3JvdXBOYW1lLFxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIF9NYXRSYWRpb0J1dHRvbkhhcm5lc3NCYXNlIGV4dGVuZHMgQ29tcG9uZW50SGFybmVzcyB7XG4gIHByb3RlY3RlZCBhYnN0cmFjdCBfdGV4dExhYmVsOiBBc3luY0ZhY3RvcnlGbjxUZXN0RWxlbWVudD47XG4gIHByb3RlY3RlZCBhYnN0cmFjdCBfY2xpY2tMYWJlbDogQXN5bmNGYWN0b3J5Rm48VGVzdEVsZW1lbnQ+O1xuICBwcml2YXRlIF9pbnB1dCA9IHRoaXMubG9jYXRvckZvcignaW5wdXQnKTtcblxuICAvKiogV2hldGhlciB0aGUgcmFkaW8tYnV0dG9uIGlzIGNoZWNrZWQuICovXG4gIGFzeW5jIGlzQ2hlY2tlZCgpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICBjb25zdCBjaGVja2VkID0gKGF3YWl0IHRoaXMuX2lucHV0KCkpLmdldFByb3BlcnR5PGJvb2xlYW4+KCdjaGVja2VkJyk7XG4gICAgcmV0dXJuIGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eShhd2FpdCBjaGVja2VkKTtcbiAgfVxuXG4gIC8qKiBXaGV0aGVyIHRoZSByYWRpby1idXR0b24gaXMgZGlzYWJsZWQuICovXG4gIGFzeW5jIGlzRGlzYWJsZWQoKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgY29uc3QgZGlzYWJsZWQgPSAoYXdhaXQgdGhpcy5faW5wdXQoKSkuZ2V0QXR0cmlidXRlKCdkaXNhYmxlZCcpO1xuICAgIHJldHVybiBjb2VyY2VCb29sZWFuUHJvcGVydHkoYXdhaXQgZGlzYWJsZWQpO1xuICB9XG5cbiAgLyoqIFdoZXRoZXIgdGhlIHJhZGlvLWJ1dHRvbiBpcyByZXF1aXJlZC4gKi9cbiAgYXN5bmMgaXNSZXF1aXJlZCgpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICBjb25zdCByZXF1aXJlZCA9IChhd2FpdCB0aGlzLl9pbnB1dCgpKS5nZXRBdHRyaWJ1dGUoJ3JlcXVpcmVkJyk7XG4gICAgcmV0dXJuIGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eShhd2FpdCByZXF1aXJlZCk7XG4gIH1cblxuICAvKiogR2V0cyB0aGUgcmFkaW8tYnV0dG9uJ3MgbmFtZS4gKi9cbiAgYXN5bmMgZ2V0TmFtZSgpOiBQcm9taXNlPHN0cmluZyB8IG51bGw+IHtcbiAgICByZXR1cm4gKGF3YWl0IHRoaXMuX2lucHV0KCkpLmdldEF0dHJpYnV0ZSgnbmFtZScpO1xuICB9XG5cbiAgLyoqIEdldHMgdGhlIHJhZGlvLWJ1dHRvbidzIGlkLiAqL1xuICBhc3luYyBnZXRJZCgpOiBQcm9taXNlPHN0cmluZyB8IG51bGw+IHtcbiAgICByZXR1cm4gKGF3YWl0IHRoaXMuaG9zdCgpKS5nZXRQcm9wZXJ0eTxzdHJpbmc+KCdpZCcpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIHZhbHVlIG9mIHRoZSByYWRpby1idXR0b24uIFRoZSByYWRpby1idXR0b24gdmFsdWUgd2lsbCBiZSBjb252ZXJ0ZWQgdG8gYSBzdHJpbmcuXG4gICAqXG4gICAqIE5vdGU6IFRoaXMgbWVhbnMgdGhhdCBmb3IgcmFkaW8tYnV0dG9uJ3Mgd2l0aCBhbiBvYmplY3QgYXMgYSB2YWx1ZSBgW29iamVjdCBPYmplY3RdYCBpc1xuICAgKiBpbnRlbnRpb25hbGx5IHJldHVybmVkLlxuICAgKi9cbiAgYXN5bmMgZ2V0VmFsdWUoKTogUHJvbWlzZTxzdHJpbmcgfCBudWxsPiB7XG4gICAgcmV0dXJuIChhd2FpdCB0aGlzLl9pbnB1dCgpKS5nZXRQcm9wZXJ0eSgndmFsdWUnKTtcbiAgfVxuXG4gIC8qKiBHZXRzIHRoZSByYWRpby1idXR0b24ncyBsYWJlbCB0ZXh0LiAqL1xuICBhc3luYyBnZXRMYWJlbFRleHQoKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gKGF3YWl0IHRoaXMuX3RleHRMYWJlbCgpKS50ZXh0KCk7XG4gIH1cblxuICAvKiogRm9jdXNlcyB0aGUgcmFkaW8tYnV0dG9uLiAqL1xuICBhc3luYyBmb2N1cygpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICByZXR1cm4gKGF3YWl0IHRoaXMuX2lucHV0KCkpLmZvY3VzKCk7XG4gIH1cblxuICAvKiogQmx1cnMgdGhlIHJhZGlvLWJ1dHRvbi4gKi9cbiAgYXN5bmMgYmx1cigpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICByZXR1cm4gKGF3YWl0IHRoaXMuX2lucHV0KCkpLmJsdXIoKTtcbiAgfVxuXG4gIC8qKiBXaGV0aGVyIHRoZSByYWRpby1idXR0b24gaXMgZm9jdXNlZC4gKi9cbiAgYXN5bmMgaXNGb2N1c2VkKCk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIHJldHVybiAoYXdhaXQgdGhpcy5faW5wdXQoKSkuaXNGb2N1c2VkKCk7XG4gIH1cblxuICAvKipcbiAgICogUHV0cyB0aGUgcmFkaW8tYnV0dG9uIGluIGEgY2hlY2tlZCBzdGF0ZSBieSBjbGlja2luZyBpdCBpZiBpdCBpcyBjdXJyZW50bHkgdW5jaGVja2VkLFxuICAgKiBvciBkb2luZyBub3RoaW5nIGlmIGl0IGlzIGFscmVhZHkgY2hlY2tlZC5cbiAgICovXG4gIGFzeW5jIGNoZWNrKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGlmICghKGF3YWl0IHRoaXMuaXNDaGVja2VkKCkpKSB7XG4gICAgICByZXR1cm4gKGF3YWl0IHRoaXMuX2NsaWNrTGFiZWwoKSkuY2xpY2soKTtcbiAgICB9XG4gIH1cbn1cblxuLyoqIEhhcm5lc3MgZm9yIGludGVyYWN0aW5nIHdpdGggYW4gTURDLWJhc2VkIG1hdC1yYWRpby1idXR0b24gaW4gdGVzdHMuICovXG5leHBvcnQgY2xhc3MgTWF0UmFkaW9CdXR0b25IYXJuZXNzIGV4dGVuZHMgX01hdFJhZGlvQnV0dG9uSGFybmVzc0Jhc2Uge1xuICAvKiogVGhlIHNlbGVjdG9yIGZvciB0aGUgaG9zdCBlbGVtZW50IG9mIGEgYE1hdFJhZGlvQnV0dG9uYCBpbnN0YW5jZS4gKi9cbiAgc3RhdGljIGhvc3RTZWxlY3RvciA9ICcubWF0LW1kYy1yYWRpby1idXR0b24nO1xuXG4gIC8qKlxuICAgKiBHZXRzIGEgYEhhcm5lc3NQcmVkaWNhdGVgIHRoYXQgY2FuIGJlIHVzZWQgdG8gc2VhcmNoIGZvciBhIHJhZGlvIGJ1dHRvbiB3aXRoIHNwZWNpZmljXG4gICAqIGF0dHJpYnV0ZXMuXG4gICAqIEBwYXJhbSBvcHRpb25zIE9wdGlvbnMgZm9yIGZpbHRlcmluZyB3aGljaCByYWRpbyBidXR0b24gaW5zdGFuY2VzIGFyZSBjb25zaWRlcmVkIGEgbWF0Y2guXG4gICAqIEByZXR1cm4gYSBgSGFybmVzc1ByZWRpY2F0ZWAgY29uZmlndXJlZCB3aXRoIHRoZSBnaXZlbiBvcHRpb25zLlxuICAgKi9cbiAgc3RhdGljIHdpdGg8VCBleHRlbmRzIE1hdFJhZGlvQnV0dG9uSGFybmVzcz4oXG4gICAgdGhpczogQ29tcG9uZW50SGFybmVzc0NvbnN0cnVjdG9yPFQ+LFxuICAgIG9wdGlvbnM6IFJhZGlvQnV0dG9uSGFybmVzc0ZpbHRlcnMgPSB7fSxcbiAgKTogSGFybmVzc1ByZWRpY2F0ZTxUPiB7XG4gICAgcmV0dXJuIG5ldyBIYXJuZXNzUHJlZGljYXRlKHRoaXMsIG9wdGlvbnMpXG4gICAgICAuYWRkT3B0aW9uKCdsYWJlbCcsIG9wdGlvbnMubGFiZWwsIChoYXJuZXNzLCBsYWJlbCkgPT5cbiAgICAgICAgSGFybmVzc1ByZWRpY2F0ZS5zdHJpbmdNYXRjaGVzKGhhcm5lc3MuZ2V0TGFiZWxUZXh0KCksIGxhYmVsKSxcbiAgICAgIClcbiAgICAgIC5hZGRPcHRpb24oJ25hbWUnLCBvcHRpb25zLm5hbWUsIGFzeW5jIChoYXJuZXNzLCBuYW1lKSA9PiAoYXdhaXQgaGFybmVzcy5nZXROYW1lKCkpID09PSBuYW1lKVxuICAgICAgLmFkZE9wdGlvbihcbiAgICAgICAgJ2NoZWNrZWQnLFxuICAgICAgICBvcHRpb25zLmNoZWNrZWQsXG4gICAgICAgIGFzeW5jIChoYXJuZXNzLCBjaGVja2VkKSA9PiAoYXdhaXQgaGFybmVzcy5pc0NoZWNrZWQoKSkgPT0gY2hlY2tlZCxcbiAgICAgICk7XG4gIH1cblxuICBwcm90ZWN0ZWQgX3RleHRMYWJlbCA9IHRoaXMubG9jYXRvckZvcignbGFiZWwnKTtcbiAgcHJvdGVjdGVkIF9jbGlja0xhYmVsID0gdGhpcy5fdGV4dExhYmVsO1xufVxuIl19
|
|
224
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8taGFybmVzcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9tYXRlcmlhbC9yYWRpby90ZXN0aW5nL3JhZGlvLWhhcm5lc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HO0FBRUgsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFDNUQsT0FBTyxFQUNMLGdCQUFnQixFQUVoQixnQkFBZ0IsR0FDakIsTUFBTSxzQkFBc0IsQ0FBQztBQUc5QiwwRUFBMEU7QUFDMUUsTUFBTSxPQUFPLG9CQUFxQixTQUFRLGdCQUFnQjtJQUExRDs7UUFJVSxpQkFBWSxHQUFHLHFCQUFxQixDQUFDO0lBaUovQyxDQUFDO0lBcEpDLHVFQUF1RTthQUNoRSxpQkFBWSxHQUFHLHNCQUFzQixBQUF6QixDQUEwQjtJQUk3Qzs7Ozs7T0FLRztJQUNILE1BQU0sQ0FBQyxJQUFJLENBRVQsVUFBb0MsRUFBRTtRQUV0QyxPQUFPLElBQUksZ0JBQWdCLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDLFNBQVMsQ0FDbEQsTUFBTSxFQUNOLE9BQU8sQ0FBQyxJQUFJLEVBQ1osb0JBQW9CLENBQUMsb0JBQW9CLENBQzFDLENBQUM7SUFDSixDQUFDO0lBRUQsd0NBQXdDO0lBQ3hDLEtBQUssQ0FBQyxPQUFPO1FBQ1gsTUFBTSxRQUFRLEdBQUcsTUFBTSxJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQztRQUNwRCwrRUFBK0U7UUFDL0UsK0VBQStFO1FBQy9FLGtFQUFrRTtRQUNsRSxJQUFJLFFBQVEsS0FBSyxJQUFJLEVBQUU7WUFDckIsT0FBTyxRQUFRLENBQUM7U0FDakI7UUFDRCwyRUFBMkU7UUFDM0UseUVBQXlFO1FBQ3pFLDZCQUE2QjtRQUM3QixNQUFNLFVBQVUsR0FBRyxNQUFNLElBQUksQ0FBQyx5QkFBeUIsRUFBRSxDQUFDO1FBQzFELElBQUksQ0FBQyxVQUFVLENB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QVMsRUFBRSxDQUFDLEVBQUU7WUFDN0IsT0FBTyxDQUFDLE1BQU0sSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUM7U0FDM0M7SUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbmltcG9ydCB7Y29lcmNlQm9vbGVhblByb3BlcnR5fSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xuaW1wb3J0IHtcbiAgQ29tcG9uZW50SGFybmVzcyxcbiAgQ29tcG9uZW50SGFybmVzc0NvbnN0cnVjdG9yLFxuICBIYXJuZXNzUHJlZGljYXRlLFxufSBmcm9tICdAYW5ndWxhci9jZGsvdGVzdGluZyc7XG5pbXBvcnQge1JhZGlvQnV0dG9uSGFybmVzc0ZpbHRlcnMsIFJhZGlvR3JvdXBIYXJuZXNzRmlsdGVyc30gZnJvbSAnLi9yYWRpby1oYXJuZXNzLWZpbHRlcnMnO1xuXG4vKiogSGFybmVzcyBmb3IgaW50ZXJhY3Rpbmcgd2l0aCBhbiBNREMtYmFzZWQgbWF0LXJhZGlvLWdyb3VwIGluIHRlc3RzLiAqL1xuZXhwb3J0IGNsYXNzIE1hdFJhZGlvR3JvdXBIYXJuZXNzIGV4dGVuZHMgQ29tcG9uZW50SGFybmVzcyB7XG4gIC8qKiBUaGUgc2VsZWN0b3IgZm9yIHRoZSBob3N0IGVsZW1lbnQgb2YgYSBgTWF0UmFkaW9Hcm91cGAgaW5zdGFuY2UuICovXG4gIHN0YXRpYyBob3N0U2VsZWN0b3IgPSAnLm1hdC1tZGMtcmFkaW8tZ3JvdXAnO1xuXG4gIHByaXZhdGUgX2J1dHRvbkNsYXNzID0gTWF0UmFkaW9CdXR0b25IYXJuZXNzO1xuXG4gIC8qKlxuICAgKiBHZXRzIGEgYEhhcm5lc3NQcmVkaWNhdGVgIHRoYXQgY2FuIGJlIHVzZWQgdG8gc2VhcmNoIGZvciBhIHJhZGlvIGdyb3VwIHdpdGggc3BlY2lmaWNcbiAgICogYXR0cmlidXRlcy5cbiAgICogQHBhcmFtIG9wdGlvbnMgT3B0aW9ucyBmb3IgZmlsdGVyaW5nIHdoaWNoIHJhZGlvIGdyb3VwIGluc3RhbmNlcyBhcmUgY29uc2lkZXJlZCBhIG1hdGNoLlxuICAgKiBAcmV0dXJuIGEgYEhhcm5lc3NQcmVkaWNhdGVgIGNvbmZpZ3VyZWQgd2l0aCB0aGUgZ2l2ZW4gb3B0aW9ucy5cbiAgICovXG4gIHN0YXRpYyB3aXRoPFQgZXh0ZW5kcyBNYXRSYWRpb0dyb3VwSGFybmVzcz4oXG4gICAgdGhpczogQ29tcG9uZW50SGFybmVzc0NvbnN0cnVjdG9yPFQ+LFxuICAgIG9wdGlvbnM6IFJhZGlvR3JvdXBIYXJuZXNzRmlsdGVycyA9IHt9LFxuICApOiBIYXJuZXNzUHJlZGljYXRlPFQ+IHtcbiAgICByZXR1cm4gbmV3IEhhcm5lc3NQcmVkaWNhdGUodGhpcywgb3B0aW9ucykuYWRkT3B0aW9uKFxuICAgICAgJ25hbWUnLFxuICAgICAgb3B0aW9ucy5uYW1lLFxuICAgICAgTWF0UmFkaW9Hcm91cEhhcm5lc3MuX2NoZWNrUmFkaW9Hcm91cE5hbWUsXG4gICAgKTtcbiAgfVxuXG4gIC8qKiBHZXRzIHRoZSBuYW1lIG9mIHRoZSByYWRpby1ncm91cC4gKi9cbiAgYXN5bmMgZ2V0TmFtZSgpOiBQcm9taXNlPHN0cmluZyB8IG51bGw+IHtcbiAgICBjb25zdCBob3N0TmFtZSA9IGF3YWl0IHRoaXMuX2dldEdyb3VwTmFtZUZyb21Ib3N0KCk7XG4gICAgLy8gSXQncyBub3QgcG9zc2libGUgdG8gYWx3YXlzIGRldGVybWluZSB0aGUgXCJuYW1lXCIgb2YgYSByYWRpby1ncm91cCBieSByZWFkaW5nXG4gICAgLy8gdGhlIGF0dHJpYnV0ZS4gVGhpcyBpcyBiZWNhdXNlIHRoZSByYWRpby1ncm91cCBkb2VzIG5vdCBzZXQgdGhlIFwibmFtZVwiIGFzIGFuXG4gICAgLy8gZWxlbWVudCBhdHRyaWJ1dGUgaWYgdGhlIFwibmFtZVwiIHZhbHVlIGlzIHNldCB0aHJvdWdoIGEgYmluZGluZy5cbiAgICBpZiAoaG9zdE5hbWUgIT09IG51bGwpIHtcbiAgICAgIHJldHVybiBob3N0TmFtZTtcbiAgICB9XG4gICAgLy8gSW4gY2FzZSB3ZSBjb3VsZG4ndCBkZXRlcm1pbmUgdGhlIFwibmFtZVwiIG9mIGEgcmFkaW8tZ3JvdXAgYnkgcmVhZGluZyB0aGVcbiAgICAvLyBcIm5hbWVcIiBhdHRyaWJ1dGUsIHdlIHRyeSB0byBkZXRlcm1pbmUgdGhlIFwibmFtZVwiIG9mIHRoZSBncm91cCBieSBnb2luZ1xuICAgIC8vIHRocm91Z2ggYWxsIHJhZGlvIGJ1dHRvbnMuXG4gICAgY29uc3QgcmFkaW9OYW1lcyA9IGF3YWl0IHRoaXMuX2dldE5hbWVzRnJvbVJhZGlvQnV0dG9ucygpO1xuICAgIGlmICghcmFkaW9OYW1lcy5sZW5ndGgpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbiAgICBpZiAoIXRoaXMuX2NoZWNrUmFkaW9OYW1lc0luR3JvdXBFcXVhbChyYWRpb05hbWVzKSkge1xuICAgICAgdGhyb3cgRXJyb3IoJ1JhZGlvIGJ1dHRvbnMgaW4gcmFkaW8tZ3JvdXAgaGF2ZSBtaXNtYXRjaGluZyBuYW1lcy4nKTtcbiAgICB9XG4gICAgcmV0dXJuIHJhZGlvTmFtZXNbMF0hO1xuICB9XG5cbiAgLyoqIEdldHMgdGhlIGlkIG9mIHRoZSByYWRpby1ncm91cC4gKi9cbiAgYXN5bmMgZ2V0SWQoKTogUHJvbWlzZTxzdHJpbmcgfCBudWxsPiB7XG4gICAgcmV0dXJuIChhd2FpdCB0aGlzLmhvc3QoKSkuZ2V0UHJvcGVydHk8c3RyaW5nIHwgbnVsbD4oJ2lkJyk7XG4gIH1cblxuICAvKiogR2V0cyB0aGUgY2hlY2tlZCByYWRpby1idXR0b24gaW4gYSByYWRpby1ncm91cC4gKi9cbiAgYXN5bmMgZ2V0Q2hlY2tlZFJhZGlvQnV0dG9uKCk6IFByb21pc2U8TWF0UmFkaW9CdXR0b25IYXJuZXNzIHwgbnVsbD4ge1xuICAgIGZvciAobGV0IHJhZGlvQnV0dG9uIG9mIGF3YWl0IHRoaXMuZ2V0UmFkaW9CdXR0b25zKCkpIHtcbiAgICAgIGlmIChhd2FpdCByYWRpb0J1dHRvbi5pc0NoZWNrZWQoKSkge1xuICAgICAgICByZXR1cm4gcmFkaW9CdXR0b247XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgLyoqIEdldHMgdGhlIGNoZWNrZWQgdmFsdWUgb2YgdGhlIHJhZGlvLWdyb3VwLiAqL1xuICBhc3luYyBnZXRDaGVja2VkVmFsdWUoKTogUHJvbWlzZTxzdHJpbmcgfCBudWxsPiB7XG4gICAgY29uc3QgY2hlY2tlZFJhZGlvID0gYXdhaXQgdGhpcy5nZXRDaGVja2VkUmFkaW9CdXR0b24oKTtcbiAgICBpZiAoIWNoZWNrZWRSYWRpbykge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuICAgIHJldHVybiBjaGVja2VkUmFkaW8uZ2V0VmFsdWUoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIGEgbGlzdCBvZiByYWRpbyBidXR0b25zIHdoaWNoIGFyZSBwYXJ0IG9mIHRoZSByYWRpby1ncm91cC5cbiAgICogQHBhcmFtIGZpbHRlciBPcHRpb25hbGx5IGZpbHRlcnMgd2hpY2ggcmFkaW8gYnV0dG9ucyBhcmUgaW5jbHVkZWQuXG4gICAqL1xuICBhc3luYyBnZXRSYWRpb0J1dHRvbnMoZmlsdGVyPzogUmFkaW9CdXR0b25IYXJuZXNzRmlsdGVycyk6IFByb21pc2U8TWF0UmFkaW9CdXR0b25IYXJuZXNzW10+IHtcbiAgICByZXR1cm4gdGhpcy5sb2NhdG9yRm9yQWxsKHRoaXMuX2J1dHRvbkNsYXNzLndpdGgoZmlsdGVyKSkoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVja3MgYSByYWRpbyBidXR0b24gaW4gdGhpcyBncm91cC5cbiAgICogQHBhcmFtIGZpbHRlciBBbiBvcHRpb25hbCBmaWx0ZXIgdG8gYXBwbHkgdG8gdGhlIGNoaWxkIHJhZGlvIGJ1dHRvbnMuIFRoZSBmaXJzdCB0YWIgbWF0Y2hpbmdcbiAgICogICAgIHRoZSBmaWx0ZXIgd2lsbCBiZSBzZWxlY3RlZC5cbiAgICovXG4gIGFzeW5jIGNoZWNrUmFkaW9CdXR0b24oZmlsdGVyPzogUmFkaW9CdXR0b25IYXJuZXNzRmlsdGVycyk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IHJhZGlvQnV0dG9ucyA9IGF3YWl0IHRoaXMuZ2V0UmFkaW9CdXR0b25zKGZpbHRlcik7XG4gICAgaWYgKCFyYWRpb0J1dHRvbnMubGVuZ3RoKSB7XG4gICAgICB0aHJvdyBFcnJvcihgQ291bGQgbm90IGZpbmQgcmFkaW8gYnV0dG9uIG1hdGNoaW5nICR7SlNPTi5zdHJpbmdpZnkoZmlsdGVyKX1gKTtcbiAgICB9XG4gICAgcmV0dXJuIHJhZGlvQnV0dG9uc1swXS5jaGVjaygpO1xuICB9XG5cbiAgLyoqIEdldHMgdGhlIG5hbWUgYXR0cmlidXRlIG9mIHRoZSBob3N0IGVsZW1lbnQuICovXG4gIHByaXZhdGUgYXN5bmMgX2dldEdyb3VwTmFtZUZyb21Ib3N0KCkge1xuICAgIHJldHVybiAoYXdhaXQgdGhpcy5ob3N0KCkpLmdldEF0dHJpYnV0ZSgnbmFtZScpO1xuICB9XG5cbiAgLyoqIEdldHMgYSBsaXN0IG9mIHRoZSBuYW1lIGF0dHJpYnV0ZXMgb2YgYWxsIGNoaWxkIHJhZGlvIGJ1dHRvbnMuICovXG4gIHByaXZhdGUgYXN5bmMgX2dldE5hbWVzRnJvbVJhZGlvQnV0dG9ucygpOiBQcm9taXNlPHN0cmluZ1tdPiB7XG4gICAgY29uc3QgZ3JvdXBOYW1lczogc3RyaW5nW10gPSBbXTtcbiAgICBmb3IgKGxldCByYWRpbyBvZiBhd2FpdCB0aGlzLmdldFJhZGlvQnV0dG9ucygpKSB7XG4gICAgICBjb25zdCByYWRpb05hbWUgPSBhd2FpdCByYWRpby5nZXROYW1lKCk7XG4gICAgICBpZiAocmFkaW9OYW1lICE9PSBudWxsKSB7XG4gICAgICAgIGdyb3VwTmFtZXMucHVzaChyYWRpb05hbWUpO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gZ3JvdXBOYW1lcztcbiAgfVxuXG4gIC8qKiBDaGVja3MgaWYgdGhlIHNwZWNpZmllZCByYWRpbyBuYW1lcyBhcmUgYWxsIGVxdWFsLiAqL1xuICBwcml2YXRlIF9jaGVja1JhZGlvTmFtZXNJbkdyb3VwRXF1YWwocmFkaW9OYW1lczogc3RyaW5nW10pOiBib29sZWFuIHtcbiAgICBsZXQgZ3JvdXBOYW1lOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcbiAgICBmb3IgKGxldCByYWRpb05hbWUgb2YgcmFkaW9OYW1lcykge1xuICAgICAgaWYgKGdyb3VwTmFtZSA9PT0gbnVsbCkge1xuICAgICAgICBncm91cE5hbWUgPSByYWRpb05hbWU7XG4gICAgICB9IGVsc2UgaWYgKGdyb3VwTmFtZSAhPT0gcmFkaW9OYW1lKSB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2tzIGlmIGEgcmFkaW8tZ3JvdXAgaGFybmVzcyBoYXMgdGhlIGdpdmVuIG5hbWUuIFRocm93cyBpZiBhIHJhZGlvLWdyb3VwIHdpdGhcbiAgICogbWF0Y2hpbmcgbmFtZSBjb3VsZCBiZSBmb3VuZCBidXQgaGFzIG1pc21hdGNoaW5nIHJhZGlvLWJ1dHRvbiBuYW1lcy5cbiAgICovXG4gIHByb3RlY3RlZCBzdGF0aWMgYXN5bmMgX2NoZWNrUmFkaW9Hcm91cE5hbWUoaGFybmVzczogTWF0UmFkaW9Hcm91cEhhcm5lc3MsIG5hbWU6IHN0cmluZykge1xuICAgIC8vIENoZWNrIGlmIHRoZXJlIGlzIGEgcmFkaW8tZ3JvdXAgd2hpY2ggaGFzIHRoZSBcIm5hbWVcIiBhdHRyaWJ1dGUgc2V0XG4gICAgLy8gdG8gdGhlIGV4cGVjdGVkIGdyb3VwIG5hbWUuIEl0J3Mgbm90IHBvc3NpYmxlIHRvIGFsd2F5cyBkZXRlcm1pbmVcbiAgICAvLyB0aGUgXCJuYW1lXCIgb2YgYSByYWRpby1ncm91cCBieSByZWFkaW5nIHRoZSBhdHRyaWJ1dGUuIFRoaXMgaXMgYmVjYXVzZVxuICAgIC8vIHRoZSByYWRpby1ncm91cCBkb2VzIG5vdCBzZXQgdGhlIFwibmFtZVwiIGFzIGFuIGVsZW1lbnQgYXR0cmlidXRlIGlmIHRoZVxuICAgIC8vIFwibmFtZVwiIHZhbHVlIGlzIHNldCB0aHJvdWdoIGEgYmluZGluZy5cbiAgICBpZiAoKGF3YWl0IGhhcm5lc3MuX2dldEdyb3VwTmFtZUZyb21Ib3N0KCkpID09PSBuYW1lKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gICAgLy8gQ2hlY2sgaWYgdGhlcmUgaXMgYSBncm91cCB3aXRoIHJhZGlvLWJ1dHRvbnMgdGhhdCBhbGwgaGF2ZSB0aGUgc2FtZVxuICAgIC8vIGV4cGVjdGVkIG5hbWUuIFRoaXMgaW1wbGllcyB0aGF0IHRoZSBncm91cCBoYXMgdGhlIGdpdmVuIG5hbWUuIEl0J3NcbiAgICAvLyBub3QgcG9zc2libGUgdG8gYWx3YXlzIGRldGVybWluZSB0aGUgbmFtZSBvZiBhIHJhZGlvLWdyb3VwIHRocm91Z2hcbiAgICAvLyB0aGUgYXR0cmlidXRlIGJlY2F1c2UgdGhlcmUgaXNcbiAgICBjb25zdCByYWRpb05hbWVzID0gYXdhaXQgaGFybmVzcy5fZ2V0TmFtZXNGcm9tUmFkaW9CdXR0b25zKCk7XG4gICAgaWYgKHJhZGlvTmFtZXMuaW5kZXhPZihuYW1lKSA9PT0gLTEpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgaWYgKCFoYXJuZXNzLl9jaGVja1JhZGlvTmFtZXNJbkdyb3VwRXF1YWwocmFkaW9OYW1lcykpIHtcbiAgICAgIHRocm93IEVycm9yKFxuICAgICAgICBgVGhlIGxvY2F0b3IgZm91bmQgYSByYWRpby1ncm91cCB3aXRoIG5hbWUgXCIke25hbWV9XCIsIGJ1dCBzb21lIGAgK1xuICAgICAgICAgIGByYWRpby1idXR0b24ncyB3aXRoaW4gdGhlIGdyb3VwIGhhdmUgbWlzbWF0Y2hpbmcgbmFtZXMsIHdoaWNoIGlzIGludmFsaWQuYCxcbiAgICAgICk7XG4gICAgfVxuICAgIHJldHVybiB0cnVlO1xuICB9XG59XG5cbi8qKiBIYXJuZXNzIGZvciBpbnRlcmFjdGluZyB3aXRoIGFuIE1EQy1iYXNlZCBtYXQtcmFkaW8tYnV0dG9uIGluIHRlc3RzLiAqL1xuZXhwb3J0IGNsYXNzIE1hdFJhZGlvQnV0dG9uSGFybmVzcyBleHRlbmRzIENvbXBvbmVudEhhcm5lc3Mge1xuICAvKiogVGhlIHNlbGVjdG9yIGZvciB0aGUgaG9zdCBlbGVtZW50IG9mIGEgYE1hdFJhZGlvQnV0dG9uYCBpbnN0YW5jZS4gKi9cbiAgc3RhdGljIGhvc3RTZWxlY3RvciA9ICcubWF0LW1kYy1yYWRpby1idXR0b24nO1xuXG4gIC8qKlxuICAgKiBHZXRzIGEgYEhhcm5lc3NQcmVkaWNhdGVgIHRoYXQgY2FuIGJlIHVzZWQgdG8gc2VhcmNoIGZvciBhIHJhZGlvIGJ1dHRvbiB3aXRoIHNwZWNpZmljXG4gICAqIGF0dHJpYnV0ZXMuXG4gICAqIEBwYXJhbSBvcHRpb25zIE9wdGlvbnMgZm9yIGZpbHRlcmluZyB3aGljaCByYWRpbyBidXR0b24gaW5zdGFuY2VzIGFyZSBjb25zaWRlcmVkIGEgbWF0Y2guXG4gICAqIEByZXR1cm4gYSBgSGFybmVzc1ByZWRpY2F0ZWAgY29uZmlndXJlZCB3aXRoIHRoZSBnaXZlbiBvcHRpb25zLlxuICAgKi9cbiAgc3RhdGljIHdpdGg8VCBleHRlbmRzIE1hdFJhZGlvQnV0dG9uSGFybmVzcz4oXG4gICAgdGhpczogQ29tcG9uZW50SGFybmVzc0NvbnN0cnVjdG9yPFQ+LFxuICAgIG9wdGlvbnM6IFJhZGlvQnV0dG9uSGFybmVzc0ZpbHRlcnMgPSB7fSxcbiAgKTogSGFybmVzc1ByZWRpY2F0ZTxUPiB7XG4gICAgcmV0dXJuIG5ldyBIYXJuZXNzUHJlZGljYXRlKHRoaXMsIG9wdGlvbnMpXG4gICAgICAuYWRkT3B0aW9uKCdsYWJlbCcsIG9wdGlvbnMubGFiZWwsIChoYXJuZXNzLCBsYWJlbCkgPT5cbiAgICAgICAgSGFybmVzc1ByZWRpY2F0ZS5zdHJpbmdNYXRjaGVzKGhhcm5lc3MuZ2V0TGFiZWxUZXh0KCksIGxhYmVsKSxcbiAgICAgIClcbiAgICAgIC5hZGRPcHRpb24oJ25hbWUnLCBvcHRpb25zLm5hbWUsIGFzeW5jIChoYXJuZXNzLCBuYW1lKSA9PiAoYXdhaXQgaGFybmVzcy5nZXROYW1lKCkpID09PSBuYW1lKVxuICAgICAgLmFkZE9wdGlvbihcbiAgICAgICAgJ2NoZWNrZWQnLFxuICAgICAgICBvcHRpb25zLmNoZWNrZWQsXG4gICAgICAgIGFzeW5jIChoYXJuZXNzLCBjaGVja2VkKSA9PiAoYXdhaXQgaGFybmVzcy5pc0NoZWNrZWQoKSkgPT0gY2hlY2tlZCxcbiAgICAgICk7XG4gIH1cblxuICBwcm90ZWN0ZWQgX3RleHRMYWJlbCA9IHRoaXMubG9jYXRvckZvcignbGFiZWwnKTtcbiAgcHJvdGVjdGVkIF9jbGlja0xhYmVsID0gdGhpcy5fdGV4dExhYmVsO1xuICBwcml2YXRlIF9pbnB1dCA9IHRoaXMubG9jYXRvckZvcignaW5wdXQnKTtcblxuICAvKiogV2hldGhlciB0aGUgcmFkaW8tYnV0dG9uIGlzIGNoZWNrZWQuICovXG4gIGFzeW5jIGlzQ2hlY2tlZCgpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICBjb25zdCBjaGVja2VkID0gKGF3YWl0IHRoaXMuX2lucHV0KCkpLmdldFByb3BlcnR5PGJvb2xlYW4+KCdjaGVja2VkJyk7XG4gICAgcmV0dXJuIGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eShhd2FpdCBjaGVja2VkKTtcbiAgfVxuXG4gIC8qKiBXaGV0aGVyIHRoZSByYWRpby1idXR0b24gaXMgZGlzYWJsZWQuICovXG4gIGFzeW5jIGlzRGlzYWJsZWQoKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgY29uc3QgZGlzYWJsZWQgPSAoYXdhaXQgdGhpcy5faW5wdXQoKSkuZ2V0QXR0cmlidXRlKCdkaXNhYmxlZCcpO1xuICAgIHJldHVybiBjb2VyY2VCb29sZWFuUHJvcGVydHkoYXdhaXQgZGlzYWJsZWQpO1xuICB9XG5cbiAgLyoqIFdoZXRoZXIgdGhlIHJhZGlvLWJ1dHRvbiBpcyByZXF1aXJlZC4gKi9cbiAgYXN5bmMgaXNSZXF1aXJlZCgpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICBjb25zdCByZXF1aXJlZCA9IChhd2FpdCB0aGlzLl9pbnB1dCgpKS5nZXRBdHRyaWJ1dGUoJ3JlcXVpcmVkJyk7XG4gICAgcmV0dXJuIGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eShhd2FpdCByZXF1aXJlZCk7XG4gIH1cblxuICAvKiogR2V0cyB0aGUgcmFkaW8tYnV0dG9uJ3MgbmFtZS4gKi9cbiAgYXN5bmMgZ2V0TmFtZSgpOiBQcm9taXNlPHN0cmluZyB8IG51bGw+IHtcbiAgICByZXR1cm4gKGF3YWl0IHRoaXMuX2lucHV0KCkpLmdldEF0dHJpYnV0ZSgnbmFtZScpO1xuICB9XG5cbiAgLyoqIEdldHMgdGhlIHJhZGlvLWJ1dHRvbidzIGlkLiAqL1xuICBhc3luYyBnZXRJZCgpOiBQcm9taXNlPHN0cmluZyB8IG51bGw+IHtcbiAgICByZXR1cm4gKGF3YWl0IHRoaXMuaG9zdCgpKS5nZXRQcm9wZXJ0eTxzdHJpbmc+KCdpZCcpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIHZhbHVlIG9mIHRoZSByYWRpby1idXR0b24uIFRoZSByYWRpby1idXR0b24gdmFsdWUgd2lsbCBiZSBjb252ZXJ0ZWQgdG8gYSBzdHJpbmcuXG4gICAqXG4gICAqIE5vdGU6IFRoaXMgbWVhbnMgdGhhdCBmb3IgcmFkaW8tYnV0dG9uJ3Mgd2l0aCBhbiBvYmplY3QgYXMgYSB2YWx1ZSBgW29iamVjdCBPYmplY3RdYCBpc1xuICAgKiBpbnRlbnRpb25hbGx5IHJldHVybmVkLlxuICAgKi9cbiAgYXN5bmMgZ2V0VmFsdWUoKTogUHJvbWlzZTxzdHJpbmcgfCBudWxsPiB7XG4gICAgcmV0dXJuIChhd2FpdCB0aGlzLl9pbnB1dCgpKS5nZXRQcm9wZXJ0eSgndmFsdWUnKTtcbiAgfVxuXG4gIC8qKiBHZXRzIHRoZSByYWRpby1idXR0b24ncyBsYWJlbCB0ZXh0LiAqL1xuICBhc3luYyBnZXRMYWJlbFRleHQoKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gKGF3YWl0IHRoaXMuX3RleHRMYWJlbCgpKS50ZXh0KCk7XG4gIH1cblxuICAvKiogRm9jdXNlcyB0aGUgcmFkaW8tYnV0dG9uLiAqL1xuICBhc3luYyBmb2N1cygpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICByZXR1cm4gKGF3YWl0IHRoaXMuX2lucHV0KCkpLmZvY3VzKCk7XG4gIH1cblxuICAvKiogQmx1cnMgdGhlIHJhZGlvLWJ1dHRvbi4gKi9cbiAgYXN5bmMgYmx1cigpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICByZXR1cm4gKGF3YWl0IHRoaXMuX2lucHV0KCkpLmJsdXIoKTtcbiAgfVxuXG4gIC8qKiBXaGV0aGVyIHRoZSByYWRpby1idXR0b24gaXMgZm9jdXNlZC4gKi9cbiAgYXN5bmMgaXNGb2N1c2VkKCk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIHJldHVybiAoYXdhaXQgdGhpcy5faW5wdXQoKSkuaXNGb2N1c2VkKCk7XG4gIH1cblxuICAvKipcbiAgICogUHV0cyB0aGUgcmFkaW8tYnV0dG9uIGluIGEgY2hlY2tlZCBzdGF0ZSBieSBjbGlja2luZyBpdCBpZiBpdCBpcyBjdXJyZW50bHkgdW5jaGVja2VkLFxuICAgKiBvciBkb2luZyBub3RoaW5nIGlmIGl0IGlzIGFscmVhZHkgY2hlY2tlZC5cbiAgICovXG4gIGFzeW5jIGNoZWNrKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGlmICghKGF3YWl0IHRoaXMuaXNDaGVja2VkKCkpKSB7XG4gICAgICByZXR1cm4gKGF3YWl0IHRoaXMuX2NsaWNrTGFiZWwoKSkuY2xpY2soKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|