@adea-ai/ui 0.142.4 → 0.143.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 (81) hide show
  1. package/dist/components/composites/accent-picker/accent-picker.d.ts +28 -0
  2. package/dist/components/composites/accent-picker/accent-picker.d.ts.map +1 -0
  3. package/dist/components/composites/accent-picker/accent-picker.js +97 -0
  4. package/dist/components/composites/accent-picker/accent-picker.js.map +1 -0
  5. package/dist/components/composites/accent-picker/index.d.ts +2 -0
  6. package/dist/components/composites/accent-picker/index.d.ts.map +1 -0
  7. package/dist/components/composites/accent-picker/index.js +2 -0
  8. package/dist/components/composites/icon-picker/icon-picker.d.ts +37 -0
  9. package/dist/components/composites/icon-picker/icon-picker.d.ts.map +1 -0
  10. package/dist/components/composites/icon-picker/icon-picker.js +187 -0
  11. package/dist/components/composites/icon-picker/icon-picker.js.map +1 -0
  12. package/dist/components/composites/icon-picker/image-data-url.d.ts +42 -0
  13. package/dist/components/composites/icon-picker/image-data-url.d.ts.map +1 -0
  14. package/dist/components/composites/icon-picker/image-data-url.js +90 -0
  15. package/dist/components/composites/icon-picker/image-data-url.js.map +1 -0
  16. package/dist/components/composites/icon-picker/index.d.ts +4 -0
  17. package/dist/components/composites/icon-picker/index.d.ts.map +1 -0
  18. package/dist/components/composites/icon-picker/index.js +4 -0
  19. package/dist/components/composites/icon-picker/shell-icons.d.ts +264 -0
  20. package/dist/components/composites/icon-picker/shell-icons.d.ts.map +1 -0
  21. package/dist/components/composites/icon-picker/shell-icons.js +334 -0
  22. package/dist/components/composites/icon-picker/shell-icons.js.map +1 -0
  23. package/dist/components/composites/terminal/terminal.js +2 -2
  24. package/dist/components/composites/terminal/terminal.js.map +1 -1
  25. package/dist/components/composites/workspace-switcher/index.d.ts +2 -0
  26. package/dist/components/composites/workspace-switcher/index.d.ts.map +1 -0
  27. package/dist/components/composites/workspace-switcher/index.js +2 -0
  28. package/dist/components/composites/workspace-switcher/workspace-switcher.d.ts +44 -0
  29. package/dist/components/composites/workspace-switcher/workspace-switcher.d.ts.map +1 -0
  30. package/dist/components/composites/workspace-switcher/workspace-switcher.js +157 -0
  31. package/dist/components/composites/workspace-switcher/workspace-switcher.js.map +1 -0
  32. package/dist/components/layout/shell-rail/index.d.ts +2 -0
  33. package/dist/components/layout/shell-rail/index.d.ts.map +1 -0
  34. package/dist/components/layout/shell-rail/index.js +2 -0
  35. package/dist/components/layout/shell-rail/shell-rail.d.ts +36 -0
  36. package/dist/components/layout/shell-rail/shell-rail.d.ts.map +1 -0
  37. package/dist/components/layout/shell-rail/shell-rail.js +124 -0
  38. package/dist/components/layout/shell-rail/shell-rail.js.map +1 -0
  39. package/dist/components/layout/shell-top-bar/index.d.ts +2 -0
  40. package/dist/components/layout/shell-top-bar/index.d.ts.map +1 -0
  41. package/dist/components/layout/shell-top-bar/index.js +2 -0
  42. package/dist/components/layout/shell-top-bar/shell-top-bar.d.ts +68 -0
  43. package/dist/components/layout/shell-top-bar/shell-top-bar.d.ts.map +1 -0
  44. package/dist/components/layout/shell-top-bar/shell-top-bar.js +135 -0
  45. package/dist/components/layout/shell-top-bar/shell-top-bar.js.map +1 -0
  46. package/dist/index.d.ts +5 -0
  47. package/dist/index.d.ts.map +1 -1
  48. package/dist/index.js +8 -1
  49. package/dist/r/accent-picker.json +25 -0
  50. package/dist/r/icon-picker.json +36 -0
  51. package/dist/r/registry.json +137 -0
  52. package/dist/r/shell-rail.json +27 -0
  53. package/dist/r/shell-top-bar.json +23 -0
  54. package/dist/r/src/components/composites/accent-picker/accent-picker.tsx +85 -0
  55. package/dist/r/src/components/composites/accent-picker/index.ts +1 -0
  56. package/dist/r/src/components/composites/icon-picker/icon-picker.tsx +184 -0
  57. package/dist/r/src/components/composites/icon-picker/image-data-url.ts +107 -0
  58. package/dist/r/src/components/composites/icon-picker/index.ts +20 -0
  59. package/dist/r/src/components/composites/icon-picker/shell-icons.ts +166 -0
  60. package/dist/r/src/components/composites/workspace-switcher/index.ts +5 -0
  61. package/dist/r/src/components/composites/workspace-switcher/workspace-switcher.tsx +128 -0
  62. package/dist/r/src/components/layout/shell-rail/index.ts +1 -0
  63. package/dist/r/src/components/layout/shell-rail/shell-rail.tsx +120 -0
  64. package/dist/r/src/components/layout/shell-top-bar/index.ts +1 -0
  65. package/dist/r/src/components/layout/shell-top-bar/shell-top-bar.tsx +185 -0
  66. package/dist/r/workspace-switcher.json +26 -0
  67. package/package.json +1 -1
  68. package/registry.json +137 -0
  69. package/src/components/composites/accent-picker/accent-picker.tsx +85 -0
  70. package/src/components/composites/accent-picker/index.ts +1 -0
  71. package/src/components/composites/icon-picker/icon-picker.tsx +184 -0
  72. package/src/components/composites/icon-picker/image-data-url.ts +107 -0
  73. package/src/components/composites/icon-picker/index.ts +20 -0
  74. package/src/components/composites/icon-picker/shell-icons.ts +166 -0
  75. package/src/components/composites/workspace-switcher/index.ts +5 -0
  76. package/src/components/composites/workspace-switcher/workspace-switcher.tsx +128 -0
  77. package/src/components/layout/shell-rail/index.ts +1 -0
  78. package/src/components/layout/shell-rail/shell-rail.tsx +120 -0
  79. package/src/components/layout/shell-top-bar/index.ts +1 -0
  80. package/src/components/layout/shell-top-bar/shell-top-bar.tsx +185 -0
  81. package/src/index.ts +5 -0
