@theia/filesystem 1.77.0-next.99 → 1.78.0-next.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 (442) hide show
  1. package/lib/browser/breadcrumbs/filepath-breadcrumb.js +4 -8
  2. package/lib/browser/breadcrumbs/filepath-breadcrumb.js.map +1 -1
  3. package/lib/browser/breadcrumbs/filepath-breadcrumbs-container.d.ts +1 -1
  4. package/lib/browser/breadcrumbs/filepath-breadcrumbs-container.d.ts.map +1 -1
  5. package/lib/browser/breadcrumbs/filepath-breadcrumbs-container.js +18 -25
  6. package/lib/browser/breadcrumbs/filepath-breadcrumbs-container.js.map +1 -1
  7. package/lib/browser/breadcrumbs/filepath-breadcrumbs-contribution.d.ts +5 -5
  8. package/lib/browser/breadcrumbs/filepath-breadcrumbs-contribution.d.ts.map +1 -1
  9. package/lib/browser/breadcrumbs/filepath-breadcrumbs-contribution.js +27 -33
  10. package/lib/browser/breadcrumbs/filepath-breadcrumbs-contribution.js.map +1 -1
  11. package/lib/browser/download/file-download-command-contribution.d.ts +1 -1
  12. package/lib/browser/download/file-download-command-contribution.d.ts.map +1 -1
  13. package/lib/browser/download/file-download-command-contribution.js +28 -33
  14. package/lib/browser/download/file-download-command-contribution.js.map +1 -1
  15. package/lib/browser/download/file-download-frontend-module.js +8 -10
  16. package/lib/browser/download/file-download-frontend-module.js.map +1 -1
  17. package/lib/browser/download/file-download-service.d.ts +1 -1
  18. package/lib/browser/download/file-download-service.d.ts.map +1 -1
  19. package/lib/browser/download/file-download-service.js +19 -24
  20. package/lib/browser/download/file-download-service.js.map +1 -1
  21. package/lib/browser/file-dialog/file-dialog-container.d.ts +1 -1
  22. package/lib/browser/file-dialog/file-dialog-container.d.ts.map +1 -1
  23. package/lib/browser/file-dialog/file-dialog-container.js +25 -30
  24. package/lib/browser/file-dialog/file-dialog-container.js.map +1 -1
  25. package/lib/browser/file-dialog/file-dialog-hidden-files-renderer.d.ts +1 -1
  26. package/lib/browser/file-dialog/file-dialog-hidden-files-renderer.d.ts.map +1 -1
  27. package/lib/browser/file-dialog/file-dialog-hidden-files-renderer.js +13 -21
  28. package/lib/browser/file-dialog/file-dialog-hidden-files-renderer.js.map +1 -1
  29. package/lib/browser/file-dialog/file-dialog-model.d.ts +2 -2
  30. package/lib/browser/file-dialog/file-dialog-model.d.ts.map +1 -1
  31. package/lib/browser/file-dialog/file-dialog-model.js +20 -27
  32. package/lib/browser/file-dialog/file-dialog-model.js.map +1 -1
  33. package/lib/browser/file-dialog/file-dialog-module.js +21 -23
  34. package/lib/browser/file-dialog/file-dialog-module.js.map +1 -1
  35. package/lib/browser/file-dialog/file-dialog-service.d.ts +4 -4
  36. package/lib/browser/file-dialog/file-dialog-service.d.ts.map +1 -1
  37. package/lib/browser/file-dialog/file-dialog-service.js +29 -38
  38. package/lib/browser/file-dialog/file-dialog-service.js.map +1 -1
  39. package/lib/browser/file-dialog/file-dialog-tree-filters-renderer.d.ts +1 -1
  40. package/lib/browser/file-dialog/file-dialog-tree-filters-renderer.d.ts.map +1 -1
  41. package/lib/browser/file-dialog/file-dialog-tree-filters-renderer.js +16 -21
  42. package/lib/browser/file-dialog/file-dialog-tree-filters-renderer.js.map +1 -1
  43. package/lib/browser/file-dialog/file-dialog-tree-filters-renderer.spec.js +9 -11
  44. package/lib/browser/file-dialog/file-dialog-tree-filters-renderer.spec.js.map +1 -1
  45. package/lib/browser/file-dialog/file-dialog-tree.d.ts +2 -2
  46. package/lib/browser/file-dialog/file-dialog-tree.d.ts.map +1 -1
  47. package/lib/browser/file-dialog/file-dialog-tree.js +8 -11
  48. package/lib/browser/file-dialog/file-dialog-tree.js.map +1 -1
  49. package/lib/browser/file-dialog/file-dialog-widget.d.ts +2 -2
  50. package/lib/browser/file-dialog/file-dialog-widget.d.ts.map +1 -1
  51. package/lib/browser/file-dialog/file-dialog-widget.js +18 -23
  52. package/lib/browser/file-dialog/file-dialog-widget.js.map +1 -1
  53. package/lib/browser/file-dialog/file-dialog.d.ts +6 -6
  54. package/lib/browser/file-dialog/file-dialog.d.ts.map +1 -1
  55. package/lib/browser/file-dialog/file-dialog.js +114 -132
  56. package/lib/browser/file-dialog/file-dialog.js.map +1 -1
  57. package/lib/browser/file-dialog/index.d.ts +4 -4
  58. package/lib/browser/file-dialog/index.d.ts.map +1 -1
  59. package/lib/browser/file-dialog/index.js +4 -7
  60. package/lib/browser/file-dialog/index.js.map +1 -1
  61. package/lib/browser/file-resource.d.ts +2 -2
  62. package/lib/browser/file-resource.d.ts.map +1 -1
  63. package/lib/browser/file-resource.js +64 -71
  64. package/lib/browser/file-resource.js.map +1 -1
  65. package/lib/browser/file-resource.spec.js +39 -42
  66. package/lib/browser/file-resource.spec.js.map +1 -1
  67. package/lib/browser/file-selection.d.ts +1 -1
  68. package/lib/browser/file-selection.d.ts.map +1 -1
  69. package/lib/browser/file-selection.js +7 -10
  70. package/lib/browser/file-selection.js.map +1 -1
  71. package/lib/browser/file-service-activation.spec.js +14 -16
  72. package/lib/browser/file-service-activation.spec.js.map +1 -1
  73. package/lib/browser/file-service-copy.spec.js +44 -47
  74. package/lib/browser/file-service-copy.spec.js.map +1 -1
  75. package/lib/browser/file-service-watcher.spec.js +199 -202
  76. package/lib/browser/file-service-watcher.spec.js.map +1 -1
  77. package/lib/browser/file-service.d.ts +3 -3
  78. package/lib/browser/file-service.d.ts.map +1 -1
  79. package/lib/browser/file-service.js +166 -181
  80. package/lib/browser/file-service.js.map +1 -1
  81. package/lib/browser/file-tree/file-tree-container.js +12 -15
  82. package/lib/browser/file-tree/file-tree-container.js.map +1 -1
  83. package/lib/browser/file-tree/file-tree-decorator-adapter.js +23 -31
  84. package/lib/browser/file-tree/file-tree-decorator-adapter.js.map +1 -1
  85. package/lib/browser/file-tree/file-tree-decorator-adapter.spec.js +26 -29
  86. package/lib/browser/file-tree/file-tree-decorator-adapter.spec.js.map +1 -1
  87. package/lib/browser/file-tree/file-tree-label-provider.d.ts +1 -1
  88. package/lib/browser/file-tree/file-tree-label-provider.d.ts.map +1 -1
  89. package/lib/browser/file-tree/file-tree-label-provider.js +13 -18
  90. package/lib/browser/file-tree/file-tree-label-provider.js.map +1 -1
  91. package/lib/browser/file-tree/file-tree-model.d.ts +5 -5
  92. package/lib/browser/file-tree/file-tree-model.d.ts.map +1 -1
  93. package/lib/browser/file-tree/file-tree-model.js +48 -52
  94. package/lib/browser/file-tree/file-tree-model.js.map +1 -1
  95. package/lib/browser/file-tree/file-tree-widget.d.ts +3 -3
  96. package/lib/browser/file-tree/file-tree-widget.d.ts.map +1 -1
  97. package/lib/browser/file-tree/file-tree-widget.js +66 -72
  98. package/lib/browser/file-tree/file-tree-widget.js.map +1 -1
  99. package/lib/browser/file-tree/file-tree.d.ts +3 -3
  100. package/lib/browser/file-tree/file-tree.d.ts.map +1 -1
  101. package/lib/browser/file-tree/file-tree.js +26 -31
  102. package/lib/browser/file-tree/file-tree.js.map +1 -1
  103. package/lib/browser/file-tree/index.d.ts +6 -6
  104. package/lib/browser/file-tree/index.d.ts.map +1 -1
  105. package/lib/browser/file-tree/index.js +6 -9
  106. package/lib/browser/file-tree/index.js.map +1 -1
  107. package/lib/browser/filesystem-frontend-contribution.d.ts +6 -6
  108. package/lib/browser/filesystem-frontend-contribution.d.ts.map +1 -1
  109. package/lib/browser/filesystem-frontend-contribution.js +75 -90
  110. package/lib/browser/filesystem-frontend-contribution.js.map +1 -1
  111. package/lib/browser/filesystem-frontend-module.js +47 -50
  112. package/lib/browser/filesystem-frontend-module.js.map +1 -1
  113. package/lib/browser/filesystem-saveable-service.d.ts +2 -2
  114. package/lib/browser/filesystem-saveable-service.d.ts.map +1 -1
  115. package/lib/browser/filesystem-saveable-service.js +35 -44
  116. package/lib/browser/filesystem-saveable-service.js.map +1 -1
  117. package/lib/browser/filesystem-watcher-error-handler.js +13 -18
  118. package/lib/browser/filesystem-watcher-error-handler.js.map +1 -1
  119. package/lib/browser/index.d.ts +4 -4
  120. package/lib/browser/index.d.ts.map +1 -1
  121. package/lib/browser/index.js +4 -7
  122. package/lib/browser/index.js.map +1 -1
  123. package/lib/browser/location/index.d.ts +2 -2
  124. package/lib/browser/location/index.d.ts.map +1 -1
  125. package/lib/browser/location/index.js +2 -5
  126. package/lib/browser/location/index.js.map +1 -1
  127. package/lib/browser/location/location-renderer.d.ts +3 -3
  128. package/lib/browser/location/location-renderer.d.ts.map +1 -1
  129. package/lib/browser/location/location-renderer.js +42 -51
  130. package/lib/browser/location/location-renderer.js.map +1 -1
  131. package/lib/browser/location/location-renderer.spec.js +61 -64
  132. package/lib/browser/location/location-renderer.spec.js.map +1 -1
  133. package/lib/browser/location/location-service.js +1 -2
  134. package/lib/browser/location/location-service.js.map +1 -1
  135. package/lib/browser/remote-file-service-contribution.d.ts +2 -2
  136. package/lib/browser/remote-file-service-contribution.d.ts.map +1 -1
  137. package/lib/browser/remote-file-service-contribution.js +8 -12
  138. package/lib/browser/remote-file-service-contribution.js.map +1 -1
  139. package/lib/browser/upload/file-upload-service-impl.d.ts +3 -3
  140. package/lib/browser/upload/file-upload-service-impl.d.ts.map +1 -1
  141. package/lib/browser/upload/file-upload-service-impl.js +55 -64
  142. package/lib/browser/upload/file-upload-service-impl.js.map +1 -1
  143. package/lib/browser/vscode-file-service-contribution.d.ts +2 -2
  144. package/lib/browser/vscode-file-service-contribution.d.ts.map +1 -1
  145. package/lib/browser/vscode-file-service-contribution.js +23 -28
  146. package/lib/browser/vscode-file-service-contribution.js.map +1 -1
  147. package/lib/browser-only/browser-only-filesystem-frontend-module.js +21 -23
  148. package/lib/browser-only/browser-only-filesystem-frontend-module.js.map +1 -1
  149. package/lib/browser-only/browser-only-filesystem-provider-server.d.ts +1 -1
  150. package/lib/browser-only/browser-only-filesystem-provider-server.d.ts.map +1 -1
  151. package/lib/browser-only/browser-only-filesystem-provider-server.js +10 -13
  152. package/lib/browser-only/browser-only-filesystem-provider-server.js.map +1 -1
  153. package/lib/browser-only/download/file-download-command-contribution.d.ts +1 -1
  154. package/lib/browser-only/download/file-download-command-contribution.d.ts.map +1 -1
  155. package/lib/browser-only/download/file-download-command-contribution.js +14 -19
  156. package/lib/browser-only/download/file-download-command-contribution.js.map +1 -1
  157. package/lib/browser-only/download/file-download-frontend-module.js +8 -10
  158. package/lib/browser-only/download/file-download-frontend-module.js.map +1 -1
  159. package/lib/browser-only/download/file-download-service.d.ts +3 -3
  160. package/lib/browser-only/download/file-download-service.d.ts.map +1 -1
  161. package/lib/browser-only/download/file-download-service.js +26 -33
  162. package/lib/browser-only/download/file-download-service.js.map +1 -1
  163. package/lib/browser-only/file-search.d.ts.map +1 -1
  164. package/lib/browser-only/file-search.js +9 -15
  165. package/lib/browser-only/file-search.js.map +1 -1
  166. package/lib/browser-only/opfs-filesystem-initialization.d.ts +1 -1
  167. package/lib/browser-only/opfs-filesystem-initialization.d.ts.map +1 -1
  168. package/lib/browser-only/opfs-filesystem-initialization.js +6 -9
  169. package/lib/browser-only/opfs-filesystem-initialization.js.map +1 -1
  170. package/lib/browser-only/opfs-filesystem-provider.d.ts +2 -2
  171. package/lib/browser-only/opfs-filesystem-provider.d.ts.map +1 -1
  172. package/lib/browser-only/opfs-filesystem-provider.js +60 -68
  173. package/lib/browser-only/opfs-filesystem-provider.js.map +1 -1
  174. package/lib/browser-only/upload/file-upload-service-impl.d.ts +3 -3
  175. package/lib/browser-only/upload/file-upload-service-impl.d.ts.map +1 -1
  176. package/lib/browser-only/upload/file-upload-service-impl.js +51 -60
  177. package/lib/browser-only/upload/file-upload-service-impl.js.map +1 -1
  178. package/lib/common/delegating-file-system-provider.d.ts +1 -1
  179. package/lib/common/delegating-file-system-provider.d.ts.map +1 -1
  180. package/lib/common/delegating-file-system-provider.js +18 -22
  181. package/lib/common/delegating-file-system-provider.js.map +1 -1
  182. package/lib/common/download/file-download.js +5 -8
  183. package/lib/common/download/file-download.js.map +1 -1
  184. package/lib/common/file-upload.js +1 -4
  185. package/lib/common/file-upload.js.map +1 -1
  186. package/lib/common/files.js +38 -59
  187. package/lib/common/files.js.map +1 -1
  188. package/lib/common/files.spec.js +22 -25
  189. package/lib/common/files.spec.js.map +1 -1
  190. package/lib/common/filesystem-preferences.js +39 -44
  191. package/lib/common/filesystem-preferences.js.map +1 -1
  192. package/lib/common/filesystem-utils.d.ts +1 -1
  193. package/lib/common/filesystem-utils.d.ts.map +1 -1
  194. package/lib/common/filesystem-utils.js +2 -5
  195. package/lib/common/filesystem-utils.js.map +1 -1
  196. package/lib/common/filesystem-utils.spec.js +227 -229
  197. package/lib/common/filesystem-utils.spec.js.map +1 -1
  198. package/lib/common/filesystem-watcher-protocol.d.ts +1 -1
  199. package/lib/common/filesystem-watcher-protocol.d.ts.map +1 -1
  200. package/lib/common/filesystem-watcher-protocol.js +2 -5
  201. package/lib/common/filesystem-watcher-protocol.js.map +1 -1
  202. package/lib/common/filesystem.js +2 -5
  203. package/lib/common/filesystem.js.map +1 -1
  204. package/lib/common/index.d.ts +3 -3
  205. package/lib/common/index.d.ts.map +1 -1
  206. package/lib/common/index.js +3 -6
  207. package/lib/common/index.js.map +1 -1
  208. package/lib/common/io.d.ts +2 -2
  209. package/lib/common/io.d.ts.map +1 -1
  210. package/lib/common/io.js +10 -13
  211. package/lib/common/io.js.map +1 -1
  212. package/lib/common/remote-file-system-provider.d.ts +5 -5
  213. package/lib/common/remote-file-system-provider.d.ts.map +1 -1
  214. package/lib/common/remote-file-system-provider.js +81 -93
  215. package/lib/common/remote-file-system-provider.js.map +1 -1
  216. package/lib/common/upload/file-upload.js +1 -4
  217. package/lib/common/upload/file-upload.js.map +1 -1
  218. package/lib/electron-browser/file-dialog/electron-file-dialog-module.js +6 -8
  219. package/lib/electron-browser/file-dialog/electron-file-dialog-module.js.map +1 -1
  220. package/lib/electron-browser/file-dialog/electron-file-dialog-service.d.ts +3 -3
  221. package/lib/electron-browser/file-dialog/electron-file-dialog-service.d.ts.map +1 -1
  222. package/lib/electron-browser/file-dialog/electron-file-dialog-service.js +21 -23
  223. package/lib/electron-browser/file-dialog/electron-file-dialog-service.js.map +1 -1
  224. package/lib/electron-browser/file-dialog/electron-file-dialog-service.spec.js +33 -12
  225. package/lib/electron-browser/file-dialog/electron-file-dialog-service.spec.js.map +1 -1
  226. package/lib/electron-browser/preload.js +6 -9
  227. package/lib/electron-browser/preload.js.map +1 -1
  228. package/lib/electron-common/electron-api.d.ts +4 -0
  229. package/lib/electron-common/electron-api.d.ts.map +1 -1
  230. package/lib/electron-common/electron-api.js +2 -5
  231. package/lib/electron-common/electron-api.js.map +1 -1
  232. package/lib/electron-main/electron-api-main.d.ts.map +1 -1
  233. package/lib/electron-main/electron-api-main.js +19 -18
  234. package/lib/electron-main/electron-api-main.js.map +1 -1
  235. package/lib/electron-main/electron-main-module.js +6 -8
  236. package/lib/electron-main/electron-main-module.js.map +1 -1
  237. package/lib/node/archive/archive-extractor.d.ts +86 -0
  238. package/lib/node/archive/archive-extractor.d.ts.map +1 -0
  239. package/lib/node/archive/archive-extractor.js +290 -0
  240. package/lib/node/archive/archive-extractor.js.map +1 -0
  241. package/lib/node/archive/archive-extractor.spec.d.ts +2 -0
  242. package/lib/node/archive/archive-extractor.spec.d.ts.map +1 -0
  243. package/lib/node/archive/archive-extractor.spec.js +317 -0
  244. package/lib/node/archive/archive-extractor.spec.js.map +1 -0
  245. package/lib/node/archive/test/test-archives.d.ts +20 -0
  246. package/lib/node/archive/test/test-archives.d.ts.map +1 -0
  247. package/lib/node/archive/test/test-archives.js +97 -0
  248. package/lib/node/archive/test/test-archives.js.map +1 -0
  249. package/lib/node/disk-file-system-provider.d.ts +2 -2
  250. package/lib/node/disk-file-system-provider.d.ts.map +1 -1
  251. package/lib/node/disk-file-system-provider.js +111 -119
  252. package/lib/node/disk-file-system-provider.js.map +1 -1
  253. package/lib/node/disk-file-system-provider.spec.js +53 -56
  254. package/lib/node/disk-file-system-provider.spec.js.map +1 -1
  255. package/lib/node/download/directory-archiver.js +13 -16
  256. package/lib/node/download/directory-archiver.js.map +1 -1
  257. package/lib/node/download/directory-archiver.spec.js +20 -23
  258. package/lib/node/download/directory-archiver.spec.js.map +1 -1
  259. package/lib/node/download/file-download-backend-module.js +14 -16
  260. package/lib/node/download/file-download-backend-module.js.map +1 -1
  261. package/lib/node/download/file-download-cache.js +11 -15
  262. package/lib/node/download/file-download-cache.js.map +1 -1
  263. package/lib/node/download/file-download-endpoint.d.ts +1 -1
  264. package/lib/node/download/file-download-endpoint.d.ts.map +1 -1
  265. package/lib/node/download/file-download-endpoint.js +25 -31
  266. package/lib/node/download/file-download-endpoint.js.map +1 -1
  267. package/lib/node/download/file-download-handler.d.ts +2 -2
  268. package/lib/node/download/file-download-handler.d.ts.map +1 -1
  269. package/lib/node/download/file-download-handler.js +70 -76
  270. package/lib/node/download/file-download-handler.js.map +1 -1
  271. package/lib/node/download/test/mock-directory-archiver.d.ts +1 -1
  272. package/lib/node/download/test/mock-directory-archiver.d.ts.map +1 -1
  273. package/lib/node/download/test/mock-directory-archiver.js +2 -6
  274. package/lib/node/download/test/mock-directory-archiver.js.map +1 -1
  275. package/lib/node/file-change-collection.d.ts +1 -1
  276. package/lib/node/file-change-collection.d.ts.map +1 -1
  277. package/lib/node/file-change-collection.js +1 -5
  278. package/lib/node/file-change-collection.js.map +1 -1
  279. package/lib/node/file-change-collection.spec.js +5 -8
  280. package/lib/node/file-change-collection.spec.js.map +1 -1
  281. package/lib/node/filesystem-backend-module.d.ts +1 -1
  282. package/lib/node/filesystem-backend-module.d.ts.map +1 -1
  283. package/lib/node/filesystem-backend-module.js +60 -64
  284. package/lib/node/filesystem-backend-module.js.map +1 -1
  285. package/lib/node/filesystem-watcher-client.d.ts +2 -2
  286. package/lib/node/filesystem-watcher-client.d.ts.map +1 -1
  287. package/lib/node/filesystem-watcher-client.js +11 -16
  288. package/lib/node/filesystem-watcher-client.js.map +1 -1
  289. package/lib/node/filesystem-watcher-dispatcher.d.ts +1 -1
  290. package/lib/node/filesystem-watcher-dispatcher.d.ts.map +1 -1
  291. package/lib/node/filesystem-watcher-dispatcher.js +9 -13
  292. package/lib/node/filesystem-watcher-dispatcher.js.map +1 -1
  293. package/lib/node/filesystem-watcher-service-impl.d.ts +3 -3
  294. package/lib/node/filesystem-watcher-service-impl.d.ts.map +1 -1
  295. package/lib/node/filesystem-watcher-service-impl.js +7 -11
  296. package/lib/node/filesystem-watcher-service-impl.js.map +1 -1
  297. package/lib/node/filesystem-watcher-service-impl.spec.js +23 -26
  298. package/lib/node/filesystem-watcher-service-impl.spec.js.map +1 -1
  299. package/lib/node/filesystem-watcher.d.ts +1 -1
  300. package/lib/node/filesystem-watcher.d.ts.map +1 -1
  301. package/lib/node/filesystem-watcher.js +6 -11
  302. package/lib/node/filesystem-watcher.js.map +1 -1
  303. package/lib/node/nodejs-watcher/node-directory-watcher.d.ts +4 -4
  304. package/lib/node/nodejs-watcher/node-directory-watcher.d.ts.map +1 -1
  305. package/lib/node/nodejs-watcher/node-directory-watcher.js +20 -26
  306. package/lib/node/nodejs-watcher/node-directory-watcher.js.map +1 -1
  307. package/lib/node/nodejs-watcher/node-directory-watcher.spec.js +51 -54
  308. package/lib/node/nodejs-watcher/node-directory-watcher.spec.js.map +1 -1
  309. package/lib/node/nodejs-watcher/watch-request-router.d.ts +3 -3
  310. package/lib/node/nodejs-watcher/watch-request-router.d.ts.map +1 -1
  311. package/lib/node/nodejs-watcher/watch-request-router.js +8 -13
  312. package/lib/node/nodejs-watcher/watch-request-router.js.map +1 -1
  313. package/lib/node/nodejs-watcher/watcher-host.d.ts +1 -1
  314. package/lib/node/nodejs-watcher/watcher-host.d.ts.map +1 -1
  315. package/lib/node/nodejs-watcher/watcher-host.js +7 -12
  316. package/lib/node/nodejs-watcher/watcher-host.js.map +1 -1
  317. package/lib/node/parcel-watcher/index.js +6 -9
  318. package/lib/node/parcel-watcher/index.js.map +1 -1
  319. package/lib/node/parcel-watcher/parcel-filesystem-service.d.ts +4 -4
  320. package/lib/node/parcel-watcher/parcel-filesystem-service.d.ts.map +1 -1
  321. package/lib/node/parcel-watcher/parcel-filesystem-service.js +4 -8
  322. package/lib/node/parcel-watcher/parcel-filesystem-service.js.map +1 -1
  323. package/lib/node/parcel-watcher/parcel-filesystem-watcher.spec.js +23 -26
  324. package/lib/node/parcel-watcher/parcel-filesystem-watcher.spec.js.map +1 -1
  325. package/lib/node/parcel-watcher/parcel-options.js +1 -4
  326. package/lib/node/parcel-watcher/parcel-options.js.map +1 -1
  327. package/lib/node/parcel-watcher/parcel-watcher-exclude.spec.js +11 -16
  328. package/lib/node/parcel-watcher/parcel-watcher-exclude.spec.js.map +1 -1
  329. package/lib/node/parcel-watcher/parcel-watcher-retry.spec.js +11 -16
  330. package/lib/node/parcel-watcher/parcel-watcher-retry.spec.js.map +1 -1
  331. package/lib/node/parcel-watcher/parcel-watcher.d.ts +3 -3
  332. package/lib/node/parcel-watcher/parcel-watcher.d.ts.map +1 -1
  333. package/lib/node/parcel-watcher/parcel-watcher.js +28 -32
  334. package/lib/node/parcel-watcher/parcel-watcher.js.map +1 -1
  335. package/lib/node/test/watcher-test-helper.d.ts +1 -1
  336. package/lib/node/test/watcher-test-helper.d.ts.map +1 -1
  337. package/lib/node/test/watcher-test-helper.js +5 -10
  338. package/lib/node/test/watcher-test-helper.js.map +1 -1
  339. package/lib/node/upload/node-file-upload-service.d.ts +1 -1
  340. package/lib/node/upload/node-file-upload-service.d.ts.map +1 -1
  341. package/lib/node/upload/node-file-upload-service.js +20 -25
  342. package/lib/node/upload/node-file-upload-service.js.map +1 -1
  343. package/lib/node/upload/node-file-upload-service.spec.js +21 -24
  344. package/lib/node/upload/node-file-upload-service.spec.js.map +1 -1
  345. package/package.json +21 -5
  346. package/src/browser/breadcrumbs/filepath-breadcrumb.ts +1 -1
  347. package/src/browser/breadcrumbs/filepath-breadcrumbs-container.ts +1 -1
  348. package/src/browser/breadcrumbs/filepath-breadcrumbs-contribution.ts +5 -5
  349. package/src/browser/download/file-download-command-contribution.ts +1 -1
  350. package/src/browser/download/file-download-frontend-module.ts +3 -3
  351. package/src/browser/download/file-download-service.ts +1 -1
  352. package/src/browser/file-dialog/file-dialog-container.ts +5 -5
  353. package/src/browser/file-dialog/file-dialog-hidden-files-renderer.tsx +1 -1
  354. package/src/browser/file-dialog/file-dialog-model.ts +2 -2
  355. package/src/browser/file-dialog/file-dialog-module.ts +5 -5
  356. package/src/browser/file-dialog/file-dialog-service.ts +4 -4
  357. package/src/browser/file-dialog/file-dialog-tree-filters-renderer.spec.ts +2 -2
  358. package/src/browser/file-dialog/file-dialog-tree-filters-renderer.tsx +1 -1
  359. package/src/browser/file-dialog/file-dialog-tree.ts +2 -2
  360. package/src/browser/file-dialog/file-dialog-widget.ts +2 -2
  361. package/src/browser/file-dialog/file-dialog.ts +16 -13
  362. package/src/browser/file-dialog/index.ts +4 -4
  363. package/src/browser/file-resource.spec.ts +3 -3
  364. package/src/browser/file-resource.ts +3 -3
  365. package/src/browser/file-selection.ts +1 -1
  366. package/src/browser/file-service-activation.spec.ts +2 -2
  367. package/src/browser/file-service-copy.spec.ts +2 -2
  368. package/src/browser/file-service-watcher.spec.ts +2 -2
  369. package/src/browser/file-service.ts +6 -6
  370. package/src/browser/file-tree/file-tree-container.ts +3 -3
  371. package/src/browser/file-tree/file-tree-decorator-adapter.spec.ts +1 -1
  372. package/src/browser/file-tree/file-tree-decorator-adapter.ts +1 -1
  373. package/src/browser/file-tree/file-tree-label-provider.ts +1 -1
  374. package/src/browser/file-tree/file-tree-model.ts +12 -6
  375. package/src/browser/file-tree/file-tree-widget.tsx +8 -5
  376. package/src/browser/file-tree/file-tree.ts +3 -3
  377. package/src/browser/file-tree/index.ts +6 -6
  378. package/src/browser/filesystem-frontend-contribution.ts +6 -6
  379. package/src/browser/filesystem-frontend-module.ts +14 -14
  380. package/src/browser/filesystem-saveable-service.ts +2 -2
  381. package/src/browser/index.ts +4 -4
  382. package/src/browser/location/index.ts +2 -2
  383. package/src/browser/location/location-renderer.spec.ts +3 -3
  384. package/src/browser/location/location-renderer.tsx +3 -3
  385. package/src/browser/remote-file-service-contribution.ts +2 -2
  386. package/src/browser/upload/file-upload-service-impl.ts +5 -5
  387. package/src/browser/vscode-file-service-contribution.ts +2 -2
  388. package/src/browser-only/browser-only-filesystem-frontend-module.ts +7 -7
  389. package/src/browser-only/browser-only-filesystem-provider-server.ts +1 -1
  390. package/src/browser-only/download/file-download-command-contribution.ts +2 -2
  391. package/src/browser-only/download/file-download-frontend-module.ts +3 -3
  392. package/src/browser-only/download/file-download-service.ts +3 -3
  393. package/src/browser-only/file-search.ts +2 -1
  394. package/src/browser-only/opfs-filesystem-initialization.ts +1 -1
  395. package/src/browser-only/opfs-filesystem-provider.ts +3 -3
  396. package/src/browser-only/upload/file-upload-service-impl.ts +4 -4
  397. package/src/common/delegating-file-system-provider.ts +1 -1
  398. package/src/common/files.spec.ts +1 -1
  399. package/src/common/filesystem-utils.spec.ts +2 -2
  400. package/src/common/filesystem-utils.ts +1 -1
  401. package/src/common/filesystem-watcher-protocol.ts +1 -1
  402. package/src/common/index.ts +3 -3
  403. package/src/common/io.ts +2 -2
  404. package/src/common/remote-file-system-provider.ts +1 -1
  405. package/src/electron-browser/file-dialog/electron-file-dialog-module.ts +2 -2
  406. package/src/electron-browser/file-dialog/electron-file-dialog-service.spec.ts +30 -3
  407. package/src/electron-browser/file-dialog/electron-file-dialog-service.ts +8 -6
  408. package/src/electron-browser/preload.ts +1 -1
  409. package/src/electron-common/electron-api.ts +4 -0
  410. package/src/electron-main/electron-api-main.ts +7 -3
  411. package/src/electron-main/electron-main-module.ts +1 -1
  412. package/src/node/archive/archive-extractor.spec.ts +359 -0
  413. package/src/node/archive/archive-extractor.ts +350 -0
  414. package/src/node/archive/test/test-archives.ts +117 -0
  415. package/src/node/disk-file-system-provider.spec.ts +3 -3
  416. package/src/node/disk-file-system-provider.ts +7 -6
  417. package/src/node/download/directory-archiver.spec.ts +1 -1
  418. package/src/node/download/file-download-backend-module.ts +4 -4
  419. package/src/node/download/file-download-endpoint.ts +4 -3
  420. package/src/node/download/file-download-handler.ts +3 -3
  421. package/src/node/download/test/mock-directory-archiver.ts +1 -1
  422. package/src/node/file-change-collection.spec.ts +2 -2
  423. package/src/node/file-change-collection.ts +1 -1
  424. package/src/node/filesystem-backend-module.ts +15 -12
  425. package/src/node/filesystem-watcher-client.ts +2 -2
  426. package/src/node/filesystem-watcher-dispatcher.ts +1 -1
  427. package/src/node/filesystem-watcher-service-impl.spec.ts +5 -5
  428. package/src/node/filesystem-watcher-service-impl.ts +4 -4
  429. package/src/node/filesystem-watcher.ts +1 -1
  430. package/src/node/nodejs-watcher/node-directory-watcher.spec.ts +5 -5
  431. package/src/node/nodejs-watcher/node-directory-watcher.ts +5 -5
  432. package/src/node/nodejs-watcher/watch-request-router.ts +4 -4
  433. package/src/node/nodejs-watcher/watcher-host.ts +1 -1
  434. package/src/node/parcel-watcher/index.ts +2 -2
  435. package/src/node/parcel-watcher/parcel-filesystem-service.ts +4 -4
  436. package/src/node/parcel-watcher/parcel-filesystem-watcher.spec.ts +2 -2
  437. package/src/node/parcel-watcher/parcel-watcher-exclude.spec.ts +4 -8
  438. package/src/node/parcel-watcher/parcel-watcher-retry.spec.ts +4 -6
  439. package/src/node/parcel-watcher/parcel-watcher.ts +7 -6
  440. package/src/node/test/watcher-test-helper.ts +1 -1
  441. package/src/node/upload/node-file-upload-service.spec.ts +1 -1
  442. package/src/node/upload/node-file-upload-service.ts +6 -6
