@researchdatabox/redbox-core 5.0.2 → 5.0.4-beta.12498

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 (548) hide show
  1. package/dist/AttachmentStagingIdentity.d.ts +3 -0
  2. package/dist/AttachmentStagingIdentity.d.ts.map +1 -0
  3. package/dist/AttachmentStagingIdentity.js +10 -0
  4. package/dist/CoreController.d.ts +7 -3
  5. package/dist/CoreController.d.ts.map +1 -1
  6. package/dist/CoreController.js +85 -3
  7. package/dist/DatastreamService.d.ts +4 -0
  8. package/dist/DatastreamService.d.ts.map +1 -1
  9. package/dist/HarvestRunService.d.ts +4 -3
  10. package/dist/HarvestRunService.d.ts.map +1 -1
  11. package/dist/HarvestRunService.js +1 -1
  12. package/dist/RecordConcurrencyObservability.d.ts +51 -0
  13. package/dist/RecordConcurrencyObservability.d.ts.map +1 -0
  14. package/dist/RecordConcurrencyObservability.js +136 -0
  15. package/dist/RecordEntityTag.d.ts +31 -0
  16. package/dist/RecordEntityTag.d.ts.map +1 -0
  17. package/dist/RecordEntityTag.js +101 -0
  18. package/dist/RecordFormFingerprint.d.ts +7 -0
  19. package/dist/RecordFormFingerprint.d.ts.map +1 -0
  20. package/dist/RecordFormFingerprint.js +106 -0
  21. package/dist/RecordHttpConcurrency.d.ts +60 -0
  22. package/dist/RecordHttpConcurrency.d.ts.map +1 -0
  23. package/dist/RecordHttpConcurrency.js +181 -0
  24. package/dist/RecordSaveResponse.d.ts +219 -0
  25. package/dist/RecordSaveResponse.d.ts.map +1 -0
  26. package/dist/RecordSaveResponse.js +639 -0
  27. package/dist/RecordStorageConcurrency.d.ts +48 -0
  28. package/dist/RecordStorageConcurrency.d.ts.map +1 -0
  29. package/dist/RecordStorageConcurrency.js +103 -0
  30. package/dist/RecordWriteClassification.d.ts +12 -0
  31. package/dist/RecordWriteClassification.d.ts.map +1 -0
  32. package/dist/RecordWriteClassification.js +70 -0
  33. package/dist/RecordsService.d.ts +105 -12
  34. package/dist/RecordsService.d.ts.map +1 -1
  35. package/dist/RecordsService.js +44 -1
  36. package/dist/SearchService.d.ts +2 -1
  37. package/dist/SearchService.d.ts.map +1 -1
  38. package/dist/StorageService.d.ts +48 -8
  39. package/dist/StorageService.d.ts.map +1 -1
  40. package/dist/StorageService.js +19 -1
  41. package/dist/StorageServiceResponse.d.ts +22 -1
  42. package/dist/StorageServiceResponse.d.ts.map +1 -1
  43. package/dist/StorageServiceResponse.js +22 -4
  44. package/dist/action-execution/audit.d.ts +41 -0
  45. package/dist/action-execution/audit.d.ts.map +1 -0
  46. package/dist/action-execution/audit.js +122 -0
  47. package/dist/action-execution/executor.d.ts +24 -0
  48. package/dist/action-execution/executor.d.ts.map +1 -0
  49. package/dist/action-execution/executor.js +435 -0
  50. package/dist/action-execution/failure.d.ts +49 -0
  51. package/dist/action-execution/failure.d.ts.map +1 -0
  52. package/dist/action-execution/failure.js +129 -0
  53. package/dist/action-execution/index.d.ts +7 -0
  54. package/dist/action-execution/index.d.ts.map +1 -0
  55. package/dist/action-execution/index.js +23 -0
  56. package/dist/action-execution/legacy-result.d.ts +21 -0
  57. package/dist/action-execution/legacy-result.d.ts.map +1 -0
  58. package/dist/action-execution/legacy-result.js +70 -0
  59. package/dist/action-execution/policy.d.ts +12 -0
  60. package/dist/action-execution/policy.d.ts.map +1 -0
  61. package/dist/action-execution/policy.js +138 -0
  62. package/dist/action-execution/types.d.ts +121 -0
  63. package/dist/action-execution/types.d.ts.map +1 -0
  64. package/dist/action-execution/types.js +22 -0
  65. package/dist/api-routes/groups/branding.d.ts +8 -0
  66. package/dist/api-routes/groups/branding.d.ts.map +1 -1
  67. package/dist/api-routes/groups/branding.js +86 -11
  68. package/dist/api-routes/groups/dashboard-config.d.ts +12 -9
  69. package/dist/api-routes/groups/dashboard-config.d.ts.map +1 -1
  70. package/dist/api-routes/groups/dashboard-config.js +136 -73
  71. package/dist/api-routes/groups/forms.d.ts.map +1 -1
  72. package/dist/api-routes/groups/forms.js +10 -2
  73. package/dist/api-routes/groups/record-schemas.d.ts +5 -0
  74. package/dist/api-routes/groups/record-schemas.d.ts.map +1 -0
  75. package/dist/api-routes/groups/record-schemas.js +181 -0
  76. package/dist/api-routes/groups/records.d.ts +1 -0
  77. package/dist/api-routes/groups/records.d.ts.map +1 -1
  78. package/dist/api-routes/groups/records.js +141 -26
  79. package/dist/api-routes/index.d.ts +3 -0
  80. package/dist/api-routes/index.d.ts.map +1 -1
  81. package/dist/api-routes/index.js +4 -1
  82. package/dist/api-routes/openapi.d.ts.map +1 -1
  83. package/dist/api-routes/openapi.js +7 -5
  84. package/dist/api-routes/record-schema-openapi.d.ts +26 -0
  85. package/dist/api-routes/record-schema-openapi.d.ts.map +1 -0
  86. package/dist/api-routes/record-schema-openapi.js +38 -0
  87. package/dist/api-routes/record-schema-response.d.ts +40 -0
  88. package/dist/api-routes/record-schema-response.d.ts.map +1 -0
  89. package/dist/api-routes/record-schema-response.js +89 -0
  90. package/dist/api-routes/request-extraction.d.ts.map +1 -1
  91. package/dist/api-routes/request-extraction.js +10 -8
  92. package/dist/api-routes/route-factory.d.ts.map +1 -1
  93. package/dist/api-routes/route-factory.js +2 -1
  94. package/dist/api-routes/route-registry.d.ts.map +1 -1
  95. package/dist/api-routes/route-registry.js +3 -1
  96. package/dist/api-routes/schemas/common.d.ts +36 -0
  97. package/dist/api-routes/schemas/common.d.ts.map +1 -1
  98. package/dist/api-routes/schemas/common.js +95 -5
  99. package/dist/api-routes/schemas/responses.d.ts +1424 -1
  100. package/dist/api-routes/schemas/responses.d.ts.map +1 -1
  101. package/dist/api-routes/schemas/responses.js +382 -60
  102. package/dist/api-routes/types.d.ts +1 -0
  103. package/dist/api-routes/types.d.ts.map +1 -1
  104. package/dist/api-routes/validation.d.ts +5 -1
  105. package/dist/api-routes/validation.d.ts.map +1 -1
  106. package/dist/api-routes/validation.js +14 -15
  107. package/dist/bootstrap.d.ts +3 -1
  108. package/dist/bootstrap.d.ts.map +1 -1
  109. package/dist/bootstrap.js +58 -41
  110. package/dist/config/agendaQueue.config.d.ts +3 -0
  111. package/dist/config/agendaQueue.config.d.ts.map +1 -1
  112. package/dist/config/agendaQueue.config.js +29 -2
  113. package/dist/config/branding.config.d.ts +13 -0
  114. package/dist/config/branding.config.d.ts.map +1 -1
  115. package/dist/config/branding.config.js +34 -2
  116. package/dist/config/brandingConfigurationDefaults.config.d.ts +4 -0
  117. package/dist/config/brandingConfigurationDefaults.config.d.ts.map +1 -1
  118. package/dist/config/brandingConfigurationDefaults.config.js +42 -3
  119. package/dist/config/index.d.ts +12 -4
  120. package/dist/config/index.d.ts.map +1 -1
  121. package/dist/config/index.js +7 -4
  122. package/dist/config/policies.config.d.ts.map +1 -1
  123. package/dist/config/policies.config.js +37 -23
  124. package/dist/config/raid.config.d.ts +7 -4
  125. package/dist/config/raid.config.d.ts.map +1 -1
  126. package/dist/config/raid.config.js +21 -35
  127. package/dist/config/record.config.d.ts +3 -0
  128. package/dist/config/record.config.d.ts.map +1 -1
  129. package/dist/config/record.config.js +37 -35
  130. package/dist/config/recordSchema.config.d.ts +68 -0
  131. package/dist/config/recordSchema.config.d.ts.map +1 -0
  132. package/dist/config/recordSchema.config.js +173 -0
  133. package/dist/config/recordValidation.config.d.ts +19 -0
  134. package/dist/config/recordValidation.config.d.ts.map +1 -0
  135. package/dist/config/recordValidation.config.js +10 -0
  136. package/dist/config/recordtype.config.d.ts +32 -9
  137. package/dist/config/recordtype.config.d.ts.map +1 -1
  138. package/dist/config/recordtype.config.js +4 -7
  139. package/dist/config/routes.config.d.ts.map +1 -1
  140. package/dist/config/routes.config.js +135 -53
  141. package/dist/config/workflow.config.d.ts +6 -0
  142. package/dist/config/workflow.config.d.ts.map +1 -1
  143. package/dist/config/workflow.config.js +1 -1
  144. package/dist/configmodels/AdminSidebarConfig.d.ts.map +1 -1
  145. package/dist/configmodels/AdminSidebarConfig.js +4 -2
  146. package/dist/configmodels/ConfigModels.d.ts +1 -1
  147. package/dist/configmodels/ConfigModels.d.ts.map +1 -1
  148. package/dist/configmodels/ConfigModels.js +26 -9
  149. package/dist/configmodels/DashboardFieldCatalogue.d.ts +67 -0
  150. package/dist/configmodels/DashboardFieldCatalogue.d.ts.map +1 -0
  151. package/dist/configmodels/DashboardFieldCatalogue.js +174 -0
  152. package/dist/configmodels/DashboardSettings.d.ts +191 -0
  153. package/dist/configmodels/DashboardSettings.d.ts.map +1 -0
  154. package/dist/configmodels/DashboardSettings.js +705 -0
  155. package/dist/configmodels/OniPublishing.d.ts +205 -0
  156. package/dist/configmodels/OniPublishing.d.ts.map +1 -0
  157. package/dist/configmodels/OniPublishing.js +335 -0
  158. package/dist/configmodels/RaidPublishing.d.ts +97 -0
  159. package/dist/configmodels/RaidPublishing.d.ts.map +1 -0
  160. package/dist/configmodels/RaidPublishing.js +35 -0
  161. package/dist/configmodels/WebAnalytics.d.ts +55 -0
  162. package/dist/configmodels/WebAnalytics.d.ts.map +1 -0
  163. package/dist/configmodels/WebAnalytics.js +61 -0
  164. package/dist/controllers/AppConfigController.d.ts.map +1 -1
  165. package/dist/controllers/AppConfigController.js +4 -1
  166. package/dist/controllers/BrandingAppController.d.ts +29 -7
  167. package/dist/controllers/BrandingAppController.d.ts.map +1 -1
  168. package/dist/controllers/BrandingAppController.js +265 -69
  169. package/dist/controllers/BrandingController.d.ts +24 -1
  170. package/dist/controllers/BrandingController.d.ts.map +1 -1
  171. package/dist/controllers/BrandingController.js +173 -43
  172. package/dist/controllers/BrandingControllerSupport.d.ts +20 -0
  173. package/dist/controllers/BrandingControllerSupport.d.ts.map +1 -0
  174. package/dist/controllers/BrandingControllerSupport.js +80 -0
  175. package/dist/controllers/DashboardConfigController.d.ts +6 -2
  176. package/dist/controllers/DashboardConfigController.d.ts.map +1 -1
  177. package/dist/controllers/DashboardConfigController.js +18 -4
  178. package/dist/controllers/DynamicAssetController.d.ts +7 -5
  179. package/dist/controllers/DynamicAssetController.d.ts.map +1 -1
  180. package/dist/controllers/DynamicAssetController.js +21 -12
  181. package/dist/controllers/RecordController.d.ts +46 -5
  182. package/dist/controllers/RecordController.d.ts.map +1 -1
  183. package/dist/controllers/RecordController.js +815 -347
  184. package/dist/controllers/index.d.ts.map +1 -1
  185. package/dist/controllers/index.js +4 -1
  186. package/dist/controllers/webservice/AdminController.d.ts.map +1 -1
  187. package/dist/controllers/webservice/AdminController.js +4 -3
  188. package/dist/controllers/webservice/BrandingController.d.ts +26 -1
  189. package/dist/controllers/webservice/BrandingController.d.ts.map +1 -1
  190. package/dist/controllers/webservice/BrandingController.js +292 -116
  191. package/dist/controllers/webservice/DashboardConfigController.d.ts +25 -17
  192. package/dist/controllers/webservice/DashboardConfigController.d.ts.map +1 -1
  193. package/dist/controllers/webservice/DashboardConfigController.js +90 -205
  194. package/dist/controllers/webservice/FormManagementController.d.ts.map +1 -1
  195. package/dist/controllers/webservice/FormManagementController.js +37 -3
  196. package/dist/controllers/webservice/RecordController.d.ts +15 -1
  197. package/dist/controllers/webservice/RecordController.d.ts.map +1 -1
  198. package/dist/controllers/webservice/RecordController.js +664 -271
  199. package/dist/controllers/webservice/RecordSchemaController.d.ts +32 -0
  200. package/dist/controllers/webservice/RecordSchemaController.d.ts.map +1 -0
  201. package/dist/controllers/webservice/RecordSchemaController.js +356 -0
  202. package/dist/controllers/webservice/RecordTypeController.d.ts +6 -1
  203. package/dist/controllers/webservice/RecordTypeController.d.ts.map +1 -1
  204. package/dist/controllers/webservice/RecordTypeController.js +21 -3
  205. package/dist/controllers/webservice/SearchController.d.ts.map +1 -1
  206. package/dist/controllers/webservice/SearchController.js +7 -3
  207. package/dist/hooks/defineRedboxHook.d.ts +3 -0
  208. package/dist/hooks/defineRedboxHook.d.ts.map +1 -1
  209. package/dist/hooks/defineRedboxHook.js +4 -1
  210. package/dist/index.d.ts +50 -23
  211. package/dist/index.d.ts.map +1 -1
  212. package/dist/index.js +90 -2
  213. package/dist/loader/bootstrapShimRuntime.d.ts +1 -1
  214. package/dist/loader/bootstrapShimRuntime.d.ts.map +1 -1
  215. package/dist/loader/bootstrapShimRuntime.js +20 -12
  216. package/dist/loader/index.d.ts +9 -0
  217. package/dist/loader/index.d.ts.map +1 -1
  218. package/dist/loader/index.js +93 -4
  219. package/dist/model/BrandingTypeface.d.ts +70 -0
  220. package/dist/model/BrandingTypeface.d.ts.map +1 -0
  221. package/dist/model/BrandingTypeface.js +116 -0
  222. package/dist/model/BuildResponse.d.ts +25 -11
  223. package/dist/model/BuildResponse.d.ts.map +1 -1
  224. package/dist/model/BuildResponse.js +4 -3
  225. package/dist/model/DashboardTypeResponseModel.d.ts +6 -0
  226. package/dist/model/DashboardTypeResponseModel.d.ts.map +1 -1
  227. package/dist/model/DashboardTypeResponseModel.js +7 -1
  228. package/dist/model/DashboardViewResponseModel.d.ts +5 -1
  229. package/dist/model/DashboardViewResponseModel.d.ts.map +1 -1
  230. package/dist/model/DashboardViewResponseModel.js +6 -3
  231. package/dist/model/RBValidationError.d.ts +17 -0
  232. package/dist/model/RBValidationError.d.ts.map +1 -1
  233. package/dist/model/RBValidationError.js +37 -1
  234. package/dist/model/RecordTypeResponseModel.d.ts +12 -4
  235. package/dist/model/RecordTypeResponseModel.d.ts.map +1 -1
  236. package/dist/model/RecordTypeResponseModel.js +11 -2
  237. package/dist/model/index.d.ts +5 -1
  238. package/dist/model/index.d.ts.map +1 -1
  239. package/dist/model/index.js +5 -2
  240. package/dist/model/record-contract.d.ts +42 -0
  241. package/dist/model/record-contract.d.ts.map +1 -0
  242. package/dist/model/record-contract.js +3 -0
  243. package/dist/model/storage/BrandingModel.d.ts +7 -0
  244. package/dist/model/storage/BrandingModel.d.ts.map +1 -1
  245. package/dist/model/storage/BrandingModel.js +7 -1
  246. package/dist/model/storage/DeletedRecordModel.d.ts +35 -0
  247. package/dist/model/storage/DeletedRecordModel.d.ts.map +1 -1
  248. package/dist/model/storage/DeletedRecordModel.js +62 -1
  249. package/dist/model/storage/IntegrationAuditModel.d.ts +16 -2
  250. package/dist/model/storage/IntegrationAuditModel.d.ts.map +1 -1
  251. package/dist/model/storage/IntegrationAuditModel.js +15 -1
  252. package/dist/model/storage/RecordAuditModel.d.ts +11 -1
  253. package/dist/model/storage/RecordAuditModel.d.ts.map +1 -1
  254. package/dist/model/storage/RecordAuditModel.js +8 -2
  255. package/dist/model/storage/RecordModel.d.ts +6 -0
  256. package/dist/model/storage/RecordModel.d.ts.map +1 -1
  257. package/dist/model/storage/RecordTypeModel.d.ts +6 -0
  258. package/dist/model/storage/RecordTypeModel.d.ts.map +1 -1
  259. package/dist/model/storage/RecordTypeModel.js +4 -1
  260. package/dist/model/storage/index.d.ts +12 -10
  261. package/dist/model/storage/index.d.ts.map +1 -1
  262. package/dist/model/storage/index.js +24 -2
  263. package/dist/model/storage/record-schema.d.ts +115 -0
  264. package/dist/model/storage/record-schema.d.ts.map +1 -0
  265. package/dist/model/storage/record-schema.js +3 -0
  266. package/dist/policies/checkAuth.d.ts +2 -6
  267. package/dist/policies/checkAuth.d.ts.map +1 -1
  268. package/dist/policies/checkAuth.js +32 -9
  269. package/dist/policies/contentSecurityPolicy.d.ts.map +1 -1
  270. package/dist/policies/contentSecurityPolicy.js +85 -2
  271. package/dist/policies/index.d.ts +3 -2
  272. package/dist/policies/index.d.ts.map +1 -1
  273. package/dist/policies/index.js +4 -2
  274. package/dist/policies/validateApiContractRequest.d.ts.map +1 -1
  275. package/dist/policies/validateApiContractRequest.js +49 -11
  276. package/dist/record-contract/ajv-error-mapper.d.ts +34 -0
  277. package/dist/record-contract/ajv-error-mapper.d.ts.map +1 -0
  278. package/dist/record-contract/ajv-error-mapper.js +153 -0
  279. package/dist/record-contract/canonical-json.d.ts +20 -0
  280. package/dist/record-contract/canonical-json.d.ts.map +1 -0
  281. package/dist/record-contract/canonical-json.js +126 -0
  282. package/dist/record-contract/codes.d.ts +36 -0
  283. package/dist/record-contract/codes.d.ts.map +1 -0
  284. package/dist/record-contract/codes.js +38 -0
  285. package/dist/record-contract/contributor-registry.d.ts +76 -0
  286. package/dist/record-contract/contributor-registry.d.ts.map +1 -0
  287. package/dist/record-contract/contributor-registry.js +126 -0
  288. package/dist/record-contract/core-contributors.d.ts +44 -0
  289. package/dist/record-contract/core-contributors.d.ts.map +1 -0
  290. package/dist/record-contract/core-contributors.js +395 -0
  291. package/dist/record-contract/deep-freeze.d.ts +3 -0
  292. package/dist/record-contract/deep-freeze.d.ts.map +1 -0
  293. package/dist/record-contract/deep-freeze.js +23 -0
  294. package/dist/record-contract/index.d.ts +13 -0
  295. package/dist/record-contract/index.d.ts.map +1 -0
  296. package/dist/record-contract/index.js +29 -0
  297. package/dist/record-contract/json-pointer.d.ts +20 -0
  298. package/dist/record-contract/json-pointer.d.ts.map +1 -0
  299. package/dist/record-contract/json-pointer.js +70 -0
  300. package/dist/record-contract/json-schema-renderer.d.ts +51 -0
  301. package/dist/record-contract/json-schema-renderer.d.ts.map +1 -0
  302. package/dist/record-contract/json-schema-renderer.js +450 -0
  303. package/dist/record-contract/record-contract-compiler.d.ts +42 -0
  304. package/dist/record-contract/record-contract-compiler.d.ts.map +1 -0
  305. package/dist/record-contract/record-contract-compiler.js +775 -0
  306. package/dist/record-contract/record-contract-context.d.ts +91 -0
  307. package/dist/record-contract/record-contract-context.d.ts.map +1 -0
  308. package/dist/record-contract/record-contract-context.js +39 -0
  309. package/dist/record-contract/record-json-schema-artifact.d.ts +74 -0
  310. package/dist/record-contract/record-json-schema-artifact.d.ts.map +1 -0
  311. package/dist/record-contract/record-json-schema-artifact.js +309 -0
  312. package/dist/record-contract/record-json-schema-etag.d.ts +15 -0
  313. package/dist/record-contract/record-json-schema-etag.d.ts.map +1 -0
  314. package/dist/record-contract/record-json-schema-etag.js +41 -0
  315. package/dist/record-contract/types.d.ts +151 -0
  316. package/dist/record-contract/types.d.ts.map +1 -0
  317. package/dist/record-contract/types.js +6 -0
  318. package/dist/services/AppConfigService.d.ts +6 -0
  319. package/dist/services/AppConfigService.d.ts.map +1 -1
  320. package/dist/services/AppConfigService.js +23 -1
  321. package/dist/services/AttachmentMetadataService.d.ts +58 -0
  322. package/dist/services/AttachmentMetadataService.d.ts.map +1 -1
  323. package/dist/services/AttachmentMetadataService.js +643 -8
  324. package/dist/services/BrandingLogoService.d.ts +6 -1
  325. package/dist/services/BrandingLogoService.d.ts.map +1 -1
  326. package/dist/services/BrandingLogoService.js +77 -9
  327. package/dist/services/BrandingService.d.ts +171 -9
  328. package/dist/services/BrandingService.d.ts.map +1 -1
  329. package/dist/services/BrandingService.js +572 -68
  330. package/dist/services/BrandingThemeCssService.d.ts +17 -1
  331. package/dist/services/BrandingThemeCssService.d.ts.map +1 -1
  332. package/dist/services/BrandingThemeCssService.js +71 -9
  333. package/dist/services/BrandingThemeTokens.d.ts.map +1 -1
  334. package/dist/services/BrandingThemeTokens.js +2 -1
  335. package/dist/services/BrandingTypefaceService.d.ts +74 -0
  336. package/dist/services/BrandingTypefaceService.d.ts.map +1 -0
  337. package/dist/services/BrandingTypefaceService.js +359 -0
  338. package/dist/services/BrandingWoff2Inspector.d.ts +17 -0
  339. package/dist/services/BrandingWoff2Inspector.d.ts.map +1 -0
  340. package/dist/services/BrandingWoff2Inspector.js +402 -0
  341. package/dist/services/DashboardConfigService.d.ts +214 -54
  342. package/dist/services/DashboardConfigService.d.ts.map +1 -1
  343. package/dist/services/DashboardConfigService.js +829 -261
  344. package/dist/services/DashboardLegacyConversion.d.ts +82 -0
  345. package/dist/services/DashboardLegacyConversion.d.ts.map +1 -0
  346. package/dist/services/DashboardLegacyConversion.js +427 -0
  347. package/dist/services/DashboardTypesService.d.ts +15 -4
  348. package/dist/services/DashboardTypesService.d.ts.map +1 -1
  349. package/dist/services/DashboardTypesService.js +72 -139
  350. package/dist/services/DoiService.d.ts +1 -1
  351. package/dist/services/DoiService.d.ts.map +1 -1
  352. package/dist/services/DoiService.js +71 -45
  353. package/dist/services/FigshareService.d.ts +1 -1
  354. package/dist/services/FigshareService.d.ts.map +1 -1
  355. package/dist/services/FigshareService.js +73 -32
  356. package/dist/services/FormRecordConsistencyService.d.ts +8 -23
  357. package/dist/services/FormRecordConsistencyService.d.ts.map +1 -1
  358. package/dist/services/FormRecordConsistencyService.js +54 -70
  359. package/dist/services/FormsService.d.ts +91 -2
  360. package/dist/services/FormsService.d.ts.map +1 -1
  361. package/dist/services/FormsService.js +324 -64
  362. package/dist/services/HarvestRunService.d.ts +6 -3
  363. package/dist/services/HarvestRunService.d.ts.map +1 -1
  364. package/dist/services/HarvestRunService.js +161 -97
  365. package/dist/services/I18nEntriesService.d.ts +1 -0
  366. package/dist/services/I18nEntriesService.d.ts.map +1 -1
  367. package/dist/services/I18nEntriesService.js +26 -6
  368. package/dist/services/OniService.d.ts +19 -62
  369. package/dist/services/OniService.d.ts.map +1 -1
  370. package/dist/services/OniService.js +223 -691
  371. package/dist/services/RDMPService.d.ts +1 -1
  372. package/dist/services/RDMPService.d.ts.map +1 -1
  373. package/dist/services/RDMPService.js +5 -5
  374. package/dist/services/RaidService.d.ts +19 -61
  375. package/dist/services/RaidService.d.ts.map +1 -1
  376. package/dist/services/RaidService.js +191 -530
  377. package/dist/services/RecordSchemaService.d.ts +440 -0
  378. package/dist/services/RecordSchemaService.d.ts.map +1 -0
  379. package/dist/services/RecordSchemaService.js +3061 -0
  380. package/dist/services/RecordTypesService.d.ts +29 -0
  381. package/dist/services/RecordTypesService.d.ts.map +1 -1
  382. package/dist/services/RecordTypesService.js +106 -11
  383. package/dist/services/RecordValidationService.d.ts +340 -0
  384. package/dist/services/RecordValidationService.d.ts.map +1 -0
  385. package/dist/services/RecordValidationService.js +1898 -0
  386. package/dist/services/RecordsService.d.ts +313 -22
  387. package/dist/services/RecordsService.d.ts.map +1 -1
  388. package/dist/services/RecordsService.js +4948 -509
  389. package/dist/services/SolrSearchService.d.ts +1 -1
  390. package/dist/services/SolrSearchService.d.ts.map +1 -1
  391. package/dist/services/SolrSearchService.js +42 -12
  392. package/dist/services/StandardDatastreamService.d.ts +4 -0
  393. package/dist/services/StandardDatastreamService.d.ts.map +1 -1
  394. package/dist/services/StandardDatastreamService.js +109 -45
  395. package/dist/services/TriggerService.d.ts.map +1 -1
  396. package/dist/services/TriggerService.js +54 -30
  397. package/dist/services/UsersService.d.ts +2 -1
  398. package/dist/services/UsersService.d.ts.map +1 -1
  399. package/dist/services/UsersService.js +364 -283
  400. package/dist/services/VocabularyService.d.ts +2 -0
  401. package/dist/services/VocabularyService.d.ts.map +1 -1
  402. package/dist/services/VocabularyService.js +61 -2
  403. package/dist/services/WorkflowStepsService.d.ts +11 -0
  404. package/dist/services/WorkflowStepsService.d.ts.map +1 -1
  405. package/dist/services/WorkflowStepsService.js +32 -3
  406. package/dist/services/WorkspaceService.d.ts +2 -2
  407. package/dist/services/WorkspaceService.d.ts.map +1 -1
  408. package/dist/services/WorkspaceService.js +5 -5
  409. package/dist/services/doi-v2/bindings.d.ts.map +1 -1
  410. package/dist/services/doi-v2/bindings.js +3 -20
  411. package/dist/services/doi-v2/config.d.ts +1 -0
  412. package/dist/services/doi-v2/config.d.ts.map +1 -1
  413. package/dist/services/doi-v2/config.js +13 -5
  414. package/dist/services/doi-v2/runtime.d.ts.map +1 -1
  415. package/dist/services/doi-v2/runtime.js +14 -54
  416. package/dist/services/figshare-v2/bindings.d.ts.map +1 -1
  417. package/dist/services/figshare-v2/bindings.js +3 -20
  418. package/dist/services/figshare-v2/runtime.d.ts.map +1 -1
  419. package/dist/services/figshare-v2/runtime.js +11 -58
  420. package/dist/services/form-record-access-user.d.ts +3 -0
  421. package/dist/services/form-record-access-user.d.ts.map +1 -0
  422. package/dist/services/form-record-access-user.js +23 -0
  423. package/dist/services/index.d.ts +9 -0
  424. package/dist/services/index.d.ts.map +1 -1
  425. package/dist/services/index.js +45 -3
  426. package/dist/services/integration-v2/bindings.d.ts +3 -0
  427. package/dist/services/integration-v2/bindings.d.ts.map +1 -0
  428. package/dist/services/integration-v2/bindings.js +91 -0
  429. package/dist/services/integration-v2/runtime.d.ts +3 -0
  430. package/dist/services/integration-v2/runtime.d.ts.map +1 -0
  431. package/dist/services/integration-v2/runtime.js +50 -0
  432. package/dist/services/internal-record-schema-authorization.d.ts +8 -0
  433. package/dist/services/internal-record-schema-authorization.d.ts.map +1 -0
  434. package/dist/services/internal-record-schema-authorization.js +16 -0
  435. package/dist/services/oni-v2/audit.d.ts +19 -0
  436. package/dist/services/oni-v2/audit.d.ts.map +1 -0
  437. package/dist/services/oni-v2/audit.js +50 -0
  438. package/dist/services/oni-v2/bindings.d.ts +7 -0
  439. package/dist/services/oni-v2/bindings.d.ts.map +1 -0
  440. package/dist/services/oni-v2/bindings.js +31 -0
  441. package/dist/services/oni-v2/config.d.ts +12 -0
  442. package/dist/services/oni-v2/config.d.ts.map +1 -0
  443. package/dist/services/oni-v2/config.js +134 -0
  444. package/dist/services/oni-v2/context.d.ts +3 -0
  445. package/dist/services/oni-v2/context.d.ts.map +1 -0
  446. package/dist/services/oni-v2/context.js +17 -0
  447. package/dist/services/oni-v2/crate.d.ts +17 -0
  448. package/dist/services/oni-v2/crate.d.ts.map +1 -0
  449. package/dist/services/oni-v2/crate.js +504 -0
  450. package/dist/services/oni-v2/flydriveOcflStore.d.ts +69 -0
  451. package/dist/services/oni-v2/flydriveOcflStore.d.ts.map +1 -0
  452. package/dist/services/oni-v2/flydriveOcflStore.js +325 -0
  453. package/dist/services/oni-v2/ingestion.d.ts +37 -0
  454. package/dist/services/oni-v2/ingestion.d.ts.map +1 -0
  455. package/dist/services/oni-v2/ingestion.js +91 -0
  456. package/dist/services/oni-v2/mapping.d.ts +17 -0
  457. package/dist/services/oni-v2/mapping.d.ts.map +1 -0
  458. package/dist/services/oni-v2/mapping.js +137 -0
  459. package/dist/services/oni-v2/repository.d.ts +9 -0
  460. package/dist/services/oni-v2/repository.d.ts.map +1 -0
  461. package/dist/services/oni-v2/repository.js +180 -0
  462. package/dist/services/oni-v2/runtime.d.ts +23 -0
  463. package/dist/services/oni-v2/runtime.d.ts.map +1 -0
  464. package/dist/services/oni-v2/runtime.js +121 -0
  465. package/dist/services/oni-v2/templating.d.ts +11 -0
  466. package/dist/services/oni-v2/templating.d.ts.map +1 -0
  467. package/dist/services/oni-v2/templating.js +27 -0
  468. package/dist/services/oni-v2/types.d.ts +100 -0
  469. package/dist/services/oni-v2/types.d.ts.map +1 -0
  470. package/dist/services/oni-v2/types.js +3 -0
  471. package/dist/services/raid-v2/audit.d.ts +10 -0
  472. package/dist/services/raid-v2/audit.d.ts.map +1 -0
  473. package/dist/services/raid-v2/audit.js +29 -0
  474. package/dist/services/raid-v2/errors.d.ts +85 -0
  475. package/dist/services/raid-v2/errors.d.ts.map +1 -0
  476. package/dist/services/raid-v2/errors.js +36 -0
  477. package/dist/services/raid-v2/http.d.ts +4 -0
  478. package/dist/services/raid-v2/http.d.ts.map +1 -0
  479. package/dist/services/raid-v2/http.js +84 -0
  480. package/dist/services/raid-v2/logger.d.ts +8 -0
  481. package/dist/services/raid-v2/logger.d.ts.map +1 -0
  482. package/dist/services/raid-v2/logger.js +30 -0
  483. package/dist/services/raid-v2/mapping.d.ts +9 -0
  484. package/dist/services/raid-v2/mapping.d.ts.map +1 -0
  485. package/dist/services/raid-v2/mapping.js +168 -0
  486. package/dist/services/raid-v2/runtime.d.ts +5 -0
  487. package/dist/services/raid-v2/runtime.d.ts.map +1 -0
  488. package/dist/services/raid-v2/runtime.js +135 -0
  489. package/dist/services/raid-v2/tags.d.ts +11 -0
  490. package/dist/services/raid-v2/tags.d.ts.map +1 -0
  491. package/dist/services/raid-v2/tags.js +12 -0
  492. package/dist/services/raid-v2/types.d.ts +66 -0
  493. package/dist/services/raid-v2/types.d.ts.map +1 -0
  494. package/dist/services/raid-v2/types.js +3 -0
  495. package/dist/services/record-hooks/coordinator.d.ts +64 -0
  496. package/dist/services/record-hooks/coordinator.d.ts.map +1 -0
  497. package/dist/services/record-hooks/coordinator.js +276 -0
  498. package/dist/visitor/client.visitor.d.ts +6 -0
  499. package/dist/visitor/client.visitor.d.ts.map +1 -1
  500. package/dist/visitor/client.visitor.js +59 -14
  501. package/dist/visitor/construct.visitor.d.ts +27 -1
  502. package/dist/visitor/construct.visitor.d.ts.map +1 -1
  503. package/dist/visitor/construct.visitor.js +265 -177
  504. package/dist/visitor/context-variables.visitor.d.ts +3 -1
  505. package/dist/visitor/context-variables.visitor.d.ts.map +1 -1
  506. package/dist/visitor/context-variables.visitor.js +15 -1
  507. package/dist/visitor/data-value.visitor.d.ts +6 -0
  508. package/dist/visitor/data-value.visitor.d.ts.map +1 -1
  509. package/dist/visitor/data-value.visitor.js +10 -1
  510. package/dist/visitor/json-type-def.visitor.d.ts +6 -0
  511. package/dist/visitor/json-type-def.visitor.d.ts.map +1 -1
  512. package/dist/visitor/json-type-def.visitor.js +10 -1
  513. package/dist/visitor/migrate-config-v4-v5.visitor.d.ts +11 -0
  514. package/dist/visitor/migrate-config-v4-v5.visitor.d.ts.map +1 -1
  515. package/dist/visitor/migrate-config-v4-v5.visitor.js +228 -133
  516. package/dist/visitor/related-object-data-inline.visitor.d.ts +31 -0
  517. package/dist/visitor/related-object-data-inline.visitor.d.ts.map +1 -0
  518. package/dist/visitor/related-object-data-inline.visitor.js +96 -0
  519. package/dist/visitor/template.visitor.d.ts +17 -2
  520. package/dist/visitor/template.visitor.d.ts.map +1 -1
  521. package/dist/visitor/template.visitor.js +60 -22
  522. package/dist/visitor/validator.visitor.d.ts +49 -7
  523. package/dist/visitor/validator.visitor.d.ts.map +1 -1
  524. package/dist/visitor/validator.visitor.js +275 -178
  525. package/dist/waterline-models/AttachmentMetadata.d.ts +22 -0
  526. package/dist/waterline-models/AttachmentMetadata.d.ts.map +1 -1
  527. package/dist/waterline-models/AttachmentMetadata.js +147 -3
  528. package/dist/waterline-models/BrandingConfig.d.ts +7 -0
  529. package/dist/waterline-models/BrandingConfig.d.ts.map +1 -1
  530. package/dist/waterline-models/BrandingConfig.js +16 -1
  531. package/dist/waterline-models/BrandingConfigHistory.d.ts +11 -2
  532. package/dist/waterline-models/BrandingConfigHistory.d.ts.map +1 -1
  533. package/dist/waterline-models/BrandingConfigHistory.js +21 -1
  534. package/dist/waterline-models/DashboardConfiguration.d.ts +29 -0
  535. package/dist/waterline-models/DashboardConfiguration.d.ts.map +1 -0
  536. package/dist/waterline-models/DashboardConfiguration.js +52 -0
  537. package/dist/waterline-models/RecordType.d.ts +9 -0
  538. package/dist/waterline-models/RecordType.d.ts.map +1 -1
  539. package/dist/waterline-models/RecordType.js +16 -1
  540. package/dist/waterline-models/User.d.ts.map +1 -1
  541. package/dist/waterline-models/User.js +10 -15
  542. package/dist/waterline-models/index.d.ts +2 -0
  543. package/dist/waterline-models/index.d.ts.map +1 -1
  544. package/dist/waterline-models/index.js +4 -1
  545. package/package.json +60 -47
  546. package/dist/config/datapubs.config.d.ts +0 -72
  547. package/dist/config/datapubs.config.d.ts.map +0 -1
  548. package/dist/config/datapubs.config.js +0 -74
