@icure/form 3.0.25 → 3.0.28
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/.yarn/cache/@lit-reactive-element-npm-2.1.0-77512b732b-fb36e9f64b.zip +0 -0
- package/.yarn/cache/@lit-task-npm-1.0.2-01d3dd32e9-22e1265a62.zip +0 -0
- package/.yarn/install-state.gz +0 -0
- package/components/common/field-with-options.d.ts +2 -2
- package/components/common/field-with-options.js.map +1 -1
- package/components/common/field.d.ts +9 -3
- package/components/common/field.js +16 -0
- package/components/common/field.js.map +1 -1
- package/components/icure-button-group/index.d.ts +5 -3
- package/components/icure-button-group/index.js +3 -3
- package/components/icure-button-group/index.js.map +1 -1
- package/components/icure-date-picker/index.d.ts +4 -1
- package/components/icure-date-picker/index.js +5 -5
- package/components/icure-date-picker/index.js.map +1 -1
- package/components/icure-dropdown-field/index.d.ts +5 -2
- package/components/icure-dropdown-field/index.js +6 -6
- package/components/icure-dropdown-field/index.js.map +1 -1
- package/components/icure-form/fields/button-group/checkbox.d.ts +2 -1
- package/components/icure-form/fields/button-group/checkbox.js +1 -1
- package/components/icure-form/fields/button-group/checkbox.js.map +1 -1
- package/components/icure-form/fields/button-group/radio-button.d.ts +2 -1
- package/components/icure-form/fields/button-group/radio-button.js +1 -1
- package/components/icure-form/fields/button-group/radio-button.js.map +1 -1
- package/components/icure-form/fields/date-picker/date-picker.d.ts +2 -1
- package/components/icure-form/fields/date-picker/date-picker.js +1 -1
- package/components/icure-form/fields/date-picker/date-picker.js.map +1 -1
- package/components/icure-form/fields/date-picker/date-time-picker.d.ts +2 -1
- package/components/icure-form/fields/date-picker/date-time-picker.js +1 -1
- package/components/icure-form/fields/date-picker/date-time-picker.js.map +1 -1
- package/components/icure-form/fields/date-picker/time-picker.d.ts +2 -1
- package/components/icure-form/fields/date-picker/time-picker.js +1 -1
- package/components/icure-form/fields/date-picker/time-picker.js.map +1 -1
- package/components/icure-form/fields/dropdown/dropdown-field.d.ts +1 -1
- package/components/icure-form/fields/dropdown/dropdown-field.js +1 -1
- package/components/icure-form/fields/dropdown/dropdown-field.js.map +1 -1
- package/components/icure-form/fields/items-list-field/items-list-field.d.ts +2 -1
- package/components/icure-form/fields/items-list-field/items-list-field.js +1 -1
- package/components/icure-form/fields/items-list-field/items-list-field.js.map +1 -1
- package/components/icure-form/fields/measure-field/measure-field.d.ts +2 -1
- package/components/icure-form/fields/measure-field/measure-field.js +1 -1
- package/components/icure-form/fields/measure-field/measure-field.js.map +1 -1
- package/components/icure-form/fields/number-field/number-field.d.ts +2 -1
- package/components/icure-form/fields/number-field/number-field.js +1 -1
- package/components/icure-form/fields/number-field/number-field.js.map +1 -1
- package/components/icure-form/fields/text-field/text-field.d.ts +2 -1
- package/components/icure-form/fields/text-field/text-field.js +1 -1
- package/components/icure-form/fields/text-field/text-field.js.map +1 -1
- package/components/icure-form/fields/token-field/token-field.d.ts +2 -1
- package/components/icure-form/fields/token-field/token-field.js +1 -1
- package/components/icure-form/fields/token-field/token-field.js.map +1 -1
- package/components/icure-form/index.d.ts +4 -2
- package/components/icure-form/index.js +39 -17
- package/components/icure-form/index.js.map +1 -1
- package/components/icure-form/renderer/form/form.js +180 -142
- package/components/icure-form/renderer/form/form.js.map +1 -1
- package/components/icure-form/renderer/index.d.ts +1 -1
- package/components/icure-form/renderer/index.js.map +1 -1
- package/components/icure-text-field/index.d.ts +4 -2
- package/components/icure-text-field/index.js +12 -12
- package/components/icure-text-field/index.js.map +1 -1
- package/generic/model.d.ts +3 -3
- package/generic/model.js.map +1 -1
- package/icure/form-values-container.d.ts +9 -8
- package/icure/form-values-container.js +167 -138
- package/icure/form-values-container.js.map +1 -1
- package/package.json +2 -1
- package/utils/fields-values-provider.d.ts +1 -1
- package/utils/fields-values-provider.js +12 -4
- package/utils/fields-values-provider.js.map +1 -1
- package/utils/interpreter.d.ts +1 -1
- package/utils/interpreter.js +11 -2
- package/utils/interpreter.js.map +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"form.js","sourceRoot":"","sources":["../../../../../tmp/components/icure-form/renderer/form/form.ts"],"names":[],"mappings":"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","sourcesContent":["import { html, nothing, TemplateResult } from 'lit'\nimport { Renderer, RendererProps } from '../index'\nimport { fieldValuesProvider, getValidationError, handleMetadataChangedProvider, handleValueChangedProvider } from '../../../../utils/fields-values-provider'\nimport { FieldMetadata, FieldValue, Form, Field, Group, Subform, SortOptions } from '../../../model'\nimport { FormValuesContainer, Suggestion } from '../../../../generic'\n\nimport { defaultTranslationProvider } from '../../../../utils/languages'\nimport { getLabels } from '../../../common/utils'\nimport { filterAndSortOptionsFromFieldDefinition, sortSuggestions } from '../../../../utils/code-utils'\n\nimport './form-selection-button'\nimport { currentDate, currentDateTime, currentTime } from '../../../../utils/dates'\n\nexport const render: Renderer = (\n\tform: Form,\n\tprops: RendererProps,\n\tformsValueContainer?: FormValuesContainer<FieldValue, FieldMetadata>,\n\ttranslationProvider?: (language: string, text: string) => string,\n\townersProvider: (terms: string[], ids?: string[], specialties?: string[]) => Promise<Suggestion[]> = async () => [],\n\toptionsProvider?: (language: string, codifications: string[], terms?: string[]) => Promise<Suggestion[]>,\n\tactionListener: (event: string, payload: unknown) => void = () => undefined,\n\tlanguages?: { [iso: string]: string },\n\treadonly?: boolean,\n\tdisplayMetadata?: boolean,\n\tsectionWrapper?: (index: number, section: () => TemplateResult) => TemplateResult,\n) => {\n\tconst composedOptionsProvider =\n\t\toptionsProvider && form.codifications\n\t\t\t? async (language: string, codifications: string[], terms?: string[], sortOptions?: SortOptions): Promise<Suggestion[]> => {\n\t\t\t\t\tconst originalOptions = optionsProvider ? await optionsProvider(language, codifications, terms) : []\n\t\t\t\t\treturn sortSuggestions(\n\t\t\t\t\t\toriginalOptions.concat(\n\t\t\t\t\t\t\tform.codifications\n\t\t\t\t\t\t\t\t?.filter((c) => codifications.includes(c.type))\n\t\t\t\t\t\t\t\t?.flatMap((c) =>\n\t\t\t\t\t\t\t\t\tc.codes\n\t\t\t\t\t\t\t\t\t\t.filter((c) => (terms ?? []).map((st) => st.toLowerCase()).every((st) => c.label[language].toLowerCase().includes(st)))\n\t\t\t\t\t\t\t\t\t\t.map((c) => ({ id: c.id, label: c.label, text: c.label[language], terms: terms ?? [] })),\n\t\t\t\t\t\t\t\t) ?? [],\n\t\t\t\t\t\t),\n\t\t\t\t\t\tlanguage,\n\t\t\t\t\t\tsortOptions,\n\t\t\t\t\t)\n\t\t\t }\n\t\t\t: optionsProvider\n\t\t\t? (language: string, codifications: string[], terms?: string[], sortOptions?: SortOptions): Promise<Suggestion[]> => {\n\t\t\t\t\treturn optionsProvider?.(language, codifications, terms).then((codes) => sortSuggestions(codes, language, sortOptions)) ?? Promise.resolve([])\n\t\t\t }\n\t\t\t: undefined\n\n\tconst h = function (level: number, className = '', content: TemplateResult): TemplateResult {\n\t\treturn level === 1\n\t\t\t? html`<h1 class=\"${className}\">${content}</h1>`\n\t\t\t: level === 2\n\t\t\t? html`<h2 class=\"${className}\">${content}</h2>`\n\t\t\t: level === 3\n\t\t\t? html`<h3 class=\"${className}\">${content}</h3>`\n\t\t\t: level === 4\n\t\t\t? html`<h4 class=\"${className}\">${content}</h4>`\n\t\t\t: level === 5\n\t\t\t? html`<h5 class=\"${className}\">${content}</h5>`\n\t\t\t: html`<h6 class=\"${className}\">${content}</h6>`\n\t}\n\n\tfunction renderGroup(fg: Group, fgSpan: number, level: number) {\n\t\tconst subElements = (fg.fields ?? []).map((fieldOrGroup: Field | Group) => renderFieldGroupOrSubform(fieldOrGroup, level + 1)).filter((x) => !!x && x !== nothing)\n\t\treturn subElements.length\n\t\t\t? html`<div class=\"${['group', fg.borderless ? undefined : 'bordered'].filter((x) => !!x).join(' ')}\" style=\"${calculateFieldOrGroupSize(fgSpan, 1)}\">\n\t\t\t\t\t${fg.borderless ? nothing : html`<div>${h(level, '', html`${fg.group}`)}</div>`}\n\t\t\t\t\t<div class=\"icure-form\">${subElements}</div>\n\t\t\t </div>`\n\t\t\t: nothing\n\t}\n\n\tfunction renderSubform(fg: Subform, fgSpan: number, level: number) {\n\t\tconst children = formsValueContainer?.getChildren()?.filter((c) => c.getLabel() === fg.id)\n\t\tconst tp = translationProvider ?? (form.translations && defaultTranslationProvider(form.translations))\n\t\treturn html`<div class=\"subform\" style=\"${calculateFieldOrGroupSize(fgSpan, 1)}\">\n\t\t\t<div class=\"subform__heading\">\n\t\t\t\t${h(level, 'subform__heading__title', html`${(props.language && fg.shortLabel ? tp?.(props.language, fg.shortLabel) : fg.shortLabel) ?? ''}`)}\n\t\t\t\t${readonly\n\t\t\t\t\t? nothing\n\t\t\t\t\t: html`<form-selection-button\n\t\t\t\t\t\t\t.label=\"${fg.labels.add ?? 'Add subform'}\"\n\t\t\t\t\t\t\t.forms=\"${Object.entries(fg.forms)}\"\n\t\t\t\t\t\t\t.formAdded=\"${(title: string, form: Form) => {\n\t\t\t\t\t\t\t\tform.id && formsValueContainer?.addChild(fg.id, form.id, fg.shortLabel ?? '')\n\t\t\t\t\t\t\t}}\"\n\t\t\t\t\t\t\t.translationProvider=\"${tp}\"\n\t\t\t\t\t\t\t.language=\"${props.language}\"\n\t\t\t\t\t ></form-selection-button>`}\n\t\t\t</div>\n\t\t\t${children\n\t\t\t\t?.map((child) => {\n\t\t\t\t\tconst childForm = Object.values(fg.forms).find((f) => f.id === child.getFormId())\n\t\t\t\t\tconst title = childForm?.form ?? childForm?.description\n\t\t\t\t\tconst localisedTitle = (title && tp && props.language ? tp?.(props.language, title) : title) ?? ''\n\t\t\t\t\tconst localisedRemove = (fg.labels.remove && tp && props.language ? tp?.(props.language, fg.labels.remove) : fg.labels.remove) ?? 'Remove'\n\t\t\t\t\treturn (\n\t\t\t\t\t\tchildForm &&\n\t\t\t\t\t\thtml`\n\t\t\t\t\t\t\t<div class=\"subform__child\">\n\t\t\t\t\t\t\t\t<h3 class=\"subform__child__title\">${localisedTitle}</h3>\n\t\t\t\t\t\t\t\t${render(childForm, props, child, translationProvider, ownersProvider, optionsProvider, actionListener, languages, readonly, displayMetadata)}\n\t\t\t\t\t\t\t\t${readonly ? nothing : html`<button class=\"subform__removeBtn\" @click=\"${() => formsValueContainer?.removeChild?.(child)}\">${localisedRemove}</button>`}\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t`\n\t\t\t\t\t)\n\t\t\t\t})\n\t\t\t\t.filter((x) => !!x)}\n\t\t</div>`\n\t}\n\n\tfunction renderTextField(fgSpan: number, fgRowSpan: number, fg: Field) {\n\t\treturn html`<icure-form-text-field\n\t\t\tclass=\"icure-form-field\"\n\t\t\tstyle=\"${calculateFieldOrGroupSize(fgSpan, fgRowSpan, fg.styleOptions?.width)}\"\n\t\t\tlabel=\"${fg.field}\"\n\t\t\tvalue=\"${fg.value}\"\n\t\t\t.displayedLabels=\"${getLabels(fg)}\"\n\t\t\t.displayMetadata=\"${displayMetadata}\"\n\t\t\t.multiline=\"${fg.multiline || false}\"\n\t\t\t.lines=${fgRowSpan}\n\t\t\t.defaultLanguage=\"${props.language}\"\n\t\t\t.languages=\"${languages}\"\n\t\t\t.linksProvider=${fg.options?.linksProvider}\n\t\t\t.suggestionProvider=${fg.options?.suggestionProvider}\n\t\t\t.ownersProvider=${ownersProvider}\n\t\t\t.translationProvider=${translationProvider ?? (form.translations && defaultTranslationProvider(form.translations))}\n\t\t\t.validationErrorsProvider=\"${getValidationError(formsValueContainer, fg)}\"\n\t\t\t.codeColorProvider=${fg.options?.codeColorProvider}\n\t\t\t.linkColorProvider=${fg.options?.linkColorProvider}\n\t\t\t.codeContentProvider=${fg.options?.codeContentProvider}\n\t\t\t.valueProvider=\"${formsValueContainer && fieldValuesProvider(formsValueContainer, fg)}\"\n\t\t\t.metadataProvider=${formsValueContainer && formsValueContainer.getMetadata.bind(formsValueContainer)}\n\t\t\t.handleValueChanged=${handleValueChangedProvider(formsValueContainer, fg, props.defaultOwner)}\n\t\t\t.handleMetadataChanged=${handleMetadataChangedProvider(formsValueContainer)}\n\t\t\t.styleOptions=\"${fg.styleOptions}\"\n\t\t\t.readonly=\"${readonly || fg.readonly || (fg.computedProperties?.readonly ? !formsValueContainer?.compute(fg.computedProperties?.readonly) : false)}\"\n\t\t></icure-form-text-field>`\n\t}\n\n\tfunction renderTokenField(fgSpan: number, fgRowSpan: number, fg: Field) {\n\t\treturn html`<icure-form-token-field\n\t\t\tclass=\"icure-form-field\"\n\t\t\tstyle=\"${calculateFieldOrGroupSize(fgSpan, fgRowSpan, fg.styleOptions?.width)}\"\n\t\t\tlabel=\"${fg.field}\"\n\t\t\tvalue=\"${fg.value}\"\n\t\t\t.displayedLabels=\"${getLabels(fg)}\"\n\t\t\t.displayMetadata=\"${displayMetadata}\"\n\t\t\t.multiline=\"${fg.multiline || false}\"\n\t\t\t.lines=${fgRowSpan}\n\t\t\t.defaultLanguage=\"${props.language}\"\n\t\t\t.suggestionProvider=${fg.options?.suggestionProvider}\n\t\t\t.ownersProvider=${ownersProvider}\n\t\t\t.translationProvider=${translationProvider ?? (form.translations && defaultTranslationProvider(form.translations))}\n\t\t\t.validationErrorsProvider=\"${getValidationError(formsValueContainer, fg)}\"\n\t\t\t.valueProvider=\"${formsValueContainer && fieldValuesProvider(formsValueContainer, fg)}\"\n\t\t\t.metadataProvider=${formsValueContainer && formsValueContainer.getMetadata.bind(formsValueContainer)}\n\t\t\t.handleValueChanged=${handleValueChangedProvider(formsValueContainer, fg, props.defaultOwner)}\n\t\t\t.handleMetadataChanged=${handleMetadataChangedProvider(formsValueContainer)}\n\t\t\t.styleOptions=\"${fg.styleOptions}\"\n\t\t\t.readonly=\"${readonly || fg.readonly || (fg.computedProperties?.readonly ? !formsValueContainer?.compute(fg.computedProperties?.readonly) : false)}\"\n\t\t></icure-form-token-field>`\n\t}\n\n\tfunction renderItemsListField(fgSpan: number, fgRowSpan: number, fg: Field) {\n\t\treturn html`<icure-form-items-list-field\n\t\t\tclass=\"icure-form-field\"\n\t\t\tstyle=\"${calculateFieldOrGroupSize(fgSpan, fgRowSpan, fg.styleOptions?.width)}\"\n\t\t\tlabel=\"${fg.field}\"\n\t\t\tvalue=\"${fg.value}\"\n\t\t\t.displayedLabels=\"${getLabels(fg)}\"\n\t\t\t.displayMetadata=\"${displayMetadata}\"\n\t\t\t.multiline=\"${fg.multiline || false}\"\n\t\t\t.lines=${fgRowSpan}\n\t\t\t.defaultLanguage=\"${props.language}\"\n\t\t\t.suggestionProvider=${fg.options?.suggestionProvider}\n\t\t\t.ownersProvider=${ownersProvider}\n\t\t\t.translationProvider=${translationProvider ?? (form.translations && defaultTranslationProvider(form.translations))}\n\t\t\t.validationErrorsProvider=\"${getValidationError(formsValueContainer, fg)}\"\n\t\t\t.valueProvider=\"${formsValueContainer && fieldValuesProvider(formsValueContainer, fg)}\"\n\t\t\t.metadataProvider=${formsValueContainer && formsValueContainer.getMetadata.bind(formsValueContainer)}\n\t\t\t.handleValueChanged=${handleValueChangedProvider(formsValueContainer, fg, props.defaultOwner)}\n\t\t\t.handleMetadataChanged=${handleMetadataChangedProvider(formsValueContainer)}\n\t\t\t.styleOptions=\"${fg.styleOptions}\"\n\t\t\t.readonly=\"${readonly || fg.readonly || (fg.computedProperties?.readonly ? !formsValueContainer?.compute(fg.computedProperties?.readonly) : false)}\"\n\t\t></icure-form-items-list-field>`\n\t}\n\n\tfunction renderMeasureField(fgSpan: number, fgRowSpan: number, fg: Field) {\n\t\treturn html`<icure-form-measure-field\n\t\t\tstyle=\"${calculateFieldOrGroupSize(fgSpan, fgRowSpan)}\"\n\t\t\tclass=\"icure-form-field\"\n\t\t\tlabel=\"${fg.field}\"\n\t\t\t.displayedLabels=\"${getLabels(fg)}\"\n\t\t\t.displayMetadata=\"${displayMetadata}\"\n\t\t\tvalue=\"${fg.value}\"\n\t\t\tunit=\"${fg.unit}\"\n\t\t\t.defaultLanguage=\"${props.language}\"\n\t\t\t.translationProvider=${translationProvider ?? (form.translations && defaultTranslationProvider(form.translations))}\n\t\t\t.validationErrorsProvider=\"${getValidationError(formsValueContainer, fg)}\"\n\t\t\t.valueProvider=\"${formsValueContainer && fieldValuesProvider(formsValueContainer, fg)}\"\n\t\t\t.metadataProvider=${formsValueContainer && formsValueContainer.getMetadata.bind(formsValueContainer)}\n\t\t\t.handleValueChanged=${handleValueChangedProvider(formsValueContainer, fg, props.defaultOwner)}\n\t\t\t.handleMetadataChanged=${handleMetadataChangedProvider(formsValueContainer)}\n\t\t\t.styleOptions=\"${fg.styleOptions}\"\n\t\t\t.readonly=\"${readonly || fg.readonly || (fg.computedProperties?.readonly ? !formsValueContainer?.compute(fg.computedProperties?.readonly) : false)}\"\n\t\t></icure-form-measure-field>`\n\t}\n\n\tfunction renderNumberField(fgSpan: number, fgRowSpan: number, fg: Field) {\n\t\treturn html`<icure-form-number-field\n\t\t\tstyle=\"${calculateFieldOrGroupSize(fgSpan, fgRowSpan)}\"\n\t\t\tclass=\"icure-form-field\"\n\t\t\tlabel=\"${fg.field}\"\n\t\t\t.displayedLabels=\"${getLabels(fg)}\"\n\t\t\t.displayMetadata=\"${displayMetadata}\"\n\t\t\tvalue=\"${fg.value}\"\n\t\t\t.defaultLanguage=\"${props.language}\"\n\t\t\t.translationProvider=${translationProvider ?? (form.translations && defaultTranslationProvider(form.translations))}\n\t\t\t.validationErrorsProvider=\"${getValidationError(formsValueContainer, fg)}\"\n\t\t\t.valueProvider=\"${formsValueContainer && fieldValuesProvider(formsValueContainer, fg)}\"\n\t\t\t.metadataProvider=${formsValueContainer && formsValueContainer.getMetadata.bind(formsValueContainer)}\n\t\t\t.handleValueChanged=${handleValueChangedProvider(formsValueContainer, fg, props.defaultOwner)}\n\t\t\t.handleMetadataChanged=${handleMetadataChangedProvider(formsValueContainer)}\n\t\t\t.styleOptions=\"${fg.styleOptions}\"\n\t\t\t.readonly=\"${readonly || fg.readonly || (fg.computedProperties?.readonly ? !formsValueContainer?.compute(fg.computedProperties?.readonly) : false)}\"\n\t\t></icure-form-number-field>`\n\t}\n\n\tfunction renderDatePicker(fgSpan: number, fgRowSpan: number, fg: Field) {\n\t\treturn html`<icure-form-date-picker\n\t\t\tstyle=\"${calculateFieldOrGroupSize(fgSpan, fgRowSpan)}\"\n\t\t\tclass=\"icure-form-field\"\n\t\t\tlabel=\"${fg.field}\"\n\t\t\t.displayedLabels=\"${getLabels(fg)}\"\n\t\t\t.displayMetadata=\"${displayMetadata}\"\n\t\t\tvalue=\"${fg.now ? currentDate() : fg.value}\"\n\t\t\t.defaultLanguage=\"${props.language}\"\n\t\t\t.translationProvider=${translationProvider ?? (form.translations && defaultTranslationProvider(form.translations))}\n\t\t\t.validationErrorsProvider=\"${getValidationError(formsValueContainer, fg)}\"\n\t\t\t.valueProvider=\"${formsValueContainer && fieldValuesProvider(formsValueContainer, fg)}\"\n\t\t\t.metadataProvider=${formsValueContainer && formsValueContainer.getMetadata.bind(formsValueContainer)}\n\t\t\t.handleValueChanged=${handleValueChangedProvider(formsValueContainer, fg, props.defaultOwner)}\n\t\t\t.handleMetadataChanged=${handleMetadataChangedProvider(formsValueContainer)}\n\t\t\t.styleOptions=\"${fg.styleOptions}\"\n\t\t\t.readonly=\"${readonly || fg.readonly || (fg.computedProperties?.readonly ? !formsValueContainer?.compute(fg.computedProperties?.readonly) : false)}\"\n\t\t></icure-form-date-picker>`\n\t}\n\n\tfunction renderTimePicker(fgSpan: number, fgRowSpan: number, fg: Field) {\n\t\treturn html`<icure-form-time-picker\n\t\t\tstyle=\"${calculateFieldOrGroupSize(fgSpan, fgRowSpan)}\"\n\t\t\tclass=\"icure-form-field\"\n\t\t\tlabel=\"${fg.field}\"\n\t\t\t.displayedLabels=\"${getLabels(fg)}\"\n\t\t\t.displayMetadata=\"${displayMetadata}\"\n\t\t\tvalue=\"${fg.now ? currentTime() : fg.value}\"\n\t\t\t.defaultLanguage=\"${props.language}\"\n\t\t\t.translationProvider=${translationProvider ?? (form.translations && defaultTranslationProvider(form.translations))}\n\t\t\t.validationErrorsProvider=\"${getValidationError(formsValueContainer, fg)}\"\n\t\t\t.valueProvider=\"${formsValueContainer && fieldValuesProvider(formsValueContainer, fg)}\"\n\t\t\t.metadataProvider=${formsValueContainer && formsValueContainer.getMetadata.bind(formsValueContainer)}\n\t\t\t.handleValueChanged=${handleValueChangedProvider(formsValueContainer, fg, props.defaultOwner)}\n\t\t\t.handleMetadataChanged=${handleMetadataChangedProvider(formsValueContainer)}\n\t\t\t.styleOptions=\"${fg.styleOptions}\"\n\t\t\t.readonly=\"${readonly || fg.readonly || (fg.computedProperties?.readonly ? !formsValueContainer?.compute(fg.computedProperties?.readonly) : false)}\"\n\t\t></icure-form-time-picker>`\n\t}\n\n\tfunction renderDateTimePicker(fgSpan: number, fgRowSpan: number, fg: Field) {\n\t\treturn html`<icure-form-date-time-picker\n\t\t\tstyle=\"${calculateFieldOrGroupSize(fgSpan, fgRowSpan)}\"\n\t\t\tclass=\"icure-form-field\"\n\t\t\tlabel=\"${fg.field}\"\n\t\t\t.displayedLabels=\"${getLabels(fg)}\"\n\t\t\t.displayMetadata=\"${displayMetadata}\"\n\t\t\tvalue=\"${fg.now ? currentDateTime() : fg.value}\"\n\t\t\t.defaultLanguage=\"${props.language}\"\n\t\t\t.translationProvider=${translationProvider ?? (form.translations && defaultTranslationProvider(form.translations))}\n\t\t\t.validationErrorsProvider=\"${getValidationError(formsValueContainer, fg)}\"\n\t\t\t.valueProvider=\"${formsValueContainer && fieldValuesProvider(formsValueContainer, fg)}\"\n\t\t\t.metadataProvider=${formsValueContainer && formsValueContainer.getMetadata.bind(formsValueContainer)}\n\t\t\t.handleValueChanged=${handleValueChangedProvider(formsValueContainer, fg, props.defaultOwner)}\n\t\t\t.handleMetadataChanged=${handleMetadataChangedProvider(formsValueContainer)}\n\t\t\t.styleOptions=\"${fg.styleOptions}\"\n\t\t\t.readonly=\"${readonly || fg.readonly || (fg.computedProperties?.readonly ? !formsValueContainer?.compute(fg.computedProperties?.readonly) : false)}\"\n\t\t></icure-form-date-time-picker>`\n\t}\n\n\tfunction renderDropdownField(fgSpan: number, fgRowSpan: number, fg: Field) {\n\t\treturn html`<icure-form-dropdown-field\n\t\t\tstyle=\"${calculateFieldOrGroupSize(fgSpan, fgRowSpan)}\"\n\t\t\tclass=\"icure-form-field\"\n\t\t\t.label=${fg.field}\n\t\t\t.displayedLabels=${getLabels(fg)}\n\t\t\t.defaultLanguage=\"${props.language}\"\n\t\t\t.translate=\"${fg.translate}\"\n\t\t\t.sortOptions=\"${fg.sortOptions}\"\n\t\t\tvalue=\"${fg.value}\"\n\t\t\t.codifications=\"${fg.codifications}\"\n\t\t\t.optionsProvider=\"${composedOptionsProvider && fg.codifications?.length\n\t\t\t\t? (language: string, terms?: string[]) => composedOptionsProvider(language, fg.codifications ?? [], terms, fg.sortOptions)\n\t\t\t\t: (language: string, terms?: string[]) => filterAndSortOptionsFromFieldDefinition(language, fg, translationProvider, terms)}\"\n\t\t\t.ownersProvider=${ownersProvider}\n\t\t\t.translationProvider=${translationProvider ?? (form.translations && defaultTranslationProvider(form.translations))}\n\t\t\t.validationErrorsProvider=\"${getValidationError(formsValueContainer, fg)}\"\n\t\t\t.valueProvider=\"${formsValueContainer && fieldValuesProvider(formsValueContainer, fg)}\"\n\t\t\t.metadataProvider=${formsValueContainer && formsValueContainer.getMetadata.bind(formsValueContainer)}\n\t\t\t.handleValueChanged=${handleValueChangedProvider(formsValueContainer, fg, props.defaultOwner)}\n\t\t\t.handleMetadataChanged=${handleMetadataChangedProvider(formsValueContainer)}\n\t\t\t.styleOptions=\"${fg.styleOptions}\"\n\t\t\t.readonly=\"${readonly || fg.readonly || (fg.computedProperties?.readonly ? !formsValueContainer?.compute(fg.computedProperties?.readonly) : false)}\"\n\t\t></icure-form-dropdown-field>`\n\t}\n\n\tfunction renderRadioButtons(fgSpan: number, fgRowSpan: number, fg: Field) {\n\t\treturn html`<icure-form-radio-button\n\t\t\tstyle=\"${calculateFieldOrGroupSize(fgSpan, fgRowSpan)}\"\n\t\t\tclass=\"icure-form-field\"\n\t\t\t.label=\"${fg.field}\"\n\t\t\t.displayedLabels=\"${getLabels(fg)}\"\n\t\t\t.displayMetadata=\"${displayMetadata}\"\n\t\t\t.defaultLanguage=\"${props.language}\"\n\t\t\t.translate=\"${fg.translate}\"\n\t\t\t.sortOptions=\"${fg.sortOptions}\"\n\t\t\t.codifications=\"${fg.codifications}\"\n\t\t\t.optionsProvider=\"${composedOptionsProvider && fg.codifications?.length\n\t\t\t\t? (language: string, terms?: string[]) => composedOptionsProvider(language, fg.codifications ?? [], terms, fg.sortOptions)\n\t\t\t\t: (language: string, terms?: string[]) => filterAndSortOptionsFromFieldDefinition(language, fg, translationProvider, terms)}\"\n\t\t\t.ownersProvider=${ownersProvider}\n\t\t\t.translationProvider=${translationProvider ?? (form.translations && defaultTranslationProvider(form.translations))}\n\t\t\t.validationErrorsProvider=\"${getValidationError(formsValueContainer, fg)}\"\n\t\t\t.valueProvider=\"${formsValueContainer && fieldValuesProvider(formsValueContainer, fg)}\"\n\t\t\t.metadataProvider=${formsValueContainer && formsValueContainer.getMetadata.bind(formsValueContainer)}\n\t\t\t.handleValueChanged=${handleValueChangedProvider(formsValueContainer, fg, props.defaultOwner)}\n\t\t\t.handleMetadataChanged=${handleMetadataChangedProvider(formsValueContainer)}\n\t\t\t.styleOptions=\"${fg.styleOptions}\"\n\t\t\t.readonly=\"${readonly || fg.readonly || (fg.computedProperties?.readonly ? !formsValueContainer?.compute(fg.computedProperties?.readonly) : false)}\"\n\t\t></icure-form-radio-button>`\n\t}\n\n\tfunction renderCheckboxes(fgSpan: number, fgRowSpan: number, fg: Field) {\n\t\treturn html` <icure-form-checkbox\n\t\t\tstyle=\"${calculateFieldOrGroupSize(fgSpan, fgRowSpan)}\"\n\t\t\tclass=\"icure-form-field\"\n\t\t\t.label=\"${fg.field}\"\n\t\t\t.displayedLabels=\"${getLabels(fg)}\"\n\t\t\t.displayMetadata=\"${displayMetadata}\"\n\t\t\t.defaultLanguage=\"${props.language}\"\n\t\t\t.translate=\"${fg.translate}\"\n\t\t\t.sortOptions=\"${fg.sortOptions}\"\n\t\t\tvalue=\"${fg.value}\"\n\t\t\t.codifications=\"${fg.codifications}\"\n\t\t\t.optionsProvider=\"${composedOptionsProvider && fg.codifications?.length\n\t\t\t\t? (language: string, terms?: string[]) => composedOptionsProvider(language, fg.codifications ?? [], terms, fg.sortOptions)\n\t\t\t\t: (language: string, terms?: string[]) => filterAndSortOptionsFromFieldDefinition(language, fg, translationProvider, terms)}\"\n\t\t\t.ownersProvider=\"${ownersProvider}\"\n\t\t\t.translationProvider=\"${translationProvider ?? (form.translations && defaultTranslationProvider(form.translations))}\"\n\t\t\t.validationErrorsProvider=\"${getValidationError(formsValueContainer, fg)}\"\n\t\t\t.valueProvider=\"${formsValueContainer && fieldValuesProvider(formsValueContainer, fg)}\"\n\t\t\t.metadataProvider=\"${formsValueContainer && formsValueContainer.getMetadata.bind(formsValueContainer)}\"\n\t\t\t.handleValueChanged=\"${handleValueChangedProvider(formsValueContainer, fg, props.defaultOwner)}\"\n\t\t\t.handleMetadataChanged=\"${handleMetadataChangedProvider(formsValueContainer)}\"\n\t\t\t.styleOptions=\"${fg.styleOptions}\"\n\t\t\t.readonly=\"${readonly || fg.readonly || (fg.computedProperties?.readonly ? !formsValueContainer?.compute(fg.computedProperties?.readonly) : false)}\"\n\t\t></icure-form-checkbox>`\n\t}\n\n\tfunction renderButton(fgSpan: number, fgRowSpan: number, fg: Field) {\n\t\treturn html`<icure-form-button\n\t\t\tstyle=\"${calculateFieldOrGroupSize(fgSpan, fgRowSpan)}\"\n\t\t\tclass=\"icure-form-button\"\n\t\t\tlabel=\"${fg.shortLabel ?? fg.field}\"\n\t\t\t.defaultLanguage=\"${props.language}\"\n\t\t\t.translationProvider=\"${translationProvider ?? (form.translations && defaultTranslationProvider(form.translations))}\"\n\t\t\t.validationErrorsProvider=\"${getValidationError(formsValueContainer, fg)}\"\n\t\t\t.actionListener=\"${actionListener}\"\n\t\t\t.event=\"${fg.event !== undefined ? fg.event : fg.computedProperties?.event ? !formsValueContainer?.compute(fg.computedProperties?.event) : 'submit'}\"\n\t\t\t.payload=\"${fg.payload !== undefined ? fg.payload : fg.computedProperties?.payload ? !formsValueContainer?.compute(fg.computedProperties?.payload) : undefined}\"\n\t\t\t.styleOptions=\"${fg.styleOptions}\"\n\t\t></icure-form-button>`\n\t}\n\n\tfunction renderLabel(fgSpan: number, fgRowSpan: number, fg: Field) {\n\t\treturn html`<icure-form-label\n\t\t\tstyle=\"${calculateFieldOrGroupSize(fgSpan, fgRowSpan)}\"\n\t\t\tclass=\"icure-form-field\"\n\t\t\t.defaultLanguage=\"${props.language}\"\n\t\t\tlabelPosition=${props.labelPosition}\n\t\t\tlabel=\"${fg.shortLabel ?? fg.field}\"\n\t\t\t.translationProvider=\"${translationProvider ?? (form.translations && defaultTranslationProvider(form.translations))}\"\n\t\t\t.validationErrorsProvider=\"${getValidationError(formsValueContainer, fg)}\"\n\t\t\t.styleOptions=\"${fg.styleOptions}\"\n\t\t\t.readonly=\"${readonly || fg.readonly || (fg.computedProperties?.readonly ? !formsValueContainer?.compute(fg.computedProperties?.readonly) : false)}\"\n\t\t></icure-form-label>`\n\t}\n\n\tconst renderFieldGroupOrSubform = function (fg: Field | Group | Subform, level: number): TemplateResult | TemplateResult[] | typeof nothing {\n\t\tif (!fg) {\n\t\t\treturn nothing\n\t\t}\n\t\tconst computedProperties = Object.keys(fg.computedProperties ?? {}).reduce(\n\t\t\t(acc, k) => ({ ...acc, [k]: fg.computedProperties?.[k] && formsValueContainer?.compute(fg.computedProperties[k]) }),\n\t\t\t{},\n\t\t) as { [key: string]: string | number | boolean | undefined }\n\t\tif (computedProperties['hidden']) {\n\t\t\treturn nothing\n\t\t}\n\n\t\tconst fgSpan = (computedProperties['span'] ?? fg.span ?? 6) as number\n\t\tconst fgRowSpan = (computedProperties['rowSpan'] ?? fg.rowSpan ?? 1) as number\n\n\t\tif (fg.clazz === 'group' && fg.fields?.length) {\n\t\t\treturn renderGroup((fg as Group).copy({ ...computedProperties }), fgSpan, level)\n\t\t} else if (fg.clazz === 'subform' && (fg.id || computedProperties['title'])) {\n\t\t\treturn renderSubform((fg as Subform).copy({ ...computedProperties }), fgSpan, level)\n\t\t} else if (fg.clazz === 'field') {\n\t\t\tconst field = fg.copy({ ...computedProperties })\n\t\t\treturn html`${fg.type === 'text-field'\n\t\t\t\t? renderTextField(fgSpan, fgRowSpan, field)\n\t\t\t\t: fg.type === 'measure-field'\n\t\t\t\t? renderMeasureField(fgSpan, fgRowSpan, field)\n\t\t\t\t: fg.type === 'token-field'\n\t\t\t\t? renderTokenField(fgSpan, fgRowSpan, field)\n\t\t\t\t: fg.type === 'items-list-field'\n\t\t\t\t? renderItemsListField(fgSpan, fgRowSpan, field)\n\t\t\t\t: fg.type === 'number-field'\n\t\t\t\t? renderNumberField(fgSpan, fgRowSpan, field)\n\t\t\t\t: fg.type === 'date-picker'\n\t\t\t\t? renderDatePicker(fgSpan, fgRowSpan, field)\n\t\t\t\t: fg.type === 'time-picker'\n\t\t\t\t? renderTimePicker(fgSpan, fgRowSpan, field)\n\t\t\t\t: fg.type === 'date-time-picker'\n\t\t\t\t? renderDateTimePicker(fgSpan, fgRowSpan, field)\n\t\t\t\t: fg.type === 'dropdown-field'\n\t\t\t\t? renderDropdownField(fgSpan, fgRowSpan, field)\n\t\t\t\t: fg.type === 'radio-button'\n\t\t\t\t? renderRadioButtons(fgSpan, fgRowSpan, field)\n\t\t\t\t: fg.type === 'checkbox'\n\t\t\t\t? renderCheckboxes(fgSpan, fgRowSpan, field)\n\t\t\t\t: fg.type === 'label'\n\t\t\t\t? renderLabel(fgSpan, fgRowSpan, field)\n\t\t\t\t: fg.type === 'action'\n\t\t\t\t? renderButton(fgSpan, fgRowSpan, field)\n\t\t\t\t: ''}`\n\t\t}\n\t\treturn html``\n\t}\n\n\tconst calculateFieldOrGroupSize = (span: number, rowSpan: number, fixedWidth?: number | undefined) => {\n\t\tif (fixedWidth) return `width: ${fixedWidth}px`\n\t\treturn `grid-column: span ${span}; ${rowSpan > 1 ? `grid-row: span ${rowSpan}` : ''}`\n\t}\n\n\tconst renderForm = (form: Form, sectionWrapper: (index: number, section: () => TemplateResult) => TemplateResult) => {\n\t\treturn form.sections.map((s, idx) =>\n\t\t\tsectionWrapper(idx, () => html`<div class=\"icure-form\">${s.fields.map((fieldOrGroup: Field | Group | Subform) => renderFieldGroupOrSubform(fieldOrGroup, 3))}</div>`),\n\t\t)\n\t}\n\n\treturn html`${renderForm(form, sectionWrapper ?? ((idx, section) => section()))}`\n}\n"]}
|
|
1
|
+
{"version":3,"file":"form.js","sourceRoot":"","sources":["../../../../../tmp/components/icure-form/renderer/form/form.ts"],"names":[],"mappings":"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","sourcesContent":["import { html, nothing, TemplateResult } from 'lit'\nimport { Renderer, RendererProps } from '../index'\nimport { fieldValuesProvider, getValidationErrorProvider, handleMetadataChangedProvider, handleValueChangedProvider } from '../../../../utils/fields-values-provider'\nimport { FieldMetadata, FieldValue, Form, Field, Group, Subform, SortOptions } from '../../../model'\nimport { FormValuesContainer, Suggestion } from '../../../../generic'\n\nimport { defaultTranslationProvider } from '../../../../utils/languages'\nimport { getLabels } from '../../../common/utils'\nimport { filterAndSortOptionsFromFieldDefinition, sortSuggestions } from '../../../../utils/code-utils'\n\nimport './form-selection-button'\nimport { currentDate, currentDateTime, currentTime } from '../../../../utils/dates'\n\nexport const render: Renderer = async (\n\tform: Form,\n\tprops: RendererProps,\n\tformsValueContainer?: FormValuesContainer<FieldValue, FieldMetadata>,\n\ttranslationProvider?: (language: string, text: string) => string,\n\townersProvider: (terms: string[], ids?: string[], specialties?: string[]) => Promise<Suggestion[]> = async () => [],\n\toptionsProvider?: (language: string, codifications: string[], terms?: string[]) => Promise<Suggestion[]>,\n\tactionListener: (event: string, payload: unknown) => void = () => undefined,\n\tlanguages?: { [iso: string]: string },\n\treadonly?: boolean,\n\tdisplayMetadata?: boolean,\n\tsectionWrapper?: (index: number, section: () => TemplateResult) => TemplateResult,\n) => {\n\tconst composedOptionsProvider =\n\t\toptionsProvider && form.codifications\n\t\t\t? async (language: string, codifications: string[], terms?: string[], sortOptions?: SortOptions): Promise<Suggestion[]> => {\n\t\t\t\t\tconst originalOptions = optionsProvider ? await optionsProvider(language, codifications, terms) : []\n\t\t\t\t\treturn sortSuggestions(\n\t\t\t\t\t\toriginalOptions.concat(\n\t\t\t\t\t\t\tform.codifications\n\t\t\t\t\t\t\t\t?.filter((c) => codifications.includes(c.type))\n\t\t\t\t\t\t\t\t?.flatMap((c) =>\n\t\t\t\t\t\t\t\t\tc.codes\n\t\t\t\t\t\t\t\t\t\t.filter((c) => (terms ?? []).map((st) => st.toLowerCase()).every((st) => c.label[language].toLowerCase().includes(st)))\n\t\t\t\t\t\t\t\t\t\t.map((c) => ({ id: c.id, label: c.label, text: c.label[language], terms: terms ?? [] })),\n\t\t\t\t\t\t\t\t) ?? [],\n\t\t\t\t\t\t),\n\t\t\t\t\t\tlanguage,\n\t\t\t\t\t\tsortOptions,\n\t\t\t\t\t)\n\t\t\t }\n\t\t\t: optionsProvider\n\t\t\t? (language: string, codifications: string[], terms?: string[], sortOptions?: SortOptions): Promise<Suggestion[]> => {\n\t\t\t\t\treturn optionsProvider?.(language, codifications, terms).then((codes) => sortSuggestions(codes, language, sortOptions)) ?? Promise.resolve([])\n\t\t\t }\n\t\t\t: undefined\n\n\tconst h = function (level: number, className = '', content: TemplateResult): TemplateResult {\n\t\treturn level === 1\n\t\t\t? html`<h1 class=\"${className}\">${content}</h1>`\n\t\t\t: level === 2\n\t\t\t? html`<h2 class=\"${className}\">${content}</h2>`\n\t\t\t: level === 3\n\t\t\t? html`<h3 class=\"${className}\">${content}</h3>`\n\t\t\t: level === 4\n\t\t\t? html`<h4 class=\"${className}\">${content}</h4>`\n\t\t\t: level === 5\n\t\t\t? html`<h5 class=\"${className}\">${content}</h5>`\n\t\t\t: html`<h6 class=\"${className}\">${content}</h6>`\n\t}\n\n\tasync function renderGroup(fg: Group, fgSpan: number, level: number) {\n\t\tconst subElements = (await Promise.all((fg.fields ?? []).map((fieldOrGroup: Field | Group) => renderFieldGroupOrSubform(fieldOrGroup, level + 1)))).filter((x) => !!x && x !== nothing)\n\t\treturn subElements.length\n\t\t\t? html`<div class=\"${['group', fg.borderless ? undefined : 'bordered'].filter((x) => !!x).join(' ')}\" style=\"${calculateFieldOrGroupSize(fgSpan, 1)}\">\n\t\t\t\t\t${fg.borderless ? nothing : html`<div>${h(level, '', html`${fg.group}`)}</div>`}\n\t\t\t\t\t<div class=\"icure-form\">${subElements}</div>\n\t\t\t </div>`\n\t\t\t: nothing\n\t}\n\n\tasync function renderSubform(fg: Subform, fgSpan: number, level: number) {\n\t\tconst children = (await formsValueContainer?.getChildren())?.filter((c) => c.getLabel() === fg.id)\n\t\tconst tp = translationProvider ?? (form.translations && defaultTranslationProvider(form.translations))\n\t\treturn html`<div class=\"subform\" style=\"${calculateFieldOrGroupSize(fgSpan, 1)}\">\n\t\t\t<div class=\"subform__heading\">\n\t\t\t\t${h(level, 'subform__heading__title', html`${(props.language && fg.shortLabel ? tp?.(props.language, fg.shortLabel) : fg.shortLabel) ?? ''}`)}\n\t\t\t\t${readonly\n\t\t\t\t\t? nothing\n\t\t\t\t\t: html`<form-selection-button\n\t\t\t\t\t\t\t.label=\"${fg.labels.add ?? 'Add subform'}\"\n\t\t\t\t\t\t\t.forms=\"${Object.entries(fg.forms)}\"\n\t\t\t\t\t\t\t.formAdded=\"${(title: string, form: Form) => {\n\t\t\t\t\t\t\t\tform.id && formsValueContainer?.addChild(fg.id, form.id, fg.shortLabel ?? '')\n\t\t\t\t\t\t\t}}\"\n\t\t\t\t\t\t\t.translationProvider=\"${tp}\"\n\t\t\t\t\t\t\t.language=\"${props.language}\"\n\t\t\t\t\t ></form-selection-button>`}\n\t\t\t</div>\n\t\t\t${await children?.reduce(async (templatesPromise, child) => {\n\t\t\t\tconst templates = await templatesPromise\n\n\t\t\t\tconst childForm = Object.values(fg.forms).find((f) => f.id === child.getFormId())\n\t\t\t\tconst title = childForm?.form ?? childForm?.description\n\t\t\t\tconst localisedTitle = (title && tp && props.language ? tp?.(props.language, title) : title) ?? ''\n\t\t\t\tconst localisedRemove = (fg.labels.remove && tp && props.language ? tp?.(props.language, fg.labels.remove) : fg.labels.remove) ?? 'Remove'\n\t\t\t\tif (childForm) {\n\t\t\t\t\ttemplates.push(html`\n\t\t\t\t\t\t<div class=\"subform__child\">\n\t\t\t\t\t\t\t<h3 class=\"subform__child__title\">${localisedTitle}</h3>\n\t\t\t\t\t\t\t${await render(childForm, props, child, translationProvider, ownersProvider, optionsProvider, actionListener, languages, readonly, displayMetadata)}\n\t\t\t\t\t\t\t${readonly ? nothing : html` <button class=\"subform__removeBtn\" @click=\"${() => formsValueContainer?.removeChild?.(child)}\">${localisedRemove}</button>`}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t`)\n\t\t\t\t}\n\t\t\t\treturn templates\n\t\t\t}, Promise.resolve([] as TemplateResult[]))}\n\t\t</div>`\n\t}\n\n\tasync function renderTextField(fgSpan: number, fgRowSpan: number, fg: Field) {\n\t\treturn html`<icure-form-text-field\n\t\t\tclass=\"icure-form-field\"\n\t\t\tstyle=\"${calculateFieldOrGroupSize(fgSpan, fgRowSpan, fg.styleOptions?.width)}\"\n\t\t\tlabel=\"${fg.field}\"\n\t\t\tvalue=\"${fg.value}\"\n\t\t\t.displayedLabels=\"${getLabels(fg)}\"\n\t\t\t.displayMetadata=\"${displayMetadata}\"\n\t\t\t.multiline=\"${fg.multiline || false}\"\n\t\t\t.lines=${fgRowSpan}\n\t\t\t.defaultLanguage=\"${props.language}\"\n\t\t\t.languages=\"${languages}\"\n\t\t\t.linksProvider=${fg.options?.linksProvider}\n\t\t\t.suggestionProvider=${fg.options?.suggestionProvider}\n\t\t\t.ownersProvider=${ownersProvider}\n\t\t\t.translationProvider=${translationProvider ?? (form.translations && defaultTranslationProvider(form.translations))}\n\t\t\t.validationErrorsProvider=\"${getValidationErrorProvider(formsValueContainer, fg)}\"\n\t\t\t.codeColorProvider=${fg.options?.codeColorProvider}\n\t\t\t.linkColorProvider=${fg.options?.linkColorProvider}\n\t\t\t.codeContentProvider=${fg.options?.codeContentProvider}\n\t\t\t.valueProvider=\"${formsValueContainer && fieldValuesProvider(formsValueContainer, fg)}\"\n\t\t\t.metadataProvider=${formsValueContainer && formsValueContainer.getMetadata.bind(formsValueContainer)}\n\t\t\t.handleValueChanged=${handleValueChangedProvider(formsValueContainer, fg, props.defaultOwner)}\n\t\t\t.handleMetadataChanged=${handleMetadataChangedProvider(formsValueContainer)}\n\t\t\t.styleOptions=\"${fg.styleOptions}\"\n\t\t\t.readonly=\"${readonly || fg.readonly || (fg.computedProperties?.readonly ? !(await formsValueContainer?.compute(fg.computedProperties?.readonly)) : false)}\"\n\t\t></icure-form-text-field>`\n\t}\n\n\tasync function renderTokenField(fgSpan: number, fgRowSpan: number, fg: Field) {\n\t\treturn html`<icure-form-token-field\n\t\t\tclass=\"icure-form-field\"\n\t\t\tstyle=\"${calculateFieldOrGroupSize(fgSpan, fgRowSpan, fg.styleOptions?.width)}\"\n\t\t\tlabel=\"${fg.field}\"\n\t\t\tvalue=\"${fg.value}\"\n\t\t\t.displayedLabels=\"${getLabels(fg)}\"\n\t\t\t.displayMetadata=\"${displayMetadata}\"\n\t\t\t.multiline=\"${fg.multiline || false}\"\n\t\t\t.lines=${fgRowSpan}\n\t\t\t.defaultLanguage=\"${props.language}\"\n\t\t\t.suggestionProvider=${fg.options?.suggestionProvider}\n\t\t\t.ownersProvider=${ownersProvider}\n\t\t\t.translationProvider=${translationProvider ?? (form.translations && defaultTranslationProvider(form.translations))}\n\t\t\t.validationErrorsProvider=\"${getValidationErrorProvider(formsValueContainer, fg)}\"\n\t\t\t.valueProvider=\"${formsValueContainer && fieldValuesProvider(formsValueContainer, fg)}\"\n\t\t\t.metadataProvider=${formsValueContainer && formsValueContainer.getMetadata.bind(formsValueContainer)}\n\t\t\t.handleValueChanged=${handleValueChangedProvider(formsValueContainer, fg, props.defaultOwner)}\n\t\t\t.handleMetadataChanged=${handleMetadataChangedProvider(formsValueContainer)}\n\t\t\t.styleOptions=\"${fg.styleOptions}\"\n\t\t\t.readonly=\"${readonly || fg.readonly || (fg.computedProperties?.readonly ? !(await formsValueContainer?.compute(fg.computedProperties?.readonly)) : false)}\"\n\t\t></icure-form-token-field>`\n\t}\n\n\tasync function renderItemsListField(fgSpan: number, fgRowSpan: number, fg: Field) {\n\t\treturn html`<icure-form-items-list-field\n\t\t\tclass=\"icure-form-field\"\n\t\t\tstyle=\"${calculateFieldOrGroupSize(fgSpan, fgRowSpan, fg.styleOptions?.width)}\"\n\t\t\tlabel=\"${fg.field}\"\n\t\t\tvalue=\"${fg.value}\"\n\t\t\t.displayedLabels=\"${getLabels(fg)}\"\n\t\t\t.displayMetadata=\"${displayMetadata}\"\n\t\t\t.multiline=\"${fg.multiline || false}\"\n\t\t\t.lines=${fgRowSpan}\n\t\t\t.defaultLanguage=\"${props.language}\"\n\t\t\t.suggestionProvider=${fg.options?.suggestionProvider}\n\t\t\t.ownersProvider=${ownersProvider}\n\t\t\t.translationProvider=${translationProvider ?? (form.translations && defaultTranslationProvider(form.translations))}\n\t\t\t.validationErrorsProvider=\"${getValidationErrorProvider(formsValueContainer, fg)}\"\n\t\t\t.valueProvider=\"${formsValueContainer && fieldValuesProvider(formsValueContainer, fg)}\"\n\t\t\t.metadataProvider=${formsValueContainer && formsValueContainer.getMetadata.bind(formsValueContainer)}\n\t\t\t.handleValueChanged=${handleValueChangedProvider(formsValueContainer, fg, props.defaultOwner)}\n\t\t\t.handleMetadataChanged=${handleMetadataChangedProvider(formsValueContainer)}\n\t\t\t.styleOptions=\"${fg.styleOptions}\"\n\t\t\t.readonly=\"${readonly || fg.readonly || (fg.computedProperties?.readonly ? !(await formsValueContainer?.compute(fg.computedProperties?.readonly)) : false)}\"\n\t\t></icure-form-items-list-field>`\n\t}\n\n\tasync function renderMeasureField(fgSpan: number, fgRowSpan: number, fg: Field) {\n\t\treturn html`<icure-form-measure-field\n\t\t\tstyle=\"${calculateFieldOrGroupSize(fgSpan, fgRowSpan)}\"\n\t\t\tclass=\"icure-form-field\"\n\t\t\tlabel=\"${fg.field}\"\n\t\t\t.displayedLabels=\"${getLabels(fg)}\"\n\t\t\t.displayMetadata=\"${displayMetadata}\"\n\t\t\tvalue=\"${fg.value}\"\n\t\t\tunit=\"${fg.unit}\"\n\t\t\t.defaultLanguage=\"${props.language}\"\n\t\t\t.translationProvider=${translationProvider ?? (form.translations && defaultTranslationProvider(form.translations))}\n\t\t\t.validationErrorsProvider=\"${getValidationErrorProvider(formsValueContainer, fg)}\"\n\t\t\t.valueProvider=\"${formsValueContainer && fieldValuesProvider(formsValueContainer, fg)}\"\n\t\t\t.metadataProvider=${formsValueContainer && formsValueContainer.getMetadata.bind(formsValueContainer)}\n\t\t\t.handleValueChanged=${handleValueChangedProvider(formsValueContainer, fg, props.defaultOwner)}\n\t\t\t.handleMetadataChanged=${handleMetadataChangedProvider(formsValueContainer)}\n\t\t\t.styleOptions=\"${fg.styleOptions}\"\n\t\t\t.readonly=\"${readonly || fg.readonly || (fg.computedProperties?.readonly ? !(await formsValueContainer?.compute(fg.computedProperties?.readonly)) : false)}\"\n\t\t></icure-form-measure-field>`\n\t}\n\n\tasync function renderNumberField(fgSpan: number, fgRowSpan: number, fg: Field) {\n\t\treturn html`<icure-form-number-field\n\t\t\tstyle=\"${calculateFieldOrGroupSize(fgSpan, fgRowSpan)}\"\n\t\t\tclass=\"icure-form-field\"\n\t\t\tlabel=\"${fg.field}\"\n\t\t\t.displayedLabels=\"${getLabels(fg)}\"\n\t\t\t.displayMetadata=\"${displayMetadata}\"\n\t\t\tvalue=\"${fg.value}\"\n\t\t\t.defaultLanguage=\"${props.language}\"\n\t\t\t.translationProvider=${translationProvider ?? (form.translations && defaultTranslationProvider(form.translations))}\n\t\t\t.validationErrorsProvider=\"${getValidationErrorProvider(formsValueContainer, fg)}\"\n\t\t\t.valueProvider=\"${formsValueContainer && fieldValuesProvider(formsValueContainer, fg)}\"\n\t\t\t.metadataProvider=${formsValueContainer && formsValueContainer.getMetadata.bind(formsValueContainer)}\n\t\t\t.handleValueChanged=${handleValueChangedProvider(formsValueContainer, fg, props.defaultOwner)}\n\t\t\t.handleMetadataChanged=${handleMetadataChangedProvider(formsValueContainer)}\n\t\t\t.styleOptions=\"${fg.styleOptions}\"\n\t\t\t.readonly=\"${readonly || fg.readonly || (fg.computedProperties?.readonly ? !(await formsValueContainer?.compute(fg.computedProperties?.readonly)) : false)}\"\n\t\t></icure-form-number-field>`\n\t}\n\n\tasync function renderDatePicker(fgSpan: number, fgRowSpan: number, fg: Field) {\n\t\treturn html`<icure-form-date-picker\n\t\t\tstyle=\"${calculateFieldOrGroupSize(fgSpan, fgRowSpan)}\"\n\t\t\tclass=\"icure-form-field\"\n\t\t\tlabel=\"${fg.field}\"\n\t\t\t.displayedLabels=\"${getLabels(fg)}\"\n\t\t\t.displayMetadata=\"${displayMetadata}\"\n\t\t\tvalue=\"${fg.now ? currentDate() : fg.value}\"\n\t\t\t.defaultLanguage=\"${props.language}\"\n\t\t\t.translationProvider=${translationProvider ?? (form.translations && defaultTranslationProvider(form.translations))}\n\t\t\t.validationErrorsProvider=\"${getValidationErrorProvider(formsValueContainer, fg)}\"\n\t\t\t.valueProvider=\"${formsValueContainer && fieldValuesProvider(formsValueContainer, fg)}\"\n\t\t\t.metadataProvider=${formsValueContainer && formsValueContainer.getMetadata.bind(formsValueContainer)}\n\t\t\t.handleValueChanged=${handleValueChangedProvider(formsValueContainer, fg, props.defaultOwner)}\n\t\t\t.handleMetadataChanged=${handleMetadataChangedProvider(formsValueContainer)}\n\t\t\t.styleOptions=\"${fg.styleOptions}\"\n\t\t\t.readonly=\"${readonly || fg.readonly || (fg.computedProperties?.readonly ? !(await formsValueContainer?.compute(fg.computedProperties?.readonly)) : false)}\"\n\t\t></icure-form-date-picker>`\n\t}\n\n\tasync function renderTimePicker(fgSpan: number, fgRowSpan: number, fg: Field) {\n\t\treturn html`<icure-form-time-picker\n\t\t\tstyle=\"${calculateFieldOrGroupSize(fgSpan, fgRowSpan)}\"\n\t\t\tclass=\"icure-form-field\"\n\t\t\tlabel=\"${fg.field}\"\n\t\t\t.displayedLabels=\"${getLabels(fg)}\"\n\t\t\t.displayMetadata=\"${displayMetadata}\"\n\t\t\tvalue=\"${fg.now ? currentTime() : fg.value}\"\n\t\t\t.defaultLanguage=\"${props.language}\"\n\t\t\t.translationProvider=${translationProvider ?? (form.translations && defaultTranslationProvider(form.translations))}\n\t\t\t.validationErrorsProvider=\"${getValidationErrorProvider(formsValueContainer, fg)}\"\n\t\t\t.valueProvider=\"${formsValueContainer && fieldValuesProvider(formsValueContainer, fg)}\"\n\t\t\t.metadataProvider=${formsValueContainer && formsValueContainer.getMetadata.bind(formsValueContainer)}\n\t\t\t.handleValueChanged=${handleValueChangedProvider(formsValueContainer, fg, props.defaultOwner)}\n\t\t\t.handleMetadataChanged=${handleMetadataChangedProvider(formsValueContainer)}\n\t\t\t.styleOptions=\"${fg.styleOptions}\"\n\t\t\t.readonly=\"${readonly || fg.readonly || (fg.computedProperties?.readonly ? !(await formsValueContainer?.compute(fg.computedProperties?.readonly)) : false)}\"\n\t\t></icure-form-time-picker>`\n\t}\n\n\tasync function renderDateTimePicker(fgSpan: number, fgRowSpan: number, fg: Field) {\n\t\treturn html`<icure-form-date-time-picker\n\t\t\tstyle=\"${calculateFieldOrGroupSize(fgSpan, fgRowSpan)}\"\n\t\t\tclass=\"icure-form-field\"\n\t\t\tlabel=\"${fg.field}\"\n\t\t\t.displayedLabels=\"${getLabels(fg)}\"\n\t\t\t.displayMetadata=\"${displayMetadata}\"\n\t\t\tvalue=\"${fg.now ? currentDateTime() : fg.value}\"\n\t\t\t.defaultLanguage=\"${props.language}\"\n\t\t\t.translationProvider=${translationProvider ?? (form.translations && defaultTranslationProvider(form.translations))}\n\t\t\t.validationErrorsProvider=\"${getValidationErrorProvider(formsValueContainer, fg)}\"\n\t\t\t.valueProvider=\"${formsValueContainer && fieldValuesProvider(formsValueContainer, fg)}\"\n\t\t\t.metadataProvider=${formsValueContainer && formsValueContainer.getMetadata.bind(formsValueContainer)}\n\t\t\t.handleValueChanged=${handleValueChangedProvider(formsValueContainer, fg, props.defaultOwner)}\n\t\t\t.handleMetadataChanged=${handleMetadataChangedProvider(formsValueContainer)}\n\t\t\t.styleOptions=\"${fg.styleOptions}\"\n\t\t\t.readonly=\"${readonly || fg.readonly || (fg.computedProperties?.readonly ? !(await formsValueContainer?.compute(fg.computedProperties?.readonly)) : false)}\"\n\t\t></icure-form-date-time-picker>`\n\t}\n\n\tasync function renderDropdownField(fgSpan: number, fgRowSpan: number, fg: Field) {\n\t\treturn html`<icure-form-dropdown-field\n\t\t\tstyle=\"${calculateFieldOrGroupSize(fgSpan, fgRowSpan)}\"\n\t\t\tclass=\"icure-form-field\"\n\t\t\t.label=${fg.field}\n\t\t\t.displayedLabels=${getLabels(fg)}\n\t\t\t.defaultLanguage=\"${props.language}\"\n\t\t\t.translate=\"${fg.translate}\"\n\t\t\t.sortOptions=\"${fg.sortOptions}\"\n\t\t\tvalue=\"${fg.value}\"\n\t\t\t.codifications=\"${fg.codifications}\"\n\t\t\t.optionsProvider=\"${composedOptionsProvider && fg.codifications?.length\n\t\t\t\t? (language: string, terms?: string[]) => composedOptionsProvider(language, fg.codifications ?? [], terms, fg.sortOptions)\n\t\t\t\t: (language: string, terms?: string[]) => filterAndSortOptionsFromFieldDefinition(language, fg, translationProvider, terms)}\"\n\t\t\t.ownersProvider=${ownersProvider}\n\t\t\t.translationProvider=${translationProvider ?? (form.translations && defaultTranslationProvider(form.translations))}\n\t\t\t.validationErrorsProvider=\"${getValidationErrorProvider(formsValueContainer, fg)}\"\n\t\t\t.valueProvider=\"${formsValueContainer && fieldValuesProvider(formsValueContainer, fg)}\"\n\t\t\t.metadataProvider=${formsValueContainer && formsValueContainer.getMetadata.bind(formsValueContainer)}\n\t\t\t.handleValueChanged=${handleValueChangedProvider(formsValueContainer, fg, props.defaultOwner)}\n\t\t\t.handleMetadataChanged=${handleMetadataChangedProvider(formsValueContainer)}\n\t\t\t.styleOptions=\"${fg.styleOptions}\"\n\t\t\t.readonly=\"${readonly || fg.readonly || (fg.computedProperties?.readonly ? !(await formsValueContainer?.compute(fg.computedProperties?.readonly)) : false)}\"\n\t\t></icure-form-dropdown-field>`\n\t}\n\n\tasync function renderRadioButtons(fgSpan: number, fgRowSpan: number, fg: Field) {\n\t\treturn html`<icure-form-radio-button\n\t\t\tstyle=\"${calculateFieldOrGroupSize(fgSpan, fgRowSpan)}\"\n\t\t\tclass=\"icure-form-field\"\n\t\t\t.label=\"${fg.field}\"\n\t\t\t.displayedLabels=\"${getLabels(fg)}\"\n\t\t\t.displayMetadata=\"${displayMetadata}\"\n\t\t\t.defaultLanguage=\"${props.language}\"\n\t\t\t.translate=\"${fg.translate}\"\n\t\t\t.sortOptions=\"${fg.sortOptions}\"\n\t\t\t.codifications=\"${fg.codifications}\"\n\t\t\t.optionsProvider=\"${composedOptionsProvider && fg.codifications?.length\n\t\t\t\t? (language: string, terms?: string[]) => composedOptionsProvider(language, fg.codifications ?? [], terms, fg.sortOptions)\n\t\t\t\t: (language: string, terms?: string[]) => filterAndSortOptionsFromFieldDefinition(language, fg, translationProvider, terms)}\"\n\t\t\t.ownersProvider=${ownersProvider}\n\t\t\t.translationProvider=${translationProvider ?? (form.translations && defaultTranslationProvider(form.translations))}\n\t\t\t.validationErrorsProvider=\"${getValidationErrorProvider(formsValueContainer, fg)}\"\n\t\t\t.valueProvider=\"${formsValueContainer && fieldValuesProvider(formsValueContainer, fg)}\"\n\t\t\t.metadataProvider=${formsValueContainer && formsValueContainer.getMetadata.bind(formsValueContainer)}\n\t\t\t.handleValueChanged=${handleValueChangedProvider(formsValueContainer, fg, props.defaultOwner)}\n\t\t\t.handleMetadataChanged=${handleMetadataChangedProvider(formsValueContainer)}\n\t\t\t.styleOptions=\"${fg.styleOptions}\"\n\t\t\t.readonly=\"${readonly || fg.readonly || (fg.computedProperties?.readonly ? !(await formsValueContainer?.compute(fg.computedProperties?.readonly)) : false)}\"\n\t\t></icure-form-radio-button>`\n\t}\n\n\tasync function renderCheckboxes(fgSpan: number, fgRowSpan: number, fg: Field) {\n\t\treturn html` <icure-form-checkbox\n\t\t\tstyle=\"${calculateFieldOrGroupSize(fgSpan, fgRowSpan)}\"\n\t\t\tclass=\"icure-form-field\"\n\t\t\t.label=\"${fg.field}\"\n\t\t\t.displayedLabels=\"${getLabels(fg)}\"\n\t\t\t.displayMetadata=\"${displayMetadata}\"\n\t\t\t.defaultLanguage=\"${props.language}\"\n\t\t\t.translate=\"${fg.translate}\"\n\t\t\t.sortOptions=\"${fg.sortOptions}\"\n\t\t\tvalue=\"${fg.value}\"\n\t\t\t.codifications=\"${fg.codifications}\"\n\t\t\t.optionsProvider=\"${composedOptionsProvider && fg.codifications?.length\n\t\t\t\t? (language: string, terms?: string[]) => composedOptionsProvider(language, fg.codifications ?? [], terms, fg.sortOptions)\n\t\t\t\t: (language: string, terms?: string[]) => filterAndSortOptionsFromFieldDefinition(language, fg, translationProvider, terms)}\"\n\t\t\t.ownersProvider=\"${ownersProvider}\"\n\t\t\t.translationProvider=\"${translationProvider ?? (form.translations && defaultTranslationProvider(form.translations))}\"\n\t\t\t.validationErrorsProvider=\"${getValidationErrorProvider(formsValueContainer, fg)}\"\n\t\t\t.valueProvider=\"${formsValueContainer && fieldValuesProvider(formsValueContainer, fg)}\"\n\t\t\t.metadataProvider=\"${formsValueContainer && formsValueContainer.getMetadata.bind(formsValueContainer)}\"\n\t\t\t.handleValueChanged=\"${handleValueChangedProvider(formsValueContainer, fg, props.defaultOwner)}\"\n\t\t\t.handleMetadataChanged=\"${handleMetadataChangedProvider(formsValueContainer)}\"\n\t\t\t.styleOptions=\"${fg.styleOptions}\"\n\t\t\t.readonly=\"${readonly || fg.readonly || (fg.computedProperties?.readonly ? !(await formsValueContainer?.compute(fg.computedProperties?.readonly)) : false)}\"\n\t\t></icure-form-checkbox>`\n\t}\n\n\tasync function renderButton(fgSpan: number, fgRowSpan: number, fg: Field) {\n\t\treturn html`<icure-form-button\n\t\t\tstyle=\"${calculateFieldOrGroupSize(fgSpan, fgRowSpan)}\"\n\t\t\tclass=\"icure-form-button\"\n\t\t\tlabel=\"${fg.shortLabel ?? fg.field}\"\n\t\t\t.defaultLanguage=\"${props.language}\"\n\t\t\t.translationProvider=\"${translationProvider ?? (form.translations && defaultTranslationProvider(form.translations))}\"\n\t\t\t.validationErrorsProvider=\"${getValidationErrorProvider(formsValueContainer, fg)}\"\n\t\t\t.actionListener=\"${actionListener}\"\n\t\t\t.event=\"${fg.event !== undefined ? fg.event : fg.computedProperties?.event ? !(await formsValueContainer?.compute(fg.computedProperties?.event)) : 'submit'}\"\n\t\t\t.payload=\"${fg.payload !== undefined ? fg.payload : fg.computedProperties?.payload ? !(await formsValueContainer?.compute(fg.computedProperties?.payload)) : undefined}\"\n\t\t\t.styleOptions=\"${fg.styleOptions}\"\n\t\t></icure-form-button>`\n\t}\n\n\tasync function renderLabel(fgSpan: number, fgRowSpan: number, fg: Field) {\n\t\treturn html`<icure-form-label\n\t\t\tstyle=\"${calculateFieldOrGroupSize(fgSpan, fgRowSpan)}\"\n\t\t\tclass=\"icure-form-field\"\n\t\t\t.defaultLanguage=\"${props.language}\"\n\t\t\tlabelPosition=${props.labelPosition}\n\t\t\tlabel=\"${fg.shortLabel ?? fg.field}\"\n\t\t\t.translationProvider=\"${translationProvider ?? (form.translations && defaultTranslationProvider(form.translations))}\"\n\t\t\t.validationErrorsProvider=\"${getValidationErrorProvider(formsValueContainer, fg)}\"\n\t\t\t.styleOptions=\"${fg.styleOptions}\"\n\t\t\t.readonly=\"${readonly || fg.readonly || (fg.computedProperties?.readonly ? !(await formsValueContainer?.compute(fg.computedProperties?.readonly)) : false)}\"\n\t\t></icure-form-label>`\n\t}\n\n\tconst renderFieldGroupOrSubform = async function (fg: Field | Group | Subform, level: number): Promise<TemplateResult | TemplateResult[] | typeof nothing> {\n\t\tif (!fg) {\n\t\t\treturn nothing\n\t\t}\n\t\tconst computedProperties = (await Object.keys(fg.computedProperties ?? {}).reduce(\n\t\t\tasync (acc, k) => ({ ...(await acc), [k]: fg.computedProperties?.[k] && (await formsValueContainer?.compute(fg.computedProperties[k])) }),\n\t\t\tPromise.resolve({}),\n\t\t)) as { [key: string]: string | number | boolean | undefined }\n\t\tif (computedProperties['hidden']) {\n\t\t\treturn nothing\n\t\t}\n\n\t\tconst fgSpan = (computedProperties['span'] ?? fg.span ?? 6) as number\n\t\tconst fgRowSpan = (computedProperties['rowSpan'] ?? fg.rowSpan ?? 1) as number\n\n\t\tif (fg.clazz === 'group' && fg.fields?.length) {\n\t\t\treturn await renderGroup((fg as Group).copy({ ...computedProperties }), fgSpan, level)\n\t\t} else if (fg.clazz === 'subform' && (fg.id || computedProperties['title'])) {\n\t\t\treturn await renderSubform((fg as Subform).copy({ ...computedProperties }), fgSpan, level)\n\t\t} else if (fg.clazz === 'field') {\n\t\t\tconst field = fg.copy({ ...computedProperties })\n\t\t\treturn html`${fg.type === 'text-field'\n\t\t\t\t? await renderTextField(fgSpan, fgRowSpan, field)\n\t\t\t\t: fg.type === 'measure-field'\n\t\t\t\t? await renderMeasureField(fgSpan, fgRowSpan, field)\n\t\t\t\t: fg.type === 'token-field'\n\t\t\t\t? await renderTokenField(fgSpan, fgRowSpan, field)\n\t\t\t\t: fg.type === 'items-list-field'\n\t\t\t\t? await renderItemsListField(fgSpan, fgRowSpan, field)\n\t\t\t\t: fg.type === 'number-field'\n\t\t\t\t? await renderNumberField(fgSpan, fgRowSpan, field)\n\t\t\t\t: fg.type === 'date-picker'\n\t\t\t\t? await renderDatePicker(fgSpan, fgRowSpan, field)\n\t\t\t\t: fg.type === 'time-picker'\n\t\t\t\t? await renderTimePicker(fgSpan, fgRowSpan, field)\n\t\t\t\t: fg.type === 'date-time-picker'\n\t\t\t\t? await renderDateTimePicker(fgSpan, fgRowSpan, field)\n\t\t\t\t: fg.type === 'dropdown-field'\n\t\t\t\t? await renderDropdownField(fgSpan, fgRowSpan, field)\n\t\t\t\t: fg.type === 'radio-button'\n\t\t\t\t? await renderRadioButtons(fgSpan, fgRowSpan, field)\n\t\t\t\t: fg.type === 'checkbox'\n\t\t\t\t? await renderCheckboxes(fgSpan, fgRowSpan, field)\n\t\t\t\t: fg.type === 'label'\n\t\t\t\t? await renderLabel(fgSpan, fgRowSpan, field)\n\t\t\t\t: fg.type === 'action'\n\t\t\t\t? await renderButton(fgSpan, fgRowSpan, field)\n\t\t\t\t: ''}`\n\t\t}\n\t\treturn html``\n\t}\n\n\tconst calculateFieldOrGroupSize = (span: number, rowSpan: number, fixedWidth?: number | undefined) => {\n\t\tif (fixedWidth) return `width: ${fixedWidth}px`\n\t\treturn `grid-column: span ${span}; ${rowSpan > 1 ? `grid-row: span ${rowSpan}` : ''}`\n\t}\n\n\tconst renderForm = async (form: Form, sectionWrapper: (index: number, section: () => TemplateResult) => TemplateResult) => {\n\t\treturn await Promise.all(\n\t\t\tform.sections.map(async (s, idx) => {\n\t\t\t\tconst section = await Promise.all(s.fields.map((fieldOrGroup: Field | Group | Subform) => renderFieldGroupOrSubform(fieldOrGroup, 3)))\n\t\t\t\treturn sectionWrapper(idx, () => html` <div class=\"icure-form\">${section}</div>`)\n\t\t\t}),\n\t\t)\n\t}\n\n\treturn html`${await renderForm(form, sectionWrapper ?? ((idx, section) => section()))}`\n}\n"]}
|
|
@@ -8,4 +8,4 @@ export interface RendererProps {
|
|
|
8
8
|
}
|
|
9
9
|
export type Renderer = (form: Form, props: RendererProps, formsValueContainer?: FormValuesContainer<FieldValue, FieldMetadata>, translationProvider?: (language: string, text: string) => string, ownersProvider?: (terms: string[], ids?: string[], specialties?: string[]) => Promise<Suggestion[]>, optionsProvider?: (language: string, codifications: string[], terms?: string[]) => Promise<Suggestion[]>, actionListener?: (event: string, payload: unknown) => void, languages?: {
|
|
10
10
|
[iso: string]: string;
|
|
11
|
-
}, readonly?: boolean, displayMetadata?: boolean, sectionWrapper?: (index: number, section: () => TemplateResult) => TemplateResult) => TemplateResult
|
|
11
|
+
}, readonly?: boolean, displayMetadata?: boolean, sectionWrapper?: (index: number, section: () => TemplateResult) => TemplateResult) => Promise<TemplateResult>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../tmp/components/icure-form/renderer/index.ts"],"names":[],"mappings":"","sourcesContent":["import { TemplateResult } from 'lit'\nimport { FormValuesContainer, Suggestion } from '../../../generic'\nimport { FieldMetadata, FieldValue, Form } from '../../model'\n\nexport interface RendererProps {\n\tlanguage?: string\n\tlabelPosition?: 'top' | 'left' | 'right' | 'bottom' | 'float'\n\tdefaultOwner?: string\n}\n\nexport type Renderer = (\n\tform: Form,\n\tprops: RendererProps,\n\tformsValueContainer?: FormValuesContainer<FieldValue, FieldMetadata>,\n\ttranslationProvider?: (language: string, text: string) => string,\n\townersProvider?: (terms: string[], ids?: string[], specialties?: string[]) => Promise<Suggestion[]>,\n\toptionsProvider?: (language: string, codifications: string[], terms?: string[]) => Promise<Suggestion[]>,\n\tactionListener?: (event: string, payload: unknown) => void,\n\tlanguages?: { [iso: string]: string },\n\treadonly?: boolean,\n\tdisplayMetadata?: boolean,\n\tsectionWrapper?: (index: number, section: () => TemplateResult) => TemplateResult,\n) => TemplateResult
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../tmp/components/icure-form/renderer/index.ts"],"names":[],"mappings":"","sourcesContent":["import { TemplateResult } from 'lit'\nimport { FormValuesContainer, Suggestion } from '../../../generic'\nimport { FieldMetadata, FieldValue, Form } from '../../model'\n\nexport interface RendererProps {\n\tlanguage?: string\n\tlabelPosition?: 'top' | 'left' | 'right' | 'bottom' | 'float'\n\tdefaultOwner?: string\n}\n\nexport type Renderer = (\n\tform: Form,\n\tprops: RendererProps,\n\tformsValueContainer?: FormValuesContainer<FieldValue, FieldMetadata>,\n\ttranslationProvider?: (language: string, text: string) => string,\n\townersProvider?: (terms: string[], ids?: string[], specialties?: string[]) => Promise<Suggestion[]>,\n\toptionsProvider?: (language: string, codifications: string[], terms?: string[]) => Promise<Suggestion[]>,\n\tactionListener?: (event: string, payload: unknown) => void,\n\tlanguages?: { [iso: string]: string },\n\treadonly?: boolean,\n\tdisplayMetadata?: boolean,\n\tsectionWrapper?: (index: number, section: () => TemplateResult) => TemplateResult,\n) => Promise<TemplateResult>\n"]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { LitElement } from 'lit';
|
|
2
2
|
import { Field } from '../common';
|
|
3
|
-
import { IcureTextFieldSchema } from '../model';
|
|
3
|
+
import { FieldMetadata, IcureTextFieldSchema } from '../model';
|
|
4
4
|
import { Suggestion } from '../../generic';
|
|
5
5
|
export declare class IcureTextField extends Field {
|
|
6
6
|
placeholder: string;
|
|
@@ -41,7 +41,9 @@ export declare class IcureTextField extends Field {
|
|
|
41
41
|
static get styles(): import("lit").CSSResult[];
|
|
42
42
|
private isMultivalued;
|
|
43
43
|
private updateValue;
|
|
44
|
-
|
|
44
|
+
renderSync({ validationErrors }: {
|
|
45
|
+
validationErrors: [FieldMetadata, string][];
|
|
46
|
+
}): import("lit-html").TemplateResult<1>;
|
|
45
47
|
mouseDown(): void;
|
|
46
48
|
mouseUp(): void;
|
|
47
49
|
firstUpdated(): void;
|
|
@@ -1253,37 +1253,37 @@ export class IcureTextField extends Field {
|
|
|
1253
1253
|
: undefined, valueId)) && (this.selectedRevision = undefined);
|
|
1254
1254
|
}
|
|
1255
1255
|
}
|
|
1256
|
-
|
|
1257
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t
|
|
1256
|
+
renderSync({ validationErrors }) {
|
|
1257
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t;
|
|
1258
1258
|
const renderHash = Math.random();
|
|
1259
1259
|
let metadata;
|
|
1260
1260
|
let rev;
|
|
1261
1261
|
let versions;
|
|
1262
|
-
const validationError =
|
|
1262
|
+
const validationError = validationErrors.length;
|
|
1263
1263
|
let valueForExistingLanguages = undefined;
|
|
1264
1264
|
if (icureFormLogging) {
|
|
1265
1265
|
console.log(`Rendering text-field ${this.schema} ${this.label} [${this.displayedLabels}]`);
|
|
1266
1266
|
}
|
|
1267
1267
|
if (this.view) {
|
|
1268
1268
|
let parsedDoc;
|
|
1269
|
-
const data = (
|
|
1269
|
+
const data = (_a = this.valueProvider) === null || _a === void 0 ? void 0 : _a.call(this);
|
|
1270
1270
|
if (icureFormLogging) {
|
|
1271
1271
|
console.log(`Data for ${this.label} is ${JSON.stringify(data)}`);
|
|
1272
1272
|
}
|
|
1273
1273
|
if (this.isMultivalued()) {
|
|
1274
|
-
const values = extractValues(data, (
|
|
1274
|
+
const values = extractValues(data, (_b = this.metadataProvider) !== null && _b !== void 0 ? _b : (() => ({})));
|
|
1275
1275
|
parsedDoc =
|
|
1276
|
-
(
|
|
1276
|
+
(_d = (_c = this.proseMirrorSchema) === null || _c === void 0 ? void 0 : _c.topNodeType.createAndFill({}, values.map(([id, value]) => { var _a, _b, _c, _d, _e; return (_a = this.parser) === null || _a === void 0 ? void 0 : _a.parse((_e = (_d = (_c = (_b = value === null || value === void 0 ? void 0 : value[0]) === null || _b === void 0 ? void 0 : _b.value) === null || _c === void 0 ? void 0 : _c.content) === null || _d === void 0 ? void 0 : _d[this.language()]) !== null && _e !== void 0 ? _e : '', id, renderHash); }).filter((x) => !!x))) !== null && _d !== void 0 ? _d : undefined;
|
|
1277
1277
|
}
|
|
1278
1278
|
else {
|
|
1279
1279
|
let id;
|
|
1280
1280
|
[id, versions] = extractSingleValue(data);
|
|
1281
1281
|
const version = this.selectedRevision ? versions === null || versions === void 0 ? void 0 : versions.find((v) => v.revision === this.selectedRevision) : versions === null || versions === void 0 ? void 0 : versions[0];
|
|
1282
|
-
const valueForLanguage = (
|
|
1283
|
-
valueForExistingLanguages = Object.keys((
|
|
1284
|
-
parsedDoc = valueForLanguage ? (
|
|
1282
|
+
const valueForLanguage = (_g = (_f = (_e = version === null || version === void 0 ? void 0 : version.value) === null || _e === void 0 ? void 0 : _e.content) === null || _f === void 0 ? void 0 : _f[this.language()]) !== null && _g !== void 0 ? _g : '';
|
|
1283
|
+
valueForExistingLanguages = Object.keys((_j = (_h = version === null || version === void 0 ? void 0 : version.value) === null || _h === void 0 ? void 0 : _h.content) !== null && _j !== void 0 ? _j : {});
|
|
1284
|
+
parsedDoc = valueForLanguage ? (_l = (_k = this.parser) === null || _k === void 0 ? void 0 : _k.parse(valueForLanguage)) !== null && _l !== void 0 ? _l : undefined : undefined;
|
|
1285
1285
|
rev = version === null || version === void 0 ? void 0 : version.revision;
|
|
1286
|
-
metadata = id && rev !== undefined ? (
|
|
1286
|
+
metadata = id && rev !== undefined ? (_r = (_q = (_p = (_m = this.metadataProvider) === null || _m === void 0 ? void 0 : _m.call(this, id, (_o = versions === null || versions === void 0 ? void 0 : versions.map((v) => v.revision)) !== null && _o !== void 0 ? _o : [])) === null || _p === void 0 ? void 0 : _p[id]) === null || _q === void 0 ? void 0 : _q.find((m) => m.revision === rev)) === null || _r === void 0 ? void 0 : _r.value : undefined;
|
|
1287
1287
|
}
|
|
1288
1288
|
if (parsedDoc) {
|
|
1289
1289
|
const selection = this.view.state.selection;
|
|
@@ -1325,7 +1325,7 @@ export class IcureTextField extends Field {
|
|
|
1325
1325
|
.metadata="${metadata}"
|
|
1326
1326
|
.revision="${rev}"
|
|
1327
1327
|
.versions="${versions !== null && versions !== void 0 ? versions : []}"
|
|
1328
|
-
.valueId="${(
|
|
1328
|
+
.valueId="${(_t = extractSingleValue((_s = this.valueProvider) === null || _s === void 0 ? void 0 : _s.call(this))) === null || _t === void 0 ? void 0 : _t[0]}"
|
|
1329
1329
|
.defaultLanguage="${this.defaultLanguage}"
|
|
1330
1330
|
.selectedLanguage="${this.selectedLanguage}"
|
|
1331
1331
|
.languages="${this.languages}"
|
|
@@ -1339,7 +1339,7 @@ export class IcureTextField extends Field {
|
|
|
1339
1339
|
`
|
|
1340
1340
|
: ''}
|
|
1341
1341
|
</div>
|
|
1342
|
-
<div class="error">${
|
|
1342
|
+
<div class="error">${validationErrors.map(([, error]) => { var _a; return html `<div>${(_a = this.translationProvider) === null || _a === void 0 ? void 0 : _a.call(this, this.language(), error)}</div>`; })}</div>
|
|
1343
1343
|
</div>
|
|
1344
1344
|
`;
|
|
1345
1345
|
}
|