@@ -1,4 +1,3 @@
1
- "use strict";
2
1
  // *****************************************************************************
3
2
  // Copyright (C) 2018 TypeFox and others.
4
3
  //
@@ -14,13 +13,11 @@
14
13
  //
15
14
  // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
16
15
  // *****************************************************************************
17
- Object.defineProperty(exports, "__esModule", { value: true });
18
- exports.ElectronFileDialogService = void 0;
19
- const tslib_1 = require("tslib");
20
- const inversify_1 = require("@theia/core/shared/inversify");
21
- const message_service_1 = require("@theia/core/lib/common/message-service");
22
- const filesystem_1 = require("../../common/filesystem");
23
- const file_dialog_1 = require("../../browser/file-dialog");
16
+ import { __decorate } from "tslib";
17
+ import { inject, injectable } from '@theia/core/shared/inversify';
18
+ import { MessageService } from '@theia/core/lib/common/message-service';
19
+ import { FileAccess } from '../../common/filesystem.js';
20
+ import { DefaultFileDialogService } from '../../browser/file-dialog/index.js';
24
21
  //
25
22
  // We are OK to use this here because the electron backend and frontend are on the same host.
26
23
  // If required, we can move this single service (and its module) to a dedicated Theia extension,
@@ -28,9 +25,9 @@ const file_dialog_1 = require("../../browser/file-dialog");
28
25
  // solution.
