mirror of
https://github.com/primefaces/primevue.git
synced 2025-05-10 01:12:37 +00:00
Apidoc services completed
This commit is contained in:
parent
1ddebd977c
commit
e2747c5ae8
13 changed files with 394 additions and 246 deletions
|
@ -48,18 +48,29 @@ export default {
|
|||
docName: docName
|
||||
};
|
||||
|
||||
const values = APIDocs[moduleName].interfaces.values;
|
||||
const values = APIDocs[moduleName]?.interfaces?.values;
|
||||
const componentValues = APIDocs[moduleName]?.components;
|
||||
const modelValues = APIDocs[moduleName]?.model;
|
||||
let props = null;
|
||||
let emits = null;
|
||||
let slots = null;
|
||||
let events = null;
|
||||
let options = null;
|
||||
let interfaces = null;
|
||||
|
||||
if (values) {
|
||||
props = values[`${docName}Props`];
|
||||
emits = values[`${docName}Emits`];
|
||||
slots = values[`${docName}Slots`];
|
||||
events = this.findEvents(values);
|
||||
options = this.findOptions(values, docName); // MenuItem && ConfirmationOptions
|
||||
interfaces = this.findOtherInterfaces(values, docName);
|
||||
}
|
||||
|
||||
const props = values[`${docName}Props`];
|
||||
const emits = values[`${docName}Emits`];
|
||||
const slots = values[`${docName}Slots`];
|
||||
const methods = componentValues ? componentValues['default'].methods : null;
|
||||
const types = APIDocs[moduleName]['types'];
|
||||
let events = this.findEvents(values);
|
||||
const interfaces = this.findOtherInterfaces(values, docName);
|
||||
|
||||
const options = this.findOptions(values, docName); // Only for MenuItem
|
||||
const services = modelValues; // (TerminalService && ConfirmationService && ToastService)
|
||||
|
||||
if (props && props.props.length) {
|
||||
newDoc.children.push({
|
||||
|
@ -101,7 +112,7 @@ export default {
|
|||
});
|
||||
}
|
||||
|
||||
if (events && events.length) {
|
||||
if (events && events.length > 0) {
|
||||
newDoc.children.push({
|
||||
id: `api.${moduleName}.events`,
|
||||
label: 'Events',
|
||||
|
@ -144,6 +155,17 @@ export default {
|
|||
});
|
||||
}
|
||||
|
||||
if (services) {
|
||||
console.log(services);
|
||||
newDoc.children.push({
|
||||
id: `api.${moduleName}.services`,
|
||||
label: 'Services',
|
||||
component: DocApiTable,
|
||||
data: this.setServicesData(moduleName, services),
|
||||
description: Object.values(services)[0].description || null
|
||||
});
|
||||
}
|
||||
|
||||
newDocs.push(newDoc);
|
||||
}
|
||||
|
||||
|
@ -257,6 +279,27 @@ export default {
|
|||
|
||||
return data;
|
||||
},
|
||||
setServicesData(moduleName, services) {
|
||||
const data = [];
|
||||
|
||||
for (const key of Object.keys(services)) {
|
||||
const value = services[key];
|
||||
|
||||
value?.methods.values.forEach((method) => {
|
||||
data.push({
|
||||
name: method.name,
|
||||
parameters: {
|
||||
name: method.parameters[0]?.name,
|
||||
type: method.parameters[0]?.type
|
||||
},
|
||||
returnType: method.returnType,
|
||||
description: method.description
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
return data;
|
||||
},
|
||||
findEvents(values) {
|
||||
const events = [];
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue