diff --git a/crates/gui/.eslintrc.json b/crates/gui/.eslintrc.json index 398a91e..475dc5d 100644 --- a/crates/gui/.eslintrc.json +++ b/crates/gui/.eslintrc.json @@ -16,6 +16,7 @@ }, "ignorePatterns": ["src/assets", "src/css", "src/*.css"], "rules": { + "semi": ["error", "never"], "simple-import-sort/imports": "error", "simple-import-sort/exports": "error" } diff --git a/crates/gui/package.json b/crates/gui/package.json index 7cb768c..b36a2d6 100644 --- a/crates/gui/package.json +++ b/crates/gui/package.json @@ -14,17 +14,17 @@ "dependencies": { "@solidjs/router": "^0.8.3", "@tauri-apps/api": "^1.4.0", - "solid-js": "^1.7.11", - "solid-spinner": "^0.1.9", + "solid-js": "^1.7.12", + "solid-spinner": "^0.2.0", "solid-toast": "^0.5.0", "solid-transition-group": "^0.2.3" }, "devDependencies": { "@tauri-apps/cli": "^1.4.0", - "@types/node": "^20.5.7", - "@typescript-eslint/eslint-plugin": "^6.5.0", - "@typescript-eslint/parser": "^6.5.0", - "eslint": "^8.48.0", + "@types/node": "^20.7.0", + "@typescript-eslint/eslint-plugin": "^6.7.3", + "@typescript-eslint/parser": "^6.7.3", + "eslint": "^8.50.0", "eslint-plugin-simple-import-sort": "^10.0.0", "eslint-plugin-solid": "^0.13.0", "typescript": "^5.2.2", diff --git a/crates/gui/src/App.tsx b/crates/gui/src/App.tsx index 24a2ed1..6a74855 100644 --- a/crates/gui/src/App.tsx +++ b/crates/gui/src/App.tsx @@ -1,24 +1,13 @@ -import './App.css' -import './css/TopBar.css' +import "./App.css" +import "./css/TopBar.css" -import { useRoutes } from '@solidjs/router' -import { lazy, onMount } from 'solid-js' -import { Toaster } from 'solid-toast' +import { useRoutes } from "@solidjs/router" +import { lazy, onMount } from "solid-js" +import { Toaster } from "solid-toast" -import Control from './components/Control' -import SideBar from './components/SideBar' -import TopBar from './components/TopBar' - -// interface Node { -// rid: string -// title: string -// urls: Url[] -// } - -// interface Url { -// format: string -// url: string -// } +import Control from "./components/Control" +import SideBar from "./components/SideBar" +import TopBar from "./components/TopBar" const App = () => { onMount(async () => { @@ -37,15 +26,15 @@ const App = () => { }) const setupWindow = async () => { - const appWindow = (await import('@tauri-apps/api/window')).appWindow + const appWindow = (await import("@tauri-apps/api/window")).appWindow appWindow.show() } const routes = [ - { path: '/', component: lazy(() => import('./pages/Home')) }, - { path: '/good', component: lazy(() => import('./pages/Good')) }, - { path: '/chart', component: lazy(() => import('./pages/Chart')) }, - { path: '/setting', component: lazy(() => import('./pages/Setting')) }, + { path: "/", component: lazy(() => import("./pages/Home")) }, + { path: "/good", component: lazy(() => import("./pages/Good")) }, + { path: "/chart", component: lazy(() => import("./pages/Chart")) }, + { path: "/setting", component: lazy(() => import("./pages/Setting")) }, ] const Routes = useRoutes(routes) @@ -64,11 +53,11 @@ const App = () => { position="bottom-center" gutter={8} toastOptions={{ - className: '', + className: "", duration: 5000, style: { - background: '#0f0f0fc9', - color: '#fff', + background: "#0f0f0fc9", + color: "#fff", }, }} /> diff --git a/crates/gui/src/components/Control.tsx b/crates/gui/src/components/Control.tsx index 9342d55..7e635c2 100644 --- a/crates/gui/src/components/Control.tsx +++ b/crates/gui/src/components/Control.tsx @@ -1,7 +1,7 @@ -import '../css/Control.css' +import "../css/Control.css" -import { appWindow } from '@tauri-apps/api/window' -import { Show } from 'solid-js' +import { appWindow } from "@tauri-apps/api/window" +import { Show } from "solid-js" // TODO 修复最小化, 隐藏时的渲染bug @@ -61,8 +61,7 @@ const Control = (props: BarProps) => {
appWindow.minimize()} - > + onClick={() => appWindow.minimize()}> {Minimize()}
@@ -75,8 +74,7 @@ const Control = (props: BarProps) => {
appWindow.close()} - title="关闭" - > + title="关闭"> {Close()}
diff --git a/crates/gui/src/components/GoodItem.tsx b/crates/gui/src/components/GoodItem.tsx index bedc819..eb2b52c 100644 --- a/crates/gui/src/components/GoodItem.tsx +++ b/crates/gui/src/components/GoodItem.tsx @@ -1,25 +1,25 @@ -import '../css/GoodItem.css' +import "../css/GoodItem.css" -import { AddIcon, CopyIcon, PlayIcon } from '../icon/icon' +import { AddIcon, CopyIcon, PlayIcon } from "../icon/icon" interface Url { - format: string - url: string + format: string; + url: string; } interface GoodItemProps { - live: string - rid: string - title: string - anchor: string - urls: Url[] - img?: string + live: string; + rid: string; + title: string; + anchor: string; + urls: Url[]; + img?: string; } const GoodItem = (props: GoodItemProps) => { return (
- +
{props.title}
快来看
diff --git a/crates/gui/src/components/Live.tsx b/crates/gui/src/components/Live.tsx index 923163f..aeae739 100644 --- a/crates/gui/src/components/Live.tsx +++ b/crates/gui/src/components/Live.tsx @@ -1,19 +1,19 @@ -import '../css/Live.css' +import "../css/Live.css" -import { CopyIcon, PlayIcon } from '../icon/icon' +import { CopyIcon, PlayIcon } from "../icon/icon" interface Url { - format: string - url: string + format: string; + url: string; } interface LiveProps { - live: string - rid: string - title: string - anchor: string - urls: Url[] - img?: string + live: string; + rid: string; + title: string; + anchor: string; + urls: Url[]; + img?: string; } // TODO 减少内阴影的使用, 按钮的样式应该简洁一些 @@ -21,7 +21,7 @@ interface LiveProps { const Live = (props: LiveProps) => { return (
- +
{props.title}
diff --git a/crates/gui/src/components/Panel.tsx b/crates/gui/src/components/Panel.tsx index 58c5d49..113f8db 100644 --- a/crates/gui/src/components/Panel.tsx +++ b/crates/gui/src/components/Panel.tsx @@ -1,13 +1,13 @@ -import '../css/Panel.css' +import "../css/Panel.css" -import { Accessor, For, Setter } from 'solid-js' +import { Accessor, For, Setter } from "solid-js" -import allLives from '../model/Live' +import allLives from "../model/Live" interface LiveProps { - flag: Setter - live: Accessor - setLive: Setter + flag: Setter; + live: Accessor; + setLive: Setter; } const Panel = (props: LiveProps) => { @@ -15,19 +15,17 @@ const Panel = (props: LiveProps) => {
props.flag(true)} - onMouseLeave={() => props.flag(false)} - > + onMouseLeave={() => props.flag(false)}>
{(item) => (
props.setLive(item.cmd)} - > + onClick={() => props.setLive(item.cmd)}> {item.name}
)} diff --git a/crates/gui/src/components/SideBar.tsx b/crates/gui/src/components/SideBar.tsx index 0f6fbba..d419fc1 100644 --- a/crates/gui/src/components/SideBar.tsx +++ b/crates/gui/src/components/SideBar.tsx @@ -1,10 +1,10 @@ -import '../css/SideBar.css' +import "../css/SideBar.css" -import { useLocation } from '@solidjs/router' -import { createMemo } from 'solid-js' +import { useLocation } from "@solidjs/router" +import { createMemo } from "solid-js" -import { ChartIcon, GoodIcon, HomeIcon, SettingIcon } from '../icon/icon' -import SideItem from './SideItem' +import { ChartIcon, GoodIcon, HomeIcon, SettingIcon } from "../icon/icon" +import SideItem from "./SideItem" const SideBar = () => { const pathname = createMemo(() => { diff --git a/crates/gui/src/components/SideItem.tsx b/crates/gui/src/components/SideItem.tsx index 40057f1..ce6bf80 100644 --- a/crates/gui/src/components/SideItem.tsx +++ b/crates/gui/src/components/SideItem.tsx @@ -1,23 +1,22 @@ -import '../css/SideItem.css' +import "../css/SideItem.css" -import { A } from '@solidjs/router' -import { JSX } from 'solid-js/jsx-runtime' +import { A } from "@solidjs/router" +import { JSX } from "solid-js/jsx-runtime" const SideItem = (props: { - children: JSX.Element - path: string - bottom?: boolean - pathname: () => string + children: JSX.Element; + path: string; + bottom?: boolean; + pathname: () => string; }) => { return (
+ "side-item-bottom": props.bottom, + "side-item-selected": props.pathname() == props.path, + }}> {props.children}
diff --git a/crates/gui/src/components/TopBar.tsx b/crates/gui/src/components/TopBar.tsx index 4bb3f1a..b94701f 100644 --- a/crates/gui/src/components/TopBar.tsx +++ b/crates/gui/src/components/TopBar.tsx @@ -1,28 +1,28 @@ -import { invoke } from '@tauri-apps/api' -import { createSignal } from 'solid-js' -import { Spinner, SpinnerType } from 'solid-spinner' -import toast from 'solid-toast' -import { Transition } from 'solid-transition-group' +import { invoke } from "@tauri-apps/api" +import { createSignal } from "solid-js" +import { Spinner, SpinnerType } from "solid-spinner" +import toast from "solid-toast" +import { Transition } from "solid-transition-group" -import { AddIcon, SyncIcon } from '../icon/icon' -import { Resp } from '../model/Resp' -import Panel from './Panel' +import { AddIcon, SyncIcon } from "../icon/icon" +import { Resp } from "../model/Resp" +import Panel from "./Panel" const TopBar = () => { const [refresh, setRefresh] = createSignal(false) - const [rid, setRid] = createSignal('') + const [rid, setRid] = createSignal("") const [onInput, setInput] = createSignal(false) const [onPanel, setPanel] = createSignal(false) - const [live, setLive] = createSignal('bili') + const [live, setLive] = createSignal("bili") const add = async () => { - await invoke>('add_subscribe', { + await invoke>("subscribe_add", { live: live(), rid: rid(), }).then((p) => { if (p.code === 0) { console.log(p.data) - toast.success('添加成功') + toast.success("添加成功") } else { toast.error(p.msg) } @@ -61,8 +61,7 @@ const TopBar = () => { class="top-bar-btn" onClick={async () => { await add() - }} - > + }}> diff --git a/crates/gui/src/index.tsx b/crates/gui/src/index.tsx index d8cef3b..34280f5 100644 --- a/crates/gui/src/index.tsx +++ b/crates/gui/src/index.tsx @@ -1,10 +1,10 @@ /* @refresh reload */ -import './styles.css' +import "./styles.css" -import { Router } from '@solidjs/router' -import { render } from 'solid-js/web' +import { Router } from "@solidjs/router" +import { render } from "solid-js/web" -import App from './App' +import App from "./App" render( () => ( @@ -12,5 +12,5 @@ render( ), - document.getElementById('root') as HTMLElement + document.getElementById("root") as HTMLElement ) diff --git a/crates/gui/src/model/Live.tsx b/crates/gui/src/model/Live.tsx index 3db338b..ddf4538 100644 --- a/crates/gui/src/model/Live.tsx +++ b/crates/gui/src/model/Live.tsx @@ -73,8 +73,8 @@ const allLives = (): LiveItem[] => { name: "wink", cmd: "wink", }, - ]; - return lives; -}; + ] + return lives +} -export default allLives; +export default allLives diff --git a/crates/gui/src/model/Record.tsx b/crates/gui/src/model/Record.tsx index b12fae1..34f593d 100644 --- a/crates/gui/src/model/Record.tsx +++ b/crates/gui/src/model/Record.tsx @@ -1,4 +1,4 @@ export interface SubscribeRecord { - live: string - rid: string + live: string; + rid: string; } diff --git a/crates/gui/src/pages/Chart.tsx b/crates/gui/src/pages/Chart.tsx index eaf4b96..9d1caa2 100644 --- a/crates/gui/src/pages/Chart.tsx +++ b/crates/gui/src/pages/Chart.tsx @@ -1,9 +1,9 @@ -import '../css/Chart.css' +import "../css/Chart.css" -import { createMemo, createSignal, For } from 'solid-js' -import toast from 'solid-toast' +import { createMemo, createSignal, For } from "solid-js" +import toast from "solid-toast" -import allLives from '../model/Live' +import allLives from "../model/Live" interface Record { index: number @@ -13,96 +13,25 @@ interface Record { } const Chart = () => { - const [selected, setSelect] = createSignal('all') - const [records, setRecords] = createSignal([ - { - index: 1, - live: 'douyu', - rid: '123', - anchor: 'AAAA', - }, - { - index: 2, - live: 'bili', - rid: '123', - anchor: 'AAAA', - }, - { - index: 3, - live: 'bili', - rid: '123', - anchor: 'AAAA', - }, - { - index: 4, - live: 'yqs', - rid: '123', - anchor: 'AAAA', - }, - { - index: 5, - live: 'cc', - rid: '123', - anchor: 'AAAA', - }, - { - index: 6, - live: 'kk', - rid: '123', - anchor: 'AAAA', - }, - { - index: 7, - live: 'douyu', - rid: '123', - anchor: 'AAAA', - }, - { - index: 8, - live: 'douyu', - rid: '123', - anchor: 'AAAA', - }, - { - index: 9, - live: 'douyu', - rid: '123', - anchor: 'AAAA', - }, - { - index: 10, - live: 'douyu', - rid: '123', - anchor: 'AAAA', - }, - { - index: 11, - live: 'douyu', - rid: '123', - anchor: 'AAAA', - }, - { - index: 12, - live: 'douyu', - rid: '123', - anchor: 'AAAA', - }, - { - index: 13, - live: 'douyu', - rid: '123', - anchor: 'AAAA', - }, - { - index: 14, - live: 'douyu', - rid: '123', - anchor: 'AAAA', - }, - ]) + // { + // index: 1, + // live: "douyu", + // rid: "123", + // anchor: "AAAA", + // }, + // { + // index: 2, + // live: "bili", + // rid: "123", + // anchor: "AAAA", + // }, + const [selected, setSelect] = createSignal("all") + const [records, setRecords] = createSignal([]) + + // 开启页面获取 records 数据 const filterRecords = createMemo(() => { - if (selected() === 'all') { + if (selected() === "all") { return records() } else { return records().filter((item) => item.live === selected()) @@ -111,7 +40,7 @@ const Chart = () => { const deleteRecord = (index: number) => { setRecords(records().filter((item) => item.index !== index)) - toast.success('删除成功') + toast.success("删除成功") } const liveName = (live: string) => { @@ -121,18 +50,18 @@ const Chart = () => { return lives[i].name } } - return '未知' + return "未知" } + return (
setSelect('all')} - > + onClick={() => setSelect("all")}> ALL
@@ -140,11 +69,10 @@ const Chart = () => {
setSelect(item.cmd)} - > + onClick={() => setSelect(item.cmd)}> {item.name}
)} @@ -170,8 +98,7 @@ const Chart = () => { diff --git a/crates/gui/src/pages/Good.tsx b/crates/gui/src/pages/Good.tsx index 9e6070d..d7ebfca 100644 --- a/crates/gui/src/pages/Good.tsx +++ b/crates/gui/src/pages/Good.tsx @@ -1,13 +1,13 @@ -import '../css/Good.css' +import "../css/Good.css" -import GoodItem from '../components/GoodItem' +import GoodItem from "../components/GoodItem" const Good = () => { const goodDemo = { - live: 'douyu', - rid: '123', - title: '恭喜你发现了我~', - anchor: '我是谁', + live: "douyu", + rid: "123", + title: "恭喜你发现了我~", + anchor: "我是谁", urls: [], img: undefined, } diff --git a/crates/gui/src/pages/Home.tsx b/crates/gui/src/pages/Home.tsx index b0bbdb1..9e2c247 100644 --- a/crates/gui/src/pages/Home.tsx +++ b/crates/gui/src/pages/Home.tsx @@ -1,13 +1,13 @@ -import '../css/Home.css' +import "../css/Home.css" -import Live from '../components/Live' +import Live from "../components/Live" const Home = () => { const liveDemo = { - live: 'douyu', - rid: '123', - title: '恭喜你发现了我~', - anchor: '我是谁', + live: "douyu", + rid: "123", + title: "恭喜你发现了我~", + anchor: "我是谁", urls: [], img: undefined, } diff --git a/crates/gui/src/pages/Setting.tsx b/crates/gui/src/pages/Setting.tsx index ab63e75..6ee297c 100644 --- a/crates/gui/src/pages/Setting.tsx +++ b/crates/gui/src/pages/Setting.tsx @@ -1,7 +1,7 @@ -import '../css/Setting.css' +import "../css/Setting.css" -import { open } from '@tauri-apps/api/dialog' -import toast from 'solid-toast' +import { open } from "@tauri-apps/api/dialog" +import toast from "solid-toast" // TODO headers 设置分离, 取消 textarea, 列表, // 顶部添加, 选择平台, 输入字段, 值, 点击添加 @@ -10,7 +10,7 @@ import toast from 'solid-toast' const Setting = () => { const save = () => { - toast.success('保存成功') + toast.success("保存成功") } return (
@@ -24,8 +24,7 @@ const Setting = () => { onClick={async () => { const file = await open() console.log(file) - }} - > + }}> 选择
diff --git a/crates/gui/yarn.lock b/crates/gui/yarn.lock index 724b350..34f5c5d 100644 --- a/crates/gui/yarn.lock +++ b/crates/gui/yarn.lock @@ -449,15 +449,15 @@ minimatch "^3.1.2" strip-json-comments "^3.1.1" -"@eslint/js@8.48.0": - version "8.48.0" - resolved "https://registry.npmmirror.com/@eslint/js/-/js-8.48.0.tgz#642633964e217905436033a2bd08bf322849b7fb" - integrity sha512-ZSjtmelB7IJfWD2Fvb7+Z+ChTIKWq6kjda95fLcQKNS5aheVHn4IkfgRQE3sIIzTcSLwLcLZUD9UBt+V7+h+Pw== +"@eslint/js@8.50.0": + version "8.50.0" + resolved "https://registry.yarnpkg.com/@eslint/js/-/js-8.50.0.tgz#9e93b850f0f3fa35f5fa59adfd03adae8488e484" + integrity sha512-NCC3zz2+nvYd+Ckfh87rA47zfu2QsQpvc6k1yzTk+b9KzRj0wkGa8LSoGOXN6Zv4lRf/EIoZ80biDh9HOI+RNQ== -"@humanwhocodes/config-array@^0.11.10": - version "0.11.10" - resolved "https://registry.npmmirror.com/@humanwhocodes/config-array/-/config-array-0.11.10.tgz" - integrity sha512-KVVjQmNUepDVGXNuoRRdmmEjruj0KfiGSbS8LVc12LMsWDQzRXJ0qdhN8L8uUigKpfEHRhlaQFY0ib1tnUbNeQ== +"@humanwhocodes/config-array@^0.11.11": + version "0.11.11" + resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.11.11.tgz#88a04c570dbbc7dd943e4712429c3df09bc32844" + integrity sha512-N2brEuAadi0CcdeMXUkhbZB84eskAc8MEX1By6qEchoVywSgXPIjou4rYsl0V3Hj0ZnuGycGCjdNgockbzeWNA== dependencies: "@humanwhocodes/object-schema" "^1.2.1" debug "^4.1.1" @@ -662,26 +662,26 @@ resolved "https://registry.npmmirror.com/@types/json-schema/-/json-schema-7.0.12.tgz" integrity sha512-Hr5Jfhc9eYOQNPYO5WLDq/n4jqijdHNlDXjuAQkkt+mWdQR+XJToOHrsD4cPaMXpn6KO7y2+wM8AZEs8VpBLVA== -"@types/node@^20.5.7": - version "20.5.7" - resolved "https://registry.npmmirror.com/@types/node/-/node-20.5.7.tgz#4b8ecac87fbefbc92f431d09c30e176fc0a7c377" - integrity sha512-dP7f3LdZIysZnmvP3ANJYTSwg+wLLl8p7RqniVlV7j+oXSXAbt9h0WIBFmJy5inWZoX9wZN6eXx+YXd9Rh3RBA== +"@types/node@^20.7.0": + version "20.7.0" + resolved "https://registry.yarnpkg.com/@types/node/-/node-20.7.0.tgz#c03de4572f114a940bc2ca909a33ddb2b925e470" + integrity sha512-zI22/pJW2wUZOVyguFaUL1HABdmSVxpXrzIqkjsHmyUjNhPoWM1CKfvVuXfetHhIok4RY573cqS0mZ1SJEnoTg== "@types/semver@^7.5.0": version "7.5.0" resolved "https://registry.npmmirror.com/@types/semver/-/semver-7.5.0.tgz" integrity sha512-G8hZ6XJiHnuhQKR7ZmysCeJWE08o8T0AXtk5darsCaTVsYZhhgUrq53jizaR2FvsoeCwJhlmwTjkXBY5Pn/ZHw== -"@typescript-eslint/eslint-plugin@^6.5.0": - version "6.5.0" - resolved "https://registry.npmmirror.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.5.0.tgz#5cee33edf0d45d5ec773e3b3111206b098ac8599" - integrity sha512-2pktILyjvMaScU6iK3925uvGU87E+N9rh372uGZgiMYwafaw9SXq86U04XPq3UH6tzRvNgBsub6x2DacHc33lw== +"@typescript-eslint/eslint-plugin@^6.7.3": + version "6.7.3" + resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.7.3.tgz#d98046e9f7102d49a93d944d413c6055c47fafd7" + integrity sha512-vntq452UHNltxsaaN+L9WyuMch8bMd9CqJ3zhzTPXXidwbf5mqqKCVXEuvRZUqLJSTLeWE65lQwyXsRGnXkCTA== dependencies: "@eslint-community/regexpp" "^4.5.1" - "@typescript-eslint/scope-manager" "6.5.0" - "@typescript-eslint/type-utils" "6.5.0" - "@typescript-eslint/utils" "6.5.0" - "@typescript-eslint/visitor-keys" "6.5.0" + "@typescript-eslint/scope-manager" "6.7.3" + "@typescript-eslint/type-utils" "6.7.3" + "@typescript-eslint/utils" "6.7.3" + "@typescript-eslint/visitor-keys" "6.7.3" debug "^4.3.4" graphemer "^1.4.0" ignore "^5.2.4" @@ -689,15 +689,15 @@ semver "^7.5.4" ts-api-utils "^1.0.1" -"@typescript-eslint/parser@^6.5.0": - version "6.5.0" - resolved "https://registry.npmmirror.com/@typescript-eslint/parser/-/parser-6.5.0.tgz#3d6ed231c5e307c5f5f4a0d86893ec01e92b8c77" - integrity sha512-LMAVtR5GN8nY0G0BadkG0XIe4AcNMeyEy3DyhKGAh9k4pLSMBO7rF29JvDBpZGCmp5Pgz5RLHP6eCpSYZJQDuQ== +"@typescript-eslint/parser@^6.7.3": + version "6.7.3" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-6.7.3.tgz#aaf40092a32877439e5957e18f2d6a91c82cc2fd" + integrity sha512-TlutE+iep2o7R8Lf+yoer3zU6/0EAUc8QIBB3GYBc1KGz4c4TRm83xwXUZVPlZ6YCLss4r77jbu6j3sendJoiQ== dependencies: - "@typescript-eslint/scope-manager" "6.5.0" - "@typescript-eslint/types" "6.5.0" - "@typescript-eslint/typescript-estree" "6.5.0" - "@typescript-eslint/visitor-keys" "6.5.0" + "@typescript-eslint/scope-manager" "6.7.3" + "@typescript-eslint/types" "6.7.3" + "@typescript-eslint/typescript-estree" "6.7.3" + "@typescript-eslint/visitor-keys" "6.7.3" debug "^4.3.4" "@typescript-eslint/scope-manager@6.4.1": @@ -708,21 +708,21 @@ "@typescript-eslint/types" "6.4.1" "@typescript-eslint/visitor-keys" "6.4.1" -"@typescript-eslint/scope-manager@6.5.0": - version "6.5.0" - resolved "https://registry.npmmirror.com/@typescript-eslint/scope-manager/-/scope-manager-6.5.0.tgz#f2cb20895aaad41b3ad27cc3a338ce8598f261c5" - integrity sha512-A8hZ7OlxURricpycp5kdPTH3XnjG85UpJS6Fn4VzeoH4T388gQJ/PGP4ole5NfKt4WDVhmLaQ/dBLNDC4Xl/Kw== +"@typescript-eslint/scope-manager@6.7.3": + version "6.7.3" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-6.7.3.tgz#07e5709c9bdae3eaf216947433ef97b3b8b7d755" + integrity sha512-wOlo0QnEou9cHO2TdkJmzF7DFGvAKEnB82PuPNHpT8ZKKaZu6Bm63ugOTn9fXNJtvuDPanBc78lGUGGytJoVzQ== dependencies: - "@typescript-eslint/types" "6.5.0" - "@typescript-eslint/visitor-keys" "6.5.0" + "@typescript-eslint/types" "6.7.3" + "@typescript-eslint/visitor-keys" "6.7.3" -"@typescript-eslint/type-utils@6.5.0": - version "6.5.0" - resolved "https://registry.npmmirror.com/@typescript-eslint/type-utils/-/type-utils-6.5.0.tgz#6d246c93739282bc0d2e623f28d0dec6cfcc38d7" - integrity sha512-f7OcZOkRivtujIBQ4yrJNIuwyCQO1OjocVqntl9dgSIZAdKqicj3xFDqDOzHDlGCZX990LqhLQXWRnQvsapq8A== +"@typescript-eslint/type-utils@6.7.3": + version "6.7.3" + resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-6.7.3.tgz#c2c165c135dda68a5e70074ade183f5ad68f3400" + integrity sha512-Fc68K0aTDrKIBvLnKTZ5Pf3MXK495YErrbHb1R6aTpfK5OdSFj0rVN7ib6Tx6ePrZ2gsjLqr0s98NG7l96KSQw== dependencies: - "@typescript-eslint/typescript-estree" "6.5.0" - "@typescript-eslint/utils" "6.5.0" + "@typescript-eslint/typescript-estree" "6.7.3" + "@typescript-eslint/utils" "6.7.3" debug "^4.3.4" ts-api-utils "^1.0.1" @@ -731,10 +731,10 @@ resolved "https://registry.npmmirror.com/@typescript-eslint/types/-/types-6.4.1.tgz#b2c61159f46dda210fed9f117f5d027f65bb5c3b" integrity sha512-zAAopbNuYu++ijY1GV2ylCsQsi3B8QvfPHVqhGdDcbx/NK5lkqMnCGU53amAjccSpk+LfeONxwzUhDzArSfZJg== -"@typescript-eslint/types@6.5.0": - version "6.5.0" - resolved "https://registry.npmmirror.com/@typescript-eslint/types/-/types-6.5.0.tgz#f4e55cfd99ac5346ea772770bf212a3e689a8f04" - integrity sha512-eqLLOEF5/lU8jW3Bw+8auf4lZSbbljHR2saKnYqON12G/WsJrGeeDHWuQePoEf9ro22+JkbPfWQwKEC5WwLQ3w== +"@typescript-eslint/types@6.7.3": + version "6.7.3" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-6.7.3.tgz#0402b5628a63f24f2dc9d4a678e9a92cc50ea3e9" + integrity sha512-4g+de6roB2NFcfkZb439tigpAMnvEIg3rIjWQ+EM7IBaYt/CdJt6em9BJ4h4UpdgaBWdmx2iWsafHTrqmgIPNw== "@typescript-eslint/typescript-estree@6.4.1": version "6.4.1" @@ -749,30 +749,30 @@ semver "^7.5.4" ts-api-utils "^1.0.1" -"@typescript-eslint/typescript-estree@6.5.0": - version "6.5.0" - resolved "https://registry.npmmirror.com/@typescript-eslint/typescript-estree/-/typescript-estree-6.5.0.tgz#1cef6bc822585e9ef89d88834bc902d911d747ed" - integrity sha512-q0rGwSe9e5Kk/XzliB9h2LBc9tmXX25G0833r7kffbl5437FPWb2tbpIV9wAATebC/018pGa9fwPDuvGN+LxWQ== +"@typescript-eslint/typescript-estree@6.7.3": + version "6.7.3" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-6.7.3.tgz#ec5bb7ab4d3566818abaf0e4a8fa1958561b7279" + integrity sha512-YLQ3tJoS4VxLFYHTw21oe1/vIZPRqAO91z6Uv0Ss2BKm/Ag7/RVQBcXTGcXhgJMdA4U+HrKuY5gWlJlvoaKZ5g== dependencies: - "@typescript-eslint/types" "6.5.0" - "@typescript-eslint/visitor-keys" "6.5.0" + "@typescript-eslint/types" "6.7.3" + "@typescript-eslint/visitor-keys" "6.7.3" debug "^4.3.4" globby "^11.1.0" is-glob "^4.0.3" semver "^7.5.4" ts-api-utils "^1.0.1" -"@typescript-eslint/utils@6.5.0": - version "6.5.0" - resolved "https://registry.npmmirror.com/@typescript-eslint/utils/-/utils-6.5.0.tgz#6668bee4f7f24978b11df8a2ea42d56eebc4662c" - integrity sha512-9nqtjkNykFzeVtt9Pj6lyR9WEdd8npPhhIPM992FWVkZuS6tmxHfGVnlUcjpUP2hv8r4w35nT33mlxd+Be1ACQ== +"@typescript-eslint/utils@6.7.3": + version "6.7.3" + resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-6.7.3.tgz#96c655816c373135b07282d67407cb577f62e143" + integrity sha512-vzLkVder21GpWRrmSR9JxGZ5+ibIUSudXlW52qeKpzUEQhRSmyZiVDDj3crAth7+5tmN1ulvgKaCU2f/bPRCzg== dependencies: "@eslint-community/eslint-utils" "^4.4.0" "@types/json-schema" "^7.0.12" "@types/semver" "^7.5.0" - "@typescript-eslint/scope-manager" "6.5.0" - "@typescript-eslint/types" "6.5.0" - "@typescript-eslint/typescript-estree" "6.5.0" + "@typescript-eslint/scope-manager" "6.7.3" + "@typescript-eslint/types" "6.7.3" + "@typescript-eslint/typescript-estree" "6.7.3" semver "^7.5.4" "@typescript-eslint/utils@^6.4.0": @@ -796,12 +796,12 @@ "@typescript-eslint/types" "6.4.1" eslint-visitor-keys "^3.4.1" -"@typescript-eslint/visitor-keys@6.5.0": - version "6.5.0" - resolved "https://registry.npmmirror.com/@typescript-eslint/visitor-keys/-/visitor-keys-6.5.0.tgz#1a6f474a0170a447b76f0699ce6700110fd11436" - integrity sha512-yCB/2wkbv3hPsh02ZS8dFQnij9VVQXJMN/gbQsaaY+zxALkZnxa/wagvLEFsAWMPv7d7lxQmNsIzGU1w/T/WyA== +"@typescript-eslint/visitor-keys@6.7.3": + version "6.7.3" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-6.7.3.tgz#83809631ca12909bd2083558d2f93f5747deebb2" + integrity sha512-HEVXkU9IB+nk9o63CeICMHxFWbHWr3E1mpilIQBe9+7L/lH97rleFLVtYsfnWB+JVMaiFnEaxvknvmIzX+CqVg== dependencies: - "@typescript-eslint/types" "6.5.0" + "@typescript-eslint/types" "6.7.3" eslint-visitor-keys "^3.4.1" acorn-jsx@^5.3.2: @@ -1200,16 +1200,16 @@ eslint-visitor-keys@^3.4.3: resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz#0cd72fe8550e3c2eae156a96a4dddcd1c8ac5800" integrity sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag== -eslint@^8.48.0: - version "8.48.0" - resolved "https://registry.npmmirror.com/eslint/-/eslint-8.48.0.tgz#bf9998ba520063907ba7bfe4c480dc8be03c2155" - integrity sha512-sb6DLeIuRXxeM1YljSe1KEx9/YYeZFQWcV8Rq9HfigmdDEugjLEVEa1ozDjL6YDjBpQHPJxJzze+alxi4T3OLg== +eslint@^8.50.0: + version "8.50.0" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.50.0.tgz#2ae6015fee0240fcd3f83e1e25df0287f487d6b2" + integrity sha512-FOnOGSuFuFLv/Sa+FDVRZl4GGVAAFFi8LecRsI5a1tMO5HIE8nCm4ivAlzt4dT3ol/PaaGC0rJEEXQmHJBGoOg== dependencies: "@eslint-community/eslint-utils" "^4.2.0" "@eslint-community/regexpp" "^4.6.1" "@eslint/eslintrc" "^2.1.2" - "@eslint/js" "8.48.0" - "@humanwhocodes/config-array" "^0.11.10" + "@eslint/js" "8.50.0" + "@humanwhocodes/config-array" "^0.11.11" "@humanwhocodes/module-importer" "^1.0.1" "@nodelib/fs.walk" "^1.2.8" ajv "^6.12.4" @@ -2065,10 +2065,10 @@ slash@^3.0.0: resolved "https://registry.npmmirror.com/slash/-/slash-3.0.0.tgz" integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q== -solid-js@^1.7.11: - version "1.7.11" - resolved "https://registry.yarnpkg.com/solid-js/-/solid-js-1.7.11.tgz#c37706382bcfd563459810434b1382b550c27867" - integrity sha512-JkuvsHt8jqy7USsy9xJtT18aF9r2pFO+GB8JQ2XGTvtF49rGTObB46iebD25sE3qVNvIbwglXOXdALnJq9IHtQ== +solid-js@^1.7.12: + version "1.7.12" + resolved "https://registry.yarnpkg.com/solid-js/-/solid-js-1.7.12.tgz#e196aceb03790c15aedf109771c5bb9cc92516ea" + integrity sha512-QoyoOUKu14iLoGxjxWFIU8+/1kLT4edQ7mZESFPonsEXZ//VJtPKD8Ud1aTKzotj+MNWmSs9YzK6TdY+fO9Eww== dependencies: csstype "^3.1.0" seroval "^0.5.0" @@ -2082,10 +2082,10 @@ solid-refresh@^0.5.0: "@babel/helper-module-imports" "^7.18.6" "@babel/types" "^7.21.2" -solid-spinner@^0.1.9: - version "0.1.9" - resolved "https://registry.yarnpkg.com/solid-spinner/-/solid-spinner-0.1.9.tgz#4292edf195b779f22a4fd68cdee522d82e7f6507" - integrity sha512-cwSmcvlSm134MzUHL1/Il5Mv0/eWTuj0D3A8TBEvVGgN00hBCyHV9wbtfkK2uOlk4gop4FvvI9UFo9mQnONx5g== +solid-spinner@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/solid-spinner/-/solid-spinner-0.2.0.tgz#10e64a109f5bd026fcd58151c3f1b103b3132c30" + integrity sha512-xLTYFljnvtp8evg9H1Cs4UlIwFelO9HYmRF/bfByhlrcilHJwyQgSus9ICbu8Gt/CUubpT4LsADWxJ9rYg8VHA== solid-toast@^0.5.0: version "0.5.0"