lynx-console 0.2.3 → 0.3.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.
@@ -20,7 +20,7 @@ export const NetworkDetailSection = ({
20
20
  {/* Headers */}
21
21
  <view className={"np-detailSection"}>
22
22
  <text
23
- className={"np-detailSectionTitle"}
23
+ className={"np-detailSectionTitle t3"}
24
24
  style={{ fontWeight: fontWeight.bold, color: colors.fg.neutral }}
25
25
  >
26
26
  Headers
@@ -34,14 +34,20 @@ export const NetworkDetailSection = ({
34
34
  style={{ backgroundColor: colors.bg.neutralWeak }}
35
35
  >
36
36
  <text
37
- className={"np-tableKey"}
38
- style={{ fontWeight: fontWeight.bold, color: colors.fg.neutralSubtle }}
37
+ className={"np-tableKey t3"}
38
+ style={{
39
+ fontWeight: fontWeight.bold,
40
+ color: colors.fg.neutralSubtle,
41
+ }}
39
42
  >
40
43
  {key}
41
44
  </text>
42
45
  <text
43
- className={"np-tableValue"}
44
- style={{ fontWeight: fontWeight.regular, color: colors.fg.neutral }}
46
+ className={"np-tableValue t3"}
47
+ style={{
48
+ fontWeight: fontWeight.regular,
49
+ color: colors.fg.neutral,
50
+ }}
45
51
  >
46
52
  {value}
47
53
  </text>
@@ -50,8 +56,11 @@ export const NetworkDetailSection = ({
50
56
  </view>
51
57
  ) : (
52
58
  <text
53
- className={"np-emptyText"}
54
- style={{ fontWeight: fontWeight.regular, color: colors.fg.disabled }}
59
+ className={"np-emptyText t3"}
60
+ style={{
61
+ fontWeight: fontWeight.regular,
62
+ color: colors.fg.disabled,
63
+ }}
55
64
  >
56
65
  No headers
57
66
  </text>
@@ -61,14 +70,14 @@ export const NetworkDetailSection = ({
61
70
  {/* Body */}
62
71
  <view className={"np-detailSection"}>
63
72
  <text
64
- className={"np-detailSectionTitle"}
73
+ className={"np-detailSectionTitle t3"}
65
74
  style={{ fontWeight: fontWeight.bold, color: colors.fg.neutral }}
66
75
  >
67
76
  Body
68
77
  </text>
69
78
  {error && (
70
79
  <text
71
- className={"np-errorText"}
80
+ className={"np-errorText t3"}
72
81
  style={{
73
82
  fontWeight: fontWeight.regular,
74
83
  color: colors.palette.red600,
@@ -80,7 +89,7 @@ export const NetworkDetailSection = ({
80
89
  )}
81
90
  {body && (
82
91
  <text
83
- className={"np-bodyText"}
92
+ className={"np-bodyText t3"}
84
93
  style={{
85
94
  fontWeight: fontWeight.regular,
86
95
  color: colors.fg.neutral,
@@ -92,8 +101,11 @@ export const NetworkDetailSection = ({
92
101
  )}
93
102
  {!error && !body && (
94
103
  <text
95
- className={"np-emptyText"}
96
- style={{ fontWeight: fontWeight.regular, color: colors.fg.disabled }}
104
+ className={"np-emptyText t3"}
105
+ style={{
106
+ fontWeight: fontWeight.regular,
107
+ color: colors.fg.disabled,
108
+ }}
97
109
  >
98
110
  No body
99
111
  </text>
@@ -14,21 +14,11 @@
14
14
  padding-bottom: 4px;
15
15
  }
16
16
 
17
- .np-count {
18
- font-size: 0.8125rem;
19
- line-height: 1.125rem;
20
- }
21
-
22
17
  .np-clearButton {
23
18
  padding: 3px 6px;
24
19
  border-radius: 4px;
25
20
  }
26
21
 
27
- .np-clearButtonText {
28
- font-size: 0.8125rem;
29
- line-height: 1.125rem;
30
- }
31
-
32
22
  .np-list {
33
23
  flex: 1;
34
24
  }
@@ -40,11 +30,6 @@
40
30
  height: 100%;
41
31
  }
42
32
 
43
- .np-placeholderText {
44
- font-size: 0.875rem;
45
- line-height: 1.1875rem;
46
- }
47
-
48
33
  .np-item {
49
34
  padding: 8px;
50
35
  border-bottom-width: 1px;
@@ -60,43 +45,22 @@
60
45
  }
61
46
 
62
47
  .np-method {
63
- font-size: 0.75rem;
64
- line-height: 1rem;
65
48
  padding: 0 4px;
66
49
  border-radius: 2px;
67
50
  }
68
51
 
69
- .np-statusCode {
70
- font-size: 0.75rem;
71
- line-height: 1rem;
72
- }
73
-
74
- .np-time {
75
- font-size: 0.75rem;
76
- line-height: 1rem;
77
- }
78
-
79
52
  .np-url {
80
- font-size: 0.8125rem;
81
- line-height: 1.125rem;
82
53
  word-break: break-all;
83
54
  margin-bottom: 4px;
84
55
  }
85
56
 
86
57
  .np-path {
87
- font-size: 0.8125rem;
88
- line-height: 1.125rem;
89
58
  word-break: break-all;
90
59
  white-space: pre-wrap;
91
60
  overflow: visible;
92
61
  margin-bottom: 4px;
93
62
  }
94
63
 
95
- .np-details {
96
- font-size: 0.8125rem;
97
- line-height: 1.125rem;
98
- }
99
-
100
64
  .np-detailsContainer {
101
65
  margin-top: 12px;
102
66
  padding-top: 12px;
@@ -117,11 +81,6 @@
117
81
  cursor: pointer;
118
82
  }
119
83
 
120
- .np-tabText {
121
- font-size: 0.875rem;
122
- line-height: 1.1875rem;
123
- }
124
-
125
84
  .np-tabContent {
126
85
  padding-top: 8px;
127
86
  }
@@ -131,8 +90,6 @@
131
90
  }
132
91
 
133
92
  .np-detailSectionTitle {
134
- font-size: 0.8125rem;
135
- line-height: 1.125rem;
136
93
  margin-bottom: 8px;
137
94
  }
138
95
 
@@ -151,22 +108,16 @@
151
108
  }
152
109
 
153
110
  .np-tableKey {
154
- font-size: 0.8125rem;
155
- line-height: 1.125rem;
156
111
  min-width: 70px;
157
112
  flex-shrink: 0;
158
113
  }
159
114
 
160
115
  .np-tableValue {
161
- font-size: 0.8125rem;
162
- line-height: 1.125rem;
163
116
  word-break: break-all;
164
117
  flex: 1;
165
118
  }
166
119
 
167
120
  .np-bodyText {
168
- font-size: 0.8125rem;
169
- line-height: 1.125rem;
170
121
  padding: 8px;
171
122
  border-radius: 4px;
172
123
  word-break: break-all;
@@ -174,16 +125,12 @@
174
125
  }
175
126
 
176
127
  .np-errorText {
177
- font-size: 0.8125rem;
178
- line-height: 1.125rem;
179
128
  padding: 8px;
180
129
  border-radius: 4px;
181
130
  word-break: break-all;
182
131
  }
183
132
 
184
133
  .np-emptyText {
185
- font-size: 0.8125rem;
186
- line-height: 1.125rem;
187
134
  text-align: center;
188
135
  padding: 16px 0;
189
136
  }
@@ -1,8 +1,7 @@
1
1
  import { useState } from "@lynx-js/react";
2
2
  import { useThemeColors } from "../styles/ThemeContext";
3
- import { type ThemeColors, fontWeight } from "../styles/theme";
3
+ import { fontWeight, type ThemeColors } from "../styles/theme";
4
4
  import type { NetworkEntry } from "../types";
5
- import { FadeList } from "./FadeList";
6
5
  import { NetworkDetailSection } from "./NetworkDetailSection";
7
6
  import "./NetworkPanel.css";
8
7
 
@@ -16,17 +15,35 @@ type TabType = "general" | "request" | "response";
16
15
  function getMethodColors(colors: ThemeColors, method: string) {
17
16
  switch (method) {
18
17
  case "GET":
19
- return { color: colors.palette.blue600, backgroundColor: colors.palette.blue100 };
18
+ return {
19
+ color: colors.palette.blue600,
20
+ backgroundColor: colors.palette.blue100,
21
+ };
20
22
  case "POST":
21
- return { color: colors.palette.green600, backgroundColor: colors.palette.green100 };
23
+ return {
24
+ color: colors.palette.green600,
25
+ backgroundColor: colors.palette.green100,
26
+ };
22
27
  case "PUT":
23
- return { color: colors.palette.yellow600, backgroundColor: colors.palette.yellow100 };
28
+ return {
29
+ color: colors.palette.yellow600,
30
+ backgroundColor: colors.palette.yellow100,
31
+ };
24
32
  case "PATCH":
25
- return { color: colors.palette.purple600, backgroundColor: colors.palette.purple100 };
33
+ return {
34
+ color: colors.palette.purple600,
35
+ backgroundColor: colors.palette.purple100,
36
+ };
26
37
  case "DELETE":
27
- return { color: colors.palette.red600, backgroundColor: colors.palette.red100 };
38
+ return {
39
+ color: colors.palette.red600,
40
+ backgroundColor: colors.palette.red100,
41
+ };
28
42
  default:
29
- return { color: colors.fg.neutral, backgroundColor: colors.bg.neutralWeak };
43
+ return {
44
+ color: colors.fg.neutral,
45
+ backgroundColor: colors.bg.neutralWeak,
46
+ };
30
47
  }
31
48
  }
32
49
 
@@ -115,8 +132,11 @@ export const NetworkPanel = ({
115
132
  <view className={"np-container"}>
116
133
  <view className={"np-header"}>
117
134
  <text
118
- className={"np-count"}
119
- style={{ fontWeight: fontWeight.regular, color: colors.fg.neutralSubtle }}
135
+ className={"np-count t3"}
136
+ style={{
137
+ fontWeight: fontWeight.regular,
138
+ color: colors.fg.neutralSubtle,
139
+ }}
120
140
  >
121
141
  Total: {networks.length} requests
122
142
  </text>
@@ -126,8 +146,11 @@ export const NetworkPanel = ({
126
146
  bindtap={clearNetworks}
127
147
  >
128
148
  <text
129
- className={"np-clearButtonText"}
130
- style={{ fontWeight: fontWeight.medium, color: colors.fg.neutralMuted }}
149
+ className={"np-clearButtonText t3"}
150
+ style={{
151
+ fontWeight: fontWeight.medium,
152
+ color: colors.fg.neutralMuted,
153
+ }}
131
154
  >
132
155
  🗑
133
156
  </text>
@@ -137,14 +160,17 @@ export const NetworkPanel = ({
137
160
  {networks.length === 0 ? (
138
161
  <view className={"np-placeholder"}>
139
162
  <text
140
- className={"np-placeholderText"}
141
- style={{ fontWeight: fontWeight.regular, color: colors.fg.disabled }}
163
+ className={"np-placeholderText t4"}
164
+ style={{
165
+ fontWeight: fontWeight.regular,
166
+ color: colors.fg.disabled,
167
+ }}
142
168
  >
143
169
  No network requests yet
144
170
  </text>
145
171
  </view>
146
172
  ) : (
147
- <FadeList className={"np-list"}>
173
+ <list scroll-orientation="vertical" className={"np-list"}>
148
174
  {networks.map((network) => (
149
175
  <list-item key={network.id} item-key={network.id}>
150
176
  <view
@@ -161,7 +187,7 @@ export const NetworkPanel = ({
161
187
  }
162
188
  >
163
189
  <text
164
- className={"np-method"}
190
+ className={"np-method t2"}
165
191
  style={{
166
192
  fontWeight: fontWeight.bold,
167
193
  ...getMethodColors(colors, network.method),
@@ -171,12 +197,15 @@ export const NetworkPanel = ({
171
197
  </text>
172
198
  {network.statusCode && (
173
199
  <text
174
- className={"np-statusCode"}
200
+ className={"np-statusCode t2"}
175
201
  style={{
176
202
  fontWeight: fontWeight.bold,
177
203
  color: getStatusCodeColor(
178
204
  colors,
179
- getStatusCodeVariant(network.status, network.statusCode),
205
+ getStatusCodeVariant(
206
+ network.status,
207
+ network.statusCode,
208
+ ),
180
209
  ),
181
210
  }}
182
211
  >
@@ -185,7 +214,7 @@ export const NetworkPanel = ({
185
214
  )}
186
215
  {network.status === "pending" && (
187
216
  <text
188
- className={"np-statusCode"}
217
+ className={"np-statusCode t2"}
189
218
  style={{
190
219
  fontWeight: fontWeight.bold,
191
220
  color: colors.fg.neutralSubtle,
@@ -195,22 +224,31 @@ export const NetworkPanel = ({
195
224
  </text>
196
225
  )}
197
226
  <text
198
- className={"np-time"}
199
- style={{ fontWeight: fontWeight.regular, color: colors.fg.neutralSubtle }}
227
+ className={"np-time t2"}
228
+ style={{
229
+ fontWeight: fontWeight.regular,
230
+ color: colors.fg.neutralSubtle,
231
+ }}
200
232
  >
201
233
  {formatDuration(network.duration)}
202
234
  </text>
203
235
  <text
204
- className={"np-time"}
205
- style={{ fontWeight: fontWeight.regular, color: colors.fg.neutralSubtle }}
236
+ className={"np-time t2"}
237
+ style={{
238
+ fontWeight: fontWeight.regular,
239
+ color: colors.fg.neutralSubtle,
240
+ }}
206
241
  >
207
242
  {new Date(network.startTime).toISOString()}
208
243
  </text>
209
244
  </view>
210
245
 
211
246
  <text
212
- className={"np-path"}
213
- style={{ fontWeight: fontWeight.regular, color: colors.fg.neutral }}
247
+ className={"np-path t3"}
248
+ style={{
249
+ fontWeight: fontWeight.regular,
250
+ color: colors.fg.neutral,
251
+ }}
214
252
  bindtap={() =>
215
253
  setSelectedId(selectedId === network.id ? null : network.id)
216
254
  }
@@ -229,12 +267,14 @@ export const NetworkPanel = ({
229
267
  className={"np-tab"}
230
268
  style={{
231
269
  backgroundColor:
232
- activeTab === "general" ? colors.bg.neutralWeak : undefined,
270
+ activeTab === "general"
271
+ ? colors.bg.neutralWeak
272
+ : undefined,
233
273
  }}
234
274
  bindtap={() => setActiveTab("general")}
235
275
  >
236
276
  <text
237
- className={"np-tabText"}
277
+ className={"np-tabText t4"}
238
278
  style={{
239
279
  fontWeight: fontWeight.medium,
240
280
  color:
@@ -250,12 +290,14 @@ export const NetworkPanel = ({
250
290
  className={"np-tab"}
251
291
  style={{
252
292
  backgroundColor:
253
- activeTab === "request" ? colors.bg.neutralWeak : undefined,
293
+ activeTab === "request"
294
+ ? colors.bg.neutralWeak
295
+ : undefined,
254
296
  }}
255
297
  bindtap={() => setActiveTab("request")}
256
298
  >
257
299
  <text
258
- className={"np-tabText"}
300
+ className={"np-tabText t4"}
259
301
  style={{
260
302
  fontWeight: fontWeight.medium,
261
303
  color:
@@ -271,12 +313,14 @@ export const NetworkPanel = ({
271
313
  className={"np-tab"}
272
314
  style={{
273
315
  backgroundColor:
274
- activeTab === "response" ? colors.bg.neutralWeak : undefined,
316
+ activeTab === "response"
317
+ ? colors.bg.neutralWeak
318
+ : undefined,
275
319
  }}
276
320
  bindtap={() => setActiveTab("response")}
277
321
  >
278
322
  <text
279
- className={"np-tabText"}
323
+ className={"np-tabText t4"}
280
324
  style={{
281
325
  fontWeight: fontWeight.medium,
282
326
  color:
@@ -301,7 +345,7 @@ export const NetworkPanel = ({
301
345
  style={{ backgroundColor: colors.bg.neutralWeak }}
302
346
  >
303
347
  <text
304
- className={"np-tableKey"}
348
+ className={"np-tableKey t3"}
305
349
  style={{
306
350
  fontWeight: fontWeight.bold,
307
351
  color: colors.fg.neutralSubtle,
@@ -310,7 +354,7 @@ export const NetworkPanel = ({
310
354
  {item.key}
311
355
  </text>
312
356
  <text
313
- className={"np-tableValue"}
357
+ className={"np-tableValue t3"}
314
358
  style={{
315
359
  fontWeight: fontWeight.regular,
316
360
  color: colors.fg.neutral,
@@ -343,7 +387,7 @@ export const NetworkPanel = ({
343
387
  </view>
344
388
  </list-item>
345
389
  ))}
346
- </FadeList>
390
+ </list>
347
391
  )}
348
392
  </view>
349
393
  );
@@ -16,21 +16,11 @@
16
16
  border-bottom-style: solid;
17
17
  }
18
18
 
19
- .pp-count {
20
- font-size: 0.8125rem;
21
- line-height: 1.125rem;
22
- }
23
-
24
19
  .pp-clearButton {
25
20
  padding: 3px 6px;
26
21
  border-radius: 4px;
27
22
  }
28
23
 
29
- .pp-clearButtonText {
30
- font-size: 0.8125rem;
31
- line-height: 1.125rem;
32
- }
33
-
34
24
  .pp-list {
35
25
  flex: 1;
36
26
  }
@@ -42,11 +32,6 @@
42
32
  height: 100%;
43
33
  }
44
34
 
45
- .pp-placeholderText {
46
- font-size: 0.875rem;
47
- line-height: 1.1875rem;
48
- }
49
-
50
35
  .pp-item {
51
36
  padding: 8px;
52
37
  border-bottom-width: 1px;
@@ -62,22 +47,10 @@
62
47
  }
63
48
 
64
49
  .pp-entryType {
65
- font-size: 0.75rem;
66
- line-height: 1rem;
67
50
  padding: 0 6px;
68
51
  border-radius: 2px;
69
52
  }
70
53
 
71
- .pp-entryName {
72
- font-size: 0.75rem;
73
- line-height: 1rem;
74
- }
75
-
76
- .pp-timestamp {
77
- font-size: 0.75rem;
78
- line-height: 1rem;
79
- }
80
-
81
54
  .pp-fcpMetricHeader {
82
55
  display: flex;
83
56
  flex-direction: row;
@@ -86,8 +59,6 @@
86
59
  }
87
60
 
88
61
  .pp-fcpHighlight {
89
- font-size: 0.8125rem;
90
- line-height: 1.125rem;
91
62
  padding: 4px 8px;
92
63
  border-radius: 4px;
93
64
  margin-top: 4px;
@@ -110,15 +81,11 @@
110
81
  }
111
82
 
112
83
  .pp-metricName {
113
- font-size: 0.8125rem;
114
- line-height: 1.125rem;
115
84
  min-width: 100px;
116
85
  flex-shrink: 0;
117
86
  }
118
87
 
119
88
  .pp-metricValue {
120
- font-size: 0.8125rem;
121
- line-height: 1.125rem;
122
89
  flex: 1;
123
90
  }
124
91
 
@@ -135,12 +102,6 @@
135
102
  gap: 8px;
136
103
  }
137
104
 
138
- .pp-fcpSectionDescription {
139
- font-size: 0.8125rem;
140
- line-height: 1.125rem;
141
- margin-bottom: 4px;
142
- }
143
-
144
105
  .pp-fcpMetric {
145
106
  border-radius: 4px;
146
107
  display: flex;
@@ -148,24 +109,7 @@
148
109
  gap: 4px;
149
110
  }
150
111
 
151
- .pp-fcpMetricName {
152
- font-size: 0.75rem;
153
- line-height: 1rem;
154
- }
155
-
156
- .pp-fcpMetricValue {
157
- font-size: 0.6875rem;
158
- line-height: 0.9375rem;
159
- }
160
-
161
- .pp-fcpMetricDescription {
162
- font-size: 0.8125rem;
163
- line-height: 1.125rem;
164
- }
165
-
166
112
  .pp-fcpMetricFormula {
167
- font-size: 0.875rem;
168
- line-height: 1.1875rem;
169
113
  font-family: monospace;
170
114
  }
171
115
 
@@ -174,15 +118,7 @@
174
118
  border-radius: 4px;
175
119
  }
176
120
 
177
- .pp-detailTitle {
178
- font-size: 0.8125rem;
179
- line-height: 1.125rem;
180
- margin-bottom: 8px;
181
- }
182
-
183
121
  .pp-rawEntry {
184
- font-size: 0.8125rem;
185
- line-height: 1.125rem;
186
122
  font-family: monospace;
187
123
  white-space: pre-wrap;
188
124
  word-break: break-all;