@parallelworks/ui 0.79.0 → 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.
Files changed (47) hide show
  1. package/README.md +7 -1
  2. package/dist/ai/adapter/types.d.ts +1 -0
  3. package/dist/ai/ai.css +3 -92
  4. package/dist/ai/components/agent/AgentMessageParts.js +1 -0
  5. package/dist/ai/core/ChatProvider.js +10 -5
  6. package/dist/ai/strings.d.ts +3 -0
  7. package/dist/ai/strings.js +2 -0
  8. package/dist/ai/types.d.ts +5 -0
  9. package/dist/components/Card.d.ts +16 -1
  10. package/dist/components/Card.js +13 -2
  11. package/dist/components/CodeBlock.d.ts +40 -0
  12. package/dist/components/CodeBlock.js +159 -0
  13. package/dist/components/Combobox.js +56 -32
  14. package/dist/components/ContextMenu.d.ts +8 -0
  15. package/dist/components/ContextMenu.js +42 -6
  16. package/dist/components/CreateModal.d.ts +3 -1
  17. package/dist/components/CreateModal.js +15 -8
  18. package/dist/components/DescriptionList.js +1 -1
  19. package/dist/components/Disclosure.d.ts +6 -2
  20. package/dist/components/Disclosure.js +24 -2
  21. package/dist/components/Drawer.js +1 -1
  22. package/dist/components/Input.d.ts +5 -0
  23. package/dist/components/Input.js +4 -3
  24. package/dist/components/MarkdownImpl.js +89 -2
  25. package/dist/components/MenuEntries.d.ts +3 -0
  26. package/dist/components/MenuEntries.js +19 -6
  27. package/dist/components/Modal.d.ts +1 -1
  28. package/dist/components/Modal.js +6 -5
  29. package/dist/components/PageHeader.d.ts +4 -0
  30. package/dist/components/PageHeader.js +6 -3
  31. package/dist/components/Provider.d.ts +3 -0
  32. package/dist/components/Provider.js +1 -0
  33. package/dist/components/Select.js +1 -1
  34. package/dist/components/ToggleGroup.d.ts +3 -1
  35. package/dist/components/ToggleGroup.js +2 -2
  36. package/dist/components/codeHighlight.d.ts +9 -0
  37. package/dist/components/codeHighlight.js +29 -0
  38. package/dist/components/pageHeaderStore.d.ts +4 -0
  39. package/dist/components/pageHeaderStore.js +5 -2
  40. package/dist/file-explorer/FileExplorer.js +1 -1
  41. package/dist/index.d.ts +3 -2
  42. package/dist/index.js +4 -3
  43. package/dist/styles/theme.css +1 -0
  44. package/dist/styles.css +1 -1
  45. package/dist/theme/derive.d.ts +1 -1
  46. package/dist/theme/derive.js +3 -1
  47. package/package.json +1 -1
