From 909dbbfcff155d031594e2c277302947b02b2c5b Mon Sep 17 00:00:00 2001 From: Shane <6071159+smashedr@users.noreply.github.com> Date: Wed, 10 Jun 2026 16:40:13 -0700 Subject: [PATCH 1/3] Updates --- .github/workflows/docs.yaml | 8 +- .github/workflows/draft.yaml | 2 +- .github/workflows/issue.yaml | 2 + .github/workflows/preview.yaml | 8 +- AGENTS.md | 27 ++++-- TODO.md | 3 +- docs/.vitepress/theme/custom.css | 5 +- docs/.vitepress/theme/index.ts | 3 +- package-lock.json | 158 +++++++++++++++---------------- package.json | 8 +- src/utils/logger.ts | 7 ++ 11 files changed, 129 insertions(+), 102 deletions(-) create mode 100644 src/utils/logger.ts diff --git a/.github/workflows/docs.yaml b/.github/workflows/docs.yaml index 4235490..5d60ea8 100644 --- a/.github/workflows/docs.yaml +++ b/.github/workflows/docs.yaml @@ -3,7 +3,7 @@ name: "Docs" on: workflow_dispatch: push: - branches: [master] + branches: [master, main] paths: - ".github/workflows/docs.yaml" - ".vitepress/**" @@ -21,12 +21,12 @@ concurrency: jobs: build: name: "Build" - if: ${{ !contains(github.event.head_commit.message, '#nodeploy') || github.actor != 'dependabot[bot]' }} + if: ${{ !contains(github.event.head_commit.message, '#nodeploy') }} uses: cssnr/workflows/.github/workflows/npm-build.yaml@master permissions: contents: read with: - #install: "npm ci --legacy-peer-deps" + install: "npm ci --ignore-scripts" build: "npm run docs:deploy" path: "docs/.vitepress/dist" pages: true @@ -86,4 +86,4 @@ jobs: uses: sarisia/actions-status-discord@v1 with: webhook: ${{ secrets.DISCORD_WEBHOOK }} - description: ${{ github.event.repository.html_url }}/actions/runs/${{ github.run_id }} + description: ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }} diff --git a/.github/workflows/draft.yaml b/.github/workflows/draft.yaml index 02635a9..7f93c65 100644 --- a/.github/workflows/draft.yaml +++ b/.github/workflows/draft.yaml @@ -3,7 +3,7 @@ name: "Draft Release" on: workflow_dispatch: push: - branches: [master] + branches: [master, main] concurrency: group: ${{ github.workflow }}-${{ github.ref }} diff --git a/.github/workflows/issue.yaml b/.github/workflows/issue.yaml index 2e96748..5f18139 100644 --- a/.github/workflows/issue.yaml +++ b/.github/workflows/issue.yaml @@ -41,3 +41,5 @@ jobs: Provide initial triage and troubleshooting steps, then gather any additional information needed to proceed. Respond using your general knowledge of Web Extensions and the following knowledge files: url: https://cssnr.github.io/cache-cleaner/llms.txt + path: | + AGENTS.md diff --git a/.github/workflows/preview.yaml b/.github/workflows/preview.yaml index c2fe3c3..acec945 100644 --- a/.github/workflows/preview.yaml +++ b/.github/workflows/preview.yaml @@ -3,7 +3,7 @@ name: "Preview" on: workflow_dispatch: push: - branches-ignore: [master, legacy] + branches-ignore: [master, main, legacy] paths: - ".github/workflows/preview.yaml" - ".vitepress/**" @@ -17,12 +17,12 @@ concurrency: jobs: build: name: "Build" - if: ${{ !contains(github.event.head_commit.message, '#nodev') }} + if: ${{ !contains(github.event.head_commit.message, '#nopreview') }} uses: cssnr/workflows/.github/workflows/npm-build.yaml@master permissions: contents: read with: - #install: "npm ci --legacy-peer-deps" + install: "npm ci --ignore-scripts" build: "npm run docs:deploy" path: "docs/.vitepress/dist" secrets: inherit @@ -61,7 +61,7 @@ jobs: - name: "Install" id: install - run: npm ci + run: npm ci --ignore-scripts - name: "eslint" if: ${{ !cancelled() }} diff --git a/AGENTS.md b/AGENTS.md index 6c58491..2872e4b 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -1,4 +1,7 @@ -# Cache Cleaner — Agent Guide +# Agent Guide — Cache Cleaner + +Before answering any question that involves facts about ANYTHING, you MUST output at least one Read, WebFetch, or WebSearch tool call. +If your first output is text instead of a tool call, you have failed. Project - This is a Web Extension for Chrome and Firefox using the WXT Framework, TypeScript, and Vue3. The documentation uses VitePress. @@ -6,6 +9,23 @@ The documentation uses VitePress. Application - The primary purpose is to allow the user to clear site or browser cache. The user can select which items are cleared when clearing the cache, or clear everything. +## Project Structure + +- `src` - Source directory for the web extension, WXT Framework. +- `docs` - Source directory for the documentation, VitePress framework. + +## Commands + +ALWAYS use the `npm run *` command + +| Command | What it does | +| -------------------- | ----------------------------------------------------------- | +| `npm run build` | `vite build && vue-tsc --declaration --emitDeclarationOnly` | +| `npm run docs` | `vitepress dev docs` | +| `npm run docs:build` | `vitepress build docs` | +| `npm run lint` | `npx eslint src` | +| `npm run prettier` | ALWAYS RUN AFTER EDITING FILES | + ## Terminology ### Cache Items @@ -38,8 +58,3 @@ The extension allows users to interface via the following APIs. - Right-Click Context Menu - All cache options + Toggle UI - Side Panel UI - Browser + All Site cache only + Toggle UI - Popout - Browser + All Site cache only - -## Project Structure - -- `src` - Source directory for the web extension, WXT Framework. -- `docs` - Source directory for the documentation, VitePress framework. diff --git a/TODO.md b/TODO.md index 19c75ac..ae03b89 100644 --- a/TODO.md +++ b/TODO.md @@ -1,5 +1,4 @@ # TODO - Update [menus.ts](src/entrypoints/background/menus.ts) to use `page` and not `all`. -- Increase size/padding on site/browser buttons in the popup. -- Add a custom debug logger and replace console.log calls. +- Implement [logger.ts](src/utils/logger.ts). diff --git a/docs/.vitepress/theme/custom.css b/docs/.vitepress/theme/custom.css index d648685..84efbd1 100644 --- a/docs/.vitepress/theme/custom.css +++ b/docs/.vitepress/theme/custom.css @@ -13,12 +13,15 @@ --vp-button-alt-bg: var(--vp-c-default-1); } -/* NOTE: This is a "fix" for the search modal content shift */ @supports (scrollbar-gutter: stable) { + /* Note: local search is: 768px */ @media (min-width: 769px) { html { scrollbar-gutter: stable; } + html:has(:fullscreen) { + scrollbar-gutter: auto; + } } } diff --git a/docs/.vitepress/theme/index.ts b/docs/.vitepress/theme/index.ts index e221dfb..c589e8b 100644 --- a/docs/.vitepress/theme/index.ts +++ b/docs/.vitepress/theme/index.ts @@ -22,11 +22,12 @@ export default { ...DefaultTheme, ...chat(DefaultTheme, { - filePath: 'llms.txt', api: import.meta.env.VITE_AI_API, headers: import.meta.env.VITE_AI_AUTH ? { Authorization: import.meta.env.VITE_AI_AUTH } : undefined, + filePath: 'llms.txt', + showReasoning: true, }), enhanceApp({ app }) { diff --git a/package-lock.json b/package-lock.json index 419ccc6..cb66600 100644 --- a/package-lock.json +++ b/package-lock.json @@ -31,13 +31,13 @@ "eslint": "^10.4.1", "eslint-plugin-vue": "^10.9.2", "nodemon": "^3.1.14", - "prettier": "^3.8.3", + "prettier": "^3.8.4", "sass": "^1.100.0", "typescript": "^6.0.3", - "typescript-eslint": "^8.60.1", + "typescript-eslint": "^8.61.0", "vitepress": "^2.0.0-alpha.17", - "vitepress-chat": "^0.0.1", - "vue-tsc": "^3.3.3", + "vitepress-chat": "^0.0.2", + "vue-tsc": "^3.3.4", "web-ext": "^10.3.0", "wxt": "^0.20.26" } @@ -3238,17 +3238,17 @@ "license": "MIT" }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "8.60.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.60.1.tgz", - "integrity": "sha512-JQ4S5GB0tfjO8BuJ4fcX+HodkzJjYBV+7OJ+wLygaX7OGQ7FudyHL4NSCA6ob+w3Yn+5MkKIozOwQhXeM7opVg==", + "version": "8.61.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.61.0.tgz", + "integrity": "sha512-bFNvl9ZczlVb+wR2Akszf3gHfKVj/8WanXaGJ3UstTA7brNKg0cNdk6X1Psu5V7MZ2oQtzZKOEzIUehaoxbDGw==", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/regexpp": "^4.12.2", - "@typescript-eslint/scope-manager": "8.60.1", - "@typescript-eslint/type-utils": "8.60.1", - "@typescript-eslint/utils": "8.60.1", - "@typescript-eslint/visitor-keys": "8.60.1", + "@typescript-eslint/scope-manager": "8.61.0", + "@typescript-eslint/type-utils": "8.61.0", + "@typescript-eslint/utils": "8.61.0", + "@typescript-eslint/visitor-keys": "8.61.0", "ignore": "^7.0.5", "natural-compare": "^1.4.0", "ts-api-utils": "^2.5.0" @@ -3261,7 +3261,7 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "@typescript-eslint/parser": "^8.60.1", + "@typescript-eslint/parser": "^8.61.0", "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0", "typescript": ">=4.8.4 <6.1.0" } @@ -3277,16 +3277,16 @@ } }, "node_modules/@typescript-eslint/parser": { - "version": "8.60.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.60.1.tgz", - "integrity": "sha512-A0M6ua6H252bVjPvvtSgl2QA4+ET9S5Mtkb2GDyTxIhH/C4qDItT7RQNO5PhMC6NXGYXOR9dIalcDDgBKT7oFA==", + "version": "8.61.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.61.0.tgz", + "integrity": "sha512-5B7PfA2e1NQGCnDHd/0lW7W3gvp3d59Ryw54FYO8Uswxo9f6ikw3AZV+Xj/TvpImmpsiYyUqAfhC6kJID1jF6w==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/scope-manager": "8.60.1", - "@typescript-eslint/types": "8.60.1", - "@typescript-eslint/typescript-estree": "8.60.1", - "@typescript-eslint/visitor-keys": "8.60.1", + "@typescript-eslint/scope-manager": "8.61.0", + "@typescript-eslint/types": "8.61.0", + "@typescript-eslint/typescript-estree": "8.61.0", + "@typescript-eslint/visitor-keys": "8.61.0", "debug": "^4.4.3" }, "engines": { @@ -3302,14 +3302,14 @@ } }, "node_modules/@typescript-eslint/project-service": { - "version": "8.60.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.60.1.tgz", - "integrity": "sha512-eXkTH2bxmXlqD1RnOPmLZ9ZM9D3VwSx04JOwBnP9RQ+yUA5a2Mu7SfW8uaV2Aon53NJzZlZYuX7tn91Izf+xaw==", + "version": "8.61.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.61.0.tgz", + "integrity": "sha512-DV42F7MLJO6Rax7SK1yg43tcnEfGUrurSpSxKuVX+a3RCTzBlH3fuxprrOJXKCJGAaw82xXocikJ0uQaqwXgGA==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/tsconfig-utils": "^8.60.1", - "@typescript-eslint/types": "^8.60.1", + "@typescript-eslint/tsconfig-utils": "^8.61.0", + "@typescript-eslint/types": "^8.61.0", "debug": "^4.4.3" }, "engines": { @@ -3324,14 +3324,14 @@ } }, "node_modules/@typescript-eslint/scope-manager": { - "version": "8.60.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.60.1.tgz", - "integrity": "sha512-gvI5OQoptnxQnchOirukCuQ55svJSTuD/4k5+pC267xyBtYry748R9/c3tYUzb/iE6RZfllRz2lVulLCHkTm4w==", + "version": "8.61.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.61.0.tgz", + "integrity": "sha512-IWdXFHFSb6mlC3HPc7QsLDm5zYEbUla6trDEHf32D3/dnuUyXd87plScSNXSbm0/RxMvObpI17sv/EDTGrGZkA==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/types": "8.60.1", - "@typescript-eslint/visitor-keys": "8.60.1" + "@typescript-eslint/types": "8.61.0", + "@typescript-eslint/visitor-keys": "8.61.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -3342,9 +3342,9 @@ } }, "node_modules/@typescript-eslint/tsconfig-utils": { - "version": "8.60.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.60.1.tgz", - "integrity": "sha512-nh8w4qAteiKuZu3pSSzG/yGKpw0OlkrKnzFmbVRenKaD4qc+7i1GrmZaLVkr8rk4uipiPGMOW4YsM6WmKZ5CvA==", + "version": "8.61.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.61.0.tgz", + "integrity": "sha512-O5Amvdv9ztMpxpf+vmFULGG78IE6Qwdr3bCGvqwG4nwc9H2qXkOYJJnRbRHyMkQTjv1d03olqwwwzHLMqpFePQ==", "dev": true, "license": "MIT", "engines": { @@ -3359,15 +3359,15 @@ } }, "node_modules/@typescript-eslint/type-utils": { - "version": "8.60.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.60.1.tgz", - "integrity": "sha512-sdwTrpjosW7ANQYJ39ZBF1ZyEMEGVB2UsikrserVM/30a/F1dTLnu9bGxEdosugyu5caigjLrR2qiD11asjI1A==", + "version": "8.61.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.61.0.tgz", + "integrity": "sha512-TuBiQYIkd97yBfInHCTKVYMbX4kvEmpOEuixIuzCU9p8BGT1SfyyO0d0IfDMbPIHcjn/hWnusUX5e8v5Xg+X8A==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/types": "8.60.1", - "@typescript-eslint/typescript-estree": "8.60.1", - "@typescript-eslint/utils": "8.60.1", + "@typescript-eslint/types": "8.61.0", + "@typescript-eslint/typescript-estree": "8.61.0", + "@typescript-eslint/utils": "8.61.0", "debug": "^4.4.3", "ts-api-utils": "^2.5.0" }, @@ -3384,9 +3384,9 @@ } }, "node_modules/@typescript-eslint/types": { - "version": "8.60.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.60.1.tgz", - "integrity": "sha512-4h0tY8ppCkdCzcrl2YM5M3my0xsE1Tf8om3owEu5oPWmXwkKRmk0j0LGDzYBGUcAlesEbxBhazqu/K4cu3Ug7w==", + "version": "8.61.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.61.0.tgz", + "integrity": "sha512-9QTQpZ5Iin4CdIodfbDQFSeiSJKidgYJYug1P9CC2xWgUTvlmixViqDZNciMjwLBZyJnG4tGmPl97rVAFb1AJg==", "dev": true, "license": "MIT", "engines": { @@ -3398,16 +3398,16 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "8.60.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.60.1.tgz", - "integrity": "sha512-alpRkfG8hlVE5kdJW2GkfgDgXxold3e8e4l6EnmhRmRLbekgAPCCGDVD++sABy9FcgPFroq+uFcCSM1vR57Cew==", + "version": "8.61.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.61.0.tgz", + "integrity": "sha512-42zatd5qSvvcV1JdDBCLxYRznvP4eIHpPoZXdkPFnAmanA4FuZ5dibSnCBggY8hQnqajPpoGjXFdZ7fIJKQnlA==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/project-service": "8.60.1", - "@typescript-eslint/tsconfig-utils": "8.60.1", - "@typescript-eslint/types": "8.60.1", - "@typescript-eslint/visitor-keys": "8.60.1", + "@typescript-eslint/project-service": "8.61.0", + "@typescript-eslint/tsconfig-utils": "8.61.0", + "@typescript-eslint/types": "8.61.0", + "@typescript-eslint/visitor-keys": "8.61.0", "debug": "^4.4.3", "minimatch": "^10.2.2", "semver": "^7.7.3", @@ -3426,16 +3426,16 @@ } }, "node_modules/@typescript-eslint/utils": { - "version": "8.60.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.60.1.tgz", - "integrity": "sha512-h2MPBLoNtjc3qZWfY3Tl51yPorQ2McHn8pJfcMNTcIvrrZrr90Ykffit0yjrPFWQcRcUxzH20+6OcVdW4yHtUg==", + "version": "8.61.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.61.0.tgz", + "integrity": "sha512-3bzFt7ImFMW/jVYwJamDoe/dMOdFLSC6pom6rRjdh4SZJEYupyMzem8e7vKZLclLfpHjlwSAXOUxtKxGXUiLqA==", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.9.1", - "@typescript-eslint/scope-manager": "8.60.1", - "@typescript-eslint/types": "8.60.1", - "@typescript-eslint/typescript-estree": "8.60.1" + "@typescript-eslint/scope-manager": "8.61.0", + "@typescript-eslint/types": "8.61.0", + "@typescript-eslint/typescript-estree": "8.61.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -3450,13 +3450,13 @@ } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "8.60.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.60.1.tgz", - "integrity": "sha512-EbGRQg4FhrmwLodl+t3JNAnXHWVr9Vp+Zl1QBZVPY4ByfkzIT8cX3K6QWODHtkIZqqJVEWvhHSx3v5PDHsaQag==", + "version": "8.61.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.61.0.tgz", + "integrity": "sha512-QVLZu3ZPQEE+HICQyAMZ2yLQhxf0meY/wx6Hx14YcTNj13JB3qHlX3lJ02L3fLGHgERRH71kvYDwiXIguT3AjQ==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/types": "8.60.1", + "@typescript-eslint/types": "8.61.0", "eslint-visitor-keys": "^5.0.0" }, "engines": { @@ -3612,9 +3612,9 @@ "license": "MIT" }, "node_modules/@vue/language-core": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/@vue/language-core/-/language-core-3.3.3.tgz", - "integrity": "sha512-X6p+7nfY7vVT6dQwUJ+v0Jfq/lwIfhL2jMi91dQ3ln4hnlGXlxsDu/FNkeyHYgvYtyQy18ZX76IZy7X4diDbiQ==", + "version": "3.3.4", + "resolved": "https://registry.npmjs.org/@vue/language-core/-/language-core-3.3.4.tgz", + "integrity": "sha512-IuHqQ5zGGOE7CXP72VX6A42IVeIzYv4WAhO6arej11TRNqtdZfGyH8Yr2FOCaDX0dSQG+JwULLoFHGY1igYVjQ==", "dev": true, "license": "MIT", "dependencies": { @@ -8846,9 +8846,9 @@ } }, "node_modules/prettier": { - "version": "3.8.3", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.8.3.tgz", - "integrity": "sha512-7igPTM53cGHMW8xWuVTydi2KO233VFiTNyF5hLJqpilHfmn8C8gPf+PS7dUT64YcXFbiMGZxS9pCSxL/Dxm/Jw==", + "version": "3.8.4", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.8.4.tgz", + "integrity": "sha512-N2MylSdi48+5N/6S5j+maeHbUSIzzZ5uOcX5Hm4QpV8Dkb1HFjfAKTKX6yNPJQD9AhcT3ifHNB66tWTTJDi11Q==", "dev": true, "license": "MIT", "bin": { @@ -10151,16 +10151,16 @@ } }, "node_modules/typescript-eslint": { - "version": "8.60.1", - "resolved": "https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-8.60.1.tgz", - "integrity": "sha512-6m5hkkRAp8lKvhVpcprAIn5KkehQEh+47oHH2VGnExEh7dhNxXlg6GPAOIu6TxbVQxhebrJDvjl3020ooiWCMA==", + "version": "8.61.0", + "resolved": "https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-8.61.0.tgz", + "integrity": "sha512-8y31Rd0eGTrDKqhy6vT0HtzhN+YLjQizwX3aA3hPXP/ynSfnrBXcQY5IzsP9/DM7+klX4IUncZZjkchP0z+rUw==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/eslint-plugin": "8.60.1", - "@typescript-eslint/parser": "8.60.1", - "@typescript-eslint/typescript-estree": "8.60.1", - "@typescript-eslint/utils": "8.60.1" + "@typescript-eslint/eslint-plugin": "8.61.0", + "@typescript-eslint/parser": "8.61.0", + "@typescript-eslint/typescript-estree": "8.61.0", + "@typescript-eslint/utils": "8.61.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -10696,11 +10696,11 @@ } }, "node_modules/vitepress-chat": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/vitepress-chat/-/vitepress-chat-0.0.1.tgz", - "integrity": "sha512-K9jURkYdGc90PDdiNLKCoQW8gLqYrpdjr1XxPByu1aPmVBootjSD/DqkKPP8PTLNpqIwfWqQjKduhiO3Q/Hhrg==", + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/vitepress-chat/-/vitepress-chat-0.0.2.tgz", + "integrity": "sha512-UNlJCCTJrjqwWlOGPPp2GI5gHprUvcY3pFNxqCswbyzT9LBNownoJHKjzDzb9hXn0pYQNg5NEvtTNwYUhyiPZw==", "dev": true, - "license": "GPL-3.0-only", + "license": "MIT", "funding": { "type": "ko-fi", "url": "https://ko-fi.com/cssnr" @@ -10875,14 +10875,14 @@ } }, "node_modules/vue-tsc": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/vue-tsc/-/vue-tsc-3.3.3.tgz", - "integrity": "sha512-SWUEG7YRUeDJHT7Xsuhf02elYX2gxPzzAII7OxDAh4KNOr4QHQ0Lls0YfnaO5GNd560CwVa2HTfdqmA5MqvRqQ==", + "version": "3.3.4", + "resolved": "https://registry.npmjs.org/vue-tsc/-/vue-tsc-3.3.4.tgz", + "integrity": "sha512-XA/JqmQwS2GZmfgpjOEGdrKwaTSEuPwxpHa7/t6f4yiGrJb3gVHTPb9wBfByMNZwQ+xDXs41b8gaS2DKsOozUw==", "dev": true, "license": "MIT", "dependencies": { "@volar/typescript": "2.4.28", - "@vue/language-core": "3.3.3" + "@vue/language-core": "3.3.4" }, "bin": { "vue-tsc": "bin/vue-tsc.js" diff --git a/package.json b/package.json index ef63c72..214336e 100644 --- a/package.json +++ b/package.json @@ -51,13 +51,13 @@ "eslint": "^10.4.1", "eslint-plugin-vue": "^10.9.2", "nodemon": "^3.1.14", - "prettier": "^3.8.3", + "prettier": "^3.8.4", "sass": "^1.100.0", "typescript": "^6.0.3", - "typescript-eslint": "^8.60.1", + "typescript-eslint": "^8.61.0", "vitepress": "^2.0.0-alpha.17", - "vitepress-chat": "^0.0.1", - "vue-tsc": "^3.3.3", + "vitepress-chat": "^0.0.2", + "vue-tsc": "^3.3.4", "web-ext": "^10.3.0", "wxt": "^0.20.26" } diff --git a/src/utils/logger.ts b/src/utils/logger.ts new file mode 100644 index 0000000..c0a63a8 --- /dev/null +++ b/src/utils/logger.ts @@ -0,0 +1,7 @@ +export const debug = import.meta.env.DEV ? console.log.bind(console) : () => {} +// export const debug = console.log.bind(console) + +// // NOTE: To prepend [debug] and preserver formatting you can't bind... +// export const debug = import.meta.env.DEV +// ? (tag: string, ...data: any) => console.log('[debug] ' + tag, ...data) +// : () => {} From 627240d8110726aaab0f364bbce9ba913d0c4635 Mon Sep 17 00:00:00 2001 From: Shane <6071159+smashedr@users.noreply.github.com> Date: Wed, 10 Jun 2026 16:52:30 -0700 Subject: [PATCH 2/3] Updates --- AGENTS.md | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/AGENTS.md b/AGENTS.md index 2872e4b..b4c6ae0 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -18,13 +18,14 @@ The user can select which items are cleared when clearing the cache, or clear ev ALWAYS use the `npm run *` command -| Command | What it does | -| -------------------- | ----------------------------------------------------------- | -| `npm run build` | `vite build && vue-tsc --declaration --emitDeclarationOnly` | -| `npm run docs` | `vitepress dev docs` | -| `npm run docs:build` | `vitepress build docs` | -| `npm run lint` | `npx eslint src` | -| `npm run prettier` | ALWAYS RUN AFTER EDITING FILES | +| Command | What it does | +| -------------------- | ------------------------------ | +| `npm run build` | `wxt build` | +| `npm run build:ff` | build Firefox only (faster) | +| `npm run docs` | `vitepress dev docs` | +| `npm run docs:build` | `vitepress build docs` | +| `npm run lint` | `npx eslint src docs` | +| `npm run prettier` | ALWAYS RUN AFTER EDITING FILES | ## Terminology From b94216212d044aee894598918f4d9fcb73823c8d Mon Sep 17 00:00:00 2001 From: Shane <6071159+smashedr@users.noreply.github.com> Date: Wed, 10 Jun 2026 16:53:30 -0700 Subject: [PATCH 3/3] Updates --- package.json | 1 + 1 file changed, 1 insertion(+) diff --git a/package.json b/package.json index 214336e..c5bdec0 100644 --- a/package.json +++ b/package.json @@ -20,6 +20,7 @@ "get-contributors": "npx get-contributors cssnr/cache-cleaner -f docs/.vitepress/contributors.json", "clean": "rm -rf .output", "tsc": "vue-tsc --noEmit", + "prettier": "npm run prettier:write", "prettier:check": "npx prettier --check .", "prettier:write": "npx prettier --write .", "lint": "npx eslint src docs",