geonetwork-ui 2.4.0-dev.e1bb65c4 → 2.4.0-dev.e6ae55aa

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 (268) hide show
  1. package/esm2022/libs/api/metadata-converter/src/index.mjs +2 -1
  2. package/esm2022/libs/api/metadata-converter/src/lib/gn4/atomic-operations.mjs +2 -1
  3. package/esm2022/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.mjs +1 -1
  4. package/esm2022/libs/api/repository/src/lib/gn4/gn4-repository.mjs +12 -1
  5. package/esm2022/libs/api/repository/src/lib/gn4/organizations/organizations-from-groups.service.mjs +2 -1
  6. package/esm2022/libs/api/repository/src/lib/gn4/organizations/organizations-from-metadata.service.mjs +3 -1
  7. package/esm2022/libs/api/repository/src/lib/gn4/platform/gn4-platform.mapper.mjs +2 -2
  8. package/esm2022/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.mjs +9 -5
  9. package/esm2022/libs/common/domain/src/lib/model/record/organization.model.mjs +1 -1
  10. package/esm2022/libs/common/domain/src/lib/platform.service.interface.mjs +1 -1
  11. package/esm2022/libs/common/domain/src/lib/repository/records-repository.interface.mjs +1 -1
  12. package/esm2022/libs/data-access/gn4/src/openapi/api/records.api.service.mjs +2 -6
  13. package/esm2022/libs/data-access/gn4/src/openapi/model/user.api.model.mjs +1 -1
  14. package/esm2022/libs/feature/catalog/src/index.mjs +2 -1
  15. package/esm2022/libs/feature/catalog/src/lib/feature-catalog.module.mjs +1 -1
  16. package/esm2022/libs/feature/catalog/src/lib/organisations/organisations.component.mjs +6 -6
  17. package/esm2022/libs/feature/catalog/src/lib/organization-url.token.mjs +4 -0
  18. package/esm2022/libs/feature/catalog/src/lib/records/records.service.mjs +4 -6
  19. package/esm2022/libs/feature/editor/src/lib/+state/editor.actions.mjs +2 -1
  20. package/esm2022/libs/feature/editor/src/lib/+state/editor.effects.mjs +3 -3
  21. package/esm2022/libs/feature/editor/src/lib/+state/editor.facade.mjs +7 -2
  22. package/esm2022/libs/feature/editor/src/lib/+state/editor.models.mjs +1 -1
  23. package/esm2022/libs/feature/editor/src/lib/+state/editor.reducer.mjs +7 -3
  24. package/esm2022/libs/feature/editor/src/lib/+state/editor.selectors.mjs +16 -6
  25. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.mjs +4 -2
  26. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.mjs +3 -3
  27. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/index.mjs +1 -2
  28. package/esm2022/libs/feature/editor/src/lib/components/record-form/record-form.component.mjs +11 -7
  29. package/esm2022/libs/feature/editor/src/lib/expressions.mjs +1 -1
  30. package/esm2022/libs/feature/editor/src/lib/fields.config.mjs +143 -60
  31. package/esm2022/libs/feature/editor/src/lib/models/editor-config.model.mjs +2 -0
  32. package/esm2022/libs/feature/editor/src/lib/models/index.mjs +2 -1
  33. package/esm2022/libs/feature/editor/src/lib/services/editor.service.mjs +4 -3
  34. package/esm2022/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.mjs +42 -23
  35. package/esm2022/libs/feature/record/src/lib/data-view-share/data-view-share.component.mjs +13 -5
  36. package/esm2022/libs/feature/record/src/lib/data-view-web-component/data-view-web-component.component.mjs +49 -15
  37. package/esm2022/libs/feature/record/src/lib/state/mdview.facade.mjs +6 -3
  38. package/esm2022/libs/feature/router/src/lib/default/constants.mjs +2 -1
  39. package/esm2022/libs/feature/router/src/lib/default/router.config.mjs +1 -1
  40. package/esm2022/libs/feature/router/src/lib/default/router.service.mjs +9 -2
  41. package/esm2022/libs/feature/router/src/lib/default/state/router.facade.mjs +8 -1
  42. package/esm2022/libs/feature/search/src/lib/results-table/results-table-container.component.mjs +9 -3
  43. package/esm2022/libs/feature/search/src/lib/state/search.facade.mjs +3 -2
  44. package/esm2022/libs/feature/search/src/lib/state/selectors.mjs +4 -1
  45. package/esm2022/libs/feature/search/src/lib/utils/service/fields.service.mjs +7 -3
  46. package/esm2022/libs/ui/catalog/src/lib/organisation-preview/organisation-preview.component.mjs +5 -5
  47. package/esm2022/libs/ui/catalog/src/lib/ui-catalog.module.mjs +5 -2
  48. package/esm2022/libs/ui/dataviz/src/lib/figure/figure.component.mjs +5 -8
  49. package/esm2022/libs/ui/elements/src/index.mjs +1 -2
  50. package/esm2022/libs/ui/elements/src/lib/api-card/api-card.component.mjs +3 -3
  51. package/esm2022/libs/ui/elements/src/lib/error/error.component.mjs +5 -3
  52. package/esm2022/libs/ui/elements/src/lib/metadata-info/metadata-info.component.mjs +4 -4
  53. package/esm2022/libs/ui/elements/src/lib/related-record-card/related-record-card.component.mjs +24 -5
  54. package/esm2022/libs/ui/elements/src/lib/ui-elements.module.mjs +7 -9
  55. package/esm2022/libs/ui/elements/src/lib/user-preview/user-preview.component.mjs +3 -3
  56. package/esm2022/libs/ui/layout/src/index.mjs +2 -1
  57. package/esm2022/libs/ui/layout/src/lib/max-lines/max-lines.component.mjs +71 -0
  58. package/esm2022/libs/ui/layout/src/lib/ui-layout.module.mjs +1 -1
  59. package/esm2022/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.mjs +29 -0
  60. package/esm2022/libs/ui/search/src/lib/results-table/results-table.component.mjs +15 -7
  61. package/esm2022/translations/de.json +88 -33
  62. package/esm2022/translations/en.json +59 -4
  63. package/esm2022/translations/es.json +59 -4
  64. package/esm2022/translations/fr.json +60 -5
  65. package/esm2022/translations/it.json +59 -4
  66. package/esm2022/translations/nl.json +59 -4
  67. package/esm2022/translations/pt.json +59 -4
  68. package/fesm2022/geonetwork-ui.mjs +942 -292
  69. package/fesm2022/geonetwork-ui.mjs.map +1 -1
  70. package/libs/api/metadata-converter/src/index.d.ts +1 -0
  71. package/libs/api/metadata-converter/src/index.d.ts.map +1 -1
  72. package/libs/api/metadata-converter/src/lib/gn4/atomic-operations.d.ts.map +1 -1
  73. package/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.d.ts +1 -0
  74. package/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.d.ts.map +1 -1
  75. package/libs/api/repository/src/lib/gn4/gn4-repository.d.ts +1 -0
  76. package/libs/api/repository/src/lib/gn4/gn4-repository.d.ts.map +1 -1
  77. package/libs/api/repository/src/lib/gn4/organizations/organizations-from-groups.service.d.ts.map +1 -1
  78. package/libs/api/repository/src/lib/gn4/organizations/organizations-from-metadata.service.d.ts.map +1 -1
  79. package/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.d.ts +2 -1
  80. package/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.d.ts.map +1 -1
  81. package/libs/common/domain/src/lib/model/record/organization.model.d.ts +1 -0
  82. package/libs/common/domain/src/lib/model/record/organization.model.d.ts.map +1 -1
  83. package/libs/common/domain/src/lib/platform.service.interface.d.ts +2 -1
  84. package/libs/common/domain/src/lib/platform.service.interface.d.ts.map +1 -1
  85. package/libs/common/domain/src/lib/repository/records-repository.interface.d.ts +9 -0
  86. package/libs/common/domain/src/lib/repository/records-repository.interface.d.ts.map +1 -1
  87. package/libs/data-access/gn4/src/openapi/api/records.api.service.d.ts.map +1 -1
  88. package/libs/data-access/gn4/src/openapi/model/user.api.model.d.ts +1 -1
  89. package/libs/feature/catalog/src/index.d.ts +1 -0
  90. package/libs/feature/catalog/src/index.d.ts.map +1 -1
  91. package/libs/feature/catalog/src/lib/feature-catalog.module.d.ts.map +1 -1
  92. package/libs/feature/catalog/src/lib/organisations/organisations.component.d.ts.map +1 -1
  93. package/libs/feature/catalog/src/lib/organization-url.token.d.ts +3 -0
  94. package/libs/feature/catalog/src/lib/organization-url.token.d.ts.map +1 -0
  95. package/libs/feature/catalog/src/lib/records/records.service.d.ts.map +1 -1
  96. package/libs/feature/editor/src/lib/+state/editor.actions.d.ts +5 -0
  97. package/libs/feature/editor/src/lib/+state/editor.actions.d.ts.map +1 -1
  98. package/libs/feature/editor/src/lib/+state/editor.facade.d.ts +4 -4
  99. package/libs/feature/editor/src/lib/+state/editor.facade.d.ts.map +1 -1
  100. package/libs/feature/editor/src/lib/+state/editor.models.d.ts +8 -0
  101. package/libs/feature/editor/src/lib/+state/editor.models.d.ts.map +1 -1
  102. package/libs/feature/editor/src/lib/+state/editor.reducer.d.ts +4 -3
  103. package/libs/feature/editor/src/lib/+state/editor.reducer.d.ts.map +1 -1
  104. package/libs/feature/editor/src/lib/+state/editor.selectors.d.ts +4 -8
  105. package/libs/feature/editor/src/lib/+state/editor.selectors.d.ts.map +1 -1
  106. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.d.ts.map +1 -1
  107. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.d.ts +1 -1
  108. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.d.ts.map +1 -1
  109. package/libs/feature/editor/src/lib/components/record-form/form-field/index.d.ts +0 -1
  110. package/libs/feature/editor/src/lib/components/record-form/form-field/index.d.ts.map +1 -1
  111. package/libs/feature/editor/src/lib/components/record-form/record-form.component.d.ts +5 -7
  112. package/libs/feature/editor/src/lib/components/record-form/record-form.component.d.ts.map +1 -1
  113. package/libs/feature/editor/src/lib/expressions.d.ts +1 -1
  114. package/libs/feature/editor/src/lib/expressions.d.ts.map +1 -1
  115. package/libs/feature/editor/src/lib/fields.config.d.ts +38 -2
  116. package/libs/feature/editor/src/lib/fields.config.d.ts.map +1 -1
  117. package/libs/feature/editor/src/lib/models/editor-config.model.d.ts +36 -0
  118. package/libs/feature/editor/src/lib/models/editor-config.model.d.ts.map +1 -0
  119. package/libs/feature/editor/src/lib/models/index.d.ts +1 -0
  120. package/libs/feature/editor/src/lib/models/index.d.ts.map +1 -1
  121. package/libs/feature/editor/src/lib/services/editor.service.d.ts +2 -2
  122. package/libs/feature/editor/src/lib/services/editor.service.d.ts.map +1 -1
  123. package/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.d.ts +4 -1
  124. package/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.d.ts.map +1 -1
  125. package/libs/feature/record/src/lib/data-view-share/data-view-share.component.d.ts +4 -1
  126. package/libs/feature/record/src/lib/data-view-share/data-view-share.component.d.ts.map +1 -1
  127. package/libs/feature/record/src/lib/data-view-web-component/data-view-web-component.component.d.ts +4 -1
  128. package/libs/feature/record/src/lib/data-view-web-component/data-view-web-component.component.d.ts.map +1 -1
  129. package/libs/feature/record/src/lib/state/mdview.facade.d.ts.map +1 -1
  130. package/libs/feature/router/src/lib/default/constants.d.ts +1 -0
  131. package/libs/feature/router/src/lib/default/constants.d.ts.map +1 -1
  132. package/libs/feature/router/src/lib/default/router.config.d.ts +1 -0
  133. package/libs/feature/router/src/lib/default/router.config.d.ts.map +1 -1
  134. package/libs/feature/router/src/lib/default/router.service.d.ts +1 -0
  135. package/libs/feature/router/src/lib/default/router.service.d.ts.map +1 -1
  136. package/libs/feature/router/src/lib/default/state/router.facade.d.ts +1 -0
  137. package/libs/feature/router/src/lib/default/state/router.facade.d.ts.map +1 -1
  138. package/libs/feature/search/src/lib/results-table/results-table-container.component.d.ts +3 -1
  139. package/libs/feature/search/src/lib/results-table/results-table-container.component.d.ts.map +1 -1
  140. package/libs/feature/search/src/lib/state/search.facade.d.ts +1 -0
  141. package/libs/feature/search/src/lib/state/search.facade.d.ts.map +1 -1
  142. package/libs/feature/search/src/lib/state/selectors.d.ts +1 -0
  143. package/libs/feature/search/src/lib/state/selectors.d.ts.map +1 -1
  144. package/libs/feature/search/src/lib/utils/service/fields.service.d.ts.map +1 -1
  145. package/libs/ui/catalog/src/lib/organisation-preview/organisation-preview.component.d.ts +2 -2
  146. package/libs/ui/catalog/src/lib/ui-catalog.module.d.ts +2 -1
  147. package/libs/ui/catalog/src/lib/ui-catalog.module.d.ts.map +1 -1
  148. package/libs/ui/dataviz/src/lib/figure/figure.component.d.ts +1 -2
  149. package/libs/ui/dataviz/src/lib/figure/figure.component.d.ts.map +1 -1
  150. package/libs/ui/elements/src/index.d.ts +0 -1
  151. package/libs/ui/elements/src/index.d.ts.map +1 -1
  152. package/libs/ui/elements/src/lib/error/error.component.d.ts +3 -1
  153. package/libs/ui/elements/src/lib/error/error.component.d.ts.map +1 -1
  154. package/libs/ui/elements/src/lib/related-record-card/related-record-card.component.d.ts +5 -1
  155. package/libs/ui/elements/src/lib/related-record-card/related-record-card.component.d.ts.map +1 -1
  156. package/libs/ui/elements/src/lib/ui-elements.module.d.ts +19 -19
  157. package/libs/ui/elements/src/lib/ui-elements.module.d.ts.map +1 -1
  158. package/libs/ui/layout/src/index.d.ts +1 -0
  159. package/libs/ui/layout/src/index.d.ts.map +1 -1
  160. package/libs/ui/{elements → layout}/src/lib/max-lines/max-lines.component.d.ts +2 -2
  161. package/libs/ui/layout/src/lib/max-lines/max-lines.component.d.ts.map +1 -0
  162. package/libs/ui/layout/src/lib/ui-layout.module.d.ts.map +1 -1
  163. package/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.d.ts +11 -0
  164. package/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.d.ts.map +1 -0
  165. package/libs/ui/search/src/lib/results-table/results-table.component.d.ts +4 -2
  166. package/libs/ui/search/src/lib/results-table/results-table.component.d.ts.map +1 -1
  167. package/package.json +1 -1
  168. package/src/libs/api/metadata-converter/src/index.ts +1 -0
  169. package/src/libs/api/metadata-converter/src/lib/gn4/atomic-operations.ts +1 -0
  170. package/src/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.ts +1 -0
  171. package/src/libs/api/repository/src/lib/gn4/gn4-repository.ts +20 -0
  172. package/src/libs/api/repository/src/lib/gn4/organizations/organizations-from-groups.service.ts +1 -0
  173. package/src/libs/api/repository/src/lib/gn4/organizations/organizations-from-metadata.service.ts +3 -1
  174. package/src/libs/api/repository/src/lib/gn4/platform/gn4-platform.mapper.ts +1 -1
  175. package/src/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.ts +26 -15
  176. package/src/libs/common/domain/src/lib/model/record/organization.model.ts +1 -0
  177. package/src/libs/common/domain/src/lib/platform.service.interface.ts +5 -1
  178. package/src/libs/common/domain/src/lib/repository/records-repository.interface.ts +12 -0
  179. package/src/libs/common/fixtures/src/index.ts +2 -0
  180. package/src/libs/common/fixtures/src/lib/editor/editor.fixtures.ts +156 -0
  181. package/src/libs/common/fixtures/src/lib/editor/index.ts +1 -0
  182. package/src/libs/common/fixtures/src/lib/organisations.fixture.ts +28 -0
  183. package/src/libs/data-access/datafeeder/src/openapi/model/datasetMetadata.api.model.ts +4 -0
  184. package/src/libs/data-access/datafeeder/src/openapi/model/datasetUploadStatus.api.model.ts +2 -0
  185. package/src/libs/data-access/gn4/src/openapi/api/records.api.service.ts +1 -5
  186. package/src/libs/data-access/gn4/src/openapi/model/user.api.model.ts +1 -1
  187. package/src/libs/data-access/gn4/src/spec.yaml +0 -8
  188. package/src/libs/feature/catalog/src/index.ts +1 -0
  189. package/src/libs/feature/catalog/src/lib/feature-catalog.module.ts +0 -1
  190. package/src/libs/feature/catalog/src/lib/organisations/organisations.component.html +1 -1
  191. package/src/libs/feature/catalog/src/lib/organisations/organisations.component.ts +2 -2
  192. package/src/libs/feature/catalog/src/lib/organization-url.token.ts +6 -0
  193. package/src/libs/feature/catalog/src/lib/records/records.service.ts +6 -8
  194. package/src/libs/feature/editor/src/lib/+state/editor.actions.ts +5 -0
  195. package/src/libs/feature/editor/src/lib/+state/editor.effects.ts +2 -2
  196. package/src/libs/feature/editor/src/lib/+state/editor.facade.ts +9 -1
  197. package/src/libs/feature/editor/src/lib/+state/editor.models.ts +11 -0
  198. package/src/libs/feature/editor/src/lib/+state/editor.reducer.ts +11 -5
  199. package/src/libs/feature/editor/src/lib/+state/editor.selectors.ts +22 -8
  200. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.ts +8 -6
  201. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.html +9 -9
  202. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.ts +2 -1
  203. package/src/libs/feature/editor/src/lib/components/record-form/form-field/index.ts +0 -1
  204. package/src/libs/feature/editor/src/lib/components/record-form/record-form.component.html +51 -11
  205. package/src/libs/feature/editor/src/lib/components/record-form/record-form.component.ts +15 -8
  206. package/src/libs/feature/editor/src/lib/expressions.ts +1 -1
  207. package/src/libs/feature/editor/src/lib/fields.config.ts +175 -61
  208. package/src/libs/feature/editor/src/lib/models/editor-config.model.ts +53 -0
  209. package/src/libs/feature/editor/src/lib/models/index.ts +1 -0
  210. package/src/libs/feature/editor/src/lib/services/editor.service.ts +8 -4
  211. package/src/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.ts +36 -19
  212. package/src/libs/feature/record/src/lib/data-view-share/data-view-share.component.html +6 -2
  213. package/src/libs/feature/record/src/lib/data-view-share/data-view-share.component.ts +11 -0
  214. package/src/libs/feature/record/src/lib/data-view-web-component/data-view-web-component.component.ts +59 -12
  215. package/src/libs/feature/record/src/lib/state/mdview.facade.ts +6 -2
  216. package/src/libs/feature/router/src/lib/default/constants.ts +1 -0
  217. package/src/libs/feature/router/src/lib/default/router.config.ts +1 -0
  218. package/src/libs/feature/router/src/lib/default/router.service.ts +13 -1
  219. package/src/libs/feature/router/src/lib/default/state/router.facade.ts +9 -1
  220. package/src/libs/feature/search/src/lib/results-table/results-table-container.component.html +1 -0
  221. package/src/libs/feature/search/src/lib/results-table/results-table-container.component.ts +5 -0
  222. package/src/libs/feature/search/src/lib/state/search.facade.ts +5 -0
  223. package/src/libs/feature/search/src/lib/state/selectors.ts +7 -0
  224. package/src/libs/feature/search/src/lib/utils/service/fields.service.ts +16 -2
  225. package/src/libs/ui/catalog/src/lib/organisation-preview/organisation-preview.component.html +8 -6
  226. package/src/libs/ui/catalog/src/lib/organisation-preview/organisation-preview.component.ts +2 -2
  227. package/src/libs/ui/catalog/src/lib/ui-catalog.module.ts +2 -0
  228. package/src/libs/ui/dataviz/src/lib/figure/figure.component.html +11 -3
  229. package/src/libs/ui/dataviz/src/lib/figure/figure.component.ts +3 -7
  230. package/src/libs/ui/elements/src/index.ts +0 -1
  231. package/src/libs/ui/elements/src/lib/api-card/api-card.component.html +29 -29
  232. package/src/libs/ui/elements/src/lib/error/error.component.html +30 -6
  233. package/src/libs/ui/elements/src/lib/error/error.component.ts +2 -0
  234. package/src/libs/ui/elements/src/lib/related-record-card/related-record-card.component.html +1 -1
  235. package/src/libs/ui/elements/src/lib/related-record-card/related-record-card.component.ts +22 -1
  236. package/src/libs/ui/elements/src/lib/ui-elements.module.ts +2 -4
  237. package/src/libs/ui/elements/src/lib/user-preview/user-preview.component.html +1 -1
  238. package/src/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.css +31 -0
  239. package/src/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.html +15 -0
  240. package/src/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.ts +38 -0
  241. package/src/libs/ui/layout/src/index.ts +1 -0
  242. package/src/libs/ui/{elements → layout}/src/lib/max-lines/max-lines.component.html +1 -0
  243. package/src/libs/ui/{elements → layout}/src/lib/max-lines/max-lines.component.ts +9 -5
  244. package/src/libs/ui/layout/src/lib/ui-layout.module.ts +0 -1
  245. package/src/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.css +0 -0
  246. package/src/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.html +17 -0
  247. package/src/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.ts +22 -0
  248. package/src/libs/ui/search/src/lib/results-table/results-table.component.html +9 -0
  249. package/src/libs/ui/search/src/lib/results-table/results-table.component.ts +26 -12
  250. package/translations/de.json +88 -33
  251. package/translations/en.json +59 -4
  252. package/translations/es.json +59 -4
  253. package/translations/fr.json +60 -5
  254. package/translations/it.json +59 -4
  255. package/translations/nl.json +59 -4
  256. package/translations/pt.json +59 -4
  257. package/translations/sk.json +60 -5
  258. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field.model.mjs +0 -2
  259. package/esm2022/libs/feature/editor/src/lib/models/fields.model.mjs +0 -2
  260. package/esm2022/libs/ui/elements/src/lib/max-lines/max-lines.component.mjs +0 -69
  261. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field.model.d.ts +0 -26
  262. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field.model.d.ts.map +0 -1
  263. package/libs/feature/editor/src/lib/models/fields.model.d.ts +0 -15
  264. package/libs/feature/editor/src/lib/models/fields.model.d.ts.map +0 -1
  265. package/libs/ui/elements/src/lib/max-lines/max-lines.component.d.ts.map +0 -1
  266. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field.model.ts +0 -43
  267. package/src/libs/feature/editor/src/lib/models/fields.model.ts +0 -29
  268. /package/src/libs/ui/{elements → layout}/src/lib/max-lines/max-lines.component.css +0 -0
