Browse Source

build: export types for @excalidraw/utils (#7736)

* build: export types for @excalidraw/utils

* fix

* add types
Aakansha Doshi 1 year ago
parent
commit
f207bd0a1c
3 changed files with 23 additions and 1 deletions
  1. 3 0
      packages/utils/global.d.ts
  2. 4 1
      packages/utils/package.json
  3. 16 0
      packages/utils/tsconfig.json

+ 3 - 0
packages/utils/global.d.ts

@@ -0,0 +1,3 @@
+/// <reference types="vite/client" />
+import "../excalidraw/global";
+import "../excalidraw/css";

+ 4 - 1
packages/utils/package.json

@@ -10,6 +10,7 @@
       "default": "./dist/prod/index.js"
     }
   },
+  "types": "./dist/utils/index.d.ts",
   "files": [
     "dist/*"
   ],
@@ -68,6 +69,7 @@
     "file-loader": "6.2.0",
     "sass-loader": "13.0.2",
     "ts-loader": "9.3.1",
+    "typescript": "4.9.4",
     "webpack": "5.76.0",
     "webpack-bundle-analyzer": "4.5.0",
     "webpack-cli": "4.10.0"
@@ -75,8 +77,9 @@
   "bugs": "https://github.com/excalidraw/excalidraw/issues",
   "repository": "https://github.com/excalidraw/excalidraw",
   "scripts": {
+    "gen:types": "rm -rf types && tsc",
     "build:umd": "cross-env NODE_ENV=production webpack --config webpack.prod.config.js",
-    "build:esm": "rm -rf dist && node ../../scripts/buildUtils.js",
+    "build:esm": "rm -rf dist && node ../../scripts/buildUtils.js && yarn gen:types",
     "build:umd:withAnalyzer": "cross-env NODE_ENV=production ANALYZER=true webpack --config webpack.prod.config.js",
     "pack": "yarn build:umd && yarn pack"
   }

+ 16 - 0
packages/utils/tsconfig.json

@@ -0,0 +1,16 @@
+{
+  "compilerOptions": {
+    "target": "ESNext",
+    "strict": true,
+    "outDir": "dist",
+    "skipLibCheck": true,
+    "declaration": true,
+    "emitDeclarationOnly": true,
+    "allowSyntheticDefaultImports": true,
+    "module": "ESNext",
+    "moduleResolution": "Node",
+    "resolveJsonModule": true,
+    "jsx": "react-jsx"
+  },
+  "exclude": ["**/*.test.*", "**/tests/*", "types", "dist"]
+}