@parallelworks/ui 0.59.0 → 0.61.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.
@@ -1,6 +1,6 @@
1
1
  import { cx } from "../cx.js";
2
2
  import { buttonClasses } from "../components/buttonClasses.js";
3
- import { AccessIcon, ChevronDownIcon, ChevronRightIcon, CollapseIcon, DownloadIcon, FileIcon, FileTextIcon, FolderIcon, FolderTreeIcon, LinkIcon, PreviewIcon, ShareIcon, TrashIcon, UploadIcon } from "../icons.js";
3
+ import { AccessIcon, ChevronDownIcon, CollapseIcon, DownloadIcon, FileIcon, FileTextIcon, FolderIcon, FolderTreeIcon, LinkIcon, PreviewIcon, ShareIcon, TrashIcon, UploadIcon } from "../icons.js";
4
4
  import { MenuItem, MenuPopup, MenuSeparator } from "../components/Menu.js";
5
5
  import { safeUrl } from "../safeUrl.js";
6
6
  import { Loader } from "../components/Loader.js";
@@ -8,8 +8,8 @@ import { toast } from "../components/Toast.js";
8
8
  import { keyedByContent } from "../components/keys.js";
9
9
  import { Tooltip } from "../components/Tooltip.js";
10
10
  import { useNavigation, usePersistedState, useSlots, useStrings } from "../components/Provider.js";
11
- import { AppLink } from "../components/AppLink.js";
12
11
  import { useCopy } from "../components/useCopy.js";
12
+ import { Breadcrumbs } from "../components/Breadcrumbs.js";
13
13
  import { Button } from "../components/Button.js";
14
14
  import { Callout } from "../components/Callout.js";
15
15
  import { InfoTip } from "../components/InfoTip.js";
@@ -68,7 +68,6 @@ function UriCard({ value }) {
68
68
  ]
69
69
  });
70
70
  }
71
- var breadcrumbClass = "max-w-[16rem] cursor-pointer truncate text-(--theme-muted-text-color) transition-colors hover:text-(--theme-app)";
72
71
  /** `href` resolved against the page, as the browser's "Copy link" gives it. */
