@sinoia/hubdoc-tools 1.3.10 → 1.5.1
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/README.md +147 -243
- package/cli.js +89268 -0
- package/docs/llm-usage.md +314 -0
- package/package.json +29 -100
- package/LICENSE +0 -21
- package/dist/__tests__/fixtures/plugins/connection-plugin/index.d.ts +0 -15
- package/dist/__tests__/fixtures/plugins/connection-plugin/index.d.ts.map +0 -1
- package/dist/__tests__/fixtures/plugins/connection-plugin/index.js +0 -37
- package/dist/__tests__/fixtures/plugins/connection-plugin/index.js.map +0 -1
- package/dist/__tests__/fixtures/plugins/scan-plugin/index.d.ts +0 -15
- package/dist/__tests__/fixtures/plugins/scan-plugin/index.d.ts.map +0 -1
- package/dist/__tests__/fixtures/plugins/scan-plugin/index.js +0 -54
- package/dist/__tests__/fixtures/plugins/scan-plugin/index.js.map +0 -1
- package/dist/__tests__/fixtures/plugins/test-plugin/index.d.ts +0 -15
- package/dist/__tests__/fixtures/plugins/test-plugin/index.d.ts.map +0 -1
- package/dist/__tests__/fixtures/plugins/test-plugin/index.js +0 -34
- package/dist/__tests__/fixtures/plugins/test-plugin/index.js.map +0 -1
- package/dist/__tests__/fixtures/plugins/workflow-plugin/index.d.ts +0 -16
- package/dist/__tests__/fixtures/plugins/workflow-plugin/index.d.ts.map +0 -1
- package/dist/__tests__/fixtures/plugins/workflow-plugin/index.js +0 -145
- package/dist/__tests__/fixtures/plugins/workflow-plugin/index.js.map +0 -1
- package/dist/api/api/authentication-api.d.ts +0 -208
- package/dist/api/api/authentication-api.d.ts.map +0 -1
- package/dist/api/api/authentication-api.js +0 -385
- package/dist/api/api/authentication-api.js.map +0 -1
- package/dist/api/api/bulk-uploads-api.d.ts +0 -101
- package/dist/api/api/bulk-uploads-api.d.ts.map +0 -1
- package/dist/api/api/bulk-uploads-api.js +0 -195
- package/dist/api/api/bulk-uploads-api.js.map +0 -1
- package/dist/api/api/chunked-uploads-api.d.ts +0 -214
- package/dist/api/api/chunked-uploads-api.d.ts.map +0 -1
- package/dist/api/api/chunked-uploads-api.js +0 -420
- package/dist/api/api/chunked-uploads-api.js.map +0 -1
- package/dist/api/api/contacts-api.d.ts +0 -246
- package/dist/api/api/contacts-api.d.ts.map +0 -1
- package/dist/api/api/contacts-api.js +0 -465
- package/dist/api/api/contacts-api.js.map +0 -1
- package/dist/api/api/documents-api.d.ts +0 -267
- package/dist/api/api/documents-api.d.ts.map +0 -1
- package/dist/api/api/documents-api.js +0 -506
- package/dist/api/api/documents-api.js.map +0 -1
- package/dist/api/api/folders-api.d.ts +0 -255
- package/dist/api/api/folders-api.d.ts.map +0 -1
- package/dist/api/api/folders-api.js +0 -479
- package/dist/api/api/folders-api.js.map +0 -1
- package/dist/api/api/groups-api.d.ts +0 -246
- package/dist/api/api/groups-api.d.ts.map +0 -1
- package/dist/api/api/groups-api.js +0 -465
- package/dist/api/api/groups-api.js.map +0 -1
- package/dist/api/api/permissions-api.d.ts +0 -246
- package/dist/api/api/permissions-api.d.ts.map +0 -1
- package/dist/api/api/permissions-api.js +0 -465
- package/dist/api/api/permissions-api.js.map +0 -1
- package/dist/api/api/users-api.d.ts +0 -246
- package/dist/api/api/users-api.d.ts.map +0 -1
- package/dist/api/api/users-api.js +0 -465
- package/dist/api/api/users-api.js.map +0 -1
- package/dist/api/api/workspaces-api.d.ts +0 -213
- package/dist/api/api/workspaces-api.d.ts.map +0 -1
- package/dist/api/api/workspaces-api.js +0 -424
- package/dist/api/api/workspaces-api.js.map +0 -1
- package/dist/api/api.d.ts +0 -22
- package/dist/api/api.d.ts.map +0 -1
- package/dist/api/api.js +0 -40
- package/dist/api/api.js.map +0 -1
- package/dist/api/base.d.ts +0 -43
- package/dist/api/base.d.ts.map +0 -1
- package/dist/api/base.js +0 -49
- package/dist/api/base.js.map +0 -1
- package/dist/api/common.d.ts +0 -29
- package/dist/api/common.d.ts.map +0 -1
- package/dist/api/common.js +0 -109
- package/dist/api/common.js.map +0 -1
- package/dist/api/configuration.d.ts +0 -99
- package/dist/api/configuration.d.ts.map +0 -1
- package/dist/api/configuration.js +0 -49
- package/dist/api/configuration.js.map +0 -1
- package/dist/api/index.d.ts +0 -15
- package/dist/api/index.d.ts.map +0 -1
- package/dist/api/index.js +0 -33
- package/dist/api/index.js.map +0 -1
- package/dist/api/models/api-v1-documents-chunked-uploads-id-cancel-delete200-response-data.d.ts +0 -19
- package/dist/api/models/api-v1-documents-chunked-uploads-id-cancel-delete200-response-data.d.ts.map +0 -1
- package/dist/api/models/api-v1-documents-chunked-uploads-id-cancel-delete200-response-data.js +0 -20
- package/dist/api/models/api-v1-documents-chunked-uploads-id-cancel-delete200-response-data.js.map +0 -1
- package/dist/api/models/api-v1-documents-chunked-uploads-id-cancel-delete200-response.d.ts +0 -17
- package/dist/api/models/api-v1-documents-chunked-uploads-id-cancel-delete200-response.d.ts.map +0 -1
- package/dist/api/models/api-v1-documents-chunked-uploads-id-cancel-delete200-response.js +0 -16
- package/dist/api/models/api-v1-documents-chunked-uploads-id-cancel-delete200-response.js.map +0 -1
- package/dist/api/models/api-v1-documents-chunked-uploads-id-cancel-delete422-response.d.ts +0 -16
- package/dist/api/models/api-v1-documents-chunked-uploads-id-cancel-delete422-response.d.ts.map +0 -1
- package/dist/api/models/api-v1-documents-chunked-uploads-id-cancel-delete422-response.js +0 -16
- package/dist/api/models/api-v1-documents-chunked-uploads-id-cancel-delete422-response.js.map +0 -1
- package/dist/api/models/api-v1-documents-chunked-uploads-id-chunks-chunk-number-patch200-response.d.ts +0 -17
- package/dist/api/models/api-v1-documents-chunked-uploads-id-chunks-chunk-number-patch200-response.d.ts.map +0 -1
- package/dist/api/models/api-v1-documents-chunked-uploads-id-chunks-chunk-number-patch200-response.js +0 -16
- package/dist/api/models/api-v1-documents-chunked-uploads-id-chunks-chunk-number-patch200-response.js.map +0 -1
- package/dist/api/models/api-v1-documents-chunked-uploads-id-chunks-chunk-number-patch400-response.d.ts +0 -16
- package/dist/api/models/api-v1-documents-chunked-uploads-id-chunks-chunk-number-patch400-response.d.ts.map +0 -1
- package/dist/api/models/api-v1-documents-chunked-uploads-id-chunks-chunk-number-patch400-response.js +0 -16
- package/dist/api/models/api-v1-documents-chunked-uploads-id-chunks-chunk-number-patch400-response.js.map +0 -1
- package/dist/api/models/api-v1-documents-chunked-uploads-id-chunks-chunk-number-patch410-response.d.ts +0 -16
- package/dist/api/models/api-v1-documents-chunked-uploads-id-chunks-chunk-number-patch410-response.d.ts.map +0 -1
- package/dist/api/models/api-v1-documents-chunked-uploads-id-chunks-chunk-number-patch410-response.js +0 -16
- package/dist/api/models/api-v1-documents-chunked-uploads-id-chunks-chunk-number-patch410-response.js.map +0 -1
- package/dist/api/models/api-v1-documents-chunked-uploads-id-chunks-chunk-number-patch422-response.d.ts +0 -16
- package/dist/api/models/api-v1-documents-chunked-uploads-id-chunks-chunk-number-patch422-response.d.ts.map +0 -1
- package/dist/api/models/api-v1-documents-chunked-uploads-id-chunks-chunk-number-patch422-response.js +0 -16
- package/dist/api/models/api-v1-documents-chunked-uploads-id-chunks-chunk-number-patch422-response.js.map +0 -1
- package/dist/api/models/api-v1-documents-chunked-uploads-id-complete-post200-response.d.ts +0 -17
- package/dist/api/models/api-v1-documents-chunked-uploads-id-complete-post200-response.d.ts.map +0 -1
- package/dist/api/models/api-v1-documents-chunked-uploads-id-complete-post200-response.js +0 -16
- package/dist/api/models/api-v1-documents-chunked-uploads-id-complete-post200-response.js.map +0 -1
- package/dist/api/models/api-v1-documents-chunked-uploads-id-complete-post422-response.d.ts +0 -16
- package/dist/api/models/api-v1-documents-chunked-uploads-id-complete-post422-response.d.ts.map +0 -1
- package/dist/api/models/api-v1-documents-chunked-uploads-id-complete-post422-response.js +0 -16
- package/dist/api/models/api-v1-documents-chunked-uploads-id-complete-post422-response.js.map +0 -1
- package/dist/api/models/api-v1-documents-chunked-uploads-id-status-get200-response.d.ts +0 -17
- package/dist/api/models/api-v1-documents-chunked-uploads-id-status-get200-response.d.ts.map +0 -1
- package/dist/api/models/api-v1-documents-chunked-uploads-id-status-get200-response.js +0 -16
- package/dist/api/models/api-v1-documents-chunked-uploads-id-status-get200-response.js.map +0 -1
- package/dist/api/models/api-v1-documents-chunked-uploads-id-status-get404-response.d.ts +0 -16
- package/dist/api/models/api-v1-documents-chunked-uploads-id-status-get404-response.d.ts.map +0 -1
- package/dist/api/models/api-v1-documents-chunked-uploads-id-status-get404-response.js +0 -16
- package/dist/api/models/api-v1-documents-chunked-uploads-id-status-get404-response.js.map +0 -1
- package/dist/api/models/api-v1-documents-chunked-uploads-post201-response.d.ts +0 -17
- package/dist/api/models/api-v1-documents-chunked-uploads-post201-response.d.ts.map +0 -1
- package/dist/api/models/api-v1-documents-chunked-uploads-post201-response.js +0 -16
- package/dist/api/models/api-v1-documents-chunked-uploads-post201-response.js.map +0 -1
- package/dist/api/models/api-v1-documents-documents-post-request1.d.ts +0 -34
- package/dist/api/models/api-v1-documents-documents-post-request1.d.ts.map +0 -1
- package/dist/api/models/api-v1-documents-documents-post-request1.js +0 -16
- package/dist/api/models/api-v1-documents-documents-post-request1.js.map +0 -1
- package/dist/api/models/api-v1-documents-documents-post201-response.d.ts +0 -17
- package/dist/api/models/api-v1-documents-documents-post201-response.d.ts.map +0 -1
- package/dist/api/models/api-v1-documents-documents-post201-response.js +0 -16
- package/dist/api/models/api-v1-documents-documents-post201-response.js.map +0 -1
- package/dist/api/models/api-v1-documents-folders-id-get200-response-all-of-items-inner-one-of.d.ts +0 -17
- package/dist/api/models/api-v1-documents-folders-id-get200-response-all-of-items-inner-one-of.d.ts.map +0 -1
- package/dist/api/models/api-v1-documents-folders-id-get200-response-all-of-items-inner-one-of.js +0 -16
- package/dist/api/models/api-v1-documents-folders-id-get200-response-all-of-items-inner-one-of.js.map +0 -1
- package/dist/api/models/api-v1-documents-folders-id-get200-response-all-of-items-inner-one-of1.d.ts +0 -17
- package/dist/api/models/api-v1-documents-folders-id-get200-response-all-of-items-inner-one-of1.d.ts.map +0 -1
- package/dist/api/models/api-v1-documents-folders-id-get200-response-all-of-items-inner-one-of1.js +0 -16
- package/dist/api/models/api-v1-documents-folders-id-get200-response-all-of-items-inner-one-of1.js.map +0 -1
- package/dist/api/models/api-v1-documents-folders-id-get200-response-all-of-items-inner.d.ts +0 -18
- package/dist/api/models/api-v1-documents-folders-id-get200-response-all-of-items-inner.d.ts.map +0 -1
- package/dist/api/models/api-v1-documents-folders-id-get200-response-all-of-items-inner.js +0 -16
- package/dist/api/models/api-v1-documents-folders-id-get200-response-all-of-items-inner.js.map +0 -1
- package/dist/api/models/api-v1-documents-folders-id-get200-response.d.ts +0 -17
- package/dist/api/models/api-v1-documents-folders-id-get200-response.d.ts.map +0 -1
- package/dist/api/models/api-v1-documents-folders-id-get200-response.js +0 -16
- package/dist/api/models/api-v1-documents-folders-id-get200-response.js.map +0 -1
- package/dist/api/models/bulk-upload-mutation.d.ts +0 -34
- package/dist/api/models/bulk-upload-mutation.d.ts.map +0 -1
- package/dist/api/models/bulk-upload-mutation.js +0 -16
- package/dist/api/models/bulk-upload-mutation.js.map +0 -1
- package/dist/api/models/bulk-upload.d.ts +0 -91
- package/dist/api/models/bulk-upload.d.ts.map +0 -1
- package/dist/api/models/bulk-upload.js +0 -23
- package/dist/api/models/bulk-upload.js.map +0 -1
- package/dist/api/models/chunked-upload-chunk-response.d.ts +0 -46
- package/dist/api/models/chunked-upload-chunk-response.d.ts.map +0 -1
- package/dist/api/models/chunked-upload-chunk-response.js +0 -21
- package/dist/api/models/chunked-upload-chunk-response.js.map +0 -1
- package/dist/api/models/chunked-upload-complete-request.d.ts +0 -21
- package/dist/api/models/chunked-upload-complete-request.d.ts.map +0 -1
- package/dist/api/models/chunked-upload-complete-request.js +0 -16
- package/dist/api/models/chunked-upload-complete-request.js.map +0 -1
- package/dist/api/models/chunked-upload-complete-response.d.ts +0 -37
- package/dist/api/models/chunked-upload-complete-response.d.ts.map +0 -1
- package/dist/api/models/chunked-upload-complete-response.js +0 -20
- package/dist/api/models/chunked-upload-complete-response.js.map +0 -1
- package/dist/api/models/chunked-upload-mutation.d.ts +0 -47
- package/dist/api/models/chunked-upload-mutation.d.ts.map +0 -1
- package/dist/api/models/chunked-upload-mutation.js +0 -16
- package/dist/api/models/chunked-upload-mutation.js.map +0 -1
- package/dist/api/models/chunked-upload-session-response.d.ts +0 -33
- package/dist/api/models/chunked-upload-session-response.d.ts.map +0 -1
- package/dist/api/models/chunked-upload-session-response.js +0 -16
- package/dist/api/models/chunked-upload-session-response.js.map +0 -1
- package/dist/api/models/chunked-upload-status-response.d.ts +0 -54
- package/dist/api/models/chunked-upload-status-response.d.ts.map +0 -1
- package/dist/api/models/chunked-upload-status-response.js +0 -25
- package/dist/api/models/chunked-upload-status-response.js.map +0 -1
- package/dist/api/models/chunked-upload.d.ts +0 -98
- package/dist/api/models/chunked-upload.d.ts.map +0 -1
- package/dist/api/models/chunked-upload.js +0 -25
- package/dist/api/models/chunked-upload.js.map +0 -1
- package/dist/api/models/contact-mutation.d.ts +0 -30
- package/dist/api/models/contact-mutation.d.ts.map +0 -1
- package/dist/api/models/contact-mutation.js +0 -16
- package/dist/api/models/contact-mutation.js.map +0 -1
- package/dist/api/models/contact.d.ts +0 -54
- package/dist/api/models/contact.d.ts.map +0 -1
- package/dist/api/models/contact.js +0 -16
- package/dist/api/models/contact.js.map +0 -1
- package/dist/api/models/document-document-type.d.ts +0 -19
- package/dist/api/models/document-document-type.d.ts.map +0 -1
- package/dist/api/models/document-document-type.js +0 -16
- package/dist/api/models/document-document-type.js.map +0 -1
- package/dist/api/models/document-domain.d.ts +0 -19
- package/dist/api/models/document-domain.d.ts.map +0 -1
- package/dist/api/models/document-domain.js +0 -16
- package/dist/api/models/document-domain.js.map +0 -1
- package/dist/api/models/document-folder.d.ts +0 -19
- package/dist/api/models/document-folder.d.ts.map +0 -1
- package/dist/api/models/document-folder.js +0 -16
- package/dist/api/models/document-folder.js.map +0 -1
- package/dist/api/models/document-mutation.d.ts +0 -50
- package/dist/api/models/document-mutation.d.ts.map +0 -1
- package/dist/api/models/document-mutation.js +0 -16
- package/dist/api/models/document-mutation.js.map +0 -1
- package/dist/api/models/document.d.ts +0 -73
- package/dist/api/models/document.d.ts.map +0 -1
- package/dist/api/models/document.js +0 -16
- package/dist/api/models/document.js.map +0 -1
- package/dist/api/models/folder-mutation.d.ts +0 -38
- package/dist/api/models/folder-mutation.d.ts.map +0 -1
- package/dist/api/models/folder-mutation.js +0 -16
- package/dist/api/models/folder-mutation.js.map +0 -1
- package/dist/api/models/folder-parent.d.ts +0 -19
- package/dist/api/models/folder-parent.d.ts.map +0 -1
- package/dist/api/models/folder-parent.js +0 -16
- package/dist/api/models/folder-parent.js.map +0 -1
- package/dist/api/models/folder.d.ts +0 -65
- package/dist/api/models/folder.d.ts.map +0 -1
- package/dist/api/models/folder.js +0 -16
- package/dist/api/models/folder.js.map +0 -1
- package/dist/api/models/group-mutation.d.ts +0 -26
- package/dist/api/models/group-mutation.d.ts.map +0 -1
- package/dist/api/models/group-mutation.js +0 -16
- package/dist/api/models/group-mutation.js.map +0 -1
- package/dist/api/models/group.d.ts +0 -38
- package/dist/api/models/group.d.ts.map +0 -1
- package/dist/api/models/group.js +0 -16
- package/dist/api/models/group.js.map +0 -1
- package/dist/api/models/index.d.ts +0 -55
- package/dist/api/models/index.d.ts.map +0 -1
- package/dist/api/models/index.js +0 -71
- package/dist/api/models/index.js.map +0 -1
- package/dist/api/models/model-error.d.ts +0 -26
- package/dist/api/models/model-error.d.ts.map +0 -1
- package/dist/api/models/model-error.js +0 -16
- package/dist/api/models/model-error.js.map +0 -1
- package/dist/api/models/oauth-revoke-post200-response.d.ts +0 -15
- package/dist/api/models/oauth-revoke-post200-response.d.ts.map +0 -1
- package/dist/api/models/oauth-revoke-post200-response.js +0 -16
- package/dist/api/models/oauth-revoke-post200-response.js.map +0 -1
- package/dist/api/models/permission-actor.d.ts +0 -20
- package/dist/api/models/permission-actor.d.ts.map +0 -1
- package/dist/api/models/permission-actor.js +0 -16
- package/dist/api/models/permission-actor.js.map +0 -1
- package/dist/api/models/permission-mutation.d.ts +0 -44
- package/dist/api/models/permission-mutation.d.ts.map +0 -1
- package/dist/api/models/permission-mutation.js +0 -22
- package/dist/api/models/permission-mutation.js.map +0 -1
- package/dist/api/models/permission-permissible.d.ts +0 -20
- package/dist/api/models/permission-permissible.d.ts.map +0 -1
- package/dist/api/models/permission-permissible.js +0 -16
- package/dist/api/models/permission-permissible.js.map +0 -1
- package/dist/api/models/permission.d.ts +0 -60
- package/dist/api/models/permission.d.ts.map +0 -1
- package/dist/api/models/permission.js +0 -22
- package/dist/api/models/permission.js.map +0 -1
- package/dist/api/models/token-response.d.ts +0 -41
- package/dist/api/models/token-response.d.ts.map +0 -1
- package/dist/api/models/token-response.js +0 -16
- package/dist/api/models/token-response.js.map +0 -1
- package/dist/api/models/user-mutation.d.ts +0 -45
- package/dist/api/models/user-mutation.d.ts.map +0 -1
- package/dist/api/models/user-mutation.js +0 -23
- package/dist/api/models/user-mutation.js.map +0 -1
- package/dist/api/models/user.d.ts +0 -61
- package/dist/api/models/user.d.ts.map +0 -1
- package/dist/api/models/user.js +0 -23
- package/dist/api/models/user.js.map +0 -1
- package/dist/api/models/workspace-mutation-settings-validation.d.ts +0 -26
- package/dist/api/models/workspace-mutation-settings-validation.d.ts.map +0 -1
- package/dist/api/models/workspace-mutation-settings-validation.js +0 -16
- package/dist/api/models/workspace-mutation-settings-validation.js.map +0 -1
- package/dist/api/models/workspace-mutation-settings.d.ts +0 -60
- package/dist/api/models/workspace-mutation-settings.d.ts.map +0 -1
- package/dist/api/models/workspace-mutation-settings.js +0 -16
- package/dist/api/models/workspace-mutation-settings.js.map +0 -1
- package/dist/api/models/workspace-mutation.d.ts +0 -44
- package/dist/api/models/workspace-mutation.d.ts.map +0 -1
- package/dist/api/models/workspace-mutation.js +0 -16
- package/dist/api/models/workspace-mutation.js.map +0 -1
- package/dist/api/models/workspace-settings-validation.d.ts +0 -26
- package/dist/api/models/workspace-settings-validation.d.ts.map +0 -1
- package/dist/api/models/workspace-settings-validation.js +0 -16
- package/dist/api/models/workspace-settings-validation.js.map +0 -1
- package/dist/api/models/workspace-settings.d.ts +0 -60
- package/dist/api/models/workspace-settings.d.ts.map +0 -1
- package/dist/api/models/workspace-settings.js +0 -16
- package/dist/api/models/workspace-settings.js.map +0 -1
- package/dist/api/models/workspace.d.ts +0 -62
- package/dist/api/models/workspace.d.ts.map +0 -1
- package/dist/api/models/workspace.js +0 -16
- package/dist/api/models/workspace.js.map +0 -1
- package/dist/api-client.d.ts +0 -19
- package/dist/api-client.d.ts.map +0 -1
- package/dist/api-client.js +0 -43
- package/dist/api-client.js.map +0 -1
- package/dist/cli/handlers/command-handlers.d.ts +0 -29
- package/dist/cli/handlers/command-handlers.d.ts.map +0 -1
- package/dist/cli/handlers/command-handlers.js +0 -261
- package/dist/cli/handlers/command-handlers.js.map +0 -1
- package/dist/cli/handlers/engine-handlers.d.ts +0 -15
- package/dist/cli/handlers/engine-handlers.d.ts.map +0 -1
- package/dist/cli/handlers/engine-handlers.js +0 -174
- package/dist/cli/handlers/engine-handlers.js.map +0 -1
- package/dist/cli/interactive.d.ts +0 -15
- package/dist/cli/interactive.d.ts.map +0 -1
- package/dist/cli/interactive.js +0 -234
- package/dist/cli/interactive.js.map +0 -1
- package/dist/cli.d.ts +0 -3
- package/dist/cli.d.ts.map +0 -1
- package/dist/cli.js +0 -203
- package/dist/cli.js.map +0 -1
- package/dist/commands/export.d.ts +0 -15
- package/dist/commands/export.d.ts.map +0 -1
- package/dist/commands/export.js +0 -188
- package/dist/commands/export.js.map +0 -1
- package/dist/commands/import.d.ts +0 -32
- package/dist/commands/import.d.ts.map +0 -1
- package/dist/commands/import.js +0 -315
- package/dist/commands/import.js.map +0 -1
- package/dist/index.d.ts +0 -31
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js +0 -72
- package/dist/index.js.map +0 -1
- package/dist/plugins/alfresco/index.d.ts +0 -26
- package/dist/plugins/alfresco/index.d.ts.map +0 -1
- package/dist/plugins/alfresco/index.js +0 -405
- package/dist/plugins/alfresco/index.js.map +0 -1
- package/dist/plugins/alfresco/plugin.json +0 -12
- package/dist/plugins/aws-s3/index.d.ts +0 -23
- package/dist/plugins/aws-s3/index.d.ts.map +0 -1
- package/dist/plugins/aws-s3/index.js +0 -383
- package/dist/plugins/aws-s3/index.js.map +0 -1
- package/dist/plugins/aws-s3/plugin.json +0 -12
- package/dist/plugins/azure-blob/index.d.ts +0 -23
- package/dist/plugins/azure-blob/index.d.ts.map +0 -1
- package/dist/plugins/azure-blob/index.js +0 -340
- package/dist/plugins/azure-blob/index.js.map +0 -1
- package/dist/plugins/azure-blob/plugin.json +0 -12
- package/dist/plugins/box/index.d.ts +0 -26
- package/dist/plugins/box/index.d.ts.map +0 -1
- package/dist/plugins/box/index.js +0 -387
- package/dist/plugins/box/index.js.map +0 -1
- package/dist/plugins/box/plugin.json +0 -12
- package/dist/plugins/core/index.d.ts +0 -25
- package/dist/plugins/core/index.d.ts.map +0 -1
- package/dist/plugins/core/index.js +0 -400
- package/dist/plugins/core/index.js.map +0 -1
- package/dist/plugins/core/plugin.json +0 -26
- package/dist/plugins/dropbox/index.d.ts +0 -27
- package/dist/plugins/dropbox/index.d.ts.map +0 -1
- package/dist/plugins/dropbox/index.js +0 -375
- package/dist/plugins/dropbox/index.js.map +0 -1
- package/dist/plugins/dropbox/plugin.json +0 -12
- package/dist/plugins/filesystem/index.d.ts +0 -22
- package/dist/plugins/filesystem/index.d.ts.map +0 -1
- package/dist/plugins/filesystem/index.js +0 -306
- package/dist/plugins/filesystem/index.js.map +0 -1
- package/dist/plugins/filesystem/plugin.json +0 -12
- package/dist/plugins/googledrive/index.d.ts +0 -27
- package/dist/plugins/googledrive/index.d.ts.map +0 -1
- package/dist/plugins/googledrive/index.js +0 -383
- package/dist/plugins/googledrive/index.js.map +0 -1
- package/dist/plugins/googledrive/plugin.json +0 -12
- package/dist/plugins/nuxeo/index.d.ts +0 -24
- package/dist/plugins/nuxeo/index.d.ts.map +0 -1
- package/dist/plugins/nuxeo/index.js +0 -405
- package/dist/plugins/nuxeo/index.js.map +0 -1
- package/dist/plugins/nuxeo/plugin.json +0 -12
- package/dist/plugins/onedrive/index.d.ts +0 -25
- package/dist/plugins/onedrive/index.d.ts.map +0 -1
- package/dist/plugins/onedrive/index.js +0 -362
- package/dist/plugins/onedrive/index.js.map +0 -1
- package/dist/plugins/onedrive/plugin.json +0 -12
- package/dist/plugins/opentext/index.d.ts +0 -26
- package/dist/plugins/opentext/index.d.ts.map +0 -1
- package/dist/plugins/opentext/index.js +0 -440
- package/dist/plugins/opentext/index.js.map +0 -1
- package/dist/plugins/opentext/plugin.json +0 -12
- package/dist/plugins/sharepoint/index.d.ts +0 -27
- package/dist/plugins/sharepoint/index.d.ts.map +0 -1
- package/dist/plugins/sharepoint/index.js +0 -397
- package/dist/plugins/sharepoint/index.js.map +0 -1
- package/dist/plugins/sharepoint/plugin.json +0 -12
- package/dist/services/chunked-uploader.d.ts +0 -83
- package/dist/services/chunked-uploader.d.ts.map +0 -1
- package/dist/services/chunked-uploader.js +0 -321
- package/dist/services/chunked-uploader.js.map +0 -1
- package/dist/services/hubdoc-api.d.ts +0 -43
- package/dist/services/hubdoc-api.d.ts.map +0 -1
- package/dist/services/hubdoc-api.js +0 -382
- package/dist/services/hubdoc-api.js.map +0 -1
- package/dist/services/hubdoc-export.d.ts +0 -17
- package/dist/services/hubdoc-export.d.ts.map +0 -1
- package/dist/services/hubdoc-export.js +0 -196
- package/dist/services/hubdoc-export.js.map +0 -1
- package/dist/services/oauth-token-service.d.ts +0 -74
- package/dist/services/oauth-token-service.d.ts.map +0 -1
- package/dist/services/oauth-token-service.js +0 -344
- package/dist/services/oauth-token-service.js.map +0 -1
- package/dist/services/permission-manager.d.ts +0 -42
- package/dist/services/permission-manager.d.ts.map +0 -1
- package/dist/services/permission-manager.js +0 -187
- package/dist/services/permission-manager.js.map +0 -1
- package/dist/services/plugin-import.d.ts +0 -64
- package/dist/services/plugin-import.d.ts.map +0 -1
- package/dist/services/plugin-import.js +0 -284
- package/dist/services/plugin-import.js.map +0 -1
- package/dist/services/plugin-manager.d.ts +0 -73
- package/dist/services/plugin-manager.d.ts.map +0 -1
- package/dist/services/plugin-manager.js +0 -306
- package/dist/services/plugin-manager.js.map +0 -1
- package/dist/src/types/plugins.d.ts +0 -111
- package/dist/src/types/plugins.d.ts.map +0 -1
- package/dist/src/types/plugins.js +0 -3
- package/dist/src/types/plugins.js.map +0 -1
- package/dist/src/utils/concurrent-processor.d.ts +0 -63
- package/dist/src/utils/concurrent-processor.d.ts.map +0 -1
- package/dist/src/utils/concurrent-processor.js +0 -240
- package/dist/src/utils/concurrent-processor.js.map +0 -1
- package/dist/src/utils/xml-metadata.d.ts +0 -47
- package/dist/src/utils/xml-metadata.d.ts.map +0 -1
- package/dist/src/utils/xml-metadata.js +0 -200
- package/dist/src/utils/xml-metadata.js.map +0 -1
- package/dist/types/export.d.ts +0 -44
- package/dist/types/export.d.ts.map +0 -1
- package/dist/types/export.js +0 -3
- package/dist/types/export.js.map +0 -1
- package/dist/types/index.d.ts +0 -77
- package/dist/types/index.d.ts.map +0 -1
- package/dist/types/index.js +0 -3
- package/dist/types/index.js.map +0 -1
- package/dist/types/plugins.d.ts +0 -111
- package/dist/types/plugins.d.ts.map +0 -1
- package/dist/types/plugins.js +0 -3
- package/dist/types/plugins.js.map +0 -1
- package/dist/utils/concurrent-processor.d.ts +0 -63
- package/dist/utils/concurrent-processor.d.ts.map +0 -1
- package/dist/utils/concurrent-processor.js +0 -240
- package/dist/utils/concurrent-processor.js.map +0 -1
- package/dist/utils/config.d.ts +0 -40
- package/dist/utils/config.d.ts.map +0 -1
- package/dist/utils/config.js +0 -249
- package/dist/utils/config.js.map +0 -1
- package/dist/utils/csv.d.ts +0 -90
- package/dist/utils/csv.d.ts.map +0 -1
- package/dist/utils/csv.js +0 -564
- package/dist/utils/csv.js.map +0 -1
- package/dist/utils/export-csv.d.ts +0 -14
- package/dist/utils/export-csv.d.ts.map +0 -1
- package/dist/utils/export-csv.js +0 -129
- package/dist/utils/export-csv.js.map +0 -1
- package/dist/utils/operation-logger.d.ts +0 -110
- package/dist/utils/operation-logger.d.ts.map +0 -1
- package/dist/utils/operation-logger.js +0 -226
- package/dist/utils/operation-logger.js.map +0 -1
- package/dist/utils/xml-metadata-generator.d.ts +0 -50
- package/dist/utils/xml-metadata-generator.d.ts.map +0 -1
- package/dist/utils/xml-metadata-generator.js +0 -162
- package/dist/utils/xml-metadata-generator.js.map +0 -1
- package/dist/utils/xml-metadata.d.ts +0 -47
- package/dist/utils/xml-metadata.d.ts.map +0 -1
- package/dist/utils/xml-metadata.js +0 -200
- package/dist/utils/xml-metadata.js.map +0 -1
|
@@ -1,397 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const axios_1 = __importDefault(require("axios"));
|
|
7
|
-
const fs_extra_1 = __importDefault(require("fs-extra"));
|
|
8
|
-
const path_1 = __importDefault(require("path"));
|
|
9
|
-
class SharePointPlugin {
|
|
10
|
-
constructor() {
|
|
11
|
-
this.name = 'sharepoint';
|
|
12
|
-
this.version = '1.0.0';
|
|
13
|
-
this.description = 'SharePoint Online document source';
|
|
14
|
-
this.supportedOperations = ['import', 'export', 'both'];
|
|
15
|
-
this.baseUrl = 'https://graph.microsoft.com/v1.0';
|
|
16
|
-
}
|
|
17
|
-
async testConnection(config) {
|
|
18
|
-
try {
|
|
19
|
-
const client = this.createApiClient(config);
|
|
20
|
-
const siteInfo = await this.getSiteInfo(client, config.siteUrl);
|
|
21
|
-
return !!siteInfo.id;
|
|
22
|
-
}
|
|
23
|
-
catch (error) {
|
|
24
|
-
console.error(`SharePoint connection test failed: ${error.message}`);
|
|
25
|
-
return false;
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
async scan(config, options) {
|
|
29
|
-
this.config = config;
|
|
30
|
-
this.apiClient = this.createApiClient(this.config);
|
|
31
|
-
const sources = [];
|
|
32
|
-
const errors = [];
|
|
33
|
-
let totalSize = 0;
|
|
34
|
-
try {
|
|
35
|
-
const limit = this.config.limit || options?.limit;
|
|
36
|
-
console.log(`🔍 Scanning SharePoint site${limit ? ` (limit: ${limit})` : ''}...`);
|
|
37
|
-
// Get site information
|
|
38
|
-
const siteInfo = await this.getSiteInfo(this.apiClient, this.config.siteUrl);
|
|
39
|
-
// Get drive ID (default drive or specified drive)
|
|
40
|
-
const driveId = this.config.driveId || await this.getDefaultDriveId(siteInfo.id);
|
|
41
|
-
// Scan items starting from root or specified folder
|
|
42
|
-
const startingFolderId = this.config.folderId || 'root';
|
|
43
|
-
const items = await this.scanDriveFolder(driveId, startingFolderId, '');
|
|
44
|
-
let processedCount = 0;
|
|
45
|
-
for (const item of items) {
|
|
46
|
-
if (item.file) {
|
|
47
|
-
const source = {
|
|
48
|
-
id: item.id,
|
|
49
|
-
name: item.name,
|
|
50
|
-
path: this.getItemPath(item),
|
|
51
|
-
size: item.size || 0,
|
|
52
|
-
mimeType: item.file.mimeType,
|
|
53
|
-
lastModified: new Date(item.lastModifiedDateTime),
|
|
54
|
-
metadata: {
|
|
55
|
-
sharepointId: item.id,
|
|
56
|
-
driveId: driveId,
|
|
57
|
-
createdAt: item.createdDateTime,
|
|
58
|
-
createdBy: item.createdBy.user.displayName,
|
|
59
|
-
modifiedBy: item.lastModifiedBy.user.displayName,
|
|
60
|
-
webUrl: item.webUrl,
|
|
61
|
-
quickXorHash: item.file.hashes?.quickXorHash,
|
|
62
|
-
sha1Hash: item.file.hashes?.sha1Hash
|
|
63
|
-
}
|
|
64
|
-
};
|
|
65
|
-
// Apply filters
|
|
66
|
-
if (this.shouldIncludeSource(source, options)) {
|
|
67
|
-
sources.push(source);
|
|
68
|
-
totalSize += source.size;
|
|
69
|
-
processedCount++;
|
|
70
|
-
// Check limit
|
|
71
|
-
if (limit && processedCount >= limit) {
|
|
72
|
-
console.log(`📏 Reached limit of ${limit} files`);
|
|
73
|
-
break;
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
return {
|
|
79
|
-
sources,
|
|
80
|
-
totalCount: sources.length,
|
|
81
|
-
totalSize,
|
|
82
|
-
errors
|
|
83
|
-
};
|
|
84
|
-
}
|
|
85
|
-
catch (error) {
|
|
86
|
-
return {
|
|
87
|
-
sources: [],
|
|
88
|
-
totalCount: 0,
|
|
89
|
-
totalSize: 0,
|
|
90
|
-
errors: [`SharePoint scan failed: ${error.message}`]
|
|
91
|
-
};
|
|
92
|
-
}
|
|
93
|
-
}
|
|
94
|
-
async scanDriveFolder(driveId, folderId, parentPath) {
|
|
95
|
-
if (!this.apiClient)
|
|
96
|
-
throw new Error('API client not initialized');
|
|
97
|
-
const allItems = [];
|
|
98
|
-
let nextLink = null;
|
|
99
|
-
try {
|
|
100
|
-
do {
|
|
101
|
-
const url = nextLink || `/drives/${driveId}/items/${folderId}/children`;
|
|
102
|
-
const response = await this.apiClient.get(url, {
|
|
103
|
-
params: nextLink ? {} : {
|
|
104
|
-
$expand: 'thumbnails',
|
|
105
|
-
$select: 'id,name,size,lastModifiedDateTime,createdDateTime,file,folder,createdBy,lastModifiedBy,parentReference,webUrl'
|
|
106
|
-
}
|
|
107
|
-
});
|
|
108
|
-
const items = response.data.value || [];
|
|
109
|
-
for (const item of items) {
|
|
110
|
-
const itemPath = parentPath ? `${parentPath}/${item.name}` : item.name;
|
|
111
|
-
if (item.file) {
|
|
112
|
-
// Add path information to the item
|
|
113
|
-
item.fullPath = itemPath;
|
|
114
|
-
allItems.push(item);
|
|
115
|
-
}
|
|
116
|
-
else if (item.folder) {
|
|
117
|
-
// Recursively scan subfolders
|
|
118
|
-
const subItems = await this.scanDriveFolder(driveId, item.id, itemPath);
|
|
119
|
-
allItems.push(...subItems);
|
|
120
|
-
}
|
|
121
|
-
}
|
|
122
|
-
nextLink = response.data['@odata.nextLink'] || null;
|
|
123
|
-
} while (nextLink);
|
|
124
|
-
return allItems;
|
|
125
|
-
}
|
|
126
|
-
catch (error) {
|
|
127
|
-
if (error.response?.status === 404) {
|
|
128
|
-
console.warn(`Warning: Folder not found: ${folderId}`);
|
|
129
|
-
return [];
|
|
130
|
-
}
|
|
131
|
-
throw error;
|
|
132
|
-
}
|
|
133
|
-
}
|
|
134
|
-
async import(config, sources, targetDir, options) {
|
|
135
|
-
this.config = config;
|
|
136
|
-
this.apiClient = this.createApiClient(this.config);
|
|
137
|
-
const results = [];
|
|
138
|
-
const batchSize = options?.batchSize || 5;
|
|
139
|
-
// Process in batches to respect API limits
|
|
140
|
-
for (let i = 0; i < sources.length; i += batchSize) {
|
|
141
|
-
const batch = sources.slice(i, i + batchSize);
|
|
142
|
-
for (const source of batch) {
|
|
143
|
-
const result = await this.importSingle(source, targetDir);
|
|
144
|
-
results.push(result);
|
|
145
|
-
// Small delay to respect rate limits
|
|
146
|
-
await this.sleep(200);
|
|
147
|
-
}
|
|
148
|
-
}
|
|
149
|
-
return results;
|
|
150
|
-
}
|
|
151
|
-
async importSingle(source, targetDir) {
|
|
152
|
-
try {
|
|
153
|
-
if (!this.apiClient)
|
|
154
|
-
throw new Error('API client not initialized');
|
|
155
|
-
const targetPath = path_1.default.join(targetDir, source.path);
|
|
156
|
-
const targetDirectory = path_1.default.dirname(targetPath);
|
|
157
|
-
await fs_extra_1.default.ensureDir(targetDirectory);
|
|
158
|
-
// Get the drive ID from metadata
|
|
159
|
-
const driveId = source.metadata?.driveId;
|
|
160
|
-
if (!driveId) {
|
|
161
|
-
throw new Error('Drive ID not found in source metadata');
|
|
162
|
-
}
|
|
163
|
-
// Download file content from SharePoint
|
|
164
|
-
const response = await this.apiClient.get(`/drives/${driveId}/items/${source.id}/content`, {
|
|
165
|
-
responseType: 'stream'
|
|
166
|
-
});
|
|
167
|
-
const writer = fs_extra_1.default.createWriteStream(targetPath);
|
|
168
|
-
response.data.pipe(writer);
|
|
169
|
-
return new Promise((resolve) => {
|
|
170
|
-
writer.on('finish', () => {
|
|
171
|
-
resolve({
|
|
172
|
-
success: true,
|
|
173
|
-
source,
|
|
174
|
-
localPath: targetPath,
|
|
175
|
-
bytesTransferred: source.size
|
|
176
|
-
});
|
|
177
|
-
});
|
|
178
|
-
writer.on('error', (error) => {
|
|
179
|
-
resolve({
|
|
180
|
-
success: false,
|
|
181
|
-
source,
|
|
182
|
-
error: error.message
|
|
183
|
-
});
|
|
184
|
-
});
|
|
185
|
-
});
|
|
186
|
-
}
|
|
187
|
-
catch (error) {
|
|
188
|
-
return {
|
|
189
|
-
success: false,
|
|
190
|
-
source,
|
|
191
|
-
error: error.message
|
|
192
|
-
};
|
|
193
|
-
}
|
|
194
|
-
}
|
|
195
|
-
async export(config, localSources, options) {
|
|
196
|
-
this.config = config;
|
|
197
|
-
this.apiClient = this.createApiClient(this.config);
|
|
198
|
-
const results = [];
|
|
199
|
-
try {
|
|
200
|
-
// Get site and drive information
|
|
201
|
-
const siteInfo = await this.getSiteInfo(this.apiClient, this.config.siteUrl);
|
|
202
|
-
const driveId = this.config.driveId || await this.getDefaultDriveId(siteInfo.id);
|
|
203
|
-
const rootFolderId = this.config.folderId || 'root';
|
|
204
|
-
for (const source of localSources) {
|
|
205
|
-
try {
|
|
206
|
-
// Determine target folder
|
|
207
|
-
let targetFolderId = rootFolderId;
|
|
208
|
-
if (options?.preserveStructure && source.path.includes('/')) {
|
|
209
|
-
const folderPath = path_1.default.dirname(source.path);
|
|
210
|
-
targetFolderId = await this.createFolderStructure(driveId, folderPath, rootFolderId);
|
|
211
|
-
}
|
|
212
|
-
// Read local file
|
|
213
|
-
const fileContent = await fs_extra_1.default.readFile(source.id);
|
|
214
|
-
// Normalize filename to NFC to handle accented characters consistently across platforms
|
|
215
|
-
const fileName = (options?.preserveStructure ? path_1.default.basename(source.path) : source.name).normalize('NFC');
|
|
216
|
-
// Upload file to SharePoint using simple upload (for files < 4MB)
|
|
217
|
-
// For larger files, we should use resumable upload sessions
|
|
218
|
-
const uploadUrl = `/drives/${driveId}/items/${targetFolderId}:/${fileName}:/content`;
|
|
219
|
-
await this.apiClient.put(uploadUrl, fileContent, {
|
|
220
|
-
headers: {
|
|
221
|
-
'Content-Type': source.mimeType || 'application/octet-stream'
|
|
222
|
-
}
|
|
223
|
-
});
|
|
224
|
-
const targetPath = options?.preserveStructure ? source.path : source.name;
|
|
225
|
-
results.push({
|
|
226
|
-
success: true,
|
|
227
|
-
targetPath,
|
|
228
|
-
source,
|
|
229
|
-
bytesTransferred: source.size
|
|
230
|
-
});
|
|
231
|
-
}
|
|
232
|
-
catch (error) {
|
|
233
|
-
results.push({
|
|
234
|
-
success: false,
|
|
235
|
-
targetPath: options?.targetPath || '',
|
|
236
|
-
source,
|
|
237
|
-
error: error.message
|
|
238
|
-
});
|
|
239
|
-
}
|
|
240
|
-
}
|
|
241
|
-
}
|
|
242
|
-
catch (error) {
|
|
243
|
-
// If we can't get site/drive info, fail all exports
|
|
244
|
-
for (const source of localSources) {
|
|
245
|
-
results.push({
|
|
246
|
-
success: false,
|
|
247
|
-
targetPath: options?.targetPath || '',
|
|
248
|
-
source,
|
|
249
|
-
error: `Failed to initialize SharePoint connection: ${error.message}`
|
|
250
|
-
});
|
|
251
|
-
}
|
|
252
|
-
}
|
|
253
|
-
return results;
|
|
254
|
-
}
|
|
255
|
-
async getSiteInfo(client, siteUrl) {
|
|
256
|
-
// Extract hostname and site path from URL
|
|
257
|
-
const url = new URL(siteUrl);
|
|
258
|
-
const hostname = url.hostname;
|
|
259
|
-
const sitePath = url.pathname;
|
|
260
|
-
const response = await client.get(`/sites/${hostname}:${sitePath}`);
|
|
261
|
-
return response.data;
|
|
262
|
-
}
|
|
263
|
-
async getDefaultDriveId(siteId) {
|
|
264
|
-
if (!this.apiClient)
|
|
265
|
-
throw new Error('API client not initialized');
|
|
266
|
-
const response = await this.apiClient.get(`/sites/${siteId}/drive`);
|
|
267
|
-
return response.data.id;
|
|
268
|
-
}
|
|
269
|
-
async createFolderStructure(driveId, folderPath, parentId) {
|
|
270
|
-
if (!this.apiClient)
|
|
271
|
-
throw new Error('API client not initialized');
|
|
272
|
-
const parts = folderPath.split('/').filter(part => part.length > 0);
|
|
273
|
-
let currentParentId = parentId;
|
|
274
|
-
for (const folderName of parts) {
|
|
275
|
-
try {
|
|
276
|
-
// Check if folder already exists
|
|
277
|
-
const searchUrl = `/drives/${driveId}/items/${currentParentId}/children`;
|
|
278
|
-
const response = await this.apiClient.get(searchUrl, {
|
|
279
|
-
params: {
|
|
280
|
-
$filter: `name eq '${folderName}' and folder ne null`
|
|
281
|
-
}
|
|
282
|
-
});
|
|
283
|
-
const existingFolder = response.data.value[0];
|
|
284
|
-
if (existingFolder) {
|
|
285
|
-
currentParentId = existingFolder.id;
|
|
286
|
-
}
|
|
287
|
-
else {
|
|
288
|
-
// Create new folder
|
|
289
|
-
const createResponse = await this.apiClient.post(`/drives/${driveId}/items/${currentParentId}/children`, {
|
|
290
|
-
name: folderName,
|
|
291
|
-
folder: {},
|
|
292
|
-
'@microsoft.graph.conflictBehavior': 'rename'
|
|
293
|
-
});
|
|
294
|
-
currentParentId = createResponse.data.id;
|
|
295
|
-
}
|
|
296
|
-
}
|
|
297
|
-
catch (error) {
|
|
298
|
-
throw new Error(`Failed to create folder structure: ${error.message}`);
|
|
299
|
-
}
|
|
300
|
-
}
|
|
301
|
-
return currentParentId;
|
|
302
|
-
}
|
|
303
|
-
getConfigSchema() {
|
|
304
|
-
return {
|
|
305
|
-
type: 'object',
|
|
306
|
-
properties: {
|
|
307
|
-
siteUrl: {
|
|
308
|
-
type: 'string',
|
|
309
|
-
description: 'SharePoint site URL (e.g., https://contoso.sharepoint.com/sites/mysite)',
|
|
310
|
-
required: true
|
|
311
|
-
},
|
|
312
|
-
accessToken: {
|
|
313
|
-
type: 'string',
|
|
314
|
-
description: 'Microsoft Graph API access token with SharePoint permissions',
|
|
315
|
-
required: true
|
|
316
|
-
},
|
|
317
|
-
driveId: {
|
|
318
|
-
type: 'string',
|
|
319
|
-
description: 'Specific drive ID to scan (optional, uses default site drive)',
|
|
320
|
-
required: false
|
|
321
|
-
},
|
|
322
|
-
folderId: {
|
|
323
|
-
type: 'string',
|
|
324
|
-
description: 'Starting folder ID (optional, defaults to drive root)',
|
|
325
|
-
required: false
|
|
326
|
-
},
|
|
327
|
-
limit: {
|
|
328
|
-
type: 'number',
|
|
329
|
-
description: 'Maximum number of documents to scan (useful for testing)',
|
|
330
|
-
required: false
|
|
331
|
-
}
|
|
332
|
-
},
|
|
333
|
-
required: ['siteUrl', 'accessToken']
|
|
334
|
-
};
|
|
335
|
-
}
|
|
336
|
-
async initialize(config) {
|
|
337
|
-
this.config = config;
|
|
338
|
-
if (!this.config.siteUrl || !this.config.accessToken) {
|
|
339
|
-
throw new Error('SharePoint site URL and access token are required');
|
|
340
|
-
}
|
|
341
|
-
this.apiClient = this.createApiClient(this.config);
|
|
342
|
-
}
|
|
343
|
-
async destroy() {
|
|
344
|
-
this.config = undefined;
|
|
345
|
-
this.apiClient = undefined;
|
|
346
|
-
}
|
|
347
|
-
createApiClient(config) {
|
|
348
|
-
return axios_1.default.create({
|
|
349
|
-
baseURL: this.baseUrl,
|
|
350
|
-
headers: {
|
|
351
|
-
'Authorization': `Bearer ${config.accessToken}`,
|
|
352
|
-
'Content-Type': 'application/json'
|
|
353
|
-
},
|
|
354
|
-
timeout: 30000
|
|
355
|
-
});
|
|
356
|
-
}
|
|
357
|
-
getItemPath(item) {
|
|
358
|
-
// Use the full path if available from scanning
|
|
359
|
-
if (item.fullPath) {
|
|
360
|
-
return item.fullPath;
|
|
361
|
-
}
|
|
362
|
-
// Construct path from parent reference
|
|
363
|
-
if (item.parentReference?.path) {
|
|
364
|
-
const pathParts = item.parentReference.path
|
|
365
|
-
.split('/root:/')
|
|
366
|
-
.pop()
|
|
367
|
-
?.split('/') || [];
|
|
368
|
-
pathParts.push(item.name);
|
|
369
|
-
return pathParts.filter(part => part.length > 0).join('/');
|
|
370
|
-
}
|
|
371
|
-
return item.name;
|
|
372
|
-
}
|
|
373
|
-
shouldIncludeSource(source, options) {
|
|
374
|
-
// Apply size filter
|
|
375
|
-
if (options?.filters?.maxSize && source.size > options.filters.maxSize) {
|
|
376
|
-
return false;
|
|
377
|
-
}
|
|
378
|
-
// Apply date range filter
|
|
379
|
-
if (options?.filters?.dateRange) {
|
|
380
|
-
const { from, to } = options.filters.dateRange;
|
|
381
|
-
if (from && source.lastModified < from)
|
|
382
|
-
return false;
|
|
383
|
-
if (to && source.lastModified > to)
|
|
384
|
-
return false;
|
|
385
|
-
}
|
|
386
|
-
// Apply MIME type filter
|
|
387
|
-
if (options?.filters?.mimeTypes && !options.filters.mimeTypes.includes(source.mimeType)) {
|
|
388
|
-
return false;
|
|
389
|
-
}
|
|
390
|
-
return true;
|
|
391
|
-
}
|
|
392
|
-
sleep(ms) {
|
|
393
|
-
return new Promise(resolve => setTimeout(resolve, ms));
|
|
394
|
-
}
|
|
395
|
-
}
|
|
396
|
-
exports.default = SharePointPlugin;
|
|
397
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../plugins/sharepoint/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "sharepoint",
|
|
3
|
-
"version": "1.0.0",
|
|
4
|
-
"description": "SharePoint document source plugin",
|
|
5
|
-
"author": "HubDoc Tools",
|
|
6
|
-
"main": "index.js",
|
|
7
|
-
"hubdocToolVersion": "^1.0.0",
|
|
8
|
-
"dependencies": {
|
|
9
|
-
"@pnp/sp": "^3.0.0",
|
|
10
|
-
"fs-extra": "^11.1.0"
|
|
11
|
-
}
|
|
12
|
-
}
|
|
@@ -1,83 +0,0 @@
|
|
|
1
|
-
export interface ChunkedUploadOptions {
|
|
2
|
-
filePath: string;
|
|
3
|
-
workspaceId?: string;
|
|
4
|
-
folderId?: string;
|
|
5
|
-
metadata?: Record<string, any>;
|
|
6
|
-
chunkSize?: number;
|
|
7
|
-
maxConcurrentUploads?: number;
|
|
8
|
-
onProgress?: (progress: ChunkedUploadProgress) => void;
|
|
9
|
-
}
|
|
10
|
-
export interface ChunkedUploadProgress {
|
|
11
|
-
uploadId: string;
|
|
12
|
-
filename: string;
|
|
13
|
-
uploadedChunks: number;
|
|
14
|
-
totalChunks: number;
|
|
15
|
-
progress: number;
|
|
16
|
-
uploadedBytes: number;
|
|
17
|
-
totalBytes: number;
|
|
18
|
-
status: 'pending' | 'processing' | 'completed' | 'failed';
|
|
19
|
-
}
|
|
20
|
-
export interface ChunkedUploadResult {
|
|
21
|
-
success: boolean;
|
|
22
|
-
uploadId: string;
|
|
23
|
-
objectKey?: string;
|
|
24
|
-
error?: string;
|
|
25
|
-
}
|
|
26
|
-
/**
|
|
27
|
-
* Service for uploading large files using chunked upload API
|
|
28
|
-
* Based on the frontend implementation in corex
|
|
29
|
-
*/
|
|
30
|
-
export declare class ChunkedUploader {
|
|
31
|
-
private static readonly DEFAULT_CHUNK_SIZE;
|
|
32
|
-
private static readonly MAX_CONCURRENT_UPLOADS;
|
|
33
|
-
private static readonly MAX_RETRY_PER_CHUNK;
|
|
34
|
-
private static readonly UPLOAD_THRESHOLD;
|
|
35
|
-
private api;
|
|
36
|
-
private axiosClient;
|
|
37
|
-
constructor(baseURL: string, accessToken: string);
|
|
38
|
-
/**
|
|
39
|
-
* Check if file should use chunked upload
|
|
40
|
-
*/
|
|
41
|
-
static shouldUseChunkedUpload(fileSize: number): boolean;
|
|
42
|
-
/**
|
|
43
|
-
* Upload a file using chunked upload
|
|
44
|
-
*/
|
|
45
|
-
uploadFile(options: ChunkedUploadOptions): Promise<ChunkedUploadResult>;
|
|
46
|
-
/**
|
|
47
|
-
* Initialize chunked upload session
|
|
48
|
-
*/
|
|
49
|
-
private initializeSession;
|
|
50
|
-
/**
|
|
51
|
-
* Prepare chunks for upload
|
|
52
|
-
*/
|
|
53
|
-
private prepareChunks;
|
|
54
|
-
/**
|
|
55
|
-
* Upload chunks with concurrent pool
|
|
56
|
-
*/
|
|
57
|
-
private uploadChunksWithPool;
|
|
58
|
-
/**
|
|
59
|
-
* Upload a single chunk with retry
|
|
60
|
-
*/
|
|
61
|
-
private uploadChunk;
|
|
62
|
-
/**
|
|
63
|
-
* Complete the chunked upload
|
|
64
|
-
*/
|
|
65
|
-
private completeUpload;
|
|
66
|
-
/**
|
|
67
|
-
* Calculate MD5 checksum of file (in base64)
|
|
68
|
-
*/
|
|
69
|
-
private calculateMD5;
|
|
70
|
-
/**
|
|
71
|
-
* Get content type from file extension
|
|
72
|
-
*/
|
|
73
|
-
private getContentType;
|
|
74
|
-
/**
|
|
75
|
-
* Format bytes to human readable
|
|
76
|
-
*/
|
|
77
|
-
private formatBytes;
|
|
78
|
-
/**
|
|
79
|
-
* Sleep for ms
|
|
80
|
-
*/
|
|
81
|
-
private sleep;
|
|
82
|
-
}
|
|
83
|
-
//# sourceMappingURL=chunked-uploader.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"chunked-uploader.d.ts","sourceRoot":"","sources":["../../src/services/chunked-uploader.ts"],"names":[],"mappings":"AAQA,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,qBAAqB,KAAK,IAAI,CAAC;CACxD;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,SAAS,GAAG,YAAY,GAAG,WAAW,GAAG,QAAQ,CAAC;CAC3D;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAUD;;;GAGG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,kBAAkB,CAAmB;IAC7D,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,sBAAsB,CAAK;IACnD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,mBAAmB,CAAK;IAChD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,gBAAgB,CAAoB;IAE5D,OAAO,CAAC,GAAG,CAAoB;IAC/B,OAAO,CAAC,WAAW,CAAgB;gBAEvB,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM;IAiBhD;;OAEG;IACH,MAAM,CAAC,sBAAsB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO;IAIxD;;OAEG;IACG,UAAU,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAqF7E;;OAEG;YACW,iBAAiB;IA8B/B;;OAEG;IACH,OAAO,CAAC,aAAa;IAqBrB;;OAEG;YACW,oBAAoB;IA+ClC;;OAEG;YACW,WAAW;IA0CzB;;OAEG;YACW,cAAc;IAiB5B;;OAEG;YACW,YAAY;IAW1B;;OAEG;IACH,OAAO,CAAC,cAAc;IAsBtB;;OAEG;IACH,OAAO,CAAC,WAAW;IAQnB;;OAEG;IACH,OAAO,CAAC,KAAK;CAGd"}
|