@provoly/dashboard 0.20.3 → 0.20.5

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 (251) hide show
  1. package/components/metadata-editor/style/_o-metadata-editor.scss +0 -5
  2. package/dataset/components/dataset-detail/dataset-detail.component.d.ts +2 -1
  3. package/dataset/i18n/en.translations.d.ts +2 -1
  4. package/dataset/i18n/fr.translations.d.ts +2 -1
  5. package/dataset/style/_o-pry-dataset-card.scss +4 -37
  6. package/dataset/style/_o-pry-dataset-detail.scss +2 -53
  7. package/esm2022/admin/components/admin-abac-rules/admin-abac-rules-form/admin-abac-rules-form.component.mjs +3 -3
  8. package/esm2022/admin/components/admin-abac-rules/components/attribute-condition/attribute-condition.component.mjs +3 -3
  9. package/esm2022/admin/components/admin-abac-rules/components/metadata-condition/metadata-condition.component.mjs +3 -3
  10. package/esm2022/admin/components/admin-classes/admin-classes-customize/symbol/admin-classes-customize-symbol.component.mjs +3 -3
  11. package/esm2022/admin/components/admin-classes/admin-classes-customize/tooltip/admin-classes-customize-tooltip.component.mjs +3 -3
  12. package/esm2022/admin/components/admin-classes/admin-classes-form/admin-classes-form.component.mjs +3 -3
  13. package/esm2022/admin/components/admin-classes/admin-classes-view/admin-attributes-form/admin-attributes-form.component.mjs +15 -10
  14. package/esm2022/admin/components/admin-dataset/shared/admin-form-dataset/admin-form-dataset.component.mjs +3 -3
  15. package/esm2022/admin/components/admin-environment/admin-environment-form/admin-environment-form.component.mjs +3 -3
  16. package/esm2022/admin/components/admin-fields/admin-fields-form/admin-fields-form.component.mjs +3 -3
  17. package/esm2022/admin/components/admin-links/admin-links-new/admin-links-new.component.mjs +3 -3
  18. package/esm2022/admin/components/admin-menu/admin-menu.component.mjs +3 -3
  19. package/esm2022/admin/components/admin-metadata/shared/form-metadata/form-metadata.component.mjs +3 -3
  20. package/esm2022/admin/components/admin-metadata-rules/shared/admin-form-metadata-rules/admin-form-metadata-rules.component.mjs +3 -3
  21. package/esm2022/components/metadata-editor/metadata-editor.component.mjs +3 -3
  22. package/esm2022/components/metadata-editor/style/css.component.mjs +2 -2
  23. package/esm2022/components/scheme-picker/scheme-picker.component.mjs +3 -3
  24. package/esm2022/dataset/components/dataset-card/dataset-card.component.mjs +5 -5
  25. package/esm2022/dataset/components/dataset-detail/dataset-detail.component.mjs +20 -5
  26. package/esm2022/dataset/i18n/en.translations.mjs +3 -2
  27. package/esm2022/dataset/i18n/fr.translations.mjs +4 -3
  28. package/esm2022/dataset/style/css.component.mjs +2 -2
  29. package/esm2022/filters/autocomplete/autocomplete.component.mjs +19 -6
  30. package/esm2022/filters/autocomplete/autocomplete.module.mjs +5 -5
  31. package/esm2022/filters/autocomplete/style/css.component.mjs +2 -2
  32. package/esm2022/filters/list/list-filter.component.mjs +1 -1
  33. package/esm2022/import/components/import.component.mjs +3 -3
  34. package/esm2022/lib/core/components/about/about.component.mjs +3 -3
  35. package/esm2022/lib/core/components/base-menu/base-menu.component.mjs +3 -3
  36. package/esm2022/lib/core/components/ellipsis.directive.mjs +31 -0
  37. package/esm2022/lib/core/components/select/select.component.mjs +193 -39
  38. package/esm2022/lib/core/components/select/select.module.mjs +4 -5
  39. package/esm2022/lib/core/components/share/share.component.mjs +3 -3
  40. package/esm2022/lib/core/components/translate-id/translate-id.pipe.mjs +7 -8
  41. package/esm2022/lib/core/core.module.mjs +8 -4
  42. package/esm2022/lib/core/i18n/en.translations.mjs +7 -6
  43. package/esm2022/lib/core/i18n/fr.translations.mjs +8 -6
  44. package/esm2022/lib/core/model/display-options.interface.mjs +18 -4
  45. package/esm2022/lib/core/model/manifest.interface.mjs +1 -1
  46. package/esm2022/lib/core/public-api.mjs +2 -1
  47. package/esm2022/lib/core/store/class/class.actions.mjs +1 -4
  48. package/esm2022/lib/core/store/class/class.effects.mjs +1 -4
  49. package/esm2022/lib/core/store/class/class.interface.mjs +1 -1
  50. package/esm2022/lib/core/store/class/class.reducer.mjs +3 -13
  51. package/esm2022/lib/core/store/class/class.selectors.mjs +1 -3
  52. package/esm2022/lib/core/store/class/class.service.mjs +1 -9
  53. package/esm2022/lib/core/store/config/config.selectors.mjs +1 -3
  54. package/esm2022/lib/core/store/config/config.service.mjs +4 -7
  55. package/esm2022/lib/core/toolbox/toolbox-manifest.service.mjs +1 -4
  56. package/esm2022/lib/dashboard/components/context-menu/object-edition/object-edition.component.mjs +3 -3
  57. package/esm2022/lib/dashboard/components/widgets/header/widget-header.component.mjs +6 -15
  58. package/esm2022/lib/dashboard/components/widgets/settings/settings.component.mjs +3 -3
  59. package/esm2022/lib/dashboard/filter/components/filter-group/filter-group.component.mjs +3 -3
  60. package/esm2022/lib/dashboard/filter/style/css.component.mjs +2 -2
  61. package/esm2022/lib/dashboard/store/dashboard.effects.mjs +1 -4
  62. package/esm2022/pipeline-components/filter/component/filter.component.mjs +3 -3
  63. package/esm2022/pipeline-components/input-datasource/component/input-datasource.component.mjs +3 -3
  64. package/esm2022/pipeline-components/output-dataset/component/output-dataset.component.mjs +3 -3
  65. package/esm2022/presentation/components/add-edit-presentation/add-edit-presentation.component.mjs +5 -5
  66. package/esm2022/presentation/components/presentation.component.mjs +3 -3
  67. package/esm2022/presentation/components/title-presentation/title-presentation.component.mjs +11 -21
  68. package/esm2022/presentation/i18n/fr.translations.mjs +9 -9
  69. package/esm2022/presentation/style/css.component.mjs +2 -2
  70. package/esm2022/restitution/components/restitution/restitution.component.mjs +23 -22
  71. package/esm2022/restitution/components/restitution-catalog/restitution-catalog.component.mjs +13 -6
  72. package/esm2022/restitution/i18n/en.translations.mjs +3 -3
  73. package/esm2022/restitution/i18n/fr.translations.mjs +4 -4
  74. package/esm2022/restitution/style/css.component.mjs +2 -2
  75. package/esm2022/search/i18n/en.translations.mjs +2 -1
  76. package/esm2022/search/i18n/fr.translations.mjs +2 -1
  77. package/esm2022/search/search-mono-class/components/search-condition/search-condition.component.mjs +3 -3
  78. package/esm2022/search/search-mono-class/components/search-mono-class/search-mono-class.component.mjs +3 -3
  79. package/esm2022/search/search-mono-class/components/search-order/search-order.component.mjs +3 -3
  80. package/esm2022/search/search-multi-class/components/multi-class-condition/multi-class-condition.component.mjs +3 -3
  81. package/esm2022/toolbox/components/automate-refresh/automate-refresh.component.mjs +3 -3
  82. package/esm2022/toolbox/components/clear-view/clear-view.component.mjs +3 -3
  83. package/esm2022/toolbox/components/drag-widgets/drag-widgets.component.mjs +3 -3
  84. package/esm2022/toolbox/components/filter-settings/filter-settings.component.mjs +4 -8
  85. package/esm2022/toolbox/components/launch-tab/launch-tab.component.mjs +3 -3
  86. package/esm2022/toolbox/components/named-query/named-query.component.mjs +3 -3
  87. package/esm2022/toolbox/components/refresh-datasets/refresh-datasets.component.mjs +3 -3
  88. package/esm2022/toolbox/components/save-view/save-view.component.mjs +3 -3
  89. package/esm2022/toolbox/components/select-grid-layout/select-grid-layout.component.mjs +3 -3
  90. package/esm2022/toolbox/components/toolbox.component.mjs +4 -3
  91. package/esm2022/tooltips/attribute/attribute-tooltip.component.mjs +8 -2
  92. package/esm2022/widgets/widget-aggregated-chart/component/widget-aggregated-chart.component.mjs +8 -7
  93. package/esm2022/widgets/widget-chart/component/widget-chart.component.mjs +3 -4
  94. package/esm2022/widgets/widget-graph/component/widget-graph.component.mjs +3 -3
  95. package/esm2022/widgets/widget-map/component/widget-map.component.mjs +10 -4
  96. package/esm2022/widgets/widget-map/i18n/en.translations.mjs +3 -2
  97. package/esm2022/widgets/widget-map/i18n/fr.translations.mjs +3 -2
  98. package/esm2022/widgets/widget-map/style/css.component.mjs +2 -2
  99. package/esm2022/widgets/widget-table/component/widget-table.component.mjs +7 -7
  100. package/esm2022/widgets/widget-tile/component/widget-tile.component.mjs +3 -3
  101. package/fesm2022/provoly-dashboard-admin.mjs +40 -35
  102. package/fesm2022/provoly-dashboard-admin.mjs.map +1 -1
  103. package/fesm2022/provoly-dashboard-components-metadata-editor.mjs +4 -4
  104. package/fesm2022/provoly-dashboard-components-metadata-editor.mjs.map +1 -1
  105. package/fesm2022/provoly-dashboard-components-scheme-picker.mjs +2 -2
  106. package/fesm2022/provoly-dashboard-components-scheme-picker.mjs.map +1 -1
  107. package/fesm2022/provoly-dashboard-dataset.mjs +28 -11
  108. package/fesm2022/provoly-dashboard-dataset.mjs.map +1 -1
  109. package/fesm2022/provoly-dashboard-filters-autocomplete.mjs +24 -11
  110. package/fesm2022/provoly-dashboard-filters-autocomplete.mjs.map +1 -1
  111. package/fesm2022/provoly-dashboard-filters-list.mjs +1 -1
  112. package/fesm2022/provoly-dashboard-filters-list.mjs.map +1 -1
  113. package/fesm2022/provoly-dashboard-import.mjs +2 -2
  114. package/fesm2022/provoly-dashboard-import.mjs.map +1 -1
  115. package/fesm2022/provoly-dashboard-pipeline-components-filter.mjs +2 -2
  116. package/fesm2022/provoly-dashboard-pipeline-components-filter.mjs.map +1 -1
  117. package/fesm2022/provoly-dashboard-pipeline-components-input-datasource.mjs +2 -2
  118. package/fesm2022/provoly-dashboard-pipeline-components-input-datasource.mjs.map +1 -1
  119. package/fesm2022/provoly-dashboard-pipeline-components-output-dataset.mjs +2 -2
  120. package/fesm2022/provoly-dashboard-pipeline-components-output-dataset.mjs.map +1 -1
  121. package/fesm2022/provoly-dashboard-presentation.mjs +24 -34
  122. package/fesm2022/provoly-dashboard-presentation.mjs.map +1 -1
  123. package/fesm2022/provoly-dashboard-restitution.mjs +40 -32
  124. package/fesm2022/provoly-dashboard-restitution.mjs.map +1 -1
  125. package/fesm2022/provoly-dashboard-search.mjs +10 -8
  126. package/fesm2022/provoly-dashboard-search.mjs.map +1 -1
  127. package/fesm2022/provoly-dashboard-toolbox.mjs +22 -25
  128. package/fesm2022/provoly-dashboard-toolbox.mjs.map +1 -1
  129. package/fesm2022/provoly-dashboard-tooltips-attribute.mjs +7 -1
  130. package/fesm2022/provoly-dashboard-tooltips-attribute.mjs.map +1 -1
  131. package/fesm2022/provoly-dashboard-widgets-widget-aggregated-chart.mjs +7 -6
  132. package/fesm2022/provoly-dashboard-widgets-widget-aggregated-chart.mjs.map +1 -1
  133. package/fesm2022/provoly-dashboard-widgets-widget-chart.mjs +2 -3
  134. package/fesm2022/provoly-dashboard-widgets-widget-chart.mjs.map +1 -1
  135. package/fesm2022/provoly-dashboard-widgets-widget-graph.mjs +2 -2
  136. package/fesm2022/provoly-dashboard-widgets-widget-graph.mjs.map +1 -1
  137. package/fesm2022/provoly-dashboard-widgets-widget-map.mjs +15 -7
  138. package/fesm2022/provoly-dashboard-widgets-widget-map.mjs.map +1 -1
  139. package/fesm2022/provoly-dashboard-widgets-widget-table.mjs +6 -6
  140. package/fesm2022/provoly-dashboard-widgets-widget-table.mjs.map +1 -1
  141. package/fesm2022/provoly-dashboard-widgets-widget-tile.mjs +2 -2
  142. package/fesm2022/provoly-dashboard-widgets-widget-tile.mjs.map +1 -1
  143. package/fesm2022/provoly-dashboard.mjs +286 -135
  144. package/fesm2022/provoly-dashboard.mjs.map +1 -1
  145. package/filters/autocomplete/autocomplete.component.d.ts +2 -0
  146. package/filters/autocomplete/autocomplete.module.d.ts +1 -1
  147. package/filters/autocomplete/style/_m-autocomplete.scss +16 -3
  148. package/lib/core/components/ellipsis.directive.d.ts +11 -0
  149. package/lib/core/components/select/select.component.d.ts +41 -20
  150. package/lib/core/components/select/select.module.d.ts +4 -5
  151. package/lib/core/components/translate-id/translate-id.pipe.d.ts +1 -3
  152. package/lib/core/core.module.d.ts +15 -14
  153. package/lib/core/i18n/en.translations.d.ts +4 -3
  154. package/lib/core/i18n/fr.translations.d.ts +5 -3
  155. package/lib/core/model/display-options.interface.d.ts +11 -0
  156. package/lib/core/model/manifest.interface.d.ts +1 -5
  157. package/lib/core/public-api.d.ts +1 -0
  158. package/lib/core/store/class/class.actions.d.ts +1 -12
  159. package/lib/core/store/class/class.effects.d.ts +0 -5
  160. package/lib/core/store/class/class.interface.d.ts +0 -6
  161. package/lib/core/store/class/class.reducer.d.ts +2 -3
  162. package/lib/core/store/class/class.selectors.d.ts +0 -1
  163. package/lib/core/store/class/class.service.d.ts +1 -5
  164. package/lib/core/store/config/config.selectors.d.ts +0 -1
  165. package/lib/dashboard/components/widgets/header/widget-header.component.d.ts +2 -5
  166. package/lib/dashboard/filter/style/_o-pry-filter-group.scss +0 -11
  167. package/lib/dashboard/store/dashboard.effects.d.ts +0 -1
  168. package/lib/dashboard/store/dashboard.selectors.d.ts +0 -9
  169. package/package.json +1 -8
  170. package/presentation/components/title-presentation/title-presentation.component.d.ts +3 -5
  171. package/presentation/style/_o-pry-new-presentation.scss +0 -7
  172. package/presentation/style/_o-pry-presentation.scss +19 -101
  173. package/restitution/components/restitution-catalog/restitution-catalog.component.d.ts +1 -1
  174. package/restitution/i18n/en.translations.d.ts +2 -2
  175. package/restitution/i18n/fr.translations.d.ts +3 -3
  176. package/restitution/style/_o-restitution.scss +11 -14
  177. package/schematics/migration.json +6 -1
  178. package/schematics/ng-update/version-0-20/index.d.ts +2 -0
  179. package/schematics/ng-update/version-0-20/index.js +19 -0
  180. package/schematics/ng-update/version-0-20/index.js.map +1 -0
  181. package/search/i18n/en.translations.d.ts +1 -0
  182. package/search/i18n/fr.translations.d.ts +1 -0
  183. package/styles/base/_utils.scss +4 -0
  184. package/styles/components/_a-pry-select.scss +34 -10
  185. package/styles/components/_a-tooltip.scss +26 -19
  186. package/styles/components/_m-filter.scss +11 -20
  187. package/styles/components/_m-info-icon.scss +16 -0
  188. package/styles/components/_m-presentation-title.scss +14 -0
  189. package/styles/components/_o-about.scss +2 -24
  190. package/styles/components/_o-dashboard.scss +4 -0
  191. package/styles/components/_o-draggable-menu.scss +1 -1
  192. package/styles/components/_o-widget.scss +2 -2
  193. package/styles/main.scss +2 -1
  194. package/styles-theme/abstracts-theme/variables/_variables-typo.scss +9 -0
  195. package/styles-theme/components-theme/_a-pry-select.theme.scss +23 -96
  196. package/styles-theme/components-theme/_a-tooltip.theme.scss +2 -2
  197. package/styles-theme/components-theme/_o-pry-composed-condition.theme.scss +0 -12
  198. package/styles-theme/components-theme/_o-pry-dataset.theme.scss +0 -8
  199. package/styles-theme/components-theme/_o-pry-presentation.theme.scss +1 -1
  200. package/styles-theme/components-theme/_o-restitution.theme.scss +10 -0
  201. package/toolbox/components/toolbox.component.d.ts +1 -0
  202. package/tooltips/attribute/attribute-tooltip.component.d.ts +1 -0
  203. package/widgets/widget-chart/component/widget-chart.component.d.ts +0 -1
  204. package/widgets/widget-map/component/widget-map.component.d.ts +2 -0
  205. package/widgets/widget-map/i18n/en.translations.d.ts +1 -0
  206. package/widgets/widget-map/i18n/fr.translations.d.ts +1 -0
  207. package/widgets/widget-map/style/_o-layer-legend.scss +21 -0
  208. package/esm2022/supervision/components/supervision-business-data/supervision-business-data.component.mjs +0 -34
  209. package/esm2022/supervision/components/supervision-flow/supervision-flow.component.mjs +0 -33
  210. package/esm2022/supervision/components/supervision-infrastructures/supervision-infrastructures.component.mjs +0 -51
  211. package/esm2022/supervision/components/supervision-integration-errors/supervision-integration-errors-select/supervision-integration-errors-select.component.mjs +0 -27
  212. package/esm2022/supervision/components/supervision-integration-errors/supervision-integration-errors.component.mjs +0 -100
  213. package/esm2022/supervision/components/supervision-layout/supervision-layout.component.mjs +0 -47
  214. package/esm2022/supervision/components/supervision-menu/supervision-menu.component.mjs +0 -32
  215. package/esm2022/supervision/components/supervision-title/supervision-title.component.mjs +0 -24
  216. package/esm2022/supervision/components/supervision.component.mjs +0 -19
  217. package/esm2022/supervision/i18n/en.translations.mjs +0 -58
  218. package/esm2022/supervision/i18n/fr.translations.mjs +0 -58
  219. package/esm2022/supervision/provoly-dashboard-supervision.mjs +0 -5
  220. package/esm2022/supervision/public-api.mjs +0 -2
  221. package/esm2022/supervision/store/supervision-api.model.mjs +0 -2
  222. package/esm2022/supervision/store/supervision.actions.mjs +0 -33
  223. package/esm2022/supervision/store/supervision.effects.mjs +0 -60
  224. package/esm2022/supervision/store/supervision.reducer.mjs +0 -111
  225. package/esm2022/supervision/store/supervision.selectors.mjs +0 -35
  226. package/esm2022/supervision/store/supervision.service.mjs +0 -54
  227. package/esm2022/supervision/supervision-routing.module.mjs +0 -96
  228. package/esm2022/supervision/supervision.module.mjs +0 -96
  229. package/fesm2022/provoly-dashboard-supervision.mjs +0 -861
  230. package/fesm2022/provoly-dashboard-supervision.mjs.map +0 -1
  231. package/supervision/components/supervision-business-data/supervision-business-data.component.d.ts +0 -14
  232. package/supervision/components/supervision-flow/supervision-flow.component.d.ts +0 -14
  233. package/supervision/components/supervision-infrastructures/supervision-infrastructures.component.d.ts +0 -18
  234. package/supervision/components/supervision-integration-errors/supervision-integration-errors-select/supervision-integration-errors-select.component.d.ts +0 -12
  235. package/supervision/components/supervision-integration-errors/supervision-integration-errors.component.d.ts +0 -29
  236. package/supervision/components/supervision-layout/supervision-layout.component.d.ts +0 -21
  237. package/supervision/components/supervision-menu/supervision-menu.component.d.ts +0 -13
  238. package/supervision/components/supervision-title/supervision-title.component.d.ts +0 -11
  239. package/supervision/components/supervision.component.d.ts +0 -9
  240. package/supervision/i18n/en.translations.d.ts +0 -57
  241. package/supervision/i18n/fr.translations.d.ts +0 -57
  242. package/supervision/index.d.ts +0 -5
  243. package/supervision/public-api.d.ts +0 -1
  244. package/supervision/store/supervision-api.model.d.ts +0 -36
  245. package/supervision/store/supervision.actions.d.ts +0 -121
  246. package/supervision/store/supervision.effects.d.ts +0 -51
  247. package/supervision/store/supervision.reducer.d.ts +0 -22
  248. package/supervision/store/supervision.selectors.d.ts +0 -18
  249. package/supervision/store/supervision.service.d.ts +0 -19
  250. package/supervision/supervision-routing.module.d.ts +0 -7
  251. package/supervision/supervision.module.d.ts +0 -25
