geonetwork-ui 2.4.0-dev.573bccd7 → 2.4.0-dev.575f30f2

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 (773) 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/gn4.field.mapper.mjs +10 -3
  4. package/esm2022/libs/api/metadata-converter/src/lib/gn4/types/index.mjs +2 -1
  5. package/esm2022/libs/api/metadata-converter/src/lib/gn4/types/keywords.model.mjs +2 -0
  6. package/esm2022/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.mjs +1 -1
  7. package/esm2022/libs/api/metadata-converter/src/lib/iso19115-3/iso19115-3.converter.mjs +5 -5
  8. package/esm2022/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.mjs +7 -4
  9. package/esm2022/libs/api/metadata-converter/src/lib/iso19115-3/write-parts.mjs +10 -7
  10. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/iso19139.converter.mjs +11 -16
  11. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/read-parts.mjs +35 -7
  12. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/utils/geometry.mjs +31 -0
  13. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/utils/keyword.mapper.mjs +1 -1
  14. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/write-parts.mjs +50 -18
  15. package/esm2022/libs/api/metadata-converter/src/lib/xml-utils.mjs +27 -4
  16. package/esm2022/libs/api/repository/src/lib/gn4/gn4-repository.mjs +111 -35
  17. package/esm2022/libs/api/repository/src/lib/gn4/organizations/organizations-from-groups.service.mjs +2 -1
  18. package/esm2022/libs/api/repository/src/lib/gn4/organizations/organizations-from-metadata.service.mjs +3 -1
  19. package/esm2022/libs/api/repository/src/lib/gn4/platform/gn4-platform.mapper.mjs +22 -4
  20. package/esm2022/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.mjs +84 -16
  21. package/esm2022/libs/common/domain/src/lib/model/record/contact.model.mjs +28 -1
  22. package/esm2022/libs/common/domain/src/lib/model/record/metadata.model.mjs +1 -1
  23. package/esm2022/libs/common/domain/src/lib/model/record/organization.model.mjs +1 -1
  24. package/esm2022/libs/common/domain/src/lib/model/thesaurus/thesaurus.model.mjs +1 -1
  25. package/esm2022/libs/common/domain/src/lib/model/user/user.model.mjs +1 -1
  26. package/esm2022/libs/common/domain/src/lib/platform.service.interface.mjs +1 -1
  27. package/esm2022/libs/common/domain/src/lib/repository/records-repository.interface.mjs +1 -1
  28. package/esm2022/libs/data-access/gn4/src/fixtures/site.fixtures.mjs +5 -5
  29. package/esm2022/libs/data-access/gn4/src/fixtures/ui.fixtures.mjs +3 -3
  30. package/esm2022/libs/data-access/gn4/src/openapi/api/records.api.service.mjs +2 -6
  31. package/esm2022/libs/data-access/gn4/src/openapi/model/user.api.model.mjs +1 -1
  32. package/esm2022/libs/feature/catalog/src/index.mjs +2 -1
  33. package/esm2022/libs/feature/catalog/src/lib/feature-catalog.module.mjs +1 -1
  34. package/esm2022/libs/feature/catalog/src/lib/organisations/organisations.component.mjs +6 -6
  35. package/esm2022/libs/feature/catalog/src/lib/organization-url.token.mjs +4 -0
  36. package/esm2022/libs/feature/catalog/src/lib/records/records.service.mjs +4 -6
  37. package/esm2022/libs/feature/dataviz/src/lib/chart-view/chart-view.component.mjs +5 -5
  38. package/esm2022/libs/feature/dataviz/src/lib/feature-dataviz.module.mjs +7 -4
  39. package/esm2022/libs/feature/dataviz/src/lib/service/data.service.mjs +1 -1
  40. package/esm2022/libs/feature/dataviz/src/lib/table-view/table-view.component.mjs +2 -2
  41. package/esm2022/libs/feature/editor/src/index.mjs +2 -1
  42. package/esm2022/libs/feature/editor/src/lib/+state/editor.actions.mjs +4 -1
  43. package/esm2022/libs/feature/editor/src/lib/+state/editor.effects.mjs +11 -4
  44. package/esm2022/libs/feature/editor/src/lib/+state/editor.facade.mjs +11 -2
  45. package/esm2022/libs/feature/editor/src/lib/+state/editor.models.mjs +1 -1
  46. package/esm2022/libs/feature/editor/src/lib/+state/editor.reducer.mjs +7 -3
  47. package/esm2022/libs/feature/editor/src/lib/+state/editor.selectors.mjs +16 -6
  48. package/esm2022/libs/feature/editor/src/lib/components/contact-card/contact-card.component.mjs +17 -0
  49. package/esm2022/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.mjs +80 -0
  50. package/esm2022/libs/feature/editor/src/lib/components/import-record/import-record.component.mjs +93 -0
  51. package/esm2022/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.mjs +71 -0
  52. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts-for-resource/form-field-contacts-for-resource.component.mjs +146 -0
  53. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-date-updated/form-field-date-updated.component.mjs +19 -0
  54. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.mjs +50 -0
  55. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-license/form-field-license.component.mjs +11 -9
  56. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.mjs +101 -0
  57. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-link-resources/form-field-online-link-resources.component.mjs +148 -0
  58. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-open-data/form-field-open-data.component.mjs +44 -0
  59. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.mjs +103 -0
  60. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-rich/form-field-rich.component.mjs +12 -16
  61. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-simple/form-field-simple.component.mjs +9 -8
  62. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.mjs +140 -5
  63. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.mjs +41 -68
  64. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.mjs +71 -55
  65. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.mjs +46 -63
  66. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/index.mjs +3 -3
  67. package/esm2022/libs/feature/editor/src/lib/components/record-form/record-form.component.mjs +13 -7
  68. package/esm2022/libs/feature/editor/src/lib/components/wizard-field/wizard-field.component.mjs +8 -8
  69. package/esm2022/libs/feature/editor/src/lib/expressions.mjs +1 -1
  70. package/esm2022/libs/feature/editor/src/lib/feature-editor.module.mjs +9 -6
  71. package/esm2022/libs/feature/editor/src/lib/fields.config.mjs +202 -51
  72. package/esm2022/libs/feature/editor/src/lib/models/editor-config.model.mjs +2 -0
  73. package/esm2022/libs/feature/editor/src/lib/models/index.mjs +2 -1
  74. package/esm2022/libs/feature/editor/src/lib/services/editor.service.mjs +19 -8
  75. package/esm2022/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-from-catalog.component.mjs +6 -6
  76. package/esm2022/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-record-preview/add-layer-record-preview.component.mjs +7 -6
  77. package/esm2022/libs/feature/map/src/lib/add-layer-from-file/add-layer-from-file.component.mjs +8 -5
  78. package/esm2022/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.mjs +6 -7
  79. package/esm2022/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.mjs +8 -7
  80. package/esm2022/libs/feature/map/src/lib/add-layer-from-wms/add-layer-from-wms.component.mjs +7 -6
  81. package/esm2022/libs/feature/map/src/lib/feature-map.module.mjs +7 -26
  82. package/esm2022/libs/feature/map/src/lib/layers-panel/layers-panel.component.mjs +29 -13
  83. package/esm2022/libs/feature/map/src/lib/style/map-style.fixtures.mjs +3 -3
  84. package/esm2022/libs/feature/map/src/lib/utils/map-utils.service.mjs +10 -5
  85. package/esm2022/libs/feature/record/src/lib/data-view/data-view.component.mjs +1 -1
  86. package/esm2022/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.mjs +42 -23
  87. package/esm2022/libs/feature/record/src/lib/data-view-share/data-view-share.component.mjs +13 -5
  88. package/esm2022/libs/feature/record/src/lib/data-view-web-component/data-view-web-component.component.mjs +49 -15
  89. package/esm2022/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.mjs +1 -1
  90. package/esm2022/libs/feature/record/src/lib/feature-record.module.mjs +7 -4
  91. package/esm2022/libs/feature/record/src/lib/map-view/map-view.component.mjs +4 -4
  92. package/esm2022/libs/feature/record/src/lib/state/mdview.facade.mjs +11 -13
  93. package/esm2022/libs/feature/router/src/lib/default/constants.mjs +2 -1
  94. package/esm2022/libs/feature/router/src/lib/default/router.config.mjs +1 -1
  95. package/esm2022/libs/feature/router/src/lib/default/router.service.mjs +9 -2
  96. package/esm2022/libs/feature/router/src/lib/default/state/router.facade.mjs +8 -1
  97. package/esm2022/libs/feature/search/src/index.mjs +2 -2
  98. package/esm2022/libs/feature/search/src/lib/feature-search.module.mjs +7 -4
  99. package/esm2022/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.mjs +4 -4
  100. package/esm2022/libs/feature/search/src/lib/results-table/results-table-container.component.mjs +89 -0
  101. package/esm2022/libs/feature/search/src/lib/state/search.facade.mjs +8 -3
  102. package/esm2022/libs/feature/search/src/lib/state/selectors.mjs +4 -1
  103. package/esm2022/libs/feature/search/src/lib/utils/service/fields.service.mjs +7 -3
  104. package/esm2022/libs/ui/catalog/src/lib/organisation-preview/organisation-preview.component.mjs +5 -5
  105. package/esm2022/libs/ui/catalog/src/lib/ui-catalog.module.mjs +5 -2
  106. package/esm2022/libs/ui/dataviz/src/lib/figure/figure.component.mjs +5 -8
  107. package/esm2022/libs/ui/dataviz/src/lib/table/table.fixtures.mjs +3 -3
  108. package/esm2022/libs/ui/elements/src/index.mjs +3 -3
  109. package/esm2022/libs/ui/elements/src/lib/api-card/api-card.component.mjs +3 -3
  110. package/esm2022/libs/ui/elements/src/lib/confirmation-dialog/confirmation-dialog.component.mjs +27 -0
  111. package/esm2022/libs/ui/elements/src/lib/download-item/download-item.component.mjs +2 -2
  112. package/esm2022/libs/ui/elements/src/lib/downloads-list/downloads-list.component.mjs +1 -1
  113. package/esm2022/libs/ui/elements/src/lib/error/error.component.mjs +5 -3
  114. package/esm2022/libs/ui/elements/src/lib/link-card/link-card.component.mjs +2 -2
  115. package/esm2022/libs/ui/elements/src/lib/markdown-editor/markdown-editor.component.mjs +6 -5
  116. package/esm2022/libs/ui/elements/src/lib/markdown-parser/markdown-parser.component.mjs +2 -2
  117. package/esm2022/libs/ui/elements/src/lib/metadata-info/metadata-info.component.mjs +9 -9
  118. package/esm2022/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.mjs +5 -11
  119. package/esm2022/libs/ui/elements/src/lib/metadata-quality-item/metadata-quality-item.component.mjs +3 -3
  120. package/esm2022/libs/ui/elements/src/lib/record-api-form/record-api-form.component.mjs +5 -5
  121. package/esm2022/libs/ui/elements/src/lib/related-record-card/related-record-card.component.mjs +24 -5
  122. package/esm2022/libs/ui/elements/src/lib/ui-elements.module.mjs +15 -11
  123. package/esm2022/libs/ui/elements/src/lib/user-preview/user-preview.component.mjs +3 -3
  124. package/esm2022/libs/ui/inputs/src/index.mjs +7 -1
  125. package/esm2022/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.mjs +79 -29
  126. package/esm2022/libs/ui/inputs/src/lib/badge/badge.component.mjs +30 -0
  127. package/esm2022/libs/ui/inputs/src/lib/button/button.component.mjs +8 -1
  128. package/esm2022/libs/ui/inputs/src/lib/date-picker/date-picker.component.mjs +11 -4
  129. package/esm2022/libs/ui/inputs/src/lib/date-range-picker/date-range-picker.component.mjs +9 -3
  130. package/esm2022/libs/ui/inputs/src/lib/editable-label/editable-label.directive.mjs +26 -24
  131. package/esm2022/libs/ui/inputs/src/lib/file-input/file-input.component.mjs +87 -0
  132. package/esm2022/libs/ui/inputs/src/lib/image-input/image-input.component.mjs +19 -15
  133. package/esm2022/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.mjs +32 -0
  134. package/esm2022/libs/ui/inputs/src/lib/text-area/text-area.component.mjs +7 -21
  135. package/esm2022/libs/ui/inputs/src/lib/text-input/text-input.component.mjs +6 -17
  136. package/esm2022/libs/ui/inputs/src/lib/ui-inputs.module.mjs +12 -15
  137. package/esm2022/libs/ui/inputs/src/lib/url-input/url-input.component.mjs +43 -0
  138. package/esm2022/libs/ui/layout/src/index.mjs +4 -1
  139. package/esm2022/libs/ui/layout/src/lib/form-field-wrapper/form-field-wrapper.component.mjs +5 -3
  140. package/esm2022/libs/ui/layout/src/lib/interactive-table/interactive-table.component.mjs +3 -3
  141. package/esm2022/libs/ui/layout/src/lib/max-lines/max-lines.component.mjs +71 -0
  142. package/esm2022/libs/ui/layout/src/lib/modal-dialog/modal-dialog.component.mjs +29 -0
  143. package/esm2022/libs/ui/layout/src/lib/sortable-list/sortable-list.component.mjs +43 -0
  144. package/esm2022/libs/ui/layout/src/lib/ui-layout.module.mjs +1 -1
  145. package/esm2022/libs/ui/map/src/lib/ui-map.module.mjs +3 -3
  146. package/esm2022/libs/ui/search/src/index.mjs +2 -1
  147. package/esm2022/libs/ui/search/src/lib/facets/fixtures/aggregations-model-response.mjs +7 -7
  148. package/esm2022/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.mjs +67 -0
  149. package/esm2022/libs/ui/search/src/lib/results-table/results-table.component.mjs +140 -0
  150. package/esm2022/libs/ui/widgets/src/index.mjs +2 -2
  151. package/esm2022/libs/ui/widgets/src/lib/popover/popover.component.mjs +68 -0
  152. package/esm2022/libs/ui/widgets/src/lib/popup-alert/popup-alert.component.mjs +5 -3
  153. package/esm2022/libs/ui/widgets/src/lib/ui-widgets.module.mjs +1 -6
  154. package/esm2022/libs/util/app-config/src/lib/fixtures.mjs +10 -10
  155. package/esm2022/libs/util/shared/src/lib/links/link-classifier.service.mjs +1 -1
  156. package/esm2022/libs/util/shared/src/lib/links/link-utils.mjs +1 -1
  157. package/esm2022/libs/util/shared/src/lib/services/theme.service.mjs +2 -1
  158. package/esm2022/libs/util/shared/src/lib/utils/bytes-convert.mjs +4 -1
  159. package/esm2022/translations/de.json +164 -38
  160. package/esm2022/translations/en.json +138 -12
  161. package/esm2022/translations/es.json +135 -9
  162. package/esm2022/translations/fr.json +150 -24
  163. package/esm2022/translations/it.json +138 -12
  164. package/esm2022/translations/nl.json +135 -9
  165. package/esm2022/translations/pt.json +135 -9
  166. package/fesm2022/geonetwork-ui.mjs +5256 -2474
  167. package/fesm2022/geonetwork-ui.mjs.map +1 -1
  168. package/libs/api/metadata-converter/src/index.d.ts +1 -0
  169. package/libs/api/metadata-converter/src/index.d.ts.map +1 -1
  170. package/libs/api/metadata-converter/src/lib/gn4/atomic-operations.d.ts.map +1 -1
  171. package/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.d.ts +3 -3
  172. package/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.d.ts.map +1 -1
  173. package/libs/api/metadata-converter/src/lib/gn4/types/index.d.ts +1 -0
  174. package/libs/api/metadata-converter/src/lib/gn4/types/index.d.ts.map +1 -1
  175. package/libs/api/metadata-converter/src/lib/gn4/types/keywords.model.d.ts +27 -0
  176. package/libs/api/metadata-converter/src/lib/gn4/types/keywords.model.d.ts.map +1 -0
  177. package/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.d.ts +1 -0
  178. package/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.d.ts.map +1 -1
  179. package/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.d.ts +2 -2
  180. package/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.d.ts.map +1 -1
  181. package/libs/api/metadata-converter/src/lib/iso19115-3/write-parts.d.ts +1 -1
  182. package/libs/api/metadata-converter/src/lib/iso19115-3/write-parts.d.ts.map +1 -1
  183. package/libs/api/metadata-converter/src/lib/iso19139/iso19139.converter.d.ts.map +1 -1
  184. package/libs/api/metadata-converter/src/lib/iso19139/read-parts.d.ts +13 -6
  185. package/libs/api/metadata-converter/src/lib/iso19139/read-parts.d.ts.map +1 -1
  186. package/libs/api/metadata-converter/src/lib/iso19139/utils/geometry.d.ts +5 -0
  187. package/libs/api/metadata-converter/src/lib/iso19139/utils/geometry.d.ts.map +1 -0
  188. package/libs/api/metadata-converter/src/lib/iso19139/utils/keyword.mapper.d.ts +1 -1
  189. package/libs/api/metadata-converter/src/lib/iso19139/utils/keyword.mapper.d.ts.map +1 -1
  190. package/libs/api/metadata-converter/src/lib/iso19139/write-parts.d.ts +11 -7
  191. package/libs/api/metadata-converter/src/lib/iso19139/write-parts.d.ts.map +1 -1
  192. package/libs/api/metadata-converter/src/lib/xml-utils.d.ts +7 -0
  193. package/libs/api/metadata-converter/src/lib/xml-utils.d.ts.map +1 -1
  194. package/libs/api/repository/src/lib/gn4/gn4-repository.d.ts +20 -8
  195. package/libs/api/repository/src/lib/gn4/gn4-repository.d.ts.map +1 -1
  196. package/libs/api/repository/src/lib/gn4/organizations/organizations-from-groups.service.d.ts.map +1 -1
  197. package/libs/api/repository/src/lib/gn4/organizations/organizations-from-metadata.service.d.ts.map +1 -1
  198. package/libs/api/repository/src/lib/gn4/platform/gn4-platform.mapper.d.ts +3 -3
  199. package/libs/api/repository/src/lib/gn4/platform/gn4-platform.mapper.d.ts.map +1 -1
  200. package/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.d.ts +30 -6
  201. package/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.d.ts.map +1 -1
  202. package/libs/common/domain/src/lib/model/record/contact.model.d.ts +1 -0
  203. package/libs/common/domain/src/lib/model/record/contact.model.d.ts.map +1 -1
  204. package/libs/common/domain/src/lib/model/record/metadata.model.d.ts +13 -14
  205. package/libs/common/domain/src/lib/model/record/metadata.model.d.ts.map +1 -1
  206. package/libs/common/domain/src/lib/model/record/organization.model.d.ts +1 -0
  207. package/libs/common/domain/src/lib/model/record/organization.model.d.ts.map +1 -1
  208. package/libs/common/domain/src/lib/model/thesaurus/thesaurus.model.d.ts +12 -5
  209. package/libs/common/domain/src/lib/model/thesaurus/thesaurus.model.d.ts.map +1 -1
  210. package/libs/common/domain/src/lib/model/user/user.model.d.ts +1 -1
  211. package/libs/common/domain/src/lib/model/user/user.model.d.ts.map +1 -1
  212. package/libs/common/domain/src/lib/platform.service.interface.d.ts +20 -3
  213. package/libs/common/domain/src/lib/platform.service.interface.d.ts.map +1 -1
  214. package/libs/common/domain/src/lib/repository/records-repository.interface.d.ts +27 -1
  215. package/libs/common/domain/src/lib/repository/records-repository.interface.d.ts.map +1 -1
  216. package/libs/data-access/gn4/src/fixtures/site.fixtures.d.ts +2 -2
  217. package/libs/data-access/gn4/src/fixtures/site.fixtures.d.ts.map +1 -1
  218. package/libs/data-access/gn4/src/fixtures/ui.fixtures.d.ts +1 -1
  219. package/libs/data-access/gn4/src/fixtures/ui.fixtures.d.ts.map +1 -1
  220. package/libs/data-access/gn4/src/openapi/api/records.api.service.d.ts.map +1 -1
  221. package/libs/data-access/gn4/src/openapi/model/user.api.model.d.ts +1 -1
  222. package/libs/feature/catalog/src/index.d.ts +1 -0
  223. package/libs/feature/catalog/src/index.d.ts.map +1 -1
  224. package/libs/feature/catalog/src/lib/feature-catalog.module.d.ts.map +1 -1
  225. package/libs/feature/catalog/src/lib/organisations/organisations.component.d.ts.map +1 -1
  226. package/libs/feature/catalog/src/lib/organization-url.token.d.ts +3 -0
  227. package/libs/feature/catalog/src/lib/organization-url.token.d.ts.map +1 -0
  228. package/libs/feature/catalog/src/lib/records/records.service.d.ts.map +1 -1
  229. package/libs/feature/dataviz/src/lib/chart-view/chart-view.component.d.ts +2 -2
  230. package/libs/feature/dataviz/src/lib/chart-view/chart-view.component.d.ts.map +1 -1
  231. package/libs/feature/dataviz/src/lib/feature-dataviz.module.d.ts +2 -1
  232. package/libs/feature/dataviz/src/lib/feature-dataviz.module.d.ts.map +1 -1
  233. package/libs/feature/dataviz/src/lib/service/data.service.d.ts +6 -6
  234. package/libs/feature/dataviz/src/lib/service/data.service.d.ts.map +1 -1
  235. package/libs/feature/dataviz/src/lib/table-view/table-view.component.d.ts +3 -3
  236. package/libs/feature/dataviz/src/lib/table-view/table-view.component.d.ts.map +1 -1
  237. package/libs/feature/editor/src/index.d.ts +1 -0
  238. package/libs/feature/editor/src/index.d.ts.map +1 -1
  239. package/libs/feature/editor/src/lib/+state/editor.actions.d.ts +7 -0
  240. package/libs/feature/editor/src/lib/+state/editor.actions.d.ts.map +1 -1
  241. package/libs/feature/editor/src/lib/+state/editor.effects.d.ts +6 -1
  242. package/libs/feature/editor/src/lib/+state/editor.effects.d.ts.map +1 -1
  243. package/libs/feature/editor/src/lib/+state/editor.facade.d.ts +6 -4
  244. package/libs/feature/editor/src/lib/+state/editor.facade.d.ts.map +1 -1
  245. package/libs/feature/editor/src/lib/+state/editor.models.d.ts +8 -0
  246. package/libs/feature/editor/src/lib/+state/editor.models.d.ts.map +1 -1
  247. package/libs/feature/editor/src/lib/+state/editor.reducer.d.ts +4 -3
  248. package/libs/feature/editor/src/lib/+state/editor.reducer.d.ts.map +1 -1
  249. package/libs/feature/editor/src/lib/+state/editor.selectors.d.ts +4 -8
  250. package/libs/feature/editor/src/lib/+state/editor.selectors.d.ts.map +1 -1
  251. package/libs/feature/editor/src/lib/components/contact-card/contact-card.component.d.ts +8 -0
  252. package/libs/feature/editor/src/lib/components/contact-card/contact-card.component.d.ts.map +1 -0
  253. package/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.d.ts +33 -0
  254. package/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.d.ts.map +1 -0
  255. package/libs/feature/editor/src/lib/components/import-record/import-record.component.d.ts +33 -0
  256. package/libs/feature/editor/src/lib/components/import-record/import-record.component.d.ts.map +1 -0
  257. package/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.d.ts +15 -0
  258. package/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.d.ts.map +1 -0
  259. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts-for-resource/form-field-contacts-for-resource.component.d.ts +41 -0
  260. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts-for-resource/form-field-contacts-for-resource.component.d.ts.map +1 -0
  261. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-date-updated/form-field-date-updated.component.d.ts +9 -0
  262. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-date-updated/form-field-date-updated.component.d.ts.map +1 -0
  263. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.d.ts +17 -0
  264. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.d.ts.map +1 -0
  265. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-license/form-field-license.component.d.ts +6 -4
  266. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-license/form-field-license.component.d.ts.map +1 -1
  267. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.d.ts +22 -0
  268. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.d.ts.map +1 -0
  269. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-link-resources/form-field-online-link-resources.component.d.ts +35 -0
  270. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-link-resources/form-field-online-link-resources.component.d.ts.map +1 -0
  271. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-open-data/form-field-open-data.component.d.ts +15 -0
  272. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-open-data/form-field-open-data.component.d.ts.map +1 -0
  273. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.d.ts +31 -0
  274. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.d.ts.map +1 -0
  275. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-rich/form-field-rich.component.d.ts +4 -6
  276. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-rich/form-field-rich.component.d.ts.map +1 -1
  277. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-simple/form-field-simple.component.d.ts +4 -3
  278. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-simple/form-field-simple.component.d.ts.map +1 -1
  279. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.d.ts +28 -0
  280. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.d.ts.map +1 -1
  281. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.d.ts +10 -16
  282. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.d.ts.map +1 -1
  283. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.d.ts +9 -9
  284. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.d.ts.map +1 -1
  285. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.d.ts +19 -25
  286. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.d.ts.map +1 -1
  287. package/libs/feature/editor/src/lib/components/record-form/form-field/index.d.ts +2 -2
  288. package/libs/feature/editor/src/lib/components/record-form/form-field/index.d.ts.map +1 -1
  289. package/libs/feature/editor/src/lib/components/record-form/record-form.component.d.ts +7 -7
  290. package/libs/feature/editor/src/lib/components/record-form/record-form.component.d.ts.map +1 -1
  291. package/libs/feature/editor/src/lib/expressions.d.ts +1 -1
  292. package/libs/feature/editor/src/lib/expressions.d.ts.map +1 -1
  293. package/libs/feature/editor/src/lib/feature-editor.module.d.ts +2 -1
  294. package/libs/feature/editor/src/lib/feature-editor.module.d.ts.map +1 -1
  295. package/libs/feature/editor/src/lib/fields.config.d.ts +54 -2
  296. package/libs/feature/editor/src/lib/fields.config.d.ts.map +1 -1
  297. package/libs/feature/editor/src/lib/models/editor-config.model.d.ts +42 -0
  298. package/libs/feature/editor/src/lib/models/editor-config.model.d.ts.map +1 -0
  299. package/libs/feature/editor/src/lib/models/index.d.ts +1 -0
  300. package/libs/feature/editor/src/lib/models/index.d.ts.map +1 -1
  301. package/libs/feature/editor/src/lib/services/editor.service.d.ts +3 -2
  302. package/libs/feature/editor/src/lib/services/editor.service.d.ts.map +1 -1
  303. package/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-from-catalog.component.d.ts +1 -1
  304. package/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-from-catalog.component.d.ts.map +1 -1
  305. package/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-record-preview/add-layer-record-preview.component.d.ts +6 -6
  306. package/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-record-preview/add-layer-record-preview.component.d.ts.map +1 -1
  307. package/libs/feature/map/src/lib/add-layer-from-file/add-layer-from-file.component.d.ts +1 -1
  308. package/libs/feature/map/src/lib/add-layer-from-file/add-layer-from-file.component.d.ts.map +1 -1
  309. package/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.d.ts +1 -1
  310. package/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.d.ts.map +1 -1
  311. package/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.d.ts +1 -1
  312. package/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.d.ts.map +1 -1
  313. package/libs/feature/map/src/lib/add-layer-from-wms/add-layer-from-wms.component.d.ts +1 -1
  314. package/libs/feature/map/src/lib/add-layer-from-wms/add-layer-from-wms.component.d.ts.map +1 -1
  315. package/libs/feature/map/src/lib/feature-map.module.d.ts +16 -21
  316. package/libs/feature/map/src/lib/feature-map.module.d.ts.map +1 -1
  317. package/libs/feature/map/src/lib/layers-panel/layers-panel.component.d.ts +1 -1
  318. package/libs/feature/map/src/lib/layers-panel/layers-panel.component.d.ts.map +1 -1
  319. package/libs/feature/map/src/lib/style/map-style.fixtures.d.ts +2 -2
  320. package/libs/feature/map/src/lib/style/map-style.fixtures.d.ts.map +1 -1
  321. package/libs/feature/map/src/lib/utils/map-utils.service.d.ts.map +1 -1
  322. package/libs/feature/record/src/lib/data-view/data-view.component.d.ts +3 -3
  323. package/libs/feature/record/src/lib/data-view/data-view.component.d.ts.map +1 -1
  324. package/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.d.ts +4 -1
  325. package/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.d.ts.map +1 -1
  326. package/libs/feature/record/src/lib/data-view-share/data-view-share.component.d.ts +4 -1
  327. package/libs/feature/record/src/lib/data-view-share/data-view-share.component.d.ts.map +1 -1
  328. package/libs/feature/record/src/lib/data-view-web-component/data-view-web-component.component.d.ts +4 -1
  329. package/libs/feature/record/src/lib/data-view-web-component/data-view-web-component.component.d.ts.map +1 -1
  330. package/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.d.ts +2 -2
  331. package/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.d.ts.map +1 -1
  332. package/libs/feature/record/src/lib/feature-record.module.d.ts +2 -1
  333. package/libs/feature/record/src/lib/feature-record.module.d.ts.map +1 -1
  334. package/libs/feature/record/src/lib/map-view/map-view.component.d.ts +2 -2
  335. package/libs/feature/record/src/lib/map-view/map-view.component.d.ts.map +1 -1
  336. package/libs/feature/record/src/lib/state/mdview.facade.d.ts +7 -7
  337. package/libs/feature/record/src/lib/state/mdview.facade.d.ts.map +1 -1
  338. package/libs/feature/router/src/lib/default/constants.d.ts +1 -0
  339. package/libs/feature/router/src/lib/default/constants.d.ts.map +1 -1
  340. package/libs/feature/router/src/lib/default/router.config.d.ts +1 -0
  341. package/libs/feature/router/src/lib/default/router.config.d.ts.map +1 -1
  342. package/libs/feature/router/src/lib/default/router.service.d.ts +1 -0
  343. package/libs/feature/router/src/lib/default/router.service.d.ts.map +1 -1
  344. package/libs/feature/router/src/lib/default/state/router.facade.d.ts +1 -0
  345. package/libs/feature/router/src/lib/default/state/router.facade.d.ts.map +1 -1
  346. package/libs/feature/search/src/index.d.ts +1 -1
  347. package/libs/feature/search/src/index.d.ts.map +1 -1
  348. package/libs/feature/search/src/lib/feature-search.module.d.ts +2 -1
  349. package/libs/feature/search/src/lib/feature-search.module.d.ts.map +1 -1
  350. package/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.d.ts.map +1 -1
  351. package/libs/feature/search/src/lib/results-table/results-table-container.component.d.ts +36 -0
  352. package/libs/feature/search/src/lib/results-table/results-table-container.component.d.ts.map +1 -0
  353. package/libs/feature/search/src/lib/state/search.facade.d.ts +2 -0
  354. package/libs/feature/search/src/lib/state/search.facade.d.ts.map +1 -1
  355. package/libs/feature/search/src/lib/state/selectors.d.ts +1 -0
  356. package/libs/feature/search/src/lib/state/selectors.d.ts.map +1 -1
  357. package/libs/feature/search/src/lib/utils/service/fields.service.d.ts.map +1 -1
  358. package/libs/ui/catalog/src/lib/organisation-preview/organisation-preview.component.d.ts +2 -2
  359. package/libs/ui/catalog/src/lib/ui-catalog.module.d.ts +2 -1
  360. package/libs/ui/catalog/src/lib/ui-catalog.module.d.ts.map +1 -1
  361. package/libs/ui/dataviz/src/lib/figure/figure.component.d.ts +1 -2
  362. package/libs/ui/dataviz/src/lib/figure/figure.component.d.ts.map +1 -1
  363. package/libs/ui/dataviz/src/lib/table/table.fixtures.d.ts +2 -2
  364. package/libs/ui/dataviz/src/lib/table/table.fixtures.d.ts.map +1 -1
  365. package/libs/ui/elements/src/index.d.ts +2 -2
  366. package/libs/ui/elements/src/index.d.ts.map +1 -1
  367. package/libs/ui/elements/src/lib/confirmation-dialog/confirmation-dialog.component.d.ts +18 -0
  368. package/libs/ui/elements/src/lib/confirmation-dialog/confirmation-dialog.component.d.ts.map +1 -0
  369. package/libs/ui/elements/src/lib/download-item/download-item.component.d.ts +2 -2
  370. package/libs/ui/elements/src/lib/download-item/download-item.component.d.ts.map +1 -1
  371. package/libs/ui/elements/src/lib/downloads-list/downloads-list.component.d.ts +7 -7
  372. package/libs/ui/elements/src/lib/downloads-list/downloads-list.component.d.ts.map +1 -1
  373. package/libs/ui/elements/src/lib/error/error.component.d.ts +3 -1
  374. package/libs/ui/elements/src/lib/error/error.component.d.ts.map +1 -1
  375. package/libs/ui/elements/src/lib/link-card/link-card.component.d.ts +2 -2
  376. package/libs/ui/elements/src/lib/link-card/link-card.component.d.ts.map +1 -1
  377. package/libs/ui/elements/src/lib/markdown-editor/markdown-editor.component.d.ts +2 -2
  378. package/libs/ui/elements/src/lib/markdown-editor/markdown-editor.component.d.ts.map +1 -1
  379. package/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.d.ts +0 -3
  380. package/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.d.ts.map +1 -1
  381. package/libs/ui/elements/src/lib/record-api-form/record-api-form.component.d.ts +1 -1
  382. package/libs/ui/elements/src/lib/related-record-card/related-record-card.component.d.ts +5 -1
  383. package/libs/ui/elements/src/lib/related-record-card/related-record-card.component.d.ts.map +1 -1
  384. package/libs/ui/elements/src/lib/ui-elements.module.d.ts +18 -16
  385. package/libs/ui/elements/src/lib/ui-elements.module.d.ts.map +1 -1
  386. package/libs/ui/inputs/src/index.d.ts +6 -0
  387. package/libs/ui/inputs/src/index.d.ts.map +1 -1
  388. package/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.d.ts +15 -4
  389. package/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.d.ts.map +1 -1
  390. package/libs/ui/inputs/src/lib/badge/badge.component.d.ts +11 -0
  391. package/libs/ui/inputs/src/lib/badge/badge.component.d.ts.map +1 -0
  392. package/libs/ui/inputs/src/lib/button/button.component.d.ts +1 -1
  393. package/libs/ui/inputs/src/lib/button/button.component.d.ts.map +1 -1
  394. package/libs/ui/inputs/src/lib/date-picker/date-picker.component.d.ts.map +1 -1
  395. package/libs/ui/inputs/src/lib/date-range-picker/date-range-picker.component.d.ts.map +1 -1
  396. package/libs/ui/inputs/src/lib/editable-label/editable-label.directive.d.ts +5 -3
  397. package/libs/ui/inputs/src/lib/editable-label/editable-label.directive.d.ts.map +1 -1
  398. package/libs/ui/inputs/src/lib/file-input/file-input.component.d.ts +24 -0
  399. package/libs/ui/inputs/src/lib/file-input/file-input.component.d.ts.map +1 -0
  400. package/libs/ui/inputs/src/lib/image-input/image-input.component.d.ts +4 -5
  401. package/libs/ui/inputs/src/lib/image-input/image-input.component.d.ts.map +1 -1
  402. package/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.d.ts +16 -0
  403. package/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.d.ts.map +1 -0
  404. package/libs/ui/inputs/src/lib/text-area/text-area.component.d.ts +0 -4
  405. package/libs/ui/inputs/src/lib/text-area/text-area.component.d.ts.map +1 -1
  406. package/libs/ui/inputs/src/lib/text-input/text-input.component.d.ts +2 -4
  407. package/libs/ui/inputs/src/lib/text-input/text-input.component.d.ts.map +1 -1
  408. package/libs/ui/inputs/src/lib/ui-inputs.module.d.ts +34 -35
  409. package/libs/ui/inputs/src/lib/ui-inputs.module.d.ts.map +1 -1
  410. package/libs/ui/inputs/src/lib/url-input/url-input.component.d.ts +18 -0
  411. package/libs/ui/inputs/src/lib/url-input/url-input.component.d.ts.map +1 -0
  412. package/libs/ui/layout/src/index.d.ts +3 -0
  413. package/libs/ui/layout/src/index.d.ts.map +1 -1
  414. package/libs/ui/layout/src/lib/form-field-wrapper/form-field-wrapper.component.d.ts +2 -2
  415. package/libs/ui/layout/src/lib/form-field-wrapper/form-field-wrapper.component.d.ts.map +1 -1
  416. package/libs/ui/layout/src/lib/interactive-table/interactive-table-column/interactive-table-column.component.d.ts +1 -1
  417. package/libs/ui/{elements → layout}/src/lib/max-lines/max-lines.component.d.ts +2 -2
  418. package/libs/ui/layout/src/lib/max-lines/max-lines.component.d.ts.map +1 -0
  419. package/libs/ui/layout/src/lib/modal-dialog/modal-dialog.component.d.ts +20 -0
  420. package/libs/ui/layout/src/lib/modal-dialog/modal-dialog.component.d.ts.map +1 -0
  421. package/libs/ui/layout/src/lib/sortable-list/sortable-list.component.d.ts +14 -0
  422. package/libs/ui/layout/src/lib/sortable-list/sortable-list.component.d.ts.map +1 -0
  423. package/libs/ui/layout/src/lib/ui-layout.module.d.ts.map +1 -1
  424. package/libs/ui/search/src/index.d.ts +1 -0
  425. package/libs/ui/search/src/index.d.ts.map +1 -1
  426. package/libs/ui/search/src/lib/facets/fixtures/aggregations-model-response.d.ts +3 -3
  427. package/libs/ui/search/src/lib/facets/fixtures/aggregations-model-response.d.ts.map +1 -1
  428. package/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.d.ts +20 -0
  429. package/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.d.ts.map +1 -0
  430. package/libs/ui/search/src/lib/results-table/results-table.component.d.ts +36 -0
  431. package/libs/ui/search/src/lib/results-table/results-table.component.d.ts.map +1 -0
  432. package/libs/ui/widgets/src/index.d.ts +1 -1
  433. package/libs/ui/widgets/src/index.d.ts.map +1 -1
  434. package/libs/ui/widgets/src/lib/popover/popover.component.d.ts +19 -0
  435. package/libs/ui/widgets/src/lib/popover/popover.component.d.ts.map +1 -0
  436. package/libs/ui/widgets/src/lib/popup-alert/popup-alert.component.d.ts +1 -1
  437. package/libs/ui/widgets/src/lib/popup-alert/popup-alert.component.d.ts.map +1 -1
  438. package/libs/ui/widgets/src/lib/ui-widgets.module.d.ts +10 -11
  439. package/libs/ui/widgets/src/lib/ui-widgets.module.d.ts.map +1 -1
  440. package/libs/util/app-config/src/lib/fixtures.d.ts +8 -8
  441. package/libs/util/app-config/src/lib/fixtures.d.ts.map +1 -1
  442. package/libs/util/shared/src/lib/links/link-classifier.service.d.ts +3 -3
  443. package/libs/util/shared/src/lib/links/link-classifier.service.d.ts.map +1 -1
  444. package/libs/util/shared/src/lib/links/link-utils.d.ts +6 -6
  445. package/libs/util/shared/src/lib/links/link-utils.d.ts.map +1 -1
  446. package/libs/util/shared/src/lib/services/theme.service.d.ts.map +1 -1
  447. package/libs/util/shared/src/lib/utils/bytes-convert.d.ts +2 -1
  448. package/libs/util/shared/src/lib/utils/bytes-convert.d.ts.map +1 -1
  449. package/package.json +1 -1
  450. package/src/libs/api/metadata-converter/src/index.ts +1 -0
  451. package/src/libs/api/metadata-converter/src/lib/fixtures/generic.records.ts +7 -2
  452. package/src/libs/api/metadata-converter/src/lib/fixtures/geo2france.records.ts +6 -2
  453. package/src/libs/api/metadata-converter/src/lib/fixtures/geocat-ch.records.ts +38 -13
  454. package/src/libs/api/metadata-converter/src/lib/fixtures/metawal.records.ts +6 -2
  455. package/src/libs/api/metadata-converter/src/lib/gn4/atomic-operations.ts +1 -0
  456. package/src/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.ts +18 -16
  457. package/src/libs/api/metadata-converter/src/lib/gn4/types/index.ts +1 -0
  458. package/src/libs/api/metadata-converter/src/lib/gn4/types/keywords.model.ts +27 -0
  459. package/src/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.ts +1 -0
  460. package/src/libs/api/metadata-converter/src/lib/iso19115-3/iso19115-3.converter.ts +4 -4
  461. package/src/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.ts +12 -4
  462. package/src/libs/api/metadata-converter/src/lib/iso19115-3/write-parts.ts +14 -8
  463. package/src/libs/api/metadata-converter/src/lib/iso19139/iso19139.converter.ts +10 -14
  464. package/src/libs/api/metadata-converter/src/lib/iso19139/read-parts.ts +86 -18
  465. package/src/libs/api/metadata-converter/src/lib/iso19139/utils/geometry.ts +39 -0
  466. package/src/libs/api/metadata-converter/src/lib/iso19139/utils/keyword.mapper.ts +1 -1
  467. package/src/libs/api/metadata-converter/src/lib/iso19139/write-parts.ts +119 -38
  468. package/src/libs/api/metadata-converter/src/lib/xml-utils.ts +33 -6
  469. package/src/libs/api/repository/src/lib/gn4/gn4-repository.ts +181 -64
  470. package/src/libs/api/repository/src/lib/gn4/organizations/organizations-from-groups.service.ts +1 -0
  471. package/src/libs/api/repository/src/lib/gn4/organizations/organizations-from-metadata.service.ts +3 -1
  472. package/src/libs/api/repository/src/lib/gn4/platform/gn4-platform.mapper.ts +37 -5
  473. package/src/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.ts +165 -30
  474. package/src/libs/common/domain/src/lib/model/record/contact.model.ts +28 -0
  475. package/src/libs/common/domain/src/lib/model/record/metadata.model.ts +14 -17
  476. package/src/libs/common/domain/src/lib/model/record/organization.model.ts +1 -0
  477. package/src/libs/common/domain/src/lib/model/thesaurus/thesaurus.model.ts +13 -6
  478. package/src/libs/common/domain/src/lib/model/user/user.model.ts +1 -1
  479. package/src/libs/common/domain/src/lib/platform.service.interface.ts +37 -3
  480. package/src/libs/common/domain/src/lib/repository/records-repository.interface.ts +36 -1
  481. package/src/libs/common/fixtures/src/index.ts +3 -1
  482. package/src/libs/common/fixtures/src/lib/editor/editor.fixtures.ts +156 -0
  483. package/src/libs/common/fixtures/src/lib/editor/index.ts +1 -0
  484. package/src/libs/common/fixtures/src/lib/elasticsearch/{aggregations-request.ts → aggregations-request.fixtures.ts} +1 -3
  485. package/src/libs/common/fixtures/src/lib/elasticsearch/{aggregations-response.ts → aggregations-response.fixtures.ts} +6 -8
  486. package/src/libs/common/fixtures/src/lib/elasticsearch/{full-response.ts → full-response.fixtures.ts} +1 -3
  487. package/src/libs/common/fixtures/src/lib/elasticsearch/index.ts +5 -5
  488. package/src/libs/common/fixtures/src/lib/elasticsearch/metadata-links.fixtures.ts +1 -3
  489. package/src/libs/common/fixtures/src/lib/elasticsearch/metadata.fixtures.ts +1739 -1742
  490. package/src/libs/common/fixtures/src/lib/elasticsearch/{search-requests.ts → search-requests.fixtures.ts} +1 -3
  491. package/src/libs/common/fixtures/src/lib/elasticsearch/{search-responses.ts → search-responses.fixtures.ts} +4 -6
  492. package/src/libs/common/fixtures/src/lib/geojson.fixtures.ts +57178 -57195
  493. package/src/libs/common/fixtures/src/lib/gn4/groups.fixtures.ts +2 -4
  494. package/src/libs/common/fixtures/src/lib/link.fixtures.ts +233 -164
  495. package/src/libs/common/fixtures/src/lib/ol-feature.fixtures.ts +10 -0
  496. package/src/libs/common/fixtures/src/lib/organisations.fixture.ts +65 -3
  497. package/src/libs/common/fixtures/src/lib/record-link.fixtures.ts +9 -7
  498. package/src/libs/common/fixtures/src/lib/records.fixtures.ts +17 -9
  499. package/src/libs/common/fixtures/src/lib/repository.fixtures.ts +4 -4
  500. package/src/libs/common/fixtures/src/lib/search/aggregations.ts +2 -3
  501. package/src/libs/common/fixtures/src/lib/user-feedbacks.fixtures.ts +14 -15
  502. package/src/libs/common/fixtures/src/lib/user.fixtures.ts +32 -15
  503. package/src/libs/data-access/datafeeder/src/openapi/model/datasetMetadata.api.model.ts +4 -0
  504. package/src/libs/data-access/datafeeder/src/openapi/model/datasetUploadStatus.api.model.ts +2 -0
  505. package/src/libs/data-access/gn4/src/fixtures/site.fixtures.ts +4 -4
  506. package/src/libs/data-access/gn4/src/fixtures/ui.fixtures.ts +2 -2
  507. package/src/libs/data-access/gn4/src/openapi/api/records.api.service.ts +1 -5
  508. package/src/libs/data-access/gn4/src/openapi/model/user.api.model.ts +1 -1
  509. package/src/libs/data-access/gn4/src/spec.yaml +0 -8
  510. package/src/libs/feature/catalog/src/index.ts +1 -0
  511. package/src/libs/feature/catalog/src/lib/feature-catalog.module.ts +0 -1
  512. package/src/libs/feature/catalog/src/lib/organisations/organisations.component.html +1 -1
  513. package/src/libs/feature/catalog/src/lib/organisations/organisations.component.ts +2 -2
  514. package/src/libs/feature/catalog/src/lib/organization-url.token.ts +6 -0
  515. package/src/libs/feature/catalog/src/lib/records/records.service.ts +6 -8
  516. package/src/libs/feature/catalog/src/lib/sources/sources.fixture.ts +1 -1
  517. package/src/libs/feature/dataviz/src/lib/chart-view/chart-view.component.ts +3 -3
  518. package/src/libs/feature/dataviz/src/lib/feature-dataviz.module.ts +2 -1
  519. package/src/libs/feature/dataviz/src/lib/figure/figure.fixtures.ts +2 -2
  520. package/src/libs/feature/dataviz/src/lib/service/data.service.ts +6 -6
  521. package/src/libs/feature/dataviz/src/lib/table-view/table-view.component.ts +4 -4
  522. package/src/libs/feature/editor/src/index.ts +1 -0
  523. package/src/libs/feature/editor/src/lib/+state/editor.actions.ts +9 -0
  524. package/src/libs/feature/editor/src/lib/+state/editor.effects.ts +50 -29
  525. package/src/libs/feature/editor/src/lib/+state/editor.facade.ts +14 -1
  526. package/src/libs/feature/editor/src/lib/+state/editor.models.ts +11 -0
  527. package/src/libs/feature/editor/src/lib/+state/editor.reducer.ts +11 -5
  528. package/src/libs/feature/editor/src/lib/+state/editor.selectors.ts +22 -8
  529. package/src/libs/feature/editor/src/lib/components/contact-card/contact-card.component.html +15 -0
  530. package/src/libs/feature/editor/src/lib/components/contact-card/contact-card.component.ts +18 -0
  531. package/src/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.html +26 -0
  532. package/src/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.ts +90 -0
  533. package/src/libs/feature/editor/src/lib/components/import-record/import-record.component.html +43 -0
  534. package/src/libs/feature/editor/src/lib/components/import-record/import-record.component.ts +129 -0
  535. package/src/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.html +35 -0
  536. package/src/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.ts +79 -0
  537. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts-for-resource/form-field-contacts-for-resource.component.css +4 -0
  538. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts-for-resource/form-field-contacts-for-resource.component.html +66 -0
  539. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts-for-resource/form-field-contacts-for-resource.component.ts +212 -0
  540. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-date-updated/form-field-date-updated.component.html +4 -0
  541. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-date-updated/form-field-date-updated.component.ts +21 -0
  542. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.html +10 -0
  543. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.ts +78 -0
  544. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-license/form-field-license.component.css +8 -0
  545. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-license/form-field-license.component.ts +13 -5
  546. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.html +4 -0
  547. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.ts +128 -0
  548. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-link-resources/form-field-online-link-resources.component.css +0 -0
  549. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-link-resources/form-field-online-link-resources.component.html +34 -0
  550. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-link-resources/form-field-online-link-resources.component.ts +182 -0
  551. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-open-data/form-field-open-data.component.css +0 -0
  552. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-open-data/form-field-open-data.component.html +6 -0
  553. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-open-data/form-field-open-data.component.ts +48 -0
  554. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.css +0 -0
  555. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.html +11 -0
  556. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.ts +122 -0
  557. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-rich/form-field-rich.component.html +15 -8
  558. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-rich/form-field-rich.component.ts +11 -14
  559. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-simple/form-field-simple.component.html +5 -3
  560. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-simple/form-field-simple.component.ts +11 -4
  561. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.html +20 -1
  562. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.ts +212 -1
  563. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.css +4 -0
  564. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.html +31 -4
  565. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.ts +43 -86
  566. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.css +4 -0
  567. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.html +16 -14
  568. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.ts +101 -90
  569. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.html +112 -85
  570. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.ts +52 -72
  571. package/src/libs/feature/editor/src/lib/components/record-form/form-field/index.ts +2 -3
  572. package/src/libs/feature/editor/src/lib/components/record-form/record-form.component.html +52 -9
  573. package/src/libs/feature/editor/src/lib/components/record-form/record-form.component.ts +20 -7
  574. package/src/libs/feature/editor/src/lib/components/wizard-field/wizard-field.component.html +1 -1
  575. package/src/libs/feature/editor/src/lib/expressions.ts +1 -1
  576. package/src/libs/feature/editor/src/lib/feature-editor.module.ts +4 -2
  577. package/src/libs/feature/editor/src/lib/fields.config.ts +241 -51
  578. package/src/libs/feature/editor/src/lib/models/editor-config.model.ts +65 -0
  579. package/src/libs/feature/editor/src/lib/models/index.ts +1 -0
  580. package/src/libs/feature/editor/src/lib/services/editor.service.ts +34 -9
  581. package/src/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-from-catalog.component.ts +3 -0
  582. package/src/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-record-preview/add-layer-record-preview.component.ts +12 -8
  583. package/src/libs/feature/map/src/lib/add-layer-from-file/add-layer-from-file.component.ts +5 -0
  584. package/src/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.html +1 -1
  585. package/src/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.ts +10 -7
  586. package/src/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.html +1 -1
  587. package/src/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.ts +5 -0
  588. package/src/libs/feature/map/src/lib/add-layer-from-wms/add-layer-from-wms.component.html +1 -1
  589. package/src/libs/feature/map/src/lib/add-layer-from-wms/add-layer-from-wms.component.ts +6 -1
  590. package/src/libs/feature/map/src/lib/feature-map.module.ts +2 -15
  591. package/src/libs/feature/map/src/lib/layers-panel/layers-panel.component.ts +24 -1
  592. package/src/libs/feature/map/src/lib/map-context/map-context.fixtures.ts +26 -22
  593. package/src/libs/feature/map/src/lib/style/map-style.fixtures.ts +29 -27
  594. package/src/libs/feature/map/src/lib/utils/map-utils.service.ts +8 -4
  595. package/src/libs/feature/record/src/lib/data-view/data-view.component.ts +3 -3
  596. package/src/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.ts +36 -19
  597. package/src/libs/feature/record/src/lib/data-view-share/data-view-share.component.html +6 -2
  598. package/src/libs/feature/record/src/lib/data-view-share/data-view-share.component.ts +11 -0
  599. package/src/libs/feature/record/src/lib/data-view-web-component/data-view-web-component.component.ts +59 -12
  600. package/src/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.ts +2 -2
  601. package/src/libs/feature/record/src/lib/feature-record.module.ts +3 -2
  602. package/src/libs/feature/record/src/lib/map-view/map-view.component.ts +2 -2
  603. package/src/libs/feature/record/src/lib/state/mdview.facade.ts +47 -32
  604. package/src/libs/feature/router/src/lib/default/constants.ts +1 -0
  605. package/src/libs/feature/router/src/lib/default/router.config.ts +1 -0
  606. package/src/libs/feature/router/src/lib/default/router.service.ts +13 -1
  607. package/src/libs/feature/router/src/lib/default/state/router.facade.ts +9 -1
  608. package/src/libs/feature/search/src/index.ts +1 -1
  609. package/src/libs/feature/search/src/lib/feature-search.module.ts +2 -1
  610. package/src/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.html +2 -1
  611. package/src/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.ts +2 -2
  612. package/src/libs/feature/search/src/lib/results-table/results-table-container.component.css +0 -0
  613. package/src/libs/feature/search/src/lib/results-table/results-table-container.component.html +12 -0
  614. package/src/libs/feature/search/src/lib/results-table/results-table-container.component.ts +112 -0
  615. package/src/libs/feature/search/src/lib/state/fixtures/search-state.fixtures.ts +2 -2
  616. package/src/libs/feature/search/src/lib/state/search.facade.ts +11 -0
  617. package/src/libs/feature/search/src/lib/state/selectors.ts +7 -0
  618. package/src/libs/feature/search/src/lib/utils/service/fields.service.ts +16 -2
  619. package/src/libs/ui/catalog/src/lib/organisation-preview/organisation-preview.component.html +8 -6
  620. package/src/libs/ui/catalog/src/lib/organisation-preview/organisation-preview.component.ts +2 -2
  621. package/src/libs/ui/catalog/src/lib/ui-catalog.module.ts +2 -0
  622. package/src/libs/ui/dataviz/src/lib/chart/chart.fixtures.ts +2 -2
  623. package/src/libs/ui/dataviz/src/lib/figure/figure.component.html +11 -3
  624. package/src/libs/ui/dataviz/src/lib/figure/figure.component.ts +3 -7
  625. package/src/libs/ui/dataviz/src/lib/table/table.fixtures.ts +2 -2
  626. package/src/libs/ui/elements/src/index.ts +2 -2
  627. package/src/libs/ui/elements/src/lib/api-card/api-card.component.html +29 -29
  628. package/src/libs/ui/elements/src/lib/confirmation-dialog/confirmation-dialog.component.css +0 -0
  629. package/src/libs/ui/elements/src/lib/confirmation-dialog/confirmation-dialog.component.html +12 -0
  630. package/src/libs/ui/elements/src/lib/confirmation-dialog/confirmation-dialog.component.ts +37 -0
  631. package/src/libs/ui/elements/src/lib/download-item/download-item.component.ts +4 -4
  632. package/src/libs/ui/elements/src/lib/downloads-list/downloads-list.component.ts +7 -7
  633. package/src/libs/ui/elements/src/lib/error/error.component.html +30 -6
  634. package/src/libs/ui/elements/src/lib/error/error.component.ts +2 -0
  635. package/src/libs/ui/elements/src/lib/link-card/link-card.component.ts +3 -3
  636. package/src/libs/ui/elements/src/lib/markdown-editor/markdown-editor.component.html +13 -17
  637. package/src/libs/ui/elements/src/lib/markdown-editor/markdown-editor.component.ts +1 -1
  638. package/src/libs/ui/elements/src/lib/markdown-parser/markdown-parser.component.css +7 -1
  639. package/src/libs/ui/elements/src/lib/metadata-info/metadata-info.component.html +12 -8
  640. package/src/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.html +14 -20
  641. package/src/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.ts +0 -10
  642. package/src/libs/ui/elements/src/lib/metadata-quality-item/metadata-quality-item.component.html +1 -1
  643. package/src/libs/ui/elements/src/lib/record-api-form/record-api-form.component.html +2 -2
  644. package/src/libs/ui/elements/src/lib/related-record-card/related-record-card.component.html +1 -1
  645. package/src/libs/ui/elements/src/lib/related-record-card/related-record-card.component.ts +22 -1
  646. package/src/libs/ui/elements/src/lib/ui-elements.module.ts +10 -6
  647. package/src/libs/ui/elements/src/lib/user-preview/user-preview.component.html +1 -1
  648. package/src/libs/ui/inputs/src/index.ts +6 -0
  649. package/src/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.css +25 -19
  650. package/src/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.html +33 -15
  651. package/src/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.ts +97 -30
  652. package/src/libs/ui/inputs/src/lib/badge/badge.component.css +0 -0
  653. package/src/libs/ui/inputs/src/lib/badge/badge.component.html +27 -0
  654. package/src/libs/ui/inputs/src/lib/badge/badge.component.ts +28 -0
  655. package/src/libs/ui/inputs/src/lib/button/button.component.ts +15 -1
  656. package/src/libs/ui/inputs/src/lib/date-picker/date-picker.component.css +7 -2
  657. package/src/libs/ui/inputs/src/lib/date-picker/date-picker.component.html +13 -6
  658. package/src/libs/ui/inputs/src/lib/date-picker/date-picker.component.ts +7 -1
  659. package/src/libs/ui/inputs/src/lib/date-range-picker/date-range-picker.component.css +7 -2
  660. package/src/libs/ui/inputs/src/lib/date-range-picker/date-range-picker.component.html +27 -23
  661. package/src/libs/ui/inputs/src/lib/date-range-picker/date-range-picker.component.ts +7 -1
  662. package/src/libs/ui/inputs/src/lib/editable-label/editable-label.directive.ts +40 -26
  663. package/src/libs/ui/inputs/src/lib/file-input/file-input.component.css +4 -0
  664. package/src/libs/ui/inputs/src/lib/file-input/file-input.component.html +89 -0
  665. package/src/libs/ui/inputs/src/lib/file-input/file-input.component.ts +92 -0
  666. package/src/libs/ui/inputs/src/lib/image-input/image-input.component.css +4 -0
  667. package/src/libs/ui/inputs/src/lib/image-input/image-input.component.html +76 -68
  668. package/src/libs/ui/inputs/src/lib/image-input/image-input.component.ts +17 -14
  669. package/src/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.css +32 -0
  670. package/src/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.html +14 -0
  671. package/src/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.ts +37 -0
  672. package/src/libs/ui/inputs/src/lib/text-area/text-area.component.html +3 -2
  673. package/src/libs/ui/inputs/src/lib/text-area/text-area.component.ts +3 -28
  674. package/src/libs/ui/inputs/src/lib/text-input/text-input.component.html +4 -3
  675. package/src/libs/ui/inputs/src/lib/text-input/text-input.component.ts +4 -16
  676. package/src/libs/ui/inputs/src/lib/ui-inputs.module.ts +3 -6
  677. package/src/libs/ui/inputs/src/lib/url-input/url-input.component.css +9 -0
  678. package/src/libs/ui/inputs/src/lib/url-input/url-input.component.html +37 -0
  679. package/src/libs/ui/inputs/src/lib/url-input/url-input.component.ts +33 -0
  680. package/src/libs/ui/layout/src/index.ts +3 -0
  681. package/src/libs/ui/layout/src/lib/form-field-wrapper/form-field-wrapper.component.html +8 -3
  682. package/src/libs/ui/layout/src/lib/form-field-wrapper/form-field-wrapper.component.ts +4 -3
  683. package/src/libs/ui/layout/src/lib/interactive-table/interactive-table.component.html +1 -0
  684. package/src/libs/ui/layout/src/lib/max-lines/max-lines.component.css +0 -0
  685. package/src/libs/ui/{elements → layout}/src/lib/max-lines/max-lines.component.html +1 -0
  686. package/src/libs/ui/{elements → layout}/src/lib/max-lines/max-lines.component.ts +9 -5
  687. package/src/libs/ui/layout/src/lib/modal-dialog/modal-dialog.component.css +0 -0
  688. package/src/libs/ui/layout/src/lib/modal-dialog/modal-dialog.component.html +15 -0
  689. package/src/libs/ui/layout/src/lib/modal-dialog/modal-dialog.component.ts +44 -0
  690. package/src/libs/ui/layout/src/lib/sortable-list/sortable-list.component.html +37 -0
  691. package/src/libs/ui/{elements → layout}/src/lib/sortable-list/sortable-list.component.ts +15 -18
  692. package/src/libs/ui/layout/src/lib/ui-layout.module.ts +0 -1
  693. package/src/libs/ui/map/src/lib/ui-map.module.ts +1 -1
  694. package/src/libs/ui/search/src/index.ts +1 -0
  695. package/src/libs/ui/search/src/lib/facets/fixtures/aggregations-model-response.ts +7 -6
  696. package/src/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.css +0 -0
  697. package/src/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.html +26 -0
  698. package/src/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.ts +74 -0
  699. package/src/libs/ui/search/src/lib/results-table/results-table.component.css +0 -0
  700. package/src/libs/{feature → ui}/search/src/lib/results-table/results-table.component.html +30 -9
  701. package/src/libs/ui/search/src/lib/results-table/results-table.component.ts +151 -0
  702. package/src/libs/ui/widgets/src/index.ts +1 -1
  703. package/src/libs/ui/widgets/src/lib/popover/popover.component.css +0 -0
  704. package/src/libs/ui/widgets/src/lib/popover/popover.component.html +3 -0
  705. package/src/libs/ui/widgets/src/lib/popover/popover.component.ts +85 -0
  706. package/src/libs/ui/widgets/src/lib/popup-alert/popup-alert.component.ts +4 -0
  707. package/src/libs/ui/widgets/src/lib/ui-widgets.module.ts +0 -3
  708. package/src/libs/util/app-config/src/lib/fixtures.ts +9 -9
  709. package/src/libs/util/shared/src/lib/links/link-classifier.service.ts +4 -3
  710. package/src/libs/util/shared/src/lib/links/link-utils.ts +6 -6
  711. package/src/libs/util/shared/src/lib/services/theme.service.ts +1 -0
  712. package/src/libs/util/shared/src/lib/utils/bytes-convert.ts +4 -1
  713. package/tailwind.base.config.js +1 -0
  714. package/tailwind.base.css +51 -7
  715. package/translations/de.json +164 -38
  716. package/translations/en.json +138 -12
  717. package/translations/es.json +135 -9
  718. package/translations/fr.json +150 -24
  719. package/translations/it.json +138 -12
  720. package/translations/nl.json +135 -9
  721. package/translations/pt.json +135 -9
  722. package/translations/sk.json +137 -11
  723. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-resource-updated/form-field-resource-updated.component.mjs +0 -15
  724. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-date/form-field-temporal-extents-date.component.mjs +0 -17
  725. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-range/form-field-temporal-extents-range.component.mjs +0 -17
  726. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field.model.mjs +0 -2
  727. package/esm2022/libs/feature/editor/src/lib/models/fields.model.mjs +0 -2
  728. package/esm2022/libs/feature/search/src/lib/results-table/results-table.component.mjs +0 -136
  729. package/esm2022/libs/ui/elements/src/lib/max-lines/max-lines.component.mjs +0 -69
  730. package/esm2022/libs/ui/elements/src/lib/sortable-list/sortable-list.component.mjs +0 -43
  731. package/esm2022/libs/ui/widgets/src/lib/badge/badge.component.mjs +0 -18
  732. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-resource-updated/form-field-resource-updated.component.d.ts +0 -8
  733. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-resource-updated/form-field-resource-updated.component.d.ts.map +0 -1
  734. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-date/form-field-temporal-extents-date.component.d.ts +0 -8
  735. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-date/form-field-temporal-extents-date.component.d.ts.map +0 -1
  736. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-range/form-field-temporal-extents-range.component.d.ts +0 -8
  737. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-range/form-field-temporal-extents-range.component.d.ts.map +0 -1
  738. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field.model.d.ts +0 -26
  739. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field.model.d.ts.map +0 -1
  740. package/libs/feature/editor/src/lib/models/fields.model.d.ts +0 -15
  741. package/libs/feature/editor/src/lib/models/fields.model.d.ts.map +0 -1
  742. package/libs/feature/search/src/lib/results-table/results-table.component.d.ts +0 -36
  743. package/libs/feature/search/src/lib/results-table/results-table.component.d.ts.map +0 -1
  744. package/libs/ui/elements/src/lib/max-lines/max-lines.component.d.ts.map +0 -1
  745. package/libs/ui/elements/src/lib/sortable-list/sortable-list.component.d.ts +0 -22
  746. package/libs/ui/elements/src/lib/sortable-list/sortable-list.component.d.ts.map +0 -1
  747. package/libs/ui/widgets/src/lib/badge/badge.component.d.ts +0 -7
  748. package/libs/ui/widgets/src/lib/badge/badge.component.d.ts.map +0 -1
  749. package/src/libs/common/fixtures/src/lib/ol-feature.fixture.ts +0 -7
  750. package/src/libs/common/fixtures/src/lib/utils/freeze.ts +0 -10
  751. package/src/libs/common/fixtures/src/lib/utils/index.ts +0 -1
  752. package/src/libs/feature/editor/src/lib/components/overview-upload/overview-upload.component.html +0 -8
  753. package/src/libs/feature/editor/src/lib/components/overview-upload/overview-upload.component.ts +0 -70
  754. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-resource-updated/form-field-resource-updated.component.html +0 -4
  755. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-resource-updated/form-field-resource-updated.component.ts +0 -15
  756. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-date/form-field-temporal-extents-date.component.html +0 -7
  757. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-date/form-field-temporal-extents-date.component.ts +0 -16
  758. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-range/form-field-temporal-extents-range.component.html +0 -13
  759. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-range/form-field-temporal-extents-range.component.ts +0 -16
  760. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field.model.ts +0 -43
  761. package/src/libs/feature/editor/src/lib/models/fields.model.ts +0 -29
  762. package/src/libs/feature/search/src/lib/results-table/results-table.component.ts +0 -172
  763. package/src/libs/ui/elements/src/lib/sortable-list/sortable-list.component.html +0 -36
  764. package/src/libs/ui/widgets/src/lib/badge/badge.component.html +0 -10
  765. package/src/libs/ui/widgets/src/lib/badge/badge.component.ts +0 -14
  766. /package/src/libs/feature/editor/src/lib/components/{overview-upload/overview-upload.component.css → contact-card/contact-card.component.css} +0 -0
  767. /package/src/libs/feature/editor/src/lib/components/{record-form/form-field/form-field-resource-updated/form-field-resource-updated.component.css → generic-keywords/generic-keywords.component.css} +0 -0
  768. /package/src/libs/feature/editor/src/lib/components/{record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-date/form-field-temporal-extents-date.component.css → import-record/import-record.component.css} +0 -0
  769. /package/src/libs/feature/editor/src/lib/components/{record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-range/form-field-temporal-extents-range.component.css → online-resource-card/online-resource-card.component.css} +0 -0
  770. /package/src/libs/feature/{search/src/lib/results-table/results-table.component.css → editor/src/lib/components/record-form/form-field/form-field-date-updated/form-field-date-updated.component.css} +0 -0
  771. /package/src/libs/{ui/elements/src/lib/max-lines/max-lines.component.css → feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.css} +0 -0
  772. /package/src/libs/{ui/widgets/src/lib/badge/badge.component.css → feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.css} +0 -0
  773. /package/src/libs/ui/{elements → layout}/src/lib/sortable-list/sortable-list.component.css +0 -0
