@kubex/zinc 1.1.159 → 1.1.160

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.
@@ -26697,7 +26697,7 @@
26697
26697
  "name": "ZnPage",
26698
26698
  "slots": [
26699
26699
  {
26700
- "description": "Page content. Use zn-tab for named tabs and header-action/header-actions for header actions.",
26700
+ "description": "Page content. Use zn-tab for named tabs and header-action/header-actions for header actions. Clicking an element in the content with `tab=\"<tab id>\"` opens that tab.",
26701
26701
  "name": "",
26702
26702
  "inheritedFrom": {
26703
26703
  "name": "ZnTabs",
@@ -27027,6 +27027,11 @@
27027
27027
  }
27028
27028
  ]
27029
27029
  },
27030
+ {
27031
+ "kind": "field",
27032
+ "name": "handleContentTabClick",
27033
+ "privacy": "private"
27034
+ },
27030
27035
  {
27031
27036
  "kind": "method",
27032
27037
  "name": "handleNavigationSelect",
@@ -27135,6 +27140,10 @@
27135
27140
  {
27136
27141
  "name": "store",
27137
27142
  "default": "false"
27143
+ },
27144
+ {
27145
+ "name": "pushHistory",
27146
+ "default": "false"
27138
27147
  }
27139
27148
  ]
27140
27149
  },
@@ -28375,7 +28384,7 @@
28375
28384
  "tagNameWithoutPrefix": "page",
28376
28385
  "tagName": "zn-page",
28377
28386
  "customElement": true,
28378
- "jsDoc": "/**\n * @summary Combines a page header with tab navigation and tab panels.\n * @documentation https://zinc.style/components/page\n * @status experimental\n * @since 1.0\n *\n * @slot - Page content. Use zn-tab for named tabs and header-action/header-actions for header actions.\n * @slot description - Rich subtitle/description content. Falls back to the `summary` attribute when empty.\n * @slot bottom - Content rendered below the navbar row (e.g. chips, filters). Forwarded to the navbar's bottom slot.\n */",
28387
+ "jsDoc": "/**\n * @summary Combines a page header with tab navigation and tab panels.\n * @documentation https://zinc.style/components/page\n * @status experimental\n * @since 1.0\n *\n * @slot - Page content. Use zn-tab for named tabs and header-action/header-actions for header actions.\n * Clicking an element in the content with `tab=\"<tab id>\"` opens that tab.\n * @slot description - Rich subtitle/description content. Falls back to the `summary` attribute when empty.\n * @slot bottom - Content rendered below the navbar row (e.g. chips, filters). Forwarded to the navbar's bottom slot.\n */",
28379
28388
  "documentation": "https://zinc.style/components/page",
28380
28389
  "status": "experimental",
28381
28390
  "since": "1.0",
@@ -35834,42 +35843,22 @@
35834
35843
  },
