@net7/boilerplate-muruca 4.9.6 → 5.0.0

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 (301) hide show
  1. package/esm2022/lib/components/advanced-result/advanced-result.mjs +42 -0
  2. package/esm2022/lib/components/form/form.mjs +36 -0
  3. package/esm2022/lib/components/form-wrapper-accordion/form-wrapper-accordion.mjs +38 -0
  4. package/esm2022/lib/components/gallery/gallery.mjs +28 -0
  5. package/esm2022/lib/components/metadata-dynamic/metadata-dynamic.mjs +32 -0
  6. package/{esm2020 → esm2022}/lib/components/metadata-with-readmore/metadata-with-readmore.mjs +4 -4
  7. package/esm2022/lib/components/read-more/read-more.mjs +59 -0
  8. package/esm2022/lib/components/resource-modal/resource-modal.mjs +87 -0
  9. package/esm2022/lib/components/search-page-description/search-page-description.mjs +21 -0
  10. package/esm2022/lib/data-sources/breadcrumbs.ds.mjs +46 -0
  11. package/esm2022/lib/data-sources/collection.ds.mjs +91 -0
  12. package/esm2022/lib/data-sources/facets/facet-checkbox.ds.mjs +38 -0
  13. package/esm2022/lib/data-sources/facets/facet-header.ds.mjs +40 -0
  14. package/esm2022/lib/data-sources/facets/facet-histogram.ds.mjs +139 -0
  15. package/esm2022/lib/data-sources/facets/facet-link-multiple.ds.mjs +54 -0
  16. package/esm2022/lib/data-sources/facets/facet-link.ds.mjs +47 -0
  17. package/esm2022/lib/data-sources/facets/facet-map.ds.mjs +209 -0
  18. package/esm2022/lib/data-sources/facets/facet-select.ds.mjs +28 -0
  19. package/esm2022/lib/data-sources/facets/facet-text.ds.mjs +31 -0
  20. package/{esm2020 → esm2022}/lib/data-sources/form/input-checkbox.ds.mjs +1 -1
  21. package/{esm2020 → esm2022}/lib/data-sources/form/input-text.ds.mjs +1 -1
  22. package/{esm2020 → esm2022}/lib/data-sources/form-wrapper-accordion.ds.mjs +1 -1
  23. package/esm2022/lib/data-sources/gallery.ds.mjs +25 -0
  24. package/esm2022/lib/data-sources/hero.ds.mjs +37 -0
  25. package/esm2022/lib/data-sources/image-viewer-tools.ds.mjs +137 -0
  26. package/esm2022/lib/data-sources/image-viewer.ds.mjs +62 -0
  27. package/esm2022/lib/data-sources/item-preview.ds.mjs +46 -0
  28. package/esm2022/lib/data-sources/map.ds.mjs +173 -0
  29. package/{esm2020 → esm2022}/lib/data-sources/metadata-dynamic.ds.mjs +1 -1
  30. package/esm2022/lib/data-sources/metadata.ds.mjs +91 -0
  31. package/esm2022/lib/data-sources/resource-tabs.ds.mjs +22 -0
  32. package/esm2022/lib/data-sources/search/search-page-description.ds.mjs +19 -0
  33. package/{esm2020 → esm2022}/lib/data-sources/search/search-page-title.ds.mjs +1 -1
  34. package/esm2022/lib/data-sources/search/search-results-title.ds.mjs +47 -0
  35. package/esm2022/lib/data-sources/search/search-results.ds.mjs +147 -0
  36. package/esm2022/lib/data-sources/search/search-tags.ds.mjs +49 -0
  37. package/esm2022/lib/data-sources/text-viewer.ds.mjs +146 -0
  38. package/{esm2020 → esm2022}/lib/data-sources/timeline.ds.mjs +1 -1
  39. package/esm2022/lib/event-handlers/collection.eh.mjs +19 -0
  40. package/esm2022/lib/event-handlers/facets/facet-checkbox.eh.mjs +19 -0
  41. package/esm2022/lib/event-handlers/facets/facet-header.eh.mjs +20 -0
  42. package/esm2022/lib/event-handlers/facets/facet-histogram.eh.mjs +24 -0
  43. package/esm2022/lib/event-handlers/facets/facet-link-multiple.eh.mjs +21 -0
  44. package/esm2022/lib/event-handlers/facets/facet-link.eh.mjs +21 -0
  45. package/esm2022/lib/event-handlers/facets/facet-map.eh.mjs +46 -0
  46. package/esm2022/lib/event-handlers/facets/facet-select.eh.mjs +19 -0
  47. package/esm2022/lib/event-handlers/facets/facet-text.eh.mjs +22 -0
  48. package/esm2022/lib/event-handlers/form/input-checkbox.eh.mjs +22 -0
  49. package/esm2022/lib/event-handlers/form/input-select.eh.mjs +23 -0
  50. package/esm2022/lib/event-handlers/form/input-text.eh.mjs +23 -0
  51. package/esm2022/lib/event-handlers/form-wrapper-accordion.eh.mjs +45 -0
  52. package/esm2022/lib/event-handlers/gallery.eh.mjs +18 -0
  53. package/esm2022/lib/event-handlers/image-viewer-overlay-details.eh.mjs +25 -0
  54. package/esm2022/lib/event-handlers/image-viewer-tools.eh.mjs +66 -0
  55. package/esm2022/lib/event-handlers/image-viewer.eh.mjs +56 -0
  56. package/esm2022/lib/event-handlers/map.eh.mjs +24 -0
  57. package/{esm2020 → esm2022}/lib/event-handlers/metadata-dynamic.eh.mjs +1 -1
  58. package/{esm2020 → esm2022}/lib/event-handlers/nav.eh.mjs +1 -1
  59. package/{esm2020 → esm2022}/lib/event-handlers/search/search-page-description.eh.mjs +1 -1
  60. package/{esm2020 → esm2022}/lib/event-handlers/search/search-page-title.eh.mjs +1 -1
  61. package/esm2022/lib/event-handlers/search/search-results-title.eh.mjs +24 -0
  62. package/esm2022/lib/event-handlers/search/search-results.eh.mjs +19 -0
  63. package/{esm2020 → esm2022}/lib/event-handlers/search/search-tags.eh.mjs +1 -1
  64. package/esm2022/lib/event-handlers/text-viewer.eh.mjs +19 -0
  65. package/{esm2020 → esm2022}/lib/event-handlers/year-header.eh.mjs +1 -1
  66. package/esm2022/lib/guards/dynamic-path.guard.mjs +28 -0
  67. package/esm2022/lib/guards/locale-dependencies.guard.mjs +43 -0
  68. package/{esm2020 → esm2022}/lib/helpers/links-helper.mjs +1 -1
  69. package/{esm2020 → esm2022}/lib/helpers/local-storage-helper.mjs +1 -1
  70. package/esm2022/lib/helpers/search-helper.mjs +66 -0
  71. package/esm2022/lib/layouts/advanced-results-layout/advanced-results-layout.ds.mjs +120 -0
  72. package/esm2022/lib/layouts/advanced-results-layout/advanced-results-layout.eh.mjs +90 -0
  73. package/{esm2020 → esm2022}/lib/layouts/advanced-results-layout/advanced-results-layout.mjs +5 -5
  74. package/esm2022/lib/layouts/advanced-search-layout/advanced-search-layout.ds.mjs +167 -0
  75. package/esm2022/lib/layouts/advanced-search-layout/advanced-search-layout.eh.mjs +52 -0
  76. package/{esm2020 → esm2022}/lib/layouts/advanced-search-layout/advanced-search-layout.mjs +5 -5
  77. package/esm2022/lib/layouts/home-layout/home-layout.ds.mjs +64 -0
  78. package/esm2022/lib/layouts/home-layout/home-layout.eh.mjs +23 -0
  79. package/esm2022/lib/layouts/home-layout/home-layout.mjs +85 -0
  80. package/{esm2020 → esm2022}/lib/layouts/itinerary-layout/itinerary-layout.ds.mjs +1 -1
  81. package/esm2022/lib/layouts/itinerary-layout/itinerary-layout.eh.mjs +59 -0
  82. package/esm2022/lib/layouts/itinerary-layout/itinerary-layout.mjs +87 -0
  83. package/esm2022/lib/layouts/map-layout/map-layout.ds.mjs +162 -0
  84. package/esm2022/lib/layouts/map-layout/map-layout.eh.mjs +70 -0
  85. package/{esm2020 → esm2022}/lib/layouts/map-layout/map-layout.mjs +5 -5
  86. package/esm2022/lib/layouts/posts-layout/posts-layout.ds.mjs +119 -0
  87. package/esm2022/lib/layouts/posts-layout/posts-layout.eh.mjs +79 -0
  88. package/{esm2020 → esm2022}/lib/layouts/posts-layout/posts-layout.mjs +5 -5
  89. package/esm2022/lib/layouts/resource-layout/resource-layout.ds.mjs +149 -0
  90. package/esm2022/lib/layouts/resource-layout/resource-layout.eh.mjs +94 -0
  91. package/esm2022/lib/layouts/resource-layout/resource-layout.mjs +129 -0
  92. package/esm2022/lib/layouts/search-facets-layout/search-facets-layout.ds.mjs +55 -0
  93. package/esm2022/lib/layouts/search-facets-layout/search-facets-layout.eh.mjs +83 -0
  94. package/esm2022/lib/layouts/search-facets-layout/search-facets-layout.mjs +102 -0
  95. package/esm2022/lib/layouts/search-layout/search-layout.ds.mjs +113 -0
  96. package/esm2022/lib/layouts/search-layout/search-layout.eh.mjs +161 -0
  97. package/{esm2020 → esm2022}/lib/layouts/search-layout/search-layout.mjs +5 -5
  98. package/esm2022/lib/layouts/static-layout/static-layout.ds.mjs +51 -0
  99. package/esm2022/lib/layouts/static-layout/static-layout.eh.mjs +64 -0
  100. package/{esm2020 → esm2022}/lib/layouts/static-layout/static-layout.mjs +5 -5
  101. package/esm2022/lib/layouts/timeline-layout/timeline-layout.ds.mjs +197 -0
  102. package/esm2022/lib/layouts/timeline-layout/timeline-layout.eh.mjs +72 -0
  103. package/{esm2020 → esm2022}/lib/layouts/timeline-layout/timeline-layout.mjs +5 -5
  104. package/esm2022/lib/models/form.model.mjs +92 -0
  105. package/esm2022/lib/models/image-viewer-overlay.model.mjs +204 -0
  106. package/esm2022/lib/n7-boilerplate-muruca.module.mjs +160 -0
  107. package/{esm2020 → esm2022}/lib/pipes/keep-html.pipe.mjs +5 -5
  108. package/esm2022/lib/services/footer.service.mjs +51 -0
  109. package/{esm2020 → esm2022}/lib/services/layout-state.service.mjs +4 -4
  110. package/esm2022/lib/services/locale.service.mjs +67 -0
  111. package/esm2022/lib/services/menu.service.mjs +106 -0
  112. package/{esm2020 → esm2022}/lib/services/resource-modal.service.mjs +5 -5
  113. package/esm2022/lib/services/search.service.mjs +505 -0
  114. package/esm2022/lib/services/translations-loader.service.mjs +48 -0
  115. package/{fesm2020 → fesm2022}/net7-boilerplate-muruca.mjs +212 -197
  116. package/fesm2022/net7-boilerplate-muruca.mjs.map +1 -0
  117. package/lib/components/advanced-result/advanced-result.d.ts +1 -1
  118. package/lib/components/form/form.d.ts +1 -1
  119. package/lib/components/form-wrapper-accordion/form-wrapper-accordion.d.ts +2 -2
  120. package/lib/components/gallery/gallery.d.ts +3 -3
  121. package/lib/components/metadata-dynamic/metadata-dynamic.d.ts +1 -1
  122. package/lib/components/metadata-with-readmore/metadata-with-readmore.d.ts +1 -1
  123. package/lib/components/read-more/read-more.d.ts +2 -2
  124. package/lib/components/resource-modal/resource-modal.d.ts +1 -1
  125. package/lib/components/search-page-description/search-page-description.d.ts +2 -2
  126. package/lib/config-types/muruca/layouts.d.ts +4 -4
  127. package/lib/data-sources/collection.ds.d.ts +1 -1
  128. package/lib/data-sources/facets/facet-checkbox.ds.d.ts +1 -1
  129. package/lib/data-sources/facets/facet-datasource.d.ts +1 -1
  130. package/lib/data-sources/facets/facet-header.ds.d.ts +1 -1
  131. package/lib/data-sources/facets/facet-histogram.ds.d.ts +1 -1
  132. package/lib/data-sources/facets/facet-map.ds.d.ts +2 -2
  133. package/lib/data-sources/facets/facet-select.ds.d.ts +1 -1
  134. package/lib/data-sources/facets/facet-text.ds.d.ts +1 -1
  135. package/lib/data-sources/form/input-checkbox.ds.d.ts +1 -1
  136. package/lib/data-sources/form/input-select.ds.d.ts +1 -1
  137. package/lib/data-sources/form/input-text.ds.d.ts +1 -1
  138. package/lib/data-sources/gallery.ds.d.ts +1 -1
  139. package/lib/data-sources/image-viewer-overlay-details.ds.d.ts +1 -1
  140. package/lib/data-sources/image-viewer-tools.ds.d.ts +1 -1
  141. package/lib/data-sources/map.ds.d.ts +1 -1
  142. package/lib/data-sources/search/search-results.ds.d.ts +2 -2
  143. package/lib/data-sources/timeline.ds.d.ts +1 -1
  144. package/lib/guards/dynamic-path.guard.d.ts +2 -2
  145. package/lib/guards/locale-dependencies.guard.d.ts +2 -2
  146. package/lib/interfaces/form.interface.d.ts +1 -1
  147. package/lib/layouts/advanced-results-layout/advanced-results-layout.d.ts +1 -1
  148. package/lib/layouts/advanced-search-layout/advanced-search-layout.d.ts +1 -1
  149. package/lib/layouts/home-layout/home-layout.d.ts +1 -1
  150. package/lib/layouts/itinerary-layout/itinerary-layout.d.ts +1 -1
  151. package/lib/layouts/map-layout/map-layout.d.ts +1 -1
  152. package/lib/layouts/posts-layout/posts-layout.d.ts +1 -1
  153. package/lib/layouts/resource-layout/resource-layout.d.ts +1 -1
  154. package/lib/layouts/search-facets-layout/search-facets-layout.d.ts +1 -1
  155. package/lib/layouts/search-layout/search-layout.d.ts +1 -1
  156. package/lib/layouts/static-layout/static-layout.d.ts +1 -1
  157. package/lib/layouts/timeline-layout/timeline-layout.d.ts +1 -1
  158. package/lib/services/locale.service.d.ts +1 -1
  159. package/lib/services/resource-modal.service.d.ts +2 -2
  160. package/package.json +5 -11
  161. package/esm2020/lib/components/advanced-result/advanced-result.mjs +0 -42
  162. package/esm2020/lib/components/form/form.mjs +0 -36
  163. package/esm2020/lib/components/form-wrapper-accordion/form-wrapper-accordion.mjs +0 -38
  164. package/esm2020/lib/components/gallery/gallery.mjs +0 -28
  165. package/esm2020/lib/components/metadata-dynamic/metadata-dynamic.mjs +0 -32
  166. package/esm2020/lib/components/read-more/read-more.mjs +0 -59
  167. package/esm2020/lib/components/resource-modal/resource-modal.mjs +0 -87
  168. package/esm2020/lib/components/search-page-description/search-page-description.mjs +0 -21
  169. package/esm2020/lib/data-sources/breadcrumbs.ds.mjs +0 -46
  170. package/esm2020/lib/data-sources/collection.ds.mjs +0 -91
  171. package/esm2020/lib/data-sources/facets/facet-checkbox.ds.mjs +0 -38
  172. package/esm2020/lib/data-sources/facets/facet-header.ds.mjs +0 -40
  173. package/esm2020/lib/data-sources/facets/facet-histogram.ds.mjs +0 -139
  174. package/esm2020/lib/data-sources/facets/facet-link-multiple.ds.mjs +0 -54
  175. package/esm2020/lib/data-sources/facets/facet-link.ds.mjs +0 -47
  176. package/esm2020/lib/data-sources/facets/facet-map.ds.mjs +0 -209
  177. package/esm2020/lib/data-sources/facets/facet-select.ds.mjs +0 -28
  178. package/esm2020/lib/data-sources/facets/facet-text.ds.mjs +0 -31
  179. package/esm2020/lib/data-sources/gallery.ds.mjs +0 -25
  180. package/esm2020/lib/data-sources/hero.ds.mjs +0 -37
  181. package/esm2020/lib/data-sources/image-viewer-tools.ds.mjs +0 -137
  182. package/esm2020/lib/data-sources/image-viewer.ds.mjs +0 -62
  183. package/esm2020/lib/data-sources/item-preview.ds.mjs +0 -46
  184. package/esm2020/lib/data-sources/map.ds.mjs +0 -173
  185. package/esm2020/lib/data-sources/metadata.ds.mjs +0 -91
  186. package/esm2020/lib/data-sources/resource-tabs.ds.mjs +0 -22
  187. package/esm2020/lib/data-sources/search/search-page-description.ds.mjs +0 -19
  188. package/esm2020/lib/data-sources/search/search-results-title.ds.mjs +0 -47
  189. package/esm2020/lib/data-sources/search/search-results.ds.mjs +0 -147
  190. package/esm2020/lib/data-sources/search/search-tags.ds.mjs +0 -49
  191. package/esm2020/lib/data-sources/text-viewer.ds.mjs +0 -146
  192. package/esm2020/lib/event-handlers/collection.eh.mjs +0 -19
  193. package/esm2020/lib/event-handlers/facets/facet-checkbox.eh.mjs +0 -19
  194. package/esm2020/lib/event-handlers/facets/facet-header.eh.mjs +0 -20
  195. package/esm2020/lib/event-handlers/facets/facet-histogram.eh.mjs +0 -24
  196. package/esm2020/lib/event-handlers/facets/facet-link-multiple.eh.mjs +0 -21
  197. package/esm2020/lib/event-handlers/facets/facet-link.eh.mjs +0 -21
  198. package/esm2020/lib/event-handlers/facets/facet-map.eh.mjs +0 -46
  199. package/esm2020/lib/event-handlers/facets/facet-select.eh.mjs +0 -19
  200. package/esm2020/lib/event-handlers/facets/facet-text.eh.mjs +0 -22
  201. package/esm2020/lib/event-handlers/form/input-checkbox.eh.mjs +0 -22
  202. package/esm2020/lib/event-handlers/form/input-select.eh.mjs +0 -23
  203. package/esm2020/lib/event-handlers/form/input-text.eh.mjs +0 -23
  204. package/esm2020/lib/event-handlers/form-wrapper-accordion.eh.mjs +0 -45
  205. package/esm2020/lib/event-handlers/gallery.eh.mjs +0 -18
  206. package/esm2020/lib/event-handlers/image-viewer-overlay-details.eh.mjs +0 -25
  207. package/esm2020/lib/event-handlers/image-viewer-tools.eh.mjs +0 -66
  208. package/esm2020/lib/event-handlers/image-viewer.eh.mjs +0 -56
  209. package/esm2020/lib/event-handlers/map.eh.mjs +0 -24
  210. package/esm2020/lib/event-handlers/search/search-results-title.eh.mjs +0 -24
  211. package/esm2020/lib/event-handlers/search/search-results.eh.mjs +0 -19
  212. package/esm2020/lib/event-handlers/text-viewer.eh.mjs +0 -19
  213. package/esm2020/lib/guards/dynamic-path.guard.mjs +0 -28
  214. package/esm2020/lib/guards/locale-dependencies.guard.mjs +0 -43
  215. package/esm2020/lib/helpers/search-helper.mjs +0 -57
  216. package/esm2020/lib/layouts/advanced-results-layout/advanced-results-layout.ds.mjs +0 -120
  217. package/esm2020/lib/layouts/advanced-results-layout/advanced-results-layout.eh.mjs +0 -90
  218. package/esm2020/lib/layouts/advanced-search-layout/advanced-search-layout.ds.mjs +0 -167
  219. package/esm2020/lib/layouts/advanced-search-layout/advanced-search-layout.eh.mjs +0 -52
  220. package/esm2020/lib/layouts/home-layout/home-layout.ds.mjs +0 -64
  221. package/esm2020/lib/layouts/home-layout/home-layout.eh.mjs +0 -23
  222. package/esm2020/lib/layouts/home-layout/home-layout.mjs +0 -85
  223. package/esm2020/lib/layouts/itinerary-layout/itinerary-layout.eh.mjs +0 -59
  224. package/esm2020/lib/layouts/itinerary-layout/itinerary-layout.mjs +0 -87
  225. package/esm2020/lib/layouts/map-layout/map-layout.ds.mjs +0 -162
  226. package/esm2020/lib/layouts/map-layout/map-layout.eh.mjs +0 -70
  227. package/esm2020/lib/layouts/posts-layout/posts-layout.ds.mjs +0 -119
  228. package/esm2020/lib/layouts/posts-layout/posts-layout.eh.mjs +0 -79
  229. package/esm2020/lib/layouts/resource-layout/resource-layout.ds.mjs +0 -149
  230. package/esm2020/lib/layouts/resource-layout/resource-layout.eh.mjs +0 -94
  231. package/esm2020/lib/layouts/resource-layout/resource-layout.mjs +0 -129
  232. package/esm2020/lib/layouts/search-facets-layout/search-facets-layout.ds.mjs +0 -55
  233. package/esm2020/lib/layouts/search-facets-layout/search-facets-layout.eh.mjs +0 -83
  234. package/esm2020/lib/layouts/search-facets-layout/search-facets-layout.mjs +0 -102
  235. package/esm2020/lib/layouts/search-layout/search-layout.ds.mjs +0 -113
  236. package/esm2020/lib/layouts/search-layout/search-layout.eh.mjs +0 -161
  237. package/esm2020/lib/layouts/static-layout/static-layout.ds.mjs +0 -51
  238. package/esm2020/lib/layouts/static-layout/static-layout.eh.mjs +0 -64
  239. package/esm2020/lib/layouts/timeline-layout/timeline-layout.ds.mjs +0 -197
  240. package/esm2020/lib/layouts/timeline-layout/timeline-layout.eh.mjs +0 -72
  241. package/esm2020/lib/models/form.model.mjs +0 -92
  242. package/esm2020/lib/models/image-viewer-overlay.model.mjs +0 -204
  243. package/esm2020/lib/n7-boilerplate-muruca.module.mjs +0 -160
  244. package/esm2020/lib/services/footer.service.mjs +0 -51
  245. package/esm2020/lib/services/locale.service.mjs +0 -67
  246. package/esm2020/lib/services/menu.service.mjs +0 -106
  247. package/esm2020/lib/services/search.service.mjs +0 -505
  248. package/esm2020/lib/services/translations-loader.service.mjs +0 -48
  249. package/fesm2015/net7-boilerplate-muruca.mjs +0 -7425
  250. package/fesm2015/net7-boilerplate-muruca.mjs.map +0 -1
  251. package/fesm2020/net7-boilerplate-muruca.mjs.map +0 -1
  252. /package/{esm2020 → esm2022}/lib/components/index.mjs +0 -0
  253. /package/{esm2020 → esm2022}/lib/config-types/index.mjs +0 -0
  254. /package/{esm2020 → esm2022}/lib/config-types/muruca/advanced-search.mjs +0 -0
  255. /package/{esm2020 → esm2022}/lib/config-types/muruca/index.mjs +0 -0
  256. /package/{esm2020 → esm2022}/lib/config-types/muruca/layouts.mjs +0 -0
  257. /package/{esm2020 → esm2022}/lib/config-types/muruca/sections.mjs +0 -0
  258. /package/{esm2020 → esm2022}/lib/data-sources/content.ds.mjs +0 -0
  259. /package/{esm2020 → esm2022}/lib/data-sources/facets/facet-datasource.mjs +0 -0
  260. /package/{esm2020 → esm2022}/lib/data-sources/filters.ds.mjs +0 -0
  261. /package/{esm2020 → esm2022}/lib/data-sources/form/input-select.ds.mjs +0 -0
  262. /package/{esm2020 → esm2022}/lib/data-sources/image-viewer-overlay-details.ds.mjs +0 -0
  263. /package/{esm2020 → esm2022}/lib/data-sources/index.mjs +0 -0
  264. /package/{esm2020 → esm2022}/lib/data-sources/info-box.ds.mjs +0 -0
  265. /package/{esm2020 → esm2022}/lib/data-sources/inner-title.ds.mjs +0 -0
  266. /package/{esm2020 → esm2022}/lib/data-sources/item-previews.ds.mjs +0 -0
  267. /package/{esm2020 → esm2022}/lib/data-sources/nav.ds.mjs +0 -0
  268. /package/{esm2020 → esm2022}/lib/data-sources/search/advanced-search-tags.ds.mjs +0 -0
  269. /package/{esm2020 → esm2022}/lib/data-sources/slider.ds.mjs +0 -0
  270. /package/{esm2020 → esm2022}/lib/data-sources/static-metadata.ds.mjs +0 -0
  271. /package/{esm2020 → esm2022}/lib/data-sources/year-header.ds.mjs +0 -0
  272. /package/{esm2020 → esm2022}/lib/event-handlers/dummy.eh.mjs +0 -0
  273. /package/{esm2020 → esm2022}/lib/event-handlers/filters.eh.mjs +0 -0
  274. /package/{esm2020 → esm2022}/lib/event-handlers/hero.eh.mjs +0 -0
  275. /package/{esm2020 → esm2022}/lib/event-handlers/index.mjs +0 -0
  276. /package/{esm2020 → esm2022}/lib/event-handlers/slider.eh.mjs +0 -0
  277. /package/{esm2020 → esm2022}/lib/event-handlers/timeline.eh.mjs +0 -0
  278. /package/{esm2020 → esm2022}/lib/guards/index.mjs +0 -0
  279. /package/{esm2020 → esm2022}/lib/helpers/date-helper.mjs +0 -0
  280. /package/{esm2020 → esm2022}/lib/helpers/map-helper.mjs +0 -0
  281. /package/{esm2020 → esm2022}/lib/interfaces/form.interface.mjs +0 -0
  282. /package/{esm2020 → esm2022}/lib/interfaces/index.mjs +0 -0
  283. /package/{esm2020 → esm2022}/lib/interfaces/metadata.interface.mjs +0 -0
  284. /package/{esm2020 → esm2022}/lib/interfaces/search.interface.mjs +0 -0
  285. /package/{esm2020 → esm2022}/lib/layouts/advanced-results-layout/advanced-results-layout.config.mjs +0 -0
  286. /package/{esm2020 → esm2022}/lib/layouts/advanced-search-layout/advanced-search-layout.config.mjs +0 -0
  287. /package/{esm2020 → esm2022}/lib/layouts/home-layout/home-layout.config.mjs +0 -0
  288. /package/{esm2020 → esm2022}/lib/layouts/index.mjs +0 -0
  289. /package/{esm2020 → esm2022}/lib/layouts/itinerary-layout/itinerary-layout.config.mjs +0 -0
  290. /package/{esm2020 → esm2022}/lib/layouts/map-layout/map-layout.config.mjs +0 -0
  291. /package/{esm2020 → esm2022}/lib/layouts/map-layout/map-layout.types.mjs +0 -0
  292. /package/{esm2020 → esm2022}/lib/layouts/posts-layout/posts-layout.config.mjs +0 -0
  293. /package/{esm2020 → esm2022}/lib/layouts/resource-layout/resource-layout.config.mjs +0 -0
  294. /package/{esm2020 → esm2022}/lib/layouts/search-facets-layout/search-facets-layout.config.mjs +0 -0
  295. /package/{esm2020 → esm2022}/lib/layouts/search-layout/search-layout.config.mjs +0 -0
  296. /package/{esm2020 → esm2022}/lib/layouts/static-layout/static-layout.config.mjs +0 -0
  297. /package/{esm2020 → esm2022}/lib/layouts/timeline-layout/timeline-layout.config.mjs +0 -0
  298. /package/{esm2020 → esm2022}/lib/layouts/timeline-layout/timeline-layout.types.mjs +0 -0
  299. /package/{esm2020 → esm2022}/lib/services/index.mjs +0 -0
  300. /package/{esm2020 → esm2022}/net7-boilerplate-muruca.mjs +0 -0
  301. /package/{esm2020 → esm2022}/public-api.mjs +0 -0
