@stencil/storybook-plugin 0.5.2 → 0.5.3

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.
@@ -29,13 +29,20 @@ const inferSBType = (prop) => {
29
29
  required: prop.required
30
30
  };
31
31
  };
32
+ const mapPropOptions = (prop) => prop.values.filter((value) => ["string", "number"].includes(value.type)).map(({ value }) => value);
32
33
  const inferControlType = (prop) => {
33
34
  switch (prop.type) {
34
35
  case "string": return { type: "text" };
35
36
  case "number": return { type: "number" };
36
37
  case "boolean": return { type: "boolean" };
37
38
  case "Date": return { type: "date" };
38
- default: return { type: "object" };
39
+ case "function":
40
+ case "void": return null;
41
+ default:
42
+ const values = mapPropOptions(prop);
43
+ if (values.length === 0) return { type: "object" };
44
+ if (values.length < 5) return { type: "radio" };
45
+ return { type: "select" };
39
46
  }
40
47
  };
41
48
 
@@ -90,6 +97,7 @@ const mapProps = (props) => props.reduce((acc, prop) => {
90
97
  type: { summary: prop.complexType?.original },
91
98
  defaultValue: { summary: prop.default }
92
99
  },
100
+ options: mapPropOptions(prop),
93
101
  type: inferSBType(prop)
94
102
  };
95
103
  return acc;
