verben-authentication-ui 1.1.0 → 1.1.1
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/README.md +23 -1
- package/esm2022/src/lib/base/core/base-data-page.facade.mjs +215 -0
- package/esm2022/src/lib/base/core/base-data-page.service.mjs +103 -0
- package/esm2022/src/lib/base/core/base-data-page.state.mjs +203 -0
- package/esm2022/src/lib/base/handlers/filter-handler.service.mjs +53 -0
- package/esm2022/src/lib/base/handlers/search-handler.service.mjs +31 -0
- package/esm2022/src/lib/base/handlers/sort-handler.service.mjs +49 -0
- package/esm2022/src/lib/base/models/api-payload.mjs +4 -0
- package/esm2022/src/lib/base/models/page-config.interface.mjs +2 -0
- package/esm2022/src/lib/base/public-api.mjs +14 -6
- package/esm2022/src/lib/base/utils/column-helpers.mjs +45 -0
- package/esm2022/src/lib/components/button/button.component.mjs +3 -3
- package/esm2022/src/lib/components/forgot-password/forgot-password.component.mjs +2 -2
- package/esm2022/src/lib/components/mail/mail.component.mjs +3 -3
- package/esm2022/src/lib/components/mail-validation/mail-validation.component.mjs +5 -5
- package/esm2022/src/lib/components/o-auth/o-auth.component.mjs +3 -3
- package/esm2022/src/lib/components/otp-input/otp-input.component.mjs +2 -2
- package/esm2022/src/lib/components/reset-password/reset-password.component.mjs +2 -2
- package/esm2022/src/lib/components/role-control/base-table-style.mjs +6 -6
- package/esm2022/src/lib/components/role-control/role-control.component.mjs +3 -3
- package/esm2022/src/lib/components/sign-in/sign-in.component.mjs +4 -4
- package/esm2022/src/lib/components/sign-up/sign-up.component.mjs +6 -6
- package/esm2022/src/lib/components/sso/base-table-style.mjs +6 -6
- package/esm2022/src/lib/components/sso/sso-form/sso-form.component.mjs +3 -3
- package/esm2022/src/lib/components/sso/sso.component.mjs +3 -3
- package/esm2022/src/lib/components/two-factor-auth-otp/two-factor-auth-otp.component.mjs +4 -4
- package/esm2022/src/lib/components/two-factor-auth-setup/two-factor-auth-setup.component.mjs +5 -5
- package/esm2022/src/lib/components/user-management/public-api.mjs +2 -1
- package/esm2022/src/lib/components/user-management/user-management-card/user-management-card.component.mjs +23 -0
- package/esm2022/src/lib/components/user-management/user-management-form/user-management-form.component.mjs +53 -91
- package/esm2022/src/lib/components/user-management/user-management-table/user-management-table.component.mjs +68 -0
- package/esm2022/src/lib/components/user-management/user-management.component.mjs +98 -509
- package/esm2022/src/lib/components/user-management/user-management.module.mjs +11 -80
- package/esm2022/src/lib/components/user-management/user-status-badge/user-status-badge.component.mjs +8 -6
- package/esm2022/src/lib/components/user-management/user.config.mjs +94 -0
- package/esm2022/src/lib/components/user-management/user.facade.mjs +118 -0
- package/esm2022/src/lib/components/user-management/user.service.mjs +60 -0
- package/esm2022/src/lib/components/user-management/user.state.mjs +33 -0
- package/esm2022/src/lib/components/user-request/user-request.component.mjs +8 -8
- package/esm2022/src/lib/components/user-request-approval/public-api.mjs +2 -2
- package/esm2022/src/lib/components/user-request-approval/user-access-request-status-badge/user-access-request-status-badge.component.mjs +8 -6
- package/esm2022/src/lib/components/user-request-approval/user-access-request.config.mjs +79 -0
- package/esm2022/src/lib/components/user-request-approval/user-access-request.facade.mjs +123 -0
- package/esm2022/src/lib/components/user-request-approval/user-access-request.service.mjs +74 -0
- package/esm2022/src/lib/components/user-request-approval/user-access-request.state.mjs +26 -0
- package/esm2022/src/lib/components/user-request-approval/user-request-approval-card/user-request-approval-card.component.mjs +23 -0
- package/esm2022/src/lib/components/user-request-approval/user-request-approval-form/user-request-approval-form.component.mjs +124 -0
- package/esm2022/src/lib/components/user-request-approval/user-request-approval-table/user-request-approval-table.component.mjs +44 -0
- package/esm2022/src/lib/components/user-request-approval/user-request-approval.component.mjs +101 -273
- package/esm2022/src/lib/components/user-request-approval/user-request-approval.module.mjs +10 -74
- package/fesm2022/verben-authentication-ui-src-lib-base.mjs +596 -214
- package/fesm2022/verben-authentication-ui-src-lib-base.mjs.map +1 -1
- package/fesm2022/verben-authentication-ui-src-lib-components-button.mjs +2 -2
- package/fesm2022/verben-authentication-ui-src-lib-components-button.mjs.map +1 -1
- package/fesm2022/verben-authentication-ui-src-lib-components-forgot-password.mjs +2 -2
- package/fesm2022/verben-authentication-ui-src-lib-components-forgot-password.mjs.map +1 -1
- package/fesm2022/verben-authentication-ui-src-lib-components-mail-validation.mjs +4 -4
- package/fesm2022/verben-authentication-ui-src-lib-components-mail-validation.mjs.map +1 -1
- package/fesm2022/verben-authentication-ui-src-lib-components-mail.mjs +2 -2
- package/fesm2022/verben-authentication-ui-src-lib-components-mail.mjs.map +1 -1
- package/fesm2022/verben-authentication-ui-src-lib-components-o-auth.mjs +2 -2
- package/fesm2022/verben-authentication-ui-src-lib-components-o-auth.mjs.map +1 -1
- package/fesm2022/verben-authentication-ui-src-lib-components-otp-input.mjs +2 -2
- package/fesm2022/verben-authentication-ui-src-lib-components-otp-input.mjs.map +1 -1
- package/fesm2022/verben-authentication-ui-src-lib-components-reset-password.mjs +2 -2
- package/fesm2022/verben-authentication-ui-src-lib-components-reset-password.mjs.map +1 -1
- package/fesm2022/verben-authentication-ui-src-lib-components-role-control.mjs +7 -7
- package/fesm2022/verben-authentication-ui-src-lib-components-role-control.mjs.map +1 -1
- package/fesm2022/verben-authentication-ui-src-lib-components-sign-in.mjs +3 -3
- package/fesm2022/verben-authentication-ui-src-lib-components-sign-in.mjs.map +1 -1
- package/fesm2022/verben-authentication-ui-src-lib-components-sign-up.mjs +5 -5
- package/fesm2022/verben-authentication-ui-src-lib-components-sign-up.mjs.map +1 -1
- package/fesm2022/verben-authentication-ui-src-lib-components-sso.mjs +9 -9
- package/fesm2022/verben-authentication-ui-src-lib-components-sso.mjs.map +1 -1
- package/fesm2022/verben-authentication-ui-src-lib-components-two-factor-auth-otp.mjs +3 -3
- package/fesm2022/verben-authentication-ui-src-lib-components-two-factor-auth-otp.mjs.map +1 -1
- package/fesm2022/verben-authentication-ui-src-lib-components-two-factor-auth-setup.mjs +4 -4
- package/fesm2022/verben-authentication-ui-src-lib-components-two-factor-auth-setup.mjs.map +1 -1
- package/fesm2022/verben-authentication-ui-src-lib-components-user-management.mjs +468 -831
- package/fesm2022/verben-authentication-ui-src-lib-components-user-management.mjs.map +1 -1
- package/fesm2022/verben-authentication-ui-src-lib-components-user-request-approval.mjs +509 -952
- package/fesm2022/verben-authentication-ui-src-lib-components-user-request-approval.mjs.map +1 -1
- package/fesm2022/verben-authentication-ui-src-lib-components-user-request.mjs +7 -7
- package/fesm2022/verben-authentication-ui-src-lib-components-user-request.mjs.map +1 -1
- package/package.json +42 -48
- package/src/lib/base/README.md +99 -0
- package/src/lib/base/core/base-data-page.facade.d.ts +65 -0
- package/src/lib/base/core/base-data-page.service.d.ts +43 -0
- package/src/lib/base/core/base-data-page.state.d.ts +68 -0
- package/src/lib/base/handlers/filter-handler.service.d.ts +13 -0
- package/src/lib/base/handlers/search-handler.service.d.ts +20 -0
- package/src/lib/base/handlers/sort-handler.service.d.ts +13 -0
- package/src/lib/base/models/api-payload.d.ts +2 -0
- package/src/lib/base/models/page-config.interface.d.ts +21 -0
- package/src/lib/base/public-api.d.ts +9 -5
- package/src/lib/base/utils/column-helpers.d.ts +16 -0
- package/src/lib/components/user-management/public-api.d.ts +1 -0
- package/src/lib/components/user-management/user-management-card/user-management-card.component.d.ts +11 -0
- package/src/lib/components/user-management/user-management-form/user-management-form.component.d.ts +12 -14
- package/src/lib/components/user-management/user-management-table/user-management-table.component.d.ts +30 -0
- package/src/lib/components/user-management/user-management.component.d.ts +28 -124
- package/src/lib/components/user-management/user-management.module.d.ts +8 -8
- package/src/lib/components/user-management/user-status-badge/user-status-badge.component.d.ts +1 -1
- package/src/lib/components/user-management/user.config.d.ts +13 -0
- package/src/lib/components/user-management/user.facade.d.ts +42 -0
- package/src/lib/components/user-management/user.service.d.ts +26 -0
- package/src/lib/components/user-management/user.state.d.ts +19 -0
- package/src/lib/components/user-request-approval/public-api.d.ts +1 -1
- package/src/lib/components/user-request-approval/user-access-request-status-badge/user-access-request-status-badge.component.d.ts +1 -1
- package/src/lib/components/user-request-approval/user-access-request.config.d.ts +13 -0
- package/src/lib/components/user-request-approval/user-access-request.facade.d.ts +36 -0
- package/src/lib/components/user-request-approval/user-access-request.service.d.ts +30 -0
- package/src/lib/components/user-request-approval/user-access-request.state.d.ts +16 -0
- package/src/lib/components/user-request-approval/user-request-approval-card/user-request-approval-card.component.d.ts +11 -0
- package/src/lib/components/user-request-approval/user-request-approval-form/user-request-approval-form.component.d.ts +47 -0
- package/src/lib/components/user-request-approval/user-request-approval-table/user-request-approval-table.component.d.ts +20 -0
- package/src/lib/components/user-request-approval/user-request-approval.component.d.ts +29 -68
- package/src/lib/components/user-request-approval/user-request-approval.module.d.ts +7 -6
- package/esm2022/src/lib/base/base-data.component.mjs +0 -80
- package/esm2022/src/lib/base/base-data.facade.mjs +0 -130
- package/esm2022/src/lib/base/base-data.service.mjs +0 -21
- package/esm2022/src/lib/base/base-data.state.mjs +0 -74
- package/esm2022/src/lib/base/models.mjs +0 -2
- package/esm2022/src/lib/components/user-management/base-table-style.mjs +0 -53
- package/esm2022/src/lib/components/user-management/services/user-management.service.mjs +0 -110
- package/esm2022/src/lib/components/user-management/user-management.columns.mjs +0 -53
- package/esm2022/src/lib/components/user-request-approval/access-request.columns.mjs +0 -29
- package/esm2022/src/lib/components/user-request-approval/base-table-style.mjs +0 -53
- package/esm2022/src/lib/components/user-request-approval/facades/user-access-request.facade.mjs +0 -260
- package/esm2022/src/lib/components/user-request-approval/helper.mjs +0 -56
- package/esm2022/src/lib/components/user-request-approval/services/user-access-request.service.mjs +0 -92
- package/esm2022/src/lib/components/user-request-approval/states/user-access-request.state.mjs +0 -92
- package/esm2022/src/lib/components/user-request-approval/user-request-form/user-request-form.component.mjs +0 -105
- package/esm2022/src/lib/components/user-request-process/index.mjs +0 -2
- package/esm2022/src/lib/components/user-request-process/public-api.mjs +0 -3
- package/esm2022/src/lib/components/user-request-process/user-request-process.component.mjs +0 -11
- package/esm2022/src/lib/components/user-request-process/user-request-process.module.mjs +0 -18
- package/esm2022/src/lib/components/user-request-process/verben-authentication-ui-src-lib-components-user-request-process.mjs +0 -5
- package/fesm2022/verben-authentication-ui-src-lib-components-user-request-process.mjs +0 -34
- package/fesm2022/verben-authentication-ui-src-lib-components-user-request-process.mjs.map +0 -1
- package/src/lib/base/base-data.component.d.ts +0 -32
- package/src/lib/base/base-data.facade.d.ts +0 -27
- package/src/lib/base/base-data.service.d.ts +0 -14
- package/src/lib/base/base-data.state.d.ts +0 -28
- package/src/lib/base/models.d.ts +0 -11
- package/src/lib/components/user-management/base-table-style.d.ts +0 -1
- package/src/lib/components/user-management/services/user-management.service.d.ts +0 -44
- package/src/lib/components/user-management/user-management.columns.d.ts +0 -3
- package/src/lib/components/user-request-approval/access-request.columns.d.ts +0 -3
- package/src/lib/components/user-request-approval/base-table-style.d.ts +0 -1
- package/src/lib/components/user-request-approval/facades/user-access-request.facade.d.ts +0 -39
- package/src/lib/components/user-request-approval/helper.d.ts +0 -7
- package/src/lib/components/user-request-approval/services/user-access-request.service.d.ts +0 -64
- package/src/lib/components/user-request-approval/states/user-access-request.state.d.ts +0 -35
- package/src/lib/components/user-request-approval/user-request-form/user-request-form.component.d.ts +0 -34
- package/src/lib/components/user-request-process/index.d.ts +0 -1
- package/src/lib/components/user-request-process/public-api.d.ts +0 -2
- package/src/lib/components/user-request-process/user-request-process.component.d.ts +0 -5
- package/src/lib/components/user-request-process/user-request-process.module.d.ts +0 -7
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { EventEmitter } from '@angular/core';
|
|
2
|
+
import { FormBuilder, FormControl, FormGroup } from '@angular/forms';
|
|
3
|
+
import { Role, UserAccessRequest } from 'verben-authentication-ui/src/lib/models';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
/**
|
|
6
|
+
* Form for approving/rejecting a single access request.
|
|
7
|
+
* Identity fields are read-only; the role must be chosen before approval.
|
|
8
|
+
*/
|
|
9
|
+
export declare class UserRequestApprovalFormComponent {
|
|
10
|
+
private fb;
|
|
11
|
+
request: import("@angular/core").InputSignal<UserAccessRequest | undefined>;
|
|
12
|
+
roles: import("@angular/core").InputSignal<Role[]>;
|
|
13
|
+
showDelete: import("@angular/core").InputSignal<boolean>;
|
|
14
|
+
approve: EventEmitter<{
|
|
15
|
+
request: UserAccessRequest;
|
|
16
|
+
roleId: string;
|
|
17
|
+
}>;
|
|
18
|
+
reject: EventEmitter<{
|
|
19
|
+
request: UserAccessRequest;
|
|
20
|
+
comment: string;
|
|
21
|
+
}>;
|
|
22
|
+
deleteRequest: EventEmitter<UserAccessRequest>;
|
|
23
|
+
switchToTable: EventEmitter<void>;
|
|
24
|
+
form: FormGroup;
|
|
25
|
+
showDeleteDialogue: boolean;
|
|
26
|
+
showRejectDialogue: boolean;
|
|
27
|
+
/**
|
|
28
|
+
* Rejection reason. Deliberately outside `form` — that group's validity gates
|
|
29
|
+
* Approve, and a required comment there would gate Approve too.
|
|
30
|
+
*/
|
|
31
|
+
rejectComment: FormControl<string | null>;
|
|
32
|
+
constructor(fb: FormBuilder);
|
|
33
|
+
private isPending;
|
|
34
|
+
canProcess(): boolean;
|
|
35
|
+
canReject(): boolean;
|
|
36
|
+
canDelete(): boolean;
|
|
37
|
+
onApprove(): void;
|
|
38
|
+
onDelete(): void;
|
|
39
|
+
toggleDeleteDialogue(): void;
|
|
40
|
+
closeDeleteDialogue(): void;
|
|
41
|
+
openRejectDialogue(): void;
|
|
42
|
+
closeRejectDialogue(): void;
|
|
43
|
+
canConfirmReject(): boolean;
|
|
44
|
+
confirmReject(): void;
|
|
45
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<UserRequestApprovalFormComponent, never>;
|
|
46
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<UserRequestApprovalFormComponent, "lib-user-request-approval-form", never, { "request": { "alias": "request"; "required": false; "isSignal": true; }; "roles": { "alias": "roles"; "required": false; "isSignal": true; }; "showDelete": { "alias": "showDelete"; "required": false; "isSignal": true; }; }, { "approve": "approve"; "reject": "reject"; "deleteRequest": "deleteRequest"; "switchToTable": "switchToTable"; }, never, never, true, never>;
|
|
47
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { EventEmitter } from '@angular/core';
|
|
2
|
+
import { UserAccessRequest } from 'verben-authentication-ui/src/lib/models';
|
|
3
|
+
import { ColumnDefinition } from 'verben-ng-ui';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
/**
|
|
6
|
+
* Table view for access requests. Row actions open the form (to approve/reject
|
|
7
|
+
* with a role) or delete the request.
|
|
8
|
+
*/
|
|
9
|
+
export declare class UserRequestApprovalTableComponent {
|
|
10
|
+
requests: UserAccessRequest[];
|
|
11
|
+
columns: ColumnDefinition<UserAccessRequest>[];
|
|
12
|
+
isLoading: boolean;
|
|
13
|
+
showDelete: boolean;
|
|
14
|
+
view: EventEmitter<UserAccessRequest>;
|
|
15
|
+
delete: EventEmitter<UserAccessRequest>;
|
|
16
|
+
onView(request: UserAccessRequest): void;
|
|
17
|
+
onDelete(request: UserAccessRequest): void;
|
|
18
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<UserRequestApprovalTableComponent, never>;
|
|
19
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<UserRequestApprovalTableComponent, "lib-user-request-approval-table", never, { "requests": { "alias": "requests"; "required": false; }; "columns": { "alias": "columns"; "required": false; }; "isLoading": { "alias": "isLoading"; "required": false; }; "showDelete": { "alias": "showDelete"; "required": false; }; }, { "view": "view"; "delete": "delete"; }, never, never, true, never>;
|
|
20
|
+
}
|
|
@@ -1,77 +1,38 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { OnInit } from '@angular/core';
|
|
2
2
|
import { UserAccessRequest } from 'verben-authentication-ui/src/lib/models';
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import { UserAccessRequestFacade } from './facades/user-access-request.facade';
|
|
6
|
-
import { EnvironmentService, HttpWebRequestService, UtilService } from 'verben-authentication-ui/src/lib/services';
|
|
3
|
+
import { CardData, CardDataViewComponent, DataViewComponent, FilterCondition, SortCondition } from 'verben-ng-ui';
|
|
4
|
+
import { UserAccessRequestFacade } from './user-access-request.facade';
|
|
7
5
|
import * as i0 from "@angular/core";
|
|
6
|
+
/**
|
|
7
|
+
* Access-request approval page. Lists requests in table/card views and drives
|
|
8
|
+
* the approve/reject/delete workflow through the facade.
|
|
9
|
+
*/
|
|
8
10
|
export declare class UserRequestApprovalComponent implements OnInit {
|
|
9
|
-
|
|
10
|
-
private utilService;
|
|
11
|
-
private envService;
|
|
12
|
-
private server;
|
|
13
|
-
private userAccessRequestFacade;
|
|
11
|
+
facade: UserAccessRequestFacade;
|
|
14
12
|
showDelete: boolean;
|
|
13
|
+
vdv: DataViewComponent;
|
|
15
14
|
cardDataView: CardDataViewComponent;
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
value: string;
|
|
15
|
+
private destroyRef;
|
|
16
|
+
constructor(facade: UserAccessRequestFacade);
|
|
17
|
+
ngOnInit(): void;
|
|
18
|
+
private clearCardView;
|
|
19
|
+
onFilterApplied(filters: FilterCondition[]): void;
|
|
20
|
+
onSortApplied(sorts: SortCondition[]): void;
|
|
21
|
+
onSearch(term: string): void;
|
|
22
|
+
onColumnsUpdated(columns: any): void;
|
|
23
|
+
onLoadMore(): void;
|
|
24
|
+
onViewRequest(request: UserAccessRequest): void;
|
|
25
|
+
requestCardClicked(selectedCard: CardData): void;
|
|
26
|
+
onDeleteFromTable(request: UserAccessRequest): void;
|
|
27
|
+
onApprove(event: {
|
|
28
|
+
request: UserAccessRequest;
|
|
29
|
+
roleId: string;
|
|
32
30
|
}): void;
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
email: string;
|
|
37
|
-
role: string;
|
|
38
|
-
}): Promise<void>;
|
|
39
|
-
onDelete(deletionData: {
|
|
40
|
-
email: string;
|
|
41
|
-
}): Promise<void>;
|
|
42
|
-
openDetailView(mailAddress: string): void;
|
|
43
|
-
getCardDataByMailAddress(mailAddress: string): CardData | undefined;
|
|
44
|
-
onViewChange(isGridView: boolean): void;
|
|
45
|
-
openFormView(index: number): void;
|
|
46
|
-
handleExport(exportedData: Partial<any>[]): void;
|
|
47
|
-
/**
|
|
48
|
-
* @param data Simple csv export for testing
|
|
49
|
-
*/
|
|
50
|
-
private downloadCSV;
|
|
51
|
-
onSelectionChange(selectedRows: UserAccessRequest[]): void;
|
|
52
|
-
/**
|
|
53
|
-
* Copied over from card view doc until I understand usage
|
|
54
|
-
*/
|
|
55
|
-
selectedColumnCount: number;
|
|
56
|
-
selectedFilterTableCount: number;
|
|
57
|
-
isOPen: boolean;
|
|
58
|
-
selectedSortCount: number;
|
|
59
|
-
showColumn: boolean;
|
|
60
|
-
showSort: boolean;
|
|
61
|
-
selectedAll: boolean;
|
|
62
|
-
visibleColumns: IDataFilter[];
|
|
63
|
-
filterArray: IDataFilter[];
|
|
64
|
-
sortOptions: IDataFilter[];
|
|
65
|
-
clearData(): void;
|
|
66
|
-
onColumnChange(event: boolean): void;
|
|
67
|
-
onSortChange(event: boolean): void;
|
|
68
|
-
onColumnsUpdated(updatedColumns: IDataFilter[]): void;
|
|
69
|
-
onSortUpdated(updatedSorts: IDataFilter[]): void;
|
|
70
|
-
onStateChange(event: {
|
|
71
|
-
key: string;
|
|
72
|
-
value: boolean;
|
|
31
|
+
onReject(event: {
|
|
32
|
+
request: UserAccessRequest;
|
|
33
|
+
comment: string;
|
|
73
34
|
}): void;
|
|
74
|
-
|
|
35
|
+
onDeleteRequest(request: UserAccessRequest): void;
|
|
75
36
|
static ɵfac: i0.ɵɵFactoryDeclaration<UserRequestApprovalComponent, never>;
|
|
76
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<UserRequestApprovalComponent, "lib-user-request-approval", never, { "showDelete": { "alias": "showDelete"; "required": false; }; }, {}, never, never,
|
|
37
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<UserRequestApprovalComponent, "lib-user-request-approval", never, { "showDelete": { "alias": "showDelete"; "required": false; }; }, {}, never, never, true, never>;
|
|
77
38
|
}
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import * as i0 from "@angular/core";
|
|
2
2
|
import * as i1 from "./user-request-approval.component";
|
|
3
|
-
import * as i2 from "./user-request-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
3
|
+
import * as i2 from "./user-access-request-status-badge/user-access-request-status-badge.component";
|
|
4
|
+
/**
|
|
5
|
+
* Backward-compatibility shim. The components are standalone; this module keeps
|
|
6
|
+
* the historical `LibUserRequestApprovalModule` name so existing NgModule-based
|
|
7
|
+
* consumers keep working after the rebuild.
|
|
8
|
+
*/
|
|
8
9
|
export declare class LibUserRequestApprovalModule {
|
|
9
10
|
static ɵfac: i0.ɵɵFactoryDeclaration<LibUserRequestApprovalModule, never>;
|
|
10
|
-
static ɵmod: i0.ɵɵNgModuleDeclaration<LibUserRequestApprovalModule, [typeof i1.UserRequestApprovalComponent, typeof i2.
|
|
11
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<LibUserRequestApprovalModule, never, [typeof i1.UserRequestApprovalComponent, typeof i2.UserAccessRequestStatusBadgeComponent], [typeof i1.UserRequestApprovalComponent, typeof i2.UserAccessRequestStatusBadgeComponent]>;
|
|
11
12
|
static ɵinj: i0.ɵɵInjectorDeclaration<LibUserRequestApprovalModule>;
|
|
12
13
|
}
|
|
@@ -1,80 +0,0 @@
|
|
|
1
|
-
import { Component, Input, Output, EventEmitter, } from '@angular/core';
|
|
2
|
-
import { Subject } from 'rxjs';
|
|
3
|
-
import { takeUntil } from 'rxjs/operators';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
import * as i1 from "./base-data.facade";
|
|
6
|
-
export class BaseDataComponent {
|
|
7
|
-
facade;
|
|
8
|
-
columns;
|
|
9
|
-
selectionChange = new EventEmitter();
|
|
10
|
-
exportData = new EventEmitter();
|
|
11
|
-
destroy$ = new Subject();
|
|
12
|
-
isLoading = false;
|
|
13
|
-
items = [];
|
|
14
|
-
selectedItems = [];
|
|
15
|
-
isGridView = true;
|
|
16
|
-
constructor(facade) {
|
|
17
|
-
this.facade = facade;
|
|
18
|
-
}
|
|
19
|
-
ngOnInit() {
|
|
20
|
-
this.setupSubscriptions();
|
|
21
|
-
this.loadInitialData();
|
|
22
|
-
}
|
|
23
|
-
ngOnDestroy() {
|
|
24
|
-
this.destroy$.next();
|
|
25
|
-
this.destroy$.complete();
|
|
26
|
-
}
|
|
27
|
-
setupSubscriptions() {
|
|
28
|
-
this.facade
|
|
29
|
-
.isUpdating$()
|
|
30
|
-
.pipe(takeUntil(this.destroy$))
|
|
31
|
-
.subscribe((loading) => (this.isLoading = loading));
|
|
32
|
-
this.facade
|
|
33
|
-
.getItems$()
|
|
34
|
-
.pipe(takeUntil(this.destroy$))
|
|
35
|
-
.subscribe((items) => (this.items = items));
|
|
36
|
-
}
|
|
37
|
-
async loadInitialData() {
|
|
38
|
-
try {
|
|
39
|
-
await this.facade.loadItems();
|
|
40
|
-
}
|
|
41
|
-
catch (error) {
|
|
42
|
-
// Handle error appropriately
|
|
43
|
-
console.error('Failed to load initial data:', error);
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
onSearch(event) {
|
|
47
|
-
this.facade.search(event.value);
|
|
48
|
-
}
|
|
49
|
-
async onLoadMore() {
|
|
50
|
-
try {
|
|
51
|
-
await this.facade.loadMore();
|
|
52
|
-
}
|
|
53
|
-
catch (error) {
|
|
54
|
-
console.error('Failed to load more:', error);
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
onViewChange(isGridView) {
|
|
58
|
-
this.isGridView = isGridView;
|
|
59
|
-
}
|
|
60
|
-
onSelectionChange(selected) {
|
|
61
|
-
this.selectedItems = selected;
|
|
62
|
-
this.selectionChange.emit(selected);
|
|
63
|
-
}
|
|
64
|
-
onExport(data) {
|
|
65
|
-
this.exportData.emit(data);
|
|
66
|
-
}
|
|
67
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BaseDataComponent, deps: [{ token: i1.BaseDataFacade }], target: i0.ɵɵFactoryTarget.Component });
|
|
68
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: BaseDataComponent, selector: "ng-component", inputs: { columns: "columns" }, outputs: { selectionChange: "selectionChange", exportData: "exportData" }, ngImport: i0, template: '', isInline: true });
|
|
69
|
-
}
|
|
70
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BaseDataComponent, decorators: [{
|
|
71
|
-
type: Component,
|
|
72
|
-
args: [{ template: '' }]
|
|
73
|
-
}], ctorParameters: () => [{ type: i1.BaseDataFacade }], propDecorators: { columns: [{
|
|
74
|
-
type: Input
|
|
75
|
-
}], selectionChange: [{
|
|
76
|
-
type: Output
|
|
77
|
-
}], exportData: [{
|
|
78
|
-
type: Output
|
|
79
|
-
}] } });
|
|
80
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1kYXRhLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZlcmJlbi1hdXRoZW50aWNhdGlvbi11aS9zcmMvbGliL2Jhc2UvYmFzZS1kYXRhLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULEtBQUssRUFDTCxNQUFNLEVBQ04sWUFBWSxHQUdiLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7QUFNM0MsTUFBTSxPQUFnQixpQkFBaUI7SUFhZjtJQVZiLE9BQU8sQ0FBeUI7SUFDL0IsZUFBZSxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7SUFDMUMsVUFBVSxHQUFHLElBQUksWUFBWSxFQUF5QixDQUFDO0lBRXZELFFBQVEsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO0lBQ3pDLFNBQVMsR0FBRyxLQUFLLENBQUM7SUFDbEIsS0FBSyxHQUFRLEVBQUUsQ0FBQztJQUNoQixhQUFhLEdBQVEsRUFBRSxDQUFDO0lBQ3hCLFVBQVUsR0FBRyxJQUFJLENBQUM7SUFFbEIsWUFBc0IsTUFBeUI7UUFBekIsV0FBTSxHQUFOLE1BQU0sQ0FBbUI7SUFBRyxDQUFDO0lBRW5ELFFBQVE7UUFDTixJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztRQUMxQixJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7SUFDekIsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUVTLGtCQUFrQjtRQUMxQixJQUFJLENBQUMsTUFBTTthQUNSLFdBQVcsRUFBRTthQUNiLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2FBQzlCLFNBQVMsQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxHQUFHLE9BQU8sQ0FBQyxDQUFDLENBQUM7UUFFdEQsSUFBSSxDQUFDLE1BQU07YUFDUixTQUFTLEVBQUU7YUFDWCxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQzthQUM5QixTQUFTLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ2hELENBQUM7SUFFUyxLQUFLLENBQUMsZUFBZTtRQUM3QixJQUFJLENBQUM7WUFDSCxNQUFNLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDaEMsQ0FBQztRQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7WUFDZiw2QkFBNkI7WUFDN0IsT0FBTyxDQUFDLEtBQUssQ0FBQyw4QkFBOEIsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUN2RCxDQUFDO0lBQ0gsQ0FBQztJQUVELFFBQVEsQ0FBQyxLQUFxQztRQUM1QyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUVELEtBQUssQ0FBQyxVQUFVO1FBQ2QsSUFBSSxDQUFDO1lBQ0gsTUFBTSxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQy9CLENBQUM7UUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO1lBQ2YsT0FBTyxDQUFDLEtBQUssQ0FBQyxzQkFBc0IsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUMvQyxDQUFDO0lBQ0gsQ0FBQztJQUVELFlBQVksQ0FBQyxVQUFtQjtRQUM5QixJQUFJLENBQUMsVUFBVSxHQUFHLFVBQVUsQ0FBQztJQUMvQixDQUFDO0lBRUQsaUJBQWlCLENBQUMsUUFBYTtRQUM3QixJQUFJLENBQUMsYUFBYSxHQUFHLFFBQVEsQ0FBQztRQUM5QixJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRUQsUUFBUSxDQUFDLElBQTJCO1FBQ2xDLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzdCLENBQUM7d0dBckVtQixpQkFBaUI7NEZBQWpCLGlCQUFpQiwrSkFEaEIsRUFBRTs7NEZBQ0gsaUJBQWlCO2tCQUR0QyxTQUFTO21CQUFDLEVBQUUsUUFBUSxFQUFFLEVBQUUsRUFBRTttRkFJaEIsT0FBTztzQkFBZixLQUFLO2dCQUNJLGVBQWU7c0JBQXhCLE1BQU07Z0JBQ0csVUFBVTtzQkFBbkIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgSW5wdXQsXG4gIE91dHB1dCxcbiAgRXZlbnRFbWl0dGVyLFxuICBPbkluaXQsXG4gIE9uRGVzdHJveSxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBCYXNlTW9kZWwgfSBmcm9tICd2ZXJiZW4tYXV0aGVudGljYXRpb24tdWkvc3JjL2xpYi9tb2RlbHMnO1xuaW1wb3J0IHsgQ29sdW1uRGVmaW5pdGlvbiB9IGZyb20gJ3ZlcmJlbi1uZy11aSc7XG5pbXBvcnQgeyBCYXNlRGF0YUZhY2FkZSB9IGZyb20gJy4vYmFzZS1kYXRhLmZhY2FkZSc7XG5cbkBDb21wb25lbnQoeyB0ZW1wbGF0ZTogJycgfSlcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBCYXNlRGF0YUNvbXBvbmVudDxUIGV4dGVuZHMgQmFzZU1vZGVsPlxuICBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95XG57XG4gIEBJbnB1dCgpIGNvbHVtbnMhOiBDb2x1bW5EZWZpbml0aW9uPFQ+W107XG4gIEBPdXRwdXQoKSBzZWxlY3Rpb25DaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPFRbXT4oKTtcbiAgQE91dHB1dCgpIGV4cG9ydERhdGEgPSBuZXcgRXZlbnRFbWl0dGVyPFJlY29yZDxzdHJpbmcsIGFueT5bXT4oKTtcblxuICBwcm90ZWN0ZWQgZGVzdHJveSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICBpc0xvYWRpbmcgPSBmYWxzZTtcbiAgaXRlbXM6IFRbXSA9IFtdO1xuICBzZWxlY3RlZEl0ZW1zOiBUW10gPSBbXTtcbiAgaXNHcmlkVmlldyA9IHRydWU7XG5cbiAgY29uc3RydWN0b3IocHJvdGVjdGVkIGZhY2FkZTogQmFzZURhdGFGYWNhZGU8VD4pIHt9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5zZXR1cFN1YnNjcmlwdGlvbnMoKTtcbiAgICB0aGlzLmxvYWRJbml0aWFsRGF0YSgpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5kZXN0cm95JC5uZXh0KCk7XG4gICAgdGhpcy5kZXN0cm95JC5jb21wbGV0ZSgpO1xuICB9XG5cbiAgcHJvdGVjdGVkIHNldHVwU3Vic2NyaXB0aW9ucygpOiB2b2lkIHtcbiAgICB0aGlzLmZhY2FkZVxuICAgICAgLmlzVXBkYXRpbmckKClcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcbiAgICAgIC5zdWJzY3JpYmUoKGxvYWRpbmcpID0+ICh0aGlzLmlzTG9hZGluZyA9IGxvYWRpbmcpKTtcblxuICAgIHRoaXMuZmFjYWRlXG4gICAgICAuZ2V0SXRlbXMkKClcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcbiAgICAgIC5zdWJzY3JpYmUoKGl0ZW1zKSA9PiAodGhpcy5pdGVtcyA9IGl0ZW1zKSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgYXN5bmMgbG9hZEluaXRpYWxEYXRhKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIHRyeSB7XG4gICAgICBhd2FpdCB0aGlzLmZhY2FkZS5sb2FkSXRlbXMoKTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgLy8gSGFuZGxlIGVycm9yIGFwcHJvcHJpYXRlbHlcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0ZhaWxlZCB0byBsb2FkIGluaXRpYWwgZGF0YTonLCBlcnJvcik7XG4gICAgfVxuICB9XG5cbiAgb25TZWFyY2goZXZlbnQ6IHsga2V5OiBzdHJpbmc7IHZhbHVlOiBzdHJpbmcgfSk6IHZvaWQge1xuICAgIHRoaXMuZmFjYWRlLnNlYXJjaChldmVudC52YWx1ZSk7XG4gIH1cblxuICBhc3luYyBvbkxvYWRNb3JlKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIHRyeSB7XG4gICAgICBhd2FpdCB0aGlzLmZhY2FkZS5sb2FkTW9yZSgpO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBjb25zb2xlLmVycm9yKCdGYWlsZWQgdG8gbG9hZCBtb3JlOicsIGVycm9yKTtcbiAgICB9XG4gIH1cblxuICBvblZpZXdDaGFuZ2UoaXNHcmlkVmlldzogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMuaXNHcmlkVmlldyA9IGlzR3JpZFZpZXc7XG4gIH1cblxuICBvblNlbGVjdGlvbkNoYW5nZShzZWxlY3RlZDogVFtdKTogdm9pZCB7XG4gICAgdGhpcy5zZWxlY3RlZEl0ZW1zID0gc2VsZWN0ZWQ7XG4gICAgdGhpcy5zZWxlY3Rpb25DaGFuZ2UuZW1pdChzZWxlY3RlZCk7XG4gIH1cblxuICBvbkV4cG9ydChkYXRhOiBSZWNvcmQ8c3RyaW5nLCBhbnk+W10pOiB2b2lkIHtcbiAgICB0aGlzLmV4cG9ydERhdGEuZW1pdChkYXRhKTtcbiAgfVxufVxuIl19
|
|
@@ -1,130 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import { Subject, debounceTime, distinctUntilChanged, takeUntil, } from 'rxjs';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "./base-data.state";
|
|
5
|
-
import * as i2 from "./base-data.service";
|
|
6
|
-
export class BaseDataFacade {
|
|
7
|
-
state;
|
|
8
|
-
service;
|
|
9
|
-
searchSubject = new Subject();
|
|
10
|
-
destroy$ = new Subject();
|
|
11
|
-
constructor(state, service) {
|
|
12
|
-
this.state = state;
|
|
13
|
-
this.service = service;
|
|
14
|
-
this.setupSearchHandler();
|
|
15
|
-
}
|
|
16
|
-
setupSearchHandler() {
|
|
17
|
-
this.searchSubject
|
|
18
|
-
.pipe(debounceTime(300), distinctUntilChanged(), takeUntil(this.destroy$))
|
|
19
|
-
.subscribe((searchTerm) => {
|
|
20
|
-
this.handleSearch(searchTerm);
|
|
21
|
-
});
|
|
22
|
-
}
|
|
23
|
-
destroy() {
|
|
24
|
-
this.destroy$.next();
|
|
25
|
-
this.destroy$.complete();
|
|
26
|
-
}
|
|
27
|
-
// State Observables
|
|
28
|
-
isUpdating$() {
|
|
29
|
-
return this.state.isUpdating$();
|
|
30
|
-
}
|
|
31
|
-
getItems$() {
|
|
32
|
-
return this.state.getItems$();
|
|
33
|
-
}
|
|
34
|
-
getSearchTerm$() {
|
|
35
|
-
return this.state.getSearchTerm$();
|
|
36
|
-
}
|
|
37
|
-
getQueryParams$() {
|
|
38
|
-
return this.state.getQueryParams$();
|
|
39
|
-
}
|
|
40
|
-
// Actions
|
|
41
|
-
search(term) {
|
|
42
|
-
this.searchSubject.next(term);
|
|
43
|
-
}
|
|
44
|
-
async handleSearch(searchTerm) {
|
|
45
|
-
this.state.setSearchTerm(searchTerm);
|
|
46
|
-
this.state.resetPagination();
|
|
47
|
-
await this.loadItems();
|
|
48
|
-
}
|
|
49
|
-
async loadItems() {
|
|
50
|
-
try {
|
|
51
|
-
this.state.setUpdating(true);
|
|
52
|
-
const params = this.state.getQueryParamsValue();
|
|
53
|
-
const searchTerm = this.state.getSearchTermValue();
|
|
54
|
-
const response = searchTerm
|
|
55
|
-
? await this.service
|
|
56
|
-
.getItemsBySearchTerm(searchTerm, params.skip, params.limit, params.sortParam, params.sortOrder)
|
|
57
|
-
.toPromise()
|
|
58
|
-
: await this.service
|
|
59
|
-
.getItems(params.skip, params.limit, params.sortParam, params.sortOrder)
|
|
60
|
-
.toPromise();
|
|
61
|
-
if (response?.Result) {
|
|
62
|
-
this.state.setItems(response?.Result);
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
catch (error) {
|
|
66
|
-
console.error('Failed to load items:', error);
|
|
67
|
-
throw error;
|
|
68
|
-
}
|
|
69
|
-
finally {
|
|
70
|
-
this.state.setUpdating(false);
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
async loadMore() {
|
|
74
|
-
try {
|
|
75
|
-
this.state.setUpdating(true);
|
|
76
|
-
const currentParams = this.state.getQueryParamsValue();
|
|
77
|
-
const newSkip = currentParams.skip + currentParams.limit;
|
|
78
|
-
this.state.updateQueryParams({ skip: newSkip });
|
|
79
|
-
const response = await this.service
|
|
80
|
-
.getItems(newSkip, currentParams.limit, currentParams.sortParam, currentParams.sortOrder)
|
|
81
|
-
.toPromise();
|
|
82
|
-
if (response?.Result) {
|
|
83
|
-
this.state.appendItems(response.Result);
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
catch (error) {
|
|
87
|
-
console.error('Failed to load more items:', error);
|
|
88
|
-
throw error;
|
|
89
|
-
}
|
|
90
|
-
finally {
|
|
91
|
-
this.state.setUpdating(false);
|
|
92
|
-
}
|
|
93
|
-
}
|
|
94
|
-
async saveItem(item) {
|
|
95
|
-
try {
|
|
96
|
-
this.state.setUpdating(true);
|
|
97
|
-
const response = await this.service.saveItems([item]).toPromise();
|
|
98
|
-
if (response?.[0]) {
|
|
99
|
-
this.state.updateItem(response[0]);
|
|
100
|
-
}
|
|
101
|
-
}
|
|
102
|
-
catch (error) {
|
|
103
|
-
console.error('Failed to save item:', error);
|
|
104
|
-
throw error;
|
|
105
|
-
}
|
|
106
|
-
finally {
|
|
107
|
-
this.state.setUpdating(false);
|
|
108
|
-
}
|
|
109
|
-
}
|
|
110
|
-
async deleteItem(itemId) {
|
|
111
|
-
try {
|
|
112
|
-
this.state.setUpdating(true);
|
|
113
|
-
await this.service.deleteItems([itemId]).toPromise();
|
|
114
|
-
this.state.removeItem(itemId);
|
|
115
|
-
}
|
|
116
|
-
catch (error) {
|
|
117
|
-
console.error('Failed to delete item:', error);
|
|
118
|
-
throw error;
|
|
119
|
-
}
|
|
120
|
-
finally {
|
|
121
|
-
this.state.setUpdating(false);
|
|
122
|
-
}
|
|
123
|
-
}
|
|
124
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BaseDataFacade, deps: [{ token: i1.BaseDataState }, { token: i2.BaseDataService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
125
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BaseDataFacade });
|
|
126
|
-
}
|
|
127
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BaseDataFacade, decorators: [{
|
|
128
|
-
type: Injectable
|
|
129
|
-
}], ctorParameters: () => [{ type: i1.BaseDataState }, { type: i2.BaseDataService }] });
|
|
130
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1kYXRhLmZhY2FkZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZlcmJlbi1hdXRoZW50aWNhdGlvbi11aS9zcmMvbGliL2Jhc2UvYmFzZS1kYXRhLmZhY2FkZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFFTCxPQUFPLEVBQ1AsWUFBWSxFQUNaLG9CQUFvQixFQUNwQixTQUFTLEdBQ1YsTUFBTSxNQUFNLENBQUM7Ozs7QUFPZCxNQUFNLE9BQWdCLGNBQWM7SUFLdEI7SUFDQTtJQUxKLGFBQWEsR0FBRyxJQUFJLE9BQU8sRUFBVSxDQUFDO0lBQ3RDLFFBQVEsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO0lBRXZDLFlBQ1ksS0FBdUIsRUFDdkIsT0FBMkI7UUFEM0IsVUFBSyxHQUFMLEtBQUssQ0FBa0I7UUFDdkIsWUFBTyxHQUFQLE9BQU8sQ0FBb0I7UUFFckMsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUVPLGtCQUFrQjtRQUN4QixJQUFJLENBQUMsYUFBYTthQUNmLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLEVBQUUsb0JBQW9CLEVBQUUsRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2FBQ3pFLFNBQVMsQ0FBQyxDQUFDLFVBQVUsRUFBRSxFQUFFO1lBQ3hCLElBQUksQ0FBQyxZQUFZLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDaEMsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsT0FBTztRQUNMLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDckIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUMzQixDQUFDO0lBRUQsb0JBQW9CO0lBQ3BCLFdBQVc7UUFDVCxPQUFPLElBQUks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LENBQUM7WUFDN0IsTUFBTSxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDckQsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDaEMsQ0FBQztRQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7WUFDZixPQUFPLENBQUMsS0FBSyxDQUFDLHdCQUF3QixFQUFFLEtBQUssQ0FBQyxDQUFDO1lBQy9DLE1BQU0sS0FBSyxDQUFDO1FBQ2QsQ0FBQztnQkFBUyxDQUFDO1lBQ1QsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDaEMsQ0FBQztJQUNILENBQUM7d0dBN0ltQixjQUFjOzRHQUFkLGNBQWM7OzRGQUFkLGNBQWM7a0JBRG5DLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBPYnNlcnZhYmxlLFxuICBTdWJqZWN0LFxuICBkZWJvdW5jZVRpbWUsXG4gIGRpc3RpbmN0VW50aWxDaGFuZ2VkLFxuICB0YWtlVW50aWwsXG59IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgSVF1ZXJ5UGFyYW1zIH0gZnJvbSAnLi9tb2RlbHMnO1xuaW1wb3J0IHsgQmFzZURhdGFTdGF0ZSB9IGZyb20gJy4vYmFzZS1kYXRhLnN0YXRlJztcbmltcG9ydCB7IEJhc2VEYXRhU2VydmljZSB9IGZyb20gJy4vYmFzZS1kYXRhLnNlcnZpY2UnO1xuaW1wb3J0IHsgQmFzZU1vZGVsIH0gZnJvbSAndmVyYmVuLWF1dGhlbnRpY2F0aW9uLXVpL3NyYy9saWIvbW9kZWxzJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEJhc2VEYXRhRmFjYWRlPFQgZXh0ZW5kcyBCYXNlTW9kZWw+IHtcbiAgcHJpdmF0ZSBzZWFyY2hTdWJqZWN0ID0gbmV3IFN1YmplY3Q8c3RyaW5nPigpO1xuICBwcml2YXRlIGRlc3Ryb3kkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcm90ZWN0ZWQgc3RhdGU6IEJhc2VEYXRhU3RhdGU8VD4sXG4gICAgcHJvdGVjdGVkIHNlcnZpY2U6IEJhc2VEYXRhU2VydmljZTxUPlxuICApIHtcbiAgICB0aGlzLnNldHVwU2VhcmNoSGFuZGxlcigpO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXR1cFNlYXJjaEhhbmRsZXIoKTogdm9pZCB7XG4gICAgdGhpcy5zZWFyY2hTdWJqZWN0XG4gICAgICAucGlwZShkZWJvdW5jZVRpbWUoMzAwKSwgZGlzdGluY3RVbnRpbENoYW5nZWQoKSwgdGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxuICAgICAgLnN1YnNjcmliZSgoc2VhcmNoVGVybSkgPT4ge1xuICAgICAgICB0aGlzLmhhbmRsZVNlYXJjaChzZWFyY2hUZXJtKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgZGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLmRlc3Ryb3kkLm5leHQoKTtcbiAgICB0aGlzLmRlc3Ryb3kkLmNvbXBsZXRlKCk7XG4gIH1cblxuICAvLyBTdGF0ZSBPYnNlcnZhYmxlc1xuICBpc1VwZGF0aW5nJCgpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5zdGF0ZS5pc1VwZGF0aW5nJCgpO1xuICB9XG5cbiAgZ2V0SXRlbXMkKCk6IE9ic2VydmFibGU8VFtdPiB7XG4gICAgcmV0dXJuIHRoaXMuc3RhdGUuZ2V0SXRlbXMkKCk7XG4gIH1cblxuICBnZXRTZWFyY2hUZXJtJCgpOiBPYnNlcnZhYmxlPHN0cmluZz4ge1xuICAgIHJldHVybiB0aGlzLnN0YXRlLmdldFNlYXJjaFRlcm0kKCk7XG4gIH1cblxuICBnZXRRdWVyeVBhcmFtcyQoKTogT2JzZXJ2YWJsZTxJUXVlcnlQYXJhbXM8VD4+IHtcbiAgICByZXR1cm4gdGhpcy5zdGF0ZS5nZXRRdWVyeVBhcmFtcyQoKTtcbiAgfVxuXG4gIC8vIEFjdGlvbnNcbiAgc2VhcmNoKHRlcm06IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMuc2VhcmNoU3ViamVjdC5uZXh0KHRlcm0pO1xuICB9XG5cbiAgcHJvdGVjdGVkIGFzeW5jIGhhbmRsZVNlYXJjaChzZWFyY2hUZXJtOiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICB0aGlzLnN0YXRlLnNldFNlYXJjaFRlcm0oc2VhcmNoVGVybSk7XG4gICAgdGhpcy5zdGF0ZS5yZXNldFBhZ2luYXRpb24oKTtcbiAgICBhd2FpdCB0aGlzLmxvYWRJdGVtcygpO1xuICB9XG5cbiAgYXN5bmMgbG9hZEl0ZW1zKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIHRyeSB7XG4gICAgICB0aGlzLnN0YXRlLnNldFVwZGF0aW5nKHRydWUpO1xuICAgICAgY29uc3QgcGFyYW1zID0gdGhpcy5zdGF0ZS5nZXRRdWVyeVBhcmFtc1ZhbHVlKCk7XG4gICAgICBjb25zdCBzZWFyY2hUZXJtID0gdGhpcy5zdGF0ZS5nZXRTZWFyY2hUZXJtVmFsdWUoKTtcblxuICAgICAgY29uc3QgcmVzcG9uc2UgPSBzZWFyY2hUZXJtXG4gICAgICAgID8gYXdhaXQgdGhpcy5zZXJ2aWNlXG4gICAgICAgICAgICAuZ2V0SXRlbXNCeVNlYXJjaFRlcm0oXG4gICAgICAgICAgICAgIHNlYXJjaFRlcm0sXG4gICAgICAgICAgICAgIHBhcmFtcy5za2lwLFxuICAgICAgICAgICAgICBwYXJhbXMubGltaXQsXG4gICAgICAgICAgICAgIHBhcmFtcy5zb3J0UGFyYW0hLFxuICAgICAgICAgICAgICBwYXJhbXMuc29ydE9yZGVyXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAudG9Qcm9taXNlKClcbiAgICAgICAgOiBhd2FpdCB0aGlzLnNlcnZpY2VcbiAgICAgICAgICAgIC5nZXRJdGVtcyhcbiAgICAgICAgICAgICAgcGFyYW1zLnNraXAsXG4gICAgICAgICAgICAgIHBhcmFtcy5saW1pdCxcbiAgICAgICAgICAgICAgcGFyYW1zLnNvcnRQYXJhbSEsXG4gICAgICAgICAgICAgIHBhcmFtcy5zb3J0T3JkZXJcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC50b1Byb21pc2UoKTtcblxuICAgICAgaWYgKHJlc3BvbnNlPy5SZXN1bHQpIHtcbiAgICAgICAgdGhpcy5zdGF0ZS5zZXRJdGVtcyhyZXNwb25zZT8uUmVzdWx0KTtcbiAgICAgIH1cbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc29sZS5lcnJvcignRmFpbGVkIHRvIGxvYWQgaXRlbXM6JywgZXJyb3IpO1xuICAgICAgdGhyb3cgZXJyb3I7XG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIHRoaXMuc3RhdGUuc2V0VXBkYXRpbmcoZmFsc2UpO1xuICAgIH1cbiAgfVxuXG4gIGFzeW5jIGxvYWRNb3JlKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIHRyeSB7XG4gICAgICB0aGlzLnN0YXRlLnNldFVwZGF0aW5nKHRydWUpO1xuICAgICAgY29uc3QgY3VycmVudFBhcmFtcyA9IHRoaXMuc3RhdGUuZ2V0UXVlcnlQYXJhbXNWYWx1ZSgpO1xuICAgICAgY29uc3QgbmV3U2tpcCA9IGN1cnJlbnRQYXJhbXMuc2tpcCArIGN1cnJlbnRQYXJhbXMubGltaXQ7XG4gICAgICB0aGlzLnN0YXRlLnVwZGF0ZVF1ZXJ5UGFyYW1zKHsgc2tpcDogbmV3U2tpcCB9KTtcblxuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCB0aGlzLnNlcnZpY2VcbiAgICAgICAgLmdldEl0ZW1zKFxuICAgICAgICAgIG5ld1NraXAsXG4gICAgICAgICAgY3VycmVudFBhcmFtcy5saW1pdCxcbiAgICAgICAgICBjdXJyZW50UGFyYW1zLnNvcnRQYXJhbSEsXG4gICAgICAgICAgY3VycmVudFBhcmFtcy5zb3J0T3JkZXJcbiAgICAgICAgKVxuICAgICAgICAudG9Qcm9taXNlKCk7XG5cbiAgICAgIGlmIChyZXNwb25zZT8uUmVzdWx0KSB7XG4gICAgICAgIHRoaXMuc3RhdGUuYXBwZW5kSXRlbXMocmVzcG9uc2UuUmVzdWx0KTtcbiAgICAgIH1cbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc29sZS5lcnJvcignRmFpbGVkIHRvIGxvYWQgbW9yZSBpdGVtczonLCBlcnJvcik7XG4gICAgICB0aHJvdyBlcnJvcjtcbiAgICB9IGZpbmFsbHkge1xuICAgICAgdGhpcy5zdGF0ZS5zZXRVcGRhdGluZyhmYWxzZSk7XG4gICAgfVxuICB9XG5cbiAgYXN5bmMgc2F2ZUl0ZW0oaXRlbTogVCk6IFByb21pc2U8dm9pZD4ge1xuICAgIHRyeSB7XG4gICAgICB0aGlzLnN0YXRlLnNldFVwZGF0aW5nKHRydWUpO1xuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCB0aGlzLnNlcnZpY2Uuc2F2ZUl0ZW1zKFtpdGVtXSkudG9Qcm9taXNlKCk7XG4gICAgICBpZiAocmVzcG9uc2U/LlswXSkge1xuICAgICAgICB0aGlzLnN0YXRlLnVwZGF0ZUl0ZW0ocmVzcG9uc2VbMF0pO1xuICAgICAgfVxuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBjb25zb2xlLmVycm9yKCdGYWlsZWQgdG8gc2F2ZSBpdGVtOicsIGVycm9yKTtcbiAgICAgIHRocm93IGVycm9yO1xuICAgIH0gZmluYWxseSB7XG4gICAgICB0aGlzLnN0YXRlLnNldFVwZGF0aW5nKGZhbHNlKTtcbiAgICB9XG4gIH1cblxuICBhc3luYyBkZWxldGVJdGVtKGl0ZW1JZDogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdHJ5IHtcbiAgICAgIHRoaXMuc3RhdGUuc2V0VXBkYXRpbmcodHJ1ZSk7XG4gICAgICBhd2FpdCB0aGlzLnNlcnZpY2UuZGVsZXRlSXRlbXMoW2l0ZW1JZF0pLnRvUHJvbWlzZSgpO1xuICAgICAgdGhpcy5zdGF0ZS5yZW1vdmVJdGVtKGl0ZW1JZCk7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0ZhaWxlZCB0byBkZWxldGUgaXRlbTonLCBlcnJvcik7XG4gICAgICB0aHJvdyBlcnJvcjtcbiAgICB9IGZpbmFsbHkge1xuICAgICAgdGhpcy5zdGF0ZS5zZXRVcGRhdGluZyhmYWxzZSk7XG4gICAgfVxuICB9XG59XG4iXX0=
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
export class BaseDataService {
|
|
2
|
-
http;
|
|
3
|
-
baseUrl;
|
|
4
|
-
constructor(http, baseUrl) {
|
|
5
|
-
this.http = http;
|
|
6
|
-
this.baseUrl = baseUrl;
|
|
7
|
-
}
|
|
8
|
-
getItems(skip, limit, sortParam, sortOrder) {
|
|
9
|
-
return this.http.get(`${this.baseUrl}/${this.getEndpoint()}/${skip}/${limit}/${String(sortParam)}/${sortOrder}`);
|
|
10
|
-
}
|
|
11
|
-
getItemsBySearchTerm(searchTerm, skip, limit, sortParam, sortOrder) {
|
|
12
|
-
return this.http.get(`${this.baseUrl}/${this.getEndpoint()}/search/${searchTerm}/${skip}/${limit}/${String(sortParam)}/${sortOrder}`);
|
|
13
|
-
}
|
|
14
|
-
saveItems(items) {
|
|
15
|
-
return this.http.post(`${this.baseUrl}/${this.getEndpoint()}`, items);
|
|
16
|
-
}
|
|
17
|
-
deleteItems(itemIds) {
|
|
18
|
-
return this.http.delete(`${this.baseUrl}/${this.getEndpoint()}?ids=${itemIds.join(',')}`);
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1kYXRhLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92ZXJiZW4tYXV0aGVudGljYXRpb24tdWkvc3JjL2xpYi9iYXNlL2Jhc2UtZGF0YS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUtBLE1BQU0sT0FBZ0IsZUFBZTtJQUNiO0lBQTRCO0lBQWxELFlBQXNCLElBQWdCLEVBQVksT0FBZTtRQUEzQyxTQUFJLEdBQUosSUFBSSxDQUFZO1FBQVksWUFBTyxHQUFQLE9BQU8sQ0FBUTtJQUFHLENBQUM7SUFJckUsUUFBUSxDQUNOLElBQVksRUFDWixLQUFhLEVBQ2IsU0FBa0IsRUFDbEIsU0FBaUI7UUFFakIsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FDbEIsR0FBRyxJQUFJLENBQUMsT0FBTyxJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUUsSUFBSSxJQUFJLElBQUksS0FBSyxJQUFJLE1BQU0sQ0FDOUQsU0FBUyxDQUNWLElBQUksU0FBUyxFQUFFLENBQ2pCLENBQUM7SUFDSixDQUFDO0lBRUQsb0JBQW9CLENBQ2xCLFVBQWtCLEVBQ2xCLElBQVksRUFDWixLQUFhLEVBQ2IsU0FBa0IsRUFDbEIsU0FBaUI7UUFFakIsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FDbEIsR0FDRSxJQUFJLENBQUMsT0FDUCxJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUUsV0FBVyxVQUFVLElBQUksSUFBSSxJQUFJLEtBQUssSUFBSSxNQUFNLENBQ3BFLFNBQVMsQ0FDVixJQUFJLFNBQVMsRUFBRSxDQUNqQixDQUFDO0lBQ0osQ0FBQztJQUVELFNBQVMsQ0FBQyxLQUFVO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQU0sR0FBRyxJQUFJLENBQUMsT0FBTyxJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUUsRUFBRSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQzdFLENBQUM7SUFFRCxXQUFXLENBQUMsT0FBaUI7UUFDM0IsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FDckIsR0FBRyxJQUFJLENBQUMsT0FBTyxJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUUsUUFBUSxPQUFPLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQ2pFLENBQUM7SUFDSixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQmFzZU1vZGVsIH0gZnJvbSAndmVyYmVuLWF1dGhlbnRpY2F0aW9uLXVpL3NyYy9saWIvbW9kZWxzJztcbmltcG9ydCB7IFBhZ2VkIH0gZnJvbSAndmVyYmVuLWF1dGhlbnRpY2F0aW9uLXVpL3NyYy9saWIvbW9kZWxzJztcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEJhc2VEYXRhU2VydmljZTxUIGV4dGVuZHMgQmFzZU1vZGVsPiB7XG4gIGNvbnN0cnVjdG9yKHByb3RlY3RlZCBodHRwOiBIdHRwQ2xpZW50LCBwcm90ZWN0ZWQgYmFzZVVybDogc3RyaW5nKSB7fVxuXG4gIGFic3RyYWN0IGdldEVuZHBvaW50KCk6IHN0cmluZztcblxuICBnZXRJdGVtcyhcbiAgICBza2lwOiBudW1iZXIsXG4gICAgbGltaXQ6IG51bWJlcixcbiAgICBzb3J0UGFyYW06IGtleW9mIFQsXG4gICAgc29ydE9yZGVyOiBzdHJpbmdcbiAgKTogT2JzZXJ2YWJsZTxQYWdlZDxUPj4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PFBhZ2VkPFQ+PihcbiAgICAgIGAke3RoaXMuYmFzZVVybH0vJHt0aGlzLmdldEVuZHBvaW50KCl9LyR7c2tpcH0vJHtsaW1pdH0vJHtTdHJpbmcoXG4gICAgICAgIHNvcnRQYXJhbVxuICAgICAgKX0vJHtzb3J0T3JkZXJ9YFxuICAgICk7XG4gIH1cblxuICBnZXRJdGVtc0J5U2VhcmNoVGVybShcbiAgICBzZWFyY2hUZXJtOiBzdHJpbmcsXG4gICAgc2tpcDogbnVtYmVyLFxuICAgIGxpbWl0OiBudW1iZXIsXG4gICAgc29ydFBhcmFtOiBrZXlvZiBULFxuICAgIHNvcnRPcmRlcjogc3RyaW5nXG4gICk6IE9ic2VydmFibGU8UGFnZWQ8VD4+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxQYWdlZDxUPj4oXG4gICAgICBgJHtcbiAgICAgICAgdGhpcy5iYXNlVXJsXG4gICAgICB9LyR7dGhpcy5nZXRFbmRwb2ludCgpfS9zZWFyY2gvJHtzZWFyY2hUZXJtfS8ke3NraXB9LyR7bGltaXR9LyR7U3RyaW5nKFxuICAgICAgICBzb3J0UGFyYW1cbiAgICAgICl9LyR7c29ydE9yZGVyfWBcbiAgICApO1xuICB9XG5cbiAgc2F2ZUl0ZW1zKGl0ZW1zOiBUW10pOiBPYnNlcnZhYmxlPFRbXT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxUW10+KGAke3RoaXMuYmFzZVVybH0vJHt0aGlzLmdldEVuZHBvaW50KCl9YCwgaXRlbXMpO1xuICB9XG5cbiAgZGVsZXRlSXRlbXMoaXRlbUlkczogc3RyaW5nW10pOiBPYnNlcnZhYmxlPHZvaWQ+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmRlbGV0ZTx2b2lkPihcbiAgICAgIGAke3RoaXMuYmFzZVVybH0vJHt0aGlzLmdldEVuZHBvaW50KCl9P2lkcz0ke2l0ZW1JZHMuam9pbignLCcpfWBcbiAgICApO1xuICB9XG59XG4iXX0=
|
|
@@ -1,74 +0,0 @@
|
|
|
1
|
-
import { BehaviorSubject } from 'rxjs';
|
|
2
|
-
export class BaseDataState {
|
|
3
|
-
updating$ = new BehaviorSubject(false);
|
|
4
|
-
items$ = new BehaviorSubject([]);
|
|
5
|
-
searchTerm$ = new BehaviorSubject('');
|
|
6
|
-
queryParams$ = new BehaviorSubject({
|
|
7
|
-
skip: 0,
|
|
8
|
-
limit: 20,
|
|
9
|
-
sortOrder: 'asc',
|
|
10
|
-
});
|
|
11
|
-
columns$ = new BehaviorSubject([]);
|
|
12
|
-
isUpdating$() {
|
|
13
|
-
return this.updating$.asObservable();
|
|
14
|
-
}
|
|
15
|
-
setUpdating(isUpdating) {
|
|
16
|
-
this.updating$.next(isUpdating);
|
|
17
|
-
}
|
|
18
|
-
getItems$() {
|
|
19
|
-
return this.items$.asObservable();
|
|
20
|
-
}
|
|
21
|
-
setItems(items) {
|
|
22
|
-
this.items$.next(items);
|
|
23
|
-
}
|
|
24
|
-
appendItems(newItems) {
|
|
25
|
-
const currentItems = this.items$.getValue();
|
|
26
|
-
this.items$.next([...currentItems, ...newItems]);
|
|
27
|
-
}
|
|
28
|
-
getSearchTerm$() {
|
|
29
|
-
return this.searchTerm$.asObservable();
|
|
30
|
-
}
|
|
31
|
-
getSearchTermValue() {
|
|
32
|
-
return this.searchTerm$.getValue();
|
|
33
|
-
}
|
|
34
|
-
setSearchTerm(term) {
|
|
35
|
-
this.searchTerm$.next(term);
|
|
36
|
-
}
|
|
37
|
-
getQueryParams$() {
|
|
38
|
-
return this.queryParams$.asObservable();
|
|
39
|
-
}
|
|
40
|
-
getQueryParamsValue() {
|
|
41
|
-
return this.queryParams$.getValue();
|
|
42
|
-
}
|
|
43
|
-
updateQueryParams(params) {
|
|
44
|
-
this.queryParams$.next({ ...this.queryParams$.getValue(), ...params });
|
|
45
|
-
}
|
|
46
|
-
resetPagination() {
|
|
47
|
-
const currentParams = this.queryParams$.getValue();
|
|
48
|
-
this.queryParams$.next({ ...currentParams, skip: 0 });
|
|
49
|
-
}
|
|
50
|
-
getColumns$() {
|
|
51
|
-
return this.columns$.asObservable();
|
|
52
|
-
}
|
|
53
|
-
setColumns(columns) {
|
|
54
|
-
this.columns$.next(columns);
|
|
55
|
-
}
|
|
56
|
-
// CRUD Operations
|
|
57
|
-
addItem(item) {
|
|
58
|
-
const currentItems = this.items$.getValue();
|
|
59
|
-
this.items$.next([...currentItems, item]);
|
|
60
|
-
}
|
|
61
|
-
updateItem(updatedItem) {
|
|
62
|
-
const items = this.items$.getValue();
|
|
63
|
-
const index = items.findIndex((item) => item.Id === updatedItem.Id);
|
|
64
|
-
if (index !== -1) {
|
|
65
|
-
items[index] = updatedItem;
|
|
66
|
-
this.items$.next([...items]);
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
removeItem(itemId) {
|
|
70
|
-
const currentItems = this.items$.getValue();
|
|
71
|
-
this.items$.next(currentItems.filter((item) => item.Id !== itemId));
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1kYXRhLnN0YXRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmVyYmVuLWF1dGhlbnRpY2F0aW9uLXVpL3NyYy9saWIvYmFzZS9iYXNlLWRhdGEuc3RhdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGVBQWUsRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUtuRCxNQUFNLE9BQWdCLGFBQWE7SUFDdkIsU0FBUyxHQUFHLElBQUksZUFBZSxDQUFVLEtBQUssQ0FBQyxDQUFDO0lBQ2hELE1BQU0sR0FBRyxJQUFJLGVBQWUsQ0FBTSxFQUFFLENBQUMsQ0FBQztJQUN0QyxXQUFXLEdBQUcsSUFBSSxlQUFlLENBQVMsRUFBRSxDQUFDLENBQUM7SUFDOUMsWUFBWSxHQUFHLElBQUksZUFBZSxDQUFrQjtRQUM1RCxJQUFJLEVBQUUsQ0FBQztRQUNQLEtBQUssRUFBRSxFQUFFO1FBQ1QsU0FBUyxFQUFFLEtBQUs7S0FDakIsQ0FBQyxDQUFDO0lBQ08sUUFBUSxHQUFHLElBQUksZUFBZSxDQUF3QixFQUFFLENBQUMsQ0FBQztJQUVwRSxXQUFXO1FBQ1QsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3ZDLENBQUM7SUFFRCxXQUFXLENBQUMsVUFBbUI7UUFDN0IsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUVELFNBQVM7UUFDUCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDcEMsQ0FBQztJQUVELFFBQVEsQ0FBQyxLQUFVO1FBQ2pCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzFCLENBQUM7SUFFRCxXQUFXLENBQUMsUUFBYTtRQUN2QixNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQzVDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxZQUFZLEVBQUUsR0FBRyxRQUFRLENBQUMsQ0FBQyxDQUFDO0lBQ25ELENBQUM7SUFFRCxjQUFjO1FBQ1osT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3pDLENBQUM7SUFFRCxrQkFBa0I7UUFDaEIsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ3JDLENBQUM7SUFFRCxhQUFhLENBQUMsSUFBWTtRQUN4QixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM5QixDQUFDO0lBRUQsZUFBZTtRQUNiLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUMxQyxDQUFDO0lBRUQsbUJBQW1CO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUN0QyxDQUFDO0lBRUQsaUJBQWlCLENBQUMsTUFBZ0M7UUFDaEQsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLEVBQUUsR0FBRyxNQUFNLEVBQUUsQ0FBQyxDQUFDO0lBQ3pFLENBQUM7SUFFRCxlQUFlO1FBQ2IsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNuRCxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsYUFBYSxFQUFFLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ3hELENBQUM7SUFFRCxXQUFXO1FBQ1QsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3RDLENBQUM7SUFFRCxVQUFVLENBQUMsT0FBOEI7UUFDdkMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVELGtCQUFrQjtJQUNsQixPQUFPLENBQUMsSUFBTztRQUNiLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDNUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLFlBQVksRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFFRCxVQUFVLENBQUMsV0FBYztRQUN2QixNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ3JDLE1BQU0sS0FBSyxHQUFHLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxFQUFFLEtBQUssV0FBVyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ3BFLElBQUksS0FBSyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDakIsS0FBSyxDQUFDLEtBQUssQ0FBQyxHQUFHLFdBQVcsQ0FBQztZQUMzQixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUMvQixDQUFDO0lBQ0gsQ0FBQztJQUVELFVBQVUsQ0FBQyxNQUFjO1FBQ3ZCLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDNUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEVBQUUsS0FBSyxNQUFNLENBQUMsQ0FBQyxDQUFDO0lBQ3RFLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQmFzZU1vZGVsIH0gZnJvbSAndmVyYmVuLWF1dGhlbnRpY2F0aW9uLXVpL3NyYy9saWIvbW9kZWxzJztcbmltcG9ydCB7IElRdWVyeVBhcmFtcyB9IGZyb20gJy4vbW9kZWxzJztcbmltcG9ydCB7IENvbHVtbkRlZmluaXRpb24gfSBmcm9tICd2ZXJiZW4tbmctdWknO1xuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQmFzZURhdGFTdGF0ZTxUIGV4dGVuZHMgQmFzZU1vZGVsPiB7XG4gIHByb3RlY3RlZCB1cGRhdGluZyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcbiAgcHJvdGVjdGVkIGl0ZW1zJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8VFtdPihbXSk7XG4gIHByb3RlY3RlZCBzZWFyY2hUZXJtJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8c3RyaW5nPignJyk7XG4gIHByb3RlY3RlZCBxdWVyeVBhcmFtcyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PElRdWVyeVBhcmFtczxUPj4oe1xuICAgIHNraXA6IDAsXG4gICAgbGltaXQ6IDIwLFxuICAgIHNvcnRPcmRlcjogJ2FzYycsXG4gIH0pO1xuICBwcm90ZWN0ZWQgY29sdW1ucyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PENvbHVtbkRlZmluaXRpb248VD5bXT4oW10pO1xuXG4gIGlzVXBkYXRpbmckKCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0aGlzLnVwZGF0aW5nJC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIHNldFVwZGF0aW5nKGlzVXBkYXRpbmc6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICB0aGlzLnVwZGF0aW5nJC5uZXh0KGlzVXBkYXRpbmcpO1xuICB9XG5cbiAgZ2V0SXRlbXMkKCk6IE9ic2VydmFibGU8VFtdPiB7XG4gICAgcmV0dXJuIHRoaXMuaXRlbXMkLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgc2V0SXRlbXMoaXRlbXM6IFRbXSk6IHZvaWQge1xuICAgIHRoaXMuaXRlbXMkLm5leHQoaXRlbXMpO1xuICB9XG5cbiAgYXBwZW5kSXRlbXMobmV3SXRlbXM6IFRbXSk6IHZvaWQge1xuICAgIGNvbnN0IGN1cnJlbnRJdGVtcyA9IHRoaXMuaXRlbXMkLmdldFZhbHVlKCk7XG4gICAgdGhpcy5pdGVtcyQubmV4dChbLi4uY3VycmVudEl0ZW1zLCAuLi5uZXdJdGVtc10pO1xuICB9XG5cbiAgZ2V0U2VhcmNoVGVybSQoKTogT2JzZXJ2YWJsZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gdGhpcy5zZWFyY2hUZXJtJC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIGdldFNlYXJjaFRlcm1WYWx1ZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLnNlYXJjaFRlcm0kLmdldFZhbHVlKCk7XG4gIH1cblxuICBzZXRTZWFyY2hUZXJtKHRlcm06IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMuc2VhcmNoVGVybSQubmV4dCh0ZXJtKTtcbiAgfVxuXG4gIGdldFF1ZXJ5UGFyYW1zJCgpOiBPYnNlcnZhYmxlPElRdWVyeVBhcmFtczxUPj4ge1xuICAgIHJldHVybiB0aGlzLnF1ZXJ5UGFyYW1zJC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIGdldFF1ZXJ5UGFyYW1zVmFsdWUoKTogSVF1ZXJ5UGFyYW1zPFQ+IHtcbiAgICByZXR1cm4gdGhpcy5xdWVyeVBhcmFtcyQuZ2V0VmFsdWUoKTtcbiAgfVxuXG4gIHVwZGF0ZVF1ZXJ5UGFyYW1zKHBhcmFtczogUGFydGlhbDxJUXVlcnlQYXJhbXM8VD4+KTogdm9pZCB7XG4gICAgdGhpcy5xdWVyeVBhcmFtcyQubmV4dCh7IC4uLnRoaXMucXVlcnlQYXJhbXMkLmdldFZhbHVlKCksIC4uLnBhcmFtcyB9KTtcbiAgfVxuXG4gIHJlc2V0UGFnaW5hdGlvbigpOiB2b2lkIHtcbiAgICBjb25zdCBjdXJyZW50UGFyYW1zID0gdGhpcy5xdWVyeVBhcmFtcyQuZ2V0VmFsdWUoKTtcbiAgICB0aGlzLnF1ZXJ5UGFyYW1zJC5uZXh0KHsgLi4uY3VycmVudFBhcmFtcywgc2tpcDogMCB9KTtcbiAgfVxuXG4gIGdldENvbHVtbnMkKCk6IE9ic2VydmFibGU8Q29sdW1uRGVmaW5pdGlvbjxUPltdPiB7XG4gICAgcmV0dXJuIHRoaXMuY29sdW1ucyQuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBzZXRDb2x1bW5zKGNvbHVtbnM6IENvbHVtbkRlZmluaXRpb248VD5bXSk6IHZvaWQge1xuICAgIHRoaXMuY29sdW1ucyQubmV4dChjb2x1bW5zKTtcbiAgfVxuXG4gIC8vIENSVUQgT3BlcmF0aW9uc1xuICBhZGRJdGVtKGl0ZW06IFQpOiB2b2lkIHtcbiAgICBjb25zdCBjdXJyZW50SXRlbXMgPSB0aGlzLml0ZW1zJC5nZXRWYWx1ZSgpO1xuICAgIHRoaXMuaXRlbXMkLm5leHQoWy4uLmN1cnJlbnRJdGVtcywgaXRlbV0pO1xuICB9XG5cbiAgdXBkYXRlSXRlbSh1cGRhdGVkSXRlbTogVCk6IHZvaWQge1xuICAgIGNvbnN0IGl0ZW1zID0gdGhpcy5pdGVtcyQuZ2V0VmFsdWUoKTtcbiAgICBjb25zdCBpbmRleCA9IGl0ZW1zLmZpbmRJbmRleCgoaXRlbSkgPT4gaXRlbS5JZCA9PT0gdXBkYXRlZEl0ZW0uSWQpO1xuICAgIGlmIChpbmRleCAhPT0gLTEpIHtcbiAgICAgIGl0ZW1zW2luZGV4XSA9IHVwZGF0ZWRJdGVtO1xuICAgICAgdGhpcy5pdGVtcyQubmV4dChbLi4uaXRlbXNdKTtcbiAgICB9XG4gIH1cblxuICByZW1vdmVJdGVtKGl0ZW1JZDogc3RyaW5nKTogdm9pZCB7XG4gICAgY29uc3QgY3VycmVudEl0ZW1zID0gdGhpcy5pdGVtcyQuZ2V0VmFsdWUoKTtcbiAgICB0aGlzLml0ZW1zJC5uZXh0KGN1cnJlbnRJdGVtcy5maWx0ZXIoKGl0ZW0pID0+IGl0ZW0uSWQgIT09IGl0ZW1JZCkpO1xuICB9XG59XG4iXX0=
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmVyYmVuLWF1dGhlbnRpY2F0aW9uLXVpL3NyYy9saWIvYmFzZS9tb2RlbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbIi8vIGJhc2UtZGF0YS5tb2RlbC50c1xuZXhwb3J0IGludGVyZmFjZSBJQmFzZURhdGFNb2RlbCB7XG4gIGlkOiBzdHJpbmc7XG4gIGNyZWF0ZWRBdD86IERhdGU7XG4gIHVwZGF0ZWRBdD86IERhdGU7XG59XG5cbi8vIGJhc2UtcXVlcnktcGFyYW1zLm1vZGVsLnRzXG5leHBvcnQgaW50ZXJmYWNlIElRdWVyeVBhcmFtczxUPiB7XG4gIHNraXA6IG51bWJlcjtcbiAgbGltaXQ6IG51bWJlcjtcbiAgc29ydFBhcmFtPzoga2V5b2YgVDtcbiAgc29ydE9yZGVyOiAnYXNjJyB8ICdkZXNjJztcbn1cbiJdfQ==
|
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
export const baseStyle = {
|
|
2
|
-
width: "100%",
|
|
3
|
-
fontFamily: '"Fraunces", serif',
|
|
4
|
-
fontSize: '125%',
|
|
5
|
-
whiteSpace: 'nowrap',
|
|
6
|
-
margin: '0',
|
|
7
|
-
border: '1px solid #D4A007',
|
|
8
|
-
borderRadius: '16px',
|
|
9
|
-
borderCollapse: 'separate',
|
|
10
|
-
borderSpacing: '0',
|
|
11
|
-
// tableLayout: 'fixed',
|
|
12
|
-
overflow: 'hidden',
|
|
13
|
-
rows: {
|
|
14
|
-
even: {
|
|
15
|
-
backgroundColor: '#FDFDFD',
|
|
16
|
-
},
|
|
17
|
-
odd: {
|
|
18
|
-
backgroundColor: '#F1F4FB',
|
|
19
|
-
},
|
|
20
|
-
height: '68px',
|
|
21
|
-
},
|
|
22
|
-
cells: {
|
|
23
|
-
padding: '0.5rem 1rem',
|
|
24
|
-
},
|
|
25
|
-
header: {
|
|
26
|
-
stickyTop: true,
|
|
27
|
-
zIndex: 2,
|
|
28
|
-
backgroundColor: '#EFF2FB',
|
|
29
|
-
fontWeight: 'bold',
|
|
30
|
-
textAlign: 'left',
|
|
31
|
-
padding: '12px 16px',
|
|
32
|
-
height: '30px',
|
|
33
|
-
},
|
|
34
|
-
footer: {
|
|
35
|
-
// stickyBottom: true,
|
|
36
|
-
// zIndex: 2,
|
|
37
|
-
padding: '3px',
|
|
38
|
-
},
|
|
39
|
-
// body: {
|
|
40
|
-
// background: '#fff',
|
|
41
|
-
// padding: '4px 5px',
|
|
42
|
-
// textAlign: 'center',
|
|
43
|
-
// },
|
|
44
|
-
// firstColumn: {
|
|
45
|
-
// stickyLeft: true,
|
|
46
|
-
// zIndex: 1,
|
|
47
|
-
// },
|
|
48
|
-
lastColumn: {
|
|
49
|
-
// stickyRight: true,
|
|
50
|
-
// zIndex: 1,
|
|
51
|
-
},
|
|
52
|
-
};
|
|
53
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS10YWJsZS1zdHlsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZlcmJlbi1hdXRoZW50aWNhdGlvbi11aS9zcmMvbGliL2NvbXBvbmVudHMvdXNlci1tYW5hZ2VtZW50L2Jhc2UtdGFibGUtc3R5bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sU0FBUyxHQUFRO0lBQzVCLEtBQUssRUFBQyxNQUFNO0lBQ1osVUFBVSxFQUFFLG1CQUFtQjtJQUMvQixRQUFRLEVBQUUsTUFBTTtJQUNoQixVQUFVLEVBQUUsUUFBUTtJQUNwQixNQUFNLEVBQUUsR0FBRztJQUNYLE1BQU0sRUFBRSxtQkFBbUI7SUFDM0IsWUFBWSxFQUFFLE1BQU07SUFDcEIsY0FBYyxFQUFFLFVBQVU7SUFDMUIsYUFBYSxFQUFFLEdBQUc7SUFDbEIsd0JBQXdCO0lBQ3hCLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLElBQUksRUFBRTtRQUNKLElBQUksRUFBRTtZQUNKLGVBQWUsRUFBRSxTQUFTO1NBQzNCO1FBQ0QsR0FBRyxFQUFFO1lBQ0gsZUFBZSxFQUFFLFNBQVM7U0FDM0I7UUFDRCxNQUFNLEVBQUUsTUFBTTtLQUNmO0lBQ0QsS0FBSyxFQUFFO1FBQ0wsT0FBTyxFQUFFLGFBQWE7S0FDdkI7SUFDRCxNQUFNLEVBQUU7UUFDTixTQUFTLEVBQUUsSUFBSTtRQUNmLE1BQU0sRUFBRSxDQUFDO1FBQ1QsZUFBZSxFQUFFLFNBQVM7UUFDMUIsVUFBVSxFQUFFLE1BQU07UUFDbEIsU0FBUyxFQUFFLE1BQU07UUFDakIsT0FBTyxFQUFFLFdBQVc7UUFDcEIsTUFBTSxFQUFFLE1BQU07S0FDZjtJQUNELE1BQU0sRUFBRTtRQUNOLHNCQUFzQjtRQUN0QixhQUFhO1FBQ2IsT0FBTyxFQUFFLEtBQUs7S0FDZjtJQUNELFlBQVk7SUFDWiwwQkFBMEI7SUFDMUIsMEJBQTBCO0lBQzFCLDJCQUEyQjtJQUMzQixPQUFPO0lBQ1AsaUJBQWlCO0lBQ2pCLHNCQUFzQjtJQUN0QixlQUFlO0lBQ2YsS0FBSztJQUNMLFVBQVUsRUFBRTtJQUNWLHFCQUFxQjtJQUNyQixhQUFhO0tBQ2Q7Q0FDRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IGJhc2VTdHlsZTogYW55ID0ge1xuICB3aWR0aDpcIjEwMCVcIixcbiAgZm9udEZhbWlseTogJ1wiRnJhdW5jZXNcIiwgc2VyaWYnLFxuICBmb250U2l6ZTogJzEyNSUnLFxuICB3aGl0ZVNwYWNlOiAnbm93cmFwJyxcbiAgbWFyZ2luOiAnMCcsXG4gIGJvcmRlcjogJzFweCBzb2xpZCAjRDRBMDA3JyxcbiAgYm9yZGVyUmFkaXVzOiAnMTZweCcsXG4gIGJvcmRlckNvbGxhcHNlOiAnc2VwYXJhdGUnLFxuICBib3JkZXJTcGFjaW5nOiAnMCcsXG4gIC8vIHRhYmxlTGF5b3V0OiAnZml4ZWQnLFxuICBvdmVyZmxvdzogJ2hpZGRlbicsXG4gIHJvd3M6IHtcbiAgICBldmVuOiB7XG4gICAgICBiYWNrZ3JvdW5kQ29sb3I6ICcjRkRGREZEJyxcbiAgICB9LFxuICAgIG9kZDoge1xuICAgICAgYmFja2dyb3VuZENvbG9yOiAnI0YxRjRGQicsXG4gICAgfSxcbiAgICBoZWlnaHQ6ICc2OHB4JyxcbiAgfSxcbiAgY2VsbHM6IHtcbiAgICBwYWRkaW5nOiAnMC41cmVtIDFyZW0nLFxuICB9LFxuICBoZWFkZXI6IHtcbiAgICBzdGlja3lUb3A6IHRydWUsXG4gICAgekluZGV4OiAyLFxuICAgIGJhY2tncm91bmRDb2xvcjogJyNFRkYyRkInLFxuICAgIGZvbnRXZWlnaHQ6ICdib2xkJyxcbiAgICB0ZXh0QWxpZ246ICdsZWZ0JyxcbiAgICBwYWRkaW5nOiAnMTJweCAxNnB4JyxcbiAgICBoZWlnaHQ6ICczMHB4JyxcbiAgfSxcbiAgZm9vdGVyOiB7XG4gICAgLy8gc3RpY2t5Qm90dG9tOiB0cnVlLFxuICAgIC8vIHpJbmRleDogMixcbiAgICBwYWRkaW5nOiAnM3B4JyxcbiAgfSxcbiAgLy8gICBib2R5OiB7XG4gIC8vICAgICBiYWNrZ3JvdW5kOiAnI2ZmZicsXG4gIC8vICAgICBwYWRkaW5nOiAnNHB4IDVweCcsXG4gIC8vICAgICB0ZXh0QWxpZ246ICdjZW50ZXInLFxuICAvLyAgIH0sXG4gIC8vIGZpcnN0Q29sdW1uOiB7XG4gIC8vICAgc3RpY2t5TGVmdDogdHJ1ZSxcbiAgLy8gICB6SW5kZXg6IDEsXG4gIC8vIH0sXG4gIGxhc3RDb2x1bW46IHtcbiAgICAvLyBzdGlja3lSaWdodDogdHJ1ZSxcbiAgICAvLyB6SW5kZXg6IDEsXG4gIH0sXG59O1xuIl19
|