@theia/filesystem 1.77.0-next.95 → 1.77.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
@@ -22,8 +22,8 @@ FrontendApplicationConfigProvider.set({});
22
22
 
23
23
  import { Disposable, URI } from '@theia/core';
24
24
  import { expect } from 'chai';
25
- import { FileSystemProvider, FileSystemProviderCapabilities, WatchOptions } from '../common/files';
26
- import { FileService } from './file-service';
25
+ import { FileSystemProvider, FileSystemProviderCapabilities, WatchOptions } from '../common/files.js';
26
+ import { FileService } from './file-service.js';
27
27
 
28
28
  disableJSDOM();
29
29
 
@@ -23,8 +23,8 @@ FrontendApplicationConfigProvider.set({});
23
23
  import { Disposable, URI } from '@theia/core';
24
24
  import { expect } from 'chai';
25
25
  import * as sinon from 'sinon';
26
- import { FileSystemProvider, FileSystemProviderCapabilities } from '../common/files';
27
- import { FileService } from './file-service';
26
+ import { FileSystemProvider, FileSystemProviderCapabilities } from '../common/files.js';
27
+ import { FileService } from './file-service.js';
28
28
 
29
29
  disableJSDOM();
30
30
 
@@ -23,8 +23,8 @@ FrontendApplicationConfigProvider.set({});
23
23
  import { Disposable, Emitter, URI } from '@theia/core';
24
24
  import { expect } from 'chai';
25
25
  import * as sinon from 'sinon';
26
- import { FileChange, FileChangeType, FileSystemProvider, FileSystemProviderCapabilities, WatchOptions } from '../common/files';
27
- import { FileService } from './file-service';
26
+ import { FileChange, FileChangeType, FileSystemProvider, FileSystemProviderCapabilities, WatchOptions } from '../common/files.js';
27
+ import { FileService } from './file-service.js';
28
28
 
29
29
  disableJSDOM();
30
30
 
@@ -52,22 +52,22 @@ import {
52
52
  ResolveFileResult, ResolveFileResultWithMetadata,
53
53
  MoveFileOptions, CopyFileOptions, BaseStatWithMetadata, FileDeleteOptions, FileOperationOptions, hasAccessCapability, hasUpdateCapability,
54
54
  hasFileReadStreamCapability, FileSystemProviderWithFileReadStreamCapability, ReadOnlyMessageFileSystemProvider
55
- } from '../common/files';
55
+ } from '../common/files.js';
56
56
  import { BinaryBuffer, BinaryBufferReadable, BinaryBufferReadableStream, BinaryBufferReadableBufferedStream, BinaryBufferWriteableStream } from '@theia/core/lib/common/buffer';
57
57
  import { ReadableStream, isReadableStream, isReadableBufferedStream, transform, consumeStream, peekStream, peekReadable, Readable } from '@theia/core/lib/common/stream';
58
58
  import { LabelProvider } from '@theia/core/lib/browser/label-provider';
59
- import { FileSystemPreferences } from '../common/filesystem-preferences';
59
+ import { FileSystemPreferences } from '../common/filesystem-preferences.js';
60
60
  import { ProgressService } from '@theia/core/lib/common/progress-service';
61
- import { DelegatingFileSystemProvider } from '../common/delegating-file-system-provider';
61
+ import { DelegatingFileSystemProvider } from '../common/delegating-file-system-provider.js';
62
62
  import type { TextDocumentContentChangeEvent } from '@theia/core/shared/vscode-languageserver-protocol';
63
63
  import { EncodingRegistry } from '@theia/core/lib/browser/encoding-registry';
64
64
  import { UTF8, UTF8_with_bom } from '@theia/core/lib/common/encodings';
65
65
  import { EncodingService, ResourceEncoding, DecodeStreamResult } from '@theia/core/lib/common/encoding-service';
66
66
  import { Minimatch } from 'minimatch';
67
67
  import { Mutable } from '@theia/core/lib/common/types';
68
- import { readFileIntoStream } from '../common/io';
69
- import { FileSystemWatcherErrorHandler } from './filesystem-watcher-error-handler';
70
- import { FileSystemUtils } from '../common/filesystem-utils';
68
+ import { readFileIntoStream } from '../common/io.js';
69
+ import { FileSystemWatcherErrorHandler } from './filesystem-watcher-error-handler.js';
70
+ import { FileSystemUtils } from '../common/filesystem-utils.js';
71
71
  import { nls, ILogger } from '@theia/core';
72
72
  import { MarkdownString } from '@theia/core/lib/common/markdown-rendering';
