@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.
- package/.yarn/cache/@icure-cardinal-sdk-npm-1.3.0-ts-2-d77151b3e6-86e1497829.zip +0 -0
- 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
- package/.yarn/cache/@js-joda-core-npm-3.2.0-d2526290e9-64625c2f22.zip +0 -0
- package/.yarn/cache/@types-linkify-it-npm-5.0.0-576a16b976-ec98e03aa8.zip +0 -0
- package/.yarn/cache/@types-markdown-it-npm-14.1.2-d0c4e12c49-ad66e0b377.zip +0 -0
- package/.yarn/cache/@types-mdurl-npm-2.0.0-2f4116c0b0-78746e96c6.zip +0 -0
- package/.yarn/cache/format-util-npm-1.0.5-a524ca953a-0c8622e54a.zip +0 -0
- package/.yarn/cache/prosemirror-commands-npm-1.7.0-212f35173c-a39225d534.zip +0 -0
- package/.yarn/cache/prosemirror-history-npm-1.4.1-ad68c86bb7-90f9bf59bc.zip +0 -0
- package/.yarn/cache/prosemirror-markdown-npm-1.13.1-4de28fccea-fb5487760e.zip +0 -0
- package/.yarn/cache/prosemirror-schema-basic-npm-1.2.3-a144a1b06d-49711ec1ee.zip +0 -0
- package/.yarn/cache/prosemirror-schema-list-npm-1.5.1-7b138c5fed-6c7041e5b8.zip +0 -0
- package/.yarn/cache/prosemirror-transform-npm-1.10.3-fb23bef7a8-8cbe29501e.zip +0 -0
- package/.yarn/cache/prosemirror-view-npm-1.38.1-8cfb4ec84f-12f7f4d27f.zip +0 -0
- package/.yarn/cache/ws-npm-8.18.0-56f68bc4d6-91d4d35bc9.zip +0 -0
- package/.yarn/install-state.gz +0 -0
- package/components/common/field-with-options.js +4 -9
- package/components/common/field-with-options.js.map +1 -1
- package/components/common/field.js +21 -25
- package/components/common/field.js.map +1 -1
- package/components/common/index.js +1 -17
- package/components/common/index.js.map +1 -1
- package/components/common/metadata-buttons-bar.js +58 -62
- package/components/common/metadata-buttons-bar.js.map +1 -1
- package/components/common/styles/paths.js +10 -13
- package/components/common/styles/paths.js.map +1 -1
- package/components/common/utils.js +10 -20
- package/components/common/utils.js.map +1 -1
- package/components/icure-button/index.js +20 -24
- package/components/icure-button/index.js.map +1 -1
- package/components/icure-button-group/index.js +27 -31
- package/components/icure-button-group/index.js.map +1 -1
- package/components/icure-date-picker/index.js +32 -36
- package/components/icure-date-picker/index.js.map +1 -1
- package/components/icure-dropdown-field/index.js +26 -30
- package/components/icure-dropdown-field/index.js.map +1 -1
- package/components/icure-form/fields/button/button.js +13 -17
- package/components/icure-form/fields/button/button.js.map +1 -1
- package/components/icure-form/fields/button/index.js +1 -17
- package/components/icure-form/fields/button/index.js.map +1 -1
- package/components/icure-form/fields/button-group/checkbox.js +10 -14
- package/components/icure-form/fields/button-group/checkbox.js.map +1 -1
- package/components/icure-form/fields/button-group/index.js +2 -18
- package/components/icure-form/fields/button-group/index.js.map +1 -1
- package/components/icure-form/fields/button-group/radio-button.js +10 -14
- package/components/icure-form/fields/button-group/radio-button.js.map +1 -1
- package/components/icure-form/fields/date-picker/date-picker.js +8 -12
- package/components/icure-form/fields/date-picker/date-picker.js.map +1 -1
- package/components/icure-form/fields/date-picker/date-time-picker.js +8 -12
- package/components/icure-form/fields/date-picker/date-time-picker.js.map +1 -1
- package/components/icure-form/fields/date-picker/index.js +3 -19
- package/components/icure-form/fields/date-picker/index.js.map +1 -1
- package/components/icure-form/fields/date-picker/time-picker.js +8 -12
- package/components/icure-form/fields/date-picker/time-picker.js.map +1 -1
- package/components/icure-form/fields/dropdown/dropdown-field.js +10 -14
- package/components/icure-form/fields/dropdown/dropdown-field.js.map +1 -1
- package/components/icure-form/fields/dropdown/index.js +1 -17
- package/components/icure-form/fields/dropdown/index.js.map +1 -1
- package/components/icure-form/fields/index.js +10 -26
- package/components/icure-form/fields/index.js.map +1 -1
- package/components/icure-form/fields/items-list-field/index.js +1 -17
- package/components/icure-form/fields/items-list-field/index.js.map +1 -1
- package/components/icure-form/fields/items-list-field/items-list-field.js +7 -11
- package/components/icure-form/fields/items-list-field/items-list-field.js.map +1 -1
- package/components/icure-form/fields/label/index.js +1 -17
- package/components/icure-form/fields/label/index.js.map +1 -1
- package/components/icure-form/fields/label/label.js +11 -15
- package/components/icure-form/fields/label/label.js.map +1 -1
- package/components/icure-form/fields/measure-field/index.js +1 -17
- package/components/icure-form/fields/measure-field/index.js.map +1 -1
- package/components/icure-form/fields/measure-field/measure-field.js +8 -12
- package/components/icure-form/fields/measure-field/measure-field.js.map +1 -1
- package/components/icure-form/fields/number-field/index.js +1 -17
- package/components/icure-form/fields/number-field/index.js.map +1 -1
- package/components/icure-form/fields/number-field/number-field.js +8 -12
- package/components/icure-form/fields/number-field/number-field.js.map +1 -1
- package/components/icure-form/fields/text-field/index.js +1 -17
- package/components/icure-form/fields/text-field/index.js.map +1 -1
- package/components/icure-form/fields/text-field/text-field.js +20 -24
- package/components/icure-form/fields/text-field/text-field.js.map +1 -1
- package/components/icure-form/fields/token-field/index.js +1 -17
- package/components/icure-form/fields/token-field/index.js.map +1 -1
- package/components/icure-form/fields/token-field/token-field.js +8 -12
- package/components/icure-form/fields/token-field/token-field.js.map +1 -1
- package/components/icure-form/fields/utils/index.js +5 -13
- package/components/icure-form/fields/utils/index.js.map +1 -1
- package/components/icure-form/index.js +33 -37
- package/components/icure-form/index.js.map +1 -1
- package/components/icure-form/renderer/form/form-selection-button.js +20 -24
- package/components/icure-form/renderer/form/form-selection-button.js.map +1 -1
- package/components/icure-form/renderer/form/form.js +123 -127
- package/components/icure-form/renderer/form/form.js.map +1 -1
- package/components/icure-form/renderer/index.js +1 -2
- package/components/icure-label/index.js +18 -22
- package/components/icure-label/index.js.map +1 -1
- package/components/icure-text-field/index.js +103 -111
- package/components/icure-text-field/index.js.map +1 -1
- package/components/icure-text-field/plugin/caret-fix-plugin.js +3 -7
- package/components/icure-text-field/plugin/caret-fix-plugin.js.map +1 -1
- package/components/icure-text-field/plugin/has-content-class-plugin.js +3 -7
- package/components/icure-text-field/plugin/has-content-class-plugin.js.map +1 -1
- package/components/icure-text-field/plugin/mask-plugin.js +7 -11
- package/components/icure-text-field/plugin/mask-plugin.js.map +1 -1
- package/components/icure-text-field/plugin/regexp-plugin.js +5 -9
- package/components/icure-text-field/plugin/regexp-plugin.js.map +1 -1
- package/components/icure-text-field/prosemirror-commands.js +10 -15
- package/components/icure-text-field/prosemirror-commands.js.map +1 -1
- package/components/icure-text-field/prosemirror-utils.js +1 -5
- package/components/icure-text-field/prosemirror-utils.js.map +1 -1
- package/components/icure-text-field/schema/common-marks.js +3 -7
- package/components/icure-text-field/schema/common-marks.js.map +1 -1
- package/components/icure-text-field/schema/date-time-schema.js +3 -9
- package/components/icure-text-field/schema/date-time-schema.js.map +1 -1
- package/components/icure-text-field/schema/decimal-schema.js +1 -5
- package/components/icure-text-field/schema/decimal-schema.js.map +1 -1
- package/components/icure-text-field/schema/index.js +17 -21
- package/components/icure-text-field/schema/index.js.map +1 -1
- package/components/icure-text-field/schema/items-list-schema.js +3 -7
- package/components/icure-text-field/schema/items-list-schema.js.map +1 -1
- package/components/icure-text-field/schema/markdown-schema.js +5 -9
- package/components/icure-text-field/schema/markdown-schema.js.map +1 -1
- package/components/icure-text-field/schema/measure-schema.js +6 -12
- package/components/icure-text-field/schema/measure-schema.js.map +1 -1
- package/components/icure-text-field/schema/token-schema.js +5 -9
- package/components/icure-text-field/schema/token-schema.js.map +1 -1
- package/components/icure-text-field/schema/utils.js +2 -7
- package/components/icure-text-field/schema/utils.js.map +1 -1
- package/components/icure-text-field/selection-companion.js +1 -5
- package/components/icure-text-field/selection-companion.js.map +1 -1
- package/components/icure-text-field/suggestion-palette.js +3 -10
- package/components/icure-text-field/suggestion-palette.js.map +1 -1
- package/components/index.js +5 -21
- package/components/index.js.map +1 -1
- package/components/model/index.js +22 -46
- package/components/model/index.js.map +1 -1
- package/components/themes/default/index.js +30 -32
- package/components/themes/default/index.js.map +1 -1
- package/components/themes/icure-blue/index.js +47 -49
- package/components/themes/icure-blue/index.js.map +1 -1
- package/components/themes/kendo/index.js +49 -51
- package/components/themes/kendo/index.js.map +1 -1
- package/conversion/ckmeans-grouping.js +3 -10
- package/conversion/ckmeans-grouping.js.map +1 -1
- package/conversion/ckmeans.js +1 -3
- package/conversion/ckmeans.js.map +1 -1
- package/generic/index.js +1 -17
- package/generic/index.js.map +1 -1
- package/generic/model.js +1 -2
- package/icure/form-values-container.d.ts +1 -2
- package/icure/form-values-container.js +33 -38
- package/icure/form-values-container.js.map +1 -1
- package/icure/icure-utils.js +14 -25
- package/icure/icure-utils.js.map +1 -1
- package/icure/index.js +2 -18
- package/icure/index.js.map +1 -1
- package/icure/model.js +1 -2
- package/index.js +1 -17
- package/index.js.map +1 -1
- package/package.json +14 -13
- package/utils/code-utils.js +13 -22
- package/utils/code-utils.js.map +1 -1
- package/utils/dates.js +9 -21
- package/utils/dates.js.map +1 -1
- package/utils/fields-values-provider.js +8 -17
- package/utils/fields-values-provider.js.map +1 -1
- package/utils/form-value-container.js +3 -7
- package/utils/form-value-container.js.map +1 -1
- package/utils/interpreter.d.ts +1 -2
- package/utils/interpreter.js +1 -5
- package/utils/interpreter.js.map +1 -1
- package/utils/languages.js +3 -8
- package/utils/languages.js.map +1 -1
- package/utils/markdown.js +6 -11
- package/utils/markdown.js.map +1 -1
- package/utils/no-lodash.js +3 -9
- package/utils/no-lodash.js.map +1 -1
- package/utils/primitive.js +7 -12
- package/utils/primitive.js.map +1 -1
- package/.yarn/cache/prosemirror-commands-npm-1.5.2-27f8f3fee9-ff65063a8c.zip +0 -0
- package/.yarn/cache/prosemirror-history-npm-1.3.2-cc128c8ee6-b85fe6378a.zip +0 -0
- package/.yarn/cache/prosemirror-markdown-npm-1.12.0-28e990f443-d7607ee1a6.zip +0 -0
- package/.yarn/cache/prosemirror-model-npm-1.19.4-4fd32211c8-12c277ed30.zip +0 -0
- package/.yarn/cache/prosemirror-schema-basic-npm-1.2.2-def7bf2ec7-1f93f8678c.zip +0 -0
- package/.yarn/cache/prosemirror-schema-list-npm-1.3.0-23c1830a7e-03654e37c8.zip +0 -0
- package/.yarn/cache/prosemirror-transform-npm-1.10.2-1c2da9123e-93b0c03aff.zip +0 -0
- package/.yarn/cache/prosemirror-transform-npm-1.8.0-ea3ca0411f-6d16ca4f95.zip +0 -0
- package/.yarn/cache/prosemirror-view-npm-1.32.7-63c3e4b182-40c9038a52.zip +0 -0
- 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":"AAAA,OAAO,EAAe,MAAM,EAAE,aAAa,EAAe,MAAM,mBAAmB,CAAA;AAEnF,OAAO,EAAE,UAAU,EAAE,aAAa,EAAc,MAAM,kBAAkB,CAAA;AAExE,MAAM,CAAC,MAAM,UAAU,GAAG;IACzB,MAAM,QAAQ,GAAG,CAAC,IAAiB,EAAE,IAAY,EAAE,IAAY,EAAE,EAAe,EAAE,YAAY,GAAG,IAAI,EAAE,EAAE;QACxG,MAAM,iBAAiB,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,EAAE,IAAI,CAAC,YAAY,CAAC,GAAG,IAAI,CAAA;QAC9E,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QAEzF,IAAI,CAAC,GAAG,iBAAiB,CAAA;QACzB,IAAI,IAAI,GAAG,CAAC,CAAA;QACZ,IAAI,SAAS,GAAG,KAAK,CAAA;QAErB,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACpB,CAAC,IAAI,YAAY,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,CAAA;YAC/C,SAAS,GAAG,IAAI,CAAA;QACjB,CAAC;QAED,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACtD,IACC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG;gBACf,CAAC,CAAC,CAAC,CAAC;qBACF,SAAS,CAAC,KAAK,CAAC;qBAChB,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC;qBAC/B,KAAK,CAAC,MAAM,CAAC,CAAC;gBACjB,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,EACpC,CAAC;gBACF,MAAM;YACP,CAAC;iBAAM,CAAC;gBACP,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;oBACtB,MAAM;gBACP,CAAC;qBAAM,CAAC;oBACP,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;oBAChD,IAAI,CAAC,SAAS;wBAAE,IAAI,EAAE,CAAA;gBACvB,CAAC;YACF,CAAC;YACD,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;gBACtC,CAAC,IAAI,YAAY,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,CAAA;gBAC/C,SAAS,GAAG,IAAI,CAAA;YACjB,CAAC;QACF,CAAC;QAED,MAAM,IAAI,GAAG,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;QACnE,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;QAE/B,MAAM,KAAK,GAAG,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;QACpE,IAAI,CAAC,KAAK,iBAAiB,IAAI,KAAK,KAAK,YAAY,EAAE,CAAC;YACvD,OAAO,SAAS,CAAA;QACjB,CAAC;QAED,MAAM,UAAU,GAAG,EAAE,CAAC,SAAS,CAAA;QAE/B,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,CAAC,GAAG,KAAK,EAAE,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QACpH,IAAI,YAAY,EAAE,CAAC;YAClB,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,MAAM,GAAG,IAAI,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;QACrH,CAAC;aAAM,CAAC;YACP,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;QACvK,CAAC;QACD,EAAE,CAAC,OAAO,CAAC,UAAU,EAAE,IAAI,CAAC,CAAA;QAE5B,OAAO,EAAE,CAAA;IACV,CAAC,CAAA;IAED,SAAS,aAAa,CAAC,KAAkB;QACxC,IAAI,EAAE,GAAG,SAAS,CAAA;QAClB,IAAI,OAAO,GAAG,CAAC,CAAA;QACf,qCAAqC;QACrC,OAAO,CAAC,EAAE,IAAI,KAAK,CAAC,CAAC,GAAG,IAAI,OAAO,GAAG,CAAC,EAAE,IAAI,KAAK,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YACtE,MAAM,IAAI,GAAG,CAAC,EAAE,IAAI,KAAK,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;YAC/C,MAAM,IAAI,GAAqB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,SAAS,CAAA;YACjE,MAAM,IAAI,GAAuB,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAA;YACrD,IAAI,IAAI,EAAE,CAAC;gBACV,EAAE,GAAG,EAAE,IAAI,KAAK,CAAC,EAAE,CAAA;gBACnB,EAAE,GAAG,QAAQ,CAAC,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,CAAC,IAAI,EAAE,CAAA;gBACjE,MAAM,OAAO,GAAG,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;gBACvC,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;gBAC3C,IAAI,OAAO,EAAE,CAAC;oBACb,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,CAAA;gBACpC,CAAC;;oBAAM,OAAO,EAAE,CAAA;YACjB,CAAC;iBAAM,CAAC;gBACP,OAAO,EAAE,CAAA;YACV,CAAC;QACF,CAAC;QACD,OAAO,EAAE,CAAA;IACV,CAAC;IAED,OAAO,IAAI,MAAM,CAAC;QACjB,IAAI,EAAE,CAAC,CAAa,EAAE,EAAE;YACvB,MAAM,EAAE,GAAG,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;YACjC,IAAI,EAAE;gBAAE,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAA;YACxC,OAAO,EAAE,CAAA;QACV,CAAC;QACD,KAAK,EAAE;YACN,WAAW,CAAC,KAAK;gBAChB,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;gBACzF,IAAI,IAAI,GAAG,IAAI,CAAC,MAAM,CAAA;gBACtB,IAAI,KAAK,GAAG,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,YAAY,CAAA;gBAExC,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;oBACzB,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;wBAC1G,sBAAsB;wBACtB,OAAO,IAAI,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;4BAC9C,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,CAAA;4BACtC,IAAI,GAAG,IAAI,CAAC,MAAM,CAAA;4BAElB,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;gCACjC,KAAK,GAAG,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,YAAY,CAAA;gCACpC,MAAK;4BACN,CAAC;wBACF,CAAC;oBACF,CAAC;oBAED,OAAO,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,CAAA;gBACtH,CAAC;gBACD,OAAO,SAAS,CAAA;YACjB,CAAC;YACD,eAAe,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE;gBACzC,IAAI,IAAI,CAAC,SAAS;oBAAE,OAAO,KAAK,CAAA;gBAEhC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAA;gBACxB,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;gBACrC,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAA;gBACxC,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAA;gBAE5C,IAAI,CAAC,IAAI;oBAAE,OAAO,KAAK,CAAA;gBAEvB,MAAM,EAAE,GAAG,QAAQ,CAClB,KAAK,EACL,MAAM,IAAI,MAAM,CAAC,MAAM;oBACtB,CAAC,CAAC,IAAI;yBACH,KAAK,CAAC,EAAE,CAAC;yBACT,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;yBAC1C,IAAI,CAAC,EAAE,CAAC;oBACX,CAAC,CAAC,IAAI,EACP,IAAI,EACJ,KAAK,CAAC,EAAE,CACR,CAAA;gBACD,IAAI,EAAE,EAAE,CAAC;oBACR,MAAM,IAAI,GAAW,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;oBAC3C,IAAI,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,EAAE,CAAC;wBAClB,MAAM,OAAO,GAAG,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;wBACjH,IAAI,OAAO,EAAE,CAAC;4BACb,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;4BAC5C,IAAI,QAAQ,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;gCAC3E,QAAQ,CAAC,OAAO,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,CAAA;4BACrD,CAAC;iCAAM,IAAI,QAAQ,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,IAAI,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;gCAC5E,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,CAAA;4BAC9C,CAAC;wBACF,CAAC;oBACF,CAAC;oBACD,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;oBACjB,OAAO,IAAI,CAAA;gBACZ,CAAC;gBACD,OAAO,KAAK,CAAA;YACb,CAAC;SACD;QACD,iBAAiB,EAAE,CAAC,YAAoC,EAAE,QAAqB,EAAE,QAAqB,EAAE,EAAE;YACzG,OAAO,aAAa,CAAC,QAAQ,CAAC,CAAA;QAC/B,CAAC;KACD,CAAC,CAAA;AACH,CAAC,CAAA","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
|
-
|
|
2
|
-
|
|
3
|
-
|
|
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(
|
|
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(
|
|
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":"
|
|
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
|
-
|
|
2
|
-
|
|
3
|
-
|
|
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 =
|
|
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 &&
|
|
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 &&
|
|
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 =
|
|
43
|
+
const frag = Fragment.from($from.node());
|
|
48
44
|
if (dispatch)
|
|
49
|
-
dispatch(state.tr.replaceRange(gapStart, gapEnd, new
|
|
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":"
|
|
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
|
-
|
|
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":"
|
|
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
|
-
|
|
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) =>
|
|
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":"
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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":"
|
|
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
|
-
|
|
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":"
|
|
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
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
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
|
-
?
|
|
12
|
+
? getMeasureSpec()
|
|
16
13
|
: type === 'date'
|
|
17
|
-
?
|
|
14
|
+
? getDateSpec()
|
|
18
15
|
: type === 'time'
|
|
19
|
-
?
|
|
16
|
+
? getTimeSpec()
|
|
20
17
|
: type === 'date-time'
|
|
21
|
-
?
|
|
18
|
+
? getDateTimeSpec()
|
|
22
19
|
: type === 'items-list'
|
|
23
|
-
?
|
|
20
|
+
? getItemsListSpec()
|
|
24
21
|
: type === 'tokens-list' || type === 'styled-tokens-list' || type === 'tokens-list-with-codes' || type === 'styled-tokens-list-with-codes'
|
|
25
|
-
?
|
|
26
|
-
:
|
|
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":"
|
|
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
|
-
|
|
2
|
-
|
|
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:
|
|
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":"
|
|
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
|
-
|
|
2
|
-
|
|
3
|
-
|
|
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:
|
|
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:
|
|
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"]}
|