@expensify/react-native-live-markdown 0.1.143 → 0.1.145

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 (76) hide show
  1. package/lib/commonjs/MarkdownTextInput.web.js +3 -3
  2. package/lib/commonjs/MarkdownTextInput.web.js.map +1 -1
  3. package/lib/commonjs/MarkdownTextInputDecoratorViewNativeComponent.js.map +1 -1
  4. package/lib/commonjs/styleUtils.js +18 -1
  5. package/lib/commonjs/styleUtils.js.map +1 -1
  6. package/lib/commonjs/web/MarkdownTextInput.css +17 -0
  7. package/lib/commonjs/web/inputElements/inlineImage.js +104 -0
  8. package/lib/commonjs/web/inputElements/inlineImage.js.map +1 -0
  9. package/lib/commonjs/web/inputElements/loadingIndicator.js +52 -0
  10. package/lib/commonjs/web/inputElements/loadingIndicator.js.map +1 -0
  11. package/lib/commonjs/web/utils/animationUtils.js +55 -0
  12. package/lib/commonjs/web/utils/animationUtils.js.map +1 -0
  13. package/lib/commonjs/web/utils/blockUtils.js +32 -3
  14. package/lib/commonjs/web/utils/blockUtils.js.map +1 -1
  15. package/lib/commonjs/web/utils/inputUtils.js +12 -3
  16. package/lib/commonjs/web/utils/inputUtils.js.map +1 -1
  17. package/lib/commonjs/web/utils/parserUtils.js +25 -3
  18. package/lib/commonjs/web/utils/parserUtils.js.map +1 -1
  19. package/lib/commonjs/web/utils/treeUtils.js +1 -1
  20. package/lib/commonjs/web/utils/treeUtils.js.map +1 -1
  21. package/lib/module/MarkdownTextInput.web.js +3 -3
  22. package/lib/module/MarkdownTextInput.web.js.map +1 -1
  23. package/lib/module/MarkdownTextInputDecoratorViewNativeComponent.js.map +1 -1
  24. package/lib/module/styleUtils.js +18 -2
  25. package/lib/module/styleUtils.js.map +1 -1
  26. package/lib/module/web/MarkdownTextInput.css +17 -0
  27. package/lib/module/web/inputElements/inlineImage.js +99 -0
  28. package/lib/module/web/inputElements/inlineImage.js.map +1 -0
  29. package/lib/module/web/inputElements/loadingIndicator.js +47 -0
  30. package/lib/module/web/inputElements/loadingIndicator.js.map +1 -0
  31. package/lib/module/web/utils/animationUtils.js +49 -0
  32. package/lib/module/web/utils/animationUtils.js.map +1 -0
  33. package/lib/module/web/utils/blockUtils.js +30 -4
  34. package/lib/module/web/utils/blockUtils.js.map +1 -1
  35. package/lib/module/web/utils/inputUtils.js +12 -3
  36. package/lib/module/web/utils/inputUtils.js.map +1 -1
  37. package/lib/module/web/utils/parserUtils.js +26 -4
  38. package/lib/module/web/utils/parserUtils.js.map +1 -1
  39. package/lib/module/web/utils/treeUtils.js +1 -1
  40. package/lib/module/web/utils/treeUtils.js.map +1 -1
  41. package/lib/parser/react-native-live-markdown-parser.js +15 -15
  42. package/lib/typescript/src/MarkdownTextInput.web.d.ts.map +1 -1
  43. package/lib/typescript/src/MarkdownTextInputDecoratorViewNativeComponent.d.ts +21 -0
  44. package/lib/typescript/src/MarkdownTextInputDecoratorViewNativeComponent.d.ts.map +1 -1
  45. package/lib/typescript/src/commonTypes.d.ts +1 -1
  46. package/lib/typescript/src/commonTypes.d.ts.map +1 -1
  47. package/lib/typescript/src/styleUtils.d.ts +2 -1
  48. package/lib/typescript/src/styleUtils.d.ts.map +1 -1
  49. package/lib/typescript/src/web/inputElements/inlineImage.d.ts +8 -0
  50. package/lib/typescript/src/web/inputElements/inlineImage.d.ts.map +1 -0
  51. package/lib/typescript/src/web/inputElements/loadingIndicator.d.ts +5 -0
  52. package/lib/typescript/src/web/inputElements/loadingIndicator.d.ts.map +1 -0
  53. package/lib/typescript/src/web/utils/animationUtils.d.ts +12 -0
  54. package/lib/typescript/src/web/utils/animationUtils.d.ts.map +1 -0
  55. package/lib/typescript/src/web/utils/blockUtils.d.ts +7 -2
  56. package/lib/typescript/src/web/utils/blockUtils.d.ts.map +1 -1
  57. package/lib/typescript/src/web/utils/inputUtils.d.ts +1 -1
  58. package/lib/typescript/src/web/utils/inputUtils.d.ts.map +1 -1
  59. package/lib/typescript/src/web/utils/parserUtils.d.ts +2 -2
  60. package/lib/typescript/src/web/utils/parserUtils.d.ts.map +1 -1
  61. package/lib/typescript/src/web/utils/treeUtils.d.ts +1 -1
  62. package/lib/typescript/src/web/utils/treeUtils.d.ts.map +1 -1
  63. package/package.json +1 -1
  64. package/parser/react-native-live-markdown-parser.js +15 -15
  65. package/src/MarkdownTextInput.web.tsx +5 -3
  66. package/src/MarkdownTextInputDecoratorViewNativeComponent.ts +21 -0
  67. package/src/commonTypes.ts +15 -1
  68. package/src/styleUtils.ts +20 -2
  69. package/src/web/MarkdownTextInput.css +17 -0
  70. package/src/web/inputElements/inlineImage.ts +114 -0
  71. package/src/web/inputElements/loadingIndicator.ts +52 -0
  72. package/src/web/utils/animationUtils.ts +59 -0
  73. package/src/web/utils/blockUtils.ts +44 -3
  74. package/src/web/utils/inputUtils.ts +10 -3
  75. package/src/web/utils/parserUtils.ts +37 -3
  76. package/src/web/utils/treeUtils.ts +2 -2