@@ -22,6 +22,7 @@ const payload_1 = require("./doi-v2/payload");
22
22
  const profiles_1 = require("./doi-v2/profiles");
23
23
  const runtime_1 = require("./doi-v2/runtime");
24
24
  const IntegrationAuditModel_1 = require("../model/storage/IntegrationAuditModel");
25
+ const RecordsService_1 = require("../RecordsService");
25
26
  var Services;
26
27
  (function (Services) {
27
28
  class Doi extends CoreService_1.Services.Core.Service {
@@ -35,7 +36,7 @@ var Services;
35
36
  'changeDoiState',
36
37
  'lookupDataciteDois',
37
38
  'getAuthenticationString',
38
- 'addDoiDataToRecord'
39
+ 'addDoiDataToRecord',
39
40
  ];
40
41
  _msgPrefix;
41
42
  msgPrefix() {
@@ -52,8 +53,8 @@ var Services;
52
53
  return {
53
54
  requestSummary: lodash_1.default.get(error, 'requestSummary'),
54
55
  responseSummary: {
55
- displayErrors: error.displayErrors
56
- }
56
+ displayErrors: error.displayErrors,
57
+ },
57
58
  };
58
59
  }
59
60
  const statusCode = lodash_1.default.get(error, 'statusCode');
@@ -70,8 +71,8 @@ var Services;
70
71
  message: errorMessage,
71
72
  ...(statusCode != null ? { statusCode } : {}),
72
73
  ...(causeCode != null ? { causeCode } : {}),
73
- ...(causeMessage != null ? { causeMessage } : {})
74
- }
74
+ ...(causeMessage != null ? { causeMessage } : {}),
75
+ },
75
76
  };
