@websolutespa/bom-mixer-llm 1.8.6 → 1.8.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/dist/cjs/index.css +49 -28
  3. package/dist/cjs/index.js +88 -19
  4. package/dist/cjs/index.js.map +1 -1
  5. package/dist/esm/index.css +49 -28
  6. package/dist/esm/llm/components/Font/font.js +45 -0
  7. package/dist/esm/llm/components/Font/font.js.map +1 -0
  8. package/dist/esm/llm/components/Intro/intro.js +1 -1
  9. package/dist/esm/llm/components/Text/text.js.map +1 -1
  10. package/dist/esm/llm/components/Trigger/trigger.js +2 -2
  11. package/dist/esm/llm/components/Trigger/trigger.js.map +1 -1
  12. package/dist/esm/llm/llm.js +4 -3
  13. package/dist/esm/llm/llm.js.map +1 -1
  14. package/dist/esm/llm/theme.json.js +46 -14
  15. package/dist/esm/llm/theme.json.js.map +1 -1
  16. package/dist/types/llm/components/Font/font.d.ts +3 -0
  17. package/dist/types/llm/components/Font/font.d.ts.map +1 -0
  18. package/dist/types/llm/components/Text/text.d.ts.map +1 -1
  19. package/dist/types/llm/llm.d.ts.map +1 -1
  20. package/dist/types/llm/theme.d.ts +36 -8
  21. package/dist/types/llm/theme.d.ts.map +1 -1
  22. package/dist/types/useLlm/mock-app.gs1.d.ts +3 -0
  23. package/dist/types/useLlm/mock-app.gs1.d.ts.map +1 -0
  24. package/dist/types/useLlm/mock-app.lfo.d.ts.map +1 -1
  25. package/dist/types/useLlm/mock-app.silicon.d.ts.map +1 -1
  26. package/dist/types/useLlm/mock-thread.gs1.d.ts +3 -0
  27. package/dist/types/useLlm/mock-thread.gs1.d.ts.map +1 -0
  28. package/package.json +1 -1
  29. package/src/llm/components/Font/font.tsx +55 -0
  30. package/src/llm/components/Header/_style.scss +1 -1
  31. package/src/llm/components/Hints/_style.scss +5 -2
  32. package/src/llm/components/Intro/_style.scss +1 -0
  33. package/src/llm/components/Intro/intro.tsx +1 -1
  34. package/src/llm/components/Text/_style.scss +13 -8
  35. package/src/llm/components/Text/text.tsx +2 -0
  36. package/src/llm/components/Trigger/_style.scss +6 -5
  37. package/src/llm/components/Trigger/trigger.tsx +2 -2
  38. package/src/llm/llm.tsx +2 -0
  39. package/src/llm/scss/_fonts.scss +2 -0
  40. package/src/llm/theme.json +38 -10
  41. package/src/useLlm/mock-app.gs1.ts +244 -0
  42. package/src/useLlm/mock-app.lfo.ts +2 -13
  43. package/src/useLlm/mock-app.silicon.ts +2 -1
  44. package/src/useLlm/mock-thread.gs1.ts +122 -0
package/CHANGELOG.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # @websolutespa/bom-mixer-llm
2
2
 
3
+ ## 1.8.7
4
+
5
+ ### Patch Changes
6
+
7
+ - Modified: theme settings, Added: Font component
8
+
3
9
  ## 1.8.6
4
10
 
5
11
  ### Patch Changes
