extended-dynamic-forms 0.3.8 → 0.3.10

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
@@ -11,7 +11,8 @@ Conditional logic is configured with pure JSON via `x-edf:rules` in your `schema
11
11
  - Cannot be installed from npm due to local file dependencies
12
12
  - JSON logic conditions don't work with vanilla JavaScript builds
13
13
  - Array drag-and-drop is not implemented
14
- - Limited test coverage for UI components and event system
14
+ - Automated coverage is provided by logic and snapshot suites; component/UI tests
15
+ are intentionally omitted
15
16
  - JSON Patch implementation supports add/remove/replace only (not move/copy/test)
16
17
 
17
18
  ## Overview
@@ -49,6 +50,19 @@ npm run dev
49
50
 
50
51
  **Important:** The library is currently designed for internal use or as part of a monorepo setup. Standalone npm package distribution is not yet supported.
51
52
 
53
+ ## Testing
54
+
55
+ The project uses Vitest with **Node** environment to cover pure logic and serialized
56
+ outputs. Component or DOM-level tests are intentionally excluded.
57
+
58
+ - Run the full suite: `npm test`
59
+ - Logic-only focus: `npm test -- tests/logic`
60
+ - Snapshot updates: `npm test -- tests/snapshots -- -u`
61
+
62
+ After pulling dependencies or updating `package.json`, run `npm install` (or
63
+ `yarn install`) so the lockfile reflects removed packages such as
64
+ `@testing-library/*` and `jsdom`.
65
+
52
66
  ## Core Architecture
53
67
 
54
68
  ### Declarative Conditionals (JSON-only)
@@ -204,6 +218,7 @@ Notes:
204
218
  - EDF includes `LayoutGridField` out of the box. Just set `ui:field: 'LayoutGridField'` on the step object.
205
219
  - EDF variant uses `'ui:layoutGrid'` with AntD gutter and 24-grid spans. The RJSF canonical layout (`'ui:layout'` with 12-grid widths) is also parsed.
206
220
  - You can still override or extend via the `fields` prop if needed.
221
+ - LayoutGridField now writes nested updates immutably using path metadata. This is enabled by default; set `ui:options.pathAware: false` on a step to fall back to the previous shallow merge behaviour.
207
222
 
208
223
  ## Event System & Webhooks
209
224
 
@@ -17,6 +17,7 @@ export declare const customFields: {
17
17
  };
18
18
  export declare const customTemplates: {
19
19
  FieldTemplate: React.FC<import('@rjsf/utils').FieldTemplateProps>;
20
+ ObjectFieldTemplate: React.FC<import('@rjsf/utils').ObjectFieldTemplateProps>;
20
21
  ArrayFieldTemplate: (props: import('@rjsf/utils').ArrayFieldTemplateProps) => import("react/jsx-runtime").JSX.Element;
21
22
  ArrayFieldItemTemplate: (props: import('@rjsf/utils').ArrayFieldItemTemplateType) => import("react/jsx-runtime").JSX.Element;
22
23
  WizardObjectFieldTemplate: React.FC<import('@rjsf/utils').ObjectFieldTemplateProps>;
@@ -0,0 +1,5 @@
1
+ import { default as React } from 'react';
2
+ import { ObjectFieldTemplateProps } from '@rjsf/utils';
3
+
4
+ export declare const ObjectFieldTemplate: React.FC<ObjectFieldTemplateProps>;
5
+ export default ObjectFieldTemplate;