From 11bc2cd9f60e5147aff57bf0b5c06e9fc090a36c Mon Sep 17 00:00:00 2001 From: Ricardo Devis Agullo Date: Wed, 12 Nov 2025 16:15:51 +0100 Subject: [PATCH 1/2] pass imports on preview --- src/registry/domain/options-sanitiser.ts | 1 + src/registry/routes/component-preview.ts | 4 +++- src/types.ts | 1 + 3 files changed, 5 insertions(+), 1 deletion(-) diff --git a/src/registry/domain/options-sanitiser.ts b/src/registry/domain/options-sanitiser.ts index 7b29d8cf..44a20f96 100644 --- a/src/registry/domain/options-sanitiser.ts +++ b/src/registry/domain/options-sanitiser.ts @@ -164,6 +164,7 @@ export default function optionsSanitiser(input: RegistryOptions): Config { const gzip = zlib.gzipSync(minified, { level: 7 }); options.compiledClient = { ...compiled, + imports: clientOptions.imports, code: { minified, gzip, diff --git a/src/registry/routes/component-preview.ts b/src/registry/routes/component-preview.ts index 91d1d709..1b47b1cb 100644 --- a/src/registry/routes/component-preview.ts +++ b/src/registry/routes/component-preview.ts @@ -34,7 +34,9 @@ function componentPreview( previewView({ robots: res.conf.discovery.robots, component, - importmap: getOcConfig(res.conf.path)?.development?.importmap, + importmap: + getOcConfig(res.conf.path)?.development?.importmap || + res.conf.compiledClient?.imports, fallbackClient: res.conf.fallbackClient ? `${res.conf.fallbackRegistryUrl.replace(/\/$/, '')}/oc-client/client.dev.js` : undefined, diff --git a/src/types.ts b/src/types.ts index 7831368e..d7ee3103 100644 --- a/src/types.ts +++ b/src/types.ts @@ -174,6 +174,7 @@ export interface Config { * @internal */ compiledClient?: { + imports?: Record; code: { gzip: Buffer; brotli: Buffer; minified: string }; map: string; dev: string; From 826e51a1ec4c94a4cfca54d19f997d6777bc8d3a Mon Sep 17 00:00:00 2001 From: Ricardo Devis Agullo Date: Wed, 12 Nov 2025 16:19:20 +0100 Subject: [PATCH 2/2] pass imports directly --- src/registry/routes/component-preview.ts | 4 ++-- src/registry/views/preview.ts | 6 ++---- 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/src/registry/routes/component-preview.ts b/src/registry/routes/component-preview.ts index 1b47b1cb..73d264e1 100644 --- a/src/registry/routes/component-preview.ts +++ b/src/registry/routes/component-preview.ts @@ -34,8 +34,8 @@ function componentPreview( previewView({ robots: res.conf.discovery.robots, component, - importmap: - getOcConfig(res.conf.path)?.development?.importmap || + imports: + getOcConfig(res.conf.path)?.development?.importmap?.imports || res.conf.compiledClient?.imports, fallbackClient: res.conf.fallbackClient ? `${res.conf.fallbackRegistryUrl.replace(/\/$/, '')}/oc-client/client.dev.js` diff --git a/src/registry/views/preview.ts b/src/registry/views/preview.ts index a9e1830a..62e62e38 100644 --- a/src/registry/views/preview.ts +++ b/src/registry/views/preview.ts @@ -8,14 +8,12 @@ export default function preview(vm: { liveReload: string; templates: TemplateInfo[]; robots: boolean; - importmap?: { - imports?: Record; - }; + imports?: Record; preload?: string; }): string { const baseUrl = vm.href.replace('http://', '//').replace('https://', '//'); const { name, version } = vm.component; - const imports = vm.importmap?.imports || vm.component.oc.files.imports; + const imports = vm.imports || vm.component.oc.files.imports; const componentHref = `${baseUrl}${name}/${version}/${vm.qs}`; const clientHref = vm.fallbackClient || `${baseUrl}oc-client/client.js`; const id = `oc-${name}@${version}`;