@copilotkit/react-textarea 0.10.0 → 0.12.0

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 (69) hide show
  1. package/.turbo/turbo-build.log +179 -164
  2. package/CHANGELOG.md +13 -0
  3. package/dist/chunk-AOEXKPIX.mjs +83 -0
  4. package/dist/chunk-AOEXKPIX.mjs.map +1 -0
  5. package/dist/{chunk-6SYD77G6.mjs → chunk-CSGFJU3L.mjs} +2 -2
  6. package/dist/chunk-CSGFJU3L.mjs.map +1 -0
  7. package/dist/chunk-DCQ27XRF.mjs +32 -0
  8. package/dist/chunk-DCQ27XRF.mjs.map +1 -0
  9. package/dist/chunk-DE5K76I2.mjs +3 -0
  10. package/dist/{chunk-E2UEE45I.mjs → chunk-HZGSG7ST.mjs} +1 -1
  11. package/dist/chunk-HZGSG7ST.mjs.map +1 -0
  12. package/dist/{chunk-THWPPG6M.mjs → chunk-IGQI27NI.mjs} +20 -2
  13. package/dist/chunk-IGQI27NI.mjs.map +1 -0
  14. package/dist/chunk-M6QFKIBE.mjs +161 -0
  15. package/dist/chunk-M6QFKIBE.mjs.map +1 -0
  16. package/dist/chunk-WADHCMPK.mjs +3 -0
  17. package/dist/components/base-copilot-textarea/base-copilot-textarea.d.ts +10 -14
  18. package/dist/components/base-copilot-textarea/base-copilot-textarea.mjs +9 -8
  19. package/dist/components/base-copilot-textarea/use-add-branding-css.mjs +1 -1
  20. package/dist/components/copilot-textarea/copilot-textarea.d.ts +4 -4
  21. package/dist/components/copilot-textarea/copilot-textarea.mjs +10 -9
  22. package/dist/components/index.d.ts +4 -2
  23. package/dist/components/index.mjs +10 -9
  24. package/dist/hooks/{use-autosuggestions.d.ts → base-copilot-textarea-implementation/use-autosuggestions.d.ts} +3 -3
  25. package/dist/hooks/base-copilot-textarea-implementation/use-autosuggestions.mjs +7 -0
  26. package/dist/hooks/{use-copilot-textarea-editor.d.ts → base-copilot-textarea-implementation/use-copilot-textarea-editor.d.ts} +1 -1
  27. package/dist/hooks/base-copilot-textarea-implementation/use-copilot-textarea-editor.mjs +5 -0
  28. package/dist/hooks/base-copilot-textarea-implementation/use-copilot-textarea-editor.mjs.map +1 -0
  29. package/dist/hooks/base-copilot-textarea-implementation/use-populate-copilot-textarea-ref.d.ts +7 -0
  30. package/dist/hooks/base-copilot-textarea-implementation/use-populate-copilot-textarea-ref.mjs +6 -0
  31. package/dist/hooks/base-copilot-textarea-implementation/use-populate-copilot-textarea-ref.mjs.map +1 -0
  32. package/dist/index.css +4 -0
  33. package/dist/index.css.map +1 -1
  34. package/dist/index.d.ts +3 -1
  35. package/dist/index.mjs +13 -11
  36. package/dist/types/base/base-copilot-textarea-props.d.ts +38 -0
  37. package/dist/types/base/base-copilot-textarea-props.mjs +3 -0
  38. package/dist/types/base/base-copilot-textarea-props.mjs.map +1 -0
  39. package/dist/types/base/index.d.ts +2 -0
  40. package/dist/types/html-copilot-textarea-element.d.ts +7 -0
  41. package/dist/types/html-copilot-textarea-element.mjs +3 -0
  42. package/dist/types/html-copilot-textarea-element.mjs.map +1 -0
  43. package/dist/types/index.d.ts +3 -0
  44. package/dist/types/index.mjs +2 -1
  45. package/package.json +3 -3
  46. package/src/components/base-copilot-textarea/base-copilot-textarea.tsx +191 -161
  47. package/src/components/base-copilot-textarea/use-add-branding-css.tsx +25 -1
  48. package/src/components/copilot-textarea/copilot-textarea.tsx +33 -25
  49. package/src/components/index.ts +0 -1
  50. package/src/hooks/{use-autosuggestions.ts → base-copilot-textarea-implementation/use-autosuggestions.ts} +5 -5
  51. package/src/hooks/{use-copilot-textarea-editor.tsx → base-copilot-textarea-implementation/use-copilot-textarea-editor.tsx} +5 -5
  52. package/src/hooks/base-copilot-textarea-implementation/use-populate-copilot-textarea-ref.ts +101 -0
  53. package/src/types/base/base-copilot-textarea-props.tsx +37 -0
  54. package/src/types/base/index.ts +3 -1
  55. package/src/types/html-copilot-textarea-element.ts +5 -0
  56. package/src/types/index.ts +1 -0
  57. package/dist/chunk-6SYD77G6.mjs.map +0 -1
  58. package/dist/chunk-CU2M5BIJ.mjs +0 -133
  59. package/dist/chunk-CU2M5BIJ.mjs.map +0 -1
  60. package/dist/chunk-E2UEE45I.mjs.map +0 -1
  61. package/dist/chunk-FD6FGKYY.mjs +0 -3
  62. package/dist/chunk-NHLYAJCQ.mjs +0 -25
  63. package/dist/chunk-NHLYAJCQ.mjs.map +0 -1
  64. package/dist/chunk-THWPPG6M.mjs.map +0 -1
  65. package/dist/hooks/use-autosuggestions.mjs +0 -7
  66. package/dist/hooks/use-copilot-textarea-editor.mjs +0 -5
  67. /package/dist/{chunk-FD6FGKYY.mjs.map → chunk-DE5K76I2.mjs.map} +0 -0
  68. /package/dist/{hooks/use-autosuggestions.mjs.map → chunk-WADHCMPK.mjs.map} +0 -0
  69. /package/dist/hooks/{use-copilot-textarea-editor.mjs.map → base-copilot-textarea-implementation/use-autosuggestions.mjs.map} +0 -0
@@ -1,178 +1,193 @@
1
1
 
2
- > @copilotkit/react-textarea@0.10.0 build /Users/ataibarkai/LocalGit/Recursively.ai/CopilotKit/CopilotKit/packages/react-textarea
2
+ > @copilotkit/react-textarea@0.12.0 build /home/runner/work/CopilotKit/CopilotKit/CopilotKit/packages/react-textarea
3
3
  > tsup --treeshake
4
4
 
