@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.
Files changed (341) hide show
  1. package/README.md +115 -34
  2. package/dist/__tests__/fixtures/plugins/connection-plugin/index.d.ts +15 -0
  3. package/dist/__tests__/fixtures/plugins/connection-plugin/index.d.ts.map +1 -0
  4. package/dist/__tests__/fixtures/plugins/connection-plugin/index.js +37 -0
  5. package/dist/__tests__/fixtures/plugins/connection-plugin/index.js.map +1 -0
  6. package/dist/__tests__/fixtures/plugins/scan-plugin/index.d.ts +15 -0
  7. package/dist/__tests__/fixtures/plugins/scan-plugin/index.d.ts.map +1 -0
  8. package/dist/__tests__/fixtures/plugins/scan-plugin/index.js +54 -0
  9. package/dist/__tests__/fixtures/plugins/scan-plugin/index.js.map +1 -0
  10. package/dist/__tests__/fixtures/plugins/test-plugin/index.d.ts +15 -0
  11. package/dist/__tests__/fixtures/plugins/test-plugin/index.d.ts.map +1 -0
  12. package/dist/__tests__/fixtures/plugins/test-plugin/index.js +34 -0
  13. package/dist/__tests__/fixtures/plugins/test-plugin/index.js.map +1 -0
  14. package/dist/__tests__/fixtures/plugins/workflow-plugin/index.d.ts +16 -0
  15. package/dist/__tests__/fixtures/plugins/workflow-plugin/index.d.ts.map +1 -0
  16. package/dist/__tests__/fixtures/plugins/workflow-plugin/index.js +145 -0
  17. package/dist/__tests__/fixtures/plugins/workflow-plugin/index.js.map +1 -0
  18. package/dist/api/api/authentication-api.d.ts +208 -0
  19. package/dist/api/api/authentication-api.d.ts.map +1 -0
  20. package/dist/api/api/authentication-api.js +385 -0
  21. package/dist/api/api/authentication-api.js.map +1 -0
  22. package/dist/api/api/bulk-uploads-api.d.ts +101 -0
  23. package/dist/api/api/bulk-uploads-api.d.ts.map +1 -0
  24. package/dist/api/api/bulk-uploads-api.js +195 -0
  25. package/dist/api/api/bulk-uploads-api.js.map +1 -0
  26. package/dist/api/api/contacts-api.d.ts +246 -0
  27. package/dist/api/api/contacts-api.d.ts.map +1 -0
  28. package/dist/api/api/contacts-api.js +465 -0
  29. package/dist/api/api/contacts-api.js.map +1 -0
  30. package/dist/api/api/documents-api.d.ts +267 -0
  31. package/dist/api/api/documents-api.d.ts.map +1 -0
  32. package/dist/api/api/documents-api.js +506 -0
  33. package/dist/api/api/documents-api.js.map +1 -0
  34. package/dist/api/api/folders-api.d.ts +255 -0
  35. package/dist/api/api/folders-api.d.ts.map +1 -0
  36. package/dist/api/api/folders-api.js +479 -0
  37. package/dist/api/api/folders-api.js.map +1 -0
  38. package/dist/api/api/groups-api.d.ts +246 -0
  39. package/dist/api/api/groups-api.d.ts.map +1 -0
  40. package/dist/api/api/groups-api.js +465 -0
  41. package/dist/api/api/groups-api.js.map +1 -0
  42. package/dist/api/api/permissions-api.d.ts +246 -0
  43. package/dist/api/api/permissions-api.d.ts.map +1 -0
  44. package/dist/api/api/permissions-api.js +465 -0
  45. package/dist/api/api/permissions-api.js.map +1 -0
  46. package/dist/api/api/workspaces-api.d.ts +213 -0
  47. package/dist/api/api/workspaces-api.d.ts.map +1 -0
  48. package/dist/api/api/workspaces-api.js +424 -0
  49. package/dist/api/api/workspaces-api.js.map +1 -0
  50. package/dist/api/api.d.ts +20 -0
  51. package/dist/api/api.d.ts.map +1 -0
  52. package/dist/api/api.js +38 -0
  53. package/dist/api/api.js.map +1 -0
  54. package/dist/api/base.d.ts +43 -0
  55. package/dist/api/base.d.ts.map +1 -0
  56. package/dist/api/base.js +49 -0
  57. package/dist/api/base.js.map +1 -0
  58. package/dist/api/common.d.ts +29 -0
  59. package/dist/api/common.d.ts.map +1 -0
  60. package/dist/api/common.js +109 -0
  61. package/dist/api/common.js.map +1 -0
  62. package/dist/api/configuration.d.ts +99 -0
  63. package/dist/api/configuration.d.ts.map +1 -0
  64. package/dist/api/configuration.js +49 -0
  65. package/dist/api/configuration.js.map +1 -0
  66. package/dist/api/index.d.ts +15 -0
  67. package/dist/api/index.d.ts.map +1 -0
  68. package/dist/api/index.js +33 -0
  69. package/dist/api/index.js.map +1 -0
  70. package/dist/api/models/api-v1-documents-documents-post-request1.d.ts +34 -0
  71. package/dist/api/models/api-v1-documents-documents-post-request1.d.ts.map +1 -0
  72. package/dist/api/models/api-v1-documents-documents-post-request1.js +16 -0
  73. package/dist/api/models/api-v1-documents-documents-post-request1.js.map +1 -0
  74. package/dist/api/models/api-v1-documents-documents-post201-response.d.ts +17 -0
  75. package/dist/api/models/api-v1-documents-documents-post201-response.d.ts.map +1 -0
  76. package/dist/api/models/api-v1-documents-documents-post201-response.js +16 -0
  77. package/dist/api/models/api-v1-documents-documents-post201-response.js.map +1 -0
  78. package/dist/api/models/api-v1-documents-folders-id-get200-response-all-of-items-inner-one-of.d.ts +17 -0
  79. package/dist/api/models/api-v1-documents-folders-id-get200-response-all-of-items-inner-one-of.d.ts.map +1 -0
  80. package/dist/api/models/api-v1-documents-folders-id-get200-response-all-of-items-inner-one-of.js +16 -0
  81. package/dist/api/models/api-v1-documents-folders-id-get200-response-all-of-items-inner-one-of.js.map +1 -0
  82. package/dist/api/models/api-v1-documents-folders-id-get200-response-all-of-items-inner-one-of1.d.ts +17 -0
  83. package/dist/api/models/api-v1-documents-folders-id-get200-response-all-of-items-inner-one-of1.d.ts.map +1 -0
  84. package/dist/api/models/api-v1-documents-folders-id-get200-response-all-of-items-inner-one-of1.js +16 -0
  85. package/dist/api/models/api-v1-documents-folders-id-get200-response-all-of-items-inner-one-of1.js.map +1 -0
  86. package/dist/api/models/api-v1-documents-folders-id-get200-response-all-of-items-inner.d.ts +18 -0
  87. package/dist/api/models/api-v1-documents-folders-id-get200-response-all-of-items-inner.d.ts.map +1 -0
  88. package/dist/api/models/api-v1-documents-folders-id-get200-response-all-of-items-inner.js +16 -0
  89. package/dist/api/models/api-v1-documents-folders-id-get200-response-all-of-items-inner.js.map +1 -0
  90. package/dist/api/models/api-v1-documents-folders-id-get200-response.d.ts +17 -0
  91. package/dist/api/models/api-v1-documents-folders-id-get200-response.d.ts.map +1 -0
  92. package/dist/api/models/api-v1-documents-folders-id-get200-response.js +16 -0
  93. package/dist/api/models/api-v1-documents-folders-id-get200-response.js.map +1 -0
  94. package/dist/api/models/bulk-upload-mutation.d.ts +34 -0
  95. package/dist/api/models/bulk-upload-mutation.d.ts.map +1 -0
  96. package/dist/api/models/bulk-upload-mutation.js +16 -0
  97. package/dist/api/models/bulk-upload-mutation.js.map +1 -0
  98. package/dist/api/models/bulk-upload.d.ts +91 -0
  99. package/dist/api/models/bulk-upload.d.ts.map +1 -0
  100. package/dist/api/models/bulk-upload.js +23 -0
  101. package/dist/api/models/bulk-upload.js.map +1 -0
  102. package/dist/api/models/contact-mutation.d.ts +30 -0
  103. package/dist/api/models/contact-mutation.d.ts.map +1 -0
  104. package/dist/api/models/contact-mutation.js +16 -0
  105. package/dist/api/models/contact-mutation.js.map +1 -0
  106. package/dist/api/models/contact.d.ts +54 -0
  107. package/dist/api/models/contact.d.ts.map +1 -0
  108. package/dist/api/models/contact.js +16 -0
  109. package/dist/api/models/contact.js.map +1 -0
  110. package/dist/api/models/document-document-type.d.ts +19 -0
  111. package/dist/api/models/document-document-type.d.ts.map +1 -0
  112. package/dist/api/models/document-document-type.js +16 -0
  113. package/dist/api/models/document-document-type.js.map +1 -0
  114. package/dist/api/models/document-domain.d.ts +19 -0
  115. package/dist/api/models/document-domain.d.ts.map +1 -0
  116. package/dist/api/models/document-domain.js +16 -0
  117. package/dist/api/models/document-domain.js.map +1 -0
  118. package/dist/api/models/document-folder.d.ts +19 -0
  119. package/dist/api/models/document-folder.d.ts.map +1 -0
  120. package/dist/api/models/document-folder.js +16 -0
  121. package/dist/api/models/document-folder.js.map +1 -0
  122. package/dist/api/models/document-mutation.d.ts +50 -0
  123. package/dist/api/models/document-mutation.d.ts.map +1 -0
  124. package/dist/api/models/document-mutation.js +16 -0
  125. package/dist/api/models/document-mutation.js.map +1 -0
  126. package/dist/api/models/document.d.ts +73 -0
  127. package/dist/api/models/document.d.ts.map +1 -0
  128. package/dist/api/models/document.js +16 -0
  129. package/dist/api/models/document.js.map +1 -0
  130. package/dist/api/models/folder-mutation.d.ts +38 -0
  131. package/dist/api/models/folder-mutation.d.ts.map +1 -0
  132. package/dist/api/models/folder-mutation.js +16 -0
  133. package/dist/api/models/folder-mutation.js.map +1 -0
  134. package/dist/api/models/folder-parent.d.ts +19 -0
  135. package/dist/api/models/folder-parent.d.ts.map +1 -0
  136. package/dist/api/models/folder-parent.js +16 -0
  137. package/dist/api/models/folder-parent.js.map +1 -0
  138. package/dist/api/models/folder.d.ts +65 -0
  139. package/dist/api/models/folder.d.ts.map +1 -0
  140. package/dist/api/models/folder.js +16 -0
  141. package/dist/api/models/folder.js.map +1 -0
  142. package/dist/api/models/group-mutation.d.ts +26 -0
  143. package/dist/api/models/group-mutation.d.ts.map +1 -0
  144. package/dist/api/models/group-mutation.js +16 -0
  145. package/dist/api/models/group-mutation.js.map +1 -0
  146. package/dist/api/models/group.d.ts +38 -0
  147. package/dist/api/models/group.d.ts.map +1 -0
  148. package/dist/api/models/group.js +16 -0
  149. package/dist/api/models/group.js.map +1 -0
  150. package/dist/api/models/index.d.ts +35 -0
  151. package/dist/api/models/index.d.ts.map +1 -0
  152. package/dist/api/models/index.js +51 -0
  153. package/dist/api/models/index.js.map +1 -0
  154. package/dist/api/models/model-error.d.ts +26 -0
  155. package/dist/api/models/model-error.d.ts.map +1 -0
  156. package/dist/api/models/model-error.js +16 -0
  157. package/dist/api/models/model-error.js.map +1 -0
  158. package/dist/api/models/oauth-revoke-post200-response.d.ts +15 -0
  159. package/dist/api/models/oauth-revoke-post200-response.d.ts.map +1 -0
  160. package/dist/api/models/oauth-revoke-post200-response.js +16 -0
  161. package/dist/api/models/oauth-revoke-post200-response.js.map +1 -0
  162. package/dist/api/models/permission-actor.d.ts +20 -0
  163. package/dist/api/models/permission-actor.d.ts.map +1 -0
  164. package/dist/api/models/permission-actor.js +16 -0
  165. package/dist/api/models/permission-actor.js.map +1 -0
  166. package/dist/api/models/permission-mutation.d.ts +44 -0
  167. package/dist/api/models/permission-mutation.d.ts.map +1 -0
  168. package/dist/api/models/permission-mutation.js +22 -0
  169. package/dist/api/models/permission-mutation.js.map +1 -0
  170. package/dist/api/models/permission-permissible.d.ts +20 -0
  171. package/dist/api/models/permission-permissible.d.ts.map +1 -0
  172. package/dist/api/models/permission-permissible.js +16 -0
  173. package/dist/api/models/permission-permissible.js.map +1 -0
  174. package/dist/api/models/permission.d.ts +60 -0
  175. package/dist/api/models/permission.d.ts.map +1 -0
  176. package/dist/api/models/permission.js +22 -0
  177. package/dist/api/models/permission.js.map +1 -0
  178. package/dist/api/models/token-response.d.ts +41 -0
  179. package/dist/api/models/token-response.d.ts.map +1 -0
  180. package/dist/api/models/token-response.js +16 -0
  181. package/dist/api/models/token-response.js.map +1 -0
  182. package/dist/api/models/user.d.ts +18 -0
  183. package/dist/api/models/user.d.ts.map +1 -0
  184. package/dist/api/models/user.js +16 -0
  185. package/dist/api/models/user.js.map +1 -0
  186. package/dist/api/models/workspace-mutation-settings-validation.d.ts +26 -0
  187. package/dist/api/models/workspace-mutation-settings-validation.d.ts.map +1 -0
  188. package/dist/api/models/workspace-mutation-settings-validation.js +16 -0
  189. package/dist/api/models/workspace-mutation-settings-validation.js.map +1 -0
  190. package/dist/api/models/workspace-mutation-settings.d.ts +60 -0
  191. package/dist/api/models/workspace-mutation-settings.d.ts.map +1 -0
  192. package/dist/api/models/workspace-mutation-settings.js +16 -0
  193. package/dist/api/models/workspace-mutation-settings.js.map +1 -0
  194. package/dist/api/models/workspace-mutation.d.ts +44 -0
  195. package/dist/api/models/workspace-mutation.d.ts.map +1 -0
  196. package/dist/api/models/workspace-mutation.js +16 -0
  197. package/dist/api/models/workspace-mutation.js.map +1 -0
  198. package/dist/api/models/workspace-settings-validation.d.ts +26 -0
  199. package/dist/api/models/workspace-settings-validation.d.ts.map +1 -0
  200. package/dist/api/models/workspace-settings-validation.js +16 -0
  201. package/dist/api/models/workspace-settings-validation.js.map +1 -0
  202. package/dist/api/models/workspace-settings.d.ts +60 -0
  203. package/dist/api/models/workspace-settings.d.ts.map +1 -0
  204. package/dist/api/models/workspace-settings.js +16 -0
  205. package/dist/api/models/workspace-settings.js.map +1 -0
  206. package/dist/api/models/workspace.d.ts +62 -0
  207. package/dist/api/models/workspace.d.ts.map +1 -0
  208. package/dist/api/models/workspace.js +16 -0
  209. package/dist/api/models/workspace.js.map +1 -0
  210. package/dist/cli/handlers/command-handlers.d.ts +29 -0
  211. package/dist/cli/handlers/command-handlers.d.ts.map +1 -0
  212. package/dist/cli/handlers/command-handlers.js +261 -0
  213. package/dist/cli/handlers/command-handlers.js.map +1 -0
  214. package/dist/cli/handlers/engine-handlers.d.ts +15 -0
  215. package/dist/cli/handlers/engine-handlers.d.ts.map +1 -0
  216. package/dist/cli/handlers/engine-handlers.js +174 -0
  217. package/dist/cli/handlers/engine-handlers.js.map +1 -0
  218. package/dist/cli/interactive.d.ts +15 -0
  219. package/dist/cli/interactive.d.ts.map +1 -0
  220. package/dist/cli/interactive.js +234 -0
  221. package/dist/cli/interactive.js.map +1 -0
  222. package/dist/cli.js +31 -740
  223. package/dist/cli.js.map +1 -1
  224. package/dist/commands/export.d.ts +1 -1
  225. package/dist/commands/export.d.ts.map +1 -1
  226. package/dist/commands/export.js +1 -1
  227. package/dist/commands/export.js.map +1 -1
  228. package/dist/commands/import.d.ts.map +1 -1
  229. package/dist/commands/import.js +5 -1
  230. package/dist/commands/import.js.map +1 -1
  231. package/dist/index.d.ts +27 -3
  232. package/dist/index.d.ts.map +1 -1
  233. package/dist/index.js +63 -20
  234. package/dist/index.js.map +1 -1
  235. package/dist/services/hubdoc-api.d.ts +26 -6
  236. package/dist/services/hubdoc-api.d.ts.map +1 -1
  237. package/dist/services/hubdoc-api.js +194 -43
  238. package/dist/services/hubdoc-api.js.map +1 -1
  239. package/dist/services/hubdoc-export.d.ts +1 -1
  240. package/dist/services/hubdoc-export.d.ts.map +1 -1
  241. package/dist/services/hubdoc-export.js +1 -1
  242. package/dist/services/hubdoc-export.js.map +1 -1
  243. package/dist/services/oauth-token-service.d.ts +27 -14
  244. package/dist/services/oauth-token-service.d.ts.map +1 -1
  245. package/dist/services/oauth-token-service.js +147 -80
  246. package/dist/services/oauth-token-service.js.map +1 -1
  247. package/dist/services/plugin-import.d.ts +2 -2
  248. package/dist/services/plugin-import.d.ts.map +1 -1
  249. package/dist/services/plugin-import.js +2 -2
  250. package/dist/services/plugin-import.js.map +1 -1
  251. package/dist/services/plugin-manager.d.ts +6 -1
  252. package/dist/services/plugin-manager.d.ts.map +1 -1
  253. package/dist/services/plugin-manager.js +28 -2
  254. package/dist/services/plugin-manager.js.map +1 -1
  255. package/dist/types/index.d.ts +11 -37
  256. package/dist/types/index.d.ts.map +1 -1
  257. package/dist/utils/config.d.ts +30 -1
  258. package/dist/utils/config.d.ts.map +1 -1
  259. package/dist/utils/config.js +187 -40
  260. package/dist/utils/config.js.map +1 -1
  261. package/dist/utils/csv.d.ts.map +1 -1
  262. package/dist/utils/csv.js +14 -3
  263. package/dist/utils/csv.js.map +1 -1
  264. package/package.json +23 -6
  265. package/.env.example +0 -23
  266. package/BAUTECH_HubDoc_Import.pptx +0 -0
  267. package/CHANGELOG.md +0 -134
  268. package/DEMO-DOCUMENTATION.html +0 -356
  269. package/DEMO-DOCUMENTATION.md +0 -411
  270. package/EXPORT-DOCUMENTATION.md +0 -333
  271. package/HUBDOC-API-V2.md +0 -248
  272. package/INSTALL.md +0 -175
  273. package/PACKAGING.md +0 -206
  274. package/PLUGINS.md +0 -328
  275. package/PRESENTATION-CLIENT.md +0 -100
  276. package/README-hubdoc-tool.md +0 -369
  277. package/README-npm.md +0 -238
  278. package/TESTING.md +0 -129
  279. package/config-examples/README.md +0 -36
  280. package/config-examples/alfresco-config.example.json +0 -8
  281. package/config-examples/azure-blob-config.example.json +0 -7
  282. package/config-examples/box-config.example.json +0 -5
  283. package/config-examples/nuxeo-config.example.json +0 -8
  284. package/config-examples/opentext-config.example.json +0 -7
  285. package/config-examples/s3-config.example.json +0 -8
  286. package/config-examples/sharepoint-config.example.json +0 -7
  287. package/demo/README.md +0 -199
  288. package/demo/demo-script.md +0 -284
  289. package/demo/generate-sample-csv.js +0 -351
  290. package/demo/mapping_bautech_15k.csv +0 -1
  291. package/demo/simulate-import.js +0 -273
  292. package/dist/commands/export-v2.d.ts +0 -45
  293. package/dist/commands/export-v2.d.ts.map +0 -1
  294. package/dist/commands/export-v2.js +0 -369
  295. package/dist/commands/export-v2.js.map +0 -1
  296. package/dist/commands/import-v2.d.ts +0 -32
  297. package/dist/commands/import-v2.d.ts.map +0 -1
  298. package/dist/commands/import-v2.js +0 -331
  299. package/dist/commands/import-v2.js.map +0 -1
  300. package/dist/services/hubdoc-api-v2.d.ts +0 -150
  301. package/dist/services/hubdoc-api-v2.d.ts.map +0 -1
  302. package/dist/services/hubdoc-api-v2.js +0 -418
  303. package/dist/services/hubdoc-api-v2.js.map +0 -1
  304. package/dist/services/hubdoc-client.d.ts +0 -246
  305. package/dist/services/hubdoc-client.d.ts.map +0 -1
  306. package/dist/services/hubdoc-client.js +0 -714
  307. package/dist/services/hubdoc-client.js.map +0 -1
  308. package/dist/services/hubdoc-export-service.d.ts +0 -90
  309. package/dist/services/hubdoc-export-service.d.ts.map +0 -1
  310. package/dist/services/hubdoc-export-service.js +0 -443
  311. package/dist/services/hubdoc-export-service.js.map +0 -1
  312. package/dist/services/hubdoc-export-v2.d.ts +0 -77
  313. package/dist/services/hubdoc-export-v2.d.ts.map +0 -1
  314. package/dist/services/hubdoc-export-v2.js +0 -329
  315. package/dist/services/hubdoc-export-v2.js.map +0 -1
  316. package/dist/services/hubdoc-import-service.d.ts +0 -64
  317. package/dist/services/hubdoc-import-service.d.ts.map +0 -1
  318. package/dist/services/hubdoc-import-service.js +0 -374
  319. package/dist/services/hubdoc-import-service.js.map +0 -1
  320. package/docs/README.md +0 -65
  321. package/docs/connectors/alfresco.md +0 -211
  322. package/docs/connectors/aws-s3.md +0 -187
  323. package/docs/connectors/azure-blob.md +0 -195
  324. package/docs/connectors/box.md +0 -115
  325. package/docs/connectors/nuxeo.md +0 -214
  326. package/docs/connectors/opentext.md +0 -234
  327. package/docs/connectors/sharepoint.md +0 -207
  328. package/documentation.html +0 -273
  329. package/jest.config.js +0 -15
  330. package/plugins/core/README.md +0 -122
  331. package/plugins/core/TESTING.md +0 -155
  332. package/plugins/core/plugin.json +0 -26
  333. package/plugins/dropbox/plugin.json +0 -12
  334. package/plugins/filesystem/plugin.json +0 -12
  335. package/plugins/googledrive/plugin.json +0 -12
  336. package/plugins/onedrive/TESTING.md +0 -197
  337. package/plugins/onedrive/plugin.json +0 -12
  338. package/scripts/build-windows-installer.ps1 +0 -132
  339. package/scripts/build-windows-installer.sh +0 -106
  340. package/scripts/prepare-publish.js +0 -62
  341. package/scripts/restore-package.js +0 -29
