@awsless/cli 0.1.12 → 0.1.13
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/bin.js +167 -75
- package/package.json +13 -13
package/dist/bin.js
CHANGED
|
@@ -167643,36 +167643,51 @@ var dashboardHtml = `<!doctype html>
|
|
|
167643
167643
|
<title>awsless dev</title>
|
|
167644
167644
|
<style>
|
|
167645
167645
|
:root {
|
|
167646
|
-
--bg:
|
|
167647
|
-
--panel:
|
|
167648
|
-
--
|
|
167649
|
-
--
|
|
167650
|
-
--
|
|
167646
|
+
--bg: hsl(220 20% 5% / 1);
|
|
167647
|
+
--panel: hsl(220 20% 8%);
|
|
167648
|
+
--hover: hsl(220 20% 12%);
|
|
167649
|
+
--border: hsl(220 18% 15%);
|
|
167650
|
+
--border-strong: hsl(220 16% 22%);
|
|
167651
|
+
--text: #ecedf2;
|
|
167652
|
+
--muted: #8b90a1;
|
|
167651
167653
|
--accent: #ff9000;
|
|
167652
|
-
--good: #
|
|
167653
|
-
--bad: #
|
|
167654
|
+
--good: #3dd68c;
|
|
167655
|
+
--bad: #ff6166;
|
|
167656
|
+
--font-sans: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Inter', Helvetica, Arial, sans-serif;
|
|
167657
|
+
--font-mono: ui-monospace, 'SF Mono', SFMono-Regular, Menlo, Consolas, monospace;
|
|
167654
167658
|
font-size: 14px;
|
|
167659
|
+
color-scheme: dark;
|
|
167655
167660
|
}
|
|
167656
167661
|
* { box-sizing: border-box; }
|
|
167662
|
+
::selection { background: rgb(255 144 0 / 25%); }
|
|
167663
|
+
::-webkit-scrollbar { width: 8px; height: 8px; }
|
|
167664
|
+
::-webkit-scrollbar-track { background: transparent; }
|
|
167665
|
+
::-webkit-scrollbar-thumb { background: rgb(255 255 255 / 10%); border-radius: 999px; }
|
|
167666
|
+
::-webkit-scrollbar-thumb:hover { background: rgb(255 255 255 / 18%); }
|
|
167667
|
+
:focus-visible { outline: 2px solid rgb(255 144 0 / 55%); outline-offset: 1px; }
|
|
167657
167668
|
body {
|
|
167658
167669
|
margin: 0;
|
|
167659
|
-
font-family:
|
|
167670
|
+
font-family: var(--font-sans);
|
|
167671
|
+
-webkit-font-smoothing: antialiased;
|
|
167660
167672
|
background: var(--bg);
|
|
167661
167673
|
color: var(--text);
|
|
167662
167674
|
display: grid;
|
|
167663
|
-
grid-template-columns:
|
|
167675
|
+
grid-template-columns: 232px 1fr;
|
|
167664
167676
|
height: 100vh;
|
|
167665
167677
|
}
|
|
167666
|
-
body.with-events { grid-template-columns:
|
|
167678
|
+
body.with-events { grid-template-columns: 232px 1fr 320px; }
|
|
167679
|
+
button { transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease; }
|
|
167680
|
+
input, select, textarea { transition: border-color 0.15s ease, box-shadow 0.15s ease; }
|
|
167667
167681
|
aside {
|
|
167668
167682
|
border-left: 1px solid var(--border);
|
|
167669
167683
|
overflow-y: auto;
|
|
167670
167684
|
padding: 12px;
|
|
167671
167685
|
}
|
|
167672
167686
|
aside h3 {
|
|
167673
|
-
font-size:
|
|
167687
|
+
font-size: 10px;
|
|
167688
|
+
font-weight: 500;
|
|
167674
167689
|
text-transform: uppercase;
|
|
167675
|
-
letter-spacing:
|
|
167690
|
+
letter-spacing: 0.08em;
|
|
167676
167691
|
color: var(--muted);
|
|
167677
167692
|
margin: 8px 8px 12px;
|
|
167678
167693
|
}
|
|
@@ -167680,10 +167695,12 @@ var dashboardHtml = `<!doctype html>
|
|
|
167680
167695
|
border-bottom: 1px solid var(--border);
|
|
167681
167696
|
padding: 8px;
|
|
167682
167697
|
font-size: 12px;
|
|
167698
|
+
font-family: var(--font-mono);
|
|
167683
167699
|
}
|
|
167700
|
+
aside .event:last-child { border-bottom: none; }
|
|
167684
167701
|
aside .event .head { display: flex; gap: 8px; align-items: baseline; }
|
|
167685
167702
|
aside .event .time { color: var(--muted); }
|
|
167686
|
-
aside .event .topic { font-weight:
|
|
167703
|
+
aside .event .topic { font-weight: 600; }
|
|
167687
167704
|
aside .event .type { color: var(--muted); }
|
|
167688
167705
|
aside .event .body {
|
|
167689
167706
|
color: var(--muted);
|
|
@@ -167703,19 +167720,20 @@ var dashboardHtml = `<!doctype html>
|
|
|
167703
167720
|
.logs {
|
|
167704
167721
|
background: var(--panel);
|
|
167705
167722
|
border: 1px solid var(--border);
|
|
167706
|
-
border-radius:
|
|
167707
|
-
padding:
|
|
167723
|
+
border-radius: 10px;
|
|
167724
|
+
padding: 10px 12px;
|
|
167708
167725
|
margin-top: 8px;
|
|
167709
167726
|
max-height: 420px;
|
|
167710
167727
|
overflow-y: auto;
|
|
167711
167728
|
font-size: 12px;
|
|
167729
|
+
font-family: var(--font-mono);
|
|
167712
167730
|
}
|
|
167713
167731
|
.logs .line { display: flex; gap: 8px; padding: 1px 0; }
|
|
167714
167732
|
.logs .time { color: var(--muted); flex-shrink: 0; }
|
|
167715
167733
|
.logs .route { color: var(--accent); word-break: break-all; }
|
|
167716
167734
|
.logs .text { white-space: pre-wrap; word-break: break-word; }
|
|
167717
167735
|
.logs .line.error .text, .logs .entry.error .text { color: var(--bad); }
|
|
167718
|
-
.logs .entry { padding:
|
|
167736
|
+
.logs .entry { padding: 6px 0; }
|
|
167719
167737
|
.logs .entry + .entry, .logs .line + .entry, .logs .entry + .line { border-top: 1px solid var(--border); }
|
|
167720
167738
|
.logs .entry .meta { display: flex; gap: 8px; margin-bottom: 2px; }
|
|
167721
167739
|
/* Every group is its own card, with a shared grid inside: the name
|
|
@@ -167725,8 +167743,8 @@ var dashboardHtml = `<!doctype html>
|
|
|
167725
167743
|
.config-group {
|
|
167726
167744
|
background: var(--panel);
|
|
167727
167745
|
border: 1px solid var(--border);
|
|
167728
|
-
border-radius:
|
|
167729
|
-
padding:
|
|
167746
|
+
border-radius: 10px;
|
|
167747
|
+
padding: 16px 18px;
|
|
167730
167748
|
}
|
|
167731
167749
|
.config-group h3 { margin: 0 0 12px; }
|
|
167732
167750
|
.config-fields {
|
|
@@ -167736,7 +167754,7 @@ var dashboardHtml = `<!doctype html>
|
|
|
167736
167754
|
align-items: center;
|
|
167737
167755
|
}
|
|
167738
167756
|
.config-fields .field { display: contents; }
|
|
167739
|
-
.config-fields .name { color: var(--muted); overflow-wrap: anywhere; }
|
|
167757
|
+
.config-fields .name { color: var(--muted); overflow-wrap: anywhere; font-family: var(--font-mono); font-size: 12.5px; }
|
|
167740
167758
|
.config-fields input {
|
|
167741
167759
|
background: var(--bg);
|
|
167742
167760
|
color: var(--text);
|
|
@@ -167745,17 +167763,23 @@ var dashboardHtml = `<!doctype html>
|
|
|
167745
167763
|
padding: 6px 10px;
|
|
167746
167764
|
font: inherit;
|
|
167747
167765
|
}
|
|
167766
|
+
.config-fields input:hover { border-color: var(--border-strong); }
|
|
167767
|
+
.config-fields input:focus { border-color: #5b6272; box-shadow: 0 0 0 3px rgb(255 255 255 / 14%); outline: none; }
|
|
167748
167768
|
.config-fields input::placeholder { color: var(--muted); }
|
|
167749
167769
|
.groups { display: flex; flex-wrap: wrap; gap: 4px 16px; }
|
|
167750
167770
|
.groups .group { display: flex; align-items: center; gap: 4px; cursor: pointer; }
|
|
167751
167771
|
nav {
|
|
167752
167772
|
border-right: 1px solid var(--border);
|
|
167753
167773
|
overflow-y: auto;
|
|
167754
|
-
padding: 12px;
|
|
167774
|
+
padding: 14px 12px;
|
|
167775
|
+
/* The menu scrolls, but never shows a permanent scrollbar. */
|
|
167776
|
+
scrollbar-width: none;
|
|
167755
167777
|
}
|
|
167778
|
+
nav::-webkit-scrollbar { display: none; }
|
|
167756
167779
|
nav h1 {
|
|
167757
167780
|
font-size: 15px;
|
|
167758
|
-
|
|
167781
|
+
font-family: var(--font-mono);
|
|
167782
|
+
margin: 4px 8px 18px;
|
|
167759
167783
|
cursor: pointer;
|
|
167760
167784
|
}
|
|
167761
167785
|
/* The same two-tone logo as the cli: bold AWS in the brand orange,
|
|
@@ -167765,25 +167789,27 @@ var dashboardHtml = `<!doctype html>
|
|
|
167765
167789
|
nav h1 .cmd { color: var(--muted); font-weight: normal; }
|
|
167766
167790
|
nav h3 {
|
|
167767
167791
|
font-size: 10px;
|
|
167792
|
+
font-weight: 500;
|
|
167768
167793
|
text-transform: uppercase;
|
|
167769
|
-
letter-spacing:
|
|
167794
|
+
letter-spacing: 0.08em;
|
|
167770
167795
|
color: var(--muted);
|
|
167771
|
-
margin:
|
|
167796
|
+
margin: 18px 8px 6px;
|
|
167772
167797
|
}
|
|
167773
167798
|
nav button {
|
|
167774
167799
|
display: flex;
|
|
167775
167800
|
align-items: center;
|
|
167776
|
-
gap:
|
|
167801
|
+
gap: 9px;
|
|
167777
167802
|
width: 100%;
|
|
167778
167803
|
background: none;
|
|
167779
167804
|
border: none;
|
|
167780
|
-
color: var(--
|
|
167805
|
+
color: var(--muted);
|
|
167781
167806
|
font: inherit;
|
|
167807
|
+
font-size: 13.5px;
|
|
167782
167808
|
padding: 6px 8px;
|
|
167783
167809
|
border-radius: 6px;
|
|
167784
167810
|
cursor: pointer;
|
|
167785
167811
|
}
|
|
167786
|
-
nav button .count { margin-left: auto; }
|
|
167812
|
+
nav button .count { margin-left: auto; font-size: 12px; }
|
|
167787
167813
|
nav button.reseed { margin-top: auto; color: var(--muted); }
|
|
167788
167814
|
nav button.reseed:disabled { cursor: default; }
|
|
167789
167815
|
.icon {
|
|
@@ -167792,34 +167818,37 @@ var dashboardHtml = `<!doctype html>
|
|
|
167792
167818
|
flex-shrink: 0;
|
|
167793
167819
|
display: inline-flex;
|
|
167794
167820
|
color: var(--muted);
|
|
167821
|
+
transition: color 0.15s ease;
|
|
167795
167822
|
}
|
|
167796
167823
|
.icon svg { width: 100%; height: 100%; }
|
|
167797
167824
|
nav button.active .icon, .row:hover .icon { color: var(--accent); }
|
|
167798
|
-
main h2 { display: flex; align-items: center; gap:
|
|
167799
|
-
main h2 .icon { width:
|
|
167800
|
-
nav button:hover { background: var(--
|
|
167801
|
-
nav button.active { background: var(--
|
|
167825
|
+
main h2 { display: flex; align-items: center; gap: 9px; }
|
|
167826
|
+
main h2 .icon { width: 18px; height: 18px; }
|
|
167827
|
+
nav button:hover { background: var(--hover); color: var(--text); }
|
|
167828
|
+
nav button.active { background: var(--hover); color: var(--text); }
|
|
167802
167829
|
nav button .count { color: var(--muted); }
|
|
167803
|
-
main { padding:
|
|
167804
|
-
main h2 { margin: 0 0 4px; font-size:
|
|
167805
|
-
main .detail { color: var(--muted); margin-bottom: 16px; word-break: break-all; }
|
|
167830
|
+
main { padding: 24px 28px; overflow-y: auto; }
|
|
167831
|
+
main h2 { margin: 0 0 4px; font-size: 18px; font-weight: 600; letter-spacing: -0.01em; }
|
|
167832
|
+
main .detail { color: var(--muted); margin-bottom: 16px; word-break: break-all; font-size: 13px; }
|
|
167806
167833
|
main .back {
|
|
167807
167834
|
display: inline-block;
|
|
167808
167835
|
background: none;
|
|
167809
167836
|
border: none;
|
|
167810
167837
|
color: var(--muted);
|
|
167811
167838
|
font: inherit;
|
|
167839
|
+
font-size: 13px;
|
|
167812
167840
|
padding: 0;
|
|
167813
167841
|
margin-bottom: 12px;
|
|
167814
167842
|
cursor: pointer;
|
|
167815
167843
|
}
|
|
167816
|
-
main .back:hover { color: var(--
|
|
167844
|
+
main .back:hover { color: var(--text); }
|
|
167817
167845
|
main h3 {
|
|
167818
167846
|
font-size: 11px;
|
|
167847
|
+
font-weight: 500;
|
|
167819
167848
|
text-transform: uppercase;
|
|
167820
|
-
letter-spacing:
|
|
167849
|
+
letter-spacing: 0.08em;
|
|
167821
167850
|
color: var(--muted);
|
|
167822
|
-
margin:
|
|
167851
|
+
margin: 26px 0 8px;
|
|
167823
167852
|
}
|
|
167824
167853
|
.feed .row { cursor: default; }
|
|
167825
167854
|
.feed .empty { padding: 8px; }
|
|
@@ -167832,9 +167861,15 @@ var dashboardHtml = `<!doctype html>
|
|
|
167832
167861
|
padding: 6px 10px;
|
|
167833
167862
|
font: inherit;
|
|
167834
167863
|
}
|
|
167864
|
+
.filters input:hover, .filters select:hover { border-color: var(--border-strong); }
|
|
167865
|
+
.filters input:focus, .filters select:focus {
|
|
167866
|
+
border-color: #5b6272;
|
|
167867
|
+
box-shadow: 0 0 0 3px rgb(255 255 255 / 14%);
|
|
167868
|
+
outline: none;
|
|
167869
|
+
}
|
|
167835
167870
|
.filters input { flex: 1; }
|
|
167836
167871
|
.filters input::placeholder { color: var(--muted); }
|
|
167837
|
-
.filters .count { color: var(--muted); align-self: center; white-space: nowrap; }
|
|
167872
|
+
.filters .count { color: var(--muted); align-self: center; white-space: nowrap; font-size: 13px; }
|
|
167838
167873
|
/* The stack & name columns share one grid across every row, so the
|
|
167839
167874
|
names line up no matter how long each stack name is. */
|
|
167840
167875
|
.rows { display: grid; grid-template-columns: fit-content(280px) 1fr auto; }
|
|
@@ -167848,15 +167883,29 @@ var dashboardHtml = `<!doctype html>
|
|
|
167848
167883
|
text-align: left;
|
|
167849
167884
|
background: none;
|
|
167850
167885
|
border: none;
|
|
167851
|
-
border-bottom: 1px solid var(--border);
|
|
167852
167886
|
color: var(--text);
|
|
167853
167887
|
font: inherit;
|
|
167854
|
-
padding:
|
|
167888
|
+
padding: 9px 10px;
|
|
167855
167889
|
cursor: pointer;
|
|
167890
|
+
border-radius: 8px;
|
|
167891
|
+
position: relative;
|
|
167892
|
+
transition: background 0.15s ease;
|
|
167893
|
+
}
|
|
167894
|
+
/* The separator is its own straight hairline instead of a border,
|
|
167895
|
+
so the rounded hover highlight never bends the line at the ends. */
|
|
167896
|
+
.row::after {
|
|
167897
|
+
content: '';
|
|
167898
|
+
position: absolute;
|
|
167899
|
+
left: 0;
|
|
167900
|
+
right: 0;
|
|
167901
|
+
bottom: 0;
|
|
167902
|
+
height: 1px;
|
|
167903
|
+
background: var(--border);
|
|
167856
167904
|
}
|
|
167857
|
-
.row:
|
|
167905
|
+
.row:last-child::after { display: none; }
|
|
167906
|
+
.row:hover { background: var(--hover); }
|
|
167858
167907
|
a.row { text-decoration: none; }
|
|
167859
|
-
.health { display: flex; flex-wrap: wrap; gap: 8px; margin:
|
|
167908
|
+
.health { display: flex; flex-wrap: wrap; gap: 8px; margin: 14px 0 4px; }
|
|
167860
167909
|
.health .chip {
|
|
167861
167910
|
display: inline-flex;
|
|
167862
167911
|
align-items: center;
|
|
@@ -167866,9 +167915,16 @@ var dashboardHtml = `<!doctype html>
|
|
|
167866
167915
|
border-radius: 999px;
|
|
167867
167916
|
padding: 4px 12px;
|
|
167868
167917
|
font-size: 12px;
|
|
167918
|
+
font-family: var(--font-mono);
|
|
167869
167919
|
}
|
|
167870
|
-
.health .dot {
|
|
167871
|
-
|
|
167920
|
+
.health .dot {
|
|
167921
|
+
width: 7px;
|
|
167922
|
+
height: 7px;
|
|
167923
|
+
border-radius: 50%;
|
|
167924
|
+
background: var(--good);
|
|
167925
|
+
flex-shrink: 0;
|
|
167926
|
+
}
|
|
167927
|
+
.health .chip.down { border-color: rgb(255 97 102 / 45%); background: rgb(255 97 102 / 8%); }
|
|
167872
167928
|
.health .chip.down .dot { background: var(--bad); }
|
|
167873
167929
|
.health .chip .detail-text { color: var(--muted); }
|
|
167874
167930
|
.home-cols {
|
|
@@ -167903,23 +167959,26 @@ var dashboardHtml = `<!doctype html>
|
|
|
167903
167959
|
.overlay {
|
|
167904
167960
|
position: fixed;
|
|
167905
167961
|
inset: 0;
|
|
167906
|
-
background: rgb(0 0 0 /
|
|
167962
|
+
background: rgb(0 0 0 / 60%);
|
|
167963
|
+
backdrop-filter: blur(6px);
|
|
167964
|
+
-webkit-backdrop-filter: blur(6px);
|
|
167907
167965
|
display: flex;
|
|
167908
167966
|
align-items: center;
|
|
167909
167967
|
justify-content: center;
|
|
167910
167968
|
z-index: 50;
|
|
167911
167969
|
}
|
|
167912
167970
|
.overlay .modal {
|
|
167913
|
-
background: var(--
|
|
167914
|
-
border: 1px solid var(--border);
|
|
167915
|
-
border-radius:
|
|
167971
|
+
background: var(--panel);
|
|
167972
|
+
border: 1px solid var(--border-strong);
|
|
167973
|
+
border-radius: 12px;
|
|
167974
|
+
box-shadow: 0 12px 48px rgb(0 0 0 / 60%);
|
|
167916
167975
|
width: min(760px, 92vw);
|
|
167917
167976
|
max-height: 82vh;
|
|
167918
167977
|
overflow-y: auto;
|
|
167919
|
-
padding:
|
|
167978
|
+
padding: 18px 22px;
|
|
167920
167979
|
}
|
|
167921
167980
|
.overlay .modal-head { display: flex; align-items: baseline; gap: 10px; }
|
|
167922
|
-
.overlay .modal-head h3 { margin: 0; }
|
|
167981
|
+
.overlay .modal-head h3 { margin: 0; font-family: var(--font-mono); }
|
|
167923
167982
|
.overlay .modal-head .detail { color: var(--muted); font-size: 12px; }
|
|
167924
167983
|
.overlay .modal-head button {
|
|
167925
167984
|
margin-left: auto;
|
|
@@ -167928,8 +167987,10 @@ var dashboardHtml = `<!doctype html>
|
|
|
167928
167987
|
color: var(--muted);
|
|
167929
167988
|
font-size: 16px;
|
|
167930
167989
|
cursor: pointer;
|
|
167990
|
+
border-radius: 6px;
|
|
167991
|
+
padding: 2px 8px;
|
|
167931
167992
|
}
|
|
167932
|
-
.overlay .modal-head button:hover { color: var(--text); }
|
|
167993
|
+
.overlay .modal-head button:hover { color: var(--text); background: var(--hover); }
|
|
167933
167994
|
/* The tree rows reuse the log entry format, the guide marks the
|
|
167934
167995
|
parent-child steps of the chain. */
|
|
167935
167996
|
.trace-tree { max-height: none; }
|
|
@@ -167942,13 +168003,17 @@ var dashboardHtml = `<!doctype html>
|
|
|
167942
168003
|
overflow: hidden;
|
|
167943
168004
|
text-overflow: ellipsis;
|
|
167944
168005
|
white-space: nowrap;
|
|
168006
|
+
font-family: var(--font-mono);
|
|
168007
|
+
font-size: 12.5px;
|
|
167945
168008
|
}
|
|
167946
168009
|
.row .id {
|
|
167947
|
-
font-weight:
|
|
168010
|
+
font-weight: 500;
|
|
167948
168011
|
min-width: 0;
|
|
167949
168012
|
overflow: hidden;
|
|
167950
168013
|
text-overflow: ellipsis;
|
|
167951
168014
|
white-space: nowrap;
|
|
168015
|
+
font-family: var(--font-mono);
|
|
168016
|
+
font-size: 12.5px;
|
|
167952
168017
|
}
|
|
167953
168018
|
.row .info {
|
|
167954
168019
|
color: var(--muted);
|
|
@@ -167957,13 +168022,14 @@ var dashboardHtml = `<!doctype html>
|
|
|
167957
168022
|
text-overflow: ellipsis;
|
|
167958
168023
|
white-space: nowrap;
|
|
167959
168024
|
max-width: 100%;
|
|
168025
|
+
font-size: 12.5px;
|
|
167960
168026
|
}
|
|
167961
168027
|
.email-body {
|
|
167962
168028
|
width: 100%;
|
|
167963
168029
|
min-height: 480px;
|
|
167964
168030
|
background: #fff;
|
|
167965
168031
|
border: 1px solid var(--border);
|
|
167966
|
-
border-radius:
|
|
168032
|
+
border-radius: 10px;
|
|
167967
168033
|
margin-top: 12px;
|
|
167968
168034
|
}
|
|
167969
168035
|
textarea {
|
|
@@ -167972,47 +168038,58 @@ var dashboardHtml = `<!doctype html>
|
|
|
167972
168038
|
background: var(--panel);
|
|
167973
168039
|
color: var(--text);
|
|
167974
168040
|
border: 1px solid var(--border);
|
|
167975
|
-
border-radius:
|
|
167976
|
-
padding:
|
|
167977
|
-
font:
|
|
168041
|
+
border-radius: 10px;
|
|
168042
|
+
padding: 12px;
|
|
168043
|
+
font-family: var(--font-mono);
|
|
168044
|
+
font-size: 12.5px;
|
|
167978
168045
|
resize: vertical;
|
|
167979
168046
|
}
|
|
168047
|
+
textarea:hover { border-color: var(--border-strong); }
|
|
168048
|
+
textarea:focus { border-color: #5b6272; box-shadow: 0 0 0 3px rgb(255 255 255 / 14%); outline: none; }
|
|
167980
168049
|
.actions { margin: 12px 0; display: flex; gap: 8px; align-items: center; }
|
|
167981
|
-
.actions .status { color: var(--muted); }
|
|
168050
|
+
.actions .status { color: var(--muted); font-size: 13px; }
|
|
168051
|
+
/* Action buttons in the x.ai style: white pill primary, outlined
|
|
168052
|
+
ghost secondary. */
|
|
167982
168053
|
button.primary {
|
|
167983
|
-
background:
|
|
167984
|
-
color: #
|
|
168054
|
+
background: #fff;
|
|
168055
|
+
color: #0a0a0a;
|
|
167985
168056
|
border: none;
|
|
167986
|
-
border-radius:
|
|
167987
|
-
padding: 7px
|
|
168057
|
+
border-radius: 999px;
|
|
168058
|
+
padding: 7px 18px;
|
|
167988
168059
|
font: inherit;
|
|
167989
|
-
font-weight:
|
|
168060
|
+
font-weight: 500;
|
|
167990
168061
|
cursor: pointer;
|
|
167991
168062
|
}
|
|
168063
|
+
button.primary:hover { background: #d9d9de; }
|
|
167992
168064
|
button.primary:disabled { opacity: 0.5; cursor: wait; }
|
|
167993
168065
|
button.secondary {
|
|
167994
|
-
background:
|
|
168066
|
+
background: transparent;
|
|
167995
168067
|
color: var(--text);
|
|
167996
|
-
border: 1px solid var(--border);
|
|
167997
|
-
border-radius:
|
|
167998
|
-
padding: 6px
|
|
168068
|
+
border: 1px solid var(--border-strong);
|
|
168069
|
+
border-radius: 999px;
|
|
168070
|
+
padding: 6px 18px;
|
|
167999
168071
|
font: inherit;
|
|
168000
168072
|
cursor: pointer;
|
|
168001
168073
|
}
|
|
168074
|
+
button.secondary:hover { background: var(--hover); border-color: #3d3d44; }
|
|
168002
168075
|
pre.result {
|
|
168003
168076
|
background: var(--panel);
|
|
168004
168077
|
border: 1px solid var(--border);
|
|
168005
|
-
border-radius:
|
|
168006
|
-
padding: 12px;
|
|
168078
|
+
border-radius: 10px;
|
|
168079
|
+
padding: 12px 14px;
|
|
168007
168080
|
overflow-x: auto;
|
|
168008
168081
|
white-space: pre-wrap;
|
|
168009
168082
|
word-break: break-word;
|
|
168083
|
+
font-family: var(--font-mono);
|
|
168084
|
+
font-size: 12.5px;
|
|
168010
168085
|
}
|
|
168011
|
-
pre.result.error { border-color:
|
|
168012
|
-
|
|
168086
|
+
pre.result.error { border-color: rgb(255 97 102 / 45%); color: var(--bad); }
|
|
168087
|
+
/* Tables in the vercel style: horizontal hairlines only, quiet
|
|
168088
|
+
uppercase headers. */
|
|
168089
|
+
table { border-collapse: collapse; width: 100%; font-family: var(--font-mono); font-size: 12.5px; }
|
|
168013
168090
|
th, td {
|
|
168014
|
-
border: 1px solid var(--border);
|
|
168015
|
-
padding:
|
|
168091
|
+
border-bottom: 1px solid var(--border);
|
|
168092
|
+
padding: 8px 12px;
|
|
168016
168093
|
text-align: left;
|
|
168017
168094
|
vertical-align: top;
|
|
168018
168095
|
max-width: 360px;
|
|
@@ -168020,7 +168097,16 @@ var dashboardHtml = `<!doctype html>
|
|
|
168020
168097
|
text-overflow: ellipsis;
|
|
168021
168098
|
white-space: nowrap;
|
|
168022
168099
|
}
|
|
168023
|
-
th {
|
|
168100
|
+
th {
|
|
168101
|
+
color: var(--muted);
|
|
168102
|
+
font-weight: 500;
|
|
168103
|
+
font-family: var(--font-sans);
|
|
168104
|
+
font-size: 11px;
|
|
168105
|
+
text-transform: uppercase;
|
|
168106
|
+
letter-spacing: 0.08em;
|
|
168107
|
+
}
|
|
168108
|
+
tbody tr { transition: background 0.15s ease; }
|
|
168109
|
+
tbody tr:hover { background: var(--hover); }
|
|
168024
168110
|
td:hover { white-space: normal; word-break: break-all; }
|
|
168025
168111
|
.empty { color: var(--muted); }
|
|
168026
168112
|
</style>
|
|
@@ -169371,15 +169457,21 @@ const render = () => {
|
|
|
169371
169457
|
nav.append(reseed)
|
|
169372
169458
|
}
|
|
169373
169459
|
|
|
169460
|
+
// Every view renders into its own container: navigating detaches
|
|
169461
|
+
// the old one, so a slow async panel (like a table scan) finishing
|
|
169462
|
+
// after the switch appends into a dead node instead of the screen.
|
|
169374
169463
|
const main = document.getElementById('main')
|
|
169375
169464
|
main.innerHTML = ''
|
|
169376
169465
|
|
|
169466
|
+
const page = $('div')
|
|
169467
|
+
main.append(page)
|
|
169468
|
+
|
|
169377
169469
|
if (view.resource) {
|
|
169378
|
-
renderResource(
|
|
169470
|
+
renderResource(page)
|
|
169379
169471
|
} else if (view.kind) {
|
|
169380
|
-
renderList(
|
|
169472
|
+
renderList(page)
|
|
169381
169473
|
} else {
|
|
169382
|
-
renderHome(
|
|
169474
|
+
renderHome(page)
|
|
169383
169475
|
}
|
|
169384
169476
|
}
|
|
169385
169477
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@awsless/cli",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.13",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"sideEffects": false,
|
|
@@ -43,14 +43,14 @@
|
|
|
43
43
|
},
|
|
44
44
|
"peerDependencies": {
|
|
45
45
|
"@awsless/big-float": "^0.1.7",
|
|
46
|
-
"@awsless/duration": "^0.0.4",
|
|
47
46
|
"@awsless/dynamodb": "^0.3.25",
|
|
47
|
+
"@awsless/duration": "^0.0.4",
|
|
48
48
|
"@awsless/json": "^0.0.11",
|
|
49
|
-
"@awsless/
|
|
50
|
-
"@awsless/s3": "^0.0.22",
|
|
49
|
+
"@awsless/weak-cache": "^0.0.1",
|
|
51
50
|
"@awsless/validate": "^0.2.0",
|
|
51
|
+
"@awsless/lambda": "^0.0.48",
|
|
52
52
|
"awsless": "^0.1.4",
|
|
53
|
-
"@awsless/
|
|
53
|
+
"@awsless/s3": "^0.0.22"
|
|
54
54
|
},
|
|
55
55
|
"devDependencies": {
|
|
56
56
|
"@aws-sdk/client-cloudformation": "^3.369.0",
|
|
@@ -110,23 +110,23 @@
|
|
|
110
110
|
"zod-to-json-schema": "^3.24.3",
|
|
111
111
|
"@awsless/big-float": "^0.1.7",
|
|
112
112
|
"@awsless/cloudwatch": "^0.0.1",
|
|
113
|
+
"@awsless/clui": "^0.0.9",
|
|
113
114
|
"@awsless/duration": "^0.0.4",
|
|
114
|
-
"@awsless/json": "^0.0.11",
|
|
115
115
|
"@awsless/dynamodb": "^0.3.25",
|
|
116
116
|
"@awsless/iot": "^0.0.5",
|
|
117
|
-
"@awsless/
|
|
117
|
+
"@awsless/json": "^0.0.11",
|
|
118
118
|
"@awsless/open-search": "^0.0.28",
|
|
119
|
-
"@awsless/
|
|
119
|
+
"@awsless/lambda": "^0.0.48",
|
|
120
|
+
"@awsless/s3": "^0.0.22",
|
|
120
121
|
"@awsless/size": "^0.0.2",
|
|
122
|
+
"@awsless/scheduler": "^0.0.5",
|
|
121
123
|
"@awsless/sns": "^0.0.11",
|
|
122
|
-
"@awsless/validate": "^0.2.0",
|
|
123
|
-
"@awsless/redis": "^0.1.13",
|
|
124
124
|
"@awsless/sqs": "^0.0.24",
|
|
125
|
-
"@awsless/
|
|
125
|
+
"@awsless/redis": "^0.1.13",
|
|
126
126
|
"@awsless/ssm": "^0.0.8",
|
|
127
|
-
"@awsless/weak-cache": "^0.0.1",
|
|
128
127
|
"awsless": "^0.1.4",
|
|
129
|
-
"@awsless/
|
|
128
|
+
"@awsless/weak-cache": "^0.0.1",
|
|
129
|
+
"@awsless/validate": "^0.2.0"
|
|
130
130
|
},
|
|
131
131
|
"scripts": {
|
|
132
132
|
"test": "bun cli/build-handlers.ts && pnpm vitest",
|