pinokiod 3.40.0 → 3.42.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.
Files changed (82) hide show
  1. package/kernel/api/browser/index.js +3 -1
  2. package/kernel/api/cloudflare/index.js +3 -3
  3. package/kernel/api/index.js +187 -51
  4. package/kernel/api/loading/index.js +15 -0
  5. package/kernel/api/process/index.js +7 -0
  6. package/kernel/api/shell/index.js +0 -2
  7. package/kernel/bin/browserless.js +22 -0
  8. package/kernel/bin/caddy.js +36 -4
  9. package/kernel/bin/index.js +4 -1
  10. package/kernel/bin/setup.js +38 -5
  11. package/kernel/connect/backend.js +110 -0
  12. package/kernel/connect/config.js +171 -0
  13. package/kernel/connect/index.js +18 -7
  14. package/kernel/connect/providers/huggingface/index.js +98 -0
  15. package/kernel/connect/providers/x/index.js +0 -1
  16. package/kernel/environment.js +91 -19
  17. package/kernel/git.js +46 -3
  18. package/kernel/index.js +119 -39
  19. package/kernel/peer.js +40 -5
  20. package/kernel/plugin.js +3 -2
  21. package/kernel/procs.js +27 -20
  22. package/kernel/prototype.js +30 -16
  23. package/kernel/router/common.js +1 -1
  24. package/kernel/router/connector.js +1 -3
  25. package/kernel/router/index.js +38 -4
  26. package/kernel/router/localhost_home_router.js +5 -1
  27. package/kernel/router/localhost_port_router.js +27 -1
  28. package/kernel/router/localhost_static_router.js +93 -0
  29. package/kernel/router/localhost_variable_router.js +14 -9
  30. package/kernel/router/peer_peer_router.js +3 -0
  31. package/kernel/router/peer_static_router.js +43 -0
  32. package/kernel/router/peer_variable_router.js +15 -14
  33. package/kernel/router/processor.js +26 -1
  34. package/kernel/router/rewriter.js +59 -0
  35. package/kernel/scripts/git/commit +11 -1
  36. package/kernel/shell.js +8 -3
  37. package/kernel/util.js +65 -6
  38. package/package.json +2 -1
  39. package/server/index.js +1048 -970
  40. package/server/public/common.js +382 -1
  41. package/server/public/fscreator.js +0 -1
  42. package/server/public/loading.js +17 -0
  43. package/server/public/notifyinput.js +0 -1
  44. package/server/public/opener.js +4 -2
  45. package/server/public/style.css +310 -11
  46. package/server/socket.js +7 -1
  47. package/server/views/app.ejs +1747 -351
  48. package/server/views/columns.ejs +338 -0
  49. package/server/views/connect/huggingface.ejs +353 -0
  50. package/server/views/connect/index.ejs +410 -0
  51. package/server/views/connect/x.ejs +43 -9
  52. package/server/views/connect.ejs +709 -49
  53. package/server/views/container.ejs +357 -0
  54. package/server/views/d.ejs +251 -62
  55. package/server/views/download.ejs +54 -10
  56. package/server/views/editor.ejs +11 -0
  57. package/server/views/explore.ejs +40 -15
  58. package/server/views/file_explorer.ejs +25 -246
  59. package/server/views/form.ejs +44 -1
  60. package/server/views/frame.ejs +39 -1
  61. package/server/views/github.ejs +48 -11
  62. package/server/views/help.ejs +48 -7
  63. package/server/views/index.ejs +119 -58
  64. package/server/views/index2.ejs +3 -4
  65. package/server/views/init/index.ejs +651 -197
  66. package/server/views/install.ejs +1 -1
  67. package/server/views/mini.ejs +47 -18
  68. package/server/views/net.ejs +199 -67
  69. package/server/views/network.ejs +229 -93
  70. package/server/views/network2.ejs +3 -4
  71. package/server/views/old_network.ejs +3 -3
  72. package/server/views/prototype/index.ejs +48 -11
  73. package/server/views/review.ejs +1005 -0
  74. package/server/views/rows.ejs +341 -0
  75. package/server/views/screenshots.ejs +1020 -0
  76. package/server/views/settings.ejs +160 -23
  77. package/server/views/setup.ejs +49 -7
  78. package/server/views/setup_home.ejs +43 -10
  79. package/server/views/shell.ejs +7 -1
  80. package/server/views/start.ejs +14 -9
  81. package/server/views/terminal.ejs +13 -2
  82. package/server/views/tools.ejs +1015 -0