@@ -63,7 +63,7 @@ export class TableViewComponent {
63
63
  this.loading = false;
64
64
  }
65
65
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TableViewComponent, deps: [{ token: i1.DataService }, { token: i2.TranslateService }], target: i0.ɵɵFactoryTarget.Component }); }
66
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TableViewComponent, selector: "gn-ui-table-view", inputs: { link: "link" }, ngImport: i0, template: "<div class=\"w-full h-full flex flex-col\">\n <div class=\"relative h-full\">\n <gn-ui-table\n class=\"overflow-auto grow\"\n [data]=\"tableData$ | async\"\n (selected)=\"onTableSelect($event)\"\n ></gn-ui-table>\n <gn-ui-loading-mask\n *ngIf=\"loading\"\n class=\"absolute inset-0\"\n [message]=\"'table.loading.data' | translate\"\n ></gn-ui-loading-mask>\n <gn-ui-popup-alert\n *ngIf=\"error\"\n type=\"warning\"\n icon=\"error_outline\"\n class=\"absolute m-2 inset-0\"\n >\n <span translate>{{ error }}</span>\n </gn-ui-popup-alert>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.TableComponent, selector: "gn-ui-table", inputs: ["data", "activeId"], outputs: ["selected"] }, { kind: "component", type: i5.LoadingMaskComponent, selector: "gn-ui-loading-mask", inputs: ["message"] }, { kind: "component", type: i6.PopupAlertComponent, selector: "gn-ui-popup-alert", inputs: ["icon", "type", "position"] }, { kind: "directive", type: i2.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
66
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TableViewComponent, selector: "gn-ui-table-view", inputs: { link: "link" }, ngImport: i0, template: "<div class=\"w-full h-full flex flex-col\">\n <div class=\"relative h-full\">\n <gn-ui-table\n class=\"overflow-auto grow\"\n [data]=\"tableData$ | async\"\n (selected)=\"onTableSelect($event)\"\n ></gn-ui-table>\n <gn-ui-loading-mask\n *ngIf=\"loading\"\n class=\"absolute inset-0\"\n [message]=\"'table.loading.data' | translate\"\n ></gn-ui-loading-mask>\n <gn-ui-popup-alert\n *ngIf=\"error\"\n type=\"warning\"\n icon=\"error_outline\"\n class=\"absolute m-2 inset-0\"\n >\n <span translate>{{ error }}</span>\n </gn-ui-popup-alert>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.TableComponent, selector: "gn-ui-table", inputs: ["data", "activeId"], outputs: ["selected"] }, { kind: "component", type: i5.LoadingMaskComponent, selector: "gn-ui-loading-mask", inputs: ["message"] }, { kind: "directive", type: i2.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "component", type: i6.PopupAlertComponent, selector: "gn-ui-popup-alert", inputs: ["icon", "type", "position"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
67
67
  }
