@arsedizioni/ars-utils 21.2.310 → 21.2.313
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/fesm2022/arsedizioni-ars-utils-help.mjs +19 -36
- package/fesm2022/arsedizioni-ars-utils-help.mjs.map +1 -1
- package/fesm2022/arsedizioni-ars-utils-support.ui.mjs +4 -10
- package/fesm2022/arsedizioni-ars-utils-support.ui.mjs.map +1 -1
- package/fesm2022/arsedizioni-ars-utils-ui.application.mjs +173 -88
- package/fesm2022/arsedizioni-ars-utils-ui.application.mjs.map +1 -1
- package/package.json +1 -1
- package/types/arsedizioni-ars-utils-clipper.ui.d.ts +1 -1
- package/types/arsedizioni-ars-utils-help.d.ts +4 -7
- package/types/arsedizioni-ars-utils-support.ui.d.ts +2 -4
- package/types/arsedizioni-ars-utils-ui.application.d.ts +51 -24
package/package.json
CHANGED
|
@@ -1025,7 +1025,7 @@ declare class ClipperDocumentMenuComponent {
|
|
|
1025
1025
|
/** Internal counter incremented on each external selection-model change to drive signal re-evaluation. */
|
|
1026
1026
|
private readonly selectionChangeTick;
|
|
1027
1027
|
readonly useSelections: _angular_core.InputSignal<boolean>;
|
|
1028
|
-
readonly selectionSource: _angular_core.InputSignal<"
|
|
1028
|
+
readonly selectionSource: _angular_core.InputSignal<"selection" | "bag" | "none">;
|
|
1029
1029
|
/**
|
|
1030
1030
|
* Computed signal that returns the current effective document selection.
|
|
1031
1031
|
* Re-evaluates when any input signal or the underlying selection model changes.
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import {
|
|
2
|
+
import { OnDestroy } from '@angular/core';
|
|
3
3
|
import { Folder, ApiResult } from '@arsedizioni/ars-utils/core';
|
|
4
4
|
import { BreakpointObserver } from '@angular/cdk/layout';
|
|
5
5
|
import { MatSidenav } from '@angular/material/sidenav';
|
|
@@ -61,10 +61,9 @@ declare class IndexTreeDataSource implements OnDestroy {
|
|
|
61
61
|
static ɵfac: i0.ɵɵFactoryDeclaration<IndexTreeDataSource, never>;
|
|
62
62
|
static ɵprov: i0.ɵɵInjectableDeclaration<IndexTreeDataSource>;
|
|
63
63
|
}
|
|
64
|
-
declare class HelpViewerComponent
|
|
64
|
+
declare class HelpViewerComponent {
|
|
65
65
|
readonly indexPane: i0.Signal<MatSidenav>;
|
|
66
|
-
private readonly
|
|
67
|
-
private readonly changeDetector;
|
|
66
|
+
private readonly destroyRef;
|
|
68
67
|
private readonly dialogRef;
|
|
69
68
|
protected readonly dialogData: HelpViewerDialogData;
|
|
70
69
|
private readonly dialogService;
|
|
@@ -85,9 +84,7 @@ declare class HelpViewerComponent implements OnInit, OnDestroy, AfterViewInit {
|
|
|
85
84
|
protected readonly flatNodes: i0.WritableSignal<IndexNode[]>;
|
|
86
85
|
private folders?;
|
|
87
86
|
protected hasChild: (_: number, _node: IndexNode) => boolean;
|
|
88
|
-
|
|
89
|
-
ngOnDestroy(): void;
|
|
90
|
-
ngAfterViewInit(): void;
|
|
87
|
+
constructor();
|
|
91
88
|
/**
|
|
92
89
|
* Handle filter pane visibility
|
|
93
90
|
*/
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
import * as _angular_core from '@angular/core';
|
|
2
|
-
import { OnInit, AfterViewInit } from '@angular/core';
|
|
3
2
|
import { MatPaginator, PageEvent } from '@angular/material/paginator';
|
|
4
3
|
import { ScreenService, SelectableModel } from '@arsedizioni/ars-utils/core';
|
|
5
4
|
import { SupportNotificationInfo, SupportNotificationsSearchParams } from '@arsedizioni/ars-utils/support.common';
|
|
6
5
|
|
|
7
|
-
declare class SupportNotificationsBrowserComponent
|
|
6
|
+
declare class SupportNotificationsBrowserComponent {
|
|
8
7
|
readonly paginator: _angular_core.Signal<MatPaginator>;
|
|
9
8
|
protected readonly screenService: ScreenService;
|
|
10
9
|
private readonly supportService;
|
|
@@ -15,8 +14,7 @@ declare class SupportNotificationsBrowserComponent implements OnInit, AfterViewI
|
|
|
15
14
|
protected searchParams: SupportNotificationsSearchParams;
|
|
16
15
|
protected total: _angular_core.WritableSignal<number>;
|
|
17
16
|
protected items: _angular_core.WritableSignal<SupportNotificationInfo[]>;
|
|
18
|
-
|
|
19
|
-
ngAfterViewInit(): void;
|
|
17
|
+
constructor();
|
|
20
18
|
/**
|
|
21
19
|
* Scrolls the notifications list back to the top.
|
|
22
20
|
*/
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as _angular_core from '@angular/core';
|
|
2
|
-
import {
|
|
2
|
+
import { OnDestroy, DoCheck, ElementRef } from '@angular/core';
|
|
3
3
|
import { Searchable, SearchBag, NameValueItem, DateInterval, SearchFilterMetadata, FileInfo, INode } from '@arsedizioni/ars-utils/core';
|
|
4
4
|
import { MatFormFieldAppearance, MatFormFieldControl } from '@angular/material/form-field';
|
|
5
5
|
import { MatDialogRef } from '@angular/material/dialog';
|
|
@@ -373,7 +373,7 @@ interface SelectTreeDialogAppend {
|
|
|
373
373
|
parent?: ItemNode;
|
|
374
374
|
owner?: any;
|
|
375
375
|
}
|
|
376
|
-
declare class SelectTreeDialogComponent
|
|
376
|
+
declare class SelectTreeDialogComponent {
|
|
377
377
|
/** Emitted when the user confirms a selection. */
|
|
378
378
|
readonly done: _angular_core.OutputEmitterRef<SelectTreeDialogResult>;
|
|
379
379
|
/** Emitted when the user requests to append a new node. */
|
|
@@ -383,6 +383,7 @@ declare class SelectTreeDialogComponent implements OnInit {
|
|
|
383
383
|
/** Dialog configuration, injected and exposed as a signal. */
|
|
384
384
|
protected readonly dialogData: _angular_core.WritableSignal<SelectTreeDialogData>;
|
|
385
385
|
private readonly tree;
|
|
386
|
+
private readonly _elRef;
|
|
386
387
|
/** Reference to the Material tree component. */
|
|
387
388
|
protected readonly matTree: _angular_core.Signal<MatTree<ItemNode, ItemNode>>;
|
|
388
389
|
/** Provides children of a tree node to the tree component. */
|
|
@@ -391,15 +392,19 @@ declare class SelectTreeDialogComponent implements OnInit {
|
|
|
391
392
|
protected readonly treeNodes: _angular_core.WritableSignal<ItemNode[]>;
|
|
392
393
|
/** Currently selected tree node. */
|
|
393
394
|
protected readonly currentNode: _angular_core.WritableSignal<ItemNode>;
|
|
394
|
-
/** Current filter text
|
|
395
|
-
protected filterText: string
|
|
395
|
+
/** Current filter text. */
|
|
396
|
+
protected readonly filterText: _angular_core.WritableSignal<string>;
|
|
396
397
|
/** Nodes matching the current filter text. */
|
|
397
398
|
protected readonly filteredItems: _angular_core.WritableSignal<ItemNode[]>;
|
|
398
|
-
/** Index of the currently highlighted filtered node. */
|
|
399
|
+
/** Index of the currently highlighted filtered node (-1 = none). */
|
|
399
400
|
protected readonly filterIndex: _angular_core.WritableSignal<number>;
|
|
401
|
+
/** The currently highlighted filtered node, or null. */
|
|
402
|
+
protected readonly filteredNode: _angular_core.Signal<ItemNode>;
|
|
400
403
|
protected readonly canAppend: _angular_core.WritableSignal<boolean>;
|
|
404
|
+
/** Flat node map rebuilt whenever treeNodes changes. */
|
|
405
|
+
private readonly _nodeMap;
|
|
401
406
|
protected hasChild: (_: number, node: ItemNode) => boolean;
|
|
402
|
-
|
|
407
|
+
constructor();
|
|
403
408
|
/**
|
|
404
409
|
* Confirm the current selection and close the dialog.
|
|
405
410
|
*/
|
|
@@ -415,26 +420,30 @@ declare class SelectTreeDialogComponent implements OnInit {
|
|
|
415
420
|
*/
|
|
416
421
|
protected clearFilter(): void;
|
|
417
422
|
/**
|
|
418
|
-
* Filter the tree nodes by name.
|
|
419
|
-
* @param text - Optional text to set as the filter before applying.
|
|
423
|
+
* Filter the tree nodes by name (minimum 3 characters).
|
|
420
424
|
*/
|
|
421
|
-
protected doFilter(
|
|
425
|
+
protected doFilter(): void;
|
|
422
426
|
/**
|
|
423
427
|
* Advance to the next matching filtered node and scroll it into view.
|
|
424
428
|
*/
|
|
425
429
|
protected nextFiltered(): void;
|
|
430
|
+
/**
|
|
431
|
+
* Returns true when the node is the currently highlighted filter match.
|
|
432
|
+
* @param node - tree node to check.
|
|
433
|
+
*/
|
|
434
|
+
protected isFilteredNode(node: ItemNode): boolean;
|
|
435
|
+
/**
|
|
436
|
+
* Expands ancestors of the target node and scrolls it into view.
|
|
437
|
+
* @param index - index within `items` to scroll to.
|
|
438
|
+
* @param items - current filtered items array.
|
|
439
|
+
*/
|
|
440
|
+
private _scrollToFiltered;
|
|
426
441
|
/**
|
|
427
442
|
* Expand a node and all of its parent nodes.
|
|
428
443
|
* @param node - The node to expand.
|
|
429
444
|
* @returns Always false.
|
|
430
445
|
*/
|
|
431
446
|
expand(node: ItemNode): boolean;
|
|
432
|
-
/**
|
|
433
|
-
* Recursively get all nodes in depth-first order.
|
|
434
|
-
* @param nodes - Root nodes to traverse.
|
|
435
|
-
* @param result - Accumulator array.
|
|
436
|
-
*/
|
|
437
|
-
private getAllNodes;
|
|
438
447
|
/**
|
|
439
448
|
* Recursively find a node by id.
|
|
440
449
|
* @param nodes - Nodes to search.
|
|
@@ -1138,9 +1147,8 @@ declare class FileInputComponent implements OnDestroy, DoCheck, MatFormFieldCont
|
|
|
1138
1147
|
set disabled(value: boolean);
|
|
1139
1148
|
get placeholder(): string;
|
|
1140
1149
|
set placeholder(value: string);
|
|
1141
|
-
/** The currently displayed file name. Can be bound from outside or updated on file selection. */
|
|
1142
|
-
readonly fileName: _angular_core.
|
|
1143
|
-
readonly fileNameInput: _angular_core.OutputEmitterRef<string>;
|
|
1150
|
+
/** The currently displayed file name. Can be bound two-way from outside or updated on file selection. */
|
|
1151
|
+
readonly fileName: _angular_core.ModelSignal<string>;
|
|
1144
1152
|
readonly maxSizeMb: _angular_core.InputSignal<number>;
|
|
1145
1153
|
readonly minSizeMb: _angular_core.InputSignal<number>;
|
|
1146
1154
|
readonly isNew: _angular_core.InputSignal<boolean>;
|
|
@@ -1220,7 +1228,7 @@ declare class FileInputComponent implements OnDestroy, DoCheck, MatFormFieldCont
|
|
|
1220
1228
|
*/
|
|
1221
1229
|
protected previewFile(): void;
|
|
1222
1230
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<FileInputComponent, [{ optional: true; self: true; }]>;
|
|
1223
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<FileInputComponent, "file-input", never, { "required": { "alias": "required"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "fileName": { "alias": "fileName"; "required": false; "isSignal": true; }; "maxSizeMb": { "alias": "maxSizeMb"; "required": false; "isSignal": true; }; "minSizeMb": { "alias": "minSizeMb"; "required": false; "isSignal": true; }; "isNew": { "alias": "isNew"; "required": false; "isSignal": true; }; "canPreview": { "alias": "canPreview"; "required": false; "isSignal": true; }; "appearance": { "alias": "appearance"; "required": false; "isSignal": true; }; "accept": { "alias": "accept"; "required": false; "isSignal": true; }; }, { "
|
|
1231
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<FileInputComponent, "file-input", never, { "required": { "alias": "required"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "fileName": { "alias": "fileName"; "required": false; "isSignal": true; }; "maxSizeMb": { "alias": "maxSizeMb"; "required": false; "isSignal": true; }; "minSizeMb": { "alias": "minSizeMb"; "required": false; "isSignal": true; }; "isNew": { "alias": "isNew"; "required": false; "isSignal": true; }; "canPreview": { "alias": "canPreview"; "required": false; "isSignal": true; }; "appearance": { "alias": "appearance"; "required": false; "isSignal": true; }; "accept": { "alias": "accept"; "required": false; "isSignal": true; }; }, { "fileName": "fileNameChange"; "changed": "changed"; "download": "download"; "preview": "preview"; }, never, never, true, never>;
|
|
1224
1232
|
}
|
|
1225
1233
|
|
|
1226
1234
|
interface FilePreviewDialogData {
|
|
@@ -1343,12 +1351,12 @@ declare class FilterBarComponent {
|
|
|
1343
1351
|
declare class TreePickerComponent {
|
|
1344
1352
|
/** Nested tree data to display. */
|
|
1345
1353
|
readonly tree: _angular_core.InputSignal<INode[]>;
|
|
1346
|
-
/** Currently selected node ids. */
|
|
1347
|
-
readonly selection: _angular_core.
|
|
1348
|
-
/** Emits the updated selection array whenever it changes. */
|
|
1349
|
-
readonly selectionInput: _angular_core.OutputEmitterRef<string[]>;
|
|
1354
|
+
/** Currently selected node ids. Supports two-way binding via [(selection)]. */
|
|
1355
|
+
readonly selection: _angular_core.ModelSignal<string[]>;
|
|
1350
1356
|
/** When true, checkboxes and chip remove buttons are disabled (mirrors Material convention). */
|
|
1351
1357
|
readonly disabled: _angular_core.InputSignal<boolean>;
|
|
1358
|
+
/** Description to display when no selection is made. */
|
|
1359
|
+
readonly descriptionEmpty: _angular_core.InputSignal<string>;
|
|
1352
1360
|
/** Maximum number of tree levels to display (default: 3). */
|
|
1353
1361
|
readonly maxDepth: _angular_core.InputSignal<number>;
|
|
1354
1362
|
/**
|
|
@@ -1366,6 +1374,7 @@ declare class TreePickerComponent {
|
|
|
1366
1374
|
/** Emits void whenever the user changes the selection (toggle, remove, clear). */
|
|
1367
1375
|
readonly changed: _angular_core.OutputEmitterRef<void>;
|
|
1368
1376
|
private readonly _treeRef;
|
|
1377
|
+
private readonly _elRef;
|
|
1369
1378
|
/** All three maps rebuilt lazily as a single computed whenever taxonomy changes. */
|
|
1370
1379
|
private readonly _maps;
|
|
1371
1380
|
/** O(1) set of selected ids, rebuilt only when selection changes. */
|
|
@@ -1376,6 +1385,14 @@ declare class TreePickerComponent {
|
|
|
1376
1385
|
protected readonly selectedVisibleCount: _angular_core.Signal<number>;
|
|
1377
1386
|
readonly treeChildrenAccessor: (node: INode) => INode[];
|
|
1378
1387
|
readonly hasChild: (_: number, node: INode) => boolean;
|
|
1388
|
+
/** Current filter text. */
|
|
1389
|
+
protected readonly filterText: _angular_core.WritableSignal<string>;
|
|
1390
|
+
/** Nodes matching the current filter text, in nodeMap iteration order. */
|
|
1391
|
+
protected readonly filteredItems: _angular_core.WritableSignal<INode[]>;
|
|
1392
|
+
/** Index of the currently highlighted filtered node (-1 = none). */
|
|
1393
|
+
protected readonly filterIndex: _angular_core.WritableSignal<number>;
|
|
1394
|
+
/** The currently highlighted filtered node, or null. */
|
|
1395
|
+
protected readonly filteredNode: _angular_core.Signal<INode>;
|
|
1379
1396
|
constructor();
|
|
1380
1397
|
/** Expands all visible nodes in the tree. */
|
|
1381
1398
|
protected expandAll(): void;
|
|
@@ -1383,6 +1400,16 @@ declare class TreePickerComponent {
|
|
|
1383
1400
|
protected collapseAll(): void;
|
|
1384
1401
|
/** Clears the entire selection. */
|
|
1385
1402
|
protected clearAll(): void;
|
|
1403
|
+
/** Searches nodes by text and moves to the first match. */
|
|
1404
|
+
protected doFilter(): void;
|
|
1405
|
+
/** Clears the filter and restores the original tree state. */
|
|
1406
|
+
protected clearFilter(): void;
|
|
1407
|
+
/** Moves to the next matching node, cycling back to the first. */
|
|
1408
|
+
protected nextFiltered(): void;
|
|
1409
|
+
/** Returns true when the node is the currently highlighted filter match. */
|
|
1410
|
+
protected isFilteredNode(node: INode): boolean;
|
|
1411
|
+
/** Expands ancestors of the target node and scrolls it into view. */
|
|
1412
|
+
private _scrollToFiltered;
|
|
1386
1413
|
/**
|
|
1387
1414
|
* Returns true when the node is in the active selection.
|
|
1388
1415
|
* @param node - tree node to check
|
|
@@ -1434,7 +1461,7 @@ declare class TreePickerComponent {
|
|
|
1434
1461
|
*/
|
|
1435
1462
|
private _syncParentsInSet;
|
|
1436
1463
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<TreePickerComponent, never>;
|
|
1437
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<TreePickerComponent, "tree-picker", never, { "tree": { "alias": "tree"; "required": false; "isSignal": true; }; "selection": { "alias": "selection"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "maxDepth": { "alias": "maxDepth"; "required": false; "isSignal": true; }; "minDepth": { "alias": "minDepth"; "required": false; "isSignal": true; }; }, { "
|
|
1464
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<TreePickerComponent, "tree-picker", never, { "tree": { "alias": "tree"; "required": false; "isSignal": true; }; "selection": { "alias": "selection"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "descriptionEmpty": { "alias": "descriptionEmpty"; "required": false; "isSignal": true; }; "maxDepth": { "alias": "maxDepth"; "required": false; "isSignal": true; }; "minDepth": { "alias": "minDepth"; "required": false; "isSignal": true; }; }, { "selection": "selectionChange"; "selectionCount": "selectionCount"; "changed": "changed"; }, never, never, true, never>;
|
|
1438
1465
|
}
|
|
1439
1466
|
|
|
1440
1467
|
export { ApplicationDialogService, ArsUIApplicationModule, ButtonSelectorComponent, ButtonToggleComponent, CalendarEmptyHeader, ChipsSelectorComponent, CurrentFilter, CurrentFilterChanged, CurrentFilterItem, FileInputComponent, FilePreviewComponent, FilterBarComponent, Filters, ItemNode, PromptDateDialogComponent, PromptDialogComponent, PromptDialogType, PromptOtpDialogComponent, PromptTimeDialogComponent, ResizeTableColumnDirective, SelectDialogComponent, SelectFileDialogComponent, SelectPictureDialogComponent, SelectTreeDialogComponent, SelectableItem, SelectableNode, SendToDialogComponent, TreeDataSource, TreePickerComponent };
|