@vezham/react 26.0.0-alpha.9 → 26.0.0-beta.1

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 (59) hide show
  1. package/dist/lib/components/command/index.js +2 -2
  2. package/dist/lib/components/menu/index.js +2 -2
  3. package/dist/lib/components/panel/footer/ai/message-actions.js +2 -2
  4. package/dist/lib/components/panel/footer/ai/mock-result.js +2 -2
  5. package/dist/lib/components/panel/footer/control-center/appearance.d.ts +2 -1
  6. package/dist/lib/components/panel/footer/control-center/appearance.d.ts.map +1 -1
  7. package/dist/lib/components/panel/footer/control-center/appearance.js +4 -3
  8. package/dist/lib/components/panel/footer/control-center/control-center.js +11 -8
  9. package/dist/lib/components/panel/footer/control-center/direction.d.ts +2 -1
  10. package/dist/lib/components/panel/footer/control-center/direction.d.ts.map +1 -1
  11. package/dist/lib/components/panel/footer/control-center/direction.js +6 -4
  12. package/dist/lib/components/panel/footer/control-center/editor.d.ts +3 -1
  13. package/dist/lib/components/panel/footer/control-center/editor.d.ts.map +1 -1
  14. package/dist/lib/components/panel/footer/control-center/editor.js +24 -6
  15. package/dist/lib/components/panel/footer/control-center/preview.d.ts +4 -2
  16. package/dist/lib/components/panel/footer/control-center/preview.d.ts.map +1 -1
  17. package/dist/lib/components/panel/footer/control-center/preview.js +4 -2
  18. package/dist/lib/components/panel/footer/control-center/tile.d.ts.map +1 -1
  19. package/dist/lib/components/panel/footer/control-center/tile.js +12 -7
  20. package/dist/lib/components/panel/footer/control-center/variant.d.ts +27 -0
  21. package/dist/lib/components/panel/footer/control-center/variant.d.ts.map +1 -1
  22. package/dist/lib/components/panel/footer/control-center/variant.js +30 -9
  23. package/dist/lib/components/panel/footer/index.js +2 -2
  24. package/dist/lib/components/panel/footer/notification-center/index.js +2 -2
  25. package/dist/lib/components/panel/footer/notification-center/widget-tiles.d.ts +88 -3
  26. package/dist/lib/components/panel/footer/notification-center/widget-tiles.d.ts.map +1 -1
  27. package/dist/lib/components/panel/footer/notification-center/widget-tiles.js +63 -25
  28. package/dist/lib/components/panel/footer/user-menu.d.ts.map +1 -1
  29. package/dist/lib/components/panel/footer/user-menu.js +258 -230
  30. package/dist/lib/components/panel/header/application-menu-sheet.js +5 -5
  31. package/dist/lib/components/panel/header/bookmarks/bookmark-file-tree/index.js +1 -1
  32. package/dist/lib/components/panel/header/bookmarks/bookmark-file-tree/variants.js +1 -1
  33. package/dist/lib/components/panel/header/bookmarks/favorites/grid-list.js +2 -2
  34. package/dist/lib/components/panel/header/bookmarks/index.js +2 -1
  35. package/dist/lib/components/panel/header/bookmarks/shortcut-context-menu.js +2 -1
  36. package/dist/lib/components/panel/header/bookmarks/tree-data.js +2 -1
  37. package/dist/lib/components/panel/header/index.js +5 -5
  38. package/dist/lib/components/panel/header/storage/types.d.ts +1 -1
  39. package/dist/lib/components/panel/info-panel/container.module.js +4 -2
  40. package/dist/lib/components/panel/menu/index.js +2 -2
  41. package/dist/lib/components/panel/menu/types.d.ts +1 -1
  42. package/dist/lib/layouts/menu-layout/index-md.js +3 -3
  43. package/dist/lib/layouts/menu-layout/index-sm.js +2 -2
  44. package/dist/lib/layouts/section/index.d.ts.map +1 -1
  45. package/dist/lib/layouts/section/index.js +7 -7
  46. package/dist/lib/layouts/section/sidebar.js +2 -2
  47. package/dist/lib/layouts/section/toolbar-more-sheet.js +3 -3
  48. package/dist/lib/layouts/section/toolbar.js +4 -4
  49. package/dist/lib/pages/settings/index.d.ts.map +1 -1
  50. package/dist/lib/pages/settings/index.js +72 -27
  51. package/dist/lib/pages/settings/navigation.d.ts +1 -1
  52. package/dist/lib/pages/settings/navigation.d.ts.map +1 -1
  53. package/dist/lib/pages/settings/settings-content.js +1 -1
  54. package/dist/lib/pages/settings/tile-gallery.d.ts +6 -1
  55. package/dist/lib/pages/settings/tile-gallery.d.ts.map +1 -1
  56. package/dist/lib/pages/settings/tile-gallery.js +175 -100
  57. package/dist/lib/store/useBookmarks/index.js +2 -2
  58. package/dist/lib/store/useStorage/index.js +1 -1
  59. package/package.json +2 -2
@@ -1,3 +1,3 @@
1
- import "./command-provider.js";
1
+ import { CommandProvider } from "./command-provider.js";
2
2
  import { useCommand } from "@vezham/hooks";
3
- export { useCommand };
3
+ export { CommandProvider, useCommand };
@@ -7,7 +7,7 @@ import { SidebarItemType } from "./types.js";
7
7
  import { useLocation, useNavigate } from "@tanstack/react-router";
8
8
  import { useEffect, useMemo, useState } from "react";
9
9
  import { Button, useOverlayState } from "@vezham/react-v3";
10
- import { Fragment, jsx, jsxs } from "react/jsx-runtime";
10
+ import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
11
11
  import { Magnifier, MenuDots } from "@vezham/icons-react";
12
12
  //#region src/lib/components/menu/index.tsx
