@one-paragon/angular-utilities 0.3.11-beta.1 → 0.4.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 +27 -0
- package/esm2022/http-request-state/HttpRequestStateStore.mjs +98 -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 +5 -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/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 +49 -0
- package/esm2022/table-builder/classes/TableState.mjs +44 -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 +86 -0
- package/esm2022/table-builder/classes/table-builder.mjs +41 -0
- package/esm2022/table-builder/classes/table-store.mjs +320 -0
- package/esm2022/table-builder/components/array-column.component.mjs +57 -0
- package/esm2022/table-builder/components/column-builder/column-builder.component.mjs +106 -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 +52 -0
- package/esm2022/table-builder/components/generic-table/generic-table.component.mjs +192 -0
- package/esm2022/table-builder/components/generic-table/paginator.component.mjs +80 -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/scroll-strategy.mjs +63 -0
- package/esm2022/table-builder/components/sort-menu/sort-menu.component-store.mjs +43 -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 +56 -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 +291 -0
- package/esm2022/table-builder/components/table-container/tableProps.mjs +7 -0
- package/esm2022/table-builder/components/table-container/virtual-scroll-container.mjs +105 -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 +60 -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 +45 -0
- package/esm2022/table-builder/ngrx/tableBuilderStateStore.mjs +115 -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 +88 -0
- package/esm2022/table-builder/services/link-creator.service.mjs +51 -0
- package/esm2022/table-builder/services/table-template-service.mjs +55 -0
- package/esm2022/table-builder/services/transform-creator.mjs +100 -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 +139 -0
- package/esm2022/utilities/directives/mat-toggle-group-directive.mjs +60 -0
- package/esm2022/utilities/directives/prevent-enter.directive.mjs +20 -0
- package/esm2022/utilities/directives/stop-propagation.directive.mjs +26 -0
- package/esm2022/utilities/directives/styler.mjs +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 +5180 -0
- package/fesm2022/one-paragon-angular-utilities.mjs.map +1 -0
- package/http-request-state/HttpRequestStateFactory.d.ts +15 -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/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} +1 -1
- package/http-request-state/rxjs/getRequestorBody.d.ts +3 -0
- package/http-request-state/rxjs/getRequestorState.d.ts +3 -0
- 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 +36 -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} +4 -4
- package/rxjs/mapError.d.ts +2 -0
- package/rxjs/rxjs-operators.d.ts +13 -0
- package/rxjs/subjectifier.d.ts +9 -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 +11 -0
- package/table-builder/classes/TableState.d.ts +52 -0
- package/table-builder/classes/filter-info.d.ts +127 -0
- package/table-builder/classes/table-builder-general-settings.d.ts +55 -0
- package/table-builder/classes/table-builder.d.ts +12 -0
- package/table-builder/classes/table-store.d.ts +127 -0
- package/table-builder/components/array-column.component.d.ts +15 -0
- package/table-builder/components/column-builder/column-builder.component.d.ts +47 -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 +62 -0
- package/table-builder/components/generic-table/paginator.component.d.ts +26 -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/scroll-strategy.d.ts +23 -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 -30
- package/table-builder/components/table-container/table-container.d.ts +70 -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 +15 -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 +19 -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 +19 -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} +2 -3
- package/{src/table-builder/interfaces/dictionary.ts → table-builder/interfaces/dictionary.d.ts} +3 -3
- package/table-builder/interfaces/report-def.d.ts +148 -0
- package/table-builder/ngrx/tableBuilderStateStore.d.ts +62 -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 +46 -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 -29
- package/src/http-request-state/HttpRequestStateStore.ts +0 -147
- 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 -50
- 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/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 -83
- package/src/table-builder/classes/filter-info.ts +0 -131
- package/src/table-builder/classes/table-builder-general-settings.ts +0 -90
- package/src/table-builder/classes/table-builder.ts +0 -52
- package/src/table-builder/classes/table-store.ts +0 -394
- package/src/table-builder/components/array-column.component.ts +0 -36
- package/src/table-builder/components/column-builder/column-builder.component.html +0 -58
- 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 -117
- package/src/table-builder/components/column-builder/column-helpers.ts +0 -38
- 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 -55
- 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 -220
- package/src/table-builder/components/generic-table/paginator.component.ts +0 -94
- 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 -98
- 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/scroll-strategy.ts +0 -82
- package/src/table-builder/components/sort-menu/sort-menu.component-store.ts +0 -62
- 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 -45
- 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 -69
- 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 -117
- package/src/table-builder/components/table-container/table-container.spec.ts +0 -154
- package/src/table-builder/components/table-container/table-container.ts +0 -325
- package/src/table-builder/components/table-container/tableProps.ts +0 -18
- package/src/table-builder/components/table-container/virtual-scroll-container.ts +0 -126
- 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 -46
- 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 -153
- package/src/table-builder/ngrx/tableBuilderStateStore.ts +0 -143
- 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 -96
- package/src/table-builder/services/link-creator.service.ts +0 -68
- package/src/table-builder/services/table-template-service.ts +0 -55
- package/src/table-builder/services/transform-creator.ts +0 -92
- package/src/table-builder/specs/table-custom-filters.spec.ts +0 -262
- package/src/table-builder/styles/collapser.styles.scss +0 -15
- 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 -142
- 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
- /package/{src/http-request-state/directives/index.ts → http-request-state/directives/index.d.ts} +0 -0
- /package/{src/http-request-state/rxjs/index.ts → http-request-state/rxjs/index.d.ts} +0 -0
- /package/{src/table-builder/classes/display-col.ts → table-builder/classes/display-col.d.ts} +0 -0
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import { Directive, Input } from '@angular/core';
|
|
2
|
+
import { defaultShareReplay } from '../../rxjs/defaultShareReplay';
|
|
3
|
+
import { isObservable, Subject } from 'rxjs';
|
|
4
|
+
import { map, switchAll } from 'rxjs/operators';
|
|
5
|
+
import { HttpRequestStatus } from '../types';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
export class HttpRequestStateDirective {
|
|
8
|
+
set stateStore(store) {
|
|
9
|
+
if (isObservable(store)) {
|
|
10
|
+
this.subject.next(store);
|
|
11
|
+
}
|
|
12
|
+
else {
|
|
13
|
+
this.subject.next(store.state$.pipe(map(state => state.response)));
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
constructor(templateRef, viewContainer) {
|
|
17
|
+
this.templateRef = templateRef;
|
|
18
|
+
this.viewContainer = viewContainer;
|
|
19
|
+
this.ViewContext = {
|
|
20
|
+
$implicit: undefined,
|
|
21
|
+
state: undefined,
|
|
22
|
+
status: {
|
|
23
|
+
inProgress: false,
|
|
24
|
+
notStarted: true,
|
|
25
|
+
success: false,
|
|
26
|
+
error: false,
|
|
27
|
+
}
|
|
28
|
+
};
|
|
29
|
+
this.subject = new Subject();
|
|
30
|
+
this.state = this.subject.pipe(switchAll(), defaultShareReplay());
|
|
31
|
+
this.hooks = [];
|
|
32
|
+
this.viewContainer.createEmbeddedView(this.templateRef, this.ViewContext);
|
|
33
|
+
this.subscription = this.state.subscribe(state => {
|
|
34
|
+
this.ViewContext.$implicit = state;
|
|
35
|
+
this.ViewContext.state = state;
|
|
36
|
+
this.ViewContext.status.inProgress = state.status === HttpRequestStatus.inProgress;
|
|
37
|
+
this.ViewContext.status.notStarted = state.status === HttpRequestStatus.notStarted;
|
|
38
|
+
this.ViewContext.status.success = state.status === HttpRequestStatus.success;
|
|
39
|
+
this.ViewContext.status.error = state.status === HttpRequestStatus.fail;
|
|
40
|
+
this.hooks.forEach(hook => hook(state));
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
ngOnDestroy() {
|
|
44
|
+
this.viewContainer.clear();
|
|
45
|
+
this.subscription.unsubscribe();
|
|
46
|
+
}
|
|
47
|
+
static ngTemplateContextGuard(dir, ctx) {
|
|
48
|
+
return true;
|
|
49
|
+
}
|
|
50
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: HttpRequestStateDirective, deps: [{ token: i0.TemplateRef }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
51
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.1.2", type: HttpRequestStateDirective, isStandalone: true, selector: "[httpRequestState]", inputs: { stateStore: ["httpRequestState", "stateStore"] }, ngImport: i0 }); }
|
|
52
|
+
}
|
|
53
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: HttpRequestStateDirective, decorators: [{
|
|
54
|
+
type: Directive,
|
|
55
|
+
args: [{ selector: '[httpRequestState]', standalone: true }]
|
|
56
|
+
}], ctorParameters: () => [{ type: i0.TemplateRef }, { type: i0.ViewContainerRef }], propDecorators: { stateStore: [{
|
|
57
|
+
type: Input,
|
|
58
|
+
args: ['httpRequestState']
|
|
59
|
+
}] } });
|
|
60
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVxdWVzdC1zdGF0ZS1kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXV0aWxpdGllcy9zcmMvaHR0cC1yZXF1ZXN0LXN0YXRlL2RpcmVjdGl2ZXMvcmVxdWVzdC1zdGF0ZS1kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQWlDLE1BQU0sZUFBZSxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ25FLE9BQU8sRUFBRSxZQUFZLEVBQWMsT0FBTyxFQUFrQixNQUFNLE1BQU0sQ0FBQztBQUN6RSxPQUFPLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRWhELE9BQU8sRUFBb0IsaUJBQWlCLEVBQUUsTUFBTSxVQUFVLENBQUM7O0FBYy9ELE1BQU0sT0FBTyx5QkFBeUI7SUFtQnBDLElBQStCLFVBQVUsQ0FBQyxLQUErRTtRQUN2SCxJQUFJLFlBQVksQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUN2QixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUMxQjthQUFNO1lBQ0wsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUNwRTtJQUVILENBQUM7SUFDRCxZQUNVLFdBQTZCLEVBQzdCLGFBQStCO1FBRC9CLGdCQUFXLEdBQVgsV0FBVyxDQUFrQjtRQUM3QixrQkFBYSxHQUFiLGFBQWEsQ0FBa0I7UUEzQmhDLGdCQUFXLEdBQW1DO1lBQ3JELFNBQVMsRUFBRSxTQUFTO1lBQ3BCLEtBQUssRUFBRSxTQUFTO1lBQ2hCLE1BQU0sRUFBRTtnQkFDTixVQUFVLEVBQUUsS0FBSztnQkFDakIsVUFBVSxFQUFFLElBQUk7Z0JBQ2hCLE9BQU8sRUFBRSxLQUFLO2dCQUNkLEtBQUssRUFBRSxLQUFLO2FBQ2I7U0FDRixDQUFDO1FBR0YsWUFBTyxHQUFHLElBQUksT0FBTyxFQUFtQyxDQUFDO1FBQ3pELFVBQUssR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsRUFBRSxrQkFBa0IsRUFBRSxDQUFDLENBQUM7UUFFN0QsVUFBSyxHQUE2QyxFQUFFLENBQUM7UUFjbkQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUMxRSxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQy9DLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztZQUNuQyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7WUFDL0IsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQyxNQUFNLEtBQUssaUJBQWlCLENBQUMsVUFBVSxDQUFDO1lBQ25GLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUMsTUFBTSxLQUFLLGlCQUFpQixDQUFDLFVBQVUsQ0FBQztZQUNuRixJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDLE1BQU0sS0FBSyxpQkFBaUIsQ0FBQyxPQUFPLENBQUM7WUFDN0UsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxNQUFNLEtBQUssaUJBQWlCLENBQUMsSUFBSSxDQUFDO1lBQ3hFLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDMUMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBR0QsV0FBVztRQUNULElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDM0IsSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNsQyxDQUFDO0lBRUQsTUFBTSxDQUFDLHNCQUFzQixDQUFPLEdBQXlDLEVBQUUsR0FBUTtRQUNyRixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7OEdBbkRVLHlCQUF5QjtrR0FBekIseUJBQXlCOzsyRkFBekIseUJBQXlCO2tCQURyQyxTQUFTO21CQUFDLEVBQUUsUUFBUSxFQUFFLG9CQUFvQixFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUU7K0dBb0I5QixVQUFVO3NCQUF4QyxLQUFLO3VCQUFDLGtCQUFrQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSW5wdXQsIFRlbXBsYXRlUmVmLCBWaWV3Q29udGFpbmVyUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IGRlZmF1bHRTaGFyZVJlcGxheSB9IGZyb20gJy4uLy4uL3J4anMvZGVmYXVsdFNoYXJlUmVwbGF5JztcclxuaW1wb3J0IHsgaXNPYnNlcnZhYmxlLCBPYnNlcnZhYmxlLCBTdWJqZWN0LCBVbnN1YnNjcmliYWJsZSB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBtYXAsIHN3aXRjaEFsbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgSHR0cFJlcXVlc3RTdGF0ZVN0b3JlIH0gZnJvbSAnLi4vSHR0cFJlcXVlc3RTdGF0ZVN0b3JlJztcclxuaW1wb3J0IHsgSHR0cFJlcXVlc3RTdGF0ZSwgSHR0cFJlcXVlc3RTdGF0dXMgfSBmcm9tICcuLi90eXBlcyc7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEh0dHBSZXF1ZXN0U3RhdGVWaWV3Q29udGV4dDxUPiB7XHJcbiAgJGltcGxpY2l0PzogSHR0cFJlcXVlc3RTdGF0ZUFueTxUPjtcclxuICBzdGF0ZT86IEh0dHBSZXF1ZXN0U3RhdGVBbnk8VD47XHJcbiAgc3RhdHVzOiB7XHJcbiAgICBpblByb2dyZXNzOiBib29sZWFuO1xyXG4gICAgbm90U3RhcnRlZDogYm9vbGVhbjtcclxuICAgIHN1Y2Nlc3M6IGJvb2xlYW47XHJcbiAgICBlcnJvcjogYm9vbGVhbjtcclxuICB9O1xyXG59XHJcblxyXG5ARGlyZWN0aXZlKHsgc2VsZWN0b3I6ICdbaHR0cFJlcXVlc3RTdGF0ZV0nLCBzdGFuZGFsb25lOiB0cnVlIH0pXHJcbmV4cG9ydCBjbGFzcyBIdHRwUmVxdWVzdFN0YXRlRGlyZWN0aXZlPFRQYXJhbSBleHRlbmRzIGFueVtdLCBWLCBSLCBUID0gUiBleHRlbmRzIG51bGwgPyBWIDogUj4ge1xyXG5cclxuICByZWFkb25seSBWaWV3Q29udGV4dDogSHR0cFJlcXVlc3RTdGF0ZVZpZXdDb250ZXh0PFQ+ID0ge1xyXG4gICAgJGltcGxpY2l0OiB1bmRlZmluZWQsXHJcbiAgICBzdGF0ZTogdW5kZWZpbmVkLFxyXG4gICAgc3RhdHVzOiB7XHJcbiAgICAgIGluUHJvZ3Jlc3M6IGZhbHNlLFxyXG4gICAgICBub3RTdGFydGVkOiB0cnVlLFxyXG4gICAgICBzdWNjZXNzOiBmYWxzZSxcclxuICAgICAgZXJyb3I6IGZhbHNlLFxyXG4gICAgfVxyXG4gIH07XHJcblxyXG5cclxuICBzdWJqZWN0ID0gbmV3IFN1YmplY3Q8T2JzZXJ2YWJsZTxIdHRwUmVxdWVzdFN0YXRlPFQ+Pj4oKTtcclxuICBzdGF0ZSA9IHRoaXMuc3ViamVjdC5waXBlKHN3aXRjaEFsbCgpLCBkZWZhdWx0U2hhcmVSZXBsYXkoKSk7XHJcbiAgc3Vic2NyaXB0aW9uOiBVbnN1YnNjcmliYWJsZTtcclxuICBob29rczogKChzdGF0ZTogSHR0cFJlcXVlc3RTdGF0ZTxUPikgPT4gdm9pZClbXSA9IFtdO1xyXG5cclxuICBASW5wdXQoJ2h0dHBSZXF1ZXN0U3RhdGUnKSBzZXQgc3RhdGVTdG9yZShzdG9yZTogSHR0cFJlcXVlc3RTdGF0ZVN0b3JlPFRQYXJhbSwgViwgUiwgVD4gfCBPYnNlcnZhYmxlPEh0dHBSZXF1ZXN0U3RhdGU8VD4+KSB7XHJcbiAgICBpZiAoaXNPYnNlcnZhYmxlKHN0b3JlKSkge1xyXG4gICAgICB0aGlzLnN1YmplY3QubmV4dChzdG9yZSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnN1YmplY3QubmV4dChzdG9yZS5zdGF0ZSQucGlwZShtYXAoc3RhdGUgPT4gc3RhdGUucmVzcG9uc2UpKSk7XHJcbiAgICB9XHJcblxyXG4gIH1cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgdGVtcGxhdGVSZWY6IFRlbXBsYXRlUmVmPGFueT4sXHJcbiAgICBwcml2YXRlIHZpZXdDb250YWluZXI6IFZpZXdDb250YWluZXJSZWYsXHJcbiAgKSB7XHJcbiAgICB0aGlzLnZpZXdDb250YWluZXIuY3JlYXRlRW1iZWRkZWRWaWV3KHRoaXMudGVtcGxhdGVSZWYsIHRoaXMuVmlld0NvbnRleHQpO1xyXG4gICAgdGhpcy5zdWJzY3JpcHRpb24gPSB0aGlzLnN0YXRlLnN1YnNjcmliZShzdGF0ZSA9PiB7XHJcbiAgICAgIHRoaXMuVmlld0NvbnRleHQuJGltcGxpY2l0ID0gc3RhdGU7XHJcbiAgICAgIHRoaXMuVmlld0NvbnRleHQuc3RhdGUgPSBzdGF0ZTtcclxuICAgICAgdGhpcy5WaWV3Q29udGV4dC5zdGF0dXMuaW5Qcm9ncmVzcyA9IHN0YXRlLnN0YXR1cyA9PT0gSHR0cFJlcXVlc3RTdGF0dXMuaW5Qcm9ncmVzcztcclxuICAgICAgdGhpcy5WaWV3Q29udGV4dC5zdGF0dXMubm90U3RhcnRlZCA9IHN0YXRlLnN0YXR1cyA9PT0gSHR0cFJlcXVlc3RTdGF0dXMubm90U3RhcnRlZDtcclxuICAgICAgdGhpcy5WaWV3Q29udGV4dC5zdGF0dXMuc3VjY2VzcyA9IHN0YXRlLnN0YXR1cyA9PT0gSHR0cFJlcXVlc3RTdGF0dXMuc3VjY2VzcztcclxuICAgICAgdGhpcy5WaWV3Q29udGV4dC5zdGF0dXMuZXJyb3IgPSBzdGF0ZS5zdGF0dXMgPT09IEh0dHBSZXF1ZXN0U3RhdHVzLmZhaWw7XHJcbiAgICAgIHRoaXMuaG9va3MuZm9yRWFjaChob29rID0+IGhvb2soc3RhdGUpKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcblxyXG4gIG5nT25EZXN0cm95KCkge1xyXG4gICAgdGhpcy52aWV3Q29udGFpbmVyLmNsZWFyKCk7XHJcbiAgICB0aGlzLnN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xyXG4gIH1cclxuXHJcbiAgc3RhdGljIG5nVGVtcGxhdGVDb250ZXh0R3VhcmQ8ViwgUj4oZGlyOiBIdHRwUmVxdWVzdFN0YXRlRGlyZWN0aXZlPGFueSwgViwgUj4sIGN0eDogYW55KTogY3R4IGlzIEh0dHBSZXF1ZXN0U3RhdGVWaWV3Q29udGV4dDxSIGV4dGVuZHMgbnVsbCA/IFYgOiBSPiB7XHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcblxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBIdHRwUmVxdWVzdFN0YXRlQW55PFQ+ID0ge1xyXG4gIHN0YXR1czogSHR0cFJlcXVlc3RTdGF0dXM7XHJcbiAgYm9keT86IFQ7XHJcbiAgZXJyb3I/OiBhbnk7XHJcbn1cclxuIl19
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { HttpRequestStatus } from "./types";
|
|
2
|
+
export function isErrorState(state) {
|
|
3
|
+
return state.status === HttpRequestStatus.fail;
|
|
4
|
+
}
|
|
5
|
+
export function isSuccessState(state) {
|
|
6
|
+
return state.status === HttpRequestStatus.success;
|
|
7
|
+
}
|
|
8
|
+
export function isSuccessOrErrorState(state) {
|
|
9
|
+
return state.status === HttpRequestStatus.success || state.status === HttpRequestStatus.fail;
|
|
10
|
+
}
|
|
11
|
+
export function createSuccess(body) {
|
|
12
|
+
return { status: HttpRequestStatus.success, body };
|
|
13
|
+
}
|
|
14
|
+
export function createFailure(error) {
|
|
15
|
+
return { status: HttpRequestStatus.fail, error };
|
|
16
|
+
}
|
|
17
|
+
export const notStarted = { status: HttpRequestStatus.notStarted };
|
|
18
|
+
export const inProgress = { status: HttpRequestStatus.inProgress };
|
|
19
|
+
export function statusIsSuccessOrInProgress(status) {
|
|
20
|
+
return [HttpRequestStatus.success, HttpRequestStatus.inProgress].includes(status);
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdXRpbGl0aWVzL3NyYy9odHRwLXJlcXVlc3Qtc3RhdGUvaGVscGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQTRILGlCQUFpQixFQUFFLE1BQU0sU0FBUyxDQUFDO0FBRXRLLE1BQU0sVUFBVSxZQUFZLENBQUksS0FBMEI7SUFDeEQsT0FBTyxLQUFLLENBQUMsTUFBTSxLQUFLLGlCQUFpQixDQUFDLElBQUksQ0FBQztBQUNqRCxDQUFDO0FBRUQsTUFBTSxVQUFVLGNBQWMsQ0FBSSxLQUEwQjtJQUMxRCxPQUFPLEtBQUssQ0FBQyxNQUFNLEtBQUssaUJBQWlCLENBQUMsT0FBTyxDQUFDO0FBQ3BELENBQUM7QUFFRCxNQUFNLFVBQVUscUJBQXFCLENBQUksS0FBMEI7SUFDakUsT0FBTyxLQUFLLENBQUMsTUFBTSxLQUFLLGlCQUFpQixDQUFDLE9BQU8sSUFBSSxLQUFLLENBQUMsTUFBTSxLQUFLLGlCQUFpQixDQUFDLElBQUksQ0FBQztBQUMvRixDQUFDO0FBRUQsTUFBTSxVQUFVLGFBQWEsQ0FBSSxJQUFPO0lBQ3RDLE9BQU8sRUFBRSxNQUFNLEVBQUUsaUJBQWlCLENBQUMsT0FBTyxFQUFFLElBQUksRUFBRSxDQUFDO0FBQ3JELENBQUM7QUFFRCxNQUFNLFVBQVUsYUFBYSxDQUFDLEtBQVU7SUFDdEMsT0FBTyxFQUFFLE1BQU0sRUFBRSxpQkFBaUIsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLENBQUM7QUFDbkQsQ0FBQztBQUVELE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBK0IsRUFBRSxNQUFNLEVBQUUsaUJBQWlCLENBQUMsVUFBVSxFQUFFLENBQUM7QUFHL0YsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUErQixFQUFFLE1BQU0sRUFBRSxpQkFBaUIsQ0FBQyxVQUFVLEVBQUUsQ0FBQztBQUUvRixNQUFNLFVBQVUsMkJBQTJCLENBQUUsTUFBeUI7SUFDcEUsT0FBTyxDQUFDLGlCQUFpQixDQUFDLE9BQU8sRUFBRSxpQkFBaUIsQ0FBQyxVQUFVLENBQUMsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUM7QUFDcEYsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBSZXF1ZXN0U3RhdGUsIEh0dHBSZXF1ZXN0U3RhdGVFcnJvciwgSHR0cFJlcXVlc3RTdGF0ZUluUHJvZ3Jlc3MsIEh0dHBSZXF1ZXN0U3RhdGVOb3RTdGFydGVkLCBIdHRwUmVxdWVzdFN0YXRlU3VjY2VzcywgSHR0cFJlcXVlc3RTdGF0dXMgfSBmcm9tIFwiLi90eXBlc1wiO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGlzRXJyb3JTdGF0ZTxUPihzdGF0ZTogSHR0cFJlcXVlc3RTdGF0ZTxUPik6IHN0YXRlIGlzIEh0dHBSZXF1ZXN0U3RhdGVFcnJvciB7XHJcbiAgcmV0dXJuIHN0YXRlLnN0YXR1cyA9PT0gSHR0cFJlcXVlc3RTdGF0dXMuZmFpbDtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGlzU3VjY2Vzc1N0YXRlPFQ+KHN0YXRlOiBIdHRwUmVxdWVzdFN0YXRlPFQ+KTogc3RhdGUgaXMgSHR0cFJlcXVlc3RTdGF0ZVN1Y2Nlc3M8VD4ge1xyXG4gIHJldHVybiBzdGF0ZS5zdGF0dXMgPT09IEh0dHBSZXF1ZXN0U3RhdHVzLnN1Y2Nlc3M7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBpc1N1Y2Nlc3NPckVycm9yU3RhdGU8VD4oc3RhdGU6IEh0dHBSZXF1ZXN0U3RhdGU8VD4pOiBzdGF0ZSBpcyAoSHR0cFJlcXVlc3RTdGF0ZVN1Y2Nlc3M8VD4gfCBIdHRwUmVxdWVzdFN0YXRlRXJyb3IpIHtcclxuICByZXR1cm4gc3RhdGUuc3RhdHVzID09PSBIdHRwUmVxdWVzdFN0YXR1cy5zdWNjZXNzIHx8IHN0YXRlLnN0YXR1cyA9PT0gSHR0cFJlcXVlc3RTdGF0dXMuZmFpbDtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZVN1Y2Nlc3M8VD4oYm9keTogVCk6IEh0dHBSZXF1ZXN0U3RhdGVTdWNjZXNzPFQ+IHtcclxuICByZXR1cm4geyBzdGF0dXM6IEh0dHBSZXF1ZXN0U3RhdHVzLnN1Y2Nlc3MsIGJvZHkgfTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZUZhaWx1cmUoZXJyb3I6IGFueSk6IEh0dHBSZXF1ZXN0U3RhdGVFcnJvciB7XHJcbiAgcmV0dXJuIHsgc3RhdHVzOiBIdHRwUmVxdWVzdFN0YXR1cy5mYWlsLCBlcnJvciB9O1xyXG59XHJcblxyXG5leHBvcnQgY29uc3Qgbm90U3RhcnRlZDogSHR0cFJlcXVlc3RTdGF0ZU5vdFN0YXJ0ZWQgPSB7IHN0YXR1czogSHR0cFJlcXVlc3RTdGF0dXMubm90U3RhcnRlZCB9O1xyXG5cclxuXHJcbmV4cG9ydCBjb25zdCBpblByb2dyZXNzOiBIdHRwUmVxdWVzdFN0YXRlSW5Qcm9ncmVzcyA9IHsgc3RhdHVzOiBIdHRwUmVxdWVzdFN0YXR1cy5pblByb2dyZXNzIH07XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gc3RhdHVzSXNTdWNjZXNzT3JJblByb2dyZXNzKCBzdGF0dXM6IEh0dHBSZXF1ZXN0U3RhdHVzKSB7XHJcbiAgcmV0dXJuIFtIdHRwUmVxdWVzdFN0YXR1cy5zdWNjZXNzLCBIdHRwUmVxdWVzdFN0YXR1cy5pblByb2dyZXNzXS5pbmNsdWRlcyhzdGF0dXMpO1xyXG59Il19
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { map, startWith, switchMap } from 'rxjs/operators';
|
|
2
|
+
import { getRequestorBody } from './rxjs/getRequestorBody';
|
|
3
|
+
import { getRequestorStatus } from './rxjs/getRequestorState';
|
|
4
|
+
import { mapError } from '../rxjs/mapError';
|
|
5
|
+
import { defaultShareReplay } from '../rxjs/defaultShareReplay';
|
|
6
|
+
import { of, ReplaySubject } from 'rxjs';
|
|
7
|
+
import { HttpRequestStatus } from './types';
|
|
8
|
+
import { createFailure, createSuccess, inProgress, notStarted } from './helpers';
|
|
9
|
+
export function httpRequest(req) {
|
|
10
|
+
return req.pipe(map(createSuccess), mapError(createFailure), startWith(inProgress), defaultShareReplay());
|
|
11
|
+
}
|
|
12
|
+
export function httpRequestor(req) {
|
|
13
|
+
const request$ = new ReplaySubject(1);
|
|
14
|
+
const httpState$ = request$.pipe(switchMap((params) => httpRequest(req(...params))), startWith(notStarted), defaultShareReplay());
|
|
15
|
+
const request = (...params) => {
|
|
16
|
+
request$.next(params);
|
|
17
|
+
return httpState$;
|
|
18
|
+
};
|
|
19
|
+
return ({
|
|
20
|
+
request,
|
|
21
|
+
httpState$,
|
|
22
|
+
body$: httpState$.pipe(getRequestorBody),
|
|
23
|
+
status$: httpState$.pipe(getRequestorStatus)
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
export function chainRequest(httpState$, request, requestParams) {
|
|
27
|
+
return httpState$.pipe(switchMap(res => {
|
|
28
|
+
if (res.status === HttpRequestStatus.success) {
|
|
29
|
+
const secondReq = httpRequestor(request);
|
|
30
|
+
const param = requestParams(res.body);
|
|
31
|
+
secondReq.request(...param);
|
|
32
|
+
return secondReq.httpState$;
|
|
33
|
+
}
|
|
34
|
+
else {
|
|
35
|
+
return of(res);
|
|
36
|
+
}
|
|
37
|
+
}));
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cC1yZXF1ZXN0LXN0YXRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci11dGlsaXRpZXMvc3JjL2h0dHAtcmVxdWVzdC1zdGF0ZS9odHRwLXJlcXVlc3Qtc3RhdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDOUQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQzVDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2hFLE9BQU8sRUFBYyxFQUFFLEVBQUUsYUFBYSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3JELE9BQU8sRUFBd0MsaUJBQWlCLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDbEYsT0FBTyxFQUFFLGFBQWEsRUFBRSxhQUFhLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQVdqRixNQUFNLFVBQVUsV0FBVyxDQUFVLEdBQWtCO0lBQ3JELE9BQU8sR0FBRyxDQUFDLElBQUksQ0FDYixHQUFHLENBQUMsYUFBYSxDQUFDLEVBQ2xCLFFBQVEsQ0FBQyxhQUFhLENBQUMsRUFDdkIsU0FBUyxDQUFDLFVBQVUsQ0FBQyxFQUNyQixrQkFBa0IsRUFBRSxDQUNyQixDQUFDO0FBQ0osQ0FBQztBQUVELE1BQU0sVUFBVSxhQUFhLENBQTBCLEdBQWlDO0lBQ3RGLE1BQU0sUUFBUSxHQUFHLElBQUksYUFBYSxDQUFjLENBQUMsQ0FBQyxDQUFDO0lBQ25ELE1BQU0sVUFBVSxHQUEwQixRQUFRLENBQUMsSUFBSSxDQUNyRCxTQUFTLENBQUUsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLFdBQVcsQ0FBSSxHQUFHLENBQUMsR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFFLEVBQ3ZELFNBQVMsQ0FBQyxVQUFVLENBQUMsRUFDckIsa0JBQWtCLEVBQUUsQ0FDckIsQ0FBQztJQUNGLE1BQU0sT0FBTyxHQUFHLENBQUMsR0FBRyxNQUFtQixFQUFFLEVBQUU7UUFDekMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUN0QixPQUFPLFVBQVUsQ0FBQztJQUNwQixDQUFDLENBQUM7SUFDRixPQUFPLENBQUM7UUFDTixPQUFPO1FBQ1AsVUFBVTtRQUNWLEtBQUssRUFBRSxVQUFVLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDO1FBQ3hDLE9BQU8sRUFBRSxVQUFVLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDO0tBQzdDLENBQUMsQ0FBQztBQUNMLENBQUM7QUFFRCxNQUFNLFVBQVUsWUFBWSxDQUMxQixVQUEyQyxFQUMzQyxPQUFxQyxFQUNyQyxhQUErRTtJQUUvRSxPQUFPLFVBQVUsQ0FBQyxJQUFJLENBQ3BCLFNBQVMsQ0FBRSxHQUFHLENBQUMsRUFBRTtRQUNmLElBQUcsR0FBRyxDQUFDLE1BQU0sS0FBSyxpQkFBaUIsQ0FBQyxPQUFPLEVBQUU7WUFDM0MsTUFBTSxTQUFTLEdBQUcsYUFBYSxDQUFrQixPQUFPLENBQUMsQ0FBQztZQUMxRCxNQUFNLEtBQUssR0FBRyxhQUFhLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ3RDLFNBQVMsQ0FBQyxPQUFPLENBQUMsR0FBRyxLQUFLLENBQUUsQ0FBQztZQUM3QixPQUFPLFNBQVMsQ0FBQyxVQUFVLENBQUM7U0FDN0I7YUFBTTtZQUNMLE9BQU8sRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQ2hCO0lBQ0gsQ0FBQyxDQUFDLENBQ0gsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBtYXAsIHN0YXJ0V2l0aCwgc3dpdGNoTWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBnZXRSZXF1ZXN0b3JCb2R5IH0gZnJvbSAnLi9yeGpzL2dldFJlcXVlc3RvckJvZHknO1xyXG5pbXBvcnQgeyBnZXRSZXF1ZXN0b3JTdGF0dXMgfSBmcm9tICcuL3J4anMvZ2V0UmVxdWVzdG9yU3RhdGUnO1xyXG5pbXBvcnQgeyBtYXBFcnJvciB9IGZyb20gJy4uL3J4anMvbWFwRXJyb3InO1xyXG5pbXBvcnQgeyBkZWZhdWx0U2hhcmVSZXBsYXkgfSBmcm9tICcuLi9yeGpzL2RlZmF1bHRTaGFyZVJlcGxheSc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUsIG9mLCBSZXBsYXlTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IEh0dHBSZXF1ZXN0RmFjdG9yeSwgSHR0cFJlcXVlc3RTdGF0ZSwgSHR0cFJlcXVlc3RTdGF0dXMgfSBmcm9tICcuL3R5cGVzJztcclxuaW1wb3J0IHsgY3JlYXRlRmFpbHVyZSwgY3JlYXRlU3VjY2VzcywgaW5Qcm9ncmVzcywgbm90U3RhcnRlZCB9IGZyb20gJy4vaGVscGVycyc7XHJcblxyXG5leHBvcnQgdHlwZSBIdHRwUmVxdWVzdFN0YXRlJCA8VD4gPSBPYnNlcnZhYmxlPEh0dHBSZXF1ZXN0U3RhdGU8VD4+O1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBIdHRwUmVxdWVzdG9yIDxSZXMsIFJlcT4ge1xyXG4gIGh0dHBTdGF0ZSQ6IE9ic2VydmFibGU8SHR0cFJlcXVlc3RTdGF0ZTxSZXM+PjtcclxuICBzdGF0dXMkOiBPYnNlcnZhYmxlPEh0dHBSZXF1ZXN0U3RhdHVzPjtcclxuICBib2R5JDogT2JzZXJ2YWJsZTxSZXM+O1xyXG4gIHJlcXVlc3Q6IFJlcTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGh0dHBSZXF1ZXN0PFQgPSBhbnk+KHJlcTogT2JzZXJ2YWJsZTxUPik6IEh0dHBSZXF1ZXN0U3RhdGUkPFQ+IHtcclxuICByZXR1cm4gcmVxLnBpcGUoXHJcbiAgICBtYXAoY3JlYXRlU3VjY2VzcyksXHJcbiAgICBtYXBFcnJvcihjcmVhdGVGYWlsdXJlKSxcclxuICAgIHN0YXJ0V2l0aChpblByb2dyZXNzKSxcclxuICAgIGRlZmF1bHRTaGFyZVJlcGxheSgpXHJcbiAgKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGh0dHBSZXF1ZXN0b3I8VFBhcmFtIGV4dGVuZHMgYW55W10sIFQ+KHJlcTogSHR0cFJlcXVlc3RGYWN0b3J5PFRQYXJhbSxUPiApOiBIdHRwUmVxdWVzdG9yPFQsICguLi5wYXJhbXM6IFsuLi5UUGFyYW1dKSA9PiBPYnNlcnZhYmxlPEh0dHBSZXF1ZXN0U3RhdGU8VD4+PiB7XHJcbiAgY29uc3QgcmVxdWVzdCQgPSBuZXcgUmVwbGF5U3ViamVjdDxbLi4uVFBhcmFtXT4oMSk7XHJcbiAgY29uc3QgaHR0cFN0YXRlJCA6IEh0dHBSZXF1ZXN0U3RhdGUkPFQ+ID0gcmVxdWVzdCQucGlwZShcclxuICAgIHN3aXRjaE1hcCggKHBhcmFtcykgPT4gaHR0cFJlcXVlc3Q8VD4ocmVxKC4uLnBhcmFtcykpICksXHJcbiAgICBzdGFydFdpdGgobm90U3RhcnRlZCksXHJcbiAgICBkZWZhdWx0U2hhcmVSZXBsYXkoKSxcclxuICApO1xyXG4gIGNvbnN0IHJlcXVlc3QgPSAoLi4ucGFyYW1zOiBbLi4uVFBhcmFtXSkgPT4ge1xyXG4gICAgcmVxdWVzdCQubmV4dChwYXJhbXMpO1xyXG4gICAgcmV0dXJuIGh0dHBTdGF0ZSQ7XHJcbiAgfTtcclxuICByZXR1cm4gKHtcclxuICAgIHJlcXVlc3QsXHJcbiAgICBodHRwU3RhdGUkLFxyXG4gICAgYm9keSQ6IGh0dHBTdGF0ZSQucGlwZShnZXRSZXF1ZXN0b3JCb2R5KSxcclxuICAgIHN0YXR1cyQ6IGh0dHBTdGF0ZSQucGlwZShnZXRSZXF1ZXN0b3JTdGF0dXMpXHJcbiAgfSk7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBjaGFpblJlcXVlc3Q8VFBhcmFtIGV4dGVuZHMgYW55W10sIFQsIFRUPihcclxuICBodHRwU3RhdGUkOiBPYnNlcnZhYmxlPEh0dHBSZXF1ZXN0U3RhdGU8VD4+LFxyXG4gIHJlcXVlc3Q6SHR0cFJlcXVlc3RGYWN0b3J5PFRQYXJhbSxUVD4sXHJcbiAgcmVxdWVzdFBhcmFtczogKChyZXNwb25zZUZyb21QcmV2aW91czogVCkgPT4gWy4uLlRQYXJhbV0pIHwgKCgpID0+IFsuLi5UUGFyYW1dKVxyXG4gICk6IE9ic2VydmFibGU8SHR0cFJlcXVlc3RTdGF0ZTxUVD4+IHtcclxuICByZXR1cm4gaHR0cFN0YXRlJC5waXBlKFxyXG4gICAgc3dpdGNoTWFwKCByZXMgPT4ge1xyXG4gICAgICBpZihyZXMuc3RhdHVzID09PSBIdHRwUmVxdWVzdFN0YXR1cy5zdWNjZXNzKSB7XHJcbiAgICAgICAgY29uc3Qgc2Vjb25kUmVxID0gaHR0cFJlcXVlc3RvcjxbLi4uVFBhcmFtXSwgVFQ+KHJlcXVlc3QpO1xyXG4gICAgICAgIGNvbnN0IHBhcmFtID0gcmVxdWVzdFBhcmFtcyhyZXMuYm9keSk7XHJcbiAgICAgICAgc2Vjb25kUmVxLnJlcXVlc3QoLi4ucGFyYW0gKTtcclxuICAgICAgICByZXR1cm4gc2Vjb25kUmVxLmh0dHBTdGF0ZSQ7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgcmV0dXJuIG9mKHJlcyk7XHJcbiAgICAgIH1cclxuICAgIH0pLFxyXG4gICk7XHJcbn1cclxuXHJcblxyXG5cclxuXHJcblxyXG4iXX0=
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { HttpSuccessStateDirective } from './directives/http-success-state-directive';
|
|
3
|
+
import { HttpRequestStateDirective } from './directives/request-state-directive';
|
|
4
|
+
import { HttpErrorStateDirective } from './directives/http-error-state-directive';
|
|
5
|
+
import { HttpInProgressStateDirective } from './directives/http-inProgress-state-directive';
|
|
6
|
+
import { HttpNotStartedStateDirective } from './directives/http-notStarted-state-directive';
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
export class HttpRequestModule {
|
|
9
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: HttpRequestModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
10
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.1.2", ngImport: i0, type: HttpRequestModule, imports: [HttpSuccessStateDirective,
|
|
11
|
+
HttpRequestStateDirective,
|
|
12
|
+
HttpErrorStateDirective,
|
|
13
|
+
HttpInProgressStateDirective,
|
|
14
|
+
HttpNotStartedStateDirective], exports: [HttpSuccessStateDirective,
|
|
15
|
+
HttpRequestStateDirective,
|
|
16
|
+
HttpErrorStateDirective,
|
|
17
|
+
HttpInProgressStateDirective,
|
|
18
|
+
HttpNotStartedStateDirective] }); }
|
|
19
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: HttpRequestModule }); }
|
|
20
|
+
}
|
|
21
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: HttpRequestModule, decorators: [{
|
|
22
|
+
type: NgModule,
|
|
23
|
+
args: [{
|
|
24
|
+
imports: [
|
|
25
|
+
HttpSuccessStateDirective,
|
|
26
|
+
HttpRequestStateDirective,
|
|
27
|
+
HttpErrorStateDirective,
|
|
28
|
+
HttpInProgressStateDirective,
|
|
29
|
+
HttpNotStartedStateDirective,
|
|
30
|
+
],
|
|
31
|
+
exports: [
|
|
32
|
+
HttpSuccessStateDirective,
|
|
33
|
+
HttpRequestStateDirective,
|
|
34
|
+
HttpErrorStateDirective,
|
|
35
|
+
HttpInProgressStateDirective,
|
|
36
|
+
HttpNotStartedStateDirective,
|
|
37
|
+
]
|
|
38
|
+
}]
|
|
39
|
+
}] });
|
|
40
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cC1zdGF0ZS1tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXV0aWxpdGllcy9zcmMvaHR0cC1yZXF1ZXN0LXN0YXRlL2h0dHAtc3RhdGUtbW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDdEYsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDakYsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDbEYsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDNUYsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sOENBQThDLENBQUM7O0FBaUJ6RixNQUFNLE9BQU8saUJBQWlCOzhHQUFqQixpQkFBaUI7K0dBQWpCLGlCQUFpQixZQWJ6Qix5QkFBeUI7WUFDekIseUJBQXlCO1lBQ3pCLHVCQUF1QjtZQUN2Qiw0QkFBNEI7WUFDNUIsNEJBQTRCLGFBRzVCLHlCQUF5QjtZQUN6Qix5QkFBeUI7WUFDekIsdUJBQXVCO1lBQ3ZCLDRCQUE0QjtZQUM1Qiw0QkFBNEI7K0dBRXBCLGlCQUFpQjs7MkZBQWpCLGlCQUFpQjtrQkFmaEMsUUFBUTttQkFBQztvQkFDTixPQUFPLEVBQUU7d0JBQ0wseUJBQXlCO3dCQUN6Qix5QkFBeUI7d0JBQ3pCLHVCQUF1Qjt3QkFDdkIsNEJBQTRCO3dCQUM1Qiw0QkFBNEI7cUJBQy9CO29CQUNELE9BQU8sRUFBRTt3QkFDTCx5QkFBeUI7d0JBQ3pCLHlCQUF5Qjt3QkFDekIsdUJBQXVCO3dCQUN2Qiw0QkFBNEI7d0JBQzVCLDRCQUE0QjtxQkFDL0I7aUJBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBIdHRwU3VjY2Vzc1N0YXRlRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2h0dHAtc3VjY2Vzcy1zdGF0ZS1kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBIdHRwUmVxdWVzdFN0YXRlRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL3JlcXVlc3Qtc3RhdGUtZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgSHR0cEVycm9yU3RhdGVEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvaHR0cC1lcnJvci1zdGF0ZS1kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBIdHRwSW5Qcm9ncmVzc1N0YXRlRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2h0dHAtaW5Qcm9ncmVzcy1zdGF0ZS1kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBIdHRwTm90U3RhcnRlZFN0YXRlRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2h0dHAtbm90U3RhcnRlZC1zdGF0ZS1kaXJlY3RpdmUnO1xyXG5cclxuQE5nTW9kdWxlKHtcclxuICAgIGltcG9ydHM6IFtcclxuICAgICAgICBIdHRwU3VjY2Vzc1N0YXRlRGlyZWN0aXZlLFxyXG4gICAgICAgIEh0dHBSZXF1ZXN0U3RhdGVEaXJlY3RpdmUsXHJcbiAgICAgICAgSHR0cEVycm9yU3RhdGVEaXJlY3RpdmUsXHJcbiAgICAgICAgSHR0cEluUHJvZ3Jlc3NTdGF0ZURpcmVjdGl2ZSxcclxuICAgICAgICBIdHRwTm90U3RhcnRlZFN0YXRlRGlyZWN0aXZlLFxyXG4gICAgXSxcclxuICAgIGV4cG9ydHM6IFtcclxuICAgICAgICBIdHRwU3VjY2Vzc1N0YXRlRGlyZWN0aXZlLFxyXG4gICAgICAgIEh0dHBSZXF1ZXN0U3RhdGVEaXJlY3RpdmUsXHJcbiAgICAgICAgSHR0cEVycm9yU3RhdGVEaXJlY3RpdmUsXHJcbiAgICAgICAgSHR0cEluUHJvZ3Jlc3NTdGF0ZURpcmVjdGl2ZSxcclxuICAgICAgICBIdHRwTm90U3RhcnRlZFN0YXRlRGlyZWN0aXZlLFxyXG4gICAgXVxyXG59KSBleHBvcnQgY2xhc3MgSHR0cFJlcXVlc3RNb2R1bGUgeyB9Il19
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export * from './helpers';
|
|
2
|
+
export * from './http-request-state';
|
|
3
|
+
export * from './http-state-module';
|
|
4
|
+
export * from './HttpRequestStateFactory';
|
|
5
|
+
export * from './HttpRequestStateStore';
|
|
6
|
+
export * from './types';
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXV0aWxpdGllcy9zcmMvaHR0cC1yZXF1ZXN0LXN0YXRlL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsV0FBVyxDQUFDO0FBQzFCLGNBQWMsc0JBQXNCLENBQUM7QUFDckMsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2hlbHBlcnMnO1xuZXhwb3J0ICogZnJvbSAnLi9odHRwLXJlcXVlc3Qtc3RhdGUnO1xuZXhwb3J0ICogZnJvbSAnLi9odHRwLXN0YXRlLW1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL0h0dHBSZXF1ZXN0U3RhdGVGYWN0b3J5JztcbmV4cG9ydCAqIGZyb20gJy4vSHR0cFJlcXVlc3RTdGF0ZVN0b3JlJztcbmV4cG9ydCAqIGZyb20gJy4vdHlwZXMnOyJdfQ==
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { isSuccessState } from '../helpers';
|
|
2
|
+
import { filter, map } from 'rxjs/operators';
|
|
3
|
+
export const getRequestorBody = (source) => source.pipe(filter(isSuccessState), map(res => res.body));
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0UmVxdWVzdG9yQm9keS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdXRpbGl0aWVzL3NyYy9odHRwLXJlcXVlc3Qtc3RhdGUvcnhqcy9nZXRSZXF1ZXN0b3JCb2R5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFHNUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUU3QyxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxDQUFJLE1BQXVDLEVBQUUsRUFBRSxDQUM3RSxNQUFNLENBQUMsSUFBSSxDQUNULE1BQU0sQ0FBQyxjQUFjLENBQUMsRUFDdEIsR0FBRyxDQUFFLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUN0QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNTdWNjZXNzU3RhdGUgfSBmcm9tICcuLi9oZWxwZXJzJztcbmltcG9ydCB7IEh0dHBSZXF1ZXN0U3RhdGUgfSBmcm9tICcuLi90eXBlcyc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBmaWx0ZXIsIG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuZXhwb3J0IGNvbnN0IGdldFJlcXVlc3RvckJvZHkgPSA8VD4oc291cmNlOiBPYnNlcnZhYmxlPEh0dHBSZXF1ZXN0U3RhdGU8VD4+KSA9PlxuICBzb3VyY2UucGlwZShcbiAgICBmaWx0ZXIoaXNTdWNjZXNzU3RhdGUpLFxuICAgIG1hcCggcmVzID0+IHJlcy5ib2R5KVxuICApOyJdfQ==
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { map } from 'rxjs/operators';
|
|
2
|
+
export const getRequestorStatus = (source) => source.pipe(map(res => res.status));
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0UmVxdWVzdG9yU3RhdGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXV0aWxpdGllcy9zcmMvaHR0cC1yZXF1ZXN0LXN0YXRlL3J4anMvZ2V0UmVxdWVzdG9yU3RhdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXJDLE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLENBQUksTUFBdUMsRUFBRSxFQUFFLENBQy9FLE1BQU0sQ0FBQyxJQUFJLENBQ1QsR0FBRyxDQUFFLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUN4QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cFJlcXVlc3RTdGF0ZSB9IGZyb20gJy4uL3R5cGVzJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuZXhwb3J0IGNvbnN0IGdldFJlcXVlc3RvclN0YXR1cyA9IDxUPihzb3VyY2U6IE9ic2VydmFibGU8SHR0cFJlcXVlc3RTdGF0ZTxUPj4pID0+XG4gIHNvdXJjZS5waXBlKFxuICAgIG1hcCggcmVzID0+IHJlcy5zdGF0dXMpXG4gICk7Il19
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export * from './getRequestorBody';
|
|
2
|
+
export * from './getRequestorState';
|
|
3
|
+
export * from './tapError';
|
|
4
|
+
export * from './tapSuccess';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXV0aWxpdGllcy9zcmMvaHR0cC1yZXF1ZXN0LXN0YXRlL3J4anMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsWUFBWSxDQUFDO0FBQzNCLGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9nZXRSZXF1ZXN0b3JCb2R5JztcbmV4cG9ydCAqIGZyb20gJy4vZ2V0UmVxdWVzdG9yU3RhdGUnO1xuZXhwb3J0ICogZnJvbSAnLi90YXBFcnJvcic7XG5leHBvcnQgKiBmcm9tICcuL3RhcFN1Y2Nlc3MnO1xuIl19
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { tap } from 'rxjs/operators';
|
|
2
|
+
import { isErrorState } from '../helpers';
|
|
3
|
+
export function tapError(onError) {
|
|
4
|
+
return function (src) {
|
|
5
|
+
return src.pipe(tap(result => {
|
|
6
|
+
if (isErrorState(result)) {
|
|
7
|
+
onError(result.error);
|
|
8
|
+
}
|
|
9
|
+
}));
|
|
10
|
+
};
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFwRXJyb3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXV0aWxpdGllcy9zcmMvaHR0cC1yZXF1ZXN0LXN0YXRlL3J4anMvdGFwRXJyb3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXJDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFFMUMsTUFBTSxVQUFVLFFBQVEsQ0FBQyxPQUE2QjtJQUNwRCxPQUFPLFVBQVUsR0FBaUM7UUFDaEQsT0FBTyxHQUFHLENBQUMsSUFBSSxDQUNYLEdBQUcsQ0FBRSxNQUFNLENBQUMsRUFBRTtZQUNWLElBQUcsWUFBWSxDQUFDLE1BQU0sQ0FBQyxFQUFFO2dCQUNyQixPQUFPLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO2FBQ3pCO1FBQ0wsQ0FBQyxDQUFDLENBQ0wsQ0FBQztJQUNKLENBQUMsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgSHR0cFJlcXVlc3RTdGF0ZSB9IGZyb20gJy4uL3R5cGVzJztcclxuaW1wb3J0IHsgaXNFcnJvclN0YXRlIH0gZnJvbSAnLi4vaGVscGVycyc7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gdGFwRXJyb3Iob25FcnJvcjogKGVycm9yOiBhbnkpID0+IHZvaWQpIHtcclxuICByZXR1cm4gZnVuY3Rpb24gKHNyYzogT2JzZXJ2YWJsZTxIdHRwUmVxdWVzdFN0YXRlPik6IE9ic2VydmFibGU8SHR0cFJlcXVlc3RTdGF0ZT4ge1xyXG4gICAgcmV0dXJuIHNyYy5waXBlKFxyXG4gICAgICAgIHRhcCggcmVzdWx0ID0+IHtcclxuICAgICAgICAgICAgaWYoaXNFcnJvclN0YXRlKHJlc3VsdCkpIHtcclxuICAgICAgICAgICAgICAgIG9uRXJyb3IocmVzdWx0LmVycm9yKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0pXHJcbiAgICApO1xyXG4gIH07XHJcbn1cclxuIl19
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { tap } from 'rxjs/operators';
|
|
2
|
+
import { isSuccessState } from '../helpers';
|
|
3
|
+
export function tapSuccess(onSuccess) {
|
|
4
|
+
return function (src) {
|
|
5
|
+
return src.pipe(tap(result => {
|
|
6
|
+
if (isSuccessState(result)) {
|
|
7
|
+
onSuccess(result.body);
|
|
8
|
+
}
|
|
9
|
+
}));
|
|
10
|
+
};
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFwU3VjY2Vzcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdXRpbGl0aWVzL3NyYy9odHRwLXJlcXVlc3Qtc3RhdGUvcnhqcy90YXBTdWNjZXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVyQyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBRTVDLE1BQU0sVUFBVSxVQUFVLENBQUksU0FBNEI7SUFDeEQsT0FBTyxVQUFVLEdBQW9DO1FBQ25ELE9BQU8sR0FBRyxDQUFDLElBQUksQ0FDWCxHQUFHLENBQUUsTUFBTSxDQUFDLEVBQUU7WUFDVixJQUFHLGNBQWMsQ0FBQyxNQUFNLENBQUMsRUFBRTtnQkFDdkIsU0FBUyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQzthQUMxQjtRQUNMLENBQUMsQ0FBQyxDQUNMLENBQUM7SUFDSixDQUFDLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IEh0dHBSZXF1ZXN0U3RhdGUgfSBmcm9tICcuLi90eXBlcyc7XHJcbmltcG9ydCB7IGlzU3VjY2Vzc1N0YXRlIH0gZnJvbSAnLi4vaGVscGVycyc7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gdGFwU3VjY2VzczxUPihvblN1Y2Nlc3M6IChib2R5OiBUKSA9PiB2b2lkKSB7XHJcbiAgcmV0dXJuIGZ1bmN0aW9uIChzcmM6IE9ic2VydmFibGU8SHR0cFJlcXVlc3RTdGF0ZTxUPj4pOiBPYnNlcnZhYmxlPEh0dHBSZXF1ZXN0U3RhdGU8VD4+IHtcclxuICAgIHJldHVybiBzcmMucGlwZShcclxuICAgICAgICB0YXAoIHJlc3VsdCA9PiB7XHJcbiAgICAgICAgICAgIGlmKGlzU3VjY2Vzc1N0YXRlKHJlc3VsdCkpIHtcclxuICAgICAgICAgICAgICAgIG9uU3VjY2VzcyhyZXN1bHQuYm9keSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9KVxyXG4gICAgKTtcclxuICB9O1xyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export var HttpRequestStatus;
|
|
2
|
+
(function (HttpRequestStatus) {
|
|
3
|
+
HttpRequestStatus[HttpRequestStatus["notStarted"] = 0] = "notStarted";
|
|
4
|
+
HttpRequestStatus[HttpRequestStatus["inProgress"] = 1] = "inProgress";
|
|
5
|
+
HttpRequestStatus[HttpRequestStatus["success"] = 2] = "success";
|
|
6
|
+
HttpRequestStatus[HttpRequestStatus["fail"] = 3] = "fail";
|
|
7
|
+
HttpRequestStatus[HttpRequestStatus["cancelled"] = 4] = "cancelled";
|
|
8
|
+
})(HttpRequestStatus || (HttpRequestStatus = {}));
|
|
9
|
+
export var HttpRequestStrategy;
|
|
10
|
+
(function (HttpRequestStrategy) {
|
|
11
|
+
HttpRequestStrategy[HttpRequestStrategy["concurrent"] = 1] = "concurrent";
|
|
12
|
+
HttpRequestStrategy[HttpRequestStrategy["singleUse"] = 2] = "singleUse";
|
|
13
|
+
HttpRequestStrategy[HttpRequestStrategy["cancelPrevious"] = 3] = "cancelPrevious";
|
|
14
|
+
HttpRequestStrategy[HttpRequestStrategy["sequential"] = 4] = "sequential";
|
|
15
|
+
})(HttpRequestStrategy || (HttpRequestStrategy = {}));
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXV0aWxpdGllcy9zcmMvaHR0cC1yZXF1ZXN0LXN0YXRlL3R5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE1BQU0sQ0FBTixJQUFZLGlCQU1UO0FBTkgsV0FBWSxpQkFBaUI7SUFDekIscUVBQVUsQ0FBQTtJQUNWLHFFQUFVLENBQUE7SUFDViwrREFBTyxDQUFBO0lBQ1AseURBQUksQ0FBQTtJQUNKLG1FQUFTLENBQUE7QUFDWCxDQUFDLEVBTlMsaUJBQWlCLEtBQWpCLGlCQUFpQixRQU0xQjtBQWdDSCxNQUFNLENBQU4sSUFBWSxtQkFLWDtBQUxELFdBQVksbUJBQW1CO0lBQzdCLHlFQUFjLENBQUE7SUFDZCx1RUFBYSxDQUFBO0lBQ2IsaUZBQWtCLENBQUE7SUFDbEIseUVBQWMsQ0FBQTtBQUNoQixDQUFDLEVBTFcsbUJBQW1CLEtBQW5CLG1CQUFtQixRQUs5QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuZXhwb3J0IGVudW0gSHR0cFJlcXVlc3RTdGF0dXMge1xyXG4gICAgbm90U3RhcnRlZCxcclxuICAgIGluUHJvZ3Jlc3MsXHJcbiAgICBzdWNjZXNzLFxyXG4gICAgZmFpbCxcclxuICAgIGNhbmNlbGxlZCxcclxuICB9XHJcblxyXG4gIGV4cG9ydCB0eXBlIEh0dHBSZXF1ZXN0U3RhdGVDYW5jZWxsZWQgPSB7XHJcbiAgICBzdGF0dXM6IEh0dHBSZXF1ZXN0U3RhdHVzLmNhbmNlbGxlZFxyXG4gIH1cclxuXHJcbiAgZXhwb3J0IHR5cGUgSHR0cFJlcXVlc3RTdGF0ZU5vdFN0YXJ0ZWQgPSB7XHJcbiAgICBzdGF0dXM6IEh0dHBSZXF1ZXN0U3RhdHVzLm5vdFN0YXJ0ZWRcclxuICB9XHJcblxyXG4gIGV4cG9ydCB0eXBlIEh0dHBSZXF1ZXN0U3RhdGVJblByb2dyZXNzID0ge1xyXG4gICAgc3RhdHVzOiBIdHRwUmVxdWVzdFN0YXR1cy5pblByb2dyZXNzXHJcbiAgfVxyXG5cclxuICBleHBvcnQgdHlwZSBIdHRwUmVxdWVzdFN0YXRlU3VjY2VzczxUPiA9IHtcclxuICAgIHN0YXR1czogSHR0cFJlcXVlc3RTdGF0dXMuc3VjY2VzcztcclxuICAgIGJvZHk6IFQ7XHJcbiAgfVxyXG5cclxuICBleHBvcnQgdHlwZSBIdHRwUmVxdWVzdFN0YXRlRXJyb3IgPSB7XHJcbiAgICBzdGF0dXM6IEh0dHBSZXF1ZXN0U3RhdHVzLmZhaWw7XHJcbiAgICBlcnJvcjogYW55O1xyXG4gIH1cclxuXHJcblxyXG4gIGV4cG9ydCB0eXBlIEh0dHBSZXF1ZXN0U3RhdGU8VCA9IGFueT4gPVxyXG4gICAgSHR0cFJlcXVlc3RTdGF0ZUNhbmNlbGxlZCB8XHJcbiAgICBIdHRwUmVxdWVzdFN0YXRlTm90U3RhcnRlZCB8XHJcbiAgICBIdHRwUmVxdWVzdFN0YXRlSW5Qcm9ncmVzcyB8XHJcbiAgICBIdHRwUmVxdWVzdFN0YXRlU3VjY2VzczxUPiB8XHJcbiAgICBIdHRwUmVxdWVzdFN0YXRlRXJyb3IgO1xyXG5cclxuZXhwb3J0IGVudW0gSHR0cFJlcXVlc3RTdHJhdGVneSB7XHJcbiAgY29uY3VycmVudCA9IDEsXHJcbiAgc2luZ2xlVXNlID0gMixcclxuICBjYW5jZWxQcmV2aW91cyA9IDMsXHJcbiAgc2VxdWVudGlhbCA9IDQsXHJcbn1cclxuZXhwb3J0IGludGVyZmFjZSBSZXF1ZXN0U3RhdGVPcHRpb25zIHtcclxuICBzdHJhdGVneT86IEh0dHBSZXF1ZXN0U3RyYXRlZ3lcclxufVxyXG5cclxuZXhwb3J0IHR5cGUgSHR0cFJlcXVlc3RGYWN0b3J5PFRQYXJhbSBleHRlbmRzIGFueVtdLCBUPiA9ICguLi5wYXJhbXM6IFsuLi5UUGFyYW1dKSA9PiBPYnNlcnZhYmxlPFQ+XHJcbiJdfQ==
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { APP_INITIALIZER, makeEnvironmentProviders } from "@angular/core";
|
|
2
|
+
import { createSelector, Store } from "@ngrx/store";
|
|
3
|
+
import { v4 as uuid } from 'uuid';
|
|
4
|
+
class AppStoreCache {
|
|
5
|
+
constructor() {
|
|
6
|
+
this.cache = {};
|
|
7
|
+
this.isInCache = (props, actionableSelectorId) => {
|
|
8
|
+
if (typeof props != 'object')
|
|
9
|
+
props = { props };
|
|
10
|
+
let itemsInCache = this.cache[actionableSelectorId] = this.cache[actionableSelectorId] || [];
|
|
11
|
+
if (itemsInCache.some(itemInCache => shallowEquals(itemInCache, props))) {
|
|
12
|
+
return true;
|
|
13
|
+
}
|
|
14
|
+
itemsInCache.push(props);
|
|
15
|
+
return false;
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
let _store;
|
|
20
|
+
let _cache;
|
|
21
|
+
export const clearActionableSelectorRequestCache = () => _cache.cache = {};
|
|
22
|
+
const setStore = (store) => {
|
|
23
|
+
if (store instanceof Store)
|
|
24
|
+
_store = store;
|
|
25
|
+
};
|
|
26
|
+
export function setUpStoreFactory(store) {
|
|
27
|
+
_cache = new AppStoreCache();
|
|
28
|
+
return () => new Promise((resolve, reject) => {
|
|
29
|
+
setStore(store);
|
|
30
|
+
resolve(null);
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Creates a selector that can dispatch an action if conditions are met.
|
|
35
|
+
* Note: The props of the selector factory must include the props of the action.
|
|
36
|
+
* @param selectorFactory A method that returns selector.
|
|
37
|
+
* @param action The action that will be dispatched when conditions are met.
|
|
38
|
+
* @param [dispatchIf = defaultFilter] Optional. A method that takes the result of the selector and returns a boolean. The actions gets dispatched
|
|
39
|
+
* if true is returned. If no method is passed in than the action will be dispatched if the selector returns undefined or null.
|
|
40
|
+
*/
|
|
41
|
+
export const createActionableSelector = (selectorFactory, action, dispatchIf = defaultFilter) => {
|
|
42
|
+
const id = uuid();
|
|
43
|
+
const slctr = (props) => createSelector(selectorFactory(props), (selected) => {
|
|
44
|
+
if (dispatchIf(selected) && !_cache.isInCache(props, id)) {
|
|
45
|
+
queueMicrotask(() => _store.dispatch(action(props)));
|
|
46
|
+
}
|
|
47
|
+
return selected;
|
|
48
|
+
});
|
|
49
|
+
return slctr;
|
|
50
|
+
};
|
|
51
|
+
export function defaultFilter(data) {
|
|
52
|
+
return data == null || data == undefined;
|
|
53
|
+
}
|
|
54
|
+
const shallowEquals = (cachedItem, newItem) => {
|
|
55
|
+
const cachedItemKeys = Object.keys(cachedItem);
|
|
56
|
+
const secondKeys = Object.keys(newItem);
|
|
57
|
+
if (cachedItemKeys.length !== secondKeys.length) {
|
|
58
|
+
return false;
|
|
59
|
+
}
|
|
60
|
+
for (let index = 0; index < cachedItemKeys.length; index++) {
|
|
61
|
+
const currentKey = cachedItemKeys[index];
|
|
62
|
+
if (cachedItem[currentKey] !== newItem[currentKey]) {
|
|
63
|
+
return false;
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
return true;
|
|
67
|
+
};
|
|
68
|
+
export function provideActionableSelector() {
|
|
69
|
+
return makeEnvironmentProviders([
|
|
70
|
+
{ provide: APP_INITIALIZER, useFactory: setUpStoreFactory, multi: true, deps: [Store] },
|
|
71
|
+
]);
|
|
72
|
+
}
|
|
73
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uYWJsZS1zZWxlY3Rvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdXRpbGl0aWVzL3NyYy9uZ3J4L2FjdGlvbmFibGUtc2VsZWN0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGVBQWUsRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxRSxPQUFPLEVBQVUsY0FBYyxFQUFvQixLQUFLLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDOUUsT0FBTyxFQUFFLEVBQUUsSUFBSSxJQUFJLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFNbEMsTUFBTSxhQUFhO0lBQW5CO1FBQ0UsVUFBSyxHQUFVLEVBQUUsQ0FBQztRQUNsQixjQUFTLEdBQUcsQ0FBQyxLQUFVLEVBQUUsb0JBQTRCLEVBQVcsRUFBRTtZQUNoRSxJQUFHLE9BQU8sS0FBSyxJQUFJLFFBQVE7Z0JBQUUsS0FBSyxHQUFHLEVBQUUsS0FBSyxFQUFFLENBQUM7WUFFL0MsSUFBSSxZQUFZLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxvQkFBb0IsQ0FBQyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsb0JBQW9CLENBQUMsSUFBSSxFQUFFLENBQUM7WUFFN0YsSUFBRyxZQUFZLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLFdBQVcsRUFBRSxLQUFLLENBQUMsQ0FBQyxFQUFDO2dCQUNyRSxPQUFPLElBQUksQ0FBQzthQUNiO1lBRUQsWUFBWSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUN6QixPQUFPLEtBQUssQ0FBQztRQUNmLENBQUMsQ0FBQTtJQUNILENBQUM7Q0FBQTtBQUVELElBQUksTUFBa0IsQ0FBQztBQUN2QixJQUFJLE1BQXFCLENBQUM7QUFFMUIsTUFBTSxDQUFDLE1BQU0sbUNBQW1DLEdBQUcsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUM7QUFFM0UsTUFBTSxRQUFRLEdBQUcsQ0FBQyxLQUFZLEVBQUUsRUFBRTtJQUNoQyxJQUFHLEtBQUssWUFBWSxLQUFLO1FBQUUsTUFBTSxHQUFHLEtBQUssQ0FBQztBQUM1QyxDQUFDLENBQUM7QUFFRixNQUFNLFVBQVUsaUJBQWlCLENBQUMsS0FBWTtJQUM1QyxNQUFNLEdBQUcsSUFBSSxhQUFhLEVBQUUsQ0FBQztJQUM3QixPQUFPLEdBQUcsRUFBRSxDQUFDLElBQUksT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxFQUFFO1FBQzNDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNoQixPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDaEIsQ0FBQyxDQUFDLENBQUE7QUFDSixDQUFDO0FBRUQ7Ozs7Ozs7R0FPRztBQUNILE1BQU0sQ0FBQyxNQUFNLHdCQUF3QixHQUFHLENBQ3RDLGVBQW1FLEVBQ25FLE1BQXlDLEVBQ3pDLGFBQXdDLGFBQWEsRUFDUyxFQUFFO0lBQ2hFLE1BQU0sRUFBRSxHQUFHLElBQUksRUFBRSxDQUFDO0lBQ2xCLE1BQU0sS0FBSyxHQUFHLENBQUMsS0FBYSxFQUFFLEVBQUUsQ0FBQyxjQUFjLENBQzdDLGVBQWUsQ0FBQyxLQUFLLENBQUMsRUFDdEIsQ0FBQyxRQUFnQixFQUFFLEVBQUU7UUFDbkIsSUFBRyxVQUFVLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsRUFBQztZQUN0RCxjQUFjLENBQUMsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQ3REO1FBQ0QsT0FBTyxRQUFRLENBQUM7SUFDbEIsQ0FBQyxDQUMyQyxDQUFDO0lBQy9DLE9BQU8sS0FBSyxDQUFDO0FBQ2YsQ0FBQyxDQUFBO0FBTUQsTUFBTSxVQUFVLGFBQWEsQ0FBQyxJQUFTO0lBQ3JDLE9BQU8sSUFBSSxJQUFJLElBQUksSUFBSSxJQUFJLElBQUksU0FBUyxDQUFDO0FBQzNDLENBQUM7QUFFRCxNQUFNLGFBQWEsR0FBRyxDQUFDLFVBQWtCLEVBQUUsT0FBZSxFQUFXLEVBQUU7SUFDckUsTUFBTSxjQUFjLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUMvQyxNQUFNLFVBQVUsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3hDLElBQUcsY0FBYyxDQUFDLE1BQU0sS0FBSyxVQUFVLENBQUMsTUFBTSxFQUFFO1FBQzlDLE9BQU8sS0FBSyxDQUFDO0tBQ2Q7SUFDRCxLQUFJLElBQUksS0FBSyxHQUFHLENBQUMsRUFBRSxLQUFLLEdBQUcsY0FBYyxDQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUUsRUFBRTtRQUN6RCxNQUFNLFVBQVUsR0FBRyxjQUFjLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDekMsSUFBRyxVQUFVLENBQUMsVUFBVSxDQUFDLEtBQUssT0FBTyxDQUFDLFVBQVUsQ0FBQyxFQUFDO1lBQ2hELE9BQU8sS0FBSyxDQUFDO1NBQ2Q7S0FDRjtJQUNELE9BQU8sSUFBSSxDQUFDO0FBQ2QsQ0FBQyxDQUFBO0FBRUQsTUFBTSxVQUFVLHlCQUF5QjtJQUN2QyxPQUFPLHdCQUF3QixDQUFDO1FBQzlCLEVBQUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxVQUFVLEVBQUUsaUJBQWlCLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxLQUFLLENBQUMsRUFBRTtLQUN4RixDQUFDLENBQUE7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVBQX0lOSVRJQUxJWkVSLCBtYWtlRW52aXJvbm1lbnRQcm92aWRlcnMgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBBY3Rpb24sIGNyZWF0ZVNlbGVjdG9yLCBNZW1vaXplZFNlbGVjdG9yLCBTdG9yZSB9IGZyb20gXCJAbmdyeC9zdG9yZVwiO1xyXG5pbXBvcnQgeyB2NCBhcyB1dWlkIH0gZnJvbSAndXVpZCc7XHJcblxyXG50eXBlIENhY2hlID0ge1xyXG4gIFtrZXk6IHN0cmluZ106IHsgW2tleTogc3RyaW5nXTogYW55IH1bXTtcclxufVxyXG5cclxuY2xhc3MgQXBwU3RvcmVDYWNoZSB7XHJcbiAgY2FjaGU6IENhY2hlID0ge307XHJcbiAgaXNJbkNhY2hlID0gKHByb3BzOiBhbnksIGFjdGlvbmFibGVTZWxlY3RvcklkOiBzdHJpbmcpOiBib29sZWFuID0+IHtcclxuICAgIGlmKHR5cGVvZiBwcm9wcyAhPSAnb2JqZWN0JykgcHJvcHMgPSB7IHByb3BzIH07XHJcblxyXG4gICAgbGV0IGl0ZW1zSW5DYWNoZSA9IHRoaXMuY2FjaGVbYWN0aW9uYWJsZVNlbGVjdG9ySWRdID0gdGhpcy5jYWNoZVthY3Rpb25hYmxlU2VsZWN0b3JJZF0gfHwgW107XHJcblxyXG4gICAgaWYoaXRlbXNJbkNhY2hlLnNvbWUoaXRlbUluQ2FjaGUgPT4gc2hhbGxvd0VxdWFscyhpdGVtSW5DYWNoZSwgcHJvcHMpKSl7XHJcbiAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgfVxyXG5cclxuICAgIGl0ZW1zSW5DYWNoZS5wdXNoKHByb3BzKTtcclxuICAgIHJldHVybiBmYWxzZTtcclxuICB9XHJcbn1cclxuXHJcbmxldCBfc3RvcmU6IFN0b3JlPGFueT47XHJcbmxldCBfY2FjaGU6IEFwcFN0b3JlQ2FjaGU7XHJcblxyXG5leHBvcnQgY29uc3QgY2xlYXJBY3Rpb25hYmxlU2VsZWN0b3JSZXF1ZXN0Q2FjaGUgPSAoKSA9PiBfY2FjaGUuY2FjaGUgPSB7fTtcclxuXHJcbmNvbnN0IHNldFN0b3JlID0gKHN0b3JlOiBTdG9yZSkgPT4ge1xyXG4gIGlmKHN0b3JlIGluc3RhbmNlb2YgU3RvcmUpIF9zdG9yZSA9IHN0b3JlO1xyXG59O1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHNldFVwU3RvcmVGYWN0b3J5KHN0b3JlOiBTdG9yZSl7XHJcbiAgX2NhY2hlID0gbmV3IEFwcFN0b3JlQ2FjaGUoKTtcclxuICByZXR1cm4gKCkgPT4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xyXG4gICAgc2V0U3RvcmUoc3RvcmUpO1xyXG4gICAgcmVzb2x2ZShudWxsKTtcclxuICB9KVxyXG59XHJcblxyXG4vKipcclxuICogQ3JlYXRlcyBhIHNlbGVjdG9yIHRoYXQgY2FuIGRpc3BhdGNoIGFuIGFjdGlvbiBpZiBjb25kaXRpb25zIGFyZSBtZXQuXHJcbiAqIE5vdGU6IFRoZSBwcm9wcyBvZiB0aGUgc2VsZWN0b3IgZmFjdG9yeSBtdXN0IGluY2x1ZGUgdGhlIHByb3BzIG9mIHRoZSBhY3Rpb24uXHJcbiAqIEBwYXJhbSBzZWxlY3RvckZhY3RvcnkgQSBtZXRob2QgdGhhdCByZXR1cm5zIHNlbGVjdG9yLlxyXG4gKiBAcGFyYW0gYWN0aW9uIFRoZSBhY3Rpb24gdGhhdCB3aWxsIGJlIGRpc3BhdGNoZWQgd2hlbiBjb25kaXRpb25zIGFyZSBtZXQuXHJcbiAqIEBwYXJhbSBbZGlzcGF0Y2hJZiA9IGRlZmF1bHRGaWx0ZXJdIE9wdGlvbmFsLiBBIG1ldGhvZCB0aGF0IHRha2VzIHRoZSByZXN1bHQgb2YgdGhlIHNlbGVjdG9yIGFuZCByZXR1cm5zIGEgYm9vbGVhbi4gVGhlIGFjdGlvbnMgZ2V0cyBkaXNwYXRjaGVkXHJcbiAqIGlmIHRydWUgaXMgcmV0dXJuZWQuIElmIG5vIG1ldGhvZCBpcyBwYXNzZWQgaW4gdGhhbiB0aGUgYWN0aW9uIHdpbGwgYmUgZGlzcGF0Y2hlZCBpZiB0aGUgc2VsZWN0b3IgcmV0dXJucyB1bmRlZmluZWQgb3IgbnVsbC5cclxuICovXHJcbmV4cG9ydCBjb25zdCBjcmVhdGVBY3Rpb25hYmxlU2VsZWN0b3IgPSA8U3RhdGUsIFJlc3VsdCwgUHJvcHMgPSBhbnk+KFxyXG4gIHNlbGVjdG9yRmFjdG9yeTogKHByb3BzPzogUHJvcHMpID0+IE1lbW9pemVkU2VsZWN0b3I8U3RhdGUsIFJlc3VsdD4sXHJcbiAgYWN0aW9uOiBBY3Rpb25SZXR1cm5lcjxQcm9wcyB8IHVuZGVmaW5lZD4sXHJcbiAgZGlzcGF0Y2hJZjogKGRhdGE6IFJlc3VsdCkgPT4gYm9vbGVhbiA9IGRlZmF1bHRGaWx0ZXIsXHJcbik6IChwcm9wcz86IFByb3BzKSA9PiBBY3Rpb25hYmxlTWVtb2l6ZWRTZWxlY3RvcjxTdGF0ZSwgUmVzdWx0PiA9PiB7XHJcbiAgY29uc3QgaWQgPSB1dWlkKCk7XHJcbiAgY29uc3Qgc2xjdHIgPSAocHJvcHM/OiBQcm9wcykgPT4gY3JlYXRlU2VsZWN0b3IoXHJcbiAgICBzZWxlY3RvckZhY3RvcnkocHJvcHMpLFxyXG4gICAgKHNlbGVjdGVkOiBSZXN1bHQpID0+IHtcclxuICAgICAgaWYoZGlzcGF0Y2hJZihzZWxlY3RlZCkgJiYgIV9jYWNoZS5pc0luQ2FjaGUocHJvcHMsIGlkKSl7XHJcbiAgICAgICAgcXVldWVNaWNyb3Rhc2soKCkgPT4gX3N0b3JlLmRpc3BhdGNoKGFjdGlvbihwcm9wcykpKTtcclxuICAgICAgfVxyXG4gICAgICByZXR1cm4gc2VsZWN0ZWQ7XHJcbiAgICB9XHJcbiAgKSBhcyBBY3Rpb25hYmxlTWVtb2l6ZWRTZWxlY3RvcjxTdGF0ZSwgUmVzdWx0PjtcclxuICByZXR1cm4gc2xjdHI7XHJcbn1cclxuXHJcbnR5cGUgQWN0aW9uYWJsZU1lbW9pemVkU2VsZWN0b3I8U3RhdGUsIFJlc3VsdD4gPSBNZW1vaXplZFNlbGVjdG9yPFN0YXRlLCBSZXN1bHQ+O1xyXG5cclxuZXhwb3J0IHR5cGUgQWN0aW9uUmV0dXJuZXI8UHJvcHM+ID0gKHByb3BzOiBQcm9wcykgPT4gQWN0aW9uO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGRlZmF1bHRGaWx0ZXIoZGF0YTogYW55KSB7XHJcbiAgcmV0dXJuIGRhdGEgPT0gbnVsbCB8fCBkYXRhID09IHVuZGVmaW5lZDtcclxufVxyXG5cclxuY29uc3Qgc2hhbGxvd0VxdWFscyA9IChjYWNoZWRJdGVtOiBvYmplY3QsIG5ld0l0ZW06IG9iamVjdCk6IGJvb2xlYW4gPT4ge1xyXG4gIGNvbnN0IGNhY2hlZEl0ZW1LZXlzID0gT2JqZWN0LmtleXMoY2FjaGVkSXRlbSk7XHJcbiAgY29uc3Qgc2Vjb25kS2V5cyA9IE9iamVjdC5rZXlzKG5ld0l0ZW0pO1xyXG4gIGlmKGNhY2hlZEl0ZW1LZXlzLmxlbmd0aCAhPT0gc2Vjb25kS2V5cy5sZW5ndGgpIHtcclxuICAgIHJldHVybiBmYWxzZTtcclxuICB9XHJcbiAgZm9yKGxldCBpbmRleCA9IDA7IGluZGV4IDwgY2FjaGVkSXRlbUtleXMubGVuZ3RoOyBpbmRleCsrKSB7XHJcbiAgICBjb25zdCBjdXJyZW50S2V5ID0gY2FjaGVkSXRlbUtleXNbaW5kZXhdO1xyXG4gICAgaWYoY2FjaGVkSXRlbVtjdXJyZW50S2V5XSAhPT0gbmV3SXRlbVtjdXJyZW50S2V5XSl7XHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuICB9XHJcbiAgcmV0dXJuIHRydWU7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBwcm92aWRlQWN0aW9uYWJsZVNlbGVjdG9yKCl7XHJcbiAgcmV0dXJuIG1ha2VFbnZpcm9ubWVudFByb3ZpZGVycyhbXHJcbiAgICB7IHByb3ZpZGU6IEFQUF9JTklUSUFMSVpFUiwgdXNlRmFjdG9yeTogc2V0VXBTdG9yZUZhY3RvcnksIG11bHRpOiB0cnVlLCBkZXBzOiBbU3RvcmVdIH0sXHJcbiAgXSlcclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export * from './actionable-selector';
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXV0aWxpdGllcy9zcmMvbmdyeC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHVCQUF1QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9hY3Rpb25hYmxlLXNlbGVjdG9yJzsiXX0=
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generated bundle index. Do not edit.
|
|
3
|
+
*/
|
|
4
|
+
export * from './public-api';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib25lLXBhcmFnb24tYW5ndWxhci11dGlsaXRpZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXV0aWxpdGllcy9zcmMvb25lLXBhcmFnb24tYW5ndWxhci11dGlsaXRpZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcbiJdfQ==
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Public API Surface of http-request-state
|
|
3
|
+
*/
|
|
4
|
+
export * from './http-request-state/directives';
|
|
5
|
+
export * from './http-request-state/rxjs';
|
|
6
|
+
export * from './http-request-state';
|
|
7
|
+
export * from './table-builder/table-builder.module';
|
|
8
|
+
export * from './table-builder/classes/TableBuilderConfig';
|
|
9
|
+
export * from './table-builder/interfaces/report-def';
|
|
10
|
+
export * from './table-builder/classes/MatTableObservableDataSource';
|
|
11
|
+
export * from './table-builder/classes/table-builder';
|
|
12
|
+
export * from './table-builder/classes/table-builder-general-settings';
|
|
13
|
+
export * from './table-builder/components';
|
|
14
|
+
export * from './table-builder/directives';
|
|
15
|
+
export { FilterType } from './table-builder/enums/filterTypes';
|
|
16
|
+
export * from './rxjs';
|
|
17
|
+
export * from './utilities';
|
|
18
|
+
export * from './action-state';
|
|
19
|
+
export * from './ngrx';
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdXRpbGl0aWVzL3NyYy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsc0JBQXNCLENBQUM7QUFHckMsY0FBYyxzQ0FBc0MsQ0FBQztBQUVyRCxjQUFjLDRDQUE0QyxDQUFDO0FBRTNELGNBQWMsdUNBQXVDLENBQUM7QUFFdEQsY0FBYyxzREFBc0QsQ0FBQztBQUVyRSxjQUFjLHVDQUF1QyxDQUFDO0FBRXRELGNBQWMsd0RBQXdELENBQUM7QUFFdkUsY0FBYyw0QkFBNEIsQ0FBQztBQUUzQyxjQUFjLDRCQUE0QixDQUFDO0FBRTNDLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxtQ0FBbUMsQ0FBQztBQUc3RCxjQUFjLFFBQVEsQ0FBQTtBQUV0QixjQUFjLGFBQWEsQ0FBQTtBQUUzQixjQUFjLGdCQUFnQixDQUFDO0FBRS9CLGNBQWMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuICogUHVibGljIEFQSSBTdXJmYWNlIG9mIGh0dHAtcmVxdWVzdC1zdGF0ZVxyXG4gKi9cclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vaHR0cC1yZXF1ZXN0LXN0YXRlL2RpcmVjdGl2ZXMnO1xyXG5leHBvcnQgKiBmcm9tICcuL2h0dHAtcmVxdWVzdC1zdGF0ZS9yeGpzJztcclxuZXhwb3J0ICogZnJvbSAnLi9odHRwLXJlcXVlc3Qtc3RhdGUnO1xyXG5cclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vdGFibGUtYnVpbGRlci90YWJsZS1idWlsZGVyLm1vZHVsZSc7XHJcblxyXG5leHBvcnQgKiBmcm9tICcuL3RhYmxlLWJ1aWxkZXIvY2xhc3Nlcy9UYWJsZUJ1aWxkZXJDb25maWcnO1xyXG5cclxuZXhwb3J0ICogZnJvbSAnLi90YWJsZS1idWlsZGVyL2ludGVyZmFjZXMvcmVwb3J0LWRlZic7XHJcblxyXG5leHBvcnQgKiBmcm9tICcuL3RhYmxlLWJ1aWxkZXIvY2xhc3Nlcy9NYXRUYWJsZU9ic2VydmFibGVEYXRhU291cmNlJztcclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vdGFibGUtYnVpbGRlci9jbGFzc2VzL3RhYmxlLWJ1aWxkZXInO1xyXG5cclxuZXhwb3J0ICogZnJvbSAnLi90YWJsZS1idWlsZGVyL2NsYXNzZXMvdGFibGUtYnVpbGRlci1nZW5lcmFsLXNldHRpbmdzJztcclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vdGFibGUtYnVpbGRlci9jb21wb25lbnRzJztcclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vdGFibGUtYnVpbGRlci9kaXJlY3RpdmVzJztcclxuXHJcbmV4cG9ydCB7RmlsdGVyVHlwZX0gZnJvbSAnLi90YWJsZS1idWlsZGVyL2VudW1zL2ZpbHRlclR5cGVzJztcclxuXHJcblxyXG5leHBvcnQgKiBmcm9tICcuL3J4anMnXHJcblxyXG5leHBvcnQgKiBmcm9tICcuL3V0aWxpdGllcydcclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vYWN0aW9uLXN0YXRlJztcclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vbmdyeCc7XHJcbiJdfQ==
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { shareReplay } from 'rxjs/operators';
|
|
2
|
+
export function defaultShareReplay() {
|
|
3
|
+
return function (src) {
|
|
4
|
+
return src.pipe(shareReplay({ refCount: true, bufferSize: 1 }));
|
|
5
|
+
};
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdFNoYXJlUmVwbGF5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci11dGlsaXRpZXMvc3JjL3J4anMvZGVmYXVsdFNoYXJlUmVwbGF5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUU3QyxNQUFNLFVBQVUsa0JBQWtCO0lBQ2hDLE9BQU8sVUFBVSxHQUFrQjtRQUNqQyxPQUFPLEdBQUcsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ2xFLENBQUMsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBzaGFyZVJlcGxheSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuZXhwb3J0IGZ1bmN0aW9uIGRlZmF1bHRTaGFyZVJlcGxheTxUPigpIHtcbiAgcmV0dXJuIGZ1bmN0aW9uIChzcmM6IE9ic2VydmFibGU8VD4pOiBPYnNlcnZhYmxlPFQ+IHtcbiAgICByZXR1cm4gc3JjLnBpcGUoc2hhcmVSZXBsYXkoeyByZWZDb3VudDogdHJ1ZSwgYnVmZmVyU2l6ZTogMSB9KSk7XG4gIH07XG59Il19
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export * from './defaultShareReplay';
|
|
2
|
+
export * from './mapError';
|
|
3
|
+
export * from './rxjs-operators';
|
|
4
|
+
export * from './subjectifier';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXV0aWxpdGllcy9zcmMvcnhqcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHNCQUFzQixDQUFBO0FBQ3BDLGNBQWMsWUFBWSxDQUFDO0FBQzNCLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyxnQkFBZ0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZGVmYXVsdFNoYXJlUmVwbGF5J1xyXG5leHBvcnQgKiBmcm9tICcuL21hcEVycm9yJztcclxuZXhwb3J0ICogZnJvbSAnLi9yeGpzLW9wZXJhdG9ycyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vc3ViamVjdGlmaWVyJztcclxuIl19
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { of } from 'rxjs';
|
|
2
|
+
import { catchError } from 'rxjs/operators';
|
|
3
|
+
export function mapError(projection) {
|
|
4
|
+
return function (src) {
|
|
5
|
+
return src.pipe(catchError(e => of(projection(e))));
|
|
6
|
+
};
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwRXJyb3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXV0aWxpdGllcy9zcmMvcnhqcy9tYXBFcnJvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWMsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3RDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUU1QyxNQUFNLFVBQVUsUUFBUSxDQUFhLFVBQW1DO0lBQ3RFLE9BQU8sVUFBVSxHQUFrQjtRQUNqQyxPQUFPLEdBQUcsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUUsQ0FBQztJQUN2RCxDQUFDLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT2JzZXJ2YWJsZSwgb2YgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGNhdGNoRXJyb3IgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmV4cG9ydCBmdW5jdGlvbiBtYXBFcnJvcjxULCBUUmVzdWx0Pihwcm9qZWN0aW9uOiAoZXJyb3I6IGFueSkgPT4gVFJlc3VsdCkge1xuICByZXR1cm4gZnVuY3Rpb24gKHNyYzogT2JzZXJ2YWJsZTxUPik6IE9ic2VydmFibGU8VCB8IFRSZXN1bHQ+IHtcbiAgICByZXR1cm4gc3JjLnBpcGUoY2F0Y2hFcnJvcihlID0+IG9mKHByb2plY3Rpb24oZSkpKSwpO1xuICB9O1xufSJdfQ==
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
import { filter, first, map, pairwise, startWith, Observable, combineLatest, Subscription, concatMap, merge, of, delay } from 'rxjs';
|
|
2
|
+
export const onceWhen = (predicate) => (src) => {
|
|
3
|
+
return src.pipe(filter(predicate), first());
|
|
4
|
+
};
|
|
5
|
+
export const mapArray = (mapFunc) => (source) => source.pipe(map(src => src.map(mapFunc)));
|
|
6
|
+
export const filterArray = (filterFunc) => (source) => source.pipe(map(src => src.filter(filterFunc)));
|
|
7
|
+
export const onWait = startWithIfEmpty;
|
|
8
|
+
export function startWithIfEmpty(val, wait = 0) {
|
|
9
|
+
return (source) => {
|
|
10
|
+
return new Observable(subscriber => {
|
|
11
|
+
let emitted = false;
|
|
12
|
+
setTimeout(() => {
|
|
13
|
+
if (!emitted) {
|
|
14
|
+
subscriber.next(val);
|
|
15
|
+
}
|
|
16
|
+
}, wait);
|
|
17
|
+
const sub = source.subscribe({
|
|
18
|
+
next(x) { emitted = true; subscriber.next(x); },
|
|
19
|
+
error(err) { emitted = true; subscriber.error(err); },
|
|
20
|
+
complete() { emitted = true; subscriber.complete(); }
|
|
21
|
+
});
|
|
22
|
+
return () => sub.unsubscribe();
|
|
23
|
+
});
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
export const combineArrays = (sources) => {
|
|
27
|
+
return combineLatest(sources.map(src => src.pipe(startWithIfEmpty([])))).pipe(map(res => res.flat()));
|
|
28
|
+
};
|
|
29
|
+
export function switchOff(switchSource, defaultState = true) {
|
|
30
|
+
return (source) => {
|
|
31
|
+
return new Observable(subsciber => {
|
|
32
|
+
let isOn = defaultState;
|
|
33
|
+
const subscription = new Subscription();
|
|
34
|
+
subscription.add(switchSource.subscribe(on => isOn = on));
|
|
35
|
+
subscription.add(source.subscribe({
|
|
36
|
+
next(value) {
|
|
37
|
+
if (isOn) {
|
|
38
|
+
subsciber.next(value);
|
|
39
|
+
}
|
|
40
|
+
},
|
|
41
|
+
error: error => subsciber.error(error),
|
|
42
|
+
complete: () => subsciber.complete()
|
|
43
|
+
}));
|
|
44
|
+
return subscription;
|
|
45
|
+
});
|
|
46
|
+
};
|
|
47
|
+
}
|
|
48
|
+
export function skipOneWhen(skipper) {
|
|
49
|
+
return (source) => {
|
|
50
|
+
return new Observable(subsriber => {
|
|
51
|
+
const subscription = new Subscription();
|
|
52
|
+
let skipNext = false;
|
|
53
|
+
subscription.add(skipper.subscribe(_ => skipNext = true));
|
|
54
|
+
subscription.add(source.subscribe({
|
|
55
|
+
next(value) {
|
|
56
|
+
if (skipNext) {
|
|
57
|
+
skipNext = false;
|
|
58
|
+
}
|
|
59
|
+
else {
|
|
60
|
+
subsriber.next(value);
|
|
61
|
+
}
|
|
62
|
+
},
|
|
63
|
+
error: error => subsriber.error(error),
|
|
64
|
+
complete: () => subsriber.complete()
|
|
65
|
+
}));
|
|
66
|
+
return subscription;
|
|
67
|
+
});
|
|
68
|
+
};
|
|
69
|
+
}
|
|
70
|
+
export function previousAndCurrent(startingValue) {
|
|
71
|
+
return (source) => {
|
|
72
|
+
return source.pipe(startWith(startingValue), pairwise());
|
|
73
|
+
};
|
|
74
|
+
}
|
|
75
|
+
export function notNull() {
|
|
76
|
+
return (source) => {
|
|
77
|
+
return source.pipe(filter((o) => o != null));
|
|
78
|
+
};
|
|
79
|
+
}
|
|
80
|
+
export function delayOn(predicate, delayTime) {
|
|
81
|
+
return (src) => {
|
|
82
|
+
return src.pipe(concatMap(r => {
|
|
83
|
+
if (predicate(r)) {
|
|
84
|
+
return merge(of({ r }), of(null).pipe(delay(delayTime))).pipe(notNull(), map(d => d.r));
|
|
85
|
+
}
|
|
86
|
+
else {
|
|
87
|
+
return of(r);
|
|
88
|
+
}
|
|
89
|
+
}));
|
|
90
|
+
};
|
|
91
|
+
}
|
|
92
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnhqcy1vcGVyYXRvcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXV0aWxpdGllcy9zcmMvcnhqcy9yeGpzLW9wZXJhdG9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQ0wsTUFBTSxFQUNOLEtBQUssRUFDTCxHQUFHLEVBQ0gsUUFBUSxFQUNSLFNBQVMsRUFDVCxVQUFVLEVBQ1YsYUFBYSxFQUNiLFlBQVksRUFHWixTQUFTLEVBQ1QsS0FBSyxFQUNMLEVBQUUsRUFDRixLQUFLLEVBQ04sTUFBTSxNQUFNLENBQUM7QUFHZCxNQUFNLENBQUMsTUFBTSxRQUFRLEdBQUcsQ0FBSSxTQUF1QixFQUFFLEVBQUUsQ0FBQyxDQUFDLEdBQWtCLEVBQWtCLEVBQUU7SUFDN0YsT0FBTyxHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsRUFBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDO0FBQzdDLENBQUMsQ0FBQTtBQUVELE1BQU0sQ0FBQyxNQUFNLFFBQVEsR0FBRyxDQUFPLE9BQXNDLEVBQUcsRUFBRSxDQUFDLENBQUMsTUFBdUIsRUFBRSxFQUFFLENBQ3JHLE1BQU0sQ0FBQyxJQUFJLENBQUUsR0FBRyxDQUFFLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBRSxDQUFFLENBQUM7QUFFaEQsTUFBTSxDQUFFLE1BQU0sV0FBVyxHQUFHLENBQUksVUFBK0IsRUFBRyxFQUFFLENBQUMsQ0FBQyxNQUF1QixFQUFFLEVBQUUsQ0FDL0YsTUFBTSxDQUFDLElBQUksQ0FBRSxHQUFHLENBQUUsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFFLENBQUUsQ0FBQztBQUV0RCxNQUFNLENBQUMsTUFBTSxNQUFNLEdBQUcsZ0JBQWdCLENBQUM7QUFDdkMsTUFBTSxVQUFVLGdCQUFnQixDQUFnQixHQUFNLEVBQUUsSUFBSSxHQUFHLENBQUM7SUFDOUQsT0FBTyxDQUFDLE1BQXFCLEVBQUUsRUFBRTtRQUMvQixPQUFPLElBQUksVUFBVSxDQUFJLFVBQVUsQ0FBQyxFQUFFO1lBQ3BDLElBQUksT0FBTyxHQUFHLEtBQUssQ0FBQztZQUNwQixVQUFVLENBQUMsR0FBRyxFQUFFO2dCQUNkLElBQUcsQ0FBQyxPQUFPLEVBQUU7b0JBQ1gsVUFBVSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztpQkFDdEI7WUFDSCxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUM7WUFDVCxNQUFNLEdBQUcsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDO2dCQUMzQixJQUFJLENBQUMsQ0FBQyxJQUFJLE9BQU8sR0FBRyxJQUFJLENBQUMsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFBLENBQUMsQ0FBQztnQkFDOUMsS0FBSyxDQUFDLEdBQUcsSUFBSSxPQUFPLEdBQUcsSUFBSSxDQUFDLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQSxDQUFDLENBQUM7Z0JBQ3BELFFBQVEsS0FBSyxPQUFPLEdBQUcsSUFBSSxDQUFDLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsQ0FBQzthQUN0RCxDQUFDLENBQUM7WUFDSCxPQUFPLEdBQUcsRUFBRSxDQUFDLEdBQUcsQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNqQyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUMsQ0FBQTtBQUVILENBQUM7QUFFRCxNQUFNLENBQUMsTUFBTSxhQUFhLEdBQUcsQ0FBSSxPQUEwQixFQUFtQixFQUFFO0lBQzlFLE9BQU8sYUFBYSxDQUNsQixPQUFPLENBQUMsR0FBRyxDQUFFLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFVLENBQUMsQ0FBQyxDQUFDLENBQzVELENBQUMsSUFBSSxDQUNKLEdBQUcsQ0FBRSxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBRSxDQUN6QixDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBRUYsTUFBTSxVQUFVLFNBQVMsQ0FBRSxZQUFpQyxFQUFFLGVBQXdCLElBQUk7SUFDeEYsT0FBTyxDQUFJLE1BQXFCLEVBQWtCLEVBQUU7UUFDbEQsT0FBTyxJQUFJLFVBQVUsQ0FBQyxTQUFTLENBQUMsRUFBRTtZQUNoQyxJQUFJLElBQUksR0FBRyxZQUFZLENBQUM7WUFDeEIsTUFBTSxZQUFZLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztZQUN4QyxZQUFZLENBQUMsR0FBRyxDQUFFLFlBQVksQ0FBQyxTQUFTLENBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxJQUFJLEdBQUcsRUFBRSxDQUFFLENBQUMsQ0FBQztZQUM3RCxZQUFZLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUM7Z0JBQ2hDLElBQUksQ0FBQyxLQUFLO29CQUNSLElBQUcsSUFBSSxFQUFFO3dCQUNQLFNBQVMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7cUJBQ3ZCO2dCQUNILENBQUM7Z0JBQ0QsS0FBSyxFQUFFLEtBQUssQ0FBQyxFQUFFLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUM7Z0JBQ3RDLFFBQVEsRUFBRSxHQUFHLEVBQUUsQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFO2FBQ3JDLENBQUMsQ0FBQyxDQUFDO1lBQ0osT0FBTyxZQUFZLENBQUM7UUFDdEIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDLENBQUE7QUFDSCxDQUFDO0FBRUQsTUFBTSxVQUFVLFdBQVcsQ0FBRSxPQUF3QjtJQUNuRCxPQUFPLENBQUksTUFBcUIsRUFBa0IsRUFBRTtRQUNsRCxPQUFPLElBQUksVUFBVSxDQUFDLFNBQVMsQ0FBQyxFQUFFO1lBQ2hDLE1BQU0sWUFBWSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7WUFDeEMsSUFBSSxRQUFRLEdBQUcsS0FBSyxDQUFDO1lBQ3JCLFlBQVksQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBRSxDQUFDLENBQUMsRUFBRSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDO1lBQzNELFlBQVksQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQztnQkFDaEMsSUFBSSxDQUFDLEtBQUs7b0JBQ1IsSUFBRyxRQUFRLEVBQUU7d0JBQ1gsUUFBUSxHQUFHLEtBQUssQ0FBQztxQkFDbEI7eUJBQU07d0JBQ0wsU0FBUyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztxQkFDdkI7Z0JBQ0gsQ0FBQztnQkFDRCxLQUFLLEVBQUUsS0FBSyxDQUFDLEVBQUUsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQztnQkFDdEMsUUFBUSxFQUFFLEdBQUcsRUFBRSxDQUFDLFNBQVMsQ0FBQyxRQUFRLEVBQUU7YUFDckMsQ0FBQyxDQUFDLENBQUM7WUFDSixPQUFPLFlBQVksQ0FBQztRQUN0QixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUMsQ0FBQTtBQUNILENBQUM7QUFFRCxNQUFNLFVBQVUsa0JBQWtCLENBQUksYUFBaUI7SUFDckQsT0FBTyxDQUFDLE1BQXFCLEVBQUUsRUFBRTtRQUMvQixPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQyxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUM7SUFDM0QsQ0FBQyxDQUFBO0FBQ0gsQ0FBQztBQUVELE1BQU0sVUFBVSxPQUFPO0lBQ3JCLE9BQVEsQ0FBQyxNQUF3QyxFQUFFLEVBQUU7UUFDbkQsT0FBUSxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBRSxDQUFDLENBQXVCLEVBQVUsRUFBRSxDQUFDLENBQUMsSUFBSSxJQUFJLENBQUMsQ0FBRSxDQUFBO0lBQy9FLENBQUMsQ0FBQTtBQUNILENBQUM7QUFFRCxNQUFNLFVBQVUsT0FBTyxDQUFJLFNBQTRCLEVBQUUsU0FBaUI7SUFDeEUsT0FBTyxDQUFDLEdBQWtCLEVBQUUsRUFBRTtRQUM1QixPQUFPLEdBQUcsQ0FBQyxJQUFJLENBQ2IsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFO1lBQ1osSUFBSSxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUU7Z0JBQ2hCLE9BQU8sS0FBSyxDQUNWLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQ1QsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FDaEMsQ0FBQyxJQUFJLENBQ0osT0FBTyxFQUFFLEVBQ1QsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUNkLENBQUM7YUFDSDtpQkFBTTtnQkFDTCxPQUFPLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUNkO1FBQ0gsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUMsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQcmVkaWNhdGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgZmxhdHRlbiB9IGZyb20gJ2xvZGFzaCc7XHJcbmltcG9ydCB7XHJcbiAgZmlsdGVyLFxyXG4gIGZpcnN0LFxyXG4gIG1hcCxcclxuICBwYWlyd2lzZSxcclxuICBzdGFydFdpdGgsXHJcbiAgT2JzZXJ2YWJsZSxcclxuICBjb21iaW5lTGF0ZXN0LFxyXG4gIFN1YnNjcmlwdGlvbixcclxuICBNb25vVHlwZU9wZXJhdG9yRnVuY3Rpb24sXHJcbiAgT3BlcmF0b3JGdW5jdGlvbixcclxuICBjb25jYXRNYXAsXHJcbiAgbWVyZ2UsXHJcbiAgb2YsXHJcbiAgZGVsYXlcclxufSBmcm9tICdyeGpzJztcclxuXHJcblxyXG5leHBvcnQgY29uc3Qgb25jZVdoZW4gPSA8VD4ocHJlZGljYXRlOiBQcmVkaWNhdGU8VD4pID0+IChzcmM6IE9ic2VydmFibGU8VD4pIDogT2JzZXJ2YWJsZTxUPiA9PiB7XHJcbiAgcmV0dXJuIHNyYy5waXBlKGZpbHRlcihwcmVkaWNhdGUpLGZpcnN0KCkpO1xyXG59XHJcblxyXG5leHBvcnQgY29uc3QgbWFwQXJyYXkgPSA8VCwgVT4obWFwRnVuYzogKHNyYzogVCwgaW5kZXg/OiBudW1iZXIpID0+IFUgKSA9PiAoc291cmNlOiBPYnNlcnZhYmxlPFRbXT4pID0+XHJcbiAgc291cmNlLnBpcGUoIG1hcCggc3JjID0+IHNyYy5tYXAobWFwRnVuYykgKSApO1xyXG5cclxuZXhwb3J0ICBjb25zdCBmaWx0ZXJBcnJheSA9IDxUPihmaWx0ZXJGdW5jOiAoc3JjOiBUKSA9PiBib29sZWFuICkgPT4gKHNvdXJjZTogT2JzZXJ2YWJsZTxUW10+KSA9PlxyXG4gIHNvdXJjZS5waXBlKCBtYXAoIHNyYyA9PiBzcmMuZmlsdGVyKGZpbHRlckZ1bmMpICkgKTtcclxuXHJcbmV4cG9ydCBjb25zdCBvbldhaXQgPSBzdGFydFdpdGhJZkVtcHR5O1xyXG5leHBvcnQgZnVuY3Rpb24gc3RhcnRXaXRoSWZFbXB0eTxULFYgZXh0ZW5kcyBUPih2YWw6IFYsIHdhaXQgPSAwKSA6IE1vbm9UeXBlT3BlcmF0b3JGdW5jdGlvbjxUPiB7XHJcbiAgcmV0dXJuIChzb3VyY2U6IE9ic2VydmFibGU8VD4pID0+IHtcclxuICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZTxUPihzdWJzY3JpYmVyID0+IHtcclxuICAgICAgbGV0IGVtaXR0ZWQgPSBmYWxzZTtcclxuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgaWYoIWVtaXR0ZWQpIHtcclxuICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWwpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSwgd2FpdCk7XHJcbiAgICAgIGNvbnN0IHN1YiA9IHNvdXJjZS5zdWJzY3JpYmUoe1xyXG4gICAgICAgIG5leHQoeCkgeyBlbWl0dGVkID0gdHJ1ZTsgc3Vic2NyaWJlci5uZXh0KHgpIH0sXHJcbiAgICAgICAgZXJyb3IoZXJyKSB7IGVtaXR0ZWQgPSB0cnVlOyBzdWJzY3JpYmVyLmVycm9yKGVycikgfSxcclxuICAgICAgICBjb21wbGV0ZSgpIHsgZW1pdHRlZCA9IHRydWU7IHN1YnNjcmliZXIuY29tcGxldGUoKTsgfVxyXG4gICAgICB9KTtcclxuICAgICAgcmV0dXJuICgpID0+IHN1Yi51bnN1YnNjcmliZSgpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxufVxyXG5cclxuZXhwb3J0IGNvbnN0IGNvbWJpbmVBcnJheXMgPSA8VD4oc291cmNlczogT2JzZXJ2YWJsZTxUW10+W10pOiBPYnNlcnZhYmxlPFRbXT4gPT4ge1xyXG4gIHJldHVybiBjb21iaW5lTGF0ZXN0KFxyXG4gICAgc291cmNlcy5tYXAoIHNyYyA9PiBzcmMucGlwZShzdGFydFdpdGhJZkVtcHR5KFtdIGFzIFQgW10pKSlcclxuICApLnBpcGUoXHJcbiAgICBtYXAoIHJlcyA9PiByZXMuZmxhdCgpIClcclxuICApO1xyXG59O1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHN3aXRjaE9mZiggc3dpdGNoU291cmNlOiBPYnNlcnZhYmxlPGJvb2xlYW4+LCBkZWZhdWx0U3RhdGU6IGJvb2xlYW4gPSB0cnVlKSB7XHJcbiAgcmV0dXJuIDxUPihzb3VyY2U6IE9ic2VydmFibGU8VD4pIDogT2JzZXJ2YWJsZTxUPiA9PiB7XHJcbiAgICByZXR1cm4gbmV3IE9ic2VydmFibGUoc3Vic2NpYmVyID0+IHtcclxuICAgICAgbGV0IGlzT24gPSBkZWZhdWx0U3RhdGU7XHJcbiAgICAgIGNvbnN0IHN1YnNjcmlwdGlvbiA9IG5ldyBTdWJzY3JpcHRpb24oKTtcclxuICAgICAgc3Vic2NyaXB0aW9uLmFkZCggc3dpdGNoU291cmNlLnN1YnNjcmliZSggb24gPT4gaXNPbiA9IG9uICkpO1xyXG4gICAgICBzdWJzY3JpcHRpb24uYWRkKHNvdXJjZS5zdWJzY3JpYmUoe1xyXG4gICAgICAgIG5leHQodmFsdWUpIHtcclxuICAgICAgICAgIGlmKGlzT24pIHtcclxuICAgICAgICAgICAgc3Vic2NpYmVyLm5leHQodmFsdWUpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgZXJyb3I6IGVycm9yID0+IHN1YnNjaWJlci5lcnJvcihlcnJvciksXHJcbiAgICAgICAgY29tcGxldGU6ICgpID0+IHN1YnNjaWJlci5jb21wbGV0ZSgpXHJcbiAgICAgIH0pKTtcclxuICAgICAgcmV0dXJuIHN1YnNjcmlwdGlvbjtcclxuICAgIH0pO1xyXG4gIH1cclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHNraXBPbmVXaGVuKCBza2lwcGVyOiBPYnNlcnZhYmxlPGFueT4gKSB7XHJcbiAgcmV0dXJuIDxUPihzb3VyY2U6IE9ic2VydmFibGU8VD4pIDogT2JzZXJ2YWJsZTxUPiA9PiB7XHJcbiAgICByZXR1cm4gbmV3IE9ic2VydmFibGUoc3Vic3JpYmVyID0+IHtcclxuICAgICAgY29uc3Qgc3Vic2NyaXB0aW9uID0gbmV3IFN1YnNjcmlwdGlvbigpO1xyXG4gICAgICBsZXQgc2tpcE5leHQgPSBmYWxzZTtcclxuICAgICAgc3Vic2NyaXB0aW9uLmFkZChza2lwcGVyLnN1YnNjcmliZSggXyA9PiBza2lwTmV4dCA9IHRydWUpKTtcclxuICAgICAgc3Vic2NyaXB0aW9uLmFkZChzb3VyY2Uuc3Vic2NyaWJlKHtcclxuICAgICAgICBuZXh0KHZhbHVlKSB7XHJcbiAgICAgICAgICBpZihza2lwTmV4dCkge1xyXG4gICAgICAgICAgICBza2lwTmV4dCA9IGZhbHNlO1xyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgc3Vic3JpYmVyLm5leHQodmFsdWUpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgZXJyb3I6IGVycm9yID0+IHN1YnNyaWJlci5lcnJvcihlcnJvciksXHJcbiAgICAgICAgY29tcGxldGU6ICgpID0+IHN1YnNyaWJlci5jb21wbGV0ZSgpXHJcbiAgICAgIH0pKTtcclxuICAgICAgcmV0dXJuIHN1YnNjcmlwdGlvbjtcclxuICAgIH0pO1xyXG4gIH1cclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHByZXZpb3VzQW5kQ3VycmVudDxUPihzdGFydGluZ1ZhbHVlIDogVCkgOiBPcGVyYXRvckZ1bmN0aW9uPFQsIFtULCBUXT4ge1xyXG4gIHJldHVybiAoc291cmNlOiBPYnNlcnZhYmxlPFQ+KSA9PiB7XHJcbiAgICByZXR1cm4gc291cmNlLnBpcGUoc3RhcnRXaXRoKHN0YXJ0aW5nVmFsdWUpLCBwYWlyd2lzZSgpKTtcclxuICB9XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBub3ROdWxsPFQ+KCk6IE9wZXJhdG9yRnVuY3Rpb248KFQgfCBudWxsIHwgdW5kZWZpbmVkKSwgVD4ge1xyXG4gIHJldHVybiAgKHNvdXJjZTogT2JzZXJ2YWJsZTxUIHwgbnVsbCB8IHVuZGVmaW5lZD4pID0+IHtcclxuICAgIHJldHVybiAgc291cmNlLnBpcGUoZmlsdGVyKCAobzogVCB8IG51bGwgfCB1bmRlZmluZWQpOiBvIGlzIFQgPT4gbyAhPSBudWxsKSApXHJcbiAgfVxyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZGVsYXlPbjxUPihwcmVkaWNhdGU6ICh0OiBUKSA9PiBib29sZWFuLCBkZWxheVRpbWU6IG51bWJlcikge1xyXG4gIHJldHVybiAoc3JjOiBPYnNlcnZhYmxlPFQ+KSA9PiB7XHJcbiAgICByZXR1cm4gc3JjLnBpcGUoXHJcbiAgICAgIGNvbmNhdE1hcChyID0+IHtcclxuICAgICAgICBpZiAocHJlZGljYXRlKHIpKSB7XHJcbiAgICAgICAgICByZXR1cm4gbWVyZ2UoXHJcbiAgICAgICAgICAgIG9mKHsgciB9KSxcclxuICAgICAgICAgICAgb2YobnVsbCkucGlwZShkZWxheShkZWxheVRpbWUpKVxyXG4gICAgICAgICAgKS5waXBlKFxyXG4gICAgICAgICAgICBub3ROdWxsKCksXHJcbiAgICAgICAgICAgIG1hcChkID0+IGQucilcclxuICAgICAgICAgICk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHJldHVybiBvZihyKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG4gIH07XHJcbn1cclxuIl19
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { merge, Observable, Subject } from 'rxjs';
|
|
2
|
+
export class Subjectifier extends Observable {
|
|
3
|
+
constructor(_source) {
|
|
4
|
+
super((obs) => {
|
|
5
|
+
const s = merge(_source, this._subj).subscribe(obs);
|
|
6
|
+
return s;
|
|
7
|
+
});
|
|
8
|
+
this._source = _source;
|
|
9
|
+
this._subj = new Subject();
|
|
10
|
+
this.merged = merge(this._source, this._subj);
|
|
11
|
+
this.next = this._subj.next.bind(this._subj);
|
|
12
|
+
this.newSubj = (...operations) => new Subjectifier(this.merged.pipe(...operations));
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3ViamVjdGlmaWVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci11dGlsaXRpZXMvc3JjL3J4anMvc3ViamVjdGlmaWVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFZLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUU1RCxNQUFNLE9BQU8sWUFBZ0IsU0FBUSxVQUFhO0lBR2hELFlBQW9CLE9BQXNCO1FBQ3hDLEtBQUssQ0FBQyxDQUFDLEdBQWdCLEVBQUUsRUFBRTtZQUN6QixNQUFNLENBQUMsR0FBRyxLQUFLLENBQUUsT0FBTyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUUsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDdEQsT0FBTyxDQUFDLENBQUM7UUFDWCxDQUFDLENBQUMsQ0FBQztRQUplLFlBQU8sR0FBUCxPQUFPLENBQWU7UUFGbEMsVUFBSyxHQUFHLElBQUksT0FBTyxFQUFLLENBQUM7UUFDekIsV0FBTSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQU9qRCxTQUFJLEdBQXVCLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDNUQsWUFBTyxHQUFHLENBQUMsR0FBRyxVQUFtQyxFQUFFLEVBQUUsQ0FDbkQsSUFBSSxZQUFZLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxVQUFVLENBQUMsQ0FBQyxDQUFDO0lBSHBELENBQUM7Q0FJRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IG1lcmdlLCBPYnNlcnZhYmxlLCBPYnNlcnZlciwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG50eXBlIFBpcGVMaWtlPFQ+ID0gT2JzZXJ2YWJsZTxUPlsncGlwZSddO1xyXG5leHBvcnQgY2xhc3MgU3ViamVjdGlmaWVyPFQ+IGV4dGVuZHMgT2JzZXJ2YWJsZTxUPntcclxuICBwcml2YXRlIF9zdWJqID0gbmV3IFN1YmplY3Q8VD4oKTtcclxuICBwcml2YXRlIG1lcmdlZCA9IG1lcmdlKHRoaXMuX3NvdXJjZSwgdGhpcy5fc3Viaik7XHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBfc291cmNlOiBPYnNlcnZhYmxlPFQ+KXtcclxuICAgIHN1cGVyKChvYnM6IE9ic2VydmVyPFQ+KSA9PiB7XHJcbiAgICAgIGNvbnN0IHMgPSBtZXJnZSggX3NvdXJjZSwgdGhpcy5fc3ViaiApLnN1YnNjcmliZShvYnMpO1xyXG4gICAgICByZXR1cm4gcztcclxuICAgIH0pO1xyXG4gIH1cclxuICBuZXh0OiBTdWJqZWN0PFQ+WyduZXh0J10gPSB0aGlzLl9zdWJqLm5leHQuYmluZCh0aGlzLl9zdWJqKTtcclxuICBuZXdTdWJqID0gKC4uLm9wZXJhdGlvbnM6IFBhcmFtZXRlcnM8UGlwZUxpa2U8VD4+KSA9PlxyXG4gICAgbmV3IFN1YmplY3RpZmllcih0aGlzLm1lcmdlZC5waXBlKC4uLm9wZXJhdGlvbnMpKTtcclxufSJdfQ==
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { ArrayStyle } from '../interfaces/report-def';
|
|
2
|
+
export const ArrayDefaults = {
|
|
3
|
+
limit: 3,
|
|
4
|
+
arrayStyle: ArrayStyle.CommaDelimited
|
|
5
|
+
};
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGVmYXVsdFNldHRpbmdzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci11dGlsaXRpZXMvc3JjL3RhYmxlLWJ1aWxkZXIvY2xhc3Nlcy9EZWZhdWx0U2V0dGluZ3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBT3RELE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBRztJQUMzQixLQUFLLEVBQUcsQ0FBQztJQUNULFVBQVUsRUFBRyxVQUFVLENBQUMsY0FBYztDQUN2QyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXJyYXlTdHlsZSB9IGZyb20gJy4uL2ludGVyZmFjZXMvcmVwb3J0LWRlZic7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIERlZmF1bHRTZXR0aW5ncyB7XHJcbiAgZGF0ZUZvcm1hdD86IHN0cmluZztcclxuICBkYXRlVGltZUZvcm1hdD86IHN0cmluZztcclxufVxyXG5cclxuZXhwb3J0IGNvbnN0IEFycmF5RGVmYXVsdHMgPSB7XHJcbiAgbGltaXQgOiAzLFxyXG4gIGFycmF5U3R5bGUgOiBBcnJheVN0eWxlLkNvbW1hRGVsaW1pdGVkXHJcbn0iXX0=
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { MatTableDataSource } from '@angular/material/table';
|
|
2
|
+
export class MatTableObservableDataSource extends MatTableDataSource {
|
|
3
|
+
constructor(dataSrc) {
|
|
4
|
+
super([]);
|
|
5
|
+
this.dataSrc = dataSrc;
|
|
6
|
+
}
|
|
7
|
+
connect() {
|
|
8
|
+
if (!this.subscription) {
|
|
9
|
+
this.subscription = this.dataSrc.subscribe(data => this.data = data);
|
|
10
|
+
}
|
|
11
|
+
return super.connect();
|
|
12
|
+
}
|
|
13
|
+
disconnect() {
|
|
14
|
+
if (this.subscription) {
|
|
15
|
+
this.subscription.unsubscribe();
|
|
16
|
+
this.subscription = undefined;
|
|
17
|
+
}
|
|
18
|
+
super.disconnect();
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWF0VGFibGVPYnNlcnZhYmxlRGF0YVNvdXJjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdXRpbGl0aWVzL3NyYy90YWJsZS1idWlsZGVyL2NsYXNzZXMvTWF0VGFibGVPYnNlcnZhYmxlRGF0YVNvdXJjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUc3RCxNQUFNLE9BQU8sNEJBQWdDLFNBQVMsa0JBQXFCO0lBRXpFLFlBQW9CLE9BQXdCO1FBQzFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztRQURRLFlBQU8sR0FBUCxPQUFPLENBQWlCO0lBRTVDLENBQUM7SUFFRCxPQUFPO1FBQ0wsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUU7WUFDdEIsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBRSxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFFLENBQUM7U0FDeEU7UUFDRCxPQUFPLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUN6QixDQUFDO0lBQ0QsVUFBVTtRQUNSLElBQUksSUFBSSxDQUFDLFlBQVksRUFBRTtZQUNyQixJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ2hDLElBQUksQ0FBQyxZQUFZLEdBQUcsU0FBUyxDQUFDO1NBQy9CO1FBQ0QsS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFDO0lBQ3JCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1hdFRhYmxlRGF0YVNvdXJjZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3RhYmxlJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XHJcblxyXG5leHBvcnQgY2xhc3MgTWF0VGFibGVPYnNlcnZhYmxlRGF0YVNvdXJjZTxUPiBleHRlbmRzICBNYXRUYWJsZURhdGFTb3VyY2U8VD4ge1xyXG4gIHN1YnNjcmlwdGlvbj86IFN1YnNjcmlwdGlvbjtcclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGRhdGFTcmM6IE9ic2VydmFibGU8VFtdPikge1xyXG4gICAgc3VwZXIoW10pO1xyXG4gIH1cclxuXHJcbiAgY29ubmVjdCgpIHtcclxuICAgIGlmICghdGhpcy5zdWJzY3JpcHRpb24pIHtcclxuICAgICAgdGhpcy5zdWJzY3JpcHRpb24gPSB0aGlzLmRhdGFTcmMuc3Vic2NyaWJlKCBkYXRhID0+IHRoaXMuZGF0YSA9IGRhdGEgKTtcclxuICAgIH1cclxuICAgIHJldHVybiBzdXBlci5jb25uZWN0KCk7XHJcbiAgfVxyXG4gIGRpc2Nvbm5lY3QoKSB7XHJcbiAgICBpZiAodGhpcy5zdWJzY3JpcHRpb24pIHtcclxuICAgICAgdGhpcy5zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcclxuICAgICAgdGhpcy5zdWJzY3JpcHRpb24gPSB1bmRlZmluZWQ7XHJcbiAgICB9XHJcbiAgICBzdXBlci5kaXNjb25uZWN0KCk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|