@icure/form 2.0.10 → 2.1.0

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.
Files changed (188) hide show
  1. package/.yarn/cache/@babel-runtime-npm-7.28.4-31bc1b0001-934b0a0460.zip +0 -0
  2. package/.yarn/cache/@icure-api-npm-5.3.18-99d397b97c-0da319f009.zip +0 -0
  3. package/.yarn/cache/@icure-motss-app-datepicker-npm-6.0.0-rc.40-ca1da7abbb-9bbe2bed34.zip +0 -0
  4. package/.yarn/cache/@lit-labs-ssr-dom-shim-npm-1.4.0-e5ef5fbeba-e267c25576.zip +0 -0
  5. package/.yarn/cache/@lit-reactive-element-npm-2.1.1-3875228c32-b9bbc9c089.zip +0 -0
  6. package/.yarn/cache/@lit-task-npm-1.0.3-48f265b3e9-790b6a2603.zip +0 -0
  7. package/.yarn/cache/@types-linkify-it-npm-5.0.0-576a16b976-ec98e03aa8.zip +0 -0
  8. package/.yarn/cache/@types-markdown-it-npm-14.1.2-d0c4e12c49-ad66e0b377.zip +0 -0
  9. package/.yarn/cache/@types-mdurl-npm-2.0.0-2f4116c0b0-78746e96c6.zip +0 -0
  10. package/.yarn/cache/big-integer-npm-1.6.52-4bec75720c-6e86885787.zip +0 -0
  11. package/.yarn/cache/date-fns-npm-2.30.0-895c790e0f-f7be015232.zip +0 -0
  12. package/.yarn/cache/libphonenumber-js-npm-1.12.23-68ac3c21d2-aad6c9ddc4.zip +0 -0
  13. package/.yarn/cache/{lit-element-npm-4.1.1-bb20932b82-74d0f2d6fb.zip → lit-element-npm-4.2.1-b5bc114ced-5925326176.zip} +0 -0
  14. package/.yarn/cache/{lit-html-npm-3.2.1-1662fc597d-1bacd9f8b2.zip → lit-html-npm-3.3.1-e3722d4f4a-de07c66945.zip} +0 -0
  15. package/.yarn/cache/{lit-npm-3.2.1-27cb5b7782-ee22bbc53d.zip → lit-npm-3.3.1-8f683c51f1-fb88f1ff80.zip} +0 -0
  16. package/.yarn/cache/lodash-npm-4.17.21-6382451519-eb835a2e51.zip +0 -0
  17. package/.yarn/cache/moment-npm-2.30.1-1c51a5c631-859236bab1.zip +0 -0
  18. package/.yarn/cache/prosemirror-commands-npm-1.7.1-5b2afb6640-2316c40ea2.zip +0 -0
  19. package/.yarn/cache/prosemirror-history-npm-1.4.1-ad68c86bb7-90f9bf59bc.zip +0 -0
  20. package/.yarn/cache/prosemirror-keymap-npm-1.2.3-0e7e0c8195-0a2eed2771.zip +0 -0
  21. package/.yarn/cache/prosemirror-markdown-npm-1.13.2-6e2f179fd8-ce9fcb3b13.zip +0 -0
  22. package/.yarn/cache/prosemirror-model-npm-1.25.3-95b23ed79b-2720e49795.zip +0 -0
  23. package/.yarn/cache/prosemirror-schema-basic-npm-1.2.4-8f943ded01-10ed022990.zip +0 -0
  24. package/.yarn/cache/prosemirror-schema-list-npm-1.5.1-7b138c5fed-6c7041e5b8.zip +0 -0
  25. package/.yarn/cache/prosemirror-transform-npm-1.10.4-f765dfe652-7b8b3ed82c.zip +0 -0
  26. package/.yarn/cache/prosemirror-view-npm-1.41.2-7f800b4d2b-263f15bec9.zip +0 -0
  27. package/.yarn/cache/text-encoding-npm-0.7.0-ff0c4af052-b6109a843f.zip +0 -0
  28. package/.yarn/cache/uuid-encoder-npm-1.2.0-6a9a810c6d-dd06230f08.zip +0 -0
  29. package/.yarn/cache/uuid-npm-8.3.2-eca0baba53-5575a8a75c.zip +0 -0
  30. package/.yarn/install-state.gz +0 -0
  31. package/components/common/field-with-options.d.ts +2 -2
  32. package/components/common/field-with-options.js +0 -1
  33. package/components/common/field-with-options.js.map +1 -1
  34. package/components/common/field.d.ts +10 -3
  35. package/components/common/field.js +21 -0
  36. package/components/common/field.js.map +1 -1
  37. package/components/common/metadata-buttons-bar.d.ts +2 -1
  38. package/components/common/metadata-buttons-bar.js +60 -28
  39. package/components/common/metadata-buttons-bar.js.map +1 -1
  40. package/components/common/styles/paths.d.ts +1 -0
  41. package/components/common/styles/paths.js +29 -16
  42. package/components/common/styles/paths.js.map +1 -1
  43. package/components/common/utils.js +4 -4
  44. package/components/common/utils.js.map +1 -1
  45. package/components/icure-button/index.d.ts +1 -1
  46. package/components/icure-button/index.js +54 -14
  47. package/components/icure-button/index.js.map +1 -1
  48. package/components/icure-button-group/index.d.ts +5 -3
  49. package/components/icure-button-group/index.js +81 -45
  50. package/components/icure-button-group/index.js.map +1 -1
  51. package/components/icure-date-picker/index.d.ts +6 -3
  52. package/components/icure-date-picker/index.js +62 -22
  53. package/components/icure-date-picker/index.js.map +1 -1
  54. package/components/icure-dropdown-field/index.d.ts +5 -2
  55. package/components/icure-dropdown-field/index.js +58 -18
  56. package/components/icure-dropdown-field/index.js.map +1 -1
  57. package/components/icure-form/fields/button-group/checkbox.d.ts +2 -1
  58. package/components/icure-form/fields/button-group/checkbox.js +1 -1
  59. package/components/icure-form/fields/button-group/checkbox.js.map +1 -1
  60. package/components/icure-form/fields/button-group/radio-button.d.ts +2 -1
  61. package/components/icure-form/fields/button-group/radio-button.js +1 -1
  62. package/components/icure-form/fields/button-group/radio-button.js.map +1 -1
  63. package/components/icure-form/fields/date-picker/date-picker.d.ts +2 -1
  64. package/components/icure-form/fields/date-picker/date-picker.js +1 -1
  65. package/components/icure-form/fields/date-picker/date-picker.js.map +1 -1
  66. package/components/icure-form/fields/date-picker/date-time-picker.d.ts +2 -1
  67. package/components/icure-form/fields/date-picker/date-time-picker.js +1 -1
  68. package/components/icure-form/fields/date-picker/date-time-picker.js.map +1 -1
  69. package/components/icure-form/fields/date-picker/time-picker.d.ts +2 -1
  70. package/components/icure-form/fields/date-picker/time-picker.js +1 -1
  71. package/components/icure-form/fields/date-picker/time-picker.js.map +1 -1
  72. package/components/icure-form/fields/dropdown/dropdown-field.d.ts +1 -1
  73. package/components/icure-form/fields/dropdown/dropdown-field.js +1 -1
  74. package/components/icure-form/fields/dropdown/dropdown-field.js.map +1 -1
  75. package/components/icure-form/fields/items-list-field/items-list-field.d.ts +2 -1
  76. package/components/icure-form/fields/items-list-field/items-list-field.js +1 -1
  77. package/components/icure-form/fields/items-list-field/items-list-field.js.map +1 -1
  78. package/components/icure-form/fields/measure-field/measure-field.d.ts +2 -1
  79. package/components/icure-form/fields/measure-field/measure-field.js +2 -1
  80. package/components/icure-form/fields/measure-field/measure-field.js.map +1 -1
  81. package/components/icure-form/fields/number-field/number-field.d.ts +2 -1
  82. package/components/icure-form/fields/number-field/number-field.js +2 -1
  83. package/components/icure-form/fields/number-field/number-field.js.map +1 -1
  84. package/components/icure-form/fields/text-field/text-field.d.ts +2 -1
  85. package/components/icure-form/fields/text-field/text-field.js +2 -1
  86. package/components/icure-form/fields/text-field/text-field.js.map +1 -1
  87. package/components/icure-form/fields/token-field/token-field.d.ts +2 -1
  88. package/components/icure-form/fields/token-field/token-field.js +1 -1
  89. package/components/icure-form/fields/token-field/token-field.js.map +1 -1
  90. package/components/icure-form/index.d.ts +6 -2
  91. package/components/icure-form/index.js +111 -21
  92. package/components/icure-form/index.js.map +1 -1
  93. package/components/icure-form/renderer/form/form-selection-button.js +48 -12
  94. package/components/icure-form/renderer/form/form-selection-button.js.map +1 -1
  95. package/components/icure-form/renderer/form/form.js +183 -142
  96. package/components/icure-form/renderer/form/form.js.map +1 -1
  97. package/components/icure-form/renderer/index.d.ts +1 -1
  98. package/components/icure-form/renderer/index.js.map +1 -1
  99. package/components/icure-label/index.js +54 -14
  100. package/components/icure-label/index.js.map +1 -1
  101. package/components/icure-text-field/index.d.ts +5 -2
  102. package/components/icure-text-field/index.js +151 -49
  103. package/components/icure-text-field/index.js.map +1 -1
  104. package/components/icure-text-field/prosemirror-commands.js +2 -3
  105. package/components/icure-text-field/prosemirror-commands.js.map +1 -1
  106. package/components/icure-text-field/prosemirror-utils.js +1 -2
  107. package/components/icure-text-field/prosemirror-utils.js.map +1 -1
  108. package/components/icure-text-field/schema/common-marks.js +2 -2
  109. package/components/icure-text-field/schema/common-marks.js.map +1 -1
  110. package/components/icure-text-field/schema/date-time-schema.js +3 -4
  111. package/components/icure-text-field/schema/date-time-schema.js.map +1 -1
  112. package/components/icure-text-field/schema/decimal-schema.js +1 -2
  113. package/components/icure-text-field/schema/decimal-schema.js.map +1 -1
  114. package/components/icure-text-field/schema/index.js +1 -2
  115. package/components/icure-text-field/schema/index.js.map +1 -1
  116. package/components/icure-text-field/schema/items-list-schema.js +1 -2
  117. package/components/icure-text-field/schema/items-list-schema.js.map +1 -1
  118. package/components/icure-text-field/schema/markdown-schema.js +3 -25
  119. package/components/icure-text-field/schema/markdown-schema.js.map +1 -1
  120. package/components/icure-text-field/schema/measure-schema.js +2 -2
  121. package/components/icure-text-field/schema/measure-schema.js.map +1 -1
  122. package/components/icure-text-field/schema/token-schema.js +1 -2
  123. package/components/icure-text-field/schema/token-schema.js.map +1 -1
  124. package/components/icure-text-field/schema/utils.js +2 -3
  125. package/components/icure-text-field/schema/utils.js.map +1 -1
  126. package/components/themes/default/index.js.map +1 -1
  127. package/components/themes/icure-blue/index.js +58 -3
  128. package/components/themes/icure-blue/index.js.map +1 -1
  129. package/components/themes/kendo/index.js +9 -5
  130. package/components/themes/kendo/index.js.map +1 -1
  131. package/conversion/icure-convert.js +1 -2
  132. package/conversion/icure-convert.js.map +1 -1
  133. package/generic/model.d.ts +5 -4
  134. package/generic/model.js.map +1 -1
  135. package/icure/form-values-container.d.ts +21 -13
  136. package/icure/form-values-container.js +235 -138
  137. package/icure/form-values-container.js.map +1 -1
  138. package/icure/icure-utils.js +6 -6
  139. package/icure/icure-utils.js.map +1 -1
  140. package/index.d.ts +1 -0
  141. package/index.js +2 -0
  142. package/index.js.map +1 -1
  143. package/package.json +16 -13
  144. package/utils/dates.js +6 -7
  145. package/utils/dates.js.map +1 -1
  146. package/utils/fields-values-provider.d.ts +1 -1
  147. package/utils/fields-values-provider.js +16 -8
  148. package/utils/fields-values-provider.js.map +1 -1
  149. package/utils/interpreter.d.ts +2 -3
  150. package/utils/interpreter.js +11 -2
  151. package/utils/interpreter.js.map +1 -1
  152. package/utils/no-lodash.js +3 -4
  153. package/utils/no-lodash.js.map +1 -1
  154. package/utils/primitive.d.ts +1 -1
  155. package/utils/primitive.js +9 -9
  156. package/utils/primitive.js.map +1 -1
  157. package/.yarn/cache/@lit-labs-ssr-dom-shim-npm-1.2.1-d14ce3e3e5-5667c44f58.zip +0 -0
  158. package/.yarn/cache/@lit-reactive-element-npm-2.0.4-4836436301-368d788d9e.zip +0 -0
  159. package/.yarn/cache/app-datepicker-npm-6.0.0-rc.33-f74d593ddf-6490949c45.zip +0 -0
  160. package/.yarn/cache/lit-ntml-npm-3.0.6-98ebc6c1ac-2917c778d9.zip +0 -0
  161. package/.yarn/cache/lodash-es-npm-4.17.21-b45832dfce-05cbffad6e.zip +0 -0
  162. package/.yarn/cache/nodemod-npm-3.0.6-844d650911-47ffe619b3.zip +0 -0
  163. package/.yarn/cache/normalize-diacritics-npm-3.0.12-93e2346015-5ddc2cfaf8.zip +0 -0
  164. package/.yarn/cache/parse5-npm-6.0.1-70a35a494a-7d569a176c.zip +0 -0
  165. package/.yarn/cache/prosemirror-commands-npm-1.5.2-27f8f3fee9-ff65063a8c.zip +0 -0
  166. package/.yarn/cache/prosemirror-history-npm-1.3.2-cc128c8ee6-b85fe6378a.zip +0 -0
  167. package/.yarn/cache/prosemirror-keymap-npm-1.2.2-efb8276b00-85fe4fc303.zip +0 -0
  168. package/.yarn/cache/prosemirror-markdown-npm-1.12.0-28e990f443-d7607ee1a6.zip +0 -0
  169. package/.yarn/cache/prosemirror-model-npm-1.19.4-4fd32211c8-12c277ed30.zip +0 -0
  170. package/.yarn/cache/prosemirror-model-npm-1.23.0-57eb718541-f5ab1593cb.zip +0 -0
  171. package/.yarn/cache/prosemirror-schema-basic-npm-1.2.2-def7bf2ec7-1f93f8678c.zip +0 -0
  172. package/.yarn/cache/prosemirror-schema-list-npm-1.3.0-23c1830a7e-03654e37c8.zip +0 -0
  173. package/.yarn/cache/prosemirror-transform-npm-1.10.2-1c2da9123e-93b0c03aff.zip +0 -0
  174. package/.yarn/cache/prosemirror-transform-npm-1.8.0-ea3ca0411f-6d16ca4f95.zip +0 -0
  175. package/.yarn/cache/prosemirror-view-npm-1.32.7-63c3e4b182-40c9038a52.zip +0 -0
  176. package/.yarn/cache/prosemirror-view-npm-1.36.0-830888802f-38986f55e4.zip +0 -0
  177. package/components/icure-text-field/schema/items-list.d.ts +0 -3
  178. package/components/icure-text-field/schema/items-list.js +0 -31
  179. package/components/icure-text-field/schema/items-list.js.map +0 -1
  180. package/components/themes/ehr-lite/index.d.ts +0 -1
  181. package/components/themes/ehr-lite/index.js +0 -321
  182. package/components/themes/ehr-lite/index.js.map +0 -1
  183. package/utils/form-value-container.d.ts +0 -3
  184. package/utils/form-value-container.js +0 -34
  185. package/utils/form-value-container.js.map +0 -1
  186. package/utils/icure-utils.d.ts +0 -16
  187. package/utils/icure-utils.js +0 -105
  188. package/utils/icure-utils.js.map +0 -1
