pinokiod 2.15.7 → 2.15.9

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.
@@ -1593,3 +1593,48 @@ footer.status {
1593
1593
  .btn.red {
1594
1594
  background: brown !important;
1595
1595
  }
1596
+
1597
+ #error-screen {
1598
+ position: absolute;
1599
+ top: 0;
1600
+ left: 0;
1601
+ bottom: 0;
1602
+ right: 0;
1603
+ z-index: 100000000;
1604
+ display: flex;
1605
+ flex-direction: column;
1606
+ }
1607
+ #error-screen pre {
1608
+ padding: 20px;
1609
+ box-sizing: border-box;
1610
+ width: 100%;
1611
+ /*
1612
+ height: 100%;
1613
+ */
1614
+ margin: 0;
1615
+ background: royalblue;
1616
+ color: white;
1617
+ overflow: auto;
1618
+ flex-grow: 1;
1619
+ }
1620
+ #error-screen-footer {
1621
+ padding: 10px;
1622
+ box-sizing: border-box;
1623
+ text-align: center;
1624
+ background: royalblue;
1625
+ }
1626
+ #error-screen-close {
1627
+ background: rgba(0, 0, 0, 0.6);
1628
+ font-size: 16px;
1629
+ padding: 10px 20px;
1630
+ font-weight: bold;
1631
+ width: 100%;
1632
+ }
1633
+
1634
+ mark{
1635
+ background: red;
1636
+ color: white;
1637
+ padding: 5px;
1638
+ display: inline-block;
1639
+ margin: 5px 0;
1640
+ }
@@ -676,9 +676,6 @@ const subUrlOf = (s, f) => {
676
676
  if (!fullParsed.searchParams.has(key)) {
677
677
  return false
678
678
  }
679
- console.log("key", key)
680
- console.log("f", fullParsed.searchParams.get(key))
681
- console.log("s", val)
682
679
  if (fullParsed.searchParams.get(key) !== val) {
683
680
  return false
684
681
  }
@@ -691,7 +688,6 @@ const renderCursor = () => {
691
688
  el.classList.remove("cursor")
692
689
  })
693
690
  const target = document.querySelector(".selectable[data-index='" + cursorIndex + "']")
694
- console.log({ cursorIndex, target })
695
691
  target.classList.add("cursor")
696
692
  }
