@researchdatabox/redbox-core 5.0.3 → 5.0.4

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 (95) hide show
  1. package/dist/DatastreamService.d.ts +2 -0
  2. package/dist/DatastreamService.d.ts.map +1 -1
  3. package/dist/QueueService.d.ts +1 -1
  4. package/dist/QueueService.d.ts.map +1 -1
  5. package/dist/RecordWriteOptions.d.ts +21 -0
  6. package/dist/RecordWriteOptions.d.ts.map +1 -0
  7. package/dist/RecordWriteOptions.js +17 -0
  8. package/dist/RecordsService.d.ts +3 -1
  9. package/dist/RecordsService.d.ts.map +1 -1
  10. package/dist/StorageService.d.ts +14 -2
  11. package/dist/StorageService.d.ts.map +1 -1
  12. package/dist/config/agendaQueue.config.d.ts.map +1 -1
  13. package/dist/config/agendaQueue.config.js +10 -1
  14. package/dist/config/i18n.config.d.ts +4 -0
  15. package/dist/config/i18n.config.d.ts.map +1 -1
  16. package/dist/config/i18n.config.js +1 -1
  17. package/dist/configmodels/FigsharePublishing.d.ts +103 -0
  18. package/dist/configmodels/FigsharePublishing.d.ts.map +1 -1
  19. package/dist/configmodels/FigsharePublishing.js +36 -2
  20. package/dist/controllers/RecordAuditController.d.ts.map +1 -1
  21. package/dist/controllers/RecordAuditController.js +24 -6
  22. package/dist/index.d.ts +2 -0
  23. package/dist/index.d.ts.map +1 -1
  24. package/dist/index.js +3 -1
  25. package/dist/model/storage/FigshareSyncModel.d.ts +126 -0
  26. package/dist/model/storage/FigshareSyncModel.d.ts.map +1 -0
  27. package/dist/model/storage/FigshareSyncModel.js +3 -0
  28. package/dist/model/storage/RecordAuditModel.d.ts +3 -0
  29. package/dist/model/storage/RecordAuditModel.d.ts.map +1 -1
  30. package/dist/model/storage/RecordAuditModel.js +29 -1
  31. package/dist/model/storage/RecordModel.d.ts +3 -0
  32. package/dist/model/storage/RecordModel.d.ts.map +1 -1
  33. package/dist/services/AgendaQueueService.d.ts +1 -1
  34. package/dist/services/AgendaQueueService.d.ts.map +1 -1
  35. package/dist/services/AgendaQueueService.js +7 -4
  36. package/dist/services/FigshareService.d.ts +15 -10
  37. package/dist/services/FigshareService.d.ts.map +1 -1
  38. package/dist/services/FigshareService.js +76 -536
  39. package/dist/services/I18nEntriesService.d.ts +2 -0
  40. package/dist/services/I18nEntriesService.d.ts.map +1 -1
  41. package/dist/services/I18nEntriesService.js +40 -5
  42. package/dist/services/RecordsService.d.ts +5 -1
  43. package/dist/services/RecordsService.d.ts.map +1 -1
  44. package/dist/services/RecordsService.js +277 -164
  45. package/dist/services/StandardDatastreamService.d.ts +5 -0
  46. package/dist/services/StandardDatastreamService.d.ts.map +1 -1
  47. package/dist/services/StandardDatastreamService.js +18 -1
  48. package/dist/services/figshare-v2/admin.d.ts +16 -0
  49. package/dist/services/figshare-v2/admin.d.ts.map +1 -0
  50. package/dist/services/figshare-v2/admin.js +283 -0
  51. package/dist/services/figshare-v2/assets.d.ts +20 -1
  52. package/dist/services/figshare-v2/assets.d.ts.map +1 -1
  53. package/dist/services/figshare-v2/assets.js +16 -1
  54. package/dist/services/figshare-v2/config.d.ts +8 -2
  55. package/dist/services/figshare-v2/config.d.ts.map +1 -1
  56. package/dist/services/figshare-v2/config.js +31 -3
  57. package/dist/services/figshare-v2/execution.d.ts +25 -0
  58. package/dist/services/figshare-v2/execution.d.ts.map +1 -0
  59. package/dist/services/figshare-v2/execution.js +49 -0
  60. package/dist/services/figshare-v2/http.d.ts +6 -1
  61. package/dist/services/figshare-v2/http.d.ts.map +1 -1
  62. package/dist/services/figshare-v2/http.js +69 -12
  63. package/dist/services/figshare-v2/identity.d.ts +12 -0
  64. package/dist/services/figshare-v2/identity.d.ts.map +1 -0
  65. package/dist/services/figshare-v2/identity.js +78 -0
  66. package/dist/services/figshare-v2/managed-assets.d.ts +9 -0
  67. package/dist/services/figshare-v2/managed-assets.d.ts.map +1 -0
  68. package/dist/services/figshare-v2/managed-assets.js +229 -0
  69. package/dist/services/figshare-v2/plan.d.ts.map +1 -1
  70. package/dist/services/figshare-v2/plan.js +2 -9
  71. package/dist/services/figshare-v2/source-intent.d.ts +9 -0
  72. package/dist/services/figshare-v2/source-intent.d.ts.map +1 -0
  73. package/dist/services/figshare-v2/source-intent.js +93 -0
  74. package/dist/services/figshare-v2/status.d.ts +4 -0
  75. package/dist/services/figshare-v2/status.d.ts.map +1 -0
  76. package/dist/services/figshare-v2/status.js +29 -0
  77. package/dist/services/figshare-v2/sync-store.d.ts +27 -0
  78. package/dist/services/figshare-v2/sync-store.d.ts.map +1 -0
  79. package/dist/services/figshare-v2/sync-store.js +139 -0
  80. package/dist/services/figshare-v2/types.d.ts +3 -0
  81. package/dist/services/figshare-v2/types.d.ts.map +1 -1
  82. package/dist/services/figshare-v2/types.js +1 -1
  83. package/dist/services/figshare-v2/worker.d.ts +16 -0
  84. package/dist/services/figshare-v2/worker.d.ts.map +1 -0
  85. package/dist/services/figshare-v2/worker.js +572 -0
  86. package/dist/utilities/TranslationHtml.d.ts +3 -0
  87. package/dist/utilities/TranslationHtml.d.ts.map +1 -0
  88. package/dist/utilities/TranslationHtml.js +46 -0
  89. package/dist/waterline-models/FigshareSync.d.ts +41 -0
  90. package/dist/waterline-models/FigshareSync.d.ts.map +1 -0
  91. package/dist/waterline-models/FigshareSync.js +168 -0
  92. package/dist/waterline-models/index.d.ts +2 -0
  93. package/dist/waterline-models/index.d.ts.map +1 -1
  94. package/dist/waterline-models/index.js +4 -1
  95. package/package.json +8 -8