@@ -17,7 +17,7 @@ const utils_1 = require("../../../common/utils");
17
17
  const code_utils_1 = require("../../../../utils/code-utils");
18
18
  require("./form-selection-button");
19
19
  const dates_1 = require("../../../../utils/dates");
20
- const render = (form, props, formsValueContainer, translationProvider, ownersProvider = () => __awaiter(void 0, void 0, void 0, function* () { return []; }), optionsProvider, actionListener = () => undefined, languages, readonly, displayMetadata) => {
20
+ const render = (form_1, props_1, formsValueContainer_1, translationProvider_1, ...args_1) => __awaiter(void 0, [form_1, props_1, formsValueContainer_1, translationProvider_1, ...args_1], void 0, function* (form, props, formsValueContainer, translationProvider, ownersProvider = () => __awaiter(void 0, void 0, void 0, function* () { return []; }), optionsProvider, actionListener = () => undefined, languages, readonly, displayMetadata, sectionWrapper) {
21
21
  const composedOptionsProvider = optionsProvider && form.codifications
22
22
  ? (language, codifications, terms, sortOptions) => __awaiter(void 0, void 0, void 0, function* () {
23
23
  var _a, _b, _c;
@@ -46,55 +46,63 @@ const render = (form, props, formsValueContainer, translationProvider, ownersPro
46
46
  : (0, lit_1.html) `<h6 class="${className}">${content}</h6>`;
47
47
  };
48
48
  function renderGroup(fg, fgSpan, level) {
49
- var _a;
50
- const subElements = ((_a = fg.fields) !== null && _a !== void 0 ? _a : []).map((fieldOrGroup) => renderFieldGroupOrSubform(fieldOrGroup, level + 1)).filter((x) => !!x && x !== lit_1.nothing);
51
- return subElements.length
52
- ? (0, lit_1.html) `<div class="${['group', fg.borderless ? undefined : 'bordered'].filter((x) => !!x).join(' ')}" style="${calculateFieldOrGroupSize(fgSpan, 1)}">
49
+ return __awaiter(this, void 0, void 0, function* () {
50
+ var _a;
51
+ const subElements = (yield Promise.all(((_a = fg.fields) !== null && _a !== void 0 ? _a : []).map((fieldOrGroup) => renderFieldGroupOrSubform(fieldOrGroup, level + 1)))).filter((x) => !!x && x !== lit_1.nothing);
52
+ return subElements.length
53
+ ? (0, lit_1.html) `<div class="${['group', fg.borderless ? undefined : 'bordered'].filter((x) => !!x).join(' ')}" style="${calculateFieldOrGroupSize(fgSpan, 1)}">
53
54
  ${fg.borderless ? lit_1.nothing : (0, lit_1.html) `<div>${h(level, '', (0, lit_1.html) `${fg.group}`)}</div>`}
54
55
  <div class="icure-form">${subElements}</div>
55
56
  </div>`
56
- : lit_1.nothing;
57
+ : lit_1.nothing;
58
+ });
57
59
  }
58
60
  function renderSubform(fg, fgSpan, level) {
59
- var _a, _b, _c;
60
- const children = (_a = formsValueContainer === null || formsValueContainer === void 0 ? void 0 : formsValueContainer.getChildren()) === null || _a === void 0 ? void 0 : _a.filter((c) => c.getLabel() === fg.id);
61
- const tp = translationProvider !== null && translationProvider !== void 0 ? translationProvider : (form.translations && (0, languages_1.defaultTranslationProvider)(form.translations));
62
- return (0, lit_1.html) `<div class="subform" style="${calculateFieldOrGroupSize(fgSpan, 1)}">
61
+ return __awaiter(this, void 0, void 0, function* () {
62
+ var _a, _b, _c;
63
+ const children = (_a = (yield (formsValueContainer === null || formsValueContainer === void 0 ? void 0 : formsValueContainer.getChildren()))) === null || _a === void 0 ? void 0 : _a.filter((c) => c.getLabel() === fg.id);
64
+ const tp = translationProvider !== null && translationProvider !== void 0 ? translationProvider : (form.translations && (0, languages_1.defaultTranslationProvider)(form.translations));
65
+ return (0, lit_1.html) `<div class="subform" style="${calculateFieldOrGroupSize(fgSpan, 1)}">
63
66
  <div class="subform__heading">
64
67
  ${h(level, 'subform__heading__title', (0, lit_1.html) `${(_b = (props.language && fg.shortLabel ? tp === null || tp === void 0 ? void 0 : tp(props.language, fg.shortLabel) : fg.shortLabel)) !== null && _b !== void 0 ? _b : ''}`)}
65
68
  ${readonly
66
- ? lit_1.nothing
67
- : (0, lit_1.html) `<form-selection-button
69
+ ? lit_1.nothing
70
+ : (0, lit_1.html) `<form-selection-button
68
71
  .label="${(_c = fg.labels.add) !== null && _c !== void 0 ? _c : 'Add subform'}"
69
72
  .forms="${Object.entries(fg.forms)}"
70
73
  .formAdded="${(title, form) => {
71
- var _a;
72
- form.id && (formsValueContainer === null || formsValueContainer === void 0 ? void 0 : formsValueContainer.addChild(fg.id, form.id, (_a = fg.shortLabel) !== null && _a !== void 0 ? _a : ''));
73
- }}"
74
+ var _a;
75
+ form.id && (formsValueContainer === null || formsValueContainer === void 0 ? void 0 : formsValueContainer.addChild(fg.id, form.id, (_a = fg.shortLabel) !== null && _a !== void 0 ? _a : ''));
76
+ }}"
74
77
  .translationProvider="${tp}"
75
78
  .language="${props.language}"
76
79
  ></form-selection-button>`}
77
80
  </div>
78
- ${children === null || children === void 0 ? void 0 : children.map((child) => {
79
- var _a, _b, _c;
80
- const childForm = Object.values(fg.forms).find((f) => f.id === child.getFormId());
81
- const title = (_a = childForm === null || childForm === void 0 ? void 0 : childForm.form) !== null && _a !== void 0 ? _a : childForm === null || childForm === void 0 ? void 0 : childForm.description;
82
- const localisedTitle = (_b = (title && tp && props.language ? tp === null || tp === void 0 ? void 0 : tp(props.language, title) : title)) !== null && _b !== void 0 ? _b : '';
83
- const localisedRemove = (_c = (fg.labels.remove && tp && props.language ? tp === null || tp === void 0 ? void 0 : tp(props.language, fg.labels.remove) : fg.labels.remove)) !== null && _c !== void 0 ? _c : 'Remove';
84
- return (childForm &&
85
- (0, lit_1.html) `
86
- <div class="subform__child">
87
- <h3 class="subform__child__title">${localisedTitle}</h3>
88
- ${(0, exports.render)(childForm, props, child, translationProvider, ownersProvider, optionsProvider, actionListener, languages, readonly, displayMetadata)}
89
- ${readonly ? lit_1.nothing : (0, lit_1.html) `<button class="subform__removeBtn" @click="${() => { var _a; return (_a = formsValueContainer === null || formsValueContainer === void 0 ? void 0 : formsValueContainer.removeChild) === null || _a === void 0 ? void 0 : _a.call(formsValueContainer, child); }}">${localisedRemove}</button>`}
90
- </div>
91
- `);
92
- }).filter((x) => !!x)}
81
+ ${yield (children === null || children === void 0 ? void 0 : children.reduce((templatesPromise, child) => __awaiter(this, void 0, void 0, function* () {
82
+ var _a, _b, _c;
83
+ const templates = yield templatesPromise;
84
+ const childForm = Object.values(fg.forms).find((f) => f.id === child.getFormId());
85
+ const title = (_a = childForm === null || childForm === void 0 ? void 0 : childForm.form) !== null && _a !== void 0 ? _a : childForm === null || childForm === void 0 ? void 0 : childForm.description;
86
+ const localisedTitle = (_b = (title && tp && props.language ? tp === null || tp === void 0 ? void 0 : tp(props.language, title) : title)) !== null && _b !== void 0 ? _b : '';
87
+ const localisedRemove = (_c = (fg.labels.remove && tp && props.language ? tp === null || tp === void 0 ? void 0 : tp(props.language, fg.labels.remove) : fg.labels.remove)) !== null && _c !== void 0 ? _c : 'Remove';
88
+ if (childForm) {
89
+ templates.push((0, lit_1.html) `
90
+ <div class="subform__child">
91
+ <h3 class="subform__child__title">${localisedTitle}</h3>
92
+ ${yield (0, exports.render)(childForm, props, child, translationProvider, ownersProvider, optionsProvider, actionListener, languages, readonly, displayMetadata)}
93
+ ${readonly ? lit_1.nothing : (0, lit_1.html) ` <button class="subform__removeBtn" @click="${() => { var _a; return (_a = formsValueContainer === null || formsValueContainer === void 0 ? void 0 : formsValueContainer.removeChild) === null || _a === void 0 ? void 0 : _a.call(formsValueContainer, child); }}">${localisedRemove}</button>`}
94
+ </div>
95
+ `);
96
+ }
97
+ return templates;
98
+ }), Promise.resolve([])))}
93
99
  </div>`;
100
+ });
94
101
  }
95
102
  function renderTextField(fgSpan, fgRowSpan, fg) {
96
- var _a, _b, _c, _d, _e, _f, _g, _h;
97
- return (0, lit_1.html) `<icure-form-text-field
103
+ return __awaiter(this, void 0, void 0, function* () {
104
+ var _a, _b, _c, _d, _e, _f, _g, _h;
105
+ return (0, lit_1.html) `<icure-form-text-field
98
106
  class="icure-form-field"
99
107
  style="${calculateFieldOrGroupSize(fgSpan, fgRowSpan, (_a = fg.styleOptions) === null || _a === void 0 ? void 0 : _a.width)}"
100
108
  label="${fg.field}"
@@ -109,21 +117,24 @@ const render = (form, props, formsValueContainer, translationProvider, ownersPro
109
117
  .suggestionProvider=${(_c = fg.options) === null || _c === void 0 ? void 0 : _c.suggestionProvider}
110
118
  .ownersProvider=${ownersProvider}
111
119
  .translationProvider=${translationProvider !== null && translationProvider !== void 0 ? translationProvider : (form.translations && (0, languages_1.defaultTranslationProvider)(form.translations))}
112
- .validationErrorsProvider="${(0, fields_values_provider_1.getValidationError)(formsValueContainer, fg)}"
120
+ .validationErrorsProvider="${(0, fields_values_provider_1.getValidationErrorProvider)(formsValueContainer, fg)}"
113
121
  .codeColorProvider=${(_d = fg.options) === null || _d === void 0 ? void 0 : _d.codeColorProvider}
114
122
  .linkColorProvider=${(_e = fg.options) === null || _e === void 0 ? void 0 : _e.linkColorProvider}
115
123
  .codeContentProvider=${(_f = fg.options) === null || _f === void 0 ? void 0 : _f.codeContentProvider}
124
+ .defaultValueProvider=${() => formsValueContainer === null || formsValueContainer === void 0 ? void 0 : formsValueContainer.getDefaultValue(fg.field)}
116
125
  .valueProvider="${formsValueContainer && (0, fields_values_provider_1.fieldValuesProvider)(formsValueContainer, fg)}"
117
126
  .metadataProvider=${formsValueContainer && formsValueContainer.getMetadata.bind(formsValueContainer)}
118
127
  .handleValueChanged=${(0, fields_values_provider_1.handleValueChangedProvider)(formsValueContainer, fg, props.defaultOwner)}
119
128
  .handleMetadataChanged=${(0, fields_values_provider_1.handleMetadataChangedProvider)(formsValueContainer)}
120
129
  .styleOptions="${fg.styleOptions}"
121
- .readonly="${readonly || fg.readonly || (((_g = fg.computedProperties) === null || _g === void 0 ? void 0 : _g.readonly) ? !(formsValueContainer === null || formsValueContainer === void 0 ? void 0 : formsValueContainer.compute((_h = fg.computedProperties) === null || _h === void 0 ? void 0 : _h.readonly)) : false)}"
130
+ .readonly="${readonly || fg.readonly || (((_g = fg.computedProperties) === null || _g === void 0 ? void 0 : _g.readonly) ? !(yield (formsValueContainer === null || formsValueContainer === void 0 ? void 0 : formsValueContainer.compute((_h = fg.computedProperties) === null || _h === void 0 ? void 0 : _h.readonly))) : false)}"
122
131
  ></icure-form-text-field>`;
132
+ });
123
133
  }
124
134
  function renderTokenField(fgSpan, fgRowSpan, fg) {
125
- var _a, _b, _c, _d;
126
- return (0, lit_1.html) `<icure-form-token-field
135
+ return __awaiter(this, void 0, void 0, function* () {
136
+ var _a, _b, _c, _d;
137
+ return (0, lit_1.html) `<icure-form-token-field
127
138
  class="icure-form-field"
128
139
  style="${calculateFieldOrGroupSize(fgSpan, fgRowSpan, (_a = fg.styleOptions) === null || _a === void 0 ? void 0 : _a.width)}"
129
140
  label="${fg.field}"
@@ -136,18 +147,20 @@ const render = (form, props, formsValueContainer, translationProvider, ownersPro
136
147
  .suggestionProvider=${(_b = fg.options) === null || _b === void 0 ? void 0 : _b.suggestionProvider}
137
148
  .ownersProvider=${ownersProvider}
138
149
  .translationProvider=${translationProvider !== null && translationProvider !== void 0 ? translationProvider : (form.translations && (0, languages_1.defaultTranslationProvider)(form.translations))}
139
- .validationErrorsProvider="${(0, fields_values_provider_1.getValidationError)(formsValueContainer, fg)}"
150
+ .validationErrorsProvider="${(0, fields_values_provider_1.getValidationErrorProvider)(formsValueContainer, fg)}"
140
151
  .valueProvider="${formsValueContainer && (0, fields_values_provider_1.fieldValuesProvider)(formsValueContainer, fg)}"
141
152
  .metadataProvider=${formsValueContainer && formsValueContainer.getMetadata.bind(formsValueContainer)}
142
153
  .handleValueChanged=${(0, fields_values_provider_1.handleValueChangedProvider)(formsValueContainer, fg, props.defaultOwner)}
143
154
  .handleMetadataChanged=${(0, fields_values_provider_1.handleMetadataChangedProvider)(formsValueContainer)}
144
155
  .styleOptions="${fg.styleOptions}"
145
- .readonly="${readonly || fg.readonly || (((_c = fg.computedProperties) === null || _c === void 0 ? void 0 : _c.readonly) ? !(formsValueContainer === null || formsValueContainer === void 0 ? void 0 : formsValueContainer.compute((_d = fg.computedProperties) === null || _d === void 0 ? void 0 : _d.readonly)) : false)}"
156
+ .readonly="${readonly || fg.readonly || (((_c = fg.computedProperties) === null || _c === void 0 ? void 0 : _c.readonly) ? !(yield (formsValueContainer === null || formsValueContainer === void 0 ? void 0 : formsValueContainer.compute((_d = fg.computedProperties) === null || _d === void 0 ? void 0 : _d.readonly))) : false)}"
146
157
  ></icure-form-token-field>`;
158
+ });
147
159
  }
148
160
  function renderItemsListField(fgSpan, fgRowSpan, fg) {
149
- var _a, _b, _c, _d;
150
- return (0, lit_1.html) `<icure-form-items-list-field
161
+ return __awaiter(this, void 0, void 0, function* () {
162
+ var _a, _b, _c, _d;
163
+ return (0, lit_1.html) `<icure-form-items-list-field
151
164
  class="icure-form-field"
152
165
  style="${calculateFieldOrGroupSize(fgSpan, fgRowSpan, (_a = fg.styleOptions) === null || _a === void 0 ? void 0 : _a.width)}"
153
166
  label="${fg.field}"
@@ -160,18 +173,20 @@ const render = (form, props, formsValueContainer, translationProvider, ownersPro
160
173
  .suggestionProvider=${(_b = fg.options) === null || _b === void 0 ? void 0 : _b.suggestionProvider}
161
174
  .ownersProvider=${ownersProvider}
162
175
  .translationProvider=${translationProvider !== null && translationProvider !== void 0 ? translationProvider : (form.translations && (0, languages_1.defaultTranslationProvider)(form.translations))}
163
- .validationErrorsProvider="${(0, fields_values_provider_1.getValidationError)(formsValueContainer, fg)}"
176
+ .validationErrorsProvider="${(0, fields_values_provider_1.getValidationErrorProvider)(formsValueContainer, fg)}"
164
177
  .valueProvider="${formsValueContainer && (0, fields_values_provider_1.fieldValuesProvider)(formsValueContainer, fg)}"
165
178
  .metadataProvider=${formsValueContainer && formsValueContainer.getMetadata.bind(formsValueContainer)}
166
179
  .handleValueChanged=${(0, fields_values_provider_1.handleValueChangedProvider)(formsValueContainer, fg, props.defaultOwner)}
167
180
  .handleMetadataChanged=${(0, fields_values_provider_1.handleMetadataChangedProvider)(formsValueContainer)}
168
181
  .styleOptions="${fg.styleOptions}"
169
- .readonly="${readonly || fg.readonly || (((_c = fg.computedProperties) === null || _c === void 0 ? void 0 : _c.readonly) ? !(formsValueContainer === null || formsValueContainer === void 0 ? void 0 : formsValueContainer.compute((_d = fg.computedProperties) === null || _d === void 0 ? void 0 : _d.readonly)) : false)}"
182
+ .readonly="${readonly || fg.readonly || (((_c = fg.computedProperties) === null || _c === void 0 ? void 0 : _c.readonly) ? !(yield (formsValueContainer === null || formsValueContainer === void 0 ? void 0 : formsValueContainer.compute((_d = fg.computedProperties) === null || _d === void 0 ? void 0 : _d.readonly))) : false)}"
170
183
  ></icure-form-items-list-field>`;
184
+ });
171
185
  }
172
186
  function renderMeasureField(fgSpan, fgRowSpan, fg) {
173
- var _a, _b;
174
- return (0, lit_1.html) `<icure-form-measure-field
187
+ return __awaiter(this, void 0, void 0, function* () {
188
+ var _a, _b;
189
+ return (0, lit_1.html) `<icure-form-measure-field
175
190
  style="${calculateFieldOrGroupSize(fgSpan, fgRowSpan)}"
176
191
  class="icure-form-field"
177
192
  label="${fg.field}"
@@ -181,18 +196,20 @@ const render = (form, props, formsValueContainer, translationProvider, ownersPro
181
196
  unit="${fg.unit}"
182
197
  .defaultLanguage="${props.language}"
183
198
  .translationProvider=${translationProvider !== null && translationProvider !== void 0 ? translationProvider : (form.translations && (0, languages_1.defaultTranslationProvider)(form.translations))}
184
- .validationErrorsProvider="${(0, fields_values_provider_1.getValidationError)(formsValueContainer, fg)}"
199
+ .validationErrorsProvider="${(0, fields_values_provider_1.getValidationErrorProvider)(formsValueContainer, fg)}"
185
200
  .valueProvider="${formsValueContainer && (0, fields_values_provider_1.fieldValuesProvider)(formsValueContainer, fg)}"
186
201
  .metadataProvider=${formsValueContainer && formsValueContainer.getMetadata.bind(formsValueContainer)}
187
202
  .handleValueChanged=${(0, fields_values_provider_1.handleValueChangedProvider)(formsValueContainer, fg, props.defaultOwner)}
188
203
  .handleMetadataChanged=${(0, fields_values_provider_1.handleMetadataChangedProvider)(formsValueContainer)}
189
204
  .styleOptions="${fg.styleOptions}"
190
- .readonly="${readonly || fg.readonly || (((_a = fg.computedProperties) === null || _a === void 0 ? void 0 : _a.readonly) ? !(formsValueContainer === null || formsValueContainer === void 0 ? void 0 : formsValueContainer.compute((_b = fg.computedProperties) === null || _b === void 0 ? void 0 : _b.readonly)) : false)}"
205
+ .readonly="${readonly || fg.readonly || (((_a = fg.computedProperties) === null || _a === void 0 ? void 0 : _a.readonly) ? !(yield (formsValueContainer === null || formsValueContainer === void 0 ? void 0 : formsValueContainer.compute((_b = fg.computedProperties) === null || _b === void 0 ? void 0 : _b.readonly))) : false)}"
191
206
  ></icure-form-measure-field>`;
207
+ });
192
208
  }
193
209
  function renderNumberField(fgSpan, fgRowSpan, fg) {
194
- var _a, _b;
195
- return (0, lit_1.html) `<icure-form-number-field
210
+ return __awaiter(this, void 0, void 0, function* () {
211
+ var _a, _b;
212
+ return (0, lit_1.html) `<icure-form-number-field
196
213
  style="${calculateFieldOrGroupSize(fgSpan, fgRowSpan)}"
197
214
  class="icure-form-field"
198
215
  label="${fg.field}"
@@ -201,18 +218,20 @@ const render = (form, props, formsValueContainer, translationProvider, ownersPro
201
218
  value="${fg.value}"
202
219
  .defaultLanguage="${props.language}"
203
220
  .translationProvider=${translationProvider !== null && translationProvider !== void 0 ? translationProvider : (form.translations && (0, languages_1.defaultTranslationProvider)(form.translations))}
204
- .validationErrorsProvider="${(0, fields_values_provider_1.getValidationError)(formsValueContainer, fg)}"
221
+ .validationErrorsProvider="${(0, fields_values_provider_1.getValidationErrorProvider)(formsValueContainer, fg)}"
205
222
  .valueProvider="${formsValueContainer && (0, fields_values_provider_1.fieldValuesProvider)(formsValueContainer, fg)}"
206
223
  .metadataProvider=${formsValueContainer && formsValueContainer.getMetadata.bind(formsValueContainer)}
207
224
  .handleValueChanged=${(0, fields_values_provider_1.handleValueChangedProvider)(formsValueContainer, fg, props.defaultOwner)}
208
225
  .handleMetadataChanged=${(0, fields_values_provider_1.handleMetadataChangedProvider)(formsValueContainer)}
209
226
  .styleOptions="${fg.styleOptions}"
210
- .readonly="${readonly || fg.readonly || (((_a = fg.computedProperties) === null || _a === void 0 ? void 0 : _a.readonly) ? !(formsValueContainer === null || formsValueContainer === void 0 ? void 0 : formsValueContainer.compute((_b = fg.computedProperties) === null || _b === void 0 ? void 0 : _b.readonly)) : false)}"
227
+ .readonly="${readonly || fg.readonly || (((_a = fg.computedProperties) === null || _a === void 0 ? void 0 : _a.readonly) ? !(yield (formsValueContainer === null || formsValueContainer === void 0 ? void 0 : formsValueContainer.compute((_b = fg.computedProperties) === null || _b === void 0 ? void 0 : _b.readonly))) : false)}"
211
228
  ></icure-form-number-field>`;
229
+ });
212
230
  }
213
231
  function renderDatePicker(fgSpan, fgRowSpan, fg) {
214
- var _a, _b;
215
- return (0, lit_1.html) `<icure-form-date-picker
232
+ return __awaiter(this, void 0, void 0, function* () {
233
+ var _a, _b;
234
+ return (0, lit_1.html) `<icure-form-date-picker
216
235
  style="${calculateFieldOrGroupSize(fgSpan, fgRowSpan)}"
217
236
  class="icure-form-field"
218
237
  label="${fg.field}"
@@ -221,18 +240,20 @@ const render = (form, props, formsValueContainer, translationProvider, ownersPro
221
240
  value="${fg.now ? (0, dates_1.currentDate)() : fg.value}"
222
241
  .defaultLanguage="${props.language}"
223
242
  .translationProvider=${translationProvider !== null && translationProvider !== void 0 ? translationProvider : (form.translations && (0, languages_1.defaultTranslationProvider)(form.translations))}
224
- .validationErrorsProvider="${(0, fields_values_provider_1.getValidationError)(formsValueContainer, fg)}"
243
+ .validationErrorsProvider="${(0, fields_values_provider_1.getValidationErrorProvider)(formsValueContainer, fg)}"
225
244
  .valueProvider="${formsValueContainer && (0, fields_values_provider_1.fieldValuesProvider)(formsValueContainer, fg)}"
226
245
  .metadataProvider=${formsValueContainer && formsValueContainer.getMetadata.bind(formsValueContainer)}
227
246
  .handleValueChanged=${(0, fields_values_provider_1.handleValueChangedProvider)(formsValueContainer, fg, props.defaultOwner)}
228
247
  .handleMetadataChanged=${(0, fields_values_provider_1.handleMetadataChangedProvider)(formsValueContainer)}
229
248
  .styleOptions="${fg.styleOptions}"
230
- .readonly="${readonly || fg.readonly || (((_a = fg.computedProperties) === null || _a === void 0 ? void 0 : _a.readonly) ? !(formsValueContainer === null || formsValueContainer === void 0 ? void 0 : formsValueContainer.compute((_b = fg.computedProperties) === null || _b === void 0 ? void 0 : _b.readonly)) : false)}"
249
+ .readonly="${readonly || fg.readonly || (((_a = fg.computedProperties) === null || _a === void 0 ? void 0 : _a.readonly) ? !(yield (formsValueContainer === null || formsValueContainer === void 0 ? void 0 : formsValueContainer.compute((_b = fg.computedProperties) === null || _b === void 0 ? void 0 : _b.readonly))) : false)}"
231
250
  ></icure-form-date-picker>`;
251
+ });
232
252
  }
233
253
  function renderTimePicker(fgSpan, fgRowSpan, fg) {
234
- var _a, _b;
235
- return (0, lit_1.html) `<icure-form-time-picker
254
+ return __awaiter(this, void 0, void 0, function* () {
255
+ var _a, _b;
256
+ return (0, lit_1.html) `<icure-form-time-picker
236
257
  style="${calculateFieldOrGroupSize(fgSpan, fgRowSpan)}"
237
258
  class="icure-form-field"
238
259
  label="${fg.field}"
@@ -241,18 +262,20 @@ const render = (form, props, formsValueContainer, translationProvider, ownersPro
241
262
  value="${fg.now ? (0, dates_1.currentTime)() : fg.value}"
242
263
  .defaultLanguage="${props.language}"
243
264
  .translationProvider=${translationProvider !== null && translationProvider !== void 0 ? translationProvider : (form.translations && (0, languages_1.defaultTranslationProvider)(form.translations))}
244
- .validationErrorsProvider="${(0, fields_values_provider_1.getValidationError)(formsValueContainer, fg)}"
265
+ .validationErrorsProvider="${(0, fields_values_provider_1.getValidationErrorProvider)(formsValueContainer, fg)}"
245
266
  .valueProvider="${formsValueContainer && (0, fields_values_provider_1.fieldValuesProvider)(formsValueContainer, fg)}"
246
267
  .metadataProvider=${formsValueContainer && formsValueContainer.getMetadata.bind(formsValueContainer)}
247
268
  .handleValueChanged=${(0, fields_values_provider_1.handleValueChangedProvider)(formsValueContainer, fg, props.defaultOwner)}
248
269
  .handleMetadataChanged=${(0, fields_values_provider_1.handleMetadataChangedProvider)(formsValueContainer)}
249
270
  .styleOptions="${fg.styleOptions}"
250
- .readonly="${readonly || fg.readonly || (((_a = fg.computedProperties) === null || _a === void 0 ? void 0 : _a.readonly) ? !(formsValueContainer === null || formsValueContainer === void 0 ? void 0 : formsValueContainer.compute((_b = fg.computedProperties) === null || _b === void 0 ? void 0 : _b.readonly)) : false)}"
271
+ .readonly="${readonly || fg.readonly || (((_a = fg.computedProperties) === null || _a === void 0 ? void 0 : _a.readonly) ? !(yield (formsValueContainer === null || formsValueContainer === void 0 ? void 0 : formsValueContainer.compute((_b = fg.computedProperties) === null || _b === void 0 ? void 0 : _b.readonly))) : false)}"
251
272
  ></icure-form-time-picker>`;
273
+ });
252
274
  }
253
275
  function renderDateTimePicker(fgSpan, fgRowSpan, fg) {
254
- var _a, _b;
255
- return (0, lit_1.html) `<icure-form-date-time-picker
276
+ return __awaiter(this, void 0, void 0, function* () {
277
+ var _a, _b;
278
+ return (0, lit_1.html) `<icure-form-date-time-picker
256
279
  style="${calculateFieldOrGroupSize(fgSpan, fgRowSpan)}"
257
280
  class="icure-form-field"
258
281
  label="${fg.field}"
@@ -261,18 +284,20 @@ const render = (form, props, formsValueContainer, translationProvider, ownersPro
261
284
  value="${fg.now ? (0, dates_1.currentDateTime)() : fg.value}"
262
285
  .defaultLanguage="${props.language}"
263
286
  .translationProvider=${translationProvider !== null && translationProvider !== void 0 ? translationProvider : (form.translations && (0, languages_1.defaultTranslationProvider)(form.translations))}
264
- .validationErrorsProvider="${(0, fields_values_provider_1.getValidationError)(formsValueContainer, fg)}"
287
+ .validationErrorsProvider="${(0, fields_values_provider_1.getValidationErrorProvider)(formsValueContainer, fg)}"
265
288
  .valueProvider="${formsValueContainer && (0, fields_values_provider_1.fieldValuesProvider)(formsValueContainer, fg)}"
266
289
  .metadataProvider=${formsValueContainer && formsValueContainer.getMetadata.bind(formsValueContainer)}
267
290
  .handleValueChanged=${(0, fields_values_provider_1.handleValueChangedProvider)(formsValueContainer, fg, props.defaultOwner)}
268
291
  .handleMetadataChanged=${(0, fields_values_provider_1.handleMetadataChangedProvider)(formsValueContainer)}
269
292
  .styleOptions="${fg.styleOptions}"
270
- .readonly="${readonly || fg.readonly || (((_a = fg.computedProperties) === null || _a === void 0 ? void 0 : _a.readonly) ? !(formsValueContainer === null || formsValueContainer === void 0 ? void 0 : formsValueContainer.compute((_b = fg.computedProperties) === null || _b === void 0 ? void 0 : _b.readonly)) : false)}"
293
+ .readonly="${readonly || fg.readonly || (((_a = fg.computedProperties) === null || _a === void 0 ? void 0 : _a.readonly) ? !(yield (formsValueContainer === null || formsValueContainer === void 0 ? void 0 : formsValueContainer.compute((_b = fg.computedProperties) === null || _b === void 0 ? void 0 : _b.readonly))) : false)}"
271
294
  ></icure-form-date-time-picker>`;
295
+ });
272
296
  }
273
297
  function renderDropdownField(fgSpan, fgRowSpan, fg) {
274
- var _a, _b, _c;
275
- return (0, lit_1.html) `<icure-form-dropdown-field
298
+ return __awaiter(this, void 0, void 0, function* () {
299
+ var _a, _b, _c;
300
+ return (0, lit_1.html) `<icure-form-dropdown-field
276
301
  style="${calculateFieldOrGroupSize(fgSpan, fgRowSpan)}"
277
302
  class="icure-form-field"
278
303
  .label=${fg.field}
@@ -283,22 +308,24 @@ const render = (form, props, formsValueContainer, translationProvider, ownersPro
283
308
  value="${fg.value}"
284
309
  .codifications="${fg.codifications}"
285
310
  .optionsProvider="${composedOptionsProvider && ((_a = fg.codifications) === null || _a === void 0 ? void 0 : _a.length)
286
- ? (language, terms) => { var _a; return composedOptionsProvider(language, (_a = fg.codifications) !== null && _a !== void 0 ? _a : [], terms, fg.sortOptions); }
287
- : (language, terms) => (0, code_utils_1.filterAndSortOptionsFromFieldDefinition)(language, fg, translationProvider, terms)}"
311
+ ? (language, terms) => { var _a; return composedOptionsProvider(language, (_a = fg.codifications) !== null && _a !== void 0 ? _a : [], terms, fg.sortOptions); }
312
+ : (language, terms) => (0, code_utils_1.filterAndSortOptionsFromFieldDefinition)(language, fg, translationProvider, terms)}"
288
313
  .ownersProvider=${ownersProvider}
289
314
  .translationProvider=${translationProvider !== null && translationProvider !== void 0 ? translationProvider : (form.translations && (0, languages_1.defaultTranslationProvider)(form.translations))}
290
- .validationErrorsProvider="${(0, fields_values_provider_1.getValidationError)(formsValueContainer, fg)}"
315
+ .validationErrorsProvider="${(0, fields_values_provider_1.getValidationErrorProvider)(formsValueContainer, fg)}"
291
316
  .valueProvider="${formsValueContainer && (0, fields_values_provider_1.fieldValuesProvider)(formsValueContainer, fg)}"
292
317
  .metadataProvider=${formsValueContainer && formsValueContainer.getMetadata.bind(formsValueContainer)}
293
318
  .handleValueChanged=${(0, fields_values_provider_1.handleValueChangedProvider)(formsValueContainer, fg, props.defaultOwner)}
294
319
  .handleMetadataChanged=${(0, fields_values_provider_1.handleMetadataChangedProvider)(formsValueContainer)}
295
320
  .styleOptions="${fg.styleOptions}"
296
- .readonly="${readonly || fg.readonly || (((_b = fg.computedProperties) === null || _b === void 0 ? void 0 : _b.readonly) ? !(formsValueContainer === null || formsValueContainer === void 0 ? void 0 : formsValueContainer.compute((_c = fg.computedProperties) === null || _c === void 0 ? void 0 : _c.readonly)) : false)}"
321
+ .readonly="${readonly || fg.readonly || (((_b = fg.computedProperties) === null || _b === void 0 ? void 0 : _b.readonly) ? !(yield (formsValueContainer === null || formsValueContainer === void 0 ? void 0 : formsValueContainer.compute((_c = fg.computedProperties) === null || _c === void 0 ? void 0 : _c.readonly))) : false)}"
297
322
  ></icure-form-dropdown-field>`;
323
+ });
298
324
  }
299
325
  function renderRadioButtons(fgSpan, fgRowSpan, fg) {
300
- var _a, _b, _c;
301
- return (0, lit_1.html) `<icure-form-radio-button
326
+ return __awaiter(this, void 0, void 0, function* () {
327
+ var _a, _b, _c;
328
+ return (0, lit_1.html) `<icure-form-radio-button
302
329
  style="${calculateFieldOrGroupSize(fgSpan, fgRowSpan)}"
303
330
  class="icure-form-field"
304
331
  .label="${fg.field}"
@@ -309,22 +336,24 @@ const render = (form, props, formsValueContainer, translationProvider, ownersPro
309
336
  .sortOptions="${fg.sortOptions}"
310
337
  .codifications="${fg.codifications}"
311
338
  .optionsProvider="${composedOptionsProvider && ((_a = fg.codifications) === null || _a === void 0 ? void 0 : _a.length)
312
- ? (language, terms) => { var _a; return composedOptionsProvider(language, (_a = fg.codifications) !== null && _a !== void 0 ? _a : [], terms, fg.sortOptions); }
313
- : (language, terms) => (0, code_utils_1.filterAndSortOptionsFromFieldDefinition)(language, fg, translationProvider, terms)}"
339
+ ? (language, terms) => { var _a; return composedOptionsProvider(language, (_a = fg.codifications) !== null && _a !== void 0 ? _a : [], terms, fg.sortOptions); }
340
+ : (language, terms) => (0, code_utils_1.filterAndSortOptionsFromFieldDefinition)(language, fg, translationProvider, terms)}"
314
341
  .ownersProvider=${ownersProvider}
315
342
  .translationProvider=${translationProvider !== null && translationProvider !== void 0 ? translationProvider : (form.translations && (0, languages_1.defaultTranslationProvider)(form.translations))}
316
- .validationErrorsProvider="${(0, fields_values_provider_1.getValidationError)(formsValueContainer, fg)}"
343
+ .validationErrorsProvider="${(0, fields_values_provider_1.getValidationErrorProvider)(formsValueContainer, fg)}"
317
344
  .valueProvider="${formsValueContainer && (0, fields_values_provider_1.fieldValuesProvider)(formsValueContainer, fg)}"
318
345
  .metadataProvider=${formsValueContainer && formsValueContainer.getMetadata.bind(formsValueContainer)}
319
346
  .handleValueChanged=${(0, fields_values_provider_1.handleValueChangedProvider)(formsValueContainer, fg, props.defaultOwner)}
320
347
  .handleMetadataChanged=${(0, fields_values_provider_1.handleMetadataChangedProvider)(formsValueContainer)}
321
348
  .styleOptions="${fg.styleOptions}"
322
- .readonly="${readonly || fg.readonly || (((_b = fg.computedProperties) === null || _b === void 0 ? void 0 : _b.readonly) ? !(formsValueContainer === null || formsValueContainer === void 0 ? void 0 : formsValueContainer.compute((_c = fg.computedProperties) === null || _c === void 0 ? void 0 : _c.readonly)) : false)}"
349
+ .readonly="${readonly || fg.readonly || (((_b = fg.computedProperties) === null || _b === void 0 ? void 0 : _b.readonly) ? !(yield (formsValueContainer === null || formsValueContainer === void 0 ? void 0 : formsValueContainer.compute((_c = fg.computedProperties) === null || _c === void 0 ? void 0 : _c.readonly))) : false)}"
323
350
  ></icure-form-radio-button>`;
351
+ });
324
352
  }
325
353
  function renderCheckboxes(fgSpan, fgRowSpan, fg) {
326
- var _a, _b, _c;
327
- return (0, lit_1.html) ` <icure-form-checkbox
354
+ return __awaiter(this, void 0, void 0, function* () {
355
+ var _a, _b, _c;
356
+ return (0, lit_1.html) ` <icure-form-checkbox
328
357
  style="${calculateFieldOrGroupSize(fgSpan, fgRowSpan)}"
329
358
  class="icure-form-field"
330
359
  .label="${fg.field}"
@@ -336,106 +365,118 @@ const render = (form, props, formsValueContainer, translationProvider, ownersPro
336
365
  value="${fg.value}"
337
366
  .codifications="${fg.codifications}"
338
367
  .optionsProvider="${composedOptionsProvider && ((_a = fg.codifications) === null || _a === void 0 ? void 0 : _a.length)
339
- ? (language, terms) => { var _a; return composedOptionsProvider(language, (_a = fg.codifications) !== null && _a !== void 0 ? _a : [], terms, fg.sortOptions); }
340
- : (language, terms) => (0, code_utils_1.filterAndSortOptionsFromFieldDefinition)(language, fg, translationProvider, terms)}"
368
+ ? (language, terms) => { var _a; return composedOptionsProvider(language, (_a = fg.codifications) !== null && _a !== void 0 ? _a : [], terms, fg.sortOptions); }
369
+ : (language, terms) => (0, code_utils_1.filterAndSortOptionsFromFieldDefinition)(language, fg, translationProvider, terms)}"
341
370
  .ownersProvider="${ownersProvider}"
342
371
  .translationProvider="${translationProvider !== null && translationProvider !== void 0 ? translationProvider : (form.translations && (0, languages_1.defaultTranslationProvider)(form.translations))}"
343
- .validationErrorsProvider="${(0, fields_values_provider_1.getValidationError)(formsValueContainer, fg)}"
372
+ .validationErrorsProvider="${(0, fields_values_provider_1.getValidationErrorProvider)(formsValueContainer, fg)}"
344
373
  .valueProvider="${formsValueContainer && (0, fields_values_provider_1.fieldValuesProvider)(formsValueContainer, fg)}"
345
374
  .metadataProvider="${formsValueContainer && formsValueContainer.getMetadata.bind(formsValueContainer)}"
346
375
  .handleValueChanged="${(0, fields_values_provider_1.handleValueChangedProvider)(formsValueContainer, fg, props.defaultOwner)}"
347
376
  .handleMetadataChanged="${(0, fields_values_provider_1.handleMetadataChangedProvider)(formsValueContainer)}"
348
377
  .styleOptions="${fg.styleOptions}"
349
- .readonly="${readonly || fg.readonly || (((_b = fg.computedProperties) === null || _b === void 0 ? void 0 : _b.readonly) ? !(formsValueContainer === null || formsValueContainer === void 0 ? void 0 : formsValueContainer.compute((_c = fg.computedProperties) === null || _c === void 0 ? void 0 : _c.readonly)) : false)}"
378
+ .readonly="${readonly || fg.readonly || (((_b = fg.computedProperties) === null || _b === void 0 ? void 0 : _b.readonly) ? !(yield (formsValueContainer === null || formsValueContainer === void 0 ? void 0 : formsValueContainer.compute((_c = fg.computedProperties) === null || _c === void 0 ? void 0 : _c.readonly))) : false)}"
350
379
  ></icure-form-checkbox>`;
380
+ });
351
381
  }
352
382
  function renderButton(fgSpan, fgRowSpan, fg) {
353
- var _a, _b, _c, _d, _e;
354
- return (0, lit_1.html) `<icure-form-button
383
+ return __awaiter(this, void 0, void 0, function* () {
384
+ var _a, _b, _c, _d, _e;
385
+ return (0, lit_1.html) `<icure-form-button
355
386
  style="${calculateFieldOrGroupSize(fgSpan, fgRowSpan)}"
356
387
  class="icure-form-button"
357
388
  label="${(_a = fg.shortLabel) !== null && _a !== void 0 ? _a : fg.field}"
358
389
  .defaultLanguage="${props.language}"
359
390
  .translationProvider="${translationProvider !== null && translationProvider !== void 0 ? translationProvider : (form.translations && (0, languages_1.defaultTranslationProvider)(form.translations))}"
360
- .validationErrorsProvider="${(0, fields_values_provider_1.getValidationError)(formsValueContainer, fg)}"
391
+ .validationErrorsProvider="${(0, fields_values_provider_1.getValidationErrorProvider)(formsValueContainer, fg)}"
361
392
  .actionListener="${actionListener}"
362
- .event="${fg.event !== undefined ? fg.event : ((_b = fg.computedProperties) === null || _b === void 0 ? void 0 : _b.event) ? !(formsValueContainer === null || formsValueContainer === void 0 ? void 0 : formsValueContainer.compute((_c = fg.computedProperties) === null || _c === void 0 ? void 0 : _c.event)) : 'submit'}"
363
- .payload="${fg.payload !== undefined ? fg.payload : ((_d = fg.computedProperties) === null || _d === void 0 ? void 0 : _d.payload) ? !(formsValueContainer === null || formsValueContainer === void 0 ? void 0 : formsValueContainer.compute((_e = fg.computedProperties) === null || _e === void 0 ? void 0 : _e.payload)) : undefined}"
393
+ .event="${fg.event !== undefined ? fg.event : ((_b = fg.computedProperties) === null || _b === void 0 ? void 0 : _b.event) ? !(yield (formsValueContainer === null || formsValueContainer === void 0 ? void 0 : formsValueContainer.compute((_c = fg.computedProperties) === null || _c === void 0 ? void 0 : _c.event))) : 'submit'}"
394
+ .payload="${fg.payload !== undefined ? fg.payload : ((_d = fg.computedProperties) === null || _d === void 0 ? void 0 : _d.payload) ? !(yield (formsValueContainer === null || formsValueContainer === void 0 ? void 0 : formsValueContainer.compute((_e = fg.computedProperties) === null || _e === void 0 ? void 0 : _e.payload))) : undefined}"
364
395
  .styleOptions="${fg.styleOptions}"
365
396
  ></icure-form-button>`;
397
+ });
366
398
  }
367
399
  function renderLabel(fgSpan, fgRowSpan, fg) {
368
- var _a, _b;
369
- return (0, lit_1.html) `<icure-form-label
400
+ return __awaiter(this, void 0, void 0, function* () {
401
+ var _a, _b, _c;
402
+ return (0, lit_1.html) `<icure-form-label
370
403
  style="${calculateFieldOrGroupSize(fgSpan, fgRowSpan)}"
371
404
  class="icure-form-field"
372
405
  .defaultLanguage="${props.language}"
373
406
  labelPosition=${props.labelPosition}
374
- label="${fg.field}"
407
+ label="${(_a = fg.shortLabel) !== null && _a !== void 0 ? _a : fg.field}"
375
408
  .translationProvider="${translationProvider !== null && translationProvider !== void 0 ? translationProvider : (form.translations && (0, languages_1.defaultTranslationProvider)(form.translations))}"
376
- .validationErrorsProvider="${(0, fields_values_provider_1.getValidationError)(formsValueContainer, fg)}"
409
+ .validationErrorsProvider="${(0, fields_values_provider_1.getValidationErrorProvider)(formsValueContainer, fg)}"
377
410
  .styleOptions="${fg.styleOptions}"
378
- .readonly="${readonly || fg.readonly || (((_a = fg.computedProperties) === null || _a === void 0 ? void 0 : _a.readonly) ? !(formsValueContainer === null || formsValueContainer === void 0 ? void 0 : formsValueContainer.compute((_b = fg.computedProperties) === null || _b === void 0 ? void 0 : _b.readonly)) : false)}"
411
+ .readonly="${readonly || fg.readonly || (((_b = fg.computedProperties) === null || _b === void 0 ? void 0 : _b.readonly) ? !(yield (formsValueContainer === null || formsValueContainer === void 0 ? void 0 : formsValueContainer.compute((_c = fg.computedProperties) === null || _c === void 0 ? void 0 : _c.readonly))) : false)}"
379
412
  ></icure-form-label>`;
413
+ });
380
414
  }
381
415
  const renderFieldGroupOrSubform = function (fg, level) {
382
- var _a, _b, _c, _d, _e, _f;
383
- if (!fg) {
384
- return lit_1.nothing;
385
- }
386
- const computedProperties = Object.keys((_a = fg.computedProperties) !== null && _a !== void 0 ? _a : {}).reduce((acc, k) => { var _a; return (Object.assign(Object.assign({}, acc), { [k]: ((_a = fg.computedProperties) === null || _a === void 0 ? void 0 : _a[k]) && (formsValueContainer === null || formsValueContainer === void 0 ? void 0 : formsValueContainer.compute(fg.computedProperties[k])) })); }, {});
387
- if (computedProperties['hidden']) {
388
- return lit_1.nothing;
389
- }
390
- const fgSpan = ((_c = (_b = computedProperties['span']) !== null && _b !== void 0 ? _b : fg.span) !== null && _c !== void 0 ? _c : 6);
391
- const fgRowSpan = ((_e = (_d = computedProperties['rowSpan']) !== null && _d !== void 0 ? _d : fg.rowSpan) !== null && _e !== void 0 ? _e : 1);
392
- if (fg.clazz === 'group' && ((_f = fg.fields) === null || _f === void 0 ? void 0 : _f.length)) {
393
- return renderGroup(fg.copy(Object.assign({}, computedProperties)), fgSpan, level);
394
- }
395
- else if (fg.clazz === 'subform' && (fg.id || computedProperties['title'])) {
396
- return renderSubform(fg.copy(Object.assign({}, computedProperties)), fgSpan, level);
397
- }
398
- else if (fg.clazz === 'field') {
399
- const field = fg.copy(Object.assign({}, computedProperties));
400
- return (0, lit_1.html) `${fg.type === 'text-field'
401
- ? renderTextField(fgSpan, fgRowSpan, field)
402
- : fg.type === 'measure-field'
403
- ? renderMeasureField(fgSpan, fgRowSpan, field)
404
- : fg.type === 'token-field'
405
- ? renderTokenField(fgSpan, fgRowSpan, field)
406
- : fg.type === 'items-list-field'
407
- ? renderItemsListField(fgSpan, fgRowSpan, field)
408
- : fg.type === 'number-field'
409
- ? renderNumberField(fgSpan, fgRowSpan, field)
410
- : fg.type === 'date-picker'
411
- ? renderDatePicker(fgSpan, fgRowSpan, field)
412
- : fg.type === 'time-picker'
413
- ? renderTimePicker(fgSpan, fgRowSpan, field)
414
- : fg.type === 'date-time-picker'
415
- ? renderDateTimePicker(fgSpan, fgRowSpan, field)
416
- : fg.type === 'dropdown-field'
417
- ? renderDropdownField(fgSpan, fgRowSpan, field)
418
- : fg.type === 'radio-button'
419
- ? renderRadioButtons(fgSpan, fgRowSpan, field)
420
- : fg.type === 'checkbox'
421
- ? renderCheckboxes(fgSpan, fgRowSpan, field)
422
- : fg.type === 'label'
423
- ? renderLabel(fgSpan, fgRowSpan, field)
424
- : fg.type === 'action'
425
- ? renderButton(fgSpan, fgRowSpan, field)
426
- : ''}`;
427
- }
428
- return (0, lit_1.html) ``;
416
+ return __awaiter(this, void 0, void 0, function* () {
417
+ var _a, _b, _c, _d, _e, _f;
418
+ if (!fg) {
419
+ return lit_1.nothing;
420
+ }
421
+ const computedProperties = (yield Object.keys((_a = fg.computedProperties) !== null && _a !== void 0 ? _a : {})
422
+ .filter((k) => k !== 'value' && k !== 'defaultValue')
423
+ .reduce((acc, k) => __awaiter(this, void 0, void 0, function* () { var _a; return (Object.assign(Object.assign({}, (yield acc)), { [k]: ((_a = fg.computedProperties) === null || _a === void 0 ? void 0 : _a[k]) && (yield (formsValueContainer === null || formsValueContainer === void 0 ? void 0 : formsValueContainer.compute(fg.computedProperties[k]))) })); }), Promise.resolve({})));
424
+ if (computedProperties['hidden']) {
425
+ return lit_1.nothing;
426
+ }
427
+ const fgSpan = ((_c = (_b = computedProperties['span']) !== null && _b !== void 0 ? _b : fg.span) !== null && _c !== void 0 ? _c : 6);
428
+ const fgRowSpan = ((_e = (_d = computedProperties['rowSpan']) !== null && _d !== void 0 ? _d : fg.rowSpan) !== null && _e !== void 0 ? _e : 1);
429
+ if (fg.clazz === 'group' && ((_f = fg.fields) === null || _f === void 0 ? void 0 : _f.length)) {
430
+ return yield renderGroup(fg.copy(Object.assign({}, computedProperties)), fgSpan, level);
431
+ }
432
+ else if (fg.clazz === 'subform' && (fg.id || computedProperties['title'])) {
433
+ return yield renderSubform(fg.copy(Object.assign({}, computedProperties)), fgSpan, level);
434
+ }
435
+ else if (fg.clazz === 'field') {
436
+ const field = fg.copy(Object.assign({}, computedProperties));
437
+ return (0, lit_1.html) `${fg.type === 'text-field'
438
+ ? yield renderTextField(fgSpan, fgRowSpan, field)
439
+ : fg.type === 'measure-field'
440
+ ? yield renderMeasureField(fgSpan, fgRowSpan, field)
441
+ : fg.type === 'token-field'
442
+ ? yield renderTokenField(fgSpan, fgRowSpan, field)
443
+ : fg.type === 'items-list-field'
444
+ ? yield renderItemsListField(fgSpan, fgRowSpan, field)
445
+ : fg.type === 'number-field'
446
+ ? yield renderNumberField(fgSpan, fgRowSpan, field)
447
+ : fg.type === 'date-picker'
448
+ ? yield renderDatePicker(fgSpan, fgRowSpan, field)
449
+ : fg.type === 'time-picker'
450
+ ? yield renderTimePicker(fgSpan, fgRowSpan, field)
451
+ : fg.type === 'date-time-picker'
452
+ ? yield renderDateTimePicker(fgSpan, fgRowSpan, field)
453
+ : fg.type === 'dropdown-field'
454
+ ? yield renderDropdownField(fgSpan, fgRowSpan, field)
455
+ : fg.type === 'radio-button'
456
+ ? yield renderRadioButtons(fgSpan, fgRowSpan, field)
457
+ : fg.type === 'checkbox'
458
+ ? yield renderCheckboxes(fgSpan, fgRowSpan, field)
459
+ : fg.type === 'label'
460
+ ? yield renderLabel(fgSpan, fgRowSpan, field)
461
+ : fg.type === 'action'
462
+ ? yield renderButton(fgSpan, fgRowSpan, field)
463
+ : ''}`;
464
+ }
465
+ return (0, lit_1.html) ``;
466
+ });
429
467
  };
430
468
  const calculateFieldOrGroupSize = (span, rowSpan, fixedWidth) => {
431
469
  if (fixedWidth)
432
470
  return `width: ${fixedWidth}px`;
433
471
  return `grid-column: span ${span}; ${rowSpan > 1 ? `grid-row: span ${rowSpan}` : ''}`;
434
472
  };
435
- const renderForm = (form) => {
436
- return form.sections.map((s) => (0, lit_1.html) `<div class="icure-form">${s.fields.map((fieldOrGroup) => renderFieldGroupOrSubform(fieldOrGroup, 3))}</div>`);
437
- };
438
- return (0, lit_1.html) ` ${renderForm(form)} `;
439
- };
473
+ const renderForm = (form, sectionWrapper) => __awaiter(void 0, void 0, void 0, function* () {
474
+ return yield Promise.all(form.sections.map((s, idx) => __awaiter(void 0, void 0, void 0, function* () {
475
+ const section = yield Promise.all(s.fields.map((fieldOrGroup) => renderFieldGroupOrSubform(fieldOrGroup, 3)));
476
+ return sectionWrapper(idx, () => (0, lit_1.html) ` <div class="icure-form">${section}</div>`);
477
+ })));
478
+ });
479
+ return (0, lit_1.html) `${yield renderForm(form, sectionWrapper !== null && sectionWrapper !== void 0 ? sectionWrapper : ((idx, section) => section()))}`;
480
+ });
440
481
  exports.render = render;
441
482
  //# sourceMappingURL=form.js.map