@kubex/zinc 1.1.62 → 1.1.64

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 (36) hide show
  1. package/dist/custom-elements.json +3141 -1885
  2. package/dist/vscode.html-custom-data.json +102 -3
  3. package/dist/web-types.json +224 -6
  4. package/dist/zn.d.ts +235 -0
  5. package/dist/zn.min.js +795 -679
  6. package/docs/data/preview-frame-payload-error.json +4 -0
  7. package/docs/data/preview-frame-payload.json +6 -0
  8. package/docs/pages/components/form-group.md +12 -0
  9. package/docs/pages/components/preview-frame-demo.njk +138 -0
  10. package/docs/pages/components/preview-frame.md +105 -0
  11. package/docs/pages/components/remarkd-editor.md +103 -0
  12. package/docs/pages/components/toggle.md +2 -2
  13. package/package.json +3 -2
  14. package/src/components/file/file.component.ts +16 -1
  15. package/src/components/form-group/form-group.component.ts +24 -12
  16. package/src/components/form-group/form-group.scss +10 -0
  17. package/src/components/form-group/form-group.test.ts +19 -0
  18. package/src/components/preview-frame/index.ts +12 -0
  19. package/src/components/preview-frame/preview-frame.component.ts +246 -0
  20. package/src/components/preview-frame/preview-frame.scss +27 -0
  21. package/src/components/preview-frame/preview-frame.test.ts +268 -0
  22. package/src/components/query-builder/query-builder.component.ts +14 -6
  23. package/src/components/remarkd-editor/index.ts +12 -0
  24. package/src/components/remarkd-editor/remarkd-editor.component.ts +752 -0
  25. package/src/components/remarkd-editor/remarkd-editor.scss +241 -0
  26. package/src/components/remarkd-editor/remarkd-editor.test.ts +147 -0
  27. package/src/components/select/select.component.ts +4 -0
  28. package/src/components/select/select.test.ts +29 -0
  29. package/src/components/sp/sp.scss +5 -1
  30. package/src/components/tabs/tabs.component.ts +9 -4
  31. package/src/components/tabs/tabs.test.ts +42 -1
  32. package/src/components/tile/tile.scss +5 -1
  33. package/src/components/toggle/toggle.component.ts +3 -12
  34. package/src/components/toggle/toggle.test.ts +29 -0
  35. package/src/events/zn-error.ts +1 -1
  36. package/src/zinc.ts +2 -0
@@ -1722,7 +1722,7 @@
1722
1722
  },
1723
1723
  {
1724
1724
  "name": "zn-form-group",
1725
- "description": "Short summary of the component's intended use.\n---\n\n\n### **Slots:**\n - _default_ - The default slot.",
1725
+ "description": "Short summary of the component's intended use.\n---\n\n\n### **Slots:**\n - _default_ - The default slot.\n- **chip** - A chip displayed under the form group's help text.",
1726
1726
  "attributes": [
1727
1727
  {
1728
1728
  "name": "label",
@@ -1740,7 +1740,8 @@
1740
1740
  "values": []
1741
1741
  },
1742
1742
  { "name": "cols", "values": [] },
1743
- { "name": "layout", "values": [] }
1743
+ { "name": "layout", "values": [] },
1744
+ { "name": "pad", "values": [] }
1744
1745
  ],
1745
1746
  "references": [
1746
1747
  {
@@ -2908,6 +2909,53 @@
2908
2909
  }
2909
2910
  ]
2910
2911
  },