13
13
  var flattenMenuItems = (menuItems = []) => {
@@ -69,7 +69,7 @@ var BottomNavbar = ({ items = EMPTY_ITEMS, onSelect, isDarkMode = false, bgColor
69
69
  if (item.href) navigate({ to: item.href });
70
70
  };
71
71
  if (flatItems.length === 0) return null;
72
- return /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsxs("div", {
72
+ return /* @__PURE__ */ jsxs(Fragment$1, { children: [/* @__PURE__ */ jsxs("div", {
73
73
  className: `${getNavbarContainerClasses({
74
74
  bgColorClass,
75
75
  isDarkMode
@@ -1,6 +1,6 @@
1
1
  import { useState } from "react";
2
2
  import { Button } from "@vezham/react-v3";
3
- import { Fragment, jsx, jsxs } from "react/jsx-runtime";
3
+ import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
4
4
  import { BranchingPathsUp } from "@vezham/icons-react";
5
5
  import { ChatMessageActions } from "@vezham/react-pro-v3";
6
6
  import { writeClipboardText } from "@vezham/docs-react/utils/clipboard";
@@ -8,7 +8,7 @@ import { writeClipboardText } from "@vezham/docs-react/utils/clipboard";
8
8
  var MessageActions = ({ message, conversation }) => {
9
9
  const [copied, setCopied] = useState(false);
10
10
  const [error, setError] = useState(false);
11
- return /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsxs(ChatMessageActions, { children: [
11
+ return /* @__PURE__ */ jsxs(Fragment$1, { children: [/* @__PURE__ */ jsxs(ChatMessageActions, { children: [
12
12
  /* @__PURE__ */ jsx(ChatMessageActions.Copy, {
13
13
  "aria-label": "Copy response",
14
14
  tooltip: "Copy",
@@ -1,6 +1,6 @@
1
1
  import { useState } from "react";
2
2
  import { Button, Card, Input, Label, TextField } from "@vezham/react-v3";
3
- import { Fragment, jsx, jsxs } from "react/jsx-runtime";
3
+ import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
4
4
  //#region src/lib/components/panel/footer/ai/mock-result.tsx
5
5
  var ResultCard = ({ title, description, children, footer }) => /* @__PURE__ */ jsxs(Card, {
6
6
  className: "my-3",
@@ -104,7 +104,7 @@ var MockResult = ({ prompt }) => {
104
104
  if (/workspace/i.test(prompt)) return /* @__PURE__ */ jsx(ResultCard, {
105
105
  title: "Workspace guide",
106
106
  description: "Search pages, save bookmarks, and explore Storage.",
107
- footer: /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx(Button, {
107
+ footer: /* @__PURE__ */ jsxs(Fragment$1, { children: [/* @__PURE__ */ jsx(Button, {
108
108
  variant: "secondary",
109
109
  size: "sm",
110
110
  onPress: () => setSaved(true),
@@ -5,8 +5,9 @@ export declare const AppearanceProvider: ({ appearance, children }: {
5
5
  children: ReactNode;
6
6
  }) => import("react").JSX.Element;
7
7
  export declare const useAppearance: () => AppearanceAdapter;
8
- export declare const AppearanceToggle: ({ label }: {
8
+ export declare const AppearanceToggle: ({ label, compact }: {
9
9
  label?: string;
10
+ compact?: boolean;
10
11
  }) => import("react").JSX.Element;
11
12
  export declare const AppearanceTile: ({ onOpen, label }: {
12
13
  label?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"appearance.d.ts","sourceRoot":"","sources":["../../../../../../src/lib/components/panel/footer/control-center/appearance.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,SAAS,EAKf,MAAM,OAAO,CAAA;AAMd,OAAO,KAAK,EAAE,iBAAiB,EAAa,MAAM,SAAS,CAAA;AA0C3D,eAAO,MAAM,kBAAkB,GAAI,0BAGhC;IACD,UAAU,CAAC,EAAE,iBAAiB,CAAA;IAC9B,QAAQ,EAAE,SAAS,CAAA;CACpB,gCAuBA,CAAA;AAED,eAAO,MAAM,aAAa,yBAKzB,CAAA;AAED,eAAO,MAAM,gBAAgB,GAAI,WAAW;IAAE,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,gCAW7D,CAAA;AAED,eAAO,MAAM,cAAc,GAAI,mBAG5B;IACD,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,MAAM,IAAI,CAAA;CACnB,gCAWA,CAAA;AAOD,eAAO,MAAM,kBAAkB,mCAoB9B,CAAA"}
1
+ {"version":3,"file":"appearance.d.ts","sourceRoot":"","sources":["../../../../../../src/lib/components/panel/footer/control-center/appearance.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,SAAS,EAKf,MAAM,OAAO,CAAA;AAMd,OAAO,KAAK,EAAE,iBAAiB,EAAa,MAAM,SAAS,CAAA;AA0C3D,eAAO,MAAM,kBAAkB,GAAI,0BAGhC;IACD,UAAU,CAAC,EAAE,iBAAiB,CAAA;IAC9B,QAAQ,EAAE,SAAS,CAAA;CACpB,gCAuBA,CAAA;AAED,eAAO,MAAM,aAAa,yBAKzB,CAAA;AAED,eAAO,MAAM,gBAAgB,GAAI,oBAG9B;IACD,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB,gCAeA,CAAA;AAED,eAAO,MAAM,cAAc,GAAI,mBAG5B;IACD,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,MAAM,IAAI,CAAA;CACnB,gCAWA,CAAA;AAOD,eAAO,MAAM,kBAAkB,mCAoB9B,CAAA"}
@@ -57,11 +57,12 @@ var useAppearance = () => {
57
57
  if (!appearance) throw new Error("Appearance tiles must be rendered inside ControlCenter");
58
58
  return appearance;
59
59
  };
60
- var AppearanceToggle = ({ label }) => {
60
+ var AppearanceToggle = ({ label, compact = true }) => {
61
61
  const { isDark, setDark } = useAppearance();
62
62
  return /* @__PURE__ */ jsx(ActionTile, {
63
- label: label ?? `Switch to ${isDark ? "light" : "dark"} mode`,
64
- compact: true,
63
+ label: label ?? (compact ? `Switch to ${isDark ? "light" : "dark"} mode` : "Appearance"),
64
+ description: compact ? void 0 : isDark ? "Dark" : "Light",
65
+ compact,
65
66
  icon: /* @__PURE__ */ jsx(isDark ? Moon : Sun, { size: 20 }),
66
67
  onPress: () => setDark(!isDark)
67
68
  });
@@ -7,13 +7,13 @@ import { FooterControlCenterContext } from "./footer-context.js";
7
7
  import { PreviewProvider } from "./preview.js";
8
8
  import { useContext, useState } from "react";
9
9
  import { Button, Popover, ScrollShadow, useMediaQuery } from "@vezham/react-v3";
10
- import { Fragment, jsx, jsxs } from "react/jsx-runtime";
10
+ import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
11
11
  import { AltArrowLeft, Settings } from "@vezham/icons-react";
12
12
  import { Sheet } from "@vezham/react-pro-v3";
13
13
  //#region src/lib/components/panel/footer/control-center/control-center.tsx
14
14
  var styles = controlCenterVariants();
15
15
  var footerTriggerClassName = "text-muted hover:text-foreground h-5 w-5 min-w-0 p-0 [&_svg]:size-5";
16
- var GlassHighlights = () => /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx("div", {
16
+ var GlassHighlights = () => /* @__PURE__ */ jsxs(Fragment$1, { children: [/* @__PURE__ */ jsx("div", {
17
17
  "aria-hidden": "true",
18
18
  className: styles.edgeHighlight()
19
19
  }), /* @__PURE__ */ jsx("div", {
@@ -46,7 +46,7 @@ var ControlCenter = ({ context, tiles, trigger, placement = "bottom end", onOpen
46
46
  className: styles.triggerIcon()
47
47
  })
48
48
  });
49
- const content = /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsxs(ScrollShadow, {
49
+ const content = /* @__PURE__ */ jsxs(Fragment$1, { children: [/* @__PURE__ */ jsxs(ScrollShadow, {
50
50
  className: styles.viewport(),
51
51
  hideScrollBar: true,
52
52
  children: [preview && /* @__PURE__ */ jsx("p", {
@@ -66,9 +66,9 @@ var ControlCenter = ({ context, tiles, trigger, placement = "bottom end", onOpen
66
66
  className: "rounded-full",
67
67
  onPress: () => {
68
68
  changeOpen(false);
69
- openSettings("Edit Controls");
69
+ openSettings("Control Center");
70
70
  },
71
- children: "Edit Controls"
71
+ children: "Control Center"
72
72
  })
73
73
  })] });
74
74
  return /* @__PURE__ */ jsx(AppearanceProvider, {
@@ -128,7 +128,7 @@ var PanelOutlet = ({ context, tiles, panel, onPanelChange }) => {
128
128
  const entry = tiles.find((entry) => entry.id === panel);
129
129
  if (entry?.Panel) {
130
130
  const Content = entry.Panel;
131
- return /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsxs("div", {
131
+ return /* @__PURE__ */ jsxs(Fragment$1, { children: [/* @__PURE__ */ jsxs("div", {
132
132
  className: styles.panelHeader(),
133
133
  children: [/* @__PURE__ */ jsx(Button, {
134
134
  "aria-label": "Back to Control Center",
@@ -149,7 +149,7 @@ var PanelOutlet = ({ context, tiles, panel, onPanelChange }) => {
149
149
  return /* @__PURE__ */ jsx("div", {
150
150
  className: styles.home(),
151
151
  children: tiles.map((entry) => /* @__PURE__ */ jsx("div", {
152
- className: styles.tileContainer({ span: entry.span }),
152
+ className: `${styles.tileContainer({ span: entry.span })} ${entry.span === "compact" ? "" : "[&>button]:w-full"}`,
153
153
  children: /* @__PURE__ */ jsx(TileContent, {
154
154
  entry,
155
155
  context,
@@ -174,7 +174,10 @@ var TileContent = ({ entry, context, onOpen }) => {
174
174
  });
175
175
  }
176
176
  const Tile = entry.Tile;
177
- return /* @__PURE__ */ jsx(Tile, { ...context });
177
+ return /* @__PURE__ */ jsx(Tile, {
178
+ ...context,
179
+ compact: entry.span === "compact"
180
+ });
178
181
  };
179
182
  //#endregion
180
183
  export { ControlCenter, TileContent };
@@ -3,7 +3,8 @@ export declare const DirectionTile: ({ onOpen, label }: {
3
3
  onOpen: () => void;
4
4
  }) => import("react").JSX.Element;
5
5
  export declare const DirectionSettings: () => import("react").JSX.Element;
6
- export declare const DirectionToggle: ({ label }: {
6
+ export declare const DirectionToggle: ({ label, compact }: {
7
7
  label?: string;
8
+ compact?: boolean;
8
9
  }) => import("react").JSX.Element;
9
10
  //# sourceMappingURL=direction.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"direction.d.ts","sourceRoot":"","sources":["../../../../../../src/lib/components/panel/footer/control-center/direction.tsx"],"names":[],"mappings":"AAWA,eAAO,MAAM,aAAa,GAAI,mBAG3B;IACD,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,MAAM,IAAI,CAAA;CACnB,gCAWA,CAAA;AAED,eAAO,MAAM,iBAAiB,mCAG7B,CAAA;AAED,eAAO,MAAM,eAAe,GAAI,WAAW;IAAE,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,gCAW5D,CAAA"}
1
+ {"version":3,"file":"direction.d.ts","sourceRoot":"","sources":["../../../../../../src/lib/components/panel/footer/control-center/direction.tsx"],"names":[],"mappings":"AAWA,eAAO,MAAM,aAAa,GAAI,mBAG3B;IACD,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,MAAM,IAAI,CAAA;CACnB,gCAWA,CAAA;AAED,eAAO,MAAM,iBAAiB,mCAG7B,CAAA;AAED,eAAO,MAAM,eAAe,GAAI,oBAG7B;IACD,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB,gCAeA,CAAA"}
@@ -27,12 +27,14 @@ var DirectionSettings = () => {
27
27
  options
28
28
  });
29
29
  };
30
- var DirectionToggle = ({ label }) => {
30
+ var DirectionToggle = ({ label, compact = true }) => {
31
31
  const { value, onChange } = useRootAttribute("dir", "ltr");
32
+ const Icon = value === "rtl" ? AlignRight : AlignLeft;
32
33
  return /* @__PURE__ */ jsx(ActionTile, {
33
- label: label ?? `Switch to ${value === "rtl" ? "LTR" : "RTL"}`,
34
- compact: true,
35
- icon: /* @__PURE__ */ jsx(value === "rtl" ? AlignRight : AlignLeft, { size: 20 }),
34
+ label: label ?? (compact ? `Switch to ${value === "rtl" ? "LTR" : "RTL"}` : "Direction"),
35
+ description: compact ? void 0 : value.toUpperCase(),
36
+ compact,
37
+ icon: /* @__PURE__ */ jsx(Icon, { size: 20 }),
36
38
  onPress: () => onChange(value === "rtl" ? "ltr" : "rtl")
37
39
  });
38
40
  };
@@ -8,13 +8,15 @@ export type EditorState = {
8
8
  onVisibilityChange: (id: string, visible: boolean) => void;
9
9
  onMove: (id: string, offset: number) => void;
10
10
  onReset: () => void;
11
- onPlace?: (id: string, target?: string) => void;
11
+ onAdd?: (id: string, span?: string) => void;
12
+ onPlace?: (id: string, target?: string, span?: string) => void;
12
13
  };
13
14
  type EditableTile = {
14
15
  id: string;
15
16
  label?: string;
16
17
  title?: string;
17
18
  editable?: boolean;
19
+ span?: string;
18
20
  };
19
21
  export declare const useTileEditor: <Tile extends EditableTile>(tiles: readonly Tile[], storageKey?: string) => {
20
22
  editor: EditorState;
@@ -1 +1 @@
1
- {"version":3,"file":"editor.d.ts","sourceRoot":"","sources":["../../../../../../src/lib/components/panel/footer/control-center/editor.tsx"],"names":[],"mappings":"AAEA,MAAM,MAAM,WAAW,GAAG;IACxB,KAAK,EAAE,SAAS;QACd,EAAE,EAAE,MAAM,CAAA;QACV,KAAK,EAAE,MAAM,CAAA;QACb,OAAO,EAAE,OAAO,CAAA;QAChB,QAAQ,EAAE,OAAO,CAAA;KAClB,EAAE,CAAA;IACH,kBAAkB,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,KAAK,IAAI,CAAA;IAC1D,MAAM,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,CAAA;IAC5C,OAAO,EAAE,MAAM,IAAI,CAAA;IACnB,OAAO,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;CAChD,CAAA;AACD,KAAK,YAAY,GAAG;IAClB,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB,CAAA;AASD,eAAO,MAAM,aAAa,GAAI,IAAI,SAAS,YAAY,EACrD,OAAO,SAAS,IAAI,EAAE,EACtB,mBAAgC;;;;CA4FjC,CAAA"}
1
+ {"version":3,"file":"editor.d.ts","sourceRoot":"","sources":["../../../../../../src/lib/components/panel/footer/control-center/editor.tsx"],"names":[],"mappings":"AAEA,MAAM,MAAM,WAAW,GAAG;IACxB,KAAK,EAAE,SAAS;QACd,EAAE,EAAE,MAAM,CAAA;QACV,KAAK,EAAE,MAAM,CAAA;QACb,OAAO,EAAE,OAAO,CAAA;QAChB,QAAQ,EAAE,OAAO,CAAA;KAClB,EAAE,CAAA;IACH,kBAAkB,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,KAAK,IAAI,CAAA;IAC1D,MAAM,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,CAAA;IAC5C,OAAO,EAAE,MAAM,IAAI,CAAA;IACnB,KAAK,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;IAC3C,OAAO,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;CAC/D,CAAA;AACD,KAAK,YAAY,GAAG;IAClB,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,IAAI,CAAC,EAAE,MAAM,CAAA;CACd,CAAA;AASD,eAAO,MAAM,aAAa,GAAI,IAAI,SAAS,YAAY,EACrD,OAAO,SAAS,IAAI,EAAE,EACtB,mBAAgC;;;;CA6GjC,CAAA"}
@@ -12,10 +12,14 @@ var useTileEditor = (tiles, storageKey = "vx:control-center") => {
12
12
  const snapshot = useSyncExternalStore(subscribe, () => localStorage.getItem(storageKey) ?? "", () => "");
13
13
  let order = [];
14
14
  let hidden = [];
15
+ const spans = {};
15
16
  try {
16
17
  const value = JSON.parse(snapshot || "{}");
17
18
  if (Array.isArray(value.order)) order = [...new Set(value.order.filter((id) => typeof id === "string"))];
18
19
  if (Array.isArray(value.hidden)) hidden = value.hidden.filter((id) => typeof id === "string");
20
+ if (value.spans && typeof value.spans === "object") {
21
+ for (const [id, span] of Object.entries(value.spans)) if (typeof span === "string") spans[id] = span;
22
+ }
19
23
  } catch {}
20
24
  const tilesById = new Map(tiles.map((tile) => [tile.id, tile]));
21
25
  const orderedIds = new Set(order);
@@ -23,11 +27,15 @@ var useTileEditor = (tiles, storageKey = "vx:control-center") => {
23
27
  const orderedTiles = [...order.flatMap((id) => {
24
28
  const tile = tilesById.get(id);
25
29
  return tile ? [tile] : [];
26
- }), ...tiles.filter((tile) => !orderedIds.has(tile.id))];
27
- const save = (nextOrder, nextHidden) => {
30
+ }), ...tiles.filter((tile) => !orderedIds.has(tile.id))].map((tile) => spans[tile.id] ? {
31
+ ...tile,
32
+ span: spans[tile.id]
33
+ } : tile);
34
+ const save = (nextOrder, nextHidden, nextSpans = spans) => {
28
35
  localStorage.setItem(storageKey, JSON.stringify({
29
36
  order: nextOrder,
30
- hidden: nextHidden
37
+ hidden: nextHidden,
38
+ spans: nextSpans
31
39
  }));
32
40
  window.dispatchEvent(new Event("vx:tile-preferences"));
33
41
  };
@@ -51,7 +59,14 @@ var useTileEditor = (tiles, storageKey = "vx:control-center") => {
51
59
  ids.splice(target, 0, id);
52
60
  save(ids, hidden);
53
61
  },
54
- onPlace: (id, target) => {
62
+ onAdd: (id, span) => {
63
+ if (!tilesById.has(id) || tilesById.get(id)?.editable === false) return;
64
+ save(order, hidden.filter((value) => value !== id), span ? {
65
+ ...spans,
66
+ [id]: span
67
+ } : spans);
68
+ },
69
+ onPlace: (id, target, span) => {
55
70
  if (!tilesById.has(id) || tilesById.get(id)?.editable === false) return;
56
71
  const ids = orderedTiles.map((tile) => tile.id);
57
72
  const from = ids.indexOf(id);
@@ -60,9 +75,12 @@ var useTileEditor = (tiles, storageKey = "vx:control-center") => {
60
75
  ids.splice(from, 1);
61
76
  ids.splice(to, 0, id);
62
77
  }
63
- save(ids, hidden.filter((value) => value !== id));
78
+ save(ids, hidden.filter((value) => value !== id), span ? {
79
+ ...spans,
80
+ [id]: span
81
+ } : spans);
64
82
  },
65
- onReset: () => save(tiles.map((tile) => tile.id), [])
83
+ onReset: () => save(tiles.map((tile) => tile.id), [], {})
66
84
  },
67
85
  orderedTiles,
68
86
  visibleTiles: orderedTiles.filter((tile) => !hiddenIds.has(tile.id))
@@ -13,11 +13,13 @@ export declare const PreviewBluetoothTile: ({ onOpen, label }: Props) => import(
13
13
  export declare const PreviewBluetoothSettings: () => import("react").JSX.Element;
14
14
  export declare const PreviewAirDropTile: ({ onOpen, label }: Props) => import("react").JSX.Element;
15
15
  export declare const PreviewAirDropSettings: () => import("react").JSX.Element;
16
- export declare const PreviewFocusTile: ({ label }: {
16
+ export declare const PreviewFocusTile: ({ label, compact }: {
17
17
  label?: string;
18
+ compact?: boolean;
18
19
  }) => import("react").JSX.Element;
19
- export declare const PreviewStageManagerTile: ({ label }: {
20
+ export declare const PreviewStageManagerTile: ({ label, compact }: {
20
21
  label?: string;
22
+ compact?: boolean;
21
23
  }) => import("react").JSX.Element;
22
24
  export declare const PreviewMirroringTile: ({ onOpen, label }: Props) => import("react").JSX.Element;
23
25
  export declare const PreviewMirroringSettings: () => import("react").JSX.Element;
@@ -1 +1 @@
1
- {"version":3,"file":"preview.d.ts","sourceRoot":"","sources":["../../../../../../src/lib/components/panel/footer/control-center/preview.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,SAAS,EAMf,MAAM,OAAO,CAAA;AA8Dd,eAAO,MAAM,eAAe,GAAI,uBAG7B;IACD,OAAO,EAAE,OAAO,CAAA;IAChB,QAAQ,EAAE,SAAS,CAAA;CACpB,gCAcA,CAAA;AASD,KAAK,KAAK,GAAG;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,IAAI,CAAA;CAAE,CAAA;AAoEnD,eAAO,MAAM,eAAe,GAAI,mBAA6B,KAAK,gCAmBjE,CAAA;AACD,eAAO,MAAM,mBAAmB,mCAY/B,CAAA;AAED,eAAO,MAAM,oBAAoB,GAAI,mBAGlC,KAAK,gCAmBP,CAAA;AACD,eAAO,MAAM,wBAAwB,mCAYpC,CAAA;AAED,eAAO,MAAM,kBAAkB,GAAI,mBAA+B,KAAK,gCAiBtE,CAAA;AACD,eAAO,MAAM,sBAAsB,mCASlC,CAAA;AAED,eAAO,MAAM,gBAAgB,GAAI,WAE9B;IACD,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,gCAWA,CAAA;AAED,eAAO,MAAM,uBAAuB,GAAI,WAErC;IACD,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,gCAWA,CAAA;AAED,eAAO,MAAM,oBAAoB,GAAI,mBAGlC,KAAK,gCAiBP,CAAA;AACD,eAAO,MAAM,wBAAwB,mCASpC,CAAA;AAiCD,eAAO,MAAM,kBAAkB,GAAI,WAEhC;IACD,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,gCAeA,CAAA;AAED,eAAO,MAAM,gBAAgB,GAAI,WAAqB;IAAE,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,gCAyBvE,CAAA;AAGD,eAAO,MAAM,gBAAgB,GAAI,WAAqB;IAAE,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,gCA4CvE,CAAA"}
1
+ {"version":3,"file":"preview.d.ts","sourceRoot":"","sources":["../../../../../../src/lib/components/panel/footer/control-center/preview.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,SAAS,EAMf,MAAM,OAAO,CAAA;AA8Dd,eAAO,MAAM,eAAe,GAAI,uBAG7B;IACD,OAAO,EAAE,OAAO,CAAA;IAChB,QAAQ,EAAE,SAAS,CAAA;CACpB,gCAcA,CAAA;AASD,KAAK,KAAK,GAAG;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,IAAI,CAAA;CAAE,CAAA;AAoEnD,eAAO,MAAM,eAAe,GAAI,mBAA6B,KAAK,gCAmBjE,CAAA;AACD,eAAO,MAAM,mBAAmB,mCAY/B,CAAA;AAED,eAAO,MAAM,oBAAoB,GAAI,mBAGlC,KAAK,gCAmBP,CAAA;AACD,eAAO,MAAM,wBAAwB,mCAYpC,CAAA;AAED,eAAO,MAAM,kBAAkB,GAAI,mBAA+B,KAAK,gCAiBtE,CAAA;AACD,eAAO,MAAM,sBAAsB,mCASlC,CAAA;AAED,eAAO,MAAM,gBAAgB,GAAI,oBAG9B;IACD,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB,gCAYA,CAAA;AAED,eAAO,MAAM,uBAAuB,GAAI,oBAGrC;IACD,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB,gCAYA,CAAA;AAED,eAAO,MAAM,oBAAoB,GAAI,mBAGlC,KAAK,gCAiBP,CAAA;AACD,eAAO,MAAM,wBAAwB,mCASpC,CAAA;AAiCD,eAAO,MAAM,kBAAkB,GAAI,WAEhC;IACD,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,gCAeA,CAAA;AAED,eAAO,MAAM,gBAAgB,GAAI,WAAqB;IAAE,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,gCAyBvE,CAAA;AAGD,eAAO,MAAM,gBAAgB,GAAI,WAAqB;IAAE,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,gCA4CvE,CAAA"}
@@ -198,22 +198,24 @@ var PreviewAirDropSettings = () => {
198
198
  onChange: (airdrop) => update({ airdrop })
199
199
  });
200
200
  };
201
- var PreviewFocusTile = ({ label = "Do Not Disturb" }) => {
201
+ var PreviewFocusTile = ({ label = "Do Not Disturb", compact = false }) => {
202
202
  const { state, update } = usePreview();
203
203
  return /* @__PURE__ */ jsx(ActionTile, {
204
204
  label,
205
205
  description: state.focus ? "On" : "Off",
206
206
  icon: /* @__PURE__ */ jsx(Moon, { size: 18 }),
207
+ compact,
207
208
  isSelected: state.focus,
208
209
  onPress: () => update({ focus: !state.focus })
209
210
  });
210
211
  };
211
- var PreviewStageManagerTile = ({ label = "Stage Manager" }) => {
212
+ var PreviewStageManagerTile = ({ label = "Stage Manager", compact = false }) => {
212
213
  const { state, update } = usePreview();
213
214
  return /* @__PURE__ */ jsx(ActionTile, {
214
215
  label,
215
216
  description: state.stageManager ? "On" : "Off",
216
217
  icon: /* @__PURE__ */ jsx(Widget2, { size: 18 }),
218
+ compact,
217
219
  isSelected: state.stageManager,
218
220
  onPress: () => update({ stageManager: !state.stageManager })
219
221
  });
@@ -1 +1 @@
1
- {"version":3,"file":"tile.d.ts","sourceRoot":"","sources":["../../../../../../src/lib/components/panel/footer/control-center/tile.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAQtC,eAAO,MAAM,UAAU,GAAI,4DAOxB;IACD,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,IAAI,CAAC,EAAE,SAAS,CAAA;IAChB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,OAAO,EAAE,MAAM,IAAI,CAAA;CACpB,gCAwBA,CAAA"}
1
+ {"version":3,"file":"tile.d.ts","sourceRoot":"","sources":["../../../../../../src/lib/components/panel/footer/control-center/tile.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAQtC,eAAO,MAAM,UAAU,GAAI,4DAOxB;IACD,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,IAAI,CAAC,EAAE,SAAS,CAAA;IAChB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,OAAO,EAAE,MAAM,IAAI,CAAA;CACpB,gCAyBA,CAAA"}
@@ -10,15 +10,20 @@ var ActionTile = ({ label, description, icon, compact = false, isSelected, onPre
10
10
  compact,
11
11
  selected: isSelected
12
12
  }),
13
- isIconOnly: compact,
14
13
  variant: "ghost",
15
14
  onPress,
16
- children: compact ? icon ?? label : /* @__PURE__ */ jsxs("span", {
17
- className: styles.content(),
18
- children: [icon && /* @__PURE__ */ jsx("span", {
19
- className: styles.icon({ selected: isSelected }),
20
- children: icon
21
- }), /* @__PURE__ */ jsxs("span", {
15
+ children: /* @__PURE__ */ jsxs("span", {
16
+ "data-slot": "tile-content",
17
+ className: styles.content({ compact }),
18
+ children: [(icon || compact) && /* @__PURE__ */ jsx("span", {
19
+ "data-slot": "tile-icon",
20
+ className: styles.icon({
21
+ compact,
22
+ selected: isSelected
23
+ }),
24
+ children: icon ?? label
25
+ }), !compact && /* @__PURE__ */ jsxs("span", {
26
+ "data-slot": "tile-text",
22
27
  className: styles.text(),
23
28
  children: [/* @__PURE__ */ jsx("span", {
24
29
  className: styles.title(),
@@ -8,15 +8,19 @@ export declare const controlCenterVariants: import('tailwind-variants').TVReturn
8
8
  span: {
9
9
  compact: {
10
10
  tileContainer: string;
11
+ gallerySuggestion: string;
11
12
  };
12
13
  standard: {
13
14
  tileContainer: string;
15
+ gallerySuggestion: string;
14
16
  };
15
17
  wide: {
16
18
  tileContainer: string;
19
+ gallerySuggestion: string;
17
20
  };
18
21
  full: {
19
22
  tileContainer: string;
23
+ gallerySuggestion: string;
20
24
  };
21
25
  };
22
26
  presentation: {
@@ -58,6 +62,8 @@ export declare const controlCenterVariants: import('tailwind-variants').TVReturn
58
62
  previewTitle: string;
59
63
  mediaControls: string;
60
64
  connectionIcon: string;
65
+ galleryPreview: string;
66
+ gallerySuggestion: string;
61
67
  }, undefined, {
62
68
  active: {
63
69
  true: {
@@ -68,15 +74,19 @@ export declare const controlCenterVariants: import('tailwind-variants').TVReturn
68
74
  span: {
69
75
  compact: {
70
76
  tileContainer: string;
77
+ gallerySuggestion: string;
71
78
  };
72
79
  standard: {
73
80
  tileContainer: string;
81
+ gallerySuggestion: string;
74
82
  };
75
83
  wide: {
76
84
  tileContainer: string;
85
+ gallerySuggestion: string;
77
86
  };
78
87
  full: {
79
88
  tileContainer: string;
89
+ gallerySuggestion: string;
80
90
  };
81
91
  };
82
92
  presentation: {
@@ -118,6 +128,8 @@ export declare const controlCenterVariants: import('tailwind-variants').TVReturn
118
128
  previewTitle: string;
119
129
  mediaControls: string;
120
130
  connectionIcon: string;
131
+ galleryPreview: string;
132
+ gallerySuggestion: string;
121
133
  }, import('tailwind-variants').TVReturnTypeLike<{
122
134
  active: {
123
135
  true: {
@@ -128,15 +140,19 @@ export declare const controlCenterVariants: import('tailwind-variants').TVReturn
128
140
  span: {
129
141
  compact: {
130
142
  tileContainer: string;
143
+ gallerySuggestion: string;
131
144
  };
132
145
  standard: {
133
146
  tileContainer: string;
147
+ gallerySuggestion: string;
134
148
  };
135
149
  wide: {
136
150
  tileContainer: string;
151
+ gallerySuggestion: string;
137
152
  };
138
153
  full: {
139
154
  tileContainer: string;
155
+ gallerySuggestion: string;
140
156
  };
141
157
  };
142
158
  presentation: {
@@ -178,6 +194,8 @@ export declare const controlCenterVariants: import('tailwind-variants').TVReturn
178
194
  previewTitle: string;
179
195
  mediaControls: string;
180
196
  connectionIcon: string;
197
+ galleryPreview: string;
198
+ gallerySuggestion: string;
181
199
  }>>;
182
200
  export declare const controlCenterTileVariants: import('tailwind-variants').TVReturnType<{
183
201
  selected: {
@@ -190,9 +208,12 @@ export declare const controlCenterTileVariants: import('tailwind-variants').TVRe
190
208
  compact: {
191
209
  true: {
192
210
  button: string;
211
+ content: string;
212
+ icon: string;
193
213
  };
194
214
  false: {
195
215
  button: string;
216
+ icon: string;
196
217
  };
197
218
  };
198
219
  }, {
@@ -213,9 +234,12 @@ export declare const controlCenterTileVariants: import('tailwind-variants').TVRe
213
234
  compact: {
214
235
  true: {
215
236
  button: string;
237
+ content: string;
238
+ icon: string;
216
239
  };
217
240
  false: {
218
241
  button: string;
242
+ icon: string;
219
243
  };
220
244
  };
221
245
  }, {
@@ -236,9 +260,12 @@ export declare const controlCenterTileVariants: import('tailwind-variants').TVRe
236
260
  compact: {
237
261
  true: {
238
262
  button: string;
263
+ content: string;
264
+ icon: string;
239
265
  };
240
266
  false: {
241
267
  button: string;
268
+ icon: string;
242
269
  };
243
270
  };
244
271
  }, {
@@ -1 +1 @@
1
- {"version":3,"file":"variant.d.ts","sourceRoot":"","sources":["../../../../../../src/lib/components/panel/footer/control-center/variant.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0DhC,CAAA;AAEF,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BpC,CAAA;AAEF,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;cAS7B,CAAA"}
1
+ {"version":3,"file":"variant.d.ts","sourceRoot":"","sources":["../../../../../../src/lib/components/panel/footer/control-center/variant.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwEhC,CAAA;AAEF,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCpC,CAAA;AAEF,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;cAS7B,CAAA"}
@@ -14,7 +14,7 @@ var controlCenterVariants = tv({
14
14
  panelHeader: "flex items-center gap-2 px-1 pt-1 pb-2",
15
15
  panelTitle: "text-sm font-semibold capitalize",
16
16
  panelBody: "p-1",
17
- home: "grid grid-cols-4 items-center gap-x-2 gap-y-3",
17
+ home: "grid grid-cols-2 items-center gap-x-2 gap-y-3 min-[420px]:grid-cols-3 sm:grid-cols-4",
18
18
  tileContainer: "min-w-0",
19
19
  optionsList: "flex flex-col gap-1",
20
20
  colorSettings: "flex flex-col gap-3",
@@ -30,7 +30,9 @@ var controlCenterVariants = tv({
30
30
  previewHeader: "flex items-center gap-2 [&>button]:ms-auto",
31
31
  previewTitle: "text-sm font-medium",
32
32
  mediaControls: "flex items-center justify-center gap-2",
33
- connectionIcon: "text-muted"
33
+ connectionIcon: "text-muted",
34
+ galleryPreview: "mx-auto min-h-0 w-full max-w-72 flex-1 overflow-y-auto p-2",
35
+ gallerySuggestion: "shrink-0"
34
36
  },
35
37
  variants: {
36
38
  active: {
@@ -38,10 +40,22 @@ var controlCenterVariants = tv({
38
40
  false: {}
39
41
  },
40
42
  span: {
41
- compact: { tileContainer: "col-span-1 aspect-square w-full overflow-hidden [&>button]:size-full [&>button>span>span:last-child]:hidden" },
42
- standard: { tileContainer: "col-span-2 min-w-0 [&>button]:w-full" },
43
- wide: { tileContainer: "col-span-3 min-w-0 [&>button]:w-full" },
44
- full: { tileContainer: "col-span-4 min-w-0 [&>button]:w-full" }
43
+ compact: {
44
+ tileContainer: "col-span-1 h-14 w-14 justify-self-center",
45
+ gallerySuggestion: "w-24"
46
+ },
47
+ standard: {
48
+ tileContainer: "col-span-2 min-w-0",
49
+ gallerySuggestion: "w-[17rem] min-[420px]:w-[11.167rem] sm:w-[8.25rem]"
50
+ },
51
+ wide: {
52
+ tileContainer: "col-span-2 w-full max-w-[12.125rem] min-w-0 justify-self-center min-[420px]:col-span-3",
53
+ gallerySuggestion: "w-full max-w-[12.125rem]"
54
+ },
55
+ full: {
56
+ tileContainer: "col-span-2 min-w-0 min-[420px]:col-span-3 sm:col-span-4",
57
+ gallerySuggestion: "w-[17rem]"
58
+ }
45
59
  },
46
60
  presentation: {
47
61
  popover: { surface: "bg-transparent" },
@@ -57,7 +71,7 @@ var controlCenterTileVariants = tv({
57
71
  slots: {
58
72
  button: "bg-default-hover hover:bg-surface rounded-full",
59
73
  content: "flex min-w-0 items-center gap-2",
60
- icon: "bg-surface flex size-10 shrink-0 items-center justify-center rounded-full border shadow-sm",
74
+ icon: "bg-surface flex size-10 shrink-0 items-center justify-center rounded-full",
61
75
  text: "flex min-w-0 flex-col",
62
76
  title: "truncate text-sm font-medium",
63
77
  description: "text-muted truncate text-xs"
@@ -71,8 +85,15 @@ var controlCenterTileVariants = tv({
71
85
  false: {}
72
86
  },
73
87
  compact: {
74
- true: { button: "size-14 shrink-0" },
75
- false: { button: "h-auto min-h-14 items-center justify-between px-3 py-2.5 text-start" }
88
+ true: {
89
+ button: "bg-surface! hover:bg-surface! size-14 shrink-0 items-center justify-center p-0 shadow-none!",
90
+ content: "size-full justify-center",
91
+ icon: "size-full border-0! bg-transparent! shadow-none! ring-0! [&>svg]:size-[1.375rem]"
92
+ },
93
+ false: {
94
+ button: "h-auto min-h-14 items-center justify-between px-3 py-2.5 text-start",
95
+ icon: "border shadow-sm"
96
+ }
76
97
  }
77
98
  },
78
99
  defaultVariants: { compact: false }
@@ -5,7 +5,7 @@ import { DefaultControlCenter } from "./control-center/default.js";
5
5
  import { UserMenu } from "./user-menu.js";
6
6
  import { useMemo, useState } from "react";
7
7
  import { Badge, Button, Dropdown, Separator, Surface, Tooltip, useMediaQuery } from "@vezham/react-v3";
8
- import { Fragment, jsx, jsxs } from "react/jsx-runtime";
8
+ import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
9
9
  import { Bell, MenuDots, Settings, VezhamTamizhi } from "@vezham/icons-react";
10
10
  //#region src/lib/components/panel/footer/index.tsx
11
11
  var footerActionClassName = "text-muted hover:text-foreground h-5 w-5 min-w-0 p-0 [&_svg]:size-5";
@@ -85,7 +85,7 @@ var Footer = ({ user, showAI = false, showControlCenter = false, controlCenter,
85
85
  isOpen: controlCenterOpen,
86
86
  onOpenChange: setControlCenterOpen
87
87
  }), [compact, controlCenterOpen]);
88
- return /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx(Separator, { className: "hidden md:block" }), /* @__PURE__ */ jsxs(Surface, {
88
+ return /* @__PURE__ */ jsxs(Fragment$1, { children: [/* @__PURE__ */ jsx(Separator, { className: "hidden md:block" }), /* @__PURE__ */ jsxs(Surface, {
89
89
  variant: "transparent",
90
90
  className: `flex items-center justify-center gap-2 md:flex-col md:gap-3 ${className ?? ""}`,
91
91
  children: [
@@ -32,7 +32,7 @@ var NotificationDrawer = forwardRef((props, ref) => {
32
32
  const handleEdit = () => {
33
33
  if (openSettings) {
34
34
  onClose();
35
- openSettings("Edit Widgets");
35
+ openSettings("Widget Center");
36
36
  } else if (onEdit) onEdit();
37
37
  else {
38
38
  onClose();
@@ -44,7 +44,7 @@ var NotificationDrawer = forwardRef((props, ref) => {
44
44
  size: "sm",
45
45
  ...getEditButtonProps(),
46
46
  onPress: handleEdit,
47
- children: "Edit Widgets"
47
+ children: "Widget Center"
48
48
  });
49
49
  if (compact) return /* @__PURE__ */ jsx(InfoPanelSheet, {
50
50
  isOpen,