68
68
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TableViewComponent, decorators: [{
69
69
  type: Component,
@@ -71,4 +71,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
71
71
  }], ctorParameters: function () { return [{ type: i1.DataService }, { type: i2.TranslateService }]; }, propDecorators: { link: [{
72
72
  type: Input
73
73
  }] } });
74
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtdmlldy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvZGF0YXZpei9zcmMvbGliL3RhYmxlLXZpZXcvdGFibGUtdmlldy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvZGF0YXZpei9zcmMvbGliL3RhYmxlLXZpZXcvdGFibGUtdmlldy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUN6RSxPQUFPLEVBQUUsZUFBZSxFQUFjLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQTtBQUN0RCxPQUFPLEVBQ0wsVUFBVSxFQUNWLFFBQVEsRUFDUixHQUFHLEVBQ0gsV0FBVyxFQUNYLFNBQVMsRUFDVCxTQUFTLEdBQ1YsTUFBTSxnQkFBZ0IsQ0FBQTtBQUN2QixPQUFPLEVBQVksVUFBVSxFQUFFLE1BQU0sOENBQThDLENBQUE7QUFDbkYsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHlCQUF5QixDQUFBO0FBR3JELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFBOzs7Ozs7OztBQVF0RCxNQUFNLE9BQU8sa0JBQWtCO0lBQzdCLElBQWEsSUFBSSxDQUFDLEtBQTBCO1FBQzFDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFBO0lBQy9CLENBQUM7SUErQkQsWUFDVSxXQUF3QixFQUN4QixnQkFBa0M7UUFEbEMsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDeEIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQWhDcEMsaUJBQVksR0FBRyxJQUFJLGVBQWUsQ0FBc0IsSUFBSSxDQUFDLENBQUE7UUFFckUsWUFBTyxHQUFHLEtBQUssQ0FBQTtRQUNmLFVBQUssR0FBRyxJQUFJLENBQUE7UUFFWixlQUFVLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQ2pDLFNBQVMsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO1lBQ2pCLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFBO1lBQ2pCLElBQUksQ0FBQyxJQUFJO2dCQUFFLE9BQU8sRUFBRSxDQUFDLEVBQXNCLENBQUMsQ0FBQTtZQUM1QyxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQTtZQUNuQixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUM5QixHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUNaLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUM7Z0JBQ25CLEVBQUUsRUFBRSxJQUFJLENBQUMsRUFBRTtnQkFDWCxHQUFHLElBQUksQ0FBQyxVQUFVO2FBQ25CLENBQUMsQ0FBQyxDQUNKLEVBQ0QsVUFBVSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7Z0JBQ25CLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUE7Z0JBQ3ZCLE9BQU8sRUFBRSxDQUFDLEVBQXNCLENBQUMsQ0FBQTtZQUNuQyxDQUFDLENBQUMsRUFDRixRQUFRLENBQUMsR0FBRyxFQUFFO2dCQUNaLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFBO1lBQ3RCLENBQUMsQ0FBQyxDQUNILENBQUE7UUFDSCxDQUFDLENBQUMsRUFDRixTQUFTLENBQUMsRUFBc0IsQ0FBQyxFQUNqQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQ2YsQ0FBQTtJQUtFLENBQUM7SUFFSixTQUFTLENBQUMsSUFBeUI7UUFDakMsT0FBTyxJQUFJLENBQUMsV0FBVzthQUNwQixVQUFVLENBQUMsSUFBSSxDQUFDO2FBQ2hCLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUE7SUFDakQsQ0FBQztJQUVELGFBQWEsQ0FBQyxLQUFLO1FBQ2pCLE9BQU8sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUE7SUFDcEIsQ0FBQztJQUVELFdBQVcsQ0FBQyxLQUFrQztRQUM1QyxJQUFJLEtBQUssWUFBWSxVQUFVLEVBQUU7WUFDL0IsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUN4QyxpQkFBaUIsS0FBSyxDQUFDLElBQUksRUFBRSxFQUM3QjtnQkFDRSxJQUFJLEVBQUUsS0FBSyxDQUFDLElBQUk7YUFDakIsQ0FDRixDQUFBO1lBQ0QsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUE7U0FDNUI7YUFBTSxJQUFJLEtBQUssWUFBWSxLQUFLLEVBQUU7WUFDakMsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQTtZQUN6RCxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLElBQUksS0FBSyxDQUFDLENBQUE7U0FDbkM7YUFBTTtZQUNMLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQTtZQUNqRCxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFBO1NBQ3BCO1FBQ0QsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUE7SUFDdEIsQ0FBQzsrR0FsRVUsa0JBQWtCO21HQUFsQixrQkFBa0Isa0ZDdEIvQiw0bkJBc0JBOzs0RkRBYSxrQkFBa0I7a0JBTjlCLFNBQVM7K0JBQ0Usa0JBQWtCLG1CQUdYLHVCQUF1QixDQUFDLE1BQU07aUlBR2xDLElBQUk7c0JBQWhCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcydcbmltcG9ydCB7XG4gIGNhdGNoRXJyb3IsXG4gIGZpbmFsaXplLFxuICBtYXAsXG4gIHNoYXJlUmVwbGF5LFxuICBzdGFydFdpdGgsXG4gIHN3aXRjaE1hcCxcbn0gZnJvbSAncnhqcy9vcGVyYXRvcnMnXG5pbXBvcnQgeyBEYXRhSXRlbSwgRmV0Y2hFcnJvciB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdXRpbC9kYXRhLWZldGNoZXIvc3JjJ1xuaW1wb3J0IHsgRGF0YVNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlL2RhdGEuc2VydmljZSdcbmltcG9ydCB7IFRhYmxlSXRlbU1vZGVsIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS9kYXRhdml6L3NyYydcbmltcG9ydCB7IERhdGFzZXREaXN0cmlidXRpb24gfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9kb21haW4vc3JjL2xpYi9tb2RlbC9yZWNvcmQnXG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSdcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ24tdWktdGFibGUtdmlldycsXG4gIHRlbXBsYXRlVXJsOiAnLi90YWJsZS12aWV3LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vdGFibGUtdmlldy5jb21wb25lbnQuY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBUYWJsZVZpZXdDb21wb25lbnQge1xuICBASW5wdXQoKSBzZXQgbGluayh2YWx1ZTogRGF0YXNldERpc3RyaWJ1dGlvbikge1xuICAgIHRoaXMuY3VycmVudExpbmskLm5leHQodmFsdWUpXG4gIH1cbiAgcHJpdmF0ZSBjdXJyZW50TGluayQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PERhdGFzZXREaXN0cmlidXRpb24+KG51bGwpXG5cbiAgbG9hZGluZyA9IGZhbHNlXG4gIGVycm9yID0gbnVsbFxuXG4gIHRhYmxlRGF0YSQgPSB0aGlzLmN1cnJlbnRMaW5rJC5waXBlKFxuICAgIHN3aXRjaE1hcCgobGluaykgPT4ge1xuICAgICAgdGhpcy5lcnJvciA9IG51bGxcbiAgICAgIGlmICghbGluaykgcmV0dXJuIG9mKFtdIGFzIFRhYmxlSXRlbU1vZGVsW10pXG4gICAgICB0aGlzLmxvYWRpbmcgPSB0cnVlXG4gICAgICByZXR1cm4gdGhpcy5mZXRjaERhdGEobGluaykucGlwZShcbiAgICAgICAgbWFwKChpdGVtcykgPT5cbiAgICAgICAgICBpdGVtcy5tYXAoKGl0ZW0pID0+ICh7XG4gICAgICAgICAgICBpZDogaXRlbS5pZCxcbiAgICAgICAgICAgIC4uLml0ZW0ucHJvcGVydGllcyxcbiAgICAgICAgICB9KSlcbiAgICAgICAgKSxcbiAgICAgICAgY2F0Y2hFcnJvcigoZXJyb3IpID0+IHtcbiAgICAgICAgICB0aGlzLmhhbmRsZUVycm9yKGVycm9yKVxuICAgICAgICAgIHJldHVybiBvZihbXSBhcyBUYWJsZUl0ZW1Nb2RlbFtdKVxuICAgICAgICB9KSxcbiAgICAgICAgZmluYWxpemUoKCkgPT4ge1xuICAgICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlXG4gICAgICAgIH0pXG4gICAgICApXG4gICAgfSksXG4gICAgc3RhcnRXaXRoKFtdIGFzIFRhYmxlSXRlbU1vZGVsW10pLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gIClcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGRhdGFTZXJ2aWNlOiBEYXRhU2VydmljZSxcbiAgICBwcml2YXRlIHRyYW5zbGF0ZVNlcnZpY2U6IFRyYW5zbGF0ZVNlcnZpY2VcbiAgKSB7fVxuXG4gIGZldGNoRGF0YShsaW5rOiBEYXRhc2V0RGlzdHJpYnV0aW9uKTogT2JzZXJ2YWJsZTxEYXRhSXRlbVtdPiB7XG4gICAgcmV0dXJuIHRoaXMuZGF0YVNlcnZpY2VcbiAgICAgIC5nZXREYXRhc2V0KGxpbmspXG4gICAgICAucGlwZShzd2l0Y2hNYXAoKGRhdGFzZXQpID0+IGRhdGFzZXQucmVhZCgpKSlcbiAgfVxuXG4gIG9uVGFibGVTZWxlY3QoZXZlbnQpIHtcbiAgICBjb25zb2xlLmxvZyhldmVudClcbiAgfVxuXG4gIGhhbmRsZUVycm9yKGVycm9yOiBGZXRjaEVycm9yIHwgRXJyb3IgfCBzdHJpbmcpIHtcbiAgICBpZiAoZXJyb3IgaW5zdGFuY2VvZiBGZXRjaEVycm9yKSB7XG4gICAgICB0aGlzLmVycm9yID0gdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoXG4gICAgICAgIGBkYXRhc2V0LmVycm9yLiR7ZXJyb3IudHlwZX1gLFxuICAgICAgICB7XG4gICAgICAgICAgaW5mbzogZXJyb3IuaW5mbyxcbiAgICAgICAgfVxuICAgICAgKVxuICAgICAgY29uc29sZS53YXJuKGVycm9yLm1lc3NhZ2UpXG4gICAgfSBlbHNlIGlmIChlcnJvciBpbnN0YW5jZW9mIEVycm9yKSB7XG4gICAgICB0aGlzLmVycm9yID0gdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoZXJyb3IubWVzc2FnZSlcbiAgICAgIGNvbnNvbGUud2FybihlcnJvci5zdGFjayB8fCBlcnJvcilcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5lcnJvciA9IHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KGVycm9yKVxuICAgICAgY29uc29sZS53YXJuKGVycm9yKVxuICAgIH1cbiAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZVxuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwidy1mdWxsIGgtZnVsbCBmbGV4IGZsZXgtY29sXCI+XG4gIDxkaXYgY2xhc3M9XCJyZWxhdGl2ZSBoLWZ1bGxcIj5cbiAgICA8Z24tdWktdGFibGVcbiAgICAgIGNsYXNzPVwib3ZlcmZsb3ctYXV0byBncm93XCJcbiAgICAgIFtkYXRhXT1cInRhYmxlRGF0YSQgfCBhc3luY1wiXG4gICAgICAoc2VsZWN0ZWQpPVwib25UYWJsZVNlbGVjdCgkZXZlbnQpXCJcbiAgICA+PC9nbi11aS10YWJsZT5cbiAgICA8Z24tdWktbG9hZGluZy1tYXNrXG4gICAgICAqbmdJZj1cImxvYWRpbmdcIlxuICAgICAgY2xhc3M9XCJhYnNvbHV0ZSBpbnNldC0wXCJcbiAgICAgIFttZXNzYWdlXT1cIid0YWJsZS5sb2FkaW5nLmRhdGEnIHwgdHJhbnNsYXRlXCJcbiAgICA+PC9nbi11aS1sb2FkaW5nLW1hc2s+XG4gICAgPGduLXVpLXBvcHVwLWFsZXJ0XG4gICAgICAqbmdJZj1cImVycm9yXCJcbiAgICAgIHR5cGU9XCJ3YXJuaW5nXCJcbiAgICAgIGljb249XCJlcnJvcl9vdXRsaW5lXCJcbiAgICAgIGNsYXNzPVwiYWJzb2x1dGUgbS0yIGluc2V0LTBcIlxuICAgID5cbiAgICAgIDxzcGFuIHRyYW5zbGF0ZT57eyBlcnJvciB9fTwvc3Bhbj5cbiAgICA8L2duLXVpLXBvcHVwLWFsZXJ0PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
74
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtdmlldy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvZGF0YXZpei9zcmMvbGliL3RhYmxlLXZpZXcvdGFibGUtdmlldy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvZGF0YXZpei9zcmMvbGliL3RhYmxlLXZpZXcvdGFibGUtdmlldy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUN6RSxPQUFPLEVBQUUsZUFBZSxFQUFjLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQTtBQUN0RCxPQUFPLEVBQ0wsVUFBVSxFQUNWLFFBQVEsRUFDUixHQUFHLEVBQ0gsV0FBVyxFQUNYLFNBQVMsRUFDVCxTQUFTLEdBQ1YsTUFBTSxnQkFBZ0IsQ0FBQTtBQUN2QixPQUFPLEVBQVksVUFBVSxFQUFFLE1BQU0sOENBQThDLENBQUE7QUFDbkYsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHlCQUF5QixDQUFBO0FBR3JELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFBOzs7Ozs7OztBQVF0RCxNQUFNLE9BQU8sa0JBQWtCO0lBQzdCLElBQWEsSUFBSSxDQUFDLEtBQTRCO1FBQzVDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFBO0lBQy9CLENBQUM7SUErQkQsWUFDVSxXQUF3QixFQUN4QixnQkFBa0M7UUFEbEMsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDeEIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQWhDcEMsaUJBQVksR0FBRyxJQUFJLGVBQWUsQ0FBd0IsSUFBSSxDQUFDLENBQUE7UUFFdkUsWUFBTyxHQUFHLEtBQUssQ0FBQTtRQUNmLFVBQUssR0FBRyxJQUFJLENBQUE7UUFFWixlQUFVLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQ2pDLFNBQVMsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO1lBQ2pCLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFBO1lBQ2pCLElBQUksQ0FBQyxJQUFJO2dCQUFFLE9BQU8sRUFBRSxDQUFDLEVBQXNCLENBQUMsQ0FBQTtZQUM1QyxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQTtZQUNuQixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUM5QixHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUNaLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUM7Z0JBQ25CLEVBQUUsRUFBRSxJQUFJLENBQUMsRUFBRTtnQkFDWCxHQUFHLElBQUksQ0FBQyxVQUFVO2FBQ25CLENBQUMsQ0FBQyxDQUNKLEVBQ0QsVUFBVSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7Z0JBQ25CLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUE7Z0JBQ3ZCLE9BQU8sRUFBRSxDQUFDLEVBQXNCLENBQUMsQ0FBQTtZQUNuQyxDQUFDLENBQUMsRUFDRixRQUFRLENBQUMsR0FBRyxFQUFFO2dCQUNaLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFBO1lBQ3RCLENBQUMsQ0FBQyxDQUNILENBQUE7UUFDSCxDQUFDLENBQUMsRUFDRixTQUFTLENBQUMsRUFBc0IsQ0FBQyxFQUNqQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQ2YsQ0FBQTtJQUtFLENBQUM7SUFFSixTQUFTLENBQUMsSUFBMkI7UUFDbkMsT0FBTyxJQUFJLENBQUMsV0FBVzthQUNwQixVQUFVLENBQUMsSUFBSSxDQUFDO2FBQ2hCLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUE7SUFDakQsQ0FBQztJQUVELGFBQWEsQ0FBQyxLQUFLO1FBQ2pCLE9BQU8sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUE7SUFDcEIsQ0FBQztJQUVELFdBQVcsQ0FBQyxLQUFrQztRQUM1QyxJQUFJLEtBQUssWUFBWSxVQUFVLEVBQUU7WUFDL0IsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUN4QyxpQkFBaUIsS0FBSyxDQUFDLElBQUksRUFBRSxFQUM3QjtnQkFDRSxJQUFJLEVBQUUsS0FBSyxDQUFDLElBQUk7YUFDakIsQ0FDRixDQUFBO1lBQ0QsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUE7U0FDNUI7YUFBTSxJQUFJLEtBQUssWUFBWSxLQUFLLEVBQUU7WUFDakMsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQTtZQUN6RCxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLElBQUksS0FBSyxDQUFDLENBQUE7U0FDbkM7YUFBTTtZQUNMLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQTtZQUNqRCxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFBO1NBQ3BCO1FBQ0QsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUE7SUFDdEIsQ0FBQzsrR0FsRVUsa0JBQWtCO21HQUFsQixrQkFBa0Isa0ZDdEIvQiw0bkJBc0JBOzs0RkRBYSxrQkFBa0I7a0JBTjlCLFNBQVM7K0JBQ0Usa0JBQWtCLG1CQUdYLHVCQUF1QixDQUFDLE1BQU07aUlBR2xDLElBQUk7c0JBQWhCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcydcbmltcG9ydCB7XG4gIGNhdGNoRXJyb3IsXG4gIGZpbmFsaXplLFxuICBtYXAsXG4gIHNoYXJlUmVwbGF5LFxuICBzdGFydFdpdGgsXG4gIHN3aXRjaE1hcCxcbn0gZnJvbSAncnhqcy9vcGVyYXRvcnMnXG5pbXBvcnQgeyBEYXRhSXRlbSwgRmV0Y2hFcnJvciB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdXRpbC9kYXRhLWZldGNoZXIvc3JjJ1xuaW1wb3J0IHsgRGF0YVNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlL2RhdGEuc2VydmljZSdcbmltcG9ydCB7IFRhYmxlSXRlbU1vZGVsIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS9kYXRhdml6L3NyYydcbmltcG9ydCB7IERhdGFzZXRPbmxpbmVSZXNvdXJjZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL2RvbWFpbi9zcmMvbGliL21vZGVsL3JlY29yZCdcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJ1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdnbi11aS10YWJsZS12aWV3JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3RhYmxlLXZpZXcuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi90YWJsZS12aWV3LmNvbXBvbmVudC5jc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFRhYmxlVmlld0NvbXBvbmVudCB7XG4gIEBJbnB1dCgpIHNldCBsaW5rKHZhbHVlOiBEYXRhc2V0T25saW5lUmVzb3VyY2UpIHtcbiAgICB0aGlzLmN1cnJlbnRMaW5rJC5uZXh0KHZhbHVlKVxuICB9XG4gIHByaXZhdGUgY3VycmVudExpbmskID0gbmV3IEJlaGF2aW9yU3ViamVjdDxEYXRhc2V0T25saW5lUmVzb3VyY2U+KG51bGwpXG5cbiAgbG9hZGluZyA9IGZhbHNlXG4gIGVycm9yID0gbnVsbFxuXG4gIHRhYmxlRGF0YSQgPSB0aGlzLmN1cnJlbnRMaW5rJC5waXBlKFxuICAgIHN3aXRjaE1hcCgobGluaykgPT4ge1xuICAgICAgdGhpcy5lcnJvciA9IG51bGxcbiAgICAgIGlmICghbGluaykgcmV0dXJuIG9mKFtdIGFzIFRhYmxlSXRlbU1vZGVsW10pXG4gICAgICB0aGlzLmxvYWRpbmcgPSB0cnVlXG4gICAgICByZXR1cm4gdGhpcy5mZXRjaERhdGEobGluaykucGlwZShcbiAgICAgICAgbWFwKChpdGVtcykgPT5cbiAgICAgICAgICBpdGVtcy5tYXAoKGl0ZW0pID0+ICh7XG4gICAgICAgICAgICBpZDogaXRlbS5pZCxcbiAgICAgICAgICAgIC4uLml0ZW0ucHJvcGVydGllcyxcbiAgICAgICAgICB9KSlcbiAgICAgICAgKSxcbiAgICAgICAgY2F0Y2hFcnJvcigoZXJyb3IpID0+IHtcbiAgICAgICAgICB0aGlzLmhhbmRsZUVycm9yKGVycm9yKVxuICAgICAgICAgIHJldHVybiBvZihbXSBhcyBUYWJsZUl0ZW1Nb2RlbFtdKVxuICAgICAgICB9KSxcbiAgICAgICAgZmluYWxpemUoKCkgPT4ge1xuICAgICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlXG4gICAgICAgIH0pXG4gICAgICApXG4gICAgfSksXG4gICAgc3RhcnRXaXRoKFtdIGFzIFRhYmxlSXRlbU1vZGVsW10pLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gIClcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGRhdGFTZXJ2aWNlOiBEYXRhU2VydmljZSxcbiAgICBwcml2YXRlIHRyYW5zbGF0ZVNlcnZpY2U6IFRyYW5zbGF0ZVNlcnZpY2VcbiAgKSB7fVxuXG4gIGZldGNoRGF0YShsaW5rOiBEYXRhc2V0T25saW5lUmVzb3VyY2UpOiBPYnNlcnZhYmxlPERhdGFJdGVtW10+IHtcbiAgICByZXR1cm4gdGhpcy5kYXRhU2VydmljZVxuICAgICAgLmdldERhdGFzZXQobGluaylcbiAgICAgIC5waXBlKHN3aXRjaE1hcCgoZGF0YXNldCkgPT4gZGF0YXNldC5yZWFkKCkpKVxuICB9XG5cbiAgb25UYWJsZVNlbGVjdChldmVudCkge1xuICAgIGNvbnNvbGUubG9nKGV2ZW50KVxuICB9XG5cbiAgaGFuZGxlRXJyb3IoZXJyb3I6IEZldGNoRXJyb3IgfCBFcnJvciB8IHN0cmluZykge1xuICAgIGlmIChlcnJvciBpbnN0YW5jZW9mIEZldGNoRXJyb3IpIHtcbiAgICAgIHRoaXMuZXJyb3IgPSB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudChcbiAgICAgICAgYGRhdGFzZXQuZXJyb3IuJHtlcnJvci50eXBlfWAsXG4gICAgICAgIHtcbiAgICAgICAgICBpbmZvOiBlcnJvci5pbmZvLFxuICAgICAgICB9XG4gICAgICApXG4gICAgICBjb25zb2xlLndhcm4oZXJyb3IubWVzc2FnZSlcbiAgICB9IGVsc2UgaWYgKGVycm9yIGluc3RhbmNlb2YgRXJyb3IpIHtcbiAgICAgIHRoaXMuZXJyb3IgPSB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudChlcnJvci5tZXNzYWdlKVxuICAgICAgY29uc29sZS53YXJuKGVycm9yLnN0YWNrIHx8IGVycm9yKVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmVycm9yID0gdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoZXJyb3IpXG4gICAgICBjb25zb2xlLndhcm4oZXJyb3IpXG4gICAgfVxuICAgIHRoaXMubG9hZGluZyA9IGZhbHNlXG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJ3LWZ1bGwgaC1mdWxsIGZsZXggZmxleC1jb2xcIj5cbiAgPGRpdiBjbGFzcz1cInJlbGF0aXZlIGgtZnVsbFwiPlxuICAgIDxnbi11aS10YWJsZVxuICAgICAgY2xhc3M9XCJvdmVyZmxvdy1hdXRvIGdyb3dcIlxuICAgICAgW2RhdGFdPVwidGFibGVEYXRhJCB8IGFzeW5jXCJcbiAgICAgIChzZWxlY3RlZCk9XCJvblRhYmxlU2VsZWN0KCRldmVudClcIlxuICAgID48L2duLXVpLXRhYmxlPlxuICAgIDxnbi11aS1sb2FkaW5nLW1hc2tcbiAgICAgICpuZ0lmPVwibG9hZGluZ1wiXG4gICAgICBjbGFzcz1cImFic29sdXRlIGluc2V0LTBcIlxuICAgICAgW21lc3NhZ2VdPVwiJ3RhYmxlLmxvYWRpbmcuZGF0YScgfCB0cmFuc2xhdGVcIlxuICAgID48L2duLXVpLWxvYWRpbmctbWFzaz5cbiAgICA8Z24tdWktcG9wdXAtYWxlcnRcbiAgICAgICpuZ0lmPVwiZXJyb3JcIlxuICAgICAgdHlwZT1cIndhcm5pbmdcIlxuICAgICAgaWNvbj1cImVycm9yX291dGxpbmVcIlxuICAgICAgY2xhc3M9XCJhYnNvbHV0ZSBtLTIgaW5zZXQtMFwiXG4gICAgPlxuICAgICAgPHNwYW4gdHJhbnNsYXRlPnt7IGVycm9yIH19PC9zcGFuPlxuICAgIDwvZ24tdWktcG9wdXAtYWxlcnQ+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
@@ -5,8 +5,9 @@ export * from './lib/+state/editor.reducer';
5
5
  export * from './lib/+state/editor.actions';
