@lowdefy/docs-content 0.0.0-experimental-20260910082708 → 6.0.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.
Files changed (54) hide show
  1. package/README.md +0 -1
  2. package/content/actions/link.md +0 -17
  3. package/content/agents/agentchat.md +1 -13
  4. package/content/concepts/ai-agent-docs.md +49 -232
  5. package/content/concepts/cli.md +0 -13
  6. package/content/concepts/custom-styling.md +5 -50
  7. package/content/concepts/i18n.md +1 -1
  8. package/content/concepts/layout-overview.md +1 -1
  9. package/content/connections/mongodb.md +3 -121
  10. package/content/container-blocks/collapse.md +2 -2
  11. package/content/container-blocks/layout.md +0 -1
  12. package/content/container-blocks/modal.md +1 -1
  13. package/content/container-blocks/pagesidebarlayout.md +0 -1
  14. package/content/container-blocks/sider.md +1 -1
  15. package/content/container-blocks/spinner.md +1 -1
  16. package/content/controls/reject.md +1 -3
  17. package/content/controls/throw.md +0 -1
  18. package/content/controls/try.md +2 -3
  19. package/content/display-blocks/aggrid.md +18 -18
  20. package/content/display-blocks/avatar.md +2 -2
  21. package/content/display-blocks/difflist.md +1 -1
  22. package/content/display-blocks/difftimeline.md +1 -1
  23. package/content/display-blocks/echart.md +1 -35
  24. package/content/display-blocks/menu.md +1 -1
  25. package/content/display-blocks/qrcode.md +2 -2
  26. package/content/display-blocks/s3download.md +1 -1
  27. package/content/display-blocks/search.md +0 -1
  28. package/content/display-blocks/skeletonbutton.md +0 -1
  29. package/content/display-blocks/skeletoninput.md +0 -1
  30. package/content/input-blocks/buttonselector.md +1 -1
  31. package/content/input-blocks/checkboxselector.md +5 -81
  32. package/content/input-blocks/colorselector.md +0 -14
  33. package/content/input-blocks/multipleselector.md +1 -1
  34. package/content/input-blocks/phonenumberinput.md +1 -2
  35. package/content/input-blocks/radioselector.md +4 -66
  36. package/content/input-blocks/s3uploadbutton.md +1 -1
  37. package/content/input-blocks/s3uploaddragger.md +1 -1
  38. package/content/input-blocks/s3uploadphoto.md +1 -1
  39. package/content/input-blocks/segmentedselector.md +1 -1
  40. package/content/input-blocks/selector.md +1 -1
  41. package/content/input-blocks/tiptapmentioninput.md +1 -1
  42. package/content/input-blocks/treeinput.md +1 -1
  43. package/content/input-blocks/treemultipleselector.md +1 -1
  44. package/content/input-blocks/treeselector.md +1 -1
  45. package/content/list-blocks/masonrylist.md +1 -1
  46. package/content/operators/_type.md +3 -14
  47. package/content/plugins/plugins-introduction.md +0 -15
  48. package/index.json +1 -31
  49. package/package.json +1 -3
  50. package/content/controls/while.md +0 -46
  51. package/content/input-blocks/tagmultipleselector.md +0 -101
  52. package/content/input-blocks/tagselector.md +0 -101
  53. package/content/testing/config-tests.md +0 -164
  54. package/hazards.json +0 -44