@@ -133,13 +133,13 @@ class PryAddEditPresentationComponent extends SubscriptionnerDirective {
133
133
  }));
134
134
  this.store.dispatch(DashboardActions.selectPresentation({
135
135
  presentation,
136
- viewMode: this.edition ? ViewMode.CREATION : ViewMode.EDITION
136
+ viewMode: ViewMode.CREATION
137
137
  }));
138
138
  }
139
139
  else {
140
140
  this.store.dispatch(DashboardActions.loadPresentation({
141
141
  presentation,
142
- viewMode: this.edition ? ViewMode.CREATION : ViewMode.EDITION
142
+ viewMode: ViewMode.EDITION
143
143
  }));
144
144
  }
145
145
  this.router?.navigateByUrl(this.editionStartUrl);
@@ -173,11 +173,11 @@ class PryAddEditPresentationComponent extends SubscriptionnerDirective {
173
173
  : this.selectedPresentation$.value?.metadata ?? [];
174
174
  }
175
175
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PryAddEditPresentationComponent, deps: [{ token: i1.Store }, { token: i3.Router, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
176
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: PryAddEditPresentationComponent, selector: "pry-add-edit-presentation", inputs: { edition: "edition", editionStartUrl: "editionStartUrl", selectedPresentation: "selectedPresentation", mode: "mode" }, outputs: { goBack: "goBack" }, usesInheritance: true, ngImport: i0, template: "<div class=\"o-manifest-layout\">\n <div class=\"o-manifest-layout__toolbox\">\n <button class=\"a-btn a-btn--secondary\" type=\"button\" (click)=\"close()\">\n {{ '@pry.toolbox.manifest.close' | i18n }}\n </button>\n <button class=\"a-btn a-btn--primary\" type=\"button\" (click)=\"save()\" [disabled]=\"form.invalid\">\n {{ '@pry.toolbox.manifest.check' | i18n }}\n </button>\n </div>\n <div class=\"o-manifest-layout__content--presentation\">\n <h1 class=\"a-h1\">{{ '@pry.presentation.add' + '.pageTitle' | i18n }}</h1>\n <div class=\"o-presentation-form-wrapper\">\n <form [formGroup]=\"form\" class=\"o-presentation-form\">\n <div class=\"m-form-label-field -width-full\">\n <label class=\"a-label\" for=\"presentation_name\">{{ '@pry.presentation.form.name' | i18n }}</label>\n <input\n type=\"text\"\n id=\"presentation_name\"\n formControlName=\"name\"\n placeholder=\"{{ '@pry.presentation.form.name' | i18n }}\"\n class=\"a-form-field\"\n maxlength=\"50\"\n required\n />\n <label\n for=\"presentation_name\"\n *ngIf=\"form.get('name')?.touched && form.get('name')?.hasError('required')\"\n class=\"a-label a-label--help -error\"\n >\n {{ '@pry.presentation.required' | i18n }}\n </label>\n <label\n for=\"presentation_name\"\n *ngIf=\"form.get('name')?.hasError('maxlength')\"\n class=\"a-label a-label--help -error\"\n >\n {{ '@pry.presentation.maxLength' | i18n : { len: '50' } }}\n </label>\n </div>\n <div class=\"m-form-label-field -width-full\">\n <label class=\"a-label\" for=\"presentation_description\">{{\n '@pry.presentation.form.description' | i18n\n }}</label>\n <textarea\n formControlName=\"description\"\n id=\"presentation_description\"\n name=\"description\"\n cols=\"30\"\n rows=\"5\"\n maxlength=\"200\"\n placeholder=\"{{ '@pry.presentation.form.description' | i18n }}\"\n class=\"a-form-field\"\n ></textarea>\n <label\n for=\"presentation_description\"\n *ngIf=\"form.get('description')?.hasError('maxlength')\"\n class=\"a-label a-label--help -error\"\n >\n {{ '@pry.presentation.maxLength' | i18n : { len: '200' } }}\n </label>\n </div>\n <div class=\"m-form-label-field -width-full\" *ngIf=\"mode === 'theme'\">\n <label class=\"a-label\" for=\"presentation_theme\">{{ '@pry.presentation.form.theme' | i18n }}</label>\n <pry-select\n id=\"presentation_theme\"\n class=\"a-pry-select\"\n [items]=\"possibleThemes\"\n [itemsAsOption]=\"true\"\n [bindData]=\"true\"\n formControlName=\"theme\"\n [clearable]=\"true\"\n ></pry-select>\n </div>\n <div class=\"m-form-label-field -width-full\">\n <label class=\"a-label\" for=\"presentation_image\">{{ '@pry.presentation.form.image' | i18n }}</label>\n <div class=\"o-file-input\">\n <pry-select-image\n id=\"presentation_image\"\n (changed)=\"image = $event\"\n [iconUrl]=\"image\"\n [mode]=\"type\"\n ></pry-select-image>\n <pry-checkbox formControlName=\"cover\" name=\"cover\" ngDefaultControl>\n {{ '@pry.presentation.form.cover' | i18n }}\n </pry-checkbox>\n </div>\n </div>\n <div class=\"m-form-label-field -width-full m-form-label-field--inline\">\n <label class=\"a-label\">{{ '@pry.presentation.form.grid' | i18n }}</label>\n <span class=\"a-label\">{{ '@pry.toolbox.layout.' + this.chosenLayout | i18n }}</span>\n <pry-select-grid-layout *ngIf=\"!edition\"></pry-select-grid-layout>\n </div>\n </form>\n <ng-container *ngIf=\"mode === 'meta'\">\n <div class=\"o-presentation__metadata-editor\" *ngIf=\"selectedPresentation$ | async as selectedPresentation\">\n <pry-metadata-editor\n [targetId]=\"selectedPresentation.id\"\n [isModification]=\"true\"\n [metadata]=\"selectedPresentation.metadata\"\n (removeMeta)=\"removeMetadata($event)\"\n (addMeta)=\"addMetadata($event)\"\n [type]=\"'meta'\"\n ></pry-metadata-editor>\n </div>\n </ng-container>\n </div>\n <button\n class=\"a-btn a-btn--primary\"\n (click)=\"configureDashboard(selectedPresentation$.value!)\"\n [disabled]=\"form.invalid\"\n >\n {{ '@pry.presentation.configuration' | i18n }}\n </button>\n </div>\n</div>\n", dependencies: [{ kind: "component", type: i4.PrySelectImageComponent, selector: "pry-select-image", inputs: ["iconUrl", "size", "mode"], outputs: ["toggled", "changed"] }, { kind: "directive", type: i4$1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i4$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i4$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i4$1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i4$1.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i4$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i4$1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i4.PrySelectComponent, selector: "pry-select", inputs: ["labelTranslate", "baseTranslate", "translationFn", "translationFnArgs", "clearable", "multiple", "multipleClearRight", "closeOnSelect", "placeholder", "isForm", "required", "name", "readonly", "items", "itemsAsOption", "bindData", "bindValue", "bindLabel", "bindIcon", "iconSize", "templateLabel", "templateOption", "autocomplete"] }, { kind: "component", type: i5.SelectGridLayoutComponent, selector: "pry-select-grid-layout" }, { kind: "component", type: i6.PryCheckboxComponent, selector: "pry-checkbox", inputs: ["circle"] }, { kind: "directive", type: i6$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i8.PryMetadataEditorComponent, selector: "pry-metadata-editor", inputs: ["isModification", "targetId", "type", "metadata"], outputs: ["addMeta", "removeMeta"] }, { kind: "pipe", type: i4.I18nPipe, name: "i18n" }, { kind: "pipe", type: i6$1.AsyncPipe, name: "async" }] }); }
176
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: PryAddEditPresentationComponent, selector: "pry-add-edit-presentation", inputs: { edition: "edition", editionStartUrl: "editionStartUrl", selectedPresentation: "selectedPresentation", mode: "mode" }, outputs: { goBack: "goBack" }, usesInheritance: true, ngImport: i0, template: "<div class=\"o-manifest-layout\">\n <div class=\"o-manifest-layout__toolbox\">\n <button class=\"a-btn a-btn--secondary\" type=\"button\" (click)=\"close()\">\n {{ '@pry.toolbox.manifest.close' | i18n }}\n </button>\n <button class=\"a-btn a-btn--primary\" type=\"button\" (click)=\"save()\" [disabled]=\"form.invalid\">\n {{ '@pry.toolbox.manifest.check' | i18n }}\n </button>\n </div>\n <div class=\"o-manifest-layout__content--presentation\">\n <h1 class=\"a-h1\">{{ '@pry.presentation.add' + '.pageTitle' | i18n }}</h1>\n <div class=\"o-presentation-form-wrapper\">\n <form [formGroup]=\"form\" class=\"o-presentation-form\">\n <div class=\"m-form-label-field -width-full\">\n <label class=\"a-label\" for=\"presentation_name\">{{ '@pry.presentation.form.name' | i18n }}</label>\n <input\n type=\"text\"\n id=\"presentation_name\"\n formControlName=\"name\"\n placeholder=\"{{ '@pry.presentation.form.name' | i18n }}\"\n class=\"a-form-field\"\n maxlength=\"50\"\n required\n />\n <label\n for=\"presentation_name\"\n *ngIf=\"form.get('name')?.touched && form.get('name')?.hasError('required')\"\n class=\"a-label a-label--help -error\"\n >\n {{ '@pry.presentation.required' | i18n }}\n </label>\n <label\n for=\"presentation_name\"\n *ngIf=\"form.get('name')?.hasError('maxlength')\"\n class=\"a-label a-label--help -error\"\n >\n {{ '@pry.presentation.maxLength' | i18n : { len: '50' } }}\n </label>\n </div>\n <div class=\"m-form-label-field -width-full\">\n <label class=\"a-label\" for=\"presentation_description\">{{\n '@pry.presentation.form.description' | i18n\n }}</label>\n <textarea\n formControlName=\"description\"\n id=\"presentation_description\"\n name=\"description\"\n cols=\"30\"\n rows=\"5\"\n maxlength=\"200\"\n placeholder=\"{{ '@pry.presentation.form.description' | i18n }}\"\n class=\"a-form-field\"\n ></textarea>\n <label\n for=\"presentation_description\"\n *ngIf=\"form.get('description')?.hasError('maxlength')\"\n class=\"a-label a-label--help -error\"\n >\n {{ '@pry.presentation.maxLength' | i18n : { len: '200' } }}\n </label>\n </div>\n <div class=\"m-form-label-field -width-full\" *ngIf=\"mode === 'theme'\">\n <label class=\"a-label\" for=\"presentation_theme\">{{ '@pry.presentation.form.theme' | i18n }}</label>\n <pry-select\n id=\"presentation_theme\"\n [items]=\"possibleThemes\"\n formControlName=\"theme\"\n [clearable]=\"true\"\n ></pry-select>\n </div>\n <div class=\"m-form-label-field -width-full\">\n <label class=\"a-label\" for=\"presentation_image\">{{ '@pry.presentation.form.image' | i18n }}</label>\n <div class=\"o-file-input\">\n <pry-select-image\n id=\"presentation_image\"\n (changed)=\"image = $event\"\n [iconUrl]=\"image\"\n [mode]=\"type\"\n ></pry-select-image>\n <pry-checkbox formControlName=\"cover\" name=\"cover\" ngDefaultControl>\n {{ '@pry.presentation.form.cover' | i18n }}\n </pry-checkbox>\n </div>\n </div>\n <div class=\"m-form-label-field -width-full m-form-label-field--inline\">\n <label class=\"a-label\">{{ '@pry.presentation.form.grid' | i18n }}</label>\n <span class=\"a-label\">{{ '@pry.toolbox.layout.' + this.chosenLayout | i18n }}</span>\n <pry-select-grid-layout *ngIf=\"!edition\"></pry-select-grid-layout>\n </div>\n </form>\n <ng-container *ngIf=\"mode === 'meta'\">\n <div class=\"o-presentation__metadata-editor\" *ngIf=\"selectedPresentation$ | async as selectedPresentation\">\n <pry-metadata-editor\n [targetId]=\"selectedPresentation.id\"\n [isModification]=\"true\"\n [metadata]=\"selectedPresentation.metadata\"\n (removeMeta)=\"removeMetadata($event)\"\n (addMeta)=\"addMetadata($event)\"\n [type]=\"'meta'\"\n ></pry-metadata-editor>\n </div>\n </ng-container>\n </div>\n <button\n class=\"a-btn a-btn--primary\"\n (click)=\"configureDashboard(selectedPresentation$.value!)\"\n [disabled]=\"form.invalid\"\n >\n {{ '@pry.presentation.configuration' | i18n }}\n </button>\n </div>\n</div>\n", dependencies: [{ kind: "component", type: i4.PrySelectImageComponent, selector: "pry-select-image", inputs: ["iconUrl", "size", "mode"], outputs: ["toggled", "changed"] }, { kind: "directive", type: i4$1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i4$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i4$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i4$1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i4$1.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i4$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i4$1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i4.PrySelectComponent, selector: "pry-select", inputs: ["items", "clearable", "multiple", "closeOnSelect", "placeholder", "isForm", "required", "name", "readonly", "autocomplete", "bindValue", "bindLabel", "iconSize", "bindIcon", "template", "i18nPrefix", "elementRef"], outputs: ["searched", "cleared"] }, { kind: "component", type: i5.SelectGridLayoutComponent, selector: "pry-select-grid-layout" }, { kind: "component", type: i6.PryCheckboxComponent, selector: "pry-checkbox", inputs: ["circle"] }, { kind: "directive", type: i6$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i8.PryMetadataEditorComponent, selector: "pry-metadata-editor", inputs: ["isModification", "targetId", "type", "metadata"], outputs: ["addMeta", "removeMeta"] }, { kind: "pipe", type: i4.I18nPipe, name: "i18n" }, { kind: "pipe", type: i6$1.AsyncPipe, name: "async" }] }); }
177
177
  }
