@fundamental-ngx/core 0.40.0-rc.12 → 0.40.0-rc.13
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/card/constants.d.ts +0 -1
- package/content-density/classes/content-density-observer.settings.d.ts +4 -0
- package/content-density/content-density.module.d.ts +3 -3
- package/content-density/content-density.types.d.ts +1 -1
- package/content-density/directives/content-density.directive.d.ts +1 -1
- package/content-density/helpers/get-changes-source.provider.d.ts +1 -0
- package/content-density/services/content-density-observer.service.d.ts +33 -43
- package/content-density/tokens/content-density-directive.d.ts +2 -2
- package/esm2020/action-bar/action-bar.component.mjs +2 -2
- package/esm2020/action-sheet/action-sheet-body/action-sheet-body.component.mjs +3 -4
- package/esm2020/action-sheet/action-sheet.component.mjs +2 -2
- package/esm2020/alert/alert.component.mjs +2 -2
- package/esm2020/avatar/avatar.component.mjs +2 -2
- package/esm2020/avatar-group/avatar-group.component.mjs +2 -2
- package/esm2020/bar/bar.component.mjs +3 -9
- package/esm2020/breadcrumb/breadcrumb.component.mjs +2 -2
- package/esm2020/busy-indicator/busy-indicator.component.mjs +2 -2
- package/esm2020/button/button.component.mjs +6 -14
- package/esm2020/calendar/calendar.component.mjs +6 -14
- package/esm2020/card/card.component.mjs +4 -16
- package/esm2020/card/constants.mjs +1 -2
- package/esm2020/carousel/carousel.component.mjs +2 -2
- package/esm2020/checkbox/checkbox/checkbox.component.mjs +8 -16
- package/esm2020/combobox/combobox.component.mjs +3 -3
- package/esm2020/content-density/classes/content-density-observer.settings.mjs +1 -1
- package/esm2020/content-density/content-density.module.mjs +4 -5
- package/esm2020/content-density/content-density.types.mjs +1 -1
- package/esm2020/content-density/directives/content-density.directive.mjs +4 -3
- package/esm2020/content-density/helpers/get-changes-source.provider.mjs +6 -2
- package/esm2020/content-density/services/content-density-observer.service.mjs +121 -97
- package/esm2020/content-density/tokens/content-density-directive.mjs +1 -1
- package/esm2020/content-density/variables/default-content-density-consumer-config.mjs +9 -3
- package/esm2020/dialog/dialog-close-button/dialog-close-button.component.mjs +3 -3
- package/esm2020/dialog/dialog.component.mjs +15 -4
- package/esm2020/dynamic-page/dynamic-page.component.mjs +2 -2
- package/esm2020/dynamic-side-content/dynamic-side-content.component.mjs +2 -2
- package/esm2020/facets/facet/facet.component.mjs +2 -2
- package/esm2020/feed-input/directives/feed-input-button.directive.mjs +3 -4
- package/esm2020/feed-input/feed-input.component.mjs +2 -2
- package/esm2020/feed-list-item/components/list/feed-list.component.mjs +2 -2
- package/esm2020/file-uploader/file-uploader.component.mjs +3 -4
- package/esm2020/fixed-card-layout/fixed-card-layout.component.mjs +2 -2
- package/esm2020/flexible-column-layout/flexible-column-layout.component.mjs +2 -2
- package/esm2020/form/fieldset/fieldset.component.mjs +2 -2
- package/esm2020/form/form-control/form-control.component.mjs +2 -2
- package/esm2020/form/form-control/input-form-control.directive.mjs +4 -16
- package/esm2020/form/form-control/textarea-form-control.directive.mjs +4 -16
- package/esm2020/form/form-group/form-group.component.mjs +2 -2
- package/esm2020/form/form-header/form-header.component.mjs +2 -2
- package/esm2020/form/form-item/form-item.component.mjs +2 -2
- package/esm2020/form/form-label/form-label.component.mjs +2 -2
- package/esm2020/form/form-message/form-message.component.mjs +2 -2
- package/esm2020/grid-list/components/grid-list/grid-list.component.mjs +2 -2
- package/esm2020/grid-list/components/grid-list-item/grid-list-item.component.mjs +3 -3
- package/esm2020/icon/icon.component.mjs +2 -2
- package/esm2020/illustrated-message/illustrated-message.component.mjs +2 -2
- package/esm2020/info-label/info-label.component.mjs +2 -2
- package/esm2020/input-group/input-group-directives.mjs +6 -22
- package/esm2020/input-group/input-group.component.mjs +17 -11
- package/esm2020/layout-grid/layout-grid.component.mjs +2 -2
- package/esm2020/layout-panel/layout-panel.component.mjs +2 -2
- package/esm2020/link/link.component.mjs +2 -2
- package/esm2020/list/list-navigation-item/list-navigation-item.component.mjs +2 -2
- package/esm2020/list/list.component.mjs +6 -10
- package/esm2020/menu/menu.component.mjs +3 -4
- package/esm2020/message-box/message-box.component.mjs +2 -2
- package/esm2020/message-page/message-page.component.mjs +2 -2
- package/esm2020/message-strip/message-strip.component.mjs +2 -2
- package/esm2020/message-toast/message-toast.component.mjs +2 -2
- package/esm2020/micro-process-flow/components/micro-process-flow/micro-process-flow.component.mjs +6 -10
- package/esm2020/multi-combobox/multi-combobox.component.mjs +3 -3
- package/esm2020/multi-input/multi-input.component.mjs +3 -3
- package/esm2020/nested-list/nested-list/nested-list.directive.mjs +4 -8
- package/esm2020/notification/notification/notification.component.mjs +2 -2
- package/esm2020/object-identifier/object-identifier.component.mjs +2 -2
- package/esm2020/object-marker/object-marker.component.mjs +2 -2
- package/esm2020/object-number/object-number.component.mjs +2 -2
- package/esm2020/object-status/object-status.component.mjs +2 -2
- package/esm2020/pagination/pagination.component.mjs +3 -3
- package/esm2020/panel/panel.component.mjs +3 -3
- package/esm2020/popover/popover-body/popover-body.component.mjs +3 -3
- package/esm2020/popover/popover.component.mjs +6 -3
- package/esm2020/product-switch/product-switch-body/product-switch-body.component.mjs +2 -2
- package/esm2020/progress-indicator/progress-indicator.component.mjs +2 -2
- package/esm2020/quick-view/quick-view/quick-view.component.mjs +2 -2
- package/esm2020/radio/radio-button/radio-button.component.mjs +3 -3
- package/esm2020/rating-indicator/components/rating-indicator.component.mjs +2 -2
- package/esm2020/resizable-card-layout/resizable-card-layout/resizable-card-item/resizable-card-item.component.mjs +2 -2
- package/esm2020/resizable-card-layout/resizable-card-layout/resizable-card-layout.component.mjs +2 -2
- package/esm2020/segmented-button/segmented-button.component.mjs +2 -2
- package/esm2020/select/select.component.mjs +9 -7
- package/esm2020/shellbar/shellbar.component.mjs +16 -3
- package/esm2020/side-navigation/side-navigation.component.mjs +2 -2
- package/esm2020/skeleton/components/skeleton.component.mjs +2 -2
- package/esm2020/slider/slider.component.mjs +3 -3
- package/esm2020/split-button/split-button.component.mjs +5 -11
- package/esm2020/splitter/splitter.component.mjs +2 -2
- package/esm2020/status-indicator/status-indicator.component.mjs +2 -2
- package/esm2020/step-input/step-input.component.mjs +3 -3
- package/esm2020/switch/switch.component.mjs +3 -3
- package/esm2020/table/table-wrapper.component.mjs +4 -6
- package/esm2020/table/table.component.mjs +3 -7
- package/esm2020/tabs/tab-list.component.mjs +3 -3
- package/esm2020/tabs/tab-nav/tab-nav.component.mjs +4 -4
- package/esm2020/text/text.component.mjs +2 -2
- package/esm2020/tile/tile.component.mjs +2 -2
- package/esm2020/time/time.component.mjs +3 -3
- package/esm2020/title/title.component.mjs +2 -2
- package/esm2020/token/token.component.mjs +3 -3
- package/esm2020/token/tokenizer.component.mjs +16 -8
- package/esm2020/toolbar/toolbar.component.mjs +2 -2
- package/esm2020/tree/tree.component.mjs +2 -2
- package/esm2020/upload-collection/upload-collection.component.mjs +2 -2
- package/esm2020/vertical-navigation/vertical-navigation-main-navigation.component.mjs +2 -2
- package/esm2020/vertical-navigation/vertical-navigation.component.mjs +2 -2
- package/esm2020/wizard/wizard.component.mjs +2 -2
- package/fesm2015/fundamental-ngx-core-action-bar.mjs +2 -2
- package/fesm2015/fundamental-ngx-core-action-sheet.mjs +4 -4
- package/fesm2015/fundamental-ngx-core-action-sheet.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-alert.mjs +2 -2
- package/fesm2015/fundamental-ngx-core-avatar-group.mjs +2 -2
- package/fesm2015/fundamental-ngx-core-avatar-group.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-avatar.mjs +2 -2
- package/fesm2015/fundamental-ngx-core-avatar.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-bar.mjs +2 -8
- package/fesm2015/fundamental-ngx-core-bar.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-breadcrumb.mjs +2 -2
- package/fesm2015/fundamental-ngx-core-busy-indicator.mjs +2 -2
- package/fesm2015/fundamental-ngx-core-button.mjs +5 -13
- package/fesm2015/fundamental-ngx-core-button.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-calendar.mjs +5 -13
- package/fesm2015/fundamental-ngx-core-calendar.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-card.mjs +3 -16
- package/fesm2015/fundamental-ngx-core-card.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-carousel.mjs +2 -2
- package/fesm2015/fundamental-ngx-core-checkbox.mjs +7 -15
- package/fesm2015/fundamental-ngx-core-checkbox.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-combobox.mjs +2 -2
- package/fesm2015/fundamental-ngx-core-combobox.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-content-density.mjs +140 -122
- package/fesm2015/fundamental-ngx-core-content-density.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-dialog.mjs +16 -5
- package/fesm2015/fundamental-ngx-core-dialog.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-dynamic-page.mjs +2 -2
- package/fesm2015/fundamental-ngx-core-dynamic-side-content.mjs +2 -2
- package/fesm2015/fundamental-ngx-core-facets.mjs +2 -2
- package/fesm2015/fundamental-ngx-core-feed-input.mjs +4 -5
- package/fesm2015/fundamental-ngx-core-feed-input.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-feed-list-item.mjs +2 -2
- package/fesm2015/fundamental-ngx-core-file-uploader.mjs +2 -3
- package/fesm2015/fundamental-ngx-core-file-uploader.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-fixed-card-layout.mjs +2 -2
- package/fesm2015/fundamental-ngx-core-flexible-column-layout.mjs +2 -2
- package/fesm2015/fundamental-ngx-core-flexible-column-layout.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-form.mjs +19 -43
- package/fesm2015/fundamental-ngx-core-form.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-grid-list.mjs +4 -4
- package/fesm2015/fundamental-ngx-core-grid-list.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-icon.mjs +2 -2
- package/fesm2015/fundamental-ngx-core-icon.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-illustrated-message.mjs +2 -2
- package/fesm2015/fundamental-ngx-core-illustrated-message.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-info-label.mjs +2 -2
- package/fesm2015/fundamental-ngx-core-input-group.mjs +19 -31
- package/fesm2015/fundamental-ngx-core-input-group.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-layout-grid.mjs +2 -2
- package/fesm2015/fundamental-ngx-core-layout-panel.mjs +2 -2
- package/fesm2015/fundamental-ngx-core-link.mjs +2 -2
- package/fesm2015/fundamental-ngx-core-list.mjs +7 -11
- package/fesm2015/fundamental-ngx-core-list.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-menu.mjs +2 -2
- package/fesm2015/fundamental-ngx-core-menu.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-message-box.mjs +2 -2
- package/fesm2015/fundamental-ngx-core-message-page.mjs +2 -2
- package/fesm2015/fundamental-ngx-core-message-strip.mjs +2 -2
- package/fesm2015/fundamental-ngx-core-message-toast.mjs +2 -2
- package/fesm2015/fundamental-ngx-core-micro-process-flow.mjs +5 -9
- package/fesm2015/fundamental-ngx-core-micro-process-flow.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-multi-combobox.mjs +2 -2
- package/fesm2015/fundamental-ngx-core-multi-combobox.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-multi-input.mjs +2 -2
- package/fesm2015/fundamental-ngx-core-multi-input.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-nested-list.mjs +3 -7
- package/fesm2015/fundamental-ngx-core-nested-list.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-notification.mjs +2 -2
- package/fesm2015/fundamental-ngx-core-object-identifier.mjs +2 -2
- package/fesm2015/fundamental-ngx-core-object-marker.mjs +2 -2
- package/fesm2015/fundamental-ngx-core-object-number.mjs +2 -2
- package/fesm2015/fundamental-ngx-core-object-status.mjs +2 -2
- package/fesm2015/fundamental-ngx-core-pagination.mjs +2 -2
- package/fesm2015/fundamental-ngx-core-pagination.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-panel.mjs +2 -2
- package/fesm2015/fundamental-ngx-core-panel.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-popover.mjs +6 -4
- package/fesm2015/fundamental-ngx-core-popover.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-product-switch.mjs +2 -2
- package/fesm2015/fundamental-ngx-core-product-switch.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-progress-indicator.mjs +2 -2
- package/fesm2015/fundamental-ngx-core-quick-view.mjs +2 -2
- package/fesm2015/fundamental-ngx-core-quick-view.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-radio.mjs +2 -2
- package/fesm2015/fundamental-ngx-core-radio.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-rating-indicator.mjs +2 -2
- package/fesm2015/fundamental-ngx-core-resizable-card-layout.mjs +4 -4
- package/fesm2015/fundamental-ngx-core-segmented-button.mjs +2 -2
- package/fesm2015/fundamental-ngx-core-select.mjs +18 -16
- package/fesm2015/fundamental-ngx-core-select.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-shellbar.mjs +16 -4
- package/fesm2015/fundamental-ngx-core-shellbar.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-side-navigation.mjs +2 -2
- package/fesm2015/fundamental-ngx-core-side-navigation.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-skeleton.mjs +2 -2
- package/fesm2015/fundamental-ngx-core-slider.mjs +2 -2
- package/fesm2015/fundamental-ngx-core-slider.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-split-button.mjs +5 -11
- package/fesm2015/fundamental-ngx-core-split-button.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-splitter.mjs +2 -2
- package/fesm2015/fundamental-ngx-core-status-indicator.mjs +2 -2
- package/fesm2015/fundamental-ngx-core-step-input.mjs +2 -2
- package/fesm2015/fundamental-ngx-core-step-input.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-switch.mjs +2 -2
- package/fesm2015/fundamental-ngx-core-switch.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-table.mjs +5 -10
- package/fesm2015/fundamental-ngx-core-table.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-tabs.mjs +5 -5
- package/fesm2015/fundamental-ngx-core-tabs.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-text.mjs +2 -2
- package/fesm2015/fundamental-ngx-core-tile.mjs +2 -2
- package/fesm2015/fundamental-ngx-core-tile.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-time.mjs +2 -2
- package/fesm2015/fundamental-ngx-core-time.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-title.mjs +2 -2
- package/fesm2015/fundamental-ngx-core-token.mjs +17 -9
- package/fesm2015/fundamental-ngx-core-token.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-toolbar.mjs +2 -2
- package/fesm2015/fundamental-ngx-core-tree.mjs +2 -2
- package/fesm2015/fundamental-ngx-core-tree.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-upload-collection.mjs +2 -2
- package/fesm2015/fundamental-ngx-core-upload-collection.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-vertical-navigation.mjs +4 -4
- package/fesm2015/fundamental-ngx-core-wizard.mjs +2 -2
- package/fesm2020/fundamental-ngx-core-action-bar.mjs +2 -2
- package/fesm2020/fundamental-ngx-core-action-sheet.mjs +4 -4
- package/fesm2020/fundamental-ngx-core-action-sheet.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-alert.mjs +2 -2
- package/fesm2020/fundamental-ngx-core-avatar-group.mjs +2 -2
- package/fesm2020/fundamental-ngx-core-avatar-group.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-avatar.mjs +2 -2
- package/fesm2020/fundamental-ngx-core-avatar.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-bar.mjs +2 -8
- package/fesm2020/fundamental-ngx-core-bar.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-breadcrumb.mjs +2 -2
- package/fesm2020/fundamental-ngx-core-busy-indicator.mjs +2 -2
- package/fesm2020/fundamental-ngx-core-button.mjs +5 -13
- package/fesm2020/fundamental-ngx-core-button.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-calendar.mjs +5 -13
- package/fesm2020/fundamental-ngx-core-calendar.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-card.mjs +3 -16
- package/fesm2020/fundamental-ngx-core-card.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-carousel.mjs +2 -2
- package/fesm2020/fundamental-ngx-core-checkbox.mjs +7 -15
- package/fesm2020/fundamental-ngx-core-checkbox.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-combobox.mjs +2 -2
- package/fesm2020/fundamental-ngx-core-combobox.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-content-density.mjs +139 -128
- package/fesm2020/fundamental-ngx-core-content-density.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-dialog.mjs +16 -5
- package/fesm2020/fundamental-ngx-core-dialog.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-dynamic-page.mjs +2 -2
- package/fesm2020/fundamental-ngx-core-dynamic-side-content.mjs +2 -2
- package/fesm2020/fundamental-ngx-core-facets.mjs +2 -2
- package/fesm2020/fundamental-ngx-core-feed-input.mjs +4 -5
- package/fesm2020/fundamental-ngx-core-feed-input.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-feed-list-item.mjs +2 -2
- package/fesm2020/fundamental-ngx-core-file-uploader.mjs +2 -3
- package/fesm2020/fundamental-ngx-core-file-uploader.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-fixed-card-layout.mjs +2 -2
- package/fesm2020/fundamental-ngx-core-flexible-column-layout.mjs +2 -2
- package/fesm2020/fundamental-ngx-core-flexible-column-layout.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-form.mjs +19 -43
- package/fesm2020/fundamental-ngx-core-form.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-grid-list.mjs +4 -4
- package/fesm2020/fundamental-ngx-core-grid-list.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-icon.mjs +2 -2
- package/fesm2020/fundamental-ngx-core-icon.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-illustrated-message.mjs +2 -2
- package/fesm2020/fundamental-ngx-core-illustrated-message.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-info-label.mjs +2 -2
- package/fesm2020/fundamental-ngx-core-input-group.mjs +19 -31
- package/fesm2020/fundamental-ngx-core-input-group.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-layout-grid.mjs +2 -2
- package/fesm2020/fundamental-ngx-core-layout-panel.mjs +2 -2
- package/fesm2020/fundamental-ngx-core-link.mjs +2 -2
- package/fesm2020/fundamental-ngx-core-list.mjs +7 -11
- package/fesm2020/fundamental-ngx-core-list.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-menu.mjs +2 -2
- package/fesm2020/fundamental-ngx-core-menu.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-message-box.mjs +2 -2
- package/fesm2020/fundamental-ngx-core-message-page.mjs +2 -2
- package/fesm2020/fundamental-ngx-core-message-strip.mjs +2 -2
- package/fesm2020/fundamental-ngx-core-message-toast.mjs +2 -2
- package/fesm2020/fundamental-ngx-core-micro-process-flow.mjs +5 -9
- package/fesm2020/fundamental-ngx-core-micro-process-flow.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-multi-combobox.mjs +2 -2
- package/fesm2020/fundamental-ngx-core-multi-combobox.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-multi-input.mjs +2 -2
- package/fesm2020/fundamental-ngx-core-multi-input.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-nested-list.mjs +3 -7
- package/fesm2020/fundamental-ngx-core-nested-list.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-notification.mjs +2 -2
- package/fesm2020/fundamental-ngx-core-object-identifier.mjs +2 -2
- package/fesm2020/fundamental-ngx-core-object-marker.mjs +2 -2
- package/fesm2020/fundamental-ngx-core-object-number.mjs +2 -2
- package/fesm2020/fundamental-ngx-core-object-status.mjs +2 -2
- package/fesm2020/fundamental-ngx-core-pagination.mjs +2 -2
- package/fesm2020/fundamental-ngx-core-pagination.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-panel.mjs +2 -2
- package/fesm2020/fundamental-ngx-core-panel.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-popover.mjs +6 -4
- package/fesm2020/fundamental-ngx-core-popover.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-product-switch.mjs +2 -2
- package/fesm2020/fundamental-ngx-core-product-switch.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-progress-indicator.mjs +2 -2
- package/fesm2020/fundamental-ngx-core-quick-view.mjs +2 -2
- package/fesm2020/fundamental-ngx-core-quick-view.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-radio.mjs +2 -2
- package/fesm2020/fundamental-ngx-core-radio.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-rating-indicator.mjs +2 -2
- package/fesm2020/fundamental-ngx-core-resizable-card-layout.mjs +4 -4
- package/fesm2020/fundamental-ngx-core-segmented-button.mjs +2 -2
- package/fesm2020/fundamental-ngx-core-select.mjs +18 -16
- package/fesm2020/fundamental-ngx-core-select.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-shellbar.mjs +16 -4
- package/fesm2020/fundamental-ngx-core-shellbar.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-side-navigation.mjs +2 -2
- package/fesm2020/fundamental-ngx-core-side-navigation.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-skeleton.mjs +2 -2
- package/fesm2020/fundamental-ngx-core-slider.mjs +2 -2
- package/fesm2020/fundamental-ngx-core-slider.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-split-button.mjs +5 -11
- package/fesm2020/fundamental-ngx-core-split-button.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-splitter.mjs +2 -2
- package/fesm2020/fundamental-ngx-core-status-indicator.mjs +2 -2
- package/fesm2020/fundamental-ngx-core-step-input.mjs +2 -2
- package/fesm2020/fundamental-ngx-core-step-input.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-switch.mjs +2 -2
- package/fesm2020/fundamental-ngx-core-switch.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-table.mjs +5 -10
- package/fesm2020/fundamental-ngx-core-table.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-tabs.mjs +5 -5
- package/fesm2020/fundamental-ngx-core-tabs.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-text.mjs +2 -2
- package/fesm2020/fundamental-ngx-core-tile.mjs +2 -2
- package/fesm2020/fundamental-ngx-core-tile.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-time.mjs +2 -2
- package/fesm2020/fundamental-ngx-core-time.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-title.mjs +2 -2
- package/fesm2020/fundamental-ngx-core-token.mjs +17 -9
- package/fesm2020/fundamental-ngx-core-token.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-toolbar.mjs +2 -2
- package/fesm2020/fundamental-ngx-core-tree.mjs +2 -2
- package/fesm2020/fundamental-ngx-core-tree.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-upload-collection.mjs +2 -2
- package/fesm2020/fundamental-ngx-core-upload-collection.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-vertical-navigation.mjs +4 -4
- package/fesm2020/fundamental-ngx-core-wizard.mjs +2 -2
- package/fundamental-ngx-core-v0.40.0-rc.13.tgz +0 -0
- package/input-group/input-group.component.d.ts +4 -2
- package/package.json +4 -4
- package/schematics/add-dependencies/index.js +6 -6
- package/select/select.component.d.ts +3 -1
- package/split-button/split-button.component.d.ts +0 -1
- package/table/table.component.d.ts +0 -4
- package/token/tokenizer.component.d.ts +8 -2
- package/content-density/helpers/content-density-change-callback-factory.d.ts +0 -3
- package/esm2020/content-density/helpers/content-density-change-callback-factory.mjs +0 -27
- package/fundamental-ngx-core-v0.40.0-rc.12.tgz +0 -0
|
@@ -1,14 +1,12 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { BehaviorSubject, distinctUntilChanged, finalize, map, takeUntil, tap } from 'rxjs';
|
|
3
|
-
import { GlobalContentDensityService } from '../services/global-content-density.service';
|
|
4
|
-
import { getChangesSource$ } from '../helpers/get-changes-source.provider';
|
|
5
|
-
import { defaultContentDensityObserverConfigs } from '../variables/default-content-density-consumer-config';
|
|
6
|
-
import { contentDensityCallbackFactory } from '../helpers/content-density-change-callback-factory';
|
|
7
|
-
import { isCompact, isCondensed, isCozy } from '../helpers/density-type-checkers';
|
|
8
|
-
import { CONTENT_DENSITY_DIRECTIVE } from '../tokens/content-density-directive';
|
|
1
|
+
import { ElementRef, inject, Injectable, InjectFlags, Injector, Renderer2 } from '@angular/core';
|
|
9
2
|
import { DestroyedService } from '@fundamental-ngx/cdk/utils';
|
|
3
|
+
import { BehaviorSubject, distinctUntilChanged, map, takeUntil } from 'rxjs';
|
|
10
4
|
import { ContentDensityObserverSettings } from '../classes/content-density-observer.settings';
|
|
5
|
+
import { getChangesSource$ } from '../helpers/get-changes-source.provider';
|
|
6
|
+
import { GlobalContentDensityService } from '../services/global-content-density.service';
|
|
7
|
+
import { CONTENT_DENSITY_DIRECTIVE } from '../tokens/content-density-directive';
|
|
11
8
|
import { ContentDensityMode } from '../types/content-density.mode';
|
|
9
|
+
import { defaultContentDensityObserverConfigs } from '../variables/default-content-density-consumer-config';
|
|
12
10
|
import * as i0 from "@angular/core";
|
|
13
11
|
import * as i1 from "../classes/content-density-observer.settings";
|
|
14
12
|
const isFactoryProvider = (obj) => !!(obj && obj.useFactory);
|
|
@@ -51,127 +49,153 @@ const initialContentDensity = (injector, configuration) => {
|
|
|
51
49
|
});
|
|
52
50
|
};
|
|
53
51
|
export class ContentDensityObserver extends BehaviorSubject {
|
|
52
|
+
/** @hidden */
|
|
53
|
+
get isCompact() {
|
|
54
|
+
return this._isCompact$.value;
|
|
55
|
+
}
|
|
56
|
+
/** @hidden */
|
|
57
|
+
get isCozy() {
|
|
58
|
+
return this._isCozy$.value;
|
|
59
|
+
}
|
|
60
|
+
/** @hidden */
|
|
61
|
+
get isCondensed() {
|
|
62
|
+
return this._isCondensed$.value;
|
|
63
|
+
}
|
|
54
64
|
/** @hidden */
|
|
55
65
|
constructor(_injector, _providedConfig) {
|
|
56
66
|
super(initialContentDensity(_injector, _providedConfig));
|
|
57
67
|
this._injector = _injector;
|
|
58
68
|
this._providedConfig = _providedConfig;
|
|
59
69
|
/** @hidden */
|
|
60
|
-
this.
|
|
70
|
+
this._isCompact$ = new BehaviorSubject(false);
|
|
61
71
|
/** @hidden */
|
|
62
|
-
this.
|
|
63
|
-
|
|
64
|
-
|
|
72
|
+
this._isCozy$ = new BehaviorSubject(false);
|
|
73
|
+
/** @hidden */
|
|
74
|
+
this._isCondensed$ = new BehaviorSubject(false);
|
|
75
|
+
/** @hidden */
|
|
76
|
+
this.isCompact$ = this._isCompact$.asObservable();
|
|
77
|
+
/** @hidden */
|
|
78
|
+
this.isCozy$ = this._isCozy$.asObservable();
|
|
79
|
+
/** @hidden */
|
|
80
|
+
this.isCondensed$ = this._isCondensed$.asObservable();
|
|
81
|
+
/** @hidden */
|
|
82
|
+
this._globalContentDensityService = inject(GlobalContentDensityService, {
|
|
83
|
+
optional: true
|
|
84
|
+
});
|
|
85
|
+
/** @hidden */
|
|
86
|
+
this._contentDensityDirective = inject(CONTENT_DENSITY_DIRECTIVE, {
|
|
87
|
+
optional: true
|
|
88
|
+
});
|
|
89
|
+
/** @hidden */
|
|
90
|
+
this._parentContentDensityObserver = inject(ContentDensityObserver, {
|
|
91
|
+
optional: true,
|
|
92
|
+
skipSelf: true
|
|
93
|
+
});
|
|
94
|
+
/** @hidden */
|
|
95
|
+
this._renderer = inject(Renderer2);
|
|
96
|
+
/** @hidden */
|
|
97
|
+
this._destroy$ = inject(DestroyedService);
|
|
98
|
+
/** @hidden */
|
|
99
|
+
this._elementRef = inject(ElementRef);
|
|
100
|
+
/** @hidden */
|
|
101
|
+
this._elements = [this._elementRef];
|
|
102
|
+
/** @hidden */
|
|
103
|
+
this._alternativeTo = {
|
|
104
|
+
[ContentDensityMode.COMPACT]: () => this._isSupported(ContentDensityMode.CONDENSED) ? ContentDensityMode.CONDENSED : ContentDensityMode.COZY,
|
|
105
|
+
[ContentDensityMode.CONDENSED]: () => this._isSupported(ContentDensityMode.COMPACT) ? ContentDensityMode.COMPACT : ContentDensityMode.COZY,
|
|
65
106
|
[ContentDensityMode.COZY]: () => ContentDensityMode.COZY // No alternative here, everyone should support it
|
|
66
107
|
};
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
108
|
+
const destroySub = this._destroy$.subscribe({
|
|
109
|
+
complete: () => {
|
|
110
|
+
destroySub.unsubscribe();
|
|
111
|
+
this.complete();
|
|
112
|
+
if (this.config.debug) {
|
|
113
|
+
console.log('ContentDensityObserver: destroyed');
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
});
|
|
117
|
+
this.config = {
|
|
71
118
|
...defaultContentDensityObserverConfigs,
|
|
119
|
+
...(this._parentContentDensityObserver?.config ?? {}),
|
|
72
120
|
...(_providedConfig || {})
|
|
73
121
|
};
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
if (this.
|
|
122
|
+
getChangesSource$({
|
|
123
|
+
defaultContentDensity: this.value,
|
|
124
|
+
contentDensityDirective: this._contentDensityDirective ?? undefined,
|
|
125
|
+
contentDensityService: this._globalContentDensityService ?? undefined,
|
|
126
|
+
parentContentDensityService: this.config.restrictChildContentDensity
|
|
127
|
+
? this._parentContentDensityObserver?.asObservable() ?? undefined
|
|
128
|
+
: undefined
|
|
129
|
+
})
|
|
130
|
+
.pipe(map((density) => {
|
|
131
|
+
if (this.config.debug) {
|
|
84
132
|
console.log(`ContentDensityObserver: density changed to ${density}`);
|
|
85
133
|
}
|
|
86
|
-
if (!this.
|
|
134
|
+
if (!this._isSupported(density)) {
|
|
87
135
|
try {
|
|
88
|
-
|
|
136
|
+
if (this.config.debug) {
|
|
137
|
+
console.log(`ContentDensityObserver: ${density} is not supported. Failing back to alternative one.`);
|
|
138
|
+
}
|
|
139
|
+
return this._alternativeTo[density]();
|
|
89
140
|
}
|
|
90
141
|
catch (e) {
|
|
91
142
|
throw new Error(`ContentDensityObserver: density ${density} is not supported`);
|
|
92
143
|
}
|
|
93
144
|
}
|
|
94
145
|
return density;
|
|
95
|
-
}), distinctUntilChanged(), takeUntil(this.
|
|
96
|
-
changesSource$
|
|
97
|
-
.pipe(tap((density) => this._callCallbacks(density)), finalize(() => this.complete()))
|
|
146
|
+
}), distinctUntilChanged(), takeUntil(this._destroy$))
|
|
98
147
|
.subscribe((density) => {
|
|
99
|
-
if (this.configuration.debug) {
|
|
100
|
-
console.log(`ContentDensityObserver: density emmited ${density}`);
|
|
101
|
-
}
|
|
102
148
|
this.next(density);
|
|
103
|
-
this.
|
|
149
|
+
this._applyClass();
|
|
150
|
+
this._isCompact$.next(density === ContentDensityMode.COMPACT);
|
|
151
|
+
this._isCozy$.next(density === ContentDensityMode.COZY);
|
|
152
|
+
this._isCondensed$.next(density === ContentDensityMode.CONDENSED);
|
|
104
153
|
});
|
|
105
|
-
this.isCompact$ = changesSource$.pipe(map(isCompact));
|
|
106
|
-
this.isCozy$ = changesSource$.pipe(map(isCozy));
|
|
107
|
-
this.isCondensed$ = changesSource$.pipe(map(isCondensed));
|
|
108
|
-
if (_providedConfig) {
|
|
109
|
-
this.consume({
|
|
110
|
-
contentDensitySettings: this.configuration,
|
|
111
|
-
elementRef: () => this._injector.get(ElementRef)
|
|
112
|
-
});
|
|
113
|
-
}
|
|
114
154
|
}
|
|
115
|
-
/**
|
|
116
|
-
|
|
117
|
-
|
|
155
|
+
/** @hidden */
|
|
156
|
+
consume(...consumers) {
|
|
157
|
+
this._elements.concat(...consumers.map((c) => c.elementRef()));
|
|
118
158
|
}
|
|
119
159
|
/**
|
|
120
|
-
*
|
|
160
|
+
* Completes the stream and closes all internal subscriptions.
|
|
121
161
|
*/
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
162
|
+
complete() {
|
|
163
|
+
super.complete();
|
|
164
|
+
this._isCondensed$.complete();
|
|
165
|
+
this._isCozy$.complete();
|
|
166
|
+
this._isCompact$.complete();
|
|
167
|
+
this._parentContentDensityObserver = null;
|
|
168
|
+
this._contentDensityDirective = null;
|
|
169
|
+
this._globalContentDensityService = null;
|
|
170
|
+
this._elementRef = null;
|
|
171
|
+
this._renderer = null;
|
|
172
|
+
this._elements = [];
|
|
127
173
|
}
|
|
128
|
-
/**
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
get isCondensed() {
|
|
132
|
-
if (!this._condensedSubscription) {
|
|
133
|
-
this._condensedSubscription = this._listenToChanges(this.isCondensed$, (v) => (this._isCondensed = v));
|
|
134
|
-
}
|
|
135
|
-
return this._isCondensed;
|
|
174
|
+
/** @hidden */
|
|
175
|
+
removeConsumer(consumer) {
|
|
176
|
+
this._elements.splice(this._elements.indexOf(consumer.elementRef()), 1);
|
|
136
177
|
}
|
|
137
|
-
/**
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
if (!this._cozySubscription) {
|
|
142
|
-
this._cozySubscription = this._listenToChanges(this.isCozy$, (v) => (this._isCozy = v));
|
|
178
|
+
/** @hidden */
|
|
179
|
+
_applyClass() {
|
|
180
|
+
if (!this.config?.modifiers) {
|
|
181
|
+
return;
|
|
143
182
|
}
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
return this;
|
|
156
|
-
}
|
|
157
|
-
/**
|
|
158
|
-
* Remove consumer callback from list of callbacks
|
|
159
|
-
*/
|
|
160
|
-
removeConsumer(...consumerConfigs) {
|
|
161
|
-
consumerConfigs.forEach((consumerConfig) => {
|
|
162
|
-
this._callbacks.delete(consumerConfig);
|
|
183
|
+
const modifiers = this.config.modifiers;
|
|
184
|
+
const parentContentDensityEqual = this._parentContentDensityObserver?.value === this.value;
|
|
185
|
+
this._elements.forEach((element) => {
|
|
186
|
+
Object.values(modifiers).forEach((className) => {
|
|
187
|
+
this._renderer?.removeClass(element?.nativeElement, className);
|
|
188
|
+
});
|
|
189
|
+
// Simply remove all modifiers from current element. Content density state is covered by parent element.
|
|
190
|
+
if (parentContentDensityEqual && !this.config.alwaysAddModifiers) {
|
|
191
|
+
return;
|
|
192
|
+
}
|
|
193
|
+
this._renderer?.addClass(element?.nativeElement, modifiers[this.value]);
|
|
163
194
|
});
|
|
164
|
-
return this;
|
|
165
195
|
}
|
|
166
|
-
/**
|
|
167
|
-
|
|
168
|
-
this.
|
|
169
|
-
}
|
|
170
|
-
/** @hidden */
|
|
171
|
-
_listenToChanges(source, callback) {
|
|
172
|
-
return source
|
|
173
|
-
.pipe(tap(callback), tap(() => this.changeDetectorRef.markForCheck()), takeUntil(this.destroy$))
|
|
174
|
-
.subscribe();
|
|
196
|
+
/** Check if the given density is supported */
|
|
197
|
+
_isSupported(density) {
|
|
198
|
+
return this.config.supportedContentDensity?.includes(density) ?? false;
|
|
175
199
|
}
|
|
176
200
|
}
|
|
177
201
|
ContentDensityObserver.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: ContentDensityObserver, deps: [{ token: i0.Injector }, { token: i1.ContentDensityObserverSettings }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
@@ -179,4 +203,4 @@ ContentDensityObserver.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0
|
|
|
179
203
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: ContentDensityObserver, decorators: [{
|
|
180
204
|
type: Injectable
|
|
181
205
|
}], ctorParameters: function () { return [{ type: i0.Injector }, { type: i1.ContentDensityObserverSettings }]; } });
|
|
182
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudC1kZW5zaXR5LW9ic2VydmVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvc3JjL2xpYi9jb250ZW50LWRlbnNpdHkvc2VydmljZXMvY29udGVudC1kZW5zaXR5LW9ic2VydmVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLFVBQVUsRUFBdUIsVUFBVSxFQUFFLFdBQVcsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFNdEgsT0FBTyxFQUFFLGVBQWUsRUFBRSxvQkFBb0IsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUE0QixTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3RILE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQ3pGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQzNFLE9BQU8sRUFBRSxvQ0FBb0MsRUFBRSxNQUFNLHNEQUFzRCxDQUFDO0FBQzVHLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBQ25HLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ2xGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzlELE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQzlGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLCtCQUErQixDQUFDOzs7QUFFbkUsTUFBTSxpQkFBaUIsR0FBRyxDQUFDLEdBQVEsRUFBOEIsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsSUFBSyxHQUEyQixDQUFDLFVBQVUs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QUFNLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDM0MsQ0FBQyxDQUFDLENBQUM7UUFDSCxPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0lBRUQsY0FBYztJQUNOLGNBQWMsQ0FBQyxPQUEyQjtRQUM5QyxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7SUFDN0QsQ0FBQztJQUVELGNBQWM7SUFDTixnQkFBZ0IsQ0FBQyxNQUEyQixFQUFFLFFBQXFDO1FBQ3ZGLE9BQU8sTUFBTTthQUNSLElBQUksQ0FDRCxHQUFHLENBQUMsUUFBUSxDQUFDLEVBQ2IsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxZQUFZLEVBQUUsQ0FBQyxFQUNoRCxTQUFTLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUMzQjthQUNBLFNBQVMsRUFBRSxDQUFDO0lBQ3JCLENBQUM7O21IQXBMUSxzQkFBc0I7dUhBQXRCLHNCQUFzQjsyRkFBdEIsc0JBQXNCO2tCQURsQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIEVsZW1lbnRSZWYsIEZhY3RvcnlTYW5zUHJvdmlkZXIsIEluamVjdGFibGUsIEluamVjdEZsYWdzLCBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgICBDb250ZW50RGVuc2l0eUNhbGxiYWNrRm4sXG4gICAgQ29udGVudERlbnNpdHlPYnNlcnZlclRhcmdldCxcbiAgICBMb2NhbENvbnRlbnREZW5zaXR5TW9kZVxufSBmcm9tICcuLi9jb250ZW50LWRlbnNpdHkudHlwZXMnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgZmluYWxpemUsIG1hcCwgT2JzZXJ2YWJsZSwgU3Vic2NyaXB0aW9uLCB0YWtlVW50aWwsIHRhcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgR2xvYmFsQ29udGVudERlbnNpdHlTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvZ2xvYmFsLWNvbnRlbnQtZGVuc2l0eS5zZXJ2aWNlJztcbmltcG9ydCB7IGdldENoYW5nZXNTb3VyY2UkIH0gZnJvbSAnLi4vaGVscGVycy9nZXQtY2hhbmdlcy1zb3VyY2UucHJvdmlkZXInO1xuaW1wb3J0IHsgZGVmYXVsdENvbnRlbnREZW5zaXR5T2JzZXJ2ZXJDb25maWdzIH0gZnJvbSAnLi4vdmFyaWFibGVzL2RlZmF1bHQtY29udGVudC1kZW5zaXR5LWNvbnN1bWVyLWNvbmZpZyc7XG5pbXBvcnQgeyBjb250ZW50RGVuc2l0eUNhbGxiYWNrRmFjdG9yeSB9IGZyb20gJy4uL2hlbHBlcnMvY29udGVudC1kZW5zaXR5LWNoYW5nZS1jYWxsYmFjay1mYWN0b3J5JztcbmltcG9ydCB7IGlzQ29tcGFjdCwgaXNDb25kZW5zZWQsIGlzQ296eSB9IGZyb20gJy4uL2hlbHBlcnMvZGVuc2l0eS10eXBlLWNoZWNrZXJzJztcbmltcG9ydCB7IENPTlRFTlRfREVOU0lUWV9ESVJFQ1RJVkUgfSBmcm9tICcuLi90b2tlbnMvY29udGVudC1kZW5zaXR5LWRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBEZXN0cm95ZWRTZXJ2aWNlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jZGsvdXRpbHMnO1xuaW1wb3J0IHsgQ29udGVudERlbnNpdHlPYnNlcnZlclNldHRpbmdzIH0gZnJvbSAnLi4vY2xhc3Nlcy9jb250ZW50LWRlbnNpdHktb2JzZXJ2ZXIuc2V0dGluZ3MnO1xuaW1wb3J0IHsgQ29udGVudERlbnNpdHlNb2RlIH0gZnJvbSAnLi4vdHlwZXMvY29udGVudC1kZW5zaXR5Lm1vZGUnO1xuXG5jb25zdCBpc0ZhY3RvcnlQcm92aWRlciA9IChvYmo6IGFueSk6IG9iaiBpcyBGYWN0b3J5U2Fuc1Byb3ZpZGVyID0+ICEhKG9iaiAmJiAob2JqIGFzIEZhY3RvcnlTYW5zUHJvdmlkZXIpLnVzZUZhY3RvcnkpO1xuXG5jb25zdCBnZXREZXBzID0gKGluamVjdG9yOiBJbmplY3RvciwgZGVmYXVsdENvbnRlbnREZW5zaXR5OiBGYWN0b3J5U2Fuc1Byb3ZpZGVyKTogQXJyYXk8YW55PiA9PlxuICAgIChkZWZhdWx0Q29udGVudERlbnNpdHkuZGVwcyB8fCBbXSkubWFwKChkZXApOiBhbnkgPT4ge1xuICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShkZXApKSB7XG4gICAgICAgICAgICBsZXQgdHlwZTtcbiAgICAgICAgICAgIGxldCBmbGFncyA9IEluamVjdEZsYWdzLkRlZmF1bHQ7XG4gICAgICAgICAgICBmb3IgKGxldCBpbmRleCA9IDA7IGluZGV4IDwgZGVwLmxlbmd0aDsgaW5kZXgrKykge1xuICAgICAgICAgICAgICAgIGNvbnN0IGZsYWcgPSBkZXBbaW5kZXhdWydfX05HX0RJX0ZMQUdfXyddO1xuICAgICAgICAgICAgICAgIGlmICh0eXBlb2YgZmxhZyA9PT0gJ251bWJlcicpIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWJpdHdpc2VcbiAgICAgICAgICAgICAgICAgICAgZmxhZ3MgfD0gZmxhZztcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICB0eXBlID0gZGVwW2luZGV4XTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gaW5qZWN0b3IuZ2V0KHR5cGUsIHVuZGVmaW5lZCwgZmxhZ3MpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBpbmplY3Rvci5nZXQoZGVwLCB1bmRlZmluZWQsIEluamVjdEZsYWdzLkRlZmF1bHQpO1xuICAgIH0pO1xuXG5jb25zdCBnZXREZWZhdWx0Q29udGVudERlbnNpdHkgPSAoXG4gICAgaW5qZWN0b3I6IEluamVjdG9yLFxuICAgIGNvbmZpZ3VyYXRpb246IFJlcXVpcmVkPENvbnRlbnREZW5zaXR5T2JzZXJ2ZXJTZXR0aW5ncz5cbik6IENvbnRlbnREZW5zaXR5TW9kZSA9PiB7XG4gICAgaWYgKHR5cGVvZiBjb25maWd1cmF0aW9uLmRlZmF1bHRDb250ZW50RGVuc2l0eSA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgcmV0dXJuIGNvbmZpZ3VyYXRpb24uZGVmYXVsdENvbnRlbnREZW5zaXR5IGFzIENvbnRlbnREZW5zaXR5TW9kZTtcbiAgICB9XG4gICAgaWYgKGlzRmFjdG9yeVByb3ZpZGVyKGNvbmZpZ3VyYXRpb24uZGVmYXVsdENvbnRlbnREZW5zaXR5KSkge1xuICAgICAgICBjb25zdCBkZXBzID0gZ2V0RGVwcyhpbmplY3RvciwgY29uZmlndXJhdGlvbi5kZWZhdWx0Q29udGVudERlbnNpdHkpO1xuICAgICAgICByZXR1cm4gY29uZmlndXJhdGlvbi5kZWZhdWx0Q29udGVudERlbnNpdHkudXNlRmFjdG9yeSguLi5kZXBzKTtcbiAgICB9XG4gICAgcmV0dXJuIGluamVjdG9yLmdldChjb25maWd1cmF0aW9uLmRlZmF1bHRDb250ZW50RGVuc2l0eSwgdW5kZWZpbmVkLCB1bmRlZmluZWQpO1xufTtcblxuY29uc3QgaW5pdGlhbENvbnRlbnREZW5zaXR5ID0gKFxuICAgIGluamVjdG9yOiBJbmplY3RvcixcbiAgICBjb25maWd1cmF0aW9uPzogQ29udGVudERlbnNpdHlPYnNlcnZlclNldHRpbmdzXG4pOiBDb250ZW50RGVuc2l0eU1vZGUgPT4ge1xuICAgIGNvbnN0IHNlcnZpY2VWYWx1ZSA9IGluamVjdG9yLmdldChHbG9iYWxDb250ZW50RGVuc2l0eVNlcnZpY2UsIG51bGwsIEluamVjdEZsYWdzLk9wdGlvbmFsKT8uY3VycmVudENvbnRlbnREZW5zaXR5O1xuICAgIGlmIChzZXJ2aWNlVmFsdWUpIHtcbiAgICAgICAgcmV0dXJuIHNlcnZpY2VWYWx1ZTtcbiAgICB9XG4gICAgcmV0dXJuIGdldERlZmF1bHRDb250ZW50RGVuc2l0eShpbmplY3Rvciwge1xuICAgICAgICAuLi5kZWZhdWx0Q29udGVudERlbnNpdHlPYnNlcnZlckNvbmZpZ3MsXG4gICAgICAgIC4uLihjb25maWd1cmF0aW9uIHx8IHt9KVxuICAgIH0pO1xufTtcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIENvbnRlbnREZW5zaXR5T2JzZXJ2ZXIgZXh0ZW5kcyBCZWhhdmlvclN1YmplY3Q8Q29udGVudERlbnNpdHlNb2RlPiB7XG4gICAgLyoqIFN0cmVhbSBmb3IgZ2V0dGluZyBjb21wYWN0IHN0YXRlIGNoYW5nZXMgKi9cbiAgICBpc0NvbXBhY3QkOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICAgIC8qKiBTdHJlYW0gZm9yIGdldHRpbmcgY296eSBzdGF0ZSBjaGFuZ2VzICovXG4gICAgaXNDb3p5JDogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgICAvKiogU3RyZWFtIGZvciBnZXR0aW5nIGNvbmRlbnNlZCBzdGF0ZSBjaGFuZ2VzICovXG4gICAgaXNDb25kZW5zZWQkOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9jYWxsYmFja3M6IE1hcDxhbnksIENvbnRlbnREZW5zaXR5Q2FsbGJhY2tGbj4gPSBuZXcgTWFwPGFueSwgQ29udGVudERlbnNpdHlDYWxsYmFja0ZuPigpO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9pc0NvbXBhY3Q6IGJvb2xlYW47XG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9pc0Nvenk6IGJvb2xlYW47XG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9pc0NvbmRlbnNlZDogYm9vbGVhbjtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfY29tcGFjdFN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfY29uZGVuc2VkU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9jb3p5U3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgcmVhZG9ubHkgY29uZmlndXJhdGlvbjogUmVxdWlyZWQ8Q29udGVudERlbnNpdHlPYnNlcnZlclNldHRpbmdzPjtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBhbHRlcm5hdGl2ZVRvID0ge1xuICAgICAgICBbQ29udGVudERlbnNpdHlNb2RlLkNPTVBBQ1RdOiAoKTogQ29udGVudERlbnNpdHlNb2RlID0+XG4gICAgICAgICAgICB0aGlzLmlzU3VwcG9ydGVkKENvbnRlbnREZW5zaXR5TW9kZS5DT05ERU5TRUQpID8gQ29udGVudERlbnNpdHlNb2RlLkNPTkRFTlNFRCA6IENvbnRlbnREZW5zaXR5TW9kZS5DT1pZLFxuICAgICAgICBbQ29udGVudERlbnNpdHlNb2RlLkNPTkRFTlNFRF06ICgpOiBDb250ZW50RGVuc2l0eU1vZGUgPT5cbiAgICAgICAgICAgIHRoaXMuaXNTdXBwb3J0ZWQoQ29udGVudERlbnNpdHlNb2RlLkNPTVBBQ1QpID8gQ29udGVudERlbnNpdHlNb2RlLkNPTVBBQ1QgOiBDb250ZW50RGVuc2l0eU1vZGUuQ09aWSxcbiAgICAgICAgW0NvbnRlbnREZW5zaXR5TW9kZS5DT1pZXTogKCk6IENvbnRlbnREZW5zaXR5TW9kZSA9PiBDb250ZW50RGVuc2l0eU1vZGUuQ09aWSAvLyBObyBhbHRlcm5hdGl2ZSBoZXJlLCBldmVyeW9uZSBzaG91bGQgc3VwcG9ydCBpdFxuICAgIH07XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZGVzdHJveSQ6IE9ic2VydmFibGU8dm9pZD47XG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZjtcbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgY29udGVudERlbnNpdHlEaXJlY3RpdmU/OiBPYnNlcnZhYmxlPExvY2FsQ29udGVudERlbnNpdHlNb2RlPjtcbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgY29udGVudERlbnNpdHlTZXJ2aWNlPzogR2xvYmFsQ29udGVudERlbnNpdHlTZXJ2aWNlO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9pbmplY3RvcjogSW5qZWN0b3IsIHByaXZhdGUgX3Byb3ZpZGVkQ29uZmlnPzogQ29udGVudERlbnNpdHlPYnNlcnZlclNldHRpbmdzKSB7XG4gICAgICAgIHN1cGVyKGluaXRpYWxDb250ZW50RGVuc2l0eShfaW5qZWN0b3IsIF9wcm92aWRlZENvbmZpZykpO1xuICAgICAgICBpZiAoX3Byb3ZpZGVkQ29uZmlnPy5kZWJ1Zykge1xuICAgICAgICAgICAgY29uc29sZS5sb2coeyBpbml0aWFsQ29udGVudERlbnNpdHk6IGluaXRpYWxDb250ZW50RGVuc2l0eShfaW5qZWN0b3IsIF9wcm92aWRlZENvbmZpZykgfSk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5jb25maWd1cmF0aW9uID0ge1xuICAgICAgICAgICAgLi4uZGVmYXVsdENvbnRlbnREZW5zaXR5T2JzZXJ2ZXJDb25maWdzLFxuICAgICAgICAgICAgLi4uKF9wcm92aWRlZENvbmZpZyB8fCB7fSlcbiAgICAgICAgfTtcbiAgICAgICAgdGhpcy5kZXN0cm95JCA9IHRoaXMuX2luamVjdG9yLmdldChEZXN0cm95ZWRTZXJ2aWNlKTtcbiAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZiA9IHRoaXMuX2luamVjdG9yLmdldChDaGFuZ2VEZXRlY3RvclJlZik7XG4gICAgICAgIHRoaXMuY29udGVudERlbnNpdHlEaXJlY3RpdmUgPSB0aGlzLl9pbmplY3Rvci5nZXQoQ09OVEVOVF9ERU5TSVRZX0RJUkVDVElWRSwgdW5kZWZpbmVkLCBJbmplY3RGbGFncy5PcHRpb25hbCk7XG4gICAgICAgIHRoaXMuY29udGVudERlbnNpdHlTZXJ2aWNlID0gdGhpcy5faW5qZWN0b3IuZ2V0KEdsb2JhbENvbnRlbnREZW5zaXR5U2VydmljZSwgdW5kZWZpbmVkLCBJbmplY3RGbGFncy5PcHRpb25hbCk7XG5cbiAgICAgICAgY29uc3QgY2hhbmdlc1NvdXJjZSQ6IE9ic2VydmFibGU8Q29udGVudERlbnNpdHlNb2RlPiA9IGdldENoYW5nZXNTb3VyY2UkKHtcbiAgICAgICAgICAgIGRlZmF1bHRDb250ZW50RGVuc2l0eTogZ2V0RGVmYXVsdENvbnRlbnREZW5zaXR5KHRoaXMuX2luamVjdG9yLCB0aGlzLmNvbmZpZ3VyYXRpb24pLFxuICAgICAgICAgICAgY29udGVudERlbnNpdHlEaXJlY3RpdmU6IHRoaXMuY29udGVudERlbnNpdHlEaXJlY3RpdmUsXG4gICAgICAgICAgICBjb250ZW50RGVuc2l0eVNlcnZpY2U6IHRoaXMuY29udGVudERlbnNpdHlTZXJ2aWNlXG4gICAgICAgIH0pLnBpcGUoXG4gICAgICAgICAgICBtYXAoKGRlbnNpdHk6IENvbnRlbnREZW5zaXR5TW9kZSkgPT4ge1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLmNvbmZpZ3VyYXRpb24uZGVidWcpIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2coYENvbnRlbnREZW5zaXR5T2JzZXJ2ZXI6IGRlbnNpdHkgY2hhbmdlZCB0byAke2RlbnNpdHl9YCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmICghdGhpcy5pc1N1cHBvcnRlZChkZW5zaXR5KSkge1xuICAgICAgICAgICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuYWx0ZXJuYXRpdmVUb1tkZW5zaXR5XSgpO1xuICAgICAgICAgICAgICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYENvbnRlbnREZW5zaXR5T2JzZXJ2ZXI6IGRlbnNpdHkgJHtkZW5zaXR5fSBpcyBub3Qgc3VwcG9ydGVkYCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcmV0dXJuIGRlbnNpdHk7XG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgICAgICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95JClcbiAgICAgICAgKTtcbiAgICAgICAgY2hhbmdlc1NvdXJjZSRcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIHRhcCgoZGVuc2l0eSkgPT4gdGhpcy5fY2FsbENhbGxiYWNrcyhkZW5zaXR5KSksXG4gICAgICAgICAgICAgICAgZmluYWxpemUoKCkgPT4gdGhpcy5jb21wbGV0ZSgpKVxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoZGVuc2l0eSkgPT4ge1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLmNvbmZpZ3VyYXRpb24uZGVidWcpIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2coYENvbnRlbnREZW5zaXR5T2JzZXJ2ZXI6IGRlbnNpdHkgZW1taXRlZCAke2RlbnNpdHl9YCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHRoaXMubmV4dChkZW5zaXR5KTtcbiAgICAgICAgICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuaXNDb21wYWN0JCA9IGNoYW5nZXNTb3VyY2UkLnBpcGUobWFwKGlzQ29tcGFjdCkpO1xuICAgICAgICB0aGlzLmlzQ296eSQgPSBjaGFuZ2VzU291cmNlJC5waXBlKG1hcChpc0NvenkpKTtcbiAgICAgICAgdGhpcy5pc0NvbmRlbnNlZCQgPSBjaGFuZ2VzU291cmNlJC5waXBlKG1hcChpc0NvbmRlbnNlZCkpO1xuICAgICAgICBpZiAoX3Byb3ZpZGVkQ29uZmlnKSB7XG4gICAgICAgICAgICB0aGlzLmNvbnN1bWUoe1xuICAgICAgICAgICAgICAgIGNvbnRlbnREZW5zaXR5U2V0dGluZ3M6IHRoaXMuY29uZmlndXJhdGlvbixcbiAgICAgICAgICAgICAgICBlbGVtZW50UmVmOiAoKSA9PiB0aGlzLl9pbmplY3Rvci5nZXQoRWxlbWVudFJlZilcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqIENoZWNrIGlmIHRoZSBnaXZlbiBkZW5zaXR5IGlzIHN1cHBvcnRlZCAqL1xuICAgIGlzU3VwcG9ydGVkKGRlbnNpdHk6IENvbnRlbnREZW5zaXR5TW9kZSk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5jb25maWd1cmF0aW9uLnN1cHBvcnRlZENvbnRlbnREZW5zaXR5LmluY2x1ZGVzKGRlbnNpdHkpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFN5bmMgaXNDb21wYWN0LiBDYWxscyBDaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKSBvbiB1cGRhdGVcbiAgICAgKi9cbiAgICBnZXQgaXNDb21wYWN0KCk6IGJvb2xlYW4ge1xuICAgICAgICBpZiAoIXRoaXMuX2NvbXBhY3RTdWJzY3JpcHRpb24pIHtcbiAgICAgICAgICAgIHRoaXMuX2NvbXBhY3RTdWJzY3JpcHRpb24gPSB0aGlzLl9saXN0ZW5Ub0NoYW5nZXModGhpcy5pc0NvbXBhY3QkLCAodikgPT4gKHRoaXMuX2lzQ29tcGFjdCA9IHYpKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdGhpcy5faXNDb21wYWN0O1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFN5bmMgaXNDb25kZW5zZWQuIENhbGxzIENoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpIG9uIHVwZGF0ZVxuICAgICAqL1xuICAgIGdldCBpc0NvbmRlbnNlZCgpOiBib29sZWFuIHtcbiAgICAgICAgaWYgKCF0aGlzLl9jb25kZW5zZWRTdWJzY3JpcHRpb24pIHtcbiAgICAgICAgICAgIHRoaXMuX2NvbmRlbnNlZFN1YnNjcmlwdGlvbiA9IHRoaXMuX2xpc3RlblRvQ2hhbmdlcyh0aGlzLmlzQ29uZGVuc2VkJCwgKHYpID0+ICh0aGlzLl9pc0NvbmRlbnNlZCA9IHYpKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdGhpcy5faXNDb25kZW5zZWQ7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU3luYyBpc0NvenkuIENhbGxzIENoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpIG9uIHVwZGF0ZVxuICAgICAqL1xuICAgIGdldCBpc0NvenkoKTogYm9vbGVhbiB7XG4gICAgICAgIGlmICghdGhpcy5fY296eVN1YnNjcmlwdGlvbikge1xuICAgICAgICAgICAgdGhpcy5fY296eVN1YnNjcmlwdGlvbiA9IHRoaXMuX2xpc3RlblRvQ2hhbmdlcyh0aGlzLmlzQ296eSQsICh2KSA9PiAodGhpcy5faXNDb3p5ID0gdikpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0aGlzLl9pc0Nvenk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUGFzcyBjb25zdW1lcnMgY2FsbGJhY2sgZnVuY3Rpb24sIG9yIGNvbmZpZ3VyYXRpb24gb2JqZWN0IHRvIGJlIGNhbGxlZCBvbiBkZW5zaXR5IGNoYW5nZVxuICAgICAqL1xuICAgIGNvbnN1bWUoXG4gICAgICAgIC4uLmNvbnN1bWVyQ29uZmlnczogQXJyYXk8Q29udGVudERlbnNpdHlPYnNlcnZlclRhcmdldCB8IENvbnRlbnREZW5zaXR5Q2FsbGJhY2tGbj5cbiAgICApOiBDb250ZW50RGVuc2l0eU9ic2VydmVyIHtcbiAgICAgICAgY29uc3VtZXJDb25maWdzLmZvckVhY2goKGNvbnN1bWVyQ29uZmlnKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBjYWxsYmFjayA9IGNvbnRlbnREZW5zaXR5Q2FsbGJhY2tGYWN0b3J5KGNvbnN1bWVyQ29uZmlnKTtcbiAgICAgICAgICAgIHRoaXMuX2NhbGxiYWNrcy5zZXQoY29uc3VtZXJDb25maWcsIGNhbGxiYWNrKTtcbiAgICAgICAgICAgIGNhbGxiYWNrKHRoaXMudmFsdWUpO1xuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmVtb3ZlIGNvbnN1bWVyIGNhbGxiYWNrIGZyb20gbGlzdCBvZiBjYWxsYmFja3NcbiAgICAgKi9cbiAgICByZW1vdmVDb25zdW1lcihcbiAgICAgICAgLi4uY29uc3VtZXJDb25maWdzOiBBcnJheTxDb250ZW50RGVuc2l0eU9ic2VydmVyVGFyZ2V0IHwgQ29udGVudERlbnNpdHlDYWxsYmFja0ZuPlxuICAgICk6IENvbnRlbnREZW5zaXR5T2JzZXJ2ZXIge1xuICAgICAgICBjb25zdW1lckNvbmZpZ3MuZm9yRWFjaCgoY29uc3VtZXJDb25maWcpID0+IHtcbiAgICAgICAgICAgIHRoaXMuX2NhbGxiYWNrcy5kZWxldGUoY29uc3VtZXJDb25maWcpO1xuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9jYWxsQ2FsbGJhY2tzKGRlbnNpdHk6IENvbnRlbnREZW5zaXR5TW9kZSk6IHZvaWQge1xuICAgICAgICB0aGlzLl9jYWxsYmFja3MuZm9yRWFjaCgoY2FsbGJhY2spID0+IGNhbGxiYWNrKGRlbnNpdHkpKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2xpc3RlblRvQ2hhbmdlcyhzb3VyY2U6IE9ic2VydmFibGU8Ym9vbGVhbj4sIGNhbGxiYWNrOiAobmV3VmFsdWU6IGJvb2xlYW4pID0+IHZvaWQpOiBTdWJzY3JpcHRpb24ge1xuICAgICAgICByZXR1cm4gc291cmNlXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICB0YXAoY2FsbGJhY2spLFxuICAgICAgICAgICAgICAgIHRhcCgoKSA9PiB0aGlzLmNoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpKSxcbiAgICAgICAgICAgICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95JClcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKTtcbiAgICB9XG59XG4iXX0=
|
|
206
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudC1kZW5zaXR5LW9ic2VydmVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvc3JjL2xpYi9jb250ZW50LWRlbnNpdHkvc2VydmljZXMvY29udGVudC1kZW5zaXR5LW9ic2VydmVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBdUIsTUFBTSxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN0SCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsZUFBZSxFQUFFLG9CQUFvQixFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDN0UsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFFOUYsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDM0UsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDekYsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDaEYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDbkUsT0FBTyxFQUFFLG9DQUFvQyxFQUFFLE1BQU0sc0RBQXNELENBQUM7OztBQUU1RyxNQUFNLGlCQUFpQixHQUFHLENBQUMsR0FBUSxFQUE4QixFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxJQUFLLEdBQTJCLENBQUMsVUFBVSxDQUFDLENBQUM7QUFFdkgsTUFBTSxPQUFPLEdBQUcsQ0FBQyxRQUFrQixFQUFFLHFCQUEwQyxFQUFjLEVBQUUsQ0FDM0YsQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLElBQUksRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFD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QVMsRUFBRTtZQUN6QixPQUFPO1NBQ1Y7UUFDRCxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQztRQUV4QyxNQUFNLHlCQUF5QixHQUFHLElBQUksQ0FBQyw2QkFBNkIsRUFBRSxLQUFLLEtBQUssSUFBSSxDQUFDLEtBQUssQ0FBQztRQUUzRixJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFO1lBQy9CLE1BQU0sQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsU0FBUyxFQUFFLEVBQUU7Z0JBQzNDLElBQUksQ0FBQyxTQUFTLEVBQUUsV0FBVyxDQUFDLE9BQU8sRUFBRSxhQUFhLEVBQUUsU0FBUyxDQUFDLENBQUM7WUFDbkUsQ0FBQyxDQUFDLENBQUM7WUFFSCx3R0FBd0c7WUFDeEcsSUFBSSx5QkFBeUIsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsa0JBQWtCLEVBQUU7Z0JBQzlELE9BQU87YUFDVjtZQUVELElBQUksQ0FBQyxTQUFTLEVBQUUsUUFBUSxDQUFDLE9BQU8sRUFBRSxhQUFhLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUUsQ0FBQyxDQUFDO1FBQzdFLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELDhDQUE4QztJQUN0QyxZQUFZLENBQUMsT0FBMkI7UUFDNUMsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLHVCQUF1QixFQUFFLFFBQVEsQ0FBQyxPQUFPLENBQUMsSUFBSSxLQUFLLENBQUM7SUFDM0UsQ0FBQzs7bUhBaExRLHNCQUFzQjt1SEFBdEIsc0JBQXNCOzJGQUF0QixzQkFBc0I7a0JBRGxDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFbGVtZW50UmVmLCBGYWN0b3J5U2Fuc1Byb3ZpZGVyLCBpbmplY3QsIEluamVjdGFibGUsIEluamVjdEZsYWdzLCBJbmplY3RvciwgUmVuZGVyZXIyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEZXN0cm95ZWRTZXJ2aWNlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jZGsvdXRpbHMnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgbWFwLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IENvbnRlbnREZW5zaXR5T2JzZXJ2ZXJTZXR0aW5ncyB9IGZyb20gJy4uL2NsYXNzZXMvY29udGVudC1kZW5zaXR5LW9ic2VydmVyLnNldHRpbmdzJztcbmltcG9ydCB7IENvbnRlbnREZW5zaXR5T2JzZXJ2ZXJUYXJnZXQgfSBmcm9tICcuLi9jb250ZW50LWRlbnNpdHkudHlwZXMnO1xuaW1wb3J0IHsgZ2V0Q2hhbmdlc1NvdXJjZSQgfSBmcm9tICcuLi9oZWxwZXJzL2dldC1jaGFuZ2VzLXNvdXJjZS5wcm92aWRlcic7XG5pbXBvcnQgeyBHbG9iYWxDb250ZW50RGVuc2l0eVNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9nbG9iYWwtY29udGVudC1kZW5zaXR5LnNlcnZpY2UnO1xuaW1wb3J0IHsgQ09OVEVOVF9ERU5TSVRZX0RJUkVDVElWRSB9IGZyb20gJy4uL3Rva2Vucy9jb250ZW50LWRlbnNpdHktZGlyZWN0aXZlJztcbmltcG9ydCB7IENvbnRlbnREZW5zaXR5TW9kZSB9IGZyb20gJy4uL3R5cGVzL2NvbnRlbnQtZGVuc2l0eS5tb2RlJztcbmltcG9ydCB7IGRlZmF1bHRDb250ZW50RGVuc2l0eU9ic2VydmVyQ29uZmlncyB9IGZyb20gJy4uL3ZhcmlhYmxlcy9kZWZhdWx0LWNvbnRlbnQtZGVuc2l0eS1jb25zdW1lci1jb25maWcnO1xuXG5jb25zdCBpc0ZhY3RvcnlQcm92aWRlciA9IChvYmo6IGFueSk6IG9iaiBpcyBGYWN0b3J5U2Fuc1Byb3ZpZGVyID0+ICEhKG9iaiAmJiAob2JqIGFzIEZhY3RvcnlTYW5zUHJvdmlkZXIpLnVzZUZhY3RvcnkpO1xuXG5jb25zdCBnZXREZXBzID0gKGluamVjdG9yOiBJbmplY3RvciwgZGVmYXVsdENvbnRlbnREZW5zaXR5OiBGYWN0b3J5U2Fuc1Byb3ZpZGVyKTogQXJyYXk8YW55PiA9PlxuICAgIChkZWZhdWx0Q29udGVudERlbnNpdHkuZGVwcyB8fCBbXSkubWFwKChkZXApOiBhbnkgPT4ge1xuICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShkZXApKSB7XG4gICAgICAgICAgICBsZXQgdHlwZTtcbiAgICAgICAgICAgIGxldCBmbGFncyA9IEluamVjdEZsYWdzLkRlZmF1bHQ7XG4gICAgICAgICAgICBmb3IgKGxldCBpbmRleCA9IDA7IGluZGV4IDwgZGVwLmxlbmd0aDsgaW5kZXgrKykge1xuICAgICAgICAgICAgICAgIGNvbnN0IGZsYWcgPSBkZXBbaW5kZXhdWydfX05HX0RJX0ZMQUdfXyddO1xuICAgICAgICAgICAgICAgIGlmICh0eXBlb2YgZmxhZyA9PT0gJ251bWJlcicpIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWJpdHdpc2VcbiAgICAgICAgICAgICAgICAgICAgZmxhZ3MgfD0gZmxhZztcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICB0eXBlID0gZGVwW2luZGV4XTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gaW5qZWN0b3IuZ2V0KHR5cGUsIHVuZGVmaW5lZCwgZmxhZ3MpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBpbmplY3Rvci5nZXQoZGVwLCB1bmRlZmluZWQsIEluamVjdEZsYWdzLkRlZmF1bHQpO1xuICAgIH0pO1xuXG5jb25zdCBnZXREZWZhdWx0Q29udGVudERlbnNpdHkgPSAoXG4gICAgaW5qZWN0b3I6IEluamVjdG9yLFxuICAgIGNvbmZpZ3VyYXRpb246IFJlcXVpcmVkPENvbnRlbnREZW5zaXR5T2JzZXJ2ZXJTZXR0aW5ncz5cbik6IENvbnRlbnREZW5zaXR5TW9kZSA9PiB7XG4gICAgaWYgKHR5cGVvZiBjb25maWd1cmF0aW9uLmRlZmF1bHRDb250ZW50RGVuc2l0eSA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgcmV0dXJuIGNvbmZpZ3VyYXRpb24uZGVmYXVsdENvbnRlbnREZW5zaXR5IGFzIENvbnRlbnREZW5zaXR5TW9kZTtcbiAgICB9XG4gICAgaWYgKGlzRmFjdG9yeVByb3ZpZGVyKGNvbmZpZ3VyYXRpb24uZGVmYXVsdENvbnRlbnREZW5zaXR5KSkge1xuICAgICAgICBjb25zdCBkZXBzID0gZ2V0RGVwcyhpbmplY3RvciwgY29uZmlndXJhdGlvbi5kZWZhdWx0Q29udGVudERlbnNpdHkpO1xuICAgICAgICByZXR1cm4gY29uZmlndXJhdGlvbi5kZWZhdWx0Q29udGVudERlbnNpdHkudXNlRmFjdG9yeSguLi5kZXBzKTtcbiAgICB9XG4gICAgcmV0dXJuIGluamVjdG9yLmdldChjb25maWd1cmF0aW9uLmRlZmF1bHRDb250ZW50RGVuc2l0eSwgdW5kZWZpbmVkLCB1bmRlZmluZWQpO1xufTtcblxuY29uc3QgaW5pdGlhbENvbnRlbnREZW5zaXR5ID0gKFxuICAgIGluamVjdG9yOiBJbmplY3RvcixcbiAgICBjb25maWd1cmF0aW9uPzogQ29udGVudERlbnNpdHlPYnNlcnZlclNldHRpbmdzXG4pOiBDb250ZW50RGVuc2l0eU1vZGUgPT4ge1xuICAgIGNvbnN0IHNlcnZpY2VWYWx1ZSA9IGluamVjdG9yLmdldChHbG9iYWxDb250ZW50RGVuc2l0eVNlcnZpY2UsIG51bGwsIEluamVjdEZsYWdzLk9wdGlvbmFsKT8uY3VycmVudENvbnRlbnREZW5zaXR5O1xuICAgIGlmIChzZXJ2aWNlVmFsdWUpIHtcbiAgICAgICAgcmV0dXJuIHNlcnZpY2VWYWx1ZTtcbiAgICB9XG4gICAgcmV0dXJuIGdldERlZmF1bHRDb250ZW50RGVuc2l0eShpbmplY3Rvciwge1xuICAgICAgICAuLi5kZWZhdWx0Q29udGVudERlbnNpdHlPYnNlcnZlckNvbmZpZ3MsXG4gICAgICAgIC4uLihjb25maWd1cmF0aW9uIHx8IHt9KVxuICAgIH0pO1xufTtcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIENvbnRlbnREZW5zaXR5T2JzZXJ2ZXIgZXh0ZW5kcyBCZWhhdmlvclN1YmplY3Q8Q29udGVudERlbnNpdHlNb2RlPiB7XG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIHJlYWRvbmx5IF9pc0NvbXBhY3QkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIHJlYWRvbmx5IF9pc0NvenkkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIHJlYWRvbmx5IF9pc0NvbmRlbnNlZCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHJlYWRvbmx5IGNvbmZpZzogQ29udGVudERlbnNpdHlPYnNlcnZlclNldHRpbmdzO1xuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcmVhZG9ubHkgaXNDb21wYWN0JCA9IHRoaXMuX2lzQ29tcGFjdCQuYXNPYnNlcnZhYmxlKCk7XG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICByZWFkb25seSBpc0NvenkkID0gdGhpcy5faXNDb3p5JC5hc09ic2VydmFibGUoKTtcbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHJlYWRvbmx5IGlzQ29uZGVuc2VkJCA9IHRoaXMuX2lzQ29uZGVuc2VkJC5hc09ic2VydmFibGUoKTtcbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGdldCBpc0NvbXBhY3QoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9pc0NvbXBhY3QkLnZhbHVlO1xuICAgIH1cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGdldCBpc0NvenkoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9pc0NvenkkLnZhbHVlO1xuICAgIH1cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGdldCBpc0NvbmRlbnNlZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2lzQ29uZGVuc2VkJC52YWx1ZTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2dsb2JhbENvbnRlbnREZW5zaXR5U2VydmljZSA9IGluamVjdChHbG9iYWxDb250ZW50RGVuc2l0eVNlcnZpY2UsIHtcbiAgICAgICAgb3B0aW9uYWw6IHRydWVcbiAgICB9KTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfY29udGVudERlbnNpdHlEaXJlY3RpdmUgPSBpbmplY3QoQ09OVEVOVF9ERU5TSVRZX0RJUkVDVElWRSwge1xuICAgICAgICBvcHRpb25hbDogdHJ1ZVxuICAgIH0pO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9wYXJlbnRDb250ZW50RGVuc2l0eU9ic2VydmVyID0gaW5qZWN0KENvbnRlbnREZW5zaXR5T2JzZXJ2ZXIsIHtcbiAgICAgICAgb3B0aW9uYWw6IHRydWUsXG4gICAgICAgIHNraXBTZWxmOiB0cnVlXG4gICAgfSk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX3JlbmRlcmVyOiBSZW5kZXJlcjIgfCBudWxsID0gaW5qZWN0KFJlbmRlcmVyMik7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgcmVhZG9ubHkgX2Rlc3Ryb3kkID0gaW5qZWN0KERlc3Ryb3llZFNlcnZpY2UpO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9lbGVtZW50UmVmOiBFbGVtZW50UmVmPGFueT4gfCBudWxsID0gaW5qZWN0KEVsZW1lbnRSZWYpO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9lbGVtZW50cyA9IFt0aGlzLl9lbGVtZW50UmVmXTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfYWx0ZXJuYXRpdmVUbyA9IHtcbiAgICAgICAgW0NvbnRlbnREZW5zaXR5TW9kZS5DT01QQUNUXTogKCk6IENvbnRlbnREZW5zaXR5TW9kZSA9PlxuICAgICAgICAgICAgdGhpcy5faXNTdXBwb3J0ZWQoQ29udGVudERlbnNpdHlNb2RlLkNPTkRFTlNFRCkgPyBDb250ZW50RGVuc2l0eU1vZGUuQ09OREVOU0VEIDogQ29udGVudERlbnNpdHlNb2RlLkNPWlksXG4gICAgICAgIFtDb250ZW50RGVuc2l0eU1vZGUuQ09OREVOU0VEXTogKCk6IENvbnRlbnREZW5zaXR5TW9kZSA9PlxuICAgICAgICAgICAgdGhpcy5faXNTdXBwb3J0ZWQoQ29udGVudERlbnNpdHlNb2RlLkNPTVBBQ1QpID8gQ29udGVudERlbnNpdHlNb2RlLkNPTVBBQ1QgOiBDb250ZW50RGVuc2l0eU1vZGUuQ09aWSxcbiAgICAgICAgW0NvbnRlbnREZW5zaXR5TW9kZS5DT1pZXTogKCk6IENvbnRlbnREZW5zaXR5TW9kZSA9PiBDb250ZW50RGVuc2l0eU1vZGUuQ09aWSAvLyBObyBhbHRlcm5hdGl2ZSBoZXJlLCBldmVyeW9uZSBzaG91bGQgc3VwcG9ydCBpdFxuICAgIH07XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgX2luamVjdG9yOiBJbmplY3RvciwgcHJpdmF0ZSBfcHJvdmlkZWRDb25maWc/OiBDb250ZW50RGVuc2l0eU9ic2VydmVyU2V0dGluZ3MpIHtcbiAgICAgICAgc3VwZXIoaW5pdGlhbENvbnRlbnREZW5zaXR5KF9pbmplY3RvciwgX3Byb3ZpZGVkQ29uZmlnKSk7XG5cbiAgICAgICAgY29uc3QgZGVzdHJveVN1YiA9IHRoaXMuX2Rlc3Ryb3kkLnN1YnNjcmliZSh7XG4gICAgICAgICAgICBjb21wbGV0ZTogKCkgPT4ge1xuICAgICAgICAgICAgICAgIGRlc3Ryb3lTdWIudW5zdWJzY3JpYmUoKTtcbiAgICAgICAgICAgICAgICB0aGlzLmNvbXBsZXRlKCk7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuY29uZmlnLmRlYnVnKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKCdDb250ZW50RGVuc2l0eU9ic2VydmVyOiBkZXN0cm95ZWQnKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMuY29uZmlnID0ge1xuICAgICAgICAgICAgLi4uZGVmYXVsdENvbnRlbnREZW5zaXR5T2JzZXJ2ZXJDb25maWdzLFxuICAgICAgICAgICAgLi4uKHRoaXMuX3BhcmVudENvbnRlbnREZW5zaXR5T2JzZXJ2ZXI/LmNvbmZpZyA/PyB7fSksXG4gICAgICAgICAgICAuLi4oX3Byb3ZpZGVkQ29uZmlnIHx8IHt9KVxuICAgICAgICB9O1xuXG4gICAgICAgIGdldENoYW5nZXNTb3VyY2UkKHtcbiAgICAgICAgICAgIGRlZmF1bHRDb250ZW50RGVuc2l0eTogdGhpcy52YWx1ZSxcbiAgICAgICAgICAgIGNvbnRlbnREZW5zaXR5RGlyZWN0aXZlOiB0aGlzLl9jb250ZW50RGVuc2l0eURpcmVjdGl2ZSA/PyB1bmRlZmluZWQsXG4gICAgICAgICAgICBjb250ZW50RGVuc2l0eVNlcnZpY2U6IHRoaXMuX2dsb2JhbENvbnRlbnREZW5zaXR5U2VydmljZSA/PyB1bmRlZmluZWQsXG4gICAgICAgICAgICBwYXJlbnRDb250ZW50RGVuc2l0eVNlcnZpY2U6IHRoaXMuY29uZmlnLnJlc3RyaWN0Q2hpbGRDb250ZW50RGVuc2l0eVxuICAgICAgICAgICAgICAgID8gdGhpcy5fcGFyZW50Q29udGVudERlbnNpdHlPYnNlcnZlcj8uYXNPYnNlcnZhYmxlKCkgPz8gdW5kZWZpbmVkXG4gICAgICAgICAgICAgICAgOiB1bmRlZmluZWRcbiAgICAgICAgfSlcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIG1hcCgoZGVuc2l0eSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5jb25maWcuZGVidWcpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKGBDb250ZW50RGVuc2l0eU9ic2VydmVyOiBkZW5zaXR5IGNoYW5nZWQgdG8gJHtkZW5zaXR5fWApO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGlmICghdGhpcy5faXNTdXBwb3J0ZWQoZGVuc2l0eSkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuY29uZmlnLmRlYnVnKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYENvbnRlbnREZW5zaXR5T2JzZXJ2ZXI6ICR7ZGVuc2l0eX0gaXMgbm90IHN1cHBvcnRlZC4gRmFpbGluZyBiYWNrIHRvIGFsdGVybmF0aXZlIG9uZS5gXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLl9hbHRlcm5hdGl2ZVRvW2RlbnNpdHldKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBDb250ZW50RGVuc2l0eU9ic2VydmVyOiBkZW5zaXR5ICR7ZGVuc2l0eX0gaXMgbm90IHN1cHBvcnRlZGApO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBkZW5zaXR5O1xuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgICAgICAgICAgICAgdGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kkKVxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoZGVuc2l0eSkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMubmV4dChkZW5zaXR5KTtcbiAgICAgICAgICAgICAgICB0aGlzLl9hcHBseUNsYXNzKCk7XG4gICAgICAgICAgICAgICAgdGhpcy5faXNDb21wYWN0JC5uZXh0KGRlbnNpdHkgPT09IENvbnRlbnREZW5zaXR5TW9kZS5DT01QQUNUKTtcbiAgICAgICAgICAgICAgICB0aGlzLl9pc0NvenkkLm5leHQoZGVuc2l0eSA9PT0gQ29udGVudERlbnNpdHlNb2RlLkNPWlkpO1xuICAgICAgICAgICAgICAgIHRoaXMuX2lzQ29uZGVuc2VkJC5uZXh0KGRlbnNpdHkgPT09IENvbnRlbnREZW5zaXR5TW9kZS5DT05ERU5TRUQpO1xuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBjb25zdW1lKC4uLmNvbnN1bWVyczogQ29udGVudERlbnNpdHlPYnNlcnZlclRhcmdldFtdKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2VsZW1lbnRzLmNvbmNhdCguLi5jb25zdW1lcnMubWFwKChjKSA9PiBjLmVsZW1lbnRSZWYoKSkpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENvbXBsZXRlcyB0aGUgc3RyZWFtIGFuZCBjbG9zZXMgYWxsIGludGVybmFsIHN1YnNjcmlwdGlvbnMuXG4gICAgICovXG4gICAgb3ZlcnJpZGUgY29tcGxldGUoKTogdm9pZCB7XG4gICAgICAgIHN1cGVyLmNvbXBsZXRlKCk7XG4gICAgICAgIHRoaXMuX2lzQ29uZGVuc2VkJC5jb21wbGV0ZSgpO1xuICAgICAgICB0aGlzLl9pc0NvenkkLmNvbXBsZXRlKCk7XG4gICAgICAgIHRoaXMuX2lzQ29tcGFjdCQuY29tcGxldGUoKTtcbiAgICAgICAgdGhpcy5fcGFyZW50Q29udGVudERlbnNpdHlPYnNlcnZlciA9IG51bGw7XG4gICAgICAgIHRoaXMuX2NvbnRlbnREZW5zaXR5RGlyZWN0aXZlID0gbnVsbDtcbiAgICAgICAgdGhpcy5fZ2xvYmFsQ29udGVudERlbnNpdHlTZXJ2aWNlID0gbnVsbDtcbiAgICAgICAgdGhpcy5fZWxlbWVudFJlZiA9IG51bGw7XG4gICAgICAgIHRoaXMuX3JlbmRlcmVyID0gbnVsbDtcbiAgICAgICAgdGhpcy5fZWxlbWVudHMgPSBbXTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHJlbW92ZUNvbnN1bWVyKGNvbnN1bWVyOiBDb250ZW50RGVuc2l0eU9ic2VydmVyVGFyZ2V0KTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2VsZW1lbnRzLnNwbGljZSh0aGlzLl9lbGVtZW50cy5pbmRleE9mKGNvbnN1bWVyLmVsZW1lbnRSZWYoKSksIDEpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfYXBwbHlDbGFzcygpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLmNvbmZpZz8ubW9kaWZpZXJzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgbW9kaWZpZXJzID0gdGhpcy5jb25maWcubW9kaWZpZXJzO1xuXG4gICAgICAgIGNvbnN0IHBhcmVudENvbnRlbnREZW5zaXR5RXF1YWwgPSB0aGlzLl9wYXJlbnRDb250ZW50RGVuc2l0eU9ic2VydmVyPy52YWx1ZSA9PT0gdGhpcy52YWx1ZTtcblxuICAgICAgICB0aGlzLl9lbGVtZW50cy5mb3JFYWNoKChlbGVtZW50KSA9PiB7XG4gICAgICAgICAgICBPYmplY3QudmFsdWVzKG1vZGlmaWVycykuZm9yRWFjaCgoY2xhc3NOYW1lKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5fcmVuZGVyZXI/LnJlbW92ZUNsYXNzKGVsZW1lbnQ/Lm5hdGl2ZUVsZW1lbnQsIGNsYXNzTmFtZSk7XG4gICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgLy8gU2ltcGx5IHJlbW92ZSBhbGwgbW9kaWZpZXJzIGZyb20gY3VycmVudCBlbGVtZW50LiBDb250ZW50IGRlbnNpdHkgc3RhdGUgaXMgY292ZXJlZCBieSBwYXJlbnQgZWxlbWVudC5cbiAgICAgICAgICAgIGlmIChwYXJlbnRDb250ZW50RGVuc2l0eUVxdWFsICYmICF0aGlzLmNvbmZpZy5hbHdheXNBZGRNb2RpZmllcnMpIHtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRoaXMuX3JlbmRlcmVyPy5hZGRDbGFzcyhlbGVtZW50Py5uYXRpdmVFbGVtZW50LCBtb2RpZmllcnNbdGhpcy52YWx1ZV0hKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLyoqIENoZWNrIGlmIHRoZSBnaXZlbiBkZW5zaXR5IGlzIHN1cHBvcnRlZCAqL1xuICAgIHByaXZhdGUgX2lzU3VwcG9ydGVkKGRlbnNpdHk6IENvbnRlbnREZW5zaXR5TW9kZSk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5jb25maWcuc3VwcG9ydGVkQ29udGVudERlbnNpdHk/LmluY2x1ZGVzKGRlbnNpdHkpID8/IGZhbHNlO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { InjectionToken } from '@angular/core';
|
|
2
2
|
export const CONTENT_DENSITY_DIRECTIVE = new InjectionToken('ContentDensityDirective');
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudC1kZW5zaXR5LWRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9zcmMvbGliL2NvbnRlbnQtZGVuc2l0eS90b2tlbnMvY29udGVudC1kZW5zaXR5LWRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBSS9DLE1BQU0sQ0FBQyxNQUFNLHlCQUF5QixHQUFHLElBQUksY0FBYyxDQUN2RCx5QkFBeUIsQ0FDNUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGlvblRva2VuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBMb2NhbENvbnRlbnREZW5zaXR5TW9kZSB9IGZyb20gJy4uL2NvbnRlbnQtZGVuc2l0eS50eXBlcyc7XG5cbmV4cG9ydCBjb25zdCBDT05URU5UX0RFTlNJVFlfRElSRUNUSVZFID0gbmV3IEluamVjdGlvblRva2VuPE9ic2VydmFibGU8TG9jYWxDb250ZW50RGVuc2l0eU1vZGU+PihcbiAgICAnQ29udGVudERlbnNpdHlEaXJlY3RpdmUnXG4pO1xuIl19
|
|
@@ -1,8 +1,14 @@
|
|
|
1
1
|
import { ContentDensityMode } from '../types/content-density.mode';
|
|
2
2
|
export const defaultContentDensityObserverConfigs = {
|
|
3
|
-
modifiers: {
|
|
3
|
+
modifiers: {
|
|
4
|
+
[ContentDensityMode.COMPACT]: 'is-compact',
|
|
5
|
+
[ContentDensityMode.COZY]: 'is-cozy',
|
|
6
|
+
[ContentDensityMode.CONDENSED]: 'is-condensed'
|
|
7
|
+
},
|
|
4
8
|
supportedContentDensity: [ContentDensityMode.COMPACT, ContentDensityMode.COZY],
|
|
5
9
|
defaultContentDensity: ContentDensityMode.COZY,
|
|
6
|
-
debug: false
|
|
10
|
+
debug: false,
|
|
11
|
+
alwaysAddModifiers: false,
|
|
12
|
+
restrictChildContentDensity: false
|
|
7
13
|
};
|
|
8
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
14
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdC1jb250ZW50LWRlbnNpdHktY29uc3VtZXItY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3NyYy9saWIvY29udGVudC1kZW5zaXR5L3ZhcmlhYmxlcy9kZWZhdWx0LWNvbnRlbnQtZGVuc2l0eS1jb25zdW1lci1jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFHbkUsTUFBTSxDQUFDLE1BQU0sb0NBQW9DLEdBQTZDO0lBQzFGLFNBQVMsRUFBRTtRQUNQLENBQUMsa0JBQWtCLENBQUMsT0FBTyxDQUFDLEVBQUUsWUFBWTtRQUMxQyxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxFQUFFLFNBQVM7UUFDcEMsQ0FBQyxrQkFBa0IsQ0FBQyxTQUFTLENBQUMsRUFBRSxjQUFjO0tBQ2pEO0lBQ0QsdUJBQXVCLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPLEVBQUUsa0JBQWtCLENBQUMsSUFBSSxDQUFDO0lBQzlFLHFCQUFxQixFQUFFLGtCQUFrQixDQUFDLElBQUk7SUFDOUMsS0FBSyxFQUFFLEtBQUs7SUFDWixrQkFBa0IsRUFBRSxLQUFLO0lBQ3pCLDJCQUEyQixFQUFFLEtBQUs7Q0FDckMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbnRlbnREZW5zaXR5TW9kZSB9IGZyb20gJy4uL3R5cGVzL2NvbnRlbnQtZGVuc2l0eS5tb2RlJztcbmltcG9ydCB7IENvbnRlbnREZW5zaXR5T2JzZXJ2ZXJTZXR0aW5ncyB9IGZyb20gJy4uL2NsYXNzZXMvY29udGVudC1kZW5zaXR5LW9ic2VydmVyLnNldHRpbmdzJztcblxuZXhwb3J0IGNvbnN0IGRlZmF1bHRDb250ZW50RGVuc2l0eU9ic2VydmVyQ29uZmlnczogUmVxdWlyZWQ8Q29udGVudERlbnNpdHlPYnNlcnZlclNldHRpbmdzPiA9IHtcbiAgICBtb2RpZmllcnM6IHtcbiAgICAgICAgW0NvbnRlbnREZW5zaXR5TW9kZS5DT01QQUNUXTogJ2lzLWNvbXBhY3QnLFxuICAgICAgICBbQ29udGVudERlbnNpdHlNb2RlLkNPWlldOiAnaXMtY296eScsXG4gICAgICAgIFtDb250ZW50RGVuc2l0eU1vZGUuQ09OREVOU0VEXTogJ2lzLWNvbmRlbnNlZCdcbiAgICB9LFxuICAgIHN1cHBvcnRlZENvbnRlbnREZW5zaXR5OiBbQ29udGVudERlbnNpdHlNb2RlLkNPTVBBQ1QsIENvbnRlbnREZW5zaXR5TW9kZS5DT1pZXSxcbiAgICBkZWZhdWx0Q29udGVudERlbnNpdHk6IENvbnRlbnREZW5zaXR5TW9kZS5DT1pZLFxuICAgIGRlYnVnOiBmYWxzZSxcbiAgICBhbHdheXNBZGRNb2RpZmllcnM6IGZhbHNlLFxuICAgIHJlc3RyaWN0Q2hpbGRDb250ZW50RGVuc2l0eTogZmFsc2Vcbn07XG4iXX0=
|
|
@@ -15,7 +15,7 @@ export class DialogCloseButtonComponent {
|
|
|
15
15
|
}
|
|
16
16
|
}
|
|
17
17
|
DialogCloseButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: DialogCloseButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
18
|
-
DialogCloseButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.1", type: DialogCloseButtonComponent, selector: "[fd-dialog-close-button]", inputs: { mobile: "mobile", title: "title" }, host: { properties: { "attr.aria-label": "\"close\"", "class.fd-button": "true", "class.
|
|
18
|
+
DialogCloseButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.1", type: DialogCloseButtonComponent, selector: "[fd-dialog-close-button]", inputs: { mobile: "mobile", title: "title" }, host: { properties: { "attr.aria-label": "\"close\"", "class.fd-button": "true", "class.is-compact": "!mobile", "class.fd-button--transparent": "true", "attr.title": "title" } }, ngImport: i0, template: `<fd-icon glyph="decline"></fd-icon><ng-content></ng-content>`, isInline: true, dependencies: [{ kind: "component", type: i1.IconComponent, selector: "fd-icon", inputs: ["glyph", "font", "class", "ariaLabel"] }] });
|
|
19
19
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: DialogCloseButtonComponent, decorators: [{
|
|
20
20
|
type: Component,
|
|
21
21
|
args: [{
|
|
@@ -24,7 +24,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImpor
|
|
|
24
24
|
host: {
|
|
25
25
|
'[attr.aria-label]': '"close"',
|
|
26
26
|
'[class.fd-button]': 'true',
|
|
27
|
-
'[class.
|
|
27
|
+
'[class.is-compact]': '!mobile',
|
|
28
28
|
'[class.fd-button--transparent]': 'true',
|
|
29
29
|
'[attr.title]': 'title'
|
|
30
30
|
},
|
|
@@ -35,4 +35,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImpor
|
|
|
35
35
|
}], title: [{
|
|
36
36
|
type: Input
|
|
37
37
|
}] } });
|
|
38
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
38
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLWNsb3NlLWJ1dHRvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvc3JjL2xpYi9kaWFsb2cvZGlhbG9nLWNsb3NlLWJ1dHRvbi9kaWFsb2ctY2xvc2UtYnV0dG9uLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBRWpEOzs7Ozs7R0FNRztBQWFILE1BQU0sT0FBTywwQkFBMEI7SUFadkM7UUFhSSxrREFBa0Q7UUFFbEQsV0FBTSxHQUFHLEtBQUssQ0FBQztLQUtsQjs7dUhBUlksMEJBQTBCOzJHQUExQiwwQkFBMEIsaVNBRnpCLDhEQUE4RDsyRkFFL0QsMEJBQTBCO2tCQVp0QyxTQUFTO21CQUFDO29CQUNQLDhEQUE4RDtvQkFDOUQsUUFBUSxFQUFFLDBCQUEwQjtvQkFDcEMsSUFBSSxFQUFFO3dCQUNGLG1CQUFtQixFQUFFLFNBQVM7d0JBQzlCLG1CQUFtQixFQUFFLE1BQU07d0JBQzNCLG9CQUFvQixFQUFFLFNBQVM7d0JBQy9CLGdDQUFnQyxFQUFFLE1BQU07d0JBQ3hDLGNBQWMsRUFBRSxPQUFPO3FCQUMxQjtvQkFDRCxRQUFRLEVBQUUsOERBQThEO2lCQUMzRTs4QkFJRyxNQUFNO3NCQURMLEtBQUs7Z0JBS04sS0FBSztzQkFESixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG4vKipcbiAqIERpcmVjdGl2ZSB0aGF0IGFwcGxpZXMgZnVuZGFtZW50YWwgZGlhbG9nIHN0eWxpbmcgdG8gYSBkaWFsb2cgY2xvc2UgYnV0dG9uLlxuICpcbiAqIGBgYGh0bWxcbiAqIDxidXR0b24gZmQtZGlhbG9nLWNsb3NlLWJ1dHRvbj48L2J1dHRvbj5cbiAqIGBgYFxuICovXG5AQ29tcG9uZW50KHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L2NvbXBvbmVudC1zZWxlY3RvclxuICAgIHNlbGVjdG9yOiAnW2ZkLWRpYWxvZy1jbG9zZS1idXR0b25dJyxcbiAgICBob3N0OiB7XG4gICAgICAgICdbYXR0ci5hcmlhLWxhYmVsXSc6ICdcImNsb3NlXCInLFxuICAgICAgICAnW2NsYXNzLmZkLWJ1dHRvbl0nOiAndHJ1ZScsXG4gICAgICAgICdbY2xhc3MuaXMtY29tcGFjdF0nOiAnIW1vYmlsZScsXG4gICAgICAgICdbY2xhc3MuZmQtYnV0dG9uLS10cmFuc3BhcmVudF0nOiAndHJ1ZScsXG4gICAgICAgICdbYXR0ci50aXRsZV0nOiAndGl0bGUnXG4gICAgfSxcbiAgICB0ZW1wbGF0ZTogYDxmZC1pY29uIGdseXBoPVwiZGVjbGluZVwiPjwvZmQtaWNvbj48bmctY29udGVudD48L25nLWNvbnRlbnQ+YFxufSlcbmV4cG9ydCBjbGFzcyBEaWFsb2dDbG9zZUJ1dHRvbkNvbXBvbmVudCB7XG4gICAgLyoqIERpc3BsYXlzIGRpYWxvZyBjbG9zZSBidXR0b24gaW4gbW9iaWxlIG1vZGUgKi9cbiAgICBASW5wdXQoKVxuICAgIG1vYmlsZSA9IGZhbHNlO1xuXG4gICAgLyoqIGFkZCB0aXRsZSBkeW5hbWljYWxseSB0byBhZGQgYSB0b29sdGlwICovXG4gICAgQElucHV0KClcbiAgICB0aXRsZTogc3RyaW5nO1xufVxuIl19
|