aidevops 3.29.5 → 3.29.7

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.
@@ -1044,6 +1044,78 @@ code {
1044
1044
  min-width: 240px;
1045
1045
  }
1046
1046
 
1047
+ .notifications-menu {
1048
+ min-width: 320px;
1049
+ }
1050
+
1051
+ .notifications-menu-heading,
1052
+ .notification-preview {
1053
+ align-items: center;
1054
+ display: flex;
1055
+ }
1056
+
1057
+ .notifications-menu-heading {
1058
+ justify-content: space-between;
1059
+ padding: 2px 4px 6px;
1060
+ }
1061
+
1062
+ .notifications-menu-heading span {
1063
+ background: var(--surface-muted);
1064
+ border-radius: 999px;
1065
+ color: var(--text-muted);
1066
+ font-size: 0.76rem;
1067
+ font-weight: 900;
1068
+ padding: 4px 8px;
1069
+ text-transform: uppercase;
1070
+ }
1071
+
1072
+ .notification-preview {
1073
+ border: 1px solid var(--border);
1074
+ border-left: 4px solid var(--notification-color, var(--accent));
1075
+ border-radius: 12px;
1076
+ gap: 10px;
1077
+ padding: 10px;
1078
+ }
1079
+
1080
+ .notification-preview > span {
1081
+ color: var(--notification-color, var(--accent));
1082
+ }
1083
+
1084
+ .notification-preview strong,
1085
+ .notification-preview small {
1086
+ display: block;
1087
+ }
1088
+
1089
+ .notification-preview small {
1090
+ color: var(--text-muted);
1091
+ font-size: 0.74rem;
1092
+ text-transform: uppercase;
1093
+ }
1094
+
1095
+ .notification-preview.error,
1096
+ .github-notification-card.error {
1097
+ --notification-color: #cf222e;
1098
+ --notification-bg: rgb(207 34 46 / 10%);
1099
+ }
1100
+
1101
+ .notification-preview.warning,
1102
+ .github-notification-card.warning {
1103
+ --notification-color: #9a6700;
1104
+ --notification-bg: rgb(191 135 0 / 12%);
1105
+ }
1106
+
1107
+ .notification-preview.info,
1108
+ .github-notification-card.info {
1109
+ --notification-color: #0969da;
1110
+ --notification-bg: rgb(9 105 218 / 10%);
1111
+ }
1112
+
1113
+ .notification-preview.success,
1114
+ .github-notification-card.success {
1115
+ --notification-color: #1a7f37;
1116
+ --notification-bg: rgb(26 127 55 / 10%);
1117
+ }
1118
+
1047
1119
  .popover-menu button,