35835
35844
  {
35836
35845
  "kind": "javascript-module",
35837
- "path": "components/rating/rating.js",
35846
+ "path": "components/reveal/reveal.js",
35838
35847
  "declarations": [
35839
35848
  {
35840
35849
  "kind": "class",
35841
35850
  "description": "",
35842
- "name": "ZnRating",
35851
+ "name": "ZnReveal",
35843
35852
  "cssProperties": [
35844
35853
  {
35845
35854
  "description": "An example CSS custom property.",
35846
35855
  "name": "--example"
35847
- },
35848
- {
35849
- "description": "The color of the preview value.",
35850
- "name": "--preview-color"
35851
- },
35852
- {
35853
- "description": "The font size of the preview value.",
35854
- "name": "--preview-size"
35855
35856
  }
35856
35857
  ],
35857
35858
  "cssParts": [
35858
- {
35859
- "description": "The form control that wraps the symbols and help text.",
35860
- "name": "form-control"
35861
- },
35862
- {
35863
- "description": "The help text's wrapper.",
35864
- "name": "form-control-help-text"
35865
- },
35866
35859
  {
35867
35860
  "description": "The component's base wrapper.",
35868
35861
  "name": "base"
35869
- },
35870
- {
35871
- "description": "The value shown next to the symbols when `preview` is enabled.",
35872
- "name": "preview"
35873
35862
  }
35874
35863
  ],
35875
35864
  "slots": [
@@ -35880,648 +35869,475 @@
35880
35869
  {
35881
35870
  "description": "An example slot.",
35882
35871
  "name": "example"
35883
- },
35884
- {
35885
- "description": "Text that describes how to use the rating. Alternatively, you can use the `help-text` attribute.",
35886
- "name": "help-text"
35887
35872
  }
35888
35873
  ],
35889
35874
  "members": [
35890
35875
  {
35891
35876
  "kind": "field",
35892
- "name": "formControlController",
35893
- "privacy": "private",
35894
- "readonly": true,
35895
- "default": "new FormControlController(this, { assumeInteractionOn: ['zn-blur', 'zn-input'] })"
35896
- },
35897
- {
35898
- "kind": "field",
35899
- "name": "hasSlotController",
35900
- "privacy": "private",
35901
- "readonly": true,
35902
- "default": "new HasSlotController(this, 'help-text')"
35877
+ "name": "duration",
35878
+ "type": {
35879
+ "text": "number"
35880
+ },
35881
+ "default": "2000",
35882
+ "attribute": "duration"
35903
35883
  },
35904
35884
  {
35905
35885
  "kind": "field",
35906
- "name": "rating",
35886
+ "name": "initial",
35907
35887
  "type": {
35908
- "text": "HTMLElement"
35909
- }
35888
+ "text": "string"
35889
+ },
35890
+ "default": "''",
35891
+ "attribute": "initial"
35910
35892
  },
35911
35893
  {
35912
35894
  "kind": "field",
35913
- "name": "symbols",
35895
+ "name": "revealed",
35914
35896
  "type": {
35915
- "text": "HTMLElement"
35916
- }
35897
+ "text": "string"
35898
+ },
35899
+ "default": "''",
35900
+ "attribute": "revealed"
35917
35901
  },
35918
35902
  {
35919
35903
  "kind": "field",
35920
- "name": "hoverValue",
35904
+ "name": "hideDelay",
35921
35905
  "type": {
35922
35906
  "text": "number"
35923
35907
  },
35924
- "privacy": "private",
35925
- "default": "0"
35908
+ "default": "150",
35909
+ "attribute": "hide-delay"
35926
35910
  },
35927
35911
  {
35928
35912
  "kind": "field",
35929
- "name": "isHovering",
35913
+ "name": "noToggle",
35930
35914
  "type": {
35931
35915
  "text": "boolean"
35932
35916
  },
35933
- "privacy": "private",
35934
- "default": "false"
35917
+ "default": "false",
35918
+ "description": "Disables click-to-toggle so the value is only revealed on hover. Clicks still bubble to the parent.",
35919
+ "attribute": "no-toggle"
35935
35920
  },
35936
35921
  {
35937
35922
  "kind": "field",
35938
- "name": "label",
35923
+ "name": "_isMasked",
35939
35924
  "type": {
35940
- "text": "string"
35925
+ "text": "boolean"
35941
35926
  },
35942
- "attribute": "label"
35927
+ "privacy": "private",
35928
+ "description": "Nothing is hidden when the revealed value is what's already on show, so there is nothing to reveal.",
35929
+ "readonly": true
35943
35930
  },
35944
35931
  {
35945
35932
  "kind": "field",
35946
- "name": "helpText",
35933
+ "name": "_isRevealed",
35947
35934
  "type": {
35948
- "text": "string"
35935
+ "text": "boolean"
35949
35936
  },
35950
- "default": "''",
35951
- "description": "The rating's help text. If you need to display HTML, use the `help-text` slot instead.",
35952
- "attribute": "help-text"
35937
+ "privacy": "private",
35938
+ "default": "false"
35953
35939
  },
35954
35940
  {
35955
35941
  "kind": "field",
35956
- "name": "name",
35942
+ "name": "_isToggled",
35957
35943
  "type": {
35958
- "text": "string"
35944
+ "text": "boolean"
35959
35945
  },
35960
- "attribute": "name"
35946
+ "privacy": "private",
35947
+ "default": "false"
35961
35948
  },
35962
35949
  {
35963
35950
  "kind": "field",
35964
- "name": "value",
35951
+ "name": "_hideTimer",
35965
35952
  "type": {
35966
- "text": "number"
35953
+ "text": "ReturnType<typeof setTimeout> | undefined"
35967
35954
  },
35968
- "default": "0",
35969
- "attribute": "value"
35955
+ "privacy": "private"
35970
35956
  },
35971
35957
  {
35972
- "kind": "field",
35973
- "name": "defaultValue",
35974
- "type": {
35975
- "text": "number"
35976
- },
35977
- "default": "0",
35978
- "description": "The default value of the form control. Primarily used for resetting the form control."
35958
+ "kind": "method",
35959
+ "name": "_clearHideTimer",
35960
+ "privacy": "private"
35979
35961
  },
35980
35962
  {
35981
- "kind": "field",
35982
- "name": "max",
35963
+ "kind": "method",
35964
+ "name": "handleToggleReveal",
35965
+ "privacy": "protected"
35966
+ },
35967
+ {
35968
+ "kind": "method",
35969
+ "name": "handleMouseEnter",
35970
+ "privacy": "protected"
35971
+ },
35972
+ {
35973
+ "kind": "method",
35974
+ "name": "handleMouseLeave",
35975
+ "privacy": "protected"
35976
+ }
35977
+ ],
35978
+ "events": [
35979
+ {
35980
+ "description": "Emitted as an example.",
35981
+ "name": "zn-event-name"
35982
+ }
35983
+ ],
35984
+ "attributes": [
35985
+ {
35986
+ "name": "duration",
35983
35987
  "type": {
35984
35988
  "text": "number"
35985
35989
  },
35986
- "default": "5",
35987
- "attribute": "max"
35990
+ "default": "2000",
35991
+ "fieldName": "duration"
35988
35992
  },
35989
35993
  {
35990
- "kind": "field",
35991
- "name": "precision",
35994
+ "name": "initial",
35992
35995
  "type": {
35993
- "text": "number"
35996
+ "text": "string"
35994
35997
  },
35995
- "default": "1",
35996
- "attribute": "precision"
35998
+ "default": "''",
35999
+ "fieldName": "initial"
35997
36000
  },
35998
36001
  {
35999
- "kind": "field",
36000
- "name": "readonly",
36002
+ "name": "revealed",
36001
36003
  "type": {
36002
- "text": "boolean"
36004
+ "text": "string"
36003
36005
  },
36004
- "default": "false",
36005
- "attribute": "readonly"
36006
+ "default": "''",
36007
+ "fieldName": "revealed"
36006
36008
  },
36007
36009
  {
36008
- "kind": "field",
36009
- "name": "disabled",
36010
+ "name": "hide-delay",
36010
36011
  "type": {
36011
- "text": "boolean"
36012
+ "text": "number"
36012
36013
  },
36013
- "default": "false",
36014
- "attribute": "disabled"
36014
+ "default": "150",
36015
+ "fieldName": "hideDelay"
36015
36016
  },
36016
36017
  {
36017
- "kind": "field",
36018
- "name": "preview",
36018
+ "name": "no-toggle",
36019
36019
  "type": {
36020
36020
  "text": "boolean"
36021
36021
  },
36022
36022
  "default": "false",
36023
- "description": "Displays the value alongside the symbols, updating live as the pointer moves across them.",
36024
- "attribute": "preview"
36025
- },
36023
+ "description": "Disables click-to-toggle so the value is only revealed on hover. Clicks still bubble to the parent.",
36024
+ "fieldName": "noToggle"
36025
+ }
36026
+ ],
36027
+ "superclass": {
36028
+ "name": "ZincElement",
36029
+ "module": "/src/internal/zinc-element"
36030
+ },
36031
+ "summary": "Short summary of the component's intended use.",
36032
+ "tagNameWithoutPrefix": "reveal",
36033
+ "tagName": "zn-reveal",
36034
+ "customElement": true,
36035
+ "jsDoc": "/**\n * @summary Short summary of the component's intended use.\n * @documentation https://zinc.style/components/reveal\n * @status experimental\n * @since 1.0\n *\n * @dependency zn-example\n *\n * @event zn-event-name - Emitted as an example.\n *\n * @slot - The default slot.\n * @slot example - An example slot.\n *\n * @csspart base - The component's base wrapper.\n *\n * @usage\n * ```html\n * <zn-reveal duration=\"3000\"\n * initial=\"******@hotmail.com\"\n * revealed=\"john.doe@hotmail.com\" toggle>\n * </zn-reveal>\n * ```\n *\n * @cssproperty --example - An example CSS custom property.\n */",
36036
+ "documentation": "https://zinc.style/components/reveal",
36037
+ "status": "experimental",
36038
+ "since": "1.0",
36039
+ "dependencies": [
36040
+ "zn-example"
36041
+ ]
36042
+ }
36043
+ ],
36044
+ "exports": [
36045
+ {
36046
+ "kind": "js",
36047
+ "name": "default",
36048
+ "declaration": {
36049
+ "name": "ZnReveal",
36050
+ "module": "components/reveal/reveal.js"
36051
+ }
36052
+ }
36053
+ ]
36054
+ },
36055
+ {
36056
+ "kind": "javascript-module",
36057
+ "path": "components/remarkd-editor/remarkd-editor.js",
36058
+ "declarations": [
36059
+ {
36060
+ "kind": "class",
36061
+ "description": "",
36062
+ "name": "ZnRemarkdEditor",
36063
+ "cssProperties": [
36026
36064
  {
36027
- "kind": "field",
36028
- "name": "size",
36029
- "type": {
36030
- "text": "'small' | 'medium' | 'large'"
36031
- },
36032
- "default": "'medium'",
36033
- "attribute": "size"
36065
+ "description": "The tallest the editor grows before its body scrolls. Defaults to `100dvh`.",
36066
+ "name": "--remarkd-editor-max-height"
36034
36067
  },
36035
36068
  {
36036
- "kind": "field",
36037
- "name": "getSymbol",
36038
- "type": {
36039
- "text": "(value: number) => string"
36040
- },
36041
- "attribute": "getSymbol"
36069
+ "description": "The shortest the body renders while empty. Defaults to `10rem`.",
36070
+ "name": "--remarkd-editor-min-height"
36071
+ }
36072
+ ],
36073
+ "cssParts": [
36074
+ {
36075
+ "description": "The component's base wrapper.",
36076
+ "name": "base"
36042
36077
  },
36043
36078
  {
36044
- "kind": "field",
36045
- "name": "validity",
36046
- "description": "Gets the validity state object",
36047
- "readonly": true
36079
+ "description": "The always-visible block-insert and inline-formatting toolbar.",
36080
+ "name": "toolbar"
36048
36081
  },
36049
36082
  {
36050
- "kind": "field",
36051
- "name": "validationMessage",
36052
- "description": "Gets the validation message",
36053
- "readonly": true
36083
+ "description": "The button that switches between the block view and the raw source view.",
36084
+ "name": "raw-toggle"
36054
36085
  },
36055
36086
  {
36056
- "kind": "method",
36057
- "name": "checkValidity",
36058
- "return": {
36059
- "type": {
36060
- "text": "boolean"
36061
- }
36062
- },
36063
- "description": "Checks the validity but does not show a validation message. Returns `true` when valid and `false` when invalid."
36087
+ "description": "A rendered block wrapper.",
36088
+ "name": "block"
36064
36089
  },
36065
36090
  {
36066
- "kind": "method",
36067
- "name": "getForm",
36068
- "return": {
36069
- "type": {
36070
- "text": "HTMLFormElement | null"
36071
- }
36072
- },
36073
- "description": "Gets the associated form, if one exists."
36091
+ "description": "The rendered remarkd output of a block.",
36092
+ "name": "rendered"
36074
36093
  },
36075
36094
  {
36076
- "kind": "method",
36077
- "name": "reportValidity",
36078
- "description": "Checks for validity and shows the browser's validation message if the control is invalid."
36095
+ "description": "A labelled wrapper for an ifdef/ifndef/ifeval/iftrue/iffalse/ifempty/ifnempty range.",
36096
+ "name": "conditional"
36079
36097
  },
36080
36098
  {
36081
- "kind": "method",
36082
- "name": "setCustomValidity",
36083
- "description": "Sets a custom validation message. Pass an empty string to restore validity."
36099
+ "description": "A chip rendered for a document attribute, title, or bracket line.",
36100
+ "name": "variable"
36084
36101
  },
36085
36102
  {
36086
- "kind": "method",
36087
- "name": "_roundToPrecision",
36088
- "privacy": "private",
36089
- "return": {
36090
- "type": {
36091
- "text": "number"
36092
- }
36093
- },
36094
- "parameters": [
36095
- {
36096
- "name": "value",
36097
- "type": {
36098
- "text": "number"
36099
- }
36100
- },
36101
- {
36102
- "name": "precision",
36103
- "type": {
36104
- "text": "number"
36105
- }
36106
- }
36107
- ]
36103
+ "description": "The textarea shown while editing a block.",
36104
+ "name": "input"
36108
36105
  },
36109
36106
  {
36110
- "kind": "method",
36111
- "name": "_getValueFromXCoordinate",
36112
- "privacy": "private",
36113
- "return": {
36114
- "type": {
36115
- "text": "number"
36116
- }
36117
- },
36118
- "parameters": [
36119
- {
36120
- "name": "coordinate",
36121
- "type": {
36122
- "text": "number"
36123
- }
36124
- }
36125
- ]
36107
+ "description": "The full-document textarea shown in raw source mode.",
36108
+ "name": "raw"
36126
36109
  },
36127
36110
  {
36128
- "kind": "method",
36129
- "name": "_formatValue",
36130
- "privacy": "private",
36131
- "return": {
36132
- "type": {
36133
- "text": "string"
36134
- }
36135
- },
36136
- "parameters": [
36137
- {
36138
- "name": "value",
36139
- "type": {
36140
- "text": "number"
36141
- }
36142
- }
36143
- ]
36111
+ "description": "The `zn-slash-menu` opened by typing \"/\" in an empty block.",
36112
+ "name": "slash-menu"
36144
36113
  },
36145
36114
  {
36146
- "kind": "method",
36147
- "name": "_getValueFromMousePosition",
36148
- "privacy": "private",
36149
- "return": {
36150
- "type": {
36151
- "text": "number"
36152
- }
36153
- },
36154
- "parameters": [
36155
- {
36156
- "name": "event",
36157
- "type": {
36158
- "text": "MouseEvent"
36159
- }
36160
- }
36161
- ]
36115
+ "description": "The caption / alignment / size panel shown when an image block is clicked.",
36116
+ "name": "image-controls"
36162
36117
  },
36163
36118
  {
36164
- "kind": "method",
36165
- "name": "_getValueFromTouchPosition",
36166
- "privacy": "private",
36167
- "return": {
36168
- "type": {
36169
- "text": "number"
36170
- }
36119
+ "description": "The chip rendered in place of an `include::` directive.",
36120
+ "name": "include"
36121
+ },
36122
+ {
36123
+ "description": "The inline Include picker opened from the toolbar or \"/include\".",
36124
+ "name": "include-picker"
36125
+ }
36126
+ ],
36127
+ "members": [
36128
+ {
36129
+ "kind": "field",
36130
+ "name": "dependencies",
36131
+ "type": {
36132
+ "text": "object"
36171
36133
  },
36172
- "parameters": [
36173
- {
36174
- "name": "event",
36175
- "type": {
36176
- "text": "TouchEvent"
36177
- }
36178
- }
36179
- ]
36134
+ "static": true,
36135
+ "default": "{ 'zn-dropdown': ZnDropdown, 'zn-menu': ZnMenu, 'zn-menu-item': ZnMenuItem, 'zn-slash-menu': ZnSlashMenu }"
36180
36136
  },
36181
36137
  {
36182
- "kind": "method",
36183
- "name": "_setValue",
36138
+ "kind": "field",
36139
+ "name": "formControlController",
36184
36140
  "privacy": "private",
36185
- "parameters": [
36186
- {
36187
- "name": "value",
36188
- "type": {
36189
- "text": "number"
36190
- }
36191
- }
36192
- ]
36141
+ "readonly": true,
36142
+ "default": "new FormControlController(this, { assumeInteractionOn: ['zn-input', 'zn-change'], })"
36193
36143
  },
36194
36144
  {
36195
- "kind": "method",
36196
- "name": "_handleClick",
36145
+ "kind": "field",
36146
+ "name": "slashController",
36197
36147
  "privacy": "private",
36198
- "parameters": [
36199
- {
36200
- "name": "event",
36201
- "type": {
36202
- "text": "MouseEvent"
36203
- }
36204
- }
36205
- ]
36148
+ "readonly": true,
36149
+ "default": "new SlashMenuController(this, { menu: () => this.mountSlashMenu(), // The menu only belongs in a block that is nothing but the slash command — a // block prefix like \"## \" is not valid remarkd part-way through a line. items: () => this.isSlashBlock() ? SLASH_ITEMS.filter(item => this.slashItemAvailable(item)) : [], onSelect: item => this.handleSlashSelect(item) })"
36206
36150
  },
36207
36151
  {
36208
- "kind": "method",
36209
- "name": "_handleMouseEnter",
36152
+ "kind": "field",
36153
+ "name": "toolbarOverflow",
36210
36154
  "privacy": "private",
36211
- "parameters": [
36212
- {
36213
- "name": "event",
36214
- "type": {
36215
- "text": "MouseEvent"
36216
- }
36217
- }
36218
- ]
36155
+ "readonly": true,
36156
+ "default": "new ToolbarOverflowController(this, { groups: () => [...(this.shadowRoot?.querySelectorAll<HTMLElement>('.toolbar__group') ?? [])], container: () => this.shadowRoot?.querySelector<HTMLElement>('.remarkd-editor__toolbar'), })"
36219
36157
  },
36220
36158
  {
36221
- "kind": "method",
36222
- "name": "_handleMouseMove",
36159
+ "kind": "field",
36160
+ "name": "editingDraft",
36161
+ "type": {
36162
+ "text": "string"
36163
+ },
36223
36164
  "privacy": "private",
36224
- "parameters": [
36225
- {
36226
- "name": "event",
36227
- "type": {
36228
- "text": "MouseEvent"
36229
- }
36230
- }
36231
- ]
36165
+ "default": "''"
36232
36166
  },
36233
36167
  {
36234
- "kind": "method",
36235
- "name": "_handleMouseLeave",
36236
- "privacy": "private"
36168
+ "kind": "field",
36169
+ "name": "includeRequest",
36170
+ "type": {
36171
+ "text": "Promise<IncludeOption[]> | null"
36172
+ },
36173
+ "privacy": "private",
36174
+ "default": "null"
36237
36175
  },
36238
36176
  {
36239
- "kind": "method",
36240
- "name": "_handleTouchStart",
36177
+ "kind": "field",
36178
+ "name": "rawEntryValue",
36179
+ "type": {
36180
+ "text": "string"
36181
+ },
36241
36182
  "privacy": "private",
36242
- "parameters": [
36243
- {
36244
- "name": "event",
36245
- "type": {
36246
- "text": "TouchEvent"
36247
- }
36248
- }
36249
- ]
36183
+ "default": "''"
36250
36184
  },
36251
36185
  {
36252
- "kind": "method",
36253
- "name": "_handleTouchMove",
36186
+ "kind": "field",
36187
+ "name": "suppressValueSync",
36188
+ "type": {
36189
+ "text": "boolean"
36190
+ },
36254
36191
  "privacy": "private",
36255
- "parameters": [
36256
- {
36257
- "name": "event",
36258
- "type": {
36259
- "text": "TouchEvent"
36260
- }
36261
- }
36262
- ]
36192
+ "default": "false"
36263
36193
  },
36264
36194
  {
36265
- "kind": "method",
36266
- "name": "_handleTouchEnd",
36195
+ "kind": "field",
36196
+ "name": "suppressBlurCommit",
36197
+ "type": {
36198
+ "text": "boolean"
36199
+ },
36267
36200
  "privacy": "private",
36268
- "parameters": [
36269
- {
36270
- "name": "event",
36271
- "type": {
36272
- "text": "TouchEvent"
36273
- }
36274
- }
36275
- ]
36276
- }
36277
- ],
36278
- "events": [
36279
- {
36280
- "description": "Emitted as an example.",
36281
- "name": "zn-event-name"
36282
- }
36283
- ],
36284
- "attributes": [
36285
- {
36286
- "name": "label",
36287
- "type": {
36288
- "text": "string"
36289
- },
36290
- "fieldName": "label"
36201
+ "default": "false"
36291
36202
  },
36292
36203
  {
36293
- "name": "help-text",
36204
+ "kind": "field",
36205
+ "name": "validationInput",
36294
36206
  "type": {
36295
- "text": "string"
36207
+ "text": "HTMLTextAreaElement"
36296
36208
  },
36297
- "default": "''",
36298
- "description": "The rating's help text. If you need to display HTML, use the `help-text` slot instead.",
36299
- "fieldName": "helpText"
36209
+ "privacy": "private"
36300
36210
  },
36301
36211
  {
36302
- "name": "name",
36212
+ "kind": "field",
36213
+ "name": "slashMenuElement",
36303
36214
  "type": {
36304
- "text": "string"
36215
+ "text": "ZnSlashMenu | null"
36305
36216
  },
36306
- "fieldName": "name"
36217
+ "privacy": "private"
36307
36218
  },
36308
36219
  {
36309
- "name": "value",
36220
+ "kind": "field",
36221
+ "name": "blocks",
36310
36222
  "type": {
36311
- "text": "number"
36223
+ "text": "string[]"
36312
36224
  },
36313
- "default": "0",
36314
- "fieldName": "value"
36225
+ "privacy": "private",
36226
+ "default": "[]"
36315
36227
  },
36316
36228
  {
36317
- "name": "max",
36229
+ "kind": "field",
36230
+ "name": "editingIndex",
36318
36231
  "type": {
36319
- "text": "number"
36232
+ "text": "number | null"
36320
36233
  },
36321
- "default": "5",
36322
- "fieldName": "max"
36234
+ "privacy": "private",
36235
+ "default": "null"
36323
36236
  },
36324
36237
  {
36325
- "name": "precision",
36238
+ "kind": "field",
36239
+ "name": "slashRecentKey",
36326
36240
  "type": {
36327
- "text": "number"
36241
+ "text": "string"
36328
36242
  },
36329
- "default": "1",
36330
- "fieldName": "precision"
36243
+ "default": "''",
36244
+ "description": "Lists the blocks most recently inserted here above the rest of the slash menu, remembered in\n`localStorage` under this key. Leave unset to offer no recently used section.",
36245
+ "attribute": "slash-recent-key"
36331
36246
  },
36332
36247
  {
36333
- "name": "readonly",
36248
+ "kind": "field",
36249
+ "name": "hasSlashMenu",
36334
36250
  "type": {
36335
36251
  "text": "boolean"
36336
36252
  },
36253
+ "privacy": "private",
36337
36254
  "default": "false",
36338
- "fieldName": "readonly"
36255
+ "description": "Renders the slash menu only once it has been needed."
36339
36256
  },
36340
36257
  {
36341
- "name": "disabled",
36258
+ "kind": "field",
36259
+ "name": "imagePickerIndex",
36342
36260
  "type": {
36343
- "text": "boolean"
36261
+ "text": "number | null"
36344
36262
  },
36345
- "default": "false",
36346
- "fieldName": "disabled"
36263
+ "privacy": "private",
36264
+ "default": "null"
36347
36265
  },
36348
36266
  {
36349
- "name": "preview",
36267
+ "kind": "field",
36268
+ "name": "imageEdit",
36350
36269
  "type": {
36351
- "text": "boolean"
36270
+ "text": "ImageBlockData | null"
36352
36271
  },
36353
- "default": "false",
36354
- "description": "Displays the value alongside the symbols, updating live as the pointer moves across them.",
36355
- "fieldName": "preview"
36272
+ "privacy": "private",
36273
+ "default": "null"
36356
36274
  },
36357
36275
  {
36358
- "name": "size",
36276
+ "kind": "field",
36277
+ "name": "dropIndicator",
36359
36278
  "type": {
36360
- "text": "'small' | 'medium' | 'large'"
36279
+ "text": "number | null"
36361
36280
  },
36362
- "default": "'medium'",
36363
- "fieldName": "size"
36281
+ "privacy": "private",
36282
+ "default": "null"
36364
36283
  },
36365
36284
  {
36366
- "name": "getSymbol",
36285
+ "kind": "field",
36286
+ "name": "dragIndex",
36367
36287
  "type": {
36368
- "text": "(value: number) => string"
36288
+ "text": "number | null"
36369
36289
  },
36370
- "fieldName": "getSymbol"
36371
- }
36372
- ],
36373
- "superclass": {
36374
- "name": "ZincElement",
36375
- "module": "/src/internal/zinc-element"
36376
- },
36377
- "summary": "Short summary of the component's intended use.",
36378
- "tagNameWithoutPrefix": "rating",
36379
- "tagName": "zn-rating",
36380
- "customElement": true,
36381
- "jsDoc": "/**\n * @summary Short summary of the component's intended use.\n * @documentation https://zinc.style/components/rating\n * @status experimental\n * @since 1.0\n *\n * @dependency zn-example\n *\n * @event zn-event-name - Emitted as an example.\n *\n * @slot - The default slot.\n * @slot example - An example slot.\n * @slot help-text - Text that describes how to use the rating. Alternatively, you can use the `help-text` attribute.\n *\n * @csspart form-control - The form control that wraps the symbols and help text.\n * @csspart form-control-help-text - The help text's wrapper.\n * @csspart base - The component's base wrapper.\n * @csspart preview - The value shown next to the symbols when `preview` is enabled.\n *\n * @cssproperty --example - An example CSS custom property.\n * @cssproperty --preview-color - The color of the preview value.\n * @cssproperty --preview-size - The font size of the preview value.\n */",
36382
- "documentation": "https://zinc.style/components/rating",
36383
- "status": "experimental",
36384
- "since": "1.0",
36385
- "dependencies": [
36386
- "zn-example"
36387
- ]
36388
- }
36389
- ],
36390
- "exports": [
36391
- {
36392
- "kind": "js",
36393
- "name": "default",
36394
- "declaration": {
36395
- "name": "ZnRating",
36396
- "module": "components/rating/rating.js"
36397
- }
36398
- }
36399
- ]
36400
- },
36401
- {
36402
- "kind": "javascript-module",
36403
- "path": "components/remarkd-editor/remarkd-editor.js",
36404
- "declarations": [
36405
- {
36406
- "kind": "class",
36407
- "description": "",
36408
- "name": "ZnRemarkdEditor",
36409
- "cssProperties": [
36410
- {
36411
- "description": "The tallest the editor grows before its body scrolls. Defaults to `100dvh`.",
36412
- "name": "--remarkd-editor-max-height"
36413
- },
36414
- {
36415
- "description": "The shortest the body renders while empty. Defaults to `10rem`.",
36416
- "name": "--remarkd-editor-min-height"
36417
- }
36418
- ],
36419
- "cssParts": [
36420
- {
36421
- "description": "The component's base wrapper.",
36422
- "name": "base"
36423
- },
36424
- {
36425
- "description": "The always-visible block-insert and inline-formatting toolbar.",
36426
- "name": "toolbar"
36427
- },
36428
- {
36429
- "description": "The button that switches between the block view and the raw source view.",
36430
- "name": "raw-toggle"
36431
- },
36432
- {
36433
- "description": "A rendered block wrapper.",
36434
- "name": "block"
36435
- },
36436
- {
36437
- "description": "The rendered remarkd output of a block.",
36438
- "name": "rendered"
36439
- },
36440
- {
36441
- "description": "A labelled wrapper for an ifdef/ifndef/ifeval/iftrue/iffalse/ifempty/ifnempty range.",
36442
- "name": "conditional"
36443
- },
36444
- {
36445
- "description": "A chip rendered for a document attribute, title, or bracket line.",
36446
- "name": "variable"
36447
- },
36448
- {
36449
- "description": "The textarea shown while editing a block.",
36450
- "name": "input"
36451
- },
36452
- {
36453
- "description": "The full-document textarea shown in raw source mode.",
36454
- "name": "raw"
36455
- },
36456
- {
36457
- "description": "The `zn-slash-menu` opened by typing \"/\" in an empty block.",
36458
- "name": "slash-menu"
36459
- },
36460
- {
36461
- "description": "The caption / alignment / size panel shown when an image block is clicked.",
36462
- "name": "image-controls"
36463
- },
36464
- {
36465
- "description": "The chip rendered in place of an `include::` directive.",
36466
- "name": "include"
36290
+ "privacy": "private",
36291
+ "default": "null"
36467
36292
  },
36468
- {
36469
- "description": "The inline Include picker opened from the toolbar or \"/include\".",
36470
- "name": "include-picker"
36471
- }
36472
- ],
36473
- "members": [
36474
36293
  {
36475
36294
  "kind": "field",
36476
- "name": "dependencies",
36295
+ "name": "editShell",
36477
36296
  "type": {
36478
- "text": "object"
36297
+ "text": "string"
36479
36298
  },
36480
- "static": true,
36481
- "default": "{ 'zn-dropdown': ZnDropdown, 'zn-menu': ZnMenu, 'zn-menu-item': ZnMenuItem, 'zn-slash-menu': ZnSlashMenu }"
36482
- },
36483
- {
36484
- "kind": "field",
36485
- "name": "formControlController",
36486
36299
  "privacy": "private",
36487
- "readonly": true,
36488
- "default": "new FormControlController(this, { assumeInteractionOn: ['zn-input', 'zn-change'], })"
36300
+ "default": "''"
36489
36301
  },
36490
36302
  {
36491
36303
  "kind": "field",
36492
- "name": "slashController",
36304
+ "name": "rawMode",
36305
+ "type": {
36306
+ "text": "boolean"
36307
+ },
36493
36308
  "privacy": "private",
36494
- "readonly": true,
36495
- "default": "new SlashMenuController(this, { menu: () => this.mountSlashMenu(), // The menu only belongs in a block that is nothing but the slash command — a // block prefix like \"## \" is not valid remarkd part-way through a line. items: () => this.isSlashBlock() ? SLASH_ITEMS.filter(item => this.slashItemAvailable(item)) : [], onSelect: item => this.handleSlashSelect(item) })"
36309
+ "default": "false"
36496
36310
  },
36497
36311
  {
36498
36312
  "kind": "field",
36499
- "name": "toolbarOverflow",
36313
+ "name": "includeOptions",
36314
+ "type": {
36315
+ "text": "IncludeOption[] | null"
36316
+ },
36500
36317
  "privacy": "private",
36501
- "readonly": true,
36502
- "default": "new ToolbarOverflowController(this, { groups: () => [...(this.shadowRoot?.querySelectorAll<HTMLElement>('.toolbar__group') ?? [])], container: () => this.shadowRoot?.querySelector<HTMLElement>('.remarkd-editor__toolbar'), })"
36318
+ "default": "null"
36503
36319
  },
36504
36320
  {
36505
36321
  "kind": "field",
36506
- "name": "editingDraft",
36322
+ "name": "includeLoadFailed",
36507
36323
  "type": {
36508
- "text": "string"
36324
+ "text": "boolean"
36509
36325
  },
36510
36326
  "privacy": "private",
36511
- "default": "''"
36327
+ "default": "false"
36512
36328
  },
36513
36329
  {
36514
36330
  "kind": "field",
36515
- "name": "includeRequest",
36331
+ "name": "includePickerIndex",
36516
36332
  "type": {
36517
- "text": "Promise<IncludeOption[]> | null"
36333
+ "text": "number | null"
36518
36334
  },
36519
36335
  "privacy": "private",
36520
36336
  "default": "null"
36521
36337
  },
36522
36338
  {
36523
36339
  "kind": "field",
36524
- "name": "rawEntryValue",
36340
+ "name": "includeQuery",
36525
36341
  "type": {
36526
36342
  "text": "string"
36527
36343
  },
@@ -36530,7 +36346,7 @@
36530
36346
  },
36531
36347
  {
36532
36348
  "kind": "field",
36533
- "name": "suppressValueSync",
36349
+ "name": "linkPickerOpen",
36534
36350
  "type": {
36535
36351
  "text": "boolean"
36536
36352
  },
@@ -36539,171 +36355,9 @@
36539
36355
  },
36540
36356
  {
36541
36357
  "kind": "field",
36542
- "name": "suppressBlurCommit",
36358
+ "name": "linkQuery",
36543
36359
  "type": {
36544
- "text": "boolean"
36545
- },
36546
- "privacy": "private",
36547
- "default": "false"
36548
- },
36549
- {
36550
- "kind": "field",
36551
- "name": "validationInput",
36552
- "type": {
36553
- "text": "HTMLTextAreaElement"
36554
- },
36555
- "privacy": "private"
36556
- },
36557
- {
36558
- "kind": "field",
36559
- "name": "slashMenuElement",
36560
- "type": {
36561
- "text": "ZnSlashMenu | null"
36562
- },
36563
- "privacy": "private"
36564
- },
36565
- {
36566
- "kind": "field",
36567
- "name": "blocks",
36568
- "type": {
36569
- "text": "string[]"
36570
- },
36571
- "privacy": "private",
36572
- "default": "[]"
36573
- },
36574
- {
36575
- "kind": "field",
36576
- "name": "editingIndex",
36577
- "type": {
36578
- "text": "number | null"
36579
- },
36580
- "privacy": "private",
36581
- "default": "null"
36582
- },
36583
- {
36584
- "kind": "field",
36585
- "name": "slashRecentKey",
36586
- "type": {
36587
- "text": "string"
36588
- },
36589
- "default": "''",
36590
- "description": "Lists the blocks most recently inserted here above the rest of the slash menu, remembered in\n`localStorage` under this key. Leave unset to offer no recently used section.",
36591
- "attribute": "slash-recent-key"
36592
- },
36593
- {
36594
- "kind": "field",
36595
- "name": "hasSlashMenu",
36596
- "type": {
36597
- "text": "boolean"
36598
- },
36599
- "privacy": "private",
36600
- "default": "false",
36601
- "description": "Renders the slash menu only once it has been needed."
36602
- },
36603
- {
36604
- "kind": "field",
36605
- "name": "imagePickerIndex",
36606
- "type": {
36607
- "text": "number | null"
36608
- },
36609
- "privacy": "private",
36610
- "default": "null"
36611
- },
36612
- {
36613
- "kind": "field",
36614
- "name": "imageEdit",
36615
- "type": {
36616
- "text": "ImageBlockData | null"
36617
- },
36618
- "privacy": "private",
36619
- "default": "null"
36620
- },
36621
- {
36622
- "kind": "field",
36623
- "name": "dropIndicator",
36624
- "type": {
36625
- "text": "number | null"
36626
- },
36627
- "privacy": "private",
36628
- "default": "null"
36629
- },
36630
- {
36631
- "kind": "field",
36632
- "name": "dragIndex",
36633
- "type": {
36634
- "text": "number | null"
36635
- },
36636
- "privacy": "private",
36637
- "default": "null"
36638
- },
36639
- {
36640
- "kind": "field",
36641
- "name": "editShell",
36642
- "type": {
36643
- "text": "string"
36644
- },
36645
- "privacy": "private",
36646
- "default": "''"
36647
- },
36648
- {
36649
- "kind": "field",
36650
- "name": "rawMode",
36651
- "type": {
36652
- "text": "boolean"
36653
- },
36654
- "privacy": "private",
36655
- "default": "false"
36656
- },
36657
- {
36658
- "kind": "field",
36659
- "name": "includeOptions",
36660
- "type": {
36661
- "text": "IncludeOption[] | null"
36662
- },
36663
- "privacy": "private",
36664
- "default": "null"
36665
- },
36666
- {
36667
- "kind": "field",
36668
- "name": "includeLoadFailed",
36669
- "type": {
36670
- "text": "boolean"
36671
- },
36672
- "privacy": "private",
36673
- "default": "false"
36674
- },
36675
- {
36676
- "kind": "field",
36677
- "name": "includePickerIndex",
36678
- "type": {
36679
- "text": "number | null"
36680
- },
36681
- "privacy": "private",
36682
- "default": "null"
36683
- },
36684
- {
36685
- "kind": "field",
36686
- "name": "includeQuery",
36687
- "type": {
36688
- "text": "string"
36689
- },
36690
- "privacy": "private",
36691
- "default": "''"
36692
- },
36693
- {
36694
- "kind": "field",
36695
- "name": "linkPickerOpen",
36696
- "type": {
36697
- "text": "boolean"
36698
- },
36699
- "privacy": "private",
36700
- "default": "false"
36701
- },
36702
- {
36703
- "kind": "field",
36704
- "name": "linkQuery",
36705
- "type": {
36706
- "text": "string"
36360
+ "text": "string"
36707
36361
  },
36708
36362
  "privacy": "private",
36709
36363
  "default": "''"
@@ -38220,22 +37874,42 @@
38220
37874
  },
38221
37875
  {
38222
37876
  "kind": "javascript-module",
38223
- "path": "components/reveal/reveal.js",
37877
+ "path": "components/rating/rating.js",
38224
37878
  "declarations": [
38225
37879
  {
38226
37880
  "kind": "class",
38227
37881
  "description": "",
38228
- "name": "ZnReveal",
37882
+ "name": "ZnRating",
38229
37883
  "cssProperties": [
38230
37884
  {
38231
37885
  "description": "An example CSS custom property.",
38232
37886
  "name": "--example"
37887
+ },
37888
+ {
37889
+ "description": "The color of the preview value.",
37890
+ "name": "--preview-color"
37891
+ },
37892
+ {
37893
+ "description": "The font size of the preview value.",
37894
+ "name": "--preview-size"
38233
37895
  }
38234
37896
  ],
38235
37897
  "cssParts": [
37898
+ {
37899
+ "description": "The form control that wraps the symbols and help text.",
37900
+ "name": "form-control"
37901
+ },
37902
+ {
37903
+ "description": "The help text's wrapper.",
37904
+ "name": "form-control-help-text"
37905
+ },
38236
37906
  {
38237
37907
  "description": "The component's base wrapper.",
38238
37908
  "name": "base"
37909
+ },
37910
+ {
37911
+ "description": "The value shown next to the symbols when `preview` is enabled.",
37912
+ "name": "preview"
38239
37913
  }
38240
37914
  ],
38241
37915
  "slots": [
@@ -38246,608 +37920,943 @@
38246
37920
  {
38247
37921
  "description": "An example slot.",
38248
37922
  "name": "example"
37923
+ },
37924
+ {
37925
+ "description": "Text that describes how to use the rating. Alternatively, you can use the `help-text` attribute.",
37926
+ "name": "help-text"
38249
37927
  }
38250
37928
  ],
38251
37929
  "members": [
38252
37930
  {
38253
37931
  "kind": "field",
38254
- "name": "duration",
38255
- "type": {
38256
- "text": "number"
38257
- },
38258
- "default": "2000",
38259
- "attribute": "duration"
37932
+ "name": "formControlController",
37933
+ "privacy": "private",
37934
+ "readonly": true,
37935
+ "default": "new FormControlController(this, { assumeInteractionOn: ['zn-blur', 'zn-input'] })"
38260
37936
  },
38261
37937
  {
38262
37938
  "kind": "field",
38263
- "name": "initial",
38264
- "type": {
38265
- "text": "string"
38266
- },
38267
- "default": "''",
38268
- "attribute": "initial"
37939
+ "name": "hasSlotController",
37940
+ "privacy": "private",
37941
+ "readonly": true,
37942
+ "default": "new HasSlotController(this, 'help-text')"
38269
37943
  },
38270
37944
  {
38271
37945
  "kind": "field",
38272
- "name": "revealed",
37946
+ "name": "rating",
38273
37947
  "type": {
38274
- "text": "string"
38275
- },
38276
- "default": "''",
38277
- "attribute": "revealed"
37948
+ "text": "HTMLElement"
37949
+ }
38278
37950
  },
38279
37951
  {
38280
37952
  "kind": "field",
38281
- "name": "hideDelay",
37953
+ "name": "symbols",
38282
37954
  "type": {
38283
- "text": "number"
38284
- },
38285
- "default": "150",
38286
- "attribute": "hide-delay"
37955
+ "text": "HTMLElement"
37956
+ }
38287
37957
  },
38288
37958
  {
38289
37959
  "kind": "field",
38290
- "name": "noToggle",
37960
+ "name": "hoverValue",
38291
37961
  "type": {
38292
- "text": "boolean"
37962
+ "text": "number"
38293
37963
  },
38294
- "default": "false",
38295
- "description": "Disables click-to-toggle so the value is only revealed on hover. Clicks still bubble to the parent.",
38296
- "attribute": "no-toggle"
37964
+ "privacy": "private",
37965
+ "default": "0"
38297
37966
  },
38298
37967
  {
38299
37968
  "kind": "field",
38300
- "name": "_isMasked",
37969
+ "name": "isHovering",
38301
37970
  "type": {
38302
37971
  "text": "boolean"
38303
37972
  },
38304
37973
  "privacy": "private",
38305
- "description": "Nothing is hidden when the revealed value is what's already on show, so there is nothing to reveal.",
38306
- "readonly": true
37974
+ "default": "false"
38307
37975
  },
38308
37976
  {
38309
37977
  "kind": "field",
38310
- "name": "_isRevealed",
37978
+ "name": "label",
38311
37979
  "type": {
38312
- "text": "boolean"
37980
+ "text": "string"
38313
37981
  },
38314
- "privacy": "private",
38315
- "default": "false"
37982
+ "attribute": "label"
38316
37983
  },
38317
37984
  {
38318
37985
  "kind": "field",
38319
- "name": "_isToggled",
37986
+ "name": "helpText",
38320
37987
  "type": {
38321
- "text": "boolean"
37988
+ "text": "string"
38322
37989
  },
38323
- "privacy": "private",
38324
- "default": "false"
37990
+ "default": "''",
37991
+ "description": "The rating's help text. If you need to display HTML, use the `help-text` slot instead.",
37992
+ "attribute": "help-text"
38325
37993
  },
38326
37994
  {
38327
37995
  "kind": "field",
38328
- "name": "_hideTimer",
37996
+ "name": "name",
38329
37997
  "type": {
38330
- "text": "ReturnType<typeof setTimeout> | undefined"
37998
+ "text": "string"
38331
37999
  },
38332
- "privacy": "private"
38333
- },
38334
- {
38335
- "kind": "method",
38336
- "name": "_clearHideTimer",
38337
- "privacy": "private"
38338
- },
38339
- {
38340
- "kind": "method",
38341
- "name": "handleToggleReveal",
38342
- "privacy": "protected"
38343
- },
38344
- {
38345
- "kind": "method",
38346
- "name": "handleMouseEnter",
38347
- "privacy": "protected"
38000
+ "attribute": "name"
38348
38001
  },
38349
38002
  {
38350
- "kind": "method",
38351
- "name": "handleMouseLeave",
38352
- "privacy": "protected"
38353
- }
38354
- ],
38355
- "events": [
38356
- {
38357
- "description": "Emitted as an example.",
38358
- "name": "zn-event-name"
38359
- }
38360
- ],
38361
- "attributes": [
38362
- {
38363
- "name": "duration",
38003
+ "kind": "field",
38004
+ "name": "value",
38364
38005
  "type": {
38365
38006
  "text": "number"
38366
38007
  },
38367
- "default": "2000",
38368
- "fieldName": "duration"
38008
+ "default": "0",
38009
+ "attribute": "value"
38369
38010
  },
38370
38011
  {
38371
- "name": "initial",
38012
+ "kind": "field",
38013
+ "name": "defaultValue",
38372
38014
  "type": {
38373
- "text": "string"
38015
+ "text": "number"
38374
38016
  },
38375
- "default": "''",
38376
- "fieldName": "initial"
38017
+ "default": "0",
38018
+ "description": "The default value of the form control. Primarily used for resetting the form control."
38377
38019
  },
38378
38020
  {
38379
- "name": "revealed",
38021
+ "kind": "field",
38022
+ "name": "max",
38380
38023
  "type": {
38381
- "text": "string"
38024
+ "text": "number"
38382
38025
  },
38383
- "default": "''",
38384
- "fieldName": "revealed"
38026
+ "default": "5",
38027
+ "attribute": "max"
38385
38028
  },
38386
38029
  {
38387
- "name": "hide-delay",
38030
+ "kind": "field",
38031
+ "name": "precision",
38388
38032
  "type": {
38389
38033
  "text": "number"
38390
38034
  },
38391
- "default": "150",
38392
- "fieldName": "hideDelay"
38035
+ "default": "1",
38036
+ "attribute": "precision"
38393
38037
  },
38394
38038
  {
38395
- "name": "no-toggle",
38039
+ "kind": "field",
38040
+ "name": "readonly",
38396
38041
  "type": {
38397
38042
  "text": "boolean"
38398
38043
  },
38399
38044
  "default": "false",
38400
- "description": "Disables click-to-toggle so the value is only revealed on hover. Clicks still bubble to the parent.",
38401
- "fieldName": "noToggle"
38402
- }
38403
- ],
38404
- "superclass": {
38405
- "name": "ZincElement",
38406
- "module": "/src/internal/zinc-element"
38407
- },
38408
- "summary": "Short summary of the component's intended use.",
38409
- "tagNameWithoutPrefix": "reveal",
38410
- "tagName": "zn-reveal",
38411
- "customElement": true,
38412
- "jsDoc": "/**\n * @summary Short summary of the component's intended use.\n * @documentation https://zinc.style/components/reveal\n * @status experimental\n * @since 1.0\n *\n * @dependency zn-example\n *\n * @event zn-event-name - Emitted as an example.\n *\n * @slot - The default slot.\n * @slot example - An example slot.\n *\n * @csspart base - The component's base wrapper.\n *\n * @usage\n * ```html\n * <zn-reveal duration=\"3000\"\n * initial=\"******@hotmail.com\"\n * revealed=\"john.doe@hotmail.com\" toggle>\n * </zn-reveal>\n * ```\n *\n * @cssproperty --example - An example CSS custom property.\n */",
38413
- "documentation": "https://zinc.style/components/reveal",
38414
- "status": "experimental",
38415
- "since": "1.0",
38416
- "dependencies": [
38417
- "zn-example"
38418
- ]
38419
- }
38420
- ],
38421
- "exports": [
38422
- {
38423
- "kind": "js",
38424
- "name": "default",
38425
- "declaration": {
38426
- "name": "ZnReveal",
38427
- "module": "components/reveal/reveal.js"
38428
- }
38429
- }
38430
- ]
38431
- },
38432
- {
38433
- "kind": "javascript-module",
38434
- "path": "components/schedule-builder/schedule-builder.js",
38435
- "declarations": [
38436
- {
38437
- "kind": "class",
38438
- "description": "",
38439
- "name": "ZnScheduleBuilder",
38440
- "cssProperties": [
38441
- {
38442
- "description": "The height of a single time slot in the calendar. Defaults to `18px`.",
38443
- "name": "--slot-height"
38444
- },
38445
- {
38446
- "description": "The width of the calendar's time gutter. Defaults to `64px`.",
38447
- "name": "--gutter-width"
38448
- },
38449
- {
38450
- "description": "The fill used for open hours.",
38451
- "name": "--open-color"
38452
- },
38453
- {
38454
- "description": "The fill used for hours an exception removes.",
38455
- "name": "--reduced-color"
38456
- }
38457
- ],
38458
- "cssParts": [
38459
- {
38460
- "description": "The form control that wraps the builder, label and help text.",
38461
- "name": "form-control"
38462
- },
38463
- {
38464
- "description": "The component's base wrapper.",
38465
- "name": "base"
38466
- },
38467
- {
38468
- "description": "The row above the builder holding the hint, legend and view toggle.",
38469
- "name": "toolbar"
38470
- },
38471
- {
38472
- "description": "The calendar view wrapper.",
38473
- "name": "calendar"
38474
- },
38475
- {
38476
- "description": "The form (list) view wrapper.",
38477
- "name": "list"
38478
- },
38479
- {
38480
- "description": "The summary panel beside the calendar.",
38481
- "name": "summary"
38482
- }
38483
- ],
38484
- "slots": [
38485
- {
38486
- "description": "The schedule's label. Alternatively, use the `label` attribute.",
38487
- "name": "label"
38045
+ "attribute": "readonly"
38488
38046
  },
38489
- {
38490
- "description": "Text that describes how to use the schedule. Alternatively, use the `help-text` attribute.",
38491
- "name": "help-text"
38492
- }
38493
- ],
38494
- "members": [
38495
38047
  {
38496
38048
  "kind": "field",
38497
- "name": "formAssociated",
38049
+ "name": "disabled",
38498
38050
  "type": {
38499
38051
  "text": "boolean"
38500
38052
  },
38501
- "static": true,
38502
- "default": "true"
38053
+ "default": "false",
38054
+ "attribute": "disabled"
38503
38055
  },
38504
38056
  {
38505
38057
  "kind": "field",
38506
- "name": "dependencies",
38058
+ "name": "preview",
38507
38059
  "type": {
38508
- "text": "object"
38060
+ "text": "boolean"
38509
38061
  },
38510
- "static": true,
38511
- "default": "{ 'zn-icon': ZnIcon, 'zn-input': ZnInput, 'zn-option': ZnOption, 'zn-select': ZnSelect, }"
38062
+ "default": "false",
38063
+ "description": "Displays the value alongside the symbols, updating live as the pointer moves across them.",
38064
+ "attribute": "preview"
38512
38065
  },
38513
38066
  {
38514
38067
  "kind": "field",
38515
- "name": "formControlController",
38516
- "privacy": "private",
38517
- "readonly": true,
38518
- "default": "new FormControlController(this, { assumeInteractionOn: ['zn-change'] })"
38068
+ "name": "size",
38069
+ "type": {
38070
+ "text": "'small' | 'medium' | 'large'"
38071
+ },
38072
+ "default": "'medium'",
38073
+ "attribute": "size"
38519
38074
  },
38520
38075
  {
38521
38076
  "kind": "field",
38522
- "name": "hasSlotController",
38523
- "privacy": "private",
38524
- "readonly": true,
38525
- "default": "new HasSlotController(this, 'help-text', 'label')"
38077
+ "name": "getSymbol",
38078
+ "type": {
38079
+ "text": "(value: number) => string"
38080
+ },
38081
+ "attribute": "getSymbol"
38526
38082
  },
38527
38083
  {
38528
38084
  "kind": "field",
38529
- "name": "localize",
38530
- "privacy": "private",
38531
- "readonly": true,
38532
- "default": "new LocalizeController(this)"
38085
+ "name": "validity",
38086
+ "description": "Gets the validity state object",
38087
+ "readonly": true
38533
38088
  },
38534
38089
  {
38535
38090
  "kind": "field",
38536
- "name": "internals",
38537
- "type": {
38538
- "text": "ElementInternals | null"
38539
- },
38540
- "privacy": "private",
38091
+ "name": "validationMessage",
38092
+ "description": "Gets the validation message",
38541
38093
  "readonly": true
38542
38094
  },
38543
38095
  {
38544
- "kind": "field",
38545
- "name": "canvas",
38546
- "type": {
38547
- "text": "HTMLElement"
38096
+ "kind": "method",
38097
+ "name": "checkValidity",
38098
+ "return": {
38099
+ "type": {
38100
+ "text": "boolean"
38101
+ }
38548
38102
  },
38549
- "privacy": "private"
38103
+ "description": "Checks the validity but does not show a validation message. Returns `true` when valid and `false` when invalid."
38550
38104
  },
38551
38105
  {
38552
- "kind": "field",
38553
- "name": "_days",
38554
- "type": {
38555
- "text": "ScheduleDayMap"
38106
+ "kind": "method",
38107
+ "name": "getForm",
38108
+ "return": {
38109
+ "type": {
38110
+ "text": "HTMLFormElement | null"
38111
+ }
38556
38112
  },
38557
- "privacy": "private"
38113
+ "description": "Gets the associated form, if one exists."
38558
38114
  },
38559
38115
  {
38560
- "kind": "field",
38561
- "name": "_exceptions",
38562
- "type": {
38563
- "text": "ScheduleException[]"
38564
- },
38565
- "privacy": "private",
38566
- "default": "[]"
38116
+ "kind": "method",
38117
+ "name": "reportValidity",
38118
+ "description": "Checks for validity and shows the browser's validation message if the control is invalid."
38567
38119
  },
38568
38120
  {
38569
- "kind": "field",
38570
- "name": "_dragPreview",
38571
- "type": {
38572
- "text": "ScheduleDayMap | null"
38573
- },
38574
- "privacy": "private",
38575
- "default": "null"
38121
+ "kind": "method",
38122
+ "name": "setCustomValidity",
38123
+ "description": "Sets a custom validation message. Pass an empty string to restore validity."
38576
38124
  },
38577
38125
  {
38578
- "kind": "field",
38579
- "name": "_editing",
38580
- "type": {
38581
- "text": "{ day: ScheduleDay; index: number } | null"
38126
+ "kind": "method",
38127
+ "name": "_roundToPrecision",
38128
+ "privacy": "private",
38129
+ "return": {
38130
+ "type": {
38131
+ "text": "number"
38132
+ }
38582
38133
  },
38134
+ "parameters": [
38135
+ {
38136
+ "name": "value",
38137
+ "type": {
38138
+ "text": "number"
38139
+ }
38140
+ },
38141
+ {
38142
+ "name": "precision",
38143
+ "type": {
38144
+ "text": "number"
38145
+ }
38146
+ }
38147
+ ]
38148
+ },
38149
+ {
38150
+ "kind": "method",
38151
+ "name": "_getValueFromXCoordinate",
38583
38152
  "privacy": "private",
38584
- "default": "null"
38153
+ "return": {
38154
+ "type": {
38155
+ "text": "number"
38156
+ }
38157
+ },
38158
+ "parameters": [
38159
+ {
38160
+ "name": "coordinate",
38161
+ "type": {
38162
+ "text": "number"
38163
+ }
38164
+ }
38165
+ ]
38585
38166
  },
38586
38167
  {
38587
- "kind": "field",
38588
- "name": "_dragMode",
38589
- "type": {
38590
- "text": "'open' | 'close'"
38168
+ "kind": "method",
38169
+ "name": "_formatValue",
38170
+ "privacy": "private",
38171
+ "return": {
38172
+ "type": {
38173
+ "text": "string"
38174
+ }
38591
38175
  },
38176
+ "parameters": [
38177
+ {
38178
+ "name": "value",
38179
+ "type": {
38180
+ "text": "number"
38181
+ }
38182
+ }
38183
+ ]
38184
+ },
38185
+ {
38186
+ "kind": "method",
38187
+ "name": "_getValueFromMousePosition",
38592
38188
  "privacy": "private",
38593
- "default": "'open'"
38189
+ "return": {
38190
+ "type": {
38191
+ "text": "number"
38192
+ }
38193
+ },
38194
+ "parameters": [
38195
+ {
38196
+ "name": "event",
38197
+ "type": {
38198
+ "text": "MouseEvent"
38199
+ }
38200
+ }
38201
+ ]
38594
38202
  },
38595
38203
  {
38596
- "kind": "field",
38597
- "name": "_dragAnchor",
38598
- "type": {
38599
- "text": "{ col: number; row: number } | null"
38204
+ "kind": "method",
38205
+ "name": "_getValueFromTouchPosition",
38206
+ "privacy": "private",
38207
+ "return": {
38208
+ "type": {
38209
+ "text": "number"
38210
+ }
38600
38211
  },
38212
+ "parameters": [
38213
+ {
38214
+ "name": "event",
38215
+ "type": {
38216
+ "text": "TouchEvent"
38217
+ }
38218
+ }
38219
+ ]
38220
+ },
38221
+ {
38222
+ "kind": "method",
38223
+ "name": "_setValue",
38601
38224
  "privacy": "private",
38602
- "default": "null"
38225
+ "parameters": [
38226
+ {
38227
+ "name": "value",
38228
+ "type": {
38229
+ "text": "number"
38230
+ }
38231
+ }
38232
+ ]
38603
38233
  },
38604
38234
  {
38605
- "kind": "field",
38606
- "name": "_dragPointerId",
38607
- "type": {
38608
- "text": "number | null"
38609
- },
38235
+ "kind": "method",
38236
+ "name": "_handleClick",
38610
38237
  "privacy": "private",
38611
- "default": "null"
38238
+ "parameters": [
38239
+ {
38240
+ "name": "event",
38241
+ "type": {
38242
+ "text": "MouseEvent"
38243
+ }
38244
+ }
38245
+ ]
38612
38246
  },
38613
38247
  {
38614
- "kind": "field",
38615
- "name": "name",
38248
+ "kind": "method",
38249
+ "name": "_handleMouseEnter",
38250
+ "privacy": "private",
38251
+ "parameters": [
38252
+ {
38253
+ "name": "event",
38254
+ "type": {
38255
+ "text": "MouseEvent"
38256
+ }
38257
+ }
38258
+ ]
38259
+ },
38260
+ {
38261
+ "kind": "method",
38262
+ "name": "_handleMouseMove",
38263
+ "privacy": "private",
38264
+ "parameters": [
38265
+ {
38266
+ "name": "event",
38267
+ "type": {
38268
+ "text": "MouseEvent"
38269
+ }
38270
+ }
38271
+ ]
38272
+ },
38273
+ {
38274
+ "kind": "method",
38275
+ "name": "_handleMouseLeave",
38276
+ "privacy": "private"
38277
+ },
38278
+ {
38279
+ "kind": "method",
38280
+ "name": "_handleTouchStart",
38281
+ "privacy": "private",
38282
+ "parameters": [
38283
+ {
38284
+ "name": "event",
38285
+ "type": {
38286
+ "text": "TouchEvent"
38287
+ }
38288
+ }
38289
+ ]
38290
+ },
38291
+ {
38292
+ "kind": "method",
38293
+ "name": "_handleTouchMove",
38294
+ "privacy": "private",
38295
+ "parameters": [
38296
+ {
38297
+ "name": "event",
38298
+ "type": {
38299
+ "text": "TouchEvent"
38300
+ }
38301
+ }
38302
+ ]
38303
+ },
38304
+ {
38305
+ "kind": "method",
38306
+ "name": "_handleTouchEnd",
38307
+ "privacy": "private",
38308
+ "parameters": [
38309
+ {
38310
+ "name": "event",
38311
+ "type": {
38312
+ "text": "TouchEvent"
38313
+ }
38314
+ }
38315
+ ]
38316
+ }
38317
+ ],
38318
+ "events": [
38319
+ {
38320
+ "description": "Emitted as an example.",
38321
+ "name": "zn-event-name"
38322
+ }
38323
+ ],
38324
+ "attributes": [
38325
+ {
38326
+ "name": "label",
38616
38327
  "type": {
38617
38328
  "text": "string"
38618
38329
  },
38619
- "description": "The name of the form control, submitted as a name/value pair with form data.",
38620
- "attribute": "name",
38621
- "reflects": true
38330
+ "fieldName": "label"
38622
38331
  },
38623
38332
  {
38624
- "kind": "field",
38625
- "name": "value",
38333
+ "name": "help-text",
38626
38334
  "type": {
38627
38335
  "text": "string"
38628
38336
  },
38629
38337
  "default": "''",
38630
- "description": "The schedule as a JSON string. This is what gets posted with the form.",
38631
- "attribute": "value"
38338
+ "description": "The rating's help text. If you need to display HTML, use the `help-text` slot instead.",
38339
+ "fieldName": "helpText"
38632
38340
  },
38633
38341
  {
38634
- "kind": "field",
38635
- "name": "defaultValue",
38342
+ "name": "name",
38636
38343
  "type": {
38637
38344
  "text": "string"
38638
38345
  },
38639
- "default": "''",
38640
- "description": "The default value, used when resetting the containing form."
38346
+ "fieldName": "name"
38641
38347
  },
38642
38348
  {
38643
- "kind": "field",
38644
- "name": "label",
38349
+ "name": "value",
38645
38350
  "type": {
38646
- "text": "string"
38351
+ "text": "number"
38647
38352
  },
38648
- "default": "''",
38649
- "description": "The schedule's label. If you need to display HTML, use the `label` slot instead.",
38650
- "attribute": "label"
38353
+ "default": "0",
38354
+ "fieldName": "value"
38651
38355
  },
38652
38356
  {
38653
- "kind": "field",
38654
- "name": "helpText",
38357
+ "name": "max",
38655
38358
  "type": {
38656
- "text": "string"
38359
+ "text": "number"
38657
38360
  },
38658
- "default": "''",
38659
- "description": "The schedule's help text. If you need to display HTML, use the `help-text` slot instead.",
38660
- "attribute": "help-text"
38361
+ "default": "5",
38362
+ "fieldName": "max"
38661
38363
  },
38662
38364
  {
38663
- "kind": "field",
38664
- "name": "view",
38365
+ "name": "precision",
38665
38366
  "type": {
38666
- "text": "ScheduleView"
38367
+ "text": "number"
38667
38368
  },
38668
- "default": "'calendar'",
38669
- "description": "Which view is showing.",
38670
- "attribute": "view",
38671
- "reflects": true
38369
+ "default": "1",
38370
+ "fieldName": "precision"
38672
38371
  },
38673
38372
  {
38674
- "kind": "field",
38675
- "name": "openLabel",
38373
+ "name": "readonly",
38676
38374
  "type": {
38677
- "text": "string"
38375
+ "text": "boolean"
38678
38376
  },
38679
- "default": "'Available'",
38680
- "description": "The word used for hours the schedule covers, in the legend and in labels.",
38681
- "attribute": "open-label"
38377
+ "default": "false",
38378
+ "fieldName": "readonly"
38682
38379
  },
38683
38380
  {
38684
- "kind": "field",
38685
- "name": "closedLabel",
38381
+ "name": "disabled",
38686
38382
  "type": {
38687
- "text": "string"
38383
+ "text": "boolean"
38688
38384
  },
38689
- "default": "'Closed'",
38690
- "description": "The word used for hours the schedule doesn't cover, in the legend and against empty days.",
38691
- "attribute": "closed-label"
38385
+ "default": "false",
38386
+ "fieldName": "disabled"
38692
38387
  },
38693
38388
  {
38694
- "kind": "field",
38695
- "name": "noToggle",
38389
+ "name": "preview",
38696
38390
  "type": {
38697
38391
  "text": "boolean"
38698
38392
  },
38699
38393
  "default": "false",
38700
- "description": "Hides the calendar/form view toggle.",
38701
- "attribute": "no-toggle"
38394
+ "description": "Displays the value alongside the symbols, updating live as the pointer moves across them.",
38395
+ "fieldName": "preview"
38702
38396
  },
38703
38397
  {
38704
- "kind": "field",
38705
- "name": "hideSummary",
38398
+ "name": "size",
38706
38399
  "type": {
38707
- "text": "boolean"
38400
+ "text": "'small' | 'medium' | 'large'"
38708
38401
  },
38709
- "default": "false",
38710
- "description": "Hides the summary panel beside the calendar.",
38711
- "attribute": "hide-summary"
38402
+ "default": "'medium'",
38403
+ "fieldName": "size"
38712
38404
  },
38713
38405
  {
38714
- "kind": "field",
38715
- "name": "startHour",
38406
+ "name": "getSymbol",
38716
38407
  "type": {
38717
- "text": "number"
38408
+ "text": "(value: number) => string"
38718
38409
  },
38719
- "default": "6",
38720
- "description": "The first hour shown in the calendar.",
38721
- "attribute": "start-hour"
38410
+ "fieldName": "getSymbol"
38411
+ }
38412
+ ],
38413
+ "superclass": {
38414
+ "name": "ZincElement",
38415
+ "module": "/src/internal/zinc-element"
38416
+ },
38417
+ "summary": "Short summary of the component's intended use.",
38418
+ "tagNameWithoutPrefix": "rating",
38419
+ "tagName": "zn-rating",
38420
+ "customElement": true,
38421
+ "jsDoc": "/**\n * @summary Short summary of the component's intended use.\n * @documentation https://zinc.style/components/rating\n * @status experimental\n * @since 1.0\n *\n * @dependency zn-example\n *\n * @event zn-event-name - Emitted as an example.\n *\n * @slot - The default slot.\n * @slot example - An example slot.\n * @slot help-text - Text that describes how to use the rating. Alternatively, you can use the `help-text` attribute.\n *\n * @csspart form-control - The form control that wraps the symbols and help text.\n * @csspart form-control-help-text - The help text's wrapper.\n * @csspart base - The component's base wrapper.\n * @csspart preview - The value shown next to the symbols when `preview` is enabled.\n *\n * @cssproperty --example - An example CSS custom property.\n * @cssproperty --preview-color - The color of the preview value.\n * @cssproperty --preview-size - The font size of the preview value.\n */",
38422
+ "documentation": "https://zinc.style/components/rating",
38423
+ "status": "experimental",
38424
+ "since": "1.0",
38425
+ "dependencies": [
38426
+ "zn-example"
38427
+ ]
38428
+ }
38429
+ ],
38430
+ "exports": [
38431
+ {
38432
+ "kind": "js",
38433
+ "name": "default",
38434
+ "declaration": {
38435
+ "name": "ZnRating",
38436
+ "module": "components/rating/rating.js"
38437
+ }
38438
+ }
38439
+ ]
38440
+ },
38441
+ {
38442
+ "kind": "javascript-module",
38443
+ "path": "components/schedule-builder/schedule-builder.js",
38444
+ "declarations": [
38445
+ {
38446
+ "kind": "class",
38447
+ "description": "",
38448
+ "name": "ZnScheduleBuilder",
38449
+ "cssProperties": [
38450
+ {
38451
+ "description": "The height of a single time slot in the calendar. Defaults to `18px`.",
38452
+ "name": "--slot-height"
38453
+ },
38454
+ {
38455
+ "description": "The width of the calendar's time gutter. Defaults to `64px`.",
38456
+ "name": "--gutter-width"
38457
+ },
38458
+ {
38459
+ "description": "The fill used for open hours.",
38460
+ "name": "--open-color"
38461
+ },
38462
+ {
38463
+ "description": "The fill used for hours an exception removes.",
38464
+ "name": "--reduced-color"
38465
+ }
38466
+ ],
38467
+ "cssParts": [
38468
+ {
38469
+ "description": "The form control that wraps the builder, label and help text.",
38470
+ "name": "form-control"
38471
+ },
38472
+ {
38473
+ "description": "The component's base wrapper.",
38474
+ "name": "base"
38475
+ },
38476
+ {
38477
+ "description": "The row above the builder holding the hint, legend and view toggle.",
38478
+ "name": "toolbar"
38479
+ },
38480
+ {
38481
+ "description": "The calendar view wrapper.",
38482
+ "name": "calendar"
38483
+ },
38484
+ {
38485
+ "description": "The form (list) view wrapper.",
38486
+ "name": "list"
38487
+ },
38488
+ {
38489
+ "description": "The summary panel beside the calendar.",
38490
+ "name": "summary"
38491
+ }
38492
+ ],
38493
+ "slots": [
38494
+ {
38495
+ "description": "The schedule's label. Alternatively, use the `label` attribute.",
38496
+ "name": "label"
38722
38497
  },
38498
+ {
38499
+ "description": "Text that describes how to use the schedule. Alternatively, use the `help-text` attribute.",
38500
+ "name": "help-text"
38501
+ }
38502
+ ],
38503
+ "members": [
38723
38504
  {
38724
38505
  "kind": "field",
38725
- "name": "endHour",
38506
+ "name": "formAssociated",
38726
38507
  "type": {
38727
- "text": "number"
38508
+ "text": "boolean"
38728
38509
  },
38729
- "default": "22",
38730
- "description": "The last hour shown in the calendar.",
38731
- "attribute": "end-hour"
38510
+ "static": true,
38511
+ "default": "true"
38732
38512
  },
38733
38513
  {
38734
38514
  "kind": "field",
38735
- "name": "interval",
38515
+ "name": "dependencies",
38736
38516
  "type": {
38737
- "text": "number"
38517
+ "text": "object"
38738
38518
  },
38739
- "default": "30",
38740
- "description": "The granularity of the calendar grid and the time inputs, in minutes.",
38741
- "attribute": "interval"
38519
+ "static": true,
38520
+ "default": "{ 'zn-icon': ZnIcon, 'zn-input': ZnInput, 'zn-option': ZnOption, 'zn-select': ZnSelect, }"
38742
38521
  },
38743
38522
  {
38744
38523
  "kind": "field",
38745
- "name": "weekStart",
38746
- "type": {
38747
- "text": "ScheduleDay"
38748
- },
38749
- "default": "'mon'",
38750
- "description": "The weekday the week starts on.",
38751
- "attribute": "week-start"
38524
+ "name": "formControlController",
38525
+ "privacy": "private",
38526
+ "readonly": true,
38527
+ "default": "new FormControlController(this, { assumeInteractionOn: ['zn-change'] })"
38752
38528
  },
38753
38529
  {
38754
38530
  "kind": "field",
38755
- "name": "timeFormat",
38756
- "type": {
38757
- "text": "'12' | '24'"
38758
- },
38759
- "default": "'24'",
38760
- "description": "Displays times as 12 or 24 hour. The serialised value is always 24 hour `HH:MM`.",
38761
- "attribute": "time-format"
38531
+ "name": "hasSlotController",
38532
+ "privacy": "private",
38533
+ "readonly": true,
38534
+ "default": "new HasSlotController(this, 'help-text', 'label')"
38762
38535
  },
38763
38536
  {
38764
38537
  "kind": "field",
38765
- "name": "displayTimezone",
38766
- "type": {
38767
- "text": "string"
38768
- },
38769
- "default": "''",
38770
- "description": "The IANA timezone the hours are shown in. Accepts `auto` for the viewer's own timezone. Defaults\nto `save-timezone`, so nothing is converted until you ask for it. Changing this only re-labels\nthe same underlying hours; the value never moves.",
38771
- "attribute": "display-timezone"
38538
+ "name": "localize",
38539
+ "privacy": "private",
38540
+ "readonly": true,
38541
+ "default": "new LocalizeController(this)"
38772
38542
  },
38773
38543
  {
38774
38544
  "kind": "field",
38775
- "name": "saveTimezone",
38545
+ "name": "internals",
38776
38546
  "type": {
38777
- "text": "string"
38547
+ "text": "ElementInternals | null"
38778
38548
  },
38779
- "default": "''",
38780
- "description": "The IANA timezone the value is stored in. Defaults to `UTC` as soon as the schedule is\ntimezone-aware (a display timezone is set, or the picker is shown), and to no timezone at all\notherwise — in which case the times are stored exactly as they are shown.",
38781
- "attribute": "save-timezone"
38549
+ "privacy": "private",
38550
+ "readonly": true
38782
38551
  },
38783
38552
  {
38784
38553
  "kind": "field",
38785
- "name": "showTimezone",
38554
+ "name": "canvas",
38786
38555
  "type": {
38787
- "text": "boolean"
38556
+ "text": "HTMLElement"
38788
38557
  },
38789
- "default": "false",
38790
- "description": "Shows the timezone picker, letting the user read the schedule in any timezone.",
38791
- "attribute": "show-timezone"
38558
+ "privacy": "private"
38792
38559
  },
38793
38560
  {
38794
38561
  "kind": "field",
38795
- "name": "timezones",
38562
+ "name": "_days",
38796
38563
  "type": {
38797
- "text": "string[]"
38564
+ "text": "ScheduleDayMap"
38798
38565
  },
38799
- "default": "[]",
38800
- "description": "The timezones offered by the picker, as IANA names or one of the named sets — `en` (the four US\nzones, the UK and Australia, under those names), `offsets` (one zone per UTC offset, the\ndefault), `common` (every offset plus the world's major centres) or `all` (the complete IANA\nlist). Names and sets can be mixed, e.g. `en Asia/Tokyo`.",
38801
- "attribute": "timezones"
38566
+ "privacy": "private"
38802
38567
  },
38803
38568
  {
38804
38569
  "kind": "field",
38805
- "name": "referenceDate",
38570
+ "name": "_exceptions",
38806
38571
  "type": {
38807
- "text": "string"
38572
+ "text": "ScheduleException[]"
38808
38573
  },
38809
- "default": "''",
38810
- "description": "The date (`YYYY-MM-DD`) used to resolve timezone offsets. A weekly pattern has no date of its\nown, so one has to be picked to know whether daylight saving applies; today is used by default.",
38811
- "attribute": "reference-date"
38574
+ "privacy": "private",
38575
+ "default": "[]"
38812
38576
  },
38813
38577
  {
38814
38578
  "kind": "field",
38815
- "name": "disabled",
38579
+ "name": "_dragPreview",
38816
38580
  "type": {
38817
- "text": "boolean"
38581
+ "text": "ScheduleDayMap | null"
38818
38582
  },
38819
- "default": "false",
38820
- "description": "Disables the schedule.",
38821
- "attribute": "disabled",
38822
- "reflects": true
38583
+ "privacy": "private",
38584
+ "default": "null"
38823
38585
  },
38824
38586
  {
38825
38587
  "kind": "field",
38826
- "name": "readonly",
38588
+ "name": "_editing",
38827
38589
  "type": {
38828
- "text": "boolean"
38590
+ "text": "{ day: ScheduleDay; index: number } | null"
38829
38591
  },
38830
- "default": "false",
38831
- "description": "Renders the schedule without any editing affordances.",
38832
- "attribute": "readonly",
38833
- "reflects": true
38592
+ "privacy": "private",
38593
+ "default": "null"
38834
38594
  },
38835
38595
  {
38836
38596
  "kind": "field",
38837
- "name": "required",
38597
+ "name": "_dragMode",
38838
38598
  "type": {
38839
- "text": "boolean"
38599
+ "text": "'open' | 'close'"
38840
38600
  },
38841
- "default": "false",
38842
- "description": "Makes the schedule a required field, invalid until at least one period is open.",
38843
- "attribute": "required",
38844
- "reflects": true
38601
+ "privacy": "private",
38602
+ "default": "'open'"
38845
38603
  },
38846
38604
  {
38847
38605
  "kind": "field",
38848
- "name": "form",
38606
+ "name": "_dragAnchor",
38849
38607
  "type": {
38850
- "text": "string"
38608
+ "text": "{ col: number; row: number } | null"
38609
+ },
38610
+ "privacy": "private",
38611
+ "default": "null"
38612
+ },
38613
+ {
38614
+ "kind": "field",
38615
+ "name": "_dragPointerId",
38616
+ "type": {
38617
+ "text": "number | null"
38618
+ },
38619
+ "privacy": "private",
38620
+ "default": "null"
38621
+ },
38622
+ {
38623
+ "kind": "field",
38624
+ "name": "name",
38625
+ "type": {
38626
+ "text": "string"
38627
+ },
38628
+ "description": "The name of the form control, submitted as a name/value pair with form data.",
38629
+ "attribute": "name",
38630
+ "reflects": true
38631
+ },
38632
+ {
38633
+ "kind": "field",
38634
+ "name": "value",
38635
+ "type": {
38636
+ "text": "string"
38637
+ },
38638
+ "default": "''",
38639
+ "description": "The schedule as a JSON string. This is what gets posted with the form.",
38640
+ "attribute": "value"
38641
+ },
38642
+ {
38643
+ "kind": "field",
38644
+ "name": "defaultValue",
38645
+ "type": {
38646
+ "text": "string"
38647
+ },
38648
+ "default": "''",
38649
+ "description": "The default value, used when resetting the containing form."
38650
+ },
38651
+ {
38652
+ "kind": "field",
38653
+ "name": "label",
38654
+ "type": {
38655
+ "text": "string"
38656
+ },
38657
+ "default": "''",
38658
+ "description": "The schedule's label. If you need to display HTML, use the `label` slot instead.",
38659
+ "attribute": "label"
38660
+ },
38661
+ {
38662
+ "kind": "field",
38663
+ "name": "helpText",
38664
+ "type": {
38665
+ "text": "string"
38666
+ },
38667
+ "default": "''",
38668
+ "description": "The schedule's help text. If you need to display HTML, use the `help-text` slot instead.",
38669
+ "attribute": "help-text"
38670
+ },
38671
+ {
38672
+ "kind": "field",
38673
+ "name": "view",
38674
+ "type": {
38675
+ "text": "ScheduleView"
38676
+ },
38677
+ "default": "'calendar'",
38678
+ "description": "Which view is showing.",
38679
+ "attribute": "view",
38680
+ "reflects": true
38681
+ },
38682
+ {
38683
+ "kind": "field",
38684
+ "name": "openLabel",
38685
+ "type": {
38686
+ "text": "string"
38687
+ },
38688
+ "default": "'Available'",
38689
+ "description": "The word used for hours the schedule covers, in the legend and in labels.",
38690
+ "attribute": "open-label"
38691
+ },
38692
+ {
38693
+ "kind": "field",
38694
+ "name": "closedLabel",
38695
+ "type": {
38696
+ "text": "string"
38697
+ },
38698
+ "default": "'Closed'",
38699
+ "description": "The word used for hours the schedule doesn't cover, in the legend and against empty days.",
38700
+ "attribute": "closed-label"
38701
+ },
38702
+ {
38703
+ "kind": "field",
38704
+ "name": "noToggle",
38705
+ "type": {
38706
+ "text": "boolean"
38707
+ },
38708
+ "default": "false",
38709
+ "description": "Hides the calendar/form view toggle.",
38710
+ "attribute": "no-toggle"
38711
+ },
38712
+ {
38713
+ "kind": "field",
38714
+ "name": "hideSummary",
38715
+ "type": {
38716
+ "text": "boolean"
38717
+ },
38718
+ "default": "false",
38719
+ "description": "Hides the summary panel beside the calendar.",
38720
+ "attribute": "hide-summary"
38721
+ },
38722
+ {
38723
+ "kind": "field",
38724
+ "name": "startHour",
38725
+ "type": {
38726
+ "text": "number"
38727
+ },
38728
+ "default": "6",
38729
+ "description": "The first hour shown in the calendar.",
38730
+ "attribute": "start-hour"
38731
+ },
38732
+ {
38733
+ "kind": "field",
38734
+ "name": "endHour",
38735
+ "type": {
38736
+ "text": "number"
38737
+ },
38738
+ "default": "22",
38739
+ "description": "The last hour shown in the calendar.",
38740
+ "attribute": "end-hour"
38741
+ },
38742
+ {
38743
+ "kind": "field",
38744
+ "name": "interval",
38745
+ "type": {
38746
+ "text": "number"
38747
+ },
38748
+ "default": "30",
38749
+ "description": "The granularity of the calendar grid and the time inputs, in minutes.",
38750
+ "attribute": "interval"
38751
+ },
38752
+ {
38753
+ "kind": "field",
38754
+ "name": "weekStart",
38755
+ "type": {
38756
+ "text": "ScheduleDay"
38757
+ },
38758
+ "default": "'mon'",
38759
+ "description": "The weekday the week starts on.",
38760
+ "attribute": "week-start"
38761
+ },
38762
+ {
38763
+ "kind": "field",
38764
+ "name": "timeFormat",
38765
+ "type": {
38766
+ "text": "'12' | '24'"
38767
+ },
38768
+ "default": "'24'",
38769
+ "description": "Displays times as 12 or 24 hour. The serialised value is always 24 hour `HH:MM`.",
38770
+ "attribute": "time-format"
38771
+ },
38772
+ {
38773
+ "kind": "field",
38774
+ "name": "displayTimezone",
38775
+ "type": {
38776
+ "text": "string"
38777
+ },
38778
+ "default": "''",
38779
+ "description": "The IANA timezone the hours are shown in. Accepts `auto` for the viewer's own timezone. Defaults\nto `save-timezone`, so nothing is converted until you ask for it. Changing this only re-labels\nthe same underlying hours; the value never moves.",
38780
+ "attribute": "display-timezone"
38781
+ },
38782
+ {
38783
+ "kind": "field",
38784
+ "name": "saveTimezone",
38785
+ "type": {
38786
+ "text": "string"
38787
+ },
38788
+ "default": "''",
38789
+ "description": "The IANA timezone the value is stored in. Defaults to `UTC` as soon as the schedule is\ntimezone-aware (a display timezone is set, or the picker is shown), and to no timezone at all\notherwise — in which case the times are stored exactly as they are shown.",
38790
+ "attribute": "save-timezone"
38791
+ },
38792
+ {
38793
+ "kind": "field",
38794
+ "name": "showTimezone",
38795
+ "type": {
38796
+ "text": "boolean"
38797
+ },
38798
+ "default": "false",
38799
+ "description": "Shows the timezone picker, letting the user read the schedule in any timezone.",
38800
+ "attribute": "show-timezone"
38801
+ },
38802
+ {
38803
+ "kind": "field",
38804
+ "name": "timezones",
38805
+ "type": {
38806
+ "text": "string[]"
38807
+ },
38808
+ "default": "[]",
38809
+ "description": "The timezones offered by the picker, as IANA names or one of the named sets — `en` (the four US\nzones, the UK and Australia, under those names), `offsets` (one zone per UTC offset, the\ndefault), `common` (every offset plus the world's major centres) or `all` (the complete IANA\nlist). Names and sets can be mixed, e.g. `en Asia/Tokyo`.",
38810
+ "attribute": "timezones"
38811
+ },
38812
+ {
38813
+ "kind": "field",
38814
+ "name": "referenceDate",
38815
+ "type": {
38816
+ "text": "string"
38817
+ },
38818
+ "default": "''",
38819
+ "description": "The date (`YYYY-MM-DD`) used to resolve timezone offsets. A weekly pattern has no date of its\nown, so one has to be picked to know whether daylight saving applies; today is used by default.",
38820
+ "attribute": "reference-date"
38821
+ },
38822
+ {
38823
+ "kind": "field",
38824
+ "name": "disabled",
38825
+ "type": {
38826
+ "text": "boolean"
38827
+ },
38828
+ "default": "false",
38829
+ "description": "Disables the schedule.",
38830
+ "attribute": "disabled",
38831
+ "reflects": true
38832
+ },
38833
+ {
38834
+ "kind": "field",
38835
+ "name": "readonly",
38836
+ "type": {
38837
+ "text": "boolean"
38838
+ },
38839
+ "default": "false",
38840
+ "description": "Renders the schedule without any editing affordances.",
38841
+ "attribute": "readonly",
38842
+ "reflects": true
38843
+ },
38844
+ {
38845
+ "kind": "field",
38846
+ "name": "required",
38847
+ "type": {
38848
+ "text": "boolean"
38849
+ },
38850
+ "default": "false",
38851
+ "description": "Makes the schedule a required field, invalid until at least one period is open.",
38852
+ "attribute": "required",
38853
+ "reflects": true
38854
+ },
38855
+ {
38856
+ "kind": "field",
38857
+ "name": "form",
38858
+ "type": {
38859
+ "text": "string"
38851
38860
  },
38852
38861
  "description": "The id of the form to associate with, when the control sits outside of it.",
38853
38862
  "attribute": "form",
@@ -46106,10 +46115,18 @@
46106
46115
  "path": "components/tabs/tabs.js",
46107
46116
  "declarations": [
46108
46117
  {
46109
- "kind": "class",
46110
- "description": "",
46111
- "name": "ZnTabs",
46112
- "cssProperties": [
46118
+ "kind": "variable",
46119
+ "name": "tabContainerSelector",
46120
+ "type": {
46121
+ "text": "string"
46122
+ },
46123
+ "default": "'zn-tabs, zn-page, zn-page-nav'"
46124
+ },
46125
+ {
46126
+ "kind": "class",
46127
+ "description": "",
46128
+ "name": "ZnTabs",
46129
+ "cssProperties": [
46113
46130
  {
46114
46131
  "description": "An example CSS custom property.",
46115
46132
  "name": "--example"
@@ -46987,6 +47004,14 @@
46987
47004
  }
46988
47005
  ],
46989
47006
  "exports": [
47007
+ {
47008
+ "kind": "js",
47009
+ "name": "tabContainerSelector",
47010
+ "declaration": {
47011
+ "name": "tabContainerSelector",
47012
+ "module": "components/tabs/tabs.js"
47013
+ }
47014
+ },
46990
47015
  {
46991
47016
  "kind": "js",
46992
47017
  "name": "default",
@@ -48950,26 +48975,395 @@
48950
48975
  },
48951
48976
  {
48952
48977
  "kind": "method",
48953
- "name": "_openFirstCollapsible",
48954
- "privacy": "private",
48955
- "parameters": [
48956
- {
48957
- "name": "section",
48958
- "type": {
48959
- "text": "ThemeEditorSection"
48960
- }
48961
- }
48962
- ]
48978
+ "name": "_openFirstCollapsible",
48979
+ "privacy": "private",
48980
+ "parameters": [
48981
+ {
48982
+ "name": "section",
48983
+ "type": {
48984
+ "text": "ThemeEditorSection"
48985
+ }
48986
+ }
48987
+ ]
48988
+ },
48989
+ {
48990
+ "kind": "method",
48991
+ "name": "_renderTabs",
48992
+ "privacy": "private",
48993
+ "parameters": [
48994
+ {
48995
+ "name": "panel",
48996
+ "type": {
48997
+ "text": "(section: ThemeEditorSection) => unknown"
48998
+ }
48999
+ }
49000
+ ]
49001
+ }
49002
+ ],
49003
+ "events": [
49004
+ {
49005
+ "description": "Emitted when the values, mode or device change.",
49006
+ "name": "zn-theme-change"
49007
+ },
49008
+ {
49009
+ "description": "Emitted on submit (button click), carrying the current values. With `action` set, only fires after a successful save.",
49010
+ "name": "zn-theme-submit"
49011
+ },
49012
+ {
49013
+ "description": "Emitted when a save fails. Also seen for preview render failures: the frame's zn-error is composed and not stopped, so it bubbles out through the editor too.",
49014
+ "name": "zn-error"
49015
+ }
49016
+ ],
49017
+ "attributes": [
49018
+ {
49019
+ "name": "src",
49020
+ "type": {
49021
+ "text": "string"
49022
+ },
49023
+ "default": "''",
49024
+ "description": "URL of the preview shell page; forwarded to the frame.",
49025
+ "fieldName": "src"
49026
+ },
49027
+ {
49028
+ "name": "frame-origin",
49029
+ "type": {
49030
+ "text": "string"
49031
+ },
49032
+ "default": "''",
49033
+ "description": "Expected origin of the iframe; forwarded to the frame.",
49034
+ "fieldName": "frameOrigin"
49035
+ },
49036
+ {
49037
+ "name": "data-uri",
49038
+ "type": {
49039
+ "text": "string"
49040
+ },
49041
+ "default": "''",
49042
+ "description": "Optional endpoint returning the base hp-preview:config payload.",
49043
+ "fieldName": "dataUri"
49044
+ },
49045
+ {
49046
+ "name": "mode",
49047
+ "type": {
49048
+ "text": "ThemeEditorMode"
49049
+ },
49050
+ "default": "'light'",
49051
+ "description": "Which mode the preview renders in. Travels in the theme payload.",
49052
+ "fieldName": "mode"
49053
+ },
49054
+ {
49055
+ "name": "device",
49056
+ "type": {
49057
+ "text": "ThemeEditorDevice"
49058
+ },
49059
+ "default": "'desktop'",
49060
+ "description": "Preview viewport width. Resizes the frame only; not part of the payload.",
49061
+ "fieldName": "device"
49062
+ },
49063
+ {
49064
+ "name": "min-height",
49065
+ "type": {
49066
+ "text": "number"
49067
+ },
49068
+ "default": "480",
49069
+ "description": "Minimum height of the preview row, in pixels; forwarded to the frame as its own floor.",
49070
+ "fieldName": "minHeight"
49071
+ },
49072
+ {
49073
+ "name": "debounce",
49074
+ "type": {
49075
+ "text": "number"
49076
+ },
49077
+ "default": "150",
49078
+ "description": "Debounce in ms between a control change and the push to the preview.",
49079
+ "fieldName": "debounce"
49080
+ },
49081
+ {
49082
+ "name": "action",
49083
+ "type": {
49084
+ "text": "string"
49085
+ },
49086
+ "default": "''",
49087
+ "description": "Optional endpoint the values are POSTed to. Empty = no persistence.",
49088
+ "fieldName": "action"
49089
+ },
49090
+ {
49091
+ "name": "save-debounce",
49092
+ "type": {
49093
+ "text": "number"
49094
+ },
49095
+ "default": "1000",
49096
+ "description": "Debounce in ms between a control change and the save POST.",
49097
+ "fieldName": "saveDebounce"
49098
+ },
49099
+ {
49100
+ "name": "sections",
49101
+ "type": {
49102
+ "text": "ThemeEditorSection[]"
49103
+ },
49104
+ "default": "[]",
49105
+ "description": "Groups controls into named sections. Empty/unset falls back to deriving the\nstructure from the controls' own `group`/`category` attributes, and renders\none ungrouped column when they carry neither. A section with a non-empty\n`groups` nests a collapsible per group inside a `zn-tabs` tab for that\nsection - see `groups` on `ThemeEditorSection`.",
49106
+ "fieldName": "sections"
49107
+ },
49108
+ {
49109
+ "name": "section-layout",
49110
+ "type": {
49111
+ "text": "'collapsible' | 'tabs'"
49112
+ },
49113
+ "default": "'collapsible'",
49114
+ "description": "Presentation for flat, group-less `sections`: stacked `zn-collapsible`s\n(default) or a `zn-tabs` strip. Ignored once any section has `groups` -\nnested sections always render as tabs.",
49115
+ "fieldName": "sectionLayout"
49116
+ },
49117
+ {
49118
+ "name": "sources",
49119
+ "type": {
49120
+ "text": "ThemeEditorSource[]"
49121
+ },
49122
+ "default": "[]",
49123
+ "description": "Dropdown of preview sources, `{label, src}`, rendered in the toolbar. Empty/unset renders no dropdown; the first entry wins over an explicit `src` when non-empty.",
49124
+ "fieldName": "sources"
49125
+ },
49126
+ {
49127
+ "name": "controls-collapsed",
49128
+ "type": {
49129
+ "text": "boolean"
49130
+ },
49131
+ "default": "false",
49132
+ "description": "Collapses the controls column.",
49133
+ "fieldName": "controlsCollapsed"
49134
+ },
49135
+ {
49136
+ "name": "standalone",
49137
+ "type": {
49138
+ "text": "boolean"
49139
+ },
49140
+ "default": "false",
49141
+ "description": "Presents the editor as its own bordered, rounded panel with a plain preview backdrop, rather than embedded in a dotted canvas.",
49142
+ "fieldName": "standalone"
49143
+ },
49144
+ {
49145
+ "name": "controls-caption",
49146
+ "type": {
49147
+ "text": "string"
49148
+ },
49149
+ "default": "''",
49150
+ "description": "Caption in the controls column's header row. Empty (default) renders no text; the row itself always renders.",
49151
+ "fieldName": "controlsCaption"
49152
+ },
49153
+ {
49154
+ "name": "preview-caption",
49155
+ "type": {
49156
+ "text": "string"
49157
+ },
49158
+ "default": "''",
49159
+ "description": "Caption at the left of the toolbar, opposite the device and mode controls. Empty (default) renders no text.",
49160
+ "fieldName": "previewCaption"
49161
+ },
49162
+ {
49163
+ "name": "submit-label",
49164
+ "type": {
49165
+ "text": "string"
49166
+ },
49167
+ "default": "''",
49168
+ "description": "Label for the built-in submit button. Empty (default) renders no button.",
49169
+ "fieldName": "submitLabel"
49170
+ },
49171
+ {
49172
+ "name": "manual",
49173
+ "type": {
49174
+ "text": "boolean"
49175
+ },
49176
+ "default": "false",
49177
+ "description": "Disables the debounced auto-save; saving then happens only via submit. Preview pushes are unaffected.",
49178
+ "fieldName": "manual"
49179
+ }
49180
+ ],
49181
+ "superclass": {
49182
+ "name": "ZincElement",
49183
+ "module": "/src/internal/zinc-element"
49184
+ },
49185
+ "summary": "A theme editor: slotted form controls drive a live preview frame,\nwith a toolbar for the preview's light/dark mode and device width.",
49186
+ "tagNameWithoutPrefix": "theme-editor",
49187
+ "tagName": "zn-theme-editor",
49188
+ "customElement": true,
49189
+ "jsDoc": "/**\n * @summary A theme editor: slotted form controls drive a live preview frame,\n * with a toolbar for the preview's light/dark mode and device width.\n * @documentation https://zinc.style/components/theme-editor\n * @status experimental\n * @since 1.0\n *\n * @dependency zn-collapsible\n * @dependency zn-preview-frame\n * @dependency zn-icon\n * @dependency zn-button\n * @dependency zn-button-group\n * @dependency zn-tabs\n * @dependency zn-navbar\n * @dependency zn-select\n *\n * @event zn-theme-change - Emitted when the values, mode or device change.\n * @event zn-theme-submit - Emitted on submit (button click), carrying the\n * current values. With `action` set, only fires after a successful save.\n * @event zn-error - Emitted when a save fails. Also seen for preview render\n * failures: the frame's zn-error is composed and not stopped, so it bubbles\n * out through the editor too.\n *\n * @slot - Ungrouped theme controls, rendered above any sections. Controls\n * assigned `slot=\"<name>\"` matching a `sections` entry (or, when nested, a\n * `groups` entry) render inside that section/group instead. Harvesting and\n * change detection walk every slot's full assigned subtree, not just direct\n * children.\n *\n * With `sections` left unset, the structure is instead derived from the\n * controls' own attributes: `group=\"<label>\"` becomes a tab and\n * `category=\"<label>\"` a collapsible within it, and the control is slotted\n * into that collapsible automatically. Either attribute works alone - a\n * control with only `group` sits directly in its tab, and one with only\n * `category` becomes its own top-level section. Setting `sections`\n * explicitly disables the derivation entirely.\n * @slot toolbar - Actions in the toolbar, right-aligned beside the device\n * controls. Where a save button belongs.\n * @slot footer - Actions pinned beneath the controls. The built-in submit button\n * lives in the toolbar, not here.\n *\n * @csspart base - The component's base wrapper.\n * @csspart controls - The left-hand controls column, full height.\n * @csspart controls-header - The controls column's header row: `controls-caption` on the left, the light/dark mode toggle on the right.\n * @csspart toolbar - The preview column's header row: `preview-caption` on the left, the device switcher (and sources/submit) on the right. Spans the preview column only.\n * @csspart section - A rendered section's or group's collapsible (`section-layout=\"collapsible\"`, or any nested group).\n * @csspart footer - The footer wrapper beneath the controls.\n * @csspart preview - The preview column.\n * @csspart error - The inline error strip.\n * @csspart preview__base - The frame's base wrapper (forwarded from zn-preview-frame).\n * @csspart preview__stage - The frame's device-width wrapper (forwarded from zn-preview-frame).\n * @csspart preview__iframe - The frame's iframe (forwarded from zn-preview-frame).\n * @csspart preview__error - The frame's own error overlay (forwarded from zn-preview-frame).\n *\n * @cssproperty --zn-theme-editor-controls-width - Width of the controls column.\n */",
49190
+ "documentation": "https://zinc.style/components/theme-editor",
49191
+ "status": "experimental",
49192
+ "since": "1.0",
49193
+ "dependencies": [
49194
+ "zn-collapsible",
49195
+ "zn-preview-frame",
49196
+ "zn-icon",
49197
+ "zn-button",
49198
+ "zn-button-group",
49199
+ "zn-tabs",
49200
+ "zn-navbar",
49201
+ "zn-select"
49202
+ ]
49203
+ }
49204
+ ],
49205
+ "exports": [
49206
+ {
49207
+ "kind": "js",
49208
+ "name": "default",
49209
+ "declaration": {
49210
+ "name": "ZnThemeEditor",
49211
+ "module": "components/theme-editor/theme-editor.js"
49212
+ }
49213
+ }
49214
+ ]
49215
+ },
49216
+ {
49217
+ "kind": "javascript-module",
49218
+ "path": "components/tile/tile.js",
49219
+ "declarations": [
49220
+ {
49221
+ "kind": "class",
49222
+ "description": "",
49223
+ "name": "ZnTile",
49224
+ "cssProperties": [
49225
+ {
49226
+ "description": "An example CSS custom property.",
49227
+ "name": "--example"
49228
+ }
49229
+ ],
49230
+ "cssParts": [
49231
+ {
49232
+ "description": "The component's base wrapper.",
49233
+ "name": "base"
49234
+ }
49235
+ ],
49236
+ "slots": [
49237
+ {
49238
+ "description": "The default slot.",
49239
+ "name": ""
49240
+ },
49241
+ {
49242
+ "description": "An example slot.",
49243
+ "name": "example"
49244
+ }
49245
+ ],
49246
+ "members": [
49247
+ {
49248
+ "kind": "field",
49249
+ "name": "hasSlotController",
49250
+ "privacy": "private",
49251
+ "readonly": true,
49252
+ "default": "new HasSlotController(this, '[default]', 'properties', 'actions', 'image')"
49253
+ },
49254
+ {
49255
+ "kind": "field",
49256
+ "name": "caption",
49257
+ "type": {
49258
+ "text": "string"
49259
+ },
49260
+ "attribute": "caption"
49261
+ },
49262
+ {
49263
+ "kind": "field",
49264
+ "name": "description",
49265
+ "type": {
49266
+ "text": "string"
49267
+ },
49268
+ "attribute": "description"
49269
+ },
49270
+ {
49271
+ "kind": "field",
49272
+ "name": "href",
49273
+ "type": {
49274
+ "text": "string"
49275
+ },
49276
+ "attribute": "href"
49277
+ },
49278
+ {
49279
+ "kind": "field",
49280
+ "name": "dataTarget",
49281
+ "type": {
49282
+ "text": "string"
49283
+ },
49284
+ "attribute": "data-target"
49285
+ },
49286
+ {
49287
+ "kind": "field",
49288
+ "name": "gaid",
49289
+ "type": {
49290
+ "text": "string"
49291
+ },
49292
+ "attribute": "gaid"
49293
+ },
49294
+ {
49295
+ "kind": "field",
49296
+ "name": "dataUri",
49297
+ "type": {
49298
+ "text": "string"
49299
+ },
49300
+ "attribute": "data-uri"
49301
+ },
49302
+ {
49303
+ "kind": "field",
49304
+ "name": "flush",
49305
+ "type": {
49306
+ "text": "boolean"
49307
+ },
49308
+ "attribute": "flush"
49309
+ },
49310
+ {
49311
+ "kind": "field",
49312
+ "name": "flushX",
49313
+ "type": {
49314
+ "text": "boolean"
49315
+ },
49316
+ "attribute": "flush-x"
49317
+ },
49318
+ {
49319
+ "kind": "field",
49320
+ "name": "flushY",
49321
+ "type": {
49322
+ "text": "boolean"
49323
+ },
49324
+ "attribute": "flush-y"
49325
+ },
49326
+ {
49327
+ "kind": "field",
49328
+ "name": "inline",
49329
+ "type": {
49330
+ "text": "boolean"
49331
+ },
49332
+ "attribute": "inline"
49333
+ },
49334
+ {
49335
+ "kind": "field",
49336
+ "name": "plain",
49337
+ "type": {
49338
+ "text": "boolean"
49339
+ },
49340
+ "description": "Renders the caption in the normal table-content weight instead of bold.",
49341
+ "attribute": "plain"
49342
+ },
49343
+ {
49344
+ "kind": "field",
49345
+ "name": "grouped",
49346
+ "type": {
49347
+ "text": "boolean"
49348
+ },
49349
+ "description": "Set by `zn-tile-group` to lay the tile out as a shared-column subgrid row.",
49350
+ "attribute": "grouped",
49351
+ "reflects": true
49352
+ },
49353
+ {
49354
+ "kind": "method",
49355
+ "name": "_isLink",
49356
+ "privacy": "private"
48963
49357
  },
48964
49358
  {
48965
49359
  "kind": "method",
48966
- "name": "_renderTabs",
49360
+ "name": "_handleActionsClick",
48967
49361
  "privacy": "private",
48968
49362
  "parameters": [
48969
49363
  {
48970
- "name": "panel",
49364
+ "name": "e",
48971
49365
  "type": {
48972
- "text": "(section: ThemeEditorSection) => unknown"
49366
+ "text": "MouseEvent"
48973
49367
  }
48974
49368
  }
48975
49369
  ]
@@ -48977,203 +49371,209 @@
48977
49371
  ],
48978
49372
  "events": [
48979
49373
  {
48980
- "description": "Emitted when the values, mode or device change.",
48981
- "name": "zn-theme-change"
48982
- },
48983
- {
48984
- "description": "Emitted on submit (button click), carrying the current values. With `action` set, only fires after a successful save.",
48985
- "name": "zn-theme-submit"
48986
- },
48987
- {
48988
- "description": "Emitted when a save fails. Also seen for preview render failures: the frame's zn-error is composed and not stopped, so it bubbles out through the editor too.",
48989
- "name": "zn-error"
49374
+ "description": "Emitted as an example.",
49375
+ "name": "zn-event-name"
48990
49376
  }
48991
49377
  ],
48992
49378
  "attributes": [
48993
49379
  {
48994
- "name": "src",
49380
+ "name": "caption",
48995
49381
  "type": {
48996
49382
  "text": "string"
48997
49383
  },
48998
- "default": "''",
48999
- "description": "URL of the preview shell page; forwarded to the frame.",
49000
- "fieldName": "src"
49384
+ "fieldName": "caption"
49001
49385
  },
49002
49386
  {
49003
- "name": "frame-origin",
49387
+ "name": "description",
49004
49388
  "type": {
49005
49389
  "text": "string"
49006
49390
  },
49007
- "default": "''",
49008
- "description": "Expected origin of the iframe; forwarded to the frame.",
49009
- "fieldName": "frameOrigin"
49391
+ "fieldName": "description"
49010
49392
  },
49011
49393
  {
49012
- "name": "data-uri",
49394
+ "name": "href",
49013
49395
  "type": {
49014
49396
  "text": "string"
49015
49397
  },
49016
- "default": "''",
49017
- "description": "Optional endpoint returning the base hp-preview:config payload.",
49018
- "fieldName": "dataUri"
49019
- },
49020
- {
49021
- "name": "mode",
49022
- "type": {
49023
- "text": "ThemeEditorMode"
49024
- },
49025
- "default": "'light'",
49026
- "description": "Which mode the preview renders in. Travels in the theme payload.",
49027
- "fieldName": "mode"
49398
+ "fieldName": "href"
49028
49399
  },
49029
49400
  {
49030
- "name": "device",
49401
+ "name": "data-target",
49031
49402
  "type": {
49032
- "text": "ThemeEditorDevice"
49403
+ "text": "string"
49033
49404
  },
49034
- "default": "'desktop'",
49035
- "description": "Preview viewport width. Resizes the frame only; not part of the payload.",
49036
- "fieldName": "device"
49405
+ "fieldName": "dataTarget"
49037
49406
  },
49038
49407
  {
49039
- "name": "min-height",
49408
+ "name": "gaid",
49040
49409
  "type": {
49041
- "text": "number"
49410
+ "text": "string"
49042
49411
  },
49043
- "default": "480",
49044
- "description": "Minimum height of the preview row, in pixels; forwarded to the frame as its own floor.",
49045
- "fieldName": "minHeight"
49412
+ "fieldName": "gaid"
49046
49413
  },
49047
49414
  {
49048
- "name": "debounce",
49415
+ "name": "data-uri",
49049
49416
  "type": {
49050
- "text": "number"
49417
+ "text": "string"
49051
49418
  },
49052
- "default": "150",
49053
- "description": "Debounce in ms between a control change and the push to the preview.",
49054
- "fieldName": "debounce"
49419
+ "fieldName": "dataUri"
49055
49420
  },
49056
49421
  {
49057
- "name": "action",
49422
+ "name": "flush",
49058
49423
  "type": {
49059
- "text": "string"
49424
+ "text": "boolean"
49060
49425
  },
49061
- "default": "''",
49062
- "description": "Optional endpoint the values are POSTed to. Empty = no persistence.",
49063
- "fieldName": "action"
49426
+ "fieldName": "flush"
49064
49427
  },
49065
49428
  {
49066
- "name": "save-debounce",
49429
+ "name": "flush-x",
49067
49430
  "type": {
49068
- "text": "number"
49431
+ "text": "boolean"
49069
49432
  },
49070
- "default": "1000",
49071
- "description": "Debounce in ms between a control change and the save POST.",
49072
- "fieldName": "saveDebounce"
49433
+ "fieldName": "flushX"
49073
49434
  },
49074
49435
  {
49075
- "name": "sections",
49436
+ "name": "flush-y",
49076
49437
  "type": {
49077
- "text": "ThemeEditorSection[]"
49438
+ "text": "boolean"
49078
49439
  },
49079
- "default": "[]",
49080
- "description": "Groups controls into named sections. Empty/unset falls back to deriving the\nstructure from the controls' own `group`/`category` attributes, and renders\none ungrouped column when they carry neither. A section with a non-empty\n`groups` nests a collapsible per group inside a `zn-tabs` tab for that\nsection - see `groups` on `ThemeEditorSection`.",
49081
- "fieldName": "sections"
49440
+ "fieldName": "flushY"
49082
49441
  },
49083
49442
  {
49084
- "name": "section-layout",
49443
+ "name": "inline",
49085
49444
  "type": {
49086
- "text": "'collapsible' | 'tabs'"
49445
+ "text": "boolean"
49087
49446
  },
49088
- "default": "'collapsible'",
49089
- "description": "Presentation for flat, group-less `sections`: stacked `zn-collapsible`s\n(default) or a `zn-tabs` strip. Ignored once any section has `groups` -\nnested sections always render as tabs.",
49090
- "fieldName": "sectionLayout"
49447
+ "fieldName": "inline"
49091
49448
  },
49092
49449
  {
49093
- "name": "sources",
49450
+ "name": "plain",
49094
49451
  "type": {
49095
- "text": "ThemeEditorSource[]"
49452
+ "text": "boolean"
49096
49453
  },
49097
- "default": "[]",
49098
- "description": "Dropdown of preview sources, `{label, src}`, rendered in the toolbar. Empty/unset renders no dropdown; the first entry wins over an explicit `src` when non-empty.",
49099
- "fieldName": "sources"
49454
+ "description": "Renders the caption in the normal table-content weight instead of bold.",
49455
+ "fieldName": "plain"
49100
49456
  },
49101
49457
  {
49102
- "name": "controls-collapsed",
49458
+ "name": "grouped",
49103
49459
  "type": {
49104
49460
  "text": "boolean"
49105
49461
  },
49106
- "default": "false",
49107
- "description": "Collapses the controls column.",
49108
- "fieldName": "controlsCollapsed"
49109
- },
49462
+ "description": "Set by `zn-tile-group` to lay the tile out as a shared-column subgrid row.",
49463
+ "fieldName": "grouped"
49464
+ }
49465
+ ],
49466
+ "superclass": {
49467
+ "name": "ZincElement",
49468
+ "module": "/src/internal/zinc-element"
49469
+ },
49470
+ "summary": "Short summary of the component's intended use.",
49471
+ "tagNameWithoutPrefix": "tile",
49472
+ "tagName": "zn-tile",
49473
+ "customElement": true,
49474
+ "jsDoc": "/**\n * @summary Short summary of the component's intended use.\n * @documentation https://zinc.style/components/tile\n * @status experimental\n * @since 1.0\n *\n * @dependency zn-example\n *\n * @event zn-event-name - Emitted as an example.\n *\n * @slot - The default slot.\n * @slot example - An example slot.\n *\n * @csspart base - The component's base wrapper.\n *\n * @cssproperty --example - An example CSS custom property.\n */",
49475
+ "documentation": "https://zinc.style/components/tile",
49476
+ "status": "experimental",
49477
+ "since": "1.0",
49478
+ "dependencies": [
49479
+ "zn-example"
49480
+ ]
49481
+ }
49482
+ ],
49483
+ "exports": [
49484
+ {
49485
+ "kind": "js",
49486
+ "name": "default",
49487
+ "declaration": {
49488
+ "name": "ZnTile",
49489
+ "module": "components/tile/tile.js"
49490
+ }
49491
+ }
49492
+ ]
49493
+ },
49494
+ {
49495
+ "kind": "javascript-module",
49496
+ "path": "components/tile-group/tile-group.js",
49497
+ "declarations": [
49498
+ {
49499
+ "kind": "class",
49500
+ "description": "",
49501
+ "name": "ZnTileGroup",
49502
+ "cssProperties": [
49110
49503
  {
49111
- "name": "standalone",
49504
+ "description": "The number of value/action columns (set automatically).",
49505
+ "name": "--zn-tile-cols"
49506
+ }
49507
+ ],
49508
+ "cssParts": [
49509
+ {
49510
+ "description": "The component's base wrapper (the grid container).",
49511
+ "name": "base"
49512
+ }
49513
+ ],
49514
+ "slots": [
49515
+ {
49516
+ "description": "One or more `zn-tile` elements.",
49517
+ "name": ""
49518
+ }
49519
+ ],
49520
+ "members": [
49521
+ {
49522
+ "kind": "field",
49523
+ "name": "divide",
49112
49524
  "type": {
49113
49525
  "text": "boolean"
49114
49526
  },
49115
49527
  "default": "false",
49116
- "description": "Presents the editor as its own bordered, rounded panel with a plain preview backdrop, rather than embedded in a dotted canvas.",
49117
- "fieldName": "standalone"
49528
+ "description": "Draws a dividing border between rows.",
49529
+ "attribute": "divide",
49530
+ "reflects": true
49118
49531
  },
49119
49532
  {
49120
- "name": "controls-caption",
49533
+ "kind": "field",
49534
+ "name": "_mutationObserver",
49121
49535
  "type": {
49122
- "text": "string"
49536
+ "text": "MutationObserver | null"
49123
49537
  },
49124
- "default": "''",
49125
- "description": "Caption in the controls column's header row. Empty (default) renders no text; the row itself always renders.",
49126
- "fieldName": "controlsCaption"
49538
+ "privacy": "private",
49539
+ "default": "null"
49127
49540
  },
49128
49541
  {
49129
- "name": "preview-caption",
49130
- "type": {
49131
- "text": "string"
49132
- },
49133
- "default": "''",
49134
- "description": "Caption at the left of the toolbar, opposite the device and mode controls. Empty (default) renders no text.",
49135
- "fieldName": "previewCaption"
49542
+ "kind": "field",
49543
+ "name": "_handleSlotChange",
49544
+ "privacy": "private"
49136
49545
  },
49137
49546
  {
49138
- "name": "submit-label",
49139
- "type": {
49140
- "text": "string"
49141
- },
49142
- "default": "''",
49143
- "description": "Label for the built-in submit button. Empty (default) renders no button.",
49144
- "fieldName": "submitLabel"
49145
- },
49547
+ "kind": "method",
49548
+ "name": "_sync",
49549
+ "privacy": "private"
49550
+ }
49551
+ ],
49552
+ "attributes": [
49146
49553
  {
49147
- "name": "manual",
49554
+ "name": "divide",
49148
49555
  "type": {
49149
49556
  "text": "boolean"
49150
49557
  },
49151
49558
  "default": "false",
49152
- "description": "Disables the debounced auto-save; saving then happens only via submit. Preview pushes are unaffected.",
49153
- "fieldName": "manual"
49559
+ "description": "Draws a dividing border between rows.",
49560
+ "fieldName": "divide"
49154
49561
  }
49155
49562
  ],
49156
49563
  "superclass": {
49157
49564
  "name": "ZincElement",
49158
49565
  "module": "/src/internal/zinc-element"
49159
49566
  },
49160
- "summary": "A theme editor: slotted form controls drive a live preview frame,\nwith a toolbar for the preview's light/dark mode and device width.",
49161
- "tagNameWithoutPrefix": "theme-editor",
49162
- "tagName": "zn-theme-editor",
49567
+ "summary": "Aligns a list of `zn-tile` rows into shared, content-driven columns so values\nand actions line up across every row, with optional dividing borders.",
49568
+ "tagNameWithoutPrefix": "tile-group",
49569
+ "tagName": "zn-tile-group",
49163
49570
  "customElement": true,
49164
- "jsDoc": "/**\n * @summary A theme editor: slotted form controls drive a live preview frame,\n * with a toolbar for the preview's light/dark mode and device width.\n * @documentation https://zinc.style/components/theme-editor\n * @status experimental\n * @since 1.0\n *\n * @dependency zn-collapsible\n * @dependency zn-preview-frame\n * @dependency zn-icon\n * @dependency zn-button\n * @dependency zn-button-group\n * @dependency zn-tabs\n * @dependency zn-navbar\n * @dependency zn-select\n *\n * @event zn-theme-change - Emitted when the values, mode or device change.\n * @event zn-theme-submit - Emitted on submit (button click), carrying the\n * current values. With `action` set, only fires after a successful save.\n * @event zn-error - Emitted when a save fails. Also seen for preview render\n * failures: the frame's zn-error is composed and not stopped, so it bubbles\n * out through the editor too.\n *\n * @slot - Ungrouped theme controls, rendered above any sections. Controls\n * assigned `slot=\"<name>\"` matching a `sections` entry (or, when nested, a\n * `groups` entry) render inside that section/group instead. Harvesting and\n * change detection walk every slot's full assigned subtree, not just direct\n * children.\n *\n * With `sections` left unset, the structure is instead derived from the\n * controls' own attributes: `group=\"<label>\"` becomes a tab and\n * `category=\"<label>\"` a collapsible within it, and the control is slotted\n * into that collapsible automatically. Either attribute works alone - a\n * control with only `group` sits directly in its tab, and one with only\n * `category` becomes its own top-level section. Setting `sections`\n * explicitly disables the derivation entirely.\n * @slot toolbar - Actions in the toolbar, right-aligned beside the device\n * controls. Where a save button belongs.\n * @slot footer - Actions pinned beneath the controls. The built-in submit button\n * lives in the toolbar, not here.\n *\n * @csspart base - The component's base wrapper.\n * @csspart controls - The left-hand controls column, full height.\n * @csspart controls-header - The controls column's header row: `controls-caption` on the left, the light/dark mode toggle on the right.\n * @csspart toolbar - The preview column's header row: `preview-caption` on the left, the device switcher (and sources/submit) on the right. Spans the preview column only.\n * @csspart section - A rendered section's or group's collapsible (`section-layout=\"collapsible\"`, or any nested group).\n * @csspart footer - The footer wrapper beneath the controls.\n * @csspart preview - The preview column.\n * @csspart error - The inline error strip.\n * @csspart preview__base - The frame's base wrapper (forwarded from zn-preview-frame).\n * @csspart preview__stage - The frame's device-width wrapper (forwarded from zn-preview-frame).\n * @csspart preview__iframe - The frame's iframe (forwarded from zn-preview-frame).\n * @csspart preview__error - The frame's own error overlay (forwarded from zn-preview-frame).\n *\n * @cssproperty --zn-theme-editor-controls-width - Width of the controls column.\n */",
49165
- "documentation": "https://zinc.style/components/theme-editor",
49571
+ "jsDoc": "/**\n * @summary Aligns a list of `zn-tile` rows into shared, content-driven columns so values\n * and actions line up across every row, with optional dividing borders.\n * @documentation https://zinc.style/components/tile-group\n * @status experimental\n * @since 1.0\n *\n * @dependency zn-tile\n *\n * @slot - One or more `zn-tile` elements.\n *\n * @csspart base - The component's base wrapper (the grid container).\n *\n * @cssproperty --zn-tile-cols - The number of value/action columns (set automatically).\n */",
49572
+ "documentation": "https://zinc.style/components/tile-group",
49166
49573
  "status": "experimental",
49167
49574
  "since": "1.0",
49168
49575
  "dependencies": [
49169
- "zn-collapsible",
49170
- "zn-preview-frame",
49171
- "zn-icon",
49172
- "zn-button",
49173
- "zn-button-group",
49174
- "zn-tabs",
49175
- "zn-navbar",
49176
- "zn-select"
49576
+ "zn-tile"
49177
49577
  ]
49178
49578
  }
49179
49579
  ],
@@ -49182,8 +49582,8 @@
49182
49582
  "kind": "js",
49183
49583
  "name": "default",
49184
49584
  "declaration": {
49185
- "name": "ZnThemeEditor",
49186
- "module": "components/theme-editor/theme-editor.js"
49585
+ "name": "ZnTileGroup",
49586
+ "module": "components/tile-group/tile-group.js"
49187
49587
  }
49188
49588
  }
49189
49589
  ]
@@ -49926,591 +50326,291 @@
49926
50326
  "name": "ZnThumbnailGroup",
49927
50327
  "cssProperties": [
49928
50328
  {
49929
- "description": "Track width of a thumbnail. Defaults to 180px. Also settable with the `thumbnail-width` attribute.",
49930
- "name": "--zn-thumbnail-width"
49931
- },
49932
- {
49933
- "description": "Gap between thumbnails. Also settable with the `gap` attribute.",
49934
- "name": "--zn-thumbnail-gap"
49935
- },
49936
- {
49937
- "description": "Aspect ratio of every thumbnail in the group. Also settable with the `aspect-ratio` attribute. Any `zn-thumbnail` custom property set here is inherited by the slotted thumbnails.",
49938
- "name": "--zn-thumbnail-aspect-ratio"
49939
- }
49940
- ],
49941
- "cssParts": [
49942
- {
49943
- "description": "The component's base wrapper.",
49944
- "name": "base"
49945
- },
49946
- {
49947
- "description": "The header row holding the caption and toggle.",
49948
- "name": "header"
49949
- },
49950
- {
49951
- "description": "The heading text.",
49952
- "name": "caption"
49953
- },
49954
- {
49955
- "description": "The show all / show less button.",
49956
- "name": "toggle"
49957
- },
49958
- {
49959
- "description": "The scrolling row / expanded grid that holds the thumbnails.",
49960
- "name": "items"
49961
- }
49962
- ],
49963
- "slots": [
49964
- {
49965
- "description": "One or more `zn-thumbnail` elements.",
49966
- "name": ""
49967
- },
49968
- {
49969
- "description": "Replaces the heading text.",
49970
- "name": "caption"
49971
- },
49972
- {
49973
- "description": "Extra content in the header, before the toggle.",
49974
- "name": "actions"
49975
- }
49976
- ],
49977
- "members": [
49978
- {
49979
- "kind": "field",
49980
- "name": "caption",
49981
- "type": {
49982
- "text": "string"
49983
- },
49984
- "default": "''",
49985
- "description": "The heading shown at the top left of the group.",
49986
- "attribute": "caption"
49987
- },
49988
- {
49989
- "kind": "field",
49990
- "name": "expanded",
49991
- "type": {
49992
- "text": "boolean"
49993
- },
49994
- "default": "false",
49995
- "description": "Expands the group into the full wrapping grid.",
49996
- "attribute": "expanded",
49997
- "reflects": true
49998
- },
49999
- {
50000
- "kind": "field",
50001
- "name": "total",
50002
- "type": {
50003
- "text": "number"
50004
- },
50005
- "default": "0",
50006
- "description": "Total number of thumbnails in the underlying set, shown in the \"Show All (n)\" label. Set this when\nthe row only holds the first page of a larger set; otherwise the slotted thumbnails are counted.",
50007
- "attribute": "total"
50008
- },
50009
- {
50010
- "kind": "field",
50011
- "name": "showAllLabel",
50012
- "type": {
50013
- "text": "string"
50014
- },
50015
- "default": "'Show All'",
50016
- "description": "Label of the expand toggle. The count is appended in brackets.",
50017
- "attribute": "show-all-label"
50018
- },
50019
- {
50020
- "kind": "field",
50021
- "name": "showLessLabel",
50022
- "type": {
50023
- "text": "string"
50024
- },
50025
- "default": "'Show Less'",
50026
- "description": "Label of the collapse toggle.",
50027
- "attribute": "show-less-label"
50028
- },
50029
- {
50030
- "kind": "field",
50031
- "name": "hideToggle",
50032
- "type": {
50033
- "text": "boolean"
50034
- },
50035
- "default": "false",
50036
- "description": "Never render the toggle, even when the row overflows.",
50037
- "attribute": "hide-toggle"
50038
- },
50039
- {
50040
- "kind": "field",
50041
- "name": "alwaysToggle",
50042
- "type": {
50043
- "text": "boolean"
50044
- },
50045
- "default": "false",
50046
- "description": "Always render the toggle, even when every thumbnail already fits on the row.",
50047
- "attribute": "always-toggle"
50048
- },
50049
- {
50050
- "kind": "field",
50051
- "name": "selectable",
50052
- "type": {
50053
- "text": "boolean"
50054
- },
50055
- "default": "false",
50056
- "description": "Manages single selection across the slotted thumbnails.",
50057
- "attribute": "selectable",
50058
- "reflects": true
50059
- },
50060
- {
50061
- "kind": "field",
50062
- "name": "aspectRatio",
50063
- "type": {
50064
- "text": "string"
50065
- },
50066
- "default": "''",
50067
- "description": "Aspect ratio for every thumbnail in the group, as any CSS `aspect-ratio` value (e.g. `1 / 1`).\nShorthand for setting `--zn-thumbnail-aspect-ratio` on the group. A thumbnail's own\n`aspect-ratio` attribute still wins.",
50068
- "attribute": "aspect-ratio",
50069
- "reflects": true
50070
- },
50071
- {
50072
- "kind": "field",
50073
- "name": "thumbnailWidth",
50074
- "type": {
50075
- "text": "string"
50076
- },
50077
- "default": "''",
50078
- "description": "Track width of each thumbnail (e.g. `140px`). Shorthand for `--zn-thumbnail-width`.",
50079
- "attribute": "thumbnail-width",
50080
- "reflects": true
50081
- },
50082
- {
50083
- "kind": "field",
50084
- "name": "gap",
50085
- "type": {
50086
- "text": "string"
50087
- },
50088
- "default": "''",
50089
- "description": "Gap between thumbnails (e.g. `8px`). Shorthand for `--zn-thumbnail-gap`.",
50090
- "attribute": "gap",
50091
- "reflects": true
50092
- },
50093
- {
50094
- "kind": "field",
50095
- "name": "value",
50096
- "type": {
50097
- "text": "string"
50098
- },
50099
- "default": "''",
50100
- "description": "The `value` of the selected thumbnail (`selectable` groups only).",
50101
- "attribute": "value"
50102
- },
50103
- {
50104
- "kind": "field",
50105
- "name": "_overflowing",
50106
- "type": {
50107
- "text": "boolean"
50108
- },
50109
- "privacy": "private",
50110
- "default": "false"
50111
- },
50112
- {
50113
- "kind": "field",
50114
- "name": "_count",
50115
- "type": {
50116
- "text": "number"
50117
- },
50118
- "privacy": "private",
50119
- "default": "0"
50120
- },
50121
- {
50122
- "kind": "field",
50123
- "name": "_items",
50124
- "type": {
50125
- "text": "HTMLElement"
50126
- },
50127
- "privacy": "private"
50128
- },
50129
- {
50130
- "kind": "field",
50131
- "name": "_resizeObserver",
50132
- "type": {
50133
- "text": "ResizeObserver | null"
50134
- },
50135
- "privacy": "private",
50136
- "default": "null"
50137
- },
50138
- {
50139
- "kind": "method",
50140
- "name": "_observe",
50141
- "privacy": "private"
50142
- },
50143
- {
50144
- "kind": "method",
50145
- "name": "_syncCustomProperties",
50146
- "privacy": "private",
50147
- "parameters": [
50148
- {
50149
- "name": "changed",
50150
- "type": {
50151
- "text": "PropertyValues"
50152
- }
50153
- }
50154
- ],
50155
- "description": "Mirrors the shorthand attributes onto host custom properties. They go on the host rather than\nanywhere in the shadow root because the thumbnails are light-DOM children — inheriting from the\nhost is the only way the values reach them."
50156
- },
50157
- {
50158
- "kind": "method",
50159
- "name": "show",
50160
- "description": "Expands the group into the full grid."
50161
- },
50162
- {
50163
- "kind": "method",
50164
- "name": "hide",
50165
- "description": "Collapses the group back to a single row."
50329
+ "description": "Track width of a thumbnail. Defaults to 180px. Also settable with the `thumbnail-width` attribute.",
50330
+ "name": "--zn-thumbnail-width"
50166
50331
  },
50167
50332
  {
50168
- "kind": "field",
50169
- "name": "_thumbnails",
50170
- "type": {
50171
- "text": "ZnThumbnail[]"
50172
- },
50173
- "privacy": "private",
50174
- "readonly": true
50333
+ "description": "Gap between thumbnails. Also settable with the `gap` attribute.",
50334
+ "name": "--zn-thumbnail-gap"
50175
50335
  },
50176
50336
  {
50177
- "kind": "field",
50178
- "name": "_handleSlotChange",
50179
- "privacy": "private"
50337
+ "description": "Aspect ratio of every thumbnail in the group. Also settable with the `aspect-ratio` attribute. Any `zn-thumbnail` custom property set here is inherited by the slotted thumbnails.",
50338
+ "name": "--zn-thumbnail-aspect-ratio"
50339
+ }
50340
+ ],
50341
+ "cssParts": [
50342
+ {
50343
+ "description": "The component's base wrapper.",
50344
+ "name": "base"
50180
50345
  },
50181
50346
  {
50182
- "kind": "method",
50183
- "name": "_sync",
50184
- "privacy": "private"
50347
+ "description": "The header row holding the caption and toggle.",
50348
+ "name": "header"
50185
50349
  },
50186
50350
  {
50187
- "kind": "method",
50188
- "name": "_measure",
50189
- "privacy": "private"
50351
+ "description": "The heading text.",
50352
+ "name": "caption"
50190
50353
  },
50191
50354
  {
50192
- "kind": "field",
50193
- "name": "_handleSelect",
50194
- "privacy": "private"
50355
+ "description": "The show all / show less button.",
50356
+ "name": "toggle"
50195
50357
  },
50196
50358
  {
50197
- "kind": "field",
50198
- "name": "_handleToggle",
50199
- "privacy": "private"
50359
+ "description": "The scrolling row / expanded grid that holds the thumbnails.",
50360
+ "name": "items"
50200
50361
  }
50201
50362
  ],
50202
- "events": [
50363
+ "slots": [
50203
50364
  {
50204
- "description": "Emitted when the group expands into the full grid.",
50205
- "name": "zn-expand"
50365
+ "description": "One or more `zn-thumbnail` elements.",
50366
+ "name": ""
50206
50367
  },
50207
50368
  {
50208
- "description": "Emitted when the group collapses back to a single row.",
50209
- "name": "zn-collapse"
50369
+ "description": "Replaces the heading text.",
50370
+ "name": "caption"
50210
50371
  },
50211
50372
  {
50212
- "description": "Emitted when the selected thumbnail changes (`selectable` groups only).",
50213
- "name": "zn-change"
50373
+ "description": "Extra content in the header, before the toggle.",
50374
+ "name": "actions"
50214
50375
  }
50215
50376
  ],
50216
- "attributes": [
50377
+ "members": [
50217
50378
  {
50379
+ "kind": "field",
50218
50380
  "name": "caption",
50219
50381
  "type": {
50220
50382
  "text": "string"
50221
50383
  },
50222
50384
  "default": "''",
50223
50385
  "description": "The heading shown at the top left of the group.",
50224
- "fieldName": "caption"
50386
+ "attribute": "caption"
50225
50387
  },
50226
50388
  {
50389
+ "kind": "field",
50227
50390
  "name": "expanded",
50228
50391
  "type": {
50229
50392
  "text": "boolean"
50230
50393
  },
50231
50394
  "default": "false",
50232
50395
  "description": "Expands the group into the full wrapping grid.",
50233
- "fieldName": "expanded"
50396
+ "attribute": "expanded",
50397
+ "reflects": true
50234
50398
  },
50235
50399
  {
50400
+ "kind": "field",
50236
50401
  "name": "total",
50237
50402
  "type": {
50238
50403
  "text": "number"
50239
50404
  },
50240
50405
  "default": "0",
50241
50406
  "description": "Total number of thumbnails in the underlying set, shown in the \"Show All (n)\" label. Set this when\nthe row only holds the first page of a larger set; otherwise the slotted thumbnails are counted.",
50242
- "fieldName": "total"
50407
+ "attribute": "total"
50243
50408
  },
50244
50409
  {
50245
- "name": "show-all-label",
50410
+ "kind": "field",
50411
+ "name": "showAllLabel",
50246
50412
  "type": {
50247
50413
  "text": "string"
50248
50414
  },
50249
50415
  "default": "'Show All'",
50250
50416
  "description": "Label of the expand toggle. The count is appended in brackets.",
50251
- "fieldName": "showAllLabel"
50417
+ "attribute": "show-all-label"
50252
50418
  },
50253
50419
  {
50254
- "name": "show-less-label",
50420
+ "kind": "field",
50421
+ "name": "showLessLabel",
50255
50422
  "type": {
50256
50423
  "text": "string"
50257
50424
  },
50258
50425
  "default": "'Show Less'",
50259
50426
  "description": "Label of the collapse toggle.",
50260
- "fieldName": "showLessLabel"
50427
+ "attribute": "show-less-label"
50261
50428
  },
50262
50429
  {
50263
- "name": "hide-toggle",
50430
+ "kind": "field",
50431
+ "name": "hideToggle",
50264
50432
  "type": {
50265
50433
  "text": "boolean"
50266
50434
  },
50267
50435
  "default": "false",
50268
50436
  "description": "Never render the toggle, even when the row overflows.",
50269
- "fieldName": "hideToggle"
50437
+ "attribute": "hide-toggle"
50270
50438
  },
50271
50439
  {
50272
- "name": "always-toggle",
50440
+ "kind": "field",
50441
+ "name": "alwaysToggle",
50273
50442
  "type": {
50274
50443
  "text": "boolean"
50275
50444
  },
50276
50445
  "default": "false",
50277
50446
  "description": "Always render the toggle, even when every thumbnail already fits on the row.",
50278
- "fieldName": "alwaysToggle"
50447
+ "attribute": "always-toggle"
50279
50448
  },
50280
50449
  {
50450
+ "kind": "field",
50281
50451
  "name": "selectable",
50282
50452
  "type": {
50283
50453
  "text": "boolean"
50284
50454
  },
50285
50455
  "default": "false",
50286
50456
  "description": "Manages single selection across the slotted thumbnails.",
50287
- "fieldName": "selectable"
50457
+ "attribute": "selectable",
50458
+ "reflects": true
50288
50459
  },
50289
50460
  {
50290
- "name": "aspect-ratio",
50461
+ "kind": "field",
50462
+ "name": "aspectRatio",
50291
50463
  "type": {
50292
50464
  "text": "string"
50293
50465
  },
50294
50466
  "default": "''",
50295
50467
  "description": "Aspect ratio for every thumbnail in the group, as any CSS `aspect-ratio` value (e.g. `1 / 1`).\nShorthand for setting `--zn-thumbnail-aspect-ratio` on the group. A thumbnail's own\n`aspect-ratio` attribute still wins.",
50296
- "fieldName": "aspectRatio"
50468
+ "attribute": "aspect-ratio",
50469
+ "reflects": true
50297
50470
  },
50298
50471
  {
50299
- "name": "thumbnail-width",
50472
+ "kind": "field",
50473
+ "name": "thumbnailWidth",
50300
50474
  "type": {
50301
50475
  "text": "string"
50302
50476
  },
50303
50477
  "default": "''",
50304
50478
  "description": "Track width of each thumbnail (e.g. `140px`). Shorthand for `--zn-thumbnail-width`.",
50305
- "fieldName": "thumbnailWidth"
50479
+ "attribute": "thumbnail-width",
50480
+ "reflects": true
50306
50481
  },
50307
50482
  {
50483
+ "kind": "field",
50308
50484
  "name": "gap",
50309
50485
  "type": {
50310
50486
  "text": "string"
50311
50487
  },
50312
50488
  "default": "''",
50313
50489
  "description": "Gap between thumbnails (e.g. `8px`). Shorthand for `--zn-thumbnail-gap`.",
50314
- "fieldName": "gap"
50490
+ "attribute": "gap",
50491
+ "reflects": true
50315
50492
  },
50316
50493
  {
50494
+ "kind": "field",
50317
50495
  "name": "value",
50318
50496
  "type": {
50319
50497
  "text": "string"
50320
50498
  },
50321
50499
  "default": "''",
50322
50500
  "description": "The `value` of the selected thumbnail (`selectable` groups only).",
50323
- "fieldName": "value"
50324
- }
50325
- ],
50326
- "superclass": {
50327
- "name": "ZincElement",
50328
- "module": "/src/internal/zinc-element"
50329
- },
50330
- "summary": "Lays a set of `zn-thumbnail` elements out as a single scrollable row, with a\n\"Show All\" toggle that expands them into a wrapping grid.",
50331
- "tagNameWithoutPrefix": "thumbnail-group",
50332
- "tagName": "zn-thumbnail-group",
50333
- "customElement": true,
50334
- "jsDoc": "/**\n * @summary Lays a set of `zn-thumbnail` elements out as a single scrollable row, with a\n * \"Show All\" toggle that expands them into a wrapping grid.\n * @documentation https://zinc.style/components/thumbnail-group\n * @status experimental\n * @since 1.0\n *\n * @dependency zn-thumbnail\n *\n * @event zn-expand - Emitted when the group expands into the full grid.\n * @event zn-collapse - Emitted when the group collapses back to a single row.\n * @event zn-change - Emitted when the selected thumbnail changes (`selectable` groups only).\n *\n * @slot - One or more `zn-thumbnail` elements.\n * @slot caption - Replaces the heading text.\n * @slot actions - Extra content in the header, before the toggle.\n *\n * @csspart base - The component's base wrapper.\n * @csspart header - The header row holding the caption and toggle.\n * @csspart caption - The heading text.\n * @csspart toggle - The show all / show less button.\n * @csspart items - The scrolling row / expanded grid that holds the thumbnails.\n *\n * @cssproperty --zn-thumbnail-width - Track width of a thumbnail. Defaults to 180px. Also settable\n * with the `thumbnail-width` attribute.\n * @cssproperty --zn-thumbnail-gap - Gap between thumbnails. Also settable with the `gap` attribute.\n * @cssproperty --zn-thumbnail-aspect-ratio - Aspect ratio of every thumbnail in the group. Also\n * settable with the `aspect-ratio` attribute. Any `zn-thumbnail` custom property set here is\n * inherited by the slotted thumbnails.\n */",
50335
- "documentation": "https://zinc.style/components/thumbnail-group",
50336
- "status": "experimental",
50337
- "since": "1.0",
50338
- "dependencies": [
50339
- "zn-thumbnail"
50340
- ]
50341
- }
50342
- ],
50343
- "exports": [
50344
- {
50345
- "kind": "js",
50346
- "name": "default",
50347
- "declaration": {
50348
- "name": "ZnThumbnailGroup",
50349
- "module": "components/thumbnail-group/thumbnail-group.js"
50350
- }
50351
- }
50352
- ]
50353
- },
50354
- {
50355
- "kind": "javascript-module",
50356
- "path": "components/tile/tile.js",
50357
- "declarations": [
50358
- {
50359
- "kind": "class",
50360
- "description": "",
50361
- "name": "ZnTile",
50362
- "cssProperties": [
50363
- {
50364
- "description": "An example CSS custom property.",
50365
- "name": "--example"
50366
- }
50367
- ],
50368
- "cssParts": [
50369
- {
50370
- "description": "The component's base wrapper.",
50371
- "name": "base"
50372
- }
50373
- ],
50374
- "slots": [
50375
- {
50376
- "description": "The default slot.",
50377
- "name": ""
50378
- },
50379
- {
50380
- "description": "An example slot.",
50381
- "name": "example"
50382
- }
50383
- ],
50384
- "members": [
50385
- {
50386
- "kind": "field",
50387
- "name": "hasSlotController",
50388
- "privacy": "private",
50389
- "readonly": true,
50390
- "default": "new HasSlotController(this, '[default]', 'properties', 'actions', 'image')"
50391
- },
50392
- {
50393
- "kind": "field",
50394
- "name": "caption",
50395
- "type": {
50396
- "text": "string"
50397
- },
50398
- "attribute": "caption"
50501
+ "attribute": "value"
50399
50502
  },
50400
50503
  {
50401
50504
  "kind": "field",
50402
- "name": "description",
50505
+ "name": "_overflowing",
50403
50506
  "type": {
50404
- "text": "string"
50507
+ "text": "boolean"
50405
50508
  },
50406
- "attribute": "description"
50509
+ "privacy": "private",
50510
+ "default": "false"
50407
50511
  },
50408
50512
  {
50409
50513
  "kind": "field",
50410
- "name": "href",
50514
+ "name": "_count",
50411
50515
  "type": {
50412
- "text": "string"
50516
+ "text": "number"
50413
50517
  },
50414
- "attribute": "href"
50518
+ "privacy": "private",
50519
+ "default": "0"
50415
50520
  },
50416
50521
  {
50417
50522
  "kind": "field",
50418
- "name": "dataTarget",
50523
+ "name": "_items",
50419
50524
  "type": {
50420
- "text": "string"
50525
+ "text": "HTMLElement"
50421
50526
  },
50422
- "attribute": "data-target"
50527
+ "privacy": "private"
50423
50528
  },
50424
50529
  {
50425
50530
  "kind": "field",
50426
- "name": "gaid",
50531
+ "name": "_resizeObserver",
50427
50532
  "type": {
50428
- "text": "string"
50533
+ "text": "ResizeObserver | null"
50429
50534
  },
50430
- "attribute": "gaid"
50535
+ "privacy": "private",
50536
+ "default": "null"
50431
50537
  },
50432
50538
  {
50433
- "kind": "field",
50434
- "name": "dataUri",
50435
- "type": {
50436
- "text": "string"
50437
- },
50438
- "attribute": "data-uri"
50539
+ "kind": "method",
50540
+ "name": "_observe",
50541
+ "privacy": "private"
50439
50542
  },
50440
50543
  {
50441
- "kind": "field",
50442
- "name": "flush",
50443
- "type": {
50444
- "text": "boolean"
50445
- },
50446
- "attribute": "flush"
50544
+ "kind": "method",
50545
+ "name": "_syncCustomProperties",
50546
+ "privacy": "private",
50547
+ "parameters": [
50548
+ {
50549
+ "name": "changed",
50550
+ "type": {
50551
+ "text": "PropertyValues"
50552
+ }
50553
+ }
50554
+ ],
50555
+ "description": "Mirrors the shorthand attributes onto host custom properties. They go on the host rather than\nanywhere in the shadow root because the thumbnails are light-DOM children — inheriting from the\nhost is the only way the values reach them."
50447
50556
  },
50448
50557
  {
50449
- "kind": "field",
50450
- "name": "flushX",
50451
- "type": {
50452
- "text": "boolean"
50453
- },
50454
- "attribute": "flush-x"
50558
+ "kind": "method",
50559
+ "name": "show",
50560
+ "description": "Expands the group into the full grid."
50455
50561
  },
50456
50562
  {
50457
- "kind": "field",
50458
- "name": "flushY",
50459
- "type": {
50460
- "text": "boolean"
50461
- },
50462
- "attribute": "flush-y"
50563
+ "kind": "method",
50564
+ "name": "hide",
50565
+ "description": "Collapses the group back to a single row."
50463
50566
  },
50464
50567
  {
50465
50568
  "kind": "field",
50466
- "name": "inline",
50569
+ "name": "_thumbnails",
50467
50570
  "type": {
50468
- "text": "boolean"
50571
+ "text": "ZnThumbnail[]"
50469
50572
  },
50470
- "attribute": "inline"
50573
+ "privacy": "private",
50574
+ "readonly": true
50471
50575
  },
50472
50576
  {
50473
50577
  "kind": "field",
50474
- "name": "plain",
50475
- "type": {
50476
- "text": "boolean"
50477
- },
50478
- "description": "Renders the caption in the normal table-content weight instead of bold.",
50479
- "attribute": "plain"
50578
+ "name": "_handleSlotChange",
50579
+ "privacy": "private"
50480
50580
  },
50481
50581
  {
50482
- "kind": "field",
50483
- "name": "grouped",
50484
- "type": {
50485
- "text": "boolean"
50486
- },
50487
- "description": "Set by `zn-tile-group` to lay the tile out as a shared-column subgrid row.",
50488
- "attribute": "grouped",
50489
- "reflects": true
50582
+ "kind": "method",
50583
+ "name": "_sync",
50584
+ "privacy": "private"
50490
50585
  },
50491
50586
  {
50492
50587
  "kind": "method",
50493
- "name": "_isLink",
50588
+ "name": "_measure",
50494
50589
  "privacy": "private"
50495
50590
  },
50496
50591
  {
50497
- "kind": "method",
50498
- "name": "_handleActionsClick",
50499
- "privacy": "private",
50500
- "parameters": [
50501
- {
50502
- "name": "e",
50503
- "type": {
50504
- "text": "MouseEvent"
50505
- }
50506
- }
50507
- ]
50592
+ "kind": "field",
50593
+ "name": "_handleSelect",
50594
+ "privacy": "private"
50595
+ },
50596
+ {
50597
+ "kind": "field",
50598
+ "name": "_handleToggle",
50599
+ "privacy": "private"
50508
50600
  }
50509
50601
  ],
50510
50602
  "events": [
50511
50603
  {
50512
- "description": "Emitted as an example.",
50513
- "name": "zn-event-name"
50604
+ "description": "Emitted when the group expands into the full grid.",
50605
+ "name": "zn-expand"
50606
+ },
50607
+ {
50608
+ "description": "Emitted when the group collapses back to a single row.",
50609
+ "name": "zn-collapse"
50610
+ },
50611
+ {
50612
+ "description": "Emitted when the selected thumbnail changes (`selectable` groups only).",
50613
+ "name": "zn-change"
50514
50614
  }
50515
50615
  ],
50516
50616
  "attributes": [
@@ -50519,199 +50619,124 @@
50519
50619
  "type": {
50520
50620
  "text": "string"
50521
50621
  },
50622
+ "default": "''",
50623
+ "description": "The heading shown at the top left of the group.",
50522
50624
  "fieldName": "caption"
50523
50625
  },
50524
50626
  {
50525
- "name": "description",
50526
- "type": {
50527
- "text": "string"
50528
- },
50529
- "fieldName": "description"
50530
- },
50531
- {
50532
- "name": "href",
50627
+ "name": "expanded",
50533
50628
  "type": {
50534
- "text": "string"
50629
+ "text": "boolean"
50535
50630
  },
50536
- "fieldName": "href"
50631
+ "default": "false",
50632
+ "description": "Expands the group into the full wrapping grid.",
50633
+ "fieldName": "expanded"
50537
50634
  },
50538
50635
  {
50539
- "name": "data-target",
50636
+ "name": "total",
50540
50637
  "type": {
50541
- "text": "string"
50638
+ "text": "number"
50542
50639
  },
50543
- "fieldName": "dataTarget"
50640
+ "default": "0",
50641
+ "description": "Total number of thumbnails in the underlying set, shown in the \"Show All (n)\" label. Set this when\nthe row only holds the first page of a larger set; otherwise the slotted thumbnails are counted.",
50642
+ "fieldName": "total"
50544
50643
  },
50545
50644
  {
50546
- "name": "gaid",
50645
+ "name": "show-all-label",
50547
50646
  "type": {
50548
50647
  "text": "string"
50549
50648
  },
50550
- "fieldName": "gaid"
50649
+ "default": "'Show All'",
50650
+ "description": "Label of the expand toggle. The count is appended in brackets.",
50651
+ "fieldName": "showAllLabel"
50551
50652
  },
50552
50653
  {
50553
- "name": "data-uri",
50654
+ "name": "show-less-label",
50554
50655
  "type": {
50555
50656
  "text": "string"
50556
50657
  },
50557
- "fieldName": "dataUri"
50558
- },
50559
- {
50560
- "name": "flush",
50561
- "type": {
50562
- "text": "boolean"
50563
- },
50564
- "fieldName": "flush"
50658
+ "default": "'Show Less'",
50659
+ "description": "Label of the collapse toggle.",
50660
+ "fieldName": "showLessLabel"
50565
50661
  },
50566
50662
  {
50567
- "name": "flush-x",
50663
+ "name": "hide-toggle",
50568
50664
  "type": {
50569
50665
  "text": "boolean"
50570
50666
  },
50571
- "fieldName": "flushX"
50667
+ "default": "false",
50668
+ "description": "Never render the toggle, even when the row overflows.",
50669
+ "fieldName": "hideToggle"
50572
50670
  },
50573
50671
  {
50574
- "name": "flush-y",
50672
+ "name": "always-toggle",
50575
50673
  "type": {
50576
50674
  "text": "boolean"
50577
50675
  },
50578
- "fieldName": "flushY"
50676
+ "default": "false",
50677
+ "description": "Always render the toggle, even when every thumbnail already fits on the row.",
50678
+ "fieldName": "alwaysToggle"
50579
50679
  },
50580
50680
  {
50581
- "name": "inline",
50681
+ "name": "selectable",
50582
50682
  "type": {
50583
50683
  "text": "boolean"
50584
50684
  },
50585
- "fieldName": "inline"
50685
+ "default": "false",
50686
+ "description": "Manages single selection across the slotted thumbnails.",
50687
+ "fieldName": "selectable"
50586
50688
  },
50587
50689
  {
50588
- "name": "plain",
50690
+ "name": "aspect-ratio",
50589
50691
  "type": {
50590
- "text": "boolean"
50692
+ "text": "string"
50591
50693
  },
50592
- "description": "Renders the caption in the normal table-content weight instead of bold.",
50593
- "fieldName": "plain"
50694
+ "default": "''",
50695
+ "description": "Aspect ratio for every thumbnail in the group, as any CSS `aspect-ratio` value (e.g. `1 / 1`).\nShorthand for setting `--zn-thumbnail-aspect-ratio` on the group. A thumbnail's own\n`aspect-ratio` attribute still wins.",
50696
+ "fieldName": "aspectRatio"
50594
50697
  },
50595
50698
  {
50596
- "name": "grouped",
50597
- "type": {
50598
- "text": "boolean"
50599
- },
50600
- "description": "Set by `zn-tile-group` to lay the tile out as a shared-column subgrid row.",
50601
- "fieldName": "grouped"
50602
- }
50603
- ],
50604
- "superclass": {
50605
- "name": "ZincElement",
50606
- "module": "/src/internal/zinc-element"
50607
- },
50608
- "summary": "Short summary of the component's intended use.",
50609
- "tagNameWithoutPrefix": "tile",
50610
- "tagName": "zn-tile",
50611
- "customElement": true,
50612
- "jsDoc": "/**\n * @summary Short summary of the component's intended use.\n * @documentation https://zinc.style/components/tile\n * @status experimental\n * @since 1.0\n *\n * @dependency zn-example\n *\n * @event zn-event-name - Emitted as an example.\n *\n * @slot - The default slot.\n * @slot example - An example slot.\n *\n * @csspart base - The component's base wrapper.\n *\n * @cssproperty --example - An example CSS custom property.\n */",
50613
- "documentation": "https://zinc.style/components/tile",
50614
- "status": "experimental",
50615
- "since": "1.0",
50616
- "dependencies": [
50617
- "zn-example"
50618
- ]
50619
- }
50620
- ],
50621
- "exports": [
50622
- {
50623
- "kind": "js",
50624
- "name": "default",
50625
- "declaration": {
50626
- "name": "ZnTile",
50627
- "module": "components/tile/tile.js"
50628
- }
50629
- }
50630
- ]
50631
- },
50632
- {
50633
- "kind": "javascript-module",
50634
- "path": "components/tile-group/tile-group.js",
50635
- "declarations": [
50636
- {
50637
- "kind": "class",
50638
- "description": "",
50639
- "name": "ZnTileGroup",
50640
- "cssProperties": [
50641
- {
50642
- "description": "The number of value/action columns (set automatically).",
50643
- "name": "--zn-tile-cols"
50644
- }
50645
- ],
50646
- "cssParts": [
50647
- {
50648
- "description": "The component's base wrapper (the grid container).",
50649
- "name": "base"
50650
- }
50651
- ],
50652
- "slots": [
50653
- {
50654
- "description": "One or more `zn-tile` elements.",
50655
- "name": ""
50656
- }
50657
- ],
50658
- "members": [
50659
- {
50660
- "kind": "field",
50661
- "name": "divide",
50699
+ "name": "thumbnail-width",
50662
50700
  "type": {
50663
- "text": "boolean"
50701
+ "text": "string"
50664
50702
  },
50665
- "default": "false",
50666
- "description": "Draws a dividing border between rows.",
50667
- "attribute": "divide",
50668
- "reflects": true
50703
+ "default": "''",
50704
+ "description": "Track width of each thumbnail (e.g. `140px`). Shorthand for `--zn-thumbnail-width`.",
50705
+ "fieldName": "thumbnailWidth"
50669
50706
  },
50670
50707
  {
50671
- "kind": "field",
50672
- "name": "_mutationObserver",
50708
+ "name": "gap",
50673
50709
  "type": {
50674
- "text": "MutationObserver | null"
50710
+ "text": "string"
50675
50711
  },
50676
- "privacy": "private",
50677
- "default": "null"
50678
- },
50679
- {
50680
- "kind": "field",
50681
- "name": "_handleSlotChange",
50682
- "privacy": "private"
50712
+ "default": "''",
50713
+ "description": "Gap between thumbnails (e.g. `8px`). Shorthand for `--zn-thumbnail-gap`.",
50714
+ "fieldName": "gap"
50683
50715
  },
50684
50716
  {
50685
- "kind": "method",
50686
- "name": "_sync",
50687
- "privacy": "private"
50688
- }
50689
- ],
50690
- "attributes": [
50691
- {
50692
- "name": "divide",
50717
+ "name": "value",
50693
50718
  "type": {
50694
- "text": "boolean"
50719
+ "text": "string"
50695
50720
  },
50696
- "default": "false",
50697
- "description": "Draws a dividing border between rows.",
50698
- "fieldName": "divide"
50721
+ "default": "''",
50722
+ "description": "The `value` of the selected thumbnail (`selectable` groups only).",
50723
+ "fieldName": "value"
50699
50724
  }
50700
50725
  ],
50701
50726
  "superclass": {
50702
50727
  "name": "ZincElement",
50703
50728
  "module": "/src/internal/zinc-element"
50704
50729
  },
50705
- "summary": "Aligns a list of `zn-tile` rows into shared, content-driven columns so values\nand actions line up across every row, with optional dividing borders.",
50706
- "tagNameWithoutPrefix": "tile-group",
50707
- "tagName": "zn-tile-group",
50730
+ "summary": "Lays a set of `zn-thumbnail` elements out as a single scrollable row, with a\n\"Show All\" toggle that expands them into a wrapping grid.",
50731
+ "tagNameWithoutPrefix": "thumbnail-group",
50732
+ "tagName": "zn-thumbnail-group",
50708
50733
  "customElement": true,
50709
- "jsDoc": "/**\n * @summary Aligns a list of `zn-tile` rows into shared, content-driven columns so values\n * and actions line up across every row, with optional dividing borders.\n * @documentation https://zinc.style/components/tile-group\n * @status experimental\n * @since 1.0\n *\n * @dependency zn-tile\n *\n * @slot - One or more `zn-tile` elements.\n *\n * @csspart base - The component's base wrapper (the grid container).\n *\n * @cssproperty --zn-tile-cols - The number of value/action columns (set automatically).\n */",
50710
- "documentation": "https://zinc.style/components/tile-group",
50734
+ "jsDoc": "/**\n * @summary Lays a set of `zn-thumbnail` elements out as a single scrollable row, with a\n * \"Show All\" toggle that expands them into a wrapping grid.\n * @documentation https://zinc.style/components/thumbnail-group\n * @status experimental\n * @since 1.0\n *\n * @dependency zn-thumbnail\n *\n * @event zn-expand - Emitted when the group expands into the full grid.\n * @event zn-collapse - Emitted when the group collapses back to a single row.\n * @event zn-change - Emitted when the selected thumbnail changes (`selectable` groups only).\n *\n * @slot - One or more `zn-thumbnail` elements.\n * @slot caption - Replaces the heading text.\n * @slot actions - Extra content in the header, before the toggle.\n *\n * @csspart base - The component's base wrapper.\n * @csspart header - The header row holding the caption and toggle.\n * @csspart caption - The heading text.\n * @csspart toggle - The show all / show less button.\n * @csspart items - The scrolling row / expanded grid that holds the thumbnails.\n *\n * @cssproperty --zn-thumbnail-width - Track width of a thumbnail. Defaults to 180px. Also settable\n * with the `thumbnail-width` attribute.\n * @cssproperty --zn-thumbnail-gap - Gap between thumbnails. Also settable with the `gap` attribute.\n * @cssproperty --zn-thumbnail-aspect-ratio - Aspect ratio of every thumbnail in the group. Also\n * settable with the `aspect-ratio` attribute. Any `zn-thumbnail` custom property set here is\n * inherited by the slotted thumbnails.\n */",
50735
+ "documentation": "https://zinc.style/components/thumbnail-group",
50711
50736
  "status": "experimental",
50712
50737
  "since": "1.0",
50713
50738
  "dependencies": [
50714
- "zn-tile"
50739
+ "zn-thumbnail"
50715
50740
  ]
50716
50741
  }
50717
50742
  ],
@@ -50720,8 +50745,8 @@
50720
50745
  "kind": "js",
50721
50746
  "name": "default",
50722
50747
  "declaration": {
50723
- "name": "ZnTileGroup",
50724
- "module": "components/tile-group/tile-group.js"
50748
+ "name": "ZnThumbnailGroup",
50749
+ "module": "components/thumbnail-group/thumbnail-group.js"
50725
50750
  }
50726
50751
  }
50727
50752
  ]
@@ -53607,7 +53632,7 @@
53607
53632
  "package": {
53608
53633
  "name": "@kubex/zinc",
53609
53634
  "description": "A collection of web components for building web applications based off of @shoelace-style/Shoelace",
53610
- "version": "1.1.159",
53635
+ "version": "1.1.160",
53611
53636
  "author": "",
53612
53637
  "license": "MIT"
53613
53638
  }