From 34f2e61ff3dbde18d2141ad3a197ef0b5e3a17ff Mon Sep 17 00:00:00 2001 From: Amit Sharma <coutamit.s19@gmail.com> Date: Thu, 9 Mar 2023 12:31:07 +0000 Subject: [PATCH] Added env based odk from files --- .../src/components/GenericForm/index.js | 19 +++++++----- .../components/GenericForm/index.module.css | 30 ++++++++++++++++++- apps/wrapper/src/workflow_first.json | 6 ++-- packages/form-manager/src/app.controller.ts | 8 ++--- 4 files changed, 48 insertions(+), 15 deletions(-) diff --git a/apps/wrapper/src/components/GenericForm/index.js b/apps/wrapper/src/components/GenericForm/index.js index 122b8ee..025013c 100644 --- a/apps/wrapper/src/components/GenericForm/index.js +++ b/apps/wrapper/src/components/GenericForm/index.js @@ -1,6 +1,8 @@ import React, { useState, useEffect } from 'react'; import styles from './index.module.css'; +const GITPOD_URL = process.env.GITPOD_WORKSPACE_URL + const GenericForm = (props) => { const { selectedFlow } = props; const formSpec = require(`../../${selectedFlow.config}`); @@ -12,21 +14,21 @@ const GenericForm = (props) => { const getFormURI = (form, ofsd, prefillSpec) => { console.log(form, ofsd, prefillSpec); - return encodeURIComponent(`https://enketo-manager-ratings-tech.samagra.io/?form=${form}&onFormSuccessData=${encodeFunction(ofsd)}&prefillSpec=${encodeFunction(prefillSpec)}`); + return encodeURIComponent(`${GITPOD_URL.slice(0, GITPOD_URL.indexOf('/') + 2) + "3006-" + GITPOD_URL.slice(GITPOD_URL.indexOf('/') + 2)}/prefill?form=${form}&onFormSuccessData=${encodeFunction(ofsd)}&prefillSpec=${encodeFunction(prefillSpec)}`); } - const startingForm = formSpec.start; + const startingForm = formSpec.startingForm; const [formId, setFormId] = useState(startingForm); const [encodedFormSpec, setEncodedFormSpec] = useState(encodeURI(JSON.stringify(formSpec.forms[formId]))); const [onFormSuccessData, setOnFormSuccessData] = useState(undefined); const [onFormFailureData, setOnFormFailureData] = useState(undefined); - const [encodedFormURI, setEncodedFormURI] = useState(getFormURI(formId, formSpec.forms[formId].onSuccess, formSpec.forms[formId].prefill)); + const [encodedFormURI, setEncodedFormURI] = useState(getFormURI(formId, formSpec.forms[formId].onFormSuccess, formSpec.forms[formId].prefill)); useEffect(() => { // Manage onNext window.addEventListener('message', function (e) { const data = e.data; - + try { /* message = { nextForm: "formID", @@ -54,11 +56,14 @@ const GenericForm = (props) => { return ( <div className={styles.container}> - <div>ODK FORM</div> + <div className={styles.header}> + <div>Go back</div> + <div>{selectedFlow.name}</div> + </div> <iframe title='current-form' - style={{ height: "100vh", width: "100vw" }} + className={styles.odkForm} src={ - `http://localhost:8005/preview?formSpec=${encodedFormSpec}&xform=${encodedFormURI}` + `${GITPOD_URL.slice(0, GITPOD_URL.indexOf('/') + 2) + "8065-" + GITPOD_URL.slice(GITPOD_URL.indexOf('/') + 2)}/preview?formSpec=${encodedFormSpec}&xform=${encodedFormURI}` } /> </div> diff --git a/apps/wrapper/src/components/GenericForm/index.module.css b/apps/wrapper/src/components/GenericForm/index.module.css index cc1237d..57d95a0 100644 --- a/apps/wrapper/src/components/GenericForm/index.module.css +++ b/apps/wrapper/src/components/GenericForm/index.module.css @@ -1,3 +1,31 @@ .container { - + height: 100vh; + display: flex; + flex-direction: column; + gap: 1rem; + align-items: center; + width: 40vw; + padding-bottom: 2rem; +} + +.header { + display: flex; + flex-direction: row; + width: 100%; + justify-content: space-between; +} + +.header:nth-child(1) { + font-size: 1rem; + color: #ffc119; +} + +.header:nth-child(2) { + font-size: 3rem; + color: #ffc119; +} + +.odkForm { + height: 90%; + width: 100%; } \ No newline at end of file diff --git a/apps/wrapper/src/workflow_first.json b/apps/wrapper/src/workflow_first.json index 23cf8cc..064ced6 100644 --- a/apps/wrapper/src/workflow_first.json +++ b/apps/wrapper/src/workflow_first.json @@ -1,9 +1,9 @@ { "forms": { - "test": { + "nursing": { "skipOnSuccessMessage": true, "submissionURL": "http://esamwad.samagra.io/api/v4/form/submit", - "name": "Test Form", + "name": "Nursing Test Form", "isSuccess": "async (formData) => { console.log('From isSuccess', formData.getElementsByTagName('reg_no')[0].textContent); return formData.getElementsByTagName('reg_no')[0].textContent === 'registration123'; }", "messageOnFailure": "Form submission failed", "messageOnSuccess": "Form submitted successfully or Maybe you are already registered", @@ -44,6 +44,6 @@ } } }, - "startingForm": "test", + "startingForm": "nursing", "metaData": {} } \ No newline at end of file diff --git a/packages/form-manager/src/app.controller.ts b/packages/form-manager/src/app.controller.ts index 6885700..b88643e 100644 --- a/packages/form-manager/src/app.controller.ts +++ b/packages/form-manager/src/app.controller.ts @@ -129,10 +129,10 @@ export class AppController { } }; - @Get() - getHello(): string { - return this.appService.getHello(); - } + // @Get() + // getHello(): string { + // return this.appService.getHello(); + // } @Post('prefill') getPrefill(@Body() prefillDto: PrefillDto): string { -- GitLab