[feat] fix list update + add dark mode and switch
This commit is contained in:
@@ -35,6 +35,7 @@
|
||||
"framer-motion": "^12.5.0",
|
||||
"jotai": "^2.12.2",
|
||||
"next": "15.2.0",
|
||||
"next-themes": "^0.4.6",
|
||||
"react": "^19.0.0",
|
||||
"react-dom": "^19.0.0",
|
||||
"tauri-plugin-valtio": "1.1.1",
|
||||
|
||||
@@ -84,7 +84,7 @@
|
||||
}
|
||||
},
|
||||
"permissions": {
|
||||
"description": "List of permissions attached to this capability.\n\nMust include the plugin name as prefix in the form of `${plugin-name}:${permission-name}`. For commands directly implemented in the application itself only `${permission-name}` is required.\n\n## Example\n\n```json [ \"core:default\", \"shell:allow-open\", \"dialog:open\", { \"identifier\": \"fs:allow-write-text-file\", \"allow\": [{ \"path\": \"$HOME/test.txt\" }] } ```",
|
||||
"description": "List of permissions attached to this capability.\n\nMust include the plugin name as prefix in the form of `${plugin-name}:${permission-name}`. For commands directly implemented in the application itself only `${permission-name}` is required.\n\n## Example\n\n```json [ \"core:default\", \"shell:allow-open\", \"dialog:open\", { \"identifier\": \"fs:allow-write-text-file\", \"allow\": [{ \"path\": \"$HOME/test.txt\" }] } ] ```",
|
||||
"type": "array",
|
||||
"items": {
|
||||
"$ref": "#/definitions/PermissionEntry"
|
||||
@@ -5598,6 +5598,211 @@
|
||||
"description": "Denies the values command without any pre-configured scope.",
|
||||
"type": "string",
|
||||
"const": "store:deny-values"
|
||||
},
|
||||
{
|
||||
"description": "Default permissions for tauri-plugin-valtio.",
|
||||
"type": "string",
|
||||
"const": "valtio:default"
|
||||
},
|
||||
{
|
||||
"description": "Enables the clear_autosave command without any pre-configured scope.",
|
||||
"type": "string",
|
||||
"const": "valtio:allow-clear-autosave"
|
||||
},
|
||||
{
|
||||
"description": "Enables the get_default_save_strategy command without any pre-configured scope.",
|
||||
"type": "string",
|
||||
"const": "valtio:allow-get-default-save-strategy"
|
||||
},
|
||||
{
|
||||
"description": "Enables the get_save_strategy command without any pre-configured scope.",
|
||||
"type": "string",
|
||||
"const": "valtio:allow-get-save-strategy"
|
||||
},
|
||||
{
|
||||
"description": "Enables the get_store_ids command without any pre-configured scope.",
|
||||
"type": "string",
|
||||
"const": "valtio:allow-get-store-ids"
|
||||
},
|
||||
{
|
||||
"description": "Enables the get_store_path command without any pre-configured scope.",
|
||||
"type": "string",
|
||||
"const": "valtio:allow-get-store-path"
|
||||
},
|
||||
{
|
||||
"description": "Enables the get_store_state command without any pre-configured scope.",
|
||||
"type": "string",
|
||||
"const": "valtio:allow-get-store-state"
|
||||
},
|
||||
{
|
||||
"description": "Enables the get_valtio_path command without any pre-configured scope.",
|
||||
"type": "string",
|
||||
"const": "valtio:allow-get-valtio-path"
|
||||
},
|
||||
{
|
||||
"description": "Enables the load command without any pre-configured scope.",
|
||||
"type": "string",
|
||||
"const": "valtio:allow-load"
|
||||
},
|
||||
{
|
||||
"description": "Enables the patch command without any pre-configured scope.",
|
||||
"type": "string",
|
||||
"const": "valtio:allow-patch"
|
||||
},
|
||||
{
|
||||
"description": "Enables the save command without any pre-configured scope.",
|
||||
"type": "string",
|
||||
"const": "valtio:allow-save"
|
||||
},
|
||||
{
|
||||
"description": "Enables the save_all command without any pre-configured scope.",
|
||||
"type": "string",
|
||||
"const": "valtio:allow-save-all"
|
||||
},
|
||||
{
|
||||
"description": "Enables the save_all_now command without any pre-configured scope.",
|
||||
"type": "string",
|
||||
"const": "valtio:allow-save-all-now"
|
||||
},
|
||||
{
|
||||
"description": "Enables the save_now command without any pre-configured scope.",
|
||||
"type": "string",
|
||||
"const": "valtio:allow-save-now"
|
||||
},
|
||||
{
|
||||
"description": "Enables the save_some command without any pre-configured scope.",
|
||||
"type": "string",
|
||||
"const": "valtio:allow-save-some"
|
||||
},
|
||||
{
|
||||
"description": "Enables the save_some_now command without any pre-configured scope.",
|
||||
"type": "string",
|
||||
"const": "valtio:allow-save-some-now"
|
||||
},
|
||||
{
|
||||
"description": "Enables the set_autosave command without any pre-configured scope.",
|
||||
"type": "string",
|
||||
"const": "valtio:allow-set-autosave"
|
||||
},
|
||||
{
|
||||
"description": "Enables the set_save_strategy command without any pre-configured scope.",
|
||||
"type": "string",
|
||||
"const": "valtio:allow-set-save-strategy"
|
||||
},
|
||||
{
|
||||
"description": "Enables the set_store_options command without any pre-configured scope.",
|
||||
"type": "string",
|
||||
"const": "valtio:allow-set-store-options"
|
||||
},
|
||||
{
|
||||
"description": "Enables the set_valtio_path command without any pre-configured scope.",
|
||||
"type": "string",
|
||||
"const": "valtio:allow-set-valtio-path"
|
||||
},
|
||||
{
|
||||
"description": "Enables the unload command without any pre-configured scope.",
|
||||
"type": "string",
|
||||
"const": "valtio:allow-unload"
|
||||
},
|
||||
{
|
||||
"description": "Denies the clear_autosave command without any pre-configured scope.",
|
||||
"type": "string",
|
||||
"const": "valtio:deny-clear-autosave"
|
||||
},
|
||||
{
|
||||
"description": "Denies the get_default_save_strategy command without any pre-configured scope.",
|
||||
"type": "string",
|
||||
"const": "valtio:deny-get-default-save-strategy"
|
||||
},
|
||||
{
|
||||
"description": "Denies the get_save_strategy command without any pre-configured scope.",
|
||||
"type": "string",
|
||||
"const": "valtio:deny-get-save-strategy"
|
||||
},
|
||||
{
|
||||
"description": "Denies the get_store_ids command without any pre-configured scope.",
|
||||
"type": "string",
|
||||
"const": "valtio:deny-get-store-ids"
|
||||
},
|
||||
{
|
||||
"description": "Denies the get_store_path command without any pre-configured scope.",
|
||||
"type": "string",
|
||||
"const": "valtio:deny-get-store-path"
|
||||
},
|
||||
{
|
||||
"description": "Denies the get_store_state command without any pre-configured scope.",
|
||||
"type": "string",
|
||||
"const": "valtio:deny-get-store-state"
|
||||
},
|
||||
{
|
||||
"description": "Denies the get_valtio_path command without any pre-configured scope.",
|
||||
"type": "string",
|
||||
"const": "valtio:deny-get-valtio-path"
|
||||
},
|
||||
{
|
||||
"description": "Denies the load command without any pre-configured scope.",
|
||||
"type": "string",
|
||||
"const": "valtio:deny-load"
|
||||
},
|
||||
{
|
||||
"description": "Denies the patch command without any pre-configured scope.",
|
||||
"type": "string",
|
||||
"const": "valtio:deny-patch"
|
||||
},
|
||||
{
|
||||
"description": "Denies the save command without any pre-configured scope.",
|
||||
"type": "string",
|
||||
"const": "valtio:deny-save"
|
||||
},
|
||||
{
|
||||
"description": "Denies the save_all command without any pre-configured scope.",
|
||||
"type": "string",
|
||||
"const": "valtio:deny-save-all"
|
||||
},
|
||||
{
|
||||
"description": "Denies the save_all_now command without any pre-configured scope.",
|
||||
"type": "string",
|
||||
"const": "valtio:deny-save-all-now"
|
||||
},
|
||||
{
|
||||
"description": "Denies the save_now command without any pre-configured scope.",
|
||||
"type": "string",
|
||||
"const": "valtio:deny-save-now"
|
||||
},
|
||||
{
|
||||
"description": "Denies the save_some command without any pre-configured scope.",
|
||||
"type": "string",
|
||||
"const": "valtio:deny-save-some"
|
||||
},
|
||||
{
|
||||
"description": "Denies the save_some_now command without any pre-configured scope.",
|
||||
"type": "string",
|
||||
"const": "valtio:deny-save-some-now"
|
||||
},
|
||||
{
|
||||
"description": "Denies the set_autosave command without any pre-configured scope.",
|
||||
"type": "string",
|
||||
"const": "valtio:deny-set-autosave"
|
||||
},
|
||||
{
|
||||
"description": "Denies the set_save_strategy command without any pre-configured scope.",
|
||||
"type": "string",
|
||||
"const": "valtio:deny-set-save-strategy"
|
||||
},
|
||||
{
|
||||
"description": "Denies the set_store_options command without any pre-configured scope.",
|
||||
"type": "string",
|
||||
"const": "valtio:deny-set-store-options"
|
||||
},
|
||||
{
|
||||
"description": "Denies the set_valtio_path command without any pre-configured scope.",
|
||||
"type": "string",
|
||||
"const": "valtio:deny-set-valtio-path"
|
||||
},
|
||||
{
|
||||
"description": "Denies the unload command without any pre-configured scope.",
|
||||
"type": "string",
|
||||
"const": "valtio:deny-unload"
|
||||
}
|
||||
]
|
||||
},
|
||||
|
||||
@@ -10,8 +10,6 @@ body {
|
||||
height: 100%;
|
||||
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen,
|
||||
Ubuntu, Cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
|
||||
/* background: transparent; */
|
||||
background: rgba(242, 241, 243, 0.65);
|
||||
border-radius: 10px;
|
||||
}
|
||||
|
||||
|
||||
@@ -15,7 +15,7 @@ export default function RootLayout({
|
||||
}) {
|
||||
return (
|
||||
<html lang="en">
|
||||
<body>
|
||||
<body className="bg-[rgba(242, 241, 243, 0.65)] dark:bg-zinc-900">
|
||||
<Providers>{children}</Providers>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -1,12 +1,15 @@
|
||||
"use client"
|
||||
import { HeroUIProvider } from "@heroui/react"
|
||||
import { ToastProvider } from "@heroui/toast"
|
||||
import { ThemeProvider as NextThemesProvider } from "next-themes"
|
||||
|
||||
export default function Providers({ children }: { children: React.ReactNode }) {
|
||||
return (
|
||||
<HeroUIProvider className="h-full bg-transparent">
|
||||
<ToastProvider toastOffset={10} placement="top-center" />
|
||||
{children}
|
||||
<NextThemesProvider attribute="class" defaultTheme="light">
|
||||
<ToastProvider toastOffset={10} placement="top-center" />
|
||||
{children}
|
||||
</NextThemesProvider>
|
||||
</HeroUIProvider>
|
||||
)
|
||||
}
|
||||
|
||||
@@ -3,15 +3,16 @@ import { Plus, SettingConfig, Switch } from "@icon-park/react"
|
||||
import { Card, CardBody, CardHeader, CardIcon, CardTool } from "../window/Card"
|
||||
import { ToolButton } from "../window/ToolButton"
|
||||
import { useSnapshot } from "valtio"
|
||||
import { useEffect, useState } from "react"
|
||||
import { use, useEffect, useState } from "react"
|
||||
|
||||
const LaunchOption = () => {
|
||||
toolStore.start()
|
||||
const { launchOptions, launchIndex } = useSnapshot(toolStore.state)
|
||||
const [currentLaunchOption, setCurrentLaunchOption] = useState(launchOptions[0])
|
||||
useEffect(() => {
|
||||
setCurrentLaunchOption(launchOptions[launchIndex] || '')
|
||||
}, [launchIndex])
|
||||
;async () => {
|
||||
toolStore.start()
|
||||
}
|
||||
}, [])
|
||||
|
||||
const { launchOptions, launchIndex } = useSnapshot(toolStore.state)
|
||||
|
||||
return (
|
||||
<Card>
|
||||
@@ -36,11 +37,10 @@ const LaunchOption = () => {
|
||||
<CardBody>
|
||||
<textarea
|
||||
placeholder="请输入启动选项"
|
||||
value={currentLaunchOption}
|
||||
value={launchOptions[launchIndex] || ""}
|
||||
onChange={(e) => launchIndex !== -1 && setLaunchOption(e.target.value, launchIndex)}
|
||||
className="w-full font-mono text-base bg-transparent outline-none resize-none min-h-20"
|
||||
/>
|
||||
<p>{launchIndex}</p>
|
||||
</CardBody>
|
||||
</Card>
|
||||
)
|
||||
|
||||
@@ -11,7 +11,7 @@ interface CardProps {
|
||||
const Card = ({ children }: CardProps) => {
|
||||
return (
|
||||
<div
|
||||
className="dark:from-black/10 dark:to-black/5 dark:border-white/[6%] px-3 pt-3 pb-4 flex flex-col gap-2.5 border w-full rounded-lg bg-white/40 border-black/[6%]"
|
||||
className="dark:bg-white/[3%] dark:border-white/[6%] px-3 pt-3 pb-4 flex flex-col gap-2.5 border w-full rounded-lg bg-white/40 border-black/[6%]"
|
||||
data-tauri-drag-region
|
||||
>
|
||||
{children}
|
||||
|
||||
@@ -2,13 +2,16 @@
|
||||
import { resetAppStore } from "@/store/app"
|
||||
import { resetToolStore } from "@/store/tool"
|
||||
import { addToast } from "@heroui/react"
|
||||
import { Close, Minus, Refresh, RocketOne, Square } from "@icon-park/react"
|
||||
import { Close, Minus, Moon, Refresh, RefreshOne, RocketOne, Square, Sun, SunOne } from "@icon-park/react"
|
||||
import { useTheme } from "next-themes"
|
||||
import { getCurrentWindow } from "@tauri-apps/api/window"
|
||||
import { /* relaunch, */ exit } from "@tauri-apps/plugin-process"
|
||||
import { /* relaunch, */ exit, relaunch } from "@tauri-apps/plugin-process"
|
||||
// import { platform } from "@tauri-apps/plugin-os"
|
||||
import { usePathname, useRouter } from "next/navigation"
|
||||
|
||||
const Nav = () => {
|
||||
const { theme, setTheme } = useTheme()
|
||||
|
||||
const close = async () => {
|
||||
// (await window.hideOnClose) ? getCurrent().hide() : exit();
|
||||
await exit()
|
||||
@@ -62,6 +65,14 @@ const Nav = () => {
|
||||
<RocketOne size={16} />
|
||||
</button>
|
||||
|
||||
<button
|
||||
type="button"
|
||||
className="px-2 py-0 transition duration-150 rounded hover:bg-zinc-200/80 active:scale-95"
|
||||
onClick={() => (theme === "light" ? setTheme("dark") : setTheme("light"))}
|
||||
>
|
||||
{theme === "light" ? <SunOne size={16} /> : <Moon size={16} />}
|
||||
</button>
|
||||
|
||||
{/* { platform() === "windows" && ( */}
|
||||
<>
|
||||
<button
|
||||
|
||||
@@ -2,7 +2,11 @@ import { store } from 'tauri-plugin-valtio';
|
||||
import { DEFAULT_STORE_CONFIG } from '.';
|
||||
|
||||
const defaultValue = {
|
||||
launchOptions: [] as string[],
|
||||
launchOptions: [
|
||||
"-novid -high -freq 144 -fullscreen",
|
||||
"-novid -high -w 1920 -h 1080 -freq 144 -sw -noborder",
|
||||
"-novid -high -freq 144 -fullscreen -allow_third_party_software"
|
||||
] as string[],
|
||||
launchIndex: 0,
|
||||
powerPlan: 0
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user