@@ -1,6 +1,25 @@
1
+ import { Readable } from 'node:stream';
1
2
  import type { ILogger } from '../../Logger';
3
+ import { FigsharePublishingConfigData } from '../../configmodels/FigsharePublishing';
4
+ import type { Services as StorageManagerServices } from '../StorageManagerService';
2
5
  import { FigshareClient } from './http';
3
6
  import { ResolvedFigsharePublishingConfigData } from './config';
4
- import { RecordModel, FigshareArticle, FigshareSyncState, AssetSyncResult } from './types';
7
+ import { RecordModel, FigshareArticle, FigshareUploadPart, FigshareSyncState, AssetSyncResult } from './types';
8
+ type IDisk = StorageManagerServices.IDisk;
9
+ interface DatastreamResponse {
10
+ readstream: NodeJS.ReadableStream;
11
+ size?: number;
12
+ }
13
+ export declare function getAttachmentStream(oid: string, fileId: string): Promise<DatastreamResponse>;
14
+ /** Identify stored attachment bytes without reading them, when the datastream service supports it. */
15
+ export declare function getAttachmentFingerprint(oid: string, fileId: string): Promise<string | undefined>;
16
+ export declare function getStagingDisk(config: FigsharePublishingConfigData): IDisk;
17
+ export declare function buildStagingKey(config: FigsharePublishingConfigData, articleId: string, oid: string, fileId: string, fileName: string, logger?: ILogger): string;
18
+ export declare function stageAttachmentToDisk(disk: IDisk, key: string, response: DatastreamResponse): Promise<number>;
19
+ export declare function readPartsSequentially(source: Readable, parts: FigshareUploadPart[]): AsyncGenerator<{
20
+ partNo: number;
21
+ stream: Readable;
22
+ }>;
5
23
  export declare function syncAssetsPhase(client: FigshareClient, config: ResolvedFigsharePublishingConfigData, record: RecordModel, article: FigshareArticle, syncState: FigshareSyncState, logger?: ILogger): Promise<AssetSyncResult>;
24
+ export {};
6
25
  //# sourceMappingURL=assets.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"assets.d.ts","sourceRoot":"","sources":["../../../src/services/figshare-v2/assets.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAI5C,OAAO,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AACxC,OAAO,EAAE,oCAAoC,EAAE,MAAM,UAAU,CAAC;AAChE,OAAO,EACL,WAAW,EACX,eAAe,EAGf,iBAAiB,EAEjB,eAAe,EAChB,MAAM,SAAS,CAAC;AA0WjB,wBAAsB,eAAe,CACnC,MAAM,EAAE,cAAc,EACtB,MAAM,EAAE,oCAAoC,EAC5C,MAAM,EAAE,WAAW,EACnB,OAAO,EAAE,eAAe,EACxB,SAAS,EAAE,iBAAiB,EAC5B,MAAM,CAAC,EAAE,OAAO,GACf,OAAO,CAAC,eAAe,CAAC,CAiG1B"}
1
+ {"version":3,"file":"assets.d.ts","sourceRoot":"","sources":["../../../src/services/figshare-v2/assets.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,4BAA4B,EAAE,MAAM,uCAAuC,CAAC;AAErF,OAAO,KAAK,EAAE,QAAQ,IAAI,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AACnF,OAAO,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AACxC,OAAO,EAAE,oCAAoC,EAAE,MAAM,UAAU,CAAC;AAChE,OAAO,EACL,WAAW,EACX,eAAe,EAEf,kBAAkB,EAClB,iBAAiB,EAEjB,eAAe,EAChB,MAAM,SAAS,CAAC;AAIjB,KAAK,KAAK,GAAG,sBAAsB,CAAC,KAAK,CAAC;AAyB1C,UAAU,kBAAkB;IAC1B,UAAU,EAAE,MAAM,CAAC,cAAc,CAAC;IAClC,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,wBAAsB,mBAAmB,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAalG;AAED,sGAAsG;AACtG,wBAAsB,wBAAwB,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAOvG;AA6BD,wBAAgB,cAAc,CAAC,MAAM,EAAE,4BAA4B,GAAG,KAAK,CAoB1E;AAED,wBAAgB,eAAe,CAC7B,MAAM,EAAE,4BAA4B,EACpC,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,MAAM,CAAC,EAAE,OAAO,GACf,MAAM,CAsBR;AAED,wBAAsB,qBAAqB,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,kBAAkB,GAAG,OAAO,CAAC,MAAM,CAAC,CAKnH;AAED,wBAAuB,qBAAqB,CAC1C,MAAM,EAAE,QAAQ,EAChB,KAAK,EAAE,kBAAkB,EAAE,GAC1B,cAAc,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,QAAQ,CAAA;CAAE,CAAC,CAoCtD;AA2LD,wBAAsB,eAAe,CACnC,MAAM,EAAE,cAAc,EACtB,MAAM,EAAE,oCAAoC,EAC5C,MAAM,EAAE,WAAW,EACnB,OAAO,EAAE,eAAe,EACxB,SAAS,EAAE,iBAAiB,EAC5B,MAAM,CAAC,EAAE,OAAO,GACf,OAAO,CAAC,eAAe,CAAC,CAiG1B"}
@@ -3,6 +3,12 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.getAttachmentStream = getAttachmentStream;
7
+ exports.getAttachmentFingerprint = getAttachmentFingerprint;
8
+ exports.getStagingDisk = getStagingDisk;
9
+ exports.buildStagingKey = buildStagingKey;
10
+ exports.stageAttachmentToDisk = stageAttachmentToDisk;
11
+ exports.readPartsSequentially = readPartsSequentially;
6
12
  exports.syncAssetsPhase = syncAssetsPhase;
7
13
  const path_1 = __importDefault(require("path"));
8
14
  const node_crypto_1 = require("node:crypto");
@@ -40,6 +46,15 @@ async function getAttachmentStream(oid, fileId) {
40
46
  }
41
47
  return response;
42
48
  }
49
+ /** Identify stored attachment bytes without reading them, when the datastream service supports it. */
50
+ async function getAttachmentFingerprint(oid, fileId) {
51
+ const datastreamService = getDatastreamService();
52
+ const fingerprint = datastreamService?.getDatastreamFingerprint;
53
+ if (typeof fingerprint !== 'function') {
54
+ return undefined;
55
+ }
56
+ return (await fingerprint.call(datastreamService, oid, fileId)) || undefined;
57
+ }
43
58
  async function ensureAttachmentDatastream(oid, fileId) {
44
59
  const response = await getAttachmentStream(oid, fileId);
45
60
  const stream = response.readstream;
@@ -381,4 +396,4 @@ async function syncAssetsPhase(client, config, record, article, syncState, logge
381
396
  dataLocations: selectedDataLocations,
382
397
  };
383
398
  }