5
- CLI Building entry: src/index.tsx, src/context/index.ts, src/components/index.ts, src/hooks/index.ts, src/hooks/use-autosuggestions.ts, src/hooks/use-copilot-textarea-editor.tsx, src/lib/debouncer.ts, src/lib/editor-to-text.ts, src/lib/get-text-around-cursor.ts, src/lib/utils.test.ts, src/lib/utils.ts, src/types/index.ts, src/components/base-copilot-textarea/base-copilot-textarea.tsx, src/components/base-copilot-textarea/render-element.tsx, src/components/base-copilot-textarea/render-placeholder.tsx, src/components/base-copilot-textarea/use-add-branding-css.tsx, src/components/copilot-textarea/copilot-textarea.tsx, src/hooks/make-autosuggestions-function/use-make-standard-autosuggestions-function.tsx, src/lib/slatejs-edits/add-autocompletions.ts, src/lib/slatejs-edits/clear-autocompletions.ts, src/lib/slatejs-edits/replace-text.ts, src/lib/slatejs-edits/with-partial-history.ts, src/types/standard-autosuggestions/autosuggestions-config.tsx, src/types/standard-autosuggestions/index.ts, src/types/standard-autosuggestions/minimal-chat-gpt-message.tsx, src/types/base/autosuggestion-state.ts, src/types/base/autosuggestions-bare-function.ts, src/types/base/base-autosuggestions-config.tsx, src/types/base/custom-editor.tsx, src/types/base/editor-autocomplete-state.ts, src/types/base/index.ts
6
- CLI Using tsconfig: tsconfig.json
7
- CLI tsup v6.5.0
8
- CLI Using tsup config: /Users/ataibarkai/LocalGit/Recursively.ai/CopilotKit/CopilotKit/packages/react-textarea/tsup.config.ts
9
- CLI Target: es6
10
- CLI Cleaning output folder
11
- ESM Build start
5
+ CLI Building entry: src/index.tsx, src/components/index.ts, src/context/index.ts, src/hooks/index.ts, src/lib/debouncer.ts, src/lib/editor-to-text.ts, src/lib/get-text-around-cursor.ts, src/lib/utils.test.ts, src/lib/utils.ts, src/types/html-copilot-textarea-element.ts, src/types/index.ts, src/components/base-copilot-textarea/base-copilot-textarea.tsx, src/components/base-copilot-textarea/render-element.tsx, src/components/base-copilot-textarea/render-placeholder.tsx, src/components/base-copilot-textarea/use-add-branding-css.tsx, src/components/copilot-textarea/copilot-textarea.tsx, src/hooks/base-copilot-textarea-implementation/use-autosuggestions.ts, src/hooks/base-copilot-textarea-implementation/use-copilot-textarea-editor.tsx, src/hooks/base-copilot-textarea-implementation/use-populate-copilot-textarea-ref.ts, src/hooks/make-autosuggestions-function/use-make-standard-autosuggestions-function.tsx, src/lib/slatejs-edits/add-autocompletions.ts, src/lib/slatejs-edits/clear-autocompletions.ts, src/lib/slatejs-edits/replace-text.ts, src/lib/slatejs-edits/with-partial-history.ts, src/types/base/autosuggestion-state.ts, src/types/base/autosuggestions-bare-function.ts, src/types/base/base-autosuggestions-config.tsx, src/types/base/base-copilot-textarea-props.tsx, src/types/base/custom-editor.tsx, src/types/base/editor-autocomplete-state.ts, src/types/base/index.ts, src/types/standard-autosuggestions/autosuggestions-config.tsx, src/types/standard-autosuggestions/index.ts, src/types/standard-autosuggestions/minimal-chat-gpt-message.tsx
6
+ CLI Using tsconfig: tsconfig.json
7
+ CLI tsup v6.5.0
8
+ CLI Using tsup config: /home/runner/work/CopilotKit/CopilotKit/CopilotKit/packages/react-textarea/tsup.config.ts
9
+ CLI Target: es6
10
+ CLI Cleaning output folder
11
+ ESM Build start
12
12
  Browserslist: caniuse-lite is outdated. Please run:
13
13
  npx update-browserslist-db@latest
14
14
  Why you should do it regularly: https://github.com/browserslist/update-db#readme
15
- DTS Build start
15
+ DTS Build start
16
16
  Generated an empty chunk: "minimal-chat-gpt-message".
17
17
  Generated an empty chunk: "autosuggestion-state".
18
18
  Generated an empty chunk: "autosuggestions-bare-function".
19
+ Generated an empty chunk: "base-copilot-textarea-props".
19
20
  Generated an empty chunk: "custom-editor".
20
- Generated an empty chunk: "chunk-FD6FGKYY".
21
- Generated an empty chunk: "chunk-IU3WTXLQ".
21
+ Generated an empty chunk: "chunk-DE5K76I2".
22
+ Generated an empty chunk: "chunk-WADHCMPK".
22
23
  Generated an empty chunk: "chunk-MMVDU6DF".
23
24
  Generated an empty chunk: "chunk-AZQCUNBV".
24
25
  Generated an empty chunk: "chunk-WJHSY5T6".
26
+ Generated an empty chunk: "chunk-IU3WTXLQ".
25
27
  Generated an empty chunk: "chunk-H4VKQGVU".
