@researchdatabox/redbox-core 5.0.4 → 5.1.0-beta.12568

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 +5 -1
  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 +49 -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 +109 -13
  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 +49 -9
  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/FigsharePublishing.d.ts +1 -1
  156. package/dist/configmodels/OniPublishing.d.ts +205 -0
  157. package/dist/configmodels/OniPublishing.d.ts.map +1 -0
  158. package/dist/configmodels/OniPublishing.js +335 -0
  159. package/dist/configmodels/RaidPublishing.d.ts +97 -0
  160. package/dist/configmodels/RaidPublishing.d.ts.map +1 -0
  161. package/dist/configmodels/RaidPublishing.js +35 -0
  162. package/dist/configmodels/WebAnalytics.d.ts +55 -0
  163. package/dist/configmodels/WebAnalytics.d.ts.map +1 -0
  164. package/dist/configmodels/WebAnalytics.js +61 -0
  165. package/dist/controllers/AppConfigController.d.ts.map +1 -1
  166. package/dist/controllers/AppConfigController.js +4 -1
  167. package/dist/controllers/BrandingAppController.d.ts +29 -7
  168. package/dist/controllers/BrandingAppController.d.ts.map +1 -1
  169. package/dist/controllers/BrandingAppController.js +265 -69
  170. package/dist/controllers/BrandingController.d.ts +24 -1
  171. package/dist/controllers/BrandingController.d.ts.map +1 -1
  172. package/dist/controllers/BrandingController.js +173 -43
  173. package/dist/controllers/BrandingControllerSupport.d.ts +20 -0
  174. package/dist/controllers/BrandingControllerSupport.d.ts.map +1 -0
  175. package/dist/controllers/BrandingControllerSupport.js +80 -0
  176. package/dist/controllers/DashboardConfigController.d.ts +6 -2
  177. package/dist/controllers/DashboardConfigController.d.ts.map +1 -1
  178. package/dist/controllers/DashboardConfigController.js +18 -4
  179. package/dist/controllers/DynamicAssetController.d.ts +7 -5
  180. package/dist/controllers/DynamicAssetController.d.ts.map +1 -1
  181. package/dist/controllers/DynamicAssetController.js +21 -12
  182. package/dist/controllers/RecordController.d.ts +45 -4
  183. package/dist/controllers/RecordController.d.ts.map +1 -1
  184. package/dist/controllers/RecordController.js +778 -345
  185. package/dist/controllers/index.d.ts.map +1 -1
  186. package/dist/controllers/index.js +4 -1
  187. package/dist/controllers/webservice/AdminController.d.ts.map +1 -1
  188. package/dist/controllers/webservice/AdminController.js +4 -3
  189. package/dist/controllers/webservice/BrandingController.d.ts +26 -1
  190. package/dist/controllers/webservice/BrandingController.d.ts.map +1 -1
  191. package/dist/controllers/webservice/BrandingController.js +292 -116
  192. package/dist/controllers/webservice/DashboardConfigController.d.ts +25 -17
  193. package/dist/controllers/webservice/DashboardConfigController.d.ts.map +1 -1
  194. package/dist/controllers/webservice/DashboardConfigController.js +90 -205
  195. package/dist/controllers/webservice/FormManagementController.d.ts.map +1 -1
  196. package/dist/controllers/webservice/FormManagementController.js +37 -3
  197. package/dist/controllers/webservice/RecordController.d.ts +15 -1
  198. package/dist/controllers/webservice/RecordController.d.ts.map +1 -1
  199. package/dist/controllers/webservice/RecordController.js +647 -267
  200. package/dist/controllers/webservice/RecordSchemaController.d.ts +32 -0
  201. package/dist/controllers/webservice/RecordSchemaController.d.ts.map +1 -0
  202. package/dist/controllers/webservice/RecordSchemaController.js +356 -0
  203. package/dist/controllers/webservice/RecordTypeController.d.ts +6 -1
  204. package/dist/controllers/webservice/RecordTypeController.d.ts.map +1 -1
  205. package/dist/controllers/webservice/RecordTypeController.js +21 -3
  206. package/dist/controllers/webservice/SearchController.d.ts.map +1 -1
  207. package/dist/controllers/webservice/SearchController.js +7 -3
  208. package/dist/hooks/defineRedboxHook.d.ts +3 -0
  209. package/dist/hooks/defineRedboxHook.d.ts.map +1 -1
  210. package/dist/hooks/defineRedboxHook.js +4 -1
  211. package/dist/index.d.ts +50 -23
  212. package/dist/index.d.ts.map +1 -1
  213. package/dist/index.js +90 -2
  214. package/dist/loader/bootstrapShimRuntime.d.ts +1 -1
  215. package/dist/loader/bootstrapShimRuntime.d.ts.map +1 -1
  216. package/dist/loader/bootstrapShimRuntime.js +20 -12
  217. package/dist/loader/index.d.ts +9 -0
  218. package/dist/loader/index.d.ts.map +1 -1
  219. package/dist/loader/index.js +93 -4
  220. package/dist/model/BrandingTypeface.d.ts +70 -0
  221. package/dist/model/BrandingTypeface.d.ts.map +1 -0
  222. package/dist/model/BrandingTypeface.js +116 -0
  223. package/dist/model/BuildResponse.d.ts +25 -11
  224. package/dist/model/BuildResponse.d.ts.map +1 -1
  225. package/dist/model/BuildResponse.js +4 -3
  226. package/dist/model/DashboardTypeResponseModel.d.ts +6 -0
  227. package/dist/model/DashboardTypeResponseModel.d.ts.map +1 -1
  228. package/dist/model/DashboardTypeResponseModel.js +7 -1
  229. package/dist/model/DashboardViewResponseModel.d.ts +5 -1
  230. package/dist/model/DashboardViewResponseModel.d.ts.map +1 -1
  231. package/dist/model/DashboardViewResponseModel.js +6 -3
  232. package/dist/model/RBValidationError.d.ts +17 -0
  233. package/dist/model/RBValidationError.d.ts.map +1 -1
  234. package/dist/model/RBValidationError.js +37 -1
  235. package/dist/model/RecordTypeResponseModel.d.ts +12 -4
  236. package/dist/model/RecordTypeResponseModel.d.ts.map +1 -1
  237. package/dist/model/RecordTypeResponseModel.js +11 -2
  238. package/dist/model/index.d.ts +5 -1
  239. package/dist/model/index.d.ts.map +1 -1
  240. package/dist/model/index.js +5 -2
  241. package/dist/model/record-contract.d.ts +42 -0
  242. package/dist/model/record-contract.d.ts.map +1 -0
  243. package/dist/model/record-contract.js +3 -0
  244. package/dist/model/storage/BrandingModel.d.ts +7 -0
  245. package/dist/model/storage/BrandingModel.d.ts.map +1 -1
  246. package/dist/model/storage/BrandingModel.js +7 -1
  247. package/dist/model/storage/DeletedRecordModel.d.ts +35 -0
  248. package/dist/model/storage/DeletedRecordModel.d.ts.map +1 -1
  249. package/dist/model/storage/DeletedRecordModel.js +62 -1
  250. package/dist/model/storage/IntegrationAuditModel.d.ts +16 -2
  251. package/dist/model/storage/IntegrationAuditModel.d.ts.map +1 -1
  252. package/dist/model/storage/IntegrationAuditModel.js +15 -1
  253. package/dist/model/storage/RecordAuditModel.d.ts +11 -1
  254. package/dist/model/storage/RecordAuditModel.d.ts.map +1 -1
  255. package/dist/model/storage/RecordAuditModel.js +8 -2
  256. package/dist/model/storage/RecordModel.d.ts +8 -2
  257. package/dist/model/storage/RecordModel.d.ts.map +1 -1
  258. package/dist/model/storage/RecordTypeModel.d.ts +6 -0
  259. package/dist/model/storage/RecordTypeModel.d.ts.map +1 -1
  260. package/dist/model/storage/RecordTypeModel.js +4 -1
  261. package/dist/model/storage/index.d.ts +12 -10
  262. package/dist/model/storage/index.d.ts.map +1 -1
  263. package/dist/model/storage/index.js +24 -2
  264. package/dist/model/storage/record-schema.d.ts +115 -0
  265. package/dist/model/storage/record-schema.d.ts.map +1 -0
  266. package/dist/model/storage/record-schema.js +3 -0
  267. package/dist/policies/checkAuth.d.ts +2 -6
  268. package/dist/policies/checkAuth.d.ts.map +1 -1
  269. package/dist/policies/checkAuth.js +32 -9
  270. package/dist/policies/contentSecurityPolicy.d.ts.map +1 -1
  271. package/dist/policies/contentSecurityPolicy.js +85 -2
  272. package/dist/policies/index.d.ts +3 -2
  273. package/dist/policies/index.d.ts.map +1 -1
  274. package/dist/policies/index.js +4 -2
  275. package/dist/policies/validateApiContractRequest.d.ts.map +1 -1
  276. package/dist/policies/validateApiContractRequest.js +49 -11
  277. package/dist/record-contract/ajv-error-mapper.d.ts +34 -0
  278. package/dist/record-contract/ajv-error-mapper.d.ts.map +1 -0
  279. package/dist/record-contract/ajv-error-mapper.js +153 -0
  280. package/dist/record-contract/canonical-json.d.ts +20 -0
  281. package/dist/record-contract/canonical-json.d.ts.map +1 -0
  282. package/dist/record-contract/canonical-json.js +126 -0
  283. package/dist/record-contract/codes.d.ts +36 -0
  284. package/dist/record-contract/codes.d.ts.map +1 -0
  285. package/dist/record-contract/codes.js +38 -0
  286. package/dist/record-contract/contributor-registry.d.ts +76 -0
  287. package/dist/record-contract/contributor-registry.d.ts.map +1 -0
  288. package/dist/record-contract/contributor-registry.js +126 -0
  289. package/dist/record-contract/core-contributors.d.ts +44 -0
  290. package/dist/record-contract/core-contributors.d.ts.map +1 -0
  291. package/dist/record-contract/core-contributors.js +395 -0
  292. package/dist/record-contract/deep-freeze.d.ts +3 -0
  293. package/dist/record-contract/deep-freeze.d.ts.map +1 -0
  294. package/dist/record-contract/deep-freeze.js +23 -0
  295. package/dist/record-contract/index.d.ts +13 -0
  296. package/dist/record-contract/index.d.ts.map +1 -0
  297. package/dist/record-contract/index.js +29 -0
  298. package/dist/record-contract/json-pointer.d.ts +20 -0
  299. package/dist/record-contract/json-pointer.d.ts.map +1 -0
  300. package/dist/record-contract/json-pointer.js +70 -0
  301. package/dist/record-contract/json-schema-renderer.d.ts +51 -0
  302. package/dist/record-contract/json-schema-renderer.d.ts.map +1 -0
  303. package/dist/record-contract/json-schema-renderer.js +450 -0
  304. package/dist/record-contract/record-contract-compiler.d.ts +42 -0
  305. package/dist/record-contract/record-contract-compiler.d.ts.map +1 -0
  306. package/dist/record-contract/record-contract-compiler.js +775 -0
  307. package/dist/record-contract/record-contract-context.d.ts +91 -0
  308. package/dist/record-contract/record-contract-context.d.ts.map +1 -0
  309. package/dist/record-contract/record-contract-context.js +39 -0
  310. package/dist/record-contract/record-json-schema-artifact.d.ts +74 -0
  311. package/dist/record-contract/record-json-schema-artifact.d.ts.map +1 -0
  312. package/dist/record-contract/record-json-schema-artifact.js +309 -0
  313. package/dist/record-contract/record-json-schema-etag.d.ts +15 -0
  314. package/dist/record-contract/record-json-schema-etag.d.ts.map +1 -0
  315. package/dist/record-contract/record-json-schema-etag.js +41 -0
  316. package/dist/record-contract/types.d.ts +151 -0
  317. package/dist/record-contract/types.d.ts.map +1 -0
  318. package/dist/record-contract/types.js +6 -0
  319. package/dist/services/AppConfigService.d.ts +6 -0
  320. package/dist/services/AppConfigService.d.ts.map +1 -1
  321. package/dist/services/AppConfigService.js +23 -1
  322. package/dist/services/AttachmentMetadataService.d.ts +58 -0
  323. package/dist/services/AttachmentMetadataService.d.ts.map +1 -1
  324. package/dist/services/AttachmentMetadataService.js +643 -8
  325. package/dist/services/BrandingLogoService.d.ts +6 -1
  326. package/dist/services/BrandingLogoService.d.ts.map +1 -1
  327. package/dist/services/BrandingLogoService.js +77 -9
  328. package/dist/services/BrandingService.d.ts +171 -9
  329. package/dist/services/BrandingService.d.ts.map +1 -1
  330. package/dist/services/BrandingService.js +572 -68
  331. package/dist/services/BrandingThemeCssService.d.ts +17 -1
  332. package/dist/services/BrandingThemeCssService.d.ts.map +1 -1
  333. package/dist/services/BrandingThemeCssService.js +71 -9
  334. package/dist/services/BrandingTypefaceService.d.ts +74 -0
  335. package/dist/services/BrandingTypefaceService.d.ts.map +1 -0
  336. package/dist/services/BrandingTypefaceService.js +359 -0
  337. package/dist/services/BrandingWoff2Inspector.d.ts +17 -0
  338. package/dist/services/BrandingWoff2Inspector.d.ts.map +1 -0
  339. package/dist/services/BrandingWoff2Inspector.js +402 -0
  340. package/dist/services/DashboardConfigService.d.ts +214 -54
  341. package/dist/services/DashboardConfigService.d.ts.map +1 -1
  342. package/dist/services/DashboardConfigService.js +829 -261
  343. package/dist/services/DashboardLegacyConversion.d.ts +82 -0
  344. package/dist/services/DashboardLegacyConversion.d.ts.map +1 -0
  345. package/dist/services/DashboardLegacyConversion.js +427 -0
  346. package/dist/services/DashboardTypesService.d.ts +15 -4
  347. package/dist/services/DashboardTypesService.d.ts.map +1 -1
  348. package/dist/services/DashboardTypesService.js +72 -139
  349. package/dist/services/DoiService.d.ts +1 -1
  350. package/dist/services/DoiService.d.ts.map +1 -1
  351. package/dist/services/DoiService.js +71 -45
  352. package/dist/services/FigshareService.d.ts.map +1 -1
  353. package/dist/services/FigshareService.js +8 -7
  354. package/dist/services/FormRecordConsistencyService.d.ts +8 -23
  355. package/dist/services/FormRecordConsistencyService.d.ts.map +1 -1
  356. package/dist/services/FormRecordConsistencyService.js +54 -70
  357. package/dist/services/FormsService.d.ts +91 -2
  358. package/dist/services/FormsService.d.ts.map +1 -1
  359. package/dist/services/FormsService.js +324 -64
  360. package/dist/services/HarvestRunService.d.ts +6 -3
  361. package/dist/services/HarvestRunService.d.ts.map +1 -1
  362. package/dist/services/HarvestRunService.js +161 -97
  363. package/dist/services/I18nEntriesService.d.ts +11 -11
  364. package/dist/services/I18nEntriesService.d.ts.map +1 -1
  365. package/dist/services/I18nEntriesService.js +71 -48
  366. package/dist/services/OniService.d.ts +19 -62
  367. package/dist/services/OniService.d.ts.map +1 -1
  368. package/dist/services/OniService.js +223 -691
  369. package/dist/services/RDMPService.d.ts +1 -1
  370. package/dist/services/RDMPService.d.ts.map +1 -1
  371. package/dist/services/RDMPService.js +5 -5
  372. package/dist/services/RaidService.d.ts +19 -61
  373. package/dist/services/RaidService.d.ts.map +1 -1
  374. package/dist/services/RaidService.js +191 -530
  375. package/dist/services/RecordSchemaService.d.ts +440 -0
  376. package/dist/services/RecordSchemaService.d.ts.map +1 -0
  377. package/dist/services/RecordSchemaService.js +3061 -0
  378. package/dist/services/RecordTypesService.d.ts +29 -0
  379. package/dist/services/RecordTypesService.d.ts.map +1 -1
  380. package/dist/services/RecordTypesService.js +106 -11
  381. package/dist/services/RecordValidationService.d.ts +340 -0
  382. package/dist/services/RecordValidationService.d.ts.map +1 -0
  383. package/dist/services/RecordValidationService.js +1898 -0
  384. package/dist/services/RecordsService.d.ts +317 -26
  385. package/dist/services/RecordsService.d.ts.map +1 -1
  386. package/dist/services/RecordsService.js +5145 -765
  387. package/dist/services/SolrSearchService.d.ts +1 -1
  388. package/dist/services/SolrSearchService.d.ts.map +1 -1
  389. package/dist/services/SolrSearchService.js +42 -12
  390. package/dist/services/StandardDatastreamService.d.ts +4 -0
  391. package/dist/services/StandardDatastreamService.d.ts.map +1 -1
  392. package/dist/services/StandardDatastreamService.js +106 -44
  393. package/dist/services/TriggerService.d.ts.map +1 -1
  394. package/dist/services/TriggerService.js +54 -30
  395. package/dist/services/UsersService.d.ts +2 -1
  396. package/dist/services/UsersService.d.ts.map +1 -1
  397. package/dist/services/UsersService.js +364 -283
  398. package/dist/services/VocabularyService.d.ts +2 -0
  399. package/dist/services/VocabularyService.d.ts.map +1 -1
  400. package/dist/services/VocabularyService.js +61 -2
  401. package/dist/services/WorkflowStepsService.d.ts +11 -0
  402. package/dist/services/WorkflowStepsService.d.ts.map +1 -1
  403. package/dist/services/WorkflowStepsService.js +32 -3
  404. package/dist/services/WorkspaceService.d.ts +2 -2
  405. package/dist/services/WorkspaceService.d.ts.map +1 -1
  406. package/dist/services/WorkspaceService.js +5 -5
  407. package/dist/services/doi-v2/bindings.d.ts.map +1 -1
  408. package/dist/services/doi-v2/bindings.js +3 -20
  409. package/dist/services/doi-v2/config.d.ts +1 -0
  410. package/dist/services/doi-v2/config.d.ts.map +1 -1
  411. package/dist/services/doi-v2/config.js +13 -5
  412. package/dist/services/doi-v2/runtime.d.ts.map +1 -1
  413. package/dist/services/doi-v2/runtime.js +14 -54
  414. package/dist/services/figshare-v2/bindings.d.ts.map +1 -1
  415. package/dist/services/figshare-v2/bindings.js +3 -20
  416. package/dist/services/figshare-v2/runtime.d.ts.map +1 -1
  417. package/dist/services/figshare-v2/runtime.js +11 -58
  418. package/dist/services/figshare-v2/worker.d.ts.map +1 -1
  419. package/dist/services/figshare-v2/worker.js +254 -74
  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 +59 -45
  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