76
77
  }
77
78
  wrapHttpError(error, message, fallbackStatus) {
@@ -82,7 +83,7 @@ var Services;
82
83
  throw new RBValidationError_1.RBValidationError({
83
84
  message: `${this.msgPrefix()} ${message}`,
84
85
  options: { cause: error },
85
- displayErrors: this.doiResponseToRBValidationError(statusCode ?? 500).displayErrors
86
+ displayErrors: this.doiResponseToRBValidationError(statusCode ?? 500).displayErrors,
86
87
  });
87
88
  }
88
89
  doiResponseToRBValidationError(statusCode, messagePrefix) {
@@ -107,7 +108,7 @@ var Services;
107
108
  const translated = TranslationService.t(message);
108
109
  return new RBValidationError_1.RBValidationError({
109
110
  message: `${this.msgPrefix()} ${messagePrefix ?? translated}`,
110
- displayErrors: [{ code: message, title: this.msgPrefix(), detail: translated }]
111
+ displayErrors: [{ code: message, title: this.msgPrefix(), detail: translated }],
111
112
  });
112
113
  }
113
114
  getAuthenticationString(record) {
@@ -127,12 +128,14 @@ var Services;
127
128
  total: 0,
128
129
  start,
129
130
  rows: 0,
130
- source: 'datacite'
131
- }
131
+ source: 'datacite',
132
+ },
132
133
  };
