improve code for debuggin and changee template rendering of dev functions

pull/3542/head
Defi Boy 5 years ago committed by Joseph Izang
parent 9a511f4894
commit f51d015db0
  1. 19
      src/utils/template.ts
  2. 28
      src/utils/utils.test.ts
  3. 28
      src/utils/utils.ts

@ -62,12 +62,13 @@ export const template = (
${functions ${functions
.map( .map(
(item) => ` (item) => `
<h6>${item.name} - ${item.type}</h6>
<hr> <hr>
${renderParameterDocumentation(item.inputs)} <h6>${item.name} - ${item.type} </h6>
${getMethodDetails(item.devdoc)} ${getMethodDetails(item.devdoc)}
${renderParameterDocumentation(item.inputs)}
<p>Returns:</p> <p>Returns:</p>
${renderParameterDocumentation(item.outputs)} ${renderParameterDocumentation(item.outputs)}
@ -131,12 +132,22 @@ export const renderParameterDocumentation = (
}`; }`;
export const getMethodDetails = (devMethod?: Partial<MethodDoc>) => { export const getMethodDetails = (devMethod?: Partial<MethodDoc>) => {
return !devMethod const finalResult = !devMethod
? "<p><strong>**Add Documentation for the method here**</strong></p>" ? "<p><strong>**Add Documentation for the method here**</strong></p>"
: Object.keys(devMethod) : Object.keys(devMethod)
.filter((key) => key !== "params") .filter((key) => key !== "params")
.map((key) => { .map((key) => {
return (devMethodDocTemplate as any)[key]((devMethod as any)[key]); const funcToGetTemplate = (devMethodDocTemplate as any)[key];
if (!funcToGetTemplate) {
return ''
}
const funcParameter = (devMethod as any)[key]
const result = funcToGetTemplate(funcParameter)
return result
}) })
.join("\n"); .join("\n");
console.log('finalResult', finalResult)
return finalResult
}; };

File diff suppressed because one or more lines are too long

@ -65,25 +65,23 @@ export const getContractDoc = (name: string, contract: CompiledContract) => {
} }
}); });
return template(name, contractDoc, functionsDocumentation); // console.log("contractDoc", contractDoc)
}; // console.log("functionsDocumentation", functionsDocumentation)
export const getContractDocumentation = (contract: CompiledContract) => { try {
const methods: MethodsDocumentation = {}; const finalResult = template(name, contractDoc, functionsDocumentation);
return finalResult
Object.keys(contract.userdoc.methods).forEach((item) => { } catch (error) {
if (contract.devdoc.methods[item]) { console.log("ERROR", error)
const finalResult = { return ''
...contract.userdoc.methods[item],
...contract.devdoc.methods[item],
};
methods[item] = finalResult;
} else {
methods[item] = contract.userdoc.methods[item];
} }
});
const contractDoc = { ...contract.userdoc, ...contract.devdoc, methods }; };
export const getContractDocumentation = (contract: CompiledContract) => {
const methods = { ...contract.userdoc.methods, ...contract.devdoc.methods }
const contractDoc = { ...contract.userdoc, ...contract.devdoc, ...methods };
return contractDoc; return contractDoc;
}; };

Loading…
Cancel
Save