@@ -0,0 +1,2 @@
1
+ import { ShellTopBar } from "./shell-top-bar.js";
2
+ export { ShellTopBar };
@@ -0,0 +1,68 @@
1
+ import type { ComponentProps, JSX } from 'solid-js';
2
+ /**
3
+ * ShellTopBar.
4
+ *
5
+ * The window's top bar as both applications draw it. It has two halves with a
6
+ * vertical divider between them:
7
+ *
8
+ * - **Leading**: history arrows, the sidebar toggle and the workspace
9
+ * switcher, in that order. This is the part that belongs to the window.
10
+ * - **Content**: breadcrumbs, search and the view's actions. This is the part
11
+ * that belongs to the view, and it always sits to the right of the divider.
12
+ *
13
+ * ## Why the divider tracks the sidebar
14
+ *
15
+ * With the sidebar open the divider lands on the sidebar's trailing edge, so the
16
+ * bar reads as the rail and sidebar's header on one side and the content's
17
+ * header on the other. The bar spans the rail and the sidebar (they sit under
18
+ * it), so the leading half is as wide as `--rail-width` plus the sidebar's width
19
+ * less the bar's own start padding. The host publishes the width as
20
+ * `--shell-sidebar-width` on an ancestor; the fallback of 17rem matches the
21
+ * default sidebar. Below the 48rem breakpoint the sidebar is a drawer and the
22
+ * leading half is only as wide as its controls.
23
+ *
24
+ * ## Narrow windows
25
+ *
26
+ * The bar is its own container. Below 34rem the search drops to a row of its
27
+ * own so the leading controls, the breadcrumb and the actions keep their room;
28
+ * the breadcrumb is the first thing to truncate.
29
+ *
30
+ * On a frameless desktop window the bar is the drag region (`draggable`) and
31
+ * every control opts back out; `macosInset` and `windowsInset` reserve the
32
+ * native window controls.
33
+ */
34
+ export type ShellTopBarProps = Omit<ComponentProps<'header'>, 'children'> & {
35
+ /** History arrows. Rendered first, left of the sidebar toggle. */
36
+ navigation?: JSX.Element;
37
+ /** The sidebar toggle button. */
38
+ sidebarToggle?: JSX.Element;
39
+ /** The workspace switcher. */
40
+ workspace?: JSX.Element;
41
+ /**
42
+ * Whether the sidebar is open at wide widths. Open, the divider aligns with
43
+ * the sidebar's edge; closed, the leading half hugs its controls.
44
+ */
45
+ sidebarOpen?: boolean;
46
+ /**
47
+ * The open sidebar's width in pixels. Published as `--shell-sidebar-width` on
48
+ * the bar so the divider tracks a resizable sidebar; leave it unset to use an
49
+ * ancestor's variable or the 17rem default.
50
+ */
51
+ sidebarWidth?: number;
52
+ /** Breadcrumbs or the view's title. Takes the free space and truncates first. */
53
+ breadcrumb?: JSX.Element;
54
+ /** The view's search. */
55
+ search?: JSX.Element;
56
+ /** The view's actions, at the trailing edge. */
57
+ actions?: JSX.Element;
58
+ /** Make the bar a drag region, for a frameless window. */
59
+ draggable?: boolean;
60
+ /** Reserve space for the macOS traffic lights. */
61
+ macosInset?: boolean;
62
+ /** Reserve space for the Windows caption buttons. */
63
+ windowsInset?: boolean;
64
+ /** Blur the content scrolling under the bar. */
65
+ glass?: boolean;
66
+ };
67
+ export declare function ShellTopBar(props: ShellTopBarProps): JSX.Element;
68
+ //# sourceMappingURL=shell-top-bar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shell-top-bar.d.ts","sourceRoot":"","sources":["../../../../src/components/layout/shell-top-bar/shell-top-bar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;AAKnD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,MAAM,MAAM,gBAAgB,GAAG,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,UAAU,CAAC,GAAG;IAC1E,kEAAkE;IAClE,UAAU,CAAC,EAAE,GAAG,CAAC,OAAO,CAAA;IACxB,iCAAiC;IACjC,aAAa,CAAC,EAAE,GAAG,CAAC,OAAO,CAAA;IAC3B,8BAA8B;IAC9B,SAAS,CAAC,EAAE,GAAG,CAAC,OAAO,CAAA;IACvB;;;OAGG;IACH,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,iFAAiF;IACjF,UAAU,CAAC,EAAE,GAAG,CAAC,OAAO,CAAA;IACxB,yBAAyB;IACzB,MAAM,CAAC,EAAE,GAAG,CAAC,OAAO,CAAA;IACpB,gDAAgD;IAChD,OAAO,CAAC,EAAE,GAAG,CAAC,OAAO,CAAA;IACrB,0DAA0D;IAC1D,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,kDAAkD;IAClD,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,qDAAqD;IACrD,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,gDAAgD;IAChD,KAAK,CAAC,EAAE,OAAO,CAAA;CAChB,CAAA;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,gBAAgB,eAiHlD"}
@@ -0,0 +1,135 @@
1
+ import { cn } from "../../../lib/utils.js";
2
+ import { Separator } from "../../ui/separator/separator.js";
3
+ import { className, createComponent, effect, insert, memo, mergeProps, setAttribute, spread, template } from "solid-js/web";
4
+ import { Show, children, splitProps } from "solid-js";
5
+ //#region src/components/layout/shell-top-bar/shell-top-bar.tsx
6
+ var _tmpl$ = /*#__PURE__*/ template(`<div data-slot=shell-top-bar-navigation class="flex shrink-0 items-center gap-2">`);
7
+ var _tmpl$2 = /*#__PURE__*/ template(`<div data-slot=shell-top-bar-toggle class="flex shrink-0 items-center">`);
8
+ var _tmpl$3 = /*#__PURE__*/ template(`<div data-slot=shell-top-bar-workspace class="flex min-w-0 items-center">`);
9
+ var _tmpl$4 = /*#__PURE__*/ template(`<div data-slot=shell-top-bar-breadcrumb class="window-no-drag flex h-topbar min-w-0 flex-1 items-center truncate ps-3 text-sm [&amp;_:is(a,button)]:window-no-drag">`);
10
+ var _tmpl$5 = /*#__PURE__*/ template(`<div class="min-w-0 flex-1"aria-hidden=true>`);
11
+ var _tmpl$6 = /*#__PURE__*/ template(`<div data-slot=shell-top-bar-search class="window-no-drag min-w-0 max-w-md shrink basis-72 px-3 @max-[34rem]/shell-top-bar:order-last @max-[34rem]/shell-top-bar:max-w-none @max-[34rem]/shell-top-bar:basis-full @max-[34rem]/shell-top-bar:pb-2">`);
12
+ var _tmpl$7 = /*#__PURE__*/ template(`<div data-slot=shell-top-bar-actions class="window-no-drag flex h-topbar min-w-0 shrink-0 items-center gap-2 overflow-x-auto overflow-y-hidden ps-1">`);
13
+ var _tmpl$8 = /*#__PURE__*/ template(`<header data-slot=shell-top-bar><div data-slot=shell-top-bar-leading>`);
14
+ function ShellTopBar(props) {
15
+ const [local, rest] = splitProps(props, [
16
+ "class",
17
+ "navigation",
18
+ "sidebarToggle",
19
+ "workspace",
20
+ "sidebarOpen",
21
+ "sidebarWidth",
22
+ "breadcrumb",
23
+ "search",
24
+ "actions",
25
+ "draggable",
26
+ "macosInset",
27
+ "windowsInset",
28
+ "glass"
29
+ ]);
30
+ const navigation = children(() => local.navigation);
31
+ const sidebarToggle = children(() => local.sidebarToggle);
32
+ const workspace = children(() => local.workspace);
33
+ const breadcrumb = children(() => local.breadcrumb);
34
+ const search = children(() => local.search);
35
+ const actions = children(() => local.actions);
36
+ return (() => {
37
+ var _el$ = _tmpl$8(), _el$2 = _el$.firstChild;
38
+ spread(_el$, mergeProps({
39
+ get ["class"]() {
40
+ return cn("@container/shell-top-bar relative z-(--z-sticky) flex min-h-topbar shrink-0 flex-wrap items-center border-b border-border bg-card text-card-foreground", local.glass && "glass-panel", local.draggable && "window-drag", local.macosInset ? "window-inset-macos [--shell-top-bar-inset:84px]" : "ps-3 [--shell-top-bar-inset:0.75rem]", local.windowsInset ? "window-inset-windows" : "pe-3", local.class);
41
+ },
42
+ get style() {
43
+ return memo(() => local.sidebarWidth === void 0)() ? void 0 : { "--shell-sidebar-width": `${local.sidebarWidth}px` };
44
+ }
45
+ }, rest), false, true);
46
+ insert(_el$2, createComponent(Show, {
47
+ get when() {
48
+ return navigation();
49
+ },
50
+ get children() {
51
+ var _el$3 = _tmpl$();
52
+ insert(_el$3, navigation);
53
+ return _el$3;
54
+ }
55
+ }), null);
56
+ insert(_el$2, createComponent(Show, {
57
+ get when() {
58
+ return sidebarToggle();
59
+ },
60
+ get children() {
61
+ var _el$4 = _tmpl$2();
62
+ insert(_el$4, sidebarToggle);
63
+ return _el$4;
64
+ }
65
+ }), null);
66
+ insert(_el$2, createComponent(Show, {
67
+ get when() {
68
+ return workspace();
69
+ },
70
+ get children() {
71
+ var _el$5 = _tmpl$3();
72
+ insert(_el$5, workspace);
73
+ return _el$5;
74
+ }
75
+ }), null);
76
+ insert(_el$, createComponent(Separator, {
77
+ orientation: "vertical",
78
+ "data-slot": "shell-top-bar-divider",
79
+ "aria-hidden": "true",
80
+ "class": "h-5"
81
+ }), null);
82
+ insert(_el$, createComponent(Show, {
83
+ get when() {
84
+ return breadcrumb();
85
+ },
86
+ get children() {
87
+ var _el$6 = _tmpl$4();
88
+ insert(_el$6, breadcrumb);
89
+ return _el$6;
90
+ }
91
+ }), null);
92
+ insert(_el$, createComponent(Show, {
93
+ get when() {
94
+ return !breadcrumb();
95
+ },
96
+ get children() {
97
+ return _tmpl$5();
98
+ }
99
+ }), null);
100
+ insert(_el$, createComponent(Show, {
101
+ get when() {
102
+ return search();
103
+ },
104
+ get children() {
105
+ var _el$8 = _tmpl$6();
106
+ insert(_el$8, search);
107
+ return _el$8;
108
+ }
109
+ }), null);
110
+ insert(_el$, createComponent(Show, {
111
+ get when() {
112
+ return actions();
113
+ },
114
+ get children() {
115
+ var _el$9 = _tmpl$7();
116
+ insert(_el$9, actions);
117
+ return _el$9;
118
+ }
119
+ }), null);
120
+ effect((_p$) => {
121
+ var _v$ = local.sidebarOpen ? "true" : "false", _v$2 = cn("window-no-drag flex h-topbar min-w-0 shrink-0 items-center gap-2 overflow-x-auto overflow-y-hidden pe-3", local.sidebarOpen && "md:w-[calc(var(--rail-width)+var(--shell-sidebar-width,17rem)-var(--shell-top-bar-inset))]");
122
+ _v$ !== _p$.e && setAttribute(_el$2, "data-sidebar-open", _p$.e = _v$);
123
+ _v$2 !== _p$.t && className(_el$2, _p$.t = _v$2);
124
+ return _p$;
125
+ }, {
126
+ e: void 0,
127
+ t: void 0
128
+ });
129
+ return _el$;
130
+ })();
131
+ }
132
+ //#endregion
133
+ export { ShellTopBar };
134
+
135
+ //# sourceMappingURL=shell-top-bar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shell-top-bar.js","names":["ComponentProps","JSX","children","Show","splitProps","cn","Separator","ShellTopBarProps","Omit","navigation","Element","sidebarToggle","workspace","sidebarOpen","sidebarWidth","breadcrumb","search","actions","draggable","macosInset","windowsInset","glass","ShellTopBar","props","local","rest","_el$","_tmpl$8","_el$2","firstChild","_$spread","_$mergeProps","class","style","_$memo","undefined","_$insert","_$createComponent","when","_el$3","_tmpl$","_el$4","_tmpl$2","_el$5","_tmpl$3","orientation","_el$6","_tmpl$4","_tmpl$5","_el$8","_tmpl$6","_el$9","_tmpl$7","_$effect","_p$","_v$","_v$2","e","_$setAttribute","t","_$className","_$mergeProps","_$memo","_$createComponent","_$setAttribute","_$className"],"sources":["../../../../src/components/layout/shell-top-bar/shell-top-bar.tsx"],"sourcesContent":["import type { ComponentProps, JSX } from 'solid-js'\nimport { children, Show, splitProps } from 'solid-js'\nimport { cn } from '#lib/utils'\nimport { Separator } from '../../ui/separator'\n\n/**\n * ShellTopBar.\n *\n * The window's top bar as both applications draw it. It has two halves with a\n * vertical divider between them:\n *\n * - **Leading**: history arrows, the sidebar toggle and the workspace\n * switcher, in that order. This is the part that belongs to the window.\n * - **Content**: breadcrumbs, search and the view's actions. This is the part\n * that belongs to the view, and it always sits to the right of the divider.\n *\n * ## Why the divider tracks the sidebar\n *\n * With the sidebar open the divider lands on the sidebar's trailing edge, so the\n * bar reads as the rail and sidebar's header on one side and the content's\n * header on the other. The bar spans the rail and the sidebar (they sit under\n * it), so the leading half is as wide as `--rail-width` plus the sidebar's width\n * less the bar's own start padding. The host publishes the width as\n * `--shell-sidebar-width` on an ancestor; the fallback of 17rem matches the\n * default sidebar. Below the 48rem breakpoint the sidebar is a drawer and the\n * leading half is only as wide as its controls.\n *\n * ## Narrow windows\n *\n * The bar is its own container. Below 34rem the search drops to a row of its\n * own so the leading controls, the breadcrumb and the actions keep their room;\n * the breadcrumb is the first thing to truncate.\n *\n * On a frameless desktop window the bar is the drag region (`draggable`) and\n * every control opts back out; `macosInset` and `windowsInset` reserve the\n * native window controls.\n */\nexport type ShellTopBarProps = Omit<ComponentProps<'header'>, 'children'> & {\n /** History arrows. Rendered first, left of the sidebar toggle. */\n navigation?: JSX.Element\n /** The sidebar toggle button. */\n sidebarToggle?: JSX.Element\n /** The workspace switcher. */\n workspace?: JSX.Element\n /**\n * Whether the sidebar is open at wide widths. Open, the divider aligns with\n * the sidebar's edge; closed, the leading half hugs its controls.\n */\n sidebarOpen?: boolean\n /**\n * The open sidebar's width in pixels. Published as `--shell-sidebar-width` on\n * the bar so the divider tracks a resizable sidebar; leave it unset to use an\n * ancestor's variable or the 17rem default.\n */\n sidebarWidth?: number\n /** Breadcrumbs or the view's title. Takes the free space and truncates first. */\n breadcrumb?: JSX.Element\n /** The view's search. */\n search?: JSX.Element\n /** The view's actions, at the trailing edge. */\n actions?: JSX.Element\n /** Make the bar a drag region, for a frameless window. */\n draggable?: boolean\n /** Reserve space for the macOS traffic lights. */\n macosInset?: boolean\n /** Reserve space for the Windows caption buttons. */\n windowsInset?: boolean\n /** Blur the content scrolling under the bar. */\n glass?: boolean\n}\n\nexport function ShellTopBar(props: ShellTopBarProps) {\n const [local, rest] = splitProps(props, [\n 'class',\n 'navigation',\n 'sidebarToggle',\n 'workspace',\n 'sidebarOpen',\n 'sidebarWidth',\n 'breadcrumb',\n 'search',\n 'actions',\n 'draggable',\n 'macosInset',\n 'windowsInset',\n 'glass',\n ])\n\n // Resolve each slot once: a JSX prop is a getter that builds its elements on\n // every read, so testing it with `Show` and then rendering it would build\n // (and run the refs of) two copies.\n const navigation = children(() => local.navigation)\n const sidebarToggle = children(() => local.sidebarToggle)\n const workspace = children(() => local.workspace)\n const breadcrumb = children(() => local.breadcrumb)\n const search = children(() => local.search)\n const actions = children(() => local.actions)\n\n return (\n <header\n data-slot=\"shell-top-bar\"\n class={cn(\n '@container/shell-top-bar relative z-(--z-sticky) flex min-h-topbar shrink-0 flex-wrap items-center border-b border-border bg-card text-card-foreground',\n local.glass && 'glass-panel',\n local.draggable && 'window-drag',\n /* Each edge gets exactly one inline-padding utility, for the reason the\n shared TopBar documents: two would tie-break by build order. The inset\n is also published as a variable so the leading half can subtract it. */\n local.macosInset\n ? 'window-inset-macos [--shell-top-bar-inset:84px]'\n : 'ps-3 [--shell-top-bar-inset:0.75rem]',\n local.windowsInset ? 'window-inset-windows' : 'pe-3',\n local.class\n )}\n style={\n local.sidebarWidth === undefined\n ? undefined\n : { '--shell-sidebar-width': `${local.sidebarWidth}px` }\n }\n {...rest}\n >\n <div\n data-slot=\"shell-top-bar-leading\"\n data-sidebar-open={local.sidebarOpen ? 'true' : 'false'}\n class={cn(\n 'window-no-drag flex h-topbar min-w-0 shrink-0 items-center gap-2 overflow-x-auto overflow-y-hidden pe-3',\n /* Wide and open: span the rail and the sidebar so the divider lands on\n the sidebar's edge. The sidebar's own border is the 1px the divider\n overlaps, so no extra allowance is needed. */\n local.sidebarOpen &&\n 'md:w-[calc(var(--rail-width)+var(--shell-sidebar-width,17rem)-var(--shell-top-bar-inset))]'\n )}\n >\n <Show when={navigation()}>\n <div data-slot=\"shell-top-bar-navigation\" class=\"flex shrink-0 items-center gap-2\">\n {navigation()}\n </div>\n </Show>\n <Show when={sidebarToggle()}>\n <div data-slot=\"shell-top-bar-toggle\" class=\"flex shrink-0 items-center\">\n {sidebarToggle()}\n </div>\n </Show>\n <Show when={workspace()}>\n <div data-slot=\"shell-top-bar-workspace\" class=\"flex min-w-0 items-center\">\n {workspace()}\n </div>\n </Show>\n </div>\n <Separator\n orientation=\"vertical\"\n data-slot=\"shell-top-bar-divider\"\n aria-hidden=\"true\"\n class=\"h-5\"\n />\n <Show when={breadcrumb()}>\n <div\n data-slot=\"shell-top-bar-breadcrumb\"\n class=\"window-no-drag flex h-topbar min-w-0 flex-1 items-center truncate ps-3 text-sm [&_:is(a,button)]:window-no-drag\"\n >\n {breadcrumb()}\n </div>\n </Show>\n <Show when={!breadcrumb()}>\n <div class=\"min-w-0 flex-1\" aria-hidden=\"true\" />\n </Show>\n <Show when={search()}>\n <div\n data-slot=\"shell-top-bar-search\"\n class=\"window-no-drag min-w-0 max-w-md shrink basis-72 px-3 @max-[34rem]/shell-top-bar:order-last @max-[34rem]/shell-top-bar:max-w-none @max-[34rem]/shell-top-bar:basis-full @max-[34rem]/shell-top-bar:pb-2\"\n >\n {search()}\n </div>\n </Show>\n <Show when={actions()}>\n <div\n data-slot=\"shell-top-bar-actions\"\n class=\"window-no-drag flex h-topbar min-w-0 shrink-0 items-center gap-2 overflow-x-auto overflow-y-hidden ps-1\"\n >\n {actions()}\n </div>\n </Show>\n </header>\n )\n}\n"],"mappings":";;;;;;;;;;;;;AAuEA,SAAgBsB,YAAYC,OAAyB;CACnD,MAAM,CAACC,OAAOC,QAAQrB,WAAWmB,OAAO;EACtC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CAAO,CACR;CAKD,MAAMd,aAAaP,eAAesB,MAAMf,UAAU;CAClD,MAAME,gBAAgBT,eAAesB,MAAMb,aAAa;CACxD,MAAMC,YAAYV,eAAesB,MAAMZ,SAAS;CAChD,MAAMG,aAAab,eAAesB,MAAMT,UAAU;CAClD,MAAMC,SAASd,eAAesB,MAAMR,MAAM;CAC1C,MAAMC,UAAUf,eAAesB,MAAMP,OAAO;CAE5C,cAAA;EAAA,IAAAS,OAAAC,QAAA,GAAAC,QAAAF,KAAAG;EAAAC,OAAAJ,MAAAK,WAAA;GAAA,KAAA,WAAA;IAAA,OAGW1B,GACL,0JACAmB,MAAMH,SAAS,eACfG,MAAMN,aAAa,eAInBM,MAAML,aACF,oDACA,wCACJK,MAAMJ,eAAe,yBAAyB,QAC9CI,MAAMQ,KACR;GAAC;GAAA,IACDC,QAAK;IAAA,OACHC,WAAAV,MAAMV,iBAAiBqB,KAAAA,CAAS,CAAA,CAAA,IAC5BA,KAAAA,IACA,EAAE,yBAAyB,GAAGX,MAAMV,aAAY,IAAK;GAAC;EAAA,GAExDW,IAAI,GAAA,OAAA,IAAA;EAAAW,OAAAR,OAAAS,gBAcLlC,MAAI;GAAA,IAACmC,OAAI;IAAA,OAAE7B,WAAW;GAAC;GAAA,IAAAP,WAAA;IAAA,IAAAqC,QAAAC,OAAA;IAAAJ,OAAAG,OAEnB9B,UAAU;IAAA,OAAA8B;GAAA;EAAA,CAAA,GAAA,IAAA;EAAAH,OAAAR,OAAAS,gBAGdlC,MAAI;GAAA,IAACmC,OAAI;IAAA,OAAE3B,cAAc;GAAC;GAAA,IAAAT,WAAA;IAAA,IAAAuC,QAAAC,QAAA;IAAAN,OAAAK,OAEtB9B,aAAa;IAAA,OAAA8B;GAAA;EAAA,CAAA,GAAA,IAAA;EAAAL,OAAAR,OAAAS,gBAGjBlC,MAAI;GAAA,IAACmC,OAAI;IAAA,OAAE1B,UAAU;GAAC;GAAA,IAAAV,WAAA;IAAA,IAAAyC,QAAAC,QAAA;IAAAR,OAAAO,OAElB/B,SAAS;IAAA,OAAA+B;GAAA;EAAA,CAAA,GAAA,IAAA;EAAAP,OAAAV,MAAAW,gBAIf/B,WAAS;GACRuC,aAAW;GAAA,aAAA;GAAA,eAAA;GAAA,SAAA;EAAA,CAAA,GAAA,IAAA;EAAAT,OAAAV,MAAAW,gBAKZlC,MAAI;GAAA,IAACmC,OAAI;IAAA,OAAEvB,WAAW;GAAC;GAAA,IAAAb,WAAA;IAAA,IAAA4C,QAAAC,QAAA;IAAAX,OAAAU,OAKnB/B,UAAU;IAAA,OAAA+B;GAAA;EAAA,CAAA,GAAA,IAAA;EAAAV,OAAAV,MAAAW,gBAGdlC,MAAI;GAAA,IAACmC,OAAI;IAAA,OAAE,CAACvB,WAAW;GAAC;GAAA,IAAAb,WAAA;IAAA,OAAA8C,QAAA;GAAA;EAAA,CAAA,GAAA,IAAA;EAAAZ,OAAAV,MAAAW,gBAGxBlC,MAAI;GAAA,IAACmC,OAAI;IAAA,OAAEtB,OAAO;GAAC;GAAA,IAAAd,WAAA;IAAA,IAAA+C,QAAAC,QAAA;IAAAd,OAAAa,OAKfjC,MAAM;IAAA,OAAAiC;GAAA;EAAA,CAAA,GAAA,IAAA;EAAAb,OAAAV,MAAAW,gBAGVlC,MAAI;GAAA,IAACmC,OAAI;IAAA,OAAErB,QAAQ;GAAC;GAAA,IAAAf,WAAA;IAAA,IAAAiD,QAAAC,QAAA;IAAAhB,OAAAe,OAKhBlC,OAAO;IAAA,OAAAkC;GAAA;EAAA,CAAA,GAAA,IAAA;EAAAE,QAAAC,QAAA;GAAA,IAAAC,MAxDS/B,MAAMX,cAAc,SAAS,SAAO2C,OAChDnD,GACL,2GAIAmB,MAAMX,eACJ,4FACJ;GAAC0C,QAAAD,IAAAG,KAAAC,aAAA9B,OAAA,qBAAA0B,IAAAG,IAAAF,GAAA;GAAAC,SAAAF,IAAAK,KAAAC,UAAAhC,OAAA0B,IAAAK,IAAAH,IAAA;GAAA,OAAAF;EAAA,GAAA;GAAAG,GAAAtB,KAAAA;GAAAwB,GAAAxB,KAAAA;EAAA,CAAA;EAAA,OAAAT;CAAA,EAAA,CAAA;AAqDT"}
package/dist/index.d.ts CHANGED
@@ -94,6 +94,8 @@ export * from './components/layout/sidebar-nav';
94
94
  export * from './components/layout/contextual-sidebar';
