@icure/form 3.0.2 → 3.0.4

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/@icure-cardinal-sdk-npm-1.3.0-ts-2-d77151b3e6-86e1497829.zip +0 -0
  2. package/.yarn/cache/{@icure-motss-app-datepicker-npm-6.0.0-rc.36-66219db2d1-5f34375d97.zip → @icure-motss-app-datepicker-npm-6.0.0-rc.39-d00d21c35a-eefaed31a8.zip} +0 -0
  3. package/.yarn/cache/@js-joda-core-npm-3.2.0-d2526290e9-64625c2f22.zip +0 -0
  4. package/.yarn/cache/@types-linkify-it-npm-5.0.0-576a16b976-ec98e03aa8.zip +0 -0
  5. package/.yarn/cache/@types-markdown-it-npm-14.1.2-d0c4e12c49-ad66e0b377.zip +0 -0
  6. package/.yarn/cache/@types-mdurl-npm-2.0.0-2f4116c0b0-78746e96c6.zip +0 -0
  7. package/.yarn/cache/format-util-npm-1.0.5-a524ca953a-0c8622e54a.zip +0 -0
  8. package/.yarn/cache/prosemirror-commands-npm-1.7.0-212f35173c-a39225d534.zip +0 -0
  9. package/.yarn/cache/prosemirror-history-npm-1.4.1-ad68c86bb7-90f9bf59bc.zip +0 -0
  10. package/.yarn/cache/prosemirror-markdown-npm-1.13.1-4de28fccea-fb5487760e.zip +0 -0
  11. package/.yarn/cache/prosemirror-schema-basic-npm-1.2.3-a144a1b06d-49711ec1ee.zip +0 -0
  12. package/.yarn/cache/prosemirror-schema-list-npm-1.5.1-7b138c5fed-6c7041e5b8.zip +0 -0
  13. package/.yarn/cache/prosemirror-transform-npm-1.10.3-fb23bef7a8-8cbe29501e.zip +0 -0
  14. package/.yarn/cache/prosemirror-view-npm-1.38.1-8cfb4ec84f-12f7f4d27f.zip +0 -0
  15. package/.yarn/cache/ws-npm-8.18.0-56f68bc4d6-91d4d35bc9.zip +0 -0
  16. package/.yarn/install-state.gz +0 -0
  17. package/components/common/field-with-options.js +4 -9
  18. package/components/common/field-with-options.js.map +1 -1
  19. package/components/common/field.js +21 -25
  20. package/components/common/field.js.map +1 -1
  21. package/components/common/index.js +1 -17
  22. package/components/common/index.js.map +1 -1
  23. package/components/common/metadata-buttons-bar.js +58 -62
  24. package/components/common/metadata-buttons-bar.js.map +1 -1
  25. package/components/common/styles/paths.js +10 -13
  26. package/components/common/styles/paths.js.map +1 -1
  27. package/components/common/utils.js +10 -20
  28. package/components/common/utils.js.map +1 -1
  29. package/components/icure-button/index.js +20 -24
  30. package/components/icure-button/index.js.map +1 -1
  31. package/components/icure-button-group/index.js +27 -31
  32. package/components/icure-button-group/index.js.map +1 -1
  33. package/components/icure-date-picker/index.js +32 -36
  34. package/components/icure-date-picker/index.js.map +1 -1
  35. package/components/icure-dropdown-field/index.js +26 -30
  36. package/components/icure-dropdown-field/index.js.map +1 -1
  37. package/components/icure-form/fields/button/button.js +13 -17
  38. package/components/icure-form/fields/button/button.js.map +1 -1
  39. package/components/icure-form/fields/button/index.js +1 -17
  40. package/components/icure-form/fields/button/index.js.map +1 -1
  41. package/components/icure-form/fields/button-group/checkbox.js +10 -14
  42. package/components/icure-form/fields/button-group/checkbox.js.map +1 -1
  43. package/components/icure-form/fields/button-group/index.js +2 -18
  44. package/components/icure-form/fields/button-group/index.js.map +1 -1
  45. package/components/icure-form/fields/button-group/radio-button.js +10 -14
  46. package/components/icure-form/fields/button-group/radio-button.js.map +1 -1
  47. package/components/icure-form/fields/date-picker/date-picker.js +8 -12
  48. package/components/icure-form/fields/date-picker/date-picker.js.map +1 -1
  49. package/components/icure-form/fields/date-picker/date-time-picker.js +8 -12
  50. package/components/icure-form/fields/date-picker/date-time-picker.js.map +1 -1
  51. package/components/icure-form/fields/date-picker/index.js +3 -19
  52. package/components/icure-form/fields/date-picker/index.js.map +1 -1
  53. package/components/icure-form/fields/date-picker/time-picker.js +8 -12
  54. package/components/icure-form/fields/date-picker/time-picker.js.map +1 -1
  55. package/components/icure-form/fields/dropdown/dropdown-field.js +10 -14
  56. package/components/icure-form/fields/dropdown/dropdown-field.js.map +1 -1
  57. package/components/icure-form/fields/dropdown/index.js +1 -17
  58. package/components/icure-form/fields/dropdown/index.js.map +1 -1
  59. package/components/icure-form/fields/index.js +10 -26
  60. package/components/icure-form/fields/index.js.map +1 -1
  61. package/components/icure-form/fields/items-list-field/index.js +1 -17
  62. package/components/icure-form/fields/items-list-field/index.js.map +1 -1
  63. package/components/icure-form/fields/items-list-field/items-list-field.js +7 -11
  64. package/components/icure-form/fields/items-list-field/items-list-field.js.map +1 -1
  65. package/components/icure-form/fields/label/index.js +1 -17
  66. package/components/icure-form/fields/label/index.js.map +1 -1
  67. package/components/icure-form/fields/label/label.js +11 -15
  68. package/components/icure-form/fields/label/label.js.map +1 -1
  69. package/components/icure-form/fields/measure-field/index.js +1 -17
  70. package/components/icure-form/fields/measure-field/index.js.map +1 -1
  71. package/components/icure-form/fields/measure-field/measure-field.js +8 -12
  72. package/components/icure-form/fields/measure-field/measure-field.js.map +1 -1
  73. package/components/icure-form/fields/number-field/index.js +1 -17
  74. package/components/icure-form/fields/number-field/index.js.map +1 -1
  75. package/components/icure-form/fields/number-field/number-field.js +8 -12
  76. package/components/icure-form/fields/number-field/number-field.js.map +1 -1
  77. package/components/icure-form/fields/text-field/index.js +1 -17
  78. package/components/icure-form/fields/text-field/index.js.map +1 -1
  79. package/components/icure-form/fields/text-field/text-field.js +20 -24
  80. package/components/icure-form/fields/text-field/text-field.js.map +1 -1
  81. package/components/icure-form/fields/token-field/index.js +1 -17
  82. package/components/icure-form/fields/token-field/index.js.map +1 -1
  83. package/components/icure-form/fields/token-field/token-field.js +8 -12
  84. package/components/icure-form/fields/token-field/token-field.js.map +1 -1
  85. package/components/icure-form/fields/utils/index.js +5 -13
  86. package/components/icure-form/fields/utils/index.js.map +1 -1
  87. package/components/icure-form/index.js +33 -37
  88. package/components/icure-form/index.js.map +1 -1
  89. package/components/icure-form/renderer/form/form-selection-button.js +20 -24
  90. package/components/icure-form/renderer/form/form-selection-button.js.map +1 -1
  91. package/components/icure-form/renderer/form/form.js +123 -127
  92. package/components/icure-form/renderer/form/form.js.map +1 -1
  93. package/components/icure-form/renderer/index.js +1 -2
  94. package/components/icure-label/index.js +18 -22
  95. package/components/icure-label/index.js.map +1 -1
  96. package/components/icure-text-field/index.js +103 -111
  97. package/components/icure-text-field/index.js.map +1 -1
  98. package/components/icure-text-field/plugin/caret-fix-plugin.js +3 -7
  99. package/components/icure-text-field/plugin/caret-fix-plugin.js.map +1 -1
  100. package/components/icure-text-field/plugin/has-content-class-plugin.js +3 -7
  101. package/components/icure-text-field/plugin/has-content-class-plugin.js.map +1 -1
  102. package/components/icure-text-field/plugin/mask-plugin.js +7 -11
  103. package/components/icure-text-field/plugin/mask-plugin.js.map +1 -1
  104. package/components/icure-text-field/plugin/regexp-plugin.js +5 -9
  105. package/components/icure-text-field/plugin/regexp-plugin.js.map +1 -1
  106. package/components/icure-text-field/prosemirror-commands.js +10 -15
  107. package/components/icure-text-field/prosemirror-commands.js.map +1 -1
  108. package/components/icure-text-field/prosemirror-utils.js +1 -5
  109. package/components/icure-text-field/prosemirror-utils.js.map +1 -1
  110. package/components/icure-text-field/schema/common-marks.js +3 -7
  111. package/components/icure-text-field/schema/common-marks.js.map +1 -1
  112. package/components/icure-text-field/schema/date-time-schema.js +3 -9
  113. package/components/icure-text-field/schema/date-time-schema.js.map +1 -1
  114. package/components/icure-text-field/schema/decimal-schema.js +1 -5
  115. package/components/icure-text-field/schema/decimal-schema.js.map +1 -1
  116. package/components/icure-text-field/schema/index.js +17 -21
  117. package/components/icure-text-field/schema/index.js.map +1 -1
  118. package/components/icure-text-field/schema/items-list-schema.js +3 -7
  119. package/components/icure-text-field/schema/items-list-schema.js.map +1 -1
  120. package/components/icure-text-field/schema/markdown-schema.js +5 -9
  121. package/components/icure-text-field/schema/markdown-schema.js.map +1 -1
  122. package/components/icure-text-field/schema/measure-schema.js +6 -12
  123. package/components/icure-text-field/schema/measure-schema.js.map +1 -1
  124. package/components/icure-text-field/schema/token-schema.js +5 -9
  125. package/components/icure-text-field/schema/token-schema.js.map +1 -1
  126. package/components/icure-text-field/schema/utils.js +2 -7
  127. package/components/icure-text-field/schema/utils.js.map +1 -1
  128. package/components/icure-text-field/selection-companion.js +1 -5
  129. package/components/icure-text-field/selection-companion.js.map +1 -1
  130. package/components/icure-text-field/suggestion-palette.js +3 -10
  131. package/components/icure-text-field/suggestion-palette.js.map +1 -1
  132. package/components/index.js +5 -21
  133. package/components/index.js.map +1 -1
  134. package/components/model/index.js +22 -46
  135. package/components/model/index.js.map +1 -1
  136. package/components/themes/default/index.js +30 -32
  137. package/components/themes/default/index.js.map +1 -1
  138. package/components/themes/icure-blue/index.js +47 -49
  139. package/components/themes/icure-blue/index.js.map +1 -1
  140. package/components/themes/kendo/index.js +49 -51
  141. package/components/themes/kendo/index.js.map +1 -1
  142. package/conversion/ckmeans-grouping.js +3 -10
  143. package/conversion/ckmeans-grouping.js.map +1 -1
  144. package/conversion/ckmeans.js +1 -3
  145. package/conversion/ckmeans.js.map +1 -1
  146. package/generic/index.js +1 -17
  147. package/generic/index.js.map +1 -1
  148. package/generic/model.js +1 -2
  149. package/icure/form-values-container.d.ts +1 -2
  150. package/icure/form-values-container.js +33 -38
  151. package/icure/form-values-container.js.map +1 -1
  152. package/icure/icure-utils.js +14 -25
  153. package/icure/icure-utils.js.map +1 -1
  154. package/icure/index.js +2 -18
  155. package/icure/index.js.map +1 -1
  156. package/icure/model.js +1 -2
  157. package/index.js +1 -17
  158. package/index.js.map +1 -1
  159. package/package.json +14 -13
  160. package/utils/code-utils.js +13 -22
  161. package/utils/code-utils.js.map +1 -1
  162. package/utils/dates.js +9 -21
  163. package/utils/dates.js.map +1 -1
  164. package/utils/fields-values-provider.js +8 -17
  165. package/utils/fields-values-provider.js.map +1 -1
  166. package/utils/form-value-container.js +3 -7
  167. package/utils/form-value-container.js.map +1 -1
  168. package/utils/interpreter.d.ts +1 -2
  169. package/utils/interpreter.js +1 -5
  170. package/utils/interpreter.js.map +1 -1
  171. package/utils/languages.js +3 -8
  172. package/utils/languages.js.map +1 -1
  173. package/utils/markdown.js +6 -11
  174. package/utils/markdown.js.map +1 -1
  175. package/utils/no-lodash.js +3 -9
  176. package/utils/no-lodash.js.map +1 -1
  177. package/utils/primitive.js +7 -12
  178. package/utils/primitive.js.map +1 -1
  179. package/.yarn/cache/prosemirror-commands-npm-1.5.2-27f8f3fee9-ff65063a8c.zip +0 -0
  180. package/.yarn/cache/prosemirror-history-npm-1.3.2-cc128c8ee6-b85fe6378a.zip +0 -0
  181. package/.yarn/cache/prosemirror-markdown-npm-1.12.0-28e990f443-d7607ee1a6.zip +0 -0
  182. package/.yarn/cache/prosemirror-model-npm-1.19.4-4fd32211c8-12c277ed30.zip +0 -0
  183. package/.yarn/cache/prosemirror-schema-basic-npm-1.2.2-def7bf2ec7-1f93f8678c.zip +0 -0
  184. package/.yarn/cache/prosemirror-schema-list-npm-1.3.0-23c1830a7e-03654e37c8.zip +0 -0
  185. package/.yarn/cache/prosemirror-transform-npm-1.10.2-1c2da9123e-93b0c03aff.zip +0 -0
  186. package/.yarn/cache/prosemirror-transform-npm-1.8.0-ea3ca0411f-6d16ca4f95.zip +0 -0
  187. package/.yarn/cache/prosemirror-view-npm-1.32.7-63c3e4b182-40c9038a52.zip +0 -0
  188. package/.yarn/cache/prosemirror-view-npm-1.38.0-9061dc9cf4-0d0f17c1b2.zip +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"mask-plugin.js","sourceRoot":"","sources":["../../../../tmp/components/icure-text-field/plugin/mask-plugin.ts"],"names":[],"mappings":"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","sourcesContent":["import { EditorState, Plugin, TextSelection, Transaction } from 'prosemirror-state'\nimport { Node, ResolvedPos } from 'prosemirror-model'\nimport { Decoration, DecorationSet, EditorView } from 'prosemirror-view'\n\nexport const maskPlugin = function (): Plugin {\n\tconst maskText = ($pos: ResolvedPos, text: string, mask: string, tr: Transaction, setSelection = true) => {\n\t\tconst textFromBeginning = $pos.parent.textBetween(0, $pos.parentOffset) + text\n\t\tconst trailingText = $pos.parent.textBetween($pos.parentOffset, $pos.parent.content.size)\n\n\t\tlet t = textFromBeginning\n\t\tlet skip = 0\n\t\tlet completed = false\n\n\t\tif (t.length === 0) {\n\t\t\tt += trailingText.substring(text.length + skip)\n\t\t\tcompleted = true\n\t\t}\n\n\t\tfor (let i = 0; i < mask.length && i < t.length; i++) {\n\t\t\tif (\n\t\t\t\t(mask[i] === '.' &&\n\t\t\t\t\tt[i]\n\t\t\t\t\t\t.normalize('NFD')\n\t\t\t\t\t\t.replace(/[\\u0300-\\u036f]/g, '')\n\t\t\t\t\t\t.match(/\\w|-/)) ||\n\t\t\t\t(mask[i] === '-' && t[i].match(/\\d/))\n\t\t\t) {\n\t\t\t\t//skip\n\t\t\t} else {\n\t\t\t\tif (mask[i] === t[i]) {\n\t\t\t\t\t//skip\n\t\t\t\t} else {\n\t\t\t\t\tt = t.substring(0, i) + mask[i] + t.substring(i)\n\t\t\t\t\tif (!completed) skip++\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (t.length === i + 1 && !completed) {\n\t\t\t\tt += trailingText.substring(text.length + skip)\n\t\t\t\tcompleted = true\n\t\t\t}\n\t\t}\n\n\t\tconst tail = t.length > mask.length ? t.substring(mask.length) : ''\n\t\tt = t.substring(0, mask.length)\n\n\t\tconst trail = t.length < mask.length ? mask.substring(t.length) : ''\n\t\tif (t === textFromBeginning && trail === trailingText) {\n\t\t\treturn undefined\n\t\t}\n\n\t\tconst currentSel = tr.selection\n\n\t\ttr = tr.insertText(t + trail, $pos.pos - $pos.parentOffset, $pos.pos - $pos.parentOffset + $pos.parent.content.size)\n\t\tif (setSelection) {\n\t\t\ttr = tr.setSelection(TextSelection.create(tr.doc, Math.min($pos.pos + text.length + skip, tr.doc.content.size - 1)))\n\t\t} else {\n\t\t\ttr = tr.setSelection(TextSelection.create(tr.doc, Math.min(currentSel.$anchor.pos, tr.doc.content.size - 1), Math.min(currentSel.$head.pos, tr.doc.content.size - 1)))\n\t\t}\n\t\ttr.setMeta('tailText', tail)\n\n\t\treturn tr\n\t}\n\n\tfunction applyDocMasks(state: EditorState): Transaction | undefined {\n\t\tlet tr = undefined\n\t\tlet posMark = 0\n\t\t//Scan nodes and add mask when needed\n\t\twhile ((tr || state).doc && posMark < (tr || state).doc.content.size) {\n\t\t\tconst $pos = (tr || state).doc.resolve(posMark)\n\t\t\tconst node: Node | undefined = $pos.node($pos.depth) || undefined\n\t\t\tconst mask: string | undefined = node?.type.spec.mask\n\t\t\tif (mask) {\n\t\t\t\ttr = tr || state.tr\n\t\t\t\ttr = maskText(tr.doc.resolve(posMark), '', mask, tr, false) || tr\n\t\t\t\tconst $newPos = tr.doc.resolve(posMark)\n\t\t\t\tconst newNode = $newPos.node($newPos.depth)\n\t\t\t\tif (newNode) {\n\t\t\t\t\tposMark += newNode.content.size + 1\n\t\t\t\t} else posMark++\n\t\t\t} else {\n\t\t\t\tposMark++\n\t\t\t}\n\t\t}\n\t\treturn tr\n\t}\n\n\treturn new Plugin({\n\t\tview: (v: EditorView) => {\n\t\t\tconst tr = applyDocMasks(v.state)\n\t\t\tif (tr) v.updateState(v.state.apply(tr))\n\t\t\treturn {}\n\t\t},\n\t\tprops: {\n\t\t\tdecorations(state) {\n\t\t\t\tlet $pos = state.doc.resolve(Math.min(state.selection.$from.pos, state.doc.content.size))\n\t\t\t\tlet node = $pos.parent\n\t\t\t\tlet start = $pos.pos - $pos.parentOffset\n\n\t\t\t\tif (node.type.spec.mask) {\n\t\t\t\t\tif (node.type.spec.mask.length === $pos.parentOffset && node.type.spec.mask.length === node.content.size) {\n\t\t\t\t\t\t//Move to the next one\n\t\t\t\t\t\twhile ($pos.pos < state.doc.content.size - 1) {\n\t\t\t\t\t\t\t$pos = state.doc.resolve($pos.pos + 1)\n\t\t\t\t\t\t\tnode = $pos.parent\n\n\t\t\t\t\t\t\tif (node && node.type.spec.mask) {\n\t\t\t\t\t\t\t\tstart = $pos.pos - $pos.parentOffset\n\t\t\t\t\t\t\t\tbreak\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\treturn DecorationSet.create(state.doc, [Decoration.node(start - 1, start - 1 + node.nodeSize, { class: 'focused' })])\n\t\t\t\t}\n\t\t\t\treturn undefined\n\t\t\t},\n\t\t\thandleTextInput: (view, from, to, text) => {\n\t\t\t\tif (view.composing) return false\n\n\t\t\t\tconst state = view.state\n\t\t\t\tconst $from = state.doc.resolve(from)\n\t\t\t\tconst mask = $from.parent.type.spec.mask\n\t\t\t\tconst regexp = $from.parent.type.spec.regexp\n\n\t\t\t\tif (!mask) return false\n\n\t\t\t\tconst tr = maskText(\n\t\t\t\t\t$from,\n\t\t\t\t\tregexp && regexp.length\n\t\t\t\t\t\t? text\n\t\t\t\t\t\t\t\t.split('')\n\t\t\t\t\t\t\t\t.filter((x) => x.match(new RegExp(regexp)))\n\t\t\t\t\t\t\t\t.join('')\n\t\t\t\t\t\t: text,\n\t\t\t\t\tmask,\n\t\t\t\t\tstate.tr,\n\t\t\t\t)\n\t\t\t\tif (tr) {\n\t\t\t\t\tconst tail: string = tr.getMeta('tailText')\n\t\t\t\t\tif (tail?.length) {\n\t\t\t\t\t\tconst nextPos = tr.selection.$to.pos < tr.doc.content.size ? tr.doc.resolve(tr.selection.$to.pos + 1) : undefined\n\t\t\t\t\t\tif (nextPos) {\n\t\t\t\t\t\t\tconst nextNode = nextPos.node(nextPos.depth)\n\t\t\t\t\t\t\tif (nextNode && nextNode.type.spec.mask && nextNode.type.spec.mask.length) {\n\t\t\t\t\t\t\t\tmaskText(nextPos, tail, nextNode.type.spec.mask, tr)\n\t\t\t\t\t\t\t} else if (nextNode && (nextNode.type.isText || nextNode.type.isTextblock)) {\n\t\t\t\t\t\t\t\ttr.insertText(tail, nextPos.pos, nextPos.pos)\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tview.dispatch(tr)\n\t\t\t\t\treturn true\n\t\t\t\t}\n\t\t\t\treturn false\n\t\t\t},\n\t\t},\n\t\tappendTransaction: (transactions: readonly Transaction[], oldState: EditorState, newState: EditorState) => {\n\t\t\treturn applyDocMasks(newState)\n\t\t},\n\t})\n}\n"]}