@@ -1,33 +1,43 @@
1
- @import url("https://fonts.googleapis.com/css2?family=Nunito:ital,wght@0,200..1000;1,200..1000&display=swap");
2
- @import url("https://fonts.googleapis.com/css2?family=Work+Sans:ital,wght@0,100..900;1,100..900&display=swap");
1
+ /*
2
+ @import url('https://fonts.googleapis.com/css2?family=Nunito:ital,wght@0,200..1000;1,200..1000&display=swap');
3
+ @import url('https://fonts.googleapis.com/css2?family=Work+Sans:ital,wght@0,100..900;1,100..900&display=swap');
4
+
3
5
  @font-face {
4
- font-family: "Aeonik";
5
- src: url("https://design.wslabs.it/llm/fonts/Aeonik-Medium.woff2") format("woff2"), url("https://design.wslabs.it/llm/fonts/Aeonik-Medium.woff2") format("woff");
6
+ font-family: 'Aeonik';
7
+ src:
8
+ url('https://design.wslabs.it/llm/fonts/Aeonik-Medium.woff2') format('woff2'),
9
+ url('https://design.wslabs.it/llm/fonts/Aeonik-Medium.woff2') format('woff');
6
10
  font-weight: 500;
7
11
  font-style: normal;
8
12
  font-display: swap;
9
13
  }
14
+
10
15
  @font-face {
11
- font-family: "Aeonik";
12
- src: url("https://design.wslabs.it/llm/fonts/Aeonik-Bold.woff2") format("woff2"), url("https://design.wslabs.it/llm/fonts/Aeonik-Bold.woff") format("woff");
16
+ font-family: 'Aeonik';
17
+ src:
18
+ url('https://design.wslabs.it/llm/fonts/Aeonik-Bold.woff2') format('woff2'),
19
+ url('https://design.wslabs.it/llm/fonts/Aeonik-Bold.woff') format('woff');
13
20
  font-weight: 700;
14
21
  font-style: normal;
15
22
  font-display: swap;
16
23
  }
24
+
17
25
  @font-face {
18
- font-family: "Capraia";
19
- src: url("https://design.wslabs.it/llm/fonts/Capraia-Regular.woff2") format("woff2");
26
+ font-family: 'Capraia';
27
+ src: url('https://design.wslabs.it/llm/fonts/Capraia-Regular.woff2') format('woff2');
20
28
  font-style: normal;
21
29
  font-weight: 400;
22
30
  font-display: swap;
23
31
  }
32
+
24
33
  @font-face {
25
- font-family: "Capraia";
26
- src: url("https://design.wslabs.it/llm/fonts/Capraia-Light_W.woff2") format("woff2");
34
+ font-family: 'Capraia';
35
+ src: url('https://design.wslabs.it/llm/fonts/Capraia-Light_W.woff2') format('woff2');
27
36
  font-weight: 300;
28
37
  font-style: normal;
29
38
  font-display: swap;
30
39
  }
40
+ */
31
41
  /*
32
42
  @font-face {
33
43
  font-family: 'Capraia';
@@ -881,16 +891,16 @@ llm-embed {
881
891
  }
882
892
  }
883
893
  @media (hover: hover) {
884
- .llm .llm__trigger-btn--hover:hover + .llm__trigger-welcome > div {
894
+ .llm .llm__trigger-btn--hover:hover + .llm__trigger-popup > div {
885
895
  opacity: 0;
886
896
  translate: -50% 10%;
887
897
  }
888
- .llm .llm__trigger-btn--hover:hover + .llm__trigger-welcome > div + div {
898
+ .llm .llm__trigger-btn--hover:hover + .llm__trigger-popup > div + div {
889
899
  opacity: 1;
890
900
  translate: -50% 0%;
891
901
  }
892
902
  }
893
- .llm .llm__trigger-welcome > div {
903
+ .llm .llm__trigger-popup > div {
894
904
  position: absolute;
895
905
  padding: clamp(16px, 16px + (100vw - 375px) / 1545 * 8, 24px);
896
906
  width: calc(100vw - 40px);
@@ -900,23 +910,24 @@ llm-embed {
900
910
  translate: -50% 0%;
901
911
  border-radius: 12px;
902
912
  text-align: center;
903
- background: var(--llm-color-background);
904
- color: var(--llm-color-foreground);
913
+ background: var(--llm-popup-background);
914
+ color: var(--llm-popup-foreground);
915
+ border: var(--llm-popup-border, none);
905
916
  transition: 0.4s;
906
917
  pointer-events: auto;
907
918
  overflow: hidden;
908
919
  cursor: pointer;
909
920
  }
910
- .llm .llm__trigger-welcome > div > span {
921
+ .llm .llm__trigger-popup > div > span {
911
922
  position: relative;
912
923
  }
913
- .llm .llm__trigger-welcome > div + div {
924
+ .llm .llm__trigger-popup > div + div {
914
925
  width: calc(100vw - 40px);
915
926
  max-width: var(--llm-popup-max-width);
916
927
  translate: -50% 10%;
917
928
  opacity: 0;
918
929
  }
919
- .llm .llm__trigger-welcome-cta {
930
+ .llm .llm__trigger-cta {
920
931
  position: relative;
921
932
  display: block;
922
933
  margin: 12px auto 0 auto;
@@ -1169,7 +1180,7 @@ llm-embed {
1169
1180
  gap: clamp(8px, 8px + (100vw - 375px) / 1545 * 0, 8px);
1170
1181
  text-transform: uppercase;
1171
1182
  user-select: none;
1172
- color: var(--llm-color-foreground);
1183
+ color: var(--llm-color-title-foreground);
1173
1184
  pointer-events: auto;
1174
1185
  cursor: pointer;
1175
1186
  }
@@ -1245,6 +1256,7 @@ llm-embed {
1245
1256
  display: flex;
1246
1257
  flex-direction: column;
1247
1258
  gap: clamp(24px, 24px + (100vw - 375px) / 1545 * 16, 40px);
1259
+ color: var(--llm-color-title-foreground);
1248
1260
  }
1249
1261
  .llm .llm__intro-hints {
1250
1262
  margin-top: clamp(24px, 24px + (100vw - 375px) / 1545 * 16, 40px);
@@ -1310,11 +1322,14 @@ llm-embed {
1310
1322
  align-items: center;
1311
1323
  gap: clamp(8px, 8px + (100vw - 375px) / 1545 * 8, 16px);
1312
1324
  text-transform: uppercase;
1325
+ color: var(--llm-hint-title-color, inherit);
1313
1326
  }
1314
1327
  .llm .llm__hint-title i {
1328
+ flex-shrink: 0;
1315
1329
  display: block;
1316
- width: 18px;
1317
- height: 18px;
1330
+ width: var(--llm-hint-icon-width, 18px);
1331
+ height: var(--llm-hint-icon-height, 18px);
1332
+ color: var(--llm-hint-icon-color, inherit);
1318
1333
  }
1319
1334
  .llm .llm__hint-title i svg {
1320
1335
  fill: currentColor;
@@ -1519,8 +1534,9 @@ llm-embed {
1519
1534
  line-height: var(--llm-typography-body1-line-height);
1520
1535
  letter-spacing: var(--llm-typography-body1-letter-spacing);
1521
1536
  font-size: clamp(var(--llm-typography-body1-font-size-min) * 1px, var(--llm-typography-body1-font-size-min) * 1px + (100vw - 375px) / 1545 * (var(--llm-typography-body1-font-size-max) - var(--llm-typography-body1-font-size-min)), var(--llm-typography-body1-font-size-max) * 1px);
1522
- background: linear-gradient(rgba(154, 154, 154, 0.2) 10%, rgba(221, 221, 221, 0.1) 80%);
1523
- border: 1px solid rgba(237, 237, 237, 0.3);
1537
+ background: var(--llm-user-background);
1538
+ color: var(--llm-user-foreground);
1539
+ border: var(--llm-user-border);
1524
1540
  backdrop-filter: blur(20px);
1525
1541
  border-radius: 12px;
1526
1542
  padding: clamp(16px, 16px + (100vw - 375px) / 1545 * 8, 24px) clamp(24px, 24px + (100vw - 375px) / 1545 * 8, 32px);
@@ -1543,6 +1559,9 @@ llm-embed {
1543
1559
  }
1544
1560
  .llm .llm__message--assistant .llm__inner--string .llm__text .llm__text-body {
1545
1561
  font-family: var(--llm-font-primary);
1562
+ background: var(--llm-assistant-background);
1563
+ color: var(--llm-assistant-foreground);
1564
+ border: var(--llm-assistant-border);
1546
1565
  /*
1547
1566
  &,
1548
1567
  p {
@@ -1618,7 +1637,7 @@ llm-embed {
1618
1637
  }
1619
1638
  .llm .llm__message--assistant .llm__inner--string .llm__text .llm__text-body b,
1620
1639
  .llm .llm__message--assistant .llm__inner--string .llm__text .llm__text-body strong {
1621
- font-weight: 900;
1640
+ font-weight: var(--llm-typography-cta2-font-weight);
1622
1641
  }
1623
1642
  .llm .llm__message--assistant .llm__inner--string .llm__text .llm__text-body h1,
1624
1643
  .llm .llm__message--assistant .llm__inner--string .llm__text .llm__text-body h2,
@@ -1654,11 +1673,11 @@ llm-embed {
1654
1673
  .llm .llm__message--assistant .llm__inner--string .llm__text .llm__text-body blockquote {
1655
1674
  margin-bottom: var(--llm-markdown-margin-bottom);
1656
1675
  padding-left: 0.5em;
1657
- border-left: 4px solid rgba(255, 255, 255, 0.2);
1676
+ border-left: var(--llm-markdown-border);
1658
1677
  }
1659
1678
  .llm .llm__message--assistant .llm__inner--string .llm__text .llm__text-body hr {
1660
1679
  border: none;
1661
- border-top: 2px solid rgba(255, 255, 255, 0.2);
1680
+ border-top: var(--llm-markdown-border);
1662
1681
  margin-top: var(--llm-markdown-margin-top);
1663
1682
  margin-bottom: var(--llm-markdown-margin-bottom);
1664
1683
  }
@@ -1666,13 +1685,13 @@ llm-embed {
1666
1685
  text-decoration: underline;
1667
1686
  }
1668
1687
  .llm .llm__message--assistant .llm__inner--string .llm__text .llm__text-body a:link, .llm .llm__message--assistant .llm__inner--string .llm__text .llm__text-body a:active, .llm .llm__message--assistant .llm__inner--string .llm__text .llm__text-body a:visited, .llm .llm__message--assistant .llm__inner--string .llm__text .llm__text-body a:hover {
1669
- color: var(--llm-color-neutral-100);
1688
+ color: var(--llm-markdown-accent);
1670
1689
  }
1671
1690
  .llm .llm__message--assistant .llm__inner--string .llm__text .llm__text-body img {
1672
1691
  max-width: 320px;
1673
1692
  padding: 8px;
1674
1693
  border-radius: 8px;
1675
- border: var(--llm-pill-border);
1694
+ border: var(--llm-markdown-border);
1676
1695
  }
1677
1696
  .llm .llm__message--assistant .llm__inner--string .llm__text .llm__text-body .llm__text-img {
1678
1697
  display: block;
@@ -1703,6 +1722,7 @@ llm-embed {
1703
1722
  display: flex;
1704
1723
  gap: clamp(8px, 8px + (100vw - 375px) / 1545 * 8, 16px);
1705
1724
  padding-top: clamp(16px, 16px + (100vw - 375px) / 1545 * 8, 24px);
1725
+ color: var(--llm-color-foreground);
1706
1726
  }
1707
1727
  .llm .llm__text-disclaimer a {
1708
1728
  text-decoration: underline;
@@ -1712,6 +1732,7 @@ llm-embed {
1712
1732
  width: 18px;
1713
1733
  height: 18px;
1714
1734
  flex-shrink: 0;
1735
+ color: var(--llm-color-accent-foreground);
1715
1736
  }
1716
1737
  .llm .llm__text-disclaimer i svg {
1717
1738
  display: block;
package/dist/cjs/index.js CHANGED
@@ -159,7 +159,8 @@ typeof SuppressedError === "function" ? SuppressedError : function (error, suppr
159
159
 
160
160
  var font = {
161
161
  primary: "Aeonik, Arial, Helvetica, sans-serif",
162
- secondary: "Capraia, Georgia, serif"
162
+ secondary: "Capraia, Georgia, serif",
163
+ source: "<link rel=\"stylesheet\" href=\"https://design.wslabs.it/llm/fonts/aeonik.css\"><link rel=\"stylesheet\" href=\"https://design.wslabs.it/llm/fonts/capraia.css\">"
163
164
  };
164
165
  var typography = {
165
166
  display1: {
@@ -321,6 +322,10 @@ var color = {
321
322
  },
322
323
  background: "var(--llm-color-base-100)",
323
324
  foreground: "var(--llm-color-neutral-100)",
325
+ title: {
326
+ background: "var(--llm-color-background)",
327
+ foreground: "var(--llm-color-foreground)"
328
+ },
324
329
  primary: {
325
330
  background: "var(--llm-color-base-200)",
326
331
  foreground: "var(--llm-color-neutral-100)"
@@ -347,13 +352,16 @@ var trigger = {
347
352
  foreground: "var(--llm-color-base-100)",
348
353
  boxShadow: "0 0 30px rgba(0, 0, 0, 0.3)"
349
354
  };
355
+ var popup = {
356
+ maxWidth: "210px",
357
+ background: "var(--llm-color-title-background)",
358
+ foreground: "var(--llm-color-title-foreground)",
359
+ border: "none"
360
+ };
350
361
  var triggerCta = {
351
362
  background: "var(--llm-color-neutral-100)",
352
363
  foreground: "var(--llm-color-base-100)"
353
364
  };
354
- var popup = {
355
- maxWidth: "210px"
356
- };
357
365
  var hint = {
358
366
  fontFamily: "var(--llm-font-primary)",
359
367
  background: "linear-gradient(rgba(154, 154, 154, 0.2) 10%, rgba(221, 221, 221, 0.1) 80%)",
@@ -361,10 +369,18 @@ var hint = {
361
369
  border: "1px solid rgba(237, 237, 237, 0.3)",
362
370
  borderRadius: "12px"
363
371
  };
372
+ var hintTitle = {
373
+ color: "var(--llm-color-foreground)"
374
+ };
375
+ var hintIcon = {
376
+ width: "18px",
377
+ height: "18px",
378
+ color: "var(--llm-color-foreground)"
379
+ };
364
380
  var pill = {
365
381
  fontFamily: "var(--llm-font-primary)",
366
382
  background: "rgba(255, 255, 255, 0.2)",
367
- foreground: "var(--llm-color-foreground)",
383
+ foreground: "var(--llm-color-title-foreground)",
368
384
  border: "1px solid rgba(237, 237, 237, 0.3)",
369
385
  borderRadius: "5px"
370
386
  };
@@ -377,6 +393,23 @@ var input = {
377
393
  var checkbox = {
378
394
  border: "2px solid var(--llm-color-neutral-100)"
379
395
  };
396
+ var user = {
397
+ background: "linear-gradient(rgba(154, 154, 154, 0.2) 10%, rgba(221, 221, 221, 0.1) 80%)",
398
+ foreground: "var(--llm-color-title-foreground)",
399
+ border: "1px solid rgba(237, 237, 237, 0.3)"
400
+ };
401
+ var assistant = {
402
+ background: "none",
403
+ foreground: "var(--llm-color-foreground)",
404
+ border: "none"
405
+ };
406
+ var markdown = {
407
+ marginTop: "0.5rem",
408
+ marginBottom: "1rem",
409
+ marginLeft: "1rem",
410
+ accent: "var(--llm-color-foreground)",
411
+ border: "1px solid rgba(237, 237, 237, 0.3)"
412
+ };
380
413
  var card = {
381
414
  background: "var(--llm-color-neutral-100)",
382
415
  foreground: "var(--llm-color-neutral-900)",
@@ -397,11 +430,6 @@ var productLabel = {
397
430
  background: "var(--llm-color-neutral-100)",
398
431
  foreground: "var(--llm-color-neutral-900)"
399
432
  };
400
- var markdown = {
401
- marginTop: "0.5rem",
402
- marginBottom: "1rem",
403
- marginLeft: "1rem"
404
- };
405
433
  var theme = {
406
434
  font: font,
407
435
  typography: typography,
@@ -409,17 +437,21 @@ var theme = {
409
437
  border: border,
410
438
  canvas: canvas,
411
439
  trigger: trigger,
412
- triggerCta: triggerCta,
413
440
  popup: popup,
441
+ triggerCta: triggerCta,
414
442
  hint: hint,
443
+ hintTitle: hintTitle,
444
+ hintIcon: hintIcon,
415
445
  pill: pill,
416
446
  input: input,
417
447
  checkbox: checkbox,
448
+ user: user,
449
+ assistant: assistant,
450
+ markdown: markdown,
418
451
  card: card,
419
452
  cardVideo: cardVideo,
420
453
  product: product,
421
- productLabel: productLabel,
422
- markdown: markdown
454
+ productLabel: productLabel
423
455
  };
424
456
 
425
457
  const defaultTheme = theme;
@@ -3177,6 +3209,43 @@ const useCanvasOffscreen = canvasRef => {
3177
3209
  }, [canvasOffscreen, canvasRef, pixelRatio]);
3178
3210
  };
3179
3211
 
3212
+ const Font = () => {
3213
+ const app = useLlm(state => state.app);
3214
+ const theme = useLlm(state => state.theme);
3215
+ react.useEffect(() => {
3216
+ if (app && bomCore.isBrowser) {
3217
+ const head = document.querySelector('head');
3218
+ if (head) {
3219
+ const fontId = uuid.v4();
3220
+ const htmlText = theme.font.source || `
3221
+ <link rel="stylesheet" href="https://design.wslabs.it/llm/fonts/aeonik.css">
3222
+ <link rel="stylesheet" href="https://design.wslabs.it/llm/fonts/capraia.css">
3223
+ `;
3224
+ const parser = new DOMParser();
3225
+ const parsedDocument = parser.parseFromString(htmlText, 'text/html');
3226
+ const nodes = Array.from(parsedDocument.querySelectorAll('head>*'));
3227
+ const selector = `llm-font-${fontId}`;
3228
+ nodes.forEach(node => {
3229
+ node.classList.add(selector);
3230
+ head.appendChild(node);
3231
+ console.log('[mixer-llm] added font node', node);
3232
+ });
3233
+ return () => {
3234
+ const addedNodes = Array.from(document.querySelectorAll(`.${selector}`));
3235
+ addedNodes.forEach(node => {
3236
+ if (node.parentNode) {
3237
+ node.parentNode.removeChild(node);
3238
+ console.log('[mixer-llm] removed font node', node);
3239
+ }
3240
+ });
3241
+ };
3242
+ }
3243
+ }
3244
+ return () => {};
3245
+ }, [app]);
3246
+ return jsxRuntime.jsx(jsxRuntime.Fragment, {});
3247
+ };
3248
+
3180
3249
  function Canvas() {
3181
3250
  const ref = react.useRef(null);
3182
3251
  useCanvasOffscreen(ref);
@@ -3540,7 +3609,7 @@ const Intro = () => {
3540
3609
  })
3541
3610
  }), jsxRuntime.jsx(framerMotion.motion.div, {
3542
3611
  variants: motionItem,
3543
- className: "llm__intro-title -llm-t-display-3",
3612
+ className: "llm__intro-title -llm-t-display-2",
3544
3613
  children: app === null || app === void 0 ? void 0 : app.contents.extendedWelcomeText
3545
3614
  })]
3546
3615
  }), jsxRuntime.jsx(framerMotion.motion.div, {
@@ -5321,7 +5390,7 @@ const Trigger = () => {
5321
5390
  children: label('llm.button')
5322
5391
  })]
5323
5392
  }), !opened && jsxRuntime.jsxs("div", {
5324
- className: "llm__trigger-welcome -llm-t-body-2",
5393
+ className: "llm__trigger-popup -llm-t-body-2",
5325
5394
  children: [jsxRuntime.jsxs(framerMotion.motion.div, {
5326
5395
  exit: {
5327
5396
  opacity: 0
@@ -5330,7 +5399,7 @@ const Trigger = () => {
5330
5399
  text: app === null || app === void 0 ? void 0 : app.contents.collapsedWelcomeText
5331
5400
  }), (app === null || app === void 0 ? void 0 : app.contents.collapsedWelcomeTextCta) && jsxRuntime.jsx("button", {
5332
5401
  type: "button",
5333
- className: "llm__trigger-welcome-cta",
5402
+ className: "llm__trigger-cta",
5334
5403
  children: app === null || app === void 0 ? void 0 : app.contents.collapsedWelcomeTextCta
5335
5404
  })]
5336
5405
  }), (app === null || app === void 0 ? void 0 : app.contents.collapsedWelcomeTextHover) && jsxRuntime.jsxs(framerMotion.motion.div, {
@@ -5393,8 +5462,8 @@ const LlmComponent = /*#__PURE__*/react.forwardRef((props, ref) => {
5393
5462
  });
5394
5463
  if (mounted) {
5395
5464
  return jsxRuntime.jsx(jsxRuntime.Fragment, {
5396
- children: app && jsxRuntime.jsx(CanvasOffscreenProvider, {
5397
- children: jsxRuntime.jsxs("div", Object.assign({
5465
+ children: app && jsxRuntime.jsxs(CanvasOffscreenProvider, {
5466
+ children: [jsxRuntime.jsx(Font, {}), jsxRuntime.jsxs("div", Object.assign({
5398
5467
  ref: innerRef,
5399
5468
  className: classNames
5400
5469
  }, props, {
@@ -5407,7 +5476,7 @@ const LlmComponent = /*#__PURE__*/react.forwardRef((props, ref) => {
5407
5476
  initial: false,
5408
5477
  children: shouldShowTrigger && jsxRuntime.jsx(Trigger, {}, "trigger")
5409
5478
  })]
5410
- }))
5479
+ }))]
5411
5480
  })
5412
5481
  });
5413
5482
  } else {