@@ -0,0 +1,156 @@
1
+ export const EDITOR_CONFIG = () => ({
2
+ pages: [
3
+ {
4
+ labelKey: 'Resource description',
5
+ sections: [EDITOR_SECTION_ABOUT()],
6
+ },
7
+ {
8
+ labelKey: 'Resources',
9
+ sections: [EDITOR_SECTION_CLASSIFICATION()],
10
+ },
11
+ {
12
+ labelKey: 'Access and contact',
13
+ sections: [
14
+ EDITOR_SECTION_USE_AND_ACCESS_CONDITIONS(),
15
+ EDITOR_SECTION_DATA_MANAGER(),
16
+ ],
17
+ },
18
+ ],
19
+ })
20
+
21
+ export const EDITOR_SECTION_ABOUT = () => ({
22
+ labelKey: 'About the resource',
23
+ descriptionKey: 'This section describes the resource.',
24
+ hidden: false,
25
+ fields: [
26
+ EDITOR_FIELD_TITLE(),
27
+ EDITOR_FIELD_ABSTRACT(),
28
+ EDITOR_FIELD_RESOURCE_UPDATED(),
29
+ EDITOR_FIELD_RECORD_UPDATED(),
30
+ EDITOR_FIELD_UPDATE_FREQUENCY(),
31
+ EDITOR_FIELD_TEMPORAL_EXTENTS(),
32
+ ],
33
+ })
34
+
35
+ export const EDITOR_SECTION_DATA_MANAGER = () => ({
36
+ labelKey: 'Data manager',
37
+ descriptionKey: '',
38
+ hidden: false,
39
+ fields: [],
40
+ })
41
+
42
+ export const EDITOR_SECTION_USE_AND_ACCESS_CONDITIONS = () => ({
43
+ labelKey: 'Data manager',
44
+ descriptionKey: '',
45
+ hidden: false,
46
+ fields: [EDITOR_FIELD_LICENSE()],
47
+ })
48
+
49
+ export const EDITOR_SECTION_CLASSIFICATION = () => ({
50
+ labelKey: 'Classification',
51
+ descriptionKey: 'The classification has an impact on the access to the data.',
52
+ hidden: false,
53
+ fields: [EDITOR_FIELD_KEYWORDS(), EDITOR_FIELD_UNIQUE_IDENTIFIER()],
54
+ })
55
+
56
+ export const EDITOR_FIELD_TITLE = () => ({
57
+ model: 'title',
58
+ hidden: false,
59
+ value: 'Accroches vélos MEL',
60
+ formFieldConfig: {
61
+ labelKey: 'editor.record.form.field.title',
62
+ },
63
+ })
64
+
65
+ export const EDITOR_FIELD_ABSTRACT = () => ({
66
+ model: 'abstract',
67
+ hidden: false,
68
+ value: 'Abstract',
69
+ formFieldConfig: {
70
+ labelKey: 'editor.record.form.field.abstract',
71
+ },
72
+ })
73
+
74
+ export const EDITOR_FIELD_RESOURCE_UPDATED = () => ({
75
+ model: 'resourceUpdated',
76
+ hidden: false,
77
+ formFieldConfig: {
78
+ labelKey: 'editor.record.form.field.resourceUpdated',
79
+ },
80
+ })
81
+
82
+ export const EDITOR_FIELD_RECORD_UPDATED = () => ({
83
+ model: 'recordUpdated',
84
+ hidden: false,
85
+ formFieldConfig: {
86
+ labelKey: 'editor.record.form.field.recordUpdated',
87
+ locked: true,
88
+ },
89
+ value: '2024-07-16T05:18:53.000Z',
90
+ onSaveProcess: '${dateNow()}',
91
+ })
92
+
93
+ export const EDITOR_FIELD_UPDATE_FREQUENCY = () => ({
94
+ model: 'updateFrequency',
95
+ hidden: false,
96
+ formFieldConfig: {
97
+ labelKey: 'editor.record.form.field.updateFrequency',
98
+ },
99
+ value: 'unknown',
100
+ })
101
+
102
+ export const EDITOR_FIELD_TEMPORAL_EXTENTS = () => ({
103
+ model: 'temporalExtents',
104
+ hidden: false,
105
+ formFieldConfig: {
106
+ labelKey: 'editor.record.form.field.temporalExtents',
107
+ },
108
+ value: [],
109
+ })
110
+
111
+ export const EDITOR_FIELD_SPATIAL_EXTENTS = () => ({
112
+ model: 'spatialExtents',
113
+ hidden: false,
114
+ formFieldConfig: {
115
+ labelKey: 'editor.record.form.field.spatialExtents',
116
+ },
117
+ })
118
+
119
+ export const EDITOR_FIELD_KEYWORDS = () => ({
120
+ model: 'keywords',
121
+ hidden: false,
122
+ formFieldConfig: {
123
+ labelKey: 'editor.record.form.field.keywords',
124
+ },
125
+ })
126
+
127
+ export const EDITOR_FIELD_UNIQUE_IDENTIFIER = () => ({
128
+ model: 'uniqueIdentifier',
129
+ hidden: false,
130
+ formFieldConfig: {
131
+ labelKey: 'editor.record.form.field.uniqueIdentifier',
132
+ locked: true,
133
+ },
134
+ value: 'accroche_velos',
135
+ })
136
+
137
+ export const EDITOR_FIELD_LICENSE = () => ({
138
+ model: 'licenses',
139
+ hidden: false,
140
+ formFieldConfig: {
141
+ labelKey: 'editor.record.form.field.license',
142
+ locked: true,
143
+ },
144
+ })
145
+
146
+ export const EDITOR_FIELDS = () => [
147
+ EDITOR_FIELD_TITLE(),
148
+ EDITOR_FIELD_ABSTRACT(),
149
+ EDITOR_FIELD_RESOURCE_UPDATED(),
150
+ EDITOR_FIELD_RECORD_UPDATED(),
151
+ EDITOR_FIELD_UPDATE_FREQUENCY(),
152
+ EDITOR_FIELD_TEMPORAL_EXTENTS(),
153
+ EDITOR_FIELD_SPATIAL_EXTENTS(),
154
+ EDITOR_FIELD_KEYWORDS(),
155
+ EDITOR_FIELD_UNIQUE_IDENTIFIER(),
156
+ ]
@@ -0,0 +1 @@
1
+ export * from './editor.fixtures'
@@ -5,84 +5,112 @@ export const ORGANISATIONS_FIXTURE: Organization[] = deepFreeze([
5
5
  {
6
6
  name: 'I Data Org',
7
7
  description: 'one org for testing',
8
+ email: 'test@gmail.com',
9
+ website: new URL('https://my-geonetwork.org/'),
8
10
  logoUrl: new URL('https://my-geonetwork.org/logo1.png'),
9
11
  recordCount: 12,
10
12
  },
11
13
  {
12
14
  name: 'H Data Org',
13
15
  description: 'another org for testing',
16
+ email: 'test@gmail.com',
17
+ website: new URL('https://my-geonetwork.org/'),
14
18
  logoUrl: new URL('https://my-geonetwork.org/logo2.png'),
15
19
  recordCount: 15,
16
20
  },
17
21
  {
18
22
  name: 'J Data Org',
19
23
  description: 'another org for testing',
24
+ email: 'test@gmail.com',
25
+ website: new URL('https://my-geonetwork.org/'),
20
26
  logoUrl: new URL('https://my-geonetwork.org/logo3.png'),
21
27
  recordCount: 6,
22
28
  },
23
29
  {
24
30
  name: 'G Data Org',
25
31
  description: 'another org for testing',
32
+ email: 'test@gmail.com',
33
+ website: new URL('https://my-geonetwork.org/'),
26
34
  logoUrl: new URL('https://my-geonetwork.org/logo4.png'),
27
35
  recordCount: 8,
28
36
  },
29
37
  {
30
38
  name: 'B Data Org',
31
39
  description: 'another org for testing',
40
+ email: 'test@gmail.com',
41
+ website: new URL('https://my-geonetwork.org/'),
32
42
  logoUrl: new URL('https://my-geonetwork.org/logo5.png'),
33
43
  recordCount: 2,
34
44
  },
35
45
  {
36
46
  name: 'D Data Org',
37
47
  description: 'another org for testing',
48
+ email: 'test@gmail.com',
49
+ website: new URL('https://my-geonetwork.org/'),
38
50
  logoUrl: new URL('https://my-geonetwork.org/logo6.png'),
39
51
  recordCount: 17,
40
52
  },
41
53
  {
42
54
  name: 'F Data Org',
43
55
  description: 'another org for testing',
56
+ email: 'test@gmail.com',
57
+ website: new URL('https://my-geonetwork.org/'),
44
58
  logoUrl: new URL('https://my-geonetwork.org/logo7.png'),
45
59
  recordCount: 14,
46
60
  },
47
61
  {
48
62
  name: 'A Data Org',
49
63
  description: 'another org for testing',
64
+ email: 'test@gmail.com',
65
+ website: new URL('https://my-geonetwork.org/'),
50
66
  logoUrl: new URL('https://my-geonetwork.org/logo8.png'),
51
67
  recordCount: 3,
52
68
  },
53
69
  {
54
70
  name: 'C Data Org',
55
71
  description: 'another org for testing',
72
+ email: 'test@gmail.com',
73
+ website: new URL('https://my-geonetwork.org/'),
56
74
  logoUrl: new URL('https://my-geonetwork.org/logo9.png'),
57
75
  recordCount: 9,
58
76
  },
59
77
  {
60
78
  name: 'E Data Org',
61
79
  description: 'another org for testing',
80
+ email: 'test@gmail.com',
81
+ website: new URL('https://my-geonetwork.org/'),
62
82
  logoUrl: new URL('https://my-geonetwork.org/logo10.png'),
63
83
  recordCount: 1,
64
84
  },
65
85
  {
66
86
  name: 'é Data Org',
67
87
  description: 'another org for testing',
88
+ email: 'test@gmail.com',
89
+ website: new URL('https://my-geonetwork.org/'),
68
90
  logoUrl: new URL('https://my-geonetwork.org/logo10.png'),
69
91
  recordCount: 2,
70
92
  },
71
93
  {
72
94
  name: 'wizard-org',
73
95
  description: 'another org for testing',
96
+ email: 'test@gmail.com',
97
+ website: new URL('https://my-geonetwork.org/'),
74
98
  logoUrl: new URL('https://my-geonetwork.org/logo11.png'),
75
99
  recordCount: 2,
76
100
  },
77
101
  {
78
102
  name: "Université de l'Ingénierie",
79
103
  description: 'another org for testing',
104
+ email: 'test@gmail.com',
105
+ website: new URL('https://my-geonetwork.org/'),
80
106
  logoUrl: new URL('https://my-geonetwork.org/logo12.png'),
81
107
  recordCount: 2,
82
108
  },
83
109
  {
84
110
  name: 'ARS / Agence régionale de santé',
85
111
  description: 'another org for testing',
112
+ email: 'test@gmail.com',
113
+ website: new URL('https://my-geonetwork.org/'),
86
114
  logoUrl: new URL('https://my-geonetwork.org/logo12.png'),
87
115
  recordCount: 2,
88
116
  },
@@ -38,4 +38,8 @@ export interface DatasetMetadataApiModel {
38
38
  * textual description of dataset lineage
39
39
  */
40
40
  creationProcessDescription?: string
41
+ /**
42
+ * Optional, additional options for the dataset
43
+ */
44
+ options: any
41
45
  }
@@ -34,4 +34,6 @@ export interface DatasetUploadStatusApiModel {
34
34
  * detected charset
35
35
  */
36
36
  encoding?: string
37
+ format?: 'CSV' | 'SHAPEFILE'
38
+ options?: any
37
39
  }
@@ -7201,11 +7201,7 @@ export class RecordsApiService {
7201
7201
  }
7202
7202
 
7203
7203
  // to determine the Content-Type header
7204
- const consumes: string[] = [
7205
- 'application/xml',
7206
- 'application/json',
7207
- 'application/x-www-form-urlencoded',
7208
- ]
7204
+ const consumes: string[] = ['application/xml']
7209
7205
  const httpContentTypeSelected: string | undefined =
7210
7206
  this.configuration.selectHeaderContentType(consumes)
7211
7207
  if (httpContentTypeSelected !== undefined) {
@@ -21,7 +21,7 @@ export interface UserApiModel {
21
21
  emailAddresses?: Set<string>
22
22
  addresses?: Set<AddressApiModel>
23
23
  primaryAddress?: AddressApiModel
24
- organisation?: string
24
+ organization?: string
25
25
  kind?: string
26
26
  lastLoginDate?: string
27
27
  authorities?: Array<GrantedAuthorityApiModel>
@@ -1832,14 +1832,6 @@ paths:
1832
1832
  schema:
1833
1833
  type: string
1834
1834
  description: XML fragment.
1835
- application/json:
1836
- schema:
1837
- type: string
1838
- description: XML fragment.
1839
- application/x-www-form-urlencoded:
1840
- schema:
1841
- type: string
1842
- description: XML fragment.
1843
1835
  responses:
1844
1836
  default:
1845
1837
  description: default response
@@ -1,4 +1,5 @@
1
1
  export * from './lib/feature-catalog.module'
2
+ export * from './lib/organization-url.token'
2
3
  export * from './lib/sources/sources.service'
3
4
  export * from './lib/sources/sources.model'
4
5
  export * from './lib/records/records.service'
@@ -4,7 +4,6 @@ import { UiCatalogModule } from '../../../../../libs/ui/catalog/src'
4
4
  import {
5
5
  GroupsApiService,
6
6
  SearchApiService,
7
- SiteApiService,
8
7
  } from '../../../../../libs/data-access/gn4/src'
9
8
  import { CommonModule } from '@angular/common'
10
9
  import { SourceLabelComponent } from './source-label/source-label.component'
@@ -19,7 +19,7 @@
19
19
  [showContent]="!!organisation.name"
20
20
  >
21
21
  <gn-ui-organisation-preview
22
- [organisation]="organisation"
22
+ [organization]="organisation"
23
23
  [organisationUrl]="getOrganisationUrl(organisation)"
24
24
  (clickedOrganisation)="orgSelect.emit($event)"
25
25
  ></gn-ui-organisation-preview>
@@ -10,10 +10,10 @@ import {
10
10
  import { Organization } from '../../../../../../libs/common/domain/src/lib/model/record'
11
11
  import { BehaviorSubject, combineLatest, Observable } from 'rxjs'
12
12
  import { map, startWith, tap } from 'rxjs/operators'
13
- import { ORGANIZATION_URL_TOKEN } from '../feature-catalog.module'
14
13
  import { OrganizationsServiceInterface } from '../../../../../../libs/common/domain/src/lib/organizations.service.interface'
15
14
  import { SortByField } from '../../../../../../libs/common/domain/src/lib/model/search'
16
15
  import { createFuzzyFilter } from '../../../../../../libs/util/shared/src'
16
+ import { ORGANIZATION_PAGE_URL_TOKEN } from '../organization-url.token'
17
17
 
18
18
  @Component({
19
19
  selector: 'gn-ui-organisations',
@@ -28,7 +28,7 @@ export class OrganisationsComponent {
28
28
  constructor(
29
29
  private organisationsService: OrganizationsServiceInterface,
30
30
  @Optional()
31
- @Inject(ORGANIZATION_URL_TOKEN)
31
+ @Inject(ORGANIZATION_PAGE_URL_TOKEN)
32
32
  private urlTemplate: string
33
33
  ) {}
34
34
 
@@ -0,0 +1,6 @@
1
+ import { InjectionToken } from '@angular/core'
2
+
3
+ // expects the replacement key ${name}
4
+ export const ORGANIZATION_PAGE_URL_TOKEN = new InjectionToken<string>(
5
+ 'organization-page-url-token'
6
+ )
@@ -1,18 +1,16 @@
1
1
  import { Injectable } from '@angular/core'
2
- import { Observable, of } from 'rxjs'
3
- import { catchError, shareReplay } from 'rxjs/operators'
2
+ import { Observable, of, switchMap } from 'rxjs'
3
+ import { shareReplay } from 'rxjs/operators'
4
4
  import { RecordsRepositoryInterface } from '../../../../../../libs/common/domain/src/lib/repository/records-repository.interface'
5
5
 
6
6
  @Injectable({
7
7
  providedIn: 'root',
8
8
  })
9
9
  export class RecordsService {
10
- recordsCount$: Observable<number> = this.recordsRepository
11
- .getMatchesCount({})
12
- .pipe(
13
- shareReplay(1),
14
- catchError(() => of(0))
15
- )
10
+ recordsCount$: Observable<number> = of(true).pipe(
11
+ switchMap(() => this.recordsRepository.getMatchesCount({})),
12
+ shareReplay(1)
13
+ )
16
14
 
17
15
  constructor(private recordsRepository: RecordsRepositoryInterface) {}
18
16
  }
@@ -28,3 +28,8 @@ export const saveRecordFailure = createAction(
28
28
  )
29
29
 
30
30
  export const draftSaveSuccess = createAction('[Editor] Draft save success')
31
+
32
+ export const setCurrentPage = createAction(
33
+ '[Editor] Set current page',
34
+ props<{ page: number }>()
35
+ )
@@ -6,9 +6,9 @@ import * as EditorActions from './editor.actions'
6
6
  import { EditorService } from '../services/editor.service'
7
7
  import { Store } from '@ngrx/store'
8
8
  import {
9
+ selectEditorConfig,
9
10
  selectRecord,
10
11
  selectRecordAlreadySavedOnce,
11
- selectRecordFieldsConfig,
12
12
  } from './editor.selectors'
13
13
  import { RecordsRepositoryInterface } from '../../../../../../libs/common/domain/src/lib/repository/records-repository.interface'
14
14
 
@@ -24,7 +24,7 @@ export class EditorEffects {
24
24
  ofType(EditorActions.saveRecord),
25
25
  withLatestFrom(
26
26
  this.store.select(selectRecord),
27
- this.store.select(selectRecordFieldsConfig),
27
+ this.store.select(selectEditorConfig),
28
28
  this.store.select(selectRecordAlreadySavedOnce)
29
29
  ),
30
30
  switchMap(([, record, fieldsConfig, alreadySavedOnce]) =>
@@ -25,8 +25,12 @@ export class EditorFacade {
25
25
  changedSinceSave$ = this.store.pipe(
26
26
  select(EditorSelectors.selectRecordChangedSinceSave)
27
27
  )
28
- recordFields$ = this.store.pipe(select(EditorSelectors.selectRecordFields))
28
+ currentSections$ = this.store.pipe(
29
+ select(EditorSelectors.selectRecordSections)
30
+ )
29
31
  draftSaveSuccess$ = this.actions$.pipe(ofType(EditorActions.draftSaveSuccess))
32
+ currentPage$ = this.store.pipe(select(EditorSelectors.selectCurrentPage))
33
+ editorConfig$ = this.store.pipe(select(EditorSelectors.selectEditorConfig))
30
34
 
31
35
  openRecord(
32
36
  record: CatalogRecord,
@@ -45,4 +49,8 @@ export class EditorFacade {
45
49
  updateRecordField(field: string, value: unknown) {
46
50
  this.store.dispatch(EditorActions.updateRecordField({ field, value }))
47
51
  }
52
+
53
+ setCurrentPage(page: number) {
54
+ this.store.dispatch(EditorActions.setCurrentPage({ page }))
55
+ }
48
56
  }
@@ -1 +1,12 @@
1
+ import { EditorField, EditorFieldValue, EditorSection } from '../models'
2
+
1
3
  export type SaveRecordError = string
4
+
5
+ export interface EditorFieldWithValue {
6
+ config: EditorField
7
+ value: EditorFieldValue
8
+ }
9
+
10
+ export type EditorSectionWithValues = EditorSection & {
11
+ fieldsWithValues: EditorFieldWithValue[]
12
+ }
@@ -2,8 +2,8 @@ import { Action, createReducer, on } from '@ngrx/store'
2
2
  import * as EditorActions from './editor.actions'
3
3
  import { CatalogRecord } from '../../../../../../libs/common/domain/src/lib/model/record'
4
4
  import { SaveRecordError } from './editor.models'
5
- import { EditorFieldsConfig } from '../models/fields.model'
6
- import { DEFAULT_FIELDS } from '../fields.config'
5
+ import { EditorConfig } from '../models'
6
+ import { DEFAULT_CONFIGURATION } from '../fields.config'
7
7
 
8
8
  export const EDITOR_FEATURE_KEY = 'editor'
9
9
 
@@ -13,7 +13,7 @@ export const EDITOR_FEATURE_KEY = 'editor'
13
13
  * @property saving
14
14
  * @property saveError
15
15
  * @property changedSinceSave
16
- * @property fieldsConfig Configuration for the fields in the editor
16
+ * @property editorConfig Configuration for the fields in the editor
17
17
  */
18
18
  export interface EditorState {
19
19
  record: CatalogRecord | null
@@ -22,7 +22,8 @@ export interface EditorState {
22
22
  saving: boolean
23
23
  saveError: SaveRecordError | null
24
24
  changedSinceSave: boolean
25
- fieldsConfig: EditorFieldsConfig
25
+ editorConfig: EditorConfig
26
+ currentPage: number
26
27
  }
27
28
 
28
29
  export interface EditorPartialState {
@@ -36,7 +37,8 @@ export const initialEditorState: EditorState = {
36
37
  saving: false,
37
38
  saveError: null,
38
39
  changedSinceSave: false,
39
- fieldsConfig: DEFAULT_FIELDS,
40
+ editorConfig: DEFAULT_CONFIGURATION,
41
+ currentPage: 0,
40
42
  }
41
43
 
42
44
  const reducer = createReducer(
@@ -77,6 +79,10 @@ const reducer = createReducer(
77
79
  on(EditorActions.markRecordAsChanged, (state) => ({
78
80
  ...state,
79
81
  changedSinceSave: true,
82
+ })),
83
+ on(EditorActions.setCurrentPage, (state, { page }) => ({
84
+ ...state,
85
+ currentPage: page,
80
86
  }))
81
87
  )
82
88
 
@@ -1,5 +1,6 @@
1
1
  import { createFeatureSelector, createSelector } from '@ngrx/store'
2
2
  import { EDITOR_FEATURE_KEY, EditorState } from './editor.reducer'
3
+ import { EditorSectionWithValues } from './editor.models'
3
4
 
4
5
  export const selectEditorState =
5
6
  createFeatureSelector<EditorState>(EDITOR_FEATURE_KEY)
@@ -34,16 +35,29 @@ export const selectRecordAlreadySavedOnce = createSelector(
34
35
  (state: EditorState) => state.alreadySavedOnce
35
36
  )
36
37
 
37
- export const selectRecordFieldsConfig = createSelector(
38
+ export const selectEditorConfig = createSelector(
38
39
  selectEditorState,
39
- (state: EditorState) => state.fieldsConfig
40
+ (state: EditorState) => state.editorConfig
40
41
  )
41
42
 
42
- export const selectRecordFields = createSelector(
43
+ export const selectCurrentPage = createSelector(
43
44
  selectEditorState,
44
- (state: EditorState) =>
45
- state.fieldsConfig.map((fieldConfig) => ({
46
- config: fieldConfig,
47
- value: state.record?.[fieldConfig.model] ?? null,
48
- }))
45
+ (state: EditorState) => state.currentPage
46
+ )
47
+
48
+ export const selectRecordSections = createSelector(
49
+ selectEditorState,
50
+ (state: EditorState) => {
51
+ const currentPage = state.editorConfig.pages[state.currentPage]
52
+ if (!currentPage) {
53
+ return [] as EditorSectionWithValues[]
54
+ }
55
+ return currentPage.sections.map((section) => ({
56
+ ...section,
57
+ fieldsWithValues: section.fields.map((fieldConfig) => ({
58
+ config: fieldConfig,
59
+ value: state.record?.[fieldConfig.model] ?? null,
60
+ })),
61
+ })) as EditorSectionWithValues[]
62
+ }
49
63
  )
@@ -35,13 +35,15 @@ export class FormFieldKeywordsComponent {
35
35
  }
36
36
 
37
37
  autoCompleteAction = (query: string) => {
38
- return this.platformService.searchKeywords(query).pipe(
39
- map((keywords) =>
40
- keywords.map((keyword) => {
41
- return { title: keyword.label, value: keyword }
42
- })
38
+ return this.platformService
39
+ .searchKeywords(query, ['temporal', 'theme', 'other'])
40
+ .pipe(
41
+ map((keywords) =>
42
+ keywords.map((keyword) => {
43
+ return { title: keyword.label, value: keyword }
44
+ })
45
+ )
43
46
  )
44
- )
45
47
  }
46
48
 
47
49
  constructor(private platformService: PlatformServiceInterface) {}
@@ -4,8 +4,8 @@
4
4
  </ng-container>
5
5
  <ng-template #withGenericWrapper>
6
6
  <gn-ui-form-field-wrapper
7
- [label]="config.labelKey | translate"
8
- [hint]="config.hintKey | translate"
7
+ [label]="config.labelKey! | translate"
8
+ [hint]="config.hintKey! | translate"
9
9
  >
10
10
  <ng-container *ngTemplateOutlet="fieldContent"></ng-container>
11
11
  </gn-ui-form-field-wrapper>
@@ -15,14 +15,14 @@
15
15
  <ng-template #fieldContent>
16
16
  <ng-container *ngIf="isTitle">
17
17
  <div class="flex justify-between items-center gap-3">
18
- <h2
18
+ <span
19
19
  #titleInput
20
- class="grow text-3xl font-normal"
20
+ class="grow font-title text-3xl font-normal"
21
21
  [gnUiEditableLabel]="true"
22
22
  (editableLabelChanged)="formControl.setValue($event)"
23
23
  >
24
24
  {{ formControl.value }}
25
- </h2>
25
+ </span>
26
26
  <span
27
27
  class="material-symbols-outlined gn-ui-icon-small m-2 cursor-pointer"
28
28
  (click)="focusTitleInput()"
@@ -30,7 +30,7 @@
30
30
  >
31
31
  <span
32
32
  class="material-symbols-outlined gn-ui-icon-small m-2"
33
- [matTooltip]="config.hintKey | translate"
33
+ [matTooltip]="config.hintKey! | translate"
34
34
  matTooltipPosition="above"
35
35
  >
36
36
  help
@@ -41,14 +41,14 @@
41
41
  <gn-ui-form-field-rich
42
42
  class="h-[8rem]"
43
43
  [control]="formControl"
44
- [label]="config.labelKey | translate"
45
- [hint]="config.hintKey | translate"
44
+ [label]="config.labelKey! | translate"
45
+ [hint]="config.hintKey! | translate"
46
46
  ></gn-ui-form-field-rich>
47
47
  </ng-container>
48
48
  <ng-container *ngIf="isLicenses">
49
49
  <gn-ui-form-field-license
50
50
  [control]="formControl"
51
- [label]="config.labelKey | translate"
51
+ [label]="config.labelKey! | translate"
52
52
  ></gn-ui-form-field-license>
53
53
  </ng-container>
54
54
  <ng-container *ngIf="isResourceUpdated">