@one-paragon/angular-utilities 0.1.32 → 0.1.34
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/action-state/action-state-spinner/action-state-spinner.component.d.ts +12 -12
- package/action-state/action-state-ui/action-state-ui.module.d.ts +9 -9
- package/action-state/index.d.ts +4 -4
- package/action-state/ngrx-ext/ngrx-ext.module.d.ts +8 -8
- package/action-state/ngrx.d.ts +31 -31
- package/esm2022/action-state/action-state-spinner/action-state-spinner.component.mjs +24 -0
- package/esm2022/action-state/action-state-ui/action-state-ui.module.mjs +29 -0
- package/{esm2020 → esm2022}/action-state/index.mjs +7 -7
- package/esm2022/action-state/ngrx-ext/ngrx-ext.module.mjs +24 -0
- package/{esm2020 → esm2022}/action-state/ngrx.mjs +41 -41
- package/esm2022/http-request-state/HttpRequestStateFactory.mjs +28 -0
- package/esm2022/http-request-state/HttpRequestStateStore.mjs +98 -0
- package/esm2022/http-request-state/directives/HttpStateDirectiveBase.mjs +35 -0
- package/esm2022/http-request-state/directives/http-error-state-directive.mjs +30 -0
- package/esm2022/http-request-state/directives/http-inProgress-state-directive.mjs +30 -0
- package/esm2022/http-request-state/directives/http-notStarted-state-directive.mjs +30 -0
- package/esm2022/http-request-state/directives/http-success-state-directive.mjs +35 -0
- package/{esm2020 → esm2022}/http-request-state/directives/index.mjs +5 -5
- package/esm2022/http-request-state/directives/request-state-directive.mjs +61 -0
- package/{esm2020 → esm2022}/http-request-state/helpers.mjs +21 -21
- package/{esm2020 → esm2022}/http-request-state/http-request-state.mjs +38 -38
- package/esm2022/http-request-state/http-state-module.mjs +42 -0
- package/{esm2020 → esm2022}/http-request-state/index.mjs +6 -6
- package/{esm2020 → esm2022}/http-request-state/rxjs/getRequestorBody.mjs +3 -3
- package/{esm2020 → esm2022}/http-request-state/rxjs/getRequestorState.mjs +2 -2
- package/{esm2020 → esm2022}/http-request-state/rxjs/index.mjs +4 -4
- package/{esm2020 → esm2022}/http-request-state/rxjs/tapError.mjs +11 -11
- package/{esm2020 → esm2022}/http-request-state/rxjs/tapSuccess.mjs +11 -11
- package/{esm2020 → esm2022}/http-request-state/types.mjs +15 -15
- package/{esm2020 → esm2022}/ngrx/actionable-selector.mjs +74 -74
- package/{esm2020 → esm2022}/ngrx/index.mjs +1 -1
- package/{esm2020 → esm2022}/one-paragon-angular-utilities.mjs +4 -4
- package/{esm2020 → esm2022}/public-api.mjs +18 -18
- package/{esm2020 → esm2022}/rxjs/defaultShareReplay.mjs +6 -6
- package/{esm2020 → esm2022}/rxjs/index.mjs +4 -4
- package/{esm2020 → esm2022}/rxjs/mapError.mjs +7 -7
- package/{esm2020 → esm2022}/rxjs/rxjs-operators.mjs +90 -90
- package/{esm2020 → esm2022}/rxjs/subjectifier.mjs +14 -14
- package/{esm2020 → esm2022}/table-builder/classes/DefaultSettings.mjs +5 -5
- package/{esm2020 → esm2022}/table-builder/classes/GenericTableDataSource.mjs +12 -12
- package/{esm2020 → esm2022}/table-builder/classes/MatTableObservableDataSource.mjs +20 -20
- package/{esm2020 → esm2022}/table-builder/classes/TableBuilderConfig.mjs +2 -2
- package/{esm2020 → esm2022}/table-builder/classes/TableState.mjs +31 -31
- package/{esm2020 → esm2022}/table-builder/classes/data-filter.mjs +25 -25
- package/{esm2020 → esm2022}/table-builder/classes/display-col.mjs +1 -1
- package/{esm2020 → esm2022}/table-builder/classes/filter-info.mjs +72 -72
- package/{esm2020 → esm2022}/table-builder/classes/table-builder-general-settings.mjs +67 -67
- package/{esm2020 → esm2022}/table-builder/classes/table-builder.mjs +75 -75
- package/esm2022/table-builder/classes/table-store.mjs +293 -0
- package/esm2022/table-builder/components/array-column.component.mjs +58 -0
- package/esm2022/table-builder/components/column-builder/column-builder.component.mjs +113 -0
- package/esm2022/table-builder/components/date-filter/date-filter.component.mjs +26 -0
- package/esm2022/table-builder/components/date-time-filter/date-time-filter.component.mjs +23 -0
- package/esm2022/table-builder/components/filter/filter.component.mjs +55 -0
- package/esm2022/table-builder/components/filter/in-list/in-list-filter.component.mjs +92 -0
- package/esm2022/table-builder/components/gen-col-displayer/gen-col-displayer.component.mjs +46 -0
- package/esm2022/table-builder/components/generic-table/generic-table.component.mjs +203 -0
- package/esm2022/table-builder/components/generic-table/paginator.component.mjs +75 -0
- package/esm2022/table-builder/components/group-by-list/group-by-list.component.mjs +23 -0
- package/esm2022/table-builder/components/header-menu/header-menu.component.mjs +92 -0
- package/esm2022/table-builder/components/in-filter/in-filter.component.mjs +64 -0
- package/{esm2020 → esm2022}/table-builder/components/index.mjs +9 -9
- package/esm2022/table-builder/components/initialization-component/initialization-component.mjs +34 -0
- package/{esm2020 → esm2022}/table-builder/components/link-column.component.mjs +32 -31
- package/esm2022/table-builder/components/number-filter/number-filter.component.mjs +28 -0
- package/esm2022/table-builder/components/sort-menu/sort-menu.component-store.mjs +43 -0
- package/{esm2020 → esm2022}/table-builder/components/sort-menu/sort-menu.component.mjs +76 -75
- package/esm2022/table-builder/components/table-container/table-container.mjs +323 -0
- package/esm2022/table-builder/components/table-container-filter/filter-list/filter-list.component.mjs +43 -0
- package/esm2022/table-builder/components/table-container-filter/gen-filter-displayer/gen-filter-displayer.component.mjs +31 -0
- package/esm2022/table-builder/components/table-container-filter/table-wrapper-filter-store.mjs +26 -0
- package/esm2022/table-builder/directives/custom-cell-directive.mjs +60 -0
- package/{esm2020 → esm2022}/table-builder/directives/index.mjs +5 -5
- package/esm2022/table-builder/directives/multi-sort.directive.mjs +43 -0
- package/esm2022/table-builder/directives/resize-column.directive.mjs +87 -0
- package/esm2022/table-builder/directives/table-wrapper.directive.mjs +27 -0
- package/esm2022/table-builder/directives/tb-filter.directive.mjs +413 -0
- package/{esm2020 → esm2022}/table-builder/enums/filterTypes.mjs +71 -71
- package/{esm2020 → esm2022}/table-builder/functions/boolean-filter-function.mjs +9 -9
- package/{esm2020 → esm2022}/table-builder/functions/date-filter-function.mjs +57 -57
- package/{esm2020 → esm2022}/table-builder/functions/download-data.mjs +11 -11
- package/{esm2020 → esm2022}/table-builder/functions/null-filter-function.mjs +7 -7
- package/{esm2020 → esm2022}/table-builder/functions/number-filter-function.mjs +31 -31
- package/{esm2020 → esm2022}/table-builder/functions/sort-data-function.mjs +4 -4
- package/{esm2020 → esm2022}/table-builder/functions/string-filter-function.mjs +40 -40
- package/{esm2020 → esm2022}/table-builder/interfaces/ColumnInfo.mjs +1 -1
- package/{esm2020 → esm2022}/table-builder/interfaces/dictionary.mjs +1 -1
- package/{esm2020 → esm2022}/table-builder/interfaces/report-def.mjs +34 -34
- package/esm2022/table-builder/material.module.mjs +208 -0
- package/{esm2020 → esm2022}/table-builder/ngrx/actions.mjs +4 -4
- package/esm2022/table-builder/ngrx/effects.mjs +49 -0
- package/{esm2020 → esm2022}/table-builder/ngrx/reducer.mjs +51 -51
- package/{esm2020 → esm2022}/table-builder/ngrx/selectors.mjs +23 -23
- package/esm2022/table-builder/pipes/column-total.pipe.mjs +21 -0
- package/esm2022/table-builder/pipes/format-filter-type.pipe.mjs +19 -0
- package/esm2022/table-builder/pipes/format-filter-value.pipe.mjs +46 -0
- package/esm2022/table-builder/pipes/key-display.mjs +21 -0
- package/esm2022/table-builder/services/export-to-csv.service.mjs +89 -0
- package/{esm2020 → esm2022}/table-builder/services/link-creator.service.mjs +41 -41
- package/esm2022/table-builder/services/table-template-service.mjs +45 -0
- package/esm2022/table-builder/services/transform-creator.mjs +76 -0
- package/esm2022/table-builder/table-builder.module.mjs +208 -0
- package/esm2022/utilities/directives/auto-focus.directive.mjs +27 -0
- package/esm2022/utilities/directives/clickEmitterDirective.mjs +22 -0
- package/esm2022/utilities/directives/clickSubject.mjs +28 -0
- package/esm2022/utilities/directives/conditional-classes.directive.mjs +36 -0
- package/esm2022/utilities/directives/dialog-service.mjs +26 -0
- package/esm2022/utilities/directives/dialog.mjs +139 -0
- package/esm2022/utilities/directives/mat-toggle-group-directive.mjs +60 -0
- package/esm2022/utilities/directives/prevent-enter.directive.mjs +20 -0
- package/esm2022/utilities/directives/stop-propagation.directive.mjs +26 -0
- package/esm2022/utilities/directives/styler.mjs +27 -0
- package/esm2022/utilities/directives/trim-whitespace.directive.mjs +30 -0
- package/{esm2020 → esm2022}/utilities/index.mjs +15 -15
- package/esm2022/utilities/module.mjs +92 -0
- package/esm2022/utilities/pipes/function.pipe.mjs +22 -0
- package/esm2022/utilities/pipes/phone.pipe.mjs +21 -0
- package/esm2022/utilities/pipes/space-case.pipes.mjs +29 -0
- package/{fesm2020 → fesm2022}/one-paragon-angular-utilities.mjs +4398 -4398
- package/fesm2022/one-paragon-angular-utilities.mjs.map +1 -0
- package/http-request-state/HttpRequestStateFactory.d.ts +14 -14
- package/http-request-state/HttpRequestStateStore.d.ts +48 -48
- package/http-request-state/directives/HttpStateDirectiveBase.d.ts +16 -16
- package/http-request-state/directives/http-error-state-directive.d.ts +12 -12
- package/http-request-state/directives/http-inProgress-state-directive.d.ts +12 -12
- package/http-request-state/directives/http-notStarted-state-directive.d.ts +12 -12
- package/http-request-state/directives/http-success-state-directive.d.ts +21 -21
- package/http-request-state/directives/index.d.ts +5 -5
- package/http-request-state/directives/request-state-directive.d.ts +35 -35
- package/http-request-state/helpers.d.ts +9 -9
- package/http-request-state/http-request-state.d.ts +12 -12
- package/http-request-state/http-state-module.d.ts +11 -11
- package/http-request-state/index.d.ts +6 -6
- package/http-request-state/rxjs/getRequestorBody.d.ts +3 -3
- package/http-request-state/rxjs/getRequestorState.d.ts +3 -3
- package/http-request-state/rxjs/index.d.ts +4 -4
- package/http-request-state/rxjs/tapError.d.ts +3 -3
- package/http-request-state/rxjs/tapSuccess.d.ts +3 -3
- package/http-request-state/types.d.ts +36 -36
- package/index.d.ts +5 -5
- package/ngrx/actionable-selector.d.ts +15 -15
- package/ngrx/index.d.ts +1 -1
- package/package.json +13 -19
- package/public-api.d.ts +15 -15
- package/rxjs/defaultShareReplay.d.ts +2 -2
- package/rxjs/index.d.ts +4 -4
- package/rxjs/mapError.d.ts +2 -2
- package/rxjs/rxjs-operators.d.ts +12 -12
- package/rxjs/subjectifier.d.ts +9 -9
- package/table-builder/classes/DefaultSettings.d.ts +9 -9
- package/table-builder/classes/GenericTableDataSource.d.ts +8 -8
- package/table-builder/classes/MatTableObservableDataSource.d.ts +9 -9
- package/table-builder/classes/TableBuilderConfig.d.ts +20 -20
- package/table-builder/classes/TableState.d.ts +46 -46
- package/table-builder/classes/data-filter.d.ts +9 -9
- package/table-builder/classes/display-col.d.ts +5 -5
- package/table-builder/classes/filter-info.d.ts +40 -40
- package/table-builder/classes/table-builder-general-settings.d.ts +43 -43
- package/table-builder/classes/table-builder.d.ts +14 -14
- package/table-builder/classes/table-store.d.ts +114 -114
- package/table-builder/components/array-column.component.d.ts +14 -14
- package/table-builder/components/column-builder/column-builder.component.d.ts +50 -50
- package/table-builder/components/date-filter/date-filter.component.d.ts +10 -10
- package/table-builder/components/date-time-filter/date-time-filter.component.d.ts +10 -10
- package/table-builder/components/filter/filter.component.d.ts +371 -371
- package/table-builder/components/filter/in-list/in-list-filter.component.d.ts +27 -27
- package/table-builder/components/gen-col-displayer/gen-col-displayer.component.d.ts +16 -16
- package/table-builder/components/generic-table/generic-table.component.d.ts +73 -73
- package/table-builder/components/generic-table/paginator.component.d.ts +28 -28
- package/table-builder/components/group-by-list/group-by-list.component.d.ts +10 -10
- package/table-builder/components/header-menu/header-menu.component.d.ts +25 -25
- package/table-builder/components/in-filter/in-filter.component.d.ts +21 -21
- package/table-builder/components/index.d.ts +9 -9
- package/table-builder/components/initialization-component/initialization-component.d.ts +12 -12
- package/table-builder/components/link-column.component.d.ts +17 -17
- package/table-builder/components/number-filter/number-filter.component.d.ts +12 -12
- package/table-builder/components/sort-menu/sort-menu.component-store.d.ts +24 -24
- package/table-builder/components/sort-menu/sort-menu.component.d.ts +25 -25
- package/table-builder/components/table-container/table-container.d.ts +68 -68
- package/table-builder/components/table-container-filter/filter-list/filter-list.component.d.ts +17 -17
- package/table-builder/components/table-container-filter/gen-filter-displayer/gen-filter-displayer.component.d.ts +14 -14
- package/table-builder/components/table-container-filter/table-wrapper-filter-store.d.ts +14 -14
- package/table-builder/directives/custom-cell-directive.d.ts +19 -19
- package/table-builder/directives/index.d.ts +5 -5
- package/table-builder/directives/multi-sort.directive.d.ts +11 -11
- package/table-builder/directives/resize-column.directive.d.ts +43 -43
- package/table-builder/directives/table-wrapper.directive.d.ts +11 -11
- package/table-builder/directives/tb-filter.directive.d.ts +120 -120
- package/table-builder/enums/filterTypes.d.ts +37 -37
- package/table-builder/functions/boolean-filter-function.d.ts +3 -3
- package/table-builder/functions/date-filter-function.d.ts +4 -4
- package/table-builder/functions/download-data.d.ts +1 -1
- package/table-builder/functions/null-filter-function.d.ts +2 -2
- package/table-builder/functions/number-filter-function.d.ts +4 -4
- package/table-builder/functions/sort-data-function.d.ts +3 -3
- package/table-builder/functions/string-filter-function.d.ts +7 -7
- package/table-builder/interfaces/ColumnInfo.d.ts +6 -6
- package/table-builder/interfaces/dictionary.d.ts +3 -3
- package/table-builder/interfaces/report-def.d.ts +142 -142
- package/table-builder/material.module.d.ts +32 -32
- package/table-builder/ngrx/actions.d.ts +23 -23
- package/table-builder/ngrx/effects.d.ts +19 -19
- package/table-builder/ngrx/reducer.d.ts +15 -15
- package/table-builder/ngrx/selectors.d.ts +22 -22
- package/table-builder/pipes/column-total.pipe.d.ts +8 -8
- package/table-builder/pipes/format-filter-type.pipe.d.ts +8 -8
- package/table-builder/pipes/format-filter-value.pipe.d.ts +14 -14
- package/table-builder/pipes/key-display.d.ts +11 -11
- package/table-builder/services/export-to-csv.service.d.ts +22 -22
- package/table-builder/services/link-creator.service.d.ts +12 -12
- package/table-builder/services/table-template-service.d.ts +14 -14
- package/table-builder/services/transform-creator.d.ts +19 -19
- package/table-builder/table-builder.module.d.ts +46 -46
- package/utilities/directives/auto-focus.directive.d.ts +10 -10
- package/utilities/directives/clickEmitterDirective.d.ts +7 -7
- package/utilities/directives/clickSubject.d.ts +9 -9
- package/utilities/directives/conditional-classes.directive.d.ts +14 -14
- package/utilities/directives/dialog-service.d.ts +10 -10
- package/utilities/directives/dialog.d.ts +46 -46
- package/utilities/directives/mat-toggle-group-directive.d.ts +21 -21
- package/utilities/directives/prevent-enter.directive.d.ts +6 -6
- package/utilities/directives/stop-propagation.directive.d.ts +7 -7
- package/utilities/directives/styler.d.ts +9 -9
- package/utilities/directives/trim-whitespace.directive.d.ts +9 -9
- package/utilities/index.d.ts +15 -15
- package/utilities/module.d.ts +19 -19
- package/utilities/pipes/function.pipe.d.ts +7 -7
- package/utilities/pipes/phone.pipe.d.ts +7 -7
- package/utilities/pipes/space-case.pipes.d.ts +17 -17
- package/esm2020/action-state/action-state-spinner/action-state-spinner.component.mjs +0 -23
- package/esm2020/action-state/action-state-ui/action-state-ui.module.mjs +0 -28
- package/esm2020/action-state/ngrx-ext/ngrx-ext.module.mjs +0 -23
- package/esm2020/http-request-state/HttpRequestStateFactory.mjs +0 -27
- package/esm2020/http-request-state/HttpRequestStateStore.mjs +0 -97
- package/esm2020/http-request-state/directives/HttpStateDirectiveBase.mjs +0 -34
- package/esm2020/http-request-state/directives/http-error-state-directive.mjs +0 -29
- package/esm2020/http-request-state/directives/http-inProgress-state-directive.mjs +0 -29
- package/esm2020/http-request-state/directives/http-notStarted-state-directive.mjs +0 -29
- package/esm2020/http-request-state/directives/http-success-state-directive.mjs +0 -34
- package/esm2020/http-request-state/directives/request-state-directive.mjs +0 -60
- package/esm2020/http-request-state/http-state-module.mjs +0 -41
- package/esm2020/table-builder/classes/table-store.mjs +0 -292
- package/esm2020/table-builder/components/array-column.component.mjs +0 -57
- package/esm2020/table-builder/components/column-builder/column-builder.component.mjs +0 -112
- package/esm2020/table-builder/components/date-filter/date-filter.component.mjs +0 -25
- package/esm2020/table-builder/components/date-time-filter/date-time-filter.component.mjs +0 -22
- package/esm2020/table-builder/components/filter/filter.component.mjs +0 -54
- package/esm2020/table-builder/components/filter/in-list/in-list-filter.component.mjs +0 -91
- package/esm2020/table-builder/components/gen-col-displayer/gen-col-displayer.component.mjs +0 -45
- package/esm2020/table-builder/components/generic-table/generic-table.component.mjs +0 -202
- package/esm2020/table-builder/components/generic-table/paginator.component.mjs +0 -74
- package/esm2020/table-builder/components/group-by-list/group-by-list.component.mjs +0 -22
- package/esm2020/table-builder/components/header-menu/header-menu.component.mjs +0 -91
- package/esm2020/table-builder/components/in-filter/in-filter.component.mjs +0 -63
- package/esm2020/table-builder/components/initialization-component/initialization-component.mjs +0 -33
- package/esm2020/table-builder/components/number-filter/number-filter.component.mjs +0 -27
- package/esm2020/table-builder/components/sort-menu/sort-menu.component-store.mjs +0 -42
- package/esm2020/table-builder/components/table-container/table-container.mjs +0 -322
- package/esm2020/table-builder/components/table-container-filter/filter-list/filter-list.component.mjs +0 -42
- package/esm2020/table-builder/components/table-container-filter/gen-filter-displayer/gen-filter-displayer.component.mjs +0 -30
- package/esm2020/table-builder/components/table-container-filter/table-wrapper-filter-store.mjs +0 -25
- package/esm2020/table-builder/directives/custom-cell-directive.mjs +0 -59
- package/esm2020/table-builder/directives/multi-sort.directive.mjs +0 -42
- package/esm2020/table-builder/directives/resize-column.directive.mjs +0 -86
- package/esm2020/table-builder/directives/table-wrapper.directive.mjs +0 -26
- package/esm2020/table-builder/directives/tb-filter.directive.mjs +0 -403
- package/esm2020/table-builder/material.module.mjs +0 -207
- package/esm2020/table-builder/ngrx/effects.mjs +0 -48
- package/esm2020/table-builder/pipes/column-total.pipe.mjs +0 -20
- package/esm2020/table-builder/pipes/format-filter-type.pipe.mjs +0 -18
- package/esm2020/table-builder/pipes/format-filter-value.pipe.mjs +0 -45
- package/esm2020/table-builder/pipes/key-display.mjs +0 -20
- package/esm2020/table-builder/services/export-to-csv.service.mjs +0 -88
- package/esm2020/table-builder/services/table-template-service.mjs +0 -44
- package/esm2020/table-builder/services/transform-creator.mjs +0 -75
- package/esm2020/table-builder/table-builder.module.mjs +0 -207
- package/esm2020/utilities/directives/auto-focus.directive.mjs +0 -26
- package/esm2020/utilities/directives/clickEmitterDirective.mjs +0 -21
- package/esm2020/utilities/directives/clickSubject.mjs +0 -27
- package/esm2020/utilities/directives/conditional-classes.directive.mjs +0 -35
- package/esm2020/utilities/directives/dialog-service.mjs +0 -25
- package/esm2020/utilities/directives/dialog.mjs +0 -137
- package/esm2020/utilities/directives/mat-toggle-group-directive.mjs +0 -59
- package/esm2020/utilities/directives/prevent-enter.directive.mjs +0 -19
- package/esm2020/utilities/directives/stop-propagation.directive.mjs +0 -25
- package/esm2020/utilities/directives/styler.mjs +0 -26
- package/esm2020/utilities/directives/trim-whitespace.directive.mjs +0 -29
- package/esm2020/utilities/module.mjs +0 -91
- package/esm2020/utilities/pipes/function.pipe.mjs +0 -21
- package/esm2020/utilities/pipes/phone.pipe.mjs +0 -20
- package/esm2020/utilities/pipes/space-case.pipes.mjs +0 -28
- package/fesm2015/one-paragon-angular-utilities.mjs +0 -4777
- package/fesm2015/one-paragon-angular-utilities.mjs.map +0 -1
- package/fesm2020/one-paragon-angular-utilities.mjs.map +0 -1
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import { Directive, Input, Optional } from '@angular/core';
|
|
2
|
+
import { FieldType } from '../interfaces/report-def';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/cdk/table";
|
|
5
|
+
// here is how to use it
|
|
6
|
+
// <generic-table [report]="report">
|
|
7
|
+
// <p *customCell="'column1'; let element = element" [class.makeMeRed]="element?.port">If Port, i will be red</p>
|
|
8
|
+
// <p *customCell="'column2'">I am custom cell two </p>
|
|
9
|
+
// </generic-table>
|
|
10
|
+
class CustomCellDirective {
|
|
11
|
+
constructor(templateRef, columnDef) {
|
|
12
|
+
this.templateRef = templateRef;
|
|
13
|
+
this.columnDef = columnDef;
|
|
14
|
+
this.TemplateRef = this.templateRef;
|
|
15
|
+
}
|
|
16
|
+
ngAfterContentInit() {
|
|
17
|
+
if (this.TemplateRef === null) {
|
|
18
|
+
this.TemplateRef = this.templateRef;
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
getMetaData(metaData) {
|
|
22
|
+
return {
|
|
23
|
+
key: this.customCell,
|
|
24
|
+
displayName: this.displayName ?? metaData?.displayName,
|
|
25
|
+
preSort: this.preSort ?? metaData?.preSort,
|
|
26
|
+
fieldType: metaData?.fieldType ?? FieldType.Unknown,
|
|
27
|
+
order: this.customCellOrder ?? metaData?.order,
|
|
28
|
+
_internalNotUserDefined: !(!!metaData),
|
|
29
|
+
width: this.customCellWidth ?? metaData?.width,
|
|
30
|
+
customCell: true,
|
|
31
|
+
noExport: !metaData
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: CustomCellDirective, deps: [{ token: i0.TemplateRef, optional: true }, { token: i1.CdkColumnDef, optional: true }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
35
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.1", type: CustomCellDirective, selector: "[customCell]", inputs: { customCell: "customCell", displayName: "displayName", preSort: "preSort", TemplateRef: "TemplateRef", customCellOrder: "customCellOrder", customCellWidth: "customCellWidth" }, ngImport: i0 }); }
|
|
36
|
+
}
|
|
37
|
+
export { CustomCellDirective };
|
|
38
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: CustomCellDirective, decorators: [{
|
|
39
|
+
type: Directive,
|
|
40
|
+
args: [{
|
|
41
|
+
selector: '[customCell]',
|
|
42
|
+
}]
|
|
43
|
+
}], ctorParameters: function () { return [{ type: i0.TemplateRef, decorators: [{
|
|
44
|
+
type: Optional
|
|
45
|
+
}] }, { type: i1.CdkColumnDef, decorators: [{
|
|
46
|
+
type: Optional
|
|
47
|
+
}] }]; }, propDecorators: { customCell: [{
|
|
48
|
+
type: Input
|
|
49
|
+
}], displayName: [{
|
|
50
|
+
type: Input
|
|
51
|
+
}], preSort: [{
|
|
52
|
+
type: Input
|
|
53
|
+
}], TemplateRef: [{
|
|
54
|
+
type: Input
|
|
55
|
+
}], customCellOrder: [{
|
|
56
|
+
type: Input
|
|
57
|
+
}], customCellWidth: [{
|
|
58
|
+
type: Input
|
|
59
|
+
}] } });
|
|
60
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tLWNlbGwtZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci11dGlsaXRpZXMvc3JjL3RhYmxlLWJ1aWxkZXIvZGlyZWN0aXZlcy9jdXN0b20tY2VsbC1kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBZSxLQUFLLEVBQW9CLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUxRixPQUFPLEVBQXFCLFNBQVMsRUFBRSxNQUFNLDBCQUEwQixDQUFDOzs7QUFFeEUsd0JBQXdCO0FBQ3hCLG9DQUFvQztBQUNwQyxxSEFBcUg7QUFDckgsMkRBQTJEO0FBQzNELG1CQUFtQjtBQUNuQixNQUdhLG1CQUFtQjtJQU81QixZQUN1QixXQUE2QixFQUMvQixTQUF1QjtRQURyQixnQkFBVyxHQUFYLFdBQVcsQ0FBa0I7UUFDL0IsY0FBUyxHQUFULFNBQVMsQ0FBYztRQUV4QyxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDdkMsQ0FBQztJQUNELGtCQUFrQjtRQUNqQixJQUFJLElBQUksQ0FBQyxXQUFXLEtBQUssSUFBSSxFQUFFO1lBQzdCLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQztTQUNyQztJQUNILENBQUM7SUFFRCxXQUFXLENBQUMsUUFBb0I7UUFDOUIsT0FBTztZQUNMLEdBQUcsRUFBRSxJQUFJLENBQUMsVUFBVTtZQUNwQixXQUFXLEVBQUUsSUFBSSxDQUFDLFdBQVcsSUFBSSxRQUFRLEVBQUUsV0FBVztZQUN0RCxPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU8sSUFBSSxRQUFRLEVBQUUsT0FBTztZQUMxQyxTQUFTLEVBQUUsUUFBUSxFQUFFLFNBQVMsSUFBSyxTQUFTLENBQUMsT0FBTztZQUNwRCxLQUFLLEVBQUUsSUFBSSxDQUFDLGVBQWUsSUFBSSxRQUFRLEVBQUUsS0FBSztZQUM5Qyx1QkFBdUIsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQztZQUN0QyxLQUFLLEVBQUUsSUFBSSxDQUFDLGVBQWUsSUFBSSxRQUFRLEVBQUUsS0FBSztZQUM5QyxVQUFVLEVBQUUsSUFBSTtZQUNoQixRQUFRLEVBQUUsQ0FBQyxRQUFRO1NBQ3BCLENBQUM7SUFDSixDQUFDOzhHQS9CUSxtQkFBbUI7a0dBQW5CLG1CQUFtQjs7U0FBbkIsbUJBQW1COzJGQUFuQixtQkFBbUI7a0JBSC9CLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLGNBQWM7aUJBQzNCOzswQkFTTSxRQUFROzswQkFDUixRQUFROzRDQVJGLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxlQUFlO3NCQUF2QixLQUFLO2dCQUNHLGVBQWU7c0JBQXZCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIFRlbXBsYXRlUmVmLCBJbnB1dCwgQWZ0ZXJDb250ZW50SW5pdCwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENka0NvbHVtbkRlZiB9IGZyb20gJ0Bhbmd1bGFyL2Nkay90YWJsZSc7XG5pbXBvcnQgeyBTb3J0RGVmLCBNZXRhRGF0YSwgRmllbGRUeXBlIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9yZXBvcnQtZGVmJztcblxuLy8gaGVyZSBpcyBob3cgdG8gdXNlIGl0XG4vLyA8Z2VuZXJpYy10YWJsZSBbcmVwb3J0XT1cInJlcG9ydFwiPlxuLy8gICAgIDxwICpjdXN0b21DZWxsPVwiJ2NvbHVtbjEnOyBsZXQgZWxlbWVudCA9IGVsZW1lbnRcIiBbY2xhc3MubWFrZU1lUmVkXT1cImVsZW1lbnQ/LnBvcnRcIj5JZiBQb3J0LCBpIHdpbGwgYmUgcmVkPC9wPlxuLy8gICAgIDxwICpjdXN0b21DZWxsPVwiJ2NvbHVtbjInXCI+SSBhbSBjdXN0b20gY2VsbCB0d28gPC9wPlxuLy8gPC9nZW5lcmljLXRhYmxlPlxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdbY3VzdG9tQ2VsbF0nLFxufSlcbmV4cG9ydCBjbGFzcyBDdXN0b21DZWxsRGlyZWN0aXZlIGltcGxlbWVudHMgQWZ0ZXJDb250ZW50SW5pdCB7XG4gICAgQElucHV0KCkgY3VzdG9tQ2VsbCE6IHN0cmluZztcbiAgICBASW5wdXQoKSBkaXNwbGF5TmFtZT86IHN0cmluZztcbiAgICBASW5wdXQoKSBwcmVTb3J0PzogU29ydERlZjtcbiAgICBASW5wdXQoKSBUZW1wbGF0ZVJlZjogVGVtcGxhdGVSZWY8YW55PjtcbiAgICBASW5wdXQoKSBjdXN0b21DZWxsT3JkZXI/OiBudW1iZXI7XG4gICAgQElucHV0KCkgY3VzdG9tQ2VsbFdpZHRoPzogc3RyaW5nO1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgQE9wdGlvbmFsKCkgIHByaXZhdGUgdGVtcGxhdGVSZWY6IFRlbXBsYXRlUmVmPGFueT4sXG4gICAgICBAT3B0aW9uYWwoKSBwdWJsaWMgY29sdW1uRGVmOiBDZGtDb2x1bW5EZWZcbiAgICAgICkge1xuICAgICAgICB0aGlzLlRlbXBsYXRlUmVmID0gdGhpcy50ZW1wbGF0ZVJlZjtcbiAgICAgfVxuICAgICBuZ0FmdGVyQ29udGVudEluaXQoKSB7XG4gICAgICBpZiAodGhpcy5UZW1wbGF0ZVJlZiA9PT0gbnVsbCkge1xuICAgICAgICB0aGlzLlRlbXBsYXRlUmVmID0gdGhpcy50ZW1wbGF0ZVJlZjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBnZXRNZXRhRGF0YShtZXRhRGF0YT8gOiBNZXRhRGF0YSk6IE1ldGFEYXRhIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGtleTogdGhpcy5jdXN0b21DZWxsLFxuICAgICAgICBkaXNwbGF5TmFtZTogdGhpcy5kaXNwbGF5TmFtZSA/PyBtZXRhRGF0YT8uZGlzcGxheU5hbWUsXG4gICAgICAgIHByZVNvcnQ6IHRoaXMucHJlU29ydCA/PyBtZXRhRGF0YT8ucHJlU29ydCxcbiAgICAgICAgZmllbGRUeXBlOiBtZXRhRGF0YT8uZmllbGRUeXBlID8/ICBGaWVsZFR5cGUuVW5rbm93bixcbiAgICAgICAgb3JkZXI6IHRoaXMuY3VzdG9tQ2VsbE9yZGVyID8/IG1ldGFEYXRhPy5vcmRlcixcbiAgICAgICAgX2ludGVybmFsTm90VXNlckRlZmluZWQ6ICEoISFtZXRhRGF0YSksXG4gICAgICAgIHdpZHRoOiB0aGlzLmN1c3RvbUNlbGxXaWR0aCA/PyBtZXRhRGF0YT8ud2lkdGgsXG4gICAgICAgIGN1c3RvbUNlbGw6IHRydWUsXG4gICAgICAgIG5vRXhwb3J0OiAhbWV0YURhdGFcbiAgICAgIH07XG4gICAgfVxufVxuIl19
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
export * from './custom-cell-directive';
|
|
2
|
-
export * from './multi-sort.directive';
|
|
3
|
-
export * from './resize-column.directive';
|
|
4
|
-
export * from './table-wrapper.directive';
|
|
5
|
-
export * from './tb-filter.directive';
|
|
1
|
+
export * from './custom-cell-directive';
|
|
2
|
+
export * from './multi-sort.directive';
|
|
3
|
+
export * from './resize-column.directive';
|
|
4
|
+
export * from './table-wrapper.directive';
|
|
5
|
+
export * from './tb-filter.directive';
|
|
6
6
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXV0aWxpdGllcy9zcmMvdGFibGUtYnVpbGRlci9kaXJlY3RpdmVzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYyx1QkFBdUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY3VzdG9tLWNlbGwtZGlyZWN0aXZlJztcclxuZXhwb3J0ICogZnJvbSAnLi9tdWx0aS1zb3J0LmRpcmVjdGl2ZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vcmVzaXplLWNvbHVtbi5kaXJlY3RpdmUnO1xyXG5leHBvcnQgKiBmcm9tICcuL3RhYmxlLXdyYXBwZXIuZGlyZWN0aXZlJztcclxuZXhwb3J0ICogZnJvbSAnLi90Yi1maWx0ZXIuZGlyZWN0aXZlJztcclxuXHJcbiJdfQ==
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { Directive } from '@angular/core';
|
|
2
|
+
import { MatSort } from '@angular/material/sort';
|
|
3
|
+
import { map } from 'rxjs/operators';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "../classes/table-store";
|
|
6
|
+
class MultiSortDirective extends MatSort {
|
|
7
|
+
constructor(state) {
|
|
8
|
+
super();
|
|
9
|
+
this.state = state;
|
|
10
|
+
this.rules = [];
|
|
11
|
+
this.state.setSort(this.sortChange.pipe(map(sc => ({ key: sc.active, direction: sc.direction }))));
|
|
12
|
+
this.state.on(this.state.sorted$, rules => {
|
|
13
|
+
this.rules = rules;
|
|
14
|
+
if (this.active && rules.length === 0) {
|
|
15
|
+
this.active = '';
|
|
16
|
+
this.direction = '';
|
|
17
|
+
this.sortChange.emit({ active: '', direction: '' });
|
|
18
|
+
}
|
|
19
|
+
if (rules.length > 0 && (this.active !== rules[0].active || this.direction !== rules[0].direction)) {
|
|
20
|
+
this.active = rules[0].active;
|
|
21
|
+
this.direction = rules[0].direction;
|
|
22
|
+
this.sortChange.emit(rules[0]);
|
|
23
|
+
}
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: MultiSortDirective, deps: [{ token: i1.TableStore }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
27
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.1", type: MultiSortDirective, selector: "[multiSort]", inputs: { disabled: ["matSortDisabled", "disabled"] }, providers: [
|
|
28
|
+
{ provide: MatSort, useExisting: MultiSortDirective }
|
|
29
|
+
], exportAs: ["multiSort"], usesInheritance: true, ngImport: i0 }); }
|
|
30
|
+
}
|
|
31
|
+
export { MultiSortDirective };
|
|
32
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: MultiSortDirective, decorators: [{
|
|
33
|
+
type: Directive,
|
|
34
|
+
args: [{
|
|
35
|
+
selector: '[multiSort]',
|
|
36
|
+
exportAs: 'multiSort',
|
|
37
|
+
inputs: ['disabled: matSortDisabled'],
|
|
38
|
+
providers: [
|
|
39
|
+
{ provide: MatSort, useExisting: MultiSortDirective }
|
|
40
|
+
]
|
|
41
|
+
}]
|
|
42
|
+
}], ctorParameters: function () { return [{ type: i1.TableStore }]; } });
|
|
43
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGktc29ydC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXV0aWxpdGllcy9zcmMvdGFibGUtYnVpbGRlci9kaXJlY3RpdmVzL211bHRpLXNvcnQuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBQzdELE9BQU8sRUFBRSxPQUFPLEVBQVEsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7OztBQUdyQyxNQVFhLGtCQUFtQixTQUFRLE9BQU87SUFHN0MsWUFBb0IsS0FBaUI7UUFDbkMsS0FBSyxFQUFFLENBQUM7UUFEVSxVQUFLLEdBQUwsS0FBSyxDQUFZO1FBRnJDLFVBQUssR0FBVyxFQUFFLENBQUM7UUFJakIsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLEdBQUcsRUFBRSxFQUFFLENBQUMsTUFBTSxFQUFFLFNBQVMsRUFBRSxFQUFFLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNuRyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FDWCxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFDbEIsS0FBSyxDQUFDLEVBQUU7WUFDTixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztZQUVuQixJQUFJLElBQUksQ0FBQyxNQUFNLElBQUksS0FBSyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7Z0JBQ3JDLElBQUksQ0FBQyxNQUFNLEdBQUcsRUFBRSxDQUFDO2dCQUNqQixJQUFJLENBQUMsU0FBUyxHQUFHLEVBQUUsQ0FBQztnQkFDcEIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsRUFBRSxNQUFNLEVBQUUsRUFBRSxFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO2FBQ3JEO1lBRUQsSUFBRyxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEtBQUssS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsU0FBUyxLQUFLLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsRUFBRTtnQkFDakcsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDO2dCQUM5QixJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7Z0JBQ3BDLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQ2hDO1FBRUgsQ0FBQyxDQUNGLENBQUM7SUFDSixDQUFDOzhHQXpCVSxrQkFBa0I7a0dBQWxCLGtCQUFrQiw2RkFKbEI7WUFDVCxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsV0FBVyxFQUFFLGtCQUFrQixFQUFFO1NBQ3REOztTQUVVLGtCQUFrQjsyRkFBbEIsa0JBQWtCO2tCQVI5QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxhQUFhO29CQUN2QixRQUFRLEVBQUUsV0FBVztvQkFDckIsTUFBTSxFQUFFLENBQUMsMkJBQTJCLENBQUM7b0JBQ3JDLFNBQVMsRUFBRTt3QkFDVCxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsV0FBVyxvQkFBb0IsRUFBRTtxQkFDdEQ7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIE9uSW5pdCwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE1hdFNvcnQsIFNvcnQgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zb3J0JztcclxuaW1wb3J0IHsgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBUYWJsZVN0b3JlIH0gZnJvbSAnLi4vY2xhc3Nlcy90YWJsZS1zdG9yZSc7XHJcblxyXG5ARGlyZWN0aXZlKHtcclxuICBzZWxlY3RvcjogJ1ttdWx0aVNvcnRdJyxcclxuICBleHBvcnRBczogJ211bHRpU29ydCcsXHJcbiAgaW5wdXRzOiBbJ2Rpc2FibGVkOiBtYXRTb3J0RGlzYWJsZWQnXSxcclxuICBwcm92aWRlcnM6IFtcclxuICAgIHsgcHJvdmlkZTogTWF0U29ydCwgdXNlRXhpc3Rpbmc6IE11bHRpU29ydERpcmVjdGl2ZSB9XHJcbiAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgTXVsdGlTb3J0RGlyZWN0aXZlIGV4dGVuZHMgTWF0U29ydCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuICBydWxlczogU29ydFtdID0gW107XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgc3RhdGU6IFRhYmxlU3RvcmUpIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgICB0aGlzLnN0YXRlLnNldFNvcnQodGhpcy5zb3J0Q2hhbmdlLnBpcGUobWFwKHNjID0+ICh7IGtleTogc2MuYWN0aXZlLCBkaXJlY3Rpb246IHNjLmRpcmVjdGlvbiB9KSkpKTtcclxuICAgIHRoaXMuc3RhdGUub24oXHJcbiAgICAgIHRoaXMuc3RhdGUuc29ydGVkJCxcclxuICAgICAgcnVsZXMgPT4ge1xyXG4gICAgICAgIHRoaXMucnVsZXMgPSBydWxlcztcclxuXHJcbiAgICAgICAgaWYgKHRoaXMuYWN0aXZlICYmIHJ1bGVzLmxlbmd0aCA9PT0gMCkge1xyXG4gICAgICAgICAgdGhpcy5hY3RpdmUgPSAnJztcclxuICAgICAgICAgIHRoaXMuZGlyZWN0aW9uID0gJyc7XHJcbiAgICAgICAgICB0aGlzLnNvcnRDaGFuZ2UuZW1pdCh7IGFjdGl2ZTogJycsIGRpcmVjdGlvbjogJycgfSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpZihydWxlcy5sZW5ndGggPiAwICYmICh0aGlzLmFjdGl2ZSAhPT0gcnVsZXNbMF0uYWN0aXZlIHx8IHRoaXMuZGlyZWN0aW9uICE9PSBydWxlc1swXS5kaXJlY3Rpb24pKSB7XHJcbiAgICAgICAgICB0aGlzLmFjdGl2ZSA9IHJ1bGVzWzBdLmFjdGl2ZTtcclxuICAgICAgICAgIHRoaXMuZGlyZWN0aW9uID0gcnVsZXNbMF0uZGlyZWN0aW9uO1xyXG4gICAgICAgICAgdGhpcy5zb3J0Q2hhbmdlLmVtaXQocnVsZXNbMF0pO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgIH1cclxuICAgICk7XHJcbiAgfVxyXG5cclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
import { Directive, Input } from "@angular/core";
|
|
2
|
+
import { fromEvent } from "rxjs";
|
|
3
|
+
import { filter, map, switchMap, takeUntil } from "rxjs/operators";
|
|
4
|
+
import { defaultShareReplay } from "../../rxjs";
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "../classes/table-store";
|
|
7
|
+
class ResizeColumnDirective {
|
|
8
|
+
constructor(renderer, el, store) {
|
|
9
|
+
this.renderer = renderer;
|
|
10
|
+
this.el = el;
|
|
11
|
+
this.store = store;
|
|
12
|
+
this.getElementWidth = (elem) => (+(globalThis.getComputedStyle(elem).getPropertyValue('width').replace('px', '')));
|
|
13
|
+
}
|
|
14
|
+
ngOnInit() {
|
|
15
|
+
if (this.resizable) {
|
|
16
|
+
const { table, columnHead } = this.getTableAndColumnHeadHtmlElements();
|
|
17
|
+
const resizer = this.createResizerSpanInColumnHead(columnHead);
|
|
18
|
+
const aggregateMouseEventsMapped$ = this.mouseDownThroughMouseUpEventMapper(resizer, columnHead, table);
|
|
19
|
+
const resizeColsData$ = aggregateMouseEventsMapped$.pipe(filter(({ mouseMove }) => !!mouseMove.buttons), map(({ mouseDownData, mouseMove }) => {
|
|
20
|
+
const { newTableWidth, newColumnWidth } = this.calculateNewWidths(mouseDownData, mouseMove);
|
|
21
|
+
return ({
|
|
22
|
+
key: this.key,
|
|
23
|
+
widthInPixel: newColumnWidth,
|
|
24
|
+
tableSize: newTableWidth,
|
|
25
|
+
});
|
|
26
|
+
}), defaultShareReplay());
|
|
27
|
+
this.store.setUserDefinedWidth(resizeColsData$.pipe(map(resizeData => ([{ key: this.key, widthInPixel: resizeData.widthInPixel }]))));
|
|
28
|
+
this.store.setTableWidth(resizeColsData$.pipe(map(resizeData => resizeData.tableSize)));
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
createResizerSpanInColumnHead(columnHead) {
|
|
32
|
+
const resizer = this.renderer.createElement("span");
|
|
33
|
+
this.renderer.addClass(resizer, "resize-holder");
|
|
34
|
+
resizer.style['cursor'] = 'col-resize';
|
|
35
|
+
resizer.style['user-select'] = 'none';
|
|
36
|
+
resizer.style['width'] = '10px';
|
|
37
|
+
resizer.style['height'] = '100%';
|
|
38
|
+
resizer.style['position'] = 'absolute';
|
|
39
|
+
resizer.style['right'] = '0';
|
|
40
|
+
resizer.style['top'] = '0';
|
|
41
|
+
resizer.style['z-index'] = '1';
|
|
42
|
+
this.renderer.appendChild(columnHead, resizer);
|
|
43
|
+
return resizer;
|
|
44
|
+
}
|
|
45
|
+
getTableAndColumnHeadHtmlElements() {
|
|
46
|
+
const columnHead = this.el.nativeElement;
|
|
47
|
+
const row = this.renderer.parentNode(columnHead);
|
|
48
|
+
const table = this.renderer.parentNode(row);
|
|
49
|
+
return ({ table, columnHead });
|
|
50
|
+
}
|
|
51
|
+
mouseDownThroughMouseUpEventMapper(resizer, columnHead, table) {
|
|
52
|
+
return this.resizerMouseDownEventMapper(resizer, columnHead, table)
|
|
53
|
+
.pipe(switchMap(mouseDownData => fromEvent(table, "mousemove").pipe(map(mouseMove => ({ mouseDownData, mouseMove })), takeUntil(fromEvent(document, "mouseup")))));
|
|
54
|
+
}
|
|
55
|
+
resizerMouseDownEventMapper(resizer, columnHead, table) {
|
|
56
|
+
return fromEvent(resizer, "mousedown").pipe(map(event => ({
|
|
57
|
+
startPageX: event.pageX,
|
|
58
|
+
startColumnWidth: this.getElementWidth(columnHead),
|
|
59
|
+
startTableWidth: this.getElementWidth(table),
|
|
60
|
+
})));
|
|
61
|
+
}
|
|
62
|
+
calculateNewWidths(mouseDownData, mouseMove) {
|
|
63
|
+
const change = (mouseMove.pageX - mouseDownData.startPageX);
|
|
64
|
+
let newColumnWidth = mouseDownData.startColumnWidth + change;
|
|
65
|
+
if (newColumnWidth < 1) {
|
|
66
|
+
newColumnWidth = 1;
|
|
67
|
+
}
|
|
68
|
+
const columnChange = newColumnWidth - mouseDownData.startColumnWidth;
|
|
69
|
+
const newTableWidth = (mouseDownData.startTableWidth + columnChange);
|
|
70
|
+
return ({ newTableWidth, newColumnWidth });
|
|
71
|
+
}
|
|
72
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: ResizeColumnDirective, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i1.TableStore }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
73
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.1", type: ResizeColumnDirective, selector: "[resizeColumn]", inputs: { resizable: ["resizeColumn", "resizable"], key: "key" }, ngImport: i0 }); }
|
|
74
|
+
}
|
|
75
|
+
export { ResizeColumnDirective };
|
|
76
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: ResizeColumnDirective, decorators: [{
|
|
77
|
+
type: Directive,
|
|
78
|
+
args: [{
|
|
79
|
+
selector: "[resizeColumn]",
|
|
80
|
+
}]
|
|
81
|
+
}], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ElementRef }, { type: i1.TableStore }]; }, propDecorators: { resizable: [{
|
|
82
|
+
type: Input,
|
|
83
|
+
args: ["resizeColumn"]
|
|
84
|
+
}], key: [{
|
|
85
|
+
type: Input
|
|
86
|
+
}] } });
|
|
87
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzaXplLWNvbHVtbi5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXV0aWxpdGllcy9zcmMvdGFibGUtYnVpbGRlci9kaXJlY3RpdmVzL3Jlc2l6ZS1jb2x1bW4uZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQXFCLEtBQUssRUFBYyxNQUFNLGVBQWUsQ0FBQztBQUNoRixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2pDLE9BQU8sRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNuRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxZQUFZLENBQUM7OztBQUdoRCxNQUdhLHFCQUFxQjtJQUloQyxZQUFvQixRQUFtQixFQUFVLEVBQWMsRUFBUyxLQUFpQjtRQUFyRSxhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQVUsT0FBRSxHQUFGLEVBQUUsQ0FBWTtRQUFTLFVBQUssR0FBTCxLQUFLLENBQVk7UUFtRnpGLG9CQUFlLEdBQUcsQ0FBQyxJQUFnQixFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLENBQUMsT0FBTyxDQUFDLElBQUksRUFBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUE7SUFuRjNCLENBQUM7SUFFL0YsUUFBUTtRQUNOLElBQUksSUFBSSxDQUFDLFNBQVMsRUFBQztZQUNqQixNQUFNLEVBQUMsS0FBSyxFQUFFLFVBQVUsRUFBQyxHQUFHLElBQUksQ0FBQyxpQ0FBaUMsRUFBRSxDQUFDO1lBQ3JFLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyw2QkFBNkIsQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUUvRCxNQUFN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QUMsQ0FBQztRQUNyRSxPQUFPLENBQUMsRUFBQyxhQUFhLEVBQUMsY0FBYyxFQUFDLENBQUMsQ0FBQTtJQUN6QyxDQUFDOzhHQXRGVSxxQkFBcUI7a0dBQXJCLHFCQUFxQjs7U0FBckIscUJBQXFCOzJGQUFyQixxQkFBcUI7a0JBSGpDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGdCQUFnQjtpQkFDM0I7a0pBRXdCLFNBQVM7c0JBQS9CLEtBQUs7dUJBQUMsY0FBYztnQkFFWixHQUFHO3NCQUFYLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIE9uSW5pdCwgUmVuZGVyZXIyLCBJbnB1dCwgRWxlbWVudFJlZiB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IGZyb21FdmVudCB9IGZyb20gXCJyeGpzXCI7XHJcbmltcG9ydCB7IGZpbHRlciwgbWFwLCBzd2l0Y2hNYXAsIHRha2VVbnRpbCB9IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xyXG5pbXBvcnQgeyBkZWZhdWx0U2hhcmVSZXBsYXkgfSBmcm9tIFwiLi4vLi4vcnhqc1wiO1xyXG5pbXBvcnQgeyBUYWJsZVN0b3JlIH0gZnJvbSBcIi4uL2NsYXNzZXMvdGFibGUtc3RvcmVcIjtcclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiBcIltyZXNpemVDb2x1bW5dXCIsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBSZXNpemVDb2x1bW5EaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXR7XHJcbiAgQElucHV0KFwicmVzaXplQ29sdW1uXCIpIHJlc2l6YWJsZSE6IGJvb2xlYW47XHJcblxyXG4gIEBJbnB1dCgpIGtleSE6IHN0cmluZztcclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIsIHByaXZhdGUgZWw6IEVsZW1lbnRSZWYsIHB1YmxpYyBzdG9yZTogVGFibGVTdG9yZSwpIHsgfVxyXG5cclxuICBuZ09uSW5pdCgpe1xyXG4gICAgaWYgKHRoaXMucmVzaXphYmxlKXtcclxuICAgICAgY29uc3Qge3RhYmxlLCBjb2x1bW5IZWFkfSA9IHRoaXMuZ2V0VGFibGVBbmRDb2x1bW5IZWFkSHRtbEVsZW1lbnRzKCk7XHJcbiAgICAgIGNvbnN0IHJlc2l6ZXIgPSB0aGlzLmNyZWF0ZVJlc2l6ZXJTcGFuSW5Db2x1bW5IZWFkKGNvbHVtbkhlYWQpO1xyXG5cclxuICAgICAgY29uc3QgYWdncmVnYXRlTW91c2VFdmVudHNNYXBwZWQkID0gdGhpcy5tb3VzZURvd25UaHJvdWdoTW91c2VVcEV2ZW50TWFwcGVyKHJlc2l6ZXIsY29sdW1uSGVhZCx0YWJsZSlcclxuXHJcbiAgICAgIGNvbnN0IHJlc2l6ZUNvbHNEYXRhJCA9IGFnZ3JlZ2F0ZU1vdXNlRXZlbnRzTWFwcGVkJC5waXBlKFxyXG4gICAgICAgIGZpbHRlcigoe21vdXNlTW92ZX0pPT4hIW1vdXNlTW92ZS5idXR0b25zKSxcclxuICAgICAgICBtYXAoICh7bW91c2VEb3duRGF0YSxtb3VzZU1vdmV9KSA9PiB7XHJcbiAgICAgICAgICAgIGNvbnN0IHtuZXdUYWJsZVdpZHRoLG5ld0NvbHVtbldpZHRofSAgPSB0aGlzLmNhbGN1bGF0ZU5ld1dpZHRocyhtb3VzZURvd25EYXRhLG1vdXNlTW92ZSlcclxuICAgICAgICAgICAgcmV0dXJuICh7XHJcbiAgICAgICAgICAgICAga2V5OnRoaXMua2V5LFxyXG4gICAgICAgICAgICAgIHdpZHRoSW5QaXhlbDpuZXdDb2x1bW5XaWR0aCxcclxuICAgICAgICAgICAgICB0YWJsZVNpemU6bmV3VGFibGVXaWR0aCxcclxuICAgICAgICAgICAgfSlcclxuICAgICAgICAgIH0pLFxyXG4gICAgICAgIGRlZmF1bHRTaGFyZVJlcGxheSgpXHJcbiAgICAgICk7XHJcblxyXG4gICAgICB0aGlzLnN0b3JlLnNldFVzZXJEZWZpbmVkV2lkdGgocmVzaXplQ29sc0RhdGEkLnBpcGUoXHJcbiAgICAgICAgbWFwKHJlc2l6ZURhdGEgPT4gKFt7a2V5OiB0aGlzLmtleSwgd2lkdGhJblBpeGVsOiByZXNpemVEYXRhLndpZHRoSW5QaXhlbCB9XSkpXHJcbiAgICAgICkpO1xyXG5cclxuICAgICAgdGhpcy5zdG9yZS5zZXRUYWJsZVdpZHRoKHJlc2l6ZUNvbHNEYXRhJC5waXBlKFxyXG4gICAgICAgIG1hcChyZXNpemVEYXRhID0+IHJlc2l6ZURhdGEudGFibGVTaXplICkpKTtcclxuICAgIH1cclxuXHJcbiAgfVxyXG5cclxuICBjcmVhdGVSZXNpemVyU3BhbkluQ29sdW1uSGVhZChjb2x1bW5IZWFkOkhUTUxFbGVtZW50KXtcclxuICAgIGNvbnN0IHJlc2l6ZXIgPSB0aGlzLnJlbmRlcmVyLmNyZWF0ZUVsZW1lbnQoXCJzcGFuXCIpO1xyXG4gICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyhyZXNpemVyLCBcInJlc2l6ZS1ob2xkZXJcIik7XHJcbiAgICByZXNpemVyLnN0eWxlWydjdXJzb3InXT0nY29sLXJlc2l6ZSc7XHJcbiAgICByZXNpemVyLnN0eWxlWyd1c2VyLXNlbGVjdCddPSdub25lJztcclxuICAgIHJlc2l6ZXIuc3R5bGVbJ3dpZHRoJ109JzEwcHgnO1xyXG4gICAgcmVzaXplci5zdHlsZVsnaGVpZ2h0J109JzEwMCUnO1xyXG4gICAgcmVzaXplci5zdHlsZVsncG9zaXRpb24nXT0nYWJzb2x1dGUnO1xyXG4gICAgcmVzaXplci5zdHlsZVsncmlnaHQnXT0nMCc7XHJcbiAgICByZXNpemVyLnN0eWxlWyd0b3AnXT0nMCc7XHJcbiAgICByZXNpemVyLnN0eWxlWyd6LWluZGV4J109JzEnO1xyXG4gICAgdGhpcy5yZW5kZXJlci5hcHBlbmRDaGlsZChjb2x1bW5IZWFkLCByZXNpemVyKTtcclxuICAgIHJldHVybiByZXNpemVyO1xyXG4gIH1cclxuXHJcbiAgZ2V0VGFibGVBbmRDb2x1bW5IZWFkSHRtbEVsZW1lbnRzKCk6e3RhYmxlOkhUTUxFbGVtZW50LGNvbHVtbkhlYWQ6SFRNTEVsZW1lbnR9e1xyXG4gICAgY29uc3QgY29sdW1uSGVhZDogSFRNTEVsZW1lbnQgPSB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgICBjb25zdCByb3cgPSB0aGlzLnJlbmRlcmVyLnBhcmVudE5vZGUoY29sdW1uSGVhZCk7XHJcbiAgICBjb25zdCB0YWJsZSA9IHRoaXMucmVuZGVyZXIucGFyZW50Tm9kZShyb3cpO1xyXG4gICAgcmV0dXJuICh7dGFibGUsY29sdW1uSGVhZH0pXHJcbiAgfVxyXG5cclxuICBtb3VzZURvd25UaHJvdWdoTW91c2VVcEV2ZW50TWFwcGVyKHJlc2l6ZXI6SFRNTEVsZW1lbnQsIGNvbHVtbkhlYWQ6SFRNTEVsZW1lbnQsIHRhYmxlOkhUTUxFbGVtZW50KXtcclxuICAgIHJldHVybiB0aGlzLnJlc2l6ZXJNb3VzZURvd25FdmVudE1hcHBlcihyZXNpemVyLGNvbHVtbkhlYWQsdGFibGUpXHJcbiAgICAucGlwZShcclxuICAgICAgc3dpdGNoTWFwKCBtb3VzZURvd25EYXRhID0+IGZyb21FdmVudDxNb3VzZUV2ZW50Pih0YWJsZSwgXCJtb3VzZW1vdmVcIikucGlwZShcclxuICAgICAgICBtYXAoIG1vdXNlTW92ZSA9PiAoe21vdXNlRG93bkRhdGEsIG1vdXNlTW92ZX0pKSxcclxuICAgICAgICB0YWtlVW50aWwoZnJvbUV2ZW50PE1vdXNlRXZlbnQ+KGRvY3VtZW50LCBcIm1vdXNldXBcIikpXHJcbiAgICAgICkgKSxcclxuICAgIClcclxuICB9XHJcbiAgcmVzaXplck1vdXNlRG93bkV2ZW50TWFwcGVyKHJlc2l6ZXI6SFRNTEVsZW1lbnQsIGNvbHVtbkhlYWQ6SFRNTEVsZW1lbnQsIHRhYmxlOkhUTUxFbGVtZW50KXtcclxuICAgIHJldHVybiBmcm9tRXZlbnQ8TW91c2VFdmVudD4ocmVzaXplciwgXCJtb3VzZWRvd25cIikucGlwZShcclxuICAgICAgbWFwKGV2ZW50ID0+ICh7XHJcbiAgICAgICAgc3RhcnRQYWdlWDogZXZlbnQucGFnZVgsXHJcbiAgICAgICAgc3RhcnRDb2x1bW5XaWR0aDogdGhpcy5nZXRFbGVtZW50V2lkdGgoY29sdW1uSGVhZCksXHJcbiAgICAgICAgc3RhcnRUYWJsZVdpZHRoOiB0aGlzLmdldEVsZW1lbnRXaWR0aCh0YWJsZSksXHJcbiAgICAgIH0pKVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIGNhbGN1bGF0ZU5ld1dpZHRocyhtb3VzZURvd25EYXRhOiBNb3VzZURvd25EYXRhLCBtb3VzZU1vdmU6IE1vdXNlRXZlbnQpOntuZXdUYWJsZVdpZHRoOm51bWJlcixuZXdDb2x1bW5XaWR0aDpudW1iZXJ9e1xyXG4gICAgY29uc3QgY2hhbmdlID0gKG1vdXNlTW92ZS5wYWdlWCAtIG1vdXNlRG93bkRhdGEuc3RhcnRQYWdlWCApO1xyXG4gICAgbGV0IG5ld0NvbHVtbldpZHRoID0gbW91c2VEb3duRGF0YS5zdGFydENvbHVtbldpZHRoICsgY2hhbmdlO1xyXG4gICAgaWYobmV3Q29sdW1uV2lkdGggPCAxKXtcclxuICAgICAgbmV3Q29sdW1uV2lkdGggPSAxO1xyXG4gICAgfVxyXG4gICAgY29uc3QgY29sdW1uQ2hhbmdlID0gbmV3Q29sdW1uV2lkdGggLSBtb3VzZURvd25EYXRhLnN0YXJ0Q29sdW1uV2lkdGg7XHJcbiAgICBjb25zdCBuZXdUYWJsZVdpZHRoID0gKG1vdXNlRG93bkRhdGEuc3RhcnRUYWJsZVdpZHRoICsgY29sdW1uQ2hhbmdlKTtcclxuICAgIHJldHVybiAoe25ld1RhYmxlV2lkdGgsbmV3Q29sdW1uV2lkdGh9KVxyXG4gIH1cclxuICBnZXRFbGVtZW50V2lkdGggPSAoZWxlbTpIVE1MRWxlbWVudCkgPT4gKCsoZ2xvYmFsVGhpcy5nZXRDb21wdXRlZFN0eWxlKGVsZW0pLmdldFByb3BlcnR5VmFsdWUoJ3dpZHRoJykucmVwbGFjZSgncHgnLCcnKSkpXHJcblxyXG59XHJcbmludGVyZmFjZSBNb3VzZURvd25EYXRhe1xyXG4gIHN0YXJ0UGFnZVg6bnVtYmVyLFxyXG4gIHN0YXJ0Q29sdW1uV2lkdGg6bnVtYmVyLFxyXG4gIHN0YXJ0VGFibGVXaWR0aDpudW1iZXIsXHJcbn1cclxuIl19
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { ContentChildren, Directive } from "@angular/core";
|
|
2
|
+
import { TableCustomFilterDirective, TableFilterDirective } from "./tb-filter.directive";
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
class TableWrapperDirective {
|
|
5
|
+
constructor() {
|
|
6
|
+
this.registerations = [];
|
|
7
|
+
}
|
|
8
|
+
register(filter) {
|
|
9
|
+
this.registerations.push(filter);
|
|
10
|
+
}
|
|
11
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: TableWrapperDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
12
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.1", type: TableWrapperDirective, selector: "[tbWrapper]", queries: [{ propertyName: "customFilters", predicate: TableCustomFilterDirective, descendants: true }, { propertyName: "filters", predicate: TableFilterDirective, descendants: true }], ngImport: i0 }); }
|
|
13
|
+
}
|
|
14
|
+
export { TableWrapperDirective };
|
|
15
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: TableWrapperDirective, decorators: [{
|
|
16
|
+
type: Directive,
|
|
17
|
+
args: [{
|
|
18
|
+
selector: '[tbWrapper]'
|
|
19
|
+
}]
|
|
20
|
+
}], propDecorators: { customFilters: [{
|
|
21
|
+
type: ContentChildren,
|
|
22
|
+
args: [TableCustomFilterDirective, { descendants: true }]
|
|
23
|
+
}], filters: [{
|
|
24
|
+
type: ContentChildren,
|
|
25
|
+
args: [TableFilterDirective, { descendants: true }]
|
|
26
|
+
}] } });
|
|
27
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtd3JhcHBlci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXV0aWxpdGllcy9zcmMvdGFibGUtYnVpbGRlci9kaXJlY3RpdmVzL3RhYmxlLXdyYXBwZXIuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQUUsU0FBUyxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBQ3RFLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDOztBQUV6RixNQUdhLHFCQUFxQjtJQUhsQztRQU9FLG1CQUFjLEdBQTRELEVBQUUsQ0FBQztLQUs5RTtJQUhDLFFBQVEsQ0FBQyxNQUF5RDtRQUNoRSxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNuQyxDQUFDOzhHQVJVLHFCQUFxQjtrR0FBckIscUJBQXFCLGlGQUNmLDBCQUEwQiw2REFDMUIsb0JBQW9COztTQUYxQixxQkFBcUI7MkZBQXJCLHFCQUFxQjtrQkFIakMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsYUFBYTtpQkFDeEI7OEJBRW1FLGFBQWE7c0JBQTlFLGVBQWU7dUJBQUMsMEJBQTBCLEVBQUUsRUFBQyxXQUFXLEVBQUUsSUFBSSxFQUFDO2dCQUNKLE9BQU87c0JBQWxFLGVBQWU7dUJBQUMsb0JBQW9CLEVBQUUsRUFBQyxXQUFXLEVBQUUsSUFBSSxFQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29udGVudENoaWxkcmVuLCBEaXJlY3RpdmUsIFF1ZXJ5TGlzdCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IFRhYmxlQ3VzdG9tRmlsdGVyRGlyZWN0aXZlLCBUYWJsZUZpbHRlckRpcmVjdGl2ZSB9IGZyb20gXCIuL3RiLWZpbHRlci5kaXJlY3RpdmVcIjtcclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiAnW3RiV3JhcHBlcl0nXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUYWJsZVdyYXBwZXJEaXJlY3RpdmUge1xyXG4gIEBDb250ZW50Q2hpbGRyZW4oVGFibGVDdXN0b21GaWx0ZXJEaXJlY3RpdmUsIHtkZXNjZW5kYW50czogdHJ1ZX0pIGN1c3RvbUZpbHRlcnMhOiBRdWVyeUxpc3Q8VGFibGVDdXN0b21GaWx0ZXJEaXJlY3RpdmU+O1xyXG4gIEBDb250ZW50Q2hpbGRyZW4oVGFibGVGaWx0ZXJEaXJlY3RpdmUsIHtkZXNjZW5kYW50czogdHJ1ZX0pIGZpbHRlcnMhOiBRdWVyeUxpc3Q8VGFibGVGaWx0ZXJEaXJlY3RpdmU+O1xyXG5cclxuICByZWdpc3RlcmF0aW9ucyA6IChUYWJsZUN1c3RvbUZpbHRlckRpcmVjdGl2ZSB8IFRhYmxlRmlsdGVyRGlyZWN0aXZlKSBbXSA9IFtdO1xyXG5cclxuICByZWdpc3RlcihmaWx0ZXI6IFRhYmxlQ3VzdG9tRmlsdGVyRGlyZWN0aXZlIHwgVGFibGVGaWx0ZXJEaXJlY3RpdmUpIHtcclxuICAgIHRoaXMucmVnaXN0ZXJhdGlvbnMucHVzaChmaWx0ZXIpO1xyXG4gIH1cclxufVxyXG4iXX0=
|