@copilotkit/react-textarea 0.8.0 → 0.10.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.
- package/.turbo/turbo-build.log +101 -90
- package/CHANGELOG.md +12 -0
- package/dist/{chunk-6LKDH2UJ.mjs → chunk-7KWRVIYV.mjs} +3 -2
- package/dist/chunk-7KWRVIYV.mjs.map +1 -0
- package/dist/{chunk-6FAYV255.mjs → chunk-CU2M5BIJ.mjs} +17 -8
- package/dist/chunk-CU2M5BIJ.mjs.map +1 -0
- package/dist/{chunk-24IOWJS4.mjs → chunk-E2UEE45I.mjs} +11 -3
- package/dist/chunk-E2UEE45I.mjs.map +1 -0
- package/dist/{chunk-ZPACRCJ6.mjs → chunk-EHQ5TN4R.mjs} +2 -2
- package/dist/{chunk-6Q4X3YEO.mjs → chunk-LNAIMEB2.mjs} +2 -5
- package/dist/chunk-LNAIMEB2.mjs.map +1 -0
- package/dist/{chunk-PP225CLG.mjs → chunk-NHLYAJCQ.mjs} +3 -3
- package/dist/chunk-THWPPG6M.mjs +40 -0
- package/dist/chunk-THWPPG6M.mjs.map +1 -0
- package/dist/components/base-copilot-textarea/base-copilot-textarea.css +9 -0
- package/dist/components/base-copilot-textarea/base-copilot-textarea.css.map +1 -0
- package/dist/components/base-copilot-textarea/base-copilot-textarea.d.ts +1 -0
- package/dist/components/base-copilot-textarea/base-copilot-textarea.mjs +5 -4
- package/dist/components/base-copilot-textarea/render-element.mjs +1 -1
- package/dist/components/base-copilot-textarea/use-add-branding-css.d.ts +3 -0
- package/dist/components/base-copilot-textarea/use-add-branding-css.mjs +4 -0
- package/dist/components/base-copilot-textarea/use-add-branding-css.mjs.map +1 -0
- package/dist/components/copilot-textarea/copilot-textarea.css +9 -0
- package/dist/components/copilot-textarea/copilot-textarea.css.map +1 -0
- package/dist/components/copilot-textarea/copilot-textarea.mjs +7 -6
- package/dist/components/index.css +9 -0
- package/dist/components/index.css.map +1 -0
- package/dist/components/index.mjs +7 -6
- package/dist/hooks/use-autosuggestions.d.ts +1 -1
- package/dist/hooks/use-autosuggestions.mjs +1 -1
- package/dist/index.css +12 -0
- package/dist/index.css.map +1 -1
- package/dist/index.mjs +7 -6
- package/dist/types/base/base-autosuggestions-config.d.ts +1 -0
- package/dist/types/base/base-autosuggestions-config.mjs +1 -1
- package/dist/types/base/index.mjs +1 -1
- package/dist/types/index.mjs +2 -2
- package/dist/types/standard-autosuggestions/autosuggestions-config.mjs +2 -2
- package/dist/types/standard-autosuggestions/index.mjs +2 -2
- package/package.json +1 -1
- package/src/components/base-copilot-textarea/base-copilot-textarea.css +9 -0
- package/src/components/base-copilot-textarea/base-copilot-textarea.tsx +18 -6
- package/src/components/base-copilot-textarea/render-element.tsx +0 -2
- package/src/components/base-copilot-textarea/use-add-branding-css.tsx +51 -0
- package/src/hooks/use-autosuggestions.ts +14 -2
- package/src/types/base/base-autosuggestions-config.tsx +2 -0
- package/.turbo/turbo-check-types.log +0 -4
- package/dist/chunk-24IOWJS4.mjs.map +0 -1
- package/dist/chunk-6FAYV255.mjs.map +0 -1
- package/dist/chunk-6LKDH2UJ.mjs.map +0 -1
- package/dist/chunk-6Q4X3YEO.mjs.map +0 -1
- /package/dist/{chunk-ZPACRCJ6.mjs.map → chunk-EHQ5TN4R.mjs.map} +0 -0
- /package/dist/{chunk-PP225CLG.mjs.map → chunk-NHLYAJCQ.mjs.map} +0 -0
package/.turbo/turbo-build.log
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
|
|
2
|
-
> @copilotkit/react-textarea@0.
|
|
2
|
+
> @copilotkit/react-textarea@0.10.0 build /Users/ataibarkai/LocalGit/Recursively.ai/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/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/
|
|
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
6
|
CLI Using tsconfig: tsconfig.json
|
|
7
7
|
CLI tsup v6.5.0
|
|
8
8
|
CLI Using tsup config: /Users/ataibarkai/LocalGit/Recursively.ai/CopilotKit/CopilotKit/packages/react-textarea/tsup.config.ts
|
|
@@ -13,139 +13,149 @@ 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
15
|
DTS Build start
|
|
16
|
-
Generated an empty chunk: "custom-editor".
|
|
17
16
|
Generated an empty chunk: "minimal-chat-gpt-message".
|
|
18
17
|
Generated an empty chunk: "autosuggestion-state".
|
|
19
18
|
Generated an empty chunk: "autosuggestions-bare-function".
|
|
19
|
+
Generated an empty chunk: "custom-editor".
|
|
20
20
|
Generated an empty chunk: "chunk-FD6FGKYY".
|
|
21
21
|
Generated an empty chunk: "chunk-IU3WTXLQ".
|
|
22
22
|
Generated an empty chunk: "chunk-MMVDU6DF".
|
|
23
23
|
Generated an empty chunk: "chunk-AZQCUNBV".
|
|
24
24
|
Generated an empty chunk: "chunk-WJHSY5T6".
|
|
25
25
|
Generated an empty chunk: "chunk-H4VKQGVU".
|
|
26
|
-
ESM dist/
|
|
27
|
-
ESM dist/
|
|
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
|
|
28
37
|
ESM dist/lib/utils.test.mjs 200.00 B
|
|
29
|
-
ESM dist/
|
|
30
|
-
ESM dist/
|
|
31
|
-
ESM dist/
|
|
32
|
-
ESM dist/components/index.mjs 792.00 B
|
|
33
|
-
ESM dist/hooks/index.mjs 98.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
|
|
34
41
|
ESM dist/chunk-FD6FGKYY.mjs 76.00 B
|
|
42
|
+
ESM dist/types/base/custom-editor.mjs 75.00 B
|
|
35
43
|
ESM dist/chunk-IU3WTXLQ.mjs 76.00 B
|
|
36
|
-
ESM dist/
|
|
37
|
-
ESM dist/
|
|
38
|
-
ESM dist/
|
|
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
|
|
39
50
|
ESM dist/lib/slatejs-edits/clear-autocompletions.mjs 192.00 B
|
|
40
|
-
ESM dist/lib/slatejs-edits/replace-text.mjs 170.00 B
|
|
41
51
|
ESM dist/lib/slatejs-edits/with-partial-history.mjs 198.00 B
|
|
42
|
-
ESM dist/
|
|
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
|
|
43
55
|
ESM dist/lib/utils.mjs 220.00 B
|
|
44
|
-
ESM dist/
|
|
45
|
-
ESM dist/
|
|
46
|
-
ESM dist/
|
|
47
|
-
ESM dist/
|
|
48
|
-
ESM dist/
|
|
49
|
-
ESM dist/
|
|
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
|
|
50
67
|
ESM dist/chunk-4XYYSJ5C.mjs 527.00 B
|
|
51
68
|
ESM dist/chunk-TSF4AJIK.mjs 716.00 B
|
|
52
|
-
ESM dist/
|
|
53
|
-
ESM dist/chunk-
|
|
69
|
+
ESM dist/types/index.mjs 387.00 B
|
|
70
|
+
ESM dist/chunk-A3SFEHWZ.mjs 2.09 KB
|
|
54
71
|
ESM dist/chunk-OELUUJZY.mjs 625.00 B
|
|
72
|
+
ESM dist/chunk-LNAIMEB2.mjs 1.09 KB
|
|
55
73
|
ESM dist/hooks/use-autosuggestions.mjs 268.00 B
|
|
56
|
-
ESM dist/
|
|
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
|
|
57
79
|
ESM dist/chunk-UW3ITU2Y.mjs 496.00 B
|
|
80
|
+
ESM dist/chunk-KCHYD3EB.mjs 3.08 KB
|
|
58
81
|
ESM dist/chunk-KGKLUWKW.mjs 1.37 KB
|
|
82
|
+
ESM dist/chunk-3UQM3NLM.mjs 1.76 KB
|
|
59
83
|
ESM dist/hooks/use-copilot-textarea-editor.mjs 218.00 B
|
|
60
|
-
ESM dist/chunk-6SYD77G6.mjs 2.01 KB
|
|
61
|
-
ESM dist/chunk-KCHYD3EB.mjs 3.08 KB
|
|
62
84
|
ESM dist/lib/debouncer.mjs 153.00 B
|
|
63
|
-
ESM dist/chunk-
|
|
85
|
+
ESM dist/chunk-E2UEE45I.mjs 3.02 KB
|
|
64
86
|
ESM dist/lib/editor-to-text.mjs 1.34 KB
|
|
65
|
-
ESM dist/chunk-
|
|
66
|
-
ESM dist/chunk-
|
|
67
|
-
ESM dist/chunk-
|
|
68
|
-
ESM dist/types/
|
|
69
|
-
ESM dist/types/standard-autosuggestions/minimal-chat-gpt-message.mjs 86.00 B
|
|
70
|
-
ESM dist/hooks/make-autosuggestions-function/use-make-standard-autosuggestions-function.mjs 220.00 B
|
|
71
|
-
ESM dist/components/base-copilot-textarea/base-copilot-textarea.mjs 671.00 B
|
|
72
|
-
ESM dist/components/copilot-textarea/copilot-textarea.mjs 802.00 B
|
|
73
|
-
ESM dist/types/base/autosuggestion-state.mjs 82.00 B
|
|
74
|
-
ESM dist/types/base/autosuggestions-bare-function.mjs 91.00 B
|
|
75
|
-
ESM dist/types/base/editor-autocomplete-state.mjs 227.00 B
|
|
76
|
-
ESM dist/types/base/index.mjs 213.00 B
|
|
77
|
-
ESM dist/types/standard-autosuggestions/index.mjs 328.00 B
|
|
78
|
-
ESM dist/types/base/base-autosuggestions-config.mjs 200.00 B
|
|
79
|
-
ESM dist/components/base-copilot-textarea/render-element.mjs 180.00 B
|
|
80
|
-
ESM dist/components/base-copilot-textarea/render-placeholder.mjs 188.00 B
|
|
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
|
|
81
91
|
ESM dist/lib/utils.test.mjs.map 349.00 B
|
|
82
|
-
ESM dist/
|
|
83
|
-
ESM dist/
|
|
84
|
-
ESM dist/
|
|
85
|
-
ESM dist/
|
|
86
|
-
ESM dist/
|
|
87
|
-
ESM dist/hooks/index.mjs.map 51.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
|
|
88
97
|
ESM dist/chunk-FD6FGKYY.mjs.map 51.00 B
|
|
89
|
-
ESM dist/chunk-
|
|
90
|
-
ESM dist/
|
|
91
|
-
ESM dist/
|
|
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
|
|
92
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
|
|
93
108
|
ESM dist/lib/get-text-around-cursor.mjs.map 51.00 B
|
|
94
|
-
ESM dist/
|
|
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
|
|
95
112
|
ESM dist/lib/utils.mjs.map 51.00 B
|
|
96
|
-
ESM dist/chunk-
|
|
97
|
-
ESM dist/
|
|
98
|
-
ESM dist/
|
|
99
|
-
ESM dist/
|
|
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
|
|
100
121
|
ESM dist/chunk-TSF4AJIK.mjs.map 1.31 KB
|
|
122
|
+
ESM dist/types/index.mjs.map 51.00 B
|
|
101
123
|
ESM dist/chunk-4XYYSJ5C.mjs.map 921.00 B
|
|
102
|
-
ESM dist/chunk-
|
|
124
|
+
ESM dist/chunk-LNAIMEB2.mjs.map 1.73 KB
|
|
103
125
|
ESM dist/hooks/use-autosuggestions.mjs.map 51.00 B
|
|
104
126
|
ESM dist/chunk-OELUUJZY.mjs.map 957.00 B
|
|
105
|
-
ESM dist/chunk-
|
|
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
|
|
106
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
|
|
107
138
|
ESM dist/hooks/use-copilot-textarea-editor.mjs.map 51.00 B
|
|
108
|
-
ESM dist/chunk-
|
|
109
|
-
ESM dist/chunk-6SYD77G6.mjs.map 3.78 KB
|
|
139
|
+
ESM dist/chunk-E2UEE45I.mjs.map 5.78 KB
|
|
110
140
|
ESM dist/lib/debouncer.mjs.map 51.00 B
|
|
111
|
-
ESM dist/chunk-
|
|
112
|
-
ESM dist/chunk-AZQCUNBV.mjs.map 51.00 B
|
|
141
|
+
ESM dist/chunk-3UQM3NLM.mjs.map 3.63 KB
|
|
113
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
|
|
114
145
|
ESM dist/chunk-WJYQWL4I.mjs.map 1.04 KB
|
|
115
|
-
ESM
|
|
116
|
-
|
|
117
|
-
ESM dist/chunk-6LKDH2UJ.mjs.map 566.00 B
|
|
118
|
-
ESM dist/chunk-A3SFEHWZ.mjs.map 4.73 KB
|
|
119
|
-
ESM dist/chunk-MMVDU6DF.mjs.map 51.00 B
|
|
120
|
-
ESM dist/chunk-H4VKQGVU.mjs.map 51.00 B
|
|
121
|
-
ESM dist/chunk-KCHYD3EB.mjs.map 6.12 KB
|
|
122
|
-
ESM dist/types/base/custom-editor.mjs.map 51.00 B
|
|
123
|
-
ESM dist/hooks/make-autosuggestions-function/use-make-standard-autosuggestions-function.mjs.map 51.00 B
|
|
124
|
-
ESM dist/types/standard-autosuggestions/minimal-chat-gpt-message.mjs.map 51.00 B
|
|
125
|
-
ESM dist/components/base-copilot-textarea/base-copilot-textarea.mjs.map 51.00 B
|
|
126
|
-
ESM dist/components/copilot-textarea/copilot-textarea.mjs.map 51.00 B
|
|
127
|
-
ESM dist/types/base/autosuggestion-state.mjs.map 51.00 B
|
|
128
|
-
ESM dist/types/base/autosuggestions-bare-function.mjs.map 51.00 B
|
|
129
|
-
ESM dist/types/base/editor-autocomplete-state.mjs.map 51.00 B
|
|
130
|
-
ESM dist/types/base/index.mjs.map 51.00 B
|
|
131
|
-
ESM dist/types/standard-autosuggestions/index.mjs.map 51.00 B
|
|
132
|
-
ESM dist/types/base/base-autosuggestions-config.mjs.map 51.00 B
|
|
133
|
-
ESM dist/components/base-copilot-textarea/render-element.mjs.map 51.00 B
|
|
134
|
-
ESM dist/components/base-copilot-textarea/render-placeholder.mjs.map 51.00 B
|
|
135
|
-
ESM dist/types/standard-autosuggestions/autosuggestions-config.mjs.map 51.00 B
|
|
136
|
-
ESM ⚡️ Build success in 548ms
|
|
137
|
-
DTS ⚡️ Build success in 1038ms
|
|
146
|
+
ESM ⚡️ Build success in 544ms
|
|
147
|
+
DTS ⚡️ Build success in 1401ms
|
|
138
148
|
DTS dist/index.d.ts 763.00 B
|
|
139
|
-
DTS dist/components/base-copilot-textarea/base-copilot-textarea.d.ts
|
|
149
|
+
DTS dist/components/base-copilot-textarea/base-copilot-textarea.d.ts 820.00 B
|
|
140
150
|
DTS dist/components/copilot-textarea/copilot-textarea.d.ts 703.00 B
|
|
141
|
-
DTS dist/types/base/base-autosuggestions-config.d.ts
|
|
151
|
+
DTS dist/types/base/base-autosuggestions-config.d.ts 355.00 B
|
|
142
152
|
DTS dist/types/base/autosuggestions-bare-function.d.ts 162.00 B
|
|
143
153
|
DTS dist/types/standard-autosuggestions/autosuggestions-config.d.ts 884.00 B
|
|
144
154
|
DTS dist/types/standard-autosuggestions/minimal-chat-gpt-message.d.ts 129.00 B
|
|
145
155
|
DTS dist/context/index.d.ts 1.00 B
|
|
146
156
|
DTS dist/components/index.d.ts 480.00 B
|
|
147
157
|
DTS dist/hooks/index.d.ts 1.00 B
|
|
148
|
-
DTS dist/hooks/use-autosuggestions.d.ts
|
|
158
|
+
DTS dist/hooks/use-autosuggestions.d.ts 879.00 B
|
|
149
159
|
DTS dist/types/base/autosuggestion-state.d.ts 143.00 B
|
|
150
160
|
DTS dist/types/base/editor-autocomplete-state.d.ts 342.00 B
|
|
151
161
|
DTS dist/hooks/use-copilot-textarea-editor.d.ts 223.00 B
|
|
@@ -158,10 +168,11 @@ DTS dist/lib/utils.d.ts
|
|
|
158
168
|
DTS dist/types/index.d.ts 491.00 B
|
|
159
169
|
DTS dist/components/base-copilot-textarea/render-element.d.ts 292.00 B
|
|
160
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
|
|
161
172
|
DTS dist/hooks/make-autosuggestions-function/use-make-standard-autosuggestions-function.d.ts 1.79 KB
|
|
162
173
|
DTS dist/lib/slatejs-edits/add-autocompletions.d.ts 302.00 B
|
|
163
174
|
DTS dist/lib/slatejs-edits/clear-autocompletions.d.ts 250.00 B
|
|
164
175
|
DTS dist/lib/slatejs-edits/replace-text.d.ts 139.00 B
|
|
165
176
|
DTS dist/lib/slatejs-edits/with-partial-history.d.ts 542.00 B
|
|
166
|
-
DTS dist/types/base/index.d.ts 194.00 B
|
|
167
177
|
DTS dist/types/standard-autosuggestions/index.d.ts 286.00 B
|
|
178
|
+
DTS dist/types/base/index.d.ts 194.00 B
|
package/CHANGELOG.md
CHANGED
|
@@ -2,9 +2,10 @@
|
|
|
2
2
|
var defaultBaseAutosuggestionsConfig = {
|
|
3
3
|
debounceTime: 500,
|
|
4
4
|
acceptAutosuggestionKey: "Tab",
|
|
5
|
-
disableWhenEmpty: true
|
|
5
|
+
disableWhenEmpty: true,
|
|
6
|
+
disabled: false
|
|
6
7
|
};
|
|
7
8
|
|
|
8
9
|
export { defaultBaseAutosuggestionsConfig };
|
|
9
10
|
//# sourceMappingURL=out.js.map
|
|
10
|
-
//# sourceMappingURL=chunk-
|
|
11
|
+
//# sourceMappingURL=chunk-7KWRVIYV.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/types/base/base-autosuggestions-config.tsx"],"names":[],"mappings":";AAQO,IAAM,mCAGT;AAAA,EACF,cAAc;AAAA,EACd,yBAAyB;AAAA,EACzB,kBAAkB;AAAA,EAClB,UAAU;AACZ","sourcesContent":["export interface BaseAutosuggestionsConfig {\n purposePrompt: string;\n debounceTime: number;\n acceptAutosuggestionKey: string;\n disableWhenEmpty: boolean;\n disabled: boolean;\n}\n\nexport const defaultBaseAutosuggestionsConfig: Omit<\n BaseAutosuggestionsConfig,\n \"purposePrompt\"\n> = {\n debounceTime: 500,\n acceptAutosuggestionKey: \"Tab\",\n disableWhenEmpty: true,\n disabled: false,\n};\n"]}
|
|
@@ -2,10 +2,11 @@ import { addAutocompletionsToEditor } from './chunk-WJYQWL4I.mjs';
|
|
|
2
2
|
import { clearAutocompletionsFromEditor } from './chunk-4XYYSJ5C.mjs';
|
|
3
3
|
import { replaceEditorText } from './chunk-TSF4AJIK.mjs';
|
|
4
4
|
import { getTextAroundCursor, getFullEditorTextWithNewlines } from './chunk-3UQM3NLM.mjs';
|
|
5
|
-
import { defaultBaseAutosuggestionsConfig } from './chunk-
|
|
6
|
-
import { makeRenderElementFunction } from './chunk-
|
|
5
|
+
import { defaultBaseAutosuggestionsConfig } from './chunk-7KWRVIYV.mjs';
|
|
6
|
+
import { makeRenderElementFunction } from './chunk-LNAIMEB2.mjs';
|
|
7
7
|
import { makeRenderPlaceholderFunction } from './chunk-OELUUJZY.mjs';
|
|
8
|
-
import {
|
|
8
|
+
import { useAddBrandingCss } from './chunk-THWPPG6M.mjs';
|
|
9
|
+
import { useAutosuggestions } from './chunk-E2UEE45I.mjs';
|
|
9
10
|
import { useCopilotTextareaEditor } from './chunk-6SYD77G6.mjs';
|
|
10
11
|
import { __spreadValues, __objRest } from './chunk-MRXNTQOX.mjs';
|
|
11
12
|
import { useMemo, useState, useCallback, useEffect } from 'react';
|
|
@@ -47,7 +48,8 @@ function BaseCopilotTextarea(props) {
|
|
|
47
48
|
autosuggestionsConfig.acceptAutosuggestionKey,
|
|
48
49
|
props.autosuggestionsFunction,
|
|
49
50
|
insertText,
|
|
50
|
-
autosuggestionsConfig.disableWhenEmpty
|
|
51
|
+
autosuggestionsConfig.disableWhenEmpty,
|
|
52
|
+
autosuggestionsConfig.disabled
|
|
51
53
|
);
|
|
52
54
|
useEffect(() => {
|
|
53
55
|
clearAutocompletionsFromEditor(editor);
|
|
@@ -59,10 +61,16 @@ function BaseCopilotTextarea(props) {
|
|
|
59
61
|
);
|
|
60
62
|
}
|
|
61
63
|
}, [currentAutocompleteSuggestion]);
|
|
64
|
+
const suggestionStyleAugmented = useMemo(() => {
|
|
65
|
+
return __spreadValues({
|
|
66
|
+
fontStyle: "italic",
|
|
67
|
+
color: "gray"
|
|
68
|
+
}, props.suggestionsStyle);
|
|
69
|
+
}, [props.suggestionsStyle]);
|
|
70
|
+
useAddBrandingCss(suggestionStyleAugmented, props.disableBranding);
|
|
62
71
|
const renderElementMemoized = useMemo(() => {
|
|
63
|
-
const suggestionStyleAugmented = __spreadValues({}, props.suggestionsStyle);
|
|
64
72
|
return makeRenderElementFunction(suggestionStyleAugmented);
|
|
65
|
-
}, [
|
|
73
|
+
}, [suggestionStyleAugmented]);
|
|
66
74
|
const renderPlaceholderMemoized = useMemo(() => {
|
|
67
75
|
const placeholderStyleSlatejsOverrides = {
|
|
68
76
|
top: void 0
|
|
@@ -95,9 +103,10 @@ function BaseCopilotTextarea(props) {
|
|
|
95
103
|
]);
|
|
96
104
|
const moddedClassName = (() => {
|
|
97
105
|
const baseClassName = "copilot-textarea";
|
|
106
|
+
const brandingClass = props.disableBranding ? "no-branding" : "with-branding";
|
|
98
107
|
const defaultTailwindClassName = "bg-white overflow-y-auto resize-y";
|
|
99
108
|
const mergedClassName = twMerge(defaultTailwindClassName, className != null ? className : "");
|
|
100
|
-
return `${baseClassName} ${mergedClassName}`;
|
|
109
|
+
return `${baseClassName} ${brandingClass} ${mergedClassName}`;
|
|
101
110
|
})();
|
|
102
111
|
return /* @__PURE__ */ jsx(Slate, {
|
|
103
112
|
editor,
|
|
@@ -121,4 +130,4 @@ function BaseCopilotTextarea(props) {
|
|
|
121
130
|
|
|
122
131
|
export { BaseCopilotTextarea };
|
|
123
132
|
//# sourceMappingURL=out.js.map
|
|
124
|
-
//# sourceMappingURL=chunk-
|
|
133
|
+
//# sourceMappingURL=chunk-CU2M5BIJ.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/base-copilot-textarea/base-copilot-textarea.tsx"],"names":["_a","value"],"mappings":"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","sourcesContent":["import \"./base-copilot-textarea.css\";\nimport {\n TextareaHTMLAttributes,\n useCallback,\n useEffect,\n useMemo,\n useState,\n} from \"react\";\nimport { Descendant, Editor } from \"slate\";\nimport { Editable, Slate } from \"slate-react\";\nimport { twMerge } from \"tailwind-merge\";\nimport { useAutosuggestions } from \"../../hooks/use-autosuggestions\";\nimport { useCopilotTextareaEditor } from \"../../hooks/use-copilot-textarea-editor\";\nimport {\n getFullEditorTextWithNewlines,\n getTextAroundCursor,\n} from \"../../lib/get-text-around-cursor\";\nimport { addAutocompletionsToEditor } from \"../../lib/slatejs-edits/add-autocompletions\";\nimport { clearAutocompletionsFromEditor } from \"../../lib/slatejs-edits/clear-autocompletions\";\nimport { replaceEditorText } from \"../../lib/slatejs-edits/replace-text\";\nimport {\n AutosuggestionsBareFunction,\n BaseAutosuggestionsConfig,\n defaultBaseAutosuggestionsConfig,\n} from \"../../types/base\";\nimport { AutosuggestionState } from \"../../types/base/autosuggestion-state\";\nimport { makeRenderElementFunction } from \"./render-element\";\nimport { makeRenderPlaceholderFunction } from \"./render-placeholder\";\nimport { useAddBrandingCss } from \"./use-add-branding-css\";\n\nexport interface BaseCopilotTextareaProps\n extends TextareaHTMLAttributes<HTMLDivElement> {\n disableBranding?: boolean;\n placeholderStyle?: React.CSSProperties;\n suggestionsStyle?: React.CSSProperties;\n value?: string;\n onValueChange?: (value: string) => void;\n autosuggestionsConfig: Partial<BaseAutosuggestionsConfig> & {\n purposePrompt: string;\n };\n}\n\nexport function BaseCopilotTextarea(\n props: BaseCopilotTextareaProps & {\n autosuggestionsFunction: AutosuggestionsBareFunction;\n }\n): JSX.Element {\n const autosuggestionsConfig: BaseAutosuggestionsConfig = {\n ...defaultBaseAutosuggestionsConfig,\n ...props.autosuggestionsConfig,\n };\n\n const valueOnInitialRender = useMemo(() => props.value ?? \"\", []);\n const [lastKnownFullEditorText, setLastKnownFullEditorText] =\n useState(valueOnInitialRender);\n\n const initialValue: Descendant[] = useMemo(() => {\n return [\n {\n type: \"paragraph\",\n children: [{ text: valueOnInitialRender }],\n },\n ];\n }, [valueOnInitialRender]);\n\n const editor = useCopilotTextareaEditor();\n\n const insertText = useCallback(\n (autosuggestion: AutosuggestionState) => {\n Editor.insertText(editor, autosuggestion.text, {\n at: autosuggestion.point,\n });\n },\n [editor]\n );\n\n const {\n currentAutocompleteSuggestion,\n onChangeHandler: onChangeHandlerForAutocomplete,\n onKeyDownHandler: onKeyDownHandlerForAutocomplete,\n } = useAutosuggestions(\n autosuggestionsConfig.debounceTime,\n autosuggestionsConfig.acceptAutosuggestionKey,\n props.autosuggestionsFunction,\n insertText,\n autosuggestionsConfig.disableWhenEmpty,\n autosuggestionsConfig.disabled\n );\n\n // sync autosuggestions state with the editor\n useEffect(() => {\n clearAutocompletionsFromEditor(editor);\n if (currentAutocompleteSuggestion) {\n addAutocompletionsToEditor(\n editor,\n currentAutocompleteSuggestion.text,\n currentAutocompleteSuggestion.point\n );\n }\n }, [currentAutocompleteSuggestion]);\n\n const suggestionStyleAugmented: React.CSSProperties = useMemo(() => {\n return {\n fontStyle: \"italic\",\n color: \"gray\",\n ...props.suggestionsStyle,\n };\n }, [props.suggestionsStyle]);\n\n useAddBrandingCss(suggestionStyleAugmented, props.disableBranding);\n\n const renderElementMemoized = useMemo(() => {\n return makeRenderElementFunction(suggestionStyleAugmented);\n }, [suggestionStyleAugmented]);\n\n const renderPlaceholderMemoized = useMemo(() => {\n // For some reason slateJS specifies a top value of 0, which makes for strange styling. We override this here.\n const placeholderStyleSlatejsOverrides: React.CSSProperties = {\n top: undefined,\n };\n\n const placeholderStyleAugmented: React.CSSProperties = {\n ...placeholderStyleSlatejsOverrides,\n ...props.placeholderStyle,\n };\n\n return makeRenderPlaceholderFunction(placeholderStyleAugmented);\n }, [props.placeholderStyle]);\n\n // update the editor text, but only when the value changes from outside the component\n useEffect(() => {\n if (props.value === lastKnownFullEditorText) {\n return;\n }\n\n setLastKnownFullEditorText(props.value ?? \"\");\n replaceEditorText(editor, props.value ?? \"\");\n }, [props.value]);\n\n // separate into TextareaHTMLAttributes<HTMLDivElement> and CopilotTextareaProps\n const {\n placeholderStyle,\n value,\n onValueChange,\n autosuggestionsConfig: autosuggestionsConfigFromProps,\n autosuggestionsFunction,\n className,\n ...propsToForward\n } = props;\n\n const moddedClassName = (() => {\n const baseClassName = \"copilot-textarea\";\n const brandingClass = props.disableBranding\n ? \"no-branding\"\n : \"with-branding\";\n const defaultTailwindClassName = \"bg-white overflow-y-auto resize-y\";\n const mergedClassName = twMerge(defaultTailwindClassName, className ?? \"\");\n return `${baseClassName} ${brandingClass} ${mergedClassName}`;\n })();\n\n return (\n // Add the editable component inside the context.\n <Slate\n editor={editor}\n initialValue={initialValue}\n onChange={(value) => {\n const newEditorState = getTextAroundCursor(editor);\n\n const fullEditorText = newEditorState\n ? newEditorState.textBeforeCursor + newEditorState.textAfterCursor\n : getFullEditorTextWithNewlines(editor); // we don't double-parse the editor. When `newEditorState` is null, we didn't parse the editor yet.\n\n setLastKnownFullEditorText(fullEditorText);\n onChangeHandlerForAutocomplete(newEditorState);\n props.onValueChange?.(fullEditorText);\n }}\n >\n <Editable\n renderElement={renderElementMemoized}\n renderPlaceholder={renderPlaceholderMemoized}\n onKeyDown={onKeyDownHandlerForAutocomplete}\n className={moddedClassName}\n {...propsToForward}\n />\n </Slate>\n );\n}\n"]}
|
|
@@ -4,11 +4,14 @@ import { Debouncer } from './chunk-NKW5OU2S.mjs';
|
|
|
4
4
|
import { __async } from './chunk-MRXNTQOX.mjs';
|
|
5
5
|
import { useState, useCallback, useMemo } from 'react';
|
|
6
6
|
|
|
7
|
-
function useAutosuggestions(debounceTime, acceptAutosuggestionKey, autosuggestionFunction, insertAutocompleteSuggestion, disableWhenEmpty) {
|
|
7
|
+
function useAutosuggestions(debounceTime, acceptAutosuggestionKey, autosuggestionFunction, insertAutocompleteSuggestion, disableWhenEmpty, disabled) {
|
|
8
8
|
const [previousAutocompleteState, setPreviousAutocompleteState] = useState(null);
|
|
9
9
|
const [currentAutocompleteSuggestion, setCurrentAutocompleteSuggestion] = useState(null);
|
|
10
10
|
const awaitForAndAppendSuggestion = useCallback(
|
|
11
11
|
(editorAutocompleteState, abortSignal) => __async(this, null, function* () {
|
|
12
|
+
if (disabled) {
|
|
13
|
+
return;
|
|
14
|
+
}
|
|
12
15
|
if (disableWhenEmpty && editorAutocompleteState.textBeforeCursor === "" && editorAutocompleteState.textAfterCursor === "") {
|
|
13
16
|
return;
|
|
14
17
|
}
|
|
@@ -25,7 +28,12 @@ function useAutosuggestions(debounceTime, acceptAutosuggestionKey, autosuggestio
|
|
|
25
28
|
point: editorAutocompleteState.cursorPoint
|
|
26
29
|
});
|
|
27
30
|
}),
|
|
28
|
-
[
|
|
31
|
+
[
|
|
32
|
+
autosuggestionFunction,
|
|
33
|
+
setCurrentAutocompleteSuggestion,
|
|
34
|
+
disableWhenEmpty,
|
|
35
|
+
disabled
|
|
36
|
+
]
|
|
29
37
|
);
|
|
30
38
|
const debouncedFunction = useMemo(
|
|
31
39
|
() => new Debouncer(
|
|
@@ -85,4 +93,4 @@ function useAutosuggestions(debounceTime, acceptAutosuggestionKey, autosuggestio
|
|
|
85
93
|
|
|
86
94
|
export { useAutosuggestions };
|
|
87
95
|
//# sourceMappingURL=out.js.map
|
|
88
|
-
//# sourceMappingURL=chunk-
|
|
96
|
+
//# sourceMappingURL=chunk-E2UEE45I.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/hooks/use-autosuggestions.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,SAAS,aAAa,SAAS,gBAAgB;AAgBxC,SAAS,mBACd,cACA,yBACA,wBACA,8BACA,kBACA,UAC0B;AAC1B,QAAM,CAAC,2BAA2B,4BAA4B,IAC5D,SAAyC,IAAI;AAE/C,QAAM,CAAC,+BAA+B,gCAAgC,IACpE,SAAqC,IAAI;AAE3C,QAAM,8BAGe;AAAA,IACnB,CACE,yBACA,gBACG;AAEH,UAAI,UAAU;AACZ;AAAA,MACF;AAEA,UACE,oBACA,wBAAwB,qBAAqB,MAC7C,wBAAwB,oBAAoB,IAC5C;AACA;AAAA,MACF;AAGA,YAAM,aAAa,MAAM;AAAA,QACvB,wBAAwB;AAAA,QACxB,wBAAwB;AAAA,QACxB;AAAA,MACF;AAGA,UAAI,CAAC,cAAc,YAAY,SAAS;AACtC,cAAM,IAAI,aAAa,WAAW,YAAY;AAAA,MAChD;AAEA,uCAAiC;AAAA,QAC/B,MAAM;AAAA,QACN,OAAO,wBAAwB;AAAA,MACjC,CAAC;AAAA,IACH;AAAA,IACA;AAAA,MACE;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,EACF;AAEA,QAAM,oBAAoB;AAAA,IACxB,MACE,IAAI;AAAA,MACF;AAAA,IACF;AAAA,IACF,CAAC,YAAY;AAAA,EACf;AAEA,QAAM,WAAW;AAAA,IACf,CAAC,mBAAmD;AAClD,YAAM,wBAAwB,CAAC;AAAA,QAC7B;AAAA,QACA;AAAA,QACA;AAAA,MACF;AACA,mCAA6B,cAAc;AAG3C,UAAI,CAAC,uBAAuB;AAC1B;AAAA,MACF;AAGA,uCAAiC,IAAI;AAGrC,UAAI,gBAAgB;AAClB,0BAAkB,SAAS,6BAA6B,cAAc;AAAA,MACxE,OAAO;AACL,0BAAkB,OAAO;AAAA,MAC3B;AAAA,IACF;AAAA,IACA;AAAA,MACE;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,EACF;AAEA,QAAM,iBAAiB;AAAA,IACrB,CAAC,UAA+C;AAC9C,UAAI,+BAA+B;AACjC,YAAI,MAAM,QAAQ,yBAAyB;AACzC,gBAAM,eAAe;AACrB,uCAA6B,6BAA6B;AAC1D,2CAAiC,IAAI;AAAA,QACvC;AAAA,MACF;AAAA,IACF;AAAA,IACA;AAAA,MACE;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,EACF;AAEA,SAAO;AAAA,IACL;AAAA,IACA,iBAAiB;AAAA,IACjB,kBAAkB;AAAA,EACpB;AACF","sourcesContent":["import { useCallback, useMemo, useState } from \"react\";\nimport { Debouncer } from \"../lib/debouncer\";\nimport { nullableCompatibleEqualityCheck } from \"../lib/utils\";\nimport { AutosuggestionsBareFunction } from \"../types/base\";\nimport { AutosuggestionState } from \"../types/base/autosuggestion-state\";\nimport {\n EditorAutocompleteState,\n areEqual_autocompleteState,\n} from \"../types/base/editor-autocomplete-state\";\n\nexport interface UseAutosuggestionsResult {\n currentAutocompleteSuggestion: AutosuggestionState | null;\n onChangeHandler: (newEditorState: EditorAutocompleteState | null) => void;\n onKeyDownHandler: (event: React.KeyboardEvent<HTMLDivElement>) => void;\n}\n\nexport function useAutosuggestions(\n debounceTime: number,\n acceptAutosuggestionKey: string,\n autosuggestionFunction: AutosuggestionsBareFunction,\n insertAutocompleteSuggestion: (suggestion: AutosuggestionState) => void,\n disableWhenEmpty: boolean,\n disabled: boolean\n): UseAutosuggestionsResult {\n const [previousAutocompleteState, setPreviousAutocompleteState] =\n useState<EditorAutocompleteState | null>(null);\n\n const [currentAutocompleteSuggestion, setCurrentAutocompleteSuggestion] =\n useState<AutosuggestionState | null>(null);\n\n const awaitForAndAppendSuggestion: (\n editorAutocompleteState: EditorAutocompleteState,\n abortSignal: AbortSignal\n ) => Promise<void> = useCallback(\n async (\n editorAutocompleteState: EditorAutocompleteState,\n abortSignal: AbortSignal\n ) => {\n // early return if disabled\n if (disabled) {\n return;\n }\n\n if (\n disableWhenEmpty &&\n editorAutocompleteState.textBeforeCursor === \"\" &&\n editorAutocompleteState.textAfterCursor === \"\"\n ) {\n return;\n }\n\n // fetch the suggestion\n const suggestion = await autosuggestionFunction(\n editorAutocompleteState.textBeforeCursor,\n editorAutocompleteState.textAfterCursor,\n abortSignal\n );\n\n // We'll assume for now that the autocomplete function might or might not respect the abort signal.\n if (!suggestion || abortSignal.aborted) {\n throw new DOMException(\"Aborted\", \"AbortError\");\n }\n\n setCurrentAutocompleteSuggestion({\n text: suggestion,\n point: editorAutocompleteState.cursorPoint,\n });\n },\n [\n autosuggestionFunction,\n setCurrentAutocompleteSuggestion,\n disableWhenEmpty,\n disabled,\n ]\n );\n\n const debouncedFunction = useMemo(\n () =>\n new Debouncer<[editorAutocompleteState: EditorAutocompleteState]>(\n debounceTime\n ),\n [debounceTime]\n );\n\n const onChange = useCallback(\n (newEditorState: EditorAutocompleteState | null) => {\n const editorStateHasChanged = !nullableCompatibleEqualityCheck(\n areEqual_autocompleteState,\n previousAutocompleteState,\n newEditorState\n );\n setPreviousAutocompleteState(newEditorState);\n\n // if no change, do nothing\n if (!editorStateHasChanged) {\n return;\n }\n\n // if change, then first null out the current suggestion\n setCurrentAutocompleteSuggestion(null);\n\n // then try to get a new suggestion, debouncing to avoid too many requests while typing\n if (newEditorState) {\n debouncedFunction.debounce(awaitForAndAppendSuggestion, newEditorState);\n } else {\n debouncedFunction.cancel();\n }\n },\n [\n previousAutocompleteState,\n setPreviousAutocompleteState,\n debouncedFunction,\n awaitForAndAppendSuggestion,\n setCurrentAutocompleteSuggestion,\n ]\n );\n\n const keyDownHandler = useCallback(\n (event: React.KeyboardEvent<HTMLDivElement>) => {\n if (currentAutocompleteSuggestion) {\n if (event.key === acceptAutosuggestionKey) {\n event.preventDefault();\n insertAutocompleteSuggestion(currentAutocompleteSuggestion);\n setCurrentAutocompleteSuggestion(null);\n }\n }\n },\n [\n currentAutocompleteSuggestion,\n setCurrentAutocompleteSuggestion,\n insertAutocompleteSuggestion,\n acceptAutosuggestionKey,\n ]\n );\n\n return {\n currentAutocompleteSuggestion,\n onChangeHandler: onChange,\n onKeyDownHandler: keyDownHandler,\n };\n}\n"]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { defaultBaseAutosuggestionsConfig } from './chunk-
|
|
1
|
+
import { defaultBaseAutosuggestionsConfig } from './chunk-7KWRVIYV.mjs';
|
|
2
2
|
import { __spreadProps, __spreadValues } from './chunk-MRXNTQOX.mjs';
|
|
3
3
|
|
|
4
4
|
// src/types/standard-autosuggestions/autosuggestions-config.tsx
|
|
@@ -66,4 +66,4 @@ var defaultAutosuggestionsConfig = __spreadProps(__spreadValues({}, defaultBaseA
|
|
|
66
66
|
|
|
67
67
|
export { defaultAutosuggestionsConfig, defaultFewShotMessages, defaultMakeSystemPrompt };
|
|
68
68
|
//# sourceMappingURL=out.js.map
|
|
69
|
-
//# sourceMappingURL=chunk-
|
|
69
|
+
//# sourceMappingURL=chunk-EHQ5TN4R.mjs.map
|
|
@@ -20,10 +20,7 @@ var DefaultElement = (props) => {
|
|
|
20
20
|
};
|
|
21
21
|
var SuggestionElement = (props) => {
|
|
22
22
|
return /* @__PURE__ */ jsxs("span", __spreadProps(__spreadValues({}, props.attributes), {
|
|
23
|
-
style: __spreadValues({
|
|
24
|
-
fontStyle: "italic",
|
|
25
|
-
color: "gray"
|
|
26
|
-
}, props.suggestionsStyle),
|
|
23
|
+
style: __spreadValues({}, props.suggestionsStyle),
|
|
27
24
|
contentEditable: false,
|
|
28
25
|
children: [
|
|
29
26
|
props.children,
|
|
@@ -34,4 +31,4 @@ var SuggestionElement = (props) => {
|
|
|
34
31
|
|
|
35
32
|
export { makeRenderElementFunction };
|
|
36
33
|
//# sourceMappingURL=out.js.map
|
|
37
|
-
//# sourceMappingURL=chunk-
|
|
34
|
+
//# sourceMappingURL=chunk-LNAIMEB2.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/base-copilot-textarea/render-element.tsx"],"names":[],"mappings":";;;;;;AAUe,cAkBX,YAlBW;AANR,SAAS,0BACd,kBACuB;AACvB,SAAO,CAAC,UAA8B;AACpC,YAAQ,MAAM,QAAQ,MAAM;AAAA,MAC1B,KAAK;AACH,eAAO,oBAAC,mCAAmB,MAAO;AAAA,MACpC,KAAK;AACH,eACE,oBAAC,oDAAsB,QAAtB;AAAA,UAA6B;AAAA,UAAoC;AAAA,IAExE;AAAA,EACF;AACF;AAEA,IAAM,iBAAiB,CAAC,UAA8B;AACpD,SAAO,oBAAC,wCAAQ,MAAM,aAAd;AAAA,IAA2B,gBAAM;AAAA,IAAS;AACpD;AACA,IAAM,oBAAoB,CACxB,UAGG;AACH,SACE,qBAAC,yCACK,MAAM,aADX;AAAA,IAEC,OAAO,mBACF,MAAM;AAAA,IAEX,iBAAiB;AAAA,IAEhB;AAAA,YAAM;AAAA,MACN,MAAM,QAAQ,SAAS,gBAAgB,MAAM,QAAQ;AAAA;AAAA,IACxD;AAEJ","sourcesContent":["import { RenderElementProps } from \"slate-react\";\n\nexport type RenderElementFunction = (props: RenderElementProps) => JSX.Element;\n\nexport function makeRenderElementFunction(\n suggestionsStyle: React.CSSProperties\n): RenderElementFunction {\n return (props: RenderElementProps) => {\n switch (props.element.type) {\n case \"paragraph\":\n return <DefaultElement {...props} />;\n case \"suggestion\":\n return (\n <SuggestionElement {...props} suggestionsStyle={suggestionsStyle} />\n );\n }\n };\n}\n\nconst DefaultElement = (props: RenderElementProps) => {\n return <div {...props.attributes}>{props.children}</div>;\n};\nconst SuggestionElement = (\n props: RenderElementProps & {\n suggestionsStyle: React.CSSProperties;\n }\n) => {\n return (\n <span\n {...props.attributes}\n style={{\n ...props.suggestionsStyle,\n }}\n contentEditable={false}\n >\n {props.children /* https://github.com/ianstormtaylor/slate/issues/3930 */}\n {props.element.type === \"suggestion\" && props.element.content}\n </span>\n );\n};\n"]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { useMakeStandardAutosuggestionFunction } from './chunk-A3SFEHWZ.mjs';
|
|
2
|
-
import { defaultAutosuggestionsConfig } from './chunk-
|
|
3
|
-
import { BaseCopilotTextarea } from './chunk-
|
|
2
|
+
import { defaultAutosuggestionsConfig } from './chunk-EHQ5TN4R.mjs';
|
|
3
|
+
import { BaseCopilotTextarea } from './chunk-CU2M5BIJ.mjs';
|
|
4
4
|
import { __spreadValues, __spreadProps } from './chunk-MRXNTQOX.mjs';
|
|
5
5
|
import { jsx } from 'react/jsx-runtime';
|
|
6
6
|
|
|
@@ -22,4 +22,4 @@ function CopilotTextarea(props) {
|
|
|
22
22
|
|
|
23
23
|
export { CopilotTextarea };
|
|
24
24
|
//# sourceMappingURL=out.js.map
|
|
25
|
-
//# sourceMappingURL=chunk-
|
|
25
|
+
//# sourceMappingURL=chunk-NHLYAJCQ.mjs.map
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { useEffect } from 'react';
|
|
2
|
+
|
|
3
|
+
// src/components/base-copilot-textarea/use-add-branding-css.tsx
|
|
4
|
+
function useAddBrandingCss(suggestionStyleAugmented, disableBranding) {
|
|
5
|
+
useEffect(() => {
|
|
6
|
+
if (disableBranding) {
|
|
7
|
+
return;
|
|
8
|
+
}
|
|
9
|
+
const styleEl = document.createElement("style");
|
|
10
|
+
styleEl.id = "dynamic-styles";
|
|
11
|
+
let dynamicStyles = Object.entries(suggestionStyleAugmented).map(([key, value]) => {
|
|
12
|
+
const kebabCaseKey = key.replace(/([a-z0-9]|(?=[A-Z]))([A-Z])/g, "$1-$2").toLowerCase();
|
|
13
|
+
return `${kebabCaseKey}: ${value};`;
|
|
14
|
+
}).join(" ");
|
|
15
|
+
dynamicStyles += `font-style: normal; font-size: x-small;`;
|
|
16
|
+
dynamicStyles += `content: "CopilotKit";`;
|
|
17
|
+
dynamicStyles += `bottom: 6px;`;
|
|
18
|
+
dynamicStyles += `right: 6px;`;
|
|
19
|
+
dynamicStyles += `pointer-events: none;`;
|
|
20
|
+
dynamicStyles += `font-weight: 200;`;
|
|
21
|
+
dynamicStyles += `padding: 0;`;
|
|
22
|
+
dynamicStyles += `margin: 0;`;
|
|
23
|
+
dynamicStyles += `border: 0;`;
|
|
24
|
+
dynamicStyles += `line-height: 1;`;
|
|
25
|
+
styleEl.innerHTML = `
|
|
26
|
+
.copilot-textarea.with-branding::after {
|
|
27
|
+
${dynamicStyles}
|
|
28
|
+
}
|
|
29
|
+
`;
|
|
30
|
+
document.head.appendChild(styleEl);
|
|
31
|
+
return () => {
|
|
32
|
+
var _a;
|
|
33
|
+
(_a = document.getElementById("dynamic-styles")) == null ? void 0 : _a.remove();
|
|
34
|
+
};
|
|
35
|
+
}, [disableBranding, suggestionStyleAugmented]);
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
export { useAddBrandingCss };
|
|
39
|
+
//# sourceMappingURL=out.js.map
|
|
40
|
+
//# sourceMappingURL=chunk-THWPPG6M.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/base-copilot-textarea/use-add-branding-css.tsx"],"names":[],"mappings":";AAAA,SAAS,iBAAiB;AAEnB,SAAS,kBACd,0BACA,iBACA;AACA,YAAU,MAAM;AACd,QAAI,iBAAiB;AACnB;AAAA,IACF;AAEA,UAAM,UAAU,SAAS,cAAc,OAAO;AAC9C,YAAQ,KAAK;AAGb,QAAI,gBAAgB,OAAO,QAAQ,wBAAwB,EACxD,IAAI,CAAC,CAAC,KAAK,KAAK,MAAM;AACrB,YAAM,eAAe,IAClB,QAAQ,gCAAgC,OAAO,EAC/C,YAAY;AACf,aAAO,GAAG,iBAAiB;AAAA,IAC7B,CAAC,EACA,KAAK,GAAG;AAGX,qBAAiB;AACjB,qBAAiB;AACjB,qBAAiB;AACjB,qBAAiB;AACjB,qBAAiB;AACjB,qBAAiB;AACjB,qBAAiB;AACjB,qBAAiB;AACjB,qBAAiB;AACjB,qBAAiB;AAGjB,YAAQ,YAAY;AAAA;AAAA,UAEd;AAAA;AAAA;AAIN,aAAS,KAAK,YAAY,OAAO;AAGjC,WAAO,MAAM;AA9CjB;AA+CM,qBAAS,eAAe,gBAAgB,MAAxC,mBAA2C;AAAA,IAC7C;AAAA,EACF,GAAG,CAAC,iBAAiB,wBAAwB,CAAC;AAChD","sourcesContent":["import { useEffect } from \"react\";\n\nexport function useAddBrandingCss(\n suggestionStyleAugmented: React.CSSProperties,\n disableBranding: boolean | undefined\n) {\n useEffect(() => {\n if (disableBranding) {\n return;\n }\n\n const styleEl = document.createElement(\"style\");\n styleEl.id = \"dynamic-styles\";\n\n // Build the CSS string dynamically\n let dynamicStyles = Object.entries(suggestionStyleAugmented)\n .map(([key, value]) => {\n const kebabCaseKey = key\n .replace(/([a-z0-9]|(?=[A-Z]))([A-Z])/g, \"$1-$2\")\n .toLowerCase();\n return `${kebabCaseKey}: ${value};`;\n })\n .join(\" \");\n\n // Append overrides for italics and font-size\n dynamicStyles += `font-style: normal; font-size: x-small;`;\n dynamicStyles += `content: \"CopilotKit\";`;\n dynamicStyles += `bottom: 6px;`;\n dynamicStyles += `right: 6px;`;\n dynamicStyles += `pointer-events: none;`;\n dynamicStyles += `font-weight: 200;`;\n dynamicStyles += `padding: 0;`;\n dynamicStyles += `margin: 0;`;\n dynamicStyles += `border: 0;`;\n dynamicStyles += `line-height: 1;`;\n\n // Append it to the ::after class\n styleEl.innerHTML = `\n .copilot-textarea.with-branding::after {\n ${dynamicStyles}\n }\n `;\n\n document.head.appendChild(styleEl);\n\n // Cleanup\n return () => {\n document.getElementById(\"dynamic-styles\")?.remove();\n };\n }, [disableBranding, suggestionStyleAugmented]);\n}\n"]}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/* src/components/base-copilot-textarea/base-copilot-textarea.css */
|
|
2
|
+
.copilot-textarea.with-branding::after {
|
|
3
|
+
content: "";
|
|
4
|
+
position: absolute;
|
|
5
|
+
}
|
|
6
|
+
.copilot-textarea.no-branding::after {
|
|
7
|
+
content: "";
|
|
8
|
+
}
|
|
9
|
+
/*# sourceMappingURL=base-copilot-textarea.css.map */
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/components/base-copilot-textarea/base-copilot-textarea.css"],"sourcesContent":[".copilot-textarea.with-branding::after {\n content: ''; /* Initially empty because we overrdie this CSS dynamically and we want to avoid flashing */\n position: absolute;\n}\n \n \n.copilot-textarea.no-branding::after {\n content: '';\n}"],"mappings":";AAAA;AACI;AACA;AAAA;AAIJ;AACI;AAAA;","names":[]}
|
|
@@ -3,6 +3,7 @@ import { BaseAutosuggestionsConfig } from '../../types/base/base-autosuggestions
|
|
|
3
3
|
import { AutosuggestionsBareFunction } from '../../types/base/autosuggestions-bare-function.js';
|
|
4
4
|
|
|
5
5
|
interface BaseCopilotTextareaProps extends TextareaHTMLAttributes<HTMLDivElement> {
|
|
6
|
+
disableBranding?: boolean;
|
|
6
7
|
placeholderStyle?: React.CSSProperties;
|
|
7
8
|
suggestionsStyle?: React.CSSProperties;
|
|
8
9
|
value?: string;
|
|
@@ -1,13 +1,14 @@
|
|
|
1
|
-
export { BaseCopilotTextarea } from '../../chunk-
|
|
1
|
+
export { BaseCopilotTextarea } from '../../chunk-CU2M5BIJ.mjs';
|
|
2
2
|
import '../../chunk-WJYQWL4I.mjs';
|
|
3
3
|
import '../../chunk-4XYYSJ5C.mjs';
|
|
4
4
|
import '../../chunk-TSF4AJIK.mjs';
|
|
5
5
|
import '../../chunk-3UQM3NLM.mjs';
|
|
6
6
|
import '../../chunk-WJHSY5T6.mjs';
|
|
7
|
-
import '../../chunk-
|
|
8
|
-
import '../../chunk-
|
|
7
|
+
import '../../chunk-7KWRVIYV.mjs';
|
|
8
|
+
import '../../chunk-LNAIMEB2.mjs';
|
|
9
9
|
import '../../chunk-OELUUJZY.mjs';
|
|
10
|
-
import '../../chunk-
|
|
10
|
+
import '../../chunk-THWPPG6M.mjs';
|
|
11
|
+
import '../../chunk-E2UEE45I.mjs';
|
|
11
12
|
import '../../chunk-UW3ITU2Y.mjs';
|
|
12
13
|
import '../../chunk-KGKLUWKW.mjs';
|
|
13
14
|
import '../../chunk-6SYD77G6.mjs';
|