@ea-lab/reactive-json-docs 0.7.0 → 1.0.0-alpha.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 +7 -5
- 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/advanced-concepts/plugins/plugin-system.md +47 -1
- package/public/rjbuild/docs/advanced-concepts/plugins/plugin-system.yaml +53 -1
- 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/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/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 +90 -60
- 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/Input.md +307 -0
- package/public/rjbuild/docs/core/element/form/Input.yaml +572 -0
- 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/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/special/Count.md +8 -10
- package/public/rjbuild/docs/core/element/special/Count.yaml +121 -40
- package/public/rjbuild/docs/core/element/special/DataFilter.md +40 -41
- package/public/rjbuild/docs/core/element/special/DataFilter.yaml +197 -81
- 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 +167 -49
- package/public/rjbuild/docs/core/element/special/Switch.md +36 -38
- package/public/rjbuild/docs/core/element/special/Switch.yaml +68 -40
- package/public/rjbuild/docs/core/example/html.md +2 -2
- package/public/rjbuild/docs/core/example/html.yaml +2 -3
- package/public/rjbuild/docs/core/example/native-html-forms.md +245 -0
- package/public/rjbuild/docs/core/example/native-html-forms.yaml +393 -0
- package/public/rjbuild/docs/core/reaction/addData.md +17 -5
- package/public/rjbuild/docs/core/reaction/addData.yaml +70 -11
- package/public/rjbuild/docs/core/reaction/fetchData.md +1 -2
- package/public/rjbuild/docs/core/reaction/fetchData.yaml +84 -19
- 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 +18 -8
- package/public/rjbuild/docs/core/reaction/setData.yaml +43 -11
- 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/docs-components/Mermaid.md +254 -0
- package/public/rjbuild/docs/docs-components/Mermaid.yaml +339 -0
- package/public/rjbuild/docs/docs-components/index.yaml +1 -0
- package/public/rjbuild/docs/getting-started/actions.md +1 -1
- package/public/rjbuild/docs/index.yaml +2 -1
- package/public/rjbuild/docs/install.md +26 -29
- package/public/rjbuild/docs/install.yaml +4 -10
- package/public/rjbuild/docs/integration/bootstrap/action/Popover.md +26 -0
- package/public/rjbuild/docs/{core → integration/bootstrap}/action/Popover.yaml +28 -5
- package/public/rjbuild/docs/{core → integration/bootstrap}/action/Tooltip.md +4 -4
- package/public/rjbuild/docs/{core → integration/bootstrap}/action/Tooltip.yaml +16 -3
- package/public/rjbuild/docs/{core → integration/bootstrap}/element/form/CheckBoxField.md +8 -8
- package/public/rjbuild/docs/{core → integration/bootstrap}/element/form/CheckBoxField.yaml +40 -8
- package/public/rjbuild/docs/{core → integration/bootstrap}/element/form/DateField.md +5 -5
- package/public/rjbuild/docs/{core → integration/bootstrap}/element/form/DateField.yaml +27 -5
- package/public/rjbuild/docs/{core → integration/bootstrap}/element/form/NumberField.md +7 -7
- package/public/rjbuild/docs/{core → integration/bootstrap}/element/form/NumberField.yaml +32 -7
- package/public/rjbuild/docs/{core → integration/bootstrap}/element/form/SelectField.md +9 -9
- package/public/rjbuild/docs/{core → integration/bootstrap}/element/form/SelectField.yaml +46 -9
- package/public/rjbuild/docs/{core → integration/bootstrap}/element/form/TextAreaField.md +8 -8
- package/public/rjbuild/docs/{core → integration/bootstrap}/element/form/TextAreaField.yaml +36 -8
- package/public/rjbuild/docs/{core → integration/bootstrap}/element/form/TextField.md +8 -8
- package/public/rjbuild/docs/{core → integration/bootstrap}/element/form/TextField.yaml +38 -8
- package/public/rjbuild/docs/{core → integration/bootstrap}/element/form/formElementsCommon.md +2 -4
- package/public/rjbuild/docs/{core → integration/bootstrap}/element/form/index.md +0 -2
- package/public/rjbuild/docs/integration/bootstrap/element/html/AccordionItem.md +69 -0
- package/public/rjbuild/docs/{core → integration/bootstrap}/element/html/AccordionItem.yaml +19 -7
- package/public/rjbuild/docs/integration/bootstrap/element/html/Modal.md +127 -0
- package/public/rjbuild/docs/{core → integration/bootstrap}/element/html/Modal.yaml +35 -12
- package/public/rjbuild/docs/integration/bootstrap/element/html/Tabs.md +150 -0
- package/public/rjbuild/docs/{core → integration/bootstrap}/element/html/Tabs.yaml +24 -15
- package/public/rjbuild/docs/integration/bootstrap/element/html/index.md +13 -0
- package/public/rjbuild/docs/{core → integration/bootstrap}/element/special/BootstrapElement.md +4 -6
- package/public/rjbuild/docs/integration/bootstrap/element/special/BootstrapElement.yaml +29 -0
- package/public/rjbuild/docs/integration/bootstrap/element/special/index.md +19 -0
- package/public/rjbuild/docs/integration/bootstrap/example/website.md +41 -0
- package/public/rjbuild/docs/integration/bootstrap/overview.md +69 -0
- package/public/rjbuild/docs/integration/bootstrap/overview.yaml +87 -0
- package/public/rjbuild/docs/core/action/Popover.md +0 -26
- package/public/rjbuild/docs/core/element/special/BootstrapElement.yaml +0 -18
- /package/public/rjbuild/docs/{core → integration/bootstrap}/element/form/index.yaml +0 -0
- /package/public/rjbuild/docs/{core → integration/bootstrap}/example/accordion.md +0 -0
- /package/public/rjbuild/docs/{core → integration/bootstrap}/example/accordion.yaml +0 -0
- /package/public/rjbuild/docs/{core → integration/bootstrap}/example/dynamic-content.md +0 -0
- /package/public/rjbuild/docs/{core → integration/bootstrap}/example/dynamic-content.yaml +0 -0
- /package/public/rjbuild/docs/{core → integration/bootstrap}/example/website.yaml +0 -0
- /package/public/rjbuild/docs/{chartjs → integration/chartjs}/components.yaml +0 -0
- /package/public/rjbuild/docs/{chartjs → integration/chartjs}/overview.yaml +0 -0
|
@@ -6,35 +6,71 @@ renderView:
|
|
|
6
6
|
The `DataFilter` component allows you to filter data from the global or template context before rendering its content. It is particularly useful for conditional display of elements based on dynamic complex criteria, such as filtering lists, trees, or data subsets.
|
|
7
7
|
|
|
8
8
|
## Properties
|
|
9
|
-
- `filters` (array, required): Array of filter objects, each specifying properties and conditions to check
|
|
10
|
-
- `subjectsWithProperty` (string): Property to check in the data, acts as namespace
|
|
11
|
-
- `andConditions` (array): List of conditions that must all be true
|
|
12
|
-
- `orConditions` (array): List of conditions where at least one must be true
|
|
13
|
-
- Available conditions:
|
|
14
|
-
- `when`: Checks a condition on a value
|
|
15
|
-
- `is`: Compares exact equality
|
|
16
|
-
- `isNot`: Checks inequality
|
|
17
|
-
- `isEmpty`: Checks if a value is empty
|
|
18
|
-
- `contains`: Checks if a value contains a substring
|
|
19
|
-
- `>=`, `<=`, `>`, `<`: Numeric comparisons
|
|
20
|
-
- `compareAsDates`: Boolean to compare values as dates
|
|
21
|
-
- `whenFilterableData`: Specifies the data path to filter, must include the namespace
|
|
22
|
-
- `context` (string, optional): Context to filter (`global` or `template`). Default: `global`
|
|
23
|
-
- `content` (object/array, required): Content to render after filtering
|
|
24
9
|
|
|
10
|
+
- type: DefinitionList
|
|
11
|
+
content:
|
|
12
|
+
- term:
|
|
13
|
+
code: filters
|
|
14
|
+
after: "(array, required)"
|
|
15
|
+
details:
|
|
16
|
+
- type: Markdown
|
|
17
|
+
content: "Array of filter objects, each specifying properties and conditions to check:"
|
|
18
|
+
- type: DefinitionList
|
|
19
|
+
content:
|
|
20
|
+
- term:
|
|
21
|
+
code: subjectsWithProperty
|
|
22
|
+
after: "(string)"
|
|
23
|
+
details: Property to check in the data, acts as namespace.
|
|
24
|
+
- term:
|
|
25
|
+
code: andConditions
|
|
26
|
+
after: "(array)"
|
|
27
|
+
details: List of conditions that must all be true.
|
|
28
|
+
- term:
|
|
29
|
+
code: orConditions
|
|
30
|
+
after: "(array)"
|
|
31
|
+
details: List of conditions where at least one must be true.
|
|
32
|
+
- term:
|
|
33
|
+
code: availableConditions
|
|
34
|
+
after: "(info)"
|
|
35
|
+
details:
|
|
36
|
+
type: Markdown
|
|
37
|
+
content: |
|
|
38
|
+
Available condition keys inside conditions objects:
|
|
39
|
+
- `when`: Checks a condition on a value.
|
|
40
|
+
- `is`: Compares exact equality.
|
|
41
|
+
- `isNot`: Checks inequality.
|
|
42
|
+
- `isEmpty`: Checks if a value is empty.
|
|
43
|
+
- `isNotEmpty`: Checks if a value is not empty.
|
|
44
|
+
- `contains`: Checks if a value contains a substring.
|
|
45
|
+
- `>=`, `<=`, `>`, `<`: Numeric comparisons.
|
|
46
|
+
- `compareAsDates`: Boolean to compare values as dates.
|
|
47
|
+
- `whenFilterableData`: Specifies the data path to filter, must include the namespace.
|
|
48
|
+
- term:
|
|
49
|
+
code: context
|
|
50
|
+
after: "(string, optional)"
|
|
51
|
+
details:
|
|
52
|
+
type: Markdown
|
|
53
|
+
content: "Context to filter (`global` or `template`). Default: `global`."
|
|
54
|
+
- term:
|
|
55
|
+
code: content
|
|
56
|
+
after: "(object|array, required)"
|
|
57
|
+
details: Content to render after filtering.
|
|
58
|
+
|
|
59
|
+
- type: Markdown
|
|
60
|
+
content: |
|
|
25
61
|
## Behavior
|
|
26
|
-
- Applies all filters to the selected context before content rendering
|
|
27
|
-
- Supports complex filtering conditions with `andConditions` and `orConditions
|
|
28
|
-
- Allows recursive filtering while preserving data structure
|
|
29
|
-
- Can be combined with other components to create interactive filtering interfaces
|
|
62
|
+
- Applies all filters to the selected context before content rendering.
|
|
63
|
+
- Supports complex filtering conditions with `andConditions` and `orConditions`.
|
|
64
|
+
- Allows recursive filtering while preserving data structure.
|
|
65
|
+
- Can be combined with other components to create interactive filtering interfaces.
|
|
30
66
|
- Supports dynamic filtering based on application state
|
|
31
67
|
|
|
32
68
|
## Filterable Data Structure
|
|
33
|
-
|
|
69
|
+
|
|
34
70
|
DataFilter uses a specific pattern to identify and filter data. This pattern relies on an identification key (namespace) that must be consistent between the data structure and filtering conditions.
|
|
35
|
-
|
|
71
|
+
|
|
36
72
|
### Namespace Pattern
|
|
37
|
-
|
|
73
|
+
|
|
38
74
|
1. **In the data structure**:
|
|
39
75
|
```yaml
|
|
40
76
|
data:
|
|
@@ -46,7 +82,7 @@ renderView:
|
|
|
46
82
|
id: 2
|
|
47
83
|
title: "..."
|
|
48
84
|
```
|
|
49
|
-
|
|
85
|
+
|
|
50
86
|
2. **In filtering conditions**:
|
|
51
87
|
```yaml
|
|
52
88
|
type: DataFilter
|
|
@@ -58,12 +94,12 @@ renderView:
|
|
|
58
94
|
- whenFilterableData: item.title # <- Uses the namespace
|
|
59
95
|
contains: "..."
|
|
60
96
|
```
|
|
61
|
-
|
|
97
|
+
|
|
62
98
|
The identification key (here "item"):
|
|
63
|
-
- Can have any name (`itemXyz`, `element`, etc.)
|
|
64
|
-
- Must be consistent between data structure and conditions
|
|
65
|
-
- Serves as a namespace for accessing properties in `whenFilterableData
|
|
66
|
-
- Is required for DataFilter to correctly identify filterable elements
|
|
99
|
+
- Can have any name (`itemXyz`, `element`, etc.).
|
|
100
|
+
- Must be consistent between data structure and conditions.
|
|
101
|
+
- Serves as a namespace for accessing properties in `whenFilterableData`.
|
|
102
|
+
- Is required for DataFilter to correctly identify filterable elements.
|
|
67
103
|
|
|
68
104
|
- type: RjBuildDescriber
|
|
69
105
|
title: Advanced Example
|
|
@@ -79,7 +115,11 @@ renderView:
|
|
|
79
115
|
content:
|
|
80
116
|
- type: div
|
|
81
117
|
attributes:
|
|
82
|
-
|
|
118
|
+
style:
|
|
119
|
+
width: "48%"
|
|
120
|
+
display: "inline-block"
|
|
121
|
+
verticalAlign: "top"
|
|
122
|
+
marginRight: "2%"
|
|
83
123
|
content:
|
|
84
124
|
- type: div
|
|
85
125
|
attributes:
|
|
@@ -107,7 +147,11 @@ renderView:
|
|
|
107
147
|
load: item
|
|
108
148
|
- type: div
|
|
109
149
|
attributes:
|
|
110
|
-
|
|
150
|
+
style:
|
|
151
|
+
width: "48%"
|
|
152
|
+
display: "inline-block"
|
|
153
|
+
verticalAlign: "top"
|
|
154
|
+
marginRight: "2%"
|
|
111
155
|
content:
|
|
112
156
|
- type: div
|
|
113
157
|
attributes:
|
|
@@ -167,7 +211,8 @@ renderView:
|
|
|
167
211
|
content:
|
|
168
212
|
- type: div
|
|
169
213
|
attributes:
|
|
170
|
-
|
|
214
|
+
style:
|
|
215
|
+
width: "100%"
|
|
171
216
|
content:
|
|
172
217
|
- type: div
|
|
173
218
|
attributes:
|
|
@@ -192,70 +237,140 @@ renderView:
|
|
|
192
237
|
content:
|
|
193
238
|
- type: div
|
|
194
239
|
attributes:
|
|
195
|
-
|
|
240
|
+
style:
|
|
241
|
+
width: "32%"
|
|
242
|
+
display: "inline-block"
|
|
243
|
+
verticalAlign: "top"
|
|
244
|
+
marginRight: "1%"
|
|
196
245
|
content:
|
|
197
|
-
- type:
|
|
198
|
-
|
|
199
|
-
|
|
246
|
+
- type: input
|
|
247
|
+
attributes:
|
|
248
|
+
type: "text"
|
|
249
|
+
placeholder: "Search..."
|
|
250
|
+
value: ~~._filters.search
|
|
251
|
+
style:
|
|
252
|
+
padding: "8px"
|
|
253
|
+
border: "1px solid #ccc"
|
|
254
|
+
borderRadius: "4px"
|
|
255
|
+
width: "100%"
|
|
256
|
+
actions:
|
|
257
|
+
- what: setData
|
|
258
|
+
on: input
|
|
259
|
+
path: ~~._filters.search
|
|
260
|
+
value: "<reactive-json:event-new-value>"
|
|
200
261
|
- type: div
|
|
201
262
|
attributes:
|
|
202
|
-
|
|
263
|
+
style:
|
|
264
|
+
width: "32%"
|
|
265
|
+
display: "inline-block"
|
|
266
|
+
verticalAlign: "top"
|
|
267
|
+
marginRight: "1%"
|
|
203
268
|
content:
|
|
204
|
-
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
269
|
+
- type: input
|
|
270
|
+
attributes:
|
|
271
|
+
type: "date"
|
|
272
|
+
value: ~~._filters.since
|
|
273
|
+
style:
|
|
274
|
+
padding: "8px"
|
|
275
|
+
border: "1px solid #ccc"
|
|
276
|
+
borderRadius: "4px"
|
|
277
|
+
actions:
|
|
278
|
+
- what: setData
|
|
279
|
+
on: input
|
|
280
|
+
path: ~~._filters.since
|
|
281
|
+
value: "<reactive-json:event-new-value>"
|
|
208
282
|
- type: div
|
|
209
283
|
attributes:
|
|
210
|
-
|
|
284
|
+
style:
|
|
285
|
+
width: "32%"
|
|
286
|
+
display: "inline-block"
|
|
287
|
+
verticalAlign: "top"
|
|
288
|
+
marginRight: "1%"
|
|
211
289
|
content:
|
|
212
|
-
- type:
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
290
|
+
- type: select
|
|
291
|
+
attributes:
|
|
292
|
+
value: ~~._filters.status
|
|
293
|
+
style:
|
|
294
|
+
padding: "8px"
|
|
295
|
+
border: "1px solid #ccc"
|
|
296
|
+
borderRadius: "4px"
|
|
297
|
+
width: "100%"
|
|
298
|
+
content:
|
|
299
|
+
- type: option
|
|
300
|
+
attributes:
|
|
301
|
+
value: "all"
|
|
302
|
+
content: "All"
|
|
303
|
+
- type: option
|
|
304
|
+
attributes:
|
|
305
|
+
value: "active_only"
|
|
306
|
+
content: "Active only"
|
|
307
|
+
actions:
|
|
308
|
+
- what: setData
|
|
309
|
+
on: change
|
|
310
|
+
path: ~~._filters.status
|
|
311
|
+
value: "<reactive-json:event-new-value>"
|
|
219
312
|
|
|
220
313
|
templates:
|
|
221
314
|
item:
|
|
222
315
|
type: div
|
|
223
316
|
attributes:
|
|
224
|
-
|
|
317
|
+
style:
|
|
318
|
+
display: "flex"
|
|
319
|
+
justifyContent: "space-between"
|
|
320
|
+
alignItems: "center"
|
|
321
|
+
padding: "16px 0"
|
|
322
|
+
borderTop: "1px solid #ddd"
|
|
323
|
+
borderBottom: "1px solid #ddd"
|
|
225
324
|
content:
|
|
226
325
|
- type: div
|
|
227
326
|
attributes:
|
|
228
|
-
|
|
327
|
+
style:
|
|
328
|
+
display: "flex"
|
|
329
|
+
alignItems: "center"
|
|
330
|
+
gap: "12px"
|
|
229
331
|
content:
|
|
230
|
-
- type:
|
|
332
|
+
- type: input
|
|
231
333
|
attributes:
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
334
|
+
type: "checkbox"
|
|
335
|
+
checked: ~.item.isSelected
|
|
336
|
+
style:
|
|
337
|
+
margin: "0 8px 0 0"
|
|
338
|
+
actions:
|
|
339
|
+
- what: setData
|
|
340
|
+
on: change
|
|
341
|
+
path: ~.item.isSelected
|
|
342
|
+
value: "<reactive-json:event-new-value>"
|
|
237
343
|
- type: div
|
|
238
344
|
attributes:
|
|
239
|
-
|
|
345
|
+
style:
|
|
346
|
+
display: "flex"
|
|
347
|
+
flexDirection: "column"
|
|
240
348
|
content:
|
|
241
349
|
- type: div
|
|
242
350
|
attributes:
|
|
243
|
-
|
|
351
|
+
style:
|
|
352
|
+
fontWeight: "bold"
|
|
353
|
+
marginBottom: "4px"
|
|
244
354
|
content: ~.item.searchableContent
|
|
245
355
|
- type: div
|
|
246
356
|
attributes:
|
|
247
|
-
|
|
357
|
+
style:
|
|
358
|
+
color: "#6c757d"
|
|
359
|
+
fontSize: "0.875rem"
|
|
248
360
|
content: ~.item.creationDate
|
|
249
361
|
- type: div
|
|
250
362
|
attributes:
|
|
251
|
-
|
|
363
|
+
style:
|
|
364
|
+
display: "flex"
|
|
365
|
+
gap: "8px"
|
|
252
366
|
content:
|
|
253
367
|
- type: span
|
|
254
368
|
attributes:
|
|
255
|
-
class: "badge rounded-pill"
|
|
256
369
|
style:
|
|
257
|
-
|
|
258
|
-
|
|
370
|
+
border: "1px solid #198754"
|
|
371
|
+
padding: "4px 8px"
|
|
372
|
+
borderRadius: "12px"
|
|
373
|
+
fontSize: "0.75rem"
|
|
259
374
|
content: ~.item.status
|
|
260
375
|
actions:
|
|
261
376
|
- what: hide
|
|
@@ -263,10 +378,11 @@ renderView:
|
|
|
263
378
|
isNot: active
|
|
264
379
|
- type: span
|
|
265
380
|
attributes:
|
|
266
|
-
class: "badge rounded-pill"
|
|
267
381
|
style:
|
|
268
|
-
|
|
269
|
-
|
|
382
|
+
border: "1px solid #dc3545"
|
|
383
|
+
padding: "4px 8px"
|
|
384
|
+
borderRadius: "12px"
|
|
385
|
+
fontSize: "0.75rem"
|
|
270
386
|
content: ~.item.status
|
|
271
387
|
actions:
|
|
272
388
|
- what: hide
|
|
@@ -294,22 +410,22 @@ renderView:
|
|
|
294
410
|
- type: Markdown
|
|
295
411
|
content: |
|
|
296
412
|
## Advanced Use Cases
|
|
297
|
-
- Multi-criteria filtering with combined conditions
|
|
298
|
-
- Real-time search interface
|
|
299
|
-
- Hierarchical data filtering (trees, sub-elements)
|
|
300
|
-
- Complex state management (conflicts, modifications, new elements)
|
|
301
|
-
- Integration with pagination components
|
|
302
|
-
- Date-based filtering and numeric comparisons
|
|
413
|
+
- Multi-criteria filtering with combined conditions.
|
|
414
|
+
- Real-time search interface.
|
|
415
|
+
- Hierarchical data filtering (trees, sub-elements).
|
|
416
|
+
- Complex state management (conflicts, modifications, new elements).
|
|
417
|
+
- Integration with pagination components.
|
|
418
|
+
- Date-based filtering and numeric comparisons.
|
|
303
419
|
|
|
304
420
|
## Best Practices
|
|
305
|
-
- Organize filters by logical category
|
|
306
|
-
- Use comments to document complex conditions
|
|
307
|
-
- Combine with UI components for interactive experience
|
|
308
|
-
- Consider performance with large datasets
|
|
309
|
-
- Use reusable templates for common filters
|
|
421
|
+
- Organize filters by logical category.
|
|
422
|
+
- Use comments to document complex conditions.
|
|
423
|
+
- Combine with UI components for interactive experience.
|
|
424
|
+
- Consider performance with large datasets.
|
|
425
|
+
- Use reusable templates for common filters.
|
|
310
426
|
|
|
311
427
|
## Limitations
|
|
312
|
-
- Filtering is based on simple comparisons
|
|
313
|
-
- Performance may be impacted with very large datasets
|
|
314
|
-
- Does not support custom filtering functions
|
|
315
|
-
- Filtering is applied recursively on the entire structure
|
|
428
|
+
- Filtering is based on simple comparisons.
|
|
429
|
+
- Performance may be impacted with very large datasets.
|
|
430
|
+
- Does not support custom filtering functions.
|
|
431
|
+
- Filtering is applied recursively on the entire structure.
|
|
@@ -1,21 +1,19 @@
|
|
|
1
1
|
# DelayedActions
|
|
2
2
|
|
|
3
|
-
## Introduction
|
|
4
|
-
|
|
5
3
|
The `DelayedActions` component allows you to execute one or more actions after a delay or at regular intervals. It is useful for implementing polling, periodic updates, or delayed reactions in your Reactive-JSON applications.
|
|
6
4
|
|
|
7
5
|
## Properties
|
|
8
|
-
- `delayedActions` (array, required): Array of action objects to execute after the delay or at each interval
|
|
9
|
-
- `interval` (number, required): The delay or interval in milliseconds between executions
|
|
10
|
-
- `once` (boolean, optional): If true, actions are executed only once after the delay; if false (default), actions repeat at each interval
|
|
11
|
-
- `content` (object/array, optional): Content to render inside the component
|
|
6
|
+
- `delayedActions` (array, required): Array of action objects to execute after the delay or at each interval.
|
|
7
|
+
- `interval` (number, required): The delay or interval in milliseconds between executions.
|
|
8
|
+
- `once` (boolean, optional): If true, actions are executed only once after the delay; if false (default), actions repeat at each interval.
|
|
9
|
+
- `content` (object/array, optional): Content to render inside the component.
|
|
12
10
|
|
|
13
11
|
## Behavior
|
|
14
|
-
- Executes all actions in `delayedActions` after the specified delay or at each interval
|
|
15
|
-
- If `once` is true, actions are executed only once; otherwise, they repeat at each interval
|
|
16
|
-
- Actions are executed without requiring a user event (time is the trigger)
|
|
17
|
-
- The component can render content, but the main purpose is to trigger actions
|
|
18
|
-
- If `interval` is not provided, no actions are executed
|
|
12
|
+
- Executes all actions in `delayedActions` after the specified delay or at each interval.
|
|
13
|
+
- If `once` is true, actions are executed only once; otherwise, they repeat at each interval.
|
|
14
|
+
- Actions are executed without requiring a user event (time is the trigger).
|
|
15
|
+
- The component can render content, but the main purpose is to trigger actions.
|
|
16
|
+
- If `interval` is not provided, no actions are executed.
|
|
19
17
|
|
|
20
18
|
## Example
|
|
21
19
|
```yaml
|
|
@@ -45,7 +43,7 @@ data: {}
|
|
|
45
43
|
```
|
|
46
44
|
|
|
47
45
|
## Limitations
|
|
48
|
-
- Only supports time-based triggering (no event-based delay)
|
|
49
|
-
- All actions are executed in the order provided
|
|
50
|
-
- No built-in error handling for action execution
|
|
51
|
-
- If `interval` is missing or invalid, nothing happens
|
|
46
|
+
- Only supports time-based triggering (no event-based delay).
|
|
47
|
+
- All actions are executed in the order provided.
|
|
48
|
+
- No built-in error handling for action execution.
|
|
49
|
+
- If `interval` is missing or invalid, nothing happens.
|
|
@@ -6,17 +6,36 @@ renderView:
|
|
|
6
6
|
The `DelayedActions` component allows you to execute one or more actions after a delay or at regular intervals. It is useful for implementing polling, periodic updates, or delayed reactions in your Reactive-JSON applications.
|
|
7
7
|
|
|
8
8
|
## Properties
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
-
|
|
9
|
+
|
|
10
|
+
- type: DefinitionList
|
|
11
|
+
content:
|
|
12
|
+
- term:
|
|
13
|
+
code: delayedActions
|
|
14
|
+
after: "(array, required)"
|
|
15
|
+
details:
|
|
16
|
+
type: Markdown
|
|
17
|
+
content: "Array of action objects to execute after the delay or at each interval."
|
|
18
|
+
- term:
|
|
19
|
+
code: interval
|
|
20
|
+
after: "(number, required)"
|
|
21
|
+
details: "The delay or interval in milliseconds between executions."
|
|
22
|
+
- term:
|
|
23
|
+
code: once
|
|
24
|
+
after: "(boolean, optional)"
|
|
25
|
+
details:
|
|
26
|
+
type: Markdown
|
|
27
|
+
content: "If `true`, actions execute only once after the delay; if `false` (default), actions repeat at each interval."
|
|
28
|
+
- term:
|
|
29
|
+
code: content
|
|
30
|
+
after: "(object|array, optional)"
|
|
31
|
+
details: "Content to render inside the component."
|
|
13
32
|
|
|
14
33
|
## Behavior
|
|
15
|
-
- Executes all actions in `delayedActions` after the specified delay or at each interval
|
|
16
|
-
- If `once` is true, actions are executed only once; otherwise, they repeat at each interval
|
|
17
|
-
- Actions are executed without requiring a user event (time is the trigger)
|
|
18
|
-
- The component can render content, but the main purpose is to trigger actions
|
|
19
|
-
- If `interval` is not provided, no actions are executed
|
|
34
|
+
- Executes all actions in `delayedActions` after the specified delay or at each interval.
|
|
35
|
+
- If `once` is true, actions are executed only once; otherwise, they repeat at each interval.
|
|
36
|
+
- Actions are executed without requiring a user event (time is the trigger).
|
|
37
|
+
- The component can render content, but the main purpose is to trigger actions.
|
|
38
|
+
- If `interval` is not provided, no actions are executed.
|
|
20
39
|
|
|
21
40
|
- type: RjBuildDescriber
|
|
22
41
|
title: Example
|
|
@@ -49,7 +68,7 @@ renderView:
|
|
|
49
68
|
- type: Markdown
|
|
50
69
|
content: |
|
|
51
70
|
## Limitations
|
|
52
|
-
- Only supports time-based triggering (no event-based delay)
|
|
53
|
-
- All actions are executed in the order provided
|
|
54
|
-
- No built-in error handling for action execution
|
|
55
|
-
- If `interval` is missing or invalid, nothing happens
|
|
71
|
+
- Only supports time-based triggering (no event-based delay).
|
|
72
|
+
- All actions are executed in the order provided.
|
|
73
|
+
- No built-in error handling for action execution.
|
|
74
|
+
- If `interval` is missing or invalid, nothing happens.
|
|
@@ -1,16 +1,14 @@
|
|
|
1
1
|
# PageControls
|
|
2
2
|
|
|
3
|
-
## Introduction
|
|
4
|
-
|
|
5
3
|
The `PageControls` component displays the pagination controls provided by the current `PaginationContext`. It is useful for rendering navigation controls (such as next/previous buttons or page numbers) in paginated lists or tables.
|
|
6
4
|
|
|
7
5
|
## Properties
|
|
8
|
-
|
|
6
|
+
None.
|
|
9
7
|
|
|
10
8
|
## Behavior
|
|
11
|
-
- Renders the pagination controls from the current `PaginationContext` if available
|
|
12
|
-
- If no pagination controls are present in the context, renders nothing
|
|
13
|
-
- Intended to be used inside paginated views or lists
|
|
9
|
+
- Renders the pagination controls from the current `PaginationContext` if available.
|
|
10
|
+
- If no pagination controls are present in the context, renders nothing.
|
|
11
|
+
- Intended to be used inside paginated views or lists.
|
|
14
12
|
|
|
15
13
|
## Pagination Context
|
|
16
14
|
The pagination context is provided by components like `Switch` when the `paginated` property is set to `true`.
|
|
@@ -120,7 +118,7 @@ data:
|
|
|
120
118
|
```
|
|
121
119
|
|
|
122
120
|
## Limitations
|
|
123
|
-
- Only works if a `PaginationContext` is present and provides controls
|
|
124
|
-
- Does not manage pagination state itself; only renders controls from the context
|
|
125
|
-
- No customization of the controls via props
|
|
126
|
-
- Entirely depends on the parent component (like Switch) for pagination logic
|
|
121
|
+
- Only works if a `PaginationContext` is present and provides controls.
|
|
122
|
+
- Does not manage pagination state itself; only renders controls from the context.
|
|
123
|
+
- No customization of the controls via props.
|
|
124
|
+
- Entirely depends on the parent component (like Switch) for pagination logic.
|
|
@@ -6,12 +6,13 @@ renderView:
|
|
|
6
6
|
The `PageControls` component displays the pagination controls provided by the current `PaginationContext`. It is useful for rendering navigation controls (such as next/previous buttons or page numbers) in paginated lists or tables.
|
|
7
7
|
|
|
8
8
|
## Properties
|
|
9
|
-
|
|
9
|
+
|
|
10
|
+
None.
|
|
10
11
|
|
|
11
12
|
## Behavior
|
|
12
|
-
- Renders the pagination controls from the current `PaginationContext` if available
|
|
13
|
-
- If no pagination controls are present in the context, renders nothing
|
|
14
|
-
- Intended to be used inside paginated views or lists
|
|
13
|
+
- Renders the pagination controls from the current `PaginationContext` if available.
|
|
14
|
+
- If no pagination controls are present in the context, renders nothing.
|
|
15
|
+
- Intended to be used inside paginated views or lists.
|
|
15
16
|
|
|
16
17
|
## Pagination Context
|
|
17
18
|
The pagination context is provided by components like `Switch` when the `paginated` property is set to `true`.
|
|
@@ -123,10 +124,10 @@ renderView:
|
|
|
123
124
|
- type: Markdown
|
|
124
125
|
content: |
|
|
125
126
|
## Limitations
|
|
126
|
-
- Only works if a `PaginationContext` is present and provides controls
|
|
127
|
-
- Does not manage pagination state itself; only renders controls from the context
|
|
128
|
-
- No customization of the controls via props
|
|
129
|
-
- Entirely depends on the parent component (like Switch) for pagination logic
|
|
127
|
+
- Only works if a `PaginationContext` is present and provides controls.
|
|
128
|
+
- Does not manage pagination state itself; only renders controls from the context.
|
|
129
|
+
- No customization of the controls via props.
|
|
130
|
+
- Entirely depends on the parent component (like Switch) for pagination logic.
|
|
130
131
|
|
|
131
132
|
templates:
|
|
132
133
|
|
|
@@ -1,18 +1,16 @@
|
|
|
1
1
|
# Phantom
|
|
2
2
|
|
|
3
|
-
## Introduction
|
|
4
|
-
|
|
5
3
|
The `Phantom` component allows you to define actions or logic in your rjbuild without rendering any DOM element. It is useful for triggering actions, conditions, or data manipulations invisibly, without affecting the visual structure of your application.
|
|
6
4
|
|
|
7
5
|
## Properties
|
|
8
|
-
- `content` (object/array/string, optional): Content to evaluate or trigger (actions, conditions, etc.)
|
|
9
|
-
- `actions` (array, optional): Actions to attach to the phantom logic (e.g., Tooltip)
|
|
6
|
+
- `content` (object/array/string, optional): Content to evaluate or trigger (actions, conditions, etc.).
|
|
7
|
+
- `actions` (array, optional): Actions to attach to the phantom logic (e.g., Tooltip).
|
|
10
8
|
|
|
11
9
|
## Behavior
|
|
12
|
-
- Does not render any visible DOM element
|
|
13
|
-
- Can be used to attach actions, conditions, or data manipulations without UI
|
|
14
|
-
- The `content` property can include any valid Reactive-JSON view, action, or string
|
|
15
|
-
- The `actions` property allows you to attach logic such as tooltips or data updates
|
|
10
|
+
- Does not render any visible DOM element.
|
|
11
|
+
- Can be used to attach actions, conditions, or data manipulations without UI.
|
|
12
|
+
- The `content` property can include any valid Reactive-JSON view, action, or string.
|
|
13
|
+
- The `actions` property allows you to attach logic such as tooltips or data updates.
|
|
16
14
|
|
|
17
15
|
## Example
|
|
18
16
|
```yaml
|
|
@@ -26,6 +24,6 @@ renderView:
|
|
|
26
24
|
```
|
|
27
25
|
|
|
28
26
|
## Limitations
|
|
29
|
-
- Does not produce any visible output in the DOM
|
|
30
|
-
- Only useful for logic, actions, or invisible data manipulations
|
|
31
|
-
- Not intended for displaying content to the user
|
|
27
|
+
- Does not produce any visible output in the DOM.
|
|
28
|
+
- Only useful for logic, actions, or invisible data manipulations.
|
|
29
|
+
- Not intended for displaying content to the user.
|
|
@@ -6,14 +6,27 @@ renderView:
|
|
|
6
6
|
The `Phantom` component allows you to define actions or logic in your rjbuild without rendering any DOM element. It is useful for triggering actions, conditions, or data manipulations invisibly, without affecting the visual structure of your application.
|
|
7
7
|
|
|
8
8
|
## Properties
|
|
9
|
-
- `content` (object/array/string, optional): Content to evaluate or trigger (actions, conditions, etc.)
|
|
10
|
-
- `actions` (array, optional): Actions to attach to the phantom logic (e.g., Tooltip)
|
|
11
9
|
|
|
10
|
+
- type: DefinitionList
|
|
11
|
+
content:
|
|
12
|
+
- term:
|
|
13
|
+
code: content
|
|
14
|
+
after: "(object|array|string, optional)"
|
|
15
|
+
details:
|
|
16
|
+
type: Markdown
|
|
17
|
+
content: "Content to evaluate or trigger (actions, conditions, etc.)."
|
|
18
|
+
- term:
|
|
19
|
+
code: actions
|
|
20
|
+
after: "(array, optional)"
|
|
21
|
+
details: "Actions to attach to the phantom logic (e.g., Tooltip)."
|
|
22
|
+
|
|
23
|
+
- type: Markdown
|
|
24
|
+
content: |
|
|
12
25
|
## Behavior
|
|
13
|
-
- Does not render any visible DOM element
|
|
14
|
-
- Can be used to attach actions, conditions, or data manipulations without UI
|
|
15
|
-
- The `content` property can include any valid Reactive-JSON view, action, or string
|
|
16
|
-
- The `actions` property allows you to attach logic such as tooltips or data updates
|
|
26
|
+
- Does not render any visible DOM element.
|
|
27
|
+
- Can be used to attach actions, conditions, or data manipulations without UI.
|
|
28
|
+
- The `content` property can include any valid Reactive-JSON view, action, or string.
|
|
29
|
+
- The `actions` property allows you to attach logic such as tooltips or data updates.
|
|
17
30
|
|
|
18
31
|
- type: RjBuildDescriber
|
|
19
32
|
title: Example
|
|
@@ -29,6 +42,6 @@ renderView:
|
|
|
29
42
|
- type: Markdown
|
|
30
43
|
content: |
|
|
31
44
|
## Limitations
|
|
32
|
-
- Does not produce any visible output in the DOM
|
|
33
|
-
- Only useful for logic, actions, or invisible data manipulations
|
|
34
|
-
- Not intended for displaying content to the user
|
|
45
|
+
- Does not produce any visible output in the DOM.
|
|
46
|
+
- Only useful for logic, actions, or invisible data manipulations.
|
|
47
|
+
- Not intended for displaying content to the user.
|