thikanaa 0.1.17 → 0.1.18

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/index.css CHANGED
@@ -1,11 +1,18 @@
1
- .chatbot-icon {
2
- width: 50px;
3
- height: 50px;
4
- background-color: transparent;
5
- cursor: pointer;
6
- }
1
+ /* Thikana chat-popup — shadcn-inspired vanilla CSS */
2
+
3
+ .thk-root {
4
+ --thk-bg: #ffffff;
5
+ --thk-fg: hsl(240 10% 3.9%);
6
+ --thk-muted: hsl(240 4.8% 95.9%);
7
+ --thk-muted-fg: hsl(240 3.8% 46.1%);
8
+ --thk-border: hsl(240 5.9% 90%);
9
+ --thk-border-strong: hsl(240 5.9% 84%);
10
+ --thk-primary: hsl(240 5.9% 10%);
11
+ --thk-primary-fg: hsl(0 0% 98%);
12
+ --thk-accent: hsl(0 70% 50%);
13
+ --thk-ring: hsl(240 5% 64.9% / 0.5);
14
+ --thk-radius: 14px;
7
15
 
8
- .chatbot-container {
9
16
  z-index: 1000;
10
17
  position: fixed;
11
18
  bottom: 20px;
@@ -13,175 +20,458 @@
13
20
  display: flex;
14
21
  flex-direction: column;
15
22
  align-items: flex-end;
23
+ gap: 14px;
24
+ font-family:
25
+ ui-sans-serif,
26
+ system-ui,
27
+ -apple-system,
28
+ "Segoe UI",
29
+ Roboto,
30
+ "Helvetica Neue",
31
+ Arial,
32
+ sans-serif;
33
+ color: var(--thk-fg);
16
34
  }
17
35
 
18
- .chatbot-popup {
19
- margin-bottom: 20px;
36
+ /* ---------- Bubble ---------- */
37
+ .thk-bubble {
38
+ width: 56px;
39
+ height: 56px;
40
+ border-radius: 50%;
41
+ border: 1px solid var(--thk-border);
42
+ background: var(--thk-bg);
43
+ cursor: pointer;
44
+ padding: 0;
20
45
  display: flex;
21
- flex-direction: column;
22
- background-color: #ffffff;
23
- padding: 10px;
24
- border-radius: 16px;
46
+ align-items: center;
47
+ justify-content: center;
25
48
  box-shadow:
26
- rgba(50, 50, 93, 0.25) 0px 50px 100px -20px,
27
- rgba(0, 0, 0, 0.3) 0px 30px 60px -30px;
28
- position: relative;
29
- overflow: hidden;
49
+ 0 4px 12px rgba(0, 0, 0, 0.08),
50
+ 0 2px 4px rgba(0, 0, 0, 0.04);
51
+ transition:
52
+ transform 0.18s ease,
53
+ box-shadow 0.18s ease;
54
+ outline: none;
55
+ }
56
+ .thk-bubble:hover {
57
+ transform: translateY(-2px);
58
+ box-shadow:
59
+ 0 8px 20px rgba(0, 0, 0, 0.12),
60
+ 0 3px 6px rgba(0, 0, 0, 0.06);
61
+ }
62
+ .thk-bubble:focus-visible {
63
+ box-shadow:
64
+ 0 0 0 3px var(--thk-ring),
65
+ 0 4px 12px rgba(0, 0, 0, 0.08);
66
+ }
67
+ .thk-bubble img {
68
+ width: 28px;
69
+ height: 28px;
70
+ pointer-events: none;
30
71
  }
31
72
 
32
- .chat-popup-wrapper {
73
+ /* ---------- Popup ---------- */
74
+ .thk-popup {
75
+ position: relative;
76
+ background: var(--thk-bg);
77
+ border: 1px solid var(--thk-border);
78
+ border-radius: var(--thk-radius);
33
79
  display: flex;
34
80
  flex-direction: column;
35
- position: relative;
81
+ overflow: hidden;
82
+ box-shadow:
83
+ 0 24px 48px -12px rgba(0, 0, 0, 0.18),
84
+ 0 12px 24px -8px rgba(0, 0, 0, 0.08);
85
+ transform-origin: bottom right;
86
+ animation: thk-pop-in 0.22s cubic-bezier(0.16, 1, 0.3, 1);
36
87
  transition:
37
88
  width 0.05s ease-out,
38
89
  height 0.05s ease-out;
39
90
  }
40
-
41
- .chat-popup-wrapper.resizing {
91
+ .thk-popup.thk-resizing {
42
92
  user-select: none;
43
93
  transition: none;
44
94
  }
45
95
 
46
- .input-container {
47
- margin-top: auto;
48
- width: 100%;
96
+ @keyframes thk-pop-in {
97
+ from {
98
+ opacity: 0;
99
+ transform: translateY(8px) scale(0.98);
100
+ }
101
+ to {
102
+ opacity: 1;
103
+ transform: translateY(0) scale(1);
104
+ }
105
+ }
106
+
107
+ /* ---------- Resize handle ---------- */
108
+ .thk-resize-handle {
109
+ position: absolute;
110
+ top: 0;
111
+ left: 0;
112
+ width: 18px;
113
+ height: 18px;
114
+ cursor: nwse-resize;
115
+ z-index: 10;
116
+ touch-action: none;
117
+ opacity: 0;
118
+ transition: opacity 0.2s;
119
+ }
120
+ .thk-popup:hover .thk-resize-handle {
121
+ opacity: 1;
122
+ }
123
+ .thk-resize-handle::before {
124
+ content: "";
125
+ position: absolute;
126
+ top: 6px;
127
+ left: 6px;
128
+ width: 8px;
129
+ height: 8px;
130
+ border-top: 2px solid var(--thk-border-strong);
131
+ border-left: 2px solid var(--thk-border-strong);
132
+ border-top-left-radius: 2px;
133
+ }
134
+
135
+ /* ---------- Header ---------- */
136
+ .thk-header {
49
137
  display: flex;
50
- align-items: flex-end;
138
+ align-items: center;
139
+ justify-content: space-between;
140
+ padding: 12px 14px;
141
+ border-bottom: 1px solid var(--thk-border);
142
+ background: var(--thk-bg);
143
+ flex-shrink: 0;
144
+ }
145
+ .thk-header-left {
146
+ display: flex;
147
+ align-items: center;
51
148
  gap: 10px;
52
- background-color: #f8f9fa;
53
- padding: 4px 6px;
54
- border-radius: 20px;
55
- border: 1px solid #e9ecef;
56
- box-sizing: border-box;
57
149
  }
58
-
59
- .input-container textarea {
60
- flex: 1;
61
- border: none;
62
- background: transparent;
63
- padding: 6px 8px;
150
+ .thk-avatar {
151
+ width: 34px;
152
+ height: 34px;
153
+ border-radius: 50%;
154
+ background: var(--thk-primary);
155
+ color: var(--thk-primary-fg);
156
+ display: flex;
157
+ align-items: center;
158
+ justify-content: center;
159
+ flex-shrink: 0;
160
+ }
161
+ .thk-header-text {
162
+ display: flex;
163
+ flex-direction: column;
164
+ line-height: 1.2;
165
+ }
166
+ .thk-name {
64
167
  font-size: 14px;
65
- line-height: 20px;
66
- outline: none;
67
- resize: none;
68
- font-family: inherit;
69
- overflow-y: auto;
70
- max-height: 120px;
168
+ font-weight: 600;
169
+ color: var(--thk-fg);
71
170
  }
72
-
73
- .input-container textarea::placeholder {
74
- color: #adb5bd;
171
+ .thk-status {
172
+ font-size: 11px;
173
+ color: var(--thk-muted-fg);
174
+ display: flex;
175
+ align-items: center;
176
+ gap: 5px;
177
+ margin-top: 2px;
178
+ }
179
+ .thk-status-dot {
180
+ width: 6px;
181
+ height: 6px;
182
+ border-radius: 50%;
183
+ background: hsl(142 71% 45%);
184
+ box-shadow: 0 0 0 2px hsl(142 71% 45% / 0.2);
75
185
  }
76
186
 
77
- .input-container .send-button {
78
- background: #c52c2cba;
79
- color: white;
187
+ /* ---------- Icon button (header close, attach) ---------- */
188
+ .thk-icon-btn {
189
+ background: transparent;
80
190
  border: none;
81
- border-radius: 50%;
191
+ border-radius: 8px;
82
192
  width: 32px;
83
193
  height: 32px;
84
194
  display: flex;
85
195
  align-items: center;
86
196
  justify-content: center;
87
197
  cursor: pointer;
88
- transition: background-color 0.2s;
89
- flex-shrink: 0;
198
+ color: var(--thk-muted-fg);
90
199
  padding: 0;
200
+ transition:
201
+ background-color 0.15s,
202
+ color 0.15s;
91
203
  }
92
-
93
- .input-container .send-button:hover:not(:disabled) {
94
- background-color: #c52c2c;
204
+ .thk-icon-btn:hover:not(:disabled) {
205
+ background: var(--thk-muted);
206
+ color: var(--thk-fg);
95
207
  }
96
-
97
- .input-container .send-button:disabled {
98
- opacity: 0.5;
208
+ .thk-icon-btn:focus-visible {
209
+ outline: none;
210
+ box-shadow: 0 0 0 2px var(--thk-ring);
211
+ }
212
+ .thk-icon-btn:disabled {
213
+ opacity: 0.4;
99
214
  cursor: not-allowed;
100
215
  }
101
216
 
102
- .messages-container {
217
+ /* ---------- RAG pill ---------- */
218
+ .thk-rag-pill {
219
+ display: flex;
220
+ align-items: center;
221
+ gap: 8px;
222
+ margin: 10px 14px 0;
223
+ padding: 8px 10px;
224
+ background: var(--thk-muted);
225
+ border: 1px solid var(--thk-border);
226
+ border-radius: 10px;
227
+ font-size: 12px;
228
+ color: var(--thk-fg);
229
+ }
230
+ .thk-rag-name {
231
+ flex: 1;
232
+ white-space: nowrap;
233
+ overflow: hidden;
234
+ text-overflow: ellipsis;
235
+ font-weight: 500;
236
+ }
237
+ .thk-rag-remove {
238
+ background: transparent;
239
+ border: none;
240
+ color: var(--thk-muted-fg);
241
+ cursor: pointer;
242
+ display: flex;
243
+ align-items: center;
244
+ justify-content: center;
245
+ width: 22px;
246
+ height: 22px;
247
+ border-radius: 6px;
248
+ padding: 0;
249
+ flex-shrink: 0;
250
+ transition: all 0.15s;
251
+ }
252
+ .thk-rag-remove:hover {
253
+ background: var(--thk-bg);
254
+ color: var(--thk-fg);
255
+ }
256
+
257
+ /* ---------- Messages ---------- */
258
+ .thk-messages {
103
259
  flex: 1;
104
260
  overflow-y: auto;
105
- margin-bottom: 10px;
261
+ padding: 16px 14px;
106
262
  display: flex;
107
263
  flex-direction: column;
108
- gap: 12px;
109
- padding-right: 4px;
264
+ gap: 10px;
110
265
  }
111
-
112
- .messages-container::-webkit-scrollbar {
113
- width: 4px;
266
+ .thk-messages::-webkit-scrollbar {
267
+ width: 6px;
114
268
  }
115
-
116
- .messages-container::-webkit-scrollbar-track {
269
+ .thk-messages::-webkit-scrollbar-track {
117
270
  background: transparent;
118
271
  }
119
-
120
- .messages-container::-webkit-scrollbar-thumb {
121
- background: #e9ecef;
272
+ .thk-messages::-webkit-scrollbar-thumb {
273
+ background: var(--thk-border);
122
274
  border-radius: 10px;
123
275
  }
276
+ .thk-messages::-webkit-scrollbar-thumb:hover {
277
+ background: var(--thk-border-strong);
278
+ }
124
279
 
125
- .message {
280
+ .thk-msg-row {
281
+ display: flex;
282
+ animation: thk-msg-in 0.22s cubic-bezier(0.16, 1, 0.3, 1);
283
+ }
284
+ .thk-msg-row-user {
285
+ justify-content: flex-end;
286
+ }
287
+ .thk-msg-row-ai {
288
+ justify-content: flex-start;
289
+ }
290
+
291
+ @keyframes thk-msg-in {
292
+ from {
293
+ opacity: 0;
294
+ transform: translateY(4px);
295
+ }
296
+ to {
297
+ opacity: 1;
298
+ transform: translateY(0);
299
+ }
300
+ }
301
+
302
+ .thk-msg {
126
303
  max-width: 85%;
127
- padding: 10px 14px;
128
- border-radius: 18px;
304
+ padding: 9px 13px;
305
+ border-radius: 14px;
129
306
  font-size: 14px;
130
- line-height: 1.4;
307
+ line-height: 1.5;
131
308
  word-wrap: break-word;
132
309
  }
133
-
134
- .message.user {
135
- align-self: flex-end;
136
- background-color: #c52c2cba;
137
- color: white;
310
+ .thk-msg-user {
311
+ background: var(--thk-primary);
312
+ color: var(--thk-primary-fg);
138
313
  border-bottom-right-radius: 4px;
139
314
  }
140
-
141
- .message.ai {
142
- align-self: flex-start;
143
- background-color: #f1f3f5;
144
- color: #212529;
315
+ .thk-msg-ai {
316
+ background: var(--thk-muted);
317
+ color: var(--thk-fg);
145
318
  border-bottom-left-radius: 4px;
146
319
  }
320
+ .thk-msg b {
321
+ font-weight: 600;
322
+ }
323
+ .thk-msg a {
324
+ color: inherit;
325
+ text-decoration: underline;
326
+ text-underline-offset: 2px;
327
+ }
147
328
 
148
- .message.loading {
149
- font-style: italic;
150
- color: #868e96;
329
+ /* Typing dots */
330
+ .thk-typing {
331
+ display: inline-flex;
332
+ align-items: center;
333
+ gap: 4px;
334
+ padding: 12px 14px;
335
+ }
336
+ .thk-typing span {
337
+ width: 6px;
338
+ height: 6px;
339
+ border-radius: 50%;
340
+ background: var(--thk-muted-fg);
341
+ animation: thk-bounce 1.2s infinite ease-in-out;
342
+ }
343
+ .thk-typing span:nth-child(2) {
344
+ animation-delay: 0.15s;
345
+ }
346
+ .thk-typing span:nth-child(3) {
347
+ animation-delay: 0.3s;
348
+ }
349
+ @keyframes thk-bounce {
350
+ 0%,
351
+ 60%,
352
+ 100% {
353
+ transform: translateY(0);
354
+ opacity: 0.4;
355
+ }
356
+ 30% {
357
+ transform: translateY(-4px);
358
+ opacity: 1;
359
+ }
151
360
  }
152
361
 
153
- .stretch-icon {
154
- position: absolute;
155
- top: 0;
156
- left: 0;
157
- width: 40px;
158
- height: 40px;
159
- cursor: nwse-resize;
160
- z-index: 10;
161
- touch-action: none;
362
+ /* Suggestions */
363
+ .thk-suggestions {
162
364
  display: flex;
365
+ flex-direction: column;
366
+ gap: 6px;
367
+ margin-top: 4px;
163
368
  align-items: flex-start;
164
- justify-content: flex-start;
369
+ }
370
+ .thk-suggestion {
371
+ background: var(--thk-bg);
372
+ border: 1px solid var(--thk-border);
373
+ border-radius: 999px;
374
+ padding: 7px 14px;
375
+ font-size: 13px;
376
+ color: var(--thk-fg);
377
+ cursor: pointer;
378
+ text-align: left;
379
+ font-family: inherit;
380
+ transition: all 0.15s;
381
+ }
382
+ .thk-suggestion:hover {
383
+ background: var(--thk-muted);
384
+ border-color: var(--thk-border-strong);
385
+ }
386
+
387
+ /* ---------- Input area ---------- */
388
+ .thk-input {
389
+ display: flex;
390
+ align-items: flex-end;
391
+ gap: 4px;
392
+ padding: 10px 12px;
393
+ border-top: 1px solid var(--thk-border);
394
+ background: var(--thk-bg);
395
+ flex-shrink: 0;
396
+ }
397
+ .thk-input:focus-within {
398
+ background: var(--thk-bg);
399
+ }
400
+ .thk-input textarea {
401
+ flex: 1;
402
+ border: 1px solid var(--thk-border);
403
+ border-radius: 10px;
404
+ background: var(--thk-bg);
405
+ padding: 9px 12px;
406
+ font-size: 14px;
407
+ line-height: 1.4;
408
+ outline: none;
409
+ resize: none;
410
+ font-family: inherit;
411
+ color: var(--thk-fg);
412
+ overflow-y: auto;
413
+ max-height: 120px;
165
414
  transition:
166
- opacity 0.2s ease,
167
- transform 0.2s ease;
168
- opacity: 0.3;
169
- margin: -10px 0 0 -10px;
415
+ border-color 0.15s,
416
+ box-shadow 0.15s;
417
+ }
418
+ .thk-input textarea::placeholder {
419
+ color: var(--thk-muted-fg);
420
+ }
421
+ .thk-input textarea:focus {
422
+ border-color: var(--thk-border-strong);
423
+ box-shadow: 0 0 0 3px var(--thk-ring);
424
+ }
425
+ .thk-input textarea:disabled {
426
+ opacity: 0.6;
427
+ cursor: not-allowed;
170
428
  }
171
429
 
172
- .stretch-icon:hover {
173
- opacity: 1;
174
- transform: scale(1.1);
430
+ .thk-send {
431
+ background: var(--thk-primary);
432
+ color: var(--thk-primary-fg);
433
+ border: none;
434
+ border-radius: 10px;
435
+ width: 36px;
436
+ height: 36px;
437
+ display: flex;
438
+ align-items: center;
439
+ justify-content: center;
440
+ cursor: pointer;
441
+ flex-shrink: 0;
442
+ padding: 0;
443
+ transition:
444
+ background-color 0.15s,
445
+ transform 0.1s;
446
+ }
447
+ .thk-send:hover:not(:disabled) {
448
+ background: hsl(240 5.9% 20%);
449
+ }
450
+ .thk-send:active:not(:disabled) {
451
+ transform: scale(0.96);
452
+ }
453
+ .thk-send:focus-visible {
454
+ outline: none;
455
+ box-shadow: 0 0 0 3px var(--thk-ring);
456
+ }
457
+ .thk-send:disabled {
458
+ opacity: 0.4;
459
+ cursor: not-allowed;
175
460
  }
176
461
 
177
- .stretch-icon::before {
178
- content: "";
179
- width: 28px;
180
- height: 28px;
181
- border-top: 3px solid #c52c2cba;
182
- border-left: 3px solid #c52c2cba;
183
- border-top-left-radius: 6px;
184
- position: absolute;
185
- top: 6px;
186
- left: 6px;
462
+ .thk-attach {
463
+ width: 36px;
464
+ height: 36px;
465
+ }
466
+
467
+ /* ---------- Mobile ---------- */
468
+ @media (max-width: 480px) {
469
+ .thk-root {
470
+ bottom: 16px;
471
+ right: 16px;
472
+ }
473
+ .thk-popup {
474
+ width: calc(100vw - 32px) !important;
475
+ max-width: 100vw;
476
+ }
187
477
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/components/chat-popup.css"],"sourcesContent":[".chatbot-icon {\n width: 50px;\n height: 50px;\n background-color: transparent;\n cursor: pointer;\n}\n\n.chatbot-container {\n z-index: 1000;\n position: fixed;\n bottom: 20px;\n right: 20px;\n display: flex;\n flex-direction: column;\n align-items: flex-end;\n}\n\n.chatbot-popup {\n margin-bottom: 20px;\n display: flex;\n flex-direction: column;\n background-color: #ffffff;\n padding: 10px;\n border-radius: 16px;\n box-shadow:\n rgba(50, 50, 93, 0.25) 0px 50px 100px -20px,\n rgba(0, 0, 0, 0.3) 0px 30px 60px -30px;\n position: relative;\n overflow: hidden;\n}\n\n.chat-popup-wrapper {\n display: flex;\n flex-direction: column;\n position: relative;\n transition:\n width 0.05s ease-out,\n height 0.05s ease-out;\n}\n\n.chat-popup-wrapper.resizing {\n user-select: none;\n transition: none;\n}\n\n.input-container {\n margin-top: auto;\n width: 100%;\n display: flex;\n align-items: flex-end;\n gap: 10px;\n background-color: #f8f9fa;\n padding: 4px 6px;\n border-radius: 20px;\n border: 1px solid #e9ecef;\n box-sizing: border-box;\n}\n\n.input-container textarea {\n flex: 1;\n border: none;\n background: transparent;\n padding: 6px 8px;\n font-size: 14px;\n line-height: 20px;\n outline: none;\n resize: none;\n font-family: inherit;\n overflow-y: auto;\n max-height: 120px;\n}\n\n.input-container textarea::placeholder {\n color: #adb5bd;\n}\n\n.input-container .send-button {\n background: #c52c2cba;\n color: white;\n border: none;\n border-radius: 50%;\n width: 32px;\n height: 32px;\n display: flex;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n transition: background-color 0.2s;\n flex-shrink: 0;\n padding: 0;\n}\n\n.input-container .send-button:hover:not(:disabled) {\n background-color: #c52c2c;\n}\n\n.input-container .send-button:disabled {\n opacity: 0.5;\n cursor: not-allowed;\n}\n\n.messages-container {\n flex: 1;\n overflow-y: auto;\n margin-bottom: 10px;\n display: flex;\n flex-direction: column;\n gap: 12px;\n padding-right: 4px;\n}\n\n.messages-container::-webkit-scrollbar {\n width: 4px;\n}\n\n.messages-container::-webkit-scrollbar-track {\n background: transparent;\n}\n\n.messages-container::-webkit-scrollbar-thumb {\n background: #e9ecef;\n border-radius: 10px;\n}\n\n.message {\n max-width: 85%;\n padding: 10px 14px;\n border-radius: 18px;\n font-size: 14px;\n line-height: 1.4;\n word-wrap: break-word;\n}\n\n.message.user {\n align-self: flex-end;\n background-color: #c52c2cba;\n color: white;\n border-bottom-right-radius: 4px;\n}\n\n.message.ai {\n align-self: flex-start;\n background-color: #f1f3f5;\n color: #212529;\n border-bottom-left-radius: 4px;\n}\n\n.message.loading {\n font-style: italic;\n color: #868e96;\n}\n\n.stretch-icon {\n position: absolute;\n top: 0;\n left: 0;\n width: 40px;\n height: 40px;\n cursor: nwse-resize;\n z-index: 10;\n touch-action: none;\n display: flex;\n align-items: flex-start;\n justify-content: flex-start;\n transition:\n opacity 0.2s ease,\n transform 0.2s ease;\n opacity: 0.3;\n margin: -10px 0 0 -10px;\n}\n\n.stretch-icon:hover {\n opacity: 1;\n transform: scale(1.1);\n}\n\n.stretch-icon::before {\n content: \"\";\n width: 28px;\n height: 28px;\n border-top: 3px solid #c52c2cba;\n border-left: 3px solid #c52c2cba;\n border-top-left-radius: 6px;\n position: absolute;\n top: 6px;\n left: 6px;\n}\n"],"mappings":"AAAA,CAAC,aACC,MAAO,KACP,OAAQ,KACR,iBAAkB,YAClB,OAAQ,OACV,CAEA,CAAC,kBACC,QAAS,KACT,SAAU,MACV,OAAQ,KACR,MAAO,KACP,QAAS,KACT,eAAgB,OAChB,YAAa,QACf,CAEA,CAAC,cACC,cAAe,KACf,QAAS,KACT,eAAgB,OAChB,iBAAkB,KArBpB,QAsBW,KAtBX,cAuBiB,KACf,WACE,UAAuB,EAAI,KAAK,MAAM,KAAK,CAC3C,UAAmB,EAAI,KAAK,KAAK,MACnC,SAAU,SACV,SAAU,MACZ,CAEA,CAAC,mBACC,QAAS,KACT,eAAgB,OAChB,SAAU,SACV,WACE,MAAM,KAAM,QAAQ,CACpB,OAAO,KAAM,QACjB,CAEA,CATC,kBASkB,CAAC,SAClB,YAAa,KACb,WAAY,IACd,CAEA,CAAC,gBACC,WAAY,KACZ,MAAO,KACP,QAAS,KACT,YAAa,SACb,IAAK,KACL,iBAAkB,QAnDpB,QAoDW,IAAI,IApDf,cAqDiB,KACf,OAAQ,IAAI,MAAM,QAClB,WAAY,UACd,CAEA,CAbC,gBAagB,SACf,KAAM,EACN,OAAQ,KACR,WAAY,YA7Dd,QA8DW,IAAI,IACb,UAAW,KACX,YAAa,KACb,QAAS,KACT,OAAQ,KACR,YAAa,QACb,WAAY,KACZ,WAAY,KACd,CAEA,CA3BC,gBA2BgB,QAAQ,cACvB,MAAO,OACT,CAEA,CA/BC,gBA+BgB,CAAC,YAChB,WAAY,UACZ,MAAO,KACP,OAAQ,KA/EV,cAgFiB,IACf,MAAO,KACP,OAAQ,KACR,QAAS,KACT,YAAa,OACb,gBAAiB,OACjB,OAAQ,QACR,WAAY,iBAAiB,IAC7B,YAAa,EAxFf,QAyFW,CACX,CAEA,CA/CC,gBA+CgB,CAhBC,WAgBW,MAAM,KAAK,WACtC,iBAAkB,OACpB,CAEA,CAnDC,gBAmDgB,CApBC,WAoBW,UAC3B,QAAS,GACT,OAAQ,WACV,CAEA,CAAC,mBACC,KAAM,EACN,WAAY,KACZ,cAAe,KACf,QAAS,KACT,eAAgB,OAChB,IAAK,KACL,cAAe,GACjB,CAEA,CAVC,kBAUkB,oBACjB,MAAO,GACT,CAEA,CAdC,kBAckB,0BACjB,WAAY,WACd,CAEA,CAlBC,kBAkBkB,0BACjB,WAAY,QAxHd,cAyHiB,IACjB,CAEA,CAAC,QACC,UAAW,IA7Hb,QA8HW,KAAK,KA9HhB,cA+HiB,KACf,UAAW,KACX,YAAa,IACb,UAAW,UACb,CAEA,CATC,OASO,CAAC,KACP,WAAY,SACZ,iBAAkB,UAClB,MAAO,KACP,2BAA4B,GAC9B,CAEA,CAhBC,OAgBO,CAAC,GACP,WAAY,WACZ,iBAAkB,QAClB,MAAO,QACP,0BAA2B,GAC7B,CAEA,CAvBC,OAuBO,CAAC,QACP,WAAY,OACZ,MAAO,OACT,CAEA,CAAC,aACC,SAAU,SACV,IAAK,EACL,KAAM,EACN,MAAO,KACP,OAAQ,KACR,OAAQ,YACR,QAAS,GACT,aAAc,KACd,QAAS,KACT,YAAa,WACb,gBAAiB,WACjB,WACE,QAAQ,IAAK,IAAI,CACjB,UAAU,IAAK,KACjB,QAAS,GAvKX,OAwKU,MAAM,EAAE,EAAE,KACpB,CAEA,CAnBC,YAmBY,OACX,QAAS,EACT,UAAW,MAAM,IACnB,CAEA,CAxBC,YAwBY,QACX,QAAS,GACT,MAAO,KACP,OAAQ,KACR,WAAY,IAAI,MAAM,UACtB,YAAa,IAAI,MAAM,UACvB,uBAAwB,IACxB,SAAU,SACV,IAAK,IACL,KAAM,GACR","names":[]}
1
+ {"version":3,"sources":["../src/components/chat-popup.css"],"sourcesContent":["/* Thikana chat-popup — shadcn-inspired vanilla CSS */\n\n.thk-root {\n --thk-bg: #ffffff;\n --thk-fg: hsl(240 10% 3.9%);\n --thk-muted: hsl(240 4.8% 95.9%);\n --thk-muted-fg: hsl(240 3.8% 46.1%);\n --thk-border: hsl(240 5.9% 90%);\n --thk-border-strong: hsl(240 5.9% 84%);\n --thk-primary: hsl(240 5.9% 10%);\n --thk-primary-fg: hsl(0 0% 98%);\n --thk-accent: hsl(0 70% 50%);\n --thk-ring: hsl(240 5% 64.9% / 0.5);\n --thk-radius: 14px;\n\n z-index: 1000;\n position: fixed;\n bottom: 20px;\n right: 20px;\n display: flex;\n flex-direction: column;\n align-items: flex-end;\n gap: 14px;\n font-family:\n ui-sans-serif,\n system-ui,\n -apple-system,\n \"Segoe UI\",\n Roboto,\n \"Helvetica Neue\",\n Arial,\n sans-serif;\n color: var(--thk-fg);\n}\n\n/* ---------- Bubble ---------- */\n.thk-bubble {\n width: 56px;\n height: 56px;\n border-radius: 50%;\n border: 1px solid var(--thk-border);\n background: var(--thk-bg);\n cursor: pointer;\n padding: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n box-shadow:\n 0 4px 12px rgba(0, 0, 0, 0.08),\n 0 2px 4px rgba(0, 0, 0, 0.04);\n transition:\n transform 0.18s ease,\n box-shadow 0.18s ease;\n outline: none;\n}\n.thk-bubble:hover {\n transform: translateY(-2px);\n box-shadow:\n 0 8px 20px rgba(0, 0, 0, 0.12),\n 0 3px 6px rgba(0, 0, 0, 0.06);\n}\n.thk-bubble:focus-visible {\n box-shadow:\n 0 0 0 3px var(--thk-ring),\n 0 4px 12px rgba(0, 0, 0, 0.08);\n}\n.thk-bubble img {\n width: 28px;\n height: 28px;\n pointer-events: none;\n}\n\n/* ---------- Popup ---------- */\n.thk-popup {\n position: relative;\n background: var(--thk-bg);\n border: 1px solid var(--thk-border);\n border-radius: var(--thk-radius);\n display: flex;\n flex-direction: column;\n overflow: hidden;\n box-shadow:\n 0 24px 48px -12px rgba(0, 0, 0, 0.18),\n 0 12px 24px -8px rgba(0, 0, 0, 0.08);\n transform-origin: bottom right;\n animation: thk-pop-in 0.22s cubic-bezier(0.16, 1, 0.3, 1);\n transition:\n width 0.05s ease-out,\n height 0.05s ease-out;\n}\n.thk-popup.thk-resizing {\n user-select: none;\n transition: none;\n}\n\n@keyframes thk-pop-in {\n from {\n opacity: 0;\n transform: translateY(8px) scale(0.98);\n }\n to {\n opacity: 1;\n transform: translateY(0) scale(1);\n }\n}\n\n/* ---------- Resize handle ---------- */\n.thk-resize-handle {\n position: absolute;\n top: 0;\n left: 0;\n width: 18px;\n height: 18px;\n cursor: nwse-resize;\n z-index: 10;\n touch-action: none;\n opacity: 0;\n transition: opacity 0.2s;\n}\n.thk-popup:hover .thk-resize-handle {\n opacity: 1;\n}\n.thk-resize-handle::before {\n content: \"\";\n position: absolute;\n top: 6px;\n left: 6px;\n width: 8px;\n height: 8px;\n border-top: 2px solid var(--thk-border-strong);\n border-left: 2px solid var(--thk-border-strong);\n border-top-left-radius: 2px;\n}\n\n/* ---------- Header ---------- */\n.thk-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 12px 14px;\n border-bottom: 1px solid var(--thk-border);\n background: var(--thk-bg);\n flex-shrink: 0;\n}\n.thk-header-left {\n display: flex;\n align-items: center;\n gap: 10px;\n}\n.thk-avatar {\n width: 34px;\n height: 34px;\n border-radius: 50%;\n background: var(--thk-primary);\n color: var(--thk-primary-fg);\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n}\n.thk-header-text {\n display: flex;\n flex-direction: column;\n line-height: 1.2;\n}\n.thk-name {\n font-size: 14px;\n font-weight: 600;\n color: var(--thk-fg);\n}\n.thk-status {\n font-size: 11px;\n color: var(--thk-muted-fg);\n display: flex;\n align-items: center;\n gap: 5px;\n margin-top: 2px;\n}\n.thk-status-dot {\n width: 6px;\n height: 6px;\n border-radius: 50%;\n background: hsl(142 71% 45%);\n box-shadow: 0 0 0 2px hsl(142 71% 45% / 0.2);\n}\n\n/* ---------- Icon button (header close, attach) ---------- */\n.thk-icon-btn {\n background: transparent;\n border: none;\n border-radius: 8px;\n width: 32px;\n height: 32px;\n display: flex;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n color: var(--thk-muted-fg);\n padding: 0;\n transition:\n background-color 0.15s,\n color 0.15s;\n}\n.thk-icon-btn:hover:not(:disabled) {\n background: var(--thk-muted);\n color: var(--thk-fg);\n}\n.thk-icon-btn:focus-visible {\n outline: none;\n box-shadow: 0 0 0 2px var(--thk-ring);\n}\n.thk-icon-btn:disabled {\n opacity: 0.4;\n cursor: not-allowed;\n}\n\n/* ---------- RAG pill ---------- */\n.thk-rag-pill {\n display: flex;\n align-items: center;\n gap: 8px;\n margin: 10px 14px 0;\n padding: 8px 10px;\n background: var(--thk-muted);\n border: 1px solid var(--thk-border);\n border-radius: 10px;\n font-size: 12px;\n color: var(--thk-fg);\n}\n.thk-rag-name {\n flex: 1;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n font-weight: 500;\n}\n.thk-rag-remove {\n background: transparent;\n border: none;\n color: var(--thk-muted-fg);\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: center;\n width: 22px;\n height: 22px;\n border-radius: 6px;\n padding: 0;\n flex-shrink: 0;\n transition: all 0.15s;\n}\n.thk-rag-remove:hover {\n background: var(--thk-bg);\n color: var(--thk-fg);\n}\n\n/* ---------- Messages ---------- */\n.thk-messages {\n flex: 1;\n overflow-y: auto;\n padding: 16px 14px;\n display: flex;\n flex-direction: column;\n gap: 10px;\n}\n.thk-messages::-webkit-scrollbar {\n width: 6px;\n}\n.thk-messages::-webkit-scrollbar-track {\n background: transparent;\n}\n.thk-messages::-webkit-scrollbar-thumb {\n background: var(--thk-border);\n border-radius: 10px;\n}\n.thk-messages::-webkit-scrollbar-thumb:hover {\n background: var(--thk-border-strong);\n}\n\n.thk-msg-row {\n display: flex;\n animation: thk-msg-in 0.22s cubic-bezier(0.16, 1, 0.3, 1);\n}\n.thk-msg-row-user {\n justify-content: flex-end;\n}\n.thk-msg-row-ai {\n justify-content: flex-start;\n}\n\n@keyframes thk-msg-in {\n from {\n opacity: 0;\n transform: translateY(4px);\n }\n to {\n opacity: 1;\n transform: translateY(0);\n }\n}\n\n.thk-msg {\n max-width: 85%;\n padding: 9px 13px;\n border-radius: 14px;\n font-size: 14px;\n line-height: 1.5;\n word-wrap: break-word;\n}\n.thk-msg-user {\n background: var(--thk-primary);\n color: var(--thk-primary-fg);\n border-bottom-right-radius: 4px;\n}\n.thk-msg-ai {\n background: var(--thk-muted);\n color: var(--thk-fg);\n border-bottom-left-radius: 4px;\n}\n.thk-msg b {\n font-weight: 600;\n}\n.thk-msg a {\n color: inherit;\n text-decoration: underline;\n text-underline-offset: 2px;\n}\n\n/* Typing dots */\n.thk-typing {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n padding: 12px 14px;\n}\n.thk-typing span {\n width: 6px;\n height: 6px;\n border-radius: 50%;\n background: var(--thk-muted-fg);\n animation: thk-bounce 1.2s infinite ease-in-out;\n}\n.thk-typing span:nth-child(2) {\n animation-delay: 0.15s;\n}\n.thk-typing span:nth-child(3) {\n animation-delay: 0.3s;\n}\n@keyframes thk-bounce {\n 0%,\n 60%,\n 100% {\n transform: translateY(0);\n opacity: 0.4;\n }\n 30% {\n transform: translateY(-4px);\n opacity: 1;\n }\n}\n\n/* Suggestions */\n.thk-suggestions {\n display: flex;\n flex-direction: column;\n gap: 6px;\n margin-top: 4px;\n align-items: flex-start;\n}\n.thk-suggestion {\n background: var(--thk-bg);\n border: 1px solid var(--thk-border);\n border-radius: 999px;\n padding: 7px 14px;\n font-size: 13px;\n color: var(--thk-fg);\n cursor: pointer;\n text-align: left;\n font-family: inherit;\n transition: all 0.15s;\n}\n.thk-suggestion:hover {\n background: var(--thk-muted);\n border-color: var(--thk-border-strong);\n}\n\n/* ---------- Input area ---------- */\n.thk-input {\n display: flex;\n align-items: flex-end;\n gap: 4px;\n padding: 10px 12px;\n border-top: 1px solid var(--thk-border);\n background: var(--thk-bg);\n flex-shrink: 0;\n}\n.thk-input:focus-within {\n background: var(--thk-bg);\n}\n.thk-input textarea {\n flex: 1;\n border: 1px solid var(--thk-border);\n border-radius: 10px;\n background: var(--thk-bg);\n padding: 9px 12px;\n font-size: 14px;\n line-height: 1.4;\n outline: none;\n resize: none;\n font-family: inherit;\n color: var(--thk-fg);\n overflow-y: auto;\n max-height: 120px;\n transition:\n border-color 0.15s,\n box-shadow 0.15s;\n}\n.thk-input textarea::placeholder {\n color: var(--thk-muted-fg);\n}\n.thk-input textarea:focus {\n border-color: var(--thk-border-strong);\n box-shadow: 0 0 0 3px var(--thk-ring);\n}\n.thk-input textarea:disabled {\n opacity: 0.6;\n cursor: not-allowed;\n}\n\n.thk-send {\n background: var(--thk-primary);\n color: var(--thk-primary-fg);\n border: none;\n border-radius: 10px;\n width: 36px;\n height: 36px;\n display: flex;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n flex-shrink: 0;\n padding: 0;\n transition:\n background-color 0.15s,\n transform 0.1s;\n}\n.thk-send:hover:not(:disabled) {\n background: hsl(240 5.9% 20%);\n}\n.thk-send:active:not(:disabled) {\n transform: scale(0.96);\n}\n.thk-send:focus-visible {\n outline: none;\n box-shadow: 0 0 0 3px var(--thk-ring);\n}\n.thk-send:disabled {\n opacity: 0.4;\n cursor: not-allowed;\n}\n\n.thk-attach {\n width: 36px;\n height: 36px;\n}\n\n/* ---------- Mobile ---------- */\n@media (max-width: 480px) {\n .thk-root {\n bottom: 16px;\n right: 16px;\n }\n .thk-popup {\n width: calc(100vw - 32px) !important;\n max-width: 100vw;\n }\n}\n"],"mappings":"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","names":[]}
package/dist/index.d.mts CHANGED
@@ -5,16 +5,14 @@ type Message = {
5
5
  content: string;
6
6
  };
7
7
  interface ChatPopupProps {
8
- systemPrompt?: string;
9
- feedData?: any;
10
8
  apiUrl?: string;
11
9
  assistantName?: string;
12
10
  initialMessage?: string;
13
- model?: string;
14
- messages?: Message[];
11
+ enablePdfUpload?: boolean;
12
+ suggestions?: string[];
15
13
  onMessageSend?: (message: Message) => void;
16
14
  onResponseReceive?: (response: string) => void;
17
15
  }
18
- declare const ChatPopup: ({ systemPrompt, feedData: externalfeedData, apiUrl, assistantName, initialMessage, model, onMessageSend, onResponseReceive, }: ChatPopupProps) => react_jsx_runtime.JSX.Element;
16
+ declare const ChatPopup: ({ apiUrl, assistantName, initialMessage, enablePdfUpload, suggestions, onMessageSend, onResponseReceive, }: ChatPopupProps) => react_jsx_runtime.JSX.Element;
19
17
 
20
18
  export { ChatPopup, type ChatPopupProps };
package/dist/index.d.ts CHANGED
@@ -5,16 +5,14 @@ type Message = {
5
5
  content: string;
6
6
  };
7
7
  interface ChatPopupProps {
8
- systemPrompt?: string;
9
- feedData?: any;
10
8
  apiUrl?: string;
11
9
  assistantName?: string;
12
10
  initialMessage?: string;
13
- model?: string;
14
- messages?: Message[];
11
+ enablePdfUpload?: boolean;
12
+ suggestions?: string[];
15
13
  onMessageSend?: (message: Message) => void;
16
14
  onResponseReceive?: (response: string) => void;
17
15
  }
18
- declare const ChatPopup: ({ systemPrompt, feedData: externalfeedData, apiUrl, assistantName, initialMessage, model, onMessageSend, onResponseReceive, }: ChatPopupProps) => react_jsx_runtime.JSX.Element;
16
+ declare const ChatPopup: ({ apiUrl, assistantName, initialMessage, enablePdfUpload, suggestions, onMessageSend, onResponseReceive, }: ChatPopupProps) => react_jsx_runtime.JSX.Element;
19
17
 
20
18
  export { ChatPopup, type ChatPopupProps };