95
95
  export * from './components/layout/status-bar';
96
96
  export * from './components/layout/top-bar';
97
+ export * from './components/layout/shell-top-bar';
98
+ export * from './components/layout/shell-rail';
97
99
  export * from './components/conversation';
98
100
  export * from './components/theme';
99
101
  export * from './components/composites/account-menu';
@@ -129,6 +131,9 @@ export * from './components/composites/update-dialog';
129
131
  export * from './components/composites/about-dialog';
130
132
  export * from './components/composites/help-center';
131
133
  export * from './components/composites/workspace-mark';
134
+ export * from './components/composites/workspace-switcher';
135
+ export * from './components/composites/icon-picker';
136
+ export * from './components/composites/accent-picker';
132
137
  export { cn } from './lib/utils';
133
138
  export { isCustomAccent, normalizeCustomAccent, paintAccentRoles, resolveAccentRoles, type AccentRoles, type AccentTarget, } from './lib/accent-roles';
134
139
  export { controlInteractive, controlSize, controlSizeIcon, controlSizes, cva, surfaceInteractive, type ControlSize, type VariantProps, } from './lib/variants';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -99,6 +99,8 @@ import { SidebarNavResizeHandle } from "./components/layout/sidebar-nav/sidebar-
99
99
  import { ContextualSidebar } from "./components/layout/contextual-sidebar/contextual-sidebar.js";
