@helpway/react 0.15.1 → 0.15.2

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@helpway/react",
3
- "version": "0.15.1",
3
+ "version": "0.15.2",
4
4
  "description": "Official React SDK for Helpway — drop-in AI chat support widget with headless hooks for custom UIs.",
5
5
  "keywords": [
6
6
  "helpway",
@@ -1576,8 +1576,12 @@
1576
1576
  (Slack, iMessage, Linear all land here); the picture becomes a hint that a
1577
1577
  destination exists rather than the destination's billboard. */
1578
1578
  .hw-link-preview {
1579
+ /* Column, not row. A 64px square crop of a documentation page is a square of
1580
+ white with two grey lines in it — it showed nothing and read as unrelated to
1581
+ the answer above it. A short wide strip anchored to the TOP of the capture
1582
+ shows the part that identifies the page: its heading. */
1579
1583
  display: flex;
1580
- align-items: stretch;
1584
+ flex-direction: column;
1581
1585
  gap: 0;
1582
1586
  border: 1px solid var(--hw-border, rgba(0, 0, 0, 0.08));
1583
1587
  border-radius: 10px;
@@ -1593,13 +1597,13 @@
1593
1597
  }
1594
1598
 
1595
1599
  .hw-link-preview-img {
1596
- width: 64px;
1597
- /* Square and self-stretching: a fixed height would letterbox a 1200x630 OG
1598
- image, and `stretch` keeps the thumbnail flush with however tall the text
1599
- beside it turns out to be. */
1600
- min-height: 100%;
1601
- flex: 0 0 64px;
1600
+ width: 100%;
1601
+ /* Wide and short. `object-position: top` is the load-bearing half: centred,
1602
+ a tall page capture crops to its blank middle. */
1603
+ height: 56px;
1604
+ flex: 0 0 56px;
1602
1605
  object-fit: cover;
1606
+ object-position: top;
1603
1607
  /* The border-radius lives on the card; without this the image's own corner
1604
1608
  pokes through the rounded edge on Safari. */
1605
1609
  border-radius: 0;
@@ -1660,7 +1664,9 @@
1660
1664
  display: flex;
1661
1665
  flex-direction: column;
1662
1666
  gap: 6px;
1663
- max-width: 280px;
1667
+ /* Narrower than the bubble on purpose: the card is a pointer to somewhere
1668
+ else, not a second paragraph, and at 280px it competed with the answer. */
1669
+ max-width: 240px;
1664
1670
  }
1665
1671
 
1666
1672
  /* ════════════════════════════════════════════════
@@ -4165,10 +4171,20 @@
4165
4171
  font-style: italic;
4166
4172
  }
4167
4173
  .hw-msg-bubble a {
4168
- color: var(--hw-primary);
4174
+ /* --hw-primary is #171717 and the docked glass block never redefines it, so a
4175
+ link in an answer rendered near-black on a dark translucent panel. Links
4176
+ take the surrounding ink instead and earn their affordance from the
4177
+ underline, which works on every ground this panel can sit on. */
4178
+ color: inherit;
4169
4179
  text-decoration: underline;
4180
+ text-decoration-thickness: 1px;
4170
4181
  text-underline-offset: 2px;
4171
- word-break: break-all;
4182
+ text-decoration-color: color-mix(in srgb, currentColor 45%, transparent);
4183
+ /* `break-all` cut URLs mid-word — "framew | orks". `anywhere` breaks only
4184
+ when a line genuinely cannot fit, and prefers the slashes and dots a URL
4185
+ already offers. */
4186
+ word-break: normal;
4187
+ overflow-wrap: anywhere;
4172
4188
  }
4173
4189
  .hw-msg-bubble a:hover {
4174
4190
  opacity: 0.8;