react-native-richify 1.0.1 → 1.0.2

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 (148) hide show
  1. package/lib/commonjs/components/OverlayText.d.js +6 -0
  2. package/lib/commonjs/components/OverlayText.d.js.map +1 -0
  3. package/lib/commonjs/components/OverlayText.js +45 -0
  4. package/lib/commonjs/components/OverlayText.js.map +1 -0
  5. package/lib/commonjs/components/RichTextInput.d.js +6 -0
  6. package/lib/commonjs/components/RichTextInput.d.js.map +1 -0
  7. package/lib/commonjs/components/RichTextInput.js +160 -0
  8. package/lib/commonjs/components/RichTextInput.js.map +1 -0
  9. package/lib/commonjs/components/Toolbar.d.js +6 -0
  10. package/lib/commonjs/components/Toolbar.d.js.map +1 -0
  11. package/lib/commonjs/components/Toolbar.js +99 -0
  12. package/lib/commonjs/components/Toolbar.js.map +1 -0
  13. package/lib/commonjs/components/ToolbarButton.d.js +6 -0
  14. package/lib/commonjs/components/ToolbarButton.d.js.map +1 -0
  15. package/lib/commonjs/components/ToolbarButton.js +63 -0
  16. package/lib/commonjs/components/ToolbarButton.js.map +1 -0
  17. package/lib/commonjs/constants/defaultStyles.d.js +6 -0
  18. package/lib/commonjs/constants/defaultStyles.d.js.map +1 -0
  19. package/lib/commonjs/constants/defaultStyles.js +172 -0
  20. package/lib/commonjs/constants/defaultStyles.js.map +1 -0
  21. package/lib/commonjs/context/RichTextContext.d.js +6 -0
  22. package/lib/commonjs/context/RichTextContext.d.js.map +1 -0
  23. package/lib/commonjs/context/RichTextContext.js +61 -0
  24. package/lib/commonjs/context/RichTextContext.js.map +1 -0
  25. package/lib/commonjs/hooks/useFormatting.d.js +6 -0
  26. package/lib/commonjs/hooks/useFormatting.d.js.map +1 -0
  27. package/lib/commonjs/hooks/useFormatting.js +82 -0
  28. package/lib/commonjs/hooks/useFormatting.js.map +1 -0
  29. package/lib/commonjs/hooks/useRichText.d.js +6 -0
  30. package/lib/commonjs/hooks/useRichText.d.js.map +1 -0
  31. package/lib/commonjs/hooks/useRichText.js +136 -0
  32. package/lib/commonjs/hooks/useRichText.js.map +1 -0
  33. package/lib/commonjs/hooks/useSelection.d.js +6 -0
  34. package/lib/commonjs/hooks/useSelection.d.js.map +1 -0
  35. package/lib/commonjs/hooks/useSelection.js +39 -0
  36. package/lib/commonjs/hooks/useSelection.js.map +1 -0
  37. package/lib/commonjs/index.d.js +186 -0
  38. package/lib/commonjs/index.d.js.map +1 -0
  39. package/lib/commonjs/index.js +186 -0
  40. package/lib/commonjs/index.js.map +1 -0
  41. package/lib/commonjs/package.json +1 -0
  42. package/lib/commonjs/types/index.d.js +6 -0
  43. package/lib/commonjs/types/index.d.js.map +1 -0
  44. package/lib/commonjs/types/index.js +6 -0
  45. package/lib/commonjs/types/index.js.map +1 -0
  46. package/lib/commonjs/utils/formatter.d.js +13 -0
  47. package/lib/commonjs/utils/formatter.d.js.map +1 -0
  48. package/lib/commonjs/utils/formatter.js +229 -0
  49. package/lib/commonjs/utils/formatter.js.map +1 -0
  50. package/lib/commonjs/utils/parser.d.js +6 -0
  51. package/lib/commonjs/utils/parser.d.js.map +1 -0
  52. package/lib/commonjs/utils/parser.js +221 -0
  53. package/lib/commonjs/utils/parser.js.map +1 -0
  54. package/lib/commonjs/utils/styleMapper.d.js +6 -0
  55. package/lib/commonjs/utils/styleMapper.d.js.map +1 -0
  56. package/lib/commonjs/utils/styleMapper.js +87 -0
  57. package/lib/commonjs/utils/styleMapper.js.map +1 -0
  58. package/lib/module/components/OverlayText.d.js +4 -0
  59. package/lib/module/components/OverlayText.d.js.map +1 -0
  60. package/lib/module/components/OverlayText.js +41 -0
  61. package/lib/module/components/OverlayText.js.map +1 -0
  62. package/lib/module/components/RichTextInput.d.js +4 -0
  63. package/lib/module/components/RichTextInput.d.js.map +1 -0
  64. package/lib/module/components/RichTextInput.js +155 -0
  65. package/lib/module/components/RichTextInput.js.map +1 -0
  66. package/lib/module/components/Toolbar.d.js +4 -0
  67. package/lib/module/components/Toolbar.d.js.map +1 -0
  68. package/lib/module/components/Toolbar.js +95 -0
  69. package/lib/module/components/Toolbar.js.map +1 -0
  70. package/lib/module/components/ToolbarButton.d.js +4 -0
  71. package/lib/module/components/ToolbarButton.d.js.map +1 -0
  72. package/lib/module/components/ToolbarButton.js +59 -0
  73. package/lib/module/components/ToolbarButton.js.map +1 -0
  74. package/lib/module/constants/defaultStyles.d.js +4 -0
  75. package/lib/module/constants/defaultStyles.d.js.map +1 -0
  76. package/lib/module/constants/defaultStyles.js +168 -0
  77. package/lib/module/constants/defaultStyles.js.map +1 -0
  78. package/lib/module/context/RichTextContext.d.js +4 -0
  79. package/lib/module/context/RichTextContext.d.js.map +1 -0
  80. package/lib/module/context/RichTextContext.js +55 -0
  81. package/lib/module/context/RichTextContext.js.map +1 -0
  82. package/lib/module/hooks/useFormatting.d.js +11 -0
  83. package/lib/module/hooks/useFormatting.d.js.map +1 -0
  84. package/lib/module/hooks/useFormatting.js +78 -0
  85. package/lib/module/hooks/useFormatting.js.map +1 -0
  86. package/lib/module/hooks/useRichText.d.js +4 -0
  87. package/lib/module/hooks/useRichText.d.js.map +1 -0
  88. package/lib/module/hooks/useRichText.js +132 -0
  89. package/lib/module/hooks/useRichText.js.map +1 -0
  90. package/lib/module/hooks/useSelection.d.js +4 -0
  91. package/lib/module/hooks/useSelection.d.js.map +1 -0
  92. package/lib/module/hooks/useSelection.js +35 -0
  93. package/lib/module/hooks/useSelection.js.map +1 -0
  94. package/lib/module/index.d.js +15 -0
  95. package/lib/module/index.d.js.map +1 -0
  96. package/lib/module/index.js +25 -0
  97. package/lib/module/index.js.map +1 -0
  98. package/lib/module/types/index.d.js +4 -0
  99. package/lib/module/types/index.d.js.map +1 -0
  100. package/lib/module/types/index.js +4 -0
  101. package/lib/module/types/index.js.map +1 -0
  102. package/lib/module/utils/formatter.d.js +30 -0
  103. package/lib/module/utils/formatter.d.js.map +1 -0
  104. package/lib/module/utils/formatter.js +217 -0
  105. package/lib/module/utils/formatter.js.map +1 -0
  106. package/lib/module/utils/parser.d.js +4 -0
  107. package/lib/module/utils/parser.d.js.map +1 -0
  108. package/lib/module/utils/parser.js +211 -0
  109. package/lib/module/utils/parser.js.map +1 -0
  110. package/lib/module/utils/styleMapper.d.js +4 -0
  111. package/lib/module/utils/styleMapper.d.js.map +1 -0
  112. package/lib/module/utils/styleMapper.js +82 -0
  113. package/lib/module/utils/styleMapper.js.map +1 -0
  114. package/lib/typescript/src/components/OverlayText.d.ts +11 -0
  115. package/lib/typescript/src/components/OverlayText.d.ts.map +1 -0
  116. package/lib/typescript/src/components/RichTextInput.d.ts +21 -0
  117. package/lib/typescript/src/components/RichTextInput.d.ts.map +1 -0
  118. package/lib/typescript/src/components/Toolbar.d.ts +13 -0
  119. package/lib/typescript/src/components/Toolbar.d.ts.map +1 -0
  120. package/lib/typescript/src/components/ToolbarButton.d.ts +8 -0
  121. package/lib/typescript/src/components/ToolbarButton.d.ts.map +1 -0
  122. package/lib/typescript/src/constants/defaultStyles.d.ts +46 -0
  123. package/lib/typescript/src/constants/defaultStyles.d.ts.map +1 -0
  124. package/lib/typescript/src/context/RichTextContext.d.ts +31 -0
  125. package/lib/typescript/src/context/RichTextContext.d.ts.map +1 -0
  126. package/lib/typescript/src/hooks/useFormatting.d.ts +26 -0
  127. package/lib/typescript/src/hooks/useFormatting.d.ts.map +1 -0
  128. package/lib/typescript/src/hooks/useRichText.d.ts +17 -0
  129. package/lib/typescript/src/hooks/useRichText.d.ts.map +1 -0
  130. package/lib/typescript/src/hooks/useSelection.d.ts +14 -0
  131. package/lib/typescript/src/hooks/useSelection.d.ts.map +1 -0
  132. package/lib/typescript/src/index.d.ts +16 -0
  133. package/lib/typescript/src/index.d.ts.map +1 -0
  134. package/lib/typescript/src/types/index.d.ts +245 -0
  135. package/lib/typescript/src/types/index.d.ts.map +1 -0
  136. package/lib/typescript/src/utils/formatter.d.ts +29 -0
  137. package/lib/typescript/src/utils/formatter.d.ts.map +1 -0
  138. package/lib/typescript/src/utils/parser.d.ts +46 -0
  139. package/lib/typescript/src/utils/parser.d.ts.map +1 -0
  140. package/lib/typescript/src/utils/styleMapper.d.ts +16 -0
  141. package/lib/typescript/src/utils/styleMapper.d.ts.map +1 -0
  142. package/package.json +1 -1
  143. package/src/utils/formatter.d.ts +2 -2
  144. package/src/utils/formatter.ts +4 -4
  145. package/src/utils/parser.d.ts +1 -1
  146. package/src/utils/parser.ts +2 -2
  147. package/src/utils/styleMapper.d.ts +1 -1
  148. package/src/utils/styleMapper.ts +2 -2
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.RichTextProvider = void 0;
7
+ exports.useRichTextContext = useRichTextContext;
8
+ var _react = _interopRequireWildcard(require("react"));
9
+ var _useRichText = require("../hooks/useRichText");
10
+ var _jsxRuntime = require("react/jsx-runtime");
11
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
12
+ // ─── Context ─────────────────────────────────────────────────────────────────
13
+ const RichTextContext = /*#__PURE__*/(0, _react.createContext)(null);
14
+
15
+ // ─── Provider ────────────────────────────────────────────────────────────────
16
+
17
+ /**
18
+ * RichTextProvider wraps children with rich text state via React Context.
19
+ *
20
+ * Use this when you need to access the rich text state/actions from
21
+ * deeply nested components (e.g., a custom toolbar in a different part
22
+ * of the component tree).
23
+ *
24
+ * @example
25
+ * ```tsx
26
+ * <RichTextProvider onChangeSegments={handleChange}>
27
+ * <MyCustomToolbar />
28
+ * <RichTextInput showToolbar={false} />
29
+ * </RichTextProvider>
30
+ * ```
31
+ */
32
+ const RichTextProvider = ({
33
+ children,
34
+ ...options
35
+ }) => {
36
+ const richText = (0, _useRichText.useRichText)(options);
37
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(RichTextContext.Provider, {
38
+ value: richText,
39
+ children: children
40
+ });
41
+ };
42
+ exports.RichTextProvider = RichTextProvider;
43
+ RichTextProvider.displayName = 'RichTextProvider';
44
+
45
+ // ─── Consumer Hook ───────────────────────────────────────────────────────────
46
+
47
+ /**
48
+ * Hook to access the RichText state and actions from context.
49
+ *
50
+ * Must be used within a `<RichTextProvider>`.
51
+ *
52
+ * @throws If used outside of a RichTextProvider
53
+ */
54
+ function useRichTextContext() {
55
+ const context = (0, _react.useContext)(RichTextContext);
56
+ if (!context) {
57
+ throw new Error('useRichTextContext must be used within a <RichTextProvider>. ' + 'Wrap your component tree with <RichTextProvider> to use this hook.');
58
+ }
59
+ return context;
60
+ }
61
+ //# sourceMappingURL=RichTextContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_useRichText","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","RichTextContext","createContext","RichTextProvider","children","options","richText","useRichText","jsx","Provider","value","exports","displayName","useRichTextContext","context","useContext","Error"],"sourceRoot":"..\\..\\..\\src","sources":["context/RichTextContext.tsx"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AAEA,IAAAC,YAAA,GAAAD,OAAA;AAA4E,IAAAE,WAAA,GAAAF,OAAA;AAAA,SAAAD,wBAAAI,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAN,uBAAA,YAAAA,CAAAI,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,gBAAAP,CAAA,IAAAD,CAAA,gBAAAC,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAC,CAAA,OAAAM,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAC,CAAA,OAAAM,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAP,CAAA,EAAAM,CAAA,IAAAC,CAAA,CAAAP,CAAA,IAAAD,CAAA,CAAAC,CAAA,WAAAO,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAE5E;AAEA,MAAMkB,eAAe,gBAAG,IAAAC,oBAAa,EAA2B,IAAI,CAAC;;AAErE;;AAMA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMC,gBAAiD,GAAGA,CAAC;EAChEC,QAAQ;EACR,GAAGC;AACL,CAAC,KAAK;EACJ,MAAMC,QAAQ,GAAG,IAAAC,wBAAW,EAACF,OAAO,CAAC;EAErC,oBACE,IAAAxB,WAAA,CAAA2B,GAAA,EAACP,eAAe,CAACQ,QAAQ;IAACC,KAAK,EAAEJ,QAAS;IAAAF,QAAA,EACvCA;EAAQ,CACe,CAAC;AAE/B,CAAC;AAACO,OAAA,CAAAR,gBAAA,GAAAA,gBAAA;AAEFA,gBAAgB,CAACS,WAAW,GAAG,kBAAkB;;AAEjD;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASC,kBAAkBA,CAAA,EAAsB;EACtD,MAAMC,OAAO,GAAG,IAAAC,iBAAU,EAACd,eAAe,CAAC;EAC3C,IAAI,CAACa,OAAO,EAAE;IACZ,MAAM,IAAIE,KAAK,CACb,+DAA+D,GAC/D,oEACF,CAAC;EACH;EACA,OAAOF,OAAO;AAChB","ignoreList":[]}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ //# sourceMappingURL=useFormatting.d.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sourceRoot":"..\\..\\..\\src","sources":["hooks/useFormatting.d.ts"],"mappings":"","ignoreList":[]}
@@ -0,0 +1,82 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.useFormatting = useFormatting;
7
+ var _react = require("react");
8
+ var _formatter = require("../utils/formatter");
9
+ /**
10
+ * Hook that provides formatting commands for the rich text editor.
11
+ *
12
+ * Handles both selection-based formatting (when text is selected)
13
+ * and active-style updates (when no text is selected — affects next typed text).
14
+ */
15
+ function useFormatting({
16
+ segments,
17
+ selection,
18
+ activeStyles,
19
+ onSegmentsChange,
20
+ onActiveStylesChange
21
+ }) {
22
+ const toggleFormat = (0, _react.useCallback)(format => {
23
+ if (selection.start === selection.end) {
24
+ // No selection — toggle active style for next typed text
25
+ onActiveStylesChange({
26
+ ...activeStyles,
27
+ [format]: !activeStyles[format]
28
+ });
29
+ } else {
30
+ // Has selection — toggle format on selected text
31
+ const newSegments = (0, _formatter.toggleFormatOnSelection)(segments, selection, format);
32
+ onSegmentsChange(newSegments);
33
+ }
34
+ }, [segments, selection, activeStyles, onSegmentsChange, onActiveStylesChange]);
35
+ const setStyleProperty = (0, _react.useCallback)((key, value) => {
36
+ if (selection.start === selection.end) {
37
+ onActiveStylesChange({
38
+ ...activeStyles,
39
+ [key]: value
40
+ });
41
+ } else {
42
+ const newSegments = (0, _formatter.setStyleOnSelection)(segments, selection, key, value);
43
+ onSegmentsChange(newSegments);
44
+ }
45
+ }, [segments, selection, activeStyles, onSegmentsChange, onActiveStylesChange]);
46
+ const setHeading = (0, _react.useCallback)(level => {
47
+ const newSegments = (0, _formatter.setHeadingOnLine)(segments, selection, level);
48
+ onSegmentsChange(newSegments);
49
+ }, [segments, selection, onSegmentsChange]);
50
+ const setColor = (0, _react.useCallback)(color => {
51
+ setStyleProperty('color', color);
52
+ }, [setStyleProperty]);
53
+ const setBackgroundColor = (0, _react.useCallback)(color => {
54
+ setStyleProperty('backgroundColor', color);
55
+ }, [setStyleProperty]);
56
+ const setFontSize = (0, _react.useCallback)(size => {
57
+ setStyleProperty('fontSize', size);
58
+ }, [setStyleProperty]);
59
+ const isFormatActive = (0, _react.useCallback)(format => {
60
+ if (selection.start === selection.end) {
61
+ return !!activeStyles[format];
62
+ }
63
+ return (0, _formatter.isFormatActiveInSelection)(segments, selection, format);
64
+ }, [segments, selection, activeStyles]);
65
+ const currentSelectionStyle = (0, _react.useCallback)(() => {
66
+ if (selection.start === selection.end) {
67
+ return activeStyles;
68
+ }
69
+ return (0, _formatter.getSelectionStyle)(segments, selection);
70
+ }, [segments, selection, activeStyles]);
71
+ return {
72
+ toggleFormat,
73
+ setStyleProperty,
74
+ setHeading,
75
+ setColor,
76
+ setBackgroundColor,
77
+ setFontSize,
78
+ isFormatActive,
79
+ currentSelectionStyle
80
+ };
81
+ }
82
+ //# sourceMappingURL=useFormatting.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","require","_formatter","useFormatting","segments","selection","activeStyles","onSegmentsChange","onActiveStylesChange","toggleFormat","useCallback","format","start","end","newSegments","toggleFormatOnSelection","setStyleProperty","key","value","setStyleOnSelection","setHeading","level","setHeadingOnLine","setColor","color","setBackgroundColor","setFontSize","size","isFormatActive","isFormatActiveInSelection","currentSelectionStyle","getSelectionStyle"],"sourceRoot":"..\\..\\..\\src","sources":["hooks/useFormatting.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ //# sourceMappingURL=useRichText.d.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sourceRoot":"..\\..\\..\\src","sources":["hooks/useRichText.d.ts"],"mappings":"","ignoreList":[]}
@@ -0,0 +1,136 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.useRichText = useRichText;
7
+ var _react = require("react");
8
+ var _defaultStyles = require("../constants/defaultStyles");
9
+ var _parser = require("../utils/parser");
10
+ var _useSelection = require("../hooks/useSelection");
11
+ var _useFormatting = require("../hooks/useFormatting");
12
+ /**
13
+ * Main hook for the rich text editor.
14
+ *
15
+ * Manages the complete editor state (segments, selection, active styles)
16
+ * and exposes all actions needed to build a rich text UI.
17
+ */
18
+ function useRichText(options = {}) {
19
+ const {
20
+ initialSegments,
21
+ onChangeSegments,
22
+ onChangeText
23
+ } = options;
24
+
25
+ // ─── State ───────────────────────────────────────────────────────────────
26
+
27
+ const [segments, setSegments] = (0, _react.useState)(() => {
28
+ if (initialSegments && initialSegments.length > 0) {
29
+ return initialSegments;
30
+ }
31
+ return [(0, _parser.createSegment)('')];
32
+ });
33
+ const [activeStyles, setActiveStyles] = (0, _react.useState)({
34
+ ..._defaultStyles.EMPTY_FORMAT_STYLE
35
+ });
36
+ const {
37
+ selection,
38
+ handleSelectionChange
39
+ } = (0, _useSelection.useSelection)();
40
+
41
+ // Refs for stable access in callbacks
42
+ const segmentsRef = (0, _react.useRef)(segments);
43
+ segmentsRef.current = segments;
44
+ const activeStylesRef = (0, _react.useRef)(activeStyles);
45
+ activeStylesRef.current = activeStyles;
46
+
47
+ // ─── Segment Change Handler ──────────────────────────────────────────────
48
+
49
+ const updateSegments = (0, _react.useCallback)(newSegments => {
50
+ setSegments(newSegments);
51
+ onChangeSegments?.(newSegments);
52
+ onChangeText?.((0, _parser.segmentsToPlainText)(newSegments));
53
+ }, [onChangeSegments, onChangeText]);
54
+
55
+ // ─── Formatting ──────────────────────────────────────────────────────────
56
+
57
+ const formatting = (0, _useFormatting.useFormatting)({
58
+ segments,
59
+ selection,
60
+ activeStyles,
61
+ onSegmentsChange: updateSegments,
62
+ onActiveStylesChange: setActiveStyles
63
+ });
64
+
65
+ // ─── Text Change Handler ─────────────────────────────────────────────────
66
+
67
+ const handleTextChange = (0, _react.useCallback)(newText => {
68
+ const currentSegments = segmentsRef.current;
69
+ const currentActiveStyles = activeStylesRef.current;
70
+ const newSegments = (0, _parser.reconcileTextChange)(currentSegments, newText, currentActiveStyles);
71
+ updateSegments(newSegments);
72
+ }, [updateSegments]);
73
+
74
+ // ─── Selection Change Handler ────────────────────────────────────────────
75
+
76
+ const onSelectionChange = (0, _react.useCallback)(newSelection => {
77
+ handleSelectionChange(newSelection);
78
+
79
+ // Update active styles based on cursor position
80
+ if (newSelection.start === newSelection.end) {
81
+ const pos = (0, _parser.findPositionInSegments)(segmentsRef.current, newSelection.start);
82
+ if (segmentsRef.current.length > 0) {
83
+ const seg = segmentsRef.current[pos.segmentIndex];
84
+ setActiveStyles({
85
+ ...seg.styles
86
+ });
87
+ }
88
+ }
89
+ }, [handleSelectionChange]);
90
+
91
+ // ─── Export / Import ─────────────────────────────────────────────────────
92
+
93
+ const getPlainText = (0, _react.useCallback)(() => {
94
+ return (0, _parser.segmentsToPlainText)(segmentsRef.current);
95
+ }, []);
96
+ const exportJSON = (0, _react.useCallback)(() => {
97
+ return JSON.parse(JSON.stringify(segmentsRef.current));
98
+ }, []);
99
+ const importJSON = (0, _react.useCallback)(newSegments => {
100
+ const safeSegments = newSegments.length > 0 ? newSegments : [(0, _parser.createSegment)('')];
101
+ updateSegments(safeSegments);
102
+ }, [updateSegments]);
103
+ const clear = (0, _react.useCallback)(() => {
104
+ updateSegments([(0, _parser.createSegment)('')]);
105
+ setActiveStyles({
106
+ ..._defaultStyles.EMPTY_FORMAT_STYLE
107
+ });
108
+ }, [updateSegments]);
109
+
110
+ // ─── Build Return Value ──────────────────────────────────────────────────
111
+
112
+ const state = {
113
+ segments,
114
+ selection,
115
+ activeStyles
116
+ };
117
+ const actions = {
118
+ toggleFormat: formatting.toggleFormat,
119
+ setStyleProperty: formatting.setStyleProperty,
120
+ setHeading: formatting.setHeading,
121
+ setColor: formatting.setColor,
122
+ setBackgroundColor: formatting.setBackgroundColor,
123
+ setFontSize: formatting.setFontSize,
124
+ handleTextChange,
125
+ handleSelectionChange: onSelectionChange,
126
+ getPlainText,
127
+ exportJSON,
128
+ importJSON,
129
+ clear
130
+ };
131
+ return {
132
+ state,
133
+ actions
134
+ };
135
+ }
136
+ //# sourceMappingURL=useRichText.js.map
@@ -0,0 +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","start","end","pos","findPositionInSegments","seg","segmentIndex","styles","getPlainText","exportJSON","JSON","parse","stringify","importJSON","safeSegments","clear","state","actions","toggleFormat","setStyleProperty","setHeading","setColor","setBackgroundColor","setFontSize"],"sourceRoot":"..\\..\\..\\src","sources":["hooks/useRichText.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ //# sourceMappingURL=useSelection.d.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sourceRoot":"..\\..\\..\\src","sources":["hooks/useSelection.d.ts"],"mappings":"","ignoreList":[]}
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.useSelection = useSelection;
7
+ var _react = require("react");
8
+ /**
9
+ * Hook for tracking TextInput selection state.
10
+ *
11
+ * Returns the current selection and a handler to update it.
12
+ */
13
+ function useSelection(initialSelection) {
14
+ const [selection, setSelection] = (0, _react.useState)(initialSelection ?? {
15
+ start: 0,
16
+ end: 0
17
+ });
18
+
19
+ // Use a ref to avoid stale closures in callbacks
20
+ const selectionRef = (0, _react.useRef)(selection);
21
+ selectionRef.current = selection;
22
+ const handleSelectionChange = (0, _react.useCallback)(newSelection => {
23
+ setSelection(newSelection);
24
+ }, []);
25
+ const getSelection = (0, _react.useCallback)(() => {
26
+ return selectionRef.current;
27
+ }, []);
28
+ const hasSelection = (0, _react.useCallback)(() => {
29
+ return selectionRef.current.start !== selectionRef.current.end;
30
+ }, []);
31
+ return {
32
+ selection,
33
+ setSelection,
34
+ handleSelectionChange,
35
+ getSelection,
36
+ hasSelection
37
+ };
38
+ }
39
+ //# sourceMappingURL=useSelection.js.map
@@ -0,0 +1 @@
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":[]}
@@ -0,0 +1,186 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "DEFAULT_BASE_TEXT_STYLE", {
7
+ enumerable: true,
8
+ get: function () {
9
+ return _defaultStyles.DEFAULT_BASE_TEXT_STYLE;
10
+ }
11
+ });
12
+ Object.defineProperty(exports, "DEFAULT_COLORS", {
13
+ enumerable: true,
14
+ get: function () {
15
+ return _defaultStyles.DEFAULT_COLORS;
16
+ }
17
+ });
18
+ Object.defineProperty(exports, "DEFAULT_THEME", {
19
+ enumerable: true,
20
+ get: function () {
21
+ return _defaultStyles.DEFAULT_THEME;
22
+ }
23
+ });
24
+ Object.defineProperty(exports, "DEFAULT_TOOLBAR_ITEMS", {
25
+ enumerable: true,
26
+ get: function () {
27
+ return _defaultStyles.DEFAULT_TOOLBAR_ITEMS;
28
+ }
29
+ });
30
+ Object.defineProperty(exports, "EMPTY_FORMAT_STYLE", {
31
+ enumerable: true,
32
+ get: function () {
33
+ return _defaultStyles.EMPTY_FORMAT_STYLE;
34
+ }
35
+ });
36
+ Object.defineProperty(exports, "HEADING_FONT_SIZES", {
37
+ enumerable: true,
38
+ get: function () {
39
+ return _defaultStyles.HEADING_FONT_SIZES;
40
+ }
41
+ });
42
+ Object.defineProperty(exports, "OverlayText", {
43
+ enumerable: true,
44
+ get: function () {
45
+ return _OverlayText.OverlayText;
46
+ }
47
+ });
48
+ Object.defineProperty(exports, "RichTextInput", {
49
+ enumerable: true,
50
+ get: function () {
51
+ return _RichTextInput.RichTextInput;
52
+ }
53
+ });
54
+ Object.defineProperty(exports, "RichTextProvider", {
55
+ enumerable: true,
56
+ get: function () {
57
+ return _RichTextContext.RichTextProvider;
58
+ }
59
+ });
60
+ Object.defineProperty(exports, "Toolbar", {
61
+ enumerable: true,
62
+ get: function () {
63
+ return _Toolbar.Toolbar;
64
+ }
65
+ });
66
+ Object.defineProperty(exports, "ToolbarButton", {
67
+ enumerable: true,
68
+ get: function () {
69
+ return _ToolbarButton.ToolbarButton;
70
+ }
71
+ });
72
+ Object.defineProperty(exports, "createSegment", {
73
+ enumerable: true,
74
+ get: function () {
75
+ return _parser.createSegment;
76
+ }
77
+ });
78
+ Object.defineProperty(exports, "formatStyleToTextStyle", {
79
+ enumerable: true,
80
+ get: function () {
81
+ return _styleMapper.formatStyleToTextStyle;
82
+ }
83
+ });
84
+ Object.defineProperty(exports, "getSelectionStyle", {
85
+ enumerable: true,
86
+ get: function () {
87
+ return _formatter.getSelectionStyle;
88
+ }
89
+ });
90
+ Object.defineProperty(exports, "getTotalLength", {
91
+ enumerable: true,
92
+ get: function () {
93
+ return _parser.getTotalLength;
94
+ }
95
+ });
96
+ Object.defineProperty(exports, "isFormatActiveInSelection", {
97
+ enumerable: true,
98
+ get: function () {
99
+ return _formatter.isFormatActiveInSelection;
100
+ }
101
+ });
102
+ Object.defineProperty(exports, "mergeAdjacentSegments", {
103
+ enumerable: true,
104
+ get: function () {
105
+ return _parser.mergeAdjacentSegments;
106
+ }
107
+ });
108
+ Object.defineProperty(exports, "reconcileTextChange", {
109
+ enumerable: true,
110
+ get: function () {
111
+ return _parser.reconcileTextChange;
112
+ }
113
+ });
114
+ Object.defineProperty(exports, "segmentToTextStyle", {
115
+ enumerable: true,
116
+ get: function () {
117
+ return _styleMapper.segmentToTextStyle;
118
+ }
119
+ });
120
+ Object.defineProperty(exports, "segmentsToPlainText", {
121
+ enumerable: true,
122
+ get: function () {
123
+ return _parser.segmentsToPlainText;
124
+ }
125
+ });
126
+ Object.defineProperty(exports, "segmentsToTextStyles", {
127
+ enumerable: true,
128
+ get: function () {
129
+ return _styleMapper.segmentsToTextStyles;
130
+ }
131
+ });
132
+ Object.defineProperty(exports, "setHeadingOnLine", {
133
+ enumerable: true,
134
+ get: function () {
135
+ return _formatter.setHeadingOnLine;
136
+ }
137
+ });
138
+ Object.defineProperty(exports, "setStyleOnSelection", {
139
+ enumerable: true,
140
+ get: function () {
141
+ return _formatter.setStyleOnSelection;
142
+ }
143
+ });
144
+ Object.defineProperty(exports, "toggleFormatOnSelection", {
145
+ enumerable: true,
146
+ get: function () {
147
+ return _formatter.toggleFormatOnSelection;
148
+ }
149
+ });
150
+ Object.defineProperty(exports, "useFormatting", {
151
+ enumerable: true,
152
+ get: function () {
153
+ return _useFormatting.useFormatting;
154
+ }
155
+ });
156
+ Object.defineProperty(exports, "useRichText", {
157
+ enumerable: true,
158
+ get: function () {
159
+ return _useRichText.useRichText;
160
+ }
161
+ });
162
+ Object.defineProperty(exports, "useRichTextContext", {
163
+ enumerable: true,
164
+ get: function () {
165
+ return _RichTextContext.useRichTextContext;
166
+ }
167
+ });
168
+ Object.defineProperty(exports, "useSelection", {
169
+ enumerable: true,
170
+ get: function () {
171
+ return _useSelection.useSelection;
172
+ }
173
+ });
174
+ var _RichTextInput = require("./components/RichTextInput");
175
+ var _OverlayText = require("./components/OverlayText");
176
+ var _Toolbar = require("./components/Toolbar");
177
+ var _ToolbarButton = require("./components/ToolbarButton");
178
+ var _useRichText = require("./hooks/useRichText");
179
+ var _useSelection = require("./hooks/useSelection");
180
+ var _useFormatting = require("./hooks/useFormatting");
181
+ var _RichTextContext = require("./context/RichTextContext");
182
+ var _parser = require("./utils/parser");
183
+ var _formatter = require("./utils/formatter");
184
+ var _styleMapper = require("./utils/styleMapper");
185
+ var _defaultStyles = require("./constants/defaultStyles");
186
+ //# sourceMappingURL=index.d.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_RichTextInput","require","_OverlayText","_Toolbar","_ToolbarButton","_useRichText","_useSelection","_useFormatting","_RichTextContext","_parser","_formatter","_styleMapper","_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,cAAA,GAAAX,OAAA","ignoreList":[]}