From ea2d625c03f77ddee943c581ca7d1fd93407f34d Mon Sep 17 00:00:00 2001 From: Kyle Lacy Date: Tue, 20 Feb 2024 12:46:06 -0800 Subject: [PATCH 1/5] Add `exports` key to `package.json` --- package.json | 1 + 1 file changed, 1 insertion(+) diff --git a/package.json b/package.json index d6e9f26..2365001 100644 --- a/package.json +++ b/package.json @@ -5,6 +5,7 @@ "examples/*", "tests/*" ], + "exports": "./dist/module.esm.js", "module": "dist/module.esm.js", "unpkg": "dist/cdn.min.js", "files": [ From 929a4a07313215e1e1b98ca3725d01335663a309 Mon Sep 17 00:00:00 2001 From: Kyle Lacy Date: Thu, 29 Feb 2024 16:23:08 -0800 Subject: [PATCH 2/5] Add `await`s when calling esbuild `build` function --- build.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/build.js b/build.js index 43d8929..90b5896 100644 --- a/build.js +++ b/build.js @@ -93,7 +93,7 @@ const externalDependenciesHack = ['@tailwindcss/oxide']; } // MODULE -build({ +await build({ entryPoints: {'module.esm': 'builds/module.ts'}, bundle: true, external: [...Object.keys({ ...pkg.dependencies, ...pkg.peerDependencies }).filter( @@ -108,7 +108,7 @@ build({ }); // CDN -build({ +await build({ entryPoints: {'cdn.min': 'builds/cdn.js'}, external: externalDependenciesHack, bundle: true, From d2d3a28afd9459c1c8537972abc9fdb6f762fd17 Mon Sep 17 00:00:00 2001 From: Kyle Lacy Date: Thu, 29 Feb 2024 16:23:23 -0800 Subject: [PATCH 3/5] Add CommonJS export --- build.js | 15 +++++++++++++++ package.json | 1 + 2 files changed, 16 insertions(+) diff --git a/build.js b/build.js index 90b5896..f707d4a 100644 --- a/build.js +++ b/build.js @@ -107,6 +107,21 @@ await build({ ...sharedConfig }); +// CommonJS +await build({ + entryPoints: {'main': 'builds/module.ts'}, + bundle: true, + external: [...Object.keys({ ...pkg.dependencies, ...pkg.peerDependencies }).filter( + // We only want to include tailwindcss as an external dependency for its types. + (name) => name !== 'tailwindcss', + ), ...externalDependenciesHack], + logLevel: 'info', + outdir: 'dist', + sourcemap: true, + format: 'cjs', + ...sharedConfig +}); + // CDN await build({ entryPoints: {'cdn.min': 'builds/cdn.js'}, diff --git a/package.json b/package.json index 2365001..e20bbb7 100644 --- a/package.json +++ b/package.json @@ -8,6 +8,7 @@ "exports": "./dist/module.esm.js", "module": "dist/module.esm.js", "unpkg": "dist/cdn.min.js", + "main": "dist/main.js", "files": [ "index.d.ts", "dist/*" From e8439d233d4301ba9317170742c093f6f34db63f Mon Sep 17 00:00:00 2001 From: Kyle Lacy Date: Thu, 29 Feb 2024 16:24:55 -0800 Subject: [PATCH 4/5] Add `types` key to `package.json` --- package.json | 1 + 1 file changed, 1 insertion(+) diff --git a/package.json b/package.json index e20bbb7..b114b47 100644 --- a/package.json +++ b/package.json @@ -9,6 +9,7 @@ "module": "dist/module.esm.js", "unpkg": "dist/cdn.min.js", "main": "dist/main.js", + "types": "index.d.ts", "files": [ "index.d.ts", "dist/*" From 98746a62b6f720fab8c07d029e1b32e3530a4a1f Mon Sep 17 00:00:00 2001 From: Kyle Lacy Date: Thu, 29 Feb 2024 16:39:00 -0800 Subject: [PATCH 5/5] Add TypeScript types under `exports` key in `package.json` --- package.json | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/package.json b/package.json index b114b47..fa377e9 100644 --- a/package.json +++ b/package.json @@ -5,7 +5,12 @@ "examples/*", "tests/*" ], - "exports": "./dist/module.esm.js", + "exports": { + ".": { + "default": "./dist/module.esm.js", + "types": "./index.d.ts" + } + }, "module": "dist/module.esm.js", "unpkg": "dist/cdn.min.js", "main": "dist/main.js",