diff --git a/packages/form-manager/src/app.service.ts b/packages/form-manager/src/app.service.ts index a2a29cf4a1ce1e63faa6dda94f2bada1193898e5..c32b89e7decdc5ea58d21844d11e744185fc3a89 100644 --- a/packages/form-manager/src/app.service.ts +++ b/packages/form-manager/src/app.service.ts @@ -63,10 +63,11 @@ export class AppService { }*/ for (const key in prefillSpec) { if (prefillSpec.hasOwnProperty(key)) { - const element = instance.getElementsByTagName(key)[0]; + const key_arr = key.split('_*_'); + const element = this.findElementRecursively(0, key_arr, instance); if (element) { console.log(prefillSpec[key]); - console.log(eval(prefillSpec[key])); + // console.log(eval(prefillSpec[key])); element.textContent = eval(prefillSpec[key]); } } @@ -74,6 +75,12 @@ export class AppService { return doc.toString(); } + findElementRecursively(start: number, key_arr: any, instance: any) { + if (!instance) return null; + if (!key_arr[start + 1]) return instance.getElementsByTagName(key_arr[start])?.[0] + return this.findElementRecursively(start + 1, key_arr, instance.getElementsByTagName(key_arr[start])?.[0]) + } + prefillFormXML(form: string, onFormSuccessData: any, prefillSpec: any): string { console.log("MAI YAHAN AA GAYA"); const formFilePath = join(__dirname, `forms/${form}.xml`);