Dax Raad 4 месяцев назад
Родитель
Сommit
925ce6503e

+ 0 - 1
packages/app/tsconfig.json

@@ -6,7 +6,6 @@
     "jsxImportSource": "solid-js",
     "types": ["vite/client"],
     "lib": ["DOM", "DOM.Iterable"],
-    "customConditions": ["development"],
     "paths": {
       "@/*": ["./src/*"]
     }

+ 1 - 2
packages/opencode/tsconfig.json

@@ -2,7 +2,6 @@
   "$schema": "https://json.schemastore.org/tsconfig",
   "extends": "@tsconfig/bun/tsconfig.json",
   "compilerOptions": {
-    "lib": ["ESNext", "DOM", "DOM.Iterable"],
-    "customConditions": ["development"]
+    "lib": ["ESNext", "DOM", "DOM.Iterable"]
   }
 }

+ 2 - 8
packages/plugin/package.json

@@ -8,14 +8,8 @@
     "build": "tsc"
   },
   "exports": {
-    ".": {
-      "development": "./src/index.ts",
-      "import": "./dist/index.js"
-    },
-    "./tool": {
-      "development": "./src/tool.ts",
-      "import": "./dist/tool.js"
-    }
+    ".": "./src/index.ts",
+    "./tool": "./src/tool.ts"
   },
   "files": [
     "dist"

+ 15 - 5
packages/plugin/script/publish.ts

@@ -5,14 +5,24 @@ process.chdir(dir)
 
 import { $ } from "bun"
 
-const snapshot = process.env["OPENCODE_SNAPSHOT"] === "true"
-
 await $`bun tsc`
 
+const pkg = await import("../package.json")
+for (const [key, value] of Object.entries(pkg.exports)) {
+  const file = value.replace("./src/", "./").replace(".ts", "")
+  // @ts-expect-error
+  pkg.exports[key] = {
+    import: file + ".js",
+    types: file + ".d.ts",
+  }
+}
+await Bun.write("./dist/package.json", JSON.stringify(pkg, null, 2))
+
+const snapshot = process.env["OPENCODE_SNAPSHOT"] === "true"
+
 if (snapshot) {
-  await $`bun publish --tag snapshot --access public`
-  await $`git checkout package.json`
+  await $`bun publish --tag snapshot --access public`.cwd("./dist")
 }
 if (!snapshot) {
-  await $`bun publish --access public`
+  await $`bun publish --access public`.cwd("./dist")
 }

+ 1 - 2
packages/plugin/tsconfig.json

@@ -6,8 +6,7 @@
     "module": "preserve",
     "declaration": true,
     "moduleResolution": "bundler",
-    "lib": ["es2022", "dom", "dom.iterable"],
-    "customConditions": ["development"]
+    "lib": ["es2022", "dom", "dom.iterable"]
   },
   "include": ["src"]
 }

+ 7 - 16
packages/sdk/js/package.json

@@ -5,24 +5,12 @@
   "type": "module",
   "scripts": {
     "typecheck": "tsc --noEmit",
-    "build": "tsc"
+    "build": "./script/build.ts"
   },
   "exports": {
-    ".": {
-      "development": "./src/index.ts",
-      "import": "./dist/index.js",
-      "types": "./dist/index.d.ts"
-    },
-    "./client": {
-      "development": "./src/client.ts",
-      "import": "./dist/client.js",
-      "types": "./dist/client.d.ts"
-    },
-    "./server": {
-      "development": "./src/server.ts",
-      "import": "./dist/server.js",
-      "types": "./dist/server.d.ts"
-    }
+    ".": "./src/index.ts",
+    "./client": "./src/client.ts",
+    "./server": "./src/server.ts"
   },
   "files": [
     "dist"
@@ -34,5 +22,8 @@
   },
   "dependencies": {
     "@hey-api/openapi-ts": "0.81.0"
+  },
+  "publishConfig": {
+    "directory": "dist"
   }
 }

+ 2 - 0
packages/sdk/js/script/generate.ts → packages/sdk/js/script/build.ts

@@ -35,3 +35,5 @@ await createClient({
   ],
 })
 await $`bun prettier --write src/gen`
+await $`rm -rf dist`
+await $`bun tsc`

+ 13 - 5
packages/sdk/js/script/publish.ts

@@ -5,15 +5,23 @@ process.chdir(dir)
 
 import { $ } from "bun"
 
-await import("./generate")
-await $`rm -rf dist`
-await $`bun tsc`
+await import("./build")
 
+const pkg = await import("../package.json")
+for (const [key, value] of Object.entries(pkg.exports)) {
+  const file = value.replace("./src/", "./").replace(".ts", "")
+  // @ts-expect-error
+  pkg.exports[key] = {
+    import: file + ".js",
+    types: file + ".d.ts",
+  }
+}
+await Bun.write("./dist/package.json", JSON.stringify(pkg, null, 2))
 const snapshot = process.env["OPENCODE_SNAPSHOT"] === "true"
 
 if (snapshot) {
-  await $`bun publish --tag snapshot`
+  await $`bun publish --tag snapshot`.cwd("./dist")
 }
 if (!snapshot) {
-  await $`bun publish`
+  await $`bun publish`.cwd("./dist")
 }

+ 1 - 2
packages/sdk/js/tsconfig.json

@@ -6,8 +6,7 @@
     "module": "nodenext",
     "declaration": true,
     "moduleResolution": "nodenext",
-    "lib": ["es2022", "dom", "dom.iterable"],
-    "customConditions": ["development"]
+    "lib": ["es2022", "dom", "dom.iterable"]
   },
   "include": ["src"]
 }

+ 1 - 3
tsconfig.json

@@ -1,7 +1,5 @@
 {
   "$schema": "https://json.schemastore.org/tsconfig",
   "extends": "@tsconfig/bun/tsconfig.json",
-  "compilerOptions": {
-    "customConditions": ["development"]
-  }
+  "compilerOptions": {}
 }