From 479414fbd1a240062be71ffa513c3bcb7ce60cfe Mon Sep 17 00:00:00 2001 From: Evan Simkowitz Date: Wed, 18 Sep 2024 13:12:34 -0700 Subject: [PATCH 01/31] If prerelease is false and action is none, remove the prerelease version string (#395) Updates the version.cjs script so that if the arguments are "none 0" and a prerelease version is already set, it will be removed. This is equivalent the behavior of "patch 0", but better aligns with the default behavior of the Bump Version worklow. --- RELEASES.md | 11 ++++++++--- Taskfile.yml | 11 +---------- package.json | 2 +- version.cjs | 25 +++++++++++++++++++++---- 4 files changed, 31 insertions(+), 18 deletions(-) diff --git a/RELEASES.md b/RELEASES.md index 2bc7dc917..acc3da1d6 100644 --- a/RELEASES.md +++ b/RELEASES.md @@ -3,9 +3,14 @@ ## Step-by-step guide 1. Go to the [Actions tab](https://github.com/wavetermdev/thenextwave/actions) and select "Bump Version" from the left sidebar. -2. Click on "Run workflow". You will see two options: - - "SemVer Bump": This defaults to `none`. Adjust this if you want to increment the version number according to semantic versioning rules (`patch`, `minor`, `major`). - - "Is Prerelease": This defaults to `true`. If set to `true`, a `-beta.X` version will be appended to the end of the version. If one is already present and the base SemVer is not being incremented, the `-beta` version will be incremented (i.e. `0.1.13-beta.0` to `0.1.13-beta.1`). +2. Click on "Run workflow". + - You will see two options: + - "SemVer Bump": This defaults to `none`. Adjust this if you want to increment the version number according to semantic versioning rules (`patch`, `minor`, `major`). + - "Is Prerelease": This defaults to `true`. If set to `true`, a `-beta.X` version will be appended to the end of the version. If one is already present and the base SemVer is not being incremented, the `-beta` version will be incremented (i.e. `0.1.13-beta.0` to `0.1.13-beta.1`). If set to `false`, the `-beta.X` suffix will be removed from the version number. If one was not already present, it will remain absent. + - Some examples: + - If you are creating a new prerelease following an official release, you would set "SemVer Bump" to to the expected version bump (`patch`, `minor`, or `major`) and "Is Prerelease" to `true`. + - If you are bumping an existing prerelease to a new prerelease under the same version, you would set "SemVer Bump" to `none` and "Is Prerelease" to `true`. + - If you are promoting a prerelease version to an official release, you would set "SemVer Bump" to `none` and "Is Prerelease" to `false`. 3. After "Bump Version" a "Build Helper" run will kick off automatically for the new version. When this completes, it will generate a draft GitHub Release with all the built artifacts. 4. Review the artifacts in the release and test them locally. 5. When you are confident that the build is good, edit the GitHub Release to add a changelog and release summary and publish the release. diff --git a/Taskfile.yml b/Taskfile.yml index 8e4884821..280d632f7 100644 --- a/Taskfile.yml +++ b/Taskfile.yml @@ -203,16 +203,7 @@ tasks: - frontend/app/store/wshserver.ts version: - desc: Get the current package version, or bump version if args are present. To pass args to `version.cjs`, add them after `--`. - summary: | - If no arguments are present, the current version will be returned. - If only a single argument is given, the following are valid inputs: - - `none`: No-op. - - `patch`: Bumps the patch version. - - `minor`: Bumps the minor version. - - `major`: Bumps the major version. - - '1', 'true': Bumps the prerelease version. - If two arguments are given, the first argument must be either `none`, `patch`, `minor`, or `major`. The second argument must be `1` or `true` to bump the prerelease version. + desc: Get the current package version, or bump version if args are present. To pass args to `version.cjs`, add them after `--`. See `version.cjs` for usage definitions for the arguments. cmd: node version.cjs {{.CLI_ARGS}} artifacts:upload: diff --git a/package.json b/package.json index ab6b82b51..7e5fd498a 100644 --- a/package.json +++ b/package.json @@ -7,7 +7,7 @@ "productName": "TheNextWave", "description": "An Open-Source, AI-Native, Terminal Built for Seamless Workflows", "license": "Apache-2.0", - "version": "0.1.13", + "version": "0.1.18", "homepage": "https://waveterm.dev", "build": { "appId": "dev.commandline.thenextwave" diff --git a/version.cjs b/version.cjs index fca8c93e0..a90caa170 100644 --- a/version.cjs +++ b/version.cjs @@ -8,7 +8,14 @@ * - `minor`: Bumps the minor version. * - `major`: Bumps the major version. * - '1', 'true': Bumps the prerelease version. - * If two arguments are given, the first argument must be either `none`, `patch`, `minor`, or `major`. The second argument must be `1` or `true` to bump the prerelease version. + * If two arguments are given, the following are valid inputs for the first argument: + * - `none`: No-op. + * - `patch`: Bumps the patch version. + * - `minor`: Bumps the minor version. + * - `major`: Bumps the major version. + * The following are valid inputs for the second argument: + * - `0`, 'false': The release is not a prerelease, will remove any prerelease identifier from the version, if one was present. + * - '1', 'true': The release is a prerelease (any value other than `0` or `false` will be interpreted as `true`). */ const path = require("path"); @@ -23,11 +30,21 @@ if (typeof require !== "undefined" && require.main === module) { const fs = require("fs"); const semver = require("semver"); - const action = process.argv[2]; + let action = process.argv[2]; + + // If prerelease argument is not explicitly set, mark it as undefined. const isPrerelease = process.argv.length > 3 - ? process.argv[3] === "true" || process.argv[3] === "1" - : action === "true" || action === "1"; + ? process.argv[3] !== "false" && process.argv[3] !== "0" + : action === "true" || action === "1" + ? true + : undefined; + + // This will remove the prerelease version string (i.e. 0.1.13-beta.1 -> 0.1.13) if the arguments are `none 0` and the current version is a prerelease. + if (action === "none" && isPrerelease === false && semver.prerelease(VERSION)) { + action = "patch"; + } + let newVersion = packageJson.version; switch (action) { case "major": From 3ade98879b5d3d0c70712070f7b217c175842f28 Mon Sep 17 00:00:00 2001 From: Evan Simkowitz Date: Wed, 18 Sep 2024 14:14:03 -0700 Subject: [PATCH 02/31] Fix button disabled behavior --- frontend/app/element/button.less | 3 ++- frontend/app/element/button.tsx | 4 +--- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/frontend/app/element/button.less b/frontend/app/element/button.less index 8d74b84b9..96d2da031 100644 --- a/frontend/app/element/button.less +++ b/frontend/app/element/button.less @@ -144,9 +144,10 @@ } } - &.disabled { + &:disabled { cursor: default; opacity: 0.5; + pointer-events: none; } &:focus, diff --git a/frontend/app/element/button.tsx b/frontend/app/element/button.tsx index 75403e34b..964671c47 100644 --- a/frontend/app/element/button.tsx +++ b/frontend/app/element/button.tsx @@ -35,9 +35,7 @@ const Button = memo( - ); - } - return (
@@ -527,7 +507,7 @@ const TabBar = React.memo(({ workspace }: TabBarProps) => {
- {updateAvailableLabel} + ); }); diff --git a/frontend/app/tab/updatestatus.less b/frontend/app/tab/updatestatus.less new file mode 100644 index 000000000..8b99c3265 --- /dev/null +++ b/frontend/app/tab/updatestatus.less @@ -0,0 +1,11 @@ +.update-available-button { + height: 80%; + margin: auto 4px; + color: black; + background-color: var(--accent-color); + flex: 0 0 fit-content; + + &:disabled { + opacity: unset !important; + } +} diff --git a/frontend/app/tab/updatestatus.tsx b/frontend/app/tab/updatestatus.tsx new file mode 100644 index 000000000..7ca33a958 --- /dev/null +++ b/frontend/app/tab/updatestatus.tsx @@ -0,0 +1,49 @@ +import { Button } from "@/element/button"; +import { atoms, getApi } from "@/store/global"; +import { useAtomValue } from "jotai"; +import { memo } from "react"; +import "./updatestatus.less"; + +const UpdateStatusBannerComponent = ({ buttonRef }: { buttonRef: React.RefObject }) => { + const appUpdateStatus = useAtomValue(atoms.updaterStatusAtom); + function onClick() { + if (appUpdateStatus === "ready") getApi().installAppUpdate(); + } + + let buttonText: string; + switch (appUpdateStatus) { + case "ready": + buttonText = "Update Available"; + break; + case "checking": + buttonText = "Checking for Updates"; + break; + case "downloading": + buttonText = "Downloading Update"; + break; + case "installing": + buttonText = "Installing Update"; + break; + case "error": + buttonText = "Updater Error: Try Checking Again"; + break; + default: + break; + } + + if (buttonText) { + return ( + + ); + } +}; + +export const UpdateStatusBanner = memo(UpdateStatusBannerComponent) as typeof UpdateStatusBannerComponent; diff --git a/frontend/types/custom.d.ts b/frontend/types/custom.d.ts index e751e55ac..be830c0d6 100644 --- a/frontend/types/custom.d.ts +++ b/frontend/types/custom.d.ts @@ -67,6 +67,7 @@ declare global { onFullScreenChange: (callback: (isFullScreen: boolean) => void) => void; onUpdaterStatusChange: (callback: (status: UpdaterStatus) => void) => void; getUpdaterStatus: () => UpdaterStatus; + getUpdaterChannel: () => string; installAppUpdate: () => void; onMenuItemAbout: (callback: () => void) => void; updateWindowControlsOverlay: (rect: Dimensions) => void; From 97ffa8654c6394fe045c81bbc8f6743537a3cc93 Mon Sep 17 00:00:00 2001 From: "wave-builder[bot]" <181805596+wave-builder[bot]@users.noreply.github.com> Date: Wed, 18 Sep 2024 21:27:49 +0000 Subject: [PATCH 04/31] chore: bump package version to 0.1.19-beta.0 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 7e5fd498a..346d7b0f5 100644 --- a/package.json +++ b/package.json @@ -7,7 +7,7 @@ "productName": "TheNextWave", "description": "An Open-Source, AI-Native, Terminal Built for Seamless Workflows", "license": "Apache-2.0", - "version": "0.1.18", + "version": "0.1.19-beta.0", "homepage": "https://waveterm.dev", "build": { "appId": "dev.commandline.thenextwave" From 231c960ca88cd0eb5ae5a8af60b3a7fe78308e04 Mon Sep 17 00:00:00 2001 From: Evan Simkowitz Date: Wed, 18 Sep 2024 14:30:45 -0700 Subject: [PATCH 05/31] missed a change --- emain/updater.ts | 2 ++ frontend/app/tab/updatestatus.tsx | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/emain/updater.ts b/emain/updater.ts index 83ebc2336..f04f2753f 100644 --- a/emain/updater.ts +++ b/emain/updater.ts @@ -50,10 +50,12 @@ export class Updater { autoUpdater.on("update-available", () => { console.log("update-available; downloading..."); + this.status = "downloading"; }); autoUpdater.on("update-not-available", () => { console.log("update-not-available"); + this.status = "up-to-date"; }); autoUpdater.on("update-downloaded", (event) => { diff --git a/frontend/app/tab/updatestatus.tsx b/frontend/app/tab/updatestatus.tsx index 7ca33a958..75f6ad68c 100644 --- a/frontend/app/tab/updatestatus.tsx +++ b/frontend/app/tab/updatestatus.tsx @@ -7,7 +7,7 @@ import "./updatestatus.less"; const UpdateStatusBannerComponent = ({ buttonRef }: { buttonRef: React.RefObject }) => { const appUpdateStatus = useAtomValue(atoms.updaterStatusAtom); function onClick() { - if (appUpdateStatus === "ready") getApi().installAppUpdate(); + getApi().installAppUpdate(); } let buttonText: string; From a590fd7fbfc1cfba3c19ad69dbfc97c53ed2c103 Mon Sep 17 00:00:00 2001 From: Evan Simkowitz Date: Wed, 18 Sep 2024 14:31:04 -0700 Subject: [PATCH 06/31] revert package version --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 346d7b0f5..ab6b82b51 100644 --- a/package.json +++ b/package.json @@ -7,7 +7,7 @@ "productName": "TheNextWave", "description": "An Open-Source, AI-Native, Terminal Built for Seamless Workflows", "license": "Apache-2.0", - "version": "0.1.19-beta.0", + "version": "0.1.13", "homepage": "https://waveterm.dev", "build": { "appId": "dev.commandline.thenextwave" From 0059b61748ba712345451ee2ed1e32a3fd758c5b Mon Sep 17 00:00:00 2001 From: "wave-builder[bot]" <181805596+wave-builder[bot]@users.noreply.github.com> Date: Wed, 18 Sep 2024 21:32:24 +0000 Subject: [PATCH 07/31] chore: bump package version to 0.1.14-beta.0 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index ab6b82b51..e57c1097f 100644 --- a/package.json +++ b/package.json @@ -7,7 +7,7 @@ "productName": "TheNextWave", "description": "An Open-Source, AI-Native, Terminal Built for Seamless Workflows", "license": "Apache-2.0", - "version": "0.1.13", + "version": "0.1.14-beta.0", "homepage": "https://waveterm.dev", "build": { "appId": "dev.commandline.thenextwave" From d2366df9dbd582cff8e6479ce1f66403e38bca7f Mon Sep 17 00:00:00 2001 From: Mike Sawka Date: Thu, 19 Sep 2024 10:42:53 -0700 Subject: [PATCH 08/31] updated ws loading code (#397) --- emain/emain.ts | 3 ++- frontend/app/store/ws.ts | 35 +++++++++++++++++--------------- frontend/app/store/wshrpcutil.ts | 6 +++--- package.json | 2 ++ yarn.lock | 33 ++++++++++++++++++++++++++++++ 5 files changed, 59 insertions(+), 20 deletions(-) diff --git a/emain/emain.ts b/emain/emain.ts index 5138cb19a..dbc26ac0e 100644 --- a/emain/emain.ts +++ b/emain/emain.ts @@ -12,6 +12,7 @@ import { sprintf } from "sprintf-js"; import { debounce } from "throttle-debounce"; import * as util from "util"; import winston from "winston"; +import { WebSocket as NodeWebSocket } from "ws"; import { initGlobal } from "../frontend/app/store/global"; import * as services from "../frontend/app/store/services"; import { initElectronWshrpc } from "../frontend/app/store/wshrpcutil"; @@ -861,7 +862,7 @@ async function appMain() { await configureAutoUpdater(); setTimeout(runActiveTimer, 5000); // start active timer, wait 5s just to be safe try { - initElectronWshrpc(ElectronWshClient, AuthKey); + initElectronWshrpc(ElectronWshClient, { authKey: AuthKey, wsImpl: NodeWebSocket }); } catch (e) { console.log("error initializing wshrpc", e); } diff --git a/frontend/app/store/ws.ts b/frontend/app/store/ws.ts index 5062af8f6..120577d4d 100644 --- a/frontend/app/store/ws.ts +++ b/frontend/app/store/ws.ts @@ -3,18 +3,10 @@ import debug from "debug"; import { sprintf } from "sprintf-js"; -import type { WebSocket as ElectronWebSocketType } from "ws"; +import type { WebSocket as NodeWebSocketType } from "ws"; -let ElectronWebSocket: typeof ElectronWebSocketType; const AuthKeyHeader = "X-AuthKey"; -if (typeof window === "undefined") { - try { - const WebSocket = require("ws") as typeof ElectronWebSocketType; - ElectronWebSocket = WebSocket; - } catch (e) {} -} - const dlog = debug("wave:ws"); const WarnWebSocketSendSize = 1024 * 1024; // 1MB @@ -34,8 +26,13 @@ function removeWSReconnectHandler(handler: () => void) { type WSEventCallback = (arg0: WSEventType) => void; +type ElectronOverrideOpts = { + wsImpl: typeof NodeWebSocketType; + authKey: string; +}; + class WSControl { - wsConn: WebSocket | ElectronWebSocketType; + wsConn: WebSocket | NodeWebSocketType; open: boolean; opening: boolean = false; reconnectTimes: number = 0; @@ -47,14 +44,19 @@ class WSControl { wsLog: string[] = []; baseHostPort: string; lastReconnectTime: number = 0; - authKey: string = null; // used only by electron + eoOpts: ElectronOverrideOpts; - constructor(baseHostPort: string, windowId: string, messageCallback: WSEventCallback, authKey?: string) { + constructor( + baseHostPort: string, + windowId: string, + messageCallback: WSEventCallback, + electronOverrideOpts?: ElectronOverrideOpts + ) { this.baseHostPort = baseHostPort; this.messageCallback = messageCallback; this.windowId = windowId; this.open = false; - this.authKey = authKey; + this.eoOpts = electronOverrideOpts; setInterval(this.sendPing.bind(this), 5000); } @@ -65,9 +67,9 @@ class WSControl { this.lastReconnectTime = Date.now(); dlog("try reconnect:", desc); this.opening = true; - if (ElectronWebSocket) { - this.wsConn = new ElectronWebSocket(this.baseHostPort + "/ws?windowid=" + this.windowId, { - headers: { [AuthKeyHeader]: this.authKey }, + if (this.eoOpts) { + this.wsConn = new this.eoOpts.wsImpl(this.baseHostPort + "/ws?windowid=" + this.windowId, { + headers: { [AuthKeyHeader]: this.eoOpts.authKey }, }); } else { this.wsConn = new WebSocket(this.baseHostPort + "/ws?windowid=" + this.windowId); @@ -208,3 +210,4 @@ class WSControl { } export { addWSReconnectHandler, removeWSReconnectHandler, WSControl }; +export type { ElectronOverrideOpts }; diff --git a/frontend/app/store/wshrpcutil.ts b/frontend/app/store/wshrpcutil.ts index 1f5c1c797..69c4bac73 100644 --- a/frontend/app/store/wshrpcutil.ts +++ b/frontend/app/store/wshrpcutil.ts @@ -5,7 +5,7 @@ import { wpsReconnectHandler } from "@/app/store/wps"; import { WshClient } from "@/app/store/wshclient"; import { makeWindowRouteId, WshRouter } from "@/app/store/wshrouter"; import { getWSServerEndpoint } from "@/util/endpoints"; -import { addWSReconnectHandler, WSControl } from "./ws"; +import { addWSReconnectHandler, ElectronOverrideOpts, WSControl } from "./ws"; let globalWS: WSControl; let DefaultRouter: WshRouter; @@ -114,12 +114,12 @@ if (globalThis.window != null) { globalThis["consumeGenerator"] = consumeGenerator; } -function initElectronWshrpc(electronClient: WshClient, authKey: string) { +function initElectronWshrpc(electronClient: WshClient, eoOpts: ElectronOverrideOpts) { DefaultRouter = new WshRouter(new UpstreamWshRpcProxy()); const handleFn = (event: WSEventType) => { DefaultRouter.recvRpcMessage(event.data); }; - globalWS = new WSControl(getWSServerEndpoint(), "electron", handleFn, authKey); + globalWS = new WSControl(getWSServerEndpoint(), "electron", handleFn, eoOpts); globalWS.connectNow("connectWshrpc"); DefaultRouter.registerRoute(electronClient.routeId, electronClient); addWSReconnectHandler(() => { diff --git a/package.json b/package.json index e57c1097f..855071128 100644 --- a/package.json +++ b/package.json @@ -93,6 +93,7 @@ "@xterm/addon-webgl": "^0.18.0", "@xterm/xterm": "^5.5.0", "base64-js": "^1.5.1", + "bufferutil": "^4.0.8", "clsx": "^2.1.1", "color": "^4.2.3", "css-tree": "^3.0.0", @@ -128,6 +129,7 @@ "throttle-debounce": "^5.0.2", "tinycolor2": "^1.6.0", "use-device-pixel-ratio": "^1.1.2", + "utf-8-validate": "^6.0.4", "winston": "^3.14.2", "ws": "^8.18.0" }, diff --git a/yarn.lock b/yarn.lock index 9bc8a1fbe..ff58aebf6 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3467,6 +3467,16 @@ __metadata: languageName: node linkType: hard +"bufferutil@npm:^4.0.8": + version: 4.0.8 + resolution: "bufferutil@npm:4.0.8" + dependencies: + node-gyp: "npm:latest" + node-gyp-build: "npm:^4.3.0" + checksum: 10c0/36cdc5b53a38d9f61f89fdbe62029a2ebcd020599862253fefebe31566155726df9ff961f41b8c97b02b4c12b391ef97faf94e2383392654cf8f0ed68f76e47c + languageName: node + linkType: hard + "builder-util-runtime@npm:9.2.5": version: 9.2.5 resolution: "builder-util-runtime@npm:9.2.5" @@ -8276,6 +8286,17 @@ __metadata: languageName: node linkType: hard +"node-gyp-build@npm:^4.3.0": + version: 4.8.2 + resolution: "node-gyp-build@npm:4.8.2" + bin: + node-gyp-build: bin.js + node-gyp-build-optional: optional.js + node-gyp-build-test: build-test.js + checksum: 10c0/d816b43974d31d6257b6e87d843f2626c72389a285208394bc57a7766b210454d2642860a5e5b5c333d8ecabaeabad3b31b94f58cf8ca1aabdef0c320d02baaa + languageName: node + linkType: hard + "node-gyp@npm:^9.0.0": version: 9.4.1 resolution: "node-gyp@npm:9.4.1" @@ -10228,6 +10249,7 @@ __metadata: "@xterm/addon-webgl": "npm:^0.18.0" "@xterm/xterm": "npm:^5.5.0" base64-js: "npm:^1.5.1" + bufferutil: "npm:^4.0.8" clsx: "npm:^2.1.1" color: "npm:^4.2.3" css-tree: "npm:^3.0.0" @@ -10280,6 +10302,7 @@ __metadata: typescript: "npm:^5.6.2" typescript-eslint: "npm:^8.5.0" use-device-pixel-ratio: "npm:^1.1.2" + utf-8-validate: "npm:^6.0.4" vite: "npm:^5.4.6" vite-plugin-image-optimizer: "npm:^1.1.8" vite-plugin-static-copy: "npm:^1.0.6" @@ -10810,6 +10833,16 @@ __metadata: languageName: node linkType: hard +"utf-8-validate@npm:^6.0.4": + version: 6.0.4 + resolution: "utf-8-validate@npm:6.0.4" + dependencies: + node-gyp: "npm:latest" + node-gyp-build: "npm:^4.3.0" + checksum: 10c0/f7042d94aec6ca02461b64e725bdc7262266610dbb787331e5bbd49374ef6f75fe9900600df3fc63d97906c23614a965c8989b4bf95d70bf35dc617da99215e7 + languageName: node + linkType: hard + "utf8-byte-length@npm:^1.0.1": version: 1.0.5 resolution: "utf8-byte-length@npm:1.0.5" From a50431ce2bcdaac1f91b2b1b9e94b29f676aea56 Mon Sep 17 00:00:00 2001 From: Red J Adaya Date: Fri, 20 Sep 2024 01:43:32 +0800 Subject: [PATCH 09/31] fix link styles regression in about modal (#400) --- frontend/app/element/linkbutton.less | 15 --------------- frontend/app/element/linkbutton.tsx | 2 +- frontend/app/modals/about.less | 14 +++++++++----- frontend/app/modals/about.tsx | 2 +- 4 files changed, 11 insertions(+), 22 deletions(-) diff --git a/frontend/app/element/linkbutton.less b/frontend/app/element/linkbutton.less index bb6827008..d58ca0e22 100644 --- a/frontend/app/element/linkbutton.less +++ b/frontend/app/element/linkbutton.less @@ -3,19 +3,4 @@ &.link-button { text-decoration: none; - - .button-inner { - display: flex; - border-radius: 6px; - padding: 8px 12px; - background-color: var(--button-grey-bg); - border: 1px solid var(--button-grey-border-color); - color: var(--button-grey-text-color); - i { - margin-right: 4px; - } - &:hover { - color: var(--button-grey-text-color); - } - } } diff --git a/frontend/app/element/linkbutton.tsx b/frontend/app/element/linkbutton.tsx index 4918024fc..00de26c63 100644 --- a/frontend/app/element/linkbutton.tsx +++ b/frontend/app/element/linkbutton.tsx @@ -24,7 +24,7 @@ interface LinkButtonProps { const LinkButton = ({ leftIcon, rightIcon, children, className, ...rest }: LinkButtonProps) => { return ( - + {leftIcon && {leftIcon}} {children} diff --git a/frontend/app/modals/about.less b/frontend/app/modals/about.less index 9b4a2b302..49a9ae7c4 100644 --- a/frontend/app/modals/about.less +++ b/frontend/app/modals/about.less @@ -2,14 +2,14 @@ // SPDX-License-Identifier: Apache-2.0 .about-modal { - width: 445px; padding-bottom: 34px; - .modal-content { + .content-wrapper .modal-content { margin-bottom: 0; display: flex; flex-direction: column; align-items: flex-start; + padding: 0px 0px; gap: 24px; .section-wrapper { @@ -43,15 +43,19 @@ } } - .section:nth-child(3) { + .section.links { display: flex; align-items: flex-start; - gap: 7px; + gap: 10px; - .wave-button-link { + .button { display: flex; align-items: center; + .icon-left { + margin-right: 5px; + } + i { font-size: 16px; } diff --git a/frontend/app/modals/about.tsx b/frontend/app/modals/about.tsx index df697935f..e75a5c2ab 100644 --- a/frontend/app/modals/about.tsx +++ b/frontend/app/modals/about.tsx @@ -36,7 +36,7 @@ const AboutModal = ({}: AboutModalProps) => {
Update Channel: {updaterChannel} -
+
Date: Fri, 20 Sep 2024 01:44:12 +0800 Subject: [PATCH 10/31] use css vars for button colors (#399) --- frontend/app/element/button.less | 70 ++++++++++++++++---------------- frontend/app/theme.less | 20 ++++----- 2 files changed, 45 insertions(+), 45 deletions(-) diff --git a/frontend/app/element/button.less b/frontend/app/element/button.less index 96d2da031..dc383dbe2 100644 --- a/frontend/app/element/button.less +++ b/frontend/app/element/button.less @@ -1,5 +1,5 @@ -/* Copyright 2024, Command Line Inc. */ -/* SPDX-License-Identifier: Apache-2.0 */ +// Copyright 2024, Command Line Inc. +// SPDX-License-Identifier: Apache-2.0 .button { // override default button appearance @@ -26,41 +26,41 @@ &.solid { &.green { - color: #000000; + color: var(--button-text-color); background-color: var(--accent-color); - border: 1px solid #29f200; + border: 1px solid var(--button-green-border-color); &:hover { - color: #000000; - background-color: #29f200; + color: var(--button-text-color); + background-color: var(--button-green-border-color); } } &.grey { - background-color: rgba(255, 255, 255, 0.04); - border: 1px solid rgba(255, 255, 255, 0.1); + background-color: var(--button-grey-bg); + border: 1px solid var(--button-grey-bg); color: var(--main-text-color); &:hover { color: var(--main-text-color); - background-color: rgba(255, 255, 255, 0.09); + background-color: var(--button-grey-hover-bg); } } &.red { - background-color: #cc0000; - border: 1px solid #fc3131; + background-color: var(--button-red-bg); + border: 1px solid var(--button-red-border-color); color: var(--main-text-color); &:hover { - background-color: #f93939; + background-color: var(--button-red-hover-bg); } } &.yellow { - color: #000000; - background-color: #c4a000; - border: 1px solid #fce94f; + color: var(--button-text-color); + background-color: var(--button-yellow-bg); + border: 1px solid var(--button-yellow-hover-bg); &:hover { - color: #000000; - background-color: #fce94f; + color: var(--button-text-color); + background-color: var(--button-yellow-hover-bg); } } } @@ -71,14 +71,14 @@ color: var(--accent-color); border: 1px solid var(--accent-color); &:hover { - color: #29f200; - border: 1px solid #29f200; + color: var(--button-green-border-color); + border: 1px solid var(--button-green-border-color); } } &.grey { - border: 1px solid rgba(255, 255, 255, 0.6); - color: rgba(255, 255, 255, 0.6); + border: 1px solid var(--button-grey-outlined-color); + color: var(--button-grey-outlined-color); &:hover { color: var(--main-text-color); border: 1px solid var(--main-text-color); @@ -86,20 +86,20 @@ } &.red { - border: 1px solid #cc0000; - color: #cc0000; + border: 1px solid var(--button-red-bg); + color: var(--button-red-bg); &:hover { - color: #ff3c3c; - border: 1px solid #ff3c3c; + color: var(--button-red-outlined-color); + border: 1px solid var(--button-red-outlined-color); } } &.yellow { - color: #c4a000; - border: 1px solid #c4a000; + color: var(--button-yellow-bg); + border: 1px solid var(--button-yellow-bg); &:hover { - color: #fce94f; - border: 1px solid #fce94f; + color: var(--button-yellow-hover-bg); + border: 1px solid var(--button-yellow-hover-bg); } } } @@ -115,13 +115,13 @@ border: none; color: var(--accent-color); &:hover { - color: #29f200; + color: var(--button-green-border-color); } } &.grey { border: none; - color: rgba(255, 255, 255, 0.6); + color: var(--button-grey-outlined-color); &:hover { color: var(--main-text-color); } @@ -129,17 +129,17 @@ &.red { border: none; - color: #cc0000; + color: var(--button-red-bg); &:hover { - color: #fc3131; + color: var(--button-red-border-color); } } &.yellow { border: none; - color: #c4a000; + color: var(--button-yellow-bg); &:hover { - color: #fce94f; + color: var(--button-yellow-hover-bg); } } } diff --git a/frontend/app/theme.less b/frontend/app/theme.less index 87b61c6a8..9af1cf070 100644 --- a/frontend/app/theme.less +++ b/frontend/app/theme.less @@ -133,17 +133,17 @@ --term-cursor-accent: #000000; // button colors - --button-focus-border-color: rgba(88, 193, 66, 0.5); - --button-green-text-color: var(--term-black); + --button-text-color: #000000; --button-green-bg: var(--term-green); - --button-green-border-color: rgb(26, 52, 21); - --button-grey-text-color: var(--main-text-color); + --button-green-border-color: #29f200; --button-grey-bg: rgba(255, 255, 255, 0.04); + --button-grey-hover-bg: rgba(255, 255, 255, 0.09); --button-grey-border-color: rgba(255, 255, 255, 0.1); - --button-red-text-color: var(--main-text-color); - --button-red-bg: var(--term-red); - --button-red-border-color: #ff1818; - --button-yellow-text-color: var(--term-black); - --button-yellow-bg: var(--term-yellow); - --button-yellow-border-color: #fbd93f; + --button-grey-outlined-color: rgba(255, 255, 255, 0.6); + --button-red-bg: #cc0000; + --button-red-hover-bg: #f93939; + --button-red-border-color: #fc3131; + --button-red-outlined-color: #ff3c3c; + --button-yellow-bg: #c4a000; + --button-yellow-hover-bg: #fce94f; } From 43ce3415da98a61d21dd597b025b2ab8119996ee Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 19 Sep 2024 10:49:06 -0700 Subject: [PATCH 11/31] Bump github.com/golang-migrate/migrate/v4 from 4.17.1 to 4.18.1 (#376) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Bumps [github.com/golang-migrate/migrate/v4](https://github.com/golang-migrate/migrate) from 4.17.1 to 4.18.1.
Release notes

Sourced from github.com/golang-migrate/migrate/v4's releases.

v4.18.1

Changes

  • Update dktest from v0.4.2 to v0.4.3

Full Changelog: https://github.com/golang-migrate/migrate/compare/v4.18.0...v4.18.1

v4.18.0

What's Changed

A special thanks to @​joschi fixing tests and builds!

New Contributors

Full Changelog: https://github.com/golang-migrate/migrate/compare/v4.17.1...v4.17.2

Commits
  • 555501f Update dktest from v0.4.2 to v0.4.3
  • d5eb594 Merge pull request #1101 from adityassharma-ss/patch-1
  • 67c71f9 Merge pull request #1152 from golang-migrate/dependabot/go_modules/google.gol...
  • 1e02b42 Merge pull request #1119 from muzammilar/add-noble-numbat
  • 5b6f623 Bump google.golang.org/grpc from 1.64.0 to 1.64.1
  • ddd7fa6 Merge pull request #1127 from joschi/tests-mysql-9
  • 7e8f6be Merge pull request #1126 from joschi/tests-postgres-16
  • 65a3bd5 Merge pull request #1153 from joschi/fix-docker-imports
  • e40e64c Merge pull request #1133 from joschi/go-1.23
  • 6ceb5a9 fix(tests): fix Docker imports
  • Additional commits viewable in compare view

[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=github.com/golang-migrate/migrate/v4&package-manager=go_modules&previous-version=4.17.1&new-version=4.18.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) ---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- go.mod | 6 +++--- go.sum | 12 ++++++------ 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/go.mod b/go.mod index cfa26ed52..81a71f90d 100644 --- a/go.mod +++ b/go.mod @@ -7,7 +7,7 @@ require ( github.com/creack/pty v1.1.21 github.com/fsnotify/fsnotify v1.7.0 github.com/golang-jwt/jwt/v5 v5.2.1 - github.com/golang-migrate/migrate/v4 v4.17.1 + github.com/golang-migrate/migrate/v4 v4.18.1 github.com/google/uuid v1.6.0 github.com/gorilla/handlers v1.5.2 github.com/gorilla/mux v1.8.1 @@ -27,7 +27,7 @@ require ( ) require ( - github.com/felixge/httpsnoop v1.0.3 // indirect + github.com/felixge/httpsnoop v1.0.4 // indirect github.com/go-ole/go-ole v1.2.6 // indirect github.com/hashicorp/errwrap v1.1.0 // indirect github.com/hashicorp/go-multierror v1.1.1 // indirect @@ -40,7 +40,7 @@ require ( github.com/tklauser/numcpus v0.6.1 // indirect github.com/yusufpapurcu/wmi v1.2.4 // indirect go.uber.org/atomic v1.7.0 // indirect - golang.org/x/net v0.27.0 // indirect + golang.org/x/net v0.29.0 // indirect golang.org/x/sys v0.25.0 // indirect ) diff --git a/go.sum b/go.sum index 548a6dbea..ddd635385 100644 --- a/go.sum +++ b/go.sum @@ -6,8 +6,8 @@ github.com/cpuguy83/go-md2man/v2 v2.0.4/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46t github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= -github.com/felixge/httpsnoop v1.0.3 h1:s/nj+GCswXYzN5v2DpNMuMQYe+0DDwt5WVCU6CWBdXk= -github.com/felixge/httpsnoop v1.0.3/go.mod h1:m8KPJKqk1gH5J9DgRY2ASl2lWCfGKXixSwevea8zH2U= +github.com/felixge/httpsnoop v1.0.4 h1:NFTV2Zj1bL4mc9sqWACXbQFVBBg2W3GPvqp8/ESS2Wg= +github.com/felixge/httpsnoop v1.0.4/go.mod h1:m8KPJKqk1gH5J9DgRY2ASl2lWCfGKXixSwevea8zH2U= github.com/fsnotify/fsnotify v1.7.0 h1:8JEhPFa5W2WU7YfeZzPNqzMP6Lwt7L2715Ggo0nosvA= github.com/fsnotify/fsnotify v1.7.0/go.mod h1:40Bi/Hjc2AVfZrqy+aj+yEI+/bRxZnMJyTJwOpGvigM= github.com/go-ole/go-ole v1.2.6 h1:/Fpf6oFPoeFik9ty7siob0G6Ke8QvQEuVcuChpwXzpY= @@ -16,8 +16,8 @@ github.com/go-sql-driver/mysql v1.8.1 h1:LedoTUt/eveggdHS9qUFC1EFSa8bU2+1pZjSRpv github.com/go-sql-driver/mysql v1.8.1/go.mod h1:wEBSXgmK//2ZFJyE+qWnIsVGmvmEKlqwuVSjsCm7DZg= github.com/golang-jwt/jwt/v5 v5.2.1 h1:OuVbFODueb089Lh128TAcimifWaLhJwVflnrgM17wHk= github.com/golang-jwt/jwt/v5 v5.2.1/go.mod h1:pqrtFR0X4osieyHYxtmOUWsAWrfe1Q5UVIyoH402zdk= -github.com/golang-migrate/migrate/v4 v4.17.1 h1:4zQ6iqL6t6AiItphxJctQb3cFqWiSpMnX7wLTPnnYO4= -github.com/golang-migrate/migrate/v4 v4.17.1/go.mod h1:m8hinFyWBn0SA4QKHuKh175Pm9wjmxj3S2Mia7dbXzM= +github.com/golang-migrate/migrate/v4 v4.18.1 h1:JML/k+t4tpHCpQTCAD62Nu43NUFzHY4CV3uAuvHGC+Y= +github.com/golang-migrate/migrate/v4 v4.18.1/go.mod h1:HAX6m3sQgcdO81tdjn5exv20+3Kb13cmGli1hrD6hks= github.com/google/go-cmp v0.5.6/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI= github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= @@ -89,8 +89,8 @@ go.uber.org/atomic v1.7.0 h1:ADUqmZGgLDDfbSL9ZmPxKTybcoEYHgpYfELNoN+7hsw= go.uber.org/atomic v1.7.0/go.mod h1:fEN4uk6kAWBTFdckzkM89CLk9XfWZrxpCo0nPH17wJc= golang.org/x/crypto v0.27.0 h1:GXm2NjJrPaiv/h1tb2UH8QfgC/hOf/+z0p6PT8o1w7A= golang.org/x/crypto v0.27.0/go.mod h1:1Xngt8kV6Dvbssa53Ziq6Eqn0HqbZi5Z6R0ZpwQzt70= -golang.org/x/net v0.27.0 h1:5K3Njcw06/l2y9vpGCSdcxWOYHOUk3dVNGDXN+FvAys= -golang.org/x/net v0.27.0/go.mod h1:dDi0PyhWNoiUOrAS8uXv/vnScO4wnHQO4mj9fn/RytE= +golang.org/x/net v0.29.0 h1:5ORfpBpCs4HzDYoodCDBbwHzdR5UrLBZ3sOnUJmFoHo= +golang.org/x/net v0.29.0/go.mod h1:gLkgy8jTGERgjzMic6DS9+SP0ajcu6Xu3Orq/SpETg0= golang.org/x/sys v0.0.0-20190916202348-b4ddaad3f8a3/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20201204225414-ed752295db88/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20220721230656-c6bc011c0c49/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= From 4c3496c5e1fe9a11734593a6f8f086ba55ed4515 Mon Sep 17 00:00:00 2001 From: Evan Simkowitz Date: Thu, 19 Sep 2024 10:53:06 -0700 Subject: [PATCH 12/31] Fix WebSocket compatibility with Rollup (#398) --- frontend/app/store/ws.ts | 18 ++++++------------ frontend/util/wsutil.ts | 26 ++++++++++++++++++++++++++ 2 files changed, 32 insertions(+), 12 deletions(-) create mode 100644 frontend/util/wsutil.ts diff --git a/frontend/app/store/ws.ts b/frontend/app/store/ws.ts index 120577d4d..31ec28109 100644 --- a/frontend/app/store/ws.ts +++ b/frontend/app/store/ws.ts @@ -1,9 +1,9 @@ // Copyright 2024, Command Line Inc. // SPDX-License-Identifier: Apache-2.0 +import { type WebSocket, newWebSocket } from "@/util/wsutil"; import debug from "debug"; import { sprintf } from "sprintf-js"; -import type { WebSocket as NodeWebSocketType } from "ws"; const AuthKeyHeader = "X-AuthKey"; @@ -27,12 +27,11 @@ function removeWSReconnectHandler(handler: () => void) { type WSEventCallback = (arg0: WSEventType) => void; type ElectronOverrideOpts = { - wsImpl: typeof NodeWebSocketType; authKey: string; }; class WSControl { - wsConn: WebSocket | NodeWebSocketType; + wsConn: WebSocket; open: boolean; opening: boolean = false; reconnectTimes: number = 0; @@ -67,13 +66,9 @@ class WSControl { this.lastReconnectTime = Date.now(); dlog("try reconnect:", desc); this.opening = true; - if (this.eoOpts) { - this.wsConn = new this.eoOpts.wsImpl(this.baseHostPort + "/ws?windowid=" + this.windowId, { - headers: { [AuthKeyHeader]: this.eoOpts.authKey }, - }); - } else { - this.wsConn = new WebSocket(this.baseHostPort + "/ws?windowid=" + this.windowId); - } + this.wsConn = newWebSocket(this.baseHostPort + "/ws?windowid=" + this.windowId, { + [AuthKeyHeader]: this.eoOpts.authKey, + }); this.wsConn.onopen = this.onopen.bind(this); this.wsConn.onmessage = this.onmessage.bind(this); this.wsConn.onclose = this.onclose.bind(this); @@ -209,5 +204,4 @@ class WSControl { } } -export { addWSReconnectHandler, removeWSReconnectHandler, WSControl }; -export type { ElectronOverrideOpts }; +export { WSControl, addWSReconnectHandler, removeWSReconnectHandler }; diff --git a/frontend/util/wsutil.ts b/frontend/util/wsutil.ts new file mode 100644 index 000000000..d6908d388 --- /dev/null +++ b/frontend/util/wsutil.ts @@ -0,0 +1,26 @@ +import type { WebSocket as NodeWebSocketType } from "ws"; + +let NodeWebSocket: typeof NodeWebSocketType = null; + +if (typeof window === "undefined") { + try { + // Necessary to avoid issues with Rollup: https://github.com/websockets/ws/issues/2057 + process.env.WS_NO_BUFFER_UTIL = "1"; + import("ws").then((ws) => (NodeWebSocket = ws.default)); + } catch (error) { + console.log("Error importing 'ws':", error); + } +} + +type ComboWebSocket = NodeWebSocketType | WebSocket; + +function newWebSocket(url: string, headers: { [key: string]: string }): ComboWebSocket { + if (NodeWebSocket) { + return new NodeWebSocket(url, { headers }); + } else { + return new WebSocket(url); + } +} + +export { newWebSocket }; +export type { ComboWebSocket as WebSocket }; From 370ea132fe94bda32a234fa1d06d728bf9b74b88 Mon Sep 17 00:00:00 2001 From: Evan Simkowitz Date: Thu, 19 Sep 2024 11:04:18 -0700 Subject: [PATCH 13/31] Save update channel to user setting automatically (#401) When a user first launches Wave, we will read the updater config and store the channel as a user setting for use on future launches. This should ensure that if a user on a beta channel gets updated to a latest release, they will still be subscribed to beta releases going forward. If a user manually updates the user setting, it will be honored. --------- Co-authored-by: sawka --- emain/emain-wsh.ts | 6 ++++++ emain/emain.ts | 9 ++++----- emain/updater.ts | 31 +++++++++++++++++++++++++++---- frontend/app/store/ws.ts | 13 +++++++++---- package.json | 3 ++- yarn.lock | 10 ++++++++++ 6 files changed, 58 insertions(+), 14 deletions(-) diff --git a/emain/emain-wsh.ts b/emain/emain-wsh.ts index 45812456e..6c95ad0d3 100644 --- a/emain/emain-wsh.ts +++ b/emain/emain-wsh.ts @@ -29,3 +29,9 @@ export class ElectronWshClientType extends WshClient { return rtn; } } + +export let ElectronWshClient: ElectronWshClientType; + +export function initElectronWshClient() { + ElectronWshClient = new ElectronWshClientType(); +} diff --git a/emain/emain.ts b/emain/emain.ts index dbc26ac0e..9447e90c9 100644 --- a/emain/emain.ts +++ b/emain/emain.ts @@ -12,7 +12,6 @@ import { sprintf } from "sprintf-js"; import { debounce } from "throttle-debounce"; import * as util from "util"; import winston from "winston"; -import { WebSocket as NodeWebSocket } from "ws"; import { initGlobal } from "../frontend/app/store/global"; import * as services from "../frontend/app/store/services"; import { initElectronWshrpc } from "../frontend/app/store/wshrpcutil"; @@ -21,7 +20,7 @@ import { fetch } from "../frontend/util/fetchutil"; import * as keyutil from "../frontend/util/keyutil"; import { fireAndForget } from "../frontend/util/util"; import { AuthKey, AuthKeyEnv, configureAuthKeyRequestInjection } from "./authkey"; -import { ElectronWshClientType } from "./emain-wsh"; +import { ElectronWshClient, initElectronWshClient } from "./emain-wsh"; import { getAppMenu } from "./menu"; import { getElectronAppBasePath, @@ -36,7 +35,6 @@ import { } from "./platform"; import { configureAutoUpdater, updater } from "./updater"; -let ElectronWshClient = new ElectronWshClientType(); const electronApp = electron.app; let WaveVersion = "unknown"; // set by WAVESRV-ESTART let WaveBuildTime = 0; // set by WAVESRV-ESTART @@ -859,13 +857,14 @@ async function appMain() { await electronApp.whenReady(); configureAuthKeyRequestInjection(electron.session.defaultSession); await relaunchBrowserWindows(); - await configureAutoUpdater(); setTimeout(runActiveTimer, 5000); // start active timer, wait 5s just to be safe try { - initElectronWshrpc(ElectronWshClient, { authKey: AuthKey, wsImpl: NodeWebSocket }); + initElectronWshClient(); + initElectronWshrpc(ElectronWshClient, { authKey: AuthKey }); } catch (e) { console.log("error initializing wshrpc", e); } + await configureAutoUpdater(); globalIsStarting = false; diff --git a/emain/updater.ts b/emain/updater.ts index f04f2753f..d68ff1752 100644 --- a/emain/updater.ts +++ b/emain/updater.ts @@ -1,14 +1,37 @@ // Copyright 2024, Command Line Inc. // SPDX-License-Identifier: Apache-2.0 +import { RpcApi } from "@/app/store/wshclientapi"; import { BrowserWindow, dialog, ipcMain, Notification } from "electron"; import { autoUpdater } from "electron-updater"; +import { readFileSync } from "fs"; +import path from "path"; +import YAML from "yaml"; import { FileService } from "../frontend/app/store/services"; import { isDev } from "../frontend/util/isdev"; import { fireAndForget } from "../frontend/util/util"; +import { ElectronWshClient } from "./emain-wsh"; export let updater: Updater; +function getUpdateChannel(settings: SettingsType): string { + const updaterConfigPath = path.join(process.resourcesPath!, "app-update.yml"); + const updaterConfig = YAML.parse(readFileSync(updaterConfigPath, { encoding: "utf8" }).toString()); + console.log("Updater config from binary:", updaterConfig); + const updaterChannel: string = updaterConfig.channel ?? "latest"; + const settingsChannel = settings["autoupdate:channel"]; + let retVal = settingsChannel; + + // If the user setting doesn't exist yet, set it to the value of the updater config. + if (!settingsChannel) { + console.log("Update channel setting does not exist, setting to value from updater config."); + RpcApi.SetConfigCommand(ElectronWshClient, { "autoupdate:channel": updaterChannel }); + retVal = updaterChannel; + } + console.log("Update channel:", retVal); + return retVal; +} + export class Updater { autoCheckInterval: NodeJS.Timeout | null; intervalms: number; @@ -20,7 +43,9 @@ export class Updater { constructor(settings: SettingsType) { this.intervalms = settings["autoupdate:intervalms"]; + console.log("Update check interval in milliseconds:", this.intervalms); this.autoCheckEnabled = settings["autoupdate:enabled"]; + console.log("Update check enabled:", this.autoCheckEnabled); this._status = "up-to-date"; this.lastUpdateCheck = new Date(0); @@ -28,12 +53,10 @@ export class Updater { this.availableUpdateReleaseName = null; autoUpdater.autoInstallOnAppQuit = settings["autoupdate:installonquit"]; + console.log("Install update on quit:", settings["autoupdate:installonquit"]); // Only update the release channel if it's specified, otherwise use the one configured in the updater. - const channel = settings["autoupdate:channel"]; - if (channel) { - autoUpdater.channel = channel; - } + autoUpdater.channel = getUpdateChannel(settings); autoUpdater.removeAllListeners(); diff --git a/frontend/app/store/ws.ts b/frontend/app/store/ws.ts index 31ec28109..258d2f6bf 100644 --- a/frontend/app/store/ws.ts +++ b/frontend/app/store/ws.ts @@ -66,9 +66,14 @@ class WSControl { this.lastReconnectTime = Date.now(); dlog("try reconnect:", desc); this.opening = true; - this.wsConn = newWebSocket(this.baseHostPort + "/ws?windowid=" + this.windowId, { - [AuthKeyHeader]: this.eoOpts.authKey, - }); + this.wsConn = newWebSocket( + this.baseHostPort + "/ws?windowid=" + this.windowId, + this.eoOpts + ? { + [AuthKeyHeader]: this.eoOpts.authKey, + } + : null + ); this.wsConn.onopen = this.onopen.bind(this); this.wsConn.onmessage = this.onmessage.bind(this); this.wsConn.onclose = this.onclose.bind(this); @@ -204,4 +209,4 @@ class WSControl { } } -export { WSControl, addWSReconnectHandler, removeWSReconnectHandler }; +export { WSControl, addWSReconnectHandler, removeWSReconnectHandler, type ElectronOverrideOpts }; diff --git a/package.json b/package.json index 855071128..21b16d011 100644 --- a/package.json +++ b/package.json @@ -131,7 +131,8 @@ "use-device-pixel-ratio": "^1.1.2", "utf-8-validate": "^6.0.4", "winston": "^3.14.2", - "ws": "^8.18.0" + "ws": "^8.18.0", + "yaml": "^2.5.1" }, "packageManager": "yarn@4.4.1" } diff --git a/yarn.lock b/yarn.lock index ff58aebf6..1e86a7f0a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -10311,6 +10311,7 @@ __metadata: vitest: "npm:^2.1.1" winston: "npm:^3.14.2" ws: "npm:^8.18.0" + yaml: "npm:^2.5.1" languageName: unknown linkType: soft @@ -11305,6 +11306,15 @@ __metadata: languageName: node linkType: hard +"yaml@npm:^2.5.1": + version: 2.5.1 + resolution: "yaml@npm:2.5.1" + bin: + yaml: bin.mjs + checksum: 10c0/40fba5682898dbeeb3319e358a968fe886509fab6f58725732a15f8dda3abac509f91e76817c708c9959a15f786f38ff863c1b88062d7c1162c5334a7d09cb4a + languageName: node + linkType: hard + "yargs-parser@npm:^21.1.1": version: 21.1.1 resolution: "yargs-parser@npm:21.1.1" From 02932109f342bfeda77f18af9e9d01b8aaf85c64 Mon Sep 17 00:00:00 2001 From: "wave-builder[bot]" <181805596+wave-builder[bot]@users.noreply.github.com> Date: Thu, 19 Sep 2024 18:09:57 +0000 Subject: [PATCH 14/31] chore: bump package version to 0.1.14-beta.1 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 21b16d011..4a249668f 100644 --- a/package.json +++ b/package.json @@ -7,7 +7,7 @@ "productName": "TheNextWave", "description": "An Open-Source, AI-Native, Terminal Built for Seamless Workflows", "license": "Apache-2.0", - "version": "0.1.14-beta.0", + "version": "0.1.14-beta.1", "homepage": "https://waveterm.dev", "build": { "appId": "dev.commandline.thenextwave" From 74cb6fc885aebd7d6079b6ee34be611ddfc1435f Mon Sep 17 00:00:00 2001 From: Evan Simkowitz Date: Thu, 19 Sep 2024 11:18:07 -0700 Subject: [PATCH 15/31] remove bufferutil --- package.json | 1 - yarn.lock | 11 ----------- 2 files changed, 12 deletions(-) diff --git a/package.json b/package.json index 4a249668f..adc2946e1 100644 --- a/package.json +++ b/package.json @@ -93,7 +93,6 @@ "@xterm/addon-webgl": "^0.18.0", "@xterm/xterm": "^5.5.0", "base64-js": "^1.5.1", - "bufferutil": "^4.0.8", "clsx": "^2.1.1", "color": "^4.2.3", "css-tree": "^3.0.0", diff --git a/yarn.lock b/yarn.lock index 1e86a7f0a..cf41a8d62 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3467,16 +3467,6 @@ __metadata: languageName: node linkType: hard -"bufferutil@npm:^4.0.8": - version: 4.0.8 - resolution: "bufferutil@npm:4.0.8" - dependencies: - node-gyp: "npm:latest" - node-gyp-build: "npm:^4.3.0" - checksum: 10c0/36cdc5b53a38d9f61f89fdbe62029a2ebcd020599862253fefebe31566155726df9ff961f41b8c97b02b4c12b391ef97faf94e2383392654cf8f0ed68f76e47c - languageName: node - linkType: hard - "builder-util-runtime@npm:9.2.5": version: 9.2.5 resolution: "builder-util-runtime@npm:9.2.5" @@ -10249,7 +10239,6 @@ __metadata: "@xterm/addon-webgl": "npm:^0.18.0" "@xterm/xterm": "npm:^5.5.0" base64-js: "npm:^1.5.1" - bufferutil: "npm:^4.0.8" clsx: "npm:^2.1.1" color: "npm:^4.2.3" css-tree: "npm:^3.0.0" From c92d3807e19d37f08638777658e3be5603d1237e Mon Sep 17 00:00:00 2001 From: "wave-builder[bot]" <181805596+wave-builder[bot]@users.noreply.github.com> Date: Thu, 19 Sep 2024 18:19:09 +0000 Subject: [PATCH 16/31] chore: bump package version to 0.1.14-beta.2 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index adc2946e1..75ef37895 100644 --- a/package.json +++ b/package.json @@ -7,7 +7,7 @@ "productName": "TheNextWave", "description": "An Open-Source, AI-Native, Terminal Built for Seamless Workflows", "license": "Apache-2.0", - "version": "0.1.14-beta.1", + "version": "0.1.14-beta.2", "homepage": "https://waveterm.dev", "build": { "appId": "dev.commandline.thenextwave" From fa51ef6081d6a70111f46ed9ef1ef8e361598c93 Mon Sep 17 00:00:00 2001 From: Evan Simkowitz Date: Thu, 19 Sep 2024 11:33:25 -0700 Subject: [PATCH 17/31] remove utf-8-validate --- package.json | 1 - yarn.lock | 22 ---------------------- 2 files changed, 23 deletions(-) diff --git a/package.json b/package.json index 75ef37895..32ccc67ff 100644 --- a/package.json +++ b/package.json @@ -128,7 +128,6 @@ "throttle-debounce": "^5.0.2", "tinycolor2": "^1.6.0", "use-device-pixel-ratio": "^1.1.2", - "utf-8-validate": "^6.0.4", "winston": "^3.14.2", "ws": "^8.18.0", "yaml": "^2.5.1" diff --git a/yarn.lock b/yarn.lock index cf41a8d62..91c571cac 100644 --- a/yarn.lock +++ b/yarn.lock @@ -8276,17 +8276,6 @@ __metadata: languageName: node linkType: hard -"node-gyp-build@npm:^4.3.0": - version: 4.8.2 - resolution: "node-gyp-build@npm:4.8.2" - bin: - node-gyp-build: bin.js - node-gyp-build-optional: optional.js - node-gyp-build-test: build-test.js - checksum: 10c0/d816b43974d31d6257b6e87d843f2626c72389a285208394bc57a7766b210454d2642860a5e5b5c333d8ecabaeabad3b31b94f58cf8ca1aabdef0c320d02baaa - languageName: node - linkType: hard - "node-gyp@npm:^9.0.0": version: 9.4.1 resolution: "node-gyp@npm:9.4.1" @@ -10291,7 +10280,6 @@ __metadata: typescript: "npm:^5.6.2" typescript-eslint: "npm:^8.5.0" use-device-pixel-ratio: "npm:^1.1.2" - utf-8-validate: "npm:^6.0.4" vite: "npm:^5.4.6" vite-plugin-image-optimizer: "npm:^1.1.8" vite-plugin-static-copy: "npm:^1.0.6" @@ -10823,16 +10811,6 @@ __metadata: languageName: node linkType: hard -"utf-8-validate@npm:^6.0.4": - version: 6.0.4 - resolution: "utf-8-validate@npm:6.0.4" - dependencies: - node-gyp: "npm:latest" - node-gyp-build: "npm:^4.3.0" - checksum: 10c0/f7042d94aec6ca02461b64e725bdc7262266610dbb787331e5bbd49374ef6f75fe9900600df3fc63d97906c23614a965c8989b4bf95d70bf35dc617da99215e7 - languageName: node - linkType: hard - "utf8-byte-length@npm:^1.0.1": version: 1.0.5 resolution: "utf8-byte-length@npm:1.0.5" From af269fcc8c6b899e8fb4dcab5e99c3f72f894c09 Mon Sep 17 00:00:00 2001 From: "wave-builder[bot]" <181805596+wave-builder[bot]@users.noreply.github.com> Date: Thu, 19 Sep 2024 18:35:45 +0000 Subject: [PATCH 18/31] chore: bump package version to 0.1.14-beta.3 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 32ccc67ff..c0d8e37a8 100644 --- a/package.json +++ b/package.json @@ -7,7 +7,7 @@ "productName": "TheNextWave", "description": "An Open-Source, AI-Native, Terminal Built for Seamless Workflows", "license": "Apache-2.0", - "version": "0.1.14-beta.2", + "version": "0.1.14-beta.3", "homepage": "https://waveterm.dev", "build": { "appId": "dev.commandline.thenextwave" From 88d31bc6927c039f86647f18ae66a0821bf9c4c3 Mon Sep 17 00:00:00 2001 From: sawka Date: Thu, 19 Sep 2024 11:39:21 -0700 Subject: [PATCH 19/31] set apptype = w2 --- pkg/wcloud/wcloud.go | 2 +- pkg/wcloud/wclouddata.go | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/pkg/wcloud/wcloud.go b/pkg/wcloud/wcloud.go index 43c60491f..aecc4efea 100644 --- a/pkg/wcloud/wcloud.go +++ b/pkg/wcloud/wcloud.go @@ -130,7 +130,7 @@ func SendTelemetry(ctx context.Context, clientId string) error { } log.Printf("[wcloud] sending telemetry data\n") dayStr := daystr.GetCurDayStr() - input := TelemetryInputType{ClientId: clientId, UserId: clientId, CurDay: dayStr, Activity: activity} + input := TelemetryInputType{ClientId: clientId, UserId: clientId, CurDay: dayStr, Activity: activity, AppType: "w2"} req, err := makeAnonPostReq(ctx, TelemetryUrl, input) if err != nil { return err diff --git a/pkg/wcloud/wclouddata.go b/pkg/wcloud/wclouddata.go index 8068b457f..466d83465 100644 --- a/pkg/wcloud/wclouddata.go +++ b/pkg/wcloud/wclouddata.go @@ -15,6 +15,7 @@ type NoTelemetryInputType struct { type TelemetryInputType struct { UserId string `json:"userid"` ClientId string `json:"clientid"` + AppType string `json:"apptype"` CurDay string `json:"curday"` DefaultShell string `json:"defaultshell"` Activity []*telemetry.ActivityType `json:"activity"` From a10c0a1ab875493284d4ae00150442ce5466cf18 Mon Sep 17 00:00:00 2001 From: Evan Simkowitz Date: Thu, 19 Sep 2024 11:42:53 -0700 Subject: [PATCH 20/31] add logo assets --- assets/waveterm-logo-horizontal-dark.png | Bin 0 -> 112092 bytes assets/waveterm-logo-horizontal-light.png | Bin 0 -> 119042 bytes 2 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 assets/waveterm-logo-horizontal-dark.png create mode 100644 assets/waveterm-logo-horizontal-light.png diff --git a/assets/waveterm-logo-horizontal-dark.png b/assets/waveterm-logo-horizontal-dark.png new file mode 100644 index 0000000000000000000000000000000000000000..904d56357ff46d1eed7644fe39d73bdb80fc51a3 GIT binary patch literal 112092 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 b-_3&uC0v|$Xxpng&s|GNH0-|sOgXnn literal 0 HcmV?d00001 diff --git a/assets/waveterm-logo-horizontal-light.png b/assets/waveterm-logo-horizontal-light.png new file mode 100644 index 0000000000000000000000000000000000000000..bb6ce4dbd66a14aff9d1cc3e6a0a23d61a54fa4c GIT binary patch literal 119042 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
!zlJ4a##m25TP?C>Rs7
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

literal 0
HcmV?d00001


From 44eafc4f5c33ae171e2e15c4ae83d8c75a9f7e9b Mon Sep 17 00:00:00 2001
From: Evan Simkowitz 
Date: Thu, 19 Sep 2024 11:45:31 -0700
Subject: [PATCH 21/31] use backgroundless logos

---
 README.md             |   6 +++---
 assets/wave-dark.png  | Bin 0 -> 19746 bytes
 assets/wave-light.png | Bin 0 -> 16998 bytes
 3 files changed, 3 insertions(+), 3 deletions(-)
 create mode 100644 assets/wave-dark.png
 create mode 100644 assets/wave-light.png

diff --git a/README.md b/README.md
index a32d26c6a..5613578cc 100644
--- a/README.md
+++ b/README.md
@@ -1,8 +1,8 @@
 

- - - Wave Terminal Logo + + + Wave Terminal Logo

diff --git a/assets/wave-dark.png b/assets/wave-dark.png new file mode 100644 index 0000000000000000000000000000000000000000..e9cf7cb36cc444e44674e0c451f90dd82d708793 GIT binary patch literal 19746 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 II;Vst0BFR)dH?_b literal 0 HcmV?d00001 From 61ec9fbefe8f393cfa3c53bd5cfeeaf1b8b8bd2d Mon Sep 17 00:00:00 2001 From: Evan Simkowitz Date: Thu, 19 Sep 2024 11:47:19 -0700 Subject: [PATCH 22/31] use width instead --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 5613578cc..0e89b7817 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ - Wave Terminal Logo + Wave Terminal Logo

From ec6a5bbeb3dacac64d94d1350c22883f28394227 Mon Sep 17 00:00:00 2001 From: Evan Simkowitz Date: Thu, 19 Sep 2024 11:57:15 -0700 Subject: [PATCH 23/31] update releases readme --- RELEASES.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/RELEASES.md b/RELEASES.md index acc3da1d6..1c32cc6cb 100644 --- a/RELEASES.md +++ b/RELEASES.md @@ -34,7 +34,7 @@ Our release builds are managed by the [Build Helper workflow](https://github.com Under the hood, this will call the `package` task in [`Taskfile.yml`](../../Taskfile.yml), which will build the `wavesrv` and `wsh` binaries, then the frontend and Electron codebases using Vite, then it will call `electron-builder` to generate the distributable app packages. The configuration for `electron-builder` is defined in [`electron-builder.config.cjs`](../../electron-builder.config.cjs). -This will also sign and notarize the macOS app package. +This will also sign and notarize the macOS app packages and sign the Windows packages. Once a build is complete, it will be placed in `s3://waveterm-github-artifacts/staging-w2/`. It can be downloaded for testing using the `artifacts:download:*` task. When you are ready to publish the artifacts to the public release feed, use the `artifacts:publish:*` task to directly copy the artifacts from the staging bucket to the releases bucket. From 63f41c146cc3678cf30dad9a8dae6fc6ad6c29aa Mon Sep 17 00:00:00 2001 From: sawka Date: Thu, 19 Sep 2024 11:57:40 -0700 Subject: [PATCH 24/31] send autoupdate enabled/channel w/ telemetry --- pkg/telemetry/telemetry.go | 10 ++++++++++ pkg/wcloud/wcloud.go | 10 +++++++++- pkg/wcloud/wclouddata.go | 13 +++++++------ 3 files changed, 26 insertions(+), 7 deletions(-) diff --git a/pkg/telemetry/telemetry.go b/pkg/telemetry/telemetry.go index fda73313b..98818c051 100644 --- a/pkg/telemetry/telemetry.go +++ b/pkg/telemetry/telemetry.go @@ -78,6 +78,16 @@ func IsTelemetryEnabled() bool { return settings.Settings.TelemetryEnabled } +func IsAutoUpdateEnabled() bool { + settings := wconfig.GetWatcher().GetFullConfig() + return settings.Settings.AutoUpdateEnabled +} + +func AutoUpdateChannel() string { + settings := wconfig.GetWatcher().GetFullConfig() + return settings.Settings.AutoUpdateChannel +} + func IsAllowedRenderer(renderer string) bool { return allowedRenderers[renderer] } diff --git a/pkg/wcloud/wcloud.go b/pkg/wcloud/wcloud.go index aecc4efea..bb8b7b0ac 100644 --- a/pkg/wcloud/wcloud.go +++ b/pkg/wcloud/wcloud.go @@ -130,7 +130,15 @@ func SendTelemetry(ctx context.Context, clientId string) error { } log.Printf("[wcloud] sending telemetry data\n") dayStr := daystr.GetCurDayStr() - input := TelemetryInputType{ClientId: clientId, UserId: clientId, CurDay: dayStr, Activity: activity, AppType: "w2"} + input := TelemetryInputType{ + ClientId: clientId, + UserId: clientId, + AppType: "w2", + AutoUpdateEnabled: telemetry.IsAutoUpdateEnabled(), + AutoUpdateChannel: telemetry.AutoUpdateChannel(), + CurDay: dayStr, + Activity: activity, + } req, err := makeAnonPostReq(ctx, TelemetryUrl, input) if err != nil { return err diff --git a/pkg/wcloud/wclouddata.go b/pkg/wcloud/wclouddata.go index 466d83465..5ab1ee88e 100644 --- a/pkg/wcloud/wclouddata.go +++ b/pkg/wcloud/wclouddata.go @@ -13,10 +13,11 @@ type NoTelemetryInputType struct { } type TelemetryInputType struct { - UserId string `json:"userid"` - ClientId string `json:"clientid"` - AppType string `json:"apptype"` - CurDay string `json:"curday"` - DefaultShell string `json:"defaultshell"` - Activity []*telemetry.ActivityType `json:"activity"` + UserId string `json:"userid"` + ClientId string `json:"clientid"` + AppType string `json:"apptype,omitempty"` + AutoUpdateEnabled bool `json:"autoupdateenabled,omitempty"` + AutoUpdateChannel string `json:"autoupdatechannel,omitempty"` + CurDay string `json:"curday"` + Activity []*telemetry.ActivityType `json:"activity"` } From f14b4c6f115e9b4b772c07e264c43e37316c916d Mon Sep 17 00:00:00 2001 From: Evan Simkowitz Date: Thu, 19 Sep 2024 12:22:23 -0700 Subject: [PATCH 25/31] missed a break --- frontend/layout/lib/layoutModel.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/frontend/layout/lib/layoutModel.ts b/frontend/layout/lib/layoutModel.ts index 7408de599..c48b56c26 100644 --- a/frontend/layout/lib/layoutModel.ts +++ b/frontend/layout/lib/layoutModel.ts @@ -358,6 +358,7 @@ export class LayoutModel { break; case LayoutTreeActionType.ClearTree: { clearTree(this.treeState); + break; } default: console.error("Invalid reducer action", this.treeState, action); From 839889ba634b6b4764cc06c820e510da20f952bd Mon Sep 17 00:00:00 2001 From: Evan Simkowitz Date: Thu, 19 Sep 2024 12:23:06 -0700 Subject: [PATCH 26/31] missed another break --- frontend/layout/lib/layoutModel.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/frontend/layout/lib/layoutModel.ts b/frontend/layout/lib/layoutModel.ts index c48b56c26..78101cbc8 100644 --- a/frontend/layout/lib/layoutModel.ts +++ b/frontend/layout/lib/layoutModel.ts @@ -441,6 +441,7 @@ export class LayoutModel { this.treeReducer({ type: LayoutTreeActionType.ClearTree, } as LayoutTreeClearTreeAction); + break; } default: console.warn("unsupported layout action", action); From 708af7efde3859ab5f94ba2dbc6038bf16723ec8 Mon Sep 17 00:00:00 2001 From: Evan Simkowitz Date: Thu, 19 Sep 2024 12:37:16 -0700 Subject: [PATCH 27/31] Move env vars to vite config --- electron.vite.config.ts | 4 ++++ frontend/util/wsutil.ts | 13 ++++++------- 2 files changed, 10 insertions(+), 7 deletions(-) diff --git a/electron.vite.config.ts b/electron.vite.config.ts index 2a7ab6fe0..dc5f95daa 100644 --- a/electron.vite.config.ts +++ b/electron.vite.config.ts @@ -26,6 +26,10 @@ export default defineConfig({ "@": "frontend", }, }, + define: { + "process.env.WS_NO_BUFFER_UTIL": "true", + "process.env.WS_NO_UTF_8_VALIDATE": "true", + }, }, preload: { root: ".", diff --git a/frontend/util/wsutil.ts b/frontend/util/wsutil.ts index d6908d388..dcda5ad31 100644 --- a/frontend/util/wsutil.ts +++ b/frontend/util/wsutil.ts @@ -3,13 +3,12 @@ import type { WebSocket as NodeWebSocketType } from "ws"; let NodeWebSocket: typeof NodeWebSocketType = null; if (typeof window === "undefined") { - try { - // Necessary to avoid issues with Rollup: https://github.com/websockets/ws/issues/2057 - process.env.WS_NO_BUFFER_UTIL = "1"; - import("ws").then((ws) => (NodeWebSocket = ws.default)); - } catch (error) { - console.log("Error importing 'ws':", error); - } + // Necessary to avoid issues with Rollup: https://github.com/websockets/ws/issues/2057 + import("ws") + .then((ws) => (NodeWebSocket = ws.default)) + .catch((e) => { + console.log("Error importing 'ws':", e); + }); } type ComboWebSocket = NodeWebSocketType | WebSocket; From 7126c47eccb6f25a16efdbd4b6f9c48ee180a448 Mon Sep 17 00:00:00 2001 From: Evan Simkowitz Date: Thu, 19 Sep 2024 12:59:09 -0700 Subject: [PATCH 28/31] Fix missing new tab layouts (#402) --- frontend/layout/lib/layoutModel.ts | 4 ++-- pkg/wlayout/wlayout.go | 1 + 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/frontend/layout/lib/layoutModel.ts b/frontend/layout/lib/layoutModel.ts index 78101cbc8..02fdca99c 100644 --- a/frontend/layout/lib/layoutModel.ts +++ b/frontend/layout/lib/layoutModel.ts @@ -377,7 +377,7 @@ export class LayoutModel { * Callback that is invoked when the upstream tree state has been updated. This ensures the model is updated if the atom is not fully loaded when the model is first instantiated. * @param force Whether to force the local tree state to update, regardless of whether the state is already up to date. */ - async onTreeStateAtomUpdated(force = false) { + onTreeStateAtomUpdated = debounce(50, async (force = false) => { const treeState = this.getter(this.treeStateAtom); // Only update the local tree state if it is different from the one in the upstream atom. This function is called even when the update was initiated by the LayoutModel, so we need to filter out false positives or we'll enter an infinite loop. if ( @@ -453,7 +453,7 @@ export class LayoutModel { this.setTreeStateAtom(force); } } - } + }); /** * Set the upstream tree state atom to the value of the local tree state. diff --git a/pkg/wlayout/wlayout.go b/pkg/wlayout/wlayout.go index 9effdcc22..4391ff5ef 100644 --- a/pkg/wlayout/wlayout.go +++ b/pkg/wlayout/wlayout.go @@ -120,6 +120,7 @@ func QueueLayoutActionForTab(ctx context.Context, tabId string, actions ...waveo } func ApplyPortableLayout(ctx context.Context, tabId string, layout PortableLayout) error { + log.Printf("ApplyPortableLayout, tabId: %s, layout: %v\n", tabId, layout) actions := make([]waveobj.LayoutActionData, len(layout)+1) actions[0] = waveobj.LayoutActionData{ActionType: LayoutActionDataType_ClearTree} for i := 0; i < len(layout); i++ { From 11405219f26d2ab23367601758c63a38a5fad5eb Mon Sep 17 00:00:00 2001 From: Evan Simkowitz Date: Thu, 19 Sep 2024 13:01:14 -0700 Subject: [PATCH 29/31] bad yarn.lock file in frontend dir --- frontend/yarn.lock | 919 --------------------------------------------- 1 file changed, 919 deletions(-) delete mode 100644 frontend/yarn.lock diff --git a/frontend/yarn.lock b/frontend/yarn.lock deleted file mode 100644 index 199c06d7f..000000000 --- a/frontend/yarn.lock +++ /dev/null @@ -1,919 +0,0 @@ -# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. -# yarn lockfile v1 - - -"@ampproject/remapping@^2.2.0": - version "2.3.0" - resolved "https://registry.yarnpkg.com/@ampproject/remapping/-/remapping-2.3.0.tgz#ed441b6fa600072520ce18b43d2c8cc8caecc7f4" - integrity sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw== - dependencies: - "@jridgewell/gen-mapping" "^0.3.5" - "@jridgewell/trace-mapping" "^0.3.24" - -"@babel/code-frame@^7.23.5", "@babel/code-frame@^7.24.2": - version "7.24.2" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.24.2.tgz#718b4b19841809a58b29b68cde80bc5e1aa6d9ae" - integrity sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ== - dependencies: - "@babel/highlight" "^7.24.2" - picocolors "^1.0.0" - -"@babel/compat-data@^7.23.5": - version "7.24.4" - resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.24.4.tgz#6f102372e9094f25d908ca0d34fc74c74606059a" - integrity sha512-vg8Gih2MLK+kOkHJp4gBEIkyaIi00jgWot2D9QOmmfLC8jINSOzmCLta6Bvz/JSBCqnegV0L80jhxkol5GWNfQ== - -"@babel/core@^7.23.5": - version "7.24.5" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.24.5.tgz#15ab5b98e101972d171aeef92ac70d8d6718f06a" - integrity sha512-tVQRucExLQ02Boi4vdPp49svNGcfL2GhdTCT9aldhXgCJVAI21EtRfBettiuLUwce/7r6bFdgs6JFkcdTiFttA== - dependencies: - "@ampproject/remapping" "^2.2.0" - "@babel/code-frame" "^7.24.2" - "@babel/generator" "^7.24.5" - "@babel/helper-compilation-targets" "^7.23.6" - "@babel/helper-module-transforms" "^7.24.5" - "@babel/helpers" "^7.24.5" - "@babel/parser" "^7.24.5" - "@babel/template" "^7.24.0" - "@babel/traverse" "^7.24.5" - "@babel/types" "^7.24.5" - convert-source-map "^2.0.0" - debug "^4.1.0" - gensync "^1.0.0-beta.2" - json5 "^2.2.3" - semver "^6.3.1" - -"@babel/generator@^7.24.5": - version "7.24.5" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.24.5.tgz#e5afc068f932f05616b66713e28d0f04e99daeb3" - integrity sha512-x32i4hEXvr+iI0NEoEfDKzlemF8AmtOP8CcrRaEcpzysWuoEb1KknpcvMsHKPONoKZiDuItklgWhB18xEhr9PA== - dependencies: - "@babel/types" "^7.24.5" - "@jridgewell/gen-mapping" "^0.3.5" - "@jridgewell/trace-mapping" "^0.3.25" - jsesc "^2.5.1" - -"@babel/helper-compilation-targets@^7.23.6": - version "7.23.6" - resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.23.6.tgz#4d79069b16cbcf1461289eccfbbd81501ae39991" - integrity sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ== - dependencies: - "@babel/compat-data" "^7.23.5" - "@babel/helper-validator-option" "^7.23.5" - browserslist "^4.22.2" - lru-cache "^5.1.1" - semver "^6.3.1" - -"@babel/helper-environment-visitor@^7.22.20": - version "7.22.20" - resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz#96159db61d34a29dba454c959f5ae4a649ba9167" - integrity sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA== - -"@babel/helper-function-name@^7.23.0": - version "7.23.0" - resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz#1f9a3cdbd5b2698a670c30d2735f9af95ed52759" - integrity sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw== - dependencies: - "@babel/template" "^7.22.15" - "@babel/types" "^7.23.0" - -"@babel/helper-hoist-variables@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz#c01a007dac05c085914e8fb652b339db50d823bb" - integrity sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw== - dependencies: - "@babel/types" "^7.22.5" - -"@babel/helper-module-imports@^7.24.3": - version "7.24.3" - resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.24.3.tgz#6ac476e6d168c7c23ff3ba3cf4f7841d46ac8128" - integrity sha512-viKb0F9f2s0BCS22QSF308z/+1YWKV/76mwt61NBzS5izMzDPwdq1pTrzf+Li3npBWX9KdQbkeCt1jSAM7lZqg== - dependencies: - "@babel/types" "^7.24.0" - -"@babel/helper-module-transforms@^7.24.5": - version "7.24.5" - resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.24.5.tgz#ea6c5e33f7b262a0ae762fd5986355c45f54a545" - integrity sha512-9GxeY8c2d2mdQUP1Dye0ks3VDyIMS98kt/llQ2nUId8IsWqTF0l1LkSX0/uP7l7MCDrzXS009Hyhe2gzTiGW8A== - dependencies: - "@babel/helper-environment-visitor" "^7.22.20" - "@babel/helper-module-imports" "^7.24.3" - "@babel/helper-simple-access" "^7.24.5" - "@babel/helper-split-export-declaration" "^7.24.5" - "@babel/helper-validator-identifier" "^7.24.5" - -"@babel/helper-plugin-utils@^7.24.0", "@babel/helper-plugin-utils@^7.24.5": - version "7.24.5" - resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.5.tgz#a924607dd254a65695e5bd209b98b902b3b2f11a" - integrity sha512-xjNLDopRzW2o6ba0gKbkZq5YWEBaK3PCyTOY1K2P/O07LGMhMqlMXPxwN4S5/RhWuCobT8z0jrlKGlYmeR1OhQ== - -"@babel/helper-simple-access@^7.24.5": - version "7.24.5" - resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.24.5.tgz#50da5b72f58c16b07fbd992810be6049478e85ba" - integrity sha512-uH3Hmf5q5n7n8mz7arjUlDOCbttY/DW4DYhE6FUsjKJ/oYC1kQQUvwEQWxRwUpX9qQKRXeqLwWxrqilMrf32sQ== - dependencies: - "@babel/types" "^7.24.5" - -"@babel/helper-split-export-declaration@^7.24.5": - version "7.24.5" - resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.24.5.tgz#b9a67f06a46b0b339323617c8c6213b9055a78b6" - integrity sha512-5CHncttXohrHk8GWOFCcCl4oRD9fKosWlIRgWm4ql9VYioKm52Mk2xsmoohvm7f3JoiLSM5ZgJuRaf5QZZYd3Q== - dependencies: - "@babel/types" "^7.24.5" - -"@babel/helper-string-parser@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz#f99c36d3593db9540705d0739a1f10b5e20c696e" - integrity sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ== - -"@babel/helper-validator-identifier@^7.24.5": - version "7.24.5" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.5.tgz#918b1a7fa23056603506370089bd990d8720db62" - integrity sha512-3q93SSKX2TWCG30M2G2kwaKeTYgEUp5Snjuj8qm729SObL6nbtUldAi37qbxkD5gg3xnBio+f9nqpSepGZMvxA== - -"@babel/helper-validator-option@^7.23.5": - version "7.23.5" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.23.5.tgz#907a3fbd4523426285365d1206c423c4c5520307" - integrity sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw== - -"@babel/helpers@^7.24.5": - version "7.24.5" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.24.5.tgz#fedeb87eeafa62b621160402181ad8585a22a40a" - integrity sha512-CiQmBMMpMQHwM5m01YnrM6imUG1ebgYJ+fAIW4FZe6m4qHTPaRHti+R8cggAwkdz4oXhtO4/K9JWlh+8hIfR2Q== - dependencies: - "@babel/template" "^7.24.0" - "@babel/traverse" "^7.24.5" - "@babel/types" "^7.24.5" - -"@babel/highlight@^7.24.2": - version "7.24.5" - resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.24.5.tgz#bc0613f98e1dd0720e99b2a9ee3760194a704b6e" - integrity sha512-8lLmua6AVh/8SLJRRVD6V8p73Hir9w5mJrhE+IPpILG31KKlI9iz5zmBYKcWPS59qSfgP9RaSBQSHHE81WKuEw== - dependencies: - "@babel/helper-validator-identifier" "^7.24.5" - chalk "^2.4.2" - js-tokens "^4.0.0" - picocolors "^1.0.0" - -"@babel/parser@^7.1.0", "@babel/parser@^7.20.7", "@babel/parser@^7.24.0", "@babel/parser@^7.24.5": - version "7.24.5" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.24.5.tgz#4a4d5ab4315579e5398a82dcf636ca80c3392790" - integrity sha512-EOv5IK8arwh3LI47dz1b0tKUb/1uhHAnHJOrjgtQMIpu1uXd9mlFrJg9IUgGUgZ41Ch0K8REPTYpO7B76b4vJg== - -"@babel/plugin-transform-react-jsx-self@^7.23.3": - version "7.24.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.24.5.tgz#22cc7572947895c8e4cd034462e65d8ecf857756" - integrity sha512-RtCJoUO2oYrYwFPtR1/jkoBEcFuI1ae9a9IMxeyAVa3a1Ap4AnxmyIKG2b2FaJKqkidw/0cxRbWN+HOs6ZWd1w== - dependencies: - "@babel/helper-plugin-utils" "^7.24.5" - -"@babel/plugin-transform-react-jsx-source@^7.23.3": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.24.1.tgz#a2dedb12b09532846721b5df99e52ef8dc3351d0" - integrity sha512-1v202n7aUq4uXAieRTKcwPzNyphlCuqHHDcdSNc+vdhoTEZcFMh+L5yZuCmGaIO7bs1nJUNfHB89TZyoL48xNA== - dependencies: - "@babel/helper-plugin-utils" "^7.24.0" - -"@babel/template@^7.22.15", "@babel/template@^7.24.0": - version "7.24.0" - resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.24.0.tgz#c6a524aa93a4a05d66aaf31654258fae69d87d50" - integrity sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA== - dependencies: - "@babel/code-frame" "^7.23.5" - "@babel/parser" "^7.24.0" - "@babel/types" "^7.24.0" - -"@babel/traverse@^7.24.5": - version "7.24.5" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.24.5.tgz#972aa0bc45f16983bf64aa1f877b2dd0eea7e6f8" - integrity sha512-7aaBLeDQ4zYcUFDUD41lJc1fG8+5IU9DaNSJAgal866FGvmD5EbWQgnEC6kO1gGLsX0esNkfnJSndbTXA3r7UA== - dependencies: - "@babel/code-frame" "^7.24.2" - "@babel/generator" "^7.24.5" - "@babel/helper-environment-visitor" "^7.22.20" - "@babel/helper-function-name" "^7.23.0" - "@babel/helper-hoist-variables" "^7.22.5" - "@babel/helper-split-export-declaration" "^7.24.5" - "@babel/parser" "^7.24.5" - "@babel/types" "^7.24.5" - debug "^4.3.1" - globals "^11.1.0" - -"@babel/types@^7.0.0", "@babel/types@^7.20.7", "@babel/types@^7.22.5", "@babel/types@^7.23.0", "@babel/types@^7.24.0", "@babel/types@^7.24.5": - version "7.24.5" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.24.5.tgz#7661930afc638a5383eb0c4aee59b74f38db84d7" - integrity sha512-6mQNsaLeXTw0nxYUYu+NSa4Hx4BlF1x1x8/PMFbiR+GBSr+2DkECc69b8hgy2frEodNcvPffeH8YfWd3LI6jhQ== - dependencies: - "@babel/helper-string-parser" "^7.24.1" - "@babel/helper-validator-identifier" "^7.24.5" - to-fast-properties "^2.0.0" - -"@esbuild/aix-ppc64@0.20.2": - version "0.20.2" - resolved "https://registry.yarnpkg.com/@esbuild/aix-ppc64/-/aix-ppc64-0.20.2.tgz#a70f4ac11c6a1dfc18b8bbb13284155d933b9537" - integrity sha512-D+EBOJHXdNZcLJRBkhENNG8Wji2kgc9AZ9KiPr1JuZjsNtyHzrsfLRrY0tk2H2aoFu6RANO1y1iPPUCDYWkb5g== - -"@esbuild/android-arm64@0.20.2": - version "0.20.2" - resolved "https://registry.yarnpkg.com/@esbuild/android-arm64/-/android-arm64-0.20.2.tgz#db1c9202a5bc92ea04c7b6840f1bbe09ebf9e6b9" - integrity sha512-mRzjLacRtl/tWU0SvD8lUEwb61yP9cqQo6noDZP/O8VkwafSYwZ4yWy24kan8jE/IMERpYncRt2dw438LP3Xmg== - -"@esbuild/android-arm@0.20.2": - version "0.20.2" - resolved "https://registry.yarnpkg.com/@esbuild/android-arm/-/android-arm-0.20.2.tgz#3b488c49aee9d491c2c8f98a909b785870d6e995" - integrity sha512-t98Ra6pw2VaDhqNWO2Oph2LXbz/EJcnLmKLGBJwEwXX/JAN83Fym1rU8l0JUWK6HkIbWONCSSatf4sf2NBRx/w== - -"@esbuild/android-x64@0.20.2": - version "0.20.2" - resolved "https://registry.yarnpkg.com/@esbuild/android-x64/-/android-x64-0.20.2.tgz#3b1628029e5576249d2b2d766696e50768449f98" - integrity sha512-btzExgV+/lMGDDa194CcUQm53ncxzeBrWJcncOBxuC6ndBkKxnHdFJn86mCIgTELsooUmwUm9FkhSp5HYu00Rg== - -"@esbuild/darwin-arm64@0.20.2": - version "0.20.2" - resolved "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.20.2.tgz" - integrity sha512-4J6IRT+10J3aJH3l1yzEg9y3wkTDgDk7TSDFX+wKFiWjqWp/iCfLIYzGyasx9l0SAFPT1HwSCR+0w/h1ES/MjA== - -"@esbuild/darwin-x64@0.20.2": - version "0.20.2" - resolved "https://registry.yarnpkg.com/@esbuild/darwin-x64/-/darwin-x64-0.20.2.tgz#90ed098e1f9dd8a9381695b207e1cff45540a0d0" - integrity sha512-tBcXp9KNphnNH0dfhv8KYkZhjc+H3XBkF5DKtswJblV7KlT9EI2+jeA8DgBjp908WEuYll6pF+UStUCfEpdysA== - -"@esbuild/freebsd-arm64@0.20.2": - version "0.20.2" - resolved "https://registry.yarnpkg.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.20.2.tgz#d71502d1ee89a1130327e890364666c760a2a911" - integrity sha512-d3qI41G4SuLiCGCFGUrKsSeTXyWG6yem1KcGZVS+3FYlYhtNoNgYrWcvkOoaqMhwXSMrZRl69ArHsGJ9mYdbbw== - -"@esbuild/freebsd-x64@0.20.2": - version "0.20.2" - resolved "https://registry.yarnpkg.com/@esbuild/freebsd-x64/-/freebsd-x64-0.20.2.tgz#aa5ea58d9c1dd9af688b8b6f63ef0d3d60cea53c" - integrity sha512-d+DipyvHRuqEeM5zDivKV1KuXn9WeRX6vqSqIDgwIfPQtwMP4jaDsQsDncjTDDsExT4lR/91OLjRo8bmC1e+Cw== - -"@esbuild/linux-arm64@0.20.2": - version "0.20.2" - resolved "https://registry.yarnpkg.com/@esbuild/linux-arm64/-/linux-arm64-0.20.2.tgz#055b63725df678379b0f6db9d0fa85463755b2e5" - integrity sha512-9pb6rBjGvTFNira2FLIWqDk/uaf42sSyLE8j1rnUpuzsODBq7FvpwHYZxQ/It/8b+QOS1RYfqgGFNLRI+qlq2A== - -"@esbuild/linux-arm@0.20.2": - version "0.20.2" - resolved "https://registry.yarnpkg.com/@esbuild/linux-arm/-/linux-arm-0.20.2.tgz#76b3b98cb1f87936fbc37f073efabad49dcd889c" - integrity sha512-VhLPeR8HTMPccbuWWcEUD1Az68TqaTYyj6nfE4QByZIQEQVWBB8vup8PpR7y1QHL3CpcF6xd5WVBU/+SBEvGTg== - -"@esbuild/linux-ia32@0.20.2": - version "0.20.2" - resolved "https://registry.yarnpkg.com/@esbuild/linux-ia32/-/linux-ia32-0.20.2.tgz#c0e5e787c285264e5dfc7a79f04b8b4eefdad7fa" - integrity sha512-o10utieEkNPFDZFQm9CoP7Tvb33UutoJqg3qKf1PWVeeJhJw0Q347PxMvBgVVFgouYLGIhFYG0UGdBumROyiig== - -"@esbuild/linux-loong64@0.20.2": - version "0.20.2" - resolved "https://registry.yarnpkg.com/@esbuild/linux-loong64/-/linux-loong64-0.20.2.tgz#a6184e62bd7cdc63e0c0448b83801001653219c5" - integrity sha512-PR7sp6R/UC4CFVomVINKJ80pMFlfDfMQMYynX7t1tNTeivQ6XdX5r2XovMmha/VjR1YN/HgHWsVcTRIMkymrgQ== - -"@esbuild/linux-mips64el@0.20.2": - version "0.20.2" - resolved "https://registry.yarnpkg.com/@esbuild/linux-mips64el/-/linux-mips64el-0.20.2.tgz#d08e39ce86f45ef8fc88549d29c62b8acf5649aa" - integrity sha512-4BlTqeutE/KnOiTG5Y6Sb/Hw6hsBOZapOVF6njAESHInhlQAghVVZL1ZpIctBOoTFbQyGW+LsVYZ8lSSB3wkjA== - -"@esbuild/linux-ppc64@0.20.2": - version "0.20.2" - resolved "https://registry.yarnpkg.com/@esbuild/linux-ppc64/-/linux-ppc64-0.20.2.tgz#8d252f0b7756ffd6d1cbde5ea67ff8fd20437f20" - integrity sha512-rD3KsaDprDcfajSKdn25ooz5J5/fWBylaaXkuotBDGnMnDP1Uv5DLAN/45qfnf3JDYyJv/ytGHQaziHUdyzaAg== - -"@esbuild/linux-riscv64@0.20.2": - version "0.20.2" - resolved "https://registry.yarnpkg.com/@esbuild/linux-riscv64/-/linux-riscv64-0.20.2.tgz#19f6dcdb14409dae607f66ca1181dd4e9db81300" - integrity sha512-snwmBKacKmwTMmhLlz/3aH1Q9T8v45bKYGE3j26TsaOVtjIag4wLfWSiZykXzXuE1kbCE+zJRmwp+ZbIHinnVg== - -"@esbuild/linux-s390x@0.20.2": - version "0.20.2" - resolved "https://registry.yarnpkg.com/@esbuild/linux-s390x/-/linux-s390x-0.20.2.tgz#3c830c90f1a5d7dd1473d5595ea4ebb920988685" - integrity sha512-wcWISOobRWNm3cezm5HOZcYz1sKoHLd8VL1dl309DiixxVFoFe/o8HnwuIwn6sXre88Nwj+VwZUvJf4AFxkyrQ== - -"@esbuild/linux-x64@0.20.2": - version "0.20.2" - resolved "https://registry.yarnpkg.com/@esbuild/linux-x64/-/linux-x64-0.20.2.tgz#86eca35203afc0d9de0694c64ec0ab0a378f6fff" - integrity sha512-1MdwI6OOTsfQfek8sLwgyjOXAu+wKhLEoaOLTjbijk6E2WONYpH9ZU2mNtR+lZ2B4uwr+usqGuVfFT9tMtGvGw== - -"@esbuild/netbsd-x64@0.20.2": - version "0.20.2" - resolved "https://registry.yarnpkg.com/@esbuild/netbsd-x64/-/netbsd-x64-0.20.2.tgz#e771c8eb0e0f6e1877ffd4220036b98aed5915e6" - integrity sha512-K8/DhBxcVQkzYc43yJXDSyjlFeHQJBiowJ0uVL6Tor3jGQfSGHNNJcWxNbOI8v5k82prYqzPuwkzHt3J1T1iZQ== - -"@esbuild/openbsd-x64@0.20.2": - version "0.20.2" - resolved "https://registry.yarnpkg.com/@esbuild/openbsd-x64/-/openbsd-x64-0.20.2.tgz#9a795ae4b4e37e674f0f4d716f3e226dd7c39baf" - integrity sha512-eMpKlV0SThJmmJgiVyN9jTPJ2VBPquf6Kt/nAoo6DgHAoN57K15ZghiHaMvqjCye/uU4X5u3YSMgVBI1h3vKrQ== - -"@esbuild/sunos-x64@0.20.2": - version "0.20.2" - resolved "https://registry.yarnpkg.com/@esbuild/sunos-x64/-/sunos-x64-0.20.2.tgz#7df23b61a497b8ac189def6e25a95673caedb03f" - integrity sha512-2UyFtRC6cXLyejf/YEld4Hajo7UHILetzE1vsRcGL3earZEW77JxrFjH4Ez2qaTiEfMgAXxfAZCm1fvM/G/o8w== - -"@esbuild/win32-arm64@0.20.2": - version "0.20.2" - resolved "https://registry.yarnpkg.com/@esbuild/win32-arm64/-/win32-arm64-0.20.2.tgz#f1ae5abf9ca052ae11c1bc806fb4c0f519bacf90" - integrity sha512-GRibxoawM9ZCnDxnP3usoUDO9vUkpAxIIZ6GQI+IlVmr5kP3zUq+l17xELTHMWTWzjxa2guPNyrpq1GWmPvcGQ== - -"@esbuild/win32-ia32@0.20.2": - version "0.20.2" - resolved "https://registry.yarnpkg.com/@esbuild/win32-ia32/-/win32-ia32-0.20.2.tgz#241fe62c34d8e8461cd708277813e1d0ba55ce23" - integrity sha512-HfLOfn9YWmkSKRQqovpnITazdtquEW8/SoHW7pWpuEeguaZI4QnCRW6b+oZTztdBnZOS2hqJ6im/D5cPzBTTlQ== - -"@esbuild/win32-x64@0.20.2": - version "0.20.2" - resolved "https://registry.yarnpkg.com/@esbuild/win32-x64/-/win32-x64-0.20.2.tgz#9c907b21e30a52db959ba4f80bb01a0cc403d5cc" - integrity sha512-N49X4lJX27+l9jbLKSqZ6bKNjzQvHaT8IIFUy+YIqmXQdjYCToGWwOItDrfby14c78aDd5NHQl29xingXfCdLQ== - -"@jridgewell/gen-mapping@^0.3.5": - version "0.3.5" - resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz#dcce6aff74bdf6dad1a95802b69b04a2fcb1fb36" - integrity sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg== - dependencies: - "@jridgewell/set-array" "^1.2.1" - "@jridgewell/sourcemap-codec" "^1.4.10" - "@jridgewell/trace-mapping" "^0.3.24" - -"@jridgewell/resolve-uri@^3.1.0": - version "3.1.2" - resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz#7a0ee601f60f99a20c7c7c5ff0c80388c1189bd6" - integrity sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw== - -"@jridgewell/set-array@^1.2.1": - version "1.2.1" - resolved "https://registry.yarnpkg.com/@jridgewell/set-array/-/set-array-1.2.1.tgz#558fb6472ed16a4c850b889530e6b36438c49280" - integrity sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A== - -"@jridgewell/sourcemap-codec@^1.4.10", "@jridgewell/sourcemap-codec@^1.4.14": - version "1.4.15" - resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz#d7c6e6755c78567a951e04ab52ef0fd26de59f32" - integrity sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg== - -"@jridgewell/trace-mapping@^0.3.24", "@jridgewell/trace-mapping@^0.3.25": - version "0.3.25" - resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz#15f190e98895f3fc23276ee14bc76b675c2e50f0" - integrity sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ== - dependencies: - "@jridgewell/resolve-uri" "^3.1.0" - "@jridgewell/sourcemap-codec" "^1.4.14" - -"@rollup/rollup-android-arm-eabi@4.17.2": - version "4.17.2" - resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.17.2.tgz#1a32112822660ee104c5dd3a7c595e26100d4c2d" - integrity sha512-NM0jFxY8bB8QLkoKxIQeObCaDlJKewVlIEkuyYKm5An1tdVZ966w2+MPQ2l8LBZLjR+SgyV+nRkTIunzOYBMLQ== - -"@rollup/rollup-android-arm64@4.17.2": - version "4.17.2" - resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.17.2.tgz#5aeef206d65ff4db423f3a93f71af91b28662c5b" - integrity sha512-yeX/Usk7daNIVwkq2uGoq2BYJKZY1JfyLTaHO/jaiSwi/lsf8fTFoQW/n6IdAsx5tx+iotu2zCJwz8MxI6D/Bw== - -"@rollup/rollup-darwin-arm64@4.17.2": - version "4.17.2" - resolved "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.17.2.tgz" - integrity sha512-kcMLpE6uCwls023+kknm71ug7MZOrtXo+y5p/tsg6jltpDtgQY1Eq5sGfHcQfb+lfuKwhBmEURDga9N0ol4YPw== - -"@rollup/rollup-darwin-x64@4.17.2": - version "4.17.2" - resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.17.2.tgz#f64fc51ed12b19f883131ccbcea59fc68cbd6c0b" - integrity sha512-AtKwD0VEx0zWkL0ZjixEkp5tbNLzX+FCqGG1SvOu993HnSz4qDI6S4kGzubrEJAljpVkhRSlg5bzpV//E6ysTQ== - -"@rollup/rollup-linux-arm-gnueabihf@4.17.2": - version "4.17.2" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.17.2.tgz#1a7641111be67c10111f7122d1e375d1226cbf14" - integrity sha512-3reX2fUHqN7sffBNqmEyMQVj/CKhIHZd4y631duy0hZqI8Qoqf6lTtmAKvJFYa6bhU95B1D0WgzHkmTg33In0A== - -"@rollup/rollup-linux-arm-musleabihf@4.17.2": - version "4.17.2" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.17.2.tgz#c93fd632923e0fee25aacd2ae414288d0b7455bb" - integrity sha512-uSqpsp91mheRgw96xtyAGP9FW5ChctTFEoXP0r5FAzj/3ZRv3Uxjtc7taRQSaQM/q85KEKjKsZuiZM3GyUivRg== - -"@rollup/rollup-linux-arm64-gnu@4.17.2": - version "4.17.2" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.17.2.tgz#fa531425dd21d058a630947527b4612d9d0b4a4a" - integrity sha512-EMMPHkiCRtE8Wdk3Qhtciq6BndLtstqZIroHiiGzB3C5LDJmIZcSzVtLRbwuXuUft1Cnv+9fxuDtDxz3k3EW2A== - -"@rollup/rollup-linux-arm64-musl@4.17.2": - version "4.17.2" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.17.2.tgz#8acc16f095ceea5854caf7b07e73f7d1802ac5af" - integrity sha512-NMPylUUZ1i0z/xJUIx6VUhISZDRT+uTWpBcjdv0/zkp7b/bQDF+NfnfdzuTiB1G6HTodgoFa93hp0O1xl+/UbA== - -"@rollup/rollup-linux-powerpc64le-gnu@4.17.2": - version "4.17.2" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.17.2.tgz#94e69a8499b5cf368911b83a44bb230782aeb571" - integrity sha512-T19My13y8uYXPw/L/k0JYaX1fJKFT/PWdXiHr8mTbXWxjVF1t+8Xl31DgBBvEKclw+1b00Chg0hxE2O7bTG7GQ== - -"@rollup/rollup-linux-riscv64-gnu@4.17.2": - version "4.17.2" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.17.2.tgz#7ef1c781c7e59e85a6ce261cc95d7f1e0b56db0f" - integrity sha512-BOaNfthf3X3fOWAB+IJ9kxTgPmMqPPH5f5k2DcCsRrBIbWnaJCgX2ll77dV1TdSy9SaXTR5iDXRL8n7AnoP5cg== - -"@rollup/rollup-linux-s390x-gnu@4.17.2": - version "4.17.2" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.17.2.tgz#f15775841c3232fca9b78cd25a7a0512c694b354" - integrity sha512-W0UP/x7bnn3xN2eYMql2T/+wpASLE5SjObXILTMPUBDB/Fg/FxC+gX4nvCfPBCbNhz51C+HcqQp2qQ4u25ok6g== - -"@rollup/rollup-linux-x64-gnu@4.17.2": - version "4.17.2" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.17.2.tgz#b521d271798d037ad70c9f85dd97d25f8a52e811" - integrity sha512-Hy7pLwByUOuyaFC6mAr7m+oMC+V7qyifzs/nW2OJfC8H4hbCzOX07Ov0VFk/zP3kBsELWNFi7rJtgbKYsav9QQ== - -"@rollup/rollup-linux-x64-musl@4.17.2": - version "4.17.2" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.17.2.tgz#9254019cc4baac35800991315d133cc9fd1bf385" - integrity sha512-h1+yTWeYbRdAyJ/jMiVw0l6fOOm/0D1vNLui9iPuqgRGnXA0u21gAqOyB5iHjlM9MMfNOm9RHCQ7zLIzT0x11Q== - -"@rollup/rollup-win32-arm64-msvc@4.17.2": - version "4.17.2" - resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.17.2.tgz#27f65a89f6f52ee9426ec11e3571038e4671790f" - integrity sha512-tmdtXMfKAjy5+IQsVtDiCfqbynAQE/TQRpWdVataHmhMb9DCoJxp9vLcCBjEQWMiUYxO1QprH/HbY9ragCEFLA== - -"@rollup/rollup-win32-ia32-msvc@4.17.2": - version "4.17.2" - resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.17.2.tgz#a2fbf8246ed0bb014f078ca34ae6b377a90cb411" - integrity sha512-7II/QCSTAHuE5vdZaQEwJq2ZACkBpQDOmQsE6D6XUbnBHW8IAhm4eTufL6msLJorzrHDFv3CF8oCA/hSIRuZeQ== - -"@rollup/rollup-win32-x64-msvc@4.17.2": - version "4.17.2" - resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.17.2.tgz#5a2d08b81e8064b34242d5cc9973ef8dd1e60503" - integrity sha512-TGGO7v7qOq4CYmSBVEYpI1Y5xDuCEnbVC5Vth8mOsW0gDSzxNrVERPc790IGHsrT2dQSimgMr9Ub3Y1Jci5/8w== - -"@types/babel__core@^7.20.5": - version "7.20.5" - resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.20.5.tgz#3df15f27ba85319caa07ba08d0721889bb39c017" - integrity sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA== - dependencies: - "@babel/parser" "^7.20.7" - "@babel/types" "^7.20.7" - "@types/babel__generator" "*" - "@types/babel__template" "*" - "@types/babel__traverse" "*" - -"@types/babel__generator@*": - version "7.6.8" - resolved "https://registry.yarnpkg.com/@types/babel__generator/-/babel__generator-7.6.8.tgz#f836c61f48b1346e7d2b0d93c6dacc5b9535d3ab" - integrity sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw== - dependencies: - "@babel/types" "^7.0.0" - -"@types/babel__template@*": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@types/babel__template/-/babel__template-7.4.4.tgz#5672513701c1b2199bc6dad636a9d7491586766f" - integrity sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A== - dependencies: - "@babel/parser" "^7.1.0" - "@babel/types" "^7.0.0" - -"@types/babel__traverse@*": - version "7.20.5" - resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.20.5.tgz#7b7502be0aa80cc4ef22978846b983edaafcd4dd" - integrity sha512-WXCyOcRtH37HAUkpXhUduaxdm82b4GSlyTqajXviN4EfiuPgNYR109xMCKvpl6zPIpua0DGlMEDCq+g8EdoheQ== - dependencies: - "@babel/types" "^7.20.7" - -"@types/estree@1.0.5": - version "1.0.5" - resolved "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz" - integrity sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw== - -"@vitejs/plugin-react@^4.2.1": - version "4.2.1" - resolved "https://registry.yarnpkg.com/@vitejs/plugin-react/-/plugin-react-4.2.1.tgz#744d8e4fcb120fc3dbaa471dadd3483f5a304bb9" - integrity sha512-oojO9IDc4nCUUi8qIR11KoQm0XFFLIwsRBwHRR4d/88IWghn1y6ckz/bJ8GHDCsYEJee8mDzqtJxh15/cisJNQ== - dependencies: - "@babel/core" "^7.23.5" - "@babel/plugin-transform-react-jsx-self" "^7.23.3" - "@babel/plugin-transform-react-jsx-source" "^7.23.3" - "@types/babel__core" "^7.20.5" - react-refresh "^0.14.0" - -"@wailsio/runtime@latest": - version "3.0.0-alpha.22" - resolved "https://registry.npmjs.org/@wailsio/runtime/-/runtime-3.0.0-alpha.22.tgz" - integrity sha512-72i0cq17cLlbjHZyD3XT8VPxcDIK2RLLYaBwcUYGWCQHSuZFPdR0ZR2ghSeZnTey8h30PBtYqQzWyOTvOYN5Jw== - dependencies: - nanoid "^5.0.7" - -"@xterm/addon-fit@^0.10.0": - version "0.10.0" - resolved "https://registry.yarnpkg.com/@xterm/addon-fit/-/addon-fit-0.10.0.tgz#bebf87fadd74e3af30fdcdeef47030e2592c6f55" - integrity sha512-UFYkDm4HUahf2lnEyHvio51TNGiLK66mqP2JoATy7hRZeXaGMRDr00JiSF7m63vR5WKATF605yEggJKsw0JpMQ== - -"@xterm/xterm@^5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@xterm/xterm/-/xterm-5.5.0.tgz#275fb8f6e14afa6e8a0c05d4ebc94523ff775396" - integrity sha512-hqJHYaQb5OptNunnyAnkHyM8aCjZ1MEIDTQu1iIbbTD/xops91NB5yq1ZK/dC2JDbVWtF23zUtl9JE2NqwT87A== - -ansi-styles@^3.2.1: - version "3.2.1" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" - integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== - dependencies: - color-convert "^1.9.0" - -browserslist@^4.22.2: - version "4.23.0" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.23.0.tgz#8f3acc2bbe73af7213399430890f86c63a5674ab" - integrity sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ== - dependencies: - caniuse-lite "^1.0.30001587" - electron-to-chromium "^1.4.668" - node-releases "^2.0.14" - update-browserslist-db "^1.0.13" - -caniuse-lite@^1.0.30001587: - version "1.0.30001617" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001617.tgz#809bc25f3f5027ceb33142a7d6c40759d7a901eb" - integrity sha512-mLyjzNI9I+Pix8zwcrpxEbGlfqOkF9kM3ptzmKNw5tizSyYwMe+nGLTqMK9cO+0E+Bh6TsBxNAaHWEM8xwSsmA== - -chalk@^2.4.2: - version "2.4.2" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" - integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== - dependencies: - ansi-styles "^3.2.1" - escape-string-regexp "^1.0.5" - supports-color "^5.3.0" - -clsx@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/clsx/-/clsx-2.1.1.tgz#eed397c9fd8bd882bfb18deab7102049a2f32999" - integrity sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA== - -color-convert@^1.9.0: - version "1.9.3" - resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" - integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== - dependencies: - color-name "1.1.3" - -color-name@1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" - integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw== - -convert-source-map@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-2.0.0.tgz#4b560f649fc4e918dd0ab75cf4961e8bc882d82a" - integrity sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg== - -copy-anything@^2.0.1: - version "2.0.6" - resolved "https://registry.npmjs.org/copy-anything/-/copy-anything-2.0.6.tgz" - integrity sha512-1j20GZTsvKNkc4BY3NpMOM8tt///wY3FpIzozTOFO2ffuZcV61nojHXVKIy3WM+7ADCy5FVhdZYHYDdgTU0yJw== - dependencies: - is-what "^3.14.1" - -debug@^4.1.0, debug@^4.3.1: - version "4.3.4" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" - integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== - dependencies: - ms "2.1.2" - -electron-to-chromium@^1.4.668: - version "1.4.765" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.765.tgz#c43f651b94d9c309acf165cd0fc17e9b025de03d" - integrity sha512-70APzI2AGyJgcWVSnfJCytP2Gejptk6cIm0t5uuUfwdKN63xBIZBzD0N5l/s0hWr8tj0w/p6UaPz+hLAm+Orjw== - -errno@^0.1.1: - version "0.1.8" - resolved "https://registry.npmjs.org/errno/-/errno-0.1.8.tgz" - integrity sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A== - dependencies: - prr "~1.0.1" - -esbuild@^0.20.1: - version "0.20.2" - resolved "https://registry.npmjs.org/esbuild/-/esbuild-0.20.2.tgz" - integrity sha512-WdOOppmUNU+IbZ0PaDiTst80zjnrOkyJNHoKupIcVyU8Lvla3Ugx94VzkQ32Ijqd7UhHJy75gNWDMUekcrSJ6g== - optionalDependencies: - "@esbuild/aix-ppc64" "0.20.2" - "@esbuild/android-arm" "0.20.2" - "@esbuild/android-arm64" "0.20.2" - "@esbuild/android-x64" "0.20.2" - "@esbuild/darwin-arm64" "0.20.2" - "@esbuild/darwin-x64" "0.20.2" - "@esbuild/freebsd-arm64" "0.20.2" - "@esbuild/freebsd-x64" "0.20.2" - "@esbuild/linux-arm" "0.20.2" - "@esbuild/linux-arm64" "0.20.2" - "@esbuild/linux-ia32" "0.20.2" - "@esbuild/linux-loong64" "0.20.2" - "@esbuild/linux-mips64el" "0.20.2" - "@esbuild/linux-ppc64" "0.20.2" - "@esbuild/linux-riscv64" "0.20.2" - "@esbuild/linux-s390x" "0.20.2" - "@esbuild/linux-x64" "0.20.2" - "@esbuild/netbsd-x64" "0.20.2" - "@esbuild/openbsd-x64" "0.20.2" - "@esbuild/sunos-x64" "0.20.2" - "@esbuild/win32-arm64" "0.20.2" - "@esbuild/win32-ia32" "0.20.2" - "@esbuild/win32-x64" "0.20.2" - -escalade@^3.1.2: - version "3.1.2" - resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.2.tgz#54076e9ab29ea5bf3d8f1ed62acffbb88272df27" - integrity sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA== - -escape-string-regexp@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" - integrity sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg== - -fsevents@~2.3.2, fsevents@~2.3.3: - version "2.3.3" - resolved "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz" - integrity sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw== - -gensync@^1.0.0-beta.2: - version "1.0.0-beta.2" - resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.2.tgz#32a6ee76c3d7f52d46b2b1ae5d93fea8580a25e0" - integrity sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg== - -globals@^11.1.0: - version "11.12.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" - integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== - -graceful-fs@^4.1.2: - version "4.2.11" - resolved "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz" - integrity sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ== - -has-flag@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" - integrity sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw== - -iconv-lite@^0.6.3: - version "0.6.3" - resolved "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz" - integrity sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw== - dependencies: - safer-buffer ">= 2.1.2 < 3.0.0" - -image-size@~0.5.0: - version "0.5.5" - resolved "https://registry.npmjs.org/image-size/-/image-size-0.5.5.tgz" - integrity sha512-6TDAlDPZxUFCv+fuOkIoXT/V/f3Qbq8e37p+YOiYrUv3v9cc3/6x78VdfPgFVaB9dZYeLUfKgHRebpkm/oP2VQ== - -is-what@^3.14.1: - version "3.14.1" - resolved "https://registry.npmjs.org/is-what/-/is-what-3.14.1.tgz" - integrity sha512-sNxgpk9793nzSs7bA6JQJGeIuRBQhAaNGG77kzYQgMkrID+lS6SlK07K5LaptscDlSaIgH+GPFzf+d75FVxozA== - -jotai@^2.8.0: - version "2.8.0" - resolved "https://registry.npmjs.org/jotai/-/jotai-2.8.0.tgz" - integrity sha512-yZNMC36FdLOksOr8qga0yLf14miCJlEThlp5DeFJNnqzm2+ZG7wLcJzoOyij5K6U6Xlc5ljQqPDlJRgqW0Y18g== - -"js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz" - integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== - -jsesc@^2.5.1: - version "2.5.2" - resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4" - integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA== - -json5@^2.2.3: - version "2.2.3" - resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" - integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== - -less@^4.2.0: - version "4.2.0" - resolved "https://registry.npmjs.org/less/-/less-4.2.0.tgz" - integrity sha512-P3b3HJDBtSzsXUl0im2L7gTO5Ubg8mEN6G8qoTS77iXxXX4Hvu4Qj540PZDvQ8V6DmX6iXo98k7Md0Cm1PrLaA== - dependencies: - copy-anything "^2.0.1" - parse-node-version "^1.0.1" - tslib "^2.3.0" - optionalDependencies: - errno "^0.1.1" - graceful-fs "^4.1.2" - image-size "~0.5.0" - make-dir "^2.1.0" - mime "^1.4.1" - needle "^3.1.0" - source-map "~0.6.0" - -loose-envify@^1.1.0: - version "1.4.0" - resolved "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz" - integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q== - dependencies: - js-tokens "^3.0.0 || ^4.0.0" - -lru-cache@^5.1.1: - version "5.1.1" - resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920" - integrity sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w== - dependencies: - yallist "^3.0.2" - -make-dir@^2.1.0: - version "2.1.0" - resolved "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz" - integrity sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA== - dependencies: - pify "^4.0.1" - semver "^5.6.0" - -mime@^1.4.1: - version "1.6.0" - resolved "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz" - integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== - -ms@2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" - integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== - -nanoid@^3.3.7: - version "3.3.7" - resolved "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz" - integrity sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g== - -nanoid@^5.0.7: - version "5.0.7" - resolved "https://registry.npmjs.org/nanoid/-/nanoid-5.0.7.tgz" - integrity sha512-oLxFY2gd2IqnjcYyOXD8XGCftpGtZP2AbHbOkthDkvRywH5ayNtPVy9YlOPcHckXzbLTCHpkb7FB+yuxKV13pQ== - -needle@^3.1.0: - version "3.3.1" - resolved "https://registry.npmjs.org/needle/-/needle-3.3.1.tgz" - integrity sha512-6k0YULvhpw+RoLNiQCRKOl09Rv1dPLr8hHnVjHqdolKwDrdNyk+Hmrthi4lIGPPz3r39dLx0hsF5s40sZ3Us4Q== - dependencies: - iconv-lite "^0.6.3" - sax "^1.2.4" - -node-releases@^2.0.14: - version "2.0.14" - resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.14.tgz#2ffb053bceb8b2be8495ece1ab6ce600c4461b0b" - integrity sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw== - -parse-node-version@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/parse-node-version/-/parse-node-version-1.0.1.tgz" - integrity sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA== - -picocolors@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz" - integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ== - -pify@^4.0.1: - version "4.0.1" - resolved "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz" - integrity sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g== - -postcss@^8.4.38: - version "8.4.38" - resolved "https://registry.npmjs.org/postcss/-/postcss-8.4.38.tgz" - integrity sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A== - dependencies: - nanoid "^3.3.7" - picocolors "^1.0.0" - source-map-js "^1.2.0" - -prr@~1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz" - integrity sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw== - -react-dom@^18.3.1: - version "18.3.1" - resolved "https://registry.npmjs.org/react-dom/-/react-dom-18.3.1.tgz" - integrity sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw== - dependencies: - loose-envify "^1.1.0" - scheduler "^0.23.2" - -react-refresh@^0.14.0: - version "0.14.2" - resolved "https://registry.yarnpkg.com/react-refresh/-/react-refresh-0.14.2.tgz#3833da01ce32da470f1f936b9d477da5c7028bf9" - integrity sha512-jCvmsr+1IUSMUyzOkRcvnVbX3ZYC6g9TDrDbFuFmRDq7PD4yaGbLKNQL6k2jnArV8hjYxh7hVhAZB6s9HDGpZA== - -react@^18.3.1: - version "18.3.1" - resolved "https://registry.npmjs.org/react/-/react-18.3.1.tgz" - integrity sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ== - dependencies: - loose-envify "^1.1.0" - -rollup@^4.13.0: - version "4.17.2" - resolved "https://registry.npmjs.org/rollup/-/rollup-4.17.2.tgz" - integrity sha512-/9ClTJPByC0U4zNLowV1tMBe8yMEAxewtR3cUNX5BoEpGH3dQEWpJLr6CLp0fPdYRF/fzVOgvDb1zXuakwF5kQ== - dependencies: - "@types/estree" "1.0.5" - optionalDependencies: - "@rollup/rollup-android-arm-eabi" "4.17.2" - "@rollup/rollup-android-arm64" "4.17.2" - "@rollup/rollup-darwin-arm64" "4.17.2" - "@rollup/rollup-darwin-x64" "4.17.2" - "@rollup/rollup-linux-arm-gnueabihf" "4.17.2" - "@rollup/rollup-linux-arm-musleabihf" "4.17.2" - "@rollup/rollup-linux-arm64-gnu" "4.17.2" - "@rollup/rollup-linux-arm64-musl" "4.17.2" - "@rollup/rollup-linux-powerpc64le-gnu" "4.17.2" - "@rollup/rollup-linux-riscv64-gnu" "4.17.2" - "@rollup/rollup-linux-s390x-gnu" "4.17.2" - "@rollup/rollup-linux-x64-gnu" "4.17.2" - "@rollup/rollup-linux-x64-musl" "4.17.2" - "@rollup/rollup-win32-arm64-msvc" "4.17.2" - "@rollup/rollup-win32-ia32-msvc" "4.17.2" - "@rollup/rollup-win32-x64-msvc" "4.17.2" - fsevents "~2.3.2" - -rxjs@^7.8.1: - version "7.8.1" - resolved "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz" - integrity sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg== - dependencies: - tslib "^2.1.0" - -"safer-buffer@>= 2.1.2 < 3.0.0": - version "2.1.2" - resolved "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz" - integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== - -sax@^1.2.4: - version "1.3.0" - resolved "https://registry.npmjs.org/sax/-/sax-1.3.0.tgz" - integrity sha512-0s+oAmw9zLl1V1cS9BtZN7JAd0cW5e0QH4W3LWEK6a4LaLEA2OTpGYWDY+6XasBLtz6wkm3u1xRw95mRuJ59WA== - -scheduler@^0.23.2: - version "0.23.2" - resolved "https://registry.npmjs.org/scheduler/-/scheduler-0.23.2.tgz" - integrity sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ== - dependencies: - loose-envify "^1.1.0" - -semver@^5.6.0: - version "5.7.2" - resolved "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz" - integrity sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g== - -semver@^6.3.1: - version "6.3.1" - resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" - integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== - -source-map-js@^1.2.0: - version "1.2.0" - resolved "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.0.tgz" - integrity sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg== - -source-map@~0.6.0: - version "0.6.1" - resolved "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz" - integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== - -supports-color@^5.3.0: - version "5.5.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" - integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== - dependencies: - has-flag "^3.0.0" - -to-fast-properties@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" - integrity sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog== - -tslib@^2.1.0, tslib@^2.3.0: - version "2.6.2" - resolved "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz" - integrity sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q== - -update-browserslist-db@^1.0.13: - version "1.0.15" - resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.15.tgz#60ed9f8cba4a728b7ecf7356f641a31e3a691d97" - integrity sha512-K9HWH62x3/EalU1U6sjSZiylm9C8tgq2mSvshZpqc7QE69RaA2qjhkW2HlNA0tFpEbtyFz7HTqbSdN4MSwUodA== - dependencies: - escalade "^3.1.2" - picocolors "^1.0.0" - -uuid@^9.0.1: - version "9.0.1" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-9.0.1.tgz#e188d4c8853cc722220392c424cd637f32293f30" - integrity sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA== - -vite@^5.0.0: - version "5.2.11" - resolved "https://registry.npmjs.org/vite/-/vite-5.2.11.tgz" - integrity sha512-HndV31LWW05i1BLPMUCE1B9E9GFbOu1MbenhS58FuK6owSO5qHm7GiCotrNY1YE5rMeQSFBGmT5ZaLEjFizgiQ== - dependencies: - esbuild "^0.20.1" - postcss "^8.4.38" - rollup "^4.13.0" - optionalDependencies: - fsevents "~2.3.3" - -yallist@^3.0.2: - version "3.1.1" - resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" - integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== From 77e68f244e06b9edb2b9f8176aedeae4be8da744 Mon Sep 17 00:00:00 2001 From: Evan Simkowitz Date: Thu, 19 Sep 2024 13:13:51 -0700 Subject: [PATCH 30/31] update tagline --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index c0d8e37a8..370c71d41 100644 --- a/package.json +++ b/package.json @@ -5,7 +5,7 @@ "email": "info@commandline.dev" }, "productName": "TheNextWave", - "description": "An Open-Source, AI-Native, Terminal Built for Seamless Workflows", + "description": "Level Up Your Terminal With Graphical Widgets", "license": "Apache-2.0", "version": "0.1.14-beta.3", "homepage": "https://waveterm.dev", From 76a9ccebe84aa1bfd854c02703f251bb7ac33f46 Mon Sep 17 00:00:00 2001 From: Evan Simkowitz Date: Thu, 19 Sep 2024 13:14:26 -0700 Subject: [PATCH 31/31] add sh hint --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 0e89b7817..33ccab7ba 100644 --- a/README.md +++ b/README.md @@ -25,7 +25,7 @@ Install Wave Terminal from: [www.waveterm.dev/download](https://www.waveterm.dev Also available as a homebrew cask for MacOS: -``` +```bash brew install --cask wave ```