178
178
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PryAddEditPresentationComponent, decorators: [{
179
179
  type: Component,
180
- args: [{ selector: 'pry-add-edit-presentation', template: "<div class=\"o-manifest-layout\">\n <div class=\"o-manifest-layout__toolbox\">\n <button class=\"a-btn a-btn--secondary\" type=\"button\" (click)=\"close()\">\n {{ '@pry.toolbox.manifest.close' | i18n }}\n </button>\n <button class=\"a-btn a-btn--primary\" type=\"button\" (click)=\"save()\" [disabled]=\"form.invalid\">\n {{ '@pry.toolbox.manifest.check' | i18n }}\n </button>\n </div>\n <div class=\"o-manifest-layout__content--presentation\">\n <h1 class=\"a-h1\">{{ '@pry.presentation.add' + '.pageTitle' | i18n }}</h1>\n <div class=\"o-presentation-form-wrapper\">\n <form [formGroup]=\"form\" class=\"o-presentation-form\">\n <div class=\"m-form-label-field -width-full\">\n <label class=\"a-label\" for=\"presentation_name\">{{ '@pry.presentation.form.name' | i18n }}</label>\n <input\n type=\"text\"\n id=\"presentation_name\"\n formControlName=\"name\"\n placeholder=\"{{ '@pry.presentation.form.name' | i18n }}\"\n class=\"a-form-field\"\n maxlength=\"50\"\n required\n />\n <label\n for=\"presentation_name\"\n *ngIf=\"form.get('name')?.touched && form.get('name')?.hasError('required')\"\n class=\"a-label a-label--help -error\"\n >\n {{ '@pry.presentation.required' | i18n }}\n </label>\n <label\n for=\"presentation_name\"\n *ngIf=\"form.get('name')?.hasError('maxlength')\"\n class=\"a-label a-label--help -error\"\n >\n {{ '@pry.presentation.maxLength' | i18n : { len: '50' } }}\n </label>\n </div>\n <div class=\"m-form-label-field -width-full\">\n <label class=\"a-label\" for=\"presentation_description\">{{\n '@pry.presentation.form.description' | i18n\n }}</label>\n <textarea\n formControlName=\"description\"\n id=\"presentation_description\"\n name=\"description\"\n cols=\"30\"\n rows=\"5\"\n maxlength=\"200\"\n placeholder=\"{{ '@pry.presentation.form.description' | i18n }}\"\n class=\"a-form-field\"\n ></textarea>\n <label\n for=\"presentation_description\"\n *ngIf=\"form.get('description')?.hasError('maxlength')\"\n class=\"a-label a-label--help -error\"\n >\n {{ '@pry.presentation.maxLength' | i18n : { len: '200' } }}\n </label>\n </div>\n <div class=\"m-form-label-field -width-full\" *ngIf=\"mode === 'theme'\">\n <label class=\"a-label\" for=\"presentation_theme\">{{ '@pry.presentation.form.theme' | i18n }}</label>\n <pry-select\n id=\"presentation_theme\"\n class=\"a-pry-select\"\n [items]=\"possibleThemes\"\n [itemsAsOption]=\"true\"\n [bindData]=\"true\"\n formControlName=\"theme\"\n [clearable]=\"true\"\n ></pry-select>\n </div>\n <div class=\"m-form-label-field -width-full\">\n <label class=\"a-label\" for=\"presentation_image\">{{ '@pry.presentation.form.image' | i18n }}</label>\n <div class=\"o-file-input\">\n <pry-select-image\n id=\"presentation_image\"\n (changed)=\"image = $event\"\n [iconUrl]=\"image\"\n [mode]=\"type\"\n ></pry-select-image>\n <pry-checkbox formControlName=\"cover\" name=\"cover\" ngDefaultControl>\n {{ '@pry.presentation.form.cover' | i18n }}\n </pry-checkbox>\n </div>\n </div>\n <div class=\"m-form-label-field -width-full m-form-label-field--inline\">\n <label class=\"a-label\">{{ '@pry.presentation.form.grid' | i18n }}</label>\n <span class=\"a-label\">{{ '@pry.toolbox.layout.' + this.chosenLayout | i18n }}</span>\n <pry-select-grid-layout *ngIf=\"!edition\"></pry-select-grid-layout>\n </div>\n </form>\n <ng-container *ngIf=\"mode === 'meta'\">\n <div class=\"o-presentation__metadata-editor\" *ngIf=\"selectedPresentation$ | async as selectedPresentation\">\n <pry-metadata-editor\n [targetId]=\"selectedPresentation.id\"\n [isModification]=\"true\"\n [metadata]=\"selectedPresentation.metadata\"\n (removeMeta)=\"removeMetadata($event)\"\n (addMeta)=\"addMetadata($event)\"\n [type]=\"'meta'\"\n ></pry-metadata-editor>\n </div>\n </ng-container>\n </div>\n <button\n class=\"a-btn a-btn--primary\"\n (click)=\"configureDashboard(selectedPresentation$.value!)\"\n [disabled]=\"form.invalid\"\n >\n {{ '@pry.presentation.configuration' | i18n }}\n </button>\n </div>\n</div>\n" }]
180
+ args: [{ selector: 'pry-add-edit-presentation', template: "<div class=\"o-manifest-layout\">\n <div class=\"o-manifest-layout__toolbox\">\n <button class=\"a-btn a-btn--secondary\" type=\"button\" (click)=\"close()\">\n {{ '@pry.toolbox.manifest.close' | i18n }}\n </button>\n <button class=\"a-btn a-btn--primary\" type=\"button\" (click)=\"save()\" [disabled]=\"form.invalid\">\n {{ '@pry.toolbox.manifest.check' | i18n }}\n </button>\n </div>\n <div class=\"o-manifest-layout__content--presentation\">\n <h1 class=\"a-h1\">{{ '@pry.presentation.add' + '.pageTitle' | i18n }}</h1>\n <div class=\"o-presentation-form-wrapper\">\n <form [formGroup]=\"form\" class=\"o-presentation-form\">\n <div class=\"m-form-label-field -width-full\">\n <label class=\"a-label\" for=\"presentation_name\">{{ '@pry.presentation.form.name' | i18n }}</label>\n <input\n type=\"text\"\n id=\"presentation_name\"\n formControlName=\"name\"\n placeholder=\"{{ '@pry.presentation.form.name' | i18n }}\"\n class=\"a-form-field\"\n maxlength=\"50\"\n required\n />\n <label\n for=\"presentation_name\"\n *ngIf=\"form.get('name')?.touched && form.get('name')?.hasError('required')\"\n class=\"a-label a-label--help -error\"\n >\n {{ '@pry.presentation.required' | i18n }}\n </label>\n <label\n for=\"presentation_name\"\n *ngIf=\"form.get('name')?.hasError('maxlength')\"\n class=\"a-label a-label--help -error\"\n >\n {{ '@pry.presentation.maxLength' | i18n : { len: '50' } }}\n </label>\n </div>\n <div class=\"m-form-label-field -width-full\">\n <label class=\"a-label\" for=\"presentation_description\">{{\n '@pry.presentation.form.description' | i18n\n }}</label>\n <textarea\n formControlName=\"description\"\n id=\"presentation_description\"\n name=\"description\"\n cols=\"30\"\n rows=\"5\"\n maxlength=\"200\"\n placeholder=\"{{ '@pry.presentation.form.description' | i18n }}\"\n class=\"a-form-field\"\n ></textarea>\n <label\n for=\"presentation_description\"\n *ngIf=\"form.get('description')?.hasError('maxlength')\"\n class=\"a-label a-label--help -error\"\n >\n {{ '@pry.presentation.maxLength' | i18n : { len: '200' } }}\n </label>\n </div>\n <div class=\"m-form-label-field -width-full\" *ngIf=\"mode === 'theme'\">\n <label class=\"a-label\" for=\"presentation_theme\">{{ '@pry.presentation.form.theme' | i18n }}</label>\n <pry-select\n id=\"presentation_theme\"\n [items]=\"possibleThemes\"\n formControlName=\"theme\"\n [clearable]=\"true\"\n ></pry-select>\n </div>\n <div class=\"m-form-label-field -width-full\">\n <label class=\"a-label\" for=\"presentation_image\">{{ '@pry.presentation.form.image' | i18n }}</label>\n <div class=\"o-file-input\">\n <pry-select-image\n id=\"presentation_image\"\n (changed)=\"image = $event\"\n [iconUrl]=\"image\"\n [mode]=\"type\"\n ></pry-select-image>\n <pry-checkbox formControlName=\"cover\" name=\"cover\" ngDefaultControl>\n {{ '@pry.presentation.form.cover' | i18n }}\n </pry-checkbox>\n </div>\n </div>\n <div class=\"m-form-label-field -width-full m-form-label-field--inline\">\n <label class=\"a-label\">{{ '@pry.presentation.form.grid' | i18n }}</label>\n <span class=\"a-label\">{{ '@pry.toolbox.layout.' + this.chosenLayout | i18n }}</span>\n <pry-select-grid-layout *ngIf=\"!edition\"></pry-select-grid-layout>\n </div>\n </form>\n <ng-container *ngIf=\"mode === 'meta'\">\n <div class=\"o-presentation__metadata-editor\" *ngIf=\"selectedPresentation$ | async as selectedPresentation\">\n <pry-metadata-editor\n [targetId]=\"selectedPresentation.id\"\n [isModification]=\"true\"\n [metadata]=\"selectedPresentation.metadata\"\n (removeMeta)=\"removeMetadata($event)\"\n (addMeta)=\"addMetadata($event)\"\n [type]=\"'meta'\"\n ></pry-metadata-editor>\n </div>\n </ng-container>\n </div>\n <button\n class=\"a-btn a-btn--primary\"\n (click)=\"configureDashboard(selectedPresentation$.value!)\"\n [disabled]=\"form.invalid\"\n >\n {{ '@pry.presentation.configuration' | i18n }}\n </button>\n </div>\n</div>\n" }]
181
181
  }], ctorParameters: function () { return [{ type: i1.Store }, { type: i3.Router, decorators: [{
182
182
  type: Optional
183
183
  }] }]; }, propDecorators: { edition: [{
@@ -193,37 +193,27 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
193
193
  }] } });