@@ -69,6 +69,8 @@ const sails_ng_common_64 = require("@researchdatabox/sails-ng-common");
69
69
  const sails_ng_common_65 = require("@researchdatabox/sails-ng-common");
70
70
  const sails_ng_common_66 = require("@researchdatabox/sails-ng-common");
71
71
  const sails_ng_common_67 = require("@researchdatabox/sails-ng-common");
72
+ const sails_ng_common_68 = require("@researchdatabox/sails-ng-common");
73
+ const sails_ng_common_69 = require("@researchdatabox/sails-ng-common");
72
74
  const attachment_fields_visitor_1 = require("./attachment-fields.visitor");
73
75
  /*
74
76
  * HOW TO ADD OR UPDATE THE MAPPING
@@ -83,6 +85,11 @@ const attachment_fields_visitor_1 = require("./attachment-fields.visitor");
83
85
  * Overall mapping from v4 class, v4 compClass to v5 class names.
84
86
  */
85
87
  const formConfigV4ToV5Mapping = {
88
+ RelatedObjectDataField: {
89
+ '': { componentClassName: sails_ng_common_14.RelatedObjectDataComponentName },
90
+ RelatedObjectDataField: { componentClassName: sails_ng_common_14.RelatedObjectDataComponentName },
91
+ RelatedObjectDataComponent: { componentClassName: sails_ng_common_14.RelatedObjectDataComponentName },
92
+ },
86
93
  Container: {
87
94
  '': {
88
95
  componentClassName: sails_ng_common_2.GroupFieldComponentName,
@@ -98,32 +105,32 @@ const formConfigV4ToV5Mapping = {
98
105
  },
99
106
  TextArea: {
100
107
  '': {
101
- componentClassName: sails_ng_common_18.TextAreaComponentName,
102
- modelClassName: sails_ng_common_18.TextAreaModelName,
108
+ componentClassName: sails_ng_common_19.TextAreaComponentName,
109
+ modelClassName: sails_ng_common_19.TextAreaModelName,
103
110
  },
104
111
  TextAreaComponent: {
105
- componentClassName: sails_ng_common_18.TextAreaComponentName,
106
- modelClassName: sails_ng_common_18.TextAreaModelName,
112
+ componentClassName: sails_ng_common_19.TextAreaComponentName,
113
+ modelClassName: sails_ng_common_19.TextAreaModelName,
107
114
  },
108
115
  },
109
116
  MarkdownTextArea: {
110
117
  '': {
111
- componentClassName: sails_ng_common_20.RichTextEditorComponentName,
112
- modelClassName: sails_ng_common_20.RichTextEditorModelName,
118
+ componentClassName: sails_ng_common_21.RichTextEditorComponentName,
119
+ modelClassName: sails_ng_common_21.RichTextEditorModelName,
113
120
  },
114
121
  MarkdownTextAreaComponent: {
115
- componentClassName: sails_ng_common_20.RichTextEditorComponentName,
116
- modelClassName: sails_ng_common_20.RichTextEditorModelName,
122
+ componentClassName: sails_ng_common_21.RichTextEditorComponentName,
123
+ modelClassName: sails_ng_common_21.RichTextEditorModelName,
117
124
  },
118
125
  },
119
126
  TabOrAccordionContainer: {
120
127
  '': {
121
- componentClassName: sails_ng_common_14.TabComponentName,
122
- layoutClassName: sails_ng_common_14.TabLayoutName,
128
+ componentClassName: sails_ng_common_15.TabComponentName,
129
+ layoutClassName: sails_ng_common_15.TabLayoutName,
123
130
  },
124
131
  TabOrAccordionContainerComponent: {
125
- componentClassName: sails_ng_common_14.TabComponentName,
126
- layoutClassName: sails_ng_common_14.TabLayoutName,
132
+ componentClassName: sails_ng_common_15.TabComponentName,
133
+ layoutClassName: sails_ng_common_15.TabLayoutName,
127
134
  },
128
135
  },
129
136
  ButtonBarContainer: {
@@ -196,45 +203,45 @@ const formConfigV4ToV5Mapping = {
196
203
  },
197
204
  SelectionField: {
198
205
  DropdownFieldComponent: {
199
- componentClassName: sails_ng_common_23.DropdownInputComponentName,
200
- modelClassName: sails_ng_common_23.DropdownInputModelName,
206
+ componentClassName: sails_ng_common_24.DropdownInputComponentName,
207
+ modelClassName: sails_ng_common_24.DropdownInputModelName,
201
208
  },
202
209
  SelectionFieldComponent: {
203
- componentClassName: sails_ng_common_23.DropdownInputComponentName,
204
- modelClassName: sails_ng_common_23.DropdownInputModelName,
210
+ componentClassName: sails_ng_common_24.DropdownInputComponentName,
211
+ modelClassName: sails_ng_common_24.DropdownInputModelName,
205
212
  },
206
213
  },
207
214
  VocabField: {
208
215
  '': {
209
- componentClassName: sails_ng_common_25.TypeaheadInputComponentName,
210
- modelClassName: sails_ng_common_25.TypeaheadInputModelName,
216
+ componentClassName: sails_ng_common_26.TypeaheadInputComponentName,
217
+ modelClassName: sails_ng_common_26.TypeaheadInputModelName,
211
218
  },
212
219
  VocabFieldComponent: {
213
- componentClassName: sails_ng_common_25.TypeaheadInputComponentName,
214
- modelClassName: sails_ng_common_25.TypeaheadInputModelName,
220
+ componentClassName: sails_ng_common_26.TypeaheadInputComponentName,
221
+ modelClassName: sails_ng_common_26.TypeaheadInputModelName,
215
222
  },
216
223
  },
217
224
  DateTime: {
218
225
  '': {
219
- componentClassName: sails_ng_common_29.DateInputComponentName,
220
- modelClassName: sails_ng_common_29.DateInputModelName,
226
+ componentClassName: sails_ng_common_30.DateInputComponentName,
227
+ modelClassName: sails_ng_common_30.DateInputModelName,
221
228
  },
222
229
  },
223
230
  SaveButton: {
224
231
  '': {
225
- componentClassName: sails_ng_common_31.SaveButtonComponentName,
232
+ componentClassName: sails_ng_common_32.SaveButtonComponentName,
226
233
  },
227
234
  },
228
235
  // TODO: Should tab nav be a different component?
229
236
  TabNavButton: {
230
237
  '': {
231
- componentClassName: sails_ng_common_37.TabNavButtonComponentName,
238
+ componentClassName: sails_ng_common_38.TabNavButtonComponentName,
232
239
  },
233
240
  },
234
241
  // TODO: Should anchor or button be a different component?
235
242
  AnchorOrButton: {
236
243
  '': {
237
- componentClassName: sails_ng_common_31.SaveButtonComponentName,
244
+ componentClassName: sails_ng_common_32.SaveButtonComponentName,
238
245
  },
239
246
  // TODO: what is class: AnchorOrButton, compClass: TextBlockComponent?
240
247
  // "TextBlockComponent": {}
@@ -242,113 +249,121 @@ const formConfigV4ToV5Mapping = {
242
249
  // TODO: Should cancel button be a different component?
243
250
  CancelButton: {
244
251
  '': {
245
- componentClassName: sails_ng_common_33.CancelButtonComponentName,
252
+ componentClassName: sails_ng_common_34.CancelButtonComponentName,
246
253
  },
247
254
  },
248
255
  // TabContentContainer is not a real v4 class: it a placeholder to aid mapping to tab content component
249
256
  TabContentContainer: {
250
257
  '': {
251
- componentClassName: sails_ng_common_16.TabContentComponentName,
252
- layoutClassName: sails_ng_common_16.TabContentLayoutName,
258
+ componentClassName: sails_ng_common_17.TabContentComponentName,
259
+ layoutClassName: sails_ng_common_17.TabContentLayoutName,
253
260
  },
254
261
  },
255
262
  ContributorField: {
256
263
  '': {
257
- componentClassName: sails_ng_common_66.ReusableComponentName,
264
+ componentClassName: sails_ng_common_68.ReusableComponentName,
258
265
  },
259
266
  },
260
267
  ANDSVocab: {
261
268
  '': {
262
- componentClassName: sails_ng_common_47.CheckboxTreeComponentName,
263
- modelClassName: sails_ng_common_47.CheckboxTreeModelName,
269
+ componentClassName: sails_ng_common_49.CheckboxTreeComponentName,
270
+ modelClassName: sails_ng_common_49.CheckboxTreeModelName,
264
271
  },
265
272
  ANDSVocabComponent: {
266
- componentClassName: sails_ng_common_47.CheckboxTreeComponentName,
267
- modelClassName: sails_ng_common_47.CheckboxTreeModelName,
273
+ componentClassName: sails_ng_common_49.CheckboxTreeComponentName,
274
+ modelClassName: sails_ng_common_49.CheckboxTreeModelName,
268
275
  },
269
276
  },
270
277
  RelatedObjectSelector: {
271
278
  '': {
272
- componentClassName: sails_ng_common_49.RecordSelectorComponentName,
273
- modelClassName: sails_ng_common_49.RecordSelectorModelName,
279
+ componentClassName: sails_ng_common_51.RecordSelectorComponentName,
280
+ modelClassName: sails_ng_common_51.RecordSelectorModelName,
274
281
  },
275
282
  RelatedObjectSelectorComponent: {
276
- componentClassName: sails_ng_common_49.RecordSelectorComponentName,
277
- modelClassName: sails_ng_common_49.RecordSelectorModelName,
283
+ componentClassName: sails_ng_common_51.RecordSelectorComponentName,
284
+ modelClassName: sails_ng_common_51.RecordSelectorModelName,
278
285
  },
279
286
  },
280
287
  MapField: {
281
288
  '': {
282
- componentClassName: sails_ng_common_51.MapComponentName,
283
- modelClassName: sails_ng_common_51.MapModelName,
289
+ componentClassName: sails_ng_common_53.MapComponentName,
290
+ modelClassName: sails_ng_common_53.MapModelName,
284
291
  },
285
292
  MapComponent: {
286
- componentClassName: sails_ng_common_51.MapComponentName,
287
- modelClassName: sails_ng_common_51.MapModelName,
293
+ componentClassName: sails_ng_common_53.MapComponentName,
294
+ modelClassName: sails_ng_common_53.MapModelName,
288
295
  },
289
296
  },
290
297
  RelatedFileUpload: {
291
298
  '': {
292
- componentClassName: sails_ng_common_53.FileUploadComponentName,
293
- modelClassName: sails_ng_common_53.FileUploadModelName,
299
+ componentClassName: sails_ng_common_55.FileUploadComponentName,
300
+ modelClassName: sails_ng_common_55.FileUploadModelName,
294
301
  },
295
302
  RelatedFileUploadComponent: {
296
- componentClassName: sails_ng_common_53.FileUploadComponentName,
297
- modelClassName: sails_ng_common_53.FileUploadModelName,
303
+ componentClassName: sails_ng_common_55.FileUploadComponentName,
304
+ modelClassName: sails_ng_common_55.FileUploadModelName,
298
305
  },
299
306
  RelatedFileComponent: {
300
- componentClassName: sails_ng_common_53.FileUploadComponentName,
301
- modelClassName: sails_ng_common_53.FileUploadModelName,
307
+ componentClassName: sails_ng_common_55.FileUploadComponentName,
308
+ modelClassName: sails_ng_common_55.FileUploadModelName,
302
309
  },
303
310
  },
304
311
  DataLocation: {
305
312
  '': {
306
- componentClassName: sails_ng_common_57.DataLocationComponentName,
307
- modelClassName: sails_ng_common_57.DataLocationModelName,
313
+ componentClassName: sails_ng_common_59.DataLocationComponentName,
314
+ modelClassName: sails_ng_common_59.DataLocationModelName,
308
315
  },
309
316
  DataLocationComponent: {
310
- componentClassName: sails_ng_common_57.DataLocationComponentName,
311
- modelClassName: sails_ng_common_57.DataLocationModelName,
317
+ componentClassName: sails_ng_common_59.DataLocationComponentName,
318
+ modelClassName: sails_ng_common_59.DataLocationModelName,
312
319
  },
313
320
  },
314
321
  PDFList: {
315
322
  '': {
316
- componentClassName: sails_ng_common_55.PDFListComponentName,
317
- modelClassName: sails_ng_common_55.PDFListModelName,
323
+ componentClassName: sails_ng_common_57.PDFListComponentName,
324
+ modelClassName: sails_ng_common_57.PDFListModelName,
318
325
  },
319
326
  PDFListComponent: {
320
- componentClassName: sails_ng_common_55.PDFListComponentName,
321
- modelClassName: sails_ng_common_55.PDFListModelName,
327
+ componentClassName: sails_ng_common_57.PDFListComponentName,
328
+ modelClassName: sails_ng_common_57.PDFListModelName,
322
329
  },
323
330
  },
324
331
  PublishDataLocationSelector: {
325
332
  '': {
326
- componentClassName: sails_ng_common_59.PublishDataLocationSelectorComponentName,
327
- modelClassName: sails_ng_common_59.PublishDataLocationSelectorModelName,
333
+ componentClassName: sails_ng_common_61.PublishDataLocationSelectorComponentName,
334
+ modelClassName: sails_ng_common_61.PublishDataLocationSelectorModelName,
328
335
  },
329
336
  PublishDataLocationSelectorComponent: {
330
- componentClassName: sails_ng_common_59.PublishDataLocationSelectorComponentName,
331
- modelClassName: sails_ng_common_59.PublishDataLocationSelectorModelName,
337
+ componentClassName: sails_ng_common_61.PublishDataLocationSelectorComponentName,
338
+ modelClassName: sails_ng_common_61.PublishDataLocationSelectorModelName,
332
339
  },
333
340
  },
334
341
  RecordMetadataRetriever: {
335
342
  '': {
336
- componentClassName: sails_ng_common_41.RecordMetadataRetrieverComponentName,
343
+ componentClassName: sails_ng_common_42.RecordMetadataRetrieverComponentName,
337
344
  },
338
345
  RecordMetadataRetrieverComponent: {
339
- componentClassName: sails_ng_common_41.RecordMetadataRetrieverComponentName,
346
+ componentClassName: sails_ng_common_42.RecordMetadataRetrieverComponentName,
340
347
  },
341
348
  },
342
349
  // Map the legacy button-like field to the new explicit V5 component so the
343
350
  // runtime can drive refresh through behaviours instead of embedded fetch code.
344
351
  PublishDataLocationRefresh: {
345
352
  '': {
346
- componentClassName: sails_ng_common_43.PublishDataLocationRefreshComponentName,
353
+ componentClassName: sails_ng_common_44.PublishDataLocationRefreshComponentName,
347
354
  },
348
355
  PublishDataLocationRefreshComponent: {
349
- componentClassName: sails_ng_common_43.PublishDataLocationRefreshComponentName,
356
+ componentClassName: sails_ng_common_44.PublishDataLocationRefreshComponentName,
350
357
  },
351
358
  },
359
+ WorkspaceSelectorField: {
360
+ '': { componentClassName: sails_ng_common_48.WorkspaceSelectorComponentName },
361
+ WorkspaceSelectorComponent: { componentClassName: sails_ng_common_48.WorkspaceSelectorComponentName },
362
+ },
363
+ WorkspaceSelectorComponent: {
364
+ '': { componentClassName: sails_ng_common_48.WorkspaceSelectorComponentName },
365
+ WorkspaceSelectorComponent: { componentClassName: sails_ng_common_48.WorkspaceSelectorComponentName },
366
+ },
352
367
  };
353
368
  const andsVocabDefaultLabelTemplate = '{{default (split notation "/" -1) notation}} - {{label}}';
354
369
  /**
@@ -378,8 +393,8 @@ function postProcessingFormConfigV4ToV5Mapping(v4Field, v4ClassNames, v5ClassNam
378
393
  v5ComponentClassName = sails_ng_common_13.ContentComponentName;
379
394
  v5ModelClassName = '';
380
395
  }
381
- if (v5ComponentClassName === sails_ng_common_31.SaveButtonComponentName && fieldDefinition?.isDelete === true) {
382
- v5ComponentClassName = sails_ng_common_35.DeleteButtonComponentName;
396
+ if (v5ComponentClassName === sails_ng_common_32.SaveButtonComponentName && fieldDefinition?.isDelete === true) {
397
+ v5ComponentClassName = sails_ng_common_36.DeleteButtonComponentName;
383
398
  }
384
399
  return {
385
400
  componentClassName: v5ComponentClassName,
@@ -395,7 +410,7 @@ function postProcessingFormConfigV4ToV5Mapping(v4Field, v4ClassNames, v5ClassNam
395
410
  *
396
411
  * The resulting FormConfig is intended to be passed to the construct visitor, as if it was loaded from form config json.
397
412
  */
398
- class MigrationV4ToV5FormConfigVisitor extends sails_ng_common_61.FormConfigVisitor {
413
+ class MigrationV4ToV5FormConfigVisitor extends sails_ng_common_63.FormConfigVisitor {
399
414
  logName = 'MigrationV4ToV5FormConfigVisitor';
400
415
  formComponentMap;
401
416
  v4FormConfig;
@@ -408,7 +423,7 @@ class MigrationV4ToV5FormConfigVisitor extends sails_ng_common_61.FormConfigVisi
408
423
  legacyInlineContainerDepth = 0;
409
424
  constructor(logger) {
410
425
  super(logger);
411
- this.formComponentMap = sails_ng_common_63.FormComponentDefinitionMap;
426
+ this.formComponentMap = sails_ng_common_65.FormComponentDefinitionMap;
412
427
  this.v4FormConfig = {
413
428
  attachmentFields: undefined,
414
429
  customAngularApp: { appName: '', appSelector: '' },
@@ -425,8 +440,8 @@ class MigrationV4ToV5FormConfigVisitor extends sails_ng_common_61.FormConfigVisi
425
440
  this.v5FormConfig = new sails_ng_common_1.FormConfig();
426
441
  this.v4FormPath = [];
427
442
  this.mostRecentRepeatableElementTemplatePath = null;
428
- this.formPathHelper = new sails_ng_common_62.FormPathHelper(logger, this);
429
- this.sharedProps = new sails_ng_common_62.PropertiesHelper();
443
+ this.formPathHelper = new sails_ng_common_64.FormPathHelper(logger, this);
444
+ this.sharedProps = new sails_ng_common_64.PropertiesHelper();
430
445
  }
431
446
  async start(options) {
432
447
  this.v4FormConfig = (0, lodash_1.cloneDeep)(this.normaliseV4FormConfig(options.data));
@@ -540,7 +555,7 @@ class MigrationV4ToV5FormConfigVisitor extends sails_ng_common_61.FormConfigVisi
540
555
  async visitContentFieldComponentDefinition(item) {
541
556
  const field = this.getV4Data();
542
557
  if (!item.config) {
543
- item.config = new sails_ng_common_22.ContentFieldComponentConfig();
558
+ item.config = new sails_ng_common_23.ContentFieldComponentConfig();
544
559
  }
545
560
  this.sharedPopulateFieldComponentConfig(item.config, field);
546
561
  if (this.isLegacyLinkValueControl(field)) {
@@ -709,6 +724,27 @@ class MigrationV4ToV5FormConfigVisitor extends sails_ng_common_61.FormConfigVisi
709
724
  }
710
725
  }
711
726
  }
727
+ async visitRelatedObjectDataFieldComponentDefinition(item) {
728
+ const field = this.getV4Data();
729
+ item.config ??= new sails_ng_common_14.RelatedObjectDataFieldComponentConfig();
730
+ this.sharedPopulateFieldComponentConfig(item.config, field);
731
+ const definition = (field?.definition ?? {});
732
+ const legacyName = typeof definition['name'] === 'string' ? definition['name'] : undefined;
733
+ item.config.dataPath = legacyName;
734
+ item.config.oidProperty = 'id';
735
+ const columns = Array.isArray(definition['columns']) ? definition['columns'] : [];
736
+ item.config.relatedFields = columns.map(column => column['property']).filter((property) => typeof property === 'string');
737
+ if (columns.length) {
738
+ const headers = columns.map(column => `<th>${String(column['label'] ?? column['property'] ?? '')}</th>`).join('');
739
+ const cells = columns.map(column => `<td>{{fields.${String(column['property'] ?? '')}}}</td>`).join('');
740
+ item.config.template = `<table><thead><tr>${headers}</tr></thead><tbody>{{#each relatedObjects}}<tr>${cells}</tr>{{/each}}</tbody></table>`;
741
+ }
742
+ if (!legacyName)
743
+ this.logger.warn(`${this.logName}: RelatedObjectDataField has no definition.name to migrate to dataPath.`);
744
+ }
745
+ async visitRelatedObjectDataFormComponentDefinition(item) {
746
+ await this.populateFormComponent(item);
747
+ }
712
748
  /* Repeatable */
713
749
  async visitRepeatableFieldComponentDefinition(item) {
714
750
  const field = this.getV4Data();
@@ -802,7 +838,7 @@ class MigrationV4ToV5FormConfigVisitor extends sails_ng_common_61.FormConfigVisi
802
838
  /* Validation Summary */
803
839
  async visitValidationSummaryFieldComponentDefinition(item) {
804
840
  const field = this.getV4Data();
805
- item.config = new sails_ng_common_39.ValidationSummaryFieldComponentConfig();
841
+ item.config = new sails_ng_common_40.ValidationSummaryFieldComponentConfig();
806
842
  this.sharedPopulateFieldComponentConfig(item.config, field);
807
843
  }
808
844
  async visitValidationSummaryFormComponentDefinition(item) {
@@ -810,7 +846,7 @@ class MigrationV4ToV5FormConfigVisitor extends sails_ng_common_61.FormConfigVisi
810
846
  }
811
847
  async visitSuggestedValidationSummaryFieldComponentDefinition(item) {
812
848
  const field = this.getV4Data();
813
- item.config = new sails_ng_common_40.SuggestedValidationSummaryFieldComponentConfig();
849
+ item.config = new sails_ng_common_41.SuggestedValidationSummaryFieldComponentConfig();
814
850
  this.sharedPopulateFieldComponentConfig(item.config, field);
815
851
  this.sharedProps.setPropOverride('enabledValidationGroups', item.config, field?.definition);
816
852
  this.sharedProps.setPropOverride('includeTabLabel', item.config, field?.definition);
@@ -823,7 +859,7 @@ class MigrationV4ToV5FormConfigVisitor extends sails_ng_common_61.FormConfigVisi
823
859
  /* Record Metadata Retriever */
824
860
  async visitRecordMetadataRetrieverFieldComponentDefinition(item) {
825
861
  const field = this.getV4Data();
826
- item.config = new sails_ng_common_42.RecordMetadataRetrieverFieldComponentConfig();
862
+ item.config = new sails_ng_common_43.RecordMetadataRetrieverFieldComponentConfig();
827
863
  this.sharedPopulateFieldComponentConfig(item.config, field);
828
864
  item.config.label = undefined;
829
865
  item.config.visible = false;
@@ -839,7 +875,7 @@ class MigrationV4ToV5FormConfigVisitor extends sails_ng_common_61.FormConfigVisi
839
875
  // inventing any model state during migration.
840
876
  async visitPublishDataLocationRefreshFieldComponentDefinition(item) {
841
877
  const field = this.getV4Data();
842
- item.config = new sails_ng_common_44.PublishDataLocationRefreshFieldComponentConfig();
878
+ item.config = new sails_ng_common_45.PublishDataLocationRefreshFieldComponentConfig();
843
879
  this.sharedPopulateFieldComponentConfig(item.config, field);
844
880
  }
845
881
  async visitPublishDataLocationRefreshFormComponentDefinition(item) {
@@ -848,7 +884,7 @@ class MigrationV4ToV5FormConfigVisitor extends sails_ng_common_61.FormConfigVisi
848
884
  /* Save Status */
849
885
  async visitSaveStatusFieldComponentDefinition(item) {
850
886
  const field = this.getV4Data();
851
- item.config = new sails_ng_common_45.SaveStatusFieldComponentConfig();
887
+ item.config = new sails_ng_common_46.SaveStatusFieldComponentConfig();
852
888
  this.sharedPopulateFieldComponentConfig(item.config, field);
853
889
  }
854
890
  async visitSaveStatusFormComponentDefinition(item) {
@@ -857,12 +893,30 @@ class MigrationV4ToV5FormConfigVisitor extends sails_ng_common_61.FormConfigVisi
857
893
  /* Integration Status */
858
894
  async visitIntegrationStatusFieldComponentDefinition(item) {
859
895
  const field = this.getV4Data();
860
- item.config = new sails_ng_common_46.IntegrationStatusFieldComponentConfig();
896
+ item.config = new sails_ng_common_47.IntegrationStatusFieldComponentConfig();
861
897
  this.sharedPopulateFieldComponentConfig(item.config, field);
862
898
  }
863
899
  async visitIntegrationStatusFormComponentDefinition(item) {
864
900
  await this.populateFormComponent(item);
865
901
  }
902
+ /* Workspace Selector */
903
+ async visitWorkspaceFieldComponentDefinition(item) {
904
+ const field = this.getV4Data();
905
+ const definition = field?.definition;
906
+ item.config = new sails_ng_common_48.WorkspaceFieldComponentConfig();
907
+ this.sharedPopulateFieldComponentConfig(item.config, field);
908
+ this.sharedProps.setPropOverride('open', item.config, definition);
909
+ this.sharedProps.setPropOverride('saveFirst', item.config, definition);
910
+ this.sharedProps.setPropOverride('displayType', item.config, definition);
911
+ this.sharedProps.setPropOverride('shouldSaveForm', item.config, definition);
912
+ this.sharedProps.setPropOverride('allowAddTemplate', item.config, definition);
913
+ this.sharedProps.setPropOverride('defaultSelection', item.config, definition);
914
+ }
915
+ async visitWorkspaceFormComponentDefinition(item) {
916
+ await this.populateFormComponent(item);
917
+ item.layout = undefined;
918
+ item.model = undefined;
919
+ }
866
920
  /* Group */
867
921
  async visitGroupFieldComponentDefinition(item) {
868
922
  const field = this.getV4Data();
@@ -935,7 +989,7 @@ class MigrationV4ToV5FormConfigVisitor extends sails_ng_common_61.FormConfigVisi
935
989
  /* Tab */
936
990
  async visitTabFieldComponentDefinition(item) {
937
991
  const field = this.getV4Data();
938
- const config = new sails_ng_common_15.TabFieldComponentConfig();
992
+ const config = new sails_ng_common_16.TabFieldComponentConfig();
939
993
  item.config = config;
940
994
  this.sharedPopulateFieldComponentConfig(item.config, field);
941
995
  const fields = field?.definition?.fields ?? [];
@@ -951,7 +1005,7 @@ class MigrationV4ToV5FormConfigVisitor extends sails_ng_common_61.FormConfigVisi
951
1005
  field.class = 'TabContentContainer';
952
1006
  // Create the instance from the v4 config
953
1007
  const formComponent = this.constructFormComponent(field, v4FormPathMore);
954
- if ((0, sails_ng_common_64.isTypeFormComponentDefinitionName)(formComponent, sails_ng_common_16.TabContentComponentName)) {
1008
+ if ((0, sails_ng_common_66.isTypeFormComponentDefinitionName)(formComponent, sails_ng_common_17.TabContentComponentName)) {
955
1009
  // Visit children
956
1010
  await this.acceptV4FormConfigPath(formComponent, this.formPathHelper.lineagePathsForTabFieldComponentDefinition(formComponent, index), v4FormPathMore);
957
1011
  // Store the instance on the item
@@ -961,7 +1015,7 @@ class MigrationV4ToV5FormConfigVisitor extends sails_ng_common_61.FormConfigVisi
961
1015
  }
962
1016
  async visitTabFieldLayoutDefinition(item) {
963
1017
  const field = this.getV4Data();
964
- item.config = new sails_ng_common_15.TabFieldLayoutConfig();
1018
+ item.config = new sails_ng_common_16.TabFieldLayoutConfig();
965
1019
  this.sharedPopulateFieldLayoutConfig(item.config, field);
966
1020
  }
967
1021
  async visitTabFormComponentDefinition(item) {
@@ -970,7 +1024,7 @@ class MigrationV4ToV5FormConfigVisitor extends sails_ng_common_61.FormConfigVisi
970
1024
  /* Tab Content */
971
1025
  async visitTabContentFieldComponentDefinition(item) {
972
1026
  const field = this.getV4Data();
973
- const config = new sails_ng_common_17.TabContentFieldComponentConfig();
1027
+ const config = new sails_ng_common_18.TabContentFieldComponentConfig();
974
1028
  item.config = config;
975
1029
  this.sharedPopulateFieldComponentConfig(item.config, field);
976
1030
  const fields = field?.definition?.fields ?? [];
@@ -1002,7 +1056,7 @@ class MigrationV4ToV5FormConfigVisitor extends sails_ng_common_61.FormConfigVisi
1002
1056
  }
1003
1057
  async visitTabContentFieldLayoutDefinition(item) {
1004
1058
  const field = this.getV4Data();
1005
- item.config = new sails_ng_common_17.TabContentFieldLayoutConfig();
1059
+ item.config = new sails_ng_common_18.TabContentFieldLayoutConfig();
1006
1060
  if (field?.definition?.label) {
1007
1061
  item.config.buttonLabel = field?.definition?.label;
1008
1062
  }
@@ -1014,7 +1068,7 @@ class MigrationV4ToV5FormConfigVisitor extends sails_ng_common_61.FormConfigVisi
1014
1068
  /* Save Button */
1015
1069
  async visitSaveButtonFieldComponentDefinition(item) {
1016
1070
  const field = this.getV4Data();
1017
- item.config = new sails_ng_common_32.SaveButtonFieldComponentConfig();
1071
+ item.config = new sails_ng_common_33.SaveButtonFieldComponentConfig();
1018
1072
  this.sharedPopulateFieldComponentConfig(item.config, field);
1019
1073
  this.sharedProps.setPropOverride('closeOnSave', item.config, {
1020
1074
  closeOnSave: field?.definition?.closeOnSave,
@@ -1024,6 +1078,7 @@ class MigrationV4ToV5FormConfigVisitor extends sails_ng_common_61.FormConfigVisi
1024
1078
  item.config.redirectLocation = this.buildLegacyUrlTemplate(item.config.redirectLocation);
1025
1079
  }
1026
1080
  this.sharedProps.setPropOverride('redirectDelaySeconds', item.config, field?.definition);
1081
+ this.sharedProps.setPropOverride('operation', item.config, field?.definition);
1027
1082
  this.sharedProps.setPropOverride('targetStep', item.config, field?.definition);
1028
1083
  this.sharedProps.setPropOverride('forceSave', item.config, field?.definition);
1029
1084
  this.sharedProps.setPropOverride('enabledValidationGroups', item.config, field?.definition);
@@ -1038,7 +1093,7 @@ class MigrationV4ToV5FormConfigVisitor extends sails_ng_common_61.FormConfigVisi
1038
1093
  /* Cancel Button */
1039
1094
  async visitCancelButtonFieldComponentDefinition(item) {
1040
1095
  const field = this.getV4Data();
1041
- item.config = new sails_ng_common_34.CancelButtonFieldComponentConfig();
1096
+ item.config = new sails_ng_common_35.CancelButtonFieldComponentConfig();
1042
1097
  this.sharedPopulateFieldComponentConfig(item.config, field);
1043
1098
  this.sharedProps.setPropOverride('confirmationMessage', item.config, field?.definition);
1044
1099
  this.sharedProps.setPropOverride('confirmationTitle', item.config, field?.definition);
@@ -1054,7 +1109,7 @@ class MigrationV4ToV5FormConfigVisitor extends sails_ng_common_61.FormConfigVisi
1054
1109
  /* Delete Button */
1055
1110
  async visitDeleteButtonFieldComponentDefinition(item) {
1056
1111
  const field = this.getV4Data();
1057
- item.config = new sails_ng_common_36.DeleteButtonFieldComponentConfig();
1112
+ item.config = new sails_ng_common_37.DeleteButtonFieldComponentConfig();
1058
1113
  this.sharedPopulateFieldComponentConfig(item.config, field);
1059
1114
  this.sharedProps.setPropOverride('closeOnDelete', item.config, {
1060
1115
  closeOnDelete: field?.definition?.closeOnSave,
@@ -1078,7 +1133,7 @@ class MigrationV4ToV5FormConfigVisitor extends sails_ng_common_61.FormConfigVisi
1078
1133
  /* Tab Nav Button */
1079
1134
  async visitTabNavButtonFieldComponentDefinition(item) {
1080
1135
  const field = this.getV4Data();
1081
- item.config = new sails_ng_common_38.TabNavButtonFieldComponentConfig();
1136
+ item.config = new sails_ng_common_39.TabNavButtonFieldComponentConfig();
1082
1137
  this.sharedPopulateFieldComponentConfig(item.config, field);
1083
1138
  this.sharedProps.setPropOverride('prevLabel', item.config, field?.definition);
1084
1139
  this.sharedProps.setPropOverride('nextLabel', item.config, field?.definition);
@@ -1091,7 +1146,7 @@ class MigrationV4ToV5FormConfigVisitor extends sails_ng_common_61.FormConfigVisi
1091
1146
  /* Text Area */
1092
1147
  async visitTextAreaFieldComponentDefinition(item) {
1093
1148
  const field = this.getV4Data();
1094
- item.config = new sails_ng_common_19.TextAreaFieldComponentConfig();
1149
+ item.config = new sails_ng_common_20.TextAreaFieldComponentConfig();
1095
1150
  this.sharedPopulateFieldComponentConfig(item.config, field);
1096
1151
  const colsRaw = field?.definition?.cols ?? field?.definition?.columns ?? undefined;
1097
1152
  const colsParsed = colsRaw === undefined ? undefined : Number.parseInt(String(colsRaw), 10);
@@ -1104,7 +1159,7 @@ class MigrationV4ToV5FormConfigVisitor extends sails_ng_common_61.FormConfigVisi
1104
1159
  }
1105
1160
  async visitTextAreaFieldModelDefinition(item) {
1106
1161
  const field = this.getV4Data();
1107
- item.config = new sails_ng_common_19.TextAreaFieldModelConfig();
1162
+ item.config = new sails_ng_common_20.TextAreaFieldModelConfig();
1108
1163
  this.sharedPopulateFieldModelConfig(item.config, field);
1109
1164
  }
1110
1165
  async visitTextAreaFormComponentDefinition(item) {
@@ -1113,7 +1168,7 @@ class MigrationV4ToV5FormConfigVisitor extends sails_ng_common_61.FormConfigVisi
1113
1168
  /* Rich Text Editor */
1114
1169
  async visitRichTextEditorFieldComponentDefinition(item) {
1115
1170
  const field = this.getV4Data();
1116
- item.config = new sails_ng_common_21.RichTextEditorFieldComponentConfig();
1171
+ item.config = new sails_ng_common_22.RichTextEditorFieldComponentConfig();
1117
1172
  this.sharedPopulateFieldComponentConfig(item.config, field);
1118
1173
  const v4ClassName = field?.class?.toString() ?? '';
1119
1174
  if (v4ClassName === 'MarkdownTextArea') {
@@ -1122,7 +1177,7 @@ class MigrationV4ToV5FormConfigVisitor extends sails_ng_common_61.FormConfigVisi
1122
1177
  }
1123
1178
  async visitRichTextEditorFieldModelDefinition(item) {
1124
1179
  const field = this.getV4Data();
1125
- item.config = new sails_ng_common_21.RichTextEditorFieldModelConfig();
1180
+ item.config = new sails_ng_common_22.RichTextEditorFieldModelConfig();
1126
1181
  this.sharedPopulateFieldModelConfig(item.config, field);
1127
1182
  }
1128
1183
  async visitRichTextEditorFormComponentDefinition(item) {
@@ -1131,7 +1186,7 @@ class MigrationV4ToV5FormConfigVisitor extends sails_ng_common_61.FormConfigVisi
1131
1186
  /* Map */
1132
1187
  async visitMapFieldComponentDefinition(item) {
1133
1188
  const field = this.getV4Data();
1134
- item.config = new sails_ng_common_52.MapFieldComponentConfig();
1189
+ item.config = new sails_ng_common_54.MapFieldComponentConfig();
1135
1190
  this.sharedPopulateFieldComponentConfig(item.config, field);
1136
1191
  const rawDefinition = (field?.definition ?? {});
1137
1192
  const leafletOptions = this.readObject(rawDefinition.leafletOptions);
@@ -1155,7 +1210,7 @@ class MigrationV4ToV5FormConfigVisitor extends sails_ng_common_61.FormConfigVisi
1155
1210
  }
1156
1211
  async visitMapFieldModelDefinition(item) {
1157
1212
  const field = this.getV4Data();
1158
- item.config = new sails_ng_common_52.MapFieldModelConfig();
1213
+ item.config = new sails_ng_common_54.MapFieldModelConfig();
1159
1214
  this.sharedPopulateFieldModelConfig(item.config, field);
1160
1215
  await this.coerceMapFeatureCollection(item.config);
1161
1216
  }
@@ -1165,7 +1220,7 @@ class MigrationV4ToV5FormConfigVisitor extends sails_ng_common_61.FormConfigVisi
1165
1220
  /* File Upload */
1166
1221
  async visitFileUploadFieldComponentDefinition(item) {
1167
1222
  const field = this.getV4Data();
1168
- item.config = new sails_ng_common_54.FileUploadFieldComponentConfig();
1223
+ item.config = new sails_ng_common_56.FileUploadFieldComponentConfig();
1169
1224
  this.sharedPopulateFieldComponentConfig(item.config, field);
1170
1225
  const restrictions = this.readObject(field?.definition?.restrictions);
1171
1226
  if (restrictions) {
@@ -1196,7 +1251,7 @@ class MigrationV4ToV5FormConfigVisitor extends sails_ng_common_61.FormConfigVisi
1196
1251
  }
1197
1252
  async visitFileUploadFieldModelDefinition(item) {
1198
1253
  const field = this.getV4Data();
1199
- item.config = new sails_ng_common_54.FileUploadFieldModelConfig();
1254
+ item.config = new sails_ng_common_56.FileUploadFieldModelConfig();
1200
1255
  this.sharedPopulateFieldModelConfig(item.config, field);
1201
1256
  }
1202
1257
  async visitFileUploadFormComponentDefinition(item) {
@@ -1205,7 +1260,7 @@ class MigrationV4ToV5FormConfigVisitor extends sails_ng_common_61.FormConfigVisi
1205
1260
  /* PDF List */
1206
1261
  async visitPDFListFieldComponentDefinition(item) {
1207
1262
  const field = this.getV4Data();
1208
- item.config = new sails_ng_common_56.PDFListFieldComponentConfig();
1263
+ item.config = new sails_ng_common_58.PDFListFieldComponentConfig();
1209
1264
  this.sharedPopulateFieldComponentConfig(item.config, field);
1210
1265
  const mappedProps = [
1211
1266
  'startsWith',
@@ -1237,7 +1292,7 @@ class MigrationV4ToV5FormConfigVisitor extends sails_ng_common_61.FormConfigVisi
1237
1292
  }
1238
1293
  async visitPDFListFieldModelDefinition(item) {
1239
1294
  const field = this.getV4Data();
1240
- item.config = new sails_ng_common_56.PDFListFieldModelConfig();
1295
+ item.config = new sails_ng_common_58.PDFListFieldModelConfig();
1241
1296
  this.sharedPopulateFieldModelConfig(item.config, field);
1242
1297
  }
1243
1298
  async visitPDFListFormComponentDefinition(item) {
@@ -1246,7 +1301,7 @@ class MigrationV4ToV5FormConfigVisitor extends sails_ng_common_61.FormConfigVisi
1246
1301
  /* Data Location */
1247
1302
  async visitDataLocationFieldComponentDefinition(item) {
1248
1303
  const field = this.getV4Data();
1249
- item.config = new sails_ng_common_58.DataLocationFieldComponentConfig();
1304
+ item.config = new sails_ng_common_60.DataLocationFieldComponentConfig();
1250
1305
  this.sharedPopulateFieldComponentConfig(item.config, field);
1251
1306
  const mappedProps = [
1252
1307
  'restrictions',
@@ -1280,7 +1335,7 @@ class MigrationV4ToV5FormConfigVisitor extends sails_ng_common_61.FormConfigVisi
1280
1335
  }
1281
1336
  async visitDataLocationFieldModelDefinition(item) {
1282
1337
  const field = this.getV4Data();
1283
- item.config = new sails_ng_common_58.DataLocationFieldModelConfig();
1338
+ item.config = new sails_ng_common_60.DataLocationFieldModelConfig();
1284
1339
  this.sharedPopulateFieldModelConfig(item.config, field);
1285
1340
  }
1286
1341
  async visitDataLocationFormComponentDefinition(item) {
@@ -1288,7 +1343,7 @@ class MigrationV4ToV5FormConfigVisitor extends sails_ng_common_61.FormConfigVisi
1288
1343
  }
1289
1344
  async visitPublishDataLocationSelectorFieldComponentDefinition(item) {
1290
1345
  const field = this.getV4Data();
1291
- item.config = new sails_ng_common_60.PublishDataLocationSelectorFieldComponentConfig();
1346
+ item.config = new sails_ng_common_62.PublishDataLocationSelectorFieldComponentConfig();
1292
1347
  this.sharedPopulateFieldComponentConfig(item.config, field);
1293
1348
  const mappedProps = [
1294
1349
  'columns',
@@ -1316,7 +1371,7 @@ class MigrationV4ToV5FormConfigVisitor extends sails_ng_common_61.FormConfigVisi
1316
1371
  }
1317
1372
  async visitPublishDataLocationSelectorFieldModelDefinition(item) {
1318
1373
  const field = this.getV4Data();
1319
- item.config = new sails_ng_common_60.PublishDataLocationSelectorFieldModelConfig();
1374
+ item.config = new sails_ng_common_62.PublishDataLocationSelectorFieldModelConfig();
1320
1375
  this.sharedPopulateFieldModelConfig(item.config, field);
1321
1376
  }
1322
1377
  async visitPublishDataLocationSelectorFormComponentDefinition(item) {
@@ -1343,7 +1398,7 @@ class MigrationV4ToV5FormConfigVisitor extends sails_ng_common_61.FormConfigVisi
1343
1398
  name: `${sourceName}-${item.name}-${propertyName}`.replace(/[^a-zA-Z0-9_-]+/g, '-'),
1344
1399
  description: `Populate ${item.name} from ${sourceName} metadata`,
1345
1400
  config: {
1346
- conditionKind: sails_ng_common_65.ExpressionsConditionKind.JSONPointer,
1401
+ conditionKind: sails_ng_common_67.ExpressionsConditionKind.JSONPointer,
1347
1402
  runOnFormReady: false,
1348
1403
  condition: `${sourcePointer}::field.value.changed`,
1349
1404
  target: 'model.value',
@@ -1380,21 +1435,27 @@ class MigrationV4ToV5FormConfigVisitor extends sails_ng_common_61.FormConfigVisi
1380
1435
  /* Checkbox Input */
1381
1436
  async visitCheckboxInputFieldComponentDefinition(item) {
1382
1437
  const field = this.getV4Data();
1383
- item.config = new sails_ng_common_27.CheckboxInputFieldComponentConfig();
1438
+ item.config = new sails_ng_common_28.CheckboxInputFieldComponentConfig();
1384
1439
  this.sharedPopulateFieldComponentConfig(item.config, field);
1385
1440
  const options = this.migrateOptions(field);
1386
1441
  this.sharedProps.setPropOverride('options', item.config, { options: options });
1442
+ if (this.isLegacyNoOptionToggle(field)) {
1443
+ item.config.booleanMode = true;
1444
+ item.config.multipleValues = false;
1445
+ }
1387
1446
  }
1388
1447
  async visitCheckboxInputFieldModelDefinition(item) {
1389
1448
  const field = this.getV4Data();
1390
- item.config = new sails_ng_common_27.CheckboxInputFieldModelConfig();
1449
+ item.config = new sails_ng_common_28.CheckboxInputFieldModelConfig();
1391
1450
  this.sharedPopulateFieldModelConfig(item.config, field);
1451
+ }
1452
+ /**
1453
+ * A legacy checkbox toggle with no options carries a boolean rather than an option value,
1454
+ * so it migrates to a single CheckboxInput control in boolean mode.
1455
+ */
1456
+ isLegacyNoOptionToggle(field) {
1392
1457
  const definition = (field?.definition ?? {});
1393
- const rawDefaultValue = definition.value ?? definition.defaultValue;
1394
- const hasOptions = Array.isArray(definition.options) && definition.options.length > 0;
1395
- if (definition.controlType === 'checkbox' && typeof rawDefaultValue === 'boolean' && !hasOptions) {
1396
- delete item.config.defaultValue;
1397
- }
1458
+ return definition.controlType === 'checkbox' && this.migrateOptions(field).length === 0;
1398
1459
  }
1399
1460
  async visitCheckboxInputFormComponentDefinition(item) {
1400
1461
  await this.populateFormComponent(item);
@@ -1402,7 +1463,7 @@ class MigrationV4ToV5FormConfigVisitor extends sails_ng_common_61.FormConfigVisi
1402
1463
  /* Checkbox Tree */
1403
1464
  async visitCheckboxTreeFieldComponentDefinition(item) {
1404
1465
  const field = this.getV4Data();
1405
- item.config = new sails_ng_common_48.CheckboxTreeFieldComponentConfig();
1466
+ item.config = new sails_ng_common_50.CheckboxTreeFieldComponentConfig();
1406
1467
  this.sharedPopulateFieldComponentConfig(item.config, field);
1407
1468
  const rawDefinition = (field?.definition ?? {});
1408
1469
  const vocabRef = String(rawDefinition.vocabRef ?? rawDefinition.vocabId ?? '').trim();
@@ -1431,7 +1492,7 @@ class MigrationV4ToV5FormConfigVisitor extends sails_ng_common_61.FormConfigVisi
1431
1492
  }
1432
1493
  async visitCheckboxTreeFieldModelDefinition(item) {
1433
1494
  const field = this.getV4Data();
1434
- item.config = new sails_ng_common_48.CheckboxTreeFieldModelConfig();
1495
+ item.config = new sails_ng_common_50.CheckboxTreeFieldModelConfig();
1435
1496
  this.sharedPopulateFieldModelConfig(item.config, field);
1436
1497
  await this.coerceCheckboxTreeDefaultValue(item.config);
1437
1498
  }
@@ -1441,7 +1502,7 @@ class MigrationV4ToV5FormConfigVisitor extends sails_ng_common_61.FormConfigVisi
1441
1502
  /* Record Selector */
1442
1503
  async visitRecordSelectorFieldComponentDefinition(item) {
1443
1504
  const field = this.getV4Data();
1444
- item.config = new sails_ng_common_50.RecordSelectorFieldComponentConfig();
1505
+ item.config = new sails_ng_common_52.RecordSelectorFieldComponentConfig();
1445
1506
  this.sharedPopulateFieldComponentConfig(item.config, field);
1446
1507
  const definition = (field?.definition ?? {});
1447
1508
  this.sharedProps.setPropOverride('columnTitle', item.config, {
@@ -1482,7 +1543,7 @@ class MigrationV4ToV5FormConfigVisitor extends sails_ng_common_61.FormConfigVisi
1482
1543
  }
1483
1544
  async visitRecordSelectorFieldModelDefinition(item) {
1484
1545
  const field = this.getV4Data();
1485
- item.config = new sails_ng_common_50.RecordSelectorFieldModelConfig();
1546
+ item.config = new sails_ng_common_52.RecordSelectorFieldModelConfig();
1486
1547
  this.sharedPopulateFieldModelConfig(item.config, field);
1487
1548
  const coerceRecordSelectorValue = (value) => {
1488
1549
  if (!value || typeof value !== 'object') {
@@ -1512,14 +1573,14 @@ class MigrationV4ToV5FormConfigVisitor extends sails_ng_common_61.FormConfigVisi
1512
1573
  /* Dropdown Input */
1513
1574
  async visitDropdownInputFieldComponentDefinition(item) {
1514
1575
  const field = this.getV4Data();
1515
- item.config = new sails_ng_common_24.DropdownInputFieldComponentConfig();
1576
+ item.config = new sails_ng_common_25.DropdownInputFieldComponentConfig();
1516
1577
  this.sharedPopulateFieldComponentConfig(item.config, field);
1517
1578
  const options = this.migrateOptions(field);
1518
1579
  this.sharedProps.setPropOverride('options', item.config, { options: options });
1519
1580
  }
1520
1581
  async visitDropdownInputFieldModelDefinition(item) {
1521
1582
  const field = this.getV4Data();
1522
- item.config = new sails_ng_common_24.DropdownInputFieldModelConfig();
1583
+ item.config = new sails_ng_common_25.DropdownInputFieldModelConfig();
1523
1584
  this.sharedPopulateFieldModelConfig(item.config, field);
1524
1585
  }
1525
1586
  async visitDropdownInputFormComponentDefinition(item) {
@@ -1528,7 +1589,7 @@ class MigrationV4ToV5FormConfigVisitor extends sails_ng_common_61.FormConfigVisi
1528
1589
  /* Typeahead Input */
1529
1590
  async visitTypeaheadInputFieldComponentDefinition(item) {
1530
1591
  const field = this.getV4Data();
1531
- const itemConfig = new sails_ng_common_26.TypeaheadInputFieldComponentConfig();
1592
+ const itemConfig = new sails_ng_common_27.TypeaheadInputFieldComponentConfig();
1532
1593
  this.sharedPopulateFieldComponentConfig(itemConfig, field);
1533
1594
  const definition = (field?.definition ?? {});
1534
1595
  const sourceType = this.resolveTypeaheadSourceType(definition);
@@ -1602,7 +1663,7 @@ class MigrationV4ToV5FormConfigVisitor extends sails_ng_common_61.FormConfigVisi
1602
1663
  }
1603
1664
  async visitTypeaheadInputFieldModelDefinition(item) {
1604
1665
  const field = this.getV4Data();
1605
- item.config = new sails_ng_common_26.TypeaheadInputFieldModelConfig();
1666
+ item.config = new sails_ng_common_27.TypeaheadInputFieldModelConfig();
1606
1667
  this.sharedPopulateFieldModelConfig(item.config, field);
1607
1668
  const definition = (field?.definition ?? {});
1608
1669
  const labelField = this.resolveLegacyLabelField(definition);
@@ -1621,14 +1682,14 @@ class MigrationV4ToV5FormConfigVisitor extends sails_ng_common_61.FormConfigVisi
1621
1682
  /* Radio Input */
1622
1683
  async visitRadioInputFieldComponentDefinition(item) {
1623
1684
  const field = this.getV4Data();
1624
- item.config = new sails_ng_common_28.RadioInputFieldComponentConfig();
1685
+ item.config = new sails_ng_common_29.RadioInputFieldComponentConfig();
1625
1686
  this.sharedPopulateFieldComponentConfig(item.config, field);
1626
1687
  const options = this.migrateOptions(field);
1627
1688
  this.sharedProps.setPropOverride('options', item.config, { options: options });
1628
1689
  }
1629
1690
  async visitRadioInputFieldModelDefinition(item) {
1630
1691
  const field = this.getV4Data();
1631
- item.config = new sails_ng_common_28.RadioInputFieldModelConfig();
1692
+ item.config = new sails_ng_common_29.RadioInputFieldModelConfig();
1632
1693
  this.sharedPopulateFieldModelConfig(item.config, field);
1633
1694
  }
1634
1695
  async visitRadioInputFormComponentDefinition(item) {
@@ -1637,12 +1698,12 @@ class MigrationV4ToV5FormConfigVisitor extends sails_ng_common_61.FormConfigVisi
1637
1698
  /* Date Input */
1638
1699
  async visitDateInputFieldComponentDefinition(item) {
1639
1700
  const field = this.getV4Data();
1640
- item.config = new sails_ng_common_30.DateInputFieldComponentConfig();
1701
+ item.config = new sails_ng_common_31.DateInputFieldComponentConfig();
1641
1702
  this.sharedPopulateFieldComponentConfig(item.config, field);
1642
1703
  }
1643
1704
  async visitDateInputFieldModelDefinition(item) {
1644
1705
  const field = this.getV4Data();
1645
- item.config = new sails_ng_common_30.DateInputFieldModelConfig();
1706
+ item.config = new sails_ng_common_31.DateInputFieldModelConfig();
1646
1707
  this.sharedPopulateFieldModelConfig(item.config, field);
1647
1708
  }
1648
1709
  async visitDateInputFormComponentDefinition(item) {
@@ -1651,7 +1712,7 @@ class MigrationV4ToV5FormConfigVisitor extends sails_ng_common_61.FormConfigVisi
1651
1712
  /* Reusable */
1652
1713
  async visitReusableFieldComponentDefinition(item) {
1653
1714
  const field = this.getV4Data();
1654
- item.config = new sails_ng_common_67.ReusableFieldComponentConfig();
1715
+ item.config = new sails_ng_common_69.ReusableFieldComponentConfig();
1655
1716
  this.sharedPopulateFieldComponentConfig(item.config, field);
1656
1717
  // Set up the reusable form config for ContributorField in the field component.
1657
1718
  const v4ClassName = field?.class?.toString() ?? '';
@@ -1832,6 +1893,23 @@ class MigrationV4ToV5FormConfigVisitor extends sails_ng_common_61.FormConfigVisi
1832
1893
  const v4CompClassName = `${field?.compClass ?? ''}`.trim();
1833
1894
  const definition = (field?.definition ?? {});
1834
1895
  const isLegacyParameterRetriever = v4ClassName === 'ParameterRetriever' || v4CompClassName === 'ParameterRetrieverComponent';
1896
+ const isLegacyRenderCompleteMarker = v4ClassName === 'Container' &&
1897
+ `${definition.id ?? ''}`.trim() === 'form-render-complete' &&
1898
+ `${definition.label ?? ''}`.trim() === 'Test' &&
1899
+ Array.isArray(definition.fields) &&
1900
+ definition.fields.some(childField => {
1901
+ if (!childField || typeof childField !== 'object') {
1902
+ return false;
1903
+ }
1904
+ const child = childField;
1905
+ const childDefinition = (child.definition ?? {});
1906
+ return ((`${child.class ?? ''}`.trim() === 'TextBlock' ||
1907
+ `${child.compClass ?? ''}`.trim() === 'TextBlockComponent') &&
1908
+ `${childDefinition.value ?? ''}`.trim() === 'will be empty');
1909
+ });
1910
+ if (isLegacyRenderCompleteMarker) {
1911
+ return true;
1912
+ }
1835
1913
  if (!isLegacyParameterRetriever) {
1836
1914
  return false;
1837
1915
  }
@@ -1887,7 +1965,7 @@ class MigrationV4ToV5FormConfigVisitor extends sails_ng_common_61.FormConfigVisi
1887
1965
  if (viewOnly) {
1888
1966
  currentData.constraints.allowModes.push('view');
1889
1967
  if (currentData.component.class) {
1890
- const viewComponentClassName = currentData.component.class === sails_ng_common_20.RichTextEditorComponentName
1968
+ const viewComponentClassName = currentData.component.class === sails_ng_common_21.RichTextEditorComponentName
1891
1969
  ? sails_ng_common_13.ContentComponentName
1892
1970
  : currentData.component.class;
1893
1971
  currentData.overrides = {
@@ -2207,11 +2285,17 @@ class MigrationV4ToV5FormConfigVisitor extends sails_ng_common_61.FormConfigVisi
2207
2285
  !this.shouldPromoteLegacyTextBlockHeadingToLayoutLabel(field));
2208
2286
  }
2209
2287
  getLegacyContributorReusableFormName(fieldDefinition) {
2288
+ const splitNames = this.parseLegacyTypeaheadBoolean(fieldDefinition.splitNames, false, 'splitNames');
2289
+ if (splitNames) {
2290
+ return 'citation-contributor-fields-with-title-family-given-group';
2291
+ }
2210
2292
  const forceLookupOnly = this.parseLegacyTypeaheadBoolean(fieldDefinition.forceLookupOnly, false, 'forceLookupOnly');
2211
2293
  return forceLookupOnly ? 'standard-contributor-fields-lookup-only-group' : 'standard-contributor-fields-group';
2212
2294
  }
2213
2295
  getLegacyContributorReusableGroupItemName(reusableFormName) {
2214
2296
  switch (reusableFormName) {
2297
+ case 'citation-contributor-fields-with-title-family-given-group':
2298
+ return 'citation_contributor_fields_with_title_family_given_group';
2215
2299
  case 'standard-contributor-fields-lookup-only-group':
2216
2300
  return 'standard_contributor_fields_lookup_only_group';
2217
2301
  case 'standard-contributor-fields-group':
@@ -2306,15 +2390,15 @@ class MigrationV4ToV5FormConfigVisitor extends sails_ng_common_61.FormConfigVisi
2306
2390
  return classTokens.includes('btn') ? migrated : `btn ${migrated}`;
2307
2391
  }
2308
2392
  shouldUseInlineLayoutInButtonBar(componentClassName) {
2309
- return (componentClassName === sails_ng_common_31.SaveButtonComponentName ||
2310
- componentClassName === sails_ng_common_33.CancelButtonComponentName ||
2311
- componentClassName === sails_ng_common_35.DeleteButtonComponentName ||
2312
- componentClassName === sails_ng_common_37.TabNavButtonComponentName);
2393
+ return (componentClassName === sails_ng_common_32.SaveButtonComponentName ||
2394
+ componentClassName === sails_ng_common_34.CancelButtonComponentName ||
2395
+ componentClassName === sails_ng_common_36.DeleteButtonComponentName ||
2396
+ componentClassName === sails_ng_common_38.TabNavButtonComponentName);
2313
2397
  }
2314
2398
  shouldUseInlineLayoutForAnchorButton(field, componentClassName) {
2315
2399
  const v4ClassName = `${field?.class ?? ''}`.trim();
2316
2400
  return (v4ClassName === 'AnchorOrButton' &&
2317
- (componentClassName === sails_ng_common_31.SaveButtonComponentName || componentClassName === sails_ng_common_13.ContentComponentName));
2401
+ (componentClassName === sails_ng_common_32.SaveButtonComponentName || componentClassName === sails_ng_common_13.ContentComponentName));
2318
2402
  }
2319
2403
  isLegacyAnchorControl(field) {
2320
2404
  if (!field) {
@@ -2617,7 +2701,12 @@ class MigrationV4ToV5FormConfigVisitor extends sails_ng_common_61.FormConfigVisi
2617
2701
  if (invalidModes.length > 0) {
2618
2702
  this.logger.warn(`${this.logName}: Map migration dropped unsupported enabledModes values at ${JSON.stringify(this.v4FormPath)}: ${JSON.stringify(invalidModes)}.`);
2619
2703
  }
2620
- return deduped.filter((mode) => mode === 'point' || mode === 'polygon' || mode === 'linestring' || mode === 'rectangle' || mode === 'circle' || mode === 'select');
2704
+ return deduped.filter((mode) => mode === 'point' ||
2705
+ mode === 'polygon' ||
2706
+ mode === 'linestring' ||
2707
+ mode === 'rectangle' ||
2708
+ mode === 'circle' ||
2709
+ mode === 'select');
2621
2710
  }
2622
2711
  readObject(input) {
2623
2712
  return input && typeof input === 'object' && !Array.isArray(input) ? input : {};
@@ -2834,7 +2923,7 @@ class MigrationV4ToV5FormConfigVisitor extends sails_ng_common_61.FormConfigVisi
2834
2923
  name: `${retrieverName}-${targetName}-${propertyName}`.replace(/[^a-zA-Z0-9_-]+/g, '-'),
2835
2924
  description: `Populate ${targetName} from ${retrieverName} metadata`,
2836
2925
  config: {
2837
- conditionKind: sails_ng_common_65.ExpressionsConditionKind.JSONPointer,
2926
+ conditionKind: sails_ng_common_67.ExpressionsConditionKind.JSONPointer,
2838
2927
  runOnFormReady: false,
2839
2928
  condition: `${this.buildNestedComponentJsonPointer(containerPointer, retrieverName)}::field.value.changed`,
2840
2929
  target: 'model.value',
@@ -2867,7 +2956,7 @@ class MigrationV4ToV5FormConfigVisitor extends sails_ng_common_61.FormConfigVisi
2867
2956
  description: 'Fetch metadata on form load using request params',
2868
2957
  config: {
2869
2958
  runOnFormReady: true,
2870
- conditionKind: sails_ng_common_65.ExpressionsConditionKind.JSONataQuery,
2959
+ conditionKind: sails_ng_common_67.ExpressionsConditionKind.JSONataQuery,
2871
2960
  condition: `$exists(runtimeContext.requestParams.${parameterName})`,
2872
2961
  operation: 'fetchMetadata',
2873
2962
  hasTemplate: true,
@@ -2881,7 +2970,7 @@ class MigrationV4ToV5FormConfigVisitor extends sails_ng_common_61.FormConfigVisi
2881
2970
  name: `fetchOnRelatedObjectSelected-${sourceName}`,
2882
2971
  description: `Fetch metadata when ${sourceName} changes`,
2883
2972
  config: {
2884
- conditionKind: sails_ng_common_65.ExpressionsConditionKind.JSONPointer,
2973
+ conditionKind: sails_ng_common_67.ExpressionsConditionKind.JSONPointer,
2885
2974
  runOnFormReady: false,
2886
2975
  condition: `${this.buildNestedComponentJsonPointer(containerPointer, sourceName)}::field.value.changed`,
2887
2976
  operation: 'fetchMetadata',
@@ -2986,7 +3075,7 @@ class MigrationV4ToV5FormConfigVisitor extends sails_ng_common_61.FormConfigVisi
2986
3075
  }
2987
3076
  async retargetPublishDataLocationSelectorExpressions(components) {
2988
3077
  for (const component of components ?? []) {
2989
- if (component.component?.class === sails_ng_common_59.PublishDataLocationSelectorComponentName) {
3078
+ if (component.component?.class === sails_ng_common_61.PublishDataLocationSelectorComponentName) {
2990
3079
  for (const expression of component.expressions ?? []) {
2991
3080
  const sourceName = this.getExpressionSourceComponentName(expression.config?.condition);
2992
3081
  if (!sourceName) {
@@ -3018,7 +3107,13 @@ class MigrationV4ToV5FormConfigVisitor extends sails_ng_common_61.FormConfigVisi
3018
3107
  if (/^[A-Za-z_][A-Za-z0-9_]*$/.test(segment)) {
3019
3108
  return `${path}.${segment}`;
3020
3109
  }
3021
- return `${path}[${JSON.stringify(segment)}]`;
3110
+ // JSONata reads `path["name"]` as a filter predicate, not a property lookup, so a
3111
+ // string literal there is simply truthy and the whole object is returned. Names that
3112
+ // are not bare identifiers (hyphens, colons) must be backtick quoted instead.
3113
+ if (!segment.includes('`')) {
3114
+ return `${path}.\`${segment}\``;
3115
+ }
3116
+ return `$lookup(${path}, ${JSON.stringify(segment)})`;
3022
3117
  }, 'event.value');
3023
3118
  }
3024
3119
  async warnOnDroppedLegacyTypeaheadProperties(definition) {
@@ -3049,4 +3144,4 @@ class MigrationV4ToV5FormConfigVisitor extends sails_ng_common_61.FormConfigVisi
3049
3144
  }
3050
3145
  }
3051
3146
  exports.MigrationV4ToV5FormConfigVisitor = MigrationV4ToV5FormConfigVisitor;
3052
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlncmF0ZS1jb25maWctdjQtdjUudmlzaXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92aXNpdG9yL21pZ3JhdGUtY29uZmlnLXY0LXY1LnZpc2l0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsbUNBQThEO0FBQzlELHNFQWUwQztBQUUxQyxzRUFNMEM7QUFDMUMsc0VBUTBDO0FBQzFDLHNFQUkwQztBQUMxQyxzRUFBb0c7QUFDcEcsc0VBTTBDO0FBQzFDLHNFQUFnSDtBQUNoSCxzRUFBMEc7QUFDMUcsc0VBQTRFO0FBQzVFLHVFQUE4RztBQUM5Ryx1RUFBOEU7QUFDOUUsdUVBQW9FO0FBRXBFLHVFQUkwQztBQUMxQyx1RUFNMEM7QUFDMUMsdUVBQWlHO0FBQ2pHLHVFQU8wQztBQUMxQyx1RUFBK0c7QUFDL0csdUVBTTBDO0FBQzFDLHVFQUEwRztBQUMxRyx1RUFNMEM7QUFDMUMsdUVBQXNIO0FBQ3RILHVFQUErRTtBQUMvRSx1RUFNMEM7QUFDMUMsdUVBQW9IO0FBQ3BILHVFQU8wQztBQUMxQyx1RUFBc0g7QUFNdEgsdUVBQW9IO0FBTXBILHVFQUE4RztBQUM5Ryx1RUFNMEM7QUFDMUMsdUVBQTRHO0FBQzVHLHVFQUkwQztBQUMxQyx1RUFBa0Y7QUFDbEYsdUVBSTBDO0FBQzFDLHVFQUFvRjtBQUNwRix1RUFJMEM7QUFDMUMsdUVBQW9GO0FBQ3BGLHVFQUkwQztBQUMxQyx1RUFBb0Y7QUFLcEYsdUVBQXlGO0FBS3pGLHVFQUFrRztBQUNsRyx1RUFJMEM7QUFDMUMsdUVBQStGO0FBQy9GLHVFQUkwQztBQUMxQyx1RUFBa0c7QUFLbEcsdUVBQWtGO0FBT2xGLHVFQUF5RjtBQUN6Rix1RUFNMEM7QUFDMUMsdUVBQWtIO0FBQ2xILHVFQU0wQztBQUMxQyx1RUFBc0g7QUFDdEgsdUVBUzBDO0FBQzFDLHVFQUFnRztBQUNoRyx1RUFNMEM7QUFDMUMsdUVBQThHO0FBQzlHLHVFQU0wQztBQUMxQyx1RUFBd0c7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
3147
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlncmF0ZS1jb25maWctdjQtdjUudmlzaXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92aXNpdG9yL21pZ3JhdGUtY29uZmlnLXY0LXY1LnZpc2l0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsbUNBQThEO0FBQzlELHNFQWUwQztBQUUxQyxzRUFNMEM7QUFDMUMsc0VBUTBDO0FBQzFDLHNFQUkwQztBQUMxQyxzRUFBb0c7QUFDcEcsc0VBTTBDO0FBQzFDLHNFQUFnSDtBQUNoSCxzRUFBMEc7QUFDMUcsc0VBQTRFO0FBQzVFLHVFQUE4RztBQUM5Ryx1RUFBOEU7QUFDOUUsdUVBQW9FO0FBRXBFLHVFQUkwQztBQUMxQyx1RUFLMEM7QUFDMUMsdUVBTTBDO0FBQzFDLHVFQUFpRztBQUNqRyx1RUFPMEM7QUFDMUMsdUVBQStHO0FBQy9HLHVFQU0wQztBQUMxQyx1RUFBMEc7QUFDMUcsdUVBTTBDO0FBQzFDLHVFQUFzSDtBQUN0SCx1RUFBK0U7QUFDL0UsdUVBTTBDO0FBQzFDLHVFQUFvSDtBQUNwSCx1RUFPMEM7QUFDMUMsdUVBQXNIO0FBTXRILHVFQUFvSDtBQU1wSCx1RUFBOEc7QUFDOUcsdUVBTTBDO0FBQzFDLHVFQUE0RztBQUM1Ryx1RUFJMEM7QUFDMUMsdUVBQWtGO0FBQ2xGLHVFQUkwQztBQUMxQyx1RUFBb0Y7QUFDcEYsdUVBSTBDO0FBQzFDLHVFQUFvRjtBQUNwRix1RUFJMEM7QUFDMUMsdUVBQW9GO0FBS3BGLHVFQUF5RjtBQUt6Rix1RUFBa0c7QUFDbEcsdUVBSTBDO0FBQzFDLHVFQUErRjtBQUMvRix1RUFJMEM7QUFDMUMsdUVBQWtHO0FBS2xHLHVFQUFrRjtBQU9sRix1RUFBeUY7QUFDekYsdUVBSzBDO0FBQzFDLHVFQU0wQztBQUMxQyx1RUFBa0g7QUFDbEgsdUVBTTBDO0FBQzFDLHVFQUFzSDtBQUN0SCx1RUFTMEM7QUFDMUMsdUVBQWdHO0FBQ2hHLHVFQU0wQztBQUMxQyx1RUFBOEc7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