pi-studio 0.9.1 → 0.9.3
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/CHANGELOG.md +17 -0
- package/README.md +3 -1
- package/client/studio-client.js +389 -57
- package/client/studio.css +287 -3
- package/index.ts +288 -323
- package/package.json +1 -1
package/client/studio.css
CHANGED
|
@@ -59,6 +59,30 @@
|
|
|
59
59
|
flex-wrap: wrap;
|
|
60
60
|
}
|
|
61
61
|
|
|
62
|
+
.zen-mode-btn {
|
|
63
|
+
font-weight: inherit;
|
|
64
|
+
white-space: nowrap;
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
body.studio-zen-mode > header {
|
|
68
|
+
padding: 8px 12px;
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
body.studio-zen-mode .app-subtitle {
|
|
72
|
+
display: none;
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
body.studio-zen-mode > header .controls > :not(#zenModeBtn) {
|
|
76
|
+
display: none !important;
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
body.studio-zen-mode #zenModeBtn {
|
|
80
|
+
background: var(--panel);
|
|
81
|
+
border-color: var(--control-border);
|
|
82
|
+
color: var(--text);
|
|
83
|
+
font-weight: inherit;
|
|
84
|
+
}
|
|
85
|
+
|
|
62
86
|
.export-preview-controls {
|
|
63
87
|
position: relative;
|
|
64
88
|
display: inline-flex;
|
|
@@ -465,6 +489,11 @@
|
|
|
465
489
|
background: var(--reference-badge-bg, var(--panel));
|
|
466
490
|
}
|
|
467
491
|
|
|
492
|
+
body.studio-zen-mode .reference-meta,
|
|
493
|
+
body.studio-zen-mode #responseActions {
|
|
494
|
+
display: none !important;
|
|
495
|
+
}
|
|
496
|
+
|
|
468
497
|
body.studio-ui-refresh #rightPane .reference-meta .source-badge {
|
|
469
498
|
border-color: var(--border-subtle);
|
|
470
499
|
color: var(--studio-info-text, var(--muted));
|
|
@@ -1479,6 +1508,14 @@
|
|
|
1479
1508
|
font-size: 12px;
|
|
1480
1509
|
}
|
|
1481
1510
|
|
|
1511
|
+
.rendered-markdown .studio-pdf-card-title-group {
|
|
1512
|
+
min-width: 0;
|
|
1513
|
+
flex: 1 1 auto;
|
|
1514
|
+
display: inline-flex;
|
|
1515
|
+
align-items: center;
|
|
1516
|
+
gap: 8px;
|
|
1517
|
+
}
|
|
1518
|
+
|
|
1482
1519
|
.rendered-markdown .studio-pdf-card-title {
|
|
1483
1520
|
min-width: 0;
|
|
1484
1521
|
overflow: hidden;
|
|
@@ -1488,12 +1525,72 @@
|
|
|
1488
1525
|
color: var(--text);
|
|
1489
1526
|
}
|
|
1490
1527
|
|
|
1491
|
-
.rendered-markdown .studio-pdf-card-
|
|
1528
|
+
.rendered-markdown .studio-pdf-card-actions {
|
|
1529
|
+
flex: 0 0 auto;
|
|
1530
|
+
display: inline-flex;
|
|
1531
|
+
align-items: center;
|
|
1532
|
+
gap: 8px;
|
|
1533
|
+
}
|
|
1534
|
+
|
|
1535
|
+
.rendered-markdown .studio-pdf-card-link,
|
|
1536
|
+
.rendered-markdown .studio-pdf-card-action {
|
|
1492
1537
|
flex: 0 0 auto;
|
|
1493
1538
|
font-size: 12px;
|
|
1494
1539
|
font-weight: 600;
|
|
1495
1540
|
}
|
|
1496
1541
|
|
|
1542
|
+
.rendered-markdown a.studio-pdf-card-link {
|
|
1543
|
+
min-height: 29px;
|
|
1544
|
+
display: inline-flex;
|
|
1545
|
+
align-items: center;
|
|
1546
|
+
padding: 0 7px;
|
|
1547
|
+
border: 1px solid transparent;
|
|
1548
|
+
border-radius: 7px;
|
|
1549
|
+
color: var(--studio-info-text, var(--muted));
|
|
1550
|
+
text-decoration: none;
|
|
1551
|
+
line-height: 1.2;
|
|
1552
|
+
}
|
|
1553
|
+
|
|
1554
|
+
.rendered-markdown a.studio-pdf-card-link:hover,
|
|
1555
|
+
.rendered-markdown a.studio-pdf-card-link:focus-visible {
|
|
1556
|
+
background: var(--panel);
|
|
1557
|
+
color: var(--text);
|
|
1558
|
+
border-color: var(--control-border);
|
|
1559
|
+
text-decoration: none;
|
|
1560
|
+
}
|
|
1561
|
+
|
|
1562
|
+
.rendered-markdown button.studio-pdf-card-action {
|
|
1563
|
+
min-height: 0;
|
|
1564
|
+
padding: 3px 7px;
|
|
1565
|
+
border-radius: 7px;
|
|
1566
|
+
background: transparent;
|
|
1567
|
+
color: var(--studio-info-text, var(--muted));
|
|
1568
|
+
border-color: transparent;
|
|
1569
|
+
line-height: 1.2;
|
|
1570
|
+
}
|
|
1571
|
+
|
|
1572
|
+
.rendered-markdown button.studio-pdf-card-action:not(:disabled):hover,
|
|
1573
|
+
.rendered-markdown button.studio-pdf-card-action:focus-visible {
|
|
1574
|
+
background: var(--panel);
|
|
1575
|
+
color: var(--text);
|
|
1576
|
+
border-color: var(--control-border);
|
|
1577
|
+
}
|
|
1578
|
+
|
|
1579
|
+
.rendered-markdown button.studio-pdf-card-focus {
|
|
1580
|
+
width: 29px;
|
|
1581
|
+
min-width: 29px;
|
|
1582
|
+
min-height: 29px;
|
|
1583
|
+
padding: 0;
|
|
1584
|
+
display: inline-flex;
|
|
1585
|
+
align-items: center;
|
|
1586
|
+
justify-content: center;
|
|
1587
|
+
}
|
|
1588
|
+
|
|
1589
|
+
.rendered-markdown button.studio-pdf-card-focus .studio-refresh-icon {
|
|
1590
|
+
width: 15px;
|
|
1591
|
+
height: 15px;
|
|
1592
|
+
}
|
|
1593
|
+
|
|
1497
1594
|
.rendered-markdown .studio-pdf-card-caption {
|
|
1498
1595
|
padding: 8px 10px 0;
|
|
1499
1596
|
color: var(--studio-info-text, var(--muted));
|
|
@@ -1514,6 +1611,162 @@
|
|
|
1514
1611
|
background: #fff;
|
|
1515
1612
|
}
|
|
1516
1613
|
|
|
1614
|
+
body.studio-pdf-focus-open {
|
|
1615
|
+
overflow: hidden;
|
|
1616
|
+
}
|
|
1617
|
+
|
|
1618
|
+
.studio-pdf-focus-overlay {
|
|
1619
|
+
position: fixed;
|
|
1620
|
+
inset: 0;
|
|
1621
|
+
z-index: 70;
|
|
1622
|
+
display: flex;
|
|
1623
|
+
align-items: center;
|
|
1624
|
+
justify-content: center;
|
|
1625
|
+
padding: clamp(12px, 2.4vw, 28px);
|
|
1626
|
+
background: var(--backdrop-bg);
|
|
1627
|
+
backdrop-filter: blur(3px);
|
|
1628
|
+
}
|
|
1629
|
+
|
|
1630
|
+
.studio-pdf-focus-overlay[hidden] {
|
|
1631
|
+
display: none !important;
|
|
1632
|
+
}
|
|
1633
|
+
|
|
1634
|
+
.studio-pdf-focus-dialog {
|
|
1635
|
+
width: min(96vw, 1440px);
|
|
1636
|
+
height: min(92vh, 1080px);
|
|
1637
|
+
min-height: 420px;
|
|
1638
|
+
display: flex;
|
|
1639
|
+
flex-direction: column;
|
|
1640
|
+
border: 1px solid var(--panel-border);
|
|
1641
|
+
border-radius: 14px;
|
|
1642
|
+
background: var(--panel);
|
|
1643
|
+
box-shadow: 0 24px 70px var(--shadow-color);
|
|
1644
|
+
overflow: hidden;
|
|
1645
|
+
}
|
|
1646
|
+
|
|
1647
|
+
.studio-pdf-focus-dialog:fullscreen {
|
|
1648
|
+
width: 100vw;
|
|
1649
|
+
height: 100vh;
|
|
1650
|
+
border-radius: 0;
|
|
1651
|
+
border: 0;
|
|
1652
|
+
}
|
|
1653
|
+
|
|
1654
|
+
.studio-pdf-focus-header {
|
|
1655
|
+
flex: 0 0 auto;
|
|
1656
|
+
display: flex;
|
|
1657
|
+
align-items: center;
|
|
1658
|
+
justify-content: space-between;
|
|
1659
|
+
gap: 12px;
|
|
1660
|
+
padding: 9px 12px;
|
|
1661
|
+
border-bottom: 1px solid var(--panel-border);
|
|
1662
|
+
background: var(--panel-2);
|
|
1663
|
+
}
|
|
1664
|
+
|
|
1665
|
+
.studio-pdf-focus-title-group {
|
|
1666
|
+
min-width: 0;
|
|
1667
|
+
flex: 1 1 auto;
|
|
1668
|
+
display: inline-flex;
|
|
1669
|
+
align-items: center;
|
|
1670
|
+
gap: 8px;
|
|
1671
|
+
}
|
|
1672
|
+
|
|
1673
|
+
.studio-pdf-focus-title {
|
|
1674
|
+
min-width: 0;
|
|
1675
|
+
overflow: hidden;
|
|
1676
|
+
text-overflow: ellipsis;
|
|
1677
|
+
white-space: nowrap;
|
|
1678
|
+
font-size: 13px;
|
|
1679
|
+
font-weight: 600;
|
|
1680
|
+
color: var(--text);
|
|
1681
|
+
}
|
|
1682
|
+
|
|
1683
|
+
.studio-pdf-focus-actions {
|
|
1684
|
+
flex: 0 0 auto;
|
|
1685
|
+
display: inline-flex;
|
|
1686
|
+
align-items: center;
|
|
1687
|
+
gap: 8px;
|
|
1688
|
+
}
|
|
1689
|
+
|
|
1690
|
+
.studio-pdf-focus-link,
|
|
1691
|
+
.studio-pdf-focus-btn {
|
|
1692
|
+
font-size: 12px;
|
|
1693
|
+
font-weight: 600;
|
|
1694
|
+
white-space: nowrap;
|
|
1695
|
+
}
|
|
1696
|
+
|
|
1697
|
+
.studio-pdf-focus-link {
|
|
1698
|
+
min-height: 29px;
|
|
1699
|
+
display: inline-flex;
|
|
1700
|
+
align-items: center;
|
|
1701
|
+
padding: 0 8px;
|
|
1702
|
+
border: 1px solid transparent;
|
|
1703
|
+
border-radius: 8px;
|
|
1704
|
+
color: var(--studio-info-text, var(--muted));
|
|
1705
|
+
text-decoration: none;
|
|
1706
|
+
}
|
|
1707
|
+
|
|
1708
|
+
.studio-pdf-focus-link:hover,
|
|
1709
|
+
.studio-pdf-focus-link:focus-visible {
|
|
1710
|
+
background: var(--panel);
|
|
1711
|
+
border-color: var(--control-border);
|
|
1712
|
+
color: var(--text);
|
|
1713
|
+
text-decoration: none;
|
|
1714
|
+
}
|
|
1715
|
+
|
|
1716
|
+
.studio-pdf-focus-btn {
|
|
1717
|
+
display: inline-flex;
|
|
1718
|
+
align-items: center;
|
|
1719
|
+
gap: 6px;
|
|
1720
|
+
padding: 5px 8px;
|
|
1721
|
+
border-radius: 8px;
|
|
1722
|
+
background: transparent;
|
|
1723
|
+
border-color: transparent;
|
|
1724
|
+
color: var(--studio-info-text, var(--muted));
|
|
1725
|
+
}
|
|
1726
|
+
|
|
1727
|
+
.studio-pdf-focus-btn:not(:disabled):hover,
|
|
1728
|
+
.studio-pdf-focus-btn:focus-visible {
|
|
1729
|
+
background: var(--panel);
|
|
1730
|
+
border-color: var(--control-border);
|
|
1731
|
+
color: var(--text);
|
|
1732
|
+
}
|
|
1733
|
+
|
|
1734
|
+
.studio-pdf-focus-btn .studio-refresh-icon {
|
|
1735
|
+
width: 14px;
|
|
1736
|
+
height: 14px;
|
|
1737
|
+
}
|
|
1738
|
+
|
|
1739
|
+
.studio-pdf-focus-fullscreen,
|
|
1740
|
+
.studio-pdf-focus-close {
|
|
1741
|
+
width: 29px;
|
|
1742
|
+
min-width: 29px;
|
|
1743
|
+
min-height: 29px;
|
|
1744
|
+
padding: 0;
|
|
1745
|
+
justify-content: center;
|
|
1746
|
+
gap: 0;
|
|
1747
|
+
}
|
|
1748
|
+
|
|
1749
|
+
.studio-pdf-focus-fullscreen .studio-refresh-icon,
|
|
1750
|
+
.studio-pdf-focus-close .studio-refresh-icon {
|
|
1751
|
+
width: 15px;
|
|
1752
|
+
height: 15px;
|
|
1753
|
+
}
|
|
1754
|
+
|
|
1755
|
+
.studio-pdf-focus-frame-slot {
|
|
1756
|
+
flex: 1 1 auto;
|
|
1757
|
+
min-height: 0;
|
|
1758
|
+
display: flex;
|
|
1759
|
+
}
|
|
1760
|
+
|
|
1761
|
+
.studio-pdf-focus-frame {
|
|
1762
|
+
flex: 1 1 auto;
|
|
1763
|
+
width: 100%;
|
|
1764
|
+
min-height: 0;
|
|
1765
|
+
height: auto !important;
|
|
1766
|
+
border: 0;
|
|
1767
|
+
background: #fff;
|
|
1768
|
+
}
|
|
1769
|
+
|
|
1517
1770
|
.rendered-markdown .studio-html-artifact-shell {
|
|
1518
1771
|
display: flex;
|
|
1519
1772
|
flex-direction: column;
|
|
@@ -2666,6 +2919,18 @@
|
|
|
2666
2919
|
background: var(--panel);
|
|
2667
2920
|
}
|
|
2668
2921
|
|
|
2922
|
+
body.studio-zen-mode footer {
|
|
2923
|
+
min-height: 28px;
|
|
2924
|
+
padding: 5px 12px;
|
|
2925
|
+
grid-template-columns: minmax(0, 1fr);
|
|
2926
|
+
grid-template-areas: "status";
|
|
2927
|
+
}
|
|
2928
|
+
|
|
2929
|
+
body.studio-zen-mode .footer-meta,
|
|
2930
|
+
body.studio-zen-mode .shortcut-hint {
|
|
2931
|
+
display: none !important;
|
|
2932
|
+
}
|
|
2933
|
+
|
|
2669
2934
|
body.scratchpad-open {
|
|
2670
2935
|
overflow: hidden;
|
|
2671
2936
|
}
|
|
@@ -3064,7 +3329,7 @@
|
|
|
3064
3329
|
}
|
|
3065
3330
|
}
|
|
3066
3331
|
|
|
3067
|
-
/* Default
|
|
3332
|
+
/* Default Studio layout. The legacy classic layout remains available only via ?uiRefresh=0. */
|
|
3068
3333
|
body.studio-ui-refresh {
|
|
3069
3334
|
--studio-editor-font-size: 12px;
|
|
3070
3335
|
--studio-editor-line-number-font-size: 11px;
|
|
@@ -3097,6 +3362,10 @@
|
|
|
3097
3362
|
gap: 5px;
|
|
3098
3363
|
}
|
|
3099
3364
|
|
|
3365
|
+
body.studio-ui-refresh.studio-zen-mode > header {
|
|
3366
|
+
padding: 7px 12px;
|
|
3367
|
+
}
|
|
3368
|
+
|
|
3100
3369
|
body.studio-ui-refresh > header button,
|
|
3101
3370
|
body.studio-ui-refresh > header .file-label,
|
|
3102
3371
|
body.studio-ui-refresh #responseActions button,
|
|
@@ -3210,7 +3479,7 @@
|
|
|
3210
3479
|
flex: 0 0 1px;
|
|
3211
3480
|
}
|
|
3212
3481
|
|
|
3213
|
-
|
|
3482
|
+
.studio-refresh-icon {
|
|
3214
3483
|
width: 15px;
|
|
3215
3484
|
height: 15px;
|
|
3216
3485
|
stroke: currentColor;
|
|
@@ -3350,6 +3619,21 @@
|
|
|
3350
3619
|
border-radius: 8px;
|
|
3351
3620
|
}
|
|
3352
3621
|
|
|
3622
|
+
body.studio-zen-mode #reviewNotesBtn,
|
|
3623
|
+
body.studio-zen-mode #outlineBtn,
|
|
3624
|
+
body.studio-zen-mode #scratchpadBtn,
|
|
3625
|
+
body.studio-zen-mode #exportPreviewControls,
|
|
3626
|
+
body.studio-zen-mode #exportPdfBtn,
|
|
3627
|
+
body.studio-zen-mode .studio-refresh-tool-tab,
|
|
3628
|
+
body.studio-zen-mode .studio-refresh-toolbar-state,
|
|
3629
|
+
body.studio-zen-mode .studio-refresh-toolbar-actions .studio-refresh-action-line:nth-child(n+2),
|
|
3630
|
+
body.studio-zen-mode .source-actions-row:nth-child(n+2),
|
|
3631
|
+
body.studio-zen-mode #copyDraftBtn,
|
|
3632
|
+
body.studio-zen-mode #openCompanionBtn,
|
|
3633
|
+
body.studio-zen-mode #sendEditorBtn {
|
|
3634
|
+
display: none !important;
|
|
3635
|
+
}
|
|
3636
|
+
|
|
3353
3637
|
body.studio-ui-refresh #reviewNotesBtn,
|
|
3354
3638
|
body.studio-ui-refresh #outlineBtn,
|
|
3355
3639
|
body.studio-ui-refresh #scratchpadBtn,
|