697
693
  const nav = (type) => {
@@ -794,7 +790,6 @@ const renderSelection = (e, force) => {
794
790
  //
795
791
  // => select that tab and frame
796
792
 
797
- console.log("target", target)
798
793
  if (target) {
799
794
 
800
795
  // display the menu button at the top
@@ -809,12 +804,10 @@ const renderSelection = (e, force) => {
809
804
  }
810
805
 
811
806
  if (target) {
812
- console.log("# 3")
813
807
 
814
808
 
815
809
  // Instantiate a frame with the selected target's href
816
810
  let url = target.href
817
- console.log("> url", url)
818
811
  document.querySelector("#open-browser").href = url
819
812
  document.querySelector("#clone-tab").setAttribute("data-href", url)
820
813
  document.querySelector("#location").value = url
@@ -1409,6 +1402,11 @@ const refresh = async (silent) => {
1409
1402
  // render the selected frame only if not silent
1410
1403
  if (silent) {
1411
1404
  } else {
1405
+ await new Promise((resolve, reject) => {
1406
+ setTimeout(() => {
1407
+ resolve()
1408
+ }, 1000)
1409
+ })
1412
1410
  renderSelection()
1413
1411
  }
1414
1412
  }
@@ -23,6 +23,7 @@
23
23
  <script src="/waitmodal.js"></script>
24
24
  <script src="/notifyinput.js"></script>
25
25
  <script src="/report.js"></script>
26
+ <script src="/mark.min.js"></script>
26
27
  <link href="/xterm.min.css" rel="stylesheet" />
27
28
  <link href="/css/fontawesome.min.css" rel="stylesheet">
28
29
  <link href="/css/solid.min.css" rel="stylesheet">
@@ -307,6 +308,7 @@ document.addEventListener("DOMContentLoaded", async () => {
307
308
  this.socket.close()
308
309
  document.querySelector(".run .play").classList.remove("hidden")
309
310
  document.querySelector(".run .stop").classList.add("hidden")
311
+
310
312
  } else if (packet.type === 'connect') {
311
313
  // document.querySelector(".terminal-container").classList.remove("hidden")
312
314
  const message = "..........Connected!\r\n"
@@ -464,13 +466,14 @@ document.addEventListener("DOMContentLoaded", async () => {
464
466
  text: `${packet.data}`,
465
467
  })
466
468
  } else if (packet.type === "error") {
469
+ debugger
467
470
  // n.Noty({
468
471
  // text: `${packet.data}`,
469
472
  // type: "error"
470
473
  // })
471
- this.socket.close()
472
- // refreshParent(packet)
473
- reloadMemory()
474
+ // this.socket.close()
475
+ //// refreshParent(packet)
476
+ // reloadMemory()
474
477
  //document.querySelector("footer").innerHTML = `<b><i class="fa-solid fa-triangle-exclamation"></i> ERROR</b><pre>${packet.data}</pre>`
475
478
  document.querySelector("footer .content").innerHTML = document.querySelector("footer .content").innerHTML + `<pre class='error'>${packet.data}</pre>`
476
479
  // document.querySelector("footer .toggle-expand i").className = "fa-solid fa-circle-chevron-down"
@@ -481,6 +484,23 @@ document.addEventListener("DOMContentLoaded", async () => {
481
484
  document.querySelector(".run .starting").classList.add("hidden")
482
485
  document.querySelector(".run .stop").classList.add("hidden")
483
486
 
487
+ document.querySelector("#error-screen").classList.remove("hidden")
488
+ document.querySelector("#error-screen pre").textContent = packet.data
489
+ let instance = new Mark(document.querySelector("#error-screen pre"), {
490
+ separateWordSearch: false,
491
+ accuracy: "exactly"
492
+ })
493
+ /*
494
+ document.querySelector("#error-screen").addEventListener("click", (e) => {
495
+ document.querySelector("#error-screen").classList.add("hidden")
496
+ })
497
+ */
498
+ console.log("instance", instance)
499
+ console.log("EVENT", packet.event)
500
+ instance.mark(packet.event)
501
+ let element = document.querySelector("mark")
502
+ element.scrollIntoView({ behavior: "smooth", block: "center" });
503
+
484
504
  } else if (packet.type === "event") {
485
505
  if (packet.data === "stop") {
486
506
  document.querySelector("footer").innerHTML = "<b>Ready</b>"
@@ -865,5 +885,11 @@ const reloadMemory = async () => {
865
885
  <footer><b>Ready</b></footer>
866
886
  <% } %>
867
887
  <% } %>
888
+ <div id='error-screen' class='hidden'>
889
+ <pre></pre>
890
+ <div id='error-screen-footer'>
891
+ <button id='error-screen-close' class='btn'>Close</button>
892
+ </div>
893
+ </div>
868
894
  </body>
869
895
  </html>
@@ -25,6 +25,7 @@
25
25
  <script src="/waitmodal.js"></script>
26
26
  <script src="/notifyinput.js"></script>
27
27
  <script src="/report.js"></script>
28
+ <script src="/mark.min.js"></script>
28
29
  <link href="/xterm.min.css" rel="stylesheet" />
29
30
  <link href="/css/fontawesome.min.css" rel="stylesheet">
30
31
  <link href="/css/solid.min.css" rel="stylesheet">
@@ -41,7 +42,6 @@ html {
41
42
  height: 100%;
42
43
  overflow: hidden;
43
44
  }
44
-
45
45
  body {
46
46
  height: 100%;
47
47
  overflow: hidden;
@@ -192,6 +192,7 @@ document.addEventListener("DOMContentLoaded", async () => {
192
192
  rows: this.term.rows,
193
193
  }
194
194
  }, async (packet) => {
195
+ console.log({ packet })
195
196
  if (packet.type === 'start') {
196
197
  refreshParent(packet)
197
198
  reloadMemory()
@@ -425,9 +426,12 @@ document.addEventListener("DOMContentLoaded", async () => {
425
426
  // text: `${packet.data}`,
426
427
  // type: "error"
427
428
  // })
428
- this.socket.close()
429
- refreshParent(packet)
430
- reloadMemory()
429
+
430
+ // this.socket.close()
431
+ // refreshParent(packet)
432
+ // reloadMemory()
433
+
434
+
431
435
 
432
436
  document.querySelector("footer .content").innerHTML = document.querySelector("footer .content").innerHTML + `<pre class='error'>${packet.data}</pre>`
433
437
  // document.querySelector("footer .toggle-expand i").className = "fa-solid fa-circle-chevron-down"
@@ -438,6 +442,27 @@ document.addEventListener("DOMContentLoaded", async () => {
438
442
  document.querySelector(".run .starting").classList.add("hidden")
439
443
  document.querySelector(".run .stop").classList.add("hidden")
440
444
 
445
+
446
+ document.querySelector("#error-screen").classList.remove("hidden")
447
+ document.querySelector("#error-screen pre").textContent = packet.data
448
+ let instance = new Mark(document.querySelector("#error-screen pre"), {
449
+ separateWordSearch: false,
450
+ accuracy: "exactly"
451
+ })
452
+ /*
453
+ document.querySelector("#error-screen").addEventListener("click", (e) => {
454
+ document.querySelector("#error-screen").classList.add("hidden")
455
+ })
456
+ */
457
+ console.log("instance", instance)
458
+ console.log("EVENT", packet.event)
459
+ instance.mark(packet.event)
460
+ let element = document.querySelector("mark")
461
+ element.scrollIntoView({ behavior: "smooth", block: "center" });
462
+
463
+
464
+
465
+
441
466
  } else if (packet.type === "event") {
442
467
  if (packet.data === "stop") {
443
468
  document.querySelector("footer").innerHTML = "<b>Ready</b>"
@@ -480,7 +505,7 @@ document.addEventListener("DOMContentLoaded", async () => {
480
505
  document.querySelector(".run .starting").classList.add("hidden")
481
506
  document.querySelector(".run .stop").classList.add("hidden")
482
507
  }, 0)
483
- this.socket.close()
508
+ //this.socket.close()
484
509
  }
485
510
  }
486
511
 
@@ -798,5 +823,11 @@ const reloadMemory = async () => {
798
823
  <footer><b>Ready</b></footer>
799
824
  <% } %>
800
825
  <% } %>
826
+ <div id='error-screen' class='hidden'>
827
+ <pre></pre>
828
+ <div id='error-screen-footer' class='hidden'>
829
+ <button id='error-screen-close' class='btn'>Close</button>
830
+ </div>
831
+ </div>
801
832
  </body>
802
833
  </html>
@@ -182,6 +182,7 @@ body.dark .browser-options-row {
182
182
  </form>
183
183
  <% if (ishome) { %>
184
184
  <div class='nav-btns'>
185
+ <a class='btn2' href='/proxy'><div><i class="fa-solid fa-wifi"></i></div><div>Share</div></a>
185
186
  <a class='btn2' id='explore'><div><i class="fa-solid fa-globe"></i></div><div>Discover</div></a>
186
187
  <a class='btn2' href="https://portal.pinokio.computer/" target="_blank"><div><i class="fa-solid fa-face-smile-beam"></i></div><div>Community</div></a>
187
188
  <% if (agent === "electron") { %>
@@ -235,24 +236,32 @@ body.dark .browser-options-row {
235
236
  </div>
236
237
  </div>
237
238
  <% } %>
239
+ <!--
238
240
  <div class='browser-options-row'>
239
- <% if (proxy) { %>
240
- <a id='wifi-stop' data-proxy="<%=proxy.proxy%>" class='btn'><div><i class="fa-solid fa-stop"></i> Stop</div></a>
241
- <div class='flexible'>
242
- <h3><i class="fa-solid fa-wifi"></i> Local Share</h3>
243
- <div>Access Pinokio from any device on the same network. By default it's off.</div>
244
- <span class='badge'><i class="fa-solid fa-circle-notch fa-spin"></i> Running at <a href="<%=proxy.proxy%>" target="_blank" features="browser"><%=proxy.proxy%></a></span>
245
- <a id='wifi-qr' class='badge'><i class="fa-solid fa-qrcode"></i> Scan QR Code</a>
246
- </div>
247
- <% } else { %>
248
- <a id='wifi' class='btn'><div><i class="fa-solid fa-play"></i> Start</div></a>
249
- <a id='wifi-starting' class='btn disabled hidden'><div><i class="fa-solid fa-circle-notch fa-spin"></i> Starting</div></a>
250
- <div class='flexible'>
251
- <h3><i class="fa-solid fa-wifi"></i> Local Share</h3>
252
- <div>Access Pinokio from any device on the same network. By default it's off.</div>
253
- </div>
241
+ <a href="/proxy" class='flexible'>
242
+ <h3><i class="fa-solid fa-wifi"></i> Local Share</h3>
243
+ <div>Access Pinokio, Ollama, and other 3rd party apps from any device on the same network. By default it's off.</div>
244
+ </a>
245
+ <% if (false) { %>
246
+ <% if (proxy) { %>
247
+ <a id='wifi-stop' data-proxy="<%=proxy.proxy%>" class='btn'><div><i class="fa-solid fa-stop"></i> Stop</div></a>
248
+ <div class='flexible'>
249
+ <h3><i class="fa-solid fa-wifi"></i> Local Share</h3>
250
+ <div>Access Pinokio from any device on the same network. By default it's off.</div>
251
+ <span class='badge'><i class="fa-solid fa-circle-notch fa-spin"></i> Running at <a href="<%=proxy.proxy%>" target="_blank" features="browser"><%=proxy.proxy%></a></span>
252
+ <a id='wifi-qr' class='badge'><i class="fa-solid fa-qrcode"></i> Scan QR Code</a>
253
+ </div>
254
+ <% } else { %>
255
+ <a id='wifi' class='btn'><div><i class="fa-solid fa-play"></i> Start</div></a>
256
+ <a id='wifi-starting' class='btn disabled hidden'><div><i class="fa-solid fa-circle-notch fa-spin"></i> Starting</div></a>
257
+ <div class='flexible'>
258
+ <h3><i class="fa-solid fa-wifi"></i> Local Share</h3>
259
+ <div>Access Pinokio from any device on the same network. By default it's off.</div>
260
+ </div>
261
+ <% } %>
254
262
  <% } %>
255
263
  </div>
264
+ -->
256
265
  <div class='browser-options-row hidden'>
257
266
  <% if (cloudflare_pub) { %>
258
267
  <a id='cloudflare-stop' class='btn'><div><i class="fa-solid fa-stop"></i> Stop</div></a>
@@ -1006,12 +1015,16 @@ if (document.querySelector("#cloudflare")) {
1006
1015
  })
1007
1016
  }
1008
1017
  <% } %>
1009
- document.querySelector("#back").addEventListener("click", (e) => {
1010
- history.back()
1011
- })
1012
- document.querySelector("#forward").addEventListener("click", (e) => {
1013
- history.forward()
1014
- })
1018
+ if (document.querySelector("#back")) {
1019
+ document.querySelector("#back").addEventListener("click", (e) => {
1020
+ history.back()
1021
+ })
1022
+ }
1023
+ if (document.querySelector("#forward")) {
1024
+ document.querySelector("#forward").addEventListener("click", (e) => {
1025
+ history.forward()
1026
+ })
1027
+ }
1015
1028
  document.querySelector("#genlog").addEventListener("click", (e) => {
1016
1029
  e.preventDefault()
1017
1030
  e.stopPropagation()