@@ -834,20 +834,6 @@ ColorSelector is externally controlled — use an `onMount` event with `SetState
834
834
  | `format` | string | - | Color format. Enum: `rgb`, `hex`, `hsb`. |
835
835
  | `showText` | boolean | - | Show color text. |
836
836
  | `size` | string | - | Size of the color picker. Enum: `small`, `middle`, `large`. |
837
- | `label` | object | - | Label properties. |
838
- | `label.align` | string | `"left"` | Align label left or right when inline. Enum: `left`, `right`. |
839
- | `label.colon` | boolean | `true` | Append label with colon. |
840
- | `label.extra` | string | - | Extra text to display beneath the content - supports html. |
841
- | `label.title` | string | - | Label title - supports html. |
842
- | `label.tooltip` | string \| object | - | Help tooltip shown via an icon beside the label. A string sets the tooltip text (supports html), or an object to also customize the icon and color. Use the block's onTooltipClick event to respond to clicks on the icon. |
843
- | `label.tooltip.title` | string | - | Tooltip text shown on hover - supports html. |
844
- | `label.tooltip.icon` | string | `"AiOutlineQuestionCircle"` | Name of the icon to show beside the label. |
845
- | `label.tooltip.color` | string | - | Color of the tooltip icon. |
846
- | `label.span` | number | - | Label inline span. |
847
- | `label.disabled` | boolean | `false` | Hide input label. |
848
- | `label.hasFeedback` | boolean | `true` | Display feedback extra from validation, this does not disable validation. |
849
- | `label.inline` | boolean | `false` | Render input and label inline. |
850
- | `title` | string | - | Title to describe the input component, if no title is specified the block id is displayed - supports html. |
851
837
  | `disabled` | boolean | `false` | Disable the color picker. |
852
838
  | `allowClear` | boolean | `false` | Allow the user to clear their input. |
853
839
  | `arrow` | boolean | `true` | Show arrow on the color picker popup. |
@@ -1280,7 +1280,7 @@ Multi-select dropdown with tags, search, and custom rendering.
1280
1280
  | `loadingPlaceholder` | string | `"Loading"` | Placeholder text to show in options while the block is loading. |
1281
1281
  | `notFoundContent` | string | `"not Found"` | Placeholder text to show when list of options are empty. |
1282
1282
  | `selectedIcon` | string \| object | `"AiOutlineCheck"` | Name of an React-Icon (See all icons) or properties of an Icon block to customize icon showing when a selection is made in the drop-down list. |
1283
- | `showArrow` | boolean | `true` | Show the suffix icon at the drop-down position of the selector. antd shows the arrow by default; `false` hides it by clearing the suffix icon. |
1283
+ | `showArrow` | boolean | `true` | Show the suffix icon at the drop-down position of the selector. |
1284
1284
  | `size` | string | `"default"` | Size of the block. Enum: `small`, `default`, `large`. |
1285
1285
  | `suffixIcon` | string \| object | `"AiOutlineDown"` | Name of an React-Icon (See all icons) or properties of an Icon block to customize at the drop-down position of the selector. |
1286
1286
  | `title` | string | - | Multiple selector label title - supports html. |
@@ -608,7 +608,6 @@ Phone number input with international country code selector.
608
608
 
609
609
  | Property | Type | Default | Description |
610
610
  | --- | --- | --- | --- |
611
- | `showFlags` | boolean | `true` | Show country flags in the country selector and input. |
612
611
  | `allowClear` | boolean | `false` | Allow the user to clear their input. |
613
612
  | `allowedRegions` | array | - | List of allowed ISO 3166-1 alpha-2 region codes. If allowedRegions is [] or null, the default list of all regions is used. |
614
613
  | `autoFocus` | boolean | `false` | Autofocus to the block on page load. |
@@ -636,7 +635,7 @@ Phone number input with international country code selector.
636
635
  | `replaceInput.pattern` | string | - | The regular expression pattern to use to sanitize input. |
637
636
  | `replaceInput.flags` | string | - | The regex flags to use. The default value is 'gm'. |
638
637
  | `replaceInput.replacement` | string | - | The string used to replace the input that matches the pattern. The default value is ''. |
639
- | `showArrow` | boolean | `true` | Show the suffix icon at the drop-down position of the selector. antd shows the arrow by default; `false` hides it by clearing the suffix icon. |
638
+ | `showArrow` | boolean | `true` | Show the suffix icon at the drop-down position of the selector. |
640
639
  | `size` | string | `"middle"` | Size of the block. Enum: `small`, `middle`, `large`. |
641
640
  | `suffix` | string | - | Suffix text for the block, priority over suffixIcon. |
642
641
  | `suffixIcon` | string \| object | - | Name of an React-Icon (See all icons) or properties of an Icon block to customize icon to suffix the text input. |
@@ -752,75 +752,13 @@ Radio group for selecting a single option.
752
752
  valueKey: id
753
753
  ```
754
754
 
755
- ```yaml
756
- - id: radio_columns_two
757
- type: RadioSelector
758
- properties:
759
- title: Two columns
760
- columns: 2
761
- options:
762
- - Weekday mornings
763
- - Weekday afternoons
764
- - Weekday evenings
765
- - Weekend mornings
766
- - Weekend afternoons
767
- - Weekend evenings
768
- - id: radio_columns_responsive
769
- type: RadioSelector
770
- properties:
771
- title: One column below md, three from md up
772
- columns:
773
- xs: 1
774
- md: 3
775
- options:
776
- - Email
777
- - SMS
778
- - Push notification
779
- - Webhook
780
- - In-app message
781
- - Weekly digest
782
- - id: radio_columns_gutter
783
- type: RadioSelector
784
- properties:
785
- title: Wider gutter
786
- columns: 2
787
- gutter:
788
- - 24
789
- - 12
790
- options:
791
- - Read only
792
- - Read and write
793
- - Administer
794
- - No access
795
- - id: radio_columns_per_option_color
796
- type: RadioSelector
797
- properties:
798
- title: Coloured options in a grid
799
- columns: 2
800
- options:
801
- - label: Low
802
- value: low
803
- color: "#16a34a"
804
- - label: Medium
805
- value: medium
806
- color: "#d97706"
807
- - label: High
808
- value: high
809
- color: "#dc2626"
810
- - label: Critical
811
- value: critical
812
- color: "#7e22ce"
813
- ```
814
-
815
755
  | Property | Type | Default | Description |
