@fde-desktop/fde-core 0.4.6 → 0.4.8

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 (311) hide show
  1. package/dist/AccordionChevron-CJXAq5o5.js +26 -0
  2. package/dist/AccordionChevron-DBXp38Lm.cjs +1 -0
  3. package/dist/ActionIcon-C_SfdBfx.cjs +1 -0
  4. package/dist/ActionIcon-CtVbYlGY.js +145 -0
  5. package/dist/AppEmptyState-BTujnL_b.js +4962 -0
  6. package/dist/AppEmptyState-Dc4GaDfu.cjs +1 -0
  7. package/dist/AppIcon--qzR4sgf.cjs +1 -0
  8. package/dist/AppIcon-DCDuaU-t.js +80 -0
  9. package/dist/AppMenuBar-BiHbNg9V.cjs +9 -0
  10. package/dist/AppMenuBar-CHJy8OF0.js +2639 -0
  11. package/dist/Box-DRm8EabO.js +1593 -0
  12. package/dist/Box-D_64wv6n.cjs +1 -0
  13. package/dist/Button-D0FXpkur.cjs +1 -0
  14. package/dist/Button-k7SxX1Xl.js +178 -0
  15. package/dist/CalendarApp-C1HvuJoa.cjs +1 -0
  16. package/dist/CalendarApp-DBEQqsS_.js +1721 -0
  17. package/dist/Center-CyryG5zn.js +25 -0
  18. package/dist/Center-T4No_FAa.cjs +1 -0
  19. package/dist/CheckIcon-C3WjIR2i.js +25 -0
  20. package/dist/CheckIcon-CBMLR6Gc.cjs +1 -0
  21. package/dist/CodeServerApp-B3l5QPuG.cjs +1 -0
  22. package/dist/CodeServerApp-BpeALSaX.js +2 -0
  23. package/dist/CodeServerApp-CRjCngFv.cjs +1 -0
  24. package/dist/CodeServerApp-DY94cy1a.js +149 -0
  25. package/dist/ColorPicker-BL4UbKCV.cjs +1 -0
  26. package/dist/ColorPicker-DvRR-wlQ.js +997 -0
  27. package/dist/Colors-BxX4G8kX.cjs +1 -0
  28. package/dist/Colors-hca6raEG.js +15 -0
  29. package/dist/CreateItemApp-BU9wmjKM.cjs +1 -0
  30. package/dist/CreateItemApp-CtdH1K1g.js +400 -0
  31. package/dist/CreateItemApp-t9F-a6wD.cjs +1 -0
  32. package/dist/DeviceInfoApp-C306YvtZ.js +223 -0
  33. package/dist/DeviceInfoApp-Cdju_LIB.cjs +1 -0
  34. package/dist/DeviceInfoApp-CyB01v4D.cjs +1 -0
  35. package/dist/DownloadProgress-IRw1dzLX.cjs +1 -0
  36. package/dist/DownloadProgress-hdupSUBT.js +174 -0
  37. package/dist/FileIcon-BCpGMI5U.js +88 -0
  38. package/dist/FileIcon-BCrsxmtt.cjs +1 -0
  39. package/dist/FilePickerApp-DMGuvahM.js +409 -0
  40. package/dist/FilePickerApp-Eu0cr2Cm.cjs +1 -0
  41. package/dist/FilesApp-30OjnOuP.cjs +1 -0
  42. package/dist/FilesApp-BvlzPNuO.cjs +1 -0
  43. package/dist/FilesApp-VXrmtt63.js +225 -0
  44. package/dist/Group-BzwlMeob.js +48 -0
  45. package/dist/Group-DhwePB84.cjs +1 -0
  46. package/dist/ImageViewerApp-BOz59TGc.cjs +1 -0
  47. package/dist/ImageViewerApp-BeqY6voE.cjs +1 -0
  48. package/dist/ImageViewerApp-CWiP6zx-.js +68 -0
  49. package/dist/ImageViewerApp-DBAfJPSo.js +2 -0
  50. package/dist/ImageViewerMenuBar-BULkh_Ku.js +86 -0
  51. package/dist/ImageViewerMenuBar-Cb0Nr5-M.js +2 -0
  52. package/dist/ImageViewerMenuBar-CoEp0RxK.cjs +1 -0
  53. package/dist/ImageViewerMenuBar-zOkJtqKo.cjs +1 -0
  54. package/dist/MenuEditApp-BoKtj2GH.js +2 -0
  55. package/dist/MenuEditApp-D21sEp86.js +2615 -0
  56. package/dist/MenuEditApp-k3cPfTG9.cjs +1 -0
  57. package/dist/MenuEditApp-sz9GlLVH.cjs +5 -0
  58. package/dist/MenuEditMenuBar-6QxlIDpl.cjs +1 -0
  59. package/dist/MenuEditMenuBar-B94z4Umw.js +59 -0
  60. package/dist/MenuEditMenuBar-Bv6R42lf.js +2 -0
  61. package/dist/MenuEditMenuBar-CBsmH_-T.cjs +1 -0
  62. package/dist/NotesApp-BtR55Hva.cjs +207 -0
  63. package/dist/NotesApp-C59exz_9.js +16154 -0
  64. package/dist/NotesApp-D47I5LS_.js +2 -0
  65. package/dist/NotesApp-lOwsi2sg.cjs +1 -0
  66. package/dist/NotesMenuBar-BB4NkKGf.js +61 -0
  67. package/dist/NotesMenuBar-BZITC74y.cjs +1 -0
  68. package/dist/NotesMenuBar-Bp0sPqyR.cjs +1 -0
  69. package/dist/NotesMenuBar-xlfODmMA.js +2 -0
  70. package/dist/Paper-DtUYKmYn.js +30 -0
  71. package/dist/Paper-DwCpwWwH.cjs +1 -0
  72. package/dist/PdfApp-1XbFGfoY.cjs +1 -0
  73. package/dist/PdfApp-BhIoJWeK.cjs +1 -0
  74. package/dist/PdfApp-C5Rt1Zaw.js +2 -0
  75. package/dist/PdfApp-C8Hwxxqh.js +38 -0
  76. package/dist/PdfMenuBar-BA9rKuMP.cjs +1 -0
  77. package/dist/PdfMenuBar-JXHqwxhZ.cjs +1 -0
  78. package/dist/PdfMenuBar-R0fu7oYF.js +2 -0
  79. package/dist/PdfMenuBar-sd-9Vk3h.js +38 -0
  80. package/dist/SettingsApp-BA-5B4RA.cjs +1 -0
  81. package/dist/SettingsApp-B_rev1xh.cjs +1 -0
  82. package/dist/SettingsApp-Ck4aUXs5.js +2 -0
  83. package/dist/SettingsApp-DUMKSA3K.js +2425 -0
  84. package/dist/SettingsMenuBar-BPwv8JQK.js +41 -0
  85. package/dist/SettingsMenuBar-D8R7hOik.js +2 -0
  86. package/dist/SettingsMenuBar-DDrjZLmg.cjs +1 -0
  87. package/dist/SettingsMenuBar-DQjUa8g1.cjs +1 -0
  88. package/dist/Slider-BNO-vDFn.js +1175 -0
  89. package/dist/Slider-Bg_EIBg6.cjs +1 -0
  90. package/dist/Stack-BOaJgV3N.cjs +1 -0
  91. package/dist/Stack-CuDEaP7e.js +34 -0
  92. package/dist/StorybookApp-Bkr-7mXp.cjs +1 -0
  93. package/dist/StorybookApp-WYninkJo.js +10 -0
  94. package/dist/TerminalApp-8XbsKAWa.js +10041 -0
  95. package/dist/TerminalApp-Bq2e7QQu.cjs +1 -0
  96. package/dist/TerminalApp-CVu3Axc9.js +2 -0
  97. package/dist/TerminalApp-b7_d0jRO.cjs +36 -0
  98. package/dist/TerminalMenuBar-Cb8x9laS.js +2 -0
  99. package/dist/TerminalMenuBar-De-FH5AE.cjs +1 -0
  100. package/dist/TerminalMenuBar-iKLydNda.js +112 -0
  101. package/dist/TerminalMenuBar-yOaWd-hn.cjs +1 -0
  102. package/dist/TextInput-C3qfxxWI.js +980 -0
  103. package/dist/TextInput-DcYns3hz.cjs +1 -0
  104. package/dist/Tooltip-CAOO-qdx.js +3185 -0
  105. package/dist/Tooltip-DDh_x-CB.cjs +1 -0
  106. package/dist/UnstyledButton-CI3kyRck.js +25 -0
  107. package/dist/UnstyledButton-Cl5RuIid.cjs +1 -0
  108. package/dist/UploaderApp-BZXW75A0.cjs +1 -0
  109. package/dist/UploaderApp-C9W_yCT-.js +487 -0
  110. package/dist/UploaderApp-CPpStgP5.cjs +1 -0
  111. package/dist/UploaderApp-DHsMQN-f.js +2 -0
  112. package/dist/VscIcon-CxEmqD80.cjs +1 -0
  113. package/dist/VscIcon-DueRJVTe.js +8 -0
  114. package/dist/chunk-BQCxAhux.js +23 -0
  115. package/dist/chunk-CiTBaPhY.cjs +1 -0
  116. package/dist/create-safe-context-95P-Bfg3.cjs +1 -0
  117. package/dist/create-safe-context-XT2cxc14.js +12 -0
  118. package/dist/desktopStore-B0R1-BeA.js +1905 -0
  119. package/dist/desktopStore-Cox-Og1z.cjs +1 -0
  120. package/dist/fc-DejOsQyD.cjs +1 -0
  121. package/dist/fc-kd8WzIER.js +20536 -0
  122. package/dist/fc-xJ_v2ayq.cjs +184 -0
  123. package/dist/fi-BahYsbim.js +9993 -0
  124. package/dist/fi-BkhyTcZo.cjs +1 -0
  125. package/dist/getRuntime-BLXyQZBB.cjs +1 -0
  126. package/dist/getRuntime-CCRXVzJH.js +63 -0
  127. package/dist/iconBase-B4UCuSvv.cjs +1 -0
  128. package/dist/iconBase-D7iPes7B.js +108 -0
  129. package/dist/imageViewerStore-CH1qW6md.cjs +1 -0
  130. package/dist/imageViewerStore-CJMRXaQh.js +50 -0
  131. package/dist/index.cjs +53 -5642
  132. package/dist/index.css +2 -9192
  133. package/dist/index.d.ts +2258 -2019
  134. package/dist/index.js +8983 -4780
  135. package/dist/is-element-BocgicRg.cjs +1 -0
  136. package/dist/is-element-Bu_JY8Qy.js +7 -0
  137. package/dist/menuEditStore-C8S_EedM.js +38 -0
  138. package/dist/menuEditStore-CU7IAg3L.cjs +1 -0
  139. package/dist/notesStore-DKRgTTFn.js +36 -0
  140. package/dist/notesStore-zKmChTfF.cjs +1 -0
  141. package/dist/react-DYmzHD0X.js +27 -0
  142. package/dist/react-Dldg32sN.cjs +1 -0
  143. package/dist/settingsAppStore-BrlImdAH.cjs +1 -0
  144. package/dist/settingsAppStore-KOeWRO6h.js +29 -0
  145. package/dist/terminalStore-LWWjCvCe.js +30 -0
  146. package/dist/terminalStore-fZe5t7Ty.cjs +1 -0
  147. package/dist/use-merged-ref-BI9n1hUK.cjs +1 -0
  148. package/dist/use-merged-ref-BT8_u6vW.js +25 -0
  149. package/dist/use-resolved-styles-api-AVDygMKo.cjs +1 -0
  150. package/dist/use-resolved-styles-api-pEOi2wiK.js +21 -0
  151. package/dist/use-uncontrolled-A4hm9ATM.js +23 -0
  152. package/dist/use-uncontrolled-BPrfGv0W.cjs +1 -0
  153. package/dist/useAdaptiveDimensions-Btp0m5Pm.cjs +1 -0
  154. package/dist/useAdaptiveDimensions-CunsU0mn.js +40 -0
  155. package/dist/useCloseInterceptor-CuKAAFnj.js +51 -0
  156. package/dist/useCloseInterceptor-a_6Lcuqj.cjs +1 -0
  157. package/dist/useDynamicIcon-GJg3vWsJ.js +22 -0
  158. package/dist/useDynamicIcon-SytdL1Tu.cjs +1 -0
  159. package/dist/useMenuBarUtils-Bp5PiztD.cjs +1 -0
  160. package/dist/useMenuBarUtils-ChmpZjwu.js +6 -0
  161. package/dist/useOpenApp-BdarhIgl.cjs +1 -0
  162. package/dist/useOpenApp-JHCPTBWa.js +279 -0
  163. package/dist/useResolvedUrl-Be5ZlCX7.cjs +1 -0
  164. package/dist/useResolvedUrl-DFKXq598.js +30 -0
  165. package/dist/useTranslation-DMRGdqZi.js +279 -0
  166. package/dist/useTranslation-D_O7S4RJ.cjs +1 -0
  167. package/dist/vsc-Ciibqbxo.cjs +1 -0
  168. package/dist/vsc-DGKSpOAR.js +9574 -0
  169. package/package.json +7 -3
  170. package/dist/CalendarApp-CHLUCAI7.css +0 -744
  171. package/dist/CalendarApp-K7ZOUZ6C.js +0 -2
  172. package/dist/CalendarApp-OTGEERSS.cjs +0 -8
  173. package/dist/CodeServerApp-5KZGO7HL.css +0 -75
  174. package/dist/CodeServerApp-LUZFCQBI.js +0 -3
  175. package/dist/CodeServerApp-P3TMJPLY.cjs +0 -9
  176. package/dist/CreateItemApp-2EME6FYH.js +0 -8
  177. package/dist/CreateItemApp-BSEISPUS.cjs +0 -14
  178. package/dist/CreateItemApp-PQB5GTFG.css +0 -107
  179. package/dist/DeviceInfoApp-2MJFK32B.cjs +0 -11
  180. package/dist/DeviceInfoApp-KFYU3E43.js +0 -5
  181. package/dist/DeviceInfoApp-ZSMRSITP.css +0 -7
  182. package/dist/FilesApp-B7JR4PEP.cjs +0 -14
  183. package/dist/FilesApp-E6L5W3T2.css +0 -1817
  184. package/dist/FilesApp-HYTIWN3O.js +0 -8
  185. package/dist/ImageViewerApp-N2Q7E7WZ.css +0 -215
  186. package/dist/ImageViewerApp-PLHNQFZ3.js +0 -11
  187. package/dist/ImageViewerApp-UIXSGW2X.cjs +0 -17
  188. package/dist/ImageViewerMenuBar-I3TFKQPS.cjs +0 -14
  189. package/dist/ImageViewerMenuBar-TV5C6TM2.js +0 -5
  190. package/dist/ImageViewerMenuBar-XLK4LIHW.css +0 -56
  191. package/dist/MenuEditApp-4DB5UEWH.js +0 -9
  192. package/dist/MenuEditApp-B2ZMG4ZY.cjs +0 -15
  193. package/dist/MenuEditApp-YA6HSAMJ.css +0 -94
  194. package/dist/MenuEditMenuBar-7VHMZNRM.css +0 -56
  195. package/dist/MenuEditMenuBar-GF6L4PGZ.cjs +0 -15
  196. package/dist/MenuEditMenuBar-IUXFPZE5.js +0 -6
  197. package/dist/NotesApp-BZYASRVJ.cjs +0 -16
  198. package/dist/NotesApp-MW37NRSN.js +0 -10
  199. package/dist/NotesApp-TQ6IHDNX.css +0 -302
  200. package/dist/NotesMenuBar-25LKN3SE.cjs +0 -15
  201. package/dist/NotesMenuBar-MXLOX7OT.css +0 -56
  202. package/dist/NotesMenuBar-SRV3AIAL.js +0 -6
  203. package/dist/PdfApp-3ZINDODQ.cjs +0 -16
  204. package/dist/PdfApp-BUIC5U5H.css +0 -206
  205. package/dist/PdfApp-ZSYAQP7L.js +0 -10
  206. package/dist/PdfMenuBar-NLZC6JHS.js +0 -4
  207. package/dist/PdfMenuBar-QUM72EE4.css +0 -56
  208. package/dist/PdfMenuBar-WBRTKMLN.cjs +0 -13
  209. package/dist/SettingsApp-2ZNO7AVY.cjs +0 -20
  210. package/dist/SettingsApp-JVOSEFH3.css +0 -283
  211. package/dist/SettingsApp-ODZINK6T.js +0 -14
  212. package/dist/SettingsMenuBar-5CBSSMVM.css +0 -56
  213. package/dist/SettingsMenuBar-VLT6TTCM.js +0 -6
  214. package/dist/SettingsMenuBar-Y5QEXDEO.cjs +0 -15
  215. package/dist/StorybookApp-NQ244BER.css +0 -7
  216. package/dist/StorybookApp-NZDV4X3Y.js +0 -1
  217. package/dist/StorybookApp-VF3KIMU3.cjs +0 -7
  218. package/dist/TerminalApp-CDGWRBFJ.cjs +0 -10
  219. package/dist/TerminalApp-EAATMIMX.css +0 -77
  220. package/dist/TerminalApp-GCKJCM55.js +0 -4
  221. package/dist/TerminalMenuBar-3J26O26Q.css +0 -56
  222. package/dist/TerminalMenuBar-7BH7MGNJ.cjs +0 -14
  223. package/dist/TerminalMenuBar-7JAEQUZ4.js +0 -5
  224. package/dist/UploaderApp-6KV3TGCT.css +0 -1817
  225. package/dist/UploaderApp-MTRIYWV4.cjs +0 -16
  226. package/dist/UploaderApp-V3WUDCG2.js +0 -10
  227. package/dist/chunk-25GVAXBU.js +0 -215
  228. package/dist/chunk-2MYZWMDC.js +0 -444
  229. package/dist/chunk-2NGIGLVP.cjs +0 -219
  230. package/dist/chunk-2O3W6TLG.cjs +0 -49
  231. package/dist/chunk-2PSTHGTD.cjs +0 -42
  232. package/dist/chunk-2RQX7QBP.cjs +0 -148
  233. package/dist/chunk-2UW42GAP.cjs +0 -2308
  234. package/dist/chunk-43W6UDUZ.cjs +0 -19
  235. package/dist/chunk-4E45FBAH.js +0 -223
  236. package/dist/chunk-4KIMZJ3L.cjs +0 -88
  237. package/dist/chunk-4XURSNM4.js +0 -43
  238. package/dist/chunk-4ZCRYHL6.js +0 -407
  239. package/dist/chunk-57ZTJB2W.cjs +0 -2329
  240. package/dist/chunk-5C6IQE42.cjs +0 -35
  241. package/dist/chunk-5NOHYJNH.js +0 -84
  242. package/dist/chunk-5YH6AKEO.js +0 -146
  243. package/dist/chunk-7FGL7HGS.cjs +0 -83
  244. package/dist/chunk-7HQ6KUIO.cjs +0 -50
  245. package/dist/chunk-7Y7HB7FB.cjs +0 -53
  246. package/dist/chunk-ABIAPZ6S.cjs +0 -45
  247. package/dist/chunk-AU4IENXY.cjs +0 -449
  248. package/dist/chunk-BFMSPWLP.cjs +0 -165
  249. package/dist/chunk-BQCD5RAF.cjs +0 -48
  250. package/dist/chunk-BQL3YXMV.js +0 -17429
  251. package/dist/chunk-C6BEZNAM.cjs +0 -45
  252. package/dist/chunk-CV5PUHAE.cjs +0 -86
  253. package/dist/chunk-D5MVFFID.js +0 -42
  254. package/dist/chunk-D7R55WWT.js +0 -1601
  255. package/dist/chunk-DEVJOHGE.cjs +0 -38
  256. package/dist/chunk-DWP2SYF7.js +0 -55
  257. package/dist/chunk-E55VXNLK.cjs +0 -17498
  258. package/dist/chunk-EAELL43F.js +0 -42
  259. package/dist/chunk-EX5V2ZTU.js +0 -40
  260. package/dist/chunk-FH4ILMKF.js +0 -38
  261. package/dist/chunk-FNWS4ZKT.js +0 -48
  262. package/dist/chunk-FRHBM2U7.js +0 -33
  263. package/dist/chunk-FX2TPX3L.cjs +0 -45
  264. package/dist/chunk-GRYCUBJZ.js +0 -9
  265. package/dist/chunk-HIGKZ7UP.js +0 -2293
  266. package/dist/chunk-HWHBSAUC.js +0 -40
  267. package/dist/chunk-HYJJVB7G.js +0 -442
  268. package/dist/chunk-I5MJXFYW.cjs +0 -34
  269. package/dist/chunk-IDHP3R4I.js +0 -31
  270. package/dist/chunk-JEBKLIMU.cjs +0 -123
  271. package/dist/chunk-JX65IKJZ.cjs +0 -324
  272. package/dist/chunk-KGMXUBWQ.js +0 -280
  273. package/dist/chunk-KI5FXBOM.cjs +0 -286
  274. package/dist/chunk-KQHICFX3.js +0 -121
  275. package/dist/chunk-LMJE6V4N.cjs +0 -42
  276. package/dist/chunk-MVDGM5Y4.js +0 -68
  277. package/dist/chunk-NULEEBCG.js +0 -32
  278. package/dist/chunk-NVEGEK3N.js +0 -31
  279. package/dist/chunk-OJIDKDKF.js +0 -68
  280. package/dist/chunk-PDEZ7BIN.js +0 -541
  281. package/dist/chunk-PKPQA5NR.js +0 -15
  282. package/dist/chunk-PNDBLFJW.cjs +0 -50
  283. package/dist/chunk-PVBI2WRF.js +0 -77
  284. package/dist/chunk-Q3WA72BF.cjs +0 -70
  285. package/dist/chunk-QFGHYAD7.cjs +0 -237
  286. package/dist/chunk-RDIDAZ3S.cjs +0 -9
  287. package/dist/chunk-RGJPRXYY.js +0 -48
  288. package/dist/chunk-RQ6OZRUW.cjs +0 -41
  289. package/dist/chunk-SBE4SZAN.cjs +0 -226
  290. package/dist/chunk-TGWMOHAO.js +0 -17
  291. package/dist/chunk-U5JKHQBS.js +0 -234
  292. package/dist/chunk-UIQCTAVM.cjs +0 -59
  293. package/dist/chunk-VFPEMNSX.js +0 -47
  294. package/dist/chunk-VLWKVIYD.js +0 -162
  295. package/dist/chunk-W2Y22XR6.js +0 -2240
  296. package/dist/chunk-WHZGUG7Q.js +0 -36
  297. package/dist/chunk-WSA5WSHN.js +0 -283
  298. package/dist/chunk-XVASHRCE.cjs +0 -70
  299. package/dist/chunk-XYSMVQQD.cjs +0 -1608
  300. package/dist/chunk-Y2WL2M7M.js +0 -86
  301. package/dist/chunk-YAIWI4Z5.js +0 -7
  302. package/dist/chunk-YOHBUOZJ.cjs +0 -451
  303. package/dist/chunk-YP2PLNOF.cjs +0 -34
  304. package/dist/chunk-YSOLW4FS.cjs +0 -11
  305. package/dist/chunk-YSWU4OKP.cjs +0 -548
  306. package/dist/chunk-YY6OUR2U.js +0 -44
  307. package/dist/chunk-YZWS7FDT.cjs +0 -409
  308. package/dist/chunk-Z5YGWL65.cjs +0 -39
  309. package/dist/chunk-ZHNDXNL4.js +0 -45
  310. package/dist/chunk-ZX3EDZ5C.cjs +0 -17
  311. package/dist/index.d.cts +0 -2019