26
- ESM dist/components/copilot-textarea/copilot-textarea.css 253.00 B
27
- ESM dist/components/base-copilot-textarea/base-copilot-textarea.css 258.00 B
28
- ESM dist/index.css 5.75 KB
29
- ESM dist/components/index.css 242.00 B
30
- ESM dist/components/copilot-textarea/copilot-textarea.css.map 432.00 B
31
- ESM dist/components/base-copilot-textarea/base-copilot-textarea.css.map 432.00 B
32
- ESM dist/index.css.map 12.37 KB
33
- ESM dist/components/index.css.map 429.00 B
34
- ESM dist/types/standard-autosuggestions/minimal-chat-gpt-message.mjs 86.00 B
35
- ESM dist/types/base/autosuggestion-state.mjs 82.00 B
36
- ESM dist/types/base/autosuggestions-bare-function.mjs 91.00 B
37
- ESM dist/lib/utils.test.mjs 200.00 B
38
- ESM dist/chunk-MMVDU6DF.mjs 76.00 B
39
- ESM dist/chunk-AZQCUNBV.mjs 76.00 B
40
- ESM dist/chunk-WJHSY5T6.mjs 76.00 B
41
- ESM dist/chunk-FD6FGKYY.mjs 76.00 B
42
- ESM dist/types/base/custom-editor.mjs 75.00 B
43
- ESM dist/chunk-IU3WTXLQ.mjs 76.00 B
44
- ESM dist/types/base/editor-autocomplete-state.mjs 227.00 B
45
- ESM dist/types/base/index.mjs 213.00 B
46
- ESM dist/components/copilot-textarea/copilot-textarea.mjs 837.00 B
47
- ESM dist/types/base/base-autosuggestions-config.mjs 200.00 B
48
- ESM dist/lib/slatejs-edits/add-autocompletions.mjs 186.00 B
49
- ESM dist/hooks/make-autosuggestions-function/use-make-standard-autosuggestions-function.mjs 220.00 B
50
- ESM dist/lib/slatejs-edits/clear-autocompletions.mjs 192.00 B
51
- ESM dist/lib/slatejs-edits/with-partial-history.mjs 198.00 B
52
- ESM dist/types/standard-autosuggestions/index.mjs 328.00 B
53
- ESM dist/lib/slatejs-edits/replace-text.mjs 170.00 B
54
- ESM dist/types/standard-autosuggestions/autosuggestions-config.mjs 310.00 B
55
- ESM dist/lib/utils.mjs 220.00 B
56
- ESM dist/lib/get-text-around-cursor.mjs 232.00 B
57
- ESM dist/components/base-copilot-textarea/base-copilot-textarea.mjs 706.00 B
58
- ESM dist/components/base-copilot-textarea/use-add-branding-css.mjs 178.00 B
59
- ESM dist/components/base-copilot-textarea/render-placeholder.mjs 188.00 B
60
- ESM dist/index.mjs 1.00 KB
61
- ESM dist/components/index.mjs 824.00 B
62
- ESM dist/chunk-NHLYAJCQ.mjs 1.06 KB
63
- ESM dist/components/base-copilot-textarea/render-element.mjs 180.00 B
64
- ESM dist/chunk-7KWRVIYV.mjs 314.00 B
65
- ESM dist/chunk-H4VKQGVU.mjs 76.00 B
66
- ESM dist/chunk-MRXNTQOX.mjs 1.92 KB
67
- ESM dist/chunk-4XYYSJ5C.mjs 527.00 B
68
- ESM dist/chunk-TSF4AJIK.mjs 716.00 B
69
- ESM dist/types/index.mjs 387.00 B
70
- ESM dist/chunk-A3SFEHWZ.mjs 2.09 KB
71
- ESM dist/chunk-OELUUJZY.mjs 625.00 B
72
- ESM dist/chunk-LNAIMEB2.mjs 1.09 KB
73
- ESM dist/hooks/use-autosuggestions.mjs 268.00 B
74
- ESM dist/context/index.mjs 98.00 B
75
- ESM dist/hooks/index.mjs 98.00 B
76
- ESM dist/chunk-THWPPG6M.mjs 1.40 KB
77
- ESM dist/chunk-CU2M5BIJ.mjs 5.05 KB
78
- ESM dist/chunk-6SYD77G6.mjs 2.01 KB
79
- ESM dist/chunk-UW3ITU2Y.mjs 496.00 B
80
- ESM dist/chunk-KCHYD3EB.mjs 3.08 KB
81
- ESM dist/chunk-KGKLUWKW.mjs 1.37 KB
82
- ESM dist/chunk-3UQM3NLM.mjs 1.76 KB
83
- ESM dist/hooks/use-copilot-textarea-editor.mjs 218.00 B
84
- ESM dist/lib/debouncer.mjs 153.00 B
85
- ESM dist/chunk-E2UEE45I.mjs 3.02 KB
86
- ESM dist/lib/editor-to-text.mjs 1.34 KB
87
- ESM dist/chunk-NKW5OU2S.mjs 959.00 B
88
- ESM dist/chunk-EHQ5TN4R.mjs 2.75 KB
89
- ESM dist/chunk-WJYQWL4I.mjs 595.00 B
90
- ESM dist/types/standard-autosuggestions/minimal-chat-gpt-message.mjs.map 51.00 B
91
- ESM dist/lib/utils.test.mjs.map 349.00 B
92
- ESM dist/types/base/autosuggestion-state.mjs.map 51.00 B
93
- ESM dist/chunk-MMVDU6DF.mjs.map 51.00 B
94
- ESM dist/types/base/custom-editor.mjs.map 51.00 B
95
- ESM dist/chunk-WJHSY5T6.mjs.map 51.00 B
96
- ESM dist/chunk-AZQCUNBV.mjs.map 51.00 B
97
- ESM dist/chunk-FD6FGKYY.mjs.map 51.00 B
98
- ESM dist/chunk-IU3WTXLQ.mjs.map 51.00 B
99
- ESM dist/components/copilot-textarea/copilot-textarea.mjs.map 51.00 B
100
- ESM dist/types/base/index.mjs.map 51.00 B
101
- ESM dist/lib/slatejs-edits/add-autocompletions.mjs.map 51.00 B
102
- ESM dist/types/base/autosuggestions-bare-function.mjs.map 51.00 B
103
- ESM dist/lib/slatejs-edits/with-partial-history.mjs.map 51.00 B
104
- ESM dist/lib/slatejs-edits/clear-autocompletions.mjs.map 51.00 B
105
- ESM dist/types/base/editor-autocomplete-state.mjs.map 51.00 B
106
- ESM dist/types/base/base-autosuggestions-config.mjs.map 51.00 B
107
- ESM dist/hooks/make-autosuggestions-function/use-make-standard-autosuggestions-function.mjs.map 51.00 B
108
- ESM dist/lib/get-text-around-cursor.mjs.map 51.00 B
109
- ESM dist/components/base-copilot-textarea/use-add-branding-css.mjs.map 51.00 B
110
- ESM dist/components/base-copilot-textarea/base-copilot-textarea.mjs.map 51.00 B
111
- ESM dist/index.mjs.map 51.00 B
112
- ESM dist/lib/utils.mjs.map 51.00 B
113
- ESM dist/chunk-NHLYAJCQ.mjs.map 1.75 KB
114
- ESM dist/types/standard-autosuggestions/index.mjs.map 51.00 B
115
- ESM dist/types/standard-autosuggestions/autosuggestions-config.mjs.map 51.00 B
116
- ESM dist/lib/slatejs-edits/replace-text.mjs.map 51.00 B
117
- ESM dist/chunk-7KWRVIYV.mjs.map 623.00 B
118
- ESM dist/components/base-copilot-textarea/render-element.mjs.map 51.00 B
119
- ESM dist/components/base-copilot-textarea/render-placeholder.mjs.map 51.00 B
120
- ESM dist/chunk-H4VKQGVU.mjs.map 51.00 B
121
- ESM dist/chunk-TSF4AJIK.mjs.map 1.31 KB
122
- ESM dist/types/index.mjs.map 51.00 B
123
- ESM dist/chunk-4XYYSJ5C.mjs.map 921.00 B
124
- ESM dist/chunk-LNAIMEB2.mjs.map 1.73 KB
125
- ESM dist/hooks/use-autosuggestions.mjs.map 51.00 B
126
- ESM dist/chunk-OELUUJZY.mjs.map 957.00 B
127
- ESM dist/chunk-A3SFEHWZ.mjs.map 4.73 KB
128
- ESM dist/hooks/index.mjs.map 51.00 B
129
- ESM dist/chunk-THWPPG6M.mjs.map 2.24 KB
130
- ESM dist/context/index.mjs.map 51.00 B
131
- ESM dist/chunk-6SYD77G6.mjs.map 3.78 KB
132
- ESM dist/chunk-KGKLUWKW.mjs.map 2.45 KB
133
- ESM dist/chunk-KCHYD3EB.mjs.map 6.12 KB
134
- ESM dist/chunk-MRXNTQOX.mjs.map 71.00 B
135
- ESM dist/chunk-UW3ITU2Y.mjs.map 878.00 B
136
- ESM dist/components/index.mjs.map 51.00 B
137
- ESM dist/chunk-CU2M5BIJ.mjs.map 8.62 KB
138
- ESM dist/hooks/use-copilot-textarea-editor.mjs.map 51.00 B
139
- ESM dist/chunk-E2UEE45I.mjs.map 5.78 KB
140
- ESM dist/lib/debouncer.mjs.map 51.00 B
141
- ESM dist/chunk-3UQM3NLM.mjs.map 3.63 KB
142
- ESM dist/lib/editor-to-text.mjs.map 2.83 KB
143
- ESM dist/chunk-EHQ5TN4R.mjs.map 4.01 KB
144
- ESM dist/chunk-NKW5OU2S.mjs.map 1.60 KB
145
- ESM dist/chunk-WJYQWL4I.mjs.map 1.04 KB
146
- ESM ⚡️ Build success in 544ms
147
- DTS ⚡️ Build success in 1401ms
148
- DTS dist/index.d.ts 763.00 B
149
- DTS dist/components/base-copilot-textarea/base-copilot-textarea.d.ts 820.00 B
150
- DTS dist/components/copilot-textarea/copilot-textarea.d.ts 703.00 B
151
- DTS dist/types/base/base-autosuggestions-config.d.ts 355.00 B
152
- DTS dist/types/base/autosuggestions-bare-function.d.ts 162.00 B
153
- DTS dist/types/standard-autosuggestions/autosuggestions-config.d.ts 884.00 B
154
- DTS dist/types/standard-autosuggestions/minimal-chat-gpt-message.d.ts 129.00 B
155
- DTS dist/context/index.d.ts 1.00 B
156
- DTS dist/components/index.d.ts 480.00 B
157
- DTS dist/hooks/index.d.ts 1.00 B
158
- DTS dist/hooks/use-autosuggestions.d.ts 879.00 B
159
- DTS dist/types/base/autosuggestion-state.d.ts 143.00 B
160
- DTS dist/types/base/editor-autocomplete-state.d.ts 342.00 B
161
- DTS dist/hooks/use-copilot-textarea-editor.d.ts 223.00 B
162
- DTS dist/types/base/custom-editor.d.ts 801.00 B
163
- DTS dist/lib/debouncer.d.ts 372.00 B
164
- DTS dist/lib/editor-to-text.d.ts 243.00 B
165
- DTS dist/lib/get-text-around-cursor.d.ts 453.00 B
166
- DTS dist/lib/utils.test.d.ts 1.00 B
167
- DTS dist/lib/utils.d.ts 638.00 B
168
- DTS dist/types/index.d.ts 491.00 B
169
- DTS dist/components/base-copilot-textarea/render-element.d.ts 292.00 B
170
- DTS dist/components/base-copilot-textarea/render-placeholder.d.ts 321.00 B
171
- DTS dist/components/base-copilot-textarea/use-add-branding-css.d.ts 158.00 B
172
- DTS dist/hooks/make-autosuggestions-function/use-make-standard-autosuggestions-function.d.ts 1.79 KB
173
- DTS dist/lib/slatejs-edits/add-autocompletions.d.ts 302.00 B
174
- DTS dist/lib/slatejs-edits/clear-autocompletions.d.ts 250.00 B
175
- DTS dist/lib/slatejs-edits/replace-text.d.ts 139.00 B
176
- DTS dist/lib/slatejs-edits/with-partial-history.d.ts 542.00 B
177
- DTS dist/types/standard-autosuggestions/index.d.ts 286.00 B
178
- DTS dist/types/base/index.d.ts 194.00 B
28
+ ESM dist/index.css 5.96 KB
29
+ ESM dist/components/index.css 242.00 B
30
+ ESM dist/components/base-copilot-textarea/base-copilot-textarea.css 258.00 B
31
+ ESM dist/components/copilot-textarea/copilot-textarea.css 253.00 B
32
+ ESM dist/index.css.map 12.61 KB
33
+ ESM dist/components/index.css.map 429.00 B
34
+ ESM dist/components/base-copilot-textarea/base-copilot-textarea.css.map 432.00 B
35
+ ESM dist/components/copilot-textarea/copilot-textarea.css.map 432.00 B
36
+ ESM dist/lib/utils.test.mjs 200.00 B
37
+ ESM dist/lib/slatejs-edits/add-autocompletions.mjs 186.00 B
38
+ ESM dist/types/html-copilot-textarea-element.mjs 122.00 B
39
+ ESM dist/context/index.mjs 98.00 B
40
+ ESM dist/hooks/index.mjs 98.00 B
41
+ ESM dist/chunk-WADHCMPK.mjs 76.00 B
42
+ ESM dist/chunk-DE5K76I2.mjs 76.00 B
43
+ ESM dist/chunk-MMVDU6DF.mjs 76.00 B
44
+ ESM dist/chunk-AZQCUNBV.mjs 76.00 B
45
+ ESM dist/chunk-WJHSY5T6.mjs 76.00 B
46
+ ESM dist/chunk-7KWRVIYV.mjs 314.00 B
47
+ ESM dist/chunk-IU3WTXLQ.mjs 76.00 B
48
+ ESM dist/chunk-H4VKQGVU.mjs 76.00 B
49
+ ESM dist/chunk-MRXNTQOX.mjs 1.92 KB
50
+ ESM dist/lib/slatejs-edits/clear-autocompletions.mjs 192.00 B
51
+ ESM dist/lib/slatejs-edits/with-partial-history.mjs 198.00 B
52
+ ESM dist/lib/slatejs-edits/replace-text.mjs 170.00 B
53
+ ESM dist/lib/utils.mjs 220.00 B
54
+ ESM dist/types/index.mjs 419.00 B
55
+ ESM dist/components/base-copilot-textarea/base-copilot-textarea.mjs 741.00 B
56
+ ESM dist/components/base-copilot-textarea/render-element.mjs 180.00 B
57
+ ESM dist/components/base-copilot-textarea/render-placeholder.mjs 188.00 B
58
+ ESM dist/components/base-copilot-textarea/use-add-branding-css.mjs 178.00 B
59
+ ESM dist/components/copilot-textarea/copilot-textarea.mjs 872.00 B
60
+ ESM dist/index.mjs 1.06 KB
61
+ ESM dist/chunk-DCQ27XRF.mjs 1.23 KB
62
+ ESM dist/components/index.mjs 856.00 B
63
+ ESM dist/chunk-A3SFEHWZ.mjs 2.09 KB
64
+ ESM dist/chunk-EHQ5TN4R.mjs 2.75 KB
65
+ ESM dist/chunk-M6QFKIBE.mjs 5.99 KB
66
+ ESM dist/chunk-HZGSG7ST.mjs 3.02 KB
67
+ ESM dist/chunk-UW3ITU2Y.mjs 496.00 B
68
+ ESM dist/chunk-CSGFJU3L.mjs 2.01 KB
69
+ ESM dist/chunk-AOEXKPIX.mjs 2.57 KB
70
+ ESM dist/chunk-WJYQWL4I.mjs 595.00 B
71
+ ESM dist/chunk-TSF4AJIK.mjs 716.00 B
72
+ ESM dist/chunk-KCHYD3EB.mjs 3.08 KB
73
+ ESM dist/chunk-4XYYSJ5C.mjs 527.00 B
74
+ ESM dist/chunk-KGKLUWKW.mjs 1.37 KB
75
+ ESM dist/chunk-LNAIMEB2.mjs 1.09 KB
76
+ ESM dist/chunk-OELUUJZY.mjs 625.00 B
77
+ ESM dist/chunk-IGQI27NI.mjs 2.11 KB
78
+ ESM dist/lib/debouncer.mjs 153.00 B
79
+ ESM dist/chunk-NKW5OU2S.mjs 959.00 B
80
+ ESM dist/lib/editor-to-text.mjs 1.34 KB
81
+ ESM dist/lib/get-text-around-cursor.mjs 232.00 B
82
+ ESM dist/chunk-3UQM3NLM.mjs 1.76 KB
83
+ ESM dist/types/standard-autosuggestions/minimal-chat-gpt-message.mjs 86.00 B
84
+ ESM dist/types/base/autosuggestions-bare-function.mjs 91.00 B
85
+ ESM dist/hooks/base-copilot-textarea-implementation/use-autosuggestions.mjs 283.00 B
86
+ ESM dist/hooks/make-autosuggestions-function/use-make-standard-autosuggestions-function.mjs 220.00 B
87
+ ESM dist/types/base/base-copilot-textarea-props.mjs 89.00 B
88
+ ESM dist/types/base/autosuggestion-state.mjs 82.00 B
89
+ ESM dist/types/base/custom-editor.mjs 75.00 B
90
+ ESM dist/types/standard-autosuggestions/index.mjs 328.00 B
91
+ ESM dist/types/base/editor-autocomplete-state.mjs 227.00 B
92
+ ESM dist/types/standard-autosuggestions/autosuggestions-config.mjs 310.00 B
93
+ ESM dist/types/base/base-autosuggestions-config.mjs 200.00 B
94
+ ESM dist/types/base/index.mjs 213.00 B
95
+ ESM dist/hooks/base-copilot-textarea-implementation/use-copilot-textarea-editor.mjs 227.00 B
96
+ ESM dist/hooks/base-copilot-textarea-implementation/use-populate-copilot-textarea-ref.mjs 273.00 B
97
+ ESM dist/lib/utils.test.mjs.map 349.00 B
98
+ ESM dist/lib/slatejs-edits/add-autocompletions.mjs.map 51.00 B
99
+ ESM dist/types/html-copilot-textarea-element.mjs.map 51.00 B
100
+ ESM dist/context/index.mjs.map 51.00 B
101
+ ESM dist/hooks/index.mjs.map 51.00 B
102
+ ESM dist/chunk-DE5K76I2.mjs.map 51.00 B
103
+ ESM dist/chunk-WADHCMPK.mjs.map 51.00 B
104
+ ESM dist/chunk-MMVDU6DF.mjs.map 51.00 B
105
+ ESM dist/chunk-AZQCUNBV.mjs.map 51.00 B
106
+ ESM dist/chunk-WJHSY5T6.mjs.map 51.00 B
107
+ ESM dist/chunk-IU3WTXLQ.mjs.map 51.00 B
108
+ ESM dist/chunk-H4VKQGVU.mjs.map 51.00 B
109
+ ESM dist/chunk-MRXNTQOX.mjs.map 71.00 B
110
+ ESM dist/chunk-7KWRVIYV.mjs.map 623.00 B
111
+ ESM dist/lib/slatejs-edits/clear-autocompletions.mjs.map 51.00 B
112
+ ESM dist/lib/slatejs-edits/replace-text.mjs.map 51.00 B
113
+ ESM dist/lib/utils.mjs.map 51.00 B
114
+ ESM dist/types/index.mjs.map 51.00 B
115
+ ESM dist/lib/slatejs-edits/with-partial-history.mjs.map 51.00 B
116
+ ESM dist/components/base-copilot-textarea/base-copilot-textarea.mjs.map 51.00 B
117
+ ESM dist/components/base-copilot-textarea/render-element.mjs.map 51.00 B
118
+ ESM dist/components/base-copilot-textarea/render-placeholder.mjs.map 51.00 B
119
+ ESM dist/components/base-copilot-textarea/use-add-branding-css.mjs.map 51.00 B
120
+ ESM dist/components/copilot-textarea/copilot-textarea.mjs.map 51.00 B
121
+ ESM dist/chunk-DCQ27XRF.mjs.map 2.17 KB
122
+ ESM dist/index.mjs.map 51.00 B
123
+ ESM dist/components/index.mjs.map 51.00 B
124
+ ESM dist/chunk-EHQ5TN4R.mjs.map 4.01 KB
125
+ ESM dist/chunk-M6QFKIBE.mjs.map 10.78 KB
126
+ ESM dist/chunk-HZGSG7ST.mjs.map 5.83 KB
127
+ ESM dist/chunk-UW3ITU2Y.mjs.map 878.00 B
128
+ ESM dist/chunk-CSGFJU3L.mjs.map 3.82 KB
129
+ ESM dist/chunk-A3SFEHWZ.mjs.map 4.73 KB
130
+ ESM dist/chunk-AOEXKPIX.mjs.map 4.80 KB
131
+ ESM dist/chunk-WJYQWL4I.mjs.map 1.04 KB
132
+ ESM dist/chunk-TSF4AJIK.mjs.map 1.31 KB
133
+ ESM dist/chunk-KGKLUWKW.mjs.map 2.45 KB
134
+ ESM dist/chunk-LNAIMEB2.mjs.map 1.73 KB
135
+ ESM dist/chunk-KCHYD3EB.mjs.map 6.12 KB
136
+ ESM dist/chunk-OELUUJZY.mjs.map 957.00 B
137
+ ESM dist/chunk-4XYYSJ5C.mjs.map 921.00 B
138
+ ESM dist/chunk-IGQI27NI.mjs.map 3.42 KB
139
+ ESM dist/lib/debouncer.mjs.map 51.00 B
140
+ ESM dist/chunk-NKW5OU2S.mjs.map 1.60 KB
141
+ ESM dist/lib/editor-to-text.mjs.map 2.83 KB
142
+ ESM dist/chunk-3UQM3NLM.mjs.map 3.63 KB
143
+ ESM dist/lib/get-text-around-cursor.mjs.map 51.00 B
144
+ ESM dist/types/standard-autosuggestions/minimal-chat-gpt-message.mjs.map 51.00 B
145
+ ESM dist/types/base/autosuggestions-bare-function.mjs.map 51.00 B
146
+ ESM dist/hooks/base-copilot-textarea-implementation/use-autosuggestions.mjs.map 51.00 B
147
+ ESM dist/hooks/make-autosuggestions-function/use-make-standard-autosuggestions-function.mjs.map 51.00 B
148
+ ESM dist/types/base/base-copilot-textarea-props.mjs.map 51.00 B
149
+ ESM dist/types/base/autosuggestion-state.mjs.map 51.00 B
150
+ ESM dist/types/base/custom-editor.mjs.map 51.00 B
151
+ ESM dist/types/standard-autosuggestions/index.mjs.map 51.00 B
152
+ ESM dist/types/standard-autosuggestions/autosuggestions-config.mjs.map 51.00 B
153
+ ESM dist/types/base/editor-autocomplete-state.mjs.map 51.00 B
154
+ ESM dist/types/base/base-autosuggestions-config.mjs.map 51.00 B
155
+ ESM dist/types/base/index.mjs.map 51.00 B
156
+ ESM dist/hooks/base-copilot-textarea-implementation/use-copilot-textarea-editor.mjs.map 51.00 B
157
+ ESM dist/hooks/base-copilot-textarea-implementation/use-populate-copilot-textarea-ref.mjs.map 51.00 B
158
+ ESM ⚡️ Build success in 3071ms
159
+ DTS ⚡️ Build success in 5297ms
160
+ DTS dist/index.d.ts 912.00 B
161
+ DTS dist/components/base-copilot-textarea/base-copilot-textarea.d.ts 669.00 B
162
+ DTS dist/components/copilot-textarea/copilot-textarea.d.ts 803.00 B
163
+ DTS dist/types/base/base-autosuggestions-config.d.ts 355.00 B
164
+ DTS dist/types/base/autosuggestions-bare-function.d.ts 162.00 B
165
+ DTS dist/types/base/base-copilot-textarea-props.d.ts 1.89 KB
166
+ DTS dist/types/html-copilot-textarea-element.d.ts 165.00 B
167
+ DTS dist/types/standard-autosuggestions/autosuggestions-config.d.ts 884.00 B
168
+ DTS dist/types/standard-autosuggestions/minimal-chat-gpt-message.d.ts 129.00 B
169
+ DTS dist/components/index.d.ts 561.00 B
170
+ DTS dist/context/index.d.ts 1.00 B
171
+ DTS dist/hooks/index.d.ts 1.00 B
172
+ DTS dist/lib/debouncer.d.ts 372.00 B
173
+ DTS dist/lib/editor-to-text.d.ts 243.00 B
174
+ DTS dist/lib/get-text-around-cursor.d.ts 453.00 B
175
+ DTS dist/types/base/editor-autocomplete-state.d.ts 342.00 B
176
+ DTS dist/lib/utils.test.d.ts 1.00 B
177
+ DTS dist/lib/utils.d.ts 638.00 B
178
+ DTS dist/types/index.d.ts 670.00 B
179
+ DTS dist/components/base-copilot-textarea/render-element.d.ts 292.00 B
180
+ DTS dist/components/base-copilot-textarea/render-placeholder.d.ts 321.00 B
181
+ DTS dist/components/base-copilot-textarea/use-add-branding-css.d.ts 158.00 B
182
+ DTS dist/hooks/base-copilot-textarea-implementation/use-autosuggestions.d.ts 888.00 B
183
+ DTS dist/types/base/autosuggestion-state.d.ts 143.00 B
184
+ DTS dist/hooks/base-copilot-textarea-implementation/use-copilot-textarea-editor.d.ts 226.00 B
185
+ DTS dist/types/base/custom-editor.d.ts 801.00 B
186
+ DTS dist/hooks/base-copilot-textarea-implementation/use-populate-copilot-textarea-ref.d.ts 308.00 B
187
+ DTS dist/hooks/make-autosuggestions-function/use-make-standard-autosuggestions-function.d.ts 1.79 KB
188
+ DTS dist/lib/slatejs-edits/add-autocompletions.d.ts 302.00 B
189
+ DTS dist/lib/slatejs-edits/clear-autocompletions.d.ts 250.00 B
190
+ DTS dist/lib/slatejs-edits/replace-text.d.ts 139.00 B
191
+ DTS dist/lib/slatejs-edits/with-partial-history.d.ts 542.00 B
192
+ DTS dist/types/base/index.d.ts 287.00 B
193
+ DTS dist/types/standard-autosuggestions/index.d.ts 286.00 B
package/CHANGELOG.md CHANGED
@@ -1,5 +1,18 @@
1
1
  # ui
