diff --git a/knip.jsonc b/knip.jsonc index 83f9066..d111ad2 100644 --- a/knip.jsonc +++ b/knip.jsonc @@ -1,5 +1,5 @@ { - "$schema": "https://unpkg.com/knip@4/schema.json", + "$schema": "https://unpkg.com/knip@5/schema.json", "entry": [ "packages/backend/src/app.ts!", "packages/frontend/src/main.tsx!", @@ -15,6 +15,8 @@ "ignore": [ // knip isn't `working-directory` aware ".github/workflows/build.yml", + "packages/frontend/postcss.config.js", ], - "ignoreBinaries": ["touch"], + "ignoreDependencies": ["autoprefixer", "chromatic", "wait-on"], + "ignoreBinaries": [], } diff --git a/package.json b/package.json index d449254..f9cdb91 100644 --- a/package.json +++ b/package.json @@ -28,6 +28,7 @@ "lint": "run-p 'lint:*'", "lint:eslint": "eslint", "lint:sherif": "sherif", + "lint:knip": "knip", "lint:format": "prettier . --check", "format": "prettier . --write", "fe": "yarn workspace @nihalgonsalves/expenses-frontend", @@ -43,17 +44,10 @@ "@types/node": "22", "@vitest/ui": "^3.0.1", "eslint": "^9.18.0", - "eslint-config-airbnb": "^19.0.4", - "eslint-import-resolver-typescript": "^3.7.0", - "eslint-plugin-import": "^2.31.0", - "eslint-plugin-jsx-a11y": "^6.10.2", - "eslint-plugin-react": "^7.37.4", "eslint-plugin-react-compiler": "19.0.0-beta-e552027-20250112", - "eslint-plugin-react-hooks": "^5.1.0", - "eslint-plugin-react-refresh": "^0.4.18", "eslint-plugin-storybook": "^0.11.2", "eslint-plugin-unused-imports": "^4.1.4", - "knip": "^5.42.2", + "knip": "^5.43.6", "lefthook": "^1.10.8", "npm-run-all2": "^7.0.2", "prettier": "^3.4.2", diff --git a/packages/backend/package.json b/packages/backend/package.json index d73e5f7..ebe30e4 100644 --- a/packages/backend/package.json +++ b/packages/backend/package.json @@ -60,7 +60,6 @@ "npm-run-all2": "^7.0.2", "pem": "^1.15.1", "prisma": "*", - "testcontainers": "^10.16.0", "tsx": "^4.19.2", "vitest": "^3.0.1", "wait-on": "^8.0.2" diff --git a/packages/backend/src/utils/noop.ts b/packages/backend/src/utils/noop.ts index 78201a1..9c04870 100644 --- a/packages/backend/src/utils/noop.ts +++ b/packages/backend/src/utils/noop.ts @@ -1,7 +1,3 @@ export const noopAsync = async (): Promise => { // do nothing }; - -export const noopSync = () => { - // do nothing -}; diff --git a/packages/frontend/package.json b/packages/frontend/package.json index 3ed3328..f8253c2 100644 --- a/packages/frontend/package.json +++ b/packages/frontend/package.json @@ -92,6 +92,7 @@ "@storybook/react-vite": "^8.5.0", "@storybook/test": "^8.5.0", "@storybook/test-runner": "^0.21.0", + "@total-typescript/ts-reset": "^0.6.1", "@types/loadable__component": "^5", "@types/papaparse": "^5.3.15", "@types/react": "^19.0.7", diff --git a/packages/frontend/src/utils/motion.ts b/packages/frontend/src/utils/motion.ts index b869487..8c546e7 100644 --- a/packages/frontend/src/utils/motion.ts +++ b/packages/frontend/src/utils/motion.ts @@ -7,13 +7,6 @@ export const collapse = { transition: { duration: 0.1 }, } satisfies MotionProps; -export const scaleOut = { - initial: { scale: 0.8, opacity: 1 }, - animate: { scale: 1, opacity: 1 }, - exit: { scale: 0.8, opacity: 0 }, - transition: { duration: 0.3 }, -} satisfies MotionProps; - export const fadeInOut = { initial: { opacity: 0 }, animate: { opacity: 1 }, diff --git a/yarn.lock b/yarn.lock index aed9f36..df1effc 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3005,7 +3005,6 @@ __metadata: rate-limiter-flexible: "npm:^5.0.5" rrule: "npm:^2.8.1" temporal-polyfill: "npm:^0.2.5" - testcontainers: "npm:^10.16.0" tsx: "npm:^4.19.2" ua-parser-js: "npm:^2.0.0" vitest: "npm:^3.0.1" @@ -3073,6 +3072,7 @@ __metadata: "@tanstack/react-query-devtools": "npm:^5.64.1" "@tanstack/react-query-persist-client": "npm:^5.64.1" "@tanstack/react-table": "npm:^8.20.6" + "@total-typescript/ts-reset": "npm:^0.6.1" "@trpc/client": "npm:^11.0.0-rc.700" "@trpc/react-query": "npm:^11.0.0-rc.700" "@types/loadable__component": "npm:^5" @@ -3148,17 +3148,10 @@ __metadata: "@types/node": "npm:22" "@vitest/ui": "npm:^3.0.1" eslint: "npm:^9.18.0" - eslint-config-airbnb: "npm:^19.0.4" - eslint-import-resolver-typescript: "npm:^3.7.0" - eslint-plugin-import: "npm:^2.31.0" - eslint-plugin-jsx-a11y: "npm:^6.10.2" - eslint-plugin-react: "npm:^7.37.4" eslint-plugin-react-compiler: "npm:19.0.0-beta-e552027-20250112" - eslint-plugin-react-hooks: "npm:^5.1.0" - eslint-plugin-react-refresh: "npm:^0.4.18" eslint-plugin-storybook: "npm:^0.11.2" eslint-plugin-unused-imports: "npm:^4.1.4" - knip: "npm:^5.42.2" + knip: "npm:^5.43.6" lefthook: "npm:^1.10.8" npm-run-all2: "npm:^7.0.2" prettier: "npm:^3.4.2" @@ -3227,13 +3220,6 @@ __metadata: languageName: node linkType: hard -"@nolyfill/is-core-module@npm:1.0.39": - version: 1.0.39 - resolution: "@nolyfill/is-core-module@npm:1.0.39" - checksum: 10c0/34ab85fdc2e0250879518841f74a30c276bca4f6c3e13526d2d1fe515e1adf6d46c25fcd5989d22ea056d76f7c39210945180b4859fc83b050e2da411aa86289 - languageName: node - linkType: hard - "@npmcli/agent@npm:^2.0.0": version: 2.2.2 resolution: "@npmcli/agent@npm:2.2.2" @@ -9249,13 +9235,6 @@ __metadata: languageName: node linkType: hard -"confusing-browser-globals@npm:^1.0.10": - version: 1.0.11 - resolution: "confusing-browser-globals@npm:1.0.11" - checksum: 10c0/475d0a284fa964a5182b519af5738b5b64bf7e413cfd703c1b3496bf6f4df9f827893a9b221c0ea5873c1476835beb1e0df569ba643eff0734010c1eb780589e - languageName: node - linkType: hard - "console-control-strings@npm:^1.0.0, console-control-strings@npm:^1.1.0": version: 1.1.0 resolution: "console-control-strings@npm:1.1.0" @@ -9617,7 +9596,7 @@ __metadata: languageName: node linkType: hard -"debug@npm:4, debug@npm:^4.1.0, debug@npm:^4.1.1, debug@npm:^4.3.1, debug@npm:^4.3.2, debug@npm:^4.3.4, debug@npm:^4.3.5, debug@npm:^4.3.6, debug@npm:^4.3.7, debug@npm:^4.4.0": +"debug@npm:4, debug@npm:^4.1.0, debug@npm:^4.1.1, debug@npm:^4.3.1, debug@npm:^4.3.2, debug@npm:^4.3.4, debug@npm:^4.3.5, debug@npm:^4.3.6, debug@npm:^4.4.0": version: 4.4.0 resolution: "debug@npm:4.4.0" dependencies: @@ -10217,7 +10196,7 @@ __metadata: languageName: node linkType: hard -"enhanced-resolve@npm:^5.15.0, enhanced-resolve@npm:^5.17.1, enhanced-resolve@npm:^5.18.0": +"enhanced-resolve@npm:^5.17.1, enhanced-resolve@npm:^5.18.0": version: 5.18.0 resolution: "enhanced-resolve@npm:5.18.0" dependencies: @@ -10729,38 +10708,6 @@ __metadata: languageName: node linkType: hard -"eslint-config-airbnb-base@npm:^15.0.0": - version: 15.0.0 - resolution: "eslint-config-airbnb-base@npm:15.0.0" - dependencies: - confusing-browser-globals: "npm:^1.0.10" - object.assign: "npm:^4.1.2" - object.entries: "npm:^1.1.5" - semver: "npm:^6.3.0" - peerDependencies: - eslint: ^7.32.0 || ^8.2.0 - eslint-plugin-import: ^2.25.2 - checksum: 10c0/93639d991654414756f82ad7860aac30b0dc6797277b7904ddb53ed88a32c470598696bbc6c503e066414024d305221974d3769e6642de65043bedf29cbbd30f - languageName: node - linkType: hard - -"eslint-config-airbnb@npm:^19.0.4": - version: 19.0.4 - resolution: "eslint-config-airbnb@npm:19.0.4" - dependencies: - eslint-config-airbnb-base: "npm:^15.0.0" - object.assign: "npm:^4.1.2" - object.entries: "npm:^1.1.5" - peerDependencies: - eslint: ^7.32.0 || ^8.2.0 - eslint-plugin-import: ^2.25.3 - eslint-plugin-jsx-a11y: ^6.5.1 - eslint-plugin-react: ^7.28.0 - eslint-plugin-react-hooks: ^4.3.0 - checksum: 10c0/867feeda45c4b480b1b8eff8fabc1bb107e837da8b48e5039e0c175ae6ad34af383b1924fc163bbfcef24a324e6651b1515e5bd12cbcbb19535a8838e2544a02 - languageName: node - linkType: hard - "eslint-config-prettier@npm:^9.1.0": version: 9.1.0 resolution: "eslint-config-prettier@npm:9.1.0" @@ -10783,31 +10730,6 @@ __metadata: languageName: node linkType: hard -"eslint-import-resolver-typescript@npm:^3.7.0": - version: 3.7.0 - resolution: "eslint-import-resolver-typescript@npm:3.7.0" - dependencies: - "@nolyfill/is-core-module": "npm:1.0.39" - debug: "npm:^4.3.7" - enhanced-resolve: "npm:^5.15.0" - fast-glob: "npm:^3.3.2" - get-tsconfig: "npm:^4.7.5" - is-bun-module: "npm:^1.0.2" - is-glob: "npm:^4.0.3" - stable-hash: "npm:^0.0.4" - peerDependencies: - eslint: "*" - eslint-plugin-import: "*" - eslint-plugin-import-x: "*" - peerDependenciesMeta: - eslint-plugin-import: - optional: true - eslint-plugin-import-x: - optional: true - checksum: 10c0/b1dec542a31486b3b5730f71f08a8ee2ac4915dbc4aa1493fd15bc8fcadcb029772ab39a425824c235045b3a7e629290a339d4a7e7f3dd32b24e715106352d40 - languageName: node - linkType: hard - "eslint-module-utils@npm:^2.12.0": version: 2.12.0 resolution: "eslint-module-utils@npm:2.12.0" @@ -10899,16 +10821,7 @@ __metadata: languageName: node linkType: hard -"eslint-plugin-react-refresh@npm:^0.4.18": - version: 0.4.18 - resolution: "eslint-plugin-react-refresh@npm:0.4.18" - peerDependencies: - eslint: ">=8.40" - checksum: 10c0/19140a0d90e126c198c07337bc106af24f398dd8f061314f42c17511a647bea93880a11b7d40219088ac0eaea598eb591d320cfc6f82262bfb05f602101b2acc - languageName: node - linkType: hard - -"eslint-plugin-react@npm:^7.37.2, eslint-plugin-react@npm:^7.37.4": +"eslint-plugin-react@npm:^7.37.2": version: 7.37.4 resolution: "eslint-plugin-react@npm:7.37.4" dependencies: @@ -12646,15 +12559,6 @@ __metadata: languageName: node linkType: hard -"is-bun-module@npm:^1.0.2": - version: 1.1.0 - resolution: "is-bun-module@npm:1.1.0" - dependencies: - semver: "npm:^7.6.3" - checksum: 10c0/17cae968c3fe08e2bd66f8477e4d5a166d6299b5e7ce5c7558355551c50267f77dd386297fada6b68e4a32f01ce8920b0423e4d258242ea463b45901ec474beb - languageName: node - linkType: hard - "is-callable@npm:^1.1.3, is-callable@npm:^1.2.7": version: 1.2.7 resolution: "is-callable@npm:1.2.7" @@ -13931,9 +13835,9 @@ __metadata: languageName: node linkType: hard -"knip@npm:^5.42.2": - version: 5.42.2 - resolution: "knip@npm:5.42.2" +"knip@npm:^5.43.6": + version: 5.43.6 + resolution: "knip@npm:5.43.6" dependencies: "@nodelib/fs.walk": "npm:3.0.1" "@snyk/github-codeowners": "npm:1.1.0" @@ -13957,7 +13861,7 @@ __metadata: bin: knip: bin/knip.js knip-bun: bin/knip-bun.js - checksum: 10c0/1410226f54321f19da3a0dc4b495fca0fe3240d639c9316ef53bfcc525fd01687863328dfd842e616ff5070890e0685ada5c73dcbcf8abffac663679db1e5a69 + checksum: 10c0/fb8d2be32c6ac21997c78b77cbf67c1c9bb8e525f9838811b80e6a32b57723c2a1f7cb8a86621bd81c9e28582839732f79b1005628e3bc8991f5848777075630 languageName: node linkType: hard @@ -15202,7 +15106,7 @@ __metadata: languageName: node linkType: hard -"object.assign@npm:^4.1.2, object.assign@npm:^4.1.4, object.assign@npm:^4.1.7": +"object.assign@npm:^4.1.4, object.assign@npm:^4.1.7": version: 4.1.7 resolution: "object.assign@npm:4.1.7" dependencies: @@ -15216,7 +15120,7 @@ __metadata: languageName: node linkType: hard -"object.entries@npm:^1.1.5, object.entries@npm:^1.1.8": +"object.entries@npm:^1.1.8": version: 1.1.8 resolution: "object.entries@npm:1.1.8" dependencies: @@ -17989,13 +17893,6 @@ __metadata: languageName: node linkType: hard -"stable-hash@npm:^0.0.4": - version: 0.0.4 - resolution: "stable-hash@npm:0.0.4" - checksum: 10c0/53d010d2a1b014fb60d398c095f43912c353b7b44774e55222bb26fd428bc75b73d7bdfcae509ce927c23ca9c5aff2dc1bc82f191d30e57a879550bc2952bdb0 - languageName: node - linkType: hard - "stack-generator@npm:^2.0.5": version: 2.0.10 resolution: "stack-generator@npm:2.0.10"