@@ -1,35 +0,0 @@
1
- 'use strict';
2
-
3
- var zustand = require('zustand');
4
-
5
- // src/components/Apps/TerminalApp/terminalStore.ts
6
- var DEFAULT_STATE = {
7
- scrollback: 5e3,
8
- shell: "/bin/zsh"
9
- };
10
- var useTerminalStore = zustand.create((set, get) => ({
11
- states: {},
12
- getScrollback: (id) => get().states[id]?.scrollback ?? DEFAULT_STATE.scrollback,
13
- getShell: (id) => get().states[id]?.shell ?? DEFAULT_STATE.shell,
14
- setScrollback: (id, scrollback) => set((s) => ({
15
- states: {
16
- ...s.states,
17
- [id]: { ...s.states[id] ?? DEFAULT_STATE, scrollback }
18
- }
19
- })),
20
- setShell: (id, shell) => set((s) => ({
21
- states: {
22
- ...s.states,
23
- [id]: { ...s.states[id] ?? DEFAULT_STATE, shell }
24
- }
25
- })),
26
- reset: (id) => set((s) => ({
27
- states: { ...s.states, [id]: { ...DEFAULT_STATE } }
28
- }))
29
- }));
30
- var useScrollback = (windowId) => useTerminalStore((s) => s.states[windowId]?.scrollback ?? DEFAULT_STATE.scrollback);
31
- var useShell = (windowId) => useTerminalStore((s) => s.states[windowId]?.shell ?? DEFAULT_STATE.shell);
32
-
33
- exports.useScrollback = useScrollback;
34
- exports.useShell = useShell;
35
- exports.useTerminalStore = useTerminalStore;
@@ -1,84 +0,0 @@
1
- import { AppMenuBar_default } from './chunk-4E45FBAH.js';
2
- import { useDisplayZoom, useFitToWindow, useImageViewerStore } from './chunk-DWP2SYF7.js';
3
- import { memo, useCallback, useMemo } from 'react';
4
- import { useTranslation } from 'react-i18next';
5
- import { jsx } from 'react/jsx-runtime';
6
-
7
- var ZOOM_MARKS = [
8
- { value: 25, label: "25%" },
9
- { value: 50, label: "50%" },
10
- { value: 75, label: "75%" },
11
- { value: 100, label: "100%" },
12
- { value: 200, label: "200%" }
13
- ];
14
- var useImageViewerMenuBarElements = (options) => {
15
- const { windowId, onOpenPicker, onExit } = options;
16
- const { t } = useTranslation("common");
17
- const { t: tApps } = useTranslation("apps");
18
- const displayZoom = useDisplayZoom(windowId);
19
- const fitToWindow = useFitToWindow(windowId);
20
- const setUserZoom = useImageViewerStore((s) => s.setUserZoom);
21
- const setFitToWindow = useImageViewerStore((s) => s.setFitToWindow);
22
- const handleFitChange = useCallback(
23
- (checked) => setFitToWindow(windowId, checked),
24
- [windowId, setFitToWindow]
25
- );
26
- const handleZoomChange = useCallback(
27
- (value) => setUserZoom(windowId, value),
28
- [windowId, setUserZoom]
29
- );
30
- return useMemo(() => {
31
- const zoomLabel = `${tApps("imageViewer.zoom")}: ${displayZoom}%`;
32
- return [
33
- {
34
- type: "menu",
35
- label: t("menu.file"),
36
- items: [
37
- {
38
- type: "item",
39
- label: t("actions.open"),
40
- icon: "FcOpenedFolder",
41
- onClick: onOpenPicker ?? (() => {
42
- })
43
- },
44
- { type: "divider" },
45
- {
46
- type: "item",
47
- label: t("actions.exit"),
48
- icon: "FcLeft",
49
- onClick: onExit
50
- }
51
- ]
52
- },
53
- {
54
- type: "switch",
55
- label: tApps("imageViewer.fitToWindow"),
56
- checked: fitToWindow,
57
- onChange: handleFitChange
58
- },
59
- {
60
- type: "slider",
61
- label: zoomLabel,
62
- min: 10,
63
- max: 200,
64
- value: displayZoom,
65
- onChange: handleZoomChange,
66
- marks: ZOOM_MARKS,
67
- labelFormat: (value) => `${value}%`
68
- }
69
- ];
70
- }, [t, tApps, onOpenPicker, onExit, displayZoom, fitToWindow, handleFitChange, handleZoomChange]);
71
- };
72
- var ImageViewerMenuBar = memo(
73
- ({ windowId, contentData, onExit }) => {
74
- const elements = useImageViewerMenuBarElements({
75
- windowId,
76
- onOpenPicker: contentData?.setPickerOpen,
77
- onExit
78
- });
79
- return /* @__PURE__ */ jsx(AppMenuBar_default, { elements });
80
- }
81
- );
82
- ImageViewerMenuBar.displayName = "ImageViewerMenuBar";
83
-
84
- export { ImageViewerMenuBar };
@@ -1,146 +0,0 @@
1
- import { useScrollback, useShell, useTerminalStore } from './chunk-NVEGEK3N.js';
2
- import { AppMenuBar_default } from './chunk-4E45FBAH.js';
3
- import { memo, useCallback, useMemo } from 'react';
4
- import { useTranslation } from 'react-i18next';
5
- import { jsx } from 'react/jsx-runtime';
6
-
7
- var SHELL_OPTIONS = [
8
- { value: "/bin/sh", label: "sh" },
9
- { value: "/bin/zsh", label: "zsh" }
10
- ];
11
- function useTerminalMenuBarElements(options) {
12
- const {
13
- windowId,
14
- onExit,
15
- clear,
16
- reset,
17
- copy,
18
- paste,
19
- reconnect,
20
- connectionStatus = "idle"
21
- } = options;
22
- const { t } = useTranslation("common");
23
- const { t: tApps } = useTranslation("apps");
24
- const scrollback = useScrollback(windowId);
25
- const shell = useShell(windowId);
26
- const setScrollback = useTerminalStore((s) => s.setScrollback);
27
- const setShell = useTerminalStore((s) => s.setShell);
28
- const handleScrollbackChange = useCallback(
29
- (value) => setScrollback(windowId, value),
30
- [windowId, setScrollback]
31
- );
32
- const handleShellChange = useCallback(
33
- (value) => setShell(windowId, value),
34
- [windowId, setShell]
35
- );
36
- const isConnected = connectionStatus === "connected";
37
- return useMemo(() => {
38
- const menuItems = [
39
- {
40
- type: "item",
41
- label: tApps("terminal.menu.copy"),
42
- icon: "FcCopy",
43
- onClick: copy ?? (() => {
44
- }),
45
- disabled: !isConnected
46
- },
47
- {
48
- type: "item",
49
- label: tApps("terminal.menu.paste"),
50
- icon: "FcPaste",
51
- onClick: paste ?? (() => {
52
- }),
53
- disabled: !isConnected
54
- },
55
- { type: "divider" },
56
- {
57
- type: "item",
58
- label: tApps("terminal.menu.clear"),
59
- icon: "FcClear",
60
- onClick: clear ?? (() => {
61
- }),
62
- disabled: !isConnected
63
- },
64
- {
65
- type: "item",
66
- label: tApps("terminal.menu.reset"),
67
- icon: "FcSynchronize",
68
- onClick: reset ?? (() => {
69
- }),
70
- disabled: !isConnected
71
- }
72
- ];
73
- if (!isConnected && reconnect) {
74
- menuItems.push({ type: "divider" });
75
- menuItems.push({
76
- type: "item",
77
- label: tApps("terminal.menu.reconnect"),
78
- icon: "FcSynchronize",
79
- onClick: reconnect
80
- });
81
- }
82
- menuItems.push({ type: "divider" });
83
- menuItems.push({
84
- type: "item",
85
- label: t("actions.exit"),
86
- icon: "FcLeave",
87
- onClick: onExit
88
- });
89
- return [
90
- {
91
- type: "menu",
92
- label: t("menu.edit"),
93
- items: menuItems
94
- },
95
- {
96
- type: "number-input",
97
- label: tApps("terminal.scrollback"),
98
- value: scrollback,
99
- onChange: handleScrollbackChange,
100
- min: 100,
101
- max: 5e4,
102
- step: 100,
103
- placeholder: "5000"
104
- },
105
- {
106
- type: "select",
107
- label: tApps("terminal.shell"),
108
- options: SHELL_OPTIONS,
109
- value: shell,
110
- onChange: handleShellChange
111
- }
112
- ];
113
- }, [
114
- t,
115
- tApps,
116
- onExit,
117
- clear,
118
- reset,
119
- copy,
120
- paste,
121
- reconnect,
122
- isConnected,
123
- scrollback,
124
- shell,
125
- handleScrollbackChange,
126
- handleShellChange
127
- ]);
128
- }
129
- var TerminalMenuBar = memo(
130
- ({ windowId, contentData, onExit }) => {
131
- const elements = useTerminalMenuBarElements({
132
- windowId,
133
- onExit,
134
- clear: contentData?.clear,
135
- reset: contentData?.reset,
136
- copy: contentData?.copy,
137
- paste: contentData?.paste,
138
- reconnect: contentData?.reconnect,
139
- connectionStatus: contentData?.connectionStatus
140
- });
141
- return /* @__PURE__ */ jsx(AppMenuBar_default, { elements });
142
- }
143
- );
144
- TerminalMenuBar.displayName = "TerminalMenuBar";
145
-
146
- export { TerminalMenuBar };
@@ -1,83 +0,0 @@
1
- 'use strict';
2
-
3
- var chunk2UW42GAP_cjs = require('./chunk-2UW42GAP.cjs');
4
- var zustand = require('zustand');
5
- var react = require('react');
6
-
7
- var useCloseModalStore = zustand.create()((set) => ({
8
- isOpen: false,
9
- windowId: null,
10
- onSave: null,
11
- onDiscard: null,
12
- openModal: (windowId, onSave, onDiscard) => set({
13
- isOpen: true,
14
- windowId,
15
- onSave,
16
- onDiscard
17
- }),
18
- closeModal: () => set({ isOpen: false, windowId: null, onSave: null, onDiscard: null })
19
- }));
20
- var closeInterceptors = /* @__PURE__ */ new Map();
21
- var registerCloseInterceptor = (windowId, interceptor) => {
22
- closeInterceptors.set(windowId, interceptor);
23
- };
24
- var unregisterCloseInterceptor = (windowId) => {
25
- closeInterceptors.delete(windowId);
26
- };
27
- var getCloseInterceptor = (windowId) => {
28
- return closeInterceptors.get(windowId);
29
- };
30
- function useCloseInterceptor({
31
- isDirtyGetter,
32
- windowId,
33
- onDiscard,
34
- onSave
35
- }) {
36
- const windows = chunk2UW42GAP_cjs.useDesktopStore((state) => state.windows);
37
- const closeWindow = chunk2UW42GAP_cjs.useDesktopStore((state) => state.closeWindow);
38
- const openModal = useCloseModalStore((state) => state.openModal);
39
- const activeWindowId = windowId ?? windows.find((w) => w.isOpen)?.id;
40
- const isDirtyGetterRef = react.useRef(isDirtyGetter);
41
- const isActiveRef = react.useRef(false);
42
- const onDiscardRef = react.useRef(onDiscard);
43
- const onSaveRef = react.useRef(onSave);
44
- react.useEffect(() => {
45
- isDirtyGetterRef.current = isDirtyGetter;
46
- onDiscardRef.current = onDiscard;
47
- onSaveRef.current = onSave;
48
- }, [isDirtyGetter, onDiscard, onSave]);
49
- const handleDiscard = react.useCallback(() => {
50
- if (!activeWindowId) return;
51
- onDiscardRef.current?.();
52
- closeWindow(activeWindowId);
53
- }, [activeWindowId, closeWindow]);
54
- const handleSave = react.useCallback(() => {
55
- if (!activeWindowId) return;
56
- onSaveRef.current?.();
57
- closeWindow(activeWindowId);
58
- }, [activeWindowId, closeWindow]);
59
- react.useEffect(() => {
60
- if (!activeWindowId) return;
61
- isActiveRef.current = true;
62
- const closeInterceptor = () => {
63
- if (!isActiveRef.current) return true;
64
- const isDirty = isDirtyGetterRef.current();
65
- if (isDirty) {
66
- openModal(activeWindowId, handleSave, handleDiscard);
67
- return false;
68
- }
69
- return true;
70
- };
71
- registerCloseInterceptor(activeWindowId, closeInterceptor);
72
- return () => {
73
- isActiveRef.current = false;
74
- unregisterCloseInterceptor(activeWindowId);
75
- };
76
- }, [activeWindowId, openModal, handleSave, handleDiscard]);
77
- }
78
-
79
- exports.getCloseInterceptor = getCloseInterceptor;
80
- exports.registerCloseInterceptor = registerCloseInterceptor;
81
- exports.unregisterCloseInterceptor = unregisterCloseInterceptor;
82
- exports.useCloseInterceptor = useCloseInterceptor;
83
- exports.useCloseModalStore = useCloseModalStore;
@@ -1,50 +0,0 @@
1
- 'use strict';
2
-
3
- var chunk2UW42GAP_cjs = require('./chunk-2UW42GAP.cjs');
4
- var chunkZ5YGWL65_cjs = require('./chunk-Z5YGWL65.cjs');
5
- var react = require('react');
6
-
7
- function useResolvedUrl(url) {
8
- const needsBlobResolution = react.useMemo(
9
- () => (url?.startsWith("idb://") || chunkZ5YGWL65_cjs.isDocker() && url?.startsWith("/api/fs")) ?? false,
10
- [url]
11
- );
12
- const isApiFsUrl = react.useMemo(() => url?.startsWith("/api/fs") ?? false, [url]);
13
- const [blobUrl, setBlobUrl] = react.useState(void 0);
14
- const revokeRef = react.useRef(void 0);
15
- react.useEffect(() => {
16
- if (!url || !needsBlobResolution) return;
17
- let cancelled = false;
18
- chunk2UW42GAP_cjs.fileSystem.toBlobUrl(url).then((result) => {
19
- if (cancelled) {
20
- if (result) URL.revokeObjectURL(result);
21
- return;
22
- }
23
- revokeRef.current = result ?? void 0;
24
- setBlobUrl(result ?? void 0);
25
- });
26
- return () => {
27
- cancelled = true;
28
- if (revokeRef.current) {
29
- URL.revokeObjectURL(revokeRef.current);
30
- revokeRef.current = void 0;
31
- }
32
- setBlobUrl(void 0);
33
- };
34
- }, [url, needsBlobResolution]);
35
- if (!url) return void 0;
36
- if (isApiFsUrl && needsBlobResolution) {
37
- return blobUrl;
38
- }
39
- if (!needsBlobResolution) {
40
- if (url.startsWith("/") || url.startsWith("http://") || url.startsWith("https://")) {
41
- return url;
42
- }
43
- const base = chunk2UW42GAP_cjs.getBaseUrl();
44
- const normalizedBase = base.endsWith("/") ? base : `${base}/`;
45
- return `${normalizedBase}${url}`;
46
- }
47
- return blobUrl;
48
- }
49
-
50
- exports.useResolvedUrl = useResolvedUrl;
@@ -1,53 +0,0 @@
1
- 'use strict';
2
-
3
- var react = require('react');
4
-
5
- // src/hooks/useDynamicIcon.ts
6
- var useDynamicIcon = (name, library) => {
7
- const [Icon, setIcon] = react.useState(null);
8
- react.useEffect(() => {
9
- if (!name || typeof window === "undefined") return;
10
- let cancelled = false;
11
- const loadIcon = async () => {
12
- try {
13
- let mod;
14
- if (library === "fi") {
15
- mod = await import('react-icons/fi');
16
- } else if (library === "vsc") {
17
- mod = await import('react-icons/vsc');
18
- } else {
19
- mod = await import('react-icons/fc');
20
- }
21
- if (!cancelled) {
22
- setIcon(() => mod[name] ?? null);
23
- }
24
- } catch {
25
- }
26
- };
27
- loadIcon();
28
- return () => {
29
- cancelled = true;
30
- };
31
- }, [name, library]);
32
- return Icon;
33
- };
34
- var useDynamicIconElement = (name, library, props) => {
35
- const Icon = useDynamicIcon(name, library);
36
- if (!Icon) return null;
37
- return react.createElement(Icon, props);
38
- };
39
- var useFiIcon = (name) => useDynamicIcon(name, "fi");
40
- var useFcIcon = (name) => useDynamicIcon(name, "fc");
41
- var useVscIcon = (name) => useDynamicIcon(name, "vsc");
42
- var useFiIconElement = (name, props) => useDynamicIconElement(name, "fi", props);
43
- var useFcIconElement = (name, props) => useDynamicIconElement(name, "fc", props);
44
- var useVscIconElement = (name, props) => useDynamicIconElement(name, "vsc", props);
45
-
46
- exports.useDynamicIcon = useDynamicIcon;
47
- exports.useDynamicIconElement = useDynamicIconElement;
48
- exports.useFcIcon = useFcIcon;
49
- exports.useFcIconElement = useFcIconElement;
50
- exports.useFiIcon = useFiIcon;
51
- exports.useFiIconElement = useFiIconElement;
52
- exports.useVscIcon = useVscIcon;
53
- exports.useVscIconElement = useVscIconElement;
@@ -1,45 +0,0 @@
1
- 'use strict';
2
-
3
- var chunk7Y7HB7FB_cjs = require('./chunk-7Y7HB7FB.cjs');
4
- var react = require('react');
5
-
6
- // src/utils/getFileExtension.ts
7
- var getFileExtension = (name) => name.split(".").pop()?.toLowerCase() ?? "";
8
- var EXTENSION_ICONS = {
9
- pdf: "VscFilePdf",
10
- md: "VscMarkdown",
11
- txt: "VscFile",
12
- jpg: "VscFileMedia",
13
- jpeg: "VscFileMedia",
14
- png: "VscFileMedia",
15
- gif: "VscFileMedia",
16
- svg: "VscFileCode",
17
- ts: "VscFileCode",
18
- tsx: "VscFileCode",
19
- js: "VscFileCode",
20
- jsx: "VscFileCode",
21
- json: "VscJson",
22
- html: "VscFileCode",
23
- css: "VscFileCode"
24
- };
25
- var FileIcon = ({ type, name = "", folderNode, fileNode, size = 20 }) => {
26
- let iconName;
27
- let iconColor;
28
- if (type === "folder") {
29
- iconName = folderNode?.iconName ?? "VscFolder";
30
- iconColor = folderNode?.iconColor ?? void 0;
31
- } else if (type === "file" && fileNode?.iconName) {
32
- iconName = fileNode.iconName;
33
- iconColor = fileNode.iconColor ?? void 0;
34
- } else {
35
- const ext = getFileExtension(name);
36
- iconName = EXTENSION_ICONS[ext] ?? "VscFile";
37
- }
38
- const Icon = chunk7Y7HB7FB_cjs.useVscIcon(iconName);
39
- if (!Icon) return null;
40
- return react.createElement(Icon, { size, color: iconColor, "aria-hidden": "true" });
41
- };
42
- var FileIcon_default = FileIcon;
43
-
44
- exports.FileIcon_default = FileIcon_default;
45
- exports.getFileExtension = getFileExtension;