@@ -0,0 +1,42 @@
1
+ import { Component, Input } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "@angular/common";
4
+ import * as i2 from "@net7/components";
5
+ export class MrAdvancedResultComponent {
6
+ constructor() {
7
+ /** Returns true if there are some highlights to render */
8
+ this.hasHighlights = () => this.data
9
+ ?.highlights
10
+ // there is at least one group that has highlights
11
+ ?.some((d) => d.items.length > 0);
12
+ }
13
+ isHidden() {
14
+ if (this.data.highlightsHasToggle) {
15
+ if (!this.data.highlightsTitle)
16
+ return false;
17
+ return this.data.highlightsHidden;
18
+ }
19
+ return false;
20
+ }
21
+ onClick(payload) {
22
+ if (!this.emit)
23
+ return;
24
+ this.emit('click', payload);
25
+ }
26
+ onHeaderClick(data) {
27
+ if (!data.highlightsHasToggle)
28
+ return;
29
+ data.highlightsHidden = !data.highlightsHidden;
30
+ }
31
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: MrAdvancedResultComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
32
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.11", type: MrAdvancedResultComponent, selector: "mr-advanced-result", inputs: { data: "data", emit: "emit" }, ngImport: i0, template: "<div *ngIf=\"data\"\n class=\"mr-advanced-result\">\n <!-- RESULT MAIN CONTENT -->\n <n7-item-preview [data]=\"data\"></n7-item-preview>\n <!-- RESULT HIGHLIGHTS SECTION -->\n <ng-container *ngIf=\"hasHighlights()\">\n <div *ngIf=\"data?.highlightsTitle\" class=\"mr-advanced-result__header\"\n [ngClass]=\"{\n 'has-toggle': !!data.highlightsHasToggle\n }\"\n (click)=\"onHeaderClick(data)\">\n <span class=\"mr-advanced-result__header-label\">\n {{ data.highlightsTitle }}\n </span>\n <span class=\"mr-advanced-result__header-icon\"\n [ngClass]=\"{\n 'n7-icon-angle-down': data.highlightsHidden,\n 'n7-icon-angle-up': !data.highlightsHidden\n }\">\n </span>\n </div>\n <div [hidden]=\"isHidden()\" \n class=\"mr-advanced-result__content\"\n *ngFor=\"let highlightGroup of data.highlights\">\n <div class=\"mr-advanced-result__content-group\">\n <!-- METADATA ITEM -->\n <div class=\"mr-advanced-result__item {{ item.classes || '' }}\"\n *ngFor=\"let item of highlightGroup.items\">\n <!-- ICON -->\n <span class=\"mr-advanced-result__icon {{item.icon}}\"\n *ngIf=\"item.icon\">\n </span>\n <!-- LABEL -->\n <span class=\"mr-advanced-result__label\"\n *ngIf=\"item.label\"\n [innerHTML]=\"item.label\">\n </span>\n <!-- VALUE W/ HREF -->\n <a *ngIf=\"item.href\"\n [href]=\"item.href\"\n [target]=\"item.target\"\n >\n <span class=\"mr-advanced-result__value\"\n *ngIf=\"item.value\"\n [innerHTML]=\"item.value\">\n </span>\n </a>\n <!-- VALUE W/OUT HREF -->\n <span class=\"mr-advanced-result__value\"\n *ngIf=\"item.value && !item.href\"\n [innerHTML]=\"item.value\">\n </span>\n </div>\n </div>\n </div>\n </ng-container>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.ItemPreviewComponent, selector: "n7-item-preview", inputs: ["data", "emit"] }] }); }
33
+ }
34
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: MrAdvancedResultComponent, decorators: [{
35
+ type: Component,
36
+ args: [{ selector: 'mr-advanced-result', template: "<div *ngIf=\"data\"\n class=\"mr-advanced-result\">\n <!-- RESULT MAIN CONTENT -->\n <n7-item-preview [data]=\"data\"></n7-item-preview>\n <!-- RESULT HIGHLIGHTS SECTION -->\n <ng-container *ngIf=\"hasHighlights()\">\n <div *ngIf=\"data?.highlightsTitle\" class=\"mr-advanced-result__header\"\n [ngClass]=\"{\n 'has-toggle': !!data.highlightsHasToggle\n }\"\n (click)=\"onHeaderClick(data)\">\n <span class=\"mr-advanced-result__header-label\">\n {{ data.highlightsTitle }}\n </span>\n <span class=\"mr-advanced-result__header-icon\"\n [ngClass]=\"{\n 'n7-icon-angle-down': data.highlightsHidden,\n 'n7-icon-angle-up': !data.highlightsHidden\n }\">\n </span>\n </div>\n <div [hidden]=\"isHidden()\" \n class=\"mr-advanced-result__content\"\n *ngFor=\"let highlightGroup of data.highlights\">\n <div class=\"mr-advanced-result__content-group\">\n <!-- METADATA ITEM -->\n <div class=\"mr-advanced-result__item {{ item.classes || '' }}\"\n *ngFor=\"let item of highlightGroup.items\">\n <!-- ICON -->\n <span class=\"mr-advanced-result__icon {{item.icon}}\"\n *ngIf=\"item.icon\">\n </span>\n <!-- LABEL -->\n <span class=\"mr-advanced-result__label\"\n *ngIf=\"item.label\"\n [innerHTML]=\"item.label\">\n </span>\n <!-- VALUE W/ HREF -->\n <a *ngIf=\"item.href\"\n [href]=\"item.href\"\n [target]=\"item.target\"\n >\n <span class=\"mr-advanced-result__value\"\n *ngIf=\"item.value\"\n [innerHTML]=\"item.value\">\n </span>\n </a>\n <!-- VALUE W/OUT HREF -->\n <span class=\"mr-advanced-result__value\"\n *ngIf=\"item.value && !item.href\"\n [innerHTML]=\"item.value\">\n </span>\n </div>\n </div>\n </div>\n </ng-container>\n</div>\n" }]
37
+ }], propDecorators: { data: [{
38
+ type: Input
39
+ }], emit: [{
40
+ type: Input
41
+ }] } });
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWR2YW5jZWQtcmVzdWx0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbjctYm9pbGVycGxhdGUtbXVydWNhL3NyYy9saWIvY29tcG9uZW50cy9hZHZhbmNlZC1yZXN1bHQvYWR2YW5jZWQtcmVzdWx0LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbjctYm9pbGVycGxhdGUtbXVydWNhL3NyYy9saWIvY29tcG9uZW50cy9hZHZhbmNlZC1yZXN1bHQvYWR2YW5jZWQtcmVzdWx0Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7QUEyQmpELE1BQU0sT0FBTyx5QkFBeUI7SUFKdEM7UUFTRSwwREFBMEQ7UUFDMUQsa0JBQWEsR0FBRyxHQUFZLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSTtZQUN0QyxFQUFFLFVBQVU7WUFDWixrREFBa0Q7WUFDbEQsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDO0tBbUJyQztJQWpCQyxRQUFRO1FBQ04sSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7WUFDbEMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsZUFBZTtnQkFBRSxPQUFPLEtBQUssQ0FBQztZQUM3QyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7UUFDcEMsQ0FBQztRQUNELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUVELE9BQU8sQ0FBQyxPQUFPO1FBQ2IsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJO1lBQUUsT0FBTztRQUN2QixJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQztJQUM5QixDQUFDO0lBRUQsYUFBYSxDQUFDLElBQUk7UUFDaEIsSUFBSSxDQUFDLElBQUksQ0FBQyxtQkFBbUI7WUFBRSxPQUFPO1FBQ3RDLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQztJQUNqRCxDQUFDOytHQTNCVSx5QkFBeUI7bUdBQXpCLHlCQUF5QixrR0MzQnRDLCszRUF5REE7OzRGRDlCYSx5QkFBeUI7a0JBSnJDLFNBQVM7K0JBQ0Usb0JBQW9COzhCQUlyQixJQUFJO3NCQUFaLEtBQUs7Z0JBRUcsSUFBSTtzQkFBWixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSXRlbVByZXZpZXdEYXRhLCBNZXRhZGF0YURhdGEgfSBmcm9tICdAbmV0Ny9jb21wb25lbnRzJztcblxuLyoqXG4gKiBBIGh5cGVybGlua2VkIG1ldGFkYXRhIGl0ZW1cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBMaW5rZWRNZXRhZGF0YURhdGEgZXh0ZW5kcyBNZXRhZGF0YURhdGEge1xuICAvKiogaHJlZiB0byB1c2Ugb24gdGhlIGh0bWwgZWxlbWVudCAqL1xuICBocmVmOiBzdHJpbmc7XG4gIC8qKiBsaXN0IG9mIGhpZ2hsaWdodHMgKi9cbiAgaXRlbXM6IHN0cmluZ1tdO1xufVxuXG4vKipcbiAqIERhdGEgZm9yIE11cnVjYSdzIEFkdmFuY2VkUmVzdWx0IGNvbXBvbmVudC5cbiAqL1xuaW50ZXJmYWNlIEFkdmFuY2VkUmVzdWx0c0RhdGEgZXh0ZW5kcyBJdGVtUHJldmlld0RhdGEge1xuICBoaWdobGlnaHRzOiBMaW5rZWRNZXRhZGF0YURhdGFbXTtcbiAgaGlnaGxpZ2h0c1RpdGxlPzogc3RyaW5nO1xuICBoaWdobGlnaHRzSGlkZGVuPzogYm9vbGVhbjtcbiAgaGlnaGxpZ2h0c0hhc1RvZ2dsZT86IGJvb2xlYW47XG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ21yLWFkdmFuY2VkLXJlc3VsdCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9hZHZhbmNlZC1yZXN1bHQuaHRtbCcsXG59KVxuZXhwb3J0IGNsYXNzIE1yQWR2YW5jZWRSZXN1bHRDb21wb25lbnQge1xuICBASW5wdXQoKSBkYXRhOiBBZHZhbmNlZFJlc3VsdHNEYXRhO1xuXG4gIEBJbnB1dCgpIGVtaXQ6IGFueTtcblxuICAvKiogUmV0dXJucyB0cnVlIGlmIHRoZXJlIGFyZSBzb21lIGhpZ2hsaWdodHMgdG8gcmVuZGVyICovXG4gIGhhc0hpZ2hsaWdodHMgPSAoKTogYm9vbGVhbiA9PiB0aGlzLmRhdGFcbiAgICA/LmhpZ2hsaWdodHNcbiAgICAvLyB0aGVyZSBpcyBhdCBsZWFzdCBvbmUgZ3JvdXAgdGhhdCBoYXMgaGlnaGxpZ2h0c1xuICAgID8uc29tZSgoZCkgPT4gZC5pdGVtcy5sZW5ndGggPiAwKTtcblxuICBpc0hpZGRlbigpIHtcbiAgICBpZiAodGhpcy5kYXRhLmhpZ2hsaWdodHNIYXNUb2dnbGUpIHtcbiAgICAgIGlmICghdGhpcy5kYXRhLmhpZ2hsaWdodHNUaXRsZSkgcmV0dXJuIGZhbHNlO1xuICAgICAgcmV0dXJuIHRoaXMuZGF0YS5oaWdobGlnaHRzSGlkZGVuO1xuICAgIH1cbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBvbkNsaWNrKHBheWxvYWQpIHtcbiAgICBpZiAoIXRoaXMuZW1pdCkgcmV0dXJuO1xuICAgIHRoaXMuZW1pdCgnY2xpY2snLCBwYXlsb2FkKTtcbiAgfVxuXG4gIG9uSGVhZGVyQ2xpY2soZGF0YSkge1xuICAgIGlmICghZGF0YS5oaWdobGlnaHRzSGFzVG9nZ2xlKSByZXR1cm47XG4gICAgZGF0YS5oaWdobGlnaHRzSGlkZGVuID0gIWRhdGEuaGlnaGxpZ2h0c0hpZGRlbjtcbiAgfVxufVxuIiwiPGRpdiAqbmdJZj1cImRhdGFcIlxuICAgICBjbGFzcz1cIm1yLWFkdmFuY2VkLXJlc3VsdFwiPlxuICAgICA8IS0tIFJFU1VMVCBNQUlOIENPTlRFTlQgLS0+XG4gICAgPG43LWl0ZW0tcHJldmlldyBbZGF0YV09XCJkYXRhXCI+PC9uNy1pdGVtLXByZXZpZXc+XG4gICAgPCEtLSBSRVNVTFQgSElHSExJR0hUUyBTRUNUSU9OIC0tPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJoYXNIaWdobGlnaHRzKClcIj5cbiAgICAgICAgPGRpdiAqbmdJZj1cImRhdGE/LmhpZ2hsaWdodHNUaXRsZVwiIGNsYXNzPVwibXItYWR2YW5jZWQtcmVzdWx0X19oZWFkZXJcIlxuICAgICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICAgICAnaGFzLXRvZ2dsZSc6ICEhZGF0YS5oaWdobGlnaHRzSGFzVG9nZ2xlXG4gICAgICAgIH1cIlxuICAgICAgICAoY2xpY2spPVwib25IZWFkZXJDbGljayhkYXRhKVwiPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtci1hZHZhbmNlZC1yZXN1bHRfX2hlYWRlci1sYWJlbFwiPlxuICAgICAgICAgICAgICAgIHt7IGRhdGEuaGlnaGxpZ2h0c1RpdGxlIH19XG4gICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1yLWFkdmFuY2VkLXJlc3VsdF9faGVhZGVyLWljb25cIlxuICAgICAgICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAgICAgICAgICduNy1pY29uLWFuZ2xlLWRvd24nOiBkYXRhLmhpZ2hsaWdodHNIaWRkZW4sXG4gICAgICAgICAgICAgICAgJ243LWljb24tYW5nbGUtdXAnOiAhZGF0YS5oaWdobGlnaHRzSGlkZGVuXG4gICAgICAgICAgICB9XCI+XG4gICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IFtoaWRkZW5dPVwiaXNIaWRkZW4oKVwiIFxuICAgICAgICBjbGFzcz1cIm1yLWFkdmFuY2VkLXJlc3VsdF9fY29udGVudFwiXG4gICAgICAgICAgICAqbmdGb3I9XCJsZXQgaGlnaGxpZ2h0R3JvdXAgb2YgZGF0YS5oaWdobGlnaHRzXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXItYWR2YW5jZWQtcmVzdWx0X19jb250ZW50LWdyb3VwXCI+XG4gICAgICAgICAgICAgICAgPCEtLSBNRVRBREFUQSBJVEVNIC0tPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtci1hZHZhbmNlZC1yZXN1bHRfX2l0ZW0ge3sgaXRlbS5jbGFzc2VzIHx8ICcnIH19XCJcbiAgICAgICAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IGl0ZW0gb2YgaGlnaGxpZ2h0R3JvdXAuaXRlbXNcIj5cbiAgICAgICAgICAgICAgICAgICAgPCEtLSBJQ09OIC0tPlxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1yLWFkdmFuY2VkLXJlc3VsdF9faWNvbiB7e2l0ZW0uaWNvbn19XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiaXRlbS5pY29uXCI+XG4gICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgPCEtLSBMQUJFTCAtLT5cbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtci1hZHZhbmNlZC1yZXN1bHRfX2xhYmVsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiaXRlbS5sYWJlbFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbaW5uZXJIVE1MXT1cIml0ZW0ubGFiZWxcIj5cbiAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICA8IS0tIFZBTFVFIFcvIEhSRUYgLS0+XG4gICAgICAgICAgICAgICAgICAgIDxhICpuZ0lmPVwiaXRlbS5ocmVmXCJcbiAgICAgICAgICAgICAgICAgICAgW2hyZWZdPVwiaXRlbS5ocmVmXCJcbiAgICAgICAgICAgICAgICAgICAgW3RhcmdldF09XCJpdGVtLnRhcmdldFwiXG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibXItYWR2YW5jZWQtcmVzdWx0X192YWx1ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJpdGVtLnZhbHVlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaW5uZXJIVE1MXT1cIml0ZW0udmFsdWVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgICAgICAgICA8IS0tIFZBTFVFIFcvT1VUIEhSRUYgLS0+XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibXItYWR2YW5jZWQtcmVzdWx0X192YWx1ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cIml0ZW0udmFsdWUgJiYgIWl0ZW0uaHJlZlwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbaW5uZXJIVE1MXT1cIml0ZW0udmFsdWVcIj5cbiAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvbmctY29udGFpbmVyPlxuPC9kaXY+XG4iXX0=
@@ -0,0 +1,36 @@
1
+ import { Component, ContentChild, Input, TemplateRef } from '@angular/core';
2
+ import { _t } from '@net7/core';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/common";
5
+ import * as i2 from "@net7/components";
6
+ export class MrFormComponent {
7
+ ngOnInit() {
8
+ if (this.group) {
9
+ this.sections = this.form.config.sections
10
+ .filter(({ id }) => this.group.sections.includes(id));
11
+ }
12
+ else {
13
+ this.sections = this.form.config.sections;
14
+ }
15
+ // translations
16
+ this.sections = this.sections.map((section) => ({
17
+ ...section,
18
+ title: _t(section.title),
19
+ description: _t(section.description)
20
+ }));
21
+ }
22
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: MrFormComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
23
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.11", type: MrFormComponent, selector: "mr-form", inputs: { form: "form", group: "group" }, queries: [{ propertyName: "templateRef", first: true, predicate: TemplateRef, descendants: true }], ngImport: i0, template: "<div *ngIf=\"form.loaded$ | async\" class=\"mr-form {{ group?.classes || '' }}\">\n <div *ngFor=\"let section of sections\" class=\"mr-form__section {{ section.classes || '' }}\" \n [ngClass]=\"{ 'mr-form__section-advanced' : section.advancedSection }\" >\n \n <div class=\"mr-form__section-header\">\n <h3 *ngIf=\"section.title\" class=\"mr-form__section-title\">{{ section.title }}</h3>\n <p *ngIf=\"section.description\" class=\"mr-form__section-description\">{{ section.description }}</p>\n </div>\n \n <div class=\"mr-form__section-content\">\n <div *ngFor=\"let input of section.inputs\" class=\"mr-form__element {{ input.options?.classes || '' }}\">\n <ng-container [ngSwitch]=\"input.type\">\n\n <!-- INPUT TEXT -->\n <n7-input-text *ngSwitchCase=\"'text'\" \n [data]=\"form.inputs[input.id].ds.out$ | async\"\n [emit]=\"form.inputs[input.id].emit\"></n7-input-text>\n\n <!-- INPUT CHECKBOX -->\n <n7-input-checkbox *ngSwitchCase=\"'checkbox'\" \n [data]=\"form.inputs[input.id].ds.out$ | async\"\n [emit]=\"form.inputs[input.id].emit\"></n7-input-checkbox>\n\n <!-- INPUT SELECT -->\n <n7-input-select *ngSwitchCase=\"'select'\" \n [data]=\"form.inputs[input.id].ds.out$ | async\"\n [emit]=\"form.inputs[input.id].emit\"></n7-input-select>\n\n <!-- DEFAULT (external template) -->\n <ng-container *ngSwitchDefault>\n <ng-template *ngTemplateOutlet=\"\n templateRef; \n context: { \n type: input.type, \n input: form.inputs[input.id] \n }\"></ng-template>\n </ng-container>\n\n </ng-container>\n </div>\n </div>\n </div>\n</div>", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i1.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "component", type: i2.InputCheckboxComponent, selector: "n7-input-checkbox", inputs: ["data", "emit"] }, { kind: "component", type: i2.InputSelectComponent, selector: "n7-input-select", inputs: ["data", "emit"] }, { kind: "component", type: i2.InputTextComponent, selector: "n7-input-text", inputs: ["data", "emit"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }] }); }
24
+ }
25
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: MrFormComponent, decorators: [{
26
+ type: Component,
27
+ args: [{ selector: 'mr-form', template: "<div *ngIf=\"form.loaded$ | async\" class=\"mr-form {{ group?.classes || '' }}\">\n <div *ngFor=\"let section of sections\" class=\"mr-form__section {{ section.classes || '' }}\" \n [ngClass]=\"{ 'mr-form__section-advanced' : section.advancedSection }\" >\n \n <div class=\"mr-form__section-header\">\n <h3 *ngIf=\"section.title\" class=\"mr-form__section-title\">{{ section.title }}</h3>\n <p *ngIf=\"section.description\" class=\"mr-form__section-description\">{{ section.description }}</p>\n </div>\n \n <div class=\"mr-form__section-content\">\n <div *ngFor=\"let input of section.inputs\" class=\"mr-form__element {{ input.options?.classes || '' }}\">\n <ng-container [ngSwitch]=\"input.type\">\n\n <!-- INPUT TEXT -->\n <n7-input-text *ngSwitchCase=\"'text'\" \n [data]=\"form.inputs[input.id].ds.out$ | async\"\n [emit]=\"form.inputs[input.id].emit\"></n7-input-text>\n\n <!-- INPUT CHECKBOX -->\n <n7-input-checkbox *ngSwitchCase=\"'checkbox'\" \n [data]=\"form.inputs[input.id].ds.out$ | async\"\n [emit]=\"form.inputs[input.id].emit\"></n7-input-checkbox>\n\n <!-- INPUT SELECT -->\n <n7-input-select *ngSwitchCase=\"'select'\" \n [data]=\"form.inputs[input.id].ds.out$ | async\"\n [emit]=\"form.inputs[input.id].emit\"></n7-input-select>\n\n <!-- DEFAULT (external template) -->\n <ng-container *ngSwitchDefault>\n <ng-template *ngTemplateOutlet=\"\n templateRef; \n context: { \n type: input.type, \n input: form.inputs[input.id] \n }\"></ng-template>\n </ng-container>\n\n </ng-container>\n </div>\n </div>\n </div>\n</div>" }]
28
+ }], propDecorators: { form: [{
29
+ type: Input
30
+ }], group: [{
31
+ type: Input
32
+ }], templateRef: [{
33
+ type: ContentChild,
34
+ args: [TemplateRef]
35
+ }] } });
36
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL243LWJvaWxlcnBsYXRlLW11cnVjYS9zcmMvbGliL2NvbXBvbmVudHMvZm9ybS9mb3JtLnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbjctYm9pbGVycGxhdGUtbXVydWNhL3NyYy9saWIvY29tcG9uZW50cy9mb3JtL2Zvcm0uaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsV0FBVyxFQUNwRCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sWUFBWSxDQUFDOzs7O0FBUWhDLE1BQU0sT0FBTyxlQUFlO0lBVTFCLFFBQVE7UUFDTixJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNmLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUTtpQkFDdEMsTUFBTSxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDMUQsQ0FBQzthQUFNLENBQUM7WUFDTixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQztRQUM1QyxDQUFDO1FBRUQsZUFBZTtRQUNmLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDOUMsR0FBRyxPQUFPO1lBQ1YsS0FBSyxFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDO1lBQ3hCLFdBQVcsRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQztTQUNyQyxDQUFDLENBQUMsQ0FBQztJQUNOLENBQUM7K0dBeEJVLGVBQWU7bUdBQWYsZUFBZSxrSUFLWixXQUFXLGdEQ2hCM0IsNGtFQTBDTTs7NEZEL0JPLGVBQWU7a0JBSjNCLFNBQVM7K0JBQ0UsU0FBUzs4QkFJVixJQUFJO3NCQUFaLEtBQUs7Z0JBRUcsS0FBSztzQkFBYixLQUFLO2dCQUdDLFdBQVc7c0JBRGpCLFlBQVk7dUJBQUMsV0FBVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCwgQ29udGVudENoaWxkLCBJbnB1dCwgT25Jbml0LCBUZW1wbGF0ZVJlZlxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IF90IH0gZnJvbSAnQG5ldDcvY29yZSc7XG5pbXBvcnQgeyBNckZvcm1Db25maWdHcm91cCwgTXJGb3JtQ29uZmlnU2VjdGlvbiB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvZm9ybS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgTXJGb3JtTW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbHMvZm9ybS5tb2RlbCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ21yLWZvcm0nLFxuICB0ZW1wbGF0ZVVybDogJy4vZm9ybS5odG1sJyxcbn0pXG5leHBvcnQgY2xhc3MgTXJGb3JtQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgQElucHV0KCkgZm9ybTogTXJGb3JtTW9kZWw7XG5cbiAgQElucHV0KCkgZ3JvdXA/OiBNckZvcm1Db25maWdHcm91cDtcblxuICBAQ29udGVudENoaWxkKFRlbXBsYXRlUmVmKVxuICBwdWJsaWMgdGVtcGxhdGVSZWY6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgcHVibGljIHNlY3Rpb25zOiBNckZvcm1Db25maWdTZWN0aW9uW107XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgaWYgKHRoaXMuZ3JvdXApIHtcbiAgICAgIHRoaXMuc2VjdGlvbnMgPSB0aGlzLmZvcm0uY29uZmlnLnNlY3Rpb25zXG4gICAgICAgIC5maWx0ZXIoKHsgaWQgfSkgPT4gdGhpcy5ncm91cC5zZWN0aW9ucy5pbmNsdWRlcyhpZCkpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnNlY3Rpb25zID0gdGhpcy5mb3JtLmNvbmZpZy5zZWN0aW9ucztcbiAgICB9XG5cbiAgICAvLyB0cmFuc2xhdGlvbnNcbiAgICB0aGlzLnNlY3Rpb25zID0gdGhpcy5zZWN0aW9ucy5tYXAoKHNlY3Rpb24pID0+ICh7XG4gICAgICAuLi5zZWN0aW9uLFxuICAgICAgdGl0bGU6IF90KHNlY3Rpb24udGl0bGUpLFxuICAgICAgZGVzY3JpcHRpb246IF90KHNlY3Rpb24uZGVzY3JpcHRpb24pXG4gICAgfSkpO1xuICB9XG59XG4iLCI8ZGl2ICpuZ0lmPVwiZm9ybS5sb2FkZWQkIHwgYXN5bmNcIiBjbGFzcz1cIm1yLWZvcm0ge3sgZ3JvdXA/LmNsYXNzZXMgfHwgJycgfX1cIj5cbiAgICA8ZGl2ICpuZ0Zvcj1cImxldCBzZWN0aW9uIG9mIHNlY3Rpb25zXCIgY2xhc3M9XCJtci1mb3JtX19zZWN0aW9uIHt7IHNlY3Rpb24uY2xhc3NlcyB8fCAnJyB9fVwiIFxuICAgICAgICAgW25nQ2xhc3NdPVwieyAnbXItZm9ybV9fc2VjdGlvbi1hZHZhbmNlZCcgOiBzZWN0aW9uLmFkdmFuY2VkU2VjdGlvbiAgfVwiID5cbiAgICAgICAgXG4gICAgICAgIDxkaXYgY2xhc3M9XCJtci1mb3JtX19zZWN0aW9uLWhlYWRlclwiPlxuICAgICAgICAgICAgPGgzICpuZ0lmPVwic2VjdGlvbi50aXRsZVwiIGNsYXNzPVwibXItZm9ybV9fc2VjdGlvbi10aXRsZVwiPnt7IHNlY3Rpb24udGl0bGUgfX08L2gzPlxuICAgICAgICAgICAgPHAgKm5nSWY9XCJzZWN0aW9uLmRlc2NyaXB0aW9uXCIgY2xhc3M9XCJtci1mb3JtX19zZWN0aW9uLWRlc2NyaXB0aW9uXCI+e3sgc2VjdGlvbi5kZXNjcmlwdGlvbiB9fTwvcD5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIFxuICAgICAgICA8ZGl2IGNsYXNzPVwibXItZm9ybV9fc2VjdGlvbi1jb250ZW50XCI+XG4gICAgICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCBpbnB1dCBvZiBzZWN0aW9uLmlucHV0c1wiIGNsYXNzPVwibXItZm9ybV9fZWxlbWVudCB7eyBpbnB1dC5vcHRpb25zPy5jbGFzc2VzIHx8ICcnIH19XCI+XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBbbmdTd2l0Y2hdPVwiaW5wdXQudHlwZVwiPlxuXG4gICAgICAgICAgICAgICAgICAgIDwhLS0gSU5QVVQgVEVYVCAtLT5cbiAgICAgICAgICAgICAgICAgICAgPG43LWlucHV0LXRleHQgKm5nU3dpdGNoQ2FzZT1cIid0ZXh0J1wiIFxuICAgICAgICAgICAgICAgICAgICAgICAgW2RhdGFdPVwiZm9ybS5pbnB1dHNbaW5wdXQuaWRdLmRzLm91dCQgfCBhc3luY1wiXG4gICAgICAgICAgICAgICAgICAgICAgICBbZW1pdF09XCJmb3JtLmlucHV0c1tpbnB1dC5pZF0uZW1pdFwiPjwvbjctaW5wdXQtdGV4dD5cblxuICAgICAgICAgICAgICAgICAgICA8IS0tIElOUFVUIENIRUNLQk9YIC0tPlxuICAgICAgICAgICAgICAgICAgICA8bjctaW5wdXQtY2hlY2tib3ggKm5nU3dpdGNoQ2FzZT1cIidjaGVja2JveCdcIiBcbiAgICAgICAgICAgICAgICAgICAgICAgIFtkYXRhXT1cImZvcm0uaW5wdXRzW2lucHV0LmlkXS5kcy5vdXQkIHwgYXN5bmNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2VtaXRdPVwiZm9ybS5pbnB1dHNbaW5wdXQuaWRdLmVtaXRcIj48L243LWlucHV0LWNoZWNrYm94PlxuXG4gICAgICAgICAgICAgICAgICAgIDwhLS0gSU5QVVQgU0VMRUNUIC0tPlxuICAgICAgICAgICAgICAgICAgICA8bjctaW5wdXQtc2VsZWN0ICpuZ1N3aXRjaENhc2U9XCInc2VsZWN0J1wiIFxuICAgICAgICAgICAgICAgICAgICAgICAgW2RhdGFdPVwiZm9ybS5pbnB1dHNbaW5wdXQuaWRdLmRzLm91dCQgfCBhc3luY1wiXG4gICAgICAgICAgICAgICAgICAgICAgICBbZW1pdF09XCJmb3JtLmlucHV0c1tpbnB1dC5pZF0uZW1pdFwiPjwvbjctaW5wdXQtc2VsZWN0PlxuXG4gICAgICAgICAgICAgICAgICAgIDwhLS0gREVGQVVMVCAoZXh0ZXJuYWwgdGVtcGxhdGUpIC0tPlxuICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaERlZmF1bHQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgKm5nVGVtcGxhdGVPdXRsZXQ9XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRlbXBsYXRlUmVmOyBcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRleHQ6IHsgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogaW5wdXQudHlwZSwgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5wdXQ6IGZvcm0uaW5wdXRzW2lucHV0LmlkXSBcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cIj48L25nLXRlbXBsYXRlPlxuICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuPC9kaXY+Il19
@@ -0,0 +1,38 @@
1
+ import { Component, Input } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "@angular/common";
4
+ import * as i2 from "@net7/components";
5
+ import * as i3 from "../form/form";
6
+ export class MrFormWrapperAccordionComponent {
7
+ constructor() {
8
+ this.fakeEmit = (type, payload) => {
9
+ if (!this.emit) {
10
+ return;
11
+ }
12
+ this.emit(type, payload);
13
+ };
14
+ }
15
+ ngOnInit() {
16
+ this.fakeEmit('init');
17
+ }
18
+ ngOnDestroy() {
19
+ this.fakeEmit('destroy');
20
+ }
21
+ onReset() {
22
+ this.fakeEmit('reset');
23
+ }
24
+ onSubmit() {
25
+ this.fakeEmit('submit');
26
+ }
27
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: MrFormWrapperAccordionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
28
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.11", type: MrFormWrapperAccordionComponent, selector: "mr-form-wrapper-accordion", inputs: { data: "data", emit: "emit" }, ngImport: i0, template: "<div *ngIf=\"data\" class=\"mr-form-wrapper-accordion\">\n <ng-container *ngFor=\"let group of data.form.config.groups; index as $i\">\n <div *ngIf=\"group.options && (group.options.showHeader !== false)\" \n class=\"mr-form-wrapper-accordion__header\">\n <n7-facet-header\n [data]=\"group.options\"\n [emit]=\"fakeEmit\"\n ></n7-facet-header>\n </div>\n\n <div *ngIf=\"group.options.isOpen\" class=\"mr-form-wrapper-accordion__content\" [attr.id]=\"group.id\">\n <mr-form [form]=\"data.form\" [group]=\"group\">\n <!-- CUSTOM INPUTS -->\n <!-- <ng-template let-type=\"type\" let-input=\"input\">\n <ng-container [ngSwitch]=\"type\">\n \n <n7-tag *ngSwitchCase=\"'tag'\" \n [data]=\"input.ds.out$ | async\"\n [emit]=\"input.emit\"></n7-tag>\n \n </ng-container>\n </ng-template> -->\n </mr-form>\n </div>\n </ng-container>\n \n <div class=\"mr-form-wrapper-accordion__actions\">\n <a *ngIf=\"data.form.config.resetButton\" \n class=\"n7-btn n7-btn-xl n7-btn-danger\" \n (click)=\"onReset()\">{{ data.form.config.resetButton.label }}</a>\n <a *ngIf=\"data.form.config.submitButton\" \n class=\"n7-btn n7-btn-cta n7-btn-xl n7-btn-info\" \n (click)=\"onSubmit()\">{{ data.form.config.submitButton.label }}</a>\n </div>\n</div>", dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.FacetHeaderComponent, selector: "n7-facet-header", inputs: ["data", "emit"] }, { kind: "component", type: i3.MrFormComponent, selector: "mr-form", inputs: ["form", "group"] }] }); }
29
+ }
30
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: MrFormWrapperAccordionComponent, decorators: [{
31
+ type: Component,
32
+ args: [{ selector: 'mr-form-wrapper-accordion', template: "<div *ngIf=\"data\" class=\"mr-form-wrapper-accordion\">\n <ng-container *ngFor=\"let group of data.form.config.groups; index as $i\">\n <div *ngIf=\"group.options && (group.options.showHeader !== false)\" \n class=\"mr-form-wrapper-accordion__header\">\n <n7-facet-header\n [data]=\"group.options\"\n [emit]=\"fakeEmit\"\n ></n7-facet-header>\n </div>\n\n <div *ngIf=\"group.options.isOpen\" class=\"mr-form-wrapper-accordion__content\" [attr.id]=\"group.id\">\n <mr-form [form]=\"data.form\" [group]=\"group\">\n <!-- CUSTOM INPUTS -->\n <!-- <ng-template let-type=\"type\" let-input=\"input\">\n <ng-container [ngSwitch]=\"type\">\n \n <n7-tag *ngSwitchCase=\"'tag'\" \n [data]=\"input.ds.out$ | async\"\n [emit]=\"input.emit\"></n7-tag>\n \n </ng-container>\n </ng-template> -->\n </mr-form>\n </div>\n </ng-container>\n \n <div class=\"mr-form-wrapper-accordion__actions\">\n <a *ngIf=\"data.form.config.resetButton\" \n class=\"n7-btn n7-btn-xl n7-btn-danger\" \n (click)=\"onReset()\">{{ data.form.config.resetButton.label }}</a>\n <a *ngIf=\"data.form.config.submitButton\" \n class=\"n7-btn n7-btn-cta n7-btn-xl n7-btn-info\" \n (click)=\"onSubmit()\">{{ data.form.config.submitButton.label }}</a>\n </div>\n</div>" }]
33
+ }], propDecorators: { data: [{
34
+ type: Input
35
+ }], emit: [{
36
+ type: Input
37
+ }] } });
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS13cmFwcGVyLWFjY29yZGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL243LWJvaWxlcnBsYXRlLW11cnVjYS9zcmMvbGliL2NvbXBvbmVudHMvZm9ybS13cmFwcGVyLWFjY29yZGlvbi9mb3JtLXdyYXBwZXItYWNjb3JkaW9uLnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbjctYm9pbGVycGxhdGUtbXVydWNhL3NyYy9saWIvY29tcG9uZW50cy9mb3JtLXdyYXBwZXItYWNjb3JkaW9uL2Zvcm0td3JhcHBlci1hY2NvcmRpb24uaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUFFLEtBQUssRUFDakIsTUFBTSxlQUFlLENBQUM7Ozs7O0FBV3ZCLE1BQU0sT0FBTywrQkFBK0I7SUFKNUM7UUFpQkUsYUFBUSxHQUFHLENBQUMsSUFBSSxFQUFFLE9BQVEsRUFBRSxFQUFFO1lBQzVCLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7Z0JBQ2YsT0FBTztZQUNULENBQUM7WUFDRCxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxPQUFPLENBQUMsQ0FBQztRQUMzQixDQUFDLENBQUM7S0FTSDtJQXRCQyxRQUFRO1FBQ04sSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN4QixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDM0IsQ0FBQztJQVNELE9BQU87UUFDTCxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3pCLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUMxQixDQUFDOytHQTFCVSwrQkFBK0I7bUdBQS9CLCtCQUErQix5R0NiNUMsNmpEQWtDTTs7NEZEckJPLCtCQUErQjtrQkFKM0MsU0FBUzsrQkFDRSwyQkFBMkI7OEJBSTVCLElBQUk7c0JBQVosS0FBSztnQkFFRyxJQUFJO3NCQUFaLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsIElucHV0LCBPbkluaXQsIE9uRGVzdHJveVxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1yRm9ybU1vZGVsIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2Zvcm0ubW9kZWwnO1xuXG5leHBvcnQgdHlwZSBNckZvcm1XcmFwcGVyQWNjb3JkaW9uRGF0YSA9IHtcbiAgZm9ybTogTXJGb3JtTW9kZWw7XG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ21yLWZvcm0td3JhcHBlci1hY2NvcmRpb24nLFxuICB0ZW1wbGF0ZVVybDogJy4vZm9ybS13cmFwcGVyLWFjY29yZGlvbi5odG1sJyxcbn0pXG5leHBvcnQgY2xhc3MgTXJGb3JtV3JhcHBlckFjY29yZGlvbkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgQElucHV0KCkgZGF0YTogTXJGb3JtV3JhcHBlckFjY29yZGlvbkRhdGE7XG5cbiAgQElucHV0KCkgZW1pdDogKHR5cGU6IHN0cmluZywgcGF5bG9hZD86IGFueSkgPT4gdm9pZDtcblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLmZha2VFbWl0KCdpbml0Jyk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLmZha2VFbWl0KCdkZXN0cm95Jyk7XG4gIH1cblxuICBmYWtlRW1pdCA9ICh0eXBlLCBwYXlsb2FkPykgPT4ge1xuICAgIGlmICghdGhpcy5lbWl0KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuZW1pdCh0eXBlLCBwYXlsb2FkKTtcbiAgfTtcblxuICBvblJlc2V0KCkge1xuICAgIHRoaXMuZmFrZUVtaXQoJ3Jlc2V0Jyk7XG4gIH1cblxuICBvblN1Ym1pdCgpIHtcbiAgICB0aGlzLmZha2VFbWl0KCdzdWJtaXQnKTtcbiAgfVxufVxuIiwiPGRpdiAqbmdJZj1cImRhdGFcIiBjbGFzcz1cIm1yLWZvcm0td3JhcHBlci1hY2NvcmRpb25cIj5cbiAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBncm91cCBvZiBkYXRhLmZvcm0uY29uZmlnLmdyb3VwczsgaW5kZXggYXMgJGlcIj5cbiAgICAgICAgPGRpdiAqbmdJZj1cImdyb3VwLm9wdGlvbnMgJiYgKGdyb3VwLm9wdGlvbnMuc2hvd0hlYWRlciAhPT0gZmFsc2UpXCIgXG4gICAgICAgICAgICBjbGFzcz1cIm1yLWZvcm0td3JhcHBlci1hY2NvcmRpb25fX2hlYWRlclwiPlxuICAgICAgICAgICAgPG43LWZhY2V0LWhlYWRlclxuICAgICAgICAgICAgICAgIFtkYXRhXT1cImdyb3VwLm9wdGlvbnNcIlxuICAgICAgICAgICAgICAgIFtlbWl0XT1cImZha2VFbWl0XCJcbiAgICAgICAgICAgID48L243LWZhY2V0LWhlYWRlcj5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPGRpdiAqbmdJZj1cImdyb3VwLm9wdGlvbnMuaXNPcGVuXCIgY2xhc3M9XCJtci1mb3JtLXdyYXBwZXItYWNjb3JkaW9uX19jb250ZW50XCIgW2F0dHIuaWRdPVwiZ3JvdXAuaWRcIj5cbiAgICAgICAgICAgIDxtci1mb3JtIFtmb3JtXT1cImRhdGEuZm9ybVwiIFtncm91cF09XCJncm91cFwiPlxuICAgICAgICAgICAgICAgIDwhLS0gQ1VTVE9NIElOUFVUUyAtLT5cbiAgICAgICAgICAgICAgICA8IS0tIDxuZy10ZW1wbGF0ZSBsZXQtdHlwZT1cInR5cGVcIiBsZXQtaW5wdXQ9XCJpbnB1dFwiPlxuICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyIFtuZ1N3aXRjaF09XCJ0eXBlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgIDxuNy10YWcgKm5nU3dpdGNoQ2FzZT1cIid0YWcnXCIgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2RhdGFdPVwiaW5wdXQuZHMub3V0JCB8IGFzeW5jXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZW1pdF09XCJpbnB1dC5lbWl0XCI+PC9uNy10YWc+XG4gICAgXG4gICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+IC0tPlxuICAgICAgICAgICAgPC9tci1mb3JtPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICBcbiAgICA8ZGl2IGNsYXNzPVwibXItZm9ybS13cmFwcGVyLWFjY29yZGlvbl9fYWN0aW9uc1wiPlxuICAgICAgICA8YSAqbmdJZj1cImRhdGEuZm9ybS5jb25maWcucmVzZXRCdXR0b25cIiBcbiAgICAgICAgICAgIGNsYXNzPVwibjctYnRuIG43LWJ0bi14bCBuNy1idG4tZGFuZ2VyXCIgXG4gICAgICAgICAgICAoY2xpY2spPVwib25SZXNldCgpXCI+e3sgZGF0YS5mb3JtLmNvbmZpZy5yZXNldEJ1dHRvbi5sYWJlbCB9fTwvYT5cbiAgICAgICAgPGEgKm5nSWY9XCJkYXRhLmZvcm0uY29uZmlnLnN1Ym1pdEJ1dHRvblwiIFxuICAgICAgICAgICAgY2xhc3M9XCJuNy1idG4gbjctYnRuLWN0YSBuNy1idG4teGwgbjctYnRuLWluZm9cIiBcbiAgICAgICAgICAgIChjbGljayk9XCJvblN1Ym1pdCgpXCI+e3sgZGF0YS5mb3JtLmNvbmZpZy5zdWJtaXRCdXR0b24ubGFiZWwgfX08L2E+XG4gICAgPC9kaXY+XG48L2Rpdj4iXX0=
@@ -0,0 +1,28 @@
1
+ import { Component, Input } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "@angular/common";
4
+ export class MrGalleryComponent {
5
+ onClick(payload) {
6
+ if (this.emit) {
7
+ this.emit('click', payload);
8
+ }
9
+ }
10
+ onClose() {
11
+ if (this.emit) {
12
+ this.emit('close');
13
+ }
14
+ }
15
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: MrGalleryComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
16
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.11", type: MrGalleryComponent, selector: "mr-gallery", inputs: { data: "data", emit: "emit", grid: "grid" }, ngImport: i0, template: "<div *ngIf=\"data\" class=\"mr-gallery mr-wp-content\">\n <div class=\"mr-gallery__wrapper wp-block-gallery has-zoom {{ grid ? 'columns-' + grid : '' }}\">\n <ul class=\"mr-gallery__items blocks-gallery-grid\">\n <li *ngFor=\"let item of data.items\" class=\"mr-gallery__item blocks-gallery-item\">\n <figure>\n <a (click)=\"onClick(item.payload)\" class=\"mr-gallery__link\">\n <img [src]=\"item.thumbSrc\" [alt]=\"item.title\" class=\"mr-gallery__image\">\n </a>\n </figure>\n </li>\n </ul>\n </div>\n <div *ngIf=\"data.selected\" class=\"mr-modal mr-gallery-modal\" (click)=\"onClose()\">\n <div class=\"mr-modal__overlay\">\n <div class=\"mr-modal__window mr-gallery-modal__window\">\n <div class=\"mr-modal__header mr-gallery-modal__header\">\n <div class=\"mr-modal__close\">\n <a class=\"mr-modal__close-link\" (click)=\"onClose()\"><span class=\"n7-icon-close\"></span></a>\n </div>\n </div>\n <div class=\"mr-modal__content mr-gallery-modal__content\">\n <div class=\"mr-gallery__zoom-image-wrapper\">\n <img [src]=\"data.selected.fullSrc\" [alt]=\"data.selected.title\" class=\"mr-gallery__zoom-image\">\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>", dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
17
+ }
18
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: MrGalleryComponent, decorators: [{
19
+ type: Component,
20
+ args: [{ selector: 'mr-gallery', template: "<div *ngIf=\"data\" class=\"mr-gallery mr-wp-content\">\n <div class=\"mr-gallery__wrapper wp-block-gallery has-zoom {{ grid ? 'columns-' + grid : '' }}\">\n <ul class=\"mr-gallery__items blocks-gallery-grid\">\n <li *ngFor=\"let item of data.items\" class=\"mr-gallery__item blocks-gallery-item\">\n <figure>\n <a (click)=\"onClick(item.payload)\" class=\"mr-gallery__link\">\n <img [src]=\"item.thumbSrc\" [alt]=\"item.title\" class=\"mr-gallery__image\">\n </a>\n </figure>\n </li>\n </ul>\n </div>\n <div *ngIf=\"data.selected\" class=\"mr-modal mr-gallery-modal\" (click)=\"onClose()\">\n <div class=\"mr-modal__overlay\">\n <div class=\"mr-modal__window mr-gallery-modal__window\">\n <div class=\"mr-modal__header mr-gallery-modal__header\">\n <div class=\"mr-modal__close\">\n <a class=\"mr-modal__close-link\" (click)=\"onClose()\"><span class=\"n7-icon-close\"></span></a>\n </div>\n </div>\n <div class=\"mr-modal__content mr-gallery-modal__content\">\n <div class=\"mr-gallery__zoom-image-wrapper\">\n <img [src]=\"data.selected.fullSrc\" [alt]=\"data.selected.title\" class=\"mr-gallery__zoom-image\">\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>" }]
21
+ }], propDecorators: { data: [{
22
+ type: Input
23
+ }], emit: [{
24
+ type: Input
25
+ }], grid: [{
26
+ type: Input
27
+ }] } });
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2FsbGVyeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL243LWJvaWxlcnBsYXRlLW11cnVjYS9zcmMvbGliL2NvbXBvbmVudHMvZ2FsbGVyeS9nYWxsZXJ5LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbjctYm9pbGVycGxhdGUtbXVydWNhL3NyYy9saWIvY29tcG9uZW50cy9nYWxsZXJ5L2dhbGxlcnkuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBbUJqRCxNQUFNLE9BQU8sa0JBQWtCO0lBTzdCLE9BQU8sQ0FBQyxPQUFPO1FBQ2IsSUFBSSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDZCxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQztRQUM5QixDQUFDO0lBQ0gsQ0FBQztJQUVELE9BQU87UUFDTCxJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUNkLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDckIsQ0FBQztJQUNILENBQUM7K0dBakJVLGtCQUFrQjttR0FBbEIsa0JBQWtCLHdHQ25CL0IscS9DQTRCTTs7NEZEVE8sa0JBQWtCO2tCQUo5QixTQUFTOytCQUNFLFlBQVk7OEJBSWIsSUFBSTtzQkFBWixLQUFLO2dCQUVHLElBQUk7c0JBQVosS0FBSztnQkFFRyxJQUFJO3NCQUFaLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmV4cG9ydCB0eXBlIEdhbGxlcnlEYXRhID0ge1xuICBzZWxlY3RlZDogbnVsbCB8IEdhbGxlcnlJdGVtO1xuICBpdGVtczogR2FsbGVyeUl0ZW1bXTtcbn1cblxuZXhwb3J0IHR5cGUgR2FsbGVyeUl0ZW0gPSB7XG4gIGlkOiBzdHJpbmcgfCBudW1iZXI7XG4gIHRodW1iU3JjOiBzdHJpbmc7XG4gIGZ1bGxTcmM6IHN0cmluZztcbiAgdGl0bGU6IHN0cmluZztcbiAgcGF5bG9hZDogYW55O1xufTtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbXItZ2FsbGVyeScsXG4gIHRlbXBsYXRlVXJsOiAnLi9nYWxsZXJ5Lmh0bWwnLFxufSlcbmV4cG9ydCBjbGFzcyBNckdhbGxlcnlDb21wb25lbnQge1xuICBASW5wdXQoKSBkYXRhOiBHYWxsZXJ5RGF0YTtcblxuICBASW5wdXQoKSBlbWl0OiAodHlwZTogc3RyaW5nLCBwYXlsb2FkPzogYW55KSA9PiB2b2lkO1xuXG4gIEBJbnB1dCgpIGdyaWQ6IG51bWJlciB8IG51bGw7XG5cbiAgb25DbGljayhwYXlsb2FkKSB7XG4gICAgaWYgKHRoaXMuZW1pdCkge1xuICAgICAgdGhpcy5lbWl0KCdjbGljaycsIHBheWxvYWQpO1xuICAgIH1cbiAgfVxuXG4gIG9uQ2xvc2UoKSB7XG4gICAgaWYgKHRoaXMuZW1pdCkge1xuICAgICAgdGhpcy5lbWl0KCdjbG9zZScpO1xuICAgIH1cbiAgfVxufVxuIiwiPGRpdiAqbmdJZj1cImRhdGFcIiBjbGFzcz1cIm1yLWdhbGxlcnkgbXItd3AtY29udGVudFwiPlxuICAgIDxkaXYgY2xhc3M9XCJtci1nYWxsZXJ5X193cmFwcGVyIHdwLWJsb2NrLWdhbGxlcnkgaGFzLXpvb20ge3sgZ3JpZCA/ICdjb2x1bW5zLScgKyBncmlkIDogJycgfX1cIj5cbiAgICAgICAgPHVsIGNsYXNzPVwibXItZ2FsbGVyeV9faXRlbXMgYmxvY2tzLWdhbGxlcnktZ3JpZFwiPlxuICAgICAgICAgICAgPGxpICpuZ0Zvcj1cImxldCBpdGVtIG9mIGRhdGEuaXRlbXNcIiBjbGFzcz1cIm1yLWdhbGxlcnlfX2l0ZW0gYmxvY2tzLWdhbGxlcnktaXRlbVwiPlxuICAgICAgICAgICAgICAgIDxmaWd1cmU+XG4gICAgICAgICAgICAgICAgICAgIDxhIChjbGljayk9XCJvbkNsaWNrKGl0ZW0ucGF5bG9hZClcIiBjbGFzcz1cIm1yLWdhbGxlcnlfX2xpbmtcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgW3NyY109XCJpdGVtLnRodW1iU3JjXCIgW2FsdF09XCJpdGVtLnRpdGxlXCIgY2xhc3M9XCJtci1nYWxsZXJ5X19pbWFnZVwiPlxuICAgICAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICAgICAgPC9maWd1cmU+XG4gICAgICAgICAgICA8L2xpPlxuICAgICAgICA8L3VsPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgKm5nSWY9XCJkYXRhLnNlbGVjdGVkXCIgY2xhc3M9XCJtci1tb2RhbCBtci1nYWxsZXJ5LW1vZGFsXCIgKGNsaWNrKT1cIm9uQ2xvc2UoKVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwibXItbW9kYWxfX292ZXJsYXlcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtci1tb2RhbF9fd2luZG93IG1yLWdhbGxlcnktbW9kYWxfX3dpbmRvd1wiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtci1tb2RhbF9faGVhZGVyIG1yLWdhbGxlcnktbW9kYWxfX2hlYWRlclwiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXItbW9kYWxfX2Nsb3NlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8YSBjbGFzcz1cIm1yLW1vZGFsX19jbG9zZS1saW5rXCIgKGNsaWNrKT1cIm9uQ2xvc2UoKVwiPjxzcGFuIGNsYXNzPVwibjctaWNvbi1jbG9zZVwiPjwvc3Bhbj48L2E+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtci1tb2RhbF9fY29udGVudCBtci1nYWxsZXJ5LW1vZGFsX19jb250ZW50XCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtci1nYWxsZXJ5X196b29tLWltYWdlLXdyYXBwZXJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgW3NyY109XCJkYXRhLnNlbGVjdGVkLmZ1bGxTcmNcIiBbYWx0XT1cImRhdGEuc2VsZWN0ZWQudGl0bGVcIiBjbGFzcz1cIm1yLWdhbGxlcnlfX3pvb20taW1hZ2VcIj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L2Rpdj4iXX0=
@@ -0,0 +1,32 @@
1
+ import { Component, Input } from '@angular/core';
2
+ import { MrMetadataDynamicDS } from '../../data-sources/metadata-dynamic.ds';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/common";
5
+ import * as i2 from "@net7/components";
6
+ import * as i3 from "../metadata-with-readmore/metadata-with-readmore";
7
+ import * as i4 from "../read-more/read-more";
8
+ export class MrMetadataDynamicComponent {
9
+ constructor() {
10
+ this.fakeEmit = (type, payload) => {
11
+ if (!this.emit) {
12
+ return;
13
+ }
14
+ this.emit(type, payload);
15
+ };
16
+ }
17
+ obtainData(section) {
18
+ const metadataDynamicDS = new MrMetadataDynamicDS();
19
+ return metadataDynamicDS.prepareMeta(section);
20
+ }
21
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: MrMetadataDynamicComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
22
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.11", type: MrMetadataDynamicComponent, selector: "mr-metadata-dynamic", inputs: { data: "data", emit: "emit" }, ngImport: i0, template: "<ng-container *ngIf=\"data.data\">\n <ng-container *ngFor=\"let group of data.data; index as i\">\n <ng-container *ngTemplateOutlet=\"metadataViewer; context:{$implicit: group}\"></ng-container>\n </ng-container>\n</ng-container>\n\n<ng-template #metadataViewer let-group>\n <div class=\"mr-content-block mr-content-block-metadata\">\n <div *ngIf=\"group\" class=\"mr-metadata-dynamic\" [ngClass]=\"{'mr-metadata-dynamic-accordion' : group.title}\">\n \n <!-- Header accordion (se presente) -->\n <div *ngIf=\"group.options && (group.options.showHeader !== false) && group.title\" class=\"mr-metadata-dynamic-accordion__header\">\n <n7-facet-header \n [data]=\"group.options\" \n [emit]=\"fakeEmit\"\n ></n7-facet-header>\n </div>\n\n <!-- Content -->\n <div *ngIf=\"group.options.isOpen\" class=\"mr-content-block__content\" [attr.id]=\"group.id\">\n <mr-read-more [data]=\"group.readmore\">\n <ng-container *ngIf=\" group?.options?.readmore || group?.options?.groupReadmore;\n else wihoutReadmore\">\n <mr-metadata-readmore\n [data]=\"obtainData(group)\">\n </mr-metadata-readmore>\n </ng-container>\n <ng-template #wihoutReadmore>\n <n7-metadata-viewer\n [data]=\"obtainData(group)\">\n </n7-metadata-viewer>\n </ng-template>\n </mr-read-more>\n </div>\n\n </div>\n </div>\n</ng-template>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.FacetHeaderComponent, selector: "n7-facet-header", inputs: ["data", "emit"] }, { kind: "component", type: i2.MetadataViewerComponent, selector: "n7-metadata-viewer", inputs: ["data", "emit"] }, { kind: "component", type: i3.MrMetadataReadmoreComponent, selector: "mr-metadata-readmore", inputs: ["data", "emit"] }, { kind: "component", type: i4.ReadMoreComponent, selector: "mr-read-more", inputs: ["data"] }] }); }
23
+ }
24
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: MrMetadataDynamicComponent, decorators: [{
25
+ type: Component,
26
+ args: [{ selector: 'mr-metadata-dynamic', template: "<ng-container *ngIf=\"data.data\">\n <ng-container *ngFor=\"let group of data.data; index as i\">\n <ng-container *ngTemplateOutlet=\"metadataViewer; context:{$implicit: group}\"></ng-container>\n </ng-container>\n</ng-container>\n\n<ng-template #metadataViewer let-group>\n <div class=\"mr-content-block mr-content-block-metadata\">\n <div *ngIf=\"group\" class=\"mr-metadata-dynamic\" [ngClass]=\"{'mr-metadata-dynamic-accordion' : group.title}\">\n \n <!-- Header accordion (se presente) -->\n <div *ngIf=\"group.options && (group.options.showHeader !== false) && group.title\" class=\"mr-metadata-dynamic-accordion__header\">\n <n7-facet-header \n [data]=\"group.options\" \n [emit]=\"fakeEmit\"\n ></n7-facet-header>\n </div>\n\n <!-- Content -->\n <div *ngIf=\"group.options.isOpen\" class=\"mr-content-block__content\" [attr.id]=\"group.id\">\n <mr-read-more [data]=\"group.readmore\">\n <ng-container *ngIf=\" group?.options?.readmore || group?.options?.groupReadmore;\n else wihoutReadmore\">\n <mr-metadata-readmore\n [data]=\"obtainData(group)\">\n </mr-metadata-readmore>\n </ng-container>\n <ng-template #wihoutReadmore>\n <n7-metadata-viewer\n [data]=\"obtainData(group)\">\n </n7-metadata-viewer>\n </ng-template>\n </mr-read-more>\n </div>\n\n </div>\n </div>\n</ng-template>\n" }]
27
+ }], propDecorators: { data: [{
28
+ type: Input
29
+ }], emit: [{
30
+ type: Input
31
+ }] } });
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWV0YWRhdGEtZHluYW1pYy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL243LWJvaWxlcnBsYXRlLW11cnVjYS9zcmMvbGliL2NvbXBvbmVudHMvbWV0YWRhdGEtZHluYW1pYy9tZXRhZGF0YS1keW5hbWljLnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbjctYm9pbGVycGxhdGUtbXVydWNhL3NyYy9saWIvY29tcG9uZW50cy9tZXRhZGF0YS1keW5hbWljL21ldGFkYXRhLWR5bmFtaWMuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQzs7Ozs7O0FBTTdFLE1BQU0sT0FBTywwQkFBMEI7SUFKdkM7UUFTRSxhQUFRLEdBQUcsQ0FBQyxJQUFJLEVBQUUsT0FBUSxFQUFFLEVBQUU7WUFDNUIsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztnQkFDZixPQUFPO1lBQ1QsQ0FBQztZQUNELElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQzNCLENBQUMsQ0FBQztLQU1IO0lBSlEsVUFBVSxDQUFDLE9BQVk7UUFDNUIsTUFBTSxpQkFBaUIsR0FBRyxJQUFJLG1CQUFtQixFQUFFLENBQUM7UUFDcEQsT0FBTyxpQkFBaUIsQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDaEQsQ0FBQzsrR0FmVSwwQkFBMEI7bUdBQTFCLDBCQUEwQixtR0NQdkMsZy9DQXNDQTs7NEZEL0JhLDBCQUEwQjtrQkFKdEMsU0FBUzsrQkFDRSxxQkFBcUI7OEJBSXRCLElBQUk7c0JBQVosS0FBSztnQkFFRyxJQUFJO3NCQUFaLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNck1ldGFkYXRhRHluYW1pY0RTIH0gZnJvbSAnLi4vLi4vZGF0YS1zb3VyY2VzL21ldGFkYXRhLWR5bmFtaWMuZHMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdtci1tZXRhZGF0YS1keW5hbWljJyxcbiAgdGVtcGxhdGVVcmw6ICcuL21ldGFkYXRhLWR5bmFtaWMuaHRtbCdcbn0pXG5leHBvcnQgY2xhc3MgTXJNZXRhZGF0YUR5bmFtaWNDb21wb25lbnQge1xuICBASW5wdXQoKSBkYXRhOiBhbnk7XG5cbiAgQElucHV0KCkgZW1pdDogKHR5cGU6IHN0cmluZywgcGF5bG9hZD86IGFueSkgPT4gdm9pZDtcblxuICBmYWtlRW1pdCA9ICh0eXBlLCBwYXlsb2FkPykgPT4ge1xuICAgIGlmICghdGhpcy5lbWl0KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuZW1pdCh0eXBlLCBwYXlsb2FkKTtcbiAgfTtcblxuICBwdWJsaWMgb2J0YWluRGF0YShzZWN0aW9uOiBhbnkpIHtcbiAgICBjb25zdCBtZXRhZGF0YUR5bmFtaWNEUyA9IG5ldyBNck1ldGFkYXRhRHluYW1pY0RTKCk7XG4gICAgcmV0dXJuIG1ldGFkYXRhRHluYW1pY0RTLnByZXBhcmVNZXRhKHNlY3Rpb24pO1xuICB9XG59XG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwiZGF0YS5kYXRhXCI+XG4gIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGdyb3VwIG9mIGRhdGEuZGF0YTsgaW5kZXggYXMgaVwiPlxuICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJtZXRhZGF0YVZpZXdlcjsgY29udGV4dDp7JGltcGxpY2l0OiBncm91cH1cIj48L25nLWNvbnRhaW5lcj5cbiAgPC9uZy1jb250YWluZXI+XG48L25nLWNvbnRhaW5lcj5cblxuPG5nLXRlbXBsYXRlICNtZXRhZGF0YVZpZXdlciBsZXQtZ3JvdXA+XG4gIDxkaXYgY2xhc3M9XCJtci1jb250ZW50LWJsb2NrIG1yLWNvbnRlbnQtYmxvY2stbWV0YWRhdGFcIj5cbiAgICA8ZGl2ICpuZ0lmPVwiZ3JvdXBcIiBjbGFzcz1cIm1yLW1ldGFkYXRhLWR5bmFtaWNcIiBbbmdDbGFzc109XCJ7J21yLW1ldGFkYXRhLWR5bmFtaWMtYWNjb3JkaW9uJyA6IGdyb3VwLnRpdGxlfVwiPlxuICAgICAgXG4gICAgICA8IS0tIEhlYWRlciBhY2NvcmRpb24gKHNlIHByZXNlbnRlKSAtLT5cbiAgICAgIDxkaXYgKm5nSWY9XCJncm91cC5vcHRpb25zICYmIChncm91cC5vcHRpb25zLnNob3dIZWFkZXIgIT09IGZhbHNlKSAmJiBncm91cC50aXRsZVwiIGNsYXNzPVwibXItbWV0YWRhdGEtZHluYW1pYy1hY2NvcmRpb25fX2hlYWRlclwiPlxuICAgICAgICA8bjctZmFjZXQtaGVhZGVyIFxuICAgICAgICAgIFtkYXRhXT1cImdyb3VwLm9wdGlvbnNcIiBcbiAgICAgICAgICBbZW1pdF09XCJmYWtlRW1pdFwiXG4gICAgICAgID48L243LWZhY2V0LWhlYWRlcj5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8IS0tIENvbnRlbnQgLS0+XG4gICAgICA8ZGl2ICpuZ0lmPVwiZ3JvdXAub3B0aW9ucy5pc09wZW5cIiBjbGFzcz1cIm1yLWNvbnRlbnQtYmxvY2tfX2NvbnRlbnRcIiBbYXR0ci5pZF09XCJncm91cC5pZFwiPlxuICAgICAgICA8bXItcmVhZC1tb3JlIFtkYXRhXT1cImdyb3VwLnJlYWRtb3JlXCI+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiBncm91cD8ub3B0aW9ucz8ucmVhZG1vcmUgfHwgZ3JvdXA/Lm9wdGlvbnM/Lmdyb3VwUmVhZG1vcmU7XG4gICAgICAgICAgICAgICAgICAgICAgZWxzZSB3aWhvdXRSZWFkbW9yZVwiPlxuICAgICAgICAgICAgPG1yLW1ldGFkYXRhLXJlYWRtb3JlXG4gICAgICAgICAgICAgICAgW2RhdGFdPVwib2J0YWluRGF0YShncm91cClcIj5cbiAgICAgICAgICAgIDwvbXItbWV0YWRhdGEtcmVhZG1vcmU+XG4gICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgPG5nLXRlbXBsYXRlICN3aWhvdXRSZWFkbW9yZT5cbiAgICAgICAgICAgIDxuNy1tZXRhZGF0YS12aWV3ZXJcbiAgICAgICAgICAgICAgICBbZGF0YV09XCJvYnRhaW5EYXRhKGdyb3VwKVwiPlxuICAgICAgICAgICAgPC9uNy1tZXRhZGF0YS12aWV3ZXI+XG4gICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPC9tci1yZWFkLW1vcmU+XG4gICAgICA8L2Rpdj5cblxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
@@ -6,10 +6,10 @@ import * as i0 from "@angular/core";
6
6
  import * as i1 from "@angular/common";
