@dereekb/dbx-web 0.0.1 → 1.2.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/README.md +4 -5
- package/_index.scss +27 -0
- package/esm2020/index.mjs +1 -2
- package/esm2020/lib/action/action.confirm.directive.mjs +5 -5
- package/esm2020/lib/action/action.module.mjs +35 -35
- package/esm2020/lib/action/action.snackbar.component.mjs +10 -11
- package/esm2020/lib/action/key.trigger.directive.mjs +5 -5
- package/esm2020/lib/action/transition/action.transition.module.mjs +29 -29
- package/esm2020/lib/action/transition/transition.safety.dialog.component.mjs +18 -18
- package/esm2020/lib/action/transition/transition.safety.directive.mjs +20 -38
- package/esm2020/lib/button/button.component.mjs +19 -19
- package/esm2020/lib/button/button.module.mjs +21 -27
- package/esm2020/lib/button/button.spacer.component.mjs +6 -7
- package/esm2020/lib/dbx-web.module.mjs +28 -30
- package/esm2020/lib/error/error.action.directive.mjs +7 -7
- package/esm2020/lib/error/error.component.mjs +5 -5
- package/esm2020/lib/error/error.loading.directive.mjs +7 -7
- package/esm2020/lib/error/error.module.mjs +19 -19
- package/esm2020/lib/index.mjs +3 -2
- package/esm2020/lib/interaction/dialog/abstract.dialog.directive.mjs +20 -11
- package/esm2020/lib/interaction/dialog/dialog.content.component.mjs +25 -0
- package/esm2020/lib/interaction/dialog/dialog.module.mjs +33 -0
- package/esm2020/lib/interaction/dialog/index.mjs +3 -1
- package/esm2020/lib/interaction/filter/filter.module.mjs +62 -0
- package/esm2020/lib/interaction/filter/filter.popover.button.component.mjs +32 -0
- package/esm2020/lib/interaction/filter/filter.popover.button.directive.mjs +38 -0
- package/esm2020/lib/interaction/filter/filter.popover.component.mjs +90 -0
- package/esm2020/lib/interaction/filter/filter.wrapper.component.mjs +33 -0
- package/esm2020/lib/interaction/filter/index.mjs +6 -0
- package/esm2020/lib/interaction/index.mjs +3 -1
- package/esm2020/lib/interaction/interaction.module.mjs +33 -0
- package/esm2020/lib/interaction/popover/abstract.popover.directive.mjs +8 -8
- package/esm2020/lib/interaction/popover/abstract.popover.ref.directive.mjs +6 -6
- package/esm2020/lib/interaction/popover/index.mjs +3 -2
- package/esm2020/lib/interaction/popover/popover.action.button.directive.mjs +10 -10
- package/esm2020/lib/interaction/popover/popover.action.directive.mjs +5 -5
- package/esm2020/lib/interaction/popover/popover.component.mjs +24 -35
- package/esm2020/lib/interaction/popover/popover.content.component.mjs +13 -21
- package/esm2020/lib/interaction/popover/popover.controls.directive.mjs +28 -0
- package/esm2020/lib/interaction/popover/popover.coordinator.component.mjs +8 -8
- package/esm2020/lib/interaction/popover/popover.coordinator.service.mjs +5 -5
- package/esm2020/lib/interaction/popover/popover.header.component.mjs +10 -11
- package/esm2020/lib/interaction/popover/popover.mjs +2 -2
- package/esm2020/lib/interaction/popover/popover.module.mjs +71 -63
- package/esm2020/lib/interaction/popover/popover.scroll.content.component.mjs +12 -18
- package/esm2020/lib/interaction/popover/popover.service.mjs +7 -7
- package/esm2020/lib/interaction/popup/abstract.popup.directive.mjs +6 -6
- package/esm2020/lib/interaction/popup/index.mjs +2 -1
- package/esm2020/lib/interaction/popup/popup.component.mjs +27 -42
- package/esm2020/lib/interaction/popup/popup.content.component.mjs +13 -15
- package/esm2020/lib/interaction/popup/popup.controls.buttons.component.mjs +13 -15
- package/esm2020/lib/interaction/popup/popup.controls.component.mjs +9 -11
- package/esm2020/lib/interaction/popup/popup.coordinator.component.mjs +9 -10
- package/esm2020/lib/interaction/popup/popup.coordinator.service.mjs +5 -5
- package/esm2020/lib/interaction/popup/popup.mjs +8 -8
- package/esm2020/lib/interaction/popup/popup.module.mjs +54 -46
- package/esm2020/lib/interaction/popup/popup.position.strategy.mjs +8 -12
- package/esm2020/lib/interaction/popup/popup.service.mjs +9 -8
- package/esm2020/lib/interaction/prompt/prompt.box.component.mjs +10 -22
- package/esm2020/lib/interaction/prompt/prompt.button.confirm.directive.mjs +9 -9
- package/esm2020/lib/interaction/prompt/prompt.component.mjs +24 -9
- package/esm2020/lib/interaction/prompt/prompt.confirm.component.mjs +11 -11
- package/esm2020/lib/interaction/prompt/prompt.confirm.dialog.component.mjs +40 -15
- package/esm2020/lib/interaction/prompt/prompt.confirm.directive.mjs +14 -24
- package/esm2020/lib/interaction/prompt/prompt.confirm.mjs +6 -5
- package/esm2020/lib/interaction/prompt/prompt.module.mjs +61 -52
- package/esm2020/lib/interaction/prompt/prompt.page.component.mjs +20 -22
- package/esm2020/lib/keypress/keydown.listener.directive.mjs +5 -5
- package/esm2020/lib/keypress/keypress.module.mjs +9 -9
- package/esm2020/lib/layout/bar/bar.directive.mjs +24 -0
- package/esm2020/lib/layout/bar/bar.header.component.mjs +39 -0
- package/esm2020/lib/layout/bar/bar.layout.module.mjs +47 -0
- package/esm2020/lib/layout/bar/bar.mjs +2 -0
- package/esm2020/lib/layout/bar/index.mjs +5 -0
- package/esm2020/lib/layout/bar/pagebar.component.mjs +15 -0
- package/esm2020/lib/layout/block/block.layout.module.mjs +14 -14
- package/esm2020/lib/layout/block/two.block.component.mjs +5 -5
- package/esm2020/lib/layout/card/card.box.component.mjs +5 -5
- package/esm2020/lib/layout/card/card.box.container.component.mjs +5 -5
- package/esm2020/lib/layout/card/card.box.layout.module.mjs +15 -15
- package/esm2020/lib/layout/column/column.layout.module.mjs +12 -12
- package/esm2020/lib/layout/column/one/one.column.component.mjs +6 -6
- package/esm2020/lib/layout/column/one/one.column.module.mjs +13 -13
- package/esm2020/lib/layout/column/two/two.column.back.directive.mjs +6 -6
- package/esm2020/lib/layout/column/two/two.column.component.mjs +5 -5
- package/esm2020/lib/layout/column/two/two.column.full.left.directive.mjs +6 -6
- package/esm2020/lib/layout/column/two/two.column.head.component.mjs +5 -5
- package/esm2020/lib/layout/column/two/two.column.module.mjs +42 -42
- package/esm2020/lib/layout/column/two/two.column.right.component.mjs +6 -6
- package/esm2020/lib/layout/column/two/two.column.sref.directive.mjs +6 -6
- package/esm2020/lib/layout/column/two/two.column.store.mjs +3 -3
- package/esm2020/lib/layout/compact/compact.directive.mjs +5 -5
- package/esm2020/lib/layout/compact/compact.layout.module.mjs +9 -9
- package/esm2020/lib/layout/compact/compact.store.mjs +3 -3
- package/esm2020/lib/layout/content/content.border.directive.mjs +19 -0
- package/esm2020/lib/layout/content/content.box.directive.mjs +25 -0
- package/esm2020/lib/layout/content/content.container.directive.mjs +28 -0
- package/esm2020/lib/layout/content/content.directive.mjs +19 -0
- package/esm2020/lib/layout/content/content.elevate.directive.mjs +19 -0
- package/esm2020/lib/layout/content/content.layout.module.mjs +34 -24
- package/esm2020/lib/layout/content/content.page.directive.mjs +19 -0
- package/esm2020/lib/layout/content/index.mjs +7 -5
- package/esm2020/lib/layout/flag/flag.component.mjs +5 -5
- package/esm2020/lib/layout/flag/flag.layout.module.mjs +15 -15
- package/esm2020/lib/layout/flag/flag.prompt.component.mjs +6 -6
- package/esm2020/lib/layout/flex/flex.group.directive.mjs +53 -0
- package/esm2020/lib/layout/flex/flex.layout.module.mjs +31 -0
- package/esm2020/lib/layout/flex/flex.mjs +2 -0
- package/esm2020/lib/layout/flex/flex.size.directive.mjs +25 -0
- package/esm2020/lib/layout/flex/index.mjs +5 -0
- package/esm2020/lib/layout/index.mjs +5 -2
- package/esm2020/lib/layout/item/item.icon.component.mjs +5 -5
- package/esm2020/lib/layout/item/item.layout.module.mjs +10 -10
- package/esm2020/lib/layout/layout.module.mjs +60 -48
- package/esm2020/lib/layout/list/index.mjs +12 -2
- package/esm2020/lib/layout/list/list.component.mjs +232 -0
- package/esm2020/lib/layout/list/list.content.empty.component.mjs +26 -0
- package/esm2020/lib/layout/list/list.directive.mjs +78 -0
- package/esm2020/lib/layout/list/list.layout.module.mjs +56 -11
- package/esm2020/lib/layout/list/list.view.directive.mjs +50 -0
- package/esm2020/lib/layout/list/list.view.mjs +13 -0
- package/esm2020/lib/layout/list/list.view.selection.directive.mjs +32 -0
- package/esm2020/lib/layout/list/list.view.value.component.mjs +61 -0
- package/esm2020/lib/layout/list/list.view.value.directive.mjs +35 -0
- package/esm2020/lib/layout/list/list.view.value.item.directive.mjs +20 -0
- package/esm2020/lib/layout/list/list.view.value.mjs +30 -0
- package/esm2020/lib/layout/list/list.view.value.selection.component.mjs +88 -0
- package/esm2020/lib/layout/section/index.mjs +3 -4
- package/esm2020/lib/layout/section/section.component.mjs +21 -32
- package/esm2020/lib/layout/section/section.header.component.mjs +79 -0
- package/esm2020/lib/layout/section/section.intro.component.mjs +7 -8
- package/esm2020/lib/layout/section/section.layout.module.mjs +34 -44
- package/esm2020/lib/layout/section/section.mjs +2 -0
- package/esm2020/lib/layout/section/section.page.component.mjs +17 -30
- package/esm2020/lib/layout/section/subsection.component.mjs +16 -14
- package/esm2020/lib/layout/step/step.component.mjs +5 -5
- package/esm2020/lib/layout/step/step.layout.module.mjs +10 -10
- package/esm2020/lib/layout/style/index.mjs +7 -0
- package/esm2020/lib/layout/style/spacer.directive.mjs +16 -0
- package/esm2020/lib/layout/style/style.body.directive.mjs +35 -0
- package/esm2020/lib/layout/style/style.directive.mjs +32 -0
- package/esm2020/lib/layout/style/style.layout.module.mjs +41 -0
- package/esm2020/lib/layout/style/style.service.mjs +76 -0
- package/esm2020/lib/layout/style/style.set.directive.mjs +69 -0
- package/esm2020/lib/layout/text/hint.component.mjs +17 -0
- package/esm2020/lib/layout/text/index.mjs +11 -0
- package/esm2020/lib/layout/text/label.component.mjs +17 -0
- package/esm2020/lib/layout/text/linkify.component.mjs +47 -0
- package/esm2020/lib/layout/text/note.component.mjs +17 -0
- package/esm2020/lib/layout/text/notice.component.mjs +17 -0
- package/esm2020/lib/layout/text/ok.component.mjs +17 -0
- package/esm2020/lib/layout/text/success.component.mjs +17 -0
- package/esm2020/lib/layout/text/text.chips.component.mjs +31 -0
- package/esm2020/lib/layout/text/text.module.mjs +78 -0
- package/esm2020/lib/layout/text/warn.component.mjs +17 -0
- package/esm2020/lib/loading/basic-loading.component.mjs +6 -6
- package/esm2020/lib/loading/loading-progress.component.mjs +5 -5
- package/esm2020/lib/loading/loading.component.mjs +6 -6
- package/esm2020/lib/loading/loading.module.mjs +27 -27
- package/esm2020/lib/router/index.mjs +2 -2
- package/esm2020/lib/router/layout/anchor/anchor.component.mjs +50 -0
- package/esm2020/lib/router/layout/anchor/anchor.icon.component.mjs +30 -0
- package/esm2020/lib/router/layout/anchor/anchor.link.component.mjs +49 -0
- package/esm2020/lib/router/layout/anchor/anchor.module.mjs +48 -0
- package/esm2020/lib/router/layout/anchor/anchor.segue.directive.mjs +29 -0
- package/esm2020/lib/router/layout/anchor/index.mjs +6 -0
- package/esm2020/lib/router/layout/anchorlist/anchorlist.component.mjs +34 -0
- package/esm2020/lib/router/layout/anchorlist/anchorlist.module.mjs +50 -0
- package/esm2020/lib/router/layout/anchorlist/index.mjs +3 -0
- package/esm2020/lib/router/layout/index.mjs +6 -0
- package/esm2020/lib/router/layout/layout.module.mjs +29 -0
- package/esm2020/lib/router/layout/navbar/index.mjs +3 -0
- package/esm2020/lib/router/layout/navbar/navbar.component.mjs +75 -0
- package/esm2020/lib/router/layout/navbar/navbar.module.mjs +46 -0
- package/esm2020/lib/router/layout/sidenav/index.mjs +9 -0
- package/esm2020/lib/router/layout/sidenav/sidenav.button.component.mjs +39 -0
- package/esm2020/lib/router/layout/sidenav/sidenav.component.mjs +133 -0
- package/esm2020/lib/router/layout/sidenav/sidenav.module.mjs +89 -0
- package/esm2020/lib/router/layout/sidenav/sidenav.page.component.mjs +59 -0
- package/esm2020/lib/router/layout/sidenav/sidenav.pagebar.component.mjs +39 -0
- package/esm2020/lib/router/provider/ngrouter/anchor.component.mjs +7 -7
- package/esm2020/lib/router/provider/ngrouter/angular.router.module.mjs +17 -17
- package/esm2020/lib/router/provider/router.provider.config.mjs +2 -2
- package/esm2020/lib/router/provider/uirouter/anchor.component.mjs +7 -7
- package/esm2020/lib/router/provider/uirouter/uirouter.router.module.mjs +17 -17
- package/esm2020/lib/screen/index.mjs +4 -0
- package/esm2020/lib/screen/screen.mjs +22 -0
- package/esm2020/lib/screen/screen.module.mjs +24 -0
- package/esm2020/lib/screen/screen.service.mjs +94 -0
- package/fesm2015/dereekb-dbx-web.mjs +5517 -3691
- package/fesm2015/dereekb-dbx-web.mjs.map +1 -1
- package/fesm2020/dereekb-dbx-web.mjs +5565 -3740
- package/fesm2020/dereekb-dbx-web.mjs.map +1 -1
- package/index.d.ts +0 -1
- package/lib/action/_action.scss +40 -0
- package/lib/action/action.confirm.directive.d.ts +5 -5
- package/lib/action/action.module.d.ts +4 -4
- package/lib/action/action.snackbar.component.d.ts +7 -7
- package/lib/action/key.trigger.directive.d.ts +3 -3
- package/lib/action/transition/action.transition.module.d.ts +5 -5
- package/lib/action/transition/transition.safety.dialog.component.d.ts +7 -7
- package/lib/action/transition/transition.safety.directive.d.ts +14 -23
- package/lib/button/_button.scss +32 -0
- package/lib/button/button.component.d.ts +6 -6
- package/lib/button/button.module.d.ts +6 -8
- package/lib/button/button.spacer.component.d.ts +3 -3
- package/lib/dbx-web.module.d.ts +15 -10
- package/lib/error/_error.scss +26 -0
- package/lib/error/error.action.directive.d.ts +6 -6
- package/lib/error/error.component.d.ts +3 -3
- package/lib/error/error.loading.directive.d.ts +6 -6
- package/lib/error/error.module.d.ts +4 -4
- package/lib/index.d.ts +2 -1
- package/lib/interaction/_interaction.scss +33 -0
- package/lib/interaction/dialog/_dialog.scss +26 -0
- package/lib/interaction/dialog/abstract.dialog.directive.d.ts +7 -5
- package/lib/interaction/dialog/dialog.content.component.d.ts +10 -0
- package/lib/interaction/dialog/dialog.module.d.ts +12 -0
- package/lib/interaction/dialog/index.d.ts +2 -0
- package/lib/interaction/filter/_filter.scss +25 -0
- package/lib/interaction/filter/filter.module.d.ts +15 -0
- package/lib/interaction/filter/filter.popover.button.component.d.ts +9 -0
- package/lib/interaction/filter/filter.popover.button.directive.d.ts +17 -0
- package/lib/interaction/filter/filter.popover.component.d.ts +53 -0
- package/lib/interaction/filter/filter.wrapper.component.d.ts +14 -0
- package/lib/interaction/filter/index.d.ts +5 -0
- package/lib/interaction/index.d.ts +2 -0
- package/lib/interaction/interaction.module.d.ts +11 -0
- package/lib/interaction/popover/_popover.scss +110 -0
- package/lib/interaction/popover/abstract.popover.directive.d.ts +6 -6
- package/lib/interaction/popover/index.d.ts +2 -1
- package/lib/interaction/popover/popover.action.button.directive.d.ts +8 -8
- package/lib/interaction/popover/popover.action.directive.d.ts +8 -8
- package/lib/interaction/popover/popover.component.d.ts +15 -17
- package/lib/interaction/popover/popover.content.component.d.ts +3 -4
- package/lib/interaction/popover/popover.controls.directive.d.ts +10 -0
- package/lib/interaction/popover/popover.coordinator.component.d.ts +6 -6
- package/lib/interaction/popover/popover.coordinator.service.d.ts +8 -8
- package/lib/interaction/popover/popover.d.ts +3 -3
- package/lib/interaction/popover/popover.header.component.d.ts +5 -5
- package/lib/interaction/popover/popover.module.d.ts +11 -9
- package/lib/interaction/popover/popover.scroll.content.component.d.ts +6 -6
- package/lib/interaction/popover/popover.service.d.ts +6 -6
- package/lib/interaction/popup/_popup.scss +82 -0
- package/lib/interaction/popup/abstract.popup.directive.d.ts +4 -4
- package/lib/interaction/popup/index.d.ts +1 -0
- package/lib/interaction/popup/popup.component.d.ts +15 -18
- package/lib/interaction/popup/popup.content.component.d.ts +5 -5
- package/lib/interaction/popup/popup.controls.buttons.component.d.ts +5 -5
- package/lib/interaction/popup/popup.controls.component.d.ts +3 -3
- package/lib/interaction/popup/popup.coordinator.component.d.ts +6 -6
- package/lib/interaction/popup/popup.coordinator.service.d.ts +8 -8
- package/lib/interaction/popup/popup.d.ts +5 -5
- package/lib/interaction/popup/popup.module.d.ts +9 -7
- package/lib/interaction/popup/popup.position.strategy.d.ts +1 -5
- package/lib/interaction/popup/popup.service.d.ts +6 -6
- package/lib/interaction/prompt/_prompt.scss +46 -0
- package/lib/interaction/prompt/prompt.box.component.d.ts +3 -5
- package/lib/interaction/prompt/prompt.button.confirm.directive.d.ts +8 -8
- package/lib/interaction/prompt/prompt.component.d.ts +3 -4
- package/lib/interaction/prompt/prompt.confirm.component.d.ts +8 -8
- package/lib/interaction/prompt/prompt.confirm.d.ts +2 -2
- package/lib/interaction/prompt/prompt.confirm.dialog.component.d.ts +17 -6
- package/lib/interaction/prompt/prompt.confirm.directive.d.ts +11 -14
- package/lib/interaction/prompt/prompt.module.d.ts +9 -7
- package/lib/interaction/prompt/prompt.page.component.d.ts +3 -3
- package/lib/interaction/style/_style.scss +47 -0
- package/lib/keypress/keydown.listener.directive.d.ts +3 -3
- package/lib/keypress/keypress.module.d.ts +4 -4
- package/lib/layout/_layout.scss +61 -0
- package/lib/layout/bar/_bar.scss +81 -0
- package/lib/layout/bar/bar.d.ts +1 -0
- package/lib/layout/bar/bar.directive.d.ts +11 -0
- package/lib/layout/bar/bar.header.component.d.ts +13 -0
- package/lib/layout/bar/bar.layout.module.d.ts +15 -0
- package/lib/layout/bar/index.d.ts +4 -0
- package/lib/layout/bar/pagebar.component.d.ts +8 -0
- package/lib/layout/block/_block.scss +39 -0
- package/lib/layout/block/block.layout.module.d.ts +5 -5
- package/lib/layout/block/two.block.component.d.ts +3 -3
- package/lib/layout/card/_card.scss +26 -0
- package/lib/layout/card/card.box.component.d.ts +3 -3
- package/lib/layout/card/card.box.container.component.d.ts +3 -3
- package/lib/layout/card/card.box.layout.module.d.ts +4 -4
- package/lib/layout/column/_column.scss +26 -0
- package/lib/layout/column/column.layout.module.d.ts +4 -4
- package/lib/layout/column/one/one.column.component.d.ts +3 -3
- package/lib/layout/column/one/one.column.module.d.ts +4 -4
- package/lib/layout/column/two/two.column.back.directive.d.ts +4 -4
- package/lib/layout/column/two/two.column.component.d.ts +3 -3
- 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 +5 -5
- package/lib/layout/column/two/two.column.right.component.d.ts +3 -3
- package/lib/layout/column/two/two.column.sref.directive.d.ts +4 -4
- package/lib/layout/column/two.scss +114 -0
- package/lib/layout/compact/compact.directive.d.ts +3 -3
- package/lib/layout/compact/compact.layout.module.d.ts +4 -4
- package/lib/layout/content/_content.scss +136 -0
- package/lib/layout/content/content.border.directive.d.ts +8 -0
- package/lib/layout/content/content.box.directive.d.ts +9 -0
- package/lib/layout/content/content.container.directive.d.ts +12 -0
- package/lib/layout/content/content.directive.d.ts +8 -0
- package/lib/layout/content/content.elevate.directive.d.ts +8 -0
- package/lib/layout/content/content.layout.module.d.ts +11 -9
- package/lib/layout/content/content.page.directive.d.ts +8 -0
- package/lib/layout/content/index.d.ts +6 -4
- package/lib/layout/flag/_flag.scss +26 -0
- package/lib/layout/flag/flag.component.d.ts +3 -3
- package/lib/layout/flag/flag.layout.module.d.ts +4 -4
- package/lib/layout/flag/flag.prompt.component.d.ts +3 -3
- package/lib/layout/flex/_flex.scss +76 -0
- package/lib/layout/flex/flex.d.ts +4 -0
- package/lib/layout/flex/flex.group.directive.d.ts +24 -0
- package/lib/layout/flex/flex.layout.module.d.ts +9 -0
- package/lib/layout/flex/flex.size.directive.d.ts +10 -0
- package/lib/layout/flex/index.d.ts +4 -0
- package/lib/layout/index.d.ts +4 -1
- package/lib/layout/item/_item.scss +26 -0
- package/lib/layout/item/item.icon.component.d.ts +3 -3
- package/lib/layout/item/item.layout.module.d.ts +4 -4
- package/lib/layout/layout.module.d.ts +17 -14
- package/lib/layout/list/_list.scss +72 -0
- package/lib/layout/list/index.d.ts +11 -1
- package/lib/layout/list/list.component.d.ts +115 -0
- package/lib/layout/list/list.content.empty.component.d.ts +8 -0
- package/lib/layout/list/list.directive.d.ts +35 -0
- package/lib/layout/list/list.layout.module.d.ts +15 -6
- package/lib/layout/list/list.view.d.ts +45 -0
- package/lib/layout/list/list.view.directive.d.ts +26 -0
- package/lib/layout/list/list.view.selection.directive.d.ts +15 -0
- package/lib/layout/list/list.view.value.component.d.ts +15 -0
- package/lib/layout/list/list.view.value.d.ts +21 -0
- package/lib/layout/list/list.view.value.directive.d.ts +21 -0
- package/lib/layout/list/list.view.value.item.directive.d.ts +9 -0
- package/lib/layout/list/list.view.value.selection.component.d.ts +32 -0
- package/lib/layout/section/_section.scss +116 -0
- package/lib/layout/section/index.d.ts +2 -3
- package/lib/layout/section/section.component.d.ts +5 -7
- package/lib/layout/section/section.d.ts +1 -0
- package/lib/layout/section/section.header.component.d.ts +14 -0
- package/lib/layout/section/section.intro.component.d.ts +4 -4
- package/lib/layout/section/section.layout.module.d.ts +14 -16
- package/lib/layout/section/section.page.component.d.ts +4 -5
- package/lib/layout/section/subsection.component.d.ts +5 -5
- package/lib/layout/step/_step.scss +59 -0
- package/lib/layout/step/step.component.d.ts +3 -3
- package/lib/layout/step/step.layout.module.d.ts +4 -4
- package/lib/layout/style/_style.scss +101 -0
- package/lib/layout/style/index.d.ts +6 -0
- package/lib/layout/style/spacer.directive.d.ts +5 -0
- package/lib/layout/style/style.body.directive.d.ts +16 -0
- package/lib/layout/style/style.directive.d.ts +15 -0
- package/lib/layout/style/style.layout.module.d.ts +11 -0
- package/lib/layout/style/style.service.d.ts +37 -0
- package/lib/layout/style/style.set.directive.d.ts +31 -0
- package/lib/layout/text/_text.scss +97 -0
- package/lib/layout/text/hint.component.d.ts +5 -0
- package/lib/{text → layout/text}/index.d.ts +0 -2
- package/lib/layout/text/label.component.d.ts +5 -0
- package/lib/{text → layout/text}/linkify.component.d.ts +3 -3
- package/lib/layout/text/note.component.d.ts +5 -0
- package/lib/layout/text/notice.component.d.ts +5 -0
- package/lib/layout/text/ok.component.d.ts +5 -0
- package/lib/layout/text/success.component.d.ts +5 -0
- package/lib/layout/text/text.chips.component.d.ts +13 -0
- package/lib/layout/text/text.module.d.ts +19 -0
- package/lib/layout/text/warn.component.d.ts +5 -0
- package/lib/loading/basic-loading.component.d.ts +4 -4
- package/lib/loading/loading-progress.component.d.ts +3 -3
- package/lib/loading/loading.component.d.ts +5 -5
- package/lib/loading/loading.module.d.ts +5 -5
- package/lib/router/_router.scss +25 -0
- package/lib/router/index.d.ts +1 -1
- package/lib/router/layout/anchor/_anchor.scss +37 -0
- package/lib/router/{anchor → layout/anchor}/anchor.component.d.ts +7 -8
- package/lib/router/layout/anchor/anchor.icon.component.d.ts +11 -0
- package/lib/router/layout/anchor/anchor.link.component.d.ts +13 -0
- package/lib/router/layout/anchor/anchor.module.d.ts +13 -0
- package/lib/router/layout/anchor/anchor.segue.directive.d.ts +19 -0
- package/lib/router/{anchor → layout/anchor}/index.d.ts +1 -0
- package/lib/router/layout/anchorlist/_anchorlist.scss +95 -0
- package/lib/router/layout/anchorlist/anchorlist.component.d.ts +15 -0
- package/lib/router/layout/anchorlist/anchorlist.module.d.ts +14 -0
- package/lib/router/layout/anchorlist/index.d.ts +2 -0
- package/lib/router/layout/index.d.ts +5 -0
- package/lib/router/layout/layout.module.d.ts +10 -0
- package/lib/router/layout/navbar/_navbar.scss +27 -0
- package/lib/router/layout/navbar/index.d.ts +2 -0
- package/lib/router/layout/navbar/navbar.component.d.ts +37 -0
- package/lib/router/layout/navbar/navbar.module.d.ts +13 -0
- package/lib/router/layout/sidenav/_sidenav.scss +189 -0
- package/lib/router/layout/sidenav/index.d.ts +5 -0
- package/lib/router/layout/sidenav/sidenav.button.component.d.ts +14 -0
- package/lib/router/layout/sidenav/sidenav.component.d.ts +42 -0
- package/lib/router/layout/sidenav/sidenav.module.d.ts +23 -0
- package/lib/router/layout/sidenav/sidenav.page.component.d.ts +20 -0
- package/lib/router/layout/sidenav/sidenav.pagebar.component.d.ts +9 -0
- package/lib/router/provider/ngrouter/anchor.component.d.ts +4 -4
- package/lib/router/provider/ngrouter/angular.router.module.d.ts +5 -5
- package/lib/router/provider/router.provider.config.d.ts +3 -3
- package/lib/router/provider/uirouter/anchor.component.d.ts +4 -4
- package/lib/router/provider/uirouter/uirouter.router.module.d.ts +5 -5
- package/lib/screen/index.d.ts +3 -0
- package/lib/screen/screen.d.ts +36 -0
- package/lib/screen/screen.module.d.ts +9 -0
- package/lib/screen/screen.service.d.ts +60 -0
- package/lib/style/_all-core.scss +14 -0
- package/lib/style/_all-theme.scss +15 -0
- package/lib/style/_all-typography.scss +15 -0
- package/lib/style/_config.scss +122 -0
- package/lib/style/_core.scss +17 -0
- package/lib/style/_mixin.scss +99 -0
- package/lib/style/_root-variables.scss +35 -0
- package/lib/style/_theming.scss +19 -0
- package/lib/style/_variables.scss +45 -0
- package/package.json +35 -34
- package/esm2020/lib/interaction/popover/popover.controls.component.mjs +0 -35
- package/esm2020/lib/layout/content/content.bordered.component.mjs +0 -26
- package/esm2020/lib/layout/content/content.component.mjs +0 -32
- package/esm2020/lib/layout/content/content.container.component.mjs +0 -66
- package/esm2020/lib/layout/content/content.container.fullwidth.component.mjs +0 -26
- package/esm2020/lib/layout/dialog/dialog.content.component.mjs +0 -37
- package/esm2020/lib/layout/dialog/dialog.layout.module.mjs +0 -29
- package/esm2020/lib/layout/dialog/index.mjs +0 -3
- package/esm2020/lib/layout/list/list.empty.component.mjs +0 -26
- package/esm2020/lib/layout/section/section.box.anchor.component.mjs +0 -39
- package/esm2020/lib/layout/section/section.box.component.mjs +0 -32
- package/esm2020/lib/layout/section/section.elevated.component.mjs +0 -26
- package/esm2020/lib/router/anchor/anchor.component.mjs +0 -50
- package/esm2020/lib/router/anchor/anchor.icon.component.mjs +0 -30
- package/esm2020/lib/router/anchor/anchor.module.mjs +0 -43
- package/esm2020/lib/router/anchor/anchor.segue.directive.mjs +0 -32
- package/esm2020/lib/router/anchor/index.mjs +0 -5
- package/esm2020/lib/text/hint.component.mjs +0 -15
- package/esm2020/lib/text/index.mjs +0 -13
- package/esm2020/lib/text/label.bar.component.mjs +0 -32
- package/esm2020/lib/text/label.component.mjs +0 -18
- package/esm2020/lib/text/link.component.mjs +0 -36
- package/esm2020/lib/text/linkify.component.mjs +0 -48
- package/esm2020/lib/text/note.component.mjs +0 -15
- package/esm2020/lib/text/notice.component.mjs +0 -15
- package/esm2020/lib/text/ok.component.mjs +0 -15
- package/esm2020/lib/text/success.component.mjs +0 -15
- package/esm2020/lib/text/text.chips.component.mjs +0 -32
- package/esm2020/lib/text/text.module.mjs +0 -92
- package/esm2020/lib/text/warn.component.mjs +0 -15
- package/lib/interaction/popover/popover.controls.component.d.ts +0 -10
- package/lib/layout/content/content.bordered.component.d.ts +0 -8
- package/lib/layout/content/content.component.d.ts +0 -9
- package/lib/layout/content/content.container.component.d.ts +0 -34
- package/lib/layout/content/content.container.fullwidth.component.d.ts +0 -8
- package/lib/layout/dialog/dialog.content.component.d.ts +0 -13
- package/lib/layout/dialog/dialog.layout.module.d.ts +0 -11
- package/lib/layout/dialog/index.d.ts +0 -2
- package/lib/layout/list/list.empty.component.d.ts +0 -8
- package/lib/layout/section/section.box.anchor.component.d.ts +0 -11
- package/lib/layout/section/section.box.component.d.ts +0 -9
- package/lib/layout/section/section.elevated.component.d.ts +0 -8
- package/lib/router/anchor/anchor.icon.component.d.ts +0 -11
- package/lib/router/anchor/anchor.module.d.ts +0 -12
- package/lib/router/anchor/anchor.segue.directive.d.ts +0 -20
- package/lib/text/hint.component.d.ts +0 -5
- package/lib/text/label.bar.component.d.ts +0 -10
- package/lib/text/label.component.d.ts +0 -8
- package/lib/text/link.component.d.ts +0 -9
- package/lib/text/note.component.d.ts +0 -5
- package/lib/text/notice.component.d.ts +0 -5
- package/lib/text/ok.component.d.ts +0 -5
- package/lib/text/success.component.d.ts +0 -5
- package/lib/text/text.chips.component.d.ts +0 -13
- package/lib/text/text.module.d.ts +0 -22
- package/lib/text/warn.component.d.ts +0 -5
|
@@ -0,0 +1,232 @@
|
|
|
1
|
+
import { catchError, filter, exhaustMap, merge, map, Subject, switchMap, shareReplay, distinctUntilChanged, of, Observable, BehaviorSubject, first, startWith } from 'rxjs';
|
|
2
|
+
import { Component, Input, EventEmitter, Output, ElementRef, HostListener, ChangeDetectorRef, Directive } from '@angular/core';
|
|
3
|
+
import { tapDetectChanges } from '@dereekb/dbx-core';
|
|
4
|
+
import { SubscriptionObject, ListLoadingStateContextInstance, filterMaybe, loadingStateHasFinishedLoading, beginLoading } from '@dereekb/rxjs';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "../../loading/loading.component";
|
|
7
|
+
import * as i2 from "@dereekb/dbx-core";
|
|
8
|
+
import * as i3 from "ngx-infinite-scroll";
|
|
9
|
+
import * as i4 from "@angular/common";
|
|
10
|
+
/**
|
|
11
|
+
* Used to display a potentially infinitely scrollable list of content.
|
|
12
|
+
*
|
|
13
|
+
* This component is generally wrapped by another component that provides this one configuration.
|
|
14
|
+
*/
|
|
15
|
+
export class DbxListComponent {
|
|
16
|
+
constructor(cdRef) {
|
|
17
|
+
this.cdRef = cdRef;
|
|
18
|
+
this.DEFAULT_SCROLL_DISTANCE = 1.5;
|
|
19
|
+
this.DEFAULT_THROTTLE_SCROLL = 50;
|
|
20
|
+
/**
|
|
21
|
+
* Whether or not to add bottom padding to the list content.
|
|
22
|
+
*/
|
|
23
|
+
this.padded = true;
|
|
24
|
+
this.contentScrolled = new EventEmitter();
|
|
25
|
+
this._disabled = new BehaviorSubject(false);
|
|
26
|
+
this._loadMoreTrigger = new Subject();
|
|
27
|
+
this._scrollTrigger = new Subject();
|
|
28
|
+
this._config = new BehaviorSubject(undefined);
|
|
29
|
+
this._loadMoreSub = new SubscriptionObject();
|
|
30
|
+
this._onClickSub = new SubscriptionObject();
|
|
31
|
+
this._disabledSub = new SubscriptionObject();
|
|
32
|
+
this._onSelectionChangeSub = new SubscriptionObject();
|
|
33
|
+
this.context = new ListLoadingStateContextInstance({ showLoadingOnNoValue: false });
|
|
34
|
+
this.isEmpty$ = this.context.isEmpty$;
|
|
35
|
+
this.disabled$ = this._disabled.asObservable();
|
|
36
|
+
this.hideOnEmpty$ = this._config.pipe(filterMaybe(), map(x => Boolean(x.hideOnEmpty)), distinctUntilChanged(), shareReplay(1));
|
|
37
|
+
this.invertedList$ = this._config.pipe(filterMaybe(), map(x => Boolean(x?.throttle)), distinctUntilChanged(), shareReplay(1));
|
|
38
|
+
this.throttleScroll$ = this._config.pipe(map(x => (x?.throttle) ?? this.DEFAULT_THROTTLE_SCROLL), distinctUntilChanged(), shareReplay(1));
|
|
39
|
+
this.scrollDistance$ = this._config.pipe(map(x => (x?.scrollDistance) ?? this.DEFAULT_SCROLL_DISTANCE), distinctUntilChanged(), shareReplay(1));
|
|
40
|
+
this.scrollLoadMoreTrigger$ = this._config.pipe(switchMap((config) => {
|
|
41
|
+
const loadNextDirection = config?.invertedList ? 'up' : 'down';
|
|
42
|
+
return this._scrollTrigger.pipe(filter(x => x === loadNextDirection));
|
|
43
|
+
}));
|
|
44
|
+
this.loadMore$ = merge(this.scrollLoadMoreTrigger$, this._loadMoreTrigger);
|
|
45
|
+
this.injectedComponentConfig$ = this._config.pipe(distinctUntilChanged(), map((config) => {
|
|
46
|
+
let injectedComponentConfig;
|
|
47
|
+
if (config) {
|
|
48
|
+
const { componentClass, init, onClick, onSelectionChange, loadMore } = config;
|
|
49
|
+
injectedComponentConfig = {
|
|
50
|
+
componentClass: config.componentClass,
|
|
51
|
+
injector: config.injector,
|
|
52
|
+
init: (instance) => {
|
|
53
|
+
// Synchronize disabled
|
|
54
|
+
this._disabledSub.subscription = this.disabled$.subscribe((disabled) => instance.setDisabled(disabled));
|
|
55
|
+
if (init) {
|
|
56
|
+
init(instance);
|
|
57
|
+
}
|
|
58
|
+
instance.setListContext(this.context);
|
|
59
|
+
if (loadMore) {
|
|
60
|
+
this._loadMoreSub.subscription = this.loadMore$.pipe(
|
|
61
|
+
// Throttle additional loading calls using exhaustMap until observable returns, if one is returned.
|
|
62
|
+
exhaustMap(() => {
|
|
63
|
+
const result = loadMore();
|
|
64
|
+
let obs;
|
|
65
|
+
if (result) {
|
|
66
|
+
obs = result.pipe(catchError(() => of()));
|
|
67
|
+
}
|
|
68
|
+
else {
|
|
69
|
+
obs = of();
|
|
70
|
+
}
|
|
71
|
+
return obs;
|
|
72
|
+
})).subscribe();
|
|
73
|
+
}
|
|
74
|
+
if (onClick) {
|
|
75
|
+
if (instance.clickValue) {
|
|
76
|
+
this._onClickSub.subscription = instance.clickValue.subscribe(onClick);
|
|
77
|
+
}
|
|
78
|
+
else {
|
|
79
|
+
console.error(`onClick() was passed to listConfig, but target class ${componentClass} has no clicked event emitter.`);
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
if (onSelectionChange) {
|
|
83
|
+
if (instance.selectionChange) {
|
|
84
|
+
this._onSelectionChangeSub.subscription = instance.selectionChange.subscribe(onSelectionChange);
|
|
85
|
+
}
|
|
86
|
+
else {
|
|
87
|
+
console.error(`onSelectionChange() was passed to listConfig, but target class ${componentClass} has no selectionChange event emitter.`);
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
};
|
|
92
|
+
}
|
|
93
|
+
return injectedComponentConfig;
|
|
94
|
+
}), distinctUntilChanged(), shareReplay(1));
|
|
95
|
+
this.hideContent$ = this.context.stateChange$.pipe(switchMap(() => this.context.state$.pipe(filter((x) => loadingStateHasFinishedLoading(x)), first(), startWith(beginLoading()))), switchMap((state) => {
|
|
96
|
+
if (state?.loading) {
|
|
97
|
+
return of(true);
|
|
98
|
+
}
|
|
99
|
+
else {
|
|
100
|
+
return this.hideOnEmpty$.pipe(switchMap((hide) => (hide === false) ? of(false) : this.isEmpty$), distinctUntilChanged(), tapDetectChanges(this.cdRef), shareReplay(1));
|
|
101
|
+
}
|
|
102
|
+
}));
|
|
103
|
+
}
|
|
104
|
+
ngOnDestroy() {
|
|
105
|
+
delete this._content; // remove parent-child relation.
|
|
106
|
+
this._scrollTrigger.complete();
|
|
107
|
+
this._loadMoreTrigger.complete();
|
|
108
|
+
this._config.complete();
|
|
109
|
+
this._disabled.complete();
|
|
110
|
+
this._onClickSub.destroy();
|
|
111
|
+
this._loadMoreSub.destroy();
|
|
112
|
+
this._onSelectionChangeSub.destroy();
|
|
113
|
+
this._disabledSub.destroy();
|
|
114
|
+
this.context.destroy();
|
|
115
|
+
}
|
|
116
|
+
get state$() {
|
|
117
|
+
return this.context.state$;
|
|
118
|
+
}
|
|
119
|
+
set state$(state$) {
|
|
120
|
+
this.context.setStateObs(state$);
|
|
121
|
+
}
|
|
122
|
+
set config(config) {
|
|
123
|
+
this._config.next(config);
|
|
124
|
+
}
|
|
125
|
+
get disabled() {
|
|
126
|
+
return this._disabled.value;
|
|
127
|
+
}
|
|
128
|
+
set disabled(disabled) {
|
|
129
|
+
this._disabled.next(disabled ?? false);
|
|
130
|
+
}
|
|
131
|
+
getScrollPositionRelativeToBottom() {
|
|
132
|
+
try {
|
|
133
|
+
const element = this.nativeElement;
|
|
134
|
+
// At max scroll, scrollHeight = scrollTop + clientHeight;
|
|
135
|
+
const { scrollTop, scrollHeight, clientHeight } = element;
|
|
136
|
+
return scrollHeight - (scrollTop + clientHeight);
|
|
137
|
+
}
|
|
138
|
+
catch (e) {
|
|
139
|
+
return 0;
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
jumpToBottom() {
|
|
143
|
+
try {
|
|
144
|
+
this.nativeElement.scrollTop = this.nativeElement.scrollHeight;
|
|
145
|
+
}
|
|
146
|
+
catch (err) { }
|
|
147
|
+
}
|
|
148
|
+
jumpToPositionRelativeToBottom(pos) {
|
|
149
|
+
try {
|
|
150
|
+
const element = this.nativeElement;
|
|
151
|
+
const { scrollHeight, clientHeight } = element;
|
|
152
|
+
element.scrollTop = scrollHeight - (clientHeight + pos);
|
|
153
|
+
}
|
|
154
|
+
catch (err) { }
|
|
155
|
+
}
|
|
156
|
+
onScrollDown() {
|
|
157
|
+
this._scrollTrigger.next('down');
|
|
158
|
+
}
|
|
159
|
+
onScrollUp() {
|
|
160
|
+
this._scrollTrigger.next('up');
|
|
161
|
+
}
|
|
162
|
+
loadMore() {
|
|
163
|
+
this._loadMoreTrigger.next();
|
|
164
|
+
}
|
|
165
|
+
// MARK: Internal
|
|
166
|
+
get nativeElement() {
|
|
167
|
+
return this._content.elementRef.nativeElement;
|
|
168
|
+
}
|
|
169
|
+
get __content() {
|
|
170
|
+
return this._content;
|
|
171
|
+
}
|
|
172
|
+
set __content(content) {
|
|
173
|
+
if (this._content == null) {
|
|
174
|
+
this._content = content;
|
|
175
|
+
}
|
|
176
|
+
else {
|
|
177
|
+
throw new Error('Attempted to set __content in list outside of initialization.');
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
DbxListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: DbxListComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
182
|
+
DbxListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.4", type: DbxListComponent, selector: "dbx-list", inputs: { padded: "padded", state$: "state$", config: "config", disabled: "disabled" }, 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-injected-content [config]=\"injectedComponentConfig$ | async\"></dbx-injected-content>\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.DbxInjectedComponent; }), selector: "dbx-injected-content, [dbx-injected-content]", 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; }) } });
|
|
183
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: DbxListComponent, decorators: [{
|
|
184
|
+
type: Component,
|
|
185
|
+
args: [{ selector: 'dbx-list', host: {
|
|
186
|
+
'class': 'd-block dbx-list',
|
|
187
|
+
'[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-injected-content [config]=\"injectedComponentConfig$ | async\"></dbx-injected-content>\n <ng-content select=\"[bottom]\"></ng-content>\n</div>\n<ng-content *ngIf=\"isEmpty$ | async\" select=\"[empty]\"></ng-content>\n" }]
|
|
189
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { padded: [{
|
|
190
|
+
type: Input
|
|
191
|
+
}], contentScrolled: [{
|
|
192
|
+
type: Output
|
|
193
|
+
}], state$: [{
|
|
194
|
+
type: Input
|
|
195
|
+
}], config: [{
|
|
196
|
+
type: Input
|
|
197
|
+
}], disabled: [{
|
|
198
|
+
type: Input
|
|
199
|
+
}] } });
|
|
200
|
+
/**
|
|
201
|
+
* Used internally by DbxListComponent
|
|
202
|
+
*/
|
|
203
|
+
export class DbxListInternalContentDirective {
|
|
204
|
+
constructor(parent, elementRef) {
|
|
205
|
+
this.parent = parent;
|
|
206
|
+
this.elementRef = elementRef;
|
|
207
|
+
this.hide = false;
|
|
208
|
+
this.parent.__content = this;
|
|
209
|
+
}
|
|
210
|
+
onScrollEvent($event) {
|
|
211
|
+
const position = $event.target.scrollTop;
|
|
212
|
+
this.parent.contentScrolled.emit(position);
|
|
213
|
+
}
|
|
214
|
+
}
|
|
215
|
+
DbxListInternalContentDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: DbxListInternalContentDirective, deps: [{ token: DbxListComponent }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
216
|
+
DbxListInternalContentDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.4", 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 });
|
|
217
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: DbxListInternalContentDirective, decorators: [{
|
|
218
|
+
type: Directive,
|
|
219
|
+
args: [{
|
|
220
|
+
selector: '[dbx-list-internal-content]',
|
|
221
|
+
host: {
|
|
222
|
+
'class': 'd-block dbx-list-content',
|
|
223
|
+
'[class.dbx-list-content-hidden]': 'hide'
|
|
224
|
+
}
|
|
225
|
+
}]
|
|
226
|
+
}], ctorParameters: function () { return [{ type: DbxListComponent }, { type: i0.ElementRef }]; }, propDecorators: { hide: [{
|
|
227
|
+
type: Input
|
|
228
|
+
}], onScrollEvent: [{
|
|
229
|
+
type: HostListener,
|
|
230
|
+
args: ['scroll', ['$event']]
|
|
231
|
+
}] } });
|
|
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
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { Component } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
/**
|
|
4
|
+
* Component that is centered for use within an empty list.
|
|
5
|
+
*/
|
|
6
|
+
export class DbxListEmptyContentComponent {
|
|
7
|
+
}
|
|
8
|
+
DbxListEmptyContentComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: DbxListEmptyContentComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
9
|
+
DbxListEmptyContentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.4", type: DbxListEmptyContentComponent, selector: "dbx-list-empty-content", ngImport: i0, template: `
|
|
10
|
+
<div class="dbx-list-empty-content">
|
|
11
|
+
<ng-content></ng-content>
|
|
12
|
+
</div>
|
|
13
|
+
`, isInline: true });
|
|
14
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: DbxListEmptyContentComponent, decorators: [{
|
|
15
|
+
type: Component,
|
|
16
|
+
args: [{
|
|
17
|
+
selector: 'dbx-list-empty-content',
|
|
18
|
+
template: `
|
|
19
|
+
<div class="dbx-list-empty-content">
|
|
20
|
+
<ng-content></ng-content>
|
|
21
|
+
</div>
|
|
22
|
+
`,
|
|
23
|
+
// TODO: styleUrls: ['./container.scss']
|
|
24
|
+
}]
|
|
25
|
+
}] });
|
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC5jb250ZW50LmVtcHR5LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC13ZWIvc3JjL2xpYi9sYXlvdXQvbGlzdC9saXN0LmNvbnRlbnQuZW1wdHkuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVMsTUFBTSxlQUFlLENBQUM7O0FBRWpEOztHQUVHO0FBVUgsTUFBTSxPQUFPLDRCQUE0Qjs7eUhBQTVCLDRCQUE0Qjs2R0FBNUIsNEJBQTRCLDhEQVA3Qjs7OztHQUlUOzJGQUdVLDRCQUE0QjtrQkFUeEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsd0JBQXdCO29CQUNsQyxRQUFRLEVBQUU7Ozs7R0FJVDtvQkFDRCx3Q0FBd0M7aUJBQ3pDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG4vKipcbiAqIENvbXBvbmVudCB0aGF0IGlzIGNlbnRlcmVkIGZvciB1c2Ugd2l0aGluIGFuIGVtcHR5IGxpc3QuXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2RieC1saXN0LWVtcHR5LWNvbnRlbnQnLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxkaXYgY2xhc3M9XCJkYngtbGlzdC1lbXB0eS1jb250ZW50XCI+XG4gICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgPC9kaXY+XG4gIGAsXG4gIC8vIFRPRE86IHN0eWxlVXJsczogWycuL2NvbnRhaW5lci5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgRGJ4TGlzdEVtcHR5Q29udGVudENvbXBvbmVudCB7IH1cbiJdfQ==
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { filterMaybe, getter } from '@dereekb/rxjs';
|
|
2
|
+
import { BehaviorSubject, map, shareReplay } from 'rxjs';
|
|
3
|
+
import { Output, EventEmitter, Directive, Input } from "@angular/core";
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export const DEFAULT_STATIC_LIST_DIRECTIVE_TEMPLATE = `
|
|
6
|
+
<dbx-list [config]="config">
|
|
7
|
+
<ng-content top select="[top]"></ng-content>
|
|
8
|
+
<ng-content bottom select="[bottom]"></ng-content>
|
|
9
|
+
<ng-content empty select="[empty]"></ng-content>
|
|
10
|
+
</dbx-list>
|
|
11
|
+
`;
|
|
12
|
+
// MARK: Wrapper
|
|
13
|
+
export const DEFAULT_LIST_WRAPPER_DIRECTIVE_TEMPLATE = `
|
|
14
|
+
<dbx-list [state$]="state$" [config]="config$ | async" [disabled]="disabled">
|
|
15
|
+
<ng-content top select="[top]"></ng-content>
|
|
16
|
+
<ng-content bottom select="[bottom]"></ng-content>
|
|
17
|
+
<ng-content empty select="[empty]"></ng-content>
|
|
18
|
+
</dbx-list>
|
|
19
|
+
`;
|
|
20
|
+
export class AbstractDbxListWrapperDirective {
|
|
21
|
+
constructor(initConfig) {
|
|
22
|
+
this.initConfig = initConfig;
|
|
23
|
+
this._init = new BehaviorSubject(undefined);
|
|
24
|
+
this.config$ = this._init.pipe(filterMaybe(), getter(), map((x) => this._buildListConfig(x)), shareReplay(1));
|
|
25
|
+
this.clickItem = new EventEmitter();
|
|
26
|
+
this.loadMore = new EventEmitter();
|
|
27
|
+
}
|
|
28
|
+
ngOnInit() {
|
|
29
|
+
this._init.next(this.initConfig);
|
|
30
|
+
}
|
|
31
|
+
ngOnDestroy() {
|
|
32
|
+
this._init.complete();
|
|
33
|
+
this.clickItem.complete();
|
|
34
|
+
this.loadMore.complete();
|
|
35
|
+
}
|
|
36
|
+
_buildListConfig(config) {
|
|
37
|
+
return {
|
|
38
|
+
...config,
|
|
39
|
+
onClick: (x) => this.clickItem.emit(x),
|
|
40
|
+
loadMore: () => this.loadMore.emit()
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
AbstractDbxListWrapperDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: AbstractDbxListWrapperDirective, deps: "invalid", target: i0.ɵɵFactoryTarget.Directive });
|
|
45
|
+
AbstractDbxListWrapperDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.4", type: AbstractDbxListWrapperDirective, inputs: { disabled: "disabled", state$: "state$" }, outputs: { clickItem: "clickItem", loadMore: "loadMore" }, ngImport: i0 });
|
|
46
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: AbstractDbxListWrapperDirective, decorators: [{
|
|
47
|
+
type: Directive
|
|
48
|
+
}], ctorParameters: function () { return [{ type: undefined }]; }, propDecorators: { disabled: [{
|
|
49
|
+
type: Input
|
|
50
|
+
}], state$: [{
|
|
51
|
+
type: Input
|
|
52
|
+
}], clickItem: [{
|
|
53
|
+
type: Output
|
|
54
|
+
}], loadMore: [{
|
|
55
|
+
type: Output
|
|
56
|
+
}] } });
|
|
57
|
+
export class AbstractDbxSelectionListWrapperDirective extends AbstractDbxListWrapperDirective {
|
|
58
|
+
constructor() {
|
|
59
|
+
super(...arguments);
|
|
60
|
+
this.selectionChange = new EventEmitter();
|
|
61
|
+
}
|
|
62
|
+
ngOnDestroy() {
|
|
63
|
+
this.selectionChange.complete();
|
|
64
|
+
}
|
|
65
|
+
_buildListConfig(config) {
|
|
66
|
+
const result = super._buildListConfig(config);
|
|
67
|
+
result.onSelectionChange = (x) => this.selectionChange.next(x);
|
|
68
|
+
return result;
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
AbstractDbxSelectionListWrapperDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: AbstractDbxSelectionListWrapperDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
72
|
+
AbstractDbxSelectionListWrapperDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.4", type: AbstractDbxSelectionListWrapperDirective, outputs: { selectionChange: "selectionChange" }, usesInheritance: true, ngImport: i0 });
|
|
73
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: AbstractDbxSelectionListWrapperDirective, decorators: [{
|
|
74
|
+
type: Directive
|
|
75
|
+
}], propDecorators: { selectionChange: [{
|
|
76
|
+
type: Output
|
|
77
|
+
}] } });
|
|
78
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtd2ViL3NyYy9saWIvbGF5b3V0L2xpc3QvbGlzdC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFvQixXQUFXLEVBQW9CLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4RixPQUFPLEVBQWMsZUFBZSxFQUFFLEdBQUcsRUFBRSxXQUFXLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDckUsT0FBTyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQXFCLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBSzFGLE1BQU0sQ0FBQyxNQUFNLHNDQUFzQyxHQUFHOzs7Ozs7Q0FNckQsQ0FBQztBQUVGLGdCQUFnQjtBQUNoQixNQUFNLENBQUMsTUFBTSx1Q0FBdUMsR0FBRzs7Ozs7O0NBTXRELENBQUM7QUFLRixNQUFNLE9BQWdCLCtCQUErQjtJQXFCbkQsWUFBcUIsVUFBK0I7UUFBL0IsZUFBVSxHQUFWLFVBQVUsQ0FBcUI7UUFuQm5DLFVBQUssR0FBRyxJQUFJLGVBQWUsQ0FBNkIsU0FBUyxDQUFDLENBQUM7UUFDM0UsWUFBTyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUNoQyxXQUFXLEVBQUUsRUFDYixNQUFNLEVBQUUsRUFDUixHQUFHLENBQUMsQ0FBQyxDQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUN2QyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQVNsQixjQUFTLEdBQUcsSUFBSSxZQUFZLEVBQUssQ0FBQztRQUdsQyxhQUFRLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztJQUVvQixDQUFDO0lBRXpELFFBQVE7UUFDTixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ3RCLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDMUIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUMzQixDQUFDO0lBRVMsZ0JBQWdCLENBQUMsTUFBUztRQUNsQyxPQUFPO1lBQ0wsR0FBRyxNQUFNO1lBQ1QsT0FBTyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7WUFDdEMsUUFBUSxFQUFFLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFO1NBQ3JDLENBQUM7SUFDSixDQUFDOzs0SEF2Q21CLCtCQUErQjtnSEFBL0IsK0JBQStCOzJGQUEvQiwrQkFBK0I7a0JBRHBELFNBQVM7NkZBV1IsUUFBUTtzQkFEUCxLQUFLO2dCQUlOLE1BQU07c0JBREwsS0FBSztnQkFJTixTQUFTO3NCQURSLE1BQU07Z0JBSVAsUUFBUTtzQkFEUCxNQUFNOztBQTZCVCxNQUFNLE9BQWdCLHdDQUFpTyxTQUFRLCtCQUEyQztJQUQxUzs7UUFJRSxvQkFBZSxHQUFHLElBQUksWUFBWSxFQUF5QixDQUFDO0tBWTdEO0lBVlUsV0FBVztRQUNsQixJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ2xDLENBQUM7SUFFa0IsZ0JBQWdCLENBQUMsTUFBUztRQUMzQyxNQUFNLE1BQU0sR0FBRyxLQUFLLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDOUMsTUFBTSxDQUFDLGlCQUFpQixHQUFHLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUMvRCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDOztxSUFibUIsd0NBQXdDO3lIQUF4Qyx3Q0FBd0M7MkZBQXhDLHdDQUF3QztrQkFEN0QsU0FBUzs4QkFJUixlQUFlO3NCQURkLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBMaXN0TG9hZGluZ1N0YXRlLCBmaWx0ZXJNYXliZSwgT2JzZXJ2YWJsZUdldHRlciwgZ2V0dGVyIH0gZnJvbSAnQGRlcmVla2Ivcnhqcyc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBCZWhhdmlvclN1YmplY3QsIG1hcCwgc2hhcmVSZXBsYXkgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IE91dHB1dCwgRXZlbnRFbWl0dGVyLCBPbkluaXQsIE9uRGVzdHJveSwgRGlyZWN0aXZlLCBJbnB1dCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBEYnhMaXN0Q29uZmlnIH0gZnJvbSBcIi4vbGlzdC5jb21wb25lbnRcIjtcbmltcG9ydCB7IERieExpc3RWaWV3LCBMaXN0U2VsZWN0aW9uU3RhdGUgfSBmcm9tIFwiLi9saXN0LnZpZXdcIjtcbmltcG9ydCB7IE1heWJlIH0gZnJvbSAnQGRlcmVla2IvdXRpbCc7XG5cbmV4cG9ydCBjb25zdCBERUZBVUxUX1NUQVRJQ19MSVNUX0RJUkVDVElWRV9URU1QTEFURSA9IGBcbjxkYngtbGlzdCBbY29uZmlnXT1cImNvbmZpZ1wiPlxuICA8bmctY29udGVudCB0b3Agc2VsZWN0PVwiW3RvcF1cIj48L25nLWNvbnRlbnQ+XG4gIDxuZy1jb250ZW50IGJvdHRvbSBzZWxlY3Q9XCJbYm90dG9tXVwiPjwvbmctY29udGVudD5cbiAgPG5nLWNvbnRlbnQgZW1wdHkgc2VsZWN0PVwiW2VtcHR5XVwiPjwvbmctY29udGVudD5cbjwvZGJ4LWxpc3Q+XG5gO1xuXG4vLyBNQVJLOiBXcmFwcGVyXG5leHBvcnQgY29uc3QgREVGQVVMVF9MSVNUX1dSQVBQRVJfRElSRUNUSVZFX1RFTVBMQVRFID0gYFxuPGRieC1saXN0IFtzdGF0ZSRdPVwic3RhdGUkXCIgW2NvbmZpZ109XCJjb25maWckIHwgYXN5bmNcIiBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIj5cbiAgPG5nLWNvbnRlbnQgdG9wIHNlbGVjdD1cIlt0b3BdXCI+PC9uZy1jb250ZW50PlxuICA8bmctY29udGVudCBib3R0b20gc2VsZWN0PVwiW2JvdHRvbV1cIj48L25nLWNvbnRlbnQ+XG4gIDxuZy1jb250ZW50IGVtcHR5IHNlbGVjdD1cIltlbXB0eV1cIj48L25nLWNvbnRlbnQ+XG48L2RieC1saXN0PlxuYDtcblxuZXhwb3J0IGludGVyZmFjZSBEYnhMaXN0V3JhcHBlckNvbmZpZzxULCBWIGV4dGVuZHMgRGJ4TGlzdFZpZXc8VD4gPSBEYnhMaXN0VmlldzxUPj4gZXh0ZW5kcyBPbWl0PERieExpc3RDb25maWc8VCwgVj4sICdvbkNsaWNrJyB8ICdsb2FkTW9yZSc+IHsgfVxuXG5ARGlyZWN0aXZlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBYnN0cmFjdERieExpc3RXcmFwcGVyRGlyZWN0aXZlPFQsIFYgZXh0ZW5kcyBEYnhMaXN0VmlldzxUPiA9IERieExpc3RWaWV3PFQ+LCBDIGV4dGVuZHMgRGJ4TGlzdFdyYXBwZXJDb25maWc8VCwgVj4gPSBEYnhMaXN0V3JhcHBlckNvbmZpZzxULCBWPiwgUyBleHRlbmRzIExpc3RMb2FkaW5nU3RhdGU8VD4gPSBMaXN0TG9hZGluZ1N0YXRlPFQ+PiBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9pbml0ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxNYXliZTxPYnNlcnZhYmxlR2V0dGVyPEM+Pj4odW5kZWZpbmVkKTtcbiAgcmVhZG9ubHkgY29uZmlnJCA9IHRoaXMuX2luaXQucGlwZShcbiAgICBmaWx0ZXJNYXliZSgpLFxuICAgIGdldHRlcigpLFxuICAgIG1hcCgoeDogQykgPT4gdGhpcy5fYnVpbGRMaXN0Q29uZmlnKHgpKSxcbiAgICBzaGFyZVJlcGxheSgxKSk7XG5cbiAgQElucHV0KClcbiAgZGlzYWJsZWQ/OiBNYXliZTxib29sZWFuPjtcblxuICBASW5wdXQoKVxuICBzdGF0ZSQ/OiBNYXliZTxPYnNlcnZhYmxlPFM+PjtcblxuICBAT3V0cHV0KClcbiAgY2xpY2tJdGVtID0gbmV3IEV2ZW50RW1pdHRlcjxUPigpO1xuXG4gIEBPdXRwdXQoKVxuICBsb2FkTW9yZSA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICBjb25zdHJ1Y3RvcihyZWFkb25seSBpbml0Q29uZmlnOiBPYnNlcnZhYmxlR2V0dGVyPEM+KSB7IH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLl9pbml0Lm5leHQodGhpcy5pbml0Q29uZmlnKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuX2luaXQuY29tcGxldGUoKTtcbiAgICB0aGlzLmNsaWNrSXRlbS5jb21wbGV0ZSgpO1xuICAgIHRoaXMubG9hZE1vcmUuY29tcGxldGUoKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBfYnVpbGRMaXN0Q29uZmlnKGNvbmZpZzogQyk6IERieExpc3RDb25maWc8VCwgVj4ge1xuICAgIHJldHVybiB7XG4gICAgICAuLi5jb25maWcsXG4gICAgICBvbkNsaWNrOiAoeCkgPT4gdGhpcy5jbGlja0l0ZW0uZW1pdCh4KSxcbiAgICAgIGxvYWRNb3JlOiAoKSA9PiB0aGlzLmxvYWRNb3JlLmVtaXQoKVxuICAgIH07XG4gIH1cblxufVxuXG4vLyBNQVJLOiBTZWxlY3Rpb24gV3JhcHBlclxuZXhwb3J0IGludGVyZmFjZSBEYnhTZWxlY3Rpb25MaXN0V3JhcHBlckNvbmZpZzxULCBWIGV4dGVuZHMgRGJ4TGlzdFZpZXc8VD4gPSBEYnhMaXN0VmlldzxUPj4gZXh0ZW5kcyBPbWl0PERieExpc3RXcmFwcGVyQ29uZmlnPFQsIFY+LCAnb25TZWxlY3Rpb25DaGFuZ2UnPiB7IH1cblxuQERpcmVjdGl2ZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQWJzdHJhY3REYnhTZWxlY3Rpb25MaXN0V3JhcHBlckRpcmVjdGl2ZTxULCBWIGV4dGVuZHMgRGJ4TGlzdFZpZXc8VD4gPSBEYnhMaXN0VmlldzxUPiwgQyBleHRlbmRzIERieFNlbGVjdGlvbkxpc3RXcmFwcGVyQ29uZmlnPFQsIFY+ID0gRGJ4U2VsZWN0aW9uTGlzdFdyYXBwZXJDb25maWc8VCwgVj4sIFMgZXh0ZW5kcyBMaXN0TG9hZGluZ1N0YXRlPFQ+ID0gTGlzdExvYWRpbmdTdGF0ZTxUPj4gZXh0ZW5kcyBBYnN0cmFjdERieExpc3RXcmFwcGVyRGlyZWN0aXZlPFQsIFYsIEMsIFM+IHtcblxuICBAT3V0cHV0KClcbiAgc2VsZWN0aW9uQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxMaXN0U2VsZWN0aW9uU3RhdGU8VD4+KCk7XG5cbiAgb3ZlcnJpZGUgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5zZWxlY3Rpb25DaGFuZ2UuY29tcGxldGUoKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSBfYnVpbGRMaXN0Q29uZmlnKGNvbmZpZzogQyk6IERieExpc3RDb25maWc8VCwgVj4ge1xuICAgIGNvbnN0IHJlc3VsdCA9IHN1cGVyLl9idWlsZExpc3RDb25maWcoY29uZmlnKTtcbiAgICByZXN1bHQub25TZWxlY3Rpb25DaGFuZ2UgPSAoeCkgPT4gdGhpcy5zZWxlY3Rpb25DaGFuZ2UubmV4dCh4KTtcbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbn1cbiJdfQ==
|
|
@@ -1,26 +1,71 @@
|
|
|
1
|
+
import { DbxAnchorModule } from '../../router/layout/anchor/anchor.module';
|
|
2
|
+
import { DbxLoadingModule } from '../../loading/loading.module';
|
|
3
|
+
import { MatIconModule } from '@angular/material/icon';
|
|
4
|
+
import { MatListModule } from '@angular/material/list';
|
|
1
5
|
import { CommonModule } from '@angular/common';
|
|
2
6
|
import { NgModule } from '@angular/core';
|
|
3
|
-
import {
|
|
7
|
+
import { DbxInjectedComponentModule } from '@dereekb/dbx-core';
|
|
8
|
+
import { DbxListComponent, DbxListInternalContentDirective } from './list.component';
|
|
9
|
+
import { DbxListEmptyContentComponent } from './list.content.empty.component';
|
|
10
|
+
import { InfiniteScrollModule } from 'ngx-infinite-scroll';
|
|
11
|
+
import { DbxSelectionValueListItemViewComponent, DbxSelectionValueListViewComponent } from './list.view.value.selection.component';
|
|
12
|
+
import { DbxValueListViewComponent } from './list.view.value.component';
|
|
4
13
|
import * as i0 from "@angular/core";
|
|
5
|
-
export class
|
|
14
|
+
export class DbxListLayoutModule {
|
|
6
15
|
}
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
16
|
+
DbxListLayoutModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: DbxListLayoutModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
17
|
+
DbxListLayoutModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: DbxListLayoutModule, declarations: [DbxListComponent,
|
|
18
|
+
DbxListInternalContentDirective,
|
|
19
|
+
DbxListEmptyContentComponent,
|
|
20
|
+
DbxValueListViewComponent,
|
|
21
|
+
DbxSelectionValueListViewComponent,
|
|
22
|
+
DbxSelectionValueListItemViewComponent], imports: [CommonModule,
|
|
23
|
+
DbxLoadingModule,
|
|
24
|
+
DbxAnchorModule,
|
|
25
|
+
InfiniteScrollModule,
|
|
26
|
+
DbxInjectedComponentModule,
|
|
27
|
+
MatListModule,
|
|
28
|
+
MatIconModule], exports: [DbxListComponent,
|
|
29
|
+
DbxListEmptyContentComponent,
|
|
30
|
+
DbxValueListViewComponent,
|
|
31
|
+
DbxSelectionValueListViewComponent,
|
|
32
|
+
DbxSelectionValueListItemViewComponent] });
|
|
33
|
+
DbxListLayoutModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: DbxListLayoutModule, imports: [[
|
|
34
|
+
CommonModule,
|
|
35
|
+
DbxLoadingModule,
|
|
36
|
+
DbxAnchorModule,
|
|
37
|
+
InfiniteScrollModule,
|
|
38
|
+
DbxInjectedComponentModule,
|
|
39
|
+
MatListModule,
|
|
40
|
+
MatIconModule
|
|
11
41
|
]] });
|
|
12
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.
|
|
42
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: DbxListLayoutModule, decorators: [{
|
|
13
43
|
type: NgModule,
|
|
14
44
|
args: [{
|
|
15
45
|
imports: [
|
|
16
|
-
CommonModule
|
|
46
|
+
CommonModule,
|
|
47
|
+
DbxLoadingModule,
|
|
48
|
+
DbxAnchorModule,
|
|
49
|
+
InfiniteScrollModule,
|
|
50
|
+
DbxInjectedComponentModule,
|
|
51
|
+
MatListModule,
|
|
52
|
+
MatIconModule
|
|
17
53
|
],
|
|
18
54
|
declarations: [
|
|
19
|
-
|
|
55
|
+
DbxListComponent,
|
|
56
|
+
DbxListInternalContentDirective,
|
|
57
|
+
DbxListEmptyContentComponent,
|
|
58
|
+
DbxValueListViewComponent,
|
|
59
|
+
DbxSelectionValueListViewComponent,
|
|
60
|
+
DbxSelectionValueListItemViewComponent
|
|
20
61
|
],
|
|
21
62
|
exports: [
|
|
22
|
-
|
|
63
|
+
DbxListComponent,
|
|
64
|
+
DbxListEmptyContentComponent,
|
|
65
|
+
DbxValueListViewComponent,
|
|
66
|
+
DbxSelectionValueListViewComponent,
|
|
67
|
+
DbxSelectionValueListItemViewComponent
|
|
23
68
|
]
|
|
24
69
|
}]
|
|
25
70
|
}] });
|
|
26
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
71
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC5sYXlvdXQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LXdlYi9zcmMvbGliL2xheW91dC9saXN0L2xpc3QubGF5b3V0Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDM0UsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDaEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsK0JBQStCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNyRixPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUM5RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsc0NBQXNDLEVBQUUsa0NBQWtDLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUNuSSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7QUE0QnhFLE1BQU0sT0FBTyxtQkFBbUI7O2dIQUFuQixtQkFBbUI7aUhBQW5CLG1CQUFtQixpQkFmNUIsZ0JBQWdCO1FBQ2hCLCtCQUErQjtRQUMvQiw0QkFBNEI7UUFDNUIseUJBQXlCO1FBQ3pCLGtDQUFrQztRQUNsQyxzQ0FBc0MsYUFkdEMsWUFBWTtRQUNaLGdCQUFnQjtRQUNoQixlQUFlO1FBQ2Ysb0JBQW9CO1FBQ3BCLDBCQUEwQjtRQUMxQixhQUFhO1FBQ2IsYUFBYSxhQVdiLGdCQUFnQjtRQUNoQiw0QkFBNEI7UUFDNUIseUJBQXlCO1FBQ3pCLGtDQUFrQztRQUNsQyxzQ0FBc0M7aUhBRzdCLG1CQUFtQixZQXpCckI7WUFDUCxZQUFZO1lBQ1osZ0JBQWdCO1lBQ2hCLGVBQWU7WUFDZixvQkFBb0I7WUFDcEIsMEJBQTBCO1lBQzFCLGFBQWE7WUFDYixhQUFhO1NBQ2Q7MkZBaUJVLG1CQUFtQjtrQkExQi9CLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osZ0JBQWdCO3dCQUNoQixlQUFlO3dCQUNmLG9CQUFvQjt3QkFDcEIsMEJBQTBCO3dCQUMxQixhQUFhO3dCQUNiLGFBQWE7cUJBQ2Q7b0JBQ0QsWUFBWSxFQUFFO3dCQUNaLGdCQUFnQjt3QkFDaEIsK0JBQStCO3dCQUMvQiw0QkFBNEI7d0JBQzVCLHlCQUF5Qjt3QkFDekIsa0NBQWtDO3dCQUNsQyxzQ0FBc0M7cUJBQ3ZDO29CQUNELE9BQU8sRUFBRTt3QkFDUCxnQkFBZ0I7d0JBQ2hCLDRCQUE0Qjt3QkFDNUIseUJBQXlCO3dCQUN6QixrQ0FBa0M7d0JBQ2xDLHNDQUFzQztxQkFDdkM7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEYnhBbmNob3JNb2R1bGUgfSBmcm9tICcuLi8uLi9yb3V0ZXIvbGF5b3V0L2FuY2hvci9hbmNob3IubW9kdWxlJztcbmltcG9ydCB7IERieExvYWRpbmdNb2R1bGUgfSBmcm9tICcuLi8uLi9sb2FkaW5nL2xvYWRpbmcubW9kdWxlJztcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7IE1hdExpc3RNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9saXN0JztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRGJ4SW5qZWN0ZWRDb21wb25lbnRNb2R1bGUgfSBmcm9tICdAZGVyZWVrYi9kYngtY29yZSc7XG5pbXBvcnQgeyBEYnhMaXN0Q29tcG9uZW50LCBEYnhMaXN0SW50ZXJuYWxDb250ZW50RGlyZWN0aXZlIH0gZnJvbSAnLi9saXN0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEYnhMaXN0RW1wdHlDb250ZW50Q29tcG9uZW50IH0gZnJvbSAnLi9saXN0LmNvbnRlbnQuZW1wdHkuY29tcG9uZW50JztcbmltcG9ydCB7IEluZmluaXRlU2Nyb2xsTW9kdWxlIH0gZnJvbSAnbmd4LWluZmluaXRlLXNjcm9sbCc7XG5pbXBvcnQgeyBEYnhTZWxlY3Rpb25WYWx1ZUxpc3RJdGVtVmlld0NvbXBvbmVudCwgRGJ4U2VsZWN0aW9uVmFsdWVMaXN0Vmlld0NvbXBvbmVudCB9IGZyb20gJy4vbGlzdC52aWV3LnZhbHVlLnNlbGVjdGlvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgRGJ4VmFsdWVMaXN0Vmlld0NvbXBvbmVudCB9IGZyb20gJy4vbGlzdC52aWV3LnZhbHVlLmNvbXBvbmVudCc7XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgRGJ4TG9hZGluZ01vZHVsZSxcbiAgICBEYnhBbmNob3JNb2R1bGUsXG4gICAgSW5maW5pdGVTY3JvbGxNb2R1bGUsXG4gICAgRGJ4SW5qZWN0ZWRDb21wb25lbnRNb2R1bGUsXG4gICAgTWF0TGlzdE1vZHVsZSxcbiAgICBNYXRJY29uTW9kdWxlXG4gIF0sXG4gIGRlY2xhcmF0aW9uczogW1xuICAgIERieExpc3RDb21wb25lbnQsXG4gICAgRGJ4TGlzdEludGVybmFsQ29udGVudERpcmVjdGl2ZSxcbiAgICBEYnhMaXN0RW1wdHlDb250ZW50Q29tcG9uZW50LFxuICAgIERieFZhbHVlTGlzdFZpZXdDb21wb25lbnQsXG4gICAgRGJ4U2VsZWN0aW9uVmFsdWVMaXN0Vmlld0NvbXBvbmVudCxcbiAgICBEYnhTZWxlY3Rpb25WYWx1ZUxpc3RJdGVtVmlld0NvbXBvbmVudFxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgRGJ4TGlzdENvbXBvbmVudCxcbiAgICBEYnhMaXN0RW1wdHlDb250ZW50Q29tcG9uZW50LFxuICAgIERieFZhbHVlTGlzdFZpZXdDb21wb25lbnQsXG4gICAgRGJ4U2VsZWN0aW9uVmFsdWVMaXN0Vmlld0NvbXBvbmVudCxcbiAgICBEYnhTZWxlY3Rpb25WYWx1ZUxpc3RJdGVtVmlld0NvbXBvbmVudFxuICBdXG59KVxuZXhwb3J0IGNsYXNzIERieExpc3RMYXlvdXRNb2R1bGUgeyB9XG4iXX0=
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { switchMapMaybeObs } from '@dereekb/rxjs';
|
|
2
|
+
import { BehaviorSubject, of } from 'rxjs';
|
|
3
|
+
import { Directive, EventEmitter, Input, Output } from '@angular/core';
|
|
4
|
+
import { shareReplay } from 'rxjs/operators';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
/**
|
|
7
|
+
* Abstract DbxListView implementation.
|
|
8
|
+
*/
|
|
9
|
+
export class AbstractDbxListViewDirective {
|
|
10
|
+
constructor() {
|
|
11
|
+
this._disabled = new BehaviorSubject(false);
|
|
12
|
+
this._values$ = new BehaviorSubject(undefined);
|
|
13
|
+
this.values$ = this._values$.pipe(switchMapMaybeObs(), shareReplay(1));
|
|
14
|
+
this.disabled$ = this._disabled.asObservable();
|
|
15
|
+
this.clickValue = new EventEmitter();
|
|
16
|
+
}
|
|
17
|
+
set valueArray(values) {
|
|
18
|
+
this.setValues(values ? of(values) : undefined);
|
|
19
|
+
}
|
|
20
|
+
set values(values) {
|
|
21
|
+
this.setValues(values);
|
|
22
|
+
}
|
|
23
|
+
ngOnDestroy() {
|
|
24
|
+
this._values$.complete();
|
|
25
|
+
}
|
|
26
|
+
onClickValue(value) {
|
|
27
|
+
this.clickValue.emit(value);
|
|
28
|
+
}
|
|
29
|
+
setListContext(state) {
|
|
30
|
+
this.setValues(state.list$);
|
|
31
|
+
}
|
|
32
|
+
setValues(valuesObs) {
|
|
33
|
+
this._values$.next(valuesObs);
|
|
34
|
+
}
|
|
35
|
+
setDisabled(disabled) {
|
|
36
|
+
this._disabled.next(disabled);
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
AbstractDbxListViewDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: AbstractDbxListViewDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
40
|
+
AbstractDbxListViewDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.4", type: AbstractDbxListViewDirective, inputs: { valueArray: "valueArray", values: "values" }, outputs: { clickValue: "clickValue" }, ngImport: i0 });
|
|
41
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: AbstractDbxListViewDirective, decorators: [{
|
|
42
|
+
type: Directive
|
|
43
|
+
}], ctorParameters: function () { return []; }, propDecorators: { clickValue: [{
|
|
44
|
+
type: Output
|
|
45
|
+
}], valueArray: [{
|
|
46
|
+
type: Input
|
|
47
|
+
}], values: [{
|
|
48
|
+
type: Input
|
|
49
|
+
}] } });
|
|
50
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC52aWV3LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC13ZWIvc3JjL2xpYi9sYXlvdXQvbGlzdC9saXN0LnZpZXcuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBMkIsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0UsT0FBTyxFQUFFLGVBQWUsRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdkQsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFhLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsRixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7O0FBSTdDOztHQUVHO0FBRUgsTUFBTSxPQUFnQiw0QkFBNEI7SUFXaEQ7UUFUaUIsY0FBUyxHQUFHLElBQUksZUFBZSxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBQ2hELGFBQVEsR0FBRyxJQUFJLGVBQWUsQ0FBeUIsU0FBUyxDQUFDLENBQUM7UUFFMUUsWUFBTyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLGlCQUFpQixFQUFFLEVBQUUsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDbEUsY0FBUyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsWUFBWSxFQUFFLENBQUM7UUFHbkQsZUFBVSxHQUFHLElBQUksWUFBWSxFQUFLLENBQUM7SUFFbkIsQ0FBQztJQUVqQixJQUNJLFVBQVUsQ0FBQyxNQUFrQjtRQUMvQixJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUNsRCxDQUFDO0lBRUQsSUFDSSxNQUFNLENBQUMsTUFBOEI7UUFDdkMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN6QixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUVELFlBQVksQ0FBQyxLQUFRO1FBQ25CLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFFRCxjQUFjLENBQUMsS0FBaUM7UUFDOUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVELFNBQVMsQ0FBQyxTQUFpQztRQUN6QyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBRUQsV0FBVyxDQUFDLFFBQWlCO1FBQzNCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ2hDLENBQUM7O3lIQXpDbUIsNEJBQTRCOzZHQUE1Qiw0QkFBNEI7MkZBQTVCLDRCQUE0QjtrQkFEakQsU0FBUzswRUFVUixVQUFVO3NCQURULE1BQU07Z0JBTUgsVUFBVTtzQkFEYixLQUFLO2dCQU1GLE1BQU07c0JBRFQsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IExpc3RMb2FkaW5nU3RhdGVDb250ZXh0LCBzd2l0Y2hNYXBNYXliZU9icyB9IGZyb20gJ0BkZXJlZWtiL3J4anMnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlLCBvZiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRGlyZWN0aXZlLCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkRlc3Ryb3ksIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgc2hhcmVSZXBsYXkgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBEYnhMaXN0VmlldyB9IGZyb20gJy4vbGlzdC52aWV3JztcbmltcG9ydCB7IE1heWJlIH0gZnJvbSAnQGRlcmVla2IvdXRpbCc7XG5cbi8qKlxuICogQWJzdHJhY3QgRGJ4TGlzdFZpZXcgaW1wbGVtZW50YXRpb24uXG4gKi9cbkBEaXJlY3RpdmUoKVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFic3RyYWN0RGJ4TGlzdFZpZXdEaXJlY3RpdmU8VD4gaW1wbGVtZW50cyBEYnhMaXN0VmlldzxUPiwgT25EZXN0cm95IHtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9kaXNhYmxlZCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuICBwcml2YXRlIHJlYWRvbmx5IF92YWx1ZXMkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxNYXliZTxPYnNlcnZhYmxlPFRbXT4+Pih1bmRlZmluZWQpO1xuXG4gIHJlYWRvbmx5IHZhbHVlcyQgPSB0aGlzLl92YWx1ZXMkLnBpcGUoc3dpdGNoTWFwTWF5YmVPYnMoKSwgc2hhcmVSZXBsYXkoMSkpO1xuICByZWFkb25seSBkaXNhYmxlZCQgPSB0aGlzLl9kaXNhYmxlZC5hc09ic2VydmFibGUoKTtcblxuICBAT3V0cHV0KClcbiAgY2xpY2tWYWx1ZSA9IG5ldyBFdmVudEVtaXR0ZXI8VD4oKTtcblxuICBjb25zdHJ1Y3RvcigpIHsgfVxuXG4gIEBJbnB1dCgpXG4gIHNldCB2YWx1ZUFycmF5KHZhbHVlczogTWF5YmU8VFtdPikge1xuICAgIHRoaXMuc2V0VmFsdWVzKHZhbHVlcyA/IG9mKHZhbHVlcykgOiB1bmRlZmluZWQpO1xuICB9XG5cbiAgQElucHV0KClcbiAgc2V0IHZhbHVlcyh2YWx1ZXM6IE1heWJlPE9ic2VydmFibGU8VFtdPj4pIHtcbiAgICB0aGlzLnNldFZhbHVlcyh2YWx1ZXMpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fdmFsdWVzJC5jb21wbGV0ZSgpO1xuICB9XG5cbiAgb25DbGlja1ZhbHVlKHZhbHVlOiBUKSB7XG4gICAgdGhpcy5jbGlja1ZhbHVlLmVtaXQodmFsdWUpO1xuICB9XG5cbiAgc2V0TGlzdENvbnRleHQoc3RhdGU6IExpc3RMb2FkaW5nU3RhdGVDb250ZXh0PFQ+KTogdm9pZCB7XG4gICAgdGhpcy5zZXRWYWx1ZXMoc3RhdGUubGlzdCQpO1xuICB9XG5cbiAgc2V0VmFsdWVzKHZhbHVlc09iczogTWF5YmU8T2JzZXJ2YWJsZTxUW10+Pik6IHZvaWQge1xuICAgIHRoaXMuX3ZhbHVlcyQubmV4dCh2YWx1ZXNPYnMpO1xuICB9XG5cbiAgc2V0RGlzYWJsZWQoZGlzYWJsZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICB0aGlzLl9kaXNhYmxlZC5uZXh0KGRpc2FibGVkKTtcbiAgfVxuXG59XG4iXX0=
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { forwardRef } from "@angular/core";
|
|
2
|
+
/**
|
|
3
|
+
* Interface for a view that renders the items of a DbxList.
|
|
4
|
+
*/
|
|
5
|
+
export class DbxListView {
|
|
6
|
+
}
|
|
7
|
+
export function ProvideDbxListView(sourceType) {
|
|
8
|
+
return [{
|
|
9
|
+
provide: DbxListView,
|
|
10
|
+
useExisting: forwardRef(() => sourceType)
|
|
11
|
+
}];
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC52aWV3LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LXdlYi9zcmMvbGliL2xheW91dC9saXN0L2xpc3Qudmlldy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQWdCLFVBQVUsRUFBa0IsTUFBTSxlQUFlLENBQUM7QUFZekU7O0dBRUc7QUFDSCxNQUFNLE9BQWdCLFdBQVc7Q0E2QmhDO0FBRUQsTUFBTSxVQUFVLGtCQUFrQixDQUE2QixVQUFtQjtJQUNoRixPQUFPLENBQUM7WUFDTixPQUFPLEVBQUUsV0FBVztZQUNwQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLFVBQVUsQ0FBQztTQUMxQyxDQUFDLENBQUM7QUFDTCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgTGlzdExvYWRpbmdTdGF0ZSwgTGlzdExvYWRpbmdTdGF0ZUNvbnRleHQgfSBmcm9tIFwiQGRlcmVla2Ivcnhqc1wiO1xuaW1wb3J0IHsgRXZlbnRFbWl0dGVyLCBmb3J3YXJkUmVmLCBQcm92aWRlciwgVHlwZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgTGlzdFNlbGVjdGlvblN0YXRlSXRlbTxUPiB7XG4gIGRpc2FibGVkPzogYm9vbGVhbjtcbiAgc2VsZWN0ZWQ/OiBib29sZWFuO1xuICB2YWx1ZTogVDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBMaXN0U2VsZWN0aW9uU3RhdGU8VD4ge1xuICBpdGVtczogTGlzdFNlbGVjdGlvblN0YXRlSXRlbTxUPltdO1xufVxuXG4vKipcbiAqIEludGVyZmFjZSBmb3IgYSB2aWV3IHRoYXQgcmVuZGVycyB0aGUgaXRlbXMgb2YgYSBEYnhMaXN0LlxuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgRGJ4TGlzdFZpZXc8VCwgUyBleHRlbmRzIExpc3RMb2FkaW5nU3RhdGU8VD4gPSBMaXN0TG9hZGluZ1N0YXRlPFQ+PiB7XG4gIC8qKlxuICAgKiBDdXJyZW50IGRpc2FibGVkIHN0YXRlLlxuICAgKi9cbiAgYWJzdHJhY3QgcmVhZG9ubHkgZGlzYWJsZWQkOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICAvKipcbiAgICogVmFsdWVzIG9mIHRoZSBsaXN0IHZpZXcuXG4gICAqL1xuICBhYnN0cmFjdCByZWFkb25seSB2YWx1ZXMkOiBPYnNlcnZhYmxlPFRbXT47XG4gIC8qKlxuICAgKiAoT3B0aW9uYWwpIGNsaWNrZWQgZXZlbnQgZW1pdHRlci5cbiAgICogXG4gICAqIElmIGF2YWlsYWJsZSwgdGhlIERieExpc3Qgd2lsbCBzdWJzY3JpYmUgdG8gaXQgYXV0b21hdGljYWxseS5cbiAgICovXG4gIGFic3RyYWN0IGNsaWNrVmFsdWU/OiBFdmVudEVtaXR0ZXI8VD47XG4gIC8qKlxuICAgKiAoT3B0aW9uYWwpIHNlbGVjdGlvbiBjaGFuZ2VkIGV2ZW50IGVtaXR0ZXIuXG4gICAqIFxuICAgKiBJZiBhdmFpbGFibGUsIHRoZSBEYnhMaXN0IHdpbGwgc3Vic2NyaWJlIHRvIGl0IGF1dG9tYXRpY2FsbHkuXG4gICAqL1xuICBhYnN0cmFjdCBzZWxlY3Rpb25DaGFuZ2U/OiBFdmVudEVtaXR0ZXI8TGlzdFNlbGVjdGlvblN0YXRlPFQ+PjtcbiAgLyoqXG4gICAqIFNldHMgdGhlIG1vZGVscyBpbnB1dCBsb2FkaW5nIHN0YXRlIGNvbnRleHQgZm9yIHRoZSB2aWV3IHRvIHJlbmRlciBmcm9tLlxuICAgKi9cbiAgYWJzdHJhY3Qgc2V0TGlzdENvbnRleHQoc3RhdGU6IExpc3RMb2FkaW5nU3RhdGVDb250ZXh0PFQsIFM+KTogdm9pZDtcbiAgLyoqXG4gICAqIFNldHMgdGhlIGRpc2FibGVkIHN0YXRlIG9mIHRoZSBsaXN0IHZpZXcuXG4gICAqL1xuICBhYnN0cmFjdCBzZXREaXNhYmxlZChkaXNhYmxlZDogYm9vbGVhbik6IHZvaWQ7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBQcm92aWRlRGJ4TGlzdFZpZXc8ViBleHRlbmRzIERieExpc3RWaWV3PGFueT4+KHNvdXJjZVR5cGU6IFR5cGU8Vj4pOiBQcm92aWRlcltdIHtcbiAgcmV0dXJuIFt7XG4gICAgcHJvdmlkZTogRGJ4TGlzdFZpZXcsXG4gICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gc291cmNlVHlwZSlcbiAgfV07XG59XG4iXX0=
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { Directive, EventEmitter, Output } from '@angular/core';
|
|
2
|
+
import { AbstractDbxListViewDirective } from './list.view.directive';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
// MARK: List View
|
|
5
|
+
/**
|
|
6
|
+
* Abstract list view that has a pre-built-in selection change event for an Angular Material MatSelectionListChange.
|
|
7
|
+
*/
|
|
8
|
+
export class AbstractSelectionValueListViewDirective extends AbstractDbxListViewDirective {
|
|
9
|
+
constructor() {
|
|
10
|
+
super(...arguments);
|
|
11
|
+
this.selectionChange = new EventEmitter();
|
|
12
|
+
}
|
|
13
|
+
selectionChanged(selection) {
|
|
14
|
+
this.selectionChange.emit(selection);
|
|
15
|
+
}
|
|
16
|
+
matSelectionChanged(selection) {
|
|
17
|
+
const options = selection.source.selectedOptions.selected;
|
|
18
|
+
const items = options.map(x => {
|
|
19
|
+
const { value, selected, disabled } = x;
|
|
20
|
+
return ({ value, selected, disabled });
|
|
21
|
+
});
|
|
22
|
+
this.selectionChanged({ items });
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
AbstractSelectionValueListViewDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: AbstractSelectionValueListViewDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
26
|
+
AbstractSelectionValueListViewDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.4", type: AbstractSelectionValueListViewDirective, outputs: { selectionChange: "selectionChange" }, usesInheritance: true, ngImport: i0 });
|
|
27
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: AbstractSelectionValueListViewDirective, decorators: [{
|
|
28
|
+
type: Directive
|
|
29
|
+
}], propDecorators: { selectionChange: [{
|
|
30
|
+
type: Output
|
|
31
|
+
}] } });
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC52aWV3LnNlbGVjdGlvbi5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtd2ViL3NyYy9saWIvbGF5b3V0L2xpc3QvbGlzdC52aWV3LnNlbGVjdGlvbi5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBR2hFLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLHVCQUF1QixDQUFDOztBQUVyRSxrQkFBa0I7QUFDbEI7O0dBRUc7QUFFSCxNQUFNLE9BQWdCLHVDQUEyQyxTQUFRLDRCQUErQjtJQUR4Rzs7UUFJRSxvQkFBZSxHQUFHLElBQUksWUFBWSxFQUF5QixDQUFDO0tBZ0I3RDtJQWRDLGdCQUFnQixDQUFDLFNBQWdDO1FBQy9DLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFFRCxtQkFBbUIsQ0FBQyxTQUFpQztRQUNuRCxNQUFNLE9BQU8sR0FBRyxTQUFTLENBQUMsTUFBTSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUM7UUFDMUQsTUFBTSxLQUFLLEdBQWdDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUU7WUFDekQsTUFBTSxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLEdBQUcsQ0FBQyxDQUFDO1lBQ3hDLE9BQU8sQ0FBQyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLENBQUMsQ0FBQztRQUN6QyxDQUFDLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUM7SUFDbkMsQ0FBQzs7b0lBakJtQix1Q0FBdUM7d0hBQXZDLHVDQUF1QzsyRkFBdkMsdUNBQXVDO2tCQUQ1RCxTQUFTOzhCQUlSLGVBQWU7c0JBRGQsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRXZlbnRFbWl0dGVyLCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdFNlbGVjdGlvbkxpc3RDaGFuZ2UgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9saXN0JztcbmltcG9ydCB7IExpc3RTZWxlY3Rpb25TdGF0ZSwgTGlzdFNlbGVjdGlvblN0YXRlSXRlbSB9IGZyb20gJy4vbGlzdC52aWV3JztcbmltcG9ydCB7IEFic3RyYWN0RGJ4TGlzdFZpZXdEaXJlY3RpdmUgfSBmcm9tICcuL2xpc3Qudmlldy5kaXJlY3RpdmUnO1xuXG4vLyBNQVJLOiBMaXN0IFZpZXdcbi8qKlxuICogQWJzdHJhY3QgbGlzdCB2aWV3IHRoYXQgaGFzIGEgcHJlLWJ1aWx0LWluIHNlbGVjdGlvbiBjaGFuZ2UgZXZlbnQgZm9yIGFuIEFuZ3VsYXIgTWF0ZXJpYWwgTWF0U2VsZWN0aW9uTGlzdENoYW5nZS5cbiAqL1xuQERpcmVjdGl2ZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQWJzdHJhY3RTZWxlY3Rpb25WYWx1ZUxpc3RWaWV3RGlyZWN0aXZlPFQ+IGV4dGVuZHMgQWJzdHJhY3REYnhMaXN0Vmlld0RpcmVjdGl2ZTxUPiB7XG5cbiAgQE91dHB1dCgpXG4gIHNlbGVjdGlvbkNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8TGlzdFNlbGVjdGlvblN0YXRlPFQ+PigpO1xuXG4gIHNlbGVjdGlvbkNoYW5nZWQoc2VsZWN0aW9uOiBMaXN0U2VsZWN0aW9uU3RhdGU8VD4pOiB2b2lkIHtcbiAgICB0aGlzLnNlbGVjdGlvbkNoYW5nZS5lbWl0KHNlbGVjdGlvbik7XG4gIH1cblxuICBtYXRTZWxlY3Rpb25DaGFuZ2VkKHNlbGVjdGlvbjogTWF0U2VsZWN0aW9uTGlzdENoYW5nZSk6IHZvaWQge1xuICAgIGNvbnN0IG9wdGlvbnMgPSBzZWxlY3Rpb24uc291cmNlLnNlbGVjdGVkT3B0aW9ucy5zZWxlY3RlZDtcbiAgICBjb25zdCBpdGVtczogTGlzdFNlbGVjdGlvblN0YXRlSXRlbTxUPltdID0gb3B0aW9ucy5tYXAoeCA9PiB7XG4gICAgICBjb25zdCB7IHZhbHVlLCBzZWxlY3RlZCwgZGlzYWJsZWQgfSA9IHg7XG4gICAgICByZXR1cm4gKHsgdmFsdWUsIHNlbGVjdGVkLCBkaXNhYmxlZCB9KTtcbiAgICB9KTtcblxuICAgIHRoaXMuc2VsZWN0aW9uQ2hhbmdlZCh7IGl0ZW1zIH0pO1xuICB9XG5cbn1cbiJdfQ==
|