@vielzeug/codex 26.10.0 → 26.10.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/data/catalog.json +53 -59
- package/data/llms-full.txt +1322 -1069
- package/data/llms.txt +6 -6
- package/data/manifest.json +1 -1
- package/data/packages/arsenal.json +13 -13
- package/data/packages/assay.json +4 -4
- package/data/packages/clockwork.json +4 -4
- package/data/packages/codex.json +3 -3
- package/data/packages/coins.json +4 -4
- package/data/packages/conduit.json +4 -4
- package/data/packages/courier.json +4 -4
- package/data/packages/dnd.json +10 -10
- package/data/packages/familiar.json +4 -4
- package/data/packages/flux.json +4 -4
- package/data/packages/focus.json +4 -4
- package/data/packages/forge.json +4 -4
- package/data/packages/gesture.json +4 -4
- package/data/packages/herald.json +12 -12
- package/data/packages/illusionist.json +5 -5
- package/data/packages/keymap.json +9 -9
- package/data/packages/ledger.json +4 -4
- package/data/packages/lingua.json +4 -4
- package/data/packages/mesh.json +5 -5
- package/data/packages/necromancer.json +5 -5
- package/data/packages/orbit.json +7 -7
- package/data/packages/ore.json +5 -5
- package/data/packages/postmaster.json +4 -4
- package/data/packages/prism.json +50 -42
- package/data/packages/pulse.json +8 -8
- package/data/packages/refine.json +3 -3
- package/data/packages/ripple.json +4 -4
- package/data/packages/rune.json +9 -9
- package/data/packages/sandbox.json +4 -4
- package/data/packages/scout.json +7 -7
- package/data/packages/scroll.json +10 -10
- package/data/packages/sentinel.json +4 -4
- package/data/packages/sigil.json +6 -6
- package/data/packages/sourcerer.json +4 -4
- package/data/packages/spell.json +9 -9
- package/data/packages/tandem.json +5 -5
- package/data/packages/tavern.json +12 -12
- package/data/packages/tempo.json +4 -4
- package/data/packages/vault.json +13 -13
- package/data/packages/ward.json +9 -9
- package/data/packages/wayfinder.json +17 -17
- package/data/refine.json +259 -87
- package/data/search.json +246 -246
- package/dist/http.js +2 -2
- package/dist/http.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/dist/refine.d.ts +1 -1
- package/dist/refine.js +1 -1
- package/dist/server.d.ts +1 -1
- package/dist/server.js +1 -1
- package/dist/tools/refine.js +1 -1
- package/package.json +2 -2
- package/skills/vielzeug/SKILL.md +57 -57
package/data/refine.json
CHANGED
|
@@ -132,7 +132,7 @@
|
|
|
132
132
|
}
|
|
133
133
|
}
|
|
134
134
|
],
|
|
135
|
-
"description": "Grows a `<textarea>`'s height to fit its content, shared by every component that offers\nauto-resize (`ore-textarea`, `ore-message-composer`) instead of each reimplementing it.\n\nOwns only height
|
|
135
|
+
"description": "Grows a `<textarea>`'s height to fit its content, shared by every component that offers\nauto-resize (`ore-textarea`, `ore-message-composer`) instead of each reimplementing it.\n\nOwns only height: manual-resize cursor/direction is a per-component styling concern, not\nshared behavior, so it stays local to whichever component renders a resize handle."
|
|
136
136
|
},
|
|
137
137
|
{
|
|
138
138
|
"kind": "function",
|
|
@@ -184,7 +184,7 @@
|
|
|
184
184
|
}
|
|
185
185
|
}
|
|
186
186
|
],
|
|
187
|
-
"description": "Send-gesture logic for a message/comment composer
|
|
187
|
+
"description": "Send-gesture logic for a message/comment composer: decides *when* a send is allowed\nand *whether* a given keydown counts as one. Owns no DOM, value state, or event dispatch;\nthe component wires `handleKeydown`/`send` and decides what a send actually does."
|
|
188
188
|
},
|
|
189
189
|
{
|
|
190
190
|
"kind": "function",
|
|
@@ -202,7 +202,7 @@
|
|
|
202
202
|
}
|
|
203
203
|
}
|
|
204
204
|
],
|
|
205
|
-
"description": "Parses an ISO 8601 date string (`yyyy-MM-dd`) into a `Temporal.PlainDate`.\nReturns `null` for any invalid / empty input
|
|
205
|
+
"description": "Parses an ISO 8601 date string (`yyyy-MM-dd`) into a `Temporal.PlainDate`.\nReturns `null` for any invalid / empty input: never throws."
|
|
206
206
|
},
|
|
207
207
|
{
|
|
208
208
|
"kind": "function",
|
|
@@ -262,7 +262,7 @@
|
|
|
262
262
|
}
|
|
263
263
|
}
|
|
264
264
|
],
|
|
265
|
-
"description": "Pure, framework-agnostic date-picker state machine backed by `Temporal.PlainDate`.\n\nAll state is held in plain mutable variables
|
|
265
|
+
"description": "Pure, framework-agnostic date-picker state machine backed by `Temporal.PlainDate`.\n\nAll state is held in plain mutable variables: suitable for wrapping in any\nreactive layer (ore `signal`, Vue ref, etc.). The factory returns a stable\nhandle object; callers are responsible for reactivity.\n\nOptions with getter-based live bindings (e.g. `get min() { ... }`) are read\non every call so the control always reflects the latest reactive state."
|
|
266
266
|
},
|
|
267
267
|
{
|
|
268
268
|
"kind": "function",
|
|
@@ -298,7 +298,7 @@
|
|
|
298
298
|
}
|
|
299
299
|
}
|
|
300
300
|
],
|
|
301
|
-
"description": "Roving-arrow keyboard navigation for a calendar grid, implementing the ARIA `grid` cell pattern:\nArrow keys move by one cell / one row (`columns` wide), Home/End jump to the row's first/last\ncell, and Enter/Space activate the focused cell. Every calendar grid
|
|
301
|
+
"description": "Roving-arrow keyboard navigation for a calendar grid, implementing the ARIA `grid` cell pattern:\nArrow keys move by one cell / one row (`columns` wide), Home/End jump to the row's first/last\ncell, and Enter/Space activate the focused cell. Every calendar grid: days (7 columns) and\nmonths/years (4 columns): carries the base `.cal-grid` class, so `closest('.cal-grid')` scopes\nthe movement to the grid the event fired in regardless of view.\n\n`onSelect` receives the activated cell element so the day view can read its `data-iso` while the\nmonth/year views ignore the argument and use their own closure value."
|
|
302
302
|
},
|
|
303
303
|
{
|
|
304
304
|
"kind": "function",
|
|
@@ -316,7 +316,7 @@
|
|
|
316
316
|
}
|
|
317
317
|
}
|
|
318
318
|
],
|
|
319
|
-
"description": "Resolves the effective text direction for an element.\n\nThe closest ancestor with an explicit `dir=\"ltr\"` or `dir=\"rtl\"` attribute wins
|
|
319
|
+
"description": "Resolves the effective text direction for an element.\n\nThe closest ancestor with an explicit `dir=\"ltr\"` or `dir=\"rtl\"` attribute wins: this\nsupports locally-scoped RTL sections (e.g. a single `dir=\"rtl\"` panel inside an otherwise\nLTR page). When no explicit `dir` attribute is found up the tree, falls back to the\ncomputed `direction` CSS property (e.g. set via a `direction: rtl` style rule with no\n`dir` attribute). Defaults to `'ltr'` when `el` is `null`."
|
|
320
320
|
},
|
|
321
321
|
{
|
|
322
322
|
"kind": "function",
|
|
@@ -351,7 +351,7 @@
|
|
|
351
351
|
}
|
|
352
352
|
}
|
|
353
353
|
],
|
|
354
|
-
"description": "Creates a reactive counter state signal for text fields with `maxLength`.\nOnly call this when `maxLength` may be set
|
|
354
|
+
"description": "Creates a reactive counter state signal for text fields with `maxLength`.\nOnly call this when `maxLength` may be set: the state is genuinely opt-in."
|
|
355
355
|
},
|
|
356
356
|
{
|
|
357
357
|
"kind": "function",
|
|
@@ -373,7 +373,7 @@
|
|
|
373
373
|
"default": "'counter'"
|
|
374
374
|
}
|
|
375
375
|
],
|
|
376
|
-
"description": "The single implementation of \"which modifier class does this counter state map to\"
|
|
376
|
+
"description": "The single implementation of \"which modifier class does this counter state map to\" :\nevery field with a character counter (`ore-input`, `ore-textarea`, `ore-message-composer`)\nrenders the identical near-limit/at-limit styling, so this is the one place that decides it."
|
|
377
377
|
},
|
|
378
378
|
{
|
|
379
379
|
"kind": "function",
|
|
@@ -469,7 +469,7 @@
|
|
|
469
469
|
}
|
|
470
470
|
}
|
|
471
471
|
],
|
|
472
|
-
"description": "Register icons (or override existing ones) by name. Keys may be kebab-case or\nPascalCase
|
|
472
|
+
"description": "Register icons (or override existing ones) by name. Keys may be kebab-case or\nPascalCase: both resolve."
|
|
473
473
|
},
|
|
474
474
|
{
|
|
475
475
|
"kind": "function",
|
|
@@ -610,7 +610,7 @@
|
|
|
610
610
|
}
|
|
611
611
|
}
|
|
612
612
|
],
|
|
613
|
-
"description": "Coerces `value` via `Number()` and returns it when finite, `undefined` otherwise.\n\nCaveat: `null` and `''` both coerce to `0` in JavaScript (`Number(null) === 0`,\n`Number('') === 0`) and are therefore returned as the finite number `0`, not\n`undefined
|
|
613
|
+
"description": "Coerces `value` via `Number()` and returns it when finite, `undefined` otherwise.\n\nCaveat: `null` and `''` both coerce to `0` in JavaScript (`Number(null) === 0`,\n`Number('') === 0`) and are therefore returned as the finite number `0`, not\n`undefined`: this function does not treat \"absent\" values specially. Only\ngenuinely non-numeric input (`undefined`, `NaN`, non-numeric strings) yields\n`undefined`. Callers that mean \"no bound set\" should pass `undefined`\nexplicitly rather than `null` or `''`."
|
|
614
614
|
},
|
|
615
615
|
{
|
|
616
616
|
"kind": "function",
|
|
@@ -758,7 +758,7 @@
|
|
|
758
758
|
}
|
|
759
759
|
}
|
|
760
760
|
],
|
|
761
|
-
"description": "Parses a boolean HTML attribute value into `true | false | undefined`, where\n`undefined` means \"attribute absent\"
|
|
761
|
+
"description": "Parses a boolean HTML attribute value into `true | false | undefined`, where\n`undefined` means \"attribute absent\": the signal controlled components (`open`)\nuse to distinguish uncontrolled from controlled mode.\n\nThe grammar is the standard attribute one: presence with no value (`open`) or\nthe literal `\"true\"` is true; anything else, including `\"false\"`, is false.\nEvery controlled overlay (dialog, drawer, menu, popover, tooltip,\ncommand-palette) parses its `open` prop with this exact contract."
|
|
762
762
|
},
|
|
763
763
|
{
|
|
764
764
|
"kind": "function",
|
|
@@ -800,7 +800,7 @@
|
|
|
800
800
|
}
|
|
801
801
|
}
|
|
802
802
|
],
|
|
803
|
-
"description": "Forwards a mounted element to a JS-only `ref` callback prop, and keeps forwarding to a\n*new* callback if the prop is set again after mount (e.g. a parent sets it via a ref\ncallback after render, rather than at initial mount). Every text-entry-style component\nwith a `ref` escape-hatch prop (`ore-input`, `ore-textarea`, `ore-message-composer`,\n`ore-file-input`) wires this identically
|
|
803
|
+
"description": "Forwards a mounted element to a JS-only `ref` callback prop, and keeps forwarding to a\n*new* callback if the prop is set again after mount (e.g. a parent sets it via a ref\ncallback after render, rather than at initial mount). Every text-entry-style component\nwith a `ref` escape-hatch prop (`ore-input`, `ore-textarea`, `ore-message-composer`,\n`ore-file-input`) wires this identically: call it once from inside `onElement()`, alongside\nwhatever else that element needs wired."
|
|
804
804
|
},
|
|
805
805
|
{
|
|
806
806
|
"kind": "function",
|
|
@@ -1034,19 +1034,19 @@
|
|
|
1034
1034
|
"kind": "variable",
|
|
1035
1035
|
"name": "MESSAGE_COMPOSER_SIZE_PRESET",
|
|
1036
1036
|
"default": "{ lg: { '--_padding': 'var(--size-4)', fontSize: 'var(--text-base)', gap: 'var(--size-2-5)', }, md: { '--_padding': 'var(--size-3)', fontSize: 'var(--text-sm)', gap: 'var(--size-2)', }, sm: { '--_padding': 'var(--size-2)', fontSize: 'var(--text-xs)', gap: 'var(--size-1-5)', }, } satisfies FullSizePreset",
|
|
1037
|
-
"description": "Size preset for the message composer card. Padding is symmetric (unlike\n`TEXTAREA_SIZE_PRESET`'s field-shaped padding) since this scales a card that wraps a field\n*and* a toolbar row, not a bare field
|
|
1037
|
+
"description": "Size preset for the message composer card. Padding is symmetric (unlike\n`TEXTAREA_SIZE_PRESET`'s field-shaped padding) since this scales a card that wraps a field\n*and* a toolbar row, not a bare field: `md`'s padding matches the value the card used before\n`size` scaled anything, so the default look is unchanged."
|
|
1038
1038
|
},
|
|
1039
1039
|
{
|
|
1040
1040
|
"kind": "variable",
|
|
1041
1041
|
"name": "MENU_SIZE_PRESET",
|
|
1042
1042
|
"default": "{ lg: { '--_item-padding': 'var(--size-2) var(--size-3-5)', '--_panel-padding': 'var(--size-1-5)', '--_separator-margin': 'var(--size-1-5)', fontSize: 'var(--text-base)', gap: 'var(--size-2-5)', }, md: { '--_item-padding': 'var(--size-1-5) var(--size-3)', '--_panel-padding': 'var(--size-1)', '--_separator-margin': 'var(--size-1)', fontSize: 'var(--text-sm)', gap: 'var(--size-2)', }, sm: { '--_item-padding': 'var(--size-1) var(--size-2-5)', '--_panel-padding': 'var(--size-0-5)', '--_separator-margin': 'var(--size-0-5)', fontSize: 'var(--text-xs)', gap: 'var(--size-1-5)', }, } satisfies FullSizePreset",
|
|
1043
|
-
"description": "Size preset for `ore-menu`'s floating panel, `ore-menu-item`'s row, and `ore-menu-separator`'s\nmargin. `--_panel-padding`, `--_item-padding`, and `--_separator-margin` are custom pass-through\nkeys (not one of `SizeConfig`'s named slots) since the panel, its items, and its separators each\nneed independently-scaling spacing; `md`'s values match what `menu.css`/`menu-item.css`/\n`menu-separator.css` hardcoded before `size` was wired up, so the default look is unchanged.\n`--_font-size`/`--_gap` are inherited by `ore-menu-item` from `ore-menu`'s own host
|
|
1043
|
+
"description": "Size preset for `ore-menu`'s floating panel, `ore-menu-item`'s row, and `ore-menu-separator`'s\nmargin. `--_panel-padding`, `--_item-padding`, and `--_separator-margin` are custom pass-through\nkeys (not one of `SizeConfig`'s named slots) since the panel, its items, and its separators each\nneed independently-scaling spacing; `md`'s values match what `menu.css`/`menu-item.css`/\n`menu-separator.css` hardcoded before `size` was wired up, so the default look is unchanged.\n`--_font-size`/`--_gap` are inherited by `ore-menu-item` from `ore-menu`'s own host: custom\nproperties cascade down through light-DOM children the same way they cascade into a shadow root."
|
|
1044
1044
|
},
|
|
1045
1045
|
{
|
|
1046
1046
|
"kind": "variable",
|
|
1047
1047
|
"name": "LIST_SIZE_PRESET",
|
|
1048
1048
|
"default": "{ lg: { '--_min-height': 'var(--size-14)', '--_min-height-two-line': 'calc(var(--size-16) + var(--size-2))', '--_padding-inline-end': 'var(--size-6)', fontSize: 'var(--text-base)', gap: 'var(--size-4)', padding: 'var(--size-3) var(--size-4)', }, md: { '--_min-height': 'var(--size-14)', '--_min-height-two-line': 'calc(var(--size-16) + var(--size-2))', '--_padding-inline-end': 'var(--size-6)', fontSize: 'var(--text-sm)', gap: 'var(--size-4)', padding: 'var(--size-2-5) var(--size-4)', }, sm: { '--_min-height': 'var(--size-12)', '--_min-height-two-line': 'var(--size-16)', '--_padding-inline-end': 'var(--size-4)', fontSize: 'var(--text-xs)', gap: 'var(--size-2)', padding: 'var(--size-1-5) var(--size-2)', }, } satisfies FullSizePreset",
|
|
1049
|
-
"description": "Size preset for `ore-list`'s own host. `ore-list-item` has no `sizeVariantMixin` call of its\nown
|
|
1049
|
+
"description": "Size preset for `ore-list`'s own host. `ore-list-item` has no `sizeVariantMixin` call of its\nown: it reads `--_gap`/`--_padding`/`--_padding-inline-end`/`--_font-size`/`--_min-height`/\n`--_min-height-two-line` inherited straight from its parent `ore-list`'s shadow host (custom\nproperties cascade through light-DOM children the same way `MENU_SIZE_PRESET` cascades from\n`ore-menu` into `ore-menu-item`), with fallback defaults for standalone use outside an\n`ore-list`.\n\nFollows Material 3's list-item spacing at `md`/`lg`: 16dp between leading/content/trailing\n(`gap`), 16dp inline-start (`padding`), 24dp inline-end (`--_padding-inline-end`: the trailing\nedge sits 8dp further out than the other three sides in the M3 spec), 56dp one-line / 72dp\ntwo-line row height (`--_min-height`/`--_min-height-two-line`, applied in `list-item.css`).\n`sm` keeps the same asymmetry and the M3/WCAG 48dp touch-target floor proportionally, for a\ndenser list that still reads as \"M3-like\" rather than hitting the exact dp values M3 doesn't\nitself define an alternate density for."
|
|
1050
1050
|
},
|
|
1051
1051
|
{
|
|
1052
1052
|
"kind": "variable",
|
|
@@ -1749,14 +1749,14 @@
|
|
|
1749
1749
|
"text": "'ore-chat-message'"
|
|
1750
1750
|
},
|
|
1751
1751
|
"default": "'ore-chat-message'",
|
|
1752
|
-
"description": "A single message bubble for chat/conversation UIs
|
|
1752
|
+
"description": "A single message bubble for chat/conversation UIs: sender-aware alignment, an optional\navatar slot, delivery status (sending/sent/error with retry), and a streaming cursor for\nassistant messages still generating. Content is provided via the default slot, so any\nmarkdown-to-HTML rendering stays the consumer's choice.\n\nThe default slot's leading/trailing whitespace-only text nodes are trimmed in place once\nper slot assignment (mount, and again on `slotchange`): pretty-printed HTML's\nindentation would otherwise render as blank lines, since the bubble preserves line breaks\n(`white-space: pre-wrap`) for genuine multi-paragraph replies. This mutates those specific\ntext nodes' `textContent` directly; it never touches nodes appended afterward (e.g. by\n`el.textContent += token` while streaming), only the ones present at assignment time."
|
|
1753
1753
|
},
|
|
1754
1754
|
{
|
|
1755
1755
|
"kind": "class",
|
|
1756
1756
|
"name": "OreChatMessageElement",
|
|
1757
1757
|
"tagName": "ore-chat-message",
|
|
1758
1758
|
"customElement": true,
|
|
1759
|
-
"description": "A single message bubble for chat/conversation UIs
|
|
1759
|
+
"description": "A single message bubble for chat/conversation UIs: sender-aware alignment, an optional\navatar slot, delivery status (sending/sent/error with retry), and a streaming cursor for\nassistant messages still generating. Content is provided via the default slot, so any\nmarkdown-to-HTML rendering stays the consumer's choice.\nThe default slot's leading/trailing whitespace-only text nodes are trimmed in place once\nper slot assignment (mount, and again on `slotchange`): pretty-printed HTML's\nindentation would otherwise render as blank lines, since the bubble preserves line breaks\n(`white-space: pre-wrap`) for genuine multi-paragraph replies. This mutates those specific\ntext nodes' `textContent` directly; it never touches nodes appended afterward (e.g. by\n`el.textContent += token` while streaming), only the ones present at assignment time.",
|
|
1760
1760
|
"summary": "",
|
|
1761
1761
|
"attributes": [
|
|
1762
1762
|
{
|
|
@@ -1919,14 +1919,14 @@
|
|
|
1919
1919
|
"text": "'ore-chat-panel'"
|
|
1920
1920
|
},
|
|
1921
1921
|
"default": "'ore-chat-panel'",
|
|
1922
|
-
"description": "A self-contained assistant chat surface
|
|
1922
|
+
"description": "A self-contained assistant chat surface: the fixed corner window a demo or support\nflow needs: header with title, status, Start over and close; a live-region message\ntranscript built from `ore-chat-message`; suggested questions while the transcript\nholds only the greeting; and an `ore-message-composer` footer.\n\nThe panel owns presentation and interaction only. Reply generation, persistence, and\naction semantics stay with the consumer: listen for `send`, append the assistant reply\nto `messages`, and reassign the array; handle `action` for whatever a message's action\npayload means in your app."
|
|
1923
1923
|
},
|
|
1924
1924
|
{
|
|
1925
1925
|
"kind": "class",
|
|
1926
1926
|
"name": "OreChatPanelElement",
|
|
1927
1927
|
"tagName": "ore-chat-panel",
|
|
1928
1928
|
"customElement": true,
|
|
1929
|
-
"description": "A self-contained assistant chat surface
|
|
1929
|
+
"description": "A self-contained assistant chat surface: the fixed corner window a demo or support\nflow needs: header with title, status, Start over and close; a live-region message\ntranscript built from `ore-chat-message`; suggested questions while the transcript\nholds only the greeting; and an `ore-message-composer` footer.\nThe panel owns presentation and interaction only. Reply generation, persistence, and\naction semantics stay with the consumer: listen for `send`, append the assistant reply\nto `messages`, and reassign the array; handle `action` for whatever a message's action\npayload means in your app.",
|
|
1930
1930
|
"summary": "",
|
|
1931
1931
|
"attributes": [
|
|
1932
1932
|
{
|
|
@@ -2052,14 +2052,14 @@
|
|
|
2052
2052
|
"text": "'ore-code-window'"
|
|
2053
2053
|
},
|
|
2054
2054
|
"default": "'ore-code-window'",
|
|
2055
|
-
"description": "A styled window chrome for code blocks and AI/MCP conversation flows.\n\nTwo variants:\n- `variant=\"code\"` (default)
|
|
2055
|
+
"description": "A styled window chrome for code blocks and AI/MCP conversation flows.\n\nTwo variants:\n- `variant=\"code\"` (default): language badge + optional filename header.\n- `variant=\"chat\"`: traffic-light dots + title header."
|
|
2056
2056
|
},
|
|
2057
2057
|
{
|
|
2058
2058
|
"kind": "class",
|
|
2059
2059
|
"name": "OreCodeWindowElement",
|
|
2060
2060
|
"tagName": "ore-code-window",
|
|
2061
2061
|
"customElement": true,
|
|
2062
|
-
"description": "A styled window chrome for code blocks and AI/MCP conversation flows.\nTwo variants:\n- `variant=\"code\"` (default)
|
|
2062
|
+
"description": "A styled window chrome for code blocks and AI/MCP conversation flows.\nTwo variants:\n- `variant=\"code\"` (default): language badge + optional filename header.\n- `variant=\"chat\"`: traffic-light dots + title header.",
|
|
2063
2063
|
"summary": "",
|
|
2064
2064
|
"attributes": [
|
|
2065
2065
|
{
|
|
@@ -2419,7 +2419,7 @@
|
|
|
2419
2419
|
}
|
|
2420
2420
|
}
|
|
2421
2421
|
],
|
|
2422
|
-
"description": "The swipe-reveal-confirm gesture behind `ore-list-item`'s `actions-left`/`actions-right` slots\n
|
|
2422
|
+
"description": "The swipe-reveal-confirm gesture behind `ore-list-item`'s `actions-left`/`actions-right` slots\n: isolated here since it's the one genuinely tricky part of the component (three distance\nthresholds, inline style/attribute choreography during an active drag). Deliberately *not* a\nshared primitive: `createPanGesture` itself already is one (shared with `ore-toast`),\nbut this two-stage reveal/confirm layer on top of it has exactly one consumer today :\ngeneralizing it further would be speculative, not reusable.\n\nOnly sets/clears the `revealed`/`data-dragging`/`data-confirming` attributes and `--_swipe-x`\nstyle: it does not itself emit `reveal`/`conceal`. `ore-list-item` already watches `revealed`\nfor transitions (to cover *both* this gesture and a directly-set attribute uniformly), so this\nmodule setting the attribute is enough to drive both that watcher and `list.css`'s\n`[revealed]` styling."
|
|
2423
2423
|
},
|
|
2424
2424
|
{
|
|
2425
2425
|
"kind": "variable",
|
|
@@ -2428,14 +2428,14 @@
|
|
|
2428
2428
|
"text": "'ore-list-item'"
|
|
2429
2429
|
},
|
|
2430
2430
|
"default": "'ore-list-item'",
|
|
2431
|
-
"description": "A single row inside `ore-list`. Renders `leading`/default (title)/`description`/`trailing`\ncontent plus two off-canvas action panels (`actions-left`, `actions-right`) that a horizontal\npointer/touch swipe reveals
|
|
2431
|
+
"description": "A single row inside `ore-list`. Renders `leading`/default (title)/`description`/`trailing`\ncontent plus two off-canvas action panels (`actions-left`, `actions-right`) that a horizontal\npointer/touch swipe reveals: useful for mobile-style row actions (archive, delete, …). An\naction panel only opens if it actually has slotted content; swiping the other direction is a\nno-op. Revealed actions stay reachable from the keyboard (Tab focus on a slotted action button\nreveals its panel via `:focus-within`, independent of any gesture).\n\nSwiping past the reveal distance snaps the panel fully open on release; swiping further still :\npast the full-swipe-through distance: auto-confirms that side's action immediately (fires\n`confirm` and clicks the slot's first element), the same \"swipe all the way\" shortcut as iOS\nMail's delete gesture.\n\nClosing a revealed panel is deliberately one-directional: tap/click the row itself, tap outside\nthe item, or open a different item's panel. Reverse-swiping an already-open item is not\nsupported: see `ore-list`'s docs for the reasoning.\n\nOn hover-capable fine pointers, a hovered row peeks a few pixels of its first action panel\n(`--list-item-peek`, a fraction of the panel width) so the swipe affordance is discoverable\nwithout a gesture; touch discovers the swipe natively."
|
|
2432
2432
|
},
|
|
2433
2433
|
{
|
|
2434
2434
|
"kind": "class",
|
|
2435
2435
|
"name": "OreListItemElement",
|
|
2436
2436
|
"tagName": "ore-list-item",
|
|
2437
2437
|
"customElement": true,
|
|
2438
|
-
"description": "A single row inside `ore-list`. Renders `leading`/default (title)/`description`/`trailing`\ncontent plus two off-canvas action panels (`actions-left`, `actions-right`) that a horizontal\npointer/touch swipe reveals
|
|
2438
|
+
"description": "A single row inside `ore-list`. Renders `leading`/default (title)/`description`/`trailing`\ncontent plus two off-canvas action panels (`actions-left`, `actions-right`) that a horizontal\npointer/touch swipe reveals: useful for mobile-style row actions (archive, delete, …). An\naction panel only opens if it actually has slotted content; swiping the other direction is a\nno-op. Revealed actions stay reachable from the keyboard (Tab focus on a slotted action button\nreveals its panel via `:focus-within`, independent of any gesture).\nSwiping past the reveal distance snaps the panel fully open on release; swiping further still :\npast the full-swipe-through distance: auto-confirms that side's action immediately (fires\n`confirm` and clicks the slot's first element), the same \"swipe all the way\" shortcut as iOS\nMail's delete gesture.\nClosing a revealed panel is deliberately one-directional: tap/click the row itself, tap outside\nthe item, or open a different item's panel. Reverse-swiping an already-open item is not\nsupported: see `ore-list`'s docs for the reasoning.\nOn hover-capable fine pointers, a hovered row peeks a few pixels of its first action panel\n(`--list-item-peek`, a fraction of the panel width) so the swipe affordance is discoverable\nwithout a gesture; touch discovers the swipe natively.",
|
|
2439
2439
|
"summary": "",
|
|
2440
2440
|
"attributes": [
|
|
2441
2441
|
{
|
|
@@ -2512,7 +2512,7 @@
|
|
|
2512
2512
|
},
|
|
2513
2513
|
{
|
|
2514
2514
|
"name": "confirm",
|
|
2515
|
-
"description": "Swiped all the way through
|
|
2515
|
+
"description": "Swiped all the way through: fires before the slotted action's own click. detail: { item: HTMLElement, side: 'left' | 'right' }",
|
|
2516
2516
|
"type": {
|
|
2517
2517
|
"text": "CustomEvent"
|
|
2518
2518
|
}
|
|
@@ -2619,14 +2619,14 @@
|
|
|
2619
2619
|
"text": "'ore-list'"
|
|
2620
2620
|
},
|
|
2621
2621
|
"default": "'ore-list'",
|
|
2622
|
-
"description": "A vertical list container for `ore-list-item` children
|
|
2622
|
+
"description": "A vertical list container for `ore-list-item` children: plain display list by default, or a\nkeyboard-navigable single-select listbox via `selectable`. Each item can independently reveal\na left/right action panel via touch/pointer swipe (see `ore-list-item`'s `actions-left`/\n`actions-right` slots): useful for mobile-style row actions (archive, delete, …)."
|
|
2623
2623
|
},
|
|
2624
2624
|
{
|
|
2625
2625
|
"kind": "class",
|
|
2626
2626
|
"name": "OreListElement",
|
|
2627
2627
|
"tagName": "ore-list",
|
|
2628
2628
|
"customElement": true,
|
|
2629
|
-
"description": "A vertical list container for `ore-list-item` children
|
|
2629
|
+
"description": "A vertical list container for `ore-list-item` children: plain display list by default, or a\nkeyboard-navigable single-select listbox via `selectable`. Each item can independently reveal\na left/right action panel via touch/pointer swipe (see `ore-list-item`'s `actions-left`/\n`actions-right` slots): useful for mobile-style row actions (archive, delete, …).",
|
|
2630
2630
|
"summary": "",
|
|
2631
2631
|
"attributes": [
|
|
2632
2632
|
{
|
|
@@ -2655,7 +2655,7 @@
|
|
|
2655
2655
|
"type": {
|
|
2656
2656
|
"text": "string"
|
|
2657
2657
|
},
|
|
2658
|
-
"description": "Selected item's value (only meaningful when `selectable`)
|
|
2658
|
+
"description": "Selected item's value (only meaningful when `selectable`): the single source of truth for selection"
|
|
2659
2659
|
},
|
|
2660
2660
|
{
|
|
2661
2661
|
"name": "variant",
|
|
@@ -2922,14 +2922,14 @@
|
|
|
2922
2922
|
"text": "'ore-qr-code'"
|
|
2923
2923
|
},
|
|
2924
2924
|
"default": "'ore-qr-code'",
|
|
2925
|
-
"description": "Renders a QR code for `value` as inline SVG
|
|
2925
|
+
"description": "Renders a QR code for `value` as inline SVG: themeable via `currentColor`,\ncrisp at any scale, no canvas. On capacity errors the component shows an\nerror state and emits `error` rather than throwing."
|
|
2926
2926
|
},
|
|
2927
2927
|
{
|
|
2928
2928
|
"kind": "class",
|
|
2929
2929
|
"name": "OreQrCodeElement",
|
|
2930
2930
|
"tagName": "ore-qr-code",
|
|
2931
2931
|
"customElement": true,
|
|
2932
|
-
"description": "Renders a QR code for `value` as inline SVG
|
|
2932
|
+
"description": "Renders a QR code for `value` as inline SVG: themeable via `currentColor`,\ncrisp at any scale, no canvas. On capacity errors the component shows an\nerror state and emits `error` rather than throwing.",
|
|
2933
2933
|
"summary": "",
|
|
2934
2934
|
"attributes": [
|
|
2935
2935
|
{
|
|
@@ -3064,6 +3064,170 @@
|
|
|
3064
3064
|
}
|
|
3065
3065
|
]
|
|
3066
3066
|
},
|
|
3067
|
+
{
|
|
3068
|
+
"kind": "variable",
|
|
3069
|
+
"name": "RANK_ITEM_TAG",
|
|
3070
|
+
"type": {
|
|
3071
|
+
"text": "'ore-rank-item'"
|
|
3072
|
+
},
|
|
3073
|
+
"default": "'ore-rank-item'",
|
|
3074
|
+
"description": "A single ranked row inside `ore-rank-list`: a rank numeral, an optional `leading` slot\n(avatar, icon), the label, a secondary `description` line, and a right-aligned `trailing`\nvalue, with a proportional bar under the row sized against the largest sibling `value`.\nThe row is the whole visualization: the label and value stay text, so the ranking is\nreadable and accessible with the bar treated as reinforcement, never as the only carrier."
|
|
3075
|
+
},
|
|
3076
|
+
{
|
|
3077
|
+
"kind": "class",
|
|
3078
|
+
"name": "OreRankItemElement",
|
|
3079
|
+
"tagName": "ore-rank-item",
|
|
3080
|
+
"customElement": true,
|
|
3081
|
+
"description": "A single ranked row inside `ore-rank-list`: a rank numeral, an optional `leading` slot\n(avatar, icon), the label, a secondary `description` line, and a right-aligned `trailing`\nvalue, with a proportional bar under the row sized against the largest sibling `value`.\nThe row is the whole visualization: the label and value stay text, so the ranking is\nreadable and accessible with the bar treated as reinforcement, never as the only carrier.",
|
|
3082
|
+
"summary": "",
|
|
3083
|
+
"attributes": [
|
|
3084
|
+
{
|
|
3085
|
+
"name": "bar",
|
|
3086
|
+
"type": {
|
|
3087
|
+
"text": "boolean"
|
|
3088
|
+
},
|
|
3089
|
+
"description": "Show the proportional bar (default). Disable with `bar=\"false\"` for non-count rows."
|
|
3090
|
+
},
|
|
3091
|
+
{
|
|
3092
|
+
"name": "rank",
|
|
3093
|
+
"type": {
|
|
3094
|
+
"text": "number"
|
|
3095
|
+
},
|
|
3096
|
+
"description": "Rank position: assigned automatically by the parent list in DOM order; manual values are overwritten."
|
|
3097
|
+
},
|
|
3098
|
+
{
|
|
3099
|
+
"name": "value",
|
|
3100
|
+
"type": {
|
|
3101
|
+
"text": "number"
|
|
3102
|
+
},
|
|
3103
|
+
"description": "The row's numeric value: sizes the bar against the largest sibling, and is the formatted display when no `trailing` slot is present."
|
|
3104
|
+
}
|
|
3105
|
+
],
|
|
3106
|
+
"slots": [
|
|
3107
|
+
{
|
|
3108
|
+
"name": "leading",
|
|
3109
|
+
"description": "Content before the label (e.g. avatar, icon)"
|
|
3110
|
+
},
|
|
3111
|
+
{
|
|
3112
|
+
"name": "",
|
|
3113
|
+
"description": "Item label"
|
|
3114
|
+
},
|
|
3115
|
+
{
|
|
3116
|
+
"name": "description",
|
|
3117
|
+
"description": "Secondary line below the label (e.g. sample count)"
|
|
3118
|
+
},
|
|
3119
|
+
{
|
|
3120
|
+
"name": "trailing",
|
|
3121
|
+
"description": "Right-aligned value display; replaces the formatted `value`"
|
|
3122
|
+
}
|
|
3123
|
+
],
|
|
3124
|
+
"cssParts": [
|
|
3125
|
+
{
|
|
3126
|
+
"name": "row",
|
|
3127
|
+
"description": "The text row (rank, leading, label, trailing)"
|
|
3128
|
+
},
|
|
3129
|
+
{
|
|
3130
|
+
"name": "rank",
|
|
3131
|
+
"description": "The rank numeral (aria-hidden: the list order carries it)"
|
|
3132
|
+
},
|
|
3133
|
+
{
|
|
3134
|
+
"name": "leading",
|
|
3135
|
+
"description": "The leading slot container"
|
|
3136
|
+
},
|
|
3137
|
+
{
|
|
3138
|
+
"name": "content",
|
|
3139
|
+
"description": "The label + description container"
|
|
3140
|
+
},
|
|
3141
|
+
{
|
|
3142
|
+
"name": "label",
|
|
3143
|
+
"description": "The label slot container"
|
|
3144
|
+
},
|
|
3145
|
+
{
|
|
3146
|
+
"name": "description",
|
|
3147
|
+
"description": "The description slot container"
|
|
3148
|
+
},
|
|
3149
|
+
{
|
|
3150
|
+
"name": "trailing",
|
|
3151
|
+
"description": "The trailing value container"
|
|
3152
|
+
},
|
|
3153
|
+
{
|
|
3154
|
+
"name": "bar",
|
|
3155
|
+
"description": "The bar track"
|
|
3156
|
+
},
|
|
3157
|
+
{
|
|
3158
|
+
"name": "bar-fill",
|
|
3159
|
+
"description": "The bar fill"
|
|
3160
|
+
}
|
|
3161
|
+
],
|
|
3162
|
+
"cssProperties": [
|
|
3163
|
+
{
|
|
3164
|
+
"name": "--rank-number-color",
|
|
3165
|
+
"description": "Rank numeral color (default --color-contrast-500)"
|
|
3166
|
+
},
|
|
3167
|
+
{
|
|
3168
|
+
"name": "--rank-number-width",
|
|
3169
|
+
"description": "Rank numeral column width (default --size-6)"
|
|
3170
|
+
},
|
|
3171
|
+
{
|
|
3172
|
+
"name": "--rank-bar-color",
|
|
3173
|
+
"description": "Bar fill color (default --color-primary)"
|
|
3174
|
+
},
|
|
3175
|
+
{
|
|
3176
|
+
"name": "--rank-track-color",
|
|
3177
|
+
"description": "Bar track color (default --color-contrast-100)"
|
|
3178
|
+
},
|
|
3179
|
+
{
|
|
3180
|
+
"name": "--rank-bar-height",
|
|
3181
|
+
"description": "Bar height (default --size-1)"
|
|
3182
|
+
}
|
|
3183
|
+
],
|
|
3184
|
+
"demos": [
|
|
3185
|
+
{
|
|
3186
|
+
"url": "",
|
|
3187
|
+
"description": "```html\n<ore-rank-item value=\"8\">\n <ore-avatar slot=\"leading\" src=\"alex.png\" alt=\"\" rounded=\"full\" size=\"sm\"></ore-avatar>\n Alex\n</ore-rank-item>\n<ore-rank-item value=\"6\" bar=\"false\">\n Overview\n <span slot=\"description\">4 timed sessions</span>\n <span slot=\"trailing\">24m 11s</span>\n</ore-rank-item>\n```"
|
|
3188
|
+
}
|
|
3189
|
+
]
|
|
3190
|
+
},
|
|
3191
|
+
{
|
|
3192
|
+
"kind": "variable",
|
|
3193
|
+
"name": "RANK_CTX",
|
|
3194
|
+
"description": "Injection key for the rank context."
|
|
3195
|
+
},
|
|
3196
|
+
{
|
|
3197
|
+
"kind": "variable",
|
|
3198
|
+
"name": "RANK_LIST_TAG",
|
|
3199
|
+
"type": {
|
|
3200
|
+
"text": "'ore-rank-list'"
|
|
3201
|
+
},
|
|
3202
|
+
"default": "'ore-rank-list'",
|
|
3203
|
+
"description": "A ranked display list: an ordered set of `ore-rank-item` rows where each row's proportional\nbar makes the ranking scannable without a separate chart. The list itself owns the two\nfacts an item cannot know on its own: the position of each row (assigned back to the item\nas its `rank` prop, in DOM order) and the scale every bar is measured against (the largest\nchild `value`, shared through context).\n\nThis is a read-only data display, not a selection control: rows never receive interactive\nstate. Order the items yourself before rendering: the list numbers them, it does not sort\nthem."
|
|
3204
|
+
},
|
|
3205
|
+
{
|
|
3206
|
+
"kind": "class",
|
|
3207
|
+
"name": "OreRankListElement",
|
|
3208
|
+
"tagName": "ore-rank-list",
|
|
3209
|
+
"customElement": true,
|
|
3210
|
+
"description": "A ranked display list: an ordered set of `ore-rank-item` rows where each row's proportional\nbar makes the ranking scannable without a separate chart. The list itself owns the two\nfacts an item cannot know on its own: the position of each row (assigned back to the item\nas its `rank` prop, in DOM order) and the scale every bar is measured against (the largest\nchild `value`, shared through context).\nThis is a read-only data display, not a selection control: rows never receive interactive\nstate. Order the items yourself before rendering: the list numbers them, it does not sort\nthem.",
|
|
3211
|
+
"summary": "",
|
|
3212
|
+
"slots": [
|
|
3213
|
+
{
|
|
3214
|
+
"name": "",
|
|
3215
|
+
"description": "`ore-rank-item` elements as direct children"
|
|
3216
|
+
}
|
|
3217
|
+
],
|
|
3218
|
+
"cssProperties": [
|
|
3219
|
+
{
|
|
3220
|
+
"name": "--rank-list-gap",
|
|
3221
|
+
"description": "Vertical gap between rows (default --size-1)"
|
|
3222
|
+
}
|
|
3223
|
+
],
|
|
3224
|
+
"demos": [
|
|
3225
|
+
{
|
|
3226
|
+
"url": "",
|
|
3227
|
+
"description": "```html\n<ore-rank-list aria-label=\"Most visited pages\">\n <ore-rank-item value=\"8\">Documentation</ore-rank-item>\n <ore-rank-item value=\"6\">Pricing</ore-rank-item>\n <ore-rank-item value=\"2\" bar=\"false\">Blog<span slot=\"trailing\">18m 24s</span></ore-rank-item>\n</ore-rank-list>\n```"
|
|
3228
|
+
}
|
|
3229
|
+
]
|
|
3230
|
+
},
|
|
3067
3231
|
{
|
|
3068
3232
|
"kind": "variable",
|
|
3069
3233
|
"name": "SEPARATOR_TAG",
|
|
@@ -3152,7 +3316,7 @@
|
|
|
3152
3316
|
"text": "[1, 0.85, 1.15]"
|
|
3153
3317
|
},
|
|
3154
3318
|
"default": "[1, 0.85, 1.15]",
|
|
3155
|
-
"description": "The rate steps the speed control cycles through
|
|
3319
|
+
"description": "The rate steps the speed control cycles through: normal, slow, fast."
|
|
3156
3320
|
},
|
|
3157
3321
|
{
|
|
3158
3322
|
"kind": "function",
|
|
@@ -3170,7 +3334,7 @@
|
|
|
3170
3334
|
}
|
|
3171
3335
|
}
|
|
3172
3336
|
],
|
|
3173
|
-
"description": "The entry's sentences
|
|
3337
|
+
"description": "The entry's sentences: prose ends . ! or ?, closing quotes belong to the sentence\nthey end, and an unterminated tail is still a sentence. Consumers that highlight what\nis being read build their display from this same list, so `progress` sentence indexes\nmap onto their own."
|
|
3174
3338
|
},
|
|
3175
3339
|
{
|
|
3176
3340
|
"kind": "variable",
|
|
@@ -3179,14 +3343,14 @@
|
|
|
3179
3343
|
"text": "'ore-speech-player'"
|
|
3180
3344
|
},
|
|
3181
3345
|
"default": "'ore-speech-player'",
|
|
3182
|
-
"description": "A text-to-speech player control
|
|
3346
|
+
"description": "A text-to-speech player control: reads its `text` aloud through the Web Speech API.\n\nRenders a labeled play/pause toggle (the label folds away once engaged), a stop\ncontrol beside it that appears while reading, and a speed control cycling\nnormal/slow/fast. The text is spoken sentence by sentence (long sentences split into pieces under the\nengine's truncation window), the `state` attribute reflects playback, a\n`role=\"status\"` live region announces transitions, and `progress` events name the\nsentence being read so a consumer can highlight it. Only one player speaks at a\ntime: starting one stops any other. `resume-at` names the sentence to begin from,\nso a persisted position makes resume mean it."
|
|
3183
3347
|
},
|
|
3184
3348
|
{
|
|
3185
3349
|
"kind": "class",
|
|
3186
3350
|
"name": "OreSpeechPlayerElement",
|
|
3187
3351
|
"tagName": "ore-speech-player",
|
|
3188
3352
|
"customElement": true,
|
|
3189
|
-
"description": "A text-to-speech player control
|
|
3353
|
+
"description": "A text-to-speech player control: reads its `text` aloud through the Web Speech API.\nRenders a labeled play/pause toggle (the label folds away once engaged), a stop\ncontrol beside it that appears while reading, and a speed control cycling\nnormal/slow/fast. The text is spoken sentence by sentence (long sentences split into pieces under the\nengine's truncation window), the `state` attribute reflects playback, a\n`role=\"status\"` live region announces transitions, and `progress` events name the\nsentence being read so a consumer can highlight it. Only one player speaks at a\ntime: starting one stops any other. `resume-at` names the sentence to begin from,\nso a persisted position makes resume mean it.",
|
|
3190
3354
|
"summary": "",
|
|
3191
3355
|
"attributes": [
|
|
3192
3356
|
{
|
|
@@ -3557,14 +3721,14 @@
|
|
|
3557
3721
|
"text": "'ore-step'"
|
|
3558
3722
|
},
|
|
3559
3723
|
"default": "'ore-step'",
|
|
3560
|
-
"description": "A single step trigger. Must be placed as a direct child of `ore-stepper`, which provides\nthis step's current/completed/navigable/index/total state via context
|
|
3724
|
+
"description": "A single step trigger. Must be placed as a direct child of `ore-stepper`, which provides\nthis step's current/completed/navigable/index/total state via context: those are derived,\nread-only attributes on this element, not settable props."
|
|
3561
3725
|
},
|
|
3562
3726
|
{
|
|
3563
3727
|
"kind": "class",
|
|
3564
3728
|
"name": "OreStepElement",
|
|
3565
3729
|
"tagName": "ore-step",
|
|
3566
3730
|
"customElement": true,
|
|
3567
|
-
"description": "A single step trigger. Must be placed as a direct child of `ore-stepper`, which provides\nthis step's current/completed/navigable/index/total state via context
|
|
3731
|
+
"description": "A single step trigger. Must be placed as a direct child of `ore-stepper`, which provides\nthis step's current/completed/navigable/index/total state via context: those are derived,\nread-only attributes on this element, not settable props.",
|
|
3568
3732
|
"summary": "",
|
|
3569
3733
|
"attributes": [
|
|
3570
3734
|
{
|
|
@@ -3949,14 +4113,14 @@
|
|
|
3949
4113
|
"text": "'ore-table'"
|
|
3950
4114
|
},
|
|
3951
4115
|
"default": "'ore-table'",
|
|
3952
|
-
"description": "Data table component.\n\nReads light-DOM `<ore-tr>`/`<ore-th>`/`<ore-td>` markers and projects them\ninto a fully-native shadow `<table>`. Cell attributes (`colspan`, `rowspan`,\n`scope`, etc.) are mirrored. Changes are observed and synced incrementally.\n\nNative table features
|
|
4116
|
+
"description": "Data table component.\n\nReads light-DOM `<ore-tr>`/`<ore-th>`/`<ore-td>` markers and projects them\ninto a fully-native shadow `<table>`. Cell attributes (`colspan`, `rowspan`,\n`scope`, etc.) are mirrored. Changes are observed and synced incrementally.\n\nNative table features: sticky headers, colspan/rowspan, the table layout\nalgorithm: all work because the shadow tree contains real table elements."
|
|
3953
4117
|
},
|
|
3954
4118
|
{
|
|
3955
4119
|
"kind": "class",
|
|
3956
4120
|
"name": "OreTableElement",
|
|
3957
4121
|
"tagName": "ore-table",
|
|
3958
4122
|
"customElement": true,
|
|
3959
|
-
"description": "Data table component.\nReads light-DOM `<ore-tr>`/`<ore-th>`/`<ore-td>` markers and projects them\ninto a fully-native shadow `<table>`. Cell attributes (`colspan`, `rowspan`,\n`scope`, etc.) are mirrored. Changes are observed and synced incrementally.\nNative table features
|
|
4123
|
+
"description": "Data table component.\nReads light-DOM `<ore-tr>`/`<ore-th>`/`<ore-td>` markers and projects them\ninto a fully-native shadow `<table>`. Cell attributes (`colspan`, `rowspan`,\n`scope`, etc.) are mirrored. Changes are observed and synced incrementally.\nNative table features: sticky headers, colspan/rowspan, the table layout\nalgorithm: all work because the shadow tree contains real table elements.",
|
|
3960
4124
|
"summary": "",
|
|
3961
4125
|
"attributes": [
|
|
3962
4126
|
{
|
|
@@ -5318,7 +5482,7 @@
|
|
|
5318
5482
|
"type": {
|
|
5319
5483
|
"text": "string"
|
|
5320
5484
|
},
|
|
5321
|
-
"description": "Content layout: 'inline' (default) | 'stacked'
|
|
5485
|
+
"description": "Content layout: 'inline' (default) | 'stacked': stacked places the icon above a wrapping label, for tile-like selectable chips"
|
|
5322
5486
|
},
|
|
5323
5487
|
{
|
|
5324
5488
|
"name": "disabled",
|
|
@@ -5484,14 +5648,14 @@
|
|
|
5484
5648
|
"text": "'ore-cookie-banner'"
|
|
5485
5649
|
},
|
|
5486
5650
|
"default": "'ore-cookie-banner'",
|
|
5487
|
-
"description": "A fixed-position consent banner for cookie/tracker opt-in: a short policy text\n(default slot, links included), optional per-category opt-in checkboxes with\ndescriptions, and accept-all / reject / save actions.\n\nThe layout is a single column
|
|
5651
|
+
"description": "A fixed-position consent banner for cookie/tracker opt-in: a short policy text\n(default slot, links included), optional per-category opt-in checkboxes with\ndescriptions, and accept-all / reject / save actions.\n\nThe layout is a single column: heading, policy text, a scrollable category\npanel, and actions, that scales linearly from one to many categories. Each\ncategory renders as a checkbox row; its optional `description` passes through\nthe checkbox's `helper` mechanism, so it is both visible below the label and\nlinked to the control via `aria-describedby`. The category panel scrolls\ninternally when it exceeds `--cookie-banner-categories-max-height`, so the\nbanner itself never grows past the viewport.\n\nThe banner owns presentation only. It never stores anything: listen for `decide`,\npersist the emitted record yourself (localStorage, a CMP, your own backend), and\ngate third-party embeds on it. The banner hides itself after `decide` unless\n`hide-on-decide` is set to false. Call `show()` again to let the user revise\ntheir choice.\n\nThe banner is a non-modal `role=\"dialog\"`: screen readers announce it when it\nappears, focus moves to the dialog card itself on `show()`: a neutral target,\nso no action is preselected for keyboard users, and returns to the previously\nfocused element on `hide()`. A banner that is simply present at page load (never\nshown via `show()`) does not steal focus and is not announced; consumers that\nwant a load-time announcement should call `show()` from a user gesture.\n\nThe `decide` record contains exactly the currently configured category ids\n(plus `essential`, always true). Replace: do not merge: the stored record\nwith it, so categories removed between sessions drop their stale keys."
|
|
5488
5652
|
},
|
|
5489
5653
|
{
|
|
5490
5654
|
"kind": "class",
|
|
5491
5655
|
"name": "OreCookieBannerElement",
|
|
5492
5656
|
"tagName": "ore-cookie-banner",
|
|
5493
5657
|
"customElement": true,
|
|
5494
|
-
"description": "A fixed-position consent banner for cookie/tracker opt-in: a short policy text\n(default slot, links included), optional per-category opt-in checkboxes with\ndescriptions, and accept-all / reject / save actions.\nThe layout is a single column
|
|
5658
|
+
"description": "A fixed-position consent banner for cookie/tracker opt-in: a short policy text\n(default slot, links included), optional per-category opt-in checkboxes with\ndescriptions, and accept-all / reject / save actions.\nThe layout is a single column: heading, policy text, a scrollable category\npanel, and actions, that scales linearly from one to many categories. Each\ncategory renders as a checkbox row; its optional `description` passes through\nthe checkbox's `helper` mechanism, so it is both visible below the label and\nlinked to the control via `aria-describedby`. The category panel scrolls\ninternally when it exceeds `--cookie-banner-categories-max-height`, so the\nbanner itself never grows past the viewport.\nThe banner owns presentation only. It never stores anything: listen for `decide`,\npersist the emitted record yourself (localStorage, a CMP, your own backend), and\ngate third-party embeds on it. The banner hides itself after `decide` unless\n`hide-on-decide` is set to false. Call `show()` again to let the user revise\ntheir choice.\nThe banner is a non-modal `role=\"dialog\"`: screen readers announce it when it\nappears, focus moves to the dialog card itself on `show()`: a neutral target,\nso no action is preselected for keyboard users, and returns to the previously\nfocused element on `hide()`. A banner that is simply present at page load (never\nshown via `show()`) does not steal focus and is not announced; consumers that\nwant a load-time announcement should call `show()` from a user gesture.\nThe `decide` record contains exactly the currently configured category ids\n(plus `essential`, always true). Replace: do not merge: the stored record\nwith it, so categories removed between sessions drop their stale keys.",
|
|
5495
5659
|
"summary": "",
|
|
5496
5660
|
"attributes": [
|
|
5497
5661
|
{
|
|
@@ -5512,7 +5676,7 @@
|
|
|
5512
5676
|
"events": [
|
|
5513
5677
|
{
|
|
5514
5678
|
"name": "decide",
|
|
5515
|
-
"description": "A decision was made. detail: { consent }
|
|
5679
|
+
"description": "A decision was made. detail: { consent }: every category id plus `essential`, always true.",
|
|
5516
5680
|
"type": {
|
|
5517
5681
|
"text": "CustomEvent"
|
|
5518
5682
|
}
|
|
@@ -5970,7 +6134,7 @@
|
|
|
5970
6134
|
"name": "OreToastElement",
|
|
5971
6135
|
"tagName": "ore-toast",
|
|
5972
6136
|
"customElement": true,
|
|
5973
|
-
"description": "Declarative toast host. It subscribes to the service for its scope and\nrenders notifications, but has no imperative mutation API of its own.\nNotifications render as a vertical list (newest nearest the anchored edge)\ninside polite and assertive live regions. Entries are keyed by id, so store\nupdates (timer pauses, message updates, phase changes) patch the existing\nDOM instead of re-creating it
|
|
6137
|
+
"description": "Declarative toast host. It subscribes to the service for its scope and\nrenders notifications, but has no imperative mutation API of its own.\nNotifications render as a vertical list (newest nearest the anchored edge)\ninside polite and assertive live regions. Entries are keyed by id, so store\nupdates (timer pauses, message updates, phase changes) patch the existing\nDOM instead of re-creating it: focus, in-flight gestures, and CSS\ntransitions all survive.",
|
|
5974
6138
|
"summary": "",
|
|
5975
6139
|
"attributes": [
|
|
5976
6140
|
{
|
|
@@ -6031,6 +6195,10 @@
|
|
|
6031
6195
|
"name": "--toast-progress-height",
|
|
6032
6196
|
"description": "Height of the auto-dismiss progress bar."
|
|
6033
6197
|
},
|
|
6198
|
+
{
|
|
6199
|
+
"name": "--toast-snackbar-height",
|
|
6200
|
+
"description": "Snackbar message row height, action or not (default --size-8)."
|
|
6201
|
+
},
|
|
6034
6202
|
{
|
|
6035
6203
|
"name": "--toast-inset-top / --toast-inset-bottom / --toast-inset-left / --toast-inset-right",
|
|
6036
6204
|
"description": "Viewport insets."
|
|
@@ -6072,14 +6240,14 @@
|
|
|
6072
6240
|
"text": "'ore-typing-indicator'"
|
|
6073
6241
|
},
|
|
6074
6242
|
"default": "'ore-typing-indicator'",
|
|
6075
|
-
"description": "Three bouncing dots signaling that the other side of a conversation is composing a reply
|
|
6243
|
+
"description": "Three bouncing dots signaling that the other side of a conversation is composing a reply :\nthe moment before any content exists. For a message whose content is already streaming in,\nuse `ore-chat-message`'s `streaming` attribute (a blinking cursor) instead.\n\nThe dots are decorative (`aria-hidden`): `label` is the entire accessibility contract,\nannounced through the shared singleton live region (`core/announcer.ts`) rather than a\nstatic `aria-live` element in the template. A live region populated in the same paint as\nits own insertion is unreliable across browsers/screen readers; routing through the shared\nannouncer (pre-existing region, clear-then-set, document-scoped) is the same pattern\nalready used for other transient status messages across this package."
|
|
6076
6244
|
},
|
|
6077
6245
|
{
|
|
6078
6246
|
"kind": "class",
|
|
6079
6247
|
"name": "OreTypingIndicatorElement",
|
|
6080
6248
|
"tagName": "ore-typing-indicator",
|
|
6081
6249
|
"customElement": true,
|
|
6082
|
-
"description": "Three bouncing dots signaling that the other side of a conversation is composing a reply
|
|
6250
|
+
"description": "Three bouncing dots signaling that the other side of a conversation is composing a reply :\nthe moment before any content exists. For a message whose content is already streaming in,\nuse `ore-chat-message`'s `streaming` attribute (a blinking cursor) instead.\nThe dots are decorative (`aria-hidden`): `label` is the entire accessibility contract,\nannounced through the shared singleton live region (`core/announcer.ts`) rather than a\nstatic `aria-live` element in the template. A live region populated in the same paint as\nits own insertion is unreliable across browsers/screen readers; routing through the shared\nannouncer (pre-existing region, clear-then-set, document-scoped) is the same pattern\nalready used for other transient status messages across this package.",
|
|
6083
6251
|
"summary": "",
|
|
6084
6252
|
"attributes": [
|
|
6085
6253
|
{
|
|
@@ -7095,14 +7263,14 @@
|
|
|
7095
7263
|
"text": "'ore-counter'"
|
|
7096
7264
|
},
|
|
7097
7265
|
"default": "'ore-counter'",
|
|
7098
|
-
"description": "A large-target tally control for counting things at a glance: `−` / value / `+` with an\noptional icon, label and hint. Designed for touch and arm's-length use (tabletop trackers,\ninventories, scoreboards) rather than typed form entry
|
|
7266
|
+
"description": "A large-target tally control for counting things at a glance: `−` / value / `+` with an\noptional icon, label and hint. Designed for touch and arm's-length use (tabletop trackers,\ninventories, scoreboards) rather than typed form entry: use `ore-number-input` for that.\n\nHolding any button auto-repeats. The value is announced through a live region and is\nkeyboard-operable as a spinbutton (Arrow keys, Home/End, Page Up/Down). Set `quick-steps` to add an\nouter pair of buttons that move by `large-step`, for values that change in chunks (damage, scores)."
|
|
7099
7267
|
},
|
|
7100
7268
|
{
|
|
7101
7269
|
"kind": "class",
|
|
7102
7270
|
"name": "OreCounterElement",
|
|
7103
7271
|
"tagName": "ore-counter",
|
|
7104
7272
|
"customElement": true,
|
|
7105
|
-
"description": "A large-target tally control for counting things at a glance: `−` / value / `+` with an\noptional icon, label and hint. Designed for touch and arm's-length use (tabletop trackers,\ninventories, scoreboards) rather than typed form entry
|
|
7273
|
+
"description": "A large-target tally control for counting things at a glance: `−` / value / `+` with an\noptional icon, label and hint. Designed for touch and arm's-length use (tabletop trackers,\ninventories, scoreboards) rather than typed form entry: use `ore-number-input` for that.\nHolding any button auto-repeats. The value is announced through a live region and is\nkeyboard-operable as a spinbutton (Arrow keys, Home/End, Page Up/Down). Set `quick-steps` to add an\nouter pair of buttons that move by `large-step`, for values that change in chunks (damage, scores).",
|
|
7106
7274
|
"summary": "",
|
|
7107
7275
|
"attributes": [
|
|
7108
7276
|
{
|
|
@@ -7215,6 +7383,10 @@
|
|
|
7215
7383
|
"name": "icon",
|
|
7216
7384
|
"description": "Leading icon or token artwork shown before the label"
|
|
7217
7385
|
},
|
|
7386
|
+
{
|
|
7387
|
+
"name": "header-end",
|
|
7388
|
+
"description": "Trailing header action beside the label"
|
|
7389
|
+
},
|
|
7218
7390
|
{
|
|
7219
7391
|
"name": "hint",
|
|
7220
7392
|
"description": "Custom hint content (replaces the `hint` attribute)"
|
|
@@ -7478,7 +7650,7 @@
|
|
|
7478
7650
|
}
|
|
7479
7651
|
}
|
|
7480
7652
|
],
|
|
7481
|
-
"description": "Returns the Lucide icon name for a column's sort state.\nPure function
|
|
7653
|
+
"description": "Returns the Lucide icon name for a column's sort state.\nPure function: no closure dependency on the grid model."
|
|
7482
7654
|
},
|
|
7483
7655
|
{
|
|
7484
7656
|
"kind": "function",
|
|
@@ -7502,7 +7674,7 @@
|
|
|
7502
7674
|
}
|
|
7503
7675
|
}
|
|
7504
7676
|
],
|
|
7505
|
-
"description": "Returns the WAI-ARIA `aria-sort` value for a column.\nPure function
|
|
7677
|
+
"description": "Returns the WAI-ARIA `aria-sort` value for a column.\nPure function: independently unit-testable."
|
|
7506
7678
|
},
|
|
7507
7679
|
{
|
|
7508
7680
|
"kind": "variable",
|
|
@@ -7787,7 +7959,7 @@
|
|
|
7787
7959
|
}
|
|
7788
7960
|
}
|
|
7789
7961
|
],
|
|
7790
|
-
"description": "Owns file selection *and* the opt-in upload lifecycle together
|
|
7962
|
+
"description": "Owns file selection *and* the opt-in upload lifecycle together: they were never really\nseparable (adding a file starts its upload; removing one must abort it; replacing one is both\nat once). Independent of `html`/rendering, following the same shape as `datagrid`'s\n`createDataGridControls` and `combobox`'s `combobox-options.ts`: a factory `file-input.ts`\nwires into drag/drop/native-input events and the template, directly unit-testable without\nmounting a component.\n\nEvery file-level rule (accept, max-size, max-files, disabled) and every upload-lifecycle rule\n(progress, retry-from-offset, per-file isolation) lives here in one place."
|
|
7791
7963
|
},
|
|
7792
7964
|
{
|
|
7793
7965
|
"kind": "variable",
|
|
@@ -7796,14 +7968,14 @@
|
|
|
7796
7968
|
"text": "'ore-file-input'"
|
|
7797
7969
|
},
|
|
7798
7970
|
"default": "'ore-file-input'",
|
|
7799
|
-
"description": "A file upload field with drag-and-drop support, built-in validation messaging, and
|
|
7971
|
+
"description": "A file upload field with drag-and-drop support, built-in validation messaging, and: once a\n`upload` transport is wired up: a full per-file upload lifecycle: live progress/speed/ETA,\nretry-on-failure, a success confirmation card, and fully independent handling of concurrent\nfiles (one failing never blocks or cancels the others). Picking files with no `upload` set\nkeeps the original, upload-free selection-only behavior."
|
|
7800
7972
|
},
|
|
7801
7973
|
{
|
|
7802
7974
|
"kind": "class",
|
|
7803
7975
|
"name": "OreFileInputElement",
|
|
7804
7976
|
"tagName": "ore-file-input",
|
|
7805
7977
|
"customElement": true,
|
|
7806
|
-
"description": "A file upload field with drag-and-drop support, built-in validation messaging, and
|
|
7978
|
+
"description": "A file upload field with drag-and-drop support, built-in validation messaging, and: once a\n`upload` transport is wired up: a full per-file upload lifecycle: live progress/speed/ETA,\nretry-on-failure, a success confirmation card, and fully independent handling of concurrent\nfiles (one failing never blocks or cancels the others). Picking files with no `upload` set\nkeeps the original, upload-free selection-only behavior.",
|
|
7807
7979
|
"summary": "",
|
|
7808
7980
|
"attributes": [
|
|
7809
7981
|
{
|
|
@@ -7915,7 +8087,7 @@
|
|
|
7915
8087
|
},
|
|
7916
8088
|
{
|
|
7917
8089
|
"name": "reject",
|
|
7918
|
-
"description": "detail: { files: File[], reasons: ('size' | 'type')[] }
|
|
8090
|
+
"description": "detail: { files: File[], reasons: ('size' | 'type')[] }: nothing was added",
|
|
7919
8091
|
"type": {
|
|
7920
8092
|
"text": "CustomEvent"
|
|
7921
8093
|
}
|
|
@@ -8017,7 +8189,7 @@
|
|
|
8017
8189
|
"demos": [
|
|
8018
8190
|
{
|
|
8019
8191
|
"url": "",
|
|
8020
|
-
"description": "```html\n<ore-file-input label=\"Upload files\" accept=\"image/*\" multiple />\n<ore-file-input label=\"Photos\" accept=\"image/*\" multiple gallery />\n<ore-file-input label=\"Resume\" accept=\".pdf,.doc,.docx\" max-size=\"5242880\" />\n<ore-file-input variant=\"bordered\" color=\"primary\" />\n```\n```ts\n// Wire up a real upload transport
|
|
8192
|
+
"description": "```html\n<ore-file-input label=\"Upload files\" accept=\"image/*\" multiple />\n<ore-file-input label=\"Photos\" accept=\"image/*\" multiple gallery />\n<ore-file-input label=\"Resume\" accept=\".pdf,.doc,.docx\" max-size=\"5242880\" />\n<ore-file-input variant=\"bordered\" color=\"primary\" />\n```\n```ts\n// Wire up a real upload transport: progress/retry/success are then handled automatically.\n// `XMLHttpRequest` is used here (not `fetch`) because it's the only browser API that reports\n// upload progress; swap in whatever transport the app already uses.\nconst input = document.querySelector('ore-file-input');\ninput.upload = (file, { onProgress, signal, resumeFrom }) =>\n new Promise((resolve, reject) => {\n const xhr = new XMLHttpRequest();\n xhr.upload.addEventListener('progress', (e) => onProgress(resumeFrom + e.loaded, file.size));\n xhr.addEventListener('load', () => (xhr.status < 400 ? resolve() : reject(new Error(xhr.statusText))));\n xhr.addEventListener('error', () => reject(new Error('Network error')));\n signal.addEventListener('abort', () => xhr.abort());\n xhr.open('PUT', '/uploads');\n if (resumeFrom > 0) xhr.setRequestHeader('Content-Range', `bytes ${resumeFrom}-/${file.size}`);\n xhr.send(file);\n });\n```"
|
|
8021
8193
|
}
|
|
8022
8194
|
]
|
|
8023
8195
|
},
|
|
@@ -8099,7 +8271,7 @@
|
|
|
8099
8271
|
"type": {
|
|
8100
8272
|
"text": "string"
|
|
8101
8273
|
},
|
|
8102
|
-
"description": "Error message
|
|
8274
|
+
"description": "Error message: marks the field as invalid (fallback when the `error` slot is empty)"
|
|
8103
8275
|
},
|
|
8104
8276
|
{
|
|
8105
8277
|
"name": "disabled",
|
|
@@ -8192,15 +8364,15 @@
|
|
|
8192
8364
|
},
|
|
8193
8365
|
{
|
|
8194
8366
|
"name": "label",
|
|
8195
|
-
"description": "Replaces the label text
|
|
8367
|
+
"description": "Replaces the label text: slotted content takes precedence over the `label` prop"
|
|
8196
8368
|
},
|
|
8197
8369
|
{
|
|
8198
8370
|
"name": "helper",
|
|
8199
|
-
"description": "Replaces the helper text
|
|
8371
|
+
"description": "Replaces the helper text: slotted content takes precedence over the `helper` prop"
|
|
8200
8372
|
},
|
|
8201
8373
|
{
|
|
8202
8374
|
"name": "error",
|
|
8203
|
-
"description": "Replaces the error text
|
|
8375
|
+
"description": "Replaces the error text: slotted content takes precedence over the `error` prop"
|
|
8204
8376
|
}
|
|
8205
8377
|
],
|
|
8206
8378
|
"cssParts": [
|
|
@@ -8313,14 +8485,14 @@
|
|
|
8313
8485
|
"text": "'ore-message-composer'"
|
|
8314
8486
|
},
|
|
8315
8487
|
"default": "'ore-message-composer'",
|
|
8316
|
-
"description": "A message/comment composer
|
|
8488
|
+
"description": "A message/comment composer: a card with an auto-resizing field on top and a toolbar row\nbelow it, built directly on the same core primitives as `ore-textarea` (`createTextField`,\n`createAutoResize`) rather than composing `ore-textarea` itself. Nesting a fully-styled sibling\ncomponent and suppressing most of its chrome (as an earlier version of this component did) is\na leaky composition: this owns its single `<textarea>` outright, so there's exactly one\nimplementation of the field's appearance to reason about, not two fighting each other.\n\nHandles the send gesture (Enter to send, Shift+Enter for a newline, or a Ctrl/Cmd+Enter\nalternative), IME-safe composition, and clear-and-refocus after sending."
|
|
8317
8489
|
},
|
|
8318
8490
|
{
|
|
8319
8491
|
"kind": "class",
|
|
8320
8492
|
"name": "OreMessageComposerElement",
|
|
8321
8493
|
"tagName": "ore-message-composer",
|
|
8322
8494
|
"customElement": true,
|
|
8323
|
-
"description": "A message/comment composer
|
|
8495
|
+
"description": "A message/comment composer: a card with an auto-resizing field on top and a toolbar row\nbelow it, built directly on the same core primitives as `ore-textarea` (`createTextField`,\n`createAutoResize`) rather than composing `ore-textarea` itself. Nesting a fully-styled sibling\ncomponent and suppressing most of its chrome (as an earlier version of this component did) is\na leaky composition: this owns its single `<textarea>` outright, so there's exactly one\nimplementation of the field's appearance to reason about, not two fighting each other.\nHandles the send gesture (Enter to send, Shift+Enter for a newline, or a Ctrl/Cmd+Enter\nalternative), IME-safe composition, and clear-and-refocus after sending.",
|
|
8324
8496
|
"summary": "",
|
|
8325
8497
|
"attributes": [
|
|
8326
8498
|
{
|
|
@@ -8498,7 +8670,7 @@
|
|
|
8498
8670
|
},
|
|
8499
8671
|
{
|
|
8500
8672
|
"name": "send",
|
|
8501
|
-
"description": "Replaces the default send button entirely
|
|
8673
|
+
"description": "Replaces the default send button entirely: the only supported way to customize it"
|
|
8502
8674
|
}
|
|
8503
8675
|
],
|
|
8504
8676
|
"cssParts": [
|
|
@@ -9771,7 +9943,7 @@
|
|
|
9771
9943
|
}
|
|
9772
9944
|
}
|
|
9773
9945
|
],
|
|
9774
|
-
"description": "`prop.string()` already reflects `error`'s raw value as an attribute, but that leaves the\nattribute present-but-empty (`error=\"\"`) once set instead of removing it
|
|
9946
|
+
"description": "`prop.string()` already reflects `error`'s raw value as an attribute, but that leaves the\nattribute present-but-empty (`error=\"\"`) once set instead of removing it: this normalizes\nan empty error back to \"no attribute at all\". Shared by every text-field component\n(`ore-input`, `ore-textarea`, `ore-message-composer`) since `bind()`'s own `error` writer\nneeds a derived getter, not the raw prop, to get that behavior."
|
|
9775
9947
|
},
|
|
9776
9948
|
{
|
|
9777
9949
|
"kind": "function",
|
|
@@ -9946,7 +10118,7 @@
|
|
|
9946
10118
|
}
|
|
9947
10119
|
}
|
|
9948
10120
|
],
|
|
9949
|
-
"description": "Reads the `value` off the element an event fired from (`event.currentTarget`), guarding the\ncast: `undefined` when the target is missing or carries no string `value`. The read-side\ncompanion to setFieldValue
|
|
10121
|
+
"description": "Reads the `value` off the element an event fired from (`event.currentTarget`), guarding the\ncast: `undefined` when the target is missing or carries no string `value`. The read-side\ncompanion to setFieldValue: consumers wiring a native `change`/`input` handler to a\nfield no longer re-derive the `(currentTarget as HTMLElement & { value: string }).value` cast."
|
|
9950
10122
|
},
|
|
9951
10123
|
{
|
|
9952
10124
|
"kind": "function",
|
|
@@ -10013,7 +10185,7 @@
|
|
|
10013
10185
|
}
|
|
10014
10186
|
}
|
|
10015
10187
|
],
|
|
10016
|
-
"description": "Inline error/success status icon shown inside a field
|
|
10188
|
+
"description": "Inline error/success status icon shown inside a field: identical markup across\n`ore-input`, `ore-textarea`, and `ore-message-composer` (previously hand-duplicated in all\nthree, down to the same derived-signal names)."
|
|
10017
10189
|
},
|
|
10018
10190
|
{
|
|
10019
10191
|
"kind": "function",
|
|
@@ -10026,7 +10198,7 @@
|
|
|
10026
10198
|
}
|
|
10027
10199
|
}
|
|
10028
10200
|
],
|
|
10029
|
-
"description": "Character counter + separate helper/error text regions below a field
|
|
10201
|
+
"description": "Character counter + separate helper/error text regions below a field: identical across\n`ore-textarea` and `ore-message-composer` (kept out of `ore-input`, which slots its\nhelper/error content and drives its counter off a different data-attribute scheme via its\nown `char-counter` part: a genuinely different shape, not worth forcing into this one)."
|
|
10030
10202
|
},
|
|
10031
10203
|
{
|
|
10032
10204
|
"kind": "function",
|
|
@@ -10950,14 +11122,14 @@
|
|
|
10950
11122
|
"text": "'ore-box'"
|
|
10951
11123
|
},
|
|
10952
11124
|
"default": "'ore-box'",
|
|
10953
|
-
"description": "ore-box
|
|
11125
|
+
"description": "ore-box: A foundational layout primitive with theming support."
|
|
10954
11126
|
},
|
|
10955
11127
|
{
|
|
10956
11128
|
"kind": "class",
|
|
10957
11129
|
"name": "OreBoxElement",
|
|
10958
11130
|
"tagName": "ore-box",
|
|
10959
11131
|
"customElement": true,
|
|
10960
|
-
"description": "ore-box
|
|
11132
|
+
"description": "ore-box: A foundational layout primitive with theming support.",
|
|
10961
11133
|
"summary": "",
|
|
10962
11134
|
"attributes": [
|
|
10963
11135
|
{
|
|
@@ -11066,14 +11238,14 @@
|
|
|
11066
11238
|
"text": "'ore-grid'"
|
|
11067
11239
|
},
|
|
11068
11240
|
"default": "'ore-grid'",
|
|
11069
|
-
"description": "ore-grid
|
|
11241
|
+
"description": "ore-grid: Flexible grid layout with responsive column control.\n\nColumns are computed in JS and applied as `--_cols` inline, so they respond\nto the element's own width via ResizeObserver. CSS custom properties\n`--grid-cols`, `--grid-rows`, `--grid-gap`, `--grid-row-gap`, `--grid-col-gap`\nare honoured as fallbacks when no attribute is set."
|
|
11070
11242
|
},
|
|
11071
11243
|
{
|
|
11072
11244
|
"kind": "class",
|
|
11073
11245
|
"name": "OreGridElement",
|
|
11074
11246
|
"tagName": "ore-grid",
|
|
11075
11247
|
"customElement": true,
|
|
11076
|
-
"description": "ore-grid
|
|
11248
|
+
"description": "ore-grid: Flexible grid layout with responsive column control.\nColumns are computed in JS and applied as `--_cols` inline, so they respond\nto the element's own width via ResizeObserver. CSS custom properties\n`--grid-cols`, `--grid-rows`, `--grid-gap`, `--grid-row-gap`, `--grid-col-gap`\nare honoured as fallbacks when no attribute is set.",
|
|
11077
11249
|
"summary": "",
|
|
11078
11250
|
"attributes": [
|
|
11079
11251
|
{
|
|
@@ -11268,14 +11440,14 @@
|
|
|
11268
11440
|
"text": "'ore-grid-item'"
|
|
11269
11441
|
},
|
|
11270
11442
|
"default": "'ore-grid-item'",
|
|
11271
|
-
"description": "ore-grid-item
|
|
11443
|
+
"description": "ore-grid-item: A grid cell with declarative placement and span control.\n\nUse `col-span` / `row-span` for the common case of spanning columns/rows.\nUse `col` / `row` for full CSS grid-column / grid-row shorthand power\n(e.g. explicit placement, mixed span + start, negative lines)."
|
|
11272
11444
|
},
|
|
11273
11445
|
{
|
|
11274
11446
|
"kind": "class",
|
|
11275
11447
|
"name": "OreGridItemElement",
|
|
11276
11448
|
"tagName": "ore-grid-item",
|
|
11277
11449
|
"customElement": true,
|
|
11278
|
-
"description": "ore-grid-item
|
|
11450
|
+
"description": "ore-grid-item: A grid cell with declarative placement and span control.\nUse `col-span` / `row-span` for the common case of spanning columns/rows.\nUse `col` / `row` for full CSS grid-column / grid-row shorthand power\n(e.g. explicit placement, mixed span + start, negative lines).",
|
|
11279
11451
|
"summary": "",
|
|
11280
11452
|
"attributes": [
|
|
11281
11453
|
{
|
|
@@ -11365,14 +11537,14 @@
|
|
|
11365
11537
|
"text": "'ore-navbar'"
|
|
11366
11538
|
},
|
|
11367
11539
|
"default": "'ore-navbar'",
|
|
11368
|
-
"description": "`ore-navbar
|
|
11540
|
+
"description": "`ore-navbar`: Responsive navigation with sticky/floating modes and a mobile overflow panel."
|
|
11369
11541
|
},
|
|
11370
11542
|
{
|
|
11371
11543
|
"kind": "class",
|
|
11372
11544
|
"name": "OreNavbarElement",
|
|
11373
11545
|
"tagName": "ore-navbar",
|
|
11374
11546
|
"customElement": true,
|
|
11375
|
-
"description": "`ore-navbar
|
|
11547
|
+
"description": "`ore-navbar`: Responsive navigation with sticky/floating modes and a mobile overflow panel.",
|
|
11376
11548
|
"summary": "",
|
|
11377
11549
|
"attributes": [
|
|
11378
11550
|
{
|
|
@@ -11621,14 +11793,14 @@
|
|
|
11621
11793
|
"text": "'ore-navbar-item'"
|
|
11622
11794
|
},
|
|
11623
11795
|
"default": "'ore-navbar-item'",
|
|
11624
|
-
"description": "`ore-navbar-item
|
|
11796
|
+
"description": "`ore-navbar-item`: Navigation item for navbar slots.\n\nRenders as an anchor when `href` is provided and item is not disabled."
|
|
11625
11797
|
},
|
|
11626
11798
|
{
|
|
11627
11799
|
"kind": "class",
|
|
11628
11800
|
"name": "OreNavbarItemElement",
|
|
11629
11801
|
"tagName": "ore-navbar-item",
|
|
11630
11802
|
"customElement": true,
|
|
11631
|
-
"description": "`ore-navbar-item
|
|
11803
|
+
"description": "`ore-navbar-item`: Navigation item for navbar slots.\nRenders as an anchor when `href` is provided and item is not disabled.",
|
|
11632
11804
|
"summary": "",
|
|
11633
11805
|
"attributes": [
|
|
11634
11806
|
{
|
|
@@ -11728,14 +11900,14 @@
|
|
|
11728
11900
|
"text": "'ore-sidebar'"
|
|
11729
11901
|
},
|
|
11730
11902
|
"default": "'ore-sidebar'",
|
|
11731
|
-
"description": "`ore-sidebar
|
|
11903
|
+
"description": "`ore-sidebar`: A collapsible navigation sidebar with group and item support."
|
|
11732
11904
|
},
|
|
11733
11905
|
{
|
|
11734
11906
|
"kind": "class",
|
|
11735
11907
|
"name": "OreSidebarElement",
|
|
11736
11908
|
"tagName": "ore-sidebar",
|
|
11737
11909
|
"customElement": true,
|
|
11738
|
-
"description": "`ore-sidebar
|
|
11910
|
+
"description": "`ore-sidebar`: A collapsible navigation sidebar with group and item support.",
|
|
11739
11911
|
"summary": "",
|
|
11740
11912
|
"attributes": [
|
|
11741
11913
|
{
|
|
@@ -11913,14 +12085,14 @@
|
|
|
11913
12085
|
"text": "'ore-sidebar-group'"
|
|
11914
12086
|
},
|
|
11915
12087
|
"default": "'ore-sidebar-group'",
|
|
11916
|
-
"description": "`ore-sidebar-group
|
|
12088
|
+
"description": "`ore-sidebar-group`: A labelled section within `ore-sidebar`."
|
|
11917
12089
|
},
|
|
11918
12090
|
{
|
|
11919
12091
|
"kind": "class",
|
|
11920
12092
|
"name": "OreSidebarGroupElement",
|
|
11921
12093
|
"tagName": "ore-sidebar-group",
|
|
11922
12094
|
"customElement": true,
|
|
11923
|
-
"description": "`ore-sidebar-group
|
|
12095
|
+
"description": "`ore-sidebar-group`: A labelled section within `ore-sidebar`.",
|
|
11924
12096
|
"summary": "",
|
|
11925
12097
|
"attributes": [
|
|
11926
12098
|
{
|
|
@@ -11985,14 +12157,14 @@
|
|
|
11985
12157
|
"text": "'ore-sidebar-item'"
|
|
11986
12158
|
},
|
|
11987
12159
|
"default": "'ore-sidebar-item'",
|
|
11988
|
-
"description": "`ore-sidebar-item
|
|
12160
|
+
"description": "`ore-sidebar-item`: An individual navigation item in a `ore-sidebar`.\n\nRenders as an `<a>` when `href` is provided, otherwise as a `<button>`.\nMarks the active page via `aria-current=\"page\"` when the `active` attribute is set."
|
|
11989
12161
|
},
|
|
11990
12162
|
{
|
|
11991
12163
|
"kind": "class",
|
|
11992
12164
|
"name": "OreSidebarItemElement",
|
|
11993
12165
|
"tagName": "ore-sidebar-item",
|
|
11994
12166
|
"customElement": true,
|
|
11995
|
-
"description": "`ore-sidebar-item
|
|
12167
|
+
"description": "`ore-sidebar-item`: An individual navigation item in a `ore-sidebar`.\nRenders as an `<a>` when `href` is provided, otherwise as a `<button>`.\nMarks the active page via `aria-current=\"page\"` when the `active` attribute is set.",
|
|
11996
12168
|
"summary": "",
|
|
11997
12169
|
"attributes": [
|
|
11998
12170
|
{
|
|
@@ -12129,7 +12301,7 @@
|
|
|
12129
12301
|
}
|
|
12130
12302
|
}
|
|
12131
12303
|
],
|
|
12132
|
-
"description": "Splits a display-only shortcut hint into individual keys so each can be rendered in its\nown `<kbd>`. Keys are separated with `+` (e.g. `\"⌘+N\"` → `[\"⌘\", \"N\"]`); a shortcut with no\n`+` renders as a single key, unchanged. A literal `+` key can't be represented this way
|
|
12304
|
+
"description": "Splits a display-only shortcut hint into individual keys so each can be rendered in its\nown `<kbd>`. Keys are separated with `+` (e.g. `\"⌘+N\"` → `[\"⌘\", \"N\"]`); a shortcut with no\n`+` renders as a single key, unchanged. A literal `+` key can't be represented this way :\nspell it out instead (e.g. `\"Ctrl+Plus\"`)."
|
|
12133
12305
|
},
|
|
12134
12306
|
{
|
|
12135
12307
|
"kind": "function",
|
|
@@ -12202,14 +12374,14 @@
|
|
|
12202
12374
|
"text": "'ore-command-palette-item'"
|
|
12203
12375
|
},
|
|
12204
12376
|
"default": "'ore-command-palette-item'",
|
|
12205
|
-
"description": "A pure data node describing one command. Never rendered directly
|
|
12377
|
+
"description": "A pure data node describing one command. Never rendered directly: `ore-command-palette`\nreads its attributes/text content and renders the visible row itself."
|
|
12206
12378
|
},
|
|
12207
12379
|
{
|
|
12208
12380
|
"kind": "class",
|
|
12209
12381
|
"name": "OreCommandPaletteItemElement",
|
|
12210
12382
|
"tagName": "ore-command-palette-item",
|
|
12211
12383
|
"customElement": true,
|
|
12212
|
-
"description": "A pure data node describing one command. Never rendered directly
|
|
12384
|
+
"description": "A pure data node describing one command. Never rendered directly: `ore-command-palette`\nreads its attributes/text content and renders the visible row itself.",
|
|
12213
12385
|
"summary": "",
|
|
12214
12386
|
"attributes": [
|
|
12215
12387
|
{
|
|
@@ -12238,7 +12410,7 @@
|
|
|
12238
12410
|
"type": {
|
|
12239
12411
|
"text": "string"
|
|
12240
12412
|
},
|
|
12241
|
-
"description": "Display-only keyboard hint rendered at the end of the row, one `<kbd>` per `+`-separated key (e.g. `\"⌘+S\"` renders two keycaps; a literal `+` key isn't representable
|
|
12413
|
+
"description": "Display-only keyboard hint rendered at the end of the row, one `<kbd>` per `+`-separated key (e.g. `\"⌘+S\"` renders two keycaps; a literal `+` key isn't representable: spell it out, e.g. `\"Ctrl+Plus\"`)"
|
|
12242
12414
|
},
|
|
12243
12415
|
{
|
|
12244
12416
|
"name": "disabled",
|
|
@@ -12268,14 +12440,14 @@
|
|
|
12268
12440
|
"text": "'ore-command-palette'"
|
|
12269
12441
|
},
|
|
12270
12442
|
"default": "'ore-command-palette'",
|
|
12271
|
-
"description": "A searchable, keyboard-driven list of commands presented in a centered modal
|
|
12443
|
+
"description": "A searchable, keyboard-driven list of commands presented in a centered modal :\nthe \"⌘K\" pattern popularized by editors and productivity apps. Built on the\nnative `<dialog>` element (focus trap, top-layer stacking, `Escape`-to-close)\nand `@vielzeug/keymap` for the global shortcut that opens it."
|
|
12272
12444
|
},
|
|
12273
12445
|
{
|
|
12274
12446
|
"kind": "class",
|
|
12275
12447
|
"name": "OreCommandPaletteElement",
|
|
12276
12448
|
"tagName": "ore-command-palette",
|
|
12277
12449
|
"customElement": true,
|
|
12278
|
-
"description": "A searchable, keyboard-driven list of commands presented in a centered modal
|
|
12450
|
+
"description": "A searchable, keyboard-driven list of commands presented in a centered modal :\nthe \"⌘K\" pattern popularized by editors and productivity apps. Built on the\nnative `<dialog>` element (focus trap, top-layer stacking, `Escape`-to-close)\nand `@vielzeug/keymap` for the global shortcut that opens it.",
|
|
12279
12451
|
"summary": "",
|
|
12280
12452
|
"attributes": [
|
|
12281
12453
|
{
|