816
756
  | --- | --- | --- | --- |
817
- | `align` | string | `"start"` | Align options. Ignored when 'columns' is set. Enum: `start`, `end`, `center`, `baseline`. |
757
+ | `align` | string | `"start"` | Align options. Enum: `start`, `end`, `center`, `baseline`. |
818
758
  | `color` | string | - | Selected radio color. |
819
- | `columns` | integer \| object | - | Number of columns to lay the options out in, or a responsive breakpoint object. Use a count that divides 24 evenly. |
820
759
  | `disabled` | boolean | `false` | Disable the block if true. |
821
- | `direction` | string | `"horizontal"` | List options horizontally or vertical. Ignored when 'columns' is set. Enum: `horizontal`, `vertical`. |
822
- | `gutter` | number \| array | - | Gap between options in the grid. Number or [horizontal, vertical] array. Applies when 'columns' is set. |
823
- | `wrap` | boolean | `true` | Specifies wrapping of options. Applies when 'direction' is 'horizontal'. Ignored when 'columns' is set. |
760
+ | `direction` | string | `"horizontal"` | List options horizontally or vertical. Enum: `horizontal`, `vertical`. |
761
+ | `wrap` | boolean | `true` | Specifies wrapping of options. Applies when 'direction' is 'horizontal'. |
824
762
  | `label` | object | - | Label properties. |
825
763
  | `label.align` | string | `"left"` | Align label left or right when inline. Enum: `left`, `right`. |
826
764
  | `label.colon` | boolean | `true` | Append label with colon. |
@@ -836,7 +774,7 @@ Radio group for selecting a single option.
836
774
  | `label.inline` | boolean | `false` | Render input and label inline. |
837
775
  | `options` | array | `[]` | Options can either be an array of primitive values, on an array of label, value pairs - supports html. |
838
776
  | `options.$.label` | string | - | Value label shown to user - supports html. |
839
- | `options.$.value` | - | - | Option value. Can be of any type. |
777
+ | `options.$.value` | string \| number \| boolean | - | Option value. |
840
778
  | `options.$.disabled` | boolean | `false` | Disable the option if true. |
841
779
  | `options.$.style` | object | - | Css style to apply to the option. |
842
780
  | `options.$.color` | string | - | Color applied to this option when it is selected. Falls back to the block-level color when not set. |
@@ -1,6 +1,6 @@
1
1
  # S3UploadButton
2
2
 
3
- __Deprecated__ — use the provider-neutral <a href="/Upload">Upload</a> block with `uploadPolicyRequestId` instead. S3UploadButton remains as an alias so existing apps keep working. Upload files to AWS S3 with a button trigger. Supports file type filtering, upload limits, and custom button styling. Requires an `AwsS3PresignedPostPolicy` request to define the S3 upload policy.
3
+ __Deprecated__ — use the provider-neutral &lt;a href=&quot;/Upload&quot;&gt;Upload&lt;/a&gt; block with `uploadPolicyRequestId` instead. S3UploadButton remains as an alias so existing apps keep working. Upload files to AWS S3 with a button trigger. Supports file type filtering, upload limits, and custom button styling. Requires an `AwsS3PresignedPostPolicy` request to define the S3 upload policy.
4
4
 
5
5
  > The S3UploadButton requires an AwsS3Bucket connection and AwsS3PresignedPostPolicy request to upload files. The examples on this page demonstrate UI configuration only — uploads will not function without a configured S3 connection.
6
6
 
@@ -1,6 +1,6 @@
1
1
  # S3UploadDragger
2
2
 
3
- __Deprecated__ — use the provider-neutral <a href="/UploadDragger">UploadDragger</a> block with `uploadPolicyRequestId` instead. S3UploadDragger remains as an alias so existing apps keep working. Drag-and-drop file upload area for AWS S3. Supports file type filtering, upload limits, custom drag zone styling, and paste-to-upload. Requires an `AwsS3PresignedPostPolicy` request to define the S3 upload policy.
3
+ __Deprecated__ — use the provider-neutral &lt;a href=&quot;/UploadDragger&quot;&gt;UploadDragger&lt;/a&gt; block with `uploadPolicyRequestId` instead. S3UploadDragger remains as an alias so existing apps keep working. Drag-and-drop file upload area for AWS S3. Supports file type filtering, upload limits, custom drag zone styling, and paste-to-upload. Requires an `AwsS3PresignedPostPolicy` request to define the S3 upload policy.
4
4
 
