@hanzo/ui 8.27.12 → 8.27.14

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 (110) hide show
  1. package/LICENSE-APACHE +205 -0
  2. package/LICENSE-MIT +21 -0
  3. package/LICENSE.md +5 -18
  4. package/NOTICE +6 -0
  5. package/README.md +2 -2
  6. package/dist/agents/ChannelMembers.cjs +10 -2
  7. package/dist/agents/ChannelMembers.d.ts +3 -2
  8. package/dist/agents/ChannelMembers.d.ts.map +1 -1
  9. package/dist/agents/ChannelMembers.js +10 -2
  10. package/dist/agents/ChannelMembers.js.map +1 -1
  11. package/dist/agents/ChannelNotes.cjs +10 -2
  12. package/dist/agents/ChannelNotes.d.ts +1 -0
  13. package/dist/agents/ChannelNotes.d.ts.map +1 -1
  14. package/dist/agents/ChannelNotes.js +10 -2
  15. package/dist/agents/ChannelNotes.js.map +1 -1
  16. package/dist/agents/DiffViewer.cjs +19 -7
  17. package/dist/agents/DiffViewer.d.ts +1 -0
  18. package/dist/agents/DiffViewer.d.ts.map +1 -1
  19. package/dist/agents/DiffViewer.js +19 -7
  20. package/dist/agents/DiffViewer.js.map +1 -1
  21. package/dist/agents/DirectoryModal.cjs +97 -0
  22. package/dist/agents/DirectoryModal.d.ts +29 -0
  23. package/dist/agents/DirectoryModal.d.ts.map +1 -0
  24. package/dist/agents/DirectoryModal.js +94 -0
  25. package/dist/agents/DirectoryModal.js.map +1 -0
  26. package/dist/agents/DriveViewer.cjs +78 -0
  27. package/dist/agents/DriveViewer.d.ts +30 -0
  28. package/dist/agents/DriveViewer.d.ts.map +1 -0
  29. package/dist/agents/DriveViewer.js +42 -0
  30. package/dist/agents/DriveViewer.js.map +1 -0
  31. package/dist/agents/LiveVoiceCall.cjs +55 -39
  32. package/dist/agents/LiveVoiceCall.d.ts +7 -7
  33. package/dist/agents/LiveVoiceCall.d.ts.map +1 -1
  34. package/dist/agents/LiveVoiceCall.js +56 -40
  35. package/dist/agents/LiveVoiceCall.js.map +1 -1
  36. package/dist/agents/MCPHub.cjs +19 -8
  37. package/dist/agents/MCPHub.d.ts +5 -10
  38. package/dist/agents/MCPHub.d.ts.map +1 -1
  39. package/dist/agents/MCPHub.js +19 -8
  40. package/dist/agents/MCPHub.js.map +1 -1
  41. package/dist/agents/ShortcutsSheet.cjs +34 -14
  42. package/dist/agents/ShortcutsSheet.d.ts +7 -6
  43. package/dist/agents/ShortcutsSheet.d.ts.map +1 -1
  44. package/dist/agents/ShortcutsSheet.js +34 -14
  45. package/dist/agents/ShortcutsSheet.js.map +1 -1
  46. package/dist/agents/SwarmBar.cjs +34 -13
  47. package/dist/agents/SwarmBar.d.ts +7 -8
  48. package/dist/agents/SwarmBar.d.ts.map +1 -1
  49. package/dist/agents/SwarmBar.js +34 -13
  50. package/dist/agents/SwarmBar.js.map +1 -1
  51. package/dist/agents/TerminalViewer.cjs +71 -0
  52. package/dist/agents/TerminalViewer.d.ts +20 -0
  53. package/dist/agents/TerminalViewer.d.ts.map +1 -0
  54. package/dist/agents/TerminalViewer.js +68 -0
  55. package/dist/agents/TerminalViewer.js.map +1 -0
  56. package/dist/agents/ThemeCustomizer.cjs +29 -6
  57. package/dist/agents/ThemeCustomizer.d.ts +1 -0
  58. package/dist/agents/ThemeCustomizer.d.ts.map +1 -1
  59. package/dist/agents/ThemeCustomizer.js +29 -6
  60. package/dist/agents/ThemeCustomizer.js.map +1 -1
  61. package/dist/agents/index.cjs +7 -1
  62. package/dist/agents/index.d.ts +3 -0
  63. package/dist/agents/index.d.ts.map +1 -1
  64. package/dist/agents/index.js +3 -0
  65. package/dist/agents/index.js.map +1 -1
  66. package/dist/backends/gui/3d-card.d.ts +2 -2
  67. package/dist/backends/gui/button.d.ts +8 -0
  68. package/dist/backends/gui/button.d.ts.map +1 -1
  69. package/dist/backends/gui/button.js.map +1 -1
  70. package/dist/backends/gui/calendar.js.map +1 -1
  71. package/dist/backends/gui/card.d.ts +2 -2
  72. package/dist/backends/gui/context-menu.d.ts +3 -3
  73. package/dist/backends/gui/context-menu.d.ts.map +1 -1
  74. package/dist/backends/gui/context-menu.js.map +1 -1
  75. package/dist/backends/gui/dropdown-menu.cjs +2 -2
  76. package/dist/backends/gui/dropdown-menu.d.ts +3 -3
  77. package/dist/backends/gui/dropdown-menu.d.ts.map +1 -1
  78. package/dist/backends/gui/dropdown-menu.js +2 -2
  79. package/dist/backends/gui/dropdown-menu.js.map +1 -1
  80. package/dist/backends/gui/empty.d.ts +2 -2
  81. package/dist/backends/gui/glimpse.cjs +2 -6
  82. package/dist/backends/gui/glimpse.d.ts +8 -1
  83. package/dist/backends/gui/glimpse.d.ts.map +1 -1
  84. package/dist/backends/gui/glimpse.js +2 -6
  85. package/dist/backends/gui/glimpse.js.map +1 -1
  86. package/dist/backends/gui/item.d.ts +1 -1
  87. package/dist/backends/gui/menubar.d.ts +3 -3
  88. package/dist/backends/gui/order-entry.cjs +1 -10
  89. package/dist/backends/gui/order-entry.d.ts.map +1 -1
  90. package/dist/backends/gui/order-entry.js +1 -10
  91. package/dist/backends/gui/order-entry.js.map +1 -1
  92. package/dist/backends/gui/orders-history.cjs +1 -1
  93. package/dist/backends/gui/orders-history.js +1 -1
  94. package/dist/backends/gui/orders-history.js.map +1 -1
  95. package/dist/backends/gui/select.cjs +1 -1
  96. package/dist/backends/gui/select.d.ts +1 -1
  97. package/dist/backends/gui/select.d.ts.map +1 -1
  98. package/dist/backends/gui/select.js +1 -1
  99. package/dist/backends/gui/select.js.map +1 -1
  100. package/dist/backends/gui/toaster.d.ts +1 -1
  101. package/dist/backends/gui/toaster.d.ts.map +1 -1
  102. package/dist/backends/gui/toggle-group.cjs +3 -3
  103. package/dist/backends/gui/toggle-group.d.ts +1 -1
  104. package/dist/backends/gui/toggle-group.d.ts.map +1 -1
  105. package/dist/backends/gui/toggle-group.js +3 -3
  106. package/dist/backends/gui/toggle-group.js.map +1 -1
  107. package/dist/gallery.html +58 -3
  108. package/dist/styles/motion.css +57 -2
  109. package/dist/styles.css +57 -2
  110. package/package.json +21 -19