100
100
  import { StatusBar, StatusBarItem, StatusBarSpacer } from "./components/layout/status-bar/status-bar.js";
101
101
  import { TopBar, TopBarBreadcrumb, TopBarPill, TopBarSearch, TopBarSection, TopBarTitle } from "./components/layout/top-bar/top-bar.js";
102
+ import { ShellTopBar } from "./components/layout/shell-top-bar/shell-top-bar.js";
103
+ import { ShellRail } from "./components/layout/shell-rail/shell-rail.js";
102
104
  import { BusySendButton } from "./components/conversation/busy-send-button.js";
103
105
  import { ChatComposer } from "./components/conversation/chat-composer.js";
104
106
  import { ConversationAvatar } from "./components/conversation/conversation-avatar.js";
@@ -187,4 +189,9 @@ import { UpdateChannelControl } from "./components/composites/update-dialog/chan
187
189
  import { AboutDialog } from "./components/composites/about-dialog/about-dialog.js";
188
190
  import { HelpCenter } from "./components/composites/help-center/help-center.js";
189
191
  import { WorkspaceMark } from "./components/composites/workspace-mark/workspace-mark.js";
190
- export { ANSI_MAX_LINE_LENGTH, ANSI_RETAIN_LINES, APPEARANCE_EDITOR_FONT_AXES, APPEARANCE_EDITOR_FONT_SIZE_MAX, APPEARANCE_EDITOR_FONT_SIZE_MIN, AboutDialog, Accordion, AccordionContent, AccordionItem, AccordionTrigger, AccountMenu, ActionButton, Alert, AlertAction, AlertDescription, AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogOverlay, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger, AlertTitle, AnnotationSurface, AppShell, AppShellBody, AppShellContent, AppShellMain, AppearanceEditor, AppearanceEditorActions, AppearanceFontSettingsGroup, AppearancePanel, AppearancePopover, AspectRatio, Attachment, AttachmentCard, AttachmentList, Avatar, AvatarFallback, AvatarImage, Badge, Board, BoardCardBody, BoardCardTitle, BoardCardTrigger, Breadcrumb, BreadcrumbEllipsis, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, Bubble, BusySendButton, Button, ButtonGroup, ButtonGroupSeparator, ButtonGroupText, CHAIN_OF_THOUGHT_STATUS_LABELS, CODE_BLOCK_LINE_LIMIT, CalendarSurface, Callout, CalloutTitle, Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, CatalogBrowser, CatalogDetail, CatalogDetailSection, ChainOfThought, ChainOfThoughtResult, ChainOfThoughtResults, ChainOfThoughtStep, Chat, ChatComposer, ChatEmpty, ChatHeader, ChatNotice, Checkbox, CheckboxDescription, CheckboxLabel, Checkpoint, CodeBlock, Collapsible, CollapsibleContent, CollapsibleTrigger, Combobox, ComboboxClear, ComboboxContent, ComboboxControl, ComboboxInput, ComboboxItem, ComboboxSection, ComboboxTrigger, Command, CommandDialog, CommandEmpty, CommandGroup, CommandHint, CommandInput, CommandItem, CommandList, CommandLoading, CommandSeparator, CommandShortcut, CommandStatus, ComposerAttachmentButton, ComposerHint, ComposerMenu, ComposerMenuItem, Confirmation, Context, ContextMenu, ContextMenuCheckboxItem, ContextMenuContent, ContextMenuGroup, ContextMenuItem, ContextMenuLabel, ContextMenuRadioGroup, ContextMenuRadioItem, ContextMenuSeparator, ContextMenuSub, ContextMenuSubContent, ContextMenuSubTrigger, ContextMenuTrigger, ContextualSidebar, ConversationAvatar, ConversationPane, ConversationSurface, DEFAULT_APPEARANCE_EDITOR_FONT_SETTINGS, DatePicker, DetailPanel, DetailPanelBody, DetailPanelField, DetailPanelHeader, DetailPanelSection, Dialog, DialogClose, DialogCloseButton, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, DiffBlock, DiffSummary, Drawer, DrawerBody, DrawerCloseButton, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerOverlay, DrawerTitle, DrawerTrigger, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, Empty, EmptyContent, EmptyDescription, EmptyHeader, EmptyMedia, EmptyState, EmptyTitle, EntityIcon, FILE_CHANGE_LABELS, FILE_TREE_AUTO_EXPAND_LIMIT, FILE_TREE_MAX_DEPTH, FILE_TREE_MAX_ROWS, FLOATING_PREVIEW_CORNER_RADIUS, FLOATING_PREVIEW_EDGE_GAP, Field, FieldDescription, FieldError, FieldGroup, FieldInput, FieldLabel, FieldLegend, FieldSeparator, FieldSet, FieldTextArea, FileTree, FloatingPreview, FormField, Heading, HelpCenter, HoverCard, HoverCardContent, HoverCardTrigger, InlineCitation, InlineCode, Input, InputControl, InputGroup, InputGroupAddon, InputGroupButton, InputGroupInput, InputGroupText, InputOtp, InputOtpCaret, Item, ItemDescription, ItemEmpty, ItemGroup, ItemGroupEntry, ItemTitle, Kbd, KbdChord, KbdGroup, Label, ListGroup, ListRow, ListRowControl, MAX_LAYOUT_DEPTH, MAX_LAYOUT_LEAVES, MAX_SPLIT_RATIO, MIN_SPLIT_RATIO, MODEL_SEARCH_THRESHOLD, Marker, Menubar, MenubarCheckboxItem, MenubarContent, MenubarGroup, MenubarItem, MenubarLabel, MenubarMenu, MenubarRadioGroup, MenubarRadioItem, MenubarSeparator, MenubarSub, MenubarSubContent, MenubarSubTrigger, MenubarTrigger, Message, MessageActions, MessageBody, MessageComposer, MessageContent, MessageDayDivider, MessageFooter, MessageGroup, MessageHeader, MessageRow, MessageScroller, MessageText, ModalDialog, ModelSelector, Motion, NO_FLOATING_PREVIEW_OBSTACLES, NO_PREVIEW_MINI_PLAYER_OBSTACLES, NativeSelect, NavigationMenu, NavigationMenuContent, NavigationMenuGroup, NavigationMenuGroupLabel, NavigationMenuItem, NavigationMenuMenu, NavigationMenuSeparator, NavigationMenuTrigger, NavigationMenuViewport, NumberField, OrbitItem, OrbitLayout, PASTE_THRESHOLD_CHARS, PASTE_THRESHOLD_LINES, PASTE_TOKEN_REGEX, PREVIEW_MINI_PLAYER_CORNER_RADIUS, PREVIEW_MINI_PLAYER_EDGE_GAP, Page, PageHeader, PageHeaderActions, PageHeaderContent, PageHeaderDescription, PageHeaderTitle, PageSection, Pagination, PaginationEllipsis, PaginationItem, PaginationNext, PaginationPrevious, PalettePreview, Panel, PanelActions, PanelBody, PanelCard, PanelDescription, PanelFooter, PanelHeader, PanelPlaceholder, PanelTitle, PanelToolbar, PixelResizeHandle, Plan, Popover, PopoverAnchor, PopoverCloseButton, PopoverContent, PopoverDescription, PopoverTitle, PopoverTrigger, Presence, Progress, PropertyList, PropertyRow, PropertyTerm, PropertyValue, Questionnaire, Queue, QueueFollowUps, REDUCED_TRANSPARENCY_QUERY, RadioGroup, RadioGroupItem, Reasoning, ResizableHandle, ResizablePanel, ResizablePanelGroup, SOURCE_SNIPPET_LIMIT, SOURCE_TITLE_LIMIT, STACK_MAX_LINES, STACK_TRACE_MAX_BLOCKS, SceneControls, ScrollArea, SecretInputGroup, Select, SelectChevronsUpDown, SelectContent, SelectItem, SelectLabel, SelectSection, SelectTrigger, SelectValue, Separator, SettingsField, SettingsLayout, SettingsNavigation, SettingsPage, SettingsRow, SettingsSection, Sheet, SheetBody, SheetCloseButton, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetTitle, SheetTrigger, SideRail, SideRailButton, SideRailContent, SideRailFooter, SideRailHeader, SideRailItem, SideRailSection, SidebarNav, SidebarNavButton, SidebarNavContent, SidebarNavFooter, SidebarNavHeader, SidebarNavItem, SidebarNavLabel, SidebarNavResizeHandle, SidebarNavRow, SidebarNavSection, SidebarNavTitle, Skeleton, SkipLink, Slider, Sources, Spinner, SplitLayout, StackTrace, Stat, StatGroup, StatusBar, StatusBarItem, StatusBarSpacer, StatusChip, StatusList, Subagent, Suggestion, Suggestions, Switch, SwitchDescription, SwitchLabel, TALL_CODE_BLOCK_PX, TASK_ITEM_STATUS_LABELS, TERMINAL_MAX_LINES, TEST_RESULTS_LIST_LIMIT, TOOL_STATUS_LABELS, TOOL_VALUE_MAX_CHARS, TRACE_STATUS_LABELS, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableNumericCell, TableRow, Tabs, TabsContent, TabsList, TabsTrigger, Task, TaskItemList, TaskItemRow, Terminal, TestResults, Text, TextLink, Textarea, ThemeMiniature, ThemeMiniatureSplit, ThemeModeToggle, ThemePicker, ThemePreview, ThemeProvider, ThemeSwatch, ThemeToggle, ThreadPanel, Toaster, Toggle, ToggleGroup, ToggleGroupItem, Tool, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, TopBar, TopBarBreadcrumb, TopBarPill, TopBarSearch, TopBarSection, TopBarTitle, Trace, TraceDetail, TraceLine, TranscriptComposition, Tree, TreeRow, TreeRowActions, UpdateChannelControl, UpdateDialog, ValueCombobox, VirtualWindow, WorkspaceMark, accentPresets, alertVariants, allTokens, ansi256ToColor, ansiLineText, appearancePreviewThemes, applyAppearanceFontSettings, badgeVariants, boardCardTitleVariants, boundText, breakdownRows, bubbleVariants, buildFileTree, builtinThemes, buttonVariants, calloutVariants, captureAnchor, cardVariants, chatNoticeVariants, checkpointLabel, checkpointStatus, citationLabel, citationName, clampFloatingPreviewPosition, clampPreviewMiniPlayerPosition, clampWindow, classifyFrame, closePane, cn, colorTokens, computeLayoutFrames, confirmationOutcome, contextLabel, contextLevel, contextLevelWord, contextPercent, contextShort, contrastRatio, controlInteractive, controlSize, controlSizeIcon, controlSizes, countChanges, countLeaves, countLines, createAnsiParser, createAppMenuItems, createLayoutState, createVersionedPersistence, cva, decisionReason, dedentLines, defaultDarkThemeId, defaultLightThemeId, defaultPreferenceStorage, defaultThemeSelection, densityTokens, describeChanges, describeCount, describeFrameGroup, designTokens, diffLineVariants, diffStats, diffTargetPath, editorPaletteFor, elevationTokens, entityIconVariants, expandAll, findModel, findTokenRanges, firstFailureKey, flattenFileTree, focusPane, fontOptions, fontSettingsBootstrapScript, fontZoomShortcut, formatAttachmentSize, formatBytes, formatCost, formatDuration, formatExact, formatReleaseDate, formatDuration$1 as formatTestDuration, formatToken, formatTokens, formatToolValue, frameLocation, groupModels, groupStackEntries, hasContextFigures, headingElement, headingVariants, indexFileTree, initialExpanded, initialsFrom, inlineScriptLiteral, isAwaitingAnswer, isCustomAccent, isFailedExit, isFigure, isPasteBlock, isPlainStyle, isQuestionAnswered, isThemeAccentId, itemVariants, kbdChordKeys, kbdGroupVariants, kbdVariants, keyedRows, layoutDepth, listLeaves, listedCounts, localStoragePersistence, markerVariants, messageCitations, modelSearchValue, monogram, motionTokens, movePane, nearestAnsiColor, needsSearch, neighborLeaf, nextCitationMode, nextSeq, normalizeAppearanceEditorFontSettings, normalizeAppearanceEditorFontSize, normalizeCustomAccent, normalizeEfforts, normalizeLayout, normalizePath, normalizeSurface, paintAccentRoles, parseAnsi, parseDiff, parseInline, parseMessageText, parseStackTrace, partitionQueue, placeCitationMarkers, plainTextFromMarkdown, platformModifierKey, pruneBlocks, quarantineRecord, radiusTokens, readLegacyValue, readVersionedRecord, reasoningTitle, recollapsePastes, reconcileCounts, recoveryEnvelope, recoveryKeyFor, remapCarriedBlocks, resizeFloatingPreview, resizePreviewMiniPlayer, resizeSplit, resolveAccentPreset, resolveAccentRoles, resolveColors, resolveEffort, resolveFloatingPreviewFrame, resolvePreviewMiniPlayerFrame, resolveSurface, resolveSurfaceState, resolveVariant, resolvedDensity, restoreAnchor, restoreControl, restoreDialogCopy, revealInWindow, safeHref, safePreviewSrc, safeSourceUrl, searchShortcutKeyshortcuts, searchShortcutLabel, settleDecision, sheetVariants, shouldCollapse, sidebarNavItemClass, sidebarNavItemStateClass, sourceHost, sourceTitle, sourcesLabel, splitLocation, splitPane, splitPaneBalanced, statusDotVariants, stepAppearanceFontSizes, stepCountLabel, stripTrailingBlankLines, suiteKey, suiteState, surfaceAlpha, surfaceInteractive, swapPanes, taskProgress, taskProgressLabel, terminalCssVariables, terminalStatusLabel, testKey, textElement, textVariants, textareaVariants, themeAccentsFor, themeById, themeCssVariables, themeFamilies, themeRecordById, themeRecords, themeScript, themeSurfaces, themesForAppearance, toast, toaster, toggleVariants, tokenRangeAt, tokensAsHex, transcriptDisclosureKey, typeaheadIndex, typographyTokens, undoClosePane, undocumentedTokenAliases, useOptionalTheme, useSideRail, useTheme, validateTheme, validateThemeRegistry, variantFromRecord, withAccent, wrapIndex, writeClipboardText, writeVersionedRecord, zIndexTokens };
192
+ import { WorkspaceSwitcher } from "./components/composites/workspace-switcher/workspace-switcher.js";
193
+ import { MARK_IMAGE_MAX_DATA_URL_LENGTH, MARK_IMAGE_MAX_SOURCE_BYTES, MARK_IMAGE_SIZE, MarkImageError, centredSquare, checkMarkImageFile, isMarkImageDataUrl, markImageFromFile, markImageProblemCopy } from "./components/composites/icon-picker/image-data-url.js";
194
+ import { isShellIconKey, resolveShellIcon, shellIconEntries, shellIconLabel } from "./components/composites/icon-picker/shell-icons.js";
195
+ import { IconPicker } from "./components/composites/icon-picker/icon-picker.js";
196
+ import { AccentPicker } from "./components/composites/accent-picker/accent-picker.js";
197
+ export { ANSI_MAX_LINE_LENGTH, ANSI_RETAIN_LINES, APPEARANCE_EDITOR_FONT_AXES, APPEARANCE_EDITOR_FONT_SIZE_MAX, APPEARANCE_EDITOR_FONT_SIZE_MIN, AboutDialog, AccentPicker, Accordion, AccordionContent, AccordionItem, AccordionTrigger, AccountMenu, ActionButton, Alert, AlertAction, AlertDescription, AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogOverlay, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger, AlertTitle, AnnotationSurface, AppShell, AppShellBody, AppShellContent, AppShellMain, AppearanceEditor, AppearanceEditorActions, AppearanceFontSettingsGroup, AppearancePanel, AppearancePopover, AspectRatio, Attachment, AttachmentCard, AttachmentList, Avatar, AvatarFallback, AvatarImage, Badge, Board, BoardCardBody, BoardCardTitle, BoardCardTrigger, Breadcrumb, BreadcrumbEllipsis, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, Bubble, BusySendButton, Button, ButtonGroup, ButtonGroupSeparator, ButtonGroupText, CHAIN_OF_THOUGHT_STATUS_LABELS, CODE_BLOCK_LINE_LIMIT, CalendarSurface, Callout, CalloutTitle, Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, CatalogBrowser, CatalogDetail, CatalogDetailSection, ChainOfThought, ChainOfThoughtResult, ChainOfThoughtResults, ChainOfThoughtStep, Chat, ChatComposer, ChatEmpty, ChatHeader, ChatNotice, Checkbox, CheckboxDescription, CheckboxLabel, Checkpoint, CodeBlock, Collapsible, CollapsibleContent, CollapsibleTrigger, Combobox, ComboboxClear, ComboboxContent, ComboboxControl, ComboboxInput, ComboboxItem, ComboboxSection, ComboboxTrigger, Command, CommandDialog, CommandEmpty, CommandGroup, CommandHint, CommandInput, CommandItem, CommandList, CommandLoading, CommandSeparator, CommandShortcut, CommandStatus, ComposerAttachmentButton, ComposerHint, ComposerMenu, ComposerMenuItem, Confirmation, Context, ContextMenu, ContextMenuCheckboxItem, ContextMenuContent, ContextMenuGroup, ContextMenuItem, ContextMenuLabel, ContextMenuRadioGroup, ContextMenuRadioItem, ContextMenuSeparator, ContextMenuSub, ContextMenuSubContent, ContextMenuSubTrigger, ContextMenuTrigger, ContextualSidebar, ConversationAvatar, ConversationPane, ConversationSurface, DEFAULT_APPEARANCE_EDITOR_FONT_SETTINGS, DatePicker, DetailPanel, DetailPanelBody, DetailPanelField, DetailPanelHeader, DetailPanelSection, Dialog, DialogClose, DialogCloseButton, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, DiffBlock, DiffSummary, Drawer, DrawerBody, DrawerCloseButton, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerOverlay, DrawerTitle, DrawerTrigger, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, Empty, EmptyContent, EmptyDescription, EmptyHeader, EmptyMedia, EmptyState, EmptyTitle, EntityIcon, FILE_CHANGE_LABELS, FILE_TREE_AUTO_EXPAND_LIMIT, FILE_TREE_MAX_DEPTH, FILE_TREE_MAX_ROWS, FLOATING_PREVIEW_CORNER_RADIUS, FLOATING_PREVIEW_EDGE_GAP, Field, FieldDescription, FieldError, FieldGroup, FieldInput, FieldLabel, FieldLegend, FieldSeparator, FieldSet, FieldTextArea, FileTree, FloatingPreview, FormField, Heading, HelpCenter, HoverCard, HoverCardContent, HoverCardTrigger, IconPicker, InlineCitation, InlineCode, Input, InputControl, InputGroup, InputGroupAddon, InputGroupButton, InputGroupInput, InputGroupText, InputOtp, InputOtpCaret, Item, ItemDescription, ItemEmpty, ItemGroup, ItemGroupEntry, ItemTitle, Kbd, KbdChord, KbdGroup, Label, ListGroup, ListRow, ListRowControl, MARK_IMAGE_MAX_DATA_URL_LENGTH, MARK_IMAGE_MAX_SOURCE_BYTES, MARK_IMAGE_SIZE, MAX_LAYOUT_DEPTH, MAX_LAYOUT_LEAVES, MAX_SPLIT_RATIO, MIN_SPLIT_RATIO, MODEL_SEARCH_THRESHOLD, MarkImageError, Marker, Menubar, MenubarCheckboxItem, MenubarContent, MenubarGroup, MenubarItem, MenubarLabel, MenubarMenu, MenubarRadioGroup, MenubarRadioItem, MenubarSeparator, MenubarSub, MenubarSubContent, MenubarSubTrigger, MenubarTrigger, Message, MessageActions, MessageBody, MessageComposer, MessageContent, MessageDayDivider, MessageFooter, MessageGroup, MessageHeader, MessageRow, MessageScroller, MessageText, ModalDialog, ModelSelector, Motion, NO_FLOATING_PREVIEW_OBSTACLES, NO_PREVIEW_MINI_PLAYER_OBSTACLES, NativeSelect, NavigationMenu, NavigationMenuContent, NavigationMenuGroup, NavigationMenuGroupLabel, NavigationMenuItem, NavigationMenuMenu, NavigationMenuSeparator, NavigationMenuTrigger, NavigationMenuViewport, NumberField, OrbitItem, OrbitLayout, PASTE_THRESHOLD_CHARS, PASTE_THRESHOLD_LINES, PASTE_TOKEN_REGEX, PREVIEW_MINI_PLAYER_CORNER_RADIUS, PREVIEW_MINI_PLAYER_EDGE_GAP, Page, PageHeader, PageHeaderActions, PageHeaderContent, PageHeaderDescription, PageHeaderTitle, PageSection, Pagination, PaginationEllipsis, PaginationItem, PaginationNext, PaginationPrevious, PalettePreview, Panel, PanelActions, PanelBody, PanelCard, PanelDescription, PanelFooter, PanelHeader, PanelPlaceholder, PanelTitle, PanelToolbar, PixelResizeHandle, Plan, Popover, PopoverAnchor, PopoverCloseButton, PopoverContent, PopoverDescription, PopoverTitle, PopoverTrigger, Presence, Progress, PropertyList, PropertyRow, PropertyTerm, PropertyValue, Questionnaire, Queue, QueueFollowUps, REDUCED_TRANSPARENCY_QUERY, RadioGroup, RadioGroupItem, Reasoning, ResizableHandle, ResizablePanel, ResizablePanelGroup, SOURCE_SNIPPET_LIMIT, SOURCE_TITLE_LIMIT, STACK_MAX_LINES, STACK_TRACE_MAX_BLOCKS, SceneControls, ScrollArea, SecretInputGroup, Select, SelectChevronsUpDown, SelectContent, SelectItem, SelectLabel, SelectSection, SelectTrigger, SelectValue, Separator, SettingsField, SettingsLayout, SettingsNavigation, SettingsPage, SettingsRow, SettingsSection, Sheet, SheetBody, SheetCloseButton, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetTitle, SheetTrigger, ShellRail, ShellTopBar, SideRail, SideRailButton, SideRailContent, SideRailFooter, SideRailHeader, SideRailItem, SideRailSection, SidebarNav, SidebarNavButton, SidebarNavContent, SidebarNavFooter, SidebarNavHeader, SidebarNavItem, SidebarNavLabel, SidebarNavResizeHandle, SidebarNavRow, SidebarNavSection, SidebarNavTitle, Skeleton, SkipLink, Slider, Sources, Spinner, SplitLayout, StackTrace, Stat, StatGroup, StatusBar, StatusBarItem, StatusBarSpacer, StatusChip, StatusList, Subagent, Suggestion, Suggestions, Switch, SwitchDescription, SwitchLabel, TALL_CODE_BLOCK_PX, TASK_ITEM_STATUS_LABELS, TERMINAL_MAX_LINES, TEST_RESULTS_LIST_LIMIT, TOOL_STATUS_LABELS, TOOL_VALUE_MAX_CHARS, TRACE_STATUS_LABELS, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableNumericCell, TableRow, Tabs, TabsContent, TabsList, TabsTrigger, Task, TaskItemList, TaskItemRow, Terminal, TestResults, Text, TextLink, Textarea, ThemeMiniature, ThemeMiniatureSplit, ThemeModeToggle, ThemePicker, ThemePreview, ThemeProvider, ThemeSwatch, ThemeToggle, ThreadPanel, Toaster, Toggle, ToggleGroup, ToggleGroupItem, Tool, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, TopBar, TopBarBreadcrumb, TopBarPill, TopBarSearch, TopBarSection, TopBarTitle, Trace, TraceDetail, TraceLine, TranscriptComposition, Tree, TreeRow, TreeRowActions, UpdateChannelControl, UpdateDialog, ValueCombobox, VirtualWindow, WorkspaceMark, WorkspaceSwitcher, accentPresets, alertVariants, allTokens, ansi256ToColor, ansiLineText, appearancePreviewThemes, applyAppearanceFontSettings, badgeVariants, boardCardTitleVariants, boundText, breakdownRows, bubbleVariants, buildFileTree, builtinThemes, buttonVariants, calloutVariants, captureAnchor, cardVariants, centredSquare, chatNoticeVariants, checkMarkImageFile, checkpointLabel, checkpointStatus, citationLabel, citationName, clampFloatingPreviewPosition, clampPreviewMiniPlayerPosition, clampWindow, classifyFrame, closePane, cn, colorTokens, computeLayoutFrames, confirmationOutcome, contextLabel, contextLevel, contextLevelWord, contextPercent, contextShort, contrastRatio, controlInteractive, controlSize, controlSizeIcon, controlSizes, countChanges, countLeaves, countLines, createAnsiParser, createAppMenuItems, createLayoutState, createVersionedPersistence, cva, decisionReason, dedentLines, defaultDarkThemeId, defaultLightThemeId, defaultPreferenceStorage, defaultThemeSelection, densityTokens, describeChanges, describeCount, describeFrameGroup, designTokens, diffLineVariants, diffStats, diffTargetPath, editorPaletteFor, elevationTokens, entityIconVariants, expandAll, findModel, findTokenRanges, firstFailureKey, flattenFileTree, focusPane, fontOptions, fontSettingsBootstrapScript, fontZoomShortcut, formatAttachmentSize, formatBytes, formatCost, formatDuration, formatExact, formatReleaseDate, formatDuration$1 as formatTestDuration, formatToken, formatTokens, formatToolValue, frameLocation, groupModels, groupStackEntries, hasContextFigures, headingElement, headingVariants, indexFileTree, initialExpanded, initialsFrom, inlineScriptLiteral, isAwaitingAnswer, isCustomAccent, isFailedExit, isFigure, isMarkImageDataUrl, isPasteBlock, isPlainStyle, isQuestionAnswered, isShellIconKey, isThemeAccentId, itemVariants, kbdChordKeys, kbdGroupVariants, kbdVariants, keyedRows, layoutDepth, listLeaves, listedCounts, localStoragePersistence, markImageFromFile, markImageProblemCopy, markerVariants, messageCitations, modelSearchValue, monogram, motionTokens, movePane, nearestAnsiColor, needsSearch, neighborLeaf, nextCitationMode, nextSeq, normalizeAppearanceEditorFontSettings, normalizeAppearanceEditorFontSize, normalizeCustomAccent, normalizeEfforts, normalizeLayout, normalizePath, normalizeSurface, paintAccentRoles, parseAnsi, parseDiff, parseInline, parseMessageText, parseStackTrace, partitionQueue, placeCitationMarkers, plainTextFromMarkdown, platformModifierKey, pruneBlocks, quarantineRecord, radiusTokens, readLegacyValue, readVersionedRecord, reasoningTitle, recollapsePastes, reconcileCounts, recoveryEnvelope, recoveryKeyFor, remapCarriedBlocks, resizeFloatingPreview, resizePreviewMiniPlayer, resizeSplit, resolveAccentPreset, resolveAccentRoles, resolveColors, resolveEffort, resolveFloatingPreviewFrame, resolvePreviewMiniPlayerFrame, resolveShellIcon, resolveSurface, resolveSurfaceState, resolveVariant, resolvedDensity, restoreAnchor, restoreControl, restoreDialogCopy, revealInWindow, safeHref, safePreviewSrc, safeSourceUrl, searchShortcutKeyshortcuts, searchShortcutLabel, settleDecision, sheetVariants, shellIconEntries, shellIconLabel, shouldCollapse, sidebarNavItemClass, sidebarNavItemStateClass, sourceHost, sourceTitle, sourcesLabel, splitLocation, splitPane, splitPaneBalanced, statusDotVariants, stepAppearanceFontSizes, stepCountLabel, stripTrailingBlankLines, suiteKey, suiteState, surfaceAlpha, surfaceInteractive, swapPanes, taskProgress, taskProgressLabel, terminalCssVariables, terminalStatusLabel, testKey, textElement, textVariants, textareaVariants, themeAccentsFor, themeById, themeCssVariables, themeFamilies, themeRecordById, themeRecords, themeScript, themeSurfaces, themesForAppearance, toast, toaster, toggleVariants, tokenRangeAt, tokensAsHex, transcriptDisclosureKey, typeaheadIndex, typographyTokens, undoClosePane, undocumentedTokenAliases, useOptionalTheme, useSideRail, useTheme, validateTheme, validateThemeRegistry, variantFromRecord, withAccent, wrapIndex, writeClipboardText, writeVersionedRecord, zIndexTokens };
@@ -0,0 +1,25 @@
1
+ {
2
+ "name": "accent-picker",
3
+ "type": "registry:ui",
4
+ "title": "Accent Picker",
5
+ "description": "",
6
+ "dependencies": [
7
+ "@kobalte/core@^0.13.14",
8
+ "lucide-solid@^1.51.0"
9
+ ],
10
+ "registryDependencies": [
11
+ "lib"
12
+ ],
13
+ "files": [
14
+ {
15
+ "path": "src/components/composites/accent-picker/accent-picker.tsx",
16
+ "type": "registry:ui",
17
+ "target": "components/composites/accent-picker/accent-picker.tsx"
18
+ },
19
+ {
20
+ "path": "src/components/composites/accent-picker/index.ts",
21
+ "type": "registry:ui",
22
+ "target": "components/composites/accent-picker/index.ts"
23
+ }
24
+ ]
25
+ }
@@ -0,0 +1,36 @@
1
+ {
2
+ "name": "icon-picker",
3
+ "type": "registry:ui",
4
+ "title": "Icon Picker",
5
+ "description": "",
6
+ "dependencies": [
7
+ "@kobalte/core@^0.13.14",
8
+ "lucide-solid@^1.51.0"
9
+ ],
10
+ "registryDependencies": [
11
+ "@adea-ai/ui/button",
12
+ "lib"
13
+ ],
14
+ "files": [
15
+ {
16
+ "path": "src/components/composites/icon-picker/icon-picker.tsx",
17
+ "type": "registry:ui",
18
+ "target": "components/composites/icon-picker/icon-picker.tsx"
19
+ },
20
+ {
21
+ "path": "src/components/composites/icon-picker/image-data-url.ts",
22
+ "type": "registry:ui",
23
+ "target": "components/composites/icon-picker/image-data-url.ts"
24
+ },
25
+ {
26
+ "path": "src/components/composites/icon-picker/index.ts",
27
+ "type": "registry:ui",
28
+ "target": "components/composites/icon-picker/index.ts"
29
+ },
30
+ {
31
+ "path": "src/components/composites/icon-picker/shell-icons.ts",
32
+ "type": "registry:ui",
33
+ "target": "components/composites/icon-picker/shell-icons.ts"
34
+ }
35
+ ]
36
+ }
@@ -1918,6 +1918,56 @@
1918
1918
  }
