@pickaxeproject/react 0.0.28 → 0.0.30
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/dist/cjs/common/lotties/loader-black.js +1 -0
- package/dist/cjs/common/lotties/loader-white.js +1 -0
- package/dist/cjs/components/Pickaxe/Chat/History/Message.js +1 -1
- package/dist/cjs/components/Pickaxe/Chat/History/index.js +1 -1
- package/dist/cjs/components/Pickaxe/Chat/Input.js +1 -1
- package/dist/cjs/components/Pickaxe/Form/History/Item.js +1 -1
- package/dist/cjs/components/Pickaxe/Form/History/Response.js +1 -1
- package/dist/cjs/components/Pickaxe/Form/Questions/Submit.js +1 -1
- package/dist/cjs/components/Pickaxe/common/PickaxeMarkdown/A.js +1 -0
- package/dist/cjs/components/Pickaxe/common/PickaxeMarkdown/Renderer.js +1 -0
- package/dist/cjs/components/Pickaxe/common/PickaxeMarkdown/hooks/usePickaxeMarkdownContext.js +1 -0
- package/dist/cjs/components/Pickaxe/common/PickaxeMarkdown/index.js +1 -0
- package/dist/cjs/components/Pickaxe/index.js +1 -1
- package/dist/cjs/index.js +1 -1
- package/dist/cjs/src/common/lotties/loader-black.d.ts +429 -0
- package/dist/cjs/src/common/lotties/loader-white.d.ts +429 -0
- package/dist/cjs/src/components/Pickaxe/common/PickaxeMarkdown/A.d.ts +4 -0
- package/dist/cjs/src/components/Pickaxe/common/PickaxeMarkdown/Renderer.d.ts +10 -0
- package/dist/cjs/src/components/Pickaxe/common/PickaxeMarkdown/hooks/usePickaxeMarkdownContext.d.ts +10 -0
- package/dist/cjs/src/components/Pickaxe/common/PickaxeMarkdown/index.d.ts +23 -0
- package/dist/cjs/src/index.d.ts +2 -2
- package/dist/esm/common/lotties/loader-black.js +1 -0
- package/dist/esm/common/lotties/loader-white.js +1 -0
- package/dist/esm/components/Pickaxe/Chat/History/Message.js +1 -1
- package/dist/esm/components/Pickaxe/Chat/History/index.js +1 -1
- package/dist/esm/components/Pickaxe/Chat/Input.js +1 -1
- package/dist/esm/components/Pickaxe/Form/History/Item.js +1 -1
- package/dist/esm/components/Pickaxe/Form/History/Response.js +1 -1
- package/dist/esm/components/Pickaxe/Form/Questions/Submit.js +1 -1
- package/dist/esm/components/Pickaxe/common/PickaxeMarkdown/A.js +1 -0
- package/dist/esm/components/Pickaxe/common/PickaxeMarkdown/Renderer.js +1 -0
- package/dist/esm/components/Pickaxe/common/PickaxeMarkdown/hooks/usePickaxeMarkdownContext.js +1 -0
- package/dist/esm/components/Pickaxe/common/PickaxeMarkdown/index.js +1 -0
- package/dist/esm/components/Pickaxe/index.js +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/src/common/lotties/loader-black.d.ts +429 -0
- package/dist/esm/src/common/lotties/loader-white.d.ts +429 -0
- package/dist/esm/src/components/Pickaxe/common/PickaxeMarkdown/A.d.ts +4 -0
- package/dist/esm/src/components/Pickaxe/common/PickaxeMarkdown/Renderer.d.ts +10 -0
- package/dist/esm/src/components/Pickaxe/common/PickaxeMarkdown/hooks/usePickaxeMarkdownContext.d.ts +10 -0
- package/dist/esm/src/components/Pickaxe/common/PickaxeMarkdown/index.d.ts +23 -0
- package/dist/esm/src/index.d.ts +2 -2
- package/package.json +15 -5
- package/dist/cjs/common/renderer.js +0 -1
- package/dist/cjs/components/Pickaxe/common/PickaxeMarkdown.js +0 -1
- package/dist/cjs/hooks/pickaxe/useActions.js +0 -1
- package/dist/cjs/hooks/pickaxe/useLinkPreviews.js +0 -1
- package/dist/cjs/src/common/renderer.d.ts +0 -14
- package/dist/cjs/src/components/Pickaxe/common/PickaxeMarkdown.d.ts +0 -13
- package/dist/cjs/src/hooks/pickaxe/useActions.d.ts +0 -8
- package/dist/cjs/src/hooks/pickaxe/useLinkPreviews.d.ts +0 -6
- package/dist/esm/common/renderer.js +0 -1
- package/dist/esm/components/Pickaxe/common/PickaxeMarkdown.js +0 -1
- package/dist/esm/hooks/pickaxe/useActions.js +0 -1
- package/dist/esm/hooks/pickaxe/useLinkPreviews.js +0 -1
- package/dist/esm/src/common/renderer.d.ts +0 -14
- package/dist/esm/src/components/Pickaxe/common/PickaxeMarkdown.d.ts +0 -13
- package/dist/esm/src/hooks/pickaxe/useActions.d.ts +0 -8
- package/dist/esm/src/hooks/pickaxe/useLinkPreviews.d.ts +0 -6
|
@@ -0,0 +1,429 @@
|
|
|
1
|
+
export declare const loaderWhite: {
|
|
2
|
+
nm: string;
|
|
3
|
+
ddd: number;
|
|
4
|
+
h: number;
|
|
5
|
+
w: number;
|
|
6
|
+
meta: {
|
|
7
|
+
g: string;
|
|
8
|
+
};
|
|
9
|
+
layers: ({
|
|
10
|
+
ty: number;
|
|
11
|
+
nm: string;
|
|
12
|
+
sr: number;
|
|
13
|
+
st: number;
|
|
14
|
+
op: number;
|
|
15
|
+
ip: number;
|
|
16
|
+
hd: boolean;
|
|
17
|
+
ddd: number;
|
|
18
|
+
bm: number;
|
|
19
|
+
hasMask: boolean;
|
|
20
|
+
ao: number;
|
|
21
|
+
ks: {
|
|
22
|
+
a: {
|
|
23
|
+
a: number;
|
|
24
|
+
k: number[];
|
|
25
|
+
};
|
|
26
|
+
s: {
|
|
27
|
+
a: number;
|
|
28
|
+
k: number[];
|
|
29
|
+
};
|
|
30
|
+
sk: {
|
|
31
|
+
a: number;
|
|
32
|
+
k: number;
|
|
33
|
+
};
|
|
34
|
+
p: {
|
|
35
|
+
a: number;
|
|
36
|
+
k: number[];
|
|
37
|
+
};
|
|
38
|
+
r: {
|
|
39
|
+
a: number;
|
|
40
|
+
k: ({
|
|
41
|
+
o: {
|
|
42
|
+
x: number;
|
|
43
|
+
y: number;
|
|
44
|
+
};
|
|
45
|
+
i: {
|
|
46
|
+
x: number;
|
|
47
|
+
y: number;
|
|
48
|
+
};
|
|
49
|
+
s: number[];
|
|
50
|
+
t: number;
|
|
51
|
+
} | {
|
|
52
|
+
s: number[];
|
|
53
|
+
t: number;
|
|
54
|
+
o?: undefined;
|
|
55
|
+
i?: undefined;
|
|
56
|
+
})[];
|
|
57
|
+
};
|
|
58
|
+
sa: {
|
|
59
|
+
a: number;
|
|
60
|
+
k: number;
|
|
61
|
+
};
|
|
62
|
+
o: {
|
|
63
|
+
a: number;
|
|
64
|
+
k: number;
|
|
65
|
+
};
|
|
66
|
+
};
|
|
67
|
+
shapes: {
|
|
68
|
+
ty: string;
|
|
69
|
+
bm: number;
|
|
70
|
+
hd: boolean;
|
|
71
|
+
mn: string;
|
|
72
|
+
nm: string;
|
|
73
|
+
ix: number;
|
|
74
|
+
cix: number;
|
|
75
|
+
np: number;
|
|
76
|
+
it: ({
|
|
77
|
+
ty: string;
|
|
78
|
+
bm: number;
|
|
79
|
+
hd: boolean;
|
|
80
|
+
mn: string;
|
|
81
|
+
nm: string;
|
|
82
|
+
d: number;
|
|
83
|
+
p: {
|
|
84
|
+
a: number;
|
|
85
|
+
k: number[];
|
|
86
|
+
ix?: undefined;
|
|
87
|
+
};
|
|
88
|
+
s: {
|
|
89
|
+
a: number;
|
|
90
|
+
k: number[];
|
|
91
|
+
ix?: undefined;
|
|
92
|
+
};
|
|
93
|
+
lc?: undefined;
|
|
94
|
+
lj?: undefined;
|
|
95
|
+
ml?: undefined;
|
|
96
|
+
o?: undefined;
|
|
97
|
+
w?: undefined;
|
|
98
|
+
c?: undefined;
|
|
99
|
+
r?: undefined;
|
|
100
|
+
a?: undefined;
|
|
101
|
+
sk?: undefined;
|
|
102
|
+
sa?: undefined;
|
|
103
|
+
} | {
|
|
104
|
+
ty: string;
|
|
105
|
+
bm: number;
|
|
106
|
+
hd: boolean;
|
|
107
|
+
mn: string;
|
|
108
|
+
nm: string;
|
|
109
|
+
lc: number;
|
|
110
|
+
lj: number;
|
|
111
|
+
ml: number;
|
|
112
|
+
o: {
|
|
113
|
+
a: number;
|
|
114
|
+
k: number;
|
|
115
|
+
ix?: undefined;
|
|
116
|
+
};
|
|
117
|
+
w: {
|
|
118
|
+
a: number;
|
|
119
|
+
k: number;
|
|
120
|
+
};
|
|
121
|
+
c: {
|
|
122
|
+
a: number;
|
|
123
|
+
k: number[];
|
|
124
|
+
};
|
|
125
|
+
d?: undefined;
|
|
126
|
+
p?: undefined;
|
|
127
|
+
s?: undefined;
|
|
128
|
+
r?: undefined;
|
|
129
|
+
a?: undefined;
|
|
130
|
+
sk?: undefined;
|
|
131
|
+
sa?: undefined;
|
|
132
|
+
} | {
|
|
133
|
+
ty: string;
|
|
134
|
+
bm: number;
|
|
135
|
+
hd: boolean;
|
|
136
|
+
mn: string;
|
|
137
|
+
nm: string;
|
|
138
|
+
c: {
|
|
139
|
+
a: number;
|
|
140
|
+
k: number[];
|
|
141
|
+
};
|
|
142
|
+
r: number;
|
|
143
|
+
o: {
|
|
144
|
+
a: number;
|
|
145
|
+
k: number;
|
|
146
|
+
ix?: undefined;
|
|
147
|
+
};
|
|
148
|
+
d?: undefined;
|
|
149
|
+
p?: undefined;
|
|
150
|
+
s?: undefined;
|
|
151
|
+
lc?: undefined;
|
|
152
|
+
lj?: undefined;
|
|
153
|
+
ml?: undefined;
|
|
154
|
+
w?: undefined;
|
|
155
|
+
a?: undefined;
|
|
156
|
+
sk?: undefined;
|
|
157
|
+
sa?: undefined;
|
|
158
|
+
} | {
|
|
159
|
+
ty: string;
|
|
160
|
+
a: {
|
|
161
|
+
a: number;
|
|
162
|
+
k: number[];
|
|
163
|
+
ix: number;
|
|
164
|
+
};
|
|
165
|
+
s: {
|
|
166
|
+
a: number;
|
|
167
|
+
k: number[];
|
|
168
|
+
ix: number;
|
|
169
|
+
};
|
|
170
|
+
sk: {
|
|
171
|
+
a: number;
|
|
172
|
+
k: number;
|
|
173
|
+
ix: number;
|
|
174
|
+
};
|
|
175
|
+
p: {
|
|
176
|
+
a: number;
|
|
177
|
+
k: number[];
|
|
178
|
+
ix: number;
|
|
179
|
+
};
|
|
180
|
+
r: {
|
|
181
|
+
a: number;
|
|
182
|
+
k: number;
|
|
183
|
+
ix: number;
|
|
184
|
+
};
|
|
185
|
+
sa: {
|
|
186
|
+
a: number;
|
|
187
|
+
k: number;
|
|
188
|
+
ix: number;
|
|
189
|
+
};
|
|
190
|
+
o: {
|
|
191
|
+
a: number;
|
|
192
|
+
k: number;
|
|
193
|
+
ix: number;
|
|
194
|
+
};
|
|
195
|
+
bm?: undefined;
|
|
196
|
+
hd?: undefined;
|
|
197
|
+
mn?: undefined;
|
|
198
|
+
nm?: undefined;
|
|
199
|
+
d?: undefined;
|
|
200
|
+
lc?: undefined;
|
|
201
|
+
lj?: undefined;
|
|
202
|
+
ml?: undefined;
|
|
203
|
+
w?: undefined;
|
|
204
|
+
c?: undefined;
|
|
205
|
+
})[];
|
|
206
|
+
}[];
|
|
207
|
+
ind: number;
|
|
208
|
+
} | {
|
|
209
|
+
ty: number;
|
|
210
|
+
nm: string;
|
|
211
|
+
sr: number;
|
|
212
|
+
st: number;
|
|
213
|
+
op: number;
|
|
214
|
+
ip: number;
|
|
215
|
+
hd: boolean;
|
|
216
|
+
ddd: number;
|
|
217
|
+
bm: number;
|
|
218
|
+
hasMask: boolean;
|
|
219
|
+
ao: number;
|
|
220
|
+
ks: {
|
|
221
|
+
a: {
|
|
222
|
+
a: number;
|
|
223
|
+
k: number[];
|
|
224
|
+
};
|
|
225
|
+
s: {
|
|
226
|
+
a: number;
|
|
227
|
+
k: number[];
|
|
228
|
+
};
|
|
229
|
+
sk: {
|
|
230
|
+
a: number;
|
|
231
|
+
k: number;
|
|
232
|
+
};
|
|
233
|
+
p: {
|
|
234
|
+
a: number;
|
|
235
|
+
k: number[];
|
|
236
|
+
};
|
|
237
|
+
r: {
|
|
238
|
+
a: number;
|
|
239
|
+
k: ({
|
|
240
|
+
o: {
|
|
241
|
+
x: number;
|
|
242
|
+
y: number;
|
|
243
|
+
};
|
|
244
|
+
i: {
|
|
245
|
+
x: number;
|
|
246
|
+
y: number;
|
|
247
|
+
};
|
|
248
|
+
s: number[];
|
|
249
|
+
t: number;
|
|
250
|
+
} | {
|
|
251
|
+
s: number[];
|
|
252
|
+
t: number;
|
|
253
|
+
o?: undefined;
|
|
254
|
+
i?: undefined;
|
|
255
|
+
})[];
|
|
256
|
+
};
|
|
257
|
+
sa: {
|
|
258
|
+
a: number;
|
|
259
|
+
k: number;
|
|
260
|
+
};
|
|
261
|
+
o: {
|
|
262
|
+
a: number;
|
|
263
|
+
k: number;
|
|
264
|
+
};
|
|
265
|
+
};
|
|
266
|
+
shapes: {
|
|
267
|
+
ty: string;
|
|
268
|
+
bm: number;
|
|
269
|
+
hd: boolean;
|
|
270
|
+
mn: string;
|
|
271
|
+
nm: string;
|
|
272
|
+
ix: number;
|
|
273
|
+
cix: number;
|
|
274
|
+
np: number;
|
|
275
|
+
it: ({
|
|
276
|
+
ty: string;
|
|
277
|
+
bm: number;
|
|
278
|
+
hd: boolean;
|
|
279
|
+
mn: string;
|
|
280
|
+
nm: string;
|
|
281
|
+
d: number;
|
|
282
|
+
p: {
|
|
283
|
+
a: number;
|
|
284
|
+
k: number[];
|
|
285
|
+
ix?: undefined;
|
|
286
|
+
};
|
|
287
|
+
s: {
|
|
288
|
+
a: number;
|
|
289
|
+
k: ({
|
|
290
|
+
o: {
|
|
291
|
+
x: number;
|
|
292
|
+
y: number;
|
|
293
|
+
};
|
|
294
|
+
i: {
|
|
295
|
+
x: number;
|
|
296
|
+
y: number;
|
|
297
|
+
};
|
|
298
|
+
s: number[];
|
|
299
|
+
t: number;
|
|
300
|
+
} | {
|
|
301
|
+
s: number[];
|
|
302
|
+
t: number;
|
|
303
|
+
o?: undefined;
|
|
304
|
+
i?: undefined;
|
|
305
|
+
})[];
|
|
306
|
+
ix?: undefined;
|
|
307
|
+
};
|
|
308
|
+
lc?: undefined;
|
|
309
|
+
lj?: undefined;
|
|
310
|
+
ml?: undefined;
|
|
311
|
+
o?: undefined;
|
|
312
|
+
w?: undefined;
|
|
313
|
+
c?: undefined;
|
|
314
|
+
r?: undefined;
|
|
315
|
+
a?: undefined;
|
|
316
|
+
sk?: undefined;
|
|
317
|
+
sa?: undefined;
|
|
318
|
+
} | {
|
|
319
|
+
ty: string;
|
|
320
|
+
bm: number;
|
|
321
|
+
hd: boolean;
|
|
322
|
+
mn: string;
|
|
323
|
+
nm: string;
|
|
324
|
+
lc: number;
|
|
325
|
+
lj: number;
|
|
326
|
+
ml: number;
|
|
327
|
+
o: {
|
|
328
|
+
a: number;
|
|
329
|
+
k: number;
|
|
330
|
+
ix?: undefined;
|
|
331
|
+
};
|
|
332
|
+
w: {
|
|
333
|
+
a: number;
|
|
334
|
+
k: number;
|
|
335
|
+
};
|
|
336
|
+
c: {
|
|
337
|
+
a: number;
|
|
338
|
+
k: number[];
|
|
339
|
+
};
|
|
340
|
+
d?: undefined;
|
|
341
|
+
p?: undefined;
|
|
342
|
+
s?: undefined;
|
|
343
|
+
r?: undefined;
|
|
344
|
+
a?: undefined;
|
|
345
|
+
sk?: undefined;
|
|
346
|
+
sa?: undefined;
|
|
347
|
+
} | {
|
|
348
|
+
ty: string;
|
|
349
|
+
bm: number;
|
|
350
|
+
hd: boolean;
|
|
351
|
+
mn: string;
|
|
352
|
+
nm: string;
|
|
353
|
+
c: {
|
|
354
|
+
a: number;
|
|
355
|
+
k: number[];
|
|
356
|
+
};
|
|
357
|
+
r: number;
|
|
358
|
+
o: {
|
|
359
|
+
a: number;
|
|
360
|
+
k: number;
|
|
361
|
+
ix?: undefined;
|
|
362
|
+
};
|
|
363
|
+
d?: undefined;
|
|
364
|
+
p?: undefined;
|
|
365
|
+
s?: undefined;
|
|
366
|
+
lc?: undefined;
|
|
367
|
+
lj?: undefined;
|
|
368
|
+
ml?: undefined;
|
|
369
|
+
w?: undefined;
|
|
370
|
+
a?: undefined;
|
|
371
|
+
sk?: undefined;
|
|
372
|
+
sa?: undefined;
|
|
373
|
+
} | {
|
|
374
|
+
ty: string;
|
|
375
|
+
a: {
|
|
376
|
+
a: number;
|
|
377
|
+
k: number[];
|
|
378
|
+
ix: number;
|
|
379
|
+
};
|
|
380
|
+
s: {
|
|
381
|
+
a: number;
|
|
382
|
+
k: number[];
|
|
383
|
+
ix: number;
|
|
384
|
+
};
|
|
385
|
+
sk: {
|
|
386
|
+
a: number;
|
|
387
|
+
k: number;
|
|
388
|
+
ix: number;
|
|
389
|
+
};
|
|
390
|
+
p: {
|
|
391
|
+
a: number;
|
|
392
|
+
k: number[];
|
|
393
|
+
ix: number;
|
|
394
|
+
};
|
|
395
|
+
r: {
|
|
396
|
+
a: number;
|
|
397
|
+
k: number;
|
|
398
|
+
ix: number;
|
|
399
|
+
};
|
|
400
|
+
sa: {
|
|
401
|
+
a: number;
|
|
402
|
+
k: number;
|
|
403
|
+
ix: number;
|
|
404
|
+
};
|
|
405
|
+
o: {
|
|
406
|
+
a: number;
|
|
407
|
+
k: number;
|
|
408
|
+
ix: number;
|
|
409
|
+
};
|
|
410
|
+
bm?: undefined;
|
|
411
|
+
hd?: undefined;
|
|
412
|
+
mn?: undefined;
|
|
413
|
+
nm?: undefined;
|
|
414
|
+
d?: undefined;
|
|
415
|
+
lc?: undefined;
|
|
416
|
+
lj?: undefined;
|
|
417
|
+
ml?: undefined;
|
|
418
|
+
w?: undefined;
|
|
419
|
+
c?: undefined;
|
|
420
|
+
})[];
|
|
421
|
+
}[];
|
|
422
|
+
ind: number;
|
|
423
|
+
})[];
|
|
424
|
+
v: string;
|
|
425
|
+
fr: number;
|
|
426
|
+
op: number;
|
|
427
|
+
ip: number;
|
|
428
|
+
assets: never[];
|
|
429
|
+
};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import "katex/dist/katex.min.css";
|
|
2
|
+
export interface PickaxeMarkdownRendererProps {
|
|
3
|
+
className?: string;
|
|
4
|
+
value?: string | null;
|
|
5
|
+
}
|
|
6
|
+
export type Node = {
|
|
7
|
+
node?: any;
|
|
8
|
+
};
|
|
9
|
+
export declare const PickaxeMarkdownRenderer: ({ className, value, }: PickaxeMarkdownRendererProps) => import("react/jsx-runtime").JSX.Element;
|
|
10
|
+
export default PickaxeMarkdownRenderer;
|
package/dist/esm/src/components/Pickaxe/common/PickaxeMarkdown/hooks/usePickaxeMarkdownContext.d.ts
ADDED
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export declare const usePickaxeMarkdownContext: () => {
|
|
2
|
+
theme?: ("light" | "dark") | undefined;
|
|
3
|
+
accentColor?: string | undefined;
|
|
4
|
+
linkPreviews?: boolean | undefined;
|
|
5
|
+
actions?: boolean | undefined;
|
|
6
|
+
setTheme?: import("../../../../../types/common").SetState<"light" | "dark"> | undefined;
|
|
7
|
+
setAccentColor?: import("../../../../../types/common").SetState<string> | undefined;
|
|
8
|
+
setLinkPreviews?: import("../../../../../types/common").SetState<boolean> | undefined;
|
|
9
|
+
setActions?: import("../../../../../types/common").SetState<boolean> | undefined;
|
|
10
|
+
};
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { SetState } from "../../../../types/common";
|
|
2
|
+
import { type ReactNode } from "react";
|
|
3
|
+
type PickaxeMarkdownTheme = "light" | "dark";
|
|
4
|
+
type PickaxeMarkdownContextType = {
|
|
5
|
+
theme?: PickaxeMarkdownTheme;
|
|
6
|
+
accentColor?: string;
|
|
7
|
+
linkPreviews?: boolean;
|
|
8
|
+
actions?: boolean;
|
|
9
|
+
setTheme?: SetState<PickaxeMarkdownTheme>;
|
|
10
|
+
setAccentColor?: SetState<string>;
|
|
11
|
+
setLinkPreviews?: SetState<boolean>;
|
|
12
|
+
setActions?: SetState<boolean>;
|
|
13
|
+
};
|
|
14
|
+
interface PickaxeMarkdownProps {
|
|
15
|
+
children: ReactNode;
|
|
16
|
+
theme?: PickaxeMarkdownTheme;
|
|
17
|
+
accentColor?: string;
|
|
18
|
+
linkPreviews?: boolean;
|
|
19
|
+
actions?: boolean;
|
|
20
|
+
}
|
|
21
|
+
export declare const PickaxeMarkdownContext: import("react").Context<PickaxeMarkdownContextType>;
|
|
22
|
+
declare const PickaxeMarkdown: ({ children, theme: _theme, accentColor: _accentColor, linkPreviews: _linkPreviews, actions: _actions, }: PickaxeMarkdownProps) => import("react/jsx-runtime").JSX.Element;
|
|
23
|
+
export default PickaxeMarkdown;
|
package/dist/esm/src/index.d.ts
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
export * from "./components/Pickaxe";
|
|
2
2
|
export * from "./components/Pickaxe/Provider";
|
|
3
3
|
export * from "./components/Pickaxe/ResponseProvider";
|
|
4
|
+
export * from "./components/Pickaxe/common/PickaxeMarkdown";
|
|
5
|
+
export * from "./components/Pickaxe/common/PickaxeMarkdown/Renderer";
|
|
4
6
|
export * from "./hooks/pickaxe/useConversation";
|
|
5
7
|
export * from "./hooks/pickaxe/useHistory";
|
|
6
8
|
export * from "./hooks/pickaxe/usePickaxe";
|
|
@@ -9,5 +11,3 @@ export * from "./hooks/pickaxe/useResponseContext";
|
|
|
9
11
|
export * from "./hooks/pickaxe/useSubmit";
|
|
10
12
|
export * from "./hooks/pickaxe/useSubmitDocument";
|
|
11
13
|
export * from "./hooks/pickaxe/useSubmitResult";
|
|
12
|
-
export * from "./hooks/pickaxe/useLinkPreviews";
|
|
13
|
-
export * from "./hooks/pickaxe/useActions";
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pickaxeproject/react",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.30",
|
|
4
4
|
"description": "Client utility library for Pickaxe",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -70,6 +70,8 @@
|
|
|
70
70
|
"@types/prismjs": "^1.26.5",
|
|
71
71
|
"@types/react": "^18.0.26",
|
|
72
72
|
"@types/react-dom": "^18.0.10",
|
|
73
|
+
"@types/react-lottie": "^1.2.10",
|
|
74
|
+
"@types/react-syntax-highlighter": "^15.5.13",
|
|
73
75
|
"@typescript-eslint/eslint-plugin": "^5.48.1",
|
|
74
76
|
"@typescript-eslint/parser": "^5.48.1",
|
|
75
77
|
"@zerollup/ts-transform-paths": "^1.7.18",
|
|
@@ -92,17 +94,21 @@
|
|
|
92
94
|
"isomorphic-dompurify": "^2.20.0",
|
|
93
95
|
"katex": "^0.16.19",
|
|
94
96
|
"lint-staged": "^13.1.0",
|
|
95
|
-
"marked": "^15.0.6",
|
|
96
|
-
"marked-katex-extension": "^5.1.4",
|
|
97
97
|
"postcss": "^8.4.49",
|
|
98
98
|
"prettier": "^2.8.2",
|
|
99
99
|
"prismjs": "^1.29.0",
|
|
100
100
|
"react": "^18.2.0",
|
|
101
101
|
"react-dom": "^18.2.0",
|
|
102
102
|
"react-intersection-observer": "^9.14.1",
|
|
103
|
+
"react-lottie": "^1.2.10",
|
|
104
|
+
"react-markdown": "^9.0.3",
|
|
105
|
+
"react-syntax-highlighter": "^15.6.1",
|
|
103
106
|
"react-textarea-autosize": "^8.5.7",
|
|
104
107
|
"react-tooltip": "^5.28.0",
|
|
105
108
|
"react-virtualized-auto-sizer": "^1.0.25",
|
|
109
|
+
"rehype-katex": "^7.0.1",
|
|
110
|
+
"remark-gfm": "^4.0.0",
|
|
111
|
+
"remark-math": "^6.0.0",
|
|
106
112
|
"rollup": "^2.79.1",
|
|
107
113
|
"rollup-plugin-delete": "^2.0.0",
|
|
108
114
|
"rollup-plugin-peer-deps-external": "^2.2.4",
|
|
@@ -133,14 +139,18 @@
|
|
|
133
139
|
"framer-motion": "^11.17.0",
|
|
134
140
|
"isomorphic-dompurify": "^2.20.0",
|
|
135
141
|
"katex": "^0.16.19",
|
|
136
|
-
"marked": "^15.0.6",
|
|
137
|
-
"marked-katex-extension": "^5.1.4",
|
|
138
142
|
"prismjs": "^1.29.0",
|
|
139
143
|
"react": "^16.8.0 || ^17 || ^18",
|
|
140
144
|
"react-dom": "^16.8.0 || ^17 || ^18",
|
|
141
145
|
"react-intersection-observer": "^9.14.1",
|
|
146
|
+
"react-lottie": "^1.2.10",
|
|
147
|
+
"react-markdown": "^9.0.3",
|
|
148
|
+
"react-syntax-highlighter": "^15.6.1",
|
|
142
149
|
"react-tooltip": "^5.28.0",
|
|
143
150
|
"react-virtualized-auto-sizer": "^1.0.25",
|
|
151
|
+
"rehype-katex": "^7.0.1",
|
|
152
|
+
"remark-gfm": "^4.0.0",
|
|
153
|
+
"remark-math": "^6.0.0",
|
|
144
154
|
"tailwind-merge": "^2.6.0",
|
|
145
155
|
"tailwind-scrollbar": "^3.1.0"
|
|
146
156
|
},
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("marked"),t=require("prismjs");function r(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}require("prismjs/components/prism-css"),require("prismjs/components/prism-javascript"),require("prismjs/components/prism-markdown"),require("prismjs/components/prism-markup"),require("prismjs/components/prism-python");var n=r(t);exports.renderer=({theme:t="light",accentColor:r="#228DD7",centerMedia:i=!0,forceMobile:l=!1,linkPreviews:a=!1,actions:o=!1}={theme:"light",accentColor:"#228DD7",centerMedia:!1,forceMobile:!1,linkPreviews:!1,actions:!1})=>{const s=new e.marked.Renderer,d=s.link;s.link=e=>{const n=e.href.startsWith("www.")?`https://${e.href}`:e.href,l=n.match(/(?:https?:\/\/)?(?:www\.)?(?:youtube\.com\/watch\?v=|youtu\.be\/)([\w-]+)/i);if(l&&(null==l?void 0:l[1]))return i?`<div style="display: flex; justify-content: center; width: 100%; height: 315px; margin-top: 2.5rem; margin-bottom: 2.5rem;">\n <iframe src="https://www.youtube.com/embed/${l[1]}" \n style="width: 100%; max-width: 560px; height: 100%;" \n frameborder="0" \n allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" \n allowfullscreen>\n </iframe>\n</div>`:`<div style="width: 100%; height: 315px; max-width: 560px;">\n <iframe src="https://www.youtube.com/embed/${l[1]}" \n style="width: 100%; height: 100%;" \n frameborder="0" \n allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" \n allowfullscreen>\n </iframe>\n</div>`;if(null!==n.match(/\.(jpeg|jpg|gif|bmp|webp|svg|tiff|avif)$/))return i?`<div style="display: flex; justify-content: center; width: 100%; margin-top: 2.5rem; margin-bottom: 2.5rem;">\n <img src="${n}" alt="${e.text}" style="max-width:300px; width: 100%; height:auto; border-radius: 8px;">\n </div>`:`<img src="${n}" alt="${e.text}" style="max-width:300px; height:auto;">`;if(o&&n.includes("pickaxe")&&(n.includes("/api/fn/result")||n.includes("/api/function_call_results")))return`<dotlottie-wc src="${"dark"===t?"https://lottie.host/328aa2a8-b160-4124-a40c-5847f58da813/Vl0EK9lnJc.lottie":"https://lottie.host/6fd1b0ad-8816-4800-b511-3a259947a9b2/kh7G1Fz1HB.lottie"}" data-fn-url="${n}" class="marked-link-function-calling-loader" style="max-width:150px; width: 100%; height:150px; border: none; background: transparent;" autoplay loop></dotlottie-wc>`;let c=d.call(s,e);return c=c.replace(/^<a /,`<a style="color: ${r};" target="_blank" rel="noopener noreferrer"${a?' class="marked-link-possible-preview-render"':""}`),c},s.heading=({depth:e,text:t})=>1===e?`<h1 style="\n font-size: 2em;\n line-height: 1;\n "><b>${t}</b></h1>`:2===e?`<h2 style="\n font-size: 1.25em;\n "><b>${t}</b></h2>`:`<h${e} style="\n "><b>${t}</b></h${e}>`;const c=s.list;s.list=e=>{let t=c.call(s,e);return t=t.replace(/<\/p>\s*<\/li>/g,"</li>"),t=t.replace(/<li>\s*<p>/g,"<li>"),t=t.replace(/^<ol/,'<ol style="\n list-style: decimal inside; \n padding-left: 15px; \n margin-top: .5em; \n margin-bottom: 0;\n "'),t=t.replace(/^<ul/,'<ul style="\n list-style: disc inside; \n padding-left: 15px; \n margin-top: .5em; \n margin-bottom: 0;\n "'),t};const p=s.listitem;s.listitem=e=>{let t=p.call(s,e);return t=t.replace(/<li/,'<li style="\n margin-bottom: 4px;\n "'),t};const m=s.table;s.table=e=>{let t=m.call(s,e);return t=t.replace(/<table/,'<table style="margin-top: .5em; font-size: 16px;" class="table-auto"'),t};const u=s.tablecell;s.tablecell=e=>{let t=u.call(s,e);return t=t.replace(/<td/,'<td class="border-[#d0d7de] dark:border-[#30363d]" style="\n border-width: 1px;\n padding: 0.25em 0.75em 0.25em 0.75em;\n "'),t=t.replace(/<th/,'<th class="border-[#d0d7de] dark:border-[#30363d]" style="\n border-width: 1px;\n padding: 0.25em 0.75em 0.25em 0.75em;\n font-weight: 600;\n "'),t};const h=s.code;s.code=e=>{const t=h.call(s,e);return e.lang&&n.default.languages[e.lang]?`<div class="bg-[#EFF1F3] dark:bg-[#161b22]" style="position: relative; overflow: hidden;"><pre style="\n padding: .75em;\n border-radius: 0.25em;\n font-size: 16px;\n overflow: auto;\n max-width: ${window.innerWidth-100}px;\n">\n <code class="language-${e.lang}">\n${n.default.highlight(e.text,n.default.languages[e.lang],e.lang)}\n</code>\n<button class="copy-code-button bg-[#d0d7de] dark:bg-[#30363d] text-[#1f2328] dark:text-[#e6edf3]" \nstyle="\n position: absolute;\n top: -20px;\n right: 0;\n padding: .25em 1.4em .25em .5em;\n border-radius: 0 0 0 0.25em;\n font-size: ${l?"12":"14"}px;\n cursor: pointer;\n user-select: none;\n border: none;\n outline: none;\n z-index: 1;\n">\n Copy\n</button></pre></div>`:t};const b=s.codespan;s.codespan=e=>b.call(s,e).replace(/<code/,`<code class="bg-[#EFF1F3] dark:bg-[#161b22] text-[#1f2328] dark:text-[#e6edf3]" style="\n padding: 0 .25em 0 .25em;\n border-radius: 0.25em;\n font-size: ${l?"14px":"16px"};\n margin-left: 2px;\n "`);const g=s.blockquote;return s.blockquote=e=>g.call(s,e).replace(/<blockquote/,'<blockquote class="border-l-[#D0D7DE] dark:border-l-[#30363D] text-[#656d76] dark:text-[#8b8b8b]" style="\n border-left-width: 4px;\n padding-left: 1em;\n "'),s.image=e=>{const t=e.href.startsWith("www.")?`https://${e.href}`:e.href;return i?`<div style="display: flex; justify-content: center; width: 100%; margin-top: 2.5rem; margin-bottom: 2.5rem;">\n <img src="${t}" alt="${e.text}" style="max-width:300px; height:auto; border-radius: 8px;">\n </div>`:`<img src="${t}" alt="${e.text}" style="max-width:300px; height:auto; border-radius: 8px;">`},s};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("react"),r=require("marked"),o=require("../../../common/renderer.js"),n=require("../../../hooks/pickaxe/usePickaxeContext.js"),c=require("../../../hooks/studio/useStyleFontSize.js"),s=require("../../../hooks/pickaxe/useLinkPreviews.js"),i=require("../../../hooks/pickaxe/useActions.js"),a=require("marked-katex-extension"),u=require("copy-to-clipboard"),l=require("../../Core/HtmlRenderer.js"),d=require("../../../common/cn.js");function m(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var h=m(a),p=m(u);r.marked.use(h.default({throwOnError:!1,output:"mathml"}));exports.default=({html:a,className:u,style:m,marked:h,renderer:f,onClick:k})=>{const{styles:v,colors:y}=n.usePickaxeContext(),b=t.useRef(null),x=c.useStyleFontSize({type:"body"});s.useLinkPreviews(b,{theme:v.theme}),i.useActions(b,{theme:v.theme,accentColor:y.accent,accentTextColor:y.accentText}),t.useEffect((()=>{const e=b.current;if(!e)return;const t=e=>{var t,r,o;const n=e.target.closest(".copy-code-button");if(n){const e=null!==(o=null===(r=null===(t=n.parentElement)||void 0===t?void 0:t.querySelector("code"))||void 0===r?void 0:r.textContent)&&void 0!==o?o:"";if(!e)return;p.default(e)}};return e.addEventListener("click",t),()=>{e.removeEventListener("click",t)}}),[b]);const w=t.useMemo((()=>{let e=a||"";const t=e.match(/<iframe\s+[^>]*src=["']https:\/\/www\.youtube\.com\/embed\/([\w-]+)(\?[^"' >]*)?["'][^>]*><\/iframe>/gi);return t&&t.forEach((t=>{var r;const o=`<div style="width: 100%; height: 315px; max-width: 560px;">\n <iframe src="https://www.youtube.com/embed/${null===(r=t.match(/(?:youtube\.com\/watch\?v=|youtu\.be\/|youtube\.com\/embed\/)([\w-]+)/))||void 0===r?void 0:r[1]}"\n style="width: 100%; height: 100%;"\n frameborder="0"\n allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"\n allowfullscreen>\n </iframe>\n</div>`;e=e.replace(t,o)})),e.replace(/```[\s\S]*?```|(\n(?=\n))/g,((e,t)=>t?"\n\n<br/>\n":e))}),[a]);return e.jsx("div",Object.assign({ref:b},{children:e.jsx(l.default,{html:r.marked.parse(w,Object.assign({gfm:!0,breaks:!0,renderer:o.renderer(Object.assign(Object.assign({},f),{theme:v.theme,accentColor:y.accent,centerMedia:!1,linkPreviews:!0,actions:!0}))},h)).toString(),className:d.default(u,x()),style:m,onClick:k})}))};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../_virtual/_tslib.js"),t=require("react"),n=require("marked"),o=require("../../common/renderer.js"),r=require("../../common/api/streamer.js"),i=require("../../common/api/utils.js");const l=(t,r)=>e.__awaiter(void 0,void 0,void 0,(function*(){var e,i;const l=t.replace(/```[\s\S]*?```|(\n(?=\n))/g,((e,t)=>t?"\n\n<br/>\n":e));return yield n.marked.parse(l,{gfm:!0,breaks:!0,renderer:o.renderer({theme:null!==(e=null==r?void 0:r.theme)&&void 0!==e?e:"light",accentColor:null!==(i=null==r?void 0:r.accentColor)&&void 0!==i?i:"#228DD7",centerMedia:!1,linkPreviews:!0,actions:!0})})})),s=(t,n)=>e.__awaiter(void 0,void 0,void 0,(function*(){try{yield i.default.post("/fn/update",{id:t,data:n})}catch(e){console.error("[updateCache] error",e)}}));exports.useActions=(n,o)=>{t.useEffect((()=>{const t=null==n?void 0:n.current;if(!t)return;const i=new MutationObserver((()=>e.__awaiter(void 0,void 0,void 0,(function*(){var e,t,n,i,d,a,c;const u=document.querySelectorAll(".marked-link-function-calling-loader");for(const m of u){if(m.dataset.processed)continue;"development"===process.env.NODE_ENV&&console.log("[useActions] getting action",m.href);const u=null!==(n=null!==(t=null===(e=m.parentElement)||void 0===e?void 0:e.parentElement)&&void 0!==t?t:m.parentElement)&&void 0!==n?n:null;if(!u){console.error("[useActions] missing message container");continue}const p=null!==(i=m.getAttribute("alt"))&&void 0!==i?i:m.getAttribute("data-fn-url");if(!p){console.error("[useActions] missing fn result url");continue}const v=yield fetch(p);if(200!==v.status){console.error("[useActions] failed fetching result:",v);continue}const f=yield v.json();if(f.error)console.error("[useActions] error in req:",f.error);else if(f.fcid)"development"===process.env.NODE_ENV&&console.log("[useActions] waiting for fn call to complete");else{if(f.url){m.remove();const e=document.createElement("img");e.src=f.url,e.alt=null!==(d=f.prompt)&&void 0!==d?d:"Generated Image",e.style.marginTop="1em",e.style.borderRadius="4px",e.style.width="100%",u.appendChild(e);const t=document.createElement("div");t.style.marginTop="1em",t.style.display="flex",t.style.alignItems="center",t.style.justifyContent="flex-end",t.style.gap="0.5em",t.style.width="100%";const n=document.createElement("button");n.innerHTML='<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">\n<path d="M21 21H3" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>\n<path d="M7 10L12 15L17 10" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>\n<path d="M12 15V3" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>\n</svg>\n',n.style.padding=".5em",n.style.backgroundColor="#228DD7",n.style.color=null!==(a=null==o?void 0:o.accentTextColor)&&void 0!==a?a:"#FFFFFF",n.style.textAlign="center",n.style.textDecoration="none",n.style.borderRadius="4px",n.style.fontSize="16px",n.style.fontWeight="bold",n.style.boxShadow="0 2px 5px rgba(0, 0, 0, 0.2)",n.style.transition="background-color 0.3s ease",n.addEventListener("mouseover",(function(){var e;n.style.backgroundColor=(null!==(e=null==o?void 0:o.accentColor)&&void 0!==e?e:"#228DD7")+"CC"})),n.addEventListener("mouseout",(function(){var e;n.style.backgroundColor=null!==(e=null==o?void 0:o.accentColor)&&void 0!==e?e:"#228DD7"})),n.addEventListener("click",(function(e){var t;e.preventDefault();const n=document.createElement("a");n.href=null!==(t=f.url)&&void 0!==t?t:"",n.download="generated_image.png",n.click()})),t.appendChild(n),u.appendChild(t)}if(f.text){m.remove();const e=document.createElement("div");e.style.marginTop="1em",e.innerHTML=yield l(f.text),u.appendChild(e)}if(f.button_link){m.remove();const e=document.createElement("a");e.href=f.button_link,e.target="_blank",e.classList.add("link-preview-button"),e.textContent=f.button_text||"",e.style.display="inline-block",e.style.padding="10px 20px",e.style.backgroundColor="#228DD7",e.style.color="#ffffff",e.style.textAlign="center",e.style.textDecoration="none",e.style.borderRadius="4px",e.style.fontSize="16px",e.style.fontWeight="bold",e.style.boxShadow="0 2px 5px rgba(0, 0, 0, 0.2)",e.style.transition="background-color 0.3s ease",e.addEventListener("mouseover",(function(){e.style.backgroundColor="#489dd9"})),e.addEventListener("mouseout",(function(){e.style.backgroundColor="#228DD7"})),u.appendChild(document.createElement("br")),u.appendChild(e)}if(f.openaidata&&!f.text){const e=null!==(c=new URL(p).searchParams.get("id"))&&void 0!==c?c:f.call_id,t=null==f?void 0:f.actionId;m.remove();const n=f.formId;if(!n){console.error("Missing formId from result data");continue}const o=f.responseId;if(!o){console.error("Missing responseId from result data");continue}const i=(yield r.streamer({formId:n,responseId:o,data:f.openaidata})).body;if(!i){console.error("Streaming error, no response body");continue}let d=!0,a="";const v=document.createElement("div");v.style.marginTop="1em",v.dataset.actionId=t,u.appendChild(v);const g=i.getReader(),y=new TextDecoder;for(;d;){const{value:e,done:t}=yield g.read();d=!t;a+=y.decode(e),"marked"in window?v.innerHTML=yield l(a):v.textContent=a}const b=null!=e?e:f.call_id;b&&(yield s(b,Object.assign(Object.assign({},f),{text:a})))}}}}))));return i.observe(t,{childList:!0,subtree:!0}),()=>{i.disconnect()}}),[n])};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../_virtual/_tslib.js"),t=require("react"),r=require("../../common/api/utils.js"),o=require("../../common/error.js");const i=e=>{setTimeout((()=>{e.style.opacity="1",e.style.transform="scale(1)"}),50)},n=e=>{e.onmouseover=()=>{e.style.transform="scale(.99)"},e.onmouseout=()=>{e.style.transform="scale(1)"}},s=t=>e.__awaiter(void 0,void 0,void 0,(function*(){try{const e=yield r.default.get(`/metadata?url=${encodeURIComponent(t)}`);return e.data}catch(e){const t=o.default(e);return console.error("[fetchMetadata] error",t),null}}));exports.useLinkPreviews=(r,o)=>{t.useEffect((()=>{const t=null==r?void 0:r.current;if(!t)return;const a=new MutationObserver((()=>e.__awaiter(void 0,void 0,void 0,(function*(){const e=t.querySelectorAll(".marked-link-possible-preview-render");for(const t of e){"development"===process.env.NODE_ENV&&console.log("[useLinkPreviews] getting preview for",t.href),t.classList.remove("marked-link-possible-preview-render");const e=t.closest(".chat-message");if(!e)continue;if(e.querySelector(`div[data-href="${t.href}"]`))continue;const r=yield s(t.href);if(!r||!r.image||!r.title)continue;const a=document.createElement("div");a.setAttribute("style","display: flex; margin-top: 2em; text-decoration: none;"),a.dataset.href=t.href,a.dataset.processed="true";const l=o?"dark"===o.theme:document.documentElement.classList.contains("dark"),d=document.createElement("a");if(d.href=t.href,d.setAttribute("target","_blank"),d.setAttribute("style",`display: flex; position: relative; flex-direction: column; border-radius: 20px; border-bottom-left-radius: 10px; width: 100%; max-width: 220px; background-color: #${l?"000000":"E9E9EB"}; overflow: hidden;`),r.image&&(r.image.startsWith("http")||r.image.startsWith("data:image")||r.image.startsWith("blob:"))){const e=document.createElement("div");e.setAttribute("style",`position: relative; flex-grow: 1; width: 100%; overflow: hidden; background-image: url("${r.image}"); background-size: cover; background-position: center; height: 90px;`),d.appendChild(e)}const c=document.createElement("div");c.setAttribute("style","display: flex; flex-direction: column; padding: 0.25em 1em; gap: 0.2em;");const u=document.createElement("p");u.textContent=r.title,u.setAttribute("style","font-size: 14px; font-weight: 600; margin: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;"),c.appendChild(u);const m=document.createElement("p");m.textContent=r.href,m.setAttribute("style","opacity: 0.6; font-size: 14px; margin: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;"),c.appendChild(m),d.appendChild(c),a.appendChild(d);const p=t.closest(".chat-message");p&&(p.querySelector(`div[data-href="${t.href}"]`)||(p.appendChild(a),i(d),n(d)))}}))));return a.observe(t,{childList:!0,subtree:!0}),()=>{a.disconnect()}}),[r])};
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import "prismjs/components/prism-css";
|
|
2
|
-
import "prismjs/components/prism-javascript";
|
|
3
|
-
import "prismjs/components/prism-markdown";
|
|
4
|
-
import "prismjs/components/prism-markup";
|
|
5
|
-
import "prismjs/components/prism-python";
|
|
6
|
-
export interface RendererOptions {
|
|
7
|
-
theme?: "light" | "dark";
|
|
8
|
-
accentColor?: string;
|
|
9
|
-
centerMedia?: boolean;
|
|
10
|
-
forceMobile?: boolean;
|
|
11
|
-
linkPreviews?: boolean;
|
|
12
|
-
actions?: boolean;
|
|
13
|
-
}
|
|
14
|
-
export declare const renderer: ({ theme, accentColor, centerMedia, forceMobile, linkPreviews, actions, }?: RendererOptions) => import("marked").Renderer;
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { type CSSProperties } from "react";
|
|
2
|
-
import { type MarkedOptions } from "marked";
|
|
3
|
-
import { type RendererOptions } from "../../../common/renderer";
|
|
4
|
-
interface PickaxeMarkdownProps {
|
|
5
|
-
html?: string | null;
|
|
6
|
-
className?: string;
|
|
7
|
-
style?: CSSProperties;
|
|
8
|
-
renderer?: RendererOptions;
|
|
9
|
-
marked?: MarkedOptions;
|
|
10
|
-
onClick?: () => void;
|
|
11
|
-
}
|
|
12
|
-
declare const PickaxeMarkdown: ({ html: _html, className, style, marked: _marked, renderer: _renderer, onClick, }: PickaxeMarkdownProps) => import("react/jsx-runtime").JSX.Element;
|
|
13
|
-
export default PickaxeMarkdown;
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import { RefObject } from "react";
|
|
2
|
-
interface UseActionsOptions {
|
|
3
|
-
theme?: "light" | "dark";
|
|
4
|
-
accentColor?: string;
|
|
5
|
-
accentTextColor?: string;
|
|
6
|
-
}
|
|
7
|
-
export declare const useActions: (ref: RefObject<HTMLDivElement> | null, opt?: UseActionsOptions) => void;
|
|
8
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{marked as e}from"marked";import t from"prismjs";import"prismjs/components/prism-css";import"prismjs/components/prism-javascript";import"prismjs/components/prism-markdown";import"prismjs/components/prism-markup";import"prismjs/components/prism-python";const n=({theme:n="light",accentColor:r="#228DD7",centerMedia:i=!0,forceMobile:l=!1,linkPreviews:o=!1,actions:a=!1}={theme:"light",accentColor:"#228DD7",centerMedia:!1,forceMobile:!1,linkPreviews:!1,actions:!1})=>{const s=new e.Renderer,d=s.link;s.link=e=>{const t=e.href.startsWith("www.")?`https://${e.href}`:e.href,l=t.match(/(?:https?:\/\/)?(?:www\.)?(?:youtube\.com\/watch\?v=|youtu\.be\/)([\w-]+)/i);if(l&&(null==l?void 0:l[1]))return i?`<div style="display: flex; justify-content: center; width: 100%; height: 315px; margin-top: 2.5rem; margin-bottom: 2.5rem;">\n <iframe src="https://www.youtube.com/embed/${l[1]}" \n style="width: 100%; max-width: 560px; height: 100%;" \n frameborder="0" \n allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" \n allowfullscreen>\n </iframe>\n</div>`:`<div style="width: 100%; height: 315px; max-width: 560px;">\n <iframe src="https://www.youtube.com/embed/${l[1]}" \n style="width: 100%; height: 100%;" \n frameborder="0" \n allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" \n allowfullscreen>\n </iframe>\n</div>`;if(null!==t.match(/\.(jpeg|jpg|gif|bmp|webp|svg|tiff|avif)$/))return i?`<div style="display: flex; justify-content: center; width: 100%; margin-top: 2.5rem; margin-bottom: 2.5rem;">\n <img src="${t}" alt="${e.text}" style="max-width:300px; width: 100%; height:auto; border-radius: 8px;">\n </div>`:`<img src="${t}" alt="${e.text}" style="max-width:300px; height:auto;">`;if(a&&t.includes("pickaxe")&&(t.includes("/api/fn/result")||t.includes("/api/function_call_results")))return`<dotlottie-wc src="${"dark"===n?"https://lottie.host/328aa2a8-b160-4124-a40c-5847f58da813/Vl0EK9lnJc.lottie":"https://lottie.host/6fd1b0ad-8816-4800-b511-3a259947a9b2/kh7G1Fz1HB.lottie"}" data-fn-url="${t}" class="marked-link-function-calling-loader" style="max-width:150px; width: 100%; height:150px; border: none; background: transparent;" autoplay loop></dotlottie-wc>`;let c=d.call(s,e);return c=c.replace(/^<a /,`<a style="color: ${r};" target="_blank" rel="noopener noreferrer"${o?' class="marked-link-possible-preview-render"':""}`),c},s.heading=({depth:e,text:t})=>1===e?`<h1 style="\n font-size: 2em;\n line-height: 1;\n "><b>${t}</b></h1>`:2===e?`<h2 style="\n font-size: 1.25em;\n "><b>${t}</b></h2>`:`<h${e} style="\n "><b>${t}</b></h${e}>`;const c=s.list;s.list=e=>{let t=c.call(s,e);return t=t.replace(/<\/p>\s*<\/li>/g,"</li>"),t=t.replace(/<li>\s*<p>/g,"<li>"),t=t.replace(/^<ol/,'<ol style="\n list-style: decimal inside; \n padding-left: 15px; \n margin-top: .5em; \n margin-bottom: 0;\n "'),t=t.replace(/^<ul/,'<ul style="\n list-style: disc inside; \n padding-left: 15px; \n margin-top: .5em; \n margin-bottom: 0;\n "'),t};const p=s.listitem;s.listitem=e=>{let t=p.call(s,e);return t=t.replace(/<li/,'<li style="\n margin-bottom: 4px;\n "'),t};const m=s.table;s.table=e=>{let t=m.call(s,e);return t=t.replace(/<table/,'<table style="margin-top: .5em; font-size: 16px;" class="table-auto"'),t};const h=s.tablecell;s.tablecell=e=>{let t=h.call(s,e);return t=t.replace(/<td/,'<td class="border-[#d0d7de] dark:border-[#30363d]" style="\n border-width: 1px;\n padding: 0.25em 0.75em 0.25em 0.75em;\n "'),t=t.replace(/<th/,'<th class="border-[#d0d7de] dark:border-[#30363d]" style="\n border-width: 1px;\n padding: 0.25em 0.75em 0.25em 0.75em;\n font-weight: 600;\n "'),t};const b=s.code;s.code=e=>{const n=b.call(s,e);return e.lang&&t.languages[e.lang]?`<div class="bg-[#EFF1F3] dark:bg-[#161b22]" style="position: relative; overflow: hidden;"><pre style="\n padding: .75em;\n border-radius: 0.25em;\n font-size: 16px;\n overflow: auto;\n max-width: ${window.innerWidth-100}px;\n">\n <code class="language-${e.lang}">\n${t.highlight(e.text,t.languages[e.lang],e.lang)}\n</code>\n<button class="copy-code-button bg-[#d0d7de] dark:bg-[#30363d] text-[#1f2328] dark:text-[#e6edf3]" \nstyle="\n position: absolute;\n top: -20px;\n right: 0;\n padding: .25em 1.4em .25em .5em;\n border-radius: 0 0 0 0.25em;\n font-size: ${l?"12":"14"}px;\n cursor: pointer;\n user-select: none;\n border: none;\n outline: none;\n z-index: 1;\n">\n Copy\n</button></pre></div>`:n};const g=s.codespan;s.codespan=e=>g.call(s,e).replace(/<code/,`<code class="bg-[#EFF1F3] dark:bg-[#161b22] text-[#1f2328] dark:text-[#e6edf3]" style="\n padding: 0 .25em 0 .25em;\n border-radius: 0.25em;\n font-size: ${l?"14px":"16px"};\n margin-left: 2px;\n "`);const u=s.blockquote;return s.blockquote=e=>u.call(s,e).replace(/<blockquote/,'<blockquote class="border-l-[#D0D7DE] dark:border-l-[#30363D] text-[#656d76] dark:text-[#8b8b8b]" style="\n border-left-width: 4px;\n padding-left: 1em;\n "'),s.image=e=>{const t=e.href.startsWith("www.")?`https://${e.href}`:e.href;return i?`<div style="display: flex; justify-content: center; width: 100%; margin-top: 2.5rem; margin-bottom: 2.5rem;">\n <img src="${t}" alt="${e.text}" style="max-width:300px; height:auto; border-radius: 8px;">\n </div>`:`<img src="${t}" alt="${e.text}" style="max-width:300px; height:auto; border-radius: 8px;">`},s};export{n as renderer};
|