133
134
  }
134
135
  const rows = Math.min(requestedRows, options.maxRows);
135
- const search = String(request.search ?? '').trim().slice(0, 300);
136
+ const search = String(request.search ?? '')
137
+ .trim()
138
+ .slice(0, 300);
136
139
  if (search === '' && !options.allowEmptySearch) {
137
140
  return {
138
141
  data: [],
@@ -140,8 +143,8 @@ var Services;
140
143
  total: 0,
141
144
  start,
142
145
  rows,
143
- source: 'datacite'
144
- }
146
+ source: 'datacite',
147
+ },
145
148
  };
146
149
  }
147
150
  const params = new URLSearchParams();
@@ -158,9 +161,9 @@ var Services;
158
161
  const response = await axios_1.default.get(`${options.baseUrl}/dois`, {
159
162
  timeout: options.timeoutMs,
160
163
  headers: {
161
- Accept: 'application/vnd.api+json'
164
+ Accept: 'application/vnd.api+json',
162
165
  },
163
- params
166
+ params,
164
167
  });
165
168
  return this.mapDataciteLookupResponse(response.data, request, rows, options);
166
169
  }
@@ -181,7 +184,7 @@ var Services;
181
184
  const auditCtx = (0, audit_1.startDoiAudit)(oid, auditAction, runContext, {
182
185
  ...(event != null ? { event } : {}),
183
186
  action,
184
- profile: resolvedProfile.name
187
+ profile: resolvedProfile.name,
185
188
  }, options.auditContext);