@@ -52,6 +52,7 @@ function PageHeader(props) {
52
52
  const store = use(StoreContext);
53
53
  if (!store) return props.hidden ? null : /* @__PURE__ */ jsx(HeaderLayout, {
54
54
  breadcrumbs: props.breadcrumbs ?? [],
55
+ heading: props.heading ?? true,
55
56
  titleActions: props.titleActions,
56
57
  actions: props.actions,
57
58
  toolbar: props.toolbar
@@ -61,7 +62,7 @@ function PageHeader(props) {
61
62
  ...props
62
63
  });
63
64
  }
64
- function DeclaredHeader({ store, breadcrumbs, titleActions, actions, toolbar, hidden = false }) {
65
+ function DeclaredHeader({ store, breadcrumbs, heading = true, titleActions, actions, toolbar, hidden = false }) {
65
66
  const [order] = useState(() => ++renderOrder);
66
67
  const [nodes] = useState(createRegionNodes);
67
68
  const client = useSyncExternalStore(subscribeNever, () => true, () => false);
@@ -73,6 +74,7 @@ function DeclaredHeader({ store, breadcrumbs, titleActions, actions, toolbar, hi
73
74
  useLayoutEffect(() => {
74
75
  store.set(order, {
75
76
  breadcrumbs,
77
+ heading,
76
78
  hidden,
77
79
  nodes,
78
80
  fills
@@ -105,6 +107,7 @@ function PageHeaderBar({ compact = false, persistent = false, className }) {
105
107
  if (header.hidden || empty && !persistent) return null;
106
108
  return /* @__PURE__ */ jsx(HeaderLayout, {
107
109
  breadcrumbs: header.breadcrumbs,
110
+ heading: header.heading,
108
111
  titleActions: header.titleActions.length > 0 && /* @__PURE__ */ jsx(Mounts, { nodes: header.titleActions }),
109
112
  actions: header.actions.length > 0 && /* @__PURE__ */ jsx(Mounts, { nodes: header.actions }),
110
113
  toolbar: header.toolbar.length > 0 && /* @__PURE__ */ jsx(Mounts, { nodes: header.toolbar }),
@@ -137,7 +140,7 @@ function Mount({ node }) {
137
140
  className: "contents"
138
141
  });
139
142
  }
140
- function HeaderLayout({ breadcrumbs, titleActions, actions, toolbar, fit: sharedFit, compact = false, className }) {
143
+ function HeaderLayout({ breadcrumbs, heading, titleActions, actions, toolbar, fit: sharedFit, compact = false, className }) {
141
144
  const { breadcrumbPin, navToggle } = useSlots();
142
145
  const { list: t } = useStrings();
143
146
  const [ownFit] = useState(() => new HeaderActionsFit());
@@ -161,7 +164,7 @@ function HeaderLayout({ breadcrumbs, titleActions, actions, toolbar, fit: shared
161
164
  navToggle?.(),
162
165
  hasTrail && /* @__PURE__ */ jsx(Breadcrumbs, {
163
166
  crumbs: breadcrumbs,
164
- heading: true
167
+ heading
165
168
  }),
166
169
  present(titleActions) && /* @__PURE__ */ jsx("div", {
167
170
  className: "flex shrink-0 items-center gap-0.5",
@@ -102,6 +102,9 @@ export interface UIStrings {
102
102
  opensInNewTab: string;
103
103
  /** Names a code editor that has no label of its own. */
104
104
  codeEditor: string;
105
+ /** Names a block of code that has no title of its own, by its language,
106
+ * such as "yaml code"; `language` is empty when it has none. */
107
+ codeOf: (language: string) => string;
105
108
  /** Shown when someone types in a read-only code editor. */
106
109
  readOnlyText: string;
107
110
  /** Names the handle that resizes a panel. */
@@ -148,6 +148,7 @@ var DEFAULTS = {
148
148
  no: "No",
149
149
  opensInNewTab: "(opens in a new tab)",
150
150
  codeEditor: "Code editor",
151
+ codeOf: (language) => language ? `${language} code` : "Code",
151
152
  readOnlyText: "This text is read-only.",
152
153
  resizePanel: "Resize panel",
153
154
  panelWidth: (px) => `${px} pixels wide`,
@@ -59,7 +59,7 @@ function Select$1({ items, placeholder, className, "aria-label": ariaLabel, "ari
59
59
  content: tip,
60
60
  children: /* @__PURE__ */ jsxs(Select.Trigger, {
61
61
  ...triggerProps,
62
- className: cx(fieldBox({ size }), triggerClassName, content && "w-fit max-w-full", explained && explainedDisabledClassName, className),
62
+ className: cx(fieldBox({ size }), triggerClassName, content && "w-fit max-w-full shrink-0", explained && explainedDisabledClassName, className),
63
63
  children: [/* @__PURE__ */ jsx(Select.Value, {
64
64
  placeholder,
65
65
  className: cx("truncate data-placeholder:text-(--theme-placeholder)", content && !rootProps.multiple && "grid"),
@@ -25,6 +25,8 @@ export interface ToggleGroupProps<T extends string> {
25
25
  all?: boolean | {
26
26
  count?: number | undefined;
27
27
  } | undefined;
28
+ /** The All option's words, for one that names what it covers, such as "All types". */
29
+ allLabel?: ReactNode;
28
30
  size?: 'sm' | 'md' | undefined;
29
31
  disabled?: boolean | undefined;
30
32
  /** Names an element that says more about the group, such as a live summary
@@ -42,4 +44,4 @@ export interface ToggleGroupProps<T extends string> {
42
44
  * value, such as a time range, what to group by, or which view of the same
43
45
  * data to show. A filter that may be off, or takes several values, is a
44
46
  * `ToggleGroup`. */
45
- export declare function ToggleGroup<T extends string>({ label, options, value, onValueChange, multiple, all, size, disabled, 'aria-describedby': describedBy, testId, }: ToggleGroupProps<T>): import("react").JSX.Element;
47
+ export declare function ToggleGroup<T extends string>({ label, options, value, onValueChange, multiple, all, allLabel, size, disabled, 'aria-describedby': describedBy, testId, }: ToggleGroupProps<T>): import("react").JSX.Element;
@@ -18,7 +18,7 @@ var ALL = "\0all";
18
18
  * value, such as a time range, what to group by, or which view of the same
19
19
  * data to show. A filter that may be off, or takes several values, is a
20
20
  * `ToggleGroup`. */
21
- function ToggleGroup$1({ label, options, value, onValueChange, multiple = true, all = false, size = "sm", disabled = false, "aria-describedby": describedBy, testId }) {
21
+ function ToggleGroup$1({ label, options, value, onValueChange, multiple = true, all = false, allLabel, size = "sm", disabled = false, "aria-describedby": describedBy, testId }) {
22
22
  const strings = useStrings();
23
23
  const allCount = typeof all === "object" ? all.count : void 0;
24
24
  const pressed = all && value.length === 0 ? [ALL] : value;
@@ -40,7 +40,7 @@ function ToggleGroup$1({ label, options, value, onValueChange, multiple = true,
40
40
  children: [
41
41
  all && /* @__PURE__ */ jsx(Chip, {
42
42
  value: ALL,
43
- label: strings.common.all,
43
+ label: allLabel ?? strings.common.all,
44
44
  count: allCount,
45
45
  size
46
46
  }),
@@ -0,0 +1,9 @@
1
+ export interface CodeToken {
2
+ content: string;
3
+ color?: string;
4
+ fontStyle?: 'italic';
5
+ }
6
+ /** Tokens for each line of `source`, at once when they are cached, otherwise
7
+ * null now and `onReady` once the language has loaded. A language the
8
+ * highlighter doesn't know reads as plain text. */
9
+ export declare function highlightCode(source: string, language: string, incomplete: boolean, onReady: (lines: CodeToken[][]) => void): CodeToken[][] | null;
@@ -0,0 +1,29 @@
1
+ import { CODE_THEMES } from "./codeTheme.js";
2
+ import { code } from "@streamdown/code";
3
+ //#region src/components/codeHighlight.ts
4
+ var ITALIC = 1;
5
+ function toLines(tokens) {
6
+ return tokens.map((line) => line.map((token) => {
7
+ const color = token.htmlStyle?.["color"] ?? token.color;
8
+ const italic = token.htmlStyle?.["font-style"] === "italic" || ((token.fontStyle ?? 0) & ITALIC) === ITALIC;
9
+ return {
10
+ content: token.content,
11
+ ...color ? { color } : {},
12
+ ...italic ? { fontStyle: "italic" } : {}
13
+ };
14
+ }));
15
+ }
16
+ /** Tokens for each line of `source`, at once when they are cached, otherwise
17
+ * null now and `onReady` once the language has loaded. A language the
18
+ * highlighter doesn't know reads as plain text. */
19
+ function highlightCode(source, language, incomplete, onReady) {
20
+ const result = code.highlight({
21
+ code: source,
22
+ language: language || "text",
23
+ themes: CODE_THEMES,
24
+ isIncomplete: incomplete
25
+ }, (later) => onReady(toLines(later.tokens)));
26
+ return result ? toLines(result.tokens) : null;
27
+ }
28
+ //#endregion
29
+ export { highlightCode };
@@ -7,12 +7,16 @@ export type PageHeaderRegion = 'titleActions' | 'actions' | 'toolbar';
7
7
  export type RegionNodes = Readonly<Record<PageHeaderRegion, HTMLElement>>;
8
8
  export interface Declaration {
9
9
  breadcrumbs: readonly Breadcrumb[] | undefined;
10
+ /** Whether the trail's last crumb is the page's `h1`. */
11
+ heading: boolean;
10
12
  hidden: boolean;
11
13
  nodes: RegionNodes | null;
12
14
  fills: Readonly<Record<PageHeaderRegion, boolean>>;
13
15
  }
14
16
  export interface PageHeaderSnapshot {
15
17
  breadcrumbs: readonly Breadcrumb[];
18
+ /** Whether the trail's last crumb is the page's `h1`, as the page whose trail it is says. */
19
+ heading: boolean;
16
20
  hidden: boolean;
17
21
  titleActions: readonly HTMLElement[];
18
22
  actions: readonly HTMLElement[];
@@ -4,6 +4,7 @@ var NO_NODES = [];
4
4
  var NO_CRUMBS = [];
5
5
  var EMPTY = {
6
6
  breadcrumbs: NO_CRUMBS,
7
+ heading: true,
7
8
  hidden: false,
8
9
  titleActions: NO_NODES,
9
10
  actions: NO_NODES,
@@ -15,7 +16,7 @@ function sameCrumbs(a, b) {
15
16
  return a.every((crumb, i) => crumb.label === b[i]?.label && crumb.href === b[i]?.href);
16
17
  }
17
18
  function sameDeclaration(a, b) {
18
- return sameCrumbs(a.breadcrumbs, b.breadcrumbs) && a.hidden === b.hidden && a.nodes === b.nodes && a.fills.titleActions === b.fills.titleActions && a.fills.actions === b.fills.actions && a.fills.toolbar === b.fills.toolbar;
19
+ return sameCrumbs(a.breadcrumbs, b.breadcrumbs) && a.heading === b.heading && a.hidden === b.hidden && a.nodes === b.nodes && a.fills.titleActions === b.fills.titleActions && a.fills.actions === b.fills.actions && a.fills.toolbar === b.fills.toolbar;
19
20
  }
20
21
  function sameNodes(a, b) {
21
22
  return a.length === b.length && a.every((node, i) => node === b[i]);
@@ -54,10 +55,12 @@ var PageHeaderStore = class {
54
55
  const next = ordered.flatMap((d) => d.nodes && d.fills[region] ? [d.nodes[region]] : []);
55
56
  return sameNodes(next, prev) ? prev : next;
56
57
  };
57
- const trail = ordered.findLast((d) => d.breadcrumbs !== void 0)?.breadcrumbs ?? NO_CRUMBS;
58
+ const owner = ordered.findLast((d) => d.breadcrumbs !== void 0);
59
+ const trail = owner?.breadcrumbs ?? NO_CRUMBS;
58
60
  const prev = this.snapshot;
59
61
  this.snapshot = {
60
62
  breadcrumbs: sameCrumbs(trail, prev.breadcrumbs) ? prev.breadcrumbs : trail,
63
+ heading: owner?.heading ?? true,
61
64
  hidden: ordered.some((d) => d.hidden),
62
65
  titleActions: regionNodes("titleActions", prev.titleActions),
63
66
  actions: regionNodes("actions", prev.actions),
@@ -13,9 +13,9 @@ import { useCopy } from "../components/useCopy.js";
13
13
  import { Breadcrumbs } from "../components/Breadcrumbs.js";
14
14
  import { Button } from "../components/Button.js";
15
15
  import { Callout } from "../components/Callout.js";
16
+ import { CopyButton, CopyCodeBlock } from "../components/CopyButton.js";
16
17
  import { InfoTip } from "../components/InfoTip.js";
17
18
  import { ConfirmModal } from "../components/ConfirmModal.js";
18
- import { CopyButton, CopyCodeBlock } from "../components/CopyButton.js";
19
19
  import { CreateModal } from "../components/CreateModal.js";
20
20
  import { useSplitter } from "../components/splitter.js";
21
21
  import { formatBytes, formatDateTime } from "../format.js";
package/dist/index.d.ts CHANGED
@@ -5,12 +5,13 @@ export { type Breadcrumb, Breadcrumbs, type BreadcrumbsProps } from './component
5
5
  export { Button, type ButtonProps, MethodButton } from './components/Button.js';
6
6
  export { type ButtonSize, type ButtonStyle, type ButtonVariant, buttonClasses, } from './components/buttonClasses.js';
7
7
  export { Callout, type CalloutProps, type CalloutTone } from './components/Callout.js';
8
- export { Card, CardHeader, type CardHeaderProps, type CardPadding, type CardProps, type CardSize, } from './components/Card.js';
8
+ export { Card, CardHeader, type CardHeaderProps, type CardPadding, type CardProps, type CardSize, type CardTone, } from './components/Card.js';
9
9
  export { Checkbox, CheckboxGroup, type CheckboxProps } from './components/Checkbox.js';
10
+ export { CodeBlock, type CodeBlockProps } from './components/CodeBlock.js';
10
11
  export { ColorInput, type ColorInputProps } from './components/ColorInput.js';
11
12
  export { Autocomplete, type AutocompleteProps, Combobox, type ComboboxGroup, type ComboboxItem, type ComboboxItems, type ComboboxProps, } from './components/Combobox.js';
12
13
  export { ConfirmModal, type ConfirmModalProps, type ConfirmRequest, useConfirm, } from './components/ConfirmModal.js';
13
- export { ContextMenuProvider, type MenuOpener, type OpenMenu, type OpenMenuOptions, useContextMenu, useMenuOpenedBy, useOpenMenu, } from './components/ContextMenu.js';
14
+ export { ContextMenuProvider, type MenuCloseTrigger, type MenuOpener, type OpenMenu, type OpenMenuOptions, useCloseMenu, useContextMenu, useMenuOpenedBy, useOpenMenu, } from './components/ContextMenu.js';
14
15
  export { CopyButton, type CopyButtonProps, CopyCodeBlock, type CopyCodeBlockProps, } from './components/CopyButton.js';
15
16
  export { CreateModal, CreateModalSelect, CreateModalSwitch, } from './components/CreateModal.js';
16
17
  export { categoryClasses, categoryOf } from './components/category.js';
package/dist/index.js CHANGED
@@ -2,7 +2,7 @@ import { cx } from "./cx.js";
2
2
  import { buttonClasses } from "./components/buttonClasses.js";
3
3
  import { EmptyState } from "./components/EmptyState.js";
4
4
  import { MenuCheckboxItem, MenuGroupLabel, MenuItem, MenuLinkItem, MenuPopup, MenuRadioItem, MenuSeparator, MenuSubmenuTrigger } from "./components/Menu.js";
5
- import { ContextMenuProvider, useContextMenu, useMenuOpenedBy, useOpenMenu } from "./components/ContextMenu.js";
5
+ import { ContextMenuProvider, useCloseMenu, useContextMenu, useMenuOpenedBy, useOpenMenu } from "./components/ContextMenu.js";
6
6
  import { Loader } from "./components/Loader.js";
7
7
  import { toast } from "./components/Toast.js";
8
8
  import { Kbd, ariaKeyShortcuts, formatShortcut, isApplePlatform, shortcutText, useShortcutFormat } from "./components/Kbd.js";
@@ -23,6 +23,8 @@ import { Callout } from "./components/Callout.js";
23
23
  import { Card, CardHeader } from "./components/Card.js";
24
24
  import { fieldBox } from "./components/fieldBox.js";
25
25
  import { Checkbox, CheckboxGroup } from "./components/Checkbox.js";
26
+ import { CopyButton, CopyCodeBlock } from "./components/CopyButton.js";
27
+ import { CodeBlock } from "./components/CodeBlock.js";
26
28
  import { JND, composite, deltaE, parseColor, toHex, toP3 } from "./theme/color.js";
27
29
  import { apcaContrast, contrastRatio, isDarkColor } from "./theme/contrast.js";
28
30
  import { CODE_STYLES, DEFAULT_CONTRAST, DEFAULT_PRESET, DEFAULT_THEME, THEME_PRESETS, modeOf, parseTheme, resolveMode, schemeFor, serializeTheme } from "./theme/model.js";
@@ -40,7 +42,6 @@ import { Tag, TagList, normalizeTags, tagClasses } from "./components/Tag.js";
40
42
  import { Autocomplete, Combobox } from "./components/Combobox.js";
41
43
  import { Modal, ModalDescription, ModalTitle, modalPanelClassName } from "./components/Modal.js";
42
44
  import { ConfirmModal, useConfirm } from "./components/ConfirmModal.js";
43
- import { CopyButton, CopyCodeBlock } from "./components/CopyButton.js";
44
45
  import { Disclosure, DisclosurePanel, collapsePanelClassName } from "./components/Disclosure.js";
45
46
  import { Switch } from "./components/Switch.js";
46
47
  import { CreateModal, CreateModalSelect, CreateModalSwitch } from "./components/CreateModal.js";
@@ -83,4 +84,4 @@ import { ToggleGroup } from "./components/ToggleGroup.js";
83
84
  import { useClosingValue } from "./components/useClosingValue.js";
84
85
  import { useCssIsDark } from "./components/useCssIsDark.js";
85
86
  import { useApplyTheme, useColorMode } from "./components/useTheme.js";
86
- export { ActionMenu, AppLink, Autocomplete, Avatar, AvatarGroup, Breadcrumbs, Button, CODE_STYLES, Calendar, Callout, Card, CardHeader, ChartLegendList, ChartTooltipContent, Checkbox, CheckboxGroup, ColorInput, Combobox, ConfirmModal, ContextMenuProvider, CopyButton, CopyCodeBlock, CountBadge, CreateModal, CreateModalSelect, CreateModalSwitch, DEFAULT_CONTRAST, DEFAULT_PRESET, DEFAULT_THEME, DatePicker, DescriptionList, DescriptionListGroup, DescriptionListItem, Disclosure, DisclosurePanel, Drawer, Elapsed, EmptyState, ErrorPage, ErrorText, ExternalLink, Field, FieldOption, FieldValue, FileButton, HoverCard, IconButton, InfoTip, Input, JND, Kbd, LetterBadge, ListboxGroup, ListboxOption, ListboxPanel, Loader, LoadingRegion, Markdown, MenuCheckboxItem, MenuEntries, MenuFilter, MenuGroupLabel, MenuItem, MenuLinkItem, MenuPopup, MenuRadioItem, MenuSeparator, MenuSubmenuTrigger, Meter, MethodButton, Modal, ModalDescription, ModalTitle, NumberInput, OneTimeCodeInput, Overview, PAGE_SIZES, PageHeader, PageHeaderAction, PageHeaderAddButton, PageHeaderBar, PageHeaderMenu, PageHeaderProvider, Pagination, Popover, PopoverClose, ProgressBar, Radio, RadioGroup, RefreshButton, RelativeTime, RequiredMark, RevealToggle, RunStatusIcon, SIDEBAR_TOKENS, SearchInput, Section, SegmentedControl, Select, SelectionCopy, SeriesSwatch, SettingModeOption, SettingRow, SettingsCard, SettingsHeading, Skeleton, Slider, StatusBadge, StatusDot, StickyBar, Switch, THEME_PRESETS, THEME_TOKENS, TabPanel, Table, Tabs, Tag, TagList, Textarea, ThemeEditor, ThemePreview, TitleInput, ToggleGroup, Tooltip, TooltipProvider, UIProvider, apcaContrast, applyTheme, ariaKeyShortcuts, avatarInitials, buttonClasses, categoryClasses, categoryOf, collapsePanelClassName, composite, contrastRatio, cx, deltaE, deriveTheme, errorPageKind, fieldBox, fitSeed, formatBytes, formatCount, formatDateTime, formatDuration, formatInfoTipContent, formatShortcut, formatTimeLeft, generateTheme, isApplePlatform, isDarkColor, isMenuDivider, isMenuGroup, isMenuSubmenu, isPlainClick, isTextEntryContext, levelTone, menuDivider, modalPanelClassName, modeOf, normalizeTags, parseColor, parseTheme, prefersWideGamut, resolveMode, runStatusTone, schemeFor, serializeTheme, seriesColor, seriesColors, seriesOpacity, seriesSlotColor, shortcutText, statusTextClass, tagClasses, themeStylesheet, toHex, toP3, toast, useApplyTheme, useAvatarColoring, useClock, useClosePopover, useClosingValue, useColorMode, useConfirm, useContextMenu, useCopy, useCssIsDark, useElapsed, useFieldControl, useFieldLabelledControl, useListboxNavigation, useLocale, useMenuOpenedBy, useNavigation, useOpenMenu, useOptionalWorkflowEngine, usePersistedState, useProblemText, useProvisionCorsRules, useRelativeTime, useRunFile, useSeriesHighlight, useShortcutFormat, useShortcutKey, useSlots, useStrings, useWorkflowActions, useWorkflowEditing, useWorkflowEngine, useWorkflowEngineLoader };
87
+ export { ActionMenu, AppLink, Autocomplete, Avatar, AvatarGroup, Breadcrumbs, Button, CODE_STYLES, Calendar, Callout, Card, CardHeader, ChartLegendList, ChartTooltipContent, Checkbox, CheckboxGroup, CodeBlock, ColorInput, Combobox, ConfirmModal, ContextMenuProvider, CopyButton, CopyCodeBlock, CountBadge, CreateModal, CreateModalSelect, CreateModalSwitch, DEFAULT_CONTRAST, DEFAULT_PRESET, DEFAULT_THEME, DatePicker, DescriptionList, DescriptionListGroup, DescriptionListItem, Disclosure, DisclosurePanel, Drawer, Elapsed, EmptyState, ErrorPage, ErrorText, ExternalLink, Field, FieldOption, FieldValue, FileButton, HoverCard, IconButton, InfoTip, Input, JND, Kbd, LetterBadge, ListboxGroup, ListboxOption, ListboxPanel, Loader, LoadingRegion, Markdown, MenuCheckboxItem, MenuEntries, MenuFilter, MenuGroupLabel, MenuItem, MenuLinkItem, MenuPopup, MenuRadioItem, MenuSeparator, MenuSubmenuTrigger, Meter, MethodButton, Modal, ModalDescription, ModalTitle, NumberInput, OneTimeCodeInput, Overview, PAGE_SIZES, PageHeader, PageHeaderAction, PageHeaderAddButton, PageHeaderBar, PageHeaderMenu, PageHeaderProvider, Pagination, Popover, PopoverClose, ProgressBar, Radio, RadioGroup, RefreshButton, RelativeTime, RequiredMark, RevealToggle, RunStatusIcon, SIDEBAR_TOKENS, SearchInput, Section, SegmentedControl, Select, SelectionCopy, SeriesSwatch, SettingModeOption, SettingRow, SettingsCard, SettingsHeading, Skeleton, Slider, StatusBadge, StatusDot, StickyBar, Switch, THEME_PRESETS, THEME_TOKENS, TabPanel, Table, Tabs, Tag, TagList, Textarea, ThemeEditor, ThemePreview, TitleInput, ToggleGroup, Tooltip, TooltipProvider, UIProvider, apcaContrast, applyTheme, ariaKeyShortcuts, avatarInitials, buttonClasses, categoryClasses, categoryOf, collapsePanelClassName, composite, contrastRatio, cx, deltaE, deriveTheme, errorPageKind, fieldBox, fitSeed, formatBytes, formatCount, formatDateTime, formatDuration, formatInfoTipContent, formatShortcut, formatTimeLeft, generateTheme, isApplePlatform, isDarkColor, isMenuDivider, isMenuGroup, isMenuSubmenu, isPlainClick, isTextEntryContext, levelTone, menuDivider, modalPanelClassName, modeOf, normalizeTags, parseColor, parseTheme, prefersWideGamut, resolveMode, runStatusTone, schemeFor, serializeTheme, seriesColor, seriesColors, seriesOpacity, seriesSlotColor, shortcutText, statusTextClass, tagClasses, themeStylesheet, toHex, toP3, toast, useApplyTheme, useAvatarColoring, useClock, useCloseMenu, useClosePopover, useClosingValue, useColorMode, useConfirm, useContextMenu, useCopy, useCssIsDark, useElapsed, useFieldControl, useFieldLabelledControl, useListboxNavigation, useLocale, useMenuOpenedBy, useNavigation, useOpenMenu, useOptionalWorkflowEngine, usePersistedState, useProblemText, useProvisionCorsRules, useRelativeTime, useRunFile, useSeriesHighlight, useShortcutFormat, useShortcutKey, useSlots, useStrings, useWorkflowActions, useWorkflowEditing, useWorkflowEngine, useWorkflowEngineLoader };
@@ -61,6 +61,7 @@
61
61
  --theme-shadow-xl:
62
62
  0 25px 80px -20px light-dark(rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.6)),
63
63
  0 10px 30px -10px light-dark(rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.4));
64
+ --theme-backdrop: light-dark(rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.65));
64
65
  --theme-code-bg: light-dark(#e7eaee, #1c242c);
65
66
  --theme-code-text: light-dark(#1c2330, #e1e9f2);
66
67
  --theme-code-comment: light-dark(#555d6c, #c0c8d1);