@praxisui/core 9.0.5-rc.27 → 9.0.5-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.
- package/README.md +1 -1
- package/ai/component-registry.json +2 -2
- package/fesm2022/praxisui-core.mjs +10 -0
- package/package.json +1 -1
- package/types/praxisui-core.d.ts +2 -0
package/README.md
CHANGED
|
@@ -253,7 +253,7 @@ export const appConfig = {
|
|
|
253
253
|
|
|
254
254
|
Use `GlobalActionRef` and the catalog helpers when declaring or validating action payloads. The host remains responsible for registered executors and policy.
|
|
255
255
|
|
|
256
|
-
Resource action discovery also carries an optional `execution` contract. Consumers must materialize its interaction, idempotency, correlation, resource-version, selection, outcome and refresh policies instead of inferring command behavior from labels or HTTP methods. `ResourceDiscoveryService.getActionsByResourceKey(...)` resolves the canonical `/schemas/actions?resource=...` catalog without requiring the consumer to know a resource path. A collection action may declare `resourceVersionTargetResourceKey` and `resourceVersionTargetIdField` when its `If-Match` belongs to another canonical resource
|
|
256
|
+
Resource action discovery also carries an optional `execution` contract. Consumers must materialize its interaction, idempotency, correlation, resource-version, selection, outcome and refresh policies instead of inferring command behavior from labels or HTTP methods. `ResourceDiscoveryService.getActionsByResourceKey(...)` resolves the canonical `/schemas/actions?resource=...` catalog without requiring the consumer to know a resource path. A collection action may declare `resourceVersionTargetResourceKey` and `resourceVersionTargetIdField` when its `If-Match` belongs to another canonical resource. `ResourceActionOpenAdapterService` then projects that exact pair into Dynamic Form runtime inputs when no version is available at open time; after the request payload is prepared, Dynamic Form reads only the declared scalar id field, resolves the exact target resource catalog, fetches its current representation and requires the response ETag before executing the command. Missing pairs, divergent catalogs, absent ids and absent ETags fail closed. This path does not deduce targets from URLs, labels, lookup display objects or action names. The adapter also uses transient schema-owned command layout and keeps materialized host inputs authoritative over saved preferences.
|
|
257
257
|
|
|
258
258
|
## Collection Export
|
|
259
259
|
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"schemaVersion": "1.0.0",
|
|
3
|
-
"generatedAt": "2026-08-
|
|
3
|
+
"generatedAt": "2026-08-16T01:02:42.425Z",
|
|
4
4
|
"packageName": "@praxisui/core",
|
|
5
|
-
"packageVersion": "9.0.5-rc.
|
|
5
|
+
"packageVersion": "9.0.5-rc.29",
|
|
6
6
|
"sourceRegistry": "praxis-component-registry-ingestion",
|
|
7
7
|
"sourceRegistryVersion": "1.0.0",
|
|
8
8
|
"componentCount": 4,
|
|
@@ -15938,6 +15938,16 @@ class ResourceActionOpenAdapterService {
|
|
|
15938
15938
|
];
|
|
15939
15939
|
return;
|
|
15940
15940
|
}
|
|
15941
|
+
const targetResourceKey = String(execution.preconditions.resourceVersionTargetResourceKey ?? '').trim();
|
|
15942
|
+
const targetIdField = String(execution.preconditions.resourceVersionTargetIdField ?? '').trim();
|
|
15943
|
+
if (targetResourceKey || targetIdField) {
|
|
15944
|
+
if (!targetResourceKey || !targetIdField) {
|
|
15945
|
+
throw new Error(`ResourceActionOpenAdapterService requires both resourceVersionTargetResourceKey and resourceVersionTargetIdField for action "${action.id}".`);
|
|
15946
|
+
}
|
|
15947
|
+
inputs['submitResourceVersionTargetResourceKey'] = targetResourceKey;
|
|
15948
|
+
inputs['submitResourceVersionTargetIdField'] = targetIdField;
|
|
15949
|
+
return;
|
|
15950
|
+
}
|
|
15941
15951
|
if (execution.preconditions.resourceVersion === 'REQUIRED') {
|
|
15942
15952
|
throw new Error(`ResourceActionOpenAdapterService requires resourceVersion or resourceVersionBindingPath for action "${action.id}".`);
|
|
15943
15953
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@praxisui/core",
|
|
3
|
-
"version": "9.0.5-rc.
|
|
3
|
+
"version": "9.0.5-rc.29",
|
|
4
4
|
"description": "Core library for Praxis UI Workspace: types, tokens, services and utilities shared across @praxisui/* packages.",
|
|
5
5
|
"peerDependencies": {
|
|
6
6
|
"@angular/common": "^21.0.0",
|
package/types/praxisui-core.d.ts
CHANGED
|
@@ -9860,6 +9860,8 @@ interface DomainRuleTestScenarioRequest {
|
|
|
9860
9860
|
facts: Record<string, unknown>;
|
|
9861
9861
|
expectedDecision: DomainRuleDecision;
|
|
9862
9862
|
expectedOutput?: unknown;
|
|
9863
|
+
expectedReasonCodes?: string[];
|
|
9864
|
+
expectedEffectIntents?: string[];
|
|
9863
9865
|
status?: 'ACTIVE' | 'DISABLED';
|
|
9864
9866
|
}
|
|
9865
9867
|
interface DomainRuleTestScenario extends DomainRuleTestScenarioRequest {
|