diff --git a/lib/makeViteConfig.ts b/lib/makeViteConfig.ts index 8c66453..3f6d573 100644 --- a/lib/makeViteConfig.ts +++ b/lib/makeViteConfig.ts @@ -55,6 +55,14 @@ export const makeViteConfig = async ( input: { main: resolve(dirname, 'index.html'), preview: resolve(dirname, 'preview.html') + }, + // Supresses module directive warning + // See https://github.com/rollup/rollup/issues/4699 + onwarn: (warning, warn) => { + if (warning.code === 'THIS_IS_UNDEFINED') { + return; + } + return warn; } } }, diff --git a/package-lock.json b/package-lock.json index e875391..026f160 100644 --- a/package-lock.json +++ b/package-lock.json @@ -44,7 +44,7 @@ "react": "18.2.0", "react-dom": "18.2.0", "rimraf": "5.0.5", - "rollup": "2.79.1", + "rollup": "4.9.1", "rollup-plugin-esbuild": "6.1.0", "typescript": "5.2.2", "wait-on": "7.2.0" @@ -7869,16 +7869,30 @@ } }, "node_modules/rollup": { - "version": "2.79.1", - "devOptional": true, - "license": "MIT", + "version": "4.9.1", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.9.1.tgz", + "integrity": "sha512-pgPO9DWzLoW/vIhlSoDByCzcpX92bKEorbgXuZrqxByte3JFk2xSW2JEeAcyLc9Ru9pqcNNW+Ob7ntsk2oT/Xw==", "bin": { "rollup": "dist/bin/rollup" }, "engines": { - "node": ">=10.0.0" + "node": ">=18.0.0", + "npm": ">=8.0.0" }, "optionalDependencies": { + "@rollup/rollup-android-arm-eabi": "4.9.1", + "@rollup/rollup-android-arm64": "4.9.1", + "@rollup/rollup-darwin-arm64": "4.9.1", + "@rollup/rollup-darwin-x64": "4.9.1", + "@rollup/rollup-linux-arm-gnueabihf": "4.9.1", + "@rollup/rollup-linux-arm64-gnu": "4.9.1", + "@rollup/rollup-linux-arm64-musl": "4.9.1", + "@rollup/rollup-linux-riscv64-gnu": "4.9.1", + "@rollup/rollup-linux-x64-gnu": "4.9.1", + "@rollup/rollup-linux-x64-musl": "4.9.1", + "@rollup/rollup-win32-arm64-msvc": "4.9.1", + "@rollup/rollup-win32-ia32-msvc": "4.9.1", + "@rollup/rollup-win32-x64-msvc": "4.9.1", "fsevents": "~2.3.2" } }, @@ -8953,34 +8967,6 @@ "node": ">=14.14" } }, - "node_modules/vite/node_modules/rollup": { - "version": "4.9.1", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.9.1.tgz", - "integrity": "sha512-pgPO9DWzLoW/vIhlSoDByCzcpX92bKEorbgXuZrqxByte3JFk2xSW2JEeAcyLc9Ru9pqcNNW+Ob7ntsk2oT/Xw==", - "bin": { - "rollup": "dist/bin/rollup" - }, - "engines": { - "node": ">=18.0.0", - "npm": ">=8.0.0" - }, - "optionalDependencies": { - "@rollup/rollup-android-arm-eabi": "4.9.1", - "@rollup/rollup-android-arm64": "4.9.1", - "@rollup/rollup-darwin-arm64": "4.9.1", - "@rollup/rollup-darwin-x64": "4.9.1", - "@rollup/rollup-linux-arm-gnueabihf": "4.9.1", - "@rollup/rollup-linux-arm64-gnu": "4.9.1", - "@rollup/rollup-linux-arm64-musl": "4.9.1", - "@rollup/rollup-linux-riscv64-gnu": "4.9.1", - "@rollup/rollup-linux-x64-gnu": "4.9.1", - "@rollup/rollup-linux-x64-musl": "4.9.1", - "@rollup/rollup-win32-arm64-msvc": "4.9.1", - "@rollup/rollup-win32-ia32-msvc": "4.9.1", - "@rollup/rollup-win32-x64-msvc": "4.9.1", - "fsevents": "~2.3.2" - } - }, "node_modules/wait-on": { "version": "7.2.0", "dev": true, diff --git a/package.json b/package.json index e161d7d..dc71b3f 100644 --- a/package.json +++ b/package.json @@ -2,6 +2,7 @@ "name": "@sweatpants/libra", "version": "0.0.37", "description": "", + "type": "module", "publishConfig": { "access": "public" }, @@ -87,7 +88,7 @@ "react": "18.2.0", "react-dom": "18.2.0", "rimraf": "5.0.5", - "rollup": "2.79.1", + "rollup": "4.9.1", "rollup-plugin-esbuild": "6.1.0", "typescript": "5.2.2", "wait-on": "7.2.0" diff --git a/rollup.config.js b/rollup.config.js index bf62119..03c199a 100644 --- a/rollup.config.js +++ b/rollup.config.js @@ -1,7 +1,7 @@ import { defineConfig } from 'rollup'; import esbuild from 'rollup-plugin-esbuild'; import cjs from '@rollup/plugin-commonjs'; -import pkg from './package.json'; +import pkg from './package.json' assert { type: 'json' }; const config = defineConfig({ input: 'lib/index.ts', diff --git a/tests/react-18/files/component.tsx b/tests/react-18/files/component.tsx new file mode 100644 index 0000000..16ae5e6 --- /dev/null +++ b/tests/react-18/files/component.tsx @@ -0,0 +1,3 @@ +'use client'; + +export const ClientComponent = () =>
Client Component
; diff --git a/tests/react-18/files/test.libra.tsx b/tests/react-18/files/test.libra.tsx index ee7382e..00aa3e6 100644 --- a/tests/react-18/files/test.libra.tsx +++ b/tests/react-18/files/test.libra.tsx @@ -1,3 +1,5 @@ +import { ClientComponent } from './component'; + directory('folder 1', () => { add('story 1', () => { return
folder 1 story 1
; @@ -29,3 +31,7 @@ add('root story 1', () => { add('root story 2', () => { return
root story 2
; }); + +add('client component', () => { + return ; +});