@dereekb/dbx-web 11.1.8 → 12.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/calendar/lib/calendar.base.component.d.ts +10 -1
- package/calendar/lib/calendar.component.d.ts +8 -5
- package/calendar/lib/calendar.module.d.ts +4 -16
- package/calendar/lib/calendar.provider.d.ts +5 -0
- package/calendar/lib/calendar.store.d.ts +13 -9
- package/calendar/lib/index.d.ts +1 -0
- package/esm2022/calendar/lib/calendar.base.component.mjs +26 -12
- package/esm2022/calendar/lib/calendar.component.mjs +19 -17
- package/esm2022/calendar/lib/calendar.mjs +1 -1
- package/esm2022/calendar/lib/calendar.module.mjs +10 -76
- package/esm2022/calendar/lib/calendar.provider.mjs +11 -0
- package/esm2022/calendar/lib/calendar.store.mjs +19 -19
- package/esm2022/calendar/lib/index.mjs +2 -1
- package/esm2022/lib/action/action.confirm.directive.mjs +10 -12
- package/esm2022/lib/action/action.module.mjs +12 -16
- package/esm2022/lib/action/key.trigger.directive.mjs +6 -5
- package/esm2022/lib/action/snackbar/action.snackbar.component.mjs +29 -36
- package/esm2022/lib/action/snackbar/action.snackbar.directive.mjs +14 -27
- package/esm2022/lib/action/snackbar/action.snackbar.generator.mjs +1 -1
- package/esm2022/lib/action/snackbar/action.snackbar.module.mjs +8 -14
- package/esm2022/lib/action/snackbar/action.snackbar.service.mjs +4 -4
- package/esm2022/lib/action/transition/action.transition.module.mjs +14 -13
- package/esm2022/lib/action/transition/transition.safety.dialog.component.mjs +18 -24
- package/esm2022/lib/action/transition/transition.safety.directive.mjs +30 -33
- package/esm2022/lib/button/button.component.mjs +71 -104
- package/esm2022/lib/button/button.module.mjs +44 -12
- package/esm2022/lib/button/button.spacer.directive.mjs +20 -0
- package/esm2022/lib/button/icon/icon.button.component.mjs +48 -32
- package/esm2022/lib/button/icon/icon.button.module.mjs +10 -24
- package/esm2022/lib/button/index.mjs +2 -2
- package/esm2022/lib/button/progress/abstract.progress.button.directive.mjs +103 -0
- package/esm2022/lib/button/progress/bar.button.component.mjs +15 -11
- package/esm2022/lib/button/progress/button.progress.config.mjs +2 -2
- package/esm2022/lib/button/progress/button.progress.module.mjs +13 -28
- package/esm2022/lib/button/progress/button.progress.providers.mjs +18 -0
- package/esm2022/lib/button/progress/index.mjs +2 -1
- package/esm2022/lib/button/progress/spinner.button.component.mjs +66 -38
- package/esm2022/lib/dbx-web.module.mjs +4 -4
- package/esm2022/lib/error/default.error.widget.component.mjs +22 -15
- package/esm2022/lib/error/error.action.directive.mjs +9 -8
- package/esm2022/lib/error/error.api.mjs +1 -1
- package/esm2022/lib/error/error.component.mjs +56 -94
- package/esm2022/lib/error/error.details.component.mjs +15 -14
- package/esm2022/lib/error/error.loading.directive.mjs +20 -20
- package/esm2022/lib/error/error.module.mjs +21 -18
- package/esm2022/lib/error/error.popover.component.mjs +14 -17
- package/esm2022/lib/error/error.snackbar.action.directive.mjs +6 -5
- package/esm2022/lib/error/error.snackbar.component.mjs +57 -39
- package/esm2022/lib/error/error.snackbar.service.mjs +11 -10
- package/esm2022/lib/error/error.view.component.mjs +40 -33
- package/esm2022/lib/error/error.widget.component.mjs +19 -25
- package/esm2022/lib/error/error.widget.directive.mjs +3 -3
- package/esm2022/lib/error/error.widget.service.mjs +7 -7
- package/esm2022/lib/error/state.mjs +1 -1
- package/esm2022/lib/extension/download/text/download.text.component.mjs +46 -56
- package/esm2022/lib/extension/download/text/download.text.module.mjs +11 -33
- package/esm2022/lib/extension/model/index.mjs +2 -2
- package/esm2022/lib/extension/model/model.providers.mjs +42 -0
- package/esm2022/lib/extension/model/model.state.service.mjs +5 -8
- package/esm2022/lib/extension/model/model.tracker.mjs +1 -1
- package/esm2022/lib/extension/model/model.tracker.service.mjs +5 -8
- package/esm2022/lib/extension/model/model.tracker.view.storage.mjs +8 -8
- package/esm2022/lib/extension/model/model.types.mjs +1 -1
- package/esm2022/lib/extension/model/model.types.service.mjs +5 -5
- package/esm2022/lib/extension/model/state/actions/model.actions.mjs +1 -1
- package/esm2022/lib/extension/model/state/effects/tracker.effects.mjs +3 -3
- package/esm2022/lib/extension/structure/structure.body.directive.mjs +6 -5
- package/esm2022/lib/extension/structure/structure.module.mjs +11 -17
- package/esm2022/lib/extension/structure/structure.structure.directive.mjs +10 -6
- package/esm2022/lib/extension/widget/widget.component.mjs +32 -37
- package/esm2022/lib/extension/widget/widget.directive.mjs +3 -3
- package/esm2022/lib/extension/widget/widget.list.component.mjs +31 -20
- package/esm2022/lib/extension/widget/widget.module.mjs +15 -24
- package/esm2022/lib/extension/widget/widget.service.mjs +4 -4
- package/esm2022/lib/index.mjs +2 -2
- package/esm2022/lib/interaction/dialog/abstract.dialog.directive.mjs +3 -3
- package/esm2022/lib/interaction/dialog/dialog.action.directive.mjs +19 -23
- package/esm2022/lib/interaction/dialog/dialog.content.close.component.mjs +23 -22
- package/esm2022/lib/interaction/dialog/dialog.content.directive.mjs +23 -0
- package/esm2022/lib/interaction/dialog/dialog.content.footer.component.mjs +21 -29
- package/esm2022/lib/interaction/dialog/dialog.module.mjs +9 -16
- package/esm2022/lib/interaction/dialog/index.mjs +2 -2
- package/esm2022/lib/interaction/filter/filter.config.mjs +2 -0
- package/esm2022/lib/interaction/filter/filter.menu.mjs +1 -1
- package/esm2022/lib/interaction/filter/filter.module.mjs +9 -54
- package/esm2022/lib/interaction/filter/filter.partial.list.component.mjs +13 -11
- package/esm2022/lib/interaction/filter/filter.partial.menu.component.mjs +22 -29
- package/esm2022/lib/interaction/filter/filter.partial.mjs +13 -24
- package/esm2022/lib/interaction/filter/filter.popover.button.component.mjs +17 -31
- package/esm2022/lib/interaction/filter/filter.popover.button.directive.mjs +10 -12
- package/esm2022/lib/interaction/filter/filter.popover.component.mjs +25 -30
- package/esm2022/lib/interaction/filter/filter.preset.directive.mjs +17 -29
- package/esm2022/lib/interaction/filter/filter.preset.list.component.mjs +13 -11
- package/esm2022/lib/interaction/filter/filter.preset.menu.component.mjs +22 -29
- package/esm2022/lib/interaction/filter/filter.wrapper.component.mjs +23 -29
- package/esm2022/lib/interaction/filter/index.mjs +2 -1
- package/esm2022/lib/interaction/interaction.module.mjs +17 -6
- package/esm2022/lib/interaction/popover/abstract.popover.directive.mjs +3 -3
- package/esm2022/lib/interaction/popover/abstract.popover.ref.directive.mjs +13 -22
- package/esm2022/lib/interaction/popover/index.mjs +2 -2
- package/esm2022/lib/interaction/popover/popover.action.directive.mjs +20 -23
- package/esm2022/lib/interaction/popover/popover.close.component.mjs +12 -8
- package/esm2022/lib/interaction/popover/popover.component.mjs +15 -13
- package/esm2022/lib/interaction/popover/popover.content.component.mjs +20 -13
- package/esm2022/lib/interaction/popover/popover.content.module.mjs +9 -19
- package/esm2022/lib/interaction/popover/popover.controls.directive.mjs +7 -6
- package/esm2022/lib/interaction/popover/popover.coordinator.component.mjs +17 -15
- package/esm2022/lib/interaction/popover/popover.coordinator.service.mjs +4 -4
- package/esm2022/lib/interaction/popover/popover.header.component.mjs +25 -22
- package/esm2022/lib/interaction/popover/popover.module.mjs +8 -18
- package/esm2022/lib/interaction/popover/popover.scroll.content.directive.mjs +41 -0
- package/esm2022/lib/interaction/popover/popover.service.mjs +4 -4
- package/esm2022/lib/interaction/popup/abstract.popup.directive.mjs +3 -3
- package/esm2022/lib/interaction/popup/popup.component.mjs +20 -23
- package/esm2022/lib/interaction/popup/popup.content.component.mjs +21 -14
- package/esm2022/lib/interaction/popup/popup.controls.buttons.component.mjs +49 -26
- package/esm2022/lib/interaction/popup/popup.controls.component.mjs +15 -14
- package/esm2022/lib/interaction/popup/popup.coordinator.component.mjs +15 -12
- package/esm2022/lib/interaction/popup/popup.coordinator.service.mjs +4 -4
- package/esm2022/lib/interaction/popup/popup.mjs +6 -7
- package/esm2022/lib/interaction/popup/popup.module.mjs +8 -19
- package/esm2022/lib/interaction/popup/popup.position.strategy.mjs +1 -1
- package/esm2022/lib/interaction/popup/popup.service.mjs +8 -5
- package/esm2022/lib/interaction/prompt/index.mjs +2 -2
- package/esm2022/lib/interaction/prompt/prompt.box.directive.mjs +19 -0
- package/esm2022/lib/interaction/prompt/prompt.button.confirm.directive.mjs +6 -5
- package/esm2022/lib/interaction/prompt/prompt.component.mjs +16 -17
- package/esm2022/lib/interaction/prompt/prompt.confirm.component.mjs +35 -35
- package/esm2022/lib/interaction/prompt/prompt.confirm.dialog.component.mjs +14 -13
- package/esm2022/lib/interaction/prompt/prompt.confirm.directive.mjs +28 -23
- package/esm2022/lib/interaction/prompt/prompt.module.mjs +9 -18
- package/esm2022/lib/interaction/prompt/prompt.page.component.mjs +11 -8
- package/esm2022/lib/keypress/keydown.listener.directive.mjs +6 -5
- package/esm2022/lib/keypress/keypress.module.mjs +9 -8
- package/esm2022/lib/layout/bar/bar.directive.mjs +14 -11
- package/esm2022/lib/layout/bar/bar.header.component.mjs +31 -26
- package/esm2022/lib/layout/bar/bar.layout.module.mjs +9 -12
- package/esm2022/lib/layout/bar/pagebar.component.mjs +33 -12
- package/esm2022/lib/layout/block/block.layout.module.mjs +10 -12
- package/esm2022/lib/layout/block/two.block.component.mjs +25 -32
- package/esm2022/lib/layout/card/card.box.component.mjs +27 -20
- package/esm2022/lib/layout/card/card.box.container.directive.mjs +20 -0
- package/esm2022/lib/layout/card/card.box.layout.module.mjs +10 -12
- package/esm2022/lib/layout/card/index.mjs +2 -2
- package/esm2022/lib/layout/column/column.layout.module.mjs +9 -7
- package/esm2022/lib/layout/column/one/one.column.component.mjs +16 -15
- package/esm2022/lib/layout/column/one/one.column.module.mjs +9 -9
- package/esm2022/lib/layout/column/two/index.mjs +2 -2
- package/esm2022/lib/layout/column/two/two.column.back.directive.mjs +10 -12
- package/esm2022/lib/layout/column/two/two.column.component.mjs +77 -51
- package/esm2022/lib/layout/column/two/two.column.context.directive.mjs +14 -21
- package/esm2022/lib/layout/column/two/two.column.full.left.directive.mjs +13 -28
- package/esm2022/lib/layout/column/two/two.column.head.directive.mjs +24 -0
- package/esm2022/lib/layout/column/two/two.column.module.mjs +9 -15
- package/esm2022/lib/layout/column/two/two.column.right.component.mjs +90 -49
- package/esm2022/lib/layout/column/two/two.column.sref.directive.mjs +13 -13
- package/esm2022/lib/layout/column/two/two.column.sref.showright.directive.mjs +9 -7
- package/esm2022/lib/layout/column/two/two.column.store.mjs +15 -11
- package/esm2022/lib/layout/compact/compact.directive.mjs +3 -3
- package/esm2022/lib/layout/compact/compact.layout.module.mjs +4 -4
- package/esm2022/lib/layout/compact/compact.mjs +1 -1
- package/esm2022/lib/layout/compact/compact.store.mjs +4 -4
- package/esm2022/lib/layout/content/content.border.directive.mjs +11 -11
- package/esm2022/lib/layout/content/content.box.directive.mjs +12 -15
- package/esm2022/lib/layout/content/content.container.directive.mjs +16 -17
- package/esm2022/lib/layout/content/content.directive.mjs +6 -5
- package/esm2022/lib/layout/content/content.elevate.directive.mjs +10 -11
- package/esm2022/lib/layout/content/content.layout.module.mjs +9 -11
- package/esm2022/lib/layout/content/content.page.directive.mjs +6 -5
- package/esm2022/lib/layout/content/content.pit.directive.mjs +10 -11
- package/esm2022/lib/layout/flag/flag.component.mjs +15 -14
- package/esm2022/lib/layout/flag/flag.layout.module.mjs +8 -13
- package/esm2022/lib/layout/flag/flag.prompt.component.mjs +18 -20
- package/esm2022/lib/layout/flex/flex.group.directive.mjs +21 -47
- package/esm2022/lib/layout/flex/flex.layout.module.mjs +11 -9
- package/esm2022/lib/layout/flex/flex.size.directive.mjs +11 -12
- package/esm2022/lib/layout/item/index.mjs +1 -2
- package/esm2022/lib/layout/item/item.icon.component.mjs +31 -24
- package/esm2022/lib/layout/layout.module.mjs +6 -8
- package/esm2022/lib/layout/list/grid/index.mjs +3 -0
- package/esm2022/lib/layout/list/grid/list.grid.view.component.mjs +98 -0
- package/esm2022/lib/layout/list/grid/list.grid.view.directive.mjs +34 -0
- package/esm2022/lib/layout/list/group/index.mjs +4 -0
- package/esm2022/lib/layout/list/group/list.view.value.group.mjs +32 -0
- package/esm2022/lib/layout/list/group/list.view.value.group.title.directive.mjs +70 -0
- package/esm2022/lib/layout/list/group/list.view.value.group.title.header.component.mjs +60 -0
- package/esm2022/lib/layout/list/group/list.view.value.group.title.mjs +2 -0
- package/esm2022/lib/layout/list/index.mjs +6 -10
- package/esm2022/lib/layout/list/list.component.mjs +109 -135
- package/esm2022/lib/layout/list/list.content.empty.component.mjs +9 -7
- package/esm2022/lib/layout/list/list.directive.mjs +70 -56
- package/esm2022/lib/layout/list/list.layout.module.mjs +59 -49
- package/esm2022/lib/layout/list/list.module.mjs +40 -0
- package/esm2022/lib/layout/list/list.view.directive.mjs +35 -28
- package/esm2022/lib/layout/list/list.view.mjs +1 -1
- package/esm2022/lib/layout/list/list.view.selection.directive.mjs +26 -10
- package/esm2022/lib/layout/list/list.view.value.component.mjs +135 -143
- package/esm2022/lib/layout/list/list.view.value.directive.mjs +12 -18
- package/esm2022/lib/layout/list/list.view.value.item.directive.mjs +3 -3
- package/esm2022/lib/layout/list/list.view.value.mjs +1 -1
- package/esm2022/lib/layout/list/list.view.value.modifier.mjs +1 -1
- package/esm2022/lib/layout/list/list.view.value.selection.component.mjs +80 -68
- package/esm2022/lib/layout/list/list.wrapper.mjs +1 -3
- package/esm2022/lib/layout/list/meta/index.mjs +2 -0
- package/esm2022/lib/layout/list/meta/list.view.meta.icon.component.mjs +39 -0
- package/esm2022/lib/layout/list/modifier/index.mjs +5 -0
- package/esm2022/lib/layout/list/modifier/list.modifier.module.mjs +22 -0
- package/esm2022/lib/layout/list/modifier/list.view.value.modifier.directive.mjs +75 -0
- package/esm2022/lib/layout/list/modifier/list.view.value.modifier.ripple.directive.mjs +37 -0
- package/esm2022/lib/layout/list/modifier/list.view.value.modifier.selection.directive.mjs +35 -0
- package/esm2022/lib/layout/section/section.component.mjs +18 -15
- package/esm2022/lib/layout/section/section.header.component.mjs +123 -106
- package/esm2022/lib/layout/section/section.intro.component.mjs +53 -51
- package/esm2022/lib/layout/section/section.layout.module.mjs +9 -15
- package/esm2022/lib/layout/section/section.mjs +1 -1
- package/esm2022/lib/layout/section/section.page.component.mjs +22 -18
- package/esm2022/lib/layout/section/subsection.component.mjs +13 -10
- package/esm2022/lib/layout/step/step.component.mjs +56 -21
- package/esm2022/lib/layout/step/step.layout.module.mjs +11 -10
- package/esm2022/lib/layout/style/index.mjs +2 -1
- package/esm2022/lib/layout/style/spacer.directive.mjs +6 -5
- package/esm2022/lib/layout/style/style.body.directive.mjs +22 -17
- package/esm2022/lib/layout/style/style.color.directive.mjs +11 -14
- package/esm2022/lib/layout/style/style.directive.mjs +13 -17
- package/esm2022/lib/layout/style/style.layout.module.mjs +8 -10
- package/esm2022/lib/layout/style/style.mjs +4 -1
- package/esm2022/lib/layout/style/style.providers.mjs +21 -0
- package/esm2022/lib/layout/style/style.service.mjs +54 -32
- package/esm2022/lib/layout/style/style.set.directive.mjs +31 -47
- package/esm2022/lib/layout/text/address.component.mjs +43 -22
- package/esm2022/lib/layout/text/compat/form.description.component.mjs +3 -3
- package/esm2022/lib/layout/text/compat/hint.component.mjs +3 -3
- package/esm2022/lib/layout/text/compat/label.component.mjs +3 -3
- package/esm2022/lib/layout/text/compat/note.component.mjs +3 -3
- package/esm2022/lib/layout/text/compat/notice.component.mjs +3 -3
- package/esm2022/lib/layout/text/compat/ok.component.mjs +3 -3
- package/esm2022/lib/layout/text/compat/success.component.mjs +3 -3
- package/esm2022/lib/layout/text/compat/text.compat.module.mjs +4 -4
- package/esm2022/lib/layout/text/compat/warn.component.mjs +3 -3
- package/esm2022/lib/layout/text/detail.block.component.mjs +11 -8
- package/esm2022/lib/layout/text/detail.block.header.component.mjs +24 -13
- package/esm2022/lib/layout/text/icon.spacer.component.mjs +6 -5
- package/esm2022/lib/layout/text/label.block.component.mjs +9 -7
- package/esm2022/lib/layout/text/linkify.component.mjs +13 -10
- package/esm2022/lib/layout/text/text.chip.directive.mjs +6 -5
- package/esm2022/lib/layout/text/text.chips.component.mjs +34 -29
- package/esm2022/lib/layout/text/text.module.mjs +8 -13
- package/esm2022/lib/loading/basic-loading.component.mjs +31 -97
- package/esm2022/lib/loading/loading-progress.component.mjs +47 -54
- package/esm2022/lib/loading/loading.action.directive.mjs +9 -11
- package/esm2022/lib/loading/loading.component.mjs +60 -81
- package/esm2022/lib/loading/loading.module.mjs +8 -13
- package/esm2022/lib/router/layout/anchor/anchor.component.mjs +86 -36
- package/esm2022/lib/router/layout/anchor/anchor.content.component.mjs +26 -14
- package/esm2022/lib/router/layout/anchor/anchor.icon.component.mjs +10 -6
- package/esm2022/lib/router/layout/anchor/anchor.link.component.mjs +9 -7
- package/esm2022/lib/router/layout/anchor/anchor.module.mjs +17 -13
- package/esm2022/lib/router/layout/anchor/anchor.segue.directive.mjs +11 -13
- package/esm2022/lib/router/layout/anchorlist/anchorlist.component.mjs +22 -28
- package/esm2022/lib/router/layout/anchorlist/anchorlist.module.mjs +9 -15
- package/esm2022/lib/router/layout/layout.module.mjs +4 -4
- package/esm2022/lib/router/layout/list/list.module.mjs +9 -7
- package/esm2022/lib/router/layout/list/router.list.directive.mjs +16 -20
- package/esm2022/lib/router/layout/navbar/navbar.component.mjs +41 -87
- package/esm2022/lib/router/layout/navbar/navbar.module.mjs +9 -43
- package/esm2022/lib/router/layout/sidenav/sidenav.button.component.mjs +28 -24
- package/esm2022/lib/router/layout/sidenav/sidenav.component.mjs +91 -71
- package/esm2022/lib/router/layout/sidenav/sidenav.ifdisplaymode.directive.mjs +18 -23
- package/esm2022/lib/router/layout/sidenav/sidenav.module.mjs +8 -22
- package/esm2022/lib/router/layout/sidenav/sidenav.page.component.mjs +37 -46
- package/esm2022/lib/router/layout/sidenav/sidenav.pagebar.component.mjs +18 -18
- package/esm2022/lib/router/provider/ngrouter/anchor.component.mjs +6 -7
- package/esm2022/lib/router/provider/ngrouter/angular.router.providers.mjs +23 -0
- package/esm2022/lib/router/provider/ngrouter/index.mjs +2 -2
- package/esm2022/lib/router/provider/router.provider.config.mjs +8 -1
- package/esm2022/lib/router/provider/uirouter/anchor.component.mjs +14 -12
- package/esm2022/lib/router/provider/uirouter/index.mjs +2 -2
- package/esm2022/lib/router/provider/uirouter/uirouter.router.providers.mjs +23 -0
- package/esm2022/lib/screen/index.mjs +2 -2
- package/esm2022/lib/screen/screen.providers.mjs +22 -0
- package/esm2022/lib/screen/screen.service.mjs +6 -6
- package/esm2022/lib/util/cdk.mjs +1 -1
- package/esm2022/mapbox/lib/index.mjs +3 -2
- package/esm2022/mapbox/lib/mapbox.change.service.mjs +4 -4
- package/esm2022/mapbox/lib/mapbox.injection.component.mjs +13 -12
- package/esm2022/mapbox/lib/mapbox.injection.store.mjs +5 -5
- package/esm2022/mapbox/lib/mapbox.injection.store.provide.mjs +9 -8
- package/esm2022/mapbox/lib/mapbox.layout.component.mjs +93 -117
- package/esm2022/mapbox/lib/mapbox.layout.drawer.component.mjs +8 -8
- package/esm2022/mapbox/lib/mapbox.layout.resize.sync.directive.mjs +9 -8
- package/esm2022/mapbox/lib/mapbox.marker.component.mjs +69 -72
- package/esm2022/mapbox/lib/mapbox.marker.mjs +2 -2
- package/esm2022/mapbox/lib/mapbox.markers.component.mjs +22 -36
- package/esm2022/mapbox/lib/mapbox.menu.component.mjs +33 -31
- package/esm2022/mapbox/lib/mapbox.mjs +1 -1
- package/esm2022/mapbox/lib/mapbox.module.mjs +24 -61
- package/esm2022/mapbox/lib/mapbox.options.mjs +2 -0
- package/esm2022/mapbox/lib/mapbox.providers.mjs +25 -0
- package/esm2022/mapbox/lib/mapbox.rxjs.mjs +1 -1
- package/esm2022/mapbox/lib/mapbox.service.mjs +5 -8
- package/esm2022/mapbox/lib/mapbox.store.map.directive.mjs +7 -6
- package/esm2022/mapbox/lib/mapbox.store.mjs +39 -15
- package/esm2022/mapbox/lib/mapbox.store.provide.mjs +9 -8
- package/esm2022/table/lib/date/date.table.column.header.component.mjs +27 -21
- package/esm2022/table/lib/date/daterange.table.cell.input.component.mjs +39 -46
- package/esm2022/table/lib/date/table.date.module.mjs +8 -58
- package/esm2022/table/lib/table.cell.action.component.mjs +13 -10
- package/esm2022/table/lib/table.cell.input.component.mjs +13 -10
- package/esm2022/table/lib/table.cell.summaryend.component.mjs +13 -10
- package/esm2022/table/lib/table.cell.summarystart.component.mjs +13 -10
- package/esm2022/table/lib/table.column.directive.mjs +10 -17
- package/esm2022/table/lib/table.column.footer.component.mjs +13 -10
- package/esm2022/table/lib/table.column.header.component.mjs +13 -10
- package/esm2022/table/lib/table.component.mjs +31 -24
- package/esm2022/table/lib/table.directive.mjs +16 -22
- package/esm2022/table/lib/table.item.action.component.mjs +20 -17
- package/esm2022/table/lib/table.item.cell.component.mjs +19 -26
- package/esm2022/table/lib/table.item.directive.mjs +10 -17
- package/esm2022/table/lib/table.item.header.component.mjs +15 -11
- package/esm2022/table/lib/table.module.mjs +11 -55
- package/esm2022/table/lib/table.store.mjs +8 -8
- package/fesm2022/dereekb-dbx-web-calendar.mjs +69 -110
- package/fesm2022/dereekb-dbx-web-calendar.mjs.map +1 -1
- package/fesm2022/dereekb-dbx-web-mapbox.mjs +340 -365
- package/fesm2022/dereekb-dbx-web-mapbox.mjs.map +1 -1
- package/fesm2022/dereekb-dbx-web-table.mjs +230 -317
- package/fesm2022/dereekb-dbx-web-table.mjs.map +1 -1
- package/fesm2022/dereekb-dbx-web.mjs +8063 -8083
- package/fesm2022/dereekb-dbx-web.mjs.map +1 -1
- package/lib/action/action.confirm.directive.d.ts +4 -5
- package/lib/action/action.module.d.ts +7 -10
- package/lib/action/key.trigger.directive.d.ts +1 -1
- package/lib/action/snackbar/_snackbar.scss +3 -3
- package/lib/action/snackbar/action.snackbar.component.d.ts +15 -14
- package/lib/action/snackbar/action.snackbar.directive.d.ts +5 -7
- package/lib/action/snackbar/action.snackbar.generator.d.ts +9 -9
- package/lib/action/snackbar/action.snackbar.module.d.ts +1 -6
- package/lib/action/transition/action.transition.module.d.ts +7 -6
- package/lib/action/transition/transition.safety.dialog.component.d.ts +5 -9
- package/lib/action/transition/transition.safety.directive.d.ts +10 -7
- package/lib/button/_button.scss +3 -3
- package/lib/button/button.component.d.ts +16 -21
- package/lib/button/button.module.d.ts +10 -7
- package/lib/button/{button.spacer.component.d.ts → button.spacer.directive.d.ts} +1 -1
- package/lib/button/icon/icon.button.component.d.ts +1 -1
- package/lib/button/icon/icon.button.module.d.ts +4 -4
- package/lib/button/index.d.ts +1 -1
- package/lib/button/progress/abstract.progress.button.directive.d.ts +25 -0
- package/lib/button/progress/bar.button.component.d.ts +5 -4
- package/lib/button/progress/bar.button.component.scss +1 -1
- package/lib/button/progress/button.progress.config.d.ts +62 -34
- package/lib/button/progress/button.progress.module.d.ts +4 -10
- package/lib/button/progress/button.progress.providers.d.ts +9 -0
- package/lib/button/progress/index.d.ts +1 -0
- package/lib/button/progress/spinner.button.component.d.ts +18 -7
- package/lib/button/progress/spinner.button.component.scss +34 -7
- package/lib/error/_error.scss +3 -3
- package/lib/error/default.error.widget.component.d.ts +3 -3
- package/lib/error/error.action.directive.d.ts +3 -3
- package/lib/error/error.component.d.ts +21 -28
- package/lib/error/error.details.component.d.ts +2 -2
- package/lib/error/error.loading.directive.d.ts +8 -8
- package/lib/error/error.module.d.ts +4 -7
- package/lib/error/error.popover.component.d.ts +6 -6
- package/lib/error/error.snackbar.action.directive.d.ts +1 -1
- package/lib/error/error.snackbar.component.d.ts +12 -23
- package/lib/error/error.snackbar.service.d.ts +1 -0
- package/lib/error/error.view.component.d.ts +10 -12
- package/lib/error/error.widget.component.d.ts +4 -8
- package/lib/error/error.widget.service.d.ts +1 -1
- package/lib/error/state.d.ts +3 -2
- package/lib/extension/calendar/_calendar.scss +20 -20
- package/lib/extension/download/text/download.text.component.d.ts +16 -14
- package/lib/extension/download/text/download.text.module.d.ts +4 -6
- package/lib/extension/model/index.d.ts +1 -1
- package/lib/extension/model/model.providers.d.ts +13 -0
- package/lib/extension/model/model.tracker.d.ts +7 -7
- package/lib/extension/model/model.tracker.service.d.ts +2 -2
- package/lib/extension/model/model.tracker.view.storage.d.ts +4 -1
- package/lib/extension/model/model.types.d.ts +6 -6
- package/lib/extension/model/model.types.service.d.ts +1 -1
- package/lib/extension/model/state/actions/actions.d.ts +1 -1
- package/lib/extension/model/state/actions/model.actions.d.ts +5 -5
- package/lib/extension/model/state/effects/tracker.effects.d.ts +1 -1
- package/lib/extension/model/state/reducers/model.module.config.d.ts +1 -1
- package/lib/extension/structure/structure.body.directive.d.ts +1 -1
- package/lib/extension/structure/structure.module.d.ts +4 -2
- package/lib/extension/structure/structure.structure.directive.d.ts +5 -2
- package/lib/extension/table/_table.scss +3 -3
- package/lib/extension/widget/widget.component.d.ts +5 -9
- package/lib/extension/widget/widget.list.component.d.ts +8 -4
- package/lib/extension/widget/widget.module.d.ts +8 -4
- package/lib/index.d.ts +1 -1
- package/lib/interaction/dialog/_dialog.scss +3 -3
- package/lib/interaction/dialog/dialog.action.directive.d.ts +7 -6
- package/lib/interaction/dialog/dialog.content.close.component.d.ts +4 -6
- package/lib/interaction/dialog/{dialog.content.component.d.ts → dialog.content.directive.d.ts} +3 -2
- package/lib/interaction/dialog/dialog.content.footer.component.d.ts +10 -10
- package/lib/interaction/dialog/dialog.module.d.ts +2 -9
- package/lib/interaction/dialog/index.d.ts +1 -1
- package/lib/interaction/filter/_filter.scss +3 -3
- package/lib/interaction/filter/filter.config.d.ts +62 -0
- package/lib/interaction/filter/filter.menu.d.ts +3 -3
- package/lib/interaction/filter/filter.module.d.ts +2 -11
- package/lib/interaction/filter/filter.partial.d.ts +5 -7
- package/lib/interaction/filter/filter.partial.list.component.d.ts +1 -1
- package/lib/interaction/filter/filter.partial.menu.component.d.ts +5 -5
- package/lib/interaction/filter/filter.popover.button.component.d.ts +5 -7
- package/lib/interaction/filter/filter.popover.button.directive.d.ts +7 -6
- package/lib/interaction/filter/filter.popover.component.d.ts +15 -71
- package/lib/interaction/filter/filter.preset.directive.d.ts +7 -11
- package/lib/interaction/filter/filter.preset.list.component.d.ts +1 -1
- package/lib/interaction/filter/filter.preset.menu.component.d.ts +5 -5
- package/lib/interaction/filter/filter.wrapper.component.d.ts +5 -5
- package/lib/interaction/filter/index.d.ts +1 -0
- package/lib/interaction/interaction.module.d.ts +13 -4
- package/lib/interaction/popover/_popover.scss +3 -3
- package/lib/interaction/popover/abstract.popover.ref.directive.d.ts +3 -4
- package/lib/interaction/popover/index.d.ts +1 -1
- package/lib/interaction/popover/popover.action.directive.d.ts +7 -6
- package/lib/interaction/popover/popover.close.component.d.ts +1 -1
- package/lib/interaction/popover/popover.component.d.ts +15 -9
- package/lib/interaction/popover/popover.content.component.d.ts +6 -4
- package/lib/interaction/popover/popover.content.module.d.ts +2 -11
- package/lib/interaction/popover/popover.controls.directive.d.ts +3 -2
- package/lib/interaction/popover/popover.coordinator.component.d.ts +2 -2
- package/lib/interaction/popover/popover.header.component.d.ts +4 -3
- package/lib/interaction/popover/popover.module.d.ts +2 -11
- package/lib/interaction/popover/popover.scroll.content.directive.d.ts +13 -0
- package/lib/interaction/popover/popover.service.d.ts +4 -4
- package/lib/interaction/popup/_popup.scss +6 -6
- package/lib/interaction/popup/popup.component.d.ts +19 -19
- package/lib/interaction/popup/popup.content.component.d.ts +2 -1
- package/lib/interaction/popup/popup.controls.buttons.component.d.ts +3 -1
- package/lib/interaction/popup/popup.controls.component.d.ts +2 -2
- package/lib/interaction/popup/popup.coordinator.component.d.ts +3 -2
- package/lib/interaction/popup/popup.coordinator.service.d.ts +1 -1
- package/lib/interaction/popup/popup.d.ts +7 -6
- package/lib/interaction/popup/popup.module.d.ts +1 -10
- package/lib/interaction/popup/popup.position.strategy.d.ts +2 -2
- package/lib/interaction/popup/popup.service.d.ts +4 -4
- package/lib/interaction/prompt/_prompt.scss +4 -4
- package/lib/interaction/prompt/index.d.ts +1 -1
- package/lib/interaction/prompt/prompt.box.directive.d.ts +6 -0
- package/lib/interaction/prompt/prompt.button.confirm.directive.d.ts +1 -1
- package/lib/interaction/prompt/prompt.component.d.ts +3 -3
- package/lib/interaction/prompt/prompt.confirm.component.d.ts +11 -23
- package/lib/interaction/prompt/prompt.confirm.dialog.component.d.ts +2 -3
- package/lib/interaction/prompt/prompt.confirm.directive.d.ts +9 -5
- package/lib/interaction/prompt/prompt.module.d.ts +2 -11
- package/lib/interaction/prompt/prompt.page.component.d.ts +1 -1
- package/lib/interaction/style/_style.scss +6 -6
- package/lib/keypress/keydown.listener.directive.d.ts +1 -1
- package/lib/keypress/keypress.module.d.ts +4 -2
- package/lib/layout/bar/_bar.scss +8 -12
- package/lib/layout/bar/bar.directive.d.ts +3 -3
- package/lib/layout/bar/bar.header.component.d.ts +4 -5
- package/lib/layout/bar/bar.layout.module.d.ts +2 -5
- package/lib/layout/bar/pagebar.component.d.ts +3 -3
- package/lib/layout/block/_block.scss +3 -3
- package/lib/layout/block/block.layout.module.d.ts +3 -4
- package/lib/layout/block/two.block.component.d.ts +8 -8
- package/lib/layout/card/_card.scss +3 -3
- package/lib/layout/card/card.box.component.d.ts +3 -3
- package/lib/layout/card/card.box.container.directive.d.ts +8 -0
- package/lib/layout/card/card.box.layout.module.d.ts +2 -4
- package/lib/layout/card/index.d.ts +1 -1
- package/lib/layout/column/_column.scss +3 -3
- package/lib/layout/column/column.layout.module.d.ts +2 -2
- package/lib/layout/column/one/one.column.component.d.ts +3 -3
- package/lib/layout/column/one/one.column.module.d.ts +4 -3
- package/lib/layout/column/two/index.d.ts +1 -1
- package/lib/layout/column/two/two.column.back.directive.d.ts +3 -3
- package/lib/layout/column/two/two.column.component.d.ts +37 -20
- package/lib/layout/column/two/two.column.context.directive.d.ts +4 -7
- package/lib/layout/column/two/two.column.full.left.directive.d.ts +4 -8
- package/lib/layout/column/two/two.column.head.directive.d.ts +11 -0
- package/lib/layout/column/two/two.column.module.d.ts +2 -8
- package/lib/layout/column/two/two.column.right.component.d.ts +12 -14
- package/lib/layout/column/two/two.column.sref.directive.d.ts +3 -2
- package/lib/layout/column/two/two.column.sref.showright.directive.d.ts +3 -4
- package/lib/layout/column/two/two.column.store.d.ts +17 -9
- package/lib/layout/content/_content.scss +10 -10
- package/lib/layout/content/content.border.directive.d.ts +3 -2
- package/lib/layout/content/content.box.directive.d.ts +3 -3
- package/lib/layout/content/content.container.directive.d.ts +5 -4
- package/lib/layout/content/content.directive.d.ts +1 -1
- package/lib/layout/content/content.elevate.directive.d.ts +2 -2
- package/lib/layout/content/content.layout.module.d.ts +1 -2
- package/lib/layout/content/content.page.directive.d.ts +1 -1
- package/lib/layout/content/content.pit.directive.d.ts +2 -2
- package/lib/layout/flag/_flag.scss +3 -3
- package/lib/layout/flag/flag.component.d.ts +2 -2
- package/lib/layout/flag/flag.layout.module.d.ts +1 -6
- package/lib/layout/flag/flag.prompt.component.d.ts +4 -3
- package/lib/layout/flex/_flex.scss +3 -3
- package/lib/layout/flex/flex.group.directive.d.ts +7 -14
- package/lib/layout/flex/flex.layout.module.d.ts +4 -2
- package/lib/layout/flex/flex.size.directive.d.ts +3 -2
- package/lib/layout/item/_item.scss +3 -3
- package/lib/layout/item/index.d.ts +0 -1
- package/lib/layout/item/item.icon.component.d.ts +3 -3
- package/lib/layout/layout.module.d.ts +5 -7
- package/lib/layout/list/_list.scss +19 -6
- package/lib/layout/list/grid/index.d.ts +2 -0
- package/lib/layout/list/{list.grid.view.component.d.ts → grid/list.grid.view.component.d.ts} +23 -31
- package/lib/layout/list/grid/list.grid.view.directive.d.ts +24 -0
- package/lib/layout/list/group/index.d.ts +3 -0
- package/lib/layout/list/{list.view.value.group.d.ts → group/list.view.value.group.d.ts} +2 -2
- package/lib/layout/list/{list.view.value.group.title.d.ts → group/list.view.value.group.title.d.ts} +1 -1
- package/lib/layout/list/group/list.view.value.group.title.directive.d.ts +15 -0
- package/lib/layout/list/group/list.view.value.group.title.header.component.d.ts +21 -0
- package/lib/layout/list/index.d.ts +5 -9
- package/lib/layout/list/list.component.d.ts +54 -50
- package/lib/layout/list/list.content.empty.component.d.ts +1 -1
- package/lib/layout/list/list.directive.d.ts +35 -15
- package/lib/layout/list/list.layout.module.d.ts +27 -18
- package/lib/layout/list/list.module.d.ts +13 -0
- package/lib/layout/list/list.view.d.ts +8 -8
- package/lib/layout/list/list.view.directive.d.ts +14 -9
- package/lib/layout/list/list.view.selection.directive.d.ts +12 -3
- package/lib/layout/list/list.view.value.component.d.ts +32 -39
- package/lib/layout/list/list.view.value.d.ts +4 -1
- package/lib/layout/list/list.view.value.directive.d.ts +5 -7
- package/lib/layout/list/list.view.value.selection.component.d.ts +14 -13
- package/lib/layout/list/list.wrapper.d.ts +13 -4
- package/lib/layout/list/meta/index.d.ts +1 -0
- package/lib/layout/list/{list.view.meta.icon.component.d.ts → meta/list.view.meta.icon.component.d.ts} +2 -2
- package/lib/layout/list/modifier/index.d.ts +4 -0
- package/lib/layout/list/modifier/list.modifier.module.d.ts +12 -0
- package/lib/layout/list/{list.view.value.modifier.directive.d.ts → modifier/list.view.value.modifier.directive.d.ts} +13 -12
- package/lib/layout/list/{list.view.value.modifier.ripple.directive.d.ts → modifier/list.view.value.modifier.ripple.directive.d.ts} +5 -6
- package/lib/layout/list/{list.view.value.modifier.selection.directive.d.ts → modifier/list.view.value.modifier.selection.directive.d.ts} +5 -6
- package/lib/layout/section/_section.scss +3 -3
- package/lib/layout/section/section.component.d.ts +3 -2
- package/lib/layout/section/section.d.ts +28 -6
- package/lib/layout/section/section.header.component.d.ts +12 -11
- package/lib/layout/section/section.intro.component.d.ts +7 -8
- package/lib/layout/section/section.layout.module.d.ts +2 -7
- package/lib/layout/section/section.page.component.d.ts +4 -3
- package/lib/layout/section/subsection.component.d.ts +1 -1
- package/lib/layout/step/_step.scss +3 -3
- package/lib/layout/step/step.component.d.ts +6 -5
- package/lib/layout/step/step.layout.module.d.ts +4 -3
- package/lib/layout/style/_style.scss +20 -3
- package/lib/layout/style/index.d.ts +1 -0
- package/lib/layout/style/spacer.directive.d.ts +1 -1
- package/lib/layout/style/style.body.directive.d.ts +8 -8
- package/lib/layout/style/style.color.directive.d.ts +3 -3
- package/lib/layout/style/style.d.ts +48 -1
- package/lib/layout/style/style.directive.d.ts +5 -5
- package/lib/layout/style/style.layout.module.d.ts +1 -2
- package/lib/layout/style/style.providers.d.ts +19 -0
- package/lib/layout/style/style.service.d.ts +28 -18
- package/lib/layout/style/style.set.directive.d.ts +18 -16
- package/lib/layout/text/_text.scss +8 -8
- package/lib/layout/text/address.component.d.ts +2 -2
- package/lib/layout/text/detail.block.component.d.ts +1 -1
- package/lib/layout/text/detail.block.header.component.d.ts +1 -1
- package/lib/layout/text/icon.spacer.component.d.ts +1 -1
- package/lib/layout/text/label.block.component.d.ts +1 -1
- package/lib/layout/text/linkify.component.d.ts +3 -2
- package/lib/layout/text/text.chip.directive.d.ts +1 -1
- package/lib/layout/text/text.chips.component.d.ts +3 -4
- package/lib/layout/text/text.module.d.ts +1 -5
- package/lib/loading/_loading.scss +3 -3
- package/lib/loading/basic-loading.component.d.ts +17 -36
- package/lib/loading/loading-progress.component.d.ts +12 -14
- package/lib/loading/loading.action.directive.d.ts +2 -4
- package/lib/loading/loading.component.d.ts +31 -29
- package/lib/loading/loading.module.d.ts +1 -5
- package/lib/router/layout/anchor/_anchor.scss +3 -3
- package/lib/router/layout/anchor/anchor.component.d.ts +7 -12
- package/lib/router/layout/anchor/anchor.content.component.d.ts +4 -3
- package/lib/router/layout/anchor/anchor.icon.component.d.ts +1 -1
- package/lib/router/layout/anchor/anchor.link.component.d.ts +3 -3
- package/lib/router/layout/anchor/anchor.module.d.ts +14 -5
- package/lib/router/layout/anchor/anchor.segue.directive.d.ts +5 -6
- package/lib/router/layout/anchorlist/_anchorlist.scss +6 -6
- package/lib/router/layout/anchorlist/anchorlist.component.d.ts +6 -9
- package/lib/router/layout/anchorlist/anchorlist.module.d.ts +4 -9
- package/lib/router/layout/list/list.module.d.ts +4 -1
- package/lib/router/layout/list/router.list.directive.d.ts +6 -8
- package/lib/router/layout/navbar/_navbar.scss +3 -3
- package/lib/router/layout/navbar/navbar.component.d.ts +22 -29
- package/lib/router/layout/navbar/navbar.module.d.ts +4 -9
- package/lib/router/layout/sidenav/_sidenav.scss +8 -8
- package/lib/router/layout/sidenav/sidenav.button.component.d.ts +3 -4
- package/lib/router/layout/sidenav/sidenav.component.d.ts +19 -18
- package/lib/router/layout/sidenav/sidenav.ifdisplaymode.directive.d.ts +7 -7
- package/lib/router/layout/sidenav/sidenav.module.d.ts +1 -14
- package/lib/router/layout/sidenav/sidenav.page.component.d.ts +7 -10
- package/lib/router/layout/sidenav/sidenav.pagebar.component.d.ts +2 -2
- package/lib/router/provider/ngrouter/anchor.component.d.ts +1 -1
- package/lib/router/provider/ngrouter/angular.router.providers.d.ts +7 -0
- package/lib/router/provider/ngrouter/index.d.ts +1 -1
- package/lib/router/provider/router.provider.config.d.ts +7 -0
- package/lib/router/provider/uirouter/anchor.component.d.ts +6 -5
- package/lib/router/provider/uirouter/index.d.ts +1 -1
- package/lib/router/provider/uirouter/uirouter.router.providers.d.ts +7 -0
- package/lib/screen/index.d.ts +1 -1
- package/lib/screen/screen.providers.d.ts +15 -0
- package/lib/screen/screen.service.d.ts +7 -7
- package/lib/style/_all-typography.scss +1 -1
- package/lib/style/_root-variables.scss +13 -13
- package/lib/style/_theming.scss +4 -2
- package/mapbox/lib/index.d.ts +2 -1
- package/mapbox/lib/mapbox.change.service.d.ts +3 -3
- package/mapbox/lib/mapbox.d.ts +33 -19
- package/mapbox/lib/mapbox.injection.component.d.ts +2 -4
- package/mapbox/lib/mapbox.injection.store.provide.d.ts +1 -1
- package/mapbox/lib/mapbox.layout.component.d.ts +36 -34
- package/mapbox/lib/mapbox.layout.drawer.component.d.ts +2 -2
- package/mapbox/lib/mapbox.layout.resize.sync.directive.d.ts +1 -1
- package/mapbox/lib/mapbox.marker.component.d.ts +6 -11
- package/mapbox/lib/mapbox.marker.d.ts +13 -13
- package/mapbox/lib/mapbox.markers.component.d.ts +5 -11
- package/mapbox/lib/mapbox.menu.component.d.ts +9 -11
- package/mapbox/lib/mapbox.module.d.ts +2 -12
- package/mapbox/lib/mapbox.options.d.ts +11 -0
- package/mapbox/lib/mapbox.providers.d.ts +17 -0
- package/mapbox/lib/mapbox.rxjs.d.ts +6 -6
- package/mapbox/lib/mapbox.service.d.ts +1 -1
- package/mapbox/lib/mapbox.store.d.ts +28 -6
- package/mapbox/lib/mapbox.store.map.directive.d.ts +1 -1
- package/mapbox/lib/mapbox.store.provide.d.ts +1 -1
- package/package.json +14 -16
- package/table/lib/date/date.table.column.header.component.d.ts +3 -3
- package/table/lib/date/daterange.table.cell.input.component.d.ts +14 -12
- package/table/lib/date/table.date.module.d.ts +1 -9
- package/table/lib/table.cell.action.component.d.ts +2 -1
- package/table/lib/table.cell.input.component.d.ts +2 -1
- package/table/lib/table.cell.summaryend.component.d.ts +2 -1
- package/table/lib/table.cell.summarystart.component.d.ts +2 -1
- package/table/lib/table.column.directive.d.ts +3 -6
- package/table/lib/table.column.footer.component.d.ts +3 -3
- package/table/lib/table.column.header.component.d.ts +3 -3
- package/table/lib/table.component.d.ts +13 -8
- package/table/lib/table.directive.d.ts +5 -4
- package/table/lib/table.item.action.component.d.ts +4 -2
- package/table/lib/table.item.cell.component.d.ts +3 -5
- package/table/lib/table.item.directive.d.ts +3 -6
- package/table/lib/table.item.header.component.d.ts +2 -1
- package/table/lib/table.module.d.ts +4 -6
- package/calendar/esm2022/dereekb-dbx-web-calendar.mjs +0 -5
- package/calendar/esm2022/index.mjs +0 -2
- package/calendar/esm2022/lib/calendar.base.component.mjs +0 -54
- package/calendar/esm2022/lib/calendar.component.mjs +0 -54
- package/calendar/esm2022/lib/calendar.mjs +0 -30
- package/calendar/esm2022/lib/calendar.module.mjs +0 -87
- package/calendar/esm2022/lib/calendar.store.mjs +0 -174
- package/calendar/esm2022/lib/index.mjs +0 -6
- package/calendar/fesm2022/dereekb-dbx-web-calendar.mjs +0 -385
- package/calendar/fesm2022/dereekb-dbx-web-calendar.mjs.map +0 -1
- package/calendar/package.json +0 -21
- package/esm2022/lib/button/button.spacer.component.mjs +0 -19
- package/esm2022/lib/button/progress/base.progress.button.directive.mjs +0 -107
- package/esm2022/lib/extension/model/model.module.mjs +0 -66
- package/esm2022/lib/interaction/dialog/dialog.content.component.mjs +0 -23
- package/esm2022/lib/interaction/popover/popover.scroll.content.component.mjs +0 -48
- package/esm2022/lib/interaction/prompt/prompt.box.component.mjs +0 -25
- package/esm2022/lib/layout/card/card.box.container.component.mjs +0 -25
- package/esm2022/lib/layout/column/two/two.column.head.component.mjs +0 -32
- package/esm2022/lib/layout/item/item.layout.module.mjs +0 -19
- package/esm2022/lib/layout/list/list.grid.view.component.mjs +0 -112
- package/esm2022/lib/layout/list/list.grid.view.directive.mjs +0 -15
- package/esm2022/lib/layout/list/list.view.meta.icon.component.mjs +0 -35
- package/esm2022/lib/layout/list/list.view.value.group.mjs +0 -32
- package/esm2022/lib/layout/list/list.view.value.group.title.directive.mjs +0 -131
- package/esm2022/lib/layout/list/list.view.value.group.title.mjs +0 -2
- package/esm2022/lib/layout/list/list.view.value.modifier.directive.mjs +0 -77
- package/esm2022/lib/layout/list/list.view.value.modifier.ripple.directive.mjs +0 -41
- package/esm2022/lib/layout/list/list.view.value.modifier.selection.directive.mjs +0 -39
- package/esm2022/lib/router/provider/ngrouter/angular.router.module.mjs +0 -36
- package/esm2022/lib/router/provider/uirouter/uirouter.router.module.mjs +0 -36
- package/esm2022/lib/screen/screen.module.mjs +0 -24
- package/esm2022/mapbox/lib/options.mjs +0 -2
- package/lib/button/progress/base.progress.button.directive.d.ts +0 -32
- package/lib/extension/model/model.module.d.ts +0 -19
- package/lib/interaction/popover/popover.scroll.content.component.d.ts +0 -13
- package/lib/interaction/prompt/prompt.box.component.d.ts +0 -6
- package/lib/layout/card/card.box.container.component.d.ts +0 -8
- package/lib/layout/column/two/two.column.head.component.d.ts +0 -10
- package/lib/layout/item/item.layout.module.d.ts +0 -9
- package/lib/layout/list/list.grid.view.directive.d.ts +0 -10
- package/lib/layout/list/list.view.value.group.title.directive.d.ts +0 -35
- package/lib/router/provider/ngrouter/angular.router.module.d.ts +0 -12
- package/lib/router/provider/uirouter/uirouter.router.module.d.ts +0 -12
- package/lib/screen/screen.module.d.ts +0 -9
- package/mapbox/esm2022/dereekb-dbx-web-mapbox.mjs +0 -5
- package/mapbox/esm2022/index.mjs +0 -2
- package/mapbox/esm2022/lib/index.mjs +0 -21
- package/mapbox/esm2022/lib/mapbox.change.service.mjs +0 -40
- package/mapbox/esm2022/lib/mapbox.injection.component.mjs +0 -28
- package/mapbox/esm2022/lib/mapbox.injection.store.mjs +0 -39
- package/mapbox/esm2022/lib/mapbox.injection.store.provide.mjs +0 -47
- package/mapbox/esm2022/lib/mapbox.layout.component.mjs +0 -185
- package/mapbox/esm2022/lib/mapbox.layout.drawer.component.mjs +0 -21
- package/mapbox/esm2022/lib/mapbox.layout.resize.sync.directive.mjs +0 -32
- package/mapbox/esm2022/lib/mapbox.marker.component.mjs +0 -135
- package/mapbox/esm2022/lib/mapbox.marker.mjs +0 -16
- package/mapbox/esm2022/lib/mapbox.markers.component.mjs +0 -58
- package/mapbox/esm2022/lib/mapbox.menu.component.mjs +0 -91
- package/mapbox/esm2022/lib/mapbox.mjs +0 -19
- package/mapbox/esm2022/lib/mapbox.module.mjs +0 -108
- package/mapbox/esm2022/lib/mapbox.rxjs.mjs +0 -53
- package/mapbox/esm2022/lib/mapbox.service.mjs +0 -36
- package/mapbox/esm2022/lib/mapbox.store.map.directive.mjs +0 -33
- package/mapbox/esm2022/lib/mapbox.store.mjs +0 -525
- package/mapbox/esm2022/lib/mapbox.store.provide.mjs +0 -47
- package/mapbox/esm2022/lib/mapbox.util.mjs +0 -15
- package/mapbox/esm2022/lib/options.mjs +0 -2
- package/mapbox/fesm2022/dereekb-dbx-web-mapbox.mjs +0 -1449
- package/mapbox/fesm2022/dereekb-dbx-web-mapbox.mjs.map +0 -1
- package/mapbox/lib/options.d.ts +0 -7
- package/mapbox/package.json +0 -21
- package/table/esm2022/dereekb-dbx-web-table.mjs +0 -5
- package/table/esm2022/index.mjs +0 -2
- package/table/esm2022/lib/date/date.table.column.header.component.mjs +0 -49
- package/table/esm2022/lib/date/daterange.table.cell.input.component.mjs +0 -161
- package/table/esm2022/lib/date/index.mjs +0 -4
- package/table/esm2022/lib/date/table.date.module.mjs +0 -68
- package/table/esm2022/lib/index.mjs +0 -18
- package/table/esm2022/lib/table.cell.action.component.mjs +0 -25
- package/table/esm2022/lib/table.cell.input.component.mjs +0 -28
- package/table/esm2022/lib/table.cell.summaryend.component.mjs +0 -25
- package/table/esm2022/lib/table.cell.summarystart.component.mjs +0 -28
- package/table/esm2022/lib/table.column.directive.mjs +0 -27
- package/table/esm2022/lib/table.column.footer.component.mjs +0 -32
- package/table/esm2022/lib/table.column.header.component.mjs +0 -32
- package/table/esm2022/lib/table.component.mjs +0 -55
- package/table/esm2022/lib/table.directive.mjs +0 -34
- package/table/esm2022/lib/table.item.action.component.mjs +0 -32
- package/table/esm2022/lib/table.item.cell.component.mjs +0 -36
- package/table/esm2022/lib/table.item.directive.mjs +0 -27
- package/table/esm2022/lib/table.item.header.component.mjs +0 -24
- package/table/esm2022/lib/table.mjs +0 -2
- package/table/esm2022/lib/table.module.mjs +0 -74
- package/table/esm2022/lib/table.store.mjs +0 -53
- package/table/fesm2022/dereekb-dbx-web-table.mjs +0 -704
- package/table/fesm2022/dereekb-dbx-web-table.mjs.map +0 -1
- package/table/package.json +0 -21
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"dereekb-dbx-web-mapbox.mjs","sources":["../../../../../packages/dbx-web/mapbox/src/lib/mapbox.service.ts","../../../../../packages/dbx-web/mapbox/src/lib/mapbox.util.ts","../../../../../packages/dbx-web/mapbox/src/lib/mapbox.rxjs.ts","../../../../../packages/dbx-web/mapbox/src/lib/mapbox.store.ts","../../../../../packages/dbx-web/mapbox/src/lib/mapbox.change.service.ts","../../../../../packages/dbx-web/mapbox/src/lib/mapbox.injection.store.ts","../../../../../packages/dbx-web/mapbox/src/lib/mapbox.injection.component.ts","../../../../../packages/dbx-web/mapbox/src/lib/mapbox.injection.store.provide.ts","../../../../../packages/dbx-web/mapbox/src/lib/mapbox.store.map.directive.ts","../../../../../packages/dbx-web/mapbox/src/lib/mapbox.layout.drawer.component.ts","../../../../../packages/dbx-web/mapbox/src/lib/mapbox.layout.drawer.component.html","../../../../../packages/dbx-web/mapbox/src/lib/mapbox.layout.component.ts","../../../../../packages/dbx-web/mapbox/src/lib/mapbox.layout.component.html","../../../../../packages/dbx-web/mapbox/src/lib/mapbox.menu.component.ts","../../../../../packages/dbx-web/mapbox/src/lib/mapbox.store.provide.ts","../../../../../packages/dbx-web/mapbox/src/lib/mapbox.marker.component.ts","../../../../../packages/dbx-web/mapbox/src/lib/mapbox.markers.component.ts","../../../../../packages/dbx-web/mapbox/src/lib/mapbox.layout.resize.sync.directive.ts","../../../../../packages/dbx-web/mapbox/src/lib/mapbox.module.ts","../../../../../packages/dbx-web/mapbox/src/lib/mapbox.marker.ts","../../../../../packages/dbx-web/mapbox/src/lib/mapbox.ts","../../../../../packages/dbx-web/mapbox/src/dereekb-dbx-web-mapbox.ts"],"sourcesContent":["import { Injectable, inject } from '@angular/core';\nimport { LatLngPointInput, Milliseconds } from '@dereekb/util';\nimport { MapboxOptions } from 'mapbox-gl';\nimport { KnownMapboxStyle, MapboxZoomLevel } from './mapbox';\n\nexport class DbxMapboxConfig {\n readonly defaultStyle?: MapboxOptions['style'];\n readonly defaultZoom?: MapboxZoomLevel;\n readonly defaultCenter?: LatLngPointInput;\n readonly defaultStoreRefreshPeriod?: number;\n}\n\nexport const DEFAULT_MAPBOX_STYLE: KnownMapboxStyle = 'mapbox://styles/mapbox/streets-v12';\nexport const DEFAULT_MAPBOX_CENTER: LatLngPointInput = [30.2690138665, -97.7408297965];\nexport const DEFAULT_MAPBOX_ZOOM: MapboxZoomLevel = 8;\nexport const DEFAULT_MAPBOX_MAP_STORE_TIMER_REFRESH_PERIOD: Milliseconds = 200;\n\n@Injectable({\n providedIn: 'root'\n})\nexport class DbxMapboxService {\n private readonly _config = inject(DbxMapboxConfig, { optional: true }) ?? {};\n\n get defaultStyle() {\n return this._config.defaultStyle ?? DEFAULT_MAPBOX_STYLE;\n }\n\n get defaultZoom(): MapboxZoomLevel {\n return this._config.defaultZoom ?? DEFAULT_MAPBOX_ZOOM;\n }\n\n get defaultCenter(): LatLngPointInput {\n return this._config.defaultCenter ?? DEFAULT_MAPBOX_CENTER;\n }\n\n get mapboxMapStoreTimerRefreshPeriod(): number {\n return this._config.defaultStoreRefreshPeriod ?? DEFAULT_MAPBOX_MAP_STORE_TIMER_REFRESH_PERIOD;\n }\n}\n","import { LatLngBound, LatLngPoint, Vector, VectorTuple } from '@dereekb/util';\nimport { bounds } from '@placemarkio/geo-viewport';\nimport { MapboxTileSize, MapboxZoomLevel } from './mapbox';\n\nexport interface MapboxViewportBoundFunctionConfig {\n readonly mapCanvasSize: Vector;\n /**\n * Mapbox tilesize being used. Defaults to 512x512.\n */\n readonly tileSize?: MapboxTileSize;\n}\n\n/**\n * Input for MapboxViewportBoundFunction.\n */\nexport interface MapboxViewportBoundFunctionInput {\n /**\n * Center of the viewport\n */\n readonly center: LatLngPoint;\n /**\n * Zoom level\n */\n readonly zoom: MapboxZoomLevel;\n}\n\n/**\n * Used to calculate the bounds of a view/object given the input MapboxViewportBoundFunctionInput.\n */\nexport type MapboxViewportBoundFunction = (input: MapboxViewportBoundFunctionInput) => LatLngBound;\n\nexport function mapboxViewportBoundFunction(config: MapboxViewportBoundFunctionConfig): MapboxViewportBoundFunction {\n const { mapCanvasSize, tileSize = 512 } = config;\n const dimensions: VectorTuple = [mapCanvasSize.x, mapCanvasSize.y];\n return ({ center, zoom }) => {\n const boundingBox = bounds([center.lng, center.lat], zoom, dimensions, tileSize);\n const [swLng, swLat, neLng, neLat] = boundingBox;\n\n const result = {\n sw: { lat: swLat, lng: swLng },\n ne: { lat: neLat, lng: neLng }\n };\n\n return result;\n };\n}\n","import { ObservableOrValue, asObservable } from '@dereekb/rxjs';\nimport { LAT_LONG_10M_PRECISION, LatLngPointInput, LatLngBound, LatLngBoundCheckFunction, latLngPointFunction, roundNumberToStepFunction, RoundNumberToStepFunctionInput, LatLngPrecision, type Maybe } from '@dereekb/util';\nimport { combineLatestWith, map, Observable, OperatorFunction, switchMap, shareReplay, distinctUntilChanged } from 'rxjs';\nimport { MapboxZoomLevel } from './mapbox';\nimport { MapboxViewportBoundFunction } from './mapbox.util';\n\nexport type FilterMapboxBoundReadItemValueFunction<T> = (value: T) => MapboxViewportBoundFunctionItemValue;\n\nexport interface FilterMapboxBoundConfig<T> {\n boundFunctionObs: ObservableOrValue<MapboxViewportBoundFunction>;\n boundDecisionObs: ObservableOrValue<LatLngBoundCheckFunction>;\n /**\n * Reads the value from the input item.\n */\n readValue: FilterMapboxBoundReadItemValueFunction<T>;\n /**\n * Minimum precision to retain. Defaults to LAT_LONG_10M_PRECISION\n */\n precision?: LatLngPrecision;\n /**\n * Amount of zoom rounding to use. By default rounds to 0.5 steps using \"floor\" in order to \"round up\" since zoom values are inversely proportional to bounds area.\n */\n zoomRounding?: RoundNumberToStepFunctionInput;\n /**\n * Default zoom level for item values that do not have an explicit zoom, or a zoom of 0.\n *\n * Defaults to 17, which can produce a viewport/bounds about the size of a park.\n */\n defaultZoom?: MapboxZoomLevel;\n}\n\nexport interface MapboxViewportBoundFunctionItemValue {\n readonly center: LatLngPointInput;\n readonly zoom?: Maybe<MapboxZoomLevel>;\n}\n\nexport interface MapboxViewportBoundFunctionItem<T> {\n readonly value: T;\n readonly bound: LatLngBound;\n}\n\n/**\n * Filters the input objects based on their center and zoom values.\n *\n * This function caches the bounds computations for each of the input values.\n *\n * @param config\n * @returns\n */\nexport function filterByMapboxViewportBound<T>(config: FilterMapboxBoundConfig<T>): OperatorFunction<T[], T[]> {\n const { boundDecisionObs: inputBoundDecisionObs, boundFunctionObs: inputBoundFunctionObs, defaultZoom: inputDefaultZoom = 17, readValue, zoomRounding, precision = LAT_LONG_10M_PRECISION } = config;\n const _latLngPoint = latLngPointFunction({ wrap: false, validate: false, precision });\n const _roundZoom = roundNumberToStepFunction(zoomRounding || { step: 0.5, round: 'floor' });\n\n const boundDecisionObs = asObservable(inputBoundDecisionObs);\n const boundFunctionObs = asObservable(inputBoundFunctionObs);\n\n return (input: Observable<T[]>) => {\n return boundFunctionObs.pipe(\n distinctUntilChanged(),\n switchMap((viewportBoundFunction) => {\n const cache = new Map<string, LatLngBound>();\n\n return input.pipe(\n map((values: T[]) => {\n return values.map((value: T) => {\n const item: MapboxViewportBoundFunctionItemValue = readValue(value);\n const centerLatLng = _latLngPoint(item.center);\n const zoomStep = _roundZoom(item.zoom || inputDefaultZoom);\n const cacheKey = `${zoomStep}_${centerLatLng.lat}_${centerLatLng.lng}`;\n\n const cachedValue = cache.get(cacheKey);\n let bound: LatLngBound;\n\n if (!cachedValue) {\n bound = viewportBoundFunction({ center: centerLatLng, zoom: zoomStep });\n cache.set(cacheKey, bound);\n } else {\n bound = cachedValue;\n }\n\n return {\n value,\n bound\n } as MapboxViewportBoundFunctionItem<T>;\n });\n }),\n combineLatestWith(boundDecisionObs),\n map(([items, boundFunction]) => {\n const valuesInBounds: T[] = [];\n\n items.forEach((item) => {\n if (boundFunction(item.bound)) {\n valuesInBounds.push(item.value);\n }\n });\n\n return valuesInBounds;\n })\n );\n }),\n shareReplay(1)\n );\n };\n}\n","import { cleanup, filterMaybe, onTrueToFalse } from '@dereekb/rxjs';\nimport { Injectable, OnDestroy, inject } from '@angular/core';\nimport {\n isSameLatLngBound,\n isSameLatLngPoint,\n IsWithinLatLngBoundFunction,\n isWithinLatLngBoundFunction,\n LatLngBound,\n latLngBoundFunction,\n LatLngPointInput,\n LatLngPoint,\n latLngPointFunction,\n Maybe,\n OverlapsLatLngBoundFunction,\n overlapsLatLngBoundFunction,\n diffLatLngBoundPoints,\n latLngBoundCenterPoint,\n addLatLngPoints,\n isDefaultLatLngPoint,\n swMostLatLngPoint,\n neMostLatLngPoint,\n latLngBoundWrapsMap,\n Vector,\n filterUndefinedValues,\n latLngBoundFromInput,\n vectorMinimumSizeResizeFunction,\n isSameVector,\n ZoomLevel\n} from '@dereekb/util';\nimport { ComponentStore } from '@ngrx/component-store';\nimport { MapService } from 'ngx-mapbox-gl';\nimport { defaultIfEmpty, distinctUntilChanged, filter, map, shareReplay, switchMap, tap, NEVER, Observable, of, Subscription, startWith, interval, first, combineLatest, EMPTY, OperatorFunction, throttleTime } from 'rxjs';\nimport * as MapboxGl from 'mapbox-gl';\nimport { DbxMapboxClickEvent, KnownMapboxStyle, MapboxBearing, MapboxEaseTo, MapboxFitBounds, MapboxFitPositions, MapboxFlyTo, MapboxJumpTo, MapboxResetNorth, MapboxResetNorthPitch, MapboxRotateTo, MapboxSnapToNorth, MapboxStyleConfig, MapboxZoomLevel, MapboxZoomLevelRange } from './mapbox';\nimport { DbxMapboxService } from './mapbox.service';\nimport { DbxInjectionComponentConfig } from '@dereekb/dbx-core';\nimport { mapboxViewportBoundFunction, MapboxViewportBoundFunction } from './mapbox.util';\nimport { FilterMapboxBoundConfig, FilterMapboxBoundReadItemValueFunction, filterByMapboxViewportBound } from './mapbox.rxjs';\n\nexport type MapboxMapLifecycleState = 'init' | 'load' | 'render' | 'idle';\nexport type MapboxMapMoveState = 'init' | 'idle' | 'moving';\nexport type MapboxMapZoomState = 'init' | 'idle' | 'zooming';\nexport type MapboxMapRotateState = 'init' | 'idle' | 'rotating';\n\nexport interface StringMapboxListenerPair {\n type: string;\n listener: (ev: MapboxGl.EventData) => void;\n}\n\nexport interface TypedMapboxListenerPair<T extends keyof MapboxGl.MapEventType> {\n type: T;\n listener: (ev: MapboxGl.MapEventType[T] & MapboxGl.EventData) => void;\n}\n\nexport interface DbxMapboxMarginCalculationSizing {\n leftMargin: number;\n rightMargin: number;\n fullWidth: number;\n}\n\nexport type DbxMapboxStoreBoundRefreshType = 'always' | 'when_not_rendering' | 'only_after_render_finishes';\n\nexport interface DbxMapboxStoreBoundRefreshSettings {\n /**\n * Max bound refresh interval.\n */\n throttle: number;\n /**\n * Whether or not to wait to update the bound until after it has finished rendering.\n */\n refreshType: DbxMapboxStoreBoundRefreshType;\n}\n\nexport interface DbxMapboxStoreState {\n /**\n * Current MapService being utilized.\n */\n readonly mapService?: Maybe<MapService>;\n readonly lifecycleState: MapboxMapLifecycleState;\n readonly moveState: MapboxMapMoveState;\n readonly zoomState: MapboxMapZoomState;\n readonly rotateState: MapboxMapRotateState;\n /**\n * Visual container size of the map.\n */\n readonly mapCanvasSize?: Maybe<Vector>;\n /**\n * Latest click event\n */\n readonly clickEvent?: Maybe<DbxMapboxClickEvent>;\n /**\n * Latest double-click event\n */\n readonly doubleClickEvent?: Maybe<DbxMapboxClickEvent>;\n /**\n * Latest contextmenu event.\n */\n readonly rightClickEvent?: Maybe<DbxMapboxClickEvent>;\n /**\n * Whether or not to retain content between resets.\n *\n * True by default.\n */\n readonly retainContent: boolean;\n /**\n * Custom content configuration.\n */\n readonly content?: Maybe<DbxInjectionComponentConfig<unknown>>;\n /**\n * Latest error\n */\n readonly error?: Maybe<Error>;\n /**\n * Map margin/offset\n */\n readonly margin?: Maybe<DbxMapboxMarginCalculationSizing>;\n /**\n * Minimum vector size to use for the viewportBoundFunction$. If not defined there is no minimum.\n */\n readonly minimumVirtualViewportSize?: Maybe<Partial<Vector>>;\n /**\n * Bound refresh settings\n */\n readonly boundRefreshSettings: DbxMapboxStoreBoundRefreshSettings;\n /**\n * Whether or not to use the virtual bound (vs raw bound) for all bound-related observables.\n *\n * Defaults to true.\n */\n readonly useVirtualBound: boolean;\n}\n\n/**\n * Store used for retrieving information.\n */\n@Injectable()\nexport class DbxMapboxMapStore extends ComponentStore<DbxMapboxStoreState> implements OnDestroy {\n private readonly dbxMapboxService = inject(DbxMapboxService);\n\n private safeLatLngPoint = latLngPointFunction({ wrap: true });\n private latLngPoint = latLngPointFunction({ wrap: false, validate: false });\n private latLngBound = latLngBoundFunction({ pointFunction: this.latLngPoint });\n\n constructor() {\n super({\n lifecycleState: 'init',\n moveState: 'init',\n zoomState: 'init',\n rotateState: 'init',\n retainContent: true,\n useVirtualBound: true,\n boundRefreshSettings: {\n throttle: 300,\n refreshType: 'always'\n }\n });\n }\n\n // MARK: Effects\n readonly setMapService = this.effect((input: Observable<Maybe<MapService>>) => {\n return input.pipe(\n switchMap((service: Maybe<MapService>) => {\n this._setMapService(service);\n\n if (!service) {\n return NEVER;\n } else {\n return service.mapLoaded$.pipe(\n defaultIfEmpty(undefined),\n map(() => {\n this._setLifecycleState('idle');\n this._setMoveState('idle');\n this._setZoomState('idle');\n this._setRotateState('idle');\n\n const map = service.mapInstance;\n\n const listenerPairs: StringMapboxListenerPair[] = [];\n\n function addListener<T extends keyof MapboxGl.MapEventType>(type: T, listener: (ev: MapboxGl.MapEventType[T] & MapboxGl.EventData) => void) {\n map.on(type, listener);\n listenerPairs.push({ type, listener } as StringMapboxListenerPair);\n }\n\n addListener('idle', () => this._setLifecycleState('idle'));\n addListener('render', () => this._setLifecycleState('render'));\n addListener('error', (x) => {\n this._setError(x.error);\n });\n\n addListener('movestart', () => this._setMoveState('moving'));\n addListener('moveend', () => this._setMoveState('idle'));\n\n addListener('zoomstart', () => this._setZoomState('zooming'));\n addListener('zoomend', () => this._setZoomState('idle'));\n\n addListener('rotatestart', () => this._setRotateState('rotating'));\n addListener('rotateend', () => this._setRotateState('idle'));\n\n addListener('click', (x) => this._setClickEvent(x));\n addListener('dblclick', (x) => this._setDoubleClickEvent(x));\n addListener('contextmenu', (x) => this._setRightClickEvent(x));\n\n const refreshForResize = () => {\n const { clientWidth: x, clientHeight: y } = map.getCanvas();\n this._setMapCanvasSize({ x, y });\n };\n\n addListener('resize', refreshForResize);\n refreshForResize();\n\n const subs: Subscription[] = [];\n\n return {\n service,\n listenerPairs,\n subs\n };\n })\n );\n }\n }),\n cleanup(({ service, listenerPairs, subs }) => {\n const map = service.mapInstance;\n\n if (map) {\n listenerPairs.forEach((x) => {\n map.off(x.type, x.listener);\n });\n }\n\n subs.forEach((sub) => sub.unsubscribe());\n })\n );\n });\n\n readonly setStyle = this.effect((input: Observable<MapboxStyleConfig | KnownMapboxStyle | string>) => {\n return input.pipe(\n switchMap((style) => {\n return this.mapInstance$.pipe(\n tap((map) => {\n if (typeof style === 'string') {\n map.setStyle(style);\n } else {\n map.setStyle(style.style, style.options);\n }\n })\n );\n })\n );\n });\n\n readonly setCenter = this.effect((input: Observable<LatLngPointInput>) => {\n return input.pipe(\n switchMap((center: LatLngPointInput) => {\n const centerPoint = this.safeLatLngPoint(center);\n return this.mapInstance$.pipe(tap((map) => map.setCenter(centerPoint)));\n })\n );\n });\n\n readonly setZoom = this.effect((input: Observable<MapboxZoomLevel>) => {\n return input.pipe(\n switchMap((zoom: MapboxZoomLevel) => {\n return this.mapInstance$.pipe(tap((map) => map.setZoom(zoom)));\n })\n );\n });\n\n readonly setZoomRange = this.effect((input: Observable<Partial<MapboxZoomLevelRange>>) => {\n return input.pipe(\n switchMap((zoomRange: Partial<MapboxZoomLevelRange>) => {\n return this.mapInstance$.pipe(\n tap((map) => {\n map.setMinZoom(zoomRange.min || null);\n map.setMaxZoom(zoomRange.max || null);\n })\n );\n })\n );\n });\n\n readonly setMinZoom = this.effect((input: Observable<MapboxZoomLevel>) => {\n return input.pipe(\n switchMap((zoom: MapboxZoomLevel) => {\n return this.mapInstance$.pipe(tap((map) => map.setMinZoom(zoom)));\n })\n );\n });\n\n readonly setMaxZoom = this.effect((input: Observable<MapboxZoomLevel>) => {\n return input.pipe(\n switchMap((zoom: MapboxZoomLevel) => {\n return this.mapInstance$.pipe(tap((map) => map.setMaxZoom(zoom)));\n })\n );\n });\n\n readonly setKeyboardDisabled = this.effect((input: Observable<Maybe<boolean> | void>) => {\n return input.pipe(\n switchMap((disabled: Maybe<boolean> | void) => {\n return this.mapInstance$.pipe(\n tap((map) => {\n if (disabled === false) {\n map.keyboard.enable();\n } else {\n map.keyboard.disable();\n }\n })\n );\n })\n );\n });\n\n readonly setDragRotateDisabled = this.effect((input: Observable<Maybe<boolean> | void>) => {\n return input.pipe(\n switchMap((disabled: Maybe<boolean> | void) => {\n return this.mapInstance$.pipe(\n tap((map) => {\n if (disabled === false) {\n map.dragRotate.enable();\n } else {\n map.dragRotate.disable();\n }\n })\n );\n })\n );\n });\n\n readonly setDragPanDisabled = this.effect((input: Observable<Maybe<boolean> | void>) => {\n return input.pipe(\n switchMap((disabled: Maybe<boolean> | void) => {\n return this.mapInstance$.pipe(\n tap((map) => {\n if (disabled === false) {\n map.dragPan.enable();\n } else {\n map.dragPan.disable();\n }\n })\n );\n })\n );\n });\n\n readonly setZoomDisabled = this.effect((input: Observable<Maybe<boolean> | void>) => {\n return input.pipe(\n switchMap((disabled: Maybe<boolean> | void) => {\n return this.mapInstance$.pipe(\n tap((map) => {\n if (disabled === false) {\n map.scrollZoom.enable();\n map.doubleClickZoom.enable();\n } else {\n map.scrollZoom.disable();\n map.doubleClickZoom.disable();\n }\n })\n );\n })\n );\n });\n\n readonly setPitch = this.effect((input: Observable<number>) => {\n return input.pipe(\n switchMap((pitch) => {\n return this.mapInstance$.pipe(tap((map) => map.setPitch(pitch)));\n })\n );\n });\n\n readonly setMinPitch = this.effect((input: Observable<number>) => {\n return input.pipe(\n switchMap((pitch: number) => {\n return this.mapInstance$.pipe(tap((map) => map.setMinPitch(pitch)));\n })\n );\n });\n\n readonly setMaxPitch = this.effect((input: Observable<number>) => {\n return input.pipe(\n switchMap((pitch: number) => {\n return this.mapInstance$.pipe(tap((map) => map.setMaxPitch(pitch)));\n })\n );\n });\n\n readonly setBearing = this.effect((input: Observable<number>) => {\n return input.pipe(\n switchMap((bearing) => {\n return this.mapInstance$.pipe(tap((map) => map.setBearing(bearing)));\n })\n );\n });\n\n readonly rotateTo = this.effect((input: Observable<MapboxBearing | MapboxRotateTo>) => {\n return input.pipe(\n switchMap((rotateInput: MapboxBearing | MapboxRotateTo) => {\n const rotate: MapboxRotateTo = typeof rotateInput === 'number' ? { bearing: rotateInput } : rotateInput;\n return this.mapInstance$.pipe(tap((map) => map.rotateTo(rotate.bearing, rotate.options, rotate?.eventData)));\n })\n );\n });\n\n readonly resetNorth = this.effect((input: Observable<Maybe<MapboxResetNorth> | void>) => {\n return input.pipe(\n switchMap((reset: Maybe<MapboxResetNorth> | void) => {\n return this.mapInstance$.pipe(tap((map) => map.resetNorth(reset?.options, reset?.eventData)));\n })\n );\n });\n\n readonly resetNorthPitch = this.effect((input: Observable<Maybe<MapboxResetNorthPitch> | void>) => {\n return input.pipe(\n switchMap((reset: Maybe<MapboxResetNorthPitch> | void) => {\n return this.mapInstance$.pipe(tap((map) => map.resetNorthPitch(reset?.options, reset?.eventData)));\n })\n );\n });\n\n readonly snapToNorth = this.effect((input: Observable<Maybe<MapboxSnapToNorth> | void>) => {\n return input.pipe(\n switchMap((snap: Maybe<MapboxSnapToNorth> | void) => {\n return this.mapInstance$.pipe(tap((map) => map.snapToNorth(snap?.options, snap?.eventData)));\n })\n );\n });\n\n readonly fitPositions = this.effect((input: Observable<MapboxFitPositions>) => {\n return input.pipe(\n switchMap((x) => {\n const boundFromInput = latLngBoundFromInput(x.positions);\n\n if (boundFromInput) {\n const bound = this.latLngBound(boundFromInput);\n return this.mapInstance$.pipe(tap((map) => map.fitBounds(new MapboxGl.LngLatBounds(bound.sw, bound.ne), x.options, x.eventData)));\n } else {\n return EMPTY;\n }\n })\n );\n });\n\n readonly fitBounds = this.effect((input: Observable<MapboxFitBounds>) => {\n return input.pipe(\n switchMap((x) => {\n const bound = this.latLngBound(x.bounds);\n return this.mapInstance$.pipe(tap((map) => map.fitBounds(new MapboxGl.LngLatBounds(bound.sw, bound.ne), x.options, x.eventData)));\n })\n );\n });\n\n readonly jumpTo = this.effect((input: Observable<MapboxJumpTo>) => {\n return input.pipe(\n switchMap((x) => {\n const inputCenter = x.center ?? x.to?.center;\n const center = inputCenter ? this.safeLatLngPoint(inputCenter) : undefined;\n return this.mapInstance$.pipe(tap((map) => map.jumpTo(filterUndefinedValues({ ...x.to, center }), x.eventData)));\n })\n );\n });\n\n readonly easeTo = this.effect((input: Observable<MapboxEaseTo>) => {\n return input.pipe(\n switchMap((x) => {\n const inputCenter = x.center ?? x.to?.center;\n const center = inputCenter ? this.safeLatLngPoint(inputCenter) : undefined;\n return this.mapInstance$.pipe(tap((map) => map.easeTo(filterUndefinedValues({ ...x.to, center }), x.eventData)));\n })\n );\n });\n\n readonly flyTo = this.effect((input: Observable<MapboxFlyTo>) => {\n return input.pipe(\n switchMap((x) => {\n const inputCenter = x.center ?? x.to?.center;\n const center = inputCenter ? this.safeLatLngPoint(inputCenter) : undefined;\n return this.mapInstance$.pipe(tap((map) => map.flyTo(filterUndefinedValues({ ...x.to, center }), x.eventData)));\n })\n );\n });\n\n readonly resetPitchAndBearing = this.effect((input: Observable<void>) => {\n return input.pipe(\n switchMap(() => {\n return this.mapInstance$.pipe(\n tap((map) => {\n map.setPitch(0);\n map.setBearing(0);\n })\n );\n })\n );\n });\n\n // MARK: Accessors\n get timerRefreshPeriod() {\n return this.dbxMapboxService.mapboxMapStoreTimerRefreshPeriod;\n }\n\n movingTimer(period = this.timerRefreshPeriod) {\n return this.moveState$.pipe(\n switchMap((x) => {\n if (x === 'moving') {\n return interval(period);\n } else {\n return of(0);\n }\n }),\n shareReplay(1)\n );\n }\n\n lifecycleRenderTimer(period = this.timerRefreshPeriod) {\n return this.lifecycleState$.pipe(\n switchMap((x) => {\n if (x === 'render') {\n return interval(period);\n } else {\n return of(0);\n }\n }),\n shareReplay(1)\n );\n }\n\n atNextIdle(): Observable<boolean> {\n return this.moveState$.pipe(\n map((x) => x === 'idle'),\n first()\n );\n }\n\n calculateNextCenterWithOffset(inputOffset: LatLngPointInput): Observable<LatLngPoint> {\n const offset = this.latLngPoint(inputOffset);\n\n return this.atNextIdle().pipe(\n switchMap(() =>\n this.center$.pipe(\n first(),\n map((center) => {\n const newCenter = {\n lat: offset.lat + center.lat,\n lng: offset.lng + center.lng\n };\n return newCenter;\n })\n )\n )\n );\n }\n\n calculateNextCenterOffsetWithScreenMarginChange(sizing: DbxMapboxMarginCalculationSizing): Observable<LatLngPoint> {\n // TODO: Consider calculating this using the viewport() function from @placemarkio/geo-viewport\n return this.atNextIdle().pipe(\n switchMap(() =>\n this.bound$.pipe(\n first(),\n map((bounds) => {\n const diff = diffLatLngBoundPoints(bounds, true);\n const center = latLngBoundCenterPoint(bounds);\n\n const offsetWidth = sizing.leftMargin + sizing.rightMargin; // 300 + 0\n const newWidth = sizing.fullWidth - offsetWidth; // 1000 - 300 - 0\n const newWidthRatio = newWidth / sizing.fullWidth; // 700 / 1000\n const newCenterLongitudeWidth = diff.lng * newWidthRatio; // 70% offset\n\n const effectiveOffset: LatLngPoint = {\n lat: 0,\n lng: newCenterLongitudeWidth / 2\n };\n\n const newCenter = addLatLngPoints(bounds.sw, effectiveOffset);\n newCenter.lat = center.lat; // retain center position\n\n // console.log({ sizing, bounds, effectiveOffset, newWidth, offsetWidth, diff, center, newCenter });\n\n return newCenter;\n })\n )\n )\n );\n }\n\n filterByViewportBound<T>(input: FilterMapboxBoundReadItemValueFunction<T> | Omit<FilterMapboxBoundConfig<T>, 'boundFunctionObs' | 'boundDecisionObs'>): OperatorFunction<T[], T[]> {\n const config = typeof input === 'function' ? { readValue: input } : input;\n\n return filterByMapboxViewportBound({\n ...config,\n boundFunctionObs: this.viewportBoundFunction$,\n boundDecisionObs: this.overlapsBoundFunction$\n });\n }\n\n readonly currentMapService$ = this.state$.pipe(\n map((x) => x.mapService),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n readonly mapService$ = this.currentMapService$.pipe(filterMaybe());\n\n readonly currentMapInstance$: Observable<Maybe<MapboxGl.Map>> = this.currentMapService$.pipe(\n switchMap((currentMapService: Maybe<MapService>) => {\n if (currentMapService) {\n return currentMapService.mapLoaded$.pipe(\n defaultIfEmpty(undefined),\n map(() => currentMapService.mapInstance)\n );\n } else {\n return of(undefined);\n }\n }),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n readonly mapInstance$ = this.currentMapInstance$.pipe(filterMaybe());\n\n readonly boundRefreshSettings$ = this.state$.pipe(\n map((x) => x.boundRefreshSettings),\n shareReplay(1)\n );\n\n readonly moveState$ = this.state$.pipe(\n map((x) => x.moveState),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n readonly lifecycleState$ = this.state$.pipe(\n map((x) => x.lifecycleState),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n readonly zoomState$ = this.state$.pipe(\n map((x) => x.zoomState),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n readonly rotateState$ = this.state$.pipe(\n map((x) => x.rotateState),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n readonly isInitialized$ = this.currentMapInstance$.pipe(\n switchMap((x) => {\n if (!x) {\n return of(false);\n } else {\n return combineLatest([this.moveState$.pipe(map((x) => x === 'idle')), this.lifecycleState$.pipe(map((x) => x === 'idle'))]).pipe(\n filter(([m, l]) => m && l),\n first(),\n map(() => true)\n );\n }\n }),\n shareReplay(1)\n );\n\n readonly whenInitialized$ = this.isInitialized$.pipe(\n filter((x) => true),\n shareReplay(1)\n );\n\n readonly isRendering$ = this.whenInitialized$.pipe(\n switchMap(() =>\n this.lifecycleState$.pipe(\n map((x) => x === 'render'),\n distinctUntilChanged(),\n shareReplay(1)\n )\n )\n );\n\n readonly isMoving$ = this.whenInitialized$.pipe(\n switchMap(() =>\n this.moveState$.pipe(\n map((x) => x === 'moving'),\n distinctUntilChanged(),\n shareReplay(1)\n )\n )\n );\n\n readonly isZooming$ = this.whenInitialized$.pipe(\n switchMap(() =>\n this.zoomState$.pipe(\n map((x) => x === 'zooming'),\n distinctUntilChanged(),\n shareReplay(1)\n )\n )\n );\n\n readonly isRotating$ = this.whenInitialized$.pipe(\n switchMap(() =>\n this.rotateState$.pipe(\n map((x) => x === 'rotating'),\n distinctUntilChanged(),\n shareReplay(1)\n )\n )\n );\n\n private readonly _movingTimer = this.movingTimer();\n private readonly _renderingTimer = this.lifecycleRenderTimer();\n\n readonly centerNow$: Observable<LatLngPoint> = this.whenInitialized$.pipe(\n switchMap(() =>\n this.mapInstance$.pipe(\n switchMap((x) => this._movingTimer.pipe(map(() => this.latLngPoint(x.getCenter())))),\n shareReplay(1)\n )\n ),\n shareReplay(1)\n );\n\n readonly center$: Observable<LatLngPoint> = this.whenInitialized$.pipe(\n switchMap(() => {\n return this.isMoving$.pipe(\n onTrueToFalse(),\n startWith(undefined),\n switchMap(() => this.centerNow$.pipe(first())),\n distinctUntilChanged<LatLngPoint>(isSameLatLngPoint),\n shareReplay(1)\n );\n }),\n shareReplay(1)\n );\n\n readonly minimumVirtualViewportSize$ = this.state$.pipe(\n map((x) => x.minimumVirtualViewportSize),\n distinctUntilChanged(isSameVector),\n shareReplay(1)\n );\n\n readonly currentMapCanvasSize$ = this.state$.pipe(\n map((x) => x.mapCanvasSize),\n distinctUntilChanged<Maybe<Vector>>(isSameVector),\n shareReplay(1)\n );\n\n /**\n * The map canvas size with consideration to the virtual viewport size.\n */\n readonly mapCanvasSize$ = this.currentMapCanvasSize$.pipe(filterMaybe());\n\n minimumMapCanvasSize(minVector: Partial<Vector>): Observable<Vector> {\n const resizeFn = vectorMinimumSizeResizeFunction(minVector);\n return this.mapCanvasSize$.pipe(\n map((x) => resizeFn(x)),\n distinctUntilChanged<Vector>(isSameVector),\n shareReplay(1)\n );\n }\n\n /**\n * The map canvas size with consideration to the virtual viewport size.\n */\n readonly virtualMapCanvasSize$ = this.minimumVirtualViewportSize$.pipe(\n switchMap((minimumVirtualViewportSize) => {\n if (minimumVirtualViewportSize) {\n return this.minimumMapCanvasSize(minimumVirtualViewportSize);\n } else {\n return this.mapCanvasSize$;\n }\n }),\n distinctUntilChanged<Vector>(isSameVector),\n shareReplay(1)\n );\n\n readonly rawViewportBoundFunction$: Observable<MapboxViewportBoundFunction> = this.mapCanvasSize$.pipe(\n map((mapCanvasSize) => mapboxViewportBoundFunction({ mapCanvasSize })),\n shareReplay(1)\n );\n\n /**\n * Creates a MapboxViewportBoundFunction observable that returns the minimum viewport size.\n *\n * @param minVector\n * @returns\n */\n viewportBoundFunctionWithMinimumSize(minVector: Partial<Vector>): Observable<MapboxViewportBoundFunction> {\n const resizeFn = vectorMinimumSizeResizeFunction(minVector);\n return this.mapCanvasSize$.pipe(\n map((x) => resizeFn(x)),\n distinctUntilChanged<Vector>(isSameVector),\n map((mapCanvasSize) => mapboxViewportBoundFunction({ mapCanvasSize })),\n shareReplay(1)\n );\n }\n\n readonly viewportBoundFunction$: Observable<MapboxViewportBoundFunction> = this.minimumVirtualViewportSize$.pipe(\n switchMap((minimumVirtualViewportSize) => {\n if (minimumVirtualViewportSize) {\n return this.viewportBoundFunctionWithMinimumSize(minimumVirtualViewportSize);\n } else {\n return this.rawViewportBoundFunction$;\n }\n }),\n shareReplay(1)\n );\n\n readonly virtualBound$: Observable<LatLngBound> = this.viewportBoundFunction$.pipe(\n switchMap((fn) => {\n return this.boundRefreshSettings$.pipe(\n switchMap((settings) => {\n const { throttle: throttleMs, refreshType } = settings;\n\n let obs: Observable<[LatLngPoint, ZoomLevel]>;\n\n switch (refreshType) {\n case 'always':\n obs = combineLatest([this.centerNow$, this.zoomNow$]);\n break;\n case 'when_not_rendering':\n case 'only_after_render_finishes':\n obs = this.bound$.pipe(switchMap(() => combineLatest([this.centerNow$, this.zoomNow$]))); // refresh whenever the bound refreshes\n break;\n }\n\n return obs.pipe(\n throttleTime(throttleMs, undefined, { leading: true, trailing: true }),\n map(([center, zoom]) =>\n fn({\n center,\n zoom\n })\n )\n );\n })\n );\n }),\n distinctUntilChanged(isSameLatLngBound),\n shareReplay(1)\n );\n\n readonly margin$ = this.state$.pipe(\n map((x) => x.margin),\n distinctUntilChanged((a, b) => a != null && b != null && a.fullWidth === b.fullWidth && a.leftMargin === b.leftMargin && a.rightMargin === b.rightMargin),\n shareReplay(1)\n );\n\n readonly reverseMargin$ = this.margin$.pipe(\n map((x) => {\n if (x) {\n return { leftMargin: -x.leftMargin, rightMargin: -x.rightMargin, fullWidth: x.fullWidth };\n } else {\n return x;\n }\n })\n );\n\n readonly centerGivenMargin$: Observable<LatLngPoint> = this.whenInitialized$.pipe(\n switchMap(() => {\n return this.reverseMargin$.pipe(\n switchMap((x) => {\n if (x) {\n return this.center$.pipe(switchMap((_) => this.calculateNextCenterOffsetWithScreenMarginChange(x)));\n } else {\n return this.isMoving$.pipe(\n filter((x) => !x),\n switchMap(() => this.center$)\n );\n }\n })\n );\n }),\n shareReplay(1)\n );\n\n readonly rawBoundNow$: Observable<LatLngBound> = this.whenInitialized$.pipe(\n switchMap(() =>\n this.mapInstance$.pipe(\n switchMap((x) =>\n this._renderingTimer.pipe(\n map(() => {\n const bound = x.getBounds();\n const boundSw = bound.getSouthWest();\n const boundNe = bound.getNorthEast();\n\n const sw = isDefaultLatLngPoint(boundSw) ? swMostLatLngPoint() : { lat: boundSw.lat, lng: boundSw.lng };\n const ne = isDefaultLatLngPoint(boundNe) ? neMostLatLngPoint() : { lat: boundNe.lat, lng: boundNe.lng };\n\n return this.latLngBound(sw, ne);\n })\n )\n )\n )\n ),\n distinctUntilChanged(isSameLatLngBound),\n shareReplay(1)\n );\n\n readonly rawBound$: Observable<LatLngBound> = this.whenInitialized$.pipe(\n switchMap(() => {\n return this.boundRefreshSettings$.pipe(\n switchMap((settings) => {\n const { throttle: throttleMs, refreshType } = settings;\n\n let obs: Observable<LatLngBound>;\n\n switch (refreshType) {\n case 'always':\n obs = this.rawBoundNow$;\n break;\n case 'when_not_rendering':\n obs = this.isRendering$.pipe(switchMap((x) => (x ? EMPTY : this.rawBoundNow$)));\n break;\n case 'only_after_render_finishes':\n obs = this.isRendering$.pipe(\n onTrueToFalse(),\n switchMap((x) => this.rawBoundNow$.pipe(first()))\n );\n break;\n }\n\n return obs.pipe(throttleTime(throttleMs, undefined, { leading: true, trailing: true }));\n })\n );\n }),\n distinctUntilChanged(isSameLatLngBound),\n shareReplay(1)\n );\n\n readonly useVirtualBound$: Observable<boolean> = this.state$.pipe(\n map((x) => x.useVirtualBound),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n readonly bound$: Observable<LatLngBound> = this.useVirtualBound$.pipe(\n switchMap((useVirtualBound) => {\n if (useVirtualBound) {\n return this.virtualBound$;\n } else {\n return this.rawBound$;\n }\n }),\n shareReplay(1)\n );\n\n readonly boundSizing$: Observable<LatLngPoint> = this.bound$.pipe(\n map((x) => diffLatLngBoundPoints(x)),\n shareReplay(1)\n );\n\n readonly boundWrapsAroundWorld$: Observable<boolean> = this.bound$.pipe(\n map((x) => latLngBoundWrapsMap(x)),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n readonly isWithinBoundFunction$: Observable<IsWithinLatLngBoundFunction> = this.bound$.pipe(\n map((x) => isWithinLatLngBoundFunction(x)),\n shareReplay(1)\n );\n\n readonly overlapsBoundFunction$: Observable<OverlapsLatLngBoundFunction> = this.virtualBound$.pipe(\n map((x) => overlapsLatLngBoundFunction(x)),\n shareReplay(1)\n );\n\n readonly zoomNow$: Observable<MapboxZoomLevel> = this.whenInitialized$.pipe(\n switchMap(() =>\n this.mapInstance$.pipe(\n switchMap((x) => this._renderingTimer.pipe(map(() => x.getZoom() as MapboxZoomLevel))),\n shareReplay(1)\n )\n )\n );\n\n readonly zoom$: Observable<MapboxZoomLevel> = this.whenInitialized$.pipe(\n switchMap(() => {\n return this.isZooming$.pipe(\n onTrueToFalse(),\n startWith(undefined),\n switchMap(() => this.zoomNow$.pipe(first())),\n distinctUntilChanged(),\n shareReplay(1)\n );\n })\n );\n\n readonly pitchNow$ = this.whenInitialized$.pipe(\n switchMap(() =>\n this.mapInstance$.pipe(\n switchMap((x) => this._movingTimer.pipe(map(() => x.getPitch()))),\n shareReplay(1)\n )\n )\n );\n\n readonly pitch$ = this.whenInitialized$.pipe(\n switchMap(() => {\n return this.isRotating$.pipe(\n onTrueToFalse(),\n startWith(undefined),\n switchMap(() => this.pitchNow$.pipe(first())),\n distinctUntilChanged(),\n shareReplay(1)\n );\n })\n );\n\n readonly bearingNow$ = this.whenInitialized$.pipe(\n switchMap(() =>\n this.mapInstance$.pipe(\n switchMap((x) => this._movingTimer.pipe(map(() => x.getBearing()))),\n shareReplay(1)\n )\n )\n );\n\n readonly bearing$ = this.whenInitialized$.pipe(\n switchMap(() => {\n return this.isRotating$.pipe(\n onTrueToFalse(),\n startWith(undefined),\n switchMap(() => this.bearingNow$.pipe(first())),\n distinctUntilChanged(),\n shareReplay(1)\n );\n })\n );\n\n readonly content$ = this.state$.pipe(\n map((x) => x.content),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n readonly hasContent$ = this.content$.pipe(map(Boolean));\n\n readonly clickEvent$ = this.state$.pipe(\n map((x) => x.clickEvent),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n readonly doubleClickEvent$ = this.state$.pipe(\n map((x) => x.doubleClickEvent),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n readonly rightClickEvent$ = this.state$.pipe(\n map((x) => x.rightClickEvent),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n // MARK: State Changes\n readonly setMargin = this.updater((state, margin: Maybe<DbxMapboxMarginCalculationSizing>) => ({ ...state, margin: margin && (margin.rightMargin !== 0 || margin.leftMargin !== 0) ? margin : undefined }));\n readonly setMinimumVirtualViewportSize = this.updater((state, minimumVirtualViewportSize: Maybe<Partial<Vector>>) => ({ ...state, minimumVirtualViewportSize }));\n readonly setUseVirtualBound = this.updater((state, useVirtualBound: boolean) => ({ ...state, useVirtualBound }));\n readonly setBoundRefreshSettings = this.updater((state, boundRefreshSettings: Partial<DbxMapboxStoreBoundRefreshSettings>) => ({ ...state, boundRefreshSettings: { ...state.boundRefreshSettings, ...boundRefreshSettings } }));\n\n private readonly _setMapService = this.updater((state, mapService: Maybe<MapService>) => ({ mapService, moveState: 'init', lifecycleState: 'init', zoomState: 'init', rotateState: 'init', retainContent: state.retainContent, content: state.retainContent ? state.content : undefined, useVirtualBound: state.useVirtualBound, boundRefreshSettings: state.boundRefreshSettings }));\n private readonly _setLifecycleState = this.updater((state, lifecycleState: MapboxMapLifecycleState) => ({ ...state, lifecycleState }));\n private readonly _setMoveState = this.updater((state, moveState: MapboxMapMoveState) => ({ ...state, moveState }));\n private readonly _setZoomState = this.updater((state, zoomState: MapboxMapZoomState) => ({ ...state, zoomState }));\n private readonly _setRotateState = this.updater((state, rotateState: MapboxMapRotateState) => ({ ...state, rotateState }));\n\n private readonly _setMapCanvasSize = this.updater((state, mapCanvasSize: Vector) => ({ ...state, mapCanvasSize }));\n private readonly _setClickEvent = this.updater((state, clickEvent: DbxMapboxClickEvent) => ({ ...state, clickEvent }));\n private readonly _setDoubleClickEvent = this.updater((state, doubleClickEvent: DbxMapboxClickEvent) => ({ ...state, doubleClickEvent }));\n private readonly _setRightClickEvent = this.updater((state, rightClickEvent: DbxMapboxClickEvent) => ({ ...state, rightClickEvent }));\n\n private readonly _setError = this.updater((state, error: Error) => ({ ...state, error }));\n\n readonly clearContent = this.updater((state) => ({ ...state, content: undefined }));\n readonly setContent = this.updater((state, content: Maybe<DbxInjectionComponentConfig<unknown>>) => ({ ...state, content }));\n}\n","import { Injectable, OnDestroy, inject } from '@angular/core';\nimport { SubscriptionObject } from '@dereekb/rxjs';\nimport { switchMap, tap, merge, Subject, throttleTime } from 'rxjs';\nimport { DbxMapboxMapStore } from './mapbox.store';\n\n/**\n * Provided in the parent component that allows children to emit events related to their lifecycles.\n */\n@Injectable({\n providedIn: null\n})\nexport class DbxMapboxChangeService implements OnDestroy {\n readonly dbxMapboxMapStore = inject(DbxMapboxMapStore);\n\n private _markerDestroyed = new Subject<void>();\n private _applyChanges = new Subject<void>();\n\n readonly markerDestroyed$ = this._markerDestroyed;\n readonly applyChanges$ = merge(this._applyChanges, this.markerDestroyed$).pipe(throttleTime(100, undefined, { leading: false, trailing: true }));\n\n private _applyChangesSub = new SubscriptionObject(\n this.dbxMapboxMapStore.mapService$\n .pipe(\n switchMap((mapService) =>\n this.applyChanges$.pipe(\n tap(() => {\n mapService.applyChanges();\n })\n )\n )\n )\n .subscribe()\n );\n\n applyChanges() {\n this._applyChanges.next();\n }\n\n emitMarkerDestroyed() {\n this._markerDestroyed.next();\n }\n\n ngOnDestroy(): void {\n this._markerDestroyed.complete();\n this._applyChanges.complete();\n this._applyChangesSub.destroy();\n }\n}\n","import { map, Observable, shareReplay } from 'rxjs';\nimport { Injectable, OnDestroy } from '@angular/core';\nimport { DbxInjectionComponentConfigWithoutInjector } from '@dereekb/dbx-core';\nimport { ComponentStore } from '@ngrx/component-store';\nimport { distinctUntilMapHasDifferentKeys, ObservableOrValueGetter } from '@dereekb/rxjs';\n\nexport type DbxMapboxInjectionKey = string;\n\nexport interface DbxMapboxInjectionConfig {\n /**\n * Unique key that identifies this config specifically.\n *\n * Keys should all be unique. The system does not expect duplicate keys. Modifications to injectionConfig should occur through the observable value.\n */\n readonly key: DbxMapboxInjectionKey;\n /**\n * Arbitrary injection type. Is used for filtering on configurations.\n */\n readonly type?: string;\n /**\n * Injection configuration. The injector is disallowed, as the parent injector must include the mapbox component.\n */\n readonly injectionConfig: ObservableOrValueGetter<DbxInjectionComponentConfigWithoutInjector>;\n}\n\nexport interface DbxMapboxMapInjectionStoreState {\n /**\n * Current map of injection keys and configurations.\n */\n readonly map: Map<DbxMapboxInjectionKey, DbxMapboxInjectionConfig>;\n\n // TODO: Add filters for showing/hiding elements of different types.\n}\n\n/**\n * Store used for storing injectable content into the map.\n */\n@Injectable()\nexport class DbxMapboxInjectionStore extends ComponentStore<DbxMapboxMapInjectionStoreState> implements OnDestroy {\n constructor() {\n super({\n map: new Map<DbxMapboxInjectionKey, DbxMapboxInjectionConfig>()\n });\n }\n\n readonly map$: Observable<Map<DbxMapboxInjectionKey, DbxMapboxInjectionConfig>> = this.state$.pipe(\n map((x) => x.map),\n distinctUntilMapHasDifferentKeys(),\n shareReplay(1)\n );\n\n readonly allInjectionConfigs$: Observable<DbxMapboxInjectionConfig[]> = this.map$.pipe(\n map((x) => Array.from(x.values())),\n shareReplay(1)\n );\n\n // MARK: State Changes\n readonly addInjectionConfig = this.updater(updateDbxMapboxMapInjectionStoreStateWithInjectionConfig);\n readonly removeInjectionConfigWithKey = this.updater(updateDbxMapboxMapInjectionStoreStateWithRemovedKey);\n}\n\nexport function updateDbxMapboxMapInjectionStoreStateWithInjectionConfig(state: DbxMapboxMapInjectionStoreState, config: DbxMapboxInjectionConfig) {\n const map = new Map(state.map).set(config.key, config);\n return { ...state, map };\n}\n\nexport function updateDbxMapboxMapInjectionStoreStateWithRemovedKey(state: DbxMapboxMapInjectionStoreState, key: DbxMapboxInjectionKey) {\n // only create a new state if the key is going to get removed\n if (state.map.has(key)) {\n const map = new Map(state.map);\n map.delete(key);\n state = { ...state, map };\n }\n\n return state;\n}\n","import { Observable, shareReplay } from 'rxjs';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { DbxInjectionArrayEntry } from '@dereekb/dbx-core';\nimport { DbxMapboxInjectionStore } from './mapbox.injection.store';\n\n/**\n * Injects the components configured in the DbxMapboxInjectionStore into the view.\n */\n@Component({\n selector: 'dbx-mapbox-injection',\n template: `\n <dbx-injection-array [entries]=\"entries$ | async\"></dbx-injection-array>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class DbxMapboxInjectionComponent {\n readonly dbxMapboxMapKeyInjectionStore = inject(DbxMapboxInjectionStore);\n\n readonly entries$: Observable<DbxInjectionArrayEntry[]> = this.dbxMapboxMapKeyInjectionStore.allInjectionConfigs$.pipe(shareReplay(1));\n}\n","import { Directive, Injectable, Injector, Optional, Provider, SkipSelf, inject } from '@angular/core';\nimport { DbxMapboxInjectionStore } from './mapbox.injection.store';\n\n/**\n * Token used by provideMapboxInjectionStoreIfDoesNotExist() to prevent injecting a parent DbxMapboxInjectionStore into the child view.\n */\n@Injectable()\nexport class DbxMapboxInjectionStoreProviderBlock {\n readonly dbxMapboxInjectionStore = inject(DbxMapboxInjectionStore, { skipSelf: true });\n}\n\n@Directive({\n selector: '[dbxMapboxInjectionStoreParentBlocker]',\n providers: [DbxMapboxInjectionStoreProviderBlock]\n})\nexport class DbxMapboxInjectionStoreInjectionBlockDirective {}\n\n/**\n * Creates a Provider that initializes a new DbxMapboxInjectionStore if a parent does not exist.\n *\n * If a DbxMapboxInjectionStoreInjectionBlock is available in the context, and references the same dbxMapboxInjectionStore that is attempting to be injected, a new DbxMapboxInjectionStore is created.\n *\n * @returns\n */\nexport function provideMapboxInjectionStoreIfParentIsUnavailable(): Provider {\n return {\n provide: DbxMapboxInjectionStore,\n useFactory: (parentInjector: Injector, dbxMapboxInjectionStoreInjectionBlock?: DbxMapboxInjectionStoreProviderBlock, dbxMapboxInjectionStore?: DbxMapboxInjectionStore) => {\n if (!dbxMapboxInjectionStore || (dbxMapboxInjectionStore && dbxMapboxInjectionStoreInjectionBlock != null && dbxMapboxInjectionStoreInjectionBlock.dbxMapboxInjectionStore === dbxMapboxInjectionStore)) {\n // create a new dbxMapboxInjectionStore to use\n const injector = Injector.create({ providers: [{ provide: DbxMapboxInjectionStore }], parent: parentInjector });\n dbxMapboxInjectionStore = injector.get(DbxMapboxInjectionStore);\n }\n\n return dbxMapboxInjectionStore;\n },\n deps: [Injector, [new Optional(), DbxMapboxInjectionStoreProviderBlock], [new Optional(), new SkipSelf(), DbxMapboxInjectionStore]]\n };\n}\n","import { DbxMapboxService } from './mapbox.service';\nimport { DbxMapboxMapStore } from './mapbox.store';\nimport { Directive, OnInit, inject } from '@angular/core';\nimport { MapComponent, MapService } from 'ngx-mapbox-gl';\nimport { latLngPoint } from '@dereekb/util';\n\n/**\n * Directive that configures a MapComponent with content from DbxMapboxService. Connects a host MapService to a parent DbxMapboxMapStore if available.\n */\n@Directive({\n selector: '[dbxMapboxMap]'\n})\nexport class DbxMapboxMapDirective implements OnInit {\n readonly mapService = inject(MapService, { host: true });\n readonly mapboxMap = inject(MapComponent, { host: true });\n readonly dbxMapboxService = inject(DbxMapboxService);\n readonly dbxMapboxMapStore = inject(DbxMapboxMapStore, { optional: true });\n\n ngOnInit(): void {\n // style must be provided first before the map will load.\n this.mapboxMap.style = this.dbxMapboxService.defaultStyle;\n this.mapboxMap.zoom = [this.dbxMapboxService.defaultZoom];\n this.mapboxMap.center = latLngPoint(this.dbxMapboxService.defaultCenter);\n\n if (this.dbxMapboxMapStore) {\n this.dbxMapboxMapStore.setMapService(this.mapService);\n }\n }\n}\n","import { Component, inject } from '@angular/core';\nimport { DbxMapboxMapStore } from './mapbox.store';\n\n/**\n * Content drawer that connects with DbxMapboxMapStore to show the content.\n */\n@Component({\n selector: 'dbx-mapbox-layout-drawer',\n templateUrl: './mapbox.layout.drawer.component.html',\n host: {\n class: 'dbx-mapbox-layout-drawer'\n }\n})\nexport class DbxMapboxLayoutDrawerComponent {\n readonly dbxMapboxMapStore = inject(DbxMapboxMapStore);\n\n readonly config$ = this.dbxMapboxMapStore.content$;\n}\n","<div>\n <dbx-injection [config]=\"config$ | async\"></dbx-injection>\n</div>\n","import { tap, switchMap, first, startWith, shareReplay, throttleTime, map, distinctUntilChanged, BehaviorSubject, combineLatest, Subject, Observable } from 'rxjs';\nimport { Component, ElementRef, EventEmitter, Input, OnDestroy, OnInit, Output, ViewChild, inject } from '@angular/core';\nimport { DbxMapboxMapStore } from './mapbox.store';\nimport { type Maybe } from '@dereekb/util';\nimport { DbxThemeColor } from '@dereekb/dbx-web';\nimport { ResizedEvent } from 'angular-resize-event';\nimport { SubscriptionObject } from '@dereekb/rxjs';\nimport { MatDrawerContainer } from '@angular/material/sidenav';\nimport { MapboxEaseTo } from './mapbox';\nimport { AbstractSubscriptionDirective } from '@dereekb/dbx-core';\n\nexport type DbxMapboxLayoutSide = 'left' | 'right';\n\nexport type DbxMapboxLayoutMode = 'side' | 'push';\n\n/**\n * Responsive component meant to split a left and right column.\n *\n * The left column is smaller than the right column, which contains the primary content.\n *\n * Requires a TwoColumnsContextStore to be provided.\n */\n@Component({\n selector: 'dbx-mapbox-layout',\n templateUrl: './mapbox.layout.component.html',\n styleUrls: ['./mapbox.layout.component.scss']\n})\nexport class DbxMapboxLayoutComponent extends AbstractSubscriptionDirective implements OnInit, OnDestroy {\n readonly dbxMapboxMapStore = inject(DbxMapboxMapStore);\n\n @Output()\n readonly openedChange = new EventEmitter<boolean>();\n\n @ViewChild(MatDrawerContainer, { read: ElementRef })\n readonly containerElement!: ElementRef;\n\n @ViewChild(MatDrawerContainer)\n readonly drawerContainer!: MatDrawerContainer;\n\n @ViewChild('content', { read: ElementRef, static: true })\n readonly content!: ElementRef;\n\n private readonly _resized = new Subject<ResizedEvent>();\n private readonly _updateMargins = new Subject<void>();\n private readonly _forceHasContent = new BehaviorSubject<boolean>(false);\n private readonly _mode = new BehaviorSubject<DbxMapboxLayoutMode>('side');\n private readonly _side = new BehaviorSubject<DbxMapboxLayoutSide>('right');\n private readonly _isOpen = new BehaviorSubject<boolean>(true);\n private readonly _color = new BehaviorSubject<Maybe<DbxThemeColor>>('background');\n private readonly _toggleSub = new SubscriptionObject();\n\n readonly resized$ = this._resized.asObservable();\n readonly side$ = this._side.pipe(distinctUntilChanged(), shareReplay(1));\n readonly mode$: Observable<DbxMapboxLayoutMode> = this._mode.pipe(distinctUntilChanged(), shareReplay(1));\n\n readonly hasContent$ = combineLatest([this._forceHasContent, this.dbxMapboxMapStore.hasContent$]).pipe(\n map(([hasContent, forceHasContent]) => hasContent || forceHasContent),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n readonly isOpen$ = this._isOpen.asObservable();\n\n readonly isOpenAndHasContent$ = combineLatest([this.hasContent$, this._isOpen]).pipe(\n map(([hasContent, open]) => hasContent && open),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n readonly position$: Observable<'start' | 'end'> = this.side$.pipe(\n map((x) => (x === 'right' ? 'end' : 'start')),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n readonly drawerClasses$ = combineLatest([this.side$, this.dbxMapboxMapStore.hasContent$, this.isOpenAndHasContent$]).pipe(\n //\n map(([side, hasContent, open]) => (hasContent ? 'has-drawer-content' : 'no-drawer-content') + ` ${side}-drawer ` + (open ? 'open-drawer' : '')),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n readonly drawerButtonColor$ = this._color.pipe(distinctUntilChanged(), shareReplay(1));\n\n readonly buttonIcon$: Observable<string> = combineLatest([this.side$, this.isOpenAndHasContent$]).pipe(\n map(([side, opened]) => {\n let icons = ['chevron_right', 'chevron_left'];\n\n if (side === 'left') {\n icons = icons.reverse();\n }\n\n return opened ? icons[0] : icons[1];\n })\n );\n\n ngOnInit(): void {\n this.sub = (\n this.side$.pipe(\n switchMap(() =>\n this._resized.pipe(\n throttleTime(100, undefined, { leading: true, trailing: true }),\n map(() => 'r'),\n startWith('s')\n )\n )\n ) as Observable<'s' | 'r'>\n ).subscribe((reason) => {\n this.dbxMapboxMapStore.mapInstance$.subscribe((x) => {\n x.resize();\n\n // side changed\n if (reason === 's') {\n setTimeout(() => {\n this._updateMargins.next();\n });\n }\n });\n });\n\n let init = false;\n\n this._toggleSub.subscription = this.mode$\n .pipe(\n switchMap((mode) => {\n let obs: Observable<unknown>;\n\n if (mode === 'push') {\n obs = combineLatest([this.isOpenAndHasContent$.pipe(distinctUntilChanged()), this._updateMargins]).pipe(\n tap(([opened]) => {\n let { right } = this.drawerContainer._contentMargins;\n\n this.drawerContainer.updateContentMargins();\n\n setTimeout(() => {\n const flip = opened ? 1 : -1;\n\n if (opened) {\n right = this.drawerContainer._contentMargins.right;\n }\n\n right = (right || 0) * flip;\n\n const element: HTMLElement = this.content.nativeElement;\n const width = element.clientWidth;\n\n const margin = {\n leftMargin: 0,\n rightMargin: right,\n fullWidth: width\n };\n\n const easeTo: Observable<MapboxEaseTo> = this.dbxMapboxMapStore.calculateNextCenterOffsetWithScreenMarginChange(margin).pipe(\n first(),\n map((center) => ({ to: { center, duration: 3200, essential: false } } as MapboxEaseTo))\n );\n\n this.dbxMapboxMapStore.setMargin(opened ? margin : undefined);\n\n if (!init) {\n this.dbxMapboxMapStore.easeTo(easeTo);\n } else {\n init = true;\n }\n });\n })\n );\n } else {\n obs = combineLatest([this.isOpenAndHasContent$.pipe(distinctUntilChanged()), this._updateMargins]).pipe(\n switchMap((_) => this.dbxMapboxMapStore.mapInstance$),\n tap((x) => {\n this.drawerContainer.updateContentMargins();\n x.triggerRepaint();\n })\n );\n }\n\n return obs;\n })\n )\n .subscribe();\n }\n\n override ngOnDestroy(): void {\n super.ngOnDestroy();\n this.openedChange.complete();\n this._resized.complete();\n this._updateMargins.complete();\n this._side.complete();\n this._isOpen.complete();\n this._color.complete();\n this._toggleSub.destroy();\n this._forceHasContent.complete();\n }\n\n toggleDrawer(open?: boolean) {\n if (open == null) {\n open = !this._isOpen.value;\n }\n\n this._isOpen.next(open);\n }\n\n @Input()\n set side(side: Maybe<DbxMapboxLayoutSide>) {\n if (side != null) {\n this._side.next(side);\n }\n }\n\n @Input()\n set mode(mode: Maybe<DbxMapboxLayoutMode>) {\n if (mode != null) {\n this._mode.next(mode);\n }\n }\n\n @Input()\n set opened(opened: Maybe<boolean>) {\n if (opened != null) {\n this._isOpen.next(opened);\n }\n }\n\n @Input()\n set hasContent(hasContent: Maybe<boolean>) {\n if (hasContent != null) {\n this._forceHasContent.next(hasContent);\n }\n }\n\n @Input()\n set drawerButtonColor(color: Maybe<DbxThemeColor>) {\n this._color.next(color);\n }\n\n onResized(event: ResizedEvent): void {\n this._resized.next(event);\n }\n\n onOpened(opened: boolean) {\n this.openedChange.next(opened);\n\n if (this._isOpen.value !== opened) {\n this.openedChange.next(opened);\n }\n }\n}\n","<mat-drawer-container #containerElement class=\"dbx-mapbox-layout-container\" [ngClass]=\"(drawerClasses$ | async) || ''\" [hasBackdrop]=\"false\">\n <mat-drawer class=\"dbx-mapbox-layout-drawer\" #drawer (openedChange)=\"onOpened($event)\" [opened]=\"isOpenAndHasContent$ | async\" [mode]=\"(mode$ | async) || 'side'\" [position]=\"(position$ | async) || 'end'\">\n <div class=\"dbx-mapbox-layout-drawer-content\" [ngClass]=\"(drawerClasses$ | async) || ''\">\n <ng-content select=\"[drawer]\"></ng-content>\n <dbx-mapbox-layout-drawer></dbx-mapbox-layout-drawer>\n </div>\n </mat-drawer>\n <mat-drawer-content #content class=\"dbx-mapbox-layout-content\" (resized)=\"onResized($event)\">\n <button mat-icon-button (click)=\"toggleDrawer()\" class=\"dbx-mapbox-layout-drawer-button\" [dbxColor]=\"drawerButtonColor$ | async\">\n <mat-icon>{{ buttonIcon$ | async }}</mat-icon>\n </button>\n <ng-content></ng-content>\n </mat-drawer-content>\n</mat-drawer-container>\n","import { SubscriptionObject } from '@dereekb/rxjs';\nimport { filter, switchMap, BehaviorSubject, of } from 'rxjs';\nimport { DbxMapboxMapStore } from './mapbox.store';\nimport { ChangeDetectionStrategy, ChangeDetectorRef, Component, Input, OnInit, OnDestroy, NgZone, inject } from '@angular/core';\nimport { Maybe, DestroyFunctionObject } from '@dereekb/util';\nimport { MatMenuTrigger } from '@angular/material/menu';\nimport { AbstractSubscriptionDirective, safeMarkForCheck } from '@dereekb/dbx-core';\nimport { disableRightClickInCdkBackdrop } from '@dereekb/dbx-web';\n\n/**\n * Directive that connects a host MatMenuTrigger to a DbxMapboxMapStore and listens for right-clicks on the map.\n *\n * The map dissapears if the mouse scrolls anywhere else on the map.\n */\n@Component({\n selector: 'dbx-mapbox-menu',\n template: '',\n host: {\n style: 'visibility: hidden; position: fixed',\n '[style.top]': 'pos.y',\n '[style.left]': 'pos.x'\n },\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class DbxMapboxMenuComponent extends AbstractSubscriptionDirective implements OnInit, OnDestroy {\n readonly dbxMapboxMapStore = inject(DbxMapboxMapStore);\n readonly matMenuTrigger = inject(MatMenuTrigger, { host: true });\n readonly ngZone = inject(NgZone);\n readonly cdRef = inject(ChangeDetectorRef);\n\n private _pos = { x: `0`, y: `0` };\n\n private readonly _active = new BehaviorSubject<boolean>(true);\n private readonly _menuCloseSub = new SubscriptionObject();\n private readonly _preventRightClick = new DestroyFunctionObject();\n\n get pos() {\n return this._pos;\n }\n\n @Input()\n set active(active: Maybe<boolean>) {\n this._active.next(active ?? true);\n }\n\n ngOnInit(): void {\n this.sub = this._active\n .pipe(\n switchMap((active) => {\n if (active) {\n return this.dbxMapboxMapStore.rightClickEvent$;\n } else {\n return of();\n }\n }),\n filter(Boolean)\n )\n .subscribe((event) => {\n const menu = this.matMenuTrigger.menu;\n const buttonEvent = event.originalEvent;\n\n if (menu && buttonEvent) {\n buttonEvent.preventDefault();\n\n // update position of this component for menu to open at\n this._pos = {\n x: `${buttonEvent.x}px`,\n y: `${buttonEvent.y}px`\n };\n\n safeMarkForCheck(this.cdRef);\n\n // open menu\n this.ngZone.run(() => this.matMenuTrigger.openMenu());\n\n // prevent right clicks in the cdkOverlay while the menu is open\n this._preventRightClick.destroy = disableRightClickInCdkBackdrop(undefined, () => {\n this.ngZone.run(() => this.matMenuTrigger.closeMenu());\n });\n }\n });\n\n this._menuCloseSub.subscription = this.matMenuTrigger.menuClosed.subscribe(() => {\n // destroy prevention when the menu is closed.\n this._preventRightClick.destroy();\n });\n }\n\n override ngOnDestroy(): void {\n super.ngOnDestroy();\n this._active.complete();\n this._menuCloseSub.destroy();\n this._preventRightClick.destroy();\n\n if (this.matMenuTrigger) {\n this.matMenuTrigger.closeMenu();\n }\n }\n}\n","import { Directive, Injectable, Injector, Optional, Provider, SkipSelf, inject } from '@angular/core';\nimport { DbxMapboxMapStore } from './mapbox.store';\n\n/**\n * Token used by provideMapboxStoreIfDoesNotExist() to prevent injecting a parent DbxMapboxMapStore into the child view.\n */\n@Injectable()\nexport class DbxMapboxMapStoreProviderBlock {\n readonly dbxMapboxMapStore = inject(DbxMapboxMapStore, { skipSelf: true });\n}\n\n@Directive({\n selector: '[dbxMapboxStoreParentBlocker]',\n providers: [DbxMapboxMapStoreProviderBlock]\n})\nexport class DbxMapboxMapStoreInjectionBlockDirective {}\n\n/**\n * Creates a Provider that initializes a new DbxMapboxMapStore if a parent does not exist.\n *\n * If a DbxMapboxMapStoreInjectionBlock is available in the context, and references the same dbxMapboxMapStore that is attempting to be injected, a new DbxMapboxMapStore is created.\n *\n * @returns\n */\nexport function provideMapboxStoreIfParentIsUnavailable(): Provider {\n return {\n provide: DbxMapboxMapStore,\n useFactory: (parentInjector: Injector, dbxMapboxMapStoreInjectionBlock?: DbxMapboxMapStoreProviderBlock, dbxMapboxMapStore?: DbxMapboxMapStore) => {\n if (!dbxMapboxMapStore || (dbxMapboxMapStore && dbxMapboxMapStoreInjectionBlock != null && dbxMapboxMapStoreInjectionBlock.dbxMapboxMapStore === dbxMapboxMapStore)) {\n // create a new dbxMapboxMapStore to use\n const injector = Injector.create({ providers: [{ provide: DbxMapboxMapStore }], parent: parentInjector });\n dbxMapboxMapStore = injector.get(DbxMapboxMapStore);\n }\n\n return dbxMapboxMapStore;\n },\n deps: [Injector, [new Optional(), DbxMapboxMapStoreProviderBlock], [new Optional(), new SkipSelf(), DbxMapboxMapStore]]\n };\n}\n","import { ChangeDetectionStrategy, Component, Input, OnDestroy, inject } from '@angular/core';\nimport { getValueFromGetter, latLngPointFunction, type Maybe } from '@dereekb/util';\nimport { DbxMapboxChangeService } from './mapbox.change.service';\nimport { DbxMapboxMarker } from './mapbox.marker';\n\n@Component({\n selector: 'dbx-mapbox-marker',\n template: `\n <mgl-marker *ngIf=\"marker\" [lngLat]=\"latLng\">\n <dbx-anchor [anchor]=\"anchor\">\n <div class=\"dbx-mapbox-marker\" [ngClass]=\"presentationClasses\">\n <div class=\"dbx-mapbox-marker-icon-content\" [ngStyle]=\"style\">\n <mat-icon *ngIf=\"icon\">{{ icon }}</mat-icon>\n </div>\n <div class=\"dbx-mapbox-marker-label dbx-outlined-text\" *ngIf=\"label\">{{ label }}</div>\n </div>\n </dbx-anchor>\n </mgl-marker>\n `,\n styleUrls: ['./mapbox.marker.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class DbxMapboxMarkerComponent implements OnDestroy {\n private readonly _dbxMapboxChangeService = inject(DbxMapboxChangeService, { optional: true });\n\n private static _latLngPoint = latLngPointFunction({ wrap: true });\n\n private _marker: Maybe<DbxMapboxMarker>;\n\n @Input()\n get marker() {\n return this._marker;\n }\n\n set marker(marker: Maybe<DbxMapboxMarker>) {\n this._marker = marker;\n }\n\n get latLng() {\n const input = this._marker?.latLng;\n return input ? DbxMapboxMarkerComponent._latLngPoint(input) : undefined;\n }\n\n get anchor() {\n return this._marker?.anchor;\n }\n\n get label() {\n return this._marker?.label;\n }\n\n get icon() {\n return this._marker?.icon;\n }\n\n get style() {\n let width = 0;\n let height = 0;\n\n const size = this._marker?.size || 'medium';\n\n switch (this.presentation) {\n case 'normal':\n if (typeof size === 'number') {\n width = size;\n } else {\n switch (size) {\n case 'small':\n width = 18;\n break;\n case 'medium':\n width = 24;\n break;\n case 'large':\n width = 32;\n break;\n case 'tall':\n width = 24;\n height = 32;\n break;\n }\n break;\n }\n break;\n }\n\n if (!height) {\n height = width;\n }\n\n const imageInput = this._marker?.image;\n const image = imageInput ? (typeof imageInput === 'string' ? imageInput : getValueFromGetter(imageInput, width)) : undefined;\n\n const style: any = {\n ...this._marker?.style,\n 'background-image': image\n };\n\n if (width && height) {\n style.width = width + 'px';\n style.height = height + 'px';\n style['font-size'] = width + 'px';\n }\n\n return style;\n }\n\n get presentation() {\n return this._marker?.presentation ?? 'normal';\n }\n\n get presentationClasses() {\n const presentation = this.presentation;\n const markerClasses = this._marker?.markerClasses;\n\n let cssClasses = '';\n\n switch (presentation) {\n case 'chip':\n case 'chip-small':\n cssClasses = 'dbx-mapbox-marker-chip dbx-chip mat-standard-chip dbx-bg';\n\n if (presentation === 'chip-small') {\n cssClasses += ' dbx-chip-small';\n }\n\n break;\n }\n\n if (!this.icon) {\n cssClasses += ' dbx-mapbox-marker-no-icon';\n }\n\n if (markerClasses) {\n cssClasses += ` ${markerClasses}`;\n }\n\n return cssClasses;\n }\n\n ngOnDestroy(): void {\n this._dbxMapboxChangeService?.emitMarkerDestroyed();\n }\n}\n","import { BehaviorSubject, combineLatest, distinctUntilChanged, map, shareReplay } from 'rxjs';\nimport { type Maybe } from '@dereekb/util';\nimport { ChangeDetectionStrategy, Component, Input, OnDestroy } from '@angular/core';\nimport { DbxMapboxMarker, DbxMapboxMarkerFactory } from './mapbox.marker';\n\n/**\n * Component used to render a set of DbxMapboxMarker values from the input data and marker factory.\n */\n@Component({\n selector: 'dbx-mapbox-markers',\n template: `\n <dbx-mapbox-marker *ngFor=\"let marker of markers$ | async; trackBy: trackMarkerById\" [marker]=\"marker\"></dbx-mapbox-marker>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class DbxMapboxMarkersComponent<T> implements OnDestroy {\n private _data = new BehaviorSubject<Maybe<T[]>>(undefined);\n private _markerFactory = new BehaviorSubject<Maybe<DbxMapboxMarkerFactory<T>>>(undefined);\n\n readonly markers$ = combineLatest([this._data.pipe(distinctUntilChanged()), this._markerFactory.pipe(distinctUntilChanged())]).pipe(\n map(([data, markerFactory]) => {\n if (data?.length && markerFactory) {\n return data.map(markerFactory);\n } else {\n return [];\n }\n }),\n shareReplay(1)\n );\n\n trackMarkerById(index: number, marker: DbxMapboxMarker) {\n return marker.id;\n }\n\n @Input()\n get data() {\n return this._data.value;\n }\n\n set data(data: Maybe<T[]>) {\n this._data.next(data || []);\n }\n\n @Input()\n get markerFactory() {\n return this._markerFactory.value;\n }\n\n set markerFactory(markerFactory: Maybe<DbxMapboxMarkerFactory<T>>) {\n this._markerFactory.next(markerFactory);\n }\n\n ngOnDestroy(): void {\n this._data.complete();\n this._markerFactory.complete();\n }\n}\n","import { shareReplay, map, distinctUntilChanged } from 'rxjs';\nimport { Directive, OnInit, inject } from '@angular/core';\nimport { isSameVector } from '@dereekb/util';\nimport { DbxMapboxLayoutComponent } from './mapbox.layout.component';\nimport { AbstractSubscriptionDirective } from '@dereekb/dbx-core';\n\n/**\n * Directive that synchronizes a map's virtual size with the size of the element.\n */\n@Directive({\n selector: '[dbxMapboxLayoutVirtualResizeSync]'\n})\nexport class DbxMapboxLayoutVirtualResizeSyncComponent extends AbstractSubscriptionDirective implements OnInit {\n readonly dbxMapboxLayoutComponent = inject(DbxMapboxLayoutComponent, { host: true });\n\n readonly resizedVector$ = this.dbxMapboxLayoutComponent.resized$.pipe(\n map(() => {\n const element = this.dbxMapboxLayoutComponent.containerElement.nativeElement as HTMLElement;\n const { clientWidth, clientHeight } = element;\n return {\n x: clientWidth,\n y: clientHeight\n };\n }),\n distinctUntilChanged(isSameVector),\n shareReplay(1)\n );\n\n ngOnInit(): void {\n this.sub = this.dbxMapboxLayoutComponent.dbxMapboxMapStore.setMinimumVirtualViewportSize(this.resizedVector$) ?? undefined;\n }\n}\n","import { ModuleWithProviders, NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { DbxMapboxMapDirective } from './mapbox.store.map.directive';\nimport { DbxMapboxConfig } from './mapbox.service';\nimport { DbxMapboxLayoutComponent } from './mapbox.layout.component';\nimport { MatSidenavModule } from '@angular/material/sidenav';\nimport { DbxMapboxLayoutDrawerComponent } from './mapbox.layout.drawer.component';\nimport { DbxInjectionComponentModule } from '@dereekb/dbx-core';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\nimport { AngularResizeEventModule } from 'angular-resize-event';\nimport { DbxMapboxMenuComponent } from './mapbox.menu.component';\nimport { DbxMapboxMapStoreInjectionBlockDirective } from './mapbox.store.provide';\nimport { DbxMapboxMarkerComponent } from './mapbox.marker.component';\nimport { NgxMapboxGLModule } from 'ngx-mapbox-gl';\nimport { DbxRouterAnchorModule, DbxStyleLayoutModule } from '@dereekb/dbx-web';\nimport { DbxMapboxMarkersComponent } from './mapbox.markers.component';\nimport { DbxMapboxInjectionComponent } from './mapbox.injection.component';\nimport { DbxMapboxLayoutVirtualResizeSyncComponent } from './mapbox.layout.resize.sync.directive';\n\nconst declarations = [\n //\n DbxMapboxLayoutVirtualResizeSyncComponent,\n DbxMapboxMapDirective,\n DbxMapboxLayoutComponent,\n DbxMapboxLayoutDrawerComponent,\n DbxMapboxInjectionComponent,\n DbxMapboxMenuComponent,\n DbxMapboxMarkerComponent,\n DbxMapboxMarkersComponent,\n DbxMapboxMapStoreInjectionBlockDirective\n];\n\n@NgModule({\n imports: [\n //\n CommonModule,\n MatSidenavModule,\n DbxStyleLayoutModule,\n DbxInjectionComponentModule,\n MatButtonModule,\n MatIconModule,\n AngularResizeEventModule,\n DbxRouterAnchorModule,\n NgxMapboxGLModule\n ],\n declarations,\n exports: declarations\n})\nexport class DbxMapboxModule {\n static forRoot(config: DbxMapboxConfig): ModuleWithProviders<DbxMapboxModule> {\n return {\n ngModule: DbxMapboxModule,\n providers: [\n {\n provide: DbxMapboxConfig,\n useValue: config\n }\n ]\n };\n }\n}\n","import { ClickableAnchor } from '@dereekb/dbx-core';\nimport { Pixels, FactoryWithRequiredInput, LatLngInputRef, UniqueModel } from '@dereekb/util';\n\n/**\n * DbxMapboxMarkerSize. Numbers are converted to pixels.\n */\nexport type DbxMapboxMarkerSize = 'small' | 'medium' | 'large' | 'tall' | Pixels;\n\n/**\n * Presentation style.\n *\n * - normal: Text under dot with optional icon within dot\n * - chip: \"dbx-chip\"-like presentation\n */\nexport type DbxMapboxMarkerPresentation = 'normal' | 'chip' | 'chip-small';\n\nexport interface DbxMapboxMarkerDisplayConfig {\n /**\n * Presentation style. Defaults to \"normal\"\n */\n presentation?: DbxMapboxMarkerPresentation;\n /**\n * Additional classes to add to the marker.\n */\n markerClasses?: string;\n /**\n * icon\n */\n icon?: string;\n /**\n * label\n */\n label?: string;\n /**\n * Image URL\n */\n image?: string | FactoryWithRequiredInput<string, Pixels>;\n /**\n * Size of the marker.\n */\n size?: DbxMapboxMarkerSize;\n /**\n * Anchor\n */\n anchor?: ClickableAnchor;\n /**\n * Additional icon content styling. Style is not applied to the entire marker. Use markerClasses instead.\n */\n style?: object;\n}\n\nexport type DbxMapboxMarker = UniqueModel & LatLngInputRef & DbxMapboxMarkerDisplayConfig;\n\n/**\n * MapFunction that converts the input data to a DbxMapboxMarker.\n */\nexport type DbxMapboxMarkerFactory<T> = (value: T, index: number) => DbxMapboxMarker;\n\n/**\n * Creates the styling for rendering a dot.\n *\n * @param background\n * @param color\n * @returns\n */\nexport function dbxMapboxColoredDotStyle(background: string, color?: string) {\n return {\n background,\n padding: '2px',\n color: color ?? background ? 'white' : undefined,\n 'border-radius': '50%'\n };\n}\n","import { LatLngPointInput, LatLngBoundInput, ZoomLevel, ZoomLevelRange, ExtendLatLngBoundInput } from '@dereekb/util';\nimport * as MapboxGl from 'mapbox-gl';\n\n/**\n * List of styles that are defined here:\n *\n * https://docs.mapbox.com/api/maps/styles/\n */\nexport type KnownMapboxStyle = 'mapbox://styles/mapbox/standard' | 'mapbox://styles/mapbox/streets-v12' | 'mapbox://styles/mapbox/outdoors-v12' | 'mapbox://styles/mapbox/light-v11' | 'mapbox://styles/mapbox/dark-v11' | 'mapbox://styles/mapbox/satellite-v9' | 'mapbox://styles/mapbox/satellite-streets-v12' | 'mapbox://styles/mapbox/navigation-day-v1' | 'mapbox://styles/mapbox/navigation-night-v1';\n\nexport const KNOWN_MAPBOX_STYLES: KnownMapboxStyle[] = [\n // standard\n 'mapbox://styles/mapbox/standard',\n // classic\n 'mapbox://styles/mapbox/streets-v12',\n 'mapbox://styles/mapbox/outdoors-v12',\n 'mapbox://styles/mapbox/light-v11',\n 'mapbox://styles/mapbox/dark-v11',\n 'mapbox://styles/mapbox/satellite-v9',\n 'mapbox://styles/mapbox/satellite-streets-v12',\n 'mapbox://styles/mapbox/navigation-day-v1',\n 'mapbox://styles/mapbox/navigation-night-v1'\n];\n\nexport type MapboxZoomLevel = ZoomLevel;\nexport type MapboxZoomLevelRange = ZoomLevelRange;\n\nexport const MAPBOX_MIN_ZOOM_LEVEL: MapboxZoomLevel = 0;\nexport const MAPBOX_MAX_ZOOM_LEVEL: MapboxZoomLevel = 22;\n\nexport function mapboxZoomLevel(input: number): MapboxZoomLevel {\n return Math.min(Math.max(input, MAPBOX_MIN_ZOOM_LEVEL), MAPBOX_MAX_ZOOM_LEVEL);\n}\n\nexport type MapboxPitch = number;\nexport type MapboxBearing = number;\n\n/**\n * Size of the tiles. Vector-based tiles used by the web are generally 512x512, and legacy ones are 256x256.\n *\n * https://blog.mapbox.com/512-map-tiles-cb5bfd6e72ba\n */\nexport type MapboxTileSize = 512 | 256;\n\nexport type DbxMapboxClickEvent = MapboxGl.MapMouseEvent & MapboxGl.EventData;\n\nexport interface MapboxStyleConfig {\n style: MapboxGl.Style | string;\n options?: {\n diff?: boolean | undefined;\n localIdeographFontFamily?: string | undefined;\n };\n}\n\nexport interface MapboxFitPositions {\n positions: ExtendLatLngBoundInput;\n options?: mapboxgl.FitBoundsOptions;\n eventData?: mapboxgl.EventData;\n}\n\nexport interface MapboxFitBounds {\n bounds: LatLngBoundInput;\n options?: mapboxgl.FitBoundsOptions;\n eventData?: mapboxgl.EventData;\n}\n\nexport interface MapboxJumpToPositionOptions extends Omit<MapboxGl.CameraOptions, 'center'> {\n center: LatLngPointInput;\n}\n\nexport interface MapboxJumpTo {\n center?: LatLngPointInput;\n to?: MapboxJumpToPositionOptions;\n eventData?: mapboxgl.EventData;\n}\n\nexport interface MapboxEaseToPositionOptions extends Omit<MapboxGl.EaseToOptions, 'center'>, MapboxJumpToPositionOptions {}\n\nexport interface MapboxEaseTo {\n center?: LatLngPointInput;\n to?: MapboxEaseToPositionOptions;\n eventData?: mapboxgl.EventData;\n}\n\nexport interface MapboxFlyToPositionOptions extends Omit<MapboxGl.FlyToOptions, 'center'>, MapboxJumpToPositionOptions {}\n\nexport interface MapboxFlyTo {\n center?: LatLngPointInput;\n to?: MapboxFlyToPositionOptions;\n eventData?: mapboxgl.EventData;\n}\n\nexport interface MapboxRotateTo {\n bearing: MapboxBearing;\n options?: mapboxgl.AnimationOptions;\n eventData?: mapboxgl.EventData;\n}\n\nexport interface MapboxResetNorth {\n options?: mapboxgl.AnimationOptions;\n eventData?: mapboxgl.EventData;\n}\n\nexport interface MapboxResetNorthPitch {\n options?: mapboxgl.AnimationOptions;\n eventData?: mapboxgl.EventData;\n}\n\nexport interface MapboxSnapToNorth {\n options?: mapboxgl.AnimationOptions;\n eventData?: mapboxgl.EventData;\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2","i1","i7.DbxMapboxLayoutDrawerComponent","i4","i2.DbxMapboxMarkerComponent"],"mappings":"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"}
|
package/mapbox/lib/options.d.ts
DELETED
package/mapbox/package.json
DELETED
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "@dereekb/dbx-web/mapbox",
|
|
3
|
-
"version": "11.1.8",
|
|
4
|
-
"module": "fesm2022/dereekb-dbx-web-mapbox.mjs",
|
|
5
|
-
"typings": "index.d.ts",
|
|
6
|
-
"exports": {
|
|
7
|
-
"./package.json": {
|
|
8
|
-
"default": "./package.json"
|
|
9
|
-
},
|
|
10
|
-
".": {
|
|
11
|
-
"types": "./index.d.ts",
|
|
12
|
-
"esm2022": "./esm2022/dereekb-dbx-web-mapbox.mjs",
|
|
13
|
-
"esm": "./esm2022/dereekb-dbx-web-mapbox.mjs",
|
|
14
|
-
"default": "./fesm2022/dereekb-dbx-web-mapbox.mjs"
|
|
15
|
-
}
|
|
16
|
-
},
|
|
17
|
-
"sideEffects": false,
|
|
18
|
-
"dependencies": {
|
|
19
|
-
"tslib": "^2.3.0"
|
|
20
|
-
}
|
|
21
|
-
}
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Generated bundle index. Do not edit.
|
|
3
|
-
*/
|
|
4
|
-
export * from './index';
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVyZWVrYi1kYngtd2ViLXRhYmxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LXdlYi90YWJsZS9zcmMvZGVyZWVrYi1kYngtd2ViLXRhYmxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19
|
package/table/esm2022/index.mjs
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export * from './lib';
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtd2ViL3RhYmxlL3NyYy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLE9BQU8sQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbGliJztcbiJdfQ==
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
import * as i1 from "@angular/common";
|
|
4
|
-
/**
|
|
5
|
-
* A table header component used for rendering date values on the header.
|
|
6
|
-
*/
|
|
7
|
-
export class DbxTableDateHeaderComponent {
|
|
8
|
-
left = 'E';
|
|
9
|
-
right = 'MMM d';
|
|
10
|
-
_date;
|
|
11
|
-
constructor() { }
|
|
12
|
-
get date() {
|
|
13
|
-
return this._date;
|
|
14
|
-
}
|
|
15
|
-
set date(date) {
|
|
16
|
-
this._date = date;
|
|
17
|
-
}
|
|
18
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxTableDateHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
19
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DbxTableDateHeaderComponent, selector: "ng-component", ngImport: i0, template: `
|
|
20
|
-
<div *ngIf="date" class="dbx-table-date-column-header">
|
|
21
|
-
<span class="dbx-table-date-column-header-left">{{ date | date: left }}</span>
|
|
22
|
-
<span>{{ date | date: right }}</span>
|
|
23
|
-
</div>
|
|
24
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1.DatePipe, name: "date" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
25
|
-
}
|
|
26
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxTableDateHeaderComponent, decorators: [{
|
|
27
|
-
type: Component,
|
|
28
|
-
args: [{
|
|
29
|
-
template: `
|
|
30
|
-
<div *ngIf="date" class="dbx-table-date-column-header">
|
|
31
|
-
<span class="dbx-table-date-column-header-left">{{ date | date: left }}</span>
|
|
32
|
-
<span>{{ date | date: right }}</span>
|
|
33
|
-
</div>
|
|
34
|
-
`,
|
|
35
|
-
changeDetection: ChangeDetectionStrategy.OnPush
|
|
36
|
-
}]
|
|
37
|
-
}], ctorParameters: function () { return []; } });
|
|
38
|
-
export function dbxTableDateHeaderInjectionFactory() {
|
|
39
|
-
return (column) => {
|
|
40
|
-
const config = {
|
|
41
|
-
componentClass: DbxTableDateHeaderComponent,
|
|
42
|
-
init: (x) => {
|
|
43
|
-
x.date = column.meta;
|
|
44
|
-
}
|
|
45
|
-
};
|
|
46
|
-
return config;
|
|
47
|
-
};
|
|
48
|
-
}
|
|
49
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS50YWJsZS5jb2x1bW4uaGVhZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC13ZWIvdGFibGUvc3JjL2xpYi9kYXRlL2RhdGUudGFibGUuY29sdW1uLmhlYWRlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBS25FOztHQUVHO0FBVUgsTUFBTSxPQUFPLDJCQUEyQjtJQUN0QyxJQUFJLEdBQUcsR0FBRyxDQUFDO0lBQ1gsS0FBSyxHQUFHLE9BQU8sQ0FBQztJQUVSLEtBQUssQ0FBYztJQUUzQixnQkFBZSxDQUFDO0lBRWhCLElBQUksSUFBSTtRQUNOLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztJQUNwQixDQUFDO0lBRUQsSUFBSSxJQUFJLENBQUMsSUFBaUI7UUFDeEIsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7SUFDcEIsQ0FBQzt3R0FkVSwyQkFBMkI7NEZBQTNCLDJCQUEyQixvREFSNUI7Ozs7O0dBS1Q7OzRGQUdVLDJCQUEyQjtrQkFUdkMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUU7Ozs7O0dBS1Q7b0JBQ0QsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07aUJBQ2hEOztBQWtCRCxNQUFNLFVBQVUsa0NBQWtDO0lBQ2hELE9BQU8sQ0FBQyxNQUE0QixFQUFFLEVBQUU7UUFDdEMsTUFBTSxNQUFNLEdBQTZEO1lBQ3ZFLGNBQWMsRUFBRSwyQkFBMkI7WUFDM0MsSUFBSSxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUU7Z0JBQ1YsQ0FBQyxDQUFDLElBQUksR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDO1lBQ3ZCLENBQUM7U0FDRixDQUFDO1FBRUYsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQyxDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERieEluamVjdGlvbkNvbXBvbmVudENvbmZpZywgRGJ4SW5qZWN0aW9uQ29tcG9uZW50Q29uZmlnRmFjdG9yeSB9IGZyb20gJ0BkZXJlZWtiL2RieC1jb3JlJztcbmltcG9ydCB7IHR5cGUgTWF5YmUgfSBmcm9tICdAZGVyZWVrYi91dGlsJztcbmltcG9ydCB7IERieFRhYmxlQ29sdW1uIH0gZnJvbSAnLi4vdGFibGUnO1xuXG4vKipcbiAqIEEgdGFibGUgaGVhZGVyIGNvbXBvbmVudCB1c2VkIGZvciByZW5kZXJpbmcgZGF0ZSB2YWx1ZXMgb24gdGhlIGhlYWRlci5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHRlbXBsYXRlOiBgXG4gICAgPGRpdiAqbmdJZj1cImRhdGVcIiBjbGFzcz1cImRieC10YWJsZS1kYXRlLWNvbHVtbi1oZWFkZXJcIj5cbiAgICAgIDxzcGFuIGNsYXNzPVwiZGJ4LXRhYmxlLWRhdGUtY29sdW1uLWhlYWRlci1sZWZ0XCI+e3sgZGF0ZSB8IGRhdGU6IGxlZnQgfX08L3NwYW4+XG4gICAgICA8c3Bhbj57eyBkYXRlIHwgZGF0ZTogcmlnaHQgfX08L3NwYW4+XG4gICAgPC9kaXY+XG4gIGAsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIERieFRhYmxlRGF0ZUhlYWRlckNvbXBvbmVudCB7XG4gIGxlZnQgPSAnRSc7XG4gIHJpZ2h0ID0gJ01NTSBkJztcblxuICBwcml2YXRlIF9kYXRlOiBNYXliZTxEYXRlPjtcblxuICBjb25zdHJ1Y3RvcigpIHt9XG5cbiAgZ2V0IGRhdGUoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2RhdGU7XG4gIH1cblxuICBzZXQgZGF0ZShkYXRlOiBNYXliZTxEYXRlPikge1xuICAgIHRoaXMuX2RhdGUgPSBkYXRlO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBkYnhUYWJsZURhdGVIZWFkZXJJbmplY3Rpb25GYWN0b3J5KCk6IERieEluamVjdGlvbkNvbXBvbmVudENvbmZpZ0ZhY3Rvcnk8RGJ4VGFibGVDb2x1bW48RGF0ZT4sIERieFRhYmxlRGF0ZUhlYWRlckNvbXBvbmVudD4ge1xuICByZXR1cm4gKGNvbHVtbjogRGJ4VGFibGVDb2x1bW48RGF0ZT4pID0+IHtcbiAgICBjb25zdCBjb25maWc6IERieEluamVjdGlvbkNvbXBvbmVudENvbmZpZzxEYnhUYWJsZURhdGVIZWFkZXJDb21wb25lbnQ+ID0ge1xuICAgICAgY29tcG9uZW50Q2xhc3M6IERieFRhYmxlRGF0ZUhlYWRlckNvbXBvbmVudCxcbiAgICAgIGluaXQ6ICh4KSA9PiB7XG4gICAgICAgIHguZGF0ZSA9IGNvbHVtbi5tZXRhO1xuICAgICAgfVxuICAgIH07XG5cbiAgICByZXR1cm4gY29uZmlnO1xuICB9O1xufVxuIl19
|