@acorex/platform 20.6.0-next.22 → 20.6.0-next.23
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/acorex-platform-layout-components.mjs +2 -2
- package/fesm2022/acorex-platform-layout-components.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-entity.mjs +1290 -342
- package/fesm2022/acorex-platform-layout-entity.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-widgets.mjs +1 -1
- package/fesm2022/acorex-platform-layout-widgets.mjs.map +1 -1
- package/fesm2022/{acorex-platform-themes-default-entity-master-list-view.component-DBysy2Ky.mjs → acorex-platform-themes-default-entity-master-list-view.component-Cym8pq0v.mjs} +3 -3
- package/fesm2022/{acorex-platform-themes-default-entity-master-list-view.component-DBysy2Ky.mjs.map → acorex-platform-themes-default-entity-master-list-view.component-Cym8pq0v.mjs.map} +1 -1
- package/fesm2022/acorex-platform-themes-default.mjs +2 -2
- package/layout/entity/index.d.ts +73 -7
- package/package.json +5 -5
|
@@ -741,7 +741,7 @@ class AXPDefaultThemeModule {
|
|
|
741
741
|
///
|
|
742
742
|
modify: () => import('./acorex-platform-themes-default-entity-master-modify-view.component-BTA6h7Xd.mjs').then((c) => c.AXPEntityMasterModifyViewComponent),
|
|
743
743
|
//
|
|
744
|
-
list: () => import('./acorex-platform-themes-default-entity-master-list-view.component-
|
|
744
|
+
list: () => import('./acorex-platform-themes-default-entity-master-list-view.component-Cym8pq0v.mjs').then((c) => c.AXPEntityMasterListViewComponent),
|
|
745
745
|
},
|
|
746
746
|
},
|
|
747
747
|
};
|
|
@@ -777,7 +777,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImpo
|
|
|
777
777
|
///
|
|
778
778
|
modify: () => import('./acorex-platform-themes-default-entity-master-modify-view.component-BTA6h7Xd.mjs').then((c) => c.AXPEntityMasterModifyViewComponent),
|
|
779
779
|
//
|
|
780
|
-
list: () => import('./acorex-platform-themes-default-entity-master-list-view.component-
|
|
780
|
+
list: () => import('./acorex-platform-themes-default-entity-master-list-view.component-Cym8pq0v.mjs').then((c) => c.AXPEntityMasterListViewComponent),
|
|
781
781
|
},
|
|
782
782
|
},
|
|
783
783
|
};
|
package/layout/entity/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { AXPExecuteCommandResult, AXPMetaData, AXPGridLayoutOptions, AXPBreadcrumbItem, AXPFilterQuery, AXPFilterDefinition, AXPExecuteCommand, AXPUserReference, AXPQueryRequest, AXPPagedListResult, AXPCategoryEntity as AXPCategoryEntity$1, AXPAppStartUpService, AXPMiddlewareErrorResponse, AXHighlightService, AXPExpression, AXPColumnQuery, AXPSortDefinition, AXPDeviceService, AXPActionMenuItem } from '@acorex/platform/core';
|
|
2
|
-
import { AXPCommand, AXPQuery } from '@acorex/platform/runtime';
|
|
1
|
+
import { AXPExecuteCommandResult, AXPMetaData, AXPGridLayoutOptions, AXPBreadcrumbItem, AXPFilterQuery, AXPFilterDefinition, AXPExecuteCommand, AXPUserReference, AXPQueryRequest, AXPPagedListResult, AXPCategoryEntity as AXPCategoryEntity$1, AXPAppStartUpService, AXPMiddlewareErrorResponse, AXHighlightService, AXPExpression, AXPColumnQuery, AXPSortDefinition, AXPDeviceService, AXPBroadcastEventService, AXPActionMenuItem } from '@acorex/platform/core';
|
|
2
|
+
import { AXPCommand, AXPQuery, AXPCommandService } from '@acorex/platform/runtime';
|
|
3
3
|
import * as _angular_core from '@angular/core';
|
|
4
4
|
import { ElementRef, InjectionToken, Injector, Type, OnInit, ChangeDetectorRef, OnDestroy } from '@angular/core';
|
|
5
5
|
import { AXPopoverComponent } from '@acorex/components/popover';
|
|
@@ -14,15 +14,15 @@ import * as rxjs from 'rxjs';
|
|
|
14
14
|
import { Subject } from 'rxjs';
|
|
15
15
|
import * as i2 from '@acorex/platform/workflow';
|
|
16
16
|
import { AXPWorkflowService, AXPWorkflowAction, AXPWorkflowContext, AXPWorkflow } from '@acorex/platform/workflow';
|
|
17
|
-
import { AXTreeViewNode,
|
|
17
|
+
import { AXTreeViewNode, AXTreeViewComponent, AXTreeViewNodeToggleEvent, AXTreeViewNodeSelectEvent, AXTreeViewSelectionChangeEvent } from '@acorex/components/tree-view';
|
|
18
18
|
import { AXTranslationService } from '@acorex/core/translation';
|
|
19
19
|
import { AXPopupSizeType, AXPopupService } from '@acorex/components/popup';
|
|
20
20
|
import { IActionBuilder, IFormFieldBuilder, AXPDialogRef } from '@acorex/platform/layout/builder';
|
|
21
21
|
import { AXBasePageComponent } from '@acorex/components/page';
|
|
22
22
|
import { AXFormatService } from '@acorex/core/format';
|
|
23
|
+
import { AXTagBoxComponent } from '@acorex/components/tag-box';
|
|
23
24
|
import { AXPDataListWidgetComponentOptions } from '@acorex/platform/layout/widgets';
|
|
24
25
|
import { AXSelectBoxComponent } from '@acorex/components/select-box';
|
|
25
|
-
import { AXTagBoxComponent } from '@acorex/components/tag-box';
|
|
26
26
|
import { AXTextBoxComponent } from '@acorex/components/text-box';
|
|
27
27
|
import { AXPWidgetPropertiesChangedEvent } from '@acorex/platform/layout/components';
|
|
28
28
|
|
|
@@ -1251,7 +1251,6 @@ declare class AXPEntityCategoryTreeSelectorComponent extends AXBasePageComponent
|
|
|
1251
1251
|
textField: _angular_core.WritableSignal<string>;
|
|
1252
1252
|
valueField: _angular_core.WritableSignal<string>;
|
|
1253
1253
|
allowMultiple: _angular_core.WritableSignal<boolean>;
|
|
1254
|
-
selectionBehavior: _angular_core.WritableSignal<AXTreeViewSelectionBehavior>;
|
|
1255
1254
|
selectedValues: _angular_core.WritableSignal<string[]>;
|
|
1256
1255
|
searchPlaceholder: _angular_core.WritableSignal<string>;
|
|
1257
1256
|
excludedNodeId: _angular_core.WritableSignal<string | undefined>;
|
|
@@ -1266,6 +1265,7 @@ declare class AXPEntityCategoryTreeSelectorComponent extends AXBasePageComponent
|
|
|
1266
1265
|
protected noRecordsTitle: _angular_core.WritableSignal<string>;
|
|
1267
1266
|
private currentSearchTerm;
|
|
1268
1267
|
private isRefreshing;
|
|
1268
|
+
private isUpdatingSelection;
|
|
1269
1269
|
/**
|
|
1270
1270
|
* Computed property to check if we should show the "no search results" empty state.
|
|
1271
1271
|
* Returns true when search is active, not searching, and no results found.
|
|
@@ -1278,6 +1278,7 @@ declare class AXPEntityCategoryTreeSelectorComponent extends AXBasePageComponent
|
|
|
1278
1278
|
private relevantNodeIds;
|
|
1279
1279
|
private expandedNodesBeforeSearch;
|
|
1280
1280
|
private nodesExpandedDuringSearch;
|
|
1281
|
+
private isInitializing;
|
|
1281
1282
|
ngOnInit(): void;
|
|
1282
1283
|
private initializeTree;
|
|
1283
1284
|
/**
|
|
@@ -1333,8 +1334,56 @@ declare class AXPEntityCategoryTreeSelectorComponent extends AXBasePageComponent
|
|
|
1333
1334
|
protected isNodeSelected(nodeId: string | number | undefined): boolean;
|
|
1334
1335
|
/**
|
|
1335
1336
|
* Handles checkbox change event to toggle node selection
|
|
1337
|
+
* In multiple mode: recursively selects/deselects children
|
|
1338
|
+
* Parent states are handled automatically by tree component's intermediate-nested behavior
|
|
1339
|
+
*/
|
|
1340
|
+
protected handleCheckboxChange(nodeId: string | number | undefined, checked: boolean): Promise<void>;
|
|
1341
|
+
/**
|
|
1342
|
+
* Selects a node and recursively selects all its children
|
|
1343
|
+
*/
|
|
1344
|
+
private selectNodeAndChildren;
|
|
1345
|
+
/**
|
|
1346
|
+
* Collects all descendant node IDs recursively
|
|
1347
|
+
*/
|
|
1348
|
+
private collectAllDescendants;
|
|
1349
|
+
/**
|
|
1350
|
+
* Deselects a node and recursively deselects all its children
|
|
1336
1351
|
*/
|
|
1352
|
+
private deselectNodeAndChildren;
|
|
1353
|
+
/**
|
|
1354
|
+
* Recursively deselects all children of a parent node
|
|
1355
|
+
*/
|
|
1356
|
+
private loadAndDeselectChildrenRecursively;
|
|
1357
|
+
/**
|
|
1358
|
+
* Updates parent states based on children selection (select/intermediate)
|
|
1359
|
+
* Called after a node is selected/deselected to update parent checkbox states
|
|
1360
|
+
*/
|
|
1361
|
+
private updateParentStates;
|
|
1362
|
+
/**
|
|
1363
|
+
* Recursively loads and selects all children of a parent node using the datasource
|
|
1364
|
+
* This method directly calls datasource without expanding/collapsing nodes to avoid UI glitches
|
|
1365
|
+
*/
|
|
1366
|
+
private loadAndSelectChildrenRecursively;
|
|
1337
1367
|
private updateSelectedNodes;
|
|
1368
|
+
/**
|
|
1369
|
+
* Updates all parent states based on their children's selection
|
|
1370
|
+
* Used during initialization to ensure proper parent states (select/intermediate)
|
|
1371
|
+
*/
|
|
1372
|
+
private updateAllParentStates;
|
|
1373
|
+
/**
|
|
1374
|
+
* Expands parents of selected nodes so they're visible when popup opens
|
|
1375
|
+
*/
|
|
1376
|
+
private expandParentsOfSelectedNodes;
|
|
1377
|
+
/**
|
|
1378
|
+
* Selects parents whose all children are selected
|
|
1379
|
+
* This ensures that when all children of a parent are selected, the parent also appears selected
|
|
1380
|
+
*/
|
|
1381
|
+
private selectParentsWithAllChildrenSelected;
|
|
1382
|
+
/**
|
|
1383
|
+
* Syncs selection state with the tree component
|
|
1384
|
+
* Handles cases where nodes might not be in the tree structure yet
|
|
1385
|
+
*/
|
|
1386
|
+
private syncSelectionWithTree;
|
|
1338
1387
|
/**
|
|
1339
1388
|
* Loads node data for IDs that are selected but not yet in the cache.
|
|
1340
1389
|
* This is critical for pre-selected values in collapsed branches.
|
|
@@ -1383,6 +1432,14 @@ declare class AXPEntityCategoryTreeSelectorComponent extends AXBasePageComponent
|
|
|
1383
1432
|
* Get the display title for a node.
|
|
1384
1433
|
*/
|
|
1385
1434
|
private getNodeTitle;
|
|
1435
|
+
/**
|
|
1436
|
+
* Checks if a node is a leaf node (has no children)
|
|
1437
|
+
*/
|
|
1438
|
+
private isLeafNode;
|
|
1439
|
+
/**
|
|
1440
|
+
* Checks if a node has children by querying the data source
|
|
1441
|
+
*/
|
|
1442
|
+
private checkIfNodeHasChildren;
|
|
1386
1443
|
private getSelectedItems;
|
|
1387
1444
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPEntityCategoryTreeSelectorComponent, never>;
|
|
1388
1445
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPEntityCategoryTreeSelectorComponent, "axp-entity-category-tree-selector", never, {}, {}, never, never, true, never>;
|
|
@@ -1467,12 +1524,17 @@ declare class AXPEntityCategoryWidgetEditComponent extends AXPValueWidgetCompone
|
|
|
1467
1524
|
protected selectedItems: _angular_core.WritableSignal<any[]>;
|
|
1468
1525
|
protected isLoading: _angular_core.WritableSignal<boolean>;
|
|
1469
1526
|
protected isOpen: _angular_core.WritableSignal<boolean>;
|
|
1527
|
+
protected tagBox: _angular_core.Signal<AXTagBoxComponent | undefined>;
|
|
1528
|
+
protected searchTerm: _angular_core.WritableSignal<string | null>;
|
|
1470
1529
|
private entityDef;
|
|
1471
1530
|
protected handleAddClick(e: AXClickEvent): void;
|
|
1472
|
-
protected
|
|
1531
|
+
protected handleValueChange(e: AXValueChangedEvent): void;
|
|
1532
|
+
protected handleOnBlur(e: AXFocusEvent): void;
|
|
1533
|
+
protected handleKeyUp(e: AXHtmlEvent): Promise<void>;
|
|
1473
1534
|
protected handleClearClick(): void;
|
|
1535
|
+
protected handleRemoveItem(event: Event, index: number): Promise<void>;
|
|
1536
|
+
clearInput(): void;
|
|
1474
1537
|
private showTreeSelector;
|
|
1475
|
-
protected removeItem(item: any): Promise<void>;
|
|
1476
1538
|
clear(): void;
|
|
1477
1539
|
private findByValue;
|
|
1478
1540
|
private setItems;
|
|
@@ -1697,6 +1759,8 @@ declare class AXPEntityListWidgetViewComponent extends AXPValueWidgetComponent {
|
|
|
1697
1759
|
protected entityListTableService: AXPEntityListTableService;
|
|
1698
1760
|
protected entityListToolbarService: AXPEntityListToolbarService;
|
|
1699
1761
|
protected deviceService: AXPDeviceService;
|
|
1762
|
+
protected commandService: AXPCommandService;
|
|
1763
|
+
protected eventService: AXPBroadcastEventService;
|
|
1700
1764
|
protected isMounted: _angular_core.WritableSignal<boolean>;
|
|
1701
1765
|
readonly entity: _angular_core.WritableSignal<AXPEntity | null>;
|
|
1702
1766
|
protected listNode: _angular_core.WritableSignal<AXPWidgetNode | null>;
|
|
@@ -1721,6 +1785,7 @@ declare class AXPEntityListWidgetViewComponent extends AXPValueWidgetComponent {
|
|
|
1721
1785
|
protected handleActionClick(item: AXPActionMenuItem): void;
|
|
1722
1786
|
protected handleSecondaryActionClick(item: AXPActionMenuItem): void;
|
|
1723
1787
|
protected execute(commandName: string, data: any): Promise<void>;
|
|
1788
|
+
protected queries: undefined;
|
|
1724
1789
|
/**
|
|
1725
1790
|
* Validates that all required dependencies are available
|
|
1726
1791
|
*/
|
|
@@ -1928,6 +1993,7 @@ declare class AXPLookupWidgetEditComponent extends AXPValueWidgetComponent<any>
|
|
|
1928
1993
|
protected disabled: _angular_core.Signal<string>;
|
|
1929
1994
|
protected columns: _angular_core.Signal<string[]>;
|
|
1930
1995
|
protected textField: _angular_core.Signal<string>;
|
|
1996
|
+
protected hasClearButton: _angular_core.Signal<boolean>;
|
|
1931
1997
|
protected customFilter: _angular_core.Signal<AXDataSourceFilterOption>;
|
|
1932
1998
|
protected multiple: _angular_core.Signal<boolean>;
|
|
1933
1999
|
protected look: _angular_core.Signal<AXPLookupWidgetLookType>;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@acorex/platform",
|
|
3
|
-
"version": "20.6.0-next.
|
|
3
|
+
"version": "20.6.0-next.23",
|
|
4
4
|
"peerDependencies": {
|
|
5
5
|
"@acorex/cdk": "^19.0.0 || ^20.0.0 || ^21.0.0-next.0",
|
|
6
6
|
"@acorex/core": "^19.0.0 || ^20.0.0 || ^21.0.0-next.0",
|
|
@@ -31,14 +31,14 @@
|
|
|
31
31
|
"types": "./auth/index.d.ts",
|
|
32
32
|
"default": "./fesm2022/acorex-platform-auth.mjs"
|
|
33
33
|
},
|
|
34
|
-
"./core": {
|
|
35
|
-
"types": "./core/index.d.ts",
|
|
36
|
-
"default": "./fesm2022/acorex-platform-core.mjs"
|
|
37
|
-
},
|
|
38
34
|
"./common": {
|
|
39
35
|
"types": "./common/index.d.ts",
|
|
40
36
|
"default": "./fesm2022/acorex-platform-common.mjs"
|
|
41
37
|
},
|
|
38
|
+
"./core": {
|
|
39
|
+
"types": "./core/index.d.ts",
|
|
40
|
+
"default": "./fesm2022/acorex-platform-core.mjs"
|
|
41
|
+
},
|
|
42
42
|
"./domain": {
|
|
43
43
|
"types": "./domain/index.d.ts",
|
|
44
44
|
"default": "./fesm2022/acorex-platform-domain.mjs"
|