384
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3NlcnZpY2VzL2ZpZ3NoYXJlLXYyL2Fzc2V0cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQTRYQSwwQ0F3R0M7QUFwZUQsZ0RBQXdCO0FBRXhCLDZDQUF5QztBQUN6Qyw2Q0FBdUM7QUFHdkMscUVBQWtFO0FBYWxFLHFDQUF3QztBQUN4QyxpQ0FBa0Q7QUFJbEQsTUFBTSw0QkFBNEIsR0FBRyxDQUFDLENBQUM7QUFDdkMsTUFBTSw4QkFBOEIsR0FBRyxTQUFTLENBQUM7QUFDakQsTUFBTSw2QkFBNkIsR0FBRyxrQkFBa0IsQ0FBQztBQUV6RCxTQUFTLFlBQVksQ0FBQyxNQUFtQjtJQUN2QyxPQUFPLE1BQU0sQ0FBQyxTQUFTLElBQUksTUFBTSxDQUFDLEVBQUUsSUFBSSxFQUFFLENBQUM7QUFDN0MsQ0FBQztBQUVELFNBQVMsb0JBQW9CO0lBQzNCLE1BQU0sWUFBWSxHQUFJLEtBQUssQ0FBQyxNQUFrQyxDQUFDLE1BQTZDLENBQUM7SUFDN0csTUFBTSxXQUFXLEdBQUcsTUFBTSxDQUFDLFlBQVksRUFBRSxpQkFBaUIsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUNsRSxPQUFPLFdBQVc7UUFDaEIsQ0FBQyxDQUFHLEtBQUssQ0FBQyxRQUFvQyxFQUFFLENBQUMsV0FBVyxDQUF5QztRQUNyRyxDQUFDLENBQUMsU0FBUyxDQUFDO0FBQ2hCLENBQUM7QUFFRCxTQUFTLGVBQWUsQ0FBQyxPQUFlO0lBQ3RDLE9BQU8sSUFBSSxxQ0FBaUIsQ0FBQztRQUMzQixPQUFPO1FBQ1AsYUFBYSxFQUFFLENBQUMsRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsQ0FBQztLQUNyRCxDQUFDLENBQUM7QUFDTCxDQUFDO0FBT0QsS0FBSyxVQUFVLG1CQUFtQixDQUFDLEdBQVcsRUFBRSxNQUFjO0lBQzVELE1BQU0saUJBQWlCLEdBQUcsb0JBQW9C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
399
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3NlcnZpY2VzL2ZpZ3NoYXJlLXYyL2Fzc2V0cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQW9EQSxrREFhQztBQUdELDREQU9DO0FBNkJELHdDQW9CQztBQUVELDBDQTZCQztBQUVELHNEQUtDO0FBRUQsc0RBdUNDO0FBMkxELDBDQXdHQztBQTllRCxnREFBd0I7QUFFeEIsNkNBQXlDO0FBQ3pDLDZDQUF1QztBQUd2QyxxRUFBa0U7QUFhbEUscUNBQXdDO0FBQ3hDLGlDQUFrRDtBQUlsRCxNQUFNLDRCQUE0QixHQUFHLENBQUMsQ0FBQztBQUN2QyxNQUFNLDhCQUE4QixHQUFHLFNBQVMsQ0FBQztBQUNqRCxNQUFNLDZCQUE2QixHQUFHLGtCQUFrQixDQUFDO0FBRXpELFNBQVMsWUFBWSxDQUFDLE1BQW1CO0lBQ3ZDLE9BQU8sTUFBTSxDQUFDLFNBQVMsSUFBSSxNQUFNLENBQUMsRUFBRSxJQUFJLEVBQUUsQ0FBQztBQUM3QyxDQUFDO0FBRUQsU0FBUyxvQkFBb0I7SUFDM0IsTUFBTSxZQUFZLEdBQUksS0FBSyxDQUFDLE1BQWtDLENBQUMsTUFBNkMsQ0FBQztJQUM3RyxNQUFNLFdBQVcsR0FBRyxNQUFNLENBQUMsWUFBWSxFQUFFLGlCQUFpQixJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ2xFLE9BQU8sV0FBVztRQUNoQixDQUFDLENBQUcsS0FBSyxDQUFDLFFBQW9DLEVBQUUsQ0FBQyxXQUFXLENBQXlDO1FBQ3JHLENBQUMsQ0FBQyxTQUFTLENBQUM7QUFDaEIsQ0FBQztBQUVELFNBQVMsZUFBZSxDQUFDLE9BQWU7SUFDdEMsT0FBTyxJQUFJLHFDQUFpQixDQUFDO1FBQzNCLE9BQU87UUFDUCxhQUFhLEVBQUUsQ0FBQyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxDQUFDO0tBQ3JELENBQUMsQ0FBQztBQUNMLENBQUM7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
@@ -1,13 +1,19 @@
1
1
  import { type FigshareFixtureConfig, type FigsharePublishingConfigData } from '../../configmodels/FigsharePublishing';
2
2
  import { FigshareSyncState, RecordModel } from './types';
3
3
  export interface ResolvedFigsharePublishingConfigData extends FigsharePublishingConfigData {
4
+ /** Keeps source saves valid while preventing queued execution until configuration is corrected. */
5
+ processingError?: string;
4
6
  runtime: {
5
7
  mode: 'live' | 'fixture';
6
8
  fixtures?: FigshareFixtureConfig;
7
9
  };
8
10
  }
