diff --git a/.gitignore b/.gitignore index e43e85f..676404f 100644 --- a/.gitignore +++ b/.gitignore @@ -175,4 +175,4 @@ dist .DS_Store .direnv/ -.wrangler/ +.wrangler/ \ No newline at end of file diff --git a/.zed/settings.json b/.zed/settings.json index 0ea0af9..9053fce 100644 --- a/.zed/settings.json +++ b/.zed/settings.json @@ -17,7 +17,15 @@ } }, "JSONC": { - "language_servers": ["eslint", "cspell", "prettier", "!biome", "!vtsls", "!typescript-language-server"], + "language_servers": [ + "eslint", + "cspell", + "json-language-server", + "prettier", + "!biome", + "!vtsls", + "!typescript-language-server" + ], "formatter": "prettier", "format_on_save": "on", "code_actions_on_format": { diff --git a/bun.lockb b/bun.lockb new file mode 100755 index 0000000..8c474b4 Binary files /dev/null and b/bun.lockb differ diff --git a/eslint.config.mjs b/eslint.config.mjs index fffb5e4..9ef8115 100644 --- a/eslint.config.mjs +++ b/eslint.config.mjs @@ -25,8 +25,7 @@ export default defineConfig([ "**/node_modules", "**/dist", "**/build", - "**/docs", - "**/.wrangler" + "**/docs" ]), ...compat .extends( diff --git a/tsconfig.base.json b/tsconfig.base.json index 116d6cc..972bdc0 100644 --- a/tsconfig.base.json +++ b/tsconfig.base.json @@ -1,45 +1,29 @@ { - "compilerOptions": { - "target": "ES2022", - "jsx": "react-jsx", - "lib": ["ES2022", "DOM", "DOM.Iterable"], - "baseUrl": ".", - "rootDir": ".", - "module": "ESNext", - "moduleResolution": "Bundler", - "moduleDetection": "force", - "downlevelIteration": true, - "allowImportingTsExtensions": true, - "strict": true, - "exactOptionalPropertyTypes": true, - "noImplicitReturns": false, - "noUnusedLocals": false, - "noUnusedParameters": false, - "noFallthroughCasesInSwitch": true, - "noEmitOnError": false, - "noErrorTruncation": true, - "allowJs": false, - "checkJs": false, - "forceConsistentCasingInFileNames": true, - "noImplicitAny": true, - "noImplicitThis": true, - "noUncheckedIndexedAccess": false, - "strictNullChecks": true, - "sourceMap": true, - "incremental": true, - "noEmit": true, - "resolveJsonModule": true, - "verbatimModuleSyntax": true, - "skipDefaultLibCheck": true, - "skipLibCheck": true, - "erasableSyntaxOnly": true, - "paths": { - "@shared/*": ["packages/shared/*"], - "@apps/worker-1/*": ["apps/workers-1/*"], - "@apps/worker-2/*": ["apps/workers-2/*"] - }, - "plugins": [{ "name": "@effect/language-service" }] - }, - "include": [], - "exclude": ["**/node_modules", "**/dist", "**/coverage", "**/public"] + "compilerOptions": { + "composite": true, + "downlevelIteration": true, + "resolveJsonModule": true, + "esModuleInterop": false, + "incremental": true, + "outDir": "dist", + "baseUrl": ".", + "skipLibCheck": true, + "skipDefaultLibCheck": true, + "forceConsistentCasingInFileNames": true, + "allowSyntheticDefaultImports": true, + "exactOptionalPropertyTypes": true, + "noErrorTruncation": true, + "moduleResolution": "bundler", + "module": "ES2022", + "lib": ["ES2022", "DOM"], + "target": "ES2022", + "sourceMap": true, + "strict": true, + "strictNullChecks": true, + "plugins": [{ "name": "@effect/language-service" }], + "types": [], + "paths": { + "@/*": ["src/*.ts"] + } + } } diff --git a/tsconfig.json b/tsconfig.json new file mode 100644 index 0000000..13a0f75 --- /dev/null +++ b/tsconfig.json @@ -0,0 +1,8 @@ +{ + "extends": "./tsconfig.base.json", + "include": [], + "references": [ + { "path": "./tsconfig.src.json" }, + { "path": "./tsconfig.test.json" } + ] +} diff --git a/tsconfig.src.json b/tsconfig.src.json new file mode 100644 index 0000000..322a83b --- /dev/null +++ b/tsconfig.src.json @@ -0,0 +1,13 @@ +{ + "extends": "./tsconfig.base.json", + "compilerOptions": { + "baseUrl": "./", + "outDir": "dist", + "rootDir": "src", + "module": "Preserve", + "tsBuildInfoFile": "./tsconfig.src.tsbuildinfo", + "types": ["@cloudflare/workers-types/experimental"] + }, + "include": ["worker-configuration.d.ts", "src/**/*"], + "exclude": ["test/**/*"] +} diff --git a/tsconfig.test.json b/tsconfig.test.json new file mode 100644 index 0000000..34f93fc --- /dev/null +++ b/tsconfig.test.json @@ -0,0 +1,15 @@ +{ + "extends": "./tsconfig.base.json", + "compilerOptions": { + "outDir": "dist", + "rootDir": "test", + "baseUrl": "./", + "module": "Preserve", + "tsBuildInfoFile": "./tsconfig.test.tsbuildinfo", + "types": [ + "@cloudflare/workers-types/experimental", + "@cloudflare/vitest-pool-workers" + ] + }, + "include": ["test/**/*", "src/env.d.ts"] +}