29
26
  //
30
27
  // eslint-disable-next-line @theia/runtime-import-check
31
- const file_uri_1 = require("@theia/core/lib/common/file-uri");
32
- require("@theia/core/lib/electron-common/electron-api");
33
- let ElectronFileDialogService = class ElectronFileDialogService extends file_dialog_1.DefaultFileDialogService {
28
+ import { FileUri } from '@theia/core/lib/common/file-uri';
29
+ import '@theia/core/lib/electron-common/electron-api';
30
+ let ElectronFileDialogService = class ElectronFileDialogService extends DefaultFileDialogService {
34
31
  async showOpenDialog(props, folder) {
35
32
  if (window.electronTheiaCore.useNativeElements) {
36
33
  const rootNode = await this.getRootNode(folder);
@@ -40,7 +37,7 @@ let ElectronFileDialogService = class ElectronFileDialogService extends file_dia
40
37
  return undefined;
41
38
  }
42
39
  const uris = filePaths.map(path => {
43
- let uri = file_uri_1.FileUri.create(path);
40
+ let uri = FileUri.create(path);
44
41
  if (props.fileScheme) {
45
42
  uri = uri.withScheme(props.fileScheme);
46
43
  }
@@ -62,7 +59,7 @@ let ElectronFileDialogService = class ElectronFileDialogService extends file_dia
62
59
  if (!filePath) {
63
60
  return undefined;
64
61
  }
65
- let uri = file_uri_1.FileUri.create(filePath);
62
+ let uri = FileUri.create(filePath);
66
63
  if (props.fileScheme) {
67
64
  uri = uri.withScheme(props.fileScheme);
68
65
  }
@@ -79,7 +76,7 @@ let ElectronFileDialogService = class ElectronFileDialogService extends file_dia
79
76
  }
80
77
  async canReadWrite(uris) {
81
78
  for (const uri of Array.isArray(uris) ? uris : [uris]) {
82
- if (!(await this.fileService.access(uri, filesystem_1.FileAccess.Constants.R_OK | filesystem_1.FileAccess.Constants.W_OK))) {
79
+ if (!(await this.fileService.access(uri, FileAccess.Constants.R_OK | FileAccess.Constants.W_OK))) {
83
80
  this.messageService.error(`Cannot access resource at ${uri.path}.`);
84
81
  return false;
85
82
  }
@@ -90,7 +87,7 @@ let ElectronFileDialogService = class ElectronFileDialogService extends file_dia
90
87
  const resources = Array.isArray(uris) ? uris : [uris];
91
88
  const unreadableResourcePaths = [];
92
89
  await Promise.all(resources.map(async (resource) => {
93
- if (!await this.fileService.access(resource, filesystem_1.FileAccess.Constants.R_OK)) {
90
+ if (!await this.fileService.access(resource, FileAccess.Constants.R_OK)) {
94
91
  unreadableResourcePaths.push(resource.path.toString());
95
92
  }
96
93
  }));
@@ -101,7 +98,8 @@ let ElectronFileDialogService = class ElectronFileDialogService extends file_dia
101
98
  }
102
99
  toOpenDialogOptions(uri, props) {
103
100
  const result = {
104
- path: file_uri_1.FileUri.fsPath(uri)
101
+ path: FileUri.fsPath(uri),
102
+ windowName: props.targetWindow?.name
105
103
  };
106
104
  result.title = props.title;
107
105
  result.buttonLabel = props.openLabel;
@@ -129,7 +127,8 @@ let ElectronFileDialogService = class ElectronFileDialogService extends file_dia
129
127
  uri = uri.resolve(props.inputValue);
130
128
  }
131
129
  const result = {
132
- path: file_uri_1.FileUri.fsPath(uri)
130
+ path: FileUri.fsPath(uri),
131
+ windowName: props.targetWindow?.name
133
132
  };
134
133
  result.title = props.title;
135
134
  result.buttonLabel = props.saveLabel;
@@ -145,12 +144,11 @@ let ElectronFileDialogService = class ElectronFileDialogService extends file_dia
145
144
  return result;
146
145
  }
147
146
  };
148
- exports.ElectronFileDialogService = ElectronFileDialogService;
149
- tslib_1.__decorate([
150
- (0, inversify_1.inject)(message_service_1.MessageService),
151
- tslib_1.__metadata("design:type", message_service_1.MessageService)
147
+ __decorate([
148
+ inject(MessageService)
152
149
  ], ElectronFileDialogService.prototype, "messageService", void 0);
153
- exports.ElectronFileDialogService = ElectronFileDialogService = tslib_1.__decorate([
154
- (0, inversify_1.injectable)()
150
+ ElectronFileDialogService = __decorate([
151
+ injectable()
155
152
  ], ElectronFileDialogService);
153
+ export { ElectronFileDialogService };
156
154
  //# sourceMappingURL=electron-file-dialog-service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"electron-file-dialog-service.js","sourceRoot":"","sources":["../../../src/electron-browser/file-dialog/electron-file-dialog-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"electron-file-dialog-service.js","sourceRoot":"","sources":["../../../src/electron-browser/file-dialog/electron-file-dialog-service.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,3 @@
1
- "use strict";
2
1
  // *****************************************************************************
3
2
  // Copyright (C) 2026 Vinay Kaushal and others.
4
3
  //
@@ -14,35 +13,57 @@
14
13
  //
15
14
  // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
16
15
  // *****************************************************************************
17
- Object.defineProperty(exports, "__esModule", { value: true });
18
- const jsdom_1 = require("@theia/core/lib/browser/test/jsdom");
19
- let disableJSDOM = (0, jsdom_1.enableJSDOM)();
20
- const chai_1 = require("chai");
21
- const file_uri_1 = require("@theia/core/lib/common/file-uri");
22
- const electron_file_dialog_service_1 = require("./electron-file-dialog-service");
16
+ import { enableJSDOM } from '@theia/core/lib/browser/test/jsdom';
17
+ let disableJSDOM = enableJSDOM();
18
+ import { expect } from 'chai';
19
+ import { FileUri } from '@theia/core/lib/common/file-uri';
20
+ import { ElectronFileDialogService } from './electron-file-dialog-service.js';
23
21
  disableJSDOM();
24
- class TestElectronFileDialogService extends electron_file_dialog_service_1.ElectronFileDialogService {
22
+ class TestElectronFileDialogService extends ElectronFileDialogService {
25
23
  toOpenDialogOptions(uri, props) {
26
24
  return super.toOpenDialogOptions(uri, props);
27
25
  }
26
+ toSaveDialogOptions(uri, props) {
27
+ return super.toSaveDialogOptions(uri, props);
28
+ }
28
29
  }
29
30
  describe('ElectronFileDialogService', () => {
30
- before(() => disableJSDOM = (0, jsdom_1.enableJSDOM)());
31
+ before(() => disableJSDOM = enableJSDOM());
31
32
  after(() => disableJSDOM());
32
- const uri = file_uri_1.FileUri.create('/home/user');
33
+ const uri = FileUri.create('/home/user');
33
34
  const filters = { 'Theia Workspace': ['theia-workspace'] };
34
35
  it('adds an All Files filter to the given filters', () => {
35
36
  const options = new TestElectronFileDialogService().toOpenDialogOptions(uri, { title: 'Open', canSelectFiles: true, filters });
36
- (0, chai_1.expect)(options.filters).to.deep.equal([
37
+ expect(options.filters).to.deep.equal([
37
38
  { name: 'Theia Workspace', extensions: ['theia-workspace'] },
38
39
  { name: 'All Files', extensions: ['*'] }
39
40
  ]);
40
41
  });
41
42
  it('omits the All Files filter if it is disabled', () => {
42
43
  const options = new TestElectronFileDialogService().toOpenDialogOptions(uri, { title: 'Open', canSelectFiles: true, filters, disableAllFilesFilter: true });
43
- (0, chai_1.expect)(options.filters).to.deep.equal([
44
+ expect(options.filters).to.deep.equal([
44
45
  { name: 'Theia Workspace', extensions: ['theia-workspace'] }
45
46
  ]);
46
47
  });
48
+ describe('windowName forwarding', () => {
49
+ it('should pass windowName from targetWindow for open dialog', () => {
50
+ const targetWindow = { name: '123-secondaryWindow-0' };
51
+ const options = new TestElectronFileDialogService().toOpenDialogOptions(uri, { title: 'Open', canSelectFiles: true, targetWindow });
52
+ expect(options.windowName).to.equal('123-secondaryWindow-0');
53
+ });
54
+ it('should leave windowName undefined when no targetWindow is set for open dialog', () => {
55
+ const options = new TestElectronFileDialogService().toOpenDialogOptions(uri, { title: 'Open', canSelectFiles: true });
56
+ expect(options.windowName).to.be.undefined;
57
+ });
58
+ it('should pass windowName from targetWindow for save dialog', () => {
59
+ const targetWindow = { name: '123-secondaryWindow-0' };
60
+ const options = new TestElectronFileDialogService().toSaveDialogOptions(uri, { title: 'Save', targetWindow });
61
+ expect(options.windowName).to.equal('123-secondaryWindow-0');
62
+ });
63
+ it('should leave windowName undefined when no targetWindow is set for save dialog', () => {
64
+ const options = new TestElectronFileDialogService().toSaveDialogOptions(uri, { title: 'Save' });
65
+ expect(options.windowName).to.be.undefined;
66
+ });
67
+ });
47
68
  });
48
69
  //# sourceMappingURL=electron-file-dialog-service.spec.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"electron-file-dialog-service.spec.js","sourceRoot":"","sources":["../../../src/electron-browser/file-dialog/electron-file-dialog-service.spec.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,+CAA+C;AAC/C,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;AAEhF,8DAAiE;AACjE,IAAI,YAAY,GAAG,IAAA,mBAAW,GAAE,CAAC;AAEjC,+BAA8B;AAC9B,8DAA0D;AAI1D,iFAA2E;AAE3E,YAAY,EAAE,CAAC;AAEf,MAAM,6BAA8B,SAAQ,wDAAyB;IACxD,mBAAmB,CAAC,GAAQ,EAAE,KAA0B;QAC7D,OAAO,KAAK,CAAC,mBAAmB,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IACjD,CAAC;CACJ;AAED,QAAQ,CAAC,2BAA2B,EAAE,GAAG,EAAE;IAEvC,MAAM,CAAC,GAAG,EAAE,CAAC,YAAY,GAAG,IAAA,mBAAW,GAAE,CAAC,CAAC;IAC3C,KAAK,CAAC,GAAG,EAAE,CAAC,YAAY,EAAE,CAAC,CAAC;IAE5B,MAAM,GAAG,GAAG,kBAAO,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IACzC,MAAM,OAAO,GAAG,EAAE,iBAAiB,EAAE,CAAC,iBAAiB,CAAC,EAAE,CAAC;IAE3D,EAAE,CAAC,+CAA+C,EAAE,GAAG,EAAE;QACrD,MAAM,OAAO,GAAG,IAAI,6BAA6B,EAAE,CAAC,mBAAmB,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;QAC/H,IAAA,aAAM,EAAC,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC;YAClC,EAAE,IAAI,EAAE,iBAAiB,EAAE,UAAU,EAAE,CAAC,iBAAiB,CAAC,EAAE;YAC5D,EAAE,IAAI,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC,GAAG,CAAC,EAAE;SAC3C,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8CAA8C,EAAE,GAAG,EAAE;QACpD,MAAM,OAAO,GAAG,IAAI,6BAA6B,EAAE,CAAC,mBAAmB,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,IAAI,EAAE,OAAO,EAAE,qBAAqB,EAAE,IAAI,EAAE,CAAC,CAAC;QAC5J,IAAA,aAAM,EAAC,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC;YAClC,EAAE,IAAI,EAAE,iBAAiB,EAAE,UAAU,EAAE,CAAC,iBAAiB,CAAC,EAAE;SAC/D,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"electron-file-dialog-service.spec.js","sourceRoot":"","sources":["../../../src/electron-browser/file-dialog/electron-file-dialog-service.spec.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,3 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.preload = preload;
4
1
  // *****************************************************************************
5
2
  // Copyright (C) 2023 STMicroelectronics and others.
6
3
  //
@@ -16,15 +13,15 @@ exports.preload = preload;
16
13
  //
17
14
  // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
18
15
  // *****************************************************************************
19
- const electron_api_1 = require("../electron-common/electron-api");
16
+ import { CHANNEL_SHOW_OPEN, CHANNEL_SHOW_SAVE } from '../electron-common/electron-api.js';
20
17
  // eslint-disable-next-line import/no-extraneous-dependencies
21
- const electron_1 = require("@theia/core/electron-shared/electron");
18
+ import { ipcRenderer, contextBridge } from '@theia/core/electron-shared/electron';
22
19
  const api = {
23
- showOpenDialog: (options) => electron_1.ipcRenderer.invoke(electron_api_1.CHANNEL_SHOW_OPEN, options),
24
- showSaveDialog: (options) => electron_1.ipcRenderer.invoke(electron_api_1.CHANNEL_SHOW_SAVE, options),
20
+ showOpenDialog: (options) => ipcRenderer.invoke(CHANNEL_SHOW_OPEN, options),
21
+ showSaveDialog: (options) => ipcRenderer.invoke(CHANNEL_SHOW_SAVE, options),
25
22
  };
26
- function preload() {
23
+ export function preload() {
27
24
  console.log('exposing theia filesystem electron api');
28
- electron_1.contextBridge.exposeInMainWorld('electronTheiaFilesystem', api);
25
+ contextBridge.exposeInMainWorld('electronTheiaFilesystem', api);
29
26
  }
30
27
  //# sourceMappingURL=preload.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"preload.js","sourceRoot":"","sources":["../../src/electron-browser/preload.ts"],"names":[],"mappings":";;AAyBA,0BAKC;AA9BD,gFAAgF;AAChF,oDAAoD;AACpD,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;AAChF,kEAAiJ;AAEjJ,6DAA6D;AAC7D,mEAAkF;AAElF,MAAM,GAAG,GAAuB;IAC5B,cAAc,EAAE,CAAC,OAA0B,EAAE,EAAE,CAAC,sBAAW,CAAC,MAAM,CAAC,gCAAiB,EAAE,OAAO,CAAC;IAC9F,cAAc,EAAE,CAAC,OAA0B,EAAE,EAAE,CAAC,sBAAW,CAAC,MAAM,CAAC,gCAAiB,EAAE,OAAO,CAAC;CACjG,CAAC;AAEF,SAAgB,OAAO;IACnB,OAAO,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAC;IAEtD,wBAAa,CAAC,iBAAiB,CAAC,yBAAyB,EAAE,GAAG,CAAC,CAAC;AAEpE,CAAC"}
1
+ {"version":3,"file":"preload.js","sourceRoot":"","sources":["../../src/electron-browser/preload.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,oDAAoD;AACpD,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;AAChF,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAA4D,MAAM,oCAAoC,CAAC;AAEpJ,6DAA6D;AAC7D,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,sCAAsC,CAAC;AAElF,MAAM,GAAG,GAAuB;IAC5B,cAAc,EAAE,CAAC,OAA0B,EAAE,EAAE,CAAC,WAAW,CAAC,MAAM,CAAC,iBAAiB,EAAE,OAAO,CAAC;IAC9F,cAAc,EAAE,CAAC,OAA0B,EAAE,EAAE,CAAC,WAAW,CAAC,MAAM,CAAC,iBAAiB,EAAE,OAAO,CAAC;CACjG,CAAC;AAEF,MAAM,UAAU,OAAO;IACnB,OAAO,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAC;IAEtD,aAAa,CAAC,iBAAiB,CAAC,yBAAyB,EAAE,GAAG,CAAC,CAAC;AAEpE,CAAC"}
@@ -12,6 +12,8 @@ export interface OpenDialogOptions {
12
12
  openFolders?: boolean;
13
13
  selectMany?: boolean;
14
14
  filters?: FileFilter[];
15
+ /** Name of the target window for parenting the dialog. If omitted, the sender's window is used. */
16
+ windowName?: string;
15
17
  }
16
18
  export interface SaveDialogOptions {
17
19
  title?: string;
@@ -20,6 +22,8 @@ export interface SaveDialogOptions {
20
22
  buttonLabel?: string;
21
23
  modal?: boolean;
22
24
  filters?: FileFilter[];
25
+ /** Name of the target window for parenting the dialog. If omitted, the sender's window is used. */
26
+ windowName?: string;
23
27
  }
24
28
  export interface TheiaFilesystemAPI {
25
29
  showOpenDialog(options: OpenDialogOptions): Promise<string[] | undefined>;
@@ -1 +1 @@
1
- {"version":3,"file":"electron-api.d.ts","sourceRoot":"","sources":["../../src/electron-common/electron-api.ts"],"names":[],"mappings":"AAgBA,MAAM,WAAW,UAAU;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,EAAE,CAAC;CACxB;AAED,MAAM,WAAW,iBAAiB;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,OAAO,CAAC,EAAE,UAAU,EAAE,CAAC;CAC1B;AAED,MAAM,WAAW,iBAAiB;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,UAAU,EAAE,CAAC;CAC1B;AAED,MAAM,WAAW,kBAAkB;IAC/B,cAAc,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC;IAC1E,cAAc,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;CAC3E;AAED,OAAO,CAAC,MAAM,CAAC;IACX,UAAU,MAAM;QACZ,uBAAuB,EAAE,kBAAkB,CAAA;KAC9C;CACJ;AAED,eAAO,MAAM,iBAAiB,mBAAmB,CAAC;AAClD,eAAO,MAAM,iBAAiB,mBAAmB,CAAC"}
1
+ {"version":3,"file":"electron-api.d.ts","sourceRoot":"","sources":["../../src/electron-common/electron-api.ts"],"names":[],"mappings":"AAgBA,MAAM,WAAW,UAAU;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,EAAE,CAAC;CACxB;AAED,MAAM,WAAW,iBAAiB;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,OAAO,CAAC,EAAE,UAAU,EAAE,CAAC;IACvB,mGAAmG;IACnG,UAAU,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,iBAAiB;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,UAAU,EAAE,CAAC;IACvB,mGAAmG;IACnG,UAAU,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,kBAAkB;IAC/B,cAAc,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC;IAC1E,cAAc,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;CAC3E;AAED,OAAO,CAAC,MAAM,CAAC;IACX,UAAU,MAAM;QACZ,uBAAuB,EAAE,kBAAkB,CAAA;KAC9C;CACJ;AAED,eAAO,MAAM,iBAAiB,mBAAmB,CAAC;AAClD,eAAO,MAAM,iBAAiB,mBAAmB,CAAC"}
@@ -1,4 +1,3 @@
1
- "use strict";
2
1
  // *****************************************************************************
3
2
  // Copyright (C) 2023 STMicroelectronics and others.
4
3
  //
@@ -14,8 +13,6 @@
14
13
  //
15
14
  // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
16
15
  // *****************************************************************************
17
- Object.defineProperty(exports, "__esModule", { value: true });
18
- exports.CHANNEL_SHOW_SAVE = exports.CHANNEL_SHOW_OPEN = void 0;
19
- exports.CHANNEL_SHOW_OPEN = 'ShowOpenDialog';
20
- exports.CHANNEL_SHOW_SAVE = 'ShowSaveDialog';
16
+ export const CHANNEL_SHOW_OPEN = 'ShowOpenDialog';
17
+ export const CHANNEL_SHOW_SAVE = 'ShowSaveDialog';
21
18
  //# sourceMappingURL=electron-api.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"electron-api.js","sourceRoot":"","sources":["../../src/electron-common/electron-api.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,oDAAoD;AACpD,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;;AAuCnE,QAAA,iBAAiB,GAAG,gBAAgB,CAAC;AACrC,QAAA,iBAAiB,GAAG,gBAAgB,CAAC"}
1
+ {"version":3,"file":"electron-api.js","sourceRoot":"","sources":["../../src/electron-common/electron-api.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,oDAAoD;AACpD,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;AA2ChF,MAAM,CAAC,MAAM,iBAAiB,GAAG,gBAAgB,CAAC;AAClD,MAAM,CAAC,MAAM,iBAAiB,GAAG,gBAAgB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"electron-api-main.d.ts","sourceRoot":"","sources":["../../src/electron-main/electron-api-main.ts"],"names":[],"mappings":"AAkBA,OAAO,EAAE,uBAAuB,EAAE,mCAAmC,EAAE,MAAM,yDAAyD,CAAC;AACvI,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAK3C,qBACa,WAAY,YAAW,mCAAmC;IACnE,OAAO,CAAC,WAAW,EAAE,uBAAuB,GAAG,YAAY,CAAC,IAAI,CAAC;CAmDpE"}
1
+ {"version":3,"file":"electron-api-main.d.ts","sourceRoot":"","sources":["../../src/electron-main/electron-api-main.ts"],"names":[],"mappings":"AAkBA,OAAO,EAAE,uBAAuB,EAAE,mCAAmC,EAAE,MAAM,yDAAyD,CAAC;AACvI,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAK3C,qBACa,WAAY,YAAW,mCAAmC;IACnE,OAAO,CAAC,WAAW,EAAE,uBAAuB,GAAG,YAAY,CAAC,IAAI,CAAC;CAuDpE"}
@@ -1,4 +1,3 @@
1
- "use strict";
2
1
  // *****************************************************************************
3
2
  // Copyright (C) 2023 STMicroelectronics and others.
4
3
  //
@@ -14,16 +13,14 @@
14
13
  //
15
14
  // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
16
15
  // *****************************************************************************
17
- Object.defineProperty(exports, "__esModule", { value: true });
18
- exports.ElectronApi = void 0;
19
- const tslib_1 = require("tslib");
20
- const inversify_1 = require("@theia/core/shared/inversify");
21
- const electron_api_1 = require("../electron-common/electron-api");
22
- const electron_1 = require("@theia/core/electron-shared/electron");
16
+ import { __decorate } from "tslib";
17
+ import { injectable } from '@theia/core/shared/inversify';
18
+ import { CHANNEL_SHOW_OPEN, CHANNEL_SHOW_SAVE } from '../electron-common/electron-api.js';
19
+ import { ipcMain, BrowserWindow, dialog } from '@theia/core/electron-shared/electron';
23
20
  let ElectronApi = class ElectronApi {
24
21
  onStart(application) {
25
22
  // dialogs
26
- electron_1.ipcMain.handle(electron_api_1.CHANNEL_SHOW_OPEN, async (event, options) => {
23
+ ipcMain.handle(CHANNEL_SHOW_OPEN, async (event, options) => {
27
24
  const properties = [];
28
25
  // checking proper combination of file/dir opening is done on the renderer side
29
26
  if (options.openFiles) {
@@ -43,14 +40,16 @@ let ElectronApi = class ElectronApi {
43
40
  properties: properties
44
41
  };
45
42
  if (options.modal) {
46
- const win = electron_1.BrowserWindow.fromWebContents(event.sender);
43
+ const win = options.windowName
44
+ ? BrowserWindow.getAllWindows().find(w => w.webContents.mainFrame.name === options.windowName)
45
+ : BrowserWindow.fromWebContents(event.sender);
47
46
  if (win) {
48
- return (await electron_1.dialog.showOpenDialog(win, dialogOpts)).filePaths;
47
+ return (await dialog.showOpenDialog(win, dialogOpts)).filePaths;
49
48
  }
50
49
  }
51
- return (await electron_1.dialog.showOpenDialog(dialogOpts)).filePaths;
50
+ return (await dialog.showOpenDialog(dialogOpts)).filePaths;
52
51
  });
53
- electron_1.ipcMain.handle(electron_api_1.CHANNEL_SHOW_SAVE, async (event, options) => {
52
+ ipcMain.handle(CHANNEL_SHOW_SAVE, async (event, options) => {
54
53
  const dialogOpts = {
55
54
  defaultPath: options.path,
56
55
  buttonLabel: options.buttonLabel,
@@ -58,17 +57,19 @@ let ElectronApi = class ElectronApi {
58
57
  title: options.title
59
58
  };
60
59
  if (options.modal) {
61
- const win = electron_1.BrowserWindow.fromWebContents(event.sender);
60
+ const win = options.windowName
61
+ ? BrowserWindow.getAllWindows().find(w => w.webContents.mainFrame.name === options.windowName)
62
+ : BrowserWindow.fromWebContents(event.sender);
62
63
  if (win) {
63
- return (await electron_1.dialog.showSaveDialog(win, dialogOpts)).filePath;
64
+ return (await dialog.showSaveDialog(win, dialogOpts)).filePath;
64
65
  }
65
66
  }
66
- return (await electron_1.dialog.showSaveDialog(dialogOpts)).filePath;
67
+ return (await dialog.showSaveDialog(dialogOpts)).filePath;
67
68
  });
68
69
  }
69
70
  };
70
- exports.ElectronApi = ElectronApi;
71
- exports.ElectronApi = ElectronApi = tslib_1.__decorate([
72
- (0, inversify_1.injectable)()
71
+ ElectronApi = __decorate([
72
+ injectable()
73
73
  ], ElectronApi);
74
+ export { ElectronApi };
74
75
  //# sourceMappingURL=electron-api-main.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"electron-api-main.js","sourceRoot":"","sources":["../../src/electron-main/electron-api-main.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,oDAAoD;AACpD,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;;;AAEhF,4DAA0D;AAI1D,kEAA6H;AAC7H,mEACgD;AAGzC,IAAM,WAAW,GAAjB,MAAM,WAAW;IACpB,OAAO,CAAC,WAAoC;QACxC,UAAU;QACV,kBAAO,CAAC,MAAM,CAAC,gCAAiB,EAAE,KAAK,EAAE,KAAK,EAAE,OAA0B,EAAE,EAAE;YAC1E,MAAM,UAAU,GAA4C,EAAE,CAAC;YAE/D,+EAA+E;YAC/E,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;gBACpB,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAChC,CAAC;YACD,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;gBACtB,UAAU,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YACrC,CAAC;YAED,IAAI,OAAO,CAAC,UAAU,KAAK,IAAI,EAAE,CAAC;gBAC9B,UAAU,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;YACvC,CAAC;YAED,MAAM,UAAU,GAA8B;gBAC1C,WAAW,EAAE,OAAO,CAAC,IAAI;gBACzB,WAAW,EAAE,OAAO,CAAC,WAAW;gBAChC,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,UAAU,EAAE,UAAU;aACzB,CAAC;YAEF,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;gBAChB,MAAM,GAAG,GAAG,wBAAa,CAAC,eAAe,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;gBACxD,IAAI,GAAG,EAAE,CAAC;oBACN,OAAO,CAAC,MAAM,iBAAM,CAAC,cAAc,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;gBACpE,CAAC;YACL,CAAC;YACD,OAAO,CAAC,MAAM,iBAAM,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;QAC/D,CAAC,CAAC,CAAC;QAEH,kBAAO,CAAC,MAAM,CAAC,gCAAiB,EAAE,KAAK,EAAE,KAAK,EAAE,OAA0B,EAAE,EAAE;YAC1E,MAAM,UAAU,GAA8B;gBAC1C,WAAW,EAAE,OAAO,CAAC,IAAI;gBACzB,WAAW,EAAE,OAAO,CAAC,WAAW;gBAChC,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,KAAK,EAAE,OAAO,CAAC,KAAK;aACvB,CAAC;YACF,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;gBAChB,MAAM,GAAG,GAAG,wBAAa,CAAC,eAAe,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;gBACxD,IAAI,GAAG,EAAE,CAAC;oBACN,OAAO,CAAC,MAAM,iBAAM,CAAC,cAAc,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC;gBACnE,CAAC;YACL,CAAC;YACD,OAAO,CAAC,MAAM,iBAAM,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC;QAC9D,CAAC,CAAC,CAAC;IAEP,CAAC;CACJ,CAAA;AApDY,kCAAW;sBAAX,WAAW;IADvB,IAAA,sBAAU,GAAE;GACA,WAAW,CAoDvB"}
1
+ {"version":3,"file":"electron-api-main.js","sourceRoot":"","sources":["../../src/electron-main/electron-api-main.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,3 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
1
  // *****************************************************************************
4
2
  // Copyright (C) 2023 STMicroelectronics and others.
5
3
  //
@@ -15,11 +13,11 @@ Object.defineProperty(exports, "__esModule", { value: true });
15
13
  //
16
14
  // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
17
15
  // *****************************************************************************
18
- const inversify_1 = require("@theia/core/shared/inversify");
19
- const electron_main_application_1 = require("@theia/core/lib/electron-main/electron-main-application");
20
- const electron_api_main_1 = require("./electron-api-main");
21
- exports.default = new inversify_1.ContainerModule(bind => {
22
- bind(electron_api_main_1.ElectronApi).toSelf().inSingletonScope();
23
- bind(electron_main_application_1.ElectronMainApplicationContribution).toService(electron_api_main_1.ElectronApi);
16
+ import { ContainerModule } from '@theia/core/shared/inversify';
17
+ import { ElectronMainApplicationContribution } from '@theia/core/lib/electron-main/electron-main-application';
18
+ import { ElectronApi } from './electron-api-main.js';
19
+ export default new ContainerModule(bind => {
20
+ bind(ElectronApi).toSelf().inSingletonScope();
21
+ bind(ElectronMainApplicationContribution).toService(ElectronApi);
24
22
  });
25
23
  //# sourceMappingURL=electron-main-module.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"electron-main-module.js","sourceRoot":"","sources":["../../src/electron-main/electron-main-module.ts"],"names":[],"mappings":";;AAAA,gFAAgF;AAChF,oDAAoD;AACpD,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;AAChF,4DAA+D;AAC/D,uGAA8G;AAC9G,2DAAkD;AAElD,kBAAe,IAAI,2BAAe,CAAC,IAAI,CAAC,EAAE;IACtC,IAAI,CAAC,+BAAW,CAAC,CAAC,MAAM,EAAE,CAAC,gBAAgB,EAAE,CAAC;IAC9C,IAAI,CAAC,+DAAmC,CAAC,CAAC,SAAS,CAAC,+BAAW,CAAC,CAAC;AACrE,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"electron-main-module.js","sourceRoot":"","sources":["../../src/electron-main/electron-main-module.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,oDAAoD;AACpD,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;AAChF,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,mCAAmC,EAAE,MAAM,yDAAyD,CAAC;AAC9G,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAErD,eAAe,IAAI,eAAe,CAAC,IAAI,CAAC,EAAE;IACtC,IAAI,CAAC,WAAW,CAAC,CAAC,MAAM,EAAE,CAAC,gBAAgB,EAAE,CAAC;IAC9C,IAAI,CAAC,mCAAmC,CAAC,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;AACrE,CAAC,CAAC,CAAC"}
@@ -0,0 +1,86 @@
1
+ import { Readable } from 'stream';
2
+ import { ILogger } from '@theia/core/lib/common/logger';
3
+ export type ArchiveFormat = 'zip' | 'tar' | 'tgz';
4
+ /** The path of an archive on disk, or the content of an archive. */
5
+ export type ArchiveSource = string | Uint8Array;
6
+ export interface ArchiveOptions {
7
+ /** The format of the archive. Detected from its content if omitted. */
8
+ format?: ArchiveFormat;
9
+ }
10
+ export interface ArchiveReadOptions extends ArchiveOptions {
11
+ /** Selects the files to read by their path in the archive. All files are read if omitted. */
12
+ filter?: (entryPath: string) => boolean;
13
+ }
14
+ export interface ArchiveEntry {
15
+ /** The path of the entry relative to the root of the archive, using `/` as separator. */
16
+ path: string;
17
+ type: 'file' | 'directory';
18
+ /** The permission bits of the entry, without the setuid, setgid and sticky bits. */
19
+ mode?: number;
20
+ }
21
+ export interface ArchiveFile extends ArchiveEntry {
22
+ type: 'file';
23
+ data: Buffer;
24
+ }
25
+ export declare const ArchiveExtractor: unique symbol;
26
+ /**
27
+ * Extracts zip, tar and gzipped tar archives.
28
+ *
29
+ * Entry paths and links are not trusted: an entry whose path is absolute or leaves the archive root fails the
30
+ * extraction, and links and other special entries are skipped rather than created, so that nothing can be
31
+ * written or exposed outside of the destination. The size of the extracted content is not limited.
32
+ */
33
+ export interface ArchiveExtractor {
34
+ /**
35
+ * Extracts the archive into the destination directory, creating it if needed.
36
+ * @returns the extracted files and directories.
37
+ */
38
+ extract(source: ArchiveSource, destination: string, options?: ArchiveOptions): Promise<ArchiveEntry[]>;
39
+ /**
40
+ * Reads the content of the files in the archive without writing anything to disk.
41
+ */
42
+ readFiles(source: ArchiveSource, options?: ArchiveReadOptions): Promise<ArchiveFile[]>;
43
+ }
44
+ /** An entry as reported by the reader of an archive format, before its path is validated. */
45
+ interface RawArchiveEntry {
46
+ name: string;
47
+ kind: 'file' | 'directory' | 'unsupported';
48
+ mode?: number;
49
+ /** Opens the content of a file entry. Entries that are not opened are discarded. */
50
+ open(): Promise<Readable>;
51
+ }
52
+ type RawArchiveEntryVisitor = (entry: RawArchiveEntry) => Promise<void>;
53
+ export declare class ArchiveExtractorImpl implements ArchiveExtractor {
54
+ /** Not available to instances created without dependency injection, which report skipped entries on the console. */
55
+ protected readonly logger?: ILogger;
56
+ extract(source: ArchiveSource, destination: string, options?: ArchiveOptions): Promise<ArchiveEntry[]>;
57
+ readFiles(source: ArchiveSource, options?: ArchiveReadOptions): Promise<ArchiveFile[]>;
58
+ protected readEntries(source: ArchiveSource, format: ArchiveFormat | undefined, visit: RawArchiveEntryVisitor): Promise<void>;
59
+ /**
60
+ * Detects the format of an archive from its first bytes.
61
+ */
62
+ protected detectFormat(source: ArchiveSource): Promise<ArchiveFormat>;
63
+ protected readHeader(source: ArchiveSource, length: number): Promise<Buffer>;
64
+ protected readZipEntries(source: ArchiveSource, visit: RawArchiveEntryVisitor): Promise<void>;
65
+ protected readTarEntries(source: ArchiveSource, gzipped: boolean, visit: RawArchiveEntryVisitor): Promise<void>;
66
+ /**
67
+ * Normalizes the name of an entry to a relative path with `/` as separator.
68
+ * @returns `undefined` for the archive root.
69
+ * @throws if the name is absolute or leaves the archive root.
70
+ */
71
+ protected toEntryPath(name: string): string | undefined;
72
+ protected toMode(mode: number | undefined): number | undefined;
73
+ /**
74
+ * Creates a directory below the root one segment at a time and refuses to descend into an existing entry that is not
75
+ * a directory, so that nothing is created or written through a link that already existed in the destination.
76
+ */
77
+ protected createDirectory(root: string, directory: string, verifiedDirectories: Set<string>): Promise<void>;
78
+ /**
79
+ * Rejects writing a file over an existing link or special file, which could point outside of the destination.
80
+ */
81
+ protected assertNoLink(root: string, target: string): Promise<void>;
82
+ protected writeFile(target: string, content: Readable, mode: number | undefined): Promise<void>;
83
+ protected reportSkipped(source: ArchiveSource, skipped: string[]): void;
84
+ }
85
+ export {};
86
+ //# sourceMappingURL=archive-extractor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"archive-extractor.d.ts","sourceRoot":"","sources":["../../../src/node/archive/archive-extractor.ts"],"names":[],"mappings":"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"}