9
- export declare function getBrandName(record?: RecordModel): string;
10
- export declare function resolveFigsharePublishingConfig(record?: RecordModel): ResolvedFigsharePublishingConfigData | null;
11
+ export declare function getBrandName(record?: Record<string, unknown>): string;
12
+ /** Keep configured legacy relative delays when the new millisecond setting is absent. */
13
+ export declare function legacyDelayMs(value: string): number;
14
+ export declare function resolveFigsharePublishingConfig(record?: Record<string, unknown>, options?: {
15
+ requireToken?: boolean;
16
+ }): ResolvedFigsharePublishingConfigData | null;
11
17
  /**
12
18
  * Resolve the brand's Figshare connection for vocabulary administration.
13
19
  *
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/services/figshare-v2/config.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,KAAK,qBAAqB,EAC1B,KAAK,4BAA4B,EAClC,MAAM,uCAAuC,CAAC;AAE/C,OAAO,EAAE,iBAAiB,EAAkC,WAAW,EAAE,MAAM,SAAS,CAAC;AAGzF,MAAM,WAAW,oCAAqC,SAAQ,4BAA4B;IACxF,OAAO,EAAE;QACP,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC;QACzB,QAAQ,CAAC,EAAE,qBAAqB,CAAC;KAClC,CAAC;CACH;AAsBD,wBAAgB,YAAY,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,MAAM,CA0BzD;AAkBD,wBAAgB,+BAA+B,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,oCAAoC,GAAG,IAAI,CAkCjH;AAED;;;;;;;;GAQG;AACH,wBAAgB,+BAA+B,CAAC,SAAS,EAAE,MAAM,GAAG,oCAAoC,GAAG,IAAI,CA4B9G;AAED,wBAAgB,YAAY,CAAC,MAAM,EAAE,4BAA4B,EAAE,MAAM,EAAE,WAAW,GAAG,iBAAiB,CAEzG;AAED,wBAAgB,YAAY,CAAC,MAAM,EAAE,4BAA4B,EAAE,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,iBAAiB,GAAG,IAAI,CAO1H"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/services/figshare-v2/config.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,KAAK,qBAAqB,EAC1B,KAAK,4BAA4B,EAClC,MAAM,uCAAuC,CAAC;AAE/C,OAAO,EAAE,iBAAiB,EAAkC,WAAW,EAAE,MAAM,SAAS,CAAC;AAGzF,MAAM,WAAW,oCAAqC,SAAQ,4BAA4B;IACxF,mGAAmG;IACnG,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,OAAO,EAAE;QACP,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC;QACzB,QAAQ,CAAC,EAAE,qBAAqB,CAAC;KAClC,CAAC;CACH;AAsBD,wBAAgB,YAAY,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CA0BrE;AAkBD,yFAAyF;AACzF,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAQnD;AAED,wBAAgB,+BAA+B,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,GAAE;IAAE,YAAY,CAAC,EAAE,OAAO,CAAA;CAAO,GAAG,oCAAoC,GAAG,IAAI,CA2CvK;AAED;;;;;;;;GAQG;AACH,wBAAgB,+BAA+B,CAAC,SAAS,EAAE,MAAM,GAAG,oCAAoC,GAAG,IAAI,CA4B9G;AAED,wBAAgB,YAAY,CAAC,MAAM,EAAE,4BAA4B,EAAE,MAAM,EAAE,WAAW,GAAG,iBAAiB,CAEzG;AAED,wBAAgB,YAAY,CAAC,MAAM,EAAE,4BAA4B,EAAE,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,iBAAiB,GAAG,IAAI,CAO1H"}
@@ -4,6 +4,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.getBrandName = getBrandName;
7
+ exports.legacyDelayMs = legacyDelayMs;
7
8
  exports.resolveFigsharePublishingConfig = resolveFigsharePublishingConfig;
8
9
  exports.resolveFigshareVocabularyConfig = resolveFigshareVocabularyConfig;
9
10
  exports.getSyncState = getSyncState;
@@ -71,7 +72,19 @@ function shouldUseFixtureRuntime(figshareDev) {
71
72
  }
72
73
  return figshareDev.enabled === true && figshareDev.mode === 'fixture';
73
74
  }
74
- function resolveFigsharePublishingConfig(record) {
75
+ /** Keep configured legacy relative delays when the new millisecond setting is absent. */
76
+ function legacyDelayMs(value) {
77
+ const match = /^\s*(?:in\s+)?(\d+(?:\.\d+)?)\s*(milliseconds?|ms|seconds?|minutes?|hours?|days?|weeks?)\s*$/i.exec(value);
78
+ if (!match)
79
+ throw new Error(`Unsupported Figshare delay '${value}'; configure processing observationMs/cleanupMs explicitly`);
80
+ const unit = match[2].toLowerCase();
81
+ const multiplier = unit === 'ms' || unit.startsWith('millisecond') ? 1 : unit.startsWith('second') ? 1000 : unit.startsWith('minute') ? 60000 : unit.startsWith('hour') ? 3600000 : unit.startsWith('day') ? 86400000 : 604800000;
82
+ const result = Number(match[1]) * multiplier;
83
+ if (!Number.isFinite(result) || result <= 0)
84
+ throw new Error('Figshare delay must be positive');
85
+ return result;
86
+ }
87
+ function resolveFigsharePublishingConfig(record, options = {}) {
75
88
  const brandName = getBrandName(record);
76
89
  const appConfigService = getAppConfigResolver();
77
90
  const brandConfig = appConfigService?.getAppConfigurationForBrand?.(brandName) ?? appConfigService?.getAppConfigurationForBrand?.('default');
@@ -82,6 +95,21 @@ function resolveFigsharePublishingConfig(record) {
82
95
  : undefined;
83
96
  if (figsharePublishingConfig?.enabled === true) {
84
97
  const resolvedConfig = lodash_1.default.merge(new FigsharePublishing_1.FigsharePublishing(), lodash_1.default.cloneDeep(figsharePublishingConfig));
98
+ if (resolvedConfig.processing?.enabled) {
99
+ const errors = [];
100
+ for (const [setting, legacy] of [['observationMs', 'publishAfterUploadDelay'], ['cleanupMs', 'uploadedFilesCleanupDelay']]) {
101
+ if (figsharePublishingConfig.processing?.[setting] != null)
102
+ continue;
103
+ try {
104
+ resolvedConfig.processing[setting] = legacyDelayMs(resolvedConfig.queue[legacy]);
105
+ }
106
+ catch {
107
+ errors.push(`Cannot convert queue.${legacy} to milliseconds; configure processing.${setting} explicitly.`);
108
+ }
109
+ }
110
+ if (errors.length)
111
+ resolvedConfig.processingError = errors.join(' ');
112
+ }
85
113
  const figshareDev = resolveFigshareDevConfig();
86
114
  const useFixtureRuntime = shouldUseFixtureRuntime(figshareDev);
87
115
  resolvedConfig.runtime = {
@@ -93,7 +121,7 @@ function resolveFigsharePublishingConfig(record) {
93
121
  : { ...new FigsharePublishing_1.FigsharePublishing().connection };
94
122
  resolvedConfig.connection = resolvedConnection;
95
123
  const connectionToken = resolvedConfig.connection?.token;
96
- const allowEmpty = resolvedConfig.runtime.mode === 'fixture';
124
+ const allowEmpty = resolvedConfig.runtime.mode === 'fixture' || options.requireToken === false;
97
125
  if (typeof connectionToken === 'string' && connectionToken.trim() !== '') {
98
126
  resolvedConfig.connection.token = (0, FigsharePublishing_1.resolveFigshareConnectionToken)(connectionToken, { allowEmpty });
99
127
  }
@@ -155,4 +183,4 @@ function setSyncState(config, record, syncState) {
155
183
  (0, types_1.setRecordField)(record, config.record.statusPath, syncState.status);
156
184
  (0, types_1.setRecordField)(record, config.record.errorPath, syncState.lastError ?? '');
157
185
  }
158
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3NlcnZpY2VzL2ZpZ3NoYXJlLXYyL2NvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQXNDQSxvQ0EwQkM7QUFrQkQsMEVBa0NDO0FBV0QsMEVBNEJDO0FBRUQsb0NBRUM7QUFFRCxvQ0FPQztBQXhLRCxvREFBdUI7QUFDdkIsOEVBSytDO0FBRS9DLG1DQUF5RjtBQUN6RixvQ0FBMEM7QUFhMUM7Ozs7O0dBS0c7QUFDSCxTQUFTLG9CQUFvQjtJQUMzQixNQUFNLGFBQWEsR0FBRyxPQUFPLGdCQUFnQixLQUFLLFdBQVc7UUFDM0QsQ0FBQyxDQUFDLFNBQVM7UUFDWCxDQUFDLENBQUMsZ0JBQXFDLENBQUM7SUFDMUMsSUFBSSxPQUFPLGFBQWEsRUFBRSwyQkFBMkIsS0FBSyxVQUFVLEVBQUUsQ0FBQztRQUNyRSxPQUFPLGFBQWEsQ0FBQztJQUN2QixDQUFDO0lBQ0QsT0FBTyxzQkFBYyxDQUFDLGdCQUFpRCxDQUFDO0FBQzFFLENBQUM7QUFFRCxTQUFnQixZQUFZLENBQUMsTUFBb0I7SUFDL0MsSUFBSSxNQUFNLElBQUksSUFBSTtRQUFFLE9BQU8sU0FBUyxDQUFDO0lBQ3JDLE1BQU0sRUFBRSxHQUFHLE1BQXFCLENBQUM7SUFDakMsTUFBTSxRQUFRLEdBQUcsTUFBTSxDQUFDLEVBQUUsQ0FBQyxZQUFZLEVBQUUsT0FBTyxJQUFLLE1BQWtDLENBQUMsUUFBUSxJQUFJLEVBQUUsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQy9HLElBQUksUUFBUSxLQUFLLEVBQUU7UUFBRSxPQUFPLFNBQVMsQ0FBQztJQUV0QyxxRkFBcUY7SUFDckYsdUZBQXVGO0lBQ3ZGLG1GQUFtRjtJQUNuRiw0Q0FBNEM7SUFDNUMsTUFBTSxlQUFlLEdBQUcsT0FBTyxlQUFlLEtBQUssV0FBVyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLGVBQWUsQ0FBQztJQUM3RixJQUFJLGVBQWUsSUFBSSxJQUFJO1FBQUUsT0FBTyxRQUFRLENBQUM7SUFDN0MsTUFBTSxTQUFTLEdBQUcsT0FBTyxlQUFlLENBQUMsWUFBWSxLQUFLLFVBQVUsQ0FBQyxDQUFDLENBQUMsZUFBZSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO0lBQzFILElBQUksU0FBUyxFQUFFLElBQUksSUFBSSxJQUFJLElBQUksTUFBTSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQztRQUNwRSxPQUFPLE1BQU0sQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUNELG9GQUFvRjtJQUNwRixNQUFNLFdBQVcsR0FBRyxPQUFPLGVBQWUsQ0FBQyxRQUFRLEtBQUssVUFBVSxDQUFDLENBQUMsQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7SUFDcEgsSUFBSSxXQUFXLElBQUksSUFBSTtRQUFFLE9BQU8sUUFBUSxDQUFDO0lBQ3pDLHlGQUF5RjtJQUN6RiwwRkFBMEY7SUFDMUYscUZBQXFGO0lBQ3JGLHVGQUF1RjtJQUN2Riw0REFBNEQ7SUFDNUQsS0FBSyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsb0RBQW9ELFFBQVEsc0RBQXNELENBQUMsQ0FBQztJQUNuSSxPQUFPLFFBQVEsQ0FBQztBQUNsQixDQUFDO0FBRUQsU0FBUyx3QkFBd0I7SUFDL0IsTUFBTSxTQUFTLEdBQUcsS0FBSyxDQUFDLE1BQU0sRUFBRSxXQUFXLENBQUM7SUFDNUMsSUFBSSxTQUFTLElBQUksSUFBSSxJQUFJLE9BQU8sU0FBUyxLQUFLLFFBQVEsRUFBRSxDQUFDO1FBQ3ZELE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsQ0FBQztJQUMxQyxDQUFDO0lBQ0QsT0FBTyxTQUE4QixDQUFDO0FBQ3hDLENBQUM7QUFFRCxTQUFTLHVCQUF1QixDQUFDLFdBQThCO0lBQzdELE1BQU0sV0FBVyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLFdBQVcsSUFBSSxPQUFPLENBQUMsR0FBRyxDQUFDLFFBQVEsSUFBSSxFQUFFLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNsRyxJQUFJLFdBQVcsS0FBSyxZQUFZLEVBQUUsQ0FBQztRQUNqQyxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFDRCxPQUFPLFdBQVcsQ0FBQyxPQUFPLEtBQUssSUFBSSxJQUFJLFdBQVcsQ0FBQyxJQUFJLEtBQUssU0FBUyxDQUFDO0FBQ3hFLENBQUM7QUFFRCxTQUFnQiwrQkFBK0IsQ0FBQyxNQUFvQjtJQUNsRSxNQUFNLFNBQVMsR0FBRyxZQUFZLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDdkMsTUFBTSxnQkFBZ0IsR0FBRyxvQkFBb0IsRUFBRSxDQUFDO0lBQ2hELE1BQU0sV0FBVyxHQUFHLGdCQUFnQixFQUFFLDJCQUEyQixFQUFFLENBQUMsU0FBUyxDQUFDLElBQUksZ0JBQWdCLEVBQUUsMkJBQTJCLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUM3SSxNQUFNLGlCQUFpQixHQUFHLFdBQVcsSUFBSSxJQUFJLElBQUksT0FBTyxXQUFXLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxXQUFzQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7SUFDdEksTUFBTSxrQkFBa0IsR0FBRyxpQkFBaUIsRUFBRSxrQkFBa0IsQ0FBQztJQUNqRSxNQUFNLHdCQUF3QixHQUFHLGtCQUFrQixJQUFJLElBQUksSUFBSSxPQUFPLGtCQUFrQixLQUFLLFFBQVE7UUFDbkcsQ0FBQyxDQUFDLGtCQUEyRDtRQUM3RCxDQUFDLENBQUMsU0FBUyxDQUFDO0lBQ2QsSUFBSSx3QkFBd0IsRUFBRSxPQUFPLEtBQUssSUFBSSxFQUFFLENBQUM7UUFDL0MsTUFBTSxjQUFjLEdBQUcsZ0JBQUMsQ0FBQyxLQUFLLENBQUMsSUFBSSx1Q0FBa0IsRUFBRSxFQUFFLGdCQUFDLENBQUMsU0FBUyxDQUFDLHdCQUF3QixDQUFDLENBQW9ELENBQUM7UUFDbkosTUFBTSxXQUFXLEdBQUcsd0JBQXdCLEVBQUUsQ0FBQztRQUMvQyxNQUFNLGlCQUFpQixHQUFHLHVCQUF1QixDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQy9ELGNBQWMsQ0FBQyxPQUFPLEdBQUc7WUFDdkIsSUFBSSxFQUFFLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLE1BQU07WUFDNUMsUUFBUSxFQUFFLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxnQkFBQyxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVM7U0FDNUUsQ0FBQztRQUNGLE1BQU0sa0JBQWtCLEdBQUcsY0FBYyxDQUFDLFVBQVUsSUFBSSxJQUFJLElBQUksT0FBTyxjQUFjLENBQUMsVUFBVSxLQUFLLFFBQVE7WUFDM0csQ0FBQyxDQUFDLGNBQWMsQ0FBQyxVQUFVO1lBQzNCLENBQUMsQ0FBQyxFQUFFLEdBQUcsSUFBSSx1Q0FBa0IsRUFBRSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQy9DLGNBQWMsQ0FBQyxVQUFVLEdBQUcsa0JBQWtCLENBQUM7UUFDL0MsTUFBTSxlQUFlLEdBQUcsY0FBYyxDQUFDLFVBQVUsRUFBRSxLQUFLLENBQUM7UUFDekQsTUFBTSxVQUFVLEdBQUcsY0FBYyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEtBQUssU0FBUyxDQUFDO1FBQzdELElBQUksT0FBTyxlQUFlLEtBQUssUUFBUSxJQUFJLGVBQWUsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQztZQUN6RSxjQUFjLENBQUMsVUFBVSxDQUFDLEtBQUssR0FBRyxJQUFBLG1EQUE4QixFQUFDLGVBQWUsRUFBRSxFQUFFLFVBQVUsRUFBRSxDQUFDLENBQUM7UUFDcEcsQ0FBQzthQUFNLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUN2QixjQUFjLENBQUMsVUFBVSxDQUFDLEtBQUssR0FBRyxJQUFBLG1EQUE4QixFQUFDLEVBQUUsRUFBRSxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO1FBQzlGLENBQUM7YUFBTSxJQUFJLGNBQWMsQ0FBQyxVQUFVLElBQUksSUFBSSxFQUFFLENBQUM7WUFDN0MsY0FBYyxDQUFDLFVBQVUsQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDO1FBQ3ZDLENBQUM7UUFFRCxPQUFPLGNBQWMsQ0FBQztJQUN4QixDQUFDO0lBQ0QsT0FBTyxJQUFJLENBQUM7QUFDZCxDQUFDO0FBRUQ7Ozs7Ozs7O0dBUUc7QUFDSCxTQUFnQiwrQkFBK0IsQ0FBQyxTQUFpQjtJQUMvRCxNQUFNLGdCQUFnQixHQUFHLG9CQUFvQixFQUFFLENBQUM7SUFDaEQsTUFBTSxXQUFXLEdBQUcsZ0JBQWdCLEVBQUUsMkJBQTJCLEVBQUUsQ0FBQyxTQUFTLENBQUM7V0FDekUsZ0JBQWdCLEVBQUUsMkJBQTJCLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUNoRSxNQUFNLGlCQUFpQixHQUFHLFdBQVcsSUFBSSxJQUFJLElBQUksT0FBTyxXQUFXLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxXQUFzQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7SUFDdEksTUFBTSxrQkFBa0IsR0FBRyxpQkFBaUIsRUFBRSxrQkFBa0IsQ0FBQztJQUNqRSxNQUFNLHdCQUF3QixHQUFHLGtCQUFrQixJQUFJLElBQUksSUFBSSxPQUFPLGtCQUFrQixLQUFLLFFBQVE7UUFDbkcsQ0FBQyxDQUFDLGtCQUEyRDtRQUM3RCxDQUFDLENBQUMsU0FBUyxDQUFDO0lBQ2QsSUFBSSx3QkFBd0IsSUFBSSxJQUFJLEVBQUUsQ0FBQztRQUNyQyxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxNQUFNLGNBQWMsR0FBRyxnQkFBQyxDQUFDLEtBQUssQ0FBQyxJQUFJLHVDQUFrQixFQUFFLEVBQUUsZ0JBQUMsQ0FBQyxTQUFTLENBQUMsd0JBQXdCLENBQUMsQ0FBb0QsQ0FBQztJQUNuSixNQUFNLFdBQVcsR0FBRyx3QkFBd0IsRUFBRSxDQUFDO0lBQy9DLE1BQU0saUJBQWlCLEdBQUcsdUJBQXVCLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDL0QsY0FBYyxDQUFDLE9BQU8sR0FBRztRQUN2QixJQUFJLEVBQUUsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsTUFBTTtRQUM1QyxRQUFRLEVBQUUsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLGdCQUFDLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUztLQUM1RSxDQUFDO0lBQ0YsY0FBYyxDQUFDLFVBQVUsR0FBRyxjQUFjLENBQUMsVUFBVSxJQUFJLElBQUksSUFBSSxPQUFPLGNBQWMsQ0FBQyxVQUFVLEtBQUssUUFBUTtRQUM1RyxDQUFDLENBQUMsY0FBYyxDQUFDLFVBQVU7UUFDM0IsQ0FBQyxDQUFDLEVBQUUsR0FBRyxJQUFJLHVDQUFrQixFQUFFLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDL0MsTUFBTSxlQUFlLEdBQUcsY0FBYyxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUM7SUFDeEQsY0FBYyxDQUFDLFVBQVUsQ0FBQyxLQUFLLEdBQUcsT0FBTyxlQUFlLEtBQUssUUFBUSxJQUFJLGVBQWUsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFO1FBQ3BHLENBQUMsQ0FBQyxJQUFBLG1EQUE4QixFQUFDLGVBQWUsRUFBRSxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUUsQ0FBQztRQUN2RSxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQ1AsT0FBTyxjQUFjLENBQUM7QUFDeEIsQ0FBQztBQUVELFNBQWdCLFlBQVksQ0FBQyxNQUFvQyxFQUFFLE1BQW1CO0lBQ3BGLE9BQVEsSUFBQSxzQkFBYyxFQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBdUIsSUFBSSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsQ0FBQztBQUMxRyxDQUFDO0FBRUQsU0FBZ0IsWUFBWSxDQUFDLE1BQW9DLEVBQUUsTUFBbUIsRUFBRSxTQUE0QjtJQUNsSCxJQUFBLHNCQUFjLEVBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUMsYUFBYSxFQUFFO1FBQ2xELEdBQUcsU0FBUztRQUNaLFVBQVUsRUFBRSxTQUFTLENBQUMsVUFBVSxJQUFJLElBQUksSUFBSSxFQUFFLENBQUMsV0FBVyxFQUFFO0tBQzdELENBQUMsQ0FBQztJQUNILElBQUEsc0JBQWMsRUFBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLE1BQU0sQ0FBQyxVQUFVLEVBQUUsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ25FLElBQUEsc0JBQWMsRUFBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLE1BQU0sQ0FBQyxTQUFTLEVBQUUsU0FBUyxDQUFDLFNBQVMsSUFBSSxFQUFFLENBQUMsQ0FBQztBQUM3RSxDQUFDIn0=
186
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3NlcnZpY2VzL2ZpZ3NoYXJlLXYyL2NvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQXdDQSxvQ0EwQkM7QUFtQkQsc0NBUUM7QUFFRCwwRUEyQ0M7QUFXRCwwRUE0QkM7QUFFRCxvQ0FFQztBQUVELG9DQU9DO0FBOUxELG9EQUF1QjtBQUN2Qiw4RUFLK0M7QUFFL0MsbUNBQXlGO0FBQ3pGLG9DQUEwQztBQWUxQzs7Ozs7R0FLRztBQUNILFNBQVMsb0JBQW9CO0lBQzNCLE1BQU0sYUFBYSxHQUFHLE9BQU8sZ0JBQWdCLEtBQUssV0FBVztRQUMzRCxDQUFDLENBQUMsU0FBUztRQUNYLENBQUMsQ0FBQyxnQkFBcUMsQ0FBQztJQUMxQyxJQUFJLE9BQU8sYUFBYSxFQUFFLDJCQUEyQixLQUFLLFVBQVUsRUFBRSxDQUFDO1FBQ3JFLE9BQU8sYUFBYSxDQUFDO0lBQ3ZCLENBQUM7SUFDRCxPQUFPLHNCQUFjLENBQUMsZ0JBQWlELENBQUM7QUFDMUUsQ0FBQztBQUVELFNBQWdCLFlBQVksQ0FBQyxNQUFnQztJQUMzRCxJQUFJLE1BQU0sSUFBSSxJQUFJO1FBQUUsT0FBTyxTQUFTLENBQUM7SUFDckMsTUFBTSxFQUFFLEdBQUcsTUFBcUIsQ0FBQztJQUNqQyxNQUFNLFFBQVEsR0FBRyxNQUFNLENBQUMsRUFBRSxDQUFDLFlBQVksRUFBRSxPQUFPLElBQUssTUFBa0MsQ0FBQyxRQUFRLElBQUksRUFBRSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDL0csSUFBSSxRQUFRLEtBQUssRUFBRTtRQUFFLE9BQU8sU0FBUyxDQUFDO0lBRXRDLHFGQUFxRjtJQUNyRix1RkFBdUY7SUFDdkYsbUZBQW1GO0lBQ25GLDRDQUE0QztJQUM1QyxNQUFNLGVBQWUsR0FBRyxPQUFPLGVBQWUsS0FBSyxXQUFXLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMs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
@@ -0,0 +1,25 @@
1
+ import { AsyncLocalStorage } from 'node:async_hooks';
2
+ import type { FigshareBinding } from '../../model/storage/FigshareSyncModel';
3
+ import type { FigshareOperation } from '../../configmodels/FigsharePublishing';
4
+ import type { FigshareArticle, FigshareArticlePayload } from './types';
5
+ import type { FigshareClient } from './http';
6
+ export interface FigshareExecution {
7
+ binding?: FigshareBinding;
8
+ recovery?: boolean;
9
+ signal: AbortSignal;
10
+ guard: (operation: FigshareOperation) => Promise<void>;
11
+ metadata: (id: string, payload: FigshareArticlePayload, send: (payload: FigshareArticlePayload) => Promise<FigshareArticle>) => Promise<FigshareArticle>;
12
+ }
13
+ /** Live transport checks immediately before HTTP; fixture/custom clients use the boundary guard. */
14
+ export declare const transportGuardedMethods: WeakSet<(...args: never[]) => unknown>;
15
+ export declare const figshareExecution: AsyncLocalStorage<FigshareExecution>;
16
+ /** Wrap at the client boundary, after customer payload customisation. */
17
+ export declare function workerClient(client: FigshareClient): FigshareClient;
18
+ export declare class FigshareWaiting extends Error {
19
+ reason: string;
20
+ constructor(reason: string);
21
+ }
22
+ export declare class FigshareRepairRequired extends Error {
23
+ constructor(message: string);
24
+ }
25
+ //# sourceMappingURL=execution.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"execution.d.ts","sourceRoot":"","sources":["../../../src/services/figshare-v2/execution.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AAC7E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAC;AAC/E,OAAO,KAAK,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAC;AACvE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAE7C,MAAM,WAAW,iBAAiB;IAChC,OAAO,CAAC,EAAE,eAAe,CAAC;IAC1B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,EAAE,WAAW,CAAC;IACpB,KAAK,EAAE,CAAC,SAAS,EAAE,iBAAiB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACvD,QAAQ,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,sBAAsB,EAAE,IAAI,EAAE,CAAC,OAAO,EAAE,sBAAsB,KAAK,OAAO,CAAC,eAAe,CAAC,KAAK,OAAO,CAAC,eAAe,CAAC,CAAC;CAC1J;AACD,oGAAoG;AACpG,eAAO,MAAM,uBAAuB,oBAAyB,KAAK,EAAE,KAAK,OAAO,CAAG,CAAC;AACpF,eAAO,MAAM,iBAAiB,sCAA6C,CAAC;AAC5E,yEAAyE;AACzE,wBAAgB,YAAY,CAAC,MAAM,EAAE,cAAc,GAAG,cAAc,CAuBnE;AACD,qBAAa,eAAgB,SAAQ,KAAK;IACrB,MAAM,EAAE,MAAM;gBAAd,MAAM,EAAE,MAAM;CAClC;AACD,qBAAa,sBAAuB,SAAQ,KAAK;gBACnC,OAAO,EAAE,MAAM;CAC5B"}
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FigshareRepairRequired = exports.FigshareWaiting = exports.figshareExecution = exports.transportGuardedMethods = void 0;
4
+ exports.workerClient = workerClient;
5
+ const node_async_hooks_1 = require("node:async_hooks");
6
+ /** Live transport checks immediately before HTTP; fixture/custom clients use the boundary guard. */
7
+ exports.transportGuardedMethods = new WeakSet();
8
+ exports.figshareExecution = new node_async_hooks_1.AsyncLocalStorage();
9
+ /** Wrap at the client boundary, after customer payload customisation. */
10
+ function workerClient(client) {
11
+ const execution = exports.figshareExecution.getStore();
12
+ if (!execution)
13
+ return client;
14
+ const guard = async (operation, send) => {
15
+ if (!exports.transportGuardedMethods.has(send))
16
+ await execution.guard(operation);
17
+ };
18
+ return {
19
+ ...client,
20
+ async createArticle(payload) { await guard('create', client.createArticle); return client.createArticle(payload); },
21
+ async updateArticle(id, payload) {
22
+ return execution.metadata(id, payload, async (outgoing) => {
23
+ await guard('metadata', client.updateArticle);
24
+ return client.updateArticle(id, outgoing);
25
+ });
26
+ },
27
+ async createArticleFile(id, payload) { await guard('assets', client.createArticleFile); return client.createArticleFile(id, payload); },
28
+ async uploadFilePart(url, part, data) { await guard('assets', client.uploadFilePart); return client.uploadFilePart(url, part, data); },
29
+ async completeFileUpload(id, fileId, payload) { await guard('assets', client.completeFileUpload); return client.completeFileUpload(id, fileId, payload); },
30
+ async deleteArticleFile(id, fileId) { await guard('assets', client.deleteArticleFile); return client.deleteArticleFile(id, fileId); },
31
+ async setEmbargo(id, payload) { await guard('embargo', client.setEmbargo); return client.setEmbargo(id, payload); },
32
+ async clearEmbargo(id) { await guard('embargo', client.clearEmbargo); return client.clearEmbargo(id); },
33
+ async publishArticle(id, payload) { await guard('publish', client.publishArticle); return client.publishArticle(id, payload); }
34
+ };
35
+ }
36
+ class FigshareWaiting extends Error {
37
+ reason;
38
+ constructor(reason) {
39
+ super(reason);
40
+ this.reason = reason;
41
+ this.name = 'FigshareWaiting';
42
+ }
43
+ }
44
+ exports.FigshareWaiting = FigshareWaiting;
45
+ class FigshareRepairRequired extends Error {
46
+ constructor(message) { super(message); this.name = 'FigshareRepairRequired'; }
47
+ }
48
+ exports.FigshareRepairRequired = FigshareRepairRequired;
49
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhlY3V0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3NlcnZpY2VzL2ZpZ3NoYXJlLXYyL2V4ZWN1dGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFpQkEsb0NBdUJDO0FBeENELHVEQUFxRDtBQWFyRCxvR0FBb0c7QUFDdkYsUUFBQSx1QkFBdUIsR0FBRyxJQUFJLE9BQU8sRUFBaUMsQ0FBQztBQUN2RSxRQUFBLGlCQUFpQixHQUFHLElBQUksb0NBQWlCLEVBQXFCLENBQUM7QUFDNUUseUVBQXlFO0FBQ3pFLFNBQWdCLFlBQVksQ0FBQyxNQUFzQjtJQUNqRCxNQUFNLFNBQVMsR0FBRyx5QkFBaUIsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUMvQyxJQUFJLENBQUMsU0FBUztRQUFFLE9BQU8sTUFBTSxDQUFDO0lBQzlCLE1BQU0sS0FBSyxHQUFHLEtBQUssRUFBRSxTQUE0QixFQUFFLElBQW1DLEVBQUUsRUFBRTtRQUN4RixJQUFJLENBQUMsK0JBQXVCLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQztZQUFFLE1BQU0sU0FBUyxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUMzRSxDQUFDLENBQUM7SUFDRixPQUFPO1FBQ0wsR0FBRyxNQUFNO1FBQ1QsS0FBSyxDQUFDLGFBQWEsQ0FBQyxPQUFPLElBQUksTUFBTSxLQUFLLENBQUMsUUFBUSxFQUFFLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLE9BQU8sTUFBTSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDbkgsS0FBSyxDQUFDLGFBQWEsQ0FBQyxFQUFFLEVBQUUsT0FBTztZQUM3QixPQUFPLFNBQVMsQ0FBQyxRQUFRLENBQUMsRUFBRSxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUMsUUFBUSxFQUFDLEVBQUU7Z0JBQ3RELE1BQU0sS0FBSyxDQUFDLFVBQVUsRUFBRSxNQUFNLENBQUMsYUFBYSxDQUFDLENB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
@@ -1,4 +1,4 @@
1
- import { type AxiosResponse } from 'axios';
1
+ import { AxiosError, type AxiosResponse } from 'axios';
2
2
  import { Context, Layer } from 'effect';
3
3
  import { FigsharePublishingConfigData } from '../../configmodels/FigsharePublishing';
4
4
  import { ResolvedFigsharePublishingConfigData } from './config';
@@ -12,7 +12,12 @@ export declare class FigshareHttpError extends Error {
12
12
  cause?: unknown;
13
13
  });
14
14
  }
15
+ /** Keep Axios request/config internals out of logs while retaining validation errors. */
16
+ export declare function describeFigshareHttpFailure(error: AxiosError, token: string): Record<string, string | undefined>;
15
17
  export interface FigshareClient {
18
+ getAccount?(): Promise<FigshareInstitutionAccount>;
19
+ listArticles?(page?: number, pageSize?: number): Promise<FigshareArticle[]>;
20
+ getPublicArticle?(articleId: string): Promise<FigshareArticle>;
16
21
  createArticle(payload: FigshareArticlePayload): Promise<FigshareArticle>;
17
22
  updateArticle(articleId: string, payload: FigshareArticlePayload): Promise<FigshareArticle>;
18
23
  getArticle(articleId: string): Promise<FigshareArticle>;
@@ -1 +1 @@
1
- {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../../src/services/figshare-v2/http.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../../src/services/figshare-v2/http.ts"],"names":[],"mappings":"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"}