1048
1120
  .popover-menu a {
1049
1121
  align-items: center;
@@ -1440,6 +1512,112 @@ code {
1440
1512
  color: var(--text-muted);
1441
1513
  }
1442
1514
 
1515
+ .notifications-hero {
1516
+ background:
1517
+ linear-gradient(135deg, var(--notification-bg, color-mix(in srgb, var(--accent) 12%, transparent)), transparent 62%),
1518
+ var(--surface-elevated);
1519
+ }
1520
+
1521
+ .notification-summary-strip {
1522
+ display: flex;
1523
+ flex-wrap: wrap;
1524
+ gap: 8px;
1525
+ margin-top: 16px;
1526
+ }
1527
+
1528
+ .notification-summary-strip span,
1529
+ .notification-status-pill {
1530
+ background: var(--surface-muted);
1531
+ border: 1px solid var(--border);
1532
+ border-radius: 999px;
1533
+ color: var(--text-secondary);
1534
+ font-size: 0.8rem;
1535
+ font-weight: 800;
1536
+ padding: 6px 10px;
1537
+ }
1538
+
1539
+ .notification-summary-strip strong {
1540
+ color: var(--accent);
1541
+ }
1542
+
1543
+ .github-notification-list {
1544
+ display: grid;
1545
+ gap: 12px;
1546
+ list-style: none;
1547
+ margin: 0;
1548
+ padding: 0;
1549
+ }
1550
+
1551
+ .github-notification-card {
1552
+ background: var(--surface-elevated);
1553
+ border: 1px solid var(--border);
1554
+ border-left: 5px solid var(--notification-color, var(--accent));
1555
+ border-radius: 18px;
1556
+ box-shadow: var(--glass-panel-shadow);
1557
+ display: grid;
1558
+ gap: 12px;
1559
+ grid-template-columns: auto minmax(0, 1fr);
1560
+ padding: 16px;
1561
+ }
1562
+
1563
+ .github-notification-card.resolved {
1564
+ opacity: 0.78;
1565
+ }
1566
+
1567
+ .notification-state-icon {
1568
+ align-items: center;
1569
+ background: var(--notification-bg, var(--success-bg));
1570
+ border-radius: 999px;
1571
+ color: var(--notification-color, var(--accent));
1572
+ display: inline-flex;
1573
+ height: 38px;
1574
+ justify-content: center;
1575
+ width: 38px;
1576
+ }
1577
+
1578
+ .notification-state-icon svg {
1579
+ height: 20px;
1580
+ stroke-width: 2.5;
1581
+ width: 20px;
1582
+ }
1583
+
1584
+ .notification-card-body {
1585
+ display: grid;
1586
+ gap: 10px;
1587
+ min-width: 0;
1588
+ }
1589
+
1590
+ .notification-card-body header {
1591
+ align-items: start;
1592
+ display: flex;
1593
+ gap: 12px;
1594
+ justify-content: space-between;
1595
+ }
1596
+
1597
+ .notification-card-body h3,
1598
+ .notification-card-body p {
1599
+ margin: 0;
1600
+ }
1601
+
1602
+ .notification-card-body p {
1603
+ color: var(--text-secondary);
1604
+ }
1605
+
1606
+ .notification-card-body small {
1607
+ color: var(--text-muted);
1608
+ overflow-wrap: anywhere;
1609
+ }
1610
+
1611
+ .notification-actions {
1612
+ display: flex;
1613
+ flex-wrap: wrap;
1614
+ gap: 8px;
1615
+ }
1616
+
1617
+ .notification-actions .secondary-action {
1618
+ padding: 8px 10px;
1619
+ }
1620
+
1443
1621
  .metric-card span,
1444
1622
  .planned-home span,
1445
1623
  .data-row.header-row,
@@ -1691,38 +1869,122 @@ code {
1691
1869
  }
1692
1870
 
1693
1871
  .managed-app-list {
1694
- background: var(--surface-muted);
1695
- border: 1px solid var(--border);
1696
- border-radius: 16px;
1872
+ gap: 12px;
1697
1873
  margin-bottom: 12px;
1874
+ overflow: visible;
1875
+ }
1876
+
1877
+ .managed-app-card {
1878
+ background:
1879
+ linear-gradient(135deg, color-mix(in srgb, var(--accent) 7%, transparent), transparent 34%),
1880
+ var(--surface-muted);
1881
+ border: 1px solid var(--border);
1882
+ border-radius: 18px;
1883
+ box-shadow: inset 0 1px 0 rgb(255 255 255 / 7%);
1884
+ overflow: visible;
1698
1885
  }
1699
1886
 
1700
- .managed-app-row {
1887
+ .managed-app-card.expanded {
1888
+ border-color: color-mix(in srgb, var(--accent) 32%, var(--border));
1889
+ }
1890
+
1891
+ .managed-app-summary {
1892
+ align-items: center;
1893
+ background: transparent;
1894
+ border: 0;
1895
+ color: var(--text-primary);
1701
1896
  display: grid;
1702
- gap: 14px;
1703
- grid-template-columns: minmax(220px, 1.3fr) minmax(260px, 1.7fr) auto;
1704
- padding: 14px;
1897
+ gap: 16px;
1898
+ grid-template-columns: minmax(0, 1fr) auto;
1899
+ padding: 16px;
1900
+ text-align: left;
1901
+ width: 100%;
1705
1902
  }
1706
1903
 
1707
- .managed-app-row + .managed-app-row {
1708
- border-top: 1px solid var(--border);
1904
+ .managed-app-summary:hover,
1905
+ .managed-app-summary:focus-visible {
1906
+ background: color-mix(in srgb, var(--accent) 7%, transparent);
1907
+ outline: none;
1709
1908
  }
1710
1909
 
1711
- .managed-app-main,
1712
- .managed-app-main > div,
1910
+ .managed-app-title-block,
1713
1911
  .app-meta {
1714
1912
  display: grid;
1715
- gap: 6px;
1913
+ gap: 7px;
1716
1914
  min-width: 0;
1717
1915
  }
1718
1916
 
1719
- .managed-app-main h3,
1720
- .managed-app-main p {
1721
- margin: 0;
1917
+ .managed-app-title-block strong {
1918
+ font-size: clamp(1.12rem, 2vw, 1.4rem);
1919
+ letter-spacing: -0.04em;
1920
+ line-height: 1.15;
1722
1921
  }
1723
1922
 
1724
- .managed-app-main p:not(.eyebrow) {
1923
+ .managed-app-title-block > span:last-child {
1725
1924
  color: var(--text-secondary);
1925
+ max-width: 72ch;
1926
+ }
1927
+
1928
+ .managed-app-summary-meta {
1929
+ align-items: center;
1930
+ display: flex;
1931
+ flex-wrap: wrap;
1932
+ gap: 8px;
1933
+ justify-content: end;
1934
+ min-width: min(420px, 38vw);
1935
+ }
1936
+
1937
+ .managed-summary-chip {
1938
+ background: color-mix(in srgb, var(--surface-elevated) 92%, transparent);
1939
+ border: 1px solid var(--border);
1940
+ border-radius: 999px;
1941
+ display: inline-grid;
1942
+ gap: 1px;
1943
+ min-width: 118px;
1944
+ padding: 7px 11px;
1945
+ }
1946
+
1947
+ .managed-summary-chip small {
1948
+ color: var(--text-muted);
1949
+ font-size: 0.66rem;
1950
+ font-weight: 900;
1951
+ line-height: 1;
1952
+ text-transform: uppercase;
1953
+ }
1954
+
1955
+ .managed-summary-chip span {
1956
+ color: var(--text-primary);
1957
+ font-size: 0.84rem;
1958
+ font-weight: 800;
1959
+ max-width: 18ch;
1960
+ overflow: hidden;
1961
+ text-overflow: ellipsis;
1962
+ white-space: nowrap;
1963
+ }
1964
+
1965
+ .managed-app-chevron {
1966
+ color: var(--accent);
1967
+ flex: 0 0 auto;
1968
+ transition: transform 180ms ease;
1969
+ }
1970
+
1971
+ .managed-app-card.expanded .managed-app-chevron {
1972
+ transform: rotate(180deg);
1973
+ }
1974
+
1975
+ .managed-app-body {
1976
+ border-top: 1px solid var(--border);
1977
+ display: grid;
1978
+ gap: 14px;
1979
+ padding: 0 16px 16px;
1980
+ }
1981
+
1982
+ .managed-app-toolbar {
1983
+ align-items: start;
1984
+ display: grid;
1985
+ gap: 12px;
1986
+ grid-template-columns: minmax(0, 1fr) auto;
1987
+ padding-top: 14px;
1726
1988
  }
1727
1989
 
1728
1990
  .managed-app-links,
@@ -1733,6 +1995,10 @@ code {
1733
1995
  gap: 8px;
1734
1996
  }
1735
1997
 
1998
+ .managed-app-actions {
1999
+ justify-content: end;
2000
+ }
2001
+
1736
2002
  .managed-app-links a,
1737
2003
  .origin-missing {
1738
2004
  align-items: center;
@@ -1743,18 +2009,28 @@ code {
1743
2009
  font-size: 0.78rem;
1744
2010
  font-weight: 800;
1745
2011
  gap: 4px;
2012
+ max-width: 100%;
1746
2013
  padding: 6px 9px;
2014
+ position: relative;
1747
2015
  text-decoration: none;
1748
2016
  }
1749
2017
 
2018
+ .managed-app-links a:hover,
2019
+ .managed-app-links a:focus-visible {
2020
+ background: color-mix(in srgb, var(--accent) 12%, transparent);
2021
+ border-color: color-mix(in srgb, var(--accent) 48%, var(--border));
2022
+ color: var(--accent);
2023
+ outline: none;
2024
+ }
2025
+
1750
2026
  .origin-missing {
1751
2027
  color: var(--text-muted);
1752
2028
  }
1753
2029
 
1754
2030
  .managed-app-details {
1755
2031
  display: grid;
1756
- gap: 8px;
1757
- grid-template-columns: repeat(3, minmax(0, 1fr));
2032
+ gap: 10px;
2033
+ grid-template-columns: repeat(auto-fit, minmax(168px, 1fr));
1758
2034
  }
1759
2035
 
1760
2036
  .managed-toggle,
@@ -1763,7 +2039,8 @@ code {
1763
2039
  border: 1px solid var(--border);
1764
2040
  border-radius: 12px;
1765
2041
  min-width: 0;
1766
- padding: 8px 10px;
2042
+ min-height: 64px;
2043
+ padding: 10px 12px;
1767
2044
  }
1768
2045
 
1769
2046
  .managed-toggle {
@@ -1809,30 +2086,68 @@ code {
1809
2086
  .app-meta strong {
1810
2087
  color: var(--text-primary);
1811
2088
  font-size: 0.84rem;
2089
+ line-height: 1.35;
1812
2090
  overflow-wrap: anywhere;
2091
+ word-break: break-word;
1813
2092
  }
1814
2093
 
1815
2094
  .app-action-button {
1816
2095
  align-items: center;
1817
- border-radius: 12px;
2096
+ background: color-mix(in srgb, var(--accent) 16%, var(--surface-elevated));
2097
+ border: 1px solid color-mix(in srgb, var(--accent) 48%, var(--border));
2098
+ border-radius: 999px;
2099
+ color: var(--accent);
1818
2100
  display: inline-flex;
1819
- height: 38px;
2101
+ gap: 7px;
2102
+ min-height: 42px;
1820
2103
  justify-content: center;
1821
- padding: 0;
1822
- width: 38px;
2104
+ padding: 0 12px;
2105
+ position: relative;
2106
+ transition: background 140ms ease, border-color 140ms ease, color 140ms ease, transform 140ms ease;
2107
+ }
2108
+
2109
+ .app-action-button span {
2110
+ font-size: 0.7rem;
2111
+ font-weight: 900;
2112
+ text-transform: uppercase;
2113
+ }
2114
+
2115
+ .app-action-button:hover,
2116
+ .app-action-button:focus-visible {
2117
+ background: var(--accent);
2118
+ border-color: var(--accent);
2119
+ color: var(--bg-primary);
2120
+ outline: none;
2121
+ transform: translateY(-1px);
2122
+ }
2123
+
2124
+ .app-action-button.remove {
2125
+ background: color-mix(in srgb, #ef4444 12%, var(--surface-elevated));
2126
+ border-color: color-mix(in srgb, #ef4444 45%, var(--border));
2127
+ color: #ff8a8a;
2128
+ }
2129
+
2130
+ .app-action-button.remove:hover,
2131
+ .app-action-button.remove:focus-visible {
2132
+ background: #ef4444;
2133
+ border-color: #ef4444;
2134
+ color: white;
1823
2135
  }
1824
2136
 
1825
2137
  .app-action-button:disabled {
1826
2138
  color: var(--text-muted);
1827
2139
  cursor: not-allowed;
1828
2140
  opacity: 0.45;
2141
+ transform: none;
1829
2142
  }
1830
2143
 
1831
2144
  .app-terminal {
1832
- background: var(--code-bg);
2145
+ background:
2146
+ linear-gradient(180deg, rgb(255 255 255 / 4%), transparent),
2147
+ #050806;
1833
2148
  border: 1px solid var(--border);
1834
2149
  border-radius: 16px;
1835
- color: var(--text-secondary);
2150
+ color: color-mix(in srgb, var(--accent) 78%, white);
1836
2151
  overflow: hidden;
1837
2152
  }
1838
2153
 
@@ -1840,16 +2155,57 @@ code {
1840
2155
  align-items: center;
1841
2156
  border-bottom: 1px solid var(--border);
1842
2157
  display: flex;
2158
+ gap: 12px;
1843
2159
  justify-content: space-between;
1844
2160
  padding: 10px 12px;
1845
2161
  }
1846
2162
 
2163
+ .app-terminal header span {
2164
+ color: var(--text-muted);
2165
+ text-align: right;
2166
+ }
2167
+
1847
2168
  .app-terminal pre {
1848
2169
  margin: 0;
1849
- max-height: 360px;
2170
+ max-height: 240px;
1850
2171
  overflow: auto;
1851
2172
  padding: 12px;
1852
2173
  white-space: pre-wrap;
2174
+ word-break: break-word;
2175
+ }
2176
+
2177
+ [data-tooltip] {
2178
+ position: relative;
2179
+ }
2180
+
2181
+ [data-tooltip]::after {
2182
+ background: color-mix(in srgb, var(--surface-elevated) 94%, black);
2183
+ border: 1px solid color-mix(in srgb, var(--accent) 36%, var(--border));
2184
+ border-radius: 10px;
2185
+ bottom: calc(100% + 8px);
2186
+ box-shadow: 0 18px 46px rgb(0 0 0 / 38%);
2187
+ color: var(--text-primary);
2188
+ content: attr(data-tooltip);
2189
+ font-size: 0.72rem;
2190
+ font-weight: 700;
2191
+ left: 50%;
2192
+ line-height: 1.35;
2193
+ max-width: min(320px, 72vw);
2194
+ opacity: 0;
2195
+ padding: 8px 10px;
2196
+ pointer-events: none;
2197
+ position: absolute;
2198
+ text-align: left;
2199
+ transform: translate(-50%, 4px);
2200
+ transition: opacity 140ms ease, transform 140ms ease;
2201
+ width: max-content;
2202
+ z-index: 40;
2203
+ }
2204
+
2205
+ [data-tooltip]:hover::after,
2206
+ [data-tooltip]:focus-visible::after {
2207
+ opacity: 1;
2208
+ transform: translate(-50%, 0);
1853
2209
  }
1854
2210
 
1855
2211
  .data-row,
@@ -2537,9 +2893,16 @@ code {
2537
2893
  grid-template-columns: 1fr;
2538
2894
  }
2539
2895
 
2540
- .managed-app-row {
2896
+ .managed-app-summary,
2897
+ .managed-app-toolbar {
2541
2898
  grid-template-columns: 1fr;
2542
2899
  }
2900
+
2901
+ .managed-app-summary-meta,
2902
+ .managed-app-actions {
2903
+ justify-content: start;
2904
+ min-width: 0;
2905
+ }
2543
2906
  }
2544
2907
 
2545
2908
  @media (max-width: 980px) {
package/setup.sh CHANGED
@@ -12,7 +12,7 @@ shopt -s inherit_errexit 2>/dev/null || true
12
12
  # AI Assistant Server Access Framework Setup Script
13
13
  # Helps developers set up the framework for their infrastructure
14
14
  #
15
- # Version: 3.29.5
15
+ # Version: 3.29.7
16
16
  #
17
17
  # Quick Install:
18
18
  # npm install -g aidevops && aidevops update (recommended)