73
72
  function absoluteUrl(href) {
74
73
  const url = safeUrl(href);
@@ -720,36 +719,17 @@ function FileExplorer({ storages, onRefresh, refreshKey, onOpenFile, showUserHie
720
719
  cur = treeMap[getParentPath(cur.path)];
721
720
  }
722
721
  if (chain.length === 0) return null;
723
- return /* @__PURE__ */ jsx("nav", {
724
- "aria-label": t.chrome.location,
725
- className: "flex min-w-0 flex-1 overflow-hidden text-[13px]",
726
- children: /* @__PURE__ */ jsx("ol", {
727
- className: "flex min-w-0 items-center gap-1",
728
- children: chain.map((node, i) => {
729
- const isLast = i === chain.length - 1;
730
- const label = node.displayName || node.name;
731
- return /* @__PURE__ */ jsxs("li", {
732
- className: "flex min-w-0 items-center gap-1",
733
- children: [i > 0 && /* @__PURE__ */ jsx(ChevronRightIcon, {
734
- "aria-hidden": "true",
735
- className: "h-3 w-3 shrink-0 text-(--theme-muted-text-color) rtl:rotate-180"
736
- }), isLast ? /* @__PURE__ */ jsx("span", {
737
- "aria-current": "location",
738
- className: "truncate font-semibold text-(--theme-app)",
739
- children: label
740
- }) : pathHref ? /* @__PURE__ */ jsx(AppLink, {
741
- href: pathHref(node.path),
742
- className: breadcrumbClass,
743
- children: label
744
- }) : /* @__PURE__ */ jsx("button", {
745
- type: "button",
746
- onClick: () => handleSelectTreeItem(node.path, node),
747
- className: breadcrumbClass,
748
- children: label
749
- })]
750
- }, node.path);
751
- })
752
- })
722
+ return /* @__PURE__ */ jsx(Breadcrumbs, {
723
+ label: t.chrome.location,
724
+ current: "location",
725
+ crumbs: chain.map((node) => ({
726
+ label: node.displayName || node.name,
727
+ href: pathHref?.(node.path)
728
+ })),
729
+ onSelect: (_, i) => {
730
+ const node = chain[i];
731
+ if (node) handleSelectTreeItem(node.path, node);
732
+ }
753
733
  });
754
734
  };
755
735
  const generateDownloadCommand = () => {
@@ -2,10 +2,10 @@ import { cx } from "../cx.js";
2
2
  import { CustomizeIcon, DiskIcon, FileIcon, FileTextIcon, FolderIcon, ImageIcon, PdfIcon, RefreshIcon, RetryIcon, ShareIcon, SpreadsheetIcon, UserIcon, VideoIcon, WarningIcon, ZipIcon } from "../icons.js";
3
3
  import { toast } from "../components/Toast.js";
4
4
  import { usePersistedState, useProvisionCorsRules, useSlots, useStrings } from "../components/Provider.js";
5
+ import { Skeleton } from "../components/Skeleton.js";
5
6
  import { Button } from "../components/Button.js";
6
7
  import { Callout } from "../components/Callout.js";
7
8
  import { ProgressBar } from "../components/Meter.js";
8
- import { Skeleton } from "../components/Skeleton.js";
9
9
  import { formatBytes } from "../format.js";
10
10
  import { useElapsed } from "../components/relativeTime.js";
11
11
  import { ListSkeleton } from "../list/ListTable.js";
package/dist/index.d.ts CHANGED
@@ -1,6 +1,7 @@
1
1
  export { ActionMenu } from './components/ActionMenu.js';
2
2
  export { AppLink, type AppLinkProps, isPlainClick, type LinkTarget, } from './components/AppLink.js';
3
3
  export { Avatar, type AvatarProps, type AvatarSize, type AvatarStatus, avatarInitials, } from './components/Avatar.js';
4
+ export { type Breadcrumb, Breadcrumbs, type BreadcrumbsProps } from './components/Breadcrumbs.js';
4
5
  export { Button, type ButtonProps, MethodButton } from './components/Button.js';
5
6
  export { type ButtonSize, type ButtonStyle, type ButtonVariant, buttonClasses, } from './components/buttonClasses.js';
6
7
  export { Callout, type CalloutProps, type CalloutTone } from './components/Callout.js';
@@ -37,7 +38,7 @@ export { Modal, ModalDescription, type ModalProps, type ModalSize, ModalTitle, m
37
38
  export { NumberInput, type NumberInputProps } from './components/NumberInput.js';
38
39
  export { OneTimeCodeInput, type OneTimeCodeInputProps } from './components/OneTimeCodeInput.js';
39
40
  export { Overview, type OverviewProps } from './components/Overview.js';
40
- export { type Breadcrumb, PageHeader, PageHeaderBar, type PageHeaderBarProps, type PageHeaderProps, PageHeaderProvider, } from './components/PageHeader.js';
41
+ export { PageHeader, PageHeaderBar, type PageHeaderBarProps, type PageHeaderProps, PageHeaderProvider, } from './components/PageHeader.js';
41
42
  export { PageHeaderAction, type PageHeaderActionProps, PageHeaderAddButton, type PageHeaderAddButtonProps, PageHeaderMenu, } from './components/PageHeaderAction.js';
42
43
  export { PAGE_SIZES, Pagination, type PaginationProps } from './components/Pagination.js';
43
44
  export { Popover, PopoverClose, type PopoverProps, useClosePopover, } from './components/Popover.js';
package/dist/index.js CHANGED
@@ -12,6 +12,8 @@ import { MenuEntries, MenuFilter, menuDivider } from "./components/MenuEntries.j
12
12
  import { ActionMenu } from "./components/ActionMenu.js";
13
13
  import { categoryClasses, categoryOf } from "./components/category.js";
14
14
  import { Avatar, avatarInitials } from "./components/Avatar.js";
15
+ import { LoadingRegion, Skeleton } from "./components/Skeleton.js";
16
+ import { Breadcrumbs } from "./components/Breadcrumbs.js";
15
17
  import { Button, MethodButton } from "./components/Button.js";
16
18
  import { isTextEntryContext, useShortcutKey } from "./components/shortcutKey.js";
17
19
  import { IconButton } from "./components/IconButton.js";
@@ -49,7 +51,6 @@ import Markdown from "./components/Markdown.js";
49
51
  import { Meter, ProgressBar, levelTone } from "./components/Meter.js";
50
52
  import { NumberInput } from "./components/NumberInput.js";
51
53
  import { OneTimeCodeInput } from "./components/OneTimeCodeInput.js";
52
- import { LoadingRegion, Skeleton } from "./components/Skeleton.js";
53
54
  import { Overview } from "./components/Overview.js";
54
55
  import { PageHeader, PageHeaderBar, PageHeaderProvider } from "./components/PageHeader.js";
55
56
  import { PageHeaderAction, PageHeaderAddButton, PageHeaderMenu } from "./components/PageHeaderAction.js";
@@ -74,4 +75,4 @@ import { ThemeEditor, ThemePreview } from "./components/ThemeEditor.js";
74
75
  import { ToggleGroup } from "./components/ToggleGroup.js";
75
76
  import { useCssIsDark } from "./components/useCssIsDark.js";
76
77
  import { useApplyTheme, useColorMode } from "./components/useTheme.js";
77
- export { ActionMenu, AppLink, Autocomplete, Avatar, Button, CODE_STYLES, Callout, Card, CardHeader, Checkbox, CheckboxGroup, ColorInput, Combobox, ConfirmModal, CopyButton, CopyCodeBlock, CreateModal, CreateModalSelect, CreateModalSwitch, DEFAULT_CONTRAST, DEFAULT_PRESET, DEFAULT_THEME, DatePicker, DescriptionList, DescriptionListGroup, DescriptionListItem, Disclosure, DisclosurePanel, Drawer, Elapsed, EmptyState, ErrorText, ExternalLink, Field, FieldOption, FieldValue, HoverCard, IconButton, InfoTip, Input, JND, LetterBadge, 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, SettingModeOption, SettingRow, SettingsCard, SettingsHeading, Skeleton, Slider, StatusBadge, StatusDot, StickyBar, Switch, THEME_PRESETS, THEME_TOKENS, TabPanel, Table, Tabs, Textarea, ThemeEditor, ThemePreview, ToggleGroup, Tooltip, TooltipProvider, UIProvider, apcaContrast, applyTheme, avatarInitials, buttonClasses, categoryClasses, categoryOf, composite, contrastRatio, cx, deltaE, deriveTheme, fieldBox, fitSeed, formatBytes, formatCount, formatDateTime, formatDuration, formatInfoTipContent, formatTimeLeft, generateTheme, isDarkColor, isPlainClick, isTextEntryContext, levelTone, menuDivider, modalPanelClassName, modeOf, parseColor, parseTheme, prefersWideGamut, resolveMode, runStatusTone, schemeFor, serializeTheme, statusTextClass, themeStylesheet, toHex, toP3, toast, useApplyTheme, useClock, useClosePopover, useColorMode, useContextMenu, useCopy, useCssIsDark, useElapsed, useFieldControl, useFieldLabelledControl, useNavigation, useOptionalWorkflowEngine, usePersistedState, useProvisionCorsRules, useRelativeTime, useRunFile, useShortcutKey, useSlots, useStrings, useWorkflowActions, useWorkflowEditing, useWorkflowEngine, useWorkflowEngineLoader };
78
+ export { ActionMenu, AppLink, Autocomplete, Avatar, Breadcrumbs, Button, CODE_STYLES, Callout, Card, CardHeader, Checkbox, CheckboxGroup, ColorInput, Combobox, ConfirmModal, CopyButton, CopyCodeBlock, CreateModal, CreateModalSelect, CreateModalSwitch, DEFAULT_CONTRAST, DEFAULT_PRESET, DEFAULT_THEME, DatePicker, DescriptionList, DescriptionListGroup, DescriptionListItem, Disclosure, DisclosurePanel, Drawer, Elapsed, EmptyState, ErrorText, ExternalLink, Field, FieldOption, FieldValue, HoverCard, IconButton, InfoTip, Input, JND, LetterBadge, 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, SettingModeOption, SettingRow, SettingsCard, SettingsHeading, Skeleton, Slider, StatusBadge, StatusDot, StickyBar, Switch, THEME_PRESETS, THEME_TOKENS, TabPanel, Table, Tabs, Textarea, ThemeEditor, ThemePreview, ToggleGroup, Tooltip, TooltipProvider, UIProvider, apcaContrast, applyTheme, avatarInitials, buttonClasses, categoryClasses, categoryOf, composite, contrastRatio, cx, deltaE, deriveTheme, fieldBox, fitSeed, formatBytes, formatCount, formatDateTime, formatDuration, formatInfoTipContent, formatTimeLeft, generateTheme, isDarkColor, isPlainClick, isTextEntryContext, levelTone, menuDivider, modalPanelClassName, modeOf, parseColor, parseTheme, prefersWideGamut, resolveMode, runStatusTone, schemeFor, serializeTheme, statusTextClass, themeStylesheet, toHex, toP3, toast, useApplyTheme, useClock, useClosePopover, useColorMode, useContextMenu, useCopy, useCssIsDark, useElapsed, useFieldControl, useFieldLabelledControl, useNavigation, useOptionalWorkflowEngine, usePersistedState, useProvisionCorsRules, useRelativeTime, useRunFile, useShortcutKey, useSlots, useStrings, useWorkflowActions, useWorkflowEditing, useWorkflowEngine, useWorkflowEngineLoader };
@@ -3,8 +3,8 @@ import { ErrorIcon } from "../icons.js";
3
3
  import { positionKeys } from "../components/keys.js";
4
4
  import { useStrings } from "../components/Provider.js";
5
5
  import { AppLink } from "../components/AppLink.js";
6
- import { Checkbox } from "../components/Checkbox.js";
7
6
  import { LoadingRegion, Skeleton } from "../components/Skeleton.js";
7
+ import { Checkbox } from "../components/Checkbox.js";
8
8
  import { Table } from "../components/Table.js";
9
9
  import { Fragment, jsx, jsxs } from "react/jsx-runtime";
10
10
  import { createContext, useContext } from "react";
@@ -1,8 +1,8 @@
1
1
  import { cx } from "../cx.js";
2
2
  import { useLink, useStrings } from "../components/Provider.js";
3
3
  import { Avatar } from "../components/Avatar.js";
4
- import { CopyButton } from "../components/CopyButton.js";
5
4
  import { LoadingRegion, Skeleton } from "../components/Skeleton.js";
5
+ import { CopyButton } from "../components/CopyButton.js";
6
6
  import { Fragment, jsx, jsxs } from "react/jsx-runtime";
7
7
  //#region src/list/UserHoverCard.tsx
8
8
  function UserHoverCard({ username, name, avatarSrc, badge, href, linkComponent, loading = false, children }) {