7
7
  import * as i2 from "../read-more/read-more";
8
8
  export class MrMetadataReadmoreComponent {
9
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: MrMetadataReadmoreComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
10
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.11", type: MrMetadataReadmoreComponent, selector: "mr-metadata-readmore", inputs: { data: "data", emit: "emit" }, ngImport: i0, template: "<div *ngIf=\"data\"\n class=\"n7-metadata-viewer\">\n <!-- Metadata groups wrapper -->\n <div class=\"n7-metadata-viewer__wrapper {{ data.classes || ''}}\"\n *ngFor=\"let grp of data.group\">\n <!-- For each data group, render it -->\n <ng-container *ngTemplateOutlet=\"group; context:{$implicit: grp}\"></ng-container>\n </div>\n</div>\n\n<!-- Template for Metadata.group -->\n<ng-template #group\n let-grp>\n <div *ngIf=\"grp.title || grp.items\"\n class=\"n7-metadata-viewer__group {{ grp.classes || '' }}\">\n <div class=\"n7-metadata-viewer__group-title\"\n *ngIf=\"grp.title\">{{grp.title}}</div>\n <div class=\"n7-metadata-viewer__group-content\"\n *ngIf=\"grp.items\">\n <!-- \"read more\" enabled on the metadata group -->\n <mr-read-more [data]=\"grp.groupReadmore\">\n <div class=\"n7-metadata-viewer__item\"\n *ngFor=\"let i of grp.items\">\n <span *ngIf=\"i.label\" class=\"n7-metadata-viewer__item-label\">\n {{ i.label }}\n </span>\n <!-- \"read more\" enabled on the metadata value field -->\n <mr-read-more [data]=\"grp.readmore\">\n <span *ngIf=\"i.value\"\n class=\"n7-metadata-viewer__item-value\"\n [innerHTML]=\"i.value\">\n </span>\n </mr-read-more>\n </div>\n </mr-read-more>\n </div>\n </div>\n <!-- Render all child groups -->\n <div *ngIf=\"grp.group\">\n <div class=\"n7-metadata-viewer__group-wrapper\"\n *ngFor=\"let grp of grp.group\">\n <ng-container *ngTemplateOutlet=\"group; context:{$implicit: grp}\"></ng-container>\n </div>\n </div>\n</ng-template>\n", dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.ReadMoreComponent, selector: "mr-read-more", inputs: ["data"] }] }); }
9
11
  }
