@praxisui/manual-form 9.0.0-beta.7 → 9.0.0-beta.70

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 CHANGED
@@ -19,7 +19,7 @@ npm i @praxisui/manual-form@latest
19
19
  Peer dependencies:
20
20
 
21
21
  - `@angular/common`, `@angular/core`, `@angular/forms`, `@angular/router`, `@angular/cdk`, `@angular/material` `^21.0.0`
22
- - `@praxisui/core`, `@praxisui/dynamic-fields`, `@praxisui/settings-panel`, `@praxisui/metadata-editor`, `@praxisui/ai` `^9.0.0-beta.4`
22
+ - `@praxisui/core`, `@praxisui/dynamic-fields`, `@praxisui/settings-panel`, `@praxisui/metadata-editor`, `@praxisui/ai` `^9.0.0-beta.12`
23
23
  - `rxjs` `~7.8.0`
24
24
 
25
25
  ## Recommended Typed Host
@@ -111,6 +111,26 @@ The toolbar and metadata bridge are runtime entry points. They are not separate
111
111
 
112
112
  Free JSON patches from AI flows are not the public authoring contract. Local apply must come from a manifest-backed `componentEditPlan`.
113
113
 
114
+ ### Rule Authoring Contract
115
+
116
+ `formRules` is the authorable rules surface for manual forms. Each rule `effect.condition` must be a JSON Logic object, for example:
117
+
118
+ ```json
119
+ {
120
+ "id": "required-customer",
121
+ "targetType": "field",
122
+ "targets": ["customer"],
123
+ "effect": {
124
+ "condition": { "!==": [{ "var": "customer" }, null] },
125
+ "properties": { "required": true }
126
+ }
127
+ }
128
+ ```
129
+
130
+ Do not use legacy JSON Schema condition blocks such as `allOf`/`if`/`then`, and do not use textual expression strings such as `customer != null`.
131
+
132
+ `formRulesState` is internal round-trip state generated by the visual editor. Treat it as read-only metadata: tools and hosts should author `formRules` and let the editor materialize or preserve `formRulesState` when needed.
133
+
114
134
  ## Public API Snapshot
115
135
 
116
136
  Main exports include `ManualFormComponent`, `ManualFormHeaderComponent`, `ManualFormActionsComponent`, `ManualFormConfigEditorComponent`, `ManualFormInstance`, seed helpers, manual field directives, metadata bridge services, DI tokens, AI capabilities and `PRAXIS_MANUAL_FORM_AUTHORING_MANIFEST`.