@theia/filesystem 1.67.0-next.56 → 1.67.0-next.59
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.
- package/lib/browser/breadcrumbs/filepath-breadcrumb.d.ts +16 -0
- package/lib/browser/breadcrumbs/filepath-breadcrumb.d.ts.map +1 -0
- package/lib/browser/breadcrumbs/filepath-breadcrumb.js +42 -0
- package/lib/browser/breadcrumbs/filepath-breadcrumb.js.map +1 -0
- package/lib/browser/breadcrumbs/filepath-breadcrumbs-container.d.ts +13 -0
- package/lib/browser/breadcrumbs/filepath-breadcrumbs-container.d.ts.map +1 -0
- package/lib/browser/breadcrumbs/filepath-breadcrumbs-container.js +67 -0
- package/lib/browser/breadcrumbs/filepath-breadcrumbs-container.js.map +1 -0
- package/lib/browser/breadcrumbs/filepath-breadcrumbs-contribution.d.ts +28 -0
- package/lib/browser/breadcrumbs/filepath-breadcrumbs-contribution.d.ts.map +1 -0
- package/lib/browser/breadcrumbs/filepath-breadcrumbs-contribution.js +119 -0
- package/lib/browser/breadcrumbs/filepath-breadcrumbs-contribution.js.map +1 -0
- package/lib/browser/download/file-download-command-contribution.d.ts +19 -0
- package/lib/browser/download/file-download-command-contribution.d.ts.map +1 -0
- package/lib/browser/download/file-download-command-contribution.js +76 -0
- package/lib/browser/download/file-download-command-contribution.js.map +1 -0
- package/lib/browser/download/file-download-frontend-module.d.ts +4 -0
- package/lib/browser/download/file-download-frontend-module.d.ts.map +1 -0
- package/lib/browser/download/file-download-frontend-module.js +27 -0
- package/lib/browser/download/file-download-frontend-module.js.map +1 -0
- package/lib/browser/download/file-download-service.d.ts +21 -0
- package/lib/browser/download/file-download-service.d.ts.map +1 -0
- package/lib/browser/download/file-download-service.js +169 -0
- package/lib/browser/download/file-download-service.js.map +1 -0
- package/lib/browser/file-dialog/file-dialog-container.d.ts +6 -0
- package/lib/browser/file-dialog/file-dialog-container.d.ts.map +1 -0
- package/lib/browser/file-dialog/file-dialog-container.js +61 -0
- package/lib/browser/file-dialog/file-dialog-container.js.map +1 -0
- package/lib/browser/file-dialog/file-dialog-hidden-files-renderer.d.ts +16 -0
- package/lib/browser/file-dialog/file-dialog-hidden-files-renderer.d.ts.map +1 -0
- package/lib/browser/file-dialog/file-dialog-hidden-files-renderer.js +60 -0
- package/lib/browser/file-dialog/file-dialog-hidden-files-renderer.js.map +1 -0
- package/lib/browser/file-dialog/file-dialog-model.d.ts +26 -0
- package/lib/browser/file-dialog/file-dialog-model.d.ts.map +1 -0
- package/lib/browser/file-dialog/file-dialog-model.js +101 -0
- package/lib/browser/file-dialog/file-dialog-model.js.map +1 -0
- package/lib/browser/file-dialog/file-dialog-module.d.ts +4 -0
- package/lib/browser/file-dialog/file-dialog-module.d.ts.map +1 -0
- package/lib/browser/file-dialog/file-dialog-module.js +46 -0
- package/lib/browser/file-dialog/file-dialog-module.js.map +1 -0
- package/lib/browser/file-dialog/file-dialog-service.d.ts +33 -0
- package/lib/browser/file-dialog/file-dialog-service.d.ts.map +1 -0
- package/lib/browser/file-dialog/file-dialog-service.js +102 -0
- package/lib/browser/file-dialog/file-dialog-service.js.map +1 -0
- package/lib/browser/file-dialog/file-dialog-tree-filters-renderer.d.ts +40 -0
- package/lib/browser/file-dialog/file-dialog-tree-filters-renderer.d.ts.map +1 -0
- package/lib/browser/file-dialog/file-dialog-tree-filters-renderer.js +82 -0
- package/lib/browser/file-dialog/file-dialog-tree-filters-renderer.js.map +1 -0
- package/lib/browser/file-dialog/file-dialog-tree.d.ts +27 -0
- package/lib/browser/file-dialog/file-dialog-tree.d.ts.map +1 -0
- package/lib/browser/file-dialog/file-dialog-tree.js +84 -0
- package/lib/browser/file-dialog/file-dialog-tree.js.map +1 -0
- package/lib/browser/file-dialog/file-dialog-widget.d.ts +18 -0
- package/lib/browser/file-dialog/file-dialog-widget.d.ts.map +1 -0
- package/lib/browser/file-dialog/file-dialog-widget.js +85 -0
- package/lib/browser/file-dialog/file-dialog-widget.js.map +1 -0
- package/lib/browser/file-dialog/file-dialog.d.ts +130 -0
- package/lib/browser/file-dialog/file-dialog.d.ts.map +1 -0
- package/lib/browser/file-dialog/file-dialog.js +352 -0
- package/lib/browser/file-dialog/file-dialog.js.map +1 -0
- package/lib/browser/file-dialog/index.d.ts +5 -0
- package/lib/browser/file-dialog/index.d.ts.map +1 -0
- package/lib/browser/file-dialog/index.js +23 -0
- package/lib/browser/file-dialog/index.js.map +1 -0
- package/lib/browser/file-resource.d.ts +72 -0
- package/lib/browser/file-resource.d.ts.map +1 -0
- package/lib/browser/file-resource.js +385 -0
- package/lib/browser/file-resource.js.map +1 -0
- package/lib/browser/file-resource.spec.d.ts +2 -0
- package/lib/browser/file-resource.spec.d.ts.map +1 -0
- package/lib/browser/file-resource.spec.js +191 -0
- package/lib/browser/file-resource.spec.js.map +1 -0
- package/lib/browser/file-selection.d.ts +15 -0
- package/lib/browser/file-selection.d.ts.map +1 -0
- package/lib/browser/file-selection.js +37 -0
- package/lib/browser/file-selection.js.map +1 -0
- package/lib/browser/file-service.d.ts +427 -0
- package/lib/browser/file-service.d.ts.map +1 -0
- package/lib/browser/file-service.js +1370 -0
- package/lib/browser/file-service.js.map +1 -0
- package/lib/browser/file-tree/file-tree-container.d.ts +4 -0
- package/lib/browser/file-tree/file-tree-container.d.ts.map +1 -0
- package/lib/browser/file-tree/file-tree-container.js +36 -0
- package/lib/browser/file-tree/file-tree-container.js.map +1 -0
- package/lib/browser/file-tree/file-tree-decorator-adapter.d.ts +31 -0
- package/lib/browser/file-tree/file-tree-decorator-adapter.d.ts.map +1 -0
- package/lib/browser/file-tree/file-tree-decorator-adapter.js +170 -0
- package/lib/browser/file-tree/file-tree-decorator-adapter.js.map +1 -0
- package/lib/browser/file-tree/file-tree-label-provider.d.ts +13 -0
- package/lib/browser/file-tree/file-tree-label-provider.d.ts.map +1 -0
- package/lib/browser/file-tree/file-tree-label-provider.js +55 -0
- package/lib/browser/file-tree/file-tree-label-provider.js.map +1 -0
- package/lib/browser/file-tree/file-tree-model.d.ts +34 -0
- package/lib/browser/file-tree/file-tree-model.d.ts.map +1 -0
- package/lib/browser/file-tree/file-tree-model.js +201 -0
- package/lib/browser/file-tree/file-tree-model.js.map +1 -0
- package/lib/browser/file-tree/file-tree-widget.d.ts +45 -0
- package/lib/browser/file-tree/file-tree-widget.d.ts.map +1 -0
- package/lib/browser/file-tree/file-tree-widget.js +318 -0
- package/lib/browser/file-tree/file-tree-widget.js.map +1 -0
- package/lib/browser/file-tree/file-tree.d.ts +47 -0
- package/lib/browser/file-tree/file-tree.d.ts.map +1 -0
- package/lib/browser/file-tree/file-tree.js +177 -0
- package/lib/browser/file-tree/file-tree.js.map +1 -0
- package/lib/browser/file-tree/index.d.ts +7 -0
- package/lib/browser/file-tree/index.d.ts.map +1 -0
- package/lib/browser/file-tree/index.js +25 -0
- package/lib/browser/file-tree/index.js.map +1 -0
- package/lib/browser/filesystem-frontend-contribution.d.ts +76 -0
- package/lib/browser/filesystem-frontend-contribution.d.ts.map +1 -0
- package/lib/browser/filesystem-frontend-contribution.js +372 -0
- package/lib/browser/filesystem-frontend-contribution.js.map +1 -0
- package/lib/browser/filesystem-frontend-module.d.ts +6 -0
- package/lib/browser/filesystem-frontend-module.d.ts.map +1 -0
- package/lib/browser/filesystem-frontend-module.js +70 -0
- package/lib/browser/filesystem-frontend-module.js.map +1 -0
- package/lib/browser/filesystem-saveable-service.d.ts +36 -0
- package/lib/browser/filesystem-saveable-service.d.ts.map +1 -0
- package/lib/browser/filesystem-saveable-service.js +164 -0
- package/lib/browser/filesystem-saveable-service.js.map +1 -0
- package/lib/browser/filesystem-watcher-error-handler.d.ts +11 -0
- package/lib/browser/filesystem-watcher-error-handler.d.ts.map +1 -0
- package/lib/browser/filesystem-watcher-error-handler.js +62 -0
- package/lib/browser/filesystem-watcher-error-handler.js.map +1 -0
- package/lib/browser/index.d.ts +5 -0
- package/lib/browser/index.d.ts.map +1 -0
- package/lib/browser/index.js +23 -0
- package/lib/browser/index.js.map +1 -0
- package/lib/browser/location/index.d.ts +3 -0
- package/lib/browser/location/index.d.ts.map +1 -0
- package/lib/browser/location/index.js +21 -0
- package/lib/browser/location/index.js.map +1 -0
- package/lib/browser/location/location-renderer.d.ts +101 -0
- package/lib/browser/location/location-renderer.d.ts.map +1 -0
- package/lib/browser/location/location-renderer.js +345 -0
- package/lib/browser/location/location-renderer.js.map +1 -0
- package/lib/browser/location/location-service.d.ts +6 -0
- package/lib/browser/location/location-service.d.ts.map +1 -0
- package/lib/browser/location/location-service.js +18 -0
- package/lib/browser/location/location-service.js.map +1 -0
- package/lib/browser/remote-file-service-contribution.d.ts +7 -0
- package/lib/browser/remote-file-service-contribution.d.ts.map +1 -0
- package/lib/browser/remote-file-service-contribution.js +40 -0
- package/lib/browser/remote-file-service-contribution.js.map +1 -0
- package/lib/browser/upload/file-upload-service-impl.d.ts +77 -0
- package/lib/browser/upload/file-upload-service-impl.d.ts.map +1 -0
- package/lib/browser/upload/file-upload-service-impl.js +449 -0
- package/lib/browser/upload/file-upload-service-impl.js.map +1 -0
- package/lib/browser/vscode-file-service-contribution.d.ts +25 -0
- package/lib/browser/vscode-file-service-contribution.d.ts.map +1 -0
- package/lib/browser/vscode-file-service-contribution.js +99 -0
- package/lib/browser/vscode-file-service-contribution.js.map +1 -0
- package/lib/browser-only/browser-only-filesystem-frontend-module.d.ts +4 -0
- package/lib/browser-only/browser-only-filesystem-frontend-module.d.ts.map +1 -0
- package/lib/browser-only/browser-only-filesystem-frontend-module.js +49 -0
- package/lib/browser-only/browser-only-filesystem-frontend-module.js.map +1 -0
- package/lib/browser-only/browser-only-filesystem-provider-server.d.ts +12 -0
- package/lib/browser-only/browser-only-filesystem-provider-server.d.ts.map +1 -0
- package/lib/browser-only/browser-only-filesystem-provider-server.js +40 -0
- package/lib/browser-only/browser-only-filesystem-provider-server.js.map +1 -0
- package/lib/browser-only/download/file-download-command-contribution.d.ts +15 -0
- package/lib/browser-only/download/file-download-command-contribution.d.ts.map +1 -0
- package/lib/browser-only/download/file-download-command-contribution.js +55 -0
- package/lib/browser-only/download/file-download-command-contribution.js.map +1 -0
- package/lib/browser-only/download/file-download-frontend-module.d.ts +4 -0
- package/lib/browser-only/download/file-download-frontend-module.d.ts.map +1 -0
- package/lib/browser-only/download/file-download-frontend-module.js +27 -0
- package/lib/browser-only/download/file-download-frontend-module.js.map +1 -0
- package/lib/browser-only/download/file-download-service.d.ts +86 -0
- package/lib/browser-only/download/file-download-service.d.ts.map +1 -0
- package/lib/browser-only/download/file-download-service.js +551 -0
- package/lib/browser-only/download/file-download-service.js.map +1 -0
- package/lib/browser-only/file-search.d.ts +38 -0
- package/lib/browser-only/file-search.d.ts.map +1 -0
- package/lib/browser-only/file-search.js +153 -0
- package/lib/browser-only/file-search.js.map +1 -0
- package/lib/browser-only/opfs-filesystem-initialization.d.ts +13 -0
- package/lib/browser-only/opfs-filesystem-initialization.d.ts.map +1 -0
- package/lib/browser-only/opfs-filesystem-initialization.js +36 -0
- package/lib/browser-only/opfs-filesystem-initialization.js.map +1 -0
- package/lib/browser-only/opfs-filesystem-provider.d.ts +108 -0
- package/lib/browser-only/opfs-filesystem-provider.d.ts.map +1 -0
- package/lib/browser-only/opfs-filesystem-provider.js +487 -0
- package/lib/browser-only/opfs-filesystem-provider.js.map +1 -0
- package/lib/browser-only/upload/file-upload-service-impl.d.ts +67 -0
- package/lib/browser-only/upload/file-upload-service-impl.d.ts.map +1 -0
- package/lib/browser-only/upload/file-upload-service-impl.js +328 -0
- package/lib/browser-only/upload/file-upload-service-impl.js.map +1 -0
- package/lib/common/delegating-file-system-provider.d.ts +77 -0
- package/lib/common/delegating-file-system-provider.d.ts.map +1 -0
- package/lib/common/delegating-file-system-provider.js +169 -0
- package/lib/common/delegating-file-system-provider.js.map +1 -0
- package/lib/common/download/file-download.d.ts +17 -0
- package/lib/common/download/file-download.d.ts.map +1 -0
- package/lib/common/download/file-download.js +28 -0
- package/lib/common/download/file-download.js.map +1 -0
- package/lib/common/file-upload.d.ts +2 -0
- package/lib/common/file-upload.d.ts.map +1 -0
- package/lib/common/file-upload.js +20 -0
- package/lib/common/file-upload.js.map +1 -0
- package/lib/common/files.d.ts +668 -0
- package/lib/common/files.d.ts.map +1 -0
- package/lib/common/files.js +390 -0
- package/lib/common/files.js.map +1 -0
- package/lib/common/files.spec.d.ts +2 -0
- package/lib/common/files.spec.d.ts.map +1 -0
- package/lib/common/files.spec.js +52 -0
- package/lib/common/files.spec.js.map +1 -0
- package/lib/common/filesystem-preferences.d.ts +33 -0
- package/lib/common/filesystem-preferences.d.ts.map +1 -0
- package/lib/common/filesystem-preferences.js +122 -0
- package/lib/common/filesystem-preferences.js.map +1 -0
- package/lib/common/filesystem-utils.d.ts +15 -0
- package/lib/common/filesystem-utils.d.ts.map +1 -0
- package/lib/common/filesystem-utils.js +64 -0
- package/lib/common/filesystem-utils.js.map +1 -0
- package/lib/common/filesystem-utils.spec.d.ts +2 -0
- package/lib/common/filesystem-utils.spec.d.ts.map +1 -0
- package/lib/common/filesystem-utils.spec.js +379 -0
- package/lib/common/filesystem-utils.spec.js.map +1 -0
- package/lib/common/filesystem-watcher-protocol.d.ts +72 -0
- package/lib/common/filesystem-watcher-protocol.d.ts.map +1 -0
- package/lib/common/filesystem-watcher-protocol.js +21 -0
- package/lib/common/filesystem-watcher-protocol.js.map +1 -0
- package/lib/common/filesystem.d.ts +23 -0
- package/lib/common/filesystem.d.ts.map +1 -0
- package/lib/common/filesystem.js +43 -0
- package/lib/common/filesystem.js.map +1 -0
- package/lib/common/index.d.ts +4 -0
- package/lib/common/index.d.ts.map +1 -0
- package/lib/common/index.js +22 -0
- package/lib/common/index.js.map +1 -0
- package/lib/common/io.d.ts +20 -0
- package/lib/common/io.d.ts.map +1 -0
- package/lib/common/io.js +117 -0
- package/lib/common/io.js.map +1 -0
- package/lib/common/remote-file-system-provider.d.ts +174 -0
- package/lib/common/remote-file-system-provider.d.ts.map +1 -0
- package/lib/common/remote-file-system-provider.js +435 -0
- package/lib/common/remote-file-system-provider.js.map +1 -0
- package/lib/common/upload/file-upload.d.ts +45 -0
- package/lib/common/upload/file-upload.d.ts.map +1 -0
- package/lib/common/upload/file-upload.js +20 -0
- package/lib/common/upload/file-upload.js.map +1 -0
- package/lib/electron-browser/file-dialog/electron-file-dialog-module.d.ts +4 -0
- package/lib/electron-browser/file-dialog/electron-file-dialog-module.d.ts.map +1 -0
- package/lib/electron-browser/file-dialog/electron-file-dialog-module.js +25 -0
- package/lib/electron-browser/file-dialog/electron-file-dialog-module.js.map +1 -0
- package/lib/electron-browser/file-dialog/electron-file-dialog-service.d.ts +20 -0
- package/lib/electron-browser/file-dialog/electron-file-dialog-service.d.ts.map +1 -0
- package/lib/electron-browser/file-dialog/electron-file-dialog-service.js +149 -0
- package/lib/electron-browser/file-dialog/electron-file-dialog-service.js.map +1 -0
- package/lib/electron-browser/preload.d.ts +2 -0
- package/lib/electron-browser/preload.d.ts.map +1 -0
- package/lib/electron-browser/preload.js +31 -0
- package/lib/electron-browser/preload.js.map +1 -0
- package/lib/electron-common/electron-api.d.ts +35 -0
- package/lib/electron-common/electron-api.d.ts.map +1 -0
- package/lib/electron-common/electron-api.js +21 -0
- package/lib/electron-common/electron-api.js.map +1 -0
- package/lib/electron-main/electron-api-main.d.ts +6 -0
- package/lib/electron-main/electron-api-main.d.ts.map +1 -0
- package/lib/electron-main/electron-api-main.js +74 -0
- package/lib/electron-main/electron-api-main.js.map +1 -0
- package/lib/electron-main/electron-main-module.d.ts +4 -0
- package/lib/electron-main/electron-main-module.d.ts.map +1 -0
- package/lib/electron-main/electron-main-module.js +25 -0
- package/lib/electron-main/electron-main-module.js.map +1 -0
- package/lib/node/disk-file-system-provider.d.ts +73 -0
- package/lib/node/disk-file-system-provider.d.ts.map +1 -0
- package/lib/node/disk-file-system-provider.js +786 -0
- package/lib/node/disk-file-system-provider.js.map +1 -0
- package/lib/node/disk-file-system-provider.spec.d.ts +2 -0
- package/lib/node/disk-file-system-provider.spec.d.ts.map +1 -0
- package/lib/node/disk-file-system-provider.spec.js +123 -0
- package/lib/node/disk-file-system-provider.spec.js.map +1 -0
- package/lib/node/download/directory-archiver.d.ts +10 -0
- package/lib/node/download/directory-archiver.d.ts.map +1 -0
- package/lib/node/download/directory-archiver.js +128 -0
- package/lib/node/download/directory-archiver.js.map +1 -0
- package/lib/node/download/directory-archiver.spec.d.ts +2 -0
- package/lib/node/download/directory-archiver.spec.d.ts.map +1 -0
- package/lib/node/download/directory-archiver.spec.js +98 -0
- package/lib/node/download/directory-archiver.spec.js.map +1 -0
- package/lib/node/download/file-download-backend-module.d.ts +4 -0
- package/lib/node/download/file-download-backend-module.d.ts.map +1 -0
- package/lib/node/download/file-download-backend-module.js +33 -0
- package/lib/node/download/file-download-backend-module.js.map +1 -0
- package/lib/node/download/file-download-cache.d.ts +22 -0
- package/lib/node/download/file-download-cache.d.ts.map +1 -0
- package/lib/node/download/file-download-cache.js +81 -0
- package/lib/node/download/file-download-cache.js.map +1 -0
- package/lib/node/download/file-download-endpoint.d.ts +12 -0
- package/lib/node/download/file-download-endpoint.d.ts.map +1 -0
- package/lib/node/download/file-download-endpoint.js +68 -0
- package/lib/node/download/file-download-endpoint.js.map +1 -0
- package/lib/node/download/file-download-handler.d.ts +51 -0
- package/lib/node/download/file-download-handler.d.ts.map +1 -0
- package/lib/node/download/file-download-handler.js +307 -0
- package/lib/node/download/file-download-handler.js.map +1 -0
- package/lib/node/download/test/mock-directory-archiver.d.ts +8 -0
- package/lib/node/download/test/mock-directory-archiver.d.ts.map +1 -0
- package/lib/node/download/test/mock-directory-archiver.js +30 -0
- package/lib/node/download/test/mock-directory-archiver.js.map +1 -0
- package/lib/node/file-change-collection.d.ts +23 -0
- package/lib/node/file-change-collection.d.ts.map +1 -0
- package/lib/node/file-change-collection.js +78 -0
- package/lib/node/file-change-collection.js.map +1 -0
- package/lib/node/file-change-collection.spec.d.ts +2 -0
- package/lib/node/file-change-collection.spec.d.ts.map +1 -0
- package/lib/node/file-change-collection.spec.js +91 -0
- package/lib/node/file-change-collection.spec.js.map +1 -0
- package/lib/node/filesystem-backend-module.d.ts +27 -0
- package/lib/node/filesystem-backend-module.d.ts.map +1 -0
- package/lib/node/filesystem-backend-module.js +123 -0
- package/lib/node/filesystem-backend-module.js.map +1 -0
- package/lib/node/filesystem-watcher-client.d.ts +23 -0
- package/lib/node/filesystem-watcher-client.d.ts.map +1 -0
- package/lib/node/filesystem-watcher-client.js +75 -0
- package/lib/node/filesystem-watcher-client.js.map +1 -0
- package/lib/node/filesystem-watcher-dispatcher.d.ts +24 -0
- package/lib/node/filesystem-watcher-dispatcher.d.ts.map +1 -0
- package/lib/node/filesystem-watcher-dispatcher.js +81 -0
- package/lib/node/filesystem-watcher-dispatcher.js.map +1 -0
- package/lib/node/parcel-watcher/index.d.ts +4 -0
- package/lib/node/parcel-watcher/index.d.ts.map +1 -0
- package/lib/node/parcel-watcher/index.js +40 -0
- package/lib/node/parcel-watcher/index.js.map +1 -0
- package/lib/node/parcel-watcher/parcel-filesystem-service.d.ts +193 -0
- package/lib/node/parcel-watcher/parcel-filesystem-service.d.ts.map +1 -0
- package/lib/node/parcel-watcher/parcel-filesystem-service.js +406 -0
- package/lib/node/parcel-watcher/parcel-filesystem-service.js.map +1 -0
- package/lib/node/parcel-watcher/parcel-filesystem-watcher.spec.d.ts +2 -0
- package/lib/node/parcel-watcher/parcel-filesystem-watcher.spec.d.ts.map +1 -0
- package/lib/node/parcel-watcher/parcel-filesystem-watcher.spec.js +145 -0
- package/lib/node/parcel-watcher/parcel-filesystem-watcher.spec.js.map +1 -0
- package/lib/node/parcel-watcher/parcel-options.d.ts +7 -0
- package/lib/node/parcel-watcher/parcel-options.d.ts.map +1 -0
- package/lib/node/parcel-watcher/parcel-options.js +23 -0
- package/lib/node/parcel-watcher/parcel-options.js.map +1 -0
- package/lib/node/upload/node-file-upload-service.d.ts +17 -0
- package/lib/node/upload/node-file-upload-service.d.ts.map +1 -0
- package/lib/node/upload/node-file-upload-service.js +87 -0
- package/lib/node/upload/node-file-upload-service.js.map +1 -0
- package/package.json +3 -3
|
@@ -0,0 +1,345 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// *****************************************************************************
|
|
3
|
+
// Copyright (C) 2017 TypeFox and others.
|
|
4
|
+
//
|
|
5
|
+
// This program and the accompanying materials are made available under the
|
|
6
|
+
// terms of the Eclipse Public License v. 2.0 which is available at
|
|
7
|
+
// http://www.eclipse.org/legal/epl-2.0.
|
|
8
|
+
//
|
|
9
|
+
// This Source Code may also be made available under the following Secondary
|
|
10
|
+
// Licenses when the conditions for such availability set forth in the Eclipse
|
|
11
|
+
// Public License v. 2.0 are satisfied: GNU General Public License, version 2
|
|
12
|
+
// with the GNU Classpath Exception which is available at
|
|
13
|
+
// https://www.gnu.org/software/classpath/license.html.
|
|
14
|
+
//
|
|
15
|
+
// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
|
|
16
|
+
// *****************************************************************************
|
|
17
|
+
var LocationListRenderer_1;
|
|
18
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
19
|
+
exports.LocationListRenderer = exports.LocationListRendererOptions = exports.LocationListRendererFactory = void 0;
|
|
20
|
+
const tslib_1 = require("tslib");
|
|
21
|
+
const uri_1 = require("@theia/core/lib/common/uri");
|
|
22
|
+
const React = require("@theia/core/shared/react");
|
|
23
|
+
const file_service_1 = require("../file-service");
|
|
24
|
+
const common_1 = require("@theia/core/lib/common");
|
|
25
|
+
const inversify_1 = require("@theia/core/shared/inversify");
|
|
26
|
+
const env_variables_1 = require("@theia/core/lib/common/env-variables");
|
|
27
|
+
const react_renderer_1 = require("@theia/core/lib/browser/widgets/react-renderer");
|
|
28
|
+
const browser_1 = require("@theia/core/lib/browser");
|
|
29
|
+
class ResolvedDirectoryCache {
|
|
30
|
+
constructor(fileService) {
|
|
31
|
+
this.fileService = fileService;
|
|
32
|
+
this.pendingResolvedDirectories = new Map();
|
|
33
|
+
this.cachedDirectories = new Map();
|
|
34
|
+
this.directoryResolvedEmitter = new common_1.Emitter();
|
|
35
|
+
this.onDirectoryDidResolve = this.directoryResolvedEmitter.event;
|
|
36
|
+
}
|
|
37
|
+
tryResolveChildDirectories(inputAsURI) {
|
|
38
|
+
const parentDirectory = inputAsURI.path.dir.toString();
|
|
39
|
+
const cachedDirectories = this.cachedDirectories.get(parentDirectory);
|
|
40
|
+
const pendingDirectories = this.pendingResolvedDirectories.get(parentDirectory);
|
|
41
|
+
if (cachedDirectories) {
|
|
42
|
+
return cachedDirectories;
|
|
43
|
+
}
|
|
44
|
+
else if (!pendingDirectories) {
|
|
45
|
+
this.pendingResolvedDirectories.set(parentDirectory, this.createResolutionPromise(parentDirectory));
|
|
46
|
+
}
|
|
47
|
+
return undefined;
|
|
48
|
+
}
|
|
49
|
+
async createResolutionPromise(directoryToResolve) {
|
|
50
|
+
return this.fileService.resolve(new uri_1.default(directoryToResolve)).then(({ children }) => {
|
|
51
|
+
if (children) {
|
|
52
|
+
const childDirectories = children.filter(child => child.isDirectory)
|
|
53
|
+
.map(directory => `${directory.resource.path}/`);
|
|
54
|
+
this.cachedDirectories.set(directoryToResolve, childDirectories);
|
|
55
|
+
this.directoryResolvedEmitter.fire({ parent: directoryToResolve, children: childDirectories });
|
|
56
|
+
}
|
|
57
|
+
}).catch(e => {
|
|
58
|
+
// no-op
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
exports.LocationListRendererFactory = Symbol('LocationListRendererFactory');
|
|
63
|
+
exports.LocationListRendererOptions = Symbol('LocationListRendererOptions');
|
|
64
|
+
let LocationListRenderer = LocationListRenderer_1 = class LocationListRenderer extends react_renderer_1.ReactRenderer {
|
|
65
|
+
get doShowTextInput() {
|
|
66
|
+
return this._doShowTextInput;
|
|
67
|
+
}
|
|
68
|
+
set doShowTextInput(doShow) {
|
|
69
|
+
this._doShowTextInput = doShow;
|
|
70
|
+
if (doShow) {
|
|
71
|
+
this.initResolveDirectoryCache();
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
constructor(options) {
|
|
75
|
+
super(options.host);
|
|
76
|
+
this.options = options;
|
|
77
|
+
this.toDisposeOnNewCache = new common_1.DisposableCollection();
|
|
78
|
+
this._doShowTextInput = false;
|
|
79
|
+
this.doAttemptAutocomplete = true;
|
|
80
|
+
this.doAfterRender = () => {
|
|
81
|
+
const locationList = this.locationList;
|
|
82
|
+
const locationListTextInput = this.locationTextInput;
|
|
83
|
+
if (locationList) {
|
|
84
|
+
const currentLocation = this.service.location;
|
|
85
|
+
locationList.value = currentLocation ? currentLocation.toString() : '';
|
|
86
|
+
}
|
|
87
|
+
else if (locationListTextInput) {
|
|
88
|
+
locationListTextInput.focus();
|
|
89
|
+
}
|
|
90
|
+
};
|
|
91
|
+
this.handleLocationChanged = (e) => this.onLocationChanged(e);
|
|
92
|
+
this.handleTextInputOnChange = (e) => this.trySuggestDirectory(e);
|
|
93
|
+
this.handleTextInputKeyDown = (e) => this.handleControlKeys(e);
|
|
94
|
+
this.handleIconKeyDown = (e) => this.toggleInputOnKeyDown(e);
|
|
95
|
+
this.handleTextInputOnBlur = () => this.toggleToSelectInput();
|
|
96
|
+
this.handleTextInputMouseDown = (e) => this.toggleToTextInputOnMouseDown(e);
|
|
97
|
+
this.service = options.model;
|
|
98
|
+
this.doLoadDrives();
|
|
99
|
+
this.doAfterRender = this.doAfterRender.bind(this);
|
|
100
|
+
}
|
|
101
|
+
init() {
|
|
102
|
+
this.doInit();
|
|
103
|
+
}
|
|
104
|
+
async doInit() {
|
|
105
|
+
const homeDirWithPrefix = await this.variablesServer.getHomeDirUri();
|
|
106
|
+
this.homeDir = (new uri_1.default(homeDirWithPrefix)).path.toString();
|
|
107
|
+
}
|
|
108
|
+
render() {
|
|
109
|
+
if (!this.toDispose.disposed) {
|
|
110
|
+
this.hostRoot.render(this.doRender());
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
initResolveDirectoryCache() {
|
|
114
|
+
this.toDisposeOnNewCache.dispose();
|
|
115
|
+
this.directoryCache = new ResolvedDirectoryCache(this.fileService);
|
|
116
|
+
this.toDisposeOnNewCache.push(this.directoryCache.onDirectoryDidResolve(({ parent, children }) => {
|
|
117
|
+
if (this.locationTextInput) {
|
|
118
|
+
const expandedPath = common_1.Path.untildify(this.locationTextInput.value, this.homeDir);
|
|
119
|
+
const inputParent = (new uri_1.default(expandedPath)).path.dir.toString();
|
|
120
|
+
if (inputParent === parent) {
|
|
121
|
+
this.tryRenderFirstMatch(this.locationTextInput, children);
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
}));
|
|
125
|
+
}
|
|
126
|
+
doRender() {
|
|
127
|
+
return (React.createElement(React.Fragment, null,
|
|
128
|
+
this.renderInputIcon(),
|
|
129
|
+
this.doShowTextInput
|
|
130
|
+
? this.renderTextInput()
|
|
131
|
+
: this.renderSelectInput()));
|
|
132
|
+
}
|
|
133
|
+
renderInputIcon() {
|
|
134
|
+
return (React.createElement("span", {
|
|
135
|
+
// onMouseDown is used since it will fire before 'onBlur'. This prevents
|
|
136
|
+
// a re-render when textinput is in focus and user clicks toggle icon
|
|
137
|
+
onMouseDown: this.handleTextInputMouseDown, onKeyDown: this.handleIconKeyDown, className: LocationListRenderer_1.Styles.LOCATION_INPUT_TOGGLE_CLASS, tabIndex: 0, id: `${this.doShowTextInput ? 'text-input' : 'select-input'}`, title: this.doShowTextInput
|
|
138
|
+
? LocationListRenderer_1.Tooltips.TOGGLE_SELECT_INPUT
|
|
139
|
+
: LocationListRenderer_1.Tooltips.TOGGLE_TEXT_INPUT, ref: this.doAfterRender },
|
|
140
|
+
React.createElement("i", { className: (0, browser_1.codicon)(this.doShowTextInput ? 'folder-opened' : 'edit') })));
|
|
141
|
+
}
|
|
142
|
+
renderTextInput() {
|
|
143
|
+
var _a;
|
|
144
|
+
return (React.createElement("input", { className: 'theia-select ' + LocationListRenderer_1.Styles.LOCATION_TEXT_INPUT_CLASS, defaultValue: (_a = this.service.location) === null || _a === void 0 ? void 0 : _a.path.fsPath(), onBlur: this.handleTextInputOnBlur, onChange: this.handleTextInputOnChange, onKeyDown: this.handleTextInputKeyDown, spellCheck: false }));
|
|
145
|
+
}
|
|
146
|
+
renderSelectInput() {
|
|
147
|
+
const options = this.collectLocations().map(value => this.renderLocation(value));
|
|
148
|
+
return (React.createElement("select", { className: `theia-select ${LocationListRenderer_1.Styles.LOCATION_LIST_CLASS}`, onChange: this.handleLocationChanged }, ...options));
|
|
149
|
+
}
|
|
150
|
+
toggleInputOnKeyDown(e) {
|
|
151
|
+
if (e.key === 'Enter') {
|
|
152
|
+
this.doShowTextInput = true;
|
|
153
|
+
this.render();
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
toggleToTextInputOnMouseDown(e) {
|
|
157
|
+
if (e.currentTarget.id === 'select-input') {
|
|
158
|
+
e.preventDefault();
|
|
159
|
+
this.doShowTextInput = true;
|
|
160
|
+
this.render();
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
toggleToSelectInput() {
|
|
164
|
+
if (this.doShowTextInput) {
|
|
165
|
+
this.doShowTextInput = false;
|
|
166
|
+
this.render();
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
/**
|
|
170
|
+
* Collects the available locations based on the currently selected, and appends the available drives to it.
|
|
171
|
+
*/
|
|
172
|
+
collectLocations() {
|
|
173
|
+
const location = this.service.location;
|
|
174
|
+
const locations = (!!location ? location.allLocations : []).map(uri => ({ uri }));
|
|
175
|
+
if (this._drives) {
|
|
176
|
+
const drives = this._drives.map(uri => ({ uri, isDrive: true }));
|
|
177
|
+
// `URI.allLocations` returns with the URI without the trailing slash unlike `FileUri.create(fsPath)`.
|
|
178
|
+
// to be able to compare file:///path/to/resource with file:///path/to/resource/.
|
|
179
|
+
const toUriString = (uri) => {
|
|
180
|
+
const toString = uri.toString();
|
|
181
|
+
return toString.endsWith('/') ? toString.slice(0, -1) : toString;
|
|
182
|
+
};
|
|
183
|
+
drives.forEach(drive => {
|
|
184
|
+
const index = locations.findIndex(loc => toUriString(loc.uri) === toUriString(drive.uri));
|
|
185
|
+
// Ignore drives which are already discovered as a location based on the current model root URI.
|
|
186
|
+
if (index === -1) {
|
|
187
|
+
// Make sure, it does not have the trailing slash.
|
|
188
|
+
locations.push({ uri: new uri_1.default(toUriString(drive.uri)), isDrive: true });
|
|
189
|
+
}
|
|
190
|
+
else {
|
|
191
|
+
// This is necessary for Windows to be able to show `/e:/` as a drive and `c:` as "non-drive" in the same way.
|
|
192
|
+
// `URI.path.toString()` Vs. `URI.displayName` behaves a bit differently on Windows.
|
|
193
|
+
// https://github.com/eclipse-theia/theia/pull/3038#issuecomment-425944189
|
|
194
|
+
locations[index].isDrive = true;
|
|
195
|
+
}
|
|
196
|
+
});
|
|
197
|
+
}
|
|
198
|
+
this.doLoadDrives();
|
|
199
|
+
return locations;
|
|
200
|
+
}
|
|
201
|
+
/**
|
|
202
|
+
* Asynchronously loads the drives (if not yet available) and triggers a UI update on success with the new values.
|
|
203
|
+
*/
|
|
204
|
+
doLoadDrives() {
|
|
205
|
+
if (!this._drives) {
|
|
206
|
+
this.service.drives().then(drives => {
|
|
207
|
+
// If the `drives` are empty, something already went wrong.
|
|
208
|
+
if (drives.length > 0) {
|
|
209
|
+
this._drives = drives;
|
|
210
|
+
this.render();
|
|
211
|
+
}
|
|
212
|
+
});
|
|
213
|
+
}
|
|
214
|
+
}
|
|
215
|
+
renderLocation(location) {
|
|
216
|
+
const { uri, isDrive } = location;
|
|
217
|
+
const value = uri.toString();
|
|
218
|
+
return React.createElement("option", { value: value, key: uri.toString() }, isDrive ? uri.path.fsPath() : uri.displayName);
|
|
219
|
+
}
|
|
220
|
+
onLocationChanged(e) {
|
|
221
|
+
const locationList = this.locationList;
|
|
222
|
+
if (locationList) {
|
|
223
|
+
const value = locationList.value;
|
|
224
|
+
const uri = new uri_1.default(value);
|
|
225
|
+
this.trySetNewLocation(uri);
|
|
226
|
+
e.preventDefault();
|
|
227
|
+
e.stopPropagation();
|
|
228
|
+
}
|
|
229
|
+
}
|
|
230
|
+
trySetNewLocation(newLocation) {
|
|
231
|
+
var _a;
|
|
232
|
+
if (this.lastUniqueTextInputLocation === undefined) {
|
|
233
|
+
this.lastUniqueTextInputLocation = this.service.location;
|
|
234
|
+
}
|
|
235
|
+
// prevent consecutive repeated locations from being added to location history
|
|
236
|
+
if (((_a = this.lastUniqueTextInputLocation) === null || _a === void 0 ? void 0 : _a.path.toString()) !== newLocation.path.toString()) {
|
|
237
|
+
this.lastUniqueTextInputLocation = newLocation;
|
|
238
|
+
this.service.location = newLocation;
|
|
239
|
+
}
|
|
240
|
+
}
|
|
241
|
+
trySuggestDirectory(e) {
|
|
242
|
+
if (this.doAttemptAutocomplete) {
|
|
243
|
+
const inputElement = e.currentTarget;
|
|
244
|
+
const { value } = inputElement;
|
|
245
|
+
if ((value.startsWith('/') || value.startsWith('~/')) && value.slice(-1) !== '/') {
|
|
246
|
+
const expandedPath = common_1.Path.untildify(value, this.homeDir);
|
|
247
|
+
const valueAsURI = new uri_1.default(expandedPath);
|
|
248
|
+
const autocompleteDirectories = this.directoryCache.tryResolveChildDirectories(valueAsURI);
|
|
249
|
+
if (autocompleteDirectories) {
|
|
250
|
+
this.tryRenderFirstMatch(inputElement, autocompleteDirectories);
|
|
251
|
+
}
|
|
252
|
+
}
|
|
253
|
+
}
|
|
254
|
+
}
|
|
255
|
+
tryRenderFirstMatch(inputElement, children) {
|
|
256
|
+
const { value, selectionStart } = inputElement;
|
|
257
|
+
if (this.locationTextInput) {
|
|
258
|
+
const expandedPath = common_1.Path.untildify(value, this.homeDir);
|
|
259
|
+
const firstMatch = children === null || children === void 0 ? void 0 : children.find(child => child.includes(expandedPath));
|
|
260
|
+
if (firstMatch) {
|
|
261
|
+
const contractedPath = value.startsWith('~') ? common_1.Path.tildify(firstMatch, this.homeDir) : firstMatch;
|
|
262
|
+
this.locationTextInput.value = contractedPath;
|
|
263
|
+
this.locationTextInput.selectionStart = selectionStart;
|
|
264
|
+
this.locationTextInput.selectionEnd = firstMatch.length;
|
|
265
|
+
}
|
|
266
|
+
}
|
|
267
|
+
}
|
|
268
|
+
handleControlKeys(e) {
|
|
269
|
+
this.doAttemptAutocomplete = e.key !== 'Backspace';
|
|
270
|
+
if (e.key === 'Enter') {
|
|
271
|
+
const locationTextInput = this.locationTextInput;
|
|
272
|
+
if (locationTextInput) {
|
|
273
|
+
// expand '~' if present and remove extra whitespace and any trailing slashes or periods.
|
|
274
|
+
const sanitizedInput = locationTextInput.value.trim().replace(/[\/\\.]*$/, '');
|
|
275
|
+
const untildifiedInput = common_1.Path.untildify(sanitizedInput, this.homeDir);
|
|
276
|
+
const uri = new uri_1.default(untildifiedInput);
|
|
277
|
+
this.trySetNewLocation(uri);
|
|
278
|
+
this.toggleToSelectInput();
|
|
279
|
+
}
|
|
280
|
+
}
|
|
281
|
+
else if (e.key === 'Escape') {
|
|
282
|
+
this.toggleToSelectInput();
|
|
283
|
+
}
|
|
284
|
+
else if (e.key === 'Tab') {
|
|
285
|
+
e.preventDefault();
|
|
286
|
+
const textInput = this.locationTextInput;
|
|
287
|
+
if (textInput) {
|
|
288
|
+
textInput.selectionStart = textInput.value.length;
|
|
289
|
+
}
|
|
290
|
+
}
|
|
291
|
+
e.stopPropagation();
|
|
292
|
+
}
|
|
293
|
+
get locationList() {
|
|
294
|
+
const locationList = this.host.getElementsByClassName(LocationListRenderer_1.Styles.LOCATION_LIST_CLASS)[0];
|
|
295
|
+
if (locationList instanceof HTMLSelectElement) {
|
|
296
|
+
return locationList;
|
|
297
|
+
}
|
|
298
|
+
return undefined;
|
|
299
|
+
}
|
|
300
|
+
get locationTextInput() {
|
|
301
|
+
const locationTextInput = this.host.getElementsByClassName(LocationListRenderer_1.Styles.LOCATION_TEXT_INPUT_CLASS)[0];
|
|
302
|
+
if (locationTextInput instanceof HTMLInputElement) {
|
|
303
|
+
return locationTextInput;
|
|
304
|
+
}
|
|
305
|
+
return undefined;
|
|
306
|
+
}
|
|
307
|
+
dispose() {
|
|
308
|
+
super.dispose();
|
|
309
|
+
this.toDisposeOnNewCache.dispose();
|
|
310
|
+
}
|
|
311
|
+
};
|
|
312
|
+
exports.LocationListRenderer = LocationListRenderer;
|
|
313
|
+
tslib_1.__decorate([
|
|
314
|
+
(0, inversify_1.inject)(file_service_1.FileService),
|
|
315
|
+
tslib_1.__metadata("design:type", file_service_1.FileService)
|
|
316
|
+
], LocationListRenderer.prototype, "fileService", void 0);
|
|
317
|
+
tslib_1.__decorate([
|
|
318
|
+
(0, inversify_1.inject)(env_variables_1.EnvVariablesServer),
|
|
319
|
+
tslib_1.__metadata("design:type", Object)
|
|
320
|
+
], LocationListRenderer.prototype, "variablesServer", void 0);
|
|
321
|
+
tslib_1.__decorate([
|
|
322
|
+
(0, inversify_1.postConstruct)(),
|
|
323
|
+
tslib_1.__metadata("design:type", Function),
|
|
324
|
+
tslib_1.__metadata("design:paramtypes", []),
|
|
325
|
+
tslib_1.__metadata("design:returntype", void 0)
|
|
326
|
+
], LocationListRenderer.prototype, "init", null);
|
|
327
|
+
exports.LocationListRenderer = LocationListRenderer = LocationListRenderer_1 = tslib_1.__decorate([
|
|
328
|
+
(0, inversify_1.injectable)(),
|
|
329
|
+
tslib_1.__param(0, (0, inversify_1.inject)(exports.LocationListRendererOptions)),
|
|
330
|
+
tslib_1.__metadata("design:paramtypes", [Object])
|
|
331
|
+
], LocationListRenderer);
|
|
332
|
+
(function (LocationListRenderer) {
|
|
333
|
+
let Styles;
|
|
334
|
+
(function (Styles) {
|
|
335
|
+
Styles.LOCATION_LIST_CLASS = 'theia-LocationList';
|
|
336
|
+
Styles.LOCATION_INPUT_TOGGLE_CLASS = 'theia-LocationInputToggle';
|
|
337
|
+
Styles.LOCATION_TEXT_INPUT_CLASS = 'theia-LocationTextInput';
|
|
338
|
+
})(Styles = LocationListRenderer.Styles || (LocationListRenderer.Styles = {}));
|
|
339
|
+
let Tooltips;
|
|
340
|
+
(function (Tooltips) {
|
|
341
|
+
Tooltips.TOGGLE_TEXT_INPUT = 'Switch to text-based input';
|
|
342
|
+
Tooltips.TOGGLE_SELECT_INPUT = 'Switch to location list';
|
|
343
|
+
})(Tooltips = LocationListRenderer.Tooltips || (LocationListRenderer.Tooltips = {}));
|
|
344
|
+
})(LocationListRenderer || (exports.LocationListRenderer = LocationListRenderer = {}));
|
|
345
|
+
//# sourceMappingURL=location-renderer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"location-renderer.js","sourceRoot":"","sources":["../../../src/browser/location/location-renderer.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"location-service.d.ts","sourceRoot":"","sources":["../../../src/browser/location/location-service.ts"],"names":[],"mappings":"AAgBA,OAAO,GAAG,MAAM,4BAA4B,CAAC;AAE7C,MAAM,WAAW,eAAe;IAC5B,QAAQ,EAAE,GAAG,GAAG,SAAS,CAAC;IAC1B,MAAM,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;CAC5B"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// *****************************************************************************
|
|
3
|
+
// Copyright (C) 2017 TypeFox and others.
|
|
4
|
+
//
|
|
5
|
+
// This program and the accompanying materials are made available under the
|
|
6
|
+
// terms of the Eclipse Public License v. 2.0 which is available at
|
|
7
|
+
// http://www.eclipse.org/legal/epl-2.0.
|
|
8
|
+
//
|
|
9
|
+
// This Source Code may also be made available under the following Secondary
|
|
10
|
+
// Licenses when the conditions for such availability set forth in the Eclipse
|
|
11
|
+
// Public License v. 2.0 are satisfied: GNU General Public License, version 2
|
|
12
|
+
// with the GNU Classpath Exception which is available at
|
|
13
|
+
// https://www.gnu.org/software/classpath/license.html.
|
|
14
|
+
//
|
|
15
|
+
// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
|
|
16
|
+
// *****************************************************************************
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
//# sourceMappingURL=location-service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"location-service.js","sourceRoot":"","sources":["../../../src/browser/location/location-service.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { FileServiceContribution, FileService } from './file-service';
|
|
2
|
+
import { RemoteFileSystemProvider } from '../common/remote-file-system-provider';
|
|
3
|
+
export declare class RemoteFileServiceContribution implements FileServiceContribution {
|
|
4
|
+
protected readonly provider: RemoteFileSystemProvider;
|
|
5
|
+
registerFileSystemProviders(service: FileService): void;
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=remote-file-service-contribution.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"remote-file-service-contribution.d.ts","sourceRoot":"","sources":["../../src/browser/remote-file-service-contribution.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,uBAAuB,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AACtE,OAAO,EAAE,wBAAwB,EAAE,MAAM,uCAAuC,CAAC;AAEjF,qBACa,6BAA8B,YAAW,uBAAuB;IAGzE,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,wBAAwB,CAAC;IAEtD,2BAA2B,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI;CAW1D"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// *****************************************************************************
|
|
3
|
+
// Copyright (C) 2020 TypeFox and others.
|
|
4
|
+
//
|
|
5
|
+
// This program and the accompanying materials are made available under the
|
|
6
|
+
// terms of the Eclipse Public License v. 2.0 which is available at
|
|
7
|
+
// http://www.eclipse.org/legal/epl-2.0.
|
|
8
|
+
//
|
|
9
|
+
// This Source Code may also be made available under the following Secondary
|
|
10
|
+
// Licenses when the conditions for such availability set forth in the Eclipse
|
|
11
|
+
// Public License v. 2.0 are satisfied: GNU General Public License, version 2
|
|
12
|
+
// with the GNU Classpath Exception which is available at
|
|
13
|
+
// https://www.gnu.org/software/classpath/license.html.
|
|
14
|
+
//
|
|
15
|
+
// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
|
|
16
|
+
// *****************************************************************************
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
exports.RemoteFileServiceContribution = void 0;
|
|
19
|
+
const tslib_1 = require("tslib");
|
|
20
|
+
const inversify_1 = require("@theia/core/shared/inversify");
|
|
21
|
+
const remote_file_system_provider_1 = require("../common/remote-file-system-provider");
|
|
22
|
+
let RemoteFileServiceContribution = class RemoteFileServiceContribution {
|
|
23
|
+
registerFileSystemProviders(service) {
|
|
24
|
+
const registering = this.provider.ready.then(() => service.registerProvider('file', this.provider));
|
|
25
|
+
service.onWillActivateFileSystemProvider(event => {
|
|
26
|
+
if (event.scheme === 'file') {
|
|
27
|
+
event.waitUntil(registering);
|
|
28
|
+
}
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
};
|
|
32
|
+
exports.RemoteFileServiceContribution = RemoteFileServiceContribution;
|
|
33
|
+
tslib_1.__decorate([
|
|
34
|
+
(0, inversify_1.inject)(remote_file_system_provider_1.RemoteFileSystemProvider),
|
|
35
|
+
tslib_1.__metadata("design:type", remote_file_system_provider_1.RemoteFileSystemProvider)
|
|
36
|
+
], RemoteFileServiceContribution.prototype, "provider", void 0);
|
|
37
|
+
exports.RemoteFileServiceContribution = RemoteFileServiceContribution = tslib_1.__decorate([
|
|
38
|
+
(0, inversify_1.injectable)()
|
|
39
|
+
], RemoteFileServiceContribution);
|
|
40
|
+
//# sourceMappingURL=remote-file-service-contribution.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"remote-file-service-contribution.js","sourceRoot":"","sources":["../../src/browser/remote-file-service-contribution.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,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,4DAAkE;AAElE,uFAAiF;AAG1E,IAAM,6BAA6B,GAAnC,MAAM,6BAA6B;IAKtC,2BAA2B,CAAC,OAAoB;QAC5C,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAC9C,OAAO,CAAC,gBAAgB,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAClD,CAAC;QACF,OAAO,CAAC,gCAAgC,CAAC,KAAK,CAAC,EAAE;YAC7C,IAAI,KAAK,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;gBAC1B,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;YACjC,CAAC;QACL,CAAC,CAAC,CAAC;IACP,CAAC;CAEJ,CAAA;AAhBY,sEAA6B;AAGnB;IADlB,IAAA,kBAAM,EAAC,sDAAwB,CAAC;sCACJ,sDAAwB;+DAAC;wCAH7C,6BAA6B;IADzC,IAAA,sBAAU,GAAE;GACA,6BAA6B,CAgBzC"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import URI from '@theia/core/lib/common/uri';
|
|
2
|
+
import { CancellationToken } from '@theia/core/lib/common/cancellation';
|
|
3
|
+
import { Deferred } from '@theia/core/lib/common/promise-util';
|
|
4
|
+
import { MessageService } from '@theia/core/lib/common/message-service';
|
|
5
|
+
import { Progress } from '@theia/core/lib/common/message-service-protocol';
|
|
6
|
+
import { FileSystemPreferences } from '../../common/filesystem-preferences';
|
|
7
|
+
import { FileService } from '../file-service';
|
|
8
|
+
import { Emitter, Event } from '@theia/core/lib/common/event';
|
|
9
|
+
import type { CustomDataTransfer, FileUploadService } from '../../common/upload/file-upload';
|
|
10
|
+
interface UploadFilesParams {
|
|
11
|
+
source: FileUploadService.Source;
|
|
12
|
+
progress: Progress;
|
|
13
|
+
token: CancellationToken;
|
|
14
|
+
leaveInTemp?: boolean;
|
|
15
|
+
onDidUpload?: (uri: string) => void;
|
|
16
|
+
}
|
|
17
|
+
export declare const HTTP_UPLOAD_URL: string;
|
|
18
|
+
export declare class FileUploadServiceImpl implements FileUploadService {
|
|
19
|
+
static TARGET: string;
|
|
20
|
+
static UPLOAD: string;
|
|
21
|
+
protected readonly onDidUploadEmitter: Emitter<string[]>;
|
|
22
|
+
get onDidUpload(): Event<string[]>;
|
|
23
|
+
protected uploadForm: FileUploadService.Form;
|
|
24
|
+
protected deferredUpload?: Deferred<FileUploadService.UploadResult>;
|
|
25
|
+
protected readonly messageService: MessageService;
|
|
26
|
+
protected fileSystemPreferences: FileSystemPreferences;
|
|
27
|
+
protected fileService: FileService;
|
|
28
|
+
get maxConcurrentUploads(): number;
|
|
29
|
+
protected init(): void;
|
|
30
|
+
protected createUploadForm(): FileUploadService.Form;
|
|
31
|
+
upload(targetUri: string | URI, params?: FileUploadService.UploadParams): Promise<FileUploadService.UploadResult>;
|
|
32
|
+
protected getUploadUrl(): string;
|
|
33
|
+
protected uploadAll(targetUri: URI, params: UploadFilesParams): Promise<FileUploadService.UploadResult>;
|
|
34
|
+
protected confirmOverwrite(fileUri: URI): Promise<boolean>;
|
|
35
|
+
protected uploadFile(file: File, targetUri: URI, token: CancellationToken, leaveInTemp: boolean | undefined, onProgress: (total: number, done: number) => void): {
|
|
36
|
+
/**
|
|
37
|
+
* Promise that resolves once the uploading is finished.
|
|
38
|
+
*
|
|
39
|
+
* Rejects on network error.
|
|
40
|
+
* Rejects if status is not OK (200).
|
|
41
|
+
* Rejects if cancelled.
|
|
42
|
+
*/
|
|
43
|
+
upload: Promise<void>;
|
|
44
|
+
/**
|
|
45
|
+
* Promise that resolves after the uploading step, once the server answers back.
|
|
46
|
+
*
|
|
47
|
+
* Rejects on network error.
|
|
48
|
+
* Rejects if status is not OK (200).
|
|
49
|
+
* Rejects if cancelled.
|
|
50
|
+
*/
|
|
51
|
+
response: Promise<void>;
|
|
52
|
+
};
|
|
53
|
+
/**
|
|
54
|
+
* Utility function to attach events and get a callback to unregister those.
|
|
55
|
+
*
|
|
56
|
+
* You may not call `unregister` in the same tick as `register` is invoked.
|
|
57
|
+
*/
|
|
58
|
+
protected registerEvents(target: EventTarget, register: (unregister: () => void) => Record<string, EventListenerOrEventListenerObject>): void;
|
|
59
|
+
protected withProgress<T>(cb: (progress: Progress, token: CancellationToken) => Promise<T>): Promise<T>;
|
|
60
|
+
protected index(targetUri: URI, source: FileUploadService.Source, context: FileUploadService.Context): Promise<void>;
|
|
61
|
+
protected indexFormData(targetUri: URI, formData: FormData, context: FileUploadService.Context): Promise<void>;
|
|
62
|
+
protected indexDataTransfer(targetUri: URI, dataTransfer: DataTransfer, context: FileUploadService.Context): Promise<void>;
|
|
63
|
+
protected indexCustomDataTransfer(targetUri: URI, dataTransfer: CustomDataTransfer, context: FileUploadService.Context): Promise<void>;
|
|
64
|
+
protected indexFileList(targetUri: URI, files: FileList, context: FileUploadService.Context): Promise<void>;
|
|
65
|
+
protected indexFile(targetUri: URI, file: File, context: FileUploadService.Context): Promise<void>;
|
|
66
|
+
protected indexDataTransferItemList(targetUri: URI, items: DataTransferItemList, context: FileUploadService.Context): Promise<void>;
|
|
67
|
+
protected indexEntry(targetUri: URI, entry: WebKitEntry | null, context: FileUploadService.Context): Promise<void>;
|
|
68
|
+
/**
|
|
69
|
+
* Read all entries within a folder by block of 100 files or folders until the
|
|
70
|
+
* whole folder has been read.
|
|
71
|
+
*/
|
|
72
|
+
protected indexDirectoryEntry(targetUri: URI, entry: WebKitDirectoryEntry, context: FileUploadService.Context): Promise<void>;
|
|
73
|
+
protected indexEntries(targetUri: URI, entries: WebKitEntry[], context: FileUploadService.Context): Promise<void>;
|
|
74
|
+
protected indexFileEntry(targetUri: URI, entry: WebKitFileEntry, context: FileUploadService.Context): Promise<void>;
|
|
75
|
+
}
|
|
76
|
+
export {};
|
|
77
|
+
//# sourceMappingURL=file-upload-service-impl.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"file-upload-service-impl.d.ts","sourceRoot":"","sources":["../../../src/browser/upload/file-upload-service-impl.ts"],"names":[],"mappings":"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"}
|