@one-paragon/angular-utilities 1.1.8 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/action-state/action-state-spinner/action-state-spinner.component.d.ts +12 -0
- package/action-state/action-state-ui/action-state-ui.module.d.ts +7 -0
- package/{src/action-state/index.ts → action-state/index.d.ts} +4 -8
- package/action-state/ngrx-ext/ngrx-ext.module.d.ts +8 -0
- package/action-state/ngrx.d.ts +31 -0
- 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 +20 -0
- package/esm2022/action-state/index.mjs +8 -0
- package/esm2022/action-state/ngrx-ext/ngrx-ext.module.mjs +23 -0
- package/esm2022/action-state/ngrx.mjs +42 -0
- package/esm2022/http-request-state/HttpRequestStateFactory.mjs +52 -0
- package/esm2022/http-request-state/HttpRequestStateStore.mjs +101 -0
- package/esm2022/http-request-state/directives/HttpStateDirectiveBase.mjs +34 -0
- package/esm2022/http-request-state/directives/http-error-state-directive.mjs +29 -0
- package/esm2022/http-request-state/directives/http-inProgress-state-directive.mjs +29 -0
- package/esm2022/http-request-state/directives/http-notStarted-state-directive.mjs +29 -0
- package/esm2022/http-request-state/directives/http-success-state-directive.mjs +34 -0
- package/esm2022/http-request-state/directives/index.mjs +6 -0
- package/esm2022/http-request-state/directives/request-state-directive.mjs +60 -0
- package/esm2022/http-request-state/helpers.mjs +22 -0
- package/esm2022/http-request-state/http-request-state.mjs +39 -0
- package/esm2022/http-request-state/http-state-module.mjs +40 -0
- package/esm2022/http-request-state/index.mjs +7 -0
- package/esm2022/http-request-state/rxjs/getRequestorBody.mjs +4 -0
- package/esm2022/http-request-state/rxjs/getRequestorState.mjs +3 -0
- package/esm2022/http-request-state/rxjs/index.mjs +5 -0
- package/esm2022/http-request-state/rxjs/tapError.mjs +12 -0
- package/esm2022/http-request-state/rxjs/tapSuccess.mjs +12 -0
- package/esm2022/http-request-state/types.mjs +16 -0
- package/esm2022/ngrx/actionable-selector.mjs +73 -0
- package/esm2022/ngrx/index.mjs +2 -0
- package/esm2022/one-paragon-angular-utilities.mjs +5 -0
- package/esm2022/public-api.mjs +20 -0
- package/esm2022/rxjs/defaultShareReplay.mjs +7 -0
- package/esm2022/rxjs/index.mjs +6 -0
- package/esm2022/rxjs/mapError.mjs +8 -0
- package/esm2022/rxjs/rxjs-operators.mjs +92 -0
- package/esm2022/rxjs/subjectifier.mjs +15 -0
- package/esm2022/rxjs/subscriber.directive.mjs +52 -0
- package/esm2022/table-builder/classes/DefaultSettings.mjs +6 -0
- package/esm2022/table-builder/classes/MatTableObservableDataSource.mjs +21 -0
- package/esm2022/table-builder/classes/TableBuilderConfig.mjs +18 -0
- package/esm2022/table-builder/classes/TableBuilderDataSource.mjs +50 -0
- package/esm2022/table-builder/classes/TableState.mjs +47 -0
- package/esm2022/table-builder/classes/display-col.mjs +2 -0
- package/esm2022/table-builder/classes/filter-info.mjs +73 -0
- package/esm2022/table-builder/classes/table-builder-general-settings.mjs +107 -0
- package/esm2022/table-builder/classes/table-builder.mjs +74 -0
- package/esm2022/table-builder/classes/table-store.mjs +357 -0
- package/esm2022/table-builder/components/array-column.component.mjs +57 -0
- package/esm2022/table-builder/components/column-builder/column-builder.component.mjs +125 -0
- package/esm2022/table-builder/components/column-builder/column-helpers.mjs +26 -0
- package/esm2022/table-builder/components/date-filter/date-filter.component.mjs +29 -0
- package/esm2022/table-builder/components/date-time-filter/date-time-filter.component.mjs +24 -0
- package/esm2022/table-builder/components/filter/filter.component.mjs +67 -0
- package/esm2022/table-builder/components/filter/in-list/in-list-filter.component.mjs +101 -0
- package/esm2022/table-builder/components/gen-col-displayer/gen-col-displayer.component.mjs +53 -0
- package/esm2022/table-builder/components/generic-table/generic-table.component.mjs +225 -0
- package/esm2022/table-builder/components/generic-table/paginator.component.mjs +94 -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 +100 -0
- package/esm2022/table-builder/components/in-filter/in-filter.component.mjs +64 -0
- package/esm2022/table-builder/components/index.mjs +10 -0
- package/esm2022/table-builder/components/initialization-component/initialization-component.mjs +40 -0
- package/esm2022/table-builder/components/link-column.component.mjs +78 -0
- package/esm2022/table-builder/components/number-filter/number-filter.component.mjs +29 -0
- package/esm2022/table-builder/components/profiles-menu/profiles-menu.component.mjs +66 -0
- package/esm2022/table-builder/components/scroll-strategy.mjs +68 -0
- package/esm2022/table-builder/components/sort-menu/sort-menu.component-store.mjs +44 -0
- package/esm2022/table-builder/components/sort-menu/sort-menu.component.mjs +81 -0
- package/esm2022/table-builder/components/table-container/table-container-imports.mjs +26 -0
- package/esm2022/table-builder/components/table-container/table-container.helpers/data-state.helpers.mjs +135 -0
- package/esm2022/table-builder/components/table-container/table-container.helpers/filter-state.helpers.mjs +83 -0
- package/esm2022/table-builder/components/table-container/table-container.helpers/groupBy.helpers.mjs +71 -0
- package/esm2022/table-builder/components/table-container/table-container.helpers/sort-state.helpers.mjs +36 -0
- package/esm2022/table-builder/components/table-container/table-container.mjs +287 -0
- package/esm2022/table-builder/components/table-container/tableProps.mjs +7 -0
- package/esm2022/table-builder/components/table-container/virtual-scroll-container.mjs +119 -0
- package/esm2022/table-builder/components/table-container-filter/filter-list/filter-list.component.mjs +47 -0
- package/esm2022/table-builder/components/table-container-filter/gen-filter-displayer/gen-filter-displayer.component.mjs +36 -0
- package/esm2022/table-builder/components/table-container-filter/table-wrapper-filter-store.mjs +25 -0
- package/esm2022/table-builder/directives/custom-cell-directive.mjs +70 -0
- package/esm2022/table-builder/directives/index.mjs +6 -0
- package/esm2022/table-builder/directives/multi-sort.directive.mjs +50 -0
- package/esm2022/table-builder/directives/resize-column.directive.mjs +88 -0
- package/esm2022/table-builder/directives/table-wrapper.directive.mjs +20 -0
- package/esm2022/table-builder/directives/tb-filter.directive.mjs +410 -0
- package/esm2022/table-builder/enums/filterTypes.mjs +72 -0
- package/esm2022/table-builder/functions/boolean-filter-function.mjs +10 -0
- package/esm2022/table-builder/functions/date-filter-function.mjs +58 -0
- package/esm2022/table-builder/functions/download-data.mjs +12 -0
- package/esm2022/table-builder/functions/null-filter-function.mjs +8 -0
- package/esm2022/table-builder/functions/number-filter-function.mjs +32 -0
- package/esm2022/table-builder/functions/sort-data-function.mjs +17 -0
- package/esm2022/table-builder/functions/string-filter-function.mjs +41 -0
- package/esm2022/table-builder/interfaces/ColumnInfo.mjs +2 -0
- package/esm2022/table-builder/interfaces/dictionary.mjs +2 -0
- package/esm2022/table-builder/interfaces/report-def.mjs +50 -0
- package/esm2022/table-builder/ngrx/tableBuilderStateStore.mjs +154 -0
- package/esm2022/table-builder/pipes/column-total.pipe.mjs +22 -0
- package/esm2022/table-builder/pipes/format-filter-type.pipe.mjs +18 -0
- package/esm2022/table-builder/pipes/format-filter-value.pipe.mjs +45 -0
- package/esm2022/table-builder/pipes/key-display.mjs +20 -0
- package/esm2022/table-builder/services/export-to-csv.service.mjs +91 -0
- package/esm2022/table-builder/services/link-creator.service.mjs +50 -0
- package/esm2022/table-builder/services/table-template-service.mjs +57 -0
- package/esm2022/table-builder/services/transform-creator.mjs +105 -0
- package/esm2022/table-builder/table-builder.module.mjs +124 -0
- package/esm2022/utilities/array-helpers.mjs +14 -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 +23 -0
- package/esm2022/utilities/directives/dialog.mjs +146 -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 +42 -0
- package/esm2022/utilities/directives/trim-whitespace.directive.mjs +30 -0
- package/esm2022/utilities/index.mjs +16 -0
- package/esm2022/utilities/module.mjs +90 -0
- package/esm2022/utilities/pipes/function.pipe.mjs +22 -0
- package/esm2022/utilities/pipes/phone.pipe.mjs +20 -0
- package/esm2022/utilities/pipes/space-case.pipes.mjs +28 -0
- package/fesm2022/one-paragon-angular-utilities.mjs +5564 -0
- package/fesm2022/one-paragon-angular-utilities.mjs.map +1 -0
- package/http-request-state/HttpRequestStateFactory.d.ts +17 -0
- package/http-request-state/HttpRequestStateStore.d.ts +49 -0
- package/http-request-state/directives/HttpStateDirectiveBase.d.ts +16 -0
- package/http-request-state/directives/http-error-state-directive.d.ts +12 -0
- package/http-request-state/directives/http-inProgress-state-directive.d.ts +12 -0
- package/http-request-state/directives/http-notStarted-state-directive.d.ts +12 -0
- package/http-request-state/directives/http-success-state-directive.d.ts +21 -0
- package/{src/http-request-state/directives/index.ts → http-request-state/directives/index.d.ts} +5 -5
- package/http-request-state/directives/request-state-directive.d.ts +35 -0
- package/http-request-state/helpers.d.ts +9 -0
- package/http-request-state/http-request-state.d.ts +12 -0
- package/http-request-state/http-state-module.d.ts +11 -0
- package/{src/http-request-state/index.ts → http-request-state/index.d.ts} +6 -6
- package/http-request-state/rxjs/getRequestorBody.d.ts +3 -0
- package/http-request-state/rxjs/getRequestorState.d.ts +3 -0
- package/{src/http-request-state/rxjs/index.ts → http-request-state/rxjs/index.d.ts} +4 -4
- package/http-request-state/rxjs/tapError.d.ts +3 -0
- package/http-request-state/rxjs/tapSuccess.d.ts +3 -0
- package/http-request-state/types.d.ts +41 -0
- package/index.d.ts +5 -0
- package/ngrx/actionable-selector.d.ts +17 -0
- package/ngrx/index.d.ts +1 -0
- package/package.json +30 -16
- package/{src/public-api.ts → public-api.d.ts} +16 -35
- package/rxjs/defaultShareReplay.d.ts +2 -0
- package/{src/rxjs/index.ts → rxjs/index.d.ts} +5 -5
- package/rxjs/mapError.d.ts +2 -0
- package/rxjs/rxjs-operators.d.ts +13 -0
- package/rxjs/subjectifier.d.ts +9 -0
- package/rxjs/subscriber.directive.d.ts +14 -0
- package/table-builder/classes/DefaultSettings.d.ts +9 -0
- package/table-builder/classes/MatTableObservableDataSource.d.ts +9 -0
- package/table-builder/classes/TableBuilderConfig.d.ts +21 -0
- package/table-builder/classes/TableBuilderDataSource.d.ts +14 -0
- package/table-builder/classes/TableState.d.ts +56 -0
- package/{src/table-builder/classes/display-col.ts → table-builder/classes/display-col.d.ts} +5 -5
- package/table-builder/classes/filter-info.d.ts +127 -0
- package/table-builder/classes/table-builder-general-settings.d.ts +72 -0
- package/table-builder/classes/table-builder.d.ts +18 -0
- package/table-builder/classes/table-store.d.ts +146 -0
- package/table-builder/components/array-column.component.d.ts +15 -0
- package/table-builder/components/column-builder/column-builder.component.d.ts +51 -0
- package/table-builder/components/column-builder/column-helpers.d.ts +28 -0
- package/table-builder/components/date-filter/date-filter.component.d.ts +10 -0
- package/table-builder/components/date-time-filter/date-time-filter.component.d.ts +10 -0
- package/table-builder/components/filter/filter.component.d.ts +112 -0
- package/table-builder/components/filter/in-list/in-list-filter.component.d.ts +27 -0
- package/table-builder/components/gen-col-displayer/gen-col-displayer.component.d.ts +16 -0
- package/table-builder/components/generic-table/generic-table.component.d.ts +68 -0
- package/table-builder/components/generic-table/paginator.component.d.ts +30 -0
- package/table-builder/components/group-by-list/group-by-list.component.d.ts +7 -0
- package/table-builder/components/header-menu/header-menu.component.d.ts +25 -0
- package/table-builder/components/in-filter/in-filter.component.d.ts +21 -0
- package/{src/table-builder/components/index.ts → table-builder/components/index.d.ts} +9 -9
- package/table-builder/components/initialization-component/initialization-component.d.ts +13 -0
- package/table-builder/components/link-column.component.d.ts +25 -0
- package/table-builder/components/number-filter/number-filter.component.d.ts +12 -0
- package/table-builder/components/profiles-menu/profiles-menu.component.d.ts +32 -0
- package/table-builder/components/scroll-strategy.d.ts +25 -0
- package/table-builder/components/sort-menu/sort-menu.component-store.d.ts +24 -0
- package/table-builder/components/sort-menu/sort-menu.component.d.ts +25 -0
- package/{src/table-builder/components/table-container/table-container-imports.ts → table-builder/components/table-container/table-container-imports.d.ts} +14 -32
- package/table-builder/components/table-container/table-container.d.ts +73 -0
- package/table-builder/components/table-container/table-container.helpers/data-state.helpers.d.ts +6 -0
- package/table-builder/components/table-container/table-container.helpers/filter-state.helpers.d.ts +17 -0
- package/table-builder/components/table-container/table-container.helpers/groupBy.helpers.d.ts +17 -0
- package/table-builder/components/table-container/table-container.helpers/sort-state.helpers.d.ts +8 -0
- package/table-builder/components/table-container/tableProps.d.ts +11 -0
- package/table-builder/components/table-container/virtual-scroll-container.d.ts +23 -0
- package/table-builder/components/table-container-filter/filter-list/filter-list.component.d.ts +16 -0
- package/table-builder/components/table-container-filter/gen-filter-displayer/gen-filter-displayer.component.d.ts +14 -0
- package/table-builder/components/table-container-filter/table-wrapper-filter-store.d.ts +14 -0
- package/table-builder/directives/custom-cell-directive.d.ts +31 -0
- package/{src/table-builder/directives/index.ts → table-builder/directives/index.d.ts} +5 -6
- package/table-builder/directives/multi-sort.directive.d.ts +11 -0
- package/table-builder/directives/resize-column.directive.d.ts +44 -0
- package/table-builder/directives/table-wrapper.directive.d.ts +8 -0
- package/table-builder/directives/tb-filter.directive.d.ts +120 -0
- package/table-builder/enums/filterTypes.d.ts +77 -0
- package/table-builder/functions/boolean-filter-function.d.ts +3 -0
- package/table-builder/functions/date-filter-function.d.ts +4 -0
- package/table-builder/functions/download-data.d.ts +1 -0
- package/table-builder/functions/null-filter-function.d.ts +2 -0
- package/table-builder/functions/number-filter-function.d.ts +4 -0
- package/table-builder/functions/sort-data-function.d.ts +6 -0
- package/table-builder/functions/string-filter-function.d.ts +7 -0
- package/{src/table-builder/interfaces/ColumnInfo.ts → table-builder/interfaces/ColumnInfo.d.ts} +6 -7
- package/{src/table-builder/interfaces/dictionary.ts → table-builder/interfaces/dictionary.d.ts} +3 -3
- package/table-builder/interfaces/report-def.d.ts +147 -0
- package/table-builder/ngrx/tableBuilderStateStore.d.ts +70 -0
- package/table-builder/pipes/column-total.pipe.d.ts +8 -0
- package/table-builder/pipes/format-filter-type.pipe.d.ts +8 -0
- package/table-builder/pipes/format-filter-value.pipe.d.ts +14 -0
- package/table-builder/pipes/key-display.d.ts +11 -0
- package/table-builder/services/export-to-csv.service.d.ts +22 -0
- package/table-builder/services/link-creator.service.d.ts +16 -0
- package/table-builder/services/table-template-service.d.ts +15 -0
- package/table-builder/services/transform-creator.d.ts +21 -0
- package/table-builder/table-builder.module.d.ts +21 -0
- package/utilities/array-helpers.d.ts +1 -0
- package/utilities/directives/auto-focus.directive.d.ts +10 -0
- package/utilities/directives/clickEmitterDirective.d.ts +7 -0
- package/utilities/directives/clickSubject.d.ts +9 -0
- package/utilities/directives/conditional-classes.directive.d.ts +14 -0
- package/utilities/directives/dialog-service.d.ts +10 -0
- package/utilities/directives/dialog.d.ts +47 -0
- package/utilities/directives/mat-toggle-group-directive.d.ts +21 -0
- package/utilities/directives/prevent-enter.directive.d.ts +6 -0
- package/utilities/directives/stop-propagation.directive.d.ts +7 -0
- package/utilities/directives/styler.d.ts +17 -0
- package/utilities/directives/trim-whitespace.directive.d.ts +9 -0
- package/{src/utilities/index.ts → utilities/index.d.ts} +15 -22
- package/utilities/module.d.ts +19 -0
- package/utilities/pipes/function.pipe.d.ts +7 -0
- package/utilities/pipes/phone.pipe.d.ts +7 -0
- package/utilities/pipes/space-case.pipes.d.ts +17 -0
- package/karma.conf.js +0 -44
- package/ng-package.json +0 -7
- package/src/action-state/action-state-spinner/action-state-spinner.component.css +0 -16
- package/src/action-state/action-state-spinner/action-state-spinner.component.html +0 -6
- package/src/action-state/action-state-spinner/action-state-spinner.component.spec.ts +0 -25
- package/src/action-state/action-state-spinner/action-state-spinner.component.ts +0 -26
- package/src/action-state/action-state-ui/action-state-ui.module.ts +0 -13
- package/src/action-state/ngrx-ext/ngrx-ext.module.ts +0 -15
- package/src/action-state/ngrx.ts +0 -69
- package/src/http-request-state/HttpRequestStateFactory.ts +0 -66
- package/src/http-request-state/HttpRequestStateStore.ts +0 -151
- package/src/http-request-state/directives/HttpStateDirectiveBase.ts +0 -38
- package/src/http-request-state/directives/http-error-state-directive.ts +0 -32
- package/src/http-request-state/directives/http-inProgress-state-directive.ts +0 -32
- package/src/http-request-state/directives/http-notStarted-state-directive.ts +0 -31
- package/src/http-request-state/directives/http-success-state-directive.ts +0 -40
- package/src/http-request-state/directives/request-state-directive.spec.ts +0 -72
- package/src/http-request-state/directives/request-state-directive.ts +0 -79
- package/src/http-request-state/helpers.ts +0 -30
- package/src/http-request-state/http-request-state.ts +0 -69
- package/src/http-request-state/http-state-module.ts +0 -23
- package/src/http-request-state/observable.spec.ts +0 -43
- package/src/http-request-state/rxjs/getRequestorBody.ts +0 -10
- package/src/http-request-state/rxjs/getRequestorState.ts +0 -8
- package/src/http-request-state/rxjs/tapError.ts +0 -16
- package/src/http-request-state/rxjs/tapSuccess.ts +0 -16
- package/src/http-request-state/strategies.spec.ts +0 -42
- package/src/http-request-state/types.ts +0 -56
- package/src/ngrx/actionable-selector.ts +0 -95
- package/src/ngrx/index.ts +0 -1
- package/src/rxjs/defaultShareReplay.ts +0 -8
- package/src/rxjs/mapError.ts +0 -8
- package/src/rxjs/rxjs-operators.ts +0 -132
- package/src/rxjs/subjectifier.ts +0 -15
- package/src/rxjs/subscriber.directive.ts +0 -57
- package/src/specs/clickSubject.spec.ts +0 -95
- package/src/specs/dialog.spec.ts +0 -101
- package/src/specs/toggleGroupDirective.spec.ts +0 -229
- package/src/table-builder/classes/DefaultSettings.ts +0 -11
- package/src/table-builder/classes/MatTableObservableDataSource.ts +0 -23
- package/src/table-builder/classes/TableBuilderConfig.ts +0 -35
- package/src/table-builder/classes/TableBuilderDataSource.ts +0 -57
- package/src/table-builder/classes/TableState.ts +0 -87
- package/src/table-builder/classes/filter-info.ts +0 -131
- package/src/table-builder/classes/table-builder-general-settings.ts +0 -115
- package/src/table-builder/classes/table-builder.ts +0 -94
- package/src/table-builder/classes/table-store.ts +0 -435
- package/src/table-builder/components/array-column.component.ts +0 -36
- package/src/table-builder/components/column-builder/column-builder.component.html +0 -61
- package/src/table-builder/components/column-builder/column-builder.component.scss +0 -43
- package/src/table-builder/components/column-builder/column-builder.component.spec.ts +0 -49
- package/src/table-builder/components/column-builder/column-builder.component.ts +0 -137
- package/src/table-builder/components/column-builder/column-helpers.ts +0 -36
- package/src/table-builder/components/date-filter/date-filter.component.html +0 -23
- package/src/table-builder/components/date-filter/date-filter.component.ts +0 -24
- package/src/table-builder/components/date-time-filter/date-time-filter.component.html +0 -9
- package/src/table-builder/components/date-time-filter/date-time-filter.component.ts +0 -22
- package/src/table-builder/components/filter/filter.component.html +0 -88
- package/src/table-builder/components/filter/filter.component.scss +0 -64
- package/src/table-builder/components/filter/filter.component.spec.ts +0 -87
- package/src/table-builder/components/filter/filter.component.ts +0 -55
- package/src/table-builder/components/filter/in-list/in-list-filter.component.ts +0 -92
- package/src/table-builder/components/gen-col-displayer/gen-col-displayer.component.html +0 -55
- package/src/table-builder/components/gen-col-displayer/gen-col-displayer.component.scss +0 -57
- package/src/table-builder/components/gen-col-displayer/gen-col-displayer.component.ts +0 -57
- package/src/table-builder/components/generic-table/generic-table.component.html +0 -71
- package/src/table-builder/components/generic-table/generic-table.component.scss +0 -51
- package/src/table-builder/components/generic-table/generic-table.component.ts +0 -264
- package/src/table-builder/components/generic-table/paginator.component.ts +0 -106
- package/src/table-builder/components/group-by-list/group-by-list.component.css +0 -8
- package/src/table-builder/components/group-by-list/group-by-list.component.html +0 -12
- package/src/table-builder/components/group-by-list/group-by-list.component.spec.ts +0 -23
- package/src/table-builder/components/group-by-list/group-by-list.component.ts +0 -21
- package/src/table-builder/components/header-menu/header-menu.component.html +0 -104
- package/src/table-builder/components/header-menu/header-menu.component.scss +0 -96
- package/src/table-builder/components/header-menu/header-menu.component.ts +0 -98
- package/src/table-builder/components/in-filter/in-filter.component.css +0 -3
- package/src/table-builder/components/in-filter/in-filter.component.html +0 -20
- package/src/table-builder/components/in-filter/in-filter.component.ts +0 -64
- package/src/table-builder/components/initialization-component/initialization-component.html +0 -29
- package/src/table-builder/components/initialization-component/initialization-component.ts +0 -24
- package/src/table-builder/components/link-column.component.ts +0 -47
- package/src/table-builder/components/number-filter/number-filter.component.css +0 -10
- package/src/table-builder/components/number-filter/number-filter.component.html +0 -19
- package/src/table-builder/components/number-filter/number-filter.component.spec.ts +0 -30
- package/src/table-builder/components/number-filter/number-filter.component.ts +0 -25
- package/src/table-builder/components/profiles-menu/profiles-menu.component.html +0 -74
- package/src/table-builder/components/profiles-menu/profiles-menu.component.scss +0 -98
- package/src/table-builder/components/profiles-menu/profiles-menu.component.spec.ts +0 -23
- package/src/table-builder/components/profiles-menu/profiles-menu.component.ts +0 -65
- package/src/table-builder/components/scroll-strategy.ts +0 -89
- package/src/table-builder/components/sort-menu/sort-menu.component-store.ts +0 -63
- package/src/table-builder/components/sort-menu/sort-menu.component.html +0 -111
- package/src/table-builder/components/sort-menu/sort-menu.component.scss +0 -119
- package/src/table-builder/components/sort-menu/sort-menu.component.ts +0 -95
- package/src/table-builder/components/table-container/table-container.css +0 -54
- package/src/table-builder/components/table-container/table-container.helpers/data-state.helpers.ts +0 -141
- package/src/table-builder/components/table-container/table-container.helpers/filter-state.helpers.ts +0 -106
- package/src/table-builder/components/table-container/table-container.helpers/groupBy.helpers.ts +0 -86
- package/src/table-builder/components/table-container/table-container.helpers/sort-state.helpers.ts +0 -45
- package/src/table-builder/components/table-container/table-container.html +0 -96
- package/src/table-builder/components/table-container/table-container.spec.ts +0 -154
- package/src/table-builder/components/table-container/table-container.ts +0 -319
- package/src/table-builder/components/table-container/tableProps.ts +0 -18
- package/src/table-builder/components/table-container/virtual-scroll-container.ts +0 -141
- package/src/table-builder/components/table-container-filter/filter-list/filter-list.component.html +0 -31
- package/src/table-builder/components/table-container-filter/filter-list/filter-list.component.ts +0 -52
- package/src/table-builder/components/table-container-filter/gen-filter-displayer/gen-filter-displayer.component.css +0 -42
- package/src/table-builder/components/table-container-filter/gen-filter-displayer/gen-filter-displayer.component.html +0 -10
- package/src/table-builder/components/table-container-filter/gen-filter-displayer/gen-filter-displayer.component.spec.ts +0 -86
- package/src/table-builder/components/table-container-filter/gen-filter-displayer/gen-filter-displayer.component.ts +0 -38
- package/src/table-builder/components/table-container-filter/table-wrapper-filter-store.ts +0 -23
- package/src/table-builder/directives/custom-cell-directive.ts +0 -58
- package/src/table-builder/directives/multi-sort.directive.spec.ts +0 -124
- package/src/table-builder/directives/multi-sort.directive.ts +0 -49
- package/src/table-builder/directives/resize-column.directive.ts +0 -105
- package/src/table-builder/directives/table-wrapper.directive.ts +0 -14
- package/src/table-builder/directives/tb-filter.directive.ts +0 -370
- package/src/table-builder/enums/filterTypes.ts +0 -79
- package/src/table-builder/functions/boolean-filter-function.ts +0 -13
- package/src/table-builder/functions/date-filter-function.ts +0 -69
- package/src/table-builder/functions/download-data.ts +0 -11
- package/src/table-builder/functions/null-filter-function.ts +0 -9
- package/src/table-builder/functions/number-filter-function.ts +0 -42
- package/src/table-builder/functions/sort-data-function.ts +0 -23
- package/src/table-builder/functions/string-filter-function.ts +0 -52
- package/src/table-builder/interfaces/column-template.ts +0 -9
- package/src/table-builder/interfaces/report-def.ts +0 -155
- package/src/table-builder/ngrx/tableBuilderStateStore.ts +0 -199
- package/src/table-builder/pipes/column-total.pipe.ts +0 -17
- package/src/table-builder/pipes/format-filter-type.pipe.ts +0 -12
- package/src/table-builder/pipes/format-filter-value.pipe.ts +0 -41
- package/src/table-builder/pipes/key-display.ts +0 -16
- package/src/table-builder/services/export-to-csv.service.ts +0 -98
- package/src/table-builder/services/link-creator.service.ts +0 -67
- package/src/table-builder/services/table-template-service.ts +0 -57
- package/src/table-builder/services/transform-creator.ts +0 -96
- package/src/table-builder/specs/table-custom-filters.spec.ts +0 -262
- package/src/table-builder/styles/collapser.styles.scss +0 -19
- package/src/table-builder/table-builder.module.ts +0 -73
- package/src/test.ts +0 -17
- package/src/utilities/array-helpers.ts +0 -13
- package/src/utilities/directives/auto-focus.directive.ts +0 -20
- package/src/utilities/directives/clickEmitterDirective.ts +0 -16
- package/src/utilities/directives/clickSubject.ts +0 -20
- package/src/utilities/directives/conditional-classes.directive.ts +0 -36
- package/src/utilities/directives/dialog-service.ts +0 -19
- package/src/utilities/directives/dialog.ts +0 -147
- package/src/utilities/directives/mat-toggle-group-directive.ts +0 -61
- package/src/utilities/directives/prevent-enter.directive.ts +0 -13
- package/src/utilities/directives/stop-propagation.directive.ts +0 -20
- package/src/utilities/directives/styler.ts +0 -39
- package/src/utilities/directives/trim-whitespace.directive.ts +0 -21
- package/src/utilities/module.ts +0 -55
- package/src/utilities/pipes/function.pipe.ts +0 -16
- package/src/utilities/pipes/phone.pipe.ts +0 -15
- package/src/utilities/pipes/space-case.pipes.spec.ts +0 -47
- package/src/utilities/pipes/space-case.pipes.ts +0 -23
- package/tsconfig.lib.json +0 -19
- package/tsconfig.lib.prod.json +0 -10
- package/tsconfig.spec.json +0 -17
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
import { Inject, Injectable } from '@angular/core';
|
|
2
|
+
import { first, map } from 'rxjs/operators';
|
|
3
|
+
import { combineLatest } from 'rxjs';
|
|
4
|
+
import { orderMetaData } from '../classes/table-store';
|
|
5
|
+
import { TableBuilderConfigToken } from '../classes/TableBuilderConfig';
|
|
6
|
+
import { downloadData } from '../functions/download-data';
|
|
7
|
+
import { ArrayStyle, FieldType } from '../interfaces/report-def';
|
|
8
|
+
import { isPipe } from './transform-creator';
|
|
9
|
+
import { get } from 'lodash';
|
|
10
|
+
import * as i0 from "@angular/core";
|
|
11
|
+
import * as i1 from "../classes/table-store";
|
|
12
|
+
import * as i2 from "@angular/common";
|
|
13
|
+
export class ExportToCsvService {
|
|
14
|
+
constructor(state, config, datePipe) {
|
|
15
|
+
this.state = state;
|
|
16
|
+
this.config = config;
|
|
17
|
+
this.datePipe = datePipe;
|
|
18
|
+
this.exportToCsv = (data) => {
|
|
19
|
+
const exportableFields$ = this.state.state$.pipe(map(mapExportableFields));
|
|
20
|
+
combineLatest([data, exportableFields$]).pipe(first(), map(([data, fields]) => this.csvData(data, fields))).subscribe(csv => downloadData(csv, 'export.csv', 'text/csv'));
|
|
21
|
+
};
|
|
22
|
+
this.csvData = (data, metaData) => {
|
|
23
|
+
const res = data.map(row => metaData.map(meta => this.metaToField(meta, row)).join(','));
|
|
24
|
+
res.unshift(metaData.map(meta => meta.displayName || meta.key).join(','));
|
|
25
|
+
return res.join('\n');
|
|
26
|
+
};
|
|
27
|
+
this.metaToField = (meta, row) => {
|
|
28
|
+
let val = get(row, meta.key);
|
|
29
|
+
if (val == null && !meta.transform)
|
|
30
|
+
return val;
|
|
31
|
+
if (meta.transform && meta.fieldType !== FieldType.Expression) {
|
|
32
|
+
const transform = meta.transform;
|
|
33
|
+
return isPipe(transform) ? transform.transform(val) : transform(val);
|
|
34
|
+
}
|
|
35
|
+
if (meta.map) {
|
|
36
|
+
return meta.map(row);
|
|
37
|
+
}
|
|
38
|
+
switch (meta.fieldType) {
|
|
39
|
+
case FieldType.Date:
|
|
40
|
+
const dateFormat = meta.additional?.export?.dateFormat || this.config?.export?.dateFormat || meta.additional?.dateFormat;
|
|
41
|
+
val = this.transform(val, dateFormat);
|
|
42
|
+
break;
|
|
43
|
+
case FieldType.DateTime:
|
|
44
|
+
const dateTimeFormat = meta.additional?.export?.dateTimeFormat || this.config?.export?.dateTimeFormat || meta.additional?.dateTimeOptions?.format;
|
|
45
|
+
val = this.transform(val, dateTimeFormat);
|
|
46
|
+
break;
|
|
47
|
+
case FieldType.String:
|
|
48
|
+
const prepend = meta.additional?.export?.prepend || this.config?.export?.prepend || '';
|
|
49
|
+
val = prepend + val;
|
|
50
|
+
break;
|
|
51
|
+
case FieldType.Array:
|
|
52
|
+
const additional = meta.additional;
|
|
53
|
+
val = val.slice(0, additional.limit).join(additional.arrayStyle === ArrayStyle.NewLine ? '\n' : ', ');
|
|
54
|
+
break;
|
|
55
|
+
case FieldType.Expression:
|
|
56
|
+
val = meta.transform(row);
|
|
57
|
+
break;
|
|
58
|
+
}
|
|
59
|
+
if (typeof val === 'string' && (val.includes(',') || val.includes('"') || val.includes('\n'))) {
|
|
60
|
+
val = val.replaceAll('"', '""');
|
|
61
|
+
val = '"' + val + '"';
|
|
62
|
+
}
|
|
63
|
+
return val;
|
|
64
|
+
};
|
|
65
|
+
}
|
|
66
|
+
transform(val, dateFormat) {
|
|
67
|
+
if (this.config.transformers && this.config.transformers[FieldType.Date]) {
|
|
68
|
+
return this.config.transformers[FieldType.Date](val);
|
|
69
|
+
}
|
|
70
|
+
return this.datePipe.transform(val, dateFormat);
|
|
71
|
+
}
|
|
72
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: ExportToCsvService, deps: [{ token: i1.TableStore }, { token: TableBuilderConfigToken }, { token: i2.DatePipe }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
73
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: ExportToCsvService }); }
|
|
74
|
+
}
|
|
75
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: ExportToCsvService, decorators: [{
|
|
76
|
+
type: Injectable
|
|
77
|
+
}], ctorParameters: () => [{ type: i1.TableStore }, { type: undefined, decorators: [{
|
|
78
|
+
type: Inject,
|
|
79
|
+
args: [TableBuilderConfigToken]
|
|
80
|
+
}] }, { type: i2.DatePipe }] });
|
|
81
|
+
export const removeFromMetaData = (state, keysToRemove) => orderMetaData(state)
|
|
82
|
+
.filter(meta => !keysToRemove.includes(meta.key));
|
|
83
|
+
export const nonExportableFields = (state) => Object.values(state.metaData)
|
|
84
|
+
.filter(md => md.noExport)
|
|
85
|
+
.map(md => md.key);
|
|
86
|
+
export const mapExportableFields = (state) => {
|
|
87
|
+
const fieldsToRemove = nonExportableFields(state)
|
|
88
|
+
.concat(state.hiddenKeys);
|
|
89
|
+
return removeFromMetaData(state, fieldsToRemove);
|
|
90
|
+
};
|
|
91
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwb3J0LXRvLWNzdi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci11dGlsaXRpZXMvc3JjL3RhYmxlLWJ1aWxkZXIvc2VydmljZXMvZXhwb3J0LXRvLWNzdi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRW5ELE9BQU8sRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFHLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLGFBQWEsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUNwQyxPQUFPLEVBQUUsYUFBYSxFQUFjLE1BQU0sd0JBQXdCLENBQUM7QUFDbkUsT0FBTyxFQUFzQix1QkFBdUIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQzVGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMxRCxPQUFPLEVBQW1CLFVBQVUsRUFBRSxTQUFTLEVBQVksTUFBTSwwQkFBMEIsQ0FBQztBQUU1RixPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDN0MsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLFFBQVEsQ0FBQzs7OztBQUc3QixNQUFNLE9BQU8sa0JBQWtCO0lBQzdCLFlBQ1MsS0FBaUIsRUFDaUIsTUFBMEIsRUFDM0QsUUFBa0I7UUFGbkIsVUFBSyxHQUFMLEtBQUssQ0FBWTtRQUNpQixXQUFNLEdBQU4sTUFBTSxDQUFvQjtRQUMzRCxhQUFRLEdBQVIsUUFBUSxDQUFVO1FBRzVCLGdCQUFXLEdBQUcsQ0FBQyxJQUFxQixFQUFFLEVBQUU7WUFDdEMsTUFBTSxpQkFBaUIsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQzlDLEdBQUcsQ0FBQyxtQkFBbUIsQ0FBQyxDQUN6QixDQUFDO1lBRUYsYUFBYSxD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c0NvbnRlbnQiOlsiaW1wb3J0IHsgRGF0ZVBpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBmaXJzdCwgbWFwICB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgY29tYmluZUxhdGVzdH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IG9yZGVyTWV0YURhdGEsIFRhYmxlU3RvcmUgfSBmcm9tICcuLi9jbGFzc2VzL3RhYmxlLXN0b3JlJztcclxuaW1wb3J0IHsgVGFibGVCdWlsZGVyQ29uZmlnLCBUYWJsZUJ1aWxkZXJDb25maWdUb2tlbiB9IGZyb20gJy4uL2NsYXNzZXMvVGFibGVCdWlsZGVyQ29uZmlnJztcclxuaW1wb3J0IHsgZG93bmxvYWREYXRhIH0gZnJvbSAnLi4vZnVuY3Rpb25zL2Rvd25sb2FkLWRhdGEnO1xyXG5pbXBvcnQgeyBBcnJheUFkZGl0aW9uYWwsIEFycmF5U3R5bGUsIEZpZWxkVHlwZSwgTWV0YURhdGEgfSBmcm9tICcuLi9pbnRlcmZhY2VzL3JlcG9ydC1kZWYnO1xyXG5pbXBvcnQgeyBUYWJsZVN0YXRlIH0gZnJvbSAnLi4vY2xhc3Nlcy9UYWJsZVN0YXRlJztcclxuaW1wb3J0IHsgaXNQaXBlIH0gZnJvbSAnLi90cmFuc2Zvcm0tY3JlYXRvcic7XHJcbmltcG9ydCB7IGdldCB9IGZyb20gJ2xvZGFzaCc7XHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBFeHBvcnRUb0NzdlNlcnZpY2U8VD4ge1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHVibGljIHN0YXRlOiBUYWJsZVN0b3JlLFxyXG4gICAgQEluamVjdChUYWJsZUJ1aWxkZXJDb25maWdUb2tlbikgcHJpdmF0ZSBjb25maWc6IFRhYmxlQnVpbGRlckNvbmZpZyxcclxuICAgIHByaXZhdGUgZGF0ZVBpcGU6IERhdGVQaXBlLFxyXG4gICl7fVxyXG5cclxuICBleHBvcnRUb0NzdiA9IChkYXRhOiBPYnNlcnZhYmxlPFRbXT4pID0+IHtcclxuICAgIGNvbnN0IGV4cG9ydGFibGVGaWVsZHMkID0gdGhpcy5zdGF0ZS5zdGF0ZSQucGlwZShcclxuICAgICAgbWFwKG1hcEV4cG9ydGFibGVGaWVsZHMpXHJcbiAgICApO1xyXG5cclxuICAgIGNvbWJpbmVMYXRlc3QoW2RhdGEsZXhwb3J0YWJsZUZpZWxkcyRdKS5waXBlKFxyXG4gICAgICBmaXJzdCgpLFxyXG4gICAgICBtYXAoKFtkYXRhLGZpZWxkc10pID0+IHRoaXMuY3N2RGF0YShkYXRhLGZpZWxkcykpLFxyXG4gICAgKS5zdWJzY3JpYmUoY3N2ID0+IGRvd25sb2FkRGF0YShjc3YsJ2V4cG9ydC5jc3YnLCd0ZXh0L2NzdicpICk7XHJcbiAgfVxyXG5cclxuICBjc3ZEYXRhID0gKGRhdGE6QXJyYXk8VD4sIG1ldGFEYXRhOiBNZXRhRGF0YTxUPltdKSA9PiB7XHJcbiAgICBjb25zdCByZXMgPSBkYXRhLm1hcChyb3cgPT4gbWV0YURhdGEubWFwKG1ldGEgPT4gdGhpcy5tZXRhVG9GaWVsZChtZXRhLCByb3cpKS5qb2luKCcsJykpO1xyXG4gICAgcmVzLnVuc2hpZnQobWV0YURhdGEubWFwKG1ldGEgPT4gbWV0YS5kaXNwbGF5TmFtZSB8fCBtZXRhLmtleSkuam9pbignLCcpKTtcclxuICAgIHJldHVybiByZXMuam9pbignXFxuJyk7XHJcbiAgfVxyXG5cclxuICBtZXRhVG9GaWVsZCA9IChtZXRhOiBNZXRhRGF0YTxUPiwgcm93OiBUKSA9PiB7XHJcbiAgICBsZXQgdmFsOiBhbnkgPSBnZXQoIHJvdyxtZXRhLmtleSk7XHJcbiAgICBpZiAodmFsID09IG51bGwgJiYgIW1ldGEudHJhbnNmb3JtKSByZXR1cm4gdmFsXHJcbiAgICBpZihtZXRhLnRyYW5zZm9ybSAmJiBtZXRhLmZpZWxkVHlwZSAhPT0gRmllbGRUeXBlLkV4cHJlc3Npb24pe1xyXG4gICAgICBjb25zdCB0cmFuc2Zvcm0gPSBtZXRhLnRyYW5zZm9ybSBhcyBhbnk7XHJcbiAgICAgIHJldHVybiAgaXNQaXBlKHRyYW5zZm9ybSkgPyB0cmFuc2Zvcm0udHJhbnNmb3JtKHZhbCkgOiB0cmFuc2Zvcm0odmFsKTtcclxuICAgIH1cclxuICAgIGlmKG1ldGEubWFwKXtcclxuICAgICAgcmV0dXJuIG1ldGEubWFwKHJvdyk7XHJcbiAgICB9XHJcbiAgICBzd2l0Y2ggKG1ldGEuZmllbGRUeXBlKSB7XHJcbiAgICAgIGNhc2UgRmllbGRUeXBlLkRhdGU6XHJcbiAgICAgICAgY29uc3QgZGF0ZUZvcm1hdCA9IG1ldGEuYWRkaXRpb25hbD8uZXhwb3J0Py5kYXRlRm9ybWF0IHx8IHRoaXMuY29uZmlnPy5leHBvcnQ/LmRhdGVGb3JtYXQgfHwgbWV0YS5hZGRpdGlvbmFsPy5kYXRlRm9ybWF0O1xyXG4gICAgICAgIHZhbCA9IHRoaXMudHJhbnNmb3JtKHZhbCwgZGF0ZUZvcm1hdCk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgRmllbGRUeXBlLkRhdGVUaW1lOlxyXG4gICAgICAgIGNvbnN0IGRhdGVUaW1lRm9ybWF0ID0gbWV0YS5hZGRpdGlvbmFsPy5leHBvcnQ/LmRhdGVUaW1lRm9ybWF0IHx8IHRoaXMuY29uZmlnPy5leHBvcnQ/LmRhdGVUaW1lRm9ybWF0IHx8IG1ldGEuYWRkaXRpb25hbD8uZGF0ZVRpbWVPcHRpb25zPy5mb3JtYXQ7XHJcbiAgICAgICAgdmFsID0gdGhpcy50cmFuc2Zvcm0odmFsLCBkYXRlVGltZUZvcm1hdCk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgRmllbGRUeXBlLlN0cmluZzpcclxuICAgICAgICBjb25zdCBwcmVwZW5kOiBzdHJpbmcgPSBtZXRhLmFkZGl0aW9uYWw/LmV4cG9ydD8ucHJlcGVuZCB8fCB0aGlzLmNvbmZpZz8uZXhwb3J0Py5wcmVwZW5kIHx8ICcnO1xyXG4gICAgICAgIHZhbCA9IHByZXBlbmQgKyB2YWw7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgRmllbGRUeXBlLkFycmF5OlxyXG4gICAgICAgIGNvbnN0IGFkZGl0aW9uYWwgPSBtZXRhLmFkZGl0aW9uYWwgYXMgQXJyYXlBZGRpdGlvbmFsO1xyXG4gICAgICAgIHZhbCA9ICh2YWwgYXMgQXJyYXk8c3RyaW5nPikuc2xpY2UoMCxhZGRpdGlvbmFsLmxpbWl0KS5qb2luKGFkZGl0aW9uYWwuYXJyYXlTdHlsZSA9PT0gQXJyYXlTdHlsZS5OZXdMaW5lID8gJ1xcbicgOiAnLCAnKTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSBGaWVsZFR5cGUuRXhwcmVzc2lvbjpcclxuICAgICAgICB2YWwgPSAobWV0YS50cmFuc2Zvcm0gYXMgYW55KShyb3cpO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgfVxyXG4gICAgaWYgKHR5cGVvZiB2YWwgPT09ICdzdHJpbmcnICYmICh2YWwuaW5jbHVkZXMoJywnKSB8fCB2YWwuaW5jbHVkZXMoJ1wiJykgfHwgdmFsLmluY2x1ZGVzKCdcXG4nKSkpIHtcclxuICAgICAgdmFsID0gdmFsLnJlcGxhY2VBbGwoJ1wiJywgJ1wiXCInKTtcclxuICAgICAgdmFsID0gJ1wiJyArIHZhbCArICdcIic7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdmFsO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSB0cmFuc2Zvcm0odmFsOiBhbnksIGRhdGVGb3JtYXQ6IGFueSkge1xyXG4gICAgaWYgKHRoaXMuY29uZmlnLnRyYW5zZm9ybWVycyAmJiB0aGlzLmNvbmZpZy50cmFuc2Zvcm1lcnNbRmllbGRUeXBlLkRhdGVdKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLmNvbmZpZy50cmFuc2Zvcm1lcnNbRmllbGRUeXBlLkRhdGVdISh2YWwpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHRoaXMuZGF0ZVBpcGUudHJhbnNmb3JtKHZhbCwgZGF0ZUZvcm1hdCk7XHJcbiAgfVxyXG59XHJcblxyXG5leHBvcnQgY29uc3QgcmVtb3ZlRnJvbU1ldGFEYXRhID0gKHN0YXRlOiBUYWJsZVN0YXRlLCBrZXlzVG9SZW1vdmU6IHN0cmluZ1tdKSA9PlxyXG4gICAgb3JkZXJNZXRhRGF0YShzdGF0ZSlcclxuICAuZmlsdGVyKCBtZXRhID0+ICFrZXlzVG9SZW1vdmUuaW5jbHVkZXMobWV0YS5rZXkpKTtcclxuXHJcblxyXG5leHBvcnQgY29uc3Qgbm9uRXhwb3J0YWJsZUZpZWxkcyA9IChzdGF0ZTogVGFibGVTdGF0ZSkgPT4gT2JqZWN0LnZhbHVlcyggc3RhdGUubWV0YURhdGEpXHJcbiAgLmZpbHRlcihtZCA9PiBtZC5ub0V4cG9ydCApXHJcbiAgLm1hcCggbWQgPT4gbWQua2V5ICk7XHJcblxyXG5leHBvcnQgY29uc3QgbWFwRXhwb3J0YWJsZUZpZWxkcyA9IChzdGF0ZTogVGFibGVTdGF0ZSkgPT4ge1xyXG4gIGNvbnN0IGZpZWxkc1RvUmVtb3ZlID0gbm9uRXhwb3J0YWJsZUZpZWxkcyhzdGF0ZSlcclxuICAgIC5jb25jYXQoc3RhdGUuaGlkZGVuS2V5cyk7XHJcbiAgIHJldHVybiByZW1vdmVGcm9tTWV0YURhdGEoc3RhdGUsIGZpZWxkc1RvUmVtb3ZlKTtcclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { get } from "lodash";
|
|
2
|
+
import { FieldType } from "../interfaces/report-def";
|
|
3
|
+
export function createLinkCreatorDict(metaDatas) {
|
|
4
|
+
return metaDatas.reduce((acc, md) => {
|
|
5
|
+
if (md.fieldType === FieldType.Link) {
|
|
6
|
+
acc[md.key] = createLinkCreator(md);
|
|
7
|
+
}
|
|
8
|
+
return acc;
|
|
9
|
+
}, {});
|
|
10
|
+
}
|
|
11
|
+
export function createLinkCreator(metaData) {
|
|
12
|
+
const target = metaData.additional?.link?.target || '_blank';
|
|
13
|
+
const useRouterLink = metaData.additional?.link?.useRouterLink || false;
|
|
14
|
+
const hasRoute = !!metaData.additional?.link?.interpolatedRoute;
|
|
15
|
+
const routerLinkOptions = useRouterLink ? {
|
|
16
|
+
queryParams: (element) => metaData.additional.link.routerLinkOptions?.queryParams?.reduce((map, [key, value]) => {
|
|
17
|
+
map[key] = parseInterpolated(value, element);
|
|
18
|
+
return map;
|
|
19
|
+
}, {}) ?? null,
|
|
20
|
+
fragment: metaData.additional.link?.routerLinkOptions?.fragment,
|
|
21
|
+
preserveFragment: metaData.additional.link.routerLinkOptions?.preserveFragment ?? false,
|
|
22
|
+
queryParamsHandling: metaData.additional.link.routerLinkOptions?.queryParamsHandling ?? '',
|
|
23
|
+
}
|
|
24
|
+
: undefined;
|
|
25
|
+
if (hasRoute) {
|
|
26
|
+
return ({
|
|
27
|
+
link: (element) => parseInterpolated(metaData.additional.link.interpolatedRoute, element),
|
|
28
|
+
target,
|
|
29
|
+
useRouterLink,
|
|
30
|
+
routerLinkOptions,
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
else {
|
|
34
|
+
const slashIfNeeded = !metaData.additional?.link?.base?.endsWith('/') ? '/' : '';
|
|
35
|
+
const base = metaData.additional.link?.base;
|
|
36
|
+
const getKey = key(metaData);
|
|
37
|
+
return ({
|
|
38
|
+
link: (element) => `${base}${slashIfNeeded}${getKey(element)}`,
|
|
39
|
+
target,
|
|
40
|
+
useRouterLink,
|
|
41
|
+
routerLinkOptions,
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
const key = (metaData) => metaData.additional.link?.urlKey ?
|
|
46
|
+
(element) => get(element, metaData.additional.link.urlKey)
|
|
47
|
+
:
|
|
48
|
+
(element) => get(element, metaData.key);
|
|
49
|
+
const parseInterpolated = (interpolatedString, element) => interpolatedString.replace(/{([^}]+)}/g, (_, key) => get(element, key));
|
|
50
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluay1jcmVhdG9yLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXV0aWxpdGllcy9zcmMvdGFibGUtYnVpbGRlci9zZXJ2aWNlcy9saW5rLWNyZWF0b3Iuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBQzdCLE9BQU8sRUFBRSxTQUFTLEVBQVksTUFBTSwwQkFBMEIsQ0FBQztBQUkvRCxNQUFNLFVBQVUscUJBQXFCLENBQUksU0FBd0I7SUFDL0QsT0FBTyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsRUFBRSxFQUFFO1FBQ2xDLElBQUcsRUFBRSxDQUFDLFNBQVMsS0FBSyxTQUFTLENBQUMsSUFBSSxFQUFDLENBQUM7WUFBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxHQUFFLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxDQUFBO1FBQUEsQ0FBQztRQUN4RSxPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUMsRUFBQyxFQUEwQixDQUFDLENBQUE7QUFDL0IsQ0FBQztBQUVELE1BQU0sVUFBVSxpQkFBaUIsQ0FBSSxRQUFxQjtJQUN4RCxNQUFNLE1BQU0sR0FBRyxRQUFRLENBQUMsVUFBVSxFQUFFLElBQUksRUFBRSxNQUFNLElBQUksUUFBUSxDQUFDO0lBQzdELE1BQU0sYUFBYSxHQUFHLFFBQVEsQ0FBQyxVQUFVLEVBQUUsSUFBSSxFQUFFLGFBQWEsSUFBSSxLQUFLLENBQUM7SUFDeEUsTUFBTSxRQUFRLEdBQUcsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxVQUFVLEVBQUUsSUFBSSxFQUFFLGlCQUFpQixDQUFDO0lBQ2hFLE1BQU0saUJBQWlCLEdBQUcsYUFBYSxDQUFDLENBQUMsQ0FBQztRQUN4QyxXQUFXLEVBQUUsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxVQUFXLENBQUMsSUFBSyxDQUFDLGlCQUFpQixFQUFFLFdBQVcsRUFBRSxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLEVBQUUsRUFBRTtZQUNoSCxHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsaUJBQWlCLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1lBQzdDLE9BQU8sR0FBRyxDQUFDO1FBQ2IsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLElBQUk7UUFDZCxRQUFRLEVBQUUsUUFBUSxDQUFDLFVBQVcsQ0FBQyxJQUFJLEVBQUUsaUJBQWlCLEVBQUUsUUFBUTtRQUNoRSxnQkFBZ0IsRUFBRSxRQUFRLENBQUMsVUFBVyxDQUFDLElBQUssQ0FBQyxpQkFBaUIsRUFBRSxnQkFBZ0IsSUFBSSxLQUFLO1FBQ3pGLG1CQUFtQixFQUFFLFFBQVEsQ0FBQyxVQUFXLENBQUMsSUFBSyxDQUFDLGlCQUFpQixFQUFFLG1CQUFtQixJQUFJLEVBQUU7S0FDN0Y7UUFDRCxDQUFDLENBQUMsU0FBUyxDQUFDO0lBR1osSUFBSSxRQUFRLEVBQUUsQ0FBQztRQUNiLE9BQU8sQ0FBQztZQUNOLElBQUksRUFBRSxDQUFDLE9BQVUsRUFBRSxFQUFFLENBQUMsaUJBQWlCLENBQUMsUUFBUSxDQUFDLFVBQVcsQ0FBQyxJQUFLLENBQUMsaUJBQWtCLEVBQUUsT0FBTyxDQUFDO1lBQy9GLE1BQU07WUFDTixhQUFhO1lBQ2IsaUJBQWlCO1NBQ2xCLENBQUMsQ0FBQztJQUNMLENBQUM7U0FBTSxDQUFDO1FBQ04sTUFBTSxhQUFhLEdBQUcsQ0FBQyxRQUFRLENBQUMsVUFBVSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUNqRixNQUFNLElBQUksR0FBRyxRQUFRLENBQUMsVUFBVyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUM7UUFDN0MsTUFBTSxNQUFNLEdBQUcsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzdCLE9BQU8sQ0FBQztZQUNOLElBQUksRUFBRSxDQUFDLE9BQVUsRUFBRSxFQUFFLENBQUMsR0FBRyxJQUFJLEdBQUcsYUFBYSxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUNqRSxNQUFNO1lBQ04sYUFBYTtZQUNiLGlCQUFpQjtTQUNsQixDQUFDLENBQUM7SUFDTCxDQUFDO0FBQ0gsQ0FBQztBQUVELE1BQU0sR0FBRyxHQUFHLENBQUMsUUFBbUIsRUFBRSxFQUFFLENBQUMsUUFBUSxDQUFDLFVBQVcsQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDdEUsQ0FBQyxPQUFXLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxPQUFPLEVBQUcsUUFBUSxDQUFDLFVBQVcsQ0FBQyxJQUFLLENBQUMsTUFBaUIsQ0FBQztJQUM1RSxDQUFDO1FBQ0QsQ0FBQyxPQUFXLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxPQUFPLEVBQUUsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0FBRTlDLE1BQU0saUJBQWlCLEdBQUcsQ0FBRSxrQkFBMEIsRUFBRSxPQUFZLEVBQUcsRUFBRSxDQUN2RSxrQkFBa0IsQ0FBQyxPQUFPLENBQUMsWUFBWSxFQUFFLENBQUMsQ0FBQyxFQUFFLEdBQUcsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLE9BQU8sRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZ2V0IH0gZnJvbSBcImxvZGFzaFwiO1xyXG5pbXBvcnQgeyBGaWVsZFR5cGUsIE1ldGFEYXRhIH0gZnJvbSBcIi4uL2ludGVyZmFjZXMvcmVwb3J0LWRlZlwiO1xyXG5pbXBvcnQgeyBEaWN0aW9uYXJ5IH0gZnJvbSBcIkBuZ3J4L2VudGl0eVwiO1xyXG5pbXBvcnQgeyBRdWVyeVBhcmFtc0hhbmRsaW5nIH0gZnJvbSBcIkBhbmd1bGFyL3JvdXRlclwiO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZUxpbmtDcmVhdG9yRGljdDxUPihtZXRhRGF0YXM6IE1ldGFEYXRhPFQ+W10pe1xyXG4gIHJldHVybiBtZXRhRGF0YXMucmVkdWNlKChhY2MsIG1kKSA9PiB7XHJcbiAgICBpZihtZC5maWVsZFR5cGUgPT09IEZpZWxkVHlwZS5MaW5rKXsgYWNjW21kLmtleV09IGNyZWF0ZUxpbmtDcmVhdG9yKG1kKX1cclxuICAgIHJldHVybiBhY2M7XHJcbiAgfSx7fSBhcyBEaWN0aW9uYXJ5PExpbmtJbmZvPilcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZUxpbmtDcmVhdG9yPFQ+KG1ldGFEYXRhOiBNZXRhRGF0YTxUPik6IExpbmtJbmZve1xyXG4gIGNvbnN0IHRhcmdldCA9IG1ldGFEYXRhLmFkZGl0aW9uYWw/Lmxpbms/LnRhcmdldCB8fCAnX2JsYW5rJztcclxuICBjb25zdCB1c2VSb3V0ZXJMaW5rID0gbWV0YURhdGEuYWRkaXRpb25hbD8ubGluaz8udXNlUm91dGVyTGluayB8fCBmYWxzZTtcclxuICBjb25zdCBoYXNSb3V0ZSA9ICEhbWV0YURhdGEuYWRkaXRpb25hbD8ubGluaz8uaW50ZXJwb2xhdGVkUm91dGU7XHJcbiAgY29uc3Qgcm91dGVyTGlua09wdGlvbnMgPSB1c2VSb3V0ZXJMaW5rID8ge1xyXG4gICAgcXVlcnlQYXJhbXM6IChlbGVtZW50KSA9PiBtZXRhRGF0YS5hZGRpdGlvbmFsIS5saW5rIS5yb3V0ZXJMaW5rT3B0aW9ucz8ucXVlcnlQYXJhbXM/LnJlZHVjZSgobWFwLCBba2V5LCB2YWx1ZV0pID0+IHtcclxuICAgICAgbWFwW2tleV0gPSBwYXJzZUludGVycG9sYXRlZCh2YWx1ZSwgZWxlbWVudCk7XHJcbiAgICAgIHJldHVybiBtYXA7XHJcbiAgICB9LCB7fSkgPz8gbnVsbCxcclxuICAgIGZyYWdtZW50OiBtZXRhRGF0YS5hZGRpdGlvbmFsIS5saW5rPy5yb3V0ZXJMaW5rT3B0aW9ucz8uZnJhZ21lbnQsXHJcbiAgICBwcmVzZXJ2ZUZyYWdtZW50OiBtZXRhRGF0YS5hZGRpdGlvbmFsIS5saW5rIS5yb3V0ZXJMaW5rT3B0aW9ucz8ucHJlc2VydmVGcmFnbWVudCA/PyBmYWxzZSxcclxuICAgIHF1ZXJ5UGFyYW1zSGFuZGxpbmc6IG1ldGFEYXRhLmFkZGl0aW9uYWwhLmxpbmshLnJvdXRlckxpbmtPcHRpb25zPy5xdWVyeVBhcmFtc0hhbmRsaW5nID8/ICcnLFxyXG4gIH1cclxuICA6IHVuZGVmaW5lZDtcclxuXHJcblxyXG4gIGlmIChoYXNSb3V0ZSkge1xyXG4gICAgcmV0dXJuICh7XHJcbiAgICAgIGxpbms6IChlbGVtZW50OiBUKSA9PiBwYXJzZUludGVycG9sYXRlZChtZXRhRGF0YS5hZGRpdGlvbmFsIS5saW5rIS5pbnRlcnBvbGF0ZWRSb3V0ZSEsIGVsZW1lbnQpLFxyXG4gICAgICB0YXJnZXQsXHJcbiAgICAgIHVzZVJvdXRlckxpbmssXHJcbiAgICAgIHJvdXRlckxpbmtPcHRpb25zLFxyXG4gICAgfSk7XHJcbiAgfSBlbHNlIHtcclxuICAgIGNvbnN0IHNsYXNoSWZOZWVkZWQgPSAhbWV0YURhdGEuYWRkaXRpb25hbD8ubGluaz8uYmFzZT8uZW5kc1dpdGgoJy8nKSA/ICcvJyA6ICcnO1xyXG4gICAgY29uc3QgYmFzZSA9IG1ldGFEYXRhLmFkZGl0aW9uYWwhLmxpbms/LmJhc2U7XHJcbiAgICBjb25zdCBnZXRLZXkgPSBrZXkobWV0YURhdGEpO1xyXG4gICAgcmV0dXJuICh7XHJcbiAgICAgIGxpbms6IChlbGVtZW50OiBUKSA9PiBgJHtiYXNlfSR7c2xhc2hJZk5lZWRlZH0ke2dldEtleShlbGVtZW50KX1gLFxyXG4gICAgICB0YXJnZXQsXHJcbiAgICAgIHVzZVJvdXRlckxpbmssXHJcbiAgICAgIHJvdXRlckxpbmtPcHRpb25zLFxyXG4gICAgfSk7XHJcbiAgfVxyXG59XHJcblxyXG5jb25zdCBrZXkgPSAobWV0YURhdGEgOiBNZXRhRGF0YSkgPT4gbWV0YURhdGEuYWRkaXRpb25hbCEubGluaz8udXJsS2V5ID8gXHJcbiAgKGVsZW1lbnQ6YW55KSA9PiBnZXQoZWxlbWVudCwgKG1ldGFEYXRhLmFkZGl0aW9uYWwhLmxpbmshLnVybEtleSBhcyBzdHJpbmcpKVxyXG4gIDpcclxuICAoZWxlbWVudDphbnkpID0+IGdldChlbGVtZW50LCBtZXRhRGF0YS5rZXkpO1xyXG5cclxuY29uc3QgcGFyc2VJbnRlcnBvbGF0ZWQgPSAoIGludGVycG9sYXRlZFN0cmluZzogc3RyaW5nLCBlbGVtZW50OiBhbnkgKSA9PlxyXG4gIGludGVycG9sYXRlZFN0cmluZy5yZXBsYWNlKC97KFtefV0rKX0vZywgKF8sIGtleSkgPT4gZ2V0KGVsZW1lbnQgLGtleSkpO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBMaW5rSW5mbyB7XHJcbiAgbGluazogKGVsZW1lbnQ6IGFueSkgPT4gc3RyaW5nO1xyXG4gIHRhcmdldDogc3RyaW5nO1xyXG4gIHVzZVJvdXRlckxpbms6IGJvb2xlYW47XHJcbiAgcm91dGVyTGlua09wdGlvbnM/OiB7XHJcbiAgICBxdWVyeVBhcmFtczogKGVsZW1lbnQ6IGFueSkgPT4gYW55O1xyXG4gICAgZnJhZ21lbnQ/OiBzdHJpbmc7XHJcbiAgICBwcmVzZXJ2ZUZyYWdtZW50PzogYm9vbGVhbjtcclxuICAgIHF1ZXJ5UGFyYW1zSGFuZGxpbmc/OiBRdWVyeVBhcmFtc0hhbmRsaW5nO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { createComponent, inject } from "@angular/core";
|
|
2
|
+
import { Injectable } from "@angular/core";
|
|
3
|
+
import { ArrayStyle, FieldType } from "../interfaces/report-def";
|
|
4
|
+
import { InitializationComponent } from "../components/initialization-component/initialization-component";
|
|
5
|
+
import { TableBuilderConfigToken } from "../classes/TableBuilderConfig";
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
export class TableTemplateService {
|
|
8
|
+
initTemplates() {
|
|
9
|
+
this.templates = {};
|
|
10
|
+
this.templates[FieldType.Array] = this.instance.arrayNewLineTemplate;
|
|
11
|
+
this.templates[FieldType.Array + .5] = this.instance.arrayCommaTemplate;
|
|
12
|
+
this.templates[FieldType.Boolean] = this.instance.defaultWithIcon;
|
|
13
|
+
this.templates[FieldType.Currency] = this.instance.defaultTemplate;
|
|
14
|
+
this.templates[FieldType.Date] = this.instance.defaultTemplate;
|
|
15
|
+
this.templates[FieldType.DateTime] = this.instance.defaultTemplate;
|
|
16
|
+
this.templates[FieldType.Expression] = this.instance.defaultTemplate;
|
|
17
|
+
this.templates[FieldType.NotMapped] = this.instance.defaultTemplate;
|
|
18
|
+
this.templates[FieldType.ImageUrl] = this.instance.imageUrlTemplate;
|
|
19
|
+
this.templates[FieldType.Link] = this.instance.linkTemplate;
|
|
20
|
+
this.templates[FieldType.Link + .5] = this.instance.routerLinkTemplate;
|
|
21
|
+
this.templates[FieldType.Number] = this.instance.defaultTemplate;
|
|
22
|
+
this.templates[FieldType.PhoneNumber] = this.instance.defaultTemplate;
|
|
23
|
+
this.templates[FieldType.String] = this.instance.defaultTemplate;
|
|
24
|
+
this.templates[FieldType.Unknown] = this.instance.defaultTemplate;
|
|
25
|
+
this.templates[FieldType.Enum] = this.instance.defaultTemplate;
|
|
26
|
+
}
|
|
27
|
+
getTemplate(metaData) {
|
|
28
|
+
let tmp = metaData.fieldType === FieldType.Link && metaData.additional?.link?.useRouterLink
|
|
29
|
+
? this.templates[FieldType.Link + .5]
|
|
30
|
+
:
|
|
31
|
+
metaData.fieldType === FieldType.Array && (metaData.additional?.arrayStyle === ArrayStyle.CommaDelimited || this.tableConfig?.arrayInfo?.arrayStyle === ArrayStyle.CommaDelimited)
|
|
32
|
+
? this.templates[FieldType.Array + .5]
|
|
33
|
+
:
|
|
34
|
+
this.templates[metaData.fieldType];
|
|
35
|
+
if (metaData.useIcon) {
|
|
36
|
+
if (tmp === this.instance.defaultTemplate) {
|
|
37
|
+
tmp = this.instance.defaultWithIcon;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
return tmp;
|
|
41
|
+
}
|
|
42
|
+
constructor(ei) {
|
|
43
|
+
this.tableConfig = inject(TableBuilderConfigToken);
|
|
44
|
+
const c = createComponent(InitializationComponent, {
|
|
45
|
+
environmentInjector: ei,
|
|
46
|
+
});
|
|
47
|
+
this.instance = c.instance;
|
|
48
|
+
this.initTemplates();
|
|
49
|
+
}
|
|
50
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: TableTemplateService, deps: [{ token: i0.EnvironmentInjector }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
51
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: TableTemplateService, providedIn: 'root' }); }
|
|
52
|
+
}
|
|
53
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: TableTemplateService, decorators: [{
|
|
54
|
+
type: Injectable,
|
|
55
|
+
args: [{ providedIn: 'root' }]
|
|
56
|
+
}], ctorParameters: () => [{ type: i0.EnvironmentInjector }] });
|
|
57
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtdGVtcGxhdGUtc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdXRpbGl0aWVzL3NyYy90YWJsZS1idWlsZGVyL3NlcnZpY2VzL3RhYmxlLXRlbXBsYXRlLXNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQyxlQUFlLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZGLE9BQU8sRUFBRSxVQUFVLEVBQWUsTUFBTSxlQUFlLENBQUM7QUFDeEQsT0FBTyxFQUFtQixVQUFVLEVBQUUsU0FBUyxFQUFZLE1BQU0sMEJBQTBCLENBQUM7QUFDNUYsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0saUVBQWlFLENBQUM7QUFDMUcsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sK0JBQStCLENBQUM7O0FBR3hFLE1BQU0sT0FBTyxvQkFBb0I7SUFJL0IsYUFBYTtRQUNYLElBQUksQ0FBQyxTQUFTLEdBQUcsRUFBRyxDQUFDO1FBQ3JCLElBQUksQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsb0JBQW9CLENBQUM7UUFDckUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsa0JBQWtCLENBQUM7UUFDeEUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUM7UUFDbEUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUM7UUFDbkUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFD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UUFDM0IsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3ZCLENBQUM7OEdBOUNVLG9CQUFvQjtrSEFBcEIsb0JBQW9CLGNBRFIsTUFBTTs7MkZBQ2xCLG9CQUFvQjtrQkFEaEMsVUFBVTttQkFBQyxFQUFDLFVBQVUsRUFBRSxNQUFNLEVBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFbnZpcm9ubWVudEluamVjdG9yLCBJbmplY3RvciwgY3JlYXRlQ29tcG9uZW50LCBpbmplY3QgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBJbmplY3RhYmxlLCBUZW1wbGF0ZVJlZiB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IEFycmF5QWRkaXRpb25hbCwgQXJyYXlTdHlsZSwgRmllbGRUeXBlLCBNZXRhRGF0YSB9IGZyb20gXCIuLi9pbnRlcmZhY2VzL3JlcG9ydC1kZWZcIjtcclxuaW1wb3J0IHsgSW5pdGlhbGl6YXRpb25Db21wb25lbnQgfSBmcm9tIFwiLi4vY29tcG9uZW50cy9pbml0aWFsaXphdGlvbi1jb21wb25lbnQvaW5pdGlhbGl6YXRpb24tY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IFRhYmxlQnVpbGRlckNvbmZpZ1Rva2VuIH0gZnJvbSBcIi4uL2NsYXNzZXMvVGFibGVCdWlsZGVyQ29uZmlnXCI7XHJcblxyXG5ASW5qZWN0YWJsZSh7cHJvdmlkZWRJbjogJ3Jvb3QnfSlcclxuZXhwb3J0IGNsYXNzIFRhYmxlVGVtcGxhdGVTZXJ2aWNlIHtcclxuICBpbnN0YW5jZSE6IEluaXRpYWxpemF0aW9uQ29tcG9uZW50O1xyXG4gIHRlbXBsYXRlcztcclxuXHJcbiAgaW5pdFRlbXBsYXRlcygpIHtcclxuICAgIHRoaXMudGVtcGxhdGVzID0geyB9O1xyXG4gICAgdGhpcy50ZW1wbGF0ZXNbRmllbGRUeXBlLkFycmF5XSA9IHRoaXMuaW5zdGFuY2UuYXJyYXlOZXdMaW5lVGVtcGxhdGU7XHJcbiAgICB0aGlzLnRlbXBsYXRlc1tGaWVsZFR5cGUuQXJyYXkgKyAuNV0gPSB0aGlzLmluc3RhbmNlLmFycmF5Q29tbWFUZW1wbGF0ZTtcclxuICAgIHRoaXMudGVtcGxhdGVzW0ZpZWxkVHlwZS5Cb29sZWFuXSA9IHRoaXMuaW5zdGFuY2UuZGVmYXVsdFdpdGhJY29uO1xyXG4gICAgdGhpcy50ZW1wbGF0ZXNbRmllbGRUeXBlLkN1cnJlbmN5XSA9IHRoaXMuaW5zdGFuY2UuZGVmYXVsdFRlbXBsYXRlO1xyXG4gICAgdGhpcy50ZW1wbGF0ZXNbRmllbGRUeXBlLkRhdGVdID0gdGhpcy5pbnN0YW5jZS5kZWZhdWx0VGVtcGxhdGU7XHJcbiAgICB0aGlzLnRlbXBsYXRlc1tGaWVsZFR5cGUuRGF0ZVRpbWVdID0gdGhpcy5pbnN0YW5jZS5kZWZhdWx0VGVtcGxhdGU7XHJcbiAgICB0aGlzLnRlbXBsYXRlc1tGaWVsZFR5cGUuRXhwcmVzc2lvbl0gPSB0aGlzLmluc3RhbmNlLmRlZmF1bHRUZW1wbGF0ZTtcclxuICAgIHRoaXMudGVtcGxhdGVzW0ZpZWxkVHlwZS5Ob3RNYXBwZWRdID0gdGhpcy5pbnN0YW5jZS5kZWZhdWx0VGVtcGxhdGU7XHJcbiAgICB0aGlzLnRlbXBsYXRlc1tGaWVsZFR5cGUuSW1hZ2VVcmxdID0gdGhpcy5pbnN0YW5jZS5pbWFnZVVybFRlbXBsYXRlO1xyXG4gICAgdGhpcy50ZW1wbGF0ZXNbRmllbGRUeXBlLkxpbmtdID0gdGhpcy5pbnN0YW5jZS5saW5rVGVtcGxhdGU7XHJcbiAgICB0aGlzLnRlbXBsYXRlc1tGaWVsZFR5cGUuTGluayArIC41XSA9IHRoaXMuaW5zdGFuY2Uucm91dGVyTGlua1RlbXBsYXRlO1xyXG4gICAgdGhpcy50ZW1wbGF0ZXNbRmllbGRUeXBlLk51bWJlcl0gPSB0aGlzLmluc3RhbmNlLmRlZmF1bHRUZW1wbGF0ZTtcclxuICAgIHRoaXMudGVtcGxhdGVzW0ZpZWxkVHlwZS5QaG9uZU51bWJlcl0gPSB0aGlzLmluc3RhbmNlLmRlZmF1bHRUZW1wbGF0ZTtcclxuICAgIHRoaXMudGVtcGxhdGVzW0ZpZWxkVHlwZS5TdHJpbmddID0gdGhpcy5pbnN0YW5jZS5kZWZhdWx0VGVtcGxhdGU7XHJcbiAgICB0aGlzLnRlbXBsYXRlc1tGaWVsZFR5cGUuVW5rbm93bl0gPSB0aGlzLmluc3RhbmNlLmRlZmF1bHRUZW1wbGF0ZTtcclxuICAgIHRoaXMudGVtcGxhdGVzW0ZpZWxkVHlwZS5FbnVtXSA9IHRoaXMuaW5zdGFuY2UuZGVmYXVsdFRlbXBsYXRlO1xyXG4gIH1cclxuICBnZXRUZW1wbGF0ZShtZXRhRGF0YTogTWV0YURhdGEpIDogVGVtcGxhdGVSZWY8YW55PiB7XHJcblxyXG4gICAgbGV0IHRtcCA9IG1ldGFEYXRhLmZpZWxkVHlwZSA9PT0gRmllbGRUeXBlLkxpbmsgJiYgbWV0YURhdGEuYWRkaXRpb25hbD8ubGluaz8udXNlUm91dGVyTGlua1xyXG4gICAgICA/IHRoaXMudGVtcGxhdGVzW0ZpZWxkVHlwZS5MaW5rICsgLjVdIFxyXG4gICAgICA6IFxyXG4gICAgICBtZXRhRGF0YS5maWVsZFR5cGUgPT09IEZpZWxkVHlwZS5BcnJheSAmJiAoKG1ldGFEYXRhLmFkZGl0aW9uYWwgYXMgQXJyYXlBZGRpdGlvbmFsKT8uYXJyYXlTdHlsZSA9PT0gQXJyYXlTdHlsZS5Db21tYURlbGltaXRlZCB8fCB0aGlzLnRhYmxlQ29uZmlnPy5hcnJheUluZm8/LmFycmF5U3R5bGUgPT09IEFycmF5U3R5bGUuQ29tbWFEZWxpbWl0ZWQpXHJcbiAgICAgID8gdGhpcy50ZW1wbGF0ZXNbRmllbGRUeXBlLkFycmF5ICsgLjVdIFxyXG4gICAgICA6XHJcbiAgICAgIHRoaXMudGVtcGxhdGVzW21ldGFEYXRhLmZpZWxkVHlwZV07XHJcbiAgICBpZihtZXRhRGF0YS51c2VJY29uKSB7XHJcbiAgICAgIGlmKHRtcCA9PT0gdGhpcy5pbnN0YW5jZS5kZWZhdWx0VGVtcGxhdGUpIHtcclxuICAgICAgICB0bXAgPSB0aGlzLmluc3RhbmNlLmRlZmF1bHRXaXRoSWNvbjtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIHRtcDtcclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKGVpOiBFbnZpcm9ubWVudEluamVjdG9yICApIHtcclxuICAgIGNvbnN0IGMgPSBjcmVhdGVDb21wb25lbnQoSW5pdGlhbGl6YXRpb25Db21wb25lbnQsIHtcclxuICAgICAgZW52aXJvbm1lbnRJbmplY3RvcjogZWksXHJcbiAgICB9KTtcclxuICAgIHRoaXMuaW5zdGFuY2UgPSBjLmluc3RhbmNlO1xyXG4gICAgdGhpcy5pbml0VGVtcGxhdGVzKCk7XHJcbiAgfVxyXG5cclxuICB0YWJsZUNvbmZpZyA9IGluamVjdChUYWJsZUJ1aWxkZXJDb25maWdUb2tlbik7XHJcbn1cclxuIl19
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
import { Inject, Injectable } from '@angular/core';
|
|
2
|
+
import { FieldType } from '../interfaces/report-def';
|
|
3
|
+
import { TableBuilderConfigToken } from '../classes/TableBuilderConfig';
|
|
4
|
+
import { get } from 'lodash';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "@angular/common";
|
|
7
|
+
import * as i2 from "../../utilities/pipes/phone.pipe";
|
|
8
|
+
import * as i3 from "../../utilities";
|
|
9
|
+
export function isPipe(o) {
|
|
10
|
+
return typeof (o.transform) === 'function';
|
|
11
|
+
}
|
|
12
|
+
export class TransformCreator {
|
|
13
|
+
constructor(datePipe, currencyPipe, phonePipe, casePipe, config) {
|
|
14
|
+
this.datePipe = datePipe;
|
|
15
|
+
this.currencyPipe = currencyPipe;
|
|
16
|
+
this.phonePipe = phonePipe;
|
|
17
|
+
this.casePipe = casePipe;
|
|
18
|
+
this.config = config;
|
|
19
|
+
this.createItemTransformer = (metaData, noIcons = false, mutate = false) => {
|
|
20
|
+
const transform = this.createTransformer(metaData, noIcons);
|
|
21
|
+
return (t) => {
|
|
22
|
+
if (!mutate) {
|
|
23
|
+
t = { ...t };
|
|
24
|
+
}
|
|
25
|
+
t[metaData.key] = transform(t);
|
|
26
|
+
};
|
|
27
|
+
};
|
|
28
|
+
this.createItemTransformers = (metaDatas, noIcons = false, mutate = false) => {
|
|
29
|
+
const transformers = metaDatas.map(meta => this.createItemTransformer(meta, noIcons, true));
|
|
30
|
+
return (t) => {
|
|
31
|
+
if (!t)
|
|
32
|
+
return t;
|
|
33
|
+
if (!mutate) {
|
|
34
|
+
t = { ...t };
|
|
35
|
+
}
|
|
36
|
+
transformers.forEach(m => m(t));
|
|
37
|
+
return t;
|
|
38
|
+
};
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
createTransformer(metaData, noIcons = false) {
|
|
42
|
+
const nested = metaData.key.includes('.');
|
|
43
|
+
const defaultFunc = nested ? (value) => get(value, metaData.key) : (value) => value[metaData.key];
|
|
44
|
+
if (metaData.map) {
|
|
45
|
+
return (value) => {
|
|
46
|
+
return metaData.map(value);
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
if (metaData.transform) {
|
|
50
|
+
if (isPipe(metaData.transform)) {
|
|
51
|
+
return (value) => metaData.transform.transform(defaultFunc(value));
|
|
52
|
+
}
|
|
53
|
+
return metaData.fieldType === FieldType.Expression ? metaData.transform : (value) => metaData.transform(defaultFunc(value), value);
|
|
54
|
+
}
|
|
55
|
+
if (this.config.transformers && this.config.transformers[metaData.fieldType]) {
|
|
56
|
+
var transformer = this.config.transformers[metaData.fieldType];
|
|
57
|
+
return (value) => transformer(defaultFunc(value));
|
|
58
|
+
}
|
|
59
|
+
const defaultDateFormat = this.config.defaultSettings?.dateFormat ?? 'shortDate';
|
|
60
|
+
const defaultDateTimeFormat = this.config.defaultSettings?.dateTimeFormat ?? 'short';
|
|
61
|
+
switch (metaData.fieldType) {
|
|
62
|
+
case FieldType.Date:
|
|
63
|
+
const dateFormat = metaData.additional?.dateFormat ?? defaultDateFormat;
|
|
64
|
+
return (value) => this.datePipe.transform(defaultFunc(value), dateFormat);
|
|
65
|
+
case FieldType.DateTime:
|
|
66
|
+
const dateTimeFormat = metaData.additional?.dateTimeOptions?.format ?? defaultDateTimeFormat;
|
|
67
|
+
return (value) => this.datePipe.transform(defaultFunc(value), dateTimeFormat);
|
|
68
|
+
case FieldType.Currency:
|
|
69
|
+
return (value) => this.currencyPipe.transform(defaultFunc(value));
|
|
70
|
+
case FieldType.PhoneNumber:
|
|
71
|
+
return (value) => this.phonePipe.transform(defaultFunc(value));
|
|
72
|
+
case FieldType.Enum:
|
|
73
|
+
return (value) => this.casePipe.transform(metaData.additional?.enumMap[defaultFunc(value)]);
|
|
74
|
+
case FieldType.Boolean:
|
|
75
|
+
if (noIcons) {
|
|
76
|
+
return defaultFunc;
|
|
77
|
+
}
|
|
78
|
+
let forTrue = 'check';
|
|
79
|
+
let forFalse = '';
|
|
80
|
+
if (metaData.additional?.boolean?.forTrue) {
|
|
81
|
+
forTrue = metaData?.additional.boolean.forTrue.icon;
|
|
82
|
+
}
|
|
83
|
+
if (metaData.additional?.boolean?.showForFalse === true) {
|
|
84
|
+
forFalse = 'clear';
|
|
85
|
+
}
|
|
86
|
+
else if (metaData.additional?.boolean?.showForFalse?.icon) {
|
|
87
|
+
forFalse = metaData.additional?.boolean?.showForFalse?.icon;
|
|
88
|
+
}
|
|
89
|
+
return (value) => defaultFunc(value) ? forTrue : forFalse;
|
|
90
|
+
}
|
|
91
|
+
return defaultFunc;
|
|
92
|
+
}
|
|
93
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: TransformCreator, deps: [{ token: i1.DatePipe }, { token: i1.CurrencyPipe }, { token: i2.PhoneNumberPipe }, { token: i3.SpaceCasePipe }, { token: TableBuilderConfigToken }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
94
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: TransformCreator, providedIn: 'root' }); }
|
|
95
|
+
}
|
|
96
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: TransformCreator, decorators: [{
|
|
97
|
+
type: Injectable,
|
|
98
|
+
args: [{
|
|
99
|
+
providedIn: 'root',
|
|
100
|
+
}]
|
|
101
|
+
}], ctorParameters: () => [{ type: i1.DatePipe }, { type: i1.CurrencyPipe }, { type: i2.PhoneNumberPipe }, { type: i3.SpaceCasePipe }, { type: undefined, decorators: [{
|
|
102
|
+
type: Inject,
|
|
103
|
+
args: [TableBuilderConfigToken]
|
|
104
|
+
}] }] });
|
|
105
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNmb3JtLWNyZWF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXV0aWxpdGllcy9zcmMvdGFibGUtYnVpbGRlci9zZXJ2aWNlcy90cmFuc2Zvcm0tY3JlYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWlCLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEUsT0FBTyxFQUFFLFNBQVMsRUFBWSxNQUFNLDBCQUEwQixDQUFDO0FBRy9ELE9BQU8sRUFBRSx1QkFBdUIsRUFBc0IsTUFBTSwrQkFBK0IsQ0FBQztBQUU1RixPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sUUFBUSxDQUFDOzs7OztBQUM3QixNQUFNLFVBQVUsTUFBTSxDQUFDLENBQU87SUFDNUIsT0FBTyxPQUFPLENBQUUsQ0FBbUIsQ0FBQyxTQUFTLENBQUUsS0FBSyxVQUFVLENBQUM7QUFDakUsQ0FBQztBQUtELE1BQU0sT0FBTyxnQkFBZ0I7SUFDM0IsWUFDVSxRQUFrQixFQUNsQixZQUEwQixFQUMxQixTQUEwQixFQUMxQixRQUF1QixFQUNVLE1BQTBCO1FBSjNELGFBQVEsR0FBUixRQUFRLENBQVU7UUFDbEIsaUJBQVksR0FBWixZQUFZLENBQWM7UUFDMUIsY0FBUyxHQUFULFNBQVMsQ0FBaUI7UUFDMUIsYUFBUSxHQUFSLFFBQVEsQ0FBZTtRQUNVLFdBQU0sR0FBTixNQUFNLENBQW9CO1FBcURyRSwwQkFBcUIsR0FBRyxDQUFrRCxRQUF1QyxFQUFFLE9BQU8sR0FBRyxLQUFLLEVBQUUsTUFBTSxHQUFHLEtBQUssRUFBRSxFQUFFO1lBQ3BKLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxRQUFRLEVBQUUsT0FBTyxDQUFDLENBQUM7WUFDNUQsT0FBTyxDQUFDLENBQUksRUFBRSxFQUFFO2dCQUNkLElBQUcsQ0FBQyxNQUFNLEVBQUMsQ0FBQztv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QUFDLENBQUU7WUFDaEgsS0FBSyxTQUFTLENBQUMsT0FBTztnQkFDcEIsSUFBRyxPQUFPLEVBQUUsQ0FBQztvQkFDWCxPQUFPLFdBQVcsQ0FBQTtnQkFDcEIsQ0FBQztnQkFDRCxJQUFJLE9BQU8sR0FBRyxPQUFPLENBQUE7Z0JBQ3JCLElBQUksUUFBUSxHQUFHLEVBQUUsQ0FBQztnQkFDbEIsSUFBRyxRQUFRLENBQUMsVUFBVSxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsQ0FBQztvQkFDekMsT0FBTyxHQUFHLFFBQVEsRUFBRSxVQUFVLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUM7Z0JBQ3RELENBQUM7Z0JBQ0QsSUFBRyxRQUFRLENBQUMsVUFBVSxFQUFFLE9BQU8sRUFBRSxZQUFZLEtBQUssSUFBSSxFQUFFLENBQUM7b0JBQ3ZELFFBQVEsR0FBRyxPQUFPLENBQUM7Z0JBQ3JCLENBQUM7cUJBQU0sSUFBSSxRQUFRLENBQUMsVUFBVSxFQUFFLE9BQU8sRUFBRSxZQUFZLEVBQUUsSUFBSSxFQUFFLENBQUM7b0JBQzVELFFBQVEsR0FBRyxRQUFRLENBQUMsVUFBVSxFQUFFLE9BQU8sRUFBRSxZQUFZLEVBQUUsSUFBSSxDQUFDO2dCQUM5RCxDQUFDO2dCQUNELE9BQU8sQ0FBQyxLQUFVLEVBQUUsRUFBRSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUU7UUFDcEUsQ0FBQztRQUNDLE9BQU8sV0FBVyxDQUFDO0lBQ3ZCLENBQUM7OEdBekRVLGdCQUFnQixrSUFNakIsdUJBQXVCO2tIQU50QixnQkFBZ0IsY0FGZCxNQUFNOzsyRkFFUixnQkFBZ0I7a0JBSDVCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFHLE1BQU07aUJBQ3BCOzswQkFPSSxNQUFNOzJCQUFDLHVCQUF1QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGVUcmFuc2Zvcm0sIEluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGaWVsZFR5cGUsIE1ldGFEYXRhIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9yZXBvcnQtZGVmJztcclxuaW1wb3J0IHsgRGF0ZVBpcGUsIEN1cnJlbmN5UGlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IFBob25lTnVtYmVyUGlwZSB9IGZyb20gJy4uLy4uL3V0aWxpdGllcy9waXBlcy9waG9uZS5waXBlJztcclxuaW1wb3J0IHsgVGFibGVCdWlsZGVyQ29uZmlnVG9rZW4sIFRhYmxlQnVpbGRlckNvbmZpZyB9IGZyb20gJy4uL2NsYXNzZXMvVGFibGVCdWlsZGVyQ29uZmlnJztcclxuaW1wb3J0IHsgU3BhY2VDYXNlUGlwZSB9IGZyb20gJy4uLy4uL3V0aWxpdGllcyc7XHJcbmltcG9ydCB7IGdldCB9IGZyb20gJ2xvZGFzaCc7XHJcbmV4cG9ydCBmdW5jdGlvbiBpc1BpcGUobyA6IGFueSApOiBvIGlzIFBpcGVUcmFuc2Zvcm0ge1xyXG4gIHJldHVybiB0eXBlb2YgKChvIGFzIFBpcGVUcmFuc2Zvcm0pLnRyYW5zZm9ybSApID09PSAnZnVuY3Rpb24nO1xyXG59XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogICdyb290JyxcclxufSlcclxuZXhwb3J0IGNsYXNzIFRyYW5zZm9ybUNyZWF0b3Ige1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBkYXRlUGlwZTogRGF0ZVBpcGUsXHJcbiAgICBwcml2YXRlIGN1cnJlbmN5UGlwZTogQ3VycmVuY3lQaXBlLFxyXG4gICAgcHJpdmF0ZSBwaG9uZVBpcGU6IFBob25lTnVtYmVyUGlwZSxcclxuICAgIHByaXZhdGUgY2FzZVBpcGU6IFNwYWNlQ2FzZVBpcGUsXHJcbiAgICBASW5qZWN0KFRhYmxlQnVpbGRlckNvbmZpZ1Rva2VuKSBwcml2YXRlIGNvbmZpZzogVGFibGVCdWlsZGVyQ29uZmlnLFxyXG4gICkge31cclxuICBjcmVhdGVUcmFuc2Zvcm1lcihtZXRhRGF0YTogTWV0YURhdGE8YW55LCBhbnk+LCBub0ljb25zID0gZmFsc2UpOiAoKHZhbHVlOiBhbnksIC4uLmFyZ3M6IGFueVtdKSA9PiBhbnkpICB7XHJcbiAgICBjb25zdCBuZXN0ZWQgPSBtZXRhRGF0YS5rZXkuaW5jbHVkZXMoJy4nKTtcclxuICAgIGNvbnN0IGRlZmF1bHRGdW5jID0gbmVzdGVkID8gICh2YWx1ZTogYW55KSA9PiBnZXQoIHZhbHVlLCBtZXRhRGF0YS5rZXkpIDogKHZhbHVlOiBhbnkpID0+ICB2YWx1ZVttZXRhRGF0YS5rZXldO1xyXG4gICAgaWYobWV0YURhdGEubWFwKXtcclxuICAgICAgcmV0dXJuICh2YWx1ZTogYW55KSA9PiB7IFxyXG4gICAgICAgIHJldHVybiBtZXRhRGF0YS5tYXAhKHZhbHVlKX07XHJcbiAgICB9XHJcbiAgICBpZiggbWV0YURhdGEudHJhbnNmb3JtKSB7XHJcbiAgICAgIGlmKGlzUGlwZShtZXRhRGF0YS50cmFuc2Zvcm0pKXtcclxuICAgICAgICByZXR1cm4gKHZhbHVlOiBhbnkpID0+ICAobWV0YURhdGEhLnRyYW5zZm9ybSBhcyBQaXBlVHJhbnNmb3JtKS50cmFuc2Zvcm0oZGVmYXVsdEZ1bmModmFsdWUpKTtcclxuICAgICAgfVxyXG4gICAgICByZXR1cm4gbWV0YURhdGEuZmllbGRUeXBlID09PSBGaWVsZFR5cGUuRXhwcmVzc2lvbiA/IG1ldGFEYXRhLnRyYW5zZm9ybSA6ICh2YWx1ZTogYW55KSA9PiAobWV0YURhdGEudHJhbnNmb3JtIGFzIChhOmFueSxiOmFueSk9PmFueSkoZGVmYXVsdEZ1bmModmFsdWUpLHZhbHVlKTtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLmNvbmZpZy50cmFuc2Zvcm1lcnMgJiYgdGhpcy5jb25maWcudHJhbnNmb3JtZXJzW21ldGFEYXRhLmZpZWxkVHlwZV0pIHtcclxuICAgICAgdmFyIHRyYW5zZm9ybWVyID0gIHRoaXMuY29uZmlnLnRyYW5zZm9ybWVycyFbbWV0YURhdGEuZmllbGRUeXBlXSE7XHJcbiAgICAgIHJldHVybiAodmFsdWU6IGFueSkgPT4gdHJhbnNmb3JtZXIoZGVmYXVsdEZ1bmModmFsdWUpKTtcclxuICAgIH1cclxuICAgIGNvbnN0IGRlZmF1bHREYXRlRm9ybWF0ID0gdGhpcy5jb25maWcuZGVmYXVsdFNldHRpbmdzPy5kYXRlRm9ybWF0ID8/ICdzaG9ydERhdGUnO1xyXG4gICAgY29uc3QgZGVmYXVsdERhdGVUaW1lRm9ybWF0ID0gdGhpcy5jb25maWcuZGVmYXVsdFNldHRpbmdzPy5kYXRlVGltZUZvcm1hdCA/PyAnc2hvcnQnO1xyXG4gICAgc3dpdGNoKG1ldGFEYXRhLmZpZWxkVHlwZSkge1xyXG4gICAgICBjYXNlIEZpZWxkVHlwZS5EYXRlOlxyXG4gICAgICAgIGNvbnN0IGRhdGVGb3JtYXQgPSBtZXRhRGF0YS5hZGRpdGlvbmFsPy5kYXRlRm9ybWF0ID8/IGRlZmF1bHREYXRlRm9ybWF0O1xyXG4gICAgICAgIHJldHVybiAodmFsdWU6IGFueSkgPT4gdGhpcy5kYXRlUGlwZS50cmFuc2Zvcm0oZGVmYXVsdEZ1bmModmFsdWUpLCBkYXRlRm9ybWF0KTtcclxuICAgICAgY2FzZSBGaWVsZFR5cGUuRGF0ZVRpbWU6XHJcbiAgICAgICAgY29uc3QgZGF0ZVRpbWVGb3JtYXQgPSBtZXRhRGF0YS5hZGRpdGlvbmFsPy5kYXRlVGltZU9wdGlvbnM/LmZvcm1hdCA/PyBkZWZhdWx0RGF0ZVRpbWVGb3JtYXQ7XHJcbiAgICAgICAgcmV0dXJuICh2YWx1ZTogYW55KSA9PiB0aGlzLmRhdGVQaXBlLnRyYW5zZm9ybShkZWZhdWx0RnVuYyh2YWx1ZSksIGRhdGVUaW1lRm9ybWF0KTtcclxuICAgICAgY2FzZSBGaWVsZFR5cGUuQ3VycmVuY3k6XHJcbiAgICAgICAgICByZXR1cm4gKHZhbHVlOiBhbnkpID0+ICB0aGlzLmN1cnJlbmN5UGlwZS50cmFuc2Zvcm0oZGVmYXVsdEZ1bmModmFsdWUpKTtcclxuICAgICAgY2FzZSBGaWVsZFR5cGUuUGhvbmVOdW1iZXI6XHJcbiAgICAgICAgcmV0dXJuICAodmFsdWU6IGFueSkgPT4gIHRoaXMucGhvbmVQaXBlLnRyYW5zZm9ybShkZWZhdWx0RnVuYyh2YWx1ZSkpO1xyXG4gICAgICBjYXNlIEZpZWxkVHlwZS5FbnVtOlxyXG4gICAgICAgIHJldHVybiAodmFsdWU6IGFueSkgPT4gIHRoaXMuY2FzZVBpcGUudHJhbnNmb3JtKG1ldGFEYXRhLmFkZGl0aW9uYWw/LmVudW1NYXAhW2RlZmF1bHRGdW5jKHZhbHVlKV0gYXMgc3RyaW5nKSA7XHJcbiAgICAgIGNhc2UgRmllbGRUeXBlLkJvb2xlYW46XHJcbiAgICAgICAgaWYobm9JY29ucykge1xyXG4gICAgICAgICAgcmV0dXJuIGRlZmF1bHRGdW5jXHJcbiAgICAgICAgfVxyXG4gICAgICAgIGxldCBmb3JUcnVlID0gJ2NoZWNrJ1xyXG4gICAgICAgIGxldCBmb3JGYWxzZSA9ICcnO1xyXG4gICAgICAgIGlmKG1ldGFEYXRhLmFkZGl0aW9uYWw/LmJvb2xlYW4/LmZvclRydWUpIHtcclxuICAgICAgICAgIGZvclRydWUgPSBtZXRhRGF0YT8uYWRkaXRpb25hbC5ib29sZWFuLmZvclRydWUuaWNvbjtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYobWV0YURhdGEuYWRkaXRpb25hbD8uYm9vbGVhbj8uc2hvd0ZvckZhbHNlID09PSB0cnVlKSB7XHJcbiAgICAgICAgICBmb3JGYWxzZSA9ICdjbGVhcic7XHJcbiAgICAgICAgfSBlbHNlIGlmIChtZXRhRGF0YS5hZGRpdGlvbmFsPy5ib29sZWFuPy5zaG93Rm9yRmFsc2U/Lmljb24pIHtcclxuICAgICAgICAgIGZvckZhbHNlID0gbWV0YURhdGEuYWRkaXRpb25hbD8uYm9vbGVhbj8uc2hvd0ZvckZhbHNlPy5pY29uO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gKHZhbHVlOiBhbnkpID0+IGRlZmF1bHRGdW5jKHZhbHVlKSA/IGZvclRydWUgOiBmb3JGYWxzZSA7XHJcbiAgICB9XHJcbiAgICAgIHJldHVybiBkZWZhdWx0RnVuYztcclxuICB9XHJcblxyXG4gIGNyZWF0ZUl0ZW1UcmFuc2Zvcm1lciA9IDxUID0gYW55LCBBZGRpdGlvbmFsRmllbGRzIGV4dGVuZHMgc3RyaW5nW10gPSBbXT4obWV0YURhdGE6IE1ldGFEYXRhPFQgLEFkZGl0aW9uYWxGaWVsZHM+LCBub0ljb25zID0gZmFsc2UsIG11dGF0ZSA9IGZhbHNlKSA9PiB7XHJcbiAgICBjb25zdCB0cmFuc2Zvcm0gPSB0aGlzLmNyZWF0ZVRyYW5zZm9ybWVyKG1ldGFEYXRhLCBub0ljb25zKTtcclxuICAgIHJldHVybiAodDogVCkgPT4ge1xyXG4gICAgICBpZighbXV0YXRlKXtcclxuICAgICAgICB0ID0geyAuLi50IH1cclxuICAgICAgfVxyXG4gICAgICB0W21ldGFEYXRhLmtleSBhcyBzdHJpbmddID0gdHJhbnNmb3JtKHQpXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjcmVhdGVJdGVtVHJhbnNmb3JtZXJzID0gPFQgPSBhbnksIEFkZGl0aW9uYWxGaWVsZHMgZXh0ZW5kcyBzdHJpbmdbXSA9IFtdPihtZXRhRGF0YXM6IE1ldGFEYXRhPFQsIEFkZGl0aW9uYWxGaWVsZHM+W10sIG5vSWNvbnMgPSBmYWxzZSwgbXV0YXRlID0gZmFsc2UpID0+IHtcclxuICAgIGNvbnN0IHRyYW5zZm9ybWVycyA9IG1ldGFEYXRhcy5tYXAobWV0YSA9PiB0aGlzLmNyZWF0ZUl0ZW1UcmFuc2Zvcm1lcihtZXRhICxub0ljb25zLCB0cnVlKSk7XHJcbiAgICByZXR1cm4gKHQ6IFQpID0+IHtcclxuICAgICAgaWYoIXQpIHJldHVybiB0O1xyXG4gICAgICBpZighbXV0YXRlKXtcclxuICAgICAgICB0ID0geyAuLi4gdH1cclxuICAgICAgfVxyXG4gICAgICB0cmFuc2Zvcm1lcnMuZm9yRWFjaChtID0+IG0odCkpO1xyXG4gICAgICByZXR1cm4gdDtcclxuICAgIH1cclxuICB9XHJcblxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { CommonModule, DatePipe, CurrencyPipe } from '@angular/common';
|
|
3
|
+
import { SpaceCasePipe } from '../utilities/pipes/space-case.pipes';
|
|
4
|
+
import { MultiSortDirective } from './directives/multi-sort.directive';
|
|
5
|
+
import { TableBuilderConfigToken } from './classes/TableBuilderConfig';
|
|
6
|
+
import { PhoneNumberPipe } from '../utilities/pipes/phone.pipe';
|
|
7
|
+
import { RouterModule } from '@angular/router';
|
|
8
|
+
import { FilterComponent, GenericTableComponent, TableContainerComponent } from './components';
|
|
9
|
+
import { CustomCellDirective, MatSlideToggleTbFilterDirective, MatRadioButtonTbFilterDirective, MatOptionTbFilterDirective, MatCheckboxTbFilterDirective, MatButtonToggleFilterDirective, TableFilterDirective, TableFilterStringContainsDirective, TableWrapperDirective, ResizeColumnDirective } from './directives';
|
|
10
|
+
import { UtilitiesModule } from '../utilities';
|
|
11
|
+
import { MatDialogModule } from '@angular/material/dialog';
|
|
12
|
+
import { MatNativeDateModule } from '@angular/material/core';
|
|
13
|
+
import { TableBuilderStateStore } from './ngrx/tableBuilderStateStore';
|
|
14
|
+
import * as i0 from "@angular/core";
|
|
15
|
+
export class TableBuilderModule {
|
|
16
|
+
static forRoot(config) {
|
|
17
|
+
return {
|
|
18
|
+
ngModule: TableBuilderModule,
|
|
19
|
+
providers: [
|
|
20
|
+
{ provide: TableBuilderConfigToken, useValue: config }
|
|
21
|
+
]
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: TableBuilderModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
25
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.1.2", ngImport: i0, type: TableBuilderModule, imports: [CommonModule,
|
|
26
|
+
MatDialogModule,
|
|
27
|
+
MatNativeDateModule,
|
|
28
|
+
RouterModule,
|
|
29
|
+
TableContainerComponent,
|
|
30
|
+
GenericTableComponent,
|
|
31
|
+
TableContainerComponent,
|
|
32
|
+
CustomCellDirective,
|
|
33
|
+
FilterComponent,
|
|
34
|
+
MatSlideToggleTbFilterDirective,
|
|
35
|
+
MatRadioButtonTbFilterDirective,
|
|
36
|
+
MatOptionTbFilterDirective,
|
|
37
|
+
MatCheckboxTbFilterDirective,
|
|
38
|
+
MatButtonToggleFilterDirective,
|
|
39
|
+
TableFilterDirective,
|
|
40
|
+
TableFilterStringContainsDirective,
|
|
41
|
+
TableWrapperDirective,
|
|
42
|
+
ResizeColumnDirective,
|
|
43
|
+
UtilitiesModule], exports: [GenericTableComponent,
|
|
44
|
+
TableContainerComponent,
|
|
45
|
+
CustomCellDirective,
|
|
46
|
+
FilterComponent,
|
|
47
|
+
MatSlideToggleTbFilterDirective,
|
|
48
|
+
MatRadioButtonTbFilterDirective,
|
|
49
|
+
MatOptionTbFilterDirective,
|
|
50
|
+
MatCheckboxTbFilterDirective,
|
|
51
|
+
MatButtonToggleFilterDirective,
|
|
52
|
+
TableFilterDirective,
|
|
53
|
+
TableFilterStringContainsDirective,
|
|
54
|
+
TableWrapperDirective,
|
|
55
|
+
ResizeColumnDirective,
|
|
56
|
+
UtilitiesModule] }); }
|
|
57
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: TableBuilderModule, providers: [
|
|
58
|
+
SpaceCasePipe,
|
|
59
|
+
DatePipe,
|
|
60
|
+
CurrencyPipe,
|
|
61
|
+
PhoneNumberPipe,
|
|
62
|
+
MultiSortDirective,
|
|
63
|
+
TableBuilderStateStore,
|
|
64
|
+
], imports: [CommonModule,
|
|
65
|
+
MatDialogModule,
|
|
66
|
+
MatNativeDateModule,
|
|
67
|
+
RouterModule,
|
|
68
|
+
TableContainerComponent,
|
|
69
|
+
GenericTableComponent,
|
|
70
|
+
TableContainerComponent,
|
|
71
|
+
FilterComponent,
|
|
72
|
+
UtilitiesModule, UtilitiesModule] }); }
|
|
73
|
+
}
|
|
74
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: TableBuilderModule, decorators: [{
|
|
75
|
+
type: NgModule,
|
|
76
|
+
args: [{
|
|
77
|
+
imports: [
|
|
78
|
+
CommonModule,
|
|
79
|
+
MatDialogModule,
|
|
80
|
+
MatNativeDateModule,
|
|
81
|
+
RouterModule,
|
|
82
|
+
TableContainerComponent,
|
|
83
|
+
GenericTableComponent,
|
|
84
|
+
TableContainerComponent,
|
|
85
|
+
CustomCellDirective,
|
|
86
|
+
FilterComponent,
|
|
87
|
+
MatSlideToggleTbFilterDirective,
|
|
88
|
+
MatRadioButtonTbFilterDirective,
|
|
89
|
+
MatOptionTbFilterDirective,
|
|
90
|
+
MatCheckboxTbFilterDirective,
|
|
91
|
+
MatButtonToggleFilterDirective,
|
|
92
|
+
TableFilterDirective,
|
|
93
|
+
TableFilterStringContainsDirective,
|
|
94
|
+
TableWrapperDirective,
|
|
95
|
+
ResizeColumnDirective,
|
|
96
|
+
UtilitiesModule,
|
|
97
|
+
],
|
|
98
|
+
exports: [
|
|
99
|
+
GenericTableComponent,
|
|
100
|
+
TableContainerComponent,
|
|
101
|
+
CustomCellDirective,
|
|
102
|
+
FilterComponent,
|
|
103
|
+
MatSlideToggleTbFilterDirective,
|
|
104
|
+
MatRadioButtonTbFilterDirective,
|
|
105
|
+
MatOptionTbFilterDirective,
|
|
106
|
+
MatCheckboxTbFilterDirective,
|
|
107
|
+
MatButtonToggleFilterDirective,
|
|
108
|
+
TableFilterDirective,
|
|
109
|
+
TableFilterStringContainsDirective,
|
|
110
|
+
TableWrapperDirective,
|
|
111
|
+
ResizeColumnDirective,
|
|
112
|
+
UtilitiesModule,
|
|
113
|
+
],
|
|
114
|
+
providers: [
|
|
115
|
+
SpaceCasePipe,
|
|
116
|
+
DatePipe,
|
|
117
|
+
CurrencyPipe,
|
|
118
|
+
PhoneNumberPipe,
|
|
119
|
+
MultiSortDirective,
|
|
120
|
+
TableBuilderStateStore,
|
|
121
|
+
]
|
|
122
|
+
}]
|
|
123
|
+
}] });
|
|
124
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtYnVpbGRlci5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXV0aWxpdGllcy9zcmMvdGFibGUtYnVpbGRlci90YWJsZS1idWlsZGVyLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsUUFBUSxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUNwRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUV2RSxPQUFPLEVBQXNCLHVCQUF1QixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDM0YsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZUFBZSxFQUFFLHFCQUFxQixFQUFFLHVCQUF1QixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQy9GLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSwrQkFBK0IsRUFBRSwrQkFBK0IsRUFBRSwwQkFBMEIsRUFBRSw0QkFBNEIsRUFBRSw4QkFBOEIsRUFBRSxvQkFBb0IsRUFBRSxrQ0FBa0MsRUFBRSxxQkFBcUIsRUFBRSxxQkFBcUIsRUFBOEIsTUFBTSxjQUFjLENBQUM7QUFDblYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDN0QsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sK0JBQStCLENBQUM7O0FBaUR2RSxNQUFNLE9BQU8sa0JBQWtCO0lBQzdCLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBMEI7UUFDdkMsT0FBTztZQUNMLFFBQVEsRUFBRSxrQkFBa0I7WUFDNUIsU0FBUyxFQUFFO2dCQUNULEVBQUUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUU7YUFDdkQ7U0FDRixDQUFDO0lBQ0osQ0FBQzs4R0FSVSxrQkFBa0I7K0dBQWxCLGtCQUFrQixZQTdDM0IsWUFBWTtZQUNaLGVBQWU7WUFDZixtQkFBbUI7WUFDbkIsWUFBWTtZQUNaLHVCQUF1QjtZQUN2QixxQkFBcUI7WUFDckIsdUJBQXVCO1lBQ3ZCLG1CQUFtQjtZQUNuQixlQUFlO1lBQ2YsK0JBQStCO1lBQy9CLCtCQUErQjtZQUMvQiwwQkFBMEI7WUFDMUIsNEJBQTRCO1lBQzVCLDhCQUE4QjtZQUM5QixvQkFBb0I7WUFDcEIsa0NBQWtDO1lBQ2xDLHFCQUFxQjtZQUNyQixxQkFBcUI7WUFDckIsZUFBZSxhQUdmLHFCQUFxQjtZQUNyQix1QkFBdUI7WUFDdkIsbUJBQW1CO1lBQ25CLGVBQWU7WUFDZiwrQkFBK0I7WUFDL0IsK0JBQStCO1lBQy9CLDBCQUEwQjtZQUMxQiw0QkFBNEI7WUFDNUIsOEJBQThCO1lBQzlCLG9CQUFvQjtZQUNwQixrQ0FBa0M7WUFDbEMscUJBQXFCO1lBQ3JCLHFCQUFxQjtZQUNyQixlQUFlOytHQVdOLGtCQUFrQixhQVRsQjtZQUNULGFBQWE7WUFDYixRQUFRO1lBQ1IsWUFBWTtZQUNaLGVBQWU7WUFDZixrQkFBa0I7WUFDbEIsc0JBQXNCO1NBQ3ZCLFlBM0NDLFlBQVk7WUFDWixlQUFlO1lBQ2YsbUJBQW1CO1lBQ25CLFlBQVk7WUFDWix1QkFBdUI7WUFDdkIscUJBQXFCO1lBQ3JCLHVCQUF1QjtZQUV2QixlQUFlO1lBVWYsZUFBZSxFQWdCZixlQUFlOzsyRkFXTixrQkFBa0I7a0JBL0M5QixRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLGVBQWU7d0JBQ2YsbUJBQW1CO3dCQUNuQixZQUFZO3dCQUNaLHVCQUF1Qjt3QkFDdkIscUJBQXFCO3dCQUNyQix1QkFBdUI7d0JBQ3ZCLG1CQUFtQjt3QkFDbkIsZUFBZTt3QkFDZiwrQkFBK0I7d0JBQy9CLCtCQUErQjt3QkFDL0IsMEJBQTBCO3dCQUMxQiw0QkFBNEI7d0JBQzVCLDhCQUE4Qjt3QkFDOUIsb0JBQW9CO3dCQUNwQixrQ0FBa0M7d0JBQ2xDLHFCQUFxQjt3QkFDckIscUJBQXFCO3dCQUNyQixlQUFlO3FCQUNoQjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AscUJBQXFCO3dCQUNyQix1QkFBdUI7d0JBQ3ZCLG1CQUFtQjt3QkFDbkIsZUFBZTt3QkFDZiwrQkFBK0I7d0JBQy9CLCtCQUErQjt3QkFDL0IsMEJBQTBCO3dCQUMxQiw0QkFBNEI7d0JBQzVCLDhCQUE4Qjt3QkFDOUIsb0JBQW9CO3dCQUNwQixrQ0FBa0M7d0JBQ2xDLHFCQUFxQjt3QkFDckIscUJBQXFCO3dCQUNyQixlQUFlO3FCQUNoQjtvQkFDRCxTQUFTLEVBQUU7d0JBQ1QsYUFBYTt3QkFDYixRQUFRO3dCQUNSLFlBQVk7d0JBQ1osZUFBZTt3QkFDZixrQkFBa0I7d0JBQ2xCLHNCQUFzQjtxQkFDdkI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJcclxuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlLCBEYXRlUGlwZSwgQ3VycmVuY3lQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgU3BhY2VDYXNlUGlwZSB9IGZyb20gJy4uL3V0aWxpdGllcy9waXBlcy9zcGFjZS1jYXNlLnBpcGVzJztcclxuaW1wb3J0IHsgTXVsdGlTb3J0RGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL211bHRpLXNvcnQuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgTW9kdWxlV2l0aFByb3ZpZGVycyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBUYWJsZUJ1aWxkZXJDb25maWcsIFRhYmxlQnVpbGRlckNvbmZpZ1Rva2VuIH0gZnJvbSAnLi9jbGFzc2VzL1RhYmxlQnVpbGRlckNvbmZpZyc7XHJcbmltcG9ydCB7IFBob25lTnVtYmVyUGlwZSB9IGZyb20gJy4uL3V0aWxpdGllcy9waXBlcy9waG9uZS5waXBlJztcclxuaW1wb3J0IHsgUm91dGVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgRmlsdGVyQ29tcG9uZW50LCBHZW5lcmljVGFibGVDb21wb25lbnQsIFRhYmxlQ29udGFpbmVyQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzJztcclxuaW1wb3J0IHsgQ3VzdG9tQ2VsbERpcmVjdGl2ZSwgTWF0U2xpZGVUb2dnbGVUYkZpbHRlckRpcmVjdGl2ZSwgTWF0UmFkaW9CdXR0b25UYkZpbHRlckRpcmVjdGl2ZSwgTWF0T3B0aW9uVGJGaWx0ZXJEaXJlY3RpdmUsIE1hdENoZWNrYm94VGJGaWx0ZXJEaXJlY3RpdmUsIE1hdEJ1dHRvblRvZ2dsZUZpbHRlckRpcmVjdGl2ZSwgVGFibGVGaWx0ZXJEaXJlY3RpdmUsIFRhYmxlRmlsdGVyU3RyaW5nQ29udGFpbnNEaXJlY3RpdmUsIFRhYmxlV3JhcHBlckRpcmVjdGl2ZSwgUmVzaXplQ29sdW1uRGlyZWN0aXZlLCBUYWJsZUN1c3RvbUZpbHRlckRpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcyc7XHJcbmltcG9ydCB7IFV0aWxpdGllc01vZHVsZSB9IGZyb20gJy4uL3V0aWxpdGllcyc7XHJcbmltcG9ydCB7IE1hdERpYWxvZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XHJcbmltcG9ydCB7IE1hdE5hdGl2ZURhdGVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcclxuaW1wb3J0IHsgVGFibGVCdWlsZGVyU3RhdGVTdG9yZSB9IGZyb20gJy4vbmdyeC90YWJsZUJ1aWxkZXJTdGF0ZVN0b3JlJztcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgaW1wb3J0czogW1xyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgTWF0RGlhbG9nTW9kdWxlLFxyXG4gICAgTWF0TmF0aXZlRGF0ZU1vZHVsZSxcclxuICAgIFJvdXRlck1vZHVsZSxcclxuICAgIFRhYmxlQ29udGFpbmVyQ29tcG9uZW50LFxyXG4gICAgR2VuZXJpY1RhYmxlQ29tcG9uZW50LFxyXG4gICAgVGFibGVDb250YWluZXJDb21wb25lbnQsXHJcbiAgICBDdXN0b21DZWxsRGlyZWN0aXZlLFxyXG4gICAgRmlsdGVyQ29tcG9uZW50LFxyXG4gICAgTWF0U2xpZGVUb2dnbGVUYkZpbHRlckRpcmVjdGl2ZSxcclxuICAgIE1hdFJhZGlvQnV0dG9uVGJGaWx0ZXJEaXJlY3RpdmUsXHJcbiAgICBNYXRPcHRpb25UYkZpbHRlckRpcmVjdGl2ZSxcclxuICAgIE1hdENoZWNrYm94VGJGaWx0ZXJEaXJlY3RpdmUsXHJcbiAgICBNYXRCdXR0b25Ub2dnbGVGaWx0ZXJEaXJlY3RpdmUsXHJcbiAgICBUYWJsZUZpbHRlckRpcmVjdGl2ZSxcclxuICAgIFRhYmxlRmlsdGVyU3RyaW5nQ29udGFpbnNEaXJlY3RpdmUsXHJcbiAgICBUYWJsZVdyYXBwZXJEaXJlY3RpdmUsXHJcbiAgICBSZXNpemVDb2x1bW5EaXJlY3RpdmUsXHJcbiAgICBVdGlsaXRpZXNNb2R1bGUsXHJcbiAgXSxcclxuICBleHBvcnRzOiBbXHJcbiAgICBHZW5lcmljVGFibGVDb21wb25lbnQsXHJcbiAgICBUYWJsZUNvbnRhaW5lckNvbXBvbmVudCxcclxuICAgIEN1c3RvbUNlbGxEaXJlY3RpdmUsXHJcbiAgICBGaWx0ZXJDb21wb25lbnQsXHJcbiAgICBNYXRTbGlkZVRvZ2dsZVRiRmlsdGVyRGlyZWN0aXZlLFxyXG4gICAgTWF0UmFkaW9CdXR0b25UYkZpbHRlckRpcmVjdGl2ZSxcclxuICAgIE1hdE9wdGlvblRiRmlsdGVyRGlyZWN0aXZlLFxyXG4gICAgTWF0Q2hlY2tib3hUYkZpbHRlckRpcmVjdGl2ZSxcclxuICAgIE1hdEJ1dHRvblRvZ2dsZUZpbHRlckRpcmVjdGl2ZSxcclxuICAgIFRhYmxlRmlsdGVyRGlyZWN0aXZlLFxyXG4gICAgVGFibGVGaWx0ZXJTdHJpbmdDb250YWluc0RpcmVjdGl2ZSxcclxuICAgIFRhYmxlV3JhcHBlckRpcmVjdGl2ZSxcclxuICAgIFJlc2l6ZUNvbHVtbkRpcmVjdGl2ZSxcclxuICAgIFV0aWxpdGllc01vZHVsZSxcclxuICBdLFxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAgU3BhY2VDYXNlUGlwZSxcclxuICAgIERhdGVQaXBlLFxyXG4gICAgQ3VycmVuY3lQaXBlLFxyXG4gICAgUGhvbmVOdW1iZXJQaXBlLFxyXG4gICAgTXVsdGlTb3J0RGlyZWN0aXZlLFxyXG4gICAgVGFibGVCdWlsZGVyU3RhdGVTdG9yZSxcclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUYWJsZUJ1aWxkZXJNb2R1bGUge1xyXG4gIHN0YXRpYyBmb3JSb290KGNvbmZpZzogVGFibGVCdWlsZGVyQ29uZmlnKTogTW9kdWxlV2l0aFByb3ZpZGVyczxUYWJsZUJ1aWxkZXJNb2R1bGU+IHtcclxuICAgIHJldHVybiB7XHJcbiAgICAgIG5nTW9kdWxlOiBUYWJsZUJ1aWxkZXJNb2R1bGUsXHJcbiAgICAgIHByb3ZpZGVyczogW1xyXG4gICAgICAgIHsgcHJvdmlkZTogVGFibGVCdWlsZGVyQ29uZmlnVG9rZW4sIHVzZVZhbHVlOiBjb25maWcgfVxyXG4gICAgICBdXHJcbiAgICB9O1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export const replaceInArrayWithClone = (arr, findMeth, actionOnClone = ((t) => { })) => {
|
|
2
|
+
const index = arr.findIndex(findMeth);
|
|
3
|
+
const clonedArray = [...arr];
|
|
4
|
+
const t = clonedArray[index];
|
|
5
|
+
clonedArray[index] =
|
|
6
|
+
t != null && typeof t === 'object' ?
|
|
7
|
+
Array.isArray(t) ?
|
|
8
|
+
[...t]
|
|
9
|
+
: { ...t }
|
|
10
|
+
: t;
|
|
11
|
+
actionOnClone(clonedArray[index]);
|
|
12
|
+
return clonedArray;
|
|
13
|
+
};
|
|
14
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJyYXktaGVscGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdXRpbGl0aWVzL3NyYy91dGlsaXRpZXMvYXJyYXktaGVscGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBRyxDQUFVLEdBQVEsRUFBRSxRQUEyQixFQUFFLGdCQUErQixDQUFDLENBQUMsQ0FBSSxFQUFFLEVBQUUsR0FBRSxDQUFDLENBQUMsRUFBTyxFQUFFO0lBQzVJLE1BQU0sS0FBSyxHQUFHLEdBQUcsQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDdEMsTUFBTSxXQUFXLEdBQUcsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDO0lBQzdCLE1BQU0sQ0FBQyxHQUFHLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM3QixXQUFXLENBQUMsS0FBSyxDQUFDO1FBQ2hCLENBQUMsSUFBSSxJQUFJLElBQUksT0FBTyxDQUFDLEtBQUssUUFBUSxDQUFDLENBQUM7WUFDbEMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUNoQixDQUFDLEdBQUcsQ0FBQyxDQUFRO2dCQUNiLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxFQUFFO1lBQ1osQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNSLGFBQWEsQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUNsQyxPQUFPLFdBQVcsQ0FBQztBQUNyQixDQUFDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgcmVwbGFjZUluQXJyYXlXaXRoQ2xvbmUgPSA8VCA9IGFueT4oYXJyOiBUW10sIGZpbmRNZXRoOiAodDogVCkgPT4gYm9vbGVhbiwgYWN0aW9uT25DbG9uZTogKHQ6IFQpID0+IGFueSA9ICgodDogVCkgPT4ge30pKTogVFtdID0+IHtcclxuICBjb25zdCBpbmRleCA9IGFyci5maW5kSW5kZXgoZmluZE1ldGgpO1xyXG4gIGNvbnN0IGNsb25lZEFycmF5ID0gWy4uLmFycl07XHJcbiAgY29uc3QgdCA9IGNsb25lZEFycmF5W2luZGV4XTtcclxuICBjbG9uZWRBcnJheVtpbmRleF0gPVxyXG4gICAgdCAhPSBudWxsICYmIHR5cGVvZiB0ID09PSAnb2JqZWN0JyA/XHJcbiAgICAgIEFycmF5LmlzQXJyYXkodCkgP1xyXG4gICAgICAgIFsuLi50XSBhcyBhbnlcclxuICAgICAgICA6IHsgLi4udCB9XHJcbiAgICAgIDogdDtcclxuICBhY3Rpb25PbkNsb25lKGNsb25lZEFycmF5W2luZGV4XSk7XHJcbiAgcmV0dXJuIGNsb25lZEFycmF5O1xyXG59Il19
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { Directive, Input } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class AutoFocusDirective {
|
|
4
|
+
constructor(elementRef) {
|
|
5
|
+
this.elementRef = elementRef;
|
|
6
|
+
this.autoFocus = true;
|
|
7
|
+
}
|
|
8
|
+
ngAfterViewInit() {
|
|
9
|
+
if (this.autoFocus) {
|
|
10
|
+
setTimeout(() => {
|
|
11
|
+
this.elementRef.nativeElement.focus();
|
|
12
|
+
});
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: AutoFocusDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
16
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.1.2", type: AutoFocusDirective, isStandalone: true, selector: "[autoFocus]", inputs: { autoFocus: "autoFocus" }, ngImport: i0 }); }
|
|
17
|
+
}
|
|
18
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: AutoFocusDirective, decorators: [{
|
|
19
|
+
type: Directive,
|
|
20
|
+
args: [{
|
|
21
|
+
selector: '[autoFocus]',
|
|
22
|
+
standalone: true,
|
|
23
|
+
}]
|
|
24
|
+
}], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { autoFocus: [{
|
|
25
|
+
type: Input
|
|
26
|
+
}] } });
|
|
27
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0by1mb2N1cy5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXV0aWxpdGllcy9zcmMvdXRpbGl0aWVzL2RpcmVjdGl2ZXMvYXV0by1mb2N1cy5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBNkIsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQU01RSxNQUFNLE9BQU8sa0JBQWtCO0lBRzdCLFlBQW9CLFVBQXNCO1FBQXRCLGVBQVUsR0FBVixVQUFVLENBQVk7UUFEakMsY0FBUyxHQUFHLElBQUksQ0FBQztJQUNvQixDQUFDO0lBRS9DLGVBQWU7UUFDYixJQUFHLElBQUksQ0FBQyxTQUFTLEVBQUMsQ0FBQztZQUNqQixVQUFVLENBQUMsR0FBRyxFQUFFO2dCQUNkLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ3hDLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztJQUNILENBQUM7OEdBWFUsa0JBQWtCO2tHQUFsQixrQkFBa0I7OzJGQUFsQixrQkFBa0I7a0JBSjlCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGFBQWE7b0JBQ3ZCLFVBQVUsRUFBRSxJQUFJO2lCQUNqQjsrRUFHVSxTQUFTO3NCQUFqQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBBZnRlclZpZXdJbml0LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgc2VsZWN0b3I6ICdbYXV0b0ZvY3VzXScsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEF1dG9Gb2N1c0RpcmVjdGl2ZSBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xyXG5cclxuICBASW5wdXQoKSBhdXRvRm9jdXMgPSB0cnVlO1xyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZWxlbWVudFJlZjogRWxlbWVudFJlZikgeyB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuICAgIGlmKHRoaXMuYXV0b0ZvY3VzKXtcclxuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { Directive } from '@angular/core';
|
|
2
|
+
import { Subject } from 'rxjs';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class ClickEmitterDirective extends Subject {
|
|
5
|
+
constructor() {
|
|
6
|
+
super();
|
|
7
|
+
}
|
|
8
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: ClickEmitterDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
9
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.1.2", type: ClickEmitterDirective, isStandalone: true, selector: "[clickEmitter]", host: { listeners: { "click": "next(true)" } }, exportAs: ["clickEmitter"], usesInheritance: true, ngImport: i0 }); }
|
|
10
|
+
}
|
|
11
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: ClickEmitterDirective, decorators: [{
|
|
12
|
+
type: Directive,
|
|
13
|
+
args: [{
|
|
14
|
+
selector: '[clickEmitter]',
|
|
15
|
+
exportAs: 'clickEmitter',
|
|
16
|
+
host: {
|
|
17
|
+
'(click)': 'next(true)'
|
|
18
|
+
},
|
|
19
|
+
standalone: true,
|
|
20
|
+
}]
|
|
21
|
+
}], ctorParameters: () => [] });
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpY2tFbWl0dGVyRGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci11dGlsaXRpZXMvc3JjL3V0aWxpdGllcy9kaXJlY3RpdmVzL2NsaWNrRW1pdHRlckRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7O0FBVTVCLE1BQU0sT0FBTyxxQkFBc0IsU0FBUSxPQUFnQjtJQUM1RDtRQUNFLEtBQUssRUFBRSxDQUFDO0lBQ1YsQ0FBQzs4R0FIYSxxQkFBcUI7a0dBQXJCLHFCQUFxQjs7MkZBQXJCLHFCQUFxQjtrQkFQcEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsZ0JBQWdCO29CQUMxQixRQUFRLEVBQUUsY0FBYztvQkFDeEIsSUFBSSxFQUFFO3dCQUNKLFNBQVMsRUFBRSxZQUFZO3FCQUN4QjtvQkFDRCxVQUFVLEVBQUUsSUFBSTtpQkFDakIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5cclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiAnW2NsaWNrRW1pdHRlcl0nLFxyXG4gIGV4cG9ydEFzOiAnY2xpY2tFbWl0dGVyJyxcclxuICBob3N0OiB7XHJcbiAgICAnKGNsaWNrKSc6ICduZXh0KHRydWUpJ1xyXG4gIH0sXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxufSkgZXhwb3J0IGNsYXNzIENsaWNrRW1pdHRlckRpcmVjdGl2ZSBleHRlbmRzIFN1YmplY3Q8Ym9vbGVhbj4ge1xyXG4gIGNvbnN0cnVjdG9yKCkge1xyXG4gICAgc3VwZXIoKTtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { Directive, Input } from '@angular/core';
|
|
2
|
+
import { Subject } from 'rxjs';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class ClickSubjectDirective extends Subject {
|
|
5
|
+
constructor() {
|
|
6
|
+
super();
|
|
7
|
+
}
|
|
8
|
+
set clickSubject(val) {
|
|
9
|
+
this._val = val;
|
|
10
|
+
}
|
|
11
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: ClickSubjectDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
12
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.1.2", type: ClickSubjectDirective, isStandalone: true, selector: "[clickSubject]", inputs: { clickSubject: "clickSubject" }, host: { listeners: { "click": "next(this._val)" } }, exportAs: ["clickSubject"], usesInheritance: true, ngImport: i0 }); }
|
|
13
|
+
}
|
|
14
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: ClickSubjectDirective, decorators: [{
|
|
15
|
+
type: Directive,
|
|
16
|
+
args: [{
|
|
17
|
+
selector: '[clickSubject]',
|
|
18
|
+
exportAs: 'clickSubject',
|
|
19
|
+
host: {
|
|
20
|
+
'(click)': 'next(this._val)'
|
|
21
|
+
},
|
|
22
|
+
standalone: true,
|
|
23
|
+
}]
|
|
24
|
+
}], ctorParameters: () => [], propDecorators: { clickSubject: [{
|
|
25
|
+
type: Input,
|
|
26
|
+
args: ['clickSubject']
|
|
27
|
+
}] } });
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpY2tTdWJqZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci11dGlsaXRpZXMvc3JjL3V0aWxpdGllcy9kaXJlY3RpdmVzL2NsaWNrU3ViamVjdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQVM1QixNQUFNLE9BQU8scUJBQW1DLFNBQVEsT0FBVTtJQUNuRTtRQUNFLEtBQUssRUFBRSxDQUFDO0lBQ1YsQ0FBQztJQUdELElBQTJCLFlBQVksQ0FBRSxHQUFNO1FBQzdDLElBQUksQ0FBQyxJQUFJLEdBQUcsR0FBRyxDQUFDO0lBQ2xCLENBQUM7OEdBUmEscUJBQXFCO2tHQUFyQixxQkFBcUI7OzJGQUFyQixxQkFBcUI7a0JBUHBDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGdCQUFnQjtvQkFDMUIsUUFBUSxFQUFFLGNBQWM7b0JBQ3hCLElBQUksRUFBRTt3QkFDSixTQUFTLEVBQUUsaUJBQWlCO3FCQUM3QjtvQkFDRCxVQUFVLEVBQUUsSUFBSTtpQkFDakI7d0RBTTRCLFlBQVk7c0JBQXRDLEtBQUs7dUJBQUMsY0FBYyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgc2VsZWN0b3I6ICdbY2xpY2tTdWJqZWN0XScsXHJcbiAgZXhwb3J0QXM6ICdjbGlja1N1YmplY3QnLFxyXG4gIGhvc3Q6IHtcclxuICAgICcoY2xpY2spJzogJ25leHQodGhpcy5fdmFsKSdcclxuICB9LFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbn0pIGV4cG9ydCBjbGFzcyBDbGlja1N1YmplY3REaXJlY3RpdmU8VCA9IGJvb2xlYW4+IGV4dGVuZHMgU3ViamVjdDxUPiB7XHJcbiAgY29uc3RydWN0b3IoICkge1xyXG4gICAgc3VwZXIoKTtcclxuICB9XHJcbiAgX3ZhbCE6IFQ7XHJcblxyXG4gIEBJbnB1dCgnY2xpY2tTdWJqZWN0Jykgc2V0IGNsaWNrU3ViamVjdCggdmFsOiBUKSB7XHJcbiAgICB0aGlzLl92YWwgPSB2YWw7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|