@one-paragon/angular-utilities 0.0.1 → 0.0.6
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/esm2020/http-request-state/HttpRequestStateFactory.mjs +27 -0
- package/esm2020/http-request-state/HttpRequestStateStore.mjs +77 -0
- package/esm2020/http-request-state/directives/HttpStateDirectiveBase.mjs +34 -0
- package/esm2020/http-request-state/directives/http-error-state-directive.mjs +29 -0
- package/esm2020/http-request-state/directives/http-inProgress-state-directive.mjs +29 -0
- package/esm2020/http-request-state/directives/http-notStarted-state-directive.mjs +29 -0
- package/esm2020/http-request-state/directives/http-success-state-directive.mjs +29 -0
- package/esm2020/http-request-state/directives/index.mjs +6 -0
- package/esm2020/http-request-state/directives/request-state-directive.mjs +57 -0
- package/esm2020/http-request-state/helpers.mjs +19 -0
- package/esm2020/http-request-state/http-request-state.mjs +39 -0
- package/esm2020/http-request-state/http-state-module.mjs +41 -0
- package/esm2020/http-request-state/index.mjs +7 -0
- package/esm2020/http-request-state/rxjs/getRequestorBody.mjs +4 -0
- package/esm2020/http-request-state/rxjs/getRequestorState.mjs +3 -0
- package/esm2020/http-request-state/rxjs/index.mjs +5 -0
- package/esm2020/http-request-state/rxjs/tapError.mjs +12 -0
- package/esm2020/http-request-state/rxjs/tapSuccess.mjs +12 -0
- package/esm2020/http-request-state/types.mjs +15 -0
- package/esm2020/one-paragon-angular-utilities.mjs +5 -0
- package/esm2020/public-api.mjs +13 -4
- package/esm2020/rxjs/defaultShareReplay.mjs +7 -0
- package/esm2020/rxjs/index.mjs +4 -0
- package/esm2020/rxjs/mapError.mjs +8 -0
- package/esm2020/rxjs/rxjs-operators.mjs +77 -0
- package/esm2020/table-builder/classes/DefaultSettings.mjs +6 -0
- package/esm2020/table-builder/classes/GenericTableDataSource.mjs +13 -0
- package/esm2020/table-builder/classes/MatTableObservableDataSource.mjs +21 -0
- package/esm2020/table-builder/classes/TableBuilderConfig.mjs +3 -0
- package/esm2020/table-builder/classes/TableState.mjs +12 -0
- package/esm2020/table-builder/classes/data-filter.mjs +22 -0
- package/esm2020/table-builder/classes/display-col.mjs +2 -0
- package/esm2020/table-builder/classes/filter-info.mjs +60 -0
- package/esm2020/table-builder/classes/table-builder-general-settings.mjs +53 -0
- package/esm2020/table-builder/classes/table-builder.mjs +57 -0
- package/esm2020/table-builder/classes/table-store.mjs +230 -0
- package/esm2020/table-builder/components/array-column.component.mjs +57 -0
- package/esm2020/table-builder/components/column-builder/column-builder.component.mjs +92 -0
- package/esm2020/table-builder/components/date-filter/date-filter.component.mjs +25 -0
- package/esm2020/table-builder/components/filter/filter.component.mjs +53 -0
- package/esm2020/table-builder/components/filter/in-list/in-list-filter.component.mjs +91 -0
- package/esm2020/table-builder/components/gen-col-displayer/gen-col-displayer.component.mjs +45 -0
- package/esm2020/table-builder/components/generic-table/generic-table.component.mjs +153 -0
- package/esm2020/table-builder/components/generic-table/paginator.component.mjs +74 -0
- package/esm2020/table-builder/components/header-menu/header-menu.component.mjs +90 -0
- package/esm2020/table-builder/components/in-filter/in-filter.component.mjs +66 -0
- package/esm2020/table-builder/components/index.mjs +9 -0
- package/esm2020/table-builder/components/initialization-component/initialization-component.mjs +41 -0
- package/esm2020/table-builder/components/number-filter/number-filter.component.mjs +27 -0
- package/esm2020/table-builder/components/sort-menu/sort-menu.component-store.mjs +42 -0
- package/esm2020/table-builder/components/sort-menu/sort-menu.component.mjs +74 -0
- package/esm2020/table-builder/components/table-container/table-container.mjs +174 -0
- package/esm2020/table-builder/components/table-container-filter/filter-list/filter-list.component.mjs +39 -0
- package/esm2020/table-builder/components/table-container-filter/gen-filter-displayer/gen-filter-displayer.component.mjs +30 -0
- package/esm2020/table-builder/components/table-container-filter/table-wrapper-filter-store.mjs +25 -0
- package/esm2020/table-builder/directives/custom-cell-directive.mjs +59 -0
- package/esm2020/table-builder/directives/index.mjs +4 -0
- package/esm2020/table-builder/directives/multi-sort.directive.mjs +42 -0
- package/esm2020/table-builder/directives/resize-column.directive.mjs +85 -0
- package/esm2020/table-builder/enums/filterTypes.mjs +58 -0
- package/esm2020/table-builder/functions/boolean-filter-function.mjs +10 -0
- package/esm2020/table-builder/functions/date-filter-function.mjs +32 -0
- package/esm2020/table-builder/functions/download-data.mjs +12 -0
- package/esm2020/table-builder/functions/null-filter-function.mjs +8 -0
- package/esm2020/table-builder/functions/number-filter-function.mjs +32 -0
- package/esm2020/table-builder/functions/sort-data-function.mjs +5 -0
- package/esm2020/table-builder/functions/string-filter-function.mjs +41 -0
- package/esm2020/table-builder/interfaces/ColumnInfo.mjs +2 -0
- package/esm2020/table-builder/interfaces/dictionary.mjs +2 -0
- package/esm2020/table-builder/interfaces/report-def.mjs +34 -0
- package/esm2020/table-builder/material.module.mjs +223 -0
- package/esm2020/table-builder/ngrx/actions.mjs +5 -0
- package/esm2020/table-builder/ngrx/effects.mjs +48 -0
- package/esm2020/table-builder/ngrx/reducer.mjs +52 -0
- package/esm2020/table-builder/ngrx/selectors.mjs +24 -0
- package/esm2020/table-builder/pipes/column-total.pipe.mjs +21 -0
- package/esm2020/table-builder/pipes/format-filter-type.pipe.mjs +18 -0
- package/esm2020/table-builder/pipes/format-filter-value.pipe.mjs +46 -0
- package/esm2020/table-builder/pipes/key-display.mjs +20 -0
- package/esm2020/table-builder/services/export-to-csv.service.mjs +83 -0
- package/esm2020/table-builder/services/table-template-service.mjs +37 -0
- package/esm2020/table-builder/services/transform-creator.mjs +50 -0
- package/esm2020/table-builder/table-builder.module.mjs +167 -0
- package/esm2020/utilities/directives/auto-focus.directive.mjs +26 -0
- package/esm2020/utilities/directives/buttonSubject.mjs +18 -0
- package/esm2020/utilities/directives/dialog-service.mjs +25 -0
- package/esm2020/utilities/directives/dialog.mjs +120 -0
- package/esm2020/utilities/directives/prevent-enter.directive.mjs +19 -0
- package/esm2020/utilities/directives/stop-propagation.directive.mjs +25 -0
- package/esm2020/utilities/directives/styler.mjs +26 -0
- package/esm2020/utilities/index.mjs +11 -0
- package/esm2020/utilities/module.mjs +73 -0
- package/esm2020/utilities/pipes/function.pipe.mjs +14 -0
- package/esm2020/utilities/pipes/phone.pipe.mjs +20 -0
- package/esm2020/utilities/pipes/space-case.pipes.mjs +28 -0
- package/fesm2015/one-paragon-angular-utilities.mjs +3398 -0
- package/fesm2015/one-paragon-angular-utilities.mjs.map +1 -0
- package/fesm2020/one-paragon-angular-utilities.mjs +3377 -0
- package/fesm2020/one-paragon-angular-utilities.mjs.map +1 -0
- package/{lib → http-request-state}/HttpRequestStateFactory.d.ts +0 -0
- package/{lib → http-request-state}/HttpRequestStateStore.d.ts +1 -1
- package/{lib → http-request-state}/directives/HttpStateDirectiveBase.d.ts +0 -0
- package/{lib → http-request-state}/directives/http-error-state-directive.d.ts +0 -0
- package/{lib → http-request-state}/directives/http-inProgress-state-directive.d.ts +0 -0
- package/{lib → http-request-state}/directives/http-notStarted-state-directive.d.ts +0 -0
- package/{lib → http-request-state}/directives/http-success-state-directive.d.ts +0 -0
- package/{lib → http-request-state}/directives/index.d.ts +0 -0
- package/{lib → http-request-state}/directives/request-state-directive.d.ts +0 -0
- package/{lib → http-request-state}/helpers.d.ts +0 -0
- package/{lib → http-request-state}/http-request-state.d.ts +0 -0
- package/{lib → http-request-state}/http-state-module.d.ts +0 -0
- package/{lib → http-request-state}/index.d.ts +0 -0
- package/{lib → http-request-state}/rxjs/getRequestorBody.d.ts +0 -0
- package/{lib → http-request-state}/rxjs/getRequestorState.d.ts +1 -1
- package/{lib → http-request-state}/rxjs/index.d.ts +0 -2
- package/{lib → http-request-state}/rxjs/tapError.d.ts +0 -0
- package/{lib → http-request-state}/rxjs/tapSuccess.d.ts +0 -0
- package/{lib → http-request-state}/types.d.ts +2 -1
- package/{angular-utilities.d.ts → one-paragon-angular-utilities.d.ts} +1 -1
- package/package.json +21 -26
- package/public-api.d.ts +12 -3
- package/{lib/rxjs → rxjs}/defaultShareReplay.d.ts +0 -0
- package/rxjs/index.d.ts +3 -0
- package/{lib/rxjs → rxjs}/mapError.d.ts +0 -0
- package/rxjs/rxjs-operators.d.ts +9 -0
- package/table-builder/classes/DefaultSettings.d.ts +8 -0
- package/table-builder/classes/GenericTableDataSource.d.ts +8 -0
- package/table-builder/classes/MatTableObservableDataSource.d.ts +9 -0
- package/table-builder/classes/TableBuilderConfig.d.ts +18 -0
- package/table-builder/classes/TableState.d.ts +24 -0
- package/table-builder/classes/data-filter.d.ts +9 -0
- package/table-builder/classes/display-col.d.ts +5 -0
- package/table-builder/classes/filter-info.d.ts +29 -0
- package/table-builder/classes/table-builder-general-settings.d.ts +33 -0
- package/table-builder/classes/table-builder.d.ts +14 -0
- package/table-builder/classes/table-store.d.ts +81 -0
- package/table-builder/components/array-column.component.d.ts +14 -0
- package/table-builder/components/column-builder/column-builder.component.d.ts +46 -0
- package/table-builder/components/date-filter/date-filter.component.d.ts +10 -0
- package/table-builder/components/filter/filter.component.d.ts +281 -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 +57 -0
- package/table-builder/components/generic-table/paginator.component.d.ts +28 -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 +22 -0
- package/table-builder/components/index.d.ts +8 -0
- package/table-builder/components/initialization-component/initialization-component.d.ts +14 -0
- package/table-builder/components/number-filter/number-filter.component.d.ts +12 -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/table-builder/components/table-container/table-container.d.ts +65 -0
- package/table-builder/components/table-container-filter/filter-list/filter-list.component.d.ts +17 -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/table-builder/directives/index.d.ts +3 -0
- package/table-builder/directives/multi-sort.directive.d.ts +11 -0
- package/table-builder/directives/resize-column.directive.d.ts +43 -0
- package/table-builder/enums/filterTypes.d.ts +30 -0
- package/table-builder/functions/boolean-filter-function.d.ts +3 -0
- package/table-builder/functions/date-filter-function.d.ts +3 -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 +3 -0
- package/table-builder/functions/string-filter-function.d.ts +7 -0
- package/table-builder/interfaces/ColumnInfo.d.ts +6 -0
- package/table-builder/interfaces/dictionary.d.ts +3 -0
- package/table-builder/interfaces/report-def.d.ts +86 -0
- package/table-builder/material.module.d.ts +34 -0
- package/table-builder/ngrx/actions.d.ts +23 -0
- package/table-builder/ngrx/effects.d.ts +19 -0
- package/table-builder/ngrx/reducer.d.ts +15 -0
- package/table-builder/ngrx/selectors.d.ts +22 -0
- package/table-builder/pipes/column-total.pipe.d.ts +9 -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/table-template-service.d.ts +14 -0
- package/table-builder/services/transform-creator.d.ts +17 -0
- package/table-builder/table-builder.module.d.ts +41 -0
- package/utilities/directives/auto-focus.directive.d.ts +10 -0
- package/utilities/directives/buttonSubject.d.ts +6 -0
- package/utilities/directives/dialog-service.d.ts +10 -0
- package/utilities/directives/dialog.d.ts +42 -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 +9 -0
- package/utilities/index.d.ts +10 -0
- package/utilities/module.d.ts +15 -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/esm2020/angular-utilities.mjs +0 -5
- package/esm2020/lib/HttpRequestStateFactory.mjs +0 -27
- package/esm2020/lib/HttpRequestStateStore.mjs +0 -77
- package/esm2020/lib/directives/HttpStateDirectiveBase.mjs +0 -34
- package/esm2020/lib/directives/http-error-state-directive.mjs +0 -29
- package/esm2020/lib/directives/http-inProgress-state-directive.mjs +0 -29
- package/esm2020/lib/directives/http-notStarted-state-directive.mjs +0 -29
- package/esm2020/lib/directives/http-success-state-directive.mjs +0 -29
- package/esm2020/lib/directives/index.mjs +0 -6
- package/esm2020/lib/directives/request-state-directive.mjs +0 -57
- package/esm2020/lib/helpers.mjs +0 -19
- package/esm2020/lib/http-request-state.mjs +0 -39
- package/esm2020/lib/http-state-module.mjs +0 -41
- package/esm2020/lib/index.mjs +0 -7
- package/esm2020/lib/rxjs/defaultShareReplay.mjs +0 -7
- package/esm2020/lib/rxjs/getRequestorBody.mjs +0 -4
- package/esm2020/lib/rxjs/getRequestorState.mjs +0 -3
- package/esm2020/lib/rxjs/index.mjs +0 -7
- package/esm2020/lib/rxjs/mapError.mjs +0 -8
- package/esm2020/lib/rxjs/tapError.mjs +0 -12
- package/esm2020/lib/rxjs/tapSuccess.mjs +0 -12
- package/esm2020/lib/types.mjs +0 -14
- package/fesm2015/angular-utilities.mjs +0 -426
- package/fesm2015/angular-utilities.mjs.map +0 -1
- package/fesm2020/angular-utilities.mjs +0 -424
- package/fesm2020/angular-utilities.mjs.map +0 -1
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { Injectable } from "@angular/core";
|
|
2
|
+
import { HttpRequestStateStore } from './HttpRequestStateStore';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class HttpRequestStateFactory {
|
|
5
|
+
constructor() {
|
|
6
|
+
this.requestors = [];
|
|
7
|
+
}
|
|
8
|
+
ngOnDestroy() {
|
|
9
|
+
this.requestors.forEach(request => request.ngOnDestroy());
|
|
10
|
+
}
|
|
11
|
+
create(req, options) {
|
|
12
|
+
const requestor = new HttpRequestStateStore(req, options);
|
|
13
|
+
this.requestors.push(requestor);
|
|
14
|
+
return requestor;
|
|
15
|
+
}
|
|
16
|
+
createHttpClient(r, options) {
|
|
17
|
+
const requestor = new HttpRequestStateStore(r, options);
|
|
18
|
+
this.requestors.push(requestor);
|
|
19
|
+
return requestor;
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
HttpRequestStateFactory.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: HttpRequestStateFactory, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
23
|
+
HttpRequestStateFactory.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: HttpRequestStateFactory });
|
|
24
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: HttpRequestStateFactory, decorators: [{
|
|
25
|
+
type: Injectable
|
|
26
|
+
}], ctorParameters: function () { return []; } });
|
|
27
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSHR0cFJlcXVlc3RTdGF0ZUZhY3RvcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXV0aWxpdGllcy9zcmMvaHR0cC1yZXF1ZXN0LXN0YXRlL0h0dHBSZXF1ZXN0U3RhdGVGYWN0b3J5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFFdEQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0seUJBQXlCLENBQUM7O0FBSWhFLE1BQU0sT0FBTyx1QkFBdUI7SUFFbEM7UUFJUSxlQUFVLEdBQWdCLEVBQUUsQ0FBQztJQUp0QixDQUFDO0lBQ2hCLFdBQVc7UUFDVCxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBRSxPQUFPLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO0lBQzdELENBQUM7SUFFRCxNQUFNLENBQTJCLEdBQWlDLEVBQUUsT0FBNkI7UUFDL0YsTUFBTSxTQUFTLEdBQUcsSUFBSSxxQkFBcUIsQ0FBQyxHQUFHLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDMUQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDaEMsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQztJQUVELGdCQUFnQixDQUFLLENBQXVDLEVBQUcsT0FBNkI7UUFDMUYsTUFBTSxTQUFTLEdBQUcsSUFBSSxxQkFBcUIsQ0FBQyxDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDeEQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDaEMsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQzs7b0hBakJVLHVCQUF1Qjt3SEFBdkIsdUJBQXVCOzJGQUF2Qix1QkFBdUI7a0JBRG5DLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBPbkRlc3Ryb3kgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBIdHRwUmVxdWVzdEZhY3RvcnksIFJlcXVlc3RTdGF0ZU9wdGlvbnMgfSBmcm9tIFwiLi90eXBlc1wiO1xyXG5pbXBvcnQgeyBIdHRwUmVxdWVzdFN0YXRlU3RvcmUgfSBmcm9tICcuL0h0dHBSZXF1ZXN0U3RhdGVTdG9yZSc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tIFwicnhqc1wiO1xyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgSHR0cFJlcXVlc3RTdGF0ZUZhY3RvcnkgIGltcGxlbWVudHMgT25EZXN0cm95IHtcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7fVxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5yZXF1ZXN0b3JzLmZvckVhY2goIHJlcXVlc3QgPT4gcmVxdWVzdC5uZ09uRGVzdHJveSgpKTtcclxuICB9XHJcbiAgcHJpdmF0ZSByZXF1ZXN0b3JzOiBPbkRlc3Ryb3lbXSA9IFtdO1xyXG4gIGNyZWF0ZTxUUGFyYW0gZXh0ZW5kcyBhbnlbXSwgVD4oIHJlcTogSHR0cFJlcXVlc3RGYWN0b3J5PFRQYXJhbSxUPiwgb3B0aW9ucz86IFJlcXVlc3RTdGF0ZU9wdGlvbnMgKSA6IEh0dHBSZXF1ZXN0U3RhdGVTdG9yZTxUUGFyYW0sVD4ge1xyXG4gICAgY29uc3QgcmVxdWVzdG9yID0gbmV3IEh0dHBSZXF1ZXN0U3RhdGVTdG9yZShyZXEsIG9wdGlvbnMpO1xyXG4gICAgdGhpcy5yZXF1ZXN0b3JzLnB1c2gocmVxdWVzdG9yKTtcclxuICAgIHJldHVybiByZXF1ZXN0b3I7XHJcbiAgfVxyXG5cclxuICBjcmVhdGVIdHRwQ2xpZW50PFQ+KCByOiAobzogT2JzZXJ2YWJsZTxUPiApID0+IE9ic2VydmFibGU8VD4gLCBvcHRpb25zPzogUmVxdWVzdFN0YXRlT3B0aW9ucyApICB7XHJcbiAgICBjb25zdCByZXF1ZXN0b3IgPSBuZXcgSHR0cFJlcXVlc3RTdGF0ZVN0b3JlKHIsIG9wdGlvbnMpO1xyXG4gICAgdGhpcy5yZXF1ZXN0b3JzLnB1c2gocmVxdWVzdG9yKTtcclxuICAgIHJldHVybiByZXF1ZXN0b3I7XHJcbiAgfVxyXG5cclxufSJdfQ==
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import { ComponentStore } from '@ngrx/component-store';
|
|
2
|
+
import { HttpRequestStrategy, HttpRequestStatus } from './types';
|
|
3
|
+
import { createFailure, createSuccess, inProgress, isErrorState, isSuccessState, notStarted } from './helpers';
|
|
4
|
+
import { filter, map, mergeMap, pluck, startWith, switchMap, tap } from 'rxjs/operators';
|
|
5
|
+
import { mapError } from '../rxjs/mapError';
|
|
6
|
+
import { defaultShareReplay } from '../rxjs/defaultShareReplay';
|
|
7
|
+
import { Directive } from '@angular/core';
|
|
8
|
+
import * as i0 from "@angular/core";
|
|
9
|
+
export class HttpRequestStateStore extends ComponentStore {
|
|
10
|
+
constructor(req, options) {
|
|
11
|
+
super({ requestParams: null, response: notStarted });
|
|
12
|
+
this.req = req;
|
|
13
|
+
this.options = options;
|
|
14
|
+
this.flatteningStrategy = () => {
|
|
15
|
+
if (this.options?.strategy !== HttpRequestStrategy.concurrent) {
|
|
16
|
+
return switchMap((params) => this.createRequest(...params));
|
|
17
|
+
}
|
|
18
|
+
return mergeMap((params) => this.createRequest(...params));
|
|
19
|
+
};
|
|
20
|
+
this.requestEffect = this.effect((obs) => {
|
|
21
|
+
return (obs).pipe(this.flatteningStrategy(), tap(state => this.setState(state)));
|
|
22
|
+
});
|
|
23
|
+
this.flattenedRequest = (...value) => {
|
|
24
|
+
return this.requestEffect(value);
|
|
25
|
+
};
|
|
26
|
+
this.singleUseRequest = (...value) => {
|
|
27
|
+
if (this.get().response.status !== HttpRequestStatus.notStarted) {
|
|
28
|
+
throw new Error("state can not be reused. either reset the state by calling reset() or use a state requester that allows concurrent requests.");
|
|
29
|
+
}
|
|
30
|
+
return this.requestEffect(value);
|
|
31
|
+
};
|
|
32
|
+
this.selectHttpState$ = this.state$.pipe(pluck('response'));
|
|
33
|
+
this.selectStatus$ = this.selectHttpState$.pipe(pluck('status'));
|
|
34
|
+
this.selectError$ = this.state$.pipe(map(r => r.response), filter(isErrorState), map(state => state.error));
|
|
35
|
+
this.selectResponse$ = this.state$.pipe(map(r => r.response), filter(isSuccessState), map(state => state.body));
|
|
36
|
+
this.errorHandled = false;
|
|
37
|
+
this.on = (srcObservable, func) => {
|
|
38
|
+
return this.effect((src) => {
|
|
39
|
+
return src.pipe(tap(func));
|
|
40
|
+
})(srcObservable);
|
|
41
|
+
};
|
|
42
|
+
this.request = (this.options?.strategy === HttpRequestStrategy.singleUse) ? this.singleUseRequest : this.flattenedRequest;
|
|
43
|
+
}
|
|
44
|
+
reset() {
|
|
45
|
+
this.setState({ requestParams: null, response: notStarted });
|
|
46
|
+
}
|
|
47
|
+
onError(cb) {
|
|
48
|
+
this.errorHandled = true;
|
|
49
|
+
this.on(this.selectError$, cb);
|
|
50
|
+
}
|
|
51
|
+
onSuccess(cb) {
|
|
52
|
+
this.on(this.selectResponse$, cb);
|
|
53
|
+
return this;
|
|
54
|
+
}
|
|
55
|
+
onSuccessWithRequest(func) {
|
|
56
|
+
this.onUpdate(({ requestParams, response }) => {
|
|
57
|
+
if (isSuccessState(response)) {
|
|
58
|
+
func({ requestParams, body: response.body });
|
|
59
|
+
}
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
createRequest(...params) {
|
|
63
|
+
return this.req(...params).pipe(map(createSuccess), mapError(createFailure), startWith(inProgress), map(state => ({ requestParams: params, response: state })), defaultShareReplay());
|
|
64
|
+
}
|
|
65
|
+
onUpdate(func) {
|
|
66
|
+
this.on(this.state$, func);
|
|
67
|
+
}
|
|
68
|
+
ngOnDestroy() {
|
|
69
|
+
super.ngOnDestroy();
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
HttpRequestStateStore.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: HttpRequestStateStore, deps: "invalid", target: i0.ɵɵFactoryTarget.Directive });
|
|
73
|
+
HttpRequestStateStore.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.0.2", type: HttpRequestStateStore, usesInheritance: true, ngImport: i0 });
|
|
74
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: HttpRequestStateStore, decorators: [{
|
|
75
|
+
type: Directive
|
|
76
|
+
}], ctorParameters: function () { return [{ type: undefined }, { type: undefined }]; } });
|
|
77
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSHR0cFJlcXVlc3RTdGF0ZVN0b3JlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci11dGlsaXRpZXMvc3JjL2h0dHAtcmVxdWVzdC1zdGF0ZS9IdHRwUmVxdWVzdFN0YXRlU3RvcmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3ZELE9BQU8sRUFBc0IsbUJBQW1CLEVBQUUsaUJBQWlCLEVBQXlDLE1BQU0sU0FBUyxDQUFDO0FBQzVILE9BQU8sRUFBRSxhQUFhLEVBQUUsYUFBYSxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsY0FBYyxFQUFFLFVBQVUsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUMvRyxPQUFPLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFekYsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQzVDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBUTFDLE1BQU0sT0FBTyxxQkFBK0MsU0FBUSxjQUF5QztJQUV6RyxZQUFvQixHQUFpQyxFQUFVLE9BQTZCO1FBQzFGLEtBQUssQ0FBQyxFQUFDLGFBQWEsRUFBRSxJQUFXLEVBQUUsUUFBUSxFQUFDLFVBQVUsRUFBQyxDQUFDLENBQUM7UUFEdkMsUUFBRyxHQUFILEdBQUcsQ0FBOEI7UUFBVSxZQUFPLEdBQVAsT0FBTyxDQUFzQjtRQVVwRix1QkFBa0IsR0FBRyxHQUFHLEVBQUU7WUFDaEMsSUFBRyxJQUFJLENBQUMsT0FBTyxFQUFFLFFBQVEsS0FBSyxtQkFBbUIsQ0FBQyxVQUFVLEVBQUU7Z0JBQzVELE9BQU8sU0FBUyxDQUFFLENBQUMsTUFBbUIsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxDQUFHLENBQUM7YUFDN0U7WUFDRCxPQUFPLFFBQVEsQ0FBRSxDQUFDLE1BQW1CLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDO1FBQzNFLENBQUMsQ0FBQTtRQUVPLGtCQUFhLEdBQTBDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUE0QixFQUFFLEVBQUU7WUFDMUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FDZixJQUFJLENBQUMsa0JBQWtCLEVBQUUsRUFDekIsR0FBRyxDQUE2QixLQUFLLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FDL0QsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUFDO1FBRUsscUJBQWdCLEdBQUcsQ0FBQyxHQUFHLEtBQWtCLEVBQUUsRUFBRTtZQUNuRCxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFpQixDQUFDO1FBQ25ELENBQUMsQ0FBQTtRQUNPLHFCQUFnQixHQUFHLENBQUMsR0FBRyxLQUFrQixFQUFFLEVBQUU7WUFDbkQsSUFBSSxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsUUFBUSxDQUFDLE1BQU0sS0FBSyxpQkFBaUIsQ0FBQyxVQUFVLEVBQUU7Z0JBQy9ELE1BQU0sSUFBSSxLQUFLLENBQUMsOEhBQThILENBQUMsQ0FBQzthQUNqSjtZQUNELE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQWlCLENBQUM7UUFDbkQsQ0FBQyxDQUFBO1FBRUQscUJBQWdCLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7UUFFdkQsa0JBQWEsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO1FBRTVELGlCQUFZLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQzdCLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsRUFDcEIsTUFBTSxDQUFDLFlBQVksQ0FBQyxFQUNwQixHQUFHLENBQUUsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQzNCLENBQUM7UUFFRixvQkFBZSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUNoQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLEVBQ3BCLE1BQU0sQ0FBQyxjQUFjLENBQUMsRUFDdEIsR0FBRyxDQUFFLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUMxQixDQUFDO1FBRUYsaUJBQVksR0FBRyxLQUFLLENBQUM7UUF3Q3JCLE9BQUUsR0FBRyxDQUFJLGFBQTRCLEVBQUUsSUFBc0IsRUFBZ0IsRUFBRTtZQUM3RSxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFrQixFQUFFLEVBQUU7Z0JBQ3hDLE9BQU8sR0FBRyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztZQUM3QixDQUFDLENBQUMsQ0FBQyxhQUFhLENBQWlCLENBQUM7UUFDcEMsQ0FBQyxDQUFBO1FBNUZDLElBQUksQ0FBQyxPQUFPLEdBQUcsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLFFBQVEsS0FBSyxtQkFBbUIsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBRSxJQUFJLENBQUMsZ0JBQWdCLENBQUM7SUFDN0gsQ0FBQztJQUVELEtBQUs7UUFDSCxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUMsYUFBYSxFQUFDLElBQVcsRUFBQyxRQUFRLEVBQUMsVUFBVSxFQUFDLENBQUMsQ0FBQztJQUNqRSxDQUFDO0lBNENELE9BQU8sQ0FBRSxFQUFzQztRQUM3QyxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQztRQUN6QixJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUVELFNBQVMsQ0FBRSxFQUFxQjtRQUM5QixJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxlQUFlLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDbEMsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsb0JBQW9CLENBQUMsSUFHWDtRQUNSLElBQUksQ0FBQyxRQUFRLENBQUUsQ0FBQyxFQUFDLGFBQWEsRUFBQyxRQUFRLEVBQUMsRUFBRSxFQUFFO1lBQzFDLElBQUcsY0FBYyxDQUFDLFFBQVEsQ0FBQyxFQUFDO2dCQUMxQixJQUFJLENBQUMsRUFBQyxhQUFhLEVBQUMsSUFBSSxFQUFFLFFBQVEsQ0FBQyxJQUFJLEVBQUMsQ0FBQyxDQUFDO2FBQzNDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8sYUFBYSxDQUFDLEdBQUcsTUFBbUI7UUFDMUMsT0FBUSxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsTUFBTSxDQUFDLENBQUMsSUFBSSxDQUM5QixHQUFHLENBQUMsYUFBYSxDQUFDLEVBQ2xCLFFBQVEsQ0FBQyxhQUFhLENBQUMsRUFDdkIsU0FBUyxDQUFDLFVBQVUsQ0FBQyxFQUNyQixHQUFHLENBQUUsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUMsYUFBYSxFQUFDLE1BQU0sRUFBQyxRQUFRLEVBQUMsS0FBSyxFQUFDLENBQUMsQ0FBQyxFQUN0RCxrQkFBa0IsRUFBRSxDQUNyQixDQUFDO0lBQ0osQ0FBQztJQUdELFFBQVEsQ0FBQyxJQUdDO1FBQ1IsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFDLElBQUksQ0FBQyxDQUFDO0lBQzVCLENBQUM7SUFVRCxXQUFXO1FBQ1QsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3RCLENBQUM7O2tIQXRHUSxxQkFBcUI7c0dBQXJCLHFCQUFxQjsyRkFBckIscUJBQXFCO2tCQURqQyxTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IENvbXBvbmVudFN0b3JlIH0gZnJvbSAnQG5ncngvY29tcG9uZW50LXN0b3JlJztcclxuaW1wb3J0IHsgSHR0cFJlcXVlc3RGYWN0b3J5LCBIdHRwUmVxdWVzdFN0cmF0ZWd5LCBIdHRwUmVxdWVzdFN0YXR1cywgSHR0cFJlcXVlc3RTdGF0ZSwgUmVxdWVzdFN0YXRlT3B0aW9ucyB9IGZyb20gJy4vdHlwZXMnO1xyXG5pbXBvcnQgeyBjcmVhdGVGYWlsdXJlLCBjcmVhdGVTdWNjZXNzLCBpblByb2dyZXNzLCBpc0Vycm9yU3RhdGUsIGlzU3VjY2Vzc1N0YXRlLCBub3RTdGFydGVkIH0gZnJvbSAnLi9oZWxwZXJzJztcclxuaW1wb3J0IHsgZmlsdGVyLCBtYXAsIG1lcmdlTWFwLCBwbHVjaywgc3RhcnRXaXRoLCBzd2l0Y2hNYXAsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgSHR0cEVycm9yUmVzcG9uc2UgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcbmltcG9ydCB7IG1hcEVycm9yIH0gZnJvbSAnLi4vcnhqcy9tYXBFcnJvcic7XHJcbmltcG9ydCB7IGRlZmF1bHRTaGFyZVJlcGxheSB9IGZyb20gJy4uL3J4anMvZGVmYXVsdFNoYXJlUmVwbGF5JztcclxuaW1wb3J0IHsgRGlyZWN0aXZlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFJlcXVlc3RSZXNwb25zZTxUUGFyYW0gZXh0ZW5kcyBhbnlbXSxUPiB7XHJcbiAgcmVxdWVzdFBhcmFtczogWy4uLlRQYXJhbV07XHJcbiAgcmVzcG9uc2U6IEh0dHBSZXF1ZXN0U3RhdGU8VD47XHJcbn1cclxuXHJcbkBEaXJlY3RpdmUoKVxyXG5leHBvcnQgY2xhc3MgSHR0cFJlcXVlc3RTdGF0ZVN0b3JlPFRQYXJhbSBleHRlbmRzIGFueVtdLCBUPiBleHRlbmRzIENvbXBvbmVudFN0b3JlPFJlcXVlc3RSZXNwb25zZTxUUGFyYW0sVD4+IHtcclxuXHJcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlcTogSHR0cFJlcXVlc3RGYWN0b3J5PFRQYXJhbSxUPiAscHJpdmF0ZSBvcHRpb25zPzogUmVxdWVzdFN0YXRlT3B0aW9ucykge1xyXG4gICAgICBzdXBlcih7cmVxdWVzdFBhcmFtczogbnVsbCBhcyBhbnkgLHJlc3BvbnNlOm5vdFN0YXJ0ZWR9KTtcclxuICAgICAgdGhpcy5yZXF1ZXN0ID0gKHRoaXMub3B0aW9ucz8uc3RyYXRlZ3kgPT09IEh0dHBSZXF1ZXN0U3RyYXRlZ3kuc2luZ2xlVXNlKSA/IHRoaXMuc2luZ2xlVXNlUmVxdWVzdCA6ICB0aGlzLmZsYXR0ZW5lZFJlcXVlc3Q7XHJcbiAgICB9XHJcblxyXG4gICAgcmVzZXQoKSB7XHJcbiAgICAgIHRoaXMuc2V0U3RhdGUoe3JlcXVlc3RQYXJhbXM6bnVsbCBhcyBhbnkscmVzcG9uc2U6bm90U3RhcnRlZH0pO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICBwcml2YXRlIGZsYXR0ZW5pbmdTdHJhdGVneSA9ICgpID0+IHtcclxuICAgICAgaWYodGhpcy5vcHRpb25zPy5zdHJhdGVneSAhPT0gSHR0cFJlcXVlc3RTdHJhdGVneS5jb25jdXJyZW50KSB7XHJcbiAgICAgICAgcmV0dXJuIHN3aXRjaE1hcCggKHBhcmFtczogWy4uLlRQYXJhbV0pID0+IHRoaXMuY3JlYXRlUmVxdWVzdCguLi5wYXJhbXMpICApO1xyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiBtZXJnZU1hcCggKHBhcmFtczogWy4uLlRQYXJhbV0pID0+IHRoaXMuY3JlYXRlUmVxdWVzdCguLi5wYXJhbXMpKTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIHJlcXVlc3RFZmZlY3Q6ICh2YWx1ZTogWy4uLlRQYXJhbV0gKSA9PiBTdWJzY3JpcHRpb24gPSB0aGlzLmVmZmVjdCgob2JzOiBPYnNlcnZhYmxlPFsuLi5UUGFyYW1dPikgPT4ge1xyXG4gICAgICByZXR1cm4gKG9icykucGlwZShcclxuICAgICAgICB0aGlzLmZsYXR0ZW5pbmdTdHJhdGVneSgpLFxyXG4gICAgICAgIHRhcDxSZXF1ZXN0UmVzcG9uc2U8VFBhcmFtLCBUPj4oc3RhdGUgPT4gdGhpcy5zZXRTdGF0ZShzdGF0ZSkpLFxyXG4gICAgICApO1xyXG4gICAgfSk7XHJcblxyXG4gICAgcHJpdmF0ZSBmbGF0dGVuZWRSZXF1ZXN0ID0gKC4uLnZhbHVlOiBbLi4uVFBhcmFtXSkgPT4ge1xyXG4gICAgICByZXR1cm4gdGhpcy5yZXF1ZXN0RWZmZWN0KHZhbHVlKSBhcyBTdWJzY3JpcHRpb247XHJcbiAgICB9XHJcbiAgICBwcml2YXRlIHNpbmdsZVVzZVJlcXVlc3QgPSAoLi4udmFsdWU6IFsuLi5UUGFyYW1dKSA9PiB7XHJcbiAgICAgIGlmICh0aGlzLmdldCgpLnJlc3BvbnNlLnN0YXR1cyAhPT0gSHR0cFJlcXVlc3RTdGF0dXMubm90U3RhcnRlZCkge1xyXG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcInN0YXRlIGNhbiBub3QgYmUgcmV1c2VkLiBlaXRoZXIgcmVzZXQgdGhlIHN0YXRlIGJ5IGNhbGxpbmcgcmVzZXQoKSBvciB1c2UgYSBzdGF0ZSByZXF1ZXN0ZXIgdGhhdCBhbGxvd3MgY29uY3VycmVudCByZXF1ZXN0cy5cIik7XHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIHRoaXMucmVxdWVzdEVmZmVjdCh2YWx1ZSkgYXMgU3Vic2NyaXB0aW9uO1xyXG4gICAgfVxyXG5cclxuICAgIHNlbGVjdEh0dHBTdGF0ZSQgPSB0aGlzLnN0YXRlJC5waXBlKHBsdWNrKCdyZXNwb25zZScpKTtcclxuXHJcbiAgICBzZWxlY3RTdGF0dXMkID0gdGhpcy5zZWxlY3RIdHRwU3RhdGUkLnBpcGUocGx1Y2soJ3N0YXR1cycpKTtcclxuXHJcbiAgICBzZWxlY3RFcnJvciQgPSB0aGlzLnN0YXRlJC5waXBlKFxyXG4gICAgICBtYXAociA9PiByLnJlc3BvbnNlKSxcclxuICAgICAgZmlsdGVyKGlzRXJyb3JTdGF0ZSksXHJcbiAgICAgIG1hcCggc3RhdGUgPT4gc3RhdGUuZXJyb3IpXHJcbiAgICApO1xyXG5cclxuICAgIHNlbGVjdFJlc3BvbnNlJCA9IHRoaXMuc3RhdGUkLnBpcGUoXHJcbiAgICAgIG1hcChyID0+IHIucmVzcG9uc2UpLFxyXG4gICAgICBmaWx0ZXIoaXNTdWNjZXNzU3RhdGUpLFxyXG4gICAgICBtYXAoIHN0YXRlID0+IHN0YXRlLmJvZHkpXHJcbiAgICApO1xyXG5cclxuICAgIGVycm9ySGFuZGxlZCA9IGZhbHNlO1xyXG4gICAgb25FcnJvciggY2I6IChlcnJvcjogSHR0cEVycm9yUmVzcG9uc2UpID0+IHZvaWQpIHtcclxuICAgICAgdGhpcy5lcnJvckhhbmRsZWQgPSB0cnVlO1xyXG4gICAgICB0aGlzLm9uKHRoaXMuc2VsZWN0RXJyb3IkLCBjYik7XHJcbiAgICB9XHJcblxyXG4gICAgb25TdWNjZXNzKCBjYjogKGJvZHk6IFQpID0+IHZvaWQpIHtcclxuICAgICAgdGhpcy5vbih0aGlzLnNlbGVjdFJlc3BvbnNlJCwgY2IpO1xyXG4gICAgICByZXR1cm4gdGhpcztcclxuICAgIH1cclxuXHJcbiAgICBvblN1Y2Nlc3NXaXRoUmVxdWVzdChmdW5jOiAoc3RhdGU6IHtcclxuICAgICAgcmVxdWVzdFBhcmFtczogWy4uLlRQYXJhbV07XHJcbiAgICAgIGJvZHk6IFQ7XHJcbiAgICB9KSA9PiB2b2lkKSB7XHJcbiAgICAgIHRoaXMub25VcGRhdGUoICh7cmVxdWVzdFBhcmFtcyxyZXNwb25zZX0pID0+IHtcclxuICAgICAgICBpZihpc1N1Y2Nlc3NTdGF0ZShyZXNwb25zZSkpe1xyXG4gICAgICAgICAgZnVuYyh7cmVxdWVzdFBhcmFtcyxib2R5OiByZXNwb25zZS5ib2R5fSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGNyZWF0ZVJlcXVlc3QoLi4ucGFyYW1zOiBbLi4uVFBhcmFtXSkgOiBPYnNlcnZhYmxlPFJlcXVlc3RSZXNwb25zZTxUUGFyYW0sVD4+IHtcclxuICAgICAgcmV0dXJuICB0aGlzLnJlcSguLi5wYXJhbXMpLnBpcGUoXHJcbiAgICAgICAgbWFwKGNyZWF0ZVN1Y2Nlc3MpLFxyXG4gICAgICAgIG1hcEVycm9yKGNyZWF0ZUZhaWx1cmUpLFxyXG4gICAgICAgIHN0YXJ0V2l0aChpblByb2dyZXNzKSxcclxuICAgICAgICBtYXAoIHN0YXRlID0+ICh7cmVxdWVzdFBhcmFtczpwYXJhbXMscmVzcG9uc2U6c3RhdGV9KSksXHJcbiAgICAgICAgZGVmYXVsdFNoYXJlUmVwbGF5KClcclxuICAgICAgKTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgb25VcGRhdGUoZnVuYzogKHN0YXRlOiB7XHJcbiAgICAgIHJlcXVlc3RQYXJhbXM6IFsuLi5UUGFyYW1dO1xyXG4gICAgICByZXNwb25zZTogSHR0cFJlcXVlc3RTdGF0ZTxUPjtcclxuICAgIH0pID0+IHZvaWQpIHtcclxuICAgICAgdGhpcy5vbih0aGlzLnN0YXRlJCxmdW5jKTtcclxuICAgIH1cclxuXHJcbiAgICBvbiA9IDxWPihzcmNPYnNlcnZhYmxlOiBPYnNlcnZhYmxlPFY+LCBmdW5jOiAob2JqOiBWKSA9PiB2b2lkKTogU3Vic2NyaXB0aW9uID0+IHtcclxuICAgICAgcmV0dXJuIHRoaXMuZWZmZWN0KChzcmM6IE9ic2VydmFibGU8Vj4pID0+IHtcclxuICAgICAgICByZXR1cm4gc3JjLnBpcGUodGFwKGZ1bmMpKTtcclxuICAgICAgfSkoc3JjT2JzZXJ2YWJsZSkgYXMgU3Vic2NyaXB0aW9uO1xyXG4gICAgfVxyXG5cclxuICAgIHJlcXVlc3Q6ICguLi52YWx1ZTogWy4uLlRQYXJhbV0gKSA9PiBTdWJzY3JpcHRpb247XHJcblxyXG4gICAgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICAgIHN1cGVyLm5nT25EZXN0cm95KCk7XHJcbiAgICB9XHJcblxyXG4gIH1cclxuIl19
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { Directive } from '@angular/core';
|
|
2
|
+
import { HttpRequestStateDirective } from './request-state-directive';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class HttpStateDirectiveBase {
|
|
5
|
+
constructor(injector, templateRef, viewContainer) {
|
|
6
|
+
this.injector = injector;
|
|
7
|
+
this.templateRef = templateRef;
|
|
8
|
+
this.viewContainer = viewContainer;
|
|
9
|
+
this.hasView = false;
|
|
10
|
+
this.baseRender = (state) => {
|
|
11
|
+
if (this.hasView) {
|
|
12
|
+
this.viewContainer.clear();
|
|
13
|
+
this.hasView = false;
|
|
14
|
+
}
|
|
15
|
+
this.hasView = this.render(state);
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
ngOnInit() {
|
|
19
|
+
const parent = this.injector.get(HttpRequestStateDirective);
|
|
20
|
+
if (parent == null) {
|
|
21
|
+
throw new Error('You can only use an http state directive as a child of the httpRequestState directive.');
|
|
22
|
+
}
|
|
23
|
+
parent.hooks.push(this.baseRender);
|
|
24
|
+
this.baseRender(parent.ViewContext.state);
|
|
25
|
+
}
|
|
26
|
+
ngOnDestroy() {
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
HttpStateDirectiveBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: HttpStateDirectiveBase, deps: [{ token: i0.Injector }, { token: i0.TemplateRef }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
30
|
+
HttpStateDirectiveBase.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.0.2", type: HttpStateDirectiveBase, ngImport: i0 });
|
|
31
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: HttpStateDirectiveBase, decorators: [{
|
|
32
|
+
type: Directive
|
|
33
|
+
}], ctorParameters: function () { return [{ type: i0.Injector }, { type: i0.TemplateRef }, { type: i0.ViewContainerRef }]; } });
|
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSHR0cFN0YXRlRGlyZWN0aXZlQmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdXRpbGl0aWVzL3NyYy9odHRwLXJlcXVlc3Qtc3RhdGUvZGlyZWN0aXZlcy9IdHRwU3RhdGVEaXJlY3RpdmVCYXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQTJDLE1BQU0sZUFBZSxDQUFDO0FBRW5GLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDOztBQUd0RSxNQUFNLE9BQWdCLHNCQUFzQjtJQUV4QyxZQUNZLFFBQWtCLEVBQ2hCLFdBQTZCLEVBQzdCLGFBQStCO1FBRmpDLGFBQVEsR0FBUixRQUFRLENBQVU7UUFDaEIsZ0JBQVcsR0FBWCxXQUFXLENBQWtCO1FBQzdCLGtCQUFhLEdBQWIsYUFBYSxDQUFrQjtRQUo3QyxZQUFPLEdBQUcsS0FBSyxDQUFDO1FBc0JSLGVBQVUsR0FBRyxDQUFDLEtBQXNCLEVBQVUsRUFBRTtZQUNwRCxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUU7Z0JBQ2QsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsQ0FBQztnQkFDM0IsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7YUFDeEI7WUFDRCxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDdEMsQ0FBQyxDQUFBO0lBckJELENBQUM7SUFFRCxRQUFRO1FBQ0osTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMseUJBQXlCLENBQUMsQ0FBQztRQUM1RCxJQUFHLE1BQU0sSUFBSSxJQUFJLEVBQUU7WUFDZixNQUFNLElBQUksS0FBSyxDQUFDLHdGQUF3RixDQUFDLENBQUM7U0FDN0c7UUFDRCxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDbkMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzlDLENBQUM7SUFFRCxXQUFXO0lBRVgsQ0FBQzs7bUhBckJpQixzQkFBc0I7dUdBQXRCLHNCQUFzQjsyRkFBdEIsc0JBQXNCO2tCQUQzQyxTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBJbmplY3RvciwgVGVtcGxhdGVSZWYsIFZpZXdDb250YWluZXJSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgSHR0cFJlcXVlc3RTdGF0ZSB9IGZyb20gJy4uL3R5cGVzJztcclxuaW1wb3J0IHsgSHR0cFJlcXVlc3RTdGF0ZURpcmVjdGl2ZSB9IGZyb20gJy4vcmVxdWVzdC1zdGF0ZS1kaXJlY3RpdmUnO1xyXG5cclxuQERpcmVjdGl2ZSgpXHJcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBIdHRwU3RhdGVEaXJlY3RpdmVCYXNlIHtcclxuICAgIGhhc1ZpZXcgPSBmYWxzZTtcclxuICAgIGNvbnN0cnVjdG9yKFxyXG4gICAgICAgIHByaXZhdGUgaW5qZWN0b3I6IEluamVjdG9yLFxyXG4gICAgICAgIHByb3RlY3RlZCB0ZW1wbGF0ZVJlZjogVGVtcGxhdGVSZWY8YW55PixcclxuICAgICAgICBwcm90ZWN0ZWQgdmlld0NvbnRhaW5lcjogVmlld0NvbnRhaW5lclJlZixcclxuICAgICkge1xyXG5cclxuICAgIH1cclxuXHJcbiAgICBuZ09uSW5pdCgpIHtcclxuICAgICAgICBjb25zdCBwYXJlbnQgPSB0aGlzLmluamVjdG9yLmdldChIdHRwUmVxdWVzdFN0YXRlRGlyZWN0aXZlKTtcclxuICAgICAgICBpZihwYXJlbnQgPT0gbnVsbCkge1xyXG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ1lvdSBjYW4gb25seSB1c2UgYW4gaHR0cCBzdGF0ZSBkaXJlY3RpdmUgYXMgYSBjaGlsZCBvZiB0aGUgaHR0cFJlcXVlc3RTdGF0ZSBkaXJlY3RpdmUuJyk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHBhcmVudC5ob29rcy5wdXNoKHRoaXMuYmFzZVJlbmRlcik7XHJcbiAgICAgICAgdGhpcy5iYXNlUmVuZGVyKHBhcmVudC5WaWV3Q29udGV4dC5zdGF0ZSk7XHJcbiAgICB9XHJcblxyXG4gICAgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICAgICAgXHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBiYXNlUmVuZGVyID0gKHN0YXRlOkh0dHBSZXF1ZXN0U3RhdGUgKSA6IHZvaWQgPT4ge1xyXG4gICAgICAgIGlmICh0aGlzLmhhc1ZpZXcpIHtcclxuICAgICAgICAgICAgdGhpcy52aWV3Q29udGFpbmVyLmNsZWFyKCk7XHJcbiAgICAgICAgICAgIHRoaXMuaGFzVmlldyA9IGZhbHNlO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLmhhc1ZpZXcgPSB0aGlzLnJlbmRlcihzdGF0ZSk7XHJcbiAgICB9XHJcblxyXG4gICAgYWJzdHJhY3QgcmVuZGVyOiAoc3RhdGU6IEh0dHBSZXF1ZXN0U3RhdGUpID0+IGJvb2xlYW47XHJcbn1cclxuIl19
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { Directive } from '@angular/core';
|
|
2
|
+
import { isErrorState } from '../helpers';
|
|
3
|
+
import { HttpStateDirectiveBase } from './HttpStateDirectiveBase';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export class HttpErrorStateDirective extends HttpStateDirectiveBase {
|
|
6
|
+
constructor(injector, templateRef, viewContainer) {
|
|
7
|
+
super(injector, templateRef, viewContainer);
|
|
8
|
+
this.render = (state) => {
|
|
9
|
+
if (isErrorState(state)) {
|
|
10
|
+
this.viewContainer.createEmbeddedView(this.templateRef, { $implicit: state.error });
|
|
11
|
+
return true;
|
|
12
|
+
}
|
|
13
|
+
return false;
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
ngOnInit() {
|
|
17
|
+
super.ngOnInit();
|
|
18
|
+
}
|
|
19
|
+
ngOnDestroy() {
|
|
20
|
+
super.ngOnDestroy();
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
HttpErrorStateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: HttpErrorStateDirective, deps: [{ token: i0.Injector }, { token: i0.TemplateRef }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
24
|
+
HttpErrorStateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.0.2", type: HttpErrorStateDirective, selector: "[httpErrorState]", usesInheritance: true, ngImport: i0 });
|
|
25
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: HttpErrorStateDirective, decorators: [{
|
|
26
|
+
type: Directive,
|
|
27
|
+
args: [{ selector: '[httpErrorState]' }]
|
|
28
|
+
}], ctorParameters: function () { return [{ type: i0.Injector }, { type: i0.TemplateRef }, { type: i0.ViewContainerRef }]; } });
|
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cC1lcnJvci1zdGF0ZS1kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXV0aWxpdGllcy9zcmMvaHR0cC1yZXF1ZXN0LXN0YXRlL2RpcmVjdGl2ZXMvaHR0cC1lcnJvci1zdGF0ZS1kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBMkMsTUFBTSxlQUFlLENBQUM7QUFDbkYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLFlBQVksQ0FBQztBQUUxQyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7QUFHbEUsTUFBTSxPQUFPLHVCQUFpRCxTQUFRLHNCQUFzQjtJQUUxRixZQUNFLFFBQWtCLEVBQ2xCLFdBQTZCLEVBQzdCLGFBQStCO1FBRS9CLEtBQUssQ0FBQyxRQUFRLEVBQUUsV0FBVyxFQUFFLGFBQWEsQ0FBQyxDQUFDO1FBRzlDLFdBQU0sR0FBRyxDQUFDLEtBQTRCLEVBQUUsRUFBRTtZQUN4QyxJQUFJLFlBQVksQ0FBQyxLQUFLLENBQUMsRUFBRTtnQkFDdkIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLEVBQUUsU0FBUyxFQUFFLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDO2dCQUNwRixPQUFPLElBQUksQ0FBQzthQUNiO1lBQ0QsT0FBTyxLQUFLLENBQUM7UUFDZixDQUFDLENBQUM7SUFSRixDQUFDO0lBVUQsUUFBUTtRQUNOLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUNuQixDQUFDO0lBRUQsV0FBVztRQUNULEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUN0QixDQUFDOztvSEF4QlUsdUJBQXVCO3dHQUF2Qix1QkFBdUI7MkZBQXZCLHVCQUF1QjtrQkFEbkMsU0FBUzttQkFBQyxFQUFFLFFBQVEsRUFBRSxrQkFBa0IsRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSW5qZWN0b3IsIFRlbXBsYXRlUmVmLCBWaWV3Q29udGFpbmVyUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IGlzRXJyb3JTdGF0ZSB9IGZyb20gJy4uL2hlbHBlcnMnO1xyXG5pbXBvcnQgeyBIdHRwUmVxdWVzdFN0YXRlIH0gZnJvbSAnLi4vdHlwZXMnO1xyXG5pbXBvcnQgeyBIdHRwU3RhdGVEaXJlY3RpdmVCYXNlIH0gZnJvbSAnLi9IdHRwU3RhdGVEaXJlY3RpdmVCYXNlJztcclxuXHJcbkBEaXJlY3RpdmUoeyBzZWxlY3RvcjogJ1todHRwRXJyb3JTdGF0ZV0nIH0pXHJcbmV4cG9ydCBjbGFzcyBIdHRwRXJyb3JTdGF0ZURpcmVjdGl2ZTxUUGFyYW0gZXh0ZW5kcyBhbnlbXSwgVD4gZXh0ZW5kcyBIdHRwU3RhdGVEaXJlY3RpdmVCYXNlIHtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBpbmplY3RvcjogSW5qZWN0b3IsXHJcbiAgICB0ZW1wbGF0ZVJlZjogVGVtcGxhdGVSZWY8YW55PixcclxuICAgIHZpZXdDb250YWluZXI6IFZpZXdDb250YWluZXJSZWYsXHJcbiAgKSB7XHJcbiAgICBzdXBlcihpbmplY3RvciwgdGVtcGxhdGVSZWYsIHZpZXdDb250YWluZXIpO1xyXG4gIH1cclxuXHJcbiAgcmVuZGVyID0gKHN0YXRlOiBIdHRwUmVxdWVzdFN0YXRlPGFueT4pID0+IHtcclxuICAgIGlmIChpc0Vycm9yU3RhdGUoc3RhdGUpKSB7XHJcbiAgICAgIHRoaXMudmlld0NvbnRhaW5lci5jcmVhdGVFbWJlZGRlZFZpZXcodGhpcy50ZW1wbGF0ZVJlZiwgeyAkaW1wbGljaXQ6IHN0YXRlLmVycm9yIH0pO1xyXG4gICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH1cclxuICAgIHJldHVybiBmYWxzZTtcclxuICB9O1xyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHN1cGVyLm5nT25Jbml0KCk7XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpIHtcclxuICAgIHN1cGVyLm5nT25EZXN0cm95KCk7XHJcbiAgfVxyXG59Il19
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { Directive } from '@angular/core';
|
|
2
|
+
import { HttpStateDirectiveBase } from './HttpStateDirectiveBase';
|
|
3
|
+
import { HttpRequestStatus } from '../types';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export class HttpInProgressStateDirective extends HttpStateDirectiveBase {
|
|
6
|
+
constructor(injector, templateRef, viewContainer) {
|
|
7
|
+
super(injector, templateRef, viewContainer);
|
|
8
|
+
this.render = (state) => {
|
|
9
|
+
if (state.status === HttpRequestStatus.inProgress) {
|
|
10
|
+
this.viewContainer.createEmbeddedView(this.templateRef);
|
|
11
|
+
return true;
|
|
12
|
+
}
|
|
13
|
+
return false;
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
ngOnInit() {
|
|
17
|
+
super.ngOnInit();
|
|
18
|
+
}
|
|
19
|
+
ngOnDestroy() {
|
|
20
|
+
super.ngOnDestroy();
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
HttpInProgressStateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: HttpInProgressStateDirective, deps: [{ token: i0.Injector }, { token: i0.TemplateRef }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
24
|
+
HttpInProgressStateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.0.2", type: HttpInProgressStateDirective, selector: "[httpInProgressState]", usesInheritance: true, ngImport: i0 });
|
|
25
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: HttpInProgressStateDirective, decorators: [{
|
|
26
|
+
type: Directive,
|
|
27
|
+
args: [{ selector: '[httpInProgressState]' }]
|
|
28
|
+
}], ctorParameters: function () { return [{ type: i0.Injector }, { type: i0.TemplateRef }, { type: i0.ViewContainerRef }]; } });
|
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cC1pblByb2dyZXNzLXN0YXRlLWRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdXRpbGl0aWVzL3NyYy9odHRwLXJlcXVlc3Qtc3RhdGUvZGlyZWN0aXZlcy9odHRwLWluUHJvZ3Jlc3Mtc3RhdGUtZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQTJDLE1BQU0sZUFBZSxDQUFDO0FBQ25GLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ2xFLE9BQU8sRUFBb0IsaUJBQWlCLEVBQUUsTUFBTSxVQUFVLENBQUE7O0FBSTlELE1BQU0sT0FBTyw0QkFBOEIsU0FBUSxzQkFBc0I7SUFTckUsWUFDRyxRQUFrQixFQUNqQixXQUE2QixFQUM3QixhQUErQjtRQUUvQixLQUFLLENBQUMsUUFBUSxFQUFDLFdBQVcsRUFBQyxhQUFhLENBQUMsQ0FBQztRQWI5QyxXQUFNLEdBQUcsQ0FBQyxLQUE0QixFQUFFLEVBQUU7WUFDdEMsSUFBRyxLQUFLLENBQUMsTUFBTSxLQUFLLGlCQUFpQixDQUFDLFVBQVUsRUFBQztnQkFDN0MsSUFBSSxDQUFDLGFBQWEsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFFLENBQUM7Z0JBQ3pELE9BQU8sSUFBSSxDQUFDO2FBQ2Y7WUFDRCxPQUFPLEtBQUssQ0FBQztRQUNqQixDQUFDLENBQUM7SUFRRixDQUFDO0lBRUQsUUFBUTtRQUNKLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUNyQixDQUFDO0lBRUQsV0FBVztRQUNQLEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUN4QixDQUFDOzt5SEF2QlEsNEJBQTRCOzZHQUE1Qiw0QkFBNEI7MkZBQTVCLDRCQUE0QjtrQkFEeEMsU0FBUzttQkFBQyxFQUFFLFFBQVEsRUFBRSx1QkFBdUIsRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSW5qZWN0b3IsIFRlbXBsYXRlUmVmLCBWaWV3Q29udGFpbmVyUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEh0dHBTdGF0ZURpcmVjdGl2ZUJhc2UgfSBmcm9tICcuL0h0dHBTdGF0ZURpcmVjdGl2ZUJhc2UnO1xyXG5pbXBvcnQgeyBIdHRwUmVxdWVzdFN0YXRlLCBIdHRwUmVxdWVzdFN0YXR1cyB9IGZyb20gJy4uL3R5cGVzJ1xyXG5cclxuXHJcbkBEaXJlY3RpdmUoeyBzZWxlY3RvcjogJ1todHRwSW5Qcm9ncmVzc1N0YXRlXScgfSlcclxuZXhwb3J0IGNsYXNzIEh0dHBJblByb2dyZXNzU3RhdGVEaXJlY3RpdmUgIGV4dGVuZHMgSHR0cFN0YXRlRGlyZWN0aXZlQmFzZSB7XHJcbiAgICByZW5kZXIgPSAoc3RhdGU6IEh0dHBSZXF1ZXN0U3RhdGU8YW55PikgPT4ge1xyXG4gICAgICAgIGlmKHN0YXRlLnN0YXR1cyA9PT0gSHR0cFJlcXVlc3RTdGF0dXMuaW5Qcm9ncmVzcyl7XHJcbiAgICAgICAgICAgIHRoaXMudmlld0NvbnRhaW5lci5jcmVhdGVFbWJlZGRlZFZpZXcodGhpcy50ZW1wbGF0ZVJlZiApO1xyXG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfTtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgIGluamVjdG9yOiBJbmplY3RvcixcclxuICAgICAgICB0ZW1wbGF0ZVJlZjogVGVtcGxhdGVSZWY8YW55PixcclxuICAgICAgICB2aWV3Q29udGFpbmVyOiBWaWV3Q29udGFpbmVyUmVmLFxyXG4gICAgKSB7XHJcbiAgICAgICAgc3VwZXIoaW5qZWN0b3IsdGVtcGxhdGVSZWYsdmlld0NvbnRhaW5lcik7XHJcbiAgICB9XHJcblxyXG4gICAgbmdPbkluaXQoKSB7XHJcbiAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcclxuICAgIH1cclxuXHJcbiAgICBuZ09uRGVzdHJveSgpIHtcclxuICAgICAgICBzdXBlci5uZ09uRGVzdHJveSgpO1xyXG4gICAgfVxyXG5cclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { Directive } from '@angular/core';
|
|
2
|
+
import { HttpRequestStatus } from '../types';
|
|
3
|
+
import { HttpStateDirectiveBase } from './HttpStateDirectiveBase';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export class HttpNotStartedStateDirective extends HttpStateDirectiveBase {
|
|
6
|
+
constructor(injector, templateRef, viewContainer) {
|
|
7
|
+
super(injector, templateRef, viewContainer);
|
|
8
|
+
this.render = (state) => {
|
|
9
|
+
if (state.status === HttpRequestStatus.notStarted) {
|
|
10
|
+
this.viewContainer.createEmbeddedView(this.templateRef);
|
|
11
|
+
return true;
|
|
12
|
+
}
|
|
13
|
+
return false;
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
ngOnInit() {
|
|
17
|
+
super.ngOnInit();
|
|
18
|
+
}
|
|
19
|
+
ngOnDestroy() {
|
|
20
|
+
super.ngOnDestroy();
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
HttpNotStartedStateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: HttpNotStartedStateDirective, deps: [{ token: i0.Injector }, { token: i0.TemplateRef }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
24
|
+
HttpNotStartedStateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.0.2", type: HttpNotStartedStateDirective, selector: "[httpNotStartedState]", usesInheritance: true, ngImport: i0 });
|
|
25
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: HttpNotStartedStateDirective, decorators: [{
|
|
26
|
+
type: Directive,
|
|
27
|
+
args: [{ selector: '[httpNotStartedState]' }]
|
|
28
|
+
}], ctorParameters: function () { return [{ type: i0.Injector }, { type: i0.TemplateRef }, { type: i0.ViewContainerRef }]; } });
|
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cC1ub3RTdGFydGVkLXN0YXRlLWRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdXRpbGl0aWVzL3NyYy9odHRwLXJlcXVlc3Qtc3RhdGUvZGlyZWN0aXZlcy9odHRwLW5vdFN0YXJ0ZWQtc3RhdGUtZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQTJDLE1BQU0sZUFBZSxDQUFDO0FBQ25GLE9BQU8sRUFBb0IsaUJBQWlCLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDL0QsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7O0FBSWxFLE1BQU0sT0FBTyw0QkFBcUQsU0FBUSxzQkFBc0I7SUFTNUYsWUFDSSxRQUFrQixFQUNsQixXQUE2QixFQUM3QixhQUErQjtRQUUvQixLQUFLLENBQUMsUUFBUSxFQUFDLFdBQVcsRUFBQyxhQUFhLENBQUMsQ0FBQztRQWI5QyxXQUFNLEdBQUcsQ0FBQyxLQUE0QixFQUFFLEVBQUU7WUFDdEMsSUFBRyxLQUFLLENBQUMsTUFBTSxLQUFLLGlCQUFpQixDQUFDLFVBQVUsRUFBQztnQkFDN0MsSUFBSSxDQUFDLGFBQWEsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFFLENBQUM7Z0JBQ3pELE9BQU8sSUFBSSxDQUFDO2FBQ2Y7WUFDRCxPQUFPLEtBQUssQ0FBQztRQUNqQixDQUFDLENBQUM7SUFRRixDQUFDO0lBRUQsUUFBUTtRQUNKLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUNyQixDQUFDO0lBRUQsV0FBVztRQUNQLEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUN4QixDQUFDOzt5SEF2QlEsNEJBQTRCOzZHQUE1Qiw0QkFBNEI7MkZBQTVCLDRCQUE0QjtrQkFEeEMsU0FBUzttQkFBQyxFQUFFLFFBQVEsRUFBRSx1QkFBdUIsRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSW5qZWN0b3IsIFRlbXBsYXRlUmVmLCBWaWV3Q29udGFpbmVyUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEh0dHBSZXF1ZXN0U3RhdGUsIEh0dHBSZXF1ZXN0U3RhdHVzIH0gZnJvbSAnLi4vdHlwZXMnO1xyXG5pbXBvcnQgeyBIdHRwU3RhdGVEaXJlY3RpdmVCYXNlIH0gZnJvbSAnLi9IdHRwU3RhdGVEaXJlY3RpdmVCYXNlJztcclxuXHJcblxyXG5ARGlyZWN0aXZlKHsgc2VsZWN0b3I6ICdbaHR0cE5vdFN0YXJ0ZWRTdGF0ZV0nIH0pXHJcbmV4cG9ydCBjbGFzcyBIdHRwTm90U3RhcnRlZFN0YXRlRGlyZWN0aXZlPFRQYXJhbSBleHRlbmRzIGFueVtdLFQ+IGV4dGVuZHMgSHR0cFN0YXRlRGlyZWN0aXZlQmFzZSB7XHJcbiAgICByZW5kZXIgPSAoc3RhdGU6IEh0dHBSZXF1ZXN0U3RhdGU8YW55PikgPT4ge1xyXG4gICAgICAgIGlmKHN0YXRlLnN0YXR1cyA9PT0gSHR0cFJlcXVlc3RTdGF0dXMubm90U3RhcnRlZCl7XHJcbiAgICAgICAgICAgIHRoaXMudmlld0NvbnRhaW5lci5jcmVhdGVFbWJlZGRlZFZpZXcodGhpcy50ZW1wbGF0ZVJlZiApO1xyXG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfTtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBpbmplY3RvcjogSW5qZWN0b3IsXHJcbiAgICAgICAgdGVtcGxhdGVSZWY6IFRlbXBsYXRlUmVmPGFueT4sXHJcbiAgICAgICAgdmlld0NvbnRhaW5lcjogVmlld0NvbnRhaW5lclJlZixcclxuICAgICkge1xyXG4gICAgICAgIHN1cGVyKGluamVjdG9yLHRlbXBsYXRlUmVmLHZpZXdDb250YWluZXIpO1xyXG4gICAgfVxyXG5cclxuICAgIG5nT25Jbml0KCkge1xyXG4gICAgICAgIHN1cGVyLm5nT25Jbml0KCk7XHJcbiAgICB9XHJcblxyXG4gICAgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICAgICAgc3VwZXIubmdPbkRlc3Ryb3koKTtcclxuICAgIH1cclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { Directive } from '@angular/core';
|
|
2
|
+
import { isSuccessState } from '../helpers';
|
|
3
|
+
import { HttpStateDirectiveBase } from './HttpStateDirectiveBase';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export class HttpSuccessStateDirective extends HttpStateDirectiveBase {
|
|
6
|
+
constructor(injector, templateRef, viewContainer) {
|
|
7
|
+
super(injector, templateRef, viewContainer);
|
|
8
|
+
this.render = (state) => {
|
|
9
|
+
if (isSuccessState(state)) {
|
|
10
|
+
this.viewContainer.createEmbeddedView(this.templateRef, { $implicit: state.body });
|
|
11
|
+
return true;
|
|
12
|
+
}
|
|
13
|
+
return false;
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
ngOnInit() {
|
|
17
|
+
super.ngOnInit();
|
|
18
|
+
}
|
|
19
|
+
ngOnDestroy() {
|
|
20
|
+
super.ngOnDestroy();
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
HttpSuccessStateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: HttpSuccessStateDirective, deps: [{ token: i0.Injector }, { token: i0.TemplateRef }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
24
|
+
HttpSuccessStateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.0.2", type: HttpSuccessStateDirective, selector: "[httpSuccessState]", usesInheritance: true, ngImport: i0 });
|
|
25
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: HttpSuccessStateDirective, decorators: [{
|
|
26
|
+
type: Directive,
|
|
27
|
+
args: [{ selector: '[httpSuccessState]' }]
|
|
28
|
+
}], ctorParameters: function () { return [{ type: i0.Injector }, { type: i0.TemplateRef }, { type: i0.ViewContainerRef }]; } });
|
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cC1zdWNjZXNzLXN0YXRlLWRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdXRpbGl0aWVzL3NyYy9odHRwLXJlcXVlc3Qtc3RhdGUvZGlyZWN0aXZlcy9odHRwLXN1Y2Nlc3Mtc3RhdGUtZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQTRDLE1BQU0sZUFBZSxDQUFDO0FBQ3BGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDNUMsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7O0FBSWxFLE1BQU0sT0FBTyx5QkFBNkIsU0FBUSxzQkFBc0I7SUFTcEUsWUFDSSxRQUFrQixFQUNsQixXQUF3QyxFQUN4QyxhQUErQjtRQUUvQixLQUFLLENBQUMsUUFBUSxFQUFDLFdBQVcsRUFBQyxhQUFhLENBQUMsQ0FBQztRQWI5QyxXQUFNLEdBQUcsQ0FBQyxLQUE0QixFQUFFLEVBQUU7WUFDdEMsSUFBRyxjQUFjLENBQUMsS0FBSyxDQUFDLEVBQUM7Z0JBQ3JCLElBQUksQ0FBQyxhQUFhLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBQyxFQUFFLFNBQVMsRUFBRSxLQUFLLENBQUMsSUFBSSxFQUFDLENBQUUsQ0FBQztnQkFDbEYsT0FBTyxJQUFJLENBQUM7YUFDZjtZQUNELE9BQU8sS0FBSyxDQUFDO1FBQ2pCLENBQUMsQ0FBQztJQVFGLENBQUM7SUFFRCxRQUFRO1FBQ0osS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ3JCLENBQUM7SUFFRCxXQUFXO1FBQ1AsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3hCLENBQUM7O3NIQXZCUSx5QkFBeUI7MEdBQXpCLHlCQUF5QjsyRkFBekIseUJBQXlCO2tCQURyQyxTQUFTO21CQUFDLEVBQUUsUUFBUSxFQUFFLG9CQUFvQixFQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCAgSW5qZWN0b3IsIFRlbXBsYXRlUmVmLCBWaWV3Q29udGFpbmVyUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IGlzU3VjY2Vzc1N0YXRlIH0gZnJvbSAnLi4vaGVscGVycyc7XHJcbmltcG9ydCB7IEh0dHBTdGF0ZURpcmVjdGl2ZUJhc2UgfSBmcm9tICcuL0h0dHBTdGF0ZURpcmVjdGl2ZUJhc2UnO1xyXG5pbXBvcnQgeyBIdHRwUmVxdWVzdFN0YXRlIH0gZnJvbSAnLi4vdHlwZXMnO1xyXG5cclxuQERpcmVjdGl2ZSh7IHNlbGVjdG9yOiAnW2h0dHBTdWNjZXNzU3RhdGVdJ30pXHJcbmV4cG9ydCBjbGFzcyBIdHRwU3VjY2Vzc1N0YXRlRGlyZWN0aXZlPFQ+IGV4dGVuZHMgSHR0cFN0YXRlRGlyZWN0aXZlQmFzZSB7XHJcbiAgICByZW5kZXIgPSAoc3RhdGU6IEh0dHBSZXF1ZXN0U3RhdGU8YW55PikgPT4ge1xyXG4gICAgICAgIGlmKGlzU3VjY2Vzc1N0YXRlKHN0YXRlKSl7XHJcbiAgICAgICAgICAgIHRoaXMudmlld0NvbnRhaW5lci5jcmVhdGVFbWJlZGRlZFZpZXcodGhpcy50ZW1wbGF0ZVJlZix7ICRpbXBsaWNpdDogc3RhdGUuYm9keX0gKTtcclxuICAgICAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH07XHJcblxyXG4gICAgY29uc3RydWN0b3IoXHJcbiAgICAgICAgaW5qZWN0b3I6IEluamVjdG9yLFxyXG4gICAgICAgIHRlbXBsYXRlUmVmOiBUZW1wbGF0ZVJlZjx7JGltcGxpY2l0OiBUfT4sXHJcbiAgICAgICAgdmlld0NvbnRhaW5lcjogVmlld0NvbnRhaW5lclJlZixcclxuICAgICkge1xyXG4gICAgICAgIHN1cGVyKGluamVjdG9yLHRlbXBsYXRlUmVmLHZpZXdDb250YWluZXIpO1xyXG4gICAgfVxyXG5cclxuICAgIG5nT25Jbml0KCkge1xyXG4gICAgICAgIHN1cGVyLm5nT25Jbml0KCk7XHJcbiAgICB9XHJcblxyXG4gICAgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICAgICAgc3VwZXIubmdPbkRlc3Ryb3koKTtcclxuICAgIH1cclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export * from './http-error-state-directive';
|
|
2
|
+
export * from './http-inProgress-state-directive';
|
|
3
|
+
export * from './http-notStarted-state-directive';
|
|
4
|
+
export * from './http-success-state-directive';
|
|
5
|
+
export * from './request-state-directive';
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXV0aWxpdGllcy9zcmMvaHR0cC1yZXF1ZXN0LXN0YXRlL2RpcmVjdGl2ZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyw4QkFBOEIsQ0FBQztBQUM3QyxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYyxnQ0FBZ0MsQ0FBQztBQUMvQyxjQUFjLDJCQUEyQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9odHRwLWVycm9yLXN0YXRlLWRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2h0dHAtaW5Qcm9ncmVzcy1zdGF0ZS1kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9odHRwLW5vdFN0YXJ0ZWQtc3RhdGUtZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vaHR0cC1zdWNjZXNzLXN0YXRlLWRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL3JlcXVlc3Qtc3RhdGUtZGlyZWN0aXZlJztcbiJdfQ==
|
|
@@ -0,0 +1,57 @@
|
|
|
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
|
+
constructor(templateRef, viewContainer) {
|
|
9
|
+
this.templateRef = templateRef;
|
|
10
|
+
this.viewContainer = viewContainer;
|
|
11
|
+
this.ViewContext = {
|
|
12
|
+
$implicit: undefined,
|
|
13
|
+
state: undefined,
|
|
14
|
+
status: {
|
|
15
|
+
inProgress: false,
|
|
16
|
+
notStarted: true,
|
|
17
|
+
success: false,
|
|
18
|
+
error: false,
|
|
19
|
+
}
|
|
20
|
+
};
|
|
21
|
+
this.subject = new Subject();
|
|
22
|
+
this.state = this.subject.pipe(switchAll(), defaultShareReplay());
|
|
23
|
+
this.hooks = [];
|
|
24
|
+
this.viewContainer.createEmbeddedView(this.templateRef, this.ViewContext);
|
|
25
|
+
this.subscription = this.state.subscribe(state => {
|
|
26
|
+
this.ViewContext.$implicit = state;
|
|
27
|
+
this.ViewContext.state = state;
|
|
28
|
+
this.ViewContext.status.inProgress = state.status === HttpRequestStatus.inProgress;
|
|
29
|
+
this.ViewContext.status.notStarted = state.status === HttpRequestStatus.notStarted;
|
|
30
|
+
this.ViewContext.status.success = state.status === HttpRequestStatus.success;
|
|
31
|
+
this.ViewContext.status.error = state.status === HttpRequestStatus.fail;
|
|
32
|
+
this.hooks.forEach(hook => hook(state));
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
set stateStore(store) {
|
|
36
|
+
if (isObservable(store)) {
|
|
37
|
+
this.subject.next(store);
|
|
38
|
+
}
|
|
39
|
+
else {
|
|
40
|
+
this.subject.next(store.state$.pipe(map(state => state.response)));
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
ngOnDestroy() {
|
|
44
|
+
this.viewContainer.clear();
|
|
45
|
+
this.subscription.unsubscribe();
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
HttpRequestStateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: HttpRequestStateDirective, deps: [{ token: i0.TemplateRef }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
49
|
+
HttpRequestStateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.0.2", type: HttpRequestStateDirective, selector: "[httpRequestState]", inputs: { stateStore: ["httpRequestState", "stateStore"] }, ngImport: i0 });
|
|
50
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: HttpRequestStateDirective, decorators: [{
|
|
51
|
+
type: Directive,
|
|
52
|
+
args: [{ selector: '[httpRequestState]' }]
|
|
53
|
+
}], ctorParameters: function () { return [{ type: i0.TemplateRef }, { type: i0.ViewContainerRef }]; }, propDecorators: { stateStore: [{
|
|
54
|
+
type: Input,
|
|
55
|
+
args: ['httpRequestState']
|
|
56
|
+
}] } });
|
|
57
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVxdWVzdC1zdGF0ZS1kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXV0aWxpdGllcy9zcmMvaHR0cC1yZXF1ZXN0LXN0YXRlL2RpcmVjdGl2ZXMvcmVxdWVzdC1zdGF0ZS1kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQWlDLE1BQU0sZUFBZSxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ25FLE9BQU8sRUFBRSxZQUFZLEVBQWMsT0FBTyxFQUFrQixNQUFNLE1BQU0sQ0FBQztBQUN6RSxPQUFPLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRWhELE9BQU8sRUFBb0IsaUJBQWlCLEVBQUUsTUFBTSxVQUFVLENBQUM7O0FBYy9ELE1BQU0sT0FBTyx5QkFBeUI7SUEyQmxDLFlBQ1ksV0FBNkIsRUFDN0IsYUFBK0I7UUFEL0IsZ0JBQVcsR0FBWCxXQUFXLENBQWtCO1FBQzdCLGtCQUFhLEdBQWIsYUFBYSxDQUFrQjtRQTNCbEMsZ0JBQVcsR0FBbUM7WUFDbkQsU0FBUyxFQUFFLFNBQVM7WUFDcEIsS0FBSyxFQUFFLFNBQVM7WUFDaEIsTUFBTSxFQUFFO2dCQUNKLFVBQVUsRUFBRSxLQUFLO2dCQUNqQixVQUFVLEVBQUUsSUFBSTtnQkFDaEIsT0FBTyxFQUFFLEtBQUs7Z0JBQ2QsS0FBSyxFQUFFLEtBQUs7YUFDZjtTQUNGLENBQUM7UUFHSixZQUFPLEdBQUcsSUFBSSxPQUFPLEVBQW1DLENBQUM7UUFDekQsVUFBSyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxFQUFDLGtCQUFrQixFQUFFLENBQUMsQ0FBQztRQUU1RCxVQUFLLEdBQThDLEVBQUUsQ0FBQztRQWNsRCxJQUFJLENBQUMsYUFBYSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQzFFLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUUsS0FBSyxDQUFDLEVBQUU7WUFDOUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO1lBQ25DLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztZQUMvQixJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDLE1BQU0sS0FBSyxpQkFBaUIsQ0FBQyxVQUFVLENBQUM7WUFDbkYsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQyxNQUFNLEtBQUssaUJBQWlCLENBQUMsVUFBVSxDQUFDO1lBQ25GLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUMsTUFBTSxLQUFLLGlCQUFpQixDQUFDLE9BQU8sQ0FBQztZQUM3RSxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLE1BQU0sS0FBSyxpQkFBaUIsQ0FBQyxJQUFJLENBQUM7WUFDeEUsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUUsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUM3QyxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUF0QkQsSUFBK0IsVUFBVSxDQUFDLEtBQXdFO1FBQzlHLElBQUcsWUFBWSxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ3BCLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQzVCO2FBQU07WUFDSCxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQ3RFO0lBRUwsQ0FBQztJQWtCRCxXQUFXO1FBQ1AsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUMzQixJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ2xDLENBQUM7O3NIQS9DTSx5QkFBeUI7MEdBQXpCLHlCQUF5QjsyRkFBekIseUJBQXlCO2tCQURyQyxTQUFTO21CQUFDLEVBQUUsUUFBUSxFQUFFLG9CQUFvQixFQUFFO2lJQW9CVixVQUFVO3NCQUF4QyxLQUFLO3VCQUFDLGtCQUFrQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSW5wdXQsIFRlbXBsYXRlUmVmLCBWaWV3Q29udGFpbmVyUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IGRlZmF1bHRTaGFyZVJlcGxheSB9IGZyb20gJy4uLy4uL3J4anMvZGVmYXVsdFNoYXJlUmVwbGF5JztcclxuaW1wb3J0IHsgaXNPYnNlcnZhYmxlLCBPYnNlcnZhYmxlLCBTdWJqZWN0LCBVbnN1YnNjcmliYWJsZSB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBtYXAsIHN3aXRjaEFsbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgSHR0cFJlcXVlc3RTdGF0ZVN0b3JlIH0gZnJvbSAnLi4vSHR0cFJlcXVlc3RTdGF0ZVN0b3JlJztcclxuaW1wb3J0IHsgSHR0cFJlcXVlc3RTdGF0ZSwgSHR0cFJlcXVlc3RTdGF0dXMgfSBmcm9tICcuLi90eXBlcyc7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEh0dHBSZXF1ZXN0U3RhdGVWaWV3Q29udGV4dDxUPiB7XHJcbiAgICAkaW1wbGljaXQ/OiBIdHRwUmVxdWVzdFN0YXRlPFQ+O1xyXG4gICAgc3RhdGU/OiAgSHR0cFJlcXVlc3RTdGF0ZTxUPjtcclxuICAgIHN0YXR1czoge1xyXG4gICAgICAgIGluUHJvZ3Jlc3M6IGJvb2xlYW47XHJcbiAgICAgICAgbm90U3RhcnRlZDogYm9vbGVhbjtcclxuICAgICAgICBzdWNjZXNzOiBib29sZWFuO1xyXG4gICAgICAgIGVycm9yOiBib29sZWFuO1xyXG4gICAgfTtcclxufVxyXG5cclxuQERpcmVjdGl2ZSh7IHNlbGVjdG9yOiAnW2h0dHBSZXF1ZXN0U3RhdGVdJyB9KVxyXG5leHBvcnQgY2xhc3MgSHR0cFJlcXVlc3RTdGF0ZURpcmVjdGl2ZTxUUGFyYW0gZXh0ZW5kcyBhbnlbXSxUPiB7XHJcblxyXG4gICAgcmVhZG9ubHkgVmlld0NvbnRleHQ6IEh0dHBSZXF1ZXN0U3RhdGVWaWV3Q29udGV4dDxUPiA9IHtcclxuICAgICAgICAkaW1wbGljaXQ6IHVuZGVmaW5lZCxcclxuICAgICAgICBzdGF0ZTogdW5kZWZpbmVkLFxyXG4gICAgICAgIHN0YXR1czoge1xyXG4gICAgICAgICAgICBpblByb2dyZXNzOiBmYWxzZSxcclxuICAgICAgICAgICAgbm90U3RhcnRlZDogdHJ1ZSxcclxuICAgICAgICAgICAgc3VjY2VzczogZmFsc2UsXHJcbiAgICAgICAgICAgIGVycm9yOiBmYWxzZSxcclxuICAgICAgICB9XHJcbiAgICAgIH07XHJcblxyXG5cclxuICAgIHN1YmplY3QgPSBuZXcgU3ViamVjdDxPYnNlcnZhYmxlPEh0dHBSZXF1ZXN0U3RhdGU8VD4+PigpO1xyXG4gICAgc3RhdGUgPSB0aGlzLnN1YmplY3QucGlwZShzd2l0Y2hBbGwoKSxkZWZhdWx0U2hhcmVSZXBsYXkoKSk7XHJcbiAgICBzdWJzY3JpcHRpb246IFVuc3Vic2NyaWJhYmxlO1xyXG4gICAgaG9va3M6ICgoc3RhdGU6IEh0dHBSZXF1ZXN0U3RhdGU8VD4pID0+IHZvaWQpIFtdID0gW107XHJcblxyXG4gICAgQElucHV0KCdodHRwUmVxdWVzdFN0YXRlJykgc2V0IHN0YXRlU3RvcmUoc3RvcmU6IEh0dHBSZXF1ZXN0U3RhdGVTdG9yZTxUUGFyYW0sVD4gfCBPYnNlcnZhYmxlPEh0dHBSZXF1ZXN0U3RhdGU8VD4+ICkge1xyXG4gICAgICAgIGlmKGlzT2JzZXJ2YWJsZShzdG9yZSkpIHtcclxuICAgICAgICAgICAgdGhpcy5zdWJqZWN0Lm5leHQoc3RvcmUpO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHRoaXMuc3ViamVjdC5uZXh0KHN0b3JlLnN0YXRlJC5waXBlKG1hcChzdGF0ZSA9PiBzdGF0ZS5yZXNwb25zZSkpKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgfVxyXG4gICAgY29uc3RydWN0b3IoXHJcbiAgICAgICAgcHJpdmF0ZSB0ZW1wbGF0ZVJlZjogVGVtcGxhdGVSZWY8YW55PixcclxuICAgICAgICBwcml2YXRlIHZpZXdDb250YWluZXI6IFZpZXdDb250YWluZXJSZWYsXHJcbiAgICApIHtcclxuICAgICAgICB0aGlzLnZpZXdDb250YWluZXIuY3JlYXRlRW1iZWRkZWRWaWV3KHRoaXMudGVtcGxhdGVSZWYsIHRoaXMuVmlld0NvbnRleHQpO1xyXG4gICAgICAgIHRoaXMuc3Vic2NyaXB0aW9uID0gdGhpcy5zdGF0ZS5zdWJzY3JpYmUoIHN0YXRlID0+IHtcclxuICAgICAgICAgICAgdGhpcy5WaWV3Q29udGV4dC4kaW1wbGljaXQgPSBzdGF0ZTtcclxuICAgICAgICAgICAgdGhpcy5WaWV3Q29udGV4dC5zdGF0ZSA9IHN0YXRlO1xyXG4gICAgICAgICAgICB0aGlzLlZpZXdDb250ZXh0LnN0YXR1cy5pblByb2dyZXNzID0gc3RhdGUuc3RhdHVzID09PSBIdHRwUmVxdWVzdFN0YXR1cy5pblByb2dyZXNzO1xyXG4gICAgICAgICAgICB0aGlzLlZpZXdDb250ZXh0LnN0YXR1cy5ub3RTdGFydGVkID0gc3RhdGUuc3RhdHVzID09PSBIdHRwUmVxdWVzdFN0YXR1cy5ub3RTdGFydGVkO1xyXG4gICAgICAgICAgICB0aGlzLlZpZXdDb250ZXh0LnN0YXR1cy5zdWNjZXNzID0gc3RhdGUuc3RhdHVzID09PSBIdHRwUmVxdWVzdFN0YXR1cy5zdWNjZXNzO1xyXG4gICAgICAgICAgICB0aGlzLlZpZXdDb250ZXh0LnN0YXR1cy5lcnJvciA9IHN0YXRlLnN0YXR1cyA9PT0gSHR0cFJlcXVlc3RTdGF0dXMuZmFpbDtcclxuICAgICAgICAgICAgdGhpcy5ob29rcy5mb3JFYWNoKCBob29rID0+IGhvb2soc3RhdGUpKTtcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICAgICAgdGhpcy52aWV3Q29udGFpbmVyLmNsZWFyKCk7XHJcbiAgICAgICAgdGhpcy5zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcclxuICAgICAgfVxyXG5cclxuXHJcbn1cclxuIl19
|
|
@@ -0,0 +1,19 @@
|
|
|
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 createSuccess(body) {
|
|
9
|
+
return { status: HttpRequestStatus.success, body };
|
|
10
|
+
}
|
|
11
|
+
export function createFailure(error) {
|
|
12
|
+
return { status: HttpRequestStatus.fail, error };
|
|
13
|
+
}
|
|
14
|
+
export const notStarted = { status: HttpRequestStatus.notStarted };
|
|
15
|
+
export const inProgress = { status: HttpRequestStatus.inProgress };
|
|
16
|
+
export function statusIsSuccessOrInProgress(status) {
|
|
17
|
+
return [HttpRequestStatus.success, HttpRequestStatus.inProgress].includes(status);
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdXRpbGl0aWVzL3NyYy9odHRwLXJlcXVlc3Qtc3RhdGUvaGVscGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQTRILGlCQUFpQixFQUFFLE1BQU0sU0FBUyxDQUFDO0FBRXRLLE1BQU0sVUFBVSxZQUFZLENBQUksS0FBMEI7SUFDeEQsT0FBTyxLQUFLLENBQUMsTUFBTSxLQUFLLGlCQUFpQixDQUFDLElBQUksQ0FBQztBQUNqRCxDQUFDO0FBRUQsTUFBTSxVQUFVLGNBQWMsQ0FBSSxLQUEwQjtJQUMxRCxPQUFPLEtBQUssQ0FBQyxNQUFNLEtBQUssaUJBQWlCLENBQUMsT0FBTyxDQUFDO0FBQ3BELENBQUM7QUFFRCxNQUFNLFVBQVUsYUFBYSxDQUFJLElBQU87SUFDdEMsT0FBTyxFQUFFLE1BQU0sRUFBRSxpQkFBaUIsQ0FBQyxPQUFPLEVBQUUsSUFBSSxFQUFFLENBQUM7QUFDckQsQ0FBQztBQUVELE1BQU0sVUFBVSxhQUFhLENBQUMsS0FBVTtJQUN0QyxPQUFPLEVBQUUsTUFBTSxFQUFFLGlCQUFpQixDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsQ0FBQztBQUNuRCxDQUFDO0FBRUQsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUErQixFQUFFLE1BQU0sRUFBRSxpQkFBaUIsQ0FBQyxVQUFVLEVBQUUsQ0FBQztBQUcvRixNQUFNLENBQUMsTUFBTSxVQUFVLEdBQStCLEVBQUUsTUFBTSxFQUFFLGlCQUFpQixDQUFDLFVBQVUsRUFBRSxDQUFDO0FBRS9GLE1BQU0sVUFBVSwyQkFBMkIsQ0FBRSxNQUF5QjtJQUNwRSxPQUFRLENBQUMsaUJBQWlCLENBQUMsT0FBTyxFQUFFLGlCQUFpQixDQUFDLFVBQVUsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQztBQUNyRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cFJlcXVlc3RTdGF0ZSwgSHR0cFJlcXVlc3RTdGF0ZUVycm9yLCBIdHRwUmVxdWVzdFN0YXRlSW5Qcm9ncmVzcywgSHR0cFJlcXVlc3RTdGF0ZU5vdFN0YXJ0ZWQsIEh0dHBSZXF1ZXN0U3RhdGVTdWNjZXNzLCBIdHRwUmVxdWVzdFN0YXR1cyB9IGZyb20gXCIuL3R5cGVzXCI7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gaXNFcnJvclN0YXRlPFQ+KHN0YXRlOiBIdHRwUmVxdWVzdFN0YXRlPFQ+KTogc3RhdGUgaXMgSHR0cFJlcXVlc3RTdGF0ZUVycm9yIHtcclxuICByZXR1cm4gc3RhdGUuc3RhdHVzID09PSBIdHRwUmVxdWVzdFN0YXR1cy5mYWlsO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gaXNTdWNjZXNzU3RhdGU8VD4oc3RhdGU6IEh0dHBSZXF1ZXN0U3RhdGU8VD4pOiBzdGF0ZSBpcyBIdHRwUmVxdWVzdFN0YXRlU3VjY2VzczxUPiB7XHJcbiAgcmV0dXJuIHN0YXRlLnN0YXR1cyA9PT0gSHR0cFJlcXVlc3RTdGF0dXMuc3VjY2VzcztcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZVN1Y2Nlc3M8VD4oYm9keTogVCk6IEh0dHBSZXF1ZXN0U3RhdGVTdWNjZXNzPFQ+IHtcclxuICByZXR1cm4geyBzdGF0dXM6IEh0dHBSZXF1ZXN0U3RhdHVzLnN1Y2Nlc3MsIGJvZHkgfTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZUZhaWx1cmUoZXJyb3I6IGFueSk6IEh0dHBSZXF1ZXN0U3RhdGVFcnJvciB7XHJcbiAgcmV0dXJuIHsgc3RhdHVzOiBIdHRwUmVxdWVzdFN0YXR1cy5mYWlsLCBlcnJvciB9O1xyXG59XHJcblxyXG5leHBvcnQgY29uc3Qgbm90U3RhcnRlZDogSHR0cFJlcXVlc3RTdGF0ZU5vdFN0YXJ0ZWQgPSB7IHN0YXR1czogSHR0cFJlcXVlc3RTdGF0dXMubm90U3RhcnRlZCB9O1xyXG5cclxuXHJcbmV4cG9ydCBjb25zdCBpblByb2dyZXNzOiBIdHRwUmVxdWVzdFN0YXRlSW5Qcm9ncmVzcyA9IHsgc3RhdHVzOiBIdHRwUmVxdWVzdFN0YXR1cy5pblByb2dyZXNzIH07XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gc3RhdHVzSXNTdWNjZXNzT3JJblByb2dyZXNzKCBzdGF0dXM6IEh0dHBSZXF1ZXN0U3RhdHVzKSB7XHJcbiAgcmV0dXJuICBbSHR0cFJlcXVlc3RTdGF0dXMuc3VjY2VzcywgSHR0cFJlcXVlc3RTdGF0dXMuaW5Qcm9ncmVzc10uaW5jbHVkZXMoc3RhdHVzKTtcclxufSJdfQ==
|
|
@@ -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,41 @@
|
|
|
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
|
+
}
|
|
10
|
+
HttpRequestModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: HttpRequestModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
11
|
+
HttpRequestModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: HttpRequestModule, declarations: [HttpSuccessStateDirective,
|
|
12
|
+
HttpRequestStateDirective,
|
|
13
|
+
HttpErrorStateDirective,
|
|
14
|
+
HttpInProgressStateDirective,
|
|
15
|
+
HttpNotStartedStateDirective], exports: [HttpSuccessStateDirective,
|
|
16
|
+
HttpRequestStateDirective,
|
|
17
|
+
HttpErrorStateDirective,
|
|
18
|
+
HttpInProgressStateDirective,
|
|
19
|
+
HttpNotStartedStateDirective] });
|
|
20
|
+
HttpRequestModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: HttpRequestModule, providers: [] });
|
|
21
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: HttpRequestModule, decorators: [{
|
|
22
|
+
type: NgModule,
|
|
23
|
+
args: [{
|
|
24
|
+
providers: [],
|
|
25
|
+
declarations: [
|
|
26
|
+
HttpSuccessStateDirective,
|
|
27
|
+
HttpRequestStateDirective,
|
|
28
|
+
HttpErrorStateDirective,
|
|
29
|
+
HttpInProgressStateDirective,
|
|
30
|
+
HttpNotStartedStateDirective,
|
|
31
|
+
],
|
|
32
|
+
exports: [
|
|
33
|
+
HttpSuccessStateDirective,
|
|
34
|
+
HttpRequestStateDirective,
|
|
35
|
+
HttpErrorStateDirective,
|
|
36
|
+
HttpInProgressStateDirective,
|
|
37
|
+
HttpNotStartedStateDirective,
|
|
38
|
+
]
|
|
39
|
+
}]
|
|
40
|
+
}] });
|
|
41
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cC1zdGF0ZS1tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXV0aWxpdGllcy9zcmMvaHR0cC1yZXF1ZXN0LXN0YXRlL2h0dHAtc3RhdGUtbW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDdEYsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDakYsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDbEYsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDNUYsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sOENBQThDLENBQUM7O0FBa0J6RixNQUFNLE9BQU8saUJBQWlCOzs4R0FBakIsaUJBQWlCOytHQUFqQixpQkFBaUIsaUJBYnpCLHlCQUF5QjtRQUN6Qix5QkFBeUI7UUFDekIsdUJBQXVCO1FBQ3ZCLDRCQUE0QjtRQUM1Qiw0QkFBNEIsYUFHNUIseUJBQXlCO1FBQ3pCLHlCQUF5QjtRQUN6Qix1QkFBdUI7UUFDdkIsNEJBQTRCO1FBQzVCLDRCQUE0QjsrR0FFcEIsaUJBQWlCLGFBZm5CLEVBQUU7MkZBZUEsaUJBQWlCO2tCQWhCaEMsUUFBUTttQkFBQztvQkFDTixTQUFTLEVBQUMsRUFBRTtvQkFDWixZQUFZLEVBQUU7d0JBQ1YseUJBQXlCO3dCQUN6Qix5QkFBeUI7d0JBQ3pCLHVCQUF1Qjt3QkFDdkIsNEJBQTRCO3dCQUM1Qiw0QkFBNEI7cUJBQy9CO29CQUNELE9BQU8sRUFBRTt3QkFDTCx5QkFBeUI7d0JBQ3pCLHlCQUF5Qjt3QkFDekIsdUJBQXVCO3dCQUN2Qiw0QkFBNEI7d0JBQzVCLDRCQUE0QjtxQkFDL0I7aUJBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBIdHRwU3VjY2Vzc1N0YXRlRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2h0dHAtc3VjY2Vzcy1zdGF0ZS1kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBIdHRwUmVxdWVzdFN0YXRlRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL3JlcXVlc3Qtc3RhdGUtZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgSHR0cEVycm9yU3RhdGVEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvaHR0cC1lcnJvci1zdGF0ZS1kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBIdHRwSW5Qcm9ncmVzc1N0YXRlRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2h0dHAtaW5Qcm9ncmVzcy1zdGF0ZS1kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBIdHRwTm90U3RhcnRlZFN0YXRlRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2h0dHAtbm90U3RhcnRlZC1zdGF0ZS1kaXJlY3RpdmUnO1xyXG5cclxuQE5nTW9kdWxlKHtcclxuICAgIHByb3ZpZGVyczpbXSxcclxuICAgIGRlY2xhcmF0aW9uczogW1xyXG4gICAgICAgIEh0dHBTdWNjZXNzU3RhdGVEaXJlY3RpdmUsXHJcbiAgICAgICAgSHR0cFJlcXVlc3RTdGF0ZURpcmVjdGl2ZSxcclxuICAgICAgICBIdHRwRXJyb3JTdGF0ZURpcmVjdGl2ZSxcclxuICAgICAgICBIdHRwSW5Qcm9ncmVzc1N0YXRlRGlyZWN0aXZlLFxyXG4gICAgICAgIEh0dHBOb3RTdGFydGVkU3RhdGVEaXJlY3RpdmUsXHJcbiAgICBdLFxyXG4gICAgZXhwb3J0czogW1xyXG4gICAgICAgIEh0dHBTdWNjZXNzU3RhdGVEaXJlY3RpdmUsXHJcbiAgICAgICAgSHR0cFJlcXVlc3RTdGF0ZURpcmVjdGl2ZSxcclxuICAgICAgICBIdHRwRXJyb3JTdGF0ZURpcmVjdGl2ZSxcclxuICAgICAgICBIdHRwSW5Qcm9ncmVzc1N0YXRlRGlyZWN0aXZlLFxyXG4gICAgICAgIEh0dHBOb3RTdGFydGVkU3RhdGVEaXJlY3RpdmUsXHJcbiAgICBdXHJcbn0pIGV4cG9ydCBjbGFzcyBIdHRwUmVxdWVzdE1vZHVsZSB7XHJcblxyXG59Il19
|
|
@@ -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,15 @@
|
|
|
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 = {}));
|
|
15
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXV0aWxpdGllcy9zcmMvaHR0cC1yZXF1ZXN0LXN0YXRlL3R5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE1BQU0sQ0FBTixJQUFZLGlCQU1UO0FBTkgsV0FBWSxpQkFBaUI7SUFDekIscUVBQVUsQ0FBQTtJQUNWLHFFQUFVLENBQUE7SUFDViwrREFBTyxDQUFBO0lBQ1AseURBQUksQ0FBQTtJQUNKLG1FQUFTLENBQUE7QUFDWCxDQUFDLEVBTlMsaUJBQWlCLEtBQWpCLGlCQUFpQixRQU0xQjtBQTJCQyxNQUFNLENBQU4sSUFBWSxtQkFJWDtBQUpELFdBQVksbUJBQW1CO0lBQzdCLHlFQUFjLENBQUE7SUFDZCx1RUFBUyxDQUFBO0lBQ1QsaUZBQWMsQ0FBQTtBQUNoQixDQUFDLEVBSlcsbUJBQW1CLEtBQW5CLG1CQUFtQixRQUk5QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuZXhwb3J0IGVudW0gSHR0cFJlcXVlc3RTdGF0dXMge1xyXG4gICAgbm90U3RhcnRlZCxcclxuICAgIGluUHJvZ3Jlc3MsXHJcbiAgICBzdWNjZXNzLFxyXG4gICAgZmFpbCxcclxuICAgIGNhbmNlbGxlZCxcclxuICB9XHJcblxyXG4gIGV4cG9ydCB0eXBlIEh0dHBSZXF1ZXN0U3RhdGVOb3RTdGFydGVkID0ge1xyXG4gICAgc3RhdHVzOiBIdHRwUmVxdWVzdFN0YXR1cy5ub3RTdGFydGVkXHJcbiAgfVxyXG5cclxuICBleHBvcnQgdHlwZSBIdHRwUmVxdWVzdFN0YXRlSW5Qcm9ncmVzcyA9IHtcclxuICAgIHN0YXR1czogSHR0cFJlcXVlc3RTdGF0dXMuaW5Qcm9ncmVzc1xyXG4gIH1cclxuXHJcbiAgZXhwb3J0IHR5cGUgSHR0cFJlcXVlc3RTdGF0ZVN1Y2Nlc3M8VD4gPSB7XHJcbiAgICBzdGF0dXM6IEh0dHBSZXF1ZXN0U3RhdHVzLnN1Y2Nlc3M7XHJcbiAgICBib2R5OiBUO1xyXG4gIH1cclxuXHJcbiAgZXhwb3J0IHR5cGUgSHR0cFJlcXVlc3RTdGF0ZUVycm9yID0ge1xyXG4gICAgc3RhdHVzOiBIdHRwUmVxdWVzdFN0YXR1cy5mYWlsO1xyXG4gICAgZXJyb3I6IGFueTtcclxuICB9XHJcblxyXG5cclxuICBleHBvcnQgdHlwZSBIdHRwUmVxdWVzdFN0YXRlPFQgPSBhbnk+ID1cclxuICAgIEh0dHBSZXF1ZXN0U3RhdGVOb3RTdGFydGVkIHxcclxuICAgIEh0dHBSZXF1ZXN0U3RhdGVJblByb2dyZXNzIHxcclxuICAgIEh0dHBSZXF1ZXN0U3RhdGVTdWNjZXNzPFQ+IHxcclxuICAgIEh0dHBSZXF1ZXN0U3RhdGVFcnJvciA7XHJcblxyXG4gICAgZXhwb3J0IGVudW0gSHR0cFJlcXVlc3RTdHJhdGVneSB7XHJcbiAgICAgIGNvbmN1cnJlbnQgPSAxLFxyXG4gICAgICBzaW5nbGVVc2UsXHJcbiAgICAgIGNhbmNlbFByZXZpb3VzLFxyXG4gICAgfVxyXG4gICAgZXhwb3J0IGludGVyZmFjZSBSZXF1ZXN0U3RhdGVPcHRpb25zICB7XHJcbiAgICAgIHN0cmF0ZWd5PzogSHR0cFJlcXVlc3RTdHJhdGVneVxyXG4gICAgfVxyXG5cclxuICAgIGV4cG9ydCB0eXBlIEh0dHBSZXF1ZXN0RmFjdG9yeTxUUGFyYW0gZXh0ZW5kcyBhbnlbXSwgVD4gPSAoLi4ucGFyYW1zOiBbLi4uVFBhcmFtXSkgPT4gT2JzZXJ2YWJsZTxUPlxyXG4iXX0=
|
|
@@ -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==
|