2912
+ {
2913
+ "name": "zn-preview-frame",
2914
+ "description": "Embeds a live preview iframe and drives the hp-preview postMessage\nprotocol: answers the frame's ready handshake with a config payload fetched\nfrom data-uri, auto-saves watched forms on change, and refreshes the\npreview after each save.\n---\n\n\n### **Events:**\n - **zn-error** - Emitted when the preview reports a render error or a save fails.\n\n### **Methods:**\n - **refresh()** - Re-fetches the payload and pushes a fresh config to the preview.\n\n### **CSS Parts:**\n - **base** - The component's base wrapper.\n- **iframe** - The preview iframe.\n- **error** - The error overlay.",
2915
+ "attributes": [
2916
+ {
2917
+ "name": "src",
2918
+ "description": "URL of the preview shell page (tokened embed URL).",
2919
+ "values": []
2920
+ },
2921
+ {
2922
+ "name": "frame-origin",
2923
+ "description": "Expected origin of the iframe; all postMessage traffic is checked against it.",
2924
+ "values": []
2925
+ },
2926
+ {
2927
+ "name": "data-uri",
2928
+ "description": "Endpoint returning the hp-preview:config payload JSON. The console proxy rewrites this attribute to an app-prefixed path for proper fetch resolution.",
2929
+ "values": []
2930
+ },
2931
+ {
2932
+ "name": "watch",
2933
+ "description": "Selector (resolved against the component's root node) for the forms to watch.\nDefaults to only forms explicitly opted in via a `data-auto-save` attribute —\nunmarked forms keep normal submit behavior and are never intercepted,\nauto-saved, or used to trigger a preview refresh. Override to widen the scope.",
2934
+ "values": []
2935
+ },
2936
+ {
2937
+ "name": "debounce",
2938
+ "description": "Debounce in ms between a form change and its auto-save.",
2939
+ "values": []
2940
+ },
2941
+ {
2942
+ "name": "zoom",
2943
+ "description": "Zooms the previewed page out (0–1]. The frame always fills the panel;\nzoom shrinks the content browser-style, so 0.4 shows the page at 40%\nsize with correspondingly more of it visible. 1 = natural size.",
2944
+ "values": []
2945
+ },
2946
+ {
2947
+ "name": "min-height",
2948
+ "description": "The visible height (in CSS pixels) of the preview panel. Fixed rather\nthan measured, because a measured height would feed back into the\nscaled iframe's layout box and grow unbounded.",
2949
+ "values": []
2950
+ }
2951
+ ],
2952
+ "references": [
2953
+ {
2954
+ "name": "Documentation",
2955
+ "url": "https://zinc.style/components/preview-frame"
2956
+ }
2957
+ ]
2958
+ },
2911
2959
  {
2912
2960
  "name": "zn-priority-list",
2913
2961
  "description": "A reorderable list where each item receives a numerical priority based on its position. Supports drag-and-drop\nand keyboard reordering. Priority values are submitted as form data via hidden inputs.\n---\n\n\n### **Events:**\n - **zn-change** - Emitted when the order of items changes.\n- **zn-reorder** - Emitted when items are reordered. Call `getPriorityMap()` on the component to get the updated `{ key: string, priority: number }[]` array.\n\n### **Methods:**\n - **getPriorityMap(): _PriorityItem[]_** - Returns the priority map: an array of { key, priority } objects.\n- **checkValidity(): _boolean_** - Checks for validity but does not show a validation message.\n- **getForm(): _HTMLFormElement | null_** - Gets the associated form, if one exists.\n- **reportValidity(): _boolean_** - Checks for validity and shows the browser's validation message if the control is invalid.\n- **setCustomValidity(_message)** - Sets a custom validation message. Pass an empty string to restore validity.\n\n### **Slots:**\n - _default_ - The default slot where list items are placed. Each slotted element must have a `value` attribute that uniquely identifies the item. The component automatically assigns slot names to project each item into the correct position. The item's position in the list determines its priority (top = `priority-start`, incrementing).\n- **label** - The component's label. Required for proper accessibility. Alternatively, use the `label` attribute.\n- **label-tooltip** - Used to add text displayed in a tooltip next to the label.\n- **help-text** - Text that describes how to use the component. Alternatively, use the `help-text` attribute.\n\n### **CSS Properties:**\n - **--zn-priority-list-item-gap** - The gap between list items. Defaults to `var(--zn-spacing-2x-small)`. _(default: undefined)_\n- **--zn-priority-list-item-padding** - The padding inside each item. Defaults to `var(--zn-spacing-small) var(--zn-spacing-medium)`. _(default: undefined)_\n- **--zn-priority-list-handle-color** - The color of the drag handle. Defaults to `var(--zn-color-neutral-500)`. _(default: undefined)_\n- **--zn-priority-list-priority-color** - The color of the priority number. Defaults to `var(--zn-color-neutral-600)`. _(default: undefined)_\n\n### **CSS Parts:**\n - **form-control** - The form control wrapper.\n- **form-control-label** - The label wrapper.\n- **form-control-input** - The input area wrapper.\n- **form-control-help-text** - The help text wrapper.\n- **list** - The list container.\n- **item** - An individual list item row.\n- **drag-handle** - The drag handle icon.\n- **priority** - The priority number badge.\n- **content** - The content area of an item.",
@@ -3205,6 +3253,53 @@
3205
3253
  }
