@livelayer/react 0.18.3 → 0.20.0

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/styles.css CHANGED
@@ -1800,3 +1800,82 @@
1800
1800
  0%, 100% { opacity: 1; transform: scale(1); }
1801
1801
  50% { opacity: 0.55; transform: scale(0.7); }
1802
1802
  }
1803
+
1804
+ /* ── Drag + resize (0.19.0) ────────────────────────────────────────
1805
+ Lets the visitor move the floating widget off page content (phone
1806
+ number, CTA) and resize it. Geometry lives as an INLINE style
1807
+ override applied by useDragAndResize ONLY after the visitor actually
1808
+ drags/resizes (or a saved geometry is restored) — until then this
1809
+ stylesheet's media-query sizing + .ll-widget[data-position] corner
1810
+ anchoring stay in charge so there's no first-paint flash. These rules
1811
+ only style the handles + interaction affordances; they never set box
1812
+ dimensions or position. */
1813
+
1814
+ /* Drag handle = the expanded header row. `data-ll-drag-handle` is set by
1815
+ the hook only when dragging is enabled, so the grab cursor + page-scroll
1816
+ suppression apply exactly when a drag can actually start. */
1817
+ .ll-widget [data-ll-drag-handle] {
1818
+ cursor: grab;
1819
+ /* Stop touch-drag on the handle from scrolling the page. */
1820
+ touch-action: none;
1821
+ }
1822
+ .ll-widget.is-dragging [data-ll-drag-handle] {
1823
+ cursor: grabbing;
1824
+ }
1825
+
1826
+ /* While dragging OR resizing, kill text selection across the whole widget
1827
+ so a fast pointer drag doesn't paint a selection over the header copy /
1828
+ transcript pills, and drop transitions so the surface tracks the pointer
1829
+ 1:1 instead of easing behind it. */
1830
+ .ll-widget.is-dragging,
1831
+ .ll-widget.is-resizing,
1832
+ .ll-widget.is-dragging *,
1833
+ .ll-widget.is-resizing * {
1834
+ user-select: none;
1835
+ -webkit-user-select: none;
1836
+ }
1837
+ .ll-widget.is-dragging .ll-expanded,
1838
+ .ll-widget.is-resizing .ll-expanded {
1839
+ transition: none;
1840
+ }
1841
+
1842
+ /* Resize grip — bottom-right corner of the expanded surface. Conventional
1843
+ placement (opposite the top-left the box grows from) and the diagonal
1844
+ double-chevron glyph reads as "drag to resize" without a tooltip. The
1845
+ element sits above the bottom toolbar (z-index) but is small enough not
1846
+ to cover the end-call button. */
1847
+ .ll-expanded__resize-grip {
1848
+ position: absolute;
1849
+ right: 0;
1850
+ bottom: 0;
1851
+ z-index: 6;
1852
+ width: 22px;
1853
+ height: 22px;
1854
+ display: flex;
1855
+ align-items: flex-end;
1856
+ justify-content: flex-end;
1857
+ padding: 3px;
1858
+ color: rgba(255, 255, 255, 0.55);
1859
+ cursor: nwse-resize;
1860
+ /* Stop touch-drag on the grip from scrolling the page. */
1861
+ touch-action: none;
1862
+ /* The grip is a pointer-only nicety; never let it capture selection. */
1863
+ user-select: none;
1864
+ -webkit-user-select: none;
1865
+ transition: color 0.15s ease;
1866
+ }
1867
+ .ll-expanded__resize-grip:hover {
1868
+ color: rgba(255, 255, 255, 0.9);
1869
+ }
1870
+ .ll-expanded__resize-grip > svg {
1871
+ display: block;
1872
+ pointer-events: none;
1873
+ }
1874
+
1875
+ /* Once the visitor has set an explicit geometry, the inline width/height
1876
+ override the media-query box dims. We pin position:fixed inline too (the
1877
+ hook sets it) so this class is mostly a hook for host CSS / tests; no
1878
+ dimensional rules live here on purpose — geometry is the inline layer. */
1879
+ .ll-widget--has-geometry {
1880
+ /* intentionally empty — see comment above. */
1881
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@livelayer/react",
3
- "version": "0.18.3",
3
+ "version": "0.20.0",
4
4
  "description": "LiveLayer agent widget for React — avatar video, team switching, responsive layouts, full-fidelity embed",
5
5
  "keywords": [
6
6
  "livelayer",