phirepass-widgets 0.0.46 → 0.0.47

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.
Files changed (36) hide show
  1. package/dist/cjs/{index-DTAHGGCM.js → index-BiurVooY.js} +58 -0
  2. package/dist/cjs/loader.cjs.js +2 -2
  3. package/dist/cjs/phirepass-sftp-client.cjs.entry.js +186 -20
  4. package/dist/cjs/phirepass-terminal.cjs.entry.js +3 -3
  5. package/dist/cjs/phirepass-widgets.cjs.js +2 -2
  6. package/dist/cjs/{protocol-C0YjPrve.js → protocol-BDROfN76.js} +2 -1
  7. package/dist/collection/common/protocol.js +1 -0
  8. package/dist/collection/components/phirepass-sftp-client/phirepass-sftp-client.chevron.svg +6 -0
  9. package/dist/collection/components/phirepass-sftp-client/phirepass-sftp-client.css +421 -119
  10. package/dist/collection/components/phirepass-sftp-client/phirepass-sftp-client.file.svg +6 -0
  11. package/dist/collection/components/phirepass-sftp-client/phirepass-sftp-client.folder.svg +6 -0
  12. package/dist/collection/components/phirepass-sftp-client/phirepass-sftp-client.go_up.svg +6 -0
  13. package/dist/collection/components/phirepass-sftp-client/phirepass-sftp-client.js +190 -19
  14. package/dist/collection/components/phirepass-sftp-client/phirepass-sftp-client.refresh.svg +8 -0
  15. package/dist/collection/components/phirepass-sftp-client/phirepass-sftp-client.upload.svg +7 -0
  16. package/dist/collection/components/phirepass-terminal/phirepass-terminal.js +1 -1
  17. package/dist/components/index.js +1 -1
  18. package/dist/{phirepass-widgets/p-rdgKcesn.js → components/p-BcIhGXR0.js} +1 -1
  19. package/dist/components/phirepass-sftp-client.js +1 -1
  20. package/dist/components/phirepass-terminal.js +2 -2
  21. package/dist/esm/{index-D6RLmr6w.js → index-zZMsduaU.js} +58 -0
  22. package/dist/esm/loader.js +3 -3
  23. package/dist/esm/phirepass-sftp-client.entry.js +186 -20
  24. package/dist/esm/phirepass-terminal.entry.js +3 -3
  25. package/dist/esm/phirepass-widgets.js +3 -3
  26. package/dist/esm/{protocol-rdgKcesn.js → protocol-BcIhGXR0.js} +1 -0
  27. package/dist/phirepass-widgets/p-32ca8ca5.entry.js +1 -0
  28. package/dist/phirepass-widgets/{p-f8e6ba02.entry.js → p-5b21bc31.entry.js} +5 -5
  29. package/dist/{components/p-rdgKcesn.js → phirepass-widgets/p-BcIhGXR0.js} +1 -1
  30. package/dist/phirepass-widgets/p-zZMsduaU.js +2 -0
  31. package/dist/phirepass-widgets/phirepass-widgets.esm.js +1 -1
  32. package/dist/types/common/protocol.d.ts +37 -13
  33. package/dist/types/components/phirepass-sftp-client/phirepass-sftp-client.d.ts +27 -1
  34. package/package.json +1 -1
  35. package/dist/phirepass-widgets/p-5e9ce2ac.entry.js +0 -1
  36. package/dist/phirepass-widgets/p-D6RLmr6w.js +0 -2
