diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 623cd354e..f55025961 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -2,7 +2,7 @@ name: Build on: pull_request: - types: [ opened, synchronize, reopened ] + types: [opened, synchronize, reopened] permissions: contents: read @@ -12,56 +12,56 @@ jobs: build-backend: name: Build Backend runs-on: ubuntu-latest - + steps: - name: Checkout code uses: actions/checkout@v4 - + - name: Setup Bun uses: oven-sh/setup-bun@v2 with: bun-version: latest - + - name: Install dependencies run: bun install --frozen-lockfile - + - name: Type check server run: bun run forge types server - + - name: Build server run: bun run forge build server build-frontend: name: Build Frontend runs-on: ubuntu-latest - + steps: - name: Checkout code uses: actions/checkout@v4 - + - name: Setup Bun uses: oven-sh/setup-bun@v2 with: bun-version: latest - + - name: Install dependencies run: bun install --frozen-lockfile - + - name: Type check shared package run: bun run forge types shared - + - name: Build shared package run: bun run forge build shared - + - name: Type check UI package run: bun run forge types ui - - - name: Build UI package + + - name: Build UI package run: bun run forge build ui - + - name: Type check client run: bun run forge types client - + - name: Build client run: bun run forge build client @@ -70,7 +70,7 @@ jobs: runs-on: ubuntu-latest needs: [build-backend, build-frontend] if: always() && github.event_name == 'pull_request' - + steps: - name: Comment PR uses: actions/github-script@v7 @@ -80,10 +80,10 @@ jobs: const runId = context.runId; const backendResult = '${{ needs.build-backend.result }}'; const frontendResult = '${{ needs.build-frontend.result }}'; - + let summary = '## šŸ”Ø Build Results\n\n'; let allSuccess = true; - + // Backend status if (backendResult === 'success') { summary += 'āœ… **Backend Build**: Passed\n'; @@ -91,7 +91,7 @@ jobs: summary += `āŒ **Backend Build**: Failed (${backendResult})\n`; allSuccess = false; } - + // Frontend status if (frontendResult === 'success') { summary += 'āœ… **Frontend Build**: Passed\n'; @@ -99,29 +99,29 @@ jobs: summary += `āŒ **Frontend Build**: Failed (${frontendResult})\n`; allSuccess = false; } - + summary += '\n'; - + if (allSuccess) { summary += 'šŸŽ‰ All builds completed successfully!'; } else { summary += 'āš ļø One or more builds failed. Please check the logs for details.'; } - + summary += `\n\nšŸ”— [View full workflow run](https://github.com/${owner}/${repo}/actions/runs/${runId})`; - + // Find existing comment to update const comments = await github.rest.issues.listComments({ owner, repo, issue_number: number, }); - + const botComment = comments.data.find( comment => comment.user.type === 'Bot' && comment.body.includes('## šŸ”Ø Build Results') ); - + if (botComment) { // Update existing comment await github.rest.issues.updateComment({ diff --git a/.instructions/lifeforge-ui-docstring-generation.md b/.instructions/lifeforge-ui-docstring-generation.md index 285dd763a..04f980107 100644 --- a/.instructions/lifeforge-ui-docstring-generation.md +++ b/.instructions/lifeforge-ui-docstring-generation.md @@ -1,8 +1,9 @@ Generate TypeScript prop interface docstrings following this exact convention: -**FORMAT**: Use single-line JSDoc `/** Description. */` +**FORMAT**: Use single-line JSDoc `/** Description. */` **PHRASING RULES**: + - Boolean props: "Whether the [component] is [state/condition]." - Callback functions: "Callback function called when [event/condition]." - String/value props: "The [description] [additional context]." @@ -15,6 +16,7 @@ Generate TypeScript prop interface docstrings following this exact convention: - Callbacks with changes: "Callback function called when the [property] changes." **SPECIAL PATTERNS**: + - For defaults: "The [description]. Defaults to '[value]'." - For Tailwind CSS: "Additional CSS class names to apply to the [element]. Use `!` suffix for Tailwind CSS class overrides." - For i18n namespace: "The i18n namespace for internationalization. See the [main documentation](https://docs.lifeforge.melvinchia.dev) for more details." @@ -22,9 +24,10 @@ Generate TypeScript prop interface docstrings following this exact convention: - For tProps props: "Additional properties for the translation function. Used for dynamic translations. See the [i18n documentation](https://docs.lifeforge.melvinchia.dev) for more details." **REQUIREMENTS**: + - Start with capital letter, end with period - Be concise but descriptive - Use consistent terminology across similar props - Include examples in parentheses when helpful (e.g., "#FF0000") -Generate docstrings for the selected interface. \ No newline at end of file +Generate docstrings for the selected interface. diff --git a/.prettierrc b/.prettierrc index b4abb26a1..6f44c8563 100644 --- a/.prettierrc +++ b/.prettierrc @@ -8,11 +8,9 @@ "@trivago/prettier-plugin-sort-imports", "prettier-plugin-tailwindcss" ], - "importOrder": [ - "^shared/(.*)$", - "@apps/(.*)$", - "^[./]" - ], + "importOrder": ["^shared/(.*)$", "@apps/(.*)$", "^[./]"], "importOrderSeparation": true, - "importOrderSortSpecifiers": true -} \ No newline at end of file + "importOrderSortSpecifiers": true, + "tabWidth": 2, + "bracketSameLine": false +} diff --git a/.vscode/settings.json b/.vscode/settings.json index 77bb90cfd..13448c944 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -1,10 +1,5 @@ { - "cSpell.words": [ - "ITMDB", - "nuqs", - "Sizer", - "subnamespace" - ], + "cSpell.words": ["ITMDB", "nuqs", "Sizer", "subnamespace"], "typescript.tsdk": "node_modules/typescript/lib", "typescript.experimental.useTsgo": false -} \ No newline at end of file +} diff --git a/apps/achievements/client/tsconfig.json b/apps/achievements/client/tsconfig.json index 58d9321ff..851b6be91 100644 --- a/apps/achievements/client/tsconfig.json +++ b/apps/achievements/client/tsconfig.json @@ -1,50 +1,36 @@ { - "compilerOptions": { - // JSX and Language Settings - "jsx": "react-jsx", - "target": "ES2020", - "lib": [ - "ES2020", - "DOM", - "DOM.Iterable", - "ES2024.Object" - ], - - // Module Resolution - "module": "ESNext", - "moduleResolution": "bundler", - "resolveJsonModule": true, - "isolatedModules": true, - "verbatimModuleSyntax": true, - - // Build and Output - "composite": true, - "noEmit": true, - "skipLibCheck": true, - - // Type Checking - "strict": true, - "noUnusedLocals": true, - "noUnusedParameters": true, - "useDefineForClassFields": true, - "noFallthroughCasesInSwitch": true, - - // Path Mapping - "paths": { - "@": [ - "./src/index" - ], - "@/*": [ - "./src/*" - ], - "@server/*": [ - "../../../server/src/*" - ] - } - }, - "references": [ - { - "path": "../../../server/tsconfig.json" - } - ] -} \ No newline at end of file + "compilerOptions": { + // JSX and Language Settings + "jsx": "react-jsx", + "target": "ES2020", + "lib": ["ES2020", "DOM", "DOM.Iterable", "ES2024.Object"], + // Module Resolution + "module": "ESNext", + "moduleResolution": "bundler", + "resolveJsonModule": true, + "isolatedModules": true, + "verbatimModuleSyntax": true, + // Build and Output + "composite": true, + "noEmit": true, + "skipLibCheck": true, + // Type Checking + "strict": true, + "noUnusedLocals": true, + "noUnusedParameters": true, + "useDefineForClassFields": true, + "noFallthroughCasesInSwitch": true, + // Path Mapping + "paths": { + "@": ["./src/index"], + "@/*": ["./src/*"], + "@server/*": ["../../../server/src/*"] + } + }, + "include": ["./src/**/*", "./manifest.ts"], + "references": [ + { + "path": "../../../server/tsconfig.json" + } + ] +} diff --git a/apps/achievements/server/package.json b/apps/achievements/server/package.json index 96ae6e57e..3dbc1ca59 100644 --- a/apps/achievements/server/package.json +++ b/apps/achievements/server/package.json @@ -1,3 +1,3 @@ { - "type": "module" -} \ No newline at end of file + "type": "module" +} diff --git a/apps/achievements/server/tsconfig.json b/apps/achievements/server/tsconfig.json index dd4eb33f4..dd128b083 100644 --- a/apps/achievements/server/tsconfig.json +++ b/apps/achievements/server/tsconfig.json @@ -1,3 +1,3 @@ { - "extends": "../../../server/tsconfig.json" -} \ No newline at end of file + "extends": "../../../server/tsconfig.json" +} diff --git a/apps/blog/client/tsconfig.json b/apps/blog/client/tsconfig.json index 58d9321ff..851b6be91 100644 --- a/apps/blog/client/tsconfig.json +++ b/apps/blog/client/tsconfig.json @@ -1,50 +1,36 @@ { - "compilerOptions": { - // JSX and Language Settings - "jsx": "react-jsx", - "target": "ES2020", - "lib": [ - "ES2020", - "DOM", - "DOM.Iterable", - "ES2024.Object" - ], - - // Module Resolution - "module": "ESNext", - "moduleResolution": "bundler", - "resolveJsonModule": true, - "isolatedModules": true, - "verbatimModuleSyntax": true, - - // Build and Output - "composite": true, - "noEmit": true, - "skipLibCheck": true, - - // Type Checking - "strict": true, - "noUnusedLocals": true, - "noUnusedParameters": true, - "useDefineForClassFields": true, - "noFallthroughCasesInSwitch": true, - - // Path Mapping - "paths": { - "@": [ - "./src/index" - ], - "@/*": [ - "./src/*" - ], - "@server/*": [ - "../../../server/src/*" - ] - } - }, - "references": [ - { - "path": "../../../server/tsconfig.json" - } - ] -} \ No newline at end of file + "compilerOptions": { + // JSX and Language Settings + "jsx": "react-jsx", + "target": "ES2020", + "lib": ["ES2020", "DOM", "DOM.Iterable", "ES2024.Object"], + // Module Resolution + "module": "ESNext", + "moduleResolution": "bundler", + "resolveJsonModule": true, + "isolatedModules": true, + "verbatimModuleSyntax": true, + // Build and Output + "composite": true, + "noEmit": true, + "skipLibCheck": true, + // Type Checking + "strict": true, + "noUnusedLocals": true, + "noUnusedParameters": true, + "useDefineForClassFields": true, + "noFallthroughCasesInSwitch": true, + // Path Mapping + "paths": { + "@": ["./src/index"], + "@/*": ["./src/*"], + "@server/*": ["../../../server/src/*"] + } + }, + "include": ["./src/**/*", "./manifest.ts"], + "references": [ + { + "path": "../../../server/tsconfig.json" + } + ] +} diff --git a/apps/blog/server/package.json b/apps/blog/server/package.json index 96ae6e57e..3dbc1ca59 100644 --- a/apps/blog/server/package.json +++ b/apps/blog/server/package.json @@ -1,3 +1,3 @@ { - "type": "module" -} \ No newline at end of file + "type": "module" +} diff --git a/apps/blog/server/tsconfig.json b/apps/blog/server/tsconfig.json index dd4eb33f4..dd128b083 100644 --- a/apps/blog/server/tsconfig.json +++ b/apps/blog/server/tsconfig.json @@ -1,3 +1,3 @@ { - "extends": "../../../server/tsconfig.json" -} \ No newline at end of file + "extends": "../../../server/tsconfig.json" +} diff --git a/apps/booksLibrary/client/src/components/modals/AnnasModal/index.tsx b/apps/booksLibrary/client/src/components/modals/AnnasModal/index.tsx index 04ee90c23..c42d08dd2 100644 --- a/apps/booksLibrary/client/src/components/modals/AnnasModal/index.tsx +++ b/apps/booksLibrary/client/src/components/modals/AnnasModal/index.tsx @@ -172,8 +172,9 @@ function AnnasModal({ onClose }: { onClose: () => void }) {

- {data.total} result{data.total !== 1 ? 's' : ''} found on - page {currentPage} of {data.totalPages} + {data.total} result + {data.total !== 1 ? 's' : ''} found on page {currentPage} of{' '} + {data.totalPages}