73
73
 
@@ -16,9 +16,9 @@
16
16
 
17
17
  import { interfaces, Container } from '@theia/core/shared/inversify';
18
18
  import { CompressedExpansionService, CompressionToggle, createTreeContainer, TreeCompressionService, TreeContainerProps } from '@theia/core/lib/browser';
19
- import { FileTree } from './file-tree';
20
- import { FileTreeModel } from './file-tree-model';
21
- import { FileTreeWidget } from './file-tree-widget';
19
+ import { FileTree } from './file-tree.js';
20
+ import { FileTreeModel } from './file-tree-model.js';
21
+ import { FileTreeWidget } from './file-tree-widget.js';
22
22
 
23
23
  const fileTreeDefaults: Partial<TreeContainerProps> = {
24
24
  tree: FileTree,
@@ -24,7 +24,7 @@ import { CancellationToken, Emitter, Event } from '@theia/core/lib/common';
24
24
  import URI from '@theia/core/lib/common/uri';
25
25
  import { Container } from '@theia/core/shared/inversify';
26
26
  import { expect } from 'chai';
27
- import { FileTreeDecoratorAdapter } from './file-tree-decorator-adapter';
27
+ import { FileTreeDecoratorAdapter } from './file-tree-decorator-adapter.js';
28
28
 
29
29
  disableJSDOM();
30
30
 
@@ -21,7 +21,7 @@ import { Decoration, DecorationsService } from '@theia/core/lib/browser/decorati
21
21
  import { TreeNode, TreeDecoration, TreeDecorator, Tree, TopDownTreeIterator } from '@theia/core/lib/browser';
22
22
  import { MaybePromise } from '@theia/core/lib/common/types';
23
23
  import { ColorRegistry } from '@theia/core/lib/browser/color-registry';
24
- import { FileStatNode } from './file-tree';
24
+ import { FileStatNode } from './file-tree.js';
25
25
 
26
26
  @injectable()
27
27
  export class FileTreeDecoratorAdapter implements TreeDecorator {
@@ -16,7 +16,7 @@
16
16
 
17
17
  import { injectable, inject } from '@theia/core/shared/inversify';
18
18
  import { LabelProviderContribution, DidChangeLabelEvent, LabelProvider } from '@theia/core/lib/browser/label-provider';
19
- import { FileStatNode } from './file-tree';
19
+ import { FileStatNode } from './file-tree.js';
20
20
  import { TreeLabelProvider } from '@theia/core/lib/browser/tree/tree-label-provider';
21
21
 
22
22
  @injectable()
@@ -17,14 +17,14 @@
17
17
  import { injectable, inject, postConstruct } from '@theia/core/shared/inversify';
18
18
  import URI from '@theia/core/lib/common/uri';
19
19
  import { CompositeTreeNode, TreeNode, ConfirmDialog, CompressedTreeModel, Dialog } from '@theia/core/lib/browser';
20
- import { FileStatNode, DirNode, FileNode } from './file-tree';
21
- import { LocationService } from '../location';
20
+ import { FileStatNode, DirNode, FileNode } from './file-tree.js';
21
+ import { LocationService } from '../location/index.js';
22
22
  import { LabelProvider } from '@theia/core/lib/browser/label-provider';
23
- import { FileService } from '../file-service';
24
- import { FileOperationError, FileOperationResult, FileChangesEvent, FileChangeType, FileChange } from '../../common/files';
23
+ import { FileService } from '../file-service.js';
24
+ import { FileOperationError, FileOperationResult, FileChangesEvent, FileChangeType, FileChange } from '../../common/files.js';
25
25
  import { MessageService } from '@theia/core/lib/common/message-service';
26
26
  import { EnvVariablesServer } from '@theia/core/lib/common/env-variables';
27
- import { FileSystemUtils } from '../../common';
27
+ import { FileSystemUtils } from '../../common/index.js';
28
28
  import { nls } from '@theia/core';
29
29
 
30
30
  @injectable()
@@ -133,12 +133,15 @@ export class FileTreeModel extends CompressedTreeModel implements LocationServic
133
133
  return nodes;
134
134
  }
135
135
 
136
- async copy(source: URI, target: Readonly<FileStatNode>): Promise<URI> {
136
+ async copy(source: URI, target: Readonly<FileStatNode>): Promise<URI | undefined> {
137
137
  /** If the target is a file or if the target is a directory, but is the same as the source, use the parent of the target as a destination. */
138
138
  const parentNode = (target.fileStat.isFile || target.uri.isEqual(source)) ? target.parent : target;
139
139
  if (!FileStatNode.is(parentNode)) {
140
140
  throw new Error('Parent of file has to be a FileStatNode');
141
141
  }
142
+ if (source.isEqualOrParent(parentNode.uri)) {
143
+ return undefined;
144
+ }
142
145
  let targetUri = parentNode.uri.resolve(source.path.base);
143
146
  try {
144
147
  const parent = await this.fileService.resolve(parentNode.uri);
@@ -156,6 +159,9 @@ export class FileTreeModel extends CompressedTreeModel implements LocationServic
156
159
  */
157
160
  async move(source: TreeNode, target: TreeNode): Promise<URI | undefined> {
158
161
  if (DirNode.is(target) && FileStatNode.is(source)) {
162
+ if (source.uri.isEqualOrParent(target.uri)) {
163
+ return undefined;
164
+ }
159
165
  const name = source.fileStat.name;
160
166
  const targetUri = target.uri.resolve(name);
161
167
  if (source.uri.isEqual(targetUri)) { return; }
@@ -21,13 +21,13 @@ import URI from '@theia/core/lib/common/uri';
21
21
  import { UriSelection } from '@theia/core/lib/common/selection';
22
22
  import { isCancelled } from '@theia/core/lib/common/cancellation';
23
23
  import { ContextMenuRenderer, NodeProps, TreeProps, TreeNode, CompositeTreeNode, CompressedTreeWidget, CompressedNodeProps } from '@theia/core/lib/browser';
24
- import { DirNode, FileStatNode, FileStatNodeData } from './file-tree';
25
- import { FileTreeModel } from './file-tree-model';
24
+ import { DirNode, FileStatNode, FileStatNodeData } from './file-tree.js';
25
+ import { FileTreeModel } from './file-tree-model.js';
26
26
  import { IconThemeService } from '@theia/core/lib/browser/icon-theme-service';
27
27
  import { ApplicationShell } from '@theia/core/lib/browser/shell';
28
- import { FileStat, FileType } from '../../common/files';
28
+ import { FileStat, FileType } from '../../common/files.js';
29
29
  import { isOSX, ILogger } from '@theia/core';
30
- import { FileUploadService } from '../../common/upload/file-upload';
30
+ import { FileUploadService } from '../../common/upload/file-upload.js';
31
31
 
32
32
  export const FILE_TREE_CLASS = 'theia-FileTree';
33
33
  export const FILE_STAT_NODE_CLASS = 'theia-FileStatNode';
@@ -98,7 +98,10 @@ export class FileTreeWidget extends CompressedTreeWidget {
98
98
  }
99
99
 
100
100
  protected getNodeTooltip(node: TreeNode): string | undefined {
101
- const operativeNode = this.compressionService.getCompressionChain(node)?.tail() ?? node;
101
+ const operativeNode = this.compressionToggle.compress
102
+ ? this.compressionService.getCompressionChain(node)?.tail() ?? node
103
+ : node;
104
+
102
105
  const uri = UriSelection.getUri(operativeNode);
103
106
  return uri ? uri.path.fsPath() : undefined;
104
107
  }
@@ -18,11 +18,11 @@ import { injectable, inject } from '@theia/core/shared/inversify';
18
18
  import URI from '@theia/core/lib/common/uri';
19
19
  import { isObject, Mutable } from '@theia/core/lib/common';
20
20
  import { TreeNode, CompositeTreeNode, SelectableTreeNode, ExpandableTreeNode, TreeImpl } from '@theia/core/lib/browser';
21
- import { FileStat, Stat, FileType, FileOperationError, FileOperationResult } from '../../common/files';
21
+ import { FileStat, Stat, FileType, FileOperationError, FileOperationResult } from '../../common/files.js';
22
22
  import { UriSelection } from '@theia/core/lib/common/selection';
23
23
  import { MessageService } from '@theia/core/lib/common/message-service';
24
- import { FileSelection } from '../file-selection';
25
- import { FileService } from '../file-service';
24
+ import { FileSelection } from '../file-selection.js';
25
+ import { FileService } from '../file-service.js';
26
26
 
27
27
  @injectable()
28
28
  export class FileTree extends TreeImpl {
@@ -14,9 +14,9 @@
14
14
  // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
15
15
  // *****************************************************************************
16
16
 
17
- export * from './file-tree';
18
- export * from './file-tree-model';
19
- export * from './file-tree-widget';
20
- export * from './file-tree-container';
21
- export * from './file-tree-decorator-adapter';
22
- export * from './file-tree-label-provider';
17
+ export * from './file-tree.js';
18
+ export * from './file-tree-model.js';
19
+ export * from './file-tree-widget.js';
20
+ export * from './file-tree-container.js';
21
+ export * from './file-tree-decorator-adapter.js';
22
+ export * from './file-tree-label-provider.js';
@@ -37,12 +37,12 @@ import URI from '@theia/core/lib/common/uri';
37
37
  import { environment } from '@theia/core/shared/@theia/application-package/lib/environment';
38
38
  import { inject, injectable, named } from '@theia/core/shared/inversify';
39
39
  import { UserWorkingDirectoryProvider } from '@theia/core/lib/browser/user-working-directory-provider';
40
- import { FileChangeType, FileChangesEvent, FileOperation } from '../common/files';
41
- import { FileDialogService, SaveFileDialogProps } from './file-dialog';
42
- import { FileSelection } from './file-selection';
43
- import { FileService, UserFileOperationEvent } from './file-service';
44
- import { FileSystemPreferences } from '../common/filesystem-preferences';
45
- import { FileUploadService } from '../common/upload/file-upload';
40
+ import { FileChangeType, FileChangesEvent, FileOperation } from '../common/files.js';
41
+ import { FileDialogService, SaveFileDialogProps } from './file-dialog/index.js';
42
+ import { FileSelection } from './file-selection.js';
43
+ import { FileService, UserFileOperationEvent } from './file-service.js';
44
+ import { FileSystemPreferences } from '../common/filesystem-preferences.js';
45
+ import { FileUploadService } from '../common/upload/file-upload.js';
46
46
 
47
47
  export namespace FileSystemCommands {
48
48
 
@@ -19,22 +19,22 @@ import '../../src/browser/style/index.css';
19
19
  import { ContainerModule, interfaces } from '@theia/core/shared/inversify';
20
20
  import { ResourceResolver, CommandContribution } from '@theia/core/lib/common';
21
21
  import { WebSocketConnectionProvider, FrontendApplicationContribution, LabelProviderContribution, BreadcrumbsContribution } from '@theia/core/lib/browser';
22
- import { FileResourceResolver } from './file-resource';
23
- import { bindFileSystemPreferences } from '../common/filesystem-preferences';
24
- import { FileSystemFrontendContribution } from './filesystem-frontend-contribution';
25
- import { FileTreeDecoratorAdapter, FileTreeLabelProvider } from './file-tree';
26
- import { FileService, FileServiceContribution } from './file-service';
27
- import { RemoteFileSystemProvider, RemoteFileSystemServer, remoteFileSystemPath, RemoteFileSystemProxyFactory } from '../common/remote-file-system-provider';
22
+ import { FileResourceResolver } from './file-resource.js';
23
+ import { bindFileSystemPreferences } from '../common/filesystem-preferences.js';
24
+ import { FileSystemFrontendContribution } from './filesystem-frontend-contribution.js';
25
+ import { FileTreeDecoratorAdapter, FileTreeLabelProvider } from './file-tree/index.js';
26
+ import { FileService, FileServiceContribution } from './file-service.js';
27
+ import { RemoteFileSystemProvider, RemoteFileSystemServer, remoteFileSystemPath, RemoteFileSystemProxyFactory } from '../common/remote-file-system-provider.js';
28
28
  import { bindRootContributionProvider } from '@theia/core/lib/common/contribution-provider';
29
- import { RemoteFileServiceContribution } from './remote-file-service-contribution';
30
- import { FileSystemWatcherErrorHandler } from './filesystem-watcher-error-handler';
31
- import { FilepathBreadcrumbsContribution } from './breadcrumbs/filepath-breadcrumbs-contribution';
32
- import { BreadcrumbsFileTreeWidget, createFileTreeBreadcrumbsWidget } from './breadcrumbs/filepath-breadcrumbs-container';
33
- import { FilesystemSaveableService } from './filesystem-saveable-service';
29
+ import { RemoteFileServiceContribution } from './remote-file-service-contribution.js';
30
+ import { FileSystemWatcherErrorHandler } from './filesystem-watcher-error-handler.js';
31
+ import { FilepathBreadcrumbsContribution } from './breadcrumbs/filepath-breadcrumbs-contribution.js';
32
+ import { BreadcrumbsFileTreeWidget, createFileTreeBreadcrumbsWidget } from './breadcrumbs/filepath-breadcrumbs-container.js';
33
+ import { FilesystemSaveableService } from './filesystem-saveable-service.js';
34
34
  import { SaveableService } from '@theia/core/lib/browser/saveable-service';
35
- import { VSCodeFileServiceContribution, VSCodeFileSystemProvider } from './vscode-file-service-contribution';
36
- import { FileUploadService } from '../common/upload/file-upload';
37
- import { FileUploadServiceImpl } from './upload/file-upload-service-impl';
35
+ import { VSCodeFileServiceContribution, VSCodeFileSystemProvider } from './vscode-file-service-contribution.js';
36
+ import { FileUploadService } from '../common/upload/file-upload.js';
37
+ import { FileUploadServiceImpl } from './upload/file-upload-service-impl.js';
38
38
 
39
39
  export default new ContainerModule((bind, unbind, isBound, rebind) => {
40
40
  bindFileSystemPreferences(bind);
@@ -19,8 +19,8 @@ import { inject, injectable, named } from '@theia/core/shared/inversify';
19
19
  import { Navigatable, Saveable, SaveableSource, SaveOptions, Widget, open, OpenerService, ConfirmDialog, CommonCommands, LabelProvider } from '@theia/core/lib/browser';
20
20
  import { SaveableService } from '@theia/core/lib/browser/saveable-service';
21
21
  import URI from '@theia/core/lib/common/uri';
22
- import { FileService } from './file-service';
23
- import { FileDialogService } from './file-dialog';
22
+ import { FileService } from './file-service.js';
23
+ import { FileDialogService } from './file-dialog/index.js';
24
24
  import { BinaryBuffer } from '@theia/core/lib/common/buffer';
25
25
 
26
26
  @injectable()
@@ -14,7 +14,7 @@
14
14
  // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
15
15
  // *****************************************************************************
16
16
 
17
- export * from './location';
18
- export * from './file-tree';
19
- export * from './file-dialog';
20
- export * from './file-resource';
17
+ export * from './location/index.js';
18
+ export * from './file-tree/index.js';
19
+ export * from './file-dialog/index.js';
20
+ export * from './file-resource.js';
@@ -14,5 +14,5 @@
14
14
  // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
15
15
  // *****************************************************************************
16
16
 
17
- export * from './location-service';
18
- export * from './location-renderer';
17
+ export * from './location-service.js';
18
+ export * from './location-renderer.js';
@@ -20,9 +20,9 @@ let disableJSDOM = enableJSDOM();
20
20
  import URI from '@theia/core/lib/common/uri';
21
21
  import { expect } from 'chai';
22
22
  import * as React from '@theia/core/shared/react';
23
- import type { FileDialogModel } from '../file-dialog/file-dialog-model';
24
- import { LocationListRenderer } from './location-renderer';
25
- import type { LocationService } from './location-service';
23
+ import type { FileDialogModel } from '../file-dialog/file-dialog-model.js';
24
+ import { LocationListRenderer } from './location-renderer.js';
25
+ import type { LocationService } from './location-service.js';
26
26
 
27
27
  disableJSDOM();
28
28
 
@@ -15,12 +15,12 @@
15
15
  // *****************************************************************************
16
16
 
17
17
  import URI from '@theia/core/lib/common/uri';
18
- import { LocationService } from './location-service';
18
+ import { LocationService } from './location-service.js';
19
19
  import * as React from '@theia/core/shared/react';
20
- import { FileService } from '../file-service';
20
+ import { FileService } from '../file-service.js';
21
21
  import { DisposableCollection, Emitter, Path } from '@theia/core/lib/common';
22
22
  import { injectable, inject, postConstruct } from '@theia/core/shared/inversify';
23
- import { FileDialogModel } from '../file-dialog/file-dialog-model';
23
+ import { FileDialogModel } from '../file-dialog/file-dialog-model.js';
24
24
  import { EnvVariablesServer } from '@theia/core/lib/common/env-variables';
25
25
  import { ReactRenderer } from '@theia/core/lib/browser/widgets/react-renderer';
26
26
  import { codicon } from '@theia/core/lib/browser';
@@ -15,8 +15,8 @@
15
15
  // *****************************************************************************
16
16
 
17
17
  import { inject, injectable } from '@theia/core/shared/inversify';
18
- import { FileServiceContribution, FileService } from './file-service';
19
- import { RemoteFileSystemProvider } from '../common/remote-file-system-provider';
18
+ import { FileServiceContribution, FileService } from './file-service.js';
19
+ import { RemoteFileSystemProvider } from '../common/remote-file-system-provider.js';
20
20
 
21
21
  @injectable()
22
22
  export class RemoteFileServiceContribution implements FileServiceContribution {
@@ -23,15 +23,15 @@ import { Deferred } from '@theia/core/lib/common/promise-util';
23
23
  import { MessageService } from '@theia/core/lib/common/message-service';
24
24
  import { Progress } from '@theia/core/lib/common/message-service-protocol';
25
25
  import { Endpoint } from '@theia/core/lib/browser/endpoint';
26
- import throttle = require('@theia/core/shared/lodash.throttle');
27
- import { HTTP_FILE_UPLOAD_PATH } from '../../common/file-upload';
26
+ import throttle from '@theia/core/shared/lodash.throttle';
27
+ import { HTTP_FILE_UPLOAD_PATH } from '../../common/file-upload.js';
28
28
  import { Semaphore } from 'async-mutex';
29
- import { FileSystemPreferences } from '../../common/filesystem-preferences';
30
- import { FileService } from '../file-service';
29
+ import { FileSystemPreferences } from '../../common/filesystem-preferences.js';
30
+ import { FileService } from '../file-service.js';
31
31
  import { ConfirmDialog, Dialog } from '@theia/core/lib/browser';
32
32
  import { nls } from '@theia/core/lib/common/nls';
33
33
  import { Emitter, Event } from '@theia/core/lib/common/event';
34
- import type { CustomDataTransfer, FileUploadService } from '../../common/upload/file-upload';
34
+ import type { CustomDataTransfer, FileUploadService } from '../../common/upload/file-upload.js';
35
35
 
36
36
  interface UploadFilesParams {
37
37
  source: FileUploadService.Source,
@@ -15,10 +15,10 @@
15
15
  // *****************************************************************************
16
16
 
17
17
  import { inject, injectable } from '@theia/core/shared/inversify';
18
- import { FileServiceContribution, FileService } from './file-service';
18
+ import { FileServiceContribution, FileService } from './file-service.js';
19
19
  import {
20
20
  FileChange, FileDeleteOptions, FileOverwriteOptions, FilePermission, FileSystemProvider, FileSystemProviderCapabilities, FileType, FileWriteOptions, Stat, WatchOptions
21
- } from '../common/files';
21
+ } from '../common/files.js';
22
22
  import { Event, URI, Disposable, Emitter } from '@theia/core';
23
23
  import { JsonSchemaDataStore } from '@theia/core/lib/browser/json-schema-store';
24
24
  import { BinaryBuffer } from '@theia/core/lib/common/buffer';
@@ -15,13 +15,13 @@
15
15
  // *****************************************************************************
16
16
 
17
17
  import { ContainerModule } from '@theia/core/shared/inversify';
18
- import { FileSystemProvider } from '../common/files';
19
- import { OPFSFileSystemProvider } from './opfs-filesystem-provider';
20
- import { RemoteFileSystemProvider, RemoteFileSystemServer } from '../common/remote-file-system-provider';
21
- import { OPFSInitialization, DefaultOPFSInitialization } from './opfs-filesystem-initialization';
22
- import { BrowserOnlyFileSystemProviderServer } from './browser-only-filesystem-provider-server';
23
- import { FileUploadService } from '../common/upload/file-upload';
24
- import { FileUploadServiceImpl } from './upload/file-upload-service-impl';
18
+ import { FileSystemProvider } from '../common/files.js';
19
+ import { OPFSFileSystemProvider } from './opfs-filesystem-provider.js';
20
+ import { RemoteFileSystemProvider, RemoteFileSystemServer } from '../common/remote-file-system-provider.js';
21
+ import { OPFSInitialization, DefaultOPFSInitialization } from './opfs-filesystem-initialization.js';
22
+ import { BrowserOnlyFileSystemProviderServer } from './browser-only-filesystem-provider-server.js';
23
+ import { FileUploadService } from '../common/upload/file-upload.js';
24
+ import { FileUploadServiceImpl } from './upload/file-upload-service-impl.js';
25
25
 
26
26
  export default new ContainerModule((bind, _unbind, isBound, rebind) => {
27
27
  bind(DefaultOPFSInitialization).toSelf();
@@ -15,7 +15,7 @@
15
15
  // *****************************************************************************
16
16
 
17
17
  import { injectable } from '@theia/core/shared/inversify';
18
- import { FileSystemProviderServer } from '../common/remote-file-system-provider';
18
+ import { FileSystemProviderServer } from '../common/remote-file-system-provider.js';
19
19
  import { Event } from '@theia/core';
20
20
 
21
21
  /**
@@ -19,8 +19,8 @@ import URI from '@theia/core/lib/common/uri';
19
19
  import { SelectionService } from '@theia/core/lib/common/selection-service';
20
20
  import { CommandContribution, CommandRegistry } from '@theia/core/lib/common/command';
21
21
  import { UriAwareCommandHandler } from '@theia/core/lib/common/uri-command-handler';
22
- import { FileDownloadService } from '../../common/download/file-download';
23
- import { FileDownloadCommands } from '../../browser/download/file-download-command-contribution';
22
+ import { FileDownloadService } from '../../common/download/file-download.js';
23
+ import { FileDownloadCommands } from '../../browser/download/file-download-command-contribution.js';
24
24
 
25
25
  @injectable()
26
26
  export class FileDownloadCommandContribution implements CommandContribution {
@@ -15,10 +15,10 @@
15
15
  // *****************************************************************************
16
16
 
17
17
  import { ContainerModule } from '@theia/core/shared/inversify';
18
- import { FileDownloadService } from '../../common/download/file-download';
19
- import { FileDownloadServiceImpl } from './file-download-service';
18
+ import { FileDownloadService } from '../../common/download/file-download.js';
19
+ import { FileDownloadServiceImpl } from './file-download-service.js';
20
20
  import { CommandContribution } from '@theia/core/lib/common';
21
- import { FileDownloadCommandContribution } from './file-download-command-contribution';
21
+ import { FileDownloadCommandContribution } from './file-download-command-contribution.js';
22
22
 
23
23
  export default new ContainerModule(bind => {
24
24
  bind(FileDownloadService).to(FileDownloadServiceImpl).inSingletonScope();
@@ -18,12 +18,12 @@ import { inject, injectable, named } from '@theia/core/shared/inversify';
18
18
  import URI from '@theia/core/lib/common/uri';
19
19
  import { ILogger } from '@theia/core/lib/common/logger';
20
20
  import { MessageService } from '@theia/core/lib/common/message-service';
21
- import { FileSystemPreferences } from '../../common/filesystem-preferences';
21
+ import { FileSystemPreferences } from '../../common/filesystem-preferences.js';
22
22
  import { nls } from '@theia/core';
23
23
  import { BinaryBuffer } from '@theia/core/lib/common/buffer';
24
24
  import { binaryStreamToWebStream } from '@theia/core/lib/common/stream';
25
- import { FileService } from '../../browser/file-service';
26
- import type { FileDownloadService } from '../../common/download/file-download';
25
+ import { FileService } from '../../browser/file-service.js';
26
+ import type { FileDownloadService } from '../../common/download/file-download.js';
27
27
  import * as tarStream from 'tar-stream';
28
28
  import { minimatch } from 'minimatch';
29
29
 
@@ -89,7 +89,8 @@ export function matchesPattern(text: string, patterns: string[], opts?: Minimatc
89
89
  * @returns An object with add and ignores methods
90
90
  */
91
91
  export function createIgnoreMatcher(): { add: (patterns: string | string[]) => void; ignores: (path: string) => boolean } {
92
- const ig = ignore();
92
+ // `ignore` is a CommonJS module that also provides itself as `default` export.
93
+ const ig = ignore.default();
93
94
 
94
95
  return {
95
96
  add: (patterns: string | string[]) => ig.add(patterns),
@@ -14,7 +14,7 @@
14
14
  // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
15
15
  // *****************************************************************************
16
16
 
17
- import type { OPFSFileSystemProvider } from './opfs-filesystem-provider';
17
+ import type { OPFSFileSystemProvider } from './opfs-filesystem-provider.js';
18
18
  import { injectable } from '@theia/core/shared/inversify';
19
19
 
20
20
  export const OPFSInitialization = Symbol('OPFSInitialization');
@@ -26,16 +26,16 @@ import {
26
26
  FileType, FileWriteOptions, Stat, WatchOptions, createFileSystemProviderError,
27
27
  FileOpenOptions, FileUpdateOptions, FileUpdateResult,
28
28
  type FileReadStreamOptions
29
- } from '../common/files';
29
+ } from '../common/files.js';
30
30
  import { Emitter, Event, URI, Disposable, DisposableCollection, type CancellationToken } from '@theia/core';
31
31
  import { EncodingService } from '@theia/core/lib/common/encoding-service';
32
32
  import { BinaryBuffer } from '@theia/core/lib/common/buffer';
33
33
  import { TextDocumentContentChangeEvent } from '@theia/core/shared/vscode-languageserver-protocol';
34
34
  import { TextDocument } from 'vscode-languageserver-textdocument';
35
35
  import { OPFSFileSystem, WatchEventType, type FileStat, type OPFSError, type WatchEvent } from 'opfs-worker';
36
- import { OPFSInitialization } from './opfs-filesystem-initialization';
36
+ import { OPFSInitialization } from './opfs-filesystem-initialization.js';
37
37
  import { ReadableStreamEvents, newWriteableStream } from '@theia/core/lib/common/stream';
38
- import { readFileIntoStream } from '../common/io';
38
+ import { readFileIntoStream } from '../common/io.js';
39
39
  import { Path } from '@theia/core/lib/common/path';
40
40
 
41
41
  @injectable()
@@ -20,17 +20,17 @@ import { CancellationTokenSource, CancellationToken, checkCancelled, isCancelled
20
20
  import { Deferred } from '@theia/core/lib/common/promise-util';
21
21
  import { MessageService } from '@theia/core/lib/common/message-service';
22
22
  import { Progress } from '@theia/core/lib/common/message-service-protocol';
23
- import throttle = require('@theia/core/shared/lodash.throttle');
23
+ import throttle from '@theia/core/shared/lodash.throttle';
24
24
  import { Semaphore } from 'async-mutex';
25
- import { FileService } from '../../browser/file-service';
25
+ import { FileService } from '../../browser/file-service.js';
26
26
  import { ConfirmDialog, Dialog } from '@theia/core/lib/browser';
27
27
  import { nls } from '@theia/core/lib/common/nls';
28
28
  import { Emitter, Event } from '@theia/core/lib/common/event';
29
- import { FileSystemPreferences } from '../../common/filesystem-preferences';
29
+ import { FileSystemPreferences } from '../../common/filesystem-preferences.js';
30
30
  import { fileToStream } from '@theia/core/lib/common/stream';
31
31
  import { minimatch } from 'minimatch';
32
32
 
33
- import type { FileUploadService } from '../../common/upload/file-upload';
33
+ import type { FileUploadService } from '../../common/upload/file-upload.js';
34
34
 
35
35
  interface UploadState {
36
36
  uploaded?: boolean;
@@ -22,7 +22,7 @@ import {
22
22
  hasReadWriteCapability, hasFileFolderCopyCapability, hasOpenReadWriteCloseCapability, hasAccessCapability, FileUpdateOptions, hasUpdateCapability, FileUpdateResult,
23
23
  FileReadStreamOptions,
24
24
  hasFileReadStreamCapability
25
- } from './files';
25
+ } from './files.js';
26
26
  import type { TextDocumentContentChangeEvent } from '@theia/core/shared/vscode-languageserver-protocol';
27
27
  import { ReadableStreamEvents } from '@theia/core/lib/common/stream';
28
28
 
@@ -14,7 +14,7 @@
14
14
  // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
15
15
  // *****************************************************************************
16
16
 
17
- import { FileChangesEvent, FileChangeType } from './files';
17
+ import { FileChangesEvent, FileChangeType } from './files.js';
18
18
  import { expect } from 'chai';
19
19
  import URI from '@theia/core/lib/common/uri';
20
20
 
@@ -14,9 +14,9 @@
14
14
  // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
15
15
  // *****************************************************************************
16
16
 
17
- import { FileStat } from './files';
17
+ import { FileStat } from './files.js';
18
18
  import { expect } from 'chai';
19
- import { FileSystemUtils } from './filesystem-utils';
19
+ import { FileSystemUtils } from './filesystem-utils.js';
20
20
 
21
21
  describe('generateUniqueResourceURI', () => {
22
22
  describe('Target is file', () => {
@@ -14,7 +14,7 @@
14
14
  // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
15
15
  // *****************************************************************************
16
16
 
17
- import { FileStat } from '../common/files';
17
+ import { FileStat } from '../common/files.js';
18
18
  import URI from '@theia/core/lib/common/uri';
19
19
 
20
20
  export namespace FileSystemUtils {
@@ -15,7 +15,7 @@
15
15
  // *****************************************************************************
16
16
 
17
17
  import { RpcServer } from '@theia/core';
18
- import { FileChangeType } from './files';
18
+ import { FileChangeType } from './files.js';
19
19
  export { FileChangeType };
20
20
 
21
21
  export const FileSystemWatcherService = Symbol('FileSystemWatcherServer2');
@@ -14,6 +14,6 @@
14
14
  // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
15
15
  // *****************************************************************************
16
16
 
17
- export * from './filesystem';
18
- export * from './filesystem-utils';
19
- export * from './filesystem-preferences';
17
+ export * from './filesystem.js';
18
+ export * from './filesystem-utils.js';
19
+ export * from './filesystem-preferences.js';