@researchdatabox/redbox-core 0.0.0-bootstrap.0 → 0.0.1-beta.10213

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 (656) hide show
  1. package/dist/CoreController.d.ts +4 -0
  2. package/dist/CoreController.d.ts.map +1 -1
  3. package/dist/CoreController.js +68 -23
  4. package/dist/CoreService.d.ts +1 -1
  5. package/dist/CoreService.d.ts.map +1 -1
  6. package/dist/CoreService.js +1 -1
  7. package/dist/DatastreamService.d.ts +5 -2
  8. package/dist/DatastreamService.d.ts.map +1 -1
  9. package/dist/HarvestRunService.d.ts +49 -0
  10. package/dist/HarvestRunService.d.ts.map +1 -0
  11. package/dist/HarvestRunService.js +13 -0
  12. package/dist/IntegrationAuditParams.d.ts +11 -0
  13. package/dist/IntegrationAuditParams.js +14 -0
  14. package/dist/QueueService.d.ts +1 -1
  15. package/dist/QueueService.d.ts.map +1 -1
  16. package/dist/RecordAuditParams.d.ts +2 -0
  17. package/dist/RecordAuditParams.d.ts.map +1 -1
  18. package/dist/RecordAuditParams.js +3 -1
  19. package/dist/RecordsService.d.ts +52 -2
  20. package/dist/RecordsService.d.ts.map +1 -1
  21. package/dist/StorageService.d.ts +6 -2
  22. package/dist/StorageService.d.ts.map +1 -1
  23. package/dist/api-routes/apib.d.ts +7 -0
  24. package/dist/api-routes/apib.d.ts.map +1 -0
  25. package/dist/api-routes/apib.js +43 -0
  26. package/dist/api-routes/define.d.ts +4 -0
  27. package/dist/api-routes/define.d.ts.map +1 -0
  28. package/dist/api-routes/define.js +29 -0
  29. package/dist/api-routes/groups/admin.d.ts +6 -0
  30. package/dist/api-routes/groups/admin.d.ts.map +1 -0
  31. package/dist/api-routes/groups/admin.js +53 -0
  32. package/dist/api-routes/groups/appconfig.d.ts +4 -0
  33. package/dist/api-routes/groups/appconfig.d.ts.map +1 -0
  34. package/dist/api-routes/groups/appconfig.js +33 -0
  35. package/dist/api-routes/groups/branding.d.ts +8 -0
  36. package/dist/api-routes/groups/branding.d.ts.map +1 -0
  37. package/dist/api-routes/groups/branding.js +61 -0
  38. package/dist/api-routes/groups/dashboard-config.d.ts +11 -0
  39. package/dist/api-routes/groups/dashboard-config.d.ts.map +1 -0
  40. package/dist/api-routes/groups/dashboard-config.js +90 -0
  41. package/dist/api-routes/groups/export.d.ts +3 -0
  42. package/dist/api-routes/groups/export.d.ts.map +1 -0
  43. package/dist/api-routes/groups/export.js +30 -0
  44. package/dist/api-routes/groups/forms.d.ts +4 -0
  45. package/dist/api-routes/groups/forms.d.ts.map +1 -0
  46. package/dist/api-routes/groups/forms.js +29 -0
  47. package/dist/api-routes/groups/harvest-runs.d.ts +5 -0
  48. package/dist/api-routes/groups/harvest-runs.d.ts.map +1 -0
  49. package/dist/api-routes/groups/harvest-runs.js +79 -0
  50. package/dist/api-routes/groups/integration-audit.d.ts +3 -0
  51. package/dist/api-routes/groups/integration-audit.d.ts.map +1 -0
  52. package/dist/api-routes/groups/integration-audit.js +35 -0
  53. package/dist/api-routes/groups/named-query.d.ts +8 -0
  54. package/dist/api-routes/groups/named-query.d.ts.map +1 -0
  55. package/dist/api-routes/groups/named-query.js +54 -0
  56. package/dist/api-routes/groups/notifications.d.ts +3 -0
  57. package/dist/api-routes/groups/notifications.d.ts.map +1 -0
  58. package/dist/api-routes/groups/notifications.js +20 -0
  59. package/dist/api-routes/groups/records.d.ts +28 -0
  60. package/dist/api-routes/groups/records.d.ts.map +1 -0
  61. package/dist/api-routes/groups/records.js +353 -0
  62. package/dist/api-routes/groups/recordtypes.d.ts +4 -0
  63. package/dist/api-routes/groups/recordtypes.d.ts.map +1 -0
  64. package/dist/api-routes/groups/recordtypes.js +27 -0
  65. package/dist/api-routes/groups/reports.d.ts +9 -0
  66. package/dist/api-routes/groups/reports.d.ts.map +1 -0
  67. package/dist/api-routes/groups/reports.js +63 -0
  68. package/dist/api-routes/groups/search-query.d.ts +4 -0
  69. package/dist/api-routes/groups/search-query.d.ts.map +1 -0
  70. package/dist/api-routes/groups/search-query.js +51 -0
  71. package/dist/api-routes/groups/search.d.ts +6 -0
  72. package/dist/api-routes/groups/search.d.ts.map +1 -0
  73. package/dist/api-routes/groups/search.js +31 -0
  74. package/dist/api-routes/groups/translation.d.ts +8 -0
  75. package/dist/api-routes/groups/translation.d.ts.map +1 -0
  76. package/dist/api-routes/groups/translation.js +82 -0
  77. package/dist/api-routes/groups/users.d.ts +17 -0
  78. package/dist/api-routes/groups/users.d.ts.map +1 -0
  79. package/dist/api-routes/groups/users.js +149 -0
  80. package/dist/api-routes/groups/vocabulary.d.ts +10 -0
  81. package/dist/api-routes/groups/vocabulary.d.ts.map +1 -0
  82. package/dist/api-routes/groups/vocabulary.js +97 -0
  83. package/dist/api-routes/helpers.d.ts +29 -0
  84. package/dist/api-routes/helpers.d.ts.map +1 -0
  85. package/dist/api-routes/helpers.js +485 -0
  86. package/dist/api-routes/index.d.ts +27 -0
  87. package/dist/api-routes/index.d.ts.map +1 -0
  88. package/dist/api-routes/index.js +43 -0
  89. package/dist/api-routes/openapi.d.ts +26 -0
  90. package/dist/api-routes/openapi.d.ts.map +1 -0
  91. package/dist/api-routes/openapi.js +292 -0
  92. package/dist/api-routes/request-extraction.d.ts +14 -0
  93. package/dist/api-routes/request-extraction.d.ts.map +1 -0
  94. package/dist/api-routes/request-extraction.js +100 -0
  95. package/dist/api-routes/route-factory.d.ts +3 -0
  96. package/dist/api-routes/route-factory.d.ts.map +1 -0
  97. package/dist/api-routes/route-factory.js +30 -0
  98. package/dist/api-routes/route-registry.d.ts +24 -0
  99. package/dist/api-routes/route-registry.d.ts.map +1 -0
  100. package/dist/api-routes/route-registry.js +117 -0
  101. package/dist/api-routes/route-resolution.d.ts +4 -0
  102. package/dist/api-routes/route-resolution.d.ts.map +1 -0
  103. package/dist/api-routes/route-resolution.js +71 -0
  104. package/dist/api-routes/schemas/common.d.ts +35 -0
  105. package/dist/api-routes/schemas/common.d.ts.map +1 -0
  106. package/dist/api-routes/schemas/common.js +146 -0
  107. package/dist/api-routes/schemas/responses.d.ts +972 -0
  108. package/dist/api-routes/schemas/responses.d.ts.map +1 -0
  109. package/dist/api-routes/schemas/responses.js +512 -0
  110. package/dist/api-routes/types.d.ts +70 -0
  111. package/dist/api-routes/types.d.ts.map +1 -0
  112. package/dist/api-routes/types.js +3 -0
  113. package/dist/api-routes/validation.d.ts +32 -0
  114. package/dist/api-routes/validation.d.ts.map +1 -0
  115. package/dist/api-routes/validation.js +142 -0
  116. package/dist/api-routes/zod-openapi.d.ts +3 -0
  117. package/dist/api-routes/zod-openapi.d.ts.map +1 -0
  118. package/dist/api-routes/zod-openapi.js +8 -0
  119. package/dist/bootstrap.d.ts.map +1 -1
  120. package/dist/bootstrap.js +12 -12
  121. package/dist/config/agendaQueue.config.d.ts +33 -6
  122. package/dist/config/agendaQueue.config.d.ts.map +1 -1
  123. package/dist/config/agendaQueue.config.js +40 -18
  124. package/dist/config/auth.config.d.ts.map +1 -1
  125. package/dist/config/auth.config.js +29 -2
  126. package/dist/config/branding.config.d.ts +2 -1
  127. package/dist/config/branding.config.d.ts.map +1 -1
  128. package/dist/config/branding.config.js +5 -95
  129. package/dist/config/brandingConfigurationDefaults.config.d.ts +3 -0
  130. package/dist/config/brandingConfigurationDefaults.config.d.ts.map +1 -1
  131. package/dist/config/brandingConfigurationDefaults.config.js +161 -5
  132. package/dist/config/custom.config.d.ts +6 -0
  133. package/dist/config/custom.config.d.ts.map +1 -1
  134. package/dist/config/custom.config.js +10 -1
  135. package/dist/config/dashboardtype.config.d.ts +5 -0
  136. package/dist/config/dashboardtype.config.d.ts.map +1 -1
  137. package/dist/config/dashboardtype.config.js +1 -1
  138. package/dist/config/dashboardview.config.d.ts +24 -0
  139. package/dist/config/dashboardview.config.d.ts.map +1 -0
  140. package/dist/config/dashboardview.config.js +137 -0
  141. package/dist/config/dompurify.config.d.ts +1 -0
  142. package/dist/config/dompurify.config.d.ts.map +1 -1
  143. package/dist/config/dompurify.config.js +5 -4
  144. package/dist/config/emailnotification.config.d.ts.map +1 -1
  145. package/dist/config/emailnotification.config.js +2 -1
  146. package/dist/config/figshareDev.config.d.ts +12 -0
  147. package/dist/config/figshareDev.config.js +9 -0
  148. package/dist/config/form.config.d.ts +4 -0
  149. package/dist/config/form.config.d.ts.map +1 -1
  150. package/dist/config/form.config.js +1 -1
  151. package/dist/config/harvestRuns.config.d.ts +9 -0
  152. package/dist/config/harvestRuns.config.d.ts.map +1 -0
  153. package/dist/config/harvestRuns.config.js +11 -0
  154. package/dist/config/http.config.d.ts +13 -1
  155. package/dist/config/http.config.d.ts.map +1 -1
  156. package/dist/config/http.config.js +201 -38
  157. package/dist/config/index.d.ts +14 -19
  158. package/dist/config/index.d.ts.map +1 -1
  159. package/dist/config/index.js +10 -15
  160. package/dist/config/namedQuery.config.d.ts +26 -4
  161. package/dist/config/namedQuery.config.d.ts.map +1 -1
  162. package/dist/config/namedQuery.config.js +7 -350
  163. package/dist/config/policies.config.d.ts +3 -0
  164. package/dist/config/policies.config.d.ts.map +1 -1
  165. package/dist/config/policies.config.js +35 -1
  166. package/dist/config/record.config.d.ts.map +1 -1
  167. package/dist/config/record.config.js +2 -1
  168. package/dist/config/recordtype.config.d.ts +28 -0
  169. package/dist/config/recordtype.config.d.ts.map +1 -1
  170. package/dist/config/recordtype.config.js +105 -13
  171. package/dist/config/redboxSession.config.d.ts +3 -0
  172. package/dist/config/redboxSession.config.d.ts.map +1 -1
  173. package/dist/config/redboxSession.config.js +1 -1
  174. package/dist/config/report.config.d.ts +2 -11
  175. package/dist/config/report.config.d.ts.map +1 -1
  176. package/dist/config/report.config.js +3 -49
  177. package/dist/config/reusableContributorFormDefinitions.config.d.ts +1 -1
  178. package/dist/config/reusableContributorFormDefinitions.config.d.ts.map +1 -1
  179. package/dist/config/reusableContributorFormDefinitions.config.js +371 -206
  180. package/dist/config/reusableViewFormDefinitions.config.js +3 -3
  181. package/dist/config/routes.config.d.ts +5 -2
  182. package/dist/config/routes.config.d.ts.map +1 -1
  183. package/dist/config/routes.config.js +55 -117
  184. package/dist/config/storage.config.d.ts +20 -2
  185. package/dist/config/storage.config.d.ts.map +1 -1
  186. package/dist/config/storage.config.js +2 -1
  187. package/dist/config/validators.config.d.ts +6 -4
  188. package/dist/config/validators.config.d.ts.map +1 -1
  189. package/dist/config/validators.config.js +5 -3
  190. package/dist/config/vocab.config.d.ts +30 -0
  191. package/dist/config/vocab.config.d.ts.map +1 -1
  192. package/dist/config/vocab.config.js +21 -1
  193. package/dist/config/webpack.config.d.ts.map +1 -1
  194. package/dist/config/webpack.config.js +18 -12
  195. package/dist/config/workflow.config.d.ts +0 -1
  196. package/dist/config/workflow.config.d.ts.map +1 -1
  197. package/dist/config/workflow.config.js +1 -137
  198. package/dist/configmodels/AdminSidebarConfig.d.ts.map +1 -1
  199. package/dist/configmodels/AdminSidebarConfig.js +4 -3
  200. package/dist/configmodels/AuthorizedDomainsEmails.d.ts +48 -0
  201. package/dist/configmodels/AuthorizedDomainsEmails.d.ts.map +1 -1
  202. package/dist/configmodels/AuthorizedDomainsEmails.js +50 -2
  203. package/dist/configmodels/ConfigModels.d.ts +7 -1
  204. package/dist/configmodels/ConfigModels.d.ts.map +1 -1
  205. package/dist/configmodels/ConfigModels.js +41 -1
  206. package/dist/configmodels/DashboardTableOverrideConfig.d.ts +1011 -0
  207. package/dist/configmodels/DashboardTableOverrideConfig.d.ts.map +1 -0
  208. package/dist/configmodels/DashboardTableOverrideConfig.js +138 -0
  209. package/dist/configmodels/DoiPublishing.d.ts +4711 -0
  210. package/dist/configmodels/DoiPublishing.js +639 -0
  211. package/dist/configmodels/FigsharePublishing.d.ts +1376 -0
  212. package/dist/configmodels/FigsharePublishing.js +630 -0
  213. package/dist/configmodels/IntegrationNotificationConfig.d.ts +133 -0
  214. package/dist/configmodels/IntegrationNotificationConfig.d.ts.map +1 -0
  215. package/dist/configmodels/IntegrationNotificationConfig.js +64 -0
  216. package/dist/configmodels/SystemMessage.d.ts +32 -0
  217. package/dist/configmodels/SystemMessage.d.ts.map +1 -1
  218. package/dist/configmodels/SystemMessage.js +34 -2
  219. package/dist/controllers/AdminController.d.ts +1 -1
  220. package/dist/controllers/AdminController.d.ts.map +1 -1
  221. package/dist/controllers/AdminController.js +6 -32
  222. package/dist/controllers/AppConfigController.js +3 -3
  223. package/dist/controllers/BrandingAppController.d.ts.map +1 -1
  224. package/dist/controllers/BrandingAppController.js +11 -10
  225. package/dist/controllers/BrandingController.d.ts +11 -5
  226. package/dist/controllers/BrandingController.d.ts.map +1 -1
  227. package/dist/controllers/BrandingController.js +116 -48
  228. package/dist/controllers/DashboardConfigController.d.ts +8 -0
  229. package/dist/controllers/DashboardConfigController.d.ts.map +1 -0
  230. package/dist/controllers/DashboardConfigController.js +17 -0
  231. package/dist/controllers/DynamicAssetController.d.ts +1 -21
  232. package/dist/controllers/DynamicAssetController.d.ts.map +1 -1
  233. package/dist/controllers/DynamicAssetController.js +19 -41
  234. package/dist/controllers/EmailController.d.ts.map +1 -1
  235. package/dist/controllers/EmailController.js +16 -12
  236. package/dist/controllers/ExportController.d.ts.map +1 -1
  237. package/dist/controllers/ExportController.js +3 -8
  238. package/dist/controllers/FormVocabularyController.d.ts +3 -0
  239. package/dist/controllers/FormVocabularyController.d.ts.map +1 -1
  240. package/dist/controllers/FormVocabularyController.js +154 -4
  241. package/dist/controllers/NamedQueryController.d.ts +8 -0
  242. package/dist/controllers/NamedQueryController.d.ts.map +1 -0
  243. package/dist/controllers/NamedQueryController.js +17 -0
  244. package/dist/controllers/RecordAuditController.d.ts +31 -14
  245. package/dist/controllers/RecordAuditController.d.ts.map +1 -1
  246. package/dist/controllers/RecordAuditController.js +509 -57
  247. package/dist/controllers/RecordController.d.ts +18 -16
  248. package/dist/controllers/RecordController.d.ts.map +1 -1
  249. package/dist/controllers/RecordController.js +314 -167
  250. package/dist/controllers/RenderViewController.d.ts.map +1 -1
  251. package/dist/controllers/RenderViewController.js +4 -2
  252. package/dist/controllers/ReportController.d.ts +7 -0
  253. package/dist/controllers/ReportController.d.ts.map +1 -1
  254. package/dist/controllers/ReportController.js +75 -2
  255. package/dist/controllers/ReportsController.d.ts +1 -0
  256. package/dist/controllers/ReportsController.d.ts.map +1 -1
  257. package/dist/controllers/ReportsController.js +12 -2
  258. package/dist/controllers/TranslationController.d.ts.map +1 -1
  259. package/dist/controllers/TranslationController.js +14 -12
  260. package/dist/controllers/WorkspaceTypesController.d.ts +3 -2
  261. package/dist/controllers/WorkspaceTypesController.d.ts.map +1 -1
  262. package/dist/controllers/WorkspaceTypesController.js +120 -31
  263. package/dist/controllers/index.d.ts.map +1 -1
  264. package/dist/controllers/index.js +19 -4
  265. package/dist/controllers/webservice/AdminController.d.ts.map +1 -1
  266. package/dist/controllers/webservice/AdminController.js +16 -17
  267. package/dist/controllers/webservice/AppConfigController.d.ts.map +1 -1
  268. package/dist/controllers/webservice/AppConfigController.js +17 -18
  269. package/dist/controllers/webservice/BrandingController.d.ts.map +1 -1
  270. package/dist/controllers/webservice/BrandingController.js +102 -48
  271. package/dist/controllers/webservice/DashboardConfigController.d.ts +26 -0
  272. package/dist/controllers/webservice/DashboardConfigController.d.ts.map +1 -0
  273. package/dist/controllers/webservice/DashboardConfigController.js +241 -0
  274. package/dist/controllers/webservice/ExportController.d.ts.map +1 -1
  275. package/dist/controllers/webservice/ExportController.js +13 -18
  276. package/dist/controllers/webservice/FormManagementController.d.ts.map +1 -1
  277. package/dist/controllers/webservice/FormManagementController.js +11 -13
  278. package/dist/controllers/webservice/HarvestRunController.d.ts +13 -0
  279. package/dist/controllers/webservice/HarvestRunController.d.ts.map +1 -0
  280. package/dist/controllers/webservice/HarvestRunController.js +148 -0
  281. package/dist/controllers/webservice/IntegrationAuditController.d.ts +10 -0
  282. package/dist/controllers/webservice/IntegrationAuditController.d.ts.map +1 -1
  283. package/dist/controllers/webservice/IntegrationAuditController.js +98 -0
  284. package/dist/controllers/webservice/NamedQueryController.d.ts +17 -0
  285. package/dist/controllers/webservice/NamedQueryController.d.ts.map +1 -0
  286. package/dist/controllers/webservice/NamedQueryController.js +127 -0
  287. package/dist/controllers/webservice/RecordController.d.ts +4 -0
  288. package/dist/controllers/webservice/RecordController.d.ts.map +1 -1
  289. package/dist/controllers/webservice/RecordController.js +441 -314
  290. package/dist/controllers/webservice/RecordTypeController.d.ts.map +1 -1
  291. package/dist/controllers/webservice/RecordTypeController.js +9 -10
  292. package/dist/controllers/webservice/ReportController.d.ts +7 -0
  293. package/dist/controllers/webservice/ReportController.d.ts.map +1 -1
  294. package/dist/controllers/webservice/ReportController.js +125 -19
  295. package/dist/controllers/webservice/SearchController.d.ts.map +1 -1
  296. package/dist/controllers/webservice/SearchController.js +28 -35
  297. package/dist/controllers/webservice/TranslationController.d.ts.map +1 -1
  298. package/dist/controllers/webservice/TranslationController.js +65 -43
  299. package/dist/controllers/webservice/UserManagementController.d.ts +1 -1
  300. package/dist/controllers/webservice/UserManagementController.d.ts.map +1 -1
  301. package/dist/controllers/webservice/UserManagementController.js +114 -101
  302. package/dist/controllers/webservice/VocabularyController.d.ts.map +1 -1
  303. package/dist/controllers/webservice/VocabularyController.js +76 -28
  304. package/dist/form-config/dataRecord-1.0-draft.js +3 -3
  305. package/dist/form-config/default-1.0-draft.d.ts.map +1 -1
  306. package/dist/form-config/default-1.0-draft.js +27 -3
  307. package/dist/form-config/index.d.ts.map +1 -1
  308. package/dist/form-config/index.js +1 -1
  309. package/dist/hooks/defineRedboxHook.d.ts +3 -0
  310. package/dist/hooks/defineRedboxHook.d.ts.map +1 -1
  311. package/dist/hooks/defineRedboxHook.js +4 -1
  312. package/dist/hooks/webpack.d.ts.map +1 -1
  313. package/dist/hooks/webpack.js +17 -7
  314. package/dist/index.d.ts +12 -2
  315. package/dist/index.d.ts.map +1 -1
  316. package/dist/index.js +17 -2
  317. package/dist/loader/MigrationRunner.d.ts +19 -0
  318. package/dist/loader/MigrationRunner.d.ts.map +1 -0
  319. package/dist/loader/MigrationRunner.js +108 -0
  320. package/dist/loader/bootstrapShimRuntime.d.ts +2 -1
  321. package/dist/loader/bootstrapShimRuntime.d.ts.map +1 -1
  322. package/dist/loader/bootstrapShimRuntime.js +7 -2
  323. package/dist/loader/index.d.ts +17 -0
  324. package/dist/loader/index.d.ts.map +1 -1
  325. package/dist/loader/index.js +216 -13
  326. package/dist/middleware/redboxSession.d.ts +5 -0
  327. package/dist/middleware/redboxSession.d.ts.map +1 -1
  328. package/dist/middleware/redboxSession.js +19 -6
  329. package/dist/model/BuildResponse.d.ts +4 -0
  330. package/dist/model/BuildResponse.d.ts.map +1 -1
  331. package/dist/model/DashboardTypeResponseModel.d.ts +13 -1
  332. package/dist/model/DashboardTypeResponseModel.d.ts.map +1 -1
  333. package/dist/model/DashboardTypeResponseModel.js +12 -4
  334. package/dist/model/DashboardViewResponseModel.d.ts +20 -0
  335. package/dist/model/DashboardViewResponseModel.d.ts.map +1 -0
  336. package/dist/model/DashboardViewResponseModel.js +38 -0
  337. package/dist/model/RecordTypeResponseModel.d.ts +3 -1
  338. package/dist/model/RecordTypeResponseModel.d.ts.map +1 -1
  339. package/dist/model/RecordTypeResponseModel.js +4 -2
  340. package/dist/model/RequestDetails.d.ts +1 -1
  341. package/dist/model/RequestDetails.d.ts.map +1 -1
  342. package/dist/model/RequestDetails.js +1 -1
  343. package/dist/model/config/ReportConfig.d.ts +1 -1
  344. package/dist/model/config/ReportConfig.d.ts.map +1 -1
  345. package/dist/model/config/ReportConfig.js +2 -2
  346. package/dist/model/index.d.ts +1 -0
  347. package/dist/model/index.d.ts.map +1 -1
  348. package/dist/model/index.js +5 -2
  349. package/dist/model/storage/BrandingModel.d.ts +0 -16
  350. package/dist/model/storage/BrandingModel.d.ts.map +1 -1
  351. package/dist/model/storage/BrandingModel.js +2 -51
  352. package/dist/model/storage/DashboardTypeModel.d.ts +4 -0
  353. package/dist/model/storage/DashboardTypeModel.d.ts.map +1 -1
  354. package/dist/model/storage/HarvestRunModel.d.ts +140 -0
  355. package/dist/model/storage/HarvestRunModel.d.ts.map +1 -0
  356. package/dist/model/storage/HarvestRunModel.js +110 -0
  357. package/dist/model/storage/IntegrationAuditModel.d.ts +49 -0
  358. package/dist/model/storage/IntegrationAuditModel.d.ts.map +1 -1
  359. package/dist/model/storage/IntegrationAuditModel.js +106 -0
  360. package/dist/model/storage/RecordTypeModel.d.ts +16 -0
  361. package/dist/model/storage/RecordTypeModel.d.ts.map +1 -1
  362. package/dist/model/storage/RecordTypeModel.js +9 -1
  363. package/dist/model/storage/ReportModel.d.ts +1 -0
  364. package/dist/model/storage/ReportModel.d.ts.map +1 -1
  365. package/dist/model/storage/index.d.ts +2 -0
  366. package/dist/model/storage/index.d.ts.map +1 -1
  367. package/dist/model/storage/index.js +15 -2
  368. package/dist/policies/contentSecurityPolicy.d.ts.map +1 -1
  369. package/dist/policies/contentSecurityPolicy.js +23 -2
  370. package/dist/policies/i18nLanguages.d.ts.map +1 -1
  371. package/dist/policies/i18nLanguages.js +1 -1
  372. package/dist/policies/index.d.ts +3 -0
  373. package/dist/policies/index.d.ts.map +1 -1
  374. package/dist/policies/index.js +6 -2
  375. package/dist/policies/menuResolver.d.ts.map +1 -1
  376. package/dist/policies/menuResolver.js +1 -1
  377. package/dist/policies/setLang.d.ts.map +1 -1
  378. package/dist/policies/setLang.js +1 -1
  379. package/dist/policies/validateApiContractRequest.d.ts +3 -0
  380. package/dist/policies/validateApiContractRequest.d.ts.map +1 -0
  381. package/dist/policies/validateApiContractRequest.js +74 -0
  382. package/dist/responses/badRequest.d.ts.map +1 -1
  383. package/dist/responses/badRequest.js +7 -4
  384. package/dist/responses/created.d.ts.map +1 -1
  385. package/dist/responses/created.js +7 -4
  386. package/dist/responses/forbidden.d.ts.map +1 -1
  387. package/dist/responses/forbidden.js +7 -4
  388. package/dist/responses/ok.d.ts.map +1 -1
  389. package/dist/responses/ok.js +7 -4
  390. package/dist/responses/serverError.d.ts.map +1 -1
  391. package/dist/responses/serverError.js +7 -4
  392. package/dist/responses/siteTitle.d.ts +6 -0
  393. package/dist/responses/siteTitle.d.ts.map +1 -0
  394. package/dist/responses/siteTitle.js +28 -0
  395. package/dist/sails.d.ts +9 -0
  396. package/dist/sails.d.ts.map +1 -1
  397. package/dist/services/AgendaQueueService.d.ts +39 -17
  398. package/dist/services/AgendaQueueService.d.ts.map +1 -1
  399. package/dist/services/AgendaQueueService.js +328 -87
  400. package/dist/services/AppConfigService.d.ts +20 -2
  401. package/dist/services/AppConfigService.d.ts.map +1 -1
  402. package/dist/services/AppConfigService.js +129 -15
  403. package/dist/services/AttachmentMetadataService.d.ts +34 -0
  404. package/dist/services/AttachmentMetadataService.d.ts.map +1 -0
  405. package/dist/services/AttachmentMetadataService.js +133 -0
  406. package/dist/services/BrandingLogoService.d.ts +11 -8
  407. package/dist/services/BrandingLogoService.d.ts.map +1 -1
  408. package/dist/services/BrandingLogoService.js +71 -72
  409. package/dist/services/BrandingService.d.ts.map +1 -1
  410. package/dist/services/BrandingService.js +4 -32
  411. package/dist/services/BrandingThemeCssService.d.ts +21 -0
  412. package/dist/services/BrandingThemeCssService.d.ts.map +1 -0
  413. package/dist/services/BrandingThemeCssService.js +113 -0
  414. package/dist/services/BrandingThemeTokens.d.ts +16 -0
  415. package/dist/services/BrandingThemeTokens.d.ts.map +1 -0
  416. package/dist/services/BrandingThemeTokens.js +82 -0
  417. package/dist/services/CacheService.d.ts.map +1 -1
  418. package/dist/services/CacheService.js +37 -29
  419. package/dist/services/DashboardConfigService.d.ts +71 -0
  420. package/dist/services/DashboardConfigService.d.ts.map +1 -0
  421. package/dist/services/DashboardConfigService.js +315 -0
  422. package/dist/services/DashboardTypesService.d.ts +61 -63
  423. package/dist/services/DashboardTypesService.d.ts.map +1 -1
  424. package/dist/services/DashboardTypesService.js +361 -198
  425. package/dist/services/DoiService.d.ts +30 -25
  426. package/dist/services/DoiService.d.ts.map +1 -1
  427. package/dist/services/DoiService.js +448 -393
  428. package/dist/services/EmailService.d.ts +17 -3
  429. package/dist/services/EmailService.d.ts.map +1 -1
  430. package/dist/services/EmailService.js +44 -17
  431. package/dist/services/FigshareService.d.ts +40 -65
  432. package/dist/services/FigshareService.d.ts.map +1 -1
  433. package/dist/services/FigshareService.js +616 -2038
  434. package/dist/services/FormPayloadPrehydrateService.d.ts +35 -0
  435. package/dist/services/FormPayloadPrehydrateService.d.ts.map +1 -0
  436. package/dist/services/FormPayloadPrehydrateService.js +200 -0
  437. package/dist/services/FormRecordConsistencyService.d.ts +3 -3
  438. package/dist/services/FormRecordConsistencyService.d.ts.map +1 -1
  439. package/dist/services/FormRecordConsistencyService.js +21 -19
  440. package/dist/services/FormVocabularyService.d.ts +45 -0
  441. package/dist/services/FormVocabularyService.d.ts.map +1 -0
  442. package/dist/services/FormVocabularyService.js +326 -0
  443. package/dist/services/FormsService.d.ts.map +1 -1
  444. package/dist/services/FormsService.js +8 -6
  445. package/dist/services/HarvestRunService.d.ts +73 -0
  446. package/dist/services/HarvestRunService.d.ts.map +1 -0
  447. package/dist/services/HarvestRunService.js +1317 -0
  448. package/dist/services/I18nEntriesService.d.ts +9 -4
  449. package/dist/services/I18nEntriesService.d.ts.map +1 -1
  450. package/dist/services/I18nEntriesService.js +96 -18
  451. package/dist/services/IntegrationAuditService.d.ts +158 -0
  452. package/dist/services/IntegrationAuditService.d.ts.map +1 -1
  453. package/dist/services/IntegrationAuditService.js +838 -0
  454. package/dist/services/IntegrationNotificationService.d.ts +55 -0
  455. package/dist/services/IntegrationNotificationService.d.ts.map +1 -0
  456. package/dist/services/IntegrationNotificationService.js +271 -0
  457. package/dist/services/NamedQueryService.d.ts +51 -12
  458. package/dist/services/NamedQueryService.d.ts.map +1 -1
  459. package/dist/services/NamedQueryService.js +622 -125
  460. package/dist/services/OniService.d.ts.map +1 -1
  461. package/dist/services/OniService.js +4 -6
  462. package/dist/services/RDMPService.d.ts.map +1 -1
  463. package/dist/services/RDMPService.js +3 -2
  464. package/dist/services/RecordsService.d.ts +25 -3
  465. package/dist/services/RecordsService.d.ts.map +1 -1
  466. package/dist/services/RecordsService.js +119 -19
  467. package/dist/services/ReportsService.d.ts +57 -1
  468. package/dist/services/ReportsService.d.ts.map +1 -1
  469. package/dist/services/ReportsService.js +258 -34
  470. package/dist/services/SassCompilerService.d.ts +4 -10
  471. package/dist/services/SassCompilerService.d.ts.map +1 -1
  472. package/dist/services/SassCompilerService.js +9 -173
  473. package/dist/services/SolrSearchService.d.ts +1 -0
  474. package/dist/services/SolrSearchService.d.ts.map +1 -1
  475. package/dist/services/SolrSearchService.js +14 -3
  476. package/dist/services/StandardDatastreamService.d.ts +37 -5
  477. package/dist/services/StandardDatastreamService.d.ts.map +1 -1
  478. package/dist/services/StandardDatastreamService.js +535 -38
  479. package/dist/services/StorageManagerService.d.ts +13 -1
  480. package/dist/services/StorageManagerService.d.ts.map +1 -1
  481. package/dist/services/StorageManagerService.js +94 -11
  482. package/dist/services/TemplateService.d.ts +2 -18
  483. package/dist/services/TemplateService.d.ts.map +1 -1
  484. package/dist/services/TemplateService.js +9 -53
  485. package/dist/services/VocabularyService.d.ts +13 -0
  486. package/dist/services/VocabularyService.d.ts.map +1 -1
  487. package/dist/services/VocabularyService.js +204 -14
  488. package/dist/services/doi-v2/audit.d.ts +7 -0
  489. package/dist/services/doi-v2/audit.d.ts.map +1 -1
  490. package/dist/services/doi-v2/audit.js +30 -0
  491. package/dist/services/doi-v2/bindings.d.ts +8 -0
  492. package/dist/services/doi-v2/bindings.d.ts.map +1 -1
  493. package/dist/services/doi-v2/bindings.js +79 -0
  494. package/dist/services/doi-v2/config.d.ts +7 -0
  495. package/dist/services/doi-v2/config.js +51 -0
  496. package/dist/services/doi-v2/context.d.ts +18 -0
  497. package/dist/services/doi-v2/context.js +41 -0
  498. package/dist/services/doi-v2/http.d.ts +21 -0
  499. package/dist/services/doi-v2/http.js +88 -0
  500. package/dist/services/doi-v2/payload.d.ts +4 -0
  501. package/dist/services/doi-v2/payload.d.ts.map +1 -1
  502. package/dist/services/doi-v2/payload.js +305 -0
  503. package/dist/services/doi-v2/profiles.d.ts +5 -0
  504. package/dist/services/doi-v2/profiles.js +31 -0
  505. package/dist/services/doi-v2/runtime.d.ts +16 -0
  506. package/dist/services/doi-v2/runtime.js +173 -0
  507. package/dist/services/doi-v2/types.d.ts +49 -0
  508. package/dist/services/doi-v2/types.js +3 -0
  509. package/dist/services/figshare-v2/assets.d.ts +5 -0
  510. package/dist/services/figshare-v2/assets.js +297 -0
  511. package/dist/services/figshare-v2/audit.d.ts +7 -0
  512. package/dist/services/figshare-v2/audit.d.ts.map +1 -0
  513. package/dist/services/figshare-v2/audit.js +30 -0
  514. package/dist/services/figshare-v2/bindings.d.ts +6 -0
  515. package/dist/services/figshare-v2/bindings.d.ts.map +1 -1
  516. package/dist/services/figshare-v2/bindings.js +58 -0
  517. package/dist/services/figshare-v2/config.d.ts +13 -0
  518. package/dist/services/figshare-v2/config.d.ts.map +1 -1
  519. package/dist/services/figshare-v2/config.js +105 -0
  520. package/dist/services/figshare-v2/context.d.ts +4 -0
  521. package/dist/services/figshare-v2/context.d.ts.map +1 -1
  522. package/dist/services/figshare-v2/context.js +21 -0
  523. package/dist/services/figshare-v2/embargo.d.ts +5 -0
  524. package/dist/services/figshare-v2/embargo.js +36 -0
  525. package/dist/services/figshare-v2/http.d.ts +42 -0
  526. package/dist/services/figshare-v2/http.d.ts.map +1 -1
  527. package/dist/services/figshare-v2/http.js +324 -0
  528. package/dist/services/figshare-v2/metadata.d.ts +6 -0
  529. package/dist/services/figshare-v2/metadata.d.ts.map +1 -1
  530. package/dist/services/figshare-v2/metadata.js +280 -0
  531. package/dist/services/figshare-v2/observability.d.ts +7 -0
  532. package/dist/services/figshare-v2/observability.d.ts.map +1 -1
  533. package/dist/services/figshare-v2/observability.js +87 -0
  534. package/dist/services/figshare-v2/plan.d.ts +5 -0
  535. package/dist/services/figshare-v2/plan.js +51 -0
  536. package/dist/services/figshare-v2/publish.d.ts +5 -0
  537. package/dist/services/figshare-v2/publish.js +20 -0
  538. package/dist/services/figshare-v2/queue.d.ts +4 -0
  539. package/dist/services/figshare-v2/queue.js +11 -0
  540. package/dist/services/figshare-v2/runtime.d.ts +14 -0
  541. package/dist/services/figshare-v2/runtime.d.ts.map +1 -1
  542. package/dist/services/figshare-v2/runtime.js +88 -0
  543. package/dist/services/figshare-v2/types.d.ts +198 -0
  544. package/dist/services/figshare-v2/types.d.ts.map +1 -1
  545. package/dist/services/figshare-v2/types.js +59 -0
  546. package/dist/services/figshare-v2/workflow.d.ts +3 -0
  547. package/dist/services/figshare-v2/workflow.js +7 -0
  548. package/dist/services/figshare-v2/writeback.d.ts +5 -0
  549. package/dist/services/figshare-v2/writeback.js +45 -0
  550. package/dist/services/index.d.ts +24 -3
  551. package/dist/services/index.d.ts.map +1 -1
  552. package/dist/services/index.js +43 -7
  553. package/dist/shims/momentShim.d.ts.map +1 -1
  554. package/dist/shims/momentShim.js +1 -6
  555. package/dist/storage/GridFSDriver.d.ts +101 -0
  556. package/dist/storage/GridFSDriver.d.ts.map +1 -0
  557. package/dist/storage/GridFSDriver.js +291 -0
  558. package/dist/storage/TusStorageManagerDataStore.d.ts +49 -0
  559. package/dist/storage/TusStorageManagerDataStore.d.ts.map +1 -0
  560. package/dist/storage/TusStorageManagerDataStore.js +300 -0
  561. package/dist/transformers/ExportJSONTransformer.d.ts +1 -1
  562. package/dist/transformers/ExportJSONTransformer.d.ts.map +1 -1
  563. package/dist/transformers/ExportJSONTransformer.js +3 -3
  564. package/dist/utilities/RequestParamUtils.d.ts +3 -0
  565. package/dist/utilities/RequestParamUtils.d.ts.map +1 -0
  566. package/dist/utilities/RequestParamUtils.js +13 -0
  567. package/dist/visitor/attachment-fields.visitor.d.ts +17 -17
  568. package/dist/visitor/attachment-fields.visitor.d.ts.map +1 -1
  569. package/dist/visitor/attachment-fields.visitor.js +44 -34
  570. package/dist/visitor/client.visitor.d.ts +145 -97
  571. package/dist/visitor/client.visitor.d.ts.map +1 -1
  572. package/dist/visitor/client.visitor.js +366 -273
  573. package/dist/visitor/construct.visitor.d.ts +99 -93
  574. package/dist/visitor/construct.visitor.d.ts.map +1 -1
  575. package/dist/visitor/construct.visitor.js +304 -227
  576. package/dist/visitor/context-variables.visitor.d.ts +35 -35
  577. package/dist/visitor/context-variables.visitor.d.ts.map +1 -1
  578. package/dist/visitor/context-variables.visitor.js +85 -75
  579. package/dist/visitor/data-value.visitor.d.ts +99 -93
  580. package/dist/visitor/data-value.visitor.d.ts.map +1 -1
  581. package/dist/visitor/data-value.visitor.js +157 -148
  582. package/dist/visitor/json-type-def.visitor.d.ts +96 -90
  583. package/dist/visitor/json-type-def.visitor.d.ts.map +1 -1
  584. package/dist/visitor/json-type-def.visitor.js +158 -149
  585. package/dist/visitor/migrate-config-v4-v5.visitor.d.ts +101 -94
  586. package/dist/visitor/migrate-config-v4-v5.visitor.d.ts.map +1 -1
  587. package/dist/visitor/migrate-config-v4-v5.visitor.js +356 -295
  588. package/dist/visitor/template.visitor.d.ts +100 -92
  589. package/dist/visitor/template.visitor.d.ts.map +1 -1
  590. package/dist/visitor/template.visitor.js +245 -156
  591. package/dist/visitor/validator.visitor.d.ts +95 -91
  592. package/dist/visitor/validator.visitor.d.ts.map +1 -1
  593. package/dist/visitor/validator.visitor.js +184 -152
  594. package/dist/visitor/visitor-helpers.js +9 -9
  595. package/dist/visitor/vocab-inline.visitor.d.ts +34 -19
  596. package/dist/visitor/vocab-inline.visitor.d.ts.map +1 -1
  597. package/dist/visitor/vocab-inline.visitor.js +157 -48
  598. package/dist/waterline-models/AttachmentAccessAudit.d.ts +26 -0
  599. package/dist/waterline-models/AttachmentAccessAudit.d.ts.map +1 -0
  600. package/dist/waterline-models/AttachmentAccessAudit.js +63 -0
  601. package/dist/waterline-models/AttachmentMetadata.d.ts +40 -0
  602. package/dist/waterline-models/AttachmentMetadata.d.ts.map +1 -0
  603. package/dist/waterline-models/AttachmentMetadata.js +147 -0
  604. package/dist/waterline-models/BrandingConfig.d.ts +0 -2
  605. package/dist/waterline-models/BrandingConfig.d.ts.map +1 -1
  606. package/dist/waterline-models/BrandingConfig.js +5 -9
  607. package/dist/waterline-models/DashboardType.d.ts +7 -0
  608. package/dist/waterline-models/DashboardType.d.ts.map +1 -1
  609. package/dist/waterline-models/DashboardType.js +16 -1
  610. package/dist/waterline-models/HarvestRecordEvent.d.ts +43 -0
  611. package/dist/waterline-models/HarvestRecordEvent.d.ts.map +1 -0
  612. package/dist/waterline-models/HarvestRecordEvent.js +107 -0
  613. package/dist/waterline-models/HarvestRun.d.ts +51 -0
  614. package/dist/waterline-models/HarvestRun.d.ts.map +1 -0
  615. package/dist/waterline-models/HarvestRun.js +125 -0
  616. package/dist/waterline-models/HarvestRunChunk.d.ts +57 -0
  617. package/dist/waterline-models/HarvestRunChunk.d.ts.map +1 -0
  618. package/dist/waterline-models/HarvestRunChunk.js +140 -0
  619. package/dist/waterline-models/I18nTranslation.d.ts +2 -0
  620. package/dist/waterline-models/I18nTranslation.d.ts.map +1 -1
  621. package/dist/waterline-models/I18nTranslation.js +6 -1
  622. package/dist/waterline-models/Migration.d.ts +24 -0
  623. package/dist/waterline-models/Migration.d.ts.map +1 -0
  624. package/dist/waterline-models/Migration.js +52 -0
  625. package/dist/waterline-models/NamedQuery.d.ts +6 -0
  626. package/dist/waterline-models/NamedQuery.d.ts.map +1 -1
  627. package/dist/waterline-models/NamedQuery.js +16 -1
  628. package/dist/waterline-models/index.d.ts +12 -0
  629. package/dist/waterline-models/index.d.ts.map +1 -1
  630. package/dist/waterline-models/index.js +19 -1
  631. package/package.json +78 -52
  632. package/redbox-loader-templates/bootstrap-shim.js.hbs +14 -1
  633. package/dist/config/datacite.config.d.ts +0 -51
  634. package/dist/config/datacite.config.d.ts.map +0 -1
  635. package/dist/config/datacite.config.js +0 -44
  636. package/dist/config/figshareAPI.config.d.ts +0 -116
  637. package/dist/config/figshareAPI.config.d.ts.map +0 -1
  638. package/dist/config/figshareAPI.config.js +0 -857
  639. package/dist/config/figshareAPIEnv.config.d.ts +0 -11
  640. package/dist/config/figshareAPIEnv.config.d.ts.map +0 -1
  641. package/dist/config/figshareAPIEnv.config.js +0 -13
  642. package/dist/config/figshareRedboxFORMapping.config.d.ts +0 -15
  643. package/dist/config/figshareRedboxFORMapping.config.d.ts.map +0 -1
  644. package/dist/config/figshareRedboxFORMapping.config.js +0 -7458
  645. package/dist/config/relatedObjectsFormDefinition.config.d.ts.map +0 -1
  646. package/dist/controllers/VocabController.d.ts +0 -43
  647. package/dist/controllers/VocabController.d.ts.map +0 -1
  648. package/dist/controllers/VocabController.js +0 -190
  649. package/dist/form-config/dataPublication-1.0-draft.d.ts.map +0 -1
  650. package/dist/form-config/dataPublication-1.0-embargoed.d.ts.map +0 -1
  651. package/dist/form-config/dataPublication-1.0-published.d.ts.map +0 -1
  652. package/dist/form-config/dataPublication-1.0-queued.d.ts.map +0 -1
  653. package/dist/form-config/dataPublication-1.0-retired.d.ts.map +0 -1
  654. package/dist/services/VocabService.d.ts +0 -81
  655. package/dist/services/VocabService.d.ts.map +0 -1
  656. package/dist/services/VocabService.js +0 -424
