pinokiod 3.9.0 → 3.9.3

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 (119) hide show
  1. package/:w +1247 -0
  2. package/kernel/api/filepicker/index.js +59 -0
  3. package/kernel/api/fs/index.js +6 -4
  4. package/kernel/api/index.js +123 -37
  5. package/kernel/api/input/index.js +2 -0
  6. package/kernel/api/web/index.js +6 -0
  7. package/kernel/bin/caddy.js +127 -0
  8. package/kernel/bin/cloudflared.js +1 -0
  9. package/kernel/bin/conda.js +10 -2
  10. package/kernel/bin/cuda.js +0 -16
  11. package/kernel/bin/ffmpeg.js +4 -6
  12. package/kernel/bin/git.js +55 -29
  13. package/kernel/bin/gxx.js +8 -6
  14. package/kernel/bin/huggingface.js +4 -5
  15. package/kernel/bin/index.js +347 -88
  16. package/kernel/bin/node.js +13 -6
  17. package/kernel/bin/py.js +1 -1
  18. package/kernel/bin/setup.js +146 -0
  19. package/kernel/bin/uv.js +4 -5
  20. package/kernel/bin/zip.js +7 -8
  21. package/kernel/connect/index.js +25 -0
  22. package/kernel/connect/providers/github/README.md +11 -0
  23. package/kernel/connect/providers/x/README.md +96 -0
  24. package/kernel/connect/providers/x/index.js +152 -0
  25. package/kernel/environment.js +50 -1
  26. package/kernel/index.js +152 -32
  27. package/kernel/info.js +4 -2
  28. package/kernel/kv.js +38 -0
  29. package/kernel/loader.js +13 -3
  30. package/kernel/peer.js +161 -0
  31. package/kernel/procs.js +116 -0
  32. package/kernel/prototype.js +62 -0
  33. package/kernel/router/common.js +42 -0
  34. package/kernel/router/connector.js +81 -0
  35. package/kernel/router/index.js +235 -0
  36. package/kernel/router/localhost_home_router.js +84 -0
  37. package/kernel/router/localhost_port_router.js +15 -0
  38. package/kernel/router/localhost_variable_router.js +37 -0
  39. package/kernel/router/peer_home_router.js +15 -0
  40. package/kernel/router/peer_peer_router.js +26 -0
  41. package/kernel/router/peer_port_router.js +45 -0
  42. package/kernel/router/peer_variable_router.js +46 -0
  43. package/kernel/router/processor.js +31 -0
  44. package/kernel/shell.js +141 -60
  45. package/kernel/shells.js +32 -17
  46. package/kernel/store.js +58 -0
  47. package/kernel/sysinfo.js +0 -1
  48. package/kernel/util.js +143 -36
  49. package/package.json +4 -1
  50. package/pipe/index.js +0 -2
  51. package/script/index.js +12 -0
  52. package/server/index.js +1473 -553
  53. package/server/public/Socket.js +5 -1
  54. package/server/public/SourceCodePro-Regular.ttf +0 -0
  55. package/server/public/SpaceMono-Bold.ttf +0 -0
  56. package/server/public/SpaceMono-BoldItalic.ttf +0 -0
  57. package/server/public/SpaceMono-Italic.ttf +0 -0
  58. package/server/public/SpaceMono-Regular.ttf +0 -0
  59. package/server/public/commander.js +40 -0
  60. package/server/public/common.js +60 -0
  61. package/server/public/dropzone-min.js +2 -0
  62. package/server/public/dropzone.css +1 -0
  63. package/server/public/filepond-plugin-file-validate-type.min.js +9 -0
  64. package/server/public/filepond-plugin-image-crop.min.js +9 -0
  65. package/server/public/filepond-plugin-image-edit.min.css +8 -0
  66. package/server/public/filepond-plugin-image-edit.min.js +9 -0
  67. package/server/public/filepond-plugin-image-exif-orientation.min.js +9 -0
  68. package/server/public/filepond-plugin-image-preview.min.css +8 -0
  69. package/server/public/filepond-plugin-image-preview.min.js +9 -0
  70. package/server/public/filepond-plugin-image-resize.min.js +9 -0
  71. package/server/public/filepond-plugin-image-transform.min.js +9 -0
  72. package/server/public/filepond.min.css +8 -0
  73. package/server/public/filepond.min.js +9 -0
  74. package/server/public/fscreator.js +174 -0
  75. package/server/public/fseditor.js +212 -0
  76. package/server/public/github.png +0 -0
  77. package/server/public/highlight-js.js +81 -0
  78. package/server/public/highlight.css +9 -0
  79. package/server/public/highlight.js +1244 -0
  80. package/server/public/install.js +17 -20
  81. package/server/public/modalinput.js +105 -9
  82. package/server/public/opener.js +3 -1
  83. package/server/public/pinokio-black.png +0 -0
  84. package/server/public/pinokio-black2.png +0 -0
  85. package/server/public/redoc.standalone.js +1832 -0
  86. package/server/public/style.css +215 -17
  87. package/server/public/swagger-ui-bundle.js +2 -0
  88. package/server/public/swagger-ui.css +3 -0
  89. package/server/public/x.js +63 -0
  90. package/server/socket.js +136 -39
  91. package/server/views/404.ejs +0 -1
  92. package/server/views/app.ejs +368 -98
  93. package/server/views/bootstrap.ejs +22 -19
  94. package/server/views/connect/x.ejs +324 -0
  95. package/server/views/connect.ejs +197 -0
  96. package/server/views/download.ejs +7 -1
  97. package/server/views/editor.ejs +68 -9
  98. package/server/views/explore.ejs +13 -10
  99. package/server/views/file_explorer.ejs +10 -37
  100. package/server/views/github.ejs +218 -0
  101. package/server/views/help.ejs +4 -3
  102. package/server/views/index.ejs +275 -121
  103. package/server/views/install.ejs +56 -29
  104. package/server/views/keys.ejs +276 -0
  105. package/server/views/network.ejs +889 -0
  106. package/server/views/partials/dynamic.ejs +9 -0
  107. package/server/views/partials/menu.ejs +7 -1
  108. package/server/views/prototype/index.ejs +311 -0
  109. package/server/views/prototype/show.ejs +383 -0
  110. package/server/views/redoc.ejs +18 -0
  111. package/server/views/required_env_editor.ejs +11 -2
  112. package/server/views/settings.ejs +38 -10
  113. package/server/views/setup.ejs +254 -0
  114. package/server/views/setup_home.ejs +192 -0
  115. package/server/views/shell.ejs +781 -0
  116. package/server/views/swaggerui.ejs +19 -0
  117. package/server/views/terminal.ejs +174 -42
  118. package/LICENSE +0 -7
  119. package/server/views/proxy.ejs +0 -405