1
+ {"version":3,"file":"mask-plugin.js","sourceRoot":"","sources":["../../../../tmp/components/icure-text-field/plugin/mask-plugin.ts"],"names":[],"mappings":"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","sourcesContent":["import { EditorState, Plugin, TextSelection, Transaction } from 'prosemirror-state'\nimport { Node, ResolvedPos } from 'prosemirror-model'\nimport { Decoration, DecorationSet, EditorView } from 'prosemirror-view'\n\nexport const maskPlugin = function (): Plugin {\n\tconst maskText = ($pos: ResolvedPos, text: string, mask: string, tr: Transaction, setSelection = true) => {\n\t\tconst textFromBeginning = $pos.parent.textBetween(0, $pos.parentOffset) + text\n\t\tconst trailingText = $pos.parent.textBetween($pos.parentOffset, $pos.parent.content.size)\n\n\t\tlet t = textFromBeginning\n\t\tlet skip = 0\n\t\tlet completed = false\n\n\t\tif (t.length === 0) {\n\t\t\tt += trailingText.substring(text.length + skip)\n\t\t\tcompleted = true\n\t\t}\n\n\t\tfor (let i = 0; i < mask.length && i < t.length; i++) {\n\t\t\tif (\n\t\t\t\t(mask[i] === '.' &&\n\t\t\t\t\tt[i]\n\t\t\t\t\t\t.normalize('NFD')\n\t\t\t\t\t\t.replace(/[\\u0300-\\u036f]/g, '')\n\t\t\t\t\t\t.match(/\\w|-/)) ||\n\t\t\t\t(mask[i] === '-' && t[i].match(/\\d/))\n\t\t\t) {\n\t\t\t\t//skip\n\t\t\t} else {\n\t\t\t\tif (mask[i] === t[i]) {\n\t\t\t\t\t//skip\n\t\t\t\t} else {\n\t\t\t\t\tt = t.substring(0, i) + mask[i] + t.substring(i)\n\t\t\t\t\tif (!completed) skip++\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (t.length === i + 1 && !completed) {\n\t\t\t\tt += trailingText.substring(text.length + skip)\n\t\t\t\tcompleted = true\n\t\t\t}\n\t\t}\n\n\t\tconst tail = t.length > mask.length ? t.substring(mask.length) : ''\n\t\tt = t.substring(0, mask.length)\n\n\t\tconst trail = t.length < mask.length ? mask.substring(t.length) : ''\n\t\tif (t === textFromBeginning && trail === trailingText) {\n\t\t\treturn undefined\n\t\t}\n\n\t\tconst currentSel = tr.selection\n\n\t\ttr = tr.insertText(t + trail, $pos.pos - $pos.parentOffset, $pos.pos - $pos.parentOffset + $pos.parent.content.size)\n\t\tif (setSelection) {\n\t\t\ttr = tr.setSelection(TextSelection.create(tr.doc, Math.min($pos.pos + text.length + skip, tr.doc.content.size - 1)))\n\t\t} else {\n\t\t\ttr = tr.setSelection(TextSelection.create(tr.doc, Math.min(currentSel.$anchor.pos, tr.doc.content.size - 1), Math.min(currentSel.$head.pos, tr.doc.content.size - 1)))\n\t\t}\n\t\ttr.setMeta('tailText', tail)\n\n\t\treturn tr\n\t}\n\n\tfunction applyDocMasks(state: EditorState): Transaction | undefined {\n\t\tlet tr = undefined\n\t\tlet posMark = 0\n\t\t//Scan nodes and add mask when needed\n\t\twhile ((tr || state).doc && posMark < (tr || state).doc.content.size) {\n\t\t\tconst $pos = (tr || state).doc.resolve(posMark)\n\t\t\tconst node: Node | undefined = $pos.node($pos.depth) || undefined\n\t\t\tconst mask: string | undefined = node?.type.spec.mask\n\t\t\tif (mask) {\n\t\t\t\ttr = tr || state.tr\n\t\t\t\ttr = maskText(tr.doc.resolve(posMark), '', mask, tr, false) || tr\n\t\t\t\tconst $newPos = tr.doc.resolve(posMark)\n\t\t\t\tconst newNode = $newPos.node($newPos.depth)\n\t\t\t\tif (newNode) {\n\t\t\t\t\tposMark += newNode.content.size + 1\n\t\t\t\t} else posMark++\n\t\t\t} else {\n\t\t\t\tposMark++\n\t\t\t}\n\t\t}\n\t\treturn tr\n\t}\n\n\treturn new Plugin({\n\t\tview: (v: EditorView) => {\n\t\t\tconst tr = applyDocMasks(v.state)\n\t\t\tif (tr) v.updateState(v.state.apply(tr))\n\t\t\treturn {}\n\t\t},\n\t\tprops: {\n\t\t\tdecorations(state) {\n\t\t\t\tlet $pos = state.doc.resolve(Math.min(state.selection.$from.pos, state.doc.content.size))\n\t\t\t\tlet node = $pos.parent\n\t\t\t\tlet start = $pos.pos - $pos.parentOffset\n\n\t\t\t\tif (node.type.spec.mask) {\n\t\t\t\t\tif (node.type.spec.mask.length === $pos.parentOffset && node.type.spec.mask.length === node.content.size) {\n\t\t\t\t\t\t//Move to the next one\n\t\t\t\t\t\twhile ($pos.pos < state.doc.content.size - 1) {\n\t\t\t\t\t\t\t$pos = state.doc.resolve($pos.pos + 1)\n\t\t\t\t\t\t\tnode = $pos.parent\n\n\t\t\t\t\t\t\tif (node && node.type.spec.mask) {\n\t\t\t\t\t\t\t\tstart = $pos.pos - $pos.parentOffset\n\t\t\t\t\t\t\t\tbreak\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\treturn DecorationSet.create(state.doc, [Decoration.node(start - 1, start - 1 + node.nodeSize, { class: 'focused' })])\n\t\t\t\t}\n\t\t\t\treturn undefined\n\t\t\t},\n\t\t\thandleTextInput: (view, from, to, text) => {\n\t\t\t\tif (view.composing) return false\n\n\t\t\t\tconst state = view.state\n\t\t\t\tconst $from = state.doc.resolve(from)\n\t\t\t\tconst mask = $from.parent.type.spec.mask\n\t\t\t\tconst regexp = $from.parent.type.spec.regexp\n\n\t\t\t\tif (!mask) return false\n\n\t\t\t\tconst tr = maskText(\n\t\t\t\t\t$from,\n\t\t\t\t\tregexp && regexp.length\n\t\t\t\t\t\t? text\n\t\t\t\t\t\t\t\t.split('')\n\t\t\t\t\t\t\t\t.filter((x) => x.match(new RegExp(regexp)))\n\t\t\t\t\t\t\t\t.join('')\n\t\t\t\t\t\t: text,\n\t\t\t\t\tmask,\n\t\t\t\t\tstate.tr,\n\t\t\t\t)\n\t\t\t\tif (tr) {\n\t\t\t\t\tconst tail: string = tr.getMeta('tailText')\n\t\t\t\t\tif (tail?.length) {\n\t\t\t\t\t\tconst nextPos = tr.selection.$to.pos < tr.doc.content.size ? tr.doc.resolve(tr.selection.$to.pos + 1) : undefined\n\t\t\t\t\t\tif (nextPos) {\n\t\t\t\t\t\t\tconst nextNode = nextPos.node(nextPos.depth)\n\t\t\t\t\t\t\tif (nextNode && nextNode.type.spec.mask && nextNode.type.spec.mask.length) {\n\t\t\t\t\t\t\t\tmaskText(nextPos, tail, nextNode.type.spec.mask, tr)\n\t\t\t\t\t\t\t} else if (nextNode && (nextNode.type.isText || nextNode.type.isTextblock)) {\n\t\t\t\t\t\t\t\ttr.insertText(tail, nextPos.pos, nextPos.pos)\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tview.dispatch(tr)\n\t\t\t\t\treturn true\n\t\t\t\t}\n\t\t\t\treturn false\n\t\t\t},\n\t\t},\n\t\tappendTransaction: (transactions: readonly Transaction[], oldState: EditorState, newState: EditorState) => {\n\t\t\treturn applyDocMasks(newState)\n\t\t},\n\t})\n}\n"]}
@@ -1,9 +1,6 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.regexpPlugin = void 0;
4
- const prosemirror_state_1 = require("prosemirror-state");
5
- const regexpPlugin = function () {
6
- return new prosemirror_state_1.Plugin({
1
+ import { Plugin, TextSelection } from 'prosemirror-state';
2
+ export const regexpPlugin = function () {
3
+ return new Plugin({
7
4
  props: {
8
5
  handleTextInput: (view, from, to, text) => {
9
6
  if (view.composing)
@@ -23,7 +20,7 @@ const regexpPlugin = function () {
23
20
  let tr = state.tr;
24
21
  if (allowedCharacters.length) {
25
22
  tr = tr.insertText(allowedCharacters, from, to);
26
- tr = tr.setSelection(prosemirror_state_1.TextSelection.create(tr.doc, Math.min(to + allowedCharacters.length, tr.doc.content.size - 1)));
23
+ tr = tr.setSelection(TextSelection.create(tr.doc, Math.min(to + allowedCharacters.length, tr.doc.content.size - 1)));
27
24
  }
28
25
  if (text.startsWith(allowedCharacters)) {
29
26
  const tail = text.substring(allowedCharacters.length);
@@ -34,7 +31,7 @@ const regexpPlugin = function () {
34
31
  const nextNode = nextPos.node(nextPos.depth);
35
32
  if (nextNode && (nextNode.type.isText || nextNode.type.isTextblock)) {
36
33
  tr = tr.insertText(tail, nextPos.pos, nextPos.pos);
37
- tr = tr.setSelection(prosemirror_state_1.TextSelection.create(tr.doc, Math.min(nextPos.pos + tail.length, tr.doc.content.size - 1)));
34
+ tr = tr.setSelection(TextSelection.create(tr.doc, Math.min(nextPos.pos + tail.length, tr.doc.content.size - 1)));
38
35
  break;
39
36
  }
40
37
  posMark++;
@@ -47,5 +44,4 @@ const regexpPlugin = function () {
47
44
  },
48
45
  });
49
46
  };
50
- exports.regexpPlugin = regexpPlugin;
51
47
  //# sourceMappingURL=regexp-plugin.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"regexp-plugin.js","sourceRoot":"","sources":["../../../../tmp/components/icure-text-field/plugin/regexp-plugin.ts"],"names":[],"mappings":"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","sourcesContent":["import { Plugin, TextSelection } from 'prosemirror-state'\n\nexport const regexpPlugin = function (): Plugin {\n\treturn new Plugin({\n\t\tprops: {\n\t\t\thandleTextInput: (view, from, to, text) => {\n\t\t\t\tif (view.composing) return false\n\n\t\t\t\tconst state = view.state\n\t\t\t\tconst $from = state.doc.resolve(from)\n\t\t\t\tconst mask = $from.parent.type.spec.mask\n\t\t\t\tconst regexp = $from.parent.type.spec.regexp\n\n\t\t\t\tif (mask || !regexp) return false // Will be handled by mask plugin\n\n\t\t\t\tconst allowedCharacters = text\n\t\t\t\t\t.split('')\n\t\t\t\t\t.filter((x) => x.match(new RegExp(regexp)))\n\t\t\t\t\t.join('')\n\t\t\t\tif (allowedCharacters === text) return false\n\n\t\t\t\tlet tr = state.tr\n\t\t\t\tif (allowedCharacters.length) {\n\t\t\t\t\ttr = tr.insertText(allowedCharacters, from, to)\n\t\t\t\t\ttr = tr.setSelection(TextSelection.create(tr.doc, Math.min(to + allowedCharacters.length, tr.doc.content.size - 1)))\n\t\t\t\t}\n\n\t\t\t\tif (text.startsWith(allowedCharacters)) {\n\t\t\t\t\tconst tail = text.substring(allowedCharacters.length)\n\t\t\t\t\tif (tail?.length) {\n\t\t\t\t\t\tlet posMark = tr.selection.$to.pos + 1\n\t\t\t\t\t\twhile (posMark < tr.doc.content.size) {\n\t\t\t\t\t\t\tconst nextPos = tr.doc.resolve(posMark)\n\t\t\t\t\t\t\tconst nextNode = nextPos.node(nextPos.depth)\n\t\t\t\t\t\t\tif (nextNode && (nextNode.type.isText || nextNode.type.isTextblock)) {\n\t\t\t\t\t\t\t\ttr = tr.insertText(tail, nextPos.pos, nextPos.pos)\n\t\t\t\t\t\t\t\ttr = tr.setSelection(TextSelection.create(tr.doc, Math.min(nextPos.pos + tail.length, tr.doc.content.size - 1)))\n\t\t\t\t\t\t\t\tbreak\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tposMark++\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tview.dispatch(tr)\n\n\t\t\t\treturn true\n\t\t\t},\n\t\t},\n\t})\n}\n"]}
1
+ {"version":3,"file":"regexp-plugin.js","sourceRoot":"","sources":["../../../../tmp/components/icure-text-field/plugin/regexp-plugin.ts"],"names":[],"mappings":"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","sourcesContent":["import { Plugin, TextSelection } from 'prosemirror-state'\n\nexport const regexpPlugin = function (): Plugin {\n\treturn new Plugin({\n\t\tprops: {\n\t\t\thandleTextInput: (view, from, to, text) => {\n\t\t\t\tif (view.composing) return false\n\n\t\t\t\tconst state = view.state\n\t\t\t\tconst $from = state.doc.resolve(from)\n\t\t\t\tconst mask = $from.parent.type.spec.mask\n\t\t\t\tconst regexp = $from.parent.type.spec.regexp\n\n\t\t\t\tif (mask || !regexp) return false // Will be handled by mask plugin\n\n\t\t\t\tconst allowedCharacters = text\n\t\t\t\t\t.split('')\n\t\t\t\t\t.filter((x) => x.match(new RegExp(regexp)))\n\t\t\t\t\t.join('')\n\t\t\t\tif (allowedCharacters === text) return false\n\n\t\t\t\tlet tr = state.tr\n\t\t\t\tif (allowedCharacters.length) {\n\t\t\t\t\ttr = tr.insertText(allowedCharacters, from, to)\n\t\t\t\t\ttr = tr.setSelection(TextSelection.create(tr.doc, Math.min(to + allowedCharacters.length, tr.doc.content.size - 1)))\n\t\t\t\t}\n\n\t\t\t\tif (text.startsWith(allowedCharacters)) {\n\t\t\t\t\tconst tail = text.substring(allowedCharacters.length)\n\t\t\t\t\tif (tail?.length) {\n\t\t\t\t\t\tlet posMark = tr.selection.$to.pos + 1\n\t\t\t\t\t\twhile (posMark < tr.doc.content.size) {\n\t\t\t\t\t\t\tconst nextPos = tr.doc.resolve(posMark)\n\t\t\t\t\t\t\tconst nextNode = nextPos.node(nextPos.depth)\n\t\t\t\t\t\t\tif (nextNode && (nextNode.type.isText || nextNode.type.isTextblock)) {\n\t\t\t\t\t\t\t\ttr = tr.insertText(tail, nextPos.pos, nextPos.pos)\n\t\t\t\t\t\t\t\ttr = tr.setSelection(TextSelection.create(tr.doc, Math.min(nextPos.pos + tail.length, tr.doc.content.size - 1)))\n\t\t\t\t\t\t\t\tbreak\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tposMark++\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tview.dispatch(tr)\n\n\t\t\t\treturn true\n\t\t\t},\n\t\t},\n\t})\n}\n"]}
@@ -1,13 +1,10 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.unwrapFrom = exports.wrapInIfNeeded = void 0;
4
- const prosemirror_transform_1 = require("prosemirror-transform");
5
- const prosemirror_model_1 = require("prosemirror-model");
6
- const prosemirror_state_1 = require("prosemirror-state");
1
+ import { findWrapping, liftTarget } from 'prosemirror-transform';
2
+ import { Fragment, Slice } from 'prosemirror-model';
3
+ import { NodeSelection } from 'prosemirror-state';
7
4
  // :: (NodeType, ?Object) → (state: EditorState, dispatch: ?(tr: Transaction)) → bool
8
5
  // Wrap the selection in a node of the given type with the given
9
6
  // attributes.
10
- function wrapInIfNeeded(nodeType, attrs) {
7
+ export function wrapInIfNeeded(nodeType, attrs) {
11
8
  return function (state, dispatch) {
12
9
  var _a, _b;
13
10
  const { $from, $to, to } = state.selection;
@@ -18,11 +15,11 @@ function wrapInIfNeeded(nodeType, attrs) {
18
15
  const same = range.$from.sharedDepth(to);
19
16
  if (same) {
20
17
  const pos = $from.before(same);
21
- if (((_b = (_a = prosemirror_state_1.NodeSelection.create(state.doc, pos).$from) === null || _a === void 0 ? void 0 : _a.node()) === null || _b === void 0 ? void 0 : _b.type) === nodeType) {
18
+ if (((_b = (_a = NodeSelection.create(state.doc, pos).$from) === null || _a === void 0 ? void 0 : _a.node()) === null || _b === void 0 ? void 0 : _b.type) === nodeType) {
22
19
  return false;
23
20
  }
24
21
  }
25
- const wrapping = range && (0, prosemirror_transform_1.findWrapping)(range, nodeType, attrs);
22
+ const wrapping = range && findWrapping(range, nodeType, attrs);
26
23
  if (!wrapping || !range)
27
24
  return false;
28
25
  if (dispatch)
@@ -30,25 +27,23 @@ function wrapInIfNeeded(nodeType, attrs) {
30
27
  return true;
31
28
  };
32
29
  }
33
- exports.wrapInIfNeeded = wrapInIfNeeded;
34
30
  // :: (NodeType, ?Object) → (state: EditorState, dispatch: ?(tr: Transaction)) → bool
35
31
  // Wrap the selection in a node of the given type with the given
36
32
  // attributes.
37
33
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
38
- function unwrapFrom(nodeType) {
34
+ export function unwrapFrom(nodeType) {
39
35
  return function (state, dispatch) {
40
36
  const { $from, $to } = state.selection;
41
37
  const range = $from.blockRange($to);
42
- const depth = range && (0, prosemirror_transform_1.liftTarget)(range);
38
+ const depth = range && liftTarget(range);
43
39
  if (depth === null || depth === undefined) {
44
40
  return false;
45
41
  }
46
42
  const gapStart = $from.before(depth + 1), gapEnd = $to.after(depth + 1);
47
- const frag = prosemirror_model_1.Fragment.from($from.node());
43
+ const frag = Fragment.from($from.node());
48
44
  if (dispatch)
49
- dispatch(state.tr.replaceRange(gapStart, gapEnd, new prosemirror_model_1.Slice(frag, 0, 0)).scrollIntoView());
45
+ dispatch(state.tr.replaceRange(gapStart, gapEnd, new Slice(frag, 0, 0)).scrollIntoView());
50
46
  return true;
51
47
  };
52
48
  }
53
- exports.unwrapFrom = unwrapFrom;
54
49
  //# sourceMappingURL=prosemirror-commands.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"prosemirror-commands.js","sourceRoot":"","sources":["../../../tmp/components/icure-text-field/prosemirror-commands.ts"],"names":[],"mappings":";;;AAAA,iEAAgE;AAChE,yDAA6D;AAC7D,yDAA2E;AAE3E,qFAAqF;AACrF,gEAAgE;AAChE,cAAc;AACd,SAAgB,cAAc,CAAC,QAAkB,EAAE,KAAkC;IACpF,OAAO,UAAU,KAAkB,EAAE,QAAoC;;QACxE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,KAAK,CAAC,SAAS,CAAA;QAC1C,MAAM,KAAK,GAAG,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;QACnC,IAAI,CAAC,KAAK,EAAE,CAAC;YACZ,OAAO,KAAK,CAAA;QACb,CAAC;QACD,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC,CAAA;QACxC,IAAI,IAAI,EAAE,CAAC;YACV,MAAM,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;YAC9B,IAAI,CAAA,MAAA,MAAA,iCAAa,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,KAAK,0CAAE,IAAI,EAAE,0CAAE,IAAI,MAAK,QAAQ,EAAE,CAAC;gBAC3E,OAAO,KAAK,CAAA;YACb,CAAC;QACF,CAAC;QAED,MAAM,QAAQ,GAAG,KAAK,IAAI,IAAA,oCAAY,EAAC,KAAK,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAA;QAC9D,IAAI,CAAC,QAAQ,IAAI,CAAC,KAAK;YAAE,OAAO,KAAK,CAAA;QACrC,IAAI,QAAQ;YAAE,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,cAAc,EAAE,CAAC,CAAA;QACvE,OAAO,IAAI,CAAA;IACZ,CAAC,CAAA;AACF,CAAC;AApBD,wCAoBC;AAED,qFAAqF;AACrF,gEAAgE;AAChE,cAAc;AACd,6DAA6D;AAC7D,SAAgB,UAAU,CAAC,QAAkB;IAC5C,OAAO,UAAU,KAAkB,EAAE,QAAoC;QACxE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,KAAK,CAAC,SAAS,CAAA;QACtC,MAAM,KAAK,GAAG,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;QACnC,MAAM,KAAK,GAAG,KAAK,IAAI,IAAA,kCAAU,EAAC,KAAK,CAAC,CAAA;QAExC,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YAC3C,OAAO,KAAK,CAAA;QACb,CAAC;QAED,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,EACvC,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAA;QAC9B,MAAM,IAAI,GAAG,4BAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAA;QAExC,IAAI,QAAQ;YAAE,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,yBAAK,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,cAAc,EAAE,CAAC,CAAA;QACvG,OAAO,IAAI,CAAA;IACZ,CAAC,CAAA;AACF,CAAC;AAjBD,gCAiBC","sourcesContent":["import { findWrapping, liftTarget } from 'prosemirror-transform'\nimport { Fragment, NodeType, Slice } from 'prosemirror-model'\nimport { EditorState, NodeSelection, Transaction } from 'prosemirror-state'\n\n// :: (NodeType, ?Object) → (state: EditorState, dispatch: ?(tr: Transaction)) → bool\n// Wrap the selection in a node of the given type with the given\n// attributes.\nexport function wrapInIfNeeded(nodeType: NodeType, attrs?: { [key: string]: unknown }) {\n\treturn function (state: EditorState, dispatch?: (tr: Transaction) => void): boolean {\n\t\tconst { $from, $to, to } = state.selection\n\t\tconst range = $from.blockRange($to)\n\t\tif (!range) {\n\t\t\treturn false\n\t\t}\n\t\tconst same = range.$from.sharedDepth(to)\n\t\tif (same) {\n\t\t\tconst pos = $from.before(same)\n\t\t\tif (NodeSelection.create(state.doc, pos).$from?.node()?.type === nodeType) {\n\t\t\t\treturn false\n\t\t\t}\n\t\t}\n\n\t\tconst wrapping = range && findWrapping(range, nodeType, attrs)\n\t\tif (!wrapping || !range) return false\n\t\tif (dispatch) dispatch(state.tr.wrap(range, wrapping).scrollIntoView())\n\t\treturn true\n\t}\n}\n\n// :: (NodeType, ?Object) → (state: EditorState, dispatch: ?(tr: Transaction)) → bool\n// Wrap the selection in a node of the given type with the given\n// attributes.\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nexport function unwrapFrom(nodeType: NodeType) {\n\treturn function (state: EditorState, dispatch?: (tr: Transaction) => void): boolean {\n\t\tconst { $from, $to } = state.selection\n\t\tconst range = $from.blockRange($to)\n\t\tconst depth = range && liftTarget(range)\n\n\t\tif (depth === null || depth === undefined) {\n\t\t\treturn false\n\t\t}\n\n\t\tconst gapStart = $from.before(depth + 1),\n\t\t\tgapEnd = $to.after(depth + 1)\n\t\tconst frag = Fragment.from($from.node())\n\n\t\tif (dispatch) dispatch(state.tr.replaceRange(gapStart, gapEnd, new Slice(frag, 0, 0)).scrollIntoView())\n\t\treturn true\n\t}\n}\n"]}
1
+ {"version":3,"file":"prosemirror-commands.js","sourceRoot":"","sources":["../../../tmp/components/icure-text-field/prosemirror-commands.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AAChE,OAAO,EAAE,QAAQ,EAAY,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAC7D,OAAO,EAAe,aAAa,EAAe,MAAM,mBAAmB,CAAA;AAE3E,qFAAqF;AACrF,gEAAgE;AAChE,cAAc;AACd,MAAM,UAAU,cAAc,CAAC,QAAkB,EAAE,KAAkC;IACpF,OAAO,UAAU,KAAkB,EAAE,QAAoC;;QACxE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,KAAK,CAAC,SAAS,CAAA;QAC1C,MAAM,KAAK,GAAG,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;QACnC,IAAI,CAAC,KAAK,EAAE,CAAC;YACZ,OAAO,KAAK,CAAA;QACb,CAAC;QACD,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC,CAAA;QACxC,IAAI,IAAI,EAAE,CAAC;YACV,MAAM,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;YAC9B,IAAI,CAAA,MAAA,MAAA,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,KAAK,0CAAE,IAAI,EAAE,0CAAE,IAAI,MAAK,QAAQ,EAAE,CAAC;gBAC3E,OAAO,KAAK,CAAA;YACb,CAAC;QACF,CAAC;QAED,MAAM,QAAQ,GAAG,KAAK,IAAI,YAAY,CAAC,KAAK,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAA;QAC9D,IAAI,CAAC,QAAQ,IAAI,CAAC,KAAK;YAAE,OAAO,KAAK,CAAA;QACrC,IAAI,QAAQ;YAAE,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,cAAc,EAAE,CAAC,CAAA;QACvE,OAAO,IAAI,CAAA;IACZ,CAAC,CAAA;AACF,CAAC;AAED,qFAAqF;AACrF,gEAAgE;AAChE,cAAc;AACd,6DAA6D;AAC7D,MAAM,UAAU,UAAU,CAAC,QAAkB;IAC5C,OAAO,UAAU,KAAkB,EAAE,QAAoC;QACxE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,KAAK,CAAC,SAAS,CAAA;QACtC,MAAM,KAAK,GAAG,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;QACnC,MAAM,KAAK,GAAG,KAAK,IAAI,UAAU,CAAC,KAAK,CAAC,CAAA;QAExC,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YAC3C,OAAO,KAAK,CAAA;QACb,CAAC;QAED,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,EACvC,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAA;QAC9B,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAA;QAExC,IAAI,QAAQ;YAAE,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,cAAc,EAAE,CAAC,CAAA;QACvG,OAAO,IAAI,CAAA;IACZ,CAAC,CAAA;AACF,CAAC","sourcesContent":["import { findWrapping, liftTarget } from 'prosemirror-transform'\nimport { Fragment, NodeType, Slice } from 'prosemirror-model'\nimport { EditorState, NodeSelection, Transaction } from 'prosemirror-state'\n\n// :: (NodeType, ?Object) → (state: EditorState, dispatch: ?(tr: Transaction)) → bool\n// Wrap the selection in a node of the given type with the given\n// attributes.\nexport function wrapInIfNeeded(nodeType: NodeType, attrs?: { [key: string]: unknown }) {\n\treturn function (state: EditorState, dispatch?: (tr: Transaction) => void): boolean {\n\t\tconst { $from, $to, to } = state.selection\n\t\tconst range = $from.blockRange($to)\n\t\tif (!range) {\n\t\t\treturn false\n\t\t}\n\t\tconst same = range.$from.sharedDepth(to)\n\t\tif (same) {\n\t\t\tconst pos = $from.before(same)\n\t\t\tif (NodeSelection.create(state.doc, pos).$from?.node()?.type === nodeType) {\n\t\t\t\treturn false\n\t\t\t}\n\t\t}\n\n\t\tconst wrapping = range && findWrapping(range, nodeType, attrs)\n\t\tif (!wrapping || !range) return false\n\t\tif (dispatch) dispatch(state.tr.wrap(range, wrapping).scrollIntoView())\n\t\treturn true\n\t}\n}\n\n// :: (NodeType, ?Object) → (state: EditorState, dispatch: ?(tr: Transaction)) → bool\n// Wrap the selection in a node of the given type with the given\n// attributes.\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nexport function unwrapFrom(nodeType: NodeType) {\n\treturn function (state: EditorState, dispatch?: (tr: Transaction) => void): boolean {\n\t\tconst { $from, $to } = state.selection\n\t\tconst range = $from.blockRange($to)\n\t\tconst depth = range && liftTarget(range)\n\n\t\tif (depth === null || depth === undefined) {\n\t\t\treturn false\n\t\t}\n\n\t\tconst gapStart = $from.before(depth + 1),\n\t\t\tgapEnd = $to.after(depth + 1)\n\t\tconst frag = Fragment.from($from.node())\n\n\t\tif (dispatch) dispatch(state.tr.replaceRange(gapStart, gapEnd, new Slice(frag, 0, 0)).scrollIntoView())\n\t\treturn true\n\t}\n}\n"]}
@@ -1,7 +1,4 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.hasMark = void 0;
4
- function hasMark(ms, mark) {
1
+ export function hasMark(ms, mark) {
5
2
  if (!ms) {
6
3
  return false;
7
4
  }
@@ -12,5 +9,4 @@ function hasMark(ms, mark) {
12
9
  return !!ms[mark];
13
10
  }
14
11
  }
15
- exports.hasMark = hasMark;
16
12
  //# sourceMappingURL=prosemirror-utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"prosemirror-utils.js","sourceRoot":"","sources":["../../../tmp/components/icure-text-field/prosemirror-utils.ts"],"names":[],"mappings":";;;AAGA,SAAgB,OAAO,CAAC,EAAyE,EAAE,IAAY;IAC9G,IAAI,CAAC,EAAE,EAAE,CAAC;QACT,OAAO,KAAK,CAAA;IACb,CAAC;IACD,IAAI,CAAC,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC;QACd,OAAO,CAAC,CAAE,EAA2B,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;IAChD,CAAC;SAAM,CAAC;QACP,OAAO,CAAC,CAAE,EAAkC,CAAC,IAAI,CAAC,CAAA;IACnD,CAAC;AACF,CAAC;AATD,0BASC","sourcesContent":["import { MarkSpec } from 'prosemirror-model'\nimport OrderedMap from 'orderedmap'\n\nexport function hasMark(ms: { [key: string]: MarkSpec } | OrderedMap<MarkSpec> | null | undefined, mark: string): boolean {\n\tif (!ms) {\n\t\treturn false\n\t}\n\tif (!!ms.get) {\n\t\treturn !!(ms as OrderedMap<MarkSpec>).get(mark)\n\t} else {\n\t\treturn !!(ms as { [key: string]: MarkSpec })[mark]\n\t}\n}\n"]}
1
+ {"version":3,"file":"prosemirror-utils.js","sourceRoot":"","sources":["../../../tmp/components/icure-text-field/prosemirror-utils.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,OAAO,CAAC,EAAyE,EAAE,IAAY;IAC9G,IAAI,CAAC,EAAE,EAAE,CAAC;QACT,OAAO,KAAK,CAAA;IACb,CAAC;IACD,IAAI,CAAC,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC;QACd,OAAO,CAAC,CAAE,EAA2B,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;IAChD,CAAC;SAAM,CAAC;QACP,OAAO,CAAC,CAAE,EAAkC,CAAC,IAAI,CAAC,CAAA;IACnD,CAAC;AACF,CAAC","sourcesContent":["import { MarkSpec } from 'prosemirror-model'\nimport OrderedMap from 'orderedmap'\n\nexport function hasMark(ms: { [key: string]: MarkSpec } | OrderedMap<MarkSpec> | null | undefined, mark: string): boolean {\n\tif (!ms) {\n\t\treturn false\n\t}\n\tif (!!ms.get) {\n\t\treturn !!(ms as OrderedMap<MarkSpec>).get(mark)\n\t} else {\n\t\treturn !!(ms as { [key: string]: MarkSpec })[mark]\n\t}\n}\n"]}
@@ -1,7 +1,4 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getMarks = exports.colors = void 0;
4
- exports.colors = {
1
+ export const colors = {
5
2
  I: ['#F44336', 'white'],
6
3
  II: ['#E91E63', 'white'],
7
4
  III: ['#9C27B0', 'white'],
@@ -25,8 +22,8 @@ exports.colors = {
25
22
  XXI: ['#FFCE38', 'black'],
26
23
  XXII: ['#721F01', 'white'],
27
24
  };
28
- const getColor = (c) => exports.colors[c] || [c, 'white'];
29
- function getMarks(contentProvider, colorProvider) {
25
+ const getColor = (c) => colors[c] || [c, 'white'];
26
+ export function getMarks(contentProvider, colorProvider) {
30
27
  return {
31
28
  em: {
32
29
  parseDOM: [{ tag: 'i' }, { tag: 'em' }, { style: 'font-style', getAttrs: (value) => value === 'italic' && null }],
@@ -90,5 +87,4 @@ function getMarks(contentProvider, colorProvider) {
90
87
  },
91
88
  };
92
89
  }
93
- exports.getMarks = getMarks;
94
90
  //# sourceMappingURL=common-marks.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"common-marks.js","sourceRoot":"","sources":["../../../../tmp/components/icure-text-field/schema/common-marks.ts"],"names":[],"mappings":"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","sourcesContent":["import { MarkSpec } from 'prosemirror-model'\n\nexport const colors: { [key: string]: [string, string] } = {\n\tI: ['#F44336', 'white'],\n\tII: ['#E91E63', 'white'],\n\tIII: ['#9C27B0', 'white'],\n\tIV: ['#673AB7', 'white'],\n\tV: ['#009688', 'white'],\n\tVI: ['#4CAF50', 'white'],\n\tVII: ['#8BC34A', 'white'],\n\tVIII: ['#03A9F4', 'white'],\n\tIX: ['#00BCD4', 'white'],\n\tX: ['#FFC107', 'black'],\n\tXI: ['#FF9800', 'black'],\n\tXII: ['#FF5722', 'white'],\n\tXIII: ['#795548', 'white'],\n\tXIV: ['#3949AB', 'white'],\n\tXV: ['#C0CA33', 'black'],\n\tXVI: ['#07F87F', 'black'],\n\tXVII: ['#FF6262', 'white'],\n\tXVIII: ['#718792', 'white'],\n\tXIX: ['#00ECB9', 'black'],\n\tXX: ['#FF20A3', 'black'],\n\tXXI: ['#FFCE38', 'black'],\n\tXXII: ['#721F01', 'white'],\n}\n\nconst getColor = (c: string) => colors[c] || [c, 'white']\n\nexport function getMarks(\n\tcontentProvider: (codes: { type: string; code: string }[]) => string,\n\tcolorProvider: (type: string, code: string, isCode: boolean) => string,\n): { [key: string]: MarkSpec } {\n\treturn {\n\t\tem: {\n\t\t\tparseDOM: [{ tag: 'i' }, { tag: 'em' }, { style: 'font-style', getAttrs: (value) => value === 'italic' && null }],\n\t\t\ttoDOM() {\n\t\t\t\treturn ['em']\n\t\t\t},\n\t\t},\n\n\t\tstrong: {\n\t\t\tparseDOM: [{ tag: 'b' }, { tag: 'strong' }, { style: 'font-weight', getAttrs: (value) => /^(bold(er)?|[5-9]\\d{2,})$/.test(value as string) && null }],\n\t\t\ttoDOM() {\n\t\t\t\treturn ['strong']\n\t\t\t},\n\t\t},\n\n\t\tlink: {\n\t\t\tattrs: {\n\t\t\t\thref: {},\n\t\t\t\ttitle: { default: null },\n\t\t\t},\n\t\t\tinclusive: false,\n\t\t\tparseDOM: [\n\t\t\t\t{\n\t\t\t\t\ttag: 'span[data-href]',\n\t\t\t\t\tgetAttrs(dom) {\n\t\t\t\t\t\tconst el = dom as HTMLElement\n\t\t\t\t\t\treturn { href: el.dataset.href, title: el.dataset.title }\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t],\n\t\t\ttoDOM(node) {\n\t\t\t\tconst urls: string = node.attrs.href\n\t\t\t\tif (urls) {\n\t\t\t\t\tconst refs = urls.split(',').map((url) => {\n\t\t\t\t\t\tconst pos = url.indexOf('://')\n\t\t\t\t\t\tconst protocol = url.substring(0, pos)\n\t\t\t\t\t\tconst code = url.substring(pos + 3)\n\t\t\t\t\t\tconst parts = protocol.split('-')\n\t\t\t\t\t\tconst category = parts[0]\n\t\t\t\t\t\tconst type = parts[1]\n\n\t\t\t\t\t\treturn { category, type, code }\n\t\t\t\t\t})\n\n\t\t\t\t\tconst codes = refs.filter((x) => x.category === 'c')\n\t\t\t\t\tconst ilinks = refs.filter((x) => x.category === 'i')\n\n\t\t\t\t\tconst classes = (refs.some((x) => x.category === 'x') ? ['ext-link'] : []).concat(codes.length ? [`code-count-${codes.length}`] : [])\n\n\t\t\t\t\tconst dataAttributes = (codes.length ? [{ 'data-content': contentProvider(codes) } as { [key: string]: string }] : []).concat(\n\t\t\t\t\t\tilinks.map((c, idx) => ({ [`data-link-color-${idx}`]: colorProvider(c.type, c.code, false) })),\n\t\t\t\t\t)\n\n\t\t\t\t\tconst styles = codes.map((c, idx) => {\n\t\t\t\t\t\tconst color = getColor(colorProvider(c.type, c.code, true))\n\t\t\t\t\t\treturn `--bg-code-color-${idx + 1}: ${color[0]}; --text-code-color-${idx + 1}: ${color[1]};`\n\t\t\t\t\t})\n\n\t\t\t\t\treturn [\n\t\t\t\t\t\t'span',\n\t\t\t\t\t\tdataAttributes.reduce((acc, da) => Object.assign(da, acc), {\n\t\t\t\t\t\t\t['data-href']: node.attrs.href,\n\t\t\t\t\t\t\t['data-title']: node.attrs.title,\n\t\t\t\t\t\t\tclass: classes.join(' '),\n\t\t\t\t\t\t\tstyle: styles.join(''),\n\t\t\t\t\t\t}),\n\t\t\t\t\t]\n\t\t\t\t}\n\n\t\t\t\treturn ['span', { ['data-href']: node.attrs.href, ['data-title']: node.attrs.title }]\n\t\t\t},\n\t\t},\n\t}\n}\n"]}
1
+ {"version":3,"file":"common-marks.js","sourceRoot":"","sources":["../../../../tmp/components/icure-text-field/schema/common-marks.ts"],"names":[],"mappings":"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","sourcesContent":["import { MarkSpec } from 'prosemirror-model'\n\nexport const colors: { [key: string]: [string, string] } = {\n\tI: ['#F44336', 'white'],\n\tII: ['#E91E63', 'white'],\n\tIII: ['#9C27B0', 'white'],\n\tIV: ['#673AB7', 'white'],\n\tV: ['#009688', 'white'],\n\tVI: ['#4CAF50', 'white'],\n\tVII: ['#8BC34A', 'white'],\n\tVIII: ['#03A9F4', 'white'],\n\tIX: ['#00BCD4', 'white'],\n\tX: ['#FFC107', 'black'],\n\tXI: ['#FF9800', 'black'],\n\tXII: ['#FF5722', 'white'],\n\tXIII: ['#795548', 'white'],\n\tXIV: ['#3949AB', 'white'],\n\tXV: ['#C0CA33', 'black'],\n\tXVI: ['#07F87F', 'black'],\n\tXVII: ['#FF6262', 'white'],\n\tXVIII: ['#718792', 'white'],\n\tXIX: ['#00ECB9', 'black'],\n\tXX: ['#FF20A3', 'black'],\n\tXXI: ['#FFCE38', 'black'],\n\tXXII: ['#721F01', 'white'],\n}\n\nconst getColor = (c: string) => colors[c] || [c, 'white']\n\nexport function getMarks(\n\tcontentProvider: (codes: { type: string; code: string }[]) => string,\n\tcolorProvider: (type: string, code: string, isCode: boolean) => string,\n): { [key: string]: MarkSpec } {\n\treturn {\n\t\tem: {\n\t\t\tparseDOM: [{ tag: 'i' }, { tag: 'em' }, { style: 'font-style', getAttrs: (value) => value === 'italic' && null }],\n\t\t\ttoDOM() {\n\t\t\t\treturn ['em']\n\t\t\t},\n\t\t},\n\n\t\tstrong: {\n\t\t\tparseDOM: [{ tag: 'b' }, { tag: 'strong' }, { style: 'font-weight', getAttrs: (value) => /^(bold(er)?|[5-9]\\d{2,})$/.test(value as string) && null }],\n\t\t\ttoDOM() {\n\t\t\t\treturn ['strong']\n\t\t\t},\n\t\t},\n\n\t\tlink: {\n\t\t\tattrs: {\n\t\t\t\thref: {},\n\t\t\t\ttitle: { default: null },\n\t\t\t},\n\t\t\tinclusive: false,\n\t\t\tparseDOM: [\n\t\t\t\t{\n\t\t\t\t\ttag: 'span[data-href]',\n\t\t\t\t\tgetAttrs(dom) {\n\t\t\t\t\t\tconst el = dom as HTMLElement\n\t\t\t\t\t\treturn { href: el.dataset.href, title: el.dataset.title }\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t],\n\t\t\ttoDOM(node) {\n\t\t\t\tconst urls: string = node.attrs.href\n\t\t\t\tif (urls) {\n\t\t\t\t\tconst refs = urls.split(',').map((url) => {\n\t\t\t\t\t\tconst pos = url.indexOf('://')\n\t\t\t\t\t\tconst protocol = url.substring(0, pos)\n\t\t\t\t\t\tconst code = url.substring(pos + 3)\n\t\t\t\t\t\tconst parts = protocol.split('-')\n\t\t\t\t\t\tconst category = parts[0]\n\t\t\t\t\t\tconst type = parts[1]\n\n\t\t\t\t\t\treturn { category, type, code }\n\t\t\t\t\t})\n\n\t\t\t\t\tconst codes = refs.filter((x) => x.category === 'c')\n\t\t\t\t\tconst ilinks = refs.filter((x) => x.category === 'i')\n\n\t\t\t\t\tconst classes = (refs.some((x) => x.category === 'x') ? ['ext-link'] : []).concat(codes.length ? [`code-count-${codes.length}`] : [])\n\n\t\t\t\t\tconst dataAttributes = (codes.length ? [{ 'data-content': contentProvider(codes) } as { [key: string]: string }] : []).concat(\n\t\t\t\t\t\tilinks.map((c, idx) => ({ [`data-link-color-${idx}`]: colorProvider(c.type, c.code, false) })),\n\t\t\t\t\t)\n\n\t\t\t\t\tconst styles = codes.map((c, idx) => {\n\t\t\t\t\t\tconst color = getColor(colorProvider(c.type, c.code, true))\n\t\t\t\t\t\treturn `--bg-code-color-${idx + 1}: ${color[0]}; --text-code-color-${idx + 1}: ${color[1]};`\n\t\t\t\t\t})\n\n\t\t\t\t\treturn [\n\t\t\t\t\t\t'span',\n\t\t\t\t\t\tdataAttributes.reduce((acc, da) => Object.assign(da, acc), {\n\t\t\t\t\t\t\t['data-href']: node.attrs.href,\n\t\t\t\t\t\t\t['data-title']: node.attrs.title,\n\t\t\t\t\t\t\tclass: classes.join(' '),\n\t\t\t\t\t\t\tstyle: styles.join(''),\n\t\t\t\t\t\t}),\n\t\t\t\t\t]\n\t\t\t\t}\n\n\t\t\t\treturn ['span', { ['data-href']: node.attrs.href, ['data-title']: node.attrs.title }]\n\t\t\t},\n\t\t},\n\t}\n}\n"]}
@@ -1,7 +1,4 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getDateTimeSpec = exports.getTimeSpec = exports.getDateSpec = void 0;
4
- function getDateSpec() {
1
+ export function getDateSpec() {
5
2
  return {
6
3
  topNode: 'paragraph',
7
4
  nodes: {
@@ -25,8 +22,7 @@ function getDateSpec() {
25
22
  marks: {},
26
23
  };
27
24
  }
28
- exports.getDateSpec = getDateSpec;
29
- function getTimeSpec() {
25
+ export function getTimeSpec() {
30
26
  return {
31
27
  topNode: 'paragraph',
32
28
  nodes: {
@@ -50,8 +46,7 @@ function getTimeSpec() {
50
46
  marks: {},
51
47
  };
52
48
  }
53
- exports.getTimeSpec = getTimeSpec;
54
- function getDateTimeSpec() {
49
+ export function getDateTimeSpec() {
55
50
  return {
56
51
  topNode: 'paragraph',
57
52
  nodes: {
@@ -85,5 +80,4 @@ function getDateTimeSpec() {
85
80
  marks: {},
86
81
  };
87
82
  }
88
- exports.getDateTimeSpec = getDateTimeSpec;
89
83
  //# sourceMappingURL=date-time-schema.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"date-time-schema.js","sourceRoot":"","sources":["../../../../tmp/components/icure-text-field/schema/date-time-schema.ts"],"names":[],"mappings":";;;AAMA,SAAgB,WAAW;IAC1B,OAAO;QACN,OAAO,EAAE,WAAW;QACpB,KAAK,EAAE;YACN,SAAS,EAAE;gBACV,OAAO,EAAE,MAAM;aACf;YAED,IAAI,EAAE;gBACL,OAAO,EAAE,SAAS;gBAClB,KAAK,EAAE,OAAO;gBACd,QAAQ,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC;gBAC3B,KAAK;oBACJ,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;gBACnB,CAAC;gBACD,MAAM,EAAE,OAAO;gBACf,IAAI,EAAE,YAAY;aAClB;YAED,IAAI,EAAE;gBACL,KAAK,EAAE,QAAQ;aACf;SACD;QACD,KAAK,EAAE,EAAE;KACT,CAAA;AACF,CAAC;AAzBD,kCAyBC;AAED,SAAgB,WAAW;IAC1B,OAAO;QACN,OAAO,EAAE,WAAW;QACpB,KAAK,EAAE;YACN,SAAS,EAAE;gBACV,OAAO,EAAE,MAAM;aACf;YAED,IAAI,EAAE;gBACL,OAAO,EAAE,SAAS;gBAClB,KAAK,EAAE,OAAO;gBACd,QAAQ,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC;gBAC3B,KAAK;oBACJ,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;gBACnB,CAAC;gBACD,MAAM,EAAE,OAAO;gBACf,IAAI,EAAE,UAAU;aAChB;YAED,IAAI,EAAE;gBACL,KAAK,EAAE,QAAQ;aACf;SACD;QACD,KAAK,EAAE,EAAE;KACT,CAAA;AACF,CAAC;AAzBD,kCAyBC;AAED,SAAgB,eAAe;IAC9B,OAAO;QACN,OAAO,EAAE,WAAW;QACpB,KAAK,EAAE;YACN,SAAS,EAAE;gBACV,OAAO,EAAE,WAAW;aACpB;YAED,IAAI,EAAE;gBACL,OAAO,EAAE,SAAS;gBAClB,KAAK,EAAE,OAAO;gBACd,QAAQ,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC;gBAC3B,KAAK;oBACJ,OAAO,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC,CAAA;gBACtC,CAAC;gBACD,MAAM,EAAE,OAAO;gBACf,IAAI,EAAE,YAAY;aAClB;YAED,IAAI,EAAE;gBACL,OAAO,EAAE,SAAS;gBAClB,KAAK,EAAE,OAAO;gBACd,QAAQ,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC;gBAC3B,KAAK;oBACJ,OAAO,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC,CAAA;gBACtC,CAAC;gBACD,MAAM,EAAE,OAAO;gBACf,IAAI,EAAE,UAAU;aAChB;YAED,IAAI,EAAE;gBACL,KAAK,EAAE,QAAQ;aACf;SACD;QACD,KAAK,EAAE,EAAE;KACT,CAAA;AACF,CAAC;AApCD,0CAoCC","sourcesContent":["import { SchemaSpec } from 'prosemirror-model'\n\nexport type DateSchema = 'date'\nexport type TimeSchema = 'time'\nexport type DateTimeSchema = 'date-time'\n\nexport function getDateSpec(): SchemaSpec {\n\treturn {\n\t\ttopNode: 'paragraph',\n\t\tnodes: {\n\t\t\tparagraph: {\n\t\t\t\tcontent: 'date',\n\t\t\t},\n\n\t\t\tdate: {\n\t\t\t\tcontent: 'inline*',\n\t\t\t\tgroup: 'block',\n\t\t\t\tparseDOM: [{ tag: 'span' }],\n\t\t\t\ttoDOM() {\n\t\t\t\t\treturn ['span', 0]\n\t\t\t\t},\n\t\t\t\tregexp: '[0-9]',\n\t\t\t\tmask: '--/--/----',\n\t\t\t},\n\n\t\t\ttext: {\n\t\t\t\tgroup: 'inline',\n\t\t\t},\n\t\t},\n\t\tmarks: {},\n\t}\n}\n\nexport function getTimeSpec(): SchemaSpec {\n\treturn {\n\t\ttopNode: 'paragraph',\n\t\tnodes: {\n\t\t\tparagraph: {\n\t\t\t\tcontent: 'time',\n\t\t\t},\n\n\t\t\ttime: {\n\t\t\t\tcontent: 'inline*',\n\t\t\t\tgroup: 'block',\n\t\t\t\tparseDOM: [{ tag: 'span' }],\n\t\t\t\ttoDOM() {\n\t\t\t\t\treturn ['span', 0]\n\t\t\t\t},\n\t\t\t\tregexp: '[0-9]',\n\t\t\t\tmask: '--:--:--',\n\t\t\t},\n\n\t\t\ttext: {\n\t\t\t\tgroup: 'inline',\n\t\t\t},\n\t\t},\n\t\tmarks: {},\n\t}\n}\n\nexport function getDateTimeSpec(): SchemaSpec {\n\treturn {\n\t\ttopNode: 'paragraph',\n\t\tnodes: {\n\t\t\tparagraph: {\n\t\t\t\tcontent: 'date time',\n\t\t\t},\n\n\t\t\tdate: {\n\t\t\t\tcontent: 'inline*',\n\t\t\t\tgroup: 'block',\n\t\t\t\tparseDOM: [{ tag: 'span' }],\n\t\t\t\ttoDOM() {\n\t\t\t\t\treturn ['span', { class: 'date' }, 0]\n\t\t\t\t},\n\t\t\t\tregexp: '[0-9]',\n\t\t\t\tmask: '--/--/----',\n\t\t\t},\n\n\t\t\ttime: {\n\t\t\t\tcontent: 'inline*',\n\t\t\t\tgroup: 'block',\n\t\t\t\tparseDOM: [{ tag: 'span' }],\n\t\t\t\ttoDOM() {\n\t\t\t\t\treturn ['span', { class: 'time' }, 0]\n\t\t\t\t},\n\t\t\t\tregexp: '[0-9]',\n\t\t\t\tmask: '--:--:--',\n\t\t\t},\n\n\t\t\ttext: {\n\t\t\t\tgroup: 'inline',\n\t\t\t},\n\t\t},\n\t\tmarks: {},\n\t}\n}\n"]}
1
+ {"version":3,"file":"date-time-schema.js","sourceRoot":"","sources":["../../../../tmp/components/icure-text-field/schema/date-time-schema.ts"],"names":[],"mappings":"AAMA,MAAM,UAAU,WAAW;IAC1B,OAAO;QACN,OAAO,EAAE,WAAW;QACpB,KAAK,EAAE;YACN,SAAS,EAAE;gBACV,OAAO,EAAE,MAAM;aACf;YAED,IAAI,EAAE;gBACL,OAAO,EAAE,SAAS;gBAClB,KAAK,EAAE,OAAO;gBACd,QAAQ,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC;gBAC3B,KAAK;oBACJ,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;gBACnB,CAAC;gBACD,MAAM,EAAE,OAAO;gBACf,IAAI,EAAE,YAAY;aAClB;YAED,IAAI,EAAE;gBACL,KAAK,EAAE,QAAQ;aACf;SACD;QACD,KAAK,EAAE,EAAE;KACT,CAAA;AACF,CAAC;AAED,MAAM,UAAU,WAAW;IAC1B,OAAO;QACN,OAAO,EAAE,WAAW;QACpB,KAAK,EAAE;YACN,SAAS,EAAE;gBACV,OAAO,EAAE,MAAM;aACf;YAED,IAAI,EAAE;gBACL,OAAO,EAAE,SAAS;gBAClB,KAAK,EAAE,OAAO;gBACd,QAAQ,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC;gBAC3B,KAAK;oBACJ,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;gBACnB,CAAC;gBACD,MAAM,EAAE,OAAO;gBACf,IAAI,EAAE,UAAU;aAChB;YAED,IAAI,EAAE;gBACL,KAAK,EAAE,QAAQ;aACf;SACD;QACD,KAAK,EAAE,EAAE;KACT,CAAA;AACF,CAAC;AAED,MAAM,UAAU,eAAe;IAC9B,OAAO;QACN,OAAO,EAAE,WAAW;QACpB,KAAK,EAAE;YACN,SAAS,EAAE;gBACV,OAAO,EAAE,WAAW;aACpB;YAED,IAAI,EAAE;gBACL,OAAO,EAAE,SAAS;gBAClB,KAAK,EAAE,OAAO;gBACd,QAAQ,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC;gBAC3B,KAAK;oBACJ,OAAO,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC,CAAA;gBACtC,CAAC;gBACD,MAAM,EAAE,OAAO;gBACf,IAAI,EAAE,YAAY;aAClB;YAED,IAAI,EAAE;gBACL,OAAO,EAAE,SAAS;gBAClB,KAAK,EAAE,OAAO;gBACd,QAAQ,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC;gBAC3B,KAAK;oBACJ,OAAO,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC,CAAA;gBACtC,CAAC;gBACD,MAAM,EAAE,OAAO;gBACf,IAAI,EAAE,UAAU;aAChB;YAED,IAAI,EAAE;gBACL,KAAK,EAAE,QAAQ;aACf;SACD;QACD,KAAK,EAAE,EAAE;KACT,CAAA;AACF,CAAC","sourcesContent":["import { SchemaSpec } from 'prosemirror-model'\n\nexport type DateSchema = 'date'\nexport type TimeSchema = 'time'\nexport type DateTimeSchema = 'date-time'\n\nexport function getDateSpec(): SchemaSpec {\n\treturn {\n\t\ttopNode: 'paragraph',\n\t\tnodes: {\n\t\t\tparagraph: {\n\t\t\t\tcontent: 'date',\n\t\t\t},\n\n\t\t\tdate: {\n\t\t\t\tcontent: 'inline*',\n\t\t\t\tgroup: 'block',\n\t\t\t\tparseDOM: [{ tag: 'span' }],\n\t\t\t\ttoDOM() {\n\t\t\t\t\treturn ['span', 0]\n\t\t\t\t},\n\t\t\t\tregexp: '[0-9]',\n\t\t\t\tmask: '--/--/----',\n\t\t\t},\n\n\t\t\ttext: {\n\t\t\t\tgroup: 'inline',\n\t\t\t},\n\t\t},\n\t\tmarks: {},\n\t}\n}\n\nexport function getTimeSpec(): SchemaSpec {\n\treturn {\n\t\ttopNode: 'paragraph',\n\t\tnodes: {\n\t\t\tparagraph: {\n\t\t\t\tcontent: 'time',\n\t\t\t},\n\n\t\t\ttime: {\n\t\t\t\tcontent: 'inline*',\n\t\t\t\tgroup: 'block',\n\t\t\t\tparseDOM: [{ tag: 'span' }],\n\t\t\t\ttoDOM() {\n\t\t\t\t\treturn ['span', 0]\n\t\t\t\t},\n\t\t\t\tregexp: '[0-9]',\n\t\t\t\tmask: '--:--:--',\n\t\t\t},\n\n\t\t\ttext: {\n\t\t\t\tgroup: 'inline',\n\t\t\t},\n\t\t},\n\t\tmarks: {},\n\t}\n}\n\nexport function getDateTimeSpec(): SchemaSpec {\n\treturn {\n\t\ttopNode: 'paragraph',\n\t\tnodes: {\n\t\t\tparagraph: {\n\t\t\t\tcontent: 'date time',\n\t\t\t},\n\n\t\t\tdate: {\n\t\t\t\tcontent: 'inline*',\n\t\t\t\tgroup: 'block',\n\t\t\t\tparseDOM: [{ tag: 'span' }],\n\t\t\t\ttoDOM() {\n\t\t\t\t\treturn ['span', { class: 'date' }, 0]\n\t\t\t\t},\n\t\t\t\tregexp: '[0-9]',\n\t\t\t\tmask: '--/--/----',\n\t\t\t},\n\n\t\t\ttime: {\n\t\t\t\tcontent: 'inline*',\n\t\t\t\tgroup: 'block',\n\t\t\t\tparseDOM: [{ tag: 'span' }],\n\t\t\t\ttoDOM() {\n\t\t\t\t\treturn ['span', { class: 'time' }, 0]\n\t\t\t\t},\n\t\t\t\tregexp: '[0-9]',\n\t\t\t\tmask: '--:--:--',\n\t\t\t},\n\n\t\t\ttext: {\n\t\t\t\tgroup: 'inline',\n\t\t\t},\n\t\t},\n\t\tmarks: {},\n\t}\n}\n"]}
@@ -1,7 +1,4 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getDecimalSpec = void 0;
4
- function getDecimalSpec() {
1
+ export function getDecimalSpec() {
5
2
  return {
6
3
  topNode: 'paragraph',
7
4
  nodes: {
@@ -24,5 +21,4 @@ function getDecimalSpec() {
24
21
  marks: {},
25
22
  };
26
23
  }
27
- exports.getDecimalSpec = getDecimalSpec;
28
24
  //# sourceMappingURL=decimal-schema.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"decimal-schema.js","sourceRoot":"","sources":["../../../../tmp/components/icure-text-field/schema/decimal-schema.ts"],"names":[],"mappings":";;;AAIA,SAAgB,cAAc;IAC7B,OAAO;QACN,OAAO,EAAE,WAAW;QACpB,KAAK,EAAE;YACN,SAAS,EAAE;gBACV,OAAO,EAAE,SAAS;aAClB;YAED,OAAO,EAAE;gBACR,OAAO,EAAE,SAAS;gBAClB,KAAK,EAAE,OAAO;gBACd,QAAQ,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC;gBAC3B,KAAK;oBACJ,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;gBACnB,CAAC;gBACD,MAAM,EAAE,WAAW;aACnB;YAED,IAAI,EAAE;gBACL,KAAK,EAAE,QAAQ;aACf;SACD;QACD,KAAK,EAAE,EAAE;KACT,CAAA;AACF,CAAC;AAxBD,wCAwBC","sourcesContent":["import { SchemaSpec } from 'prosemirror-model'\n\nexport type DecimalSchema = 'decimal'\n\nexport function getDecimalSpec(): SchemaSpec {\n\treturn {\n\t\ttopNode: 'paragraph',\n\t\tnodes: {\n\t\t\tparagraph: {\n\t\t\t\tcontent: 'decimal',\n\t\t\t},\n\n\t\t\tdecimal: {\n\t\t\t\tcontent: 'inline*',\n\t\t\t\tgroup: 'block',\n\t\t\t\tparseDOM: [{ tag: 'span' }],\n\t\t\t\ttoDOM() {\n\t\t\t\t\treturn ['span', 0]\n\t\t\t\t},\n\t\t\t\tregexp: '[,. 0-9-]',\n\t\t\t},\n\n\t\t\ttext: {\n\t\t\t\tgroup: 'inline',\n\t\t\t},\n\t\t},\n\t\tmarks: {},\n\t}\n}\n"]}
1
+ {"version":3,"file":"decimal-schema.js","sourceRoot":"","sources":["../../../../tmp/components/icure-text-field/schema/decimal-schema.ts"],"names":[],"mappings":"AAIA,MAAM,UAAU,cAAc;IAC7B,OAAO;QACN,OAAO,EAAE,WAAW;QACpB,KAAK,EAAE;YACN,SAAS,EAAE;gBACV,OAAO,EAAE,SAAS;aAClB;YAED,OAAO,EAAE;gBACR,OAAO,EAAE,SAAS;gBAClB,KAAK,EAAE,OAAO;gBACd,QAAQ,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC;gBAC3B,KAAK;oBACJ,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;gBACnB,CAAC;gBACD,MAAM,EAAE,WAAW;aACnB;YAED,IAAI,EAAE;gBACL,KAAK,EAAE,QAAQ;aACf;SACD;QACD,KAAK,EAAE,EAAE;KACT,CAAA;AACF,CAAC","sourcesContent":["import { SchemaSpec } from 'prosemirror-model'\n\nexport type DecimalSchema = 'decimal'\n\nexport function getDecimalSpec(): SchemaSpec {\n\treturn {\n\t\ttopNode: 'paragraph',\n\t\tnodes: {\n\t\t\tparagraph: {\n\t\t\t\tcontent: 'decimal',\n\t\t\t},\n\n\t\t\tdecimal: {\n\t\t\t\tcontent: 'inline*',\n\t\t\t\tgroup: 'block',\n\t\t\t\tparseDOM: [{ tag: 'span' }],\n\t\t\t\ttoDOM() {\n\t\t\t\t\treturn ['span', 0]\n\t\t\t\t},\n\t\t\t\tregexp: '[,. 0-9-]',\n\t\t\t},\n\n\t\t\ttext: {\n\t\t\t\tgroup: 'inline',\n\t\t\t},\n\t\t},\n\t\tmarks: {},\n\t}\n}\n"]}
@@ -1,29 +1,25 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.createSchema = void 0;
4
- const prosemirror_model_1 = require("prosemirror-model");
5
- const markdown_schema_1 = require("./markdown-schema");
6
- const date_time_schema_1 = require("./date-time-schema");
7
- const token_schema_1 = require("./token-schema");
8
- const measure_schema_1 = require("./measure-schema");
9
- const decimal_schema_1 = require("./decimal-schema");
10
- const items_list_schema_1 = require("./items-list-schema");
11
- function createSchema(type, colorProvider, contentProvider) {
12
- return new prosemirror_model_1.Schema(type === 'decimal'
13
- ? (0, decimal_schema_1.getDecimalSpec)()
1
+ import { Schema } from 'prosemirror-model';
2
+ import { getMarkdownSpec } from './markdown-schema';
3
+ import { getDateSpec, getDateTimeSpec, getTimeSpec } from './date-time-schema';
4
+ import { getTokensSpec } from './token-schema';
5
+ import { getMeasureSpec } from './measure-schema';
6
+ import { getDecimalSpec } from './decimal-schema';
7
+ import { getItemsListSpec } from './items-list-schema';
8
+ export function createSchema(type, colorProvider, contentProvider) {
9
+ return new Schema(type === 'decimal'
10
+ ? getDecimalSpec()
14
11
  : type === 'measure'
15
- ? (0, measure_schema_1.getMeasureSpec)()
12
+ ? getMeasureSpec()
16
13
  : type === 'date'
17
- ? (0, date_time_schema_1.getDateSpec)()
14
+ ? getDateSpec()
18
15
  : type === 'time'
19
- ? (0, date_time_schema_1.getTimeSpec)()
16
+ ? getTimeSpec()
20
17
  : type === 'date-time'
21
- ? (0, date_time_schema_1.getDateTimeSpec)()
18
+ ? getDateTimeSpec()
22
19
  : type === 'items-list'
23
- ? (0, items_list_schema_1.getItemsListSpec)()
20
+ ? getItemsListSpec()
24
21
  : type === 'tokens-list' || type === 'styled-tokens-list' || type === 'tokens-list-with-codes' || type === 'styled-tokens-list-with-codes'
25
- ? (0, token_schema_1.getTokensSpec)(type, contentProvider, colorProvider)
26
- : (0, markdown_schema_1.getMarkdownSpec)(type, contentProvider, colorProvider));
22
+ ? getTokensSpec(type, contentProvider, colorProvider)
23
+ : getMarkdownSpec(type, contentProvider, colorProvider));
27
24
  }
28
- exports.createSchema = createSchema;
29
25
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../tmp/components/icure-text-field/schema/index.ts"],"names":[],"mappings":";;;AAAA,yDAA0C;AAC1C,uDAAmD;AACnD,yDAA8E;AAC9E,iDAA8C;AAC9C,qDAAiD;AACjD,qDAAiD;AACjD,2DAAsD;AAGtD,SAAgB,YAAY,CAC3B,IAA0B,EAC1B,aAAsE,EACtE,eAAoE;IAEpE,OAAO,IAAI,0BAAM,CAChB,IAAI,KAAK,SAAS;QACjB,CAAC,CAAC,IAAA,+BAAc,GAAE;QAClB,CAAC,CAAC,IAAI,KAAK,SAAS;YACpB,CAAC,CAAC,IAAA,+BAAc,GAAE;YAClB,CAAC,CAAC,IAAI,KAAK,MAAM;gBACjB,CAAC,CAAC,IAAA,8BAAW,GAAE;gBACf,CAAC,CAAC,IAAI,KAAK,MAAM;oBACjB,CAAC,CAAC,IAAA,8BAAW,GAAE;oBACf,CAAC,CAAC,IAAI,KAAK,WAAW;wBACtB,CAAC,CAAC,IAAA,kCAAe,GAAE;wBACnB,CAAC,CAAC,IAAI,KAAK,YAAY;4BACvB,CAAC,CAAC,IAAA,oCAAgB,GAAE;4BACpB,CAAC,CAAC,IAAI,KAAK,aAAa,IAAI,IAAI,KAAK,oBAAoB,IAAI,IAAI,KAAK,wBAAwB,IAAI,IAAI,KAAK,+BAA+B;gCAC1I,CAAC,CAAC,IAAA,4BAAa,EAAC,IAAI,EAAE,eAAe,EAAE,aAAa,CAAC;gCACrD,CAAC,CAAC,IAAA,iCAAe,EAAC,IAAI,EAAE,eAAe,EAAE,aAAa,CAAC,CACxD,CAAA;AACF,CAAC;AAtBD,oCAsBC","sourcesContent":["import { Schema } from 'prosemirror-model'\nimport { getMarkdownSpec } from './markdown-schema'\nimport { getDateSpec, getDateTimeSpec, getTimeSpec } from './date-time-schema'\nimport { getTokensSpec } from './token-schema'\nimport { getMeasureSpec } from './measure-schema'\nimport { getDecimalSpec } from './decimal-schema'\nimport { getItemsListSpec } from './items-list-schema'\nimport { IcureTextFieldSchema } from '../../model'\n\nexport function createSchema(\n\ttype: IcureTextFieldSchema,\n\tcolorProvider: (type: string, code: string, isCode: boolean) => string,\n\tcontentProvider: (codes: { type: string; code: string }[]) => string,\n): Schema {\n\treturn new Schema(\n\t\ttype === 'decimal'\n\t\t\t? getDecimalSpec()\n\t\t\t: type === 'measure'\n\t\t\t? getMeasureSpec()\n\t\t\t: type === 'date'\n\t\t\t? getDateSpec()\n\t\t\t: type === 'time'\n\t\t\t? getTimeSpec()\n\t\t\t: type === 'date-time'\n\t\t\t? getDateTimeSpec()\n\t\t\t: type === 'items-list'\n\t\t\t? getItemsListSpec()\n\t\t\t: type === 'tokens-list' || type === 'styled-tokens-list' || type === 'tokens-list-with-codes' || type === 'styled-tokens-list-with-codes'\n\t\t\t? getTokensSpec(type, contentProvider, colorProvider)\n\t\t\t: getMarkdownSpec(type, contentProvider, colorProvider),\n\t)\n}\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../tmp/components/icure-text-field/schema/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAC9E,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AAGtD,MAAM,UAAU,YAAY,CAC3B,IAA0B,EAC1B,aAAsE,EACtE,eAAoE;IAEpE,OAAO,IAAI,MAAM,CAChB,IAAI,KAAK,SAAS;QACjB,CAAC,CAAC,cAAc,EAAE;QAClB,CAAC,CAAC,IAAI,KAAK,SAAS;YACpB,CAAC,CAAC,cAAc,EAAE;YAClB,CAAC,CAAC,IAAI,KAAK,MAAM;gBACjB,CAAC,CAAC,WAAW,EAAE;gBACf,CAAC,CAAC,IAAI,KAAK,MAAM;oBACjB,CAAC,CAAC,WAAW,EAAE;oBACf,CAAC,CAAC,IAAI,KAAK,WAAW;wBACtB,CAAC,CAAC,eAAe,EAAE;wBACnB,CAAC,CAAC,IAAI,KAAK,YAAY;4BACvB,CAAC,CAAC,gBAAgB,EAAE;4BACpB,CAAC,CAAC,IAAI,KAAK,aAAa,IAAI,IAAI,KAAK,oBAAoB,IAAI,IAAI,KAAK,wBAAwB,IAAI,IAAI,KAAK,+BAA+B;gCAC1I,CAAC,CAAC,aAAa,CAAC,IAAI,EAAE,eAAe,EAAE,aAAa,CAAC;gCACrD,CAAC,CAAC,eAAe,CAAC,IAAI,EAAE,eAAe,EAAE,aAAa,CAAC,CACxD,CAAA;AACF,CAAC","sourcesContent":["import { Schema } from 'prosemirror-model'\nimport { getMarkdownSpec } from './markdown-schema'\nimport { getDateSpec, getDateTimeSpec, getTimeSpec } from './date-time-schema'\nimport { getTokensSpec } from './token-schema'\nimport { getMeasureSpec } from './measure-schema'\nimport { getDecimalSpec } from './decimal-schema'\nimport { getItemsListSpec } from './items-list-schema'\nimport { IcureTextFieldSchema } from '../../model'\n\nexport function createSchema(\n\ttype: IcureTextFieldSchema,\n\tcolorProvider: (type: string, code: string, isCode: boolean) => string,\n\tcontentProvider: (codes: { type: string; code: string }[]) => string,\n): Schema {\n\treturn new Schema(\n\t\ttype === 'decimal'\n\t\t\t? getDecimalSpec()\n\t\t\t: type === 'measure'\n\t\t\t? getMeasureSpec()\n\t\t\t: type === 'date'\n\t\t\t? getDateSpec()\n\t\t\t: type === 'time'\n\t\t\t? getTimeSpec()\n\t\t\t: type === 'date-time'\n\t\t\t? getDateTimeSpec()\n\t\t\t: type === 'items-list'\n\t\t\t? getItemsListSpec()\n\t\t\t: type === 'tokens-list' || type === 'styled-tokens-list' || type === 'tokens-list-with-codes' || type === 'styled-tokens-list-with-codes'\n\t\t\t? getTokensSpec(type, contentProvider, colorProvider)\n\t\t\t: getMarkdownSpec(type, contentProvider, colorProvider),\n\t)\n}\n"]}
@@ -1,10 +1,7 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getItemsListSpec = void 0;
4
- const utils_1 = require("./utils");
5
- function getItemsListSpec() {
1
+ import { reduceNodes } from './utils';
2
+ export function getItemsListSpec() {
6
3
  return {
7
- nodes: (0, utils_1.reduceNodes)({
4
+ nodes: reduceNodes({
8
5
  doc: {
9
6
  content: 'item*',
10
7
  },
@@ -24,5 +21,4 @@ function getItemsListSpec() {
24
21
  marks: {},
25
22
  };
26
23
  }
27
- exports.getItemsListSpec = getItemsListSpec;
28
24
  //# sourceMappingURL=items-list-schema.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"items-list-schema.js","sourceRoot":"","sources":["../../../../tmp/components/icure-text-field/schema/items-list-schema.ts"],"names":[],"mappings":";;;AACA,mCAAqC;AAIrC,SAAgB,gBAAgB;IAC/B,OAAO;QACN,KAAK,EAAE,IAAA,mBAAW,EAAC;YAClB,GAAG,EAAE;gBACJ,OAAO,EAAE,OAAO;aAChB;YAED,IAAI,EAAE;gBACL,OAAO,EAAE,SAAS;gBAClB,KAAK,EAAE,OAAO;gBACd,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE;gBACrC,QAAQ,EAAE,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC;gBACzB,KAAK;oBACJ,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAA;gBACjB,CAAC;aACD;YAED,IAAI,EAAE;gBACL,KAAK,EAAE,QAAQ;aACf;SACD,CAAC;QACF,KAAK,EAAE,EAAE;KACT,CAAA;AACF,CAAC;AAvBD,4CAuBC","sourcesContent":["import { SchemaSpec } from 'prosemirror-model'\nimport { reduceNodes } from './utils'\n\nexport type ItemsListSchema = 'items-list'\n\nexport function getItemsListSpec(): SchemaSpec {\n\treturn {\n\t\tnodes: reduceNodes({\n\t\t\tdoc: {\n\t\t\t\tcontent: 'item*',\n\t\t\t},\n\n\t\t\titem: {\n\t\t\t\tcontent: 'inline*',\n\t\t\t\tgroup: 'block',\n\t\t\t\tattrs: { id: { default: undefined } },\n\t\t\t\tparseDOM: [{ tag: 'li' }],\n\t\t\t\ttoDOM() {\n\t\t\t\t\treturn ['li', 0]\n\t\t\t\t},\n\t\t\t},\n\n\t\t\ttext: {\n\t\t\t\tgroup: 'inline',\n\t\t\t},\n\t\t}),\n\t\tmarks: {},\n\t}\n}\n"]}
1
+ {"version":3,"file":"items-list-schema.js","sourceRoot":"","sources":["../../../../tmp/components/icure-text-field/schema/items-list-schema.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAIrC,MAAM,UAAU,gBAAgB;IAC/B,OAAO;QACN,KAAK,EAAE,WAAW,CAAC;YAClB,GAAG,EAAE;gBACJ,OAAO,EAAE,OAAO;aAChB;YAED,IAAI,EAAE;gBACL,OAAO,EAAE,SAAS;gBAClB,KAAK,EAAE,OAAO;gBACd,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE;gBACrC,QAAQ,EAAE,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC;gBACzB,KAAK;oBACJ,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAA;gBACjB,CAAC;aACD;YAED,IAAI,EAAE;gBACL,KAAK,EAAE,QAAQ;aACf;SACD,CAAC;QACF,KAAK,EAAE,EAAE;KACT,CAAA;AACF,CAAC","sourcesContent":["import { SchemaSpec } from 'prosemirror-model'\nimport { reduceNodes } from './utils'\n\nexport type ItemsListSchema = 'items-list'\n\nexport function getItemsListSpec(): SchemaSpec {\n\treturn {\n\t\tnodes: reduceNodes({\n\t\t\tdoc: {\n\t\t\t\tcontent: 'item*',\n\t\t\t},\n\n\t\t\titem: {\n\t\t\t\tcontent: 'inline*',\n\t\t\t\tgroup: 'block',\n\t\t\t\tattrs: { id: { default: undefined } },\n\t\t\t\tparseDOM: [{ tag: 'li' }],\n\t\t\t\ttoDOM() {\n\t\t\t\t\treturn ['li', 0]\n\t\t\t\t},\n\t\t\t},\n\n\t\t\ttext: {\n\t\t\t\tgroup: 'inline',\n\t\t\t},\n\t\t}),\n\t\tmarks: {},\n\t}\n}\n"]}
@@ -1,9 +1,6 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getMarkdownSpec = void 0;
4
- const utils_1 = require("./utils");
5
- const common_marks_1 = require("./common-marks");
6
- function getMarkdownSpec(type, contentProvider, colorProvider) {
1
+ import { reduceMarks, reduceNodes } from './utils';
2
+ import { getMarks } from './common-marks';
3
+ export function getMarkdownSpec(type, contentProvider, colorProvider) {
7
4
  const nodesSelector = (key, spec) => {
8
5
  // noinspection RedundantConditionalExpressionJS
9
6
  return key === 'paragraph' ? true : (spec.group === 'block' || ['doc', 'list_item', 'hardbreak', 'image'].includes(key)) && type !== 'text-document' ? false : true;
@@ -18,7 +15,7 @@ function getMarkdownSpec(type, contentProvider, colorProvider) {
18
15
  };
19
16
  return {
20
17
  topNode: type === 'text-document' ? 'doc' : 'paragraph',
21
- nodes: (0, utils_1.reduceNodes)({
18
+ nodes: reduceNodes({
22
19
  doc: {
23
20
  content: 'block+',
24
21
  },
@@ -166,8 +163,7 @@ function getMarkdownSpec(type, contentProvider, colorProvider) {
166
163
  },
167
164
  },
168
165
  }, nodesSelector),
169
- marks: (0, utils_1.reduceMarks)((0, common_marks_1.getMarks)(contentProvider, colorProvider), marksSelector),
166
+ marks: reduceMarks(getMarks(contentProvider, colorProvider), marksSelector),
170
167
  };
171
168
  }
172
- exports.getMarkdownSpec = getMarkdownSpec;
173
169
  //# sourceMappingURL=markdown-schema.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"markdown-schema.js","sourceRoot":"","sources":["../../../../tmp/components/icure-text-field/schema/markdown-schema.ts"],"names":[],"mappings":"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","sourcesContent":["import { MarkSpec, NodeSpec, SchemaSpec } from 'prosemirror-model'\nimport { reduceMarks, reduceNodes } from './utils'\nimport { getMarks } from './common-marks'\n\nexport type DocumentSchema = 'text-document'\nexport type InlineSchema = 'styled-text' | 'text' | 'text-with-codes' | 'styled-text-with-codes'\nexport type StyledSchema = 'text-document' | 'styled-text' | 'styled-text-with-codes'\n\nexport function getMarkdownSpec(\n\ttype: DocumentSchema | InlineSchema,\n\tcontentProvider: (codes: { type: string; code: string }[]) => string,\n\tcolorProvider: (type: string, code: string, isCode: boolean) => string,\n): SchemaSpec {\n\tconst nodesSelector: (key: string, spec: NodeSpec) => boolean = (key: string, spec: NodeSpec) => {\n\t\t// noinspection RedundantConditionalExpressionJS\n\t\treturn key === 'paragraph' ? true : (spec.group === 'block' || ['doc', 'list_item', 'hardbreak', 'image'].includes(key)) && type !== 'text-document' ? false : true\n\t}\n\tconst marksSelector: (key: string, spec: MarkSpec) => boolean = (key: string) => {\n\t\t// noinspection RedundantConditionalExpressionJS\n\t\treturn key !== 'link' && ['text-document', 'styled-text', 'styled-text-with-codes'].includes(type)\n\t\t\t? true\n\t\t\t: key === 'link' && ['text-document', 'text-with-codes', 'styled-text-with-codes']\n\t\t\t? true\n\t\t\t: false\n\t}\n\n\treturn {\n\t\ttopNode: type === 'text-document' ? 'doc' : 'paragraph',\n\t\tnodes: reduceNodes(\n\t\t\t{\n\t\t\t\tdoc: {\n\t\t\t\t\tcontent: 'block+',\n\t\t\t\t},\n\n\t\t\t\tparagraph: {\n\t\t\t\t\tcontent: 'inline*',\n\t\t\t\t\tgroup: 'block',\n\t\t\t\t\tparseDOM: [{ tag: 'p' }],\n\t\t\t\t\ttoDOM() {\n\t\t\t\t\t\treturn ['p', 0]\n\t\t\t\t\t},\n\t\t\t\t},\n\n\t\t\t\tblockquote: {\n\t\t\t\t\tcontent: 'block+',\n\t\t\t\t\tgroup: 'block',\n\t\t\t\t\tparseDOM: [{ tag: 'blockquote' }],\n\t\t\t\t\ttoDOM() {\n\t\t\t\t\t\treturn ['blockquote', 0]\n\t\t\t\t\t},\n\t\t\t\t},\n\n\t\t\t\thorizontal_rule: {\n\t\t\t\t\tgroup: 'block',\n\t\t\t\t\tparseDOM: [{ tag: 'hr' }],\n\t\t\t\t\ttoDOM() {\n\t\t\t\t\t\treturn ['div', ['hr']]\n\t\t\t\t\t},\n\t\t\t\t},\n\n\t\t\t\theading: {\n\t\t\t\t\tattrs: { level: { default: 1 } },\n\t\t\t\t\tcontent: '(text | image)*',\n\t\t\t\t\tgroup: 'block',\n\t\t\t\t\tdefining: true,\n\t\t\t\t\tparseDOM: [\n\t\t\t\t\t\t{ tag: 'h1', attrs: { level: 1 } },\n\t\t\t\t\t\t{ tag: 'h2', attrs: { level: 2 } },\n\t\t\t\t\t\t{ tag: 'h3', attrs: { level: 3 } },\n\t\t\t\t\t\t{ tag: 'h4', attrs: { level: 4 } },\n\t\t\t\t\t\t{ tag: 'h5', attrs: { level: 5 } },\n\t\t\t\t\t\t{ tag: 'h6', attrs: { level: 6 } },\n\t\t\t\t\t],\n\t\t\t\t\ttoDOM(node) {\n\t\t\t\t\t\treturn ['h' + node.attrs.level, 0]\n\t\t\t\t\t},\n\t\t\t\t},\n\n\t\t\t\tordered_list: {\n\t\t\t\t\tcontent: 'list_item+',\n\t\t\t\t\tgroup: 'block',\n\t\t\t\t\tattrs: { order: { default: 1 }, tight: { default: false } },\n\t\t\t\t\tparseDOM: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\ttag: 'ol',\n\t\t\t\t\t\t\tgetAttrs(dom) {\n\t\t\t\t\t\t\t\tconst el = dom as Element\n\t\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\t\torder: el.hasAttribute('start') ? +(el.getAttribute('start') || 0) : 1,\n\t\t\t\t\t\t\t\t\ttight: el.hasAttribute('data-tight'),\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t\ttoDOM(node) {\n\t\t\t\t\t\treturn [\n\t\t\t\t\t\t\t'ol',\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tstart: node.attrs.order === 1 ? null : node.attrs.order,\n\t\t\t\t\t\t\t\t'data-tight': node.attrs.tight ? 'true' : null,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t0,\n\t\t\t\t\t\t]\n\t\t\t\t\t},\n\t\t\t\t},\n\n\t\t\t\tbullet_list: {\n\t\t\t\t\tcontent: 'list_item+',\n\t\t\t\t\tgroup: 'block',\n\t\t\t\t\tattrs: { tight: { default: false } },\n\t\t\t\t\tparseDOM: [{ tag: 'ul', getAttrs: (dom) => ({ tight: (dom as Element).hasAttribute('data-tight') }) }],\n\t\t\t\t\ttoDOM(node) {\n\t\t\t\t\t\treturn ['ul', { 'data-tight': node.attrs.tight ? 'true' : null }, 0]\n\t\t\t\t\t},\n\t\t\t\t},\n\n\t\t\t\tlist_item: {\n\t\t\t\t\tcontent: 'paragraph block*',\n\t\t\t\t\tdefining: true,\n\t\t\t\t\tparseDOM: [{ tag: 'li' }],\n\t\t\t\t\ttoDOM() {\n\t\t\t\t\t\treturn ['li', 0]\n\t\t\t\t\t},\n\t\t\t\t},\n\n\t\t\t\ttext: {\n\t\t\t\t\tgroup: 'inline',\n\t\t\t\t},\n\n\t\t\t\timage: {\n\t\t\t\t\tinline: true,\n\t\t\t\t\tattrs: {\n\t\t\t\t\t\tsrc: {},\n\t\t\t\t\t\talt: { default: null },\n\t\t\t\t\t\ttitle: { default: null },\n\t\t\t\t\t},\n\t\t\t\t\tgroup: 'inline',\n\t\t\t\t\tdraggable: true,\n\t\t\t\t\tparseDOM: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\ttag: 'img[src]',\n\t\t\t\t\t\t\tgetAttrs(dom) {\n\t\t\t\t\t\t\t\tconst el = dom as Element\n\t\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\t\tsrc: el.getAttribute('src'),\n\t\t\t\t\t\t\t\t\ttitle: el.getAttribute('title'),\n\t\t\t\t\t\t\t\t\talt: el.getAttribute('alt'),\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t\ttoDOM(node) {\n\t\t\t\t\t\treturn ['img', node.attrs]\n\t\t\t\t\t},\n\t\t\t\t},\n\n\t\t\t\tmeasure: {\n\t\t\t\t\tcontent: 'decimal unit',\n\t\t\t\t\tgroup: 'block',\n\t\t\t\t},\n\n\t\t\t\tdecimal: {\n\t\t\t\t\tcontent: 'inline*',\n\t\t\t\t\tgroup: 'block',\n\t\t\t\t\tparseDOM: [{ tag: 'span' }],\n\t\t\t\t\ttoDOM() {\n\t\t\t\t\t\treturn ['span', { class: 'measure' }, 0]\n\t\t\t\t\t},\n\t\t\t\t\tregexp: '[,.0-9-]',\n\t\t\t\t},\n\n\t\t\t\tunit: {\n\t\t\t\t\tcontent: 'inline*',\n\t\t\t\t\tgroup: 'block',\n\t\t\t\t\tparseDOM: [{ tag: 'span' }],\n\t\t\t\t\ttoDOM() {\n\t\t\t\t\t\treturn ['span', { class: 'unit' }, 0]\n\t\t\t\t\t},\n\t\t\t\t},\n\n\t\t\t\thardbreak: {\n\t\t\t\t\tinline: true,\n\t\t\t\t\tgroup: 'inline',\n\t\t\t\t\tselectable: false,\n\t\t\t\t\tparseDOM: [{ tag: 'br' }],\n\t\t\t\t\ttoDOM() {\n\t\t\t\t\t\treturn ['br']\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tnodesSelector,\n\t\t),\n\t\tmarks: reduceMarks(getMarks(contentProvider, colorProvider), marksSelector),\n\t}\n}\n"]}
1
+ {"version":3,"file":"markdown-schema.js","sourceRoot":"","sources":["../../../../tmp/components/icure-text-field/schema/markdown-schema.ts"],"names":[],"mappings":"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","sourcesContent":["import { MarkSpec, NodeSpec, SchemaSpec } from 'prosemirror-model'\nimport { reduceMarks, reduceNodes } from './utils'\nimport { getMarks } from './common-marks'\n\nexport type DocumentSchema = 'text-document'\nexport type InlineSchema = 'styled-text' | 'text' | 'text-with-codes' | 'styled-text-with-codes'\nexport type StyledSchema = 'text-document' | 'styled-text' | 'styled-text-with-codes'\n\nexport function getMarkdownSpec(\n\ttype: DocumentSchema | InlineSchema,\n\tcontentProvider: (codes: { type: string; code: string }[]) => string,\n\tcolorProvider: (type: string, code: string, isCode: boolean) => string,\n): SchemaSpec {\n\tconst nodesSelector: (key: string, spec: NodeSpec) => boolean = (key: string, spec: NodeSpec) => {\n\t\t// noinspection RedundantConditionalExpressionJS\n\t\treturn key === 'paragraph' ? true : (spec.group === 'block' || ['doc', 'list_item', 'hardbreak', 'image'].includes(key)) && type !== 'text-document' ? false : true\n\t}\n\tconst marksSelector: (key: string, spec: MarkSpec) => boolean = (key: string) => {\n\t\t// noinspection RedundantConditionalExpressionJS\n\t\treturn key !== 'link' && ['text-document', 'styled-text', 'styled-text-with-codes'].includes(type)\n\t\t\t? true\n\t\t\t: key === 'link' && ['text-document', 'text-with-codes', 'styled-text-with-codes']\n\t\t\t? true\n\t\t\t: false\n\t}\n\n\treturn {\n\t\ttopNode: type === 'text-document' ? 'doc' : 'paragraph',\n\t\tnodes: reduceNodes(\n\t\t\t{\n\t\t\t\tdoc: {\n\t\t\t\t\tcontent: 'block+',\n\t\t\t\t},\n\n\t\t\t\tparagraph: {\n\t\t\t\t\tcontent: 'inline*',\n\t\t\t\t\tgroup: 'block',\n\t\t\t\t\tparseDOM: [{ tag: 'p' }],\n\t\t\t\t\ttoDOM() {\n\t\t\t\t\t\treturn ['p', 0]\n\t\t\t\t\t},\n\t\t\t\t},\n\n\t\t\t\tblockquote: {\n\t\t\t\t\tcontent: 'block+',\n\t\t\t\t\tgroup: 'block',\n\t\t\t\t\tparseDOM: [{ tag: 'blockquote' }],\n\t\t\t\t\ttoDOM() {\n\t\t\t\t\t\treturn ['blockquote', 0]\n\t\t\t\t\t},\n\t\t\t\t},\n\n\t\t\t\thorizontal_rule: {\n\t\t\t\t\tgroup: 'block',\n\t\t\t\t\tparseDOM: [{ tag: 'hr' }],\n\t\t\t\t\ttoDOM() {\n\t\t\t\t\t\treturn ['div', ['hr']]\n\t\t\t\t\t},\n\t\t\t\t},\n\n\t\t\t\theading: {\n\t\t\t\t\tattrs: { level: { default: 1 } },\n\t\t\t\t\tcontent: '(text | image)*',\n\t\t\t\t\tgroup: 'block',\n\t\t\t\t\tdefining: true,\n\t\t\t\t\tparseDOM: [\n\t\t\t\t\t\t{ tag: 'h1', attrs: { level: 1 } },\n\t\t\t\t\t\t{ tag: 'h2', attrs: { level: 2 } },\n\t\t\t\t\t\t{ tag: 'h3', attrs: { level: 3 } },\n\t\t\t\t\t\t{ tag: 'h4', attrs: { level: 4 } },\n\t\t\t\t\t\t{ tag: 'h5', attrs: { level: 5 } },\n\t\t\t\t\t\t{ tag: 'h6', attrs: { level: 6 } },\n\t\t\t\t\t],\n\t\t\t\t\ttoDOM(node) {\n\t\t\t\t\t\treturn ['h' + node.attrs.level, 0]\n\t\t\t\t\t},\n\t\t\t\t},\n\n\t\t\t\tordered_list: {\n\t\t\t\t\tcontent: 'list_item+',\n\t\t\t\t\tgroup: 'block',\n\t\t\t\t\tattrs: { order: { default: 1 }, tight: { default: false } },\n\t\t\t\t\tparseDOM: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\ttag: 'ol',\n\t\t\t\t\t\t\tgetAttrs(dom) {\n\t\t\t\t\t\t\t\tconst el = dom as Element\n\t\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\t\torder: el.hasAttribute('start') ? +(el.getAttribute('start') || 0) : 1,\n\t\t\t\t\t\t\t\t\ttight: el.hasAttribute('data-tight'),\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t\ttoDOM(node) {\n\t\t\t\t\t\treturn [\n\t\t\t\t\t\t\t'ol',\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tstart: node.attrs.order === 1 ? null : node.attrs.order,\n\t\t\t\t\t\t\t\t'data-tight': node.attrs.tight ? 'true' : null,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t0,\n\t\t\t\t\t\t]\n\t\t\t\t\t},\n\t\t\t\t},\n\n\t\t\t\tbullet_list: {\n\t\t\t\t\tcontent: 'list_item+',\n\t\t\t\t\tgroup: 'block',\n\t\t\t\t\tattrs: { tight: { default: false } },\n\t\t\t\t\tparseDOM: [{ tag: 'ul', getAttrs: (dom) => ({ tight: (dom as Element).hasAttribute('data-tight') }) }],\n\t\t\t\t\ttoDOM(node) {\n\t\t\t\t\t\treturn ['ul', { 'data-tight': node.attrs.tight ? 'true' : null }, 0]\n\t\t\t\t\t},\n\t\t\t\t},\n\n\t\t\t\tlist_item: {\n\t\t\t\t\tcontent: 'paragraph block*',\n\t\t\t\t\tdefining: true,\n\t\t\t\t\tparseDOM: [{ tag: 'li' }],\n\t\t\t\t\ttoDOM() {\n\t\t\t\t\t\treturn ['li', 0]\n\t\t\t\t\t},\n\t\t\t\t},\n\n\t\t\t\ttext: {\n\t\t\t\t\tgroup: 'inline',\n\t\t\t\t},\n\n\t\t\t\timage: {\n\t\t\t\t\tinline: true,\n\t\t\t\t\tattrs: {\n\t\t\t\t\t\tsrc: {},\n\t\t\t\t\t\talt: { default: null },\n\t\t\t\t\t\ttitle: { default: null },\n\t\t\t\t\t},\n\t\t\t\t\tgroup: 'inline',\n\t\t\t\t\tdraggable: true,\n\t\t\t\t\tparseDOM: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\ttag: 'img[src]',\n\t\t\t\t\t\t\tgetAttrs(dom) {\n\t\t\t\t\t\t\t\tconst el = dom as Element\n\t\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\t\tsrc: el.getAttribute('src'),\n\t\t\t\t\t\t\t\t\ttitle: el.getAttribute('title'),\n\t\t\t\t\t\t\t\t\talt: el.getAttribute('alt'),\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t\ttoDOM(node) {\n\t\t\t\t\t\treturn ['img', node.attrs]\n\t\t\t\t\t},\n\t\t\t\t},\n\n\t\t\t\tmeasure: {\n\t\t\t\t\tcontent: 'decimal unit',\n\t\t\t\t\tgroup: 'block',\n\t\t\t\t},\n\n\t\t\t\tdecimal: {\n\t\t\t\t\tcontent: 'inline*',\n\t\t\t\t\tgroup: 'block',\n\t\t\t\t\tparseDOM: [{ tag: 'span' }],\n\t\t\t\t\ttoDOM() {\n\t\t\t\t\t\treturn ['span', { class: 'measure' }, 0]\n\t\t\t\t\t},\n\t\t\t\t\tregexp: '[,.0-9-]',\n\t\t\t\t},\n\n\t\t\t\tunit: {\n\t\t\t\t\tcontent: 'inline*',\n\t\t\t\t\tgroup: 'block',\n\t\t\t\t\tparseDOM: [{ tag: 'span' }],\n\t\t\t\t\ttoDOM() {\n\t\t\t\t\t\treturn ['span', { class: 'unit' }, 0]\n\t\t\t\t\t},\n\t\t\t\t},\n\n\t\t\t\thardbreak: {\n\t\t\t\t\tinline: true,\n\t\t\t\t\tgroup: 'inline',\n\t\t\t\t\tselectable: false,\n\t\t\t\t\tparseDOM: [{ tag: 'br' }],\n\t\t\t\t\ttoDOM() {\n\t\t\t\t\t\treturn ['br']\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tnodesSelector,\n\t\t),\n\t\tmarks: reduceMarks(getMarks(contentProvider, colorProvider), marksSelector),\n\t}\n}\n"]}