@dereekb/dbx-web 9.20.20 → 9.22.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.
Files changed (126) hide show
  1. package/calendar/package.json +2 -2
  2. package/esm2020/lib/action/snackbar/action.snackbar.component.mjs +1 -1
  3. package/esm2020/lib/action/transition/transition.safety.dialog.component.mjs +1 -1
  4. package/esm2020/lib/button/button.component.mjs +14 -2
  5. package/esm2020/lib/button/progress/base.progress.button.directive.mjs +3 -1
  6. package/esm2020/lib/button/progress/button.progress.config.mjs +1 -1
  7. package/esm2020/lib/button/progress/spinner.button.component.mjs +7 -4
  8. package/esm2020/lib/extension/model/model.tracker.view.storage.mjs +2 -3
  9. package/esm2020/lib/extension/model/model.types.service.mjs +2 -3
  10. package/esm2020/lib/extension/model/state/effects/tracker.effects.mjs +2 -2
  11. package/esm2020/lib/interaction/filter/filter.preset.menu.component.mjs +2 -3
  12. package/esm2020/lib/interaction/filter/filter.preset.mjs +2 -3
  13. package/esm2020/lib/interaction/filter/filter.wrapper.component.mjs +1 -1
  14. package/esm2020/lib/interaction/popup/popup.controls.buttons.component.mjs +1 -1
  15. package/esm2020/lib/layout/column/two/two.column.sref.showright.directive.mjs +2 -3
  16. package/esm2020/lib/layout/content/content.layout.module.mjs +31 -4
  17. package/esm2020/lib/layout/content/content.pit.directive.mjs +19 -0
  18. package/esm2020/lib/layout/content/index.mjs +2 -1
  19. package/esm2020/lib/layout/list/list.wrapper.mjs +1 -1
  20. package/esm2020/mapbox/lib/mapbox.change.service.mjs +2 -3
  21. package/esm2020/table/dereekb-dbx-web-table.mjs +5 -0
  22. package/esm2020/table/index.mjs +2 -0
  23. package/esm2020/table/lib/date/date.table.column.header.component.mjs +49 -0
  24. package/esm2020/table/lib/date/daterange.table.cell.input.component.mjs +166 -0
  25. package/esm2020/table/lib/date/index.mjs +4 -0
  26. package/esm2020/table/lib/date/table.date.module.mjs +68 -0
  27. package/esm2020/table/lib/index.mjs +18 -0
  28. package/esm2020/table/lib/table.cell.action.component.mjs +28 -0
  29. package/esm2020/table/lib/table.cell.input.component.mjs +31 -0
  30. package/esm2020/table/lib/table.cell.summaryend.component.mjs +28 -0
  31. package/esm2020/table/lib/table.cell.summarystart.component.mjs +31 -0
  32. package/esm2020/table/lib/table.column.directive.mjs +30 -0
  33. package/esm2020/table/lib/table.column.footer.component.mjs +35 -0
  34. package/esm2020/table/lib/table.column.header.component.mjs +35 -0
  35. package/esm2020/table/lib/table.component.mjs +58 -0
  36. package/esm2020/table/lib/table.directive.mjs +37 -0
  37. package/esm2020/table/lib/table.item.action.component.mjs +35 -0
  38. package/esm2020/table/lib/table.item.cell.component.mjs +39 -0
  39. package/esm2020/table/lib/table.item.directive.mjs +30 -0
  40. package/esm2020/table/lib/table.item.header.component.mjs +27 -0
  41. package/esm2020/table/lib/table.mjs +2 -0
  42. package/esm2020/table/lib/table.module.mjs +74 -0
  43. package/esm2020/table/lib/table.store.mjs +53 -0
  44. package/fesm2015/dereekb-dbx-web-mapbox.mjs +1 -2
  45. package/fesm2015/dereekb-dbx-web-mapbox.mjs.map +1 -1
  46. package/fesm2015/dereekb-dbx-web-table.mjs +745 -0
  47. package/fesm2015/dereekb-dbx-web-table.mjs.map +1 -0
  48. package/fesm2015/dereekb-dbx-web.mjs +99 -38
  49. package/fesm2015/dereekb-dbx-web.mjs.map +1 -1
  50. package/fesm2020/dereekb-dbx-web-mapbox.mjs +1 -2
  51. package/fesm2020/dereekb-dbx-web-mapbox.mjs.map +1 -1
  52. package/fesm2020/dereekb-dbx-web-table.mjs +738 -0
  53. package/fesm2020/dereekb-dbx-web-table.mjs.map +1 -0
  54. package/fesm2020/dereekb-dbx-web.mjs +97 -38
  55. package/fesm2020/dereekb-dbx-web.mjs.map +1 -1
  56. package/lib/button/_button.scss +4 -0
  57. package/lib/button/button.component.d.ts +5 -2
  58. package/lib/button/progress/button.progress.config.d.ts +7 -0
  59. package/lib/button/progress/spinner.button.component.d.ts +1 -0
  60. package/lib/extension/_extension.scss +19 -0
  61. package/lib/extension/table/_table.scss +60 -0
  62. package/lib/layout/content/_content.scss +14 -0
  63. package/lib/layout/content/content.layout.module.d.ts +3 -2
  64. package/lib/layout/content/content.pit.directive.d.ts +8 -0
  65. package/lib/layout/content/index.d.ts +1 -0
  66. package/lib/layout/list/list.wrapper.d.ts +2 -1
  67. package/lib/layout/style/_style.scss +4 -0
  68. package/lib/style/_config.scss +8 -2
  69. package/mapbox/esm2020/lib/mapbox.change.service.mjs +2 -3
  70. package/mapbox/fesm2015/dereekb-dbx-web-mapbox.mjs +1 -2
  71. package/mapbox/fesm2015/dereekb-dbx-web-mapbox.mjs.map +1 -1
  72. package/mapbox/fesm2020/dereekb-dbx-web-mapbox.mjs +1 -2
  73. package/mapbox/fesm2020/dereekb-dbx-web-mapbox.mjs.map +1 -1
  74. package/mapbox/package.json +3 -3
  75. package/package.json +14 -6
  76. package/table/README.md +6 -0
  77. package/table/esm2020/dereekb-dbx-web-table.mjs +5 -0
  78. package/table/esm2020/index.mjs +2 -0
  79. package/table/esm2020/lib/date/date.table.column.header.component.mjs +49 -0
  80. package/table/esm2020/lib/date/daterange.table.cell.input.component.mjs +166 -0
  81. package/table/esm2020/lib/date/index.mjs +4 -0
  82. package/table/esm2020/lib/date/table.date.module.mjs +68 -0
  83. package/table/esm2020/lib/index.mjs +18 -0
  84. package/table/esm2020/lib/table.cell.action.component.mjs +28 -0
  85. package/table/esm2020/lib/table.cell.input.component.mjs +31 -0
  86. package/table/esm2020/lib/table.cell.summaryend.component.mjs +28 -0
  87. package/table/esm2020/lib/table.cell.summarystart.component.mjs +31 -0
  88. package/table/esm2020/lib/table.column.directive.mjs +30 -0
  89. package/table/esm2020/lib/table.column.footer.component.mjs +35 -0
  90. package/table/esm2020/lib/table.column.header.component.mjs +35 -0
  91. package/table/esm2020/lib/table.component.mjs +58 -0
  92. package/table/esm2020/lib/table.directive.mjs +37 -0
  93. package/table/esm2020/lib/table.item.action.component.mjs +35 -0
  94. package/table/esm2020/lib/table.item.cell.component.mjs +39 -0
  95. package/table/esm2020/lib/table.item.directive.mjs +30 -0
  96. package/table/esm2020/lib/table.item.header.component.mjs +27 -0
  97. package/table/esm2020/lib/table.mjs +2 -0
  98. package/table/esm2020/lib/table.module.mjs +74 -0
  99. package/table/esm2020/lib/table.store.mjs +53 -0
  100. package/table/fesm2015/dereekb-dbx-web-table.mjs +745 -0
  101. package/table/fesm2015/dereekb-dbx-web-table.mjs.map +1 -0
  102. package/table/fesm2020/dereekb-dbx-web-table.mjs +738 -0
  103. package/table/fesm2020/dereekb-dbx-web-table.mjs.map +1 -0
  104. package/table/index.d.ts +1 -0
  105. package/table/lib/date/date.table.column.header.component.d.ts +18 -0
  106. package/table/lib/date/daterange.table.cell.input.component.d.ts +66 -0
  107. package/table/lib/date/index.d.ts +3 -0
  108. package/table/lib/date/table.date.module.d.ts +16 -0
  109. package/table/lib/index.d.ts +17 -0
  110. package/table/lib/table.cell.action.component.d.ts +9 -0
  111. package/table/lib/table.cell.input.component.d.ts +12 -0
  112. package/table/lib/table.cell.summaryend.component.d.ts +9 -0
  113. package/table/lib/table.cell.summarystart.component.d.ts +12 -0
  114. package/table/lib/table.column.directive.d.ts +18 -0
  115. package/table/lib/table.column.footer.component.d.ts +8 -0
  116. package/table/lib/table.column.header.component.d.ts +8 -0
  117. package/table/lib/table.component.d.ts +29 -0
  118. package/table/lib/table.d.ts +99 -0
  119. package/table/lib/table.directive.d.ts +16 -0
  120. package/table/lib/table.item.action.component.d.ts +7 -0
  121. package/table/lib/table.item.cell.component.d.ts +13 -0
  122. package/table/lib/table.item.directive.d.ts +17 -0
  123. package/table/lib/table.item.header.component.d.ts +7 -0
  124. package/table/lib/table.module.d.ts +22 -0
  125. package/table/lib/table.store.d.ts +38 -0
  126. package/table/package.json +35 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dereekb-dbx-web-table.mjs","sources":["../../../../../packages/dbx-web/table/src/lib/date/date.table.column.header.component.ts","../../../../../packages/dbx-web/table/src/lib/table.store.ts","../../../../../packages/dbx-web/table/src/lib/date/daterange.table.cell.input.component.ts","../../../../../packages/dbx-web/table/src/lib/date/table.date.module.ts","../../../../../packages/dbx-web/table/src/lib/table.cell.action.component.ts","../../../../../packages/dbx-web/table/src/lib/table.cell.input.component.ts","../../../../../packages/dbx-web/table/src/lib/table.cell.summaryend.component.ts","../../../../../packages/dbx-web/table/src/lib/table.cell.summarystart.component.ts","../../../../../packages/dbx-web/table/src/lib/table.column.directive.ts","../../../../../packages/dbx-web/table/src/lib/table.column.header.component.ts","../../../../../packages/dbx-web/table/src/lib/table.column.footer.component.ts","../../../../../packages/dbx-web/table/src/lib/table.item.directive.ts","../../../../../packages/dbx-web/table/src/lib/table.item.cell.component.ts","../../../../../packages/dbx-web/table/src/lib/table.item.header.component.ts","../../../../../packages/dbx-web/table/src/lib/table.item.action.component.ts","../../../../../packages/dbx-web/table/src/lib/table.component.ts","../../../../../packages/dbx-web/table/src/lib/table.component.html","../../../../../packages/dbx-web/table/src/lib/table.directive.ts","../../../../../packages/dbx-web/table/src/lib/table.module.ts","../../../../../packages/dbx-web/table/src/dereekb-dbx-web-table.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { DbxInjectionComponentConfig, DbxInjectionComponentConfigFactory } from '@dereekb/dbx-core';\nimport { Maybe } from '@dereekb/util';\nimport { DbxTableColumn } from '../table';\n\n/**\n * A table header component used for rendering date values on the header.\n */\n@Component({\n template: `\n <div *ngIf=\"date\" class=\"dbx-table-date-column-header\">\n <span class=\"dbx-table-date-column-header-left\">{{ date | date: left }}</span>\n <span>{{ date | date: right }}</span>\n </div>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class DbxTableDateHeaderComponent {\n left = 'E';\n right = 'MMM d';\n\n private _date: Maybe<Date>;\n\n constructor() {}\n\n get date() {\n return this._date;\n }\n\n set date(date: Maybe<Date>) {\n this._date = date;\n }\n}\n\nexport function dbxTableDateHeaderInjectionFactory(): DbxInjectionComponentConfigFactory<DbxTableColumn<Date>, DbxTableDateHeaderComponent> {\n return (column: DbxTableColumn<Date>) => {\n const config: DbxInjectionComponentConfig<DbxTableDateHeaderComponent> = {\n componentClass: DbxTableDateHeaderComponent,\n init: (x) => {\n x.date = column.meta;\n }\n };\n\n return config;\n };\n}\n","import { Injectable } from '@angular/core';\nimport { beginLoading, filterMaybe, LoadingState, PageListLoadingState, valueFromLoadingState } from '@dereekb/rxjs';\nimport { Maybe } from '@dereekb/util';\nimport { ComponentStore } from '@ngrx/component-store';\nimport { Observable, distinctUntilChanged, first, map, shareReplay, switchMap, tap, combineLatest, of } from 'rxjs';\nimport { DbxTableColumn, DbxTableContextData, DbxTableContextDataDelegate, DbxTableViewDelegate } from './table';\n\nexport interface DbxTableStoreState<I, C, T> {\n /**\n * Contextual input that is passed to the data delegate.\n */\n readonly input: Maybe<I>;\n /**\n * Delegate used for retrieving info given the selection.\n */\n readonly dataDelegate: Maybe<DbxTableContextDataDelegate<I, C, T>>;\n /**\n * Delegate used for retrieving view configurations.\n */\n readonly viewDelegate: Maybe<DbxTableViewDelegate<I, C, T>>;\n}\n\n@Injectable()\nexport class DbxTableStore<I = unknown, C = unknown, T = unknown> extends ComponentStore<DbxTableStoreState<I, C, T>> {\n constructor() {\n super({\n input: null,\n dataDelegate: null,\n viewDelegate: null\n });\n }\n\n // MARK: Effects\n readonly loadMore = this.effect((input: Observable<void>) => {\n return input.pipe(\n switchMap(() =>\n this.data$.pipe(\n first(),\n tap((x) => {\n if (x.loadMore) {\n x.loadMore();\n }\n })\n )\n )\n );\n });\n\n // MARK: Accessors\n readonly input$ = this.state$.pipe(\n map((x) => x.input),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n readonly dataDelegate$ = this.state$.pipe(\n map((x) => x.dataDelegate),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n readonly currentViewDelegate$ = this.state$.pipe(\n map((x) => x.viewDelegate),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n readonly viewDelegate$ = this.currentViewDelegate$.pipe(filterMaybe());\n\n readonly dataState$: Observable<LoadingState<DbxTableContextData<I, C, T>>> = combineLatest([this.input$, this.dataDelegate$]).pipe(\n switchMap(([input, dataDelegate]) => {\n let obs: Observable<LoadingState<DbxTableContextData<I, C, T>>>;\n\n if (input && dataDelegate) {\n obs = dataDelegate.loadData(input);\n } else {\n obs = of(beginLoading<DbxTableContextData<I, C, T>>());\n }\n\n return obs;\n }),\n shareReplay(1)\n );\n\n readonly data$: Observable<DbxTableContextData<I, C, T>> = this.dataState$.pipe(\n //\n valueFromLoadingState(),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n readonly columns$: Observable<DbxTableColumn<C>[]> = this.data$.pipe(\n map((x) => x.columns),\n shareReplay(1)\n );\n\n readonly itemsState$: Observable<PageListLoadingState<T>> = this.data$.pipe(\n switchMap((x) => x.items$),\n shareReplay(1)\n );\n\n readonly items$: Observable<T[]> = this.itemsState$.pipe(valueFromLoadingState(), shareReplay(1));\n\n // MARK: State Changes\n readonly setInput = this.updater((state, input: Maybe<I>) => ({ ...state, input }));\n readonly setDataDelegate = this.updater((state, dataDelegate: Maybe<DbxTableContextDataDelegate<I, C, T>>) => ({ ...state, dataDelegate }));\n readonly setViewDelegate = this.updater((state, viewDelegate: Maybe<DbxTableViewDelegate<I, C, T>>) => ({ ...state, viewDelegate }));\n}\n","import { ChangeDetectionStrategy, Component, Injectable, OnDestroy, OnInit } from '@angular/core';\nimport { DateRangeDayDistanceInput, isSameDateDay } from '@dereekb/date';\nimport { DbxTableStore } from '../table.store';\nimport { MatDateRangeSelectionStrategy, DateRange, MAT_DATE_RANGE_SELECTION_STRATEGY } from '@angular/material/datepicker';\nimport { DateAdapter } from '@angular/material/core';\nimport { Days, Maybe } from '@dereekb/util';\nimport { FormGroup, FormControl } from '@angular/forms';\nimport { SubscriptionObject } from '@dereekb/rxjs';\nimport { addDays, format as formatDate } from 'date-fns';\nimport { BehaviorSubject, distinctUntilChanged, filter, map, Observable, of, startWith, switchMap, throttleTime, combineLatest } from 'rxjs';\nimport { DbxInjectionComponentConfig } from '@dereekb/dbx-core';\n\n@Injectable()\nexport class DbxTableDateRangeDayDistanceInputCellInputRangeSelectionStrategy<D> implements MatDateRangeSelectionStrategy<D> {\n constructor(private _dateAdapter: DateAdapter<D>, private dbxTableDateRangeDayDistanceInputCellInputComponent: DbxTableDateRangeDayDistanceInputCellInputComponent) {}\n\n selectionFinished(date: D | null): DateRange<D> {\n return this._createFiveDayRange(date);\n }\n\n createPreview(activeDate: D | null): DateRange<D> {\n return this._createFiveDayRange(activeDate);\n }\n\n private _createFiveDayRange(date: D | null): DateRange<D> {\n if (date) {\n const start = date;\n const end = this._dateAdapter.addCalendarDays(date, this.dbxTableDateRangeDayDistanceInputCellInputComponent.daysDistance);\n return new DateRange<D>(start, end);\n }\n\n return new DateRange<D>(null, null);\n }\n}\n\nexport interface DbxTableDateRangeDayDistanceInputCellInputComponentConfig {\n /**\n * Button format for the dates\n */\n buttonFormat?: string;\n /**\n * Distance from the start to span.\n */\n daysDistance: Days;\n minDate?: Maybe<Date>;\n maxDate?: Maybe<Date>;\n}\n\nexport const DEFAULT_DBX_TABLE_DATE_RANGE_DAY_DISTIANCE_INPUT_CELL_COMPONENT_CONFIG = { daysDistance: 6 };\n\nexport const DEFAULT_DBX_TABLE_DATE_RANGE_DAY_BUTTON_FORMAT = 'MMM dd';\n\n/**\n * Cell input for a DateRangeDayDistanceInput value.\n */\n@Component({\n template: `\n <div class=\"dbx-table-date-range-distance-input-cell\">\n <mat-date-range-input class=\"dbx-table-date-range-distance-input\" [min]=\"minDate$ | async\" [max]=\"maxDate$ | async\" [formGroup]=\"range\" [rangePicker]=\"picker\">\n <input matStartDate formControlName=\"start\" placeholder=\"Start date\" />\n <input matEndDate formControlName=\"end\" placeholder=\"End date\" />\n </mat-date-range-input>\n <button mat-stroked-button color=\"primary\" (click)=\"picker.open()\">{{ dateRangeString$ | async }}</button>\n <mat-date-range-picker #picker (opened)=\"pickerOpened()\" (closed)=\"pickerClosed()\"></mat-date-range-picker>\n </div>\n `,\n providers: [\n {\n provide: MAT_DATE_RANGE_SELECTION_STRATEGY,\n useClass: DbxTableDateRangeDayDistanceInputCellInputRangeSelectionStrategy\n }\n ],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class DbxTableDateRangeDayDistanceInputCellInputComponent implements OnInit, OnDestroy {\n private _syncSub = new SubscriptionObject();\n private _valueSub = new SubscriptionObject();\n\n private _pickerOpened = new BehaviorSubject<boolean>(false);\n private _config = new BehaviorSubject<DbxTableDateRangeDayDistanceInputCellInputComponentConfig>(DEFAULT_DBX_TABLE_DATE_RANGE_DAY_DISTIANCE_INPUT_CELL_COMPONENT_CONFIG);\n\n readonly range = new FormGroup({\n start: new FormControl<Maybe<Date>>(null),\n end: new FormControl<Maybe<Date>>(null)\n });\n\n readonly pickerOpened$ = this._pickerOpened.asObservable();\n\n readonly minDate$ = this._config.pipe(map((x) => x.minDate));\n readonly maxDate$ = this._config.pipe(map((x) => x.maxDate));\n\n readonly buttonFormat$ = this._config.pipe(map((x) => x.buttonFormat ?? DEFAULT_DBX_TABLE_DATE_RANGE_DAY_BUTTON_FORMAT));\n\n readonly dateRangeString$ = combineLatest([this.buttonFormat$, this.range.valueChanges]).pipe(\n map(([buttonFormat, { start, end }]) => {\n if (start && end) {\n return `${formatDate(start, buttonFormat)} - ${formatDate(end, buttonFormat)}`;\n } else {\n return `Select Date`;\n }\n })\n );\n\n constructor(readonly tableStore: DbxTableStore<DateRangeDayDistanceInput>) {}\n\n ngOnInit(): void {\n this._syncSub.subscription = this.tableStore.input$.subscribe((x) => {\n const start = x?.date ?? null;\n const end = start ? addDays(start, this.daysDistance) : undefined;\n\n this.range.setValue({\n start,\n end\n });\n });\n\n this._valueSub.subscription = this._pickerOpened\n .pipe(\n distinctUntilChanged(),\n switchMap((opened) => {\n let obs: Observable<{ start?: Maybe<Date> }>;\n\n if (opened) {\n obs = of({});\n } else {\n obs = this.range.valueChanges.pipe(startWith(this.range.value));\n }\n\n return obs;\n }),\n filter((x) => Boolean(x.start)),\n distinctUntilChanged((a, b) => isSameDateDay(a.start, b.start)),\n throttleTime(100, undefined, { trailing: true })\n )\n .subscribe((x) => {\n if (x.start) {\n this.tableStore.setInput({ date: x.start, distance: this.daysDistance });\n }\n });\n }\n\n ngOnDestroy(): void {\n this._pickerOpened.complete();\n this._config.complete();\n this._syncSub.destroy();\n this._valueSub.destroy();\n }\n\n get daysDistance() {\n return this._config.value.daysDistance;\n }\n\n get config() {\n return this._config.value;\n }\n\n set config(config: Maybe<DbxTableDateRangeDayDistanceInputCellInputComponentConfig>) {\n this._config.next(config || DEFAULT_DBX_TABLE_DATE_RANGE_DAY_DISTIANCE_INPUT_CELL_COMPONENT_CONFIG);\n }\n\n pickerOpened() {\n this._pickerOpened.next(true);\n }\n\n pickerClosed() {\n this._pickerOpened.next(false);\n }\n}\n\nexport function dbxTableDateRangeDayDistanceInputCellInput(componentConfig?: DbxTableDateRangeDayDistanceInputCellInputComponentConfig): DbxInjectionComponentConfig<DbxTableDateRangeDayDistanceInputCellInputComponent> {\n const config: DbxInjectionComponentConfig<DbxTableDateRangeDayDistanceInputCellInputComponent> = {\n componentClass: DbxTableDateRangeDayDistanceInputCellInputComponent,\n init: (x) => {\n x.config = componentConfig;\n }\n };\n\n return config;\n}\n","import { MatIconModule } from '@angular/material/icon';\nimport { MatButtonModule } from '@angular/material/button';\nimport { DbxLoadingModule } from '@dereekb/dbx-web';\nimport { MatTableModule } from '@angular/material/table';\nimport { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { DbxInjectionComponentModule } from '@dereekb/dbx-core';\nimport { DbxTableDateHeaderComponent } from './date.table.column.header.component';\nimport { DbxTableDateRangeDayDistanceInputCellInputComponent } from './daterange.table.cell.input.component';\nimport { MatDatepickerModule } from '@angular/material/datepicker';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\n\nconst declarations = [\n //\n DbxTableDateHeaderComponent,\n DbxTableDateRangeDayDistanceInputCellInputComponent\n];\n\n@NgModule({\n imports: [\n //\n CommonModule,\n DbxLoadingModule,\n DbxInjectionComponentModule,\n FormsModule,\n ReactiveFormsModule,\n MatIconModule,\n MatDatepickerModule,\n MatButtonModule,\n MatTableModule\n ],\n declarations,\n exports: declarations\n})\nexport class DbxTableDateModule {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { map, distinctUntilChanged } from 'rxjs';\nimport { DbxTableStore } from './table.store';\n\n@Component({\n selector: 'dbx-table-action-cell',\n template: `\n <dbx-injection [config]=\"config$ | async\"></dbx-injection>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class DbxTableActionCellComponent {\n readonly config$ = this.tableStore.viewDelegate$.pipe(\n map((x) => x.summaryRowEnd),\n distinctUntilChanged()\n );\n\n constructor(readonly tableStore: DbxTableStore) {}\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { map, distinctUntilChanged } from 'rxjs';\nimport { DbxTableStore } from './table.store';\n\n/**\n * A table header component used for injecting the input picker view.\n */\n@Component({\n selector: 'dbx-table-input-cell',\n template: `\n <dbx-injection [config]=\"config$ | async\"></dbx-injection>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class DbxTableInputCellComponent {\n readonly config$ = this.tableStore.viewDelegate$.pipe(\n map((x) => x.inputHeader),\n distinctUntilChanged()\n );\n\n constructor(readonly tableStore: DbxTableStore) {}\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { map, distinctUntilChanged } from 'rxjs';\nimport { DbxTableStore } from './table.store';\n\n@Component({\n selector: 'dbx-table-summary-end-cell',\n template: `\n <dbx-injection [config]=\"config$ | async\"></dbx-injection>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class DbxTableSummaryEndCellComponent {\n readonly config$ = this.tableStore.viewDelegate$.pipe(\n map((x) => x.summaryRowEnd),\n distinctUntilChanged()\n );\n\n constructor(readonly tableStore: DbxTableStore) {}\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { map, distinctUntilChanged } from 'rxjs';\nimport { DbxTableStore } from './table.store';\n\n/**\n * A table header component used for injecting the input picker view.\n */\n@Component({\n selector: 'dbx-table-summary-start-cell',\n template: `\n <dbx-injection [config]=\"config$ | async\"></dbx-injection>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class DbxTableSummaryStartCellComponent {\n readonly config$ = this.tableStore.viewDelegate$.pipe(\n map((x) => x.summaryRowHeader),\n distinctUntilChanged()\n );\n\n constructor(readonly tableStore: DbxTableStore) {}\n}\n","import { filterMaybe } from '@dereekb/rxjs';\nimport { OnDestroy, Input, Directive } from '@angular/core';\nimport { distinctUntilChanged, BehaviorSubject } from 'rxjs';\nimport { DbxTableStore } from './table.store';\nimport { Maybe } from '@dereekb/util';\nimport { DbxTableColumn } from './table';\n\n/**\n * Abstract directive that has a column input.\n */\n@Directive()\nexport class AbstractDbxTableColumnDirective<C> implements OnDestroy {\n private readonly _column = new BehaviorSubject<Maybe<DbxTableColumn<C>>>(undefined);\n readonly column$ = this._column.pipe(filterMaybe(), distinctUntilChanged());\n\n constructor(readonly tableStore: DbxTableStore<unknown, C>) {}\n\n @Input()\n set column(column: Maybe<DbxTableColumn<C>>) {\n this._column.next(column);\n }\n\n ngOnDestroy(): void {\n this._column.complete();\n }\n}\n","import { ChangeDetectionStrategy, Component, OnDestroy } from '@angular/core';\nimport { map, distinctUntilChanged, switchMap, of } from 'rxjs';\nimport { AbstractDbxTableColumnDirective } from './table.column.directive';\n\n@Component({\n selector: 'dbx-table-column-header',\n template: `\n <dbx-injection [config]=\"config$ | async\"></dbx-injection>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class DbxTableColumnHeaderComponent<C> extends AbstractDbxTableColumnDirective<C> implements OnDestroy {\n readonly config$ = this.tableStore.viewDelegate$.pipe(\n switchMap((viewDelegate) => {\n const columnHeader = viewDelegate.columnHeader;\n\n if (columnHeader) {\n return this.column$.pipe(map((x) => columnHeader(x)));\n } else {\n return of(undefined);\n }\n }),\n distinctUntilChanged()\n );\n}\n","import { ChangeDetectionStrategy, Component, OnDestroy } from '@angular/core';\nimport { map, distinctUntilChanged, switchMap, of } from 'rxjs';\nimport { AbstractDbxTableColumnDirective } from './table.column.directive';\n\n@Component({\n selector: 'dbx-table-column-footer',\n template: `\n <dbx-injection [config]=\"config$ | async\"></dbx-injection>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class DbxTableColumnFooterComponent<C> extends AbstractDbxTableColumnDirective<C> implements OnDestroy {\n readonly config$ = this.tableStore.viewDelegate$.pipe(\n switchMap((viewDelegate) => {\n const columnFooter = viewDelegate.columnFooter;\n\n if (columnFooter) {\n return this.column$.pipe(map((x) => columnFooter(x)));\n } else {\n return of(undefined);\n }\n }),\n distinctUntilChanged()\n );\n}\n","import { filterMaybe } from '@dereekb/rxjs';\nimport { OnDestroy, Input, Directive } from '@angular/core';\nimport { distinctUntilChanged, BehaviorSubject } from 'rxjs';\nimport { DbxTableStore } from './table.store';\nimport { Maybe } from '@dereekb/util';\n\n/**\n * Abstract directive that has an element input.\n */\n@Directive()\nexport abstract class AbstractDbxTableElementDirective<T, C = unknown> implements OnDestroy {\n private readonly _element = new BehaviorSubject<Maybe<T>>(undefined);\n readonly element$ = this._element.pipe(filterMaybe(), distinctUntilChanged());\n\n constructor(readonly tableStore: DbxTableStore<unknown, C, T>) {}\n\n @Input()\n set element(element: Maybe<T>) {\n this._element.next(element);\n }\n\n ngOnDestroy(): void {\n this._element.complete();\n }\n}\n","import { filterMaybe } from '@dereekb/rxjs';\nimport { ChangeDetectionStrategy, Component, Input } from '@angular/core';\nimport { map, distinctUntilChanged, BehaviorSubject, switchMap, combineLatest } from 'rxjs';\nimport { Maybe } from '@dereekb/util';\nimport { AbstractDbxTableElementDirective } from './table.item.directive';\nimport { DbxTableColumn } from './table';\n\n@Component({\n selector: 'dbx-table-item-cell',\n template: `\n <dbx-injection [config]=\"config$ | async\"></dbx-injection>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class DbxTableItemCellComponent<T, C> extends AbstractDbxTableElementDirective<T, C> {\n private readonly _column = new BehaviorSubject<Maybe<DbxTableColumn<C>>>(undefined);\n readonly column$ = this._column.pipe(filterMaybe(), distinctUntilChanged());\n\n readonly config$ = this.tableStore.viewDelegate$.pipe(\n switchMap((viewDelegate) => combineLatest([this.column$, this.element$]).pipe(map(([column, element]) => viewDelegate.itemCell(column, element)))),\n distinctUntilChanged()\n );\n\n @Input()\n set column(column: Maybe<DbxTableColumn<C>>) {\n this._column.next(column);\n }\n\n override ngOnDestroy(): void {\n super.ngOnDestroy();\n this._column.complete();\n }\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { map, distinctUntilChanged, switchMap } from 'rxjs';\nimport { AbstractDbxTableElementDirective } from './table.item.directive';\n\n@Component({\n selector: 'dbx-table-item-header',\n template: `\n <dbx-injection [config]=\"config$ | async\"></dbx-injection>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class DbxTableItemHeaderComponent<T> extends AbstractDbxTableElementDirective<T> {\n readonly config$ = this.tableStore.viewDelegate$.pipe(\n switchMap((viewDelegate) => this.element$.pipe(map((x) => viewDelegate.itemHeader(x)))),\n distinctUntilChanged()\n );\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { map, distinctUntilChanged, switchMap, of } from 'rxjs';\nimport { AbstractDbxTableElementDirective } from './table.item.directive';\n\n@Component({\n selector: 'dbx-table-item-action',\n template: `\n <dbx-injection [config]=\"config$ | async\"></dbx-injection>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class DbxTableItemActionComponent<T> extends AbstractDbxTableElementDirective<T> {\n readonly config$ = this.tableStore.viewDelegate$.pipe(\n switchMap((viewDelegate) => {\n const itemAction = viewDelegate.itemAction;\n\n if (itemAction) {\n return this.element$.pipe(map((x) => itemAction(x)));\n } else {\n return of(undefined);\n }\n }),\n distinctUntilChanged()\n );\n}\n","import { ChangeDetectionStrategy, Component, OnDestroy, TrackByFunction } from '@angular/core';\nimport { DbxTableStore } from './table.store';\nimport { loadingStateContext } from '@dereekb/rxjs';\nimport { shareReplay, map, Observable } from 'rxjs';\n\nexport const DBX_TABLE_ITEMS_COLUMN_NAME = '_items';\nexport const DBX_TABLE_ACTIONS_COLUMN_NAME = '_actions';\n\n/**\n * A table with fixed content\n */\n@Component({\n selector: 'dbx-table-view',\n templateUrl: './table.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class DbxTableViewComponent<I, C, T> implements OnDestroy {\n readonly DEFAULT_TRACK_BY_FUNCTION: TrackByFunction<any> = (index) => {\n return index;\n };\n\n scrollDistance = 0.5;\n throttleScroll = 50;\n\n readonly itemsColumnName = DBX_TABLE_ITEMS_COLUMN_NAME;\n readonly actionsColumnName = DBX_TABLE_ACTIONS_COLUMN_NAME;\n\n readonly innerColumns$ = this.tableStore.columns$;\n readonly innerColumnNames$ = this.innerColumns$.pipe(\n map((x) => x.map((y) => y.columnName)),\n shareReplay(1)\n );\n\n readonly elements$ = this.tableStore.items$;\n\n readonly displayedColumns$ = this.innerColumnNames$.pipe(\n map((columnNames) => {\n return [this.itemsColumnName, ...columnNames, this.actionsColumnName];\n }),\n shareReplay(1)\n );\n\n readonly trackByFunction$: Observable<TrackByFunction<T>> = this.tableStore.viewDelegate$.pipe(\n map((x) => x.trackBy ?? this.DEFAULT_TRACK_BY_FUNCTION),\n shareReplay(1)\n );\n\n readonly context = loadingStateContext({ obs: this.tableStore.dataState$ });\n readonly dataLoadingContext = loadingStateContext({ obs: this.tableStore.itemsState$ });\n\n constructor(readonly tableStore: DbxTableStore<I, C, T>) {}\n\n ngOnDestroy(): void {\n this.context.destroy();\n }\n\n onScrollDown(): void {\n this.tableStore.loadMore();\n }\n}\n","<dbx-loading [context]=\"context\">\n <dbx-loading class=\"dbx-table-view-loading\" [linear]=\"true\" [context]=\"dataLoadingContext\"></dbx-loading>\n <section class=\"dbx-table-view\" infinite-scroll [infiniteScrollDistance]=\"scrollDistance\" [infiniteScrollThrottle]=\"throttleScroll\" [scrollWindow]=\"false\" (scrolled)=\"onScrollDown()\">\n <table class=\"dbx-table-view-table\" mat-table [dataSource]=\"elements$\" [trackBy]=\"(trackByFunction$ | async) || DEFAULT_TRACK_BY_FUNCTION\">\n <!-- Header/Item column -->\n <ng-container [matColumnDef]=\"itemsColumnName\" [sticky]=\"true\">\n <th mat-header-cell *matHeaderCellDef>\n <dbx-table-input-cell></dbx-table-input-cell>\n </th>\n <td mat-cell *matCellDef=\"let element\">\n <dbx-table-item-header [element]=\"element\"></dbx-table-item-header>\n </td>\n <td mat-footer-cell *matFooterCellDef>\n <dbx-table-summary-start-cell></dbx-table-summary-start-cell>\n </td>\n </ng-container>\n\n <!-- Column Definitions -->\n <ng-container [matColumnDef]=\"column.columnName\" [sticky]=\"false\" *ngFor=\"let column of innerColumns$ | async\">\n <th mat-header-cell *matHeaderCellDef>\n <dbx-table-column-header [column]=\"column\"></dbx-table-column-header>\n </th>\n <td mat-cell *matCellDef=\"let element\">\n <dbx-table-item-cell [element]=\"element\" [column]=\"column\"></dbx-table-item-cell>\n </td>\n <td mat-footer-cell *matFooterCellDef>\n <dbx-table-column-footer [column]=\"column\"></dbx-table-column-footer>\n </td>\n </ng-container>\n\n <!-- Tail/Action column -->\n <ng-container [matColumnDef]=\"actionsColumnName\" [stickyEnd]=\"true\">\n <th mat-header-cell *matHeaderCellDef>\n <dbx-table-action-cell></dbx-table-action-cell>\n </th>\n <td mat-cell *matCellDef=\"let element\">\n <dbx-table-item-action [element]=\"element\"></dbx-table-item-action>\n </td>\n <td mat-footer-cell *matFooterCellDef>\n <dbx-table-summary-end-cell></dbx-table-summary-end-cell>\n </td>\n </ng-container>\n\n <!-- Table View -->\n <tr mat-header-row *matHeaderRowDef=\"displayedColumns$ | async; sticky: true\"></tr>\n\n <tr mat-row *matRowDef=\"let row; columns: displayedColumns$ | async\"></tr>\n\n <tr mat-footer-row *matFooterRowDef=\"displayedColumns$ | async; sticky: true\"></tr>\n </table>\n </section>\n</dbx-loading>\n","import { Input, Directive } from '@angular/core';\nimport { DbxTableStore } from './table.store';\nimport { Maybe } from '@dereekb/util';\nimport { DbxTableContextDataDelegate, DbxTableViewDelegate } from './table';\n\n/**\n * Directive for providing and configuring a DbxTableStore\n */\n@Directive({\n selector: '[dbxTable]',\n providers: [DbxTableStore]\n})\nexport class DbxTableDirective<I, C, T> {\n constructor(readonly tableStore: DbxTableStore<I, C, T>) {}\n\n @Input()\n set dbxTableInput(input: Maybe<I>) {\n this.tableStore.setInput(input);\n }\n\n @Input()\n set dbxTableViewDelegate(dbxTableViewDelegate: Maybe<DbxTableViewDelegate<I, C, T>>) {\n this.tableStore.setViewDelegate(dbxTableViewDelegate);\n }\n\n @Input()\n set dbxTableDataDelegate(dbxTableDataDelegate: Maybe<DbxTableContextDataDelegate<I, C, T>>) {\n this.tableStore.setDataDelegate(dbxTableDataDelegate);\n }\n}\n","import { InfiniteScrollModule } from 'ngx-infinite-scroll';\nimport { DbxLoadingModule } from '@dereekb/dbx-web';\nimport { MatTableModule } from '@angular/material/table';\nimport { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { DbxTableItemHeaderComponent } from './table.item.header.component';\nimport { DbxTableViewComponent } from './table.component';\nimport { DbxTableInputCellComponent } from './table.cell.input.component';\nimport { DbxTableSummaryEndCellComponent } from './table.cell.summaryend.component';\nimport { DbxTableSummaryStartCellComponent } from './table.cell.summarystart.component';\nimport { DbxTableItemActionComponent } from './table.item.action.component';\nimport { DbxTableActionCellComponent } from './table.cell.action.component';\nimport { DbxTableItemCellComponent } from './table.item.cell.component';\nimport { DbxInjectionComponentModule } from '@dereekb/dbx-core';\nimport { DbxTableColumnHeaderComponent } from './table.column.header.component';\nimport { DbxTableDirective } from './table.directive';\nimport { DbxTableColumnFooterComponent } from './table.column.footer.component';\n\nconst exports = [DbxTableDirective, DbxTableViewComponent];\nconst internalDeclarations = [\n //\n DbxTableColumnHeaderComponent,\n DbxTableColumnFooterComponent,\n DbxTableInputCellComponent,\n DbxTableActionCellComponent,\n DbxTableItemCellComponent,\n DbxTableItemHeaderComponent,\n DbxTableItemActionComponent,\n DbxTableSummaryStartCellComponent,\n DbxTableSummaryEndCellComponent\n];\n\n@NgModule({\n imports: [\n //\n CommonModule,\n DbxLoadingModule,\n DbxInjectionComponentModule,\n MatTableModule,\n InfiniteScrollModule\n ],\n declarations: [...exports, ...internalDeclarations],\n exports\n})\nexport class DbxTableModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","formatDate","i2.DbxTableStore","i6","i1.DbxTableStore","i2","i3","i4","i5","i6.DbxTableColumnHeaderComponent","i7.DbxTableColumnFooterComponent","i8.DbxTableInputCellComponent","i9.DbxTableActionCellComponent","i10.DbxTableItemCellComponent","i11.DbxTableItemHeaderComponent","i12.DbxTableItemActionComponent","i13.DbxTableSummaryStartCellComponent","i14.DbxTableSummaryEndCellComponent"],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export * from './lib';
@@ -0,0 +1,18 @@
1
+ import { DbxInjectionComponentConfigFactory } from '@dereekb/dbx-core';
2
+ import { Maybe } from '@dereekb/util';
3
+ import { DbxTableColumn } from '../table';
4
+ import * as i0 from "@angular/core";
5
+ /**
6
+ * A table header component used for rendering date values on the header.
7
+ */
8
+ export declare class DbxTableDateHeaderComponent {
9
+ left: string;
10
+ right: string;
11
+ private _date;
12
+ constructor();
13
+ get date(): Maybe<Date>;
14
+ set date(date: Maybe<Date>);
15
+ static ɵfac: i0.ɵɵFactoryDeclaration<DbxTableDateHeaderComponent, never>;
16
+ static ɵcmp: i0.ɵɵComponentDeclaration<DbxTableDateHeaderComponent, "ng-component", never, {}, {}, never, never, false>;
17
+ }
18
+ export declare function dbxTableDateHeaderInjectionFactory(): DbxInjectionComponentConfigFactory<DbxTableColumn<Date>, DbxTableDateHeaderComponent>;
@@ -0,0 +1,66 @@
1
+ import { OnDestroy, OnInit } from '@angular/core';
2
+ import { DateRangeDayDistanceInput } from '@dereekb/date';
3
+ import { DbxTableStore } from '../table.store';
4
+ import { MatDateRangeSelectionStrategy, DateRange } from '@angular/material/datepicker';
5
+ import { DateAdapter } from '@angular/material/core';
6
+ import { Days, Maybe } from '@dereekb/util';
7
+ import { FormGroup, FormControl } from '@angular/forms';
8
+ import { Observable } from 'rxjs';
9
+ import { DbxInjectionComponentConfig } from '@dereekb/dbx-core';
10
+ import * as i0 from "@angular/core";
11
+ export declare class DbxTableDateRangeDayDistanceInputCellInputRangeSelectionStrategy<D> implements MatDateRangeSelectionStrategy<D> {
12
+ private _dateAdapter;
13
+ private dbxTableDateRangeDayDistanceInputCellInputComponent;
14
+ constructor(_dateAdapter: DateAdapter<D>, dbxTableDateRangeDayDistanceInputCellInputComponent: DbxTableDateRangeDayDistanceInputCellInputComponent);
15
+ selectionFinished(date: D | null): DateRange<D>;
16
+ createPreview(activeDate: D | null): DateRange<D>;
17
+ private _createFiveDayRange;
18
+ static ɵfac: i0.ɵɵFactoryDeclaration<DbxTableDateRangeDayDistanceInputCellInputRangeSelectionStrategy<any>, never>;
19
+ static ɵprov: i0.ɵɵInjectableDeclaration<DbxTableDateRangeDayDistanceInputCellInputRangeSelectionStrategy<any>>;
20
+ }
21
+ export interface DbxTableDateRangeDayDistanceInputCellInputComponentConfig {
22
+ /**
23
+ * Button format for the dates
24
+ */
25
+ buttonFormat?: string;
26
+ /**
27
+ * Distance from the start to span.
28
+ */
29
+ daysDistance: Days;
30
+ minDate?: Maybe<Date>;
31
+ maxDate?: Maybe<Date>;
32
+ }
33
+ export declare const DEFAULT_DBX_TABLE_DATE_RANGE_DAY_DISTIANCE_INPUT_CELL_COMPONENT_CONFIG: {
34
+ daysDistance: number;
35
+ };
36
+ export declare const DEFAULT_DBX_TABLE_DATE_RANGE_DAY_BUTTON_FORMAT = "MMM dd";
37
+ /**
38
+ * Cell input for a DateRangeDayDistanceInput value.
39
+ */
40
+ export declare class DbxTableDateRangeDayDistanceInputCellInputComponent implements OnInit, OnDestroy {
41
+ readonly tableStore: DbxTableStore<DateRangeDayDistanceInput>;
42
+ private _syncSub;
43
+ private _valueSub;
44
+ private _pickerOpened;
45
+ private _config;
46
+ readonly range: FormGroup<{
47
+ start: FormControl<Maybe<Date>>;
48
+ end: FormControl<Maybe<Date>>;
49
+ }>;
50
+ readonly pickerOpened$: Observable<boolean>;
51
+ readonly minDate$: Observable<Maybe<Date>>;
52
+ readonly maxDate$: Observable<Maybe<Date>>;
53
+ readonly buttonFormat$: Observable<string>;
54
+ readonly dateRangeString$: Observable<string>;
55
+ constructor(tableStore: DbxTableStore<DateRangeDayDistanceInput>);
56
+ ngOnInit(): void;
57
+ ngOnDestroy(): void;
58
+ get daysDistance(): number;
59
+ get config(): Maybe<DbxTableDateRangeDayDistanceInputCellInputComponentConfig>;
60
+ set config(config: Maybe<DbxTableDateRangeDayDistanceInputCellInputComponentConfig>);
61
+ pickerOpened(): void;
62
+ pickerClosed(): void;
63
+ static ɵfac: i0.ɵɵFactoryDeclaration<DbxTableDateRangeDayDistanceInputCellInputComponent, never>;
64
+ static ɵcmp: i0.ɵɵComponentDeclaration<DbxTableDateRangeDayDistanceInputCellInputComponent, "ng-component", never, {}, {}, never, never, false>;
65
+ }
66
+ export declare function dbxTableDateRangeDayDistanceInputCellInput(componentConfig?: DbxTableDateRangeDayDistanceInputCellInputComponentConfig): DbxInjectionComponentConfig<DbxTableDateRangeDayDistanceInputCellInputComponent>;
@@ -0,0 +1,3 @@
1
+ export * from './date.table.column.header.component';
2
+ export * from './daterange.table.cell.input.component';
3
+ export * from './table.date.module';
@@ -0,0 +1,16 @@
1
+ import * as i0 from "@angular/core";
2
+ import * as i1 from "./date.table.column.header.component";
3
+ import * as i2 from "./daterange.table.cell.input.component";
4
+ import * as i3 from "@angular/common";
5
+ import * as i4 from "@dereekb/dbx-web";
6
+ import * as i5 from "@dereekb/dbx-core";
7
+ import * as i6 from "@angular/forms";
8
+ import * as i7 from "@angular/material/icon";
9
+ import * as i8 from "@angular/material/datepicker";
10
+ import * as i9 from "@angular/material/button";
11
+ import * as i10 from "@angular/material/table";
12
+ export declare class DbxTableDateModule {
13
+ static ɵfac: i0.ɵɵFactoryDeclaration<DbxTableDateModule, never>;
14
+ static ɵmod: i0.ɵɵNgModuleDeclaration<DbxTableDateModule, [typeof i1.DbxTableDateHeaderComponent, typeof i2.DbxTableDateRangeDayDistanceInputCellInputComponent], [typeof i3.CommonModule, typeof i4.DbxLoadingModule, typeof i5.DbxInjectionComponentModule, typeof i6.FormsModule, typeof i6.ReactiveFormsModule, typeof i7.MatIconModule, typeof i8.MatDatepickerModule, typeof i9.MatButtonModule, typeof i10.MatTableModule], [typeof i1.DbxTableDateHeaderComponent, typeof i2.DbxTableDateRangeDayDistanceInputCellInputComponent]>;
15
+ static ɵinj: i0.ɵɵInjectorDeclaration<DbxTableDateModule>;
16
+ }
@@ -0,0 +1,17 @@
1
+ export * from './date';
2
+ export * from './table.cell.action.component';
3
+ export * from './table.cell.input.component';
4
+ export * from './table.cell.summaryend.component';
5
+ export * from './table.cell.summarystart.component';
6
+ export * from './table.column.directive';
7
+ export * from './table.column.header.component';
8
+ export * from './table.column.footer.component';
9
+ export * from './table.component';
10
+ export * from './table.directive';
11
+ export * from './table.item.action.component';
12
+ export * from './table.item.cell.component';
13
+ export * from './table.item.directive';
14
+ export * from './table.item.header.component';
15
+ export * from './table.module';
16
+ export * from './table.store';
17
+ export * from './table';
@@ -0,0 +1,9 @@
1
+ import { DbxTableStore } from './table.store';
2
+ import * as i0 from "@angular/core";
3
+ export declare class DbxTableActionCellComponent {
4
+ readonly tableStore: DbxTableStore;
5
+ readonly config$: import("rxjs").Observable<import("../../../../../dist/packages/util/src").Maybe<import("../../../../../dist/packages/dbx-core").DbxInjectionComponentConfig<any>>>;
6
+ constructor(tableStore: DbxTableStore);
7
+ static ɵfac: i0.ɵɵFactoryDeclaration<DbxTableActionCellComponent, never>;
8
+ static ɵcmp: i0.ɵɵComponentDeclaration<DbxTableActionCellComponent, "dbx-table-action-cell", never, {}, {}, never, never, false>;
9
+ }
@@ -0,0 +1,12 @@
1
+ import { DbxTableStore } from './table.store';
2
+ import * as i0 from "@angular/core";
3
+ /**
4
+ * A table header component used for injecting the input picker view.
5
+ */
6
+ export declare class DbxTableInputCellComponent {
7
+ readonly tableStore: DbxTableStore;
8
+ readonly config$: import("rxjs").Observable<import("../../../../../dist/packages/util/src").Maybe<import("../../../../../dist/packages/dbx-core").DbxInjectionComponentConfig<any>>>;
9
+ constructor(tableStore: DbxTableStore);
10
+ static ɵfac: i0.ɵɵFactoryDeclaration<DbxTableInputCellComponent, never>;
11
+ static ɵcmp: i0.ɵɵComponentDeclaration<DbxTableInputCellComponent, "dbx-table-input-cell", never, {}, {}, never, never, false>;
12
+ }
@@ -0,0 +1,9 @@
1
+ import { DbxTableStore } from './table.store';
2
+ import * as i0 from "@angular/core";
3
+ export declare class DbxTableSummaryEndCellComponent {
4
+ readonly tableStore: DbxTableStore;
5
+ readonly config$: import("rxjs").Observable<import("../../../../../dist/packages/util/src").Maybe<import("../../../../../dist/packages/dbx-core").DbxInjectionComponentConfig<any>>>;
6
+ constructor(tableStore: DbxTableStore);
7
+ static ɵfac: i0.ɵɵFactoryDeclaration<DbxTableSummaryEndCellComponent, never>;
8
+ static ɵcmp: i0.ɵɵComponentDeclaration<DbxTableSummaryEndCellComponent, "dbx-table-summary-end-cell", never, {}, {}, never, never, false>;
9
+ }
@@ -0,0 +1,12 @@
1
+ import { DbxTableStore } from './table.store';
2
+ import * as i0 from "@angular/core";
3
+ /**
4
+ * A table header component used for injecting the input picker view.
5
+ */
6
+ export declare class DbxTableSummaryStartCellComponent {
7
+ readonly tableStore: DbxTableStore;
8
+ readonly config$: import("rxjs").Observable<import("../../../../../dist/packages/util/src").Maybe<import("../../../../../dist/packages/dbx-core").DbxInjectionComponentConfig<any>>>;
9
+ constructor(tableStore: DbxTableStore);
10
+ static ɵfac: i0.ɵɵFactoryDeclaration<DbxTableSummaryStartCellComponent, never>;
11
+ static ɵcmp: i0.ɵɵComponentDeclaration<DbxTableSummaryStartCellComponent, "dbx-table-summary-start-cell", never, {}, {}, never, never, false>;
12
+ }
@@ -0,0 +1,18 @@
1
+ import { OnDestroy } from '@angular/core';
2
+ import { DbxTableStore } from './table.store';
3
+ import { Maybe } from '@dereekb/util';
4
+ import { DbxTableColumn } from './table';
5
+ import * as i0 from "@angular/core";
6
+ /**
7
+ * Abstract directive that has a column input.
8
+ */
9
+ export declare class AbstractDbxTableColumnDirective<C> implements OnDestroy {
10
+ readonly tableStore: DbxTableStore<unknown, C>;
11
+ private readonly _column;
12
+ readonly column$: import("rxjs").Observable<DbxTableColumn<C>>;
13
+ constructor(tableStore: DbxTableStore<unknown, C>);
14
+ set column(column: Maybe<DbxTableColumn<C>>);
15
+ ngOnDestroy(): void;
16
+ static ɵfac: i0.ɵɵFactoryDeclaration<AbstractDbxTableColumnDirective<any>, never>;
17
+ static ɵdir: i0.ɵɵDirectiveDeclaration<AbstractDbxTableColumnDirective<any>, never, never, { "column": "column"; }, {}, never, never, false>;
18
+ }
@@ -0,0 +1,8 @@
1
+ import { OnDestroy } from '@angular/core';
2
+ import { AbstractDbxTableColumnDirective } from './table.column.directive';
3
+ import * as i0 from "@angular/core";
4
+ export declare class DbxTableColumnFooterComponent<C> extends AbstractDbxTableColumnDirective<C> implements OnDestroy {
5
+ readonly config$: import("rxjs").Observable<import("../../../../../dist/packages/util/src").Maybe<import("../../../../../dist/packages/dbx-core").DbxInjectionComponentConfig<any>>>;
6
+ static ɵfac: i0.ɵɵFactoryDeclaration<DbxTableColumnFooterComponent<any>, never>;
7
+ static ɵcmp: i0.ɵɵComponentDeclaration<DbxTableColumnFooterComponent<any>, "dbx-table-column-footer", never, {}, {}, never, never, false>;
8
+ }
@@ -0,0 +1,8 @@
1
+ import { OnDestroy } from '@angular/core';
2
+ import { AbstractDbxTableColumnDirective } from './table.column.directive';
3
+ import * as i0 from "@angular/core";
4
+ export declare class DbxTableColumnHeaderComponent<C> extends AbstractDbxTableColumnDirective<C> implements OnDestroy {
5
+ readonly config$: import("rxjs").Observable<import("../../../../../dist/packages/util/src").Maybe<import("../../../../../dist/packages/dbx-core").DbxInjectionComponentConfig<any>>>;
6
+ static ɵfac: i0.ɵɵFactoryDeclaration<DbxTableColumnHeaderComponent<any>, never>;
7
+ static ɵcmp: i0.ɵɵComponentDeclaration<DbxTableColumnHeaderComponent<any>, "dbx-table-column-header", never, {}, {}, never, never, false>;
8
+ }
@@ -0,0 +1,29 @@
1
+ import { OnDestroy, TrackByFunction } from '@angular/core';
2
+ import { DbxTableStore } from './table.store';
3
+ import { Observable } from 'rxjs';
4
+ import * as i0 from "@angular/core";
5
+ export declare const DBX_TABLE_ITEMS_COLUMN_NAME = "_items";
6
+ export declare const DBX_TABLE_ACTIONS_COLUMN_NAME = "_actions";
7
+ /**
8
+ * A table with fixed content
9
+ */
10
+ export declare class DbxTableViewComponent<I, C, T> implements OnDestroy {
11
+ readonly tableStore: DbxTableStore<I, C, T>;
12
+ readonly DEFAULT_TRACK_BY_FUNCTION: TrackByFunction<any>;
13
+ scrollDistance: number;
14
+ throttleScroll: number;
15
+ readonly itemsColumnName = "_items";
16
+ readonly actionsColumnName = "_actions";
17
+ readonly innerColumns$: Observable<import("@dereekb/dbx-web/table").DbxTableColumn<C>[]>;
18
+ readonly innerColumnNames$: Observable<string[]>;
19
+ readonly elements$: Observable<T[]>;
20
+ readonly displayedColumns$: Observable<string[]>;
21
+ readonly trackByFunction$: Observable<TrackByFunction<T>>;
22
+ readonly context: import("@dereekb/rxjs").LoadingStateContextInstance<unknown, import("@dereekb/rxjs").LoadingState<import("@dereekb/dbx-web/table").DbxTableContextData<I, C, T>>>;
23
+ readonly dataLoadingContext: import("@dereekb/rxjs").LoadingStateContextInstance<unknown, import("@dereekb/rxjs").PageListLoadingState<T>>;
24
+ constructor(tableStore: DbxTableStore<I, C, T>);
25
+ ngOnDestroy(): void;
26
+ onScrollDown(): void;
27
+ static ɵfac: i0.ɵɵFactoryDeclaration<DbxTableViewComponent<any, any, any>, never>;
28
+ static ɵcmp: i0.ɵɵComponentDeclaration<DbxTableViewComponent<any, any, any>, "dbx-table-view", never, {}, {}, never, never, false>;
29
+ }
@@ -0,0 +1,99 @@
1
+ import { Observable } from 'rxjs';
2
+ import { LoadingState, PageListLoadingState } from '@dereekb/rxjs';
3
+ import { Maybe } from '@dereekb/util';
4
+ import { DbxInjectionComponentConfig } from '@dereekb/dbx-core';
5
+ import { TrackByFunction } from '@angular/core';
6
+ /**
7
+ * Delegate used for retrieving data for a table.
8
+ */
9
+ export interface DbxTableContextDataDelegate<I, C, T> {
10
+ /**
11
+ * Loads data given the input.
12
+ *
13
+ * @param input
14
+ */
15
+ loadData(input: I): Observable<LoadingState<DbxTableContextData<I, C, T>>>;
16
+ }
17
+ export interface DbxTableContextData<I, C, T> {
18
+ /**
19
+ * Original context input
20
+ */
21
+ readonly input: I;
22
+ /**
23
+ * All columns in this data context.
24
+ */
25
+ readonly columns: DbxTableColumn<C>[];
26
+ /**
27
+ * All currently loaded items.
28
+ */
29
+ readonly items$: Observable<PageListLoadingState<T>>;
30
+ /**
31
+ * Loads more items, if applicable.
32
+ */
33
+ loadMore?(): void;
34
+ }
35
+ export interface DbxTableColumn<C> {
36
+ /**
37
+ * Unique column name
38
+ */
39
+ readonly columnName: string;
40
+ /**
41
+ * Column metadata
42
+ */
43
+ readonly meta: C;
44
+ }
45
+ /**
46
+ * Delegate used for generating view configurations given the input.
47
+ */
48
+ export interface DbxTableViewDelegate<I = unknown, C = unknown, T = unknown> {
49
+ /**
50
+ * Track by
51
+ */
52
+ readonly trackBy?: TrackByFunction<T>;
53
+ /**
54
+ * Input picker view configuration
55
+ */
56
+ readonly inputHeader?: Maybe<DbxInjectionComponentConfig<any>>;
57
+ /**
58
+ * Action header view configuration
59
+ */
60
+ readonly actionHeader?: Maybe<DbxInjectionComponentConfig<any>>;
61
+ /**
62
+ * Summary row header view configuration
63
+ */
64
+ readonly summaryRowHeader?: Maybe<DbxInjectionComponentConfig<any>>;
65
+ /**
66
+ * Summary row end view configuration
67
+ */
68
+ readonly summaryRowEnd?: Maybe<DbxInjectionComponentConfig<any>>;
69
+ /**
70
+ * Column header view configuration for a specific column.
71
+ *
72
+ * @param item
73
+ */
74
+ columnHeader?(column: DbxTableColumn<C>): Maybe<DbxInjectionComponentConfig<any>>;
75
+ /**
76
+ * Column footer view configuration for a specific column.
77
+ *
78
+ * @param item
79
+ */
80
+ columnFooter?(column: DbxTableColumn<C>): Maybe<DbxInjectionComponentConfig<any>>;
81
+ /**
82
+ * Item header view configuration for a specific item.
83
+ *
84
+ * @param item
85
+ */
86
+ itemHeader(item: T): Maybe<DbxInjectionComponentConfig<any>>;
87
+ /**
88
+ * Item cell view configuration for a specific item and column.
89
+ *
90
+ * @param item
91
+ */
92
+ itemCell(column: DbxTableColumn<C>, item: T): Maybe<DbxInjectionComponentConfig<any>>;
93
+ /**
94
+ * Item action view configuration for a specific item.
95
+ *
96
+ * @param item
97
+ */
98
+ itemAction?(item: T): Maybe<DbxInjectionComponentConfig<any>>;
99
+ }
@@ -0,0 +1,16 @@
1
+ import { DbxTableStore } from './table.store';
2
+ import { Maybe } from '@dereekb/util';
3
+ import { DbxTableContextDataDelegate, DbxTableViewDelegate } from './table';
4
+ import * as i0 from "@angular/core";
5
+ /**
6
+ * Directive for providing and configuring a DbxTableStore
7
+ */
8
+ export declare class DbxTableDirective<I, C, T> {
9
+ readonly tableStore: DbxTableStore<I, C, T>;
10
+ constructor(tableStore: DbxTableStore<I, C, T>);
11
+ set dbxTableInput(input: Maybe<I>);
12
+ set dbxTableViewDelegate(dbxTableViewDelegate: Maybe<DbxTableViewDelegate<I, C, T>>);
13
+ set dbxTableDataDelegate(dbxTableDataDelegate: Maybe<DbxTableContextDataDelegate<I, C, T>>);
14
+ static ɵfac: i0.ɵɵFactoryDeclaration<DbxTableDirective<any, any, any>, never>;
15
+ static ɵdir: i0.ɵɵDirectiveDeclaration<DbxTableDirective<any, any, any>, "[dbxTable]", never, { "dbxTableInput": "dbxTableInput"; "dbxTableViewDelegate": "dbxTableViewDelegate"; "dbxTableDataDelegate": "dbxTableDataDelegate"; }, {}, never, never, false>;
16
+ }
@@ -0,0 +1,7 @@
1
+ import { AbstractDbxTableElementDirective } from './table.item.directive';
2
+ import * as i0 from "@angular/core";
3
+ export declare class DbxTableItemActionComponent<T> extends AbstractDbxTableElementDirective<T> {
4
+ readonly config$: import("rxjs").Observable<import("../../../../../dist/packages/util/src").Maybe<import("../../../../../dist/packages/dbx-core").DbxInjectionComponentConfig<any>>>;
5
+ static ɵfac: i0.ɵɵFactoryDeclaration<DbxTableItemActionComponent<any>, never>;
6
+ static ɵcmp: i0.ɵɵComponentDeclaration<DbxTableItemActionComponent<any>, "dbx-table-item-action", never, {}, {}, never, never, false>;
7
+ }
@@ -0,0 +1,13 @@
1
+ import { Maybe } from '@dereekb/util';
2
+ import { AbstractDbxTableElementDirective } from './table.item.directive';
3
+ import { DbxTableColumn } from './table';
4
+ import * as i0 from "@angular/core";
5
+ export declare class DbxTableItemCellComponent<T, C> extends AbstractDbxTableElementDirective<T, C> {
6
+ private readonly _column;
7
+ readonly column$: import("rxjs").Observable<DbxTableColumn<C>>;
8
+ readonly config$: import("rxjs").Observable<Maybe<import("../../../../../dist/packages/dbx-core").DbxInjectionComponentConfig<any>>>;
9
+ set column(column: Maybe<DbxTableColumn<C>>);
10
+ ngOnDestroy(): void;
11
+ static ɵfac: i0.ɵɵFactoryDeclaration<DbxTableItemCellComponent<any, any>, never>;
12
+ static ɵcmp: i0.ɵɵComponentDeclaration<DbxTableItemCellComponent<any, any>, "dbx-table-item-cell", never, { "column": "column"; }, {}, never, never, false>;
13
+ }
@@ -0,0 +1,17 @@
1
+ import { OnDestroy } from '@angular/core';
2
+ import { DbxTableStore } from './table.store';
3
+ import { Maybe } from '@dereekb/util';
4
+ import * as i0 from "@angular/core";
5
+ /**
6
+ * Abstract directive that has an element input.
7
+ */
8
+ export declare abstract class AbstractDbxTableElementDirective<T, C = unknown> implements OnDestroy {
9
+ readonly tableStore: DbxTableStore<unknown, C, T>;
10
+ private readonly _element;
11
+ readonly element$: import("rxjs").Observable<T>;
12
+ constructor(tableStore: DbxTableStore<unknown, C, T>);
13
+ set element(element: Maybe<T>);
14
+ ngOnDestroy(): void;
15
+ static ɵfac: i0.ɵɵFactoryDeclaration<AbstractDbxTableElementDirective<any, any>, never>;
16
+ static ɵdir: i0.ɵɵDirectiveDeclaration<AbstractDbxTableElementDirective<any, any>, never, never, { "element": "element"; }, {}, never, never, false>;
17
+ }
@@ -0,0 +1,7 @@
1
+ import { AbstractDbxTableElementDirective } from './table.item.directive';
2
+ import * as i0 from "@angular/core";
3
+ export declare class DbxTableItemHeaderComponent<T> extends AbstractDbxTableElementDirective<T> {
4
+ readonly config$: import("rxjs").Observable<import("../../../../../dist/packages/util/src").Maybe<import("../../../../../dist/packages/dbx-core").DbxInjectionComponentConfig<any>>>;
5
+ static ɵfac: i0.ɵɵFactoryDeclaration<DbxTableItemHeaderComponent<any>, never>;
6
+ static ɵcmp: i0.ɵɵComponentDeclaration<DbxTableItemHeaderComponent<any>, "dbx-table-item-header", never, {}, {}, never, never, false>;
7
+ }
@@ -0,0 +1,22 @@
1
+ import * as i0 from "@angular/core";
2
+ import * as i1 from "./table.directive";
3
+ import * as i2 from "./table.component";
4
+ import * as i3 from "./table.column.header.component";
5
+ import * as i4 from "./table.column.footer.component";
6
+ import * as i5 from "./table.cell.input.component";
7
+ import * as i6 from "./table.cell.action.component";
8
+ import * as i7 from "./table.item.cell.component";
9
+ import * as i8 from "./table.item.header.component";
10
+ import * as i9 from "./table.item.action.component";
11
+ import * as i10 from "./table.cell.summarystart.component";
12
+ import * as i11 from "./table.cell.summaryend.component";
13
+ import * as i12 from "@angular/common";
14
+ import * as i13 from "@dereekb/dbx-web";
15
+ import * as i14 from "@dereekb/dbx-core";
16
+ import * as i15 from "@angular/material/table";
17
+ import * as i16 from "ngx-infinite-scroll";
18
+ export declare class DbxTableModule {
19
+ static ɵfac: i0.ɵɵFactoryDeclaration<DbxTableModule, never>;
20
+ static ɵmod: i0.ɵɵNgModuleDeclaration<DbxTableModule, [typeof i1.DbxTableDirective, typeof i2.DbxTableViewComponent, typeof i3.DbxTableColumnHeaderComponent, typeof i4.DbxTableColumnFooterComponent, typeof i5.DbxTableInputCellComponent, typeof i6.DbxTableActionCellComponent, typeof i7.DbxTableItemCellComponent, typeof i8.DbxTableItemHeaderComponent, typeof i9.DbxTableItemActionComponent, typeof i10.DbxTableSummaryStartCellComponent, typeof i11.DbxTableSummaryEndCellComponent], [typeof i12.CommonModule, typeof i13.DbxLoadingModule, typeof i14.DbxInjectionComponentModule, typeof i15.MatTableModule, typeof i16.InfiniteScrollModule], [typeof i1.DbxTableDirective, typeof i2.DbxTableViewComponent]>;
21
+ static ɵinj: i0.ɵɵInjectorDeclaration<DbxTableModule>;
22
+ }