udp-stencil-component-library 1.0.1 → 1.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/signature-input_4.cjs.entry.js +1 -1
- package/dist/cjs/udp-forms-ui.cjs.entry.js +1 -1
- package/dist/cjs/{utils-QADBqaDE.js → utils-DMhqs00g.js} +7 -7
- package/dist/cjs/utils-DMhqs00g.js.map +1 -0
- package/dist/collection/components/my-component/UI/forms/udp-forms/enums.js +5 -5
- package/dist/collection/components/my-component/UI/forms/udp-forms/enums.js.map +1 -1
- package/dist/components/{p-BD9WLZrE.js → p-C9cEH65u.js} +3 -3
- package/dist/components/{p-BD9WLZrE.js.map → p-C9cEH65u.js.map} +1 -1
- package/dist/components/{p-BGQ__vyk.js → p-PqypuW_Q.js} +7 -7
- package/dist/components/{p-BGQ__vyk.js.map → p-PqypuW_Q.js.map} +1 -1
- package/dist/components/udp-forms-renderer.js +2 -2
- package/dist/components/udp-forms-ui.js +1 -1
- package/dist/components/udp-question.js +1 -1
- package/dist/esm/signature-input_4.entry.js +1 -1
- package/dist/esm/udp-forms-ui.entry.js +1 -1
- package/dist/esm/{utils-DoasjMSi.js → utils-vXSpJxEK.js} +7 -7
- package/dist/esm/utils-vXSpJxEK.js.map +1 -0
- package/dist/stencil-library/{p-2b12f357.entry.js → p-00c1ce44.entry.js} +2 -2
- package/dist/stencil-library/{p-c0086390.entry.js → p-50f67815.entry.js} +2 -2
- package/dist/stencil-library/{p-DoasjMSi.js → p-vXSpJxEK.js} +2 -2
- package/dist/stencil-library/p-vXSpJxEK.js.map +1 -0
- package/dist/stencil-library/stencil-library.esm.js +1 -1
- package/dist/types/components/my-component/UI/forms/udp-forms/enums.d.ts +5 -5
- package/package.json +1 -1
- package/dist/cjs/utils-QADBqaDE.js.map +0 -1
- package/dist/esm/utils-DoasjMSi.js.map +0 -1
- package/dist/stencil-library/p-DoasjMSi.js.map +0 -1
- /package/dist/stencil-library/{p-2b12f357.entry.js.map → p-00c1ce44.entry.js.map} +0 -0
- /package/dist/stencil-library/{p-c0086390.entry.js.map → p-50f67815.entry.js.map} +0 -0
|
@@ -5,7 +5,7 @@ var configService = require('./configService-OX6rz-VE.js');
|
|
|
5
5
|
var axios = require('axios');
|
|
6
6
|
var finalForm = require('final-form');
|
|
7
7
|
var debounce = require('lodash.debounce');
|
|
8
|
-
var utils = require('./utils-
|
|
8
|
+
var utils = require('./utils-DMhqs00g.js');
|
|
9
9
|
|
|
10
10
|
function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
11
11
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var index = require('./index-Bu1pSYrV.js');
|
|
4
|
-
var utils = require('./utils-
|
|
4
|
+
var utils = require('./utils-DMhqs00g.js');
|
|
5
5
|
|
|
6
6
|
const udpFormsRendererCss = ".background{background-color:var(--gray-01)}.item{padding-bottom:var(--spacing-02);}.items{display:flex;flex-direction:column;gap:var(--spacing-05);padding-top:var(--spacing-02);padding-bottom:var(--spacing-02)}.footer{display:flex;flex-direction:row-reverse}.submit{background-color:var(--primary-color);box-sizing:border-box;border:none;color:white;padding:8px 24px;font-size:14px;font-weight:600;cursor:pointer;transition:background-color 0.3s ease;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;min-width:48px;min-height:24px;}.submit:disabled{background-color:var(--gray-05);cursor:default}.submit-card{display:flex;flex-direction:row;justify-content:space-between}.form-content{margin-bottom:var(--spacing-05);background-color:white;padding:16px;display:flex;flex-direction:column;gap:var(--spacing-05)}.form-container{padding-top:var(--spacing-05);padding-bottom:var(--spacing-05)}.center-div{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%)}.finish-button{display:flex;flex-direction:column;justify-content:center}.header{background-color:var(--secondary-color);padding:var(--spacing-05) var(--spacing-05);color:var(--primary-color-contrast, #fff)}.auto-save-status{margin-top:var(--spacing-02);padding:var(--spacing-01) 0;font-size:12px;opacity:0.8}";
|
|
7
7
|
|
|
@@ -14,11 +14,11 @@ exports.UdpFormsFieldTypeEnum = void 0;
|
|
|
14
14
|
UdpFormsFieldTypeEnum[UdpFormsFieldTypeEnum["TimeSelector"] = 10] = "TimeSelector";
|
|
15
15
|
UdpFormsFieldTypeEnum[UdpFormsFieldTypeEnum["DateTimeSelector"] = 11] = "DateTimeSelector";
|
|
16
16
|
UdpFormsFieldTypeEnum[UdpFormsFieldTypeEnum["FileUpload"] = 12] = "FileUpload";
|
|
17
|
-
UdpFormsFieldTypeEnum[UdpFormsFieldTypeEnum["
|
|
18
|
-
UdpFormsFieldTypeEnum[UdpFormsFieldTypeEnum["
|
|
19
|
-
UdpFormsFieldTypeEnum[UdpFormsFieldTypeEnum["
|
|
20
|
-
UdpFormsFieldTypeEnum[UdpFormsFieldTypeEnum["
|
|
21
|
-
UdpFormsFieldTypeEnum[UdpFormsFieldTypeEnum["
|
|
17
|
+
UdpFormsFieldTypeEnum[UdpFormsFieldTypeEnum["YesNo"] = 13] = "YesNo";
|
|
18
|
+
UdpFormsFieldTypeEnum[UdpFormsFieldTypeEnum["Signature"] = 14] = "Signature";
|
|
19
|
+
UdpFormsFieldTypeEnum[UdpFormsFieldTypeEnum["Tally"] = 15] = "Tally";
|
|
20
|
+
UdpFormsFieldTypeEnum[UdpFormsFieldTypeEnum["Number"] = 16] = "Number";
|
|
21
|
+
UdpFormsFieldTypeEnum[UdpFormsFieldTypeEnum["Paragraph"] = 17] = "Paragraph";
|
|
22
22
|
})(exports.UdpFormsFieldTypeEnum || (exports.UdpFormsFieldTypeEnum = {}));
|
|
23
23
|
|
|
24
24
|
const overrideFont = (element, cssVariable) => {
|
|
@@ -50,6 +50,6 @@ const fontOverrideMapping = {
|
|
|
50
50
|
|
|
51
51
|
exports.fontOverrideMapping = fontOverrideMapping;
|
|
52
52
|
exports.overrideFont = overrideFont;
|
|
53
|
-
//# sourceMappingURL=utils-
|
|
53
|
+
//# sourceMappingURL=utils-DMhqs00g.js.map
|
|
54
54
|
|
|
55
|
-
//# sourceMappingURL=utils-
|
|
55
|
+
//# sourceMappingURL=utils-DMhqs00g.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils-DMhqs00g.js","sources":["src/components/my-component/UI/forms/udp-forms/enums.ts","src/components/my-component/UI/forms/udp-forms/utils.ts"],"sourcesContent":["export enum UdpFormsFieldTypeEnum {\n Hidden = 1,\n SingleLineText = 2,\n MultiLineText = 3,\n Checkbox = 4,\n RadioButton = 5,\n DropdownSingleSelect = 6,\n DropdownMultipleSelect = 7,\n ListMultiSelect = 8,\n DateSelector = 9,\n TimeSelector = 10,\n DateTimeSelector = 11,\n FileUpload = 12,\n YesNo = 13,\n Signature = 14,\n Tally = 15,\n Number = 16,\n Paragraph = 17\n }\n","export const overrideFont = (element: HTMLElement, cssVariable) => {\n if(element?.shadowRoot?.lastElementChild){ // this returns null in react for some instances\n element?.shadowRoot?.lastElementChild?.setAttribute?.('style', `font-family: var(${cssVariable})`)\n return;\n }\n const observer = new MutationObserver((mutationsList, observer) => {\n mutationsList.forEach(mutation => {\n if (mutation.type === 'childList' && mutation.addedNodes.length > 0) {\n mutation.addedNodes.forEach(node => {\n if (node.nodeType === Node.ELEMENT_NODE) {\n (node as HTMLElement)?.setAttribute?.('style', `font-family: var(${cssVariable})`);\n observer.disconnect(); // Stop observing once the target is found\n }\n });\n }\n });\n });\n\n if (element?.shadowRoot) {\n observer.observe(element.shadowRoot, { childList: true });\n }\n };\n\n\nexport const fontOverrideMapping = {\n Arial: \"--font-override-arial\"\n}"],"names":["UdpFormsFieldTypeEnum"],"mappings":"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"}
|
|
@@ -12,10 +12,10 @@ export var UdpFormsFieldTypeEnum;
|
|
|
12
12
|
UdpFormsFieldTypeEnum[UdpFormsFieldTypeEnum["TimeSelector"] = 10] = "TimeSelector";
|
|
13
13
|
UdpFormsFieldTypeEnum[UdpFormsFieldTypeEnum["DateTimeSelector"] = 11] = "DateTimeSelector";
|
|
14
14
|
UdpFormsFieldTypeEnum[UdpFormsFieldTypeEnum["FileUpload"] = 12] = "FileUpload";
|
|
15
|
-
UdpFormsFieldTypeEnum[UdpFormsFieldTypeEnum["
|
|
16
|
-
UdpFormsFieldTypeEnum[UdpFormsFieldTypeEnum["
|
|
17
|
-
UdpFormsFieldTypeEnum[UdpFormsFieldTypeEnum["
|
|
18
|
-
UdpFormsFieldTypeEnum[UdpFormsFieldTypeEnum["
|
|
19
|
-
UdpFormsFieldTypeEnum[UdpFormsFieldTypeEnum["
|
|
15
|
+
UdpFormsFieldTypeEnum[UdpFormsFieldTypeEnum["YesNo"] = 13] = "YesNo";
|
|
16
|
+
UdpFormsFieldTypeEnum[UdpFormsFieldTypeEnum["Signature"] = 14] = "Signature";
|
|
17
|
+
UdpFormsFieldTypeEnum[UdpFormsFieldTypeEnum["Tally"] = 15] = "Tally";
|
|
18
|
+
UdpFormsFieldTypeEnum[UdpFormsFieldTypeEnum["Number"] = 16] = "Number";
|
|
19
|
+
UdpFormsFieldTypeEnum[UdpFormsFieldTypeEnum["Paragraph"] = 17] = "Paragraph";
|
|
20
20
|
})(UdpFormsFieldTypeEnum || (UdpFormsFieldTypeEnum = {}));
|
|
21
21
|
//# sourceMappingURL=enums.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"enums.js","sourceRoot":"","sources":["../../../../../../src/components/my-component/UI/forms/udp-forms/enums.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,qBAkBT;AAlBH,WAAY,qBAAqB;IAC7B,qEAAU,CAAA;IACV,qFAAkB,CAAA;IAClB,mFAAiB,CAAA;IACjB,yEAAY,CAAA;IACZ,+EAAe,CAAA;IACf,iGAAwB,CAAA;IACxB,qGAA0B,CAAA;IAC1B,uFAAmB,CAAA;IACnB,iFAAgB,CAAA;IAChB,kFAAiB,CAAA;IACjB,0FAAqB,CAAA;IACrB,8EAAe,CAAA;IACf,
|
|
1
|
+
{"version":3,"file":"enums.js","sourceRoot":"","sources":["../../../../../../src/components/my-component/UI/forms/udp-forms/enums.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,qBAkBT;AAlBH,WAAY,qBAAqB;IAC7B,qEAAU,CAAA;IACV,qFAAkB,CAAA;IAClB,mFAAiB,CAAA;IACjB,yEAAY,CAAA;IACZ,+EAAe,CAAA;IACf,iGAAwB,CAAA;IACxB,qGAA0B,CAAA;IAC1B,uFAAmB,CAAA;IACnB,iFAAgB,CAAA;IAChB,kFAAiB,CAAA;IACjB,0FAAqB,CAAA;IACrB,8EAAe,CAAA;IACf,oEAAU,CAAA;IACV,4EAAc,CAAA;IACd,oEAAU,CAAA;IACV,sEAAW,CAAA;IACX,4EAAc,CAAA;AAChB,CAAC,EAlBS,qBAAqB,KAArB,qBAAqB,QAkB9B","sourcesContent":["export enum UdpFormsFieldTypeEnum {\n Hidden = 1,\n SingleLineText = 2,\n MultiLineText = 3,\n Checkbox = 4,\n RadioButton = 5,\n DropdownSingleSelect = 6,\n DropdownMultipleSelect = 7,\n ListMultiSelect = 8,\n DateSelector = 9,\n TimeSelector = 10,\n DateTimeSelector = 11,\n FileUpload = 12,\n YesNo = 13,\n Signature = 14,\n Tally = 15,\n Number = 16,\n Paragraph = 17\n }\n"]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { p as proxyCustomElement, H, h } from './p-DPon6DDX.js';
|
|
2
|
-
import { U as UdpFormsFieldTypeEnum, f as fontOverrideMapping, o as overrideFont, d as defineCustomElement$4 } from './p-
|
|
2
|
+
import { U as UdpFormsFieldTypeEnum, f as fontOverrideMapping, o as overrideFont, d as defineCustomElement$4 } from './p-PqypuW_Q.js';
|
|
3
3
|
import { d as defineCustomElement$m } from './p-DpLtIIwx.js';
|
|
4
4
|
import { d as defineCustomElement$l } from './p-B3-pcvgV.js';
|
|
5
5
|
import { d as defineCustomElement$k } from './p-BvSuY3tY.js';
|
|
@@ -302,6 +302,6 @@ function defineCustomElement() {
|
|
|
302
302
|
}
|
|
303
303
|
|
|
304
304
|
export { UdpFormsUi as U, defineCustomElement as d };
|
|
305
|
-
//# sourceMappingURL=p-
|
|
305
|
+
//# sourceMappingURL=p-C9cEH65u.js.map
|
|
306
306
|
|
|
307
|
-
//# sourceMappingURL=p-
|
|
307
|
+
//# sourceMappingURL=p-C9cEH65u.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"p-BD9WLZrE.js","mappings":"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","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/my-component/UI/forms/udp-forms/udp-forms-renderer/udp-forms-renderer.css?tag=udp-forms-ui&encapsulation=shadow","src/components/my-component/UI/forms/udp-forms/udp-forms-renderer/udp-forms-ui.tsx"],"sourcesContent":[".background {\n background-color: var(--gray-01);\n}\n\n.item {\n padding-bottom: var(--spacing-02);\n /* margin-bottom: var(--spacing-05); */\n}\n.items {\n display: flex;\n flex-direction: column;\n gap: var(--spacing-05);\n padding-top: var(--spacing-02);\n padding-bottom: var(--spacing-02);\n}\n\n.footer {\n display: flex;\n flex-direction: row-reverse;\n}\n\n.submit {\n background-color: var(--primary-color);\n box-sizing: border-box;\n border: none;\n color: white;\n padding: 8px 24px;\n font-size: 14px;\n font-weight: 600;\n cursor: pointer;\n transition: background-color 0.3s ease;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n text-decoration: none;\n min-width: 48px;\n min-height: 24px; /* Default size */\n}\n\n.submit:disabled {\n background-color: var(--gray-05);\n cursor:default;\n}\n\n.submit-card {\n display: flex;\n flex-direction: row;\n justify-content: space-between;\n}\n\n.form-content {\n margin-bottom: var(--spacing-05);\n background-color: white;\n padding: 16px;\n display: flex;\n flex-direction: column;\n gap: var(--spacing-05);\n}\n\n.form-container {\n padding-top: var(--spacing-05);\n padding-bottom: var(--spacing-05);\n}\n\n.center-div {\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n}\n\n.finish-button {\n display: flex;\n flex-direction: column;\n justify-content: center;\n}\n\n.header {\n background-color: var(--secondary-color);\n padding: var(--spacing-05) var(--spacing-05);\n color: var(--primary-color-contrast, #fff);\n}\n\n.auto-save-status {\n margin-top: var(--spacing-02);\n padding: var(--spacing-01) 0;\n font-size: 12px;\n opacity: 0.8;\n}\n","import { Component, h, Prop } from '@stencil/core';\nimport { Guid, UdpForm, UdpFormQuestion } from '../types';\nimport { UdpFormsFieldTypeEnum } from '../enums';\nimport { fontOverrideMapping, overrideFont } from '../utils';\n\n// Helper function to determine if a value is empty, considering various types.\nconst isEmpty = (value: any): boolean => {\n if (value === null || value === undefined) return true;\n if (typeof value === 'string' && value.trim() === '') return true;\n if (Array.isArray(value) && value.length === 0) return true;\n if (typeof value === 'object' && value !== null && !Array.isArray(value)) {\n // A UdpDriveFile object is considered not empty.\n if (value.driveId && value.fileId) {\n return false;\n }\n // A File object from a file input or signature pad\n if (value instanceof File) {\n return value.size === 0;\n }\n // A plain object with no keys is empty\n return Object.keys(value).length === 0;\n }\n return false;\n};\n\n@Component({\n tag: 'udp-forms-ui',\n styleUrl: 'udp-forms-renderer.css', // Reuse the same styles\n shadow: true,\n})\nexport class UdpFormsUi {\n @Prop() form: UdpForm;\n @Prop() initialValues: { [name: string]: any } = {};\n @Prop() submitSuccessful: boolean = false;\n @Prop() loading: boolean = false;\n @Prop() isSaving: boolean = false;\n @Prop() saveError: string | null = null;\n @Prop() showAutoSaveStatus: boolean = false;\n @Prop() disabled: boolean = false;\n @Prop() readonly: boolean = false;\n @Prop() onSubmit: (values: any) => Promise<void>;\n @Prop() onChange: (values: { [name: string]: any }) => void;\n @Prop() onAction: (actionId: Guid, params: Object) => void;\n @Prop() onFinish: () => void;\n\n private titleId: string = 'udp-forms-title';\n private descriptionId: string = 'udp-forms-description';\n\n componentDidLoad() {\n this.overrideStyles();\n }\n\n componentDidUpdate() {\n this.overrideStyles();\n }\n\n overrideStyles() {\n const shadowRoot = (this as any).el?.shadowRoot;\n shadowRoot?.querySelectorAll('unity-typography').forEach(element => {\n const styleOverride =\n element.id === this.titleId ? this.form?.styleOverrides?.titleText :\n element.id === this.descriptionId ? this.form?.styleOverrides?.paragraphText :\n ({} as any);\n\n if (styleOverride?.fontFamily && fontOverrideMapping[styleOverride.fontFamily]) {\n overrideFont(element, fontOverrideMapping[styleOverride.fontFamily]);\n }\n if (styleOverride?.variant) {\n element.setAttribute('variant', styleOverride.variant);\n }\n });\n }\n\n private validate = (values: Object) => {\n console.log('Validation called with values:', values);\n const errors = {};\n // Validate required fields\n for (const question of this.form?.formQuestions || []) {\n if (question.required && question.fieldTypeId !== UdpFormsFieldTypeEnum.Tally) {\n const value = values[question.name];\n if (isEmpty(value)) {\n errors[question.name] = 'This field is required';\n console.log(`Validation error for ${question.name}: required field is empty`);\n }\n }\n }\n console.log('Validation errors:', errors);\n return errors;\n };\n\n private handleSubmit = async (values: any) => {\n console.log('Form submit handler called with values:', values);\n try {\n if (this.onSubmit) {\n console.log('Calling onSubmit prop...');\n await this.onSubmit(values);\n console.log('onSubmit completed successfully');\n } else {\n console.error('onSubmit prop is not defined!');\n }\n } catch (error) {\n console.error('Error in onSubmit:', error);\n }\n };\n\n private handleFormInvalid = (errors: any) => {\n console.log('Form validation failed with errors:', errors);\n };\n\n render() {\n if (!this.form) {\n return <div>Loading...</div>;\n }\n\n let questionNumber = 1;\n\n const sectionSet = new Set();\n this.form.formQuestions.forEach(fq => sectionSet.add(fq.section));\n const orderedSectionNumbers = [...sectionSet].sort((a: number, b: number) => a - b);\n\n const hiddenQuestionTypes = [UdpFormsFieldTypeEnum.Hidden, UdpFormsFieldTypeEnum.Paragraph];\n\n const backgroundOverrides: { backgroundImage?: string | null; backgroundColor?: string | null } = {};\n if (this.form?.styleOverrides?.background?.backgroundImage) {\n // uncomment when we want to allow background images\n //backgroundOverrides.backgroundImage = `url(${this.form?.styleOverrides?.background?.backgroundImage})`;\n } else if (this.form?.styleOverrides?.background?.backgroundColor) {\n backgroundOverrides.backgroundColor = this.form?.styleOverrides?.background?.backgroundColor;\n }\n\n return (\n <div class={'background'} style={backgroundOverrides}>\n <udp-container maxWidth=\"md\">\n <div class=\"form-container\">\n {!this.submitSuccessful ? (\n <stencil-form\n handleSubmit={this.handleSubmit}\n initialValues={this.initialValues}\n validate={this.validate}\n handleFormChange={this.onChange}\n onStencilFormInvalidEvent={this.handleFormInvalid}\n >\n {/********** QUESTIONS *********/}\n {orderedSectionNumbers.map((sectionNumber, i) => (\n <div>\n {sectionNumber === orderedSectionNumbers[0] && (\n // @ts-ignore\n <div class=\"header\" style={this.form?.styleOverrides?.headerBackgroundColor ? { backgroundColor: this.form?.styleOverrides?.headerBackgroundColor } : ''}>\n <unity-typography id={this.titleId} variant={'h6'} color=\"inherit\">\n {this.form.name}\n </unity-typography>\n <unity-typography\n id={this.descriptionId}\n variant={this.form?.styleOverrides?.paragraphText?.variant ?? 'body'}\n color=\"inherit\"\n >\n {this.form.description}\n </unity-typography>\n\n {/* Auto-save status indicator for authenticated users */}\n {this.showAutoSaveStatus && (\n <div class=\"auto-save-status\">\n {/* {this.isSaving && (\n <unity-typography variant=\"body\" color=\"primary\">\n Saving...\n </unity-typography>\n )} */}\n {this.saveError && (\n <unity-typography variant=\"body\" color=\"secondary\">\n {this.saveError}\n </unity-typography>\n )}\n </div>\n )}\n </div>\n )}\n <div class=\"form-content\">\n <div class=\"items\">\n {this.form.formQuestions\n .filter(fq => fq.section === sectionNumber)\n .sort((a, b) => a.questionOrder - b.questionOrder)\n .map((question: UdpFormQuestion) => {\n const isHidden = hiddenQuestionTypes.includes(question.fieldTypeId);\n const num: number = questionNumber;\n if (!isHidden) questionNumber++;\n return (\n <div class=\"item\">\n <udp-question\n styleOverrides={{\n helperText: this.form.styleOverrides?.helperText,\n paragraphText: this.form.styleOverrides?.paragraphText,\n questionText: this.form.styleOverrides?.questionText,\n }}\n question={question}\n questionNumber={num}\n value={this.initialValues[question.name]}\n disabled={this.disabled}\n readonly={this.readonly}\n />\n </div>\n );\n })}\n </div>\n {i === orderedSectionNumbers.length - 1 && (\n <div class=\"footer\">\n <input\n disabled={this.loading || this.disabled || this.readonly}\n type=\"submit\"\n value=\"Submit\"\n class=\"submit\"\n id=\"udpRecord-udp-forms-renderer-Submit\"\n onClick={() => {\n console.log('Submit button clicked');\n // Let the form handle the submit naturally\n }}\n />\n </div>\n )}\n </div>\n </div>\n ))}\n </stencil-form>\n ) : (\n //if the form has been submit, display success message with a button to trigger the action associated to the form\n <div class=\"center-div\">\n <udp-ambient-card>\n <div class=\"submit-card\">\n <unity-typography>Thank you for your submission!</unity-typography>\n <div class=\"finish-button\">\n <custom-button onClick={this.onFinish}>Finish</custom-button>\n </div>\n </div>\n </udp-ambient-card>\n </div>\n )}\n </div>\n </udp-container>\n </div>\n );\n }\n}\n"],"version":3}
|
|
1
|
+
{"file":"p-C9cEH65u.js","mappings":"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","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/my-component/UI/forms/udp-forms/udp-forms-renderer/udp-forms-renderer.css?tag=udp-forms-ui&encapsulation=shadow","src/components/my-component/UI/forms/udp-forms/udp-forms-renderer/udp-forms-ui.tsx"],"sourcesContent":[".background {\n background-color: var(--gray-01);\n}\n\n.item {\n padding-bottom: var(--spacing-02);\n /* margin-bottom: var(--spacing-05); */\n}\n.items {\n display: flex;\n flex-direction: column;\n gap: var(--spacing-05);\n padding-top: var(--spacing-02);\n padding-bottom: var(--spacing-02);\n}\n\n.footer {\n display: flex;\n flex-direction: row-reverse;\n}\n\n.submit {\n background-color: var(--primary-color);\n box-sizing: border-box;\n border: none;\n color: white;\n padding: 8px 24px;\n font-size: 14px;\n font-weight: 600;\n cursor: pointer;\n transition: background-color 0.3s ease;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n text-decoration: none;\n min-width: 48px;\n min-height: 24px; /* Default size */\n}\n\n.submit:disabled {\n background-color: var(--gray-05);\n cursor:default;\n}\n\n.submit-card {\n display: flex;\n flex-direction: row;\n justify-content: space-between;\n}\n\n.form-content {\n margin-bottom: var(--spacing-05);\n background-color: white;\n padding: 16px;\n display: flex;\n flex-direction: column;\n gap: var(--spacing-05);\n}\n\n.form-container {\n padding-top: var(--spacing-05);\n padding-bottom: var(--spacing-05);\n}\n\n.center-div {\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n}\n\n.finish-button {\n display: flex;\n flex-direction: column;\n justify-content: center;\n}\n\n.header {\n background-color: var(--secondary-color);\n padding: var(--spacing-05) var(--spacing-05);\n color: var(--primary-color-contrast, #fff);\n}\n\n.auto-save-status {\n margin-top: var(--spacing-02);\n padding: var(--spacing-01) 0;\n font-size: 12px;\n opacity: 0.8;\n}\n","import { Component, h, Prop } from '@stencil/core';\nimport { Guid, UdpForm, UdpFormQuestion } from '../types';\nimport { UdpFormsFieldTypeEnum } from '../enums';\nimport { fontOverrideMapping, overrideFont } from '../utils';\n\n// Helper function to determine if a value is empty, considering various types.\nconst isEmpty = (value: any): boolean => {\n if (value === null || value === undefined) return true;\n if (typeof value === 'string' && value.trim() === '') return true;\n if (Array.isArray(value) && value.length === 0) return true;\n if (typeof value === 'object' && value !== null && !Array.isArray(value)) {\n // A UdpDriveFile object is considered not empty.\n if (value.driveId && value.fileId) {\n return false;\n }\n // A File object from a file input or signature pad\n if (value instanceof File) {\n return value.size === 0;\n }\n // A plain object with no keys is empty\n return Object.keys(value).length === 0;\n }\n return false;\n};\n\n@Component({\n tag: 'udp-forms-ui',\n styleUrl: 'udp-forms-renderer.css', // Reuse the same styles\n shadow: true,\n})\nexport class UdpFormsUi {\n @Prop() form: UdpForm;\n @Prop() initialValues: { [name: string]: any } = {};\n @Prop() submitSuccessful: boolean = false;\n @Prop() loading: boolean = false;\n @Prop() isSaving: boolean = false;\n @Prop() saveError: string | null = null;\n @Prop() showAutoSaveStatus: boolean = false;\n @Prop() disabled: boolean = false;\n @Prop() readonly: boolean = false;\n @Prop() onSubmit: (values: any) => Promise<void>;\n @Prop() onChange: (values: { [name: string]: any }) => void;\n @Prop() onAction: (actionId: Guid, params: Object) => void;\n @Prop() onFinish: () => void;\n\n private titleId: string = 'udp-forms-title';\n private descriptionId: string = 'udp-forms-description';\n\n componentDidLoad() {\n this.overrideStyles();\n }\n\n componentDidUpdate() {\n this.overrideStyles();\n }\n\n overrideStyles() {\n const shadowRoot = (this as any).el?.shadowRoot;\n shadowRoot?.querySelectorAll('unity-typography').forEach(element => {\n const styleOverride =\n element.id === this.titleId ? this.form?.styleOverrides?.titleText :\n element.id === this.descriptionId ? this.form?.styleOverrides?.paragraphText :\n ({} as any);\n\n if (styleOverride?.fontFamily && fontOverrideMapping[styleOverride.fontFamily]) {\n overrideFont(element, fontOverrideMapping[styleOverride.fontFamily]);\n }\n if (styleOverride?.variant) {\n element.setAttribute('variant', styleOverride.variant);\n }\n });\n }\n\n private validate = (values: Object) => {\n console.log('Validation called with values:', values);\n const errors = {};\n // Validate required fields\n for (const question of this.form?.formQuestions || []) {\n if (question.required && question.fieldTypeId !== UdpFormsFieldTypeEnum.Tally) {\n const value = values[question.name];\n if (isEmpty(value)) {\n errors[question.name] = 'This field is required';\n console.log(`Validation error for ${question.name}: required field is empty`);\n }\n }\n }\n console.log('Validation errors:', errors);\n return errors;\n };\n\n private handleSubmit = async (values: any) => {\n console.log('Form submit handler called with values:', values);\n try {\n if (this.onSubmit) {\n console.log('Calling onSubmit prop...');\n await this.onSubmit(values);\n console.log('onSubmit completed successfully');\n } else {\n console.error('onSubmit prop is not defined!');\n }\n } catch (error) {\n console.error('Error in onSubmit:', error);\n }\n };\n\n private handleFormInvalid = (errors: any) => {\n console.log('Form validation failed with errors:', errors);\n };\n\n render() {\n if (!this.form) {\n return <div>Loading...</div>;\n }\n\n let questionNumber = 1;\n\n const sectionSet = new Set();\n this.form.formQuestions.forEach(fq => sectionSet.add(fq.section));\n const orderedSectionNumbers = [...sectionSet].sort((a: number, b: number) => a - b);\n\n const hiddenQuestionTypes = [UdpFormsFieldTypeEnum.Hidden, UdpFormsFieldTypeEnum.Paragraph];\n\n const backgroundOverrides: { backgroundImage?: string | null; backgroundColor?: string | null } = {};\n if (this.form?.styleOverrides?.background?.backgroundImage) {\n // uncomment when we want to allow background images\n //backgroundOverrides.backgroundImage = `url(${this.form?.styleOverrides?.background?.backgroundImage})`;\n } else if (this.form?.styleOverrides?.background?.backgroundColor) {\n backgroundOverrides.backgroundColor = this.form?.styleOverrides?.background?.backgroundColor;\n }\n\n return (\n <div class={'background'} style={backgroundOverrides}>\n <udp-container maxWidth=\"md\">\n <div class=\"form-container\">\n {!this.submitSuccessful ? (\n <stencil-form\n handleSubmit={this.handleSubmit}\n initialValues={this.initialValues}\n validate={this.validate}\n handleFormChange={this.onChange}\n onStencilFormInvalidEvent={this.handleFormInvalid}\n >\n {/********** QUESTIONS *********/}\n {orderedSectionNumbers.map((sectionNumber, i) => (\n <div>\n {sectionNumber === orderedSectionNumbers[0] && (\n // @ts-ignore\n <div class=\"header\" style={this.form?.styleOverrides?.headerBackgroundColor ? { backgroundColor: this.form?.styleOverrides?.headerBackgroundColor } : ''}>\n <unity-typography id={this.titleId} variant={'h6'} color=\"inherit\">\n {this.form.name}\n </unity-typography>\n <unity-typography\n id={this.descriptionId}\n variant={this.form?.styleOverrides?.paragraphText?.variant ?? 'body'}\n color=\"inherit\"\n >\n {this.form.description}\n </unity-typography>\n\n {/* Auto-save status indicator for authenticated users */}\n {this.showAutoSaveStatus && (\n <div class=\"auto-save-status\">\n {/* {this.isSaving && (\n <unity-typography variant=\"body\" color=\"primary\">\n Saving...\n </unity-typography>\n )} */}\n {this.saveError && (\n <unity-typography variant=\"body\" color=\"secondary\">\n {this.saveError}\n </unity-typography>\n )}\n </div>\n )}\n </div>\n )}\n <div class=\"form-content\">\n <div class=\"items\">\n {this.form.formQuestions\n .filter(fq => fq.section === sectionNumber)\n .sort((a, b) => a.questionOrder - b.questionOrder)\n .map((question: UdpFormQuestion) => {\n const isHidden = hiddenQuestionTypes.includes(question.fieldTypeId);\n const num: number = questionNumber;\n if (!isHidden) questionNumber++;\n return (\n <div class=\"item\">\n <udp-question\n styleOverrides={{\n helperText: this.form.styleOverrides?.helperText,\n paragraphText: this.form.styleOverrides?.paragraphText,\n questionText: this.form.styleOverrides?.questionText,\n }}\n question={question}\n questionNumber={num}\n value={this.initialValues[question.name]}\n disabled={this.disabled}\n readonly={this.readonly}\n />\n </div>\n );\n })}\n </div>\n {i === orderedSectionNumbers.length - 1 && (\n <div class=\"footer\">\n <input\n disabled={this.loading || this.disabled || this.readonly}\n type=\"submit\"\n value=\"Submit\"\n class=\"submit\"\n id=\"udpRecord-udp-forms-renderer-Submit\"\n onClick={() => {\n console.log('Submit button clicked');\n // Let the form handle the submit naturally\n }}\n />\n </div>\n )}\n </div>\n </div>\n ))}\n </stencil-form>\n ) : (\n //if the form has been submit, display success message with a button to trigger the action associated to the form\n <div class=\"center-div\">\n <udp-ambient-card>\n <div class=\"submit-card\">\n <unity-typography>Thank you for your submission!</unity-typography>\n <div class=\"finish-button\">\n <custom-button onClick={this.onFinish}>Finish</custom-button>\n </div>\n </div>\n </udp-ambient-card>\n </div>\n )}\n </div>\n </udp-container>\n </div>\n );\n }\n}\n"],"version":3}
|
|
@@ -31,11 +31,11 @@ var UdpFormsFieldTypeEnum;
|
|
|
31
31
|
UdpFormsFieldTypeEnum[UdpFormsFieldTypeEnum["TimeSelector"] = 10] = "TimeSelector";
|
|
32
32
|
UdpFormsFieldTypeEnum[UdpFormsFieldTypeEnum["DateTimeSelector"] = 11] = "DateTimeSelector";
|
|
33
33
|
UdpFormsFieldTypeEnum[UdpFormsFieldTypeEnum["FileUpload"] = 12] = "FileUpload";
|
|
34
|
-
UdpFormsFieldTypeEnum[UdpFormsFieldTypeEnum["
|
|
35
|
-
UdpFormsFieldTypeEnum[UdpFormsFieldTypeEnum["
|
|
36
|
-
UdpFormsFieldTypeEnum[UdpFormsFieldTypeEnum["
|
|
37
|
-
UdpFormsFieldTypeEnum[UdpFormsFieldTypeEnum["
|
|
38
|
-
UdpFormsFieldTypeEnum[UdpFormsFieldTypeEnum["
|
|
34
|
+
UdpFormsFieldTypeEnum[UdpFormsFieldTypeEnum["YesNo"] = 13] = "YesNo";
|
|
35
|
+
UdpFormsFieldTypeEnum[UdpFormsFieldTypeEnum["Signature"] = 14] = "Signature";
|
|
36
|
+
UdpFormsFieldTypeEnum[UdpFormsFieldTypeEnum["Tally"] = 15] = "Tally";
|
|
37
|
+
UdpFormsFieldTypeEnum[UdpFormsFieldTypeEnum["Number"] = 16] = "Number";
|
|
38
|
+
UdpFormsFieldTypeEnum[UdpFormsFieldTypeEnum["Paragraph"] = 17] = "Paragraph";
|
|
39
39
|
})(UdpFormsFieldTypeEnum || (UdpFormsFieldTypeEnum = {}));
|
|
40
40
|
|
|
41
41
|
const overrideFont = (element, cssVariable) => {
|
|
@@ -424,6 +424,6 @@ function defineCustomElement() {
|
|
|
424
424
|
}
|
|
425
425
|
|
|
426
426
|
export { UdpFormsFieldTypeEnum as U, UdpQuestion as a, defineCustomElement as d, fontOverrideMapping as f, overrideFont as o };
|
|
427
|
-
//# sourceMappingURL=p-
|
|
427
|
+
//# sourceMappingURL=p-PqypuW_Q.js.map
|
|
428
428
|
|
|
429
|
-
//# sourceMappingURL=p-
|
|
429
|
+
//# sourceMappingURL=p-PqypuW_Q.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"p-BGQ__vyk.js","mappings":"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","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/my-component/UI/forms/udp-forms/enums.ts","src/components/my-component/UI/forms/udp-forms/utils.ts","src/components/my-component/UI/forms/form/useFormApi.ts","src/components/my-component/UI/forms/udp-forms/udp-question/udp-question.css?tag=udp-question&encapsulation=shadow","src/components/my-component/UI/forms/udp-forms/udp-question/udp-question.tsx"],"sourcesContent":["export enum UdpFormsFieldTypeEnum {\n Hidden = 1,\n SingleLineText = 2,\n MultiLineText = 3,\n Checkbox = 4,\n RadioButton = 5,\n DropdownSingleSelect = 6,\n DropdownMultipleSelect = 7,\n ListMultiSelect = 8,\n DateSelector = 9,\n TimeSelector = 10,\n DateTimeSelector = 11,\n FileUpload = 12,\n Paragraph = 13,\n YesNo = 14,\n Signature = 15,\n Tally = 16,\n Number = 17,\n }\n","export const overrideFont = (element: HTMLElement, cssVariable) => {\n if(element?.shadowRoot?.lastElementChild){ // this returns null in react for some instances\n element?.shadowRoot?.lastElementChild?.setAttribute?.('style', `font-family: var(${cssVariable})`)\n return;\n }\n const observer = new MutationObserver((mutationsList, observer) => {\n mutationsList.forEach(mutation => {\n if (mutation.type === 'childList' && mutation.addedNodes.length > 0) {\n mutation.addedNodes.forEach(node => {\n if (node.nodeType === Node.ELEMENT_NODE) {\n (node as HTMLElement)?.setAttribute?.('style', `font-family: var(${cssVariable})`);\n observer.disconnect(); // Stop observing once the target is found\n }\n });\n }\n });\n });\n\n if (element?.shadowRoot) {\n observer.observe(element.shadowRoot, { childList: true });\n }\n };\n\n\nexport const fontOverrideMapping = {\n Arial: \"--font-override-arial\"\n}","/**\n * Finds the parent stencil-form and returns its Final Form API.\n * This function correctly traverses up through nested Shadow DOM boundaries.\n *\n * @param element The host element of the component calling this function.\n * @returns A promise that resolves with the FormApi instance, or null if not found.\n */\nexport async function useFormApi(element: HTMLElement): Promise<any | null> {\n let current: HTMLElement | null = element;\n let form: HTMLElement | null = null;\n\n // Walk up the DOM tree, escaping shadow roots as we go.\n while (current) {\n // Look for the form in the current scope\n const foundForm = current.closest('stencil-form');\n if (foundForm) {\n form = foundForm;\n break; // Found it!\n }\n\n // If not found, we might be in a shadow root.\n // Let's try to escape it.\n const root = current.getRootNode();\n if (root instanceof ShadowRoot) {\n current = root.host as HTMLElement;\n } else {\n // We're in the main document and didn't find it.\n break;\n }\n }\n\n if (!form) {\n return null;\n }\n\n // Check if getApi method exists\n if (typeof (form as any).getApi !== 'function') {\n return null;\n }\n\n const formApi = await (form as any).getApi();\n \n if (!formApi) {\n return null;\n }\n \n return formApi;\n}\n","\n.hidden {\n display: none;\n}\n","import { Component, ComponentInterface, Element, h, Prop, State, Watch } from '@stencil/core';\nimport { UdpFormQuestion } from '../types';\nimport { UdpFormsFieldTypeEnum } from '../enums';\nimport { FontOverrides } from '../types';\nimport { fontOverrideMapping, overrideFont } from '../utils';\nimport { useFormApi } from '../../form/useFormApi';\n\n@Component({\n tag: 'udp-question',\n styleUrl: 'udp-question.css',\n shadow: true,\n})\nexport class UdpQuestion {\n @Prop() question: UdpFormQuestion;\n @Prop() questionNumber: number;\n @Prop({ mutable: true }) value: string; // only used for Paragraph type (UdpFormsFieldTypeEnum.Paragraph)\n @Prop() disabled: boolean = false;\n @Prop() readonly: boolean = false;\n @Prop() styleOverrides: {\n helperText: FontOverrides;\n questionText: FontOverrides;\n paragraphText: FontOverrides;\n };\n\n @State() private _fieldComponent: ComponentInterface;\n @State() private tallyData: {\n yesCount: number;\n noCount: number;\n naCount: number;\n totalFields: number;\n } = { yesCount: 0, noCount: 0, naCount: 0, totalFields: 0 };\n @State() private formApi: any = null;\n\n @Element() el: HTMLElement;\n\n @Watch('question')\n @Watch('questionNumber')\n @Watch('value')\n @Watch('disabled')\n @Watch('readonly')\n @Watch('styleOverrides')\n protected propChanged() {\n this.updateFieldComponent();\n }\n\n async componentWillLoad() {\n this.updateFieldComponent();\n if (this.question.fieldTypeId === UdpFormsFieldTypeEnum.Tally) {\n await this.initializeFormApiForTally();\n }\n }\n\n private async initializeFormApiForTally() {\n try {\n this.formApi = await useFormApi(this.el);\n\n if (this.formApi) {\n // Subscribe to form changes to update tally in real-time\n const unsubscribe = this.formApi.subscribe(\n () => {\n this.calculateTally();\n },\n { active: true, dirty: true, values: true }\n );\n\n // Store unsubscribe function for cleanup if needed\n (this as any).unsubscribeFormApi = unsubscribe;\n\n // Initial calculation\n this.calculateTally();\n }\n } catch (error) {\n console.error('Failed to initialize form API for tally:', error);\n }\n }\n\n private calculateTally() {\n if (!this.formApi || this.question.fieldTypeId !== UdpFormsFieldTypeEnum.Tally) {\n return;\n }\n\n try {\n const formValues = this.formApi.getState().values;\n\n const formElement = this.el.closest('stencil-form');\n if (!formElement) {\n return;\n }\n\n // Get all udp-question elements in the form\n const questionElements = formElement.querySelectorAll('udp-question');\n const yesNoFields: string[] = [];\n\n // Identify YesNo field types\n questionElements.forEach((questionEl: any) => {\n if (questionEl.question && questionEl.question.fieldTypeId === UdpFormsFieldTypeEnum.YesNo) {\n const fieldName = questionEl.question.name;\n if (fieldName) {\n const shouldInclude = this.shouldIncludeFieldInTally(fieldName);\n if (shouldInclude) {\n yesNoFields.push(fieldName);\n }\n }\n }\n });\n\n // Count Yes/No/NA responses\n let yesCount = 0;\n let noCount = 0;\n let naCount = 0;\n\n yesNoFields.forEach(fieldName => {\n const value = formValues[fieldName];\n\n if (value === 'true' || value === true) {\n yesCount++;\n } else if (value === 'false' || value === false) {\n noCount++;\n } else if (value === 'na') {\n naCount++;\n }\n });\n\n this.tallyData = {\n yesCount,\n noCount,\n naCount,\n totalFields: yesNoFields.length,\n };\n\n // Force a re-render to update the component\n this.updateFieldComponent();\n\n } catch (error) {\n console.error('Error calculating tally:', error);\n }\n }\n\n private shouldIncludeFieldInTally(fieldName: string): boolean {\n const fieldProps = this.question.fieldProperties;\n\n // If includeFields is specified, only include those fields\n if (fieldProps?.includeFields && fieldProps.includeFields.length > 0) {\n return fieldProps.includeFields.includes(fieldName);\n }\n\n // If excludeFields is specified, exclude those fields\n if (fieldProps?.excludeFields && fieldProps.excludeFields.length > 0) {\n return !fieldProps.excludeFields.includes(fieldName);\n }\n\n // Include all fields by default\n return true;\n }\n\n private updateFieldComponent() {\n this._fieldComponent = this.getFieldComponent();\n }\n\n private getFieldComponent(): ComponentInterface {\n const props = {\n name: this.question.name ?? `question-${this.questionNumber}`,\n required: this.question.required,\n };\n const fieldProps = { ...this.question.fieldProperties, id: this.questionNumber, disabled: this.disabled, readonly: this.readonly };\n switch (this.question.fieldTypeId) {\n case UdpFormsFieldTypeEnum.SingleLineText:\n return (\n <stencil-field {...props}>\n <text-field {...fieldProps} />\n </stencil-field>\n );\n case UdpFormsFieldTypeEnum.MultiLineText:\n return (\n <stencil-field {...props}>\n <text-area fullWidth={true} {...fieldProps} />\n </stencil-field>\n );\n case UdpFormsFieldTypeEnum.Checkbox:\n return (\n <stencil-field {...props}>\n <selectable-list\n valueKey=\"value\"\n displayKey=\"display\"\n multiSelect={true}\n useCheckbox={true}\n {...fieldProps}\n />\n </stencil-field>\n );\n case UdpFormsFieldTypeEnum.RadioButton:\n return (\n <stencil-field {...props}>\n <selectable-list\n valueKey=\"value\"\n displayKey=\"display\"\n useCheckbox={true}\n {...fieldProps}\n />\n </stencil-field>\n );\n case UdpFormsFieldTypeEnum.DropdownSingleSelect:\n case UdpFormsFieldTypeEnum.DropdownMultipleSelect:\n let options: { label: string; value: string } = fieldProps?.items?.map?.(items => ({ label: items.display, value: items.value, ...fieldProps }));\n return (\n <stencil-field {...props}>\n <udp-selector\n options={options ?? []}\n multiSelect={this.question.fieldTypeId === UdpFormsFieldTypeEnum.DropdownMultipleSelect}\n {...fieldProps}\n />\n </stencil-field>\n );\n case UdpFormsFieldTypeEnum.YesNo:\n return (\n <stencil-field {...props}>\n <selectable-list\n valueKey=\"value\"\n displayKey=\"display\"\n useCheckbox={true} // Use radio buttons\n multiSelect={false}\n items={[\n { value: 'true', display: 'Yes' },\n { value: 'false', display: 'No' },\n { value: 'na', display: 'Not Applicable' },\n ]}\n {...fieldProps}\n />\n </stencil-field>\n );\n case UdpFormsFieldTypeEnum.ListMultiSelect:\n return (\n <stencil-field {...props}>\n <selectable-list\n valueKey=\"value\"\n displayKey=\"display\"\n multiSelect={true}\n {...fieldProps}\n />\n </stencil-field>\n );\n case UdpFormsFieldTypeEnum.DateSelector:\n return (\n <stencil-field {...props}>\n <udp-date-selector\n min={fieldProps?.minDate}\n max={fieldProps?.maxDate}\n {...fieldProps}\n />\n </stencil-field>\n );\n case UdpFormsFieldTypeEnum.TimeSelector:\n return (\n <stencil-field {...props}>\n <udp-time-selector\n min={fieldProps?.minTime}\n max={fieldProps?.maxTime}\n {...fieldProps}\n />\n </stencil-field>\n );\n case UdpFormsFieldTypeEnum.DateTimeSelector:\n return (\n <stencil-field {...props}>\n <udp-datetime-selector\n max={fieldProps?.maxDateTime}\n min={fieldProps?.minDateTime}\n {...fieldProps}\n />\n </stencil-field>\n );\n case UdpFormsFieldTypeEnum.FileUpload:\n return (\n <stencil-field {...props}>\n <file-upload fullWidth={true} allowMultiple={false} {...fieldProps} />\n </stencil-field>\n );\n case UdpFormsFieldTypeEnum.Signature:\n return (\n <stencil-field {...props}>\n <signature-input {...fieldProps} value={this.value} />\n </stencil-field>\n );\n case UdpFormsFieldTypeEnum.Paragraph:\n return this.value ? <unity-typography id={`paragraphText${this.question.name}`} variant={this.styleOverrides?.paragraphText?.variant || 'body'} >{this.value}</unity-typography> : <div />;\n case UdpFormsFieldTypeEnum.Number:\n return (\n <stencil-field {...props}>\n <numeric-field {...fieldProps} />\n </stencil-field>\n );\n\n case UdpFormsFieldTypeEnum.Tally:\n return (\n <tally-display\n id={this.questionNumber}\n label={this.question.questionText || 'Response Tally'}\n yesCount={this.tallyData.yesCount}\n noCount={this.tallyData.noCount}\n naCount={this.tallyData.naCount}\n totalFields={this.tallyData.totalFields}\n {...fieldProps}\n required={false}\n />\n );\n case UdpFormsFieldTypeEnum.Hidden:\n default:\n return <div />;\n }\n }\n async componentDidLoad() {\n // If form API wasn't available during componentWillLoad, try again\n if (this.question.fieldTypeId === UdpFormsFieldTypeEnum.Tally && !this.formApi) {\n await this.initializeFormApiForTally();\n }\n\n // override the fonts based on style overrides\n const variantsAndOverrides = [];\n for (const override in this.styleOverrides) {\n variantsAndOverrides.push({\n id: override + this.question.name,\n fontOverride: this.styleOverrides?.[override]?.fontFamily,\n variant: this.styleOverrides?.[override]?.variant\n }\n )\n }\n variantsAndOverrides.forEach(override => {\n if(!fontOverrideMapping[override?.fontOverride] || !this.el || !this.el.shadowRoot) return;\n overrideFont(this.el?.shadowRoot?.getElementById?.(override.id),fontOverrideMapping[override?.fontOverride])\n\n })\n }\n render() {\n\n const component = this._fieldComponent;\n const titleText = `${this.question.fieldTypeId === UdpFormsFieldTypeEnum.Paragraph ? '' : `${this.questionNumber}.`} ${this.question.questionText} ${\n this.question.required && this.question.fieldTypeId !== UdpFormsFieldTypeEnum.Paragraph ? '*' : ''\n }`;\n if (!component) return null;\n return (\n <div class={this.question.fieldTypeId === UdpFormsFieldTypeEnum.Hidden ? 'hidden' : ''}>\n {this.question.questionText ? <unity-typography id={`questionText${this.question.name}`} variant={this.styleOverrides?.questionText?.variant || 'h3'} >{titleText}</unity-typography> : ''}\n {component}\n\n <unity-typography id={`helperText${this.question.name}`} variant={this.styleOverrides?.helperText?.variant || 'caption-text'} >{this.question.helperText}</unity-typography>\n </div>\n );\n }\n}\n"],"version":3}
|
|
1
|
+
{"file":"p-PqypuW_Q.js","mappings":"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","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/my-component/UI/forms/udp-forms/enums.ts","src/components/my-component/UI/forms/udp-forms/utils.ts","src/components/my-component/UI/forms/form/useFormApi.ts","src/components/my-component/UI/forms/udp-forms/udp-question/udp-question.css?tag=udp-question&encapsulation=shadow","src/components/my-component/UI/forms/udp-forms/udp-question/udp-question.tsx"],"sourcesContent":["export enum UdpFormsFieldTypeEnum {\n Hidden = 1,\n SingleLineText = 2,\n MultiLineText = 3,\n Checkbox = 4,\n RadioButton = 5,\n DropdownSingleSelect = 6,\n DropdownMultipleSelect = 7,\n ListMultiSelect = 8,\n DateSelector = 9,\n TimeSelector = 10,\n DateTimeSelector = 11,\n FileUpload = 12,\n YesNo = 13,\n Signature = 14,\n Tally = 15,\n Number = 16,\n Paragraph = 17\n }\n","export const overrideFont = (element: HTMLElement, cssVariable) => {\n if(element?.shadowRoot?.lastElementChild){ // this returns null in react for some instances\n element?.shadowRoot?.lastElementChild?.setAttribute?.('style', `font-family: var(${cssVariable})`)\n return;\n }\n const observer = new MutationObserver((mutationsList, observer) => {\n mutationsList.forEach(mutation => {\n if (mutation.type === 'childList' && mutation.addedNodes.length > 0) {\n mutation.addedNodes.forEach(node => {\n if (node.nodeType === Node.ELEMENT_NODE) {\n (node as HTMLElement)?.setAttribute?.('style', `font-family: var(${cssVariable})`);\n observer.disconnect(); // Stop observing once the target is found\n }\n });\n }\n });\n });\n\n if (element?.shadowRoot) {\n observer.observe(element.shadowRoot, { childList: true });\n }\n };\n\n\nexport const fontOverrideMapping = {\n Arial: \"--font-override-arial\"\n}","/**\n * Finds the parent stencil-form and returns its Final Form API.\n * This function correctly traverses up through nested Shadow DOM boundaries.\n *\n * @param element The host element of the component calling this function.\n * @returns A promise that resolves with the FormApi instance, or null if not found.\n */\nexport async function useFormApi(element: HTMLElement): Promise<any | null> {\n let current: HTMLElement | null = element;\n let form: HTMLElement | null = null;\n\n // Walk up the DOM tree, escaping shadow roots as we go.\n while (current) {\n // Look for the form in the current scope\n const foundForm = current.closest('stencil-form');\n if (foundForm) {\n form = foundForm;\n break; // Found it!\n }\n\n // If not found, we might be in a shadow root.\n // Let's try to escape it.\n const root = current.getRootNode();\n if (root instanceof ShadowRoot) {\n current = root.host as HTMLElement;\n } else {\n // We're in the main document and didn't find it.\n break;\n }\n }\n\n if (!form) {\n return null;\n }\n\n // Check if getApi method exists\n if (typeof (form as any).getApi !== 'function') {\n return null;\n }\n\n const formApi = await (form as any).getApi();\n \n if (!formApi) {\n return null;\n }\n \n return formApi;\n}\n","\n.hidden {\n display: none;\n}\n","import { Component, ComponentInterface, Element, h, Prop, State, Watch } from '@stencil/core';\nimport { UdpFormQuestion } from '../types';\nimport { UdpFormsFieldTypeEnum } from '../enums';\nimport { FontOverrides } from '../types';\nimport { fontOverrideMapping, overrideFont } from '../utils';\nimport { useFormApi } from '../../form/useFormApi';\n\n@Component({\n tag: 'udp-question',\n styleUrl: 'udp-question.css',\n shadow: true,\n})\nexport class UdpQuestion {\n @Prop() question: UdpFormQuestion;\n @Prop() questionNumber: number;\n @Prop({ mutable: true }) value: string; // only used for Paragraph type (UdpFormsFieldTypeEnum.Paragraph)\n @Prop() disabled: boolean = false;\n @Prop() readonly: boolean = false;\n @Prop() styleOverrides: {\n helperText: FontOverrides;\n questionText: FontOverrides;\n paragraphText: FontOverrides;\n };\n\n @State() private _fieldComponent: ComponentInterface;\n @State() private tallyData: {\n yesCount: number;\n noCount: number;\n naCount: number;\n totalFields: number;\n } = { yesCount: 0, noCount: 0, naCount: 0, totalFields: 0 };\n @State() private formApi: any = null;\n\n @Element() el: HTMLElement;\n\n @Watch('question')\n @Watch('questionNumber')\n @Watch('value')\n @Watch('disabled')\n @Watch('readonly')\n @Watch('styleOverrides')\n protected propChanged() {\n this.updateFieldComponent();\n }\n\n async componentWillLoad() {\n this.updateFieldComponent();\n if (this.question.fieldTypeId === UdpFormsFieldTypeEnum.Tally) {\n await this.initializeFormApiForTally();\n }\n }\n\n private async initializeFormApiForTally() {\n try {\n this.formApi = await useFormApi(this.el);\n\n if (this.formApi) {\n // Subscribe to form changes to update tally in real-time\n const unsubscribe = this.formApi.subscribe(\n () => {\n this.calculateTally();\n },\n { active: true, dirty: true, values: true }\n );\n\n // Store unsubscribe function for cleanup if needed\n (this as any).unsubscribeFormApi = unsubscribe;\n\n // Initial calculation\n this.calculateTally();\n }\n } catch (error) {\n console.error('Failed to initialize form API for tally:', error);\n }\n }\n\n private calculateTally() {\n if (!this.formApi || this.question.fieldTypeId !== UdpFormsFieldTypeEnum.Tally) {\n return;\n }\n\n try {\n const formValues = this.formApi.getState().values;\n\n const formElement = this.el.closest('stencil-form');\n if (!formElement) {\n return;\n }\n\n // Get all udp-question elements in the form\n const questionElements = formElement.querySelectorAll('udp-question');\n const yesNoFields: string[] = [];\n\n // Identify YesNo field types\n questionElements.forEach((questionEl: any) => {\n if (questionEl.question && questionEl.question.fieldTypeId === UdpFormsFieldTypeEnum.YesNo) {\n const fieldName = questionEl.question.name;\n if (fieldName) {\n const shouldInclude = this.shouldIncludeFieldInTally(fieldName);\n if (shouldInclude) {\n yesNoFields.push(fieldName);\n }\n }\n }\n });\n\n // Count Yes/No/NA responses\n let yesCount = 0;\n let noCount = 0;\n let naCount = 0;\n\n yesNoFields.forEach(fieldName => {\n const value = formValues[fieldName];\n\n if (value === 'true' || value === true) {\n yesCount++;\n } else if (value === 'false' || value === false) {\n noCount++;\n } else if (value === 'na') {\n naCount++;\n }\n });\n\n this.tallyData = {\n yesCount,\n noCount,\n naCount,\n totalFields: yesNoFields.length,\n };\n\n // Force a re-render to update the component\n this.updateFieldComponent();\n\n } catch (error) {\n console.error('Error calculating tally:', error);\n }\n }\n\n private shouldIncludeFieldInTally(fieldName: string): boolean {\n const fieldProps = this.question.fieldProperties;\n\n // If includeFields is specified, only include those fields\n if (fieldProps?.includeFields && fieldProps.includeFields.length > 0) {\n return fieldProps.includeFields.includes(fieldName);\n }\n\n // If excludeFields is specified, exclude those fields\n if (fieldProps?.excludeFields && fieldProps.excludeFields.length > 0) {\n return !fieldProps.excludeFields.includes(fieldName);\n }\n\n // Include all fields by default\n return true;\n }\n\n private updateFieldComponent() {\n this._fieldComponent = this.getFieldComponent();\n }\n\n private getFieldComponent(): ComponentInterface {\n const props = {\n name: this.question.name ?? `question-${this.questionNumber}`,\n required: this.question.required,\n };\n const fieldProps = { ...this.question.fieldProperties, id: this.questionNumber, disabled: this.disabled, readonly: this.readonly };\n switch (this.question.fieldTypeId) {\n case UdpFormsFieldTypeEnum.SingleLineText:\n return (\n <stencil-field {...props}>\n <text-field {...fieldProps} />\n </stencil-field>\n );\n case UdpFormsFieldTypeEnum.MultiLineText:\n return (\n <stencil-field {...props}>\n <text-area fullWidth={true} {...fieldProps} />\n </stencil-field>\n );\n case UdpFormsFieldTypeEnum.Checkbox:\n return (\n <stencil-field {...props}>\n <selectable-list\n valueKey=\"value\"\n displayKey=\"display\"\n multiSelect={true}\n useCheckbox={true}\n {...fieldProps}\n />\n </stencil-field>\n );\n case UdpFormsFieldTypeEnum.RadioButton:\n return (\n <stencil-field {...props}>\n <selectable-list\n valueKey=\"value\"\n displayKey=\"display\"\n useCheckbox={true}\n {...fieldProps}\n />\n </stencil-field>\n );\n case UdpFormsFieldTypeEnum.DropdownSingleSelect:\n case UdpFormsFieldTypeEnum.DropdownMultipleSelect:\n let options: { label: string; value: string } = fieldProps?.items?.map?.(items => ({ label: items.display, value: items.value, ...fieldProps }));\n return (\n <stencil-field {...props}>\n <udp-selector\n options={options ?? []}\n multiSelect={this.question.fieldTypeId === UdpFormsFieldTypeEnum.DropdownMultipleSelect}\n {...fieldProps}\n />\n </stencil-field>\n );\n case UdpFormsFieldTypeEnum.YesNo:\n return (\n <stencil-field {...props}>\n <selectable-list\n valueKey=\"value\"\n displayKey=\"display\"\n useCheckbox={true} // Use radio buttons\n multiSelect={false}\n items={[\n { value: 'true', display: 'Yes' },\n { value: 'false', display: 'No' },\n { value: 'na', display: 'Not Applicable' },\n ]}\n {...fieldProps}\n />\n </stencil-field>\n );\n case UdpFormsFieldTypeEnum.ListMultiSelect:\n return (\n <stencil-field {...props}>\n <selectable-list\n valueKey=\"value\"\n displayKey=\"display\"\n multiSelect={true}\n {...fieldProps}\n />\n </stencil-field>\n );\n case UdpFormsFieldTypeEnum.DateSelector:\n return (\n <stencil-field {...props}>\n <udp-date-selector\n min={fieldProps?.minDate}\n max={fieldProps?.maxDate}\n {...fieldProps}\n />\n </stencil-field>\n );\n case UdpFormsFieldTypeEnum.TimeSelector:\n return (\n <stencil-field {...props}>\n <udp-time-selector\n min={fieldProps?.minTime}\n max={fieldProps?.maxTime}\n {...fieldProps}\n />\n </stencil-field>\n );\n case UdpFormsFieldTypeEnum.DateTimeSelector:\n return (\n <stencil-field {...props}>\n <udp-datetime-selector\n max={fieldProps?.maxDateTime}\n min={fieldProps?.minDateTime}\n {...fieldProps}\n />\n </stencil-field>\n );\n case UdpFormsFieldTypeEnum.FileUpload:\n return (\n <stencil-field {...props}>\n <file-upload fullWidth={true} allowMultiple={false} {...fieldProps} />\n </stencil-field>\n );\n case UdpFormsFieldTypeEnum.Signature:\n return (\n <stencil-field {...props}>\n <signature-input {...fieldProps} value={this.value} />\n </stencil-field>\n );\n case UdpFormsFieldTypeEnum.Paragraph:\n return this.value ? <unity-typography id={`paragraphText${this.question.name}`} variant={this.styleOverrides?.paragraphText?.variant || 'body'} >{this.value}</unity-typography> : <div />;\n case UdpFormsFieldTypeEnum.Number:\n return (\n <stencil-field {...props}>\n <numeric-field {...fieldProps} />\n </stencil-field>\n );\n\n case UdpFormsFieldTypeEnum.Tally:\n return (\n <tally-display\n id={this.questionNumber}\n label={this.question.questionText || 'Response Tally'}\n yesCount={this.tallyData.yesCount}\n noCount={this.tallyData.noCount}\n naCount={this.tallyData.naCount}\n totalFields={this.tallyData.totalFields}\n {...fieldProps}\n required={false}\n />\n );\n case UdpFormsFieldTypeEnum.Hidden:\n default:\n return <div />;\n }\n }\n async componentDidLoad() {\n // If form API wasn't available during componentWillLoad, try again\n if (this.question.fieldTypeId === UdpFormsFieldTypeEnum.Tally && !this.formApi) {\n await this.initializeFormApiForTally();\n }\n\n // override the fonts based on style overrides\n const variantsAndOverrides = [];\n for (const override in this.styleOverrides) {\n variantsAndOverrides.push({\n id: override + this.question.name,\n fontOverride: this.styleOverrides?.[override]?.fontFamily,\n variant: this.styleOverrides?.[override]?.variant\n }\n )\n }\n variantsAndOverrides.forEach(override => {\n if(!fontOverrideMapping[override?.fontOverride] || !this.el || !this.el.shadowRoot) return;\n overrideFont(this.el?.shadowRoot?.getElementById?.(override.id),fontOverrideMapping[override?.fontOverride])\n\n })\n }\n render() {\n\n const component = this._fieldComponent;\n const titleText = `${this.question.fieldTypeId === UdpFormsFieldTypeEnum.Paragraph ? '' : `${this.questionNumber}.`} ${this.question.questionText} ${\n this.question.required && this.question.fieldTypeId !== UdpFormsFieldTypeEnum.Paragraph ? '*' : ''\n }`;\n if (!component) return null;\n return (\n <div class={this.question.fieldTypeId === UdpFormsFieldTypeEnum.Hidden ? 'hidden' : ''}>\n {this.question.questionText ? <unity-typography id={`questionText${this.question.name}`} variant={this.styleOverrides?.questionText?.variant || 'h3'} >{titleText}</unity-typography> : ''}\n {component}\n\n <unity-typography id={`helperText${this.question.name}`} variant={this.styleOverrides?.helperText?.variant || 'caption-text'} >{this.question.helperText}</unity-typography>\n </div>\n );\n }\n}\n"],"version":3}
|
|
@@ -22,8 +22,8 @@ import { d as defineCustomElement$a } from './p-C-wDzVCk.js';
|
|
|
22
22
|
import { d as defineCustomElement$9 } from './p-CDnOrzs3.js';
|
|
23
23
|
import { d as defineCustomElement$8 } from './p-DzaN4l_Y.js';
|
|
24
24
|
import { d as defineCustomElement$7 } from './p-DMcaGgHq.js';
|
|
25
|
-
import { d as defineCustomElement$6 } from './p-
|
|
26
|
-
import { d as defineCustomElement$5 } from './p-
|
|
25
|
+
import { d as defineCustomElement$6 } from './p-C9cEH65u.js';
|
|
26
|
+
import { d as defineCustomElement$5 } from './p-PqypuW_Q.js';
|
|
27
27
|
import { d as defineCustomElement$4 } from './p-BTIWOttf.js';
|
|
28
28
|
import { d as defineCustomElement$3 } from './p-Bdt-oOnd.js';
|
|
29
29
|
import { d as defineCustomElement$2 } from './p-DkppmXNM.js';
|
|
@@ -3,7 +3,7 @@ import { C as ConfigService } from './configService-Cn7PuhQz.js';
|
|
|
3
3
|
import axios from 'axios';
|
|
4
4
|
import { createForm } from 'final-form';
|
|
5
5
|
import debounce from 'lodash.debounce';
|
|
6
|
-
import { U as UdpFormsFieldTypeEnum, f as fontOverrideMapping, o as overrideFont } from './utils-
|
|
6
|
+
import { U as UdpFormsFieldTypeEnum, f as fontOverrideMapping, o as overrideFont } from './utils-vXSpJxEK.js';
|
|
7
7
|
|
|
8
8
|
function isUdpDriveFile(file) {
|
|
9
9
|
return file && typeof file === 'object' && 'driveFileId' in file;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { r as registerInstance, h } from './index-CaIWDYyq.js';
|
|
2
|
-
import { U as UdpFormsFieldTypeEnum, f as fontOverrideMapping, o as overrideFont } from './utils-
|
|
2
|
+
import { U as UdpFormsFieldTypeEnum, f as fontOverrideMapping, o as overrideFont } from './utils-vXSpJxEK.js';
|
|
3
3
|
|
|
4
4
|
const udpFormsRendererCss = ".background{background-color:var(--gray-01)}.item{padding-bottom:var(--spacing-02);}.items{display:flex;flex-direction:column;gap:var(--spacing-05);padding-top:var(--spacing-02);padding-bottom:var(--spacing-02)}.footer{display:flex;flex-direction:row-reverse}.submit{background-color:var(--primary-color);box-sizing:border-box;border:none;color:white;padding:8px 24px;font-size:14px;font-weight:600;cursor:pointer;transition:background-color 0.3s ease;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;min-width:48px;min-height:24px;}.submit:disabled{background-color:var(--gray-05);cursor:default}.submit-card{display:flex;flex-direction:row;justify-content:space-between}.form-content{margin-bottom:var(--spacing-05);background-color:white;padding:16px;display:flex;flex-direction:column;gap:var(--spacing-05)}.form-container{padding-top:var(--spacing-05);padding-bottom:var(--spacing-05)}.center-div{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%)}.finish-button{display:flex;flex-direction:column;justify-content:center}.header{background-color:var(--secondary-color);padding:var(--spacing-05) var(--spacing-05);color:var(--primary-color-contrast, #fff)}.auto-save-status{margin-top:var(--spacing-02);padding:var(--spacing-01) 0;font-size:12px;opacity:0.8}";
|
|
5
5
|
|
|
@@ -12,11 +12,11 @@ var UdpFormsFieldTypeEnum;
|
|
|
12
12
|
UdpFormsFieldTypeEnum[UdpFormsFieldTypeEnum["TimeSelector"] = 10] = "TimeSelector";
|
|
13
13
|
UdpFormsFieldTypeEnum[UdpFormsFieldTypeEnum["DateTimeSelector"] = 11] = "DateTimeSelector";
|
|
14
14
|
UdpFormsFieldTypeEnum[UdpFormsFieldTypeEnum["FileUpload"] = 12] = "FileUpload";
|
|
15
|
-
UdpFormsFieldTypeEnum[UdpFormsFieldTypeEnum["
|
|
16
|
-
UdpFormsFieldTypeEnum[UdpFormsFieldTypeEnum["
|
|
17
|
-
UdpFormsFieldTypeEnum[UdpFormsFieldTypeEnum["
|
|
18
|
-
UdpFormsFieldTypeEnum[UdpFormsFieldTypeEnum["
|
|
19
|
-
UdpFormsFieldTypeEnum[UdpFormsFieldTypeEnum["
|
|
15
|
+
UdpFormsFieldTypeEnum[UdpFormsFieldTypeEnum["YesNo"] = 13] = "YesNo";
|
|
16
|
+
UdpFormsFieldTypeEnum[UdpFormsFieldTypeEnum["Signature"] = 14] = "Signature";
|
|
17
|
+
UdpFormsFieldTypeEnum[UdpFormsFieldTypeEnum["Tally"] = 15] = "Tally";
|
|
18
|
+
UdpFormsFieldTypeEnum[UdpFormsFieldTypeEnum["Number"] = 16] = "Number";
|
|
19
|
+
UdpFormsFieldTypeEnum[UdpFormsFieldTypeEnum["Paragraph"] = 17] = "Paragraph";
|
|
20
20
|
})(UdpFormsFieldTypeEnum || (UdpFormsFieldTypeEnum = {}));
|
|
21
21
|
|
|
22
22
|
const overrideFont = (element, cssVariable) => {
|
|
@@ -47,6 +47,6 @@ const fontOverrideMapping = {
|
|
|
47
47
|
};
|
|
48
48
|
|
|
49
49
|
export { UdpFormsFieldTypeEnum as U, fontOverrideMapping as f, overrideFont as o };
|
|
50
|
-
//# sourceMappingURL=utils-
|
|
50
|
+
//# sourceMappingURL=utils-vXSpJxEK.js.map
|
|
51
51
|
|
|
52
|
-
//# sourceMappingURL=utils-
|
|
52
|
+
//# sourceMappingURL=utils-vXSpJxEK.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils-vXSpJxEK.js","sources":["src/components/my-component/UI/forms/udp-forms/enums.ts","src/components/my-component/UI/forms/udp-forms/utils.ts"],"sourcesContent":["export enum UdpFormsFieldTypeEnum {\n Hidden = 1,\n SingleLineText = 2,\n MultiLineText = 3,\n Checkbox = 4,\n RadioButton = 5,\n DropdownSingleSelect = 6,\n DropdownMultipleSelect = 7,\n ListMultiSelect = 8,\n DateSelector = 9,\n TimeSelector = 10,\n DateTimeSelector = 11,\n FileUpload = 12,\n YesNo = 13,\n Signature = 14,\n Tally = 15,\n Number = 16,\n Paragraph = 17\n }\n","export const overrideFont = (element: HTMLElement, cssVariable) => {\n if(element?.shadowRoot?.lastElementChild){ // this returns null in react for some instances\n element?.shadowRoot?.lastElementChild?.setAttribute?.('style', `font-family: var(${cssVariable})`)\n return;\n }\n const observer = new MutationObserver((mutationsList, observer) => {\n mutationsList.forEach(mutation => {\n if (mutation.type === 'childList' && mutation.addedNodes.length > 0) {\n mutation.addedNodes.forEach(node => {\n if (node.nodeType === Node.ELEMENT_NODE) {\n (node as HTMLElement)?.setAttribute?.('style', `font-family: var(${cssVariable})`);\n observer.disconnect(); // Stop observing once the target is found\n }\n });\n }\n });\n });\n\n if (element?.shadowRoot) {\n observer.observe(element.shadowRoot, { childList: true });\n }\n };\n\n\nexport const fontOverrideMapping = {\n Arial: \"--font-override-arial\"\n}"],"names":[],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{r as i,h as o}from"./p-CaIWDYyq.js";import{U as t,f as n,o as s}from"./p-
|
|
2
|
-
//# sourceMappingURL=p-
|
|
1
|
+
import{r as i,h as o}from"./p-CaIWDYyq.js";import{U as t,f as n,o as s}from"./p-vXSpJxEK.js";const r=".background{background-color:var(--gray-01)}.item{padding-bottom:var(--spacing-02);}.items{display:flex;flex-direction:column;gap:var(--spacing-05);padding-top:var(--spacing-02);padding-bottom:var(--spacing-02)}.footer{display:flex;flex-direction:row-reverse}.submit{background-color:var(--primary-color);box-sizing:border-box;border:none;color:white;padding:8px 24px;font-size:14px;font-weight:600;cursor:pointer;transition:background-color 0.3s ease;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;min-width:48px;min-height:24px;}.submit:disabled{background-color:var(--gray-05);cursor:default}.submit-card{display:flex;flex-direction:row;justify-content:space-between}.form-content{margin-bottom:var(--spacing-05);background-color:white;padding:16px;display:flex;flex-direction:column;gap:var(--spacing-05)}.form-container{padding-top:var(--spacing-05);padding-bottom:var(--spacing-05)}.center-div{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%)}.finish-button{display:flex;flex-direction:column;justify-content:center}.header{background-color:var(--secondary-color);padding:var(--spacing-05) var(--spacing-05);color:var(--primary-color-contrast, #fff)}.auto-save-status{margin-top:var(--spacing-02);padding:var(--spacing-01) 0;font-size:12px;opacity:0.8}";const e=i=>{if(i===null||i===undefined)return true;if(typeof i==="string"&&i.trim()==="")return true;if(Array.isArray(i)&&i.length===0)return true;if(typeof i==="object"&&i!==null&&!Array.isArray(i)){if(i.driveId&&i.fileId){return false}if(i instanceof File){return i.size===0}return Object.keys(i).length===0}return false};const l=class{constructor(o){i(this,o);this.initialValues={};this.submitSuccessful=false;this.loading=false;this.isSaving=false;this.saveError=null;this.showAutoSaveStatus=false;this.disabled=false;this.readonly=false;this.titleId="udp-forms-title";this.descriptionId="udp-forms-description";this.validate=i=>{var o;console.log("Validation called with values:",i);const n={};for(const s of((o=this.form)===null||o===void 0?void 0:o.formQuestions)||[]){if(s.required&&s.fieldTypeId!==t.Tally){const o=i[s.name];if(e(o)){n[s.name]="This field is required";console.log(`Validation error for ${s.name}: required field is empty`)}}}console.log("Validation errors:",n);return n};this.handleSubmit=async i=>{console.log("Form submit handler called with values:",i);try{if(this.onSubmit){console.log("Calling onSubmit prop...");await this.onSubmit(i);console.log("onSubmit completed successfully")}else{console.error("onSubmit prop is not defined!")}}catch(i){console.error("Error in onSubmit:",i)}};this.handleFormInvalid=i=>{console.log("Form validation failed with errors:",i)}}componentDidLoad(){this.overrideStyles()}componentDidUpdate(){this.overrideStyles()}overrideStyles(){var i;const o=(i=this.el)===null||i===void 0?void 0:i.shadowRoot;o===null||o===void 0?void 0:o.querySelectorAll("unity-typography").forEach((i=>{var o,t,r,e;const l=i.id===this.titleId?(t=(o=this.form)===null||o===void 0?void 0:o.styleOverrides)===null||t===void 0?void 0:t.titleText:i.id===this.descriptionId?(e=(r=this.form)===null||r===void 0?void 0:r.styleOverrides)===null||e===void 0?void 0:e.paragraphText:{};if((l===null||l===void 0?void 0:l.fontFamily)&&n[l.fontFamily]){s(i,n[l.fontFamily])}if(l===null||l===void 0?void 0:l.variant){i.setAttribute("variant",l.variant)}}))}render(){var i,n,s,r,e,l,a,d,c;if(!this.form){return o("div",null,"Loading...")}let u=1;const v=new Set;this.form.formQuestions.forEach((i=>v.add(i.section)));const h=[...v].sort(((i,o)=>i-o));const p=[t.Hidden,t.Paragraph];const f={};if((s=(n=(i=this.form)===null||i===void 0?void 0:i.styleOverrides)===null||n===void 0?void 0:n.background)===null||s===void 0?void 0:s.backgroundImage);else if((l=(e=(r=this.form)===null||r===void 0?void 0:r.styleOverrides)===null||e===void 0?void 0:e.background)===null||l===void 0?void 0:l.backgroundColor){f.backgroundColor=(c=(d=(a=this.form)===null||a===void 0?void 0:a.styleOverrides)===null||d===void 0?void 0:d.background)===null||c===void 0?void 0:c.backgroundColor}return o("div",{class:"background",style:f},o("udp-container",{maxWidth:"md"},o("div",{class:"form-container"},!this.submitSuccessful?o("stencil-form",{handleSubmit:this.handleSubmit,initialValues:this.initialValues,validate:this.validate,handleFormChange:this.onChange,onStencilFormInvalidEvent:this.handleFormInvalid},h.map(((i,t)=>{var n,s,r,e,l,a,d,c;return o("div",null,i===h[0]&&o("div",{class:"header",style:((s=(n=this.form)===null||n===void 0?void 0:n.styleOverrides)===null||s===void 0?void 0:s.headerBackgroundColor)?{backgroundColor:(e=(r=this.form)===null||r===void 0?void 0:r.styleOverrides)===null||e===void 0?void 0:e.headerBackgroundColor}:""},o("unity-typography",{id:this.titleId,variant:"h6",color:"inherit"},this.form.name),o("unity-typography",{id:this.descriptionId,variant:(c=(d=(a=(l=this.form)===null||l===void 0?void 0:l.styleOverrides)===null||a===void 0?void 0:a.paragraphText)===null||d===void 0?void 0:d.variant)!==null&&c!==void 0?c:"body",color:"inherit"},this.form.description),this.showAutoSaveStatus&&o("div",{class:"auto-save-status"},this.saveError&&o("unity-typography",{variant:"body",color:"secondary"},this.saveError))),o("div",{class:"form-content"},o("div",{class:"items"},this.form.formQuestions.filter((o=>o.section===i)).sort(((i,o)=>i.questionOrder-o.questionOrder)).map((i=>{var t,n,s;const r=p.includes(i.fieldTypeId);const e=u;if(!r)u++;return o("div",{class:"item"},o("udp-question",{styleOverrides:{helperText:(t=this.form.styleOverrides)===null||t===void 0?void 0:t.helperText,paragraphText:(n=this.form.styleOverrides)===null||n===void 0?void 0:n.paragraphText,questionText:(s=this.form.styleOverrides)===null||s===void 0?void 0:s.questionText},question:i,questionNumber:e,value:this.initialValues[i.name],disabled:this.disabled,readonly:this.readonly}))}))),t===h.length-1&&o("div",{class:"footer"},o("input",{disabled:this.loading||this.disabled||this.readonly,type:"submit",value:"Submit",class:"submit",id:"udpRecord-udp-forms-renderer-Submit",onClick:()=>{console.log("Submit button clicked")}}))))}))):o("div",{class:"center-div"},o("udp-ambient-card",null,o("div",{class:"submit-card"},o("unity-typography",null,"Thank you for your submission!"),o("div",{class:"finish-button"},o("custom-button",{onClick:this.onFinish},"Finish"))))))))}};l.style=r;export{l as udp_forms_ui};
|
|
2
|
+
//# sourceMappingURL=p-00c1ce44.entry.js.map
|