@dereekb/dbx-web 2.0.0 → 4.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2020/lib/action/action.confirm.directive.mjs +3 -3
- package/esm2020/lib/action/action.module.mjs +16 -7
- package/esm2020/lib/action/action.progress.component.mjs +20 -0
- package/esm2020/lib/action/index.mjs +2 -1
- package/esm2020/lib/action/key.trigger.directive.mjs +3 -3
- package/esm2020/lib/action/snackbar/action.snackbar.component.mjs +5 -5
- package/esm2020/lib/action/snackbar/action.snackbar.directive.mjs +3 -3
- package/esm2020/lib/action/snackbar/action.snackbar.generator.mjs +5 -5
- package/esm2020/lib/action/snackbar/action.snackbar.module.mjs +4 -4
- package/esm2020/lib/action/snackbar/action.snackbar.service.mjs +3 -3
- package/esm2020/lib/action/transition/action.transition.module.mjs +4 -4
- package/esm2020/lib/action/transition/transition.safety.dialog.component.mjs +4 -4
- package/esm2020/lib/action/transition/transition.safety.directive.mjs +3 -3
- package/esm2020/lib/button/button.component.mjs +31 -12
- package/esm2020/lib/button/button.module.mjs +12 -12
- package/esm2020/lib/button/button.spacer.component.mjs +3 -3
- package/esm2020/lib/button/index.mjs +2 -1
- package/esm2020/lib/button/progress/bar.button.component.mjs +16 -0
- package/esm2020/lib/button/progress/base.progress.button.directive.mjs +104 -0
- package/esm2020/lib/button/progress/button.progress.config.mjs +3 -0
- package/esm2020/lib/button/progress/button.progress.module.mjs +61 -0
- package/esm2020/lib/button/progress/index.mjs +5 -0
- package/esm2020/lib/button/progress/spinner.button.component.mjs +40 -0
- package/esm2020/lib/dbx-web.module.mjs +10 -17
- package/esm2020/lib/error/error.action.directive.mjs +3 -3
- package/esm2020/lib/error/error.component.mjs +5 -5
- package/esm2020/lib/error/error.loading.directive.mjs +3 -3
- package/esm2020/lib/error/error.module.mjs +4 -4
- package/esm2020/lib/interaction/dialog/abstract.dialog.directive.mjs +9 -6
- package/esm2020/lib/interaction/dialog/dialog.action.directive.mjs +41 -0
- package/esm2020/lib/interaction/dialog/dialog.content.component.mjs +4 -4
- package/esm2020/lib/interaction/dialog/dialog.module.mjs +12 -7
- package/esm2020/lib/interaction/dialog/index.mjs +2 -1
- package/esm2020/lib/interaction/filter/filter.module.mjs +9 -9
- package/esm2020/lib/interaction/filter/filter.popover.button.component.mjs +3 -3
- package/esm2020/lib/interaction/filter/filter.popover.button.directive.mjs +3 -3
- package/esm2020/lib/interaction/filter/filter.popover.component.mjs +5 -5
- package/esm2020/lib/interaction/filter/filter.wrapper.component.mjs +3 -3
- package/esm2020/lib/interaction/interaction.module.mjs +4 -4
- package/esm2020/lib/interaction/popover/abstract.popover.directive.mjs +3 -3
- package/esm2020/lib/interaction/popover/abstract.popover.ref.directive.mjs +6 -6
- package/esm2020/lib/interaction/popover/index.mjs +1 -2
- package/esm2020/lib/interaction/popover/popover.action.directive.mjs +18 -56
- package/esm2020/lib/interaction/popover/popover.component.mjs +9 -9
- package/esm2020/lib/interaction/popover/popover.content.component.mjs +3 -3
- package/esm2020/lib/interaction/popover/popover.controls.directive.mjs +3 -3
- package/esm2020/lib/interaction/popover/popover.coordinator.component.mjs +3 -3
- package/esm2020/lib/interaction/popover/popover.coordinator.service.mjs +11 -5
- package/esm2020/lib/interaction/popover/popover.header.component.mjs +3 -3
- package/esm2020/lib/interaction/popover/popover.module.mjs +17 -31
- package/esm2020/lib/interaction/popover/popover.scroll.content.component.mjs +3 -3
- package/esm2020/lib/interaction/popover/popover.service.mjs +3 -3
- package/esm2020/lib/interaction/popup/abstract.popup.directive.mjs +3 -3
- package/esm2020/lib/interaction/popup/popup.component.mjs +9 -9
- package/esm2020/lib/interaction/popup/popup.content.component.mjs +3 -3
- package/esm2020/lib/interaction/popup/popup.controls.buttons.component.mjs +4 -4
- package/esm2020/lib/interaction/popup/popup.controls.component.mjs +3 -3
- package/esm2020/lib/interaction/popup/popup.coordinator.component.mjs +3 -3
- package/esm2020/lib/interaction/popup/popup.coordinator.service.mjs +11 -5
- package/esm2020/lib/interaction/popup/popup.module.mjs +13 -22
- package/esm2020/lib/interaction/popup/popup.service.mjs +3 -3
- package/esm2020/lib/interaction/prompt/prompt.box.component.mjs +3 -3
- package/esm2020/lib/interaction/prompt/prompt.button.confirm.directive.mjs +3 -3
- package/esm2020/lib/interaction/prompt/prompt.component.mjs +3 -3
- package/esm2020/lib/interaction/prompt/prompt.confirm.component.mjs +3 -3
- package/esm2020/lib/interaction/prompt/prompt.confirm.dialog.component.mjs +8 -8
- package/esm2020/lib/interaction/prompt/prompt.confirm.directive.mjs +6 -6
- package/esm2020/lib/interaction/prompt/prompt.module.mjs +9 -9
- package/esm2020/lib/interaction/prompt/prompt.page.component.mjs +3 -3
- package/esm2020/lib/keypress/keydown.listener.directive.mjs +3 -3
- package/esm2020/lib/keypress/keypress.module.mjs +4 -4
- package/esm2020/lib/layout/bar/bar.directive.mjs +3 -3
- package/esm2020/lib/layout/bar/bar.header.component.mjs +3 -3
- package/esm2020/lib/layout/bar/bar.layout.module.mjs +4 -4
- package/esm2020/lib/layout/bar/pagebar.component.mjs +3 -3
- package/esm2020/lib/layout/block/block.layout.module.mjs +9 -9
- package/esm2020/lib/layout/block/two.block.component.mjs +22 -10
- package/esm2020/lib/layout/card/card.box.component.mjs +3 -3
- package/esm2020/lib/layout/card/card.box.container.component.mjs +3 -3
- package/esm2020/lib/layout/card/card.box.layout.module.mjs +4 -4
- package/esm2020/lib/layout/column/column.layout.module.mjs +4 -4
- package/esm2020/lib/layout/column/one/one.column.component.mjs +9 -9
- package/esm2020/lib/layout/column/one/one.column.module.mjs +4 -4
- package/esm2020/lib/layout/column/two/index.mjs +2 -1
- package/esm2020/lib/layout/column/two/two.column.back.directive.mjs +8 -8
- package/esm2020/lib/layout/column/two/two.column.component.mjs +51 -14
- package/esm2020/lib/layout/column/two/two.column.context.directive.mjs +36 -0
- package/esm2020/lib/layout/column/two/two.column.full.left.directive.mjs +8 -8
- package/esm2020/lib/layout/column/two/two.column.head.component.mjs +8 -8
- package/esm2020/lib/layout/column/two/two.column.module.mjs +43 -38
- package/esm2020/lib/layout/column/two/two.column.right.component.mjs +11 -6
- package/esm2020/lib/layout/column/two/two.column.sref.directive.mjs +12 -17
- package/esm2020/lib/layout/column/two/two.column.store.mjs +8 -7
- package/esm2020/lib/layout/compact/compact.directive.mjs +3 -3
- package/esm2020/lib/layout/compact/compact.layout.module.mjs +4 -4
- package/esm2020/lib/layout/compact/compact.store.mjs +3 -3
- package/esm2020/lib/layout/content/content.border.directive.mjs +3 -3
- package/esm2020/lib/layout/content/content.box.directive.mjs +9 -5
- package/esm2020/lib/layout/content/content.container.directive.mjs +4 -4
- package/esm2020/lib/layout/content/content.directive.mjs +3 -3
- package/esm2020/lib/layout/content/content.elevate.directive.mjs +3 -3
- package/esm2020/lib/layout/content/content.layout.module.mjs +4 -4
- package/esm2020/lib/layout/content/content.page.directive.mjs +3 -3
- package/esm2020/lib/layout/flag/flag.component.mjs +3 -3
- package/esm2020/lib/layout/flag/flag.layout.module.mjs +4 -4
- package/esm2020/lib/layout/flag/flag.prompt.component.mjs +3 -3
- package/esm2020/lib/layout/flex/flex.group.directive.mjs +8 -4
- package/esm2020/lib/layout/flex/flex.layout.module.mjs +4 -4
- package/esm2020/lib/layout/flex/flex.size.directive.mjs +3 -3
- package/esm2020/lib/layout/item/item.icon.component.mjs +3 -3
- package/esm2020/lib/layout/item/item.layout.module.mjs +4 -4
- package/esm2020/lib/layout/layout.module.mjs +4 -4
- package/esm2020/lib/layout/list/index.mjs +5 -1
- package/esm2020/lib/layout/list/list.component.mjs +22 -9
- package/esm2020/lib/layout/list/list.content.empty.component.mjs +3 -3
- package/esm2020/lib/layout/list/list.directive.mjs +12 -10
- package/esm2020/lib/layout/list/list.layout.module.mjs +32 -18
- package/esm2020/lib/layout/list/list.view.directive.mjs +11 -4
- package/esm2020/lib/layout/list/list.view.mjs +1 -1
- package/esm2020/lib/layout/list/list.view.selection.directive.mjs +8 -7
- package/esm2020/lib/layout/list/list.view.value.component.mjs +57 -28
- package/esm2020/lib/layout/list/list.view.value.directive.mjs +18 -10
- package/esm2020/lib/layout/list/list.view.value.item.directive.mjs +7 -7
- package/esm2020/lib/layout/list/list.view.value.mjs +36 -24
- package/esm2020/lib/layout/list/list.view.value.modifier.directive.mjs +81 -0
- package/esm2020/lib/layout/list/list.view.value.modifier.mjs +15 -0
- package/esm2020/lib/layout/list/list.view.value.modifier.ripple.directive.mjs +45 -0
- package/esm2020/lib/layout/list/list.view.value.selection.component.mjs +57 -43
- package/esm2020/lib/layout/list/list.wrapper.mjs +13 -0
- package/esm2020/lib/layout/section/section.component.mjs +3 -3
- package/esm2020/lib/layout/section/section.header.component.mjs +3 -3
- package/esm2020/lib/layout/section/section.intro.component.mjs +3 -3
- package/esm2020/lib/layout/section/section.layout.module.mjs +9 -9
- package/esm2020/lib/layout/section/section.page.component.mjs +3 -3
- package/esm2020/lib/layout/section/subsection.component.mjs +3 -3
- package/esm2020/lib/layout/step/step.component.mjs +3 -3
- package/esm2020/lib/layout/step/step.layout.module.mjs +4 -4
- package/esm2020/lib/layout/style/spacer.directive.mjs +3 -3
- package/esm2020/lib/layout/style/style.body.directive.mjs +3 -3
- package/esm2020/lib/layout/style/style.directive.mjs +3 -3
- package/esm2020/lib/layout/style/style.layout.module.mjs +4 -4
- package/esm2020/lib/layout/style/style.service.mjs +6 -4
- package/esm2020/lib/layout/style/style.set.directive.mjs +5 -4
- package/esm2020/lib/layout/text/hint.component.mjs +3 -3
- package/esm2020/lib/layout/text/icon.spacer.component.mjs +3 -3
- package/esm2020/lib/layout/text/label.component.mjs +3 -3
- package/esm2020/lib/layout/text/linkify.component.mjs +3 -3
- package/esm2020/lib/layout/text/note.component.mjs +3 -3
- package/esm2020/lib/layout/text/notice.component.mjs +3 -3
- package/esm2020/lib/layout/text/ok.component.mjs +3 -3
- package/esm2020/lib/layout/text/success.component.mjs +3 -3
- package/esm2020/lib/layout/text/text.chips.component.mjs +3 -3
- package/esm2020/lib/layout/text/text.module.mjs +4 -4
- package/esm2020/lib/layout/text/warn.component.mjs +3 -3
- package/esm2020/lib/loading/basic-loading.component.mjs +3 -3
- package/esm2020/lib/loading/loading-progress.component.mjs +4 -4
- package/esm2020/lib/loading/loading.action.directive.mjs +3 -3
- package/esm2020/lib/loading/loading.component.mjs +3 -3
- package/esm2020/lib/loading/loading.module.mjs +4 -4
- package/esm2020/lib/router/layout/anchor/anchor.component.mjs +9 -5
- package/esm2020/lib/router/layout/anchor/anchor.content.component.mjs +31 -9
- package/esm2020/lib/router/layout/anchor/anchor.icon.component.mjs +3 -3
- package/esm2020/lib/router/layout/anchor/anchor.link.component.mjs +3 -3
- package/esm2020/lib/router/layout/anchor/anchor.module.mjs +10 -10
- package/esm2020/lib/router/layout/anchor/anchor.segue.directive.mjs +4 -4
- package/esm2020/lib/router/layout/anchorlist/anchorlist.component.mjs +5 -5
- package/esm2020/lib/router/layout/anchorlist/anchorlist.module.mjs +10 -10
- package/esm2020/lib/router/layout/index.mjs +2 -1
- package/esm2020/lib/router/layout/layout.module.mjs +23 -19
- package/esm2020/lib/router/layout/list/index.mjs +3 -0
- package/esm2020/lib/router/layout/list/list.module.mjs +21 -0
- package/esm2020/lib/router/layout/list/router.list.directive.mjs +42 -0
- package/esm2020/lib/router/layout/navbar/navbar.component.mjs +4 -4
- package/esm2020/lib/router/layout/navbar/navbar.module.mjs +10 -10
- package/esm2020/lib/router/layout/sidenav/sidenav.button.component.mjs +3 -3
- package/esm2020/lib/router/layout/sidenav/sidenav.component.mjs +3 -3
- package/esm2020/lib/router/layout/sidenav/sidenav.module.mjs +14 -14
- package/esm2020/lib/router/layout/sidenav/sidenav.page.component.mjs +7 -4
- package/esm2020/lib/router/layout/sidenav/sidenav.pagebar.component.mjs +4 -4
- package/esm2020/lib/router/provider/ngrouter/anchor.component.mjs +5 -5
- package/esm2020/lib/router/provider/ngrouter/angular.router.module.mjs +9 -9
- package/esm2020/lib/router/provider/router.provider.config.mjs +1 -1
- package/esm2020/lib/router/provider/uirouter/anchor.component.mjs +5 -5
- package/esm2020/lib/router/provider/uirouter/uirouter.router.module.mjs +9 -9
- package/esm2020/lib/screen/screen.module.mjs +4 -4
- package/esm2020/lib/screen/screen.service.mjs +5 -4
- package/fesm2015/dereekb-dbx-web.mjs +1718 -1110
- package/fesm2015/dereekb-dbx-web.mjs.map +1 -1
- package/fesm2020/dereekb-dbx-web.mjs +1712 -1105
- package/fesm2020/dereekb-dbx-web.mjs.map +1 -1
- package/lib/action/action.module.d.ts +10 -8
- package/lib/action/action.progress.component.d.ts +5 -0
- package/lib/action/index.d.ts +1 -0
- package/lib/action/snackbar/action.snackbar.generator.d.ts +5 -5
- package/lib/button/_button.scss +21 -0
- package/lib/button/button.component.d.ts +7 -3
- package/lib/button/button.module.d.ts +2 -2
- package/lib/button/index.d.ts +1 -0
- package/lib/button/progress/bar.button.component.d.ts +6 -0
- package/lib/button/progress/bar.button.component.scss +23 -0
- package/lib/button/progress/base.progress.button.directive.d.ts +37 -0
- package/lib/button/progress/button.progress.config.d.ts +51 -0
- package/lib/button/progress/button.progress.module.d.ts +17 -0
- package/lib/button/progress/index.d.ts +4 -0
- package/lib/button/progress/spinner.button.component.d.ts +9 -0
- package/lib/button/progress/spinner.button.component.scss +44 -0
- package/lib/dbx-web.module.d.ts +1 -3
- package/lib/interaction/dialog/_dialog.scss +18 -2
- package/lib/interaction/dialog/abstract.dialog.directive.d.ts +2 -1
- package/lib/interaction/dialog/dialog.action.directive.d.ts +21 -0
- package/lib/interaction/dialog/dialog.module.d.ts +4 -3
- package/lib/interaction/dialog/index.d.ts +1 -0
- package/lib/interaction/filter/filter.module.d.ts +1 -1
- package/lib/interaction/filter/filter.popover.component.d.ts +2 -2
- package/lib/interaction/popover/index.d.ts +0 -1
- package/lib/interaction/popover/popover.action.directive.d.ts +14 -23
- package/lib/interaction/popover/popover.component.d.ts +3 -3
- package/lib/interaction/popover/popover.coordinator.service.d.ts +3 -1
- package/lib/interaction/popover/popover.module.d.ts +20 -23
- package/lib/interaction/popup/popup.component.d.ts +3 -3
- package/lib/interaction/popup/popup.coordinator.service.d.ts +3 -1
- package/lib/interaction/popup/popup.module.d.ts +1 -3
- package/lib/interaction/prompt/prompt.confirm.dialog.component.d.ts +3 -3
- package/lib/interaction/prompt/prompt.module.d.ts +1 -1
- package/lib/layout/block/_block.scss +11 -8
- package/lib/layout/block/block.layout.module.d.ts +1 -1
- package/lib/layout/block/two.block.component.d.ts +5 -1
- package/lib/layout/column/_column.scss +119 -3
- package/lib/layout/column/two/index.d.ts +1 -0
- package/lib/layout/column/two/two.column.back.directive.d.ts +4 -4
- package/lib/layout/column/two/two.column.component.d.ts +23 -7
- package/lib/layout/column/two/two.column.context.directive.d.ts +18 -0
- package/lib/layout/column/two/two.column.full.left.directive.d.ts +4 -4
- package/lib/layout/column/two/two.column.head.component.d.ts +3 -3
- package/lib/layout/column/two/two.column.module.d.ts +7 -6
- package/lib/layout/column/two/two.column.right.component.d.ts +6 -4
- package/lib/layout/column/two/two.column.sref.directive.d.ts +6 -7
- package/lib/layout/column/two/two.column.store.d.ts +4 -3
- package/lib/layout/content/_content.scss +25 -3
- package/lib/layout/content/content.box.directive.d.ts +2 -1
- package/lib/layout/content/content.container.directive.d.ts +2 -2
- package/lib/layout/flex/_flex.scss +4 -0
- package/lib/layout/flex/flex.group.directive.d.ts +1 -0
- package/lib/layout/list/index.d.ts +4 -0
- package/lib/layout/list/list.component.d.ts +14 -5
- package/lib/layout/list/list.directive.d.ts +9 -7
- package/lib/layout/list/list.layout.module.d.ts +10 -8
- package/lib/layout/list/list.view.d.ts +11 -1
- package/lib/layout/list/list.view.directive.d.ts +4 -1
- package/lib/layout/list/list.view.selection.directive.d.ts +4 -3
- package/lib/layout/list/list.view.value.component.d.ts +18 -3
- package/lib/layout/list/list.view.value.d.ts +27 -11
- package/lib/layout/list/list.view.value.directive.d.ts +9 -6
- package/lib/layout/list/list.view.value.item.directive.d.ts +4 -4
- package/lib/layout/list/list.view.value.modifier.d.ts +12 -0
- package/lib/layout/list/list.view.value.modifier.directive.d.ts +37 -0
- package/lib/layout/list/list.view.value.modifier.ripple.directive.d.ts +17 -0
- package/lib/layout/list/list.view.value.selection.component.d.ts +10 -11
- package/lib/layout/list/list.wrapper.d.ts +11 -0
- package/lib/layout/section/section.layout.module.d.ts +1 -1
- package/lib/layout/style/_style.scss +12 -1
- package/lib/layout/text/_text.scss +9 -0
- package/lib/router/layout/anchor/_anchor.scss +10 -0
- package/lib/router/layout/anchor/anchor.component.d.ts +5 -4
- package/lib/router/layout/anchor/anchor.content.component.d.ts +14 -3
- package/lib/router/layout/anchor/anchor.module.d.ts +4 -4
- package/lib/router/layout/anchor/anchor.segue.directive.d.ts +2 -2
- package/lib/router/layout/anchorlist/_anchorlist.scss +7 -0
- package/lib/router/layout/anchorlist/anchorlist.module.d.ts +4 -4
- package/lib/router/layout/index.d.ts +1 -0
- package/lib/router/layout/layout.module.d.ts +4 -3
- package/lib/router/layout/list/index.d.ts +2 -0
- package/lib/router/layout/list/list.module.d.ts +7 -0
- package/lib/router/layout/list/router.list.directive.d.ts +17 -0
- package/lib/router/layout/navbar/navbar.component.d.ts +4 -4
- package/lib/router/layout/navbar/navbar.module.d.ts +4 -4
- package/lib/router/layout/sidenav/sidenav.module.d.ts +4 -4
- package/lib/router/layout/sidenav/sidenav.page.component.d.ts +4 -2
- package/lib/router/provider/ngrouter/angular.router.module.d.ts +1 -1
- package/lib/router/provider/router.provider.config.d.ts +2 -2
- package/lib/router/provider/uirouter/uirouter.router.module.d.ts +1 -1
- package/lib/screen/screen.service.d.ts +2 -2
- package/lib/style/_config.scss +7 -1
- package/lib/style/_root-variables.scss +2 -0
- package/lib/style/_variables.scss +4 -0
- package/package.json +25 -45
- package/esm2020/lib/interaction/popover/popover.action.button.directive.mjs +0 -29
- package/lib/interaction/popover/popover.action.button.directive.d.ts +0 -14
- package/lib/layout/column/two.scss +0 -114
|
@@ -9,15 +9,15 @@ export class DbxFlagPromptComponent {
|
|
|
9
9
|
this.color = 'accent';
|
|
10
10
|
}
|
|
11
11
|
}
|
|
12
|
-
DbxFlagPromptComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
13
|
-
DbxFlagPromptComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2
|
|
12
|
+
DbxFlagPromptComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFlagPromptComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
13
|
+
DbxFlagPromptComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: DbxFlagPromptComponent, selector: "dbx-flag-prompt", inputs: { color: "color", text: "text" }, ngImport: i0, template: `
|
|
14
14
|
<dbx-flag [color]="color">
|
|
15
15
|
<span class="dbx-flag-prompt">{{ text }}</span>
|
|
16
16
|
<span class="dbx-flag-spacer"></span>
|
|
17
17
|
<ng-content></ng-content>
|
|
18
18
|
</dbx-flag>
|
|
19
19
|
`, isInline: true, components: [{ type: i1.DbxFlagComponent, selector: "dbx-flag", inputs: ["color"] }] });
|
|
20
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
20
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFlagPromptComponent, decorators: [{
|
|
21
21
|
type: Component,
|
|
22
22
|
args: [{
|
|
23
23
|
selector: 'dbx-flag-prompt',
|
|
@@ -27,13 +27,17 @@ export class DbxFlexGroupDirective extends AbstractSubscriptionDirective {
|
|
|
27
27
|
safeDetectChanges(this.cdRef);
|
|
28
28
|
});
|
|
29
29
|
}
|
|
30
|
+
ngOnDestroy() {
|
|
31
|
+
super.ngOnDestroy();
|
|
32
|
+
this._breakpoint.complete();
|
|
33
|
+
}
|
|
30
34
|
set breakpoint(breakpoint) {
|
|
31
35
|
this._breakpoint.next(breakpoint ?? 'tablet');
|
|
32
36
|
}
|
|
33
37
|
}
|
|
34
|
-
DbxFlexGroupDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
35
|
-
DbxFlexGroupDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2
|
|
36
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
38
|
+
DbxFlexGroupDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFlexGroupDirective, deps: [{ token: i1.DbxScreenMediaService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
39
|
+
DbxFlexGroupDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.2", type: DbxFlexGroupDirective, selector: "[dbxFlexGroup]", inputs: { content: "content", relative: "relative", breakpoint: "breakpoint" }, host: { properties: { "class.dbx-flex-group": "content", "class.dbx-flex-group-small": "small", "class.dbx-flex-group-relative": "relative" } }, usesInheritance: true, ngImport: i0 });
|
|
40
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFlexGroupDirective, decorators: [{
|
|
37
41
|
type: Directive,
|
|
38
42
|
args: [{
|
|
39
43
|
selector: '[dbxFlexGroup]',
|
|
@@ -50,4 +54,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImpor
|
|
|
50
54
|
}], breakpoint: [{
|
|
51
55
|
type: Input
|
|
52
56
|
}] } });
|
|
53
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
57
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmxleC5ncm91cC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtd2ViL3NyYy9saWIvbGF5b3V0L2ZsZXgvZmxleC5ncm91cC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDcEUsT0FBTyxFQUFFLFNBQVMsRUFBRSxpQkFBaUIsRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDNUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxHQUFHLEVBQUUsV0FBVyxFQUFFLG9CQUFvQixFQUFFLEtBQUssRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN0RixPQUFPLEVBQUUsNkJBQTZCLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQzs7O0FBR3JGOztHQUVHO0FBU0gsTUFBTSxPQUFPLHFCQUFzQixTQUFRLDZCQUE2QjtJQWlCdEUsWUFBNkIsc0JBQTZDLEVBQVcsS0FBd0I7UUFDM0csS0FBSyxFQUFFLENBQUM7UUFEbUIsMkJBQXNCLEdBQXRCLHNCQUFzQixDQUF1QjtRQUFXLFVBQUssR0FBTCxLQUFLLENBQW1CO1FBZDdHLFlBQU8sR0FBRyxJQUFJLENBQUM7UUFHZixhQUFRLEdBQUcsS0FBSyxDQUFDO1FBRVQsV0FBTSxHQUFZLEtBQUssQ0FBQztRQUV4QixnQkFBVyxHQUFHLElBQUksZUFBZSxDQUF1QixRQUFRLENBQUMsQ0FBQztRQUNqRSxtQkFBYyxHQUFHLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsb0JBQW9CLEVBQUUsRUFBRSxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQVF0SixDQUFDO0lBTkQsSUFBSSxLQUFLO1FBQ1AsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3JCLENBQUM7SUFNRCxRQUFRO1FBQ04sSUFBSSxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtZQUNoRSxJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztZQUNwQixpQkFBaUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDaEMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRVEsV0FBVztRQUNsQixLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDcEIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUM5QixDQUFDO0lBRUQsSUFDSSxVQUFVLENBQUMsVUFBdUM7UUFDcEQsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsVUFBVSxJQUFJLFFBQVEsQ0FBQyxDQUFDO0lBQ2hELENBQUM7O2tIQXBDVSxxQkFBcUI7c0dBQXJCLHFCQUFxQjsyRkFBckIscUJBQXFCO2tCQVJqQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxnQkFBZ0I7b0JBQzFCLElBQUksRUFBRTt3QkFDSix3QkFBd0IsRUFBRSxTQUFTO3dCQUNuQyw4QkFBOEIsRUFBRSxPQUFPO3dCQUN2QyxpQ0FBaUMsRUFBRSxVQUFVO3FCQUM5QztpQkFDRjs0SUFJQyxPQUFPO3NCQUROLEtBQUs7Z0JBSU4sUUFBUTtzQkFEUCxLQUFLO2dCQTZCRixVQUFVO3NCQURiLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTY3JlZW5NZWRpYVdpZHRoVHlwZSB9IGZyb20gJy4uLy4uL3NjcmVlbi9zY3JlZW4nO1xuaW1wb3J0IHsgRGJ4U2NyZWVuTWVkaWFTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2NyZWVuL3NjcmVlbi5zZXJ2aWNlJztcbmltcG9ydCB7IERpcmVjdGl2ZSwgQ2hhbmdlRGV0ZWN0b3JSZWYsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgbWFwLCBzaGFyZVJlcGxheSwgZGlzdGluY3RVbnRpbENoYW5nZWQsIGRlbGF5IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBBYnN0cmFjdFN1YnNjcmlwdGlvbkRpcmVjdGl2ZSwgc2FmZURldGVjdENoYW5nZXMgfSBmcm9tICdAZGVyZWVrYi9kYngtY29yZSc7XG5pbXBvcnQgeyBNYXliZSB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuXG4vKipcbiAqIFVzZWQgdG8gZGVjbGFyZSBhIGRieEZsZXhHcm91cC5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2RieEZsZXhHcm91cF0nLFxuICBob3N0OiB7XG4gICAgJ1tjbGFzcy5kYngtZmxleC1ncm91cF0nOiAnY29udGVudCcsXG4gICAgJ1tjbGFzcy5kYngtZmxleC1ncm91cC1zbWFsbF0nOiAnc21hbGwnLFxuICAgICdbY2xhc3MuZGJ4LWZsZXgtZ3JvdXAtcmVsYXRpdmVdJzogJ3JlbGF0aXZlJ1xuICB9XG59KVxuZXhwb3J0IGNsYXNzIERieEZsZXhHcm91cERpcmVjdGl2ZSBleHRlbmRzIEFic3RyYWN0U3Vic2NyaXB0aW9uRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0IHtcblxuICBASW5wdXQoKVxuICBjb250ZW50ID0gdHJ1ZTtcblxuICBASW5wdXQoKVxuICByZWxhdGl2ZSA9IGZhbHNlO1xuXG4gIHByaXZhdGUgX3NtYWxsOiBib29sZWFuID0gZmFsc2U7XG5cbiAgcHJpdmF0ZSBfYnJlYWtwb2ludCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8U2NyZWVuTWVkaWFXaWR0aFR5cGU+KCd0YWJsZXQnKTtcbiAgcmVhZG9ubHkgaXNTbWFsbFNjcmVlbiQgPSB0aGlzLl9kYnhTY3JlZW5NZWRpYVNlcnZpY2UuaXNCcmVha3BvaW50QWN0aXZlKHRoaXMuX2JyZWFrcG9pbnQpLnBpcGUobWFwKHggPT4gIXgpLCBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLCBzaGFyZVJlcGxheSgxKSk7XG5cbiAgZ2V0IHNtYWxsKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9zbWFsbDtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgX2RieFNjcmVlbk1lZGlhU2VydmljZTogRGJ4U2NyZWVuTWVkaWFTZXJ2aWNlLCByZWFkb25seSBjZFJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5zdWIgPSB0aGlzLmlzU21hbGxTY3JlZW4kLnBpcGUoZGVsYXkoMCkpLnN1YnNjcmliZSgoc21hbGwpID0+IHtcbiAgICAgIHRoaXMuX3NtYWxsID0gc21hbGw7XG4gICAgICBzYWZlRGV0ZWN0Q2hhbmdlcyh0aGlzLmNkUmVmKTtcbiAgICB9KTtcbiAgfVxuXG4gIG92ZXJyaWRlIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHN1cGVyLm5nT25EZXN0cm95KCk7XG4gICAgdGhpcy5fYnJlYWtwb2ludC5jb21wbGV0ZSgpO1xuICB9XG5cbiAgQElucHV0KClcbiAgc2V0IGJyZWFrcG9pbnQoYnJlYWtwb2ludDogTWF5YmU8U2NyZWVuTWVkaWFXaWR0aFR5cGU+KSB7XG4gICAgdGhpcy5fYnJlYWtwb2ludC5uZXh0KGJyZWFrcG9pbnQgPz8gJ3RhYmxldCcpO1xuICB9XG5cbn1cbiJdfQ==
|
|
@@ -5,14 +5,14 @@ import { DbxFlexSizeDirective } from './flex.size.directive';
|
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
export class DbxFlexLayoutModule {
|
|
7
7
|
}
|
|
8
|
-
DbxFlexLayoutModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
9
|
-
DbxFlexLayoutModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2
|
|
8
|
+
DbxFlexLayoutModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFlexLayoutModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
9
|
+
DbxFlexLayoutModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFlexLayoutModule, declarations: [DbxFlexGroupDirective,
|
|
10
10
|
DbxFlexSizeDirective], imports: [CommonModule], exports: [DbxFlexGroupDirective,
|
|
11
11
|
DbxFlexSizeDirective] });
|
|
12
|
-
DbxFlexLayoutModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2
|
|
12
|
+
DbxFlexLayoutModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFlexLayoutModule, imports: [[
|
|
13
13
|
CommonModule
|
|
14
14
|
]] });
|
|
15
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
15
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFlexLayoutModule, decorators: [{
|
|
16
16
|
type: NgModule,
|
|
17
17
|
args: [{
|
|
18
18
|
imports: [
|
|
@@ -8,9 +8,9 @@ export class DbxFlexSizeDirective {
|
|
|
8
8
|
this.size = 1;
|
|
9
9
|
}
|
|
10
10
|
}
|
|
11
|
-
DbxFlexSizeDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
12
|
-
DbxFlexSizeDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2
|
|
13
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
11
|
+
DbxFlexSizeDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFlexSizeDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
12
|
+
DbxFlexSizeDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.2", type: DbxFlexSizeDirective, selector: "[dbxFlexSize]", inputs: { size: ["dbxFlexSize", "size"] }, host: { properties: { "class": "\"dbx-flex-\" + size" } }, ngImport: i0 });
|
|
13
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFlexSizeDirective, decorators: [{
|
|
14
14
|
type: Directive,
|
|
15
15
|
args: [{
|
|
16
16
|
selector: '[dbxFlexSize]',
|
|
@@ -7,8 +7,8 @@ import * as i2 from "@angular/common";
|
|
|
7
7
|
*/
|
|
8
8
|
export class DbxIconItemComponent {
|
|
9
9
|
}
|
|
10
|
-
DbxIconItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
11
|
-
DbxIconItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2
|
|
10
|
+
DbxIconItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxIconItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
11
|
+
DbxIconItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: DbxIconItemComponent, selector: "dbx-icon-item", inputs: { icon: "icon", header: "header" }, ngImport: i0, template: `
|
|
12
12
|
<div class="dbx-icon-item">
|
|
13
13
|
<div class="left">
|
|
14
14
|
<mat-icon>{{ icon }}</mat-icon>
|
|
@@ -21,7 +21,7 @@ DbxIconItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", v
|
|
|
21
21
|
</div>
|
|
22
22
|
</div>
|
|
23
23
|
`, isInline: true, components: [{ type: i1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
24
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
24
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxIconItemComponent, decorators: [{
|
|
25
25
|
type: Component,
|
|
26
26
|
args: [{
|
|
27
27
|
selector: 'dbx-icon-item',
|
|
@@ -5,14 +5,14 @@ import { DbxIconItemComponent } from './item.icon.component';
|
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
export class DbxItemLayoutModule {
|
|
7
7
|
}
|
|
8
|
-
DbxItemLayoutModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
9
|
-
DbxItemLayoutModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2
|
|
8
|
+
DbxItemLayoutModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxItemLayoutModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
9
|
+
DbxItemLayoutModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxItemLayoutModule, declarations: [DbxIconItemComponent], imports: [CommonModule,
|
|
10
10
|
MatIconModule], exports: [DbxIconItemComponent] });
|
|
11
|
-
DbxItemLayoutModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2
|
|
11
|
+
DbxItemLayoutModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxItemLayoutModule, imports: [[
|
|
12
12
|
CommonModule,
|
|
13
13
|
MatIconModule
|
|
14
14
|
]] });
|
|
15
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
15
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxItemLayoutModule, decorators: [{
|
|
16
16
|
type: NgModule,
|
|
17
17
|
args: [{
|
|
18
18
|
imports: [
|
|
@@ -16,8 +16,8 @@ import { DbxFlexLayoutModule } from './flex/flex.layout.module';
|
|
|
16
16
|
import * as i0 from "@angular/core";
|
|
17
17
|
export class DbxLayoutModule {
|
|
18
18
|
}
|
|
19
|
-
DbxLayoutModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
20
|
-
DbxLayoutModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2
|
|
19
|
+
DbxLayoutModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxLayoutModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
20
|
+
DbxLayoutModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxLayoutModule, exports: [DbxBarLayoutModule,
|
|
21
21
|
DbxBlockLayoutModule,
|
|
22
22
|
DbxCardBoxLayoutModule,
|
|
23
23
|
DbxColumnLayoutModule,
|
|
@@ -31,7 +31,7 @@ DbxLayoutModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version
|
|
|
31
31
|
DbxStepLayoutModule,
|
|
32
32
|
DbxStyleLayoutModule,
|
|
33
33
|
DbxTextModule] });
|
|
34
|
-
DbxLayoutModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2
|
|
34
|
+
DbxLayoutModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxLayoutModule, imports: [DbxBarLayoutModule,
|
|
35
35
|
DbxBlockLayoutModule,
|
|
36
36
|
DbxCardBoxLayoutModule,
|
|
37
37
|
DbxColumnLayoutModule,
|
|
@@ -45,7 +45,7 @@ DbxLayoutModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version
|
|
|
45
45
|
DbxStepLayoutModule,
|
|
46
46
|
DbxStyleLayoutModule,
|
|
47
47
|
DbxTextModule] });
|
|
48
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
48
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxLayoutModule, decorators: [{
|
|
49
49
|
type: NgModule,
|
|
50
50
|
args: [{
|
|
51
51
|
exports: [
|
|
@@ -7,7 +7,11 @@ export * from './list.view.selection.directive';
|
|
|
7
7
|
export * from './list.view.value.component';
|
|
8
8
|
export * from './list.view.value.directive';
|
|
9
9
|
export * from './list.view.value.item.directive';
|
|
10
|
+
export * from './list.view.value.modifier';
|
|
11
|
+
export * from './list.view.value.modifier.directive';
|
|
12
|
+
export * from './list.view.value.modifier.ripple.directive';
|
|
10
13
|
export * from './list.view.value.selection.component';
|
|
11
14
|
export * from './list.view.value';
|
|
12
15
|
export * from './list.view';
|
|
13
|
-
|
|
16
|
+
export * from './list.wrapper';
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtd2ViL3NyYy9saWIvbGF5b3V0L2xpc3QvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxnQ0FBZ0MsQ0FBQztBQUMvQyxjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyxzQkFBc0IsQ0FBQztBQUNyQyxjQUFjLHVCQUF1QixDQUFDO0FBQ3RDLGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMsNkNBQTZDLENBQUM7QUFDNUQsY0FBYyx1Q0FBdUMsQ0FBQztBQUN0RCxjQUFjLG1CQUFtQixDQUFDO0FBQ2xDLGNBQWMsYUFBYSxDQUFDO0FBQzVCLGNBQWMsZ0JBQWdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2xpc3QuY29udGVudC5lbXB0eS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saXN0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpc3QuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbGlzdC5sYXlvdXQubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGlzdC52aWV3LmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpc3Qudmlldy5zZWxlY3Rpb24uZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbGlzdC52aWV3LnZhbHVlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpc3Qudmlldy52YWx1ZS5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9saXN0LnZpZXcudmFsdWUuaXRlbS5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9saXN0LnZpZXcudmFsdWUubW9kaWZpZXInO1xuZXhwb3J0ICogZnJvbSAnLi9saXN0LnZpZXcudmFsdWUubW9kaWZpZXIuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbGlzdC52aWV3LnZhbHVlLm1vZGlmaWVyLnJpcHBsZS5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9saXN0LnZpZXcudmFsdWUuc2VsZWN0aW9uLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpc3Qudmlldy52YWx1ZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpc3Qudmlldyc7XG5leHBvcnQgKiBmcm9tICcuL2xpc3Qud3JhcHBlcic7XG4iXX0=
|
|
@@ -23,16 +23,19 @@ export class DbxListComponent {
|
|
|
23
23
|
this.padded = true;
|
|
24
24
|
this.contentScrolled = new EventEmitter();
|
|
25
25
|
this._disabled = new BehaviorSubject(false);
|
|
26
|
+
this._selectionMode = new BehaviorSubject(undefined);
|
|
26
27
|
this._loadMoreTrigger = new Subject();
|
|
27
28
|
this._scrollTrigger = new Subject();
|
|
28
29
|
this._config = new BehaviorSubject(undefined);
|
|
29
30
|
this._loadMoreSub = new SubscriptionObject();
|
|
30
31
|
this._onClickSub = new SubscriptionObject();
|
|
31
32
|
this._disabledSub = new SubscriptionObject();
|
|
33
|
+
this._selectionModeSub = new SubscriptionObject();
|
|
32
34
|
this._onSelectionChangeSub = new SubscriptionObject();
|
|
33
35
|
this.context = new ListLoadingStateContextInstance({ showLoadingOnNoValue: false });
|
|
34
36
|
this.isEmpty$ = this.context.isEmpty$;
|
|
35
37
|
this.disabled$ = this._disabled.asObservable();
|
|
38
|
+
this.selectionMode$ = this._selectionMode.asObservable();
|
|
36
39
|
this.hideOnEmpty$ = this._config.pipe(filterMaybe(), map(x => Boolean(x.hideOnEmpty)), distinctUntilChanged(), shareReplay(1));
|
|
37
40
|
this.invertedList$ = this._config.pipe(filterMaybe(), map(x => Boolean(x?.throttle)), distinctUntilChanged(), shareReplay(1));
|
|
38
41
|
this.throttleScroll$ = this._config.pipe(map(x => (x?.throttle) ?? this.DEFAULT_THROTTLE_SCROLL), distinctUntilChanged(), shareReplay(1));
|
|
@@ -45,13 +48,14 @@ export class DbxListComponent {
|
|
|
45
48
|
this.injectedComponentConfig$ = this._config.pipe(distinctUntilChanged(), map((config) => {
|
|
46
49
|
let injectedComponentConfig;
|
|
47
50
|
if (config) {
|
|
48
|
-
const { componentClass, init, onClick, onSelectionChange, loadMore } = config;
|
|
51
|
+
const { componentClass, init, onClick, onSelectionChange, loadMore, defaultSelectionMode = 'view' } = config;
|
|
49
52
|
injectedComponentConfig = {
|
|
50
53
|
componentClass: config.componentClass,
|
|
51
54
|
injector: config.injector,
|
|
52
55
|
init: (instance) => {
|
|
53
56
|
// Synchronize disabled
|
|
54
57
|
this._disabledSub.subscription = this.disabled$.subscribe((disabled) => instance.setDisabled(disabled));
|
|
58
|
+
this._selectionModeSub.subscription = this.selectionMode$.subscribe((selectionMode) => instance.setSelectionMode(selectionMode ?? defaultSelectionMode));
|
|
55
59
|
if (init) {
|
|
56
60
|
init(instance);
|
|
57
61
|
}
|
|
@@ -107,6 +111,7 @@ export class DbxListComponent {
|
|
|
107
111
|
this._loadMoreTrigger.complete();
|
|
108
112
|
this._config.complete();
|
|
109
113
|
this._disabled.complete();
|
|
114
|
+
this._selectionMode.complete();
|
|
110
115
|
this._onClickSub.destroy();
|
|
111
116
|
this._loadMoreSub.destroy();
|
|
112
117
|
this._onSelectionChangeSub.destroy();
|
|
@@ -128,6 +133,12 @@ export class DbxListComponent {
|
|
|
128
133
|
set disabled(disabled) {
|
|
129
134
|
this._disabled.next(disabled ?? false);
|
|
130
135
|
}
|
|
136
|
+
get selectionMode() {
|
|
137
|
+
return this._selectionMode.value;
|
|
138
|
+
}
|
|
139
|
+
set selectionMode(selectionMode) {
|
|
140
|
+
this._selectionMode.next(selectionMode);
|
|
141
|
+
}
|
|
131
142
|
getScrollPositionRelativeToBottom() {
|
|
132
143
|
try {
|
|
133
144
|
const element = this.nativeElement;
|
|
@@ -178,14 +189,14 @@ export class DbxListComponent {
|
|
|
178
189
|
}
|
|
179
190
|
}
|
|
180
191
|
}
|
|
181
|
-
DbxListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
182
|
-
DbxListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2
|
|
183
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
192
|
+
DbxListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxListComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
193
|
+
DbxListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: DbxListComponent, selector: "dbx-list", inputs: { padded: "padded", state$: "state$", config: "config", disabled: "disabled", selectionMode: "selectionMode" }, outputs: { contentScrolled: "contentScrolled" }, host: { properties: { "class.dbx-list-padded": "padded" }, classAttribute: "d-block dbx-list" }, ngImport: i0, template: "<dbx-loading [context]=\"context\" [linear]=\"true\"></dbx-loading>\n<div dbx-list-internal-content infinite-scroll [infiniteScrollDistance]=\"(scrollDistance$ | async) ?? DEFAULT_SCROLL_DISTANCE\"\n [infiniteScrollUpDistance]=\"(scrollDistance$ | async) ?? DEFAULT_SCROLL_DISTANCE\" [hide]=\"hideContent$ | async\"\n [infiniteScrollThrottle]=\"(throttleScroll$ | async) ?? DEFAULT_THROTTLE_SCROLL\" [scrollWindow]=\"false\"\n (scrolled)=\"onScrollDown()\" (scrolledUp)=\"onScrollUp()\">\n <ng-content select=\"[top]\"></ng-content>\n <dbx-injection [config]=\"injectedComponentConfig$ | async\"></dbx-injection>\n <ng-content select=\"[bottom]\"></ng-content>\n</div>\n<ng-content *ngIf=\"isEmpty$ | async\" select=\"[empty]\"></ng-content>\n", components: [{ type: i0.forwardRef(function () { return i1.DbxLoadingComponent; }), selector: "dbx-loading", inputs: ["show", "text", "mode", "color", "diameter", "linear", "context", "loading", "error"] }, { type: i0.forwardRef(function () { return i2.DbxInjectionComponent; }), selector: "dbx-injection, [dbxInjection], [dbx-injection]", inputs: ["config", "template"] }], directives: [{ type: i0.forwardRef(function () { return DbxListInternalContentDirective; }), selector: "[dbx-list-internal-content]", inputs: ["hide"] }, { type: i0.forwardRef(function () { return i3.InfiniteScrollDirective; }), selector: "[infiniteScroll], [infinite-scroll], [data-infinite-scroll]", inputs: ["infiniteScrollDistance", "infiniteScrollUpDistance", "infiniteScrollThrottle", "infiniteScrollDisabled", "infiniteScrollContainer", "scrollWindow", "immediateCheck", "horizontal", "alwaysCallback", "fromRoot"], outputs: ["scrolled", "scrolledUp"] }, { type: i0.forwardRef(function () { return i4.NgIf; }), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i0.forwardRef(function () { return i4.AsyncPipe; }) } });
|
|
194
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxListComponent, decorators: [{
|
|
184
195
|
type: Component,
|
|
185
196
|
args: [{ selector: 'dbx-list', host: {
|
|
186
197
|
'class': 'd-block dbx-list',
|
|
187
198
|
'[class.dbx-list-padded]': 'padded'
|
|
188
|
-
}, template: "<dbx-loading [context]=\"context\" [linear]=\"true\"></dbx-loading>\n<div dbx-list-internal-content infinite-scroll [infiniteScrollDistance]=\"(scrollDistance$ | async) ?? DEFAULT_SCROLL_DISTANCE\"\n [infiniteScrollUpDistance]=\"(scrollDistance$ | async) ?? DEFAULT_SCROLL_DISTANCE\" [hide]=\"hideContent$ | async\"\n [infiniteScrollThrottle]=\"(throttleScroll$ | async) ?? DEFAULT_THROTTLE_SCROLL\" [scrollWindow]=\"false\"\n (scrolled)=\"onScrollDown()\" (scrolledUp)=\"onScrollUp()\">\n <ng-content select=\"[top]\"></ng-content>\n <dbx-
|
|
199
|
+
}, template: "<dbx-loading [context]=\"context\" [linear]=\"true\"></dbx-loading>\n<div dbx-list-internal-content infinite-scroll [infiniteScrollDistance]=\"(scrollDistance$ | async) ?? DEFAULT_SCROLL_DISTANCE\"\n [infiniteScrollUpDistance]=\"(scrollDistance$ | async) ?? DEFAULT_SCROLL_DISTANCE\" [hide]=\"hideContent$ | async\"\n [infiniteScrollThrottle]=\"(throttleScroll$ | async) ?? DEFAULT_THROTTLE_SCROLL\" [scrollWindow]=\"false\"\n (scrolled)=\"onScrollDown()\" (scrolledUp)=\"onScrollUp()\">\n <ng-content select=\"[top]\"></ng-content>\n <dbx-injection [config]=\"injectedComponentConfig$ | async\"></dbx-injection>\n <ng-content select=\"[bottom]\"></ng-content>\n</div>\n<ng-content *ngIf=\"isEmpty$ | async\" select=\"[empty]\"></ng-content>\n" }]
|
|
189
200
|
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { padded: [{
|
|
190
201
|
type: Input
|
|
191
202
|
}], contentScrolled: [{
|
|
@@ -196,6 +207,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImpor
|
|
|
196
207
|
type: Input
|
|
197
208
|
}], disabled: [{
|
|
198
209
|
type: Input
|
|
210
|
+
}], selectionMode: [{
|
|
211
|
+
type: Input
|
|
199
212
|
}] } });
|
|
200
213
|
/**
|
|
201
214
|
* Used internally by DbxListComponent
|
|
@@ -212,9 +225,9 @@ export class DbxListInternalContentDirective {
|
|
|
212
225
|
this.parent.contentScrolled.emit(position);
|
|
213
226
|
}
|
|
214
227
|
}
|
|
215
|
-
DbxListInternalContentDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
216
|
-
DbxListInternalContentDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2
|
|
217
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
228
|
+
DbxListInternalContentDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxListInternalContentDirective, deps: [{ token: DbxListComponent }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
229
|
+
DbxListInternalContentDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.2", type: DbxListInternalContentDirective, selector: "[dbx-list-internal-content]", inputs: { hide: "hide" }, host: { listeners: { "scroll": "onScrollEvent($event)" }, properties: { "class.dbx-list-content-hidden": "hide" }, classAttribute: "d-block dbx-list-content" }, ngImport: i0 });
|
|
230
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxListInternalContentDirective, decorators: [{
|
|
218
231
|
type: Directive,
|
|
219
232
|
args: [{
|
|
220
233
|
selector: '[dbx-list-internal-content]',
|
|
@@ -229,4 +242,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImpor
|
|
|
229
242
|
type: HostListener,
|
|
230
243
|
args: ['scroll', ['$event']]
|
|
231
244
|
}] } });
|
|
232
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtd2ViL3NyYy9saWIvbGF5b3V0L2xpc3QvbGlzdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtd2ViL3NyYy9saWIvbGF5b3V0L2xpc3QvbGlzdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxvQkFBb0IsRUFBRSxFQUFFLEVBQUUsVUFBVSxFQUFFLGVBQWUsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzVLLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQWEsVUFBVSxFQUFFLFlBQVksRUFBRSxpQkFBaUIsRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUksT0FBTyxFQUE4QixnQkFBZ0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2pGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSwrQkFBK0IsRUFBb0IsV0FBVyxFQUFVLDhCQUE4QixFQUFpQixZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7OztBQTBEeEw7Ozs7R0FJRztBQVNILE1BQU0sT0FBTyxnQkFBZ0I7SUFpSTNCLFlBQXFCLEtBQXdCO1FBQXhCLFVBQUssR0FBTCxLQUFLLENBQW1CO1FBL0hwQyw0QkFBdUIsR0FBRyxHQUFHLENBQUM7UUFDOUIsNEJBQXVCLEdBQUcsRUFBRSxDQUFDO1FBRXRDOztXQUVHO1FBRUgsV0FBTSxHQUFZLElBQUksQ0FBQztRQUd2QixvQkFBZSxHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7UUFHckMsY0FBUyxH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QVMsQ0FBQztRQUN6QyxJQUFJLENBQUMsTUFBTSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDN0MsQ0FBQzs7NEhBYlUsK0JBQStCLGtCQUtMLGdCQUFnQjtnSEFMMUMsK0JBQStCOzJGQUEvQiwrQkFBK0I7a0JBUDNDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLDZCQUE2QjtvQkFDdkMsSUFBSSxFQUFFO3dCQUNKLE9BQU8sRUFBRSwwQkFBMEI7d0JBQ25DLGlDQUFpQyxFQUFFLE1BQU07cUJBQzFDO2lCQUNGOzBEQU1zQyxnQkFBZ0IsbURBRnJELElBQUk7c0JBREgsS0FBSztnQkFRTixhQUFhO3NCQURaLFlBQVk7dUJBQUMsUUFBUSxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY2F0Y2hFcnJvciwgZmlsdGVyLCBleGhhdXN0TWFwLCBtZXJnZSwgbWFwLCBTdWJqZWN0LCBzd2l0Y2hNYXAsIHNoYXJlUmVwbGF5LCBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgb2YsIE9ic2VydmFibGUsIEJlaGF2aW9yU3ViamVjdCwgZmlyc3QsIHN0YXJ0V2l0aCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgRXZlbnRFbWl0dGVyLCBPdXRwdXQsIE9uRGVzdHJveSwgRWxlbWVudFJlZiwgSG9zdExpc3RlbmVyLCBDaGFuZ2VEZXRlY3RvclJlZiwgRGlyZWN0aXZlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEYnhJbmplY3RlZENvbXBvbmVudENvbmZpZywgdGFwRGV0ZWN0Q2hhbmdlcyB9IGZyb20gJ0BkZXJlZWtiL2RieC1jb3JlJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbk9iamVjdCwgTGlzdExvYWRpbmdTdGF0ZUNvbnRleHRJbnN0YW5jZSwgTGlzdExvYWRpbmdTdGF0ZSwgZmlsdGVyTWF5YmUsIHRhcExvZywgbG9hZGluZ1N0YXRlSGFzRmluaXNoZWRMb2FkaW5nLCBzdWNjZXNzUmVzdWx0LCBiZWdpbkxvYWRpbmcgfSBmcm9tICdAZGVyZWVrYi9yeGpzJztcbmltcG9ydCB7IE1heWJlLCBNaWxsaXNlY29uZHMgfSBmcm9tICdAZGVyZWVrYi91dGlsJztcbmltcG9ydCB7IERieExpc3RWaWV3LCBMaXN0U2VsZWN0aW9uU3RhdGUgfSBmcm9tICcuL2xpc3Qudmlldyc7XG5cbi8qKlxuICogRGlyZWN0aW9uIHRoZSBzY3JvbGwgd2FzIHRyaWdnZXJlZCBtb3ZpbmcuXG4gKi9cbmV4cG9ydCB0eXBlIERieExpc3RTY3JvbGxEaXJlY3Rpb25UcmlnZ2VyID0gJ3VwJyB8ICdkb3duJztcblxuLyoqXG4gKiBVc2VkIHRvIHRyaWdnZXIgdGhlIGxvYWRpbmcgb2YgYWRkaXRpb25hbCBpdGVtcy5cbiAqIFxuICogSWYgYW4gb2JzZXJ2YWJsZSBpcyByZXR1cm5lZCBpdCBpcyB1c2VkIHRvIHRocm90dGxlIHRoZSBsb2FkaW5nIG9mIG1vcmUgaXRlbXMgdW50aWwgaXQgcmV0dXJucy5cbiAqL1xuZXhwb3J0IHR5cGUgRGJ4TGlzdExvYWRNb3JlSGFuZGxlciA9ICgpID0+IE9ic2VydmFibGU8dm9pZD4gfCB2b2lkO1xuXG4vKipcbiAqIERieExpc3RDb21wb25lbnQgY29uZmlndXJhdGlvbi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBEYnhMaXN0Q29uZmlnPFQgPSBhbnksIFYgZXh0ZW5kcyBEYnhMaXN0VmlldzxUPiA9IERieExpc3RWaWV3PFQ+PiBleHRlbmRzIERieEluamVjdGVkQ29tcG9uZW50Q29uZmlnPFY+IHtcblxuICAvKipcbiAgICogV2hldGhlciBvciBub3QgdG8gaGlkZSB0aGUgbGlzdCBjb250ZW50IHdoZW4gaXQgaXMgYW4gZW1wdHkgbGlzdC5cbiAgICovXG4gIGhpZGVPbkVtcHR5PzogYm9vbGVhbjtcblxuICAvKipcbiAgICogV2hldGhlciBvciBub3QgdGhpcyBsaXN0IHNob3VsZCBzY3JvbGwgdXB3YXJkIGZyb20gdGhlIGJvdHRvbSwgbGlrZSBhIG1lc3NhZ2UgbGlzdC5cbiAgICovXG4gIGludmVydGVkTGlzdD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIERpc3RhbmNlIHRvIHNjcm9sbC5cbiAgICovXG4gIHNjcm9sbERpc3RhbmNlPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBOdW1iZXIgb2YgbXMgdG8gdGhyb3R0bGUgc2Nyb2xsaW5nIGV2ZW50cy5cbiAgICovXG4gIHRocm90dGxlPzogTWlsbGlzZWNvbmRzO1xuXG4gIC8qKlxuICAgKiAoT3B0aW9uYWwpIG9uQ2xpY2sgaGFuZGxlclxuICAgKi9cbiAgb25DbGljaz86ICh2YWx1ZTogVCkgPT4gdm9pZDtcblxuICAvKipcbiAgICogKE9wdGlvbmFsKSBvblNlbGVjdGlvbiBoYW5kbGVyXG4gICAqL1xuICBvblNlbGVjdGlvbkNoYW5nZT86IChzZWxlY3Rpb246IExpc3RTZWxlY3Rpb25TdGF0ZTxUPikgPT4gdm9pZDtcblxuICAvKipcbiAgICogKE9wdGlvbmFsKSBoYW5kbGVyIGZ1bmN0aW9uIHRvIGxvYWQgbW9yZSBpdGVtcy5cbiAgICovXG4gIGxvYWRNb3JlPzogRGJ4TGlzdExvYWRNb3JlSGFuZGxlcjtcblxufVxuXG4vKipcbiAqIFVzZWQgdG8gZGlzcGxheSBhIHBvdGVudGlhbGx5IGluZmluaXRlbHkgc2Nyb2xsYWJsZSBsaXN0IG9mIGNvbnRlbnQuXG4gKiBcbiAqIFRoaXMgY29tcG9uZW50IGlzIGdlbmVyYWxseSB3cmFwcGVkIGJ5IGFub3RoZXIgY29tcG9uZW50IHRoYXQgcHJvdmlkZXMgdGhpcyBvbmUgY29uZmlndXJhdGlvbi5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZGJ4LWxpc3QnLFxuICB0ZW1wbGF0ZVVybDogJy4vbGlzdC5jb21wb25lbnQuaHRtbCcsXG4gIGhvc3Q6IHtcbiAgICAnY2xhc3MnOiAnZC1ibG9jayBkYngtbGlzdCcsXG4gICAgJ1tjbGFzcy5kYngtbGlzdC1wYWRkZWRdJzogJ3BhZGRlZCdcbiAgfVxufSlcbmV4cG9ydCBjbGFzcyBEYnhMaXN0Q29tcG9uZW50PFQgPSBhbnksIFYgZXh0ZW5kcyBEYnhMaXN0VmlldzxUPiA9IERieExpc3RWaWV3PFQ+LCBTIGV4dGVuZHMgTGlzdExvYWRpbmdTdGF0ZTxUPiA9IExpc3RMb2FkaW5nU3RhdGU8VD4+IGltcGxlbWVudHMgT25EZXN0cm95IHtcblxuICByZWFkb25seSBERUZBVUxUX1NDUk9MTF9ESVNUQU5DRSA9IDEuNTtcbiAgcmVhZG9ubHkgREVGQVVMVF9USFJPVFRMRV9TQ1JPTEwgPSA1MDtcblxuICAvKipcbiAgICogV2hldGhlciBvciBub3QgdG8gYWRkIGJvdHRvbSBwYWRkaW5nIHRvIHRoZSBsaXN0IGNvbnRlbnQuXG4gICAqL1xuICBASW5wdXQoKVxuICBwYWRkZWQ6IGJvb2xlYW4gPSB0cnVlO1xuXG4gIEBPdXRwdXQoKVxuICBjb250ZW50U2Nyb2xsZWQgPSBuZXcgRXZlbnRFbWl0dGVyPG51bWJlcj4oKTtcblxuICBwcml2YXRlIF9jb250ZW50ITogRGJ4TGlzdEludGVybmFsQ29udGVudERpcmVjdGl2ZTtcbiAgcHJpdmF0ZSBfZGlzYWJsZWQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcblxuICBwcml2YXRlIF9sb2FkTW9yZVRyaWdnZXIgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICBwcml2YXRlIF9zY3JvbGxUcmlnZ2VyID0gbmV3IFN1YmplY3Q8RGJ4TGlzdFNjcm9sbERpcmVjdGlvblRyaWdnZXI+KCk7XG4gIHByaXZhdGUgX2NvbmZpZyA9IG5ldyBCZWhhdmlvclN1YmplY3Q8TWF5YmU8RGJ4TGlzdENvbmZpZzxULCBWPj4+KHVuZGVmaW5lZCk7XG5cbiAgcHJpdmF0ZSBfbG9hZE1vcmVTdWIgPSBuZXcgU3Vic2NyaXB0aW9uT2JqZWN0KCk7XG4gIHByaXZhdGUgX29uQ2xpY2tTdWIgPSBuZXcgU3Vic2NyaXB0aW9uT2JqZWN0KCk7XG4gIHByaXZhdGUgX2Rpc2FibGVkU3ViID0gbmV3IFN1YnNjcmlwdGlvbk9iamVjdCgpO1xuICBwcml2YXRlIF9vblNlbGVjdGlvbkNoYW5nZVN1YiA9IG5ldyBTdWJzY3JpcHRpb25PYmplY3QoKTtcblxuICByZWFkb25seSBjb250ZXh0ID0gbmV3IExpc3RMb2FkaW5nU3RhdGVDb250ZXh0SW5zdGFuY2U8VCwgUz4oeyBzaG93TG9hZGluZ09uTm9WYWx1ZTogZmFsc2UgfSk7XG4gIHJlYWRvbmx5IGlzRW1wdHkkID0gdGhpcy5jb250ZXh0LmlzRW1wdHkkO1xuICByZWFkb25seSBkaXNhYmxlZCQgPSB0aGlzLl9kaXNhYmxlZC5hc09ic2VydmFibGUoKTtcblxuICByZWFkb25seSBoaWRlT25FbXB0eSQ6IE9ic2VydmFibGU8Ym9vbGVhbj4gPSB0aGlzLl9jb25maWcucGlwZShmaWx0ZXJNYXliZSgpLCBtYXAoeCA9PiBCb29sZWFuKHguaGlkZU9uRW1wdHkpKSwgZGlzdGluY3RVbnRpbENoYW5nZWQoKSwgc2hhcmVSZXBsYXkoMSkpO1xuICByZWFkb25seSBpbnZlcnRlZExpc3QkOiBPYnNlcnZhYmxlPGJvb2xlYW4+ID0gdGhpcy5fY29uZmlnLnBpcGUoZmlsdGVyTWF5YmUoKSwgbWFwKHggPT4gQm9vbGVhbih4Py50aHJvdHRsZSkpLCBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLCBzaGFyZVJlcGxheSgxKSk7XG4gIHJlYWRvbmx5IHRocm90dGxlU2Nyb2xsJDogT2JzZXJ2YWJsZTxudW1iZXI+ID0gdGhpcy5fY29uZmlnLnBpcGUobWFwKHggPT4gKHg/LnRocm90dGxlKSA/PyB0aGlzLkRFRkFVTFRfVEhST1RUTEVfU0NST0xMKSwgZGlzdGluY3RVbnRpbENoYW5nZWQoKSwgc2hhcmVSZXBsYXkoMSkpO1xuICByZWFkb25seSBzY3JvbGxEaXN0YW5jZSQ6IE9ic2VydmFibGU8bnVtYmVyPiA9IHRoaXMuX2NvbmZpZy5waXBlKG1hcCh4ID0+ICh4Py5zY3JvbGxEaXN0YW5jZSkgPz8gdGhpcy5ERUZBVUxUX1NDUk9MTF9ESVNUQU5DRSksIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksIHNoYXJlUmVwbGF5KDEpKTtcblxuICByZWFkb25seSBzY3JvbGxMb2FkTW9yZVRyaWdnZXIkID0gdGhpcy5fY29uZmlnLnBpcGUoXG4gICAgc3dpdGNoTWFwKChjb25maWcpID0+IHtcbiAgICAgIGNvbnN0IGxvYWROZXh0RGlyZWN0aW9uID0gY29uZmlnPy5pbnZlcnRlZExpc3QgPyAndXAnIDogJ2Rvd24nO1xuICAgICAgcmV0dXJuIHRoaXMuX3Njcm9sbFRyaWdnZXIucGlwZShmaWx0ZXIoeCA9PiB4ID09PSBsb2FkTmV4dERpcmVjdGlvbikpO1xuICAgIH0pXG4gICk7XG5cbiAgcmVhZG9ubHkgbG9hZE1vcmUkID0gbWVyZ2UodGhpcy5zY3JvbGxMb2FkTW9yZVRyaWdnZXIkLCB0aGlzLl9sb2FkTW9yZVRyaWdnZXIpO1xuXG4gIHJlYWRvbmx5IGluamVjdGVkQ29tcG9uZW50Q29uZmlnJDogT2JzZXJ2YWJsZTxNYXliZTxEYnhJbmplY3RlZENvbXBvbmVudENvbmZpZzxWPj4+ID0gdGhpcy5fY29uZmlnLnBpcGUoXG4gICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICBtYXAoKGNvbmZpZykgPT4ge1xuICAgICAgbGV0IGluamVjdGVkQ29tcG9uZW50Q29uZmlnOiBNYXliZTxEYnhJbmplY3RlZENvbXBvbmVudENvbmZpZzxWPj47XG5cbiAgICAgIGlmIChjb25maWcpIHtcbiAgICAgICAgY29uc3QgeyBjb21wb25lbnRDbGFzcywgaW5pdCwgb25DbGljaywgb25TZWxlY3Rpb25DaGFuZ2UsIGxvYWRNb3JlIH0gPSBjb25maWc7XG5cbiAgICAgICAgaW5qZWN0ZWRDb21wb25lbnRDb25maWcgPSB7XG4gICAgICAgICAgY29tcG9uZW50Q2xhc3M6IGNvbmZpZy5jb21wb25lbnRDbGFzcyxcbiAgICAgICAgICBpbmplY3RvcjogY29uZmlnLmluamVjdG9yLFxuICAgICAgICAgIGluaXQ6IChpbnN0YW5jZTogVikgPT4ge1xuXG4gICAgICAgICAgICAvLyBTeW5jaHJvbml6ZSBkaXNhYmxlZFxuICAgICAgICAgICAgdGhpcy5fZGlzYWJsZWRTdWIuc3Vic2NyaXB0aW9uID0gdGhpcy5kaXNhYmxlZCQuc3Vic2NyaWJlKChkaXNhYmxlZCkgPT4gaW5zdGFuY2Uuc2V0RGlzYWJsZWQoZGlzYWJsZWQpKTtcblxuICAgICAgICAgICAgaWYgKGluaXQpIHtcbiAgICAgICAgICAgICAgaW5pdChpbnN0YW5jZSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGluc3RhbmNlLnNldExpc3RDb250ZXh0KHRoaXMuY29udGV4dCk7XG5cbiAgICAgICAgICAgIGlmIChsb2FkTW9yZSkge1xuICAgICAgICAgICAgICB0aGlzLl9sb2FkTW9yZVN1Yi5zdWJzY3JpcHRpb24gPSB0aGlzLmxvYWRNb3JlJC5waXBlKFxuICAgICAgICAgICAgICAgIC8vIFRocm90dGxlIGFkZGl0aW9uYWwgbG9hZGluZyBjYWxscyB1c2luZyBleGhhdXN0TWFwIHVudGlsIG9ic2VydmFibGUgcmV0dXJucywgaWYgb25lIGlzIHJldHVybmVkLlxuICAgICAgICAgICAgICAgIGV4aGF1c3RNYXAoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgY29uc3QgcmVzdWx0ID0gbG9hZE1vcmUoKTtcbiAgICAgICAgICAgICAgICAgIGxldCBvYnM6IE9ic2VydmFibGU8dm9pZD47XG5cbiAgICAgICAgICAgICAgICAgIGlmIChyZXN1bHQpIHtcbiAgICAgICAgICAgICAgICAgICAgb2JzID0gcmVzdWx0LnBpcGUoY2F0Y2hFcnJvcigoKSA9PiBvZigpKSk7XG4gICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBvYnMgPSBvZigpO1xuICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICByZXR1cm4gb2JzO1xuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICkuc3Vic2NyaWJlKCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmIChvbkNsaWNrKSB7XG4gICAgICAgICAgICAgIGlmIChpbnN0YW5jZS5jbGlja1ZhbHVlKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fb25DbGlja1N1Yi5zdWJzY3JpcHRpb24gPSBpbnN0YW5jZS5jbGlja1ZhbHVlLnN1YnNjcmliZShvbkNsaWNrKTtcbiAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKGBvbkNsaWNrKCkgd2FzIHBhc3NlZCB0byBsaXN0Q29uZmlnLCBidXQgdGFyZ2V0IGNsYXNzICR7Y29tcG9uZW50Q2xhc3N9IGhhcyBubyBjbGlja2VkIGV2ZW50IGVtaXR0ZXIuYCk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKG9uU2VsZWN0aW9uQ2hhbmdlKSB7XG4gICAgICAgICAgICAgIGlmIChpbnN0YW5jZS5zZWxlY3Rpb25DaGFuZ2UpIHtcbiAgICAgICAgICAgICAgICB0aGlzLl9vblNlbGVjdGlvbkNoYW5nZVN1Yi5zdWJzY3JpcHRpb24gPSBpbnN0YW5jZS5zZWxlY3Rpb25DaGFuZ2Uuc3Vic2NyaWJlKG9uU2VsZWN0aW9uQ2hhbmdlKTtcbiAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKGBvblNlbGVjdGlvbkNoYW5nZSgpIHdhcyBwYXNzZWQgdG8gbGlzdENvbmZpZywgYnV0IHRhcmdldCBjbGFzcyAke2NvbXBvbmVudENsYXNzfSBoYXMgbm8gc2VsZWN0aW9uQ2hhbmdlIGV2ZW50IGVtaXR0ZXIuYCk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH07XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBpbmplY3RlZENvbXBvbmVudENvbmZpZztcbiAgICB9KSxcbiAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG5cbiAgcmVhZG9ubHkgaGlkZUNvbnRlbnQkOiBPYnNlcnZhYmxlPGJvb2xlYW4+ID0gdGhpcy5jb250ZXh0LnN0YXRlQ2hhbmdlJC5waXBlKFxuICAgIHN3aXRjaE1hcCgoKSA9PiB0aGlzLmNvbnRleHQuc3RhdGUkLnBpcGUoXG4gICAgICBmaWx0ZXIoKHgpID0+IGxvYWRpbmdTdGF0ZUhhc0ZpbmlzaGVkTG9hZGluZyh4KSksXG4gICAgICBmaXJzdCgpLFxuICAgICAgc3RhcnRXaXRoKGJlZ2luTG9hZGluZygpKVxuICAgICkpLFxuICAgIHN3aXRjaE1hcCgoc3RhdGUpID0+IHtcbiAgICAgIGlmIChzdGF0ZT8ubG9hZGluZykge1xuICAgICAgICByZXR1cm4gb2YodHJ1ZSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gdGhpcy5oaWRlT25FbXB0eSQucGlwZShcbiAgICAgICAgICBzd2l0Y2hNYXAoKGhpZGUpID0+IChoaWRlID09PSBmYWxzZSkgPyBvZihmYWxzZSkgOiB0aGlzLmlzRW1wdHkkKSxcbiAgICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgICAgICAgIHRhcERldGVjdENoYW5nZXModGhpcy5jZFJlZiksXG4gICAgICAgICAgc2hhcmVSZXBsYXkoMSlcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9KVxuICApO1xuXG4gIGNvbnN0cnVjdG9yKHJlYWRvbmx5IGNkUmVmOiBDaGFuZ2VEZXRlY3RvclJlZikgeyB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgZGVsZXRlICh0aGlzIGFzIGFueSkuX2NvbnRlbnQ7ICAvLyByZW1vdmUgcGFyZW50LWNoaWxkIHJlbGF0aW9uLlxuICAgIHRoaXMuX3Njcm9sbFRyaWdnZXIuY29tcGxldGUoKTtcbiAgICB0aGlzLl9sb2FkTW9yZVRyaWdnZXIuY29tcGxldGUoKTtcbiAgICB0aGlzLl9jb25maWcuY29tcGxldGUoKTtcbiAgICB0aGlzLl9kaXNhYmxlZC5jb21wbGV0ZSgpO1xuXG4gICAgdGhpcy5fb25DbGlja1N1Yi5kZXN0cm95KCk7XG4gICAgdGhpcy5fbG9hZE1vcmVTdWIuZGVzdHJveSgpO1xuICAgIHRoaXMuX29uU2VsZWN0aW9uQ2hhbmdlU3ViLmRlc3Ryb3koKTtcbiAgICB0aGlzLl9kaXNhYmxlZFN1Yi5kZXN0cm95KCk7XG5cbiAgICB0aGlzLmNvbnRleHQuZGVzdHJveSgpO1xuICB9XG5cbiAgQElucHV0KClcbiAgZ2V0IHN0YXRlJCgpOiBPYnNlcnZhYmxlPFM+IHtcbiAgICByZXR1cm4gdGhpcy5jb250ZXh0LnN0YXRlJDtcbiAgfVxuXG4gIHNldCBzdGF0ZSQoc3RhdGUkOiBNYXliZTxPYnNlcnZhYmxlPFM+Pikge1xuICAgIHRoaXMuY29udGV4dC5zZXRTdGF0ZU9icyhzdGF0ZSQpO1xuICB9XG5cbiAgQElucHV0KClcbiAgc2V0IGNvbmZpZyhjb25maWc6IE1heWJlPERieExpc3RDb25maWc8VCwgVj4+KSB7XG4gICAgdGhpcy5fY29uZmlnLm5leHQoY29uZmlnKTtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIGdldCBkaXNhYmxlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fZGlzYWJsZWQudmFsdWU7XG4gIH1cblxuICBzZXQgZGlzYWJsZWQoZGlzYWJsZWQ6IE1heWJlPGJvb2xlYW4+KSB7XG4gICAgdGhpcy5fZGlzYWJsZWQubmV4dChkaXNhYmxlZCA/PyBmYWxzZSk7XG4gIH1cblxuICBnZXRTY3JvbGxQb3NpdGlvblJlbGF0aXZlVG9Cb3R0b20oKTogbnVtYmVyIHtcbiAgICB0cnkge1xuICAgICAgY29uc3QgZWxlbWVudCA9IHRoaXMubmF0aXZlRWxlbWVudDtcblxuICAgICAgLy8gQXQgbWF4IHNjcm9sbCwgc2Nyb2xsSGVpZ2h0ID0gc2Nyb2xsVG9wICsgY2xpZW50SGVpZ2h0O1xuICAgICAgY29uc3QgeyBzY3JvbGxUb3AsIHNjcm9sbEhlaWdodCwgY2xpZW50SGVpZ2h0IH0gPSBlbGVtZW50O1xuICAgICAgcmV0dXJuIHNjcm9sbEhlaWdodCAtIChzY3JvbGxUb3AgKyBjbGllbnRIZWlnaHQpO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH1cbiAgfVxuXG4gIGp1bXBUb0JvdHRvbSgpOiB2b2lkIHtcbiAgICB0cnkge1xuICAgICAgdGhpcy5uYXRpdmVFbGVtZW50LnNjcm9sbFRvcCA9IHRoaXMubmF0aXZlRWxlbWVudC5zY3JvbGxIZWlnaHQ7XG4gICAgfSBjYXRjaCAoZXJyKSB7IH1cbiAgfVxuXG4gIGp1bXBUb1Bvc2l0aW9uUmVsYXRpdmVUb0JvdHRvbShwb3M6IG51bWJlcik6IHZvaWQge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBlbGVtZW50ID0gdGhpcy5uYXRpdmVFbGVtZW50O1xuICAgICAgY29uc3QgeyBzY3JvbGxIZWlnaHQsIGNsaWVudEhlaWdodCB9ID0gZWxlbWVudDtcbiAgICAgIGVsZW1lbnQuc2Nyb2xsVG9wID0gc2Nyb2xsSGVpZ2h0IC0gKGNsaWVudEhlaWdodCArIHBvcyk7XG4gICAgfSBjYXRjaCAoZXJyKSB7IH1cbiAgfVxuXG4gIG9uU2Nyb2xsRG93bigpOiB2b2lkIHtcbiAgICB0aGlzLl9zY3JvbGxUcmlnZ2VyLm5leHQoJ2Rvd24nKTtcbiAgfVxuXG4gIG9uU2Nyb2xsVXAoKTogdm9pZCB7XG4gICAgdGhpcy5fc2Nyb2xsVHJpZ2dlci5uZXh0KCd1cCcpO1xuICB9XG5cbiAgbG9hZE1vcmUoKTogdm9pZCB7XG4gICAgdGhpcy5fbG9hZE1vcmVUcmlnZ2VyLm5leHQoKTtcbiAgfVxuXG4gIC8vIE1BUks6IEludGVybmFsXG4gIGdldCBuYXRpdmVFbGVtZW50KCkge1xuICAgIHJldHVybiB0aGlzLl9jb250ZW50LmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcbiAgfVxuXG4gIGdldCBfX2NvbnRlbnQoKTogRGJ4TGlzdEludGVybmFsQ29udGVudERpcmVjdGl2ZSB7XG4gICAgcmV0dXJuIHRoaXMuX2NvbnRlbnQ7XG4gIH1cblxuICBzZXQgX19jb250ZW50KGNvbnRlbnQ6IERieExpc3RJbnRlcm5hbENvbnRlbnREaXJlY3RpdmUpIHtcbiAgICBpZiAodGhpcy5fY29udGVudCA9PSBudWxsKSB7XG4gICAgICB0aGlzLl9jb250ZW50ID0gY29udGVudDtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdBdHRlbXB0ZWQgdG8gc2V0IF9fY29udGVudCBpbiBsaXN0IG91dHNpZGUgb2YgaW5pdGlhbGl6YXRpb24uJyk7XG4gICAgfVxuICB9XG5cbn1cblxuLyoqXG4gKiBVc2VkIGludGVybmFsbHkgYnkgRGJ4TGlzdENvbXBvbmVudFxuICovXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbZGJ4LWxpc3QtaW50ZXJuYWwtY29udGVudF0nLFxuICBob3N0OiB7XG4gICAgJ2NsYXNzJzogJ2QtYmxvY2sgZGJ4LWxpc3QtY29udGVudCcsXG4gICAgJ1tjbGFzcy5kYngtbGlzdC1jb250ZW50LWhpZGRlbl0nOiAnaGlkZSdcbiAgfVxufSlcbmV4cG9ydCBjbGFzcyBEYnhMaXN0SW50ZXJuYWxDb250ZW50RGlyZWN0aXZlIHtcblxuICBASW5wdXQoKVxuICBoaWRlOiBNYXliZTxCb29sZWFuPiA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgcGFyZW50OiBEYnhMaXN0Q29tcG9uZW50LCByZWFkb25seSBlbGVtZW50UmVmOiBFbGVtZW50UmVmKSB7XG4gICAgdGhpcy5wYXJlbnQuX19jb250ZW50ID0gdGhpcztcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ3Njcm9sbCcsIFsnJGV2ZW50J10pXG4gIG9uU2Nyb2xsRXZlbnQoJGV2ZW50OiBhbnkpOiB2b2lkIHtcbiAgICBjb25zdCBwb3NpdGlvbiA9ICRldmVudC50YXJnZXQuc2Nyb2xsVG9wO1xuICAgIHRoaXMucGFyZW50LmNvbnRlbnRTY3JvbGxlZC5lbWl0KHBvc2l0aW9uKTtcbiAgfVxuXG59XG4iLCI8ZGJ4LWxvYWRpbmcgW2NvbnRleHRdPVwiY29udGV4dFwiIFtsaW5lYXJdPVwidHJ1ZVwiPjwvZGJ4LWxvYWRpbmc+XG48ZGl2IGRieC1saXN0LWludGVybmFsLWNvbnRlbnQgaW5maW5pdGUtc2Nyb2xsIFtpbmZpbml0ZVNjcm9sbERpc3RhbmNlXT1cIihzY3JvbGxEaXN0YW5jZSQgfCBhc3luYykgPz8gREVGQVVMVF9TQ1JPTExfRElTVEFOQ0VcIlxuICBbaW5maW5pdGVTY3JvbGxVcERpc3RhbmNlXT1cIihzY3JvbGxEaXN0YW5jZSQgfCBhc3luYykgPz8gREVGQVVMVF9TQ1JPTExfRElTVEFOQ0VcIiBbaGlkZV09XCJoaWRlQ29udGVudCQgfCBhc3luY1wiXG4gIFtpbmZpbml0ZVNjcm9sbFRocm90dGxlXT1cIih0aHJvdHRsZVNjcm9sbCQgfCBhc3luYykgPz8gREVGQVVMVF9USFJPVFRMRV9TQ1JPTExcIiBbc2Nyb2xsV2luZG93XT1cImZhbHNlXCJcbiAgKHNjcm9sbGVkKT1cIm9uU2Nyb2xsRG93bigpXCIgKHNjcm9sbGVkVXApPVwib25TY3JvbGxVcCgpXCI+XG4gIDxuZy1jb250ZW50IHNlbGVjdD1cIlt0b3BdXCI+PC9uZy1jb250ZW50PlxuICA8ZGJ4LWluamVjdGVkLWNvbnRlbnQgW2NvbmZpZ109XCJpbmplY3RlZENvbXBvbmVudENvbmZpZyQgfCBhc3luY1wiPjwvZGJ4LWluamVjdGVkLWNvbnRlbnQ+XG4gIDxuZy1jb250ZW50IHNlbGVjdD1cIltib3R0b21dXCI+PC9uZy1jb250ZW50PlxuPC9kaXY+XG48bmctY29udGVudCAqbmdJZj1cImlzRW1wdHkkIHwgYXN5bmNcIiBzZWxlY3Q9XCJbZW1wdHldXCI+PC9uZy1jb250ZW50PlxuIl19
|
|
245
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtd2ViL3NyYy9saWIvbGF5b3V0L2xpc3QvbGlzdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtd2ViL3NyYy9saWIvbGF5b3V0L2xpc3QvbGlzdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxvQkFBb0IsRUFBRSxFQUFFLEVBQUUsVUFBVSxFQUFFLGVBQWUsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzVLLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQWEsVUFBVSxFQUFFLFlBQVksRUFBRSxpQkFBaUIsRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUksT0FBTyxFQUErQixnQkFBZ0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2xGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSwrQkFBK0IsRUFBb0IsV0FBVyxFQUFVLDhCQUE4QixFQUFpQixZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7OztBQStEeEw7Ozs7R0FJRztBQVNILE1BQU0sT0FBTyxnQkFBZ0I7SUFxSTNCLFlBQXFCLEtBQXdCO1FBQXhCLFVBQUssR0FBTCxLQUFLLENBQW1CO1FBbklwQyw0QkFBdUIsR0FBRyxHQUFHLENBQUM7UUFDOUIsNEJBQXVCLEdBQUcsRUFBRSxDQUFDO1FBRXRDOztXQUVHO1FBRUgsV0FBTSxHQUFZLElBQUksQ0FBQztRQUd2QixvQkFBZSxHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7UUFHckMsY0FBUyxH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Y2F0Y2hFcnJvciwgZmlsdGVyLCBleGhhdXN0TWFwLCBtZXJnZSwgbWFwLCBTdWJqZWN0LCBzd2l0Y2hNYXAsIHNoYXJlUmVwbGF5LCBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgb2YsIE9ic2VydmFibGUsIEJlaGF2aW9yU3ViamVjdCwgZmlyc3QsIHN0YXJ0V2l0aCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgRXZlbnRFbWl0dGVyLCBPdXRwdXQsIE9uRGVzdHJveSwgRWxlbWVudFJlZiwgSG9zdExpc3RlbmVyLCBDaGFuZ2VEZXRlY3RvclJlZiwgRGlyZWN0aXZlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEYnhJbmplY3Rpb25Db21wb25lbnRDb25maWcsIHRhcERldGVjdENoYW5nZXMgfSBmcm9tICdAZGVyZWVrYi9kYngtY29yZSc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb25PYmplY3QsIExpc3RMb2FkaW5nU3RhdGVDb250ZXh0SW5zdGFuY2UsIExpc3RMb2FkaW5nU3RhdGUsIGZpbHRlck1heWJlLCB0YXBMb2csIGxvYWRpbmdTdGF0ZUhhc0ZpbmlzaGVkTG9hZGluZywgc3VjY2Vzc1Jlc3VsdCwgYmVnaW5Mb2FkaW5nIH0gZnJvbSAnQGRlcmVla2Ivcnhqcyc7XG5pbXBvcnQgeyBNYXliZSwgTWlsbGlzZWNvbmRzIH0gZnJvbSAnQGRlcmVla2IvdXRpbCc7XG5pbXBvcnQgeyBEYnhMaXN0U2VsZWN0aW9uTW9kZSwgRGJ4TGlzdFZpZXcsIExpc3RTZWxlY3Rpb25TdGF0ZSB9IGZyb20gJy4vbGlzdC52aWV3JztcblxuLyoqXG4gKiBEaXJlY3Rpb24gdGhlIHNjcm9sbCB3YXMgdHJpZ2dlcmVkIG1vdmluZy5cbiAqL1xuZXhwb3J0IHR5cGUgRGJ4TGlzdFNjcm9sbERpcmVjdGlvblRyaWdnZXIgPSAndXAnIHwgJ2Rvd24nO1xuXG4vKipcbiAqIFVzZWQgdG8gdHJpZ2dlciB0aGUgbG9hZGluZyBvZiBhZGRpdGlvbmFsIGl0ZW1zLlxuICogXG4gKiBJZiBhbiBvYnNlcnZhYmxlIGlzIHJldHVybmVkIGl0IGlzIHVzZWQgdG8gdGhyb3R0bGUgdGhlIGxvYWRpbmcgb2YgbW9yZSBpdGVtcyB1bnRpbCBpdCByZXR1cm5zLlxuICovXG5leHBvcnQgdHlwZSBEYnhMaXN0TG9hZE1vcmVIYW5kbGVyID0gKCkgPT4gT2JzZXJ2YWJsZTx2b2lkPiB8IHZvaWQ7XG5cbi8qKlxuICogRGJ4TGlzdENvbXBvbmVudCBjb25maWd1cmF0aW9uLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIERieExpc3RDb25maWc8VCA9IGFueSwgViBleHRlbmRzIERieExpc3RWaWV3PFQ+ID0gRGJ4TGlzdFZpZXc8VD4+IGV4dGVuZHMgRGJ4SW5qZWN0aW9uQ29tcG9uZW50Q29uZmlnPFY+IHtcblxuICAvKipcbiAgICogV2hldGhlciBvciBub3QgdG8gaGlkZSB0aGUgbGlzdCBjb250ZW50IHdoZW4gaXQgaXMgYW4gZW1wdHkgbGlzdC5cbiAgICovXG4gIGhpZGVPbkVtcHR5PzogYm9vbGVhbjtcblxuICAvKipcbiAgICogV2hldGhlciBvciBub3QgdGhpcyBsaXN0IHNob3VsZCBzY3JvbGwgdXB3YXJkIGZyb20gdGhlIGJvdHRvbSwgbGlrZSBhIG1lc3NhZ2UgbGlzdC5cbiAgICovXG4gIGludmVydGVkTGlzdD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIERpc3RhbmNlIHRvIHNjcm9sbC5cbiAgICovXG4gIHNjcm9sbERpc3RhbmNlPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBOdW1iZXIgb2YgbXMgdG8gdGhyb3R0bGUgc2Nyb2xsaW5nIGV2ZW50cy5cbiAgICovXG4gIHRocm90dGxlPzogTWlsbGlzZWNvbmRzO1xuXG4gIC8qKlxuICAgKiAoT3B0aW9uYWwpIG9uQ2xpY2sgaGFuZGxlclxuICAgKi9cbiAgb25DbGljaz86ICh2YWx1ZTogVCkgPT4gdm9pZDtcblxuICAvKipcbiAgICogKE9wdGlvbmFsKSBvblNlbGVjdGlvbiBoYW5kbGVyXG4gICAqL1xuICBvblNlbGVjdGlvbkNoYW5nZT86IChzZWxlY3Rpb246IExpc3RTZWxlY3Rpb25TdGF0ZTxUPikgPT4gdm9pZDtcblxuICAvKipcbiAgICogKE9wdGlvbmFsKSBoYW5kbGVyIGZ1bmN0aW9uIHRvIGxvYWQgbW9yZSBpdGVtcy5cbiAgICovXG4gIGxvYWRNb3JlPzogRGJ4TGlzdExvYWRNb3JlSGFuZGxlcjtcblxuICAvKipcbiAgICogRGVmYXVsdCBzZWxlY3Rpb24gbGlzdCB2YWx1ZS4gSWYgbm90IGRlZmluZWQsIHdpbGwgZGVmYXVsdCB0byAndmlldycuXG4gICAqL1xuICBkZWZhdWx0U2VsZWN0aW9uTW9kZT86IE1heWJlPERieExpc3RTZWxlY3Rpb25Nb2RlPjtcblxufVxuXG4vKipcbiAqIFVzZWQgdG8gZGlzcGxheSBhIHBvdGVudGlhbGx5IGluZmluaXRlbHkgc2Nyb2xsYWJsZSBsaXN0IG9mIGNvbnRlbnQuXG4gKiBcbiAqIFRoaXMgY29tcG9uZW50IGlzIGdlbmVyYWxseSB3cmFwcGVkIGJ5IGFub3RoZXIgY29tcG9uZW50IHRoYXQgcHJvdmlkZXMgdGhpcyBvbmUgY29uZmlndXJhdGlvbi5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZGJ4LWxpc3QnLFxuICB0ZW1wbGF0ZVVybDogJy4vbGlzdC5jb21wb25lbnQuaHRtbCcsXG4gIGhvc3Q6IHtcbiAgICAnY2xhc3MnOiAnZC1ibG9jayBkYngtbGlzdCcsXG4gICAgJ1tjbGFzcy5kYngtbGlzdC1wYWRkZWRdJzogJ3BhZGRlZCdcbiAgfVxufSlcbmV4cG9ydCBjbGFzcyBEYnhMaXN0Q29tcG9uZW50PFQgPSBhbnksIFYgZXh0ZW5kcyBEYnhMaXN0VmlldzxUPiA9IERieExpc3RWaWV3PFQ+LCBTIGV4dGVuZHMgTGlzdExvYWRpbmdTdGF0ZTxUPiA9IExpc3RMb2FkaW5nU3RhdGU8VD4+IGltcGxlbWVudHMgT25EZXN0cm95IHtcblxuICByZWFkb25seSBERUZBVUxUX1NDUk9MTF9ESVNUQU5DRSA9IDEuNTtcbiAgcmVhZG9ubHkgREVGQVVMVF9USFJPVFRMRV9TQ1JPTEwgPSA1MDtcblxuICAvKipcbiAgICogV2hldGhlciBvciBub3QgdG8gYWRkIGJvdHRvbSBwYWRkaW5nIHRvIHRoZSBsaXN0IGNvbnRlbnQuXG4gICAqL1xuICBASW5wdXQoKVxuICBwYWRkZWQ6IGJvb2xlYW4gPSB0cnVlO1xuXG4gIEBPdXRwdXQoKVxuICBjb250ZW50U2Nyb2xsZWQgPSBuZXcgRXZlbnRFbWl0dGVyPG51bWJlcj4oKTtcblxuICBwcml2YXRlIF9jb250ZW50ITogRGJ4TGlzdEludGVybmFsQ29udGVudERpcmVjdGl2ZTtcbiAgcHJpdmF0ZSBfZGlzYWJsZWQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcbiAgcHJpdmF0ZSBfc2VsZWN0aW9uTW9kZSA9IG5ldyBCZWhhdmlvclN1YmplY3Q8TWF5YmU8RGJ4TGlzdFNlbGVjdGlvbk1vZGU+Pih1bmRlZmluZWQpO1xuXG4gIHByaXZhdGUgX2xvYWRNb3JlVHJpZ2dlciA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG4gIHByaXZhdGUgX3Njcm9sbFRyaWdnZXIgPSBuZXcgU3ViamVjdDxEYnhMaXN0U2Nyb2xsRGlyZWN0aW9uVHJpZ2dlcj4oKTtcbiAgcHJpdmF0ZSBfY29uZmlnID0gbmV3IEJlaGF2aW9yU3ViamVjdDxNYXliZTxEYnhMaXN0Q29uZmlnPFQsIFY+Pj4odW5kZWZpbmVkKTtcblxuICBwcml2YXRlIF9sb2FkTW9yZVN1YiA9IG5ldyBTdWJzY3JpcHRpb25PYmplY3QoKTtcbiAgcHJpdmF0ZSBfb25DbGlja1N1YiA9IG5ldyBTdWJzY3JpcHRpb25PYmplY3QoKTtcbiAgcHJpdmF0ZSBfZGlzYWJsZWRTdWIgPSBuZXcgU3Vic2NyaXB0aW9uT2JqZWN0KCk7XG4gIHByaXZhdGUgX3NlbGVjdGlvbk1vZGVTdWIgPSBuZXcgU3Vic2NyaXB0aW9uT2JqZWN0KCk7XG4gIHByaXZhdGUgX29uU2VsZWN0aW9uQ2hhbmdlU3ViID0gbmV3IFN1YnNjcmlwdGlvbk9iamVjdCgpO1xuXG4gIHJlYWRvbmx5IGNvbnRleHQgPSBuZXcgTGlzdExvYWRpbmdTdGF0ZUNvbnRleHRJbnN0YW5jZTxULCBTPih7IHNob3dMb2FkaW5nT25Ob1ZhbHVlOiBmYWxzZSB9KTtcbiAgcmVhZG9ubHkgaXNFbXB0eSQgPSB0aGlzLmNvbnRleHQuaXNFbXB0eSQ7XG4gIHJlYWRvbmx5IGRpc2FibGVkJCA9IHRoaXMuX2Rpc2FibGVkLmFzT2JzZXJ2YWJsZSgpO1xuICByZWFkb25seSBzZWxlY3Rpb25Nb2RlJCA9IHRoaXMuX3NlbGVjdGlvbk1vZGUuYXNPYnNlcnZhYmxlKCk7XG5cbiAgcmVhZG9ubHkgaGlkZU9uRW1wdHkkOiBPYnNlcnZhYmxlPGJvb2xlYW4+ID0gdGhpcy5fY29uZmlnLnBpcGUoZmlsdGVyTWF5YmUoKSwgbWFwKHggPT4gQm9vbGVhbih4LmhpZGVPbkVtcHR5KSksIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksIHNoYXJlUmVwbGF5KDEpKTtcbiAgcmVhZG9ubHkgaW52ZXJ0ZWRMaXN0JDogT2JzZXJ2YWJsZTxib29sZWFuPiA9IHRoaXMuX2NvbmZpZy5waXBlKGZpbHRlck1heWJlKCksIG1hcCh4ID0+IEJvb2xlYW4oeD8udGhyb3R0bGUpKSwgZGlzdGluY3RVbnRpbENoYW5nZWQoKSwgc2hhcmVSZXBsYXkoMSkpO1xuICByZWFkb25seSB0aHJvdHRsZVNjcm9sbCQ6IE9ic2VydmFibGU8bnVtYmVyPiA9IHRoaXMuX2NvbmZpZy5waXBlKG1hcCh4ID0+ICh4Py50aHJvdHRsZSkgPz8gdGhpcy5ERUZBVUxUX1RIUk9UVExFX1NDUk9MTCksIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksIHNoYXJlUmVwbGF5KDEpKTtcbiAgcmVhZG9ubHkgc2Nyb2xsRGlzdGFuY2UkOiBPYnNlcnZhYmxlPG51bWJlcj4gPSB0aGlzLl9jb25maWcucGlwZShtYXAoeCA9PiAoeD8uc2Nyb2xsRGlzdGFuY2UpID8/IHRoaXMuREVGQVVMVF9TQ1JPTExfRElTVEFOQ0UpLCBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLCBzaGFyZVJlcGxheSgxKSk7XG5cbiAgcmVhZG9ubHkgc2Nyb2xsTG9hZE1vcmVUcmlnZ2VyJCA9IHRoaXMuX2NvbmZpZy5waXBlKFxuICAgIHN3aXRjaE1hcCgoY29uZmlnKSA9PiB7XG4gICAgICBjb25zdCBsb2FkTmV4dERpcmVjdGlvbiA9IGNvbmZpZz8uaW52ZXJ0ZWRMaXN0ID8gJ3VwJyA6ICdkb3duJztcbiAgICAgIHJldHVybiB0aGlzLl9zY3JvbGxUcmlnZ2VyLnBpcGUoZmlsdGVyKHggPT4geCA9PT0gbG9hZE5leHREaXJlY3Rpb24pKTtcbiAgICB9KVxuICApO1xuXG4gIHJlYWRvbmx5IGxvYWRNb3JlJCA9IG1lcmdlKHRoaXMuc2Nyb2xsTG9hZE1vcmVUcmlnZ2VyJCwgdGhpcy5fbG9hZE1vcmVUcmlnZ2VyKTtcblxuICByZWFkb25seSBpbmplY3RlZENvbXBvbmVudENvbmZpZyQ6IE9ic2VydmFibGU8TWF5YmU8RGJ4SW5qZWN0aW9uQ29tcG9uZW50Q29uZmlnPFY+Pj4gPSB0aGlzLl9jb25maWcucGlwZShcbiAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgIG1hcCgoY29uZmlnKSA9PiB7XG4gICAgICBsZXQgaW5qZWN0ZWRDb21wb25lbnRDb25maWc6IE1heWJlPERieEluamVjdGlvbkNvbXBvbmVudENvbmZpZzxWPj47XG5cbiAgICAgIGlmIChjb25maWcpIHtcbiAgICAgICAgY29uc3QgeyBjb21wb25lbnRDbGFzcywgaW5pdCwgb25DbGljaywgb25TZWxlY3Rpb25DaGFuZ2UsIGxvYWRNb3JlLCBkZWZhdWx0U2VsZWN0aW9uTW9kZSA9ICd2aWV3JyB9ID0gY29uZmlnO1xuXG4gICAgICAgIGluamVjdGVkQ29tcG9uZW50Q29uZmlnID0ge1xuICAgICAgICAgIGNvbXBvbmVudENsYXNzOiBjb25maWcuY29tcG9uZW50Q2xhc3MsXG4gICAgICAgICAgaW5qZWN0b3I6IGNvbmZpZy5pbmplY3RvcixcbiAgICAgICAgICBpbml0OiAoaW5zdGFuY2U6IFYpID0+IHtcblxuICAgICAgICAgICAgLy8gU3luY2hyb25pemUgZGlzYWJsZWRcbiAgICAgICAgICAgIHRoaXMuX2Rpc2FibGVkU3ViLnN1YnNjcmlwdGlvbiA9IHRoaXMuZGlzYWJsZWQkLnN1YnNjcmliZSgoZGlzYWJsZWQpID0+IGluc3RhbmNlLnNldERpc2FibGVkKGRpc2FibGVkKSk7XG4gICAgICAgICAgICB0aGlzLl9zZWxlY3Rpb25Nb2RlU3ViLnN1YnNjcmlwdGlvbiA9IHRoaXMuc2VsZWN0aW9uTW9kZSQuc3Vic2NyaWJlKChzZWxlY3Rpb25Nb2RlKSA9PiBpbnN0YW5jZS5zZXRTZWxlY3Rpb25Nb2RlKHNlbGVjdGlvbk1vZGUgPz8gZGVmYXVsdFNlbGVjdGlvbk1vZGUpKTtcblxuICAgICAgICAgICAgaWYgKGluaXQpIHtcbiAgICAgICAgICAgICAgaW5pdChpbnN0YW5jZSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGluc3RhbmNlLnNldExpc3RDb250ZXh0KHRoaXMuY29udGV4dCk7XG5cbiAgICAgICAgICAgIGlmIChsb2FkTW9yZSkge1xuICAgICAgICAgICAgICB0aGlzLl9sb2FkTW9yZVN1Yi5zdWJzY3JpcHRpb24gPSB0aGlzLmxvYWRNb3JlJC5waXBlKFxuICAgICAgICAgICAgICAgIC8vIFRocm90dGxlIGFkZGl0aW9uYWwgbG9hZGluZyBjYWxscyB1c2luZyBleGhhdXN0TWFwIHVudGlsIG9ic2VydmFibGUgcmV0dXJucywgaWYgb25lIGlzIHJldHVybmVkLlxuICAgICAgICAgICAgICAgIGV4aGF1c3RNYXAoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgY29uc3QgcmVzdWx0ID0gbG9hZE1vcmUoKTtcbiAgICAgICAgICAgICAgICAgIGxldCBvYnM6IE9ic2VydmFibGU8dm9pZD47XG5cbiAgICAgICAgICAgICAgICAgIGlmIChyZXN1bHQpIHtcbiAgICAgICAgICAgICAgICAgICAgb2JzID0gcmVzdWx0LnBpcGUoY2F0Y2hFcnJvcigoKSA9PiBvZigpKSk7XG4gICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBvYnMgPSBvZigpO1xuICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICByZXR1cm4gb2JzO1xuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICkuc3Vic2NyaWJlKCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmIChvbkNsaWNrKSB7XG4gICAgICAgICAgICAgIGlmIChpbnN0YW5jZS5jbGlja1ZhbHVlKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fb25DbGlja1N1Yi5zdWJzY3JpcHRpb24gPSBpbnN0YW5jZS5jbGlja1ZhbHVlLnN1YnNjcmliZShvbkNsaWNrKTtcbiAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKGBvbkNsaWNrKCkgd2FzIHBhc3NlZCB0byBsaXN0Q29uZmlnLCBidXQgdGFyZ2V0IGNsYXNzICR7Y29tcG9uZW50Q2xhc3N9IGhhcyBubyBjbGlja2VkIGV2ZW50IGVtaXR0ZXIuYCk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKG9uU2VsZWN0aW9uQ2hhbmdlKSB7XG4gICAgICAgICAgICAgIGlmIChpbnN0YW5jZS5zZWxlY3Rpb25DaGFuZ2UpIHtcbiAgICAgICAgICAgICAgICB0aGlzLl9vblNlbGVjdGlvbkNoYW5nZVN1Yi5zdWJzY3JpcHRpb24gPSBpbnN0YW5jZS5zZWxlY3Rpb25DaGFuZ2Uuc3Vic2NyaWJlKG9uU2VsZWN0aW9uQ2hhbmdlKTtcbiAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKGBvblNlbGVjdGlvbkNoYW5nZSgpIHdhcyBwYXNzZWQgdG8gbGlzdENvbmZpZywgYnV0IHRhcmdldCBjbGFzcyAke2NvbXBvbmVudENsYXNzfSBoYXMgbm8gc2VsZWN0aW9uQ2hhbmdlIGV2ZW50IGVtaXR0ZXIuYCk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH07XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBpbmplY3RlZENvbXBvbmVudENvbmZpZztcbiAgICB9KSxcbiAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG5cbiAgcmVhZG9ubHkgaGlkZUNvbnRlbnQkOiBPYnNlcnZhYmxlPGJvb2xlYW4+ID0gdGhpcy5jb250ZXh0LnN0YXRlQ2hhbmdlJC5waXBlKFxuICAgIHN3aXRjaE1hcCgoKSA9PiB0aGlzLmNvbnRleHQuc3RhdGUkLnBpcGUoXG4gICAgICBmaWx0ZXIoKHgpID0+IGxvYWRpbmdTdGF0ZUhhc0ZpbmlzaGVkTG9hZGluZyh4KSksXG4gICAgICBmaXJzdCgpLFxuICAgICAgc3RhcnRXaXRoKGJlZ2luTG9hZGluZygpKVxuICAgICkpLFxuICAgIHN3aXRjaE1hcCgoc3RhdGUpID0+IHtcbiAgICAgIGlmIChzdGF0ZT8ubG9hZGluZykge1xuICAgICAgICByZXR1cm4gb2YodHJ1ZSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gdGhpcy5oaWRlT25FbXB0eSQucGlwZShcbiAgICAgICAgICBzd2l0Y2hNYXAoKGhpZGUpID0+IChoaWRlID09PSBmYWxzZSkgPyBvZihmYWxzZSkgOiB0aGlzLmlzRW1wdHkkKSxcbiAgICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgICAgICAgIHRhcERldGVjdENoYW5nZXModGhpcy5jZFJlZiksXG4gICAgICAgICAgc2hhcmVSZXBsYXkoMSlcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9KVxuICApO1xuXG4gIGNvbnN0cnVjdG9yKHJlYWRvbmx5IGNkUmVmOiBDaGFuZ2VEZXRlY3RvclJlZikgeyB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgZGVsZXRlICh0aGlzIGFzIGFueSkuX2NvbnRlbnQ7ICAvLyByZW1vdmUgcGFyZW50LWNoaWxkIHJlbGF0aW9uLlxuICAgIHRoaXMuX3Njcm9sbFRyaWdnZXIuY29tcGxldGUoKTtcbiAgICB0aGlzLl9sb2FkTW9yZVRyaWdnZXIuY29tcGxldGUoKTtcbiAgICB0aGlzLl9jb25maWcuY29tcGxldGUoKTtcbiAgICB0aGlzLl9kaXNhYmxlZC5jb21wbGV0ZSgpO1xuICAgIHRoaXMuX3NlbGVjdGlvbk1vZGUuY29tcGxldGUoKTtcblxuICAgIHRoaXMuX29uQ2xpY2tTdWIuZGVzdHJveSgpO1xuICAgIHRoaXMuX2xvYWRNb3JlU3ViLmRlc3Ryb3koKTtcbiAgICB0aGlzLl9vblNlbGVjdGlvbkNoYW5nZVN1Yi5kZXN0cm95KCk7XG4gICAgdGhpcy5fZGlzYWJsZWRTdWIuZGVzdHJveSgpO1xuXG4gICAgdGhpcy5jb250ZXh0LmRlc3Ryb3koKTtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIGdldCBzdGF0ZSQoKTogT2JzZXJ2YWJsZTxTPiB7XG4gICAgcmV0dXJuIHRoaXMuY29udGV4dC5zdGF0ZSQ7XG4gIH1cblxuICBzZXQgc3RhdGUkKHN0YXRlJDogTWF5YmU8T2JzZXJ2YWJsZTxTPj4pIHtcbiAgICB0aGlzLmNvbnRleHQuc2V0U3RhdGVPYnMoc3RhdGUkKTtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHNldCBjb25maWcoY29uZmlnOiBNYXliZTxEYnhMaXN0Q29uZmlnPFQsIFY+Pikge1xuICAgIHRoaXMuX2NvbmZpZy5uZXh0KGNvbmZpZyk7XG4gIH1cblxuICBASW5wdXQoKVxuICBnZXQgZGlzYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2Rpc2FibGVkLnZhbHVlO1xuICB9XG5cbiAgc2V0IGRpc2FibGVkKGRpc2FibGVkOiBNYXliZTxib29sZWFuPikge1xuICAgIHRoaXMuX2Rpc2FibGVkLm5leHQoZGlzYWJsZWQgPz8gZmFsc2UpO1xuICB9XG5cbiAgQElucHV0KClcbiAgZ2V0IHNlbGVjdGlvbk1vZGUoKTogTWF5YmU8RGJ4TGlzdFNlbGVjdGlvbk1vZGU+IHtcbiAgICByZXR1cm4gdGhpcy5fc2VsZWN0aW9uTW9kZS52YWx1ZTtcbiAgfVxuXG4gIHNldCBzZWxlY3Rpb25Nb2RlKHNlbGVjdGlvbk1vZGU6IE1heWJlPERieExpc3RTZWxlY3Rpb25Nb2RlPikge1xuICAgIHRoaXMuX3NlbGVjdGlvbk1vZGUubmV4dChzZWxlY3Rpb25Nb2RlKTtcbiAgfVxuXG4gIGdldFNjcm9sbFBvc2l0aW9uUmVsYXRpdmVUb0JvdHRvbSgpOiBudW1iZXIge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBlbGVtZW50ID0gdGhpcy5uYXRpdmVFbGVtZW50O1xuXG4gICAgICAvLyBBdCBtYXggc2Nyb2xsLCBzY3JvbGxIZWlnaHQgPSBzY3JvbGxUb3AgKyBjbGllbnRIZWlnaHQ7XG4gICAgICBjb25zdCB7IHNjcm9sbFRvcCwgc2Nyb2xsSGVpZ2h0LCBjbGllbnRIZWlnaHQgfSA9IGVsZW1lbnQ7XG4gICAgICByZXR1cm4gc2Nyb2xsSGVpZ2h0IC0gKHNjcm9sbFRvcCArIGNsaWVudEhlaWdodCk7XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuICB9XG5cbiAganVtcFRvQm90dG9tKCk6IHZvaWQge1xuICAgIHRyeSB7XG4gICAgICB0aGlzLm5hdGl2ZUVsZW1lbnQuc2Nyb2xsVG9wID0gdGhpcy5uYXRpdmVFbGVtZW50LnNjcm9sbEhlaWdodDtcbiAgICB9IGNhdGNoIChlcnIpIHsgfVxuICB9XG5cbiAganVtcFRvUG9zaXRpb25SZWxhdGl2ZVRvQm90dG9tKHBvczogbnVtYmVyKTogdm9pZCB7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IGVsZW1lbnQgPSB0aGlzLm5hdGl2ZUVsZW1lbnQ7XG4gICAgICBjb25zdCB7IHNjcm9sbEhlaWdodCwgY2xpZW50SGVpZ2h0IH0gPSBlbGVtZW50O1xuICAgICAgZWxlbWVudC5zY3JvbGxUb3AgPSBzY3JvbGxIZWlnaHQgLSAoY2xpZW50SGVpZ2h0ICsgcG9zKTtcbiAgICB9IGNhdGNoIChlcnIpIHsgfVxuICB9XG5cbiAgb25TY3JvbGxEb3duKCk6IHZvaWQge1xuICAgIHRoaXMuX3Njcm9sbFRyaWdnZXIubmV4dCgnZG93bicpO1xuICB9XG5cbiAgb25TY3JvbGxVcCgpOiB2b2lkIHtcbiAgICB0aGlzLl9zY3JvbGxUcmlnZ2VyLm5leHQoJ3VwJyk7XG4gIH1cblxuICBsb2FkTW9yZSgpOiB2b2lkIHtcbiAgICB0aGlzLl9sb2FkTW9yZVRyaWdnZXIubmV4dCgpO1xuICB9XG5cbiAgLy8gTUFSSzogSW50ZXJuYWxcbiAgZ2V0IG5hdGl2ZUVsZW1lbnQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2NvbnRlbnQuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50O1xuICB9XG5cbiAgZ2V0IF9fY29udGVudCgpOiBEYnhMaXN0SW50ZXJuYWxDb250ZW50RGlyZWN0aXZlIHtcbiAgICByZXR1cm4gdGhpcy5fY29udGVudDtcbiAgfVxuXG4gIHNldCBfX2NvbnRlbnQoY29udGVudDogRGJ4TGlzdEludGVybmFsQ29udGVudERpcmVjdGl2ZSkge1xuICAgIGlmICh0aGlzLl9jb250ZW50ID09IG51bGwpIHtcbiAgICAgIHRoaXMuX2NvbnRlbnQgPSBjb250ZW50O1xuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0F0dGVtcHRlZCB0byBzZXQgX19jb250ZW50IGluIGxpc3Qgb3V0c2lkZSBvZiBpbml0aWFsaXphdGlvbi4nKTtcbiAgICB9XG4gIH1cblxufVxuXG4vKipcbiAqIFVzZWQgaW50ZXJuYWxseSBieSBEYnhMaXN0Q29tcG9uZW50XG4gKi9cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tkYngtbGlzdC1pbnRlcm5hbC1jb250ZW50XScsXG4gIGhvc3Q6IHtcbiAgICAnY2xhc3MnOiAnZC1ibG9jayBkYngtbGlzdC1jb250ZW50JyxcbiAgICAnW2NsYXNzLmRieC1saXN0LWNvbnRlbnQtaGlkZGVuXSc6ICdoaWRlJ1xuICB9XG59KVxuZXhwb3J0IGNsYXNzIERieExpc3RJbnRlcm5hbENvbnRlbnREaXJlY3RpdmUge1xuXG4gIEBJbnB1dCgpXG4gIGhpZGU6IE1heWJlPEJvb2xlYW4+ID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBwYXJlbnQ6IERieExpc3RDb21wb25lbnQsIHJlYWRvbmx5IGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYpIHtcbiAgICB0aGlzLnBhcmVudC5fX2NvbnRlbnQgPSB0aGlzO1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignc2Nyb2xsJywgWyckZXZlbnQnXSlcbiAgb25TY3JvbGxFdmVudCgkZXZlbnQ6IGFueSk6IHZvaWQge1xuICAgIGNvbnN0IHBvc2l0aW9uID0gJGV2ZW50LnRhcmdldC5zY3JvbGxUb3A7XG4gICAgdGhpcy5wYXJlbnQuY29udGVudFNjcm9sbGVkLmVtaXQocG9zaXRpb24pO1xuICB9XG5cbn1cbiIsIjxkYngtbG9hZGluZyBbY29udGV4dF09XCJjb250ZXh0XCIgW2xpbmVhcl09XCJ0cnVlXCI+PC9kYngtbG9hZGluZz5cbjxkaXYgZGJ4LWxpc3QtaW50ZXJuYWwtY29udGVudCBpbmZpbml0ZS1zY3JvbGwgW2luZmluaXRlU2Nyb2xsRGlzdGFuY2VdPVwiKHNjcm9sbERpc3RhbmNlJCB8IGFzeW5jKSA/PyBERUZBVUxUX1NDUk9MTF9ESVNUQU5DRVwiXG4gIFtpbmZpbml0ZVNjcm9sbFVwRGlzdGFuY2VdPVwiKHNjcm9sbERpc3RhbmNlJCB8IGFzeW5jKSA/PyBERUZBVUxUX1NDUk9MTF9ESVNUQU5DRVwiIFtoaWRlXT1cImhpZGVDb250ZW50JCB8IGFzeW5jXCJcbiAgW2luZmluaXRlU2Nyb2xsVGhyb3R0bGVdPVwiKHRocm90dGxlU2Nyb2xsJCB8IGFzeW5jKSA/PyBERUZBVUxUX1RIUk9UVExFX1NDUk9MTFwiIFtzY3JvbGxXaW5kb3ddPVwiZmFsc2VcIlxuICAoc2Nyb2xsZWQpPVwib25TY3JvbGxEb3duKClcIiAoc2Nyb2xsZWRVcCk9XCJvblNjcm9sbFVwKClcIj5cbiAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW3RvcF1cIj48L25nLWNvbnRlbnQ+XG4gIDxkYngtaW5qZWN0aW9uIFtjb25maWddPVwiaW5qZWN0ZWRDb21wb25lbnRDb25maWckIHwgYXN5bmNcIj48L2RieC1pbmplY3Rpb24+XG4gIDxuZy1jb250ZW50IHNlbGVjdD1cIltib3R0b21dXCI+PC9uZy1jb250ZW50PlxuPC9kaXY+XG48bmctY29udGVudCAqbmdJZj1cImlzRW1wdHkkIHwgYXN5bmNcIiBzZWxlY3Q9XCJbZW1wdHldXCI+PC9uZy1jb250ZW50PlxuIl19
|
|
@@ -5,13 +5,13 @@ import * as i0 from "@angular/core";
|
|
|
5
5
|
*/
|
|
6
6
|
export class DbxListEmptyContentComponent {
|
|
7
7
|
}
|
|
8
|
-
DbxListEmptyContentComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
9
|
-
DbxListEmptyContentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2
|
|
8
|
+
DbxListEmptyContentComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxListEmptyContentComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
9
|
+
DbxListEmptyContentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: DbxListEmptyContentComponent, selector: "dbx-list-empty-content", ngImport: i0, template: `
|
|
10
10
|
<div class="dbx-list-empty-content">
|
|
11
11
|
<ng-content></ng-content>
|
|
12
12
|
</div>
|
|
13
13
|
`, isInline: true });
|
|
14
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
14
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxListEmptyContentComponent, decorators: [{
|
|
15
15
|
type: Component,
|
|
16
16
|
args: [{
|
|
17
17
|
selector: 'dbx-list-empty-content',
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { filterMaybe,
|
|
1
|
+
import { filterMaybe, valueFromObservableOrValue } from '@dereekb/rxjs';
|
|
2
2
|
import { BehaviorSubject, map, shareReplay } from 'rxjs';
|
|
3
3
|
import { Output, EventEmitter, Directive, Input } from "@angular/core";
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
@@ -11,7 +11,7 @@ export const DEFAULT_STATIC_LIST_DIRECTIVE_TEMPLATE = `
|
|
|
11
11
|
`;
|
|
12
12
|
// MARK: Wrapper
|
|
13
13
|
export const DEFAULT_LIST_WRAPPER_DIRECTIVE_TEMPLATE = `
|
|
14
|
-
<dbx-list [state$]="state$" [config]="config$ | async" [disabled]="disabled">
|
|
14
|
+
<dbx-list [state$]="state$" [config]="config$ | async" [disabled]="disabled" [selectionMode]="selectionMode">
|
|
15
15
|
<ng-content top select="[top]"></ng-content>
|
|
16
16
|
<ng-content bottom select="[bottom]"></ng-content>
|
|
17
17
|
<ng-content empty select="[empty]"></ng-content>
|
|
@@ -21,7 +21,7 @@ export class AbstractDbxListWrapperDirective {
|
|
|
21
21
|
constructor(initConfig) {
|
|
22
22
|
this.initConfig = initConfig;
|
|
23
23
|
this._init = new BehaviorSubject(undefined);
|
|
24
|
-
this.config$ = this._init.pipe(filterMaybe(),
|
|
24
|
+
this.config$ = this._init.pipe(filterMaybe(), valueFromObservableOrValue(), map((x) => this._buildListConfig(x)), shareReplay(1));
|
|
25
25
|
this.clickItem = new EventEmitter();
|
|
26
26
|
this.loadMore = new EventEmitter();
|
|
27
27
|
}
|
|
@@ -41,12 +41,14 @@ export class AbstractDbxListWrapperDirective {
|
|
|
41
41
|
};
|
|
42
42
|
}
|
|
43
43
|
}
|
|
44
|
-
AbstractDbxListWrapperDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
45
|
-
AbstractDbxListWrapperDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2
|
|
46
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
44
|
+
AbstractDbxListWrapperDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AbstractDbxListWrapperDirective, deps: "invalid", target: i0.ɵɵFactoryTarget.Directive });
|
|
45
|
+
AbstractDbxListWrapperDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.2", type: AbstractDbxListWrapperDirective, inputs: { disabled: "disabled", selectionMode: "selectionMode", state$: "state$" }, outputs: { clickItem: "clickItem", loadMore: "loadMore" }, ngImport: i0 });
|
|
46
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AbstractDbxListWrapperDirective, decorators: [{
|
|
47
47
|
type: Directive
|
|
48
48
|
}], ctorParameters: function () { return [{ type: undefined }]; }, propDecorators: { disabled: [{
|
|
49
49
|
type: Input
|
|
50
|
+
}], selectionMode: [{
|
|
51
|
+
type: Input
|
|
50
52
|
}], state$: [{
|
|
51
53
|
type: Input
|
|
52
54
|
}], clickItem: [{
|
|
@@ -68,11 +70,11 @@ export class AbstractDbxSelectionListWrapperDirective extends AbstractDbxListWra
|
|
|
68
70
|
return result;
|
|
69
71
|
}
|
|
70
72
|
}
|
|
71
|
-
AbstractDbxSelectionListWrapperDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
72
|
-
AbstractDbxSelectionListWrapperDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2
|
|
73
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
73
|
+
AbstractDbxSelectionListWrapperDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AbstractDbxSelectionListWrapperDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
74
|
+
AbstractDbxSelectionListWrapperDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.2", type: AbstractDbxSelectionListWrapperDirective, outputs: { selectionChange: "selectionChange" }, usesInheritance: true, ngImport: i0 });
|
|
75
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AbstractDbxSelectionListWrapperDirective, decorators: [{
|
|
74
76
|
type: Directive
|
|
75
77
|
}], propDecorators: { selectionChange: [{
|
|
76
78
|
type: Output
|
|
77
79
|
}] } });
|
|
78
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
80
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtd2ViL3NyYy9saWIvbGF5b3V0L2xpc3QvbGlzdC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFvQixXQUFXLEVBQXFCLDBCQUEwQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdHLE9BQU8sRUFBYyxlQUFlLEVBQUUsR0FBRyxFQUFFLFdBQVcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNyRSxPQUFPLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBcUIsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFNMUYsTUFBTSxDQUFDLE1BQU0sc0NBQXNDLEdBQUc7Ozs7OztDQU1yRCxDQUFDO0FBRUYsZ0JBQWdCO0FBQ2hCLE1BQU0sQ0FBQyxNQUFNLHVDQUF1QyxHQUFHOzs7Ozs7Q0FNdEQsQ0FBQztBQUtGLE1BQU0sT0FBZ0IsK0JBQStCO0lBd0JuRCxZQUFxQixVQUFnQztRQUFoQyxlQUFVLEdBQVYsVUFBVSxDQUFzQjtRQXRCcEMsVUFBSyxHQUFHLElBQUksZUFBZSxDQUE4QixTQUFTLENBQUMsQ0FBQztRQUM1RSxZQUFPLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQ2hDLFdBQVcsRUFBRSxFQUNiLDBCQUEwQixFQUFFLEVBQzVCLEdBQUcsQ0FBQyxDQUFDLENBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQ3ZDLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBWWxCLGNBQVMsR0FBRyxJQUFJLFlBQVksRUFBSyxDQUFDO1FBR2xDLGFBQVEsR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO0lBRXFCLENBQUM7SUFFMUQsUUFBUTtRQUNOLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNuQyxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDdEIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUMxQixJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFFUyxnQkFBZ0IsQ0FBQyxNQUFTO1FBQ2xDLE9BQU87WUFDTCxHQUFHLE1BQU07WUFDVCxPQUFPLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztZQUN0QyxRQUFRLEVBQUUsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUU7U0FDckMsQ0FBQztJQUNKLENBQUM7OzRIQTFDbUIsK0JBQStCO2dIQUEvQiwrQkFBK0I7MkZBQS9CLCtCQUErQjtrQkFEcEQsU0FBUzs2RkFXUixRQUFRO3NCQURQLEtBQUs7Z0JBSU4sYUFBYTtzQkFEWixLQUFLO2dCQUlOLE1BQU07c0JBREwsS0FBSztnQkFJTixTQUFTO3NCQURSLE1BQU07Z0JBSVAsUUFBUTtzQkFEUCxNQUFNOztBQTZCVCxNQUFNLE9BQWdCLHdDQUFpTyxTQUFRLCtCQUEyQztJQUQxUzs7UUFJRSxvQkFBZSxHQUFHLElBQUksWUFBWSxFQUF5QixDQUFDO0tBWTdEO0lBVlUsV0FBVztRQUNsQixJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ2xDLENBQUM7SUFFa0IsZ0JBQWdCLENBQUMsTUFBUztRQUMzQyxNQUFNLE1BQU0sR0FBRyxLQUFLLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDOUMsTUFBTSxDQUFDLGlCQUFpQixHQUFHLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUMvRCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDOztxSUFibUIsd0NBQXdDO3lIQUF4Qyx3Q0FBd0M7MkZBQXhDLHdDQUF3QztrQkFEN0QsU0FBUzs4QkFJUixlQUFlO3NCQURkLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBMaXN0TG9hZGluZ1N0YXRlLCBmaWx0ZXJNYXliZSwgT2JzZXJ2YWJsZU9yVmFsdWUsIHZhbHVlRnJvbU9ic2VydmFibGVPclZhbHVlIH0gZnJvbSAnQGRlcmVla2Ivcnhqcyc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBCZWhhdmlvclN1YmplY3QsIG1hcCwgc2hhcmVSZXBsYXkgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IE91dHB1dCwgRXZlbnRFbWl0dGVyLCBPbkluaXQsIE9uRGVzdHJveSwgRGlyZWN0aXZlLCBJbnB1dCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBEYnhMaXN0Q29uZmlnIH0gZnJvbSBcIi4vbGlzdC5jb21wb25lbnRcIjtcbmltcG9ydCB7IERieExpc3RTZWxlY3Rpb25Nb2RlLCBEYnhMaXN0VmlldywgTGlzdFNlbGVjdGlvblN0YXRlIH0gZnJvbSBcIi4vbGlzdC52aWV3XCI7XG5pbXBvcnQgeyBNYXliZSB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuaW1wb3J0IHsgRGJ4TGlzdFZpZXdXcmFwcGVyIH0gZnJvbSAnLi9saXN0LndyYXBwZXInO1xuXG5leHBvcnQgY29uc3QgREVGQVVMVF9TVEFUSUNfTElTVF9ESVJFQ1RJVkVfVEVNUExBVEUgPSBgXG48ZGJ4LWxpc3QgW2NvbmZpZ109XCJjb25maWdcIj5cbiAgPG5nLWNvbnRlbnQgdG9wIHNlbGVjdD1cIlt0b3BdXCI+PC9uZy1jb250ZW50PlxuICA8bmctY29udGVudCBib3R0b20gc2VsZWN0PVwiW2JvdHRvbV1cIj48L25nLWNvbnRlbnQ+XG4gIDxuZy1jb250ZW50IGVtcHR5IHNlbGVjdD1cIltlbXB0eV1cIj48L25nLWNvbnRlbnQ+XG48L2RieC1saXN0PlxuYDtcblxuLy8gTUFSSzogV3JhcHBlclxuZXhwb3J0IGNvbnN0IERFRkFVTFRfTElTVF9XUkFQUEVSX0RJUkVDVElWRV9URU1QTEFURSA9IGBcbjxkYngtbGlzdCBbc3RhdGUkXT1cInN0YXRlJFwiIFtjb25maWddPVwiY29uZmlnJCB8IGFzeW5jXCIgW2Rpc2FibGVkXT1cImRpc2FibGVkXCIgW3NlbGVjdGlvbk1vZGVdPVwic2VsZWN0aW9uTW9kZVwiPlxuICA8bmctY29udGVudCB0b3Agc2VsZWN0PVwiW3RvcF1cIj48L25nLWNvbnRlbnQ+XG4gIDxuZy1jb250ZW50IGJvdHRvbSBzZWxlY3Q9XCJbYm90dG9tXVwiPjwvbmctY29udGVudD5cbiAgPG5nLWNvbnRlbnQgZW1wdHkgc2VsZWN0PVwiW2VtcHR5XVwiPjwvbmctY29udGVudD5cbjwvZGJ4LWxpc3Q+XG5gO1xuXG5leHBvcnQgaW50ZXJmYWNlIERieExpc3RXcmFwcGVyQ29uZmlnPFQsIFYgZXh0ZW5kcyBEYnhMaXN0VmlldzxUPiA9IERieExpc3RWaWV3PFQ+PiBleHRlbmRzIE9taXQ8RGJ4TGlzdENvbmZpZzxULCBWPiwgJ29uQ2xpY2snIHwgJ2xvYWRNb3JlJz4geyB9XG5cbkBEaXJlY3RpdmUoKVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFic3RyYWN0RGJ4TGlzdFdyYXBwZXJEaXJlY3RpdmU8VCwgViBleHRlbmRzIERieExpc3RWaWV3PFQ+ID0gRGJ4TGlzdFZpZXc8VD4sIEMgZXh0ZW5kcyBEYnhMaXN0V3JhcHBlckNvbmZpZzxULCBWPiA9IERieExpc3RXcmFwcGVyQ29uZmlnPFQsIFY+LCBTIGV4dGVuZHMgTGlzdExvYWRpbmdTdGF0ZTxUPiA9IExpc3RMb2FkaW5nU3RhdGU8VD4+IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3ksIERieExpc3RWaWV3V3JhcHBlcjxULCBTPiB7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfaW5pdCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8TWF5YmU8T2JzZXJ2YWJsZU9yVmFsdWU8Qz4+Pih1bmRlZmluZWQpO1xuICByZWFkb25seSBjb25maWckID0gdGhpcy5faW5pdC5waXBlKFxuICAgIGZpbHRlck1heWJlKCksXG4gICAgdmFsdWVGcm9tT2JzZXJ2YWJsZU9yVmFsdWUoKSxcbiAgICBtYXAoKHg6IEMpID0+IHRoaXMuX2J1aWxkTGlzdENvbmZpZyh4KSksXG4gICAgc2hhcmVSZXBsYXkoMSkpO1xuXG4gIEBJbnB1dCgpXG4gIGRpc2FibGVkPzogTWF5YmU8Ym9vbGVhbj47XG5cbiAgQElucHV0KClcbiAgc2VsZWN0aW9uTW9kZT86IE1heWJlPERieExpc3RTZWxlY3Rpb25Nb2RlPjtcblxuICBASW5wdXQoKVxuICBzdGF0ZSQ/OiBNYXliZTxPYnNlcnZhYmxlPFM+PjtcblxuICBAT3V0cHV0KClcbiAgY2xpY2tJdGVtID0gbmV3IEV2ZW50RW1pdHRlcjxUPigpO1xuXG4gIEBPdXRwdXQoKVxuICBsb2FkTW9yZSA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICBjb25zdHJ1Y3RvcihyZWFkb25seSBpbml0Q29uZmlnOiBPYnNlcnZhYmxlT3JWYWx1ZTxDPikgeyB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5faW5pdC5uZXh0KHRoaXMuaW5pdENvbmZpZyk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLl9pbml0LmNvbXBsZXRlKCk7XG4gICAgdGhpcy5jbGlja0l0ZW0uY29tcGxldGUoKTtcbiAgICB0aGlzLmxvYWRNb3JlLmNvbXBsZXRlKCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgX2J1aWxkTGlzdENvbmZpZyhjb25maWc6IEMpOiBEYnhMaXN0Q29uZmlnPFQsIFY+IHtcbiAgICByZXR1cm4ge1xuICAgICAgLi4uY29uZmlnLFxuICAgICAgb25DbGljazogKHgpID0+IHRoaXMuY2xpY2tJdGVtLmVtaXQoeCksXG4gICAgICBsb2FkTW9yZTogKCkgPT4gdGhpcy5sb2FkTW9yZS5lbWl0KClcbiAgICB9O1xuICB9XG5cbn1cblxuLy8gTUFSSzogU2VsZWN0aW9uIFdyYXBwZXJcbmV4cG9ydCBpbnRlcmZhY2UgRGJ4U2VsZWN0aW9uTGlzdFdyYXBwZXJDb25maWc8VCwgViBleHRlbmRzIERieExpc3RWaWV3PFQ+ID0gRGJ4TGlzdFZpZXc8VD4+IGV4dGVuZHMgT21pdDxEYnhMaXN0V3JhcHBlckNvbmZpZzxULCBWPiwgJ29uU2VsZWN0aW9uQ2hhbmdlJz4geyB9XG5cbkBEaXJlY3RpdmUoKVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFic3RyYWN0RGJ4U2VsZWN0aW9uTGlzdFdyYXBwZXJEaXJlY3RpdmU8VCwgViBleHRlbmRzIERieExpc3RWaWV3PFQ+ID0gRGJ4TGlzdFZpZXc8VD4sIEMgZXh0ZW5kcyBEYnhTZWxlY3Rpb25MaXN0V3JhcHBlckNvbmZpZzxULCBWPiA9IERieFNlbGVjdGlvbkxpc3RXcmFwcGVyQ29uZmlnPFQsIFY+LCBTIGV4dGVuZHMgTGlzdExvYWRpbmdTdGF0ZTxUPiA9IExpc3RMb2FkaW5nU3RhdGU8VD4+IGV4dGVuZHMgQWJzdHJhY3REYnhMaXN0V3JhcHBlckRpcmVjdGl2ZTxULCBWLCBDLCBTPiB7XG5cbiAgQE91dHB1dCgpXG4gIHNlbGVjdGlvbkNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8TGlzdFNlbGVjdGlvblN0YXRlPFQ+PigpO1xuXG4gIG92ZXJyaWRlIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuc2VsZWN0aW9uQ2hhbmdlLmNvbXBsZXRlKCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgX2J1aWxkTGlzdENvbmZpZyhjb25maWc6IEMpOiBEYnhMaXN0Q29uZmlnPFQsIFY+IHtcbiAgICBjb25zdCByZXN1bHQgPSBzdXBlci5fYnVpbGRMaXN0Q29uZmlnKGNvbmZpZyk7XG4gICAgcmVzdWx0Lm9uU2VsZWN0aW9uQ2hhbmdlID0gKHgpID0+IHRoaXMuc2VsZWN0aW9uQ2hhbmdlLm5leHQoeCk7XG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxuXG59XG4iXX0=
|