10
- MrMetadataReadmoreComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: MrMetadataReadmoreComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
11
- MrMetadataReadmoreComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: MrMetadataReadmoreComponent, selector: "mr-metadata-readmore", inputs: { data: "data", emit: "emit" }, ngImport: i0, template: "<div *ngIf=\"data\"\n class=\"n7-metadata-viewer\">\n <!-- Metadata groups wrapper -->\n <div class=\"n7-metadata-viewer__wrapper {{ data.classes || ''}}\"\n *ngFor=\"let grp of data.group\">\n <!-- For each data group, render it -->\n <ng-container *ngTemplateOutlet=\"group; context:{$implicit: grp}\"></ng-container>\n </div>\n</div>\n\n<!-- Template for Metadata.group -->\n<ng-template #group\n let-grp>\n <div *ngIf=\"grp.title || grp.items\"\n class=\"n7-metadata-viewer__group {{ grp.classes || '' }}\">\n <div class=\"n7-metadata-viewer__group-title\"\n *ngIf=\"grp.title\">{{grp.title}}</div>\n <div class=\"n7-metadata-viewer__group-content\"\n *ngIf=\"grp.items\">\n <!-- \"read more\" enabled on the metadata group -->\n <mr-read-more [data]=\"grp.groupReadmore\">\n <div class=\"n7-metadata-viewer__item\"\n *ngFor=\"let i of grp.items\">\n <span *ngIf=\"i.label\" class=\"n7-metadata-viewer__item-label\">\n {{ i.label }}\n </span>\n <!-- \"read more\" enabled on the metadata value field -->\n <mr-read-more [data]=\"grp.readmore\">\n <span *ngIf=\"i.value\"\n class=\"n7-metadata-viewer__item-value\"\n [innerHTML]=\"i.value\">\n </span>\n </mr-read-more>\n </div>\n </mr-read-more>\n </div>\n </div>\n <!-- Render all child groups -->\n <div *ngIf=\"grp.group\">\n <div class=\"n7-metadata-viewer__group-wrapper\"\n *ngFor=\"let grp of grp.group\">\n <ng-container *ngTemplateOutlet=\"group; context:{$implicit: grp}\"></ng-container>\n </div>\n </div>\n</ng-template>\n", dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.ReadMoreComponent, selector: "mr-read-more", inputs: ["data"] }] });
12
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: MrMetadataReadmoreComponent, decorators: [{
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: MrMetadataReadmoreComponent, decorators: [{
13
13
  type: Component,
14
14
  args: [{ selector: 'mr-metadata-readmore', template: "<div *ngIf=\"data\"\n class=\"n7-metadata-viewer\">\n <!-- Metadata groups wrapper -->\n <div class=\"n7-metadata-viewer__wrapper {{ data.classes || ''}}\"\n *ngFor=\"let grp of data.group\">\n <!-- For each data group, render it -->\n <ng-container *ngTemplateOutlet=\"group; context:{$implicit: grp}\"></ng-container>\n </div>\n</div>\n\n<!-- Template for Metadata.group -->\n<ng-template #group\n let-grp>\n <div *ngIf=\"grp.title || grp.items\"\n class=\"n7-metadata-viewer__group {{ grp.classes || '' }}\">\n <div class=\"n7-metadata-viewer__group-title\"\n *ngIf=\"grp.title\">{{grp.title}}</div>\n <div class=\"n7-metadata-viewer__group-content\"\n *ngIf=\"grp.items\">\n <!-- \"read more\" enabled on the metadata group -->\n <mr-read-more [data]=\"grp.groupReadmore\">\n <div class=\"n7-metadata-viewer__item\"\n *ngFor=\"let i of grp.items\">\n <span *ngIf=\"i.label\" class=\"n7-metadata-viewer__item-label\">\n {{ i.label }}\n </span>\n <!-- \"read more\" enabled on the metadata value field -->\n <mr-read-more [data]=\"grp.readmore\">\n <span *ngIf=\"i.value\"\n class=\"n7-metadata-viewer__item-value\"\n [innerHTML]=\"i.value\">\n </span>\n </mr-read-more>\n </div>\n </mr-read-more>\n </div>\n </div>\n <!-- Render all child groups -->\n <div *ngIf=\"grp.group\">\n <div class=\"n7-metadata-viewer__group-wrapper\"\n *ngFor=\"let grp of grp.group\">\n <ng-container *ngTemplateOutlet=\"group; context:{$implicit: grp}\"></ng-container>\n </div>\n </div>\n</ng-template>\n" }]
15
15
  }], propDecorators: { data: [{
@@ -17,4 +17,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
17
17
  }], emit: [{
18
18
  type: Input
19
19
  }] } });
