@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
@@ -28,6 +28,7 @@ const lit_1 = require("lit");
28
28
  const decorators_js_1 = require("lit/decorators.js");
29
29
  const prosemirror_state_1 = require("prosemirror-state");
30
30
  const prosemirror_view_1 = require("prosemirror-view");
31
+ const prosemirror_model_1 = require("prosemirror-model");
31
32
  const prosemirror_history_1 = require("prosemirror-history");
32
33
  const prosemirror_keymap_1 = require("prosemirror-keymap");
33
34
  const prosemirror_commands_1 = require("prosemirror-commands");
@@ -47,6 +48,25 @@ const common_1 = require("../common");
47
48
  const model_1 = require("../model");
48
49
  const utils_1 = require("../common/utils");
49
50
  const baseCss = (0, lit_1.css) `@charset "UTF-8";
51
+ .tab-container .tab-bar li {
52
+ display: inline-block;
53
+ padding: 8px 16px;
54
+ cursor: pointer;
55
+ color: #000000;
56
+ font-size: 14px;
57
+ font-weight: 500;
58
+ }
59
+ .tab-container .tab-bar li.active {
60
+ background-color: #656565;
61
+ color: white;
62
+ }
63
+ .tab-container .tab-content .tab {
64
+ display: none;
65
+ }
66
+ .tab-container .tab-content .tab.active {
67
+ display: block;
68
+ }
69
+
50
70
  :host {
51
71
  --bg-color-1: #f44336;
52
72
  }
@@ -95,15 +115,15 @@ const baseCss = (0, lit_1.css) `@charset "UTF-8";
95
115
  margin-right: 0;
96
116
  }
97
117
 
98
- .ProseMirror-hideselection {
99
- caret-color: transparent;
100
- }
101
118
  .ProseMirror-hideselection *::selection {
102
119
  background: transparent;
103
120
  }
104
121
  .ProseMirror-hideselection *::-moz-selection {
105
122
  background: transparent;
106
123
  }
124
+ .ProseMirror-hideselection {
125
+ caret-color: transparent;
126
+ }
107
127
 
