create-tauri-ui 0.2.0 → 0.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (36) hide show
  1. package/README.md +5 -3
  2. package/dist/index.mjs +3 -3
  3. package/package.json +54 -54
  4. package/templates/.shared/src-tauri/Cargo.lock +3701 -3701
  5. package/templates/.shared/src-tauri/Cargo.toml +36 -36
  6. package/templates/.shared/src-tauri/tauri.conf.json +79 -79
  7. package/templates/next/components.json +15 -15
  8. package/templates/next/next.config.js +14 -14
  9. package/templates/next/package.json +83 -83
  10. package/templates/next/src/app/layout.tsx +47 -47
  11. package/templates/next/src/components/menu.tsx +259 -259
  12. package/templates/next/src/lib/utils.ts +6 -6
  13. package/templates/next/src/styles/globals.css +85 -85
  14. package/templates/next/src-tauri/Cargo.lock +3701 -3701
  15. package/templates/next/src-tauri/Cargo.toml +36 -36
  16. package/templates/next/src-tauri/tauri.conf.json +79 -79
  17. package/templates/next/tailwind.config.js +77 -77
  18. package/templates/next/tsconfig.json +34 -34
  19. package/templates/sveltekit/package.json +84 -84
  20. package/templates/sveltekit/src-tauri/Cargo.lock +3701 -3701
  21. package/templates/sveltekit/src-tauri/Cargo.toml +36 -36
  22. package/templates/sveltekit/src-tauri/tauri.conf.json +79 -79
  23. package/templates/vite/components.json +15 -15
  24. package/templates/vite/package.json +76 -76
  25. package/templates/vite/pnpm-lock.yaml +5110 -5110
  26. package/templates/vite/src-tauri/Cargo.lock +3701 -3701
  27. package/templates/vite/src-tauri/Cargo.toml +36 -36
  28. package/templates/vite/src-tauri/tauri.conf.json +79 -79
  29. package/templates/viteuno/components.json +15 -15
  30. package/templates/viteuno/package.json +73 -73
  31. package/templates/viteuno/pnpm-lock.yaml +5298 -5298
  32. package/templates/viteuno/preset.shadcn.ts +160 -160
  33. package/templates/viteuno/src-tauri/Cargo.lock +3701 -3701
  34. package/templates/viteuno/src-tauri/Cargo.toml +36 -36
  35. package/templates/viteuno/src-tauri/tauri.conf.json +79 -79
  36. package/templates/viteuno/uno.config.ts +111 -111
