react-native-richify 1.0.2 → 1.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/lib/commonjs/components/OverlayText.d.js.map +1 -1
- package/lib/commonjs/components/OverlayText.js +8 -2
- package/lib/commonjs/components/OverlayText.js.map +1 -1
- package/lib/commonjs/components/RichTextInput.d.js.map +1 -1
- package/lib/commonjs/components/RichTextInput.js +73 -45
- package/lib/commonjs/components/RichTextInput.js.map +1 -1
- package/lib/commonjs/components/Toolbar.d.js.map +1 -1
- package/lib/commonjs/components/Toolbar.js +4 -7
- package/lib/commonjs/components/Toolbar.js.map +1 -1
- package/lib/commonjs/components/ToolbarButton.d.js.map +1 -1
- package/lib/commonjs/components/ToolbarButton.js.map +1 -1
- package/lib/commonjs/constants/defaultStyles.d.js.map +1 -1
- package/lib/commonjs/constants/defaultStyles.js +26 -1
- package/lib/commonjs/constants/defaultStyles.js.map +1 -1
- package/lib/commonjs/context/RichTextContext.d.js.map +1 -1
- package/lib/commonjs/context/RichTextContext.js.map +1 -1
- package/lib/commonjs/hooks/useFormatting.d.js.map +1 -1
- package/lib/commonjs/hooks/useFormatting.js +7 -1
- package/lib/commonjs/hooks/useFormatting.js.map +1 -1
- package/lib/commonjs/hooks/useRichText.d.js.map +1 -1
- package/lib/commonjs/hooks/useRichText.js +62 -7
- package/lib/commonjs/hooks/useRichText.js.map +1 -1
- package/lib/commonjs/hooks/useSelection.d.js.map +1 -1
- package/lib/commonjs/hooks/useSelection.js.map +1 -1
- package/lib/commonjs/index.d.js +19 -0
- package/lib/commonjs/index.d.js.map +1 -1
- package/lib/commonjs/index.js +19 -0
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/types/index.d.js.map +1 -1
- package/lib/commonjs/types/index.js.map +1 -1
- package/lib/commonjs/utils/formatter.d.js.map +1 -1
- package/lib/commonjs/utils/formatter.js +1 -4
- package/lib/commonjs/utils/formatter.js.map +1 -1
- package/lib/commonjs/utils/parser.d.js.map +1 -1
- package/lib/commonjs/utils/parser.js.map +1 -1
- package/lib/commonjs/utils/serializer.d.js +6 -0
- package/lib/commonjs/utils/serializer.d.js.map +1 -0
- package/lib/commonjs/utils/serializer.js +163 -0
- package/lib/commonjs/utils/serializer.js.map +1 -0
- package/lib/commonjs/utils/styleMapper.d.js.map +1 -1
- package/lib/commonjs/utils/styleMapper.js.map +1 -1
- package/lib/module/components/OverlayText.d.js.map +1 -1
- package/lib/module/components/OverlayText.js +8 -2
- package/lib/module/components/OverlayText.js.map +1 -1
- package/lib/module/components/RichTextInput.d.js.map +1 -1
- package/lib/module/components/RichTextInput.js +75 -48
- package/lib/module/components/RichTextInput.js.map +1 -1
- package/lib/module/components/Toolbar.d.js.map +1 -1
- package/lib/module/components/Toolbar.js +4 -7
- package/lib/module/components/Toolbar.js.map +1 -1
- package/lib/module/components/ToolbarButton.d.js.map +1 -1
- package/lib/module/components/ToolbarButton.js.map +1 -1
- package/lib/module/constants/defaultStyles.d.js.map +1 -1
- package/lib/module/constants/defaultStyles.js +26 -1
- package/lib/module/constants/defaultStyles.js.map +1 -1
- package/lib/module/context/RichTextContext.d.js.map +1 -1
- package/lib/module/context/RichTextContext.js.map +1 -1
- package/lib/module/hooks/useFormatting.d.js.map +1 -1
- package/lib/module/hooks/useFormatting.js +7 -1
- package/lib/module/hooks/useFormatting.js.map +1 -1
- package/lib/module/hooks/useRichText.d.js.map +1 -1
- package/lib/module/hooks/useRichText.js +62 -7
- package/lib/module/hooks/useRichText.js.map +1 -1
- package/lib/module/hooks/useSelection.d.js.map +1 -1
- package/lib/module/hooks/useSelection.js.map +1 -1
- package/lib/module/index.d.js +1 -0
- package/lib/module/index.d.js.map +1 -1
- package/lib/module/index.js +1 -0
- package/lib/module/index.js.map +1 -1
- package/lib/module/types/index.d.js.map +1 -1
- package/lib/module/types/index.js.map +1 -1
- package/lib/module/utils/formatter.d.js.map +1 -1
- package/lib/module/utils/formatter.js +1 -4
- package/lib/module/utils/formatter.js.map +1 -1
- package/lib/module/utils/parser.d.js.map +1 -1
- package/lib/module/utils/parser.js.map +1 -1
- package/lib/module/utils/serializer.d.js +4 -0
- package/lib/module/utils/serializer.d.js.map +1 -0
- package/lib/module/utils/serializer.js +157 -0
- package/lib/module/utils/serializer.js.map +1 -0
- package/lib/module/utils/styleMapper.d.js.map +1 -1
- package/lib/module/utils/styleMapper.js.map +1 -1
- package/lib/typescript/src/components/OverlayText.d.ts.map +1 -1
- package/lib/typescript/src/components/RichTextInput.d.ts +2 -13
- package/lib/typescript/src/components/RichTextInput.d.ts.map +1 -1
- package/lib/typescript/src/constants/defaultStyles.d.ts +2 -0
- package/lib/typescript/src/constants/defaultStyles.d.ts.map +1 -1
- package/lib/typescript/src/hooks/useFormatting.d.ts.map +1 -1
- package/lib/typescript/src/hooks/useRichText.d.ts.map +1 -1
- package/lib/typescript/src/index.d.ts +2 -1
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/lib/typescript/src/types/index.d.ts +41 -11
- package/lib/typescript/src/types/index.d.ts.map +1 -1
- package/lib/typescript/src/utils/formatter.d.ts.map +1 -1
- package/lib/typescript/src/utils/serializer.d.ts +14 -0
- package/lib/typescript/src/utils/serializer.d.ts.map +1 -0
- package/package.json +1 -1
- package/src/components/OverlayText.tsx +11 -3
- package/src/components/RichTextInput.d.ts +3 -14
- package/src/components/RichTextInput.tsx +111 -48
- package/src/components/Toolbar.d.ts +1 -1
- package/src/components/Toolbar.tsx +5 -5
- package/src/components/ToolbarButton.d.ts +1 -1
- package/src/constants/defaultStyles.d.ts +4 -2
- package/src/constants/defaultStyles.ts +26 -1
- package/src/hooks/useFormatting.ts +14 -1
- package/src/hooks/useRichText.ts +103 -10
- package/src/index.d.ts +2 -1
- package/src/index.ts +8 -0
- package/src/types/index.d.ts +41 -11
- package/src/types/index.ts +44 -11
- package/src/utils/formatter.ts +1 -5
- package/src/utils/serializer.d.ts +13 -0
- package/src/utils/serializer.ts +223 -0
|
@@ -7,6 +7,8 @@ exports.useRichText = useRichText;
|
|
|
7
7
|
var _react = require("react");
|
|
8
8
|
var _defaultStyles = require("../constants/defaultStyles");
|
|
9
9
|
var _parser = require("../utils/parser");
|
|
10
|
+
var _formatter = require("../utils/formatter");
|
|
11
|
+
var _serializer = require("../utils/serializer");
|
|
10
12
|
var _useSelection = require("../hooks/useSelection");
|
|
11
13
|
var _useFormatting = require("../hooks/useFormatting");
|
|
12
14
|
/**
|
|
@@ -41,8 +43,11 @@ function useRichText(options = {}) {
|
|
|
41
43
|
// Refs for stable access in callbacks
|
|
42
44
|
const segmentsRef = (0, _react.useRef)(segments);
|
|
43
45
|
segmentsRef.current = segments;
|
|
46
|
+
const selectionRef = (0, _react.useRef)(selection);
|
|
47
|
+
selectionRef.current = selection;
|
|
44
48
|
const activeStylesRef = (0, _react.useRef)(activeStyles);
|
|
45
49
|
activeStylesRef.current = activeStyles;
|
|
50
|
+
const preserveActiveStylesRef = (0, _react.useRef)(false);
|
|
46
51
|
|
|
47
52
|
// ─── Segment Change Handler ──────────────────────────────────────────────
|
|
48
53
|
|
|
@@ -66,7 +71,8 @@ function useRichText(options = {}) {
|
|
|
66
71
|
|
|
67
72
|
const handleTextChange = (0, _react.useCallback)(newText => {
|
|
68
73
|
const currentSegments = segmentsRef.current;
|
|
69
|
-
const
|
|
74
|
+
const currentSelection = selectionRef.current;
|
|
75
|
+
const currentActiveStyles = currentSelection.start === currentSelection.end ? activeStylesRef.current : (0, _formatter.getSelectionStyle)(currentSegments, currentSelection);
|
|
70
76
|
const newSegments = (0, _parser.reconcileTextChange)(currentSegments, newText, currentActiveStyles);
|
|
71
77
|
updateSegments(newSegments);
|
|
72
78
|
}, [updateSegments]);
|
|
@@ -74,7 +80,13 @@ function useRichText(options = {}) {
|
|
|
74
80
|
// ─── Selection Change Handler ────────────────────────────────────────────
|
|
75
81
|
|
|
76
82
|
const onSelectionChange = (0, _react.useCallback)(newSelection => {
|
|
83
|
+
const previousSelection = selectionRef.current;
|
|
77
84
|
handleSelectionChange(newSelection);
|
|
85
|
+
const shouldPreserveActiveStyles = preserveActiveStylesRef.current && previousSelection.start === previousSelection.end && newSelection.start === newSelection.end && newSelection.start >= previousSelection.start && newSelection.start - previousSelection.start <= 1;
|
|
86
|
+
if (shouldPreserveActiveStyles) {
|
|
87
|
+
return;
|
|
88
|
+
}
|
|
89
|
+
preserveActiveStylesRef.current = false;
|
|
78
90
|
|
|
79
91
|
// Update active styles based on cursor position
|
|
80
92
|
if (newSelection.start === newSelection.end) {
|
|
@@ -93,6 +105,9 @@ function useRichText(options = {}) {
|
|
|
93
105
|
const getPlainText = (0, _react.useCallback)(() => {
|
|
94
106
|
return (0, _parser.segmentsToPlainText)(segmentsRef.current);
|
|
95
107
|
}, []);
|
|
108
|
+
const getOutput = (0, _react.useCallback)((format = 'markdown') => {
|
|
109
|
+
return (0, _serializer.serializeSegments)(segmentsRef.current, format);
|
|
110
|
+
}, []);
|
|
96
111
|
const exportJSON = (0, _react.useCallback)(() => {
|
|
97
112
|
return JSON.parse(JSON.stringify(segmentsRef.current));
|
|
98
113
|
}, []);
|
|
@@ -105,7 +120,44 @@ function useRichText(options = {}) {
|
|
|
105
120
|
setActiveStyles({
|
|
106
121
|
..._defaultStyles.EMPTY_FORMAT_STYLE
|
|
107
122
|
});
|
|
123
|
+
preserveActiveStylesRef.current = false;
|
|
108
124
|
}, [updateSegments]);
|
|
125
|
+
const toggleFormat = (0, _react.useCallback)(format => {
|
|
126
|
+
if (selectionRef.current.start === selectionRef.current.end) {
|
|
127
|
+
preserveActiveStylesRef.current = true;
|
|
128
|
+
}
|
|
129
|
+
formatting.toggleFormat(format);
|
|
130
|
+
}, [formatting]);
|
|
131
|
+
const setStyleProperty = (0, _react.useCallback)((key, value) => {
|
|
132
|
+
if (selectionRef.current.start === selectionRef.current.end) {
|
|
133
|
+
preserveActiveStylesRef.current = true;
|
|
134
|
+
}
|
|
135
|
+
formatting.setStyleProperty(key, value);
|
|
136
|
+
}, [formatting]);
|
|
137
|
+
const setHeading = (0, _react.useCallback)(level => {
|
|
138
|
+
if (selectionRef.current.start === selectionRef.current.end) {
|
|
139
|
+
preserveActiveStylesRef.current = true;
|
|
140
|
+
}
|
|
141
|
+
formatting.setHeading(level);
|
|
142
|
+
}, [formatting]);
|
|
143
|
+
const setColor = (0, _react.useCallback)(color => {
|
|
144
|
+
if (selectionRef.current.start === selectionRef.current.end) {
|
|
145
|
+
preserveActiveStylesRef.current = true;
|
|
146
|
+
}
|
|
147
|
+
formatting.setColor(color);
|
|
148
|
+
}, [formatting]);
|
|
149
|
+
const setBackgroundColor = (0, _react.useCallback)(color => {
|
|
150
|
+
if (selectionRef.current.start === selectionRef.current.end) {
|
|
151
|
+
preserveActiveStylesRef.current = true;
|
|
152
|
+
}
|
|
153
|
+
formatting.setBackgroundColor(color);
|
|
154
|
+
}, [formatting]);
|
|
155
|
+
const setFontSize = (0, _react.useCallback)(size => {
|
|
156
|
+
if (selectionRef.current.start === selectionRef.current.end) {
|
|
157
|
+
preserveActiveStylesRef.current = true;
|
|
158
|
+
}
|
|
159
|
+
formatting.setFontSize(size);
|
|
160
|
+
}, [formatting]);
|
|
109
161
|
|
|
110
162
|
// ─── Build Return Value ──────────────────────────────────────────────────
|
|
111
163
|
|
|
@@ -115,14 +167,17 @@ function useRichText(options = {}) {
|
|
|
115
167
|
activeStyles
|
|
116
168
|
};
|
|
117
169
|
const actions = {
|
|
118
|
-
toggleFormat
|
|
119
|
-
setStyleProperty
|
|
120
|
-
setHeading
|
|
121
|
-
setColor
|
|
122
|
-
setBackgroundColor
|
|
123
|
-
setFontSize
|
|
170
|
+
toggleFormat,
|
|
171
|
+
setStyleProperty,
|
|
172
|
+
setHeading,
|
|
173
|
+
setColor,
|
|
174
|
+
setBackgroundColor,
|
|
175
|
+
setFontSize,
|
|
124
176
|
handleTextChange,
|
|
125
177
|
handleSelectionChange: onSelectionChange,
|
|
178
|
+
isFormatActive: formatting.isFormatActive,
|
|
179
|
+
getSelectionStyle: formatting.currentSelectionStyle,
|
|
180
|
+
getOutput,
|
|
126
181
|
getPlainText,
|
|
127
182
|
exportJSON,
|
|
128
183
|
importJSON,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","require","_defaultStyles","_parser","_useSelection","_useFormatting","useRichText","options","initialSegments","onChangeSegments","onChangeText","segments","setSegments","useState","length","createSegment","activeStyles","setActiveStyles","EMPTY_FORMAT_STYLE","selection","handleSelectionChange","useSelection","segmentsRef","useRef","current","activeStylesRef","updateSegments","useCallback","newSegments","segmentsToPlainText","formatting","useFormatting","onSegmentsChange","onActiveStylesChange","handleTextChange","newText","currentSegments","currentActiveStyles","reconcileTextChange","onSelectionChange","newSelection","
|
|
1
|
+
{"version":3,"names":["_react","require","_defaultStyles","_parser","_formatter","_serializer","_useSelection","_useFormatting","useRichText","options","initialSegments","onChangeSegments","onChangeText","segments","setSegments","useState","length","createSegment","activeStyles","setActiveStyles","EMPTY_FORMAT_STYLE","selection","handleSelectionChange","useSelection","segmentsRef","useRef","current","selectionRef","activeStylesRef","preserveActiveStylesRef","updateSegments","useCallback","newSegments","segmentsToPlainText","formatting","useFormatting","onSegmentsChange","onActiveStylesChange","handleTextChange","newText","currentSegments","currentSelection","currentActiveStyles","start","end","getSelectionStyle","reconcileTextChange","onSelectionChange","newSelection","previousSelection","shouldPreserveActiveStyles","pos","findPositionInSegments","seg","segmentIndex","styles","getPlainText","getOutput","format","serializeSegments","exportJSON","JSON","parse","stringify","importJSON","safeSegments","clear","toggleFormat","setStyleProperty","key","value","setHeading","level","setColor","color","setBackgroundColor","setFontSize","size","state","actions","isFormatActive","currentSelectionStyle"],"sourceRoot":"../../../src","sources":["hooks/useRichText.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":[],"sourceRoot":"
|
|
1
|
+
{"version":3,"names":[],"sourceRoot":"../../../src","sources":["hooks/useSelection.d.ts"],"mappings":"","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","require","useSelection","initialSelection","selection","setSelection","useState","start","end","selectionRef","useRef","current","handleSelectionChange","useCallback","newSelection","getSelection","hasSelection"],"sourceRoot":"
|
|
1
|
+
{"version":3,"names":["_react","require","useSelection","initialSelection","selection","setSelection","useState","start","end","selectionRef","useRef","current","handleSelectionChange","useCallback","newSelection","getSelection","hasSelection"],"sourceRoot":"../../../src","sources":["hooks/useSelection.ts"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAGA;AACA;AACA;AACA;AACA;AACO,SAASC,YAAYA,CAACC,gBAAiC,EAAE;EAC9D,MAAM,CAACC,SAAS,EAAEC,YAAY,CAAC,GAAG,IAAAC,eAAQ,EACxCH,gBAAgB,IAAI;IAAEI,KAAK,EAAE,CAAC;IAAEC,GAAG,EAAE;EAAE,CACzC,CAAC;;EAED;EACA,MAAMC,YAAY,GAAG,IAAAC,aAAM,EAACN,SAAS,CAAC;EACtCK,YAAY,CAACE,OAAO,GAAGP,SAAS;EAEhC,MAAMQ,qBAAqB,GAAG,IAAAC,kBAAW,EACtCC,YAA4B,IAAK;IAChCT,YAAY,CAACS,YAAY,CAAC;EAC5B,CAAC,EACD,EACF,CAAC;EAED,MAAMC,YAAY,GAAG,IAAAF,kBAAW,EAAC,MAAsB;IACrD,OAAOJ,YAAY,CAACE,OAAO;EAC7B,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMK,YAAY,GAAG,IAAAH,kBAAW,EAAC,MAAe;IAC9C,OAAOJ,YAAY,CAACE,OAAO,CAACJ,KAAK,KAAKE,YAAY,CAACE,OAAO,CAACH,GAAG;EAChE,CAAC,EAAE,EAAE,CAAC;EAEN,OAAO;IACLJ,SAAS;IACTC,YAAY;IACZO,qBAAqB;IACrBG,YAAY;IACZC;EACF,CAAC;AACH","ignoreList":[]}
|
package/lib/commonjs/index.d.js
CHANGED
|
@@ -117,6 +117,18 @@ Object.defineProperty(exports, "segmentToTextStyle", {
|
|
|
117
117
|
return _styleMapper.segmentToTextStyle;
|
|
118
118
|
}
|
|
119
119
|
});
|
|
120
|
+
Object.defineProperty(exports, "segmentsToHTML", {
|
|
121
|
+
enumerable: true,
|
|
122
|
+
get: function () {
|
|
123
|
+
return _serializer.segmentsToHTML;
|
|
124
|
+
}
|
|
125
|
+
});
|
|
126
|
+
Object.defineProperty(exports, "segmentsToMarkdown", {
|
|
127
|
+
enumerable: true,
|
|
128
|
+
get: function () {
|
|
129
|
+
return _serializer.segmentsToMarkdown;
|
|
130
|
+
}
|
|
131
|
+
});
|
|
120
132
|
Object.defineProperty(exports, "segmentsToPlainText", {
|
|
121
133
|
enumerable: true,
|
|
122
134
|
get: function () {
|
|
@@ -129,6 +141,12 @@ Object.defineProperty(exports, "segmentsToTextStyles", {
|
|
|
129
141
|
return _styleMapper.segmentsToTextStyles;
|
|
130
142
|
}
|
|
131
143
|
});
|
|
144
|
+
Object.defineProperty(exports, "serializeSegments", {
|
|
145
|
+
enumerable: true,
|
|
146
|
+
get: function () {
|
|
147
|
+
return _serializer.serializeSegments;
|
|
148
|
+
}
|
|
149
|
+
});
|
|
132
150
|
Object.defineProperty(exports, "setHeadingOnLine", {
|
|
133
151
|
enumerable: true,
|
|
134
152
|
get: function () {
|
|
@@ -182,5 +200,6 @@ var _RichTextContext = require("./context/RichTextContext");
|
|
|
182
200
|
var _parser = require("./utils/parser");
|
|
183
201
|
var _formatter = require("./utils/formatter");
|
|
184
202
|
var _styleMapper = require("./utils/styleMapper");
|
|
203
|
+
var _serializer = require("./utils/serializer");
|
|
185
204
|
var _defaultStyles = require("./constants/defaultStyles");
|
|
186
205
|
//# sourceMappingURL=index.d.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_RichTextInput","require","_OverlayText","_Toolbar","_ToolbarButton","_useRichText","_useSelection","_useFormatting","_RichTextContext","_parser","_formatter","_styleMapper","_defaultStyles"],"sourceRoot":"
|
|
1
|
+
{"version":3,"names":["_RichTextInput","require","_OverlayText","_Toolbar","_ToolbarButton","_useRichText","_useSelection","_useFormatting","_RichTextContext","_parser","_formatter","_styleMapper","_serializer","_defaultStyles"],"sourceRoot":"../../src","sources":["index.d.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,cAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AACA,IAAAG,cAAA,GAAAH,OAAA;AACA,IAAAI,YAAA,GAAAJ,OAAA;AAEA,IAAAK,aAAA,GAAAL,OAAA;AACA,IAAAM,cAAA,GAAAN,OAAA;AACA,IAAAO,gBAAA,GAAAP,OAAA;AAEA,IAAAQ,OAAA,GAAAR,OAAA;AACA,IAAAS,UAAA,GAAAT,OAAA;AACA,IAAAU,YAAA,GAAAV,OAAA;AACA,IAAAW,WAAA,GAAAX,OAAA;AACA,IAAAY,cAAA,GAAAZ,OAAA","ignoreList":[]}
|
package/lib/commonjs/index.js
CHANGED
|
@@ -117,6 +117,18 @@ Object.defineProperty(exports, "segmentToTextStyle", {
|
|
|
117
117
|
return _styleMapper.segmentToTextStyle;
|
|
118
118
|
}
|
|
119
119
|
});
|
|
120
|
+
Object.defineProperty(exports, "segmentsToHTML", {
|
|
121
|
+
enumerable: true,
|
|
122
|
+
get: function () {
|
|
123
|
+
return _serializer.segmentsToHTML;
|
|
124
|
+
}
|
|
125
|
+
});
|
|
126
|
+
Object.defineProperty(exports, "segmentsToMarkdown", {
|
|
127
|
+
enumerable: true,
|
|
128
|
+
get: function () {
|
|
129
|
+
return _serializer.segmentsToMarkdown;
|
|
130
|
+
}
|
|
131
|
+
});
|
|
120
132
|
Object.defineProperty(exports, "segmentsToPlainText", {
|
|
121
133
|
enumerable: true,
|
|
122
134
|
get: function () {
|
|
@@ -129,6 +141,12 @@ Object.defineProperty(exports, "segmentsToTextStyles", {
|
|
|
129
141
|
return _styleMapper.segmentsToTextStyles;
|
|
130
142
|
}
|
|
131
143
|
});
|
|
144
|
+
Object.defineProperty(exports, "serializeSegments", {
|
|
145
|
+
enumerable: true,
|
|
146
|
+
get: function () {
|
|
147
|
+
return _serializer.serializeSegments;
|
|
148
|
+
}
|
|
149
|
+
});
|
|
132
150
|
Object.defineProperty(exports, "setHeadingOnLine", {
|
|
133
151
|
enumerable: true,
|
|
134
152
|
get: function () {
|
|
@@ -182,5 +200,6 @@ var _RichTextContext = require("./context/RichTextContext");
|
|
|
182
200
|
var _parser = require("./utils/parser");
|
|
183
201
|
var _formatter = require("./utils/formatter");
|
|
184
202
|
var _styleMapper = require("./utils/styleMapper");
|
|
203
|
+
var _serializer = require("./utils/serializer");
|
|
185
204
|
var _defaultStyles = require("./constants/defaultStyles");
|
|
186
205
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_RichTextInput","require","_OverlayText","_Toolbar","_ToolbarButton","_useRichText","_useSelection","_useFormatting","_RichTextContext","_parser","_formatter","_styleMapper","_defaultStyles"],"sourceRoot":"
|
|
1
|
+
{"version":3,"names":["_RichTextInput","require","_OverlayText","_Toolbar","_ToolbarButton","_useRichText","_useSelection","_useFormatting","_RichTextContext","_parser","_formatter","_styleMapper","_serializer","_defaultStyles"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,IAAAA,cAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AACA,IAAAG,cAAA,GAAAH,OAAA;AAGA,IAAAI,YAAA,GAAAJ,OAAA;AAEA,IAAAK,aAAA,GAAAL,OAAA;AACA,IAAAM,cAAA,GAAAN,OAAA;AAGA,IAAAO,gBAAA,GAAAP,OAAA;AAOA,IAAAQ,OAAA,GAAAR,OAAA;AAOA,IAAAS,UAAA,GAAAT,OAAA;AAOA,IAAAU,YAAA,GAAAV,OAAA;AAKA,IAAAW,WAAA,GAAAX,OAAA;AAOA,IAAAY,cAAA,GAAAZ,OAAA","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":[],"sourceRoot":"
|
|
1
|
+
{"version":3,"names":[],"sourceRoot":"../../../src","sources":["types/index.d.ts"],"mappings":"","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":[],"sourceRoot":"
|
|
1
|
+
{"version":3,"names":[],"sourceRoot":"../../../src","sources":["types/index.ts"],"mappings":"","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_parser","require"],"sourceRoot":"
|
|
1
|
+
{"version":3,"names":["_parser","require"],"sourceRoot":"../../../src","sources":["utils/formatter.d.ts"],"mappings":";;;;;;;;;;;AA2BA,IAAAA,OAAA,GAAAC,OAAA","ignoreList":[]}
|
|
@@ -15,7 +15,6 @@ exports.setHeadingOnLine = setHeadingOnLine;
|
|
|
15
15
|
exports.setStyleOnSelection = setStyleOnSelection;
|
|
16
16
|
exports.toggleFormatOnSelection = toggleFormatOnSelection;
|
|
17
17
|
var _parser = require("../utils/parser");
|
|
18
|
-
var _defaultStyles = require("../constants/defaultStyles");
|
|
19
18
|
/**
|
|
20
19
|
* Toggle an inline format (bold, italic, etc.) on the selected range.
|
|
21
20
|
*
|
|
@@ -70,9 +69,7 @@ function setHeadingOnLine(segments, selection, level) {
|
|
|
70
69
|
lineEnd
|
|
71
70
|
} = getLineRange(plainText, selection.start);
|
|
72
71
|
const headingStyle = {
|
|
73
|
-
heading: level
|
|
74
|
-
fontSize: _defaultStyles.HEADING_FONT_SIZES[level],
|
|
75
|
-
bold: level !== 'none' ? true : undefined
|
|
72
|
+
heading: level === 'none' ? undefined : level
|
|
76
73
|
};
|
|
77
74
|
return applyStyleToRange(segments, lineStart, lineEnd, headingStyle);
|
|
78
75
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_parser","require","
|
|
1
|
+
{"version":3,"names":["_parser","require","toggleFormatOnSelection","segments","selection","format","start","end","normalizeSelection","selectedSegments","extractSegmentsInRange","allHaveFormat","every","s","styles","applyStyleToRange","setStyleOnSelection","key","value","setHeadingOnLine","level","plainText","segmentsToPlainText","lineStart","lineEnd","getLineRange","headingStyle","heading","undefined","isFormatActiveInSelection","selected","length","getSelectionStyle","pos","findPositionInSegments","segmentIndex","result","i","bold","italic","underline","strikethrough","code","color","backgroundColor","fontSize","Math","min","max","seg","segStart","segEnd","text","overlapStart","overlapEnd","push","createSegment","slice","styleDelta","newStyles","mergeAdjacentSegments","position"],"sourceRoot":"../../../src","sources":["utils/formatter.ts"],"mappings":";;;;;;;;;;;;;;;;AAOA,IAAAA,OAAA,GAAAC,OAAA;AAOA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASC,uBAAuBA,CACrCC,QAAyB,EACzBC,SAAyB,EACzBC,MAAkB,EACD;EACjB,IAAID,SAAS,CAACE,KAAK,KAAKF,SAAS,CAACG,GAAG,EAAE;IACrC;IACA,OAAOJ,QAAQ;EACjB;EAEA,MAAM;IAAEG,KAAK;IAAEC;EAAI,CAAC,GAAGC,kBAAkB,CAACJ,SAAS,CAAC;;EAEpD;EACA,MAAMK,gBAAgB,GAAGC,sBAAsB,CAACP,QAAQ,EAAEG,KAAK,EAAEC,GAAG,CAAC;EACrE,MAAMI,aAAa,GAAGF,gBAAgB,CAACG,KAAK,CAAEC,CAAC,IAAK,CAAC,CAACA,CAAC,CAACC,MAAM,CAACT,MAAM,CAAC,CAAC;;EAEvE;EACA,OAAOU,iBAAiB,CAACZ,QAAQ,EAAEG,KAAK,EAAEC,GAAG,EAAE;IAC7C,CAACF,MAAM,GAAG,CAACM;EACb,CAAC,CAAC;AACJ;;AAEA;AACA;AACA;AACO,SAASK,mBAAmBA,CACjCb,QAAyB,EACzBC,SAAyB,EACzBa,GAAM,EACNC,KAAqB,EACJ;EACjB,IAAId,SAAS,CAACE,KAAK,KAAKF,SAAS,CAACG,GAAG,EAAE;IACrC,OAAOJ,QAAQ;EACjB;EAEA,MAAM;IAAEG,KAAK;IAAEC;EAAI,CAAC,GAAGC,kBAAkB,CAACJ,SAAS,CAAC;EACpD,OAAOW,iBAAiB,CAACZ,QAAQ,EAAEG,KAAK,EAAEC,GAAG,EAAE;IAAE,CAACU,GAAG,GAAGC;EAAM,CAAC,CAAC;AAClE;;AAEA;AACA;AACA;AACO,SAASC,gBAAgBA,CAC9BhB,QAAyB,EACzBC,SAAyB,EACzBgB,KAAmB,EACF;EACjB,MAAMC,SAAS,GAAG,IAAAC,2BAAmB,EAACnB,QAAQ,CAAC;EAC/C,MAAM;IAAEoB,SAAS;IAAEC;EAAQ,CAAC,GAAGC,YAAY,CAACJ,SAAS,EAAEjB,SAAS,CAACE,KAAK,CAAC;EAEvE,MAAMoB,YAAkC,GAAG;IACzCC,OAAO,EAAEP,KAAK,KAAK,MAAM,GAAGQ,SAAS,GAAGR;EAC1C,CAAC;EAED,OAAOL,iBAAiB,CAACZ,QAAQ,EAAEoB,SAAS,EAAEC,OAAO,EAAEE,YAAY,CAAC;AACtE;;AAEA;AACA;AACA;AACO,SAASG,yBAAyBA,CACvC1B,QAAyB,EACzBC,SAAyB,EACzBC,MAAkB,EACT;EACT,IAAID,SAAS,CAACE,KAAK,KAAKF,SAAS,CAACG,GAAG,EAAE;IACrC,OAAO,KAAK;EACd;EAEA,MAAM;IAAED,KAAK;IAAEC;EAAI,CAAC,GAAGC,kBAAkB,CAACJ,SAAS,CAAC;EACpD,MAAM0B,QAAQ,GAAGpB,sBAAsB,CAACP,QAAQ,EAAEG,KAAK,EAAEC,GAAG,CAAC;EAC7D,OAAOuB,QAAQ,CAACC,MAAM,GAAG,CAAC,IAAID,QAAQ,CAAClB,KAAK,CAAEC,CAAC,IAAK,CAAC,CAACA,CAAC,CAACC,MAAM,CAACT,MAAM,CAAC,CAAC;AACzE;;AAEA;AACA;AACA;AACA;AACO,SAAS2B,iBAAiBA,CAC/B7B,QAAyB,EACzBC,SAAyB,EACZ;EACb,IAAIA,SAAS,CAACE,KAAK,KAAKF,SAAS,CAACG,GAAG,EAAE;IACrC;IACA,MAAM0B,GAAG,GAAG,IAAAC,8BAAsB,EAAC/B,QAAQ,EAAEC,SAAS,CAACE,KAAK,CAAC;IAC7D,IAAIH,QAAQ,CAAC4B,MAAM,GAAG,CAAC,EAAE;MACvB,OAAO;QAAE,GAAG5B,QAAQ,CAAC8B,GAAG,CAACE,YAAY,CAAC,CAACrB;MAAO,CAAC;IACjD;IACA,OAAO,CAAC,CAAC;EACX;EAEA,MAAM;IAAER,KAAK;IAAEC;EAAI,CAAC,GAAGC,kBAAkB,CAACJ,SAAS,CAAC;EACpD,MAAM0B,QAAQ,GAAGpB,sBAAsB,CAACP,QAAQ,EAAEG,KAAK,EAAEC,GAAG,CAAC;EAE7D,IAAIuB,QAAQ,CAACC,MAAM,KAAK,CAAC,EAAE,OAAO,CAAC,CAAC;EAEpC,MAAMK,MAAmB,GAAG;IAAE,GAAGN,QAAQ,CAAC,CAAC,CAAC,CAAChB;EAAO,CAAC;EAErD,KAAK,IAAIuB,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGP,QAAQ,CAACC,MAAM,EAAEM,CAAC,EAAE,EAAE;IACxC,MAAMxB,CAAC,GAAGiB,QAAQ,CAACO,CAAC,CAAC,CAACvB,MAAM;IAC5B,IAAIsB,MAAM,CAACE,IAAI,KAAKV,SAAS,IAAIQ,MAAM,CAACE,IAAI,KAAK,CAAC,CAACzB,CAAC,CAACyB,IAAI,EACvDF,MAAM,CAACE,IAAI,GAAGV,SAAS;IACzB,IAAIQ,MAAM,CAACG,MAAM,KAAKX,SAAS,IAAIQ,MAAM,CAACG,MAAM,KAAK,CAAC,CAAC1B,CAAC,CAAC0B,MAAM,EAC7DH,MAAM,CAACG,MAAM,GAAGX,SAAS;IAC3B,IAAIQ,MAAM,CAACI,SAAS,KAAKZ,SAAS,IAAIQ,MAAM,CAACI,SAAS,KAAK,CAAC,CAAC3B,CAAC,CAAC2B,SAAS,EACtEJ,MAAM,CAACI,SAAS,GAAGZ,SAAS;IAC9B,IACEQ,MAAM,CAACK,aAAa,KAAKb,SAAS,IAClCQ,MAAM,CAACK,aAAa,KAAK,CAAC,CAAC5B,CAAC,CAAC4B,aAAa,EAE1CL,MAAM,CAACK,aAAa,GAAGb,SAAS;IAClC,IAAIQ,MAAM,CAACM,IAAI,KAAKd,SAAS,IAAIQ,MAAM,CAACM,IAAI,KAAK,CAAC,CAAC7B,CAAC,CAAC6B,IAAI,EACvDN,MAAM,CAACM,IAAI,GAAGd,SAAS;IACzB,IAAIQ,MAAM,CAACO,KAAK,KAAK9B,CAAC,CAAC8B,KAAK,EAAEP,MAAM,CAACO,KAAK,GAAGf,SAAS;IACtD,IAAIQ,MAAM,CAACQ,eAAe,KAAK/B,CAAC,CAAC+B,eAAe,EAC9CR,MAAM,CAACQ,eAAe,GAAGhB,SAAS;IACpC,IAAIQ,MAAM,CAACS,QAAQ,KAAKhC,CAAC,CAACgC,QAAQ,EAAET,MAAM,CAACS,QAAQ,GAAGjB,SAAS;IAC/D,IAAIQ,MAAM,CAACT,OAAO,KAAKd,CAAC,CAACc,OAAO,EAAES,MAAM,CAACT,OAAO,GAAGC,SAAS;EAC9D;EAEA,OAAOQ,MAAM;AACf;;AAEA;;AAEA;AACA;AACA;AACA,SAAS5B,kBAAkBA,CAACJ,SAAyB,EAAkB;EACrE,OAAO;IACLE,KAAK,EAAEwC,IAAI,CAACC,GAAG,CAAC3C,SAAS,CAACE,KAAK,EAAEF,SAAS,CAACG,GAAG,CAAC;IAC/CA,GAAG,EAAEuC,IAAI,CAACE,GAAG,CAAC5C,SAAS,CAACE,KAAK,EAAEF,SAAS,CAACG,GAAG;EAC9C,CAAC;AACH;;AAEA;AACA;AACA;AACA,SAASG,sBAAsBA,CAC7BP,QAAyB,EACzBG,KAAa,EACbC,GAAW,EACM;EACjB,MAAM6B,MAAuB,GAAG,EAAE;EAClC,IAAIH,GAAG,GAAG,CAAC;EAEX,KAAK,MAAMgB,GAAG,IAAI9C,QAAQ,EAAE;IAC1B,MAAM+C,QAAQ,GAAGjB,GAAG;IACpB,MAAMkB,MAAM,GAAGlB,GAAG,GAAGgB,GAAG,CAACG,IAAI,CAACrB,MAAM;IAEpC,IAAIoB,MAAM,IAAI7C,KAAK,EAAE;MACnB2B,GAAG,GAAGkB,MAAM;MACZ;IACF;IACA,IAAID,QAAQ,IAAI3C,GAAG,EAAE;MACnB;IACF;;IAEA;IACA,MAAM8C,YAAY,GAAGP,IAAI,CAACE,GAAG,CAACE,QAAQ,EAAE5C,KAAK,CAAC;IAC9C,MAAMgD,UAAU,GAAGR,IAAI,CAACC,GAAG,CAACI,MAAM,EAAE5C,GAAG,CAAC;IACxC6B,MAAM,CAACmB,IAAI,CACT,IAAAC,qBAAa,EACXP,GAAG,CAACG,IAAI,CAACK,KAAK,CAACJ,YAAY,GAAGH,QAAQ,EAAEI,UAAU,GAAGJ,QAAQ,CAAC,EAC9DD,GAAG,CAACnC,MACN,CACF,CAAC;IAEDmB,GAAG,GAAGkB,MAAM;EACd;EAEA,OAAOf,MAAM;AACf;;AAEA;AACA;AACA;AACA;AACA,SAASrB,iBAAiBA,CACxBZ,QAAyB,EACzBG,KAAa,EACbC,GAAW,EACXmD,UAAgC,EACf;EACjB,MAAMtB,MAAuB,GAAG,EAAE;EAClC,IAAIH,GAAG,GAAG,CAAC;EAEX,KAAK,MAAMgB,GAAG,IAAI9C,QAAQ,EAAE;IAC1B,MAAM+C,QAAQ,GAAGjB,GAAG;IACpB,MAAMkB,MAAM,GAAGlB,GAAG,GAAGgB,GAAG,CAACG,IAAI,CAACrB,MAAM;IAEpC,IAAIoB,MAAM,IAAI7C,KAAK,IAAI4C,QAAQ,IAAI3C,GAAG,EAAE;MACtC;MACA6B,MAAM,CAACmB,IAAI,CAAC,IAAAC,qBAAa,EAACP,GAAG,CAACG,IAAI,EAAEH,GAAG,CAACnC,MAAM,CAAC,CAAC;IAClD,CAAC,MAAM;MACL;MACA,IAAIoC,QAAQ,GAAG5C,KAAK,EAAE;QACpB;QACA8B,MAAM,CAACmB,IAAI,CACT,IAAAC,qBAAa,EAACP,GAAG,CAACG,IAAI,CAACK,KAAK,CAAC,CAAC,EAAEnD,KAAK,GAAG4C,QAAQ,CAAC,EAAED,GAAG,CAACnC,MAAM,CAC/D,CAAC;MACH;;MAEA;MACA,MAAMuC,YAAY,GAAGP,IAAI,CAACE,GAAG,CAACE,QAAQ,EAAE5C,KAAK,CAAC;MAC9C,MAAMgD,UAAU,GAAGR,IAAI,CAACC,GAAG,CAACI,MAAM,EAAE5C,GAAG,CAAC;MACxC,MAAMoD,SAAS,GAAG;QAAE,GAAGV,GAAG,CAACnC,MAAM;QAAE,GAAG4C;MAAW,CAAC;MAClDtB,MAAM,CAACmB,IAAI,CACT,IAAAC,qBAAa,EACXP,GAAG,CAACG,IAAI,CAACK,KAAK,CAACJ,YAAY,GAAGH,QAAQ,EAAEI,UAAU,GAAGJ,QAAQ,CAAC,EAC9DS,SACF,CACF,CAAC;MAED,IAAIR,MAAM,GAAG5C,GAAG,EAAE;QAChB;QACA6B,MAAM,CAACmB,IAAI,CACT,IAAAC,qBAAa,EAACP,GAAG,CAACG,IAAI,CAACK,KAAK,CAAClD,GAAG,GAAG2C,QAAQ,CAAC,EAAED,GAAG,CAACnC,MAAM,CAC1D,CAAC;MACH;IACF;IAEAmB,GAAG,GAAGkB,MAAM;EACd;EAEA,OAAO,IAAAS,6BAAqB,EAACxB,MAAM,CAAC;AACtC;;AAEA;AACA;AACA;AACA,SAASX,YAAYA,CACnB2B,IAAY,EACZS,QAAgB,EACwB;EACxC,IAAItC,SAAS,GAAGsC,QAAQ;EACxB,OAAOtC,SAAS,GAAG,CAAC,IAAI6B,IAAI,CAAC7B,SAAS,GAAG,CAAC,CAAC,KAAK,IAAI,EAAE;IACpDA,SAAS,EAAE;EACb;EAEA,IAAIC,OAAO,GAAGqC,QAAQ;EACtB,OAAOrC,OAAO,GAAG4B,IAAI,CAACrB,MAAM,IAAIqB,IAAI,CAAC5B,OAAO,CAAC,KAAK,IAAI,EAAE;IACtDA,OAAO,EAAE;EACX;EAEA,OAAO;IAAED,SAAS;IAAEC;EAAQ,CAAC;AAC/B;;AAEA","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":[],"sourceRoot":"
|
|
1
|
+
{"version":3,"names":[],"sourceRoot":"../../../src","sources":["utils/parser.d.ts"],"mappings":"","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_defaultStyles","require","createSegment","text","styles","EMPTY_FORMAT_STYLE","getTotalLength","segments","reduce","sum","seg","length","segmentsToPlainText","map","s","join","findPositionInSegments","globalPosition","remaining","i","segLen","segmentIndex","offsetInSegment","lastIndex","Math","max","splitSegment","segment","offset","before","slice","after","areStylesEqual","a","b","bold","italic","underline","strikethrough","code","color","undefined","backgroundColor","fontSize","heading","mergeAdjacentSegments","result","last","newSeg","push","reconcileTextChange","oldSegments","newText","activeStyles","oldText","prefixLen","minLen","min","suffixLen","deleteStart","deleteEnd","insertedText","pos","phase","insertedNewSegment","segStart","segEnd"],"sourceRoot":"
|
|
1
|
+
{"version":3,"names":["_defaultStyles","require","createSegment","text","styles","EMPTY_FORMAT_STYLE","getTotalLength","segments","reduce","sum","seg","length","segmentsToPlainText","map","s","join","findPositionInSegments","globalPosition","remaining","i","segLen","segmentIndex","offsetInSegment","lastIndex","Math","max","splitSegment","segment","offset","before","slice","after","areStylesEqual","a","b","bold","italic","underline","strikethrough","code","color","undefined","backgroundColor","fontSize","heading","mergeAdjacentSegments","result","last","newSeg","push","reconcileTextChange","oldSegments","newText","activeStyles","oldText","prefixLen","minLen","min","suffixLen","deleteStart","deleteEnd","insertedText","pos","phase","insertedNewSegment","segStart","segEnd"],"sourceRoot":"../../../src","sources":["utils/parser.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sourceRoot":"../../../src","sources":["utils/serializer.d.ts"],"mappings":"","ignoreList":[]}
|
|
@@ -0,0 +1,163 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.segmentsToHTML = segmentsToHTML;
|
|
7
|
+
exports.segmentsToMarkdown = segmentsToMarkdown;
|
|
8
|
+
exports.serializeSegments = serializeSegments;
|
|
9
|
+
/**
|
|
10
|
+
* Serialize styled segments as Markdown or HTML.
|
|
11
|
+
*/
|
|
12
|
+
function serializeSegments(segments, format = 'markdown') {
|
|
13
|
+
const lines = splitSegmentsByLine(segments);
|
|
14
|
+
return lines.map(line => serializeLine(line, format)).join('\n');
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* Convenience wrapper for Markdown output.
|
|
19
|
+
*/
|
|
20
|
+
function segmentsToMarkdown(segments) {
|
|
21
|
+
return serializeSegments(segments, 'markdown');
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* Convenience wrapper for HTML output.
|
|
26
|
+
*/
|
|
27
|
+
function segmentsToHTML(segments) {
|
|
28
|
+
return serializeSegments(segments, 'html');
|
|
29
|
+
}
|
|
30
|
+
function splitSegmentsByLine(segments) {
|
|
31
|
+
const lines = [[]];
|
|
32
|
+
for (const segment of segments) {
|
|
33
|
+
const parts = segment.text.split('\n');
|
|
34
|
+
parts.forEach((part, index) => {
|
|
35
|
+
if (part.length > 0) {
|
|
36
|
+
lines[lines.length - 1]?.push({
|
|
37
|
+
text: part,
|
|
38
|
+
styles: {
|
|
39
|
+
...segment.styles
|
|
40
|
+
}
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
if (index < parts.length - 1) {
|
|
44
|
+
lines.push([]);
|
|
45
|
+
}
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
return lines;
|
|
49
|
+
}
|
|
50
|
+
function serializeLine(line, format) {
|
|
51
|
+
const heading = getLineHeading(line);
|
|
52
|
+
const content = line.map(fragment => serializeFragment(fragment, format, heading)).join('');
|
|
53
|
+
if (format === 'html') {
|
|
54
|
+
const blockTag = heading ?? 'p';
|
|
55
|
+
return `<${blockTag}>${content}</${blockTag}>`;
|
|
56
|
+
}
|
|
57
|
+
const headingPrefix = getHeadingPrefix(heading);
|
|
58
|
+
if (!headingPrefix) {
|
|
59
|
+
return content;
|
|
60
|
+
}
|
|
61
|
+
return content.length > 0 ? `${headingPrefix} ${content}` : headingPrefix;
|
|
62
|
+
}
|
|
63
|
+
function serializeFragment(fragment, format, lineHeading) {
|
|
64
|
+
const normalizedStyles = {
|
|
65
|
+
...fragment.styles,
|
|
66
|
+
heading: undefined,
|
|
67
|
+
// Markdown headings already express emphasis at the block level.
|
|
68
|
+
bold: lineHeading && lineHeading !== 'none' ? false : fragment.styles.bold
|
|
69
|
+
};
|
|
70
|
+
return format === 'html' ? serializeHtmlFragment(fragment.text, normalizedStyles) : serializeMarkdownFragment(fragment.text, normalizedStyles);
|
|
71
|
+
}
|
|
72
|
+
function serializeHtmlFragment(text, styles) {
|
|
73
|
+
let result = escapeHtml(text);
|
|
74
|
+
if (styles.code) {
|
|
75
|
+
result = `<code>${result}</code>`;
|
|
76
|
+
}
|
|
77
|
+
if (styles.bold) {
|
|
78
|
+
result = `<strong>${result}</strong>`;
|
|
79
|
+
}
|
|
80
|
+
if (styles.italic) {
|
|
81
|
+
result = `<em>${result}</em>`;
|
|
82
|
+
}
|
|
83
|
+
if (styles.underline) {
|
|
84
|
+
result = `<u>${result}</u>`;
|
|
85
|
+
}
|
|
86
|
+
if (styles.strikethrough) {
|
|
87
|
+
result = `<s>${result}</s>`;
|
|
88
|
+
}
|
|
89
|
+
const styleAttribute = buildInlineStyle(styles);
|
|
90
|
+
if (styleAttribute) {
|
|
91
|
+
result = `<span style="${styleAttribute}">${result}</span>`;
|
|
92
|
+
}
|
|
93
|
+
return result;
|
|
94
|
+
}
|
|
95
|
+
function serializeMarkdownFragment(text, styles) {
|
|
96
|
+
let result = escapeMarkdown(text);
|
|
97
|
+
if (styles.code) {
|
|
98
|
+
result = wrapInlineCode(text);
|
|
99
|
+
}
|
|
100
|
+
if (styles.bold) {
|
|
101
|
+
result = `**${result}**`;
|
|
102
|
+
}
|
|
103
|
+
if (styles.italic) {
|
|
104
|
+
result = `*${result}*`;
|
|
105
|
+
}
|
|
106
|
+
if (styles.strikethrough) {
|
|
107
|
+
result = `~~${result}~~`;
|
|
108
|
+
}
|
|
109
|
+
if (styles.underline) {
|
|
110
|
+
result = `<u>${result}</u>`;
|
|
111
|
+
}
|
|
112
|
+
const styleAttribute = buildInlineStyle(styles);
|
|
113
|
+
if (styleAttribute) {
|
|
114
|
+
result = `<span style="${styleAttribute}">${result}</span>`;
|
|
115
|
+
}
|
|
116
|
+
return result;
|
|
117
|
+
}
|
|
118
|
+
function buildInlineStyle(styles) {
|
|
119
|
+
const cssRules = [];
|
|
120
|
+
if (styles.color) {
|
|
121
|
+
cssRules.push(`color: ${styles.color}`);
|
|
122
|
+
}
|
|
123
|
+
if (styles.backgroundColor) {
|
|
124
|
+
cssRules.push(`background-color: ${styles.backgroundColor}`);
|
|
125
|
+
}
|
|
126
|
+
if (styles.fontSize) {
|
|
127
|
+
cssRules.push(`font-size: ${styles.fontSize}px`);
|
|
128
|
+
}
|
|
129
|
+
return cssRules.join('; ');
|
|
130
|
+
}
|
|
131
|
+
function getLineHeading(line) {
|
|
132
|
+
for (const fragment of line) {
|
|
133
|
+
if (fragment.styles.heading && fragment.styles.heading !== 'none') {
|
|
134
|
+
return fragment.styles.heading;
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
return undefined;
|
|
138
|
+
}
|
|
139
|
+
function getHeadingPrefix(heading) {
|
|
140
|
+
switch (heading) {
|
|
141
|
+
case 'h1':
|
|
142
|
+
return '#';
|
|
143
|
+
case 'h2':
|
|
144
|
+
return '##';
|
|
145
|
+
case 'h3':
|
|
146
|
+
return '###';
|
|
147
|
+
default:
|
|
148
|
+
return undefined;
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
function escapeHtml(text) {
|
|
152
|
+
return text.replaceAll('&', '&').replaceAll('<', '<').replaceAll('>', '>').replaceAll('"', '"').replaceAll("'", ''');
|
|
153
|
+
}
|
|
154
|
+
function escapeMarkdown(text) {
|
|
155
|
+
return text.replace(/([\\`*_~[\]])/g, '\\$1');
|
|
156
|
+
}
|
|
157
|
+
function wrapInlineCode(text) {
|
|
158
|
+
const matches = text.match(/`+/g);
|
|
159
|
+
const longestBacktickRun = matches?.reduce((max, match) => Math.max(max, match.length), 0) ?? 0;
|
|
160
|
+
const fence = '`'.repeat(longestBacktickRun + 1);
|
|
161
|
+
return `${fence}${text}${fence}`;
|
|
162
|
+
}
|
|
163
|
+
//# sourceMappingURL=serializer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["serializeSegments","segments","format","lines","splitSegmentsByLine","map","line","serializeLine","join","segmentsToMarkdown","segmentsToHTML","segment","parts","text","split","forEach","part","index","length","push","styles","heading","getLineHeading","content","fragment","serializeFragment","blockTag","headingPrefix","getHeadingPrefix","lineHeading","normalizedStyles","undefined","bold","serializeHtmlFragment","serializeMarkdownFragment","result","escapeHtml","code","italic","underline","strikethrough","styleAttribute","buildInlineStyle","escapeMarkdown","wrapInlineCode","cssRules","color","backgroundColor","fontSize","replaceAll","replace","matches","match","longestBacktickRun","reduce","max","Math","fence","repeat"],"sourceRoot":"../../../src","sources":["utils/serializer.ts"],"mappings":";;;;;;;;AASA;AACA;AACA;AACO,SAASA,iBAAiBA,CAC/BC,QAAyB,EACzBC,MAAoB,GAAG,UAAU,EACzB;EACR,MAAMC,KAAK,GAAGC,mBAAmB,CAACH,QAAQ,CAAC;EAC3C,OAAOE,KAAK,CAACE,GAAG,CAAEC,IAAI,IAAKC,aAAa,CAACD,IAAI,EAAEJ,MAAM,CAAC,CAAC,CAACM,IAAI,CAAC,IAAI,CAAC;AACpE;;AAEA;AACA;AACA;AACO,SAASC,kBAAkBA,CAACR,QAAyB,EAAU;EACpE,OAAOD,iBAAiB,CAACC,QAAQ,EAAE,UAAU,CAAC;AAChD;;AAEA;AACA;AACA;AACO,SAASS,cAAcA,CAACT,QAAyB,EAAU;EAChE,OAAOD,iBAAiB,CAACC,QAAQ,EAAE,MAAM,CAAC;AAC5C;AAEA,SAASG,mBAAmBA,CAACH,QAAyB,EAAoB;EACxE,MAAME,KAAuB,GAAG,CAAC,EAAE,CAAC;EAEpC,KAAK,MAAMQ,OAAO,IAAIV,QAAQ,EAAE;IAC9B,MAAMW,KAAK,GAAGD,OAAO,CAACE,IAAI,CAACC,KAAK,CAAC,IAAI,CAAC;IAEtCF,KAAK,CAACG,OAAO,CAAC,CAACC,IAAI,EAAEC,KAAK,KAAK;MAC7B,IAAID,IAAI,CAACE,MAAM,GAAG,CAAC,EAAE;QACnBf,KAAK,CAACA,KAAK,CAACe,MAAM,GAAG,CAAC,CAAC,EAAEC,IAAI,CAAC;UAC5BN,IAAI,EAAEG,IAAI;UACVI,MAAM,EAAE;YAAE,GAAGT,OAAO,CAACS;UAAO;QAC9B,CAAC,CAAC;MACJ;MAEA,IAAIH,KAAK,GAAGL,KAAK,CAACM,MAAM,GAAG,CAAC,EAAE;QAC5Bf,KAAK,CAACgB,IAAI,CAAC,EAAE,CAAC;MAChB;IACF,CAAC,CAAC;EACJ;EAEA,OAAOhB,KAAK;AACd;AAEA,SAASI,aAAaA,CACpBD,IAAoB,EACpBJ,MAAoB,EACZ;EACR,MAAMmB,OAAO,GAAGC,cAAc,CAAChB,IAAI,CAAC;EACpC,MAAMiB,OAAO,GAAGjB,IAAI,CACjBD,GAAG,CAAEmB,QAAQ,IAAKC,iBAAiB,CAACD,QAAQ,EAAEtB,MAAM,EAAEmB,OAAO,CAAC,CAAC,CAC/Db,IAAI,CAAC,EAAE,CAAC;EAEX,IAAIN,MAAM,KAAK,MAAM,EAAE;IACrB,MAAMwB,QAAQ,GAAGL,OAAO,IAAI,GAAG;IAC/B,OAAO,IAAIK,QAAQ,IAAIH,OAAO,KAAKG,QAAQ,GAAG;EAChD;EAEA,MAAMC,aAAa,GAAGC,gBAAgB,CAACP,OAAO,CAAC;EAC/C,IAAI,CAACM,aAAa,EAAE;IAClB,OAAOJ,OAAO;EAChB;EAEA,OAAOA,OAAO,CAACL,MAAM,GAAG,CAAC,GAAG,GAAGS,aAAa,IAAIJ,OAAO,EAAE,GAAGI,aAAa;AAC3E;AAEA,SAASF,iBAAiBA,CACxBD,QAAsB,EACtBtB,MAAoB,EACpB2B,WAA0B,EAClB;EACR,MAAMC,gBAA6B,GAAG;IACpC,GAAGN,QAAQ,CAACJ,MAAM;IAClBC,OAAO,EAAEU,SAAS;IAClB;IACAC,IAAI,EACFH,WAAW,IAAIA,WAAW,KAAK,MAAM,GAAG,KAAK,GAAGL,QAAQ,CAACJ,MAAM,CAACY;EACpE,CAAC;EAED,OAAO9B,MAAM,KAAK,MAAM,GACpB+B,qBAAqB,CAACT,QAAQ,CAACX,IAAI,EAAEiB,gBAAgB,CAAC,GACtDI,yBAAyB,CAACV,QAAQ,CAACX,IAAI,EAAEiB,gBAAgB,CAAC;AAChE;AAEA,SAASG,qBAAqBA,CAACpB,IAAY,EAAEO,MAAmB,EAAU;EACxE,IAAIe,MAAM,GAAGC,UAAU,CAACvB,IAAI,CAAC;EAE7B,IAAIO,MAAM,CAACiB,IAAI,EAAE;IACfF,MAAM,GAAG,SAASA,MAAM,SAAS;EACnC;EAEA,IAAIf,MAAM,CAACY,IAAI,EAAE;IACfG,MAAM,GAAG,WAAWA,MAAM,WAAW;EACvC;EAEA,IAAIf,MAAM,CAACkB,MAAM,EAAE;IACjBH,MAAM,GAAG,OAAOA,MAAM,OAAO;EAC/B;EAEA,IAAIf,MAAM,CAACmB,SAAS,EAAE;IACpBJ,MAAM,GAAG,MAAMA,MAAM,MAAM;EAC7B;EAEA,IAAIf,MAAM,CAACoB,aAAa,EAAE;IACxBL,MAAM,GAAG,MAAMA,MAAM,MAAM;EAC7B;EAEA,MAAMM,cAAc,GAAGC,gBAAgB,CAACtB,MAAM,CAAC;EAC/C,IAAIqB,cAAc,EAAE;IAClBN,MAAM,GAAG,gBAAgBM,cAAc,KAAKN,MAAM,SAAS;EAC7D;EAEA,OAAOA,MAAM;AACf;AAEA,SAASD,yBAAyBA,CAACrB,IAAY,EAAEO,MAAmB,EAAU;EAC5E,IAAIe,MAAM,GAAGQ,cAAc,CAAC9B,IAAI,CAAC;EAEjC,IAAIO,MAAM,CAACiB,IAAI,EAAE;IACfF,MAAM,GAAGS,cAAc,CAAC/B,IAAI,CAAC;EAC/B;EAEA,IAAIO,MAAM,CAACY,IAAI,EAAE;IACfG,MAAM,GAAG,KAAKA,MAAM,IAAI;EAC1B;EAEA,IAAIf,MAAM,CAACkB,MAAM,EAAE;IACjBH,MAAM,GAAG,IAAIA,MAAM,GAAG;EACxB;EAEA,IAAIf,MAAM,CAACoB,aAAa,EAAE;IACxBL,MAAM,GAAG,KAAKA,MAAM,IAAI;EAC1B;EAEA,IAAIf,MAAM,CAACmB,SAAS,EAAE;IACpBJ,MAAM,GAAG,MAAMA,MAAM,MAAM;EAC7B;EAEA,MAAMM,cAAc,GAAGC,gBAAgB,CAACtB,MAAM,CAAC;EAC/C,IAAIqB,cAAc,EAAE;IAClBN,MAAM,GAAG,gBAAgBM,cAAc,KAAKN,MAAM,SAAS;EAC7D;EAEA,OAAOA,MAAM;AACf;AAEA,SAASO,gBAAgBA,CAACtB,MAAmB,EAAU;EACrD,MAAMyB,QAAkB,GAAG,EAAE;EAE7B,IAAIzB,MAAM,CAAC0B,KAAK,EAAE;IAChBD,QAAQ,CAAC1B,IAAI,CAAC,UAAUC,MAAM,CAAC0B,KAAK,EAAE,CAAC;EACzC;EAEA,IAAI1B,MAAM,CAAC2B,eAAe,EAAE;IAC1BF,QAAQ,CAAC1B,IAAI,CAAC,qBAAqBC,MAAM,CAAC2B,eAAe,EAAE,CAAC;EAC9D;EAEA,IAAI3B,MAAM,CAAC4B,QAAQ,EAAE;IACnBH,QAAQ,CAAC1B,IAAI,CAAC,cAAcC,MAAM,CAAC4B,QAAQ,IAAI,CAAC;EAClD;EAEA,OAAOH,QAAQ,CAACrC,IAAI,CAAC,IAAI,CAAC;AAC5B;AAEA,SAASc,cAAcA,CAAChB,IAAoB,EAA4B;EACtE,KAAK,MAAMkB,QAAQ,IAAIlB,IAAI,EAAE;IAC3B,IAAIkB,QAAQ,CAACJ,MAAM,CAACC,OAAO,IAAIG,QAAQ,CAACJ,MAAM,CAACC,OAAO,KAAK,MAAM,EAAE;MACjE,OAAOG,QAAQ,CAACJ,MAAM,CAACC,OAAO;IAChC;EACF;EAEA,OAAOU,SAAS;AAClB;AAEA,SAASH,gBAAgBA,CAACP,OAAsB,EAAsB;EACpE,QAAQA,OAAO;IACb,KAAK,IAAI;MACP,OAAO,GAAG;IACZ,KAAK,IAAI;MACP,OAAO,IAAI;IACb,KAAK,IAAI;MACP,OAAO,KAAK;IACd;MACE,OAAOU,SAAS;EACpB;AACF;AAEA,SAASK,UAAUA,CAACvB,IAAY,EAAU;EACxC,OAAOA,IAAI,CACRoC,UAAU,CAAC,GAAG,EAAE,OAAO,CAAC,CACxBA,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,CACvBA,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,CACvBA,UAAU,CAAC,GAAG,EAAE,QAAQ,CAAC,CACzBA,UAAU,CAAC,GAAG,EAAE,OAAO,CAAC;AAC7B;AAEA,SAASN,cAAcA,CAAC9B,IAAY,EAAU;EAC5C,OAAOA,IAAI,CAACqC,OAAO,CAAC,gBAAgB,EAAE,MAAM,CAAC;AAC/C;AAEA,SAASN,cAAcA,CAAC/B,IAAY,EAAU;EAC5C,MAAMsC,OAAO,GAAGtC,IAAI,CAACuC,KAAK,CAAC,KAAK,CAAC;EACjC,MAAMC,kBAAkB,GAAGF,OAAO,EAAEG,MAAM,CACxC,CAACC,GAAG,EAAEH,KAAK,KAAKI,IAAI,CAACD,GAAG,CAACA,GAAG,EAAEH,KAAK,CAAClC,MAAM,CAAC,EAC3C,CACF,CAAC,IAAI,CAAC;EACN,MAAMuC,KAAK,GAAG,GAAG,CAACC,MAAM,CAACL,kBAAkB,GAAG,CAAC,CAAC;EAEhD,OAAO,GAAGI,KAAK,GAAG5C,IAAI,GAAG4C,KAAK,EAAE;AAClC","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":[],"sourceRoot":"
|
|
1
|
+
{"version":3,"names":[],"sourceRoot":"../../../src","sources":["utils/styleMapper.d.ts"],"mappings":"","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_defaultStyles","require","formatStyleToTextStyle","formatStyle","theme","resolvedTheme","DEFAULT_THEME","style","bold","fontWeight","italic","fontStyle","underline","strikethrough","textDecorationLine","code","codeStyle","Object","assign","color","backgroundColor","fontSize","heading","HEADING_FONT_SIZES","lineHeight","segmentToTextStyle","segment","baseStyle","baseTextStyle","styles","segmentsToTextStyles","segments","map","seg"],"sourceRoot":"
|
|
1
|
+
{"version":3,"names":["_defaultStyles","require","formatStyleToTextStyle","formatStyle","theme","resolvedTheme","DEFAULT_THEME","style","bold","fontWeight","italic","fontStyle","underline","strikethrough","textDecorationLine","code","codeStyle","Object","assign","color","backgroundColor","fontSize","heading","HEADING_FONT_SIZES","lineHeight","segmentToTextStyle","segment","baseStyle","baseTextStyle","styles","segmentsToTextStyles","segments","map","seg"],"sourceRoot":"../../../src","sources":["utils/styleMapper.ts"],"mappings":";;;;;;;;AAEA,IAAAA,cAAA,GAAAC,OAAA;AAEA;AACA;AACA;AACA;AACO,SAASC,sBAAsBA,CACpCC,WAAwB,EACxBC,KAAqB,EACV;EACX,MAAMC,aAAa,GAAGD,KAAK,IAAIE,4BAAa;EAC5C,MAAMC,KAAgB,GAAG,CAAC,CAAC;;EAE3B;EACA,IAAIJ,WAAW,CAACK,IAAI,EAAE;IACpBD,KAAK,CAACE,UAAU,GAAG,MAAM;EAC3B;;EAEA;EACA,IAAIN,WAAW,CAACO,MAAM,EAAE;IACtBH,KAAK,CAACI,SAAS,GAAG,QAAQ;EAC5B;;EAEA;EACA,IAAIR,WAAW,CAACS,SAAS,IAAIT,WAAW,CAACU,aAAa,EAAE;IACtDN,KAAK,CAACO,kBAAkB,GAAG,wBAAwB;EACrD,CAAC,MAAM,IAAIX,WAAW,CAACS,SAAS,EAAE;IAChCL,KAAK,CAACO,kBAAkB,GAAG,WAAW;EACxC,CAAC,MAAM,IAAIX,WAAW,CAACU,aAAa,EAAE;IACpCN,KAAK,CAACO,kBAAkB,GAAG,cAAc;EAC3C;;EAEA;EACA,IAAIX,WAAW,CAACY,IAAI,EAAE;IACpB,MAAMC,SAAS,GAAGX,aAAa,CAACW,SAAS,IAAIV,4BAAa,CAACU,SAAS;IACpE,IAAIA,SAAS,EAAE;MACbC,MAAM,CAACC,MAAM,CAACX,KAAK,EAAES,SAAS,CAAC;IACjC;EACF;;EAEA;EACA,IAAIb,WAAW,CAACgB,KAAK,EAAE;IACrBZ,KAAK,CAACY,KAAK,GAAGhB,WAAW,CAACgB,KAAK;EACjC;;EAEA;EACA,IAAIhB,WAAW,CAACiB,eAAe,EAAE;IAC/Bb,KAAK,CAACa,eAAe,GAAGjB,WAAW,CAACiB,eAAe;EACrD;;EAEA;EACA,IAAIjB,WAAW,CAACkB,QAAQ,EAAE;IACxBd,KAAK,CAACc,QAAQ,GAAGlB,WAAW,CAACkB,QAAQ;EACvC;;EAEA;EACA,IAAIlB,WAAW,CAACmB,OAAO,IAAInB,WAAW,CAACmB,OAAO,KAAK,MAAM,EAAE;IACzDf,KAAK,CAACc,QAAQ,GAAGE,iCAAkB,CAACpB,WAAW,CAACmB,OAAO,CAAC;IACxDf,KAAK,CAACE,UAAU,GAAG,MAAM;IACzBF,KAAK,CAACiB,UAAU,GAAGD,iCAAkB,CAACpB,WAAW,CAACmB,OAAO,CAAC,GAAG,GAAG;EAClE;EAEA,OAAOf,KAAK;AACd;;AAEA;AACA;AACA;AACO,SAASkB,kBAAkBA,CAChCC,OAAsB,EACtBtB,KAAqB,EACV;EACX,MAAMuB,SAAS,GAAGvB,KAAK,EAAEwB,aAAa,IAAItB,4BAAa,CAACsB,aAAa,IAAI,CAAC,CAAC;EAC3E,MAAMzB,WAAW,GAAGD,sBAAsB,CAACwB,OAAO,CAACG,MAAM,EAAEzB,KAAK,CAAC;EAEjE,OAAO;IACL,GAAGuB,SAAS;IACZ,GAAGxB;EACL,CAAC;AACH;;AAEA;AACA;AACA;AACO,SAAS2B,oBAAoBA,CAClCC,QAAyB,EACzB3B,KAAqB,EACR;EACb,OAAO2B,QAAQ,CAACC,GAAG,CAAEC,GAAG,IAAKR,kBAAkB,CAACQ,GAAG,EAAE7B,KAAK,CAAC,CAAC;AAC9D","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":[],"sourceRoot":"
|
|
1
|
+
{"version":3,"names":[],"sourceRoot":"../../../src","sources":["components/OverlayText.d.ts"],"mappings":"","ignoreList":[]}
|
|
@@ -20,17 +20,23 @@ export const OverlayText = /*#__PURE__*/React.memo(({
|
|
|
20
20
|
}) => {
|
|
21
21
|
const resolvedTheme = theme ?? DEFAULT_THEME;
|
|
22
22
|
const overlayStyle = resolvedTheme.overlayContainerStyle ?? DEFAULT_THEME.overlayContainerStyle;
|
|
23
|
+
const resolvedBaseTextStyle = baseTextStyle ?? resolvedTheme.baseTextStyle ?? DEFAULT_THEME.baseTextStyle;
|
|
24
|
+
const overlayTheme = {
|
|
25
|
+
...resolvedTheme,
|
|
26
|
+
baseTextStyle: resolvedBaseTextStyle
|
|
27
|
+
};
|
|
23
28
|
return /*#__PURE__*/_jsx(View, {
|
|
24
29
|
style: overlayStyle,
|
|
25
30
|
pointerEvents: "none",
|
|
26
31
|
children: /*#__PURE__*/_jsx(Text, {
|
|
32
|
+
style: resolvedBaseTextStyle,
|
|
27
33
|
children: segments.map((segment, index) => {
|
|
28
34
|
if (segment.text.length === 0 && segments.length > 1) {
|
|
29
35
|
return null;
|
|
30
36
|
}
|
|
31
|
-
const textStyle = segmentToTextStyle(segment,
|
|
37
|
+
const textStyle = segmentToTextStyle(segment, overlayTheme);
|
|
32
38
|
return /*#__PURE__*/_jsx(Text, {
|
|
33
|
-
style:
|
|
39
|
+
style: textStyle,
|
|
34
40
|
children: segment.text
|
|
35
41
|
}, `${index}-${segment.text.slice(0, 8)}`);
|
|
36
42
|
})
|