mirror of
https://github.com/storybookjs/storybook.git
synced 2025-03-21 05:02:39 +08:00
Merge pull request #19698 from GregLahaye/add-html-vite-framework
HTML: Add `html-vite` framework
This commit is contained in:
commit
d21d47638e
1
code/frameworks/html-vite/README.md
Normal file
1
code/frameworks/html-vite/README.md
Normal file
@ -0,0 +1 @@
|
||||
# Storybook for HTML
|
85
code/frameworks/html-vite/package.json
Normal file
85
code/frameworks/html-vite/package.json
Normal file
@ -0,0 +1,85 @@
|
||||
{
|
||||
"name": "@storybook/html-vite",
|
||||
"version": "7.0.0-alpha.57",
|
||||
"description": "Storybook for HTML and Vite: Develop HTML in isolation with Hot Reloading.",
|
||||
"keywords": [
|
||||
"storybook"
|
||||
],
|
||||
"homepage": "https://github.com/storybookjs/storybook/tree/main/frameworks/html-vite",
|
||||
"bugs": {
|
||||
"url": "https://github.com/storybookjs/storybook/issues"
|
||||
},
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/storybookjs/storybook.git",
|
||||
"directory": "frameworks/html-vite"
|
||||
},
|
||||
"funding": {
|
||||
"type": "opencollective",
|
||||
"url": "https://opencollective.com/storybook"
|
||||
},
|
||||
"license": "MIT",
|
||||
"exports": {
|
||||
".": {
|
||||
"require": "./dist/index.js",
|
||||
"import": "./dist/index.mjs",
|
||||
"types": "./dist/index.d.ts"
|
||||
},
|
||||
"./preset": {
|
||||
"require": "./dist/preset.js",
|
||||
"import": "./dist/preset.mjs",
|
||||
"types": "./dist/preset.d.ts"
|
||||
},
|
||||
"./package.json": {
|
||||
"require": "./package.json",
|
||||
"import": "./package.json",
|
||||
"types": "./package.json"
|
||||
}
|
||||
},
|
||||
"main": "dist/index.js",
|
||||
"module": "dist/index.mjs",
|
||||
"types": "dist/index.d.ts",
|
||||
"files": [
|
||||
"dist/**/*",
|
||||
"types/**/*",
|
||||
"README.md",
|
||||
"*.js",
|
||||
"*.d.ts"
|
||||
],
|
||||
"scripts": {
|
||||
"check": "tsc --noEmit",
|
||||
"prep": "../../../scripts/prepare/bundle.ts"
|
||||
},
|
||||
"dependencies": {
|
||||
"@storybook/addons": "7.0.0-alpha.57",
|
||||
"@storybook/builder-vite": "7.0.0-alpha.57",
|
||||
"@storybook/channel-postmessage": "7.0.0-alpha.57",
|
||||
"@storybook/channel-websocket": "7.0.0-alpha.57",
|
||||
"@storybook/client-api": "7.0.0-alpha.57",
|
||||
"@storybook/core-server": "7.0.0-alpha.57",
|
||||
"@storybook/html": "7.0.0-alpha.57",
|
||||
"@storybook/node-logger": "7.0.0-alpha.57",
|
||||
"@storybook/preview-web": "7.0.0-alpha.57",
|
||||
"magic-string": "^0.26.1",
|
||||
"vite": "3"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@types/node": "^16.0.0",
|
||||
"typescript": "~4.6.3",
|
||||
"vite": "^3.1.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": "^14.18 || >=16"
|
||||
},
|
||||
"publishConfig": {
|
||||
"access": "public"
|
||||
},
|
||||
"bundler": {
|
||||
"entries": [
|
||||
"./src/index.ts",
|
||||
"./src/preset.ts"
|
||||
],
|
||||
"platform": "node"
|
||||
},
|
||||
"gitHead": "c8e9a862bb83c4a0d6b5975e795b4ca7f7ff7bc2"
|
||||
}
|
1
code/frameworks/html-vite/preset.js
Normal file
1
code/frameworks/html-vite/preset.js
Normal file
@ -0,0 +1 @@
|
||||
module.exports = require('./dist/preset');
|
1
code/frameworks/html-vite/src/index.ts
Normal file
1
code/frameworks/html-vite/src/index.ts
Normal file
@ -0,0 +1 @@
|
||||
export type { StorybookConfig } from '@storybook/builder-vite';
|
6
code/frameworks/html-vite/src/preset.ts
Normal file
6
code/frameworks/html-vite/src/preset.ts
Normal file
@ -0,0 +1,6 @@
|
||||
import type { StorybookConfig } from '@storybook/builder-vite';
|
||||
|
||||
export const core: StorybookConfig['core'] = {
|
||||
builder: '@storybook/builder-vite',
|
||||
renderer: '@storybook/html',
|
||||
};
|
10
code/frameworks/html-vite/tsconfig.json
Normal file
10
code/frameworks/html-vite/tsconfig.json
Normal file
@ -0,0 +1,10 @@
|
||||
{
|
||||
"extends": "../../tsconfig.json",
|
||||
"compilerOptions": {
|
||||
"rootDir": "./src",
|
||||
"types": ["node"],
|
||||
"resolveJsonModule": true
|
||||
},
|
||||
"include": ["src/**/*"],
|
||||
"exclude": ["src/**/*.test.*", "src/**/__testfixtures__/**"]
|
||||
}
|
@ -16,6 +16,8 @@ const run = async () => {
|
||||
|
||||
if (!semver.valid(updatedVersion)) throw new Error(`Invalid version: ${updatedVersion}`);
|
||||
|
||||
logger.log(`Generating versions.ts with v${updatedVersion}`);
|
||||
|
||||
const storybookPackagesPaths = await globby(
|
||||
`${rootDirectory}/@(frameworks|addons|lib|renderers|presets)/**/package.json`,
|
||||
{
|
||||
@ -40,15 +42,19 @@ const run = async () => {
|
||||
.sort((package1, package2) => package1.name.localeCompare(package2.name))
|
||||
.reduce((acc, { name }) => ({ ...acc, [name]: updatedVersion }), {});
|
||||
|
||||
const versionsPath = path.join(__dirname, '..', 'src', 'versions.ts');
|
||||
|
||||
await writeFile(
|
||||
path.join(__dirname, '..', 'src', 'versions.ts'),
|
||||
versionsPath,
|
||||
dedent`
|
||||
// auto generated file, do not edit
|
||||
export default ${JSON.stringify(packageToVersionMap, null, 2)}
|
||||
`
|
||||
);
|
||||
|
||||
exec(`yarn lint:js:cmd --fix ${path.join(__dirname, '..', 'src', 'versions.ts')}`, {
|
||||
logger.log(`Updating versions and formatting results at: ${versionsPath}`);
|
||||
|
||||
exec(`yarn lint:js:cmd --fix ${versionsPath}`, {
|
||||
cwd: path.join(__dirname, '..', '..', '..'),
|
||||
});
|
||||
};
|
||||
|
@ -44,6 +44,7 @@ const packagesMap: Record<string, { webpack5?: string; vite?: string }> = {
|
||||
},
|
||||
'@storybook/html': {
|
||||
webpack5: '@storybook/html-webpack5',
|
||||
vite: '@storybook/html-vite',
|
||||
},
|
||||
};
|
||||
|
||||
|
@ -162,6 +162,28 @@ export const allTemplates: Record<string, Template> = {
|
||||
builder: '@storybook/builder-webpack5',
|
||||
},
|
||||
},
|
||||
'html-vite/default-js': {
|
||||
name: 'HTML Vite JS',
|
||||
script: 'yarn create vite . --template vanilla && echo "export default {}" > vite.config.js',
|
||||
expected: {
|
||||
framework: '@storybook/html-vite',
|
||||
renderer: '@storybook/html',
|
||||
builder: '@storybook/builder-vite',
|
||||
},
|
||||
// TODO: remove this once html-vite framework is released
|
||||
inDevelopment: true,
|
||||
},
|
||||
'html-vite/default-ts': {
|
||||
name: 'HTML Vite TS',
|
||||
script: 'yarn create vite . --template vanilla-ts && echo "export default {}" > vite.config.js',
|
||||
expected: {
|
||||
framework: '@storybook/html-vite',
|
||||
renderer: '@storybook/html',
|
||||
builder: '@storybook/builder-vite',
|
||||
},
|
||||
// TODO: remove this once html-vite framework is released
|
||||
inDevelopment: true,
|
||||
},
|
||||
'svelte-vite/default-js': {
|
||||
name: 'Svelte Vite (JS)',
|
||||
script: 'yarn create vite . --template svelte',
|
||||
|
@ -42,6 +42,7 @@ export default {
|
||||
'@storybook/ember': '7.0.0-alpha.57',
|
||||
'@storybook/html': '7.0.0-alpha.57',
|
||||
'@storybook/html-webpack5': '7.0.0-alpha.57',
|
||||
'@storybook/html-vite': '7.0.0-alpha.57',
|
||||
'@storybook/instrumenter': '7.0.0-alpha.57',
|
||||
'@storybook/nextjs': '7.0.0-alpha.57',
|
||||
'@storybook/node-logger': '7.0.0-alpha.57',
|
||||
|
@ -191,6 +191,7 @@
|
||||
"@storybook/ember": "workspace:*",
|
||||
"@storybook/eslint-config-storybook": "^3.1.2",
|
||||
"@storybook/html": "workspace:*",
|
||||
"@storybook/html-vite": "workspace:*",
|
||||
"@storybook/html-webpack5": "workspace:*",
|
||||
"@storybook/instrumenter": "workspace:*",
|
||||
"@storybook/jest": "^0.0.10",
|
||||
|
@ -211,6 +211,11 @@
|
||||
"root": "renderers/html",
|
||||
"type": "library"
|
||||
},
|
||||
"@storybook/html-vite": {
|
||||
"implicitDependencies": [],
|
||||
"root": "frameworks/html-vite",
|
||||
"type": "library"
|
||||
},
|
||||
"@storybook/html-webpack5": {
|
||||
"implicitDependencies": [],
|
||||
"root": "frameworks/html-webpack5",
|
||||
|
@ -6416,6 +6416,26 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@storybook/html-vite@workspace:*, @storybook/html-vite@workspace:frameworks/html-vite":
|
||||
version: 0.0.0-use.local
|
||||
resolution: "@storybook/html-vite@workspace:frameworks/html-vite"
|
||||
dependencies:
|
||||
"@storybook/addons": 7.0.0-alpha.57
|
||||
"@storybook/builder-vite": 7.0.0-alpha.57
|
||||
"@storybook/channel-postmessage": 7.0.0-alpha.57
|
||||
"@storybook/channel-websocket": 7.0.0-alpha.57
|
||||
"@storybook/client-api": 7.0.0-alpha.57
|
||||
"@storybook/core-server": 7.0.0-alpha.57
|
||||
"@storybook/html": 7.0.0-alpha.57
|
||||
"@storybook/node-logger": 7.0.0-alpha.57
|
||||
"@storybook/preview-web": 7.0.0-alpha.57
|
||||
"@types/node": ^16.0.0
|
||||
magic-string: ^0.26.1
|
||||
typescript: ~4.6.3
|
||||
vite: ^3.1.0
|
||||
languageName: unknown
|
||||
linkType: soft
|
||||
|
||||
"@storybook/html-webpack5@workspace:*, @storybook/html-webpack5@workspace:frameworks/html-webpack5":
|
||||
version: 0.0.0-use.local
|
||||
resolution: "@storybook/html-webpack5@workspace:frameworks/html-webpack5"
|
||||
@ -6941,7 +6961,7 @@ __metadata:
|
||||
languageName: unknown
|
||||
linkType: soft
|
||||
|
||||
"@storybook/preview-web@workspace:*, @storybook/preview-web@workspace:lib/preview-web":
|
||||
"@storybook/preview-web@7.0.0-alpha.57, @storybook/preview-web@workspace:*, @storybook/preview-web@workspace:lib/preview-web":
|
||||
version: 0.0.0-use.local
|
||||
resolution: "@storybook/preview-web@workspace:lib/preview-web"
|
||||
dependencies:
|
||||
@ -7138,6 +7158,7 @@ __metadata:
|
||||
"@storybook/ember": "workspace:*"
|
||||
"@storybook/eslint-config-storybook": ^3.1.2
|
||||
"@storybook/html": "workspace:*"
|
||||
"@storybook/html-vite": "workspace:*"
|
||||
"@storybook/html-webpack5": "workspace:*"
|
||||
"@storybook/instrumenter": "workspace:*"
|
||||
"@storybook/jest": ^0.0.10
|
||||
|
Loading…
x
Reference in New Issue
Block a user