108
128
  .ProseMirror-selectednode {
109
129
  outline: 2px solid #8cf;
@@ -894,13 +914,13 @@ app-date-picker {
894
914
  margin-bottom: 20px;
895
915
  }
896
916
  .icure-form h2 {
897
- font-size: 14.4px;
917
+ font-size: add-two(12px, 0, 1.2);
898
918
  font-weight: 700;
899
919
  color: #084B83;
900
920
  padding: 2px;
901
921
  }
902
922
  .icure-form h3 {
903
- font-size: 13.2px;
923
+ font-size: add-two(12px, 0, 1.1);
904
924
  font-weight: 500;
905
925
  color: #084B83;
906
926
  padding: 6px;
@@ -932,17 +952,16 @@ app-date-picker {
932
952
  line-height: 1.4em;
933
953
  cursor: text;
934
954
  font-size: 12px;
935
- left: 9px;
955
+ left: add-two(8px, 1px);
936
956
  color: #084B83;
937
957
  align-items: center;
938
- height: 28px;
958
+ text-wrap: auto;
959
+ min-height: 28px;
939
960
  max-width: 85%;
940
961
  min-width: 0;
941
962
  }
942
963
  .icure-text-field .icure-label.float, .icure-button-group .icure-label.float {
943
964
  display: flex;
944
- white-space: nowrap;
945
- text-overflow: ellipsis;
946
965
  overflow: hidden;
947
966
  }
948
967
 
@@ -977,7 +996,6 @@ app-date-picker {
977
996
  border-style: solid;
978
997
  border-color: #DDE3E7;
979
998
  border-radius: 2px;
980
- box-sizing: border-box;
981
999
  outline: 0;
982
1000
  font: inherit;
983
1001
  font-size: 14px;
@@ -990,6 +1008,25 @@ app-date-picker {
990
1008
  background-color: #ffffff;
991
1009
  color: #000000;
992
1010
  }
1011
+ .icure-text-field .icure-input .reset-button,
1012
+ .icure-text-field .input-container .reset-button {
1013
+ position: absolute;
1014
+ right: 0;
1015
+ border: none;
1016
+ background: transparent;
1017
+ top: 0;
1018
+ opacity: 0.5;
1019
+ cursor: pointer;
1020
+ height: 20px;
1021
+ margin-left: 4px;
1022
+ margin-right: 4px;
1023
+ padding: 0;
1024
+ }
1025
+ .icure-text-field .icure-input .reset-button svg,
1026
+ .icure-text-field .input-container .reset-button svg {
1027
+ width: 15px;
1028
+ height: 15px;
1029
+ }
993
1030
  .icure-text-field .icure-input__validationError,
994
1031
  .icure-text-field .input-container__validationError {
995
1032
  border-color: red;
@@ -1103,8 +1140,8 @@ input[type=radio] {
1103
1140
  line-height: 1.4em;
1104
1141
  cursor: text;
1105
1142
  font-size: 12px;
1106
- top: calc(1.4em + 1px);
1107
- left: 9px;
1143
+ top: add-three(1.4em, 1px, 0);
1144
+ left: add-two(8px, 1px);
1108
1145
  transition: transform 0.2s ease-out, color 0.2s ease-out;
1109
1146
  color: #084B83;
1110
1147
  display: flex;
@@ -1135,6 +1172,8 @@ const utils_2 = require("../icure-form/fields/utils");
1135
1172
  const markdown_1 = require("../../utils/markdown");
1136
1173
  const measure_schema_1 = require("./schema/measure-schema");
1137
1174
  const dates_1 = require("../../utils/dates");
1175
+ const index_1 = require("../../index");
1176
+ const paths_1 = require("../common/styles/paths");
1138
1177
  // Extend the LitElement base class
1139
1178
  class IcureTextField extends common_1.Field {
1140
1179
  constructor() {
@@ -1163,9 +1202,14 @@ class IcureTextField extends common_1.Field {
1163
1202
  this.trToSave = undefined;
1164
1203
  }
1165
1204
  _handleClickOutside(event) {
1205
+ var _a;
1206
+ const pm = (_a = this.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelectorAll('.ProseMirror')[0];
1166
1207
  if (!event.composedPath().includes(this)) {
1167
1208
  event.stopPropagation();
1168
1209
  }
1210
+ else if (pm && !event.composedPath().includes(pm)) {
1211
+ pm.focus();
1212
+ }
1169
1213
  }
1170
1214
  connectedCallback() {
1171
1215
  super.connectedCallback();
@@ -1240,31 +1284,37 @@ class IcureTextField extends common_1.Field {
1240
1284
  : undefined, valueId)) && (this.selectedRevision = undefined);
1241
1285
  }
1242
1286
  }
1243
- render() {
1244
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w;
1287
+ renderSync({ validationErrors }) {
1288
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t;
1245
1289
  const renderHash = Math.random();
1246
1290
  let metadata;
1247
1291
  let rev;
1248
1292
  let versions;
1249
- const validationError = (_b = (_a = this.validationErrorsProvider) === null || _a === void 0 ? void 0 : _a.call(this)) === null || _b === void 0 ? void 0 : _b.length;
1293
+ const validationError = validationErrors.length;
1250
1294
  let valueForExistingLanguages = undefined;
1295
+ if (index_1.icureFormLogging) {
1296
+ console.log(`Rendering text-field ${this.schema} ${this.label} [${this.displayedLabels}]`);
1297
+ }
1251
1298
  if (this.view) {
1252
1299
  let parsedDoc;
1253
- const data = (_c = this.valueProvider) === null || _c === void 0 ? void 0 : _c.call(this);
1300
+ const data = (_a = this.valueProvider) === null || _a === void 0 ? void 0 : _a.call(this);
1301
+ if (index_1.icureFormLogging) {
1302
+ console.log(`Data for ${this.label} is ${JSON.stringify(data)}`);
1303
+ }
1254
1304
  if (this.isMultivalued()) {
1255
- const values = (0, utils_2.extractValues)(data, (_d = this.metadataProvider) !== null && _d !== void 0 ? _d : (() => ({})));
1305
+ const values = (0, utils_2.extractValues)(data, (_b = this.metadataProvider) !== null && _b !== void 0 ? _b : (() => ({})));
1256
1306
  parsedDoc =
1257
- (_f = (_e = this.proseMirrorSchema) === null || _e === void 0 ? void 0 : _e.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 && _f !== void 0 ? _f : undefined;
1307
+ (_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;
1258
1308
  }
1259
1309
  else {
1260
1310
  let id;
1261
1311
  [id, versions] = (0, utils_2.extractSingleValue)(data);
1262
1312
  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];
1263
- const valueForLanguage = (_j = (_h = (_g = version === null || version === void 0 ? void 0 : version.value) === null || _g === void 0 ? void 0 : _g.content) === null || _h === void 0 ? void 0 : _h[this.language()]) !== null && _j !== void 0 ? _j : '';
1264
- valueForExistingLanguages = Object.keys((_l = (_k = version === null || version === void 0 ? void 0 : version.value) === null || _k === void 0 ? void 0 : _k.content) !== null && _l !== void 0 ? _l : {});
1265
- parsedDoc = valueForLanguage ? (_o = (_m = this.parser) === null || _m === void 0 ? void 0 : _m.parse(valueForLanguage)) !== null && _o !== void 0 ? _o : undefined : undefined;
1313
+ 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 : '';
1314
+ 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 : {});
1315
+ parsedDoc = valueForLanguage ? (_l = (_k = this.parser) === null || _k === void 0 ? void 0 : _k.parse(valueForLanguage)) !== null && _l !== void 0 ? _l : undefined : undefined;
1266
1316
  rev = version === null || version === void 0 ? void 0 : version.revision;
1267
- metadata = id && rev !== undefined ? (_t = (_s = (_r = (_p = this.metadataProvider) === null || _p === void 0 ? void 0 : _p.call(this, id, (_q = versions === null || versions === void 0 ? void 0 : versions.map((v) => v.revision)) !== null && _q !== void 0 ? _q : [])) === null || _r === void 0 ? void 0 : _r[id]) === null || _s === void 0 ? void 0 : _s.find((m) => m.revision === rev)) === null || _t === void 0 ? void 0 : _t.value : undefined;
1317
+ 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;
1268
1318
  }
1269
1319
  if (parsedDoc) {
1270
1320
  const selection = this.view.state.selection;
@@ -1297,33 +1347,54 @@ class IcureTextField extends common_1.Field {
1297
1347
  <div class="icure-input-metadata-container">
1298
1348
  <div class="icure-input ${validationError ? 'icure-input__validationError' : ''} ${this.displayMetadata && metadata ? 'icure-input__withMetadata' : ''}">
1299
1349
  <div id="editor" class="${this.schema}" style="min-height: calc( ${this.lines}rem + 5px )"></div>
1350
+ ${!this.displayMetadata && this.defaultValueProvider ? (0, lit_1.html) `<div id="reset" class="reset-button" @click="${() => __awaiter(this, void 0, void 0, function* () { return yield this.reset(renderHash); })}">${paths_1.resetPicto}</div` : lit_1.nothing}
1300
1351
  </div>
1301
-
1302
- ${this.displayMetadata && metadata
1352
+ ${this.displayMetadata && metadata
1303
1353
  ? (0, lit_1.html) `
1304
- <div class="icure-metadata-container ${validationError ? 'icure-metadata-container__validationError' : ''}">
1305
- <icure-metadata-buttons-bar
1306
- .metadata="${metadata}"
1307
- .revision="${rev}"
1308
- .versions="${versions !== null && versions !== void 0 ? versions : []}"
1309
- .valueId="${(_v = (0, utils_2.extractSingleValue)((_u = this.valueProvider) === null || _u === void 0 ? void 0 : _u.call(this))) === null || _v === void 0 ? void 0 : _v[0]}"
1310
- .defaultLanguage="${this.defaultLanguage}"
1311
- .selectedLanguage="${this.selectedLanguage}"
1312
- .languages="${this.languages}"
1313
- .handleMetadataChanged="${this.handleMetadataChanged}"
1314
- .handleLanguageSelected="${(iso) => (this.selectedLanguage = iso)}"
1315
- .handleRevisionSelected="${(rev) => (this.selectedRevision = rev)}"
1316
- .ownersProvider="${this.ownersProvider}"
1317
- .existingLanguages="${valueForExistingLanguages !== null && valueForExistingLanguages !== void 0 ? valueForExistingLanguages : undefined}"
1318
- />
1319
- </div>
1320
- `
1354
+ <div class="icure-metadata-container ${validationError ? 'icure-metadata-container__validationError' : ''}">
1355
+ <icure-metadata-buttons-bar
1356
+ .metadata="${metadata}"
1357
+ .revision="${rev}"
1358
+ .versions="${versions !== null && versions !== void 0 ? versions : []}"
1359
+ .valueId="${(_t = (0, utils_2.extractSingleValue)((_s = this.valueProvider) === null || _s === void 0 ? void 0 : _s.call(this))) === null || _t === void 0 ? void 0 : _t[0]}"
1360
+ .defaultLanguage="${this.defaultLanguage}"
1361
+ .selectedLanguage="${this.selectedLanguage}"
1362
+ .languages="${this.languages}"
1363
+ .handleReset="${() => this.reset(renderHash)}"
1364
+ .handleMetadataChanged="${this.handleMetadataChanged}"
1365
+ .handleLanguageSelected="${(iso) => (this.selectedLanguage = iso)}"
1366
+ .handleRevisionSelected="${(rev) => (this.selectedRevision = rev)}"
1367
+ .ownersProvider="${this.ownersProvider}"
1368
+ .existingLanguages="${valueForExistingLanguages !== null && valueForExistingLanguages !== void 0 ? valueForExistingLanguages : undefined}"
1369
+ />
1370
+ </div>
1371
+ `
1321
1372
  : ''}
1373
+ </div>
1374
+ <div class="error">${validationErrors.map(([, error]) => { var _a; return (0, lit_1.html) `<div>${(_a = this.translationProvider) === null || _a === void 0 ? void 0 : _a.call(this, this.language(), error)}</div>`; })}</div>
1322
1375
  </div>
1323
- <div class="error">${(_w = this.validationErrorsProvider) === null || _w === void 0 ? void 0 : _w.call(this).map(([, error]) => { var _a; return (0, lit_1.html) `<div>${(_a = this.translationProvider) === null || _a === void 0 ? void 0 : _a.call(this, this.language(), error)}</div>`; })}</div>
1324
1376
  </div>
1325
1377
  `;
1326
1378
  }
1379
+ reset(renderHash) {
1380
+ return __awaiter(this, void 0, void 0, function* () {
1381
+ var _a, _b, _c, _d, _e, _f, _g, _h;
1382
+ if (this.view) {
1383
+ const defaultValue = yield ((_a = this.defaultValueProvider) === null || _a === void 0 ? void 0 : _a.call(this));
1384
+ const contentForLanguage = (_e = (_c = (_b = defaultValue === null || defaultValue === void 0 ? void 0 : defaultValue.content) === null || _b === void 0 ? void 0 : _b[this.language()]) !== null && _c !== void 0 ? _c : (_d = defaultValue === null || defaultValue === void 0 ? void 0 : defaultValue.content) === null || _d === void 0 ? void 0 : _d[this.defaultLanguage]) !== null && _e !== void 0 ? _e : (_f = defaultValue === null || defaultValue === void 0 ? void 0 : defaultValue.content) === null || _f === void 0 ? void 0 : _f['*'];
1385
+ const newState = prosemirror_state_1.EditorState.create({
1386
+ schema: this.view.state.schema,
1387
+ doc: (_h = (_g = this.parser) === null || _g === void 0 ? void 0 : _g.parse(contentForLanguage !== null && contentForLanguage !== void 0 ? contentForLanguage : {
1388
+ type: 'string',
1389
+ value: '',
1390
+ }, undefined, renderHash)) !== null && _h !== void 0 ? _h : undefined,
1391
+ plugins: this.view.state.plugins,
1392
+ selection: undefined,
1393
+ });
1394
+ this.view.updateState(newState);
1395
+ }
1396
+ });
1397
+ }
1327
1398
  mouseDown() {
1328
1399
  this.mouseCount++;
1329
1400
  }
@@ -1349,8 +1420,8 @@ class IcureTextField extends common_1.Field {
1349
1420
  this.codesExtractor = this.makeCodesExtractor(this.schema);
1350
1421
  this.container = ((_a = this.shadowRoot) === null || _a === void 0 ? void 0 : _a.getElementById('editor')) || undefined;
1351
1422
  if (this.container) {
1352
- const br = pms.nodes.hardbreak;
1353
- const hardbreak = (0, prosemirror_commands_1.chainCommands)(prosemirror_commands_1.exitCode, (state, dispatch) => {
1423
+ const br = pms.nodes.hard_break;
1424
+ const hard_break = (0, prosemirror_commands_1.chainCommands)(prosemirror_commands_1.exitCode, (state, dispatch) => {
1354
1425
  dispatch && dispatch(state.tr.replaceSelectionWith(br.create()).scrollIntoView());
1355
1426
  return true;
1356
1427
  });
@@ -1399,11 +1470,33 @@ class IcureTextField extends common_1.Field {
1399
1470
  })
1400
1471
  : null,
1401
1472
  (0, prosemirror_keymap_1.keymap)({ 'Mod-z': prosemirror_history_1.undo, 'Mod-Shift-z': prosemirror_history_1.redo }),
1402
- (0, prosemirror_keymap_1.keymap)(Object.assign({}, pms.marks.strong ? { 'Mod-b': (0, prosemirror_commands_1.toggleMark)(pms.marks.strong) } : {}, pms.marks.em ? { 'Mod-i': (0, prosemirror_commands_1.toggleMark)(pms.marks.em) } : {}, pms.nodes.paragraph ? { 'Alt-ArrowUp': prosemirror_commands_1.joinUp } : {}, pms.nodes.paragraph ? { 'Alt-ArrowDown': prosemirror_commands_1.joinDown } : {}, pms.nodes.paragraph ? { 'Alt-Enter': hardbreak } : {}, pms.nodes.paragraph ? { 'Shift-Enter': hardbreak } : {}, pms.nodes.ordered_list ? { 'Shift-ctrl-1': (0, prosemirror_schema_list_1.wrapInList)(pms.nodes.ordered_list) } : {}, pms.nodes.bullet_list ? { 'Shift-ctrl-*': (0, prosemirror_schema_list_1.wrapInList)(pms.nodes.bullet_list) } : {}, pms.nodes.blockquote ? { 'Shift-ctrl-w': (0, prosemirror_commands_2.wrapInIfNeeded)(pms.nodes.blockquote) } : {}, pms.nodes.blockquote ? { 'Shift-ctrl-u': (0, prosemirror_commands_2.unwrapFrom)(pms.nodes.blockquote) } : {}, pms.nodes.paragraph ? { 'Mod-ctrl-0': (0, prosemirror_commands_1.setBlockType)(pms.nodes.paragraph) } : {}, pms.nodes.paragraph ? { 'Shift-ctrl-0': (0, prosemirror_commands_1.setBlockType)(pms.nodes.paragraph) } : {}, pms.nodes.list_item ? { Enter: (0, prosemirror_schema_list_1.splitListItem)(pms.nodes.list_item) } : {}, pms.nodes.ordered_list || pms.nodes.bullet_list ? { 'Mod-(': (0, prosemirror_schema_list_1.liftListItem)(pms.nodes.list_item) } : {}, pms.nodes.ordered_list || pms.nodes.bullet_list ? { 'Mod-[': (0, prosemirror_schema_list_1.liftListItem)(pms.nodes.list_item) } : {}, pms.nodes.ordered_list || pms.nodes.bullet_list ? { 'Mod-)': (0, prosemirror_schema_list_1.sinkListItem)(pms.nodes.list_item) } : {}, pms.nodes.ordered_list || pms.nodes.bullet_list ? { 'Mod-]': (0, prosemirror_schema_list_1.sinkListItem)(pms.nodes.list_item) } : {})),
1473
+ (0, prosemirror_keymap_1.keymap)(Object.assign({}, pms.marks.strong ? { 'Mod-b': (0, prosemirror_commands_1.toggleMark)(pms.marks.strong) } : {}, pms.marks.em ? { 'Mod-i': (0, prosemirror_commands_1.toggleMark)(pms.marks.em) } : {}, pms.nodes.paragraph ? { 'Alt-ArrowUp': prosemirror_commands_1.joinUp } : {}, pms.nodes.paragraph ? { 'Alt-ArrowDown': prosemirror_commands_1.joinDown } : {}, pms.nodes.paragraph ? { 'Alt-Enter': hard_break } : {}, pms.nodes.paragraph ? { 'Shift-Enter': hard_break } : {}, pms.nodes.ordered_list ? { 'Shift-ctrl-1': (0, prosemirror_schema_list_1.wrapInList)(pms.nodes.ordered_list) } : {}, pms.nodes.bullet_list ? { 'Shift-ctrl-*': (0, prosemirror_schema_list_1.wrapInList)(pms.nodes.bullet_list) } : {}, pms.nodes.blockquote ? { 'Shift-ctrl-w': (0, prosemirror_commands_2.wrapInIfNeeded)(pms.nodes.blockquote) } : {}, pms.nodes.blockquote ? { 'Shift-ctrl-u': (0, prosemirror_commands_2.unwrapFrom)(pms.nodes.blockquote) } : {}, pms.nodes.paragraph ? { 'Mod-ctrl-0': (0, prosemirror_commands_1.setBlockType)(pms.nodes.paragraph) } : {}, pms.nodes.paragraph ? { 'Shift-ctrl-0': (0, prosemirror_commands_1.setBlockType)(pms.nodes.paragraph) } : {}, pms.nodes.list_item ? { Enter: (0, prosemirror_schema_list_1.splitListItem)(pms.nodes.list_item) } : {}, pms.nodes.ordered_list || pms.nodes.bullet_list ? { 'Mod-(': (0, prosemirror_schema_list_1.liftListItem)(pms.nodes.list_item) } : {}, pms.nodes.ordered_list || pms.nodes.bullet_list ? { 'Mod-[': (0, prosemirror_schema_list_1.liftListItem)(pms.nodes.list_item) } : {}, pms.nodes.ordered_list || pms.nodes.bullet_list ? { 'Mod-)': (0, prosemirror_schema_list_1.sinkListItem)(pms.nodes.list_item) } : {}, pms.nodes.ordered_list || pms.nodes.bullet_list ? { 'Mod-]': (0, prosemirror_schema_list_1.sinkListItem)(pms.nodes.list_item) } : {})),
1403
1474
  pms.nodes.heading ? headingsKeymap : null,
1404
1475
  (0, mask_plugin_1.maskPlugin)(),
1405
1476
  (0, regexp_plugin_1.regexpPlugin)(),
1406
1477
  (0, has_content_class_plugin_1.hasContentClassPlugin)(this.shadowRoot || undefined),
1478
+ new prosemirror_state_1.Plugin({
1479
+ props: {
1480
+ transformPasted(slice) {
1481
+ let ok = true;
1482
+ slice.content.forEach((node) => {
1483
+ if (!pms.nodes[node.type.name]) {
1484
+ ok = false;
1485
+ }
1486
+ });
1487
+ if (ok) {
1488
+ return slice;
1489
+ }
1490
+ if (pms.nodes.paragraph)
1491
+ return new prosemirror_model_1.Slice(prosemirror_model_1.Fragment.fromArray(slice.content
1492
+ .textBetween(0, slice.content.size, ' ')
1493
+ .split('\n')
1494
+ .map((line) => pms.nodes.paragraph.create({}, [pms.text(line)]))), 0, 0);
1495
+ else
1496
+ return new prosemirror_model_1.Slice(prosemirror_model_1.Fragment.fromArray([pms.text(slice.content.textBetween(0, slice.content.size, ' ').split('\n').join(' '))]), 0, 0);
1497
+ },
1498
+ },
1499
+ }),
1407
1500
  (0, prosemirror_keymap_1.keymap)(prosemirror_commands_1.baseKeymap),
1408
1501
  ]
1409
1502
  .filter((x) => !!x)
@@ -1503,11 +1596,13 @@ class IcureTextField extends common_1.Field {
1503
1596
  : schemaName === 'measure'
1504
1597
  ? {
1505
1598
  parse: (value) => {
1506
- var _a, _b;
1599
+ var _a, _b, _c;
1507
1600
  if (value.type !== 'measure') {
1508
1601
  return undefined;
1509
1602
  }
1510
- const decimal = (_b = (_a = value.value) === null || _a === void 0 ? void 0 : _a.toString()) !== null && _b !== void 0 ? _b : '';
1603
+ const decimal = value.value !== undefined
1604
+ ? value.value.toFixed(((_a = this.styleOptions) === null || _a === void 0 ? void 0 : _a.decimalPlaces) || ((_c = (_b = this.styleOptions) === null || _b === void 0 ? void 0 : _b.decimalPlaces) === null || _c === void 0 ? void 0 : _c.toString()) === '0' ? parseInt(this.styleOptions.decimalPlaces.toString()) : 2)
1605
+ : '';
1511
1606
  const unit = value.unit;
1512
1607
  return pms.node('paragraph', {}, [pms.node('decimal', {}, decimal && decimal.length ? [pms.text(decimal)] : [])].concat(unit && unit.length ? [pms.node('unit', {}, [pms.text(unit)])] : []));
1513
1608
  },
@@ -1515,7 +1610,14 @@ class IcureTextField extends common_1.Field {
1515
1610
  : schemaName === 'decimal'
1516
1611
  ? {
1517
1612
  parse: (value) => {
1518
- return value.type === 'number' ? pms.node('paragraph', {}, [pms.node('decimal', {}, [pms.text(value.value.toString())])]) : undefined;
1613
+ var _a, _b, _c;
1614
+ return value.type === 'number'
1615
+ ? pms.node('paragraph', {}, [
1616
+ pms.node('decimal', {}, [
1617
+ pms.text(value.value.toFixed(((_a = this.styleOptions) === null || _a === void 0 ? void 0 : _a.decimalPlaces) || ((_c = (_b = this.styleOptions) === null || _b === void 0 ? void 0 : _b.decimalPlaces) === null || _c === void 0 ? void 0 : _c.toString()) === '0' ? parseInt(this.styleOptions.decimalPlaces.toString()) : 2)),
1618
+ ]),
1619
+ ])
1620
+ : undefined;
1519
1621
  },
1520
1622
  }
1521
1623
  : schemaName === 'date-time'
@@ -1553,7 +1655,7 @@ class IcureTextField extends common_1.Field {
1553
1655
  });
1554
1656
  },
1555
1657
  },
1556
- hardbreak: { node: 'hardbreak' },
1658
+ hard_break: { node: 'hard_break' },
1557
1659
  em: (0, prosemirror_utils_1.hasMark)(pms.spec.marks, 'em') ? { mark: 'em' } : { ignore: true },
1558
1660
  strong: (0, prosemirror_utils_1.hasMark)(pms.spec.marks, 'strong') ? { mark: 'strong' } : { ignore: true },
1559
1661
  link: (0, prosemirror_utils_1.hasMark)(pms.spec.marks, 'link')