2
2
 
3
+ ## 0.12.0
4
+
5
+ ### Minor Changes
6
+
7
+ - ec7484f: - CopilotTextarea supports passing in ref compatible with <textarea>'s HTMLTextAreaElement ref (for focus, blur, styling, etc.)
8
+ - Minor bug fix: CopilotTextarea branding remains correclty positioned as textarea scrolls
9
+
10
+ ## 0.11.0
11
+
12
+ ### Minor Changes
13
+
14
+ - 3517bd5: CopilotTextarea supports standard onChange interface
15
+
3
16
  ## 0.10.0
4
17
 
5
18
  ### Minor Changes
@@ -0,0 +1,83 @@
1
+ import { replaceEditorText } from './chunk-TSF4AJIK.mjs';
2
+ import { getFullEditorTextWithNewlines } from './chunk-3UQM3NLM.mjs';
3
+ import React from 'react';
4
+ import { ReactEditor } from 'slate-react';
5
+
6
+ function usePopulateCopilotTextareaRef(editor, ref) {
7
+ React.useImperativeHandle(
8
+ ref,
9
+ () => {
10
+ class Combined {
11
+ constructor(customMethods2, editorHtmlElement2) {
12
+ this.customMethods = customMethods2;
13
+ this.editorHtmlElement = editorHtmlElement2;
14
+ }
15
+ get(target, propKey) {
16
+ if (this.isKeyOfCustomMethods(propKey)) {
17
+ const value = this.customMethods[propKey];
18
+ if (typeof value === "function") {
19
+ return value.bind(this.customMethods);
20
+ }
21
+ return value;
22
+ } else if (this.isKeyOfHTMLElement(propKey)) {
23
+ const value = this.editorHtmlElement[propKey];
24
+ if (typeof value === "function") {
25
+ return value.bind(this.editorHtmlElement);
26
+ }
27
+ return value;
28
+ }
29
+ }
30
+ set(target, propKey, value) {
31
+ if (this.isKeyOfCustomMethods(propKey)) {
32
+ this.customMethods[propKey] = value;
33
+ } else if (this.isKeyOfHTMLElement(propKey)) {
34
+ this.editorHtmlElement[propKey] = value;
35
+ } else {
36
+ target[propKey] = value;
37
+ }
38
+ return true;
39
+ }
40
+ isKeyOfCustomMethods(key) {
41
+ return key in this.customMethods;
42
+ }
43
+ isKeyOfHTMLElement(key) {
44
+ return key in this.editorHtmlElement;
45
+ }
46
+ }
47
+ const handler = {
48
+ get(target, propKey) {
49
+ return target.get(target, propKey);
50
+ },
51
+ set(target, propKey, value) {
52
+ return target.set(target, propKey, value);
53
+ }
54
+ };
55
+ class CustomMethods {
56
+ constructor(editor2) {
57
+ this.editor = editor2;
58
+ }
59
+ focus() {
60
+ ReactEditor.focus(this.editor);
61
+ }
62
+ blur() {
63
+ ReactEditor.blur(this.editor);
64
+ }
65
+ get value() {
66
+ return getFullEditorTextWithNewlines(this.editor);
67
+ }
68
+ set value(value) {
69
+ replaceEditorText(this.editor, value);
70
+ }
71
+ }
72
+ const editorHtmlElement = ReactEditor.toDOMNode(editor, editor);
73
+ const customMethods = new CustomMethods(editor);
74
+ const combined = new Combined(customMethods, editorHtmlElement);
75
+ return new Proxy(combined, handler);
76
+ },
77
+ [editor]
78
+ );
79
+ }
80
+
81
+ export { usePopulateCopilotTextareaRef };
82
+ //# sourceMappingURL=out.js.map
83
+ //# sourceMappingURL=chunk-AOEXKPIX.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/hooks/base-copilot-textarea-implementation/use-populate-copilot-textarea-ref.ts"],"names":["customMethods","editorHtmlElement","editor"],"mappings":";;;;;;;;AAAA,OAAO,WAAW;AAElB,SAAS,mBAAmB;AAMrB,SAAS,8BACd,QACA,KACA;AACA,QAAM;AAAA,IACJ;AAAA,IACA,MAAM;AACJ,YAAM,SAAS;AAAA,QACb,YACUA,gBACAC,oBACR;AAFQ,+BAAAD;AACA,mCAAAC;AAAA,QACP;AAAA,QAIH,IAAI,QAAa,SAAsB;AACrC,cAAI,KAAK,qBAAqB,OAAO,GAAG;AACtC,kBAAM,QAAQ,KAAK,cAAc;AACjC,gBAAI,OAAO,UAAU,YAAY;AAC/B,qBAAO,MAAM,KAAK,KAAK,aAAa;AAAA,YACtC;AACA,mBAAO;AAAA,UACT,WAAW,KAAK,mBAAmB,OAAO,GAAG;AAC3C,kBAAM,QAAQ,KAAK,kBAAkB;AACrC,gBAAI,OAAO,UAAU,YAAY;AAC/B,qBAAO,MAAM,KAAK,KAAK,iBAAiB;AAAA,YAC1C;AACA,mBAAO;AAAA,UACT;AAAA,QACF;AAAA,QAEA,IAAI,QAAa,SAAiB,OAAqB;AACrD,cAAI,KAAK,qBAAqB,OAAO,GAAG;AACtC,YAAC,KAAK,cAAsB,WAAW;AAAA,UACzC,WAAW,KAAK,mBAAmB,OAAO,GAAG;AAC3C,YAAC,KAAK,kBAA0B,WAAW;AAAA,UAC7C,OAAO;AAEL,mBAAO,WAAW;AAAA,UACpB;AACA,iBAAO;AAAA,QACT;AAAA,QAEQ,qBAAqB,KAAyC;AACpE,iBAAO,OAAO,KAAK;AAAA,QACrB;AAAA,QAEQ,mBAAmB,KAAuC;AAChE,iBAAO,OAAO,KAAK;AAAA,QACrB;AAAA,MACF;AAEA,YAAM,UAAU;AAAA,QACd,IAAI,QAAa,SAAkD;AACjE,iBAAO,OAAO,IAAI,QAAQ,OAAO;AAAA,QACnC;AAAA,QACA,IACE,QACA,SACA,OACA;AACA,iBAAO,OAAO,IAAI,QAAQ,SAAS,KAAK;AAAA,QAC1C;AAAA,MACF;AAEA,YAAM,cAAc;AAAA,QAClB,YAAoBC,SAAsB;AAAtB,wBAAAA;AAAA,QAAuB;AAAA,QAE3C,QAAQ;AACN,sBAAY,MAAM,KAAK,MAAM;AAAA,QAC/B;AAAA,QAEA,OAAO;AACL,sBAAY,KAAK,KAAK,MAAM;AAAA,QAC9B;AAAA,QAEA,IAAI,QAAQ;AACV,iBAAO,8BAA8B,KAAK,MAAM;AAAA,QAClD;AAAA,QACA,IAAI,MAAM,OAAe;AACvB,4BAAkB,KAAK,QAAQ,KAAK;AAAA,QACtC;AAAA,MACF;AAEA,YAAM,oBAAoB,YAAY,UAAU,QAAQ,MAAM;AAC9D,YAAM,gBAAgB,IAAI,cAAc,MAAM;AAE9C,YAAM,WAAW,IAAI,SAAS,eAAe,iBAAiB;AAC9D,aAAO,IAAI,MAAM,UAAU,OAAO;AAAA,IACpC;AAAA,IACA,CAAC,MAAM;AAAA,EACT;AACF","sourcesContent":["import React from \"react\";\nimport { Editor } from \"slate\";\nimport { ReactEditor } from \"slate-react\";\nimport { getFullEditorTextWithNewlines } from \"../../lib/get-text-around-cursor\";\nimport { replaceEditorText } from \"../../lib/slatejs-edits/replace-text\";\nimport { HTMLCopilotTextAreaElement } from \"../../types\";\nimport { CustomEditor } from \"../../types/base/custom-editor\";\n\nexport function usePopulateCopilotTextareaRef(\n editor: Editor,\n ref: React.Ref<HTMLCopilotTextAreaElement>\n) {\n React.useImperativeHandle(\n ref,\n () => {\n class Combined {\n constructor(\n private customMethods: CustomMethods,\n private editorHtmlElement: HTMLElement\n ) {}\n\n [key: string]: any;\n\n get(target: any, propKey: string): any {\n if (this.isKeyOfCustomMethods(propKey)) {\n const value = this.customMethods[propKey];\n if (typeof value === \"function\") {\n return value.bind(this.customMethods);\n }\n return value;\n } else if (this.isKeyOfHTMLElement(propKey)) {\n const value = this.editorHtmlElement[propKey];\n if (typeof value === \"function\") {\n return value.bind(this.editorHtmlElement);\n }\n return value;\n }\n }\n\n set(target: any, propKey: string, value: any): boolean {\n if (this.isKeyOfCustomMethods(propKey)) {\n (this.customMethods as any)[propKey] = value;\n } else if (this.isKeyOfHTMLElement(propKey)) {\n (this.editorHtmlElement as any)[propKey] = value;\n } else {\n // Default behavior (optional)\n target[propKey] = value;\n }\n return true;\n }\n\n private isKeyOfCustomMethods(key: string): key is keyof CustomMethods {\n return key in this.customMethods;\n }\n\n private isKeyOfHTMLElement(key: string): key is keyof HTMLElement {\n return key in this.editorHtmlElement;\n }\n }\n\n const handler = {\n get(target: any, propKey: keyof CustomMethods | keyof HTMLElement) {\n return target.get(target, propKey);\n },\n set(\n target: any,\n propKey: keyof CustomMethods | keyof HTMLElement,\n value: any\n ) {\n return target.set(target, propKey, value);\n },\n };\n\n class CustomMethods {\n constructor(private editor: CustomEditor) {}\n\n focus() {\n ReactEditor.focus(this.editor);\n }\n\n blur() {\n ReactEditor.blur(this.editor);\n }\n\n get value() {\n return getFullEditorTextWithNewlines(this.editor);\n }\n set value(value: string) {\n replaceEditorText(this.editor, value);\n }\n }\n\n const editorHtmlElement = ReactEditor.toDOMNode(editor, editor);\n const customMethods = new CustomMethods(editor);\n\n const combined = new Combined(customMethods, editorHtmlElement);\n return new Proxy(combined, handler);\n },\n [editor]\n );\n}\n"]}
@@ -1,7 +1,7 @@
1
1
  import { withPartialHistory, defaultShouldSave } from './chunk-KCHYD3EB.mjs';
