@sinoia/hubdoc-tools 1.3.4 → 1.3.5
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/dist/plugins/alfresco/index.d.ts +26 -0
- package/dist/plugins/alfresco/index.d.ts.map +1 -0
- package/dist/plugins/alfresco/index.js +405 -0
- package/dist/plugins/alfresco/index.js.map +1 -0
- package/dist/plugins/aws-s3/index.d.ts +23 -0
- package/dist/plugins/aws-s3/index.d.ts.map +1 -0
- package/dist/plugins/aws-s3/index.js +383 -0
- package/dist/plugins/aws-s3/index.js.map +1 -0
- package/dist/plugins/azure-blob/index.d.ts +23 -0
- package/dist/plugins/azure-blob/index.d.ts.map +1 -0
- package/dist/plugins/azure-blob/index.js +340 -0
- package/dist/plugins/azure-blob/index.js.map +1 -0
- package/dist/plugins/box/index.d.ts +26 -0
- package/dist/plugins/box/index.d.ts.map +1 -0
- package/dist/plugins/box/index.js +387 -0
- package/dist/plugins/box/index.js.map +1 -0
- package/dist/plugins/dropbox/index.d.ts +27 -0
- package/dist/plugins/dropbox/index.d.ts.map +1 -0
- package/dist/plugins/dropbox/index.js +375 -0
- package/dist/plugins/dropbox/index.js.map +1 -0
- package/dist/plugins/googledrive/index.d.ts +27 -0
- package/dist/plugins/googledrive/index.d.ts.map +1 -0
- package/dist/plugins/googledrive/index.js +383 -0
- package/dist/plugins/googledrive/index.js.map +1 -0
- package/dist/plugins/nuxeo/index.d.ts +24 -0
- package/dist/plugins/nuxeo/index.d.ts.map +1 -0
- package/dist/plugins/nuxeo/index.js +405 -0
- package/dist/plugins/nuxeo/index.js.map +1 -0
- package/dist/plugins/onedrive/index.d.ts +25 -0
- package/dist/plugins/onedrive/index.d.ts.map +1 -0
- package/dist/plugins/onedrive/index.js +362 -0
- package/dist/plugins/onedrive/index.js.map +1 -0
- package/dist/plugins/opentext/index.d.ts +26 -0
- package/dist/plugins/opentext/index.d.ts.map +1 -0
- package/dist/plugins/opentext/index.js +440 -0
- package/dist/plugins/opentext/index.js.map +1 -0
- package/dist/plugins/sharepoint/index.d.ts +27 -0
- package/dist/plugins/sharepoint/index.d.ts.map +1 -0
- package/dist/plugins/sharepoint/index.js +397 -0
- package/dist/plugins/sharepoint/index.js.map +1 -0
- package/package.json +6 -1
- package/plugins/aws-s3/index.ts +2 -2
- package/plugins/sharepoint/index.ts +1 -1
|
@@ -0,0 +1,440 @@
|
|
|
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 OpenTextPlugin {
|
|
10
|
+
constructor() {
|
|
11
|
+
this.name = 'opentext';
|
|
12
|
+
this.version = '1.0.0';
|
|
13
|
+
this.description = 'OpenText Content Server document source';
|
|
14
|
+
this.supportedOperations = ['import', 'export', 'both'];
|
|
15
|
+
}
|
|
16
|
+
async testConnection(config) {
|
|
17
|
+
try {
|
|
18
|
+
const client = await this.createApiClient(config);
|
|
19
|
+
const response = await client.get('/nodes/2000'); // Test access to Enterprise workspace
|
|
20
|
+
return response.status === 200;
|
|
21
|
+
}
|
|
22
|
+
catch (error) {
|
|
23
|
+
console.error(`OpenText connection test failed: ${error.message}`);
|
|
24
|
+
return false;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
async scan(config, options) {
|
|
28
|
+
this.config = config;
|
|
29
|
+
this.apiClient = await this.createApiClient(this.config);
|
|
30
|
+
const sources = [];
|
|
31
|
+
const errors = [];
|
|
32
|
+
let totalSize = 0;
|
|
33
|
+
try {
|
|
34
|
+
const limit = this.config.limit || options?.limit;
|
|
35
|
+
console.log(`🔍 Scanning OpenText Content Server${limit ? ` (limit: ${limit})` : ''}...`);
|
|
36
|
+
const startingFolderId = this.config.startingFolderId || 2000; // Enterprise workspace
|
|
37
|
+
const nodes = await this.scanNode(startingFolderId);
|
|
38
|
+
let processedCount = 0;
|
|
39
|
+
for (const node of nodes) {
|
|
40
|
+
if (!node.container && node.type === 144) { // Type 144 is Document
|
|
41
|
+
const source = {
|
|
42
|
+
id: node.id.toString(),
|
|
43
|
+
name: node.name,
|
|
44
|
+
path: await this.getNodePath(node.id),
|
|
45
|
+
size: node.size || 0,
|
|
46
|
+
mimeType: node.mime_type || this.getMimeType(node.name),
|
|
47
|
+
lastModified: new Date(node.modify_date),
|
|
48
|
+
metadata: {
|
|
49
|
+
opentextId: node.id,
|
|
50
|
+
nodeType: node.type,
|
|
51
|
+
typeName: node.type_name,
|
|
52
|
+
createdAt: node.create_date,
|
|
53
|
+
createdBy: node.created_by_name,
|
|
54
|
+
modifiedBy: node.modified_by_name,
|
|
55
|
+
parentId: node.parent_id,
|
|
56
|
+
versionNumber: node.version_number,
|
|
57
|
+
description: node.description,
|
|
58
|
+
reserved: node.reserved,
|
|
59
|
+
reservedBy: node.reserved_by,
|
|
60
|
+
reservedDate: node.reserved_date
|
|
61
|
+
}
|
|
62
|
+
};
|
|
63
|
+
// Apply filters
|
|
64
|
+
if (this.shouldIncludeSource(source, options)) {
|
|
65
|
+
sources.push(source);
|
|
66
|
+
totalSize += source.size;
|
|
67
|
+
processedCount++;
|
|
68
|
+
// Check limit
|
|
69
|
+
if (limit && processedCount >= limit) {
|
|
70
|
+
console.log(`📏 Reached limit of ${limit} files`);
|
|
71
|
+
break;
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
return {
|
|
77
|
+
sources,
|
|
78
|
+
totalCount: sources.length,
|
|
79
|
+
totalSize,
|
|
80
|
+
errors
|
|
81
|
+
};
|
|
82
|
+
}
|
|
83
|
+
catch (error) {
|
|
84
|
+
return {
|
|
85
|
+
sources: [],
|
|
86
|
+
totalCount: 0,
|
|
87
|
+
totalSize: 0,
|
|
88
|
+
errors: [`OpenText scan failed: ${error.message}`]
|
|
89
|
+
};
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
async scanNode(nodeId, parentPath = '') {
|
|
93
|
+
if (!this.apiClient)
|
|
94
|
+
throw new Error('API client not initialized');
|
|
95
|
+
const allNodes = [];
|
|
96
|
+
let page = 1;
|
|
97
|
+
const limit = 100;
|
|
98
|
+
try {
|
|
99
|
+
while (true) {
|
|
100
|
+
const response = await this.apiClient.get(`/nodes/${nodeId}/nodes`, {
|
|
101
|
+
params: {
|
|
102
|
+
limit: limit,
|
|
103
|
+
page: page,
|
|
104
|
+
expand: 'properties{original_id,parent_id,name,type,type_name,container,size,create_date,modify_date,created_by,created_by_name,modified_by,modified_by_name,mime_type,version_number,description,reserved,reserved_by,reserved_date}'
|
|
105
|
+
}
|
|
106
|
+
});
|
|
107
|
+
const nodes = response.data.results || [];
|
|
108
|
+
if (nodes.length === 0) {
|
|
109
|
+
break;
|
|
110
|
+
}
|
|
111
|
+
for (const node of nodes) {
|
|
112
|
+
const nodePath = parentPath ? `${parentPath}/${node.name}` : node.name;
|
|
113
|
+
node.fullPath = nodePath;
|
|
114
|
+
if (!node.container) {
|
|
115
|
+
// It's a document
|
|
116
|
+
allNodes.push(node);
|
|
117
|
+
}
|
|
118
|
+
else {
|
|
119
|
+
// It's a folder, recursively scan it
|
|
120
|
+
const subNodes = await this.scanNode(node.id, nodePath);
|
|
121
|
+
allNodes.push(...subNodes);
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
// Check if there are more pages
|
|
125
|
+
if (nodes.length < limit) {
|
|
126
|
+
break;
|
|
127
|
+
}
|
|
128
|
+
page++;
|
|
129
|
+
}
|
|
130
|
+
return allNodes;
|
|
131
|
+
}
|
|
132
|
+
catch (error) {
|
|
133
|
+
if (error.response?.status === 404) {
|
|
134
|
+
console.warn(`Warning: Node not found: ${nodeId}`);
|
|
135
|
+
return [];
|
|
136
|
+
}
|
|
137
|
+
throw error;
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
async import(config, sources, targetDir, options) {
|
|
141
|
+
this.config = config;
|
|
142
|
+
this.apiClient = await this.createApiClient(this.config);
|
|
143
|
+
const results = [];
|
|
144
|
+
const batchSize = options?.batchSize || 5;
|
|
145
|
+
// Process in batches to respect API limits
|
|
146
|
+
for (let i = 0; i < sources.length; i += batchSize) {
|
|
147
|
+
const batch = sources.slice(i, i + batchSize);
|
|
148
|
+
for (const source of batch) {
|
|
149
|
+
const result = await this.importSingle(source, targetDir);
|
|
150
|
+
results.push(result);
|
|
151
|
+
// Small delay to respect rate limits
|
|
152
|
+
await this.sleep(300);
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
return results;
|
|
156
|
+
}
|
|
157
|
+
async importSingle(source, targetDir) {
|
|
158
|
+
try {
|
|
159
|
+
if (!this.apiClient)
|
|
160
|
+
throw new Error('API client not initialized');
|
|
161
|
+
const targetPath = path_1.default.join(targetDir, source.path);
|
|
162
|
+
const targetDirectory = path_1.default.dirname(targetPath);
|
|
163
|
+
await fs_extra_1.default.ensureDir(targetDirectory);
|
|
164
|
+
// Download file content from OpenText
|
|
165
|
+
const response = await this.apiClient.get(`/nodes/${source.id}/content`, {
|
|
166
|
+
responseType: 'stream'
|
|
167
|
+
});
|
|
168
|
+
const writer = fs_extra_1.default.createWriteStream(targetPath);
|
|
169
|
+
response.data.pipe(writer);
|
|
170
|
+
return new Promise((resolve) => {
|
|
171
|
+
writer.on('finish', () => {
|
|
172
|
+
resolve({
|
|
173
|
+
success: true,
|
|
174
|
+
source,
|
|
175
|
+
localPath: targetPath,
|
|
176
|
+
bytesTransferred: source.size
|
|
177
|
+
});
|
|
178
|
+
});
|
|
179
|
+
writer.on('error', (error) => {
|
|
180
|
+
resolve({
|
|
181
|
+
success: false,
|
|
182
|
+
source,
|
|
183
|
+
error: error.message
|
|
184
|
+
});
|
|
185
|
+
});
|
|
186
|
+
});
|
|
187
|
+
}
|
|
188
|
+
catch (error) {
|
|
189
|
+
return {
|
|
190
|
+
success: false,
|
|
191
|
+
source,
|
|
192
|
+
error: error.message
|
|
193
|
+
};
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
async export(config, localSources, options) {
|
|
197
|
+
this.config = config;
|
|
198
|
+
this.apiClient = await this.createApiClient(this.config);
|
|
199
|
+
const results = [];
|
|
200
|
+
const rootFolderId = this.config.startingFolderId || 2000;
|
|
201
|
+
for (const source of localSources) {
|
|
202
|
+
try {
|
|
203
|
+
// Determine target folder
|
|
204
|
+
let targetFolderId = rootFolderId;
|
|
205
|
+
if (options?.preserveStructure && source.path.includes('/')) {
|
|
206
|
+
const folderPath = path_1.default.dirname(source.path);
|
|
207
|
+
targetFolderId = await this.createFolderStructure(folderPath, rootFolderId);
|
|
208
|
+
}
|
|
209
|
+
// Read local file
|
|
210
|
+
const fileContent = await fs_extra_1.default.readFile(source.id);
|
|
211
|
+
// Normalize filename to NFC to handle accented characters consistently across platforms
|
|
212
|
+
const fileName = (options?.preserveStructure ? path_1.default.basename(source.path) : source.name).normalize('NFC');
|
|
213
|
+
// Upload file to OpenText using multipart form data
|
|
214
|
+
const FormData = require('form-data');
|
|
215
|
+
const form = new FormData();
|
|
216
|
+
form.append('type', '144'); // Document type
|
|
217
|
+
form.append('name', fileName);
|
|
218
|
+
form.append('description', `Uploaded via hubdoc-tools`);
|
|
219
|
+
form.append('file', fileContent, fileName);
|
|
220
|
+
const response = await this.apiClient.post(`/nodes/${targetFolderId}/nodes`, form, {
|
|
221
|
+
headers: {
|
|
222
|
+
...form.getHeaders()
|
|
223
|
+
}
|
|
224
|
+
});
|
|
225
|
+
const targetPath = options?.preserveStructure ? source.path : source.name;
|
|
226
|
+
results.push({
|
|
227
|
+
success: true,
|
|
228
|
+
targetPath,
|
|
229
|
+
source,
|
|
230
|
+
bytesTransferred: source.size
|
|
231
|
+
});
|
|
232
|
+
}
|
|
233
|
+
catch (error) {
|
|
234
|
+
results.push({
|
|
235
|
+
success: false,
|
|
236
|
+
targetPath: options?.targetPath || '',
|
|
237
|
+
source,
|
|
238
|
+
error: error.message
|
|
239
|
+
});
|
|
240
|
+
}
|
|
241
|
+
}
|
|
242
|
+
return results;
|
|
243
|
+
}
|
|
244
|
+
async createFolderStructure(folderPath, parentId) {
|
|
245
|
+
if (!this.apiClient)
|
|
246
|
+
throw new Error('API client not initialized');
|
|
247
|
+
const parts = folderPath.split('/').filter(part => part.length > 0);
|
|
248
|
+
let currentParentId = parentId;
|
|
249
|
+
for (const folderName of parts) {
|
|
250
|
+
try {
|
|
251
|
+
// Check if folder already exists
|
|
252
|
+
const response = await this.apiClient.get(`/nodes/${currentParentId}/nodes`, {
|
|
253
|
+
params: {
|
|
254
|
+
where_name: folderName,
|
|
255
|
+
where_type: 0, // Folder type
|
|
256
|
+
limit: 1
|
|
257
|
+
}
|
|
258
|
+
});
|
|
259
|
+
const existingFolder = response.data.results?.[0];
|
|
260
|
+
if (existingFolder) {
|
|
261
|
+
currentParentId = existingFolder.id;
|
|
262
|
+
}
|
|
263
|
+
else {
|
|
264
|
+
// Create new folder
|
|
265
|
+
const createResponse = await this.apiClient.post(`/nodes/${currentParentId}/nodes`, {
|
|
266
|
+
type: 0, // Folder type
|
|
267
|
+
name: folderName,
|
|
268
|
+
description: `Created by hubdoc-tools`
|
|
269
|
+
});
|
|
270
|
+
currentParentId = createResponse.data.id;
|
|
271
|
+
}
|
|
272
|
+
}
|
|
273
|
+
catch (error) {
|
|
274
|
+
throw new Error(`Failed to create folder structure: ${error.message}`);
|
|
275
|
+
}
|
|
276
|
+
}
|
|
277
|
+
return currentParentId;
|
|
278
|
+
}
|
|
279
|
+
async getNodePath(nodeId) {
|
|
280
|
+
if (!this.apiClient)
|
|
281
|
+
throw new Error('API client not initialized');
|
|
282
|
+
try {
|
|
283
|
+
// Get the node's ancestors to build the full path
|
|
284
|
+
const response = await this.apiClient.get(`/nodes/${nodeId}/ancestors`);
|
|
285
|
+
const ancestors = response.data.ancestors || [];
|
|
286
|
+
// Filter out the Enterprise workspace and build path
|
|
287
|
+
const pathParts = ancestors
|
|
288
|
+
.filter((ancestor) => ancestor.id !== 2000) // Skip Enterprise workspace
|
|
289
|
+
.map((ancestor) => ancestor.name);
|
|
290
|
+
// Get the node itself to add its name
|
|
291
|
+
const nodeResponse = await this.apiClient.get(`/nodes/${nodeId}`);
|
|
292
|
+
const nodeName = nodeResponse.data.results.name;
|
|
293
|
+
pathParts.push(nodeName);
|
|
294
|
+
return pathParts.join('/');
|
|
295
|
+
}
|
|
296
|
+
catch (error) {
|
|
297
|
+
// Fallback to just the node ID if path resolution fails
|
|
298
|
+
return `node_${nodeId}`;
|
|
299
|
+
}
|
|
300
|
+
}
|
|
301
|
+
getConfigSchema() {
|
|
302
|
+
return {
|
|
303
|
+
type: 'object',
|
|
304
|
+
properties: {
|
|
305
|
+
baseUrl: {
|
|
306
|
+
type: 'string',
|
|
307
|
+
description: 'OpenText Content Server base URL (e.g., http://localhost/otcs/cs.exe/api/v1)',
|
|
308
|
+
required: true
|
|
309
|
+
},
|
|
310
|
+
username: {
|
|
311
|
+
type: 'string',
|
|
312
|
+
description: 'OpenText username',
|
|
313
|
+
required: false
|
|
314
|
+
},
|
|
315
|
+
password: {
|
|
316
|
+
type: 'string',
|
|
317
|
+
description: 'OpenText password',
|
|
318
|
+
required: false
|
|
319
|
+
},
|
|
320
|
+
ticket: {
|
|
321
|
+
type: 'string',
|
|
322
|
+
description: 'OTDS authentication ticket (alternative to username/password)',
|
|
323
|
+
required: false
|
|
324
|
+
},
|
|
325
|
+
startingFolderId: {
|
|
326
|
+
type: 'number',
|
|
327
|
+
description: 'Starting folder ID (default: 2000 for Enterprise workspace)',
|
|
328
|
+
default: 2000
|
|
329
|
+
},
|
|
330
|
+
limit: {
|
|
331
|
+
type: 'number',
|
|
332
|
+
description: 'Maximum number of documents to scan (useful for testing)',
|
|
333
|
+
required: false
|
|
334
|
+
}
|
|
335
|
+
},
|
|
336
|
+
required: ['baseUrl'],
|
|
337
|
+
oneOf: [
|
|
338
|
+
{ required: ['baseUrl', 'username', 'password'] },
|
|
339
|
+
{ required: ['baseUrl', 'ticket'] }
|
|
340
|
+
]
|
|
341
|
+
};
|
|
342
|
+
}
|
|
343
|
+
async initialize(config) {
|
|
344
|
+
this.config = config;
|
|
345
|
+
if (!this.config.baseUrl) {
|
|
346
|
+
throw new Error('OpenText base URL is required');
|
|
347
|
+
}
|
|
348
|
+
if (!this.config.username && !this.config.ticket) {
|
|
349
|
+
throw new Error('Either username/password or OTDS ticket is required');
|
|
350
|
+
}
|
|
351
|
+
if (this.config.username && !this.config.password) {
|
|
352
|
+
throw new Error('Password is required when using username authentication');
|
|
353
|
+
}
|
|
354
|
+
this.apiClient = await this.createApiClient(this.config);
|
|
355
|
+
}
|
|
356
|
+
async destroy() {
|
|
357
|
+
// Log out if we have an auth token
|
|
358
|
+
if (this.authToken && this.apiClient) {
|
|
359
|
+
try {
|
|
360
|
+
await this.apiClient.post('/auth');
|
|
361
|
+
}
|
|
362
|
+
catch (error) {
|
|
363
|
+
// Ignore logout errors
|
|
364
|
+
}
|
|
365
|
+
}
|
|
366
|
+
this.config = undefined;
|
|
367
|
+
this.apiClient = undefined;
|
|
368
|
+
this.authToken = undefined;
|
|
369
|
+
}
|
|
370
|
+
async createApiClient(config) {
|
|
371
|
+
const client = axios_1.default.create({
|
|
372
|
+
baseURL: config.baseUrl,
|
|
373
|
+
headers: {
|
|
374
|
+
'Content-Type': 'application/json'
|
|
375
|
+
},
|
|
376
|
+
timeout: 30000
|
|
377
|
+
});
|
|
378
|
+
// Authenticate and get token
|
|
379
|
+
if (config.ticket) {
|
|
380
|
+
// Use OTDS ticket
|
|
381
|
+
client.defaults.headers.common['OTDSTicket'] = config.ticket;
|
|
382
|
+
}
|
|
383
|
+
else if (config.username && config.password) {
|
|
384
|
+
// Login with username/password
|
|
385
|
+
const authResponse = await client.post('/auth', {
|
|
386
|
+
username: config.username,
|
|
387
|
+
password: config.password
|
|
388
|
+
});
|
|
389
|
+
this.authToken = authResponse.data.ticket;
|
|
390
|
+
client.defaults.headers.common['OTCSTicket'] = this.authToken;
|
|
391
|
+
}
|
|
392
|
+
return client;
|
|
393
|
+
}
|
|
394
|
+
getMimeType(fileName) {
|
|
395
|
+
const ext = path_1.default.extname(fileName).toLowerCase();
|
|
396
|
+
const mimeTypes = {
|
|
397
|
+
'.pdf': 'application/pdf',
|
|
398
|
+
'.doc': 'application/msword',
|
|
399
|
+
'.docx': 'application/vnd.openxmlformats-officedocument.wordprocessingml.document',
|
|
400
|
+
'.xls': 'application/vnd.ms-excel',
|
|
401
|
+
'.xlsx': 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',
|
|
402
|
+
'.ppt': 'application/vnd.ms-powerpoint',
|
|
403
|
+
'.pptx': 'application/vnd.openxmlformats-officedocument.presentationml.presentation',
|
|
404
|
+
'.txt': 'text/plain',
|
|
405
|
+
'.csv': 'text/csv',
|
|
406
|
+
'.json': 'application/json',
|
|
407
|
+
'.xml': 'application/xml',
|
|
408
|
+
'.jpg': 'image/jpeg',
|
|
409
|
+
'.jpeg': 'image/jpeg',
|
|
410
|
+
'.png': 'image/png',
|
|
411
|
+
'.gif': 'image/gif',
|
|
412
|
+
'.zip': 'application/zip'
|
|
413
|
+
};
|
|
414
|
+
return mimeTypes[ext] || 'application/octet-stream';
|
|
415
|
+
}
|
|
416
|
+
shouldIncludeSource(source, options) {
|
|
417
|
+
// Apply size filter
|
|
418
|
+
if (options?.filters?.maxSize && source.size > options.filters.maxSize) {
|
|
419
|
+
return false;
|
|
420
|
+
}
|
|
421
|
+
// Apply date range filter
|
|
422
|
+
if (options?.filters?.dateRange) {
|
|
423
|
+
const { from, to } = options.filters.dateRange;
|
|
424
|
+
if (from && source.lastModified < from)
|
|
425
|
+
return false;
|
|
426
|
+
if (to && source.lastModified > to)
|
|
427
|
+
return false;
|
|
428
|
+
}
|
|
429
|
+
// Apply MIME type filter
|
|
430
|
+
if (options?.filters?.mimeTypes && !options.filters.mimeTypes.includes(source.mimeType)) {
|
|
431
|
+
return false;
|
|
432
|
+
}
|
|
433
|
+
return true;
|
|
434
|
+
}
|
|
435
|
+
sleep(ms) {
|
|
436
|
+
return new Promise(resolve => setTimeout(resolve, ms));
|
|
437
|
+
}
|
|
438
|
+
}
|
|
439
|
+
exports.default = OpenTextPlugin;
|
|
440
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../plugins/opentext/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { DocumentSourcePlugin, DocumentSource, PluginConfig, ScanResult, PluginImportOptions, PluginExportOptions, ImportResult, ExportResult } from '../../src/types/plugins';
|
|
2
|
+
export default class SharePointPlugin implements DocumentSourcePlugin {
|
|
3
|
+
readonly name = "sharepoint";
|
|
4
|
+
readonly version = "1.0.0";
|
|
5
|
+
readonly description = "SharePoint Online document source";
|
|
6
|
+
readonly supportedOperations: readonly ["import", "export", "both"];
|
|
7
|
+
private config?;
|
|
8
|
+
private apiClient?;
|
|
9
|
+
private readonly baseUrl;
|
|
10
|
+
testConnection(config: PluginConfig): Promise<boolean>;
|
|
11
|
+
scan(config: PluginConfig, options?: PluginImportOptions): Promise<ScanResult>;
|
|
12
|
+
private scanDriveFolder;
|
|
13
|
+
import(config: PluginConfig, sources: DocumentSource[], targetDir: string, options?: PluginImportOptions): Promise<ImportResult[]>;
|
|
14
|
+
private importSingle;
|
|
15
|
+
export?(config: PluginConfig, localSources: DocumentSource[], options?: PluginExportOptions): Promise<ExportResult[]>;
|
|
16
|
+
private getSiteInfo;
|
|
17
|
+
private getDefaultDriveId;
|
|
18
|
+
private createFolderStructure;
|
|
19
|
+
getConfigSchema(): Record<string, any>;
|
|
20
|
+
initialize(config: PluginConfig): Promise<void>;
|
|
21
|
+
destroy(): Promise<void>;
|
|
22
|
+
private createApiClient;
|
|
23
|
+
private getItemPath;
|
|
24
|
+
private shouldIncludeSource;
|
|
25
|
+
private sleep;
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../plugins/sharepoint/index.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,oBAAoB,EACpB,cAAc,EACd,YAAY,EACZ,UAAU,EACV,mBAAmB,EACnB,mBAAmB,EACnB,YAAY,EACZ,YAAY,EACb,MAAM,yBAAyB,CAAC;AA8CjC,MAAM,CAAC,OAAO,OAAO,gBAAiB,YAAW,oBAAoB;IACnE,QAAQ,CAAC,IAAI,gBAAgB;IAC7B,QAAQ,CAAC,OAAO,WAAW;IAC3B,QAAQ,CAAC,WAAW,uCAAuC;IAC3D,QAAQ,CAAC,mBAAmB,wCAAyC;IAErE,OAAO,CAAC,MAAM,CAAC,CAAmB;IAClC,OAAO,CAAC,SAAS,CAAC,CAAgB;IAClC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAsC;IAExD,cAAc,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC;IAWtD,IAAI,CAAC,MAAM,EAAE,YAAY,EAAE,OAAO,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,UAAU,CAAC;YA2EtE,eAAe;IA6CvB,MAAM,CACV,MAAM,EAAE,YAAY,EACpB,OAAO,EAAE,cAAc,EAAE,EACzB,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,mBAAmB,GAC5B,OAAO,CAAC,YAAY,EAAE,CAAC;YAuBZ,YAAY;IAkDpB,MAAM,CAAC,CACX,MAAM,EAAE,YAAY,EACpB,YAAY,EAAE,cAAc,EAAE,EAC9B,OAAO,CAAC,EAAE,mBAAmB,GAC5B,OAAO,CAAC,YAAY,EAAE,CAAC;YAqEZ,WAAW;YAUX,iBAAiB;YAOjB,qBAAqB;IAqCnC,eAAe,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAkChC,UAAU,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAU/C,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAK9B,OAAO,CAAC,eAAe;IAWvB,OAAO,CAAC,WAAW;IAoBnB,OAAO,CAAC,mBAAmB;IAqB3B,OAAO,CAAC,KAAK;CAGd"}
|