@ai-matrx/meet 0.7.2 → 0.7.5

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
@@ -1330,3 +1330,525 @@
1330
1330
  .mx-meet-list__action:hover {
1331
1331
  background: var(--mx-meet-bg-hover);
1332
1332
  }
1333
+
1334
+ /* ---------- Meet wave 2: menus, reactions, notices, settings ---------- */
1335
+
1336
+ .mx-meet__anchor {
1337
+ position: relative;
1338
+ display: inline-flex;
1339
+ }
1340
+
1341
+ .mx-meet__popover {
1342
+ z-index: 30;
1343
+ min-width: 220px;
1344
+ max-width: calc(100vw - 16px);
1345
+ max-height: min(70dvh, 520px);
1346
+ overflow-y: auto;
1347
+ background: var(--mx-meet-bg-raised);
1348
+ color: var(--mx-meet-text);
1349
+ border: 1px solid var(--mx-meet-border);
1350
+ border-radius: var(--mx-meet-radius-sm);
1351
+ box-shadow: var(--mx-meet-shadow);
1352
+ padding: 6px;
1353
+ animation: mx-meet-pop var(--mx-meet-duration) var(--mx-meet-ease);
1354
+ }
1355
+
1356
+ @keyframes mx-meet-pop {
1357
+ from {
1358
+ opacity: 0;
1359
+ transform: translateY(4px);
1360
+ }
1361
+ to {
1362
+ opacity: 1;
1363
+ transform: translateY(0);
1364
+ }
1365
+ }
1366
+
1367
+ .mx-meet__emoji-bar {
1368
+ display: flex;
1369
+ gap: 2px;
1370
+ }
1371
+
1372
+ .mx-meet__emoji {
1373
+ width: 40px;
1374
+ height: 40px;
1375
+ border: none;
1376
+ border-radius: 999px;
1377
+ background: none;
1378
+ font-size: 22px;
1379
+ line-height: 1;
1380
+ cursor: pointer;
1381
+ transition: transform var(--mx-meet-duration) var(--mx-meet-ease),
1382
+ background var(--mx-meet-duration) var(--mx-meet-ease);
1383
+ }
1384
+
1385
+ .mx-meet__emoji:hover {
1386
+ background: var(--mx-meet-bg-hover);
1387
+ transform: scale(1.18);
1388
+ }
1389
+
1390
+ .mx-meet__menu {
1391
+ display: flex;
1392
+ flex-direction: column;
1393
+ }
1394
+
1395
+ .mx-meet__menu-item {
1396
+ display: flex;
1397
+ align-items: center;
1398
+ gap: 10px;
1399
+ min-height: 36px;
1400
+ padding: 6px 10px;
1401
+ border: none;
1402
+ border-radius: 8px;
1403
+ background: none;
1404
+ color: inherit;
1405
+ font: inherit;
1406
+ font-size: 14px;
1407
+ text-align: left;
1408
+ cursor: pointer;
1409
+ white-space: nowrap;
1410
+ }
1411
+
1412
+ .mx-meet__menu-item:hover,
1413
+ .mx-meet__menu-item:focus-visible {
1414
+ background: var(--mx-meet-bg-hover);
1415
+ outline: none;
1416
+ }
1417
+
1418
+ .mx-meet__menu-item--danger {
1419
+ color: var(--mx-meet-danger);
1420
+ }
1421
+
1422
+ .mx-meet__menu-sep {
1423
+ height: 1px;
1424
+ margin: 4px 6px;
1425
+ background: var(--mx-meet-border);
1426
+ }
1427
+
1428
+ .mx-meet__menu-form {
1429
+ display: flex;
1430
+ flex-direction: column;
1431
+ gap: 10px;
1432
+ padding: 6px;
1433
+ width: min(300px, calc(100vw - 32px));
1434
+ }
1435
+
1436
+ .mx-meet__menu-actions {
1437
+ display: flex;
1438
+ align-items: center;
1439
+ justify-content: flex-end;
1440
+ gap: 12px;
1441
+ }
1442
+
1443
+ .mx-meet__send--danger {
1444
+ background: var(--mx-meet-danger);
1445
+ }
1446
+
1447
+ .mx-meet__send--danger:hover {
1448
+ background: var(--mx-meet-danger-hover);
1449
+ }
1450
+
1451
+ .mx-meet__toast,
1452
+ .mx-meet__notice-bar {
1453
+ position: absolute;
1454
+ left: 50%;
1455
+ transform: translateX(-50%);
1456
+ z-index: 25;
1457
+ display: flex;
1458
+ align-items: center;
1459
+ gap: 10px;
1460
+ max-width: calc(100% - 32px);
1461
+ padding: 8px 8px 8px 14px;
1462
+ border-radius: 999px;
1463
+ background: var(--mx-meet-stage-label-bg);
1464
+ color: var(--mx-meet-stage-text);
1465
+ font-size: 14px;
1466
+ box-shadow: var(--mx-meet-shadow);
1467
+ animation: mx-meet-pop var(--mx-meet-duration) var(--mx-meet-ease);
1468
+ }
1469
+
1470
+ .mx-meet__toast {
1471
+ bottom: calc(var(--mx-meet-control-size) + 36px);
1472
+ }
1473
+
1474
+ .mx-meet__toast--failed {
1475
+ background: var(--mx-meet-danger);
1476
+ color: var(--mx-meet-text-on-accent);
1477
+ }
1478
+
1479
+ .mx-meet__notice-bar {
1480
+ top: 64px;
1481
+ }
1482
+
1483
+ .mx-meet__toast-close {
1484
+ display: inline-flex;
1485
+ align-items: center;
1486
+ justify-content: center;
1487
+ width: 28px;
1488
+ height: 28px;
1489
+ border: none;
1490
+ border-radius: 999px;
1491
+ background: none;
1492
+ color: inherit;
1493
+ cursor: pointer;
1494
+ }
1495
+
1496
+ .mx-meet__toast-close:hover {
1497
+ background: rgba(255, 255, 255, 0.14);
1498
+ }
1499
+
1500
+ .mx-meet__primary--small {
1501
+ min-height: 32px;
1502
+ padding: 0 14px;
1503
+ font-size: 14px;
1504
+ }
1505
+
1506
+ .mx-meet__sheet-backdrop {
1507
+ position: absolute;
1508
+ inset: 0;
1509
+ z-index: 40;
1510
+ display: flex;
1511
+ align-items: center;
1512
+ justify-content: center;
1513
+ background: rgba(0, 0, 0, 0.45);
1514
+ padding: 16px;
1515
+ }
1516
+
1517
+ .mx-meet__sheet {
1518
+ width: min(480px, 100%);
1519
+ max-height: 100%;
1520
+ overflow-y: auto;
1521
+ background: var(--mx-meet-bg);
1522
+ color: var(--mx-meet-text);
1523
+ border-radius: var(--mx-meet-radius);
1524
+ box-shadow: var(--mx-meet-shadow);
1525
+ }
1526
+
1527
+ .mx-meet__shortcuts {
1528
+ margin: 0;
1529
+ padding: 8px var(--mx-meet-space) var(--mx-meet-space);
1530
+ }
1531
+
1532
+ .mx-meet__shortcut {
1533
+ display: flex;
1534
+ align-items: center;
1535
+ justify-content: space-between;
1536
+ gap: 16px;
1537
+ padding: 8px 0;
1538
+ border-bottom: 1px solid var(--mx-meet-border);
1539
+ font-size: 14px;
1540
+ }
1541
+
1542
+ .mx-meet__shortcut:last-child {
1543
+ border-bottom: none;
1544
+ }
1545
+
1546
+ .mx-meet__shortcut dd {
1547
+ margin: 0;
1548
+ }
1549
+
1550
+ .mx-meet__kbd {
1551
+ display: inline-block;
1552
+ padding: 2px 8px;
1553
+ border: 1px solid var(--mx-meet-border-strong);
1554
+ border-radius: 6px;
1555
+ background: var(--mx-meet-bg-subtle);
1556
+ font-family: var(--mx-meet-font);
1557
+ font-size: 12px;
1558
+ white-space: nowrap;
1559
+ }
1560
+
1561
+ .mx-meet__tile-actions--open {
1562
+ opacity: 1;
1563
+ }
1564
+
1565
+ .mx-meet__tile-hand {
1566
+ position: absolute;
1567
+ top: 8px;
1568
+ left: 8px;
1569
+ display: inline-flex;
1570
+ align-items: center;
1571
+ gap: 4px;
1572
+ padding: 3px 8px;
1573
+ border-radius: 999px;
1574
+ background: var(--mx-meet-warning);
1575
+ color: var(--mx-meet-text-on-accent);
1576
+ font-size: 12px;
1577
+ font-weight: 600;
1578
+ }
1579
+
1580
+ .mx-meet__tile-flag {
1581
+ display: inline-flex;
1582
+ margin-right: 4px;
1583
+ color: var(--mx-meet-warning);
1584
+ }
1585
+
1586
+ .mx-meet__signal {
1587
+ display: inline-flex;
1588
+ color: var(--mx-meet-stage-text-muted);
1589
+ opacity: 0.7;
1590
+ }
1591
+
1592
+ .mx-meet__signal--poor {
1593
+ color: var(--mx-meet-warning);
1594
+ opacity: 1;
1595
+ }
1596
+
1597
+ .mx-meet__signal--lost {
1598
+ color: var(--mx-meet-danger);
1599
+ opacity: 1;
1600
+ }
1601
+
1602
+ .mx-meet__panel .mx-meet__signal {
1603
+ color: var(--mx-meet-text-faint);
1604
+ }
1605
+
1606
+ .mx-meet__section {
1607
+ display: flex;
1608
+ flex-direction: column;
1609
+ gap: 8px;
1610
+ }
1611
+
1612
+ .mx-meet__section-head {
1613
+ display: flex;
1614
+ align-items: center;
1615
+ justify-content: space-between;
1616
+ gap: 8px;
1617
+ }
1618
+
1619
+ .mx-meet__section-title {
1620
+ margin: 0;
1621
+ font-size: 13px;
1622
+ font-weight: 600;
1623
+ color: var(--mx-meet-text-muted);
1624
+ }
1625
+
1626
+ .mx-meet__queue {
1627
+ list-style: none;
1628
+ margin: 0;
1629
+ padding: 0;
1630
+ display: flex;
1631
+ flex-direction: column;
1632
+ gap: 6px;
1633
+ counter-reset: mx-meet-queue;
1634
+ }
1635
+
1636
+ .mx-meet__bulk {
1637
+ display: flex;
1638
+ flex-wrap: wrap;
1639
+ gap: 8px;
1640
+ }
1641
+
1642
+ .mx-meet__chip {
1643
+ display: inline-flex;
1644
+ align-items: center;
1645
+ gap: 6px;
1646
+ min-height: 32px;
1647
+ padding: 0 12px;
1648
+ border: 1px solid var(--mx-meet-border);
1649
+ border-radius: 999px;
1650
+ background: var(--mx-meet-bg-subtle);
1651
+ color: var(--mx-meet-text);
1652
+ font: inherit;
1653
+ font-size: 13px;
1654
+ cursor: pointer;
1655
+ align-self: flex-start;
1656
+ }
1657
+
1658
+ .mx-meet__chip:hover {
1659
+ background: var(--mx-meet-bg-hover);
1660
+ }
1661
+
1662
+ .mx-meet__chip:disabled {
1663
+ cursor: progress;
1664
+ opacity: 0.6;
1665
+ }
1666
+
1667
+ .mx-meet__search {
1668
+ display: flex;
1669
+ align-items: center;
1670
+ gap: 8px;
1671
+ padding: 0 12px;
1672
+ border: 1px solid var(--mx-meet-border);
1673
+ border-radius: var(--mx-meet-radius-sm);
1674
+ color: var(--mx-meet-text-faint);
1675
+ }
1676
+
1677
+ .mx-meet__input--bare {
1678
+ border: none;
1679
+ padding-left: 0;
1680
+ background: none;
1681
+ }
1682
+
1683
+ .mx-meet__input--bare:focus-visible {
1684
+ outline: none;
1685
+ }
1686
+
1687
+ .mx-meet__you {
1688
+ color: var(--mx-meet-text-faint);
1689
+ }
1690
+
1691
+ .mx-meet__composer--chat {
1692
+ flex-direction: column;
1693
+ align-items: stretch;
1694
+ margin-top: auto;
1695
+ position: sticky;
1696
+ bottom: 0;
1697
+ background: var(--mx-meet-bg);
1698
+ padding-top: 8px;
1699
+ }
1700
+
1701
+ .mx-meet__composer-row {
1702
+ display: flex;
1703
+ gap: 8px;
1704
+ align-items: center;
1705
+ }
1706
+
1707
+ .mx-meet__select--compact {
1708
+ min-height: 36px;
1709
+ padding: 6px 10px;
1710
+ flex: 0 0 auto;
1711
+ }
1712
+
1713
+ .mx-meet__chat-meta {
1714
+ display: flex;
1715
+ align-items: baseline;
1716
+ gap: 8px;
1717
+ font-size: 12px;
1718
+ color: var(--mx-meet-text-muted);
1719
+ }
1720
+
1721
+ .mx-meet__chat-meta strong {
1722
+ color: var(--mx-meet-text);
1723
+ font-size: 13px;
1724
+ }
1725
+
1726
+ .mx-meet__chat-meta time {
1727
+ margin-left: auto;
1728
+ color: var(--mx-meet-text-faint);
1729
+ }
1730
+
1731
+ .mx-meet__chat-private {
1732
+ color: var(--mx-meet-warning);
1733
+ }
1734
+
1735
+ .mx-meet__chat-text {
1736
+ white-space: pre-wrap;
1737
+ overflow-wrap: anywhere;
1738
+ }
1739
+
1740
+ .mx-meet__chat-line--private {
1741
+ padding: 6px 8px;
1742
+ border-radius: 8px;
1743
+ background: var(--mx-meet-bg-subtle);
1744
+ }
1745
+
1746
+ .mx-meet__chat-failed {
1747
+ font-size: 12px;
1748
+ color: var(--mx-meet-danger);
1749
+ }
1750
+
1751
+ .mx-meet__chat-pending {
1752
+ font-size: 12px;
1753
+ color: var(--mx-meet-text-faint);
1754
+ }
1755
+
1756
+ .mx-meet__meter {
1757
+ height: 6px;
1758
+ border-radius: 999px;
1759
+ background: var(--mx-meet-bg-active);
1760
+ overflow: hidden;
1761
+ }
1762
+
1763
+ .mx-meet__meter span {
1764
+ display: block;
1765
+ height: 100%;
1766
+ background: var(--mx-meet-speaking);
1767
+ transition: width 80ms linear;
1768
+ }
1769
+
1770
+ .mx-meet__meter--preview {
1771
+ position: absolute;
1772
+ left: 16px;
1773
+ right: 16px;
1774
+ bottom: 16px;
1775
+ background: rgba(255, 255, 255, 0.18);
1776
+ }
1777
+
1778
+ .mx-meet__preview {
1779
+ position: relative;
1780
+ }
1781
+
1782
+ .mx-meet__preview-note {
1783
+ position: absolute;
1784
+ left: 16px;
1785
+ right: 16px;
1786
+ top: 16px;
1787
+ margin: 0;
1788
+ padding: 8px 12px;
1789
+ border-radius: var(--mx-meet-radius-sm);
1790
+ background: var(--mx-meet-stage-label-bg);
1791
+ color: var(--mx-meet-stage-text);
1792
+ font-size: 13px;
1793
+ }
1794
+
1795
+ .mx-meet__video--mirror {
1796
+ transform: scaleX(-1);
1797
+ }
1798
+
1799
+ .mx-meet__field-row {
1800
+ display: flex;
1801
+ align-items: flex-end;
1802
+ gap: 8px;
1803
+ }
1804
+
1805
+ .mx-meet__field-row .mx-meet__field {
1806
+ flex: 1 1 auto;
1807
+ min-width: 0;
1808
+ }
1809
+
1810
+ .mx-meet__field-row .mx-meet__chip {
1811
+ min-height: 44px;
1812
+ align-self: flex-end;
1813
+ }
1814
+
1815
+ .mx-meet__hint {
1816
+ display: block;
1817
+ width: 100%;
1818
+ margin-left: 26px;
1819
+ font-size: 12px;
1820
+ color: var(--mx-meet-text-faint);
1821
+ }
1822
+
1823
+ .mx-meet__toggle:has(.mx-meet__hint) {
1824
+ flex-wrap: wrap;
1825
+ row-gap: 0;
1826
+ }
1827
+
1828
+ .mx-meet__pills {
1829
+ display: inline-flex;
1830
+ gap: 4px;
1831
+ padding: 3px;
1832
+ border-radius: 999px;
1833
+ background: var(--mx-meet-bg-subtle);
1834
+ border: 1px solid var(--mx-meet-border);
1835
+ align-self: flex-start;
1836
+ }
1837
+
1838
+ .mx-meet__pill {
1839
+ min-height: 32px;
1840
+ padding: 0 14px;
1841
+ border: none;
1842
+ border-radius: 999px;
1843
+ background: none;
1844
+ color: var(--mx-meet-text-muted);
1845
+ font: inherit;
1846
+ font-size: 13px;
1847
+ cursor: pointer;
1848
+ }
1849
+
1850
+ .mx-meet__pill--on {
1851
+ background: var(--mx-meet-bg-raised);
1852
+ color: var(--mx-meet-text);
1853
+ box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12);
1854
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ai-matrx/meet",
3
- "version": "0.7.2",
3
+ "version": "0.7.5",
4
4
  "description": "Enterprise, AI-native calls and meetings for Matrx clients: LiveKit Cloud rooms with server-minted tokens, instant ring/accept/decline, Zoom-grade meetings with durable links, lobby admission and guest join, host controls, Egress recording with enforced consent, live transcription and an AI note-taker on the platform agent system, and a drop-in polished React UI — signaling on @ai-matrx/realtime, invitations on @ai-matrx/messaging.",
5
5
  "type": "module",
6
6
  "main": "./dist/index.cjs",
@@ -60,12 +60,13 @@
60
60
  "./package.json": "./package.json"
61
61
  },
62
62
  "dependencies": {
63
+ "@livekit/track-processors": "^0.8.1",
63
64
  "livekit-client": "^2.22.3",
64
- "@ai-matrx/agents": "latest",
65
+ "@ai-matrx/messaging": "latest",
65
66
  "@ai-matrx/design-system": "latest",
66
67
  "@ai-matrx/kit": "latest",
67
- "@ai-matrx/messaging": "latest",
68
- "@ai-matrx/realtime": "latest"
68
+ "@ai-matrx/realtime": "latest",
69
+ "@ai-matrx/agents": "latest"
69
70
  },
70
71
  "devDependencies": {
71
72
  "@arethetypeswrong/cli": "^0.18.5",