@@ -94,13 +94,13 @@ const MarkdownTextInput = /*#__PURE__*/_react.default.forwardRef(({
94
94
  cursorPosition: null
95
95
  };
96
96
  }
97
- const parsedText = (0, _parserUtils.updateInputStructure)(target, text, cursorPosition, customMarkdownStyles, false, shouldForceDOMUpdate);
97
+ const parsedText = (0, _parserUtils.updateInputStructure)(target, text, cursorPosition, multiline, customMarkdownStyles, false, shouldForceDOMUpdate);
98
98
  divRef.current.value = parsedText.text;
99
99
  if (history.current && shouldAddToHistory) {
100
100
  history.current.throttledAdd(parsedText.text, parsedText.cursorPosition);
101
101
  }
102
102
  return parsedText;
103
- }, []);
103
+ }, [multiline]);
104
104
  const processedMarkdownStyle = (0, _react.useMemo)(() => {
105
105
  const newMarkdownStyle = (0, _webStyleUtils.processMarkdownStyle)(markdownStyle);
106
106
  if (divRef.current) {
@@ -202,7 +202,7 @@ const MarkdownTextInput = /*#__PURE__*/_react.default.forwardRef(({
202
202
  const inputType = nativeEvent.inputType;
203
203
  updateTextColor(divRef.current, e.target.textContent ?? '');
204
204
  const previousText = divRef.current.value;
205
- const parsedText = (0, _inputUtils.normalizeValue)(inputType === 'pasteText' ? pasteContent.current || '' : (0, _inputUtils.parseInnerHTMLToText)(e.target));
205
+ const parsedText = (0, _inputUtils.normalizeValue)(inputType === 'pasteText' ? pasteContent.current || '' : (0, _inputUtils.parseInnerHTMLToText)(e.target, inputType, contentSelection.current.start));
206
206
  if (pasteContent.current) {
207
207
  pasteContent.current = null;
208
208
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_parserUtils","_InputHistory","_interopRequireDefault","_cursorUtils","_inputUtils","_webStyleUtils","obj","__esModule","default","_getRequireWildcardCache","e","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","useClientEffect","window","useEffect","useLayoutEffect","focusTimeout","MarkdownTextInput","React","forwardRef","accessibilityLabel","accessibilityLabelledBy","accessibilityRole","autoCapitalize","autoCorrect","blurOnSubmit","clearTextOnFocus","dir","disabled","numberOfLines","multiline","markdownStyle","onBlur","onChange","onChangeText","onClick","onFocus","onKeyPress","onSelectionChange","onSubmitEditing","placeholder","placeholderTextColor","selectTextOnFocus","spellCheck","selection","style","value","autoFocus","onContentSizeChange","id","inputMode","ref","compositionRef","useRef","divRef","currentlyFocusedField","contentSelection","className","history","dimensions","pasteContent","current","InputHistory","flattenedStyle","useMemo","StyleSheet","flatten","heightSafePlaceholder","getPlaceholderValue","setEventProps","useCallback","text","target","nativeEvent","parseText","customMarkdownStyles","cursorPosition","shouldAddToHistory","shouldForceDOMUpdate","parsedText","updateInputStructure","throttledAdd","processedMarkdownStyle","newMarkdownStyle","processMarkdownStyle","inputStyles","styles","defaultInputStyles","caretColor","color","whiteSpace","disabledInputStyles","parseToReactDOMStyle","undo","item","undoValue","redo","redoValue","updateTextColor","node","String","handleSelectionChange","event","updateRefSelectionVariables","newSelection","start","end","updateSelection","predefinedSelection","getCurrentCursorPosition","handleContentSizeChange","_dimensions$current","offsetWidth","newWidth","offsetHeight","newHeight","height","width","contentSize","handleOnChangeText","HTMLElement","inputType","textContent","previousText","normalizeValue","parseInnerHTMLToText","prevSelection","newCursorPosition","Math","max","length","newInputUpdate","addedText","slice","count","prevSelectionRange","before","insertText","newText","substring","document","execCommand","handleKeyPress","hostNode","stopPropagation","key","ctrlKey","metaKey","preventDefault","shiftKey","blurOnSubmitDefault","shouldBlurOnSubmit","isComposing","isEventComposing","isDefaultPrevented","setTimeout","blur","handleFocus","setCursorPosition","valueLength","clearTimeout","handleBlur","removeSelection","handleClick","handleCopy","_divRef$current","clipboardData","setData","handleCut","handlePaste","getData","startComposition","endComposition","setRef","currentRef","isFocused","activeElement","clear","undefined","parseAndStyleValue","normalizedValue","adjustHeight","elementHeight","getElementHeight","maxHeight","focus","createElement","contentEditable","role","onKeyDown","onCompositionStart","onCompositionEnd","onInput","onCopy","onCut","onPaste","onSelect","create","borderColor","borderWidth","borderStyle","fontFamily","boxSizing","overflowY","overflowX","overflowWrap","opacity","cursor","_default","exports"],"sourceRoot":"../../src","sources":["MarkdownTextInput.web.tsx"],"mappings":"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"}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_parserUtils","_InputHistory","_interopRequireDefault","_cursorUtils","_inputUtils","_webStyleUtils","obj","__esModule","default","_getRequireWildcardCache","e","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","useClientEffect","window","useEffect","useLayoutEffect","focusTimeout","MarkdownTextInput","React","forwardRef","accessibilityLabel","accessibilityLabelledBy","accessibilityRole","autoCapitalize","autoCorrect","blurOnSubmit","clearTextOnFocus","dir","disabled","numberOfLines","multiline","markdownStyle","onBlur","onChange","onChangeText","onClick","onFocus","onKeyPress","onSelectionChange","onSubmitEditing","placeholder","placeholderTextColor","selectTextOnFocus","spellCheck","selection","style","value","autoFocus","onContentSizeChange","id","inputMode","ref","compositionRef","useRef","divRef","currentlyFocusedField","contentSelection","className","history","dimensions","pasteContent","current","InputHistory","flattenedStyle","useMemo","StyleSheet","flatten","heightSafePlaceholder","getPlaceholderValue","setEventProps","useCallback","text","target","nativeEvent","parseText","customMarkdownStyles","cursorPosition","shouldAddToHistory","shouldForceDOMUpdate","parsedText","updateInputStructure","throttledAdd","processedMarkdownStyle","newMarkdownStyle","processMarkdownStyle","inputStyles","styles","defaultInputStyles","caretColor","color","whiteSpace","disabledInputStyles","parseToReactDOMStyle","undo","item","undoValue","redo","redoValue","updateTextColor","node","String","handleSelectionChange","event","updateRefSelectionVariables","newSelection","start","end","updateSelection","predefinedSelection","getCurrentCursorPosition","handleContentSizeChange","_dimensions$current","offsetWidth","newWidth","offsetHeight","newHeight","height","width","contentSize","handleOnChangeText","HTMLElement","inputType","textContent","previousText","normalizeValue","parseInnerHTMLToText","prevSelection","newCursorPosition","Math","max","length","newInputUpdate","addedText","slice","count","prevSelectionRange","before","insertText","newText","substring","document","execCommand","handleKeyPress","hostNode","stopPropagation","key","ctrlKey","metaKey","preventDefault","shiftKey","blurOnSubmitDefault","shouldBlurOnSubmit","isComposing","isEventComposing","isDefaultPrevented","setTimeout","blur","handleFocus","setCursorPosition","valueLength","clearTimeout","handleBlur","removeSelection","handleClick","handleCopy","_divRef$current","clipboardData","setData","handleCut","handlePaste","getData","startComposition","endComposition","setRef","currentRef","isFocused","activeElement","clear","undefined","parseAndStyleValue","normalizedValue","adjustHeight","elementHeight","getElementHeight","maxHeight","focus","createElement","contentEditable","role","onKeyDown","onCompositionStart","onCompositionEnd","onInput","onCopy","onCut","onPaste","onSelect","create","borderColor","borderWidth","borderStyle","fontFamily","boxSizing","overflowY","overflowX","overflowWrap","opacity","cursor","_default","exports"],"sourceRoot":"../../src","sources":["MarkdownTextInput.web.tsx"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"names":["_codegenNativeComponent","_interopRequireDefault","require","obj","__esModule","default","_default","exports","codegenNativeComponent","interfaceOnly"],"sourceRoot":"../../src","sources":["MarkdownTextInputDecoratorViewNativeComponent.ts"],"mappings":";;;;;;AAGA,IAAAA,uBAAA,GAAAC,sBAAA,CAAAC,OAAA;AAA6F,SAAAD,uBAAAE,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAAA,IAAAG,QAAA,GAAAC,OAAA,CAAAF,OAAA,GAmD9E,IAAAG,+BAAsB,EAAc,gCAAgC,EAAE;EACnFC,aAAa,EAAE;AACjB,CAAC,CAAC"}
1
+ {"version":3,"names":["_codegenNativeComponent","_interopRequireDefault","require","obj","__esModule","default","_default","exports","codegenNativeComponent","interfaceOnly"],"sourceRoot":"../../src","sources":["MarkdownTextInputDecoratorViewNativeComponent.ts"],"mappings":";;;;;;AAGA,IAAAA,uBAAA,GAAAC,sBAAA,CAAAC,OAAA;AAA6F,SAAAD,uBAAAE,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAAA,IAAAG,QAAA,GAAAC,OAAA,CAAAF,OAAA,GAwE9E,IAAAG,+BAAsB,EAAc,gCAAgC,EAAE;EACnFC,aAAa,EAAE;AACjB,CAAC,CAAC"}
@@ -4,6 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.mergeMarkdownStyleWithDefault = mergeMarkdownStyleWithDefault;
7
+ exports.parseStringWithUnitToNumber = parseStringWithUnitToNumber;
7
8
  var _reactNative = require("react-native");
8
9
  const FONT_FAMILY_MONOSPACE = _reactNative.Platform.select({
9
10
  ios: 'Courier',
@@ -52,6 +53,16 @@ function makeDefaultMarkdownStyle() {
52
53
  mentionReport: {
53
54
  color: 'red',
54
55
  backgroundColor: 'pink'
56
+ },
57
+ inlineImage: {
58
+ maxWidth: 150,
59
+ maxHeight: 150,
60
+ marginTop: 5,
61
+ marginBottom: 0
62
+ },
63
+ loadingIndicator: {
64
+ primaryColor: 'gray',
65
+ secondaryColor: 'lightgray'
55
66
  }
56
67
  };
57
68
  }
@@ -62,9 +73,15 @@ function mergeMarkdownStyleWithDefault(input) {
62
73
  if (!(key in output)) {
63
74
  return;
64
75
  }
65
- Object.assign(output[key], input[key]);
76
+ const outputValue = output[key];
77
+ if (outputValue) {
78
+ Object.assign(outputValue, input[key]);
79
+ }
66
80
  });
67
81
  }
68
82
  return output;
69
83
  }
84
+ function parseStringWithUnitToNumber(value) {
85
+ return value ? parseInt(value.replace('px', ''), 10) : 0;
86
+ }
70
87
  //# sourceMappingURL=styleUtils.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNative","require","FONT_FAMILY_MONOSPACE","Platform","select","ios","default","makeDefaultMarkdownStyle","syntax","color","link","h1","fontSize","emoji","blockquote","borderColor","borderWidth","marginLeft","paddingLeft","code","fontFamily","backgroundColor","pre","mentionHere","mentionUser","mentionReport","mergeMarkdownStyleWithDefault","input","output","undefined","Object","keys","forEach","key","assign"],"sourceRoot":"../../src","sources":["styleUtils.ts"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAOA,MAAMC,qBAAqB,GAAGC,qBAAQ,CAACC,MAAM,CAAC;EAC5CC,GAAG,EAAE,SAAS;EACdC,OAAO,EAAE;AACX,CAAC,CAAC;AAEF,SAASC,wBAAwBA,CAAA,EAAkB;EACjD,OAAO;IACLC,MAAM,EAAE;MACNC,KAAK,EAAE;IACT,CAAC;IACDC,IAAI,EAAE;MACJD,KAAK,EAAE;IACT,CAAC;IACDE,EAAE,EAAE;MACFC,QAAQ,EAAE;IACZ,CAAC;IACDC,KAAK,EAAE;MACLD,QAAQ,EAAE;IACZ,CAAC;IACDE,UAAU,EAAE;MACVC,WAAW,EAAE,MAAM;MACnBC,WAAW,EAAE,CAAC;MACdC,UAAU,EAAE,CAAC;MACbC,WAAW,EAAE;IACf,CAAC;IACDC,IAAI,EAAE;MACJC,UAAU,EAAElB,qBAAqB;MACjCU,QAAQ,EAAE,EAAE;MACZH,KAAK,EAAE,OAAO;MACdY,eAAe,EAAE;IACnB,CAAC;IACDC,GAAG,EAAE;MACHF,UAAU,EAAElB,qBAAqB;MACjCU,QAAQ,EAAE,EAAE;MACZH,KAAK,EAAE,OAAO;MACdY,eAAe,EAAE;IACnB,CAAC;IACDE,WAAW,EAAE;MACXd,KAAK,EAAE,OAAO;MACdY,eAAe,EAAE;IACnB,CAAC;IACDG,WAAW,EAAE;MACXf,KAAK,EAAE,MAAM;MACbY,eAAe,EAAE;IACnB,CAAC;IACDI,aAAa,EAAE;MACbhB,KAAK,EAAE,KAAK;MACZY,eAAe,EAAE;IACnB;EACF,CAAC;AACH;AAEA,SAASK,6BAA6BA,CAACC,KAAuC,EAAiB;EAC7F,MAAMC,MAAM,GAAGrB,wBAAwB,CAAC,CAAC;EAEzC,IAAIoB,KAAK,KAAKE,SAAS,EAAE;IACvBC,MAAM,CAACC,IAAI,CAACJ,KAAK,CAAC,CAACK,OAAO,CAAEC,GAAG,IAAK;MAClC,IAAI,EAAEA,GAAG,IAAIL,MAAM,CAAC,EAAE;QACpB;MACF;MACAE,MAAM,CAACI,MAAM,CAACN,MAAM,CAACK,GAAG,CAAwB,EAAEN,KAAK,CAACM,GAAG,CAAwB,CAAC;IACtF,CAAC,CAAC;EACJ;EAEA,OAAOL,MAAM;AACf"}
1
+ {"version":3,"names":["_reactNative","require","FONT_FAMILY_MONOSPACE","Platform","select","ios","default","makeDefaultMarkdownStyle","syntax","color","link","h1","fontSize","emoji","blockquote","borderColor","borderWidth","marginLeft","paddingLeft","code","fontFamily","backgroundColor","pre","mentionHere","mentionUser","mentionReport","inlineImage","maxWidth","maxHeight","marginTop","marginBottom","loadingIndicator","primaryColor","secondaryColor","mergeMarkdownStyleWithDefault","input","output","undefined","Object","keys","forEach","key","outputValue","assign","parseStringWithUnitToNumber","value","parseInt","replace"],"sourceRoot":"../../src","sources":["styleUtils.ts"],"mappings":";;;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAOA,MAAMC,qBAAqB,GAAGC,qBAAQ,CAACC,MAAM,CAAC;EAC5CC,GAAG,EAAE,SAAS;EACdC,OAAO,EAAE;AACX,CAAC,CAAC;AAEF,SAASC,wBAAwBA,CAAA,EAAkB;EACjD,OAAO;IACLC,MAAM,EAAE;MACNC,KAAK,EAAE;IACT,CAAC;IACDC,IAAI,EAAE;MACJD,KAAK,EAAE;IACT,CAAC;IACDE,EAAE,EAAE;MACFC,QAAQ,EAAE;IACZ,CAAC;IACDC,KAAK,EAAE;MACLD,QAAQ,EAAE;IACZ,CAAC;IACDE,UAAU,EAAE;MACVC,WAAW,EAAE,MAAM;MACnBC,WAAW,EAAE,CAAC;MACdC,UAAU,EAAE,CAAC;MACbC,WAAW,EAAE;IACf,CAAC;IACDC,IAAI,EAAE;MACJC,UAAU,EAAElB,qBAAqB;MACjCU,QAAQ,EAAE,EAAE;MACZH,KAAK,EAAE,OAAO;MACdY,eAAe,EAAE;IACnB,CAAC;IACDC,GAAG,EAAE;MACHF,UAAU,EAAElB,qBAAqB;MACjCU,QAAQ,EAAE,EAAE;MACZH,KAAK,EAAE,OAAO;MACdY,eAAe,EAAE;IACnB,CAAC;IACDE,WAAW,EAAE;MACXd,KAAK,EAAE,OAAO;MACdY,eAAe,EAAE;IACnB,CAAC;IACDG,WAAW,EAAE;MACXf,KAAK,EAAE,MAAM;MACbY,eAAe,EAAE;IACnB,CAAC;IACDI,aAAa,EAAE;MACbhB,KAAK,EAAE,KAAK;MACZY,eAAe,EAAE;IACnB,CAAC;IACDK,WAAW,EAAE;MACXC,QAAQ,EAAE,GAAG;MACbC,SAAS,EAAE,GAAG;MACdC,SAAS,EAAE,CAAC;MACZC,YAAY,EAAE;IAChB,CAAC;IACDC,gBAAgB,EAAE;MAChBC,YAAY,EAAE,MAAM;MACpBC,cAAc,EAAE;IAClB;EACF,CAAC;AACH;AAEA,SAASC,6BAA6BA,CAACC,KAAuC,EAAiB;EAC7F,MAAMC,MAAM,GAAG7B,wBAAwB,CAAC,CAAC;EAEzC,IAAI4B,KAAK,KAAKE,SAAS,EAAE;IACvBC,MAAM,CAACC,IAAI,CAACJ,KAAK,CAAC,CAACK,OAAO,CAAEC,GAAG,IAAK;MAClC,IAAI,EAAEA,GAAG,IAAIL,MAAM,CAAC,EAAE;QACpB;MACF;MAEA,MAAMM,WAAW,GAAGN,MAAM,CAACK,GAAG,CAAwB;MACtD,IAAIC,WAAW,EAAE;QACfJ,MAAM,CAACK,MAAM,CAACD,WAAW,EAAEP,KAAK,CAACM,GAAG,CAAwB,CAAC;MAC/D;IACF,CAAC,CAAC;EACJ;EAEA,OAAOL,MAAM;AACf;AAEA,SAASQ,2BAA2BA,CAACC,KAAoB,EAAU;EACjE,OAAOA,KAAK,GAAGC,QAAQ,CAACD,KAAK,CAACE,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC;AAC1D"}
@@ -24,3 +24,20 @@
24
24
  display: block; /* For Firefox */
25
25
  content: attr(placeholder);
26
26
  }
27
+
28
+ @keyframes react-native-live-markdown-spin {
29
+ 0% {
30
+ transform: rotate(0deg);
31
+ }
32
+ 100% {
33
+ transform: rotate(360deg);
34
+ }
35
+ }
36
+
37
+ .react-native-live-markdown-input-multiline [contenteditable='false'] {
38
+ -webkit-touch-callout: none;
39
+ -webkit-user-select: none;
40
+ -moz-user-select: none;
41
+ -ms-user-select: none;
42
+ user-select: none;
43
+ }
@@ -0,0 +1,104 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.addInlineImagePreview = addInlineImagePreview;
7
+ var _styleUtils = require("../../styleUtils");
8
+ var _loadingIndicator = require("./loadingIndicator");
9
+ const inlineImageDefaultStyles = {
10
+ position: 'absolute',
11
+ bottom: 0,
12
+ left: 0
13
+ };
14
+ function createImageElement(url, callback) {
15
+ const imageContainer = document.createElement('span');
16
+ imageContainer.contentEditable = 'false';
17
+ imageContainer.setAttribute('data-type', 'inline-container');
18
+ const img = new Image();
19
+ imageContainer.appendChild(img);
20
+ img.contentEditable = 'false';
21
+ img.onload = () => callback(imageContainer);
22
+ img.onerror = () => callback(imageContainer);
23
+ img.src = url;
24
+ }
25
+
26
+ /** Adds already loaded image element from current input content to the tree node */
27
+ function updateImageTreeNode(targetNode, newElement) {
28
+ const paddingBottom = `${newElement.style.height}`;
29
+ targetNode.element.appendChild(newElement);
30
+ let currentParent = targetNode.element;
31
+ while (currentParent.parentElement && !['line', 'block'].includes(currentParent.getAttribute('data-type') || '')) {
32
+ currentParent = currentParent.parentElement;
33
+ }
34
+ Object.assign(currentParent.style, {
35
+ paddingBottom
36
+ });
37
+ return targetNode;
38
+ }
39
+
40
+ /** The main function that adds inline image preview to the node */
41
+ function addInlineImagePreview(currentInput, targetNode, text, ranges, markdownStyle) {
42
+ var _markdownStyle$inline, _markdownStyle$inline2, _markdownStyle$inline3, _markdownStyle$inline4, _markdownStyle$loadin, _markdownStyle$loadin2;
43
+ const linkRange = ranges.find(r => r.type === 'link');
44
+ let imageHref = '';
45
+ if (linkRange) {
46
+ imageHref = text.substring(linkRange.start, linkRange.start + linkRange.length);
47
+ }
48
+
49
+ // If the inline image markdown with the same href exists in the current input, use it instead of creating new one.
50
+ // Prevents from image flickering and layout jumps
51
+ const alreadyLoadedPreview = currentInput.querySelector(`img[src="${imageHref}"]`);
52
+ const loadedImageContainer = alreadyLoadedPreview === null || alreadyLoadedPreview === void 0 ? void 0 : alreadyLoadedPreview.parentElement;
53
+ if (loadedImageContainer && loadedImageContainer.getAttribute('data-type') === 'inline-container') {
54
+ return updateImageTreeNode(targetNode, loadedImageContainer);
55
+ }
56
+
57
+ // Add a loading spinner
58
+ const spinner = (0, _loadingIndicator.createLoadingIndicator)(imageHref, markdownStyle);
59
+ if (spinner) {
60
+ targetNode.element.appendChild(spinner);
61
+ }
62
+ const maxWidth = (_markdownStyle$inline = markdownStyle.inlineImage) === null || _markdownStyle$inline === void 0 ? void 0 : _markdownStyle$inline.maxWidth;
63
+ const maxHeight = (_markdownStyle$inline2 = markdownStyle.inlineImage) === null || _markdownStyle$inline2 === void 0 ? void 0 : _markdownStyle$inline2.maxHeight;
64
+ const imageMarginTop = (0, _styleUtils.parseStringWithUnitToNumber)(`${(_markdownStyle$inline3 = markdownStyle.inlineImage) === null || _markdownStyle$inline3 === void 0 ? void 0 : _markdownStyle$inline3.marginTop}`);
65
+ const imageMarginBottom = (0, _styleUtils.parseStringWithUnitToNumber)(`${(_markdownStyle$inline4 = markdownStyle.inlineImage) === null || _markdownStyle$inline4 === void 0 ? void 0 : _markdownStyle$inline4.marginBottom}`);
66
+ Object.assign(targetNode.element.style, {
67
+ display: 'block',
68
+ marginBottom: `${imageMarginBottom}px`,
69
+ paddingBottom: ((_markdownStyle$loadin = markdownStyle.loadingIndicatorContainer) === null || _markdownStyle$loadin === void 0 ? void 0 : _markdownStyle$loadin.height) || ((_markdownStyle$loadin2 = markdownStyle.loadingIndicator) === null || _markdownStyle$loadin2 === void 0 ? void 0 : _markdownStyle$loadin2.height) || !!markdownStyle.loadingIndicator && '30px' || undefined
70
+ });
71
+ createImageElement(imageHref, imageContainer => {
72
+ // Verify if the current spinner is for the loaded image. If not, it means that the response came after the user changed the image url
73
+ const currentSpinner = currentInput.querySelector('[data-type="spinner"]');
74
+ // Remove the spinner
75
+ if (currentSpinner) {
76
+ currentSpinner.remove();
77
+ }
78
+
79
+ // Set the image styles
80
+ Object.assign(imageContainer.style, {
81
+ ...inlineImageDefaultStyles,
82
+ maxHeight,
83
+ maxWidth
84
+ });
85
+ const img = imageContainer.firstChild;
86
+ Object.assign(img.style, {
87
+ maxHeight,
88
+ maxWidth
89
+ });
90
+ targetNode.element.appendChild(imageContainer);
91
+ const imageHeight = `${imageContainer.clientHeight + imageMarginTop}px`;
92
+ Object.assign(imageContainer.style, {
93
+ height: imageHeight
94
+ });
95
+ // Set paddingBottom to the height of the image so it's displayed under the block
96
+ Object.assign(targetNode.element.style, {
97
+ paddingBottom: imageHeight
98
+ });
99
+ });
100
+ return targetNode;
101
+ }
102
+
103
+ // eslint-disable-next-line import/prefer-default-export
104
+ //# sourceMappingURL=inlineImage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_styleUtils","require","_loadingIndicator","inlineImageDefaultStyles","position","bottom","left","createImageElement","url","callback","imageContainer","document","createElement","contentEditable","setAttribute","img","Image","appendChild","onload","onerror","src","updateImageTreeNode","targetNode","newElement","paddingBottom","style","height","element","currentParent","parentElement","includes","getAttribute","Object","assign","addInlineImagePreview","currentInput","text","ranges","markdownStyle","_markdownStyle$inline","_markdownStyle$inline2","_markdownStyle$inline3","_markdownStyle$inline4","_markdownStyle$loadin","_markdownStyle$loadin2","linkRange","find","r","type","imageHref","substring","start","length","alreadyLoadedPreview","querySelector","loadedImageContainer","spinner","createLoadingIndicator","maxWidth","inlineImage","maxHeight","imageMarginTop","parseStringWithUnitToNumber","marginTop","imageMarginBottom","marginBottom","display","loadingIndicatorContainer","loadingIndicator","undefined","currentSpinner","remove","firstChild","imageHeight","clientHeight"],"sourceRoot":"../../../../src","sources":["web/inputElements/inlineImage.ts"],"mappings":"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"}
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.createLoadingIndicator = createLoadingIndicator;
7
+ const spinnerDefaultStyles = {
8
+ borderRadius: '50%',
9
+ display: 'block',
10
+ animationPlayState: 'paused'
11
+ };
12
+ const spinnerContainerDefaultStyles = {
13
+ position: 'absolute',
14
+ bottom: '0',
15
+ left: '0',
16
+ display: 'flex',
17
+ justifyContent: 'center',
18
+ alignItems: 'center'
19
+ };
20
+
21
+ /** Creates animated loading spinner */
22
+ function createLoadingIndicator(url, markdownStyle) {
23
+ const container = document.createElement('span');
24
+ container.contentEditable = 'false';
25
+ const spinner = document.createElement('span');
26
+ const spinnerStyles = markdownStyle.loadingIndicator;
27
+ if (spinnerStyles) {
28
+ const spinnerBorderWidth = spinnerStyles.borderWidth || 3;
29
+ Object.assign(spinner.style, {
30
+ ...spinnerDefaultStyles,
31
+ border: `${spinnerBorderWidth}px solid ${String(spinnerStyles.secondaryColor)}`,
32
+ borderTop: `${spinnerBorderWidth}px solid ${String(spinnerStyles.primaryColor)}`,
33
+ width: spinnerStyles.width || '20px',
34
+ height: spinnerStyles.height || '20px'
35
+ });
36
+ }
37
+ const containerStyles = markdownStyle.loadingIndicatorContainer;
38
+ Object.assign(container.style, {
39
+ ...markdownStyle.loadingIndicatorContainer,
40
+ ...spinnerContainerDefaultStyles,
41
+ width: (containerStyles === null || containerStyles === void 0 ? void 0 : containerStyles.width) || 'auto',
42
+ height: (containerStyles === null || containerStyles === void 0 ? void 0 : containerStyles.height) || 'auto'
43
+ });
44
+ container.setAttribute('data-type', 'spinner');
45
+ container.setAttribute('data-url', url);
46
+ container.contentEditable = 'false';
47
+ container.appendChild(spinner);
48
+ return container;
49
+ }
50
+
51
+ // eslint-disable-next-line import/prefer-default-export
52
+ //# sourceMappingURL=loadingIndicator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["spinnerDefaultStyles","borderRadius","display","animationPlayState","spinnerContainerDefaultStyles","position","bottom","left","justifyContent","alignItems","createLoadingIndicator","url","markdownStyle","container","document","createElement","contentEditable","spinner","spinnerStyles","loadingIndicator","spinnerBorderWidth","borderWidth","Object","assign","style","border","String","secondaryColor","borderTop","primaryColor","width","height","containerStyles","loadingIndicatorContainer","setAttribute","appendChild"],"sourceRoot":"../../../../src","sources":["web/inputElements/loadingIndicator.ts"],"mappings":";;;;;;AAEA,MAAMA,oBAAoB,GAAG;EAC3BC,YAAY,EAAE,KAAK;EACnBC,OAAO,EAAE,OAAO;EAChBC,kBAAkB,EAAE;AACtB,CAAC;AACD,MAAMC,6BAA6B,GAAG;EACpCC,QAAQ,EAAE,UAAU;EACpBC,MAAM,EAAE,GAAG;EACXC,IAAI,EAAE,GAAG;EACTL,OAAO,EAAE,MAAM;EACfM,cAAc,EAAE,QAAQ;EACxBC,UAAU,EAAE;AACd,CAAC;;AAED;AACA,SAASC,sBAAsBA,CAACC,GAAW,EAAEC,aAAmC,EAAE;EAChF,MAAMC,SAAS,GAAGC,QAAQ,CAACC,aAAa,CAAC,MAAM,CAAC;EAChDF,SAAS,CAACG,eAAe,GAAG,OAAO;EAEnC,MAAMC,OAAO,GAAGH,QAAQ,CAACC,aAAa,CAAC,MAAM,CAAC;EAC9C,MAAMG,aAAa,GAAGN,aAAa,CAACO,gBAAgB;EACpD,IAAID,aAAa,EAAE;IACjB,MAAME,kBAAkB,GAAGF,aAAa,CAACG,WAAW,IAAI,CAAC;IACzDC,MAAM,CAACC,MAAM,CAACN,OAAO,CAACO,KAAK,EAAE;MAC3B,GAAGxB,oBAAoB;MACvByB,MAAM,EAAG,GAAEL,kBAAmB,YAAWM,MAAM,CAACR,aAAa,CAACS,cAAc,CAAE,EAAC;MAC/EC,SAAS,EAAG,GAAER,kBAAmB,YAAWM,MAAM,CAACR,aAAa,CAACW,YAAY,CAAE,EAAC;MAChFC,KAAK,EAAEZ,aAAa,CAACY,KAAK,IAAI,MAAM;MACpCC,MAAM,EAAEb,aAAa,CAACa,MAAM,IAAI;IAClC,CAAC,CAAC;EACJ;EAEA,MAAMC,eAAe,GAAGpB,aAAa,CAACqB,yBAAyB;EAC/DX,MAAM,CAACC,MAAM,CAACV,SAAS,CAACW,KAAK,EAAE;IAC7B,GAAGZ,aAAa,CAACqB,yBAAyB;IAC1C,GAAG7B,6BAA6B;IAChC0B,KAAK,EAAE,CAAAE,eAAe,aAAfA,eAAe,uBAAfA,eAAe,CAAEF,KAAK,KAAI,MAAM;IACvCC,MAAM,EAAE,CAAAC,eAAe,aAAfA,eAAe,uBAAfA,eAAe,CAAED,MAAM,KAAI;EACrC,CAAC,CAAC;EAEFlB,SAAS,CAACqB,YAAY,CAAC,WAAW,EAAE,SAAS,CAAC;EAC9CrB,SAAS,CAACqB,YAAY,CAAC,UAAU,EAAEvB,GAAG,CAAC;EACvCE,SAAS,CAACG,eAAe,GAAG,OAAO;EACnCH,SAAS,CAACsB,WAAW,CAAClB,OAAO,CAAC;EAE9B,OAAOJ,SAAS;AAClB;;AAEA"}
@@ -0,0 +1,55 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getAnimationCurrentTimes = getAnimationCurrentTimes;
7
+ exports.updateAnimationsTime = updateAnimationsTime;
8
+ const ANIMATED_ELEMENT_TYPES = ['spinner'];
9
+ const KEYFRAMES = {
10
+ spinner: [{
11
+ transform: 'rotate(0deg)'
12
+ }, {
13
+ transform: 'rotate(360deg)'
14
+ }]
15
+ };
16
+ const OPTIONS = {
17
+ spinner: {
18
+ duration: 1000,
19
+ iterations: Infinity
20
+ }
21
+ };
22
+
23
+ /** Gets the current times of all animated elements inside the input */
24
+ function getAnimationCurrentTimes(currentInput) {
25
+ const animationTimes = {};
26
+ ANIMATED_ELEMENT_TYPES.forEach(type => {
27
+ const elements = currentInput.querySelectorAll(`[data-type="${type}"]`);
28
+ animationTimes[type] = Array.from(elements).map(element => {
29
+ const animation = element.firstChild.getAnimations()[0];
30
+ if (animation) {
31
+ return animation.currentTime || 0;
32
+ }
33
+ return 0;
34
+ });
35
+ });
36
+ return animationTimes;
37
+ }
38
+
39
+ /** Updates the current times of all animated elements inside the input, to preserve their state between input rerenders */
40
+ function updateAnimationsTime(currentInput, animationTimes) {
41
+ ANIMATED_ELEMENT_TYPES.forEach(type => {
42
+ const elements = currentInput.querySelectorAll(`[data-type="${type}"]`);
43
+ if (!KEYFRAMES[type]) {
44
+ return;
45
+ }
46
+ elements.forEach((element, index) => {
47
+ const animation = element.firstChild.animate(KEYFRAMES[type], OPTIONS[type]);
48
+ if (animationTimes !== null && animationTimes !== void 0 && animationTimes[type] && animation) {
49
+ var _animationTimes$type;
50
+ animation.currentTime = ((_animationTimes$type = animationTimes[type]) === null || _animationTimes$type === void 0 ? void 0 : _animationTimes$type[index]) || 0;
51
+ }
52
+ });
53
+ });
54
+ }
55
+ //# sourceMappingURL=animationUtils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["ANIMATED_ELEMENT_TYPES","KEYFRAMES","spinner","transform","OPTIONS","duration","iterations","Infinity","getAnimationCurrentTimes","currentInput","animationTimes","forEach","type","elements","querySelectorAll","Array","from","map","element","animation","firstChild","getAnimations","currentTime","updateAnimationsTime","index","animate","_animationTimes$type"],"sourceRoot":"../../../../src","sources":["web/utils/animationUtils.ts"],"mappings":";;;;;;;AAEA,MAAMA,sBAAsB,GAAG,CAAC,SAAS,CAAU;AAQnD,MAAMC,SAEL,GAAG;EACFC,OAAO,EAAE,CAAC;IAACC,SAAS,EAAE;EAAc,CAAC,EAAE;IAACA,SAAS,EAAE;EAAgB,CAAC;AACtE,CAAC;AAED,MAAMC,OAAkE,GAAG;EACzEF,OAAO,EAAE;IACPG,QAAQ,EAAE,IAAI;IACdC,UAAU,EAAEC;EACd;AACF,CAAC;;AAED;AACA,SAASC,wBAAwBA,CAACC,YAAsC,EAAkB;EACxF,MAAMC,cAA8B,GAAG,CAAC,CAAC;EAEzCV,sBAAsB,CAACW,OAAO,CAAEC,IAAI,IAAK;IACvC,MAAMC,QAAQ,GAAGJ,YAAY,CAACK,gBAAgB,CAAE,eAAcF,IAAK,IAAG,CAAC;IACvEF,cAAc,CAACE,IAAI,CAAC,GAAGG,KAAK,CAACC,IAAI,CAACH,QAAQ,CAAC,CAACI,GAAG,CAAEC,OAAO,IAAK;MAC3D,MAAMC,SAAS,GAAID,OAAO,CAACE,UAAU,CAAyBC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;MAChF,IAAIF,SAAS,EAAE;QACb,OAAOA,SAAS,CAACG,WAAW,IAAI,CAAC;MACnC;MACA,OAAO,CAAC;IACV,CAAC,CAAC;EACJ,CAAC,CAAC;EAEF,OAAOZ,cAAc;AACvB;;AAEA;AACA,SAASa,oBAAoBA,CAACd,YAAsC,EAAEC,cAA8B,EAAE;EACpGV,sBAAsB,CAACW,OAAO,CAAEC,IAAI,IAAK;IACvC,MAAMC,QAAQ,GAAGJ,YAAY,CAACK,gBAAgB,CAAE,eAAcF,IAAK,IAAG,CAAC;IACvE,IAAI,CAACX,SAAS,CAACW,IAAI,CAAC,EAAE;MACpB;IACF;IAEAC,QAAQ,CAACF,OAAO,CAAC,CAACO,OAAO,EAAEM,KAAK,KAAK;MACnC,MAAML,SAAS,GAAID,OAAO,CAACE,UAAU,CAAyBK,OAAO,CAACxB,SAAS,CAACW,IAAI,CAAC,EAAgBR,OAAO,CAACQ,IAAI,CAAC,CAAC;MACnH,IAAIF,cAAc,aAAdA,cAAc,eAAdA,cAAc,CAAGE,IAAI,CAAC,IAAIO,SAAS,EAAE;QAAA,IAAAO,oBAAA;QACvCP,SAAS,CAACG,WAAW,GAAG,EAAAI,oBAAA,GAAAhB,cAAc,CAACE,IAAI,CAAC,cAAAc,oBAAA,uBAApBA,oBAAA,CAAuBF,KAAK,CAAC,KAAI,CAAC;MAC5D;IACF,CAAC,CAAC;EACJ,CAAC,CAAC;AACJ"}
@@ -4,6 +4,10 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.addStyleToBlock = addStyleToBlock;
7
+ exports.extendBlockStructure = extendBlockStructure;
8
+ exports.getFirstBlockMarkdownRange = getFirstBlockMarkdownRange;
9
+ exports.isBlockMarkdownType = isBlockMarkdownType;
10
+ var _inlineImage = require("../inputElements/inlineImage");
7
11
  function addStyleToBlock(targetElement, type, markdownStyle) {
8
12
  const node = targetElement;
9
13
  switch (type) {
@@ -58,7 +62,8 @@ function addStyleToBlock(targetElement, type, markdownStyle) {
58
62
  borderLeftStyle: 'solid',
59
63
  display: 'inline-block',
60
64
  maxWidth: '100%',
61
- boxSizing: 'border-box'
65
+ boxSizing: 'border-box',
66
+ overflowWrap: 'anywhere'
62
67
  });
63
68
  break;
64
69
  case 'h1':
@@ -67,10 +72,34 @@ function addStyleToBlock(targetElement, type, markdownStyle) {
67
72
  fontWeight: 'bold'
68
73
  });
69
74
  break;
75
+ case 'block':
76
+ Object.assign(node.style, {
77
+ display: 'block',
78
+ margin: '0',
79
+ padding: '0',
80
+ position: 'relative'
81
+ });
82
+ break;
70
83
  default:
71
84
  break;
72
85
  }
73
86
  }
74
-
75
- // eslint-disable-next-line import/prefer-default-export
87
+ const BLOCK_MARKDOWN_TYPES = ['inline-image'];
88
+ const FULL_LINE_MARKDOWN_TYPES = ['blockquote', 'h1'];
89
+ function isBlockMarkdownType(type) {
90
+ return BLOCK_MARKDOWN_TYPES.includes(type);
91
+ }
92
+ function getFirstBlockMarkdownRange(ranges) {
93
+ const blockMarkdownRange = ranges.find(r => isBlockMarkdownType(r.type) || FULL_LINE_MARKDOWN_TYPES.includes(r.type));
94
+ return FULL_LINE_MARKDOWN_TYPES.includes((blockMarkdownRange === null || blockMarkdownRange === void 0 ? void 0 : blockMarkdownRange.type) || '') ? undefined : blockMarkdownRange;
95
+ }
96
+ function extendBlockStructure(currentInput, targetNode, currentRange, ranges, text, markdownStyle) {
97
+ switch (currentRange.type) {
98
+ case 'inline-image':
99
+ return (0, _inlineImage.addInlineImagePreview)(currentInput, targetNode, text, ranges, markdownStyle);
100
+ default:
101
+ break;
102
+ }
103
+ return targetNode;
104
+ }
76
105
  //# sourceMappingURL=blockUtils.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["addStyleToBlock","targetElement","type","markdownStyle","node","Object","assign","style","margin","padding","syntax","fontWeight","fontStyle","textDecoration","emoji","verticalAlign","mentionHere","mentionUser","mentionReport","link","code","pre","blockquote","borderLeftStyle","display","maxWidth","boxSizing","h1"],"sourceRoot":"../../../../src","sources":["web/utils/blockUtils.ts"],"mappings":";;;;;;AAGA,SAASA,eAAeA,CAACC,aAA0B,EAAEC,IAAc,EAAEC,aAAmC,EAAE;EACxG,MAAMC,IAAI,GAAGH,aAAa;EAC1B,QAAQC,IAAI;IACV,KAAK,MAAM;MACTG,MAAM,CAACC,MAAM,CAACF,IAAI,CAACG,KAAK,EAAE;QACxBC,MAAM,EAAE,GAAG;QACXC,OAAO,EAAE;MACX,CAAC,CAAC;MACF;IACF,KAAK,QAAQ;MACXJ,MAAM,CAACC,MAAM,CAACF,IAAI,CAACG,KAAK,EAAEJ,aAAa,CAACO,MAAM,CAAC;MAC/C;IACF,KAAK,MAAM;MACTN,IAAI,CAACG,KAAK,CAACI,UAAU,GAAG,MAAM;MAC9B;IACF,KAAK,QAAQ;MACXP,IAAI,CAACG,KAAK,CAACK,SAAS,GAAG,QAAQ;MAC/B;IACF,KAAK,eAAe;MAClBR,IAAI,CAACG,KAAK,CAACM,cAAc,GAAG,cAAc;MAC1C;IACF,KAAK,OAAO;MACVR,MAAM,CAACC,MAAM,CAACF,IAAI,CAACG,KAAK,EAAE;QAAC,GAAGJ,aAAa,CAACW,KAAK;QAAEC,aAAa,EAAE;MAAQ,CAAC,CAAC;MAC5E;IACF,KAAK,cAAc;MACjBV,MAAM,CAACC,MAAM,CAACF,IAAI,CAACG,KAAK,EAAEJ,aAAa,CAACa,WAAW,CAAC;MACpD;IACF,KAAK,cAAc;MACjBX,MAAM,CAACC,MAAM,CAACF,IAAI,CAACG,KAAK,EAAEJ,aAAa,CAACc,WAAW,CAAC;MACpD;IACF,KAAK,gBAAgB;MACnBZ,MAAM,CAACC,MAAM,CAACF,IAAI,CAACG,KAAK,EAAEJ,aAAa,CAACe,aAAa,CAAC;MACtD;IACF,KAAK,MAAM;MACTb,MAAM,CAACC,MAAM,CAACF,IAAI,CAACG,KAAK,EAAE;QACxB,GAAGJ,aAAa,CAACgB,IAAI;QACrBN,cAAc,EAAE;MAClB,CAAC,CAAC;MACF;IACF,KAAK,MAAM;MACTR,MAAM,CAACC,MAAM,CAACF,IAAI,CAACG,KAAK,EAAEJ,aAAa,CAACiB,IAAI,CAAC;MAC7C;IACF,KAAK,KAAK;MACRf,MAAM,CAACC,MAAM,CAACF,IAAI,CAACG,KAAK,EAAEJ,aAAa,CAACkB,GAAG,CAAC;MAC5C;IAEF,KAAK,YAAY;MACfhB,MAAM,CAACC,MAAM,CAACF,IAAI,CAACG,KAAK,EAAE;QACxB,GAAGJ,aAAa,CAACmB,UAAU;QAC3BC,eAAe,EAAE,OAAO;QACxBC,OAAO,EAAE,cAAc;QACvBC,QAAQ,EAAE,MAAM;QAChBC,SAAS,EAAE;MACb,CAAC,CAAC;MACF;IACF,KAAK,IAAI;MACPrB,MAAM,CAACC,MAAM,CAACF,IAAI,CAACG,KAAK,EAAE;QACxB,GAAGJ,aAAa,CAACwB,EAAE;QACnBhB,UAAU,EAAE;MACd,CAAC,CAAC;MACF;IACF;MACE;EACJ;AACF;;AAEA"}
1
+ {"version":3,"names":["_inlineImage","require","addStyleToBlock","targetElement","type","markdownStyle","node","Object","assign","style","margin","padding","syntax","fontWeight","fontStyle","textDecoration","emoji","verticalAlign","mentionHere","mentionUser","mentionReport","link","code","pre","blockquote","borderLeftStyle","display","maxWidth","boxSizing","overflowWrap","h1","position","BLOCK_MARKDOWN_TYPES","FULL_LINE_MARKDOWN_TYPES","isBlockMarkdownType","includes","getFirstBlockMarkdownRange","ranges","blockMarkdownRange","find","r","undefined","extendBlockStructure","currentInput","targetNode","currentRange","text","addInlineImagePreview"],"sourceRoot":"../../../../src","sources":["web/utils/blockUtils.ts"],"mappings":"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"}
@@ -41,7 +41,7 @@ function normalizeValue(value) {
41
41
  }
42
42
 
43
43
  // Parses the HTML structure of a MarkdownTextInputElement to a plain text string. Used for getting the correct value of the input element.
44
- function parseInnerHTMLToText(target) {
44
+ function parseInnerHTMLToText(target, inputType, cursorPosition) {
45
45
  // Returns the parent of a given node that is higher in the hierarchy and is of a different type than 'text', 'br' or 'line'
46
46
  function getTopParentNode(node) {
47
47
  let currentParentNode = node.parentNode;
@@ -73,7 +73,10 @@ function parseInnerHTMLToText(target) {
73
73
  if (node.nodeType === Node.TEXT_NODE) {
74
74
  shouldAddNewline = false;
75
75
  } else {
76
- if (shouldAddNewline) {
76
+ var _firstChild$getAttrib;
77
+ const firstChild = node.firstChild;
78
+ const containsEmptyBlockElement = (firstChild === null || firstChild === void 0 || (_firstChild$getAttrib = firstChild.getAttribute) === null || _firstChild$getAttrib === void 0 ? void 0 : _firstChild$getAttrib.call(firstChild, 'data-type')) === 'block' && firstChild.textContent === '';
79
+ if (shouldAddNewline && !containsEmptyBlockElement) {
77
80
  text += '\n';
78
81
  shouldAddNewline = false;
79
82
  }
@@ -103,6 +106,12 @@ function parseInnerHTMLToText(target) {
103
106
  }
104
107
  }
105
108
  }
106
- return text.replaceAll('\r\n', '\n');
109
+ text = text.replaceAll('\r\n', '\n');
110
+
111
+ // Force letter removal if the input value haven't changed but input type is 'delete'
112
+ if (text === target.value && inputType.includes('delete')) {
113
+ text = text.slice(0, cursorPosition - 1) + text.slice(cursorPosition);
114
+ }
115
+ return text;
107
116
  }
108
117
  //# sourceMappingURL=inputUtils.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["ZERO_WIDTH_SPACE","isEventComposing","nativeEvent","isComposing","keyCode","getPlaceholderValue","placeholder","length","getElementHeight","node","styles","numberOfLines","tempElement","document","createElement","setAttribute","Object","assign","style","textContent","Array","fill","join","parentElement","appendChild","height","clientHeight","removeChild","normalizeValue","value","replaceAll","parseInnerHTMLToText","target","getTopParentNode","currentParentNode","parentNode","includes","_currentParentNode$pa","getAttribute","_currentParentNode","stack","text","shouldAddNewline","lastNode","childNodes","nodeName","innerHTML","_node$parentElement","pop","isTopComponent","contentEditable","nodeType","Node","TEXT_NODE","_parentNode$parentEle","i","child","push"],"sourceRoot":"../../../../src","sources":["web/utils/inputUtils.ts"],"mappings":"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"}
1
+ {"version":3,"names":["ZERO_WIDTH_SPACE","isEventComposing","nativeEvent","isComposing","keyCode","getPlaceholderValue","placeholder","length","getElementHeight","node","styles","numberOfLines","tempElement","document","createElement","setAttribute","Object","assign","style","textContent","Array","fill","join","parentElement","appendChild","height","clientHeight","removeChild","normalizeValue","value","replaceAll","parseInnerHTMLToText","target","inputType","cursorPosition","getTopParentNode","currentParentNode","parentNode","includes","_currentParentNode$pa","getAttribute","_currentParentNode","stack","text","shouldAddNewline","lastNode","childNodes","nodeName","innerHTML","_node$parentElement","pop","isTopComponent","contentEditable","nodeType","Node","TEXT_NODE","_firstChild$getAttrib","firstChild","containsEmptyBlockElement","call","_parentNode$parentEle","i","child","push","slice"],"sourceRoot":"../../../../src","sources":["web/utils/inputUtils.ts"],"mappings":"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"}