1919
1919
  ]
1920
1920
  },
1921
+ {
1922
+ "name": "shell-rail",
1923
+ "type": "registry:ui",
1924
+ "title": "Shell Rail",
1925
+ "description": "",
1926
+ "dependencies": [
1927
+ "lucide-solid@^1.51.0"
1928
+ ],
1929
+ "registryDependencies": [
1930
+ "@adea-ai/ui/kbd",
1931
+ "@adea-ai/ui/separator",
1932
+ "@adea-ai/ui/side-rail",
1933
+ "lib"
1934
+ ],
1935
+ "files": [
1936
+ {
1937
+ "path": "src/components/layout/shell-rail/index.ts",
1938
+ "type": "registry:ui",
1939
+ "target": "components/layout/shell-rail/index.ts"
1940
+ },
1941
+ {
1942
+ "path": "src/components/layout/shell-rail/shell-rail.tsx",
1943
+ "type": "registry:ui",
1944
+ "target": "components/layout/shell-rail/shell-rail.tsx"
1945
+ }
1946
+ ]
1947
+ },
1948
+ {
1949
+ "name": "shell-top-bar",
1950
+ "type": "registry:ui",
1951
+ "title": "Shell Top Bar",
1952
+ "description": "",
1953
+ "dependencies": [],
1954
+ "registryDependencies": [
1955
+ "@adea-ai/ui/separator",
1956
+ "lib"
1957
+ ],
1958
+ "files": [
1959
+ {
1960
+ "path": "src/components/layout/shell-top-bar/index.ts",
1961
+ "type": "registry:ui",
1962
+ "target": "components/layout/shell-top-bar/index.ts"
1963
+ },
1964
+ {
1965
+ "path": "src/components/layout/shell-top-bar/shell-top-bar.tsx",
1966
+ "type": "registry:ui",
1967
+ "target": "components/layout/shell-top-bar/shell-top-bar.tsx"
1968
+ }
1969
+ ]
1970
+ },
1921
1971
  {
1922
1972
  "name": "side-rail",
1923
1973
  "type": "registry:ui",
@@ -2143,6 +2193,31 @@
2143
2193
  }
