From 6cc4dfb9c7e2b8177df6d790414e2d6658dc9231 Mon Sep 17 00:00:00 2001 From: "N. V. Lang" Date: Thu, 18 Jul 2024 19:35:59 +0200 Subject: [PATCH] fix: export metadata even if no frontmatter found Otherwise doing `import.meta.glob('...', { import: 'metadata', eager: true })` becomes rather difficult. --- src/base/Sveltex.ts | 6 +++++- tests/unit/base/Sveltex/sveltex.script.test.ts | 4 +++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/src/base/Sveltex.ts b/src/base/Sveltex.ts index 84fd374..bf0f4ae 100644 --- a/src/base/Sveltex.ts +++ b/src/base/Sveltex.ts @@ -185,7 +185,11 @@ export class Sveltex< if (attributes['context'] === 'module') { // From frontmatter - script.push(...(this.scriptModuleLines[filename] ?? [])); + script.push( + ...(this.scriptModuleLines[filename] ?? [ + 'export const metadata = undefined;', + ]), + ); } else { script.push(...tcInfos.map((info) => TexComponent.importSvg(info))); diff --git a/tests/unit/base/Sveltex/sveltex.script.test.ts b/tests/unit/base/Sveltex/sveltex.script.test.ts index 5994cdb..b9b3f50 100644 --- a/tests/unit/base/Sveltex/sveltex.script.test.ts +++ b/tests/unit/base/Sveltex/sveltex.script.test.ts @@ -261,7 +261,9 @@ describe('Sveltex', () => { markup: markupOut?.code ?? '', filename: '6f85b451-6ae9-42c4-a03b-cca772ef7455.sveltex', }); - expect(scriptModuleOut).toBeUndefined(); + expect(scriptModuleOut?.code).toMatch( + /^\s*export const metadata = undefined;\s*$/, + ); existsSync.mockReset(); });