diff --git a/.changeset/lucky-dragons-speak.md b/.changeset/lucky-dragons-speak.md new file mode 100644 index 000000000..5aa4f937d --- /dev/null +++ b/.changeset/lucky-dragons-speak.md @@ -0,0 +1,5 @@ +--- +'sv': patch +--- + +chore: simplify `runes` option diff --git a/packages/sv/src/cli/tests/snapshots/create-only/svelte.config.js b/packages/sv/src/cli/tests/snapshots/create-only/svelte.config.js index 58d330bd3..0c3412e9f 100644 --- a/packages/sv/src/cli/tests/snapshots/create-only/svelte.config.js +++ b/packages/sv/src/cli/tests/snapshots/create-only/svelte.config.js @@ -1,17 +1,10 @@ import adapter from '@sveltejs/adapter-auto'; -import { relative, sep } from 'node:path'; /** @type {import('@sveltejs/kit').Config} */ const config = { compilerOptions: { - // defaults to rune mode for the project, except for `node_modules`. Can be removed in svelte 6. - runes: ({ filename }) => { - const relativePath = relative(import.meta.dirname, filename); - const pathSegments = relativePath.toLowerCase().split(sep); - const isExternalLibrary = pathSegments.includes('node_modules'); - - return isExternalLibrary ? undefined : true; - } + // Force runes mode for the project, except for libraries. Can be removed in svelte 6. + runes: ({ filename }) => (filename.split(/[/\\]/).includes('node_modules') ? undefined : true) }, kit: { // adapter-auto only supports some environments, see https://svelte.dev/docs/kit/adapter-auto for a list. diff --git a/packages/sv/src/cli/tests/snapshots/create-with-all-addons/svelte.config.js b/packages/sv/src/cli/tests/snapshots/create-with-all-addons/svelte.config.js index 2aeeecd4e..6479320f8 100644 --- a/packages/sv/src/cli/tests/snapshots/create-with-all-addons/svelte.config.js +++ b/packages/sv/src/cli/tests/snapshots/create-with-all-addons/svelte.config.js @@ -1,18 +1,11 @@ import { mdsvex } from 'mdsvex'; import adapter from '@sveltejs/adapter-node'; -import { relative, sep } from 'node:path'; /** @type {import('@sveltejs/kit').Config} */ const config = { compilerOptions: { - // defaults to rune mode for the project, except for `node_modules`. Can be removed in svelte 6. - runes: ({ filename }) => { - const relativePath = relative(import.meta.dirname, filename); - const pathSegments = relativePath.toLowerCase().split(sep); - const isExternalLibrary = pathSegments.includes('node_modules'); - - return isExternalLibrary ? undefined : true; - } + // Force runes mode for the project, except for libraries. Can be removed in svelte 6. + runes: ({ filename }) => filename.split(/[/\\]/).includes('node_modules') ? undefined : true }, kit: { adapter: adapter() }, preprocess: [mdsvex({ extensions: ['.svx', '.md'] })], diff --git a/packages/sv/src/create/shared/+typescript/svelte.config.js b/packages/sv/src/create/shared/+typescript/svelte.config.js index 58d330bd3..0c3412e9f 100644 --- a/packages/sv/src/create/shared/+typescript/svelte.config.js +++ b/packages/sv/src/create/shared/+typescript/svelte.config.js @@ -1,17 +1,10 @@ import adapter from '@sveltejs/adapter-auto'; -import { relative, sep } from 'node:path'; /** @type {import('@sveltejs/kit').Config} */ const config = { compilerOptions: { - // defaults to rune mode for the project, except for `node_modules`. Can be removed in svelte 6. - runes: ({ filename }) => { - const relativePath = relative(import.meta.dirname, filename); - const pathSegments = relativePath.toLowerCase().split(sep); - const isExternalLibrary = pathSegments.includes('node_modules'); - - return isExternalLibrary ? undefined : true; - } + // Force runes mode for the project, except for libraries. Can be removed in svelte 6. + runes: ({ filename }) => (filename.split(/[/\\]/).includes('node_modules') ? undefined : true) }, kit: { // adapter-auto only supports some environments, see https://svelte.dev/docs/kit/adapter-auto for a list. diff --git a/packages/sv/src/create/shared/-typescript/svelte.config.js b/packages/sv/src/create/shared/-typescript/svelte.config.js index 58d330bd3..0c3412e9f 100644 --- a/packages/sv/src/create/shared/-typescript/svelte.config.js +++ b/packages/sv/src/create/shared/-typescript/svelte.config.js @@ -1,17 +1,10 @@ import adapter from '@sveltejs/adapter-auto'; -import { relative, sep } from 'node:path'; /** @type {import('@sveltejs/kit').Config} */ const config = { compilerOptions: { - // defaults to rune mode for the project, except for `node_modules`. Can be removed in svelte 6. - runes: ({ filename }) => { - const relativePath = relative(import.meta.dirname, filename); - const pathSegments = relativePath.toLowerCase().split(sep); - const isExternalLibrary = pathSegments.includes('node_modules'); - - return isExternalLibrary ? undefined : true; - } + // Force runes mode for the project, except for libraries. Can be removed in svelte 6. + runes: ({ filename }) => (filename.split(/[/\\]/).includes('node_modules') ? undefined : true) }, kit: { // adapter-auto only supports some environments, see https://svelte.dev/docs/kit/adapter-auto for a list.