@praxisui/crud 10.0.0-rc.27 → 10.0.0-rc.29
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.
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"schemaVersion": "1.0.0",
|
|
3
|
-
"generatedAt": "2026-10-
|
|
3
|
+
"generatedAt": "2026-10-16T14:27:38.517Z",
|
|
4
4
|
"packageName": "@praxisui/crud",
|
|
5
|
-
"packageVersion": "10.0.0-rc.
|
|
5
|
+
"packageVersion": "10.0.0-rc.29",
|
|
6
6
|
"sourceRegistry": "praxis-component-registry-ingestion",
|
|
7
7
|
"sourceRegistryVersion": "1.0.0",
|
|
8
8
|
"componentCount": 2,
|
|
@@ -10801,7 +10801,7 @@ class PraxisCrudComponent {
|
|
|
10801
10801
|
if (this.tryRefreshMaterializedLocalData()) {
|
|
10802
10802
|
return;
|
|
10803
10803
|
}
|
|
10804
|
-
this.table
|
|
10804
|
+
this.table?.refetch?.();
|
|
10805
10805
|
}
|
|
10806
10806
|
resolveSurfaceRuntime() {
|
|
10807
10807
|
const candidate = this.context?.['surfaceRuntime'];
|
|
@@ -11292,7 +11292,17 @@ class PraxisCrudComponent {
|
|
|
11292
11292
|
return true;
|
|
11293
11293
|
}
|
|
11294
11294
|
try {
|
|
11295
|
-
|
|
11295
|
+
const openedRef = await openPromise;
|
|
11296
|
+
if (openedRef &&
|
|
11297
|
+
typeof openedRef === 'object' &&
|
|
11298
|
+
(typeof openedRef.afterClosed === 'function' ||
|
|
11299
|
+
typeof openedRef.result$?.subscribe === 'function' ||
|
|
11300
|
+
typeof openedRef.closed$?.subscribe === 'function')) {
|
|
11301
|
+
this.bindDiscoveredSurfaceLifecycle(openedRef);
|
|
11302
|
+
}
|
|
11303
|
+
else {
|
|
11304
|
+
this.handleDiscoveredSurfaceResult(openedRef);
|
|
11305
|
+
}
|
|
11296
11306
|
this.afterOpen.emit({
|
|
11297
11307
|
mode: this.mapSurfacePresentationToCrudMode(payload?.presentation),
|
|
11298
11308
|
action,
|
|
@@ -11464,12 +11474,14 @@ class PraxisCrudComponent {
|
|
|
11464
11474
|
handleDiscoveredSurfaceResult(result) {
|
|
11465
11475
|
const data = (result?.data || {});
|
|
11466
11476
|
const idField = this.getIdField();
|
|
11467
|
-
|
|
11477
|
+
const type = typeof result?.type === 'string' ? result.type.trim().toLowerCase() : '';
|
|
11478
|
+
if (type === 'save' ||
|
|
11479
|
+
(result?.kind === 'completed' && (!type || type === 'save'))) {
|
|
11468
11480
|
const id = data?.[idField];
|
|
11469
11481
|
this.afterSave.emit({ id, data });
|
|
11470
11482
|
this.refreshTable();
|
|
11471
11483
|
}
|
|
11472
|
-
if (
|
|
11484
|
+
if (type === 'delete') {
|
|
11473
11485
|
const id = data?.[idField];
|
|
11474
11486
|
this.afterDelete.emit({ id });
|
|
11475
11487
|
this.refreshTable();
|
|
@@ -11481,9 +11493,33 @@ class PraxisCrudComponent {
|
|
|
11481
11493
|
return;
|
|
11482
11494
|
let terminalResultHandled = false;
|
|
11483
11495
|
let closeHandled = false;
|
|
11496
|
+
const isCompletedSaveOrDelete = (candidate) => {
|
|
11497
|
+
if (!candidate || typeof candidate !== 'object') {
|
|
11498
|
+
return false;
|
|
11499
|
+
}
|
|
11500
|
+
const outcome = candidate;
|
|
11501
|
+
if (outcome.kind === 'dismissed' ||
|
|
11502
|
+
outcome.kind === 'notification' ||
|
|
11503
|
+
outcome.kind === 'failed') {
|
|
11504
|
+
return false;
|
|
11505
|
+
}
|
|
11506
|
+
const type = typeof outcome.type === 'string'
|
|
11507
|
+
? outcome.type.trim().toLowerCase()
|
|
11508
|
+
: '';
|
|
11509
|
+
if (type === 'cancel' ||
|
|
11510
|
+
type === 'close' ||
|
|
11511
|
+
type === 'back' ||
|
|
11512
|
+
type === 'esc' ||
|
|
11513
|
+
type === 'backdrop') {
|
|
11514
|
+
return false;
|
|
11515
|
+
}
|
|
11516
|
+
if (outcome.kind === 'completed') {
|
|
11517
|
+
return !type || type === 'save' || type === 'delete';
|
|
11518
|
+
}
|
|
11519
|
+
return outcome.kind == null && (type === 'save' || type === 'delete');
|
|
11520
|
+
};
|
|
11484
11521
|
const handleResult = (result) => {
|
|
11485
|
-
|
|
11486
|
-
if (terminalResultHandled || (type !== 'save' && type !== 'delete'))
|
|
11522
|
+
if (terminalResultHandled || !isCompletedSaveOrDelete(result))
|
|
11487
11523
|
return;
|
|
11488
11524
|
terminalResultHandled = true;
|
|
11489
11525
|
this.handleDiscoveredSurfaceResult(result);
|
package/package.json
CHANGED
|
@@ -1,20 +1,20 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@praxisui/crud",
|
|
3
|
-
"version": "10.0.0-rc.
|
|
3
|
+
"version": "10.0.0-rc.29",
|
|
4
4
|
"description": "CRUD building blocks for Praxis UI: integrates dynamic forms and tables with unified configuration and services.",
|
|
5
5
|
"peerDependencies": {
|
|
6
6
|
"@angular/common": "^21.0.0",
|
|
7
7
|
"@angular/core": "^21.0.0",
|
|
8
|
-
"@praxisui/dynamic-form": "^10.0.0-rc.
|
|
9
|
-
"@praxisui/table": "^10.0.0-rc.
|
|
10
|
-
"@praxisui/core": "^10.0.0-rc.
|
|
11
|
-
"@praxisui/dynamic-fields": "^10.0.0-rc.
|
|
12
|
-
"@praxisui/settings-panel": "^10.0.0-rc.
|
|
8
|
+
"@praxisui/dynamic-form": "^10.0.0-rc.29",
|
|
9
|
+
"@praxisui/table": "^10.0.0-rc.29",
|
|
10
|
+
"@praxisui/core": "^10.0.0-rc.29",
|
|
11
|
+
"@praxisui/dynamic-fields": "^10.0.0-rc.29",
|
|
12
|
+
"@praxisui/settings-panel": "^10.0.0-rc.29",
|
|
13
13
|
"@angular/cdk": "^21.0.0",
|
|
14
14
|
"@angular/forms": "^21.0.0",
|
|
15
15
|
"@angular/material": "^21.0.0",
|
|
16
16
|
"@angular/router": "^21.0.0",
|
|
17
|
-
"@praxisui/ai": "^10.0.0-rc.
|
|
17
|
+
"@praxisui/ai": "^10.0.0-rc.29",
|
|
18
18
|
"rxjs": "~7.8.0"
|
|
19
19
|
},
|
|
20
20
|
"dependencies": {
|