194
194
 
195
195
  class PryTitlePresentationComponent {
196
- constructor(store, i18nService) {
196
+ constructor(store) {
197
197
  this.store = store;
198
- this.i18nService = i18nService;
199
- this.presentation$ = this.store.select(DashboardSelectors.presentation).pipe(map((presentation) => {
200
- if (presentation.current) {
201
- return presentation.current;
202
- }
203
- return null;
204
- }));
205
- this.presentationTitle$ = this.presentation$.pipe(map((presentation) => {
206
- if (presentation) {
207
- return presentation.name;
208
- }
209
- return this.i18nService.instant('@pry.header.noCurrentPresentation');
210
- }));
198
+ this.currentPresentation$ = this.store
199
+ .select(DashboardSelectors.presentation)
200
+ .pipe(map((presentation) => presentation.current));
211
201
  }
212
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PryTitlePresentationComponent, deps: [{ token: i1.Store }, { token: i4.PryI18nService }], target: i0.ɵɵFactoryTarget.Component }); }
213
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: PryTitlePresentationComponent, selector: "pry-title-presentation", ngImport: i0, template: "<div class=\"title-container\">\n <h1 class=\"a-h1 a-presentation-title\">{{ presentationTitle$ | async }}</h1>\n <ng-container *ngIf=\"presentation$ | async as presentation\">\n <div *ngIf=\"!!presentation.description\" class=\"info-icon description-container description\">\n <span class=\"info-text\">i</span>\n </div>\n <div *ngIf=\"!!presentation.description\" class=\"description-tooltip title-tooltip\">\n <p class=\"a-p\">{{ presentation.description }}</p>\n </div>\n </ng-container>\n</div>\n", dependencies: [{ kind: "directive", type: i6$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i6$1.AsyncPipe, name: "async" }] }); }
202
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PryTitlePresentationComponent, deps: [{ token: i1.Store }], target: i0.ɵɵFactoryTarget.Component }); }
203
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: PryTitlePresentationComponent, selector: "pry-title-presentation", ngImport: i0, template: "<div class=\"m-presentation-title\" *ngIf=\"currentPresentation$ | async as currentPresentation\">\n <h1 class=\"a-h1 m-presentation-title__text\">\n {{ currentPresentation.name || ('@pry.header.noCurrentPresentation' | i18n) }}\n </h1>\n <div\n *ngIf=\"!!currentPresentation.description\"\n class=\"m-presentation-title__description m-info-icon a-tooltip -tooltip-width-lg align-center\"\n [attr.data-tooltip]=\"currentPresentation.description\"\n data-tooltip-position=\"right\"\n >\n <span>i</span>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i6$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i4.I18nPipe, name: "i18n" }, { kind: "pipe", type: i6$1.AsyncPipe, name: "async" }] }); }
214
204
  }
215
205
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PryTitlePresentationComponent, decorators: [{
216
206
  type: Component,
217
- args: [{ selector: 'pry-title-presentation', template: "<div class=\"title-container\">\n <h1 class=\"a-h1 a-presentation-title\">{{ presentationTitle$ | async }}</h1>\n <ng-container *ngIf=\"presentation$ | async as presentation\">\n <div *ngIf=\"!!presentation.description\" class=\"info-icon description-container description\">\n <span class=\"info-text\">i</span>\n </div>\n <div *ngIf=\"!!presentation.description\" class=\"description-tooltip title-tooltip\">\n <p class=\"a-p\">{{ presentation.description }}</p>\n </div>\n </ng-container>\n</div>\n" }]
218
- }], ctorParameters: function () { return [{ type: i1.Store }, { type: i4.PryI18nService }]; } });
207
+ args: [{ selector: 'pry-title-presentation', template: "<div class=\"m-presentation-title\" *ngIf=\"currentPresentation$ | async as currentPresentation\">\n <h1 class=\"a-h1 m-presentation-title__text\">\n {{ currentPresentation.name || ('@pry.header.noCurrentPresentation' | i18n) }}\n </h1>\n <div\n *ngIf=\"!!currentPresentation.description\"\n class=\"m-presentation-title__description m-info-icon a-tooltip -tooltip-width-lg align-center\"\n [attr.data-tooltip]=\"currentPresentation.description\"\n data-tooltip-position=\"right\"\n >\n <span>i</span>\n </div>\n</div>\n" }]
208
+ }], ctorParameters: function () { return [{ type: i1.Store }]; } });
219
209
 
220
210
  class PryPresentationCssComponent {
221
211
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PryPresentationCssComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
222
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: PryPresentationCssComponent, selector: "pry-presentation-css", ngImport: i0, template: '', isInline: true, styles: ["pry-add-edit-presentation{height:100%}.o-manifest-layout__content--presentation{width:100%;display:flex;flex-direction:column;padding:20px;text-align:left}.o-manifest-layout__content--presentation .a-h1{line-height:38px;font-size:28px;text-align:left}.o-manifest-layout__content--presentation .a-btn{margin:0 auto}.o-manifest-layout__toolbox{display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:.9375rem}.o-manifest-layout__toolbox .a-btn{border-radius:22px}.o-presentation-form-wrapper{display:flex;padding-bottom:.3125rem;gap:3rem}.o-presentation__metadata-editor{flex:1 50%}.o-presentation__metadata-editor pry-metadata-editor ng-select{position:relative;width:100%}.o-presentation-form{display:flex;flex-direction:column;align-items:center;flex:1 50%}.o-presentation-form .a-presentation-form-input{padding:.25rem .75rem;margin-bottom:.75rem}.o-presentation-form .o-file-input{border:1px dashed black;display:flex;flex-direction:column;align-items:center;width:100%;padding:2.5rem 0;gap:15px}.o-presentation-form pry-select{width:100%}.o-presentation-form .a-btn[type=submit]{margin-top:20px}.a-presentation-title{padding:10px}\n", ".o-presentation{margin:0;padding:0}.o-presentation li{list-style:none}.o-manifest-layout__toolbox div:first-child{margin-left:auto}.o-manifest-layout__toolbox.-u-hidden{display:none}.o-manifest-layout__toolbox__search{position:relative}.o-manifest-layout__toolbox__search .a-form-field{min-height:10px}.o-manifest-layout__toolbox__search .a-icon{position:absolute;right:.6875rem;top:.3125rem;opacity:.5;pointer-events:none}.o-manifest-layout__content{height:100%}.o-manifest-layout__content .pointer{cursor:pointer}.pry-viewingpresentation{display:flex;overflow-y:scroll}.pry-viewingpresentation .o-manifest-layout__content,.pry-viewingpresentation .o-dashboard-widget{flex:100% 1 1}.o-presentation{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:1.875rem;padding:.25rem .25rem 1.25rem;overflow-y:visible}.o-presentation .a-h3{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.o-presentation__item{display:flex;flex-direction:column;align-items:stretch}.o-presentation__item:hover{cursor:pointer}.o-presentation__item:hover .o-presentation__item__footer pry-icon{visibility:visible;opacity:1}.o-presentation__item .a-tooltip{align-items:center;width:100%;height:100%}.o-presentation__item__image{width:auto;cursor:pointer;overflow:hidden;height:6.875rem;display:flex;align-items:center;justify-content:center}.o-presentation__item__image .is-full-width{width:100%;height:100%;object-fit:cover}.o-presentation__item__header{position:relative;display:flex;align-items:flex-start;justify-content:center;height:6.875rem}.o-presentation__item__header pry-icon.is-private{position:absolute;top:.625rem;left:.625rem}.o-presentation__item__txt{flex-grow:1;padding:.625rem .9375rem;display:flex;flex-direction:column;justify-content:space-between}.o-presentation__item__txt .a-h3{font-size:.875rem}.o-presentation__item__txt .a-p{font-size:.8125rem}.o-presentation__item__txt .a-p.-date{margin-bottom:0}.o-presentation__item__footer{display:flex;align-content:center;justify-content:center;font-size:.875rem;line-height:1.125rem;padding:.1875rem 0}.o-presentation__item__footer .a-btn{margin-left:1.25rem}.o-presentation__item__footer pry-icon{visibility:hidden;opacity:0;transition:visibility .1s linear,opacity .1s linear;margin-left:.1875rem}.o-presentation-consult{width:100%;padding:.9375rem}.description-container{position:relative;width:100%}.description{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;display:inherit;position:relative;line-height:2rem;box-sizing:border-box;pointer-events:none}.description:after{content:\"\";display:block;position:absolute;top:0;right:0;width:40px;height:48px;z-index:1;pointer-events:initial}.description:hover:after{cursor:pointer}.description-tooltip{position:absolute;max-width:50vw;visibility:hidden;background-color:#fff;padding:20px;-webkit-box-shadow:0 0 50px 0 rgba(0,0,0,.3);opacity:0;transition:opacity .5s ease;z-index:2}.description:hover+.description-tooltip{visibility:visible;transition:opacity .2s ease;opacity:1}.title-tooltip{transform:translateY(4rem)}.info-tooltip{transform:translateY(8rem)}h1.a-presentation-title{font-size:16px;padding-right:20px;color:#113b6e}.title-container{display:flex}.title-container .h-1{padding-top:0;padding-bottom:0}.actions-list{display:flex;align-items:center;gap:.9375rem;flex-direction:row;flex-wrap:nowrap;justify-content:space-evenly;list-style-type:none}.info-icon{position:relative;width:1.5rem;height:1.5rem;border-radius:50%;cursor:pointer;display:inline-flex;justify-content:center;align-items:center;align-self:center;margin-right:1rem;border:1px solid #3E546A}.more-actions{position:absolute;top:.375rem;right:.625rem}.more-actions .a-btn{padding:.125rem 0;border-radius:50%}.m-context-menu{position:absolute}\n"], encapsulation: i0.ViewEncapsulation.None }); }
212
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: PryPresentationCssComponent, selector: "pry-presentation-css", ngImport: i0, template: '', isInline: true, styles: ["pry-add-edit-presentation{height:100%}.o-manifest-layout__content--presentation{width:100%;display:flex;flex-direction:column;padding:20px;text-align:left}.o-manifest-layout__content--presentation .a-h1{line-height:38px;font-size:28px;text-align:left}.o-manifest-layout__content--presentation .a-btn{margin:0 auto}.o-manifest-layout__toolbox{display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:.9375rem}.o-manifest-layout__toolbox .a-btn{border-radius:22px}.o-presentation-form-wrapper{display:flex;padding-bottom:.3125rem;gap:3rem}.o-presentation__metadata-editor{flex:1 50%}.o-presentation-form{display:flex;flex-direction:column;align-items:center;flex:1 50%}.o-presentation-form .a-presentation-form-input{padding:.25rem .75rem;margin-bottom:.75rem}.o-presentation-form .o-file-input{border:1px dashed black;display:flex;flex-direction:column;align-items:center;width:100%;padding:2.5rem 0;gap:15px}.o-presentation-form pry-select{width:100%}.o-presentation-form .a-btn[type=submit]{margin-top:20px}.a-presentation-title{padding:10px}\n", ".o-presentation{margin:0;padding:0}.o-presentation li{list-style:none}.o-manifest-layout__toolbox div:first-child{margin-left:auto}.o-manifest-layout__toolbox.-u-hidden{display:none}.o-manifest-layout__toolbox__search{position:relative}.o-manifest-layout__toolbox__search .a-form-field{min-height:10px}.o-manifest-layout__toolbox__search .a-icon{position:absolute;right:.6875rem;top:.3125rem;opacity:.5;pointer-events:none}.o-manifest-layout__content{height:100%;overflow:auto}.o-manifest-layout__content .pointer{cursor:pointer}.pry-viewingpresentation{display:flex;overflow-y:scroll}.pry-viewingpresentation .o-manifest-layout__content,.pry-viewingpresentation .o-dashboard-widget{flex:100% 1 1}.o-presentation{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:1.875rem;padding:.25rem .25rem 1.25rem;overflow-y:visible}.o-presentation .a-h3{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.o-presentation__item{display:flex;flex-direction:column;align-items:stretch}.o-presentation__item:hover{cursor:pointer}.o-presentation__item:hover .o-presentation__item__footer pry-icon{visibility:visible;opacity:1}.o-presentation__item__image{width:auto;cursor:pointer;overflow:hidden;height:6.875rem;display:flex;align-items:center;justify-content:center}.o-presentation__item__image .is-full-width{width:100%;height:100%;object-fit:cover}.o-presentation__item__header{position:relative;display:flex;align-items:flex-start;justify-content:center;height:6.875rem}.o-presentation__item__header pry-icon.is-private{position:absolute;top:.625rem;left:.625rem}.o-presentation__item__txt{flex-grow:1;padding:.625rem .9375rem;display:flex;flex-direction:column;justify-content:space-between}.o-presentation__item__txt .a-h3{font-size:.875rem}.o-presentation__item__txt .a-p{font-size:.8125rem}.o-presentation__item__txt .a-p.-date{margin-bottom:0}.o-presentation__item__description-container{position:relative;width:100%;display:flex;align-content:center}.o-presentation__item__description-container.a-tooltip[data-tooltip]:after{width:100%}.o-presentation__item__description{width:100%;max-height:2.5rem}.o-presentation__item__footer{display:flex;align-content:center;justify-content:center;font-size:.875rem;line-height:1.125rem;padding:.1875rem 0;max-height:2.3125rem}.o-presentation__item__footer .a-btn{margin-left:1.25rem}.o-presentation__item__footer pry-icon{visibility:hidden;opacity:0;transition:visibility .1s linear,opacity .1s linear;margin-left:.1875rem}.o-presentation-consult{width:100%;padding:.9375rem}.more-button{position:absolute;top:.375rem;right:.625rem}.more-button .a-btn{padding:.125rem 0;border-radius:50%}.m-context-menu{position:absolute}\n"], encapsulation: i0.ViewEncapsulation.None }); }
223
213
  }
