@lowdefy/docs-content 0.0.0-experimental-20260710073520
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/LICENSE +201 -0
- package/README.md +20 -0
- package/content/actions/callapi.md +66 -0
- package/content/actions/callmethod.md +41 -0
- package/content/actions/copytoclipboard.md +32 -0
- package/content/actions/displaymessage.md +53 -0
- package/content/actions/downloadcsv.md +89 -0
- package/content/actions/fetch.md +50 -0
- package/content/actions/geolocationcurrentposition.md +56 -0
- package/content/actions/link.md +104 -0
- package/content/actions/login.md +85 -0
- package/content/actions/logout.md +56 -0
- package/content/actions/pdfmake.md +304 -0
- package/content/actions/request.md +67 -0
- package/content/actions/reset.md +27 -0
- package/content/actions/resetvalidation.md +85 -0
- package/content/actions/scrollto.md +85 -0
- package/content/actions/setdarkmode.md +62 -0
- package/content/actions/setfocus.md +33 -0
- package/content/actions/setglobal.md +63 -0
- package/content/actions/setlocale.md +69 -0
- package/content/actions/setstate.md +70 -0
- package/content/actions/throw.md +72 -0
- package/content/actions/validate.md +87 -0
- package/content/actions/wait.md +24 -0
- package/content/agents/agent-endpoint-tools.md +190 -0
- package/content/agents/agent-mcp-tools.md +124 -0
- package/content/agents/agent-multi-agent.md +136 -0
- package/content/agents/agent-properties.md +174 -0
- package/content/agents/agent-server-hooks.md +336 -0
- package/content/agents/agentchat.md +515 -0
- package/content/agents/agentconversations.md +148 -0
- package/content/concepts/ai-agent-docs.md +190 -0
- package/content/concepts/cli.md +213 -0
- package/content/concepts/connections-and-requests.md +7 -0
- package/content/concepts/custom-html.md +3 -0
- package/content/concepts/custom-styling.md +161 -0
- package/content/concepts/events-and-actions.md +271 -0
- package/content/concepts/hosting-files.md +18 -0
- package/content/concepts/i18n.md +320 -0
- package/content/concepts/keyboard-shortcuts.md +218 -0
- package/content/concepts/layout-overview.md +478 -0
- package/content/concepts/lists.md +144 -0
- package/content/concepts/logger.md +43 -0
- package/content/concepts/lowdefy-schema.md +365 -0
- package/content/concepts/menus.md +144 -0
- package/content/concepts/module-authoring.md +564 -0
- package/content/concepts/modules.md +338 -0
- package/content/concepts/operators.md +45 -0
- package/content/concepts/overview.md +19 -0
- package/content/concepts/references-and-templates.md +207 -0
- package/content/concepts/secrets.md +24 -0
- package/content/concepts/selectors.md +143 -0
- package/content/connections/amazonredshift.md +176 -0
- package/content/connections/anthropic.md +232 -0
- package/content/connections/awss3.md +313 -0
- package/content/connections/azureblobstorage.md +133 -0
- package/content/connections/elasticsearch.md +371 -0
- package/content/connections/google.md +228 -0
- package/content/connections/googlecloudstorage.md +139 -0
- package/content/connections/googlesheet.md +313 -0
- package/content/connections/knex.md +206 -0
- package/content/connections/mariadb.md +177 -0
- package/content/connections/mcp.md +134 -0
- package/content/connections/mongodb.md +739 -0
- package/content/connections/mssql.md +191 -0
- package/content/connections/mysql.md +192 -0
- package/content/connections/openai-connection.md +228 -0
- package/content/connections/postgresql.md +200 -0
- package/content/connections/redis.md +116 -0
- package/content/connections/sendgridmail.md +94 -0
- package/content/connections/smtp.md +149 -0
- package/content/connections/sqlite.md +187 -0
- package/content/connections/stripe.md +115 -0
- package/content/container-blocks/affix.md +413 -0
- package/content/container-blocks/alert.md +937 -0
- package/content/container-blocks/badge.md +1222 -0
- package/content/container-blocks/box.md +1453 -0
- package/content/container-blocks/card.md +1200 -0
- package/content/container-blocks/carousel.md +2247 -0
- package/content/container-blocks/collapse.md +1335 -0
- package/content/container-blocks/configprovider.md +1070 -0
- package/content/container-blocks/confirmmodal.md +1159 -0
- package/content/container-blocks/content.md +597 -0
- package/content/container-blocks/descriptions.md +870 -0
- package/content/container-blocks/drawer.md +1379 -0
- package/content/container-blocks/dropdownmenu.md +643 -0
- package/content/container-blocks/flex.md +1510 -0
- package/content/container-blocks/footer.md +380 -0
- package/content/container-blocks/googlemaps.md +546 -0
- package/content/container-blocks/googlemapsheatmap.md +607 -0
- package/content/container-blocks/googlemapsscript.md +61 -0
- package/content/container-blocks/header.md +302 -0
- package/content/container-blocks/label.md +739 -0
- package/content/container-blocks/layout.md +604 -0
- package/content/container-blocks/masonry.md +1090 -0
- package/content/container-blocks/mobilemenu.md +1244 -0
- package/content/container-blocks/modal.md +1180 -0
- package/content/container-blocks/pageheadermenu.md +614 -0
- package/content/container-blocks/pagesidebarlayout.md +438 -0
- package/content/container-blocks/pagesidermenu.md +651 -0
- package/content/container-blocks/popover.md +1421 -0
- package/content/container-blocks/result.md +972 -0
- package/content/container-blocks/sider.md +1064 -0
- package/content/container-blocks/span.md +747 -0
- package/content/container-blocks/spinner.md +267 -0
- package/content/container-blocks/splitter.md +1735 -0
- package/content/container-blocks/tabs.md +1718 -0
- package/content/container-blocks/tooltip.md +1274 -0
- package/content/container-blocks/watermark.md +515 -0
- package/content/controls/for.md +103 -0
- package/content/controls/if.md +107 -0
- package/content/controls/log.md +50 -0
- package/content/controls/parallel.md +71 -0
- package/content/controls/parallel_for.md +36 -0
- package/content/controls/reject.md +56 -0
- package/content/controls/return.md +66 -0
- package/content/controls/set_state.md +98 -0
- package/content/controls/switch.md +90 -0
- package/content/controls/throw.md +79 -0
- package/content/controls/try.md +88 -0
- package/content/deployment/docker.md +149 -0
- package/content/deployment/node-server.md +27 -0
- package/content/deployment/vercel.md +101 -0
- package/content/display-blocks/aggrid.md +1459 -0
- package/content/display-blocks/anchor.md +336 -0
- package/content/display-blocks/avatar.md +1154 -0
- package/content/display-blocks/breadcrumb.md +517 -0
- package/content/display-blocks/button.md +758 -0
- package/content/display-blocks/calendar.md +156 -0
- package/content/display-blocks/dangeroushtml.md +314 -0
- package/content/display-blocks/dangerousmarkdown.md +423 -0
- package/content/display-blocks/diffgit.md +44 -0
- package/content/display-blocks/difflist.md +225 -0
- package/content/display-blocks/diffsidebyside.md +56 -0
- package/content/display-blocks/difftimeline.md +94 -0
- package/content/display-blocks/divider.md +406 -0
- package/content/display-blocks/download.md +60 -0
- package/content/display-blocks/dropdownbutton.md +661 -0
- package/content/display-blocks/echart.md +418 -0
- package/content/display-blocks/floatbutton.md +545 -0
- package/content/display-blocks/html.md +311 -0
- package/content/display-blocks/icon.md +717 -0
- package/content/display-blocks/img.md +479 -0
- package/content/display-blocks/markdown.md +520 -0
- package/content/display-blocks/markdownwithcode.md +730 -0
- package/content/display-blocks/menu.md +1123 -0
- package/content/display-blocks/message.md +941 -0
- package/content/display-blocks/notification.md +1410 -0
- package/content/display-blocks/paragraph.md +643 -0
- package/content/display-blocks/progress.md +818 -0
- package/content/display-blocks/qrcode.md +519 -0
- package/content/display-blocks/s3download.md +240 -0
- package/content/display-blocks/search.md +360 -0
- package/content/display-blocks/skeleton.md +272 -0
- package/content/display-blocks/skeletonavatar.md +222 -0
- package/content/display-blocks/skeletonbutton.md +245 -0
- package/content/display-blocks/skeletoninput.md +223 -0
- package/content/display-blocks/skeletonparagraph.md +201 -0
- package/content/display-blocks/statistic.md +485 -0
- package/content/display-blocks/steps.md +585 -0
- package/content/display-blocks/tag.md +620 -0
- package/content/display-blocks/title.md +654 -0
- package/content/display-blocks/tour.md +2359 -0
- package/content/input-blocks/autocomplete.md +786 -0
- package/content/input-blocks/buttonselector.md +964 -0
- package/content/input-blocks/checkboxselector.md +765 -0
- package/content/input-blocks/checkboxswitch.md +497 -0
- package/content/input-blocks/colorselector.md +884 -0
- package/content/input-blocks/daterangeselector.md +777 -0
- package/content/input-blocks/dateselector.md +693 -0
- package/content/input-blocks/datetimeselector.md +791 -0
- package/content/input-blocks/inputgallery.md +528 -0
- package/content/input-blocks/monthselector.md +717 -0
- package/content/input-blocks/multipleselector.md +1337 -0
- package/content/input-blocks/numberinput.md +855 -0
- package/content/input-blocks/pagination.md +679 -0
- package/content/input-blocks/paragraphinput.md +1664 -0
- package/content/input-blocks/passwordinput.md +480 -0
- package/content/input-blocks/phonenumberinput.md +688 -0
- package/content/input-blocks/radioselector.md +820 -0
- package/content/input-blocks/ratingslider.md +684 -0
- package/content/input-blocks/s3uploadbutton.md +384 -0
- package/content/input-blocks/s3uploaddragger.md +305 -0
- package/content/input-blocks/s3uploadphoto.md +288 -0
- package/content/input-blocks/segmentedselector.md +782 -0
- package/content/input-blocks/selector.md +1162 -0
- package/content/input-blocks/switch.md +552 -0
- package/content/input-blocks/textarea.md +714 -0
- package/content/input-blocks/textinput.md +639 -0
- package/content/input-blocks/tiptapinput.md +226 -0
- package/content/input-blocks/tiptapmentioninput.md +471 -0
- package/content/input-blocks/titleinput.md +1094 -0
- package/content/input-blocks/treeinput.md +144 -0
- package/content/input-blocks/treemultipleselector.md +162 -0
- package/content/input-blocks/treeselector.md +185 -0
- package/content/input-blocks/upload.md +149 -0
- package/content/input-blocks/uploaddragger.md +85 -0
- package/content/input-blocks/uploadphoto.md +84 -0
- package/content/input-blocks/weekselector.md +630 -0
- package/content/list-blocks/controlledlist.md +498 -0
- package/content/list-blocks/list.md +529 -0
- package/content/list-blocks/listselector.md +301 -0
- package/content/list-blocks/masonrylist.md +230 -0
- package/content/migration/upgrade-guide.md +106 -0
- package/content/migration/v4-to-v5.md +589 -0
- package/content/migration/v5-to-v6.md +36 -0
- package/content/operators/_actions.md +58 -0
- package/content/operators/_and.md +76 -0
- package/content/operators/_api.md +254 -0
- package/content/operators/_app.md +114 -0
- package/content/operators/_args.md +65 -0
- package/content/operators/_array.md +331 -0
- package/content/operators/_base64.md +49 -0
- package/content/operators/_boolean.md +33 -0
- package/content/operators/_build.md +166 -0
- package/content/operators/_change_case.md +357 -0
- package/content/operators/_date.md +415 -0
- package/content/operators/_dayjs.md +128 -0
- package/content/operators/_diff.md +61 -0
- package/content/operators/_divide.md +32 -0
- package/content/operators/_eq.md +52 -0
- package/content/operators/_event.md +86 -0
- package/content/operators/_function.md +52 -0
- package/content/operators/_get.md +92 -0
- package/content/operators/_global.md +86 -0
- package/content/operators/_gt.md +50 -0
- package/content/operators/_gte.md +50 -0
- package/content/operators/_hash.md +112 -0
- package/content/operators/_if.md +30 -0
- package/content/operators/_if_none.md +47 -0
- package/content/operators/_index.md +48 -0
- package/content/operators/_input.md +86 -0
- package/content/operators/_intl.md +135 -0
- package/content/operators/_item.md +166 -0
- package/content/operators/_js.md +113 -0
- package/content/operators/_json.md +120 -0
- package/content/operators/_jsonata.md +152 -0
- package/content/operators/_locale.md +65 -0
- package/content/operators/_location.md +40 -0
- package/content/operators/_log.md +22 -0
- package/content/operators/_lt.md +50 -0
- package/content/operators/_lte.md +50 -0
- package/content/operators/_math.md +407 -0
- package/content/operators/_media.md +83 -0
- package/content/operators/_menu.md +62 -0
- package/content/operators/_module.md +340 -0
- package/content/operators/_mql.md +95 -0
- package/content/operators/_ne.md +62 -0
- package/content/operators/_not.md +33 -0
- package/content/operators/_number.md +159 -0
- package/content/operators/_nunjucks.md +117 -0
- package/content/operators/_object.md +253 -0
- package/content/operators/_operator.md +33 -0
- package/content/operators/_or.md +67 -0
- package/content/operators/_product.md +45 -0
- package/content/operators/_random.md +90 -0
- package/content/operators/_ref.md +80 -0
- package/content/operators/_regex.md +69 -0
- package/content/operators/_request.md +35 -0
- package/content/operators/_request_details.md +29 -0
- package/content/operators/_secret.md +56 -0
- package/content/operators/_state.md +134 -0
- package/content/operators/_step.md +98 -0
- package/content/operators/_string.md +327 -0
- package/content/operators/_subtract.md +24 -0
- package/content/operators/_sum.md +45 -0
- package/content/operators/_switch.md +37 -0
- package/content/operators/_t.md +96 -0
- package/content/operators/_theme.md +65 -0
- package/content/operators/_type.md +78 -0
- package/content/operators/_uri.md +49 -0
- package/content/operators/_url_query.md +92 -0
- package/content/operators/_user.md +154 -0
- package/content/operators/_uuid.md +118 -0
- package/content/operators/_var.md +88 -0
- package/content/operators/_yaml.md +96 -0
- package/content/other/introduction.md +39 -0
- package/content/other/next-auth-providers.md +3 -0
- package/content/other/updatesession.md +26 -0
- package/content/plugins/plugins-actions.md +80 -0
- package/content/plugins/plugins-connections.md +98 -0
- package/content/plugins/plugins-dev.md +138 -0
- package/content/plugins/plugins-introduction.md +29 -0
- package/content/plugins/plugins-operators.md +71 -0
- package/content/testing/e2e-auth.md +108 -0
- package/content/testing/e2e-configuration.md +107 -0
- package/content/testing/e2e-getting-started.md +96 -0
- package/content/testing/e2e-introduction.md +53 -0
- package/content/testing/e2e-mocking.md +155 -0
- package/content/testing/e2e-writing-tests.md +214 -0
- package/content/tutorial/tutorial-actions-operators.md +222 -0
- package/content/tutorial/tutorial-add-blocks.md +86 -0
- package/content/tutorial/tutorial-create-page.md +57 -0
- package/content/tutorial/tutorial-display-data-page.md +181 -0
- package/content/tutorial/tutorial-next-steps.md +53 -0
- package/content/tutorial/tutorial-requests-sql.md +22 -0
- package/content/tutorial/tutorial-start.md +71 -0
- package/content/user-authentication/auth-providers.md +15 -0
- package/content/user-authentication/login-and-logout.md +122 -0
- package/content/user-authentication/users-introduction.md +31 -0
- package/index.json +2281 -0
- package/package.json +34 -0
- package/scripts/extractAgentDocs.js +130 -0
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
# DiffSideBySide
|
|
2
|
+
|
|
3
|
+
`DiffSideBySide` renders a before / after view of two objects as paired Ant Design `Descriptions` panels. The left column shows previous values (struck through for removed fields) and the right column shows the new values (highlighted for added or changed fields). Uses the same filtering, labelling, and per-path value formatters as `DiffList`.
|
|
4
|
+
|
|
5
|
+
```yaml
|
|
6
|
+
- id: diff_side_by_side_profile
|
|
7
|
+
type: DiffSideBySide
|
|
8
|
+
properties:
|
|
9
|
+
title: Profile updated
|
|
10
|
+
before:
|
|
11
|
+
name: Sarah Johnson
|
|
12
|
+
email: sarah@example.com
|
|
13
|
+
role: member
|
|
14
|
+
after:
|
|
15
|
+
name: Sarah M. Johnson
|
|
16
|
+
email: sarah.j@example.com
|
|
17
|
+
role: admin
|
|
18
|
+
labels:
|
|
19
|
+
name: Full name
|
|
20
|
+
email: Email address
|
|
21
|
+
role: Role
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
| Property | Type | Default | Description |
|
|
25
|
+
| --- | --- | --- | --- |
|
|
26
|
+
| `before` | object \| array \| null | - | Previous state. An object or array; null / undefined is treated as empty so "newly created" records diff cleanly. |
|
|
27
|
+
| `after` | object \| array \| null | - | New state. An object or array; null / undefined is treated as empty so "deleted" records diff cleanly. |
|
|
28
|
+
| `maxDepth` | integer | `4` | Paths deeper than this collapse into a single "Changed" row rendered as JSON. Defaults to 4. |
|
|
29
|
+
| `title` | string | - | Optional title rendered above the diff. Supports html. |
|
|
30
|
+
| `emptyText` | string | `"No changes"` | Shown when there are no differences between before and after. |
|
|
31
|
+
| `showUnchanged` | boolean | `false` | Also render unchanged leaf fields in a muted style in both columns. |
|
|
32
|
+
| `groupByRoot` | boolean | `true` | Group changes by their top-level key. When false, changes render as one flat paired list. |
|
|
33
|
+
| `collapseNested` | boolean | `true` | Render entirely-new or entirely-removed nested objects and arrays inside a collapsible panel. |
|
|
34
|
+
| `labels` | object | - | Map of dotted path to display label. Example: { "user.email": "Email address" }. |
|
|
35
|
+
| `hide` | array | - | Patterns to hide. Each entry is an exact dotted path (e.g. `user.email`), a `prefix.*` prefix match, or a `*.leaf` tail match. |
|
|
36
|
+
| `show` | array | - | Allowlist; same pattern syntax as `hide`. Applied before `hide`. |
|
|
37
|
+
| `format` | object | - | Per-path value formatter. Keys are dotted paths (with optional "prefix.*" or "*.leaf" globs); values describe how to render matched values. |
|
|
38
|
+
| `changeTypeLabels` | object | - | Override the tag labels for each change type. |
|
|
39
|
+
| `changeTypeLabels.added` | string | `"Added"` | |
|
|
40
|
+
| `changeTypeLabels.removed` | string | `"Removed"` | |
|
|
41
|
+
| `changeTypeLabels.changed` | string | `"Changed"` | |
|
|
42
|
+
| `changeTypeLabels.unchanged` | string | `"Unchanged"` | |
|
|
43
|
+
| `theme` | object | - | Antd Descriptions design token overrides. See [antd design tokens](https://ant.design/components/descriptions#design-token). See [Ant Design descriptions tokens](https://ant.design/components/descriptions#design-token). |
|
|
44
|
+
|
|
45
|
+
No events defined.
|
|
46
|
+
|
|
47
|
+
| Key | Target |
|
|
48
|
+
| --- | --- |
|
|
49
|
+
| `/block` | Outer block wrapper (always available). |
|
|
50
|
+
| `/element` | The DiffSideBySide wrapper element. |
|
|
51
|
+
| `/title` | The DiffSideBySide title. |
|
|
52
|
+
| `/group` | A paired Descriptions wrapper (one per side). |
|
|
53
|
+
| `/row` | A single row label within either side. |
|
|
54
|
+
| `/tag` | The change-type tag element. |
|
|
55
|
+
|
|
56
|
+
No slots defined.
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
# DiffTimeline
|
|
2
|
+
|
|
3
|
+
`DiffTimeline` renders a diff as a vertical audit trail using Ant Design's `Timeline` component. Each change becomes a timeline entry with a colour-coded dot (green for added, red for removed, blue for changed) and a breadcrumb-style label that shows the full path to the changed field. Uses the same filtering, labelling, and per-path value formatters as `DiffList`.
|
|
4
|
+
|
|
5
|
+
```yaml
|
|
6
|
+
- id: diff_timeline_order
|
|
7
|
+
type: DiffTimeline
|
|
8
|
+
properties:
|
|
9
|
+
title: Order
|
|
10
|
+
before:
|
|
11
|
+
status: pending
|
|
12
|
+
subtotal: 129.5
|
|
13
|
+
tax: 10.36
|
|
14
|
+
total: 139.86
|
|
15
|
+
items:
|
|
16
|
+
- Notebook (A5)
|
|
17
|
+
- Pen (blue)
|
|
18
|
+
internal:
|
|
19
|
+
createdBy: sys
|
|
20
|
+
traceId: abc-123
|
|
21
|
+
after:
|
|
22
|
+
status: paid
|
|
23
|
+
subtotal: 129.5
|
|
24
|
+
tax: 10.36
|
|
25
|
+
total: 139.86
|
|
26
|
+
items:
|
|
27
|
+
- Notebook (A5)
|
|
28
|
+
- Pen (blue)
|
|
29
|
+
- Sticky notes
|
|
30
|
+
internal:
|
|
31
|
+
createdBy: sys
|
|
32
|
+
traceId: abc-999
|
|
33
|
+
hide:
|
|
34
|
+
- internal.*
|
|
35
|
+
labels:
|
|
36
|
+
status: Status
|
|
37
|
+
subtotal: Subtotal
|
|
38
|
+
tax: Tax
|
|
39
|
+
total: Total
|
|
40
|
+
items: Line items
|
|
41
|
+
format:
|
|
42
|
+
subtotal:
|
|
43
|
+
type: currency
|
|
44
|
+
currency: USD
|
|
45
|
+
tax:
|
|
46
|
+
type: currency
|
|
47
|
+
currency: USD
|
|
48
|
+
total:
|
|
49
|
+
type: currency
|
|
50
|
+
currency: USD
|
|
51
|
+
status:
|
|
52
|
+
type: enum
|
|
53
|
+
map:
|
|
54
|
+
pending:
|
|
55
|
+
label: Pending
|
|
56
|
+
color: warning
|
|
57
|
+
paid:
|
|
58
|
+
label: Paid
|
|
59
|
+
color: success
|
|
60
|
+
cancelled:
|
|
61
|
+
label: Cancelled
|
|
62
|
+
color: error
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
| Property | Type | Default | Description |
|
|
66
|
+
| --- | --- | --- | --- |
|
|
67
|
+
| `before` | object \| array \| null | - | Previous state. An object or array; null / undefined is treated as empty so "newly created" records diff cleanly. |
|
|
68
|
+
| `after` | object \| array \| null | - | New state. An object or array; null / undefined is treated as empty so "deleted" records diff cleanly. |
|
|
69
|
+
| `maxDepth` | integer | `4` | Paths deeper than this collapse into a single "Changed" entry rendered as JSON. Defaults to 4. |
|
|
70
|
+
| `title` | string | - | Optional title rendered above the timeline. Supports html. |
|
|
71
|
+
| `emptyText` | string | `"No changes"` | Shown when there are no differences between before and after. |
|
|
72
|
+
| `showUnchanged` | boolean | `false` | Also emit muted timeline entries for unchanged leaf fields. |
|
|
73
|
+
| `collapseNested` | boolean | `true` | Render entirely-new or entirely-removed nested objects and arrays inside a collapsible panel. |
|
|
74
|
+
| `labels` | object | - | Map of dotted path to display label. |
|
|
75
|
+
| `hide` | array | - | Patterns to hide. Each entry is an exact dotted path, a `prefix.*` prefix match, or a `*.leaf` tail match. |
|
|
76
|
+
| `show` | array | - | Allowlist; same pattern syntax as `hide`. Applied before `hide`. |
|
|
77
|
+
| `format` | object | - | Per-path value formatter. Keys are dotted paths (with optional "prefix.*" or "*.leaf" globs); values describe how to render matched values. |
|
|
78
|
+
| `changeTypeLabels` | object | - | Override the tag labels for each change type. |
|
|
79
|
+
| `changeTypeLabels.added` | string | `"Added"` | |
|
|
80
|
+
| `changeTypeLabels.removed` | string | `"Removed"` | |
|
|
81
|
+
| `changeTypeLabels.changed` | string | `"Changed"` | |
|
|
82
|
+
| `changeTypeLabels.unchanged` | string | `"Unchanged"` | |
|
|
83
|
+
| `theme` | object | - | Antd Timeline design token overrides. See [antd design tokens](https://ant.design/components/timeline#design-token). See [Ant Design timeline tokens](https://ant.design/components/timeline#design-token). |
|
|
84
|
+
|
|
85
|
+
No events defined.
|
|
86
|
+
|
|
87
|
+
| Key | Target |
|
|
88
|
+
| --- | --- |
|
|
89
|
+
| `/block` | Outer block wrapper (always available). |
|
|
90
|
+
| `/element` | The DiffTimeline wrapper element. |
|
|
91
|
+
| `/title` | The DiffTimeline title. |
|
|
92
|
+
| `/group` | The antd Timeline element. |
|
|
93
|
+
|
|
94
|
+
No slots defined.
|
|
@@ -0,0 +1,406 @@
|
|
|
1
|
+
# Divider
|
|
2
|
+
|
|
3
|
+
Horizontal or vertical divider with optional text and orientation.
|
|
4
|
+
|
|
5
|
+
Home
|
|
6
|
+
|
|
7
|
+
Settings
|
|
8
|
+
|
|
9
|
+
Profile
|
|
10
|
+
|
|
11
|
+
```yaml
|
|
12
|
+
- id: type_horizontal
|
|
13
|
+
type: Divider
|
|
14
|
+
- id: type_horizontal_titled
|
|
15
|
+
type: Divider
|
|
16
|
+
properties:
|
|
17
|
+
title: Horizontal Divider
|
|
18
|
+
- id: type_vertical_row
|
|
19
|
+
type: Box
|
|
20
|
+
layout:
|
|
21
|
+
gap: 0
|
|
22
|
+
blocks:
|
|
23
|
+
- id: type_vt_text_1
|
|
24
|
+
type: Paragraph
|
|
25
|
+
layout:
|
|
26
|
+
flex: 0 0 auto
|
|
27
|
+
properties:
|
|
28
|
+
content: Home
|
|
29
|
+
- id: type_vt_divider_1
|
|
30
|
+
type: Divider
|
|
31
|
+
layout:
|
|
32
|
+
flex: 0 0 auto
|
|
33
|
+
properties:
|
|
34
|
+
orientation: vertical
|
|
35
|
+
- id: type_vt_text_2
|
|
36
|
+
type: Paragraph
|
|
37
|
+
layout:
|
|
38
|
+
flex: 0 0 auto
|
|
39
|
+
properties:
|
|
40
|
+
content: Settings
|
|
41
|
+
- id: type_vt_divider_2
|
|
42
|
+
type: Divider
|
|
43
|
+
layout:
|
|
44
|
+
flex: 0 0 auto
|
|
45
|
+
properties:
|
|
46
|
+
orientation: vertical
|
|
47
|
+
- id: type_vt_text_3
|
|
48
|
+
type: Paragraph
|
|
49
|
+
layout:
|
|
50
|
+
flex: 0 0 auto
|
|
51
|
+
properties:
|
|
52
|
+
content: Profile
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
```yaml
|
|
56
|
+
- id: title_plain_text
|
|
57
|
+
type: Divider
|
|
58
|
+
properties:
|
|
59
|
+
title: Section Title
|
|
60
|
+
- id: title_html_bold
|
|
61
|
+
type: Divider
|
|
62
|
+
properties:
|
|
63
|
+
title: <b>Bold Section Header</b>
|
|
64
|
+
- id: title_html_styled
|
|
65
|
+
type: Divider
|
|
66
|
+
properties:
|
|
67
|
+
title: '<span style="color: #1677ff; font-size: 16px">Highlighted Title</span>'
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
```yaml
|
|
71
|
+
- id: orient_start
|
|
72
|
+
type: Divider
|
|
73
|
+
properties:
|
|
74
|
+
title: Start
|
|
75
|
+
titlePlacement: start
|
|
76
|
+
- id: orient_center
|
|
77
|
+
type: Divider
|
|
78
|
+
properties:
|
|
79
|
+
title: Center (default)
|
|
80
|
+
titlePlacement: center
|
|
81
|
+
- id: orient_end
|
|
82
|
+
type: Divider
|
|
83
|
+
properties:
|
|
84
|
+
title: End
|
|
85
|
+
titlePlacement: end
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
```yaml
|
|
89
|
+
- id: dashed_simple
|
|
90
|
+
type: Divider
|
|
91
|
+
properties:
|
|
92
|
+
dashed: true
|
|
93
|
+
- id: dashed_with_title
|
|
94
|
+
type: Divider
|
|
95
|
+
properties:
|
|
96
|
+
dashed: true
|
|
97
|
+
title: Dashed with Title
|
|
98
|
+
- id: dashed_left_title
|
|
99
|
+
type: Divider
|
|
100
|
+
properties:
|
|
101
|
+
dashed: true
|
|
102
|
+
title: Dashed Start
|
|
103
|
+
titlePlacement: start
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
```yaml
|
|
107
|
+
- id: plain_center
|
|
108
|
+
type: Divider
|
|
109
|
+
properties:
|
|
110
|
+
title: Plain Center
|
|
111
|
+
plain: true
|
|
112
|
+
- id: plain_left
|
|
113
|
+
type: Divider
|
|
114
|
+
properties:
|
|
115
|
+
title: Plain Start
|
|
116
|
+
plain: true
|
|
117
|
+
titlePlacement: start
|
|
118
|
+
- id: plain_dashed
|
|
119
|
+
type: Divider
|
|
120
|
+
properties:
|
|
121
|
+
title: Plain Dashed
|
|
122
|
+
plain: true
|
|
123
|
+
dashed: true
|
|
124
|
+
```
|
|
125
|
+
|
|
126
|
+
```yaml
|
|
127
|
+
- id: css_tailwind_margin
|
|
128
|
+
type: Divider
|
|
129
|
+
class: my-8
|
|
130
|
+
properties:
|
|
131
|
+
title: Extra Margin via Tailwind
|
|
132
|
+
- id: css_inline_color
|
|
133
|
+
type: Divider
|
|
134
|
+
style:
|
|
135
|
+
.element:
|
|
136
|
+
borderColor: "#1677ff"
|
|
137
|
+
- id: css_inline_thick
|
|
138
|
+
type: Divider
|
|
139
|
+
style:
|
|
140
|
+
.element:
|
|
141
|
+
borderWidth: 3px
|
|
142
|
+
- id: css_inline_title_color
|
|
143
|
+
type: Divider
|
|
144
|
+
properties:
|
|
145
|
+
title: Styled Title
|
|
146
|
+
style:
|
|
147
|
+
.element:
|
|
148
|
+
color: "#722ed1"
|
|
149
|
+
borderColor: "#722ed1"
|
|
150
|
+
```
|
|
151
|
+
|
|
152
|
+
Item A
|
|
153
|
+
|
|
154
|
+
Item B
|
|
155
|
+
|
|
156
|
+
```yaml
|
|
157
|
+
- id: theme_text_padding
|
|
158
|
+
type: Divider
|
|
159
|
+
properties:
|
|
160
|
+
title: Wide Text Padding
|
|
161
|
+
theme:
|
|
162
|
+
textPaddingInline: 3em
|
|
163
|
+
- id: theme_orientation_tight
|
|
164
|
+
type: Divider
|
|
165
|
+
properties:
|
|
166
|
+
title: Tight Orientation Margin
|
|
167
|
+
titlePlacement: start
|
|
168
|
+
theme:
|
|
169
|
+
orientationMargin: 0
|
|
170
|
+
- id: theme_orientation_wide
|
|
171
|
+
type: Divider
|
|
172
|
+
properties:
|
|
173
|
+
title: Wide Orientation Margin
|
|
174
|
+
titlePlacement: start
|
|
175
|
+
theme:
|
|
176
|
+
orientationMargin: 0.25
|
|
177
|
+
- id: theme_vertical_margin
|
|
178
|
+
type: Box
|
|
179
|
+
layout:
|
|
180
|
+
gap: 0
|
|
181
|
+
blocks:
|
|
182
|
+
- id: theme_vm_text_1
|
|
183
|
+
type: Paragraph
|
|
184
|
+
layout:
|
|
185
|
+
flex: 0 0 auto
|
|
186
|
+
properties:
|
|
187
|
+
content: Item A
|
|
188
|
+
- id: theme_vm_divider
|
|
189
|
+
type: Divider
|
|
190
|
+
layout:
|
|
191
|
+
flex: 0 0 auto
|
|
192
|
+
properties:
|
|
193
|
+
orientation: vertical
|
|
194
|
+
theme:
|
|
195
|
+
verticalMarginInline: 24
|
|
196
|
+
- id: theme_vm_text_2
|
|
197
|
+
type: Paragraph
|
|
198
|
+
layout:
|
|
199
|
+
flex: 0 0 auto
|
|
200
|
+
properties:
|
|
201
|
+
content: Item B
|
|
202
|
+
```
|
|
203
|
+
|
|
204
|
+
```yaml
|
|
205
|
+
- id: settings_card
|
|
206
|
+
type: Card
|
|
207
|
+
properties:
|
|
208
|
+
title: Account Settings
|
|
209
|
+
size: small
|
|
210
|
+
blocks:
|
|
211
|
+
- id: settings_profile_heading
|
|
212
|
+
type: Divider
|
|
213
|
+
properties:
|
|
214
|
+
title: Profile
|
|
215
|
+
titlePlacement: start
|
|
216
|
+
plain: true
|
|
217
|
+
- id: settings_name
|
|
218
|
+
type: TextInput
|
|
219
|
+
properties:
|
|
220
|
+
label:
|
|
221
|
+
title: Display Name
|
|
222
|
+
placeholder: Enter your name
|
|
223
|
+
- id: settings_email
|
|
224
|
+
type: TextInput
|
|
225
|
+
properties:
|
|
226
|
+
label:
|
|
227
|
+
title: Email Address
|
|
228
|
+
placeholder: you@company.com
|
|
229
|
+
- id: settings_notifications_heading
|
|
230
|
+
type: Divider
|
|
231
|
+
properties:
|
|
232
|
+
title: Notifications
|
|
233
|
+
titlePlacement: start
|
|
234
|
+
plain: true
|
|
235
|
+
- id: settings_notify_toggle
|
|
236
|
+
type: Switch
|
|
237
|
+
properties:
|
|
238
|
+
label:
|
|
239
|
+
title: Email Notifications
|
|
240
|
+
- id: settings_danger_heading
|
|
241
|
+
type: Divider
|
|
242
|
+
properties:
|
|
243
|
+
title: '<span style="color: #ff4d4f">Danger Zone</span>'
|
|
244
|
+
titlePlacement: start
|
|
245
|
+
plain: true
|
|
246
|
+
dashed: true
|
|
247
|
+
style:
|
|
248
|
+
.element:
|
|
249
|
+
borderColor: "#ff4d4f"
|
|
250
|
+
- id: settings_delete_row
|
|
251
|
+
type: Box
|
|
252
|
+
layout:
|
|
253
|
+
gap: 8
|
|
254
|
+
justify: flex-end
|
|
255
|
+
blocks:
|
|
256
|
+
- id: settings_delete_btn
|
|
257
|
+
type: Button
|
|
258
|
+
layout:
|
|
259
|
+
flex: 0 0 auto
|
|
260
|
+
properties:
|
|
261
|
+
title: Delete Account
|
|
262
|
+
color: danger
|
|
263
|
+
variant: outlined
|
|
264
|
+
icon: AiOutlineDelete
|
|
265
|
+
events:
|
|
266
|
+
onClick:
|
|
267
|
+
- id: settings_delete_msg
|
|
268
|
+
type: DisplayMessage
|
|
269
|
+
params:
|
|
270
|
+
content: Account deletion requested.
|
|
271
|
+
status: warning
|
|
272
|
+
```
|
|
273
|
+
|
|
274
|
+
## Building Config-Driven Applications
|
|
275
|
+
A practical guide to rapid development with declarative frameworks.
|
|
276
|
+
|
|
277
|
+
By Jane Smith
|
|
278
|
+
|
|
279
|
+
March 2026
|
|
280
|
+
|
|
281
|
+
5 min read
|
|
282
|
+
|
|
283
|
+
Config-driven frameworks allow teams to ship features faster by reducing boilerplate.
|
|
284
|
+
Instead of writing repetitive UI code, developers describe what they want in YAML or JSON.
|
|
285
|
+
|
|
286
|
+
- Declarative configs reduce development time by up to 60%
|
|
287
|
+
- Schema validation catches errors before deployment
|
|
288
|
+
- Teams can onboard new developers faster with standardized patterns
|
|
289
|
+
|
|
290
|
+
```yaml
|
|
291
|
+
- id: article_card
|
|
292
|
+
type: Card
|
|
293
|
+
blocks:
|
|
294
|
+
- id: article_title
|
|
295
|
+
type: Markdown
|
|
296
|
+
properties:
|
|
297
|
+
content: |
|
|
298
|
+
## Building Config-Driven Applications
|
|
299
|
+
A practical guide to rapid development with declarative frameworks.
|
|
300
|
+
- id: article_meta_row
|
|
301
|
+
type: Box
|
|
302
|
+
layout:
|
|
303
|
+
gap: 0
|
|
304
|
+
blocks:
|
|
305
|
+
- id: article_author
|
|
306
|
+
type: Paragraph
|
|
307
|
+
layout:
|
|
308
|
+
flex: 0 0 auto
|
|
309
|
+
properties:
|
|
310
|
+
content: By Jane Smith
|
|
311
|
+
- id: article_meta_divider_1
|
|
312
|
+
type: Divider
|
|
313
|
+
layout:
|
|
314
|
+
flex: 0 0 auto
|
|
315
|
+
properties:
|
|
316
|
+
orientation: vertical
|
|
317
|
+
- id: article_date
|
|
318
|
+
type: Paragraph
|
|
319
|
+
layout:
|
|
320
|
+
flex: 0 0 auto
|
|
321
|
+
properties:
|
|
322
|
+
content: March 2026
|
|
323
|
+
- id: article_meta_divider_2
|
|
324
|
+
type: Divider
|
|
325
|
+
layout:
|
|
326
|
+
flex: 0 0 auto
|
|
327
|
+
properties:
|
|
328
|
+
orientation: vertical
|
|
329
|
+
- id: article_reading_time
|
|
330
|
+
type: Paragraph
|
|
331
|
+
layout:
|
|
332
|
+
flex: 0 0 auto
|
|
333
|
+
properties:
|
|
334
|
+
content: 5 min read
|
|
335
|
+
- id: article_intro_divider
|
|
336
|
+
type: Divider
|
|
337
|
+
- id: article_body
|
|
338
|
+
type: Markdown
|
|
339
|
+
properties:
|
|
340
|
+
content: >
|
|
341
|
+
Config-driven frameworks allow teams to ship features faster by
|
|
342
|
+
reducing boilerplate.
|
|
343
|
+
|
|
344
|
+
Instead of writing repetitive UI code, developers describe what they
|
|
345
|
+
want in YAML or JSON.
|
|
346
|
+
- id: article_section_divider
|
|
347
|
+
type: Divider
|
|
348
|
+
properties:
|
|
349
|
+
title: Key Takeaways
|
|
350
|
+
titlePlacement: start
|
|
351
|
+
plain: true
|
|
352
|
+
- id: article_takeaways
|
|
353
|
+
type: Markdown
|
|
354
|
+
properties:
|
|
355
|
+
content: |
|
|
356
|
+
- Declarative configs reduce development time by up to 60%
|
|
357
|
+
- Schema validation catches errors before deployment
|
|
358
|
+
- Teams can onboard new developers faster with standardized patterns
|
|
359
|
+
- id: article_footer_divider
|
|
360
|
+
type: Divider
|
|
361
|
+
properties:
|
|
362
|
+
dashed: true
|
|
363
|
+
- id: article_footer_row
|
|
364
|
+
type: Box
|
|
365
|
+
layout:
|
|
366
|
+
gap: 8
|
|
367
|
+
justify: flex-end
|
|
368
|
+
blocks:
|
|
369
|
+
- id: article_share_btn
|
|
370
|
+
type: Button
|
|
371
|
+
layout:
|
|
372
|
+
flex: 0 0 auto
|
|
373
|
+
properties:
|
|
374
|
+
title: Share Article
|
|
375
|
+
color: primary
|
|
376
|
+
variant: outlined
|
|
377
|
+
icon: AiOutlineShareAlt
|
|
378
|
+
events:
|
|
379
|
+
onClick:
|
|
380
|
+
- id: article_share_msg
|
|
381
|
+
type: DisplayMessage
|
|
382
|
+
params:
|
|
383
|
+
content: Link copied to clipboard!
|
|
384
|
+
status: success
|
|
385
|
+
```
|
|
386
|
+
|
|
387
|
+
| Property | Type | Default | Description |
|
|
388
|
+
| --- | --- | --- | --- |
|
|
389
|
+
| `dashed` | boolean | `false` | Whether line is dashed. |
|
|
390
|
+
| `orientation` | string | `"horizontal"` | Direction of the divider line. Enum: `horizontal`, `vertical`. |
|
|
391
|
+
| `title` | string | - | Divider title - supports html. |
|
|
392
|
+
| `titlePlacement` | string | `"center"` | Position of title text within the divider. Enum: `start`, `end`, `center`. |
|
|
393
|
+
| `plain` | boolean | `false` | Show text as plain style. |
|
|
394
|
+
| `theme` | object | - | Antd design token overrides for this block. See [antd design tokens](https://ant.design/components/overview#design-token). See [Ant Design divider tokens](https://ant.design/components/divider#design-token). |
|
|
395
|
+
| `theme.textPaddingInline` | string | `"1em"` | Horizontal padding of text content in the divider. |
|
|
396
|
+
| `theme.orientationMargin` | number | `0.05` | Distance between text and edge when orientation is left or right. Value between 0 and 1 representing a percentage. |
|
|
397
|
+
| `theme.verticalMarginInline` | number | `8` | Horizontal margin for vertical dividers. |
|
|
398
|
+
|
|
399
|
+
No events defined.
|
|
400
|
+
|
|
401
|
+
| Key | Target |
|
|
402
|
+
| --- | --- |
|
|
403
|
+
| `/block` | Outer block wrapper (always available). |
|
|
404
|
+
| `/element` | The Divider element. |
|
|
405
|
+
|
|
406
|
+
No slots defined.
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
# Download
|
|
2
|
+
|
|
3
|
+
Download files from any storage provider — AWS S3 (and S3-compatible services), Google Cloud Storage, or Azure Blob Storage. Requires a download request (AwsS3PresignedGetObject, GcsSignedGetUrl, or AzureBlobDownloadSas) referenced by the downloadPolicyRequestId property. Clicking a file resolves a URL through the request on demand — set `public: true` on the request for stable, non-expiring URLs to publicly readable objects. If files were uploaded with an Upload block, its fileList value can be mapped directly to this block.
|
|
4
|
+
|
|
5
|
+
> The Download block requires a storage connection and a download request. The examples below show configuration structure but will not download files without a configured connection.
|
|
6
|
+
|
|
7
|
+
```yaml
|
|
8
|
+
- id: basic_default
|
|
9
|
+
type: Download
|
|
10
|
+
properties:
|
|
11
|
+
downloadPolicyRequestId: download_policy_request
|
|
12
|
+
fileList:
|
|
13
|
+
- key: reports/report.pdf
|
|
14
|
+
name: report.pdf
|
|
15
|
+
size: 1024
|
|
16
|
+
type: application/pdf
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
```yaml
|
|
20
|
+
- id: removable
|
|
21
|
+
type: Download
|
|
22
|
+
properties:
|
|
23
|
+
downloadPolicyRequestId: download_policy_request
|
|
24
|
+
showRemoveIcon: true
|
|
25
|
+
fileList:
|
|
26
|
+
- key: reports/report.pdf
|
|
27
|
+
name: report.pdf
|
|
28
|
+
- key: reports/summary.xlsx
|
|
29
|
+
name: summary.xlsx
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
| Property | Type | Default | Description |
|
|
33
|
+
| --- | --- | --- | --- |
|
|
34
|
+
| `downloadPolicyRequestId` | string | - | Id of a download request (e.g. AwsS3PresignedGetObject, GcsSignedGetUrl, AzureBlobDownloadSas) that returns a URL for the file to download. |
|
|
35
|
+
| `fileList` | array | - | List of files to be downloaded. If files were uploaded using an Upload block, the fileList value can just be mapped to this field. |
|
|
36
|
+
| `fileList.$.key` | string | - | Storage object key. |
|
|
37
|
+
| `fileList.$.lastModified` | string | - | File last modified date. |
|
|
38
|
+
| `fileList.$.name` | string | - | File name. |
|
|
39
|
+
| `fileList.$.size` | number | - | File size in bytes. |
|
|
40
|
+
| `fileList.$.type` | string | - | File MIME type. |
|
|
41
|
+
| `showRemoveIcon` | boolean | `false` | Show a remove (×) icon next to each file in the list. Clicking it fires the `onRemove` event; the file is not removed from `fileList` automatically — the action handler is responsible. |
|
|
42
|
+
| `theme` | object | - | Antd design token overrides for this block. See [antd design tokens](https://ant.design/components/upload#design-token). See [Ant Design upload tokens](https://ant.design/components/upload#design-token). |
|
|
43
|
+
| `theme.actionsColor` | string | - | Color of action icons (download, preview, remove). |
|
|
44
|
+
| `theme.pictureCardSize` | number | - | Size of list items in card type (affects both picture-card and picture-circle). |
|
|
45
|
+
| `theme.controlItemBgHover` | string | - | Background color of file item on hover. |
|
|
46
|
+
| `theme.colorIcon` | string | - | Color of file icons. |
|
|
47
|
+
| `theme.fontSize` | number | - | Font size of file name text. |
|
|
48
|
+
| `theme.borderRadiusSM` | number | - | Border radius of file list items. |
|
|
49
|
+
|
|
50
|
+
| Event | Event Data | Description |
|
|
51
|
+
| --- | --- | --- |
|
|
52
|
+
| `onChange` | \- | Triggered when the upload state is changing. |
|
|
53
|
+
| `onRemove` | `{ file }` | Triggered when a file remove icon is clicked. The file is NOT removed automatically — the handler is responsible for updating `fileList` (e.g. via `SetState`). |
|
|
54
|
+
|
|
55
|
+
| Key | Target |
|
|
56
|
+
| --- | --- |
|
|
57
|
+
| `/block` | Outer block wrapper (always available). |
|
|
58
|
+
| `/element` | The Download element. |
|
|
59
|
+
|
|
60
|
+
No slots defined.
|