@@ -1 +1 @@
1
- {"version":3,"file":"DiffViewer.js","sourceRoot":"","sources":["../../src/agents/DiffViewer.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DiffViewer.js","sourceRoot":"","sources":["../../src/agents/DiffViewer.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,97 @@
1
+ 'use client';"use strict";
2
+ 'use client';
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.DirectoryModal = void 0;
5
+ const jsx_runtime_1 = require("react/jsx-runtime");
6
+ const react_1 = require("react");
7
+ const lucide_icons_2_1 = require("@hanzogui/lucide-icons-2");
8
+ const index_1 = require("../index.cjs");
9
+ const TABS = [
10
+ { id: 'apps', label: 'Apps' },
11
+ { id: 'channels', label: 'Channels' },
12
+ { id: 'plugins', label: 'Plugins' },
13
+ { id: 'skills', label: 'Skills' },
14
+ ];
15
+ const DirectoryModal = ({ open, onOpenChange, activeTab = 'apps', onTabChange, items, loading = false, error = null, onInstall, onConnect, consoleUrl = 'https://console.hanzo.ai', authRequired = false, onSignIn, }) => {
16
+ const [tab, setTab] = (0, react_1.useState)(activeTab);
17
+ const [query, setQuery] = (0, react_1.useState)('');
18
+ const [acting, setActing] = (0, react_1.useState)(null);
19
+ const currentTab = onTabChange ? activeTab : tab;
20
+ const handleTabChange = (t) => {
21
+ if (onTabChange)
22
+ onTabChange(t);
23
+ else
24
+ setTab(t);
25
+ };
26
+ const filtered = (0, react_1.useMemo)(() => {
27
+ const q = query.trim().toLowerCase();
28
+ if (!q)
29
+ return items;
30
+ return items.filter((i) => i.name.toLowerCase().includes(q) ||
31
+ i.description.toLowerCase().includes(q) ||
32
+ i.publisher.toLowerCase().includes(q));
33
+ }, [items, query]);
34
+ return ((0, jsx_runtime_1.jsx)(index_1.Dialog, { open: open, onOpenChange: onOpenChange, children: (0, jsx_runtime_1.jsxs)(index_1.DialogContent, { style: { maxWidth: 760, padding: 0, overflow: 'hidden', borderRadius: 16, backgroundColor: 'var(--background)', border: '1px solid var(--borderColor)' }, children: [(0, jsx_runtime_1.jsxs)("div", { style: { padding: 20, borderBottom: '1px solid var(--borderColor)' }, children: [(0, jsx_runtime_1.jsxs)("div", { style: { display: 'flex', alignItems: 'center', justifyContent: 'space-between', marginBottom: 16 }, children: [(0, jsx_runtime_1.jsxs)("div", { children: [(0, jsx_runtime_1.jsx)(index_1.DialogTitle, { style: { fontSize: 18, fontWeight: 600, letterSpacing: '-0.02em', margin: 0 }, children: "Directory" }), (0, jsx_runtime_1.jsx)(index_1.Text, { style: { fontSize: 12, color: 'var(--color10)', marginTop: 2 }, children: "Extend your workspace with integrations, channels, plugins, and skills." })] }), (0, jsx_runtime_1.jsxs)("a", { href: consoleUrl, target: "_blank", rel: "noreferrer", style: {
35
+ display: 'inline-flex',
36
+ alignItems: 'center',
37
+ gap: 6,
38
+ fontSize: 12,
39
+ color: 'var(--color11)',
40
+ padding: '6px 10px',
41
+ borderRadius: 8,
42
+ border: '1px solid var(--borderColor)',
43
+ textDecoration: 'none',
44
+ }, children: [(0, jsx_runtime_1.jsx)("span", { children: "Console" }), (0, jsx_runtime_1.jsx)(lucide_icons_2_1.ArrowUpRight, { size: 14 })] })] }), (0, jsx_runtime_1.jsxs)("div", { style: { display: 'flex', alignItems: 'center', gap: 12 }, children: [(0, jsx_runtime_1.jsx)("div", { style: { display: 'flex', padding: 4, backgroundColor: 'var(--color3)', borderRadius: 10, border: '1px solid var(--borderColor)' }, children: TABS.map((t) => ((0, jsx_runtime_1.jsx)("button", { onClick: () => handleTabChange(t.id), style: {
45
+ padding: '4px 12px',
46
+ fontSize: 12,
47
+ fontWeight: 500,
48
+ borderRadius: 6,
49
+ border: 'none',
50
+ cursor: 'pointer',
51
+ backgroundColor: currentTab === t.id ? 'var(--background)' : 'transparent',
52
+ color: currentTab === t.id ? 'var(--color12)' : 'var(--color10)',
53
+ boxShadow: currentTab === t.id ? '0 1px 3px rgba(0,0,0,0.1)' : 'none',
54
+ }, children: t.label }, t.id))) }), (0, jsx_runtime_1.jsxs)("div", { style: { position: 'relative', flex: 1 }, children: [(0, jsx_runtime_1.jsx)("span", { style: { position: 'absolute', left: 10, top: '50%', transform: 'translateY(-50%)', color: 'var(--color9)', pointerEvents: 'none', display: 'flex' }, children: (0, jsx_runtime_1.jsx)(lucide_icons_2_1.Search, { size: 14 }) }), (0, jsx_runtime_1.jsx)(index_1.Input, { value: query, onChange: (e) => setQuery(e.target.value), placeholder: `Search ${currentTab}...`, style: { paddingLeft: 32, height: 34, fontSize: 12, borderRadius: 10, backgroundColor: 'var(--color2)', borderColor: 'var(--borderColor)' } }), query && ((0, jsx_runtime_1.jsx)("button", { onClick: () => setQuery(''), style: { position: 'absolute', right: 10, top: '50%', transform: 'translateY(-50%)', background: 'none', border: 'none', color: 'var(--color9)', cursor: 'pointer', display: 'flex' }, children: (0, jsx_runtime_1.jsx)(lucide_icons_2_1.X, { size: 12 }) }))] })] })] }), (0, jsx_runtime_1.jsx)(index_1.ScrollArea, { style: { height: 420, padding: 20 }, children: authRequired ? ((0, jsx_runtime_1.jsxs)("div", { style: { display: 'flex', flexDirection: 'column', alignItems: 'center', justifyContent: 'center', height: 260, textAlign: 'center' }, children: [(0, jsx_runtime_1.jsxs)(index_1.Text, { style: { fontSize: 14, fontWeight: 500, color: 'var(--color11)' }, children: ["Sign in required to manage ", currentTab] }), (0, jsx_runtime_1.jsx)(index_1.Text, { style: { fontSize: 12, color: 'var(--color9)', maxWidth: 320, marginTop: 4, marginBottom: 16 }, children: "Access your organization's custom plugins, connected accounts and private skills." }), onSignIn && ((0, jsx_runtime_1.jsx)("button", { onClick: onSignIn, style: { padding: '8px 16px', fontSize: 12, fontWeight: 600, borderRadius: 8, backgroundColor: 'var(--color12)', color: 'var(--background)', border: 'none', cursor: 'pointer' }, children: "Sign In" }))] })) : loading ? ((0, jsx_runtime_1.jsx)("div", { style: { display: 'grid', gridTemplateColumns: 'repeat(auto-fill, minmax(300px, 1fr))', gap: 12 }, children: Array.from({ length: 6 }).map((_, i) => ((0, jsx_runtime_1.jsx)("div", { style: { height: 110, borderRadius: 12, border: '1px solid var(--borderColor)', backgroundColor: 'var(--color2)' } }, i))) })) : error ? ((0, jsx_runtime_1.jsxs)("div", { style: { display: 'flex', flexDirection: 'column', alignItems: 'center', justifyContent: 'center', height: 260, textAlign: 'center' }, children: [(0, jsx_runtime_1.jsx)(index_1.Text, { style: { fontSize: 12, color: 'var(--red10)', marginBottom: 8 }, children: error }), (0, jsx_runtime_1.jsx)(index_1.Text, { style: { fontSize: 12, color: 'var(--color9)' }, children: "Check console connection or network availability." })] })) : filtered.length === 0 ? ((0, jsx_runtime_1.jsx)("div", { style: { display: 'flex', flexDirection: 'column', alignItems: 'center', justifyContent: 'center', height: 260, textAlign: 'center' }, children: (0, jsx_runtime_1.jsxs)(index_1.Text, { style: { fontSize: 12, color: 'var(--color10)' }, children: ["No ", currentTab, " match \"", query, "\"."] }) })) : ((0, jsx_runtime_1.jsx)("div", { style: { display: 'grid', gridTemplateColumns: 'repeat(auto-fill, minmax(300px, 1fr))', gap: 12 }, children: filtered.map((item) => {
55
+ const isWorking = acting === item.id;
56
+ return ((0, jsx_runtime_1.jsxs)("div", { style: {
57
+ display: 'flex',
58
+ flexDirection: 'column',
59
+ justifyContent: 'space-between',
60
+ padding: 16,
61
+ borderRadius: 12,
62
+ border: '1px solid var(--borderColor)',
63
+ backgroundColor: 'var(--color2)',
64
+ }, children: [(0, jsx_runtime_1.jsxs)("div", { children: [(0, jsx_runtime_1.jsxs)("div", { style: { display: 'flex', alignItems: 'flex-start', justifyContent: 'space-between', gap: 8, marginBottom: 6 }, children: [(0, jsx_runtime_1.jsx)("div", { style: { fontWeight: 600, fontSize: 13, color: 'var(--color12)', overflow: 'hidden', textOverflow: 'ellipsis', whiteSpace: 'nowrap' }, children: item.name }), (0, jsx_runtime_1.jsx)("span", { style: {
65
+ fontSize: 10,
66
+ padding: '2px 6px',
67
+ borderRadius: 4,
68
+ fontFamily: 'monospace',
69
+ fontWeight: 600,
70
+ backgroundColor: item.kind === 'MCP' ? 'var(--blue3)' : 'var(--color4)',
71
+ color: item.kind === 'MCP' ? 'var(--blue11)' : 'var(--color11)',
72
+ border: item.kind === 'MCP' ? '1px solid var(--blue6)' : 'none',
73
+ }, children: item.kind })] }), (0, jsx_runtime_1.jsxs)("div", { style: { fontSize: 11, color: 'var(--color9)', marginBottom: 4 }, children: ["by ", item.publisher] }), (0, jsx_runtime_1.jsx)("p", { style: { fontSize: 12, color: 'var(--color10)', margin: 0, lineHeight: 1.4, display: '-webkit-box', WebkitLineClamp: 2, WebkitBoxOrient: 'vertical', overflow: 'hidden' }, children: item.description })] }), (0, jsx_runtime_1.jsxs)("div", { style: { display: 'flex', alignItems: 'center', justifyContent: 'space-between', marginTop: 12, paddingTop: 10, borderTop: '1px solid var(--borderColor)' }, children: [(0, jsx_runtime_1.jsx)("span", { style: { fontSize: 11, color: 'var(--color9)' }, children: item.installs !== undefined ? `${item.installs.toLocaleString()} installs` : '' }), item.connected ? ((0, jsx_runtime_1.jsxs)("span", { style: { display: 'inline-flex', alignItems: 'center', gap: 4, fontSize: 11, color: 'var(--green11)', fontWeight: 600 }, children: [(0, jsx_runtime_1.jsx)(lucide_icons_2_1.Check, { size: 14 }), (0, jsx_runtime_1.jsx)("span", { children: "Connected" })] })) : item.installed ? ((0, jsx_runtime_1.jsxs)("span", { style: { display: 'inline-flex', alignItems: 'center', gap: 4, fontSize: 11, color: 'var(--color11)', fontWeight: 600 }, children: [(0, jsx_runtime_1.jsx)(lucide_icons_2_1.Check, { size: 14 }), (0, jsx_runtime_1.jsx)("span", { children: "Installed" })] })) : ((0, jsx_runtime_1.jsx)("button", { disabled: isWorking, onClick: async () => {
74
+ setActing(item.id);
75
+ try {
76
+ if (onConnect && currentTab === 'apps')
77
+ await onConnect(item);
78
+ else if (onInstall)
79
+ await onInstall(item);
80
+ }
81
+ finally {
82
+ setActing(null);
83
+ }
84
+ }, style: {
85
+ padding: '4px 10px',
86
+ fontSize: 11,
87
+ fontWeight: 600,
88
+ borderRadius: 6,
89
+ backgroundColor: 'var(--color4)',
90
+ color: 'var(--color12)',
91
+ border: '1px solid var(--borderColor)',
92
+ cursor: 'pointer',
93
+ opacity: isWorking ? 0.5 : 1,
94
+ }, children: isWorking ? 'Adding...' : currentTab === 'apps' ? 'Connect' : 'Install' }))] })] }, item.id));
95
+ }) })) })] }) }));
96
+ };
97
+ exports.DirectoryModal = DirectoryModal;
@@ -0,0 +1,29 @@
1
+ import React from 'react';
2
+ export type DirectoryTab = 'apps' | 'channels' | 'plugins' | 'skills';
3
+ export interface DirectoryItem {
4
+ id: string;
5
+ name: string;
6
+ publisher: string;
7
+ description: string;
8
+ kind: 'MCP' | 'native';
9
+ installs?: number;
10
+ connected?: boolean;
11
+ installed?: boolean;
12
+ iconUrl?: string;
13
+ }
14
+ export interface DirectoryModalProps {
15
+ open: boolean;
16
+ onOpenChange: (open: boolean) => void;
17
+ activeTab?: DirectoryTab;
18
+ onTabChange?: (tab: DirectoryTab) => void;
19
+ items: DirectoryItem[];
20
+ loading?: boolean;
21
+ error?: string | null;
22
+ onInstall?: (item: DirectoryItem) => Promise<void> | void;
23
+ onConnect?: (item: DirectoryItem) => Promise<void> | void;
24
+ consoleUrl?: string;
25
+ authRequired?: boolean;
26
+ onSignIn?: () => void;
27
+ }
28
+ export declare const DirectoryModal: React.FC<DirectoryModalProps>;
29
+ //# sourceMappingURL=DirectoryModal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DirectoryModal.d.ts","sourceRoot":"","sources":["../../src/agents/DirectoryModal.tsx"],"names":[],"mappings":"AAEA,OAAO,KAA4B,MAAM,OAAO,CAAA;AAWhD,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,UAAU,GAAG,SAAS,GAAG,QAAQ,CAAA;AAErE,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,SAAS,EAAE,MAAM,CAAA;IACjB,WAAW,EAAE,MAAM,CAAA;IACnB,IAAI,EAAE,KAAK,GAAG,QAAQ,CAAA;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,OAAO,CAAA;IACb,YAAY,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAA;IACrC,SAAS,CAAC,EAAE,YAAY,CAAA;IACxB,WAAW,CAAC,EAAE,CAAC,GAAG,EAAE,YAAY,KAAK,IAAI,CAAA;IACzC,KAAK,EAAE,aAAa,EAAE,CAAA;IACtB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACrB,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,aAAa,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;IACzD,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,aAAa,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;IACzD,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAA;CACtB;AASD,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,mBAAmB,CAyPxD,CAAA"}
@@ -0,0 +1,94 @@
1
+ 'use client';
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { useMemo, useState } from 'react';
4
+ import { ArrowUpRight, Check, Search, X } from '@hanzogui/lucide-icons-2';
5
+ import { Dialog, DialogContent, DialogTitle, Input, ScrollArea, Text, } from '../index.js';
6
+ const TABS = [
7
+ { id: 'apps', label: 'Apps' },
8
+ { id: 'channels', label: 'Channels' },
9
+ { id: 'plugins', label: 'Plugins' },
10
+ { id: 'skills', label: 'Skills' },
11
+ ];
12
+ export const DirectoryModal = ({ open, onOpenChange, activeTab = 'apps', onTabChange, items, loading = false, error = null, onInstall, onConnect, consoleUrl = 'https://console.hanzo.ai', authRequired = false, onSignIn, }) => {
13
+ const [tab, setTab] = useState(activeTab);
14
+ const [query, setQuery] = useState('');
15
+ const [acting, setActing] = useState(null);
16
+ const currentTab = onTabChange ? activeTab : tab;
17
+ const handleTabChange = (t) => {
18
+ if (onTabChange)
19
+ onTabChange(t);
20
+ else
21
+ setTab(t);
22
+ };
23
+ const filtered = useMemo(() => {
24
+ const q = query.trim().toLowerCase();
25
+ if (!q)
26
+ return items;
27
+ return items.filter((i) => i.name.toLowerCase().includes(q) ||
28
+ i.description.toLowerCase().includes(q) ||
29
+ i.publisher.toLowerCase().includes(q));
30
+ }, [items, query]);
31
+ return (_jsx(Dialog, { open: open, onOpenChange: onOpenChange, children: _jsxs(DialogContent, { style: { maxWidth: 760, padding: 0, overflow: 'hidden', borderRadius: 16, backgroundColor: 'var(--background)', border: '1px solid var(--borderColor)' }, children: [_jsxs("div", { style: { padding: 20, borderBottom: '1px solid var(--borderColor)' }, children: [_jsxs("div", { style: { display: 'flex', alignItems: 'center', justifyContent: 'space-between', marginBottom: 16 }, children: [_jsxs("div", { children: [_jsx(DialogTitle, { style: { fontSize: 18, fontWeight: 600, letterSpacing: '-0.02em', margin: 0 }, children: "Directory" }), _jsx(Text, { style: { fontSize: 12, color: 'var(--color10)', marginTop: 2 }, children: "Extend your workspace with integrations, channels, plugins, and skills." })] }), _jsxs("a", { href: consoleUrl, target: "_blank", rel: "noreferrer", style: {
32
+ display: 'inline-flex',
33
+ alignItems: 'center',
34
+ gap: 6,
35
+ fontSize: 12,
36
+ color: 'var(--color11)',
37
+ padding: '6px 10px',
38
+ borderRadius: 8,
39
+ border: '1px solid var(--borderColor)',
40
+ textDecoration: 'none',
41
+ }, children: [_jsx("span", { children: "Console" }), _jsx(ArrowUpRight, { size: 14 })] })] }), _jsxs("div", { style: { display: 'flex', alignItems: 'center', gap: 12 }, children: [_jsx("div", { style: { display: 'flex', padding: 4, backgroundColor: 'var(--color3)', borderRadius: 10, border: '1px solid var(--borderColor)' }, children: TABS.map((t) => (_jsx("button", { onClick: () => handleTabChange(t.id), style: {
42
+ padding: '4px 12px',
43
+ fontSize: 12,
44
+ fontWeight: 500,
45
+ borderRadius: 6,
46
+ border: 'none',
47
+ cursor: 'pointer',
48
+ backgroundColor: currentTab === t.id ? 'var(--background)' : 'transparent',
49
+ color: currentTab === t.id ? 'var(--color12)' : 'var(--color10)',
50
+ boxShadow: currentTab === t.id ? '0 1px 3px rgba(0,0,0,0.1)' : 'none',
51
+ }, children: t.label }, t.id))) }), _jsxs("div", { style: { position: 'relative', flex: 1 }, children: [_jsx("span", { style: { position: 'absolute', left: 10, top: '50%', transform: 'translateY(-50%)', color: 'var(--color9)', pointerEvents: 'none', display: 'flex' }, children: _jsx(Search, { size: 14 }) }), _jsx(Input, { value: query, onChange: (e) => setQuery(e.target.value), placeholder: `Search ${currentTab}...`, style: { paddingLeft: 32, height: 34, fontSize: 12, borderRadius: 10, backgroundColor: 'var(--color2)', borderColor: 'var(--borderColor)' } }), query && (_jsx("button", { onClick: () => setQuery(''), style: { position: 'absolute', right: 10, top: '50%', transform: 'translateY(-50%)', background: 'none', border: 'none', color: 'var(--color9)', cursor: 'pointer', display: 'flex' }, children: _jsx(X, { size: 12 }) }))] })] })] }), _jsx(ScrollArea, { style: { height: 420, padding: 20 }, children: authRequired ? (_jsxs("div", { style: { display: 'flex', flexDirection: 'column', alignItems: 'center', justifyContent: 'center', height: 260, textAlign: 'center' }, children: [_jsxs(Text, { style: { fontSize: 14, fontWeight: 500, color: 'var(--color11)' }, children: ["Sign in required to manage ", currentTab] }), _jsx(Text, { style: { fontSize: 12, color: 'var(--color9)', maxWidth: 320, marginTop: 4, marginBottom: 16 }, children: "Access your organization's custom plugins, connected accounts and private skills." }), onSignIn && (_jsx("button", { onClick: onSignIn, style: { padding: '8px 16px', fontSize: 12, fontWeight: 600, borderRadius: 8, backgroundColor: 'var(--color12)', color: 'var(--background)', border: 'none', cursor: 'pointer' }, children: "Sign In" }))] })) : loading ? (_jsx("div", { style: { display: 'grid', gridTemplateColumns: 'repeat(auto-fill, minmax(300px, 1fr))', gap: 12 }, children: Array.from({ length: 6 }).map((_, i) => (_jsx("div", { style: { height: 110, borderRadius: 12, border: '1px solid var(--borderColor)', backgroundColor: 'var(--color2)' } }, i))) })) : error ? (_jsxs("div", { style: { display: 'flex', flexDirection: 'column', alignItems: 'center', justifyContent: 'center', height: 260, textAlign: 'center' }, children: [_jsx(Text, { style: { fontSize: 12, color: 'var(--red10)', marginBottom: 8 }, children: error }), _jsx(Text, { style: { fontSize: 12, color: 'var(--color9)' }, children: "Check console connection or network availability." })] })) : filtered.length === 0 ? (_jsx("div", { style: { display: 'flex', flexDirection: 'column', alignItems: 'center', justifyContent: 'center', height: 260, textAlign: 'center' }, children: _jsxs(Text, { style: { fontSize: 12, color: 'var(--color10)' }, children: ["No ", currentTab, " match \"", query, "\"."] }) })) : (_jsx("div", { style: { display: 'grid', gridTemplateColumns: 'repeat(auto-fill, minmax(300px, 1fr))', gap: 12 }, children: filtered.map((item) => {
52
+ const isWorking = acting === item.id;
53
+ return (_jsxs("div", { style: {
54
+ display: 'flex',
55
+ flexDirection: 'column',
56
+ justifyContent: 'space-between',
57
+ padding: 16,
58
+ borderRadius: 12,
59
+ border: '1px solid var(--borderColor)',
60
+ backgroundColor: 'var(--color2)',
61
+ }, children: [_jsxs("div", { children: [_jsxs("div", { style: { display: 'flex', alignItems: 'flex-start', justifyContent: 'space-between', gap: 8, marginBottom: 6 }, children: [_jsx("div", { style: { fontWeight: 600, fontSize: 13, color: 'var(--color12)', overflow: 'hidden', textOverflow: 'ellipsis', whiteSpace: 'nowrap' }, children: item.name }), _jsx("span", { style: {
62
+ fontSize: 10,
63
+ padding: '2px 6px',
64
+ borderRadius: 4,
65
+ fontFamily: 'monospace',
66
+ fontWeight: 600,
67
+ backgroundColor: item.kind === 'MCP' ? 'var(--blue3)' : 'var(--color4)',
68
+ color: item.kind === 'MCP' ? 'var(--blue11)' : 'var(--color11)',
69
+ border: item.kind === 'MCP' ? '1px solid var(--blue6)' : 'none',
70
+ }, children: item.kind })] }), _jsxs("div", { style: { fontSize: 11, color: 'var(--color9)', marginBottom: 4 }, children: ["by ", item.publisher] }), _jsx("p", { style: { fontSize: 12, color: 'var(--color10)', margin: 0, lineHeight: 1.4, display: '-webkit-box', WebkitLineClamp: 2, WebkitBoxOrient: 'vertical', overflow: 'hidden' }, children: item.description })] }), _jsxs("div", { style: { display: 'flex', alignItems: 'center', justifyContent: 'space-between', marginTop: 12, paddingTop: 10, borderTop: '1px solid var(--borderColor)' }, children: [_jsx("span", { style: { fontSize: 11, color: 'var(--color9)' }, children: item.installs !== undefined ? `${item.installs.toLocaleString()} installs` : '' }), item.connected ? (_jsxs("span", { style: { display: 'inline-flex', alignItems: 'center', gap: 4, fontSize: 11, color: 'var(--green11)', fontWeight: 600 }, children: [_jsx(Check, { size: 14 }), _jsx("span", { children: "Connected" })] })) : item.installed ? (_jsxs("span", { style: { display: 'inline-flex', alignItems: 'center', gap: 4, fontSize: 11, color: 'var(--color11)', fontWeight: 600 }, children: [_jsx(Check, { size: 14 }), _jsx("span", { children: "Installed" })] })) : (_jsx("button", { disabled: isWorking, onClick: async () => {
71
+ setActing(item.id);
72
+ try {
73
+ if (onConnect && currentTab === 'apps')
74
+ await onConnect(item);
75
+ else if (onInstall)
76
+ await onInstall(item);
77
+ }
78
+ finally {
79
+ setActing(null);
80
+ }
81
+ }, style: {
82
+ padding: '4px 10px',
83
+ fontSize: 11,
84
+ fontWeight: 600,
85
+ borderRadius: 6,
86
+ backgroundColor: 'var(--color4)',
87
+ color: 'var(--color12)',
88
+ border: '1px solid var(--borderColor)',
89
+ cursor: 'pointer',
90
+ opacity: isWorking ? 0.5 : 1,
91
+ }, children: isWorking ? 'Adding...' : currentTab === 'apps' ? 'Connect' : 'Install' }))] })] }, item.id));
92
+ }) })) })] }) }));
93
+ };
94
+ //# sourceMappingURL=DirectoryModal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DirectoryModal.js","sourceRoot":"","sources":["../../src/agents/DirectoryModal.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,78 @@
1
+ 'use client';"use strict";
2
+ 'use client';
3
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
4
+ if (k2 === undefined) k2 = k;
5
+ var desc = Object.getOwnPropertyDescriptor(m, k);
6
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
7
+ desc = { enumerable: true, get: function() { return m[k]; } };
8
+ }
9
+ Object.defineProperty(o, k2, desc);
10
+ }) : (function(o, m, k, k2) {
11
+ if (k2 === undefined) k2 = k;
12
+ o[k2] = m[k];
13
+ }));
14
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
15
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
16
+ }) : function(o, v) {
17
+ o["default"] = v;
18
+ });
19
+ var __importStar = (this && this.__importStar) || (function () {
20
+ var ownKeys = function(o) {
21
+ ownKeys = Object.getOwnPropertyNames || function (o) {
22
+ var ar = [];
23
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
24
+ return ar;
25
+ };
26
+ return ownKeys(o);
27
+ };
28
+ return function (mod) {
29
+ if (mod && mod.__esModule) return mod;
30
+ var result = {};
31
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
32
+ __setModuleDefault(result, mod);
33
+ return result;
34
+ };
35
+ })();
36
+ Object.defineProperty(exports, "__esModule", { value: true });
37
+ exports.DriveViewer = void 0;
38
+ const jsx_runtime_1 = require("react/jsx-runtime");
39
+ const react_1 = __importStar(require("react"));
40
+ const lucide_icons_2_1 = require("@hanzogui/lucide-icons-2");
41
+ const index_1 = require("../index.cjs");
42
+ const weigh = (bytes) => {
43
+ if (!bytes)
44
+ return '';
45
+ const units = ['B', 'KB', 'MB', 'GB', 'TB'];
46
+ const step = Math.min(Math.floor(Math.log(bytes) / Math.log(1024)), units.length - 1);
47
+ const size = bytes / 1024 ** step;
48
+ return `${size < 10 && step > 0 ? size.toFixed(1) : Math.round(size)} ${units[step]}`;
49
+ };
50
+ const DriveViewer = ({ buckets, currentBucket, prefix, entries, loading = false, uploading = false, error = null, onSelectBucket, onNavigatePrefix, onUploadFile, onCreateFolder, onDownloadFile, onDeleteEntry, onRefresh, }) => {
51
+ const fileInputRef = (0, react_1.useRef)(null);
52
+ const [newFolderName, setNewFolderName] = (0, react_1.useState)('');
53
+ const [isCreatingFolder, setIsCreatingFolder] = (0, react_1.useState)(false);
54
+ const segments = prefix.split('/').filter(Boolean);
55
+ const handleCreateFolder = async (e) => {
56
+ e.preventDefault();
57
+ if (!newFolderName.trim() || !onCreateFolder)
58
+ return;
59
+ await onCreateFolder(newFolderName.trim());
60
+ setNewFolderName('');
61
+ setIsCreatingFolder(false);
62
+ };
63
+ return ((0, jsx_runtime_1.jsxs)("div", { style: { display: 'flex', flexDirection: 'column', height: '100%', backgroundColor: 'var(--background)', borderRadius: 12, border: '1px solid var(--borderColor)', overflow: 'hidden' }, children: [(0, jsx_runtime_1.jsxs)("div", { style: { display: 'flex', alignItems: 'center', justifyContent: 'space-between', padding: '10px 16px', borderBottom: '1px solid var(--borderColor)', backgroundColor: 'var(--color2)' }, children: [(0, jsx_runtime_1.jsxs)("div", { style: { display: 'flex', alignItems: 'center', gap: 8, fontSize: 12 }, children: [(0, jsx_runtime_1.jsxs)("div", { style: { display: 'flex', alignItems: 'center', gap: 6, fontWeight: 600, color: 'var(--color12)' }, children: [(0, jsx_runtime_1.jsx)(lucide_icons_2_1.HardDrive, { size: 16 }), buckets.length > 1 ? ((0, jsx_runtime_1.jsx)("select", { value: currentBucket ?? '', onChange: (e) => onSelectBucket(e.target.value), style: { backgroundColor: 'transparent', border: '1px solid var(--borderColor)', borderRadius: 6, padding: '2px 6px', fontSize: 12, color: 'var(--color12)', outline: 'none' }, children: buckets.map((b) => ((0, jsx_runtime_1.jsx)("option", { value: b.name, style: { backgroundColor: 'var(--background)' }, children: b.name }, b.name))) })) : ((0, jsx_runtime_1.jsx)("span", { children: currentBucket ?? 'Drive' }))] }), currentBucket && ((0, jsx_runtime_1.jsxs)("div", { style: { display: 'flex', alignItems: 'center', gap: 4, color: 'var(--color10)' }, children: [(0, jsx_runtime_1.jsx)(lucide_icons_2_1.ChevronRight, { size: 14 }), (0, jsx_runtime_1.jsx)("button", { onClick: () => onNavigatePrefix(''), style: { background: 'none', border: 'none', color: 'inherit', cursor: 'pointer', padding: 0 }, children: "root" }), segments.map((seg, idx) => {
64
+ const stepPrefix = segments.slice(0, idx + 1).join('/') + '/';
65
+ const isLast = idx === segments.length - 1;
66
+ return ((0, jsx_runtime_1.jsxs)(react_1.default.Fragment, { children: [(0, jsx_runtime_1.jsx)(lucide_icons_2_1.ChevronRight, { size: 12 }), (0, jsx_runtime_1.jsx)("button", { disabled: isLast, onClick: () => onNavigatePrefix(stepPrefix), style: { background: 'none', border: 'none', color: isLast ? 'var(--color12)' : 'inherit', fontWeight: isLast ? 600 : 400, cursor: isLast ? 'default' : 'pointer', padding: 0 }, children: seg })] }, stepPrefix));
67
+ })] }))] }), (0, jsx_runtime_1.jsxs)("div", { style: { display: 'flex', alignItems: 'center', gap: 8 }, children: [onRefresh && ((0, jsx_runtime_1.jsx)("button", { onClick: onRefresh, style: { padding: 6, borderRadius: 6, border: '1px solid var(--borderColor)', background: 'none', color: 'var(--color10)', cursor: 'pointer', display: 'flex' }, title: "Refresh", children: (0, jsx_runtime_1.jsx)(lucide_icons_2_1.RefreshCw, { size: 14 }) })), currentBucket && onUploadFile && ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)("input", { ref: fileInputRef, type: "file", multiple: true, style: { display: 'none' }, onChange: (e) => {
68
+ if (e.target.files && e.target.files.length > 0) {
69
+ onUploadFile(e.target.files);
70
+ }
71
+ } }), (0, jsx_runtime_1.jsxs)("button", { disabled: uploading, onClick: () => fileInputRef.current?.click(), style: { display: 'inline-flex', alignItems: 'center', gap: 6, padding: '6px 10px', borderRadius: 8, backgroundColor: 'var(--color12)', color: 'var(--background)', fontSize: 12, fontWeight: 600, border: 'none', cursor: 'pointer', opacity: uploading ? 0.5 : 1 }, children: [(0, jsx_runtime_1.jsx)(lucide_icons_2_1.Upload, { size: 14 }), (0, jsx_runtime_1.jsx)("span", { children: uploading ? 'Uploading...' : 'Upload' })] })] }))] })] }), (0, jsx_runtime_1.jsx)("div", { style: { flex: 1, overflowY: 'auto' }, children: error ? ((0, jsx_runtime_1.jsxs)("div", { style: { display: 'flex', flexDirection: 'column', alignItems: 'center', justifyContent: 'center', height: 200, textAlign: 'center', padding: 16 }, children: [(0, jsx_runtime_1.jsx)(index_1.Text, { style: { fontSize: 12, color: 'var(--red10)', marginBottom: 4 }, children: error }), (0, jsx_runtime_1.jsx)(index_1.Text, { style: { fontSize: 12, color: 'var(--color9)' }, children: "Ensure you have sufficient storage permissions." })] })) : loading && entries.length === 0 ? ((0, jsx_runtime_1.jsx)("div", { style: { padding: 16, display: 'flex', flexDirection: 'column', gap: 8 }, children: Array.from({ length: 5 }).map((_, i) => ((0, jsx_runtime_1.jsx)("div", { style: { height: 38, borderRadius: 8, backgroundColor: 'var(--color2)', border: '1px solid var(--borderColor)' } }, i))) })) : entries.length === 0 ? ((0, jsx_runtime_1.jsxs)("div", { style: { display: 'flex', flexDirection: 'column', alignItems: 'center', justifyContent: 'center', height: 200, textAlign: 'center' }, children: [(0, jsx_runtime_1.jsx)(lucide_icons_2_1.Folder, { size: 32 }), (0, jsx_runtime_1.jsx)(index_1.Text, { style: { fontSize: 12, color: 'var(--color10)', marginTop: 8 }, children: "This folder is empty." })] })) : ((0, jsx_runtime_1.jsxs)("table", { style: { width: '100%', textAlign: 'left', fontSize: 12, borderCollapse: 'collapse' }, children: [(0, jsx_runtime_1.jsx)("thead", { children: (0, jsx_runtime_1.jsxs)("tr", { style: { borderBottom: '1px solid var(--borderColor)', color: 'var(--color9)' }, children: [(0, jsx_runtime_1.jsx)("th", { style: { padding: '10px 16px', fontWeight: 500 }, children: "Name" }), (0, jsx_runtime_1.jsx)("th", { style: { padding: '10px 16px', fontWeight: 500, width: 110, textAlign: 'right' }, children: "Size" }), (0, jsx_runtime_1.jsx)("th", { style: { padding: '10px 16px', fontWeight: 500, width: 140, textAlign: 'right' }, children: "Modified" }), (0, jsx_runtime_1.jsx)("th", { style: { padding: '10px 16px', fontWeight: 500, width: 80, textAlign: 'right' }, children: "Actions" })] }) }), (0, jsx_runtime_1.jsx)("tbody", { children: entries.map((entry) => {
72
+ const displayName = entry.key.replace(prefix, '').replace(/\/$/, '');
73
+ return ((0, jsx_runtime_1.jsxs)("tr", { style: { borderBottom: '1px solid var(--borderColor)', transition: 'background-color 0.15s ease' }, children: [(0, jsx_runtime_1.jsx)("td", { style: { padding: '10px 16px' }, children: entry.isDir ? ((0, jsx_runtime_1.jsxs)("button", { onClick: () => onNavigatePrefix(entry.key), style: { display: 'inline-flex', alignItems: 'center', gap: 8, color: 'var(--color12)', fontWeight: 600, background: 'none', border: 'none', cursor: 'pointer', padding: 0 }, children: [(0, jsx_runtime_1.jsx)(lucide_icons_2_1.Folder, { size: 16 }), (0, jsx_runtime_1.jsx)("span", { children: displayName })] })) : ((0, jsx_runtime_1.jsxs)("div", { style: { display: 'flex', alignItems: 'center', gap: 8, color: 'var(--color11)' }, children: [(0, jsx_runtime_1.jsx)(lucide_icons_2_1.File, { size: 16 }), (0, jsx_runtime_1.jsx)("span", { style: { overflow: 'hidden', textOverflow: 'ellipsis', whiteSpace: 'nowrap', maxWidth: 300 }, children: displayName })] })) }), (0, jsx_runtime_1.jsx)("td", { style: { padding: '10px 16px', textAlign: 'right', color: 'var(--color9)', fontFamily: 'monospace', fontSize: 11 }, children: entry.isDir ? '—' : weigh(entry.size) }), (0, jsx_runtime_1.jsx)("td", { style: { padding: '10px 16px', textAlign: 'right', color: 'var(--color9)', fontSize: 11 }, children: entry.lastModified
74
+ ? new Date(entry.lastModified).toLocaleDateString()
75
+ : '—' }), (0, jsx_runtime_1.jsx)("td", { style: { padding: '10px 16px', textAlign: 'right' }, children: (0, jsx_runtime_1.jsxs)("div", { style: { display: 'flex', alignItems: 'center', justifyContent: 'flex-end', gap: 4 }, children: [!entry.isDir && onDownloadFile && ((0, jsx_runtime_1.jsx)("button", { onClick: () => onDownloadFile(entry), style: { padding: 4, borderRadius: 4, background: 'none', border: 'none', color: 'var(--color10)', cursor: 'pointer' }, title: "Download", children: (0, jsx_runtime_1.jsx)(lucide_icons_2_1.Download, { size: 14 }) })), onDeleteEntry && ((0, jsx_runtime_1.jsx)("button", { onClick: () => onDeleteEntry(entry), style: { padding: 4, borderRadius: 4, background: 'none', border: 'none', color: 'var(--color10)', cursor: 'pointer' }, title: "Delete", children: (0, jsx_runtime_1.jsx)(lucide_icons_2_1.Trash2, { size: 14 }) }))] }) })] }, entry.key));
76
+ }) })] })) })] }));
77
+ };
78
+ exports.DriveViewer = DriveViewer;
@@ -0,0 +1,30 @@
1
+ import React from 'react';
2
+ export interface StorageBucket {
3
+ name: string;
4
+ createdAt?: number;
5
+ }
6
+ export interface StorageEntry {
7
+ key: string;
8
+ isDir: boolean;
9
+ size: number;
10
+ lastModified: number;
11
+ contentType?: string;
12
+ }
13
+ export interface DriveViewerProps {
14
+ buckets: StorageBucket[];
15
+ currentBucket: string | null;
16
+ prefix: string;
17
+ entries: StorageEntry[];
18
+ loading?: boolean;
19
+ uploading?: boolean;
20
+ error?: string | null;
21
+ onSelectBucket: (bucket: string) => void;
22
+ onNavigatePrefix: (prefix: string) => void;
23
+ onUploadFile?: (files: FileList) => Promise<void> | void;
24
+ onCreateFolder?: (name: string) => Promise<void> | void;
25
+ onDownloadFile?: (entry: StorageEntry) => Promise<void> | void;
26
+ onDeleteEntry?: (entry: StorageEntry) => Promise<void> | void;
27
+ onRefresh?: () => void;
28
+ }
29
+ export declare const DriveViewer: React.FC<DriveViewerProps>;
30
+ //# sourceMappingURL=DriveViewer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DriveViewer.d.ts","sourceRoot":"","sources":["../../src/agents/DriveViewer.tsx"],"names":[],"mappings":"AAEA,OAAO,KAA2B,MAAM,OAAO,CAAA;AAc/C,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAA;IACZ,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,OAAO,CAAA;IACd,IAAI,EAAE,MAAM,CAAA;IACZ,YAAY,EAAE,MAAM,CAAA;IACpB,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,aAAa,EAAE,CAAA;IACxB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAA;IAC5B,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,YAAY,EAAE,CAAA;IACvB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACrB,cAAc,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAA;IACxC,gBAAgB,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAA;IAC1C,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;IACxD,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;IACvD,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;IAC9D,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;IAC7D,SAAS,CAAC,EAAE,MAAM,IAAI,CAAA;CACvB;AAUD,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAwNlD,CAAA"}
@@ -0,0 +1,42 @@
1
+ 'use client';
2
+ import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import React, { useRef, useState } from 'react';
4
+ import { ChevronRight, Folder, File as FileIcon, Upload, Download, Trash2, HardDrive, RefreshCw, } from '@hanzogui/lucide-icons-2';
5
+ import { Text } from '../index.js';
6
+ const weigh = (bytes) => {
7
+ if (!bytes)
8
+ return '';
9
+ const units = ['B', 'KB', 'MB', 'GB', 'TB'];
10
+ const step = Math.min(Math.floor(Math.log(bytes) / Math.log(1024)), units.length - 1);
11
+ const size = bytes / 1024 ** step;
12
+ return `${size < 10 && step > 0 ? size.toFixed(1) : Math.round(size)} ${units[step]}`;
13
+ };
14
+ export const DriveViewer = ({ buckets, currentBucket, prefix, entries, loading = false, uploading = false, error = null, onSelectBucket, onNavigatePrefix, onUploadFile, onCreateFolder, onDownloadFile, onDeleteEntry, onRefresh, }) => {
15
+ const fileInputRef = useRef(null);
16
+ const [newFolderName, setNewFolderName] = useState('');
17
+ const [isCreatingFolder, setIsCreatingFolder] = useState(false);
18
+ const segments = prefix.split('/').filter(Boolean);
19
+ const handleCreateFolder = async (e) => {
20
+ e.preventDefault();
21
+ if (!newFolderName.trim() || !onCreateFolder)
22
+ return;
23
+ await onCreateFolder(newFolderName.trim());
24
+ setNewFolderName('');
25
+ setIsCreatingFolder(false);
26
+ };
27
+ return (_jsxs("div", { style: { display: 'flex', flexDirection: 'column', height: '100%', backgroundColor: 'var(--background)', borderRadius: 12, border: '1px solid var(--borderColor)', overflow: 'hidden' }, children: [_jsxs("div", { style: { display: 'flex', alignItems: 'center', justifyContent: 'space-between', padding: '10px 16px', borderBottom: '1px solid var(--borderColor)', backgroundColor: 'var(--color2)' }, children: [_jsxs("div", { style: { display: 'flex', alignItems: 'center', gap: 8, fontSize: 12 }, children: [_jsxs("div", { style: { display: 'flex', alignItems: 'center', gap: 6, fontWeight: 600, color: 'var(--color12)' }, children: [_jsx(HardDrive, { size: 16 }), buckets.length > 1 ? (_jsx("select", { value: currentBucket ?? '', onChange: (e) => onSelectBucket(e.target.value), style: { backgroundColor: 'transparent', border: '1px solid var(--borderColor)', borderRadius: 6, padding: '2px 6px', fontSize: 12, color: 'var(--color12)', outline: 'none' }, children: buckets.map((b) => (_jsx("option", { value: b.name, style: { backgroundColor: 'var(--background)' }, children: b.name }, b.name))) })) : (_jsx("span", { children: currentBucket ?? 'Drive' }))] }), currentBucket && (_jsxs("div", { style: { display: 'flex', alignItems: 'center', gap: 4, color: 'var(--color10)' }, children: [_jsx(ChevronRight, { size: 14 }), _jsx("button", { onClick: () => onNavigatePrefix(''), style: { background: 'none', border: 'none', color: 'inherit', cursor: 'pointer', padding: 0 }, children: "root" }), segments.map((seg, idx) => {
28
+ const stepPrefix = segments.slice(0, idx + 1).join('/') + '/';
29
+ const isLast = idx === segments.length - 1;
30
+ return (_jsxs(React.Fragment, { children: [_jsx(ChevronRight, { size: 12 }), _jsx("button", { disabled: isLast, onClick: () => onNavigatePrefix(stepPrefix), style: { background: 'none', border: 'none', color: isLast ? 'var(--color12)' : 'inherit', fontWeight: isLast ? 600 : 400, cursor: isLast ? 'default' : 'pointer', padding: 0 }, children: seg })] }, stepPrefix));
31
+ })] }))] }), _jsxs("div", { style: { display: 'flex', alignItems: 'center', gap: 8 }, children: [onRefresh && (_jsx("button", { onClick: onRefresh, style: { padding: 6, borderRadius: 6, border: '1px solid var(--borderColor)', background: 'none', color: 'var(--color10)', cursor: 'pointer', display: 'flex' }, title: "Refresh", children: _jsx(RefreshCw, { size: 14 }) })), currentBucket && onUploadFile && (_jsxs(_Fragment, { children: [_jsx("input", { ref: fileInputRef, type: "file", multiple: true, style: { display: 'none' }, onChange: (e) => {
32
+ if (e.target.files && e.target.files.length > 0) {
33
+ onUploadFile(e.target.files);
34
+ }
35
+ } }), _jsxs("button", { disabled: uploading, onClick: () => fileInputRef.current?.click(), style: { display: 'inline-flex', alignItems: 'center', gap: 6, padding: '6px 10px', borderRadius: 8, backgroundColor: 'var(--color12)', color: 'var(--background)', fontSize: 12, fontWeight: 600, border: 'none', cursor: 'pointer', opacity: uploading ? 0.5 : 1 }, children: [_jsx(Upload, { size: 14 }), _jsx("span", { children: uploading ? 'Uploading...' : 'Upload' })] })] }))] })] }), _jsx("div", { style: { flex: 1, overflowY: 'auto' }, children: error ? (_jsxs("div", { style: { display: 'flex', flexDirection: 'column', alignItems: 'center', justifyContent: 'center', height: 200, textAlign: 'center', padding: 16 }, children: [_jsx(Text, { style: { fontSize: 12, color: 'var(--red10)', marginBottom: 4 }, children: error }), _jsx(Text, { style: { fontSize: 12, color: 'var(--color9)' }, children: "Ensure you have sufficient storage permissions." })] })) : loading && entries.length === 0 ? (_jsx("div", { style: { padding: 16, display: 'flex', flexDirection: 'column', gap: 8 }, children: Array.from({ length: 5 }).map((_, i) => (_jsx("div", { style: { height: 38, borderRadius: 8, backgroundColor: 'var(--color2)', border: '1px solid var(--borderColor)' } }, i))) })) : entries.length === 0 ? (_jsxs("div", { style: { display: 'flex', flexDirection: 'column', alignItems: 'center', justifyContent: 'center', height: 200, textAlign: 'center' }, children: [_jsx(Folder, { size: 32 }), _jsx(Text, { style: { fontSize: 12, color: 'var(--color10)', marginTop: 8 }, children: "This folder is empty." })] })) : (_jsxs("table", { style: { width: '100%', textAlign: 'left', fontSize: 12, borderCollapse: 'collapse' }, children: [_jsx("thead", { children: _jsxs("tr", { style: { borderBottom: '1px solid var(--borderColor)', color: 'var(--color9)' }, children: [_jsx("th", { style: { padding: '10px 16px', fontWeight: 500 }, children: "Name" }), _jsx("th", { style: { padding: '10px 16px', fontWeight: 500, width: 110, textAlign: 'right' }, children: "Size" }), _jsx("th", { style: { padding: '10px 16px', fontWeight: 500, width: 140, textAlign: 'right' }, children: "Modified" }), _jsx("th", { style: { padding: '10px 16px', fontWeight: 500, width: 80, textAlign: 'right' }, children: "Actions" })] }) }), _jsx("tbody", { children: entries.map((entry) => {
36
+ const displayName = entry.key.replace(prefix, '').replace(/\/$/, '');
37
+ return (_jsxs("tr", { style: { borderBottom: '1px solid var(--borderColor)', transition: 'background-color 0.15s ease' }, children: [_jsx("td", { style: { padding: '10px 16px' }, children: entry.isDir ? (_jsxs("button", { onClick: () => onNavigatePrefix(entry.key), style: { display: 'inline-flex', alignItems: 'center', gap: 8, color: 'var(--color12)', fontWeight: 600, background: 'none', border: 'none', cursor: 'pointer', padding: 0 }, children: [_jsx(Folder, { size: 16 }), _jsx("span", { children: displayName })] })) : (_jsxs("div", { style: { display: 'flex', alignItems: 'center', gap: 8, color: 'var(--color11)' }, children: [_jsx(FileIcon, { size: 16 }), _jsx("span", { style: { overflow: 'hidden', textOverflow: 'ellipsis', whiteSpace: 'nowrap', maxWidth: 300 }, children: displayName })] })) }), _jsx("td", { style: { padding: '10px 16px', textAlign: 'right', color: 'var(--color9)', fontFamily: 'monospace', fontSize: 11 }, children: entry.isDir ? '—' : weigh(entry.size) }), _jsx("td", { style: { padding: '10px 16px', textAlign: 'right', color: 'var(--color9)', fontSize: 11 }, children: entry.lastModified
38
+ ? new Date(entry.lastModified).toLocaleDateString()
39
+ : '—' }), _jsx("td", { style: { padding: '10px 16px', textAlign: 'right' }, children: _jsxs("div", { style: { display: 'flex', alignItems: 'center', justifyContent: 'flex-end', gap: 4 }, children: [!entry.isDir && onDownloadFile && (_jsx("button", { onClick: () => onDownloadFile(entry), style: { padding: 4, borderRadius: 4, background: 'none', border: 'none', color: 'var(--color10)', cursor: 'pointer' }, title: "Download", children: _jsx(Download, { size: 14 }) })), onDeleteEntry && (_jsx("button", { onClick: () => onDeleteEntry(entry), style: { padding: 4, borderRadius: 4, background: 'none', border: 'none', color: 'var(--color10)', cursor: 'pointer' }, title: "Delete", children: _jsx(Trash2, { size: 14 }) }))] }) })] }, entry.key));
40
+ }) })] })) })] }));
41
+ };
42
+ //# sourceMappingURL=DriveViewer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DriveViewer.js","sourceRoot":"","sources":["../../src/agents/DriveViewer.tsx"],"names":[],"mappings":"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"}