224
214
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PryPresentationCssComponent, decorators: [{
225
215
  type: Component,
226
- args: [{ selector: 'pry-presentation-css', template: '', encapsulation: ViewEncapsulation.None, styles: ["pry-add-edit-presentation{height:100%}.o-manifest-layout__content--presentation{width:100%;display:flex;flex-direction:column;padding:20px;text-align:left}.o-manifest-layout__content--presentation .a-h1{line-height:38px;font-size:28px;text-align:left}.o-manifest-layout__content--presentation .a-btn{margin:0 auto}.o-manifest-layout__toolbox{display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:.9375rem}.o-manifest-layout__toolbox .a-btn{border-radius:22px}.o-presentation-form-wrapper{display:flex;padding-bottom:.3125rem;gap:3rem}.o-presentation__metadata-editor{flex:1 50%}.o-presentation__metadata-editor pry-metadata-editor ng-select{position:relative;width:100%}.o-presentation-form{display:flex;flex-direction:column;align-items:center;flex:1 50%}.o-presentation-form .a-presentation-form-input{padding:.25rem .75rem;margin-bottom:.75rem}.o-presentation-form .o-file-input{border:1px dashed black;display:flex;flex-direction:column;align-items:center;width:100%;padding:2.5rem 0;gap:15px}.o-presentation-form pry-select{width:100%}.o-presentation-form .a-btn[type=submit]{margin-top:20px}.a-presentation-title{padding:10px}\n", ".o-presentation{margin:0;padding:0}.o-presentation li{list-style:none}.o-manifest-layout__toolbox div:first-child{margin-left:auto}.o-manifest-layout__toolbox.-u-hidden{display:none}.o-manifest-layout__toolbox__search{position:relative}.o-manifest-layout__toolbox__search .a-form-field{min-height:10px}.o-manifest-layout__toolbox__search .a-icon{position:absolute;right:.6875rem;top:.3125rem;opacity:.5;pointer-events:none}.o-manifest-layout__content{height:100%}.o-manifest-layout__content .pointer{cursor:pointer}.pry-viewingpresentation{display:flex;overflow-y:scroll}.pry-viewingpresentation .o-manifest-layout__content,.pry-viewingpresentation .o-dashboard-widget{flex:100% 1 1}.o-presentation{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:1.875rem;padding:.25rem .25rem 1.25rem;overflow-y:visible}.o-presentation .a-h3{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.o-presentation__item{display:flex;flex-direction:column;align-items:stretch}.o-presentation__item:hover{cursor:pointer}.o-presentation__item:hover .o-presentation__item__footer pry-icon{visibility:visible;opacity:1}.o-presentation__item .a-tooltip{align-items:center;width:100%;height:100%}.o-presentation__item__image{width:auto;cursor:pointer;overflow:hidden;height:6.875rem;display:flex;align-items:center;justify-content:center}.o-presentation__item__image .is-full-width{width:100%;height:100%;object-fit:cover}.o-presentation__item__header{position:relative;display:flex;align-items:flex-start;justify-content:center;height:6.875rem}.o-presentation__item__header pry-icon.is-private{position:absolute;top:.625rem;left:.625rem}.o-presentation__item__txt{flex-grow:1;padding:.625rem .9375rem;display:flex;flex-direction:column;justify-content:space-between}.o-presentation__item__txt .a-h3{font-size:.875rem}.o-presentation__item__txt .a-p{font-size:.8125rem}.o-presentation__item__txt .a-p.-date{margin-bottom:0}.o-presentation__item__footer{display:flex;align-content:center;justify-content:center;font-size:.875rem;line-height:1.125rem;padding:.1875rem 0}.o-presentation__item__footer .a-btn{margin-left:1.25rem}.o-presentation__item__footer pry-icon{visibility:hidden;opacity:0;transition:visibility .1s linear,opacity .1s linear;margin-left:.1875rem}.o-presentation-consult{width:100%;padding:.9375rem}.description-container{position:relative;width:100%}.description{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;display:inherit;position:relative;line-height:2rem;box-sizing:border-box;pointer-events:none}.description:after{content:\"\";display:block;position:absolute;top:0;right:0;width:40px;height:48px;z-index:1;pointer-events:initial}.description:hover:after{cursor:pointer}.description-tooltip{position:absolute;max-width:50vw;visibility:hidden;background-color:#fff;padding:20px;-webkit-box-shadow:0 0 50px 0 rgba(0,0,0,.3);opacity:0;transition:opacity .5s ease;z-index:2}.description:hover+.description-tooltip{visibility:visible;transition:opacity .2s ease;opacity:1}.title-tooltip{transform:translateY(4rem)}.info-tooltip{transform:translateY(8rem)}h1.a-presentation-title{font-size:16px;padding-right:20px;color:#113b6e}.title-container{display:flex}.title-container .h-1{padding-top:0;padding-bottom:0}.actions-list{display:flex;align-items:center;gap:.9375rem;flex-direction:row;flex-wrap:nowrap;justify-content:space-evenly;list-style-type:none}.info-icon{position:relative;width:1.5rem;height:1.5rem;border-radius:50%;cursor:pointer;display:inline-flex;justify-content:center;align-items:center;align-self:center;margin-right:1rem;border:1px solid #3E546A}.more-actions{position:absolute;top:.375rem;right:.625rem}.more-actions .a-btn{padding:.125rem 0;border-radius:50%}.m-context-menu{position:absolute}\n"] }]
216
+ args: [{ selector: 'pry-presentation-css', template: '', encapsulation: ViewEncapsulation.None, styles: ["pry-add-edit-presentation{height:100%}.o-manifest-layout__content--presentation{width:100%;display:flex;flex-direction:column;padding:20px;text-align:left}.o-manifest-layout__content--presentation .a-h1{line-height:38px;font-size:28px;text-align:left}.o-manifest-layout__content--presentation .a-btn{margin:0 auto}.o-manifest-layout__toolbox{display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:.9375rem}.o-manifest-layout__toolbox .a-btn{border-radius:22px}.o-presentation-form-wrapper{display:flex;padding-bottom:.3125rem;gap:3rem}.o-presentation__metadata-editor{flex:1 50%}.o-presentation-form{display:flex;flex-direction:column;align-items:center;flex:1 50%}.o-presentation-form .a-presentation-form-input{padding:.25rem .75rem;margin-bottom:.75rem}.o-presentation-form .o-file-input{border:1px dashed black;display:flex;flex-direction:column;align-items:center;width:100%;padding:2.5rem 0;gap:15px}.o-presentation-form pry-select{width:100%}.o-presentation-form .a-btn[type=submit]{margin-top:20px}.a-presentation-title{padding:10px}\n", ".o-presentation{margin:0;padding:0}.o-presentation li{list-style:none}.o-manifest-layout__toolbox div:first-child{margin-left:auto}.o-manifest-layout__toolbox.-u-hidden{display:none}.o-manifest-layout__toolbox__search{position:relative}.o-manifest-layout__toolbox__search .a-form-field{min-height:10px}.o-manifest-layout__toolbox__search .a-icon{position:absolute;right:.6875rem;top:.3125rem;opacity:.5;pointer-events:none}.o-manifest-layout__content{height:100%;overflow:auto}.o-manifest-layout__content .pointer{cursor:pointer}.pry-viewingpresentation{display:flex;overflow-y:scroll}.pry-viewingpresentation .o-manifest-layout__content,.pry-viewingpresentation .o-dashboard-widget{flex:100% 1 1}.o-presentation{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:1.875rem;padding:.25rem .25rem 1.25rem;overflow-y:visible}.o-presentation .a-h3{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.o-presentation__item{display:flex;flex-direction:column;align-items:stretch}.o-presentation__item:hover{cursor:pointer}.o-presentation__item:hover .o-presentation__item__footer pry-icon{visibility:visible;opacity:1}.o-presentation__item__image{width:auto;cursor:pointer;overflow:hidden;height:6.875rem;display:flex;align-items:center;justify-content:center}.o-presentation__item__image .is-full-width{width:100%;height:100%;object-fit:cover}.o-presentation__item__header{position:relative;display:flex;align-items:flex-start;justify-content:center;height:6.875rem}.o-presentation__item__header pry-icon.is-private{position:absolute;top:.625rem;left:.625rem}.o-presentation__item__txt{flex-grow:1;padding:.625rem .9375rem;display:flex;flex-direction:column;justify-content:space-between}.o-presentation__item__txt .a-h3{font-size:.875rem}.o-presentation__item__txt .a-p{font-size:.8125rem}.o-presentation__item__txt .a-p.-date{margin-bottom:0}.o-presentation__item__description-container{position:relative;width:100%;display:flex;align-content:center}.o-presentation__item__description-container.a-tooltip[data-tooltip]:after{width:100%}.o-presentation__item__description{width:100%;max-height:2.5rem}.o-presentation__item__footer{display:flex;align-content:center;justify-content:center;font-size:.875rem;line-height:1.125rem;padding:.1875rem 0;max-height:2.3125rem}.o-presentation__item__footer .a-btn{margin-left:1.25rem}.o-presentation__item__footer pry-icon{visibility:hidden;opacity:0;transition:visibility .1s linear,opacity .1s linear;margin-left:.1875rem}.o-presentation-consult{width:100%;padding:.9375rem}.more-button{position:absolute;top:.375rem;right:.625rem}.more-button .a-btn{padding:.125rem 0;border-radius:50%}.m-context-menu{position:absolute}\n"] }]
227
217
  }] });
228
218
 