{ - queryClient.invalidateQueries({ queryKey: ['booksLibrary', stuff] }) + queryClient.invalidateQueries({ + queryKey: ['booksLibrary', stuff] + }) }, onError: () => { toast.error(`Failed to ${type} ${_.camelCase(stuff)}`) diff --git a/apps/booksLibrary/client/src/index.tsx b/apps/booksLibrary/client/src/index.tsx index 515344846..bcb63fc06 100644 --- a/apps/booksLibrary/client/src/index.tsx +++ b/apps/booksLibrary/client/src/index.tsx @@ -79,7 +79,10 @@ function BooksLibrary() { new } - classNames={{ wrapper: 'hidden md:block', menu: 'w-64' }} + classNames={{ + wrapper: 'hidden md:block', + menu: 'w-64' + }} > { queryClient.setQueryData( - forgeAPI.calendar.events.getByDateRange.input({ start, end }).key, + forgeAPI.calendar.events.getByDateRange.input({ + start, + end + }).key, (oldData: CalendarEvent[]) => { return oldData.filter(item => item.id !== event.id) } diff --git a/apps/calendar/client/src/components/Calendar/components/EventItem/components/EventItemButton.tsx b/apps/calendar/client/src/components/Calendar/components/EventItem/components/EventItemButton.tsx index 021ede693..60d9517e1 100644 --- a/apps/calendar/client/src/components/Calendar/components/EventItem/components/EventItemButton.tsx +++ b/apps/calendar/client/src/components/Calendar/components/EventItem/components/EventItemButton.tsx @@ -9,7 +9,7 @@ function EventItemButton({ title, color, icon, - isStrikethrough, + isStrikethrough }: { id: string title: string diff --git a/apps/calendar/client/src/components/modals/ModifyCalendarModal.tsx b/apps/calendar/client/src/components/modals/ModifyCalendarModal.tsx index ae2a76c74..91150b326 100644 --- a/apps/calendar/client/src/components/modals/ModifyCalendarModal.tsx +++ b/apps/calendar/client/src/components/modals/ModifyCalendarModal.tsx @@ -23,7 +23,9 @@ function ModifyCalendarModal({ const mutation = useMutation( (type === 'create' ? forgeAPI.calendar.calendars.create - : forgeAPI.calendar.calendars.update.input({ id: initialData?.id || '' }) + : forgeAPI.calendar.calendars.update.input({ + id: initialData?.id || '' + }) ).mutationOptions({ onSuccess: () => { queryClient.invalidateQueries({ diff --git a/apps/calendar/client/src/components/modals/ModifyEventModal.tsx b/apps/calendar/client/src/components/modals/ModifyEventModal.tsx index eab696825..80ef2f835 100644 --- a/apps/calendar/client/src/components/modals/ModifyEventModal.tsx +++ b/apps/calendar/client/src/components/modals/ModifyEventModal.tsx @@ -124,8 +124,16 @@ function ModifyEventModal({ required: true, icon: 'tabler:calendar', options: [ - { value: 'single', text: 'Single Event', icon: 'tabler:calendar' }, - { value: 'recurring', text: 'Recurring Event', icon: 'tabler:repeat' } + { + value: 'single', + text: 'Single Event', + icon: 'tabler:calendar' + }, + { + value: 'recurring', + text: 'Recurring Event', + icon: 'tabler:repeat' + } ], disabled: type === 'update' }, diff --git a/apps/calendar/client/tsconfig.json b/apps/calendar/client/tsconfig.json index 58d9321ff..851b6be91 100644 --- a/apps/calendar/client/tsconfig.json +++ b/apps/calendar/client/tsconfig.json @@ -1,50 +1,36 @@ { - "compilerOptions": { - // JSX and Language Settings - "jsx": "react-jsx", - "target": "ES2020", - "lib": [ - "ES2020", - "DOM", - "DOM.Iterable", - "ES2024.Object" - ], - - // Module Resolution - "module": "ESNext", - "moduleResolution": "bundler", - "resolveJsonModule": true, - "isolatedModules": true, - "verbatimModuleSyntax": true, - - // Build and Output - "composite": true, - "noEmit": true, - "skipLibCheck": true, - - // Type Checking - "strict": true, - "noUnusedLocals": true, - "noUnusedParameters": true, - "useDefineForClassFields": true, - "noFallthroughCasesInSwitch": true, - - // Path Mapping - "paths": { - "@": [ - "./src/index" - ], - "@/*": [ - "./src/*" - ], - "@server/*": [ - "../../../server/src/*" - ] - } - }, - "references": [ - { - "path": "../../../server/tsconfig.json" - } - ] -} \ No newline at end of file + "compilerOptions": { + // JSX and Language Settings + "jsx": "react-jsx", + "target": "ES2020", + "lib": ["ES2020", "DOM", "DOM.Iterable", "ES2024.Object"], + // Module Resolution + "module": "ESNext", + "moduleResolution": "bundler", + "resolveJsonModule": true, + "isolatedModules": true, + "verbatimModuleSyntax": true, + // Build and Output + "composite": true, + "noEmit": true, + "skipLibCheck": true, + // Type Checking + "strict": true, + "noUnusedLocals": true, + "noUnusedParameters": true, + "useDefineForClassFields": true, + "noFallthroughCasesInSwitch": true, + // Path Mapping + "paths": { + "@": ["./src/index"], + "@/*": ["./src/*"], + "@server/*": ["../../../server/src/*"] + } + }, + "include": ["./src/**/*", "./manifest.ts"], + "references": [ + { + "path": "../../../server/tsconfig.json" + } + ] +} diff --git a/apps/calendar/locales/en.json b/apps/calendar/locales/en.json index 769c2d4c9..519a4ec11 100644 --- a/apps/calendar/locales/en.json +++ b/apps/calendar/locales/en.json @@ -171,4 +171,4 @@ "todaysEvent": "Today's Events", "miniCalendar": "Mini Calendar" } -} \ No newline at end of file +} diff --git a/apps/calendar/locales/ms.json b/apps/calendar/locales/ms.json index c17ff789f..fab20cb6b 100644 --- a/apps/calendar/locales/ms.json +++ b/apps/calendar/locales/ms.json @@ -171,4 +171,4 @@ "todaysEvent": "Acara Hari Ini", "miniCalendar": "Kalendar Mini" } -} \ No newline at end of file +} diff --git a/apps/calendar/locales/zh-CN.json b/apps/calendar/locales/zh-CN.json index 817771cc2..937038784 100644 --- a/apps/calendar/locales/zh-CN.json +++ b/apps/calendar/locales/zh-CN.json @@ -171,4 +171,4 @@ "todaysEvent": "ä»Šå¤©ēš„äŗ‹ä»¶", "miniCalendar": "čæ·ä½ ę—„åŽ†" } -} \ No newline at end of file +} diff --git a/apps/calendar/locales/zh-TW.json b/apps/calendar/locales/zh-TW.json index bb63ac4f3..9845e8642 100644 --- a/apps/calendar/locales/zh-TW.json +++ b/apps/calendar/locales/zh-TW.json @@ -171,4 +171,4 @@ "todaysEvent": "ä»Šå¤©ēš„äŗ‹ä»¶", "miniCalendar": "迷你旄曆" } -} \ No newline at end of file +} diff --git a/apps/calendar/server/functions/getEvents.ts b/apps/calendar/server/functions/getEvents.ts index edffa5e2c..6b7072546 100644 --- a/apps/calendar/server/functions/getEvents.ts +++ b/apps/calendar/server/functions/getEvents.ts @@ -211,7 +211,11 @@ export default async function getEvents({ await pb.getFullList .collection('movies__entries') .filter([ - { field: 'theatre_showtime', operator: '>=', value: startMoment }, + { + field: 'theatre_showtime', + operator: '>=', + value: startMoment + }, { field: 'theatre_showtime', operator: '<=', value: endMoment } ]) .execute() diff --git a/apps/calendar/server/package.json b/apps/calendar/server/package.json index 96ae6e57e..3dbc1ca59 100644 --- a/apps/calendar/server/package.json +++ b/apps/calendar/server/package.json @@ -1,3 +1,3 @@ { - "type": "module" -} \ No newline at end of file + "type": "module" +} diff --git a/apps/calendar/server/tsconfig.json b/apps/calendar/server/tsconfig.json index dd4eb33f4..dd128b083 100644 --- a/apps/calendar/server/tsconfig.json +++ b/apps/calendar/server/tsconfig.json @@ -1,3 +1,3 @@ { - "extends": "../../../server/tsconfig.json" -} \ No newline at end of file + "extends": "../../../server/tsconfig.json" +} diff --git a/apps/cfopAlgorithms/client/tsconfig.json b/apps/cfopAlgorithms/client/tsconfig.json index 58d9321ff..851b6be91 100644 --- a/apps/cfopAlgorithms/client/tsconfig.json +++ b/apps/cfopAlgorithms/client/tsconfig.json @@ -1,50 +1,36 @@ { - "compilerOptions": { - // JSX and Language Settings - "jsx": "react-jsx", - "target": "ES2020", - "lib": [ - "ES2020", - "DOM", - "DOM.Iterable", - "ES2024.Object" - ], - - // Module Resolution - "module": "ESNext", - "moduleResolution": "bundler", - "resolveJsonModule": true, - "isolatedModules": true, - "verbatimModuleSyntax": true, - - // Build and Output - "composite": true, - "noEmit": true, - "skipLibCheck": true, - - // Type Checking - "strict": true, - "noUnusedLocals": true, - "noUnusedParameters": true, - "useDefineForClassFields": true, - "noFallthroughCasesInSwitch": true, - - // Path Mapping - "paths": { - "@": [ - "./src/index" - ], - "@/*": [ - "./src/*" - ], - "@server/*": [ - "../../../server/src/*" - ] - } - }, - "references": [ - { - "path": "../../../server/tsconfig.json" - } - ] -} \ No newline at end of file + "compilerOptions": { + // JSX and Language Settings + "jsx": "react-jsx", + "target": "ES2020", + "lib": ["ES2020", "DOM", "DOM.Iterable", "ES2024.Object"], + // Module Resolution + "module": "ESNext", + "moduleResolution": "bundler", + "resolveJsonModule": true, + "isolatedModules": true, + "verbatimModuleSyntax": true, + // Build and Output + "composite": true, + "noEmit": true, + "skipLibCheck": true, + // Type Checking + "strict": true, + "noUnusedLocals": true, + "noUnusedParameters": true, + "useDefineForClassFields": true, + "noFallthroughCasesInSwitch": true, + // Path Mapping + "paths": { + "@": ["./src/index"], + "@/*": ["./src/*"], + "@server/*": ["../../../server/src/*"] + } + }, + "include": ["./src/**/*", "./manifest.ts"], + "references": [ + { + "path": "../../../server/tsconfig.json" + } + ] +} diff --git a/apps/cfopAlgorithms/locales/en.json b/apps/cfopAlgorithms/locales/en.json index 9a066551c..a863d3d1b 100644 --- a/apps/cfopAlgorithms/locales/en.json +++ b/apps/cfopAlgorithms/locales/en.json @@ -1,4 +1,4 @@ { "title": "CFOP Algorithms", "description": "Learn speedcubing, all in one place" -} \ No newline at end of file +} diff --git a/apps/cfopAlgorithms/locales/ms.json b/apps/cfopAlgorithms/locales/ms.json index f4fdacf0d..4f505c087 100644 --- a/apps/cfopAlgorithms/locales/ms.json +++ b/apps/cfopAlgorithms/locales/ms.json @@ -1,4 +1,4 @@ { "title": "Algoritma CFOP", "description": "Belajar speedcubing, semua dalam satu tempat" -} \ No newline at end of file +} diff --git a/apps/cfopAlgorithms/locales/zh-CN.json b/apps/cfopAlgorithms/locales/zh-CN.json index 13e1b30d1..158d91afe 100644 --- a/apps/cfopAlgorithms/locales/zh-CN.json +++ b/apps/cfopAlgorithms/locales/zh-CN.json @@ -1,4 +1,4 @@ { "title": "CFOP 算法", "description": "å­¦ä¹ é€Ÿę‹§é­”ę–¹ļ¼Œäø€ē«™å¼ęœåŠ”" -} \ No newline at end of file +} diff --git a/apps/cfopAlgorithms/locales/zh-TW.json b/apps/cfopAlgorithms/locales/zh-TW.json index e85b90961..b8722167d 100644 --- a/apps/cfopAlgorithms/locales/zh-TW.json +++ b/apps/cfopAlgorithms/locales/zh-TW.json @@ -1,4 +1,4 @@ { "title": "CFOP 演算法", "description": "å­øēæ’é€Ÿč§£é­”ę–¹ļ¼Œäø€ē«™å¼ęœå‹™" -} \ No newline at end of file +} diff --git a/apps/changiAirportFlightStatus/client/tsconfig.json b/apps/changiAirportFlightStatus/client/tsconfig.json index 58d9321ff..851b6be91 100644 --- a/apps/changiAirportFlightStatus/client/tsconfig.json +++ b/apps/changiAirportFlightStatus/client/tsconfig.json @@ -1,50 +1,36 @@ { - "compilerOptions": { - // JSX and Language Settings - "jsx": "react-jsx", - "target": "ES2020", - "lib": [ - "ES2020", - "DOM", - "DOM.Iterable", - "ES2024.Object" - ], - - // Module Resolution - "module": "ESNext", - "moduleResolution": "bundler", - "resolveJsonModule": true, - "isolatedModules": true, - "verbatimModuleSyntax": true, - - // Build and Output - "composite": true, - "noEmit": true, - "skipLibCheck": true, - - // Type Checking - "strict": true, - "noUnusedLocals": true, - "noUnusedParameters": true, - "useDefineForClassFields": true, - "noFallthroughCasesInSwitch": true, - - // Path Mapping - "paths": { - "@": [ - "./src/index" - ], - "@/*": [ - "./src/*" - ], - "@server/*": [ - "../../../server/src/*" - ] - } - }, - "references": [ - { - "path": "../../../server/tsconfig.json" - } - ] -} \ No newline at end of file + "compilerOptions": { + // JSX and Language Settings + "jsx": "react-jsx", + "target": "ES2020", + "lib": ["ES2020", "DOM", "DOM.Iterable", "ES2024.Object"], + // Module Resolution + "module": "ESNext", + "moduleResolution": "bundler", + "resolveJsonModule": true, + "isolatedModules": true, + "verbatimModuleSyntax": true, + // Build and Output + "composite": true, + "noEmit": true, + "skipLibCheck": true, + // Type Checking + "strict": true, + "noUnusedLocals": true, + "noUnusedParameters": true, + "useDefineForClassFields": true, + "noFallthroughCasesInSwitch": true, + // Path Mapping + "paths": { + "@": ["./src/index"], + "@/*": ["./src/*"], + "@server/*": ["../../../server/src/*"] + } + }, + "include": ["./src/**/*", "./manifest.ts"], + "references": [ + { + "path": "../../../server/tsconfig.json" + } + ] +} diff --git a/apps/changiAirportFlightStatus/locales/en.json b/apps/changiAirportFlightStatus/locales/en.json index 5ffcbac35..3667e7a9d 100644 --- a/apps/changiAirportFlightStatus/locales/en.json +++ b/apps/changiAirportFlightStatus/locales/en.json @@ -4,4 +4,4 @@ "items": { "flight": "Flight" } -} \ No newline at end of file +} diff --git a/apps/changiAirportFlightStatus/locales/ms.json b/apps/changiAirportFlightStatus/locales/ms.json index 3443e5368..2e76413b1 100644 --- a/apps/changiAirportFlightStatus/locales/ms.json +++ b/apps/changiAirportFlightStatus/locales/ms.json @@ -4,4 +4,4 @@ "items": { "flight": "Penerbangan" } -} \ No newline at end of file +} diff --git a/apps/changiAirportFlightStatus/locales/zh-CN.json b/apps/changiAirportFlightStatus/locales/zh-CN.json index 79c631e1c..cd1d271d7 100644 --- a/apps/changiAirportFlightStatus/locales/zh-CN.json +++ b/apps/changiAirportFlightStatus/locales/zh-CN.json @@ -4,4 +4,4 @@ "items": { "flight": "čˆŖē­" } -} \ No newline at end of file +} diff --git a/apps/changiAirportFlightStatus/locales/zh-TW.json b/apps/changiAirportFlightStatus/locales/zh-TW.json index 95e1ab02e..d9487cbe0 100644 --- a/apps/changiAirportFlightStatus/locales/zh-TW.json +++ b/apps/changiAirportFlightStatus/locales/zh-TW.json @@ -4,4 +4,4 @@ "items": { "flight": "čˆŖē­" } -} \ No newline at end of file +} diff --git a/apps/changiAirportFlightStatus/server/package.json b/apps/changiAirportFlightStatus/server/package.json index 96ae6e57e..3dbc1ca59 100644 --- a/apps/changiAirportFlightStatus/server/package.json +++ b/apps/changiAirportFlightStatus/server/package.json @@ -1,3 +1,3 @@ { - "type": "module" -} \ No newline at end of file + "type": "module" +} diff --git a/apps/changiAirportFlightStatus/server/tsconfig.json b/apps/changiAirportFlightStatus/server/tsconfig.json index dd4eb33f4..dd128b083 100644 --- a/apps/changiAirportFlightStatus/server/tsconfig.json +++ b/apps/changiAirportFlightStatus/server/tsconfig.json @@ -1,3 +1,3 @@ { - "extends": "../../../server/tsconfig.json" -} \ No newline at end of file + "extends": "../../../server/tsconfig.json" +} diff --git a/apps/codeTime/client/tsconfig.json b/apps/codeTime/client/tsconfig.json index 58d9321ff..851b6be91 100644 --- a/apps/codeTime/client/tsconfig.json +++ b/apps/codeTime/client/tsconfig.json @@ -1,50 +1,36 @@ { - "compilerOptions": { - // JSX and Language Settings - "jsx": "react-jsx", - "target": "ES2020", - "lib": [ - "ES2020", - "DOM", - "DOM.Iterable", - "ES2024.Object" - ], - - // Module Resolution - "module": "ESNext", - "moduleResolution": "bundler", - "resolveJsonModule": true, - "isolatedModules": true, - "verbatimModuleSyntax": true, - - // Build and Output - "composite": true, - "noEmit": true, - "skipLibCheck": true, - - // Type Checking - "strict": true, - "noUnusedLocals": true, - "noUnusedParameters": true, - "useDefineForClassFields": true, - "noFallthroughCasesInSwitch": true, - - // Path Mapping - "paths": { - "@": [ - "./src/index" - ], - "@/*": [ - "./src/*" - ], - "@server/*": [ - "../../../server/src/*" - ] - } - }, - "references": [ - { - "path": "../../../server/tsconfig.json" - } - ] -} \ No newline at end of file + "compilerOptions": { + // JSX and Language Settings + "jsx": "react-jsx", + "target": "ES2020", + "lib": ["ES2020", "DOM", "DOM.Iterable", "ES2024.Object"], + // Module Resolution + "module": "ESNext", + "moduleResolution": "bundler", + "resolveJsonModule": true, + "isolatedModules": true, + "verbatimModuleSyntax": true, + // Build and Output + "composite": true, + "noEmit": true, + "skipLibCheck": true, + // Type Checking + "strict": true, + "noUnusedLocals": true, + "noUnusedParameters": true, + "useDefineForClassFields": true, + "noFallthroughCasesInSwitch": true, + // Path Mapping + "paths": { + "@": ["./src/index"], + "@/*": ["./src/*"], + "@server/*": ["../../../server/src/*"] + } + }, + "include": ["./src/**/*", "./manifest.ts"], + "references": [ + { + "path": "../../../server/tsconfig.json" + } + ] +} diff --git a/apps/codeTime/locales/en.json b/apps/codeTime/locales/en.json index bd3942758..19f5094ec 100644 --- a/apps/codeTime/locales/en.json +++ b/apps/codeTime/locales/en.json @@ -27,4 +27,4 @@ "hours": "Hours", "noTime": "No Time Recorded" } -} \ No newline at end of file +} diff --git a/apps/codeTime/locales/ms.json b/apps/codeTime/locales/ms.json index 88d7af303..fd0b8d4fb 100644 --- a/apps/codeTime/locales/ms.json +++ b/apps/codeTime/locales/ms.json @@ -27,4 +27,4 @@ "hours": "Jam", "noTime": "Tiada Masa Direkod" } -} \ No newline at end of file +} diff --git a/apps/codeTime/locales/zh-CN.json b/apps/codeTime/locales/zh-CN.json index 26a241f23..271431de2 100644 --- a/apps/codeTime/locales/zh-CN.json +++ b/apps/codeTime/locales/zh-CN.json @@ -27,4 +27,4 @@ "hours": "å°ę—¶", "noTime": "ę²”ęœ‰č®°å½•ę—¶é—“" } -} \ No newline at end of file +} diff --git a/apps/codeTime/locales/zh-TW.json b/apps/codeTime/locales/zh-TW.json index d11eab984..9251731d7 100644 --- a/apps/codeTime/locales/zh-TW.json +++ b/apps/codeTime/locales/zh-TW.json @@ -27,4 +27,4 @@ "hours": "å°ę™‚", "noTime": "ęœŖčØ˜éŒ„ę™‚é–“" } -} \ No newline at end of file +} diff --git a/apps/codeTime/server/package.json b/apps/codeTime/server/package.json index 96ae6e57e..3dbc1ca59 100644 --- a/apps/codeTime/server/package.json +++ b/apps/codeTime/server/package.json @@ -1,3 +1,3 @@ { - "type": "module" -} \ No newline at end of file + "type": "module" +} diff --git a/apps/codeTime/server/tsconfig.json b/apps/codeTime/server/tsconfig.json index dd4eb33f4..dd128b083 100644 --- a/apps/codeTime/server/tsconfig.json +++ b/apps/codeTime/server/tsconfig.json @@ -1,3 +1,3 @@ { - "extends": "../../../server/tsconfig.json" -} \ No newline at end of file + "extends": "../../../server/tsconfig.json" +} diff --git a/apps/currencyConverter/client/tsconfig.json b/apps/currencyConverter/client/tsconfig.json index 58d9321ff..851b6be91 100644 --- a/apps/currencyConverter/client/tsconfig.json +++ b/apps/currencyConverter/client/tsconfig.json @@ -1,50 +1,36 @@ { - "compilerOptions": { - // JSX and Language Settings - "jsx": "react-jsx", - "target": "ES2020", - "lib": [ - "ES2020", - "DOM", - "DOM.Iterable", - "ES2024.Object" - ], - - // Module Resolution - "module": "ESNext", - "moduleResolution": "bundler", - "resolveJsonModule": true, - "isolatedModules": true, - "verbatimModuleSyntax": true, - - // Build and Output - "composite": true, - "noEmit": true, - "skipLibCheck": true, - - // Type Checking - "strict": true, - "noUnusedLocals": true, - "noUnusedParameters": true, - "useDefineForClassFields": true, - "noFallthroughCasesInSwitch": true, - - // Path Mapping - "paths": { - "@": [ - "./src/index" - ], - "@/*": [ - "./src/*" - ], - "@server/*": [ - "../../../server/src/*" - ] - } - }, - "references": [ - { - "path": "../../../server/tsconfig.json" - } - ] -} \ No newline at end of file + "compilerOptions": { + // JSX and Language Settings + "jsx": "react-jsx", + "target": "ES2020", + "lib": ["ES2020", "DOM", "DOM.Iterable", "ES2024.Object"], + // Module Resolution + "module": "ESNext", + "moduleResolution": "bundler", + "resolveJsonModule": true, + "isolatedModules": true, + "verbatimModuleSyntax": true, + // Build and Output + "composite": true, + "noEmit": true, + "skipLibCheck": true, + // Type Checking + "strict": true, + "noUnusedLocals": true, + "noUnusedParameters": true, + "useDefineForClassFields": true, + "noFallthroughCasesInSwitch": true, + // Path Mapping + "paths": { + "@": ["./src/index"], + "@/*": ["./src/*"], + "@server/*": ["../../../server/src/*"] + } + }, + "include": ["./src/**/*", "./manifest.ts"], + "references": [ + { + "path": "../../../server/tsconfig.json" + } + ] +} diff --git a/apps/ideaBox/client/src/pages/Ideas/components/IdeaAndFolderList/components/FolderList/components/FolderContextMenu.tsx b/apps/ideaBox/client/src/pages/Ideas/components/IdeaAndFolderList/components/FolderList/components/FolderContextMenu.tsx index cef8a8c5c..dada7a513 100644 --- a/apps/ideaBox/client/src/pages/Ideas/components/IdeaAndFolderList/components/FolderList/components/FolderContextMenu.tsx +++ b/apps/ideaBox/client/src/pages/Ideas/components/IdeaAndFolderList/components/FolderList/components/FolderContextMenu.tsx @@ -38,7 +38,9 @@ function FolderContextMenu({ }) .mutationOptions({ onSuccess: () => { - queryClient.invalidateQueries({ queryKey: ['ideaBox', 'folders'] }) + queryClient.invalidateQueries({ + queryKey: ['ideaBox', 'folders'] + }) }, onError: error => { toast.error(`Failed to delete folder: ${error.message}`) diff --git a/apps/ideaBox/client/src/pages/Ideas/components/IdeaAndFolderList/index.tsx b/apps/ideaBox/client/src/pages/Ideas/components/IdeaAndFolderList/index.tsx index d588cc90d..8479de6e1 100644 --- a/apps/ideaBox/client/src/pages/Ideas/components/IdeaAndFolderList/index.tsx +++ b/apps/ideaBox/client/src/pages/Ideas/components/IdeaAndFolderList/index.tsx @@ -47,7 +47,9 @@ function IdeaAndFolderList() { children: 'new', onClick: handleIdeaCreation, icon: 'tabler:plus', - tProps: { item: t('items.idea') } + tProps: { + item: t('items.idea') + } }} icon="tabler:bulb-off" name="idea" diff --git a/apps/ideaBox/client/src/pages/Ideas/components/modals/ModifyFolderModal.tsx b/apps/ideaBox/client/src/pages/Ideas/components/modals/ModifyFolderModal.tsx index 6e36cc18d..221863c9a 100644 --- a/apps/ideaBox/client/src/pages/Ideas/components/modals/ModifyFolderModal.tsx +++ b/apps/ideaBox/client/src/pages/Ideas/components/modals/ModifyFolderModal.tsx @@ -28,7 +28,9 @@ function ModifyFolderModal({ }) ).mutationOptions({ onSuccess: () => { - queryClient.invalidateQueries({ queryKey: ['ideaBox', 'folders'] }) + queryClient.invalidateQueries({ + queryKey: ['ideaBox', 'folders'] + }) }, onError: error => { toast.error(`Failed to ${type} folder: ${error.message}`) diff --git a/apps/ideaBox/client/src/pages/Ideas/components/modals/ModifyIdeaModal.tsx b/apps/ideaBox/client/src/pages/Ideas/components/modals/ModifyIdeaModal.tsx index 347084d11..25d8ce895 100644 --- a/apps/ideaBox/client/src/pages/Ideas/components/modals/ModifyIdeaModal.tsx +++ b/apps/ideaBox/client/src/pages/Ideas/components/modals/ModifyIdeaModal.tsx @@ -84,8 +84,16 @@ function ModifyIdeaModal({ text: t('entryType.text'), icon: 'tabler:text-size' }, - { value: 'link', text: t('entryType.link'), icon: 'tabler:link' }, - { value: 'image', text: t('entryType.image'), icon: 'tabler:photo' } + { + value: 'link', + text: t('entryType.link'), + icon: 'tabler:link' + }, + { + value: 'image', + text: t('entryType.image'), + icon: 'tabler:photo' + } ], disabled: type === 'update' }, diff --git a/apps/ideaBox/client/tsconfig.json b/apps/ideaBox/client/tsconfig.json index 58d9321ff..851b6be91 100644 --- a/apps/ideaBox/client/tsconfig.json +++ b/apps/ideaBox/client/tsconfig.json @@ -1,50 +1,36 @@ { - "compilerOptions": { - // JSX and Language Settings - "jsx": "react-jsx", - "target": "ES2020", - "lib": [ - "ES2020", - "DOM", - "DOM.Iterable", - "ES2024.Object" - ], - - // Module Resolution - "module": "ESNext", - "moduleResolution": "bundler", - "resolveJsonModule": true, - "isolatedModules": true, - "verbatimModuleSyntax": true, - - // Build and Output - "composite": true, - "noEmit": true, - "skipLibCheck": true, - - // Type Checking - "strict": true, - "noUnusedLocals": true, - "noUnusedParameters": true, - "useDefineForClassFields": true, - "noFallthroughCasesInSwitch": true, - - // Path Mapping - "paths": { - "@": [ - "./src/index" - ], - "@/*": [ - "./src/*" - ], - "@server/*": [ - "../../../server/src/*" - ] - } - }, - "references": [ - { - "path": "../../../server/tsconfig.json" - } - ] -} \ No newline at end of file + "compilerOptions": { + // JSX and Language Settings + "jsx": "react-jsx", + "target": "ES2020", + "lib": ["ES2020", "DOM", "DOM.Iterable", "ES2024.Object"], + // Module Resolution + "module": "ESNext", + "moduleResolution": "bundler", + "resolveJsonModule": true, + "isolatedModules": true, + "verbatimModuleSyntax": true, + // Build and Output + "composite": true, + "noEmit": true, + "skipLibCheck": true, + // Type Checking + "strict": true, + "noUnusedLocals": true, + "noUnusedParameters": true, + "useDefineForClassFields": true, + "noFallthroughCasesInSwitch": true, + // Path Mapping + "paths": { + "@": ["./src/index"], + "@/*": ["./src/*"], + "@server/*": ["../../../server/src/*"] + } + }, + "include": ["./src/**/*", "./manifest.ts"], + "references": [ + { + "path": "../../../server/tsconfig.json" + } + ] +} diff --git a/apps/ideaBox/locales/en.json b/apps/ideaBox/locales/en.json index 08ea714ad..30a5713de 100644 --- a/apps/ideaBox/locales/en.json +++ b/apps/ideaBox/locales/en.json @@ -89,4 +89,4 @@ "folder": "Folder", "ideaInFolder": "Idea in Folder" } -} \ No newline at end of file +} diff --git a/apps/ideaBox/locales/ms.json b/apps/ideaBox/locales/ms.json index 05b928155..1c5b97646 100644 --- a/apps/ideaBox/locales/ms.json +++ b/apps/ideaBox/locales/ms.json @@ -89,4 +89,4 @@ "folder": "Folder", "ideaInFolder": "Idea dalam Folder" } -} \ No newline at end of file +} diff --git a/apps/ideaBox/locales/zh-CN.json b/apps/ideaBox/locales/zh-CN.json index b870ad377..270a64da6 100644 --- a/apps/ideaBox/locales/zh-CN.json +++ b/apps/ideaBox/locales/zh-CN.json @@ -89,4 +89,4 @@ "folder": "资料夹", "ideaInFolder": "čµ„ę–™å¤¹äø­ēš„åˆ›ę„" } -} \ No newline at end of file +} diff --git a/apps/ideaBox/locales/zh-TW.json b/apps/ideaBox/locales/zh-TW.json index a9a317b26..71a8e1d2c 100644 --- a/apps/ideaBox/locales/zh-TW.json +++ b/apps/ideaBox/locales/zh-TW.json @@ -89,4 +89,4 @@ "folder": "資料夾", "ideaInFolder": "č³‡ę–™å¤¾äø­ēš„å‰µę„" } -} \ No newline at end of file +} diff --git a/apps/ideaBox/server/package.json b/apps/ideaBox/server/package.json index 96ae6e57e..3dbc1ca59 100644 --- a/apps/ideaBox/server/package.json +++ b/apps/ideaBox/server/package.json @@ -1,3 +1,3 @@ { - "type": "module" -} \ No newline at end of file + "type": "module" +} diff --git a/apps/ideaBox/server/tsconfig.json b/apps/ideaBox/server/tsconfig.json index dd4eb33f4..dd128b083 100644 --- a/apps/ideaBox/server/tsconfig.json +++ b/apps/ideaBox/server/tsconfig.json @@ -1,3 +1,3 @@ { - "extends": "../../../server/tsconfig.json" -} \ No newline at end of file + "extends": "../../../server/tsconfig.json" +} diff --git a/apps/momentVault/client/src/modals/AddEntryModal/components/AudioType.tsx b/apps/momentVault/client/src/modals/AddEntryModal/components/AudioType.tsx index 1da7f7584..753fb6d00 100644 --- a/apps/momentVault/client/src/modals/AddEntryModal/components/AudioType.tsx +++ b/apps/momentVault/client/src/modals/AddEntryModal/components/AudioType.tsx @@ -56,11 +56,15 @@ function AudioType({ setCurrentTime(0) setTotalTime(0) - const stream = await navigator.mediaDevices.getUserMedia({ audio: true }) + const stream = await navigator.mediaDevices.getUserMedia({ + audio: true + }) streamRef.current = stream - const mediaRecorder = new MediaRecorder(stream, { mimeType: 'audio/webm' }) + const mediaRecorder = new MediaRecorder(stream, { + mimeType: 'audio/webm' + }) mediaRecorderRef.current = mediaRecorder audioChunksRef.current = [] diff --git a/apps/momentVault/client/tsconfig.json b/apps/momentVault/client/tsconfig.json index 58d9321ff..851b6be91 100644 --- a/apps/momentVault/client/tsconfig.json +++ b/apps/momentVault/client/tsconfig.json @@ -1,50 +1,36 @@ { - "compilerOptions": { - // JSX and Language Settings - "jsx": "react-jsx", - "target": "ES2020", - "lib": [ - "ES2020", - "DOM", - "DOM.Iterable", - "ES2024.Object" - ], - - // Module Resolution - "module": "ESNext", - "moduleResolution": "bundler", - "resolveJsonModule": true, - "isolatedModules": true, - "verbatimModuleSyntax": true, - - // Build and Output - "composite": true, - "noEmit": true, - "skipLibCheck": true, - - // Type Checking - "strict": true, - "noUnusedLocals": true, - "noUnusedParameters": true, - "useDefineForClassFields": true, - "noFallthroughCasesInSwitch": true, - - // Path Mapping - "paths": { - "@": [ - "./src/index" - ], - "@/*": [ - "./src/*" - ], - "@server/*": [ - "../../../server/src/*" - ] - } - }, - "references": [ - { - "path": "../../../server/tsconfig.json" - } - ] -} \ No newline at end of file + "compilerOptions": { + // JSX and Language Settings + "jsx": "react-jsx", + "target": "ES2020", + "lib": ["ES2020", "DOM", "DOM.Iterable", "ES2024.Object"], + // Module Resolution + "module": "ESNext", + "moduleResolution": "bundler", + "resolveJsonModule": true, + "isolatedModules": true, + "verbatimModuleSyntax": true, + // Build and Output + "composite": true, + "noEmit": true, + "skipLibCheck": true, + // Type Checking + "strict": true, + "noUnusedLocals": true, + "noUnusedParameters": true, + "useDefineForClassFields": true, + "noFallthroughCasesInSwitch": true, + // Path Mapping + "paths": { + "@": ["./src/index"], + "@/*": ["./src/*"], + "@server/*": ["../../../server/src/*"] + } + }, + "include": ["./src/**/*", "./manifest.ts"], + "references": [ + { + "path": "../../../server/tsconfig.json" + } + ] +} diff --git a/apps/momentVault/locales/en.json b/apps/momentVault/locales/en.json index 4a368bad5..a2691a1e6 100644 --- a/apps/momentVault/locales/en.json +++ b/apps/momentVault/locales/en.json @@ -28,4 +28,4 @@ "text": "Text", "photos": "Photos" } -} \ No newline at end of file +} diff --git a/apps/momentVault/locales/ms.json b/apps/momentVault/locales/ms.json index 162d76920..984cc158c 100644 --- a/apps/momentVault/locales/ms.json +++ b/apps/momentVault/locales/ms.json @@ -28,4 +28,4 @@ "text": "Teks", "photos": "Gambar" } -} \ No newline at end of file +} diff --git a/apps/momentVault/locales/zh-CN.json b/apps/momentVault/locales/zh-CN.json index 17dac7dc7..cdca3bc7b 100644 --- a/apps/momentVault/locales/zh-CN.json +++ b/apps/momentVault/locales/zh-CN.json @@ -28,4 +28,4 @@ "text": "ę–‡ęœ¬", "photos": "照片" } -} \ No newline at end of file +} diff --git a/apps/momentVault/locales/zh-TW.json b/apps/momentVault/locales/zh-TW.json index 3d53c3286..9c2b3eedc 100644 --- a/apps/momentVault/locales/zh-TW.json +++ b/apps/momentVault/locales/zh-TW.json @@ -28,4 +28,4 @@ "text": "ę–‡ęœ¬", "photos": "照片" } -} \ No newline at end of file +} diff --git a/apps/momentVault/server/package.json b/apps/momentVault/server/package.json index 96ae6e57e..3dbc1ca59 100644 --- a/apps/momentVault/server/package.json +++ b/apps/momentVault/server/package.json @@ -1,3 +1,3 @@ { - "type": "module" -} \ No newline at end of file + "type": "module" +} diff --git a/apps/momentVault/server/tsconfig.json b/apps/momentVault/server/tsconfig.json index dd4eb33f4..dd128b083 100644 --- a/apps/momentVault/server/tsconfig.json +++ b/apps/momentVault/server/tsconfig.json @@ -1,3 +1,3 @@ { - "extends": "../../../server/tsconfig.json" -} \ No newline at end of file + "extends": "../../../server/tsconfig.json" +} diff --git a/apps/movies/client/tsconfig.json b/apps/movies/client/tsconfig.json index 58d9321ff..851b6be91 100644 --- a/apps/movies/client/tsconfig.json +++ b/apps/movies/client/tsconfig.json @@ -1,50 +1,36 @@ { - "compilerOptions": { - // JSX and Language Settings - "jsx": "react-jsx", - "target": "ES2020", - "lib": [ - "ES2020", - "DOM", - "DOM.Iterable", - "ES2024.Object" - ], - - // Module Resolution - "module": "ESNext", - "moduleResolution": "bundler", - "resolveJsonModule": true, - "isolatedModules": true, - "verbatimModuleSyntax": true, - - // Build and Output - "composite": true, - "noEmit": true, - "skipLibCheck": true, - - // Type Checking - "strict": true, - "noUnusedLocals": true, - "noUnusedParameters": true, - "useDefineForClassFields": true, - "noFallthroughCasesInSwitch": true, - - // Path Mapping - "paths": { - "@": [ - "./src/index" - ], - "@/*": [ - "./src/*" - ], - "@server/*": [ - "../../../server/src/*" - ] - } - }, - "references": [ - { - "path": "../../../server/tsconfig.json" - } - ] -} \ No newline at end of file + "compilerOptions": { + // JSX and Language Settings + "jsx": "react-jsx", + "target": "ES2020", + "lib": ["ES2020", "DOM", "DOM.Iterable", "ES2024.Object"], + // Module Resolution + "module": "ESNext", + "moduleResolution": "bundler", + "resolveJsonModule": true, + "isolatedModules": true, + "verbatimModuleSyntax": true, + // Build and Output + "composite": true, + "noEmit": true, + "skipLibCheck": true, + // Type Checking + "strict": true, + "noUnusedLocals": true, + "noUnusedParameters": true, + "useDefineForClassFields": true, + "noFallthroughCasesInSwitch": true, + // Path Mapping + "paths": { + "@": ["./src/index"], + "@/*": ["./src/*"], + "@server/*": ["../../../server/src/*"] + } + }, + "include": ["./src/**/*", "./manifest.ts"], + "references": [ + { + "path": "../../../server/tsconfig.json" + } + ] +} diff --git a/apps/movies/locales/en.json b/apps/movies/locales/en.json index ae9f433a4..0c4a7222c 100644 --- a/apps/movies/locales/en.json +++ b/apps/movies/locales/en.json @@ -56,4 +56,4 @@ "misc": { "watched": "Watched on {{date}}" } -} \ No newline at end of file +} diff --git a/apps/movies/locales/ms.json b/apps/movies/locales/ms.json index 00a66f685..ad79f4862 100644 --- a/apps/movies/locales/ms.json +++ b/apps/movies/locales/ms.json @@ -56,4 +56,4 @@ "misc": { "watched": "Ditonton pada {{date}}" } -} \ No newline at end of file +} diff --git a/apps/movies/locales/zh-CN.json b/apps/movies/locales/zh-CN.json index ed260fed8..57ba4c4c4 100644 --- a/apps/movies/locales/zh-CN.json +++ b/apps/movies/locales/zh-CN.json @@ -56,4 +56,4 @@ "misc": { "watched": "č§‚ēœ‹äŗŽ{{date}}" } -} \ No newline at end of file +} diff --git a/apps/movies/locales/zh-TW.json b/apps/movies/locales/zh-TW.json index 8340b6393..2e4d21826 100644 --- a/apps/movies/locales/zh-TW.json +++ b/apps/movies/locales/zh-TW.json @@ -56,4 +56,4 @@ "misc": { "watched": "č§€ēœ‹ę–¼{{date}}" } -} \ No newline at end of file +} diff --git a/apps/movies/server/package.json b/apps/movies/server/package.json index 96ae6e57e..3dbc1ca59 100644 --- a/apps/movies/server/package.json +++ b/apps/movies/server/package.json @@ -1,3 +1,3 @@ { - "type": "module" -} \ No newline at end of file + "type": "module" +} diff --git a/apps/movies/server/schema.ts b/apps/movies/server/schema.ts index 7c18d5d4a..50294cdb6 100644 --- a/apps/movies/server/schema.ts +++ b/apps/movies/server/schema.ts @@ -18,7 +18,10 @@ const moviesSchemas = { theatre_seat: z.string(), theatre_showtime: z.string(), theatre_location: z.string(), - theatre_location_coords: z.object({ lat: z.number(), lon: z.number() }), + theatre_location_coords: z.object({ + lat: z.number(), + lon: z.number() + }), theatre_number: z.string(), is_watched: z.boolean() }), diff --git a/apps/movies/server/tsconfig.json b/apps/movies/server/tsconfig.json index dd4eb33f4..dd128b083 100644 --- a/apps/movies/server/tsconfig.json +++ b/apps/movies/server/tsconfig.json @@ -1,3 +1,3 @@ { - "extends": "../../../server/tsconfig.json" -} \ No newline at end of file + "extends": "../../../server/tsconfig.json" +} diff --git a/apps/music/client/tsconfig.json b/apps/music/client/tsconfig.json index 58d9321ff..851b6be91 100644 --- a/apps/music/client/tsconfig.json +++ b/apps/music/client/tsconfig.json @@ -1,50 +1,36 @@ { - "compilerOptions": { - // JSX and Language Settings - "jsx": "react-jsx", - "target": "ES2020", - "lib": [ - "ES2020", - "DOM", - "DOM.Iterable", - "ES2024.Object" - ], - - // Module Resolution - "module": "ESNext", - "moduleResolution": "bundler", - "resolveJsonModule": true, - "isolatedModules": true, - "verbatimModuleSyntax": true, - - // Build and Output - "composite": true, - "noEmit": true, - "skipLibCheck": true, - - // Type Checking - "strict": true, - "noUnusedLocals": true, - "noUnusedParameters": true, - "useDefineForClassFields": true, - "noFallthroughCasesInSwitch": true, - - // Path Mapping - "paths": { - "@": [ - "./src/index" - ], - "@/*": [ - "./src/*" - ], - "@server/*": [ - "../../../server/src/*" - ] - } - }, - "references": [ - { - "path": "../../../server/tsconfig.json" - } - ] -} \ No newline at end of file + "compilerOptions": { + // JSX and Language Settings + "jsx": "react-jsx", + "target": "ES2020", + "lib": ["ES2020", "DOM", "DOM.Iterable", "ES2024.Object"], + // Module Resolution + "module": "ESNext", + "moduleResolution": "bundler", + "resolveJsonModule": true, + "isolatedModules": true, + "verbatimModuleSyntax": true, + // Build and Output + "composite": true, + "noEmit": true, + "skipLibCheck": true, + // Type Checking + "strict": true, + "noUnusedLocals": true, + "noUnusedParameters": true, + "useDefineForClassFields": true, + "noFallthroughCasesInSwitch": true, + // Path Mapping + "paths": { + "@": ["./src/index"], + "@/*": ["./src/*"], + "@server/*": ["../../../server/src/*"] + } + }, + "include": ["./src/**/*", "./manifest.ts"], + "references": [ + { + "path": "../../../server/tsconfig.json" + } + ] +} diff --git a/apps/music/server/package.json b/apps/music/server/package.json index 96ae6e57e..3dbc1ca59 100644 --- a/apps/music/server/package.json +++ b/apps/music/server/package.json @@ -1,3 +1,3 @@ { - "type": "module" -} \ No newline at end of file + "type": "module" +} diff --git a/apps/music/server/tsconfig.json b/apps/music/server/tsconfig.json index dd4eb33f4..dd128b083 100644 --- a/apps/music/server/tsconfig.json +++ b/apps/music/server/tsconfig.json @@ -1,3 +1,3 @@ { - "extends": "../../../server/tsconfig.json" -} \ No newline at end of file + "extends": "../../../server/tsconfig.json" +} diff --git a/apps/passwords/client/src/components/ContentContainer.tsx b/apps/passwords/client/src/components/ContentContainer.tsx index d004d6188..ece417702 100644 --- a/apps/passwords/client/src/components/ContentContainer.tsx +++ b/apps/passwords/client/src/components/ContentContainer.tsx @@ -77,7 +77,9 @@ function ContentContainer({ masterPassword }: { masterPassword: string }) { ) } catch { toast.error(t('error.pin')) - queryClient.invalidateQueries({ queryKey: ['passwords', 'entries'] }) + queryClient.invalidateQueries({ + queryKey: ['passwords', 'entries'] + }) } } diff --git a/apps/passwords/client/src/components/PasswordEntryItem.tsx b/apps/passwords/client/src/components/PasswordEntryItem.tsx index ce4526e0e..79545beae 100644 --- a/apps/passwords/client/src/components/PasswordEntryItem.tsx +++ b/apps/passwords/client/src/components/PasswordEntryItem.tsx @@ -55,7 +55,9 @@ function PasswordEntryItem({ }) .mutationOptions({ onSuccess: () => { - queryClient.invalidateQueries({ queryKey: ['passwords', 'entries'] }) + queryClient.invalidateQueries({ + queryKey: ['passwords', 'entries'] + }) }, onError: () => { toast.error('Failed to delete password. Please try again.') diff --git a/apps/passwords/client/src/modals/ModifyPasswordModal.tsx b/apps/passwords/client/src/modals/ModifyPasswordModal.tsx index 6676679c2..1aaf5ad03 100644 --- a/apps/passwords/client/src/modals/ModifyPasswordModal.tsx +++ b/apps/passwords/client/src/modals/ModifyPasswordModal.tsx @@ -31,7 +31,9 @@ function ModifyPasswordModal({ }) ).mutationOptions({ onSuccess: () => { - queryClient.invalidateQueries({ queryKey: ['passwords', 'entries'] }) + queryClient.invalidateQueries({ + queryKey: ['passwords', 'entries'] + }) }, onError: () => { toast.error('Failed to modify password entry') diff --git a/apps/passwords/client/tsconfig.json b/apps/passwords/client/tsconfig.json index 58d9321ff..851b6be91 100644 --- a/apps/passwords/client/tsconfig.json +++ b/apps/passwords/client/tsconfig.json @@ -1,50 +1,36 @@ { - "compilerOptions": { - // JSX and Language Settings - "jsx": "react-jsx", - "target": "ES2020", - "lib": [ - "ES2020", - "DOM", - "DOM.Iterable", - "ES2024.Object" - ], - - // Module Resolution - "module": "ESNext", - "moduleResolution": "bundler", - "resolveJsonModule": true, - "isolatedModules": true, - "verbatimModuleSyntax": true, - - // Build and Output - "composite": true, - "noEmit": true, - "skipLibCheck": true, - - // Type Checking - "strict": true, - "noUnusedLocals": true, - "noUnusedParameters": true, - "useDefineForClassFields": true, - "noFallthroughCasesInSwitch": true, - - // Path Mapping - "paths": { - "@": [ - "./src/index" - ], - "@/*": [ - "./src/*" - ], - "@server/*": [ - "../../../server/src/*" - ] - } - }, - "references": [ - { - "path": "../../../server/tsconfig.json" - } - ] -} \ No newline at end of file + "compilerOptions": { + // JSX and Language Settings + "jsx": "react-jsx", + "target": "ES2020", + "lib": ["ES2020", "DOM", "DOM.Iterable", "ES2024.Object"], + // Module Resolution + "module": "ESNext", + "moduleResolution": "bundler", + "resolveJsonModule": true, + "isolatedModules": true, + "verbatimModuleSyntax": true, + // Build and Output + "composite": true, + "noEmit": true, + "skipLibCheck": true, + // Type Checking + "strict": true, + "noUnusedLocals": true, + "noUnusedParameters": true, + "useDefineForClassFields": true, + "noFallthroughCasesInSwitch": true, + // Path Mapping + "paths": { + "@": ["./src/index"], + "@/*": ["./src/*"], + "@server/*": ["../../../server/src/*"] + } + }, + "include": ["./src/**/*", "./manifest.ts"], + "references": [ + { + "path": "../../../server/tsconfig.json" + } + ] +} diff --git a/apps/passwords/locales/en.json b/apps/passwords/locales/en.json index 4b3875bc8..52d29068d 100644 --- a/apps/passwords/locales/en.json +++ b/apps/passwords/locales/en.json @@ -35,4 +35,4 @@ "showPassword": "Show Password", "hidePassword": "Hide Password" } -} \ No newline at end of file +} diff --git a/apps/passwords/locales/ms.json b/apps/passwords/locales/ms.json index b96633d25..914a429d9 100644 --- a/apps/passwords/locales/ms.json +++ b/apps/passwords/locales/ms.json @@ -35,4 +35,4 @@ "showPassword": "Tunjukkan Kata Laluan", "hidePassword": "Sembunyikan Kata Laluan" } -} \ No newline at end of file +} diff --git a/apps/passwords/locales/zh-CN.json b/apps/passwords/locales/zh-CN.json index c3dbe9196..44c33187b 100644 --- a/apps/passwords/locales/zh-CN.json +++ b/apps/passwords/locales/zh-CN.json @@ -35,4 +35,4 @@ "showPassword": "ę˜¾ē¤ŗåÆ†ē ", "hidePassword": "éšč—åÆ†ē " } -} \ No newline at end of file +} diff --git a/apps/passwords/locales/zh-TW.json b/apps/passwords/locales/zh-TW.json index b8506e9c9..699035b12 100644 --- a/apps/passwords/locales/zh-TW.json +++ b/apps/passwords/locales/zh-TW.json @@ -35,4 +35,4 @@ "showPassword": "锯示密碼", "hidePassword": "éš±č—åÆ†ē¢¼" } -} \ No newline at end of file +} diff --git a/apps/passwords/server/package.json b/apps/passwords/server/package.json index 96ae6e57e..3dbc1ca59 100644 --- a/apps/passwords/server/package.json +++ b/apps/passwords/server/package.json @@ -1,3 +1,3 @@ { - "type": "module" -} \ No newline at end of file + "type": "module" +} diff --git a/apps/passwords/server/tsconfig.json b/apps/passwords/server/tsconfig.json index dd4eb33f4..dd128b083 100644 --- a/apps/passwords/server/tsconfig.json +++ b/apps/passwords/server/tsconfig.json @@ -1,3 +1,3 @@ { - "extends": "../../../server/tsconfig.json" -} \ No newline at end of file + "extends": "../../../server/tsconfig.json" +} diff --git a/apps/railwayMap/client/tsconfig.json b/apps/railwayMap/client/tsconfig.json index 58d9321ff..851b6be91 100644 --- a/apps/railwayMap/client/tsconfig.json +++ b/apps/railwayMap/client/tsconfig.json @@ -1,50 +1,36 @@ { - "compilerOptions": { - // JSX and Language Settings - "jsx": "react-jsx", - "target": "ES2020", - "lib": [ - "ES2020", - "DOM", - "DOM.Iterable", - "ES2024.Object" - ], - - // Module Resolution - "module": "ESNext", - "moduleResolution": "bundler", - "resolveJsonModule": true, - "isolatedModules": true, - "verbatimModuleSyntax": true, - - // Build and Output - "composite": true, - "noEmit": true, - "skipLibCheck": true, - - // Type Checking - "strict": true, - "noUnusedLocals": true, - "noUnusedParameters": true, - "useDefineForClassFields": true, - "noFallthroughCasesInSwitch": true, - - // Path Mapping - "paths": { - "@": [ - "./src/index" - ], - "@/*": [ - "./src/*" - ], - "@server/*": [ - "../../../server/src/*" - ] - } - }, - "references": [ - { - "path": "../../../server/tsconfig.json" - } - ] -} \ No newline at end of file + "compilerOptions": { + // JSX and Language Settings + "jsx": "react-jsx", + "target": "ES2020", + "lib": ["ES2020", "DOM", "DOM.Iterable", "ES2024.Object"], + // Module Resolution + "module": "ESNext", + "moduleResolution": "bundler", + "resolveJsonModule": true, + "isolatedModules": true, + "verbatimModuleSyntax": true, + // Build and Output + "composite": true, + "noEmit": true, + "skipLibCheck": true, + // Type Checking + "strict": true, + "noUnusedLocals": true, + "noUnusedParameters": true, + "useDefineForClassFields": true, + "noFallthroughCasesInSwitch": true, + // Path Mapping + "paths": { + "@": ["./src/index"], + "@/*": ["./src/*"], + "@server/*": ["../../../server/src/*"] + } + }, + "include": ["./src/**/*", "./manifest.ts"], + "references": [ + { + "path": "../../../server/tsconfig.json" + } + ] +} diff --git a/apps/railwayMap/server/package.json b/apps/railwayMap/server/package.json index 96ae6e57e..3dbc1ca59 100644 --- a/apps/railwayMap/server/package.json +++ b/apps/railwayMap/server/package.json @@ -1,3 +1,3 @@ { - "type": "module" -} \ No newline at end of file + "type": "module" +} diff --git a/apps/railwayMap/server/tsconfig.json b/apps/railwayMap/server/tsconfig.json index dd4eb33f4..dd128b083 100644 --- a/apps/railwayMap/server/tsconfig.json +++ b/apps/railwayMap/server/tsconfig.json @@ -1,3 +1,3 @@ { - "extends": "../../../server/tsconfig.json" -} \ No newline at end of file + "extends": "../../../server/tsconfig.json" +} diff --git a/apps/scoresLibrary/client/src/components/Header/index.tsx b/apps/scoresLibrary/client/src/components/Header/index.tsx index af03904df..cf305ca82 100644 --- a/apps/scoresLibrary/client/src/components/Header/index.tsx +++ b/apps/scoresLibrary/client/src/components/Header/index.tsx @@ -86,7 +86,9 @@ function Header({ if (data.status === 'completed') { toast.done(toastId.current!) toastId.current = null - queryClient.invalidateQueries({ queryKey: ['scoresLibrary'] }) + queryClient.invalidateQueries({ + queryKey: ['scoresLibrary'] + }) } } ) diff --git a/apps/scoresLibrary/client/src/components/Sidebar/components/SidebarCategoryItem.tsx b/apps/scoresLibrary/client/src/components/Sidebar/components/SidebarCategoryItem.tsx index 096c43b49..6f8416fa0 100644 --- a/apps/scoresLibrary/client/src/components/Sidebar/components/SidebarCategoryItem.tsx +++ b/apps/scoresLibrary/client/src/components/Sidebar/components/SidebarCategoryItem.tsx @@ -36,7 +36,9 @@ function SidebarTypeItem({ const deleteMutation = useMutation( forgeAPI.scoresLibrary.types.remove.input({ id: data.id }).mutationOptions({ onSuccess: () => { - queryClient.invalidateQueries({ queryKey: ['scoresLibrary'] }) + queryClient.invalidateQueries({ + queryKey: ['scoresLibrary'] + }) }, onError: () => { toast.error('Failed to delete type') diff --git a/apps/scoresLibrary/client/src/components/Sidebar/components/SidebarCollectionItem.tsx b/apps/scoresLibrary/client/src/components/Sidebar/components/SidebarCollectionItem.tsx index fbcfd7012..d213da406 100644 --- a/apps/scoresLibrary/client/src/components/Sidebar/components/SidebarCollectionItem.tsx +++ b/apps/scoresLibrary/client/src/components/Sidebar/components/SidebarCollectionItem.tsx @@ -30,7 +30,9 @@ function SidebarCollectionItem({ .input({ id: data.id }) .mutationOptions({ onSuccess: () => { - queryClient.invalidateQueries({ queryKey: ['scoresLibrary'] }) + queryClient.invalidateQueries({ + queryKey: ['scoresLibrary'] + }) }, onError: () => { toast.error('Failed to delete collection') diff --git a/apps/scoresLibrary/client/src/components/modals/ModifyEntryModal.tsx b/apps/scoresLibrary/client/src/components/modals/ModifyEntryModal.tsx index 994470d12..d3c0b3a6f 100644 --- a/apps/scoresLibrary/client/src/components/modals/ModifyEntryModal.tsx +++ b/apps/scoresLibrary/client/src/components/modals/ModifyEntryModal.tsx @@ -21,7 +21,9 @@ function ModifyEntryModal({ .input({ id: initialData.id }) .mutationOptions({ onSuccess: () => { - queryClient.invalidateQueries({ queryKey: ['scoresLibrary'] }) + queryClient.invalidateQueries({ + queryKey: ['scoresLibrary'] + }) onClose() } }) diff --git a/apps/scoresLibrary/client/src/components/modals/ModifyTypeModal.tsx b/apps/scoresLibrary/client/src/components/modals/ModifyTypeModal.tsx index 7e5373a17..7a2d5708e 100644 --- a/apps/scoresLibrary/client/src/components/modals/ModifyTypeModal.tsx +++ b/apps/scoresLibrary/client/src/components/modals/ModifyTypeModal.tsx @@ -19,7 +19,9 @@ function ModifyTypeModal({ const mutation = useMutation( (openType === 'create' ? forgeAPI.scoresLibrary.types.create - : forgeAPI.scoresLibrary.types.update.input({ id: initialData?.id || '' }) + : forgeAPI.scoresLibrary.types.update.input({ + id: initialData?.id || '' + }) ).mutationOptions({ onSuccess: () => { queryClient.invalidateQueries({ queryKey: ['scoresLibrary'] }) diff --git a/apps/scoresLibrary/client/src/views/GridView/components/EntryItem.tsx b/apps/scoresLibrary/client/src/views/GridView/components/EntryItem.tsx index ca236d2eb..2d707ed58 100644 --- a/apps/scoresLibrary/client/src/views/GridView/components/EntryItem.tsx +++ b/apps/scoresLibrary/client/src/views/GridView/components/EntryItem.tsx @@ -44,7 +44,9 @@ function EntryItem({ entry }: { entry: ScoreLibraryEntry }) { }) .mutationOptions({ onSuccess: () => { - queryClient.invalidateQueries({ queryKey: ['scoresLibrary'] }) + queryClient.invalidateQueries({ + queryKey: ['scoresLibrary'] + }) }, onError: () => { toast.error('Failed to toggle favourite status') @@ -59,7 +61,9 @@ function EntryItem({ entry }: { entry: ScoreLibraryEntry }) { }) .mutationOptions({ onSuccess: () => { - queryClient.invalidateQueries({ queryKey: ['scoresLibrary'] }) + queryClient.invalidateQueries({ + queryKey: ['scoresLibrary'] + }) }, onError: () => { toast.error('Failed to delete entry') diff --git a/apps/scoresLibrary/client/src/views/ListView/components/EntryItem.tsx b/apps/scoresLibrary/client/src/views/ListView/components/EntryItem.tsx index a28c2fc54..68c77a57b 100644 --- a/apps/scoresLibrary/client/src/views/ListView/components/EntryItem.tsx +++ b/apps/scoresLibrary/client/src/views/ListView/components/EntryItem.tsx @@ -44,7 +44,9 @@ function EntryItem({ entry }: { entry: ScoreLibraryEntry }) { }) .mutationOptions({ onSuccess: () => { - queryClient.invalidateQueries({ queryKey: ['scoresLibrary'] }) + queryClient.invalidateQueries({ + queryKey: ['scoresLibrary'] + }) }, onError: () => { toast.error('Failed to toggle favourite status') @@ -59,7 +61,9 @@ function EntryItem({ entry }: { entry: ScoreLibraryEntry }) { }) .mutationOptions({ onSuccess: () => { - queryClient.invalidateQueries({ queryKey: ['scoresLibrary'] }) + queryClient.invalidateQueries({ + queryKey: ['scoresLibrary'] + }) }, onError: () => { toast.error('Failed to delete entry') diff --git a/apps/scoresLibrary/client/tsconfig.json b/apps/scoresLibrary/client/tsconfig.json index 58d9321ff..851b6be91 100644 --- a/apps/scoresLibrary/client/tsconfig.json +++ b/apps/scoresLibrary/client/tsconfig.json @@ -1,50 +1,36 @@ { - "compilerOptions": { - // JSX and Language Settings - "jsx": "react-jsx", - "target": "ES2020", - "lib": [ - "ES2020", - "DOM", - "DOM.Iterable", - "ES2024.Object" - ], - - // Module Resolution - "module": "ESNext", - "moduleResolution": "bundler", - "resolveJsonModule": true, - "isolatedModules": true, - "verbatimModuleSyntax": true, - - // Build and Output - "composite": true, - "noEmit": true, - "skipLibCheck": true, - - // Type Checking - "strict": true, - "noUnusedLocals": true, - "noUnusedParameters": true, - "useDefineForClassFields": true, - "noFallthroughCasesInSwitch": true, - - // Path Mapping - "paths": { - "@": [ - "./src/index" - ], - "@/*": [ - "./src/*" - ], - "@server/*": [ - "../../../server/src/*" - ] - } - }, - "references": [ - { - "path": "../../../server/tsconfig.json" - } - ] -} \ No newline at end of file + "compilerOptions": { + // JSX and Language Settings + "jsx": "react-jsx", + "target": "ES2020", + "lib": ["ES2020", "DOM", "DOM.Iterable", "ES2024.Object"], + // Module Resolution + "module": "ESNext", + "moduleResolution": "bundler", + "resolveJsonModule": true, + "isolatedModules": true, + "verbatimModuleSyntax": true, + // Build and Output + "composite": true, + "noEmit": true, + "skipLibCheck": true, + // Type Checking + "strict": true, + "noUnusedLocals": true, + "noUnusedParameters": true, + "useDefineForClassFields": true, + "noFallthroughCasesInSwitch": true, + // Path Mapping + "paths": { + "@": ["./src/index"], + "@/*": ["./src/*"], + "@server/*": ["../../../server/src/*"] + } + }, + "include": ["./src/**/*", "./manifest.ts"], + "references": [ + { + "path": "../../../server/tsconfig.json" + } + ] +} diff --git a/apps/scoresLibrary/locales/en.json b/apps/scoresLibrary/locales/en.json index 7280e3218..02d059862 100644 --- a/apps/scoresLibrary/locales/en.json +++ b/apps/scoresLibrary/locales/en.json @@ -66,4 +66,4 @@ "grid": "Grid", "list": "List" } -} \ No newline at end of file +} diff --git a/apps/scoresLibrary/locales/ms.json b/apps/scoresLibrary/locales/ms.json index 81c174f4f..5e6efdc8b 100644 --- a/apps/scoresLibrary/locales/ms.json +++ b/apps/scoresLibrary/locales/ms.json @@ -66,4 +66,4 @@ "grid": "Grid", "list": "Senarai" } -} \ No newline at end of file +} diff --git a/apps/scoresLibrary/locales/zh-CN.json b/apps/scoresLibrary/locales/zh-CN.json index 7b452820c..b243d74e1 100644 --- a/apps/scoresLibrary/locales/zh-CN.json +++ b/apps/scoresLibrary/locales/zh-CN.json @@ -66,4 +66,4 @@ "grid": "网格", "list": "åˆ—č”Ø" } -} \ No newline at end of file +} diff --git a/apps/scoresLibrary/locales/zh-TW.json b/apps/scoresLibrary/locales/zh-TW.json index fe714fc38..5387a155c 100644 --- a/apps/scoresLibrary/locales/zh-TW.json +++ b/apps/scoresLibrary/locales/zh-TW.json @@ -66,4 +66,4 @@ "grid": "網格", "list": "åˆ—č”Ø" } -} \ No newline at end of file +} diff --git a/apps/scoresLibrary/server/package.json b/apps/scoresLibrary/server/package.json index 96ae6e57e..3dbc1ca59 100644 --- a/apps/scoresLibrary/server/package.json +++ b/apps/scoresLibrary/server/package.json @@ -1,3 +1,3 @@ { - "type": "module" -} \ No newline at end of file + "type": "module" +} diff --git a/apps/scoresLibrary/server/routes/entries.ts b/apps/scoresLibrary/server/routes/entries.ts index f26616cfe..93de5232e 100644 --- a/apps/scoresLibrary/server/routes/entries.ts +++ b/apps/scoresLibrary/server/routes/entries.ts @@ -91,8 +91,16 @@ const list = forgeController { combination: '||', filters: [ - { field: 'name', operator: '~', value: query || '' }, - { field: 'author', operator: '~', value: query || '' } + { + field: 'name', + operator: '~', + value: query || '' + }, + { + field: 'author', + operator: '~', + value: query || '' + } ] }, ...(category @@ -115,12 +123,20 @@ const list = forgeController : []), ...(collection ? ([ - { field: 'collection', operator: '=', value: collection } + { + field: 'collection', + operator: '=', + value: collection + } ] as const) : []), ...(starred ? ([ - { field: 'isFavourite', operator: '=', value: starred } + { + field: 'isFavourite', + operator: '=', + value: starred + } ] as const) : []) ]) diff --git a/apps/scoresLibrary/server/tsconfig.json b/apps/scoresLibrary/server/tsconfig.json index dd4eb33f4..dd128b083 100644 --- a/apps/scoresLibrary/server/tsconfig.json +++ b/apps/scoresLibrary/server/tsconfig.json @@ -1,3 +1,3 @@ { - "extends": "../../../server/tsconfig.json" -} \ No newline at end of file + "extends": "../../../server/tsconfig.json" +} diff --git a/apps/sinChewDaily/client/tsconfig.json b/apps/sinChewDaily/client/tsconfig.json index 58d9321ff..851b6be91 100644 --- a/apps/sinChewDaily/client/tsconfig.json +++ b/apps/sinChewDaily/client/tsconfig.json @@ -1,50 +1,36 @@ { - "compilerOptions": { - // JSX and Language Settings - "jsx": "react-jsx", - "target": "ES2020", - "lib": [ - "ES2020", - "DOM", - "DOM.Iterable", - "ES2024.Object" - ], - - // Module Resolution - "module": "ESNext", - "moduleResolution": "bundler", - "resolveJsonModule": true, - "isolatedModules": true, - "verbatimModuleSyntax": true, - - // Build and Output - "composite": true, - "noEmit": true, - "skipLibCheck": true, - - // Type Checking - "strict": true, - "noUnusedLocals": true, - "noUnusedParameters": true, - "useDefineForClassFields": true, - "noFallthroughCasesInSwitch": true, - - // Path Mapping - "paths": { - "@": [ - "./src/index" - ], - "@/*": [ - "./src/*" - ], - "@server/*": [ - "../../../server/src/*" - ] - } - }, - "references": [ - { - "path": "../../../server/tsconfig.json" - } - ] -} \ No newline at end of file + "compilerOptions": { + // JSX and Language Settings + "jsx": "react-jsx", + "target": "ES2020", + "lib": ["ES2020", "DOM", "DOM.Iterable", "ES2024.Object"], + // Module Resolution + "module": "ESNext", + "moduleResolution": "bundler", + "resolveJsonModule": true, + "isolatedModules": true, + "verbatimModuleSyntax": true, + // Build and Output + "composite": true, + "noEmit": true, + "skipLibCheck": true, + // Type Checking + "strict": true, + "noUnusedLocals": true, + "noUnusedParameters": true, + "useDefineForClassFields": true, + "noFallthroughCasesInSwitch": true, + // Path Mapping + "paths": { + "@": ["./src/index"], + "@/*": ["./src/*"], + "@server/*": ["../../../server/src/*"] + } + }, + "include": ["./src/**/*", "./manifest.ts"], + "references": [ + { + "path": "../../../server/tsconfig.json" + } + ] +} diff --git a/apps/sinChewDaily/locales/en.json b/apps/sinChewDaily/locales/en.json index 4d761136a..dc8b6d846 100644 --- a/apps/sinChewDaily/locales/en.json +++ b/apps/sinChewDaily/locales/en.json @@ -81,4 +81,4 @@ "description": "Please select a subcategory from the list above." } } -} \ No newline at end of file +} diff --git a/apps/sinChewDaily/locales/ms.json b/apps/sinChewDaily/locales/ms.json index c04d5c73d..0dec91ca7 100644 --- a/apps/sinChewDaily/locales/ms.json +++ b/apps/sinChewDaily/locales/ms.json @@ -81,4 +81,4 @@ "description": "Sila pilih subkategori dari senarai di atas." } } -} \ No newline at end of file +} diff --git a/apps/sinChewDaily/locales/zh-CN.json b/apps/sinChewDaily/locales/zh-CN.json index fa862bff1..268d2e73d 100644 --- a/apps/sinChewDaily/locales/zh-CN.json +++ b/apps/sinChewDaily/locales/zh-CN.json @@ -81,4 +81,4 @@ "description": "čÆ·ä»ŽäøŠé¢ēš„åˆ—č”Øäø­é€‰ę‹©äø€äøŖå­ē±»åˆ«ć€‚" } } -} \ No newline at end of file +} diff --git a/apps/sinChewDaily/locales/zh-TW.json b/apps/sinChewDaily/locales/zh-TW.json index 634d91123..c0d41579f 100644 --- a/apps/sinChewDaily/locales/zh-TW.json +++ b/apps/sinChewDaily/locales/zh-TW.json @@ -81,4 +81,4 @@ "description": "č«‹å¾žäøŠé¢ēš„åˆ—č”Øäø­éøę“‡äø€å€‹å­é”žåˆ„ć€‚" } } -} \ No newline at end of file +} diff --git a/apps/sinChewDaily/server/package.json b/apps/sinChewDaily/server/package.json index 96ae6e57e..3dbc1ca59 100644 --- a/apps/sinChewDaily/server/package.json +++ b/apps/sinChewDaily/server/package.json @@ -1,3 +1,3 @@ { - "type": "module" -} \ No newline at end of file + "type": "module" +} diff --git a/apps/sinChewDaily/server/tsconfig.json b/apps/sinChewDaily/server/tsconfig.json index dd4eb33f4..dd128b083 100644 --- a/apps/sinChewDaily/server/tsconfig.json +++ b/apps/sinChewDaily/server/tsconfig.json @@ -1,3 +1,3 @@ { - "extends": "../../../server/tsconfig.json" -} \ No newline at end of file + "extends": "../../../server/tsconfig.json" +} diff --git a/apps/sudoku/client/tsconfig.json b/apps/sudoku/client/tsconfig.json index 58d9321ff..851b6be91 100644 --- a/apps/sudoku/client/tsconfig.json +++ b/apps/sudoku/client/tsconfig.json @@ -1,50 +1,36 @@ { - "compilerOptions": { - // JSX and Language Settings - "jsx": "react-jsx", - "target": "ES2020", - "lib": [ - "ES2020", - "DOM", - "DOM.Iterable", - "ES2024.Object" - ], - - // Module Resolution - "module": "ESNext", - "moduleResolution": "bundler", - "resolveJsonModule": true, - "isolatedModules": true, - "verbatimModuleSyntax": true, - - // Build and Output - "composite": true, - "noEmit": true, - "skipLibCheck": true, - - // Type Checking - "strict": true, - "noUnusedLocals": true, - "noUnusedParameters": true, - "useDefineForClassFields": true, - "noFallthroughCasesInSwitch": true, - - // Path Mapping - "paths": { - "@": [ - "./src/index" - ], - "@/*": [ - "./src/*" - ], - "@server/*": [ - "../../../server/src/*" - ] - } - }, - "references": [ - { - "path": "../../../server/tsconfig.json" - } - ] -} \ No newline at end of file + "compilerOptions": { + // JSX and Language Settings + "jsx": "react-jsx", + "target": "ES2020", + "lib": ["ES2020", "DOM", "DOM.Iterable", "ES2024.Object"], + // Module Resolution + "module": "ESNext", + "moduleResolution": "bundler", + "resolveJsonModule": true, + "isolatedModules": true, + "verbatimModuleSyntax": true, + // Build and Output + "composite": true, + "noEmit": true, + "skipLibCheck": true, + // Type Checking + "strict": true, + "noUnusedLocals": true, + "noUnusedParameters": true, + "useDefineForClassFields": true, + "noFallthroughCasesInSwitch": true, + // Path Mapping + "paths": { + "@": ["./src/index"], + "@/*": ["./src/*"], + "@server/*": ["../../../server/src/*"] + } + }, + "include": ["./src/**/*", "./manifest.ts"], + "references": [ + { + "path": "../../../server/tsconfig.json" + } + ] +} diff --git a/apps/sudoku/locales/en.json b/apps/sudoku/locales/en.json index 59920126a..82f2cca16 100644 --- a/apps/sudoku/locales/en.json +++ b/apps/sudoku/locales/en.json @@ -13,4 +13,4 @@ "difficulty": "Difficulty", "showSolution": "Show Solution" } -} \ No newline at end of file +} diff --git a/apps/sudoku/locales/ms.json b/apps/sudoku/locales/ms.json index cbaab5678..f5562bdfa 100644 --- a/apps/sudoku/locales/ms.json +++ b/apps/sudoku/locales/ms.json @@ -13,4 +13,4 @@ "difficulty": "Kesukaran", "showSolution": "Tunjukkan Penyelesaian" } -} \ No newline at end of file +} diff --git a/apps/sudoku/locales/zh-CN.json b/apps/sudoku/locales/zh-CN.json index 1ac861bac..f82ac36f9 100644 --- a/apps/sudoku/locales/zh-CN.json +++ b/apps/sudoku/locales/zh-CN.json @@ -13,4 +13,4 @@ "difficulty": "难度", "showSolution": "ę˜¾ē¤ŗč§£ē­”" } -} \ No newline at end of file +} diff --git a/apps/sudoku/locales/zh-TW.json b/apps/sudoku/locales/zh-TW.json index 960ebabf6..770026940 100644 --- a/apps/sudoku/locales/zh-TW.json +++ b/apps/sudoku/locales/zh-TW.json @@ -13,4 +13,4 @@ "difficulty": "難度", "showSolution": "锯示解答" } -} \ No newline at end of file +} diff --git a/apps/sudoku/server/package.json b/apps/sudoku/server/package.json index 96ae6e57e..3dbc1ca59 100644 --- a/apps/sudoku/server/package.json +++ b/apps/sudoku/server/package.json @@ -1,3 +1,3 @@ { - "type": "module" -} \ No newline at end of file + "type": "module" +} diff --git a/apps/sudoku/server/tsconfig.json b/apps/sudoku/server/tsconfig.json index dd4eb33f4..dd128b083 100644 --- a/apps/sudoku/server/tsconfig.json +++ b/apps/sudoku/server/tsconfig.json @@ -1,3 +1,3 @@ { - "extends": "../../../server/tsconfig.json" -} \ No newline at end of file + "extends": "../../../server/tsconfig.json" +} diff --git a/apps/todoList/client/src/modals/ModifyListModal.tsx b/apps/todoList/client/src/modals/ModifyListModal.tsx index ccafc37c5..3a79c2659 100644 --- a/apps/todoList/client/src/modals/ModifyListModal.tsx +++ b/apps/todoList/client/src/modals/ModifyListModal.tsx @@ -26,7 +26,9 @@ function ModifyListModal({ }) ).mutationOptions({ onSuccess: () => { - queryClient.invalidateQueries({ queryKey: ['todoList', 'lists'] }) + queryClient.invalidateQueries({ + queryKey: ['todoList', 'lists'] + }) }, onError: error => { toast.error(`Failed to ${type} list: ${error.message}`) diff --git a/apps/todoList/client/src/modals/ModifyPriorityModal.tsx b/apps/todoList/client/src/modals/ModifyPriorityModal.tsx index 311e7a9ba..4315625b2 100644 --- a/apps/todoList/client/src/modals/ModifyPriorityModal.tsx +++ b/apps/todoList/client/src/modals/ModifyPriorityModal.tsx @@ -26,7 +26,9 @@ function ModifyPriorityModal({ }) ).mutationOptions({ onSuccess: () => { - queryClient.invalidateQueries({ queryKey: ['todoList', 'priorities'] }) + queryClient.invalidateQueries({ + queryKey: ['todoList', 'priorities'] + }) }, onError: error => { toast.error(`Failed to ${type} priority: ${error.message}`) diff --git a/apps/todoList/client/src/modals/ModifyTagModal.tsx b/apps/todoList/client/src/modals/ModifyTagModal.tsx index 8044d7ff0..2de0959f4 100644 --- a/apps/todoList/client/src/modals/ModifyTagModal.tsx +++ b/apps/todoList/client/src/modals/ModifyTagModal.tsx @@ -26,7 +26,9 @@ function ModifyTagModal({ }) ).mutationOptions({ onSuccess: () => { - queryClient.invalidateQueries({ queryKey: ['todoList', 'tags'] }) + queryClient.invalidateQueries({ + queryKey: ['todoList', 'tags'] + }) }, onError: error => { toast.error(`Failed to ${type} tag: ${error.message}`) diff --git a/apps/todoList/client/tsconfig.json b/apps/todoList/client/tsconfig.json index 58d9321ff..851b6be91 100644 --- a/apps/todoList/client/tsconfig.json +++ b/apps/todoList/client/tsconfig.json @@ -1,50 +1,36 @@ { - "compilerOptions": { - // JSX and Language Settings - "jsx": "react-jsx", - "target": "ES2020", - "lib": [ - "ES2020", - "DOM", - "DOM.Iterable", - "ES2024.Object" - ], - - // Module Resolution - "module": "ESNext", - "moduleResolution": "bundler", - "resolveJsonModule": true, - "isolatedModules": true, - "verbatimModuleSyntax": true, - - // Build and Output - "composite": true, - "noEmit": true, - "skipLibCheck": true, - - // Type Checking - "strict": true, - "noUnusedLocals": true, - "noUnusedParameters": true, - "useDefineForClassFields": true, - "noFallthroughCasesInSwitch": true, - - // Path Mapping - "paths": { - "@": [ - "./src/index" - ], - "@/*": [ - "./src/*" - ], - "@server/*": [ - "../../../server/src/*" - ] - } - }, - "references": [ - { - "path": "../../../server/tsconfig.json" - } - ] -} \ No newline at end of file + "compilerOptions": { + // JSX and Language Settings + "jsx": "react-jsx", + "target": "ES2020", + "lib": ["ES2020", "DOM", "DOM.Iterable", "ES2024.Object"], + // Module Resolution + "module": "ESNext", + "moduleResolution": "bundler", + "resolveJsonModule": true, + "isolatedModules": true, + "verbatimModuleSyntax": true, + // Build and Output + "composite": true, + "noEmit": true, + "skipLibCheck": true, + // Type Checking + "strict": true, + "noUnusedLocals": true, + "noUnusedParameters": true, + "useDefineForClassFields": true, + "noFallthroughCasesInSwitch": true, + // Path Mapping + "paths": { + "@": ["./src/index"], + "@/*": ["./src/*"], + "@server/*": ["../../../server/src/*"] + } + }, + "include": ["./src/**/*", "./manifest.ts"], + "references": [ + { + "path": "../../../server/tsconfig.json" + } + ] +} diff --git a/apps/todoList/server/package.json b/apps/todoList/server/package.json index 96ae6e57e..3dbc1ca59 100644 --- a/apps/todoList/server/package.json +++ b/apps/todoList/server/package.json @@ -1,3 +1,3 @@ { - "type": "module" -} \ No newline at end of file + "type": "module" +} diff --git a/apps/todoList/server/tsconfig.json b/apps/todoList/server/tsconfig.json index dd4eb33f4..dd128b083 100644 --- a/apps/todoList/server/tsconfig.json +++ b/apps/todoList/server/tsconfig.json @@ -1,3 +1,3 @@ { - "extends": "../../../server/tsconfig.json" -} \ No newline at end of file + "extends": "../../../server/tsconfig.json" +} diff --git a/apps/wallet/client/src/pages/Assets/components/Amount.tsx b/apps/wallet/client/src/pages/Assets/components/Amount.tsx index 42de9fb73..2c4281315 100644 --- a/apps/wallet/client/src/pages/Assets/components/Amount.tsx +++ b/apps/wallet/client/src/pages/Assets/components/Amount.tsx @@ -1,9 +1,8 @@ import { useWalletStore } from '@/stores/useWalletStore' +import numberToCurrency from '@/utils/numberToCurrency' import { Icon } from '@iconify/react/dist/iconify.js' import clsx from 'clsx' -import numberToCurrency from '../../../utils/numberToCurrency' - function Amount({ amount, className }: { amount: number; className?: string }) { const { isAmountHidden } = useWalletStore() diff --git a/apps/wallet/client/src/pages/Assets/components/AssetItem.tsx b/apps/wallet/client/src/pages/Assets/components/AssetItem.tsx index c411194ce..8b5c2d904 100644 --- a/apps/wallet/client/src/pages/Assets/components/AssetItem.tsx +++ b/apps/wallet/client/src/pages/Assets/components/AssetItem.tsx @@ -31,7 +31,9 @@ function AssetItem({ asset }: { asset: WalletAsset }) { }) .mutationOptions({ onSuccess: () => { - queryClient.invalidateQueries({ queryKey: ['wallet', 'assets'] }) + queryClient.invalidateQueries({ + queryKey: ['wallet', 'assets'] + }) }, onError: (error: Error) => { toast.error('Failed to delete asset: ' + error.message) diff --git a/apps/wallet/client/src/pages/Assets/modals/ModifyAssetModal.tsx b/apps/wallet/client/src/pages/Assets/modals/ModifyAssetModal.tsx index 4a38b07e6..9479973b4 100644 --- a/apps/wallet/client/src/pages/Assets/modals/ModifyAssetModal.tsx +++ b/apps/wallet/client/src/pages/Assets/modals/ModifyAssetModal.tsx @@ -25,7 +25,9 @@ function ModifyAssetModal({ }) ).mutationOptions({ onSuccess: () => { - queryClient.invalidateQueries({ queryKey: ['wallet', 'assets'] }) + queryClient.invalidateQueries({ + queryKey: ['wallet', 'assets'] + }) }, onError: error => { toast.error( diff --git a/apps/wallet/client/src/pages/Ledgers/components/LedgerItem.tsx b/apps/wallet/client/src/pages/Ledgers/components/LedgerItem.tsx index fad957857..13e7f9145 100644 --- a/apps/wallet/client/src/pages/Ledgers/components/LedgerItem.tsx +++ b/apps/wallet/client/src/pages/Ledgers/components/LedgerItem.tsx @@ -27,7 +27,9 @@ function LedgerItem({ ledger }: { ledger: WalletLedger }) { const deleteMutation = useMutation( forgeAPI.wallet.ledgers.remove.input({ id: ledger.id }).mutationOptions({ onSuccess: () => { - queryClient.invalidateQueries({ queryKey: ['wallet', 'ledgers'] }) + queryClient.invalidateQueries({ + queryKey: ['wallet', 'ledgers'] + }) }, onError: (error: Error) => { toast.error('Failed to delete ledger: ' + error.message) diff --git a/apps/wallet/client/src/pages/Ledgers/modals/ModifyLedgerModal.tsx b/apps/wallet/client/src/pages/Ledgers/modals/ModifyLedgerModal.tsx index 33e489b5b..10be1df00 100644 --- a/apps/wallet/client/src/pages/Ledgers/modals/ModifyLedgerModal.tsx +++ b/apps/wallet/client/src/pages/Ledgers/modals/ModifyLedgerModal.tsx @@ -25,7 +25,9 @@ function ModifyLedgerModal({ }) ).mutationOptions({ onSuccess: () => { - queryClient.invalidateQueries({ queryKey: ['wallet', 'ledgers'] }) + queryClient.invalidateQueries({ + queryKey: ['wallet', 'ledgers'] + }) }, onError: error => { toast.error( diff --git a/apps/wallet/client/src/pages/Transactions/index.tsx b/apps/wallet/client/src/pages/Transactions/index.tsx index 965fd5434..d4d439d45 100644 --- a/apps/wallet/client/src/pages/Transactions/index.tsx +++ b/apps/wallet/client/src/pages/Transactions/index.tsx @@ -125,7 +125,9 @@ function Transactions() {