@@ -1 +1 @@
1
- {"version":3,"file":"entry-preview-argtypes.cjs","names":["prop: JsonDocsProp","scalarTypes: SBScalarType['name'][]","data: T[]","category: string","methods: JsonDocsMethod[]","events: JsonDocsEvent[]","chr: string","props: JsonDocsProp[]","tagName: string","manifest: JsonDocs","customElements: JsonDocs","component: any","argTypesEnhancers: ArgTypesEnhancer<StencilRenderer<unknown>>[]","enhanceArgTypes"],"sources":["../src/docs/infer-type.ts","../src/docs/custom-elements.ts","../src/entry-preview-argtypes.ts"],"sourcesContent":["import type { JsonDocsProp } from '@stencil/core/internal';\nimport type { SBType, SBScalarType, InputType } from 'storybook/internal/types';\n\nexport const inferSBType = (prop: JsonDocsProp): SBType => {\n const scalarTypes: SBScalarType['name'][] = ['string', 'number', 'boolean', 'symbol'];\n if (prop.type.toLowerCase() in scalarTypes) {\n return { name: prop.type.toLowerCase(), raw: prop.type, required: prop.required } as SBScalarType;\n }\n\n if (/^\\(.*\\)\\s*=>\\s*.*$/.test(prop.type)) {\n return { name: 'function', raw: prop.type, required: prop.required };\n }\n\n return { name: 'other', value: prop.type, raw: prop.type, required: prop.required };\n};\n\nexport const inferControlType = (prop: JsonDocsProp): InputType['control'] => {\n switch (prop.type) {\n case 'string':\n return { type: 'text' };\n case 'number':\n return { type: 'number' };\n case 'boolean':\n return { type: 'boolean' };\n case 'Date':\n return { type: 'date' };\n default:\n return { type: 'object' };\n }\n};\n","import type {\n JsonDocs,\n JsonDocsEvent,\n JsonDocsMethod,\n JsonDocsPart,\n JsonDocsProp,\n JsonDocsSlot,\n JsonDocsStyle,\n} from '@stencil/core/internal';\nimport { logger } from 'storybook/internal/client-logger';\nimport type { ArgTypes } from 'storybook/internal/types';\n\nimport { getCustomElements, isValidComponent, isValidMetaData } from '..';\nimport { inferControlType, inferSBType } from './infer-type';\n\nconst mapData = <T extends JsonDocsPart>(data: T[], category: string): ArgTypes =>\n data.reduce<ArgTypes>((acc, item) => {\n acc[item.name] = {\n name: item.name,\n description: item.docs,\n control: false,\n table: {\n category,\n },\n };\n return acc;\n }, {});\n\nconst mapMethods = (methods: JsonDocsMethod[]): ArgTypes =>\n methods.reduce<ArgTypes>((acc, method) => {\n acc[method.name] = {\n name: method.name,\n description: method.docs,\n control: null,\n type: { name: 'function' },\n table: {\n category: 'methods',\n type: { summary: method.signature },\n },\n };\n return acc;\n }, {});\n\nconst mapEvent = (events: JsonDocsEvent[]): ArgTypes =>\n events.reduce<ArgTypes>((acc, event) => {\n let name = event.event\n .replace(/(-|_|:|\\.|\\s)+(.)?/g, (_match, _separator, chr: string) => {\n return chr ? chr.toUpperCase() : '';\n })\n .replace(/^([A-Z])/, (match) => match.toLowerCase());\n\n name = `on${name.charAt(0).toUpperCase() + name.slice(1)}`;\n\n acc[name] = {\n name,\n description: event.docs,\n control: null,\n table: {\n category: 'events',\n type: { summary: event.detail },\n },\n type: { name: 'function' },\n };\n\n return acc;\n }, {});\n\nconst mapProps = (props: JsonDocsProp[]): ArgTypes =>\n props.reduce<ArgTypes>((acc, prop) => {\n acc[prop.name] = {\n name: prop.attr || prop.name,\n description: prop.docs,\n control: inferControlType(prop),\n table: {\n category: 'properties',\n type: { summary: prop.complexType?.original },\n defaultValue: { summary: prop.default },\n },\n type: inferSBType(prop),\n };\n\n return acc;\n }, {});\n\nconst getMetaData = (tagName: string, manifest: JsonDocs) => {\n if (!isValidComponent(tagName) || !isValidMetaData(manifest)) {\n return null;\n }\n const metaData = manifest.components.find((component) => component.tag.toUpperCase() === tagName.toUpperCase());\n if (!metaData) {\n logger.warn(`Component not found in custom-elements.json: ${tagName}`);\n }\n return metaData;\n};\n\nexport const extractArgTypesFromElements = (tagName: string, customElements: JsonDocs) => {\n const metaData = getMetaData(tagName, customElements);\n return (\n metaData && {\n ...mapProps(metaData.props),\n ...mapEvent(metaData.events),\n ...mapMethods(metaData.methods),\n ...mapData<JsonDocsSlot>(metaData.slots, 'slots'),\n ...mapData<JsonDocsPart>(metaData.parts, 'parts'),\n ...mapData<JsonDocsStyle>(metaData.styles, 'styles'),\n }\n );\n};\n\nexport const extractArgTypes = (component: any) => {\n const cem = getCustomElements();\n // Handle both string references (lazy loading) and class references (auto-define)\n const tagName = typeof component === 'string' ? component : component?.is;\n return extractArgTypesFromElements(tagName, cem);\n};\n\nexport const extractComponentDescription = (component: any) => {\n // Handle both string references (lazy loading) and class references (auto-define)\n const tagName = typeof component === 'string' ? component : component?.is;\n const metaData = getMetaData(tagName, getCustomElements());\n return metaData && metaData.docs;\n};\n","import { enhanceArgTypes } from 'storybook/internal/docs-tools';\nimport type { ArgTypesEnhancer } from 'storybook/internal/types';\n\nimport { extractArgTypes, extractComponentDescription } from './docs/custom-elements';\nimport type { StencilRenderer } from './types';\n\nexport const parameters = {\n docs: {\n extractArgTypes,\n extractComponentDescription,\n },\n};\n\nexport const argTypesEnhancers: ArgTypesEnhancer<StencilRenderer<unknown>>[] = [enhanceArgTypes];"],"mappings":"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"}
1
+ {"version":3,"file":"entry-preview-argtypes.cjs","names":["prop: JsonDocsProp","scalarTypes: SBScalarType['name'][]","data: T[]","category: string","methods: JsonDocsMethod[]","events: JsonDocsEvent[]","chr: string","props: JsonDocsProp[]","tagName: string","manifest: JsonDocs","customElements: JsonDocs","component: any","argTypesEnhancers: ArgTypesEnhancer<StencilRenderer<unknown>>[]","enhanceArgTypes"],"sources":["../src/docs/infer-type.ts","../src/docs/custom-elements.ts","../src/entry-preview-argtypes.ts"],"sourcesContent":["import type { JsonDocsProp } from '@stencil/core/internal';\nimport type { InputType, SBScalarType, SBType } from 'storybook/internal/types';\n\nexport const inferSBType = (prop: JsonDocsProp): SBType => {\n const scalarTypes: SBScalarType['name'][] = ['string', 'number', 'boolean', 'symbol'];\n if (prop.type.toLowerCase() in scalarTypes) {\n return { name: prop.type.toLowerCase(), raw: prop.type, required: prop.required } as SBScalarType;\n }\n\n if (/^\\(.*\\)\\s*=>\\s*.*$/.test(prop.type)) {\n return { name: 'function', raw: prop.type, required: prop.required };\n }\n\n return { name: 'other', value: prop.type, raw: prop.type, required: prop.required };\n};\n\nexport const mapPropOptions = (prop: JsonDocsProp) =>\n prop.values.filter((value) => ['string', 'number'].includes(value.type)).map(({ value }) => value);\n\nexport const inferControlType = (prop: JsonDocsProp): InputType['control'] => {\n switch (prop.type) {\n case 'string':\n return { type: 'text' };\n case 'number':\n return { type: 'number' };\n case 'boolean':\n return { type: 'boolean' };\n case 'Date':\n return { type: 'date' };\n case 'function':\n case 'void':\n return null;\n default:\n const values = mapPropOptions(prop);\n if (values.length === 0) {\n return { type: 'object' };\n }\n if (values.length < 5) {\n return { type: 'radio' };\n }\n return { type: 'select' };\n }\n};\n","import type {\n JsonDocs,\n JsonDocsEvent,\n JsonDocsMethod,\n JsonDocsPart,\n JsonDocsProp,\n JsonDocsSlot,\n JsonDocsStyle,\n} from '@stencil/core/internal';\nimport { logger } from 'storybook/internal/client-logger';\nimport type { ArgTypes } from 'storybook/internal/types';\n\nimport { getCustomElements, isValidComponent, isValidMetaData } from '..';\nimport { inferControlType, inferSBType, mapPropOptions } from './infer-type';\n\nconst mapData = <T extends JsonDocsPart>(data: T[], category: string): ArgTypes =>\n data.reduce<ArgTypes>((acc, item) => {\n acc[item.name] = {\n name: item.name,\n description: item.docs,\n control: false,\n table: {\n category,\n },\n };\n return acc;\n }, {});\n\nconst mapMethods = (methods: JsonDocsMethod[]): ArgTypes =>\n methods.reduce<ArgTypes>((acc, method) => {\n acc[method.name] = {\n name: method.name,\n description: method.docs,\n control: null,\n type: { name: 'function' },\n table: {\n category: 'methods',\n type: { summary: method.signature },\n },\n };\n return acc;\n }, {});\n\nconst mapEvent = (events: JsonDocsEvent[]): ArgTypes =>\n events.reduce<ArgTypes>((acc, event) => {\n let name = event.event\n .replace(/(-|_|:|\\.|\\s)+(.)?/g, (_match, _separator, chr: string) => {\n return chr ? chr.toUpperCase() : '';\n })\n .replace(/^([A-Z])/, (match) => match.toLowerCase());\n\n name = `on${name.charAt(0).toUpperCase() + name.slice(1)}`;\n\n acc[name] = {\n name,\n description: event.docs,\n control: null,\n table: {\n category: 'events',\n type: { summary: event.detail },\n },\n type: { name: 'function' },\n };\n\n return acc;\n }, {});\n\nconst mapProps = (props: JsonDocsProp[]): ArgTypes =>\n props.reduce<ArgTypes>((acc, prop) => {\n acc[prop.name] = {\n name: prop.attr || prop.name,\n description: prop.docs,\n control: inferControlType(prop),\n table: {\n category: 'properties',\n type: { summary: prop.complexType?.original },\n defaultValue: { summary: prop.default },\n },\n options: mapPropOptions(prop),\n type: inferSBType(prop),\n };\n\n return acc;\n }, {});\n\nconst getMetaData = (tagName: string, manifest: JsonDocs) => {\n if (!isValidComponent(tagName) || !isValidMetaData(manifest)) {\n return null;\n }\n const metaData = manifest.components.find((component) => component.tag.toUpperCase() === tagName.toUpperCase());\n if (!metaData) {\n logger.warn(`Component not found in custom-elements.json: ${tagName}`);\n }\n return metaData;\n};\n\nexport const extractArgTypesFromElements = (tagName: string, customElements: JsonDocs) => {\n const metaData = getMetaData(tagName, customElements);\n return (\n metaData && {\n ...mapProps(metaData.props),\n ...mapEvent(metaData.events),\n ...mapMethods(metaData.methods),\n ...mapData<JsonDocsSlot>(metaData.slots, 'slots'),\n ...mapData<JsonDocsPart>(metaData.parts, 'parts'),\n ...mapData<JsonDocsStyle>(metaData.styles, 'styles'),\n }\n );\n};\n\nexport const extractArgTypes = (component: any) => {\n const cem = getCustomElements();\n // Handle both string references (lazy loading) and class references (auto-define)\n const tagName = typeof component === 'string' ? component : component?.is;\n return extractArgTypesFromElements(tagName, cem);\n};\n\nexport const extractComponentDescription = (component: any) => {\n // Handle both string references (lazy loading) and class references (auto-define)\n const tagName = typeof component === 'string' ? component : component?.is;\n const metaData = getMetaData(tagName, getCustomElements());\n return metaData && metaData.docs;\n};\n","import { enhanceArgTypes } from 'storybook/internal/docs-tools';\nimport type { ArgTypesEnhancer } from 'storybook/internal/types';\n\nimport { extractArgTypes, extractComponentDescription } from './docs/custom-elements';\nimport type { StencilRenderer } from './types';\n\nexport const parameters = {\n docs: {\n extractArgTypes,\n extractComponentDescription,\n },\n};\n\nexport const argTypesEnhancers: ArgTypesEnhancer<StencilRenderer<unknown>>[] = [enhanceArgTypes];"],"mappings":"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"}
@@ -29,13 +29,20 @@ const inferSBType = (prop) => {
29
29
  required: prop.required
30
30
  };