6
6
  export * from './lib/feature-editor.module';
7
7
  export * from './lib/services/editor.service';
8
+ export * from './lib/components/import-record/import-record.component';
8
9
  export * from './lib/components/record-form/record-form.component';
9
10
  export * from './lib/components/wizard/wizard.component';
10
11
  export * from './lib/components/wizard-field/wizard-field.component';
11
12
  export * from './lib/components/wizard-summarize/wizard-summarize.component';
12
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvZWRpdG9yL3NyYy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDRCQUE0QixDQUFBO0FBQzFDLGNBQWMsNEJBQTRCLENBQUE7QUFDMUMsY0FBYywrQkFBK0IsQ0FBQTtBQUM3QyxjQUFjLDZCQUE2QixDQUFBO0FBQzNDLGNBQWMsNkJBQTZCLENBQUE7QUFDM0MsY0FBYyw2QkFBNkIsQ0FBQTtBQUMzQyxjQUFjLCtCQUErQixDQUFBO0FBQzdDLGNBQWMsb0RBQW9ELENBQUE7QUFDbEUsY0FBYywwQ0FBMEMsQ0FBQTtBQUN4RCxjQUFjLHNEQUFzRCxDQUFBO0FBQ3BFLGNBQWMsOERBQThELENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2xpYi8rc3RhdGUvZWRpdG9yLmZhY2FkZSdcbmV4cG9ydCAqIGZyb20gJy4vbGliLytzdGF0ZS9lZGl0b3IubW9kZWxzJ1xuZXhwb3J0ICogZnJvbSAnLi9saWIvK3N0YXRlL2VkaXRvci5zZWxlY3RvcnMnXG5leHBvcnQgKiBmcm9tICcuL2xpYi8rc3RhdGUvZWRpdG9yLnJlZHVjZXInXG5leHBvcnQgKiBmcm9tICcuL2xpYi8rc3RhdGUvZWRpdG9yLmFjdGlvbnMnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9mZWF0dXJlLWVkaXRvci5tb2R1bGUnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy9lZGl0b3Iuc2VydmljZSdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvcmVjb3JkLWZvcm0vcmVjb3JkLWZvcm0uY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy93aXphcmQvd2l6YXJkLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvd2l6YXJkLWZpZWxkL3dpemFyZC1maWVsZC5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3dpemFyZC1zdW1tYXJpemUvd2l6YXJkLXN1bW1hcml6ZS5jb21wb25lbnQnXG4iXX0=
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvZWRpdG9yL3NyYy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDRCQUE0QixDQUFBO0FBQzFDLGNBQWMsNEJBQTRCLENBQUE7QUFDMUMsY0FBYywrQkFBK0IsQ0FBQTtBQUM3QyxjQUFjLDZCQUE2QixDQUFBO0FBQzNDLGNBQWMsNkJBQTZCLENBQUE7QUFDM0MsY0FBYyw2QkFBNkIsQ0FBQTtBQUMzQyxjQUFjLCtCQUErQixDQUFBO0FBQzdDLGNBQWMsd0RBQXdELENBQUE7QUFDdEUsY0FBYyxvREFBb0QsQ0FBQTtBQUNsRSxjQUFjLDBDQUEwQyxDQUFBO0FBQ3hELGNBQWMsc0RBQXNELENBQUE7QUFDcEUsY0FBYyw4REFBOEQsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbGliLytzdGF0ZS9lZGl0b3IuZmFjYWRlJ1xuZXhwb3J0ICogZnJvbSAnLi9saWIvK3N0YXRlL2VkaXRvci5tb2RlbHMnXG5leHBvcnQgKiBmcm9tICcuL2xpYi8rc3RhdGUvZWRpdG9yLnNlbGVjdG9ycydcbmV4cG9ydCAqIGZyb20gJy4vbGliLytzdGF0ZS9lZGl0b3IucmVkdWNlcidcbmV4cG9ydCAqIGZyb20gJy4vbGliLytzdGF0ZS9lZGl0b3IuYWN0aW9ucydcbmV4cG9ydCAqIGZyb20gJy4vbGliL2ZlYXR1cmUtZWRpdG9yLm1vZHVsZSdcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL2VkaXRvci5zZXJ2aWNlJ1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9pbXBvcnQtcmVjb3JkL2ltcG9ydC1yZWNvcmQuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9yZWNvcmQtZm9ybS9yZWNvcmQtZm9ybS5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3dpemFyZC93aXphcmQuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy93aXphcmQtZmllbGQvd2l6YXJkLWZpZWxkLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvd2l6YXJkLXN1bW1hcml6ZS93aXphcmQtc3VtbWFyaXplLmNvbXBvbmVudCdcbiJdfQ==
@@ -5,4 +5,7 @@ export const markRecordAsChanged = createAction('[Editor] Mark record as changed
5
5
  export const saveRecord = createAction('[Editor] Save record');
6
6
  export const saveRecordSuccess = createAction('[Editor] Save record success');
7
7
  export const saveRecordFailure = createAction('[Editor] Save record failure', props());
8
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLmFjdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvZWRpdG9yL3NyYy9saWIvK3N0YXRlL2VkaXRvci5hY3Rpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sYUFBYSxDQUFBO0FBSWpELE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRyxZQUFZLENBQ3BDLHNCQUFzQixFQUN0QixLQUFLLEVBSUQsQ0FDTCxDQUFBO0FBRUQsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUcsWUFBWSxDQUMzQyw4QkFBOEIsRUFDOUIsS0FBSyxFQUFxQyxDQUMzQyxDQUFBO0FBRUQsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUcsWUFBWSxDQUM3QyxpQ0FBaUMsQ0FDbEMsQ0FBQTtBQUVELE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRyxZQUFZLENBQUMsc0JBQXNCLENBQUMsQ0FBQTtBQUM5RCxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxZQUFZLENBQUMsOEJBQThCLENBQUMsQ0FBQTtBQUM3RSxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxZQUFZLENBQzNDLDhCQUE4QixFQUM5QixLQUFLLEVBQThCLENBQ3BDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjcmVhdGVBY3Rpb24sIHByb3BzIH0gZnJvbSAnQG5ncngvc3RvcmUnXG5pbXBvcnQgeyBDYXRhbG9nUmVjb3JkIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vZG9tYWluL3NyYy9saWIvbW9kZWwvcmVjb3JkJ1xuaW1wb3J0IHsgU2F2ZVJlY29yZEVycm9yIH0gZnJvbSAnLi9lZGl0b3IubW9kZWxzJ1xuXG5leHBvcnQgY29uc3Qgb3BlblJlY29yZCA9IGNyZWF0ZUFjdGlvbihcbiAgJ1tFZGl0b3JdIE9wZW4gcmVjb3JkJyxcbiAgcHJvcHM8e1xuICAgIHJlY29yZDogQ2F0YWxvZ1JlY29yZFxuICAgIGFscmVhZHlTYXZlZE9uY2U6IGJvb2xlYW5cbiAgICByZWNvcmRTb3VyY2U/OiBzdHJpbmcgfCBudWxsXG4gIH0+KClcbilcblxuZXhwb3J0IGNvbnN0IHVwZGF0ZVJlY29yZEZpZWxkID0gY3JlYXRlQWN0aW9uKFxuICAnW0VkaXRvcl0gVXBkYXRlIHJlY29yZCBmaWVsZCcsXG4gIHByb3BzPHsgZmllbGQ6IHN0cmluZzsgdmFsdWU6IHVua25vd24gfT4oKVxuKVxuXG5leHBvcnQgY29uc3QgbWFya1JlY29yZEFzQ2hhbmdlZCA9IGNyZWF0ZUFjdGlvbihcbiAgJ1tFZGl0b3JdIE1hcmsgcmVjb3JkIGFzIGNoYW5nZWQnXG4pXG5cbmV4cG9ydCBjb25zdCBzYXZlUmVjb3JkID0gY3JlYXRlQWN0aW9uKCdbRWRpdG9yXSBTYXZlIHJlY29yZCcpXG5leHBvcnQgY29uc3Qgc2F2ZVJlY29yZFN1Y2Nlc3MgPSBjcmVhdGVBY3Rpb24oJ1tFZGl0b3JdIFNhdmUgcmVjb3JkIHN1Y2Nlc3MnKVxuZXhwb3J0IGNvbnN0IHNhdmVSZWNvcmRGYWlsdXJlID0gY3JlYXRlQWN0aW9uKFxuICAnW0VkaXRvcl0gU2F2ZSByZWNvcmQgZmFpbHVyZScsXG4gIHByb3BzPHsgZXJyb3I6IFNhdmVSZWNvcmRFcnJvciB9PigpXG4pXG4iXX0=
8
+ export const draftSaveSuccess = createAction('[Editor] Draft save success');
9
+ export const undoRecordDraft = createAction('[Editor] Undo record draft');
10
+ export const setCurrentPage = createAction('[Editor] Set current page', props());
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLmFjdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvZWRpdG9yL3NyYy9saWIvK3N0YXRlL2VkaXRvci5hY3Rpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sYUFBYSxDQUFBO0FBSWpELE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRyxZQUFZLENBQ3BDLHNCQUFzQixFQUN0QixLQUFLLEVBSUQsQ0FDTCxDQUFBO0FBRUQsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUcsWUFBWSxDQUMzQyw4QkFBOEIsRUFDOUIsS0FBSyxFQUFxQyxDQUMzQyxDQUFBO0FBRUQsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUcsWUFBWSxDQUM3QyxpQ0FBaUMsQ0FDbEMsQ0FBQTtBQUVELE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRyxZQUFZLENBQUMsc0JBQXNCLENBQUMsQ0FBQTtBQUM5RCxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxZQUFZLENBQUMsOEJBQThCLENBQUMsQ0FBQTtBQUM3RSxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxZQUFZLENBQzNDLDhCQUE4QixFQUM5QixLQUFLLEVBQThCLENBQ3BDLENBQUE7QUFFRCxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxZQUFZLENBQUMsNkJBQTZCLENBQUMsQ0FBQTtBQUUzRSxNQUFNLENBQUMsTUFBTSxlQUFlLEdBQUcsWUFBWSxDQUFDLDRCQUE0QixDQUFDLENBQUE7QUFFekUsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHLFlBQVksQ0FDeEMsMkJBQTJCLEVBQzNCLEtBQUssRUFBb0IsQ0FDMUIsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNyZWF0ZUFjdGlvbiwgcHJvcHMgfSBmcm9tICdAbmdyeC9zdG9yZSdcbmltcG9ydCB7IENhdGFsb2dSZWNvcmQgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9kb21haW4vc3JjL2xpYi9tb2RlbC9yZWNvcmQnXG5pbXBvcnQgeyBTYXZlUmVjb3JkRXJyb3IgfSBmcm9tICcuL2VkaXRvci5tb2RlbHMnXG5cbmV4cG9ydCBjb25zdCBvcGVuUmVjb3JkID0gY3JlYXRlQWN0aW9uKFxuICAnW0VkaXRvcl0gT3BlbiByZWNvcmQnLFxuICBwcm9wczx7XG4gICAgcmVjb3JkOiBDYXRhbG9nUmVjb3JkXG4gICAgYWxyZWFkeVNhdmVkT25jZTogYm9vbGVhblxuICAgIHJlY29yZFNvdXJjZT86IHN0cmluZyB8IG51bGxcbiAgfT4oKVxuKVxuXG5leHBvcnQgY29uc3QgdXBkYXRlUmVjb3JkRmllbGQgPSBjcmVhdGVBY3Rpb24oXG4gICdbRWRpdG9yXSBVcGRhdGUgcmVjb3JkIGZpZWxkJyxcbiAgcHJvcHM8eyBmaWVsZDogc3RyaW5nOyB2YWx1ZTogdW5rbm93biB9PigpXG4pXG5cbmV4cG9ydCBjb25zdCBtYXJrUmVjb3JkQXNDaGFuZ2VkID0gY3JlYXRlQWN0aW9uKFxuICAnW0VkaXRvcl0gTWFyayByZWNvcmQgYXMgY2hhbmdlZCdcbilcblxuZXhwb3J0IGNvbnN0IHNhdmVSZWNvcmQgPSBjcmVhdGVBY3Rpb24oJ1tFZGl0b3JdIFNhdmUgcmVjb3JkJylcbmV4cG9ydCBjb25zdCBzYXZlUmVjb3JkU3VjY2VzcyA9IGNyZWF0ZUFjdGlvbignW0VkaXRvcl0gU2F2ZSByZWNvcmQgc3VjY2VzcycpXG5leHBvcnQgY29uc3Qgc2F2ZVJlY29yZEZhaWx1cmUgPSBjcmVhdGVBY3Rpb24oXG4gICdbRWRpdG9yXSBTYXZlIHJlY29yZCBmYWlsdXJlJyxcbiAgcHJvcHM8eyBlcnJvcjogU2F2ZVJlY29yZEVycm9yIH0+KClcbilcblxuZXhwb3J0IGNvbnN0IGRyYWZ0U2F2ZVN1Y2Nlc3MgPSBjcmVhdGVBY3Rpb24oJ1tFZGl0b3JdIERyYWZ0IHNhdmUgc3VjY2VzcycpXG5cbmV4cG9ydCBjb25zdCB1bmRvUmVjb3JkRHJhZnQgPSBjcmVhdGVBY3Rpb24oJ1tFZGl0b3JdIFVuZG8gcmVjb3JkIGRyYWZ0JylcblxuZXhwb3J0IGNvbnN0IHNldEN1cnJlbnRQYWdlID0gY3JlYXRlQWN0aW9uKFxuICAnW0VkaXRvcl0gU2V0IGN1cnJlbnQgcGFnZScsXG4gIHByb3BzPHsgcGFnZTogbnVtYmVyIH0+KClcbilcbiJdfQ==
@@ -5,7 +5,7 @@ import { catchError, map, switchMap } from 'rxjs/operators';
5
5
  import * as EditorActions from './editor.actions';
6
6
  import { EditorService } from '../services/editor.service';
7
7
  import { Store } from '@ngrx/store';
8
- import { selectRecord, selectRecordFieldsConfig } from './editor.selectors';
8
+ import { selectEditorConfig, selectRecord, selectRecordAlreadySavedOnce, } from './editor.selectors';
9
9
  import { RecordsRepositoryInterface } from '../../../../../../libs/common/domain/src/lib/repository/records-repository.interface';
10
10
  import * as i0 from "@angular/core";
11
11
  export class EditorEffects {
@@ -14,7 +14,9 @@ export class EditorEffects {
14
14
  this.editorService = inject(EditorService);
15
15
  this.recordsRepository = inject(RecordsRepositoryInterface);
16
16
  this.store = inject(Store);
17
- this.saveRecord$ = createEffect(() => this.actions$.pipe(ofType(EditorActions.saveRecord), withLatestFrom(this.store.select(selectRecord), this.store.select(selectRecordFieldsConfig)), switchMap(([, record, fieldsConfig]) => this.editorService.saveRecord(record, fieldsConfig).pipe(switchMap(([record, recordSource]) => of(EditorActions.saveRecordSuccess(), EditorActions.openRecord({
17
+ this.saveRecord$ = createEffect(() => this.actions$.pipe(ofType(EditorActions.saveRecord), withLatestFrom(this.store.select(selectRecord), this.store.select(selectEditorConfig), this.store.select(selectRecordAlreadySavedOnce)), switchMap(([, record, fieldsConfig, alreadySavedOnce]) => this.editorService
18
+ .saveRecord(record, fieldsConfig, !alreadySavedOnce)
19
+ .pipe(switchMap(([record, recordSource]) => of(EditorActions.saveRecordSuccess(), EditorActions.openRecord({
18
20
  record,
19
21
  alreadySavedOnce: true,
20
22
  recordSource,
@@ -22,7 +24,12 @@ export class EditorEffects {
22
24
  error: error.message,
23
25
  })))))));
24
26
  this.markAsChanged$ = createEffect(() => this.actions$.pipe(ofType(EditorActions.updateRecordField), map(() => EditorActions.markRecordAsChanged())));
25
- this.saveRecordDraft$ = createEffect(() => this.actions$.pipe(ofType(EditorActions.updateRecordField), debounceTime(1000), withLatestFrom(this.store.select(selectRecord)), switchMap(([, record]) => this.editorService.saveRecordAsDraft(record))), { dispatch: false });
27
+ this.saveRecordDraft$ = createEffect(() => this.actions$.pipe(ofType(EditorActions.updateRecordField), debounceTime(1000), withLatestFrom(this.store.select(selectRecord)), switchMap(([, record]) => this.editorService.saveRecordAsDraft(record)), map(() => EditorActions.draftSaveSuccess())));
28
+ this.undoRecordDraft$ = createEffect(() => this.actions$.pipe(ofType(EditorActions.undoRecordDraft), withLatestFrom(this.store.select(selectRecord)), switchMap(([, record]) => this.editorService.undoRecordDraft(record)), map(([record, recordSource, alreadySavedOnce]) => EditorActions.openRecord({
29
+ record,
30
+ alreadySavedOnce,
31
+ recordSource,
32
+ }))));
26
33
  this.checkHasChangesOnOpen$ = createEffect(() => this.actions$.pipe(ofType(EditorActions.openRecord), map(({ record }) => this.recordsRepository.recordHasDraft(record.uniqueIdentifier)), filter((hasDraft) => hasDraft), map(() => EditorActions.markRecordAsChanged())));
27
34
  }
28
35
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EditorEffects, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
@@ -31,4 +38,4 @@ export class EditorEffects {
31
38
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EditorEffects, decorators: [{
32
39
  type: Injectable
33
40
  }] });
34
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLmVmZmVjdHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvZWRpdG9yL3NyYy9saWIvK3N0YXRlL2VkaXRvci5lZmZlY3RzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQ2xELE9BQU8sRUFBRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUM3RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxFQUFFLEVBQUUsY0FBYyxFQUFFLE1BQU0sTUFBTSxDQUFBO0FBQy9ELE9BQU8sRUFBRSxVQUFVLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBQzNELE9BQU8sS0FBSyxhQUFhLE1BQU0sa0JBQWtCLENBQUE7QUFDakQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDRCQUE0QixDQUFBO0FBQzFELE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxhQUFhLENBQUE7QUFDbkMsT0FBTyxFQUFFLFlBQVksRUFBRSx3QkFBd0IsRUFBRSxNQUFNLG9CQUFvQixDQUFBO0FBQzNFLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHNGQUFzRixDQUFBOztBQUdqSSxNQUFNLE9BQU8sYUFBYTtJQUQxQjtRQUVVLGFBQVEsR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUE7UUFDMUIsa0JBQWEsR0FBRyxNQUFNLENBQUMsYUFBYSxDQUFDLENBQUE7UUFDckMsc0JBQWlCLEdBQUcsTUFBTSxDQUFDLDBCQUEwQixDQUFDLENBQUE7UUFDdEQsVUFBSyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQTtRQUU3QixnQkFBVyxHQUFHLFlBQVksQ0FBQyxHQUFHLEVBQUUsQ0FDOUIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQ2hCLE1BQU0sQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDLEVBQ2hDLGNBQWMsQ0FDWixJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsRUFDL0IsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsd0JBQXdCLENBQUMsQ0FDNUMsRUFDRCxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsTUFBTSxFQUFFLFlBQVksQ0FBQyxFQUFFLEVBQUUsQ0FDckMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLFlBQVksQ0FBQyxDQUFDLElBQUksQ0FDdEQsU0FBUyxDQUFDLENBQUMsQ0FBQyxNQUFNLEVBQUUsWUFBWSxDQUFDLEVBQUUsRUFBRSxDQUNuQyxFQUFFLENBQ0EsYUFBYSxDQUFDLGlCQUFpQixFQUFFLEVBQ2pDLGFBQWEsQ0FBQyxVQUFVLENBQUM7WUFDdkIsTUFBTTtZQUNOLGdCQUFnQixFQUFFLElBQUk7WUFDdEIsWUFBWTtTQUNiLENBQUMsQ0FDSCxDQUNGLEVBQ0QsVUFBVSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FDbkIsRUFBRSxDQUNBLGFBQWEsQ0FBQyxpQkFBaUIsQ0FBQztZQUM5QixLQUFLLEVBQUUsS0FBSyxDQUFDLE9BQU87U0FDckIsQ0FBQyxDQUNILENBQ0YsQ0FDRixDQUNGLENBQ0YsQ0FDRixDQUFBO1FBRUQsbUJBQWMsR0FBRyxZQUFZLENBQUMsR0FBRyxFQUFFLENBQ2pDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUNoQixNQUFNLENBQUMsYUFBYSxDQUFDLGlCQUFpQixDQUFDLEVBQ3ZDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxhQUFhLENBQUMsbUJBQW1CLEVBQUUsQ0FBQyxDQUMvQyxDQUNGLENBQUE7UUFFRCxxQkFBZ0IsR0FBRyxZQUFZLENBQzdCLEdBQUcsRUFBRSxDQUNILElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUNoQixNQUFNLENBQUMsYUFBYSxDQUFDLGlCQUFpQixDQUFDLEVBQ3ZDLFlBQVksQ0FBQyxJQUFJLENBQUMsRUFDbEIsY0FBYyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDLEVBQy9DLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxNQUFNLENBQUMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxpQkFBaUIsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUN4RSxFQUNILEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxDQUNwQixDQUFBO1FBRUQsMkJBQXNCLEdBQUcsWUFBWSxDQUFDLEdBQUcsRUFBRSxDQUN6QyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FDaEIsTUFBTSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsRUFDaEMsR0FBRyxDQUFDLENBQUMsRUFBRSxNQUFNLEVBQUUsRUFBRSxFQUFFLENBQ2pCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQy9ELEVBQ0QsTUFBTSxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxRQUFRLENBQUMsRUFDOUIsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLGFBQWEsQ0FBQyxtQkFBbUIsRUFBRSxDQUFDLENBQy9DLENBQ0YsQ0FBQTtLQUNGOytHQWpFWSxhQUFhO21IQUFiLGFBQWE7OzRGQUFiLGFBQWE7a0JBRHpCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgQWN0aW9ucywgY3JlYXRlRWZmZWN0LCBvZlR5cGUgfSBmcm9tICdAbmdyeC9lZmZlY3RzJ1xuaW1wb3J0IHsgZGVib3VuY2VUaW1lLCBmaWx0ZXIsIG9mLCB3aXRoTGF0ZXN0RnJvbSB9IGZyb20gJ3J4anMnXG5pbXBvcnQgeyBjYXRjaEVycm9yLCBtYXAsIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJ1xuaW1wb3J0ICogYXMgRWRpdG9yQWN0aW9ucyBmcm9tICcuL2VkaXRvci5hY3Rpb25zJ1xuaW1wb3J0IHsgRWRpdG9yU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2VkaXRvci5zZXJ2aWNlJ1xuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICdAbmdyeC9zdG9yZSdcbmltcG9ydCB7IHNlbGVjdFJlY29yZCwgc2VsZWN0UmVjb3JkRmllbGRzQ29uZmlnIH0gZnJvbSAnLi9lZGl0b3Iuc2VsZWN0b3JzJ1xuaW1wb3J0IHsgUmVjb3Jkc1JlcG9zaXRvcnlJbnRlcmZhY2UgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9kb21haW4vc3JjL2xpYi9yZXBvc2l0b3J5L3JlY29yZHMtcmVwb3NpdG9yeS5pbnRlcmZhY2UnXG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBFZGl0b3JFZmZlY3RzIHtcbiAgcHJpdmF0ZSBhY3Rpb25zJCA9IGluamVjdChBY3Rpb25zKVxuICBwcml2YXRlIGVkaXRvclNlcnZpY2UgPSBpbmplY3QoRWRpdG9yU2VydmljZSlcbiAgcHJpdmF0ZSByZWNvcmRzUmVwb3NpdG9yeSA9IGluamVjdChSZWNvcmRzUmVwb3NpdG9yeUludGVyZmFjZSlcbiAgcHJpdmF0ZSBzdG9yZSA9IGluamVjdChTdG9yZSlcblxuICBzYXZlUmVjb3JkJCA9IGNyZWF0ZUVmZmVjdCgoKSA9PlxuICAgIHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICAgIG9mVHlwZShFZGl0b3JBY3Rpb25zLnNhdmVSZWNvcmQpLFxuICAgICAgd2l0aExhdGVzdEZyb20oXG4gICAgICAgIHRoaXMuc3RvcmUuc2VsZWN0KHNlbGVjdFJlY29yZCksXG4gICAgICAgIHRoaXMuc3RvcmUuc2VsZWN0KHNlbGVjdFJlY29yZEZpZWxkc0NvbmZpZylcbiAgICAgICksXG4gICAgICBzd2l0Y2hNYXAoKFssIHJlY29yZCwgZmllbGRzQ29uZmlnXSkgPT5cbiAgICAgICAgdGhpcy5lZGl0b3JTZXJ2aWNlLnNhdmVSZWNvcmQocmVjb3JkLCBmaWVsZHNDb25maWcpLnBpcGUoXG4gICAgICAgICAgc3dpdGNoTWFwKChbcmVjb3JkLCByZWNvcmRTb3VyY2VdKSA9PlxuICAgICAgICAgICAgb2YoXG4gICAgICAgICAgICAgIEVkaXRvckFjdGlvbnMuc2F2ZVJlY29yZFN1Y2Nlc3MoKSxcbiAgICAgICAgICAgICAgRWRpdG9yQWN0aW9ucy5vcGVuUmVjb3JkKHtcbiAgICAgICAgICAgICAgICByZWNvcmQsXG4gICAgICAgICAgICAgICAgYWxyZWFkeVNhdmVkT25jZTogdHJ1ZSxcbiAgICAgICAgICAgICAgICByZWNvcmRTb3VyY2UsXG4gICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICApXG4gICAgICAgICAgKSxcbiAgICAgICAgICBjYXRjaEVycm9yKChlcnJvcikgPT5cbiAgICAgICAgICAgIG9mKFxuICAgICAgICAgICAgICBFZGl0b3JBY3Rpb25zLnNhdmVSZWNvcmRGYWlsdXJlKHtcbiAgICAgICAgICAgICAgICBlcnJvcjogZXJyb3IubWVzc2FnZSxcbiAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIClcbiAgICAgICAgICApXG4gICAgICAgIClcbiAgICAgIClcbiAgICApXG4gIClcblxuICBtYXJrQXNDaGFuZ2VkJCA9IGNyZWF0ZUVmZmVjdCgoKSA9PlxuICAgIHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICAgIG9mVHlwZShFZGl0b3JBY3Rpb25zLnVwZGF0ZVJlY29yZEZpZWxkKSxcbiAgICAgIG1hcCgoKSA9PiBFZGl0b3JBY3Rpb25zLm1hcmtSZWNvcmRBc0NoYW5nZWQoKSlcbiAgICApXG4gIClcblxuICBzYXZlUmVjb3JkRHJhZnQkID0gY3JlYXRlRWZmZWN0KFxuICAgICgpID0+XG4gICAgICB0aGlzLmFjdGlvbnMkLnBpcGUoXG4gICAgICAgIG9mVHlwZShFZGl0b3JBY3Rpb25zLnVwZGF0ZVJlY29yZEZpZWxkKSxcbiAgICAgICAgZGVib3VuY2VUaW1lKDEwMDApLFxuICAgICAgICB3aXRoTGF0ZXN0RnJvbSh0aGlzLnN0b3JlLnNlbGVjdChzZWxlY3RSZWNvcmQpKSxcbiAgICAgICAgc3dpdGNoTWFwKChbLCByZWNvcmRdKSA9PiB0aGlzLmVkaXRvclNlcnZpY2Uuc2F2ZVJlY29yZEFzRHJhZnQocmVjb3JkKSlcbiAgICAgICksXG4gICAgeyBkaXNwYXRjaDogZmFsc2UgfVxuICApXG5cbiAgY2hlY2tIYXNDaGFuZ2VzT25PcGVuJCA9IGNyZWF0ZUVmZmVjdCgoKSA9PlxuICAgIHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICAgIG9mVHlwZShFZGl0b3JBY3Rpb25zLm9wZW5SZWNvcmQpLFxuICAgICAgbWFwKCh7IHJlY29yZCB9KSA9PlxuICAgICAgICB0aGlzLnJlY29yZHNSZXBvc2l0b3J5LnJlY29yZEhhc0RyYWZ0KHJlY29yZC51bmlxdWVJZGVudGlmaWVyKVxuICAgICAgKSxcbiAgICAgIGZpbHRlcigoaGFzRHJhZnQpID0+IGhhc0RyYWZ0KSxcbiAgICAgIG1hcCgoKSA9PiBFZGl0b3JBY3Rpb25zLm1hcmtSZWNvcmRBc0NoYW5nZWQoKSlcbiAgICApXG4gIClcbn1cbiJdfQ==
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLmVmZmVjdHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvZWRpdG9yL3NyYy9saWIvK3N0YXRlL2VkaXRvci5lZmZlY3RzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQ2xELE9BQU8sRUFBRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUM3RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxFQUFFLEVBQUUsY0FBYyxFQUFFLE1BQU0sTUFBTSxDQUFBO0FBQy9ELE9BQU8sRUFBRSxVQUFVLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBQzNELE9BQU8sS0FBSyxhQUFhLE1BQU0sa0JBQWtCLENBQUE7QUFDakQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDRCQUE0QixDQUFBO0FBQzFELE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxhQUFhLENBQUE7QUFDbkMsT0FBTyxFQUNMLGtCQUFrQixFQUNsQixZQUFZLEVBQ1osNEJBQTRCLEdBQzdCLE1BQU0sb0JBQW9CLENBQUE7QUFDM0IsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sc0ZBQXNGLENBQUE7O0FBR2pJLE1BQU0sT0FBTyxhQUFhO0lBRDFCO1FBRVUsYUFBUSxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQTtRQUMxQixrQkFBYSxHQUFHLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQTtRQUNyQyxzQkFBaUIsR0FBRyxNQUFNLENBQUMsMEJBQTBCLENBQUMsQ0FBQTtRQUN0RCxVQUFLLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFBO1FBRTdCLGdCQUFXLEdBQUcsWUFBWSxDQUFDLEdBQUcsRUFBRSxDQUM5QixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FDaEIsTUFBTSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsRUFDaEMsY0FBYyxDQUNaLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxFQUMvQixJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxFQUNyQyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyw0QkFBNEIsQ0FBQyxDQUNoRCxFQUNELFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLGdCQUFnQixDQUFDLEVBQUUsRUFBRSxDQUN2RCxJQUFJLENBQUMsYUFBYTthQUNmLFVBQVUsQ0FBQyxNQUFNLEVBQUUsWUFBWSxFQUFFLENBQUMsZ0JBQWdCLENBQUM7YUFDbkQsSUFBSSxDQUNILFNBQVMsQ0FBQyxDQUFDLENBQUMsTUFBTSxFQUFFLFlBQVksQ0FBQyxFQUFFLEVBQUUsQ0FDbkMsRUFBRSxDQUNBLGFBQWEsQ0FBQyxpQkFBaUIsRUFBRSxFQUNqQyxhQUFhLENBQUMsVUFBVSxDQUFDO1lBQ3ZCLE1BQU07WUFDTixnQkFBZ0IsRUFBRSxJQUFJO1lBQ3RCLFlBQVk7U0FDYixDQUFDLENBQ0gsQ0FDRixFQUNELFVBQVUsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQ25CLEVBQUUsQ0FDQSxhQUFhLENBQUMsaUJBQWlCLENBQUM7WUFDOUIsS0FBSyxFQUFFLEtBQUssQ0FBQyxPQUFPO1NBQ3JCLENBQUMsQ0FDSCxDQUNGLENBQ0YsQ0FDSixDQUNGLENBQ0YsQ0FBQTtRQUVELG1CQUFjLEdBQUcsWUFBWSxDQUFDLEdBQUcsRUFBRSxDQUNqQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FDaEIsTUFBTSxDQUFDLGFBQWEsQ0FBQyxpQkFBaUIsQ0FBQyxFQUN2QyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsYUFBYSxDQUFDLG1CQUFtQixFQUFFLENBQUMsQ0FDL0MsQ0FDRixDQUFBO1FBRUQscUJBQWdCLEdBQUcsWUFBWSxDQUFDLEdBQUcsRUFBRSxDQUNuQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FDaEIsTUFBTSxDQUFDLGFBQWEsQ0FBQyxpQkFBaUIsQ0FBQyxFQUN2QyxZQUFZLENBQUMsSUFBSSxDQUFDLEVBQ2xCLGNBQWMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQyxFQUMvQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsTUFBTSxDQUFDLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsaUJBQWlCLENBQUMsTUFBTSxDQUFDLENBQUMsRUFDdkUsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLGFBQWEsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLENBQzVDLENBQ0YsQ0FBQTtRQUVELHFCQUFnQixHQUFHLFlBQVksQ0FBQyxHQUFHLEVBQUUsQ0FDbkMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQ2hCLE1BQU0sQ0FBQyxhQUFhLENBQUMsZUFBZSxDQUFDLEVBQ3JDLGNBQWMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQyxFQUMvQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsTUFBTSxDQUFDLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsZUFBZSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQ3JFLEdBQUcsQ0FBQyxDQUFDLENBQUMsTUFBTSxFQUFFLFlBQVksRUFBRSxnQkFBZ0IsQ0FBQyxFQUFFLEVBQUUsQ0FDL0MsYUFBYSxDQUFDLFVBQVUsQ0FBQztZQUN2QixNQUFNO1lBQ04sZ0JBQWdCO1lBQ2hCLFlBQVk7U0FDYixDQUFDLENBQ0gsQ0FDRixDQUNGLENBQUE7UUFFRCwyQkFBc0IsR0FBRyxZQUFZLENBQUMsR0FBRyxFQUFFLENBQ3pDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUNoQixNQUFNLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxFQUNoQyxHQUFHLENBQUMsQ0FBQyxFQUFFLE1BQU0sRUFBRSxFQUFFLEVBQUUsQ0FDakIsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FDL0QsRUFDRCxNQUFNLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxFQUM5QixHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsYUFBYSxDQUFDLG1CQUFtQixFQUFFLENBQUMsQ0FDL0MsQ0FDRixDQUFBO0tBQ0Y7K0dBbEZZLGFBQWE7bUhBQWIsYUFBYTs7NEZBQWIsYUFBYTtrQkFEekIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBBY3Rpb25zLCBjcmVhdGVFZmZlY3QsIG9mVHlwZSB9IGZyb20gJ0BuZ3J4L2VmZmVjdHMnXG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIGZpbHRlciwgb2YsIHdpdGhMYXRlc3RGcm9tIH0gZnJvbSAncnhqcydcbmltcG9ydCB7IGNhdGNoRXJyb3IsIG1hcCwgc3dpdGNoTWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnXG5pbXBvcnQgKiBhcyBFZGl0b3JBY3Rpb25zIGZyb20gJy4vZWRpdG9yLmFjdGlvbnMnXG5pbXBvcnQgeyBFZGl0b3JTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvZWRpdG9yLnNlcnZpY2UnXG5pbXBvcnQgeyBTdG9yZSB9IGZyb20gJ0BuZ3J4L3N0b3JlJ1xuaW1wb3J0IHtcbiAgc2VsZWN0RWRpdG9yQ29uZmlnLFxuICBzZWxlY3RSZWNvcmQsXG4gIHNlbGVjdFJlY29yZEFscmVhZHlTYXZlZE9uY2UsXG59IGZyb20gJy4vZWRpdG9yLnNlbGVjdG9ycydcbmltcG9ydCB7IFJlY29yZHNSZXBvc2l0b3J5SW50ZXJmYWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vZG9tYWluL3NyYy9saWIvcmVwb3NpdG9yeS9yZWNvcmRzLXJlcG9zaXRvcnkuaW50ZXJmYWNlJ1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgRWRpdG9yRWZmZWN0cyB7XG4gIHByaXZhdGUgYWN0aW9ucyQgPSBpbmplY3QoQWN0aW9ucylcbiAgcHJpdmF0ZSBlZGl0b3JTZXJ2aWNlID0gaW5qZWN0KEVkaXRvclNlcnZpY2UpXG4gIHByaXZhdGUgcmVjb3Jkc1JlcG9zaXRvcnkgPSBpbmplY3QoUmVjb3Jkc1JlcG9zaXRvcnlJbnRlcmZhY2UpXG4gIHByaXZhdGUgc3RvcmUgPSBpbmplY3QoU3RvcmUpXG5cbiAgc2F2ZVJlY29yZCQgPSBjcmVhdGVFZmZlY3QoKCkgPT5cbiAgICB0aGlzLmFjdGlvbnMkLnBpcGUoXG4gICAgICBvZlR5cGUoRWRpdG9yQWN0aW9ucy5zYXZlUmVjb3JkKSxcbiAgICAgIHdpdGhMYXRlc3RGcm9tKFxuICAgICAgICB0aGlzLnN0b3JlLnNlbGVjdChzZWxlY3RSZWNvcmQpLFxuICAgICAgICB0aGlzLnN0b3JlLnNlbGVjdChzZWxlY3RFZGl0b3JDb25maWcpLFxuICAgICAgICB0aGlzLnN0b3JlLnNlbGVjdChzZWxlY3RSZWNvcmRBbHJlYWR5U2F2ZWRPbmNlKVxuICAgICAgKSxcbiAgICAgIHN3aXRjaE1hcCgoWywgcmVjb3JkLCBmaWVsZHNDb25maWcsIGFscmVhZHlTYXZlZE9uY2VdKSA9PlxuICAgICAgICB0aGlzLmVkaXRvclNlcnZpY2VcbiAgICAgICAgICAuc2F2ZVJlY29yZChyZWNvcmQsIGZpZWxkc0NvbmZpZywgIWFscmVhZHlTYXZlZE9uY2UpXG4gICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICBzd2l0Y2hNYXAoKFtyZWNvcmQsIHJlY29yZFNvdXJjZV0pID0+XG4gICAgICAgICAgICAgIG9mKFxuICAgICAgICAgICAgICAgIEVkaXRvckFjdGlvbnMuc2F2ZVJlY29yZFN1Y2Nlc3MoKSxcbiAgICAgICAgICAgICAgICBFZGl0b3JBY3Rpb25zLm9wZW5SZWNvcmQoe1xuICAgICAgICAgICAgICAgICAgcmVjb3JkLFxuICAgICAgICAgICAgICAgICAgYWxyZWFkeVNhdmVkT25jZTogdHJ1ZSxcbiAgICAgICAgICAgICAgICAgIHJlY29yZFNvdXJjZSxcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICApXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgY2F0Y2hFcnJvcigoZXJyb3IpID0+XG4gICAgICAgICAgICAgIG9mKFxuICAgICAgICAgICAgICAgIEVkaXRvckFjdGlvbnMuc2F2ZVJlY29yZEZhaWx1cmUoe1xuICAgICAgICAgICAgICAgICAgZXJyb3I6IGVycm9yLm1lc3NhZ2UsXG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgKVxuICAgICAgICAgIClcbiAgICAgIClcbiAgICApXG4gIClcblxuICBtYXJrQXNDaGFuZ2VkJCA9IGNyZWF0ZUVmZmVjdCgoKSA9PlxuICAgIHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICAgIG9mVHlwZShFZGl0b3JBY3Rpb25zLnVwZGF0ZVJlY29yZEZpZWxkKSxcbiAgICAgIG1hcCgoKSA9PiBFZGl0b3JBY3Rpb25zLm1hcmtSZWNvcmRBc0NoYW5nZWQoKSlcbiAgICApXG4gIClcblxuICBzYXZlUmVjb3JkRHJhZnQkID0gY3JlYXRlRWZmZWN0KCgpID0+XG4gICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgb2ZUeXBlKEVkaXRvckFjdGlvbnMudXBkYXRlUmVjb3JkRmllbGQpLFxuICAgICAgZGVib3VuY2VUaW1lKDEwMDApLFxuICAgICAgd2l0aExhdGVzdEZyb20odGhpcy5zdG9yZS5zZWxlY3Qoc2VsZWN0UmVjb3JkKSksXG4gICAgICBzd2l0Y2hNYXAoKFssIHJlY29yZF0pID0+IHRoaXMuZWRpdG9yU2VydmljZS5zYXZlUmVjb3JkQXNEcmFmdChyZWNvcmQpKSxcbiAgICAgIG1hcCgoKSA9PiBFZGl0b3JBY3Rpb25zLmRyYWZ0U2F2ZVN1Y2Nlc3MoKSlcbiAgICApXG4gIClcblxuICB1bmRvUmVjb3JkRHJhZnQkID0gY3JlYXRlRWZmZWN0KCgpID0+XG4gICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgb2ZUeXBlKEVkaXRvckFjdGlvbnMudW5kb1JlY29yZERyYWZ0KSxcbiAgICAgIHdpdGhMYXRlc3RGcm9tKHRoaXMuc3RvcmUuc2VsZWN0KHNlbGVjdFJlY29yZCkpLFxuICAgICAgc3dpdGNoTWFwKChbLCByZWNvcmRdKSA9PiB0aGlzLmVkaXRvclNlcnZpY2UudW5kb1JlY29yZERyYWZ0KHJlY29yZCkpLFxuICAgICAgbWFwKChbcmVjb3JkLCByZWNvcmRTb3VyY2UsIGFscmVhZHlTYXZlZE9uY2VdKSA9PlxuICAgICAgICBFZGl0b3JBY3Rpb25zLm9wZW5SZWNvcmQoe1xuICAgICAgICAgIHJlY29yZCxcbiAgICAgICAgICBhbHJlYWR5U2F2ZWRPbmNlLFxuICAgICAgICAgIHJlY29yZFNvdXJjZSxcbiAgICAgICAgfSlcbiAgICAgIClcbiAgICApXG4gIClcblxuICBjaGVja0hhc0NoYW5nZXNPbk9wZW4kID0gY3JlYXRlRWZmZWN0KCgpID0+XG4gICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgb2ZUeXBlKEVkaXRvckFjdGlvbnMub3BlblJlY29yZCksXG4gICAgICBtYXAoKHsgcmVjb3JkIH0pID0+XG4gICAgICAgIHRoaXMucmVjb3Jkc1JlcG9zaXRvcnkucmVjb3JkSGFzRHJhZnQocmVjb3JkLnVuaXF1ZUlkZW50aWZpZXIpXG4gICAgICApLFxuICAgICAgZmlsdGVyKChoYXNEcmFmdCkgPT4gaGFzRHJhZnQpLFxuICAgICAgbWFwKCgpID0+IEVkaXRvckFjdGlvbnMubWFya1JlY29yZEFzQ2hhbmdlZCgpKVxuICAgIClcbiAgKVxufVxuIl19
@@ -16,7 +16,10 @@ export class EditorFacade {
16
16
  this.saveError$ = this.store.pipe(select(EditorSelectors.selectRecordSaveError), filter((error) => !!error));
17
17
  this.saveSuccess$ = this.actions$.pipe(ofType(EditorActions.saveRecordSuccess));
18
18
  this.changedSinceSave$ = this.store.pipe(select(EditorSelectors.selectRecordChangedSinceSave));
19
- this.recordFields$ = this.store.pipe(select(EditorSelectors.selectRecordFields));
19
+ this.currentSections$ = this.store.pipe(select(EditorSelectors.selectRecordSections));
20
+ this.draftSaveSuccess$ = this.actions$.pipe(ofType(EditorActions.draftSaveSuccess));
21
+ this.currentPage$ = this.store.pipe(select(EditorSelectors.selectCurrentPage));
22
+ this.editorConfig$ = this.store.pipe(select(EditorSelectors.selectEditorConfig));
20
23
  }
21
24
  openRecord(record, recordSource, alreadySavedOnce) {
22
25
  this.store.dispatch(EditorActions.openRecord({ record, recordSource, alreadySavedOnce }));
@@ -24,13 +27,19 @@ export class EditorFacade {
24
27
  saveRecord() {
25
28
  this.store.dispatch(EditorActions.saveRecord());
26
29
  }
30
+ undoRecordDraft() {
31
+ this.store.dispatch(EditorActions.undoRecordDraft());
32
+ }
27
33
  updateRecordField(field, value) {
28
34
  this.store.dispatch(EditorActions.updateRecordField({ field, value }));
29
35
  }
36
+ setCurrentPage(page) {
37
+ this.store.dispatch(EditorActions.setCurrentPage({ page }));
38
+ }
30
39
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EditorFacade, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
31
40
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EditorFacade }); }
32
41
  }
33
42
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EditorFacade, decorators: [{
34
43
  type: Injectable
35
44
  }] });
36
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLmZhY2FkZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmVhdHVyZS9lZGl0b3Ivc3JjL2xpYi8rc3RhdGUvZWRpdG9yLmZhY2FkZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUNsRCxPQUFPLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQUMzQyxPQUFPLEtBQUssYUFBYSxNQUFNLGtCQUFrQixDQUFBO0FBQ2pELE9BQU8sS0FBSyxlQUFlLE1BQU0sb0JBQW9CLENBQUE7QUFFckQsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLE1BQU0sQ0FBQTtBQUM3QixPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQTs7QUFHL0MsTUFBTSxPQUFPLFlBQVk7SUFEekI7UUFFbUIsVUFBSyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQTtRQUM5QixhQUFRLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFBO1FBRWxDLFlBQU8sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsZUFBZSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUE7UUFDL0Qsa0JBQWEsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsZUFBZSxDQUFDLGtCQUFrQixDQUFDLENBQUMsQ0FBQTtRQUMzRSxzQkFBaUIsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FDakMsTUFBTSxDQUFDLGVBQWUsQ0FBQyw0QkFBNEIsQ0FBQyxDQUNyRCxDQUFBO1FBQ0QsWUFBTyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxlQUFlLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxDQUFBO1FBQ3JFLGVBQVUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FDMUIsTUFBTSxDQUFDLGVBQWUsQ0FBQyxxQkFBcUIsQ0FBQyxFQUM3QyxNQUFNLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FDM0IsQ0FBQTtRQUNELGlCQUFZLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUE7UUFDMUUsc0JBQWlCLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQ2pDLE1BQU0sQ0FBQyxlQUFlLENBQUMsNEJBQTRCLENBQUMsQ0FDckQsQ0FBQTtRQUNELGtCQUFhLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLGVBQWUsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLENBQUE7S0FtQjVFO0lBakJDLFVBQVUsQ0FDUixNQUFxQixFQUNyQixZQUFvQixFQUNwQixnQkFBeUI7UUFFekIsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQ2pCLGFBQWEsQ0FBQyxVQUFVLENBQUMsRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLGdCQUFnQixFQUFFLENBQUMsQ0FDckUsQ0FBQTtJQUNILENBQUM7SUFFRCxVQUFVO1FBQ1IsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUE7SUFDakQsQ0FBQztJQUVELGlCQUFpQixDQUFDLEtBQWEsRUFBRSxLQUFjO1FBQzdDLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUE7SUFDeEUsQ0FBQzsrR0FwQ1UsWUFBWTttSEFBWixZQUFZOzs0RkFBWixZQUFZO2tCQUR4QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IHNlbGVjdCwgU3RvcmUgfSBmcm9tICdAbmdyeC9zdG9yZSdcbmltcG9ydCAqIGFzIEVkaXRvckFjdGlvbnMgZnJvbSAnLi9lZGl0b3IuYWN0aW9ucydcbmltcG9ydCAqIGFzIEVkaXRvclNlbGVjdG9ycyBmcm9tICcuL2VkaXRvci5zZWxlY3RvcnMnXG5pbXBvcnQgeyBDYXRhbG9nUmVjb3JkIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vZG9tYWluL3NyYy9saWIvbW9kZWwvcmVjb3JkJ1xuaW1wb3J0IHsgZmlsdGVyIH0gZnJvbSAncnhqcydcbmltcG9ydCB7IEFjdGlvbnMsIG9mVHlwZSB9IGZyb20gJ0BuZ3J4L2VmZmVjdHMnXG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBFZGl0b3JGYWNhZGUge1xuICBwcml2YXRlIHJlYWRvbmx5IHN0b3JlID0gaW5qZWN0KFN0b3JlKVxuICBwcml2YXRlIGFjdGlvbnMkID0gaW5qZWN0KEFjdGlvbnMpXG5cbiAgcmVjb3JkJCA9IHRoaXMuc3RvcmUucGlwZShzZWxlY3QoRWRpdG9yU2VsZWN0b3JzLnNlbGVjdFJlY29yZCkpXG4gIHJlY29yZFNvdXJjZSQgPSB0aGlzLnN0b3JlLnBpcGUoc2VsZWN0KEVkaXRvclNlbGVjdG9ycy5zZWxlY3RSZWNvcmRTb3VyY2UpKVxuICBhbHJlYWR5U2F2ZWRPbmNlJCA9IHRoaXMuc3RvcmUucGlwZShcbiAgICBzZWxlY3QoRWRpdG9yU2VsZWN0b3JzLnNlbGVjdFJlY29yZEFscmVhZHlTYXZlZE9uY2UpXG4gIClcbiAgc2F2aW5nJCA9IHRoaXMuc3RvcmUucGlwZShzZWxlY3QoRWRpdG9yU2VsZWN0b3JzLnNlbGVjdFJlY29yZFNhdmluZykpXG4gIHNhdmVFcnJvciQgPSB0aGlzLnN0b3JlLnBpcGUoXG4gICAgc2VsZWN0KEVkaXRvclNlbGVjdG9ycy5zZWxlY3RSZWNvcmRTYXZlRXJyb3IpLFxuICAgIGZpbHRlcigoZXJyb3IpID0+ICEhZXJyb3IpXG4gIClcbiAgc2F2ZVN1Y2Nlc3MkID0gdGhpcy5hY3Rpb25zJC5waXBlKG9mVHlwZShFZGl0b3JBY3Rpb25zLnNhdmVSZWNvcmRTdWNjZXNzKSlcbiAgY2hhbmdlZFNpbmNlU2F2ZSQgPSB0aGlzLnN0b3JlLnBpcGUoXG4gICAgc2VsZWN0KEVkaXRvclNlbGVjdG9ycy5zZWxlY3RSZWNvcmRDaGFuZ2VkU2luY2VTYXZlKVxuICApXG4gIHJlY29yZEZpZWxkcyQgPSB0aGlzLnN0b3JlLnBpcGUoc2VsZWN0KEVkaXRvclNlbGVjdG9ycy5zZWxlY3RSZWNvcmRGaWVsZHMpKVxuXG4gIG9wZW5SZWNvcmQoXG4gICAgcmVjb3JkOiBDYXRhbG9nUmVjb3JkLFxuICAgIHJlY29yZFNvdXJjZTogc3RyaW5nLFxuICAgIGFscmVhZHlTYXZlZE9uY2U6IGJvb2xlYW5cbiAgKSB7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChcbiAgICAgIEVkaXRvckFjdGlvbnMub3BlblJlY29yZCh7IHJlY29yZCwgcmVjb3JkU291cmNlLCBhbHJlYWR5U2F2ZWRPbmNlIH0pXG4gICAgKVxuICB9XG5cbiAgc2F2ZVJlY29yZCgpIHtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKEVkaXRvckFjdGlvbnMuc2F2ZVJlY29yZCgpKVxuICB9XG5cbiAgdXBkYXRlUmVjb3JkRmllbGQoZmllbGQ6IHN0cmluZywgdmFsdWU6IHVua25vd24pIHtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKEVkaXRvckFjdGlvbnMudXBkYXRlUmVjb3JkRmllbGQoeyBmaWVsZCwgdmFsdWUgfSkpXG4gIH1cbn1cbiJdfQ==
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLmZhY2FkZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmVhdHVyZS9lZGl0b3Ivc3JjL2xpYi8rc3RhdGUvZWRpdG9yLmZhY2FkZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUNsRCxPQUFPLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQUMzQyxPQUFPLEtBQUssYUFBYSxNQUFNLGtCQUFrQixDQUFBO0FBQ2pELE9BQU8sS0FBSyxlQUFlLE1BQU0sb0JBQW9CLENBQUE7QUFFckQsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLE1BQU0sQ0FBQTtBQUM3QixPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQTs7QUFHL0MsTUFBTSxPQUFPLFlBQVk7SUFEekI7UUFFbUIsVUFBSyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQTtRQUM5QixhQUFRLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFBO1FBRWxDLFlBQU8sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsZUFBZSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUE7UUFDL0Qsa0JBQWEsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsZUFBZSxDQUFDLGtCQUFrQixDQUFDLENBQUMsQ0FBQTtRQUMzRSxzQkFBaUIsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FDakMsTUFBTSxDQUFDLGVBQWUsQ0FBQyw0QkFBNEIsQ0FBQyxDQUNyRCxDQUFBO1FBQ0QsWUFBTyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxlQUFlLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxDQUFBO1FBQ3JFLGVBQVUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FDMUIsTUFBTSxDQUFDLGVBQWUsQ0FBQyxxQkFBcUIsQ0FBQyxFQUM3QyxNQUFNLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FDM0IsQ0FBQTtRQUNELGlCQUFZLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUE7UUFDMUUsc0JBQWlCLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQ2pDLE1BQU0sQ0FBQyxlQUFlLENBQUMsNEJBQTRCLENBQUMsQ0FDckQsQ0FBQTtRQUNELHFCQUFnQixHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUNoQyxNQUFNLENBQUMsZUFBZSxDQUFDLG9CQUFvQixDQUFDLENBQzdDLENBQUE7UUFDRCxzQkFBaUIsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQTtRQUM5RSxpQkFBWSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxlQUFlLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxDQUFBO1FBQ3pFLGtCQUFhLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLGVBQWUsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLENBQUE7S0EyQjVFO0lBekJDLFVBQVUsQ0FDUixNQUFxQixFQUNyQixZQUFvQixFQUNwQixnQkFBeUI7UUFFekIsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQ2pCLGFBQWEsQ0FBQyxVQUFVLENBQUMsRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLGdCQUFnQixFQUFFLENBQUMsQ0FDckUsQ0FBQTtJQUNILENBQUM7SUFFRCxVQUFVO1FBQ1IsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUE7SUFDakQsQ0FBQztJQUVELGVBQWU7UUFDYixJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsZUFBZSxFQUFFLENBQUMsQ0FBQTtJQUN0RCxDQUFDO0lBRUQsaUJBQWlCLENBQUMsS0FBYSxFQUFFLEtBQWM7UUFDN0MsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLGlCQUFpQixDQUFDLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQTtJQUN4RSxDQUFDO0lBRUQsY0FBYyxDQUFDLElBQVk7UUFDekIsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLGNBQWMsQ0FBQyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQTtJQUM3RCxDQUFDOytHQWpEVSxZQUFZO21IQUFaLFlBQVk7OzRGQUFaLFlBQVk7a0JBRHhCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgc2VsZWN0LCBTdG9yZSB9IGZyb20gJ0BuZ3J4L3N0b3JlJ1xuaW1wb3J0ICogYXMgRWRpdG9yQWN0aW9ucyBmcm9tICcuL2VkaXRvci5hY3Rpb25zJ1xuaW1wb3J0ICogYXMgRWRpdG9yU2VsZWN0b3JzIGZyb20gJy4vZWRpdG9yLnNlbGVjdG9ycydcbmltcG9ydCB7IENhdGFsb2dSZWNvcmQgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9kb21haW4vc3JjL2xpYi9tb2RlbC9yZWNvcmQnXG5pbXBvcnQgeyBmaWx0ZXIgfSBmcm9tICdyeGpzJ1xuaW1wb3J0IHsgQWN0aW9ucywgb2ZUeXBlIH0gZnJvbSAnQG5ncngvZWZmZWN0cydcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEVkaXRvckZhY2FkZSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgc3RvcmUgPSBpbmplY3QoU3RvcmUpXG4gIHByaXZhdGUgYWN0aW9ucyQgPSBpbmplY3QoQWN0aW9ucylcblxuICByZWNvcmQkID0gdGhpcy5zdG9yZS5waXBlKHNlbGVjdChFZGl0b3JTZWxlY3RvcnMuc2VsZWN0UmVjb3JkKSlcbiAgcmVjb3JkU291cmNlJCA9IHRoaXMuc3RvcmUucGlwZShzZWxlY3QoRWRpdG9yU2VsZWN0b3JzLnNlbGVjdFJlY29yZFNvdXJjZSkpXG4gIGFscmVhZHlTYXZlZE9uY2UkID0gdGhpcy5zdG9yZS5waXBlKFxuICAgIHNlbGVjdChFZGl0b3JTZWxlY3RvcnMuc2VsZWN0UmVjb3JkQWxyZWFkeVNhdmVkT25jZSlcbiAgKVxuICBzYXZpbmckID0gdGhpcy5zdG9yZS5waXBlKHNlbGVjdChFZGl0b3JTZWxlY3RvcnMuc2VsZWN0UmVjb3JkU2F2aW5nKSlcbiAgc2F2ZUVycm9yJCA9IHRoaXMuc3RvcmUucGlwZShcbiAgICBzZWxlY3QoRWRpdG9yU2VsZWN0b3JzLnNlbGVjdFJlY29yZFNhdmVFcnJvciksXG4gICAgZmlsdGVyKChlcnJvcikgPT4gISFlcnJvcilcbiAgKVxuICBzYXZlU3VjY2VzcyQgPSB0aGlzLmFjdGlvbnMkLnBpcGUob2ZUeXBlKEVkaXRvckFjdGlvbnMuc2F2ZVJlY29yZFN1Y2Nlc3MpKVxuICBjaGFuZ2VkU2luY2VTYXZlJCA9IHRoaXMuc3RvcmUucGlwZShcbiAgICBzZWxlY3QoRWRpdG9yU2VsZWN0b3JzLnNlbGVjdFJlY29yZENoYW5nZWRTaW5jZVNhdmUpXG4gIClcbiAgY3VycmVudFNlY3Rpb25zJCA9IHRoaXMuc3RvcmUucGlwZShcbiAgICBzZWxlY3QoRWRpdG9yU2VsZWN0b3JzLnNlbGVjdFJlY29yZFNlY3Rpb25zKVxuICApXG4gIGRyYWZ0U2F2ZVN1Y2Nlc3MkID0gdGhpcy5hY3Rpb25zJC5waXBlKG9mVHlwZShFZGl0b3JBY3Rpb25zLmRyYWZ0U2F2ZVN1Y2Nlc3MpKVxuICBjdXJyZW50UGFnZSQgPSB0aGlzLnN0b3JlLnBpcGUoc2VsZWN0KEVkaXRvclNlbGVjdG9ycy5zZWxlY3RDdXJyZW50UGFnZSkpXG4gIGVkaXRvckNvbmZpZyQgPSB0aGlzLnN0b3JlLnBpcGUoc2VsZWN0KEVkaXRvclNlbGVjdG9ycy5zZWxlY3RFZGl0b3JDb25maWcpKVxuXG4gIG9wZW5SZWNvcmQoXG4gICAgcmVjb3JkOiBDYXRhbG9nUmVjb3JkLFxuICAgIHJlY29yZFNvdXJjZTogc3RyaW5nLFxuICAgIGFscmVhZHlTYXZlZE9uY2U6IGJvb2xlYW5cbiAgKSB7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChcbiAgICAgIEVkaXRvckFjdGlvbnMub3BlblJlY29yZCh7IHJlY29yZCwgcmVjb3JkU291cmNlLCBhbHJlYWR5U2F2ZWRPbmNlIH0pXG4gICAgKVxuICB9XG5cbiAgc2F2ZVJlY29yZCgpIHtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKEVkaXRvckFjdGlvbnMuc2F2ZVJlY29yZCgpKVxuICB9XG5cbiAgdW5kb1JlY29yZERyYWZ0KCkge1xuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goRWRpdG9yQWN0aW9ucy51bmRvUmVjb3JkRHJhZnQoKSlcbiAgfVxuXG4gIHVwZGF0ZVJlY29yZEZpZWxkKGZpZWxkOiBzdHJpbmcsIHZhbHVlOiB1bmtub3duKSB7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChFZGl0b3JBY3Rpb25zLnVwZGF0ZVJlY29yZEZpZWxkKHsgZmllbGQsIHZhbHVlIH0pKVxuICB9XG5cbiAgc2V0Q3VycmVudFBhZ2UocGFnZTogbnVtYmVyKSB7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChFZGl0b3JBY3Rpb25zLnNldEN1cnJlbnRQYWdlKHsgcGFnZSB9KSlcbiAgfVxufVxuIl19
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLm1vZGVscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmVhdHVyZS9lZGl0b3Ivc3JjL2xpYi8rc3RhdGUvZWRpdG9yLm1vZGVscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHR5cGUgU2F2ZVJlY29yZEVycm9yID0gc3RyaW5nXG4iXX0=
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLm1vZGVscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmVhdHVyZS9lZGl0b3Ivc3JjL2xpYi8rc3RhdGUvZWRpdG9yLm1vZGVscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRWRpdG9yRmllbGQsIEVkaXRvckZpZWxkVmFsdWUsIEVkaXRvclNlY3Rpb24gfSBmcm9tICcuLi9tb2RlbHMnXG5cbmV4cG9ydCB0eXBlIFNhdmVSZWNvcmRFcnJvciA9IHN0cmluZ1xuXG5leHBvcnQgaW50ZXJmYWNlIEVkaXRvckZpZWxkV2l0aFZhbHVlIHtcbiAgY29uZmlnOiBFZGl0b3JGaWVsZFxuICB2YWx1ZTogRWRpdG9yRmllbGRWYWx1ZVxufVxuXG5leHBvcnQgdHlwZSBFZGl0b3JTZWN0aW9uV2l0aFZhbHVlcyA9IEVkaXRvclNlY3Rpb24gJiB7XG4gIGZpZWxkc1dpdGhWYWx1ZXM6IEVkaXRvckZpZWxkV2l0aFZhbHVlW11cbn1cbiJdfQ==
@@ -1,6 +1,6 @@
1
1
  import { createReducer, on } from '@ngrx/store';
2
2
  import * as EditorActions from './editor.actions';
3
- import { DEFAULT_FIELDS } from '../fields.config';
3
+ import { DEFAULT_CONFIGURATION } from '../fields.config';
4
4
  export const EDITOR_FEATURE_KEY = 'editor';
5
5
  export const initialEditorState = {
6
6
  record: null,
@@ -9,7 +9,8 @@ export const initialEditorState = {
9
9
  saving: false,
10
10
  saveError: null,
11
11
  changedSinceSave: false,
12
- fieldsConfig: DEFAULT_FIELDS,
12
+ editorConfig: DEFAULT_CONFIGURATION,
13
+ currentPage: 0,
13
14
  };
14
15
  const reducer = createReducer(initialEditorState, on(EditorActions.openRecord, (state, { record, recordSource, alreadySavedOnce }) => ({
15
16
  ...state,
@@ -39,8 +40,11 @@ const reducer = createReducer(initialEditorState, on(EditorActions.openRecord, (
39
40
  })), on(EditorActions.markRecordAsChanged, (state) => ({
40
41
  ...state,
41
42
  changedSinceSave: true,
43
+ })), on(EditorActions.setCurrentPage, (state, { page }) => ({
44
+ ...state,
45
+ currentPage: page,
42
46
  })));
43
47
  export function editorReducer(state, action) {
44
48
  return reducer(state, action);
45
49
  }
46
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLnJlZHVjZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvZWRpdG9yL3NyYy9saWIvK3N0YXRlL2VkaXRvci5yZWR1Y2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBVSxhQUFhLEVBQUUsRUFBRSxFQUFFLE1BQU0sYUFBYSxDQUFBO0FBQ3ZELE9BQU8sS0FBSyxhQUFhLE1BQU0sa0JBQWtCLENBQUE7QUFJakQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtCQUFrQixDQUFBO0FBRWpELE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLFFBQVEsQ0FBQTtBQXdCMUMsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQWdCO0lBQzdDLE1BQU0sRUFBRSxJQUFJO0lBQ1osWUFBWSxFQUFFLElBQUk7SUFDbEIsZ0JBQWdCLEVBQUUsS0FBSztJQUN2QixNQUFNLEVBQUUsS0FBSztJQUNiLFNBQVMsRUFBRSxJQUFJO0lBQ2YsZ0JBQWdCLEVBQUUsS0FBSztJQUN2QixZQUFZLEVBQUUsY0FBYztDQUM3QixDQUFBO0FBRUQsTUFBTSxPQUFPLEdBQUcsYUFBYSxDQUMzQixrQkFBa0IsRUFDbEIsRUFBRSxDQUNBLGFBQWEsQ0FBQyxVQUFVLEVBQ3hCLENBQUMsS0FBSyxFQUFFLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxnQkFBZ0IsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ3RELEdBQUcsS0FBSztJQUNSLGdCQUFnQixFQUFFLEtBQUs7SUFDdkIsWUFBWSxFQUFFLFlBQVksSUFBSSxJQUFJO0lBQ2xDLGdCQUFnQjtJQUNoQixNQUFNO0NBQ1AsQ0FBQyxDQUNILEVBQ0QsRUFBRSxDQUFDLGFBQWEsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDdkMsR0FBRyxLQUFLO0lBQ1IsTUFBTSxFQUFFLElBQUk7SUFDWixTQUFTLEVBQUUsSUFBSTtDQUNoQixDQUFDLENBQUMsRUFDSCxFQUFFLENBQUMsYUFBYSxDQUFDLGlCQUFpQixFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQzlDLEdBQUcsS0FBSztJQUNSLE1BQU0sRUFBRSxLQUFLO0lBQ2IsU0FBUyxFQUFFLElBQUk7SUFDZixnQkFBZ0IsRUFBRSxLQUFLO0NBQ3hCLENBQUMsQ0FBQyxFQUNILEVBQUUsQ0FBQyxhQUFhLENBQUMsaUJBQWlCLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUN6RCxHQUFHLEtBQUs7SUFDUixNQUFNLEVBQUUsS0FBSztJQUNiLFNBQVMsRUFBRSxLQUFLO0NBQ2pCLENBQUMsQ0FBQyxFQUNILEVBQUUsQ0FBQyxhQUFhLENBQUMsaUJBQWlCLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDaEUsR0FBRyxLQUFLO0lBQ1IsTUFBTSxFQUFFO1FBQ04sR0FBRyxLQUFLLENBQUMsTUFBTTtRQUNmLENBQUMsS0FBSyxDQUFDLEVBQUUsS0FBSztLQUNmO0NBQ0YsQ0FBQyxDQUFDLEVBQ0gsRUFBRSxDQUFDLGFBQWEsQ0FBQyxtQkFBbUIsRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNoRCxHQUFHLEtBQUs7SUFDUixnQkFBZ0IsRUFBRSxJQUFJO0NBQ3ZCLENBQUMsQ0FBQyxDQUNKLENBQUE7QUFFRCxNQUFNLFVBQVUsYUFBYSxDQUFDLEtBQThCLEVBQUUsTUFBYztJQUMxRSxPQUFPLE9BQU8sQ0FBQyxLQUFLLEVBQUUsTUFBTSxDQUFDLENBQUE7QUFDL0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFjdGlvbiwgY3JlYXRlUmVkdWNlciwgb24gfSBmcm9tICdAbmdyeC9zdG9yZSdcbmltcG9ydCAqIGFzIEVkaXRvckFjdGlvbnMgZnJvbSAnLi9lZGl0b3IuYWN0aW9ucydcbmltcG9ydCB7IENhdGFsb2dSZWNvcmQgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9kb21haW4vc3JjL2xpYi9tb2RlbC9yZWNvcmQnXG5pbXBvcnQgeyBTYXZlUmVjb3JkRXJyb3IgfSBmcm9tICcuL2VkaXRvci5tb2RlbHMnXG5pbXBvcnQgeyBFZGl0b3JGaWVsZHNDb25maWcgfSBmcm9tICcuLi9tb2RlbHMvZmllbGRzLm1vZGVsJ1xuaW1wb3J0IHsgREVGQVVMVF9GSUVMRFMgfSBmcm9tICcuLi9maWVsZHMuY29uZmlnJ1xuXG5leHBvcnQgY29uc3QgRURJVE9SX0ZFQVRVUkVfS0VZID0gJ2VkaXRvcidcblxuLyoqXG4gKiBAcHJvcGVydHkgcmVjb3JkIFRoZSByZWNvcmQgYmVpbmcgZWRpdGVkXG4gKiBAcHJvcGVydHkgcmVjb3JkU291cmNlIE9yaWdpbmFsIHJlcHJlc2VudGF0aW9uIG9mIHRoZSByZWNvcmQgYXMgdGV4dCwgdXNlZCBhcyBhIHJlZmVyZW5jZTsgbnVsbCBtZWFucyB0aGUgcmVjb3JkIGhhc24ndCBiZSBzZXJpYWxpemVkIHlldFxuICogQHByb3BlcnR5IHNhdmluZ1xuICogQHByb3BlcnR5IHNhdmVFcnJvclxuICogQHByb3BlcnR5IGNoYW5nZWRTaW5jZVNhdmVcbiAqIEBwcm9wZXJ0eSBmaWVsZHNDb25maWcgQ29uZmlndXJhdGlvbiBmb3IgdGhlIGZpZWxkcyBpbiB0aGUgZWRpdG9yXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRWRpdG9yU3RhdGUge1xuICByZWNvcmQ6IENhdGFsb2dSZWNvcmQgfCBudWxsXG4gIHJlY29yZFNvdXJjZTogc3RyaW5nIHwgbnVsbFxuICBhbHJlYWR5U2F2ZWRPbmNlOiBib29sZWFuXG4gIHNhdmluZzogYm9vbGVhblxuICBzYXZlRXJyb3I6IFNhdmVSZWNvcmRFcnJvciB8IG51bGxcbiAgY2hhbmdlZFNpbmNlU2F2ZTogYm9vbGVhblxuICBmaWVsZHNDb25maWc6IEVkaXRvckZpZWxkc0NvbmZpZ1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEVkaXRvclBhcnRpYWxTdGF0ZSB7XG4gIHJlYWRvbmx5IFtFRElUT1JfRkVBVFVSRV9LRVldOiBFZGl0b3JTdGF0ZVxufVxuXG5leHBvcnQgY29uc3QgaW5pdGlhbEVkaXRvclN0YXRlOiBFZGl0b3JTdGF0ZSA9IHtcbiAgcmVjb3JkOiBudWxsLFxuICByZWNvcmRTb3VyY2U6IG51bGwsXG4gIGFscmVhZHlTYXZlZE9uY2U6IGZhbHNlLFxuICBzYXZpbmc6IGZhbHNlLFxuICBzYXZlRXJyb3I6IG51bGwsXG4gIGNoYW5nZWRTaW5jZVNhdmU6IGZhbHNlLFxuICBmaWVsZHNDb25maWc6IERFRkFVTFRfRklFTERTLFxufVxuXG5jb25zdCByZWR1Y2VyID0gY3JlYXRlUmVkdWNlcihcbiAgaW5pdGlhbEVkaXRvclN0YXRlLFxuICBvbihcbiAgICBFZGl0b3JBY3Rpb25zLm9wZW5SZWNvcmQsXG4gICAgKHN0YXRlLCB7IHJlY29yZCwgcmVjb3JkU291cmNlLCBhbHJlYWR5U2F2ZWRPbmNlIH0pID0+ICh7XG4gICAgICAuLi5zdGF0ZSxcbiAgICAgIGNoYW5nZWRTaW5jZVNhdmU6IGZhbHNlLFxuICAgICAgcmVjb3JkU291cmNlOiByZWNvcmRTb3VyY2UgPz8gbnVsbCxcbiAgICAgIGFscmVhZHlTYXZlZE9uY2UsXG4gICAgICByZWNvcmQsXG4gICAgfSlcbiAgKSxcbiAgb24oRWRpdG9yQWN0aW9ucy5zYXZlUmVjb3JkLCAoc3RhdGUpID0+ICh7XG4gICAgLi4uc3RhdGUsXG4gICAgc2F2aW5nOiB0cnVlLFxuICAgIHNhdmVFcnJvcjogbnVsbCxcbiAgfSkpLFxuICBvbihFZGl0b3JBY3Rpb25zLnNhdmVSZWNvcmRTdWNjZXNzLCAoc3RhdGUpID0+ICh7XG4gICAgLi4uc3RhdGUsXG4gICAgc2F2aW5nOiBmYWxzZSxcbiAgICBzYXZlRXJyb3I6IG51bGwsXG4gICAgY2hhbmdlZFNpbmNlU2F2ZTogZmFsc2UsXG4gIH0pKSxcbiAgb24oRWRpdG9yQWN0aW9ucy5zYXZlUmVjb3JkRmFpbHVyZSwgKHN0YXRlLCB7IGVycm9yIH0pID0+ICh7XG4gICAgLi4uc3RhdGUsXG4gICAgc2F2aW5nOiBmYWxzZSxcbiAgICBzYXZlRXJyb3I6IGVycm9yLFxuICB9KSksXG4gIG9uKEVkaXRvckFjdGlvbnMudXBkYXRlUmVjb3JkRmllbGQsIChzdGF0ZSwgeyBmaWVsZCwgdmFsdWUgfSkgPT4gKHtcbiAgICAuLi5zdGF0ZSxcbiAgICByZWNvcmQ6IHtcbiAgICAgIC4uLnN0YXRlLnJlY29yZCxcbiAgICAgIFtmaWVsZF06IHZhbHVlLFxuICAgIH0sXG4gIH0pKSxcbiAgb24oRWRpdG9yQWN0aW9ucy5tYXJrUmVjb3JkQXNDaGFuZ2VkLCAoc3RhdGUpID0+ICh7XG4gICAgLi4uc3RhdGUsXG4gICAgY2hhbmdlZFNpbmNlU2F2ZTogdHJ1ZSxcbiAgfSkpXG4pXG5cbmV4cG9ydCBmdW5jdGlvbiBlZGl0b3JSZWR1Y2VyKHN0YXRlOiBFZGl0b3JTdGF0ZSB8IHVuZGVmaW5lZCwgYWN0aW9uOiBBY3Rpb24pIHtcbiAgcmV0dXJuIHJlZHVjZXIoc3RhdGUsIGFjdGlvbilcbn1cbiJdfQ==
50
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLnJlZHVjZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvZWRpdG9yL3NyYy9saWIvK3N0YXRlL2VkaXRvci5yZWR1Y2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBVSxhQUFhLEVBQUUsRUFBRSxFQUFFLE1BQU0sYUFBYSxDQUFBO0FBQ3ZELE9BQU8sS0FBSyxhQUFhLE1BQU0sa0JBQWtCLENBQUE7QUFJakQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sa0JBQWtCLENBQUE7QUFFeEQsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQUcsUUFBUSxDQUFBO0FBeUIxQyxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBZ0I7SUFDN0MsTUFBTSxFQUFFLElBQUk7SUFDWixZQUFZLEVBQUUsSUFBSTtJQUNsQixnQkFBZ0IsRUFBRSxLQUFLO0lBQ3ZCLE1BQU0sRUFBRSxLQUFLO0lBQ2IsU0FBUyxFQUFFLElBQUk7SUFDZixnQkFBZ0IsRUFBRSxLQUFLO0lBQ3ZCLFlBQVksRUFBRSxxQkFBcUI7SUFDbkMsV0FBVyxFQUFFLENBQUM7Q0FDZixDQUFBO0FBRUQsTUFBTSxPQUFPLEdBQUcsYUFBYSxDQUMzQixrQkFBa0IsRUFDbEIsRUFBRSxDQUNBLGFBQWEsQ0FBQyxVQUFVLEVBQ3hCLENBQUMsS0FBSyxFQUFFLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxnQkFBZ0IsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ3RELEdBQUcsS0FBSztJQUNSLGdCQUFnQixFQUFFLEtBQUs7SUFDdkIsWUFBWSxFQUFFLFlBQVksSUFBSSxJQUFJO0lBQ2xDLGdCQUFnQjtJQUNoQixNQUFNO0NBQ1AsQ0FBQyxDQUNILEVBQ0QsRUFBRSxDQUFDLGFBQWEsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDdkMsR0FBRyxLQUFLO0lBQ1IsTUFBTSxFQUFFLElBQUk7SUFDWixTQUFTLEVBQUUsSUFBSTtDQUNoQixDQUFDLENBQUMsRUFDSCxFQUFFLENBQUMsYUFBYSxDQUFDLGlCQUFpQixFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQzlDLEdBQUcsS0FBSztJQUNSLE1BQU0sRUFBRSxLQUFLO0lBQ2IsU0FBUyxFQUFFLElBQUk7SUFDZixnQkFBZ0IsRUFBRSxLQUFLO0NBQ3hCLENBQUMsQ0FBQyxFQUNILEVBQUUsQ0FBQyxhQUFhLENBQUMsaUJBQWlCLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUN6RCxHQUFHLEtBQUs7SUFDUixNQUFNLEVBQUUsS0FBSztJQUNiLFNBQVMsRUFBRSxLQUFLO0NBQ2pCLENBQUMsQ0FBQyxFQUNILEVBQUUsQ0FBQyxhQUFhLENBQUMsaUJBQWlCLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDaEUsR0FBRyxLQUFLO0lBQ1IsTUFBTSxFQUFFO1FBQ04sR0FBRyxLQUFLLENBQUMsTUFBTTtRQUNmLENBQUMsS0FBSyxDQUFDLEVBQUUsS0FBSztLQUNmO0NBQ0YsQ0FBQyxDQUFDLEVBQ0gsRUFBRSxDQUFDLGFBQWEsQ0FBQyxtQkFBbUIsRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNoRCxHQUFHLEtBQUs7SUFDUixnQkFBZ0IsRUFBRSxJQUFJO0NBQ3ZCLENBQUMsQ0FBQyxFQUNILEVBQUUsQ0FBQyxhQUFhLENBQUMsY0FBYyxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDckQsR0FBRyxLQUFLO0lBQ1IsV0FBVyxFQUFFLElBQUk7Q0FDbEIsQ0FBQyxDQUFDLENBQ0osQ0FBQTtBQUVELE1BQU0sVUFBVSxhQUFhLENBQUMsS0FBOEIsRUFBRSxNQUFjO0lBQzFFLE9BQU8sT0FBTyxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQTtBQUMvQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWN0aW9uLCBjcmVhdGVSZWR1Y2VyLCBvbiB9IGZyb20gJ0BuZ3J4L3N0b3JlJ1xuaW1wb3J0ICogYXMgRWRpdG9yQWN0aW9ucyBmcm9tICcuL2VkaXRvci5hY3Rpb25zJ1xuaW1wb3J0IHsgQ2F0YWxvZ1JlY29yZCB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL2RvbWFpbi9zcmMvbGliL21vZGVsL3JlY29yZCdcbmltcG9ydCB7IFNhdmVSZWNvcmRFcnJvciB9IGZyb20gJy4vZWRpdG9yLm1vZGVscydcbmltcG9ydCB7IEVkaXRvckNvbmZpZyB9IGZyb20gJy4uL21vZGVscydcbmltcG9ydCB7IERFRkFVTFRfQ09ORklHVVJBVElPTiB9IGZyb20gJy4uL2ZpZWxkcy5jb25maWcnXG5cbmV4cG9ydCBjb25zdCBFRElUT1JfRkVBVFVSRV9LRVkgPSAnZWRpdG9yJ1xuXG4vKipcbiAqIEBwcm9wZXJ0eSByZWNvcmQgVGhlIHJlY29yZCBiZWluZyBlZGl0ZWRcbiAqIEBwcm9wZXJ0eSByZWNvcmRTb3VyY2UgT3JpZ2luYWwgcmVwcmVzZW50YXRpb24gb2YgdGhlIHJlY29yZCBhcyB0ZXh0LCB1c2VkIGFzIGEgcmVmZXJlbmNlOyBudWxsIG1lYW5zIHRoZSByZWNvcmQgaGFzbid0IGJlIHNlcmlhbGl6ZWQgeWV0XG4gKiBAcHJvcGVydHkgc2F2aW5nXG4gKiBAcHJvcGVydHkgc2F2ZUVycm9yXG4gKiBAcHJvcGVydHkgY2hhbmdlZFNpbmNlU2F2ZVxuICogQHByb3BlcnR5IGVkaXRvckNvbmZpZyBDb25maWd1cmF0aW9uIGZvciB0aGUgZmllbGRzIGluIHRoZSBlZGl0b3JcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBFZGl0b3JTdGF0ZSB7XG4gIHJlY29yZDogQ2F0YWxvZ1JlY29yZCB8IG51bGxcbiAgcmVjb3JkU291cmNlOiBzdHJpbmcgfCBudWxsXG4gIGFscmVhZHlTYXZlZE9uY2U6IGJvb2xlYW5cbiAgc2F2aW5nOiBib29sZWFuXG4gIHNhdmVFcnJvcjogU2F2ZVJlY29yZEVycm9yIHwgbnVsbFxuICBjaGFuZ2VkU2luY2VTYXZlOiBib29sZWFuXG4gIGVkaXRvckNvbmZpZzogRWRpdG9yQ29uZmlnXG4gIGN1cnJlbnRQYWdlOiBudW1iZXJcbn1cblxuZXhwb3J0IGludGVyZmFjZSBFZGl0b3JQYXJ0aWFsU3RhdGUge1xuICByZWFkb25seSBbRURJVE9SX0ZFQVRVUkVfS0VZXTogRWRpdG9yU3RhdGVcbn1cblxuZXhwb3J0IGNvbnN0IGluaXRpYWxFZGl0b3JTdGF0ZTogRWRpdG9yU3RhdGUgPSB7XG4gIHJlY29yZDogbnVsbCxcbiAgcmVjb3JkU291cmNlOiBudWxsLFxuICBhbHJlYWR5U2F2ZWRPbmNlOiBmYWxzZSxcbiAgc2F2aW5nOiBmYWxzZSxcbiAgc2F2ZUVycm9yOiBudWxsLFxuICBjaGFuZ2VkU2luY2VTYXZlOiBmYWxzZSxcbiAgZWRpdG9yQ29uZmlnOiBERUZBVUxUX0NPTkZJR1VSQVRJT04sXG4gIGN1cnJlbnRQYWdlOiAwLFxufVxuXG5jb25zdCByZWR1Y2VyID0gY3JlYXRlUmVkdWNlcihcbiAgaW5pdGlhbEVkaXRvclN0YXRlLFxuICBvbihcbiAgICBFZGl0b3JBY3Rpb25zLm9wZW5SZWNvcmQsXG4gICAgKHN0YXRlLCB7IHJlY29yZCwgcmVjb3JkU291cmNlLCBhbHJlYWR5U2F2ZWRPbmNlIH0pID0+ICh7XG4gICAgICAuLi5zdGF0ZSxcbiAgICAgIGNoYW5nZWRTaW5jZVNhdmU6IGZhbHNlLFxuICAgICAgcmVjb3JkU291cmNlOiByZWNvcmRTb3VyY2UgPz8gbnVsbCxcbiAgICAgIGFscmVhZHlTYXZlZE9uY2UsXG4gICAgICByZWNvcmQsXG4gICAgfSlcbiAgKSxcbiAgb24oRWRpdG9yQWN0aW9ucy5zYXZlUmVjb3JkLCAoc3RhdGUpID0+ICh7XG4gICAgLi4uc3RhdGUsXG4gICAgc2F2aW5nOiB0cnVlLFxuICAgIHNhdmVFcnJvcjogbnVsbCxcbiAgfSkpLFxuICBvbihFZGl0b3JBY3Rpb25zLnNhdmVSZWNvcmRTdWNjZXNzLCAoc3RhdGUpID0+ICh7XG4gICAgLi4uc3RhdGUsXG4gICAgc2F2aW5nOiBmYWxzZSxcbiAgICBzYXZlRXJyb3I6IG51bGwsXG4gICAgY2hhbmdlZFNpbmNlU2F2ZTogZmFsc2UsXG4gIH0pKSxcbiAgb24oRWRpdG9yQWN0aW9ucy5zYXZlUmVjb3JkRmFpbHVyZSwgKHN0YXRlLCB7IGVycm9yIH0pID0+ICh7XG4gICAgLi4uc3RhdGUsXG4gICAgc2F2aW5nOiBmYWxzZSxcbiAgICBzYXZlRXJyb3I6IGVycm9yLFxuICB9KSksXG4gIG9uKEVkaXRvckFjdGlvbnMudXBkYXRlUmVjb3JkRmllbGQsIChzdGF0ZSwgeyBmaWVsZCwgdmFsdWUgfSkgPT4gKHtcbiAgICAuLi5zdGF0ZSxcbiAgICByZWNvcmQ6IHtcbiAgICAgIC4uLnN0YXRlLnJlY29yZCxcbiAgICAgIFtmaWVsZF06IHZhbHVlLFxuICAgIH0sXG4gIH0pKSxcbiAgb24oRWRpdG9yQWN0aW9ucy5tYXJrUmVjb3JkQXNDaGFuZ2VkLCAoc3RhdGUpID0+ICh7XG4gICAgLi4uc3RhdGUsXG4gICAgY2hhbmdlZFNpbmNlU2F2ZTogdHJ1ZSxcbiAgfSkpLFxuICBvbihFZGl0b3JBY3Rpb25zLnNldEN1cnJlbnRQYWdlLCAoc3RhdGUsIHsgcGFnZSB9KSA9PiAoe1xuICAgIC4uLnN0YXRlLFxuICAgIGN1cnJlbnRQYWdlOiBwYWdlLFxuICB9KSlcbilcblxuZXhwb3J0IGZ1bmN0aW9uIGVkaXRvclJlZHVjZXIoc3RhdGU6IEVkaXRvclN0YXRlIHwgdW5kZWZpbmVkLCBhY3Rpb246IEFjdGlvbikge1xuICByZXR1cm4gcmVkdWNlcihzdGF0ZSwgYWN0aW9uKVxufVxuIl19
@@ -7,9 +7,19 @@ export const selectRecordSaving = createSelector(selectEditorState, (state) => s
7
7
  export const selectRecordSaveError = createSelector(selectEditorState, (state) => state.saveError);
8
8
  export const selectRecordChangedSinceSave = createSelector(selectEditorState, (state) => state.changedSinceSave);
9
9
  export const selectRecordAlreadySavedOnce = createSelector(selectEditorState, (state) => state.alreadySavedOnce);
10
- export const selectRecordFieldsConfig = createSelector(selectEditorState, (state) => state.fieldsConfig);
11
- export const selectRecordFields = createSelector(selectEditorState, (state) => state.fieldsConfig.map((fieldConfig) => ({
12
- config: fieldConfig,
13
- value: state.record?.[fieldConfig.model] || null,
14
- })));
15
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLnNlbGVjdG9ycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmVhdHVyZS9lZGl0b3Ivc3JjL2xpYi8rc3RhdGUvZWRpdG9yLnNlbGVjdG9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsY0FBYyxFQUFFLE1BQU0sYUFBYSxDQUFBO0FBQ25FLE9BQU8sRUFBRSxrQkFBa0IsRUFBZSxNQUFNLGtCQUFrQixDQUFBO0FBRWxFLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUM1QixxQkFBcUIsQ0FBYyxrQkFBa0IsQ0FBQyxDQUFBO0FBRXhELE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBRyxjQUFjLENBQ3hDLGlCQUFpQixFQUNqQixDQUFDLEtBQWtCLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQ3JDLENBQUE7QUFFRCxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxjQUFjLENBQzlDLGlCQUFpQixFQUNqQixDQUFDLEtBQWtCLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQzNDLENBQUE7QUFFRCxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxjQUFjLENBQzlDLGlCQUFpQixFQUNqQixDQUFDLEtBQWtCLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQ3JDLENBQUE7QUFFRCxNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRyxjQUFjLENBQ2pELGlCQUFpQixFQUNqQixDQUFDLEtBQWtCLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQ3hDLENBQUE7QUFFRCxNQUFNLENBQUMsTUFBTSw0QkFBNEIsR0FBRyxjQUFjLENBQ3hELGlCQUFpQixFQUNqQixDQUFDLEtBQWtCLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FDL0MsQ0FBQTtBQUVELE1BQU0sQ0FBQyxNQUFNLDRCQUE0QixHQUFHLGNBQWMsQ0FDeEQsaUJBQWlCLEVBQ2pCLENBQUMsS0FBa0IsRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLGdCQUFnQixDQUMvQyxDQUFBO0FBRUQsTUFBTSxDQUFDLE1BQU0sd0JBQXdCLEdBQUcsY0FBYyxDQUNwRCxpQkFBaUIsRUFDakIsQ0FBQyxLQUFrQixFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUMzQyxDQUFBO0FBRUQsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQUcsY0FBYyxDQUM5QyxpQkFBaUIsRUFDakIsQ0FBQyxLQUFrQixFQUFFLEVBQUUsQ0FDckIsS0FBSyxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQyxXQUFXLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDdkMsTUFBTSxFQUFFLFdBQVc7SUFDbkIsS0FBSyxFQUFFLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLElBQUksSUFBSTtDQUNqRCxDQUFDLENBQUMsQ0FDTixDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3JlYXRlRmVhdHVyZVNlbGVjdG9yLCBjcmVhdGVTZWxlY3RvciB9IGZyb20gJ0BuZ3J4L3N0b3JlJ1xuaW1wb3J0IHsgRURJVE9SX0ZFQVRVUkVfS0VZLCBFZGl0b3JTdGF0ZSB9IGZyb20gJy4vZWRpdG9yLnJlZHVjZXInXG5cbmV4cG9ydCBjb25zdCBzZWxlY3RFZGl0b3JTdGF0ZSA9XG4gIGNyZWF0ZUZlYXR1cmVTZWxlY3RvcjxFZGl0b3JTdGF0ZT4oRURJVE9SX0ZFQVRVUkVfS0VZKVxuXG5leHBvcnQgY29uc3Qgc2VsZWN0UmVjb3JkID0gY3JlYXRlU2VsZWN0b3IoXG4gIHNlbGVjdEVkaXRvclN0YXRlLFxuICAoc3RhdGU6IEVkaXRvclN0YXRlKSA9PiBzdGF0ZS5yZWNvcmRcbilcblxuZXhwb3J0IGNvbnN0IHNlbGVjdFJlY29yZFNvdXJjZSA9IGNyZWF0ZVNlbGVjdG9yKFxuICBzZWxlY3RFZGl0b3JTdGF0ZSxcbiAgKHN0YXRlOiBFZGl0b3JTdGF0ZSkgPT4gc3RhdGUucmVjb3JkU291cmNlXG4pXG5cbmV4cG9ydCBjb25zdCBzZWxlY3RSZWNvcmRTYXZpbmcgPSBjcmVhdGVTZWxlY3RvcihcbiAgc2VsZWN0RWRpdG9yU3RhdGUsXG4gIChzdGF0ZTogRWRpdG9yU3RhdGUpID0+IHN0YXRlLnNhdmluZ1xuKVxuXG5leHBvcnQgY29uc3Qgc2VsZWN0UmVjb3JkU2F2ZUVycm9yID0gY3JlYXRlU2VsZWN0b3IoXG4gIHNlbGVjdEVkaXRvclN0YXRlLFxuICAoc3RhdGU6IEVkaXRvclN0YXRlKSA9PiBzdGF0ZS5zYXZlRXJyb3JcbilcblxuZXhwb3J0IGNvbnN0IHNlbGVjdFJlY29yZENoYW5nZWRTaW5jZVNhdmUgPSBjcmVhdGVTZWxlY3RvcihcbiAgc2VsZWN0RWRpdG9yU3RhdGUsXG4gIChzdGF0ZTogRWRpdG9yU3RhdGUpID0+IHN0YXRlLmNoYW5nZWRTaW5jZVNhdmVcbilcblxuZXhwb3J0IGNvbnN0IHNlbGVjdFJlY29yZEFscmVhZHlTYXZlZE9uY2UgPSBjcmVhdGVTZWxlY3RvcihcbiAgc2VsZWN0RWRpdG9yU3RhdGUsXG4gIChzdGF0ZTogRWRpdG9yU3RhdGUpID0+IHN0YXRlLmFscmVhZHlTYXZlZE9uY2VcbilcblxuZXhwb3J0IGNvbnN0IHNlbGVjdFJlY29yZEZpZWxkc0NvbmZpZyA9IGNyZWF0ZVNlbGVjdG9yKFxuICBzZWxlY3RFZGl0b3JTdGF0ZSxcbiAgKHN0YXRlOiBFZGl0b3JTdGF0ZSkgPT4gc3RhdGUuZmllbGRzQ29uZmlnXG4pXG5cbmV4cG9ydCBjb25zdCBzZWxlY3RSZWNvcmRGaWVsZHMgPSBjcmVhdGVTZWxlY3RvcihcbiAgc2VsZWN0RWRpdG9yU3RhdGUsXG4gIChzdGF0ZTogRWRpdG9yU3RhdGUpID0+XG4gICAgc3RhdGUuZmllbGRzQ29uZmlnLm1hcCgoZmllbGRDb25maWcpID0+ICh7XG4gICAgICBjb25maWc6IGZpZWxkQ29uZmlnLFxuICAgICAgdmFsdWU6IHN0YXRlLnJlY29yZD8uW2ZpZWxkQ29uZmlnLm1vZGVsXSB8fCBudWxsLFxuICAgIH0pKVxuKVxuIl19
10
+ export const selectEditorConfig = createSelector(selectEditorState, (state) => state.editorConfig);
11
+ export const selectCurrentPage = createSelector(selectEditorState, (state) => state.currentPage);
12
+ export const selectRecordSections = createSelector(selectEditorState, (state) => {
13
+ const currentPage = state.editorConfig.pages[state.currentPage];
14
+ if (!currentPage) {
15
+ return [];
16
+ }
17
+ return currentPage.sections.map((section) => ({
18
+ ...section,
19
+ fieldsWithValues: section.fields.map((fieldConfig) => ({
20
+ config: fieldConfig,
21
+ value: state.record?.[fieldConfig.model] ?? null,
22
+ })),
23
+ }));
24
+ });
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLnNlbGVjdG9ycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmVhdHVyZS9lZGl0b3Ivc3JjL2xpYi8rc3RhdGUvZWRpdG9yLnNlbGVjdG9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsY0FBYyxFQUFFLE1BQU0sYUFBYSxDQUFBO0FBQ25FLE9BQU8sRUFBRSxrQkFBa0IsRUFBZSxNQUFNLGtCQUFrQixDQUFBO0FBR2xFLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUM1QixxQkFBcUIsQ0FBYyxrQkFBa0IsQ0FBQyxDQUFBO0FBRXhELE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBRyxjQUFjLENBQ3hDLGlCQUFpQixFQUNqQixDQUFDLEtBQWtCLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQ3JDLENBQUE7QUFFRCxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxjQUFjLENBQzlDLGlCQUFpQixFQUNqQixDQUFDLEtBQWtCLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQzNDLENBQUE7QUFFRCxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxjQUFjLENBQzlDLGlCQUFpQixFQUNqQixDQUFDLEtBQWtCLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQ3JDLENBQUE7QUFFRCxNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRyxjQUFjLENBQ2pELGlCQUFpQixFQUNqQixDQUFDLEtBQWtCLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQ3hDLENBQUE7QUFFRCxNQUFNLENBQUMsTUFBTSw0QkFBNEIsR0FBRyxjQUFjLENBQ3hELGlCQUFpQixFQUNqQixDQUFDLEtBQWtCLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FDL0MsQ0FBQTtBQUVELE1BQU0sQ0FBQyxNQUFNLDRCQUE0QixHQUFHLGNBQWMsQ0FDeEQsaUJBQWlCLEVBQ2pCLENBQUMsS0FBa0IsRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLGdCQUFnQixDQUMvQyxDQUFBO0FBRUQsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQUcsY0FBYyxDQUM5QyxpQkFBaUIsRUFDakIsQ0FBQyxLQUFrQixFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUMzQyxDQUFBO0FBRUQsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUcsY0FBYyxDQUM3QyxpQkFBaUIsRUFDakIsQ0FBQyxLQUFrQixFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUMxQyxDQUFBO0FBRUQsTUFBTSxDQUFDLE1BQU0sb0JBQW9CLEdBQUcsY0FBYyxDQUNoRCxpQkFBaUIsRUFDakIsQ0FBQyxLQUFrQixFQUFFLEVBQUU7SUFDckIsTUFBTSxXQUFXLEdBQUcsS0FBSyxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFBO0lBQy9ELElBQUksQ0FBQyxXQUFXLEVBQUU7UUFDaEIsT0FBTyxFQUErQixDQUFBO0tBQ3ZDO0lBQ0QsT0FBTyxXQUFXLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsQ0FBQztRQUM1QyxHQUFHLE9BQU87UUFDVixnQkFBZ0IsRUFBRSxPQUFPLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLFdBQVcsRUFBRSxFQUFFLENBQUMsQ0FBQztZQUNyRCxNQUFNLEVBQUUsV0FBVztZQUNuQixLQUFLLEVBQUUsS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsSUFBSSxJQUFJO1NBQ2pELENBQUMsQ0FBQztLQUNKLENBQUMsQ0FBOEIsQ0FBQTtBQUNsQyxDQUFDLENBQ0YsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNyZWF0ZUZlYXR1cmVTZWxlY3RvciwgY3JlYXRlU2VsZWN0b3IgfSBmcm9tICdAbmdyeC9zdG9yZSdcbmltcG9ydCB7IEVESVRPUl9GRUFUVVJFX0tFWSwgRWRpdG9yU3RhdGUgfSBmcm9tICcuL2VkaXRvci5yZWR1Y2VyJ1xuaW1wb3J0IHsgRWRpdG9yU2VjdGlvbldpdGhWYWx1ZXMgfSBmcm9tICcuL2VkaXRvci5tb2RlbHMnXG5cbmV4cG9ydCBjb25zdCBzZWxlY3RFZGl0b3JTdGF0ZSA9XG4gIGNyZWF0ZUZlYXR1cmVTZWxlY3RvcjxFZGl0b3JTdGF0ZT4oRURJVE9SX0ZFQVRVUkVfS0VZKVxuXG5leHBvcnQgY29uc3Qgc2VsZWN0UmVjb3JkID0gY3JlYXRlU2VsZWN0b3IoXG4gIHNlbGVjdEVkaXRvclN0YXRlLFxuICAoc3RhdGU6IEVkaXRvclN0YXRlKSA9PiBzdGF0ZS5yZWNvcmRcbilcblxuZXhwb3J0IGNvbnN0IHNlbGVjdFJlY29yZFNvdXJjZSA9IGNyZWF0ZVNlbGVjdG9yKFxuICBzZWxlY3RFZGl0b3JTdGF0ZSxcbiAgKHN0YXRlOiBFZGl0b3JTdGF0ZSkgPT4gc3RhdGUucmVjb3JkU291cmNlXG4pXG5cbmV4cG9ydCBjb25zdCBzZWxlY3RSZWNvcmRTYXZpbmcgPSBjcmVhdGVTZWxlY3RvcihcbiAgc2VsZWN0RWRpdG9yU3RhdGUsXG4gIChzdGF0ZTogRWRpdG9yU3RhdGUpID0+IHN0YXRlLnNhdmluZ1xuKVxuXG5leHBvcnQgY29uc3Qgc2VsZWN0UmVjb3JkU2F2ZUVycm9yID0gY3JlYXRlU2VsZWN0b3IoXG4gIHNlbGVjdEVkaXRvclN0YXRlLFxuICAoc3RhdGU6IEVkaXRvclN0YXRlKSA9PiBzdGF0ZS5zYXZlRXJyb3JcbilcblxuZXhwb3J0IGNvbnN0IHNlbGVjdFJlY29yZENoYW5nZWRTaW5jZVNhdmUgPSBjcmVhdGVTZWxlY3RvcihcbiAgc2VsZWN0RWRpdG9yU3RhdGUsXG4gIChzdGF0ZTogRWRpdG9yU3RhdGUpID0+IHN0YXRlLmNoYW5nZWRTaW5jZVNhdmVcbilcblxuZXhwb3J0IGNvbnN0IHNlbGVjdFJlY29yZEFscmVhZHlTYXZlZE9uY2UgPSBjcmVhdGVTZWxlY3RvcihcbiAgc2VsZWN0RWRpdG9yU3RhdGUsXG4gIChzdGF0ZTogRWRpdG9yU3RhdGUpID0+IHN0YXRlLmFscmVhZHlTYXZlZE9uY2VcbilcblxuZXhwb3J0IGNvbnN0IHNlbGVjdEVkaXRvckNvbmZpZyA9IGNyZWF0ZVNlbGVjdG9yKFxuICBzZWxlY3RFZGl0b3JTdGF0ZSxcbiAgKHN0YXRlOiBFZGl0b3JTdGF0ZSkgPT4gc3RhdGUuZWRpdG9yQ29uZmlnXG4pXG5cbmV4cG9ydCBjb25zdCBzZWxlY3RDdXJyZW50UGFnZSA9IGNyZWF0ZVNlbGVjdG9yKFxuICBzZWxlY3RFZGl0b3JTdGF0ZSxcbiAgKHN0YXRlOiBFZGl0b3JTdGF0ZSkgPT4gc3RhdGUuY3VycmVudFBhZ2VcbilcblxuZXhwb3J0IGNvbnN0IHNlbGVjdFJlY29yZFNlY3Rpb25zID0gY3JlYXRlU2VsZWN0b3IoXG4gIHNlbGVjdEVkaXRvclN0YXRlLFxuICAoc3RhdGU6IEVkaXRvclN0YXRlKSA9PiB7XG4gICAgY29uc3QgY3VycmVudFBhZ2UgPSBzdGF0ZS5lZGl0b3JDb25maWcucGFnZXNbc3RhdGUuY3VycmVudFBhZ2VdXG4gICAgaWYgKCFjdXJyZW50UGFnZSkge1xuICAgICAgcmV0dXJuIFtdIGFzIEVkaXRvclNlY3Rpb25XaXRoVmFsdWVzW11cbiAgICB9XG4gICAgcmV0dXJuIGN1cnJlbnRQYWdlLnNlY3Rpb25zLm1hcCgoc2VjdGlvbikgPT4gKHtcbiAgICAgIC4uLnNlY3Rpb24sXG4gICAgICBmaWVsZHNXaXRoVmFsdWVzOiBzZWN0aW9uLmZpZWxkcy5tYXAoKGZpZWxkQ29uZmlnKSA9PiAoe1xuICAgICAgICBjb25maWc6IGZpZWxkQ29uZmlnLFxuICAgICAgICB2YWx1ZTogc3RhdGUucmVjb3JkPy5bZmllbGRDb25maWcubW9kZWxdID8/IG51bGwsXG4gICAgICB9KSksXG4gICAgfSkpIGFzIEVkaXRvclNlY3Rpb25XaXRoVmFsdWVzW11cbiAgfVxuKVxuIl19
@@ -0,0 +1,17 @@
1
+ import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
2
+ import { MatIconModule } from '@angular/material/icon';
3
+ import { CommonModule } from '@angular/common';
4
+ import { ButtonComponent } from '../../../../../../../libs/ui/inputs/src';
5
+ import { ThumbnailComponent } from '../../../../../../../libs/ui/elements/src';
6
+ import * as i0 from "@angular/core";
7
+ export class ContactCardComponent {
8
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ContactCardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
9
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ContactCardComponent, isStandalone: true, selector: "gn-ui-contact-card", inputs: { contact: "contact" }, ngImport: i0, template: "<div class=\"gn-ui-card\">\n <gn-ui-thumbnail\n class=\"w-[56px] h-[56px] rounded-[4px] overflow-hidden shrink-0\"\n [thumbnailUrl]=\"contact.organization.logoUrl?.href\"\n [fit]=\"'contain'\"\n ></gn-ui-thumbnail>\n <div class=\"flex flex-col w-full overflow-hidden leading-snug\">\n <div class=\"text-[16px] font-bold text-main\" data-test=\"contactCardName\">\n {{ contact.firstName }} {{ contact.lastName }}\n </div>\n <div class=\"text-[14px] text-gray-900\" data-test=\"contactCardEmail\">\n {{ contact.email }}\n </div>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: ThumbnailComponent, selector: "gn-ui-thumbnail", inputs: ["thumbnailUrl", "fit"], outputs: ["placeholderShown"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
10
+ }
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ContactCardComponent, decorators: [{
12
+ type: Component,
13
+ args: [{ selector: 'gn-ui-contact-card', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [CommonModule, MatIconModule, ButtonComponent, ThumbnailComponent], template: "<div class=\"gn-ui-card\">\n <gn-ui-thumbnail\n class=\"w-[56px] h-[56px] rounded-[4px] overflow-hidden shrink-0\"\n [thumbnailUrl]=\"contact.organization.logoUrl?.href\"\n [fit]=\"'contain'\"\n ></gn-ui-thumbnail>\n <div class=\"flex flex-col w-full overflow-hidden leading-snug\">\n <div class=\"text-[16px] font-bold text-main\" data-test=\"contactCardName\">\n {{ contact.firstName }} {{ contact.lastName }}\n </div>\n <div class=\"text-[14px] text-gray-900\" data-test=\"contactCardEmail\">\n {{ contact.email }}\n </div>\n </div>\n</div>\n" }]
14
+ }], propDecorators: { contact: [{
15
+ type: Input
16
+ }] } });
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGFjdC1jYXJkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmVhdHVyZS9lZGl0b3Ivc3JjL2xpYi9jb21wb25lbnRzL2NvbnRhY3QtY2FyZC9jb250YWN0LWNhcmQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9mZWF0dXJlL2VkaXRvci9zcmMvbGliL2NvbXBvbmVudHMvY29udGFjdC1jYXJkL2NvbnRhY3QtY2FyZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUV6RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUE7QUFDdEQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBQzlDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQTtBQUN6RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQTs7QUFVOUUsTUFBTSxPQUFPLG9CQUFvQjsrR0FBcEIsb0JBQW9CO21HQUFwQixvQkFBb0IsOEdDZmpDLHNrQkFlQSx5RERGWSxZQUFZLDhCQUFFLGFBQWEsK0JBQW1CLGtCQUFrQjs7NEZBRS9ELG9CQUFvQjtrQkFSaEMsU0FBUzsrQkFDRSxvQkFBb0IsbUJBR2IsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1AsQ0FBQyxZQUFZLEVBQUUsYUFBYSxFQUFFLGVBQWUsRUFBRSxrQkFBa0IsQ0FBQzs4QkFHbEUsT0FBTztzQkFBZixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgSW5kaXZpZHVhbCB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL2RvbWFpbi9zcmMvbGliL21vZGVsL3JlY29yZCdcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJ1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJ1xuaW1wb3J0IHsgQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS9pbnB1dHMvc3JjJ1xuaW1wb3J0IHsgVGh1bWJuYWlsQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS9lbGVtZW50cy9zcmMnXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2duLXVpLWNvbnRhY3QtY2FyZCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9jb250YWN0LWNhcmQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9jb250YWN0LWNhcmQuY29tcG9uZW50LmNzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgTWF0SWNvbk1vZHVsZSwgQnV0dG9uQ29tcG9uZW50LCBUaHVtYm5haWxDb21wb25lbnRdLFxufSlcbmV4cG9ydCBjbGFzcyBDb250YWN0Q2FyZENvbXBvbmVudCB7XG4gIEBJbnB1dCgpIGNvbnRhY3Q6IEluZGl2aWR1YWxcbn1cbiIsIjxkaXYgY2xhc3M9XCJnbi11aS1jYXJkXCI+XG4gIDxnbi11aS10aHVtYm5haWxcbiAgICBjbGFzcz1cInctWzU2cHhdIGgtWzU2cHhdIHJvdW5kZWQtWzRweF0gb3ZlcmZsb3ctaGlkZGVuIHNocmluay0wXCJcbiAgICBbdGh1bWJuYWlsVXJsXT1cImNvbnRhY3Qub3JnYW5pemF0aW9uLmxvZ29Vcmw/LmhyZWZcIlxuICAgIFtmaXRdPVwiJ2NvbnRhaW4nXCJcbiAgPjwvZ24tdWktdGh1bWJuYWlsPlxuICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LWNvbCB3LWZ1bGwgb3ZlcmZsb3ctaGlkZGVuIGxlYWRpbmctc251Z1wiPlxuICAgIDxkaXYgY2xhc3M9XCJ0ZXh0LVsxNnB4XSBmb250LWJvbGQgdGV4dC1tYWluXCIgZGF0YS10ZXN0PVwiY29udGFjdENhcmROYW1lXCI+XG4gICAgICB7eyBjb250YWN0LmZpcnN0TmFtZSB9fSB7eyBjb250YWN0Lmxhc3ROYW1lIH19XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cInRleHQtWzE0cHhdIHRleHQtZ3JheS05MDBcIiBkYXRhLXRlc3Q9XCJjb250YWN0Q2FyZEVtYWlsXCI+XG4gICAgICB7eyBjb250YWN0LmVtYWlsIH19XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
@@ -0,0 +1,80 @@
1
+ import { CommonModule } from '@angular/common';
2
+ import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, } from '@angular/core';
3
+ import { PlatformServiceInterface } from '../../../../../../../libs/common/domain/src/lib/platform.service.interface';
4
+ import { AutocompleteComponent, DropdownSelectorComponent, UiInputsModule, } from '../../../../../../../libs/ui/inputs/src';
5
+ import { UiWidgetsModule } from '../../../../../../../libs/ui/widgets/src';
6
+ import { map } from 'rxjs';
7
+ import { MatIconModule } from '@angular/material/icon';
8
+ import { TranslateModule } from '@ngx-translate/core';
9
+ import * as i0 from "@angular/core";
10
+ import * as i1 from "../../../../../../../libs/common/domain/src/lib/platform.service.interface";
11
+ import * as i2 from "../../../../../../ui/inputs/src/lib/badge/badge.component";
12
+ import * as i3 from "@angular/common";
13
+ import * as i4 from "@angular/material/icon";
14
+ import * as i5 from "@ngx-translate/core";
15
+ export class GenericKeywordsComponent {
16
+ constructor(platformService) {
17
+ this.platformService = platformService;
18
+ this.changedKeywords = new EventEmitter();
19
+ this.addedKeyword = new EventEmitter();
20
+ this.deletedKeyword = new EventEmitter();
21
+ this.displayWithFn = (item) => {
22
+ return `${item.title} (${item.value.thesaurus?.name})`;
23
+ };
24
+ this.autoCompleteAction = (query) => {
25
+ return this.platformService.searchKeywords(query, this.keywordTypes).pipe(map((keywords) => keywords.map((keyword) => {
26
+ return { title: keyword.label, value: keyword };
27
+ })));
28
+ };
29
+ }
30
+ handleItemSelection(item) {
31
+ this.addKeyword(item.value);
32
+ }
33
+ addKeyword(keyword) {
34
+ const duplicatedKeyword = this.keywords.find((k) => k.label === keyword.label);
35
+ if (!duplicatedKeyword) {
36
+ this.keywords = [...this.keywords, keyword];
37
+ this.changedKeywords.emit(this.keywords);
38
+ this.addedKeyword.emit(keyword);
39
+ }
40
+ }
41
+ removeKeyword(keyword) {
42
+ this.keywords = this.keywords.filter((k) => k.label !== keyword.label);
43
+ this.changedKeywords.emit(this.keywords);
44
+ this.deletedKeyword.emit(keyword);
45
+ }
46
+ isPlaceWithoutExtent(keyword) {
47
+ if (keyword.type !== 'place')
48
+ return false;
49
+ return !keyword.bbox;
50
+ }
51
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GenericKeywordsComponent, deps: [{ token: i1.PlatformServiceInterface }], target: i0.ɵɵFactoryTarget.Component }); }
52
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: GenericKeywordsComponent, isStandalone: true, selector: "gn-ui-generic-keywords", inputs: { keywords: "keywords", keywordTypes: "keywordTypes", placeholder: "placeholder", allowSubmit: "allowSubmit" }, outputs: { changedKeywords: "changedKeywords", addedKeyword: "addedKeyword", deletedKeyword: "deletedKeyword" }, ngImport: i0, template: "<div class=\"flex flex-col gap-3\">\n <gn-ui-autocomplete\n [placeholder]=\"placeholder\"\n [displayWithFn]=\"displayWithFn\"\n [action]=\"autoCompleteAction\"\n (itemSelected)=\"handleItemSelection($event)\"\n [preventCompleteOnSelection]=\"true\"\n [minCharacterCount]=\"0\"\n [allowSubmit]=\"false\"\n ></gn-ui-autocomplete>\n <div class=\"flex gap-2 flex-wrap\">\n <gn-ui-badge\n *ngFor=\"let keyword of keywords\"\n [removable]=\"true\"\n (badgeRemoveClicked)=\"removeKeyword(keyword)\"\n >{{ keyword.label }}\n\n <mat-icon\n *ngIf=\"isPlaceWithoutExtent(keyword)\"\n [title]=\"'editor.form.placeKeywordWithoutExtent' | translate\"\n class=\"material-symbols-outlined\"\n >warning</mat-icon\n >\n </gn-ui-badge>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: UiInputsModule }, { kind: "component", type: i2.BadgeComponent, selector: "gn-ui-badge", inputs: ["clickable", "removable"], outputs: ["badgeRemoveClicked"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: UiWidgetsModule }, { kind: "component", type: AutocompleteComponent, selector: "gn-ui-autocomplete", inputs: ["placeholder", "action", "value", "clearOnSelection", "preventCompleteOnSelection", "autoFocus", "minCharacterCount", "allowSubmit", "displayWithFn"], outputs: ["itemSelected", "inputSubmitted", "inputCleared"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
53
+ }
54
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GenericKeywordsComponent, decorators: [{
55
+ type: Component,
56
+ args: [{ selector: 'gn-ui-generic-keywords', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
57
+ DropdownSelectorComponent,
58
+ UiInputsModule,
59
+ CommonModule,
60
+ UiWidgetsModule,
61
+ AutocompleteComponent,
62
+ MatIconModule,
63
+ TranslateModule,
64
+ ], template: "<div class=\"flex flex-col gap-3\">\n <gn-ui-autocomplete\n [placeholder]=\"placeholder\"\n [displayWithFn]=\"displayWithFn\"\n [action]=\"autoCompleteAction\"\n (itemSelected)=\"handleItemSelection($event)\"\n [preventCompleteOnSelection]=\"true\"\n [minCharacterCount]=\"0\"\n [allowSubmit]=\"false\"\n ></gn-ui-autocomplete>\n <div class=\"flex gap-2 flex-wrap\">\n <gn-ui-badge\n *ngFor=\"let keyword of keywords\"\n [removable]=\"true\"\n (badgeRemoveClicked)=\"removeKeyword(keyword)\"\n >{{ keyword.label }}\n\n <mat-icon\n *ngIf=\"isPlaceWithoutExtent(keyword)\"\n [title]=\"'editor.form.placeKeywordWithoutExtent' | translate\"\n class=\"material-symbols-outlined\"\n >warning</mat-icon\n >\n </gn-ui-badge>\n </div>\n</div>\n" }]
65
+ }], ctorParameters: function () { return [{ type: i1.PlatformServiceInterface }]; }, propDecorators: { keywords: [{
66
+ type: Input
67
+ }], keywordTypes: [{
68
+ type: Input
69
+ }], placeholder: [{
70
+ type: Input
71
+ }], allowSubmit: [{
72
+ type: Input
73
+ }], changedKeywords: [{
74
+ type: Output
75
+ }], addedKeyword: [{
76
+ type: Output
77
+ }], deletedKeyword: [{
78
+ type: Output
79
+ }] } });
80
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJpYy1rZXl3b3Jkcy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvZWRpdG9yL3NyYy9saWIvY29tcG9uZW50cy9nZW5lcmljLWtleXdvcmRzL2dlbmVyaWMta2V5d29yZHMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9mZWF0dXJlL2VkaXRvci9zcmMvbGliL2NvbXBvbmVudHMvZ2VuZXJpYy1rZXl3b3Jkcy9nZW5lcmljLWtleXdvcmRzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUM5QyxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQTtBQUN0QixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw0RUFBNEUsQ0FBQTtBQUNySCxPQUFPLEVBQ0wscUJBQXFCLEVBQ3JCLHlCQUF5QixFQUN6QixjQUFjLEdBQ2YsTUFBTSx5Q0FBeUMsQ0FBQTtBQUNoRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMENBQTBDLENBQUE7QUFDMUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQTtBQUcxQixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUE7QUFDdEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFBOzs7Ozs7O0FBb0JyRCxNQUFNLE9BQU8sd0JBQXdCO0lBdUJuQyxZQUFvQixlQUF5QztRQUF6QyxvQkFBZSxHQUFmLGVBQWUsQ0FBMEI7UUFsQm5ELG9CQUFlLEdBQTRCLElBQUksWUFBWSxFQUFFLENBQUE7UUFDN0QsaUJBQVksR0FBMEIsSUFBSSxZQUFZLEVBQUUsQ0FBQTtRQUN4RCxtQkFBYyxHQUEwQixJQUFJLFlBQVksRUFBRSxDQUFBO1FBRXBFLGtCQUFhLEdBQUcsQ0FBQyxJQUFzQixFQUFFLEVBQUU7WUFDekMsT0FBTyxHQUFHLElBQUksQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLEVBQUUsSUFBSSxHQUFHLENBQUE7UUFDeEQsQ0FBQyxDQUFBO1FBRUQsdUJBQWtCLEdBQUcsQ0FBQyxLQUFhLEVBQUUsRUFBRTtZQUNyQyxPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsY0FBYyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsSUFBSSxDQUN2RSxHQUFHLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUNmLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRTtnQkFDdkIsT0FBTyxFQUFFLEtBQUssRUFBRSxPQUFPLENBQUMsS0FBSyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQTtZQUNqRCxDQUFDLENBQUMsQ0FDSCxDQUNGLENBQUE7UUFDSCxDQUFDLENBQUE7SUFFK0QsQ0FBQztJQUVqRSxtQkFBbUIsQ0FBQyxJQUFzQjtRQUN4QyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQTtJQUM3QixDQUFDO0lBRUQsVUFBVSxDQUFDLE9BQWdCO1FBQ3pCLE1BQU0saUJBQWlCLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQzFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxLQUFLLE9BQU8sQ0FBQyxLQUFLLENBQ2pDLENBQUE7UUFDRCxJQUFJLENBQUMsaUJBQWlCLEVBQUU7WUFDdEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLFFBQVEsRUFBRSxPQUFPLENBQUMsQ0FBQTtZQUMzQyxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUE7WUFDeEMsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUE7U0FDaEM7SUFDSCxDQUFDO0lBRUQsYUFBYSxDQUFDLE9BQWdCO1FBQzVCLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLEtBQUssT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFBO1FBQ3RFLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQTtRQUN4QyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQTtJQUNuQyxDQUFDO0lBRUQsb0JBQW9CLENBQUMsT0FBZ0I7UUFDbkMsSUFBSSxPQUFPLENBQUMsSUFBSSxLQUFLLE9BQU87WUFBRSxPQUFPLEtBQUssQ0FBQTtRQUMxQyxPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQTtJQUN0QixDQUFDOytHQWpEVSx3QkFBd0I7bUdBQXhCLHdCQUF3QiwyVEN2Q3JDLDB6QkEwQkEseURES0ksY0FBYyw0S0FDZCxZQUFZLCtQQUNaLGVBQWUsK0JBQ2YscUJBQXFCLDJSQUNyQixhQUFhLG1MQUNiLGVBQWU7OzRGQUdOLHdCQUF3QjtrQkFoQnBDLFNBQVM7K0JBQ0Usd0JBQXdCLG1CQUdqQix1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUksV0FDUDt3QkFDUCx5QkFBeUI7d0JBQ3pCLGNBQWM7d0JBQ2QsWUFBWTt3QkFDWixlQUFlO3dCQUNmLHFCQUFxQjt3QkFDckIsYUFBYTt3QkFDYixlQUFlO3FCQUNoQjsrR0FHUSxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNJLGVBQWU7c0JBQXhCLE1BQU07Z0JBQ0csWUFBWTtzQkFBckIsTUFBTTtnQkFDRyxjQUFjO3NCQUF2QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJ1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT3V0cHV0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgUGxhdGZvcm1TZXJ2aWNlSW50ZXJmYWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vZG9tYWluL3NyYy9saWIvcGxhdGZvcm0uc2VydmljZS5pbnRlcmZhY2UnXG5pbXBvcnQge1xuICBBdXRvY29tcGxldGVDb21wb25lbnQsXG4gIERyb3Bkb3duU2VsZWN0b3JDb21wb25lbnQsXG4gIFVpSW5wdXRzTW9kdWxlLFxufSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2lucHV0cy9zcmMnXG5pbXBvcnQgeyBVaVdpZGdldHNNb2R1bGUgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL3dpZGdldHMvc3JjJ1xuaW1wb3J0IHsgbWFwIH0gZnJvbSAncnhqcydcbmltcG9ydCB7IEtleXdvcmQgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9kb21haW4vc3JjL2xpYi9tb2RlbC9yZWNvcmQnXG5pbXBvcnQgeyBLZXl3b3JkVHlwZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL2RvbWFpbi9zcmMvbGliL21vZGVsL3RoZXNhdXJ1cydcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJ1xuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSdcblxudHlwZSBBdXRvY29tcGxldGVJdGVtID0geyB0aXRsZTogc3RyaW5nOyB2YWx1ZTogS2V5d29yZCB9XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2duLXVpLWdlbmVyaWMta2V5d29yZHMnLFxuICB0ZW1wbGF0ZVVybDogJy4vZ2VuZXJpYy1rZXl3b3Jkcy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2dlbmVyaWMta2V5d29yZHMuY29tcG9uZW50LmNzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIERyb3Bkb3duU2VsZWN0b3JDb21wb25lbnQsXG4gICAgVWlJbnB1dHNNb2R1bGUsXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIFVpV2lkZ2V0c01vZHVsZSxcbiAgICBBdXRvY29tcGxldGVDb21wb25lbnQsXG4gICAgTWF0SWNvbk1vZHVsZSxcbiAgICBUcmFuc2xhdGVNb2R1bGUsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEdlbmVyaWNLZXl3b3Jkc0NvbXBvbmVudCB7XG4gIEBJbnB1dCgpIGtleXdvcmRzOiBLZXl3b3JkW11cbiAgQElucHV0KCkga2V5d29yZFR5cGVzOiBLZXl3b3JkVHlwZVtdXG4gIEBJbnB1dCgpIHBsYWNlaG9sZGVyOiBzdHJpbmdcbiAgQElucHV0KCkgYWxsb3dTdWJtaXQ6IGJvb2xlYW5cbiAgQE91dHB1dCgpIGNoYW5nZWRLZXl3b3JkczogRXZlbnRFbWl0dGVyPEtleXdvcmRbXT4gPSBuZXcgRXZlbnRFbWl0dGVyKClcbiAgQE91dHB1dCgpIGFkZGVkS2V5d29yZDogRXZlbnRFbWl0dGVyPEtleXdvcmQ+ID0gbmV3IEV2ZW50RW1pdHRlcigpXG4gIEBPdXRwdXQoKSBkZWxldGVkS2V5d29yZDogRXZlbnRFbWl0dGVyPEtleXdvcmQ+ID0gbmV3IEV2ZW50RW1pdHRlcigpXG5cbiAgZGlzcGxheVdpdGhGbiA9IChpdGVtOiBBdXRvY29tcGxldGVJdGVtKSA9PiB7XG4gICAgcmV0dXJuIGAke2l0ZW0udGl0bGV9ICgke2l0ZW0udmFsdWUudGhlc2F1cnVzPy5uYW1lfSlgXG4gIH1cblxuICBhdXRvQ29tcGxldGVBY3Rpb24gPSAocXVlcnk6IHN0cmluZykgPT4ge1xuICAgIHJldHVybiB0aGlzLnBsYXRmb3JtU2VydmljZS5zZWFyY2hLZXl3b3JkcyhxdWVyeSwgdGhpcy5rZXl3b3JkVHlwZXMpLnBpcGUoXG4gICAgICBtYXAoKGtleXdvcmRzKSA9PlxuICAgICAgICBrZXl3b3Jkcy5tYXAoKGtleXdvcmQpID0+IHtcbiAgICAgICAgICByZXR1cm4geyB0aXRsZToga2V5d29yZC5sYWJlbCwgdmFsdWU6IGtleXdvcmQgfVxuICAgICAgICB9KVxuICAgICAgKVxuICAgIClcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcGxhdGZvcm1TZXJ2aWNlOiBQbGF0Zm9ybVNlcnZpY2VJbnRlcmZhY2UpIHt9XG5cbiAgaGFuZGxlSXRlbVNlbGVjdGlvbihpdGVtOiBBdXRvY29tcGxldGVJdGVtKSB7XG4gICAgdGhpcy5hZGRLZXl3b3JkKGl0ZW0udmFsdWUpXG4gIH1cblxuICBhZGRLZXl3b3JkKGtleXdvcmQ6IEtleXdvcmQpIHtcbiAgICBjb25zdCBkdXBsaWNhdGVkS2V5d29yZCA9IHRoaXMua2V5d29yZHMuZmluZChcbiAgICAgIChrKSA9PiBrLmxhYmVsID09PSBrZXl3b3JkLmxhYmVsXG4gICAgKVxuICAgIGlmICghZHVwbGljYXRlZEtleXdvcmQpIHtcbiAgICAgIHRoaXMua2V5d29yZHMgPSBbLi4udGhpcy5rZXl3b3Jkcywga2V5d29yZF1cbiAgICAgIHRoaXMuY2hhbmdlZEtleXdvcmRzLmVtaXQodGhpcy5rZXl3b3JkcylcbiAgICAgIHRoaXMuYWRkZWRLZXl3b3JkLmVtaXQoa2V5d29yZClcbiAgICB9XG4gIH1cblxuICByZW1vdmVLZXl3b3JkKGtleXdvcmQ6IEtleXdvcmQpIHtcbiAgICB0aGlzLmtleXdvcmRzID0gdGhpcy5rZXl3b3Jkcy5maWx0ZXIoKGspID0+IGsubGFiZWwgIT09IGtleXdvcmQubGFiZWwpXG4gICAgdGhpcy5jaGFuZ2VkS2V5d29yZHMuZW1pdCh0aGlzLmtleXdvcmRzKVxuICAgIHRoaXMuZGVsZXRlZEtleXdvcmQuZW1pdChrZXl3b3JkKVxuICB9XG5cbiAgaXNQbGFjZVdpdGhvdXRFeHRlbnQoa2V5d29yZDogS2V5d29yZCk6IGJvb2xlYW4ge1xuICAgIGlmIChrZXl3b3JkLnR5cGUgIT09ICdwbGFjZScpIHJldHVybiBmYWxzZVxuICAgIHJldHVybiAha2V5d29yZC5iYm94XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtY29sIGdhcC0zXCI+XG4gIDxnbi11aS1hdXRvY29tcGxldGVcbiAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxuICAgIFtkaXNwbGF5V2l0aEZuXT1cImRpc3BsYXlXaXRoRm5cIlxuICAgIFthY3Rpb25dPVwiYXV0b0NvbXBsZXRlQWN0aW9uXCJcbiAgICAoaXRlbVNlbGVjdGVkKT1cImhhbmRsZUl0ZW1TZWxlY3Rpb24oJGV2ZW50KVwiXG4gICAgW3ByZXZlbnRDb21wbGV0ZU9uU2VsZWN0aW9uXT1cInRydWVcIlxuICAgIFttaW5DaGFyYWN0ZXJDb3VudF09XCIwXCJcbiAgICBbYWxsb3dTdWJtaXRdPVwiZmFsc2VcIlxuICA+PC9nbi11aS1hdXRvY29tcGxldGU+XG4gIDxkaXYgY2xhc3M9XCJmbGV4IGdhcC0yIGZsZXgtd3JhcFwiPlxuICAgIDxnbi11aS1iYWRnZVxuICAgICAgKm5nRm9yPVwibGV0IGtleXdvcmQgb2Yga2V5d29yZHNcIlxuICAgICAgW3JlbW92YWJsZV09XCJ0cnVlXCJcbiAgICAgIChiYWRnZVJlbW92ZUNsaWNrZWQpPVwicmVtb3ZlS2V5d29yZChrZXl3b3JkKVwiXG4gICAgICA+e3sga2V5d29yZC5sYWJlbCB9fVxuXG4gICAgICA8bWF0LWljb25cbiAgICAgICAgKm5nSWY9XCJpc1BsYWNlV2l0aG91dEV4dGVudChrZXl3b3JkKVwiXG4gICAgICAgIFt0aXRsZV09XCInZWRpdG9yLmZvcm0ucGxhY2VLZXl3b3JkV2l0aG91dEV4dGVudCcgfCB0cmFuc2xhdGVcIlxuICAgICAgICBjbGFzcz1cIm1hdGVyaWFsLXN5bWJvbHMtb3V0bGluZWRcIlxuICAgICAgICA+d2FybmluZzwvbWF0LWljb25cbiAgICAgID5cbiAgICA8L2duLXVpLWJhZGdlPlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
@@ -0,0 +1,93 @@
1
+ import { ChangeDetectionStrategy, ChangeDetectorRef, Component, EventEmitter, Output, } from '@angular/core';
2
+ import { MatIconModule } from '@angular/material/icon';
3
+ import { CommonModule } from '@angular/common';
4
+ import { ButtonComponent, UrlInputComponent } from '../../../../../../../libs/ui/inputs/src';
5
+ import { ThumbnailComponent } from '../../../../../../../libs/ui/elements/src';
6
+ import { TranslateService } from '@ngx-translate/core';
7
+ import { NotificationsService } from '../../../../../../../libs/feature/notifications/src';
8
+ import { RecordsRepositoryInterface } from '../../../../../../../libs/common/domain/src/lib/repository/records-repository.interface';
9
+ import { Router } from '@angular/router';
10
+ import * as i0 from "@angular/core";
11
+ import * as i1 from "@angular/router";
12
+ import * as i2 from "@ngx-translate/core";
13
+ import * as i3 from "../../../../../../../libs/feature/notifications/src";
14
+ import * as i4 from "../../../../../../../libs/common/domain/src/lib/repository/records-repository.interface";
15
+ import * as i5 from "@angular/common";
16
+ import * as i6 from "@angular/material/icon";
17
+ export class ImportRecordComponent {
18
+ constructor(router, translateService, cdr, notificationsService, recordsRepository) {
19
+ this.router = router;
20
+ this.translateService = translateService;
21
+ this.cdr = cdr;
22
+ this.notificationsService = notificationsService;
23
+ this.recordsRepository = recordsRepository;
24
+ this.closeImportMenu = new EventEmitter();
25
+ this.importMenuItems = [
26
+ {
27
+ label: this.translateService.instant('dashboard.importRecord.useModel'),
28
+ icon: 'highlight',
29
+ action: () => null,
30
+ dataTest: 'useAModelButton',
31
+ },
32
+ {
33
+ label: this.translateService.instant('dashboard.importRecord.importExternal'),
34
+ icon: 'cloud_download',
35
+ action: this.displayImportExternal.bind(this),
36
+ dataTest: 'importFromUrlButton',
37
+ },
38
+ ];
39
+ this.isRecordImportInProgress = false;
40
+ this.sectionDisplayed = 'mainMenu';
41
+ this.externalImportBackLabel = this.translateService.instant('dashboard.importRecord.importExternalLabel');
42
+ }
43
+ displayMainMenu() {
44
+ this.sectionDisplayed = 'mainMenu';
45
+ this.cdr.markForCheck();
46
+ }
47
+ displayImportExternal() {
48
+ this.sectionDisplayed = 'importExternalFile';
49
+ this.cdr.markForCheck();
50
+ }
51
+ importRecord(url) {
52
+ this.isRecordImportInProgress = true;
53
+ this.recordsRepository.duplicateExternalRecord(url).subscribe({
54
+ next: (recordTempId) => {
55
+ if (recordTempId) {
56
+ this.notificationsService.showNotification({
57
+ type: 'success',
58
+ title: this.translateService.instant('editor.record.importFromExternalFile.success.title'),
59
+ text: `${this.translateService.instant('editor.record.importFromExternalFile.success.body')}`,
60
+ }, 2500);
61
+ this.router
62
+ .navigate(['/edit', recordTempId])
63
+ .catch((err) => console.error(err));
64
+ }
65
+ this.closeImportMenu.next();
66
+ },
67
+ error: (error) => {
68
+ this.notificationsService.showNotification({
69
+ type: 'error',
70
+ title: this.translateService.instant('editor.record.importFromExternalFile.failure.title'),
71
+ text: `${this.translateService.instant('editor.record.importFromExternalFile.failure.body')} ${error.message ?? ''}`,
72
+ }, 2500);
73
+ this.isRecordImportInProgress = false;
74
+ this.cdr.markForCheck();
75
+ },
76
+ });
77
+ }
78
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ImportRecordComponent, deps: [{ token: i1.Router }, { token: i2.TranslateService }, { token: i0.ChangeDetectorRef }, { token: i3.NotificationsService }, { token: i4.RecordsRepositoryInterface }], target: i0.ɵɵFactoryTarget.Component }); }
79
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ImportRecordComponent, isStandalone: true, selector: "gn-ui-import-record", outputs: { closeImportMenu: "closeImportMenu" }, ngImport: i0, template: "<ng-container [ngSwitch]=\"sectionDisplayed\">\n <ng-container *ngSwitchCase=\"'mainMenu'\">\n <div\n data-test=\"importMenuMainSection\"\n class=\"mt-2 border border-gray-100 p-2 flex items-center bg-white shadow-2xl rounded-2xl\"\n >\n <ul class=\"flex flex-col gap-2 w-full\">\n <li *ngFor=\"let menuItem of importMenuItems\">\n <gn-ui-button\n [attr.data-test]=\"menuItem.dataTest\"\n type=\"light\"\n extraClass=\"flex flex-row items-center gap-2 w-full justify-start\"\n (buttonClick)=\"menuItem.action()\"\n ><mat-icon class=\"material-symbols-outlined\">\n {{ menuItem.icon }} </mat-icon\n ><span>{{ menuItem.label }}</span></gn-ui-button\n >\n </li>\n </ul>\n </div>\n </ng-container>\n <ng-container *ngSwitchCase=\"'importExternalFile'\">\n <div\n data-test=\"importMenuImportExternalFileSection\"\n class=\"p-6 flex flex-col gap-2 mt-2 border border-gray-100 bg-white shadow-2xl rounded-2xl\"\n >\n <div class=\"flex flex-row items-center gap-2\">\n <gn-ui-button\n data-test=\"importMenuImportExternalFileSectionBackButton\"\n type=\"light\"\n (buttonClick)=\"displayMainMenu()\"\n >\n <mat-icon class=\"material-symbols-outlined\">arrow_back</mat-icon>\n </gn-ui-button>\n <span class=\"font-bold\"> {{ externalImportBackLabel }}</span>\n </div>\n <gn-ui-url-input\n (valueChange)=\"importRecord($event)\"\n [disabled]=\"isRecordImportInProgress\"\n ></gn-ui-url-input>\n </div>\n </ng-container>\n</ng-container>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i5.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i5.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: ButtonComponent, selector: "gn-ui-button", inputs: ["type", "disabled", "extraClass"], outputs: ["buttonClick"] }, { kind: "component", type: UrlInputComponent, selector: "gn-ui-url-input", inputs: ["value", "extraClass", "placeholder", "disabled"], outputs: ["valueChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
80
+ }
81
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ImportRecordComponent, decorators: [{
82
+ type: Component,
83
+ args: [{ selector: 'gn-ui-import-record', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
84
+ CommonModule,
85
+ MatIconModule,
86
+ ButtonComponent,
87
+ ThumbnailComponent,
88
+ UrlInputComponent,
89
+ ], template: "<ng-container [ngSwitch]=\"sectionDisplayed\">\n <ng-container *ngSwitchCase=\"'mainMenu'\">\n <div\n data-test=\"importMenuMainSection\"\n class=\"mt-2 border border-gray-100 p-2 flex items-center bg-white shadow-2xl rounded-2xl\"\n >\n <ul class=\"flex flex-col gap-2 w-full\">\n <li *ngFor=\"let menuItem of importMenuItems\">\n <gn-ui-button\n [attr.data-test]=\"menuItem.dataTest\"\n type=\"light\"\n extraClass=\"flex flex-row items-center gap-2 w-full justify-start\"\n (buttonClick)=\"menuItem.action()\"\n ><mat-icon class=\"material-symbols-outlined\">\n {{ menuItem.icon }} </mat-icon\n ><span>{{ menuItem.label }}</span></gn-ui-button\n >\n </li>\n </ul>\n </div>\n </ng-container>\n <ng-container *ngSwitchCase=\"'importExternalFile'\">\n <div\n data-test=\"importMenuImportExternalFileSection\"\n class=\"p-6 flex flex-col gap-2 mt-2 border border-gray-100 bg-white shadow-2xl rounded-2xl\"\n >\n <div class=\"flex flex-row items-center gap-2\">\n <gn-ui-button\n data-test=\"importMenuImportExternalFileSectionBackButton\"\n type=\"light\"\n (buttonClick)=\"displayMainMenu()\"\n >\n <mat-icon class=\"material-symbols-outlined\">arrow_back</mat-icon>\n </gn-ui-button>\n <span class=\"font-bold\"> {{ externalImportBackLabel }}</span>\n </div>\n <gn-ui-url-input\n (valueChange)=\"importRecord($event)\"\n [disabled]=\"isRecordImportInProgress\"\n ></gn-ui-url-input>\n </div>\n </ng-container>\n</ng-container>\n" }]
90
+ }], ctorParameters: function () { return [{ type: i1.Router }, { type: i2.TranslateService }, { type: i0.ChangeDetectorRef }, { type: i3.NotificationsService }, { type: i4.RecordsRepositoryInterface }]; }, propDecorators: { closeImportMenu: [{
91
+ type: Output
92
+ }] } });
93
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1wb3J0LXJlY29yZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvZWRpdG9yL3NyYy9saWIvY29tcG9uZW50cy9pbXBvcnQtcmVjb3JkL2ltcG9ydC1yZWNvcmQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9mZWF0dXJlL2VkaXRvci9zcmMvbGliL2NvbXBvbmVudHMvaW1wb3J0LXJlY29yZC9pbXBvcnQtcmVjb3JkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxZQUFZLEVBQ1osTUFBTSxHQUNQLE1BQU0sZUFBZSxDQUFBO0FBQ3RCLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQTtBQUN0RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDOUMsT0FBTyxFQUFFLGVBQWUsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFBO0FBQzVGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDJDQUEyQyxDQUFBO0FBQzlFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFBO0FBQ3RELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHFEQUFxRCxDQUFBO0FBQzFGLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHlGQUF5RixDQUFBO0FBQ3BJLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTs7Ozs7Ozs7QUF5QnhDLE1BQU0sT0FBTyxxQkFBcUI7SUE0QmhDLFlBQ1UsTUFBYyxFQUNkLGdCQUFrQyxFQUNsQyxHQUFzQixFQUN0QixvQkFBMEMsRUFDMUMsaUJBQTZDO1FBSjdDLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDZCxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQ2xDLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBQ3RCLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBc0I7UUFDMUMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUE0QjtRQWhDN0Msb0JBQWUsR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFBO1FBRXBELG9CQUFlLEdBQXNCO1lBQ25DO2dCQUNFLEtBQUssRUFBRSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLGlDQUFpQyxDQUFDO2dCQUN2RSxJQUFJLEVBQUUsV0FBVztnQkFDakIsTUFBTSxFQUFFLEdBQUcsRUFBRSxDQUFDLElBQUk7Z0JBQ2xCLFFBQVEsRUFBRSxpQkFBaUI7YUFDNUI7WUFDRDtnQkFDRSxLQUFLLEVBQUUsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FDbEMsdUNBQXVDLENBQ3hDO2dCQUNELElBQUksRUFBRSxnQkFBZ0I7Z0JBQ3RCLE1BQU0sRUFBRSxJQUFJLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQztnQkFDN0MsUUFBUSxFQUFFLHFCQUFxQjthQUNoQztTQUNGLENBQUE7UUFFRCw2QkFBd0IsR0FBRyxLQUFLLENBQUE7UUFFaEMscUJBQWdCLEdBQW1CLFVBQVUsQ0FBQTtRQUU3Qyw0QkFBdUIsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUNyRCw0Q0FBNEMsQ0FDN0MsQ0FBQTtJQVFFLENBQUM7SUFFSixlQUFlO1FBQ2IsSUFBSSxDQUFDLGdCQUFnQixHQUFHLFVBQVUsQ0FBQTtRQUNsQyxJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxDQUFBO0lBQ3pCLENBQUM7SUFFRCxxQkFBcUI7UUFDbkIsSUFBSSxDQUFDLGdCQUFnQixHQUFHLG9CQUFvQixDQUFBO1FBQzVDLElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxFQUFFLENBQUE7SUFDekIsQ0FBQztJQUVELFlBQVksQ0FBQyxHQUFXO1FBQ3RCLElBQUksQ0FBQyx3QkFBd0IsR0FBRyxJQUFJLENBQUE7UUFFcEMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLHVCQUF1QixDQUFDLEdBQUcsQ0FBQyxDQUFDLFNBQVMsQ0FBQztZQUM1RCxJQUFJLEVBQUUsQ0FBQyxZQUFZLEVBQUUsRUFBRTtnQkFDckIsSUFBSSxZQUFZLEVBQUU7b0JBQ2hCLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxnQkFBZ0IsQ0FDeEM7d0JBQ0UsSUFBSSxFQUFFLFNBQVM7d0JBQ2YsS0FBSyxFQUFFLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQ2xDLG9EQUFvRCxDQUNyRDt3QkFDRCxJQUFJLEVBQUUsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUNwQyxtREFBbUQsQ0FDcEQsRUFBRTtxQkFDSixFQUNELElBQUksQ0FDTCxDQUFBO29CQUVELElBQUksQ0FBQyxNQUFNO3lCQUNSLFFBQVEsQ0FBQyxDQUFDLE9BQU8sRUFBRSxZQUFZLENBQUMsQ0FBQzt5QkFDakMsS0FBSyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUE7aUJBQ3RDO2dCQUNELElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxFQUFFLENBQUE7WUFDN0IsQ0FBQztZQUNELEtBQUssRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFO2dCQUNmLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxnQkFBZ0IsQ0FDeEM7b0JBQ0UsSUFBSSxFQUFFLE9BQU87b0JBQ2IsS0FBSyxFQUFFLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQ2xDLG9EQUFvRCxDQUNyRDtvQkFDRCxJQUFJLEVBQUUsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUNwQyxtREFBbUQsQ0FDcEQsSUFBSSxLQUFLLENBQUMsT0FBTyxJQUFJLEVBQUUsRUFBRTtpQkFDM0IsRUFDRCxJQUFJLENBQ0wsQ0FBQTtnQkFDRCxJQUFJLENBQUMsd0JBQXdCLEdBQUcsS0FBSyxDQUFBO2dCQUNyQyxJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxDQUFBO1lBQ3pCLENBQUM7U0FDRixDQUFDLENBQUE7SUFDSixDQUFDOytHQXhGVSxxQkFBcUI7bUdBQXJCLHFCQUFxQixnSUN2Q2xDLDRwREEyQ0EseUREWEksWUFBWSx1VkFDWixhQUFhLG9MQUNiLGVBQWUsK0hBRWYsaUJBQWlCOzs0RkFHUixxQkFBcUI7a0JBZGpDLFNBQVM7K0JBQ0UscUJBQXFCLG1CQUdkLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsSUFBSSxXQUNQO3dCQUNQLFlBQVk7d0JBQ1osYUFBYTt3QkFDYixlQUFlO3dCQUNmLGtCQUFrQjt3QkFDbEIsaUJBQWlCO3FCQUNsQjt3T0FHUyxlQUFlO3NCQUF4QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgT3V0cHV0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nXG5pbXBvcnQgeyBCdXR0b25Db21wb25lbnQsIFVybElucHV0Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS9pbnB1dHMvc3JjJ1xuaW1wb3J0IHsgVGh1bWJuYWlsQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS9lbGVtZW50cy9zcmMnXG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSdcbmltcG9ydCB7IE5vdGlmaWNhdGlvbnNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9mZWF0dXJlL25vdGlmaWNhdGlvbnMvc3JjJ1xuaW1wb3J0IHsgUmVjb3Jkc1JlcG9zaXRvcnlJbnRlcmZhY2UgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9kb21haW4vc3JjL2xpYi9yZXBvc2l0b3J5L3JlY29yZHMtcmVwb3NpdG9yeS5pbnRlcmZhY2UnXG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInXG5cbmludGVyZmFjZSBJbXBvcnRNZW51SXRlbXMge1xuICBsYWJlbDogc3RyaW5nXG4gIGljb246IHN0cmluZ1xuICBhY3Rpb246ICgpID0+IGFueVxuICBkYXRhVGVzdDogc3RyaW5nXG59XG5cbnR5cGUgSW1wb3J0TWVudVBhZ2UgPSAnbWFpbk1lbnUnIHwgJ2ltcG9ydEV4dGVybmFsRmlsZSdcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ24tdWktaW1wb3J0LXJlY29yZCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9pbXBvcnQtcmVjb3JkLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vaW1wb3J0LXJlY29yZC5jb21wb25lbnQuY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIE1hdEljb25Nb2R1bGUsXG4gICAgQnV0dG9uQ29tcG9uZW50LFxuICAgIFRodW1ibmFpbENvbXBvbmVudCxcbiAgICBVcmxJbnB1dENvbXBvbmVudCxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgSW1wb3J0UmVjb3JkQ29tcG9uZW50IHtcbiAgQE91dHB1dCgpIGNsb3NlSW1wb3J0TWVudSA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKVxuXG4gIGltcG9ydE1lbnVJdGVtczogSW1wb3J0TWVudUl0ZW1zW10gPSBbXG4gICAge1xuICAgICAgbGFiZWw6IHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCdkYXNoYm9hcmQuaW1wb3J0UmVjb3JkLnVzZU1vZGVsJyksXG4gICAgICBpY29uOiAnaGlnaGxpZ2h0JyxcbiAgICAgIGFjdGlvbjogKCkgPT4gbnVsbCxcbiAgICAgIGRhdGFUZXN0OiAndXNlQU1vZGVsQnV0dG9uJyxcbiAgICB9LFxuICAgIHtcbiAgICAgIGxhYmVsOiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudChcbiAgICAgICAgJ2Rhc2hib2FyZC5pbXBvcnRSZWNvcmQuaW1wb3J0RXh0ZXJuYWwnXG4gICAgICApLFxuICAgICAgaWNvbjogJ2Nsb3VkX2Rvd25sb2FkJyxcbiAgICAgIGFjdGlvbjogdGhpcy5kaXNwbGF5SW1wb3J0RXh0ZXJuYWwuYmluZCh0aGlzKSxcbiAgICAgIGRhdGFUZXN0OiAnaW1wb3J0RnJvbVVybEJ1dHRvbicsXG4gICAgfSxcbiAgXVxuXG4gIGlzUmVjb3JkSW1wb3J0SW5Qcm9ncmVzcyA9IGZhbHNlXG5cbiAgc2VjdGlvbkRpc3BsYXllZDogSW1wb3J0TWVudVBhZ2UgPSAnbWFpbk1lbnUnXG5cbiAgZXh0ZXJuYWxJbXBvcnRCYWNrTGFiZWwgPSB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudChcbiAgICAnZGFzaGJvYXJkLmltcG9ydFJlY29yZC5pbXBvcnRFeHRlcm5hbExhYmVsJ1xuICApXG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcixcbiAgICBwcml2YXRlIHRyYW5zbGF0ZVNlcnZpY2U6IFRyYW5zbGF0ZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBjZHI6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHByaXZhdGUgbm90aWZpY2F0aW9uc1NlcnZpY2U6IE5vdGlmaWNhdGlvbnNTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVjb3Jkc1JlcG9zaXRvcnk6IFJlY29yZHNSZXBvc2l0b3J5SW50ZXJmYWNlXG4gICkge31cblxuICBkaXNwbGF5TWFpbk1lbnUoKSB7XG4gICAgdGhpcy5zZWN0aW9uRGlzcGxheWVkID0gJ21haW5NZW51J1xuICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpXG4gIH1cblxuICBkaXNwbGF5SW1wb3J0RXh0ZXJuYWwoKSB7XG4gICAgdGhpcy5zZWN0aW9uRGlzcGxheWVkID0gJ2ltcG9ydEV4dGVybmFsRmlsZSdcbiAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKVxuICB9XG5cbiAgaW1wb3J0UmVjb3JkKHVybDogc3RyaW5nKSB7XG4gICAgdGhpcy5pc1JlY29yZEltcG9ydEluUHJvZ3Jlc3MgPSB0cnVlXG5cbiAgICB0aGlzLnJlY29yZHNSZXBvc2l0b3J5LmR1cGxpY2F0ZUV4dGVybmFsUmVjb3JkKHVybCkuc3Vic2NyaWJlKHtcbiAgICAgIG5leHQ6IChyZWNvcmRUZW1wSWQpID0+IHtcbiAgICAgICAgaWYgKHJlY29yZFRlbXBJZCkge1xuICAgICAgICAgIHRoaXMubm90aWZpY2F0aW9uc1NlcnZpY2Uuc2hvd05vdGlmaWNhdGlvbihcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgdHlwZTogJ3N1Y2Nlc3MnLFxuICAgICAgICAgICAgICB0aXRsZTogdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoXG4gICAgICAgICAgICAgICAgJ2VkaXRvci5yZWNvcmQuaW1wb3J0RnJvbUV4dGVybmFsRmlsZS5zdWNjZXNzLnRpdGxlJ1xuICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICB0ZXh0OiBgJHt0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudChcbiAgICAgICAgICAgICAgICAnZWRpdG9yLnJlY29yZC5pbXBvcnRGcm9tRXh0ZXJuYWxGaWxlLnN1Y2Nlc3MuYm9keSdcbiAgICAgICAgICAgICAgKX1gLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIDI1MDBcbiAgICAgICAgICApXG5cbiAgICAgICAgICB0aGlzLnJvdXRlclxuICAgICAgICAgICAgLm5hdmlnYXRlKFsnL2VkaXQnLCByZWNvcmRUZW1wSWRdKVxuICAgICAgICAgICAgLmNhdGNoKChlcnIpID0+IGNvbnNvbGUuZXJyb3IoZXJyKSlcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmNsb3NlSW1wb3J0TWVudS5uZXh0KClcbiAgICAgIH0sXG4gICAgICBlcnJvcjogKGVycm9yKSA9PiB7XG4gICAgICAgIHRoaXMubm90aWZpY2F0aW9uc1NlcnZpY2Uuc2hvd05vdGlmaWNhdGlvbihcbiAgICAgICAgICB7XG4gICAgICAgICAgICB0eXBlOiAnZXJyb3InLFxuICAgICAgICAgICAgdGl0bGU6IHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KFxuICAgICAgICAgICAgICAnZWRpdG9yLnJlY29yZC5pbXBvcnRGcm9tRXh0ZXJuYWxGaWxlLmZhaWx1cmUudGl0bGUnXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgdGV4dDogYCR7dGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoXG4gICAgICAgICAgICAgICdlZGl0b3IucmVjb3JkLmltcG9ydEZyb21FeHRlcm5hbEZpbGUuZmFpbHVyZS5ib2R5J1xuICAgICAgICAgICAgKX0gJHtlcnJvci5tZXNzYWdlID8/ICcnfWAsXG4gICAgICAgICAgfSxcbiAgICAgICAgICAyNTAwXG4gICAgICAgIClcbiAgICAgICAgdGhpcy5pc1JlY29yZEltcG9ydEluUHJvZ3Jlc3MgPSBmYWxzZVxuICAgICAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKVxuICAgICAgfSxcbiAgICB9KVxuICB9XG59XG4iLCI8bmctY29udGFpbmVyIFtuZ1N3aXRjaF09XCJzZWN0aW9uRGlzcGxheWVkXCI+XG4gIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidtYWluTWVudSdcIj5cbiAgICA8ZGl2XG4gICAgICBkYXRhLXRlc3Q9XCJpbXBvcnRNZW51TWFpblNlY3Rpb25cIlxuICAgICAgY2xhc3M9XCJtdC0yIGJvcmRlciBib3JkZXItZ3JheS0xMDAgcC0yIGZsZXggaXRlbXMtY2VudGVyIGJnLXdoaXRlIHNoYWRvdy0yeGwgcm91bmRlZC0yeGxcIlxuICAgID5cbiAgICAgIDx1bCBjbGFzcz1cImZsZXggZmxleC1jb2wgZ2FwLTIgdy1mdWxsXCI+XG4gICAgICAgIDxsaSAqbmdGb3I9XCJsZXQgbWVudUl0ZW0gb2YgaW1wb3J0TWVudUl0ZW1zXCI+XG4gICAgICAgICAgPGduLXVpLWJ1dHRvblxuICAgICAgICAgICAgW2F0dHIuZGF0YS10ZXN0XT1cIm1lbnVJdGVtLmRhdGFUZXN0XCJcbiAgICAgICAgICAgIHR5cGU9XCJsaWdodFwiXG4gICAgICAgICAgICBleHRyYUNsYXNzPVwiZmxleCBmbGV4LXJvdyBpdGVtcy1jZW50ZXIgZ2FwLTIgdy1mdWxsIGp1c3RpZnktc3RhcnRcIlxuICAgICAgICAgICAgKGJ1dHRvbkNsaWNrKT1cIm1lbnVJdGVtLmFjdGlvbigpXCJcbiAgICAgICAgICAgID48bWF0LWljb24gY2xhc3M9XCJtYXRlcmlhbC1zeW1ib2xzLW91dGxpbmVkXCI+XG4gICAgICAgICAgICAgIHt7IG1lbnVJdGVtLmljb24gfX0gPC9tYXQtaWNvblxuICAgICAgICAgICAgPjxzcGFuPnt7IG1lbnVJdGVtLmxhYmVsIH19PC9zcGFuPjwvZ24tdWktYnV0dG9uXG4gICAgICAgICAgPlxuICAgICAgICA8L2xpPlxuICAgICAgPC91bD5cbiAgICA8L2Rpdj5cbiAgPC9uZy1jb250YWluZXI+XG4gIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidpbXBvcnRFeHRlcm5hbEZpbGUnXCI+XG4gICAgPGRpdlxuICAgICAgZGF0YS10ZXN0PVwiaW1wb3J0TWVudUltcG9ydEV4dGVybmFsRmlsZVNlY3Rpb25cIlxuICAgICAgY2xhc3M9XCJwLTYgZmxleCBmbGV4LWNvbCBnYXAtMiBtdC0yIGJvcmRlciBib3JkZXItZ3JheS0xMDAgYmctd2hpdGUgc2hhZG93LTJ4bCByb3VuZGVkLTJ4bFwiXG4gICAgPlxuICAgICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1yb3cgaXRlbXMtY2VudGVyIGdhcC0yXCI+XG4gICAgICAgIDxnbi11aS1idXR0b25cbiAgICAgICAgICBkYXRhLXRlc3Q9XCJpbXBvcnRNZW51SW1wb3J0RXh0ZXJuYWxGaWxlU2VjdGlvbkJhY2tCdXR0b25cIlxuICAgICAgICAgIHR5cGU9XCJsaWdodFwiXG4gICAgICAgICAgKGJ1dHRvbkNsaWNrKT1cImRpc3BsYXlNYWluTWVudSgpXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxtYXQtaWNvbiBjbGFzcz1cIm1hdGVyaWFsLXN5bWJvbHMtb3V0bGluZWRcIj5hcnJvd19iYWNrPC9tYXQtaWNvbj5cbiAgICAgICAgPC9nbi11aS1idXR0b24+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwiZm9udC1ib2xkXCI+IHt7IGV4dGVybmFsSW1wb3J0QmFja0xhYmVsIH19PC9zcGFuPlxuICAgICAgPC9kaXY+XG4gICAgICA8Z24tdWktdXJsLWlucHV0XG4gICAgICAgICh2YWx1ZUNoYW5nZSk9XCJpbXBvcnRSZWNvcmQoJGV2ZW50KVwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJpc1JlY29yZEltcG9ydEluUHJvZ3Jlc3NcIlxuICAgICAgPjwvZ24tdWktdXJsLWlucHV0PlxuICAgIDwvZGl2PlxuICA8L25nLWNvbnRhaW5lcj5cbjwvbmctY29udGFpbmVyPlxuIl19