@@ -1,259 +1,259 @@
1
- "use client"
2
-
3
- import { useCallback } from "react"
4
- import Image from "next/image"
5
- import { usePathname } from "next/navigation"
6
- import logo from "@/assets/logo.png"
7
- import { Globe, Maximize, Mic, Music2, Sailboat, X, Zap } from "lucide-react"
8
-
9
- import { Button } from "@/components/ui/button"
10
- import {
11
- Menubar,
12
- MenubarCheckboxItem,
13
- MenubarContent,
14
- MenubarItem,
15
- MenubarLabel,
16
- MenubarMenu,
17
- MenubarRadioGroup,
18
- MenubarRadioItem,
19
- MenubarSeparator,
20
- MenubarShortcut,
21
- MenubarSub,
22
- MenubarSubContent,
23
- MenubarSubTrigger,
24
- MenubarTrigger,
25
- } from "@/components/ui/menubar"
26
-
27
- import { ExamplesNav } from "./examples-nav"
28
- import { Icons } from "./icons"
29
- import { MenuModeToggle } from "./menu-mode-toggle"
30
- import { ModeToggle } from "./mode-toggle"
31
-
32
- export function Menu() {
33
- const minimizeWindow = useCallback(async () => {
34
- const { appWindow } = await import("@tauri-apps/plugin-window")
35
-
36
- appWindow?.minimize()
37
- }, [])
38
-
39
- const maximizeWindow = useCallback(async () => {
40
- const { appWindow } = await import("@tauri-apps/plugin-window")
41
- const isMaximized = await appWindow?.isMaximized()
42
-
43
- if (isMaximized) {
44
- appWindow?.unmaximize()
45
- } else {
46
- appWindow?.maximize()
47
- }
48
- }, [])
49
-
50
- const closeWindow = useCallback(async () => {
51
- const { appWindow } = await import("@tauri-apps/plugin-window")
52
-
53
- appWindow.close()
54
- }, [])
55
-
56
- return (
57
- <Menubar className="rounded-none border-b border-none pl-2 lg:pl-3">
58
- {/* App Logo */}
59
- <MenubarMenu>
60
- <div className="inline-flex h-fit w-fit items-center text-cyan-500">
61
- {usePathname() === "/" || usePathname() === "/examples/music" ? (
62
- <Image src={logo} alt="logo" width={40} />
63
- ) : (
64
- <Sailboat className="h-5 w-5" />
65
- )}
66
- </div>
67
- </MenubarMenu>
68
-
69
- <MenubarMenu>
70
- <MenubarTrigger className="font-bold">App</MenubarTrigger>
71
- <MenubarContent>
72
- <MenubarItem>About App</MenubarItem>
73
- <MenubarSeparator />
74
- <MenubarItem>
75
- Preferences... <MenubarShortcut>⌘,</MenubarShortcut>
76
- </MenubarItem>
77
- <MenubarSeparator />
78
- <MenubarItem>
79
- Hide Music... <MenubarShortcut>⌘H</MenubarShortcut>
80
- </MenubarItem>
81
- <MenubarItem>
82
- Hide Others... <MenubarShortcut>⇧⌘H</MenubarShortcut>
83
- </MenubarItem>
84
- <MenubarShortcut />
85
- <MenubarItem onClick={closeWindow}>
86
- Quit Music <MenubarShortcut>⌘Q</MenubarShortcut>
87
- </MenubarItem>
88
- </MenubarContent>
89
- </MenubarMenu>
90
- <MenubarMenu>
91
- <MenubarTrigger className="relative">File</MenubarTrigger>
92
- <MenubarContent>
93
- <MenubarSub>
94
- <MenubarSubTrigger>New</MenubarSubTrigger>
95
- <MenubarSubContent className="w-[230px]">
96
- <MenubarItem>
97
- Playlist <MenubarShortcut>⌘N</MenubarShortcut>
98
- </MenubarItem>
99
- <MenubarItem disabled>
100
- Playlist from Selection <MenubarShortcut>⇧⌘N</MenubarShortcut>
101
- </MenubarItem>
102
- <MenubarItem>
103
- Smart Playlist... <MenubarShortcut>⌥⌘N</MenubarShortcut>
104
- </MenubarItem>
105
- <MenubarItem>Playlist Folder</MenubarItem>
106
- <MenubarItem disabled>Genius Playlist</MenubarItem>
107
- </MenubarSubContent>
108
- </MenubarSub>
109
- <MenubarItem>
110
- Open Stream URL... <MenubarShortcut>⌘U</MenubarShortcut>
111
- </MenubarItem>
112
- <MenubarItem>
113
- Close Window <MenubarShortcut>⌘W</MenubarShortcut>
114
- </MenubarItem>
115
- <MenubarSeparator />
116
- <MenubarSub>
117
- <MenubarSubTrigger>Library</MenubarSubTrigger>
118
- <MenubarSubContent>
119
- <MenubarItem>Update Cloud Library</MenubarItem>
120
- <MenubarItem>Update Genius</MenubarItem>
121
- <MenubarSeparator />
122
- <MenubarItem>Organize Library...</MenubarItem>
123
- <MenubarItem>Export Library...</MenubarItem>
124
- <MenubarSeparator />
125
- <MenubarItem>Import Playlist...</MenubarItem>
126
- <MenubarItem disabled>Export Playlist...</MenubarItem>
127
- <MenubarItem>Show Duplicate Items</MenubarItem>
128
- <MenubarSeparator />
129
- <MenubarItem>Get Album Artwork</MenubarItem>
130
- <MenubarItem disabled>Get Track Names</MenubarItem>
131
- </MenubarSubContent>
132
- </MenubarSub>
133
- <MenubarItem>
134
- Import... <MenubarShortcut>⌘O</MenubarShortcut>
135
- </MenubarItem>
136
- <MenubarItem disabled>Burn Playlist to Disc...</MenubarItem>
137
- <MenubarSeparator />
138
- <MenubarItem>
139
- Show in Finder <MenubarShortcut>⇧⌘R</MenubarShortcut>{" "}
140
- </MenubarItem>
141
- <MenubarItem>Convert</MenubarItem>
142
- <MenubarSeparator />
143
- <MenubarItem>Page Setup...</MenubarItem>
144
- <MenubarItem disabled>
145
- Print... <MenubarShortcut>⌘P</MenubarShortcut>
146
- </MenubarItem>
147
- </MenubarContent>
148
- </MenubarMenu>
149
- <MenubarMenu>
150
- <MenubarTrigger>Edit</MenubarTrigger>
151
- <MenubarContent>
152
- <MenubarItem disabled>
153
- Undo <MenubarShortcut>⌘Z</MenubarShortcut>
154
- </MenubarItem>
155
- <MenubarItem disabled>
156
- Redo <MenubarShortcut>⇧⌘Z</MenubarShortcut>
157
- </MenubarItem>
158
- <MenubarSeparator />
159
- <MenubarItem disabled>
160
- Cut <MenubarShortcut>⌘X</MenubarShortcut>
161
- </MenubarItem>
162
- <MenubarItem disabled>
163
- Copy <MenubarShortcut>⌘C</MenubarShortcut>
164
- </MenubarItem>
165
- <MenubarItem disabled>
166
- Paste <MenubarShortcut>⌘V</MenubarShortcut>
167
- </MenubarItem>
168
- <MenubarSeparator />
169
- <MenubarItem>
170
- Select All <MenubarShortcut>⌘A</MenubarShortcut>
171
- </MenubarItem>
172
- <MenubarItem disabled>
173
- Deselect All <MenubarShortcut>⇧⌘A</MenubarShortcut>
174
- </MenubarItem>
175
- <MenubarSeparator />
176
- <MenubarItem>
177
- Smart Dictation...{" "}
178
- <MenubarShortcut>
179
- <Mic className="h-4 w-4" />
180
- </MenubarShortcut>
181
- </MenubarItem>
182
- <MenubarItem>
183
- Emoji & Symbols{" "}
184
- <MenubarShortcut>
185
- <Globe className="h-4 w-4" />
186
- </MenubarShortcut>
187
- </MenubarItem>
188
- </MenubarContent>
189
- </MenubarMenu>
190
- <MenubarMenu>
191
- <MenubarTrigger>View</MenubarTrigger>
192
- <MenubarContent>
193
- <MenubarCheckboxItem>Show Playing Next</MenubarCheckboxItem>
194
- <MenubarCheckboxItem checked>Show Lyrics</MenubarCheckboxItem>
195
- <MenubarSeparator />
196
- <MenubarItem inset disabled>
197
- Show Status Bar
198
- </MenubarItem>
199
- <MenubarSeparator />
200
- <MenubarItem inset>Hide Sidebar</MenubarItem>
201
- <MenubarItem disabled inset>
202
- Enter Full Screen
203
- </MenubarItem>
204
- </MenubarContent>
205
- </MenubarMenu>
206
- <MenubarMenu>
207
- <MenubarTrigger>Account</MenubarTrigger>
208
- <MenubarContent forceMount>
209
- <MenubarLabel inset>Switch Account</MenubarLabel>
210
- <MenubarSeparator />
211
- <MenubarRadioGroup value="benoit">
212
- <MenubarRadioItem value="andy">Andy</MenubarRadioItem>
213
- <MenubarRadioItem value="benoit">Benoit</MenubarRadioItem>
214
- <MenubarRadioItem value="Luis">Luis</MenubarRadioItem>
215
- </MenubarRadioGroup>
216
- <MenubarSeparator />
217
- <MenubarItem inset>Manage Famliy...</MenubarItem>
218
- <MenubarSeparator />
219
- <MenubarItem inset>Add Account...</MenubarItem>
220
- </MenubarContent>
221
- </MenubarMenu>
222
-
223
- <MenuModeToggle />
224
-
225
- <ExamplesNav />
226
-
227
- <div
228
- data-tauri-drag-region
229
- className="inline-flex h-full w-full justify-end"
230
- >
231
- {/* <div className="pr-3">
232
- <ModeToggle />
233
- </div> */}
234
-
235
- <Button
236
- onClick={minimizeWindow}
237
- variant="ghost"
238
- className="h-8 focus:outline-none"
239
- >
240
- <Icons.minimize className="h-3 w-3" />
241
- </Button>
242
- <Button
243
- onClick={maximizeWindow}
244
- variant="ghost"
245
- className="h-8 focus:outline-none"
246
- >
247
- <Maximize className="h-4 w-4" />
248
- </Button>
249
- <Button
250
- onClick={closeWindow}
251
- variant="ghost"
252
- className="h-8 focus:outline-none"
253
- >
254
- <X className="h-4 w-4" />
255
- </Button>
256
- </div>
257
- </Menubar>
258
- )
259
- }
1
+ "use client"
2
+
3
+ import { useCallback } from "react"
4
+ import Image from "next/image"
5
+ import { usePathname } from "next/navigation"
6
+ import logo from "@/assets/logo.png"
7
+ import { Globe, Maximize, Mic, Music2, Sailboat, X, Zap } from "lucide-react"
8
+
9
+ import { Button } from "@/components/ui/button"
10
+ import {
11
+ Menubar,
12
+ MenubarCheckboxItem,
13
+ MenubarContent,
14
+ MenubarItem,
15
+ MenubarLabel,
16
+ MenubarMenu,
17
+ MenubarRadioGroup,
18
+ MenubarRadioItem,
19
+ MenubarSeparator,
20
+ MenubarShortcut,
21
+ MenubarSub,
22
+ MenubarSubContent,
23
+ MenubarSubTrigger,
24
+ MenubarTrigger,
25
+ } from "@/components/ui/menubar"
26
+
27
+ import { ExamplesNav } from "./examples-nav"
28
+ import { Icons } from "./icons"
29
+ import { MenuModeToggle } from "./menu-mode-toggle"
30
+ import { ModeToggle } from "./mode-toggle"
31
+
32
+ export function Menu() {
33
+ const minimizeWindow = useCallback(async () => {
34
+ const { appWindow } = await import("@tauri-apps/plugin-window")
35
+
36
+ appWindow?.minimize()
37
+ }, [])
38
+
39
+ const maximizeWindow = useCallback(async () => {
40
+ const { appWindow } = await import("@tauri-apps/plugin-window")
41
+ const isMaximized = await appWindow?.isMaximized()
42
+
43
+ if (isMaximized) {
44
+ appWindow?.unmaximize()
45
+ } else {
46
+ appWindow?.maximize()
47
+ }
48
+ }, [])
49
+
50
+ const closeWindow = useCallback(async () => {
51
+ const { appWindow } = await import("@tauri-apps/plugin-window")
52
+
53
+ appWindow.close()
54
+ }, [])
55
+
56
+ return (
57
+ <Menubar className="rounded-none border-b border-none pl-2 lg:pl-3">
58
+ {/* App Logo */}
59
+ <MenubarMenu>
60
+ <div className="inline-flex h-fit w-fit items-center text-cyan-500">
61
+ {usePathname() === "/" || usePathname() === "/examples/music" ? (
62
+ <Image src={logo} alt="logo" width={40} />
63
+ ) : (
64
+ <Sailboat className="h-5 w-5" />
65
+ )}
66
+ </div>
67
+ </MenubarMenu>
68
+
69
+ <MenubarMenu>
70
+ <MenubarTrigger className="font-bold">App</MenubarTrigger>
71
+ <MenubarContent>
72
+ <MenubarItem>About App</MenubarItem>
73
+ <MenubarSeparator />
74
+ <MenubarItem>
75
+ Preferences... <MenubarShortcut>⌘,</MenubarShortcut>
76
+ </MenubarItem>
77
+ <MenubarSeparator />
78
+ <MenubarItem>
79
+ Hide Music... <MenubarShortcut>⌘H</MenubarShortcut>
80
+ </MenubarItem>
81
+ <MenubarItem>
82
+ Hide Others... <MenubarShortcut>⇧⌘H</MenubarShortcut>
83
+ </MenubarItem>
84
+ <MenubarShortcut />
85
+ <MenubarItem onClick={closeWindow}>
86
+ Quit Music <MenubarShortcut>⌘Q</MenubarShortcut>
87
+ </MenubarItem>
88
+ </MenubarContent>
89
+ </MenubarMenu>
90
+ <MenubarMenu>
91
+ <MenubarTrigger className="relative">File</MenubarTrigger>
92
+ <MenubarContent>
93
+ <MenubarSub>
94
+ <MenubarSubTrigger>New</MenubarSubTrigger>
95
+ <MenubarSubContent className="w-[230px]">
96
+ <MenubarItem>
97
+ Playlist <MenubarShortcut>⌘N</MenubarShortcut>
98
+ </MenubarItem>
99
+ <MenubarItem disabled>
100
+ Playlist from Selection <MenubarShortcut>⇧⌘N</MenubarShortcut>
101
+ </MenubarItem>
102
+ <MenubarItem>
103
+ Smart Playlist... <MenubarShortcut>⌥⌘N</MenubarShortcut>
104
+ </MenubarItem>
105
+ <MenubarItem>Playlist Folder</MenubarItem>
106
+ <MenubarItem disabled>Genius Playlist</MenubarItem>
107
+ </MenubarSubContent>
108
+ </MenubarSub>
109
+ <MenubarItem>
110
+ Open Stream URL... <MenubarShortcut>⌘U</MenubarShortcut>
111
+ </MenubarItem>
112
+ <MenubarItem>
113
+ Close Window <MenubarShortcut>⌘W</MenubarShortcut>
114
+ </MenubarItem>
115
+ <MenubarSeparator />
116
+ <MenubarSub>
117
+ <MenubarSubTrigger>Library</MenubarSubTrigger>
118
+ <MenubarSubContent>
119
+ <MenubarItem>Update Cloud Library</MenubarItem>
120
+ <MenubarItem>Update Genius</MenubarItem>
121
+ <MenubarSeparator />
122
+ <MenubarItem>Organize Library...</MenubarItem>
123
+ <MenubarItem>Export Library...</MenubarItem>
124
+ <MenubarSeparator />
125
+ <MenubarItem>Import Playlist...</MenubarItem>
126
+ <MenubarItem disabled>Export Playlist...</MenubarItem>
127
+ <MenubarItem>Show Duplicate Items</MenubarItem>
128
+ <MenubarSeparator />
129
+ <MenubarItem>Get Album Artwork</MenubarItem>
130
+ <MenubarItem disabled>Get Track Names</MenubarItem>
131
+ </MenubarSubContent>
132
+ </MenubarSub>
133
+ <MenubarItem>
134
+ Import... <MenubarShortcut>⌘O</MenubarShortcut>
135
+ </MenubarItem>
136
+ <MenubarItem disabled>Burn Playlist to Disc...</MenubarItem>
137
+ <MenubarSeparator />
138
+ <MenubarItem>
139
+ Show in Finder <MenubarShortcut>⇧⌘R</MenubarShortcut>{" "}
140
+ </MenubarItem>
141
+ <MenubarItem>Convert</MenubarItem>
142
+ <MenubarSeparator />
143
+ <MenubarItem>Page Setup...</MenubarItem>
144
+ <MenubarItem disabled>
145
+ Print... <MenubarShortcut>⌘P</MenubarShortcut>
146
+ </MenubarItem>
147
+ </MenubarContent>
148
+ </MenubarMenu>
149
+ <MenubarMenu>
150
+ <MenubarTrigger>Edit</MenubarTrigger>
151
+ <MenubarContent>
152
+ <MenubarItem disabled>
153
+ Undo <MenubarShortcut>⌘Z</MenubarShortcut>
154
+ </MenubarItem>
155
+ <MenubarItem disabled>
156
+ Redo <MenubarShortcut>⇧⌘Z</MenubarShortcut>
157
+ </MenubarItem>
158
+ <MenubarSeparator />
159
+ <MenubarItem disabled>
160
+ Cut <MenubarShortcut>⌘X</MenubarShortcut>
161
+ </MenubarItem>
162
+ <MenubarItem disabled>
163
+ Copy <MenubarShortcut>⌘C</MenubarShortcut>
164
+ </MenubarItem>
165
+ <MenubarItem disabled>
166
+ Paste <MenubarShortcut>⌘V</MenubarShortcut>
167
+ </MenubarItem>
168
+ <MenubarSeparator />
169
+ <MenubarItem>
170
+ Select All <MenubarShortcut>⌘A</MenubarShortcut>
171
+ </MenubarItem>
172
+ <MenubarItem disabled>
173
+ Deselect All <MenubarShortcut>⇧⌘A</MenubarShortcut>
174
+ </MenubarItem>
175
+ <MenubarSeparator />
176
+ <MenubarItem>
177
+ Smart Dictation...{" "}
178
+ <MenubarShortcut>
179
+ <Mic className="h-4 w-4" />
180
+ </MenubarShortcut>
181
+ </MenubarItem>
182
+ <MenubarItem>
183
+ Emoji & Symbols{" "}
184
+ <MenubarShortcut>
185
+ <Globe className="h-4 w-4" />
186
+ </MenubarShortcut>
187
+ </MenubarItem>
188
+ </MenubarContent>
189
+ </MenubarMenu>
190
+ <MenubarMenu>
191
+ <MenubarTrigger>View</MenubarTrigger>
192
+ <MenubarContent>
193
+ <MenubarCheckboxItem>Show Playing Next</MenubarCheckboxItem>
194
+ <MenubarCheckboxItem checked>Show Lyrics</MenubarCheckboxItem>
195
+ <MenubarSeparator />
196
+ <MenubarItem inset disabled>
197
+ Show Status Bar
198
+ </MenubarItem>
199
+ <MenubarSeparator />
200
+ <MenubarItem inset>Hide Sidebar</MenubarItem>
201
+ <MenubarItem disabled inset>
202
+ Enter Full Screen
203
+ </MenubarItem>
204
+ </MenubarContent>
205
+ </MenubarMenu>
206
+ <MenubarMenu>
207
+ <MenubarTrigger>Account</MenubarTrigger>
208
+ <MenubarContent forceMount>
209
+ <MenubarLabel inset>Switch Account</MenubarLabel>
210
+ <MenubarSeparator />
211
+ <MenubarRadioGroup value="benoit">
212
+ <MenubarRadioItem value="andy">Andy</MenubarRadioItem>
213
+ <MenubarRadioItem value="benoit">Benoit</MenubarRadioItem>
214
+ <MenubarRadioItem value="Luis">Luis</MenubarRadioItem>
215
+ </MenubarRadioGroup>
216
+ <MenubarSeparator />
217
+ <MenubarItem inset>Manage Famliy...</MenubarItem>
218
+ <MenubarSeparator />
219
+ <MenubarItem inset>Add Account...</MenubarItem>
220
+ </MenubarContent>
221
+ </MenubarMenu>
222
+
223
+ <MenuModeToggle />
224
+
225
+ <ExamplesNav />
226
+
227
+ <div
228
+ data-tauri-drag-region
229
+ className="inline-flex h-full w-full justify-end"
230
+ >
231
+ {/* <div className="pr-3">
232
+ <ModeToggle />
233
+ </div> */}
234
+
235
+ <Button
236
+ onClick={minimizeWindow}
237
+ variant="ghost"
238
+ className="h-8 focus:outline-none"
239
+ >
240
+ <Icons.minimize className="h-3 w-3" />
241
+ </Button>
242
+ <Button
243
+ onClick={maximizeWindow}
244
+ variant="ghost"
245
+ className="h-8 focus:outline-none"
246
+ >
247
+ <Maximize className="h-4 w-4" />
248
+ </Button>
249
+ <Button
250
+ onClick={closeWindow}
251
+ variant="ghost"
252
+ className="h-8 focus:outline-none"
253
+ >
254
+ <X className="h-4 w-4" />
255
+ </Button>
256
+ </div>
257
+ </Menubar>
258
+ )
259
+ }
@@ -1,6 +1,6 @@
1
- import { type ClassValue, clsx } from "clsx"
2
- import { twMerge } from "tailwind-merge"
3
-
4
- export function cn(...inputs: ClassValue[]) {
5
- return twMerge(clsx(inputs))
6
- }
1
+ import { type ClassValue, clsx } from "clsx"
2
+ import { twMerge } from "tailwind-merge"
3
+
4
+ export function cn(...inputs: ClassValue[]) {
5
+ return twMerge(clsx(inputs))
6
+ }