split the svelte renderer preview entrypoint into docs & non-docs parts

This commit is contained in:
Norbert de Langen 2023-10-30 20:08:14 +01:00
parent d77983cd35
commit ac33fe9541
No known key found for this signature in database
GPG Key ID: FD0E78AF9A837762
7 changed files with 37 additions and 14 deletions

View File

@ -26,11 +26,9 @@
"require": "./dist/index.js",
"import": "./dist/index.mjs"
},
"./preview": {
"types": "./dist/config.d.ts",
"require": "./dist/config.js",
"import": "./dist/config.mjs"
},
"./preset": "./preset.js",
"./dist/preview.mjs": "./dist/preview.mjs",
"./dist/preview-docs.mjs": "./dist/preview-docs.mjs",
"./package.json": "./package.json",
"./templates/HOC.svelte": "./templates/HOC.svelte",
"./templates/PreviewRender.svelte": "./templates/PreviewRender.svelte",
@ -81,7 +79,9 @@
"bundler": {
"entries": [
"./src/index.ts",
"./src/config.ts"
"./src/preset.ts",
"./src/preview.ts",
"./src/preview-docs.ts"
],
"platform": "browser"
},

View File

@ -0,0 +1 @@
module.exports = require('./dist/preset');

View File

@ -1 +0,0 @@
export * from './dist/config.mjs';

View File

@ -1,7 +0,0 @@
import { parameters as docsParams } from './docs/config';
export const parameters: {} = { renderer: 'svelte' as const, ...docsParams };
export { decorators, argTypesEnhancers } from './docs/config';
export { render, renderToCanvas } from './render';
export { decorateStory as applyDecorators } from './decorators';

View File

@ -0,0 +1,23 @@
import type { LoadedPreset, StorybookConfig } from '@storybook/types';
import { join } from 'path';
const hasDocs = (presetsList: LoadedPreset[]) => {
return presetsList.some((preset: string | { name: string }) => {
const presetName = typeof preset === 'string' ? preset : preset.name;
return presetName.includes('@storybook/addon-docs');
});
};
export const previewAnnotations: StorybookConfig['previewAnnotations'] = async (input, options) => {
const { presetsList } = options;
if (!presetsList) {
return input;
}
const docsInList = hasDocs(presetsList);
const result: string[] = [];
return result
.concat(input)
.concat([join(__dirname, 'preview.mjs')])
.concat(docsInList ? [join(__dirname, 'preview-docs.mjs')] : []);
};

View File

@ -0,0 +1,3 @@
export { parameters } from './docs/config';
export { decorators, argTypesEnhancers } from './docs/config';

View File

@ -0,0 +1,4 @@
export const parameters: {} = { renderer: 'svelte' };
export { render, renderToCanvas } from './render';
export { decorateStory as applyDecorators } from './decorators';