@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.
- package/dist/lib/components/command/index.js +2 -2
- package/dist/lib/components/menu/index.js +2 -2
- package/dist/lib/components/panel/footer/ai/message-actions.js +2 -2
- package/dist/lib/components/panel/footer/ai/mock-result.js +2 -2
- package/dist/lib/components/panel/footer/control-center/appearance.d.ts +2 -1
- package/dist/lib/components/panel/footer/control-center/appearance.d.ts.map +1 -1
- package/dist/lib/components/panel/footer/control-center/appearance.js +4 -3
- package/dist/lib/components/panel/footer/control-center/control-center.js +11 -8
- package/dist/lib/components/panel/footer/control-center/direction.d.ts +2 -1
- package/dist/lib/components/panel/footer/control-center/direction.d.ts.map +1 -1
- package/dist/lib/components/panel/footer/control-center/direction.js +6 -4
- package/dist/lib/components/panel/footer/control-center/editor.d.ts +3 -1
- package/dist/lib/components/panel/footer/control-center/editor.d.ts.map +1 -1
- package/dist/lib/components/panel/footer/control-center/editor.js +24 -6
- package/dist/lib/components/panel/footer/control-center/preview.d.ts +4 -2
- package/dist/lib/components/panel/footer/control-center/preview.d.ts.map +1 -1
- package/dist/lib/components/panel/footer/control-center/preview.js +4 -2
- package/dist/lib/components/panel/footer/control-center/tile.d.ts.map +1 -1
- package/dist/lib/components/panel/footer/control-center/tile.js +12 -7
- package/dist/lib/components/panel/footer/control-center/variant.d.ts +27 -0
- package/dist/lib/components/panel/footer/control-center/variant.d.ts.map +1 -1
- package/dist/lib/components/panel/footer/control-center/variant.js +30 -9
- package/dist/lib/components/panel/footer/index.js +2 -2
- package/dist/lib/components/panel/footer/notification-center/index.js +2 -2
- package/dist/lib/components/panel/footer/notification-center/widget-tiles.d.ts +88 -3
- package/dist/lib/components/panel/footer/notification-center/widget-tiles.d.ts.map +1 -1
- package/dist/lib/components/panel/footer/notification-center/widget-tiles.js +63 -25
- package/dist/lib/components/panel/footer/user-menu.d.ts.map +1 -1
- package/dist/lib/components/panel/footer/user-menu.js +258 -230
- package/dist/lib/components/panel/header/application-menu-sheet.js +5 -5
- package/dist/lib/components/panel/header/bookmarks/bookmark-file-tree/index.js +1 -1
- package/dist/lib/components/panel/header/bookmarks/bookmark-file-tree/variants.js +1 -1
- package/dist/lib/components/panel/header/bookmarks/favorites/grid-list.js +2 -2
- package/dist/lib/components/panel/header/bookmarks/index.js +2 -1
- package/dist/lib/components/panel/header/bookmarks/shortcut-context-menu.js +2 -1
- package/dist/lib/components/panel/header/bookmarks/tree-data.js +2 -1
- package/dist/lib/components/panel/header/index.js +5 -5
- package/dist/lib/components/panel/header/storage/types.d.ts +1 -1
- package/dist/lib/components/panel/info-panel/container.module.js +4 -2
- package/dist/lib/components/panel/menu/index.js +2 -2
- package/dist/lib/components/panel/menu/types.d.ts +1 -1
- package/dist/lib/layouts/menu-layout/index-md.js +3 -3
- package/dist/lib/layouts/menu-layout/index-sm.js +2 -2
- package/dist/lib/layouts/section/index.d.ts.map +1 -1
- package/dist/lib/layouts/section/index.js +7 -7
- package/dist/lib/layouts/section/sidebar.js +2 -2
- package/dist/lib/layouts/section/toolbar-more-sheet.js +3 -3
- package/dist/lib/layouts/section/toolbar.js +4 -4
- package/dist/lib/pages/settings/index.d.ts.map +1 -1
- package/dist/lib/pages/settings/index.js +72 -27
- package/dist/lib/pages/settings/navigation.d.ts +1 -1
- package/dist/lib/pages/settings/navigation.d.ts.map +1 -1
- package/dist/lib/pages/settings/settings-content.js +1 -1
- package/dist/lib/pages/settings/tile-gallery.d.ts +6 -1
- package/dist/lib/pages/settings/tile-gallery.d.ts.map +1 -1
- package/dist/lib/pages/settings/tile-gallery.js +175 -100
- package/dist/lib/store/useBookmarks/index.js +2 -2
- package/dist/lib/store/useStorage/index.js +1 -1
- 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,
|
|
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:
|
|
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("
|
|
69
|
+
openSettings("Control Center");
|
|
70
70
|
},
|
|
71
|
-
children: "
|
|
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, {
|
|
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,
|
|
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:
|
|
35
|
-
|
|
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
|
-
|
|
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;
|
|
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
|
-
|
|
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
|
-
|
|
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,
|
|
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,
|
|
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:
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
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
|
|
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-
|
|
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: {
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
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
|
|
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: {
|
|
75
|
-
|
|
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("
|
|
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: "
|
|
47
|
+
children: "Widget Center"
|
|
48
48
|
});
|
|
49
49
|
if (compact) return /* @__PURE__ */ jsx(InfoPanelSheet, {
|
|
50
50
|
isOpen,
|