@@ -0,0 +1,357 @@
1
+
2
+ <html>
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1" />
6
+ <link href="/xterm.min.css" rel="stylesheet" />
7
+ <link href="/css/fontawesome.min.css" rel="stylesheet">
8
+ <link href="/css/solid.min.css" rel="stylesheet">
9
+ <link href="/css/regular.min.css" rel="stylesheet">
10
+ <link href="/css/brands.min.css" rel="stylesheet">
11
+ <link href="/markdown.css" rel="stylesheet"/>
12
+ <link href="/noty.css" rel="stylesheet"/>
13
+ <link href="/style.css" rel="stylesheet"/>
14
+ <% if (agent === "electron") { %>
15
+ <link href="/electron.css" rel="stylesheet"/>
16
+ <% } %>
17
+ <style>
18
+ body {
19
+ width: 100%;
20
+ height: 100%;
21
+ display: flex;
22
+ flex-direction: column;
23
+ }
24
+ .line2 {
25
+ display: flex;
26
+ align-items: center;
27
+ cursor: pointer;
28
+ background: rgba(0,0,100,0.04);
29
+ }
30
+ .line2 a {
31
+ text-decoration: none;
32
+ color: black;
33
+ }
34
+ .status {
35
+ padding: 10px;
36
+ margin: 10px;
37
+ border-radius: 10px;
38
+ }
39
+ .status.offline {
40
+ background: silver;
41
+ }
42
+ .status.online {
43
+ background: yellowgreen;
44
+ }
45
+ .switch {
46
+ padding: 10px;
47
+ margin: 10px 0;
48
+ }
49
+ .switch[data-online=true] {
50
+ color: yellowgreen;
51
+ }
52
+ .button {
53
+ padding: 10px;
54
+ }
55
+ .on, .off {
56
+ display: flex;
57
+ align-items: center;
58
+ }
59
+ /*
60
+ .btn {
61
+ margin-right: 5px;
62
+ font-weight: normal;
63
+ padding: 5px 15px;
64
+ min-width: 100px;
65
+ text-align: center;
66
+ }
67
+ */
68
+ .items {
69
+ max-width: 600px;
70
+ margin: 50px auto;
71
+ }
72
+ body.dark .item {
73
+ border-left: 5px solid rgba(255,255,255,0.06);
74
+ }
75
+ .item {
76
+ margin: 0;
77
+ /*
78
+ border-top: 1px solid rgba(255,255,255,0.1);
79
+ border-bottom: 1px solid rgba(255,255,255,0.1);
80
+ */
81
+ padding: 10px;
82
+ border-left: 5px solid rgba(0,0,0,0.06);
83
+ }
84
+ .titleview {
85
+ margin: 0;
86
+ padding: 25px;
87
+ max-width: 600px;
88
+ }
89
+ .titleview h1 {
90
+ word-break: break-word;
91
+ font-size: 40px;
92
+ margin-bottom: 10px;
93
+ }
94
+ .item > .d {
95
+ padding-bottom: 10px;
96
+ }
97
+ .item label {
98
+ display: block;
99
+ text-transform: capitalize;
100
+ font-size: 20px;
101
+ font-weight: bold;
102
+ padding-bottom: 5px;
103
+ }
104
+ .item .explanation {
105
+ padding-top: 5px;
106
+ color: #bf411d;
107
+ font-size: 12px;
108
+ }
109
+ .item input[type=text] {
110
+ background: whitesmoke;
111
+ }
112
+ .item select {
113
+ background: whitesmoke;
114
+ }
115
+ /*
116
+ body.dark .item input[type=text] {
117
+ background: rgba(255,255,255,0.1);
118
+ color: white;
119
+ }
120
+ body.dark .item select {
121
+ color: white;
122
+ background: rgba(255,255,255,0.1);
123
+ }
124
+ */
125
+ .item input[type=text] {
126
+ padding: 10px;
127
+ flex-grow: 1;
128
+ border: none;
129
+ /*
130
+ background: rgba(0,0,0,0.05);
131
+ */
132
+ width: 100%;
133
+ }
134
+ .item select {
135
+ /*
136
+ -webkit-appearance: none;
137
+ -moz-appearance: none;
138
+ appearance: none;
139
+ */
140
+
141
+ /*
142
+ background: rgba(0,0,0,0.05);
143
+ */
144
+ padding: 10px;
145
+ box-sizing: border-box;
146
+ width: 100%;
147
+ border: none;
148
+ }
149
+ .item img {
150
+ width: 100px;
151
+ }
152
+ .item .title {
153
+ text-decoration: none;
154
+ color: royalblue;
155
+ }
156
+ .item .col {
157
+ padding: 10px;
158
+ }
159
+ .item .col > * {
160
+ margin: 5px 0;
161
+ }
162
+ .item .stat {
163
+ color: rgba(0,0,0,0.8);
164
+ display: flex;
165
+ }
166
+ .item .stat > * {
167
+ margin-right: 15px;
168
+ }
169
+ .timestamp {
170
+ color: rgba(0,0,0,0.5);
171
+ }
172
+ body.dark .loading {
173
+ background: rgba(255,255,255,0.06);
174
+ }
175
+ .loading {
176
+ padding: 20px;
177
+ text-align: center;
178
+ background: rgba(0,0,0,0.06);
179
+ }
180
+ body.dark .btn {
181
+ color: white;
182
+ background: rgba(255,255,255,0.1);
183
+ }
184
+ body.light {
185
+ /*
186
+ background: var(--light-nav-bg);
187
+ */
188
+ }
189
+ /*
190
+ form {
191
+ text-align: center;
192
+ }
193
+ body.dark header .btn2 {
194
+ color: var(--light-link-color);
195
+ }
196
+ header .btn2 {
197
+ color: var(--light-color);
198
+ }
199
+ */
200
+ /*
201
+ body.dark header .home {
202
+ color: var(--light-link-color);
203
+ }
204
+ */
205
+ header .home {
206
+ color: var(--light-color);
207
+ padding: 10px;
208
+ }
209
+ body.dark hr {
210
+ background: white;
211
+ }
212
+ hr {
213
+ opacity: 0.03;
214
+ background: black;
215
+ margin: 30px 0;
216
+ height: 1px;
217
+ border: none;
218
+ }
219
+ .reset-cache-loading {
220
+ padding: 10px;
221
+ background: rgba(0,0,0,0.1);
222
+ margin-bottom: 10px;
223
+ text-align: center;
224
+ }
225
+ .reset-bin-loading {
226
+ padding: 10px;
227
+ background: rgba(0,0,0,0.1);
228
+ margin-bottom: 10px;
229
+ text-align: center;
230
+ }
231
+ #proxy {
232
+ text-decoration: underline;
233
+ margin-left: 10px;
234
+ display: inline-block;
235
+ cursor: pointer;
236
+ }
237
+ body.dark .keys pre {
238
+ background: rgba(255,255,255,0.02) !important;
239
+ }
240
+ .keys pre {
241
+ padding: 20px;
242
+ margin: 20px 0;
243
+ background: rgba(0,0,100,0.04) !important;
244
+ }
245
+ .swal2-actions {
246
+ justify-content: center !important;
247
+ }
248
+ .swal2-title {
249
+ text-align: center !important;
250
+ }
251
+ main {
252
+ display: flex;
253
+ }
254
+ aside {
255
+ width: 200px;
256
+ display: block;
257
+ flex-shrink: 0;
258
+ }
259
+ aside .tab i {
260
+ width: 20px;
261
+ text-align: center;
262
+ }
263
+ body.dark aside .tab {
264
+ color: white;
265
+ }
266
+ body.dark aside .tab:hover, aside .tab:hover {
267
+ color: royalblue !important;
268
+ opacity: 1;
269
+ }
270
+ aside .tab {
271
+ display: block;
272
+ color: black;
273
+ text-decoration: none;
274
+ padding: 10px;
275
+ font-size: 12px;
276
+ opacity: 0.5;
277
+ border-left: 10px solid transparent;
278
+ }
279
+ body.dark aside .tab.selected {
280
+ color: white;
281
+ }
282
+ aside .selected {
283
+ font-weight: bold;
284
+ opacity: 1;
285
+ }
286
+ iframe {
287
+ background: white;
288
+ flex: 1 1 auto; /* Shorthand for flex-grow: 1, flex-shrink: 1, flex-basis: auto */
289
+
290
+ border: none;
291
+ width: 100%;
292
+ }
293
+ @media only screen and (max-width: 800px) {
294
+ body {
295
+ display: flex !important;
296
+ flex-direction: row !important;
297
+ }
298
+ }
299
+ </style>
300
+ <script src="/popper.min.js"></script>
301
+ <script src="/tippy-bundle.umd.min.js"></script>
302
+ <script src="/hotkeys.min.js"></script>
303
+ <script src="/sweetalert2.js"></script>
304
+ <script src="/noty.js"></script>
305
+ <script src="/notyq.js"></script>
306
+ <script src="/xterm.js"></script>
307
+ <script src="/xterm-addon-fit.js"></script>
308
+ <script src="/xterm-addon-web-links.js"></script>
309
+ <script src="/xterm-theme.js"></script>
310
+ <script src="/install.js"></script>
311
+ <script src="/timeago.min.js"></script>
312
+ <script src="/common.js"></script>
313
+ <script src="/opener.js"></script>
314
+ <script src="/nav.js"></script>
315
+ <script src="/report.js"></script>
316
+ </head>
317
+ <body class='<%=theme%>' data-agent="<%=agent%>">
318
+ <!--
319
+ <nav>
320
+ <a class='logo' href="/">dal</a>
321
+ </nav>
322
+ -->
323
+ <header class='navheader grabbable'>
324
+ <h1>
325
+ <a class='home' href="/"><img class='icon' src="/pinokio-black.png"></a>
326
+ <button class='btn2' id='back' data-tippy-content="back"><div><i class="fa-solid fa-chevron-left"></i></div></button>
327
+ <button class='btn2' id='forward' data-tippy-content="forward"><div><i class="fa-solid fa-chevron-right"></i></div></button>
328
+ <button class='btn2' id='refresh-page' data-tippy-content="refresh"><div><i class="fa-solid fa-rotate-right"></i></div></button>
329
+ <button class='btn2' id='screenshot' data-tippy-content="take a screenshot"><i class="fa-solid fa-camera"></i></button>
330
+ <form class='urlbar'><input type='url' placeholder='enter a local url'></form>
331
+ <a class='btn2' href="/columns" data-tippy-content="split into 2 columns">
332
+ <div><i class="fa-solid fa-table-columns"></i></div>
333
+ </a>
334
+ <a class='btn2' href="/rows" data-tippy-content="split into 2 rows">
335
+ <div><i class="fa-solid fa-table-columns fa-rotate-270"></i></div>
336
+ </a>
337
+ <div class="dropdown btn2">
338
+ <button class='btn2' id='window-management'>
339
+ <div><i class="fa-solid fa-plus"></i></div>
340
+ </button>
341
+ <div class="dropdown-content" id="dropdown-content">
342
+ <button class='btn2' id='clone-win' data-tippy-content="clone this window">
343
+ <div><i class="fa-solid fa-clone"></i><div>clone this window</div></div>
344
+ </button>
345
+ <button id='new-window' data-tippy-content="open a new window" title='open a new window' class='btn2' data-agent="<%=agent%>">
346
+ <div><i class="fa-solid fa-plus"></i><div>new window</div></div>
347
+ </button>
348
+ </div>
349
+ </div>
350
+ <button class='btn2 hidden' id='close-window' data-tippy-content='close this section'>
351
+ <div><i class="fa-solid fa-xmark"></i></div>
352
+ </button>
353
+ </h1>
354
+ </header>
355
+ <iframe src="<%=src%>"></iframe>
356
+ </body>
357
+ </html>