chore: create workspace in packages

This commit is contained in:
Liam DeBeasi
2024-03-08 01:37:39 +00:00
parent 9d27d7cc21
commit b703b7a724
7731 changed files with 15135 additions and 13628 deletions

View File

@ -0,0 +1,43 @@
const fs = require('fs');
function apiSpecGenerator(opts) {
return {
type: 'docs-custom',
generator: (docsData) => {
const content = [];
docsData.components.forEach(cmp => generateComponent(cmp, content));
const contentStr = content.join('\n');
return new Promise(resolve => {
fs.writeFile(opts.file, contentStr, () => {
resolve();
});
});
}
};
}
function generateComponent(component, content) {
content.push('');
content.push(`${component.tag},${component.encapsulation}`);
component.props.forEach(prop => {
content.push(`${component.tag},prop,${prop.name},${prop.type},${prop.default},${prop.required},${prop.reflectToAttr}`);
});
component.methods.forEach(prop => {
content.push(`${component.tag},method,${prop.name},${prop.signature}`);
});
component.events.forEach(prop => {
content.push(`${component.tag},event,${prop.event},${prop.detail},${prop.bubbles}`);
});
component.styles.forEach(prop => {
content.push(`${component.tag},css-prop,${prop.name}`);
});
component.parts.forEach(part => {
content.push(`${component.tag},part,${part.name}`);
});
}
exports.apiSpecGenerator = apiSpecGenerator;