@akropolys/kiku 1.6.10 → 1.7.1
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.js +110 -172
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +110 -172
- package/dist/index.mjs.map +1 -1
- package/dist/styles.css +214 -282
- package/dist/styles.css.map +1 -1
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
|
@@ -222,8 +222,25 @@ var parseInline = (text, keyPrefix) => {
|
|
|
222
222
|
return part;
|
|
223
223
|
});
|
|
224
224
|
};
|
|
225
|
-
function
|
|
225
|
+
function isTableLine(line, inTable) {
|
|
226
|
+
const t = line.trim();
|
|
227
|
+
if (inTable) return t.includes("|");
|
|
228
|
+
return t.startsWith("|");
|
|
229
|
+
}
|
|
230
|
+
function splitTableCells(rowLine) {
|
|
231
|
+
let t = rowLine.trim();
|
|
232
|
+
if (t.startsWith("|")) t = t.slice(1);
|
|
233
|
+
if (t.endsWith("|")) t = t.slice(0, -1);
|
|
234
|
+
return t.split("|").map((c) => c.trim());
|
|
235
|
+
}
|
|
236
|
+
function renderMarkdown(content, streaming = false) {
|
|
226
237
|
const lines = content.split("\n");
|
|
238
|
+
if (streaming && lines.length > 0) {
|
|
239
|
+
const last = lines[lines.length - 1];
|
|
240
|
+
if (last.trim().startsWith("|") && !last.trim().endsWith("|")) {
|
|
241
|
+
lines.pop();
|
|
242
|
+
}
|
|
243
|
+
}
|
|
227
244
|
const elements = [];
|
|
228
245
|
let i = 0;
|
|
229
246
|
while (i < lines.length) {
|
|
@@ -275,17 +292,27 @@ function renderMarkdown(content) {
|
|
|
275
292
|
elements.push(/* @__PURE__ */ jsx2("ul", { className: "hsk-markdown-list", children: listItems }, `ul-${key}`));
|
|
276
293
|
continue;
|
|
277
294
|
}
|
|
278
|
-
if (line.
|
|
295
|
+
if (line.match(/^\d+[.)]\s+/)) {
|
|
296
|
+
const listItems = [];
|
|
297
|
+
while (i < lines.length && lines[i].match(/^\d+[.)]\s+/)) {
|
|
298
|
+
const itemText = lines[i].replace(/^\d+[.)]\s+/, "");
|
|
299
|
+
listItems.push(/* @__PURE__ */ jsx2("li", { children: parseInline(itemText, `li-${i}`) }, `li-${i}`));
|
|
300
|
+
i++;
|
|
301
|
+
}
|
|
302
|
+
elements.push(/* @__PURE__ */ jsx2("ol", { className: "hsk-markdown-list", children: listItems }, `ol-${key}`));
|
|
303
|
+
continue;
|
|
304
|
+
}
|
|
305
|
+
if (isTableLine(line, false)) {
|
|
279
306
|
const tableRows = [];
|
|
280
307
|
let isHeader = true;
|
|
281
|
-
while (i < lines.length && lines[i]
|
|
308
|
+
while (i < lines.length && isTableLine(lines[i], true)) {
|
|
282
309
|
const rowLine = lines[i].trim();
|
|
283
|
-
if (rowLine.match(
|
|
310
|
+
if (rowLine.match(/^\|?[-:| ]+\|?$/) && rowLine.includes("-")) {
|
|
284
311
|
i++;
|
|
285
312
|
isHeader = false;
|
|
286
313
|
continue;
|
|
287
314
|
}
|
|
288
|
-
const cells = rowLine
|
|
315
|
+
const cells = splitTableCells(rowLine);
|
|
289
316
|
const Tag = isHeader ? "th" : "td";
|
|
290
317
|
tableRows.push(
|
|
291
318
|
/* @__PURE__ */ jsx2("tr", { children: cells.map((cell, cIdx) => /* @__PURE__ */ jsx2(Tag, { children: parseInline(cell, `td-${i}-${cIdx}`) }, `td-${i}-${cIdx}`)) }, `tr-${i}`)
|
|
@@ -471,7 +498,7 @@ function SourceCard({
|
|
|
471
498
|
);
|
|
472
499
|
}
|
|
473
500
|
function ChatWidget({
|
|
474
|
-
title = "
|
|
501
|
+
title = "kiku",
|
|
475
502
|
placeholder = "Ask about anything in our store\u2026",
|
|
476
503
|
emptyStateText = "Ask me anything about our products",
|
|
477
504
|
emptyStateSuggestions = '"Find me headphones under KSh 5,000" \xB7 "Gift ideas"',
|
|
@@ -1082,77 +1109,22 @@ function ComparisonMatrix({ sources, defaultCurrency = "KES", displayConfig }) {
|
|
|
1082
1109
|
|
|
1083
1110
|
// src/components/KikuButton.tsx
|
|
1084
1111
|
import { Fragment as Fragment3, jsx as jsx7, jsxs as jsxs6 } from "react/jsx-runtime";
|
|
1085
|
-
var
|
|
1112
|
+
var KikuIcon = ({ className, size = 18 }) => /* @__PURE__ */ jsx7(
|
|
1086
1113
|
"svg",
|
|
1087
1114
|
{
|
|
1088
|
-
className: cn("hsk-brand-
|
|
1115
|
+
className: cn("hsk-brand-mark", className),
|
|
1089
1116
|
width: size,
|
|
1090
1117
|
height: size,
|
|
1091
|
-
viewBox: "0 0
|
|
1092
|
-
fill: "none",
|
|
1118
|
+
viewBox: "0 0 100 100",
|
|
1093
1119
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1094
|
-
"aria-label": "
|
|
1095
|
-
children: [
|
|
1096
|
-
/* @__PURE__ */ jsx7(
|
|
1097
|
-
|
|
1098
|
-
|
|
1099
|
-
d: "M14.5 4.5 L6.5 25",
|
|
1100
|
-
stroke: "currentColor",
|
|
1101
|
-
strokeWidth: "2.2",
|
|
1102
|
-
strokeLinecap: "round"
|
|
1103
|
-
}
|
|
1104
|
-
),
|
|
1105
|
-
/* @__PURE__ */ jsx7(
|
|
1106
|
-
"path",
|
|
1107
|
-
{
|
|
1108
|
-
d: "M14.5 4.5 L22.5 25",
|
|
1109
|
-
stroke: "currentColor",
|
|
1110
|
-
strokeWidth: "4.2",
|
|
1111
|
-
strokeLinecap: "round"
|
|
1112
|
-
}
|
|
1113
|
-
),
|
|
1114
|
-
/* @__PURE__ */ jsx7(
|
|
1115
|
-
"path",
|
|
1116
|
-
{
|
|
1117
|
-
d: "M9.5 17 H19.5",
|
|
1118
|
-
stroke: "currentColor",
|
|
1119
|
-
strokeWidth: "2",
|
|
1120
|
-
strokeLinecap: "round"
|
|
1121
|
-
}
|
|
1122
|
-
),
|
|
1123
|
-
/* @__PURE__ */ jsx7(
|
|
1124
|
-
"path",
|
|
1125
|
-
{
|
|
1126
|
-
d: "M3 25 H10",
|
|
1127
|
-
stroke: "currentColor",
|
|
1128
|
-
strokeWidth: "2",
|
|
1129
|
-
strokeLinecap: "round"
|
|
1130
|
-
}
|
|
1131
|
-
),
|
|
1132
|
-
/* @__PURE__ */ jsx7(
|
|
1133
|
-
"path",
|
|
1134
|
-
{
|
|
1135
|
-
d: "M19 25 H26",
|
|
1136
|
-
stroke: "currentColor",
|
|
1137
|
-
strokeWidth: "2.5",
|
|
1138
|
-
strokeLinecap: "round"
|
|
1139
|
-
}
|
|
1140
|
-
),
|
|
1141
|
-
/* @__PURE__ */ jsx7(
|
|
1142
|
-
"path",
|
|
1143
|
-
{
|
|
1144
|
-
d: "M8.5 2.5 C10 2.5, 11 3.5, 11 5 C11 7, 8.5 8.5, 7.5 9.5",
|
|
1145
|
-
stroke: "currentColor",
|
|
1146
|
-
strokeWidth: "2",
|
|
1147
|
-
strokeLinecap: "round",
|
|
1148
|
-
fill: "none",
|
|
1149
|
-
className: "hsk-akr-breath"
|
|
1150
|
-
}
|
|
1151
|
-
)
|
|
1152
|
-
]
|
|
1120
|
+
"aria-label": "kiku",
|
|
1121
|
+
children: /* @__PURE__ */ jsxs6("g", { transform: "translate(22.7 19) scale(0.62)", fill: "currentColor", fillRule: "evenodd", children: [
|
|
1122
|
+
/* @__PURE__ */ jsx7("path", { d: "M39.4 10.4 Q44 0 48.6 10.4 L86.1 95.8 Q88 100 83.4 100 L4.6 100 Q0 100 1.9 95.8 Z M24 100 L24 65 Q24 60 27.4 56.3 Q44 38 60.6 56.3 Q64 60 64 65 L64 100 Z" }),
|
|
1123
|
+
/* @__PURE__ */ jsx7("circle", { cx: "55", cy: "82", r: "3.4" })
|
|
1124
|
+
] })
|
|
1153
1125
|
}
|
|
1154
1126
|
);
|
|
1155
|
-
var SparkleIcon2 =
|
|
1127
|
+
var SparkleIcon2 = KikuIcon;
|
|
1156
1128
|
var ArrowUpIcon2 = () => /* @__PURE__ */ jsxs6("svg", { width: "18", height: "18", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: [
|
|
1157
1129
|
/* @__PURE__ */ jsx7("path", { d: "m5 12 7-7 7 7" }),
|
|
1158
1130
|
/* @__PURE__ */ jsx7("path", { d: "M12 19V5" })
|
|
@@ -1345,6 +1317,24 @@ function AtPickerMenu({ onSelect, onDismiss }) {
|
|
|
1345
1317
|
}
|
|
1346
1318
|
);
|
|
1347
1319
|
}
|
|
1320
|
+
function SourceImg({ src, alt, onImageClick }) {
|
|
1321
|
+
const [failed, setFailed] = useState5(false);
|
|
1322
|
+
if (failed) {
|
|
1323
|
+
return /* @__PURE__ */ jsx7("div", { style: { width: "100%", height: "100%", display: "flex", alignItems: "center", justifyContent: "center", background: "var(--hsk-chat-source-bg, rgba(0,0,0,.04))", color: "var(--hsk-chat-muted, #888)" }, children: /* @__PURE__ */ jsx7(SparkleIcon2, {}) });
|
|
1324
|
+
}
|
|
1325
|
+
return /* @__PURE__ */ jsx7(
|
|
1326
|
+
"img",
|
|
1327
|
+
{
|
|
1328
|
+
src,
|
|
1329
|
+
alt: alt ?? "",
|
|
1330
|
+
onError: () => setFailed(true),
|
|
1331
|
+
onClick: onImageClick ? (e) => {
|
|
1332
|
+
e.stopPropagation();
|
|
1333
|
+
onImageClick(src);
|
|
1334
|
+
} : void 0
|
|
1335
|
+
}
|
|
1336
|
+
);
|
|
1337
|
+
}
|
|
1348
1338
|
function SourcesCarousel({ sources, defaultCurrency, onSelectSource, onImageClick, referencedIds = [] }) {
|
|
1349
1339
|
const client = useAkropolysContext3();
|
|
1350
1340
|
const isProperty = client?.vertical === "property";
|
|
@@ -1384,18 +1374,7 @@ function SourcesCarousel({ sources, defaultCurrency, onSelectSource, onImageClic
|
|
|
1384
1374
|
onClick: () => onSelectSource?.(src),
|
|
1385
1375
|
children: [
|
|
1386
1376
|
src.image ? /* @__PURE__ */ jsxs6("div", { className: "hsk-cb-src-imgwrap", style: { position: "relative" }, children: [
|
|
1387
|
-
/* @__PURE__ */ jsx7(
|
|
1388
|
-
"img",
|
|
1389
|
-
{
|
|
1390
|
-
src: src.image,
|
|
1391
|
-
alt: src.name,
|
|
1392
|
-
loading: "lazy",
|
|
1393
|
-
onClick: onImageClick ? (e) => {
|
|
1394
|
-
e.stopPropagation();
|
|
1395
|
-
onImageClick(src.image);
|
|
1396
|
-
} : void 0
|
|
1397
|
-
}
|
|
1398
|
-
),
|
|
1377
|
+
/* @__PURE__ */ jsx7(SourceImg, { src: src.image, alt: src.name, onImageClick }),
|
|
1399
1378
|
isReferenced && /* @__PURE__ */ jsx7("div", { className: "hsk-cb-source-ref-badge", title: "Featured in response", children: /* @__PURE__ */ jsx7(SparkleIcon2, { size: 10 }) }),
|
|
1400
1379
|
isProperty && /* @__PURE__ */ jsx7("div", { style: {
|
|
1401
1380
|
position: "absolute",
|
|
@@ -1427,7 +1406,7 @@ function SourcesCarousel({ sources, defaultCurrency, onSelectSource, onImageClic
|
|
|
1427
1406
|
] })
|
|
1428
1407
|
]
|
|
1429
1408
|
},
|
|
1430
|
-
si
|
|
1409
|
+
src.id ?? si
|
|
1431
1410
|
);
|
|
1432
1411
|
}) }),
|
|
1433
1412
|
showNext && /* @__PURE__ */ jsxs6(Fragment3, { children: [
|
|
@@ -1652,7 +1631,7 @@ var PROPERTY_CHIPS = [
|
|
|
1652
1631
|
"Studio apartments with pool"
|
|
1653
1632
|
];
|
|
1654
1633
|
function ChatModal({
|
|
1655
|
-
title = "
|
|
1634
|
+
title = "kiku",
|
|
1656
1635
|
placeholder = "Ask me anything \u2014 gifts, budget, use case\u2026",
|
|
1657
1636
|
backdropColor,
|
|
1658
1637
|
backdropBlur,
|
|
@@ -1740,7 +1719,7 @@ function ChatModal({
|
|
|
1740
1719
|
}, []);
|
|
1741
1720
|
const isProperty = client.vertical === "property";
|
|
1742
1721
|
const activeChips = chips === DEFAULT_CHIPS && isProperty ? PROPERTY_CHIPS : chips;
|
|
1743
|
-
const activeTitle = title
|
|
1722
|
+
const activeTitle = title;
|
|
1744
1723
|
const activePlaceholder = placeholder === "Ask me anything \u2014 gifts, budget, use case\u2026" && isProperty ? "Ask me anything \u2014 location, budget, bedrooms\u2026" : placeholder;
|
|
1745
1724
|
const [selectedProduct, setSelectedProduct] = useState5(null);
|
|
1746
1725
|
const [lightboxSrc, setLightboxSrc] = useState5(null);
|
|
@@ -2019,10 +1998,10 @@ function ChatModal({
|
|
|
2019
1998
|
messageRefs.current[idx] = el;
|
|
2020
1999
|
}, children: isUser ? /* @__PURE__ */ jsxs6("div", { className: "hsk-cb-user-msg", children: [
|
|
2021
2000
|
msg.images && msg.images.length > 0 && /* @__PURE__ */ jsx7("div", { className: "hsk-cb-user-imgs", children: msg.images.map((img, i) => /* @__PURE__ */ jsx7("img", { src: img, alt: `attachment ${i + 1}`, className: "hsk-cb-user-img-thumb" }, i)) }),
|
|
2022
|
-
msg.content && /* @__PURE__ */
|
|
2023
|
-
|
|
2024
|
-
msg.content
|
|
2025
|
-
] })
|
|
2001
|
+
msg.content && /* @__PURE__ */ jsx7("div", { className: "hsk-cb-user-bubble", children: /^@kiku\b/i.test(msg.content) ? /* @__PURE__ */ jsxs6(Fragment3, { children: [
|
|
2002
|
+
/* @__PURE__ */ jsx7("span", { className: "hsk-kiku-badge", children: "@kiku" }),
|
|
2003
|
+
msg.content.replace(/^@kiku\s*/i, "")
|
|
2004
|
+
] }) : msg.content })
|
|
2026
2005
|
] }) : /* @__PURE__ */ jsxs6("div", { className: "hsk-cb-ai-msg", children: [
|
|
2027
2006
|
/* @__PURE__ */ jsx7("div", { className: "hsk-cb-ai-icon", style: { display: "flex", alignItems: "center" }, children: /* @__PURE__ */ jsx7(SparkleIcon2, {}) }),
|
|
2028
2007
|
/* @__PURE__ */ jsxs6("div", { className: "hsk-cb-ai-body", children: [
|
|
@@ -2031,16 +2010,33 @@ function ChatModal({
|
|
|
2031
2010
|
return /* @__PURE__ */ jsxs6(Fragment3, { children: [
|
|
2032
2011
|
thinking && /* @__PURE__ */ jsx7(ThinkingBlock, { text: thinking, isComplete }),
|
|
2033
2012
|
content && /* @__PURE__ */ jsxs6("div", { className: "hsk-cb-ai-text", children: [
|
|
2034
|
-
renderMarkdown(content),
|
|
2013
|
+
renderMarkdown(content, isLast && streaming),
|
|
2035
2014
|
isLast && streaming && /* @__PURE__ */ jsx7("span", { style: { display: "inline-block", width: "0.5em", height: "1.05em", marginLeft: "2px", verticalAlign: "text-bottom", background: "currentColor", opacity: 0.55, borderRadius: "1px" } })
|
|
2036
2015
|
] })
|
|
2037
2016
|
] });
|
|
2038
2017
|
})(),
|
|
2018
|
+
msg.visualizing && /* @__PURE__ */ jsxs6("div", { className: "hsk-cb-viz hsk-cb-viz--loading", children: [
|
|
2019
|
+
/* @__PURE__ */ jsx7("span", { className: "hsk-cb-viz-spinner" }),
|
|
2020
|
+
/* @__PURE__ */ jsx7("span", { children: "Visualizing\u2026" })
|
|
2021
|
+
] }),
|
|
2022
|
+
msg.visualization && /* @__PURE__ */ jsx7("div", { className: "hsk-cb-viz", children: /* @__PURE__ */ jsx7(
|
|
2023
|
+
"img",
|
|
2024
|
+
{
|
|
2025
|
+
src: msg.visualization,
|
|
2026
|
+
alt: "Product visualized in your photo",
|
|
2027
|
+
className: "hsk-markdown-img",
|
|
2028
|
+
onError: (e) => {
|
|
2029
|
+
e.target.style.display = "none";
|
|
2030
|
+
}
|
|
2031
|
+
}
|
|
2032
|
+
) }),
|
|
2039
2033
|
isLast && lastIntent === "compare" && sources.length >= 2 && /* @__PURE__ */ jsx7(ComparisonMatrix, { sources, defaultCurrency }),
|
|
2040
2034
|
(() => {
|
|
2041
2035
|
const msgReferencedIds = isLast ? referencedIds : msg.referencedIds ?? [];
|
|
2042
2036
|
const msgSources = isLast ? sources : msg.sources ?? [];
|
|
2043
|
-
const
|
|
2037
|
+
const msgIntent = isLast ? lastIntent : msg.intent;
|
|
2038
|
+
const hiddenIntent = msgIntent === "compare" || msgIntent === "capture" || msgIntent === "capture_all" || msgIntent === "delete" || msgIntent === "view_history";
|
|
2039
|
+
const showCarousel = msgReferencedIds.length > 0 && !hiddenIntent && (!isLast || lastAction?.type !== "request_kiku_key");
|
|
2044
2040
|
return showCarousel && /* @__PURE__ */ jsx7(
|
|
2045
2041
|
SourcesCarousel,
|
|
2046
2042
|
{
|
|
@@ -2086,22 +2082,19 @@ function ChatModal({
|
|
|
2086
2082
|
]
|
|
2087
2083
|
}
|
|
2088
2084
|
),
|
|
2089
|
-
loading && !streaming && /* @__PURE__ */ jsxs6("div", { className: "hsk-cb-typing-row", style: { display: "flex", alignItems: "
|
|
2090
|
-
/* @__PURE__ */
|
|
2091
|
-
|
|
2092
|
-
/* @__PURE__ */ jsx7("
|
|
2093
|
-
|
|
2094
|
-
|
|
2095
|
-
|
|
2096
|
-
|
|
2097
|
-
|
|
2098
|
-
|
|
2099
|
-
/* @__PURE__ */
|
|
2100
|
-
|
|
2101
|
-
|
|
2102
|
-
/* @__PURE__ */ jsx7("div", { className: "hsk-cb-dot" })
|
|
2103
|
-
] })
|
|
2104
|
-
] })
|
|
2085
|
+
loading && !streaming && /* @__PURE__ */ jsxs6("div", { className: "hsk-cb-typing-row", style: { display: "flex", alignItems: "center", gap: "10px" }, children: [
|
|
2086
|
+
/* @__PURE__ */ jsxs6("div", { className: "hsk-cb-thinking-icon", children: [
|
|
2087
|
+
/* @__PURE__ */ jsx7("svg", { className: "hsk-brand-mark", viewBox: "0 0 100 100", "aria-hidden": "true", children: /* @__PURE__ */ jsx7("path", { d: "M39.4 10.4 Q44 0 48.6 10.4 L86.1 95.8 Q88 100 83.4 100 L4.6 100 Q0 100 1.9 95.8 Z M24 100 L24 65 Q24 60 27.4 56.3 Q44 38 60.6 56.3 Q64 60 64 65 L64 100 Z", transform: "translate(22.7 19) scale(0.62)", fillRule: "evenodd" }) }),
|
|
2088
|
+
/* @__PURE__ */ jsx7("span", { className: "hsk-handle-orbit", children: /* @__PURE__ */ jsxs6("span", { className: "hsk-handle-ring", children: [
|
|
2089
|
+
/* @__PURE__ */ jsx7("span", { className: "hsk-handle-ball" }),
|
|
2090
|
+
/* @__PURE__ */ jsx7("span", { className: "hsk-handle-ball" }),
|
|
2091
|
+
/* @__PURE__ */ jsx7("span", { className: "hsk-handle-ball" }),
|
|
2092
|
+
/* @__PURE__ */ jsx7("span", { className: "hsk-handle-ball" }),
|
|
2093
|
+
/* @__PURE__ */ jsx7("span", { className: "hsk-handle-ball" })
|
|
2094
|
+
] }) }),
|
|
2095
|
+
/* @__PURE__ */ jsx7("span", { className: "hsk-handle-rest" })
|
|
2096
|
+
] }),
|
|
2097
|
+
/* @__PURE__ */ jsx7("span", { className: "hsk-cb-thinking-text", children: "Thinking\u2026" })
|
|
2105
2098
|
] }),
|
|
2106
2099
|
error && /* @__PURE__ */ jsx7("div", { className: "hsk-cb-error", children: getFriendlyError(error) }),
|
|
2107
2100
|
keyPhase === "prompt_key" && /* @__PURE__ */ jsxs6("div", { className: "hsk-cb-ai-msg", children: [
|
|
@@ -2256,7 +2249,7 @@ function ChatModal({
|
|
|
2256
2249
|
}
|
|
2257
2250
|
)
|
|
2258
2251
|
] }),
|
|
2259
|
-
/* @__PURE__ */ jsx7("div", { className: "hsk-cb-hint", children: "
|
|
2252
|
+
/* @__PURE__ */ jsx7("div", { className: "hsk-cb-hint", children: "kiku \xB7 searches the whole catalogue in real time" })
|
|
2260
2253
|
] })
|
|
2261
2254
|
] })
|
|
2262
2255
|
]
|
|
@@ -2363,74 +2356,19 @@ import { useState as useState6, useEffect as useEffect4, useRef as useRef6 } fro
|
|
|
2363
2356
|
import { createPortal as createPortal2 } from "react-dom";
|
|
2364
2357
|
import { useSearch as useSearch2, useKiku as useKiku3, useAkropolysContext as useAkropolysContext4 } from "@akropolys/sdk";
|
|
2365
2358
|
import { Fragment as Fragment4, jsx as jsx8, jsxs as jsxs7 } from "react/jsx-runtime";
|
|
2366
|
-
var SparkleIcon3 = ({ className, size = 16 }) => /* @__PURE__ */
|
|
2359
|
+
var SparkleIcon3 = ({ className, size = 16 }) => /* @__PURE__ */ jsx8(
|
|
2367
2360
|
"svg",
|
|
2368
2361
|
{
|
|
2369
|
-
className: cn("hsk-brand-
|
|
2362
|
+
className: cn("hsk-brand-mark", className),
|
|
2370
2363
|
width: size,
|
|
2371
2364
|
height: size,
|
|
2372
|
-
viewBox: "0 0
|
|
2373
|
-
fill: "none",
|
|
2365
|
+
viewBox: "0 0 100 100",
|
|
2374
2366
|
xmlns: "http://www.w3.org/2000/svg",
|
|
2375
|
-
"aria-label": "
|
|
2376
|
-
children: [
|
|
2377
|
-
/* @__PURE__ */ jsx8(
|
|
2378
|
-
|
|
2379
|
-
|
|
2380
|
-
d: "M14.5 4.5 L6.5 25",
|
|
2381
|
-
stroke: "currentColor",
|
|
2382
|
-
strokeWidth: "2.2",
|
|
2383
|
-
strokeLinecap: "round"
|
|
2384
|
-
}
|
|
2385
|
-
),
|
|
2386
|
-
/* @__PURE__ */ jsx8(
|
|
2387
|
-
"path",
|
|
2388
|
-
{
|
|
2389
|
-
d: "M14.5 4.5 L22.5 25",
|
|
2390
|
-
stroke: "currentColor",
|
|
2391
|
-
strokeWidth: "4.2",
|
|
2392
|
-
strokeLinecap: "round"
|
|
2393
|
-
}
|
|
2394
|
-
),
|
|
2395
|
-
/* @__PURE__ */ jsx8(
|
|
2396
|
-
"path",
|
|
2397
|
-
{
|
|
2398
|
-
d: "M9.5 17 H19.5",
|
|
2399
|
-
stroke: "currentColor",
|
|
2400
|
-
strokeWidth: "2",
|
|
2401
|
-
strokeLinecap: "round"
|
|
2402
|
-
}
|
|
2403
|
-
),
|
|
2404
|
-
/* @__PURE__ */ jsx8(
|
|
2405
|
-
"path",
|
|
2406
|
-
{
|
|
2407
|
-
d: "M3 25 H10",
|
|
2408
|
-
stroke: "currentColor",
|
|
2409
|
-
strokeWidth: "2",
|
|
2410
|
-
strokeLinecap: "round"
|
|
2411
|
-
}
|
|
2412
|
-
),
|
|
2413
|
-
/* @__PURE__ */ jsx8(
|
|
2414
|
-
"path",
|
|
2415
|
-
{
|
|
2416
|
-
d: "M19 25 H26",
|
|
2417
|
-
stroke: "currentColor",
|
|
2418
|
-
strokeWidth: "2.5",
|
|
2419
|
-
strokeLinecap: "round"
|
|
2420
|
-
}
|
|
2421
|
-
),
|
|
2422
|
-
/* @__PURE__ */ jsx8(
|
|
2423
|
-
"path",
|
|
2424
|
-
{
|
|
2425
|
-
d: "M8.5 2.5 C10 2.5, 11 3.5, 11 5 C11 7, 8.5 8.5, 7.5 9.5",
|
|
2426
|
-
stroke: "currentColor",
|
|
2427
|
-
strokeWidth: "2",
|
|
2428
|
-
strokeLinecap: "round",
|
|
2429
|
-
fill: "none",
|
|
2430
|
-
className: "hsk-akr-breath"
|
|
2431
|
-
}
|
|
2432
|
-
)
|
|
2433
|
-
]
|
|
2367
|
+
"aria-label": "kiku",
|
|
2368
|
+
children: /* @__PURE__ */ jsxs7("g", { transform: "translate(22.7 19) scale(0.62)", fill: "currentColor", fillRule: "evenodd", children: [
|
|
2369
|
+
/* @__PURE__ */ jsx8("path", { d: "M39.4 10.4 Q44 0 48.6 10.4 L86.1 95.8 Q88 100 83.4 100 L4.6 100 Q0 100 1.9 95.8 Z M24 100 L24 65 Q24 60 27.4 56.3 Q44 38 60.6 56.3 Q64 60 64 65 L64 100 Z" }),
|
|
2370
|
+
/* @__PURE__ */ jsx8("circle", { cx: "55", cy: "82", r: "3.4" })
|
|
2371
|
+
] })
|
|
2434
2372
|
}
|
|
2435
2373
|
);
|
|
2436
2374
|
var CloseIcon2 = () => /* @__PURE__ */ jsxs7("svg", { width: "16", height: "16", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2.5", strokeLinecap: "round", strokeLinejoin: "round", children: [
|
|
@@ -2592,7 +2530,7 @@ Question: ${q}`;
|
|
|
2592
2530
|
}
|
|
2593
2531
|
)
|
|
2594
2532
|
] }),
|
|
2595
|
-
/* @__PURE__ */ jsx8("div", { className: "hsk-sp-header-sub", children: "
|
|
2533
|
+
/* @__PURE__ */ jsx8("div", { className: "hsk-sp-header-sub", children: "kiku" })
|
|
2596
2534
|
] }),
|
|
2597
2535
|
/* @__PURE__ */ jsx8("button", { className: "hsk-sp-close", onClick: onClose, "aria-label": "Close", children: /* @__PURE__ */ jsx8(CloseIcon2, {}) })
|
|
2598
2536
|
] }),
|