@flusys/ng-shared 8.1.3 → 8.1.5
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/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@flusys/ng-shared",
|
|
3
|
-
"version": "8.1.
|
|
3
|
+
"version": "8.1.5",
|
|
4
4
|
"description": "Shared components and utilities for FLUSYS Angular packages",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"peerDependencies": {
|
|
@@ -8,8 +8,8 @@
|
|
|
8
8
|
"@angular/core": ">=22.0.0",
|
|
9
9
|
"@angular/forms": ">=22.0.0",
|
|
10
10
|
"@angular/router": ">=22.0.0",
|
|
11
|
-
"@flusys/ng-core": ">=8.1.
|
|
12
|
-
"@flusys/ng-ui": ">=8.1.
|
|
11
|
+
"@flusys/ng-core": ">=8.1.5",
|
|
12
|
+
"@flusys/ng-ui": ">=8.1.5",
|
|
13
13
|
"rxjs": "^7.8.0"
|
|
14
14
|
},
|
|
15
15
|
"sideEffects": false,
|
|
@@ -327,6 +327,8 @@ interface ILoggedUserInfo {
|
|
|
327
327
|
interface IDropDown {
|
|
328
328
|
label: string;
|
|
329
329
|
value: string;
|
|
330
|
+
/** Optional secondary line rendered below the label (e.g. email under a user's name) when two options share a label. */
|
|
331
|
+
subLabel?: string;
|
|
330
332
|
}
|
|
331
333
|
/**
|
|
332
334
|
* Delete operation types
|
|
@@ -1195,11 +1197,13 @@ declare class FileSelectorDialogComponent {
|
|
|
1195
1197
|
readonly searchTerm: _angular_core.WritableSignal<string>;
|
|
1196
1198
|
readonly folders: _angular_core.WritableSignal<IFolderBasicInfo[]>;
|
|
1197
1199
|
readonly selectedFolderId: _angular_core.WritableSignal<string | null>;
|
|
1200
|
+
readonly selectedFolderObject: _angular_core.WritableSignal<IFolderBasicInfo | null>;
|
|
1198
1201
|
readonly foldersLoading: _angular_core.WritableSignal<boolean>;
|
|
1199
1202
|
readonly foldersPagination: _angular_core.WritableSignal<IPagination>;
|
|
1200
1203
|
readonly foldersTotal: _angular_core.WritableSignal<number | undefined>;
|
|
1201
1204
|
readonly storageConfigs: _angular_core.WritableSignal<IStorageConfigBasicInfo[]>;
|
|
1202
1205
|
readonly selectedStorageConfigId: _angular_core.WritableSignal<string | null>;
|
|
1206
|
+
readonly selectedStorageConfigObject: _angular_core.WritableSignal<IStorageConfigBasicInfo | null>;
|
|
1203
1207
|
readonly storageConfigsLoading: _angular_core.WritableSignal<boolean>;
|
|
1204
1208
|
readonly storageConfigsPagination: _angular_core.WritableSignal<IPagination>;
|
|
1205
1209
|
readonly storageConfigsTotal: _angular_core.WritableSignal<number | undefined>;
|
|
@@ -1308,11 +1312,13 @@ declare class InlineSvgComponent {
|
|
|
1308
1312
|
declare class LazyMultiSelectComponent extends BaseFormControl<string[] | null> implements OnDestroy {
|
|
1309
1313
|
private readonly document;
|
|
1310
1314
|
private readonly appRef;
|
|
1315
|
+
private readonly overlayStack;
|
|
1311
1316
|
private readonly translateAdapter;
|
|
1312
1317
|
private readonly onDocumentClickBound;
|
|
1313
1318
|
readonly pSelectRef: _angular_core.Signal<ElementRef<HTMLDivElement>>;
|
|
1314
1319
|
readonly overlayTemplate: _angular_core.Signal<TemplateRef<unknown>>;
|
|
1315
1320
|
private overlayViewRef;
|
|
1321
|
+
private detachOverlayPosition;
|
|
1316
1322
|
readonly placeHolder: _angular_core.InputSignal<string>;
|
|
1317
1323
|
readonly showClear: _angular_core.InputSignal<boolean>;
|
|
1318
1324
|
readonly displayPlaceholder: _angular_core.Signal<string>;
|
|
@@ -1321,7 +1327,18 @@ declare class LazyMultiSelectComponent extends BaseFormControl<string[] | null>
|
|
|
1321
1327
|
readonly total: _angular_core.InputSignal<number | undefined>;
|
|
1322
1328
|
readonly pagination: _angular_core.InputSignal<IPagination>;
|
|
1323
1329
|
readonly selectDataList: _angular_core.InputSignal<IDropDown[]>;
|
|
1330
|
+
/**
|
|
1331
|
+
* Full option objects for the currently selected values, supplied by the
|
|
1332
|
+
* caller (or a subclass like UserMultiSelectComponent). Pinned into
|
|
1333
|
+
* `mergedDataList` (deduped by `value`) so chips/labels/checkboxes survive
|
|
1334
|
+
* a later search/page reload that replaces `selectDataList()` without the
|
|
1335
|
+
* selection having changed. This component renders its own overlay list
|
|
1336
|
+
* (it does not build on f-multiselect), so the merge has to happen here.
|
|
1337
|
+
*/
|
|
1338
|
+
readonly selectedObjects: _angular_core.InputSignal<IDropDown[]>;
|
|
1324
1339
|
readonly value: _angular_core.ModelSignal<string[] | null>;
|
|
1340
|
+
private readonly selectedObjectEntries;
|
|
1341
|
+
readonly mergedDataList: _angular_core.Signal<IDropDown[]>;
|
|
1325
1342
|
readonly onSearch: _angular_core.OutputEmitterRef<string>;
|
|
1326
1343
|
readonly onPagination: _angular_core.OutputEmitterRef<IPagination>;
|
|
1327
1344
|
readonly searchTerm: _angular_core.WritableSignal<string>;
|
|
@@ -1343,7 +1360,7 @@ declare class LazyMultiSelectComponent extends BaseFormControl<string[] | null>
|
|
|
1343
1360
|
clear(event: Event): void;
|
|
1344
1361
|
private t;
|
|
1345
1362
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<LazyMultiSelectComponent, never>;
|
|
1346
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<LazyMultiSelectComponent, "lib-lazy-multi-select", never, { "placeHolder": { "alias": "placeHolder"; "required": false; "isSignal": true; }; "showClear": { "alias": "showClear"; "required": false; "isSignal": true; }; "isEditMode": { "alias": "isEditMode"; "required": true; "isSignal": true; }; "isLoading": { "alias": "isLoading"; "required": true; "isSignal": true; }; "total": { "alias": "total"; "required": true; "isSignal": true; }; "pagination": { "alias": "pagination"; "required": true; "isSignal": true; }; "selectDataList": { "alias": "selectDataList"; "required": true; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; "onSearch": "onSearch"; "onPagination": "onPagination"; }, never, never, true, never>;
|
|
1363
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<LazyMultiSelectComponent, "lib-lazy-multi-select", never, { "placeHolder": { "alias": "placeHolder"; "required": false; "isSignal": true; }; "showClear": { "alias": "showClear"; "required": false; "isSignal": true; }; "isEditMode": { "alias": "isEditMode"; "required": true; "isSignal": true; }; "isLoading": { "alias": "isLoading"; "required": true; "isSignal": true; }; "total": { "alias": "total"; "required": true; "isSignal": true; }; "pagination": { "alias": "pagination"; "required": true; "isSignal": true; }; "selectDataList": { "alias": "selectDataList"; "required": true; "isSignal": true; }; "selectedObjects": { "alias": "selectedObjects"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; "onSearch": "onSearch"; "onPagination": "onPagination"; }, never, never, true, never>;
|
|
1347
1364
|
}
|
|
1348
1365
|
|
|
1349
1366
|
/**
|
|
@@ -1371,6 +1388,13 @@ declare class LazySelectComponent extends BaseFormControl<string | null> {
|
|
|
1371
1388
|
readonly total: _angular_core.InputSignal<number | undefined>;
|
|
1372
1389
|
readonly pagination: _angular_core.InputSignal<IPagination>;
|
|
1373
1390
|
readonly selectDataList: _angular_core.InputSignal<IDropDown[]>;
|
|
1391
|
+
/**
|
|
1392
|
+
* Full option object for the current value, supplied by the caller (or a
|
|
1393
|
+
* subclass like UserSelectComponent). Forwarded to f-select's own
|
|
1394
|
+
* `selectedObject` input so the label survives a later search/page reload
|
|
1395
|
+
* that replaces `selectDataList()` without the value having changed.
|
|
1396
|
+
*/
|
|
1397
|
+
readonly selectedObject: _angular_core.InputSignal<unknown>;
|
|
1374
1398
|
readonly value: _angular_core.ModelSignal<string | null>;
|
|
1375
1399
|
readonly onSearch: _angular_core.OutputEmitterRef<string>;
|
|
1376
1400
|
readonly onPagination: _angular_core.OutputEmitterRef<IPagination>;
|
|
@@ -1381,7 +1405,7 @@ declare class LazySelectComponent extends BaseFormControl<string | null> {
|
|
|
1381
1405
|
showPanel(): void;
|
|
1382
1406
|
private t;
|
|
1383
1407
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<LazySelectComponent, never>;
|
|
1384
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<LazySelectComponent, "lib-lazy-select", never, { "placeHolder": { "alias": "placeHolder"; "required": false; "isSignal": true; }; "showClear": { "alias": "showClear"; "required": false; "isSignal": true; }; "optionLabel": { "alias": "optionLabel"; "required": true; "isSignal": true; }; "optionValue": { "alias": "optionValue"; "required": true; "isSignal": true; }; "isEditMode": { "alias": "isEditMode"; "required": true; "isSignal": true; }; "isLoading": { "alias": "isLoading"; "required": true; "isSignal": true; }; "total": { "alias": "total"; "required": true; "isSignal": true; }; "pagination": { "alias": "pagination"; "required": true; "isSignal": true; }; "selectDataList": { "alias": "selectDataList"; "required": true; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; "onSearch": "onSearch"; "onPagination": "onPagination"; }, never, never, true, never>;
|
|
1408
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<LazySelectComponent, "lib-lazy-select", never, { "placeHolder": { "alias": "placeHolder"; "required": false; "isSignal": true; }; "showClear": { "alias": "showClear"; "required": false; "isSignal": true; }; "optionLabel": { "alias": "optionLabel"; "required": true; "isSignal": true; }; "optionValue": { "alias": "optionValue"; "required": true; "isSignal": true; }; "isEditMode": { "alias": "isEditMode"; "required": true; "isSignal": true; }; "isLoading": { "alias": "isLoading"; "required": true; "isSignal": true; }; "total": { "alias": "total"; "required": true; "isSignal": true; }; "pagination": { "alias": "pagination"; "required": true; "isSignal": true; }; "selectDataList": { "alias": "selectDataList"; "required": true; "isSignal": true; }; "selectedObject": { "alias": "selectedObject"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; "onSearch": "onSearch"; "onPagination": "onPagination"; }, never, never, true, never>;
|
|
1385
1409
|
}
|
|
1386
1410
|
|
|
1387
1411
|
interface RouterTabItem {
|
|
@@ -1423,6 +1447,17 @@ declare abstract class BaseUserSelectComponent {
|
|
|
1423
1447
|
readonly pagination: _angular_core.WritableSignal<IPagination>;
|
|
1424
1448
|
readonly searchTerm: _angular_core.WritableSignal<string>;
|
|
1425
1449
|
readonly dropdownUsers: _angular_core.Signal<IDropDown[]>;
|
|
1450
|
+
private readonly _knownUsers;
|
|
1451
|
+
protected toDropDown(user: IUserBasicInfo): IDropDown;
|
|
1452
|
+
/** Resolves a single previously-seen user id, even if it's no longer in `users()`. */
|
|
1453
|
+
protected resolveKnownUser(id: string | null | undefined): IDropDown | null;
|
|
1454
|
+
/** Resolves multiple previously-seen user ids, even if no longer in `users()`. */
|
|
1455
|
+
protected resolveKnownUsers(ids: string[]): IDropDown[];
|
|
1456
|
+
/** Same as resolveKnownUser, but returns the raw IUserBasicInfo (for outputs like userSelected). */
|
|
1457
|
+
protected resolveKnownUserRaw(id: string | null | undefined): IUserBasicInfo | null;
|
|
1458
|
+
/** Same as resolveKnownUsers, but returns the raw IUserBasicInfo[] (for outputs like usersSelected). */
|
|
1459
|
+
protected resolveKnownUsersRaw(ids: string[]): IUserBasicInfo[];
|
|
1460
|
+
private rememberUsers;
|
|
1426
1461
|
readonly displayPlaceholder: _angular_core.Signal<string>;
|
|
1427
1462
|
constructor();
|
|
1428
1463
|
/** Setup effect to track value changes and emit selection events */
|
|
@@ -1471,6 +1506,7 @@ declare class UserMultiSelectComponent extends BaseUserSelectComponent {
|
|
|
1471
1506
|
readonly showClear: _angular_core.InputSignal<boolean>;
|
|
1472
1507
|
readonly value: _angular_core.ModelSignal<string[] | null>;
|
|
1473
1508
|
readonly usersSelected: _angular_core.OutputEmitterRef<IUserBasicInfo[]>;
|
|
1509
|
+
readonly selectedObjects: _angular_core.Signal<_flusys_ng_shared.IDropDown[]>;
|
|
1474
1510
|
protected setupValueEffect(): void;
|
|
1475
1511
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<UserMultiSelectComponent, never>;
|
|
1476
1512
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<UserMultiSelectComponent, "lib-user-multi-select", never, { "showClear": { "alias": "showClear"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; "usersSelected": "usersSelected"; }, never, never, true, never>;
|
|
@@ -1507,6 +1543,7 @@ declare class UserSelectComponent extends BaseUserSelectComponent {
|
|
|
1507
1543
|
readonly showClear: _angular_core.InputSignal<boolean>;
|
|
1508
1544
|
readonly value: _angular_core.ModelSignal<string | null>;
|
|
1509
1545
|
readonly userSelected: _angular_core.OutputEmitterRef<IUserBasicInfo | null>;
|
|
1546
|
+
readonly selectedObject: _angular_core.Signal<_flusys_ng_shared.IDropDown | null>;
|
|
1510
1547
|
protected setupValueEffect(): void;
|
|
1511
1548
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<UserSelectComponent, never>;
|
|
1512
1549
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<UserSelectComponent, "lib-user-select", never, { "showClear": { "alias": "showClear"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; "userSelected": "userSelected"; }, never, never, true, never>;
|