@@ -53,6 +53,40 @@
53
53
  */
54
54
  --dark-btn-color: whitesmoke;
55
55
  }
56
+ @font-face {
57
+ font-family: 'SpaceMono';
58
+ src: url('./SpaceMono-Regular.ttf') format(truetype);
59
+ font-weight: normal;
60
+ font-style: normal;
61
+ }
62
+ @font-face {
63
+ font-family: 'SourceCode';
64
+ src: url('./SourceCodePro-Regular.ttf') format(truetype);
65
+ font-weight: normal;
66
+ font-style: normal;
67
+ }
68
+ .dropzone {
69
+ min-height: auto !important;
70
+ padding: 0 !important;
71
+ border-radius: 0 !important;
72
+ border: 2px dotted silver !important;
73
+ }
74
+ .drawer {
75
+ max-height: 100000px;
76
+ overflow: hidden;
77
+ height: auto;
78
+ transition: max-height 3s ease-in-out;
79
+ }
80
+ .drawer.vertical-collapsed {
81
+ max-height: 0;
82
+ }
83
+ .dynamic {
84
+ }
85
+ .dynamic-item img {
86
+ width: 20px !important;
87
+ height: 20px !important;
88
+ margin-right: 10px !important;
89
+ }
56
90
  .type-tabs {
57
91
  display: flex;
58
92
  padding: 20px 20px 0;
@@ -83,12 +117,39 @@ body.dark .type-tabs {
83
117
  background: rgba(255,255,255,0.05);
84
118
  */
85
119
  }
120
+ .drpzone {
121
+ border: 2px dashed #999;
122
+ border-radius: 8px;
123
+ background: #fafafa;
124
+ width: 100%;
125
+ height: 150px;
126
+ margin-bottom: 10px;
127
+ display: flex;
128
+ align-items: center;
129
+ justify-content: center;
130
+ color: #666;
131
+ font-size: 16px;
132
+ position: relative;
133
+ cursor: pointer;
134
+
135
+ }
86
136
  .type-tab img {
87
137
  height: 20px;
88
138
  margin-right: 5px;
89
139
  }
90
- .navheader {
140
+ .navheader2 {
141
+ /*
91
142
  padding: 15px 10px;
143
+ */
144
+ padding: 10px 0;
145
+ /*
146
+ background: white;
147
+ */
148
+ }
149
+ .navheader {
150
+ backdrop-filter: blur(16px);
151
+
152
+ padding: 15px 10px 5px;
92
153
  }
93
154
  body.columns footer {
94
155
  }
@@ -190,8 +251,10 @@ footer {
190
251
  overflow: auto;
191
252
  */
192
253
  box-sizing: border-box;
254
+ /*
193
255
  color: var(--dark-color);
194
256
  background: var(--dark-bg);
257
+ */
195
258
  /*
196
259
  border-top: 1px solid rgba(255,255,255,0.05);
197
260
  */
@@ -207,7 +270,9 @@ footer b i {
207
270
  }
208
271
  footer b {
209
272
  flex-shrink: 0;
273
+ /*
210
274
  color: var(--dark-btn-color);
275
+ */
211
276
  margin-right: 10px;
212
277
  font-weight: normal;
213
278
  font-size: 11px;
@@ -446,6 +511,10 @@ form.search {
446
511
  background: white;
447
512
  border: none;
448
513
  }
514
+ .input-form .field select {
515
+ width: 100%;
516
+ padding: 5px;
517
+ }
449
518
  .input-form .field {
450
519
  margin: 20px 0;
451
520
  }
@@ -537,6 +606,16 @@ body.fullscreen .btn {
537
606
  border: 1px solid rgba(0,0,0,0.1);
538
607
  */
539
608
  }
609
+ body.dark .commander-dialog {
610
+ background: rgba(255,255,100,0.08);
611
+ }
612
+ .commander-dialog {
613
+ font-size: 14px;
614
+ text-align: left;
615
+ margin-bottom: 10px;
616
+ padding: 15px;
617
+ background: rgba(0,0,100,0.04);
618
+ }
540
619
  .runnables {
541
620
  padding: 20px;
542
621
  box-sizing: border-box;
@@ -551,8 +630,12 @@ body.columns main #editor {
551
630
  height: 100% !important;
552
631
  }
553
632
  #terminal {
633
+
554
634
  height: 100%;
555
635
  /*
636
+ padding: 15px 0;
637
+ */
638
+ /*
556
639
  overflow: auto;
557
640
  */
558
641
  box-sizing: border-box;
@@ -594,10 +677,22 @@ body.columns .containers {
594
677
  .containers .terminal-container #terminal {
595
678
  height: 100%;
596
679
  }
680
+ .menu-btns {
681
+ display: flex;
682
+ align-items: flex-start;
683
+ }
597
684
  .terminal-container {
685
+ /*
686
+ padding: 10px 0;
687
+ */
688
+ /*
689
+ background: white;
690
+ */
598
691
  flex-grow: 1;
599
692
  position: relative;
693
+ /*
600
694
  background: var(--dark-bg);
695
+ */
601
696
  overflow: auto;
602
697
  }
603
698
  .terminal-container #terminal-resize {
@@ -675,15 +770,26 @@ body.columns .containers {
675
770
  margin: 0 auto;
676
771
  }
677
772
  */
773
+ .xterm-rows {
774
+ /*
775
+ font-family: "SpaceMono", monospace !important;
776
+ */
777
+ font-family: "SourceCode", monospace !important;
778
+ font-weight: 400 !important;
779
+ font-style: normal !important;
780
+
781
+ }
678
782
  .xterm {
679
- padding: 10px 20px !important;
783
+ padding: 0 10px !important;
680
784
  /*
681
- padding: 0 20px !important;
785
+ padding: 10px 20px !important;
682
786
  */
683
787
  cursor: pointer;
684
788
  overflow: auto;
685
789
  box-sizing: border-box;
790
+ /*
686
791
  background: rgb(20, 40, 56);
792
+ */
687
793
  }
688
794
  .panels {
689
795
  display: flex;
@@ -691,15 +797,17 @@ body.columns .containers {
691
797
  .panels > div {
692
798
  width: 50%;
693
799
  }
800
+ /*
694
801
  body.dark header {
695
802
  background: var(--dark-nav-bg);
696
803
  }
804
+ */
697
805
  header {
698
- background: var(--dark-nav-bg);
699
806
  /*
807
+ background: var(--dark-nav-bg);
700
808
  background: var(--light-nav-bg);
701
- */
702
809
  background: white;
810
+ */
703
811
  position: sticky;
704
812
  padding: 10px;
705
813
  top: 0;
@@ -1005,13 +1113,19 @@ body.dark .line i {
1005
1113
  text-align: center;
1006
1114
  }
1007
1115
  .line img {
1008
- /*
1009
- width: 60px;
1010
- height: 60px;
1116
+ width: 50px;
1117
+ height: 50px;
1118
+ /*
1119
+ padding: 10px;
1011
1120
  */
1121
+ padding: 8px;
1122
+ /*
1012
1123
  width: 40px;
1013
1124
  height: 40px;
1125
+ */
1126
+ /*
1014
1127
  border-radius: 10px;
1128
+ */
1015
1129
  }
1016
1130
  body.dark .line .btn {
1017
1131
  color: var(--dark-btn-color);
@@ -1120,7 +1234,9 @@ body.dark .line.align-top h3 .col .btn.label {
1120
1234
  }
1121
1235
  .line.align-top h3 {
1122
1236
  display: flex;
1237
+ /*
1123
1238
  align-items: center;
1239
+ */
1124
1240
  }
1125
1241
  .flexible {
1126
1242
  flex-grow: 1;
@@ -1172,7 +1288,7 @@ body.dark .swal2-popup {
1172
1288
  color: var(--dark-btn-color);
1173
1289
  }
1174
1290
  .swal2-popup {
1175
- border-radius: 20px !important;
1291
+ border-radius: 0px !important;
1176
1292
  box-sizing: border-box;
1177
1293
  }
1178
1294
  .swal2-html-container a {
@@ -1219,7 +1335,7 @@ body.dark .swal2-html-container .btn {
1219
1335
  .swal2-html-container .field {
1220
1336
  font-size: 14px;
1221
1337
  box-sizing: border-box;
1222
- padding: 10px;
1338
+ padding: 15px 0;
1223
1339
  }
1224
1340
  .swal2-html-container .field label.description {
1225
1341
  margin-top: 5px;
@@ -1228,13 +1344,17 @@ body.dark .swal2-html-container .btn {
1228
1344
  }
1229
1345
  .swal2-html-container .field label.title {
1230
1346
  font-weight: bold;
1231
- font-size: 16px;
1347
+ font-size: 14px;
1232
1348
  }
1233
1349
  .swal2-html-container .field label {
1234
1350
  display: block;
1235
1351
  text-align: left;
1236
1352
  margin-bottom: 5px;
1237
1353
  }
1354
+ .swal2-html-container .field select {
1355
+ width: 100%;
1356
+ padding: 5px;
1357
+ }
1238
1358
  .titleview {
1239
1359
  padding: 50px;
1240
1360
  box-sizing: border-box;
@@ -1331,6 +1451,9 @@ body.dark .swal2-styled.swal2-confirm{
1331
1451
  font-weight: bold;
1332
1452
  border: none;
1333
1453
  }
1454
+ .swal2-input:focus, .swal2-file:focus, .swal2-textarea:focus {
1455
+ box-shadow: none !important;
1456
+ }
1334
1457
  .swal2-input {
1335
1458
  margin: 0 !important;
1336
1459
  width: 100% !important;
@@ -1484,6 +1607,16 @@ b {
1484
1607
  .opener.btn {
1485
1608
  background: royalblue;
1486
1609
  }
1610
+ .field-row {
1611
+ display: flex;
1612
+ align-items: center;
1613
+ }
1614
+ .folder-row .field-row label {
1615
+ font-size: 14px;
1616
+ flex-shrink: 0;
1617
+ padding: 0 5px 0 0;
1618
+ display: block;
1619
+ }
1487
1620
  body.dark #new-window {
1488
1621
  color: var(--dark-btn-color);
1489
1622
  }
@@ -1504,10 +1637,10 @@ body.dark .btn2 {
1504
1637
  */
1505
1638
  }
1506
1639
  .btn2:hover {
1507
- background: rgba(0,0,0,0.06);
1640
+ color: royalblue;
1508
1641
  }
1509
1642
  body.dark .btn2:hover {
1510
- background: rgba(255,255,255,0.06);
1643
+ color: royalblue;
1511
1644
  }
1512
1645
  /*
1513
1646
  body.dark .browser-options {
@@ -1529,7 +1662,7 @@ body.dark .browser-options {
1529
1662
  color: var(--light-color);
1530
1663
  text-transform: uppercase;
1531
1664
  border-radius: 5px;
1532
- padding: 5px 10px;
1665
+ padding: 0px 5px;
1533
1666
  text-align: center;
1534
1667
 
1535
1668
  cursor: pointer;
@@ -1553,9 +1686,9 @@ body.dark .browser-options {
1553
1686
 
1554
1687
  }
1555
1688
  .btn2 i {
1556
- margin: 5px 0;
1689
+ margin: 2px 0;
1557
1690
  display: inline-block;
1558
- font-size: 15px;
1691
+ font-size: 12px;
1559
1692
  }
1560
1693
  .nav-btns {
1561
1694
  padding: 10px 0;
@@ -1591,15 +1724,27 @@ nav.error-message {
1591
1724
  color: rgba(0,0,0,0.7);
1592
1725
  font-weight: bold;
1593
1726
  }
1727
+ /*
1594
1728
  .not-running-apps, .running-apps {
1595
1729
  background: rgba(0,0,100,0.04);
1596
1730
  }
1597
1731
  body.dark .not-running-apps, body.dark .running-apps {
1598
1732
  background: rgba(255,255,255,0.03);
1599
1733
  }
1734
+ */
1735
+ /*
1736
+ .running-apps .line .title {
1737
+ color: #82bc09;
1738
+ }
1739
+ */
1600
1740
  .running-apps .line img {
1601
- border: 4px solid #8fd400;
1741
+ border: 3px solid #82bc09;
1742
+ /*
1743
+ border: 3px solid #8fd400;
1744
+ */
1745
+ /*
1602
1746
  border-radius: 5px;
1747
+ */
1603
1748
  }
1604
1749
  /*
1605
1750
  .running-apps .line.align-top h3 .col .title {
@@ -1701,6 +1846,16 @@ footer.status {
1701
1846
  text-transform: uppercase;
1702
1847
  }
1703
1848
 
1849
+ #fsmenu {
1850
+ /*
1851
+ background: rgba(0,0,100,0.04);
1852
+ */
1853
+ display: flex;
1854
+ padding: 10px;
1855
+ /*
1856
+ padding: 20px 20px 0;
1857
+ */
1858
+ }
1704
1859
  mark{
1705
1860
  background: firebrick;
1706
1861
  color: white;
@@ -1714,3 +1869,46 @@ mark{
1714
1869
  color: royalblue !important;
1715
1870
  cursor: pointer;
1716
1871
  }
1872
+
1873
+ .filepond--image-preview-wrapper {
1874
+ border-radius: 0 !important;
1875
+ }
1876
+
1877
+ .filepond-wrapper {
1878
+ /*
1879
+ position: relative;
1880
+ display: inline-block;
1881
+ */
1882
+ display: flex;
1883
+ }
1884
+ .filepond-wrapper .folder-rows {
1885
+ flex-grow: 1;
1886
+ }
1887
+ .filepond-wrapper .avatar-field {
1888
+ width: 200px;
1889
+ height: 200px;
1890
+ margin-right: 15px;
1891
+ }
1892
+ .folder-row {
1893
+ text-align: left;
1894
+ padding-bottom: 10px;
1895
+ }
1896
+ .folder-row label {
1897
+ padding: 5px 0;
1898
+ display: block;
1899
+ font-size: 14px;
1900
+ }
1901
+ .folderpath {
1902
+ opacity: 0.5;
1903
+ }
1904
+ .swal2-modal .filepond--root button {
1905
+ cursor: pointer;
1906
+ background: black !important;
1907
+ color: white !important;
1908
+ border: 2px solid !important;
1909
+ /*
1910
+ background: unset !important;
1911
+ */
1912
+ padding: unset !important;
1913
+ font-size: unset !important;
1914
+ }