@@ -1,333 +0,0 @@
1
- # 📤 HubDoc Export Documentation
2
-
3
- ## Vue d'Ensemble
4
-
5
- L'outil **HubDoc Export** permet d'extraire des documents depuis HubDoc vers le système de fichiers local, avec reconstitution automatique de l'arborescence des dossiers.
6
-
7
- ### 🎯 Fonctionnalités Clés
8
-
9
- - **Mode Scan** : Génère un fichier de mapping des documents HubDoc
10
- - **Mode Export** : Télécharge les documents selon le mapping personnalisé
11
- - **Filtres** : Par projet, domaine, ou critères personnalisés
12
- - **Arborescence** : Recréation automatique de la structure des dossiers
13
- - **Personnalisation** : Chemins de destination modifiables
14
-
15
- ---
16
-
17
- ## 🚀 Utilisation
18
-
19
- ### 1. Mode Scan - Génération du Mapping
20
-
21
- ```bash
22
- # Scan complet de tous les documents
23
- hubdoc-tool export --scan
24
-
25
- # Scan filtré par projet
26
- hubdoc-tool export --scan --project "Les Jardins de Meudon"
27
-
28
- # Scan filtré par domaine
29
- hubdoc-tool export --scan --domain "BTP & Construction"
30
-
31
- # Scan avec fichier de sortie personnalisé
32
- hubdoc-tool export --scan --mapping my-export.csv
33
- ```
34
-
35
- **Résultat :**
36
- ```
37
- 🔍 Scanning HubDoc for documents...
38
- 📁 Project filter: Les Jardins de Meudon
39
- ✅ Generated export mapping for 1,847 documents
40
-
41
- 📊 Scan Summary
42
- 📄 Total documents found: 1,847
43
-
44
- 📁 Documents by project:
45
- • Les Jardins de Meudon: 1,847 documents
46
-
47
- ✅ Export mapping generated successfully
48
- 📝 Edit the CSV file to customize target paths
49
- 🚀 Run with --mode export to download documents
50
- ```
51
-
52
- ### 2. Mode Export - Téléchargement
53
-
54
- ```bash
55
- # Export avec mapping par défaut
56
- hubdoc-tool export
57
-
58
- # Export avec mapping personnalisé
59
- hubdoc-tool export --mapping my-export.csv
60
-
61
- # Export vers un dossier spécifique
62
- hubdoc-tool export --output ./mes-documents
63
-
64
- # Mode interactif
65
- hubdoc-tool export --interactive
66
- ```
67
-
68
- **Résultat :**
69
- ```
70
- 📄 Loading export mapping from: export-mapping.csv
71
- 📦 Found 1,847 documents to export
72
- 📦 Starting export of 1,847 documents to ./export
73
-
74
- (1847/1847) Exporting: plan_facade_nord_v3.pdf
75
- ✅ Exported: plan_facade_nord_v3.pdf → Les Jardins de Meudon/Technique/Plans Architecture
76
-
77
- 📊 Export Summary
78
- ✅ Successfully exported: 1,847 documents
79
- 📁 Export directory: /Users/olivier/export
80
-
81
- 📁 Directory structure created:
82
- 📂 Les Jardins de Meudon/Administrative/Permis & Autorisations
83
- 📂 Les Jardins de Meudon/Technique/Plans Architecture
84
- 📂 Les Jardins de Meudon/Financier/Devis
85
- 📂 Les Jardins de Meudon/Suivi/PV Chantier
86
- ```
87
-
88
- ---
89
-
90
- ## 📋 Format du Mapping CSV
91
-
92
- ### Structure Générée (Scan)
93
-
94
- ```csv
95
- Document ID,Document Name,Projects (project:folder|project:folder),Download URL,Target Path (editable),Metadata (JSON)
96
- doc_001,plan_facade_sud.pdf,Les Jardins de Meudon:Technique/Plans Architecture,https://hubdoc.../download/doc_001,Les Jardins de Meudon/Technique/Plans Architecture,"{\"type\":\"plan\",\"version\":\"2.1\"}"
97
- doc_002,permis_construire.pdf,Les Jardins de Meudon:Administrative/Permis & Autorisations,https://hubdoc.../download/doc_002,Les Jardins de Meudon/Administrative/Permis & Autorisations,"{\"numero\":\"PC-2024-001\"}"
98
- doc_003,devis_gros_oeuvre.pdf,Les Jardins de Meudon:Financier/Devis,https://hubdoc.../download/doc_003,Les Jardins de Meudon/Financier/Devis,"{\"montant\":285000}"
99
- ```
100
-
101
- ### Colonnes Expliquées
102
-
103
- | Colonne | Description | Modifiable |
104
- |---------|-------------|------------|
105
- | **Document ID** | Identifiant unique HubDoc | ❌ Non |
106
- | **Document Name** | Nom du fichier | ❌ Non |
107
- | **Projects** | Projets/dossiers dans HubDoc | ❌ Non |
108
- | **Download URL** | URL de téléchargement | ❌ Non |
109
- | **Target Path (editable)** | Chemin de destination | ✅ **Oui** |
110
- | **Metadata** | Métadonnées du document | ❌ Non |
111
-
112
- ### 🎛️ Personnalisation des Chemins
113
-
114
- **Exemples de modification de la colonne "Target Path" :**
115
-
116
- ```csv
117
- # AVANT (généré automatiquement)
118
- Target Path (editable)
119
- Les Jardins de Meudon/Technique/Plans Architecture
120
- Les Jardins de Meudon/Administrative/Permis & Autorisations
121
-
122
- # APRÈS (personnalisé par l'utilisateur)
123
- Target Path (editable)
124
- Projets 2024/Meudon/Plans
125
- Archives/Administratif/Meudon
126
- Mes Documents/Projets/Plans Architecture
127
- Export Complet/Documents Techniques
128
- ```
129
-
130
- ---
131
-
132
- ## 🗂️ Exemples d'Arborescence Créée
133
-
134
- ### Arborescence par Défaut (HubDoc)
135
- ```
136
- ./export/
137
- ├── Les Jardins de Meudon/
138
- │ ├── Administrative/
139
- │ │ ├── Permis & Autorisations/
140
- │ │ │ ├── permis_construire_001.pdf
141
- │ │ │ └── autorisation_voirie.pdf
142
- │ │ └── Contrats & Marchés/
143
- │ │ └── marche_gros_oeuvre.pdf
144
- │ ├── Technique/
145
- │ │ ├── Plans Architecture/
146
- │ │ │ ├── plan_facade_nord.pdf
147
- │ │ │ └── plan_facade_sud.pdf
148
- │ │ └── Plans Structure/
149
- │ │ └── plan_fondations.pdf
150
- │ └── Financier/
151
- │ └── Devis/
152
- │ ├── devis_gros_oeuvre.pdf
153
- │ └── devis_second_oeuvre.pdf
154
- └── Résidence Harmony Levallois/
155
- ├── Administrative/
156
- └── Technique/
157
- ```
158
-
159
- ### Arborescence Personnalisée
160
- ```
161
- ./export/
162
- ├── Archives 2024/
163
- │ ├── Projets BTP/
164
- │ │ ├── Meudon - Plans/
165
- │ │ └── Levallois - Plans/
166
- │ └── Documents Admin/
167
- ├── Projets Actifs/
168
- │ ├── Meudon/
169
- │ └── Levallois/
170
- └── Exports Spéciaux/
171
- └── Plans Architecte/
172
- ```
173
-
174
- ---
175
-
176
- ## ⚙️ Options de Ligne de Commande
177
-
178
- ### Command Export
179
-
180
- ```bash
181
- hubdoc-tool export [OPTIONS]
182
- ```
183
-
184
- **Options :**
185
-
186
- | Option | Description | Exemple |
187
- |--------|-------------|---------|
188
- | `-s, --scan` | Mode scan - génère le mapping | `--scan` |
189
- | *(défaut)* | Mode export - télécharge les documents | *(aucune option)* |
190
- | `-p, --project <name>` | Filtre par nom de projet | `--project "Les Jardins de Meudon"` |
191
- | `-d, --domain <name>` | Filtre par domaine | `--domain "BTP & Construction"` |
192
- | `-m, --mapping <file>` | Fichier de mapping personnalisé | `--mapping my-export.csv` |
193
- | `-o, --output <dir>` | Répertoire de sortie | `--output ./mes-exports` |
194
- | `-i, --interactive` | Mode interactif | `--interactive` |
195
-
196
- ### Exemples Complets
197
-
198
- ```bash
199
- # Workflow complet : Scan -> Edit -> Export
200
- hubdoc-tool export --scan --project "Les Jardins de Meudon"
201
- # Éditer export-mapping.csv pour personnaliser les chemins
202
- hubdoc-tool export --output ./projet-meudon
203
-
204
- # Export filtré avec mapping personnalisé
205
- hubdoc-tool export --scan --domain "BTP & Construction" --mapping btp-docs.csv
206
- hubdoc-tool export --mapping btp-docs.csv --output ./documents-btp
207
-
208
- # Mode interactif complet
209
- hubdoc-tool export --interactive
210
- ```
211
-
212
- ---
213
-
214
- ## 🔍 Filtres Disponibles
215
-
216
- ### Filtre par Projet
217
- ```bash
218
- # Projets spécifiques
219
- --project "Les Jardins de Meudon"
220
- --project "Résidence Harmony Levallois"
221
- --project "BAUTECH Corporate"
222
- ```
223
-
224
- ### Filtre par Domaine
225
- ```bash
226
- # Domaines métier
227
- --domain "BTP & Construction"
228
- --domain "Administration"
229
- --domain "Technique & Maintenance"
230
- --domain "Légal & Conformité"
231
- ```
232
-
233
- ### Combinaison de Filtres
234
- ```bash
235
- # Export des documents BTP du projet Meudon
236
- hubdoc-tool export --scan \
237
- --project "Les Jardins de Meudon" \
238
- --domain "BTP & Construction"
239
- ```
240
-
241
- ---
242
-
243
- ## 🛠️ Workflow Recommandé
244
-
245
- ### 1. **Analyse Préliminaire**
246
- ```bash
247
- # Scan global pour voir le volume
248
- hubdoc-tool export --scan --mapping analyse-complete.csv
249
- ```
250
-
251
- ### 2. **Export Ciblé**
252
- ```bash
253
- # Export par projet
254
- hubdoc-tool export --scan --project "Les Jardins de Meudon" --mapping meudon.csv
255
- hubdoc-tool export --scan --project "Résidence Harmony Levallois" --mapping levallois.csv
256
- ```
257
-
258
- ### 3. **Personnalisation**
259
- - Ouvrir les fichiers CSV dans Excel/LibreOffice
260
- - Modifier la colonne "Target Path (editable)"
261
- - Adapter l'arborescence aux besoins
262
-
263
- ### 4. **Export Final**
264
- ```bash
265
- hubdoc-tool export --export --mapping meudon.csv --output ./exports/meudon
266
- hubdoc-tool export --export --mapping levallois.csv --output ./exports/levallois
267
- ```
268
-
269
- ---
270
-
271
- ## 📊 Gestion des Erreurs
272
-
273
- ### Erreurs Courantes
274
-
275
- **Document non accessible :**
276
- ```
277
- ❌ Failed to export plan_facade_nord.pdf: Document not found or access denied
278
- ```
279
-
280
- **Chemin invalide :**
281
- ```
282
- ⚠️ Invalid target path for document.pdf: ../../../system/file
283
- ⚠️ Skipping 1 documents with invalid paths
284
- ```
285
-
286
- **Espace disque :**
287
- ```
288
- ❌ Failed to export large_plan.pdf: ENOSPC: no space left on device
289
- ```
290
-
291
- ### Validation Automatique
292
-
293
- L'outil vérifie automatiquement :
294
- - ✅ Validité des chemins de destination
295
- - ✅ Permissions d'écriture
296
- - ✅ Caractères interdits dans les noms de fichiers
297
- - ✅ Disponibilité des documents sur HubDoc
298
-
299
- ---
300
-
301
- ## 🔧 Configuration Avancée
302
-
303
- ### Variables d'Environnement
304
-
305
- ```bash
306
- # Timeout de téléchargement (ms)
307
- export HUBDOC_DOWNLOAD_TIMEOUT=300000
308
-
309
- # Nombre de téléchargements simultanés
310
- export HUBDOC_CONCURRENT_DOWNLOADS=5
311
-
312
- # Taille max des fichiers (bytes)
313
- export HUBDOC_MAX_FILE_SIZE=104857600 # 100MB
314
- ```
315
-
316
- ### Fichier de Configuration
317
-
318
- ```json
319
- {
320
- "apiUrl": "https://demo.hubdoc.sinoia.cloud/api/v1",
321
- "token": "your-api-token",
322
- "export": {
323
- "defaultOutputDir": "./exports",
324
- "createDateFolders": true,
325
- "preserveMetadata": true,
326
- "skipExisting": true
327
- }
328
- }
329
- ```
330
-
331
- ---
332
-
333
- *Documentation Export - HubDoc Tools v1.1.0*
package/HUBDOC-API-V2.md DELETED
@@ -1,248 +0,0 @@
1
- # 🚀 HubDoc API v2 Integration
2
-
3
- Cette documentation explique les améliorations apportées à l'intégration HubDoc basées sur la documentation Swagger officielle.
4
-
5
- ## 📋 Améliorations Apportées
6
-
7
- ### ✅ Services API Mis à Jour
8
-
9
- 1. **HubDocApiServiceV2** (`/src/services/hubdoc-api-v2.ts`)
10
- - Utilise les vrais endpoints de l'API HubDoc
11
- - Authentification JWT via `/auth/login`
12
- - Gestion des workspaces avec `/workspaces`
13
- - Upload de fichiers avec `/files`
14
- - Gestion des permissions intégrée
15
-
16
- 2. **HubDocExportServiceV2** (`/src/services/hubdoc-export-v2.ts`)
17
- - Export basé sur les vrais endpoints
18
- - Scan des workspaces et folders
19
- - Téléchargement via `/files/{id}/download`
20
- - Statistiques d'export
21
-
22
- ### ✅ Commandes Améliorées
23
-
24
- 1. **ImportCommandV2** (`/src/commands/import-v2.ts`)
25
- - Validation des mappings avant import
26
- - Mode interactif amélioré
27
- - Rapport détaillé des résultats
28
- - Gestion d'erreurs robuste
29
-
30
- 2. **ExportCommandV2** (`/src/commands/export-v2.ts`)
31
- - Preview avant export
32
- - Export basé sur recherche
33
- - Configuration interactive
34
- - Statistiques détaillées
35
-
36
- ## 🔗 Endpoints API Utilisés
37
-
38
- ### Authentification
39
- ```http
40
- POST /auth/login
41
- GET /auth/me
42
- ```
43
-
44
- ### Workspaces
45
- ```http
46
- GET /workspaces
47
- POST /workspaces
48
- ```
49
-
50
- ### Folders
51
- ```http
52
- GET /folders
53
- POST /folders
54
- GET /folders/{id}/contents
55
- ```
56
-
57
- ### Files
58
- ```http
59
- GET /files
60
- POST /files
61
- GET /files/{id}/download
62
- ```
63
-
64
- ### Search
65
- ```http
66
- GET /search?q={query}&type={file|folder|workspace}
67
- ```
68
-
69
- ## 🧪 Tests d'Intégration
70
-
71
- ### Test Manuel
72
- ```bash
73
- # Tester la connexion API
74
- npm run test-api
75
-
76
- # Avec tests d'écriture (optionnel)
77
- HUBDOC_TEST_WRITE=true npm run test-api
78
- ```
79
-
80
- ### Tests Couverts
81
- - ✅ Connexion API et authentification
82
- - ✅ Récupération des workspaces
83
- - ✅ Récupération des folders
84
- - ✅ Fonctionnalité de recherche
85
- - ✅ Statistiques d'export
86
- - ✅ Opérations d'écriture (optionnel)
87
-
88
- ## 📊 Comparaison v1 vs v2
89
-
90
- | Fonctionnalité | API v1 | API v2 |
91
- |----------------|--------|--------|
92
- | **Authentification** | Bearer token statique | JWT avec `/auth/login` |
93
- | **Test de connexion** | `/ping` | `/auth/me` |
94
- | **Workspaces** | `/workspaces` (supposé) | `/workspaces` (validé) |
95
- | **Folders** | `/folders` (basique) | `/folders` + hiérarchie |
96
- | **Upload** | `/documents` (supposé) | `/files` (validé) |
97
- | **Permissions** | Post-upload | Intégrées à l'upload |
98
- | **Metadata** | Form fields | JSON intégré |
99
- | **Download** | URL supposée | `/files/{id}/download` |
100
- | **Search** | Non disponible | `/search` avec filtres |
101
-
102
- ## 🔄 Migration depuis v1
103
-
104
- ### 1. Configuration
105
- La configuration reste identique :
106
- ```json
107
- {
108
- "apiUrl": "https://demo.hubdoc.sinoia.cloud/api/v1",
109
- "token": "your-jwt-token"
110
- }
111
- ```
112
-
113
- ### 2. Commandes CLI
114
- Les commandes restent compatibles :
115
- ```bash
116
- # Import (identique)
117
- hubdoc-tool import --mapping mapping.csv
118
-
119
- # Export (identique)
120
- hubdoc-tool export --scan
121
- hubdoc-tool export --mapping export-mapping.csv
122
- ```
123
-
124
- ### 3. Services
125
- Pour utiliser les nouveaux services dans votre code :
126
- ```typescript
127
- // Ancien
128
- import { HubDocApiService } from './services/hubdoc-api';
129
-
130
- // Nouveau
131
- import { HubDocApiServiceV2 } from './services/hubdoc-api-v2';
132
- ```
133
-
134
- ## 🎯 Nouvelles Fonctionnalités
135
-
136
- ### 1. Validation Pré-Import
137
- ```bash
138
- # Les mappings sont maintenant validés automatiquement
139
- hubdoc-tool import --mapping mapping.csv
140
- ```
141
-
142
- ### 2. Export Basé sur Recherche
143
- ```bash
144
- # Export interactif avec recherche
145
- hubdoc-tool export --scan --interactive
146
- ```
147
-
148
- ### 3. Statistiques Détaillées
149
- ```bash
150
- # Les statistiques HubDoc sont affichées pendant le scan
151
- hubdoc-tool export --scan
152
- ```
153
-
154
- ### 4. Gestion d'Erreurs Améliorée
155
- - Messages d'erreur plus détaillés
156
- - Retry automatique pour les erreurs réseau
157
- - Rapport de taux de succès
158
-
159
- ### 5. Mode Interactif Enrichi
160
- - Configuration assistée
161
- - Preview avant opération
162
- - Confirmation utilisateur
163
-
164
- ## 🔧 Configuration Avancée
165
-
166
- ### Variables d'Environnement
167
- ```bash
168
- # Debug API calls
169
- DEBUG=hubdoc-tool:* npm run dev
170
-
171
- # Test avec opérations d'écriture
172
- HUBDOC_TEST_WRITE=true npm run test-api
173
-
174
- # Timeout personnalisé (ms)
175
- HUBDOC_API_TIMEOUT=60000
176
- ```
177
-
178
- ### Headers Personnalisés
179
- ```typescript
180
- const apiService = new HubDocApiServiceV2({
181
- apiUrl: 'https://your.hubdoc.instance/api/v1',
182
- token: 'your-token',
183
- // Headers additionnels si nécessaire
184
- customHeaders: {
185
- 'X-Custom-Header': 'value'
186
- }
187
- });
188
- ```
189
-
190
- ## 🐛 Dépannage
191
-
192
- ### Erreurs Courantes
193
-
194
- **❌ Connection failed**
195
- ```bash
196
- # Vérifiez la configuration
197
- hubdoc-tool config
198
-
199
- # Testez la connexion
200
- npm run test-api
201
- ```
202
-
203
- **❌ No workspaces found**
204
- - Vérifiez que votre compte a accès aux workspaces
205
- - Vérifiez les permissions du token
206
-
207
- **❌ Upload failed**
208
- - Vérifiez la taille du fichier (limite serveur)
209
- - Vérifiez les permissions d'écriture
210
- - Vérifiez le format du fichier
211
-
212
- ### Logs de Debug
213
- ```bash
214
- # Activer les logs détaillés
215
- DEBUG=hubdoc-tool:api npm run dev -- import --mapping test.csv
216
- ```
217
-
218
- ## 📈 Performance
219
-
220
- ### Optimisations v2
221
- - **Batch processing** : Uploads par lots de 5
222
- - **Rate limiting** : Délais automatiques entre requêtes
223
- - **Connection pooling** : Réutilisation des connexions
224
- - **Error recovery** : Retry automatique
225
-
226
- ### Recommandations
227
- - Utilisez des lots de 5-10 documents pour l'import
228
- - Évitez les fichiers > 50MB
229
- - Surveillez les rate limits de votre instance HubDoc
230
-
231
- ## 🚀 Prochaines Étapes
232
-
233
- ### Roadmap v2.1
234
- - [ ] Support des métadonnées étendues
235
- - [ ] Import incrémental
236
- - [ ] Synchronisation bidirectionnelle
237
- - [ ] API de monitoring
238
- - [ ] Webhooks pour les notifications
239
-
240
- ### Migration Complète
241
- 1. Tester avec `npm run test-api`
242
- 2. Valider avec un petit import test
243
- 3. Migrer progressivement les scripts existants
244
- 4. Surveiller les performances
245
-
246
- ---
247
-
248
- *HubDoc API v2 Integration - Compatible avec l'API Swagger officielle*