2
+ import { useMemo } from 'react';
2
3
  import { createEditor, Element } from 'slate';
3
4
  import { withReact } from 'slate-react';
4
- import { useMemo } from 'react';
5
5
 
6
6
  var shouldSave = (op, prev) => {
7
7
  const excludedNodeType = "suggestion";
@@ -62,4 +62,4 @@ function useCopilotTextareaEditor() {
62
62
 
63
63
  export { useCopilotTextareaEditor };
64
64
  //# sourceMappingURL=out.js.map
65
- //# sourceMappingURL=chunk-6SYD77G6.mjs.map
65
+ //# sourceMappingURL=chunk-CSGFJU3L.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/hooks/base-copilot-textarea-implementation/use-copilot-textarea-editor.tsx"],"names":["editor"],"mappings":";;;;;;AAAA,SAAS,eAAe;AACxB,SAAS,cAAc,eAAe;AACtC,SAAS,iBAAiB;AAQ1B,IAAM,aAAkC,CAAC,IAAI,SAAS;AACpD,QAAM,mBAAmB;AAEzB,MACE,GAAG,SAAS,iBACZ,QAAQ,UAAU,GAAG,IAAI,KACzB,GAAG,KAAK,SAAS,kBACjB;AACA,WAAO;AAAA,EACT;AAEA,MACE,GAAG,SAAS,iBACZ,QAAQ,UAAU,GAAG,IAAI,KACzB,GAAG,KAAK,SAAS,kBACjB;AACA,WAAO;AAAA,EACT;AAEA,MACE,GAAG,SAAS,cACZ,UAAU,GAAG,iBACb,GAAG,cAAc,SAAS,kBAC1B;AACA,WAAO;AAAA,EACT;AAEA,MACE,GAAG,QAAQ,cACX,UAAU,GAAG,cACb,GAAG,WAAW,SAAS,kBACvB;AACA,WAAO;AAAA,EACT;AAEA,MACE,GAAG,SAAS,gBACZ,UAAU,GAAG,cACb,GAAG,WAAW,SAAS,kBACvB;AACA,WAAO;AAAA,EACT;AAEA,MACE,GAAG,SAAS,gBACZ,UAAU,GAAG,cACb,GAAG,WAAW,SAAS,kBACvB;AACA,WAAO;AAAA,EACT;AAGA,SAAO,kBAAkB,IAAI,IAAI;AACnC;AAEO,SAAS,2BAAyC;AACvD,QAAM,SAAS,QAAQ,MAAM;AAC3B,UAAMA,UAAS,mBAAmB,UAAU,aAAa,CAAC,GAAG,UAAU;AAEvE,UAAM,EAAE,OAAO,IAAIA;AACnB,IAAAA,QAAO,SAAS,CAAC,YAAY;AAC3B,cAAQ,QAAQ,MAAM;AAAA,QACpB,KAAK;AACH,iBAAO;AAAA,QACT;AACE,iBAAO,OAAO,OAAO;AAAA,MACzB;AAAA,IACF;AAEA,UAAM,EAAE,aAAa,IAAIA;AACzB,IAAAA,QAAO,eAAe,CAAC,YAAY;AACjC,cAAQ,QAAQ,MAAM;AAAA,QACpB,KAAK;AACH,iBAAO;AAAA,QACT;AACE,iBAAO,aAAa,OAAO;AAAA,MAC/B;AAAA,IACF;AAEA,UAAM,EAAE,SAAS,IAAIA;AACrB,IAAAA,QAAO,WAAW,CAAC,YAAY;AAC7B,cAAQ,QAAQ,MAAM;AAAA,QACpB,KAAK;AACH,iBAAO,QAAQ;AAAA,QACjB;AACE,iBAAO,SAAS,OAAO;AAAA,MAC3B;AAAA,IACF;AAEA,WAAOA;AAAA,EACT,GAAG,CAAC,CAAC;AAEL,SAAO;AACT","sourcesContent":["import { useMemo } from \"react\";\nimport { createEditor, Element } from \"slate\";\nimport { withReact } from \"slate-react\";\nimport {\n defaultShouldSave,\n ShouldSaveToHistory,\n withPartialHistory,\n} from \"../../lib/slatejs-edits/with-partial-history\";\nimport { CustomEditor } from \"../../types/base/custom-editor\";\n\nconst shouldSave: ShouldSaveToHistory = (op, prev) => {\n const excludedNodeType = \"suggestion\";\n // Check if the operation involves the suggestion inline node type\n if (\n op.type === \"insert_node\" &&\n Element.isElement(op.node) &&\n op.node.type === excludedNodeType\n ) {\n return false;\n }\n\n if (\n op.type === \"remove_node\" &&\n Element.isElement(op.node) &&\n op.node.type === excludedNodeType\n ) {\n return false;\n }\n\n if (\n op.type === \"set_node\" &&\n \"type\" in op.newProperties &&\n op.newProperties.type === excludedNodeType\n ) {\n return false;\n }\n\n if (\n op.type == \"set_node\" &&\n \"type\" in op.properties &&\n op.properties.type === excludedNodeType\n ) {\n return false;\n }\n\n if (\n op.type === \"merge_node\" &&\n \"type\" in op.properties &&\n op.properties.type === excludedNodeType\n ) {\n return false;\n }\n\n if (\n op.type === \"split_node\" &&\n \"type\" in op.properties &&\n op.properties.type === excludedNodeType\n ) {\n return false;\n }\n\n // Otherwise, save the operation to history\n return defaultShouldSave(op, prev);\n};\n\nexport function useCopilotTextareaEditor(): CustomEditor {\n const editor = useMemo(() => {\n const editor = withPartialHistory(withReact(createEditor()), shouldSave);\n\n const { isVoid } = editor;\n editor.isVoid = (element) => {\n switch (element.type) {\n case \"suggestion\":\n return true;\n default:\n return isVoid(element);\n }\n };\n\n const { markableVoid } = editor;\n editor.markableVoid = (element) => {\n switch (element.type) {\n case \"suggestion\":\n return true;\n default:\n return markableVoid(element);\n }\n };\n\n const { isInline } = editor;\n editor.isInline = (element) => {\n switch (element.type) {\n case \"suggestion\":\n return element.inline;\n default:\n return isInline(element);\n }\n };\n\n return editor;\n }, []);\n\n return editor;\n}\n"]}