186
189
  let requestSummary;
187
190
  try {
@@ -190,12 +193,20 @@ var Services;
190
193
  if (action === 'update' && citationDoi == null) {
191
194
  throw new RBValidationError_1.RBValidationError({
192
195
  message: `Could not update DOI for oid ${oid}: doi-required`,
193
- displayErrors: [{ code: 'doi-required', title: 'datacite-validation-error', meta: { oid, action, ...(event != null ? { event } : {}) } }]
196
+ displayErrors: [
197
+ {
198
+ code: 'doi-required',
199
+ title: 'datacite-validation-error',
200
+ meta: { oid, action, ...(event != null ? { event } : {}) },
201
+ },
202
+ ],
194
203
  });
195
204
  }
196
205
  if (action === 'update' && citationDoi != null && prefix != null && !citationDoi.startsWith(prefix)) {
197
206
  sails.log.warn(`The citation DOI ${citationDoi} does not begin with the correct prefix ${prefix}. Will not attempt to update`);
198
- (0, audit_1.completeDoiAudit)(auditCtx, { message: 'Skipped DOI update because the stored DOI prefix does not match the configured profile prefix.' });
207
+ (0, audit_1.completeDoiAudit)(auditCtx, {
208
+ message: 'Skipped DOI update because the stored DOI prefix does not match the configured profile prefix.',
209
+ });
199
210
  return null;
200
211
  }
201
212
  const payload = await (0, payload_1.buildDoiPayload)(record, oid, resolvedProfile.profile, action, event);
@@ -219,7 +230,7 @@ var Services;
219
230
  message: action === 'update' ? 'DOI updated successfully.' : 'DOI published successfully.',
220
231
  httpStatusCode: result.statusCode,
221
232
  requestSummary,
222
- responseSummary: result.responseSummary
233
+ responseSummary: result.responseSummary,
223
234
  });
