mirror of
https://github.com/carbon-design-system/carbon-components-svelte.git
synced 2025-09-15 10:21:05 +00:00
docs: add component API information
This commit is contained in:
parent
0472c1ad23
commit
0d0d35e715
36 changed files with 18462 additions and 5 deletions
29
scripts/rollup/generate-public-api.js
Normal file
29
scripts/rollup/generate-public-api.js
Normal file
|
@ -0,0 +1,29 @@
|
|||
/**
|
||||
* Use library component metadata to generate component documentation in JSON format.
|
||||
* @param {Map<string, { component: { exported_props: Map<string, any>; slots: Map<string, any>; } typedefs: {name: string; type: string;}[] }>} components
|
||||
* @param {Map<string, string[]>} groups
|
||||
* @param {{name: string; version: string; homepage: string;}} pkg
|
||||
*/
|
||||
export function generatePublicAPI(components, groups, pkg) {
|
||||
const code = {
|
||||
version: pkg.version,
|
||||
components: {},
|
||||
};
|
||||
|
||||
components.forEach((component, moduleName) => {
|
||||
const props = Array.from(component.component.exported_props);
|
||||
const slots = Array.from(component.component.slots);
|
||||
const forwarded_events = Array.from(component.component.forwarded_events);
|
||||
const dispatched_events = Array.from(component.component.dispatched_events);
|
||||
|
||||
code.components[moduleName] = {
|
||||
moduleName,
|
||||
props,
|
||||
slots,
|
||||
forwarded_events,
|
||||
dispatched_events,
|
||||
};
|
||||
});
|
||||
|
||||
return { code };
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue