@sinoia/hubdoc-tools 1.0.4 → 1.2.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 +115 -34
- package/dist/__tests__/fixtures/plugins/connection-plugin/index.d.ts +15 -0
- package/dist/__tests__/fixtures/plugins/connection-plugin/index.d.ts.map +1 -0
- package/dist/__tests__/fixtures/plugins/connection-plugin/index.js +37 -0
- package/dist/__tests__/fixtures/plugins/connection-plugin/index.js.map +1 -0
- package/dist/__tests__/fixtures/plugins/scan-plugin/index.d.ts +15 -0
- package/dist/__tests__/fixtures/plugins/scan-plugin/index.d.ts.map +1 -0
- package/dist/__tests__/fixtures/plugins/scan-plugin/index.js +54 -0
- package/dist/__tests__/fixtures/plugins/scan-plugin/index.js.map +1 -0
- package/dist/__tests__/fixtures/plugins/test-plugin/index.d.ts +15 -0
- package/dist/__tests__/fixtures/plugins/test-plugin/index.d.ts.map +1 -0
- package/dist/__tests__/fixtures/plugins/test-plugin/index.js +34 -0
- package/dist/__tests__/fixtures/plugins/test-plugin/index.js.map +1 -0
- package/dist/__tests__/fixtures/plugins/workflow-plugin/index.d.ts +16 -0
- package/dist/__tests__/fixtures/plugins/workflow-plugin/index.d.ts.map +1 -0
- package/dist/__tests__/fixtures/plugins/workflow-plugin/index.js +145 -0
- package/dist/__tests__/fixtures/plugins/workflow-plugin/index.js.map +1 -0
- package/dist/api/api/authentication-api.d.ts +208 -0
- package/dist/api/api/authentication-api.d.ts.map +1 -0
- package/dist/api/api/authentication-api.js +385 -0
- package/dist/api/api/authentication-api.js.map +1 -0
- package/dist/api/api/bulk-uploads-api.d.ts +101 -0
- package/dist/api/api/bulk-uploads-api.d.ts.map +1 -0
- package/dist/api/api/bulk-uploads-api.js +195 -0
- package/dist/api/api/bulk-uploads-api.js.map +1 -0
- package/dist/api/api/contacts-api.d.ts +246 -0
- package/dist/api/api/contacts-api.d.ts.map +1 -0
- package/dist/api/api/contacts-api.js +465 -0
- package/dist/api/api/contacts-api.js.map +1 -0
- package/dist/api/api/documents-api.d.ts +267 -0
- package/dist/api/api/documents-api.d.ts.map +1 -0
- package/dist/api/api/documents-api.js +506 -0
- package/dist/api/api/documents-api.js.map +1 -0
- package/dist/api/api/folders-api.d.ts +255 -0
- package/dist/api/api/folders-api.d.ts.map +1 -0
- package/dist/api/api/folders-api.js +479 -0
- package/dist/api/api/folders-api.js.map +1 -0
- package/dist/api/api/groups-api.d.ts +246 -0
- package/dist/api/api/groups-api.d.ts.map +1 -0
- package/dist/api/api/groups-api.js +465 -0
- package/dist/api/api/groups-api.js.map +1 -0
- package/dist/api/api/permissions-api.d.ts +246 -0
- package/dist/api/api/permissions-api.d.ts.map +1 -0
- package/dist/api/api/permissions-api.js +465 -0
- package/dist/api/api/permissions-api.js.map +1 -0
- package/dist/api/api/workspaces-api.d.ts +213 -0
- package/dist/api/api/workspaces-api.d.ts.map +1 -0
- package/dist/api/api/workspaces-api.js +424 -0
- package/dist/api/api/workspaces-api.js.map +1 -0
- package/dist/api/api.d.ts +20 -0
- package/dist/api/api.d.ts.map +1 -0
- package/dist/api/api.js +38 -0
- package/dist/api/api.js.map +1 -0
- package/dist/api/base.d.ts +43 -0
- package/dist/api/base.d.ts.map +1 -0
- package/dist/api/base.js +49 -0
- package/dist/api/base.js.map +1 -0
- package/dist/api/common.d.ts +29 -0
- package/dist/api/common.d.ts.map +1 -0
- package/dist/api/common.js +109 -0
- package/dist/api/common.js.map +1 -0
- package/dist/api/configuration.d.ts +99 -0
- package/dist/api/configuration.d.ts.map +1 -0
- package/dist/api/configuration.js +49 -0
- package/dist/api/configuration.js.map +1 -0
- package/dist/api/index.d.ts +15 -0
- package/dist/api/index.d.ts.map +1 -0
- package/dist/api/index.js +33 -0
- package/dist/api/index.js.map +1 -0
- package/dist/api/models/api-v1-documents-documents-post-request1.d.ts +34 -0
- package/dist/api/models/api-v1-documents-documents-post-request1.d.ts.map +1 -0
- package/dist/api/models/api-v1-documents-documents-post-request1.js +16 -0
- package/dist/api/models/api-v1-documents-documents-post-request1.js.map +1 -0
- package/dist/api/models/api-v1-documents-documents-post201-response.d.ts +17 -0
- package/dist/api/models/api-v1-documents-documents-post201-response.d.ts.map +1 -0
- package/dist/api/models/api-v1-documents-documents-post201-response.js +16 -0
- package/dist/api/models/api-v1-documents-documents-post201-response.js.map +1 -0
- package/dist/api/models/api-v1-documents-folders-id-get200-response-all-of-items-inner-one-of.d.ts +17 -0
- package/dist/api/models/api-v1-documents-folders-id-get200-response-all-of-items-inner-one-of.d.ts.map +1 -0
- package/dist/api/models/api-v1-documents-folders-id-get200-response-all-of-items-inner-one-of.js +16 -0
- package/dist/api/models/api-v1-documents-folders-id-get200-response-all-of-items-inner-one-of.js.map +1 -0
- package/dist/api/models/api-v1-documents-folders-id-get200-response-all-of-items-inner-one-of1.d.ts +17 -0
- package/dist/api/models/api-v1-documents-folders-id-get200-response-all-of-items-inner-one-of1.d.ts.map +1 -0
- package/dist/api/models/api-v1-documents-folders-id-get200-response-all-of-items-inner-one-of1.js +16 -0
- package/dist/api/models/api-v1-documents-folders-id-get200-response-all-of-items-inner-one-of1.js.map +1 -0
- package/dist/api/models/api-v1-documents-folders-id-get200-response-all-of-items-inner.d.ts +18 -0
- package/dist/api/models/api-v1-documents-folders-id-get200-response-all-of-items-inner.d.ts.map +1 -0
- package/dist/api/models/api-v1-documents-folders-id-get200-response-all-of-items-inner.js +16 -0
- package/dist/api/models/api-v1-documents-folders-id-get200-response-all-of-items-inner.js.map +1 -0
- package/dist/api/models/api-v1-documents-folders-id-get200-response.d.ts +17 -0
- package/dist/api/models/api-v1-documents-folders-id-get200-response.d.ts.map +1 -0
- package/dist/api/models/api-v1-documents-folders-id-get200-response.js +16 -0
- package/dist/api/models/api-v1-documents-folders-id-get200-response.js.map +1 -0
- package/dist/api/models/bulk-upload-mutation.d.ts +34 -0
- package/dist/api/models/bulk-upload-mutation.d.ts.map +1 -0
- package/dist/api/models/bulk-upload-mutation.js +16 -0
- package/dist/api/models/bulk-upload-mutation.js.map +1 -0
- package/dist/api/models/bulk-upload.d.ts +91 -0
- package/dist/api/models/bulk-upload.d.ts.map +1 -0
- package/dist/api/models/bulk-upload.js +23 -0
- package/dist/api/models/bulk-upload.js.map +1 -0
- package/dist/api/models/contact-mutation.d.ts +30 -0
- package/dist/api/models/contact-mutation.d.ts.map +1 -0
- package/dist/api/models/contact-mutation.js +16 -0
- package/dist/api/models/contact-mutation.js.map +1 -0
- package/dist/api/models/contact.d.ts +54 -0
- package/dist/api/models/contact.d.ts.map +1 -0
- package/dist/api/models/contact.js +16 -0
- package/dist/api/models/contact.js.map +1 -0
- package/dist/api/models/document-document-type.d.ts +19 -0
- package/dist/api/models/document-document-type.d.ts.map +1 -0
- package/dist/api/models/document-document-type.js +16 -0
- package/dist/api/models/document-document-type.js.map +1 -0
- package/dist/api/models/document-domain.d.ts +19 -0
- package/dist/api/models/document-domain.d.ts.map +1 -0
- package/dist/api/models/document-domain.js +16 -0
- package/dist/api/models/document-domain.js.map +1 -0
- package/dist/api/models/document-folder.d.ts +19 -0
- package/dist/api/models/document-folder.d.ts.map +1 -0
- package/dist/api/models/document-folder.js +16 -0
- package/dist/api/models/document-folder.js.map +1 -0
- package/dist/api/models/document-mutation.d.ts +50 -0
- package/dist/api/models/document-mutation.d.ts.map +1 -0
- package/dist/api/models/document-mutation.js +16 -0
- package/dist/api/models/document-mutation.js.map +1 -0
- package/dist/api/models/document.d.ts +73 -0
- package/dist/api/models/document.d.ts.map +1 -0
- package/dist/api/models/document.js +16 -0
- package/dist/api/models/document.js.map +1 -0
- package/dist/api/models/folder-mutation.d.ts +38 -0
- package/dist/api/models/folder-mutation.d.ts.map +1 -0
- package/dist/api/models/folder-mutation.js +16 -0
- package/dist/api/models/folder-mutation.js.map +1 -0
- package/dist/api/models/folder-parent.d.ts +19 -0
- package/dist/api/models/folder-parent.d.ts.map +1 -0
- package/dist/api/models/folder-parent.js +16 -0
- package/dist/api/models/folder-parent.js.map +1 -0
- package/dist/api/models/folder.d.ts +65 -0
- package/dist/api/models/folder.d.ts.map +1 -0
- package/dist/api/models/folder.js +16 -0
- package/dist/api/models/folder.js.map +1 -0
- package/dist/api/models/group-mutation.d.ts +26 -0
- package/dist/api/models/group-mutation.d.ts.map +1 -0
- package/dist/api/models/group-mutation.js +16 -0
- package/dist/api/models/group-mutation.js.map +1 -0
- package/dist/api/models/group.d.ts +38 -0
- package/dist/api/models/group.d.ts.map +1 -0
- package/dist/api/models/group.js +16 -0
- package/dist/api/models/group.js.map +1 -0
- package/dist/api/models/index.d.ts +35 -0
- package/dist/api/models/index.d.ts.map +1 -0
- package/dist/api/models/index.js +51 -0
- package/dist/api/models/index.js.map +1 -0
- package/dist/api/models/model-error.d.ts +26 -0
- package/dist/api/models/model-error.d.ts.map +1 -0
- package/dist/api/models/model-error.js +16 -0
- package/dist/api/models/model-error.js.map +1 -0
- package/dist/api/models/oauth-revoke-post200-response.d.ts +15 -0
- package/dist/api/models/oauth-revoke-post200-response.d.ts.map +1 -0
- package/dist/api/models/oauth-revoke-post200-response.js +16 -0
- package/dist/api/models/oauth-revoke-post200-response.js.map +1 -0
- package/dist/api/models/permission-actor.d.ts +20 -0
- package/dist/api/models/permission-actor.d.ts.map +1 -0
- package/dist/api/models/permission-actor.js +16 -0
- package/dist/api/models/permission-actor.js.map +1 -0
- package/dist/api/models/permission-mutation.d.ts +44 -0
- package/dist/api/models/permission-mutation.d.ts.map +1 -0
- package/dist/api/models/permission-mutation.js +22 -0
- package/dist/api/models/permission-mutation.js.map +1 -0
- package/dist/api/models/permission-permissible.d.ts +20 -0
- package/dist/api/models/permission-permissible.d.ts.map +1 -0
- package/dist/api/models/permission-permissible.js +16 -0
- package/dist/api/models/permission-permissible.js.map +1 -0
- package/dist/api/models/permission.d.ts +60 -0
- package/dist/api/models/permission.d.ts.map +1 -0
- package/dist/api/models/permission.js +22 -0
- package/dist/api/models/permission.js.map +1 -0
- package/dist/api/models/token-response.d.ts +41 -0
- package/dist/api/models/token-response.d.ts.map +1 -0
- package/dist/api/models/token-response.js +16 -0
- package/dist/api/models/token-response.js.map +1 -0
- package/dist/api/models/user.d.ts +18 -0
- package/dist/api/models/user.d.ts.map +1 -0
- package/dist/api/models/user.js +16 -0
- package/dist/api/models/user.js.map +1 -0
- package/dist/api/models/workspace-mutation-settings-validation.d.ts +26 -0
- package/dist/api/models/workspace-mutation-settings-validation.d.ts.map +1 -0
- package/dist/api/models/workspace-mutation-settings-validation.js +16 -0
- package/dist/api/models/workspace-mutation-settings-validation.js.map +1 -0
- package/dist/api/models/workspace-mutation-settings.d.ts +60 -0
- package/dist/api/models/workspace-mutation-settings.d.ts.map +1 -0
- package/dist/api/models/workspace-mutation-settings.js +16 -0
- package/dist/api/models/workspace-mutation-settings.js.map +1 -0
- package/dist/api/models/workspace-mutation.d.ts +44 -0
- package/dist/api/models/workspace-mutation.d.ts.map +1 -0
- package/dist/api/models/workspace-mutation.js +16 -0
- package/dist/api/models/workspace-mutation.js.map +1 -0
- package/dist/api/models/workspace-settings-validation.d.ts +26 -0
- package/dist/api/models/workspace-settings-validation.d.ts.map +1 -0
- package/dist/api/models/workspace-settings-validation.js +16 -0
- package/dist/api/models/workspace-settings-validation.js.map +1 -0
- package/dist/api/models/workspace-settings.d.ts +60 -0
- package/dist/api/models/workspace-settings.d.ts.map +1 -0
- package/dist/api/models/workspace-settings.js +16 -0
- package/dist/api/models/workspace-settings.js.map +1 -0
- package/dist/api/models/workspace.d.ts +62 -0
- package/dist/api/models/workspace.d.ts.map +1 -0
- package/dist/api/models/workspace.js +16 -0
- package/dist/api/models/workspace.js.map +1 -0
- package/dist/cli/handlers/command-handlers.d.ts +29 -0
- package/dist/cli/handlers/command-handlers.d.ts.map +1 -0
- package/dist/cli/handlers/command-handlers.js +261 -0
- package/dist/cli/handlers/command-handlers.js.map +1 -0
- package/dist/cli/handlers/engine-handlers.d.ts +15 -0
- package/dist/cli/handlers/engine-handlers.d.ts.map +1 -0
- package/dist/cli/handlers/engine-handlers.js +174 -0
- package/dist/cli/handlers/engine-handlers.js.map +1 -0
- package/dist/cli/interactive.d.ts +15 -0
- package/dist/cli/interactive.d.ts.map +1 -0
- package/dist/cli/interactive.js +234 -0
- package/dist/cli/interactive.js.map +1 -0
- package/dist/cli.js +31 -740
- package/dist/cli.js.map +1 -1
- package/dist/commands/export.d.ts +1 -1
- package/dist/commands/export.d.ts.map +1 -1
- package/dist/commands/export.js +1 -1
- package/dist/commands/export.js.map +1 -1
- package/dist/commands/import.d.ts.map +1 -1
- package/dist/commands/import.js +5 -1
- package/dist/commands/import.js.map +1 -1
- package/dist/index.d.ts +27 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +63 -20
- package/dist/index.js.map +1 -1
- package/dist/services/hubdoc-api.d.ts +26 -6
- package/dist/services/hubdoc-api.d.ts.map +1 -1
- package/dist/services/hubdoc-api.js +194 -43
- package/dist/services/hubdoc-api.js.map +1 -1
- package/dist/services/hubdoc-export.d.ts +1 -1
- package/dist/services/hubdoc-export.d.ts.map +1 -1
- package/dist/services/hubdoc-export.js +1 -1
- package/dist/services/hubdoc-export.js.map +1 -1
- package/dist/services/oauth-token-service.d.ts +27 -14
- package/dist/services/oauth-token-service.d.ts.map +1 -1
- package/dist/services/oauth-token-service.js +147 -80
- package/dist/services/oauth-token-service.js.map +1 -1
- package/dist/services/plugin-import.d.ts +2 -2
- package/dist/services/plugin-import.d.ts.map +1 -1
- package/dist/services/plugin-import.js +2 -2
- package/dist/services/plugin-import.js.map +1 -1
- package/dist/services/plugin-manager.d.ts +6 -1
- package/dist/services/plugin-manager.d.ts.map +1 -1
- package/dist/services/plugin-manager.js +28 -2
- package/dist/services/plugin-manager.js.map +1 -1
- package/dist/types/index.d.ts +11 -37
- package/dist/types/index.d.ts.map +1 -1
- package/dist/utils/config.d.ts +30 -1
- package/dist/utils/config.d.ts.map +1 -1
- package/dist/utils/config.js +187 -40
- package/dist/utils/config.js.map +1 -1
- package/dist/utils/csv.d.ts.map +1 -1
- package/dist/utils/csv.js +14 -3
- package/dist/utils/csv.js.map +1 -1
- package/package.json +23 -6
- package/.env.example +0 -23
- package/BAUTECH_HubDoc_Import.pptx +0 -0
- package/CHANGELOG.md +0 -134
- package/DEMO-DOCUMENTATION.html +0 -356
- package/DEMO-DOCUMENTATION.md +0 -411
- package/EXPORT-DOCUMENTATION.md +0 -333
- package/HUBDOC-API-V2.md +0 -248
- package/INSTALL.md +0 -175
- package/PACKAGING.md +0 -206
- package/PLUGINS.md +0 -328
- package/PRESENTATION-CLIENT.md +0 -100
- package/README-hubdoc-tool.md +0 -369
- package/README-npm.md +0 -238
- package/TESTING.md +0 -129
- package/config-examples/README.md +0 -36
- package/config-examples/alfresco-config.example.json +0 -8
- package/config-examples/azure-blob-config.example.json +0 -7
- package/config-examples/box-config.example.json +0 -5
- package/config-examples/nuxeo-config.example.json +0 -8
- package/config-examples/opentext-config.example.json +0 -7
- package/config-examples/s3-config.example.json +0 -8
- package/config-examples/sharepoint-config.example.json +0 -7
- package/demo/README.md +0 -199
- package/demo/demo-script.md +0 -284
- package/demo/generate-sample-csv.js +0 -351
- package/demo/mapping_bautech_15k.csv +0 -1
- package/demo/simulate-import.js +0 -273
- package/dist/commands/export-v2.d.ts +0 -45
- package/dist/commands/export-v2.d.ts.map +0 -1
- package/dist/commands/export-v2.js +0 -369
- package/dist/commands/export-v2.js.map +0 -1
- package/dist/commands/import-v2.d.ts +0 -32
- package/dist/commands/import-v2.d.ts.map +0 -1
- package/dist/commands/import-v2.js +0 -331
- package/dist/commands/import-v2.js.map +0 -1
- package/dist/services/hubdoc-api-v2.d.ts +0 -150
- package/dist/services/hubdoc-api-v2.d.ts.map +0 -1
- package/dist/services/hubdoc-api-v2.js +0 -418
- package/dist/services/hubdoc-api-v2.js.map +0 -1
- package/dist/services/hubdoc-client.d.ts +0 -246
- package/dist/services/hubdoc-client.d.ts.map +0 -1
- package/dist/services/hubdoc-client.js +0 -714
- package/dist/services/hubdoc-client.js.map +0 -1
- package/dist/services/hubdoc-export-service.d.ts +0 -90
- package/dist/services/hubdoc-export-service.d.ts.map +0 -1
- package/dist/services/hubdoc-export-service.js +0 -443
- package/dist/services/hubdoc-export-service.js.map +0 -1
- package/dist/services/hubdoc-export-v2.d.ts +0 -77
- package/dist/services/hubdoc-export-v2.d.ts.map +0 -1
- package/dist/services/hubdoc-export-v2.js +0 -329
- package/dist/services/hubdoc-export-v2.js.map +0 -1
- package/dist/services/hubdoc-import-service.d.ts +0 -64
- package/dist/services/hubdoc-import-service.d.ts.map +0 -1
- package/dist/services/hubdoc-import-service.js +0 -374
- package/dist/services/hubdoc-import-service.js.map +0 -1
- package/docs/README.md +0 -65
- package/docs/connectors/alfresco.md +0 -211
- package/docs/connectors/aws-s3.md +0 -187
- package/docs/connectors/azure-blob.md +0 -195
- package/docs/connectors/box.md +0 -115
- package/docs/connectors/nuxeo.md +0 -214
- package/docs/connectors/opentext.md +0 -234
- package/docs/connectors/sharepoint.md +0 -207
- package/documentation.html +0 -273
- package/jest.config.js +0 -15
- package/plugins/core/README.md +0 -122
- package/plugins/core/TESTING.md +0 -155
- package/plugins/core/plugin.json +0 -26
- package/plugins/dropbox/plugin.json +0 -12
- package/plugins/filesystem/plugin.json +0 -12
- package/plugins/googledrive/plugin.json +0 -12
- package/plugins/onedrive/TESTING.md +0 -197
- package/plugins/onedrive/plugin.json +0 -12
- package/scripts/build-windows-installer.ps1 +0 -132
- package/scripts/build-windows-installer.sh +0 -106
- package/scripts/prepare-publish.js +0 -62
- package/scripts/restore-package.js +0 -29
|
@@ -1,77 +0,0 @@
|
|
|
1
|
-
import { HubDocConfig } from '../types';
|
|
2
|
-
import { ExportMapping, ExportResult } from '../types/export';
|
|
3
|
-
export interface HubDocExportDocument {
|
|
4
|
-
id: string;
|
|
5
|
-
name: string;
|
|
6
|
-
size: number;
|
|
7
|
-
mime_type: string;
|
|
8
|
-
folder_path: string;
|
|
9
|
-
workspace_name?: string;
|
|
10
|
-
download_url: string;
|
|
11
|
-
metadata?: Record<string, any>;
|
|
12
|
-
created_at: string;
|
|
13
|
-
updated_at: string;
|
|
14
|
-
}
|
|
15
|
-
export declare class HubDocExportServiceV2 {
|
|
16
|
-
private apiService;
|
|
17
|
-
private config;
|
|
18
|
-
constructor(config: HubDocConfig);
|
|
19
|
-
/**
|
|
20
|
-
* Test API connection
|
|
21
|
-
*/
|
|
22
|
-
testConnection(): Promise<boolean>;
|
|
23
|
-
/**
|
|
24
|
-
* Generate export mapping from HubDoc documents
|
|
25
|
-
*/
|
|
26
|
-
generateExportMapping(workspaceFilter?: string, folderFilter?: string): Promise<ExportMapping[]>;
|
|
27
|
-
/**
|
|
28
|
-
* Export documents based on mapping
|
|
29
|
-
*/
|
|
30
|
-
exportDocuments(mappings: ExportMapping[], outputDir: string): Promise<ExportResult[]>;
|
|
31
|
-
/**
|
|
32
|
-
* Export a single document
|
|
33
|
-
*/
|
|
34
|
-
private exportSingleDocument;
|
|
35
|
-
/**
|
|
36
|
-
* Download document from HubDoc
|
|
37
|
-
*/
|
|
38
|
-
private downloadDocument;
|
|
39
|
-
/**
|
|
40
|
-
* Get files in a specific folder
|
|
41
|
-
*/
|
|
42
|
-
private getFilesInFolder;
|
|
43
|
-
/**
|
|
44
|
-
* Build full folder path from folder hierarchy
|
|
45
|
-
*/
|
|
46
|
-
private buildFolderPath;
|
|
47
|
-
/**
|
|
48
|
-
* Generate default target path for export
|
|
49
|
-
*/
|
|
50
|
-
private generateDefaultTargetPath;
|
|
51
|
-
/**
|
|
52
|
-
* Sanitize path for file system compatibility
|
|
53
|
-
*/
|
|
54
|
-
private sanitizePath;
|
|
55
|
-
/**
|
|
56
|
-
* Search documents across HubDoc
|
|
57
|
-
*/
|
|
58
|
-
searchDocuments(query: string, options?: {
|
|
59
|
-
workspace?: string;
|
|
60
|
-
fileType?: string;
|
|
61
|
-
limit?: number;
|
|
62
|
-
}): Promise<ExportMapping[]>;
|
|
63
|
-
/**
|
|
64
|
-
* Get export statistics
|
|
65
|
-
*/
|
|
66
|
-
getExportStats(): Promise<{
|
|
67
|
-
totalWorkspaces: number;
|
|
68
|
-
totalFolders: number;
|
|
69
|
-
totalFiles: number;
|
|
70
|
-
totalSize: number;
|
|
71
|
-
}>;
|
|
72
|
-
/**
|
|
73
|
-
* Sleep utility for rate limiting
|
|
74
|
-
*/
|
|
75
|
-
private sleep;
|
|
76
|
-
}
|
|
77
|
-
//# sourceMappingURL=hubdoc-export-v2.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"hubdoc-export-v2.d.ts","sourceRoot":"","sources":["../../src/services/hubdoc-export-v2.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAG9D,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC/B,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,qBAAa,qBAAqB;IAChC,OAAO,CAAC,UAAU,CAAqB;IACvC,OAAO,CAAC,MAAM,CAAe;gBAEjB,MAAM,EAAE,YAAY;IAKhC;;OAEG;IACG,cAAc,IAAI,OAAO,CAAC,OAAO,CAAC;IAIxC;;OAEG;IACG,qBAAqB,CACzB,eAAe,CAAC,EAAE,MAAM,EACxB,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CAAC,aAAa,EAAE,CAAC;IAgE3B;;OAEG;IACG,eAAe,CAAC,QAAQ,EAAE,aAAa,EAAE,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAwD5F;;OAEG;YACW,oBAAoB;IAmClC;;OAEG;YACW,gBAAgB;IAgC9B;;OAEG;YACW,gBAAgB;IAoB9B;;OAEG;IACH,OAAO,CAAC,eAAe;IAkBvB;;OAEG;IACH,OAAO,CAAC,yBAAyB;IAQjC;;OAEG;IACH,OAAO,CAAC,YAAY;IAOpB;;OAEG;IACG,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAC7C,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IAgD5B;;OAEG;IACG,cAAc,IAAI,OAAO,CAAC;QAC9B,eAAe,EAAE,MAAM,CAAC;QACxB,YAAY,EAAE,MAAM,CAAC;QACrB,UAAU,EAAE,MAAM,CAAC;QACnB,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;IAoCF;;OAEG;IACH,OAAO,CAAC,KAAK;CAGd"}
|
|
@@ -1,329 +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
|
-
exports.HubDocExportServiceV2 = void 0;
|
|
7
|
-
const axios_1 = __importDefault(require("axios"));
|
|
8
|
-
const fs_extra_1 = __importDefault(require("fs-extra"));
|
|
9
|
-
const path_1 = __importDefault(require("path"));
|
|
10
|
-
const chalk_1 = __importDefault(require("chalk"));
|
|
11
|
-
const hubdoc_api_v2_1 = require("./hubdoc-api-v2");
|
|
12
|
-
class HubDocExportServiceV2 {
|
|
13
|
-
constructor(config) {
|
|
14
|
-
this.config = config;
|
|
15
|
-
this.apiService = new hubdoc_api_v2_1.HubDocApiServiceV2(config);
|
|
16
|
-
}
|
|
17
|
-
/**
|
|
18
|
-
* Test API connection
|
|
19
|
-
*/
|
|
20
|
-
async testConnection() {
|
|
21
|
-
return this.apiService.testConnection();
|
|
22
|
-
}
|
|
23
|
-
/**
|
|
24
|
-
* Generate export mapping from HubDoc documents
|
|
25
|
-
*/
|
|
26
|
-
async generateExportMapping(workspaceFilter, folderFilter) {
|
|
27
|
-
console.log(chalk_1.default.blue('🔍 Scanning HubDoc documents...'));
|
|
28
|
-
const mappings = [];
|
|
29
|
-
try {
|
|
30
|
-
// Get all workspaces or filter by name
|
|
31
|
-
const workspaces = await this.apiService.getWorkspaces();
|
|
32
|
-
const targetWorkspaces = workspaceFilter
|
|
33
|
-
? workspaces.filter(w => w.name.includes(workspaceFilter))
|
|
34
|
-
: workspaces;
|
|
35
|
-
console.log(chalk_1.default.gray(` Found ${targetWorkspaces.length} workspace(s) to scan`));
|
|
36
|
-
for (const workspace of targetWorkspaces) {
|
|
37
|
-
console.log(chalk_1.default.blue(` 📁 Scanning workspace: ${workspace.name}`));
|
|
38
|
-
// Get folders in workspace
|
|
39
|
-
const folders = await this.apiService.getFolders(workspace.id);
|
|
40
|
-
// Build folder hierarchy for better path resolution
|
|
41
|
-
const folderMap = new Map();
|
|
42
|
-
folders.forEach(folder => folderMap.set(folder.id, folder));
|
|
43
|
-
for (const folder of folders) {
|
|
44
|
-
// Skip if folder filter is specified and doesn't match
|
|
45
|
-
if (folderFilter && !folder.name.includes(folderFilter)) {
|
|
46
|
-
continue;
|
|
47
|
-
}
|
|
48
|
-
// Get files in this folder
|
|
49
|
-
const files = await this.getFilesInFolder(folder.id);
|
|
50
|
-
for (const file of files) {
|
|
51
|
-
const folderPath = this.buildFolderPath(folder, folderMap);
|
|
52
|
-
const projectLocation = {
|
|
53
|
-
projectName: workspace.name,
|
|
54
|
-
folderPath: folderPath,
|
|
55
|
-
fullPath: `${workspace.name}/${folderPath}`
|
|
56
|
-
};
|
|
57
|
-
const mapping = {
|
|
58
|
-
documentId: file.id,
|
|
59
|
-
documentName: file.name,
|
|
60
|
-
projects: [projectLocation],
|
|
61
|
-
downloadUrl: file.download_url || `/files/${file.id}/download`,
|
|
62
|
-
targetPath: this.generateDefaultTargetPath(workspace.name, folderPath),
|
|
63
|
-
metadata: file.metadata
|
|
64
|
-
};
|
|
65
|
-
mappings.push(mapping);
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
console.log(chalk_1.default.green(`✅ Found ${mappings.length} documents to export`));
|
|
70
|
-
return mappings;
|
|
71
|
-
}
|
|
72
|
-
catch (error) {
|
|
73
|
-
console.error(chalk_1.default.red(`❌ Failed to generate export mapping: ${error.message}`));
|
|
74
|
-
throw error;
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
/**
|
|
78
|
-
* Export documents based on mapping
|
|
79
|
-
*/
|
|
80
|
-
async exportDocuments(mappings, outputDir) {
|
|
81
|
-
const results = [];
|
|
82
|
-
console.log(chalk_1.default.blue(`📦 Starting export of ${mappings.length} documents`));
|
|
83
|
-
console.log(chalk_1.default.gray(` Output directory: ${path_1.default.resolve(outputDir)}`));
|
|
84
|
-
// Ensure output directory exists
|
|
85
|
-
await fs_extra_1.default.ensureDir(outputDir);
|
|
86
|
-
let successCount = 0;
|
|
87
|
-
let failureCount = 0;
|
|
88
|
-
for (let i = 0; i < mappings.length; i++) {
|
|
89
|
-
const mapping = mappings[i];
|
|
90
|
-
try {
|
|
91
|
-
const result = await this.exportSingleDocument(mapping, outputDir);
|
|
92
|
-
results.push(result);
|
|
93
|
-
if (result.success) {
|
|
94
|
-
successCount++;
|
|
95
|
-
}
|
|
96
|
-
else {
|
|
97
|
-
failureCount++;
|
|
98
|
-
}
|
|
99
|
-
// Progress update
|
|
100
|
-
if ((i + 1) % 10 === 0) {
|
|
101
|
-
console.log(chalk_1.default.blue(`📊 Progress: ${i + 1}/${mappings.length} processed`));
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
catch (error) {
|
|
105
|
-
failureCount++;
|
|
106
|
-
results.push({
|
|
107
|
-
success: false,
|
|
108
|
-
documentId: mapping.documentId,
|
|
109
|
-
documentName: mapping.documentName,
|
|
110
|
-
exportedPath: '',
|
|
111
|
-
error: error.message
|
|
112
|
-
});
|
|
113
|
-
console.error(chalk_1.default.red(`❌ Export failed for ${mapping.documentName}: ${error.message}`));
|
|
114
|
-
}
|
|
115
|
-
// Small delay to avoid overwhelming the API
|
|
116
|
-
await this.sleep(50);
|
|
117
|
-
}
|
|
118
|
-
console.log(chalk_1.default.bold('\n📊 Export Summary'));
|
|
119
|
-
console.log(chalk_1.default.green(`✅ Successfully exported: ${successCount} documents`));
|
|
120
|
-
if (failureCount > 0) {
|
|
121
|
-
console.log(chalk_1.default.red(`❌ Failed exports: ${failureCount}`));
|
|
122
|
-
}
|
|
123
|
-
return results;
|
|
124
|
-
}
|
|
125
|
-
/**
|
|
126
|
-
* Export a single document
|
|
127
|
-
*/
|
|
128
|
-
async exportSingleDocument(mapping, baseOutputDir) {
|
|
129
|
-
try {
|
|
130
|
-
// Determine target path
|
|
131
|
-
const targetPath = mapping.targetPath || this.generateDefaultTargetPath(mapping.projects[0]?.projectName || 'Unknown', mapping.projects[0]?.folderPath || 'Documents');
|
|
132
|
-
const fullExportPath = path_1.default.join(baseOutputDir, targetPath, mapping.documentName);
|
|
133
|
-
const exportDir = path_1.default.dirname(fullExportPath);
|
|
134
|
-
// Ensure target directory exists
|
|
135
|
-
await fs_extra_1.default.ensureDir(exportDir);
|
|
136
|
-
// Download file
|
|
137
|
-
await this.downloadDocument(mapping.documentId, mapping.downloadUrl, fullExportPath);
|
|
138
|
-
return {
|
|
139
|
-
success: true,
|
|
140
|
-
documentId: mapping.documentId,
|
|
141
|
-
documentName: mapping.documentName,
|
|
142
|
-
exportedPath: fullExportPath
|
|
143
|
-
};
|
|
144
|
-
}
|
|
145
|
-
catch (error) {
|
|
146
|
-
return {
|
|
147
|
-
success: false,
|
|
148
|
-
documentId: mapping.documentId,
|
|
149
|
-
documentName: mapping.documentName,
|
|
150
|
-
exportedPath: '',
|
|
151
|
-
error: error.message
|
|
152
|
-
};
|
|
153
|
-
}
|
|
154
|
-
}
|
|
155
|
-
/**
|
|
156
|
-
* Download document from HubDoc
|
|
157
|
-
*/
|
|
158
|
-
async downloadDocument(documentId, downloadUrl, targetPath) {
|
|
159
|
-
try {
|
|
160
|
-
// Construct full URL if relative
|
|
161
|
-
const fullUrl = downloadUrl.startsWith('http')
|
|
162
|
-
? downloadUrl
|
|
163
|
-
: `${this.config.apiUrl}${downloadUrl}`;
|
|
164
|
-
const response = await axios_1.default.get(fullUrl, {
|
|
165
|
-
headers: {
|
|
166
|
-
'Authorization': `Bearer ${this.config.token}`
|
|
167
|
-
},
|
|
168
|
-
responseType: 'stream',
|
|
169
|
-
timeout: 60000 // 60 seconds timeout for large files
|
|
170
|
-
});
|
|
171
|
-
const writer = fs_extra_1.default.createWriteStream(targetPath);
|
|
172
|
-
response.data.pipe(writer);
|
|
173
|
-
return new Promise((resolve, reject) => {
|
|
174
|
-
writer.on('finish', () => {
|
|
175
|
-
resolve();
|
|
176
|
-
});
|
|
177
|
-
writer.on('error', (error) => {
|
|
178
|
-
reject(error);
|
|
179
|
-
});
|
|
180
|
-
});
|
|
181
|
-
}
|
|
182
|
-
catch (error) {
|
|
183
|
-
throw new Error(`Download failed for document ${documentId}: ${error.message}`);
|
|
184
|
-
}
|
|
185
|
-
}
|
|
186
|
-
/**
|
|
187
|
-
* Get files in a specific folder
|
|
188
|
-
*/
|
|
189
|
-
async getFilesInFolder(folderId) {
|
|
190
|
-
try {
|
|
191
|
-
// Use the folder contents endpoint
|
|
192
|
-
const response = await axios_1.default.get(`${this.config.apiUrl}/folders/${folderId}/contents`, {
|
|
193
|
-
headers: {
|
|
194
|
-
'Authorization': `Bearer ${this.config.token}`,
|
|
195
|
-
'Accept': 'application/json'
|
|
196
|
-
}
|
|
197
|
-
});
|
|
198
|
-
// Filter to only return files (not subfolders)
|
|
199
|
-
const contents = response.data.data || response.data;
|
|
200
|
-
return contents.filter((item) => item.type === 'file' || !item.hasOwnProperty('type'));
|
|
201
|
-
}
|
|
202
|
-
catch (error) {
|
|
203
|
-
console.warn(chalk_1.default.yellow(`Warning: Could not get contents of folder ${folderId}: ${error.message}`));
|
|
204
|
-
return [];
|
|
205
|
-
}
|
|
206
|
-
}
|
|
207
|
-
/**
|
|
208
|
-
* Build full folder path from folder hierarchy
|
|
209
|
-
*/
|
|
210
|
-
buildFolderPath(folder, folderMap) {
|
|
211
|
-
const pathParts = [];
|
|
212
|
-
let currentFolder = folder;
|
|
213
|
-
// Walk up the parent hierarchy
|
|
214
|
-
while (currentFolder) {
|
|
215
|
-
pathParts.unshift(currentFolder.name);
|
|
216
|
-
if (currentFolder.parent_id) {
|
|
217
|
-
currentFolder = folderMap.get(currentFolder.parent_id);
|
|
218
|
-
}
|
|
219
|
-
else {
|
|
220
|
-
currentFolder = undefined;
|
|
221
|
-
}
|
|
222
|
-
}
|
|
223
|
-
return pathParts.join('/');
|
|
224
|
-
}
|
|
225
|
-
/**
|
|
226
|
-
* Generate default target path for export
|
|
227
|
-
*/
|
|
228
|
-
generateDefaultTargetPath(workspaceName, folderPath) {
|
|
229
|
-
// Clean up path components
|
|
230
|
-
const cleanWorkspace = this.sanitizePath(workspaceName);
|
|
231
|
-
const cleanFolder = this.sanitizePath(folderPath);
|
|
232
|
-
return cleanFolder ? `${cleanWorkspace}/${cleanFolder}` : cleanWorkspace;
|
|
233
|
-
}
|
|
234
|
-
/**
|
|
235
|
-
* Sanitize path for file system compatibility
|
|
236
|
-
*/
|
|
237
|
-
sanitizePath(pathComponent) {
|
|
238
|
-
return pathComponent
|
|
239
|
-
.replace(/[<>:"/\\|?*]/g, '_') // Replace invalid filename characters
|
|
240
|
-
.replace(/\s+/g, ' ') // Normalize whitespace
|
|
241
|
-
.trim();
|
|
242
|
-
}
|
|
243
|
-
/**
|
|
244
|
-
* Search documents across HubDoc
|
|
245
|
-
*/
|
|
246
|
-
async searchDocuments(query, options) {
|
|
247
|
-
try {
|
|
248
|
-
console.log(chalk_1.default.blue(`🔍 Searching for: "${query}"`));
|
|
249
|
-
const searchResults = await this.apiService.search(query, 'file');
|
|
250
|
-
const files = searchResults.data || searchResults;
|
|
251
|
-
const mappings = [];
|
|
252
|
-
for (const file of files) {
|
|
253
|
-
// Apply filters if specified
|
|
254
|
-
if (options?.workspace && file.workspace_name !== options.workspace) {
|
|
255
|
-
continue;
|
|
256
|
-
}
|
|
257
|
-
if (options?.fileType && !file.name.toLowerCase().includes(options.fileType.toLowerCase())) {
|
|
258
|
-
continue;
|
|
259
|
-
}
|
|
260
|
-
const projectLocation = {
|
|
261
|
-
projectName: file.workspace_name || 'Unknown',
|
|
262
|
-
folderPath: file.folder_path || 'Documents',
|
|
263
|
-
fullPath: `${file.workspace_name || 'Unknown'}/${file.folder_path || 'Documents'}`
|
|
264
|
-
};
|
|
265
|
-
mappings.push({
|
|
266
|
-
documentId: file.id,
|
|
267
|
-
documentName: file.name,
|
|
268
|
-
projects: [projectLocation],
|
|
269
|
-
downloadUrl: file.download_url || `/files/${file.id}/download`,
|
|
270
|
-
targetPath: this.generateDefaultTargetPath(projectLocation.projectName, projectLocation.folderPath),
|
|
271
|
-
metadata: file.metadata
|
|
272
|
-
});
|
|
273
|
-
// Respect limit if specified
|
|
274
|
-
if (options?.limit && mappings.length >= options.limit) {
|
|
275
|
-
break;
|
|
276
|
-
}
|
|
277
|
-
}
|
|
278
|
-
console.log(chalk_1.default.green(`✅ Found ${mappings.length} matching documents`));
|
|
279
|
-
return mappings;
|
|
280
|
-
}
|
|
281
|
-
catch (error) {
|
|
282
|
-
console.error(chalk_1.default.red(`❌ Search failed: ${error.message}`));
|
|
283
|
-
return [];
|
|
284
|
-
}
|
|
285
|
-
}
|
|
286
|
-
/**
|
|
287
|
-
* Get export statistics
|
|
288
|
-
*/
|
|
289
|
-
async getExportStats() {
|
|
290
|
-
try {
|
|
291
|
-
const workspaces = await this.apiService.getWorkspaces();
|
|
292
|
-
let totalFolders = 0;
|
|
293
|
-
let totalFiles = 0;
|
|
294
|
-
let totalSize = 0;
|
|
295
|
-
for (const workspace of workspaces) {
|
|
296
|
-
const folders = await this.apiService.getFolders(workspace.id);
|
|
297
|
-
totalFolders += folders.length;
|
|
298
|
-
for (const folder of folders) {
|
|
299
|
-
const files = await this.getFilesInFolder(folder.id);
|
|
300
|
-
totalFiles += files.length;
|
|
301
|
-
totalSize += files.reduce((sum, file) => sum + (file.size || 0), 0);
|
|
302
|
-
}
|
|
303
|
-
}
|
|
304
|
-
return {
|
|
305
|
-
totalWorkspaces: workspaces.length,
|
|
306
|
-
totalFolders,
|
|
307
|
-
totalFiles,
|
|
308
|
-
totalSize
|
|
309
|
-
};
|
|
310
|
-
}
|
|
311
|
-
catch (error) {
|
|
312
|
-
console.error(chalk_1.default.red(`❌ Failed to get export stats: ${error.message}`));
|
|
313
|
-
return {
|
|
314
|
-
totalWorkspaces: 0,
|
|
315
|
-
totalFolders: 0,
|
|
316
|
-
totalFiles: 0,
|
|
317
|
-
totalSize: 0
|
|
318
|
-
};
|
|
319
|
-
}
|
|
320
|
-
}
|
|
321
|
-
/**
|
|
322
|
-
* Sleep utility for rate limiting
|
|
323
|
-
*/
|
|
324
|
-
sleep(ms) {
|
|
325
|
-
return new Promise(resolve => setTimeout(resolve, ms));
|
|
326
|
-
}
|
|
327
|
-
}
|
|
328
|
-
exports.HubDocExportServiceV2 = HubDocExportServiceV2;
|
|
329
|
-
//# sourceMappingURL=hubdoc-export-v2.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"hubdoc-export-v2.js","sourceRoot":"","sources":["../../src/services/hubdoc-export-v2.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
import { ImportResult } from './hubdoc-client';
|
|
2
|
-
import { DocumentMapping, HubDocConfig } from '../types';
|
|
3
|
-
export interface ImportOptions {
|
|
4
|
-
mappingFile: string;
|
|
5
|
-
baseDir?: string;
|
|
6
|
-
concurrency?: number;
|
|
7
|
-
dryRun?: boolean;
|
|
8
|
-
validateOnly?: boolean;
|
|
9
|
-
batchSize?: number;
|
|
10
|
-
domain?: string;
|
|
11
|
-
interactive?: boolean;
|
|
12
|
-
}
|
|
13
|
-
export interface ValidationResult {
|
|
14
|
-
valid: boolean;
|
|
15
|
-
errors: string[];
|
|
16
|
-
warnings: string[];
|
|
17
|
-
mappingCount: number;
|
|
18
|
-
}
|
|
19
|
-
export interface ImportSummary {
|
|
20
|
-
total: number;
|
|
21
|
-
successful: number;
|
|
22
|
-
failed: number;
|
|
23
|
-
skipped: number;
|
|
24
|
-
results: ImportResult[];
|
|
25
|
-
duration: number;
|
|
26
|
-
mappingFile?: string;
|
|
27
|
-
}
|
|
28
|
-
/**
|
|
29
|
-
* Service for importing documents to HubDoc using CSV mapping files
|
|
30
|
-
*/
|
|
31
|
-
export declare class HubDocImportService {
|
|
32
|
-
private client;
|
|
33
|
-
private config;
|
|
34
|
-
constructor(config: HubDocConfig);
|
|
35
|
-
/**
|
|
36
|
-
* Test connection to HubDoc API
|
|
37
|
-
*/
|
|
38
|
-
testConnection(): Promise<boolean>;
|
|
39
|
-
/**
|
|
40
|
-
* Parse CSV mapping file into DocumentMapping objects
|
|
41
|
-
*/
|
|
42
|
-
parseMappingFile(filePath: string, baseDir?: string): Promise<DocumentMapping[]>;
|
|
43
|
-
/**
|
|
44
|
-
* Parse CSV row into DocumentMapping object
|
|
45
|
-
*/
|
|
46
|
-
private parseRowToMapping;
|
|
47
|
-
/**
|
|
48
|
-
* Validate mapping file and mappings
|
|
49
|
-
*/
|
|
50
|
-
validateMappings(mappings: DocumentMapping[]): Promise<ValidationResult>;
|
|
51
|
-
/**
|
|
52
|
-
* Import documents using mappings
|
|
53
|
-
*/
|
|
54
|
-
importDocuments(mappings: DocumentMapping[], options?: Partial<ImportOptions>): Promise<ImportSummary>;
|
|
55
|
-
/**
|
|
56
|
-
* Bulk import with CSV file
|
|
57
|
-
*/
|
|
58
|
-
bulkImportFromCsv(options: ImportOptions): Promise<ImportSummary>;
|
|
59
|
-
/**
|
|
60
|
-
* Print import summary
|
|
61
|
-
*/
|
|
62
|
-
private printImportSummary;
|
|
63
|
-
}
|
|
64
|
-
//# sourceMappingURL=hubdoc-import-service.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"hubdoc-import-service.d.ts","sourceRoot":"","sources":["../../src/services/hubdoc-import-service.ts"],"names":[],"mappings":"AAGA,OAAO,EAAgB,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAIzD,MAAM,WAAW,aAAa;IAC5B,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,MAAM,CAAe;gBAEjB,MAAM,EAAE,YAAY;IAKhC;;OAEG;IACG,cAAc,IAAI,OAAO,CAAC,OAAO,CAAC;IAIxC;;OAEG;IACG,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IAqCtF;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAuFzB;;OAEG;IACG,gBAAgB,CAAC,QAAQ,EAAE,eAAe,EAAE,GAAG,OAAO,CAAC,gBAAgB,CAAC;IA4E9E;;OAEG;IACG,eAAe,CAAC,QAAQ,EAAE,eAAe,EAAE,EAAE,OAAO,GAAE,OAAO,CAAC,aAAa,CAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IA+FhH;;OAEG;IACG,iBAAiB,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC;IAiDvE;;OAEG;IACH,OAAO,CAAC,kBAAkB;CAmC3B"}
|