2144
2194
  ]
2145
2195
  },
2196
+ {
2197
+ "name": "accent-picker",
2198
+ "type": "registry:ui",
2199
+ "title": "Accent Picker",
2200
+ "description": "",
2201
+ "dependencies": [
2202
+ "@kobalte/core@^0.13.14",
2203
+ "lucide-solid@^1.51.0"
2204
+ ],
2205
+ "registryDependencies": [
2206
+ "lib"
2207
+ ],
2208
+ "files": [
2209
+ {
2210
+ "path": "src/components/composites/accent-picker/accent-picker.tsx",
2211
+ "type": "registry:ui",
2212
+ "target": "components/composites/accent-picker/accent-picker.tsx"
2213
+ },
2214
+ {
2215
+ "path": "src/components/composites/accent-picker/index.ts",
2216
+ "type": "registry:ui",
2217
+ "target": "components/composites/accent-picker/index.ts"
2218
+ }
2219
+ ]
2220
+ },
2146
2221
  {
2147
2222
  "name": "account-menu",
2148
2223
  "type": "registry:ui",
@@ -2518,6 +2593,42 @@
2518
2593
  }
2519
2594
  ]
2520
2595
  },
2596
+ {
2597
+ "name": "icon-picker",
2598
+ "type": "registry:ui",
2599
+ "title": "Icon Picker",
2600
+ "description": "",
2601
+ "dependencies": [
2602
+ "@kobalte/core@^0.13.14",
2603
+ "lucide-solid@^1.51.0"
2604
+ ],
2605
+ "registryDependencies": [
2606
+ "@adea-ai/ui/button",
2607
+ "lib"
2608
+ ],
2609
+ "files": [
2610
+ {
2611
+ "path": "src/components/composites/icon-picker/icon-picker.tsx",
2612
+ "type": "registry:ui",
2613
+ "target": "components/composites/icon-picker/icon-picker.tsx"
2614
+ },
2615
+ {
2616
+ "path": "src/components/composites/icon-picker/image-data-url.ts",
2617
+ "type": "registry:ui",
2618
+ "target": "components/composites/icon-picker/image-data-url.ts"
2619
+ },
2620
+ {
2621
+ "path": "src/components/composites/icon-picker/index.ts",
2622
+ "type": "registry:ui",
2623
+ "target": "components/composites/icon-picker/index.ts"
2624
+ },
2625
+ {
2626
+ "path": "src/components/composites/icon-picker/shell-icons.ts",
2627
+ "type": "registry:ui",
2628
+ "target": "components/composites/icon-picker/shell-icons.ts"
2629
+ }
2630
+ ]
2631
+ },
2521
2632
  {
2522
2633
  "name": "inline-citation",
2523
2634
  "type": "registry:ui",
@@ -3144,6 +3255,32 @@
3144
3255
  }
