@flusys/ng-shared 3.0.0-rc → 3.0.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 +603 -322
- package/fesm2022/flusys-ng-shared.mjs +193 -283
- package/fesm2022/flusys-ng-shared.mjs.map +1 -1
- package/package.json +9 -9
- package/types/flusys-ng-shared.d.ts +63 -169
package/package.json
CHANGED
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@flusys/ng-shared",
|
|
3
|
-
"version": "3.0.
|
|
3
|
+
"version": "3.0.1",
|
|
4
4
|
"description": "Shared components and utilities for FLUSYS Angular packages",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"peerDependencies": {
|
|
7
|
-
"@angular/common": "
|
|
8
|
-
"@angular/core": "
|
|
9
|
-
"@angular/forms": "
|
|
10
|
-
"@flusys/ng-core": "
|
|
11
|
-
"@primeuix/themes": "
|
|
12
|
-
"primeicons": "
|
|
13
|
-
"primeng": "
|
|
7
|
+
"@angular/common": ">=21.0.0",
|
|
8
|
+
"@angular/core": ">=21.0.0",
|
|
9
|
+
"@angular/forms": ">=21.0.0",
|
|
10
|
+
"@flusys/ng-core": ">=3.0.1",
|
|
11
|
+
"@primeuix/themes": ">=1.0.0",
|
|
12
|
+
"primeicons": ">=7.0.0",
|
|
13
|
+
"primeng": ">=21.0.0"
|
|
14
14
|
},
|
|
15
15
|
"sideEffects": false,
|
|
16
16
|
"module": "fesm2022/flusys-ng-shared.mjs",
|
|
@@ -27,4 +27,4 @@
|
|
|
27
27
|
"dependencies": {
|
|
28
28
|
"tslib": "^2.3.0"
|
|
29
29
|
}
|
|
30
|
-
}
|
|
30
|
+
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Observable } from 'rxjs';
|
|
2
2
|
import * as _angular_core from '@angular/core';
|
|
3
|
-
import { Signal, Injector, ResourceRef, model, ElementRef, DestroyRef, InjectionToken } from '@angular/core';
|
|
3
|
+
import { Signal, Injector, ResourceRef, model, OnDestroy, ElementRef, TemplateRef, DestroyRef, InjectionToken } from '@angular/core';
|
|
4
4
|
import * as i1 from '@angular/common';
|
|
5
5
|
import * as i2 from '@angular/forms';
|
|
6
6
|
import { ControlValueAccessor } from '@angular/forms';
|
|
@@ -41,25 +41,18 @@ import * as i31 from 'primeng/tabs';
|
|
|
41
41
|
import * as i32 from 'primeng/tag';
|
|
42
42
|
import * as i33 from 'primeng/textarea';
|
|
43
43
|
import * as i34 from 'primeng/toast';
|
|
44
|
-
import * as i35 from 'primeng/
|
|
45
|
-
import * as i36 from 'primeng/
|
|
46
|
-
import * as i37 from 'primeng/
|
|
44
|
+
import * as i35 from 'primeng/togglebutton';
|
|
45
|
+
import * as i36 from 'primeng/toggleswitch';
|
|
46
|
+
import * as i37 from 'primeng/tooltip';
|
|
47
|
+
import * as i38 from 'primeng/treetable';
|
|
48
|
+
import * as i39 from 'primeng/progressspinner';
|
|
49
|
+
import * as i40 from 'primeng/colorpicker';
|
|
47
50
|
import * as _flusys_ng_shared from '@flusys/ng-shared';
|
|
48
51
|
import { HttpClient, HttpParams, HttpHeaders } from '@angular/common/http';
|
|
49
52
|
import { FormValueControl } from '@angular/forms/signals';
|
|
50
53
|
import { MessageService, ConfirmationService } from 'primeng/api';
|
|
51
54
|
import * as _flusys_ng_core from '@flusys/ng-core';
|
|
52
55
|
|
|
53
|
-
/**
|
|
54
|
-
* Centralized Permission Codes
|
|
55
|
-
*
|
|
56
|
-
* Single source of truth for all permission codes used across the application.
|
|
57
|
-
* Use these constants instead of hardcoded strings to prevent typos and enable easy refactoring.
|
|
58
|
-
*
|
|
59
|
-
* Naming Convention: <entity>.<action>
|
|
60
|
-
* - entity: The resource being accessed (e.g., user, role, company)
|
|
61
|
-
* - action: The operation being performed (create, read, update, delete, assign)
|
|
62
|
-
*/
|
|
63
56
|
declare const USER_PERMISSIONS: {
|
|
64
57
|
readonly CREATE: "user.create";
|
|
65
58
|
readonly READ: "user.read";
|
|
@@ -142,9 +135,24 @@ declare const FORM_PERMISSIONS: {
|
|
|
142
135
|
readonly UPDATE: "form.update";
|
|
143
136
|
readonly DELETE: "form.delete";
|
|
144
137
|
};
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
138
|
+
declare const EVENT_PERMISSIONS: {
|
|
139
|
+
readonly CREATE: "event.create";
|
|
140
|
+
readonly READ: "event.read";
|
|
141
|
+
readonly UPDATE: "event.update";
|
|
142
|
+
readonly DELETE: "event.delete";
|
|
143
|
+
};
|
|
144
|
+
declare const EVENT_PARTICIPANT_PERMISSIONS: {
|
|
145
|
+
readonly CREATE: "event-participant.create";
|
|
146
|
+
readonly READ: "event-participant.read";
|
|
147
|
+
readonly UPDATE: "event-participant.update";
|
|
148
|
+
readonly DELETE: "event-participant.delete";
|
|
149
|
+
};
|
|
150
|
+
declare const NOTIFICATION_PERMISSIONS: {
|
|
151
|
+
readonly CREATE: "notification.create";
|
|
152
|
+
readonly READ: "notification.read";
|
|
153
|
+
readonly UPDATE: "notification.update";
|
|
154
|
+
readonly DELETE: "notification.delete";
|
|
155
|
+
};
|
|
148
156
|
declare const PERMISSIONS: {
|
|
149
157
|
readonly USER: {
|
|
150
158
|
readonly CREATE: "user.create";
|
|
@@ -228,6 +236,24 @@ declare const PERMISSIONS: {
|
|
|
228
236
|
readonly UPDATE: "form.update";
|
|
229
237
|
readonly DELETE: "form.delete";
|
|
230
238
|
};
|
|
239
|
+
readonly EVENT: {
|
|
240
|
+
readonly CREATE: "event.create";
|
|
241
|
+
readonly READ: "event.read";
|
|
242
|
+
readonly UPDATE: "event.update";
|
|
243
|
+
readonly DELETE: "event.delete";
|
|
244
|
+
};
|
|
245
|
+
readonly EVENT_PARTICIPANT: {
|
|
246
|
+
readonly CREATE: "event-participant.create";
|
|
247
|
+
readonly READ: "event-participant.read";
|
|
248
|
+
readonly UPDATE: "event-participant.update";
|
|
249
|
+
readonly DELETE: "event-participant.delete";
|
|
250
|
+
};
|
|
251
|
+
readonly NOTIFICATION: {
|
|
252
|
+
readonly CREATE: "notification.create";
|
|
253
|
+
readonly READ: "notification.read";
|
|
254
|
+
readonly UPDATE: "notification.update";
|
|
255
|
+
readonly DELETE: "notification.delete";
|
|
256
|
+
};
|
|
231
257
|
};
|
|
232
258
|
type PermissionCode = (typeof PERMISSIONS)[keyof typeof PERMISSIONS][keyof (typeof PERMISSIONS)[keyof typeof PERMISSIONS]];
|
|
233
259
|
|
|
@@ -945,23 +971,15 @@ declare class AngularModule {
|
|
|
945
971
|
|
|
946
972
|
declare class PrimeModule {
|
|
947
973
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<PrimeModule, never>;
|
|
948
|
-
static ɵmod: _angular_core.ɵɵNgModuleDeclaration<PrimeModule, never, never, [typeof i1$1.AutoCompleteModule, typeof i2$1.AvatarModule, typeof i3$1.ButtonModule, typeof i4.CardModule, typeof i5.CheckboxModule, typeof i6.ConfirmDialogModule, typeof i7.DatePickerModule, typeof i8.DialogModule, typeof i9.DividerModule, typeof i10.FileUploadModule, typeof i11.IconFieldModule, typeof i12.ImageModule, typeof i13.InputIconModule, typeof i14.InputNumberModule, typeof i15.InputTextModule, typeof i16.ListboxModule, typeof i17.MultiSelectModule, typeof i18.PaginatorModule, typeof i19.PanelModule, typeof i20.PasswordModule, typeof i21.PopoverModule, typeof i22.ProgressBarModule, typeof i23.RadioButtonModule, typeof i24.RippleModule, typeof i25.SelectButtonModule, typeof i26.SelectModule, typeof i27.SkeletonModule, typeof i28.SplitButtonModule, typeof i29.StepsModule, typeof i30.TableModule, typeof i31.TabsModule, typeof i32.TagModule, typeof i33.TextareaModule, typeof i34.ToastModule, typeof i35.
|
|
974
|
+
static ɵmod: _angular_core.ɵɵNgModuleDeclaration<PrimeModule, never, never, [typeof i1$1.AutoCompleteModule, typeof i2$1.AvatarModule, typeof i3$1.ButtonModule, typeof i4.CardModule, typeof i5.CheckboxModule, typeof i6.ConfirmDialogModule, typeof i7.DatePickerModule, typeof i8.DialogModule, typeof i9.DividerModule, typeof i10.FileUploadModule, typeof i11.IconFieldModule, typeof i12.ImageModule, typeof i13.InputIconModule, typeof i14.InputNumberModule, typeof i15.InputTextModule, typeof i16.ListboxModule, typeof i17.MultiSelectModule, typeof i18.PaginatorModule, typeof i19.PanelModule, typeof i20.PasswordModule, typeof i21.PopoverModule, typeof i22.ProgressBarModule, typeof i23.RadioButtonModule, typeof i24.RippleModule, typeof i25.SelectButtonModule, typeof i26.SelectModule, typeof i27.SkeletonModule, typeof i28.SplitButtonModule, typeof i29.StepsModule, typeof i30.TableModule, typeof i31.TabsModule, typeof i32.TagModule, typeof i33.TextareaModule, typeof i34.ToastModule, typeof i35.ToggleButtonModule, typeof i36.ToggleSwitchModule, typeof i37.TooltipModule, typeof i38.TreeTableModule, typeof i39.ProgressSpinnerModule, typeof i40.ColorPickerModule]>;
|
|
949
975
|
static ɵinj: _angular_core.ɵɵInjectorDeclaration<PrimeModule>;
|
|
950
976
|
}
|
|
951
977
|
|
|
978
|
+
type ServiceName = 'auth' | 'administration' | 'iam' | 'storage' | 'formBuilder' | 'email' | 'eventManager' | 'notification';
|
|
979
|
+
|
|
952
980
|
/**
|
|
953
981
|
* Service interface for CRUD operations.
|
|
954
|
-
* Matches NestJS shared API controller endpoints
|
|
955
|
-
*
|
|
956
|
-
* | Angular Method | HTTP | NestJS Endpoint | Response Type |
|
|
957
|
-
* |------------------|--------|------------------------|------------------------|
|
|
958
|
-
* | insert() | POST | /{resource}/insert | ISingleResponse<T> |
|
|
959
|
-
* | insertMany() | POST | /{resource}/insert-many| IBulkResponse<T> |
|
|
960
|
-
* | findById() | POST | /{resource}/get/:id | ISingleResponse<T> |
|
|
961
|
-
* | getAll() | POST | /{resource}/get-all | IListResponse<T> |
|
|
962
|
-
* | update() | POST | /{resource}/update | ISingleResponse<T> |
|
|
963
|
-
* | updateMany() | POST | /{resource}/update-many| IBulkResponse<T> |
|
|
964
|
-
* | delete() | POST | /{resource}/delete | IMessageResponse |
|
|
982
|
+
* Matches NestJS shared API controller endpoints (all POST, RPC-style).
|
|
965
983
|
*/
|
|
966
984
|
interface IApiService<DtoT, InterfaceT> {
|
|
967
985
|
insert(dto: DtoT): Observable<ISingleResponse<InterfaceT>>;
|
|
@@ -975,42 +993,15 @@ interface IApiService<DtoT, InterfaceT> {
|
|
|
975
993
|
/**
|
|
976
994
|
* Abstract base class for API services using Angular 21 resource() API.
|
|
977
995
|
* Provides signal-based reactive data fetching with automatic loading states.
|
|
978
|
-
* Response types match FLUSYS_NEST backend DTOs.
|
|
979
|
-
*
|
|
980
|
-
* ## Endpoint Mapping
|
|
981
|
-
*
|
|
982
|
-
* All endpoints use POST method (RPC-style API):
|
|
983
|
-
* - `POST /{resource}/insert` - Create single item
|
|
984
|
-
* - `POST /{resource}/insert-many` - Create multiple items
|
|
985
|
-
* - `POST /{resource}/get/:id` - Get single item by ID
|
|
986
|
-
* - `POST /{resource}/get-all?q=` - List with pagination/filter
|
|
987
|
-
* - `POST /{resource}/update` - Update single item
|
|
988
|
-
* - `POST /{resource}/update-many` - Update multiple items
|
|
989
|
-
* - `POST /{resource}/delete` - Delete/restore/permanent delete
|
|
990
996
|
*
|
|
991
997
|
* @example
|
|
992
998
|
* ```typescript
|
|
993
|
-
* // Define service
|
|
994
999
|
* @Injectable({ providedIn: 'root' })
|
|
995
1000
|
* export class UserService extends ApiResourceService<UserDto, User> {
|
|
996
|
-
* constructor(
|
|
997
|
-
* super('users',
|
|
1001
|
+
* constructor() {
|
|
1002
|
+
* super('auth/users', inject(HttpClient));
|
|
998
1003
|
* }
|
|
999
1004
|
* }
|
|
1000
|
-
*
|
|
1001
|
-
* // In component - use signals
|
|
1002
|
-
* userService = inject(UserService);
|
|
1003
|
-
* users = this.userService.data; // Signal<User[]>
|
|
1004
|
-
* isLoading = this.userService.isLoading; // Signal<boolean>
|
|
1005
|
-
* total = this.userService.total; // Signal<number>
|
|
1006
|
-
*
|
|
1007
|
-
* // Trigger fetch
|
|
1008
|
-
* this.userService.fetchList('search', { pagination: { currentPage: 0, pageSize: 10 } });
|
|
1009
|
-
*
|
|
1010
|
-
* // CRUD operations
|
|
1011
|
-
* await this.userService.insertAsync({ name: 'John', email: 'john@example.com' });
|
|
1012
|
-
* await this.userService.updateAsync({ id: '123', name: 'John Updated' });
|
|
1013
|
-
* await this.userService.deleteAsync({ id: '123', type: 'delete' });
|
|
1014
1005
|
* ```
|
|
1015
1006
|
*/
|
|
1016
1007
|
declare abstract class ApiResourceService<DtoT, InterfaceT> implements IApiService<DtoT, InterfaceT> {
|
|
@@ -1018,144 +1009,41 @@ declare abstract class ApiResourceService<DtoT, InterfaceT> implements IApiServi
|
|
|
1018
1009
|
protected readonly injector: Injector;
|
|
1019
1010
|
protected readonly http: HttpClient;
|
|
1020
1011
|
protected readonly moduleApiName: string;
|
|
1021
|
-
/** Current search term */
|
|
1022
1012
|
readonly searchTerm: _angular_core.WritableSignal<string>;
|
|
1023
|
-
/** Current filter and pagination state */
|
|
1024
1013
|
readonly filterData: _angular_core.WritableSignal<IFilterData>;
|
|
1025
|
-
/**
|
|
1026
|
-
* Resource for list data - lazy initialized to prevent auto-fetch on service injection.
|
|
1027
|
-
* Call initListResource() or any list method (fetchList, reload, etc.) to initialize.
|
|
1028
|
-
*/
|
|
1029
1014
|
private _listResource;
|
|
1030
|
-
/** Whether the list resource has been initialized */
|
|
1031
1015
|
private _resourceInitialized;
|
|
1032
|
-
/**
|
|
1033
|
-
* Signal to track resource initialization for computed signals.
|
|
1034
|
-
* This allows computed signals to re-evaluate when the resource is created.
|
|
1035
|
-
* Without this, computed signals would not detect when _listResource changes from null.
|
|
1036
|
-
*/
|
|
1037
1016
|
private readonly _resourceInitSignal;
|
|
1038
|
-
/** Get or create the list resource (lazy initialization) */
|
|
1039
1017
|
get listResource(): ResourceRef<IListResponse<InterfaceT> | undefined>;
|
|
1040
|
-
/**
|
|
1041
|
-
* Initialize the list resource. Called automatically when accessing listResource
|
|
1042
|
-
* or any list-related computed signals/methods.
|
|
1043
|
-
* Uses runInInjectionContext to support lazy initialization outside constructor.
|
|
1044
|
-
*/
|
|
1045
1018
|
initListResource(): void;
|
|
1046
|
-
/**
|
|
1047
|
-
* Whether data is currently loading.
|
|
1048
|
-
* Tracks _resourceInitSignal to re-evaluate when resource is created.
|
|
1049
|
-
*/
|
|
1050
1019
|
readonly isLoading: _angular_core.Signal<boolean>;
|
|
1051
|
-
/**
|
|
1052
|
-
* List data array.
|
|
1053
|
-
* Tracks _resourceInitSignal to re-evaluate when resource is created.
|
|
1054
|
-
*/
|
|
1055
1020
|
readonly data: _angular_core.Signal<InterfaceT[]>;
|
|
1056
|
-
/**
|
|
1057
|
-
* Total count of items.
|
|
1058
|
-
* Tracks _resourceInitSignal to re-evaluate when resource is created.
|
|
1059
|
-
*/
|
|
1060
1021
|
readonly total: _angular_core.Signal<number>;
|
|
1061
|
-
/**
|
|
1062
|
-
* Pagination metadata.
|
|
1063
|
-
* Tracks _resourceInitSignal to re-evaluate when resource is created.
|
|
1064
|
-
*/
|
|
1065
1022
|
readonly pageInfo: _angular_core.Signal<_flusys_ng_shared.IPaginationMeta | undefined>;
|
|
1066
|
-
/**
|
|
1067
|
-
* Whether there are more pages.
|
|
1068
|
-
* Tracks _resourceInitSignal to re-evaluate when resource is created.
|
|
1069
|
-
*/
|
|
1070
1023
|
readonly hasMore: _angular_core.Signal<boolean>;
|
|
1071
|
-
constructor(moduleApiName: string, http: HttpClient);
|
|
1024
|
+
constructor(moduleApiName: string, http: HttpClient, serviceName?: ServiceName);
|
|
1072
1025
|
protected getHttpOptions(endpoint: string, params?: HttpParams): {
|
|
1073
1026
|
params?: HttpParams | undefined;
|
|
1074
1027
|
headers: HttpHeaders;
|
|
1075
1028
|
};
|
|
1076
|
-
/**
|
|
1077
|
-
* Fetch list data (triggers resource initialization and reload)
|
|
1078
|
-
*/
|
|
1079
1029
|
fetchList(search?: string, filter?: Partial<IFilterData>): void;
|
|
1080
|
-
/**
|
|
1081
|
-
* Update pagination
|
|
1082
|
-
*/
|
|
1083
1030
|
setPagination(pagination: IPagination): void;
|
|
1084
|
-
/**
|
|
1085
|
-
* Go to next page
|
|
1086
|
-
*/
|
|
1087
1031
|
nextPage(): void;
|
|
1088
|
-
/**
|
|
1089
|
-
* Reset to first page
|
|
1090
|
-
*/
|
|
1091
1032
|
resetPagination(): void;
|
|
1092
|
-
/**
|
|
1093
|
-
* Reload current data
|
|
1094
|
-
*/
|
|
1095
1033
|
reload(): void;
|
|
1096
|
-
/**
|
|
1097
|
-
* Insert single item (Observable)
|
|
1098
|
-
* POST /{resource}/insert
|
|
1099
|
-
*/
|
|
1100
1034
|
insert(dto: DtoT): Observable<ISingleResponse<InterfaceT>>;
|
|
1101
|
-
/**
|
|
1102
|
-
* Insert multiple items (Observable)
|
|
1103
|
-
* POST /{resource}/insert-many
|
|
1104
|
-
*/
|
|
1105
1035
|
insertMany(dtos: DtoT[]): Observable<IBulkResponse<InterfaceT>>;
|
|
1106
|
-
/**
|
|
1107
|
-
* Find single item by ID (Observable)
|
|
1108
|
-
* POST /{resource}/get/:id
|
|
1109
|
-
*/
|
|
1110
1036
|
findById(id: string, select?: string[]): Observable<ISingleResponse<InterfaceT>>;
|
|
1111
|
-
/**
|
|
1112
|
-
* Get all items with pagination (Observable)
|
|
1113
|
-
* POST /{resource}/get-all?q=search
|
|
1114
|
-
*/
|
|
1115
1037
|
getAll(search: string, filter: IFilterData): Observable<IListResponse<InterfaceT>>;
|
|
1116
|
-
/**
|
|
1117
|
-
* Update single item (Observable)
|
|
1118
|
-
* POST /{resource}/update
|
|
1119
|
-
*/
|
|
1120
1038
|
update(dto: DtoT): Observable<ISingleResponse<InterfaceT>>;
|
|
1121
|
-
/**
|
|
1122
|
-
* Update multiple items (Observable)
|
|
1123
|
-
* POST /{resource}/update-many
|
|
1124
|
-
*/
|
|
1125
1039
|
updateMany(dtos: DtoT[]): Observable<IBulkResponse<InterfaceT>>;
|
|
1126
|
-
/**
|
|
1127
|
-
* Delete items (Observable)
|
|
1128
|
-
* POST /{resource}/delete
|
|
1129
|
-
* @param deleteDto - { id: string | string[], type: 'delete' | 'restore' | 'permanent' }
|
|
1130
|
-
*/
|
|
1131
1040
|
delete(deleteDto: IDeleteData): Observable<IMessageResponse>;
|
|
1132
|
-
|
|
1133
|
-
* Fetch paginated list (async)
|
|
1134
|
-
*/
|
|
1135
|
-
protected fetchAllAsync(search: string, filter: IFilterData): Promise<IListResponse<InterfaceT>>;
|
|
1136
|
-
/**
|
|
1137
|
-
* Find single item by ID (async)
|
|
1138
|
-
*/
|
|
1041
|
+
getAllAsync(filter: IFilterData, search?: string): Promise<IListResponse<InterfaceT>>;
|
|
1139
1042
|
findByIdAsync(id: string, select?: string[]): Promise<ISingleResponse<InterfaceT>>;
|
|
1140
|
-
/**
|
|
1141
|
-
* Insert single item (async)
|
|
1142
|
-
*/
|
|
1143
1043
|
insertAsync(dto: DtoT): Promise<ISingleResponse<InterfaceT>>;
|
|
1144
|
-
/**
|
|
1145
|
-
* Insert multiple items (async)
|
|
1146
|
-
*/
|
|
1147
1044
|
insertManyAsync(dtos: DtoT[]): Promise<IBulkResponse<InterfaceT>>;
|
|
1148
|
-
/**
|
|
1149
|
-
* Update single item (async)
|
|
1150
|
-
*/
|
|
1151
1045
|
updateAsync(dto: DtoT): Promise<ISingleResponse<InterfaceT>>;
|
|
1152
|
-
/**
|
|
1153
|
-
* Update multiple items (async)
|
|
1154
|
-
*/
|
|
1155
1046
|
updateManyAsync(dtos: DtoT[]): Promise<IBulkResponse<InterfaceT>>;
|
|
1156
|
-
/**
|
|
1157
|
-
* Delete items (async)
|
|
1158
|
-
*/
|
|
1159
1047
|
deleteAsync(deleteDto: IDeleteData): Promise<IMessageResponse>;
|
|
1160
1048
|
}
|
|
1161
1049
|
|
|
@@ -1265,10 +1153,13 @@ declare class IconComponent {
|
|
|
1265
1153
|
* - Reactive forms: `[formControl]="ctrl"` or `formControlName="field"`
|
|
1266
1154
|
* - Signal forms: `[formField]="formTree.field"`
|
|
1267
1155
|
*/
|
|
1268
|
-
declare class LazyMultiSelectComponent extends BaseFormControl<string[] | null> {
|
|
1269
|
-
private readonly
|
|
1156
|
+
declare class LazyMultiSelectComponent extends BaseFormControl<string[] | null> implements OnDestroy {
|
|
1157
|
+
private readonly document;
|
|
1158
|
+
private readonly appRef;
|
|
1270
1159
|
private readonly onDocumentClickBound;
|
|
1271
1160
|
readonly pSelectRef: _angular_core.Signal<ElementRef<HTMLDivElement>>;
|
|
1161
|
+
readonly overlayTemplate: _angular_core.Signal<TemplateRef<unknown>>;
|
|
1162
|
+
private overlayViewRef;
|
|
1272
1163
|
readonly placeHolder: _angular_core.InputSignal<string>;
|
|
1273
1164
|
readonly isEditMode: _angular_core.InputSignal<boolean>;
|
|
1274
1165
|
readonly isLoading: _angular_core.InputSignal<boolean>;
|
|
@@ -1283,12 +1174,14 @@ declare class LazyMultiSelectComponent extends BaseFormControl<string[] | null>
|
|
|
1283
1174
|
readonly selectedValueDisplay: _angular_core.Signal<string>;
|
|
1284
1175
|
readonly isSelectAll: _angular_core.Signal<boolean>;
|
|
1285
1176
|
constructor();
|
|
1177
|
+
ngOnDestroy(): void;
|
|
1286
1178
|
onScroll(event: Event): void;
|
|
1287
|
-
onSelectClick(
|
|
1179
|
+
onSelectClick(): void;
|
|
1180
|
+
private openOverlay;
|
|
1181
|
+
private closeOverlay;
|
|
1288
1182
|
onOverlayClick(event: Event): void;
|
|
1289
1183
|
private handleDocumentClick;
|
|
1290
1184
|
isSelected(data: IDropDown): boolean;
|
|
1291
|
-
key(option: IDropDown): string;
|
|
1292
1185
|
selectValue(event: CheckboxChangeEvent, option: IDropDown): void;
|
|
1293
1186
|
changeSelectAll(event: CheckboxChangeEvent): void;
|
|
1294
1187
|
clear(event: Event): void;
|
|
@@ -1308,6 +1201,7 @@ declare class LazySelectComponent extends BaseFormControl<string | null> {
|
|
|
1308
1201
|
private readonly destroyRef;
|
|
1309
1202
|
private readonly onScrollBound;
|
|
1310
1203
|
private scrollTargetEl;
|
|
1204
|
+
private isDestroyed;
|
|
1311
1205
|
readonly scrollContainer: _angular_core.Signal<ElementRef<HTMLDivElement>>;
|
|
1312
1206
|
readonly placeHolder: _angular_core.InputSignal<string>;
|
|
1313
1207
|
readonly optionLabel: _angular_core.InputSignal<string>;
|
|
@@ -2018,5 +1912,5 @@ interface ScrollPaginationConfig {
|
|
|
2018
1912
|
*/
|
|
2019
1913
|
declare function checkScrollPagination(event: Event, config: ScrollPaginationConfig): IPagination | null;
|
|
2020
1914
|
|
|
2021
|
-
export { ACTION_PERMISSIONS, AUTH_STATE_PROVIDER, AngularModule, ApiResourceService, ApiResourceService as ApiService, BRANCH_PERMISSIONS, BaseFormControl, BaseFormPage, BaseListPage, BaseUserSelectComponent, COMPANY_ACTION_PERMISSIONS, COMPANY_API_PROVIDER, COMPANY_PERMISSIONS, ContactTypeEnum, CookieService, EMAIL_CONFIG_PERMISSIONS, EMAIL_TEMPLATE_PERMISSIONS, EditModeElementChangerDirective, FILE_PERMISSIONS, FILE_TYPE_FILTERS, FOLDER_PERMISSIONS, FORM_PERMISSIONS, FileSelectorDialogComponent, FileUploaderComponent, FileUrlService, HasPermissionDirective, IconComponent, IconTypeEnum, IsEmptyImageDirective, LazyMultiSelectComponent, LazySelectComponent, PERMISSIONS, PROFILE_PERMISSION_PROVIDER, PROFILE_UPLOAD_PROVIDER, PermissionValidatorService, PlatformService, PreventDefaultDirective, PrimeModule, ROLE_ACTION_PERMISSIONS, ROLE_PERMISSIONS, STORAGE_CONFIG_PERMISSIONS, USER_ACTION_PERMISSIONS, USER_LIST_PROVIDER, USER_PERMISSIONS, USER_PERMISSION_PROVIDER, USER_PROVIDER, USER_ROLE_PERMISSIONS, UserMultiSelectComponent, UserSelectComponent, allPermissionsGuard, anyPermissionGuard, checkScrollPagination, evaluateLogicNode, evaluatePermission, formatFileSize, getAcceptString, getFileIconClass, hasAllPermissions, hasAnyPermission, hasPermission, isFileTypeAllowed, permissionGuard, provideValueAccessor };
|
|
2022
|
-
export type { ApiResponse, DeleteType, FilesResponseDto, GetFileUrlsFn, IActionNode, IActivatable, IApiService, IAuthStateProvider, IBaseEntity, IBulkMeta, IBulkResponse, ICompanyApiProvider, ICompanyBasicInfo, IDeleteData, IDropDown, IErrorResponse, IFileBasicInfo, IFileData, IFileSelectFilter, IFileUploadOptions, IFilter, IFilterData, IGroupNode, IListResponse, ILoggedUserInfo, ILogicNode, ILoginResponse, ILoginUserData, IMessageResponse, IMetadata, IOrderable, IPagination, IPaginationMeta, IProfileActionInfo, IProfilePermissionProvider, IProfileRoleInfo, IProfileUploadOptions, IProfileUploadProvider, IProfileUploadResult, IRefreshTokenResponse, IRequestMeta, ISingleResponse, ISoftDeletable, ISort, ITimestampable, IUploadedFile, IUserBasicInfo, IUserBranchPayload, IUserBranchPermission, IUserCompanyPayload, IUserListAction, IUserListColumn, IUserListFilter, IUserListItem, IUserListProvider, IUserPermissionProvider, IUserProvider, IUserSelectFilter, IValidationError, LoadFilesFn, LoadUsersFn, PermissionCode, ScrollPaginationConfig, UploadFileFn };
|
|
1915
|
+
export { ACTION_PERMISSIONS, AUTH_STATE_PROVIDER, AngularModule, ApiResourceService, ApiResourceService as ApiService, BRANCH_PERMISSIONS, BaseFormControl, BaseFormPage, BaseListPage, BaseUserSelectComponent, COMPANY_ACTION_PERMISSIONS, COMPANY_API_PROVIDER, COMPANY_PERMISSIONS, ContactTypeEnum, CookieService, EMAIL_CONFIG_PERMISSIONS, EMAIL_TEMPLATE_PERMISSIONS, EVENT_PARTICIPANT_PERMISSIONS, EVENT_PERMISSIONS, EditModeElementChangerDirective, FILE_PERMISSIONS, FILE_TYPE_FILTERS, FOLDER_PERMISSIONS, FORM_PERMISSIONS, FileSelectorDialogComponent, FileUploaderComponent, FileUrlService, HasPermissionDirective, IconComponent, IconTypeEnum, IsEmptyImageDirective, LazyMultiSelectComponent, LazySelectComponent, NOTIFICATION_PERMISSIONS, PERMISSIONS, PROFILE_PERMISSION_PROVIDER, PROFILE_UPLOAD_PROVIDER, PermissionValidatorService, PlatformService, PreventDefaultDirective, PrimeModule, ROLE_ACTION_PERMISSIONS, ROLE_PERMISSIONS, STORAGE_CONFIG_PERMISSIONS, USER_ACTION_PERMISSIONS, USER_LIST_PROVIDER, USER_PERMISSIONS, USER_PERMISSION_PROVIDER, USER_PROVIDER, USER_ROLE_PERMISSIONS, UserMultiSelectComponent, UserSelectComponent, allPermissionsGuard, anyPermissionGuard, checkScrollPagination, evaluateLogicNode, evaluatePermission, formatFileSize, getAcceptString, getFileIconClass, hasAllPermissions, hasAnyPermission, hasPermission, isFileTypeAllowed, permissionGuard, provideValueAccessor };
|
|
1916
|
+
export type { ApiResponse, DeleteType, FilesResponseDto, GetFileUrlsFn, IActionNode, IActivatable, IApiService, IAuthStateProvider, IBaseEntity, IBulkMeta, IBulkResponse, ICompanyApiProvider, ICompanyBasicInfo, IDeleteData, IDropDown, IErrorResponse, IFileBasicInfo, IFileData, IFileSelectFilter, IFileUploadOptions, IFilter, IFilterData, IGroupNode, IListResponse, ILoggedUserInfo, ILogicNode, ILoginResponse, ILoginUserData, IMessageResponse, IMetadata, IOrderable, IPagination, IPaginationMeta, IProfileActionInfo, IProfilePermissionProvider, IProfileRoleInfo, IProfileUploadOptions, IProfileUploadProvider, IProfileUploadResult, IRefreshTokenResponse, IRequestMeta, ISingleResponse, ISoftDeletable, ISort, ITimestampable, IUploadedFile, IUserBasicInfo, IUserBranchPayload, IUserBranchPermission, IUserCompanyPayload, IUserListAction, IUserListColumn, IUserListFilter, IUserListItem, IUserListProvider, IUserPermissionProvider, IUserProvider, IUserSelectFilter, IValidationError, LoadFilesFn, LoadUsersFn, PermissionCode, ScrollPaginationConfig, ServiceName, UploadFileFn };
|