31
31
  };
32
+ const mapPropOptions = (prop) => prop.values.filter((value) => ["string", "number"].includes(value.type)).map(({ value }) => value);
32
33
  const inferControlType = (prop) => {
33
34
  switch (prop.type) {
34
35
  case "string": return { type: "text" };
35
36
  case "number": return { type: "number" };
36
37
  case "boolean": return { type: "boolean" };
37
38
  case "Date": return { type: "date" };
38
- default: return { type: "object" };
39
+ case "function":
40
+ case "void": return null;
41
+ default:
42
+ const values = mapPropOptions(prop);
43
+ if (values.length === 0) return { type: "object" };
44
+ if (values.length < 5) return { type: "radio" };
45
+ return { type: "select" };
39
46
  }
40
47
  };
41
48
 
@@ -90,6 +97,7 @@ const mapProps = (props) => props.reduce((acc, prop) => {
90
97
  type: { summary: prop.complexType?.original },
91
98
  defaultValue: { summary: prop.default }
92
99
  },
100
+ options: mapPropOptions(prop),
93
101
  type: inferSBType(prop)
94
102
  };
95
103
  return acc;
@@ -1 +1 @@
1
- {"version":3,"file":"entry-preview-argtypes.js","names":["prop: JsonDocsProp","scalarTypes: SBScalarType['name'][]","data: T[]","category: string","methods: JsonDocsMethod[]","events: JsonDocsEvent[]","chr: string","props: JsonDocsProp[]","tagName: string","manifest: JsonDocs","customElements: JsonDocs","component: any","argTypesEnhancers: ArgTypesEnhancer<StencilRenderer<unknown>>[]"],"sources":["../src/docs/infer-type.ts","../src/docs/custom-elements.ts","../src/entry-preview-argtypes.ts"],"sourcesContent":["import type { JsonDocsProp } from '@stencil/core/internal';\nimport type { SBType, SBScalarType, InputType } from 'storybook/internal/types';\n\nexport const inferSBType = (prop: JsonDocsProp): SBType => {\n const scalarTypes: SBScalarType['name'][] = ['string', 'number', 'boolean', 'symbol'];\n if (prop.type.toLowerCase() in scalarTypes) {\n return { name: prop.type.toLowerCase(), raw: prop.type, required: prop.required } as SBScalarType;\n }\n\n if (/^\\(.*\\)\\s*=>\\s*.*$/.test(prop.type)) {\n return { name: 'function', raw: prop.type, required: prop.required };\n }\n\n return { name: 'other', value: prop.type, raw: prop.type, required: prop.required };\n};\n\nexport const inferControlType = (prop: JsonDocsProp): InputType['control'] => {\n switch (prop.type) {\n case 'string':\n return { type: 'text' };\n case 'number':\n return { type: 'number' };\n case 'boolean':\n return { type: 'boolean' };\n case 'Date':\n return { type: 'date' };\n default:\n return { type: 'object' };\n }\n};\n","import type {\n JsonDocs,\n JsonDocsEvent,\n JsonDocsMethod,\n JsonDocsPart,\n JsonDocsProp,\n JsonDocsSlot,\n JsonDocsStyle,\n} from '@stencil/core/internal';\nimport { logger } from 'storybook/internal/client-logger';\nimport type { ArgTypes } from 'storybook/internal/types';\n\nimport { getCustomElements, isValidComponent, isValidMetaData } from '..';\nimport { inferControlType, inferSBType } from './infer-type';\n\nconst mapData = <T extends JsonDocsPart>(data: T[], category: string): ArgTypes =>\n data.reduce<ArgTypes>((acc, item) => {\n acc[item.name] = {\n name: item.name,\n description: item.docs,\n control: false,\n table: {\n category,\n },\n };\n return acc;\n }, {});\n\nconst mapMethods = (methods: JsonDocsMethod[]): ArgTypes =>\n methods.reduce<ArgTypes>((acc, method) => {\n acc[method.name] = {\n name: method.name,\n description: method.docs,\n control: null,\n type: { name: 'function' },\n table: {\n category: 'methods',\n type: { summary: method.signature },\n },\n };\n return acc;\n }, {});\n\nconst mapEvent = (events: JsonDocsEvent[]): ArgTypes =>\n events.reduce<ArgTypes>((acc, event) => {\n let name = event.event\n .replace(/(-|_|:|\\.|\\s)+(.)?/g, (_match, _separator, chr: string) => {\n return chr ? chr.toUpperCase() : '';\n })\n .replace(/^([A-Z])/, (match) => match.toLowerCase());\n\n name = `on${name.charAt(0).toUpperCase() + name.slice(1)}`;\n\n acc[name] = {\n name,\n description: event.docs,\n control: null,\n table: {\n category: 'events',\n type: { summary: event.detail },\n },\n type: { name: 'function' },\n };\n\n return acc;\n }, {});\n\nconst mapProps = (props: JsonDocsProp[]): ArgTypes =>\n props.reduce<ArgTypes>((acc, prop) => {\n acc[prop.name] = {\n name: prop.attr || prop.name,\n description: prop.docs,\n control: inferControlType(prop),\n table: {\n category: 'properties',\n type: { summary: prop.complexType?.original },\n defaultValue: { summary: prop.default },\n },\n type: inferSBType(prop),\n };\n\n return acc;\n }, {});\n\nconst getMetaData = (tagName: string, manifest: JsonDocs) => {\n if (!isValidComponent(tagName) || !isValidMetaData(manifest)) {\n return null;\n }\n const metaData = manifest.components.find((component) => component.tag.toUpperCase() === tagName.toUpperCase());\n if (!metaData) {\n logger.warn(`Component not found in custom-elements.json: ${tagName}`);\n }\n return metaData;\n};\n\nexport const extractArgTypesFromElements = (tagName: string, customElements: JsonDocs) => {\n const metaData = getMetaData(tagName, customElements);\n return (\n metaData && {\n ...mapProps(metaData.props),\n ...mapEvent(metaData.events),\n ...mapMethods(metaData.methods),\n ...mapData<JsonDocsSlot>(metaData.slots, 'slots'),\n ...mapData<JsonDocsPart>(metaData.parts, 'parts'),\n ...mapData<JsonDocsStyle>(metaData.styles, 'styles'),\n }\n );\n};\n\nexport const extractArgTypes = (component: any) => {\n const cem = getCustomElements();\n // Handle both string references (lazy loading) and class references (auto-define)\n const tagName = typeof component === 'string' ? component : component?.is;\n return extractArgTypesFromElements(tagName, cem);\n};\n\nexport const extractComponentDescription = (component: any) => {\n // Handle both string references (lazy loading) and class references (auto-define)\n const tagName = typeof component === 'string' ? component : component?.is;\n const metaData = getMetaData(tagName, getCustomElements());\n return metaData && metaData.docs;\n};\n","import { enhanceArgTypes } from 'storybook/internal/docs-tools';\nimport type { ArgTypesEnhancer } from 'storybook/internal/types';\n\nimport { extractArgTypes, extractComponentDescription } from './docs/custom-elements';\nimport type { StencilRenderer } from './types';\n\nexport const parameters = {\n docs: {\n extractArgTypes,\n extractComponentDescription,\n },\n};\n\nexport const argTypesEnhancers: ArgTypesEnhancer<StencilRenderer<unknown>>[] = [enhanceArgTypes];"],"mappings":"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"}
1
+ {"version":3,"file":"entry-preview-argtypes.js","names":["prop: JsonDocsProp","scalarTypes: SBScalarType['name'][]","data: T[]","category: string","methods: JsonDocsMethod[]","events: JsonDocsEvent[]","chr: string","props: JsonDocsProp[]","tagName: string","manifest: JsonDocs","customElements: JsonDocs","component: any","argTypesEnhancers: ArgTypesEnhancer<StencilRenderer<unknown>>[]"],"sources":["../src/docs/infer-type.ts","../src/docs/custom-elements.ts","../src/entry-preview-argtypes.ts"],"sourcesContent":["import type { JsonDocsProp } from '@stencil/core/internal';\nimport type { InputType, SBScalarType, SBType } from 'storybook/internal/types';\n\nexport const inferSBType = (prop: JsonDocsProp): SBType => {\n const scalarTypes: SBScalarType['name'][] = ['string', 'number', 'boolean', 'symbol'];\n if (prop.type.toLowerCase() in scalarTypes) {\n return { name: prop.type.toLowerCase(), raw: prop.type, required: prop.required } as SBScalarType;\n }\n\n if (/^\\(.*\\)\\s*=>\\s*.*$/.test(prop.type)) {\n return { name: 'function', raw: prop.type, required: prop.required };\n }\n\n return { name: 'other', value: prop.type, raw: prop.type, required: prop.required };\n};\n\nexport const mapPropOptions = (prop: JsonDocsProp) =>\n prop.values.filter((value) => ['string', 'number'].includes(value.type)).map(({ value }) => value);\n\nexport const inferControlType = (prop: JsonDocsProp): InputType['control'] => {\n switch (prop.type) {\n case 'string':\n return { type: 'text' };\n case 'number':\n return { type: 'number' };\n case 'boolean':\n return { type: 'boolean' };\n case 'Date':\n return { type: 'date' };\n case 'function':\n case 'void':\n return null;\n default:\n const values = mapPropOptions(prop);\n if (values.length === 0) {\n return { type: 'object' };\n }\n if (values.length < 5) {\n return { type: 'radio' };\n }\n return { type: 'select' };\n }\n};\n","import type {\n JsonDocs,\n JsonDocsEvent,\n JsonDocsMethod,\n JsonDocsPart,\n JsonDocsProp,\n JsonDocsSlot,\n JsonDocsStyle,\n} from '@stencil/core/internal';\nimport { logger } from 'storybook/internal/client-logger';\nimport type { ArgTypes } from 'storybook/internal/types';\n\nimport { getCustomElements, isValidComponent, isValidMetaData } from '..';\nimport { inferControlType, inferSBType, mapPropOptions } from './infer-type';\n\nconst mapData = <T extends JsonDocsPart>(data: T[], category: string): ArgTypes =>\n data.reduce<ArgTypes>((acc, item) => {\n acc[item.name] = {\n name: item.name,\n description: item.docs,\n control: false,\n table: {\n category,\n },\n };\n return acc;\n }, {});\n\nconst mapMethods = (methods: JsonDocsMethod[]): ArgTypes =>\n methods.reduce<ArgTypes>((acc, method) => {\n acc[method.name] = {\n name: method.name,\n description: method.docs,\n control: null,\n type: { name: 'function' },\n table: {\n category: 'methods',\n type: { summary: method.signature },\n },\n };\n return acc;\n }, {});\n\nconst mapEvent = (events: JsonDocsEvent[]): ArgTypes =>\n events.reduce<ArgTypes>((acc, event) => {\n let name = event.event\n .replace(/(-|_|:|\\.|\\s)+(.)?/g, (_match, _separator, chr: string) => {\n return chr ? chr.toUpperCase() : '';\n })\n .replace(/^([A-Z])/, (match) => match.toLowerCase());\n\n name = `on${name.charAt(0).toUpperCase() + name.slice(1)}`;\n\n acc[name] = {\n name,\n description: event.docs,\n control: null,\n table: {\n category: 'events',\n type: { summary: event.detail },\n },\n type: { name: 'function' },\n };\n\n return acc;\n }, {});\n\nconst mapProps = (props: JsonDocsProp[]): ArgTypes =>\n props.reduce<ArgTypes>((acc, prop) => {\n acc[prop.name] = {\n name: prop.attr || prop.name,\n description: prop.docs,\n control: inferControlType(prop),\n table: {\n category: 'properties',\n type: { summary: prop.complexType?.original },\n defaultValue: { summary: prop.default },\n },\n options: mapPropOptions(prop),\n type: inferSBType(prop),\n };\n\n return acc;\n }, {});\n\nconst getMetaData = (tagName: string, manifest: JsonDocs) => {\n if (!isValidComponent(tagName) || !isValidMetaData(manifest)) {\n return null;\n }\n const metaData = manifest.components.find((component) => component.tag.toUpperCase() === tagName.toUpperCase());\n if (!metaData) {\n logger.warn(`Component not found in custom-elements.json: ${tagName}`);\n }\n return metaData;\n};\n\nexport const extractArgTypesFromElements = (tagName: string, customElements: JsonDocs) => {\n const metaData = getMetaData(tagName, customElements);\n return (\n metaData && {\n ...mapProps(metaData.props),\n ...mapEvent(metaData.events),\n ...mapMethods(metaData.methods),\n ...mapData<JsonDocsSlot>(metaData.slots, 'slots'),\n ...mapData<JsonDocsPart>(metaData.parts, 'parts'),\n ...mapData<JsonDocsStyle>(metaData.styles, 'styles'),\n }\n );\n};\n\nexport const extractArgTypes = (component: any) => {\n const cem = getCustomElements();\n // Handle both string references (lazy loading) and class references (auto-define)\n const tagName = typeof component === 'string' ? component : component?.is;\n return extractArgTypesFromElements(tagName, cem);\n};\n\nexport const extractComponentDescription = (component: any) => {\n // Handle both string references (lazy loading) and class references (auto-define)\n const tagName = typeof component === 'string' ? component : component?.is;\n const metaData = getMetaData(tagName, getCustomElements());\n return metaData && metaData.docs;\n};\n","import { enhanceArgTypes } from 'storybook/internal/docs-tools';\nimport type { ArgTypesEnhancer } from 'storybook/internal/types';\n\nimport { extractArgTypes, extractComponentDescription } from './docs/custom-elements';\nimport type { StencilRenderer } from './types';\n\nexport const parameters = {\n docs: {\n extractArgTypes,\n extractComponentDescription,\n },\n};\n\nexport const argTypesEnhancers: ArgTypesEnhancer<StencilRenderer<unknown>>[] = [enhanceArgTypes];"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@stencil/storybook-plugin",
3
- "version": "0.5.2",
3
+ "version": "0.5.3",
4
4
  "description": "Storybook plugin for Stencil",
5
5
  "license": "MIT",
6
6
  "homepage": "https://github.com/stenciljs/storybook",