5
5
  > The S3UploadDragger requires an AwsS3Bucket connection and AwsS3PresignedPostPolicy request to upload files. The examples on this page demonstrate UI configuration only — uploads will not function without a configured S3 connection.
6
6
 
@@ -1,6 +1,6 @@
1
1
  # S3UploadPhoto
2
2
 
3
- __Deprecated__ — use the provider-neutral <a href="/UploadPhoto">UploadPhoto</a> block with `uploadPolicyRequestId` instead. S3UploadPhoto remains as an alias so existing apps keep working. Picture-card style image upload for AWS S3. Displays a camera icon with upload text in a card format. Only accepts image files. Requires an `AwsS3PresignedPostPolicy` request to define the S3 upload policy.
3
+ __Deprecated__ — use the provider-neutral &lt;a href=&quot;/UploadPhoto&quot;&gt;UploadPhoto&lt;/a&gt; block with `uploadPolicyRequestId` instead. S3UploadPhoto remains as an alias so existing apps keep working. Picture-card style image upload for AWS S3. Displays a camera icon with upload text in a card format. Only accepts image files. Requires an `AwsS3PresignedPostPolicy` request to define the S3 upload policy.
4
4
 
5
5
  > The S3UploadPhoto requires an AwsS3Bucket connection and AwsS3PresignedPostPolicy request to upload files. The examples on this page demonstrate UI configuration only — uploads will not function without a configured S3 connection.
6
6
 
@@ -732,7 +732,7 @@ Segmented control for switching between options.
732
732
  | `options.$.disabled` | boolean | `false` | Disable the option if true. |
