@ngrok/mantle 0.79.3 → 0.81.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/accordion.d.ts +158 -19
- package/dist/accordion.js +1 -1
- package/dist/agent.json +5 -1
- package/dist/alert-dialog.d.ts +465 -32
- package/dist/alert-dialog.js +1 -1
- package/dist/alert.d.ts +116 -14
- package/dist/alert.js +1 -1
- package/dist/anchor-DfeXTpKW.js +1 -0
- package/dist/anchor.d.ts +2 -2
- package/dist/anchor.js +1 -1
- package/dist/area-chart.d.ts +504 -0
- package/dist/area-chart.js +1 -0
- package/dist/as-child-D23mGo4f.d.ts +49 -0
- package/dist/badge.d.ts +44 -5
- package/dist/badge.js +1 -1
- package/dist/bar-chart.d.ts +491 -0
- package/dist/bar-chart.js +1 -0
- package/dist/breadcrumb.d.ts +196 -14
- package/dist/breadcrumb.js +1 -1
- package/dist/button-BAno7KIU.js +1 -0
- package/dist/{index-BSAizFod.d.ts → button-C-gMbPso.d.ts} +5 -5
- package/dist/{icon-button-BvQvT790.d.ts → button-C7vAl6lS.d.ts} +22 -63
- package/dist/button-D9n09xUg.js +1 -0
- package/dist/{button-DcXOWUYo.d.ts → button-DARFK2KJ.d.ts} +4 -4
- package/dist/button-DjpEKt2X.js +1 -0
- package/dist/button-DvHMWAPl.js +1 -0
- package/dist/button.d.ts +5 -5
- package/dist/button.js +1 -1
- package/dist/calendar.d.ts +0 -3
- package/dist/calendar.js +1 -1
- package/dist/card.d.ts +131 -9
- package/dist/card.js +1 -1
- package/dist/centered-layout.d.ts +209 -8
- package/dist/centered-layout.js +1 -1
- package/dist/chart-BROa2gqt.js +2 -0
- package/dist/chart-BcOC6Qj0.d.ts +275 -0
- package/dist/checkbox-0EoxOyMA.js +1 -0
- package/dist/checkbox.d.ts +13 -11
- package/dist/checkbox.js +1 -1
- package/dist/choice-BHwFSSyv.js +1 -0
- package/dist/choice-BNRQXszu.d.ts +254 -0
- package/dist/choice.d.ts +1 -252
- package/dist/choice.js +1 -1
- package/dist/code-block.d.ts +242 -52
- package/dist/code-block.js +6 -6
- package/dist/code-block_highlight-utils.d.ts +1 -1
- package/dist/code-block_highlight-utils.js +1 -1
- package/dist/code.d.ts +3 -2
- package/dist/code.js +1 -1
- package/dist/combobox.d.ts +171 -16
- package/dist/combobox.js +1 -1
- package/dist/command.d.ts +279 -81
- package/dist/command.js +1 -1
- package/dist/compose-refs-BdBMM9ga.js +1 -0
- package/dist/data-table.d.ts +28 -6
- package/dist/data-table.js +1 -1
- package/dist/description-list.d.ts +67 -6
- package/dist/description-list.js +1 -1
- package/dist/dialog-BM4wPCft.d.ts +24 -0
- package/dist/dialog-DWZWd5Jt.js +1 -0
- package/dist/dialog.d.ts +226 -35
- package/dist/dialog.js +1 -1
- package/dist/{dropdown-menu-DP_Ne9Mr.d.ts → dropdown-menu-DZg-Cd69.d.ts} +137 -32
- package/dist/dropdown-menu-Dw-OtXPm.d.ts +1 -0
- package/dist/dropdown-menu-RyDWoKHx.js +1 -0
- package/dist/dropdown-menu.d.ts +2 -2
- package/dist/dropdown-menu.js +1 -1
- package/dist/empty.d.ts +7 -22
- package/dist/empty.js +1 -1
- package/dist/field-B1wqeZr4.js +1 -0
- package/dist/field.d.ts +568 -47
- package/dist/field.js +1 -1
- package/dist/flag.d.ts +0 -3
- package/dist/flag.js +1 -1
- package/dist/hooks.d.ts +3 -4
- package/dist/hooks.js +1 -1
- package/dist/hover-card.d.ts +48 -7
- package/dist/hover-card.js +1 -1
- package/dist/{svg-only-BFeFS1aa.d.ts → icon-CX_gj6sW.d.ts} +2 -2
- package/dist/icon-d-nMCfAI.js +1 -0
- package/dist/{icon-Cevjo93X.d.ts → icon-k4E9yNWD.d.ts} +2 -2
- package/dist/icon-lZ48P8Nn.js +1 -0
- package/dist/icon.d.ts +3 -3
- package/dist/icon.js +1 -1
- package/dist/{sort-BPX2Fk9t.js → icons-B_DDQcVD.js} +1 -1
- package/dist/{traffic-policy-file-0g5RXFqu.js → icons-CF1lbWtp.js} +1 -1
- package/dist/icons-DLCs1hLP.js +1 -0
- package/dist/icons.d.ts +7 -15
- package/dist/icons.js +1 -1
- package/dist/{in-view-nkSOdED2.d.ts → in-view-DDEGUKDR.d.ts} +17 -9
- package/dist/{index-D47aqlpz.d.ts → index-DA4ig3gj.d.ts} +1 -1
- package/dist/input-BnlpQF0c.js +1 -0
- package/dist/{types-C19IR7jf.d.ts → input-BuYDU6CF.d.ts} +42 -2
- package/dist/input.d.ts +5 -56
- package/dist/input.js +1 -1
- package/dist/{label-v2-bv98k.d.ts → label-C6YH9skg.d.ts} +8 -6
- package/dist/label-D-D11mlp.js +1 -0
- package/dist/label.d.ts +1 -1
- package/dist/label.js +1 -1
- package/dist/line-chart.d.ts +490 -0
- package/dist/line-chart.js +1 -0
- package/dist/list-51KQvENW.js +1 -0
- package/dist/list.d.ts +135 -6
- package/dist/list.js +1 -1
- package/dist/llms.txt +5 -1
- package/dist/main.d.ts +20 -4
- package/dist/main.js +1 -1
- package/dist/mantle-dark-high-contrast.css +17 -0
- package/dist/mantle-dark.css +13 -0
- package/dist/mantle-light-high-contrast.css +15 -0
- package/dist/mantle.css +29 -0
- package/dist/media-object.d.ts +18 -4
- package/dist/media-object.js +1 -1
- package/dist/multi-select.d.ts +282 -24
- package/dist/multi-select.js +1 -1
- package/dist/otp-input.d.ts +118 -6
- package/dist/otp-input.js +1 -1
- package/dist/pagination.d.ts +61 -6
- package/dist/pagination.js +1 -1
- package/dist/popover-CE4OlWkd.d.ts +208 -0
- package/dist/popover-CQ9s7jG5.js +1 -0
- package/dist/popover.d.ts +1 -181
- package/dist/popover.js +1 -1
- package/dist/primitive-trJDqIXJ.js +1 -0
- package/dist/progress.d.ts +2 -8
- package/dist/progress.js +1 -1
- package/dist/qr-code.d.ts +101 -5
- package/dist/qr-code.js +1 -1
- package/dist/radio-group.d.ts +110 -35
- package/dist/radio-group.js +1 -1
- package/dist/sandboxed-on-click.d.ts +2 -2
- package/dist/sandboxed-on-click.js +1 -1
- package/dist/scatter-plot.d.ts +495 -0
- package/dist/scatter-plot.js +1 -0
- package/dist/select-0z7HVS6r.d.ts +579 -0
- package/dist/select-BCHWvmyC.js +1 -0
- package/dist/select.d.ts +1 -1
- package/dist/select.js +1 -1
- package/dist/selectable-list.d.ts +225 -298
- package/dist/selectable-list.js +1 -1
- package/dist/separator-B5UmkVRL.d.ts +75 -0
- package/dist/separator-bpE_kooz.js +1 -0
- package/dist/separator.d.ts +1 -52
- package/dist/separator.js +1 -1
- package/dist/sheet.d.ts +285 -38
- package/dist/sheet.js +1 -1
- package/dist/skeleton-CsbUHbBA.js +1 -0
- package/dist/skeleton.d.ts +4 -7
- package/dist/skeleton.js +1 -1
- package/dist/skip-to-main-link.d.ts +24 -4
- package/dist/skip-to-main-link.js +1 -1
- package/dist/slider.js +1 -1
- package/dist/{index-Rv8RL7xy.d.ts → slot-BtwKJTLq.d.ts} +1 -1
- package/dist/slot-CDk0Bb9z.js +1 -0
- package/dist/slot.d.ts +1 -1
- package/dist/slot.js +1 -1
- package/dist/split-button.d.ts +14 -14
- package/dist/split-button.js +1 -1
- package/dist/switch.d.ts +10 -7
- package/dist/switch.js +1 -1
- package/dist/table-Bo0vNxIJ.d.ts +848 -0
- package/dist/table-CGxJwtbL.js +1 -0
- package/dist/table.d.ts +1 -1
- package/dist/table.js +1 -1
- package/dist/tabs.d.ts +124 -25
- package/dist/tabs.js +1 -1
- package/dist/text-area.d.ts +2 -2
- package/dist/text-area.js +1 -1
- package/dist/theme-C26-Xolp.js +1 -0
- package/dist/theme-switcher.d.ts +105 -33
- package/dist/theme-switcher.js +1 -1
- package/dist/theme.d.ts +54 -15
- package/dist/theme.js +1 -1
- package/dist/toast.d.ts +86 -10
- package/dist/toast.js +1 -1
- package/dist/tooltip.d.ts +50 -5
- package/dist/tooltip.js +1 -1
- package/dist/types.d.ts +2 -2
- package/dist/utils.d.ts +1 -1
- package/dist/utils.js +1 -1
- package/dist/well.d.ts +3 -3
- package/dist/well.js +1 -1
- package/package.json +9 -3
- package/dist/anchor-C_tjSVy6.js +0 -1
- package/dist/as-child-CYEVu1WY.d.ts +0 -23
- package/dist/button-5t6-JS_I.js +0 -1
- package/dist/button-ClC60Nzg.js +0 -1
- package/dist/checkbox-DJ2xl7Rc.js +0 -1
- package/dist/choice-DOdyNzFC.js +0 -1
- package/dist/compose-refs-Cjf2gfB8.js +0 -1
- package/dist/dialog-vxLIvB8M.js +0 -1
- package/dist/dropdown-menu-Bt1aKF1g.js +0 -1
- package/dist/field-context-BR01g789.js +0 -1
- package/dist/icon-CDtYjF_H.js +0 -1
- package/dist/icon-button-DV2-GZHf.js +0 -1
- package/dist/index-g2rfwNCH.d.ts +0 -1
- package/dist/input-Ct1YOqSy.js +0 -1
- package/dist/label-BMlHW_2D.js +0 -1
- package/dist/popover-D5WxxnBY.js +0 -1
- package/dist/primitive-C64-m48O.d.ts +0 -13
- package/dist/primitive-IKruV2iB.js +0 -1
- package/dist/select-Bwt2YduR.d.ts +0 -345
- package/dist/select-D-5u0Blc.js +0 -1
- package/dist/separator-kBnnv3Cw.js +0 -1
- package/dist/skeleton-Bu3tgNcW.js +0 -1
- package/dist/slot-DmPrjM7N.js +0 -1
- package/dist/svg-only-DDx6FtJd.js +0 -1
- package/dist/table-CPH2md2-.js +0 -1
- package/dist/table-CwFHXC-G.d.ts +0 -414
- package/dist/theme-D3MDng6U.js +0 -1
- package/dist/theme-provider-C9zpDyJW.js +0 -1
- package/dist/toast-BsCjaMVS.js +0 -1
- package/dist/virtual-DZMBu7Ch.js +0 -1
- /package/dist/{sizes-BCoI4bhP.d.ts → button-BCoI4bhP.d.ts} +0 -0
- /package/dist/{intents-DdSKSj1c.d.ts → button-DdSKSj1c.d.ts} +0 -0
- /package/dist/{resolve-pre-rendered-props-B6OlZrSI.d.ts → code-block-B6OlZrSI.d.ts} +0 -0
- /package/dist/{resolve-pre-rendered-props-C9uaM9-V.js → code-block-C9uaM9-V.js} +0 -0
- /package/dist/{validation-7QeiTFwl.d.ts → field-7QeiTFwl.d.ts} +0 -0
- /package/dist/{validation-Bpptk_9t.js → field-Bpptk_9t.js} +0 -0
- /package/dist/{types-D1RY5Tcj.d.ts → icon-D1RY5Tcj.d.ts} +0 -0
- /package/dist/{is-input-CXmS0OFN.js → input-CXmS0OFN.js} +0 -0
- /package/dist/{themes-CYNpplwN.d.ts → theme-CYNpplwN.d.ts} +0 -0
package/dist/list.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { n as WithAsChild } from "./as-child-D23mGo4f.js";
|
|
2
2
|
import { CSSProperties, ComponentProps, ReactNode, Ref } from "react";
|
|
3
3
|
//#region src/components/list/primitive.d.ts
|
|
4
4
|
/**
|
|
@@ -113,6 +113,35 @@ type VirtualRootProps = ListRootProps$1 & {
|
|
|
113
113
|
* ```
|
|
114
114
|
*/
|
|
115
115
|
type ListRootProps = Omit<ListRootProps$1, "semantics" | "onActivate" | "itemId" | "isItemDisabled">;
|
|
116
|
+
/**
|
|
117
|
+
* The scrollable container for a `List`: a `role="list"` of clickable items
|
|
118
|
+
* inside the bordered, rounded `bg-popover` viewport (styled after the
|
|
119
|
+
* `MultiSelect` popover). Renders **every** item — the non-virtualized default.
|
|
120
|
+
* Compose `List.Item` children directly. **Bound its height**
|
|
121
|
+
* (`max-h-*`, `h-*`, or `min-h-0 flex-1`) so long lists scroll.
|
|
122
|
+
*
|
|
123
|
+
* Keyboard: items keep their native tab order, and `ArrowUp` / `ArrowDown` /
|
|
124
|
+
* `Home` / `End` also move focus between items (skipping disabled ones); the
|
|
125
|
+
* focused item lights up with the hover tint rather than a focus ring.
|
|
126
|
+
*
|
|
127
|
+
* For very long lists, swap in `List.VirtualRoot`, which windows the same
|
|
128
|
+
* `Item` children — the call site is otherwise identical.
|
|
129
|
+
*
|
|
130
|
+
* @see https://mantle.ngrok.com/components/data-display/list
|
|
131
|
+
*
|
|
132
|
+
* @example
|
|
133
|
+
* ```tsx
|
|
134
|
+
* <List.Root aria-label="Your accounts" className="max-h-80">
|
|
135
|
+
* {accounts.map((account) => (
|
|
136
|
+
* <List.Item key={account.id} onClick={() => switchTo(account.id)}>
|
|
137
|
+
* <List.ItemTitle>{account.name}</List.ItemTitle>
|
|
138
|
+
* <List.ItemDescription>{account.plan}</List.ItemDescription>
|
|
139
|
+
* </List.Item>
|
|
140
|
+
* ))}
|
|
141
|
+
* </List.Root>
|
|
142
|
+
* ```
|
|
143
|
+
*/
|
|
144
|
+
declare const Root: (props: ListRootProps) => import("react").JSX.Element;
|
|
116
145
|
/**
|
|
117
146
|
* Props for `List.VirtualRoot` — the internal list primitive's
|
|
118
147
|
* `VirtualRoot` props (viewport props plus `estimateItemHeight` / `overscan`),
|
|
@@ -131,6 +160,29 @@ type ListRootProps = Omit<ListRootProps$1, "semantics" | "onActivate" | "itemId"
|
|
|
131
160
|
* ```
|
|
132
161
|
*/
|
|
133
162
|
type ListVirtualRootProps = Omit<VirtualRootProps, "semantics" | "onActivate" | "itemId" | "isItemDisabled">;
|
|
163
|
+
/**
|
|
164
|
+
* The windowed counterpart to `List.Root`: renders only the visible slice
|
|
165
|
+
* of its `List.Item` children via `@tanstack/react-virtual`. Authored
|
|
166
|
+
* identically to `Root` — same `Item` children — so opting into
|
|
167
|
+
* virtualization never changes the call site. Reach for it only when a list is
|
|
168
|
+
* long enough to need it; **bound its height** so the virtualizer has a
|
|
169
|
+
* viewport to measure.
|
|
170
|
+
*
|
|
171
|
+
* @see https://mantle.ngrok.com/components/data-display/list
|
|
172
|
+
*
|
|
173
|
+
* @example
|
|
174
|
+
* ```tsx
|
|
175
|
+
* <List.VirtualRoot aria-label="Your accounts" className="max-h-80">
|
|
176
|
+
* {accounts.map((account) => (
|
|
177
|
+
* <List.Item key={account.id} onClick={() => switchTo(account.id)}>
|
|
178
|
+
* <List.ItemTitle>{account.name}</List.ItemTitle>
|
|
179
|
+
* <List.ItemDescription>{account.plan}</List.ItemDescription>
|
|
180
|
+
* </List.Item>
|
|
181
|
+
* ))}
|
|
182
|
+
* </List.VirtualRoot>
|
|
183
|
+
* ```
|
|
184
|
+
*/
|
|
185
|
+
declare const VirtualRoot: (props: ListVirtualRootProps) => import("react").JSX.Element;
|
|
134
186
|
/**
|
|
135
187
|
* Props for `List.Item`. Extends `<button>` props (minus `type`, which is fixed
|
|
136
188
|
* to `"button"`) with `asChild` and the optional `current` accent.
|
|
@@ -155,6 +207,83 @@ type ListItemProps = Omit<ComponentProps<"button">, "type"> & WithAsChild & {
|
|
|
155
207
|
*/
|
|
156
208
|
current?: boolean;
|
|
157
209
|
};
|
|
210
|
+
/**
|
|
211
|
+
* A single clickable item in a `List`. Sits inside a `role="listitem"` pill
|
|
212
|
+
* from the internal list primitive; renders a `<button>` by default (with
|
|
213
|
+
* `onClick`), or your own element via `asChild` — e.g. an `<a>` for navigation
|
|
214
|
+
* (account switching, SSO selection). The button/link fills its pill, so
|
|
215
|
+
* clicking anywhere on the item triggers it, and the pill's hover / `current`
|
|
216
|
+
* accent is provided by the enclosing listitem.
|
|
217
|
+
*
|
|
218
|
+
* @see https://mantle.ngrok.com/components/data-display/list
|
|
219
|
+
*
|
|
220
|
+
* @example
|
|
221
|
+
* ```tsx
|
|
222
|
+
* // Action items.
|
|
223
|
+
* <List.Root aria-label="Your accounts" className="max-h-80">
|
|
224
|
+
* {accounts.map((account) => (
|
|
225
|
+
* <List.Item key={account.id} onClick={() => switchTo(account.id)}>
|
|
226
|
+
* <List.ItemTitle>{account.name}</List.ItemTitle>
|
|
227
|
+
* <List.ItemDescription>{account.plan}</List.ItemDescription>
|
|
228
|
+
* </List.Item>
|
|
229
|
+
* ))}
|
|
230
|
+
* </List.Root>
|
|
231
|
+
* ```
|
|
232
|
+
*
|
|
233
|
+
* @example
|
|
234
|
+
* ```tsx
|
|
235
|
+
* // Navigation items via asChild.
|
|
236
|
+
* <List.Root aria-label="SSO providers" className="max-h-80">
|
|
237
|
+
* {providers.map((provider) => (
|
|
238
|
+
* <List.Item key={provider.id} asChild>
|
|
239
|
+
* <a href={`/sso/${provider.id}`}>
|
|
240
|
+
* <List.ItemTitle>{provider.name}</List.ItemTitle>
|
|
241
|
+
* <List.ItemDescription>{provider.domain}</List.ItemDescription>
|
|
242
|
+
* </a>
|
|
243
|
+
* </List.Item>
|
|
244
|
+
* ))}
|
|
245
|
+
* </List.Root>
|
|
246
|
+
* ```
|
|
247
|
+
*/
|
|
248
|
+
declare const Item: ({ asChild, className, current, disabled, onClick, ref, ...props }: ListItemProps) => import("react").JSX.Element;
|
|
249
|
+
/**
|
|
250
|
+
* The emphasized title line inside a `List.Item`, in the stronger foreground
|
|
251
|
+
* color. A styled `<span>`.
|
|
252
|
+
*
|
|
253
|
+
* @see https://mantle.ngrok.com/components/data-display/list
|
|
254
|
+
*
|
|
255
|
+
* @example
|
|
256
|
+
* ```tsx
|
|
257
|
+
* <List.Root aria-label="Your accounts" className="max-h-80">
|
|
258
|
+
* {accounts.map((account) => (
|
|
259
|
+
* <List.Item key={account.id} onClick={() => switchTo(account.id)}>
|
|
260
|
+
* <List.ItemTitle>{account.name}</List.ItemTitle>
|
|
261
|
+
* <List.ItemDescription>{account.plan}</List.ItemDescription>
|
|
262
|
+
* </List.Item>
|
|
263
|
+
* ))}
|
|
264
|
+
* </List.Root>
|
|
265
|
+
* ```
|
|
266
|
+
*/
|
|
267
|
+
declare const ItemTitle: ({ className, ref, ...props }: ComponentProps<"span">) => import("react").JSX.Element;
|
|
268
|
+
/**
|
|
269
|
+
* The de-emphasized sub-line inside a `List.Item`, in the muted body color. A
|
|
270
|
+
* styled `<span>`.
|
|
271
|
+
*
|
|
272
|
+
* @see https://mantle.ngrok.com/components/data-display/list
|
|
273
|
+
*
|
|
274
|
+
* @example
|
|
275
|
+
* ```tsx
|
|
276
|
+
* <List.Root aria-label="Your accounts" className="max-h-80">
|
|
277
|
+
* {accounts.map((account) => (
|
|
278
|
+
* <List.Item key={account.id} onClick={() => switchTo(account.id)}>
|
|
279
|
+
* <List.ItemTitle>{account.name}</List.ItemTitle>
|
|
280
|
+
* <List.ItemDescription>{account.plan}</List.ItemDescription>
|
|
281
|
+
* </List.Item>
|
|
282
|
+
* ))}
|
|
283
|
+
* </List.Root>
|
|
284
|
+
* ```
|
|
285
|
+
*/
|
|
286
|
+
declare const ItemDescription: ({ className, ref, ...props }: ComponentProps<"span">) => import("react").JSX.Element;
|
|
158
287
|
/**
|
|
159
288
|
* A scrollable, optionally-virtualized list of clickable items — the action /
|
|
160
289
|
* navigation counterpart to `SelectableList` (e.g. an account switcher or SSO
|
|
@@ -215,7 +344,7 @@ declare const List: {
|
|
|
215
344
|
* </List.Root>
|
|
216
345
|
* ```
|
|
217
346
|
*/
|
|
218
|
-
readonly Root:
|
|
347
|
+
readonly Root: typeof Root;
|
|
219
348
|
/**
|
|
220
349
|
* The virtualized container — windows the same `Item` children. Opt in for
|
|
221
350
|
* long lists; authored identically to `Root`.
|
|
@@ -234,7 +363,7 @@ declare const List: {
|
|
|
234
363
|
* </List.VirtualRoot>
|
|
235
364
|
* ```
|
|
236
365
|
*/
|
|
237
|
-
readonly VirtualRoot:
|
|
366
|
+
readonly VirtualRoot: typeof VirtualRoot;
|
|
238
367
|
/**
|
|
239
368
|
* A clickable item — a `<button>` by default, or your own element via
|
|
240
369
|
* `asChild` (e.g. an `<a>`). Optional `current` gives the accent treatment.
|
|
@@ -253,7 +382,7 @@ declare const List: {
|
|
|
253
382
|
* </List.Root>
|
|
254
383
|
* ```
|
|
255
384
|
*/
|
|
256
|
-
readonly Item:
|
|
385
|
+
readonly Item: typeof Item;
|
|
257
386
|
/**
|
|
258
387
|
* Emphasized title line inside a `List.Item`.
|
|
259
388
|
*
|
|
@@ -271,7 +400,7 @@ declare const List: {
|
|
|
271
400
|
* </List.Root>
|
|
272
401
|
* ```
|
|
273
402
|
*/
|
|
274
|
-
readonly ItemTitle:
|
|
403
|
+
readonly ItemTitle: typeof ItemTitle;
|
|
275
404
|
/**
|
|
276
405
|
* De-emphasized sub-line inside a `List.Item`.
|
|
277
406
|
*
|
|
@@ -289,7 +418,7 @@ declare const List: {
|
|
|
289
418
|
* </List.Root>
|
|
290
419
|
* ```
|
|
291
420
|
*/
|
|
292
|
-
readonly ItemDescription:
|
|
421
|
+
readonly ItemDescription: typeof ItemDescription;
|
|
293
422
|
};
|
|
294
423
|
//#endregion
|
|
295
424
|
export { List, type ListItemProps, type ListRootProps, type ListVirtualRootProps };
|
package/dist/list.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{t as e}from"./cx-IiQEAKf5.js";import{t}from"./slot-
|
|
1
|
+
import{t as e}from"./cx-IiQEAKf5.js";import{t}from"./slot-CDk0Bb9z.js";import{n,r,t as i}from"./list-51KQvENW.js";import{jsx as a}from"react/jsx-runtime";const o={Root:e=>a(r,{semantics:`list`,...e}),VirtualRoot:e=>a(i,{semantics:`list`,...e}),Item:({asChild:r,className:i,current:o,disabled:s,onClick:c,ref:l,...u})=>a(n,{selected:o,disabled:s,children:a(r?t:`button`,{ref:l,"data-slot":`list-item-control`,"aria-current":o||void 0,...r?{"aria-disabled":s||void 0,tabIndex:s?-1:void 0}:{type:`button`,disabled:s},onClick:e=>{if(r&&s){e.preventDefault(),e.stopPropagation();return}c?.(e)},className:e(`flex w-full cursor-pointer flex-col gap-0.5 rounded-md bg-transparent px-2 py-1.5 text-left text-sm`,`disabled:cursor-default disabled:opacity-50 aria-disabled:cursor-default aria-disabled:opacity-50 aria-disabled:pointer-events-none`,`focus-visible:outline-hidden`,i),...u,onClickCapture:r&&s?e=>{e.preventDefault(),e.stopPropagation()}:u.onClickCapture})}),ItemTitle:({className:t,ref:n,...r})=>a(`span`,{ref:n,"data-slot":`list-item-title`,className:e(`text-strong font-medium`,t),...r}),ItemDescription:({className:t,ref:n,...r})=>a(`span`,{ref:n,"data-slot":`list-item-description`,className:e(`text-body leading-4`,t),...r})};export{o as List};
|
package/dist/llms.txt
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# @ngrok/mantle (0.
|
|
1
|
+
# @ngrok/mantle (0.81.0)
|
|
2
2
|
|
|
3
3
|
> Offline discovery hint shipped inside the @ngrok/mantle npm package. Authoritative metadata lives at https://mantle.ngrok.com/for-ai-agents.
|
|
4
4
|
|
|
@@ -23,7 +23,9 @@ Full text: https://mantle.ngrok.com/llms-full.txt
|
|
|
23
23
|
- `@ngrok/mantle/alert`
|
|
24
24
|
- `@ngrok/mantle/alert-dialog`
|
|
25
25
|
- `@ngrok/mantle/anchor`
|
|
26
|
+
- `@ngrok/mantle/area-chart`
|
|
26
27
|
- `@ngrok/mantle/badge`
|
|
28
|
+
- `@ngrok/mantle/bar-chart`
|
|
27
29
|
- `@ngrok/mantle/breadcrumb`
|
|
28
30
|
- `@ngrok/mantle/browser-only`
|
|
29
31
|
- `@ngrok/mantle/button`
|
|
@@ -53,6 +55,7 @@ Full text: https://mantle.ngrok.com/llms-full.txt
|
|
|
53
55
|
- `@ngrok/mantle/input`
|
|
54
56
|
- `@ngrok/mantle/kbd`
|
|
55
57
|
- `@ngrok/mantle/label`
|
|
58
|
+
- `@ngrok/mantle/line-chart`
|
|
56
59
|
- `@ngrok/mantle/list`
|
|
57
60
|
- `@ngrok/mantle/main`
|
|
58
61
|
- `@ngrok/mantle/media-object`
|
|
@@ -64,6 +67,7 @@ Full text: https://mantle.ngrok.com/llms-full.txt
|
|
|
64
67
|
- `@ngrok/mantle/qr-code`
|
|
65
68
|
- `@ngrok/mantle/radio-group`
|
|
66
69
|
- `@ngrok/mantle/sandboxed-on-click`
|
|
70
|
+
- `@ngrok/mantle/scatter-plot`
|
|
67
71
|
- `@ngrok/mantle/select`
|
|
68
72
|
- `@ngrok/mantle/selectable-list`
|
|
69
73
|
- `@ngrok/mantle/separator`
|
package/dist/main.d.ts
CHANGED
|
@@ -1,8 +1,24 @@
|
|
|
1
1
|
import { ComponentProps } from "react";
|
|
2
2
|
//#region src/components/main/main.d.ts
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
3
|
+
/**
|
|
4
|
+
* A focusable `<main>` landmark for the page's primary content. Renders with
|
|
5
|
+
* `id="main"` and `tabIndex={-1}` so a skip link (or any programmatic focus
|
|
6
|
+
* call) can send keyboard users directly to the main content without exposing
|
|
7
|
+
* a visible focus ring on the region itself (`focus:outline-hidden`).
|
|
8
|
+
*
|
|
9
|
+
* Pair with the `<SkipToMainLink>` component at the top of the document.
|
|
10
|
+
*
|
|
11
|
+
* @see https://mantle.ngrok.com/components/primitives/main
|
|
12
|
+
*
|
|
13
|
+
* @example
|
|
14
|
+
* ```tsx
|
|
15
|
+
* <SkipToMainLink />
|
|
16
|
+
* <Header />
|
|
17
|
+
* <Main>
|
|
18
|
+
* <h1>Page title</h1>
|
|
19
|
+
* </Main>
|
|
20
|
+
* ```
|
|
21
|
+
*/
|
|
22
|
+
declare const Main: ({ className, ...props }: ComponentProps<"main">) => import("react").JSX.Element;
|
|
7
23
|
//#endregion
|
|
8
24
|
export { Main };
|
package/dist/main.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{t as e}from"./cx-IiQEAKf5.js";import{jsx as t}from"react/jsx-runtime";const n=({className:n,...r})=>t(`main`,{...r,"data-slot":`main`,id:`main`,tabIndex:-1,className:e(`focus:outline-hidden`,n)});
|
|
1
|
+
import{t as e}from"./cx-IiQEAKf5.js";import{jsx as t}from"react/jsx-runtime";const n=({className:n,...r})=>t(`main`,{...r,"data-slot":`main`,id:`main`,tabIndex:-1,className:e(`focus:outline-hidden`,n)});export{n as Main};
|
|
@@ -284,6 +284,23 @@ MARK: DARK HICON DEFS
|
|
|
284
284
|
--color-selected-menu-item: var(--color-accent-50);
|
|
285
285
|
--color-active-selected-menu-item: var(--color-accent-100);
|
|
286
286
|
|
|
287
|
+
/* Chart series tokens — dark-high-contrast picks validated against the card
|
|
288
|
+
surface (#121212): CVD adjacency (worst ΔE 9.6), normal-vision floor
|
|
289
|
+
(15.1), chroma, and contrast (6.76:1–12.23:1, zero warns) all pass. The
|
|
290
|
+
standard dark lightness band (L ≤ 0.67) is unsatisfiable by construction
|
|
291
|
+
in this theme — its ramps are bimodal around the band, and every in-band
|
|
292
|
+
step fails 3:1 contrast — so these deliberately brighter marks are the
|
|
293
|
+
correct high-contrast trade-off. */
|
|
294
|
+
--color-chart-1: var(--color-blue-300);
|
|
295
|
+
--color-chart-2: var(--color-green-300);
|
|
296
|
+
--color-chart-3: var(--color-pink-600);
|
|
297
|
+
--color-chart-4: var(--color-red-300);
|
|
298
|
+
--color-chart-5: var(--color-teal-300);
|
|
299
|
+
--color-chart-6: var(--color-orange-300);
|
|
300
|
+
--color-chart-7: var(--color-violet-300);
|
|
301
|
+
--color-chart-8: var(--color-yellow-300);
|
|
302
|
+
--color-chart-other: var(--color-neutral-500);
|
|
303
|
+
|
|
287
304
|
--text-color-strong: var(--color-black);
|
|
288
305
|
--text-color-body: var(--color-neutral-950);
|
|
289
306
|
--text-color-muted: --alpha(var(--color-black) / 0.75);
|
package/dist/mantle-dark.css
CHANGED
|
@@ -313,6 +313,19 @@ MARK: DARK DEFS
|
|
|
313
313
|
--color-card-border-muted: var(--color-neutral-200);
|
|
314
314
|
--color-separator: --alpha(var(--color-gray-600) / 0.2);
|
|
315
315
|
|
|
316
|
+
/* Chart series tokens — dark picks validated against the dark card surface
|
|
317
|
+
(neutral-100). Dark ramps mirror light (step N = light step 1000−N), so each
|
|
318
|
+
slot resolves to the same color as its light twin while staying on-token. */
|
|
319
|
+
--color-chart-1: var(--color-blue-500);
|
|
320
|
+
--color-chart-2: var(--color-green-300);
|
|
321
|
+
--color-chart-3: var(--color-pink-500);
|
|
322
|
+
--color-chart-4: var(--color-red-400);
|
|
323
|
+
--color-chart-5: var(--color-teal-400);
|
|
324
|
+
--color-chart-6: var(--color-orange-400);
|
|
325
|
+
--color-chart-7: var(--color-violet-500);
|
|
326
|
+
--color-chart-8: var(--color-yellow-300);
|
|
327
|
+
--color-chart-other: var(--color-neutral-500);
|
|
328
|
+
|
|
316
329
|
--text-color-strong: #fff;
|
|
317
330
|
--text-color-body: --alpha(#fff / 0.7);
|
|
318
331
|
--text-color-muted: --alpha(#fff / 0.5);
|
|
@@ -283,6 +283,21 @@ MARK: LIGHT HICON DEFS
|
|
|
283
283
|
--color-selected-menu-item: var(--color-accent-50);
|
|
284
284
|
--color-active-selected-menu-item: var(--color-accent-100);
|
|
285
285
|
|
|
286
|
+
/* Chart series tokens — light-high-contrast picks validated against the white
|
|
287
|
+
card surface: all gates pass (worst adjacent CVD ΔE 11.6, normal-vision
|
|
288
|
+
floor 18.3, all slots ≥ 3.65:1). Pink and teal use the 300 step here (the
|
|
289
|
+
only steps clearing the chroma floor and adjacency gates in this theme's
|
|
290
|
+
compressed ramps); every other slot matches the base light picks. */
|
|
291
|
+
--color-chart-1: var(--color-blue-500);
|
|
292
|
+
--color-chart-2: var(--color-green-700);
|
|
293
|
+
--color-chart-3: var(--color-pink-300);
|
|
294
|
+
--color-chart-4: var(--color-red-600);
|
|
295
|
+
--color-chart-5: var(--color-teal-300);
|
|
296
|
+
--color-chart-6: var(--color-orange-600);
|
|
297
|
+
--color-chart-7: var(--color-violet-500);
|
|
298
|
+
--color-chart-8: var(--color-yellow-700);
|
|
299
|
+
--color-chart-other: var(--color-neutral-500);
|
|
300
|
+
|
|
286
301
|
--text-color-strong: var(--color-black);
|
|
287
302
|
--text-color-body: var(--color-neutral-950);
|
|
288
303
|
--text-color-muted: --alpha(var(--color-black) / 0.75);
|
package/dist/mantle.css
CHANGED
|
@@ -260,6 +260,21 @@ MARK: THEME
|
|
|
260
260
|
--ring-color-focus-danger: var(--ring-color-focus-danger);
|
|
261
261
|
--ring-color-focus-warning: var(--ring-color-focus-warning);
|
|
262
262
|
--ring-color-focus-success: var(--ring-color-focus-success);
|
|
263
|
+
|
|
264
|
+
/* Chart series tokens — an ordered categorical palette for data visualization.
|
|
265
|
+
Each theme file picks the ramp step that passes the palette validation gates
|
|
266
|
+
(CVD-safe adjacency, normal-vision floor, >= 3:1 contrast on the card surface)
|
|
267
|
+
for that theme. Assign slots to series in order and never re-assign a series'
|
|
268
|
+
slot when others are filtered out; series beyond 8 use --color-chart-other. */
|
|
269
|
+
--color-chart-1: var(--color-chart-1);
|
|
270
|
+
--color-chart-2: var(--color-chart-2);
|
|
271
|
+
--color-chart-3: var(--color-chart-3);
|
|
272
|
+
--color-chart-4: var(--color-chart-4);
|
|
273
|
+
--color-chart-5: var(--color-chart-5);
|
|
274
|
+
--color-chart-6: var(--color-chart-6);
|
|
275
|
+
--color-chart-7: var(--color-chart-7);
|
|
276
|
+
--color-chart-8: var(--color-chart-8);
|
|
277
|
+
--color-chart-other: var(--color-chart-other);
|
|
263
278
|
}
|
|
264
279
|
|
|
265
280
|
/**
|
|
@@ -348,6 +363,20 @@ MARK: LIGHT DEFS
|
|
|
348
363
|
--color-selected-menu-item: --alpha(var(--color-accent-500) / 0.1);
|
|
349
364
|
--color-active-selected-menu-item: --alpha(var(--color-accent-500) / 0.15);
|
|
350
365
|
|
|
366
|
+
/* Chart series tokens — light picks validated against the white card surface:
|
|
367
|
+
worst adjacent CVD ΔE 14.0 (target ≥ 8), normal-vision floor 15.7 (≥ 15),
|
|
368
|
+
all slots ≥ 3:1 contrast. Semantic ramps (sky/emerald/rose/amber/purple) are
|
|
369
|
+
deliberately excluded so a series never impersonates a status color. */
|
|
370
|
+
--color-chart-1: var(--color-blue-500);
|
|
371
|
+
--color-chart-2: var(--color-green-700);
|
|
372
|
+
--color-chart-3: var(--color-pink-500);
|
|
373
|
+
--color-chart-4: var(--color-red-600);
|
|
374
|
+
--color-chart-5: var(--color-teal-600);
|
|
375
|
+
--color-chart-6: var(--color-orange-600);
|
|
376
|
+
--color-chart-7: var(--color-violet-500);
|
|
377
|
+
--color-chart-8: var(--color-yellow-700);
|
|
378
|
+
--color-chart-other: var(--color-neutral-500);
|
|
379
|
+
|
|
351
380
|
--text-color-strong: var(--color-neutral-950);
|
|
352
381
|
--text-color-body: --alpha(var(--color-neutral-950) / 0.75);
|
|
353
382
|
--text-color-muted: --alpha(var(--color-neutral-950) / 0.6);
|
package/dist/media-object.d.ts
CHANGED
|
@@ -1,7 +1,21 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { n as WithAsChild } from "./as-child-D23mGo4f.js";
|
|
2
2
|
import { ComponentProps } from "react";
|
|
3
3
|
//#region src/components/media-object/media-object.d.ts
|
|
4
4
|
type Props = ComponentProps<"div"> & WithAsChild;
|
|
5
|
+
/**
|
|
6
|
+
* The media object is an image/icon (media) to the left, with descriptive
|
|
7
|
+
* content (title and subtitle/description) to the right. This is the root
|
|
8
|
+
* component of the media object.
|
|
9
|
+
*/
|
|
10
|
+
declare const Root: ({ asChild, className, children, style, ref }: Props) => import("react").JSX.Element;
|
|
11
|
+
/**
|
|
12
|
+
* The container for an image or icon to display in the media slot of the media object.
|
|
13
|
+
*/
|
|
14
|
+
declare const Media: ({ asChild, className, children, style, ref }: Props) => import("react").JSX.Element;
|
|
15
|
+
/**
|
|
16
|
+
* The container for the content slot of a media object.
|
|
17
|
+
*/
|
|
18
|
+
declare const Content: ({ asChild, className, children, style, ref }: Props) => import("react").JSX.Element;
|
|
5
19
|
/**
|
|
6
20
|
* A small, reusable layout primitive for "image/icon on one side,
|
|
7
21
|
* descriptive content on the other" — the foundational
|
|
@@ -81,7 +95,7 @@ declare const MediaObject: {
|
|
|
81
95
|
* </MediaObject.Root>
|
|
82
96
|
* ```
|
|
83
97
|
*/
|
|
84
|
-
readonly Root:
|
|
98
|
+
readonly Root: typeof Root;
|
|
85
99
|
/**
|
|
86
100
|
* The container for an image or icon to display in the media slot of the media object.
|
|
87
101
|
*
|
|
@@ -99,7 +113,7 @@ declare const MediaObject: {
|
|
|
99
113
|
* </MediaObject.Root>
|
|
100
114
|
* ```
|
|
101
115
|
*/
|
|
102
|
-
readonly Media:
|
|
116
|
+
readonly Media: typeof Media;
|
|
103
117
|
/**
|
|
104
118
|
* The container for the content slot of a media object.
|
|
105
119
|
*
|
|
@@ -117,7 +131,7 @@ declare const MediaObject: {
|
|
|
117
131
|
* </MediaObject.Root>
|
|
118
132
|
* ```
|
|
119
133
|
*/
|
|
120
|
-
readonly Content:
|
|
134
|
+
readonly Content: typeof Content;
|
|
121
135
|
};
|
|
122
136
|
//#endregion
|
|
123
137
|
export { MediaObject };
|
package/dist/media-object.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{t as e}from"./cx-IiQEAKf5.js";import{t}from"./slot-
|
|
1
|
+
import{t as e}from"./cx-IiQEAKf5.js";import{t}from"./slot-CDk0Bb9z.js";import{jsx as n}from"react/jsx-runtime";const r={Root:({asChild:r=!1,className:i,children:a,style:o,ref:s})=>n(r?t:`div`,{ref:s,"data-slot":`media-object`,className:e(`flex gap-4`,i),style:o,children:a}),Media:({asChild:r=!1,className:i,children:a,style:o,ref:s})=>n(r?t:`div`,{ref:s,"data-slot":`media-object-media`,className:e(`shrink-0 leading-none`,i),style:o,children:a}),Content:({asChild:r=!1,className:i,children:a,style:o,ref:s})=>n(r?t:`div`,{ref:s,"data-slot":`media-object-content`,className:e(`min-w-0 flex-1`,i),style:o,children:a})};export{r as MediaObject};
|