@storybook/vue3-vite 8.0.4 → 8.0.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/preset.js +2 -2
- package/package.json +5 -5
package/dist/preset.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
"use strict";var __create=Object.create;var __defProp=Object.defineProperty;var __getOwnPropDesc=Object.getOwnPropertyDescriptor;var __getOwnPropNames=Object.getOwnPropertyNames;var __getProtoOf=Object.getPrototypeOf,__hasOwnProp=Object.prototype.hasOwnProperty;var __export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&typeof from=="object"||typeof from=="function")for(let key of __getOwnPropNames(from))!__hasOwnProp.call(to,key)&&key!==except&&__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to};var __toESM=(mod,isNodeMode,target)=>(target=mod!=null?__create(__getProtoOf(mod)):{},__copyProps(isNodeMode||!mod||!mod.__esModule?__defProp(target,"default",{value:mod,enumerable:!0}):target,mod)),__toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod);var preset_exports={};__export(preset_exports,{core:()=>core,viteFinal:()=>viteFinal});module.exports=__toCommonJS(preset_exports);var import_path2=require("path");var import_find_package_json=__toESM(require("find-package-json")),import_promises=__toESM(require("fs/promises")),import_magic_string=__toESM(require("magic-string")),import_path=__toESM(require("path")),import_vue_component_meta=require("vue-component-meta"),import_vue_docgen_api=require("vue-docgen-api");async function vueComponentMeta(){let{createFilter}=await import("vite"),filter=createFilter(/\.(vue|ts|js|tsx|jsx)$/,/\.stories\.(ts|tsx|js|jsx)$|^\/virtual:|^\/sb-preview\/|\.storybook\/.*\.(ts|js)$/),checker=await
|
|
1
|
+
"use strict";var __create=Object.create;var __defProp=Object.defineProperty;var __getOwnPropDesc=Object.getOwnPropertyDescriptor;var __getOwnPropNames=Object.getOwnPropertyNames;var __getProtoOf=Object.getPrototypeOf,__hasOwnProp=Object.prototype.hasOwnProperty;var __export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&typeof from=="object"||typeof from=="function")for(let key of __getOwnPropNames(from))!__hasOwnProp.call(to,key)&&key!==except&&__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to};var __toESM=(mod,isNodeMode,target)=>(target=mod!=null?__create(__getProtoOf(mod)):{},__copyProps(isNodeMode||!mod||!mod.__esModule?__defProp(target,"default",{value:mod,enumerable:!0}):target,mod)),__toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod);var preset_exports={};__export(preset_exports,{core:()=>core,viteFinal:()=>viteFinal});module.exports=__toCommonJS(preset_exports);var import_path2=require("path");var import_find_package_json=__toESM(require("find-package-json")),import_promises=__toESM(require("fs/promises")),import_magic_string=__toESM(require("magic-string")),import_path=__toESM(require("path")),import_vue_component_meta=require("vue-component-meta"),import_vue_docgen_api=require("vue-docgen-api");async function vueComponentMeta(){let{createFilter}=await import("vite"),filter=createFilter(/\.(vue|ts|js|tsx|jsx)$/,/\.stories\.(ts|tsx|js|jsx)$|^\/virtual:|^\/sb-preview\/|\.storybook\/.*\.(ts|js)$/),checker=await createCheckerWithWorkaround();return{name:"storybook:vue-component-meta-plugin",async transform(src,id){if(filter(id))try{let exportNames=checker.getExportNames(id),componentsMeta=exportNames.map(name=>checker.getComponentMeta(id,name));componentsMeta=await applyTempFixForEventDescriptions(id,componentsMeta);let metaSources=[];if(componentsMeta.forEach((meta,index)=>{if(!meta.props.length&&!meta.events.length&&!meta.slots.length&&!meta.exposed.length||meta.type===import_vue_component_meta.TypeMeta.Unknown)return;let exportName=exportNames[index],exposed=meta.exposed.filter(expose=>{let nameWithoutOnPrefix=expose.name;return nameWithoutOnPrefix.startsWith("on")&&(nameWithoutOnPrefix=lowercaseFirstLetter(expose.name.replace("on",""))),!meta.events.find(event=>event.name===nameWithoutOnPrefix)}).filter(expose=>expose.name==="$slots"?!meta.slots.map(slot=>slot.name).every(slotName=>expose.type.includes(slotName)):!0);metaSources.push({exportName,displayName:exportName==="default"?getFilenameWithoutExtension(id):exportName,...meta,exposed,sourceFiles:id})}),metaSources.length===0)return;let s=new import_magic_string.default(src);return metaSources.forEach(meta=>{let isDefaultExport=meta.exportName==="default",name=isDefaultExport?"_sfc_main":meta.exportName;new RegExp(`export {.*${name}.*}`).test(src)||new RegExp(`export \\* from ['"]\\S*${name}['"]`).test(src)||!src.includes(name)||(!id.endsWith(".vue")&&isDefaultExport&&(s.replace("export default ","const _sfc_main = "),s.append(`
|
|
2
2
|
export default _sfc_main;`)),s.append(`
|
|
3
|
-
;${name}.__docgenInfo = ${JSON.stringify(meta)}`))}),{code:s.toString(),map:s.generateMap({hires:!0,source:id})}}catch{return}}}}async function
|
|
3
|
+
;${name}.__docgenInfo = ${JSON.stringify(meta)}`))}),{code:s.toString(),map:s.generateMap({hires:!0,source:id})}}catch{return}}}}async function createCheckerWithWorkaround(){let checkerOptions={forceUseTs:!0,noDeclarations:!0,printer:{newLine:1}},projectRoot=getProjectRoot(),projectTsConfigPath=import_path.default.join(projectRoot,"tsconfig.json"),defaultChecker=(0,import_vue_component_meta.createCheckerByJson)(projectRoot,{include:["**/*"]},checkerOptions);return await fileExists(projectTsConfigPath)?(await getTsConfigReferences(projectTsConfigPath)).length>0?defaultChecker:(0,import_vue_component_meta.createChecker)(projectTsConfigPath,checkerOptions):defaultChecker}function getProjectRoot(){let projectRoot=(0,import_find_package_json.default)().next().value?.path??"",currentFileDir=import_path.default.dirname(__filename),relativePathToProjectRoot=import_path.default.relative(currentFileDir,projectRoot);return import_path.default.resolve(currentFileDir,relativePathToProjectRoot)}function getFilenameWithoutExtension(filename){return import_path.default.parse(filename).name}function lowercaseFirstLetter(string){return string.charAt(0).toLowerCase()+string.slice(1)}async function fileExists(fullPath){try{return await import_promises.default.stat(fullPath),!0}catch{return!1}}async function applyTempFixForEventDescriptions(filename,componentMeta){if(!componentMeta.some(meta=>meta.events.length))return componentMeta;try{let parsedComponentDocs=await(0,import_vue_docgen_api.parseMulti)(filename);componentMeta.map((meta,index)=>{let eventsWithDescription=parsedComponentDocs[index].events;return!meta.events.length||!eventsWithDescription?.length||(meta.events=meta.events.map(event=>{let description=eventsWithDescription.find(i=>i.name===event.name)?.description;return description&&(event.description=description),event})),meta})}catch{}return componentMeta}async function getTsConfigReferences(tsConfigPath){try{let content=JSON.parse(await import_promises.default.readFile(tsConfigPath,"utf-8"));return!("references"in content)||!Array.isArray(content.references)?[]:content.references}catch{return[]}}var import_magic_string2=__toESM(require("magic-string")),import_vue_docgen_api2=require("vue-docgen-api");async function vueDocgen(){let{createFilter}=await import("vite"),filter=createFilter(/\.(vue)$/);return{name:"storybook:vue-docgen-plugin",async transform(src,id){if(!filter(id))return;let metaData=await(0,import_vue_docgen_api2.parse)(id),s=new import_magic_string2.default(src);return s.append(`;_sfc_main.__docgenInfo = ${JSON.stringify(metaData)}`),{code:s.toString(),map:s.generateMap({hires:!0,source:id})}}}}var getAbsolutePath=input=>(0,import_path2.dirname)(require.resolve((0,import_path2.join)(input,"package.json"))),core={builder:getAbsolutePath("@storybook/builder-vite"),renderer:getAbsolutePath("@storybook/vue3")},viteFinal=async(config,options)=>{let plugins=[],framework=await options.presets.apply("framework");((typeof framework=="string"?{}:framework.options??{}).docgen??"vue-docgen-api")==="vue-component-meta"?plugins.push(await vueComponentMeta()):plugins.push(await vueDocgen());let{mergeConfig}=await import("vite");return mergeConfig(config,{plugins,resolve:{alias:{vue:"vue/dist/vue.esm-bundler.js"}}})};0&&(module.exports={core,viteFinal});
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@storybook/vue3-vite",
|
|
3
|
-
"version": "8.0.
|
|
3
|
+
"version": "8.0.5",
|
|
4
4
|
"description": "Storybook for Vue3 and Vite: Develop Vue3 components in isolation with Hot Reloading.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"storybook"
|
|
@@ -47,13 +47,13 @@
|
|
|
47
47
|
"prep": "node --loader ../../../scripts/node_modules/esbuild-register/loader.js -r ../../../scripts/node_modules/esbuild-register/register.js ../../../scripts/prepare/bundle.ts"
|
|
48
48
|
},
|
|
49
49
|
"dependencies": {
|
|
50
|
-
"@storybook/builder-vite": "8.0.
|
|
51
|
-
"@storybook/core-server": "8.0.
|
|
52
|
-
"@storybook/vue3": "8.0.
|
|
50
|
+
"@storybook/builder-vite": "8.0.5",
|
|
51
|
+
"@storybook/core-server": "8.0.5",
|
|
52
|
+
"@storybook/vue3": "8.0.5",
|
|
53
53
|
"find-package-json": "^1.2.0",
|
|
54
54
|
"magic-string": "^0.30.0",
|
|
55
55
|
"typescript": "^5.0.0",
|
|
56
|
-
"vue-component-meta": "^
|
|
56
|
+
"vue-component-meta": "^2.0.7",
|
|
57
57
|
"vue-docgen-api": "^4.75.1"
|
|
58
58
|
},
|
|
59
59
|
"devDependencies": {
|