224
235
  return result.doi ?? null;
225
236
  }
@@ -229,7 +240,7 @@ var Services;
229
240
  message: action === 'update' ? 'DOI update failed.' : 'DOI publish failed.',
230
241
  httpStatusCode: errorSummary.statusCode,
231
242
  requestSummary: requestSummary ?? errorSummary.requestSummary,
232
- responseSummary: errorSummary.responseSummary
243
+ responseSummary: errorSummary.responseSummary,
233
244
  });
234
245
  this.wrapHttpError(error, action === 'update' ? TranslationService.t('doi-error-updating') : TranslationService.t('doi-error-creating'));
235
246
  }
@@ -265,7 +276,7 @@ var Services;
265
276
  (0, audit_1.completeDoiAudit)(auditCtx, {
266
277
  message: 'DOI deleted successfully.',
267
278
  httpStatusCode: result.statusCode,
268
- responseSummary: result.responseSummary
279
+ responseSummary: result.responseSummary,
269
280
  });
270
281
  return result.statusCode === 204;
271
282
  }
@@ -274,7 +285,7 @@ var Services;
274
285
  (0, audit_1.failDoiAudit)(auditCtx, error, {
275
286
  message: 'DOI delete failed.',
276
287
  httpStatusCode: errorSummary.statusCode,
277
- responseSummary: errorSummary.responseSummary
288
+ responseSummary: errorSummary.responseSummary,
278
289
  });
