@dereekb/dbx-web 12.6.21 → 13.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/LICENSE +1 -1
- package/fesm2022/dereekb-dbx-web-calendar.mjs +15 -32
- package/fesm2022/dereekb-dbx-web-calendar.mjs.map +1 -1
- package/fesm2022/dereekb-dbx-web-mapbox.mjs +113 -130
- package/fesm2022/dereekb-dbx-web-mapbox.mjs.map +1 -1
- package/fesm2022/dereekb-dbx-web-table.mjs +125 -133
- package/fesm2022/dereekb-dbx-web-table.mjs.map +1 -1
- package/fesm2022/dereekb-dbx-web.mjs +1758 -2081
- package/fesm2022/dereekb-dbx-web.mjs.map +1 -1
- package/lib/button/_button.scss +117 -21
- package/lib/button/progress/spinner.button.component.scss +7 -7
- package/lib/layout/style/_style.scss +30 -81
- package/lib/loading/_loading.scss +11 -9
- package/lib/router/layout/anchorlist/_anchorlist.scss +5 -0
- package/lib/router/layout/sidenav/_sidenav.scss +0 -3
- package/lib/style/_root-variables.scss +2 -2
- package/lib/style/_theming.scss +196 -1
- package/lib/style/_variables.scss +13 -7
- package/package.json +26 -34
- package/types/dereekb-dbx-web-calendar.d.ts +197 -0
- package/types/dereekb-dbx-web-mapbox.d.ts +752 -0
- package/types/dereekb-dbx-web-table.d.ts +600 -0
- package/types/dereekb-dbx-web.d.ts +5655 -0
- package/calendar/index.d.ts +0 -1
- package/calendar/lib/calendar.base.component.d.ts +0 -32
- package/calendar/lib/calendar.component.d.ts +0 -28
- package/calendar/lib/calendar.d.ts +0 -6
- package/calendar/lib/calendar.module.d.ts +0 -11
- package/calendar/lib/calendar.provider.d.ts +0 -5
- package/calendar/lib/calendar.store.d.ts +0 -123
- package/calendar/lib/index.d.ts +0 -6
- package/esm2022/calendar/dereekb-dbx-web-calendar.mjs +0 -5
- package/esm2022/calendar/index.mjs +0 -2
- package/esm2022/calendar/lib/calendar.base.component.mjs +0 -68
- package/esm2022/calendar/lib/calendar.component.mjs +0 -56
- package/esm2022/calendar/lib/calendar.mjs +0 -30
- package/esm2022/calendar/lib/calendar.module.mjs +0 -21
- package/esm2022/calendar/lib/calendar.provider.mjs +0 -11
- package/esm2022/calendar/lib/calendar.store.mjs +0 -174
- package/esm2022/calendar/lib/index.mjs +0 -7
- package/esm2022/dereekb-dbx-web.mjs +0 -5
- package/esm2022/index.mjs +0 -2
- package/esm2022/lib/action/action.confirm.directive.mjs +0 -46
- package/esm2022/lib/action/action.module.mjs +0 -22
- package/esm2022/lib/action/index.mjs +0 -6
- package/esm2022/lib/action/key.trigger.directive.mjs +0 -31
- package/esm2022/lib/action/snackbar/action.snackbar.component.mjs +0 -81
- package/esm2022/lib/action/snackbar/action.snackbar.default.mjs +0 -107
- package/esm2022/lib/action/snackbar/action.snackbar.directive.mjs +0 -47
- package/esm2022/lib/action/snackbar/action.snackbar.generator.mjs +0 -44
- package/esm2022/lib/action/snackbar/action.snackbar.mjs +0 -2
- package/esm2022/lib/action/snackbar/action.snackbar.module.mjs +0 -18
- package/esm2022/lib/action/snackbar/action.snackbar.service.mjs +0 -74
- package/esm2022/lib/action/snackbar/index.mjs +0 -8
- package/esm2022/lib/action/transition/action.transition.module.mjs +0 -29
- package/esm2022/lib/action/transition/index.mjs +0 -4
- package/esm2022/lib/action/transition/transition.safety.dialog.component.mjs +0 -53
- package/esm2022/lib/action/transition/transition.safety.directive.mjs +0 -132
- package/esm2022/lib/button/button.component.mjs +0 -141
- package/esm2022/lib/button/button.mjs +0 -2
- package/esm2022/lib/button/button.module.mjs +0 -54
- package/esm2022/lib/button/button.spacer.directive.mjs +0 -20
- package/esm2022/lib/button/icon/icon.button.component.mjs +0 -72
- package/esm2022/lib/button/icon/icon.button.module.mjs +0 -19
- package/esm2022/lib/button/icon/index.mjs +0 -3
- package/esm2022/lib/button/index.mjs +0 -7
- package/esm2022/lib/button/progress/abstract.progress.button.directive.mjs +0 -149
- package/esm2022/lib/button/progress/bar.button.component.mjs +0 -24
- package/esm2022/lib/button/progress/button.progress.config.mjs +0 -3
- package/esm2022/lib/button/progress/button.progress.module.mjs +0 -21
- package/esm2022/lib/button/progress/button.progress.providers.mjs +0 -18
- package/esm2022/lib/button/progress/index.mjs +0 -6
- package/esm2022/lib/button/progress/spinner.button.component.mjs +0 -85
- package/esm2022/lib/dbx-web.module.mjs +0 -17
- package/esm2022/lib/error/default.error.widget.component.mjs +0 -41
- package/esm2022/lib/error/error.action.directive.mjs +0 -26
- package/esm2022/lib/error/error.api.mjs +0 -51
- package/esm2022/lib/error/error.component.mjs +0 -104
- package/esm2022/lib/error/error.details.component.mjs +0 -26
- package/esm2022/lib/error/error.loading.directive.mjs +0 -36
- package/esm2022/lib/error/error.module.mjs +0 -81
- package/esm2022/lib/error/error.popover.component.mjs +0 -45
- package/esm2022/lib/error/error.snackbar.action.directive.mjs +0 -33
- package/esm2022/lib/error/error.snackbar.component.mjs +0 -83
- package/esm2022/lib/error/error.snackbar.service.mjs +0 -39
- package/esm2022/lib/error/error.view.component.mjs +0 -56
- package/esm2022/lib/error/error.widget.component.mjs +0 -59
- package/esm2022/lib/error/error.widget.directive.mjs +0 -18
- package/esm2022/lib/error/error.widget.service.mjs +0 -75
- package/esm2022/lib/error/index.mjs +0 -17
- package/esm2022/lib/error/state.mjs +0 -21
- package/esm2022/lib/extension/download/blob/download.blob.button.component.mjs +0 -86
- package/esm2022/lib/extension/download/blob/index.mjs +0 -2
- package/esm2022/lib/extension/download/index.mjs +0 -3
- package/esm2022/lib/extension/download/text/download.text.component.mjs +0 -94
- package/esm2022/lib/extension/download/text/download.text.mjs +0 -2
- package/esm2022/lib/extension/download/text/download.text.module.mjs +0 -20
- package/esm2022/lib/extension/download/text/index.mjs +0 -4
- package/esm2022/lib/extension/help/absract.help.widget.directive.mjs +0 -20
- package/esm2022/lib/extension/help/help.context.directive.mjs +0 -29
- package/esm2022/lib/extension/help/help.context.mjs +0 -24
- package/esm2022/lib/extension/help/help.context.service.mjs +0 -34
- package/esm2022/lib/extension/help/help.mjs +0 -2
- package/esm2022/lib/extension/help/help.providers.mjs +0 -20
- package/esm2022/lib/extension/help/help.view.list.component.mjs +0 -107
- package/esm2022/lib/extension/help/help.view.list.entry.component.mjs +0 -59
- package/esm2022/lib/extension/help/help.view.popover.button.component.mjs +0 -50
- package/esm2022/lib/extension/help/help.view.popover.component.mjs +0 -53
- package/esm2022/lib/extension/help/help.widget.mjs +0 -6
- package/esm2022/lib/extension/help/help.widget.service.mjs +0 -106
- package/esm2022/lib/extension/help/index.mjs +0 -13
- package/esm2022/lib/extension/index.mjs +0 -10
- package/esm2022/lib/extension/model/index.mjs +0 -9
- package/esm2022/lib/extension/model/model.providers.mjs +0 -42
- package/esm2022/lib/extension/model/model.state.service.mjs +0 -19
- package/esm2022/lib/extension/model/model.tracker.mjs +0 -7
- package/esm2022/lib/extension/model/model.tracker.service.mjs +0 -41
- package/esm2022/lib/extension/model/model.tracker.view.storage.mjs +0 -68
- package/esm2022/lib/extension/model/model.types.mjs +0 -2
- package/esm2022/lib/extension/model/model.types.service.mjs +0 -65
- package/esm2022/lib/extension/model/state/actions/actions.mjs +0 -3
- package/esm2022/lib/extension/model/state/actions/index.mjs +0 -4
- package/esm2022/lib/extension/model/state/actions/model.actions.mjs +0 -3
- package/esm2022/lib/extension/model/state/effects/tracker.effects.mjs +0 -26
- package/esm2022/lib/extension/model/state/index.mjs +0 -6
- package/esm2022/lib/extension/model/state/reducers/index.mjs +0 -13
- package/esm2022/lib/extension/model/state/reducers/model.module.config.mjs +0 -8
- package/esm2022/lib/extension/model/state/state.mjs +0 -2
- package/esm2022/lib/extension/preview/index.mjs +0 -5
- package/esm2022/lib/extension/preview/webfilepreview.component.mjs +0 -35
- package/esm2022/lib/extension/preview/webfilepreview.mjs +0 -2
- package/esm2022/lib/extension/preview/webfilepreview.service.mjs +0 -119
- package/esm2022/lib/extension/preview/webfilepreview.service.preset.mjs +0 -21
- package/esm2022/lib/extension/structure/index.mjs +0 -4
- package/esm2022/lib/extension/structure/structure.body.directive.mjs +0 -29
- package/esm2022/lib/extension/structure/structure.module.mjs +0 -21
- package/esm2022/lib/extension/structure/structure.structure.directive.mjs +0 -25
- package/esm2022/lib/extension/widget/index.mjs +0 -7
- package/esm2022/lib/extension/widget/widget.component.mjs +0 -79
- package/esm2022/lib/extension/widget/widget.directive.mjs +0 -12
- package/esm2022/lib/extension/widget/widget.list.component.mjs +0 -75
- package/esm2022/lib/extension/widget/widget.mjs +0 -2
- package/esm2022/lib/extension/widget/widget.module.mjs +0 -28
- package/esm2022/lib/extension/widget/widget.service.mjs +0 -43
- package/esm2022/lib/extension/zip/index.mjs +0 -5
- package/esm2022/lib/extension/zip/zip.blob.mjs +0 -16
- package/esm2022/lib/extension/zip/zip.blob.preview.component.mjs +0 -156
- package/esm2022/lib/extension/zip/zip.blob.preview.list.component.mjs +0 -121
- package/esm2022/lib/extension/zip/zip.preview.component.mjs +0 -71
- package/esm2022/lib/extension/zip/zip.preview.dialog.component.mjs +0 -31
- package/esm2022/lib/index.mjs +0 -13
- package/esm2022/lib/interaction/dialog/abstract.dialog.directive.mjs +0 -26
- package/esm2022/lib/interaction/dialog/dialog.action.directive.mjs +0 -38
- package/esm2022/lib/interaction/dialog/dialog.content.close.component.mjs +0 -40
- package/esm2022/lib/interaction/dialog/dialog.content.directive.mjs +0 -23
- package/esm2022/lib/interaction/dialog/dialog.content.footer.component.mjs +0 -38
- package/esm2022/lib/interaction/dialog/dialog.content.mjs +0 -9
- package/esm2022/lib/interaction/dialog/dialog.injection.component.mjs +0 -53
- package/esm2022/lib/interaction/dialog/dialog.module.mjs +0 -36
- package/esm2022/lib/interaction/dialog/index.mjs +0 -9
- package/esm2022/lib/interaction/filter/filter.config.mjs +0 -2
- package/esm2022/lib/interaction/filter/filter.menu.mjs +0 -25
- package/esm2022/lib/interaction/filter/filter.module.mjs +0 -24
- package/esm2022/lib/interaction/filter/filter.partial.list.component.mjs +0 -23
- package/esm2022/lib/interaction/filter/filter.partial.menu.component.mjs +0 -31
- package/esm2022/lib/interaction/filter/filter.partial.mjs +0 -50
- package/esm2022/lib/interaction/filter/filter.popover.button.component.mjs +0 -33
- package/esm2022/lib/interaction/filter/filter.popover.button.directive.mjs +0 -28
- package/esm2022/lib/interaction/filter/filter.popover.component.mjs +0 -115
- package/esm2022/lib/interaction/filter/filter.preset.directive.mjs +0 -78
- package/esm2022/lib/interaction/filter/filter.preset.list.component.mjs +0 -23
- package/esm2022/lib/interaction/filter/filter.preset.menu.component.mjs +0 -31
- package/esm2022/lib/interaction/filter/filter.wrapper.component.mjs +0 -46
- package/esm2022/lib/interaction/filter/index.mjs +0 -13
- package/esm2022/lib/interaction/iframe/embed.component.mjs +0 -124
- package/esm2022/lib/interaction/iframe/embed.dialog.component.mjs +0 -34
- package/esm2022/lib/interaction/iframe/iframe.component.mjs +0 -68
- package/esm2022/lib/interaction/iframe/iframe.dialog.component.mjs +0 -23
- package/esm2022/lib/interaction/iframe/index.mjs +0 -5
- package/esm2022/lib/interaction/index.mjs +0 -9
- package/esm2022/lib/interaction/interaction.module.mjs +0 -30
- package/esm2022/lib/interaction/popover/abstract.popover.directive.mjs +0 -21
- package/esm2022/lib/interaction/popover/abstract.popover.ref.directive.mjs +0 -52
- package/esm2022/lib/interaction/popover/index.mjs +0 -17
- package/esm2022/lib/interaction/popover/popover.action.directive.mjs +0 -42
- package/esm2022/lib/interaction/popover/popover.close.component.mjs +0 -29
- package/esm2022/lib/interaction/popover/popover.component.mjs +0 -169
- package/esm2022/lib/interaction/popover/popover.content.component.mjs +0 -50
- package/esm2022/lib/interaction/popover/popover.content.module.mjs +0 -24
- package/esm2022/lib/interaction/popover/popover.controls.directive.mjs +0 -27
- package/esm2022/lib/interaction/popover/popover.coordinator.component.mjs +0 -42
- package/esm2022/lib/interaction/popover/popover.coordinator.service.mjs +0 -44
- package/esm2022/lib/interaction/popover/popover.header.component.mjs +0 -60
- package/esm2022/lib/interaction/popover/popover.mjs +0 -3
- package/esm2022/lib/interaction/popover/popover.module.mjs +0 -20
- package/esm2022/lib/interaction/popover/popover.position.strategy.mjs +0 -60
- package/esm2022/lib/interaction/popover/popover.scroll.content.directive.mjs +0 -41
- package/esm2022/lib/interaction/popover/popover.service.mjs +0 -47
- package/esm2022/lib/interaction/popup/abstract.popup.directive.mjs +0 -18
- package/esm2022/lib/interaction/popup/index.mjs +0 -12
- package/esm2022/lib/interaction/popup/popup.component.mjs +0 -126
- package/esm2022/lib/interaction/popup/popup.content.component.mjs +0 -42
- package/esm2022/lib/interaction/popup/popup.controls.buttons.component.mjs +0 -90
- package/esm2022/lib/interaction/popup/popup.controls.component.mjs +0 -33
- package/esm2022/lib/interaction/popup/popup.coordinator.component.mjs +0 -42
- package/esm2022/lib/interaction/popup/popup.coordinator.service.mjs +0 -44
- package/esm2022/lib/interaction/popup/popup.mjs +0 -8
- package/esm2022/lib/interaction/popup/popup.module.mjs +0 -21
- package/esm2022/lib/interaction/popup/popup.position.strategy.mjs +0 -42
- package/esm2022/lib/interaction/popup/popup.service.mjs +0 -43
- package/esm2022/lib/interaction/prompt/index.mjs +0 -10
- package/esm2022/lib/interaction/prompt/prompt.box.directive.mjs +0 -19
- package/esm2022/lib/interaction/prompt/prompt.button.confirm.directive.mjs +0 -28
- package/esm2022/lib/interaction/prompt/prompt.component.mjs +0 -37
- package/esm2022/lib/interaction/prompt/prompt.confirm.component.mjs +0 -49
- package/esm2022/lib/interaction/prompt/prompt.confirm.dialog.component.mjs +0 -53
- package/esm2022/lib/interaction/prompt/prompt.confirm.directive.mjs +0 -60
- package/esm2022/lib/interaction/prompt/prompt.confirm.mjs +0 -12
- package/esm2022/lib/interaction/prompt/prompt.module.mjs +0 -23
- package/esm2022/lib/interaction/prompt/prompt.page.component.mjs +0 -33
- package/esm2022/lib/interaction/upload/abstract.upload.component.mjs +0 -85
- package/esm2022/lib/interaction/upload/index.mjs +0 -8
- package/esm2022/lib/interaction/upload/upload.accept.mjs +0 -72
- package/esm2022/lib/interaction/upload/upload.action.directive.mjs +0 -36
- package/esm2022/lib/interaction/upload/upload.action.mjs +0 -18
- package/esm2022/lib/interaction/upload/upload.area.component.mjs +0 -138
- package/esm2022/lib/interaction/upload/upload.button.component.mjs +0 -81
- package/esm2022/lib/interaction/upload/upload.component.mjs +0 -119
- package/esm2022/lib/keypress/index.mjs +0 -3
- package/esm2022/lib/keypress/keydown.listener.directive.mjs +0 -49
- package/esm2022/lib/keypress/keypress.module.mjs +0 -19
- package/esm2022/lib/layout/avatar/avatar.component.mjs +0 -79
- package/esm2022/lib/layout/avatar/avatar.mjs +0 -7
- package/esm2022/lib/layout/avatar/avatar.service.mjs +0 -78
- package/esm2022/lib/layout/avatar/avatar.view.component.mjs +0 -109
- package/esm2022/lib/layout/avatar/index.mjs +0 -4
- package/esm2022/lib/layout/bar/bar.directive.mjs +0 -26
- package/esm2022/lib/layout/bar/bar.header.component.mjs +0 -49
- package/esm2022/lib/layout/bar/bar.layout.module.mjs +0 -22
- package/esm2022/lib/layout/bar/bar.mjs +0 -2
- package/esm2022/lib/layout/bar/index.mjs +0 -5
- package/esm2022/lib/layout/bar/pagebar.component.mjs +0 -37
- package/esm2022/lib/layout/block/block.layout.module.mjs +0 -21
- package/esm2022/lib/layout/block/index.mjs +0 -3
- package/esm2022/lib/layout/block/two.block.component.mjs +0 -58
- package/esm2022/lib/layout/card/card.box.component.mjs +0 -64
- package/esm2022/lib/layout/card/card.box.container.directive.mjs +0 -20
- package/esm2022/lib/layout/card/card.box.layout.module.mjs +0 -18
- package/esm2022/lib/layout/card/index.mjs +0 -4
- package/esm2022/lib/layout/column/column.layout.module.mjs +0 -18
- package/esm2022/lib/layout/column/index.mjs +0 -4
- package/esm2022/lib/layout/column/one/index.mjs +0 -3
- package/esm2022/lib/layout/column/one/one.column.component.mjs +0 -43
- package/esm2022/lib/layout/column/one/one.column.module.mjs +0 -19
- package/esm2022/lib/layout/column/two/index.mjs +0 -11
- package/esm2022/lib/layout/column/two/two.column.back.directive.mjs +0 -27
- package/esm2022/lib/layout/column/two/two.column.component.mjs +0 -98
- package/esm2022/lib/layout/column/two/two.column.context.directive.mjs +0 -25
- package/esm2022/lib/layout/column/two/two.column.full.left.directive.mjs +0 -24
- package/esm2022/lib/layout/column/two/two.column.head.directive.mjs +0 -24
- package/esm2022/lib/layout/column/two/two.column.module.mjs +0 -24
- package/esm2022/lib/layout/column/two/two.column.right.component.mjs +0 -110
- package/esm2022/lib/layout/column/two/two.column.sref.directive.mjs +0 -26
- package/esm2022/lib/layout/column/two/two.column.sref.showright.directive.mjs +0 -30
- package/esm2022/lib/layout/column/two/two.column.store.mjs +0 -126
- package/esm2022/lib/layout/compact/compact.directive.mjs +0 -26
- package/esm2022/lib/layout/compact/compact.layout.module.mjs +0 -20
- package/esm2022/lib/layout/compact/compact.mjs +0 -26
- package/esm2022/lib/layout/compact/compact.store.mjs +0 -20
- package/esm2022/lib/layout/compact/index.mjs +0 -5
- package/esm2022/lib/layout/content/content.border.directive.mjs +0 -23
- package/esm2022/lib/layout/content/content.box.directive.mjs +0 -24
- package/esm2022/lib/layout/content/content.container.directive.mjs +0 -28
- package/esm2022/lib/layout/content/content.directive.mjs +0 -20
- package/esm2022/lib/layout/content/content.elevate.directive.mjs +0 -22
- package/esm2022/lib/layout/content/content.layout.module.mjs +0 -51
- package/esm2022/lib/layout/content/content.page.directive.mjs +0 -20
- package/esm2022/lib/layout/content/content.pit.directive.mjs +0 -54
- package/esm2022/lib/layout/content/index.mjs +0 -9
- package/esm2022/lib/layout/flag/flag.component.mjs +0 -35
- package/esm2022/lib/layout/flag/flag.layout.module.mjs +0 -18
- package/esm2022/lib/layout/flag/flag.prompt.component.mjs +0 -35
- package/esm2022/lib/layout/flag/index.mjs +0 -4
- package/esm2022/lib/layout/flex/flex.group.directive.mjs +0 -34
- package/esm2022/lib/layout/flex/flex.layout.module.mjs +0 -21
- package/esm2022/lib/layout/flex/flex.mjs +0 -2
- package/esm2022/lib/layout/flex/flex.size.directive.mjs +0 -22
- package/esm2022/lib/layout/flex/index.mjs +0 -5
- package/esm2022/lib/layout/index.mjs +0 -17
- package/esm2022/lib/layout/item/index.mjs +0 -2
- package/esm2022/lib/layout/item/item.icon.component.mjs +0 -56
- package/esm2022/lib/layout/layout.module.mjs +0 -26
- package/esm2022/lib/layout/list/grid/index.mjs +0 -3
- package/esm2022/lib/layout/list/grid/list.grid.view.component.mjs +0 -98
- package/esm2022/lib/layout/list/grid/list.grid.view.directive.mjs +0 -34
- package/esm2022/lib/layout/list/group/index.mjs +0 -4
- package/esm2022/lib/layout/list/group/list.view.value.group.mjs +0 -32
- package/esm2022/lib/layout/list/group/list.view.value.group.title.directive.mjs +0 -70
- package/esm2022/lib/layout/list/group/list.view.value.group.title.header.component.mjs +0 -60
- package/esm2022/lib/layout/list/group/list.view.value.group.title.mjs +0 -2
- package/esm2022/lib/layout/list/index.mjs +0 -21
- package/esm2022/lib/layout/list/list.component.mjs +0 -232
- package/esm2022/lib/layout/list/list.content.empty.component.mjs +0 -27
- package/esm2022/lib/layout/list/list.directive.mjs +0 -95
- package/esm2022/lib/layout/list/list.layout.module.mjs +0 -99
- package/esm2022/lib/layout/list/list.module.mjs +0 -40
- package/esm2022/lib/layout/list/list.track.mjs +0 -9
- package/esm2022/lib/layout/list/list.view.directive.mjs +0 -79
- package/esm2022/lib/layout/list/list.view.mjs +0 -17
- package/esm2022/lib/layout/list/list.view.selection.directive.mjs +0 -46
- package/esm2022/lib/layout/list/list.view.value.component.mjs +0 -190
- package/esm2022/lib/layout/list/list.view.value.directive.mjs +0 -30
- package/esm2022/lib/layout/list/list.view.value.item.directive.mjs +0 -15
- package/esm2022/lib/layout/list/list.view.value.mjs +0 -67
- package/esm2022/lib/layout/list/list.view.value.modifier.mjs +0 -17
- package/esm2022/lib/layout/list/list.view.value.selection.component.mjs +0 -112
- package/esm2022/lib/layout/list/list.wrapper.mjs +0 -15
- package/esm2022/lib/layout/list/meta/index.mjs +0 -2
- package/esm2022/lib/layout/list/meta/list.view.meta.icon.component.mjs +0 -39
- package/esm2022/lib/layout/list/modifier/index.mjs +0 -5
- package/esm2022/lib/layout/list/modifier/list.modifier.module.mjs +0 -22
- package/esm2022/lib/layout/list/modifier/list.view.value.modifier.directive.mjs +0 -76
- package/esm2022/lib/layout/list/modifier/list.view.value.modifier.ripple.directive.mjs +0 -38
- package/esm2022/lib/layout/list/modifier/list.view.value.modifier.selection.directive.mjs +0 -36
- package/esm2022/lib/layout/section/index.mjs +0 -8
- package/esm2022/lib/layout/section/section.component.mjs +0 -43
- package/esm2022/lib/layout/section/section.header.component.mjs +0 -153
- package/esm2022/lib/layout/section/section.intro.component.mjs +0 -67
- package/esm2022/lib/layout/section/section.layout.module.mjs +0 -24
- package/esm2022/lib/layout/section/section.mjs +0 -2
- package/esm2022/lib/layout/section/section.page.component.mjs +0 -51
- package/esm2022/lib/layout/section/subsection.component.mjs +0 -40
- package/esm2022/lib/layout/step/index.mjs +0 -3
- package/esm2022/lib/layout/step/step.component.mjs +0 -60
- package/esm2022/lib/layout/step/step.layout.module.mjs +0 -20
- package/esm2022/lib/layout/style/index.mjs +0 -10
- package/esm2022/lib/layout/style/spacer.directive.mjs +0 -17
- package/esm2022/lib/layout/style/style.body.directive.mjs +0 -39
- package/esm2022/lib/layout/style/style.color.directive.mjs +0 -23
- package/esm2022/lib/layout/style/style.directive.mjs +0 -30
- package/esm2022/lib/layout/style/style.layout.module.mjs +0 -21
- package/esm2022/lib/layout/style/style.mjs +0 -24
- package/esm2022/lib/layout/style/style.providers.mjs +0 -21
- package/esm2022/lib/layout/style/style.service.mjs +0 -92
- package/esm2022/lib/layout/style/style.set.directive.mjs +0 -52
- package/esm2022/lib/layout/text/address.component.mjs +0 -67
- package/esm2022/lib/layout/text/copy.text.component.mjs +0 -39
- package/esm2022/lib/layout/text/copy.text.directive.mjs +0 -56
- package/esm2022/lib/layout/text/detail.block.component.mjs +0 -43
- package/esm2022/lib/layout/text/detail.block.header.component.mjs +0 -63
- package/esm2022/lib/layout/text/icon.spacer.component.mjs +0 -20
- package/esm2022/lib/layout/text/index.mjs +0 -13
- package/esm2022/lib/layout/text/label.block.component.mjs +0 -29
- package/esm2022/lib/layout/text/linkify.component.mjs +0 -38
- package/esm2022/lib/layout/text/number.limit.component.mjs +0 -82
- package/esm2022/lib/layout/text/text.chip.directive.mjs +0 -27
- package/esm2022/lib/layout/text/text.chips.component.mjs +0 -43
- package/esm2022/lib/layout/text/text.module.mjs +0 -27
- package/esm2022/lib/loading/basic-loading.component.mjs +0 -77
- package/esm2022/lib/loading/index.mjs +0 -7
- package/esm2022/lib/loading/loading-progress.component.mjs +0 -63
- package/esm2022/lib/loading/loading.action.directive.mjs +0 -29
- package/esm2022/lib/loading/loading.component.mjs +0 -94
- package/esm2022/lib/loading/loading.mjs +0 -2
- package/esm2022/lib/loading/loading.module.mjs +0 -20
- package/esm2022/lib/router/index.mjs +0 -3
- package/esm2022/lib/router/layout/anchor/anchor.component.mjs +0 -124
- package/esm2022/lib/router/layout/anchor/anchor.content.component.mjs +0 -49
- package/esm2022/lib/router/layout/anchor/anchor.icon.component.mjs +0 -37
- package/esm2022/lib/router/layout/anchor/anchor.link.component.mjs +0 -53
- package/esm2022/lib/router/layout/anchor/anchor.module.mjs +0 -28
- package/esm2022/lib/router/layout/anchor/anchor.segue.directive.mjs +0 -24
- package/esm2022/lib/router/layout/anchor/index.mjs +0 -7
- package/esm2022/lib/router/layout/anchorlist/anchorlist.component.mjs +0 -29
- package/esm2022/lib/router/layout/anchorlist/anchorlist.module.mjs +0 -19
- package/esm2022/lib/router/layout/anchorlist/index.mjs +0 -3
- package/esm2022/lib/router/layout/index.mjs +0 -7
- package/esm2022/lib/router/layout/layout.module.mjs +0 -19
- package/esm2022/lib/router/layout/list/index.mjs +0 -3
- package/esm2022/lib/router/layout/list/list.module.mjs +0 -19
- package/esm2022/lib/router/layout/list/router.list.directive.mjs +0 -35
- package/esm2022/lib/router/layout/navbar/index.mjs +0 -3
- package/esm2022/lib/router/layout/navbar/navbar.component.mjs +0 -83
- package/esm2022/lib/router/layout/navbar/navbar.module.mjs +0 -19
- package/esm2022/lib/router/layout/sidenav/index.mjs +0 -11
- package/esm2022/lib/router/layout/sidenav/sidenav.button.component.mjs +0 -51
- package/esm2022/lib/router/layout/sidenav/sidenav.component.mjs +0 -144
- package/esm2022/lib/router/layout/sidenav/sidenav.ifdisplaymode.directive.mjs +0 -33
- package/esm2022/lib/router/layout/sidenav/sidenav.mjs +0 -8
- package/esm2022/lib/router/layout/sidenav/sidenav.module.mjs +0 -21
- package/esm2022/lib/router/layout/sidenav/sidenav.page.component.mjs +0 -55
- package/esm2022/lib/router/layout/sidenav/sidenav.pagebar.component.mjs +0 -42
- package/esm2022/lib/router/provider/index.mjs +0 -4
- package/esm2022/lib/router/provider/ngrouter/anchor.component.mjs +0 -25
- package/esm2022/lib/router/provider/ngrouter/angular.router.providers.mjs +0 -23
- package/esm2022/lib/router/provider/ngrouter/index.mjs +0 -3
- package/esm2022/lib/router/provider/router.provider.config.mjs +0 -10
- package/esm2022/lib/router/provider/uirouter/anchor.component.mjs +0 -32
- package/esm2022/lib/router/provider/uirouter/index.mjs +0 -3
- package/esm2022/lib/router/provider/uirouter/uirouter.router.providers.mjs +0 -23
- package/esm2022/lib/screen/index.mjs +0 -6
- package/esm2022/lib/screen/resize.directive.mjs +0 -24
- package/esm2022/lib/screen/resize.mjs +0 -34
- package/esm2022/lib/screen/screen.mjs +0 -22
- package/esm2022/lib/screen/screen.providers.mjs +0 -22
- package/esm2022/lib/screen/screen.service.mjs +0 -101
- package/esm2022/lib/util/cdk.mjs +0 -22
- package/esm2022/lib/util/click.mjs +0 -56
- package/esm2022/lib/util/clipboard.directive.mjs +0 -20
- package/esm2022/lib/util/clipboard.mjs +0 -98
- package/esm2022/lib/util/index.mjs +0 -5
- package/esm2022/mapbox/dereekb-dbx-web-mapbox.mjs +0 -5
- package/esm2022/mapbox/index.mjs +0 -2
- package/esm2022/mapbox/lib/index.mjs +0 -22
- package/esm2022/mapbox/lib/mapbox.change.service.mjs +0 -40
- package/esm2022/mapbox/lib/mapbox.injection.component.mjs +0 -29
- package/esm2022/mapbox/lib/mapbox.injection.store.mjs +0 -39
- package/esm2022/mapbox/lib/mapbox.injection.store.provide.mjs +0 -48
- package/esm2022/mapbox/lib/mapbox.layout.component.mjs +0 -154
- package/esm2022/mapbox/lib/mapbox.layout.drawer.component.mjs +0 -21
- package/esm2022/mapbox/lib/mapbox.layout.resize.sync.directive.mjs +0 -33
- package/esm2022/mapbox/lib/mapbox.marker.component.mjs +0 -127
- package/esm2022/mapbox/lib/mapbox.marker.mjs +0 -16
- package/esm2022/mapbox/lib/mapbox.markers.component.mjs +0 -44
- package/esm2022/mapbox/lib/mapbox.menu.component.mjs +0 -94
- package/esm2022/mapbox/lib/mapbox.mjs +0 -19
- package/esm2022/mapbox/lib/mapbox.module.mjs +0 -73
- package/esm2022/mapbox/lib/mapbox.options.mjs +0 -2
- package/esm2022/mapbox/lib/mapbox.providers.mjs +0 -25
- package/esm2022/mapbox/lib/mapbox.rxjs.mjs +0 -53
- package/esm2022/mapbox/lib/mapbox.service.mjs +0 -41
- package/esm2022/mapbox/lib/mapbox.store.map.directive.mjs +0 -42
- package/esm2022/mapbox/lib/mapbox.store.mjs +0 -549
- package/esm2022/mapbox/lib/mapbox.store.provide.mjs +0 -48
- package/esm2022/mapbox/lib/mapbox.util.mjs +0 -15
- package/esm2022/table/dereekb-dbx-web-table.mjs +0 -5
- package/esm2022/table/index.mjs +0 -2
- package/esm2022/table/lib/date/date.table.column.header.component.mjs +0 -55
- package/esm2022/table/lib/date/daterange.table.cell.input.component.mjs +0 -154
- package/esm2022/table/lib/date/index.mjs +0 -4
- package/esm2022/table/lib/date/table.date.module.mjs +0 -18
- package/esm2022/table/lib/index.mjs +0 -24
- package/esm2022/table/lib/table.cell.action.component.mjs +0 -28
- package/esm2022/table/lib/table.cell.input.component.mjs +0 -31
- package/esm2022/table/lib/table.cell.summaryend.component.mjs +0 -28
- package/esm2022/table/lib/table.cell.summarystart.component.mjs +0 -31
- package/esm2022/table/lib/table.column.directive.mjs +0 -20
- package/esm2022/table/lib/table.column.footer.component.mjs +0 -35
- package/esm2022/table/lib/table.column.header.component.mjs +0 -35
- package/esm2022/table/lib/table.column.size.directive.mjs +0 -103
- package/esm2022/table/lib/table.column.size.mjs +0 -3
- package/esm2022/table/lib/table.component.mjs +0 -179
- package/esm2022/table/lib/table.directive.mjs +0 -30
- package/esm2022/table/lib/table.fullsummaryrow.component.mjs +0 -34
- package/esm2022/table/lib/table.group.directive.mjs +0 -20
- package/esm2022/table/lib/table.group.footer.component.mjs +0 -35
- package/esm2022/table/lib/table.group.header.component.mjs +0 -35
- package/esm2022/table/lib/table.item.action.component.mjs +0 -35
- package/esm2022/table/lib/table.item.cell.component.mjs +0 -29
- package/esm2022/table/lib/table.item.directive.mjs +0 -18
- package/esm2022/table/lib/table.item.header.component.mjs +0 -28
- package/esm2022/table/lib/table.mjs +0 -10
- package/esm2022/table/lib/table.module.mjs +0 -18
- package/esm2022/table/lib/table.reader.mjs +0 -103
- package/esm2022/table/lib/table.store.mjs +0 -70
- package/index.d.ts +0 -1
- package/lib/action/action.confirm.directive.d.ts +0 -32
- package/lib/action/action.module.d.ts +0 -12
- package/lib/action/index.d.ts +0 -5
- package/lib/action/key.trigger.directive.d.ts +0 -15
- package/lib/action/snackbar/action.snackbar.component.d.ts +0 -35
- package/lib/action/snackbar/action.snackbar.d.ts +0 -52
- package/lib/action/snackbar/action.snackbar.default.d.ts +0 -2
- package/lib/action/snackbar/action.snackbar.directive.d.ts +0 -22
- package/lib/action/snackbar/action.snackbar.generator.d.ts +0 -32
- package/lib/action/snackbar/action.snackbar.module.d.ts +0 -8
- package/lib/action/snackbar/action.snackbar.service.d.ts +0 -38
- package/lib/action/snackbar/index.d.ts +0 -7
- package/lib/action/transition/action.transition.module.d.ts +0 -19
- package/lib/action/transition/index.d.ts +0 -3
- package/lib/action/transition/transition.safety.dialog.component.d.ts +0 -15
- package/lib/action/transition/transition.safety.directive.d.ts +0 -45
- package/lib/button/button.component.d.ts +0 -39
- package/lib/button/button.d.ts +0 -20
- package/lib/button/button.module.d.ts +0 -15
- package/lib/button/button.spacer.directive.d.ts +0 -8
- package/lib/button/icon/icon.button.component.d.ts +0 -9
- package/lib/button/icon/icon.button.module.d.ts +0 -10
- package/lib/button/icon/index.d.ts +0 -2
- package/lib/button/index.d.ts +0 -6
- package/lib/button/progress/abstract.progress.button.directive.d.ts +0 -29
- package/lib/button/progress/bar.button.component.d.ts +0 -8
- package/lib/button/progress/button.progress.config.d.ts +0 -83
- package/lib/button/progress/button.progress.module.d.ts +0 -11
- package/lib/button/progress/button.progress.providers.d.ts +0 -9
- package/lib/button/progress/index.d.ts +0 -5
- package/lib/button/progress/spinner.button.component.d.ts +0 -22
- package/lib/dbx-web.module.d.ts +0 -9
- package/lib/error/default.error.widget.component.d.ts +0 -8
- package/lib/error/error.action.directive.d.ts +0 -14
- package/lib/error/error.api.d.ts +0 -13
- package/lib/error/error.component.d.ts +0 -36
- package/lib/error/error.details.component.d.ts +0 -7
- package/lib/error/error.loading.directive.d.ts +0 -18
- package/lib/error/error.module.d.ts +0 -30
- package/lib/error/error.popover.component.d.ts +0 -18
- package/lib/error/error.snackbar.action.directive.d.ts +0 -16
- package/lib/error/error.snackbar.component.d.ts +0 -28
- package/lib/error/error.snackbar.service.d.ts +0 -17
- package/lib/error/error.view.component.d.ts +0 -22
- package/lib/error/error.widget.component.d.ts +0 -14
- package/lib/error/error.widget.directive.d.ts +0 -9
- package/lib/error/error.widget.service.d.ts +0 -60
- package/lib/error/index.d.ts +0 -16
- package/lib/error/state.d.ts +0 -16
- package/lib/extension/download/blob/download.blob.button.component.d.ts +0 -55
- package/lib/extension/download/blob/index.d.ts +0 -1
- package/lib/extension/download/index.d.ts +0 -2
- package/lib/extension/download/text/download.text.component.d.ts +0 -39
- package/lib/extension/download/text/download.text.d.ts +0 -5
- package/lib/extension/download/text/download.text.module.d.ts +0 -10
- package/lib/extension/download/text/index.d.ts +0 -3
- package/lib/extension/help/absract.help.widget.directive.d.ts +0 -13
- package/lib/extension/help/help.context.d.ts +0 -11
- package/lib/extension/help/help.context.directive.d.ts +0 -17
- package/lib/extension/help/help.context.service.d.ts +0 -20
- package/lib/extension/help/help.d.ts +0 -15
- package/lib/extension/help/help.providers.d.ts +0 -22
- package/lib/extension/help/help.view.list.component.d.ts +0 -39
- package/lib/extension/help/help.view.list.entry.component.d.ts +0 -16
- package/lib/extension/help/help.view.popover.button.component.d.ts +0 -32
- package/lib/extension/help/help.view.popover.component.d.ts +0 -81
- package/lib/extension/help/help.widget.d.ts +0 -52
- package/lib/extension/help/help.widget.service.d.ts +0 -74
- package/lib/extension/help/index.d.ts +0 -12
- package/lib/extension/index.d.ts +0 -7
- package/lib/extension/model/index.d.ts +0 -8
- package/lib/extension/model/model.providers.d.ts +0 -13
- package/lib/extension/model/model.state.service.d.ts +0 -12
- package/lib/extension/model/model.tracker.d.ts +0 -32
- package/lib/extension/model/model.tracker.service.d.ts +0 -19
- package/lib/extension/model/model.tracker.view.storage.d.ts +0 -30
- package/lib/extension/model/model.types.d.ts +0 -41
- package/lib/extension/model/model.types.service.d.ts +0 -30
- package/lib/extension/model/state/actions/actions.d.ts +0 -1
- package/lib/extension/model/state/actions/index.d.ts +0 -3
- package/lib/extension/model/state/actions/model.actions.d.ts +0 -9
- package/lib/extension/model/state/effects/tracker.effects.d.ts +0 -13
- package/lib/extension/model/state/index.d.ts +0 -5
- package/lib/extension/model/state/reducers/index.d.ts +0 -15
- package/lib/extension/model/state/reducers/model.module.config.d.ts +0 -5
- package/lib/extension/model/state/state.d.ts +0 -2
- package/lib/extension/preview/index.d.ts +0 -4
- package/lib/extension/preview/webfilepreview.component.d.ts +0 -19
- package/lib/extension/preview/webfilepreview.d.ts +0 -94
- package/lib/extension/preview/webfilepreview.service.d.ts +0 -36
- package/lib/extension/preview/webfilepreview.service.preset.d.ts +0 -6
- package/lib/extension/structure/index.d.ts +0 -3
- package/lib/extension/structure/structure.body.directive.d.ts +0 -9
- package/lib/extension/structure/structure.module.d.ts +0 -11
- package/lib/extension/structure/structure.structure.directive.d.ts +0 -17
- package/lib/extension/widget/index.d.ts +0 -6
- package/lib/extension/widget/widget.component.d.ts +0 -16
- package/lib/extension/widget/widget.d.ts +0 -19
- package/lib/extension/widget/widget.directive.d.ts +0 -6
- package/lib/extension/widget/widget.list.component.d.ts +0 -25
- package/lib/extension/widget/widget.module.d.ts +0 -18
- package/lib/extension/widget/widget.service.d.ts +0 -32
- package/lib/extension/zip/index.d.ts +0 -4
- package/lib/extension/zip/zip.blob.d.ts +0 -9
- package/lib/extension/zip/zip.blob.preview.component.d.ts +0 -54
- package/lib/extension/zip/zip.blob.preview.list.component.d.ts +0 -25
- package/lib/extension/zip/zip.preview.component.d.ts +0 -31
- package/lib/extension/zip/zip.preview.dialog.component.d.ts +0 -17
- package/lib/index.d.ts +0 -12
- package/lib/interaction/dialog/abstract.dialog.directive.d.ts +0 -15
- package/lib/interaction/dialog/dialog.action.directive.d.ts +0 -22
- package/lib/interaction/dialog/dialog.content.close.component.d.ts +0 -11
- package/lib/interaction/dialog/dialog.content.d.ts +0 -4
- package/lib/interaction/dialog/dialog.content.directive.d.ts +0 -12
- package/lib/interaction/dialog/dialog.content.footer.component.d.ts +0 -21
- package/lib/interaction/dialog/dialog.injection.component.d.ts +0 -19
- package/lib/interaction/dialog/dialog.module.d.ts +0 -18
- package/lib/interaction/dialog/index.d.ts +0 -8
- package/lib/interaction/filter/filter.config.d.ts +0 -62
- package/lib/interaction/filter/filter.menu.d.ts +0 -22
- package/lib/interaction/filter/filter.module.d.ts +0 -14
- package/lib/interaction/filter/filter.partial.d.ts +0 -20
- package/lib/interaction/filter/filter.partial.list.component.d.ts +0 -6
- package/lib/interaction/filter/filter.partial.menu.component.d.ts +0 -16
- package/lib/interaction/filter/filter.popover.button.component.d.ts +0 -13
- package/lib/interaction/filter/filter.popover.button.directive.d.ts +0 -17
- package/lib/interaction/filter/filter.popover.component.d.ts +0 -40
- package/lib/interaction/filter/filter.preset.directive.d.ts +0 -23
- package/lib/interaction/filter/filter.preset.list.component.d.ts +0 -7
- package/lib/interaction/filter/filter.preset.menu.component.d.ts +0 -17
- package/lib/interaction/filter/filter.wrapper.component.d.ts +0 -19
- package/lib/interaction/filter/index.d.ts +0 -12
- package/lib/interaction/iframe/embed.component.d.ts +0 -40
- package/lib/interaction/iframe/embed.dialog.component.d.ts +0 -18
- package/lib/interaction/iframe/iframe.component.d.ts +0 -22
- package/lib/interaction/iframe/iframe.dialog.component.d.ts +0 -15
- package/lib/interaction/iframe/index.d.ts +0 -4
- package/lib/interaction/index.d.ts +0 -8
- package/lib/interaction/interaction.module.d.ts +0 -20
- package/lib/interaction/popover/abstract.popover.directive.d.ts +0 -12
- package/lib/interaction/popover/abstract.popover.ref.directive.d.ts +0 -28
- package/lib/interaction/popover/index.d.ts +0 -16
- package/lib/interaction/popover/popover.action.directive.d.ts +0 -25
- package/lib/interaction/popover/popover.close.component.d.ts +0 -10
- package/lib/interaction/popover/popover.component.d.ts +0 -84
- package/lib/interaction/popover/popover.content.component.d.ts +0 -18
- package/lib/interaction/popover/popover.content.module.d.ts +0 -14
- package/lib/interaction/popover/popover.controls.directive.d.ts +0 -12
- package/lib/interaction/popover/popover.coordinator.component.d.ts +0 -16
- package/lib/interaction/popover/popover.coordinator.service.d.ts +0 -16
- package/lib/interaction/popover/popover.d.ts +0 -16
- package/lib/interaction/popover/popover.header.component.d.ts +0 -15
- package/lib/interaction/popover/popover.module.d.ts +0 -10
- package/lib/interaction/popover/popover.position.strategy.d.ts +0 -11
- package/lib/interaction/popover/popover.scroll.content.directive.d.ts +0 -13
- package/lib/interaction/popover/popover.service.d.ts +0 -19
- package/lib/interaction/popup/abstract.popup.directive.d.ts +0 -11
- package/lib/interaction/popup/index.d.ts +0 -11
- package/lib/interaction/popup/popup.component.d.ts +0 -57
- package/lib/interaction/popup/popup.content.component.d.ts +0 -11
- package/lib/interaction/popup/popup.controls.buttons.component.d.ts +0 -18
- package/lib/interaction/popup/popup.controls.component.d.ts +0 -9
- package/lib/interaction/popup/popup.coordinator.component.d.ts +0 -16
- package/lib/interaction/popup/popup.coordinator.service.d.ts +0 -16
- package/lib/interaction/popup/popup.d.ts +0 -26
- package/lib/interaction/popup/popup.module.d.ts +0 -11
- package/lib/interaction/popup/popup.position.strategy.d.ts +0 -14
- package/lib/interaction/popup/popup.service.d.ts +0 -18
- package/lib/interaction/prompt/index.d.ts +0 -9
- package/lib/interaction/prompt/prompt.box.directive.d.ts +0 -6
- package/lib/interaction/prompt/prompt.button.confirm.directive.d.ts +0 -16
- package/lib/interaction/prompt/prompt.component.d.ts +0 -11
- package/lib/interaction/prompt/prompt.confirm.component.d.ts +0 -22
- package/lib/interaction/prompt/prompt.confirm.d.ts +0 -7
- package/lib/interaction/prompt/prompt.confirm.dialog.component.d.ts +0 -22
- package/lib/interaction/prompt/prompt.confirm.directive.d.ts +0 -29
- package/lib/interaction/prompt/prompt.module.d.ts +0 -13
- package/lib/interaction/prompt/prompt.page.component.d.ts +0 -5
- package/lib/interaction/upload/abstract.upload.component.d.ts +0 -54
- package/lib/interaction/upload/index.d.ts +0 -7
- package/lib/interaction/upload/upload.accept.d.ts +0 -87
- package/lib/interaction/upload/upload.action.d.ts +0 -17
- package/lib/interaction/upload/upload.action.directive.d.ts +0 -17
- package/lib/interaction/upload/upload.area.component.d.ts +0 -22
- package/lib/interaction/upload/upload.button.component.d.ts +0 -24
- package/lib/interaction/upload/upload.component.d.ts +0 -60
- package/lib/keypress/index.d.ts +0 -2
- package/lib/keypress/keydown.listener.directive.d.ts +0 -23
- package/lib/keypress/keypress.module.d.ts +0 -10
- package/lib/layout/avatar/avatar.component.d.ts +0 -34
- package/lib/layout/avatar/avatar.d.ts +0 -58
- package/lib/layout/avatar/avatar.service.d.ts +0 -66
- package/lib/layout/avatar/avatar.view.component.d.ts +0 -29
- package/lib/layout/avatar/index.d.ts +0 -3
- package/lib/layout/bar/bar.d.ts +0 -2
- package/lib/layout/bar/bar.directive.d.ts +0 -11
- package/lib/layout/bar/bar.header.component.d.ts +0 -12
- package/lib/layout/bar/bar.layout.module.d.ts +0 -12
- package/lib/layout/bar/index.d.ts +0 -4
- package/lib/layout/bar/pagebar.component.d.ts +0 -8
- package/lib/layout/block/block.layout.module.d.ts +0 -12
- package/lib/layout/block/index.d.ts +0 -2
- package/lib/layout/block/two.block.component.d.ts +0 -20
- package/lib/layout/card/card.box.component.d.ts +0 -10
- package/lib/layout/card/card.box.container.directive.d.ts +0 -8
- package/lib/layout/card/card.box.layout.module.d.ts +0 -8
- package/lib/layout/card/index.d.ts +0 -3
- package/lib/layout/column/column.layout.module.d.ts +0 -8
- package/lib/layout/column/index.d.ts +0 -3
- package/lib/layout/column/one/index.d.ts +0 -2
- package/lib/layout/column/one/one.column.component.d.ts +0 -12
- package/lib/layout/column/one/one.column.module.d.ts +0 -10
- package/lib/layout/column/two/index.d.ts +0 -10
- package/lib/layout/column/two/two.column.back.directive.d.ts +0 -15
- package/lib/layout/column/two/two.column.component.d.ts +0 -58
- package/lib/layout/column/two/two.column.context.directive.d.ts +0 -13
- package/lib/layout/column/two/two.column.full.left.directive.d.ts +0 -12
- package/lib/layout/column/two/two.column.head.directive.d.ts +0 -11
- package/lib/layout/column/two/two.column.module.d.ts +0 -14
- package/lib/layout/column/two/two.column.right.component.d.ts +0 -29
- package/lib/layout/column/two/two.column.sref.directive.d.ts +0 -13
- package/lib/layout/column/two/two.column.sref.showright.directive.d.ts +0 -13
- package/lib/layout/column/two/two.column.store.d.ts +0 -125
- package/lib/layout/compact/compact.d.ts +0 -16
- package/lib/layout/compact/compact.directive.d.ts +0 -14
- package/lib/layout/compact/compact.layout.module.d.ts +0 -10
- package/lib/layout/compact/compact.store.d.ts +0 -13
- package/lib/layout/compact/index.d.ts +0 -4
- package/lib/layout/content/content.border.directive.d.ts +0 -11
- package/lib/layout/content/content.box.directive.d.ts +0 -10
- package/lib/layout/content/content.container.directive.d.ts +0 -14
- package/lib/layout/content/content.directive.d.ts +0 -8
- package/lib/layout/content/content.elevate.directive.d.ts +0 -9
- package/lib/layout/content/content.layout.module.d.ts +0 -16
- package/lib/layout/content/content.page.directive.d.ts +0 -8
- package/lib/layout/content/content.pit.directive.d.ts +0 -15
- package/lib/layout/content/index.d.ts +0 -8
- package/lib/layout/flag/flag.component.d.ts +0 -10
- package/lib/layout/flag/flag.layout.module.d.ts +0 -8
- package/lib/layout/flag/flag.prompt.component.d.ts +0 -12
- package/lib/layout/flag/index.d.ts +0 -3
- package/lib/layout/flex/flex.d.ts +0 -4
- package/lib/layout/flex/flex.group.directive.d.ts +0 -18
- package/lib/layout/flex/flex.layout.module.d.ts +0 -11
- package/lib/layout/flex/flex.size.directive.d.ts +0 -11
- package/lib/layout/flex/index.d.ts +0 -4
- package/lib/layout/index.d.ts +0 -16
- package/lib/layout/item/index.d.ts +0 -1
- package/lib/layout/item/item.icon.component.d.ts +0 -11
- package/lib/layout/layout.module.d.ts +0 -18
- package/lib/layout/list/grid/index.d.ts +0 -2
- package/lib/layout/list/grid/list.grid.view.component.d.ts +0 -50
- package/lib/layout/list/grid/list.grid.view.directive.d.ts +0 -24
- package/lib/layout/list/group/index.d.ts +0 -3
- package/lib/layout/list/group/list.view.value.group.d.ts +0 -44
- package/lib/layout/list/group/list.view.value.group.title.d.ts +0 -53
- package/lib/layout/list/group/list.view.value.group.title.directive.d.ts +0 -15
- package/lib/layout/list/group/list.view.value.group.title.header.component.d.ts +0 -21
- package/lib/layout/list/index.d.ts +0 -20
- package/lib/layout/list/list.component.d.ts +0 -134
- package/lib/layout/list/list.content.empty.component.d.ts +0 -8
- package/lib/layout/list/list.directive.d.ts +0 -54
- package/lib/layout/list/list.layout.module.d.ts +0 -34
- package/lib/layout/list/list.module.d.ts +0 -13
- package/lib/layout/list/list.track.d.ts +0 -6
- package/lib/layout/list/list.view.d.ts +0 -59
- package/lib/layout/list/list.view.directive.d.ts +0 -43
- package/lib/layout/list/list.view.selection.directive.d.ts +0 -25
- package/lib/layout/list/list.view.value.component.d.ts +0 -56
- package/lib/layout/list/list.view.value.d.ts +0 -53
- package/lib/layout/list/list.view.value.directive.d.ts +0 -21
- package/lib/layout/list/list.view.value.item.directive.d.ts +0 -8
- package/lib/layout/list/list.view.value.modifier.d.ts +0 -12
- package/lib/layout/list/list.view.value.selection.component.d.ts +0 -32
- package/lib/layout/list/list.wrapper.d.ts +0 -21
- package/lib/layout/list/meta/index.d.ts +0 -1
- package/lib/layout/list/meta/list.view.meta.icon.component.d.ts +0 -17
- package/lib/layout/list/modifier/index.d.ts +0 -4
- package/lib/layout/list/modifier/list.modifier.module.d.ts +0 -12
- package/lib/layout/list/modifier/list.view.value.modifier.directive.d.ts +0 -36
- package/lib/layout/list/modifier/list.view.value.modifier.ripple.directive.d.ts +0 -15
- package/lib/layout/list/modifier/list.view.value.modifier.selection.directive.d.ts +0 -15
- package/lib/layout/section/index.d.ts +0 -7
- package/lib/layout/section/section.component.d.ts +0 -11
- package/lib/layout/section/section.d.ts +0 -32
- package/lib/layout/section/section.header.component.d.ts +0 -21
- package/lib/layout/section/section.intro.component.d.ts +0 -14
- package/lib/layout/section/section.layout.module.d.ts +0 -14
- package/lib/layout/section/section.page.component.d.ts +0 -25
- package/lib/layout/section/subsection.component.d.ts +0 -9
- package/lib/layout/step/index.d.ts +0 -2
- package/lib/layout/step/step.component.d.ts +0 -10
- package/lib/layout/step/step.layout.module.d.ts +0 -10
- package/lib/layout/style/index.d.ts +0 -9
- package/lib/layout/style/spacer.directive.d.ts +0 -5
- package/lib/layout/style/style.body.directive.d.ts +0 -16
- package/lib/layout/style/style.color.directive.d.ts +0 -12
- package/lib/layout/style/style.d.ts +0 -58
- package/lib/layout/style/style.directive.d.ts +0 -14
- package/lib/layout/style/style.layout.module.d.ts +0 -11
- package/lib/layout/style/style.providers.d.ts +0 -19
- package/lib/layout/style/style.service.d.ts +0 -45
- package/lib/layout/style/style.set.directive.d.ts +0 -33
- package/lib/layout/text/address.component.d.ts +0 -7
- package/lib/layout/text/copy.text.component.d.ts +0 -17
- package/lib/layout/text/copy.text.directive.d.ts +0 -23
- package/lib/layout/text/detail.block.component.d.ts +0 -13
- package/lib/layout/text/detail.block.header.component.d.ts +0 -9
- package/lib/layout/text/icon.spacer.component.d.ts +0 -8
- package/lib/layout/text/index.d.ts +0 -12
- package/lib/layout/text/label.block.component.d.ts +0 -10
- package/lib/layout/text/linkify.component.d.ts +0 -13
- package/lib/layout/text/number.limit.component.d.ts +0 -40
- package/lib/layout/text/text.chip.directive.d.ts +0 -9
- package/lib/layout/text/text.chips.component.d.ts +0 -15
- package/lib/layout/text/text.module.d.ts +0 -17
- package/lib/loading/basic-loading.component.d.ts +0 -32
- package/lib/loading/index.d.ts +0 -6
- package/lib/loading/loading-progress.component.d.ts +0 -23
- package/lib/loading/loading.action.directive.d.ts +0 -16
- package/lib/loading/loading.component.d.ts +0 -46
- package/lib/loading/loading.d.ts +0 -10
- package/lib/loading/loading.module.d.ts +0 -10
- package/lib/router/index.d.ts +0 -2
- package/lib/router/layout/anchor/anchor.component.d.ts +0 -23
- package/lib/router/layout/anchor/anchor.content.component.d.ts +0 -20
- package/lib/router/layout/anchor/anchor.icon.component.d.ts +0 -11
- package/lib/router/layout/anchor/anchor.link.component.d.ts +0 -14
- package/lib/router/layout/anchor/anchor.module.d.ts +0 -23
- package/lib/router/layout/anchor/anchor.segue.directive.d.ts +0 -17
- package/lib/router/layout/anchor/index.d.ts +0 -6
- package/lib/router/layout/anchorlist/anchorlist.component.d.ts +0 -16
- package/lib/router/layout/anchorlist/anchorlist.module.d.ts +0 -10
- package/lib/router/layout/anchorlist/index.d.ts +0 -2
- package/lib/router/layout/index.d.ts +0 -6
- package/lib/router/layout/layout.module.d.ts +0 -11
- package/lib/router/layout/list/index.d.ts +0 -2
- package/lib/router/layout/list/list.module.d.ts +0 -10
- package/lib/router/layout/list/router.list.directive.d.ts +0 -15
- package/lib/router/layout/navbar/index.d.ts +0 -2
- package/lib/router/layout/navbar/navbar.component.d.ts +0 -48
- package/lib/router/layout/navbar/navbar.module.d.ts +0 -10
- package/lib/router/layout/sidenav/index.d.ts +0 -7
- package/lib/router/layout/sidenav/sidenav.button.component.d.ts +0 -18
- package/lib/router/layout/sidenav/sidenav.component.d.ts +0 -36
- package/lib/router/layout/sidenav/sidenav.d.ts +0 -6
- package/lib/router/layout/sidenav/sidenav.ifdisplaymode.directive.d.ts +0 -19
- package/lib/router/layout/sidenav/sidenav.module.d.ts +0 -11
- package/lib/router/layout/sidenav/sidenav.page.component.d.ts +0 -19
- package/lib/router/layout/sidenav/sidenav.pagebar.component.d.ts +0 -11
- package/lib/router/provider/index.d.ts +0 -3
- package/lib/router/provider/ngrouter/anchor.component.d.ts +0 -14
- package/lib/router/provider/ngrouter/angular.router.providers.d.ts +0 -7
- package/lib/router/provider/ngrouter/index.d.ts +0 -2
- package/lib/router/provider/router.provider.config.d.ts +0 -14
- package/lib/router/provider/uirouter/anchor.component.d.ts +0 -19
- package/lib/router/provider/uirouter/index.d.ts +0 -2
- package/lib/router/provider/uirouter/uirouter.router.providers.d.ts +0 -7
- package/lib/screen/index.d.ts +0 -5
- package/lib/screen/resize.d.ts +0 -19
- package/lib/screen/resize.directive.d.ts +0 -14
- package/lib/screen/screen.d.ts +0 -36
- package/lib/screen/screen.providers.d.ts +0 -15
- package/lib/screen/screen.service.d.ts +0 -59
- package/lib/util/cdk.d.ts +0 -9
- package/lib/util/click.d.ts +0 -29
- package/lib/util/clipboard.d.ts +0 -78
- package/lib/util/clipboard.directive.d.ts +0 -12
- package/lib/util/index.d.ts +0 -4
- package/mapbox/index.d.ts +0 -1
- package/mapbox/lib/index.d.ts +0 -21
- package/mapbox/lib/mapbox.change.service.d.ts +0 -20
- package/mapbox/lib/mapbox.d.ts +0 -93
- package/mapbox/lib/mapbox.injection.component.d.ts +0 -11
- package/mapbox/lib/mapbox.injection.store.d.ts +0 -45
- package/mapbox/lib/mapbox.injection.store.provide.d.ts +0 -23
- package/mapbox/lib/mapbox.layout.component.d.ts +0 -56
- package/mapbox/lib/mapbox.layout.drawer.component.d.ts +0 -11
- package/mapbox/lib/mapbox.layout.resize.sync.directive.d.ts +0 -14
- package/mapbox/lib/mapbox.marker.component.d.ts +0 -16
- package/mapbox/lib/mapbox.marker.d.ts +0 -65
- package/mapbox/lib/mapbox.markers.component.d.ts +0 -14
- package/mapbox/lib/mapbox.menu.component.d.ts +0 -29
- package/mapbox/lib/mapbox.module.d.ts +0 -16
- package/mapbox/lib/mapbox.options.d.ts +0 -11
- package/mapbox/lib/mapbox.providers.d.ts +0 -17
- package/mapbox/lib/mapbox.rxjs.d.ts +0 -45
- package/mapbox/lib/mapbox.service.d.ts +0 -24
- package/mapbox/lib/mapbox.store.d.ts +0 -239
- package/mapbox/lib/mapbox.store.map.directive.d.ts +0 -17
- package/mapbox/lib/mapbox.store.provide.d.ts +0 -23
- package/mapbox/lib/mapbox.util.d.ts +0 -27
- package/table/index.d.ts +0 -1
- package/table/lib/date/date.table.column.header.component.d.ts +0 -18
- package/table/lib/date/daterange.table.cell.input.component.d.ts +0 -69
- package/table/lib/date/index.d.ts +0 -3
- package/table/lib/date/table.date.module.d.ts +0 -8
- package/table/lib/index.d.ts +0 -23
- package/table/lib/table.cell.action.component.d.ts +0 -9
- package/table/lib/table.cell.input.component.d.ts +0 -12
- package/table/lib/table.cell.summaryend.component.d.ts +0 -9
- package/table/lib/table.cell.summarystart.component.d.ts +0 -12
- package/table/lib/table.column.directive.d.ts +0 -14
- package/table/lib/table.column.footer.component.d.ts +0 -8
- package/table/lib/table.column.header.component.d.ts +0 -8
- package/table/lib/table.column.size.d.ts +0 -2
- package/table/lib/table.column.size.directive.d.ts +0 -29
- package/table/lib/table.component.d.ts +0 -59
- package/table/lib/table.d.ts +0 -143
- package/table/lib/table.directive.d.ts +0 -16
- package/table/lib/table.fullsummaryrow.component.d.ts +0 -12
- package/table/lib/table.group.directive.d.ts +0 -14
- package/table/lib/table.group.footer.component.d.ts +0 -9
- package/table/lib/table.group.header.component.d.ts +0 -9
- package/table/lib/table.item.action.component.d.ts +0 -9
- package/table/lib/table.item.cell.component.d.ts +0 -12
- package/table/lib/table.item.directive.d.ts +0 -13
- package/table/lib/table.item.header.component.d.ts +0 -8
- package/table/lib/table.module.d.ts +0 -8
- package/table/lib/table.reader.d.ts +0 -102
- package/table/lib/table.store.d.ts +0 -42
package/LICENSE
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { Injectable, inject,
|
|
2
|
+
import { Injectable, inject, ChangeDetectionStrategy, Component, output, computed, importProvidersFrom } from '@angular/core';
|
|
3
3
|
import { isSameDay, startOfDay, endOfDay, startOfWeek, endOfWeek, startOfMonth, endOfMonth, differenceInDays, isAfter, isBefore, addDays, isSameMonth } from 'date-fns';
|
|
4
4
|
import * as i1$1 from 'angular-calendar';
|
|
5
5
|
import { CalendarModule, CalendarDayModule, CalendarWeekModule, DateAdapter } from 'angular-calendar';
|
|
@@ -16,8 +16,8 @@ import { MatButtonModule } from '@angular/material/button';
|
|
|
16
16
|
import { DbxButtonSpacerDirective } from '@dereekb/dbx-web';
|
|
17
17
|
import * as i2 from '@angular/material/icon';
|
|
18
18
|
import { MatIconModule } from '@angular/material/icon';
|
|
19
|
-
import * as
|
|
20
|
-
import * as
|
|
19
|
+
import * as i3 from '@ngbracket/ngx-layout/flex';
|
|
20
|
+
import * as i4 from '@ngbracket/ngx-layout/extended';
|
|
21
21
|
import { NgClass } from '@angular/common';
|
|
22
22
|
import { adapterFactory } from 'angular-calendar/date-adapters/date-fns';
|
|
23
23
|
|
|
@@ -160,10 +160,10 @@ class DbxCalendarStore extends ComponentStore {
|
|
|
160
160
|
setNavigationRangeLimit = this.updater((state, navigationRangeLimit) => updateCalendarStateWithNavigationRangeLimit(state, navigationRangeLimit));
|
|
161
161
|
setShowTodayButton = this.updater((state, showTodayButton) => ({ ...state, showTodayButton: showTodayButton != null ? showTodayButton : true }));
|
|
162
162
|
setShowPageButtons = this.updater((state, showPageButtons) => ({ ...state, showPageButtons: showPageButtons != null ? showPageButtons : false }));
|
|
163
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
164
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
163
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.0", ngImport: i0, type: DbxCalendarStore, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
164
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.0", ngImport: i0, type: DbxCalendarStore });
|
|
165
165
|
}
|
|
166
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
166
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.0", ngImport: i0, type: DbxCalendarStore, decorators: [{
|
|
167
167
|
type: Injectable
|
|
168
168
|
}], ctorParameters: () => [] });
|
|
169
169
|
function updateCalendarStateWithTappedDate(state, date) {
|
|
@@ -260,10 +260,10 @@ class DbxCalendarBaseComponent {
|
|
|
260
260
|
typeToggleChanged(event) {
|
|
261
261
|
this.calendarStore.setDisplayType(event.value);
|
|
262
262
|
}
|
|
263
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
264
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
263
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.0", ngImport: i0, type: DbxCalendarBaseComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
264
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.0", type: DbxCalendarBaseComponent, isStandalone: true, selector: "dbx-calendar-base", ngImport: i0, template: "<div class=\"dbx-calendar\">\n <h3 class=\"dbx-calendar-title\">{{ viewDateSignal() | calendarDate: displayTypeSignal() + 'ViewTitle' : 'en' }}</h3>\n <div class=\"dbx-calendar-header\">\n <div class=\"dbx-calendar-controls\" fxLayout=\"row\" fxLayout.xs=\"column\" ngClass.xs=\"dbx-calendar-controls-compact\">\n <span class=\"dbx-calendar-controls-left dbx-flex-bar\" fxFlex=\"nogrow\">\n @if (showTodayButtonSignal()) {\n <button mat-stroked-button [disabled]=\"!canJumpToTodaySignal()\" (click)=\"todayClicked()\">Today</button>\n }\n <dbx-button-spacer></dbx-button-spacer>\n @if (hasMultiplePagesSignal()) {\n <div class=\"d-iblock\">\n @if (showPageButtonsSignal()) {\n <button mat-icon-button [disabled]=\"isLookingAtMinimumDateSignal()\" aria-label=\"first page button\" (click)=\"firstPageButtonClicked()\">\n <mat-icon>first_page</mat-icon>\n </button>\n }\n <button mat-icon-button [disabled]=\"isLookingAtMinimumDateSignal()\" [attr.aria-label]=\"'Previous ' + displayTypeSignal() + ' button'\" (click)=\"previousButtonClicked()\">\n <mat-icon>navigate_before</mat-icon>\n </button>\n <button mat-icon-button [disabled]=\"isLookingAtMaximumDateSignal()\" [attr.aria-label]=\"'Next ' + displayTypeSignal() + ' button'\" (click)=\"nextButtonClicked()\">\n <mat-icon>navigate_next</mat-icon>\n </button>\n @if (showPageButtonsSignal()) {\n <button mat-icon-button [disabled]=\"isLookingAtMaximumDateSignal()\" aria-label=\"last page button\" (click)=\"lastPageButtonClicked()\">\n <mat-icon>last_page</mat-icon>\n </button>\n }\n </div>\n }\n </span>\n <span class=\"spacer\"></span>\n <span class=\"dbx-calendar-controls-right\" fxFlex=\"nogrow\">\n <ng-content select=\"[controls]\"></ng-content>\n </span>\n </div>\n </div>\n <ng-content></ng-content>\n</div>\n", dependencies: [{ kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i1.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i1.MatIconButton, selector: "button[mat-icon-button], a[mat-icon-button], button[matIconButton], a[matIconButton]", exportAs: ["matButton", "matAnchor"] }, { kind: "ngmodule", type: MatButtonToggleModule }, { kind: "directive", type: DbxButtonSpacerDirective, selector: "dbx-button-spacer,[dbxButtonSpacer]" }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: CalendarModule }, { kind: "ngmodule", type: FlexLayoutModule }, { kind: "directive", type: i3.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i3.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { kind: "directive", type: i4.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }, { kind: "pipe", type: i1$1.CalendarDatePipe, name: "calendarDate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
265
265
|
}
|
|
266
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
266
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.0", ngImport: i0, type: DbxCalendarBaseComponent, decorators: [{
|
|
267
267
|
type: Component,
|
|
268
268
|
args: [{ selector: 'dbx-calendar-base', standalone: true, imports: [MatButtonModule, MatButtonToggleModule, DbxButtonSpacerDirective, MatIconModule, CalendarModule, FlexLayoutModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"dbx-calendar\">\n <h3 class=\"dbx-calendar-title\">{{ viewDateSignal() | calendarDate: displayTypeSignal() + 'ViewTitle' : 'en' }}</h3>\n <div class=\"dbx-calendar-header\">\n <div class=\"dbx-calendar-controls\" fxLayout=\"row\" fxLayout.xs=\"column\" ngClass.xs=\"dbx-calendar-controls-compact\">\n <span class=\"dbx-calendar-controls-left dbx-flex-bar\" fxFlex=\"nogrow\">\n @if (showTodayButtonSignal()) {\n <button mat-stroked-button [disabled]=\"!canJumpToTodaySignal()\" (click)=\"todayClicked()\">Today</button>\n }\n <dbx-button-spacer></dbx-button-spacer>\n @if (hasMultiplePagesSignal()) {\n <div class=\"d-iblock\">\n @if (showPageButtonsSignal()) {\n <button mat-icon-button [disabled]=\"isLookingAtMinimumDateSignal()\" aria-label=\"first page button\" (click)=\"firstPageButtonClicked()\">\n <mat-icon>first_page</mat-icon>\n </button>\n }\n <button mat-icon-button [disabled]=\"isLookingAtMinimumDateSignal()\" [attr.aria-label]=\"'Previous ' + displayTypeSignal() + ' button'\" (click)=\"previousButtonClicked()\">\n <mat-icon>navigate_before</mat-icon>\n </button>\n <button mat-icon-button [disabled]=\"isLookingAtMaximumDateSignal()\" [attr.aria-label]=\"'Next ' + displayTypeSignal() + ' button'\" (click)=\"nextButtonClicked()\">\n <mat-icon>navigate_next</mat-icon>\n </button>\n @if (showPageButtonsSignal()) {\n <button mat-icon-button [disabled]=\"isLookingAtMaximumDateSignal()\" aria-label=\"last page button\" (click)=\"lastPageButtonClicked()\">\n <mat-icon>last_page</mat-icon>\n </button>\n }\n </div>\n }\n </span>\n <span class=\"spacer\"></span>\n <span class=\"dbx-calendar-controls-right\" fxFlex=\"nogrow\">\n <ng-content select=\"[controls]\"></ng-content>\n </span>\n </div>\n </div>\n <ng-content></ng-content>\n</div>\n" }]
|
|
269
269
|
}] });
|
|
@@ -284,7 +284,7 @@ class DbxCalendarComponent {
|
|
|
284
284
|
eventsSignal = toSignal(this.events$, { initialValue: [] });
|
|
285
285
|
activeDayIsOpenSignal = toSignal(this.activeDayIsOpen$, { initialValue: true });
|
|
286
286
|
displayTypeSignal = toSignal(this.displayType$);
|
|
287
|
-
displayTypeClassSignal = computed(() => `dbx-calendar-content-${this.displayTypeSignal()}
|
|
287
|
+
displayTypeClassSignal = computed(() => `dbx-calendar-content-${this.displayTypeSignal()}`, ...(ngDevMode ? [{ debugName: "displayTypeClassSignal" }] : []));
|
|
288
288
|
todayClicked() {
|
|
289
289
|
this.dayClicked({ date: new Date() });
|
|
290
290
|
}
|
|
@@ -303,30 +303,13 @@ class DbxCalendarComponent {
|
|
|
303
303
|
typeToggleChanged(event) {
|
|
304
304
|
this.calendarStore.setDisplayType(event.value);
|
|
305
305
|
}
|
|
306
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
307
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
306
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.0", ngImport: i0, type: DbxCalendarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
307
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.0", type: DbxCalendarComponent, isStandalone: true, selector: "dbx-calendar", outputs: { clickEvent: "clickEvent" }, ngImport: i0, template: "<dbx-calendar-base>\n <ng-container controls>\n <mat-button-toggle-group name=\"calendarDisplayStyle\" [value]=\"displayTypeSignal()\" (change)=\"typeToggleChanged($event)\" aria-label=\"Display Style\">\n <mat-button-toggle value=\"month\">Month</mat-button-toggle>\n <mat-button-toggle value=\"week\">Week</mat-button-toggle>\n <mat-button-toggle value=\"day\">Day</mat-button-toggle>\n </mat-button-toggle-group>\n </ng-container>\n <div class=\"dbx-calendar-content\" [ngClass]=\"displayTypeClassSignal()\">\n @switch (displayTypeSignal()) {\n @case ('month') {\n <mwl-calendar-month-view [viewDate]=\"viewDateSignal()\" [events]=\"eventsSignal()\" [activeDayIsOpen]=\"activeDayIsOpenSignal()\" (dayClicked)=\"dayClicked($event.day)\" (eventClicked)=\"eventClicked('Clicked', $event.event)\"></mwl-calendar-month-view>\n }\n @case ('week') {\n <mwl-calendar-week-view [viewDate]=\"viewDateSignal()\" [events]=\"eventsSignal()\" (eventClicked)=\"eventClicked('Clicked', $event.event)\"></mwl-calendar-week-view>\n }\n @case ('day') {\n <mwl-calendar-day-view [viewDate]=\"viewDateSignal()\" [events]=\"eventsSignal()\" (eventClicked)=\"eventClicked('Clicked', $event.event)\"></mwl-calendar-day-view>\n }\n }\n </div>\n</dbx-calendar-base>\n", dependencies: [{ kind: "component", type: DbxCalendarBaseComponent, selector: "dbx-calendar-base" }, { kind: "ngmodule", type: CalendarModule }, { kind: "component", type: i1$1.CalendarMonthViewComponent, selector: "mwl-calendar-month-view", inputs: ["viewDate", "events", "excludeDays", "activeDayIsOpen", "activeDay", "refresh", "locale", "tooltipPlacement", "tooltipTemplate", "tooltipAppendToBody", "tooltipDelay", "weekStartsOn", "headerTemplate", "cellTemplate", "openDayEventsTemplate", "eventTitleTemplate", "eventActionsTemplate", "weekendDays"], outputs: ["beforeViewRender", "dayClicked", "eventClicked", "columnHeaderClicked", "eventTimesChanged"] }, { kind: "component", type: i1$1.CalendarWeekViewComponent, selector: "mwl-calendar-week-view", inputs: ["viewDate", "events", "excludeDays", "refresh", "locale", "tooltipPlacement", "tooltipTemplate", "tooltipAppendToBody", "tooltipDelay", "weekStartsOn", "headerTemplate", "eventTemplate", "eventTitleTemplate", "eventActionsTemplate", "precision", "weekendDays", "snapDraggedEvents", "hourSegments", "hourDuration", "hourSegmentHeight", "minimumEventHeight", "dayStartHour", "dayStartMinute", "dayEndHour", "dayEndMinute", "hourSegmentTemplate", "eventSnapSize", "allDayEventsLabelTemplate", "daysInWeek", "currentTimeMarkerTemplate", "validateEventTimesChanged", "resizeCursors"], outputs: ["dayHeaderClicked", "eventClicked", "eventTimesChanged", "beforeViewRender", "hourSegmentClicked"] }, { kind: "component", type: i1$1.CalendarDayViewComponent, selector: "mwl-calendar-day-view", inputs: ["viewDate", "events", "hourSegments", "hourSegmentHeight", "hourDuration", "minimumEventHeight", "dayStartHour", "dayStartMinute", "dayEndHour", "dayEndMinute", "refresh", "locale", "eventSnapSize", "tooltipPlacement", "tooltipTemplate", "tooltipAppendToBody", "tooltipDelay", "hourSegmentTemplate", "eventTemplate", "eventTitleTemplate", "eventActionsTemplate", "snapDraggedEvents", "allDayEventsLabelTemplate", "currentTimeMarkerTemplate", "validateEventTimesChanged", "resizeCursors"], outputs: ["eventClicked", "hourSegmentClicked", "eventTimesChanged", "beforeViewRender"] }, { kind: "ngmodule", type: CalendarDayModule }, { kind: "ngmodule", type: CalendarWeekModule }, { kind: "ngmodule", type: MatButtonToggleModule }, { kind: "directive", type: i2$1.MatButtonToggleGroup, selector: "mat-button-toggle-group", inputs: ["appearance", "name", "vertical", "value", "multiple", "disabled", "disabledInteractive", "hideSingleSelectionIndicator", "hideMultipleSelectionIndicator"], outputs: ["valueChange", "change"], exportAs: ["matButtonToggleGroup"] }, { kind: "component", type: i2$1.MatButtonToggle, selector: "mat-button-toggle", inputs: ["aria-label", "aria-labelledby", "id", "name", "value", "tabIndex", "disableRipple", "appearance", "checked", "disabled", "disabledInteractive"], outputs: ["change"], exportAs: ["matButtonToggle"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
308
308
|
}
|
|
309
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
309
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.0", ngImport: i0, type: DbxCalendarComponent, decorators: [{
|
|
310
310
|
type: Component,
|
|
311
311
|
args: [{ selector: 'dbx-calendar', imports: [DbxCalendarBaseComponent, CalendarModule, CalendarDayModule, CalendarWeekModule, MatButtonToggleModule, NgClass], changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, template: "<dbx-calendar-base>\n <ng-container controls>\n <mat-button-toggle-group name=\"calendarDisplayStyle\" [value]=\"displayTypeSignal()\" (change)=\"typeToggleChanged($event)\" aria-label=\"Display Style\">\n <mat-button-toggle value=\"month\">Month</mat-button-toggle>\n <mat-button-toggle value=\"week\">Week</mat-button-toggle>\n <mat-button-toggle value=\"day\">Day</mat-button-toggle>\n </mat-button-toggle-group>\n </ng-container>\n <div class=\"dbx-calendar-content\" [ngClass]=\"displayTypeClassSignal()\">\n @switch (displayTypeSignal()) {\n @case ('month') {\n <mwl-calendar-month-view [viewDate]=\"viewDateSignal()\" [events]=\"eventsSignal()\" [activeDayIsOpen]=\"activeDayIsOpenSignal()\" (dayClicked)=\"dayClicked($event.day)\" (eventClicked)=\"eventClicked('Clicked', $event.event)\"></mwl-calendar-month-view>\n }\n @case ('week') {\n <mwl-calendar-week-view [viewDate]=\"viewDateSignal()\" [events]=\"eventsSignal()\" (eventClicked)=\"eventClicked('Clicked', $event.event)\"></mwl-calendar-week-view>\n }\n @case ('day') {\n <mwl-calendar-day-view [viewDate]=\"viewDateSignal()\" [events]=\"eventsSignal()\" (eventClicked)=\"eventClicked('Clicked', $event.event)\"></mwl-calendar-day-view>\n }\n }\n </div>\n</dbx-calendar-base>\n" }]
|
|
312
|
-
}] });
|
|
313
|
-
|
|
314
|
-
const importsAndExports = [DbxCalendarBaseComponent, DbxCalendarComponent];
|
|
315
|
-
/**
|
|
316
|
-
* @deprecated import DbxCalendarBaseComponent, and DbxCalendarComponent directly
|
|
317
|
-
*/
|
|
318
|
-
class DbxCalendarModule {
|
|
319
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxCalendarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
320
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: DbxCalendarModule, imports: [DbxCalendarBaseComponent, DbxCalendarComponent], exports: [DbxCalendarBaseComponent, DbxCalendarComponent] });
|
|
321
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxCalendarModule, imports: [importsAndExports] });
|
|
322
|
-
}
|
|
323
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxCalendarModule, decorators: [{
|
|
324
|
-
type: NgModule,
|
|
325
|
-
args: [{
|
|
326
|
-
imports: importsAndExports,
|
|
327
|
-
exports: importsAndExports
|
|
328
|
-
}]
|
|
329
|
-
}] });
|
|
312
|
+
}], propDecorators: { clickEvent: [{ type: i0.Output, args: ["clickEvent"] }] } });
|
|
330
313
|
|
|
331
314
|
/**
|
|
332
315
|
* Provides default configuration for the DbxCalendarModule
|
|
@@ -340,5 +323,5 @@ function provideDbxCalendar() {
|
|
|
340
323
|
* Generated bundle index. Do not edit.
|
|
341
324
|
*/
|
|
342
325
|
|
|
343
|
-
export { CalendarDisplayType, DbxCalendarBaseComponent, DbxCalendarComponent,
|
|
326
|
+
export { CalendarDisplayType, DbxCalendarBaseComponent, DbxCalendarComponent, DbxCalendarStore, isCalendarViewDateRangeEqual, prepareAndSortCalendarEvents, provideDbxCalendar, updateCalendarStateWithNavigationRangeLimit, updateCalendarStateWithTappedDate, visibleDateRangeForCalendarState };
|
|
344
327
|
//# sourceMappingURL=dereekb-dbx-web-calendar.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dereekb-dbx-web-calendar.mjs","sources":["../../../../packages/dbx-web/calendar/src/lib/calendar.store.ts","../../../../packages/dbx-web/calendar/src/lib/calendar.ts","../../../../packages/dbx-web/calendar/src/lib/calendar.base.component.ts","../../../../packages/dbx-web/calendar/src/lib/calendar.base.component.html","../../../../packages/dbx-web/calendar/src/lib/calendar.component.ts","../../../../packages/dbx-web/calendar/src/lib/calendar.component.html","../../../../packages/dbx-web/calendar/src/lib/calendar.module.ts","../../../../packages/dbx-web/calendar/src/lib/calendar.provider.ts","../../../../packages/dbx-web/calendar/src/dereekb-dbx-web-calendar.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { clampDateToDateRange, DateRange, dateRangeOverlapsDateRangeFunction, isDateInDateRange, isFullDateRange, isSameDateDay, isSameDateRange } from '@dereekb/date';\nimport { invertDecision, Maybe, reduceBooleansWithAndFn } from '@dereekb/util';\nimport { ComponentStore } from '@ngrx/component-store';\nimport { CalendarEvent } from 'angular-calendar';\nimport { differenceInDays, addDays, endOfDay, endOfMonth, endOfWeek, isSameDay, startOfDay, startOfMonth, startOfWeek, isBefore, isAfter } from 'date-fns';\nimport { Observable, distinctUntilChanged, first, map, shareReplay, switchMap, tap, combineLatest } from 'rxjs';\n\nexport enum CalendarDisplayType {\n MONTH = 'month',\n WEEK = 'week',\n DAY = 'day'\n}\n\nexport interface CalendarViewDateRange {\n readonly type: CalendarDisplayType;\n readonly start: Date;\n readonly end: Date;\n readonly distance: number;\n /**\n * Whether or not the min navigation date is currently visible. This implies that we're at the minimum date.\n */\n readonly isMinDateVisible: boolean;\n /**\n * Whether or not the maximum navigation date is visible. This implies that we're at the maximum date.\n */\n readonly isMaxDateVisible: boolean;\n}\n\nexport function isCalendarViewDateRangeEqual(a: CalendarViewDateRange, b: CalendarViewDateRange): boolean {\n return a.type === b.type && isSameDay(a.start, b.start) && isSameDay(a.end, b.end) && a.distance === b.distance && a.isMinDateVisible === b.isMinDateVisible && a.isMaxDateVisible === b.isMaxDateVisible;\n}\n\nexport interface CalendarState<T = any> {\n /**\n * Calendar display mode\n */\n readonly type: CalendarDisplayType;\n /**\n * Whether or not to show the today button. Defaults to true.\n */\n readonly showTodayButton?: boolean;\n /**\n * Date that is selected.\n */\n readonly date: Date;\n /**\n * Whether or not the day was tapped/set twice.\n */\n readonly dateTappedTwice: boolean;\n /**\n * Set of calendar events.\n */\n readonly events: CalendarEvent<T>[];\n /**\n * Optional navigation range limitation that limits which dates can be navigated to.\n */\n readonly navigationRangeLimit?: Maybe<Partial<DateRange>>;\n /**\n * Whether or not to display the page buttons when applicable. Can only be displayed when a navigationRangeLimit is set.\n */\n readonly showPageButtons?: boolean;\n}\n\nexport function visibleDateRangeForCalendarState(calendarState: CalendarState): CalendarViewDateRange {\n const { navigationRangeLimit, type, date } = calendarState;\n\n let start: Date;\n let end: Date;\n let distance: number;\n\n switch (type) {\n case CalendarDisplayType.MONTH:\n start = startOfDay(startOfWeek(startOfMonth(date), { weekStartsOn: 0 }));\n end = endOfWeek(endOfMonth(date));\n distance = differenceInDays(end, start) + 1;\n break;\n case CalendarDisplayType.WEEK:\n start = startOfWeek(date);\n end = endOfWeek(start);\n distance = 7; // 7 days in a week.\n break;\n case CalendarDisplayType.DAY:\n start = startOfDay(date);\n end = endOfDay(date);\n distance = 1;\n break;\n }\n\n const isMinDateVisible: boolean = navigationRangeLimit?.start != null ? !isAfter(start, navigationRangeLimit.start) : false;\n const isMaxDateVisible: boolean = navigationRangeLimit?.end != null ? !isBefore(end, navigationRangeLimit.end) : false;\n\n // TODO: Consider changing min/max date visible logical utility to be fully within the current month or not,\n // not just visible, since it can change to a locked out calendar and doesn't feel as UI friendly.\n\n const result = {\n type,\n start,\n end,\n distance,\n isMinDateVisible,\n isMaxDateVisible\n };\n\n return result;\n}\n\nconst distinctUntilDateOrTypeOrEventsChanged = distinctUntilChanged<CalendarState>((a, b) => a?.date === b?.date && a?.type === b?.type && a?.events === b?.events);\n\n@Injectable()\nexport class DbxCalendarStore<T = any> extends ComponentStore<CalendarState<T>> {\n constructor() {\n super({\n type: CalendarDisplayType.MONTH,\n showTodayButton: true,\n date: new Date(),\n dateTappedTwice: false,\n events: []\n });\n }\n\n // MARK: Effects\n readonly tapFirstPage = this.effect((input: Observable<void>) => {\n return input.pipe(\n switchMap(() =>\n this.minNavigationDate$.pipe(\n first(),\n tap((x) => {\n if (x) {\n this.tapDay(x);\n }\n })\n )\n )\n );\n });\n\n readonly tapNext = this.effect((input: Observable<void>) => {\n return input.pipe(\n switchMap(() =>\n this.visibleDateRange$.pipe(\n first(),\n tap(({ end, isMaxDateVisible }) => {\n if (!isMaxDateVisible) {\n this.tapDay(addDays(end, 1));\n }\n })\n )\n )\n );\n });\n\n readonly tapPrevious = this.effect((input: Observable<void>) => {\n return input.pipe(\n switchMap(() =>\n this.visibleDateRange$.pipe(\n first(),\n tap(({ start, isMinDateVisible }) => {\n if (!isMinDateVisible) {\n this.tapDay(addDays(start, -1));\n }\n })\n )\n )\n );\n });\n\n readonly tapLastPage = this.effect((input: Observable<void>) => {\n return input.pipe(\n switchMap(() =>\n this.maxNavigationDate$.pipe(\n first(),\n tap((x) => {\n if (x) {\n this.tapDay(x);\n }\n })\n )\n )\n );\n });\n\n // MARK: Accessors\n\n readonly showTodayButton$ = this.state$.pipe(\n map((x) => x.showTodayButton),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n readonly date$ = this.state$.pipe(map((x) => x.date));\n readonly dateTappedTwice$ = this.state$.pipe(map((x) => x.dateTappedTwice));\n\n readonly events$ = this.state$.pipe(\n map((x) => x.events),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n /**\n * Returns the events that match the tapped date range state.\n */\n readonly eventsForDateState$ = this.state$.pipe(\n distinctUntilDateOrTypeOrEventsChanged,\n map((state) => ({\n date: state.date,\n events: state.events.filter((x) => isSameDay(x.start, state.date) || (x.end && isBefore(x.start, state.date) && isAfter(x.end, state.date))),\n dateTappedTwice: state.dateTappedTwice\n })),\n shareReplay(1)\n );\n\n readonly eventsForDate$ = this.eventsForDateState$.pipe(map((state) => state.events));\n\n readonly visibleDateRange$: Observable<CalendarViewDateRange> = this.state$.pipe(map(visibleDateRangeForCalendarState), distinctUntilChanged(isCalendarViewDateRangeEqual), shareReplay(1));\n\n readonly visibleEvents$ = combineLatest([this.events$, this.visibleDateRange$]).pipe(\n map(([events, dateRange]) => {\n const isEventInDateRange = dateRangeOverlapsDateRangeFunction(dateRange);\n return events.filter((x) => isEventInDateRange(x));\n }),\n shareReplay(1)\n );\n\n readonly isLookingAtToday$ = this.visibleDateRange$.pipe(\n map((x) => isDateInDateRange(new Date(), x)),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n readonly isLookingAtMinimumDate$ = this.visibleDateRange$.pipe(\n map((x) => x.isMinDateVisible),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n readonly isLookingAtMaximumDate$ = this.visibleDateRange$.pipe(\n map((x) => x.isMaxDateVisible),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n readonly hasMultiplePages$ = combineLatest([this.isLookingAtMinimumDate$, this.isLookingAtMaximumDate$]).pipe(map(invertDecision(reduceBooleansWithAndFn(true))), distinctUntilChanged(), shareReplay(1));\n\n readonly displayType$ = this.state$.pipe(\n map((x) => x.type),\n distinctUntilChanged((a, b) => a === b),\n shareReplay(1)\n );\n\n readonly navigationRangeLimit$ = this.state$.pipe(\n map((x) => x.navigationRangeLimit),\n distinctUntilChanged(isSameDateRange),\n shareReplay(1)\n );\n\n readonly minNavigationDate$: Observable<Maybe<Date>> = this.navigationRangeLimit$.pipe(\n map((x) => x?.start),\n distinctUntilChanged(isSameDateDay),\n shareReplay(1)\n );\n\n readonly maxNavigationDate$: Observable<Maybe<Date>> = this.navigationRangeLimit$.pipe(\n map((x) => x?.end),\n distinctUntilChanged(isSameDateDay),\n shareReplay(1)\n );\n\n readonly isTodayInNavigationRangeLimit$ = this.navigationRangeLimit$.pipe(\n map((x) => isDateInDateRange(new Date(), x ?? {})),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n readonly canJumpToToday$ = combineLatest([this.isLookingAtToday$, this.isTodayInNavigationRangeLimit$]).pipe(\n map(([isLookingAtToday, isTodayInNavigationRangeLimit]) => !isLookingAtToday && isTodayInNavigationRangeLimit),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n readonly canShowPageButtons$ = this.state$.pipe(\n map((x) => x.showPageButtons && x.navigationRangeLimit && isFullDateRange(x.navigationRangeLimit)),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n readonly showPageButtons$ = combineLatest([this.canShowPageButtons$, this.isLookingAtMinimumDate$, this.isLookingAtMaximumDate$]).pipe(\n map(([canShowPageButtons, isLookingAtMinimumDate, isLookingAtMaximumDate]) => {\n return canShowPageButtons && !(isLookingAtMinimumDate && isLookingAtMaximumDate);\n }),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n // MARK: State Changes\n /**\n * Tap a day.\n *\n * - If the same day is presented, dateTappedTwice is flipped.\n */\n readonly tapDay = this.updater((state, date: Date) => updateCalendarStateWithTappedDate(state, date));\n\n /**\n * Set all events on the calendar.\n */\n readonly setEvents = this.updater((state, events: CalendarEvent<T>[]) => ({ ...state, events }));\n\n /**\n * Set all events on the calendar.\n */\n readonly setDisplayType = this.updater((state, type: CalendarDisplayType) => ({ ...state, type }));\n\n /**\n * Sets the navigation limit.\n */\n readonly setNavigationRangeLimit = this.updater((state, navigationRangeLimit: Maybe<Partial<DateRange>>) => updateCalendarStateWithNavigationRangeLimit(state, navigationRangeLimit));\n\n readonly setShowTodayButton = this.updater((state, showTodayButton: Maybe<boolean>) => ({ ...state, showTodayButton: showTodayButton != null ? showTodayButton : true }));\n readonly setShowPageButtons = this.updater((state, showPageButtons: Maybe<boolean>) => ({ ...state, showPageButtons: showPageButtons != null ? showPageButtons : false }));\n}\n\nexport function updateCalendarStateWithTappedDate(state: CalendarState, date: Date) {\n // only update the date if it is different\n if (!isSameDateDay(state.date, date)) {\n // Only update the date if it is within the date range\n if (!state.navigationRangeLimit || isDateInDateRange(date, state.navigationRangeLimit)) {\n state = { ...state, date, dateTappedTwice: isSameDay(date, state.date) ? !state.dateTappedTwice : false };\n }\n }\n\n return state;\n}\n\nexport function updateCalendarStateWithNavigationRangeLimit(state: CalendarState, navigationRangeLimit: Maybe<Partial<DateRange>>) {\n const { date } = state;\n\n // cap the date if it doesn't fall within the range.\n if (navigationRangeLimit && !isDateInDateRange(date, navigationRangeLimit)) {\n const clampedDate = clampDateToDateRange(date, navigationRangeLimit);\n return { ...state, date: clampedDate, navigationRangeLimit };\n } else {\n return { ...state, navigationRangeLimit };\n }\n}\n","import { formatToTimeAndDurationString, sortDateRangeStartAscendingCompareFunction } from '@dereekb/date';\nimport { type CalendarEvent } from 'angular-calendar';\n\nexport interface DbxCalendarEvent<T> {\n event: CalendarEvent<T>;\n action?: string;\n}\n\nfunction timeSubtitleForEvent(event: CalendarEvent): string {\n let subtitle;\n\n if (event.allDay) {\n subtitle = `(All Day)`;\n } else {\n subtitle = formatToTimeAndDurationString(event.start, event.end ?? new Date());\n }\n\n return subtitle;\n}\n\nexport function prepareAndSortCalendarEvents(events: CalendarEvent[]): CalendarEvent[] {\n return events\n .map((event: CalendarEvent) => {\n const subtitle = timeSubtitleForEvent(event);\n let title;\n\n if (event.allDay) {\n title = event.title + ' ' + subtitle;\n } else {\n title = `${event.title} - ${subtitle}`;\n }\n\n return {\n ...event,\n title\n };\n })\n .sort(sortDateRangeStartAscendingCompareFunction);\n}\n","import { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { isSameMonth } from 'date-fns';\nimport { DbxCalendarStore } from './calendar.store';\nimport { map, withLatestFrom } from 'rxjs';\nimport { MatButtonToggleChange, MatButtonToggleModule } from '@angular/material/button-toggle';\nimport { toSignal } from '@angular/core/rxjs-interop';\nimport { FlexLayoutModule } from '@ngbracket/ngx-layout';\nimport { MatButtonModule } from '@angular/material/button';\nimport { DbxButtonSpacerDirective } from '@dereekb/dbx-web';\nimport { MatIconModule } from '@angular/material/icon';\nimport { CalendarModule } from 'angular-calendar';\n\n@Component({\n selector: 'dbx-calendar-base',\n standalone: true,\n imports: [MatButtonModule, MatButtonToggleModule, DbxButtonSpacerDirective, MatIconModule, CalendarModule, FlexLayoutModule],\n changeDetection: ChangeDetectionStrategy.OnPush,\n templateUrl: './calendar.base.component.html'\n})\nexport class DbxCalendarBaseComponent<T> {\n readonly calendarStore = inject(DbxCalendarStore<T>);\n\n readonly viewDate$ = this.calendarStore.date$;\n\n readonly showTodayButton$ = this.calendarStore.showTodayButton$;\n readonly canJumpToToday$ = this.calendarStore.canJumpToToday$;\n\n readonly isLookingAtMinimumDate$ = this.calendarStore.isLookingAtMinimumDate$;\n readonly isLookingAtMaximumDate$ = this.calendarStore.isLookingAtMaximumDate$;\n readonly hasMultiplePages$ = this.calendarStore.hasMultiplePages$;\n\n readonly showPageButtons$ = this.calendarStore.showPageButtons$;\n\n readonly activeDayIsOpen$ = this.calendarStore.eventsForDateState$.pipe(\n withLatestFrom(this.calendarStore.date$),\n map(([x, date]) => {\n if (x.events.length && isSameMonth(x.date, date)) {\n return !x.dateTappedTwice;\n }\n\n return false;\n })\n );\n\n readonly displayType$ = this.calendarStore.displayType$;\n\n readonly viewDateSignal = toSignal(this.viewDate$, { initialValue: new Date() });\n readonly showTodayButtonSignal = toSignal(this.showTodayButton$);\n readonly canJumpToTodaySignal = toSignal(this.canJumpToToday$);\n readonly isLookingAtMinimumDateSignal = toSignal(this.isLookingAtMinimumDate$, { initialValue: false });\n readonly isLookingAtMaximumDateSignal = toSignal(this.isLookingAtMaximumDate$, { initialValue: false });\n readonly hasMultiplePagesSignal = toSignal(this.hasMultiplePages$, { initialValue: false });\n readonly showPageButtonsSignal = toSignal(this.showPageButtons$);\n readonly activeDayIsOpenSignal = toSignal(this.activeDayIsOpen$);\n readonly displayTypeSignal = toSignal(this.displayType$);\n\n todayClicked(): void {\n this.calendarStore.tapDay(new Date());\n }\n\n firstPageButtonClicked(): void {\n this.calendarStore.tapFirstPage();\n }\n\n nextButtonClicked(): void {\n this.calendarStore.tapNext();\n }\n\n previousButtonClicked(): void {\n this.calendarStore.tapPrevious();\n }\n\n lastPageButtonClicked(): void {\n this.calendarStore.tapLastPage();\n }\n\n typeToggleChanged(event: MatButtonToggleChange): void {\n this.calendarStore.setDisplayType(event.value);\n }\n}\n","<div class=\"dbx-calendar\">\n <h3 class=\"dbx-calendar-title\">{{ viewDateSignal() | calendarDate: displayTypeSignal() + 'ViewTitle' : 'en' }}</h3>\n <div class=\"dbx-calendar-header\">\n <div class=\"dbx-calendar-controls\" fxLayout=\"row\" fxLayout.xs=\"column\" ngClass.xs=\"dbx-calendar-controls-compact\">\n <span class=\"dbx-calendar-controls-left dbx-flex-bar\" fxFlex=\"nogrow\">\n @if (showTodayButtonSignal()) {\n <button mat-stroked-button [disabled]=\"!canJumpToTodaySignal()\" (click)=\"todayClicked()\">Today</button>\n }\n <dbx-button-spacer></dbx-button-spacer>\n @if (hasMultiplePagesSignal()) {\n <div class=\"d-iblock\">\n @if (showPageButtonsSignal()) {\n <button mat-icon-button [disabled]=\"isLookingAtMinimumDateSignal()\" aria-label=\"first page button\" (click)=\"firstPageButtonClicked()\">\n <mat-icon>first_page</mat-icon>\n </button>\n }\n <button mat-icon-button [disabled]=\"isLookingAtMinimumDateSignal()\" [attr.aria-label]=\"'Previous ' + displayTypeSignal() + ' button'\" (click)=\"previousButtonClicked()\">\n <mat-icon>navigate_before</mat-icon>\n </button>\n <button mat-icon-button [disabled]=\"isLookingAtMaximumDateSignal()\" [attr.aria-label]=\"'Next ' + displayTypeSignal() + ' button'\" (click)=\"nextButtonClicked()\">\n <mat-icon>navigate_next</mat-icon>\n </button>\n @if (showPageButtonsSignal()) {\n <button mat-icon-button [disabled]=\"isLookingAtMaximumDateSignal()\" aria-label=\"last page button\" (click)=\"lastPageButtonClicked()\">\n <mat-icon>last_page</mat-icon>\n </button>\n }\n </div>\n }\n </span>\n <span class=\"spacer\"></span>\n <span class=\"dbx-calendar-controls-right\" fxFlex=\"nogrow\">\n <ng-content select=\"[controls]\"></ng-content>\n </span>\n </div>\n </div>\n <ng-content></ng-content>\n</div>\n","import { Component, inject, output, ChangeDetectionStrategy, computed } from '@angular/core';\nimport { isSameMonth } from 'date-fns';\nimport { CalendarEvent, CalendarModule, CalendarDayModule, CalendarWeekModule } from 'angular-calendar';\nimport { DbxCalendarStore } from './calendar.store';\nimport { distinctUntilChanged, map, shareReplay, withLatestFrom } from 'rxjs';\nimport { MatButtonToggleChange, MatButtonToggleModule } from '@angular/material/button-toggle';\nimport { DbxCalendarEvent, prepareAndSortCalendarEvents } from './calendar';\nimport { DbxCalendarBaseComponent } from './calendar.base.component';\nimport { NgClass } from '@angular/common';\nimport { toSignal } from '@angular/core/rxjs-interop';\n\n@Component({\n selector: 'dbx-calendar',\n templateUrl: './calendar.component.html',\n imports: [DbxCalendarBaseComponent, CalendarModule, CalendarDayModule, CalendarWeekModule, MatButtonToggleModule, NgClass],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true\n})\nexport class DbxCalendarComponent<T> {\n readonly calendarStore = inject(DbxCalendarStore<T>);\n\n readonly clickEvent = output<DbxCalendarEvent<T>>();\n\n readonly viewDate$ = this.calendarStore.date$;\n\n readonly events$ = this.calendarStore.visibleEvents$.pipe(map(prepareAndSortCalendarEvents), shareReplay(1));\n\n readonly activeDayIsOpen$ = this.calendarStore.eventsForDateState$.pipe(\n withLatestFrom(this.calendarStore.date$),\n map(([x, date]) => {\n if (x.events.length && isSameMonth(x.date, date)) {\n return !x.dateTappedTwice;\n }\n\n return false;\n }),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n readonly displayType$ = this.calendarStore.displayType$;\n\n readonly viewDateSignal = toSignal(this.viewDate$, { initialValue: new Date() });\n readonly eventsSignal = toSignal(this.events$, { initialValue: [] });\n readonly activeDayIsOpenSignal = toSignal(this.activeDayIsOpen$, { initialValue: true });\n readonly displayTypeSignal = toSignal(this.displayType$);\n readonly displayTypeClassSignal = computed(() => `dbx-calendar-content-${this.displayTypeSignal()}`);\n\n todayClicked(): void {\n this.dayClicked({ date: new Date() });\n }\n\n nextButtonClicked(): void {\n this.calendarStore.tapNext();\n }\n\n previousButtonClicked(): void {\n this.calendarStore.tapPrevious();\n }\n\n dayClicked({ date }: { date: Date }): void {\n this.calendarStore.tapDay(date);\n }\n\n eventClicked(action: string, event: CalendarEvent<T>): void {\n this.clickEvent.emit({ action, event });\n }\n\n typeToggleChanged(event: MatButtonToggleChange): void {\n this.calendarStore.setDisplayType(event.value);\n }\n}\n","<dbx-calendar-base>\n <ng-container controls>\n <mat-button-toggle-group name=\"calendarDisplayStyle\" [value]=\"displayTypeSignal()\" (change)=\"typeToggleChanged($event)\" aria-label=\"Display Style\">\n <mat-button-toggle value=\"month\">Month</mat-button-toggle>\n <mat-button-toggle value=\"week\">Week</mat-button-toggle>\n <mat-button-toggle value=\"day\">Day</mat-button-toggle>\n </mat-button-toggle-group>\n </ng-container>\n <div class=\"dbx-calendar-content\" [ngClass]=\"displayTypeClassSignal()\">\n @switch (displayTypeSignal()) {\n @case ('month') {\n <mwl-calendar-month-view [viewDate]=\"viewDateSignal()\" [events]=\"eventsSignal()\" [activeDayIsOpen]=\"activeDayIsOpenSignal()\" (dayClicked)=\"dayClicked($event.day)\" (eventClicked)=\"eventClicked('Clicked', $event.event)\"></mwl-calendar-month-view>\n }\n @case ('week') {\n <mwl-calendar-week-view [viewDate]=\"viewDateSignal()\" [events]=\"eventsSignal()\" (eventClicked)=\"eventClicked('Clicked', $event.event)\"></mwl-calendar-week-view>\n }\n @case ('day') {\n <mwl-calendar-day-view [viewDate]=\"viewDateSignal()\" [events]=\"eventsSignal()\" (eventClicked)=\"eventClicked('Clicked', $event.event)\"></mwl-calendar-day-view>\n }\n }\n </div>\n</dbx-calendar-base>\n","import { NgModule } from '@angular/core';\nimport { DbxCalendarComponent } from './calendar.component';\nimport { DbxCalendarBaseComponent } from './calendar.base.component';\n\nconst importsAndExports = [DbxCalendarBaseComponent, DbxCalendarComponent];\n\n/**\n * @deprecated import DbxCalendarBaseComponent, and DbxCalendarComponent directly\n */\n@NgModule({\n imports: importsAndExports,\n exports: importsAndExports\n})\nexport class DbxCalendarModule {}\n","import { type EnvironmentProviders, importProvidersFrom } from '@angular/core';\nimport { CalendarModule, DateAdapter } from 'angular-calendar';\nimport { adapterFactory as dateAdapterFactory } from 'angular-calendar/date-adapters/date-fns';\n\n/**\n * Provides default configuration for the DbxCalendarModule\n */\nexport function provideDbxCalendar() {\n const providers: EnvironmentProviders = importProvidersFrom(CalendarModule.forRoot({ provide: DateAdapter, useFactory: dateAdapterFactory }));\n\n return providers;\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","dateAdapterFactory"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;IAQY,oBAIX;AAJD,CAAA,UAAY,mBAAmB,EAAA;AAC7B,IAAA,mBAAA,CAAA,OAAA,CAAA,GAAA,OAAe,CAAA;AACf,IAAA,mBAAA,CAAA,MAAA,CAAA,GAAA,MAAa,CAAA;AACb,IAAA,mBAAA,CAAA,KAAA,CAAA,GAAA,KAAW,CAAA;AACb,CAAC,EAJW,mBAAmB,KAAnB,mBAAmB,GAI9B,EAAA,CAAA,CAAA,CAAA;AAiBe,SAAA,4BAA4B,CAAC,CAAwB,EAAE,CAAwB,EAAA;IAC7F,OAAO,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,IAAI,SAAS,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,gBAAgB,KAAK,CAAC,CAAC,gBAAgB,IAAI,CAAC,CAAC,gBAAgB,KAAK,CAAC,CAAC,gBAAgB,CAAC;AAC5M,CAAC;AAiCK,SAAU,gCAAgC,CAAC,aAA4B,EAAA;IAC3E,MAAM,EAAE,oBAAoB,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,aAAa,CAAC;AAE3D,IAAA,IAAI,KAAW,CAAC;AAChB,IAAA,IAAI,GAAS,CAAC;AACd,IAAA,IAAI,QAAgB,CAAC;IAErB,QAAQ,IAAI;QACV,KAAK,mBAAmB,CAAC,KAAK;AAC5B,YAAA,KAAK,GAAG,UAAU,CAAC,WAAW,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;YACzE,GAAG,GAAG,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;YAClC,QAAQ,GAAG,gBAAgB,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;YAC5C,MAAM;QACR,KAAK,mBAAmB,CAAC,IAAI;AAC3B,YAAA,KAAK,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;AAC1B,YAAA,GAAG,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;AACvB,YAAA,QAAQ,GAAG,CAAC,CAAC;YACb,MAAM;QACR,KAAK,mBAAmB,CAAC,GAAG;AAC1B,YAAA,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;AACzB,YAAA,GAAG,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;YACrB,QAAQ,GAAG,CAAC,CAAC;YACb,MAAM;KACT;IAED,MAAM,gBAAgB,GAAY,oBAAoB,EAAE,KAAK,IAAI,IAAI,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,oBAAoB,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;IAC5H,MAAM,gBAAgB,GAAY,oBAAoB,EAAE,GAAG,IAAI,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,EAAE,oBAAoB,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;;;AAKvH,IAAA,MAAM,MAAM,GAAG;QACb,IAAI;QACJ,KAAK;QACL,GAAG;QACH,QAAQ;QACR,gBAAgB;QAChB,gBAAgB;KACjB,CAAC;AAEF,IAAA,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,sCAAsC,GAAG,oBAAoB,CAAgB,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,IAAI,KAAK,CAAC,EAAE,IAAI,IAAI,CAAC,EAAE,IAAI,KAAK,CAAC,EAAE,IAAI,IAAI,CAAC,EAAE,MAAM,KAAK,CAAC,EAAE,MAAM,CAAC,CAAC;AAG9J,MAAO,gBAA0B,SAAQ,cAAgC,CAAA;AAC7E,IAAA,WAAA,GAAA;AACE,QAAA,KAAK,CAAC;YACJ,IAAI,EAAE,mBAAmB,CAAC,KAAK;AAC/B,YAAA,eAAe,EAAE,IAAI;YACrB,IAAI,EAAE,IAAI,IAAI,EAAE;AAChB,YAAA,eAAe,EAAE,KAAK;AACtB,YAAA,MAAM,EAAE,EAAE;AACX,SAAA,CAAC,CAAC;KACJ;;IAGQ,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,KAAuB,KAAI;QAC9D,OAAO,KAAK,CAAC,IAAI,CACf,SAAS,CAAC,MACR,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAC1B,KAAK,EAAE,EACP,GAAG,CAAC,CAAC,CAAC,KAAI;YACR,IAAI,CAAC,EAAE;AACL,gBAAA,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;aAChB;AACH,SAAC,CAAC,CACH,CACF,CACF,CAAC;AACJ,KAAC,CAAC,CAAC;IAEM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,KAAuB,KAAI;QACzD,OAAO,KAAK,CAAC,IAAI,CACf,SAAS,CAAC,MACR,IAAI,CAAC,iBAAiB,CAAC,IAAI,CACzB,KAAK,EAAE,EACP,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,gBAAgB,EAAE,KAAI;YAChC,IAAI,CAAC,gBAAgB,EAAE;gBACrB,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;aAC9B;AACH,SAAC,CAAC,CACH,CACF,CACF,CAAC;AACJ,KAAC,CAAC,CAAC;IAEM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,KAAuB,KAAI;QAC7D,OAAO,KAAK,CAAC,IAAI,CACf,SAAS,CAAC,MACR,IAAI,CAAC,iBAAiB,CAAC,IAAI,CACzB,KAAK,EAAE,EACP,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,gBAAgB,EAAE,KAAI;YAClC,IAAI,CAAC,gBAAgB,EAAE;gBACrB,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;aACjC;AACH,SAAC,CAAC,CACH,CACF,CACF,CAAC;AACJ,KAAC,CAAC,CAAC;IAEM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,KAAuB,KAAI;QAC7D,OAAO,KAAK,CAAC,IAAI,CACf,SAAS,CAAC,MACR,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAC1B,KAAK,EAAE,EACP,GAAG,CAAC,CAAC,CAAC,KAAI;YACR,IAAI,CAAC,EAAE;AACL,gBAAA,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;aAChB;AACH,SAAC,CAAC,CACH,CACF,CACF,CAAC;AACJ,KAAC,CAAC,CAAC;;IAIM,gBAAgB,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAC1C,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,eAAe,CAAC,EAC7B,oBAAoB,EAAE,EACtB,WAAW,CAAC,CAAC,CAAC,CACf,CAAC;AAEO,IAAA,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;AAC7C,IAAA,gBAAgB,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC;IAEnE,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CACjC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,EACpB,oBAAoB,EAAE,EACtB,WAAW,CAAC,CAAC,CAAC,CACf,CAAC;AAEF;;AAEG;AACM,IAAA,mBAAmB,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAC7C,sCAAsC,EACtC,GAAG,CAAC,CAAC,KAAK,MAAM;QACd,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,IAAI,QAAQ,CAAC,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;QAC5I,eAAe,EAAE,KAAK,CAAC,eAAe;AACvC,KAAA,CAAC,CAAC,EACH,WAAW,CAAC,CAAC,CAAC,CACf,CAAC;AAEO,IAAA,cAAc,GAAG,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;IAE7E,iBAAiB,GAAsC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,gCAAgC,CAAC,EAAE,oBAAoB,CAAC,4BAA4B,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;IAEnL,cAAc,GAAG,aAAa,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,IAAI,CAClF,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,SAAS,CAAC,KAAI;AAC1B,QAAA,MAAM,kBAAkB,GAAG,kCAAkC,CAAC,SAAS,CAAC,CAAC;AACzE,QAAA,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC;AACrD,KAAC,CAAC,EACF,WAAW,CAAC,CAAC,CAAC,CACf,CAAC;AAEO,IAAA,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CACtD,GAAG,CAAC,CAAC,CAAC,KAAK,iBAAiB,CAAC,IAAI,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,EAC5C,oBAAoB,EAAE,EACtB,WAAW,CAAC,CAAC,CAAC,CACf,CAAC;IAEO,uBAAuB,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAC5D,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,gBAAgB,CAAC,EAC9B,oBAAoB,EAAE,EACtB,WAAW,CAAC,CAAC,CAAC,CACf,CAAC;IAEO,uBAAuB,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAC5D,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,gBAAgB,CAAC,EAC9B,oBAAoB,EAAE,EACtB,WAAW,CAAC,CAAC,CAAC,CACf,CAAC;AAEO,IAAA,iBAAiB,GAAG,aAAa,CAAC,CAAC,IAAI,CAAC,uBAAuB,EAAE,IAAI,CAAC,uBAAuB,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,oBAAoB,EAAE,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;AAEjM,IAAA,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CACtC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,EAClB,oBAAoB,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EACvC,WAAW,CAAC,CAAC,CAAC,CACf,CAAC;AAEO,IAAA,qBAAqB,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAC/C,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,oBAAoB,CAAC,EAClC,oBAAoB,CAAC,eAAe,CAAC,EACrC,WAAW,CAAC,CAAC,CAAC,CACf,CAAC;AAEO,IAAA,kBAAkB,GAA4B,IAAI,CAAC,qBAAqB,CAAC,IAAI,CACpF,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,EACpB,oBAAoB,CAAC,aAAa,CAAC,EACnC,WAAW,CAAC,CAAC,CAAC,CACf,CAAC;AAEO,IAAA,kBAAkB,GAA4B,IAAI,CAAC,qBAAqB,CAAC,IAAI,CACpF,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,EAClB,oBAAoB,CAAC,aAAa,CAAC,EACnC,WAAW,CAAC,CAAC,CAAC,CACf,CAAC;AAEO,IAAA,8BAA8B,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CACvE,GAAG,CAAC,CAAC,CAAC,KAAK,iBAAiB,CAAC,IAAI,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,EAClD,oBAAoB,EAAE,EACtB,WAAW,CAAC,CAAC,CAAC,CACf,CAAC;AAEO,IAAA,eAAe,GAAG,aAAa,CAAC,CAAC,IAAI,CAAC,iBAAiB,EAAE,IAAI,CAAC,8BAA8B,CAAC,CAAC,CAAC,IAAI,CAC1G,GAAG,CAAC,CAAC,CAAC,gBAAgB,EAAE,6BAA6B,CAAC,KAAK,CAAC,gBAAgB,IAAI,6BAA6B,CAAC,EAC9G,oBAAoB,EAAE,EACtB,WAAW,CAAC,CAAC,CAAC,CACf,CAAC;AAEO,IAAA,mBAAmB,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAC7C,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,eAAe,IAAI,CAAC,CAAC,oBAAoB,IAAI,eAAe,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,EAClG,oBAAoB,EAAE,EACtB,WAAW,CAAC,CAAC,CAAC,CACf,CAAC;AAEO,IAAA,gBAAgB,GAAG,aAAa,CAAC,CAAC,IAAI,CAAC,mBAAmB,EAAE,IAAI,CAAC,uBAAuB,EAAE,IAAI,CAAC,uBAAuB,CAAC,CAAC,CAAC,IAAI,CACpI,GAAG,CAAC,CAAC,CAAC,kBAAkB,EAAE,sBAAsB,EAAE,sBAAsB,CAAC,KAAI;QAC3E,OAAO,kBAAkB,IAAI,EAAE,sBAAsB,IAAI,sBAAsB,CAAC,CAAC;KAClF,CAAC,EACF,oBAAoB,EAAE,EACtB,WAAW,CAAC,CAAC,CAAC,CACf,CAAC;;AAGF;;;;AAIG;AACM,IAAA,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,IAAU,KAAK,iCAAiC,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;AAEtG;;AAEG;IACM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,MAA0B,MAAM,EAAE,GAAG,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;AAEjG;;AAEG;IACM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,IAAyB,MAAM,EAAE,GAAG,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AAEnG;;AAEG;AACM,IAAA,uBAAuB,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,oBAA+C,KAAK,2CAA2C,CAAC,KAAK,EAAE,oBAAoB,CAAC,CAAC,CAAC;AAE7K,IAAA,kBAAkB,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,eAA+B,MAAM,EAAE,GAAG,KAAK,EAAE,eAAe,EAAE,eAAe,IAAI,IAAI,GAAG,eAAe,GAAG,IAAI,EAAE,CAAC,CAAC,CAAC;AACjK,IAAA,kBAAkB,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,eAA+B,MAAM,EAAE,GAAG,KAAK,EAAE,eAAe,EAAE,eAAe,IAAI,IAAI,GAAG,eAAe,GAAG,KAAK,EAAE,CAAC,CAAC,CAAC;wGAhNhK,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;4GAAhB,gBAAgB,EAAA,CAAA,CAAA;;4FAAhB,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAD5B,UAAU;;AAoNK,SAAA,iCAAiC,CAAC,KAAoB,EAAE,IAAU,EAAA;;IAEhF,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE;;AAEpC,QAAA,IAAI,CAAC,KAAK,CAAC,oBAAoB,IAAI,iBAAiB,CAAC,IAAI,EAAE,KAAK,CAAC,oBAAoB,CAAC,EAAE;AACtF,YAAA,KAAK,GAAG,EAAE,GAAG,KAAK,EAAE,IAAI,EAAE,eAAe,EAAE,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,eAAe,GAAG,KAAK,EAAE,CAAC;SAC3G;KACF;AAED,IAAA,OAAO,KAAK,CAAC;AACf,CAAC;AAEe,SAAA,2CAA2C,CAAC,KAAoB,EAAE,oBAA+C,EAAA;AAC/H,IAAA,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC;;IAGvB,IAAI,oBAAoB,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,oBAAoB,CAAC,EAAE;QAC1E,MAAM,WAAW,GAAG,oBAAoB,CAAC,IAAI,EAAE,oBAAoB,CAAC,CAAC;QACrE,OAAO,EAAE,GAAG,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,oBAAoB,EAAE,CAAC;KAC9D;SAAM;AACL,QAAA,OAAO,EAAE,GAAG,KAAK,EAAE,oBAAoB,EAAE,CAAC;KAC3C;AACH;;AC/UA,SAAS,oBAAoB,CAAC,KAAoB,EAAA;AAChD,IAAA,IAAI,QAAQ,CAAC;AAEb,IAAA,IAAI,KAAK,CAAC,MAAM,EAAE;QAChB,QAAQ,GAAG,WAAW,CAAC;KACxB;SAAM;AACL,QAAA,QAAQ,GAAG,6BAA6B,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,IAAI,IAAI,IAAI,EAAE,CAAC,CAAC;KAChF;AAED,IAAA,OAAO,QAAQ,CAAC;AAClB,CAAC;AAEK,SAAU,4BAA4B,CAAC,MAAuB,EAAA;AAClE,IAAA,OAAO,MAAM;AACV,SAAA,GAAG,CAAC,CAAC,KAAoB,KAAI;AAC5B,QAAA,MAAM,QAAQ,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC;AAC7C,QAAA,IAAI,KAAK,CAAC;AAEV,QAAA,IAAI,KAAK,CAAC,MAAM,EAAE;YAChB,KAAK,GAAG,KAAK,CAAC,KAAK,GAAG,GAAG,GAAG,QAAQ,CAAC;SACtC;aAAM;YACL,KAAK,GAAG,GAAG,KAAK,CAAC,KAAK,CAAM,GAAA,EAAA,QAAQ,EAAE,CAAC;SACxC;QAED,OAAO;AACL,YAAA,GAAG,KAAK;YACR,KAAK;SACN,CAAC;AACJ,KAAC,CAAC;SACD,IAAI,CAAC,0CAA0C,CAAC,CAAC;AACtD;;MCnBa,wBAAwB,CAAA;AAC1B,IAAA,aAAa,GAAG,MAAM,EAAC,gBAAmB,EAAC,CAAC;AAE5C,IAAA,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC;AAErC,IAAA,gBAAgB,GAAG,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC;AACvD,IAAA,eAAe,GAAG,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC;AAErD,IAAA,uBAAuB,GAAG,IAAI,CAAC,aAAa,CAAC,uBAAuB,CAAC;AACrE,IAAA,uBAAuB,GAAG,IAAI,CAAC,aAAa,CAAC,uBAAuB,CAAC;AACrE,IAAA,iBAAiB,GAAG,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC;AAEzD,IAAA,gBAAgB,GAAG,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC;IAEvD,gBAAgB,GAAG,IAAI,CAAC,aAAa,CAAC,mBAAmB,CAAC,IAAI,CACrE,cAAc,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,EACxC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,KAAI;AAChB,QAAA,IAAI,CAAC,CAAC,MAAM,CAAC,MAAM,IAAI,WAAW,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE;AAChD,YAAA,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;SAC3B;AAED,QAAA,OAAO,KAAK,CAAC;KACd,CAAC,CACH,CAAC;AAEO,IAAA,YAAY,GAAG,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC;AAE/C,IAAA,cAAc,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,YAAY,EAAE,IAAI,IAAI,EAAE,EAAE,CAAC,CAAC;AACxE,IAAA,qBAAqB,GAAG,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;AACxD,IAAA,oBAAoB,GAAG,QAAQ,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;AACtD,IAAA,4BAA4B,GAAG,QAAQ,CAAC,IAAI,CAAC,uBAAuB,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC,CAAC;AAC/F,IAAA,4BAA4B,GAAG,QAAQ,CAAC,IAAI,CAAC,uBAAuB,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC,CAAC;AAC/F,IAAA,sBAAsB,GAAG,QAAQ,CAAC,IAAI,CAAC,iBAAiB,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC,CAAC;AACnF,IAAA,qBAAqB,GAAG,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;AACxD,IAAA,qBAAqB,GAAG,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;AACxD,IAAA,iBAAiB,GAAG,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAEzD,YAAY,GAAA;QACV,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;KACvC;IAED,sBAAsB,GAAA;AACpB,QAAA,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC;KACnC;IAED,iBAAiB,GAAA;AACf,QAAA,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC;KAC9B;IAED,qBAAqB,GAAA;AACnB,QAAA,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC;KAClC;IAED,qBAAqB,GAAA;AACnB,QAAA,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC;KAClC;AAED,IAAA,iBAAiB,CAAC,KAA4B,EAAA;QAC5C,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;KAChD;wGA3DU,wBAAwB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAxB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,wBAAwB,ECnBrC,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,4hEAsCA,EDvBY,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,eAAe,EAAE,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,QAAA,EAAA,6GAAA,EAAA,QAAA,EAAA,CAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,aAAA,EAAA,QAAA,EAAA,yBAAA,EAAA,QAAA,EAAA,CAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,qBAAqB,EAAE,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,wBAAwB,EAAE,QAAA,EAAA,qCAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,aAAa,EAAE,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,SAAA,EAAA,SAAA,EAAA,UAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,cAAc,oGAAE,gBAAgB,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,sBAAA,EAAA,QAAA,EAAA,4OAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,aAAA,EAAA,aAAA,EAAA,aAAA,EAAA,aAAA,EAAA,aAAA,EAAA,gBAAA,EAAA,gBAAA,EAAA,gBAAA,EAAA,gBAAA,EAAA,gBAAA,EAAA,gBAAA,EAAA,gBAAA,EAAA,gBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,gNAAA,EAAA,MAAA,EAAA,CAAA,QAAA,EAAA,WAAA,EAAA,WAAA,EAAA,WAAA,EAAA,WAAA,EAAA,WAAA,EAAA,cAAA,EAAA,cAAA,EAAA,cAAA,EAAA,cAAA,EAAA,cAAA,EAAA,cAAA,EAAA,cAAA,EAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,qBAAA,EAAA,QAAA,EAAA,6NAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,YAAA,EAAA,YAAA,EAAA,YAAA,EAAA,YAAA,EAAA,YAAA,EAAA,eAAA,EAAA,eAAA,EAAA,eAAA,EAAA,eAAA,EAAA,eAAA,EAAA,eAAA,EAAA,eAAA,EAAA,eAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;4FAIhH,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBAPpC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,mBAAmB,cACjB,IAAI,EAAA,OAAA,EACP,CAAC,eAAe,EAAE,qBAAqB,EAAE,wBAAwB,EAAE,aAAa,EAAE,cAAc,EAAE,gBAAgB,CAAC,EAC3G,eAAA,EAAA,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,4hEAAA,EAAA,CAAA;;;MEEpC,oBAAoB,CAAA;AACtB,IAAA,aAAa,GAAG,MAAM,EAAC,gBAAmB,EAAC,CAAC;IAE5C,UAAU,GAAG,MAAM,EAAuB,CAAC;AAE3C,IAAA,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC;AAErC,IAAA,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,4BAA4B,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;IAEpG,gBAAgB,GAAG,IAAI,CAAC,aAAa,CAAC,mBAAmB,CAAC,IAAI,CACrE,cAAc,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,EACxC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,KAAI;AAChB,QAAA,IAAI,CAAC,CAAC,MAAM,CAAC,MAAM,IAAI,WAAW,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE;AAChD,YAAA,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;SAC3B;AAED,QAAA,OAAO,KAAK,CAAC;KACd,CAAC,EACF,oBAAoB,EAAE,EACtB,WAAW,CAAC,CAAC,CAAC,CACf,CAAC;AAEO,IAAA,YAAY,GAAG,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC;AAE/C,IAAA,cAAc,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,YAAY,EAAE,IAAI,IAAI,EAAE,EAAE,CAAC,CAAC;AACxE,IAAA,YAAY,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC,CAAC;AAC5D,IAAA,qBAAqB,GAAG,QAAQ,CAAC,IAAI,CAAC,gBAAgB,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC;AAChF,IAAA,iBAAiB,GAAG,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;AAChD,IAAA,sBAAsB,GAAG,QAAQ,CAAC,MAAM,CAAwB,qBAAA,EAAA,IAAI,CAAC,iBAAiB,EAAE,CAAA,CAAE,CAAC,CAAC;IAErG,YAAY,GAAA;QACV,IAAI,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,IAAI,IAAI,EAAE,EAAE,CAAC,CAAC;KACvC;IAED,iBAAiB,GAAA;AACf,QAAA,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC;KAC9B;IAED,qBAAqB,GAAA;AACnB,QAAA,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC;KAClC;IAED,UAAU,CAAC,EAAE,IAAI,EAAkB,EAAA;AACjC,QAAA,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;KACjC;IAED,YAAY,CAAC,MAAc,EAAE,KAAuB,EAAA;QAClD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;KACzC;AAED,IAAA,iBAAiB,CAAC,KAA4B,EAAA;QAC5C,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;KAChD;wGApDU,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAApB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,oBAAoB,EClBjC,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,cAAA,EAAA,OAAA,EAAA,EAAA,UAAA,EAAA,YAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,gzCAsBA,EDRY,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,wBAAwB,EAAE,QAAA,EAAA,mBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,cAAc,EAAE,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,0BAAA,EAAA,QAAA,EAAA,yBAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,QAAA,EAAA,aAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,SAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,iBAAA,EAAA,qBAAA,EAAA,cAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,cAAA,EAAA,uBAAA,EAAA,oBAAA,EAAA,sBAAA,EAAA,aAAA,CAAA,EAAA,OAAA,EAAA,CAAA,kBAAA,EAAA,YAAA,EAAA,cAAA,EAAA,qBAAA,EAAA,mBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,yBAAA,EAAA,QAAA,EAAA,wBAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,QAAA,EAAA,aAAA,EAAA,SAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,iBAAA,EAAA,qBAAA,EAAA,cAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,eAAA,EAAA,oBAAA,EAAA,sBAAA,EAAA,WAAA,EAAA,aAAA,EAAA,mBAAA,EAAA,cAAA,EAAA,cAAA,EAAA,mBAAA,EAAA,oBAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,YAAA,EAAA,cAAA,EAAA,qBAAA,EAAA,eAAA,EAAA,2BAAA,EAAA,YAAA,EAAA,2BAAA,EAAA,2BAAA,EAAA,eAAA,CAAA,EAAA,OAAA,EAAA,CAAA,kBAAA,EAAA,cAAA,EAAA,mBAAA,EAAA,kBAAA,EAAA,oBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,wBAAA,EAAA,QAAA,EAAA,uBAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,QAAA,EAAA,cAAA,EAAA,mBAAA,EAAA,cAAA,EAAA,oBAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,YAAA,EAAA,cAAA,EAAA,SAAA,EAAA,QAAA,EAAA,eAAA,EAAA,kBAAA,EAAA,iBAAA,EAAA,qBAAA,EAAA,cAAA,EAAA,qBAAA,EAAA,eAAA,EAAA,oBAAA,EAAA,sBAAA,EAAA,mBAAA,EAAA,2BAAA,EAAA,2BAAA,EAAA,2BAAA,EAAA,eAAA,CAAA,EAAA,OAAA,EAAA,CAAA,cAAA,EAAA,oBAAA,EAAA,mBAAA,EAAA,kBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,iBAAiB,EAAE,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,kBAAkB,EAAE,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,qBAAqB,2oBAAE,OAAO,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;4FAI9G,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAPhC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,cAAc,WAEf,CAAC,wBAAwB,EAAE,cAAc,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,OAAO,CAAC,EAAA,eAAA,EACzG,uBAAuB,CAAC,MAAM,cACnC,IAAI,EAAA,QAAA,EAAA,gzCAAA,EAAA,CAAA;;;AEZlB,MAAM,iBAAiB,GAAG,CAAC,wBAAwB,EAAE,oBAAoB,CAAC,CAAC;AAE3E;;AAEG;MAKU,iBAAiB,CAAA;wGAAjB,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAjB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,iBAAiB,YATH,wBAAwB,EAAE,oBAAoB,CAA9C,EAAA,OAAA,EAAA,CAAA,wBAAwB,EAAE,oBAAoB,CAAA,EAAA,CAAA,CAAA;AAS5D,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,iBAAiB,YAHnB,iBAAiB,CAAA,EAAA,CAAA,CAAA;;4FAGf,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAJ7B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,OAAO,EAAE,iBAAiB;AAC1B,oBAAA,OAAO,EAAE,iBAAiB;AAC3B,iBAAA,CAAA;;;ACRD;;AAEG;SACa,kBAAkB,GAAA;AAChC,IAAA,MAAM,SAAS,GAAyB,mBAAmB,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,UAAU,EAAEC,cAAkB,EAAE,CAAC,CAAC,CAAC;AAE9I,IAAA,OAAO,SAAS,CAAC;AACnB;;ACXA;;AAEG;;;;"}
|
|
1
|
+
{"version":3,"file":"dereekb-dbx-web-calendar.mjs","sources":["../../../../packages/dbx-web/calendar/src/lib/calendar.store.ts","../../../../packages/dbx-web/calendar/src/lib/calendar.ts","../../../../packages/dbx-web/calendar/src/lib/calendar.base.component.ts","../../../../packages/dbx-web/calendar/src/lib/calendar.base.component.html","../../../../packages/dbx-web/calendar/src/lib/calendar.component.ts","../../../../packages/dbx-web/calendar/src/lib/calendar.component.html","../../../../packages/dbx-web/calendar/src/lib/calendar.provider.ts","../../../../packages/dbx-web/calendar/src/dereekb-dbx-web-calendar.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { clampDateToDateRange, DateRange, dateRangeOverlapsDateRangeFunction, isDateInDateRange, isFullDateRange, isSameDateDay, isSameDateRange } from '@dereekb/date';\nimport { invertDecision, Maybe, reduceBooleansWithAndFn } from '@dereekb/util';\nimport { ComponentStore } from '@ngrx/component-store';\nimport { CalendarEvent } from 'angular-calendar';\nimport { differenceInDays, addDays, endOfDay, endOfMonth, endOfWeek, isSameDay, startOfDay, startOfMonth, startOfWeek, isBefore, isAfter } from 'date-fns';\nimport { Observable, distinctUntilChanged, first, map, shareReplay, switchMap, tap, combineLatest } from 'rxjs';\n\nexport enum CalendarDisplayType {\n MONTH = 'month',\n WEEK = 'week',\n DAY = 'day'\n}\n\nexport interface CalendarViewDateRange {\n readonly type: CalendarDisplayType;\n readonly start: Date;\n readonly end: Date;\n readonly distance: number;\n /**\n * Whether or not the min navigation date is currently visible. This implies that we're at the minimum date.\n */\n readonly isMinDateVisible: boolean;\n /**\n * Whether or not the maximum navigation date is visible. This implies that we're at the maximum date.\n */\n readonly isMaxDateVisible: boolean;\n}\n\nexport function isCalendarViewDateRangeEqual(a: CalendarViewDateRange, b: CalendarViewDateRange): boolean {\n return a.type === b.type && isSameDay(a.start, b.start) && isSameDay(a.end, b.end) && a.distance === b.distance && a.isMinDateVisible === b.isMinDateVisible && a.isMaxDateVisible === b.isMaxDateVisible;\n}\n\nexport interface CalendarState<T = any> {\n /**\n * Calendar display mode\n */\n readonly type: CalendarDisplayType;\n /**\n * Whether or not to show the today button. Defaults to true.\n */\n readonly showTodayButton?: boolean;\n /**\n * Date that is selected.\n */\n readonly date: Date;\n /**\n * Whether or not the day was tapped/set twice.\n */\n readonly dateTappedTwice: boolean;\n /**\n * Set of calendar events.\n */\n readonly events: CalendarEvent<T>[];\n /**\n * Optional navigation range limitation that limits which dates can be navigated to.\n */\n readonly navigationRangeLimit?: Maybe<Partial<DateRange>>;\n /**\n * Whether or not to display the page buttons when applicable. Can only be displayed when a navigationRangeLimit is set.\n */\n readonly showPageButtons?: boolean;\n}\n\nexport function visibleDateRangeForCalendarState(calendarState: CalendarState): CalendarViewDateRange {\n const { navigationRangeLimit, type, date } = calendarState;\n\n let start: Date;\n let end: Date;\n let distance: number;\n\n switch (type) {\n case CalendarDisplayType.MONTH:\n start = startOfDay(startOfWeek(startOfMonth(date), { weekStartsOn: 0 }));\n end = endOfWeek(endOfMonth(date));\n distance = differenceInDays(end, start) + 1;\n break;\n case CalendarDisplayType.WEEK:\n start = startOfWeek(date);\n end = endOfWeek(start);\n distance = 7; // 7 days in a week.\n break;\n case CalendarDisplayType.DAY:\n start = startOfDay(date);\n end = endOfDay(date);\n distance = 1;\n break;\n }\n\n const isMinDateVisible: boolean = navigationRangeLimit?.start != null ? !isAfter(start, navigationRangeLimit.start) : false;\n const isMaxDateVisible: boolean = navigationRangeLimit?.end != null ? !isBefore(end, navigationRangeLimit.end) : false;\n\n // TODO: Consider changing min/max date visible logical utility to be fully within the current month or not,\n // not just visible, since it can change to a locked out calendar and doesn't feel as UI friendly.\n\n const result = {\n type,\n start,\n end,\n distance,\n isMinDateVisible,\n isMaxDateVisible\n };\n\n return result;\n}\n\nconst distinctUntilDateOrTypeOrEventsChanged = distinctUntilChanged<CalendarState>((a, b) => a?.date === b?.date && a?.type === b?.type && a?.events === b?.events);\n\n@Injectable()\nexport class DbxCalendarStore<T = any> extends ComponentStore<CalendarState<T>> {\n constructor() {\n super({\n type: CalendarDisplayType.MONTH,\n showTodayButton: true,\n date: new Date(),\n dateTappedTwice: false,\n events: []\n });\n }\n\n // MARK: Effects\n readonly tapFirstPage = this.effect((input: Observable<void>) => {\n return input.pipe(\n switchMap(() =>\n this.minNavigationDate$.pipe(\n first(),\n tap((x) => {\n if (x) {\n this.tapDay(x);\n }\n })\n )\n )\n );\n });\n\n readonly tapNext = this.effect((input: Observable<void>) => {\n return input.pipe(\n switchMap(() =>\n this.visibleDateRange$.pipe(\n first(),\n tap(({ end, isMaxDateVisible }) => {\n if (!isMaxDateVisible) {\n this.tapDay(addDays(end, 1));\n }\n })\n )\n )\n );\n });\n\n readonly tapPrevious = this.effect((input: Observable<void>) => {\n return input.pipe(\n switchMap(() =>\n this.visibleDateRange$.pipe(\n first(),\n tap(({ start, isMinDateVisible }) => {\n if (!isMinDateVisible) {\n this.tapDay(addDays(start, -1));\n }\n })\n )\n )\n );\n });\n\n readonly tapLastPage = this.effect((input: Observable<void>) => {\n return input.pipe(\n switchMap(() =>\n this.maxNavigationDate$.pipe(\n first(),\n tap((x) => {\n if (x) {\n this.tapDay(x);\n }\n })\n )\n )\n );\n });\n\n // MARK: Accessors\n\n readonly showTodayButton$ = this.state$.pipe(\n map((x) => x.showTodayButton),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n readonly date$ = this.state$.pipe(map((x) => x.date));\n readonly dateTappedTwice$ = this.state$.pipe(map((x) => x.dateTappedTwice));\n\n readonly events$ = this.state$.pipe(\n map((x) => x.events),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n /**\n * Returns the events that match the tapped date range state.\n */\n readonly eventsForDateState$ = this.state$.pipe(\n distinctUntilDateOrTypeOrEventsChanged,\n map((state) => ({\n date: state.date,\n events: state.events.filter((x) => isSameDay(x.start, state.date) || (x.end && isBefore(x.start, state.date) && isAfter(x.end, state.date))),\n dateTappedTwice: state.dateTappedTwice\n })),\n shareReplay(1)\n );\n\n readonly eventsForDate$ = this.eventsForDateState$.pipe(map((state) => state.events));\n\n readonly visibleDateRange$: Observable<CalendarViewDateRange> = this.state$.pipe(map(visibleDateRangeForCalendarState), distinctUntilChanged(isCalendarViewDateRangeEqual), shareReplay(1));\n\n readonly visibleEvents$ = combineLatest([this.events$, this.visibleDateRange$]).pipe(\n map(([events, dateRange]) => {\n const isEventInDateRange = dateRangeOverlapsDateRangeFunction(dateRange);\n return events.filter((x) => isEventInDateRange(x));\n }),\n shareReplay(1)\n );\n\n readonly isLookingAtToday$ = this.visibleDateRange$.pipe(\n map((x) => isDateInDateRange(new Date(), x)),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n readonly isLookingAtMinimumDate$ = this.visibleDateRange$.pipe(\n map((x) => x.isMinDateVisible),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n readonly isLookingAtMaximumDate$ = this.visibleDateRange$.pipe(\n map((x) => x.isMaxDateVisible),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n readonly hasMultiplePages$ = combineLatest([this.isLookingAtMinimumDate$, this.isLookingAtMaximumDate$]).pipe(map(invertDecision(reduceBooleansWithAndFn(true))), distinctUntilChanged(), shareReplay(1));\n\n readonly displayType$ = this.state$.pipe(\n map((x) => x.type),\n distinctUntilChanged((a, b) => a === b),\n shareReplay(1)\n );\n\n readonly navigationRangeLimit$ = this.state$.pipe(\n map((x) => x.navigationRangeLimit),\n distinctUntilChanged(isSameDateRange),\n shareReplay(1)\n );\n\n readonly minNavigationDate$: Observable<Maybe<Date>> = this.navigationRangeLimit$.pipe(\n map((x) => x?.start),\n distinctUntilChanged(isSameDateDay),\n shareReplay(1)\n );\n\n readonly maxNavigationDate$: Observable<Maybe<Date>> = this.navigationRangeLimit$.pipe(\n map((x) => x?.end),\n distinctUntilChanged(isSameDateDay),\n shareReplay(1)\n );\n\n readonly isTodayInNavigationRangeLimit$ = this.navigationRangeLimit$.pipe(\n map((x) => isDateInDateRange(new Date(), x ?? {})),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n readonly canJumpToToday$ = combineLatest([this.isLookingAtToday$, this.isTodayInNavigationRangeLimit$]).pipe(\n map(([isLookingAtToday, isTodayInNavigationRangeLimit]) => !isLookingAtToday && isTodayInNavigationRangeLimit),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n readonly canShowPageButtons$ = this.state$.pipe(\n map((x) => x.showPageButtons && x.navigationRangeLimit && isFullDateRange(x.navigationRangeLimit)),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n readonly showPageButtons$ = combineLatest([this.canShowPageButtons$, this.isLookingAtMinimumDate$, this.isLookingAtMaximumDate$]).pipe(\n map(([canShowPageButtons, isLookingAtMinimumDate, isLookingAtMaximumDate]) => {\n return canShowPageButtons && !(isLookingAtMinimumDate && isLookingAtMaximumDate);\n }),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n // MARK: State Changes\n /**\n * Tap a day.\n *\n * - If the same day is presented, dateTappedTwice is flipped.\n */\n readonly tapDay = this.updater((state, date: Date) => updateCalendarStateWithTappedDate(state, date));\n\n /**\n * Set all events on the calendar.\n */\n readonly setEvents = this.updater((state, events: CalendarEvent<T>[]) => ({ ...state, events }));\n\n /**\n * Set all events on the calendar.\n */\n readonly setDisplayType = this.updater((state, type: CalendarDisplayType) => ({ ...state, type }));\n\n /**\n * Sets the navigation limit.\n */\n readonly setNavigationRangeLimit = this.updater((state, navigationRangeLimit: Maybe<Partial<DateRange>>) => updateCalendarStateWithNavigationRangeLimit(state, navigationRangeLimit));\n\n readonly setShowTodayButton = this.updater((state, showTodayButton: Maybe<boolean>) => ({ ...state, showTodayButton: showTodayButton != null ? showTodayButton : true }));\n readonly setShowPageButtons = this.updater((state, showPageButtons: Maybe<boolean>) => ({ ...state, showPageButtons: showPageButtons != null ? showPageButtons : false }));\n}\n\nexport function updateCalendarStateWithTappedDate(state: CalendarState, date: Date) {\n // only update the date if it is different\n if (!isSameDateDay(state.date, date)) {\n // Only update the date if it is within the date range\n if (!state.navigationRangeLimit || isDateInDateRange(date, state.navigationRangeLimit)) {\n state = { ...state, date, dateTappedTwice: isSameDay(date, state.date) ? !state.dateTappedTwice : false };\n }\n }\n\n return state;\n}\n\nexport function updateCalendarStateWithNavigationRangeLimit(state: CalendarState, navigationRangeLimit: Maybe<Partial<DateRange>>) {\n const { date } = state;\n\n // cap the date if it doesn't fall within the range.\n if (navigationRangeLimit && !isDateInDateRange(date, navigationRangeLimit)) {\n const clampedDate = clampDateToDateRange(date, navigationRangeLimit);\n return { ...state, date: clampedDate, navigationRangeLimit };\n } else {\n return { ...state, navigationRangeLimit };\n }\n}\n","import { formatToTimeAndDurationString, sortDateRangeStartAscendingCompareFunction } from '@dereekb/date';\nimport { type CalendarEvent } from 'angular-calendar';\n\nexport interface DbxCalendarEvent<T> {\n event: CalendarEvent<T>;\n action?: string;\n}\n\nfunction timeSubtitleForEvent(event: CalendarEvent): string {\n let subtitle;\n\n if (event.allDay) {\n subtitle = `(All Day)`;\n } else {\n subtitle = formatToTimeAndDurationString(event.start, event.end ?? new Date());\n }\n\n return subtitle;\n}\n\nexport function prepareAndSortCalendarEvents(events: CalendarEvent[]): CalendarEvent[] {\n return events\n .map((event: CalendarEvent) => {\n const subtitle = timeSubtitleForEvent(event);\n let title;\n\n if (event.allDay) {\n title = event.title + ' ' + subtitle;\n } else {\n title = `${event.title} - ${subtitle}`;\n }\n\n return {\n ...event,\n title\n };\n })\n .sort(sortDateRangeStartAscendingCompareFunction);\n}\n","import { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { isSameMonth } from 'date-fns';\nimport { DbxCalendarStore } from './calendar.store';\nimport { map, withLatestFrom } from 'rxjs';\nimport { MatButtonToggleChange, MatButtonToggleModule } from '@angular/material/button-toggle';\nimport { toSignal } from '@angular/core/rxjs-interop';\nimport { FlexLayoutModule } from '@ngbracket/ngx-layout';\nimport { MatButtonModule } from '@angular/material/button';\nimport { DbxButtonSpacerDirective } from '@dereekb/dbx-web';\nimport { MatIconModule } from '@angular/material/icon';\nimport { CalendarModule } from 'angular-calendar';\n\n@Component({\n selector: 'dbx-calendar-base',\n standalone: true,\n imports: [MatButtonModule, MatButtonToggleModule, DbxButtonSpacerDirective, MatIconModule, CalendarModule, FlexLayoutModule],\n changeDetection: ChangeDetectionStrategy.OnPush,\n templateUrl: './calendar.base.component.html'\n})\nexport class DbxCalendarBaseComponent<T> {\n readonly calendarStore = inject(DbxCalendarStore<T>);\n\n readonly viewDate$ = this.calendarStore.date$;\n\n readonly showTodayButton$ = this.calendarStore.showTodayButton$;\n readonly canJumpToToday$ = this.calendarStore.canJumpToToday$;\n\n readonly isLookingAtMinimumDate$ = this.calendarStore.isLookingAtMinimumDate$;\n readonly isLookingAtMaximumDate$ = this.calendarStore.isLookingAtMaximumDate$;\n readonly hasMultiplePages$ = this.calendarStore.hasMultiplePages$;\n\n readonly showPageButtons$ = this.calendarStore.showPageButtons$;\n\n readonly activeDayIsOpen$ = this.calendarStore.eventsForDateState$.pipe(\n withLatestFrom(this.calendarStore.date$),\n map(([x, date]) => {\n if (x.events.length && isSameMonth(x.date, date)) {\n return !x.dateTappedTwice;\n }\n\n return false;\n })\n );\n\n readonly displayType$ = this.calendarStore.displayType$;\n\n readonly viewDateSignal = toSignal(this.viewDate$, { initialValue: new Date() });\n readonly showTodayButtonSignal = toSignal(this.showTodayButton$);\n readonly canJumpToTodaySignal = toSignal(this.canJumpToToday$);\n readonly isLookingAtMinimumDateSignal = toSignal(this.isLookingAtMinimumDate$, { initialValue: false });\n readonly isLookingAtMaximumDateSignal = toSignal(this.isLookingAtMaximumDate$, { initialValue: false });\n readonly hasMultiplePagesSignal = toSignal(this.hasMultiplePages$, { initialValue: false });\n readonly showPageButtonsSignal = toSignal(this.showPageButtons$);\n readonly activeDayIsOpenSignal = toSignal(this.activeDayIsOpen$);\n readonly displayTypeSignal = toSignal(this.displayType$);\n\n todayClicked(): void {\n this.calendarStore.tapDay(new Date());\n }\n\n firstPageButtonClicked(): void {\n this.calendarStore.tapFirstPage();\n }\n\n nextButtonClicked(): void {\n this.calendarStore.tapNext();\n }\n\n previousButtonClicked(): void {\n this.calendarStore.tapPrevious();\n }\n\n lastPageButtonClicked(): void {\n this.calendarStore.tapLastPage();\n }\n\n typeToggleChanged(event: MatButtonToggleChange): void {\n this.calendarStore.setDisplayType(event.value);\n }\n}\n","<div class=\"dbx-calendar\">\n <h3 class=\"dbx-calendar-title\">{{ viewDateSignal() | calendarDate: displayTypeSignal() + 'ViewTitle' : 'en' }}</h3>\n <div class=\"dbx-calendar-header\">\n <div class=\"dbx-calendar-controls\" fxLayout=\"row\" fxLayout.xs=\"column\" ngClass.xs=\"dbx-calendar-controls-compact\">\n <span class=\"dbx-calendar-controls-left dbx-flex-bar\" fxFlex=\"nogrow\">\n @if (showTodayButtonSignal()) {\n <button mat-stroked-button [disabled]=\"!canJumpToTodaySignal()\" (click)=\"todayClicked()\">Today</button>\n }\n <dbx-button-spacer></dbx-button-spacer>\n @if (hasMultiplePagesSignal()) {\n <div class=\"d-iblock\">\n @if (showPageButtonsSignal()) {\n <button mat-icon-button [disabled]=\"isLookingAtMinimumDateSignal()\" aria-label=\"first page button\" (click)=\"firstPageButtonClicked()\">\n <mat-icon>first_page</mat-icon>\n </button>\n }\n <button mat-icon-button [disabled]=\"isLookingAtMinimumDateSignal()\" [attr.aria-label]=\"'Previous ' + displayTypeSignal() + ' button'\" (click)=\"previousButtonClicked()\">\n <mat-icon>navigate_before</mat-icon>\n </button>\n <button mat-icon-button [disabled]=\"isLookingAtMaximumDateSignal()\" [attr.aria-label]=\"'Next ' + displayTypeSignal() + ' button'\" (click)=\"nextButtonClicked()\">\n <mat-icon>navigate_next</mat-icon>\n </button>\n @if (showPageButtonsSignal()) {\n <button mat-icon-button [disabled]=\"isLookingAtMaximumDateSignal()\" aria-label=\"last page button\" (click)=\"lastPageButtonClicked()\">\n <mat-icon>last_page</mat-icon>\n </button>\n }\n </div>\n }\n </span>\n <span class=\"spacer\"></span>\n <span class=\"dbx-calendar-controls-right\" fxFlex=\"nogrow\">\n <ng-content select=\"[controls]\"></ng-content>\n </span>\n </div>\n </div>\n <ng-content></ng-content>\n</div>\n","import { Component, inject, output, ChangeDetectionStrategy, computed } from '@angular/core';\nimport { isSameMonth } from 'date-fns';\nimport { CalendarEvent, CalendarModule, CalendarDayModule, CalendarWeekModule } from 'angular-calendar';\nimport { DbxCalendarStore } from './calendar.store';\nimport { distinctUntilChanged, map, shareReplay, withLatestFrom } from 'rxjs';\nimport { MatButtonToggleChange, MatButtonToggleModule } from '@angular/material/button-toggle';\nimport { DbxCalendarEvent, prepareAndSortCalendarEvents } from './calendar';\nimport { DbxCalendarBaseComponent } from './calendar.base.component';\nimport { NgClass } from '@angular/common';\nimport { toSignal } from '@angular/core/rxjs-interop';\n\n@Component({\n selector: 'dbx-calendar',\n templateUrl: './calendar.component.html',\n imports: [DbxCalendarBaseComponent, CalendarModule, CalendarDayModule, CalendarWeekModule, MatButtonToggleModule, NgClass],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true\n})\nexport class DbxCalendarComponent<T> {\n readonly calendarStore = inject(DbxCalendarStore<T>);\n\n readonly clickEvent = output<DbxCalendarEvent<T>>();\n\n readonly viewDate$ = this.calendarStore.date$;\n\n readonly events$ = this.calendarStore.visibleEvents$.pipe(map(prepareAndSortCalendarEvents), shareReplay(1));\n\n readonly activeDayIsOpen$ = this.calendarStore.eventsForDateState$.pipe(\n withLatestFrom(this.calendarStore.date$),\n map(([x, date]) => {\n if (x.events.length && isSameMonth(x.date, date)) {\n return !x.dateTappedTwice;\n }\n\n return false;\n }),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n readonly displayType$ = this.calendarStore.displayType$;\n\n readonly viewDateSignal = toSignal(this.viewDate$, { initialValue: new Date() });\n readonly eventsSignal = toSignal(this.events$, { initialValue: [] });\n readonly activeDayIsOpenSignal = toSignal(this.activeDayIsOpen$, { initialValue: true });\n readonly displayTypeSignal = toSignal(this.displayType$);\n readonly displayTypeClassSignal = computed(() => `dbx-calendar-content-${this.displayTypeSignal()}`);\n\n todayClicked(): void {\n this.dayClicked({ date: new Date() });\n }\n\n nextButtonClicked(): void {\n this.calendarStore.tapNext();\n }\n\n previousButtonClicked(): void {\n this.calendarStore.tapPrevious();\n }\n\n dayClicked({ date }: { date: Date }): void {\n this.calendarStore.tapDay(date);\n }\n\n eventClicked(action: string, event: CalendarEvent<T>): void {\n this.clickEvent.emit({ action, event });\n }\n\n typeToggleChanged(event: MatButtonToggleChange): void {\n this.calendarStore.setDisplayType(event.value);\n }\n}\n","<dbx-calendar-base>\n <ng-container controls>\n <mat-button-toggle-group name=\"calendarDisplayStyle\" [value]=\"displayTypeSignal()\" (change)=\"typeToggleChanged($event)\" aria-label=\"Display Style\">\n <mat-button-toggle value=\"month\">Month</mat-button-toggle>\n <mat-button-toggle value=\"week\">Week</mat-button-toggle>\n <mat-button-toggle value=\"day\">Day</mat-button-toggle>\n </mat-button-toggle-group>\n </ng-container>\n <div class=\"dbx-calendar-content\" [ngClass]=\"displayTypeClassSignal()\">\n @switch (displayTypeSignal()) {\n @case ('month') {\n <mwl-calendar-month-view [viewDate]=\"viewDateSignal()\" [events]=\"eventsSignal()\" [activeDayIsOpen]=\"activeDayIsOpenSignal()\" (dayClicked)=\"dayClicked($event.day)\" (eventClicked)=\"eventClicked('Clicked', $event.event)\"></mwl-calendar-month-view>\n }\n @case ('week') {\n <mwl-calendar-week-view [viewDate]=\"viewDateSignal()\" [events]=\"eventsSignal()\" (eventClicked)=\"eventClicked('Clicked', $event.event)\"></mwl-calendar-week-view>\n }\n @case ('day') {\n <mwl-calendar-day-view [viewDate]=\"viewDateSignal()\" [events]=\"eventsSignal()\" (eventClicked)=\"eventClicked('Clicked', $event.event)\"></mwl-calendar-day-view>\n }\n }\n </div>\n</dbx-calendar-base>\n","import { type EnvironmentProviders, importProvidersFrom } from '@angular/core';\nimport { CalendarModule, DateAdapter } from 'angular-calendar';\nimport { adapterFactory as dateAdapterFactory } from 'angular-calendar/date-adapters/date-fns';\n\n/**\n * Provides default configuration for the DbxCalendarModule\n */\nexport function provideDbxCalendar() {\n const providers: EnvironmentProviders = importProvidersFrom(CalendarModule.forRoot({ provide: DateAdapter, useFactory: dateAdapterFactory }));\n\n return providers;\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i5","i1","dateAdapterFactory"],"mappings":"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"}
|