229
219
  class PryPresentationComponent extends SubscriptionnerDirective {
@@ -409,11 +399,11 @@ class PryPresentationComponent extends SubscriptionnerDirective {
409
399
  this.submit.nativeElement.focus();
410
400
  }
411
401
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PryPresentationComponent, deps: [{ token: i1.Store }, { token: i2.Overlay }, { token: i0.ViewContainerRef }, { token: i3.Router }, { token: i4.PryTitleService }, { token: i3.ActivatedRoute }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
412
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: PryPresentationComponent, selector: "pry-presentation", inputs: { editionStartUrl: "editionStartUrl", consultStartUrl: "consultStartUrl", meAsOwner: "meAsOwner", mode: "mode", listOfManifests: "listOfManifests", hideToolbox: "hideToolbox", search: "search" }, viewQueries: [{ propertyName: "templateModalActions", first: true, predicate: ["modalActions"], descendants: true, read: TemplateRef }, { propertyName: "template", first: true, predicate: ["modal"], descendants: true, read: TemplateRef }, { propertyName: "openModal", first: true, predicate: ["openModal"], descendants: true }, { propertyName: "confirm", first: true, predicate: ["confirm"], descendants: true }, { propertyName: "submit", first: true, predicate: ["submit"], descendants: true }, { propertyName: "cross", first: true, predicate: ["cross"], descendants: true }, { propertyName: "crossVisibility", first: true, predicate: ["crossVisibility"], descendants: true }, { propertyName: "visibilityModal", first: true, predicate: ["visibilityModal"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<pry-presentation-css></pry-presentation-css>\n<div class=\"o-manifest-layout\" [ngSwitch]=\"selectedMode\">\n <ng-container *ngSwitchDefault>\n <div class=\"o-manifest-layout__toolbox\" [class.-u-hidden]=\"hideToolbox\">\n <button\n class=\"a-btn a-btn--primary a-btn--icon-text a-tooltip\"\n [attr.data-tooltip]=\"'@pry.presentation.create' | i18n\"\n data-tooltip-position=\"bottom\"\n type=\"button\"\n (click)=\"creation()\"\n *pryAccess=\"{ module: 'dashboard', page: 'manifest', action: 'create' }\"\n >\n {{ '@pry.presentation.create' | i18n }}\n </button>\n <div>\n <div class=\"o-manifest-layout__toolbox__search\">\n <label id=\"catalog-search-label\" for=\"catalog-search\" class=\"u-visually-hidden\">\n <span>{{ '@pry.toolbox.catalog.filter.name' | i18n }}</span>\n </label>\n <input\n id=\"catalog-search\"\n type=\"text\"\n class=\"a-form-field\"\n [placeholder]=\"'@pry.presentation.search' | i18n\"\n [ngModel]=\"search$ | async\"\n (ngModelChange)=\"this.search$.next($event)\"\n />\n <pry-icon class=\"search-icon\" iconSvg=\"search\" [width]=\"17\" [height]=\"17\"></pry-icon>\n </div>\n </div>\n </div>\n <div class=\"o-manifest-layout__content\">\n <h1 class=\"a-h1\">{{ '@pry.presentation.title' | i18n }}</h1>\n <div class=\"o-presentation-wrapper\">\n <ul class=\"o-presentation\">\n <li\n class=\"o-presentation__item\"\n *ngFor=\"let presentation of filteredPresentations$ | async; let index = index\"\n >\n <div class=\"o-presentation__item__header\">\n <ng-container *ngIf=\"presentation.visibility.type === PryVisibilityType.PRIVATE\">\n <pry-icon\n [iconSvg]=\"presentation.visibility.type.toLowerCase()\"\n class=\"is-private a-tooltip\"\n [attr.data-tooltip]=\"'@pry.presentation.private' | i18n\"\n [height]=\"17\"\n [width]=\"17\"\n ></pry-icon>\n </ng-container>\n <div\n class=\"a-tooltip\"\n (click)=\"fetch(presentation)\"\n [attr.data-tooltip]=\"'@pry.presentation.view' | i18n\"\n >\n <div class=\"o-presentation__item__image\">\n <img\n alt=\"\"\n [height]=\"presentation.cover ? 600 : 100\"\n [width]=\"presentation.cover ? 600 : 100\"\n [class.is-full-width]=\"presentation.cover\"\n [src]=\"presentation.image | getSecuredImage | async\"\n />\n </div>\n </div>\n <ng-container *ngIf=\"presentation.owner\">\n <div class=\"more-actions\" *pryAccess=\"{ module: 'dashboard', page: 'manifest', action: 'share' }\">\n <button\n type=\"button\"\n class=\"a-btn a-btn--more a-tooltip\"\n [id]=\"'more-actions-' + index\"\n [attr.data-tooltip]=\"'@pry.restitution.more' | i18n\"\n (click)=\"$event.stopPropagation(); toggleModalActions(presentation, button)\"\n #button\n >\n <pry-icon [height]=\"25\" [width]=\"25\" iconSvg=\"more_horiz\"></pry-icon>\n </button>\n </div>\n </ng-container>\n </div>\n <div\n class=\"o-presentation__item__txt a-tooltip\"\n (click)=\"fetch(presentation)\"\n [attr.data-tooltip]=\"'@pry.presentation.view' | i18n\"\n >\n <h3 class=\"a-h3\">{{ presentation.name }}</h3>\n <div class=\"a-p\">\n <div class=\"description-container\">\n <span class=\"description\">\n {{ presentation.description }}\n </span>\n <div class=\"description-tooltip\">{{ presentation.description }}</div>\n </div>\n </div>\n <p class=\"a-p -date\">{{ presentation.modificationDate | sinceDate }}</p>\n </div>\n <div\n class=\"o-presentation__item__footer a-tooltip\"\n (click)=\"fetch(presentation)\"\n [attr.data-tooltip]=\"'@pry.presentation.view' | i18n\"\n >\n <button class=\"a-btn\">\n {{ '@pry.presentation.consult' | i18n }}\n <pry-icon [width]=\"20\" [height]=\"20\" iconSvg=\"arrow_right\"></pry-icon>\n </button>\n </div>\n </li>\n </ul>\n </div>\n </div>\n </ng-container>\n <ng-container *ngSwitchCase=\"ViewMode.CREATION\">\n <pry-add-edit-presentation\n [selectedPresentation]=\"selectedPresentation$ | async\"\n (goBack)=\"closeRestitution()\"\n [editionStartUrl]=\"editionStartUrl\"\n [edition]=\"false\"\n [mode]=\"mode\"\n ></pry-add-edit-presentation>\n </ng-container>\n <ng-container *ngSwitchCase=\"ViewMode.EDITION\">\n <pry-add-edit-presentation\n [selectedPresentation]=\"selectedPresentation$ | async\"\n (goBack)=\"closeRestitution()\"\n [editionStartUrl]=\"editionStartUrl\"\n [edition]=\"true\"\n [mode]=\"mode\"\n ></pry-add-edit-presentation>\n </ng-container>\n</div>\n\n<ng-template #modal>\n <div\n class=\"o-modal\"\n #visibilityModal\n role=\"dialog\"\n aria-modal=\"true\"\n aria-labelledby=\"dialog change visibility\"\n *ngIf=\"selectedPresentation$ | async as selectedPresentation\"\n >\n <div class=\"o-modal__top\">\n <div class=\"o-modal__top__title\">\n <h2 class=\"a-h2\" id=\"dialog_title\">{{ '@pry.toolbox.rename' | i18n }}</h2>\n </div>\n <div class=\"o-modal__top__close\">\n <button\n class=\"a-btn a-btn--icon-only\"\n #crossVisibility\n (keydown.shift.tab)=\"focusValidation()\"\n (click)=\"toggleModal()\"\n >\n <pry-icon iconSvg=\"close\" [height]=\"35\" [width]=\"35\"></pry-icon>\n <span class=\"u-visually-hidden\">{{ '@pry.toolbox.close' | i18n }}</span>\n </button>\n </div>\n </div>\n <pry-share [ngModel]=\"selectedPresentation.visibility\" (ngModelChange)=\"visibility = $event\"></pry-share>\n <div class=\"m-btn-group\">\n <button type=\"button\" class=\"a-btn a-btn--secondary\" (click)=\"toggleModal()\">\n {{ '@pry.toolbox.manifest.close' | i18n }}\n </button>\n <button\n type=\"submit\"\n class=\"a-btn a-btn--primary\"\n #submit\n (keydown.tab)=\"focusCrossElement()\"\n (click)=\"changeVisibility(selectedPresentation)\"\n >\n {{ '@pry.toolbox.manifest.check' | i18n }}\n </button>\n </div>\n </div>\n</ng-template>\n<ng-template #modalActions>\n <div class=\"m-context-menu\">\n <ul\n class=\"m-context-menu__list\"\n role=\"dialog\"\n aria-modal=\"true\"\n aria-labelledby=\"dialog presenation options\"\n *ngIf=\"selectedPresentation$ | async as selectedPresentation\"\n >\n <li class=\"m-context-menu__list__item\">\n <button\n class=\"a-btn -link-like\"\n (click)=\"edit(selectedPresentation)\"\n [disabled]=\"!selectedPresentation.owner\"\n *pryAccess=\"{ module: 'dashboard', page: 'manifest', action: 'edit' }\"\n >\n {{ '@pry.presentation.edition' | i18n }}\n </button>\n </li>\n <li class=\"m-context-menu__list__item\">\n <button\n (click)=\"toggleModal(selectedPresentation)\"\n class=\"a-btn -link-like\"\n aria-haspopup=\"dialog\"\n [disabled]=\"!selectedPresentation.owner\"\n *pryAccess=\"{ module: 'dashboard', page: 'manifest', action: 'share' }\"\n >\n {{ '@pry.presentation.share' | i18n }}\n </button>\n </li>\n <li class=\"m-context-menu__list__item\">\n <button\n class=\"a-btn -link-like\"\n #openModal\n (click)=\"delete(selectedPresentation.id)\"\n [disabled]=\"!selectedPresentation.owner\"\n *pryAccess=\"{ module: 'dashboard', page: 'manifest', action: 'delete' }\"\n >\n {{ '@pry.presentation.delete' | i18n }}\n </button>\n </li>\n </ul>\n </div>\n</ng-template>\n", dependencies: [{ kind: "component", type: i4.PryIconComponent, selector: "pry-icon", inputs: ["color", "iconSvg", "animation", "iconImage", "alt", "width", "height", "classes"] }, { kind: "directive", type: i4.PryAccessDirective, selector: "[pryAccess]", inputs: ["pryAccess"] }, { kind: "directive", type: i4$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i4$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "component", type: i4.PryShareComponent, selector: "pry-share", inputs: ["value", "labelProperty", "valueProperty", "users$"] }, { kind: "directive", type: i4$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i6$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i6$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i6$1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i6$1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i6$1.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "component", type: PryAddEditPresentationComponent, selector: "pry-add-edit-presentation", inputs: ["edition", "editionStartUrl", "selectedPresentation", "mode"], outputs: ["goBack"] }, { kind: "component", type: PryPresentationCssComponent, selector: "pry-presentation-css" }, { kind: "pipe", type: i4.GetSecuredImagePipe, name: "getSecuredImage" }, { kind: "pipe", type: i9.PrySinceDatePipe, name: "sinceDate" }, { kind: "pipe", type: i4.I18nPipe, name: "i18n" }, { kind: "pipe", type: i6$1.AsyncPipe, name: "async" }] }); }
402
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: PryPresentationComponent, selector: "pry-presentation", inputs: { editionStartUrl: "editionStartUrl", consultStartUrl: "consultStartUrl", meAsOwner: "meAsOwner", mode: "mode", listOfManifests: "listOfManifests", hideToolbox: "hideToolbox", search: "search" }, viewQueries: [{ propertyName: "templateModalActions", first: true, predicate: ["modalActions"], descendants: true, read: TemplateRef }, { propertyName: "template", first: true, predicate: ["modal"], descendants: true, read: TemplateRef }, { propertyName: "openModal", first: true, predicate: ["openModal"], descendants: true }, { propertyName: "confirm", first: true, predicate: ["confirm"], descendants: true }, { propertyName: "submit", first: true, predicate: ["submit"], descendants: true }, { propertyName: "cross", first: true, predicate: ["cross"], descendants: true }, { propertyName: "crossVisibility", first: true, predicate: ["crossVisibility"], descendants: true }, { propertyName: "visibilityModal", first: true, predicate: ["visibilityModal"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<pry-presentation-css></pry-presentation-css>\n<div class=\"o-manifest-layout\" [ngSwitch]=\"selectedMode\">\n <ng-container *ngSwitchDefault>\n <div class=\"o-manifest-layout__toolbox\" [class.-u-hidden]=\"hideToolbox\">\n <button\n class=\"a-btn a-btn--primary a-btn--icon-text a-tooltip\"\n [attr.data-tooltip]=\"'@pry.presentation.create' | i18n\"\n data-tooltip-position=\"bottom\"\n type=\"button\"\n (click)=\"creation()\"\n *pryAccess=\"{ module: 'dashboard', page: 'manifest', action: 'create' }\"\n >\n {{ '@pry.presentation.create' | i18n }}\n </button>\n <div>\n <div class=\"o-manifest-layout__toolbox__search\">\n <label id=\"catalog-search-label\" for=\"catalog-search\" class=\"u-visually-hidden\">\n <span>{{ '@pry.toolbox.catalog.filter.name' | i18n }}</span>\n </label>\n <input\n id=\"catalog-search\"\n type=\"text\"\n class=\"a-form-field\"\n [placeholder]=\"'@pry.presentation.search' | i18n\"\n [ngModel]=\"search$ | async\"\n (ngModelChange)=\"this.search$.next($event)\"\n />\n <pry-icon class=\"search-icon\" iconSvg=\"search\" [width]=\"17\" [height]=\"17\"></pry-icon>\n </div>\n </div>\n </div>\n <div class=\"o-manifest-layout__content\">\n <h1 class=\"a-h1\">{{ '@pry.presentation.title' | i18n }}</h1>\n <div class=\"o-presentation-wrapper\">\n <ul class=\"o-presentation\">\n <li\n class=\"o-presentation__item\"\n *ngFor=\"let presentation of filteredPresentations$ | async; let index = index\"\n >\n <div class=\"o-presentation__item__header\">\n <ng-container *ngIf=\"presentation.visibility.type === PryVisibilityType.PRIVATE\">\n <pry-icon\n [iconSvg]=\"presentation.visibility.type.toLowerCase()\"\n class=\"is-private a-tooltip -tooltip-no-wrap\"\n [attr.data-tooltip]=\"'@pry.presentation.private' | i18n\"\n [height]=\"17\"\n [width]=\"17\"\n ></pry-icon>\n </ng-container>\n <div\n class=\"a-tooltip -tooltip-no-wrap\"\n (click)=\"fetch(presentation)\"\n [attr.data-tooltip]=\"'@pry.presentation.view' | i18n\"\n >\n <div class=\"o-presentation__item__image\">\n <img\n alt=\"\"\n [height]=\"presentation.cover ? 600 : 100\"\n [width]=\"presentation.cover ? 600 : 100\"\n [class.is-full-width]=\"presentation.cover\"\n [src]=\"presentation.image | getSecuredImage | async\"\n />\n </div>\n </div>\n <ng-container *ngIf=\"presentation.owner\">\n <div class=\"more-button\" *pryAccess=\"{ module: 'dashboard', page: 'manifest', action: 'share' }\">\n <button\n type=\"button\"\n class=\"a-btn a-btn--more a-tooltip -tooltip-no-wrap\"\n [id]=\"'more-button-' + index\"\n [attr.data-tooltip]=\"'@pry.restitution.more' | i18n\"\n (click)=\"$event.stopPropagation(); toggleModalActions(presentation, button)\"\n #button\n >\n <pry-icon [height]=\"25\" [width]=\"25\" iconSvg=\"more_horiz\"></pry-icon>\n </button>\n </div>\n </ng-container>\n </div>\n <div class=\"o-presentation__item__txt\" (click)=\"fetch(presentation)\">\n <h3 class=\"a-h3\">{{ presentation.name }}</h3>\n <div class=\"o-presentation__item__description-container\" ellipsis textElementSelector=\".a-p\">\n <div class=\"o-presentation__item__description a-p\">\n {{ presentation.description }}\n </div>\n </div>\n <p class=\"a-p -date\">{{ presentation.modificationDate | sinceDate }}</p>\n </div>\n <div\n class=\"o-presentation__item__footer a-tooltip -tooltip-no-wrap\"\n (click)=\"fetch(presentation)\"\n [attr.data-tooltip]=\"'@pry.presentation.view' | i18n\"\n >\n <button class=\"a-btn\">\n {{ '@pry.presentation.consult' | i18n }}\n <pry-icon [width]=\"20\" [height]=\"20\" iconSvg=\"arrow_right\"></pry-icon>\n </button>\n </div>\n </li>\n </ul>\n </div>\n </div>\n </ng-container>\n <ng-container *ngSwitchCase=\"ViewMode.CREATION\">\n <pry-add-edit-presentation\n [selectedPresentation]=\"selectedPresentation$ | async\"\n (goBack)=\"closeRestitution()\"\n [editionStartUrl]=\"editionStartUrl\"\n [edition]=\"false\"\n [mode]=\"mode\"\n ></pry-add-edit-presentation>\n </ng-container>\n <ng-container *ngSwitchCase=\"ViewMode.EDITION\">\n <pry-add-edit-presentation\n [selectedPresentation]=\"selectedPresentation$ | async\"\n (goBack)=\"closeRestitution()\"\n [editionStartUrl]=\"editionStartUrl\"\n [edition]=\"true\"\n [mode]=\"mode\"\n ></pry-add-edit-presentation>\n </ng-container>\n</div>\n\n<ng-template #modal>\n <div\n class=\"o-modal\"\n #visibilityModal\n role=\"dialog\"\n aria-modal=\"true\"\n aria-labelledby=\"dialog change visibility\"\n *ngIf=\"selectedPresentation$ | async as selectedPresentation\"\n >\n <div class=\"o-modal__top\">\n <div class=\"o-modal__top__title\">\n <h2 class=\"a-h2\" id=\"dialog_title\">{{ '@pry.toolbox.share' | i18n }}</h2>\n </div>\n <div class=\"o-modal__top__close\">\n <button\n class=\"a-btn a-btn--icon-only\"\n #crossVisibility\n (keydown.shift.tab)=\"focusValidation()\"\n (click)=\"toggleModal()\"\n >\n <pry-icon iconSvg=\"close\" [height]=\"35\" [width]=\"35\"></pry-icon>\n <span class=\"u-visually-hidden\">{{ '@pry.toolbox.close' | i18n }}</span>\n </button>\n </div>\n </div>\n <pry-share [ngModel]=\"selectedPresentation.visibility\" (ngModelChange)=\"visibility = $event\"></pry-share>\n <div class=\"m-btn-group\">\n <button type=\"button\" class=\"a-btn a-btn--secondary\" (click)=\"toggleModal()\">\n {{ '@pry.toolbox.manifest.close' | i18n }}\n </button>\n <button\n type=\"submit\"\n class=\"a-btn a-btn--primary\"\n #submit\n (keydown.tab)=\"focusCrossElement()\"\n (click)=\"changeVisibility(selectedPresentation)\"\n >\n {{ '@pry.toolbox.manifest.check' | i18n }}\n </button>\n </div>\n </div>\n</ng-template>\n<ng-template #modalActions>\n <div class=\"m-context-menu\">\n <ul\n class=\"m-context-menu__list\"\n role=\"dialog\"\n aria-modal=\"true\"\n aria-labelledby=\"dialog presentation options\"\n *ngIf=\"selectedPresentation$ | async as selectedPresentation\"\n >\n <li class=\"m-context-menu__list__item\">\n <button\n class=\"a-btn -link-like\"\n (click)=\"edit(selectedPresentation)\"\n [disabled]=\"!selectedPresentation.owner\"\n *pryAccess=\"{ module: 'dashboard', page: 'manifest', action: 'edit' }\"\n >\n {{ '@pry.presentation.edition' | i18n }}\n </button>\n </li>\n <li class=\"m-context-menu__list__item\">\n <button\n (click)=\"toggleModal(selectedPresentation)\"\n class=\"a-btn -link-like\"\n aria-haspopup=\"dialog\"\n [disabled]=\"!selectedPresentation.owner\"\n *pryAccess=\"{ module: 'dashboard', page: 'manifest', action: 'share' }\"\n >\n {{ '@pry.presentation.share' | i18n }}\n </button>\n </li>\n <li class=\"m-context-menu__list__item\">\n <button\n class=\"a-btn -link-like\"\n #openModal\n (click)=\"delete(selectedPresentation.id)\"\n [disabled]=\"!selectedPresentation.owner\"\n *pryAccess=\"{ module: 'dashboard', page: 'manifest', action: 'delete' }\"\n >\n {{ '@pry.presentation.delete' | i18n }}\n </button>\n </li>\n </ul>\n </div>\n</ng-template>\n", dependencies: [{ kind: "component", type: i4.PryIconComponent, selector: "pry-icon", inputs: ["color", "iconSvg", "animation", "iconImage", "alt", "width", "height", "classes"] }, { kind: "directive", type: i4.PryAccessDirective, selector: "[pryAccess]", inputs: ["pryAccess"] }, { kind: "directive", type: i4.EllipsisDirective, selector: "[ellipsis]", inputs: ["textElementSelector"] }, { kind: "directive", type: i4$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i4$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "component", type: i4.PryShareComponent, selector: "pry-share", inputs: ["value", "labelProperty", "valueProperty", "users$"] }, { kind: "directive", type: i4$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i6$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i6$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i6$1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i6$1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i6$1.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "component", type: PryAddEditPresentationComponent, selector: "pry-add-edit-presentation", inputs: ["edition", "editionStartUrl", "selectedPresentation", "mode"], outputs: ["goBack"] }, { kind: "component", type: PryPresentationCssComponent, selector: "pry-presentation-css" }, { kind: "pipe", type: i4.GetSecuredImagePipe, name: "getSecuredImage" }, { kind: "pipe", type: i9.PrySinceDatePipe, name: "sinceDate" }, { kind: "pipe", type: i4.I18nPipe, name: "i18n" }, { kind: "pipe", type: i6$1.AsyncPipe, name: "async" }] }); }
413
403
  }
414
404
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PryPresentationComponent, decorators: [{
415
405
  type: Component,
416
- args: [{ selector: 'pry-presentation', template: "<pry-presentation-css></pry-presentation-css>\n<div class=\"o-manifest-layout\" [ngSwitch]=\"selectedMode\">\n <ng-container *ngSwitchDefault>\n <div class=\"o-manifest-layout__toolbox\" [class.-u-hidden]=\"hideToolbox\">\n <button\n class=\"a-btn a-btn--primary a-btn--icon-text a-tooltip\"\n [attr.data-tooltip]=\"'@pry.presentation.create' | i18n\"\n data-tooltip-position=\"bottom\"\n type=\"button\"\n (click)=\"creation()\"\n *pryAccess=\"{ module: 'dashboard', page: 'manifest', action: 'create' }\"\n >\n {{ '@pry.presentation.create' | i18n }}\n </button>\n <div>\n <div class=\"o-manifest-layout__toolbox__search\">\n <label id=\"catalog-search-label\" for=\"catalog-search\" class=\"u-visually-hidden\">\n <span>{{ '@pry.toolbox.catalog.filter.name' | i18n }}</span>\n </label>\n <input\n id=\"catalog-search\"\n type=\"text\"\n class=\"a-form-field\"\n [placeholder]=\"'@pry.presentation.search' | i18n\"\n [ngModel]=\"search$ | async\"\n (ngModelChange)=\"this.search$.next($event)\"\n />\n <pry-icon class=\"search-icon\" iconSvg=\"search\" [width]=\"17\" [height]=\"17\"></pry-icon>\n </div>\n </div>\n </div>\n <div class=\"o-manifest-layout__content\">\n <h1 class=\"a-h1\">{{ '@pry.presentation.title' | i18n }}</h1>\n <div class=\"o-presentation-wrapper\">\n <ul class=\"o-presentation\">\n <li\n class=\"o-presentation__item\"\n *ngFor=\"let presentation of filteredPresentations$ | async; let index = index\"\n >\n <div class=\"o-presentation__item__header\">\n <ng-container *ngIf=\"presentation.visibility.type === PryVisibilityType.PRIVATE\">\n <pry-icon\n [iconSvg]=\"presentation.visibility.type.toLowerCase()\"\n class=\"is-private a-tooltip\"\n [attr.data-tooltip]=\"'@pry.presentation.private' | i18n\"\n [height]=\"17\"\n [width]=\"17\"\n ></pry-icon>\n </ng-container>\n <div\n class=\"a-tooltip\"\n (click)=\"fetch(presentation)\"\n [attr.data-tooltip]=\"'@pry.presentation.view' | i18n\"\n >\n <div class=\"o-presentation__item__image\">\n <img\n alt=\"\"\n [height]=\"presentation.cover ? 600 : 100\"\n [width]=\"presentation.cover ? 600 : 100\"\n [class.is-full-width]=\"presentation.cover\"\n [src]=\"presentation.image | getSecuredImage | async\"\n />\n </div>\n </div>\n <ng-container *ngIf=\"presentation.owner\">\n <div class=\"more-actions\" *pryAccess=\"{ module: 'dashboard', page: 'manifest', action: 'share' }\">\n <button\n type=\"button\"\n class=\"a-btn a-btn--more a-tooltip\"\n [id]=\"'more-actions-' + index\"\n [attr.data-tooltip]=\"'@pry.restitution.more' | i18n\"\n (click)=\"$event.stopPropagation(); toggleModalActions(presentation, button)\"\n #button\n >\n <pry-icon [height]=\"25\" [width]=\"25\" iconSvg=\"more_horiz\"></pry-icon>\n </button>\n </div>\n </ng-container>\n </div>\n <div\n class=\"o-presentation__item__txt a-tooltip\"\n (click)=\"fetch(presentation)\"\n [attr.data-tooltip]=\"'@pry.presentation.view' | i18n\"\n >\n <h3 class=\"a-h3\">{{ presentation.name }}</h3>\n <div class=\"a-p\">\n <div class=\"description-container\">\n <span class=\"description\">\n {{ presentation.description }}\n </span>\n <div class=\"description-tooltip\">{{ presentation.description }}</div>\n </div>\n </div>\n <p class=\"a-p -date\">{{ presentation.modificationDate | sinceDate }}</p>\n </div>\n <div\n class=\"o-presentation__item__footer a-tooltip\"\n (click)=\"fetch(presentation)\"\n [attr.data-tooltip]=\"'@pry.presentation.view' | i18n\"\n >\n <button class=\"a-btn\">\n {{ '@pry.presentation.consult' | i18n }}\n <pry-icon [width]=\"20\" [height]=\"20\" iconSvg=\"arrow_right\"></pry-icon>\n </button>\n </div>\n </li>\n </ul>\n </div>\n </div>\n </ng-container>\n <ng-container *ngSwitchCase=\"ViewMode.CREATION\">\n <pry-add-edit-presentation\n [selectedPresentation]=\"selectedPresentation$ | async\"\n (goBack)=\"closeRestitution()\"\n [editionStartUrl]=\"editionStartUrl\"\n [edition]=\"false\"\n [mode]=\"mode\"\n ></pry-add-edit-presentation>\n </ng-container>\n <ng-container *ngSwitchCase=\"ViewMode.EDITION\">\n <pry-add-edit-presentation\n [selectedPresentation]=\"selectedPresentation$ | async\"\n (goBack)=\"closeRestitution()\"\n [editionStartUrl]=\"editionStartUrl\"\n [edition]=\"true\"\n [mode]=\"mode\"\n ></pry-add-edit-presentation>\n </ng-container>\n</div>\n\n<ng-template #modal>\n <div\n class=\"o-modal\"\n #visibilityModal\n role=\"dialog\"\n aria-modal=\"true\"\n aria-labelledby=\"dialog change visibility\"\n *ngIf=\"selectedPresentation$ | async as selectedPresentation\"\n >\n <div class=\"o-modal__top\">\n <div class=\"o-modal__top__title\">\n <h2 class=\"a-h2\" id=\"dialog_title\">{{ '@pry.toolbox.rename' | i18n }}</h2>\n </div>\n <div class=\"o-modal__top__close\">\n <button\n class=\"a-btn a-btn--icon-only\"\n #crossVisibility\n (keydown.shift.tab)=\"focusValidation()\"\n (click)=\"toggleModal()\"\n >\n <pry-icon iconSvg=\"close\" [height]=\"35\" [width]=\"35\"></pry-icon>\n <span class=\"u-visually-hidden\">{{ '@pry.toolbox.close' | i18n }}</span>\n </button>\n </div>\n </div>\n <pry-share [ngModel]=\"selectedPresentation.visibility\" (ngModelChange)=\"visibility = $event\"></pry-share>\n <div class=\"m-btn-group\">\n <button type=\"button\" class=\"a-btn a-btn--secondary\" (click)=\"toggleModal()\">\n {{ '@pry.toolbox.manifest.close' | i18n }}\n </button>\n <button\n type=\"submit\"\n class=\"a-btn a-btn--primary\"\n #submit\n (keydown.tab)=\"focusCrossElement()\"\n (click)=\"changeVisibility(selectedPresentation)\"\n >\n {{ '@pry.toolbox.manifest.check' | i18n }}\n </button>\n </div>\n </div>\n</ng-template>\n<ng-template #modalActions>\n <div class=\"m-context-menu\">\n <ul\n class=\"m-context-menu__list\"\n role=\"dialog\"\n aria-modal=\"true\"\n aria-labelledby=\"dialog presenation options\"\n *ngIf=\"selectedPresentation$ | async as selectedPresentation\"\n >\n <li class=\"m-context-menu__list__item\">\n <button\n class=\"a-btn -link-like\"\n (click)=\"edit(selectedPresentation)\"\n [disabled]=\"!selectedPresentation.owner\"\n *pryAccess=\"{ module: 'dashboard', page: 'manifest', action: 'edit' }\"\n >\n {{ '@pry.presentation.edition' | i18n }}\n </button>\n </li>\n <li class=\"m-context-menu__list__item\">\n <button\n (click)=\"toggleModal(selectedPresentation)\"\n class=\"a-btn -link-like\"\n aria-haspopup=\"dialog\"\n [disabled]=\"!selectedPresentation.owner\"\n *pryAccess=\"{ module: 'dashboard', page: 'manifest', action: 'share' }\"\n >\n {{ '@pry.presentation.share' | i18n }}\n </button>\n </li>\n <li class=\"m-context-menu__list__item\">\n <button\n class=\"a-btn -link-like\"\n #openModal\n (click)=\"delete(selectedPresentation.id)\"\n [disabled]=\"!selectedPresentation.owner\"\n *pryAccess=\"{ module: 'dashboard', page: 'manifest', action: 'delete' }\"\n >\n {{ '@pry.presentation.delete' | i18n }}\n </button>\n </li>\n </ul>\n </div>\n</ng-template>\n" }]
406
+ args: [{ selector: 'pry-presentation', template: "<pry-presentation-css></pry-presentation-css>\n<div class=\"o-manifest-layout\" [ngSwitch]=\"selectedMode\">\n <ng-container *ngSwitchDefault>\n <div class=\"o-manifest-layout__toolbox\" [class.-u-hidden]=\"hideToolbox\">\n <button\n class=\"a-btn a-btn--primary a-btn--icon-text a-tooltip\"\n [attr.data-tooltip]=\"'@pry.presentation.create' | i18n\"\n data-tooltip-position=\"bottom\"\n type=\"button\"\n (click)=\"creation()\"\n *pryAccess=\"{ module: 'dashboard', page: 'manifest', action: 'create' }\"\n >\n {{ '@pry.presentation.create' | i18n }}\n </button>\n <div>\n <div class=\"o-manifest-layout__toolbox__search\">\n <label id=\"catalog-search-label\" for=\"catalog-search\" class=\"u-visually-hidden\">\n <span>{{ '@pry.toolbox.catalog.filter.name' | i18n }}</span>\n </label>\n <input\n id=\"catalog-search\"\n type=\"text\"\n class=\"a-form-field\"\n [placeholder]=\"'@pry.presentation.search' | i18n\"\n [ngModel]=\"search$ | async\"\n (ngModelChange)=\"this.search$.next($event)\"\n />\n <pry-icon class=\"search-icon\" iconSvg=\"search\" [width]=\"17\" [height]=\"17\"></pry-icon>\n </div>\n </div>\n </div>\n <div class=\"o-manifest-layout__content\">\n <h1 class=\"a-h1\">{{ '@pry.presentation.title' | i18n }}</h1>\n <div class=\"o-presentation-wrapper\">\n <ul class=\"o-presentation\">\n <li\n class=\"o-presentation__item\"\n *ngFor=\"let presentation of filteredPresentations$ | async; let index = index\"\n >\n <div class=\"o-presentation__item__header\">\n <ng-container *ngIf=\"presentation.visibility.type === PryVisibilityType.PRIVATE\">\n <pry-icon\n [iconSvg]=\"presentation.visibility.type.toLowerCase()\"\n class=\"is-private a-tooltip -tooltip-no-wrap\"\n [attr.data-tooltip]=\"'@pry.presentation.private' | i18n\"\n [height]=\"17\"\n [width]=\"17\"\n ></pry-icon>\n </ng-container>\n <div\n class=\"a-tooltip -tooltip-no-wrap\"\n (click)=\"fetch(presentation)\"\n [attr.data-tooltip]=\"'@pry.presentation.view' | i18n\"\n >\n <div class=\"o-presentation__item__image\">\n <img\n alt=\"\"\n [height]=\"presentation.cover ? 600 : 100\"\n [width]=\"presentation.cover ? 600 : 100\"\n [class.is-full-width]=\"presentation.cover\"\n [src]=\"presentation.image | getSecuredImage | async\"\n />\n </div>\n </div>\n <ng-container *ngIf=\"presentation.owner\">\n <div class=\"more-button\" *pryAccess=\"{ module: 'dashboard', page: 'manifest', action: 'share' }\">\n <button\n type=\"button\"\n class=\"a-btn a-btn--more a-tooltip -tooltip-no-wrap\"\n [id]=\"'more-button-' + index\"\n [attr.data-tooltip]=\"'@pry.restitution.more' | i18n\"\n (click)=\"$event.stopPropagation(); toggleModalActions(presentation, button)\"\n #button\n >\n <pry-icon [height]=\"25\" [width]=\"25\" iconSvg=\"more_horiz\"></pry-icon>\n </button>\n </div>\n </ng-container>\n </div>\n <div class=\"o-presentation__item__txt\" (click)=\"fetch(presentation)\">\n <h3 class=\"a-h3\">{{ presentation.name }}</h3>\n <div class=\"o-presentation__item__description-container\" ellipsis textElementSelector=\".a-p\">\n <div class=\"o-presentation__item__description a-p\">\n {{ presentation.description }}\n </div>\n </div>\n <p class=\"a-p -date\">{{ presentation.modificationDate | sinceDate }}</p>\n </div>\n <div\n class=\"o-presentation__item__footer a-tooltip -tooltip-no-wrap\"\n (click)=\"fetch(presentation)\"\n [attr.data-tooltip]=\"'@pry.presentation.view' | i18n\"\n >\n <button class=\"a-btn\">\n {{ '@pry.presentation.consult' | i18n }}\n <pry-icon [width]=\"20\" [height]=\"20\" iconSvg=\"arrow_right\"></pry-icon>\n </button>\n </div>\n </li>\n </ul>\n </div>\n </div>\n </ng-container>\n <ng-container *ngSwitchCase=\"ViewMode.CREATION\">\n <pry-add-edit-presentation\n [selectedPresentation]=\"selectedPresentation$ | async\"\n (goBack)=\"closeRestitution()\"\n [editionStartUrl]=\"editionStartUrl\"\n [edition]=\"false\"\n [mode]=\"mode\"\n ></pry-add-edit-presentation>\n </ng-container>\n <ng-container *ngSwitchCase=\"ViewMode.EDITION\">\n <pry-add-edit-presentation\n [selectedPresentation]=\"selectedPresentation$ | async\"\n (goBack)=\"closeRestitution()\"\n [editionStartUrl]=\"editionStartUrl\"\n [edition]=\"true\"\n [mode]=\"mode\"\n ></pry-add-edit-presentation>\n </ng-container>\n</div>\n\n<ng-template #modal>\n <div\n class=\"o-modal\"\n #visibilityModal\n role=\"dialog\"\n aria-modal=\"true\"\n aria-labelledby=\"dialog change visibility\"\n *ngIf=\"selectedPresentation$ | async as selectedPresentation\"\n >\n <div class=\"o-modal__top\">\n <div class=\"o-modal__top__title\">\n <h2 class=\"a-h2\" id=\"dialog_title\">{{ '@pry.toolbox.share' | i18n }}</h2>\n </div>\n <div class=\"o-modal__top__close\">\n <button\n class=\"a-btn a-btn--icon-only\"\n #crossVisibility\n (keydown.shift.tab)=\"focusValidation()\"\n (click)=\"toggleModal()\"\n >\n <pry-icon iconSvg=\"close\" [height]=\"35\" [width]=\"35\"></pry-icon>\n <span class=\"u-visually-hidden\">{{ '@pry.toolbox.close' | i18n }}</span>\n </button>\n </div>\n </div>\n <pry-share [ngModel]=\"selectedPresentation.visibility\" (ngModelChange)=\"visibility = $event\"></pry-share>\n <div class=\"m-btn-group\">\n <button type=\"button\" class=\"a-btn a-btn--secondary\" (click)=\"toggleModal()\">\n {{ '@pry.toolbox.manifest.close' | i18n }}\n </button>\n <button\n type=\"submit\"\n class=\"a-btn a-btn--primary\"\n #submit\n (keydown.tab)=\"focusCrossElement()\"\n (click)=\"changeVisibility(selectedPresentation)\"\n >\n {{ '@pry.toolbox.manifest.check' | i18n }}\n </button>\n </div>\n </div>\n</ng-template>\n<ng-template #modalActions>\n <div class=\"m-context-menu\">\n <ul\n class=\"m-context-menu__list\"\n role=\"dialog\"\n aria-modal=\"true\"\n aria-labelledby=\"dialog presentation options\"\n *ngIf=\"selectedPresentation$ | async as selectedPresentation\"\n >\n <li class=\"m-context-menu__list__item\">\n <button\n class=\"a-btn -link-like\"\n (click)=\"edit(selectedPresentation)\"\n [disabled]=\"!selectedPresentation.owner\"\n *pryAccess=\"{ module: 'dashboard', page: 'manifest', action: 'edit' }\"\n >\n {{ '@pry.presentation.edition' | i18n }}\n </button>\n </li>\n <li class=\"m-context-menu__list__item\">\n <button\n (click)=\"toggleModal(selectedPresentation)\"\n class=\"a-btn -link-like\"\n aria-haspopup=\"dialog\"\n [disabled]=\"!selectedPresentation.owner\"\n *pryAccess=\"{ module: 'dashboard', page: 'manifest', action: 'share' }\"\n >\n {{ '@pry.presentation.share' | i18n }}\n </button>\n </li>\n <li class=\"m-context-menu__list__item\">\n <button\n class=\"a-btn -link-like\"\n #openModal\n (click)=\"delete(selectedPresentation.id)\"\n [disabled]=\"!selectedPresentation.owner\"\n *pryAccess=\"{ module: 'dashboard', page: 'manifest', action: 'delete' }\"\n >\n {{ '@pry.presentation.delete' | i18n }}\n </button>\n </li>\n </ul>\n </div>\n</ng-template>\n" }]
417
407
  }], ctorParameters: function () { return [{ type: i1.Store }, { type: i2.Overlay }, { type: i0.ViewContainerRef }, { type: i3.Router }, { type: i4.PryTitleService }, { type: i3.ActivatedRoute }, { type: i0.NgZone }]; }, propDecorators: { templateModalActions: [{
418
408
  type: ViewChild,
419
409
  args: ['modalActions', { read: TemplateRef }]
@@ -502,7 +492,7 @@ const frTranslations = {
502
492
  '@pry': {
503
493
  presentation: {
504
494
  add: {
505
- pageTitle: 'Renseigner la description de la présentation',
495
+ pageTitle: 'Renseigner la description du tableau de bord',
506
496
  info: 'Informations',
507
497
  submit: 'Enregistrer'
508
498
  },
@@ -519,26 +509,26 @@ const frTranslations = {
519
509
  categories: 'Catégories',
520
510
  categoryInput: 'Saisir la/les catégories',
521
511
  grid: 'Grille actuelle: ',
522
- cover: "L'image doit couvrir la carte de la présentation",
512
+ cover: "L'image doit couvrir la carte du tableau de bord",
523
513
  theme: 'Thématique'
524
514
  },
525
515
  share: 'Partager',
526
- options: 'Options de la presentation',
516
+ options: 'Options du tableau de bord',
527
517
  consult: 'Consulter',
528
- view: 'Consulter la presentation',
518
+ view: 'Consulter le tableau de bord',
529
519
  private: 'Présentation privée',
530
520
  homeView: "Afficher en page d'accueil",
531
- erase: 'Supprimer la présentation',
532
- change: 'Modifier la présentation',
521
+ erase: 'Supprimer le tableau de bord',
522
+ change: 'Modifier le tableau de bord',
533
523
  create: 'Créer',
534
- configuration: 'Construire la présentation',
524
+ configuration: 'Construire le tableau de bord',
535
525
  required: 'Ce champ est requis',
536
526
  maxLength: 'Nombre de caractères autorisés : {{len}}',
537
527
  edition: 'Éditer',
538
528
  delete: 'Supprimer',
539
529
  backToCatalog: 'Revenir au catalogue',
540
530
  search: 'Rechercher',
541
- title: 'Catalogue de présentations'
531
+ title: 'Catalogue de tableaux de bord'
542
532
  }
543
533
  }
544
534
  };