279
290
  this.wrapHttpError(error, TranslationService.t('doi-error-deleting'));
280
291
  }
@@ -290,7 +301,10 @@ var Services;
290
301
  }
291
302
  const recordOid = (0, bindings_1.asTrimmedString)(oid);
292
303
  const runContext = (0, context_1.createRunContext)({ redboxOid: recordOid, metadata: {}, branding: brand.name, metaMetadata: { brandId: brand.id } }, undefined, undefined, 'changeDoiState');
293
- const auditCtx = (0, audit_1.startDoiAudit)(recordOid ?? doi, IntegrationAuditModel_1.IntegrationAuditAction.changeDoiState, runContext, { doi, event });
304
+ const auditCtx = (0, audit_1.startDoiAudit)(recordOid ?? doi, IntegrationAuditModel_1.IntegrationAuditAction.changeDoiState, runContext, {
305
+ doi,
306
+ event,
307
+ });
294
308
  try {
295
309
  const result = await (0, runtime_1.runChangeDoiStateProgram)(config, runContext, doi, event, {
296
310
  auditContext: auditCtx,
@@ -299,7 +313,7 @@ var Services;
299
313
  (0, audit_1.completeDoiAudit)(auditCtx, {
300
314
  message: 'DOI state changed successfully.',
301
315
  httpStatusCode: result.statusCode,
302
- responseSummary: result.responseSummary
316
+ responseSummary: result.responseSummary,
303
317
  });
304
318
  return result.statusCode === 200;
305
319
  }
@@ -308,26 +322,43 @@ var Services;
308
322
  (0, audit_1.failDoiAudit)(auditCtx, error, {
309
323
  message: 'DOI state change failed.',
310
324
  httpStatusCode: errorSummary.statusCode,
311
- responseSummary: errorSummary.responseSummary
325
+ responseSummary: errorSummary.responseSummary,
312
326
  });
313
327
  this.wrapHttpError(error, TranslationService.t('doi-error-changing-state'));
314
328
  }
315
329
  }