733
733
  | `options.$.icon` | string | - | Name of a React-Icon (See [all icons](https://react-icons.github.io/react-icons/)) to display in the segment option. |
734
734
  | `shape` | string | `"default"` | Shape of the segmented control. Enum: `default`, `round`. |
735
- | `size` | string | `"middle"` | Size of the block. Enum: `small`, `middle`, `large`. |
735
+ | `size` | string | `"default"` | Size of the block. Enum: `small`, `default`, `large`. |
736
736
  | `vertical` | boolean | `false` | Display the segmented control vertically. |
737
737
  | `label` | object | - | Label properties. |
738
738
  | `label.align` | string | `"left"` | Align label left or right when inline. Enum: `left`, `right`. |
@@ -1094,7 +1094,7 @@ Dropdown selector with search, clear, and custom icons.
1094
1094
  | `placeholder` | string | `"Select item"` | Placeholder text inside the block before user selects input. |
1095
1095
  | `loadingPlaceholder` | string | `"Loading"` | Placeholder text to show in options while the block is loading. |
1096
1096
  | `notFoundContent` | string | `"not Found"` | Placeholder text to show when list of options are empty. |
1097
- | `showArrow` | boolean | `true` | Show the suffix icon at the drop-down position of the selector. antd shows the arrow by default; `false` hides it by clearing the suffix icon. |
1097
+ | `showArrow` | boolean | `true` | Show the suffix icon at the drop-down position of the selector. |
1098
1098
  | `showSearch` | boolean | `true` | Make the selector options searchable. |
1099
1099
  | `size` | string | `"default"` | Size of the block. Enum: `small`, `default`, `large`. |
1100
1100
  | `suffixIcon` | string \| object | `"AiOutlineDown"` | Name of an React-Icon (See all icons) or properties of an Icon block to customize icon at the drop-down position of the selector. |
@@ -1,6 +1,6 @@
1
1
  # TiptapMentionInput
2
2
 
3
- Rich-text editor with @-mention support. Same feature set as TiptapInput, plus a mention dropdown populated from a static options list or a request. Mention options can be marked as groups (roles, teams, queues) to render under their own menu section, as distinctly coloured chips, and with a hover popover listing the group's current members. See the guide below.
3
+ Rich-text editor with @-mention support. Same feature set as TiptapInput, plus a mention dropdown populated from a static options list or a request. Mention options can be marked as groups (roles, teams, queues) to render under their own menu section, as distinctly coloured chips, and with a hover popover listing the group&#39;s current members. See the guide below.
4
4
 
5
5
  ## Group mentions
6
6
 
@@ -98,7 +98,7 @@ Inline tree with nested options and checkboxes. (Renamed from `TreeSelector`.)
98
98
  | `parentKey` | string | - | Tree selectors only: names each row’s parent id. Build a flat `data`/`options` array where each row has a `primaryKey` (its own id) and a `parentKey` whose value equals the parent row’s `primaryKey`. Rows whose `parentKey` is empty or points at no row become tree roots. Supports dotted paths. |
99
99
  | `options` | array | `[]` | Options can either be an array of primitive values, on an array of label, value pairs - supports html. |
100
100
  | `options.$.label` | string | - | Value label shown to user - supports html. |
101
- | `options.$.value` | - | - | Option value. Can be of any type. |
101
+ | `options.$.value` | string \| number \| boolean | - | Option value. |
102
102
  | `options.$.disabled` | boolean | `false` | Disable the option if true. |
103
103
  | `options.$.style` | object | - | Css style to apply to the option. |
104
104
  | `options.$.color` | string | - | Color applied to this option when it is selected. Falls back to the block-level color when not set. |
@@ -82,7 +82,7 @@ Searchable multiple-select tree dropdown (tags or checkboxes). Driven by flat `d
82
82
  | `parentKey` | string | - | Tree selectors only: names each row’s parent id. Build a flat `data`/`options` array where each row has a `primaryKey` (its own id) and a `parentKey` whose value equals the parent row’s `primaryKey`. Rows whose `parentKey` is empty or points at no row become tree roots. Supports dotted paths. |
83
83
  | `options` | array | `[]` | Options can either be an array of primitive values, on an array of label, value pairs - supports html. |
84
84
  | `options.$.label` | string | - | Value label shown to user - supports html. |
85
- | `options.$.value` | - | - | Option value. Can be of any type. |
85
+ | `options.$.value` | string \| number \| boolean | - | Option value. |
86
86
  | `options.$.disabled` | boolean | `false` | Disable the option if true. |
87
87
  | `options.$.style` | object | - | Css style to apply to the option. |
88
88
  | `options.$.color` | string | - | Color applied to this option when it is selected. Falls back to the block-level color when not set. |
@@ -108,7 +108,7 @@ Searchable single-select tree dropdown. Driven by flat `data`/`options` with `pr
108
108
  | `parentKey` | string | - | Tree selectors only: names each row’s parent id. Build a flat `data`/`options` array where each row has a `primaryKey` (its own id) and a `parentKey` whose value equals the parent row’s `primaryKey`. Rows whose `parentKey` is empty or points at no row become tree roots. Supports dotted paths. |
109
109
  | `options` | array | `[]` | Options can either be an array of primitive values, on an array of label, value pairs - supports html. |
110
110
  | `options.$.label` | string | - | Value label shown to user - supports html. |
111
- | `options.$.value` | - | - | Option value. Can be of any type. |
111
+ | `options.$.value` | string \| number \| boolean | - | Option value. |
112
112
  | `options.$.disabled` | boolean | `false` | Disable the option if true. |
113
113
  | `options.$.style` | object | - | Css style to apply to the option. |
114
114
  | `options.$.color` | string | - | Color applied to this option when it is selected. Falls back to the block-level color when not set. |
@@ -1,6 +1,6 @@
1
1
  # MasonryList
2
2
 
3
- Masonry-style grid layout for list data. Items flow into columns and stack vertically, filling gaps left by shorter items. Provide an array in state and use _state operators in the template to access each item's data.
3
+ Masonry-style grid layout for list data. Items flow into columns and stack vertically, filling gaps left by shorter items. Provide an array in state and use _state operators in the template to access each item&#39;s data.
4
4
 
5
5
  ```yaml
6
6
  - id: ml_basic
@@ -29,7 +29,6 @@ The regex operator has shorthand argument definitions that can be used on web cl
29
29
  - `null`
30
30
  - `undefined`
31
31
  - `none` (`null` or `undefined`)
32
- - `empty` (`null`, `undefined`, `''`, or `[]` - note that `0`, `false` and `{}` are not empty)
33
32
  - `primitive` (`undefined`, `null`, `string`, `number`, `boolean`, or `date`)
34
33
  - `on: any`: The value to test. One of `on` or `key` must be specified unless the operator is used in an input block.
35
34
  - `key: string`: The key of a value in `state` to test. One of `on` or `key` must be specified unless the operator is used in an input block.
@@ -61,23 +60,13 @@ Returns: `true` if a number.
61
60
  id: input
62
61
  type: TextInput
63
62
  validate:
64
- - message: This field is required.
63
+ - message: This field id required.
65
64
  status: error
66
65
  pass:
67
66
  _not:
68
- _type: empty
67
+ _type: none
69
68
  ```
70
- Returns: `true` if the input has a value. This is the test the `required` block field applies.
71
-
72
- ###### Check if a value is empty:
73
- ```yaml
74
- _type:
75
- type: empty
76
- on:
77
- _state: selected_tags
78
- ```
79
- Returns: `true` if `selected_tags` is `null`, `undefined`, `''` or `[]`, and `false` for any
80
- other value, including `0`, `false` and `{}`.
69
+ Returns: `true` if the input is none.
81
70
 
82
71
  ###### Test if an id in the `urlQuery` is undefined or null:
83
72
  ```yaml
@@ -27,18 +27,3 @@ plugins:
27
27
  version: 1.0.0
28
28
  typePrefix: Other
29
29
  ```
30
-
31
- ## Plugin meta
32
-
33
- Every plugin type can describe itself to the build and to AI coding agents through a `meta` object. For blocks it is the `meta.js` next to the block (`category`, `valueType`, `initValue`, `cssKeys`, `events`, `properties`, ...), for requests it is the `meta` property on the request function (`checkRead`, `checkWrite`), and for operators a package may export a `./metas` module with one object per operator, mirroring `./schemas`.
34
-
35
- All three accept `meta.hazards`: a list of behaviours of the type that its schema cannot express, which the dev server's docs and MCP endpoint return to agents alongside the schema (see [AI agent docs](/ai-agent-docs)). Each hazard is:
36
-
37
- ```yaml
38
- hazards:
39
- - id: html-style-stripped # kebab-case, unique within the type
40
- message: Content is sanitised with DOMPurify, so <style>, <script> and inline event handlers are removed. Use DangerousHtml for a trusted <style> block.
41
- see: display-blocks/html # a docs slug, or null
42
- ```
43
-
44
- The `message` is one or two plain sentences saying what happens and what to do instead. Only add a hazard for a behaviour that is verified in the plugin's code — an agent will rely on it.
package/index.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "5.6.0",
2
+ "version": "5.4.0",
3
3
  "docs": [
4
4
  {
5
5
  "slug": "other/introduction",
@@ -289,12 +289,6 @@
289
289
  "section": "Other",
290
290
  "path": "content/other/next-auth-providers.md"
291
291
  },
292
- {
293
- "slug": "testing/config-tests",
294
- "title": "Config Tests",
295
- "section": "Testing",
296
- "path": "content/testing/config-tests.md"
297
- },
298
292
  {
299
293
  "slug": "testing/e2e-introduction",
300
294
  "title": "E2E Testing",
@@ -547,22 +541,6 @@
547
541
  "kind": "block",
548
542
  "typeName": "Switch"
549
543
  },
550
- {
551
- "slug": "input-blocks/tagmultipleselector",
552
- "title": "TagMultipleSelector",
553
- "section": "Input Blocks",
554
- "path": "content/input-blocks/tagmultipleselector.md",
555
- "kind": "block",
556
- "typeName": "TagMultipleSelector"
557
- },
558
- {
559
- "slug": "input-blocks/tagselector",
560
- "title": "TagSelector",
561
- "section": "Input Blocks",
562
- "path": "content/input-blocks/tagselector.md",
563
- "kind": "block",
564
- "typeName": "TagSelector"
565
- },
566
544
  {
567
545
  "slug": "input-blocks/textarea",
568
546
  "title": "TextArea",
@@ -2281,14 +2259,6 @@
2281
2259
  "kind": "block",
2282
2260
  "typeName": ":try"
2283
2261
  },
2284
- {
2285
- "slug": "controls/while",
2286
- "title": ":while",
2287
- "section": "Controls",
2288
- "path": "content/controls/while.md",
2289
- "kind": "block",
2290
- "typeName": ":while"
2291
- },
2292
2262
  {
2293
2263
  "slug": "migration/upgrade-guide",
2294
2264
  "title": "Upgrade Guide",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lowdefy/docs-content",
3
- "version": "0.0.0-experimental-20260910082708",
3
+ "version": "6.0.0",
4
4
  "license": "Apache-2.0",
5
5
  "description": "Lowdefy documentation extracted as markdown for AI coding agents.",
6
6
  "homepage": "https://lowdefy.com",
@@ -20,13 +20,11 @@
20
20
  "type": "module",
21
21
  "exports": {
22
22
  "./index.json": "./index.json",
23
- "./hazards.json": "./hazards.json",
24
23
  "./scripts/extractAgentDocs.js": "./scripts/extractAgentDocs.js",
25
24
  "./content/*": "./content/*"
26
25
  },
27
26
  "files": [
28
27
  "content/**",
29
- "hazards.json",
30
28
  "index.json",
31
29
  "scripts/*"
32
30
  ],
@@ -1,46 +0,0 @@
1
- # :while
2
-
3
- ```
4
- ({:while: boolean, :do: routine}): void
5
- ```
6
-
7
- The `:while` control implements a while loop within a routine. The routine defined in the `:do` key will be repeated as long as the test defined using the `:while` key is true.
8
-
9
- #### Keys
10
-
11
- - `:while: boolean`: __Required__ - The test that will determine whether or not the defined routine should execute again.
12
- - `:do: routine`: __Required__ - The routine to run while the test condition holds.
13
-
14
- The `:while` condition is evaluated fresh before every iteration, against the routine's current `state` and `steps`. This is how the loop terminates - the routine in `:do` changes the state or step results that the condition reads.
15
-
16
- Unlike `:for`, a `:while` loop does not index the step results of its body. A `:while` has no item to index by, so each iteration overwrites the previous iteration's step results, and `_step: my_step` inside or after the loop reads the value from the latest iteration.
17
-
18
- There is no iteration cap and no timeout. A condition that the routine in `:do` never falsifies loops forever, exactly as it would in JavaScript.
19
-
20
- #### Examples
21
-
22
- ###### Simple Example
23
- ```
24
- - :set_state:
25
- count: 0
26
- - :while:
27
- _lt:
28
- - _state: count
29
- - 5
30
- :do:
31
- - :log:
32
- _state: count
33
- - :set_state:
34
- count:
35
- _sum:
36
- - _state: count
37
- - 1
38
- ```
39
- Logs:
40
- ```
41
- 0
42
- 1
43
- 2
44
- 3
45
- 4
46
- ```
@@ -1,101 +0,0 @@
1
- # TagMultipleSelector
2
-
3
- Multi-select input rendered as a row of toggleable, colored tag pills.
4
-
5
- ```yaml
6
- - id: basic_strings
7
- type: TagMultipleSelector
8
- properties:
9
- title: Domains
10
- options:
11
- - Ethics
12
- - Environment
13
- - Governance
14
- - Social
15
- - Data Privacy
16
- ```
17
-
18
- ```yaml
19
- - id: label_value
20
- type: TagMultipleSelector
21
- properties:
22
- title: Status Filter
23
- options:
24
- - label: Draft
25
- value: draft
26
- - label: In Review
27
- value: in_review
28
- - label: Published
29
- value: published
30
- - label: Archived
31
- value: archived
32
- disabled: true
33
- ```
34
-
35
- ```yaml
36
- - id: explicit_colors
37
- type: TagMultipleSelector
38
- properties:
39
- title: Priorities
40
- options:
41
- - label: Low
42
- value: low
43
- color: "#59A14F"
44
- - label: Medium
45
- value: medium
46
- color: "#EDC948"
47
- - label: High
48
- value: high
49
- color: "#E15759"
50
- - id: single_accent
51
- type: TagMultipleSelector
52
- properties:
53
- title: Interests
54
- colored: false
55
- options:
56
- - Design
57
- - Engineering
58
- - Product
59
- - Research
60
- ```
61
-
62
- | Property | Type | Default | Description |
63
- | --- | --- | --- | --- |
64
- | `options` | array | - | Options to select from. Primitives, or { label, value, color, disabled } - an explicit color overrides the stable palette color. |
65
- | `options.$.label` | string | - | Tag label. Defaults to the value. |
66
- | `options.$.value` | - | - | Option value written into the selection array. |
67
- | `options.$.color` | string | - | Explicit tag color (hex or CSS color). Overrides the stable palette color. |
68
- | `options.$.disabled` | boolean | `false` | Disable this tag. |
69
- | `colored` | boolean | `true` | Give each option a stable color (hash of its value over a fixed palette). false = single primary accent. |
70
- | `disabled` | boolean | `false` | Disable the block if true. |
71
- | `size` | string | `"default"` | Size of the block. Enum: `small`, `default`, `large`. |
72
- | `label` | object | - | Label properties. |
73
- | `label.align` | string | `"left"` | Align label left or right when inline. Enum: `left`, `right`. |
74
- | `label.colon` | boolean | `true` | Append label with colon. |
75
- | `label.extra` | string | - | Extra text to display beneath the content - supports html. |
76
- | `label.title` | string | - | Label title - supports html. |
77
- | `label.tooltip` | string \| object | - | Help tooltip shown via an icon beside the label. A string sets the tooltip text (supports html), or an object to also customize the icon and color. Use the block's onTooltipClick event to respond to clicks on the icon. |
78
- | `label.tooltip.title` | string | - | Tooltip text shown on hover - supports html. |
79
- | `label.tooltip.icon` | string | `"AiOutlineQuestionCircle"` | Name of the icon to show beside the label. |
80
- | `label.tooltip.color` | string | - | Color of the tooltip icon. |
81
- | `label.span` | number | - | Label inline span. |
82
- | `label.disabled` | boolean | `false` | Hide input label. |
83
- | `label.hasFeedback` | boolean | `true` | Display feedback extra from validation, this does not disable validation. |
84
- | `label.inline` | boolean | `false` | Render input and label inline. |
85
- | `title` | string | - | Title to describe the input component, if no title is specified the block id is displayed - supports html. |
86
-
87
- | Event | Event Data | Description |
88
- | --- | --- | --- |
89
- | `onChange` | `{ value }` | Trigger actions when the selection is changed. |
90
- | `onTooltipClick` | \- | Trigger actions when the tooltip icon is clicked. |
91
-
92
- | Key | Target |
93
- | --- | --- |
94
- | `/block` | Outer block wrapper (always available). |
95
- | `/element` | The TagMultipleSelector tag row. |
96
- | `/tag` | Each tag pill. |
97
- | `/label` | The TagMultipleSelector label. |
98
- | `/extra` | The TagMultipleSelector extra content. |
99
- | `/feedback` | The TagMultipleSelector validation feedback. |
100
-
101
- No slots defined.
@@ -1,101 +0,0 @@
1
- # TagSelector
2
-
3
- Single-select input rendered as a row of toggleable, colored tag pills.
4
-
5
- ```yaml
6
- - id: basic_strings
7
- type: TagSelector
8
- properties:
9
- title: Domain
10
- options:
11
- - Ethics
12
- - Environment
13
- - Governance
14
- - Social
15
- - Data Privacy
16
- ```
17
-
18
- ```yaml
19
- - id: label_value
20
- type: TagSelector
21
- properties:
22
- title: Status
23
- options:
24
- - label: Draft
25
- value: draft
26
- - label: In Review
27
- value: in_review
28
- - label: Published
29
- value: published
30
- - label: Archived
31
- value: archived
32
- disabled: true
33
- ```
34
-
35
- ```yaml
36
- - id: explicit_colors
37
- type: TagSelector
38
- properties:
39
- title: Priority
40
- options:
41
- - label: Low
42
- value: low
43
- color: "#59A14F"
44
- - label: Medium
45
- value: medium
46
- color: "#EDC948"
47
- - label: High
48
- value: high
49
- color: "#E15759"
50
- - id: single_accent
51
- type: TagSelector
52
- properties:
53
- title: Interest
54
- colored: false
55
- options:
56
- - Design
57
- - Engineering
58
- - Product
59
- - Research
60
- ```
61
-
62
- | Property | Type | Default | Description |
63
- | --- | --- | --- | --- |
64
- | `options` | array | - | Options to select from. Primitives, or { label, value, color, disabled } - an explicit color overrides the stable palette color. |
65
- | `options.$.label` | string | - | Tag label. Defaults to the value. |
66
- | `options.$.value` | - | - | Option value set as the selection when the tag is selected. |
67
- | `options.$.color` | string | - | Explicit tag color (hex or CSS color). Overrides the stable palette color. |
68
- | `options.$.disabled` | boolean | `false` | Disable this tag. |
69
- | `colored` | boolean | `true` | Give each option a stable color (hash of its value over a fixed palette). false = single primary accent. |
70
- | `disabled` | boolean | `false` | Disable the block if true. |
71
- | `size` | string | `"default"` | Size of the block. Enum: `small`, `default`, `large`. |
72
- | `label` | object | - | Label properties. |
73
- | `label.align` | string | `"left"` | Align label left or right when inline. Enum: `left`, `right`. |
74
- | `label.colon` | boolean | `true` | Append label with colon. |
75
- | `label.extra` | string | - | Extra text to display beneath the content - supports html. |
76
- | `label.title` | string | - | Label title - supports html. |
77
- | `label.tooltip` | string \| object | - | Help tooltip shown via an icon beside the label. A string sets the tooltip text (supports html), or an object to also customize the icon and color. Use the block's onTooltipClick event to respond to clicks on the icon. |
78
- | `label.tooltip.title` | string | - | Tooltip text shown on hover - supports html. |
79
- | `label.tooltip.icon` | string | `"AiOutlineQuestionCircle"` | Name of the icon to show beside the label. |
80
- | `label.tooltip.color` | string | - | Color of the tooltip icon. |
81
- | `label.span` | number | - | Label inline span. |
82
- | `label.disabled` | boolean | `false` | Hide input label. |
83
- | `label.hasFeedback` | boolean | `true` | Display feedback extra from validation, this does not disable validation. |
84
- | `label.inline` | boolean | `false` | Render input and label inline. |
85
- | `title` | string | - | Title to describe the input component, if no title is specified the block id is displayed - supports html. |
86
-
87
- | Event | Event Data | Description |
88
- | --- | --- | --- |
89
- | `onChange` | `{ value }` | Trigger actions when the selection is changed. |
90
- | `onTooltipClick` | \- | Trigger actions when the tooltip icon is clicked. |
91
-
92
- | Key | Target |
93
- | --- | --- |
94
- | `/block` | Outer block wrapper (always available). |
95
- | `/element` | The TagSelector tag row. |
96
- | `/tag` | Each tag pill. |
97
- | `/label` | The TagSelector label. |
98
- | `/extra` | The TagSelector extra content. |
99
- | `/feedback` | The TagSelector validation feedback. |
100
-
101
- No slots defined.