@@ -1,424 +0,0 @@
1
- "use strict";
2
- // Copyright (c) 2017 Queensland Cyber Infrastructure Foundation (http://www.qcif.edu.au/)
3
- //
4
- // GNU GENERAL PUBLIC LICENSE
5
- // Version 2, June 1991
6
- //
7
- // This program is free software; you can redistribute it and/or modify
8
- // it under the terms of the GNU General Public License as published by
9
- // the Free Software Foundation; either version 2 of the License, or
10
- // (at your option) any later version.
11
- //
12
- // This program is distributed in the hope that it will be useful,
13
- // but WITHOUT ANY WARRANTY; without even the implied warranty of
14
- // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15
- // GNU General Public License for more details.
16
- //
17
- // You should have received a copy of the GNU General Public License along
18
- // with this program; if not, write to the Free Software Foundation, Inc.,
19
- // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
20
- var __importDefault = (this && this.__importDefault) || function (mod) {
21
- return (mod && mod.__esModule) ? mod : { "default": mod };
22
- };
23
- Object.defineProperty(exports, "__esModule", { value: true });
24
- exports.Services = void 0;
25
- const rxjs_1 = require("rxjs");
26
- const operators_1 = require("rxjs/operators");
27
- const CoreService_1 = require("../CoreService");
28
- const axios_1 = __importDefault(require("axios"));
29
- const sails_ng_common_1 = require("@researchdatabox/sails-ng-common");
30
- var Services;
31
- (function (Services) {
32
- /**
33
- * Vocab related services...
34
- *
35
- *
36
- * Author: <a href='https://github.com/shilob' target='_blank'>Shilo Banihit</a>
37
- *
38
- */
39
- class Vocab extends CoreService_1.Services.Core.Service {
40
- _exportedMethods = [
41
- 'bootstrap',
42
- 'getVocab',
43
- 'loadCollection',
44
- 'findCollection',
45
- 'findInMint',
46
- 'findInExternalService',
47
- 'rvaGetResourceDetails',
48
- 'findInMintTriggerWrapper',
49
- 'findRecords'
50
- ];
51
- /** @deprecated Legacy bootstrap flow for deprecated vocab API. */
52
- bootstrap() {
53
- return _.isEmpty(sails.config.vocab.bootStrapVocabs) ?
54
- (0, rxjs_1.of)(null)
55
- : (0, rxjs_1.from)(sails.config.vocab.bootStrapVocabs).pipe((0, operators_1.mergeMap)((vocabId) => {
56
- return this.getVocab(vocabId);
57
- }), (0, operators_1.last)());
58
- }
59
- /** @deprecated Legacy Mint trigger wrapper. */
60
- async findInMintTriggerWrapper(user, options, failureMode) {
61
- let additionalInfoFound = _.get(user, 'additionalInfoFound');
62
- if (!_.isArray(additionalInfoFound)) {
63
- additionalInfoFound = [];
64
- }
65
- try {
66
- const sourceType = _.get(options, 'sourceType', '');
67
- const queryStringTmp = _.get(options, 'queryString', '');
68
- const compiledTemplate = _.template(queryStringTmp, {});
69
- const fieldsToMap = _.get(options, 'fieldsToMap', []);
70
- const queryString = compiledTemplate({ user: user });
71
- const mintResponse = await this.findInMint(sourceType, queryString);
72
- const responseDocs = _.get(mintResponse, 'response.docs');
73
- if (_.isArray(responseDocs) && responseDocs.length > 0) {
74
- for (const fieldName of fieldsToMap) {
75
- const sourceField = _.get(responseDocs[0], fieldName);
76
- if (!_.isUndefined(sourceField) && !_.isEmpty(sourceField) && !_.isNull(sourceField)) {
77
- _.set(user, 'additionalAttributes.' + fieldName, sourceField);
78
- }
79
- }
80
- this.setSuccessOrFailure(user, additionalInfoFound, '', true);
81
- }
82
- else {
83
- this.setSuccessOrFailure(user, additionalInfoFound, failureMode);
84
- }
85
- return user;
86
- }
87
- catch (err) {
88
- sails.log.error(`findInMintTriggerWrapper failed to complete. Additional info for user ${_.get(user, 'name')} not found`);
89
- sails.log.error(err);
90
- sails.log.error(options);
91
- this.setSuccessOrFailure(user, additionalInfoFound, failureMode);
92
- return user;
93
- }
94
- }
95
- setSuccessOrFailure(user, additionalInfoFound, failureMode, forceSuccess = false) {
96
- if (forceSuccess) {
97
- const successResponse = {
98
- message: `Additional info for user ${_.get(user, 'name')} found.`,
99
- isSuccess: true
100
- };
101
- additionalInfoFound.push(successResponse);
102
- _.set(user, 'additionalInfoFound', additionalInfoFound);
103
- }
104
- else if (failureMode == 'continue') {
105
- const successResponse = {
106
- message: `Additional info for user ${_.get(user, 'name')} not found. Ignore because failure mode is set to ${failureMode}`,
107
- isSuccess: true
108
- };
109
- additionalInfoFound.push(successResponse);
110
- _.set(user, 'additionalInfoFound', additionalInfoFound);
111
- }
112
- else {
113
- const errorResponse = {
114
- message: `Additional info for user ${_.get(user, 'name')} not found`,
115
- isSuccess: false
116
- };
117
- additionalInfoFound.push(errorResponse);
118
- _.set(user, 'additionalInfoFound', additionalInfoFound);
119
- }
120
- }
121
- /** @deprecated Legacy Mint integration. */
122
- async findInMint(sourceType, queryString) {
123
- queryString = _.trim(queryString);
124
- let searchString = '';
125
- if (!_.isEmpty(queryString)) {
126
- searchString = ` AND (${queryString})`;
127
- }
128
- const mintUrl = `${sails.config.record.baseUrl.mint}${sails.config.mint.api.search.url}?q=repository_type:${sourceType}${searchString}&version=2.2&wt=json&start=0`;
129
- sails.log.info(mintUrl);
130
- const options = this.getMintOptions(mintUrl, sails.config.record.api.search.method);
131
- sails.log.verbose(options);
132
- const response = await (0, axios_1.default)(options);
133
- return response.data;
134
- }
135
- /** @deprecated Legacy record query implementation. */
136
- async findRecords(sourceType, brand, searchString, start, rows, user) {
137
- const queryConfig = sails.config.vocab.queries[sourceType];
138
- if (queryConfig.querySource == 'database') {
139
- const namedQueryConfig = await NamedQueryService.getNamedQueryConfig(brand, queryConfig.databaseQuery.queryName);
140
- const paramMap = this.buildNamedQueryParamMap(queryConfig, searchString, user);
141
- const dbResults = await NamedQueryService.performNamedQueryFromConfig(namedQueryConfig, paramMap, brand, start, rows);
142
- if (queryConfig.resultObjectMapping) {
143
- return this.getResultObjectMappings(dbResults, queryConfig);
144
- }
145
- else {
146
- return dbResults;
147
- }
148
- }
149
- else if (queryConfig.querySource == 'solr') {
150
- const solrQuery = this.buildSolrParams(brand, searchString, queryConfig, start, rows, 'json', user);
151
- const solrResults = await this.getSearchService().searchAdvanced(queryConfig.searchQuery.searchCore, '', solrQuery);
152
- if (queryConfig.resultObjectMapping) {
153
- return this.getResultObjectMappings(solrResults, queryConfig);
154
- }
155
- else {
156
- return solrResults;
157
- }
158
- }
159
- return {};
160
- }
161
- buildNamedQueryParamMap(queryConfig, searchString, user) {
162
- const paramMap = {};
163
- if (queryConfig.queryField.type == 'text') {
164
- paramMap[queryConfig.queryField.property] = searchString;
165
- }
166
- if (queryConfig.userQueryFields != null) {
167
- for (const userQueryField of queryConfig.userQueryFields) {
168
- paramMap[userQueryField.property] = _.get(user, userQueryField.userValueProperty, null);
169
- }
170
- }
171
- return paramMap;
172
- }
173
- buildSolrParams(brand, searchString, queryConfig, start, rows, format = 'json', user) {
174
- let query = `${queryConfig.searchQuery.baseQuery}&sort=date_object_modified desc&version=2.2&start=${start}&rows=${rows}`;
175
- query = query + `&fq=metaMetadata_brandId:${brand.id}&wt=${format}`;
176
- if (queryConfig.queryField.type == 'text') {
177
- const value = searchString;
178
- if (!_.isEmpty(value)) {
179
- const searchProperty = queryConfig.queryField.property;
180
- query = query + '&fq=' + searchProperty + ':';
181
- if (value.indexOf('*') != -1) {
182
- query = query + value.replaceAll('*', '') + '*';
183
- }
184
- else {
185
- query = query + value + '*';
186
- }
187
- }
188
- }
189
- if (queryConfig.userQueryFields != null) {
190
- for (const userQueryField of queryConfig.userQueryFields) {
191
- const searchProperty = userQueryField.property;
192
- query = query + '&fq=' + searchProperty + ':' + _.get(user, userQueryField.userValueProperty, null);
193
- }
194
- }
195
- return query;
196
- }
197
- getResultObjectMappings(results, queryConfig) {
198
- let responseRecords = _.get(results, 'response.docs', '');
199
- if (responseRecords == '') {
200
- responseRecords = results.records ?? [];
201
- }
202
- const response = [];
203
- const that = this;
204
- const resultObjectMapping = queryConfig.resultObjectMapping;
205
- for (const record of responseRecords) {
206
- try {
207
- const variables = {
208
- record: record,
209
- _: _
210
- };
211
- let defaultMetadata = {};
212
- if (!_.isEmpty(resultObjectMapping)) {
213
- const resultMetadata = _.cloneDeep(resultObjectMapping);
214
- _.forOwn(resultObjectMapping, function (value, key) {
215
- _.set(resultMetadata, key, that.runTemplate(value, variables));
216
- });
217
- defaultMetadata = resultMetadata;
218
- response.push(defaultMetadata);
219
- }
220
- }
221
- catch (_error) {
222
- //This is required because the records retrieved from the solr index can have different structure and runTemplate method
223
- //cannot handle this .i.e if there are records type rdmp thar normal rdmp records and there are mock mint records that
224
- //are also rdmp type when the mock mint records are set to a different record type this should not happen
225
- continue;
226
- }
227
- }
228
- return response;
229
- }
230
- getSearchService() {
231
- return sails.services[sails.config.search.serviceName];
232
- }
233
- runTemplate(templateOrPath, variables) {
234
- if (templateOrPath && templateOrPath.indexOf('<%') != -1) {
235
- return _.template(templateOrPath)(variables);
236
- }
237
- return _.get(variables, templateOrPath);
238
- }
239
- /** @deprecated Legacy external service proxy. */
240
- async findInExternalService(providerName, params) {
241
- const method = sails.config.vocab.external[providerName].method;
242
- let url = sails.config.vocab.external[providerName].url;
243
- const templateFunction = this.getTemplateStringFunction(url);
244
- url = templateFunction(params.options);
245
- sails.log.info(url);
246
- const options = sails.config.vocab.external[providerName].options;
247
- if (method == 'post') {
248
- const post = {
249
- method: method,
250
- url: url,
251
- data: params.postBody,
252
- params: options
253
- };
254
- sails.log.verbose(post);
255
- const response = await (0, axios_1.default)(post);
256
- return response.data;
257
- }
258
- else {
259
- const getSearch = {
260
- method: method,
261
- url: url,
262
- params: options
263
- };
264
- sails.log.verbose(getSearch);
265
- const response = await (0, axios_1.default)(getSearch);
266
- return response.data;
267
- }
268
- }
269
- getTemplateStringFunction(template) {
270
- const sanitized = template
271
- .replace(/\$\{([\s]*[^;\s{]+[\s]*)\}/g, function (_, match) {
272
- return `\${map.${match.trim()}}`;
273
- })
274
- // Afterwards, replace anything that's not ${map.expressions}' (etc) with a blank string.
275
- .replace(/(\$\{(?!map\.)[^}]+\})/g, '');
276
- return Function('map', `return \`${sanitized}\``);
277
- }
278
- /** @deprecated Use VocabularyService.getEntries() or FormVocabularyController endpoints. */
279
- getVocab = (vocabId) => {
280
- // Check cache
281
- return (0, rxjs_1.from)(CacheService.get(vocabId)).pipe((0, operators_1.mergeMap)(data => {
282
- if (data) {
283
- sails.log.verbose(`Returning cached vocab: ${vocabId}`);
284
- return (0, rxjs_1.of)(data);
285
- }
286
- return (0, rxjs_1.from)(this.getManagedVocabulary(vocabId)).pipe((0, operators_1.mergeMap)((managedVocabulary) => {
287
- if (managedVocabulary) {
288
- CacheService.set(vocabId, managedVocabulary);
289
- return (0, rxjs_1.of)(managedVocabulary);
290
- }
291
- if (sails.config.vocab.nonAnds && sails.config.vocab.nonAnds[vocabId]) {
292
- return this.getNonAndsVocab(vocabId);
293
- }
294
- const url = `${sails.config.vocab.rootUrl}${vocabId}/${sails.config.vocab.conceptUri}`;
295
- let items = null; // a flat array containing all the entries
296
- const rawItems = [];
297
- return this.getConcepts(url, rawItems).pipe((0, operators_1.mergeMap)(allRawItems => {
298
- // we only are interested in notation, label and the uri
299
- items = _.map(allRawItems, (rawItem) => {
300
- const rawItemObj = rawItem;
301
- const prefLabel = rawItemObj.prefLabel;
302
- return { uri: rawItemObj._about, notation: rawItemObj.notation, label: prefLabel?._value ?? '' };
303
- });
304
- CacheService.set(vocabId, items);
305
- return (0, rxjs_1.of)(items);
306
- }));
307
- }));
308
- }));
309
- };
310
- async getManagedVocabulary(vocabId) {
311
- const normalizedId = String(vocabId ?? '').trim();
312
- if (!normalizedId) {
313
- return null;
314
- }
315
- const vocabulary = await Vocabulary.findOne({
316
- or: [{ id: normalizedId }, { slug: normalizedId }, { name: normalizedId }]
317
- });
318
- if (!vocabulary?.id) {
319
- return null;
320
- }
321
- const entries = await VocabularyEntry
322
- .find({ vocabulary: vocabulary.id })
323
- .sort([{ order: "ASC" }, { label: "ASC" }]);
324
- return entries.map((entry) => ({
325
- uri: String(entry.identifier ?? entry.value ?? ''),
326
- notation: String(entry.value ?? ''),
327
- label: String(entry.label ?? ''),
328
- historical: (0, sails_ng_common_1.toBoolean)(entry.historical)
329
- }));
330
- }
331
- // have to do this since ANDS endpoint ignores _pageSize
332
- getConcepts(url, rawItems) {
333
- console.log(`Getting concepts....${url}`);
334
- return (0, rxjs_1.from)(axios_1.default.get(url)).pipe((0, operators_1.mergeMap)((resp) => {
335
- const response = resp.data;
336
- rawItems = rawItems.concat(response.result?.items ?? []);
337
- if (response.result && response.result.next) {
338
- return this.getConcepts(response.result.next, rawItems);
339
- }
340
- return (0, rxjs_1.of)(rawItems);
341
- }));
342
- }
343
- getNonAndsVocab(vocabId) {
344
- const url = sails.config.vocab.nonAnds[vocabId].url;
345
- return (0, rxjs_1.from)(axios_1.default.get(url)).pipe((0, operators_1.mergeMap)(response => {
346
- CacheService.set(vocabId, response.data);
347
- return (0, rxjs_1.of)(response);
348
- }));
349
- }
350
- /** @deprecated Managed via Vocabulary admin. */
351
- loadCollection(collectionId, progressId = null, force = false) {
352
- const progressKey = progressId ?? '';
353
- const getMethod = sails.config.vocab.collection[collectionId].getMethod;
354
- const bufferCount = sails.config.vocab.collection[collectionId].processingBuffer;
355
- const processWindow = sails.config.vocab.collection[collectionId].processingTime;
356
- let collectionData = null;
357
- return this[getMethod](collectionId).pipe((0, operators_1.mergeMap)((data) => {
358
- if (_.isEmpty(data) || force) {
359
- // return a receipt and then start the process of loading...
360
- const url = sails.config.vocab.collection[collectionId].url;
361
- sails.log.verbose(`Loading collection: ${collectionId}, using url: ${url}`);
362
- const methodName = sails.config.vocab.collection[collectionId].saveMethod;
363
- return (0, rxjs_1.from)(axios_1.default.get(url)).pipe((0, operators_1.mergeMap)(resp => {
364
- const response = resp.data;
365
- sails.log.verbose(`Got response retrieving data for collection: ${collectionId}, saving...`);
366
- sails.log.verbose(`Number of items: ${response.length}`);
367
- const itemsToSave = _.chunk(response, bufferCount);
368
- collectionData = itemsToSave;
369
- // sails.log.verbose(collectionData);
370
- const updateObj = { currentIdx: 0, targetIdx: (collectionData || []).length };
371
- return AsynchsService.update({ id: progressKey }, updateObj);
372
- }), (0, operators_1.mergeMap)(_updateResp => {
373
- sails.log.verbose(`Updated asynch progress...`);
374
- return (0, rxjs_1.from)(collectionData || []);
375
- }), (0, operators_1.concatMap)((buffer, i) => {
376
- sails.log.verbose(`Processing chunk: ${i}`);
377
- return (0, rxjs_1.of)(buffer).pipe((0, operators_1.delay)(i * processWindow), (0, operators_1.mergeMap)(() => this.saveCollectionChunk(methodName, buffer, i).pipe((0, operators_1.mergeMap)(_saveResp => {
378
- sails.log.verbose(`Updating chunk progress...${i}`);
379
- if (i === (collectionData || []).length - 1) {
380
- sails.log.verbose(`Asynch completed.`);
381
- return AsynchsService.finish(progressKey);
382
- }
383
- else {
384
- return AsynchsService.update({ id: progressKey }, { currentIdx: i + 1, status: 'processing' });
385
- }
386
- }))));
387
- }));
388
- }
389
- else {
390
- sails.log.verbose(`Collection already loaded: ${collectionId}`);
391
- return (0, rxjs_1.of)(null);
392
- }
393
- }));
394
- }
395
- saveCollectionChunk(methodName, buffer, _i) {
396
- return this[methodName](buffer);
397
- }
398
- /** @deprecated Managed via Vocabulary admin. */
399
- findCollection(collectionId, searchString) {
400
- return this[sails.config.vocab.collection[collectionId].searchMethod](searchString);
401
- }
402
- /** @deprecated Legacy ANDS/RVA lookup. */
403
- rvaGetResourceDetails(uri, vocab) {
404
- const url = sails.config.vocab.rootUrl + `${vocab}/resource.json?uri=${uri}`;
405
- return (0, rxjs_1.from)(axios_1.default.get(url)).pipe((0, operators_1.mergeMap)(response => {
406
- CacheService.set(vocab, response.data);
407
- return (0, rxjs_1.of)(response);
408
- }));
409
- }
410
- getMintOptions(url, method, contentType = 'application/json; charset=utf-8') {
411
- const opts = {
412
- method: method,
413
- url: url,
414
- headers: {
415
- 'Authorization': `Bearer ${sails.config.mint.apiKey}`,
416
- 'Content-Type': contentType
417
- }
418
- };
419
- return opts;
420
- }
421
- }
422
- Services.Vocab = Vocab;
423
- })(Services || (exports.Services = Services = {}));
424
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVm9jYWJTZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NlcnZpY2VzL1ZvY2FiU2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsMEZBQTBGO0FBQzFGLEVBQUU7QUFDRiw2QkFBNkI7QUFDN0IsMEJBQTBCO0FBQzFCLEVBQUU7QUFDRix1RUFBdUU7QUFDdkUsdUVBQXVFO0FBQ3ZFLG9FQUFvRTtBQUNwRSxzQ0FBc0M7QUFDdEMsRUFBRTtBQUNGLGtFQUFrRTtBQUNsRSxpRUFBaUU7QUFDakUsZ0VBQWdFO0FBQ2hFLCtDQUErQztBQUMvQyxFQUFFO0FBQ0YsMEVBQTBFO0FBQzFFLDBFQUEwRTtBQUMxRSw4REFBOEQ7Ozs7OztBQUU5RCwrQkFBNEM7QUFDNUMsOENBQTZFO0FBSTdFLGdEQUFzRDtBQUN0RCxrREFBNkM7QUFDN0Msc0VBQTJEO0FBRzNELElBQWlCLFFBQVEsQ0FzZHhCO0FBdGRELFdBQWlCLFFBQVE7SUFhdkI7Ozs7OztPQU1HO0lBQ0gsTUFBYSxLQUFNLFNBQVEsc0JBQVEsQ0FBQyxJQUFJLENBQUMsT0FBTztRQUUzQixnQkFBZ0IsR0FBYTtZQUM5QyxXQUFXO1lBQ1gsVUFBVTtZQUNWLGdCQUFnQjtZQUNoQixnQkFBZ0I7WUFDaEIsWUFBWTtZQUNaLHVCQUF1QjtZQUN2Qix1QkFBdUI7WUFDdkIsMEJBQTBCO1lBQzFCLGFBQWE7U0FDZCxDQUFDO1FBRUYsa0VBQWtFO1FBQzNELFNBQVM7WUFDZCxPQUFPLENBQUMsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQztnQkFDcEQsSUFBQSxTQUFFLEVBQUMsSUFBSSxDQUFDO2dCQUNSLENBQUMsQ0FBQyxJQUFBLFdBQUksRUFBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxlQUEyQixDQUFDLENBQUMsSUFBSSxDQUN6RCxJQUFBLG9CQUFPLEVBQUMsQ0FBQyxP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