3206
3254
  ]
3207
3255
  },
3256
+ {
3257
+ "name": "zn-remarkd-editor",
3258
+ "description": "A Notion-style block editor for remarkd content. Blocks render inline; click one to edit its source.\n---\n\n\n### **Events:**\n - **zn-input** - Emitted on each keystroke while editing a block.\n- **zn-change** - Emitted when a block edit is committed and the value changes.\n\n### **Methods:**\n - **focus()** - Starts editing the first block, or a new block if the document is empty.\n- **blur()** - Commits any in-progress block edit.\n\n### **CSS Parts:**\n - **base** - The component's base wrapper.\n- **toolbar** - The always-visible block-insert toolbar.\n- **block** - A rendered block wrapper.\n- **rendered** - The rendered remarkd output of a block.\n- **input** - The textarea shown while editing a block.\n- **slash-menu** - The context menu opened by typing \"/\" in a block.",
3259
+ "attributes": [
3260
+ {
3261
+ "name": "name",
3262
+ "description": "The name of the control, submitted as part of form data.",
3263
+ "values": []
3264
+ },
3265
+ {
3266
+ "name": "value",
3267
+ "description": "The current remarkd source.",
3268
+ "values": []
3269
+ },
3270
+ {
3271
+ "name": "placeholder",
3272
+ "description": "Placeholder shown when the document is empty.",
3273
+ "values": []
3274
+ },
3275
+ {
3276
+ "name": "attachment-url",
3277
+ "description": "Endpoint for image uploads. Posting the file metadata here must return\n`{uploadPath, uploadUrl}`; the file is then PUT to `uploadUrl` and\n`uploadPath` is inserted into the document. When unset, adding an image\nprompts for a URL instead.",
3278
+ "values": []
3279
+ },
3280
+ {
3281
+ "name": "required",
3282
+ "description": "Makes the editor required for form submission.",
3283
+ "values": []
3284
+ },
3285
+ {
3286
+ "name": "readonly",
3287
+ "description": "Makes the editor read-only.",
3288
+ "values": []
3289
+ },
3290
+ {
3291
+ "name": "disabled",
3292
+ "description": "Disables the editor.",
3293
+ "values": []
3294
+ }
3295
+ ],
3296
+ "references": [
3297
+ {
3298
+ "name": "Documentation",
3299
+ "url": "https://zinc.style/components/remarkd-editor"
3300
+ }
3301
+ ]
3302
+ },
3208
3303
  {
3209
3304
  "name": "zn-reveal",
3210
3305
  "description": "Short summary of the component's intended use.\n---\n\n\n### **Events:**\n - **zn-event-name** - Emitted as an example.\n\n### **Slots:**\n - _default_ - The default slot.\n- **example** - An example slot.\n\n### **CSS Properties:**\n - **--example** - An example CSS custom property. _(default: undefined)_\n\n### **CSS Parts:**\n - **base** - The component's base wrapper.",
@@ -4059,7 +4154,11 @@
4059
4154
  { "name": "title", "values": [] },
4060
4155
  { "name": "name", "values": [] },
4061
4156
  { "name": "value", "values": [] },
4062
- { "name": "fallback", "values": [] },
4157
+ {
4158
+ "name": "fallback",
4159
+ "description": "The value submitted when the toggle is unchecked, so the toggle always submits a value.",
4160
+ "values": []
4161
+ },
4063
4162
  {
4064
4163
  "name": "size",
4065
4164
  "values": [
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://raw.githubusercontent.com/JetBrains/web-types/master/schema/web-types.json",
3
3
  "name": "@kubex/zinc",
4
- "version": "1.1.62",
4
+ "version": "1.1.64",
5
5
  "description-markup": "markdown",
6
6
  "contributions": {
7
7
  "html": {
@@ -4084,7 +4084,7 @@
4084
4084
  },
4085
4085
  {
4086
4086
  "name": "zn-form-group",
4087
- "description": "Short summary of the component's intended use.\n---\n\n\n### **Slots:**\n - _default_ - The default slot.",
4087
+ "description": "Short summary of the component's intended use.\n---\n\n\n### **Slots:**\n - _default_ - The default slot.\n- **chip** - A chip displayed under the form group's help text.",
4088
4088
  "doc-url": "",
4089
4089
  "attributes": [
4090
4090
  {
@@ -4109,9 +4109,19 @@
4109
4109
  {
4110
4110
  "name": "layout",
4111
4111
  "value": { "type": "string", "default": "\"1,2\"" }
4112
+ },
4113
+ {
4114
+ "name": "pad",
4115
+ "value": { "type": "boolean", "default": "false" }
4116
+ }
4117
+ ],
4118
+ "slots": [
4119
+ { "name": "", "description": "The default slot." },
4120
+ {
4121
+ "name": "chip",
4122
+ "description": "A chip displayed under the form group's help text."
4112
4123
  }
4113
4124
  ],
4114
- "slots": [{ "name": "", "description": "The default slot." }],
4115
4125
  "events": [],
4116
4126
  "js": {
4117
4127
  "properties": [
@@ -4131,7 +4141,8 @@
4131
4141
  "type": "string"
4132
4142
  },
4133
4143
  { "name": "forceCols", "type": "boolean" },
4134
- { "name": "layout", "type": "string" }
4144
+ { "name": "layout", "type": "string" },
4145
+ { "name": "pad", "type": "boolean" }
4135
4146
  ],
4136
4147
  "events": []
4137
4148
  }
@@ -6789,6 +6800,100 @@
6789
6800
  ]
6790
6801
  }
6791
6802
  },
6803
+ {
6804
+ "name": "zn-preview-frame",
6805
+ "description": "Embeds a live preview iframe and drives the hp-preview postMessage\nprotocol: answers the frame's ready handshake with a config payload fetched\nfrom data-uri, auto-saves watched forms on change, and refreshes the\npreview after each save.\n---\n\n\n### **Events:**\n - **zn-error** - Emitted when the preview reports a render error or a save fails.\n\n### **Methods:**\n - **refresh()** - Re-fetches the payload and pushes a fresh config to the preview.\n\n### **CSS Parts:**\n - **base** - The component's base wrapper.\n- **iframe** - The preview iframe.\n- **error** - The error overlay.",
6806
+ "doc-url": "",
6807
+ "attributes": [
6808
+ {
6809
+ "name": "src",
6810
+ "description": "URL of the preview shell page (tokened embed URL).",
6811
+ "value": { "type": "string", "default": "''" }
6812
+ },
6813
+ {
6814
+ "name": "frame-origin",
6815
+ "description": "Expected origin of the iframe; all postMessage traffic is checked against it.",
6816
+ "value": { "type": "string", "default": "''" }
6817
+ },
6818
+ {
6819
+ "name": "data-uri",
6820
+ "description": "Endpoint returning the hp-preview:config payload JSON. The console proxy rewrites this attribute to an app-prefixed path for proper fetch resolution.",
6821
+ "value": { "type": "string", "default": "''" }
6822
+ },
6823
+ {
6824
+ "name": "watch",
6825
+ "description": "Selector (resolved against the component's root node) for the forms to watch.\nDefaults to only forms explicitly opted in via a `data-auto-save` attribute —\nunmarked forms keep normal submit behavior and are never intercepted,\nauto-saved, or used to trigger a preview refresh. Override to widen the scope.",
6826
+ "value": { "type": "string", "default": "'form[data-auto-save]'" }
6827
+ },
6828
+ {
6829
+ "name": "debounce",
6830
+ "description": "Debounce in ms between a form change and its auto-save.",
6831
+ "value": { "type": "number", "default": "400" }
6832
+ },
6833
+ {
6834
+ "name": "zoom",
6835
+ "description": "Zooms the previewed page out (0–1]. The frame always fills the panel;\nzoom shrinks the content browser-style, so 0.4 shows the page at 40%\nsize with correspondingly more of it visible. 1 = natural size.",
6836
+ "value": { "type": "number", "default": "1" }
6837
+ },
6838
+ {
6839
+ "name": "min-height",
6840
+ "description": "The visible height (in CSS pixels) of the preview panel. Fixed rather\nthan measured, because a measured height would feed back into the\nscaled iframe's layout box and grow unbounded.",
6841
+ "value": { "type": "number", "default": "480" }
6842
+ }
6843
+ ],
6844
+ "events": [
6845
+ {
6846
+ "name": "zn-error",
6847
+ "description": "Emitted when the preview reports a render error or a save fails."
6848
+ }
6849
+ ],
6850
+ "js": {
6851
+ "properties": [
6852
+ {
6853
+ "name": "src",
6854
+ "description": "URL of the preview shell page (tokened embed URL).",
6855
+ "type": "string"
6856
+ },
6857
+ {
6858
+ "name": "frameOrigin",
6859
+ "description": "Expected origin of the iframe; all postMessage traffic is checked against it.",
6860
+ "type": "string"
6861
+ },
6862
+ {
6863
+ "name": "dataUri",
6864
+ "description": "Endpoint returning the hp-preview:config payload JSON. The console proxy rewrites this attribute to an app-prefixed path for proper fetch resolution.",
6865
+ "type": "string"
6866
+ },
6867
+ {
6868
+ "name": "watch",
6869
+ "description": "Selector (resolved against the component's root node) for the forms to watch.\nDefaults to only forms explicitly opted in via a `data-auto-save` attribute —\nunmarked forms keep normal submit behavior and are never intercepted,\nauto-saved, or used to trigger a preview refresh. Override to widen the scope.",
6870
+ "type": "string"
6871
+ },
6872
+ {
6873
+ "name": "debounce",
6874
+ "description": "Debounce in ms between a form change and its auto-save.",
6875
+ "type": "number"
6876
+ },
6877
+ {
6878
+ "name": "zoom",
6879
+ "description": "Zooms the previewed page out (0–1]. The frame always fills the panel;\nzoom shrinks the content browser-style, so 0.4 shows the page at 40%\nsize with correspondingly more of it visible. 1 = natural size.",
6880
+ "type": "number"
6881
+ },
6882
+ {
6883
+ "name": "minHeight",
6884
+ "description": "The visible height (in CSS pixels) of the preview panel. Fixed rather\nthan measured, because a measured height would feed back into the\nscaled iframe's layout box and grow unbounded.",
6885
+ "type": "number"
6886
+ },
6887
+ { "name": "frame", "type": "HTMLIFrameElement" }
6888
+ ],
6889
+ "events": [
6890
+ {
6891
+ "name": "zn-error",
6892
+ "description": "Emitted when the preview reports a render error or a save fails."
6893
+ }
6894
+ ]
6895
+ }
6896
+ },
6792
6897
  {
6793
6898
  "name": "zn-priority-list",
6794
6899
  "description": "A reorderable list where each item receives a numerical priority based on its position. Supports drag-and-drop\nand keyboard reordering. Priority values are submitted as form data via hidden inputs.\n---\n\n\n### **Events:**\n - **zn-change** - Emitted when the order of items changes.\n- **zn-reorder** - Emitted when items are reordered. Call `getPriorityMap()` on the component to get the updated `{ key: string, priority: number }[]` array.\n\n### **Methods:**\n - **getPriorityMap(): _PriorityItem[]_** - Returns the priority map: an array of { key, priority } objects.\n- **checkValidity(): _boolean_** - Checks for validity but does not show a validation message.\n- **getForm(): _HTMLFormElement | null_** - Gets the associated form, if one exists.\n- **reportValidity(): _boolean_** - Checks for validity and shows the browser's validation message if the control is invalid.\n- **setCustomValidity(_message)** - Sets a custom validation message. Pass an empty string to restore validity.\n\n### **Slots:**\n - _default_ - The default slot where list items are placed. Each slotted element must have a `value` attribute that uniquely identifies the item. The component automatically assigns slot names to project each item into the correct position. The item's position in the list determines its priority (top = `priority-start`, incrementing).\n- **label** - The component's label. Required for proper accessibility. Alternatively, use the `label` attribute.\n- **label-tooltip** - Used to add text displayed in a tooltip next to the label.\n- **help-text** - Text that describes how to use the component. Alternatively, use the `help-text` attribute.\n\n### **CSS Properties:**\n - **--zn-priority-list-item-gap** - The gap between list items. Defaults to `var(--zn-spacing-2x-small)`. _(default: undefined)_\n- **--zn-priority-list-item-padding** - The padding inside each item. Defaults to `var(--zn-spacing-small) var(--zn-spacing-medium)`. _(default: undefined)_\n- **--zn-priority-list-handle-color** - The color of the drag handle. Defaults to `var(--zn-color-neutral-500)`. _(default: undefined)_\n- **--zn-priority-list-priority-color** - The color of the priority number. Defaults to `var(--zn-color-neutral-600)`. _(default: undefined)_\n\n### **CSS Parts:**\n - **form-control** - The form control wrapper.\n- **form-control-label** - The label wrapper.\n- **form-control-input** - The input area wrapper.\n- **form-control-help-text** - The help text wrapper.\n- **list** - The list container.\n- **item** - An individual list item row.\n- **drag-handle** - The drag handle icon.\n- **priority** - The priority number badge.\n- **content** - The content area of an item.",
@@ -7484,6 +7589,114 @@
7484
7589
  ]
7485
7590
  }
7486
7591
  },
