pinokiod 3.9.2 → 3.9.12
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/kernel/api/index.js +150 -67
- package/kernel/api/rm/index.js +3 -2
- package/kernel/api/set/index.js +4 -2
- package/kernel/bin/caddy.js +0 -2
- package/kernel/bin/index.js +13 -0
- package/kernel/index.js +10 -8
- package/kernel/info.js +3 -0
- package/kernel/plugin.js +34 -0
- package/kernel/router/index.js +1 -1
- package/kernel/router/localhost_variable_router.js +1 -1
- package/kernel/router/peer_variable_router.js +1 -1
- package/kernel/shell.js +14 -0
- package/kernel/util.js +19 -1
- package/package.json +1 -1
- package/server/index.js +296 -98
- package/server/public/modalinput.js +7 -2
- package/server/public/opener.js +32 -0
- package/server/public/style.css +37 -2
- package/server/socket.js +7 -3
- package/server/views/app.ejs +199 -79
- package/server/views/env_editor.ejs +1 -0
- package/server/views/file_explorer.ejs +1 -1
- package/server/views/index.ejs +66 -43
- package/server/views/partials/dynamic.ejs +54 -6
- package/server/views/partials/menu.ejs +11 -6
- package/server/views/prototype/index.ejs +366 -31
- package/server/views/prototype/show.ejs +386 -30
- package/server/views/required_env_editor.ejs +1 -0
- package/server/views/settings.ejs +58 -43
- package/server/views/terminal.ejs +6 -0
|
@@ -52,30 +52,42 @@
|
|
|
52
52
|
.btn {
|
|
53
53
|
margin-right: 5px;
|
|
54
54
|
font-weight: normal;
|
|
55
|
+
padding: 5px 15px;
|
|
56
|
+
min-width: 100px;
|
|
57
|
+
text-align: center;
|
|
58
|
+
background: rgba(0,0,0,0.9);
|
|
59
|
+
border: 1px solid rgba(0,0,0,0.9);
|
|
55
60
|
}
|
|
56
61
|
.items {
|
|
57
62
|
max-width: 600px;
|
|
58
63
|
margin: 50px auto;
|
|
59
64
|
}
|
|
65
|
+
body.dark .item {
|
|
66
|
+
border-left: 5px solid rgba(255,255,255,0.06);
|
|
67
|
+
}
|
|
60
68
|
.item {
|
|
61
69
|
margin: 0;
|
|
62
70
|
/*
|
|
63
71
|
border-top: 1px solid rgba(255,255,255,0.1);
|
|
64
72
|
border-bottom: 1px solid rgba(255,255,255,0.1);
|
|
65
73
|
*/
|
|
66
|
-
padding:
|
|
74
|
+
padding: 10px;
|
|
75
|
+
border-left: 5px solid rgba(0,0,0,0.06);
|
|
76
|
+
}
|
|
77
|
+
.titleview {
|
|
78
|
+
margin: 0;
|
|
79
|
+
padding: 25px;
|
|
80
|
+
max-width: 600px;
|
|
67
81
|
}
|
|
68
82
|
.titleview h1 {
|
|
69
83
|
word-break: break-word;
|
|
70
|
-
font-size:
|
|
71
|
-
letter-spacing:
|
|
84
|
+
font-size: 30px;
|
|
85
|
+
letter-spacing: 0px;
|
|
86
|
+
margin-bottom: 10px;
|
|
72
87
|
}
|
|
73
88
|
.item > .d {
|
|
74
89
|
padding-bottom: 10px;
|
|
75
90
|
}
|
|
76
|
-
.item button {
|
|
77
|
-
padding: 10px 20px;
|
|
78
|
-
}
|
|
79
91
|
.item label {
|
|
80
92
|
display: block;
|
|
81
93
|
text-transform: capitalize;
|
|
@@ -83,12 +95,13 @@
|
|
|
83
95
|
font-weight: bold;
|
|
84
96
|
padding-bottom: 5px;
|
|
85
97
|
}
|
|
98
|
+
body.dark .item .explanation {
|
|
99
|
+
color: rgba(240, 0, 0,1);
|
|
100
|
+
}
|
|
86
101
|
.item .explanation {
|
|
87
102
|
padding-top: 5px;
|
|
88
|
-
color:
|
|
103
|
+
color: rgba(210,0,0,0.8);
|
|
89
104
|
font-size: 12px;
|
|
90
|
-
font-weight: bold;
|
|
91
|
-
font-family: verdana;
|
|
92
105
|
}
|
|
93
106
|
body.dark .item input[type=text] {
|
|
94
107
|
background: rgba(255,255,255,0.1);
|
|
@@ -106,9 +119,11 @@ body.dark .item select {
|
|
|
106
119
|
width: 100%;
|
|
107
120
|
}
|
|
108
121
|
.item select {
|
|
122
|
+
/*
|
|
109
123
|
-webkit-appearance: none;
|
|
110
124
|
-moz-appearance: none;
|
|
111
125
|
appearance: none;
|
|
126
|
+
*/
|
|
112
127
|
|
|
113
128
|
background: rgba(0,0,0,0.05);
|
|
114
129
|
padding: 10px;
|
|
@@ -139,9 +154,13 @@ body.dark .item select {
|
|
|
139
154
|
.timestamp {
|
|
140
155
|
color: rgba(0,0,0,0.5);
|
|
141
156
|
}
|
|
157
|
+
body.dark .loading {
|
|
158
|
+
background: rgba(255,255,255,0.06);
|
|
159
|
+
}
|
|
142
160
|
.loading {
|
|
143
|
-
padding:
|
|
161
|
+
padding: 20px;
|
|
144
162
|
text-align: center;
|
|
163
|
+
background: rgba(0,0,0,0.06);
|
|
145
164
|
}
|
|
146
165
|
body.dark .btn {
|
|
147
166
|
color: white;
|
|
@@ -178,7 +197,7 @@ body.dark hr {
|
|
|
178
197
|
hr {
|
|
179
198
|
opacity: 0.03;
|
|
180
199
|
background: black;
|
|
181
|
-
margin:
|
|
200
|
+
margin: 30px 0;
|
|
182
201
|
height: 1px;
|
|
183
202
|
border: none;
|
|
184
203
|
}
|
|
@@ -202,7 +221,7 @@ hr {
|
|
|
202
221
|
}
|
|
203
222
|
.keys pre {
|
|
204
223
|
padding: 20px;
|
|
205
|
-
margin
|
|
224
|
+
margin: 20px 0;
|
|
206
225
|
background: rgba(0,0,200,0.1) !important;
|
|
207
226
|
}
|
|
208
227
|
</style>
|
|
@@ -274,8 +293,6 @@ hr {
|
|
|
274
293
|
<div class='container'>
|
|
275
294
|
<div class='titleview'>
|
|
276
295
|
<h1>Settings</h1>
|
|
277
|
-
<br>
|
|
278
|
-
<br>
|
|
279
296
|
<div>
|
|
280
297
|
<div class='item'>
|
|
281
298
|
<label>Version</label>
|
|
@@ -318,9 +335,10 @@ hr {
|
|
|
318
335
|
<% } %>
|
|
319
336
|
</div>
|
|
320
337
|
<% }) %>
|
|
321
|
-
<
|
|
322
|
-
|
|
323
|
-
|
|
338
|
+
<div class='item'>
|
|
339
|
+
<button id='save' class='btn disabled'>Save</button>
|
|
340
|
+
<a id='proxy'>Running behind proxy?</a>
|
|
341
|
+
</div>
|
|
324
342
|
</form>
|
|
325
343
|
<div class='loading hidden'>
|
|
326
344
|
<i class="fa-solid fa-circle-notch fa-spin"></i> Stand by. Do not close this window..
|
|
@@ -329,10 +347,8 @@ hr {
|
|
|
329
347
|
<hr/>
|
|
330
348
|
<div id='troubleshoot' class='troubleshoot'>
|
|
331
349
|
<h1>Troubleshoot</h1>
|
|
332
|
-
<br>
|
|
333
|
-
<br>
|
|
334
350
|
<div class='item'>
|
|
335
|
-
<label
|
|
351
|
+
<label>bin</label>
|
|
336
352
|
<div class='d'>Reset the bin folder and start fresh from scratch</div>
|
|
337
353
|
<div class='reset-bin-loading hidden'>
|
|
338
354
|
<i class="fa-solid fa-circle-notch fa-spin"></i> Stand by. Do not close this window..
|
|
@@ -343,7 +359,7 @@ hr {
|
|
|
343
359
|
</div>
|
|
344
360
|
</div>
|
|
345
361
|
<div class='item'>
|
|
346
|
-
<label
|
|
362
|
+
<label>server cache</label>
|
|
347
363
|
<div class='d'>Reset the pinokio server cache folder and start fresh from scratch</div>
|
|
348
364
|
<div class='reset-cache-loading hidden'>
|
|
349
365
|
<i class="fa-solid fa-circle-notch fa-spin"></i> Stand by. Do not close this window..
|
|
@@ -354,7 +370,7 @@ hr {
|
|
|
354
370
|
</div>
|
|
355
371
|
</div>
|
|
356
372
|
<div class='item'>
|
|
357
|
-
<label
|
|
373
|
+
<label>environment variables</label>
|
|
358
374
|
<div class='d'>Reset the pinokio environment variables and start fresh from scratch (Resets the ~/pinokio/ENVIRONMENT file)</div>
|
|
359
375
|
<div class='reset-env-loading hidden'>
|
|
360
376
|
<i class="fa-solid fa-circle-notch fa-spin"></i> Stand by. Do not close this window..
|
|
@@ -366,7 +382,7 @@ hr {
|
|
|
366
382
|
</div>
|
|
367
383
|
<% if (agent === "electron") { %>
|
|
368
384
|
<div class='item'>
|
|
369
|
-
<label
|
|
385
|
+
<label>browser cache</label>
|
|
370
386
|
<div class='d'>Reset the pinokio browser cache</div>
|
|
371
387
|
<div class='reset-browser-cache-loading hidden'>
|
|
372
388
|
<i class="fa-solid fa-circle-notch fa-spin"></i> Stand by. Do not close this window..
|
|
@@ -377,7 +393,7 @@ hr {
|
|
|
377
393
|
</div>
|
|
378
394
|
<% } %>
|
|
379
395
|
<div class='item'>
|
|
380
|
-
<label
|
|
396
|
+
<label>drive</label>
|
|
381
397
|
<div class='d'>Shared virtual drives</div>
|
|
382
398
|
<div>
|
|
383
399
|
<button class='btn' data-filepath="<%=drive%>"><i class="fa-solid fa-up-right-from-square"></i> View Folder</button>
|
|
@@ -387,29 +403,28 @@ hr {
|
|
|
387
403
|
<hr/>
|
|
388
404
|
<div class='keys'>
|
|
389
405
|
<h1>Keys</h1>
|
|
390
|
-
<
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
<a class='btn' href="/keys"><i class="fa-solid fa-key"></i> Edit Keys</a>
|
|
406
|
+
<div class='item'>
|
|
407
|
+
<div>Keys are array values stored for unique host names, stored at <code>~/pinokio/key.json</code>, and can be set through <code>pre</code> attributes in pinokio scripts. Here's an example:</div>
|
|
408
|
+
<pre>{
|
|
409
|
+
"openai.com": [
|
|
410
|
+
"sk-proj-2najBvCGFx18belpjf13T3BlbkFJIAR5KXK031n41WzAsPEn"
|
|
411
|
+
],
|
|
412
|
+
"x.com": [
|
|
413
|
+
"12345678-FAKEaccesstoken1234567890abcdef",
|
|
414
|
+
"FAKEaccesstokensecret0987654321abcdef"
|
|
415
|
+
]
|
|
416
|
+
}</pre>
|
|
417
|
+
<a class='btn' href="/keys"><i class="fa-solid fa-key"></i> Edit Keys</a>
|
|
418
|
+
</div>
|
|
404
419
|
</div>
|
|
405
420
|
<hr/>
|
|
406
421
|
<div class='advanced'>
|
|
407
422
|
<h1>Advanced Settings</h1>
|
|
408
|
-
<
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
423
|
+
<div class='item'>
|
|
424
|
+
<div>Edit the system ENVIRONMENT file to customize pinokio system wide settings, such as where files are stored, terminal behavior, etc.</div>
|
|
425
|
+
<br>
|
|
426
|
+
<a class='btn' href="/env"><i class="fa-regular fa-pen-to-square"></i> Edit ENVIRONMENT</a>
|
|
427
|
+
</div>
|
|
413
428
|
</div>
|
|
414
429
|
<hr/>
|
|
415
430
|
<% } %>
|
|
@@ -177,6 +177,9 @@ document.addEventListener("DOMContentLoaded", async () => {
|
|
|
177
177
|
this.socket.run({
|
|
178
178
|
method: "kernel.api.stop",
|
|
179
179
|
params: {
|
|
180
|
+
<% if (script_id) { %>
|
|
181
|
+
id: "<%=script_id%>",
|
|
182
|
+
<% } %>
|
|
180
183
|
//uri: "<%-uri%>",
|
|
181
184
|
//uri: location.pathname.slice(1).replace("api/", ""),
|
|
182
185
|
<% if (script_path) { %>
|
|
@@ -223,6 +226,9 @@ document.addEventListener("DOMContentLoaded", async () => {
|
|
|
223
226
|
|
|
224
227
|
this.socket.run({
|
|
225
228
|
//uri: location.pathname.slice(1).replace("api/", ""),
|
|
229
|
+
<% if (script_id) { %>
|
|
230
|
+
id: "<%=script_id%>",
|
|
231
|
+
<% } %>
|
|
226
232
|
<% if (script_path) { %>
|
|
227
233
|
uri: "<%=script_path%>",
|
|
228
234
|
cwd: "<%=cwd%>",
|