neba 1.13.0 → 1.15.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/README.md +22 -30
- package/dist/a2ui/catalog.json +1466 -0
- package/dist/a2ui/components.d.ts +21 -0
- package/dist/a2ui/components.js +1 -0
- package/dist/a2ui/index.d.ts +62 -0
- package/dist/a2ui/index.js +1 -0
- package/dist/a2ui/schema.d.ts +47 -0
- package/dist/a2ui/schema.js +1 -0
- package/dist/components/accordion/Accordion.d.ts +5 -1
- package/dist/components/accordion/Accordion.js +1 -1
- package/dist/components/agent-steps/AgentSteps.d.ts +80 -0
- package/dist/components/agent-steps/AgentSteps.js +1 -0
- package/dist/components/agent-steps/index.d.ts +2 -0
- package/dist/components/agent-steps/index.js +1 -0
- package/dist/components/alert/Alert.js +1 -1
- package/dist/components/anchor/Anchor.d.ts +3 -2
- package/dist/components/anchor/Anchor.js +1 -1
- package/dist/components/animate-appear/AnimateAppear.js +1 -1
- package/dist/components/animate-blink/AnimateBlink.d.ts +3 -0
- package/dist/components/animate-blink/AnimateBlink.js +1 -1
- package/dist/components/animate-counter/AnimateCounter.d.ts +3 -1
- package/dist/components/animate-counter/AnimateCounter.js +1 -1
- package/dist/components/animate-fade/AnimateFade.js +1 -1
- package/dist/components/animate-float/AnimateFloat.js +1 -1
- package/dist/components/animate-grow/AnimateGrow.js +1 -1
- package/dist/components/animate-headline/AnimateHeadline.d.ts +9 -2
- package/dist/components/animate-headline/AnimateHeadline.js +1 -1
- package/dist/components/animate-lighting/AnimateLighting.d.ts +1 -1
- package/dist/components/animate-lighting/AnimateLighting.js +1 -1
- package/dist/components/animate-marquee/AnimateMarquee.d.ts +15 -6
- package/dist/components/animate-marquee/AnimateMarquee.js +1 -1
- package/dist/components/animate-reveal/AnimateReveal.js +1 -1
- package/dist/components/animate-rotate/AnimateRotate.js +1 -1
- package/dist/components/animate-scramble/AnimateScramble.d.ts +5 -3
- package/dist/components/animate-scramble/AnimateScramble.js +1 -1
- package/dist/components/animate-shake/AnimateShake.js +1 -1
- package/dist/components/animate-slide/AnimateSlide.js +1 -1
- package/dist/components/animate-split/AnimateSplit.d.ts +3 -1
- package/dist/components/animate-split/AnimateSplit.js +1 -1
- package/dist/components/animate-typing/AnimateTyping.d.ts +12 -4
- package/dist/components/animate-typing/AnimateTyping.js +1 -1
- package/dist/components/animate-zoom/AnimateZoom.js +1 -1
- package/dist/components/app-logo/AppLogo.js +1 -1
- package/dist/components/approval/Approval.d.ts +115 -0
- package/dist/components/approval/Approval.js +1 -0
- package/dist/components/approval/index.d.ts +2 -0
- package/dist/components/approval/index.js +1 -0
- package/dist/components/area-chart/AreaChart.js +1 -1
- package/dist/components/aspect-ratio/AspectRatio.d.ts +6 -4
- package/dist/components/aspect-ratio/AspectRatio.js +1 -1
- package/dist/components/avatar/Avatar.js +1 -1
- package/dist/components/badge/Badge.js +1 -1
- package/dist/components/bar-chart/BarChart.d.ts +1 -1
- package/dist/components/bar-chart/BarChart.js +1 -1
- package/dist/components/blockquote/Blockquote.js +1 -1
- package/dist/components/bottom-navigation/BottomNavigation.d.ts +2 -1
- package/dist/components/bottom-navigation/BottomNavigation.js +1 -1
- package/dist/components/box/Box.d.ts +5 -0
- package/dist/components/box/Box.js +1 -1
- package/dist/components/breadcrumb/Breadcrumb.d.ts +10 -0
- package/dist/components/breadcrumb/Breadcrumb.js +1 -1
- package/dist/components/button/Button.d.ts +11 -0
- package/dist/components/button/Button.js +1 -1
- package/dist/components/button-group/ButtonGroup.js +1 -1
- package/dist/components/calendar/Calendar.js +1 -1
- package/dist/components/card/Card.js +1 -1
- package/dist/components/carousel/Carousel.d.ts +4 -0
- package/dist/components/carousel/Carousel.js +1 -1
- package/dist/components/chat-bubble/ChatBubble.js +1 -1
- package/dist/components/checkbox/Checkbox.js +1 -1
- package/dist/components/chip/Chip.d.ts +3 -1
- package/dist/components/chip/Chip.js +1 -1
- package/dist/components/code-block/CodeBlock.d.ts +6 -3
- package/dist/components/code-block/CodeBlock.js +1 -1
- package/dist/components/collapsible/Collapsible.d.ts +11 -1
- package/dist/components/collapsible/Collapsible.js +1 -1
- package/dist/components/color-picker/ColorPicker.js +1 -1
- package/dist/components/combobox/Combobox.d.ts +11 -1
- package/dist/components/combobox/Combobox.js +1 -1
- package/dist/components/command-palette/CommandPalette.js +1 -1
- package/dist/components/confirm/Confirm.js +1 -1
- package/dist/components/container/Container.js +1 -1
- package/dist/components/context-window/ContextWindow.d.ts +103 -0
- package/dist/components/context-window/ContextWindow.js +1 -0
- package/dist/components/context-window/index.d.ts +2 -0
- package/dist/components/context-window/index.js +1 -0
- package/dist/components/data-list/DataList.js +1 -1
- package/dist/components/data-table/DataTable.d.ts +12 -1
- package/dist/components/data-table/DataTable.js +1 -1
- package/dist/components/date-picker/DatePicker.js +1 -1
- package/dist/components/date-range-picker/DateRangePicker.js +1 -1
- package/dist/components/date-time-picker/DateTimePicker.js +1 -1
- package/dist/components/dialog/Dialog.d.ts +12 -0
- package/dist/components/dialog/Dialog.js +1 -1
- package/dist/components/divider/Divider.js +1 -1
- package/dist/components/drawer/Drawer.d.ts +7 -0
- package/dist/components/drawer/Drawer.js +1 -1
- package/dist/components/empty/Empty.js +1 -1
- package/dist/components/fieldset/Fieldset.js +1 -1
- package/dist/components/file-picker/FilePicker.d.ts +12 -4
- package/dist/components/file-picker/FilePicker.js +1 -1
- package/dist/components/flex/Flex.d.ts +8 -2
- package/dist/components/flex/Flex.js +1 -1
- package/dist/components/floating-action-button/FloatingActionButton.d.ts +16 -1
- package/dist/components/floating-action-button/FloatingActionButton.js +1 -1
- package/dist/components/floating-bottom-navigation/FloatingBottomNavigation.js +1 -1
- package/dist/components/footer/Footer.d.ts +8 -0
- package/dist/components/footer/Footer.js +1 -1
- package/dist/components/form/Form.d.ts +4 -2
- package/dist/components/form/Form.js +1 -1
- package/dist/components/gallery/Gallery.d.ts +56 -3
- package/dist/components/gallery/Gallery.js +1 -1
- package/dist/components/gallery/GalleryViewer.js +1 -1
- package/dist/components/gauge-chart/GaugeChart.js +1 -1
- package/dist/components/grid/Grid.js +1 -1
- package/dist/components/grid-container/GridContainer.js +1 -1
- package/dist/components/header/Header.js +1 -1
- package/dist/components/heatmap-chart/HeatmapChart.js +1 -1
- package/dist/components/highlight/Highlight.js +1 -1
- package/dist/components/how-to-steps/HowToSteps.d.ts +26 -1
- package/dist/components/how-to-steps/HowToSteps.js +1 -1
- package/dist/components/icon/Icon.js +1 -1
- package/dist/components/icon-button/IconButton.d.ts +0 -20
- package/dist/components/icon-button/IconButton.js +1 -1
- package/dist/components/image/Image.d.ts +137 -11
- package/dist/components/image/Image.js +1 -1
- package/dist/components/image/index.d.ts +1 -1
- package/dist/components/inline-citation/InlineCitation.d.ts +53 -0
- package/dist/components/inline-citation/InlineCitation.js +1 -0
- package/dist/components/inline-citation/index.d.ts +2 -0
- package/dist/components/inline-citation/index.js +1 -0
- package/dist/components/list/List.js +1 -1
- package/dist/components/menu/Menu.d.ts +7 -4
- package/dist/components/menu/Menu.js +1 -1
- package/dist/components/menubar/Menubar.js +1 -1
- package/dist/components/meter/Meter.d.ts +6 -0
- package/dist/components/meter/Meter.js +1 -1
- package/dist/components/mockup/Mockup.js +1 -1
- package/dist/components/navigation-menu/NavigationMenu.d.ts +10 -1
- package/dist/components/navigation-menu/NavigationMenu.js +1 -1
- package/dist/components/number-field/NumberField.d.ts +20 -6
- package/dist/components/number-field/NumberField.js +1 -1
- package/dist/components/otp-field/OtpField.d.ts +7 -0
- package/dist/components/otp-field/OtpField.js +1 -1
- package/dist/components/overlay/Overlay.d.ts +1 -1
- package/dist/components/overlay/Overlay.js +1 -1
- package/dist/components/page-layout/PageLayout.d.ts +11 -0
- package/dist/components/page-layout/PageLayout.js +1 -1
- package/dist/components/pagination/Pagination.js +1 -1
- package/dist/components/panes/Panes.d.ts +11 -0
- package/dist/components/panes/Panes.js +1 -1
- package/dist/components/pie-chart/PieChart.d.ts +5 -3
- package/dist/components/pie-chart/PieChart.js +1 -1
- package/dist/components/pill/Pill.d.ts +8 -0
- package/dist/components/pill/Pill.js +1 -1
- package/dist/components/popconfirm/Popconfirm.d.ts +10 -3
- package/dist/components/popconfirm/Popconfirm.js +1 -1
- package/dist/components/popover/Popover.d.ts +8 -1
- package/dist/components/popover/Popover.js +1 -1
- package/dist/components/portal/Portal.js +1 -1
- package/dist/components/progress-box/ProgressBox.js +1 -1
- package/dist/components/progress-circular/ProgressCircular.js +1 -1
- package/dist/components/progress-linear/ProgressLinear.js +1 -1
- package/dist/components/prompt-input/PromptInput.d.ts +104 -0
- package/dist/components/prompt-input/PromptInput.js +1 -0
- package/dist/components/prompt-input/index.d.ts +2 -0
- package/dist/components/prompt-input/index.js +1 -0
- package/dist/components/provider/NebaProvider.d.ts +3 -3
- package/dist/components/provider/NebaProvider.js +1 -1
- package/dist/components/radio-group/RadioGroup.js +1 -1
- package/dist/components/rating/Rating.d.ts +4 -1
- package/dist/components/rating/Rating.js +1 -1
- package/dist/components/reasoning/Reasoning.d.ts +78 -0
- package/dist/components/reasoning/Reasoning.js +1 -0
- package/dist/components/reasoning/index.d.ts +2 -0
- package/dist/components/reasoning/index.js +1 -0
- package/dist/components/scatter-chart/ScatterChart.js +1 -1
- package/dist/components/scroll-area/ScrollArea.js +1 -1
- package/dist/components/scroll-zone/ScrollZone.d.ts +10 -0
- package/dist/components/scroll-zone/ScrollZone.js +1 -1
- package/dist/components/segmented-button/SegmentedButton.js +1 -1
- package/dist/components/select/Select.js +1 -1
- package/dist/components/shortcut/Shortcut.js +1 -1
- package/dist/components/show/Show.d.ts +6 -5
- package/dist/components/show/Show.js +1 -1
- package/dist/components/sidebar/Sidebar.d.ts +7 -5
- package/dist/components/sidebar/Sidebar.js +1 -1
- package/dist/components/sidebar/SidebarTrigger.js +1 -1
- package/dist/components/skeleton/Skeleton.d.ts +1 -1
- package/dist/components/skeleton/Skeleton.js +1 -1
- package/dist/components/slider/Slider.d.ts +13 -1
- package/dist/components/slider/Slider.js +1 -1
- package/dist/components/sources/Sources.d.ts +78 -0
- package/dist/components/sources/Sources.js +1 -0
- package/dist/components/sources/index.d.ts +2 -0
- package/dist/components/sources/index.js +1 -0
- package/dist/components/sparkline/Sparkline.js +1 -1
- package/dist/components/spoiler/Spoiler.js +1 -1
- package/dist/components/stack/Stack.d.ts +2 -2
- package/dist/components/stack/Stack.js +1 -1
- package/dist/components/statistic/Statistic.js +1 -1
- package/dist/components/streaming-text/StreamingText.d.ts +75 -0
- package/dist/components/streaming-text/StreamingText.js +1 -0
- package/dist/components/streaming-text/index.d.ts +2 -0
- package/dist/components/streaming-text/index.js +1 -0
- package/dist/components/switch/Switch.js +1 -1
- package/dist/components/table/Table.d.ts +8 -2
- package/dist/components/table/Table.js +1 -1
- package/dist/components/tabs/Tabs.js +1 -1
- package/dist/components/text-field/TextField.js +1 -1
- package/dist/components/text-link/TextLink.js +1 -1
- package/dist/components/time-picker/TimePicker.js +1 -1
- package/dist/components/timeline/Timeline.d.ts +8 -0
- package/dist/components/timeline/Timeline.js +1 -1
- package/dist/components/timeline-chart/TimelineChart.js +1 -1
- package/dist/components/toast/Toast.d.ts +9 -3
- package/dist/components/toast/Toast.js +1 -1
- package/dist/components/toggle/Toggle.js +1 -1
- package/dist/components/toggle-group/ToggleGroup.js +1 -1
- package/dist/components/tool-call/ToolCall.d.ts +104 -0
- package/dist/components/tool-call/ToolCall.js +1 -0
- package/dist/components/tool-call/index.d.ts +2 -0
- package/dist/components/tool-call/index.js +1 -0
- package/dist/components/toolbar/Toolbar.d.ts +8 -0
- package/dist/components/toolbar/Toolbar.js +1 -1
- package/dist/components/tooltip/Tooltip.js +1 -1
- package/dist/components/tour/Tour.d.ts +2 -0
- package/dist/components/tour/Tour.js +1 -1
- package/dist/components/transfer/Transfer.js +1 -1
- package/dist/components/tree-select/TreeSelect.js +1 -1
- package/dist/components/tree-view/TreeView.d.ts +6 -0
- package/dist/components/tree-view/TreeView.js +1 -1
- package/dist/components/typography/Typography.js +1 -1
- package/dist/components/visually-hidden/VisuallyHidden.d.ts +9 -7
- package/dist/components/visually-hidden/VisuallyHidden.js +1 -1
- package/dist/components/window-pane/WindowPane.d.ts +2 -2
- package/dist/components/window-pane/WindowPane.js +1 -1
- package/dist/hooks/useElementSize.d.ts +3 -1
- package/dist/hooks/useElementSize.js +1 -1
- package/dist/hooks/useOnScreen.d.ts +3 -0
- package/dist/hooks/useOnScreen.js +1 -1
- package/dist/index.d.ts +9 -0
- package/dist/index.js +1 -1
- package/dist/internal/animate.d.ts +63 -16
- package/dist/internal/animate.js +1 -1
- package/dist/internal/calendar.d.ts +6 -1
- package/dist/internal/calendar.js +1 -1
- package/dist/internal/chart-frame.d.ts +64 -22
- package/dist/internal/chart-frame.js +1 -1
- package/dist/internal/chart-line.js +1 -1
- package/dist/internal/chart.d.ts +55 -4
- package/dist/internal/chart.js +1 -1
- package/dist/internal/children.d.ts +15 -0
- package/dist/internal/children.js +1 -0
- package/dist/internal/color.d.ts +4 -0
- package/dist/internal/color.js +1 -1
- package/dist/internal/csv.d.ts +12 -1
- package/dist/internal/csv.js +1 -1
- package/dist/internal/data-table.d.ts +28 -10
- package/dist/internal/data-table.js +1 -1
- package/dist/internal/date.d.ts +12 -5
- package/dist/internal/date.js +1 -1
- package/dist/internal/defaults.d.ts +6 -1
- package/dist/internal/defaults.js +1 -1
- package/dist/internal/drag.d.ts +13 -1
- package/dist/internal/drag.js +1 -1
- package/dist/internal/drop.d.ts +61 -0
- package/dist/internal/drop.js +1 -0
- package/dist/internal/fieldset.d.ts +13 -0
- package/dist/internal/fieldset.js +1 -0
- package/dist/internal/glow.d.ts +58 -0
- package/dist/internal/glow.js +1 -0
- package/dist/internal/highlight.js +1 -1
- package/dist/internal/i18n.d.ts +230 -11
- package/dist/internal/i18n.js +1 -1
- package/dist/internal/icons.d.ts +13 -2
- package/dist/internal/icons.js +1 -1
- package/dist/internal/inert.d.ts +13 -0
- package/dist/internal/inert.js +1 -0
- package/dist/internal/initials.d.ts +8 -3
- package/dist/internal/initials.js +1 -1
- package/dist/internal/keys.d.ts +13 -0
- package/dist/internal/keys.js +1 -1
- package/dist/internal/link.d.ts +13 -15
- package/dist/internal/link.js +1 -1
- package/dist/internal/media.d.ts +9 -17
- package/dist/internal/media.js +1 -1
- package/dist/internal/menu.d.ts +6 -1
- package/dist/internal/mockup.d.ts +5 -4
- package/dist/internal/mockup.js +1 -1
- package/dist/internal/observe.d.ts +12 -0
- package/dist/internal/observe.js +1 -1
- package/dist/internal/page-layout.d.ts +10 -8
- package/dist/internal/page-layout.js +1 -1
- package/dist/internal/picker.d.ts +1 -1
- package/dist/internal/picker.js +1 -1
- package/dist/internal/progress.d.ts +11 -5
- package/dist/internal/progress.js +1 -1
- package/dist/internal/responsive.d.ts +0 -8
- package/dist/internal/responsive.js +1 -1
- package/dist/internal/run.d.ts +71 -0
- package/dist/internal/run.js +1 -0
- package/dist/internal/screen.d.ts +12 -0
- package/dist/internal/screen.js +1 -0
- package/dist/internal/styles.d.ts +185 -14
- package/dist/internal/styles.js +1 -1
- package/dist/internal/text.d.ts +3 -3
- package/dist/internal/text.js +1 -1
- package/dist/internal/window.js +1 -1
- package/dist/locales/ar.js +1 -1
- package/dist/locales/de.js +1 -1
- package/dist/locales/es.js +1 -1
- package/dist/locales/fr.js +1 -1
- package/dist/locales/hi.js +1 -1
- package/dist/locales/id.js +1 -1
- package/dist/locales/it.js +1 -1
- package/dist/locales/ja.js +1 -1
- package/dist/locales/ko.js +1 -1
- package/dist/locales/nl.js +1 -1
- package/dist/locales/pl.js +1 -1
- package/dist/locales/pt.js +1 -1
- package/dist/locales/ru.js +1 -1
- package/dist/locales/th.js +1 -1
- package/dist/locales/tr.js +1 -1
- package/dist/locales/vi.js +1 -1
- package/dist/locales/zh-hans.js +1 -1
- package/dist/locales/zh-hant.js +1 -1
- package/dist/styles.css +1 -1
- package/dist/tailwind.css +501 -53
- package/dist/types.d.ts +34 -7
- package/dist/types.js +0 -8
- package/package.json +43 -9
package/dist/internal/i18n.d.ts
CHANGED
|
@@ -33,16 +33,6 @@
|
|
|
33
33
|
* string itself, so an unsupported language is never a dead end: `locale` gets
|
|
34
34
|
* you a translation for free, and the prop gets you one for anything else.
|
|
35
35
|
*/
|
|
36
|
-
/**
|
|
37
|
-
* `{index}`, `{total}` and `{title}` filled into a message.
|
|
38
|
-
*
|
|
39
|
-
* It lives beside the tables rather than in whichever component needed it first
|
|
40
|
-
* because the placeholders are part of the message format: a language that
|
|
41
|
-
* orders "3 of 8" the other way round writes `{total}단계 중 {index}단계`, and a
|
|
42
|
-
* second copy of this function would eventually disagree about what a
|
|
43
|
-
* placeholder looks like.
|
|
44
|
-
*/
|
|
45
|
-
export declare function fill(template: string, values: Record<string, string>): string;
|
|
46
36
|
/**
|
|
47
37
|
* One namespace's strings, in every language that has them.
|
|
48
38
|
*
|
|
@@ -181,6 +171,11 @@ export interface TableMessages {
|
|
|
181
171
|
empty: string;
|
|
182
172
|
/** The button that writes what is on screen out as a file. */
|
|
183
173
|
exportCsv: string;
|
|
174
|
+
/**
|
|
175
|
+
* The heading over the rows `groupBy` put in no group. Its own word rather
|
|
176
|
+
* than `empty`'s, which said there was nothing there over rows that were.
|
|
177
|
+
*/
|
|
178
|
+
noGroup: string;
|
|
184
179
|
}
|
|
185
180
|
/** The `table` namespace, as Table and DataTable read it. */
|
|
186
181
|
export declare const tableMessages: MessageTable<TableMessages>;
|
|
@@ -372,6 +367,11 @@ export interface ImageMessages {
|
|
|
372
367
|
* caller gave no `alt` to say what it was.
|
|
373
368
|
*/
|
|
374
369
|
unavailable: string;
|
|
370
|
+
/**
|
|
371
|
+
* Names the button that opens a preview, and titles the preview, when the
|
|
372
|
+
* picture has an empty `alt` to take a name from.
|
|
373
|
+
*/
|
|
374
|
+
preview: string;
|
|
375
375
|
}
|
|
376
376
|
export declare const imageMessages: MessageTable<ImageMessages>;
|
|
377
377
|
/**
|
|
@@ -386,6 +386,21 @@ export declare const imageMessages: MessageTable<ImageMessages>;
|
|
|
386
386
|
export interface ChartMessages {
|
|
387
387
|
/** Names the drawing when the caller did not. */
|
|
388
388
|
label: string;
|
|
389
|
+
/** The column of a scatter's table that holds each point's size. */
|
|
390
|
+
size: string;
|
|
391
|
+
/** The column of a timeline's table that holds each span's own label. */
|
|
392
|
+
title: string;
|
|
393
|
+
/** The column of a timeline's table where each span starts. */
|
|
394
|
+
start: string;
|
|
395
|
+
/** And where it ends. */
|
|
396
|
+
end: string;
|
|
397
|
+
/**
|
|
398
|
+
* What the plot is described by: how many values it draws and between which
|
|
399
|
+
* two they fall. `{count}`, `{min}` and `{max}` are replaced with the numbers,
|
|
400
|
+
* already formatted. It is one sentence on purpose, because a description is
|
|
401
|
+
* read on every focus and the hidden table beside the plot holds the rest.
|
|
402
|
+
*/
|
|
403
|
+
summary: string;
|
|
389
404
|
}
|
|
390
405
|
/** The `chart` namespace, as every chart reads it. */
|
|
391
406
|
export declare const chartMessages: MessageTable<ChartMessages>;
|
|
@@ -413,6 +428,19 @@ export interface ScrollMessages {
|
|
|
413
428
|
}
|
|
414
429
|
/** The `scroll` namespace, as ScrollZone read it. */
|
|
415
430
|
export declare const scrollMessages: MessageTable<ScrollMessages>;
|
|
431
|
+
/** Panes. */
|
|
432
|
+
export interface PanesMessages {
|
|
433
|
+
/**
|
|
434
|
+
* Names a handle between two panes.
|
|
435
|
+
*
|
|
436
|
+
* A `separator` that takes the focus is announced by its name and its value,
|
|
437
|
+
* and with no name all a reader heard was "separator, 50" — a number with
|
|
438
|
+
* nothing to say what it was the share of or what the keys would do.
|
|
439
|
+
*/
|
|
440
|
+
handle: string;
|
|
441
|
+
}
|
|
442
|
+
/** The `panes` namespace, as Panes read it. */
|
|
443
|
+
export declare const panesMessages: MessageTable<PanesMessages>;
|
|
416
444
|
/** Breadcrumb. */
|
|
417
445
|
export interface BreadcrumbMessages {
|
|
418
446
|
/** Names the `<nav>` landmark. */
|
|
@@ -465,12 +493,61 @@ export interface ComboboxMessages {
|
|
|
465
493
|
empty: string;
|
|
466
494
|
/** The × on one chosen entry. `{label}` is replaced with its own label. */
|
|
467
495
|
remove: string;
|
|
496
|
+
/** The row that adds what was typed. `{label}` is replaced with the text. */
|
|
497
|
+
add: string;
|
|
498
|
+
/** The chevron that opens the list, when there is no label to name it by. */
|
|
499
|
+
open: string;
|
|
468
500
|
}
|
|
469
501
|
/** The `combobox` namespace, as Combobox read it. */
|
|
470
502
|
export declare const comboboxMessages: MessageTable<ComboboxMessages>;
|
|
503
|
+
/** ToastProvider. */
|
|
504
|
+
export interface ToastMessages {
|
|
505
|
+
/**
|
|
506
|
+
* Names the region the stack lives in. It is a landmark a screen reader can
|
|
507
|
+
* jump to, and F6 moves the focus into it, so it is announced on its own.
|
|
508
|
+
*/
|
|
509
|
+
label: string;
|
|
510
|
+
}
|
|
511
|
+
/** The `toast` namespace, as ToastProvider reads it. */
|
|
512
|
+
export declare const toastMessages: MessageTable<ToastMessages>;
|
|
513
|
+
/** Timeline. */
|
|
514
|
+
export interface TimelineMessages {
|
|
515
|
+
/**
|
|
516
|
+
* What a step's bullet says by its shape alone, said in words to a reader who
|
|
517
|
+
* cannot see it. The current step needs none: `aria-current` says it.
|
|
518
|
+
*/
|
|
519
|
+
complete: string;
|
|
520
|
+
upcoming: string;
|
|
521
|
+
}
|
|
522
|
+
/** The `timeline` namespace, as Timeline reads it. */
|
|
523
|
+
export declare const timelineMessages: MessageTable<TimelineMessages>;
|
|
524
|
+
/** FilePicker. */
|
|
525
|
+
export interface FileMessages {
|
|
526
|
+
/** The line inside the box, when the caller wrote none. */
|
|
527
|
+
title: string;
|
|
528
|
+
/** Names the button that takes one file back out of the list. */
|
|
529
|
+
remove: string;
|
|
530
|
+
}
|
|
531
|
+
/** The `file` namespace, as FilePicker reads it. */
|
|
532
|
+
export declare const fileMessages: MessageTable<FileMessages>;
|
|
533
|
+
/** OtpField. */
|
|
534
|
+
export interface OtpMessages {
|
|
535
|
+
/**
|
|
536
|
+
* Names every slot after the first, which takes the field's label. Six boxes
|
|
537
|
+
* all called "Verification code" say nothing about which one has the caret.
|
|
538
|
+
*/
|
|
539
|
+
slot: string;
|
|
540
|
+
}
|
|
541
|
+
/** The `otp` namespace, as OtpField reads it. */
|
|
542
|
+
export declare const otpMessages: MessageTable<OtpMessages>;
|
|
471
543
|
/** Overlay. */
|
|
472
544
|
export interface OverlayMessages {
|
|
473
|
-
/**
|
|
545
|
+
/**
|
|
546
|
+
* Names the sheet that covers whatever it was wrapped around. It says what
|
|
547
|
+
* the common case is doing rather than what the component is called: an
|
|
548
|
+
* overlay holding only a spinner was announced as "Overlay, dialog", which
|
|
549
|
+
* tells a reader nothing about why the page went out of reach.
|
|
550
|
+
*/
|
|
474
551
|
label: string;
|
|
475
552
|
}
|
|
476
553
|
/** The `overlay` namespace, as Overlay read it. */
|
|
@@ -490,6 +567,8 @@ export interface WindowMessages {
|
|
|
490
567
|
restore: string;
|
|
491
568
|
/** Names the corner a pointer drags to resize. */
|
|
492
569
|
resize: string;
|
|
570
|
+
/** Says how a keyboard resizes from that corner, which its name does not. */
|
|
571
|
+
resizeHint: string;
|
|
493
572
|
}
|
|
494
573
|
/** The `window` namespace, as WindowPane read it. */
|
|
495
574
|
export declare const windowMessages: MessageTable<WindowMessages>;
|
|
@@ -574,6 +653,122 @@ export interface StepsMessages {
|
|
|
574
653
|
}
|
|
575
654
|
/** The `steps` namespace, as HowToSteps reads it. */
|
|
576
655
|
export declare const stepsMessages: MessageTable<StepsMessages>;
|
|
656
|
+
/** ToolCall and AgentSteps. */
|
|
657
|
+
export interface RunMessages {
|
|
658
|
+
/** Not started. */
|
|
659
|
+
pending: string;
|
|
660
|
+
/** Going on now. */
|
|
661
|
+
running: string;
|
|
662
|
+
/** Ended, and did what it was asked. */
|
|
663
|
+
success: string;
|
|
664
|
+
/** Ended, and did not. */
|
|
665
|
+
error: string;
|
|
666
|
+
}
|
|
667
|
+
/**
|
|
668
|
+
* The `run` namespace, as ToolCall and AgentSteps read it.
|
|
669
|
+
*
|
|
670
|
+
* Its own rather than four keys on `tool`, because what it names is the
|
|
671
|
+
* `NebaRunStatus` vocabulary and not one component's chrome: an AgentSteps
|
|
672
|
+
* draws a marker per step and never says the words "Arguments" or "Result", so
|
|
673
|
+
* a step list that reached those through one table would carry them.
|
|
674
|
+
*
|
|
675
|
+
* Every one of the four is read out and none of them is drawn. The shape says
|
|
676
|
+
* which state a row is in — a hollow ring, a turning ring, a tick, a cross —
|
|
677
|
+
* and these are the same sentence for a reader who has no shape to look at.
|
|
678
|
+
*/
|
|
679
|
+
export declare const runMessages: MessageTable<RunMessages>;
|
|
680
|
+
/** ToolCall. */
|
|
681
|
+
export interface ToolMessages {
|
|
682
|
+
/** The heading over what the tool was called with. */
|
|
683
|
+
arguments: string;
|
|
684
|
+
/** And over what it answered. */
|
|
685
|
+
result: string;
|
|
686
|
+
}
|
|
687
|
+
/** The `tool` namespace, as ToolCall reads it. */
|
|
688
|
+
export declare const toolMessages: MessageTable<ToolMessages>;
|
|
689
|
+
/** Approval. */
|
|
690
|
+
export interface ApprovalMessages {
|
|
691
|
+
/** The heading over a request that was not given one. */
|
|
692
|
+
request: string;
|
|
693
|
+
/** What the record line is called once the request has been answered. */
|
|
694
|
+
answered: string;
|
|
695
|
+
/** The three risk levels, as the chip beside the heading draws them. */
|
|
696
|
+
low: string;
|
|
697
|
+
medium: string;
|
|
698
|
+
high: string;
|
|
699
|
+
}
|
|
700
|
+
/**
|
|
701
|
+
* The `approval` namespace, as Approval reads it.
|
|
702
|
+
*
|
|
703
|
+
* The three risk words are written out in full — "Low risk" rather than "Low" —
|
|
704
|
+
* because the chip is the only thing on the card that says what the level is
|
|
705
|
+
* *of*, and a lone adjective beside a heading reads as a description of the
|
|
706
|
+
* heading.
|
|
707
|
+
*/
|
|
708
|
+
export declare const approvalMessages: MessageTable<ApprovalMessages>;
|
|
709
|
+
/** Reasoning. */
|
|
710
|
+
export interface ReasoningMessages {
|
|
711
|
+
/** While the stream is still arriving. */
|
|
712
|
+
thinking: string;
|
|
713
|
+
/** Once it has stopped, when the time it took is known. `{duration}` is the length. */
|
|
714
|
+
thought: string;
|
|
715
|
+
/** And when it is not. */
|
|
716
|
+
done: string;
|
|
717
|
+
}
|
|
718
|
+
/**
|
|
719
|
+
* The `reasoning` namespace, as Reasoning reads it.
|
|
720
|
+
*
|
|
721
|
+
* `thought` is a whole sentence with a placeholder in it rather than a word and
|
|
722
|
+
* a number set beside each other, for `tableMessages.range`'s reason: where the
|
|
723
|
+
* length goes in the sentence is exactly what differs between languages.
|
|
724
|
+
*/
|
|
725
|
+
export declare const reasoningMessages: MessageTable<ReasoningMessages>;
|
|
726
|
+
/** ContextWindow. */
|
|
727
|
+
export interface ContextMessages {
|
|
728
|
+
/** What the gauge is called when it was not given a name. */
|
|
729
|
+
label: string;
|
|
730
|
+
/** The four things a context window is spent on. */
|
|
731
|
+
input: string;
|
|
732
|
+
output: string;
|
|
733
|
+
reasoning: string;
|
|
734
|
+
cached: string;
|
|
735
|
+
/** Over the money. */
|
|
736
|
+
cost: string;
|
|
737
|
+
/** How much of the window has gone. `{used}` and `{max}` are the two counts. */
|
|
738
|
+
usage: string;
|
|
739
|
+
}
|
|
740
|
+
/**
|
|
741
|
+
* The `context` namespace, as ContextWindow reads it.
|
|
742
|
+
*
|
|
743
|
+
* Nothing here is a number: the counts and the money are `Intl`'s, which speaks
|
|
744
|
+
* more languages than this file ever will, and `usage` is a whole sentence with
|
|
745
|
+
* two placeholders in it because where the two numbers sit is exactly what
|
|
746
|
+
* differs between languages.
|
|
747
|
+
*/
|
|
748
|
+
export declare const contextMessages: MessageTable<ContextMessages>;
|
|
749
|
+
/** Sources and InlineCitation. */
|
|
750
|
+
export interface SourcesMessages {
|
|
751
|
+
/** The heading over the list, when it was not given one. */
|
|
752
|
+
title: string;
|
|
753
|
+
/**
|
|
754
|
+
* What a numbered citation in the body is called. `{index}` is its number,
|
|
755
|
+
* which is the only thing the mark itself says.
|
|
756
|
+
*/
|
|
757
|
+
citation: string;
|
|
758
|
+
}
|
|
759
|
+
/** The `sources` namespace, as Sources and InlineCitation read it. */
|
|
760
|
+
export declare const sourcesMessages: MessageTable<SourcesMessages>;
|
|
761
|
+
/** PromptInput. */
|
|
762
|
+
export interface PromptMessages {
|
|
763
|
+
/** The button that sends what was typed. */
|
|
764
|
+
send: string;
|
|
765
|
+
/** And what that same button says while an answer is being written. */
|
|
766
|
+
stop: string;
|
|
767
|
+
/** Over the field while files are being dragged onto it. */
|
|
768
|
+
drop: string;
|
|
769
|
+
}
|
|
770
|
+
/** The `prompt` namespace, as PromptInput reads it. */
|
|
771
|
+
export declare const promptMessages: MessageTable<PromptMessages>;
|
|
577
772
|
/**
|
|
578
773
|
* One namespace's strings for a locale, merged over English.
|
|
579
774
|
*
|
|
@@ -639,6 +834,8 @@ export interface NebaLocale {
|
|
|
639
834
|
chart?: Partial<ChartMessages>;
|
|
640
835
|
/** Scroll. */
|
|
641
836
|
scroll?: Partial<ScrollMessages>;
|
|
837
|
+
/** Panes. */
|
|
838
|
+
panes?: Partial<PanesMessages>;
|
|
642
839
|
/** Breadcrumb. */
|
|
643
840
|
breadcrumb?: Partial<BreadcrumbMessages>;
|
|
644
841
|
/** Anchor. */
|
|
@@ -649,6 +846,8 @@ export interface NebaLocale {
|
|
|
649
846
|
command?: Partial<CommandMessages>;
|
|
650
847
|
/** Combobox. */
|
|
651
848
|
combobox?: Partial<ComboboxMessages>;
|
|
849
|
+
/** Toast. */
|
|
850
|
+
toast?: Partial<ToastMessages>;
|
|
652
851
|
/** Overlay. */
|
|
653
852
|
overlay?: Partial<OverlayMessages>;
|
|
654
853
|
/** Window. */
|
|
@@ -661,6 +860,26 @@ export interface NebaLocale {
|
|
|
661
860
|
steps?: Partial<StepsMessages>;
|
|
662
861
|
/** Confirm. */
|
|
663
862
|
confirm?: Partial<ConfirmMessages>;
|
|
863
|
+
/** OtpField. */
|
|
864
|
+
otp?: Partial<OtpMessages>;
|
|
865
|
+
/** FilePicker. */
|
|
866
|
+
file?: Partial<FileMessages>;
|
|
867
|
+
/** Timeline. */
|
|
868
|
+
timeline?: Partial<TimelineMessages>;
|
|
869
|
+
/** ToolCall and AgentSteps. */
|
|
870
|
+
run?: Partial<RunMessages>;
|
|
871
|
+
/** ToolCall. */
|
|
872
|
+
tool?: Partial<ToolMessages>;
|
|
873
|
+
/** Approval. */
|
|
874
|
+
approval?: Partial<ApprovalMessages>;
|
|
875
|
+
/** Reasoning. */
|
|
876
|
+
reasoning?: Partial<ReasoningMessages>;
|
|
877
|
+
/** ContextWindow. */
|
|
878
|
+
context?: Partial<ContextMessages>;
|
|
879
|
+
/** Sources and InlineCitation. */
|
|
880
|
+
sources?: Partial<SourcesMessages>;
|
|
881
|
+
/** PromptInput. */
|
|
882
|
+
prompt?: Partial<PromptMessages>;
|
|
664
883
|
}
|
|
665
884
|
/**
|
|
666
885
|
* Teaches the library a language.
|
package/dist/internal/i18n.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import*as e from"react";import{memoise as s}from"./cache.js";export
|
|
1
|
+
import*as e from"react";import{memoise as s}from"./cache.js";export const actionMessages={"":{close:"Close",dismiss:"Dismiss",clear:"Clear",remove:"Remove"}};export const confirmMessages={"":{confirm:"Confirm",cancel:"Cancel"}};export const linkMessages={"":{newTab:"(opens in a new tab)"}};export const spoilerMessages={"":{reveal:"Reveal",hide:"Hide",notice:"This may contain spoilers"}};export const chatMessages={"":{sending:"Sending",sent:"Sent",delivered:"Delivered",read:"Read",failed:"Not sent",typing:"Typing…"}};export const emptyMessages={"":{title:"Nothing here"}};export const tableMessages={"":{search:"Search",selectAll:"Select all rows",selectRow:"Select row",rowsPerPage:"Rows per page",range:"{start}–{end} of {total}",selected:"{count} selected",empty:"No data",exportCsv:"Export CSV",noGroup:"No group"}};export const colorMessages={"":{area:"Saturation and brightness",hue:"Hue",alpha:"Opacity",value:"Colour value",swatches:"Preset colours",clear:"Clear",empty:"Choose a colour"}};export const ratingMessages={"":{label:"Rating",value:"{value} out of {max}",empty:"No rating"}};export const numberMessages={"":{increase:"Increase",decrease:"Decrease"}};export const paginationMessages={"":{label:"Pagination",page:"Page {page}",status:"Page {page} of {total}",previous:"Previous page",next:"Next page",first:"First page",last:"Last page"}};export const carouselMessages={"":{label:"Carousel",slide:"Slide {index} of {total}",previous:"Previous slide",next:"Next slide",pause:"Pause slide show",play:"Play slide show"}};export const pickerMessages={"":{previousMonth:"Previous month",nextMonth:"Next month",previousYear:"Previous year",nextYear:"Next year",previousYears:"Previous years",nextYears:"Next years",chooseMonth:"Choose a month",chooseYear:"Choose a year",today:"Today",thisMonth:"This month",thisYear:"This year",now:"Now",clear:"Clear",done:"Done",hour:"Hour",minute:"Minute",second:"Second",meridiem:"AM/PM",start:"Start",end:"End"}};export const galleryMessages={"":{label:"Gallery",item:"Image {index} of {total}",previous:"Previous image",next:"Next image"}};export const imageMessages={"":{unavailable:"Image unavailable",preview:"Enlarge image"}};export const chartMessages={"":{label:"Chart",size:"Size",title:"Label",start:"Start",end:"End",summary:"Data points: {count}. Range: {min} to {max}."}};export const scrollMessages={"":{label:"Scrollable content",previous:"Scroll back",next:"Scroll forward"}};export const panesMessages={"":{handle:"Resize panes"}};export const breadcrumbMessages={"":{label:"Breadcrumb",expand:"Show hidden steps"}};export const commandMessages={"":{label:"Command palette",search:"Type a command or search…",empty:"No commands found"}};export const transferMessages={"":{source:"Available",target:"Selected",toTarget:"Move to selected",toSource:"Move to available",search:"Search",selectAll:"Select all",empty:"Nothing here"}};export const anchorMessages={"":{label:"On this page"}};export const comboboxMessages={"":{empty:"No matches",remove:"Remove {label}",add:"Add “{label}”",open:"Open"}};export const toastMessages={"":{label:"Notifications"}};export const timelineMessages={"":{complete:"Completed",upcoming:"Upcoming"}};export const fileMessages={"":{title:"Drop files here, or click to browse",remove:"Remove {name}"}};export const otpMessages={"":{slot:"Character {index} of {total}"}};export const overlayMessages={"":{label:"Loading"}};export const windowMessages={"":{minimize:"Minimize",maximize:"Maximize",restore:"Restore",resize:"Resize window",resizeHint:"Use the arrow keys to resize the window"}};export const layoutMessages={"":{skipToContent:"Skip to content",sidebar:"Sidebar",openSidebar:"Open sidebar",closeSidebar:"Close sidebar",resizeSidebar:"Resize sidebar"}};export const codeMessages={"":{code:"Code",copy:"Copy",copied:"Copied",copyFailed:"Could not copy",raw:"Raw",prompt:"Prompt"}};export const stepsMessages={"":{previous:"Previous",next:"Next",done:"Done",skip:"Skip",restart:"Start over",completed:"All steps complete",steps:"Steps",position:"{index} of {total}",step:"Step {index}: {title}"}};export const runMessages={"":{pending:"Waiting",running:"Running",success:"Finished",error:"Failed"}};export const toolMessages={"":{arguments:"Arguments",result:"Result"}};export const approvalMessages={"":{request:"Permission needed",answered:"Answered",low:"Low risk",medium:"Medium risk",high:"High risk"}};export const reasoningMessages={"":{thinking:"Thinking…",thought:"Thought for {duration}",done:"Finished thinking"}};export const contextMessages={"":{label:"Context",input:"Input",output:"Output",reasoning:"Reasoning",cached:"Cached",cost:"Estimated cost",usage:"{used} of {max}"}};export const sourcesMessages={"":{title:"Sources",citation:"Source {index}"}};export const promptMessages={"":{send:"Send",stop:"Stop",drop:"Drop files to attach"}};const o={zh:"zh-hans","zh-cn":"zh-hans","zh-my":"zh-hans","zh-sg":"zh-hans","zh-hk":"zh-hant","zh-mo":"zh-hant","zh-tw":"zh-hant"};const t=new WeakMap;export function resolveMessages(e,a){const r=e[""],n=a?.trim()??"";if(!n)return r;let i=t.get(e);return i||(i=new Map,t.set(e,i)),s(i,n,()=>{const s=function(e){const s=e.toLowerCase().split(/[-_]/).filter(Boolean),o=s[0];if(!o)return[];const t=s.slice(1),a=t.find(e=>/^[a-z]{4}$/.test(e)),r=t.find(e=>/^([a-z]{2}|\d{3})$/.test(e));return[a?`${o}-${a}`:"",r?`${o}-${r}`:"",o].filter(Boolean)}(n).map(s=>{const t=Object.hasOwn(o,s)?o[s]:void 0;return Object.hasOwn(e,s)?e[s]:t&&Object.hasOwn(e,t)?e[t]:void 0}).find(Boolean);return s?{...r,...s}:r})}export function useMessages(s,o){return e.useMemo(()=>resolveMessages(s,o),[s,o])}export function fillMessage(e,s){return e.replace(/\{(\w+)\}/g,(e,o)=>Object.hasOwn(s,o)?s[o]:e)}const a={action:actionMessages,confirm:confirmMessages,link:linkMessages,spoiler:spoilerMessages,chat:chatMessages,empty:emptyMessages,table:tableMessages,color:colorMessages,rating:ratingMessages,number:numberMessages,pagination:paginationMessages,carousel:carouselMessages,picker:pickerMessages,gallery:galleryMessages,image:imageMessages,chart:chartMessages,scroll:scrollMessages,panes:panesMessages,breadcrumb:breadcrumbMessages,anchor:anchorMessages,transfer:transferMessages,command:commandMessages,combobox:comboboxMessages,toast:toastMessages,overlay:overlayMessages,window:windowMessages,layout:layoutMessages,code:codeMessages,steps:stepsMessages,otp:otpMessages,file:fileMessages,timeline:timelineMessages,run:runMessages,tool:toolMessages,approval:approvalMessages,reasoning:reasoningMessages,context:contextMessages,sources:sourcesMessages,prompt:promptMessages};export function registerMessages(e,s){const o=e.trim().toLowerCase();if("__proto__"!==o)for(const[e,r]of Object.entries(s)){const s=Object.hasOwn(a,e)?a[e]:void 0;s&&r&&(s[o]=r,t.delete(s))}}
|
package/dist/internal/icons.d.ts
CHANGED
|
@@ -139,6 +139,16 @@ export declare function StarOutlineIcon(): React.JSX.Element;
|
|
|
139
139
|
export declare function SpinnerIcon(): React.JSX.Element;
|
|
140
140
|
/** The filled dot: the chosen one of a set, where a tick would say "and". */
|
|
141
141
|
export declare function DotIcon(): React.JSX.Element;
|
|
142
|
+
/**
|
|
143
|
+
* The empty ring: something that has not started.
|
|
144
|
+
*
|
|
145
|
+
* The third member of the set a run status is drawn with — a hollow ring, a
|
|
146
|
+
* turning ring, a tick in a circle, a cross in a circle — so `pending`,
|
|
147
|
+
* `running`, `success` and `error` are four shapes at one diameter rather than
|
|
148
|
+
* four colours of one shape. A reader who cannot tell the colours apart still
|
|
149
|
+
* has four marks.
|
|
150
|
+
*/
|
|
151
|
+
export declare function CircleIcon(): React.JSX.Element;
|
|
142
152
|
/** The neutral note: a circled `i` without the serif problem an `i` has at 16px. */
|
|
143
153
|
export declare function NoteIcon(): React.JSX.Element;
|
|
144
154
|
/** The tick in a circle: the one that went through. */
|
|
@@ -151,8 +161,9 @@ export declare function DangerIcon(): React.JSX.Element;
|
|
|
151
161
|
* One drawing per colour family.
|
|
152
162
|
*
|
|
153
163
|
* `primary` and `secondary` have no severity to draw, so they take the note the
|
|
154
|
-
* informational one uses —
|
|
155
|
-
* that mean something are the three worth telling apart
|
|
164
|
+
* informational one uses — four shapes for six families, because the three
|
|
165
|
+
* that mean something are the three worth telling apart, and everything else
|
|
166
|
+
* shares the note.
|
|
156
167
|
*
|
|
157
168
|
* A function rather than a `Record` of elements, for the reason the tables in
|
|
158
169
|
* `i18n.ts` are one per namespace: a bundler drops an unused function and it
|
package/dist/internal/icons.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as r,jsxs as e}from"react/jsx-runtime";export function CloseIcon(){return r("svg",{viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:r("path",{d:"m4.5 4.5 7 7m0-7-7 7",stroke:"currentColor",strokeWidth:"1.75",strokeLinecap:"round"})})}export function ChevronIcon(){return r("svg",{viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:r("path",{d:"m4.5 6.5 3.5 3.5 3.5-3.5",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})})}export function CheckIcon(){return r("svg",{viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:r("path",{d:"m3.5 8.5 3 3 6-6",stroke:"currentColor",strokeWidth:"1.75",strokeLinecap:"round",strokeLinejoin:"round"})})}export function MinusIcon(){return r("svg",{viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:r("path",{d:"M3.5 8h9",stroke:"currentColor",strokeWidth:"1.75",strokeLinecap:"round"})})}export function PlusIcon(){return r("svg",{viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:r("path",{d:"M8 3.5v9M3.5 8h9",stroke:"currentColor",strokeWidth:"1.75",strokeLinecap:"round"})})}export function TrendUpIcon(){return e("svg",{viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:[r("path",{d:"M3 11 6.5 7.5 9 10l4-4",stroke:"currentColor",strokeWidth:"1.75",strokeLinecap:"round",strokeLinejoin:"round"}),r("path",{d:"M9.5 6h3.5v3.5",stroke:"currentColor",strokeWidth:"1.75",strokeLinecap:"round",strokeLinejoin:"round"})]})}export function TrendDownIcon(){return e("svg",{viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:[r("path",{d:"M3 5 6.5 8.5 9 6l4 4",stroke:"currentColor",strokeWidth:"1.75",strokeLinecap:"round",strokeLinejoin:"round"}),r("path",{d:"M9.5 10h3.5V6.5",stroke:"currentColor",strokeWidth:"1.75",strokeLinecap:"round",strokeLinejoin:"round"})]})}export function CalendarIcon(){return e("svg",{viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:[r("rect",{x:"2",y:"3.25",width:"12",height:"10.75",rx:"2",stroke:"currentColor",strokeWidth:"1.5"}),r("path",{d:"M2 6.75h12",stroke:"currentColor",strokeWidth:"1.5"}),r("path",{d:"M5.25 1.75v2.5M10.75 1.75v2.5",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round"})]})}export function ClockIcon(){return e("svg",{viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:[r("circle",{cx:"8",cy:"8",r:"6.25",stroke:"currentColor",strokeWidth:"1.5"}),r("path",{d:"M8 4.5V8l2.4 1.6",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})]})}export function ArrowRightIcon(){return r("svg",{viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:r("path",{d:"M3 8h10m-3.5-3.5L13 8l-3.5 3.5",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})})}export function LinkIcon(){return e("svg",{viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:[r("path",{d:"M6.5 9.5a2.75 2.75 0 0 0 4 .25l1.75-1.75a2.75 2.75 0 0 0-3.9-3.9L7.75 5.2",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round"}),r("path",{d:"M9.5 6.5a2.75 2.75 0 0 0-4-.25L3.75 8a2.75 2.75 0 0 0 3.9 3.9l.6-.6",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round"})]})}export function ExternalLinkIcon(){return e("svg",{viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:[r("path",{d:"M12.75 9.25v2.5a1.5 1.5 0 0 1-1.5 1.5h-7a1.5 1.5 0 0 1-1.5-1.5v-7a1.5 1.5 0 0 1 1.5-1.5h2.5",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round"}),r("path",{d:"M9.5 2.75h3.75V6.5M7.25 8.75l5.75-5.75",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})]})}export function CopyIcon(){return e("svg",{viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:[r("rect",{x:"5.75",y:"5.75",width:"7.5",height:"7.5",rx:"1.75",stroke:"currentColor",strokeWidth:"1.5"}),r("path",{d:"M10.25 3.6a1.85 1.85 0 0 0-1.5-.85h-4a2 2 0 0 0-2 2v4c0 .62.28 1.17.72 1.54",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round"})]})}export function CodeIcon(){return r("svg",{viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:r("path",{d:"M5.75 4.5 2.5 8l3.25 3.5m4.5-7L13.5 8l-3.25 3.5",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})})}export function RestartIcon(){return e("svg",{viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:[r("path",{d:"M13 8a5 5 0 1 1-1.6-3.67",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round"}),r("path",{d:"M13.25 2.25v3h-3",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})]})}export function PauseIcon(){return e("svg",{viewBox:"0 0 16 16",fill:"currentColor","aria-hidden":"true",children:[r("rect",{x:"4",y:"3",width:"2.75",height:"10",rx:"1"}),r("rect",{x:"9.25",y:"3",width:"2.75",height:"10",rx:"1"})]})}export function PlayIcon(){return r("svg",{viewBox:"0 0 16 16",fill:"currentColor","aria-hidden":"true",children:r("path",{d:"M5.5 3.6a1 1 0 0 1 1.53-.85l6.1 3.9a1.2 1.2 0 0 1 0 2.02l-6.1 3.9a1 1 0 0 1-1.53-.85V3.6Z"})})}export function EllipsisIcon(){return e("svg",{viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:[r("circle",{cx:"3.5",cy:"8",r:"1.15",fill:"currentColor"}),r("circle",{cx:"8",cy:"8",r:"1.15",fill:"currentColor"}),r("circle",{cx:"12.5",cy:"8",r:"1.15",fill:"currentColor"})]})}const o="M8 1.4 9.71 5.65 14.28 5.96 10.76 8.9 11.88 13.34 8 10.9 4.12 13.34 5.24 8.9 1.72 5.96 6.29 5.65Z";export function StarIcon(){return r("svg",{viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:r("path",{d:o,fill:"currentColor",stroke:"currentColor",strokeLinejoin:"round"})})}export function StarOutlineIcon(){return r("svg",{viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:r("path",{d:o,stroke:"currentColor",strokeWidth:"1.25",strokeLinejoin:"round"})})}export function SpinnerIcon(){return e("svg",{viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",className:"animate-spin",children:[r("circle",{cx:"8",cy:"8",r:"6.5",stroke:"currentColor",strokeOpacity:"0.25",strokeWidth:"2"}),r("path",{d:"M14.5 8A6.5 6.5 0 0 0 8 1.5",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round"})]})}export function DotIcon(){return r("svg",{viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:r("circle",{cx:"8",cy:"8",r:"3.25",fill:"currentColor"})})}export function NoteIcon(){return e("svg",{viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:[r("circle",{cx:"8",cy:"8",r:"6.25",stroke:"currentColor",strokeWidth:"1.5"}),r("path",{d:"M8 7.25v4",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round"}),r("circle",{cx:"8",cy:"4.9",r:"0.85",fill:"currentColor"})]})}export function SuccessIcon(){return e("svg",{viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:[r("circle",{cx:"8",cy:"8",r:"6.25",stroke:"currentColor",strokeWidth:"1.5"}),r("path",{d:"m5.25 8.25 1.9 1.9 3.6-3.9",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})]})}export function WarningIcon(){return e("svg",{viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:[r("path",{d:"M7.13 2.6 1.9 11.7a1 1 0 0 0 .87 1.5h10.46a1 1 0 0 0 .87-1.5L8.87 2.6a1 1 0 0 0-1.74 0Z",stroke:"currentColor",strokeWidth:"1.5",strokeLinejoin:"round"}),r("path",{d:"M8 6.1v3",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round"}),r("circle",{cx:"8",cy:"11.2",r:"0.85",fill:"currentColor"})]})}export function DangerIcon(){return e("svg",{viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:[r("circle",{cx:"8",cy:"8",r:"6.25",stroke:"currentColor",strokeWidth:"1.5"}),r("path",{d:"m5.9 5.9 4.2 4.2m0-4.2-4.2 4.2",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round"})]})}export function severityIcon(e){switch(e){case"success":return r(SuccessIcon,{});case"warning":return r(WarningIcon,{});case"danger":return r(DangerIcon,{});default:return r(NoteIcon,{})}}
|
|
1
|
+
import{jsx as r,jsxs as e}from"react/jsx-runtime";export function CloseIcon(){return r("svg",{viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:r("path",{d:"m4.5 4.5 7 7m0-7-7 7",stroke:"currentColor",strokeWidth:"1.75",strokeLinecap:"round"})})}export function ChevronIcon(){return r("svg",{viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:r("path",{d:"m4.5 6.5 3.5 3.5 3.5-3.5",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})})}export function CheckIcon(){return r("svg",{viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:r("path",{d:"m3.5 8.5 3 3 6-6",stroke:"currentColor",strokeWidth:"1.75",strokeLinecap:"round",strokeLinejoin:"round"})})}export function MinusIcon(){return r("svg",{viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:r("path",{d:"M3.5 8h9",stroke:"currentColor",strokeWidth:"1.75",strokeLinecap:"round"})})}export function PlusIcon(){return r("svg",{viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:r("path",{d:"M8 3.5v9M3.5 8h9",stroke:"currentColor",strokeWidth:"1.75",strokeLinecap:"round"})})}export function TrendUpIcon(){return e("svg",{viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:[r("path",{d:"M3 11 6.5 7.5 9 10l4-4",stroke:"currentColor",strokeWidth:"1.75",strokeLinecap:"round",strokeLinejoin:"round"}),r("path",{d:"M9.5 6h3.5v3.5",stroke:"currentColor",strokeWidth:"1.75",strokeLinecap:"round",strokeLinejoin:"round"})]})}export function TrendDownIcon(){return e("svg",{viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:[r("path",{d:"M3 5 6.5 8.5 9 6l4 4",stroke:"currentColor",strokeWidth:"1.75",strokeLinecap:"round",strokeLinejoin:"round"}),r("path",{d:"M9.5 10h3.5V6.5",stroke:"currentColor",strokeWidth:"1.75",strokeLinecap:"round",strokeLinejoin:"round"})]})}export function CalendarIcon(){return e("svg",{viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:[r("rect",{x:"2",y:"3.25",width:"12",height:"10.75",rx:"2",stroke:"currentColor",strokeWidth:"1.5"}),r("path",{d:"M2 6.75h12",stroke:"currentColor",strokeWidth:"1.5"}),r("path",{d:"M5.25 1.75v2.5M10.75 1.75v2.5",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round"})]})}export function ClockIcon(){return e("svg",{viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:[r("circle",{cx:"8",cy:"8",r:"6.25",stroke:"currentColor",strokeWidth:"1.5"}),r("path",{d:"M8 4.5V8l2.4 1.6",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})]})}export function ArrowRightIcon(){return r("svg",{viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:r("path",{d:"M3 8h10m-3.5-3.5L13 8l-3.5 3.5",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})})}export function LinkIcon(){return e("svg",{viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:[r("path",{d:"M6.5 9.5a2.75 2.75 0 0 0 4 .25l1.75-1.75a2.75 2.75 0 0 0-3.9-3.9L7.75 5.2",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round"}),r("path",{d:"M9.5 6.5a2.75 2.75 0 0 0-4-.25L3.75 8a2.75 2.75 0 0 0 3.9 3.9l.6-.6",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round"})]})}export function ExternalLinkIcon(){return e("svg",{viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:[r("path",{d:"M12.75 9.25v2.5a1.5 1.5 0 0 1-1.5 1.5h-7a1.5 1.5 0 0 1-1.5-1.5v-7a1.5 1.5 0 0 1 1.5-1.5h2.5",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round"}),r("path",{d:"M9.5 2.75h3.75V6.5M7.25 8.75l5.75-5.75",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})]})}export function CopyIcon(){return e("svg",{viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:[r("rect",{x:"5.75",y:"5.75",width:"7.5",height:"7.5",rx:"1.75",stroke:"currentColor",strokeWidth:"1.5"}),r("path",{d:"M10.25 3.6a1.85 1.85 0 0 0-1.5-.85h-4a2 2 0 0 0-2 2v4c0 .62.28 1.17.72 1.54",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round"})]})}export function CodeIcon(){return r("svg",{viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:r("path",{d:"M5.75 4.5 2.5 8l3.25 3.5m4.5-7L13.5 8l-3.25 3.5",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})})}export function RestartIcon(){return e("svg",{viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:[r("path",{d:"M13 8a5 5 0 1 1-1.6-3.67",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round"}),r("path",{d:"M13.25 2.25v3h-3",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})]})}export function PauseIcon(){return e("svg",{viewBox:"0 0 16 16",fill:"currentColor","aria-hidden":"true",children:[r("rect",{x:"4",y:"3",width:"2.75",height:"10",rx:"1"}),r("rect",{x:"9.25",y:"3",width:"2.75",height:"10",rx:"1"})]})}export function PlayIcon(){return r("svg",{viewBox:"0 0 16 16",fill:"currentColor","aria-hidden":"true",children:r("path",{d:"M5.5 3.6a1 1 0 0 1 1.53-.85l6.1 3.9a1.2 1.2 0 0 1 0 2.02l-6.1 3.9a1 1 0 0 1-1.53-.85V3.6Z"})})}export function EllipsisIcon(){return e("svg",{viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:[r("circle",{cx:"3.5",cy:"8",r:"1.15",fill:"currentColor"}),r("circle",{cx:"8",cy:"8",r:"1.15",fill:"currentColor"}),r("circle",{cx:"12.5",cy:"8",r:"1.15",fill:"currentColor"})]})}const o="M8 1.4 9.71 5.65 14.28 5.96 10.76 8.9 11.88 13.34 8 10.9 4.12 13.34 5.24 8.9 1.72 5.96 6.29 5.65Z";export function StarIcon(){return r("svg",{viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:r("path",{d:o,fill:"currentColor",stroke:"currentColor",strokeLinejoin:"round"})})}export function StarOutlineIcon(){return r("svg",{viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:r("path",{d:o,stroke:"currentColor",strokeWidth:"1.25",strokeLinejoin:"round"})})}export function SpinnerIcon(){return e("svg",{viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",className:"animate-spin",children:[r("circle",{cx:"8",cy:"8",r:"6.5",stroke:"currentColor",strokeOpacity:"0.25",strokeWidth:"2"}),r("path",{d:"M14.5 8A6.5 6.5 0 0 0 8 1.5",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round"})]})}export function DotIcon(){return r("svg",{viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:r("circle",{cx:"8",cy:"8",r:"3.25",fill:"currentColor"})})}export function CircleIcon(){return r("svg",{viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:r("circle",{cx:"8",cy:"8",r:"6.25",stroke:"currentColor",strokeWidth:"1.5",strokeDasharray:"2 2.5",strokeLinecap:"round"})})}export function NoteIcon(){return e("svg",{viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:[r("circle",{cx:"8",cy:"8",r:"6.25",stroke:"currentColor",strokeWidth:"1.5"}),r("path",{d:"M8 7.25v4",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round"}),r("circle",{cx:"8",cy:"4.9",r:"0.85",fill:"currentColor"})]})}export function SuccessIcon(){return e("svg",{viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:[r("circle",{cx:"8",cy:"8",r:"6.25",stroke:"currentColor",strokeWidth:"1.5"}),r("path",{d:"m5.25 8.25 1.9 1.9 3.6-3.9",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})]})}export function WarningIcon(){return e("svg",{viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:[r("path",{d:"M7.13 2.6 1.9 11.7a1 1 0 0 0 .87 1.5h10.46a1 1 0 0 0 .87-1.5L8.87 2.6a1 1 0 0 0-1.74 0Z",stroke:"currentColor",strokeWidth:"1.5",strokeLinejoin:"round"}),r("path",{d:"M8 6.1v3",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round"}),r("circle",{cx:"8",cy:"11.2",r:"0.85",fill:"currentColor"})]})}export function DangerIcon(){return e("svg",{viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:[r("circle",{cx:"8",cy:"8",r:"6.25",stroke:"currentColor",strokeWidth:"1.5"}),r("path",{d:"m5.9 5.9 4.2 4.2m0-4.2-4.2 4.2",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round"})]})}export function severityIcon(e){switch(e){case"success":return r(SuccessIcon,{});case"warning":return r(WarningIcon,{});case"danger":return r(DangerIcon,{});default:return r(NoteIcon,{})}}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The value that puts `inert` on an element in the React the page is running.
|
|
3
|
+
*
|
|
4
|
+
* React 19 knows `inert` as a boolean attribute and writes it for `true`. React
|
|
5
|
+
* 18 does not know it at all: it drops a boolean on an attribute it does not
|
|
6
|
+
* know, with a warning, and writes a string as it is. So under 18 the attribute
|
|
7
|
+
* is only written for `''`, and under 19 an empty string is read as false and
|
|
8
|
+
* warned about. Both are inside the peer range, and a panel that is meant to be
|
|
9
|
+
* out of reach and is not is a keyboard reader tabbing into hidden content.
|
|
10
|
+
*
|
|
11
|
+
* `false` is always `undefined`, which removes the attribute under either.
|
|
12
|
+
*/
|
|
13
|
+
export declare function inertValue(on: boolean, version?: string): boolean | undefined;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import*as r from"react";export function inertValue(e,t=r.version){if(e)return Number.parseInt(t,10)>=19||""}
|
|
@@ -11,14 +11,19 @@
|
|
|
11
11
|
/**
|
|
12
12
|
* The first character of the first word, plus the first of the last.
|
|
13
13
|
*
|
|
14
|
-
*
|
|
15
|
-
*
|
|
16
|
-
*
|
|
14
|
+
* A grapheme rather than `[0]` or a code point, so a name that starts with an
|
|
15
|
+
* emoji is not cut apart: `👩💻` is three code points and `🇰🇷` is two, and
|
|
16
|
+
* taking the first of them drew `👩` and a lone `🇰`. `normalize('NFC')` first, so a name whose accents arrived decomposed —
|
|
17
17
|
* which is what a macOS filename and a good many APIs hand you — yields `Ä`
|
|
18
18
|
* rather than a bare `A`.
|
|
19
19
|
*
|
|
20
20
|
* One word gives one character on purpose. Korean, Japanese and Chinese names
|
|
21
21
|
* are a single token, and two of their characters at 32px is a smudge where one
|
|
22
22
|
* is a name.
|
|
23
|
+
*
|
|
24
|
+
* `toUpperCase()` rather than `toLocaleUpperCase()`, which with no argument
|
|
25
|
+
* takes the runtime's language: a server in one locale and a browser in Turkish
|
|
26
|
+
* would draw `I` and `İ` for the same name, and React reports the difference as
|
|
27
|
+
* a hydration mismatch.
|
|
23
28
|
*/
|
|
24
29
|
export declare function initialsOf(name: string): string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export function initialsOf(
|
|
1
|
+
import{graphemesOf as t}from"./text.js";export function initialsOf(e){const n=e.normalize("NFC").trim().split(/\s+/).filter(Boolean);if(0===n.length)return"";return((t(n[0])[0]??"")+(n.length>1?t(n[n.length-1])[0]??"":"")).toUpperCase()}
|
package/dist/internal/keys.d.ts
CHANGED
|
@@ -69,6 +69,13 @@ export interface KeyPress {
|
|
|
69
69
|
metaKey: boolean;
|
|
70
70
|
altKey: boolean;
|
|
71
71
|
shiftKey: boolean;
|
|
72
|
+
/** On a DOM event. React's synthetic one carries it on `nativeEvent`. */
|
|
73
|
+
isComposing?: boolean;
|
|
74
|
+
nativeEvent?: {
|
|
75
|
+
isComposing?: boolean;
|
|
76
|
+
};
|
|
77
|
+
/** `229` for a key an input method took. */
|
|
78
|
+
keyCode?: number;
|
|
72
79
|
}
|
|
73
80
|
/**
|
|
74
81
|
* Does this keystroke satisfy `Mod+Shift+P`?
|
|
@@ -77,6 +84,12 @@ export interface KeyPress {
|
|
|
77
84
|
* modifiers it wants, so `Enter` does not fire when `Mod+Enter` was pressed.
|
|
78
85
|
* That is what makes a `shortcuts` map unambiguous — at most one entry can
|
|
79
86
|
* match a keystroke, unless a caller spelled the same combination twice.
|
|
87
|
+
*
|
|
88
|
+
* Shift is the one exception, and only for a single key that is neither a
|
|
89
|
+
* letter nor a digit. On most layouts `?` is typed with Shift held, so asking
|
|
90
|
+
* for `?` and requiring Shift to be up was a shortcut that could never fire,
|
|
91
|
+
* and `Shift+/` fails too because `event.key` is already `?`. The character
|
|
92
|
+
* the reader typed says everything Shift did.
|
|
80
93
|
*/
|
|
81
94
|
export declare function matchesShortcut(event: KeyPress, shortcut: string): boolean;
|
|
82
95
|
/**
|
package/dist/internal/keys.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const t={cmdorctrl:"mod",commandorcontrol:"mod",cmd:"meta",command:"meta",super:"meta",win:"meta",windows:"meta",control:"ctrl",option:"alt",opt:"alt",return:"enter",esc:"escape",del:"delete",caps:"capslock",spacebar:"space",up:"arrowup",down:"arrowdown",left:"arrowleft",right:"arrowright"};export function tokenize(t){return Array.isArray(t)?t.map(t=>t.trim()).filter(Boolean):t.split("+").map(t=>t.trim()).filter(Boolean)}export function canonicalKey(e){if(" "===e)return"space";const r=e.toLowerCase().replace(/[\s_-]/g,"");return t[r]??r}export function resolveOS(t,e,r){const n=t||e||r||"";return/mac|iphone|ipad|ipod/i.test(n)?"mac":/win/i.test(n)?"windows":"linux"}let e=null;export function readOS(){return e??=function(){if("undefined"==typeof navigator)return"windows";const t=navigator.userAgentData;return resolveOS(t?.platform,navigator.platform,navigator.userAgent)}(),e}export function matchesShortcut(t,e){const r=tokenize(e).map(canonicalKey);if(0===r.length)return!1;const n={ctrl:!1,meta:!1,alt:!1,shift:!1},o="mac"===readOS();for(const t of r.slice(0,-1))if("mod"===t)n[
|
|
1
|
+
const t={cmdorctrl:"mod",commandorcontrol:"mod",cmd:"meta",command:"meta",super:"meta",win:"meta",windows:"meta",control:"ctrl",option:"alt",opt:"alt",return:"enter",esc:"escape",del:"delete",caps:"capslock",spacebar:"space",up:"arrowup",down:"arrowdown",left:"arrowleft",right:"arrowright"};export function tokenize(t){return Array.isArray(t)?t.map(t=>t.trim()).filter(Boolean):t.split("+").map(t=>t.trim()).filter(Boolean)}export function canonicalKey(e){if(" "===e)return"space";const r=e.toLowerCase().replace(/[\s_-]/g,"");return t[r]??r}export function resolveOS(t,e,r){const n=t||e||r||"";return/mac|iphone|ipad|ipod/i.test(n)?"mac":/win/i.test(n)?"windows":"linux"}let e=null;export function readOS(){return e??=function(){if("undefined"==typeof navigator)return"windows";const t=navigator.userAgentData;return resolveOS(t?.platform,navigator.platform,navigator.userAgent)}(),e}export function matchesShortcut(t,e){const r=tokenize(e).map(canonicalKey);if(0===r.length||function(t){return!0===t.isComposing||!0===t.nativeEvent?.isComposing||229===t.keyCode}(t))return!1;const n={ctrl:!1,meta:!1,alt:!1,shift:!1},o=r[r.length-1],a=1===o.length&&!/^[a-z0-9]$/.test(o),i="mac"===readOS();for(const t of r.slice(0,-1))if("mod"===t)n[i?"meta":"ctrl"]=!0;else{if("meta"!==t&&"ctrl"!==t&&"alt"!==t&&"shift"!==t)return!1;n[t]=!0}return t.ctrlKey===n.ctrl&&t.metaKey===n.meta&&t.altKey===n.alt&&(a||t.shiftKey===n.shift)&&function(t,e){const r=canonicalKey(t.key);if(r===e)return!0;if(1===e.length&&!/^[a-z0-9]$/.test(r)){if(e>="a"&&e<="z")return t.code===`Key${e.toUpperCase()}`;if(e>="0"&&e<="9")return t.code===`Digit${e}`}return!1}(t,r[r.length-1])}export function keyHandler(t,e){return t?r=>{for(const[e,n]of Object.entries(t))matchesShortcut(r,e)&&n(r);e?.(r)}:e}
|
package/dist/internal/link.d.ts
CHANGED
|
@@ -1,20 +1,18 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* An `href` a component is safe to write, or nothing.
|
|
3
3
|
*
|
|
4
|
-
* A
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
* cannot tell which.
|
|
4
|
+
* A link's address very often comes from somebody other than the page's author:
|
|
5
|
+
* the preview under a chat message, a destination read out of a CMS, a page link
|
|
6
|
+
* a router built from a query. React 19 refuses a `javascript:` URL, but React
|
|
7
|
+
* 18 — inside the peer range — writes it as it is, and a press then runs it.
|
|
8
|
+
* So every component that writes an `href` passes it through here, and a scheme
|
|
9
|
+
* outside `http`, `https`, `mailto` and `tel` leaves the element with no
|
|
10
|
+
* `href` at all. A relative URL, a `#fragment` and a `//host` have no scheme and
|
|
11
|
+
* are kept.
|
|
13
12
|
*
|
|
14
|
-
*
|
|
15
|
-
*
|
|
16
|
-
* `
|
|
17
|
-
* with the two tokens above — spelled as a plain default it would silently take
|
|
18
|
-
* the protection off the link that still opens in a new tab.
|
|
13
|
+
* The scheme is read the way a browser reads it: leading spaces and control
|
|
14
|
+
* characters are dropped, and a tab or a newline anywhere in it is ignored, so
|
|
15
|
+
* ` java\tscript:` is caught along with `JavaScript:`.
|
|
19
16
|
*/
|
|
17
|
+
export declare function safeHref(href: string | undefined): string | undefined;
|
|
20
18
|
export declare function safeRel(target: string | undefined, rel: string | undefined): string | undefined;
|
package/dist/internal/link.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export function safeRel(e,
|
|
1
|
+
const e=new Set(["http","https","mailto","tel"]);export function safeHref(t){if(void 0===t)return;let r=0;for(;r<t.length&&t.charCodeAt(r)<=32;)r+=1;const n=t.slice(r).replace(/[\t\n\r]/g,""),o=/^([a-z][a-z\d+.-]*):/i.exec(n);return null===o||e.has(o[1].toLowerCase())?t:void 0}export function safeRel(e,t){return e&&"_self"!==e&&"_parent"!==e&&"_top"!==e?[...new Set([...(t??"").split(/\s+/).filter(Boolean),"noopener","noreferrer"])].join(" "):t}
|
package/dist/internal/media.d.ts
CHANGED
|
@@ -41,23 +41,15 @@ export declare function useMediaQuery(query: string | null): boolean;
|
|
|
41
41
|
/** The query behind every "the reader asked for less motion" decision. */
|
|
42
42
|
export declare const reducedMotionQuery = "(prefers-reduced-motion: reduce)";
|
|
43
43
|
/**
|
|
44
|
-
* Whether
|
|
44
|
+
* Whether this render is past hydration.
|
|
45
45
|
*
|
|
46
|
-
*
|
|
47
|
-
*
|
|
48
|
-
*
|
|
49
|
-
*
|
|
50
|
-
*
|
|
51
|
-
*
|
|
52
|
-
*
|
|
53
|
-
* choice Shortcut makes for the same reason: a media query is an external
|
|
54
|
-
* store, and reading it in an effect means every animated element on the page
|
|
55
|
-
* renders once with the wrong answer and then again with the right one. Here
|
|
56
|
-
* that first render is the one that would start a typewriter a reader asked
|
|
57
|
-
* not to see.
|
|
58
|
-
*
|
|
59
|
-
* It lives beside the query rather than in `animate.ts` so that a Carousel and
|
|
60
|
-
* a ScrollZone can ask without pulling the eleven animation effects in with the
|
|
61
|
-
* answer.
|
|
46
|
+
* `false` on the server and in the render that hydrates what the server sent,
|
|
47
|
+
* `true` in every render after that, and `true` straight away in a tree that
|
|
48
|
+
* was never server-rendered. It is for a value the server cannot know the
|
|
49
|
+
* reader's answer to — the day it is where they are, the scheme they chose last
|
|
50
|
+
* visit — which has to be left out of the hydrating render or React reports the
|
|
51
|
+
* two renders disagreeing. `useSyncExternalStore` rather than an effect, so a
|
|
52
|
+
* client-only tree does not render once without the value and then again with it.
|
|
62
53
|
*/
|
|
54
|
+
export declare function useHydrated(): boolean;
|
|
63
55
|
export declare function usePrefersReducedMotion(): boolean;
|
package/dist/internal/media.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use client";import*as e from"react";import{memoise as t}from"./cache.js";const r=new Map;function n(e){return t(r,e,()=>"undefined"!=typeof window&&window.matchMedia?window.matchMedia(e):null)}export function subscribeToQuery(e,t){const r=n(e);return r?(r.addEventListener("change",t),()=>r.removeEventListener("change",t)):()=>{}}export function queryMatches(e){return n(e)?.matches??!1}export function noMatchOnServer(){return!1}export const breakpointWidths={xs:"0rem",sm:"40rem",md:"48rem",lg:"64rem",xl:"80rem"};let o=null;function u(){if(o)return o;if("undefined"==typeof window||!window.getComputedStyle)return breakpointWidths;const e=getComputedStyle(document.documentElement),t={...breakpointWidths};for(const r of["sm","md","lg","xl"]){const n=e.getPropertyValue(`--neba-breakpoint-${r}`).trim();n&&(t[r]=n)}return o=t,t}export function widthBelow(e){return"xs"===e?null:`(width < ${u()[e]})`}export function widthAtLeast(e){return`(width >= ${u()[e]})`}export function useMediaQuery(t){const r=e.useCallback(e=>t?subscribeToQuery(t,e):()=>{},[t]),n=e.useCallback(()=>!!t&&queryMatches(t),[t]);return e.useSyncExternalStore(r,n,noMatchOnServer)}export const reducedMotionQuery="(prefers-reduced-motion: reduce)";const c=e=>subscribeToQuery(reducedMotionQuery,e),i=()=>queryMatches(reducedMotionQuery);export function usePrefersReducedMotion(){return e.useSyncExternalStore(c,i,noMatchOnServer)}
|
|
1
|
+
"use client";import*as e from"react";import{memoise as t}from"./cache.js";const r=new Map;function n(e){return t(r,e,()=>"undefined"!=typeof window&&window.matchMedia?window.matchMedia(e):null)}export function subscribeToQuery(e,t){const r=n(e);return r?(r.addEventListener("change",t),()=>r.removeEventListener("change",t)):()=>{}}export function queryMatches(e){return n(e)?.matches??!1}export function noMatchOnServer(){return!1}export const breakpointWidths={xs:"0rem",sm:"40rem",md:"48rem",lg:"64rem",xl:"80rem"};let o=null;function u(){if(o)return o;if("undefined"==typeof window||!window.getComputedStyle)return breakpointWidths;const e=getComputedStyle(document.documentElement),t={...breakpointWidths};for(const r of["sm","md","lg","xl"]){const n=e.getPropertyValue(`--neba-breakpoint-${r}`).trim();n&&(t[r]=n)}return o=t,t}export function widthBelow(e){return"xs"===e?null:`(width < ${u()[e]})`}export function widthAtLeast(e){return`(width >= ${u()[e]})`}export function useMediaQuery(t){const r=e.useCallback(e=>t?subscribeToQuery(t,e):()=>{},[t]),n=e.useCallback(()=>!!t&&queryMatches(t),[t]);return e.useSyncExternalStore(r,n,noMatchOnServer)}export const reducedMotionQuery="(prefers-reduced-motion: reduce)";const c=e=>subscribeToQuery(reducedMotionQuery,e),i=()=>queryMatches(reducedMotionQuery),s=()=>()=>{},d=()=>!0,a=()=>!1;export function useHydrated(){return e.useSyncExternalStore(s,d,a)}export function usePrefersReducedMotion(){return e.useSyncExternalStore(c,i,noMatchOnServer)}
|
package/dist/internal/menu.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import type { NebaColor, NebaDensity, NebaSize } from '../types.js';
|
|
2
|
+
import type { NebaColor, NebaDensity, NebaOrientation, NebaSize } from '../types.js';
|
|
3
3
|
/**
|
|
4
4
|
* What a menu item inherits from the menu around it.
|
|
5
5
|
*
|
|
@@ -16,5 +16,10 @@ export interface MenuContextValue {
|
|
|
16
16
|
size: NebaSize;
|
|
17
17
|
color: NebaColor;
|
|
18
18
|
density: NebaDensity;
|
|
19
|
+
/**
|
|
20
|
+
* Which way the bar runs, set only by a Menubar. A menu on a vertical bar
|
|
21
|
+
* opens beside it rather than downward over the next word.
|
|
22
|
+
*/
|
|
23
|
+
orientation?: NebaOrientation;
|
|
19
24
|
}
|
|
20
25
|
export declare const MenuContext: React.Context<MenuContextValue>;
|