@ea-lab/reactive-json-docs 0.7.0 → 0.8.0
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/package.json +2 -2
- package/public/rjbuild/docs/advanced-concepts/data-processors.md +2 -2
- package/public/rjbuild/docs/advanced-concepts/plugins/component-development-guide-llm.md +14 -14
- package/public/rjbuild/docs/core/action/HashChangeListener.md +1 -1
- package/public/rjbuild/docs/core/action/HashChangeListener.yaml +24 -6
- package/public/rjbuild/docs/core/action/Hide.md +2 -2
- package/public/rjbuild/docs/core/action/Hide.yaml +4 -3
- package/public/rjbuild/docs/core/action/MessageListener.md +4 -4
- package/public/rjbuild/docs/core/action/MessageListener.yaml +18 -6
- package/public/rjbuild/docs/core/action/Popover.md +5 -5
- package/public/rjbuild/docs/core/action/Popover.yaml +28 -5
- package/public/rjbuild/docs/core/action/ReactOnEvent.md +4 -4
- package/public/rjbuild/docs/core/action/ReactOnEvent.yaml +4 -4
- package/public/rjbuild/docs/core/action/Redirect.md +2 -2
- package/public/rjbuild/docs/core/action/Redirect.yaml +8 -2
- package/public/rjbuild/docs/core/action/Tooltip.md +3 -3
- package/public/rjbuild/docs/core/action/Tooltip.yaml +16 -3
- package/public/rjbuild/docs/core/action/VisuallyHide.md +2 -2
- package/public/rjbuild/docs/core/action/VisuallyHide.yaml +2 -2
- package/public/rjbuild/docs/core/dataMapping/simpleMapping.md +5 -5
- package/public/rjbuild/docs/core/dataMapping/simpleMapping.yaml +76 -56
- package/public/rjbuild/docs/core/element/debug/VariablesDebug.md +59 -0
- package/public/rjbuild/docs/core/element/debug/VariablesDebug.yaml +71 -0
- package/public/rjbuild/docs/core/element/form/CheckBoxField.md +8 -8
- package/public/rjbuild/docs/core/element/form/CheckBoxField.yaml +40 -8
- package/public/rjbuild/docs/core/element/form/DateField.md +5 -5
- package/public/rjbuild/docs/core/element/form/DateField.yaml +27 -5
- package/public/rjbuild/docs/core/element/form/NumberField.md +7 -7
- package/public/rjbuild/docs/core/element/form/NumberField.yaml +32 -7
- package/public/rjbuild/docs/core/element/form/SelectField.md +9 -9
- package/public/rjbuild/docs/core/element/form/SelectField.yaml +46 -9
- package/public/rjbuild/docs/core/element/form/TextAreaField.md +8 -8
- package/public/rjbuild/docs/core/element/form/TextAreaField.yaml +36 -8
- package/public/rjbuild/docs/core/element/form/TextField.md +8 -8
- package/public/rjbuild/docs/core/element/form/TextField.yaml +38 -8
- package/public/rjbuild/docs/core/element/form/formElementsCommon.md +2 -4
- package/public/rjbuild/docs/core/element/form/index.md +0 -2
- package/public/rjbuild/docs/core/element/html/AccordionItem.yaml +19 -7
- package/public/rjbuild/docs/core/element/html/FolderSortableTree.yaml +40 -12
- package/public/rjbuild/docs/core/element/html/FormatNumeral.yaml +21 -7
- package/public/rjbuild/docs/core/element/html/Html.yaml +26 -9
- package/public/rjbuild/docs/core/element/html/LabelFromValue.yaml +25 -8
- package/public/rjbuild/docs/core/element/html/Modal.yaml +35 -12
- package/public/rjbuild/docs/core/element/html/PreformattedMarkup.yaml +23 -7
- package/public/rjbuild/docs/core/element/html/SortableTreeItemCollapseButton.yaml +7 -6
- package/public/rjbuild/docs/core/element/html/SyntaxHighlighter.yaml +56 -20
- package/public/rjbuild/docs/core/element/html/Tabs.yaml +24 -15
- package/public/rjbuild/docs/core/element/special/BootstrapElement.md +4 -6
- package/public/rjbuild/docs/core/element/special/BootstrapElement.yaml +15 -4
- package/public/rjbuild/docs/core/element/special/Count.md +8 -10
- package/public/rjbuild/docs/core/element/special/Count.yaml +22 -9
- package/public/rjbuild/docs/core/element/special/DataFilter.md +40 -41
- package/public/rjbuild/docs/core/element/special/DataFilter.yaml +79 -43
- package/public/rjbuild/docs/core/element/special/DelayedActions.md +13 -15
- package/public/rjbuild/docs/core/element/special/DelayedActions.yaml +32 -13
- package/public/rjbuild/docs/core/element/special/PageControls.md +8 -10
- package/public/rjbuild/docs/core/element/special/PageControls.yaml +9 -8
- package/public/rjbuild/docs/core/element/special/Phantom.md +9 -11
- package/public/rjbuild/docs/core/element/special/Phantom.yaml +22 -9
- package/public/rjbuild/docs/core/element/special/ReactiveJsonSubroot.md +7 -9
- package/public/rjbuild/docs/core/element/special/ReactiveJsonSubroot.yaml +13 -15
- package/public/rjbuild/docs/core/element/special/Switch.md +31 -33
- package/public/rjbuild/docs/core/element/special/Switch.yaml +59 -22
- package/public/rjbuild/docs/core/reaction/addData.md +0 -2
- package/public/rjbuild/docs/core/reaction/addData.yaml +17 -2
- package/public/rjbuild/docs/core/reaction/fetchData.md +1 -2
- package/public/rjbuild/docs/core/reaction/fetchData.yaml +40 -11
- package/public/rjbuild/docs/core/reaction/moveData.md +0 -4
- package/public/rjbuild/docs/core/reaction/moveData.yaml +28 -6
- package/public/rjbuild/docs/core/reaction/postMessage.md +0 -4
- package/public/rjbuild/docs/core/reaction/postMessage.yaml +29 -6
- package/public/rjbuild/docs/core/reaction/redirectNow.md +0 -4
- package/public/rjbuild/docs/core/reaction/redirectNow.yaml +10 -3
- package/public/rjbuild/docs/core/reaction/removeData.md +2 -6
- package/public/rjbuild/docs/core/reaction/removeData.yaml +40 -2
- package/public/rjbuild/docs/core/reaction/setClipboardData.md +0 -4
- package/public/rjbuild/docs/core/reaction/setClipboardData.yaml +10 -3
- package/public/rjbuild/docs/core/reaction/setData.md +0 -4
- package/public/rjbuild/docs/core/reaction/setData.yaml +25 -7
- package/public/rjbuild/docs/core/reaction/submitData.md +2 -3
- package/public/rjbuild/docs/core/reaction/submitData.yaml +43 -7
- package/public/rjbuild/docs/core/reaction/triggerEvent.md +0 -4
- package/public/rjbuild/docs/core/reaction/triggerEvent.yaml +25 -11
- package/public/rjbuild/docs/install.md +24 -24
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
# VariablesDebug
|
|
2
|
+
|
|
3
|
+
The `VariablesDebug` component renders a floating debug panel that lets you inspect the current template data at runtime. It is intended for development and debugging purposes to quickly see the values available in the active template context.
|
|
4
|
+
|
|
5
|
+
## Properties
|
|
6
|
+
None
|
|
7
|
+
|
|
8
|
+
## Behavior
|
|
9
|
+
- Renders a floating panel that can be expanded/collapsed.
|
|
10
|
+
- Displays the current template path.
|
|
11
|
+
- Switches between two modes: a flattened key/value list or a formatted JSON view.
|
|
12
|
+
- Copies the current view to the clipboard (list or JSON).
|
|
13
|
+
- Uses a portal (`#rj-debug-root`) injected into `document.body`.
|
|
14
|
+
- Returns `null` when `document` is not available (e.g., SSR).
|
|
15
|
+
- Multiple `VariablesDebug` components can be used in the same page.
|
|
16
|
+
|
|
17
|
+
## Example
|
|
18
|
+
This example shows how to use the `VariablesDebug` component to display the current template data.
|
|
19
|
+
|
|
20
|
+
Click the button to open the debug panel.
|
|
21
|
+
|
|
22
|
+
As the `VariablesDebug` declaration is located at the RjBuild root, it will show the global data assigned to the root.
|
|
23
|
+
|
|
24
|
+
```yaml
|
|
25
|
+
renderView:
|
|
26
|
+
- type: VariablesDebug
|
|
27
|
+
actions:
|
|
28
|
+
- what: hide
|
|
29
|
+
when: ~.openDebug
|
|
30
|
+
isEmpty:
|
|
31
|
+
|
|
32
|
+
- type: button
|
|
33
|
+
content: Open/close the debug panel
|
|
34
|
+
actions:
|
|
35
|
+
- what: setData
|
|
36
|
+
on: click
|
|
37
|
+
path: ~.openDebug
|
|
38
|
+
value: true
|
|
39
|
+
when: ~.openDebug
|
|
40
|
+
isNot: true
|
|
41
|
+
stopPropagation: true
|
|
42
|
+
- what: setData
|
|
43
|
+
on: click
|
|
44
|
+
path: ~.openDebug
|
|
45
|
+
value: false
|
|
46
|
+
when: ~.openDebug
|
|
47
|
+
isNot: false
|
|
48
|
+
stopPropagation: true
|
|
49
|
+
|
|
50
|
+
data:
|
|
51
|
+
user:
|
|
52
|
+
name: "Alice"
|
|
53
|
+
email: "alice@example.com"
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
## Notes
|
|
57
|
+
- Best used only in development environments. You should not ship it in production UIs.
|
|
58
|
+
- Clipboard access depends on browser permissions/policies.
|
|
59
|
+
- Do not include too many `VariablesDebug` components in the same page; otherwise, the vertical space available will be too small to be useful.
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
renderView:
|
|
2
|
+
- type: Markdown
|
|
3
|
+
content: |
|
|
4
|
+
# VariablesDebug
|
|
5
|
+
|
|
6
|
+
The `VariablesDebug` component renders a floating debug panel that lets you inspect the
|
|
7
|
+
current template data at runtime. It is intended for development and debugging purposes
|
|
8
|
+
to quickly see the values available in the active template context.
|
|
9
|
+
|
|
10
|
+
## Properties
|
|
11
|
+
|
|
12
|
+
None.
|
|
13
|
+
|
|
14
|
+
## Behavior
|
|
15
|
+
- Renders a floating panel that can be expanded/collapsed.
|
|
16
|
+
- Displays the current template path.
|
|
17
|
+
- Switches between two modes: a flattened key/value list or a formatted JSON view.
|
|
18
|
+
- Copies the current view to the clipboard (list or JSON).
|
|
19
|
+
- Uses a portal (`#rj-debug-root`) injected into `document.body`.
|
|
20
|
+
- Returns `null` when `document` is not available (e.g., SSR).
|
|
21
|
+
- Multiple `VariablesDebug` components can be used in the same page.
|
|
22
|
+
|
|
23
|
+
- type: RjBuildDescriber
|
|
24
|
+
title: "Example"
|
|
25
|
+
description:
|
|
26
|
+
type: Markdown
|
|
27
|
+
content: |
|
|
28
|
+
This example shows how to use the `VariablesDebug` component to display the current template data.
|
|
29
|
+
|
|
30
|
+
Click the button to open the debug panel.
|
|
31
|
+
|
|
32
|
+
As the `VariablesDebug` declaration is located at the RjBuild root, it will show the global data assigned to the root.
|
|
33
|
+
|
|
34
|
+
toDescribe:
|
|
35
|
+
renderView:
|
|
36
|
+
- type: VariablesDebug
|
|
37
|
+
actions:
|
|
38
|
+
- what: hide
|
|
39
|
+
when: ~.openDebug
|
|
40
|
+
isEmpty:
|
|
41
|
+
|
|
42
|
+
- type: button
|
|
43
|
+
content: Open/close the debug panel
|
|
44
|
+
actions:
|
|
45
|
+
- what: setData
|
|
46
|
+
on: click
|
|
47
|
+
path: ~.openDebug
|
|
48
|
+
value: true
|
|
49
|
+
when: ~.openDebug
|
|
50
|
+
isNot: true
|
|
51
|
+
stopPropagation: true
|
|
52
|
+
- what: setData
|
|
53
|
+
on: click
|
|
54
|
+
path: ~.openDebug
|
|
55
|
+
value: false
|
|
56
|
+
when: ~.openDebug
|
|
57
|
+
isNot: false
|
|
58
|
+
stopPropagation: true
|
|
59
|
+
|
|
60
|
+
data:
|
|
61
|
+
user:
|
|
62
|
+
name: "Alice"
|
|
63
|
+
email: "alice@example.com"
|
|
64
|
+
|
|
65
|
+
- type: Markdown
|
|
66
|
+
content: |
|
|
67
|
+
## Notes
|
|
68
|
+
- Best used only in development environments. You should not ship it in production UIs.
|
|
69
|
+
- Clipboard access depends on browser permissions/policies.
|
|
70
|
+
- Do not include too many `VariablesDebug` components in the same page; otherwise,
|
|
71
|
+
the vertical space available will be too small to be useful.
|
|
@@ -4,14 +4,14 @@ The `CheckBoxField` component renders checkbox or radio button groups using Reac
|
|
|
4
4
|
|
|
5
5
|
## Properties
|
|
6
6
|
|
|
7
|
-
- `dataLocation` (string, optional): Path to bind the field value in the data context
|
|
8
|
-
- `defaultFieldValue` (any, optional): Default value when no data is present
|
|
9
|
-
- `options` (array, optional): Static array of option objects with `label` and `value` properties
|
|
10
|
-
- `dynamicOptions` (string, optional): Template path to dynamic options array
|
|
11
|
-
- `controlType` (string, optional): Type of control - "checkbox" (default) or "radio"
|
|
12
|
-
- `multiple` (boolean, optional): Force array storage for checkboxes (default: auto-detected)
|
|
13
|
-
- `attributes` (object, optional): Attributes applied to the Form.Group container
|
|
14
|
-
- `actions` (array, optional): Actions to execute based on field state
|
|
7
|
+
- `dataLocation` (string, optional): Path to bind the field value in the data context.
|
|
8
|
+
- `defaultFieldValue` (any, optional): Default value when no data is present.
|
|
9
|
+
- `options` (array, optional): Static array of option objects with `label` and `value` properties.
|
|
10
|
+
- `dynamicOptions` (string, optional): Template path to dynamic options array.
|
|
11
|
+
- `controlType` (string, optional): Type of control - "checkbox" (default) or "radio".
|
|
12
|
+
- `multiple` (boolean, optional): Force array storage for checkboxes (default: auto-detected).
|
|
13
|
+
- `attributes` (object, optional): Attributes applied to the Form.Group container.
|
|
14
|
+
- `actions` (array, optional): Actions to execute based on field state.
|
|
15
15
|
|
|
16
16
|
## Option Format
|
|
17
17
|
|
|
@@ -7,15 +7,47 @@ renderView:
|
|
|
7
7
|
|
|
8
8
|
## Properties
|
|
9
9
|
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
-
|
|
17
|
-
|
|
10
|
+
- type: DefinitionList
|
|
11
|
+
content:
|
|
12
|
+
- term:
|
|
13
|
+
code: dataLocation
|
|
14
|
+
after: "(string, optional)"
|
|
15
|
+
details: "Path to bind the field value in the data context."
|
|
16
|
+
- term:
|
|
17
|
+
code: defaultFieldValue
|
|
18
|
+
after: "(any, optional)"
|
|
19
|
+
details: "Default value when no data is present."
|
|
20
|
+
- term:
|
|
21
|
+
code: options
|
|
22
|
+
after: "(array, optional)"
|
|
23
|
+
details:
|
|
24
|
+
type: Markdown
|
|
25
|
+
content: "Static array of option objects with `label` and `value` properties."
|
|
26
|
+
- term:
|
|
27
|
+
code: dynamicOptions
|
|
28
|
+
after: "(string, optional)"
|
|
29
|
+
details:
|
|
30
|
+
type: Markdown
|
|
31
|
+
content: "Template path to dynamic options array."
|
|
32
|
+
- term:
|
|
33
|
+
code: controlType
|
|
34
|
+
after: "(string, optional)"
|
|
35
|
+
details: "Type of control - `checkbox` (default) or `radio`."
|
|
36
|
+
- term:
|
|
37
|
+
code: multiple
|
|
38
|
+
after: "(boolean, optional)"
|
|
39
|
+
details: "Force array storage for checkboxes (default: auto-detected)."
|
|
40
|
+
- term:
|
|
41
|
+
code: attributes
|
|
42
|
+
after: "(object, optional)"
|
|
43
|
+
details: "Attributes applied to the Form.Group container."
|
|
44
|
+
- term:
|
|
45
|
+
code: actions
|
|
46
|
+
after: "(array, optional)"
|
|
47
|
+
details: "Actions to execute based on field state."
|
|
18
48
|
|
|
49
|
+
- type: Markdown
|
|
50
|
+
content: |
|
|
19
51
|
## Option Format
|
|
20
52
|
|
|
21
53
|
Each option object must have:
|
|
@@ -7,11 +7,11 @@ The `DateField` component renders a date and time input field using React Bootst
|
|
|
7
7
|
|
|
8
8
|
## Properties
|
|
9
9
|
|
|
10
|
-
- `dataLocation` (string, optional): Path to bind the field value in the data context
|
|
11
|
-
- `defaultFieldValue` (string, optional): Default value when no data is present
|
|
12
|
-
- `label` (string, optional): Field label text
|
|
13
|
-
- `attributes` (object, optional): Attributes applied to the Form.Group container
|
|
14
|
-
- `actions` (array, optional): Actions to execute based on field state. Supports both actions (hide, tooltip, etc.) and conditional reactions (setData, fetchData, etc.) with full conditional logic support
|
|
10
|
+
- `dataLocation` (string, optional): Path to bind the field value in the data context.
|
|
11
|
+
- `defaultFieldValue` (string, optional): Default value when no data is present.
|
|
12
|
+
- `label` (string, optional): Field label text.
|
|
13
|
+
- `attributes` (object, optional): Attributes applied to the Form.Group container.
|
|
14
|
+
- `actions` (array, optional): Actions to execute based on field state. Supports both actions (hide, tooltip, etc.) and conditional reactions (setData, fetchData, etc.) with full conditional logic support.
|
|
15
15
|
|
|
16
16
|
## Data Management
|
|
17
17
|
|
|
@@ -10,12 +10,34 @@ renderView:
|
|
|
10
10
|
|
|
11
11
|
## Properties
|
|
12
12
|
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
-
|
|
16
|
-
|
|
17
|
-
|
|
13
|
+
- type: DefinitionList
|
|
14
|
+
content:
|
|
15
|
+
- term:
|
|
16
|
+
code: dataLocation
|
|
17
|
+
after: "(string, optional)"
|
|
18
|
+
details: Path to bind the field value in the data context.
|
|
19
|
+
- term:
|
|
20
|
+
code: defaultFieldValue
|
|
21
|
+
after: "(string, optional)"
|
|
22
|
+
details: Default value when no data is present.
|
|
23
|
+
- term:
|
|
24
|
+
code: label
|
|
25
|
+
after: "(string, optional)"
|
|
26
|
+
details: Field label text.
|
|
27
|
+
- term:
|
|
28
|
+
code: attributes
|
|
29
|
+
after: "(object, optional)"
|
|
30
|
+
details: Attributes applied to the Form.Group container.
|
|
31
|
+
- term:
|
|
32
|
+
code: actions
|
|
33
|
+
after: "(array, optional)"
|
|
34
|
+
details:
|
|
35
|
+
type: Markdown
|
|
36
|
+
content: |
|
|
37
|
+
Actions to execute based on field state. Supports both actions (hide, tooltip, etc.) and conditional reactions (setData, fetchData, etc.) with full conditional logic support.
|
|
18
38
|
|
|
39
|
+
- type: Markdown
|
|
40
|
+
content: |
|
|
19
41
|
## Data Management
|
|
20
42
|
|
|
21
43
|
The component automatically synchronizes its value with the global data context as an ISO 8601 datetime string format (YYYY-MM-DDTHH:mm). When using `dataLocation`, the value is stored at the specified path. Without `dataLocation`, the value is stored in the template context using the component's `datafield`.
|
|
@@ -4,13 +4,13 @@ The `NumberField` component renders a numeric input field using React Bootstrap.
|
|
|
4
4
|
|
|
5
5
|
## Properties
|
|
6
6
|
|
|
7
|
-
- `dataLocation` (string, optional): Path to bind the field value in the data context
|
|
8
|
-
- `defaultFieldValue` (number, optional): Default value when no data is present
|
|
9
|
-
- `label` (string, optional): Field label text (supports template evaluation)
|
|
10
|
-
- `placeholder` (string, optional): Placeholder text (supports template evaluation)
|
|
11
|
-
- `attributes` (object, optional): Attributes applied to the Form.Group container
|
|
12
|
-
- `inputAttributes` (object, optional): Attributes applied directly to the input element
|
|
13
|
-
- `actions` (array, optional): Actions to execute based on field state
|
|
7
|
+
- `dataLocation` (string, optional): Path to bind the field value in the data context.
|
|
8
|
+
- `defaultFieldValue` (number, optional): Default value when no data is present.
|
|
9
|
+
- `label` (string, optional): Field label text (supports template evaluation).
|
|
10
|
+
- `placeholder` (string, optional): Placeholder text (supports template evaluation).
|
|
11
|
+
- `attributes` (object, optional): Attributes applied to the Form.Group container.
|
|
12
|
+
- `inputAttributes` (object, optional): Attributes applied directly to the input element.
|
|
13
|
+
- `actions` (array, optional): Actions to execute based on field state.
|
|
14
14
|
|
|
15
15
|
## Data Management
|
|
16
16
|
|
|
@@ -7,14 +7,39 @@ renderView:
|
|
|
7
7
|
|
|
8
8
|
## Properties
|
|
9
9
|
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
-
|
|
10
|
+
- type: DefinitionList
|
|
11
|
+
content:
|
|
12
|
+
- term:
|
|
13
|
+
code: dataLocation
|
|
14
|
+
after: "(string, optional)"
|
|
15
|
+
details: "Path to bind the field value in the data context."
|
|
16
|
+
- term:
|
|
17
|
+
code: defaultFieldValue
|
|
18
|
+
after: "(number, optional)"
|
|
19
|
+
details: "Default value when no data is present."
|
|
20
|
+
- term:
|
|
21
|
+
code: label
|
|
22
|
+
after: "(string, optional)"
|
|
23
|
+
details: "Field label text (supports template evaluation)."
|
|
24
|
+
- term:
|
|
25
|
+
code: placeholder
|
|
26
|
+
after: "(string, optional)"
|
|
27
|
+
details: "Placeholder text (supports template evaluation)."
|
|
28
|
+
- term:
|
|
29
|
+
code: attributes
|
|
30
|
+
after: "(object, optional)"
|
|
31
|
+
details: "Attributes applied to the Form.Group container."
|
|
32
|
+
- term:
|
|
33
|
+
code: inputAttributes
|
|
34
|
+
after: "(object, optional)"
|
|
35
|
+
details: "Attributes applied directly to the input element."
|
|
36
|
+
- term:
|
|
37
|
+
code: actions
|
|
38
|
+
after: "(array, optional)"
|
|
39
|
+
details: "Actions to execute based on field state."
|
|
17
40
|
|
|
41
|
+
- type: Markdown
|
|
42
|
+
content: |
|
|
18
43
|
## Data Management
|
|
19
44
|
|
|
20
45
|
The component stores the input value as a string in the data context. The browser's number input provides built-in validation, but the value should be converted to a number when needed for calculations.
|
|
@@ -4,15 +4,15 @@ The `SelectField` component renders a dropdown selection field using React Boots
|
|
|
4
4
|
|
|
5
5
|
## Properties
|
|
6
6
|
|
|
7
|
-
- `dataLocation` (string, optional): Path to bind the field value in the data context
|
|
8
|
-
- `defaultFieldValue` (any, optional): Default value when no data is present
|
|
9
|
-
- `label` (string, optional): Field label text (supports template evaluation)
|
|
10
|
-
- `options` (array, optional): Static array of option objects with `label` and `value` properties
|
|
11
|
-
- `dynamicOptions` (string, optional): Template path to dynamic options array
|
|
12
|
-
- `allowEmptyStringAsValue` (boolean, optional): Preserve empty strings as `""` instead of converting to `undefined` (default: false)
|
|
13
|
-
- `attributes` (object, optional): Attributes applied to the Form.Group container
|
|
14
|
-
- `inputAttributes` (object, optional): Attributes applied directly to the select element
|
|
15
|
-
- `actions` (array, optional): Actions to execute based on field state
|
|
7
|
+
- `dataLocation` (string, optional): Path to bind the field value in the data context.
|
|
8
|
+
- `defaultFieldValue` (any, optional): Default value when no data is present.
|
|
9
|
+
- `label` (string, optional): Field label text (supports template evaluation).
|
|
10
|
+
- `options` (array, optional): Static array of option objects with `label` and `value` properties.
|
|
11
|
+
- `dynamicOptions` (string, optional): Template path to dynamic options array.
|
|
12
|
+
- `allowEmptyStringAsValue` (boolean, optional): Preserve empty strings as `""` instead of converting to `undefined` (default: false).
|
|
13
|
+
- `attributes` (object, optional): Attributes applied to the Form.Group container.
|
|
14
|
+
- `inputAttributes` (object, optional): Attributes applied directly to the select element.
|
|
15
|
+
- `actions` (array, optional): Actions to execute based on field state.
|
|
16
16
|
|
|
17
17
|
## Option Format
|
|
18
18
|
|
|
@@ -7,16 +7,53 @@ renderView:
|
|
|
7
7
|
|
|
8
8
|
## Properties
|
|
9
9
|
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
-
|
|
17
|
-
|
|
18
|
-
|
|
10
|
+
- type: DefinitionList
|
|
11
|
+
content:
|
|
12
|
+
- term:
|
|
13
|
+
code: dataLocation
|
|
14
|
+
after: "(string, optional)"
|
|
15
|
+
details: "Path to bind the field value in the data context."
|
|
16
|
+
- term:
|
|
17
|
+
code: defaultFieldValue
|
|
18
|
+
after: "(any, optional)"
|
|
19
|
+
details: "Default value when no data is present."
|
|
20
|
+
- term:
|
|
21
|
+
code: label
|
|
22
|
+
after: "(string, optional)"
|
|
23
|
+
details: "Field label text (supports template evaluation)."
|
|
24
|
+
- term:
|
|
25
|
+
code: options
|
|
26
|
+
after: "(array, optional)"
|
|
27
|
+
details:
|
|
28
|
+
type: Markdown
|
|
29
|
+
content: "Static array of option objects with `label` and `value` properties."
|
|
30
|
+
- term:
|
|
31
|
+
code: dynamicOptions
|
|
32
|
+
after: "(string, optional)"
|
|
33
|
+
details:
|
|
34
|
+
type: Markdown
|
|
35
|
+
content: "Template path to dynamic options array."
|
|
36
|
+
- term:
|
|
37
|
+
code: allowEmptyStringAsValue
|
|
38
|
+
after: "(boolean, optional)"
|
|
39
|
+
details:
|
|
40
|
+
type: Markdown
|
|
41
|
+
content: "Preserve empty strings as `\"\"` instead of converting to `undefined` (default: false)."
|
|
42
|
+
- term:
|
|
43
|
+
code: attributes
|
|
44
|
+
after: "(object, optional)"
|
|
45
|
+
details: "Attributes applied to the Form.Group container."
|
|
46
|
+
- term:
|
|
47
|
+
code: inputAttributes
|
|
48
|
+
after: "(object, optional)"
|
|
49
|
+
details: "Attributes applied directly to the select element."
|
|
50
|
+
- term:
|
|
51
|
+
code: actions
|
|
52
|
+
after: "(array, optional)"
|
|
53
|
+
details: "Actions to execute based on field state."
|
|
19
54
|
|
|
55
|
+
- type: Markdown
|
|
56
|
+
content: |
|
|
20
57
|
## Option Format
|
|
21
58
|
|
|
22
59
|
Each option object must have:
|
|
@@ -4,14 +4,14 @@ The `TextAreaField` component renders a multi-line text input field using React
|
|
|
4
4
|
|
|
5
5
|
## Properties
|
|
6
6
|
|
|
7
|
-
- `dataLocation` (string, optional): Path to bind the field value in the data context
|
|
8
|
-
- `defaultFieldValue` (string, optional): Default value when no data is present
|
|
9
|
-
- `label` (string, optional): Field label text (supports template evaluation)
|
|
10
|
-
- `placeholder` (string, optional): Placeholder text (supports template evaluation)
|
|
11
|
-
- `rows` (number, optional): Number of visible text lines (default: 3)
|
|
12
|
-
- `attributes` (object, optional): Attributes applied to the Form.Group container
|
|
13
|
-
- `inputAttributes` (object, optional): Attributes applied directly to the textarea element
|
|
14
|
-
- `actions` (array, optional): Actions to execute based on field state
|
|
7
|
+
- `dataLocation` (string, optional): Path to bind the field value in the data context.
|
|
8
|
+
- `defaultFieldValue` (string, optional): Default value when no data is present.
|
|
9
|
+
- `label` (string, optional): Field label text (supports template evaluation).
|
|
10
|
+
- `placeholder` (string, optional): Placeholder text (supports template evaluation).
|
|
11
|
+
- `rows` (number, optional): Number of visible text lines (default: 3).
|
|
12
|
+
- `attributes` (object, optional): Attributes applied to the Form.Group container.
|
|
13
|
+
- `inputAttributes` (object, optional): Attributes applied directly to the textarea element.
|
|
14
|
+
- `actions` (array, optional): Actions to execute based on field state.
|
|
15
15
|
|
|
16
16
|
## Data Management
|
|
17
17
|
|
|
@@ -7,15 +7,43 @@ renderView:
|
|
|
7
7
|
|
|
8
8
|
## Properties
|
|
9
9
|
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
-
|
|
17
|
-
|
|
10
|
+
- type: DefinitionList
|
|
11
|
+
content:
|
|
12
|
+
- term:
|
|
13
|
+
code: dataLocation
|
|
14
|
+
after: "(string, optional)"
|
|
15
|
+
details: "Path to bind the field value in the data context."
|
|
16
|
+
- term:
|
|
17
|
+
code: defaultFieldValue
|
|
18
|
+
after: "(string, optional)"
|
|
19
|
+
details: "Default value when no data is present."
|
|
20
|
+
- term:
|
|
21
|
+
code: label
|
|
22
|
+
after: "(string, optional)"
|
|
23
|
+
details: "Field label text (supports template evaluation)."
|
|
24
|
+
- term:
|
|
25
|
+
code: placeholder
|
|
26
|
+
after: "(string, optional)"
|
|
27
|
+
details: "Placeholder text (supports template evaluation)."
|
|
28
|
+
- term:
|
|
29
|
+
code: rows
|
|
30
|
+
after: "(number, optional)"
|
|
31
|
+
details: "Number of visible text lines (default: 3)."
|
|
32
|
+
- term:
|
|
33
|
+
code: attributes
|
|
34
|
+
after: "(object, optional)"
|
|
35
|
+
details: "Attributes applied to the Form.Group container."
|
|
36
|
+
- term:
|
|
37
|
+
code: inputAttributes
|
|
38
|
+
after: "(object, optional)"
|
|
39
|
+
details: "Attributes applied directly to the textarea element."
|
|
40
|
+
- term:
|
|
41
|
+
code: actions
|
|
42
|
+
after: "(array, optional)"
|
|
43
|
+
details: "Actions to execute based on field state."
|
|
18
44
|
|
|
45
|
+
- type: Markdown
|
|
46
|
+
content: |
|
|
19
47
|
## Data Management
|
|
20
48
|
|
|
21
49
|
The component automatically synchronizes its value with the global data context. When using `dataLocation`, the value is stored at the specified path. Without `dataLocation`, the value is stored in the template context using the component's `datafield`.
|
|
@@ -4,14 +4,14 @@ The `TextField` component renders a single-line text input field using React Boo
|
|
|
4
4
|
|
|
5
5
|
## Properties
|
|
6
6
|
|
|
7
|
-
- `dataLocation` (string, optional): Path to bind the field value in the data context
|
|
8
|
-
- `defaultFieldValue` (string, optional): Default value when no data is present
|
|
9
|
-
- `label` (string, optional): Field label text (supports template evaluation)
|
|
10
|
-
- `placeholder` (string, optional): Placeholder text (supports template evaluation)
|
|
11
|
-
- `inputType` (string, optional): HTML input type (default: "text", supports template evaluation)
|
|
12
|
-
- `attributes` (object, optional): Attributes applied to the Form.Group container
|
|
13
|
-
- `inputAttributes` (object, optional): Attributes applied directly to the input element
|
|
14
|
-
- `actions` (array, optional): Actions to execute based on field state
|
|
7
|
+
- `dataLocation` (string, optional): Path to bind the field value in the data context.
|
|
8
|
+
- `defaultFieldValue` (string, optional): Default value when no data is present.
|
|
9
|
+
- `label` (string, optional): Field label text (supports template evaluation).
|
|
10
|
+
- `placeholder` (string, optional): Placeholder text (supports template evaluation).
|
|
11
|
+
- `inputType` (string, optional): HTML input type (default: "text", supports template evaluation).
|
|
12
|
+
- `attributes` (object, optional): Attributes applied to the Form.Group container.
|
|
13
|
+
- `inputAttributes` (object, optional): Attributes applied directly to the input element.
|
|
14
|
+
- `actions` (array, optional): Actions to execute based on field state.
|
|
15
15
|
|
|
16
16
|
## Data Management
|
|
17
17
|
|
|
@@ -7,15 +7,45 @@ renderView:
|
|
|
7
7
|
|
|
8
8
|
## Properties
|
|
9
9
|
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
-
|
|
17
|
-
|
|
10
|
+
- type: DefinitionList
|
|
11
|
+
content:
|
|
12
|
+
- term:
|
|
13
|
+
code: dataLocation
|
|
14
|
+
after: "(string, optional)"
|
|
15
|
+
details: "Path to bind the field value in the data context."
|
|
16
|
+
- term:
|
|
17
|
+
code: defaultFieldValue
|
|
18
|
+
after: "(string, optional)"
|
|
19
|
+
details: "Default value when no data is present."
|
|
20
|
+
- term:
|
|
21
|
+
code: label
|
|
22
|
+
after: "(string, optional)"
|
|
23
|
+
details: "Field label text (supports template evaluation)."
|
|
24
|
+
- term:
|
|
25
|
+
code: placeholder
|
|
26
|
+
after: "(string, optional)"
|
|
27
|
+
details: "Placeholder text (supports template evaluation)."
|
|
28
|
+
- term:
|
|
29
|
+
code: inputType
|
|
30
|
+
after: "(string, optional)"
|
|
31
|
+
details:
|
|
32
|
+
type: Markdown
|
|
33
|
+
content: "HTML input type (default: \"text\", supports template evaluation)."
|
|
34
|
+
- term:
|
|
35
|
+
code: attributes
|
|
36
|
+
after: "(object, optional)"
|
|
37
|
+
details: "Attributes applied to the Form.Group container."
|
|
38
|
+
- term:
|
|
39
|
+
code: inputAttributes
|
|
40
|
+
after: "(object, optional)"
|
|
41
|
+
details: "Attributes applied directly to the input element."
|
|
42
|
+
- term:
|
|
43
|
+
code: actions
|
|
44
|
+
after: "(array, optional)"
|
|
45
|
+
details: "Actions to execute based on field state."
|
|
18
46
|
|
|
47
|
+
- type: Markdown
|
|
48
|
+
content: |
|
|
19
49
|
## Data Management
|
|
20
50
|
|
|
21
51
|
The component automatically synchronizes its value with the global data context. When using `dataLocation`, the value is stored at the specified path. Without `dataLocation`, the value is stored in the template context using the component's `datafield`.
|
|
@@ -1,7 +1,5 @@
|
|
|
1
1
|
# Form Elements Common Utilities
|
|
2
2
|
|
|
3
|
-
## Introduction
|
|
4
|
-
|
|
5
3
|
The `formElementsCommon.jsx` file provides shared utilities for all form components in Reactive-JSON. These utilities handle data location resolution, path calculation, and default value management.
|
|
6
4
|
|
|
7
5
|
## propsDataLocationToPathAndValue Function
|
|
@@ -27,13 +25,13 @@ Returns an object with:
|
|
|
27
25
|
|
|
28
26
|
The function implements two data binding strategies:
|
|
29
27
|
|
|
30
|
-
####
|
|
28
|
+
#### Custom Data Location
|
|
31
29
|
When `dataLocation` is provided:
|
|
32
30
|
- Evaluates the template value at the specified location
|
|
33
31
|
- Uses the resolved path for data updates
|
|
34
32
|
- Falls back to `defaultValue` if the location is undefined
|
|
35
33
|
|
|
36
|
-
####
|
|
34
|
+
#### Template-Scoped Data
|
|
37
35
|
When no `dataLocation` is provided:
|
|
38
36
|
- Uses the component's `datafield` as the key
|
|
39
37
|
- Stores data in the template context under this key
|
|
@@ -1,7 +1,5 @@
|
|
|
1
1
|
# Form Elements
|
|
2
2
|
|
|
3
|
-
## Introduction
|
|
4
|
-
|
|
5
3
|
Form elements in Reactive-JSON provide interactive input components based on React Bootstrap. These components automatically manage state through the global data context and support template evaluation for dynamic content.
|
|
6
4
|
|
|
7
5
|
All form elements support:
|