@ameshkin/ticket-mate 0.1.20 → 0.1.21
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/package.json +1 -1
- package/public/assets/images/logo.jpg +0 -0
- package/public/components/keyboard/CommandPalette.d.ts +0 -2
- package/public/components/keyboard/CommandPalette.d.ts.map +0 -1
- package/public/components/keyboard/CommandPalette.js +0 -123
- package/public/components/keyboard/CommandPalette.js.map +0 -1
- package/public/components/keyboard/GlobalShortcuts.d.ts +0 -2
- package/public/components/keyboard/GlobalShortcuts.d.ts.map +0 -1
- package/public/components/keyboard/GlobalShortcuts.js +0 -32
- package/public/components/keyboard/GlobalShortcuts.js.map +0 -1
package/package.json
CHANGED
|
Binary file
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CommandPalette.d.ts","sourceRoot":"","sources":["../../../src/components/keyboard/CommandPalette.tsx"],"names":[],"mappings":"AAyBA,MAAM,CAAC,OAAO,UAAU,cAAc,mDAkLrC"}
|
|
@@ -1,123 +0,0 @@
|
|
|
1
|
-
"use client";
|
|
2
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
-
import { useState, useMemo } from "react";
|
|
4
|
-
import { Dialog, DialogContent, TextField, List, ListItem, ListItemButton, ListItemText, ListItemIcon, Typography, Box, InputAdornment, Chip, useTheme, alpha, } from "@mui/material";
|
|
5
|
-
import SearchIcon from "@mui/icons-material/Search";
|
|
6
|
-
import KeyboardCommandKeyIcon from "@mui/icons-material/KeyboardCommandKey";
|
|
7
|
-
import { useShortcutContext } from "@/lib/keyboard/ShortcutContext";
|
|
8
|
-
import { useShortcut } from "@/lib/keyboard/useShortcut";
|
|
9
|
-
import { useRouter } from "next/navigation";
|
|
10
|
-
export default function CommandPalette() {
|
|
11
|
-
const [open, setOpen] = useState(false);
|
|
12
|
-
const [query, setQuery] = useState("");
|
|
13
|
-
const [selectedIndex, setSelectedIndex] = useState(0);
|
|
14
|
-
const { shortcuts } = useShortcutContext();
|
|
15
|
-
const router = useRouter();
|
|
16
|
-
const theme = useTheme();
|
|
17
|
-
// Toggle Palette
|
|
18
|
-
useShortcut(["meta+k", "ctrl+k"], () => setOpen((prev) => !prev), {
|
|
19
|
-
description: "Toggle Command Palette",
|
|
20
|
-
scope: "global",
|
|
21
|
-
category: "Global",
|
|
22
|
-
});
|
|
23
|
-
// Reset state when closed - moved to handleClose to avoid useEffect lint error
|
|
24
|
-
const handleClose = () => {
|
|
25
|
-
setOpen(false);
|
|
26
|
-
// Small timeout to allow transition to start before clearing content
|
|
27
|
-
setTimeout(() => {
|
|
28
|
-
setQuery("");
|
|
29
|
-
setSelectedIndex(0);
|
|
30
|
-
}, 150);
|
|
31
|
-
};
|
|
32
|
-
// Filter shortcuts
|
|
33
|
-
const filteredShortcuts = useMemo(() => {
|
|
34
|
-
if (!query)
|
|
35
|
-
return shortcuts;
|
|
36
|
-
const lowerQuery = query.toLowerCase();
|
|
37
|
-
return shortcuts.filter((s) => s.description.toLowerCase().includes(lowerQuery) ||
|
|
38
|
-
s.category?.toLowerCase().includes(lowerQuery) ||
|
|
39
|
-
s.id.toLowerCase().includes(lowerQuery));
|
|
40
|
-
}, [shortcuts, query]);
|
|
41
|
-
// Handle Navigation
|
|
42
|
-
const handleKeyDown = (e) => {
|
|
43
|
-
if (e.key === "ArrowDown") {
|
|
44
|
-
e.preventDefault();
|
|
45
|
-
setSelectedIndex((prev) => (prev + 1) % filteredShortcuts.length);
|
|
46
|
-
}
|
|
47
|
-
else if (e.key === "ArrowUp") {
|
|
48
|
-
e.preventDefault();
|
|
49
|
-
setSelectedIndex((prev) => (prev - 1 + filteredShortcuts.length) % filteredShortcuts.length);
|
|
50
|
-
}
|
|
51
|
-
else if (e.key === "Enter") {
|
|
52
|
-
e.preventDefault();
|
|
53
|
-
const selected = filteredShortcuts[selectedIndex];
|
|
54
|
-
if (selected) {
|
|
55
|
-
selected.action();
|
|
56
|
-
handleClose();
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
};
|
|
60
|
-
if (!open)
|
|
61
|
-
return null;
|
|
62
|
-
return (_jsxs(Dialog, { open: open, onClose: handleClose, maxWidth: "sm", fullWidth: true, PaperProps: {
|
|
63
|
-
sx: {
|
|
64
|
-
borderRadius: 3,
|
|
65
|
-
bgcolor: alpha(theme.palette.background.paper, 0.95),
|
|
66
|
-
backdropFilter: "blur(10px)",
|
|
67
|
-
backgroundImage: "none",
|
|
68
|
-
boxShadow: theme.shadows[24],
|
|
69
|
-
overflow: "hidden",
|
|
70
|
-
},
|
|
71
|
-
}, transitionDuration: 100, children: [_jsx(Box, { sx: { p: 2, borderBottom: `1px solid ${theme.palette.divider}` }, children: _jsx(TextField, { autoFocus: true, fullWidth: true, placeholder: "Type a command or search...", value: query, onChange: (e) => {
|
|
72
|
-
setQuery(e.target.value);
|
|
73
|
-
setSelectedIndex(0);
|
|
74
|
-
}, onKeyDown: handleKeyDown, InputProps: {
|
|
75
|
-
startAdornment: (_jsx(InputAdornment, { position: "start", children: _jsx(SearchIcon, { color: "action" }) })),
|
|
76
|
-
disableUnderline: true,
|
|
77
|
-
sx: { fontSize: "1.2rem" },
|
|
78
|
-
}, variant: "standard" }) }), _jsx(DialogContent, { sx: { p: 0, maxHeight: 400, minHeight: 100 }, children: filteredShortcuts.length === 0 ? (_jsx(Box, { sx: { p: 4, textAlign: "center", color: "text.secondary" }, children: _jsx(Typography, { children: "No commands found." }) })) : (_jsx(List, { sx: { py: 0 }, children: filteredShortcuts.map((shortcut, index) => (_jsx(ListItem, { disablePadding: true, children: _jsxs(ListItemButton, { selected: index === selectedIndex, onClick: () => {
|
|
79
|
-
shortcut.action();
|
|
80
|
-
handleClose();
|
|
81
|
-
}, sx: {
|
|
82
|
-
py: 1.5,
|
|
83
|
-
px: 3,
|
|
84
|
-
borderLeft: `4px solid transparent`,
|
|
85
|
-
"&.Mui-selected": {
|
|
86
|
-
borderLeftColor: theme.palette.primary.main,
|
|
87
|
-
bgcolor: alpha(theme.palette.primary.main, 0.08),
|
|
88
|
-
"&:hover": {
|
|
89
|
-
bgcolor: alpha(theme.palette.primary.main, 0.12),
|
|
90
|
-
},
|
|
91
|
-
},
|
|
92
|
-
}, children: [_jsx(ListItemIcon, { sx: { minWidth: 40 }, children: _jsx(KeyboardCommandKeyIcon, { fontSize: "small", color: index === selectedIndex ? "primary" : "action" }) }), _jsx(ListItemText, { primary: shortcut.description, secondary: shortcut.category, primaryTypographyProps: {
|
|
93
|
-
fontWeight: index === selectedIndex ? 600 : 400,
|
|
94
|
-
color: index === selectedIndex
|
|
95
|
-
? "text.primary"
|
|
96
|
-
: "text.secondary",
|
|
97
|
-
} }), _jsx(Box, { display: "flex", gap: 0.5, children: Array.isArray(shortcut.keys) ? (shortcut.keys.map((k) => _jsx(KeyChip, { k: k }, k))) : (_jsx(KeyChip, { k: shortcut.keys })) })] }) }, shortcut.id))) })) }), _jsxs(Box, { sx: {
|
|
98
|
-
p: 1,
|
|
99
|
-
px: 2,
|
|
100
|
-
bgcolor: alpha(theme.palette.action.hover, 0.5),
|
|
101
|
-
display: "flex",
|
|
102
|
-
justifyContent: "space-between",
|
|
103
|
-
borderTop: `1px solid ${theme.palette.divider}`,
|
|
104
|
-
}, children: [_jsxs(Typography, { variant: "caption", color: "text.secondary", children: [_jsx("strong", { children: "\u2191\u2193" }), " to navigate"] }), _jsxs(Typography, { variant: "caption", color: "text.secondary", children: [_jsx("strong", { children: "\u21B5" }), " to select"] })] })] }));
|
|
105
|
-
}
|
|
106
|
-
function KeyChip({ k }) {
|
|
107
|
-
// Format key: "meta+k" -> "⌘ K"
|
|
108
|
-
const label = k
|
|
109
|
-
.replace("meta", "⌘")
|
|
110
|
-
.replace("ctrl", "⌃")
|
|
111
|
-
.replace("shift", "⇧")
|
|
112
|
-
.replace("alt", "⌥")
|
|
113
|
-
.toUpperCase();
|
|
114
|
-
return (_jsx(Chip, { label: label, size: "small", variant: "outlined", sx: {
|
|
115
|
-
height: 20,
|
|
116
|
-
fontSize: "0.65rem",
|
|
117
|
-
borderRadius: 1,
|
|
118
|
-
minWidth: 24,
|
|
119
|
-
bgcolor: "background.paper",
|
|
120
|
-
borderColor: "divider",
|
|
121
|
-
} }));
|
|
122
|
-
}
|
|
123
|
-
//# sourceMappingURL=CommandPalette.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CommandPalette.js","sourceRoot":"","sources":["../../../src/components/keyboard/CommandPalette.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"GlobalShortcuts.d.ts","sourceRoot":"","sources":["../../../src/components/keyboard/GlobalShortcuts.tsx"],"names":[],"mappings":"AAKA,MAAM,CAAC,OAAO,UAAU,eAAe,SAgCtC"}
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
"use client";
|
|
2
|
-
import { useRouter } from "next/navigation";
|
|
3
|
-
import { useShortcut } from "@/lib/keyboard/useShortcut";
|
|
4
|
-
export default function GlobalShortcuts() {
|
|
5
|
-
const router = useRouter();
|
|
6
|
-
// Navigation: Dashboard
|
|
7
|
-
useShortcut("g+d", () => router.push("/admin/dashboard"), {
|
|
8
|
-
description: "Go to Dashboard",
|
|
9
|
-
category: "Navigation",
|
|
10
|
-
scope: "global",
|
|
11
|
-
});
|
|
12
|
-
// Navigation: Tickets
|
|
13
|
-
useShortcut("g+t", () => router.push("/admin/tickets"), {
|
|
14
|
-
description: "Go to Tickets",
|
|
15
|
-
category: "Navigation",
|
|
16
|
-
scope: "global",
|
|
17
|
-
});
|
|
18
|
-
// Navigation: Settings
|
|
19
|
-
useShortcut("g+s", () => router.push("/admin/settings"), {
|
|
20
|
-
description: "Go to Settings",
|
|
21
|
-
category: "Navigation",
|
|
22
|
-
scope: "global",
|
|
23
|
-
});
|
|
24
|
-
// Action: Create Ticket
|
|
25
|
-
useShortcut("c", () => router.push("/admin/tickets/create"), {
|
|
26
|
-
description: "Create New Ticket",
|
|
27
|
-
category: "Actions",
|
|
28
|
-
scope: "global",
|
|
29
|
-
});
|
|
30
|
-
return null; // Headless component
|
|
31
|
-
}
|
|
32
|
-
//# sourceMappingURL=GlobalShortcuts.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"GlobalShortcuts.js","sourceRoot":"","sources":["../../../src/components/keyboard/GlobalShortcuts.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAEzD,MAAM,CAAC,OAAO,UAAU,eAAe;IACrC,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAE3B,wBAAwB;IACxB,WAAW,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,EAAE;QACxD,WAAW,EAAE,iBAAiB;QAC9B,QAAQ,EAAE,YAAY;QACtB,KAAK,EAAE,QAAQ;KAChB,CAAC,CAAC;IAEH,sBAAsB;IACtB,WAAW,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,EAAE;QACtD,WAAW,EAAE,eAAe;QAC5B,QAAQ,EAAE,YAAY;QACtB,KAAK,EAAE,QAAQ;KAChB,CAAC,CAAC;IAEH,uBAAuB;IACvB,WAAW,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,EAAE;QACvD,WAAW,EAAE,gBAAgB;QAC7B,QAAQ,EAAE,YAAY;QACtB,KAAK,EAAE,QAAQ;KAChB,CAAC,CAAC;IAEH,wBAAwB;IACxB,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,uBAAuB,CAAC,EAAE;QAC3D,WAAW,EAAE,mBAAmB;QAChC,QAAQ,EAAE,SAAS;QACnB,KAAK,EAAE,QAAQ;KAChB,CAAC,CAAC;IAEH,OAAO,IAAI,CAAC,CAAC,qBAAqB;AACpC,CAAC"}
|