3145
3256
  ]
3146
3257
  },
3258
+ {
3259
+ "name": "workspace-switcher",
3260
+ "type": "registry:ui",
3261
+ "title": "Workspace Switcher",
3262
+ "description": "",
3263
+ "dependencies": [
3264
+ "lucide-solid@^1.51.0"
3265
+ ],
3266
+ "registryDependencies": [
3267
+ "@adea-ai/ui/action-button",
3268
+ "@adea-ai/ui/dropdown-menu",
3269
+ "lib"
3270
+ ],
3271
+ "files": [
3272
+ {
3273
+ "path": "src/components/composites/workspace-switcher/index.ts",
3274
+ "type": "registry:ui",
3275
+ "target": "components/composites/workspace-switcher/index.ts"
3276
+ },
3277
+ {
3278
+ "path": "src/components/composites/workspace-switcher/workspace-switcher.tsx",
3279
+ "type": "registry:ui",
3280
+ "target": "components/composites/workspace-switcher/workspace-switcher.tsx"
3281
+ }
3282
+ ]
3283
+ },
3147
3284
  {
3148
3285
  "name": "conversation",
3149
3286
  "type": "registry:ui",
@@ -0,0 +1,27 @@
1
+ {
2
+ "name": "shell-rail",
3
+ "type": "registry:ui",
4
+ "title": "Shell Rail",
5
+ "description": "",
6
+ "dependencies": [
7
+ "lucide-solid@^1.51.0"
8
+ ],
9
+ "registryDependencies": [
10
+ "@adea-ai/ui/kbd",
11
+ "@adea-ai/ui/separator",
12
+ "@adea-ai/ui/side-rail",
13
+ "lib"
14
+ ],
15
+ "files": [
16
+ {
17
+ "path": "src/components/layout/shell-rail/index.ts",
18
+ "type": "registry:ui",
19
+ "target": "components/layout/shell-rail/index.ts"
20
+ },
21
+ {
22
+ "path": "src/components/layout/shell-rail/shell-rail.tsx",
23
+ "type": "registry:ui",
24
+ "target": "components/layout/shell-rail/shell-rail.tsx"
25
+ }
26
+ ]
27
+ }
@@ -0,0 +1,23 @@
1
+ {
2
+ "name": "shell-top-bar",
3
+ "type": "registry:ui",
4
+ "title": "Shell Top Bar",
5
+ "description": "",
6
+ "dependencies": [],
7
+ "registryDependencies": [
8
+ "@adea-ai/ui/separator",
9
+ "lib"
10
+ ],
11
+ "files": [
12
+ {
13
+ "path": "src/components/layout/shell-top-bar/index.ts",
14
+ "type": "registry:ui",
15
+ "target": "components/layout/shell-top-bar/index.ts"
16
+ },
17
+ {
18
+ "path": "src/components/layout/shell-top-bar/shell-top-bar.tsx",
19
+ "type": "registry:ui",
20
+ "target": "components/layout/shell-top-bar/shell-top-bar.tsx"
21
+ }
22
+ ]
23
+ }