7592
+ {
7593
+ "name": "zn-remarkd-editor",
7594
+ "description": "A Notion-style block editor for remarkd content. Blocks render inline; click one to edit its source.\n---\n\n\n### **Events:**\n - **zn-input** - Emitted on each keystroke while editing a block.\n- **zn-change** - Emitted when a block edit is committed and the value changes.\n\n### **Methods:**\n - **focus()** - Starts editing the first block, or a new block if the document is empty.\n- **blur()** - Commits any in-progress block edit.\n\n### **CSS Parts:**\n - **base** - The component's base wrapper.\n- **toolbar** - The always-visible block-insert toolbar.\n- **block** - A rendered block wrapper.\n- **rendered** - The rendered remarkd output of a block.\n- **input** - The textarea shown while editing a block.\n- **slash-menu** - The context menu opened by typing \"/\" in a block.",
7595
+ "doc-url": "",
7596
+ "attributes": [
7597
+ {
7598
+ "name": "name",
7599
+ "description": "The name of the control, submitted as part of form data.",
7600
+ "value": { "type": "string", "default": "''" }
7601
+ },
7602
+ {
7603
+ "name": "value",
7604
+ "description": "The current remarkd source.",
7605
+ "value": { "type": "string", "default": "''" }
7606
+ },
7607
+ {
7608
+ "name": "placeholder",
7609
+ "description": "Placeholder shown when the document is empty.",
7610
+ "value": { "type": "string", "default": "'Type something…'" }
7611
+ },
7612
+ {
7613
+ "name": "attachment-url",
7614
+ "description": "Endpoint for image uploads. Posting the file metadata here must return\n`{uploadPath, uploadUrl}`; the file is then PUT to `uploadUrl` and\n`uploadPath` is inserted into the document. When unset, adding an image\nprompts for a URL instead.",
7615
+ "value": { "type": "string", "default": "''" }
7616
+ },
7617
+ {
7618
+ "name": "required",
7619
+ "description": "Makes the editor required for form submission.",
7620
+ "value": { "type": "boolean", "default": "false" }
7621
+ },
7622
+ {
7623
+ "name": "readonly",
7624
+ "description": "Makes the editor read-only.",
7625
+ "value": { "type": "boolean", "default": "false" }
7626
+ },
7627
+ {
7628
+ "name": "disabled",
7629
+ "description": "Disables the editor.",
7630
+ "value": { "type": "boolean", "default": "false" }
7631
+ }
7632
+ ],
7633
+ "events": [
7634
+ {
7635
+ "name": "zn-input",
7636
+ "description": "Emitted on each keystroke while editing a block."
7637
+ },
7638
+ {
7639
+ "name": "zn-change",
7640
+ "description": "Emitted when a block edit is committed and the value changes."
7641
+ }
7642
+ ],
7643
+ "js": {
7644
+ "properties": [
7645
+ {
7646
+ "name": "name",
7647
+ "description": "The name of the control, submitted as part of form data.",
7648
+ "type": "string"
7649
+ },
7650
+ {
7651
+ "name": "value",
7652
+ "description": "The current remarkd source.",
7653
+ "type": "string"
7654
+ },
7655
+ {
7656
+ "name": "defaultValue",
7657
+ "description": "The default value — used when resetting the form.",
7658
+ "type": "string"
7659
+ },
7660
+ {
7661
+ "name": "placeholder",
7662
+ "description": "Placeholder shown when the document is empty.",
7663
+ "type": "string"
7664
+ },
7665
+ {
7666
+ "name": "attachmentUrl",
7667
+ "description": "Endpoint for image uploads. Posting the file metadata here must return\n`{uploadPath, uploadUrl}`; the file is then PUT to `uploadUrl` and\n`uploadPath` is inserted into the document. When unset, adding an image\nprompts for a URL instead.",
7668
+ "type": "string"
7669
+ },
7670
+ {
7671
+ "name": "required",
7672
+ "description": "Makes the editor required for form submission.",
7673
+ "type": "boolean"
7674
+ },
7675
+ {
7676
+ "name": "readonly",
7677
+ "description": "Makes the editor read-only.",
7678
+ "type": "boolean"
7679
+ },
7680
+ {
7681
+ "name": "disabled",
7682
+ "description": "Disables the editor.",
7683
+ "type": "boolean"
7684
+ },
7685
+ { "name": "validity", "type": "ValidityState" },
7686
+ { "name": "validationMessage", "type": "string" }
7687
+ ],
7688
+ "events": [
7689
+ {
7690
+ "name": "zn-input",
7691
+ "description": "Emitted on each keystroke while editing a block."
7692
+ },
7693
+ {
7694
+ "name": "zn-change",
7695
+ "description": "Emitted when a block edit is committed and the value changes."
7696
+ }
7697
+ ]
7698
+ }
7699
+ },
7487
7700
  {
7488
7701
  "name": "zn-reveal",
7489
7702
  "description": "Short summary of the component's intended use.\n---\n\n\n### **Events:**\n - **zn-event-name** - Emitted as an example.\n\n### **Slots:**\n - _default_ - The default slot.\n- **example** - An example slot.\n\n### **CSS Properties:**\n - **--example** - An example CSS custom property. _(default: undefined)_\n\n### **CSS Parts:**\n - **base** - The component's base wrapper.",
@@ -9574,7 +9787,8 @@
9574
9787
  { "name": "value", "value": { "type": "string" } },
9575
9788
  {
9576
9789
  "name": "fallback",
9577
- "value": { "type": "string", "default": "''" }
9790
+ "description": "The value submitted when the toggle is unchecked, so the toggle always submits a value.",
9791
+ "value": { "type": "string", "default": "'off'" }
9578
9792
  },
9579
9793
  {
9580
9794
  "name": "size",
@@ -9654,7 +9868,11 @@
9654
9868
  { "name": "title", "type": "string" },
9655
9869
  { "name": "name", "type": "string" },
9656
9870
  { "name": "value", "type": "string" },
9657
- { "name": "fallbackValue", "type": "string" },
9871
+ {
9872
+ "name": "fallbackValue",
9873
+ "description": "The value submitted when the toggle is unchecked, so the toggle always submits a value.",
9874
+ "type": "string"
9875
+ },
9658
9876
  { "name": "size", "type": "'small' | 'medium' | 'large'" },
9659
9877
  { "name": "disabled", "type": "boolean" },
9660
9878
  { "name": "checked", "type": "boolean" },