Skip to content

Commit ca88dc7

Browse files
committed
fix: satisfy ESM output checks for svelte packages
- Relax isLikelyEsm: ignore exports.* false positives from Svelte CE output - Remove invalid glob CSS export from editable-html-tiptap-svelte - Add delivery vite build so simple-cloze exposes dist/delivery/index.js Made-with: Cursor
1 parent a66e28a commit ca88dc7

4 files changed

Lines changed: 37 additions & 8 deletions

File tree

packages/elements-svelte/simple-cloze/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@
3838
],
3939
"sideEffects": false,
4040
"scripts": {
41-
"build": "vite build && vite build --config vite.controller.config.ts && vite build --config vite.author.config.ts && vite build --config vite.print.config.ts && vite build --config vite.config.iife.ts && tsc --emitDeclarationOnly",
41+
"build": "vite build && vite build --config vite.delivery.config.ts && vite build --config vite.controller.config.ts && vite build --config vite.author.config.ts && vite build --config vite.print.config.ts && vite build --config vite.config.iife.ts && tsc --emitDeclarationOnly",
4242
"dev": "vite",
4343
"demo": "vite --mode demo",
4444
"clean": "rm -rf dist tsconfig.tsbuildinfo"
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
import { defineConfig } from 'vite';
2+
import { svelte } from '@sveltejs/vite-plugin-svelte';
3+
import { resolve } from 'node:path';
4+
5+
export default defineConfig({
6+
plugins: [
7+
svelte({
8+
compilerOptions: {
9+
customElement: true,
10+
},
11+
emitCss: false,
12+
}),
13+
],
14+
build: {
15+
lib: {
16+
entry: resolve(__dirname, 'src/delivery/index.ts'),
17+
name: 'SimpleClozeDelivery',
18+
fileName: () => 'index.js',
19+
formats: ['es'],
20+
},
21+
outDir: 'dist/delivery',
22+
emptyOutDir: true,
23+
target: 'es2020',
24+
minify: false,
25+
sourcemap: true,
26+
rollupOptions: {
27+
output: {
28+
format: 'es',
29+
inlineDynamicImports: true,
30+
},
31+
},
32+
},
33+
});

packages/lib-svelte/editable-html-tiptap-svelte/package.json

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,7 @@
1010
"development": "./src/index.ts",
1111
"types": "./dist/index.d.ts",
1212
"default": "./dist/index.js"
13-
},
14-
"./dist/*.css": "./dist/*.css"
13+
}
1514
},
1615
"files": [
1716
"dist",

tests/esm-output.test.ts

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -33,11 +33,8 @@ function collectExportTargets(exportsField: PackageJson['exports']): string[] {
3333
}
3434

3535
function isLikelyEsm(source: string): boolean {
36-
if (
37-
source.includes('module.exports') ||
38-
source.includes('exports.') ||
39-
source.includes('require(')
40-
) {
36+
// Avoid treating Svelte custom-element output like `exports.forEach(...)` as CJS.
37+
if (/\bmodule\.exports\b/.test(source) || /\brequire\s*\(/.test(source)) {
4138
return false;
4239
}
4340
return /\bexport\b|\bimport\b|import\.meta/.test(source);

0 commit comments

Comments
 (0)