316
- async publishDoiTrigger(oid, record, options) {
330
+ async publishDoiTrigger(oid, record, options, user = {}) {
317
331
  if (this.metTriggerCondition(oid, record, options) === 'true') {
318
332
  const runContext = (0, context_1.createRunContext)(record, String(options.profile ?? ''), undefined, 'publishDoiTrigger');
319
333
  const auditCtx = (0, audit_1.startDoiAudit)(oid, IntegrationAuditModel_1.IntegrationAuditAction.publishDoiTrigger, runContext, options);
320
334
  try {
321
- const brand = BrandingService.getBrand('default');
322
335
  const doi = await this.publishDoi(oid, record, String(options.event ?? 'publish'), 'create', {
323
336
  ...options,
324
337
  triggerSource: 'publishDoiTrigger',
325
338
  auditContext: auditCtx,
326
339
  });
327
340
  if (doi != null) {
341
+ const previousMetadata = lodash_1.default.cloneDeep(record.metadata);
328
342
  record = await this.addDoiDataToRecord(oid, record, doi, options);
329
343
  try {
330
- await RecordsService.updateMeta(brand, oid, record);
344
+ const response = await RecordsService.updateMetaInternal({
345
+ actor: { kind: 'service', id: 'DoiService.publishDoiTrigger' },
346
+ authorization: { kind: 'service' },
347
+ mutationClass: 'external-side-effect',
348
+ oid,
349
+ record,
350
+ user,
351
+ metadata: (0, RecordsService_1.createRecordMetadataDelta)(previousMetadata, record.metadata),
352
+ metadataMode: 'pre-applied',
353
+ });
354
+ if (!response.wasPersisted()) {
355
+ throw new Error(String(response.message ?? response.outcome));
356
+ }
357
+ if (response.outcome === 'saved-with-warnings') {
358
+ sails.log.warn(`DOI metadata writeback persisted with warnings for ${oid}`, {
359
+ requestId: response.requestId,
360
+ });
361
+ }
331
362
  }
332
363
  catch (error) {
333
364
  sails.log.error(`Failed to persist DOI metadata for record '${oid}'.`);
@@ -414,19 +445,17 @@ var Services;
414
445
  }
415
446
  normalizeDataciteLookupOptions(options) {
416
447
  const rawOptions = lodash_1.default.isPlainObject(options) ? options : {};
417
- const baseUrl = String(rawOptions.baseUrl ?? 'https://api.datacite.org').trim().replace(/\/+$/, '');
448
+ const baseUrl = String(rawOptions.baseUrl ?? 'https://api.datacite.org')
449
+ .trim()
450
+ .replace(/\/+$/, '');
418
451
  const timeoutMs = Number.isInteger(rawOptions.timeoutMs) && Number(rawOptions.timeoutMs) > 0
419
452
  ? Number(rawOptions.timeoutMs)
420
453
  : 10000;
421
- const maxRows = Number.isInteger(rawOptions.maxRows) && Number(rawOptions.maxRows) > 0
422
- ? Number(rawOptions.maxRows)
423
- : 25;
454
+ const maxRows = Number.isInteger(rawOptions.maxRows) && Number(rawOptions.maxRows) > 0 ? Number(rawOptions.maxRows) : 25;
424
455
  const fields = Array.isArray(rawOptions.fields)
425
456
  ? rawOptions.fields.map(field => String(field ?? '').trim()).filter(field => field !== '')
426
457
  : ['doi', 'titles', 'publisher', 'publicationYear', 'types', 'url'];
427
- const valueField = rawOptions.valueField === 'id' || rawOptions.valueField === 'url'
428
- ? rawOptions.valueField
429
- : 'doi';
458
+ const valueField = rawOptions.valueField === 'id' || rawOptions.valueField === 'url' ? rawOptions.valueField : 'doi';
430
459
  return {
431
460
  baseUrl: baseUrl || 'https://api.datacite.org',
432
461
  timeoutMs,
@@ -436,14 +465,14 @@ var Services;
436
465
  labelTemplate: typeof rawOptions.labelTemplate === 'string' ? rawOptions.labelTemplate : undefined,
437
466
  valueField,
438
467
  includeRaw: rawOptions.includeRaw !== false,
439
- allowEmptySearch: rawOptions.allowEmptySearch === true
468
+ allowEmptySearch: rawOptions.allowEmptySearch === true,
440
469
  };
441
470
  }
442
471
  normalizeDataciteDefaultParams(value) {
443
472
  const defaults = {
444
473
  'disable-facets': true,
445
474
  state: 'findable',
446
- sort: 'relevance'
475
+ sort: 'relevance',
447
476
  };
448
477
  if (!lodash_1.default.isPlainObject(value)) {
449
478
  return defaults;
@@ -455,8 +484,7 @@ var Services;
455
484
  continue;
456
485
  }
457
486
  if (Array.isArray(rawValue)) {
458
- defaults[normalizedKey] = rawValue
459
- .filter(item => ['string', 'number', 'boolean'].includes(typeof item));
487
+ defaults[normalizedKey] = rawValue.filter(item => ['string', 'number', 'boolean'].includes(typeof item));
460
488
  continue;
461
489
  }
462
490
  if (typeof rawValue === 'string' || typeof rawValue === 'number' || typeof rawValue === 'boolean') {
@@ -494,8 +522,8 @@ var Services;
494
522
  start: request.start,
495
523
  rows,
496
524
  source: 'datacite',
497
- links: lodash_1.default.isPlainObject(validResponse.links) ? validResponse.links : undefined
498
- }
525
+ links: lodash_1.default.isPlainObject(validResponse.links) ? validResponse.links : undefined,
526
+ },
499
527
  };
500
528
  }
501
529
  mapDataciteLookupItem(item, options) {
@@ -516,14 +544,12 @@ var Services;
516
544
  : this.asNonEmptyString(item.attributes?.publisher?.name);
517
545
  const year = item.attributes?.publicationYear != null ? String(item.attributes.publicationYear) : undefined;
518
546
  const details = [publisher, year].filter((part) => Boolean(part));
519
- const label = title
520
- ? `${title} (${doi})${details.length > 0 ? ` - ${details.join(', ')}` : ''}`
521
- : doi;
547
+ const label = title ? `${title} (${doi})${details.length > 0 ? ` - ${details.join(', ')}` : ''}` : doi;
522
548
  return {
523
549
  label,
524
550
  value,
525
551
  sourceType: 'service',
526
- ...(options.includeRaw ? { raw: item } : {})
552
+ ...(options.includeRaw ? { raw: item } : {}),
527
553
  };
528
554
  }
529
555
  selectDataciteLookupValue(item, valueField) {
@@ -561,4 +587,4 @@ var Services;
561
587
  }
562
588
  Services.Doi = Doi;
563
589
  })(Services || (exports.Services = Services = {}));
564
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRG9pU2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zZXJ2aWNlcy9Eb2lTZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSwwRkFBMEY7QUFDMUYsRUFBRTtBQUNGLDZCQUE2QjtBQUM3QiwwQkFBMEI7Ozs7OztBQUUxQiwrQkFBMEI7QUFDMUIsa0RBQTBCO0FBQzFCLG9EQUF1QjtBQUN2QixzRUFBNkQ7QUFDN0QsZ0RBQXNEO0FBQ3RELGtFQUErRDtBQU8vRCxnREFBcUU7QUFDckUsMENBQStFO0FBQy9FLDRDQUFrSTtBQUNsSSw4Q0FBMEU7QUFDMUUsOENBQW1EO0FBQ25ELGdEQUFtRDtBQUNuRCw4Q0FLMEI7QUFFMUIsa0ZBQWdGO0FBeURoRixJQUFpQixRQUFRLENBZ25CeEI7QUFobkJELFdBQWlCLFFBQVE7SUFDdkIsTUFBYSxHQUFJLFNBQVEsc0JBQVEsQ0FBQyxJQUFJLENBQUMsT0FBTztRQUN6QixnQkFBZ0IsR0FBYTtZQUM5QyxNQUFNO1lBQ04sWUFBWTtZQUNaLG1CQUFtQjtZQUNuQix1QkFBdUI7WUFDdkIsc0JBQXNCO1lBQ3RCLFdBQVc7WUFDWCxnQkFBZ0I7WUFDaEIsb0JBQW9CO1lBQ3BCLHlCQUF5QjtZQUN6QixvQkFBb0I7U0FDckIsQ0FBQztRQUVNLFVBQVUsQ0FBVTtRQUVwQixTQUFTO1lBQ2YsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztnQkFDckIsSUFBSSxDQUFDLFVBQVUsR0FBRyxrQkFBa0IsQ0FBQyxDQUFDLENBQUMsZUFBZSxDQUFDLENBQUM7WUFDMUQsQ0FBQztZQUNELE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQztRQUN6QixDQUFDO1FBRU8sS0FBSyxDQUFDLGFBQWEsQ0FBQyxNQUF1QjtZQUNqRCxPQUFPLElBQUEsd0NBQStCLEVBQUMsTUFBTSxDQUFDLENBQUM7UUFDakQsQ0FBQztRQUVPLGNBQWMsQ0FBQyxLQUFjO1lBQ25DLElBQUksS0FB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
590
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRG9pU2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zZXJ2aWNlcy9Eb2lTZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSwwRkFBMEY7QUFDMUYsRUFBRTtBQUNGLDZCQUE2QjtBQUM3QiwwQkFBMEI7Ozs7OztBQUUxQiwrQkFBMEI7QUFDMUIsa0RBQTBCO0FBQzFCLG9EQUF1QjtBQUN2QixzRUFBNkQ7QUFDN0QsZ0RBQXNEO0FBQ3RELGtFQUErRDtBQU8vRCxnREFBcUU7QUFDckUsMENBQStFO0FBQy9FLDRDQUl5QjtBQUN6Qiw4Q0FBMEU7QUFDMUUsOENBQW1EO0FBQ25ELGdEQUFtRDtBQUNuRCw4Q0FLMEI7QUFFMUIsa0ZBQWdGO0FBR2hGLHNEQUE4RDtBQXVEOUQsSUFBaUIsUUFBUSxDQXdzQnhCO0FBeHNCRCxXQUFpQixRQUFRO0lBQ3ZCLE1BQWEsR0FBSSxTQUFRLHNCQUFRLENBQUMsSUFBSSxDQUFDLE9BQU87UUFDekIsZ0JBQWdCLEdBQWE7WUFDOUMsTUFBTTtZQUNOLFlBQVk7WUFDWixtQkFBbUI7WUFDbkIsdUJBQXVCO1lBQ3ZCLHNCQUFzQjtZQUN0QixXQUFXO1lBQ1gsZ0JBQWdCO1lBQ2hCLG9CQUFvQjtZQUNwQix5QkFBeUI7WUFDekIsb0JBQW9CO1NBQ3JCLENBQUM7UUFFTSxVQUFVLENBQVU7UUFFcEIsU0FBUztZQUNmLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7Z0JBQ3JCLElBQUksQ0FBQyxVQUFVLEdBQUcsa0JBQWtCLENBQUMsQ0FBQyxDQUFDLGVBQWUsQ0FBQyxDQUFDO1lBQzFELENBQUM7WUFDRCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUM7UUFDekIsQ0FBQztRQUVPLEtBQUssQ0FBQyxhQUFhLENBQUMsTUFBdUI7WUFDakQsT0FBTyxJQUFBLHdDQUErQixFQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ2pELENBQUM7UUFFTyxjQUFjLENBQUMsS0FBYztZ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
@@ -33,7 +33,7 @@ export declare namespace Services {
33
33
  private isArticleReadyForWorkflowTransition;
34
34
  private transitionWorkflowForRecord;
35
35
  syncRecordWithFigshare(record: RecordModel, jobId?: string, triggerSource?: string): Promise<RecordModel>;
36
- persistSyncRecord(oid: string, record: RecordModel, user: UserModel): Promise<boolean>;
36
+ persistSyncRecord(oid: string, record: RecordModel, user: UserModel, previousMetadata?: unknown): Promise<boolean>;
37
37
  createUpdateFigshareArticle(oid: string | null, record: RecordModel, options: Record<string, unknown>, user: unknown): RecordModel | Promise<RecordModel>;
38
38
  uploadFilesToFigshareArticle(oid: string, record: RecordModel, options: Record<string, unknown>, user: UserModel): RecordModel | undefined;
39
39
  deleteFilesFromRedboxTrigger(oid: string, record: RecordModel, options: Record<string, unknown>, user: UserModel): Promise<RecordModel>;
@@ -1 +1 @@
1
- {"version":3,"file":"FigshareService.d.ts","sourceRoot":"","sources":["../../src/services/FigshareService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FigshareService.d.ts","sourceRoot":"","sources":["../../src/services/FigshareService.ts"],"names":[],"mappings":"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"}