20
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWV0YWRhdGEtd2l0aC1yZWFkbW9yZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL243LWJvaWxlcnBsYXRlLW11cnVjYS9zcmMvbGliL2NvbXBvbmVudHMvbWV0YWRhdGEtd2l0aC1yZWFkbW9yZS9tZXRhZGF0YS13aXRoLXJlYWRtb3JlLnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbjctYm9pbGVycGxhdGUtbXVydWNhL3NyYy9saWIvY29tcG9uZW50cy9tZXRhZGF0YS13aXRoLXJlYWRtb3JlL21ldGFkYXRhLXdpdGgtcmVhZG1vcmUuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSw2QkFBNkI7QUFDN0IscUJBQXFCO0FBQ3JCLDZCQUE2QjtBQUU3QixPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7OztBQW1FakQsTUFBTSxPQUFPLDJCQUEyQjs7eUhBQTNCLDJCQUEyQjs2R0FBM0IsMkJBQTJCLG9HQ3ZFeEMsdTVEQTZDQTs0RkQwQmEsMkJBQTJCO2tCQUp2QyxTQUFTOytCQUNFLHNCQUFzQjs4QkFJdkIsSUFBSTtzQkFBWixLQUFLO2dCQUVHLElBQUk7c0JBQVosS0FBSyIsInNvdXJjZXNDb250ZW50IjpbIi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBNRVRBREFUQS1WSUVXRVIudHNcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbmltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuLyoqXG4gKiBJbnRlcmZhY2UgZm9yIE1ldGFkYXRhVmlld2VyQ29tcG9uZW50J3MgXCJpdGVtc1wiXG4gKiBAcHJvcGVydHkgbGFiZWwgKG9wdGlvbmFsKVxuICogQHByb3BlcnR5IHZhbHVlIChvcHRpb25hbClcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBNZXRhZGF0YVZpZXdlckl0ZW1zIHtcbiAgLyoqXG4gICAqIHRoZSBpdGVtJ3MgbGFiZWxcbiAgICovXG4gIGxhYmVsPzogc3RyaW5nO1xuICAvKipcbiAgICogdGhlIHZhbHVlIGZvciBAcHJvcGVydHkgbGFiZWxcbiAgICovXG4gIHZhbHVlPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIEludGVyZmFjZSBmb3IgTWV0YWRhdGFWaWV3ZXJDb21wb25lbnQncyBcImRhdGFcIlxuICpcbiAqIEBwcm9wZXJ0eSB0aXRsZSAob3B0aW9uYWwpXG4gKiBAcHJvcGVydHkgaXRlbXMgKG9wdGlvbmFsKVxuICogQHByb3BlcnR5IGdyb3VwIChvcHRpb25hbClcbiAqIEBwcm9wZXJ0eSBjbGFzc2VzIChvcHRpb25hbClcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBNZXRhZGF0YVZpZXdlckNoaWxkR3JvdXBzIHtcbiAgLyoqXG4gICAqIGNvbXBvbmVudCBoZWFkZXIgKGlmIHJvb3QpXG4gICAqIG9yIGdyb3VwIHRpdGxlXG4gICAqL1xuICB0aXRsZT86IHN0cmluZztcbiAgLyoqXG4gICAqIHRoZSBtZXRhZGF0YSBpdGVtc1xuICAgKi9cbiAgaXRlbXM/OiBNZXRhZGF0YVZpZXdlckl0ZW1zW107XG4gIC8qKlxuICAgKiB0aGUgQ0hJTEQgbWV0YWRhdGEgZ3JvdXBzXG4gICAqL1xuICBncm91cD86IE1ldGFkYXRhVmlld2VyQ2hpbGRHcm91cHNbXTtcbiAgLyoqXG4gICAqIGFkZGl0aW9uYWwgaHRtbCBjbGFzc2VzXG4gICAqL1xuICBjbGFzc2VzPzogYW55O1xufVxuXG4vKipcbiAqIEludGVyZmFjZSBmb3IgTWV0YWRhdGFWaWV3ZXJDb21wb25lbnQncyBcImRhdGFcIlxuICpcbiAqIEBwcm9wZXJ0eSBncm91cCAocmVxdWlyZWQpXG4gKiBAcHJvcGVydHkgY2xhc3NlcyAob3B0aW9uYWwpXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTWV0YWRhdGFWaWV3ZXJEYXRhIHtcbiAgLyoqXG4gICAqIHRoZSBDSElMRCBtZXRhZGF0YSBncm91cHNcbiAgICovXG4gIGdyb3VwOiBNZXRhZGF0YVZpZXdlckNoaWxkR3JvdXBzW107XG4gIC8qKlxuICAgKiBhZGRpdGlvbmFsIGh0bWwgY2xhc3Nlc1xuICAgKi9cbiAgY2xhc3Nlcz86IGFueTtcbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbXItbWV0YWRhdGEtcmVhZG1vcmUnLFxuICB0ZW1wbGF0ZVVybDogJy4vbWV0YWRhdGEtd2l0aC1yZWFkbW9yZS5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBNck1ldGFkYXRhUmVhZG1vcmVDb21wb25lbnQge1xuICBASW5wdXQoKSBkYXRhOiBNZXRhZGF0YVZpZXdlckRhdGE7XG5cbiAgQElucHV0KCkgZW1pdDogYW55O1xufVxuIiwiPGRpdiAqbmdJZj1cImRhdGFcIlxuICAgICBjbGFzcz1cIm43LW1ldGFkYXRhLXZpZXdlclwiPlxuICAgIDwhLS0gTWV0YWRhdGEgZ3JvdXBzIHdyYXBwZXIgLS0+XG4gICAgPGRpdiBjbGFzcz1cIm43LW1ldGFkYXRhLXZpZXdlcl9fd3JhcHBlciB7eyBkYXRhLmNsYXNzZXMgIHx8ICcnfX1cIlxuICAgICAgICAgKm5nRm9yPVwibGV0IGdycCBvZiBkYXRhLmdyb3VwXCI+XG4gICAgICAgIDwhLS0gRm9yIGVhY2ggZGF0YSBncm91cCwgcmVuZGVyIGl0IC0tPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiZ3JvdXA7IGNvbnRleHQ6eyRpbXBsaWNpdDogZ3JwfVwiPjwvbmctY29udGFpbmVyPlxuICAgIDwvZGl2PlxuPC9kaXY+XG5cbjwhLS0gVGVtcGxhdGUgZm9yIE1ldGFkYXRhLmdyb3VwIC0tPlxuPG5nLXRlbXBsYXRlICNncm91cFxuICAgICAgICAgICAgIGxldC1ncnA+XG4gICAgPGRpdiAqbmdJZj1cImdycC50aXRsZSB8fCBncnAuaXRlbXNcIlxuICAgICAgICAgY2xhc3M9XCJuNy1tZXRhZGF0YS12aWV3ZXJfX2dyb3VwIHt7IGdycC5jbGFzc2VzIHx8ICcnIH19XCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJuNy1tZXRhZGF0YS12aWV3ZXJfX2dyb3VwLXRpdGxlXCJcbiAgICAgICAgICAgICAqbmdJZj1cImdycC50aXRsZVwiPnt7Z3JwLnRpdGxlfX08L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm43LW1ldGFkYXRhLXZpZXdlcl9fZ3JvdXAtY29udGVudFwiXG4gICAgICAgICAgICAgKm5nSWY9XCJncnAuaXRlbXNcIj5cbiAgICAgICAgICAgIDwhLS0gXCJyZWFkIG1vcmVcIiBlbmFibGVkIG9uIHRoZSBtZXRhZGF0YSBncm91cCAtLT5cbiAgICAgICAgICAgIDxtci1yZWFkLW1vcmUgW2RhdGFdPVwiZ3JwLmdyb3VwUmVhZG1vcmVcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibjctbWV0YWRhdGEtdmlld2VyX19pdGVtXCJcbiAgICAgICAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IGkgb2YgZ3JwLml0ZW1zXCI+XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiaS5sYWJlbFwiIGNsYXNzPVwibjctbWV0YWRhdGEtdmlld2VyX19pdGVtLWxhYmVsXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICB7eyBpLmxhYmVsIH19XG4gICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgPCEtLSBcInJlYWQgbW9yZVwiIGVuYWJsZWQgb24gdGhlIG1ldGFkYXRhIHZhbHVlIGZpZWxkIC0tPlxuICAgICAgICAgICAgICAgICAgICA8bXItcmVhZC1tb3JlIFtkYXRhXT1cImdycC5yZWFkbW9yZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJpLnZhbHVlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cIm43LW1ldGFkYXRhLXZpZXdlcl9faXRlbS12YWx1ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2lubmVySFRNTF09XCJpLnZhbHVlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIDwvbXItcmVhZC1tb3JlPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9tci1yZWFkLW1vcmU+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDwhLS0gUmVuZGVyIGFsbCBjaGlsZCBncm91cHMgLS0+XG4gICAgPGRpdiAqbmdJZj1cImdycC5ncm91cFwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwibjctbWV0YWRhdGEtdmlld2VyX19ncm91cC13cmFwcGVyXCJcbiAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgZ3JwIG9mIGdycC5ncm91cFwiPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImdyb3VwOyBjb250ZXh0OnskaW1wbGljaXQ6IGdycH1cIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L25nLXRlbXBsYXRlPlxuIl19
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWV0YWRhdGEtd2l0aC1yZWFkbW9yZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL243LWJvaWxlcnBsYXRlLW11cnVjYS9zcmMvbGliL2NvbXBvbmVudHMvbWV0YWRhdGEtd2l0aC1yZWFkbW9yZS9tZXRhZGF0YS13aXRoLXJlYWRtb3JlLnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbjctYm9pbGVycGxhdGUtbXVydWNhL3NyYy9saWIvY29tcG9uZW50cy9tZXRhZGF0YS13aXRoLXJlYWRtb3JlL21ldGFkYXRhLXdpdGgtcmVhZG1vcmUuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSw2QkFBNkI7QUFDN0IscUJBQXFCO0FBQ3JCLDZCQUE2QjtBQUU3QixPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7OztBQW1FakQsTUFBTSxPQUFPLDJCQUEyQjsrR0FBM0IsMkJBQTJCO21HQUEzQiwyQkFBMkIsb0dDdkV4Qyx1NURBNkNBOzs0RkQwQmEsMkJBQTJCO2tCQUp2QyxTQUFTOytCQUNFLHNCQUFzQjs4QkFJdkIsSUFBSTtzQkFBWixLQUFLO2dCQUVHLElBQUk7c0JBQVosS0FBSyIsInNvdXJjZXNDb250ZW50IjpbIi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBNRVRBREFUQS1WSUVXRVIudHNcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbmltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuLyoqXG4gKiBJbnRlcmZhY2UgZm9yIE1ldGFkYXRhVmlld2VyQ29tcG9uZW50J3MgXCJpdGVtc1wiXG4gKiBAcHJvcGVydHkgbGFiZWwgKG9wdGlvbmFsKVxuICogQHByb3BlcnR5IHZhbHVlIChvcHRpb25hbClcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBNZXRhZGF0YVZpZXdlckl0ZW1zIHtcbiAgLyoqXG4gICAqIHRoZSBpdGVtJ3MgbGFiZWxcbiAgICovXG4gIGxhYmVsPzogc3RyaW5nO1xuICAvKipcbiAgICogdGhlIHZhbHVlIGZvciBAcHJvcGVydHkgbGFiZWxcbiAgICovXG4gIHZhbHVlPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIEludGVyZmFjZSBmb3IgTWV0YWRhdGFWaWV3ZXJDb21wb25lbnQncyBcImRhdGFcIlxuICpcbiAqIEBwcm9wZXJ0eSB0aXRsZSAob3B0aW9uYWwpXG4gKiBAcHJvcGVydHkgaXRlbXMgKG9wdGlvbmFsKVxuICogQHByb3BlcnR5IGdyb3VwIChvcHRpb25hbClcbiAqIEBwcm9wZXJ0eSBjbGFzc2VzIChvcHRpb25hbClcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBNZXRhZGF0YVZpZXdlckNoaWxkR3JvdXBzIHtcbiAgLyoqXG4gICAqIGNvbXBvbmVudCBoZWFkZXIgKGlmIHJvb3QpXG4gICAqIG9yIGdyb3VwIHRpdGxlXG4gICAqL1xuICB0aXRsZT86IHN0cmluZztcbiAgLyoqXG4gICAqIHRoZSBtZXRhZGF0YSBpdGVtc1xuICAgKi9cbiAgaXRlbXM/OiBNZXRhZGF0YVZpZXdlckl0ZW1zW107XG4gIC8qKlxuICAgKiB0aGUgQ0hJTEQgbWV0YWRhdGEgZ3JvdXBzXG4gICAqL1xuICBncm91cD86IE1ldGFkYXRhVmlld2VyQ2hpbGRHcm91cHNbXTtcbiAgLyoqXG4gICAqIGFkZGl0aW9uYWwgaHRtbCBjbGFzc2VzXG4gICAqL1xuICBjbGFzc2VzPzogYW55O1xufVxuXG4vKipcbiAqIEludGVyZmFjZSBmb3IgTWV0YWRhdGFWaWV3ZXJDb21wb25lbnQncyBcImRhdGFcIlxuICpcbiAqIEBwcm9wZXJ0eSBncm91cCAocmVxdWlyZWQpXG4gKiBAcHJvcGVydHkgY2xhc3NlcyAob3B0aW9uYWwpXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTWV0YWRhdGFWaWV3ZXJEYXRhIHtcbiAgLyoqXG4gICAqIHRoZSBDSElMRCBtZXRhZGF0YSBncm91cHNcbiAgICovXG4gIGdyb3VwOiBNZXRhZGF0YVZpZXdlckNoaWxkR3JvdXBzW107XG4gIC8qKlxuICAgKiBhZGRpdGlvbmFsIGh0bWwgY2xhc3Nlc1xuICAgKi9cbiAgY2xhc3Nlcz86IGFueTtcbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbXItbWV0YWRhdGEtcmVhZG1vcmUnLFxuICB0ZW1wbGF0ZVVybDogJy4vbWV0YWRhdGEtd2l0aC1yZWFkbW9yZS5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBNck1ldGFkYXRhUmVhZG1vcmVDb21wb25lbnQge1xuICBASW5wdXQoKSBkYXRhOiBNZXRhZGF0YVZpZXdlckRhdGE7XG5cbiAgQElucHV0KCkgZW1pdDogYW55O1xufVxuIiwiPGRpdiAqbmdJZj1cImRhdGFcIlxuICAgICBjbGFzcz1cIm43LW1ldGFkYXRhLXZpZXdlclwiPlxuICAgIDwhLS0gTWV0YWRhdGEgZ3JvdXBzIHdyYXBwZXIgLS0+XG4gICAgPGRpdiBjbGFzcz1cIm43LW1ldGFkYXRhLXZpZXdlcl9fd3JhcHBlciB7eyBkYXRhLmNsYXNzZXMgIHx8ICcnfX1cIlxuICAgICAgICAgKm5nRm9yPVwibGV0IGdycCBvZiBkYXRhLmdyb3VwXCI+XG4gICAgICAgIDwhLS0gRm9yIGVhY2ggZGF0YSBncm91cCwgcmVuZGVyIGl0IC0tPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiZ3JvdXA7IGNvbnRleHQ6eyRpbXBsaWNpdDogZ3JwfVwiPjwvbmctY29udGFpbmVyPlxuICAgIDwvZGl2PlxuPC9kaXY+XG5cbjwhLS0gVGVtcGxhdGUgZm9yIE1ldGFkYXRhLmdyb3VwIC0tPlxuPG5nLXRlbXBsYXRlICNncm91cFxuICAgICAgICAgICAgIGxldC1ncnA+XG4gICAgPGRpdiAqbmdJZj1cImdycC50aXRsZSB8fCBncnAuaXRlbXNcIlxuICAgICAgICAgY2xhc3M9XCJuNy1tZXRhZGF0YS12aWV3ZXJfX2dyb3VwIHt7IGdycC5jbGFzc2VzIHx8ICcnIH19XCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJuNy1tZXRhZGF0YS12aWV3ZXJfX2dyb3VwLXRpdGxlXCJcbiAgICAgICAgICAgICAqbmdJZj1cImdycC50aXRsZVwiPnt7Z3JwLnRpdGxlfX08L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm43LW1ldGFkYXRhLXZpZXdlcl9fZ3JvdXAtY29udGVudFwiXG4gICAgICAgICAgICAgKm5nSWY9XCJncnAuaXRlbXNcIj5cbiAgICAgICAgICAgIDwhLS0gXCJyZWFkIG1vcmVcIiBlbmFibGVkIG9uIHRoZSBtZXRhZGF0YSBncm91cCAtLT5cbiAgICAgICAgICAgIDxtci1yZWFkLW1vcmUgW2RhdGFdPVwiZ3JwLmdyb3VwUmVhZG1vcmVcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibjctbWV0YWRhdGEtdmlld2VyX19pdGVtXCJcbiAgICAgICAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IGkgb2YgZ3JwLml0ZW1zXCI+XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiaS5sYWJlbFwiIGNsYXNzPVwibjctbWV0YWRhdGEtdmlld2VyX19pdGVtLWxhYmVsXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICB7eyBpLmxhYmVsIH19XG4gICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgPCEtLSBcInJlYWQgbW9yZVwiIGVuYWJsZWQgb24gdGhlIG1ldGFkYXRhIHZhbHVlIGZpZWxkIC0tPlxuICAgICAgICAgICAgICAgICAgICA8bXItcmVhZC1tb3JlIFtkYXRhXT1cImdycC5yZWFkbW9yZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJpLnZhbHVlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cIm43LW1ldGFkYXRhLXZpZXdlcl9faXRlbS12YWx1ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2lubmVySFRNTF09XCJpLnZhbHVlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIDwvbXItcmVhZC1tb3JlPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9tci1yZWFkLW1vcmU+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDwhLS0gUmVuZGVyIGFsbCBjaGlsZCBncm91cHMgLS0+XG4gICAgPGRpdiAqbmdJZj1cImdycC5ncm91cFwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwibjctbWV0YWRhdGEtdmlld2VyX19ncm91cC13cmFwcGVyXCJcbiAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgZ3JwIG9mIGdycC5ncm91cFwiPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImdyb3VwOyBjb250ZXh0OnskaW1wbGljaXQ6IGdycH1cIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L25nLXRlbXBsYXRlPlxuIl19
@@ -0,0 +1,59 @@
1
+ //---------------------------
2
+ // ReadMore.ts
3
+ //---------------------------
4
+ import { Component, Input, ViewChild, ElementRef } from '@angular/core';
5
+ import { _t } from '@net7/core';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "@angular/common";
8
+ const HEIGHT_MARGIN = 50;
9
+ export class ReadMoreComponent {
10
+ constructor() {
11
+ this.collapsed = true;
12
+ this.hasReadmore = false;
13
+ this._loaded = false;
14
+ }
15
+ /**
16
+ * Determine if the view is taller than the given height limit,
17
+ * if it is, render the "Read-more" button.
18
+ */
19
+ ngAfterViewChecked() {
20
+ if (this._loaded || !this.data)
21
+ return;
22
+ if (this.root && this.root.nativeElement.clientHeight > 0) {
23
+ this._loaded = true;
24
+ this.clientHeight = this.root.nativeElement.clientHeight;
25
+ const { height, labels } = this.data;
26
+ // translate labels
27
+ Object.keys(labels).forEach((key) => {
28
+ this.data.labels[key] = _t(labels[key]);
29
+ });
30
+ if (this.clientHeight > (height + HEIGHT_MARGIN)) {
31
+ setTimeout(() => {
32
+ this.hasReadmore = true;
33
+ this.updateWrapperHeight();
34
+ });
35
+ }
36
+ }
37
+ }
38
+ handleToggle() {
39
+ this.collapsed = !this.collapsed;
40
+ this.updateWrapperHeight();
41
+ }
42
+ updateWrapperHeight() {
43
+ this.wrapperHeight = this.collapsed
44
+ ? this.data.height
45
+ : this.clientHeight;
46
+ }
47
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: ReadMoreComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
48
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.11", type: ReadMoreComponent, selector: "mr-read-more", inputs: { data: "data" }, viewQueries: [{ propertyName: "root", first: true, predicate: ["root"], descendants: true, read: ElementRef }], ngImport: i0, template: "<div #root class=\"mr-read-more\"\n [ngClass]=\"{\n 'is-collapsed': !!(hasReadmore && collapsed),\n 'is-expanded': !!(hasReadmore && !collapsed)\n }\">\n <div class=\"mr-read-more__content\"\n [ngStyle]=\"{\n height: hasReadmore ? wrapperHeight + 'px' : false\n }\">\n <!-- Child component -->\n <ng-content class=\"content\"></ng-content>\n </div>\n <div *ngIf=\"hasReadmore\" class=\"mr-read-more__btn\" (click)=\"handleToggle()\">\n <span class=\"n7-icon-{{ collapsed ? 'plus' : 'minus' }}\"></span>\n <span class=\"mr-read-more__btn-text\">{{ collapsed ? data.labels.more : data.labels.less }}</span>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] }); }
49
+ }
50
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: ReadMoreComponent, decorators: [{
51
+ type: Component,
52
+ args: [{ selector: 'mr-read-more', template: "<div #root class=\"mr-read-more\"\n [ngClass]=\"{\n 'is-collapsed': !!(hasReadmore && collapsed),\n 'is-expanded': !!(hasReadmore && !collapsed)\n }\">\n <div class=\"mr-read-more__content\"\n [ngStyle]=\"{\n height: hasReadmore ? wrapperHeight + 'px' : false\n }\">\n <!-- Child component -->\n <ng-content class=\"content\"></ng-content>\n </div>\n <div *ngIf=\"hasReadmore\" class=\"mr-read-more__btn\" (click)=\"handleToggle()\">\n <span class=\"n7-icon-{{ collapsed ? 'plus' : 'minus' }}\"></span>\n <span class=\"mr-read-more__btn-text\">{{ collapsed ? data.labels.more : data.labels.less }}</span>\n </div>\n</div>\n" }]
53
+ }], propDecorators: { data: [{
54
+ type: Input
55
+ }], root: [{
56
+ type: ViewChild,
57
+ args: ['root', { read: ElementRef }]
58
+ }] } });
59
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVhZC1tb3JlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbjctYm9pbGVycGxhdGUtbXVydWNhL3NyYy9saWIvY29tcG9uZW50cy9yZWFkLW1vcmUvcmVhZC1tb3JlLnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbjctYm9pbGVycGxhdGUtbXVydWNhL3NyYy9saWIvY29tcG9uZW50cy9yZWFkLW1vcmUvcmVhZC1tb3JlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsNkJBQTZCO0FBQzdCLGNBQWM7QUFDZCw2QkFBNkI7QUFFN0IsT0FBTyxFQUNMLFNBQVMsRUFBRSxLQUFLLEVBQW9CLFNBQVMsRUFBRSxVQUFVLEVBQzFELE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxZQUFZLENBQUM7OztBQVVoQyxNQUFNLGFBQWEsR0FBRyxFQUFFLENBQUM7QUFNekIsTUFBTSxPQUFPLGlCQUFpQjtJQUo5QjtRQVVFLGNBQVMsR0FBRyxJQUFJLENBQUM7UUFFakIsZ0JBQVcsR0FBRyxLQUFLLENBQUM7UUFNcEIsWUFBTyxHQUFHLEtBQUssQ0FBQztLQXFDakI7SUFuQ0M7OztPQUdHO0lBQ0gsa0JBQWtCO1FBQ2hCLElBQUksSUFBSSxDQUFDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJO1lBQUUsT0FBTztRQUN2QyxJQUFJLElBQUksQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsWUFBWSxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQzFELElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO1lBQ3BCLElBQUksQ0FBQyxZQUFZLEdBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxhQUE2QixDQUFDLFlBQVksQ0FBQztZQUMxRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUM7WUFFckMsbUJBQW1CO1lBQ25CLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUU7Z0JBQ2xDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztZQUMxQyxDQUFDLENBQUMsQ0FBQztZQUVILElBQUksSUFBSSxDQUFDLFlBQVksR0FBRyxDQUFDLE1BQU0sR0FBRyxhQUFhLENBQUMsRUFBRSxDQUFDO2dCQUNqRCxVQUFVLENBQUMsR0FBRyxFQUFFO29CQUNkLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDO29CQUN4QixJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztnQkFDN0IsQ0FBQyxDQUFDLENBQUM7WUFDTCxDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7SUFFRCxZQUFZO1FBQ1YsSUFBSSxDQUFDLFNBQVMsR0FBRyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUM7UUFDakMsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7SUFDN0IsQ0FBQztJQUVELG1CQUFtQjtRQUNqQixJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxTQUFTO1lBQ2pDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU07WUFDbEIsQ0FBQyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUM7SUFDeEIsQ0FBQzsrR0FsRFUsaUJBQWlCO21HQUFqQixpQkFBaUIsdUpBSUQsVUFBVSw2QkMzQnZDLHN1QkFpQkE7OzRGRE1hLGlCQUFpQjtrQkFKN0IsU0FBUzsrQkFDRSxjQUFjOzhCQUlmLElBQUk7c0JBQVosS0FBSztnQkFHbUMsSUFBSTtzQkFBNUMsU0FBUzt1QkFBQyxNQUFNLEVBQUUsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFJlYWRNb3JlLnRzXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5pbXBvcnQge1xuICBDb21wb25lbnQsIElucHV0LCBBZnRlclZpZXdDaGVja2VkLCBWaWV3Q2hpbGQsIEVsZW1lbnRSZWZcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBfdCB9IGZyb20gJ0BuZXQ3L2NvcmUnO1xuXG5leHBvcnQgdHlwZSBSZWFkTW9yZURhdGEgPSB7XG4gIGhlaWdodDogbnVtYmVyO1xuICBsYWJlbHM6IHtcbiAgICBtb3JlOiBzdHJpbmc7XG4gICAgbGVzczogc3RyaW5nO1xuICB9O1xufTtcblxuY29uc3QgSEVJR0hUX01BUkdJTiA9IDUwO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdtci1yZWFkLW1vcmUnLFxuICB0ZW1wbGF0ZVVybDogJy4vcmVhZC1tb3JlLmh0bWwnLFxufSlcbmV4cG9ydCBjbGFzcyBSZWFkTW9yZUNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0NoZWNrZWQge1xuICBASW5wdXQoKSBkYXRhOiBSZWFkTW9yZURhdGE7XG5cbiAgLy8gUm9vdCBkaXZcbiAgQFZpZXdDaGlsZCgncm9vdCcsIHsgcmVhZDogRWxlbWVudFJlZiB9KSByb290OiBFbGVtZW50UmVmO1xuXG4gIGNvbGxhcHNlZCA9IHRydWU7XG5cbiAgaGFzUmVhZG1vcmUgPSBmYWxzZTtcblxuICB3cmFwcGVySGVpZ2h0OiBudW1iZXI7XG5cbiAgY2xpZW50SGVpZ2h0OiBudW1iZXI7XG5cbiAgX2xvYWRlZCA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBEZXRlcm1pbmUgaWYgdGhlIHZpZXcgaXMgdGFsbGVyIHRoYW4gdGhlIGdpdmVuIGhlaWdodCBsaW1pdCxcbiAgICogaWYgaXQgaXMsIHJlbmRlciB0aGUgXCJSZWFkLW1vcmVcIiBidXR0b24uXG4gICAqL1xuICBuZ0FmdGVyVmlld0NoZWNrZWQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX2xvYWRlZCB8fCAhdGhpcy5kYXRhKSByZXR1cm47XG4gICAgaWYgKHRoaXMucm9vdCAmJiB0aGlzLnJvb3QubmF0aXZlRWxlbWVudC5jbGllbnRIZWlnaHQgPiAwKSB7XG4gICAgICB0aGlzLl9sb2FkZWQgPSB0cnVlO1xuICAgICAgdGhpcy5jbGllbnRIZWlnaHQgPSAodGhpcy5yb290Lm5hdGl2ZUVsZW1lbnQgYXMgSFRNTEVsZW1lbnQpLmNsaWVudEhlaWdodDtcbiAgICAgIGNvbnN0IHsgaGVpZ2h0LCBsYWJlbHMgfSA9IHRoaXMuZGF0YTtcblxuICAgICAgLy8gdHJhbnNsYXRlIGxhYmVsc1xuICAgICAgT2JqZWN0LmtleXMobGFiZWxzKS5mb3JFYWNoKChrZXkpID0+IHtcbiAgICAgICAgdGhpcy5kYXRhLmxhYmVsc1trZXldID0gX3QobGFiZWxzW2tleV0pO1xuICAgICAgfSk7XG5cbiAgICAgIGlmICh0aGlzLmNsaWVudEhlaWdodCA+IChoZWlnaHQgKyBIRUlHSFRfTUFSR0lOKSkge1xuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICB0aGlzLmhhc1JlYWRtb3JlID0gdHJ1ZTtcbiAgICAgICAgICB0aGlzLnVwZGF0ZVdyYXBwZXJIZWlnaHQoKTtcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgaGFuZGxlVG9nZ2xlKCkge1xuICAgIHRoaXMuY29sbGFwc2VkID0gIXRoaXMuY29sbGFwc2VkO1xuICAgIHRoaXMudXBkYXRlV3JhcHBlckhlaWdodCgpO1xuICB9XG5cbiAgdXBkYXRlV3JhcHBlckhlaWdodCgpIHtcbiAgICB0aGlzLndyYXBwZXJIZWlnaHQgPSB0aGlzLmNvbGxhcHNlZFxuICAgICAgPyB0aGlzLmRhdGEuaGVpZ2h0XG4gICAgICA6IHRoaXMuY2xpZW50SGVpZ2h0O1xuICB9XG59XG4iLCI8ZGl2ICNyb290IGNsYXNzPVwibXItcmVhZC1tb3JlXCJcbiAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICdpcy1jb2xsYXBzZWQnOiAhIShoYXNSZWFkbW9yZSAmJiBjb2xsYXBzZWQpLFxuICAgICAgICAnaXMtZXhwYW5kZWQnOiAhIShoYXNSZWFkbW9yZSAmJiAhY29sbGFwc2VkKVxuICAgIH1cIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm1yLXJlYWQtbW9yZV9fY29udGVudFwiXG4gICAgICAgIFtuZ1N0eWxlXT1cIntcbiAgICAgICAgICAgIGhlaWdodDogaGFzUmVhZG1vcmUgPyB3cmFwcGVySGVpZ2h0ICsgJ3B4JyA6IGZhbHNlXG4gICAgICAgIH1cIj5cbiAgICAgICAgICAgIDwhLS0gQ2hpbGQgY29tcG9uZW50IC0tPlxuICAgICAgICAgICAgPG5nLWNvbnRlbnQgY2xhc3M9XCJjb250ZW50XCI+PC9uZy1jb250ZW50PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiAqbmdJZj1cImhhc1JlYWRtb3JlXCIgY2xhc3M9XCJtci1yZWFkLW1vcmVfX2J0blwiIChjbGljayk9XCJoYW5kbGVUb2dnbGUoKVwiPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJuNy1pY29uLXt7IGNvbGxhcHNlZCA/ICdwbHVzJyA6ICdtaW51cycgfX1cIj48L3NwYW4+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1yLXJlYWQtbW9yZV9fYnRuLXRleHRcIj57eyBjb2xsYXBzZWQgPyBkYXRhLmxhYmVscy5tb3JlIDogZGF0YS5sYWJlbHMubGVzcyB9fTwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
@@ -0,0 +1,87 @@
1
+ import { Component } from '@angular/core';
2
+ import { _t } from '@net7/core';
3
+ import { Subject } from 'rxjs';
4
+ import { filter, takeUntil } from 'rxjs/operators';
5
+ import { NavigationStart } from '@angular/router';
6
+ import { isEmpty } from 'lodash';
7
+ import { MrCollectionDS, MrInnerTitleDS, MrItemPreviewDS, MrMetadataDS, } from '../../data-sources';
8
+ import * as i0 from "@angular/core";
9
+ import * as i1 from "@angular/router";
10
+ import * as i2 from "../../services/resource-modal.service";
11
+ import * as i3 from "../../services/locale.service";
12
+ import * as i4 from "@angular/common";
13
+ import * as i5 from "@net7/components";
14
+ import * as i6 from "../read-more/read-more";
15
+ const DATASOURCE_MAP = {
16
+ collection: MrCollectionDS,
17
+ metadata: MrMetadataDS,
18
+ preview: MrItemPreviewDS,
19
+ title: MrInnerTitleDS,
20
+ };
21
+ export class MrResourceModalComponent {
22
+ constructor(router, modalService, localeService) {
23
+ this.router = router;
24
+ this.modalService = modalService;
25
+ this.localeService = localeService;
26
+ this.destroy$ = new Subject();
27
+ this.status = 'IDLE';
28
+ this.widgets = {};
29
+ this.errorTitle = _t('global#layout_error_title');
30
+ this.errorDescription = _t('global#layout_error_description');
31
+ }
32
+ ngOnInit() {
33
+ this.modalService.state$
34
+ .pipe(takeUntil(this.destroy$))
35
+ .subscribe(({ status, config, response }) => {
36
+ this.status = status;
37
+ this.config = config;
38
+ if (status === 'SUCCESS') {
39
+ this.loadWidgets(config, response);
40
+ }
41
+ });
42
+ // on router change close
43
+ this.router.events.pipe(takeUntil(this.destroy$), filter(() => !isEmpty(this.widgets)), filter((event) => event instanceof NavigationStart)).subscribe(() => {
44
+ this.onClose();
45
+ });
46
+ }
47
+ ngOnDestroy() {
48
+ // reset
49
+ this.onClose();
50
+ this.destroy$.next();
51
+ }
52
+ onClose(target) {
53
+ if (target && target.className !== 'mr-resource-modal__overlay') {
54
+ return;
55
+ }
56
+ this.widgets = {};
57
+ this.modalService.close();
58
+ }
59
+ loadWidgets(config, response) {
60
+ const { top, content } = config.sections;
61
+ const sections = top.concat(content);
62
+ if (sections) {
63
+ sections.forEach(({ id, type, options }) => {
64
+ const data = response.sections[id];
65
+ this.widgets[id] = {
66
+ ds: new DATASOURCE_MAP[type]()
67
+ };
68
+ // update options
69
+ this.widgets[id].ds.options = {
70
+ ...(options || {}),
71
+ localeService: this.localeService
72
+ };
73
+ // update data
74
+ if (data) {
75
+ this.widgets[id].ds.update(data);
76
+ }
77
+ });
78
+ }
79
+ }
80
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: MrResourceModalComponent, deps: [{ token: i1.Router }, { token: i2.MrResourceModalService }, { token: i3.MrLocaleService }], target: i0.ɵɵFactoryTarget.Component }); }
81
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.11", type: MrResourceModalComponent, selector: "mr-resource-modal", ngImport: i0, template: "<div *ngIf=\"status !== 'IDLE'\" class=\"mr-modal mr-resource-modal\" [ngClass]=\"{\n 'is-loading': status === 'LOADING',\n 'is-error': status === 'ERROR'\n }\">\n <div class=\"mr-modal__overlay\" (click)=\"onClose($event.target)\">\n <div class=\"mr-modal__window mr-resource-modal__window\">\n <ng-container [ngSwitch]=\"status\">\n\n <!-- Loading -->\n <ng-container *ngSwitchCase=\"'LOADING'\">\n <div class=\"mr-modal__loader\">\n <n7-loader></n7-loader>\n </div>\n </ng-container>\n\n <!-- Error -->\n <ng-container *ngSwitchCase=\"'ERROR'\">\n\n <div class=\"mr-modal__header mr-resource-modal__header\">\n <h2 class=\"mr-modal__header-title\">\n {{ errorTitle }}\n </h2>\n <div class=\"mr-modal__close\">\n <a class=\"mr-modal__close-link\" (click)=\"onClose()\"><span class=\"n7-icon-close\"></span></a>\n </div>\n </div>\n <div class=\"mr-modal__content\">\n <p class=\"mr-modal__error-text\">{{ errorDescription }}</p>\n </div>\n\n </ng-container>\n\n <!-- Success -->\n <ng-container *ngSwitchCase=\"'SUCCESS'\">\n \n <div class=\"mr-modal__header mr-resource-modal__header\">\n <ng-container *ngIf=\"config.sections as sections\">\n <ng-container *ngTemplateOutlet=\"blocks; context: { $implicit: sections.top }\"></ng-container>\n </ng-container>\n <div class=\"mr-modal__close\">\n <a class=\"mr-modal__close-link\" (click)=\"onClose()\"><span class=\"n7-icon-close\"></span></a>\n </div>\n </div>\n <div class=\"mr-modal__content mr-resource-modal__content\">\n <ng-container *ngIf=\"config.sections as sections\">\n <ng-container *ngTemplateOutlet=\"blocks; context: { $implicit: sections.content }\"></ng-container> \n </ng-container>\n </div>\n </ng-container>\n\n </ng-container>\n\n </div>\n </div>\n</div>\n\n<ng-template #blocks let-list>\n <ng-container *ngFor=\"let section of list\">\n <section *ngIf=\"widgets[section.id].ds && (widgets[section.id].ds.out$ | async)\"\n class=\"{{ 'mr-resource__section mr-resource__' + section.type }}\">\n <ng-container [ngSwitch]=\"section.type\">\n\n <!-- INNER TITLE -->\n <ng-container *ngSwitchCase=\"'title'\">\n <n7-inner-title [data]=\"widgets[section.id].ds.out$ | async\">\n </n7-inner-title>\n </ng-container>\n\n <!-- METADATA VIEWER -->\n <ng-container *ngSwitchCase=\"'metadata'\">\n <div class=\"mr-resource-modal__metadata-content\">\n <h3 *ngIf=\"section.title\" class=\"mr-resource-modal__section-title mr-resource__metadata-title\">\n {{ section.title }}\n </h3>\n <mr-read-more [data]=\"section.readmore\">\n <n7-metadata-viewer [data]=\"widgets[section.id].ds.out$ | async\">\n </n7-metadata-viewer>\n </mr-read-more>\n </div>\n </ng-container>\n\n <!-- COLLECTION -->\n <ng-container *ngSwitchCase=\"'collection'\">\n <ng-container *ngIf=\"widgets[section.id].ds.out$ | async as collection$\">\n <div *ngIf=\"collection$.items?.length > 0\" class=\"mr-resource__collection-content\">\n <h3 *ngIf=\"section.title\" class=\"mr-resource-modal__section-title\">\n {{ section.title }}\n </h3>\n <div\n class=\"mr-resource__collection-grid {{ section.grid ? 'n7-grid-' + section.grid : '' }}\">\n <n7-item-preview *ngFor=\"let item of collection$?.items\" [data]=\"item\">\n </n7-item-preview>\n </div>\n </div>\n </ng-container>\n </ng-container>\n\n <!-- ITEM PREVIEW -->\n <ng-container *ngSwitchCase=\"'preview'\">\n <h3 *ngIf=\"section.title\" class=\"mr-resource-modal__section-title\">\n {{ section.title }}\n </h3>\n <n7-item-preview [data]=\"widgets[section.id].ds.out$ | async\">\n </n7-item-preview>\n </ng-container>\n\n </ng-container>\n </section>\n </ng-container>\n</ng-template>\n", dependencies: [{ kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i4.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i4.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i5.InnerTitleComponent, selector: "n7-inner-title", inputs: ["data", "emit"] }, { kind: "component", type: i5.ItemPreviewComponent, selector: "n7-item-preview", inputs: ["data", "emit"] }, { kind: "component", type: i5.LoaderComponent, selector: "n7-loader", inputs: ["data"] }, { kind: "component", type: i5.MetadataViewerComponent, selector: "n7-metadata-viewer", inputs: ["data", "emit"] }, { kind: "component", type: i6.ReadMoreComponent, selector: "mr-read-more", inputs: ["data"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }] }); }
82
+ }
83
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: MrResourceModalComponent, decorators: [{
84
+ type: Component,
85
+ args: [{ selector: 'mr-resource-modal', template: "<div *ngIf=\"status !== 'IDLE'\" class=\"mr-modal mr-resource-modal\" [ngClass]=\"{\n 'is-loading': status === 'LOADING',\n 'is-error': status === 'ERROR'\n }\">\n <div class=\"mr-modal__overlay\" (click)=\"onClose($event.target)\">\n <div class=\"mr-modal__window mr-resource-modal__window\">\n <ng-container [ngSwitch]=\"status\">\n\n <!-- Loading -->\n <ng-container *ngSwitchCase=\"'LOADING'\">\n <div class=\"mr-modal__loader\">\n <n7-loader></n7-loader>\n </div>\n </ng-container>\n\n <!-- Error -->\n <ng-container *ngSwitchCase=\"'ERROR'\">\n\n <div class=\"mr-modal__header mr-resource-modal__header\">\n <h2 class=\"mr-modal__header-title\">\n {{ errorTitle }}\n </h2>\n <div class=\"mr-modal__close\">\n <a class=\"mr-modal__close-link\" (click)=\"onClose()\"><span class=\"n7-icon-close\"></span></a>\n </div>\n </div>\n <div class=\"mr-modal__content\">\n <p class=\"mr-modal__error-text\">{{ errorDescription }}</p>\n </div>\n\n </ng-container>\n\n <!-- Success -->\n <ng-container *ngSwitchCase=\"'SUCCESS'\">\n \n <div class=\"mr-modal__header mr-resource-modal__header\">\n <ng-container *ngIf=\"config.sections as sections\">\n <ng-container *ngTemplateOutlet=\"blocks; context: { $implicit: sections.top }\"></ng-container>\n </ng-container>\n <div class=\"mr-modal__close\">\n <a class=\"mr-modal__close-link\" (click)=\"onClose()\"><span class=\"n7-icon-close\"></span></a>\n </div>\n </div>\n <div class=\"mr-modal__content mr-resource-modal__content\">\n <ng-container *ngIf=\"config.sections as sections\">\n <ng-container *ngTemplateOutlet=\"blocks; context: { $implicit: sections.content }\"></ng-container> \n </ng-container>\n </div>\n </ng-container>\n\n </ng-container>\n\n </div>\n </div>\n</div>\n\n<ng-template #blocks let-list>\n <ng-container *ngFor=\"let section of list\">\n <section *ngIf=\"widgets[section.id].ds && (widgets[section.id].ds.out$ | async)\"\n class=\"{{ 'mr-resource__section mr-resource__' + section.type }}\">\n <ng-container [ngSwitch]=\"section.type\">\n\n <!-- INNER TITLE -->\n <ng-container *ngSwitchCase=\"'title'\">\n <n7-inner-title [data]=\"widgets[section.id].ds.out$ | async\">\n </n7-inner-title>\n </ng-container>\n\n <!-- METADATA VIEWER -->\n <ng-container *ngSwitchCase=\"'metadata'\">\n <div class=\"mr-resource-modal__metadata-content\">\n <h3 *ngIf=\"section.title\" class=\"mr-resource-modal__section-title mr-resource__metadata-title\">\n {{ section.title }}\n </h3>\n <mr-read-more [data]=\"section.readmore\">\n <n7-metadata-viewer [data]=\"widgets[section.id].ds.out$ | async\">\n </n7-metadata-viewer>\n </mr-read-more>\n </div>\n </ng-container>\n\n <!-- COLLECTION -->\n <ng-container *ngSwitchCase=\"'collection'\">\n <ng-container *ngIf=\"widgets[section.id].ds.out$ | async as collection$\">\n <div *ngIf=\"collection$.items?.length > 0\" class=\"mr-resource__collection-content\">\n <h3 *ngIf=\"section.title\" class=\"mr-resource-modal__section-title\">\n {{ section.title }}\n </h3>\n <div\n class=\"mr-resource__collection-grid {{ section.grid ? 'n7-grid-' + section.grid : '' }}\">\n <n7-item-preview *ngFor=\"let item of collection$?.items\" [data]=\"item\">\n </n7-item-preview>\n </div>\n </div>\n </ng-container>\n </ng-container>\n\n <!-- ITEM PREVIEW -->\n <ng-container *ngSwitchCase=\"'preview'\">\n <h3 *ngIf=\"section.title\" class=\"mr-resource-modal__section-title\">\n {{ section.title }}\n </h3>\n <n7-item-preview [data]=\"widgets[section.id].ds.out$ | async\">\n </n7-item-preview>\n </ng-container>\n\n </ng-container>\n </section>\n </ng-container>\n</ng-template>\n" }]
86
+ }], ctorParameters: () => [{ type: i1.Router }, { type: i2.MrResourceModalService }, { type: i3.MrLocaleService }] });
87
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzb3VyY2UtbW9kYWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uNy1ib2lsZXJwbGF0ZS1tdXJ1Y2Evc3JjL2xpYi9jb21wb25lbnRzL3Jlc291cmNlLW1vZGFsL3Jlc291cmNlLW1vZGFsLnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbjctYm9pbGVycGxhdGUtbXVydWNhL3NyYy9saWIvY29tcG9uZW50cy9yZXNvdXJjZS1tb2RhbC9yZXNvdXJjZS1tb2RhbC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUNoQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbkQsT0FBTyxFQUFFLGVBQWUsRUFBVSxNQUFNLGlCQUFpQixDQUFDO0FBQzFELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFJakMsT0FBTyxFQUNMLGNBQWMsRUFDZCxjQUFjLEVBQ2QsZUFBZSxFQUNmLFlBQVksR0FDYixNQUFNLG9CQUFvQixDQUFDOzs7Ozs7OztBQUU1QixNQUFNLGNBQWMsR0FBRztJQUNyQixVQUFVLEVBQUUsY0FBYztJQUMxQixRQUFRLEVBQUUsWUFBWTtJQUN0QixPQUFPLEVBQUUsZUFBZTtJQUN4QixLQUFLLEVBQUUsY0FBYztDQUN0QixDQUFDO0FBTUYsTUFBTSxPQUFPLHdCQUF3QjtJQWlCbkMsWUFDVSxNQUFjLEVBQ2QsWUFBb0MsRUFDcEMsYUFBOEI7UUFGOUIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLGlCQUFZLEdBQVosWUFBWSxDQUF3QjtRQUNwQyxrQkFBYSxHQUFiLGFBQWEsQ0FBaUI7UUFuQmhDLGFBQVEsR0FBa0IsSUFBSSxPQUFPLEVBQUUsQ0FBQztRQUV6QyxXQUFNLEdBQWdCLE1BQU0sQ0FBQztRQUk3QixZQUFPLEdBSVYsRUFBRSxDQUFDO1FBRUEsZUFBVSxHQUFHLEVBQUUsQ0FBQywyQkFBMkIsQ0FBQyxDQUFDO1FBRTdDLHFCQUFnQixHQUFHLEVBQUUsQ0FBQyxpQ0FBaUMsQ0FBQyxDQUFDO0lBTTVELENBQUM7SUFFTCxRQUFRO1FBQ04sSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNO2FBQ3JCLElBQUksQ0FDSCxTQUFTLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUN6QjthQUNBLFNBQVMsQ0FBQyxDQUFDLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsRUFBRSxFQUFFO1lBQzFDLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO1lBQ3JCLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO1lBRXJCLElBQUksTUFBTSxLQUFLLFNBQVMsRUFBRSxDQUFDO2dCQUN6QixJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sRUFBRSxRQUFRLENBQUMsQ0FBQztZQUNyQyxDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7UUFFTCx5QkFBeUI7UUFDekIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUNyQixTQUFTLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUN4QixNQUFNLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEVBQ3BDLE1BQU0sQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSyxZQUFZLGVBQWUsQ0FBQyxDQUNwRCxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDZixJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDakIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsV0FBVztRQUNULFFBQVE7UUFDUixJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDZixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxPQUFPLENBQUMsTUFBOEI7UUFDcEMsSUFBSSxNQUFNLElBQUksTUFBTSxDQUFDLFNBQVMsS0FBSyw0QkFBNEIsRUFBRSxDQUFDO1lBQ2hFLE9BQU87UUFDVCxDQUFDO1FBQ0QsSUFBSSxDQUFDLE9BQU8sR0FBRyxFQUFFLENBQUM7UUFDbEIsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUM1QixDQUFDO0lBRU8sV0FBVyxDQUFDLE1BQU0sRUFBRSxRQUFRO1FBQ2xDLE1BQU0sRUFBRSxHQUFHLEVBQUUsT0FBTyxFQUFFLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQztRQUN6QyxNQUFNLFFBQVEsR0FBRyxHQUFHLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3JDLElBQUksUUFBUSxFQUFFLENBQUM7WUFDYixRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxFQUFFLEVBQUU7Z0JBQ3pDLE1BQU0sSUFBSSxHQUFHLFFBQVEsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUM7Z0JBQ25DLElBQUksQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLEdBQUc7b0JBQ2pCLEVBQUUsRUFBRSxJQUFJLGNBQWMsQ0FBQyxJQUFJLENBQUMsRUFBRTtpQkFDL0IsQ0FBQztnQkFFRixpQkFBaUI7Z0JBQ2pCLElBQUksQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLE9BQU8sR0FBRztvQkFDNUIsR0FBRyxDQUFDLE9BQU8sSUFBSSxFQUFFLENBQUM7b0JBQ2xCLGFBQWEsRUFBRSxJQUFJLENBQUMsYUFBYTtpQkFDbEMsQ0FBQztnQkFFRixjQUFjO2dCQUNkLElBQUksSUFBSSxFQUFFLENBQUM7b0JBQ1QsSUFBSSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUNuQyxDQUFDO1lBQ0gsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDO0lBQ0gsQ0FBQzsrR0FuRlUsd0JBQXdCO21HQUF4Qix3QkFBd0IseURDN0JyQyxxc0tBOEdBOzs0RkRqRmEsd0JBQXdCO2tCQUpwQyxTQUFTOytCQUNFLG1CQUFtQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCwgT25EZXN0cm95LCBPbkluaXRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBfdCB9IGZyb20gJ0BuZXQ3L2NvcmUnO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZmlsdGVyLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBOYXZpZ2F0aW9uU3RhcnQsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBpc0VtcHR5IH0gZnJvbSAnbG9kYXNoJztcbmltcG9ydCB7IE1yTG9jYWxlU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2xvY2FsZS5zZXJ2aWNlJztcbmltcG9ydCB7IE1vZGFsU3RhdHVzLCBNclJlc291cmNlTW9kYWxTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvcmVzb3VyY2UtbW9kYWwuc2VydmljZSc7XG5cbmltcG9ydCB7XG4gIE1yQ29sbGVjdGlvbkRTLFxuICBNcklubmVyVGl0bGVEUyxcbiAgTXJJdGVtUHJldmlld0RTLFxuICBNck1ldGFkYXRhRFMsXG59IGZyb20gJy4uLy4uL2RhdGEtc291cmNlcyc7XG5cbmNvbnN0IERBVEFTT1VSQ0VfTUFQID0ge1xuICBjb2xsZWN0aW9uOiBNckNvbGxlY3Rpb25EUyxcbiAgbWV0YWRhdGE6IE1yTWV0YWRhdGFEUyxcbiAgcHJldmlldzogTXJJdGVtUHJldmlld0RTLFxuICB0aXRsZTogTXJJbm5lclRpdGxlRFMsXG59O1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdtci1yZXNvdXJjZS1tb2RhbCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9yZXNvdXJjZS1tb2RhbC5odG1sJyxcbn0pXG5leHBvcnQgY2xhc3MgTXJSZXNvdXJjZU1vZGFsQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBwcml2YXRlIGRlc3Ryb3kkOiBTdWJqZWN0PHZvaWQ+ID0gbmV3IFN1YmplY3QoKTtcblxuICBwdWJsaWMgc3RhdHVzOiBNb2RhbFN0YXR1cyA9ICdJRExFJztcblxuICBwdWJsaWMgY29uZmlnOiBhbnk7XG5cbiAgcHVibGljIHdpZGdldHM6IHtcbiAgICBbaWQ6IHN0cmluZ106IHtcbiAgICAgIGRzOiBhbnk7XG4gICAgfTtcbiAgfSA9IHt9O1xuXG4gIHB1YmxpYyBlcnJvclRpdGxlID0gX3QoJ2dsb2JhbCNsYXlvdXRfZXJyb3JfdGl0bGUnKTtcblxuICBwdWJsaWMgZXJyb3JEZXNjcmlwdGlvbiA9IF90KCdnbG9iYWwjbGF5b3V0X2Vycm9yX2Rlc2NyaXB0aW9uJyk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcixcbiAgICBwcml2YXRlIG1vZGFsU2VydmljZTogTXJSZXNvdXJjZU1vZGFsU2VydmljZSxcbiAgICBwcml2YXRlIGxvY2FsZVNlcnZpY2U6IE1yTG9jYWxlU2VydmljZSxcbiAgKSB7IH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLm1vZGFsU2VydmljZS5zdGF0ZSRcbiAgICAgIC5waXBlKFxuICAgICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95JClcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKHsgc3RhdHVzLCBjb25maWcsIHJlc3BvbnNlIH0pID0+IHtcbiAgICAgICAgdGhpcy5zdGF0dXMgPSBzdGF0dXM7XG4gICAgICAgIHRoaXMuY29uZmlnID0gY29uZmlnO1xuXG4gICAgICAgIGlmIChzdGF0dXMgPT09ICdTVUNDRVNTJykge1xuICAgICAgICAgIHRoaXMubG9hZFdpZGdldHMoY29uZmlnLCByZXNwb25zZSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuXG4gICAgLy8gb24gcm91dGVyIGNoYW5nZSBjbG9zZVxuICAgIHRoaXMucm91dGVyLmV2ZW50cy5waXBlKFxuICAgICAgdGFrZVVudGlsKHRoaXMuZGVzdHJveSQpLFxuICAgICAgZmlsdGVyKCgpID0+ICFpc0VtcHR5KHRoaXMud2lkZ2V0cykpLFxuICAgICAgZmlsdGVyKChldmVudCkgPT4gZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uU3RhcnQpLFxuICAgICkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMub25DbG9zZSgpO1xuICAgIH0pO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgLy8gcmVzZXRcbiAgICB0aGlzLm9uQ2xvc2UoKTtcbiAgICB0aGlzLmRlc3Ryb3kkLm5leHQoKTtcbiAgfVxuXG4gIG9uQ2xvc2UodGFyZ2V0PzogeyBjbGFzc05hbWU6IHN0cmluZyB9KSB7XG4gICAgaWYgKHRhcmdldCAmJiB0YXJnZXQuY2xhc3NOYW1lICE9PSAnbXItcmVzb3VyY2UtbW9kYWxfX292ZXJsYXknKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMud2lkZ2V0cyA9IHt9O1xuICAgIHRoaXMubW9kYWxTZXJ2aWNlLmNsb3NlKCk7XG4gIH1cblxuICBwcml2YXRlIGxvYWRXaWRnZXRzKGNvbmZpZywgcmVzcG9uc2UpIHtcbiAgICBjb25zdCB7IHRvcCwgY29udGVudCB9ID0gY29uZmlnLnNlY3Rpb25zO1xuICAgIGNvbnN0IHNlY3Rpb25zID0gdG9wLmNvbmNhdChjb250ZW50KTtcbiAgICBpZiAoc2VjdGlvbnMpIHtcbiAgICAgIHNlY3Rpb25zLmZvckVhY2goKHsgaWQsIHR5cGUsIG9wdGlvbnMgfSkgPT4ge1xuICAgICAgICBjb25zdCBkYXRhID0gcmVzcG9uc2Uuc2VjdGlvbnNbaWRdO1xuICAgICAgICB0aGlzLndpZGdldHNbaWRdID0ge1xuICAgICAgICAgIGRzOiBuZXcgREFUQVNPVVJDRV9NQVBbdHlwZV0oKVxuICAgICAgICB9O1xuXG4gICAgICAgIC8vIHVwZGF0ZSBvcHRpb25zXG4gICAgICAgIHRoaXMud2lkZ2V0c1tpZF0uZHMub3B0aW9ucyA9IHtcbiAgICAgICAgICAuLi4ob3B0aW9ucyB8fCB7fSksXG4gICAgICAgICAgbG9jYWxlU2VydmljZTogdGhpcy5sb2NhbGVTZXJ2aWNlXG4gICAgICAgIH07XG5cbiAgICAgICAgLy8gdXBkYXRlIGRhdGFcbiAgICAgICAgaWYgKGRhdGEpIHtcbiAgICAgICAgICB0aGlzLndpZGdldHNbaWRdLmRzLnVwZGF0ZShkYXRhKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuICB9XG59XG4iLCI8ZGl2ICpuZ0lmPVwic3RhdHVzICE9PSAnSURMRSdcIiBjbGFzcz1cIm1yLW1vZGFsIG1yLXJlc291cmNlLW1vZGFsXCIgW25nQ2xhc3NdPVwie1xuICAgICAgICAnaXMtbG9hZGluZyc6IHN0YXR1cyA9PT0gJ0xPQURJTkcnLFxuICAgICAgICAnaXMtZXJyb3InOiBzdGF0dXMgPT09ICdFUlJPUidcbiAgICAgIH1cIj5cbiAgICA8ZGl2IGNsYXNzPVwibXItbW9kYWxfX292ZXJsYXlcIiAoY2xpY2spPVwib25DbG9zZSgkZXZlbnQudGFyZ2V0KVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwibXItbW9kYWxfX3dpbmRvdyBtci1yZXNvdXJjZS1tb2RhbF9fd2luZG93XCI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyIFtuZ1N3aXRjaF09XCJzdGF0dXNcIj5cblxuICAgICAgICAgICAgICAgIDwhLS0gTG9hZGluZyAtLT5cbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInTE9BRElORydcIj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1yLW1vZGFsX19sb2FkZXJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxuNy1sb2FkZXI+PC9uNy1sb2FkZXI+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgICAgICAgPCEtLSBFcnJvciAtLT5cbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInRVJST1InXCI+XG5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1yLW1vZGFsX19oZWFkZXIgbXItcmVzb3VyY2UtbW9kYWxfX2hlYWRlclwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGgyIGNsYXNzPVwibXItbW9kYWxfX2hlYWRlci10aXRsZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IGVycm9yVGl0bGUgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvaDI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXItbW9kYWxfX2Nsb3NlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgY2xhc3M9XCJtci1tb2RhbF9fY2xvc2UtbGlua1wiIChjbGljayk9XCJvbkNsb3NlKClcIj48c3BhbiBjbGFzcz1cIm43LWljb24tY2xvc2VcIj48L3NwYW4+PC9hPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXItbW9kYWxfX2NvbnRlbnRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwibXItbW9kYWxfX2Vycm9yLXRleHRcIj57eyBlcnJvckRlc2NyaXB0aW9uIH19PC9wPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgICAgICAgPCEtLSBTdWNjZXNzIC0tPlxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidTVUNDRVNTJ1wiPlxuICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1yLW1vZGFsX19oZWFkZXIgbXItcmVzb3VyY2UtbW9kYWxfX2hlYWRlclwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImNvbmZpZy5zZWN0aW9ucyBhcyBzZWN0aW9uc1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJibG9ja3M7IGNvbnRleHQ6IHsgJGltcGxpY2l0OiBzZWN0aW9ucy50b3AgfVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXItbW9kYWxfX2Nsb3NlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgY2xhc3M9XCJtci1tb2RhbF9fY2xvc2UtbGlua1wiIChjbGljayk9XCJvbkNsb3NlKClcIj48c3BhbiBjbGFzcz1cIm43LWljb24tY2xvc2VcIj48L3NwYW4+PC9hPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXItbW9kYWxfX2NvbnRlbnQgbXItcmVzb3VyY2UtbW9kYWxfX2NvbnRlbnRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJjb25maWcuc2VjdGlvbnMgYXMgc2VjdGlvbnNcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiYmxvY2tzOyBjb250ZXh0OiB7ICRpbXBsaWNpdDogc2VjdGlvbnMuY29udGVudCB9XCI+PC9uZy1jb250YWluZXI+ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbjwvZGl2PlxuXG48bmctdGVtcGxhdGUgI2Jsb2NrcyBsZXQtbGlzdD5cbiAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBzZWN0aW9uIG9mIGxpc3RcIj5cbiAgICAgICAgPHNlY3Rpb24gKm5nSWY9XCJ3aWRnZXRzW3NlY3Rpb24uaWRdLmRzICYmICh3aWRnZXRzW3NlY3Rpb24uaWRdLmRzLm91dCQgfCBhc3luYylcIlxuICAgICAgICAgICAgY2xhc3M9XCJ7eyAnbXItcmVzb3VyY2VfX3NlY3Rpb24gbXItcmVzb3VyY2VfXycgKyBzZWN0aW9uLnR5cGUgfX1cIj5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgW25nU3dpdGNoXT1cInNlY3Rpb24udHlwZVwiPlxuXG4gICAgICAgICAgICAgICAgPCEtLSBJTk5FUiBUSVRMRSAtLT5cbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCIndGl0bGUnXCI+XG4gICAgICAgICAgICAgICAgICAgIDxuNy1pbm5lci10aXRsZSBbZGF0YV09XCJ3aWRnZXRzW3NlY3Rpb24uaWRdLmRzLm91dCQgfCBhc3luY1wiPlxuICAgICAgICAgICAgICAgICAgICA8L243LWlubmVyLXRpdGxlPlxuICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgICAgICAgPCEtLSBNRVRBREFUQSBWSUVXRVIgLS0+XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ21ldGFkYXRhJ1wiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXItcmVzb3VyY2UtbW9kYWxfX21ldGFkYXRhLWNvbnRlbnRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxoMyAqbmdJZj1cInNlY3Rpb24udGl0bGVcIiBjbGFzcz1cIm1yLXJlc291cmNlLW1vZGFsX19zZWN0aW9uLXRpdGxlIG1yLXJlc291cmNlX19tZXRhZGF0YS10aXRsZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IHNlY3Rpb24udGl0bGUgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvaDM+XG4gICAgICAgICAgICAgICAgICAgICAgICA8bXItcmVhZC1tb3JlIFtkYXRhXT1cInNlY3Rpb24ucmVhZG1vcmVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bjctbWV0YWRhdGEtdmlld2VyIFtkYXRhXT1cIndpZGdldHNbc2VjdGlvbi5pZF0uZHMub3V0JCB8IGFzeW5jXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uNy1tZXRhZGF0YS12aWV3ZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L21yLXJlYWQtbW9yZT5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgICAgICAgICA8IS0tIENPTExFQ1RJT04gLS0+XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ2NvbGxlY3Rpb24nXCI+XG4gICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJ3aWRnZXRzW3NlY3Rpb24uaWRdLmRzLm91dCQgfCBhc3luYyBhcyBjb2xsZWN0aW9uJFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImNvbGxlY3Rpb24kLml0ZW1zPy5sZW5ndGggPiAwXCIgY2xhc3M9XCJtci1yZXNvdXJjZV9fY29sbGVjdGlvbi1jb250ZW50XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGgzICpuZ0lmPVwic2VjdGlvbi50aXRsZVwiIGNsYXNzPVwibXItcmVzb3VyY2UtbW9kYWxfX3NlY3Rpb24tdGl0bGVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgc2VjdGlvbi50aXRsZSB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvaDM+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cIm1yLXJlc291cmNlX19jb2xsZWN0aW9uLWdyaWQge3sgc2VjdGlvbi5ncmlkID8gJ243LWdyaWQtJyArIHNlY3Rpb24uZ3JpZCA6ICcnIH19XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuNy1pdGVtLXByZXZpZXcgKm5nRm9yPVwibGV0IGl0ZW0gb2YgY29sbGVjdGlvbiQ/Lml0ZW1zXCIgW2RhdGFdPVwiaXRlbVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L243LWl0ZW0tcHJldmlldz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICAgICAgICAgIDwhLS0gSVRFTSBQUkVWSUVXIC0tPlxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidwcmV2aWV3J1wiPlxuICAgICAgICAgICAgICAgICAgICA8aDMgKm5nSWY9XCJzZWN0aW9uLnRpdGxlXCIgY2xhc3M9XCJtci1yZXNvdXJjZS1tb2RhbF9fc2VjdGlvbi10aXRsZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAge3sgc2VjdGlvbi50aXRsZSB9fVxuICAgICAgICAgICAgICAgICAgICA8L2gzPlxuICAgICAgICAgICAgICAgICAgICA8bjctaXRlbS1wcmV2aWV3IFtkYXRhXT1cIndpZGdldHNbc2VjdGlvbi5pZF0uZHMub3V0JCB8IGFzeW5jXCI+XG4gICAgICAgICAgICAgICAgICAgIDwvbjctaXRlbS1wcmV2aWV3PlxuICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9zZWN0aW9uPlxuICAgIDwvbmctY29udGFpbmVyPlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==