@@ -1,144 +1,446 @@
1
1
  :host {
2
- --radius: 0.375rem;
3
- --card: 220 18% 10%;
4
- --border: 220 15% 18%;
5
- --primary: 160 60% 45%;
6
- --muted-foreground: 220 10% 50%;
7
-
8
- font-family:
9
- ui-monospace,
10
- SFMono-Regular,
11
- Menlo,
12
- Monaco,
13
- Consolas,
14
- Liberation Mono,
15
- Courier New,
16
- monospace;
17
-
18
- height: 100%;
19
- width: 100%;
20
-
21
- border: 1px solid hsl(var(--border));
22
- background-color: hsl(var(--card));
23
- border-radius: var(--radius);
24
- overflow: hidden;
25
- display: flex;
26
- flex-direction: column;
27
- position: relative;
28
-
29
- .listing {
30
- flex: 1;
2
+ --radius: 0.375rem;
3
+ --card: 220 18% 10%;
4
+ --border: 220 15% 18%;
5
+ --primary: 160 60% 45%;
6
+ --radius: 0.375rem;
7
+ --destructive: 0 70% 50%;
8
+ --muted: 220 15% 13%;
9
+ --muted-foreground: 220 10% 50%;
10
+ --primary-foreground: 220 20% 7%;
11
+ --scroll-track: 220 16% 12%;
12
+ --scroll-thumb: 220 12% 34%;
13
+ --scroll-thumb-hover: 160 45% 44%;
14
+
15
+ font-family:
16
+ ui-monospace,
17
+ SFMono-Regular,
18
+ Menlo,
19
+ Monaco,
20
+ Consolas,
21
+ Liberation Mono,
22
+ Courier New,
23
+ monospace;
24
+
25
+ height: 100%;
26
+ width: 100%;
27
+
28
+ border: 1px solid hsl(var(--border));
29
+ background-color: hsl(var(--card));
30
+ border-radius: var(--radius);
31
+ overflow: hidden;
31
32
  display: flex;
32
33
  flex-direction: column;
33
- justify-content: space-between;
34
+ position: relative;
34
35
 
35
- header {
36
- height: 30px;
37
- background: rgba(28, 31, 38, 0.6);
38
- border-bottom: 1px solid hsl(var(--border));
36
+ .listing {
37
+ flex: 1;
38
+ display: flex;
39
+ flex-direction: column;
40
+ justify-content: space-between;
41
+ min-height: 0;
39
42
 
40
- display: flex;
41
- align-items: center;
42
- justify-content: space-between;
43
+ header {
44
+ height: 30px;
45
+ background: rgba(28, 31, 38, 0.6);
46
+ border-bottom: 1px solid hsl(var(--border));
43
47
 
44
- .actions {
45
- display: flex;
46
- align-items: center;
48
+ display: flex;
49
+ align-items: center;
50
+ justify-content: space-between;
51
+
52
+ .actions {
53
+ display: flex;
54
+ align-items: center;
47
55
 
48
- .action {
49
- cursor: pointer;
50
- padding: 4px;
51
- display: flex;
52
- align-items: center;
53
- z-index: 1;
54
-
55
- img {
56
- height: 14px;
57
- padding: 4px;
58
- border-radius: 4px;
59
- }
60
-
61
- &:hover {
62
- background-color: hsl(var(--border) / 0.6);
63
- }
56
+ .action {
57
+ cursor: pointer;
58
+ padding: 4px;
59
+ display: flex;
60
+ align-items: center;
61
+ z-index: 1;
62
+
63
+ img {
64
+ height: 14px;
65
+ padding: 4px;
66
+ border-radius: 4px;
67
+ }
68
+
69
+ &:hover {
70
+ background-color: hsl(var(--border) / 0.6);
71
+ }
72
+ }
73
+ }
74
+
75
+ .title {
76
+ color: hsl(var(--primary));
77
+ height: 14px;
78
+ padding: 0 12px;
79
+ display: flex;
80
+ align-items: center;
81
+ font-size: 0.75rem;
82
+ line-height: 1rem;
83
+
84
+ img {
85
+ height: 14px;
86
+ margin-right: 5px;
87
+ }
88
+
89
+ .text {
90
+ display: flex;
91
+ flex-direction: row;
92
+ justify-content: center;
93
+ margin-top: 2px;
94
+
95
+ .name {
96
+ margin-right: 10px;
97
+ }
98
+
99
+ .description {
100
+ color: hsl(var(--muted-foreground));
101
+ }
102
+ }
103
+ }
64
104
  }
65
- }
66
105
 
67
- .title {
68
- color: hsl(var(--primary));
69
- height: 14px;
70
- padding: 0 12px;
71
- display: flex;
72
- align-items: center;
73
- font-size: 0.75rem;
74
- line-height: 1rem;
106
+ main {
107
+ flex: 1;
108
+ display: flex;
109
+ flex-direction: column;
110
+ position: relative;
111
+ min-height: 0;
112
+ overflow: hidden;
113
+
114
+ .loader {
115
+ color: hsl(var(--muted-foreground));
116
+ font-size: 13px;
117
+ animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
118
+ text-align: center;
119
+ display: flex;
120
+ align-items: center;
121
+ justify-content: center;
122
+ position: absolute;
123
+ height: 100%;
124
+ width: 100%;
125
+ background: rgba(28, 31, 38, 0);
126
+ backdrop-filter: blur(4px);
127
+ }
128
+
129
+ .error {
130
+ font-size: 13px;
131
+ text-align: center;
132
+ color: hsl(var(--destructive));
133
+ height: 100%;
134
+ display: flex;
135
+ align-items: center;
136
+ justify-content: center;
137
+ }
138
+
139
+ .navigation {
140
+ height: 25px;
141
+ padding: 10px;
142
+ font-size: 0.75rem;
143
+ line-height: 1rem;
144
+ background-color: hsl(var(--card));
145
+ display: flex;
146
+ align-items: center;
147
+ justify-content: space-between;
148
+ border-bottom: 1px solid hsl(var(--border));
149
+ position: sticky;
150
+ top: 0;
151
+ z-index: 3;
152
+
153
+ .breadcrumbs {
154
+ display: flex;
155
+ align-items: center;
156
+ margin-right: 10px;
157
+
158
+ .breadcrumb {
159
+ color: hsl(var(--primary));
160
+ margin-right: 4px;
161
+ cursor: pointer;
162
+
163
+ &:after {
164
+ margin-left: 4px;
165
+ }
166
+
167
+ &:hover {
168
+ color: rgb(189, 219, 209);
169
+ }
170
+
171
+ &:last-child {
172
+ margin-right: 0;
173
+ color: rgb(189, 219, 209);
174
+ cursor: default;
175
+ }
176
+ }
177
+
178
+ .arrow {
179
+ height: 12px;
180
+ width: 12px;
181
+ opacity: 0.6;
182
+ top: 2px;
183
+ margin-right: 4px;
184
+ position: relative;
185
+ }
186
+ }
187
+
188
+ .actions {
189
+ display: flex;
190
+ align-items: center;
191
+ gap: 8px;
192
+ }
193
+
194
+ .action {
195
+ border: none;
196
+ background: transparent;
197
+ color: rgb(189, 219, 209);
198
+ font-size: 1.1rem;
199
+ line-height: 1;
200
+ padding: 2px 4px;
201
+ border-radius: 4px;
202
+ cursor: pointer;
203
+
204
+ &:hover {
205
+ background-color: hsl(var(--border) / 0.6);
206
+ }
207
+
208
+ img {
209
+ height: 14px;
210
+ width: 14px;
211
+ display: block;
212
+ }
213
+ }
214
+
215
+ .action.disconnect {
216
+ color: #ff4d5f;
217
+ font-size: 0.65rem;
218
+ letter-spacing: 0.08em;
219
+ padding: 4px 8px;
220
+
221
+ &:hover {
222
+ color: #ff6b7a;
223
+ background-color: hsl(var(--destructive) / 0.12);
224
+ }
225
+ }
226
+ }
227
+
228
+ .content {
229
+ flex: 1;
230
+ min-height: 0;
231
+ overflow: auto;
232
+ font-size: 0.75rem;
233
+ line-height: 1rem;
234
+ scrollbar-width: thin;
235
+ scrollbar-color: hsl(var(--scroll-thumb)) hsl(var(--scroll-track));
75
236
 
76
- img {
77
- height: 14px;
78
- margin-right: 5px;
237
+ &::-webkit-scrollbar {
238
+ width: 10px;
239
+ height: 10px;
240
+ }
241
+
242
+ &::-webkit-scrollbar-track {
243
+ background: hsl(var(--scroll-track));
244
+ }
245
+
246
+ &::-webkit-scrollbar-thumb {
247
+ background: hsl(var(--scroll-thumb));
248
+ border-radius: 999px;
249
+ border: 2px solid hsl(var(--scroll-track));
250
+ }
251
+
252
+ &::-webkit-scrollbar-thumb:hover {
253
+ background: hsl(var(--scroll-thumb-hover));
254
+ }
255
+
256
+ table {
257
+ width: 100%;
258
+ border-collapse: separate;
259
+ border-spacing: 0;
260
+
261
+ thead {
262
+ background-color: hsl(var(--muted));
263
+ border-bottom: 1px solid hsl(var(--border));
264
+
265
+ th {
266
+ padding: 8px 10px;
267
+ text-align: left;
268
+ color: hsl(var(--muted-foreground));
269
+ position: sticky;
270
+ top: 0;
271
+ z-index: 2;
272
+ background-color: hsl(var(--muted));
273
+ border-bottom: 1px solid hsl(var(--border));
274
+ line-height: 0.95rem;
275
+ }
276
+ }
277
+
278
+ tbody {
279
+ padding: 10px 10px;
280
+ tr {
281
+ border-bottom: 1px solid hsl(var(--border) / 0.4);
282
+
283
+ td {
284
+ padding: 10px 10px 9px;
285
+ color: hsl(var(--muted-foreground));
286
+
287
+ .name {
288
+ &.file {
289
+ color: rgb(189, 219, 209);
290
+ }
291
+ &.folder {
292
+ color: hsl(var(--primary));
293
+ }
294
+ }
295
+
296
+ .kind {
297
+ height: 14px;
298
+ width: 14px;
299
+ margin-right: 5px;
300
+ top: 3px;
301
+ position: relative;
302
+ }
303
+ }
304
+
305
+ &:hover {
306
+ cursor: pointer;
307
+ background-color: hsl(var(--muted) / 0.4);
308
+ }
309
+
310
+ &.selected {
311
+ background-color: hsl(var(--primary) / 0.3);
312
+
313
+ &:hover {
314
+ background-color: hsl(var(--primary) / 0.4);
315
+ }
316
+ }
317
+ }
318
+ }
319
+ }
320
+ }
79
321
  }
80
322
 
81
- .text {
82
- display: flex;
83
- flex-direction: row;
84
- justify-content: center;
85
- margin-top: 2px;
323
+ footer {
324
+ height: 25px;
325
+ background: rgba(28, 31, 38, 0.6);
326
+ border-top: 1px solid hsl(var(--border));
327
+ font-size: 0.75rem;
328
+ line-height: 1rem;
329
+ display: flex;
330
+ align-items: center;
331
+ justify-content: space-between;
332
+ padding: 0 10px;
86
333
 
87
- .name {
88
- margin-right: 10px;
89
- }
334
+ .status {
335
+ font-size: 0.65rem;
336
+ color: hsl(var(--muted-foreground));
90
337
 
91
- .description {
92
- color: hsl(var(--muted-foreground));
93
- }
338
+ .selected-item {
339
+ margin-left: 10px;
340
+ color: hsl(var(--primary));
341
+ }
342
+ }
343
+
344
+ .version {
345
+ font-size: 0.65rem;
346
+ color: hsl(var(--muted-foreground));
347
+ }
94
348
  }
95
- }
96
349
  }
97
350
 
98
- footer {
99
- height: 25px;
100
- background: rgba(28, 31, 38, 0.6);
101
- border-top: 1px solid hsl(var(--border));
102
- }
103
- }
351
+ .creds {
352
+ position: absolute;
353
+ top: 0;
354
+ left: 0;
355
+ height: 100%;
356
+ width: 100%;
357
+ display: flex;
358
+ justify-content: center;
359
+ align-items: center;
104
360
 
105
- .creds {
106
- position: absolute;
107
- top: 0;
108
- left: 0;
109
- height: 100%;
110
- width: 100%;
111
- display: flex;
112
- justify-content: center;
113
- align-items: center;
361
+ /* display: none; */
114
362
 
115
- &.blurred {
116
- background: rgba(28, 31, 38, 0);
117
- backdrop-filter: blur(4px);
118
- }
363
+ &.blurred {
364
+ background: rgba(28, 31, 38, 0);
365
+ backdrop-filter: blur(4px);
366
+ }
367
+
368
+ .auth {
369
+ display: flex;
370
+ flex-direction: column;
371
+ background: hsl(var(--card));
372
+ position: relative;
373
+ background-color: rgba(21, 24, 30, 0.95);
374
+ border: 1px solid hsl(var(--border));
375
+ padding: 30px;
376
+ box-shadow:
377
+ rgba(0, 0, 0, 0) 0px 0px 0px 0px,
378
+ rgba(0, 0, 0, 0) 0px 0px 0px 0px,
379
+ rgba(0, 0, 0, 0.5) 0px 25px 50px -12px;
380
+ border-radius: var(--radius);
119
381
 
120
- .form {
121
- display: flex;
122
- flex-direction: column;
123
- background: hsl(var(--card));
124
- width: 200px;
125
- position: relative;
126
- background-color: rgba(21, 24, 30, 0.95);
127
- border: 1px solid hsl(var(--border));
128
- padding: 20px;
129
- box-shadow:
130
- rgba(0, 0, 0, 0) 0px 0px 0px 0px,
131
- rgba(0, 0, 0, 0) 0px 0px 0px 0px,
132
- rgba(0, 0, 0, 0.5) 0px 25px 50px -12px;
382
+ .title {
383
+ margin-bottom: 12px;
384
+ color: hsl(var(--primary));
385
+ }
386
+
387
+ label {
388
+ font-size: 0.75rem;
389
+ line-height: 1rem;
390
+ margin-bottom: 1rem;
391
+ color: hsl(var(--muted-foreground));
392
+ }
393
+
394
+ input {
395
+ font-size: 0.875rem;
396
+ line-height: 1.25rem;
397
+ padding-top: 0.5rem;
398
+ padding-bottom: 0.5rem;
399
+ padding-left: 0.75rem;
400
+ padding-right: 0.75rem;
401
+ background-color: rgb(28, 31, 38);
402
+ border-color: rgb(39, 44, 53);
403
+ border-width: 1px;
404
+ border-radius: calc(var(--radius) - 2px);
405
+ width: 100%;
406
+ margin-bottom: 12px;
407
+ color: rgb(189, 219, 209);
408
+ box-sizing: border-box;
409
+
410
+ &:focus {
411
+ outline: none;
412
+ border-color: hsl(var(--primary));
413
+ box-shadow: 0 0 0 1px hsl(var(--primary));
414
+ }
415
+ }
416
+
417
+ button[type='submit'] {
418
+ margin-top: 12px;
419
+ width: 100%;
420
+ background-color: hsl(var(--primary));
421
+ color: hsl(var(--primary-foreground));
422
+ letter-spacing: 0.05em;
423
+ font-size: 13px;
424
+ font-weight: 500;
425
+ padding: 0.5rem 1rem;
426
+ border-radius: calc(var(--radius) - 2px);
427
+ height: 2rem;
428
+ cursor: pointer;
429
+ border: none;
430
+
431
+ &:hover {
432
+ background-color: hsl(var(--primary) / 0.9);
433
+ }
434
+ }
435
+ }
133
436
  }
134
- }
135
437
  }
136
438
 
137
439
  :host(.max) {
138
- height: 100vh;
139
- width: 100vw;
140
- position: fixed;
141
- top: 0;
142
- left: 0;
143
- z-index: 9999;
440
+ height: 100vh;
441
+ width: 100vw;
442
+ position: fixed;
443
+ top: 0;
444
+ left: 0;
445
+ z-index: 9999;
144
446
  }
@@ -0,0 +1,6 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none"
2
+ stroke="rgb(115, 123, 140)" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"
3
+ class="lucide lucide-file w-3.5 h-3.5 text-muted-foreground shrink-0">
4
+ <path d="M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z"></path>
5
+ <path d="M14 2v4a2 2 0 0 0 2 2h4"></path>
6
+ </svg>
@@ -0,0 +1,6 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none"
2
+ stroke="rgb(46, 184, 138)" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"
3
+ class="lucide lucide-folder w-3.5 h-3.5 text-primary shrink-0">
4
+ <path
5
+ d="M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z"></path>
6
+ </svg>
@@ -0,0 +1,6 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none"
2
+ stroke="rgb(189, 219, 209)" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"
3
+ class="lucide lucide-arrow-up w-3.5 h-3.5">
4
+ <path d="m5 12 7-7 7 7"></path>
5
+ <path d="M12 19V5"></path>
6
+ </svg>