@blank-utils/llm 0.3.3 → 0.3.4

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.
@@ -1551,10 +1551,13 @@ function injectChatStyles(theme) {
1551
1551
  .llm-chat-bubble--user {
1552
1552
  align-self: flex-end;
1553
1553
  max-width: 80%;
1554
+ overflow-wrap: break-word;
1554
1555
  }
1555
1556
  .llm-chat-bubble--assistant {
1556
1557
  align-self: flex-start;
1557
1558
  width: 100%;
1559
+ min-width: 0; /* Prevents flex children from expanding past 100% */
1560
+ overflow-x: hidden;
1558
1561
  }
1559
1562
 
1560
1563
  /* User message \u2014 flat, subtle bg, no radius */
@@ -1568,30 +1571,96 @@ function injectChatStyles(theme) {
1568
1571
  color: ${text};
1569
1572
  }
1570
1573
 
1571
- /* Assistant message */
1574
+ /* Streamdown Overrides / Markdown Styling */
1572
1575
  .llm-chat-assistant-content {
1573
1576
  font-size: 14px;
1574
1577
  line-height: 1.7;
1575
- color: ${d ? "rgba(255,255,255,0.85)" : "rgba(0,0,0,0.85)"};
1578
+ color: ${text};
1579
+ word-wrap: break-word;
1580
+ }
1581
+ .llm-chat-assistant-content > *:first-child { margin-top: 0; }
1582
+ .llm-chat-assistant-content > *:last-child { margin-bottom: 0; }
1583
+
1584
+ .llm-chat-assistant-content p {
1585
+ margin: 0 0 12px 0;
1586
+ }
1587
+
1588
+ .llm-chat-assistant-content h1,
1589
+ .llm-chat-assistant-content h2,
1590
+ .llm-chat-assistant-content h3,
1591
+ .llm-chat-assistant-content h4 {
1592
+ margin: 20px 0 10px 0;
1593
+ color: ${text};
1594
+ font-weight: 600;
1595
+ line-height: 1.3;
1596
+ }
1597
+ .llm-chat-assistant-content h1 { font-size: 1.5em; }
1598
+ .llm-chat-assistant-content h2 { font-size: 1.3em; }
1599
+ .llm-chat-assistant-content h3 { font-size: 1.1em; }
1600
+
1601
+ .llm-chat-assistant-content ul,
1602
+ .llm-chat-assistant-content ol {
1603
+ margin: 0 0 12px 0;
1604
+ padding-left: 24px;
1605
+ }
1606
+ .llm-chat-assistant-content li {
1607
+ margin-bottom: 4px;
1576
1608
  }
1577
1609
 
1578
- /* Streamdown Overrides */
1579
1610
  .llm-chat-assistant-content pre {
1580
1611
  background: ${surfaceSubtle} !important;
1581
1612
  border: 1px solid ${borderSubtle} !important;
1582
- border-radius: 0 !important;
1613
+ border-radius: 6px !important;
1583
1614
  padding: 12px !important;
1584
1615
  margin: 12px 0 !important;
1616
+ overflow-x: auto !important;
1617
+ white-space: pre !important;
1618
+ max-width: 100%;
1585
1619
  }
1586
1620
  .llm-chat-assistant-content code {
1587
1621
  font-family: ${monoFont} !important;
1588
1622
  font-size: 13px !important;
1623
+ white-space: inherit;
1589
1624
  }
1590
1625
  .llm-chat-assistant-content :not(pre) > code {
1591
1626
  background: ${surfaceSubtle};
1592
1627
  border: 1px solid ${borderSubtle};
1593
- padding: 1px 5px;
1628
+ border-radius: 4px;
1629
+ padding: 2px 5px;
1594
1630
  font-size: 12.5px !important;
1631
+ white-space: pre-wrap !important;
1632
+ word-break: break-word;
1633
+ }
1634
+
1635
+ .llm-chat-assistant-content blockquote {
1636
+ border-left: 3px solid ${borderSubtle};
1637
+ margin: 0 0 12px 0;
1638
+ padding-left: 12px;
1639
+ color: ${textTertiary};
1640
+ }
1641
+
1642
+ .llm-chat-assistant-content a {
1643
+ color: #3b82f6;
1644
+ text-decoration: none;
1645
+ }
1646
+ .llm-chat-assistant-content a:hover {
1647
+ text-decoration: underline;
1648
+ }
1649
+
1650
+ .llm-chat-assistant-content table {
1651
+ border-collapse: collapse;
1652
+ width: 100%;
1653
+ margin: 12px 0;
1654
+ }
1655
+ .llm-chat-assistant-content th,
1656
+ .llm-chat-assistant-content td {
1657
+ border: 1px solid ${borderSubtle};
1658
+ padding: 6px 10px;
1659
+ text-align: left;
1660
+ }
1661
+ .llm-chat-assistant-content th {
1662
+ background: ${surfaceSubtle};
1663
+ font-weight: 600;
1595
1664
  }
1596
1665
 
1597
1666
  /* Attachments in message */
@@ -1923,7 +1992,7 @@ function Chat({
1923
1992
  ] }),
1924
1993
  messages.map((msg, i) => /* @__PURE__ */ jsx3("div", { className: `llm-chat-bubble llm-chat-bubble--${msg.role}`, children: msg.role === "user" ? /* @__PURE__ */ jsxs3(Fragment3, { children: [
1925
1994
  msg.images && msg.images.length > 0 && /* @__PURE__ */ jsx3("div", { className: "llm-chat-msg-images", children: msg.images.map((img) => /* @__PURE__ */ jsx3("img", { src: img.dataUrl, className: "llm-chat-msg-img", alt: "attachment" }, img.id)) }),
1926
- /* @__PURE__ */ jsx3("div", { className: "llm-chat-user-content", children: msg.content })
1995
+ /* @__PURE__ */ jsx3("div", { className: "llm-chat-user-content", style: { padding: "0px" }, children: /* @__PURE__ */ jsx3("div", { className: "llm-chat-assistant-content", style: { padding: "10px 14px" }, children: /* @__PURE__ */ jsx3(Streamdown, { plugins: { code, mermaid }, children: msg.content }) }) })
1927
1996
  ] }) : /* @__PURE__ */ jsx3("div", { className: "llm-chat-assistant-content", children: /* @__PURE__ */ jsx3(
1928
1997
  Streamdown,
1929
1998
  {
package/dist/index.js CHANGED
@@ -26,7 +26,7 @@ import {
26
26
  useCompletion,
27
27
  useLLM,
28
28
  useStream
29
- } from "./chunk-PNVU6364.js";
29
+ } from "./chunk-365XIJLC.js";
30
30
  export {
31
31
  Chat,
32
32
  ChatInput,
@@ -9,7 +9,7 @@ import {
9
9
  useCompletion,
10
10
  useLLM,
11
11
  useStream
12
- } from "../chunk-PNVU6364.js";
12
+ } from "../chunk-365XIJLC.js";
13
13
  export {
14
14
  Chat,
15
15
  ChatApp,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@blank-utils/llm",
3
- "version": "0.3.3",
3
+ "version": "0.3.4",
4
4
  "description": "Run LLMs directly in your browser with WebGPU acceleration. Supports React hooks and eager background loading.",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",