@provoly/dashboard 0.20.2 → 0.20.4

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 (203) hide show
  1. package/admin/components/admin-classes/admin-classes-view/admin-attributes-form/admin-attributes-form.component.d.ts +5 -2
  2. package/admin/components/admin-fields/admin-fields-select/admin-fields-select.component.d.ts +1 -1
  3. package/admin/i18n/en.translations.d.ts +1 -0
  4. package/admin/i18n/fr.translations.d.ts +1 -0
  5. package/components/metadata-editor/style/_o-metadata-editor.scss +0 -5
  6. package/dataset/style/_o-pry-dataset-card.scss +5 -37
  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/admin-classes-customize.component.mjs +5 -5
  11. package/esm2022/admin/components/admin-classes/admin-classes-customize/symbol/admin-classes-customize-symbol.component.mjs +3 -3
  12. package/esm2022/admin/components/admin-classes/admin-classes-customize/tooltip/admin-classes-customize-tooltip.component.mjs +5 -5
  13. package/esm2022/admin/components/admin-classes/admin-classes-form/admin-classes-form.component.mjs +3 -3
  14. package/esm2022/admin/components/admin-classes/admin-classes-view/admin-attributes-form/admin-attributes-form.component.mjs +42 -12
  15. package/esm2022/admin/components/admin-classes/admin-classes-view/admin-attributes-new/admin-attributes-new.component.mjs +1 -1
  16. package/esm2022/admin/components/admin-classes/admin-classes-view/admin-attributes-select/admin-attributes-select.component.mjs +3 -3
  17. package/esm2022/admin/components/admin-classes/admin-classes-view/admin-classes-view.component.mjs +3 -3
  18. package/esm2022/admin/components/admin-dataset/shared/admin-form-dataset/admin-form-dataset.component.mjs +3 -3
  19. package/esm2022/admin/components/admin-environment/admin-environment-form/admin-environment-form.component.mjs +3 -3
  20. package/esm2022/admin/components/admin-fields/admin-fields-form/admin-fields-form.component.mjs +3 -3
  21. package/esm2022/admin/components/admin-fields/admin-fields-select/admin-fields-select.component.mjs +2 -2
  22. package/esm2022/admin/components/admin-links/admin-links-new/admin-links-new.component.mjs +3 -3
  23. package/esm2022/admin/components/admin-metadata/shared/form-metadata/form-metadata.component.mjs +3 -3
  24. package/esm2022/admin/components/admin-metadata-rules/shared/admin-form-metadata-rules/admin-form-metadata-rules.component.mjs +3 -3
  25. package/esm2022/admin/i18n/en.translations.mjs +3 -2
  26. package/esm2022/admin/i18n/fr.translations.mjs +3 -2
  27. package/esm2022/components/metadata-editor/metadata-editor.component.mjs +3 -3
  28. package/esm2022/components/metadata-editor/style/css.component.mjs +2 -2
  29. package/esm2022/components/scheme-picker/scheme-picker.component.mjs +3 -3
  30. package/esm2022/dataset/components/dataset-card/dataset-card.component.mjs +5 -5
  31. package/esm2022/dataset/components/dataset-detail/dataset-detail.component.mjs +1 -2
  32. package/esm2022/dataset/i18n/fr.translations.mjs +2 -2
  33. package/esm2022/dataset/style/css.component.mjs +2 -2
  34. package/esm2022/filters/autocomplete/autocomplete.component.mjs +13 -6
  35. package/esm2022/filters/autocomplete/autocomplete.module.mjs +5 -5
  36. package/esm2022/filters/autocomplete/style/css.component.mjs +2 -2
  37. package/esm2022/filters/list/list-filter.component.mjs +1 -1
  38. package/esm2022/import/components/import.component.mjs +3 -3
  39. package/esm2022/lib/core/components/ellipsis.directive.mjs +31 -0
  40. package/esm2022/lib/core/components/select/select.component.mjs +163 -38
  41. package/esm2022/lib/core/components/select/select.module.mjs +4 -5
  42. package/esm2022/lib/core/components/share/share.component.mjs +3 -3
  43. package/esm2022/lib/core/components/translate-id/translate-id.pipe.mjs +7 -8
  44. package/esm2022/lib/core/core.module.mjs +8 -4
  45. package/esm2022/lib/core/i18n/en.translations.mjs +7 -5
  46. package/esm2022/lib/core/i18n/fr.translations.mjs +8 -5
  47. package/esm2022/lib/core/model/admin-api.model.mjs +1 -1
  48. package/esm2022/lib/core/model/display-options.interface.mjs +18 -4
  49. package/esm2022/lib/core/model/filter.interface.mjs +1 -1
  50. package/esm2022/lib/core/model/manifest.interface.mjs +1 -1
  51. package/esm2022/lib/core/public-api.mjs +2 -1
  52. package/esm2022/lib/core/store/class/class.interface.mjs +1 -1
  53. package/esm2022/lib/core/store/class/class.selectors.mjs +6 -2
  54. package/esm2022/lib/core/store/search/search.service.mjs +1 -1
  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 +28 -28
  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/item-utils.mjs +7 -7
  62. package/esm2022/lib/dashboard/store/dashboard.effects.mjs +1 -4
  63. package/esm2022/pipeline/store/pipeline.actions.mjs +1 -1
  64. package/esm2022/pipeline-components/filter/component/filter.component.mjs +4 -4
  65. package/esm2022/pipeline-components/input-datasource/component/input-datasource.component.mjs +3 -3
  66. package/esm2022/pipeline-components/output-dataset/component/output-dataset.component.mjs +3 -3
  67. package/esm2022/presentation/components/add-edit-presentation/add-edit-presentation.component.mjs +3 -3
  68. package/esm2022/presentation/components/presentation.component.mjs +3 -3
  69. package/esm2022/presentation/i18n/fr.translations.mjs +9 -9
  70. package/esm2022/presentation/style/css.component.mjs +2 -2
  71. package/esm2022/restitution/components/restitution/restitution.component.mjs +23 -22
  72. package/esm2022/restitution/components/restitution-catalog/restitution-catalog.component.mjs +13 -6
  73. package/esm2022/restitution/i18n/en.translations.mjs +2 -2
  74. package/esm2022/restitution/i18n/fr.translations.mjs +4 -4
  75. package/esm2022/restitution/style/css.component.mjs +2 -2
  76. package/esm2022/search/search-mono-class/components/search-condition/search-condition.component.mjs +3 -3
  77. package/esm2022/search/search-mono-class/components/search-mono-class/search-mono-class.component.mjs +3 -3
  78. package/esm2022/search/search-mono-class/components/search-order/search-order.component.mjs +3 -3
  79. package/esm2022/search/search-multi-class/components/multi-class-condition/multi-class-condition.component.mjs +3 -3
  80. package/esm2022/supervision/components/supervision-integration-errors/supervision-integration-errors.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 +6 -6
  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 +12 -13
  94. package/esm2022/widgets/widget-graph/component/widget-graph.component.mjs +3 -3
  95. package/esm2022/widgets/widget-map/component/widget-map.component.mjs +13 -7
  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/pipe/widget-map-geometry-fields-for.pipe.mjs +3 -3
  99. package/esm2022/widgets/widget-map/style/css.component.mjs +2 -2
  100. package/esm2022/widgets/widget-map/utils/cql-utils.class.mjs +2 -2
  101. package/esm2022/widgets/widget-map/utils/widget-map.utils.mjs +6 -6
  102. package/esm2022/widgets/widget-table/component/widget-table.component.mjs +8 -8
  103. package/esm2022/widgets/widget-table/get-value/get-value.pipe.mjs +2 -2
  104. package/esm2022/widgets/widget-tile/component/widget-tile.component.mjs +3 -3
  105. package/fesm2022/provoly-dashboard-admin.mjs +80 -48
  106. package/fesm2022/provoly-dashboard-admin.mjs.map +1 -1
  107. package/fesm2022/provoly-dashboard-components-metadata-editor.mjs +4 -4
  108. package/fesm2022/provoly-dashboard-components-metadata-editor.mjs.map +1 -1
  109. package/fesm2022/provoly-dashboard-components-scheme-picker.mjs +2 -2
  110. package/fesm2022/provoly-dashboard-components-scheme-picker.mjs.map +1 -1
  111. package/fesm2022/provoly-dashboard-dataset.mjs +5 -6
  112. package/fesm2022/provoly-dashboard-dataset.mjs.map +1 -1
  113. package/fesm2022/provoly-dashboard-filters-autocomplete.mjs +18 -11
  114. package/fesm2022/provoly-dashboard-filters-autocomplete.mjs.map +1 -1
  115. package/fesm2022/provoly-dashboard-filters-list.mjs +1 -1
  116. package/fesm2022/provoly-dashboard-filters-list.mjs.map +1 -1
  117. package/fesm2022/provoly-dashboard-import.mjs +2 -2
  118. package/fesm2022/provoly-dashboard-import.mjs.map +1 -1
  119. package/fesm2022/provoly-dashboard-pipeline-components-filter.mjs +3 -3
  120. package/fesm2022/provoly-dashboard-pipeline-components-filter.mjs.map +1 -1
  121. package/fesm2022/provoly-dashboard-pipeline-components-input-datasource.mjs +2 -2
  122. package/fesm2022/provoly-dashboard-pipeline-components-input-datasource.mjs.map +1 -1
  123. package/fesm2022/provoly-dashboard-pipeline-components-output-dataset.mjs +2 -2
  124. package/fesm2022/provoly-dashboard-pipeline-components-output-dataset.mjs.map +1 -1
  125. package/fesm2022/provoly-dashboard-pipeline.mjs.map +1 -1
  126. package/fesm2022/provoly-dashboard-presentation.mjs +14 -14
  127. package/fesm2022/provoly-dashboard-presentation.mjs.map +1 -1
  128. package/fesm2022/provoly-dashboard-restitution.mjs +39 -31
  129. package/fesm2022/provoly-dashboard-restitution.mjs.map +1 -1
  130. package/fesm2022/provoly-dashboard-search.mjs +8 -8
  131. package/fesm2022/provoly-dashboard-search.mjs.map +1 -1
  132. package/fesm2022/provoly-dashboard-supervision.mjs +2 -2
  133. package/fesm2022/provoly-dashboard-supervision.mjs.map +1 -1
  134. package/fesm2022/provoly-dashboard-toolbox.mjs +24 -23
  135. package/fesm2022/provoly-dashboard-toolbox.mjs.map +1 -1
  136. package/fesm2022/provoly-dashboard-tooltips-attribute.mjs +7 -1
  137. package/fesm2022/provoly-dashboard-tooltips-attribute.mjs.map +1 -1
  138. package/fesm2022/provoly-dashboard-widgets-widget-aggregated-chart.mjs +7 -6
  139. package/fesm2022/provoly-dashboard-widgets-widget-aggregated-chart.mjs.map +1 -1
  140. package/fesm2022/provoly-dashboard-widgets-widget-chart.mjs +11 -12
  141. package/fesm2022/provoly-dashboard-widgets-widget-chart.mjs.map +1 -1
  142. package/fesm2022/provoly-dashboard-widgets-widget-graph.mjs +2 -2
  143. package/fesm2022/provoly-dashboard-widgets-widget-graph.mjs.map +1 -1
  144. package/fesm2022/provoly-dashboard-widgets-widget-map.mjs +26 -18
  145. package/fesm2022/provoly-dashboard-widgets-widget-map.mjs.map +1 -1
  146. package/fesm2022/provoly-dashboard-widgets-widget-table.mjs +8 -8
  147. package/fesm2022/provoly-dashboard-widgets-widget-table.mjs.map +1 -1
  148. package/fesm2022/provoly-dashboard-widgets-widget-tile.mjs +2 -2
  149. package/fesm2022/provoly-dashboard-widgets-widget-tile.mjs.map +1 -1
  150. package/fesm2022/provoly-dashboard.mjs +281 -122
  151. package/fesm2022/provoly-dashboard.mjs.map +1 -1
  152. package/filters/autocomplete/autocomplete.component.d.ts +1 -0
  153. package/filters/autocomplete/autocomplete.module.d.ts +1 -1
  154. package/filters/autocomplete/style/_m-autocomplete.scss +16 -3
  155. package/lib/core/components/ellipsis.directive.d.ts +11 -0
  156. package/lib/core/components/select/select.component.d.ts +39 -19
  157. package/lib/core/components/select/select.module.d.ts +4 -5
  158. package/lib/core/components/translate-id/translate-id.pipe.d.ts +1 -3
  159. package/lib/core/core.module.d.ts +15 -14
  160. package/lib/core/i18n/en.translations.d.ts +4 -2
  161. package/lib/core/i18n/fr.translations.d.ts +5 -2
  162. package/lib/core/model/admin-api.model.d.ts +1 -0
  163. package/lib/core/model/display-options.interface.d.ts +11 -0
  164. package/lib/core/model/filter.interface.d.ts +1 -1
  165. package/lib/core/model/manifest.interface.d.ts +1 -5
  166. package/lib/core/public-api.d.ts +1 -0
  167. package/lib/core/store/class/class.interface.d.ts +1 -0
  168. package/lib/core/store/class/class.selectors.d.ts +105 -5
  169. package/lib/core/store/search/search.service.d.ts +1 -1
  170. package/lib/dashboard/components/widgets/header/widget-header.component.d.ts +2 -5
  171. package/lib/dashboard/filter/style/_o-pry-filter-group.scss +0 -11
  172. package/lib/dashboard/store/dashboard.effects.d.ts +0 -1
  173. package/lib/dashboard/store/dashboard.selectors.d.ts +0 -9
  174. package/package.json +7 -8
  175. package/pipeline/store/pipeline.actions.d.ts +1 -1
  176. package/presentation/style/_o-pry-new-presentation.scss +0 -7
  177. package/presentation/style/_o-pry-presentation.scss +20 -55
  178. package/restitution/components/restitution-catalog/restitution-catalog.component.d.ts +1 -1
  179. package/restitution/i18n/en.translations.d.ts +1 -1
  180. package/restitution/i18n/fr.translations.d.ts +3 -3
  181. package/schematics/migration.json +6 -1
  182. package/schematics/ng-update/version-0-20/index.d.ts +2 -0
  183. package/schematics/ng-update/version-0-20/index.js +19 -0
  184. package/schematics/ng-update/version-0-20/index.js.map +1 -0
  185. package/styles/components/_a-pry-select.scss +34 -10
  186. package/styles/components/_a-tooltip.scss +2 -2
  187. package/styles/components/_m-filter.scss +11 -20
  188. package/styles/components/_o-dashboard.scss +4 -0
  189. package/styles/components/_o-draggable-menu.scss +1 -1
  190. package/styles/components/_o-widget.scss +2 -2
  191. package/styles/main.scss +0 -1
  192. package/styles-theme/abstracts-theme/variables/_variables-typo.scss +9 -0
  193. package/styles-theme/components-theme/_a-pry-select.theme.scss +23 -96
  194. package/styles-theme/components-theme/_a-tooltip.theme.scss +2 -2
  195. package/styles-theme/components-theme/_o-pry-composed-condition.theme.scss +0 -12
  196. package/toolbox/components/filter-settings/filter-settings.component.d.ts +2 -2
  197. package/toolbox/components/toolbox.component.d.ts +1 -0
  198. package/tooltips/attribute/attribute-tooltip.component.d.ts +1 -0
  199. package/widgets/widget-chart/component/widget-chart.component.d.ts +0 -1
  200. package/widgets/widget-map/component/widget-map.component.d.ts +2 -0
  201. package/widgets/widget-map/i18n/en.translations.d.ts +1 -0
  202. package/widgets/widget-map/i18n/fr.translations.d.ts +1 -0
  203. package/widgets/widget-map/style/_o-layer-legend.scss +21 -0
@@ -237,7 +237,8 @@ export const frTranslations = {
237
237
  edit: "Modifier l'attribut",
238
238
  info: "Détail de l'attribut",
239
239
  delete: "Supprimer l'attribut",
240
- name: 'Nom attribut',
240
+ name: "Libellé de l'attribut",
241
+ technicalName: 'Nom technique',
241
242
  description: 'Description',
242
243
  field: 'Type',
243
244
  category: 'Catégorie',
@@ -366,4 +367,4 @@ export const frTranslations = {
366
367
  }
367
368
  }
368
369
  };
369
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnIudHJhbnNsYXRpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJvdm9seS9kYXNoYm9hcmQvYWRtaW4vaTE4bi9mci50cmFuc2xhdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHO0lBQzVCLE1BQU0sRUFBRTtRQUNOLEtBQUssRUFBRTtZQUNMLEtBQUssRUFBRSxnQkFBZ0I7WUFDdkIsZUFBZSxFQUFFLCtCQUErQjtZQUNoRCxjQUFjLEVBQUUsYUFBYTtZQUM3QixXQUFXLEVBQUUsUUFBUTtZQUNyQixJQUFJLEVBQUUsVUFBVTtZQUNoQixNQUFNLEVBQUUsVUFBVTtZQUNsQixNQUFNLEVBQUUsV0FBVztZQUNuQixHQUFHLEVBQUUsU0FBUztZQUNkLFFBQVEsRUFBRSxTQUFTO1lBQ25CLFFBQVEsRUFBRSxxQkFBcUI7WUFDL0IsWUFBWSxFQUFFLHFCQUFxQjtZQUNuQyxNQUFNLEVBQUUsT0FBTztZQUNmLE1BQU0sRUFBRSxtQkFBbUI7WUFDM0IsTUFBTSxFQUFFLFNBQVM7WUFDakIsSUFBSSxFQUFFLFFBQVE7WUFDZCxJQUFJLEVBQUUsU0FBUztZQUNmLFVBQVUsRUFBRSxZQUFZO1lBQ3hCLE9BQU8sRUFBRSxTQUFTO1lBQ2xCLFFBQVEsRUFBRSxVQUFVO1lBQ3BCLFFBQVEsRUFBRSxzQkFBc0I7WUFDaEMsTUFBTSxFQUFFLHlCQUF5QjtZQUNqQyxTQUFTLEVBQUUsd0NBQXdDO1lBQ25ELFNBQVMsRUFBRSx5Q0FBeUM7WUFDcEQsWUFBWSxFQUFFLHlEQUF5RDtZQUN2RSxJQUFJLEVBQUUsZ0JBQWdCO1lBQ3RCLFdBQVcsRUFBRSwwRUFBMEU7WUFDdkYsZ0JBQWdCLEVBQUUsNkJBQTZCO1lBQy9DLElBQUksRUFBRSxtQkFBbUI7WUFDekIsNkJBQTZCLEVBQzNCLGtHQUFrRztZQUNwRyxRQUFRLEVBQUU7Z0JBQ1IsSUFBSSxFQUFF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O1lBQ0QsV0FBVyxFQUFFO2dCQUNYLElBQUksRUFBRSxZQUFZO2dCQUNsQixJQUFJLEVBQUUsVUFBVTtnQkFDaEIsV0FBVyxFQUFFLGdCQUFnQjtnQkFDN0IsTUFBTSxFQUFFLGFBQWE7Z0JBQ3JCLE9BQU8sRUFBRSxnQkFBZ0I7Z0JBQ3pCLE1BQU0sRUFBRSxtQkFBbUI7Z0JBQzNCLFNBQVMsRUFBRSxjQUFjO2dCQUN6QixLQUFLLEVBQUUsYUFBYTthQUNyQjtZQUNELE9BQU8sRUFBRTtnQkFDUCxLQUFLLEVBQUUsa0JBQWtCO2dCQUN6QixXQUFXLEVBQUU7b0JBQ1gsT0FBTyxFQUNMLDJTQUEyUztvQkFDN1MsT0FBTyxFQUNMLDRWQUE0VjtpQkFDL1Y7Z0JBQ0QsT0FBTyxFQUFFO29CQUNQLE9BQU8sRUFBRSxTQUFTO29CQUNsQixPQUFPLEVBQUUsZUFBZTtpQkFDekI7YUFDRjtTQUNGO1FBQ0QsT0FBTyxFQUFFO1lBQ1AsT0FBTyxFQUFFLG9CQUFvQjtZQUM3QixTQUFTLEVBQUUsc0NBQXNDO1lBQ2pELE9BQU8sRUFBRSxxQ0FBcUM7WUFDOUMsSUFBSSxFQUFFLGtDQUFrQztZQUN4QyxJQUFJLEVBQUUsZ0JBQWdCO1NBQ3ZCO0tBQ0Y7Q0FDRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IGZyVHJhbnNsYXRpb25zID0ge1xuICAnQHByeSc6IHtcbiAgICBhZG1pbjoge1xuICAgICAgdGl0bGU6ICdBZG1pbmlzdHJhdGlvbicsXG4gICAgICB0aXRsZUluZGljYXRpb246ICdGZXJtZXIgbGUgbWVudSBBZG1pbmlzdHJhdGlvbicsXG4gICAgICBpbmZvTW9kYWxUaXRsZTogJ0luZm9ybWF0aW9uJyxcbiAgICAgIGNsb3NlTW9kYWxlOiAnRmVybWVyJyxcbiAgICAgIGVkaXQ6ICdNb2RpZmllcicsXG4gICAgICByZW5hbWU6ICdSZW5vbW1lcicsXG4gICAgICBkZWxldGU6ICdTdXBwcmltZXInLFxuICAgICAgYWRkOiAnTm91dmVhdScsXG4gICAgICB2YWxpZGF0ZTogJ1ZhbGlkZXInLFxuICAgICAgYWRkQ2xhc3M6ICdWYWxpZGVyIGxhIGNyw6lhdGlvbicsXG4gICAgICBhZGRBdHRyaWJ1dGU6ICdBam91dGVyIHVuIGF0dHJpYnV0JyxcbiAgICAgIGNyZWF0ZTogJ0Nyw6llcicsXG4gICAgICB1cGxvYWQ6ICdBam91dGVyIHVuZSBpbWFnZScsXG4gICAgICBjYW5jZWw6ICdBbm51bGVyJyxcbiAgICAgIGJhY2s6ICdSZXRvdXInLFxuICAgICAgbmV4dDogJ1N1aXZhbnQnLFxuICAgICAgcHJvcGVydGllczogJ1Byb3ByacOpdMOpcycsXG4gICAgICBkZXRhaWxzOiAnRMOpdGFpbHMnLFxuICAgICAgYWN0aXZpdHk6ICdBY3Rpdml0w6knLFxuICAgICAgcmVxdWlyZWQ6ICdMZSBjaGFtcHMgZXN0IHJlcXVpcycsXG4gICAgICBleGlzdHM6ICdDZSBub20gZXN0IGTDqWrDoCB1dGlsaXPDqScsXG4gICAgICBtaW5MZW5ndGg6ICdOb21icmUgbWluaW1hbCBkZSBjYXJhY3TDqHJlcyA6IHt7bGVufX0nLFxuICAgICAgbWF4TGVuZ3RoOiAnTm9tYnJlIGRlIGNhcmFjdMOocmVzIGF1dG9yaXPDqSA6IHt7bGVufX0nLFxuICAgICAgbm9XaGl0ZXNwYWNlOiAnTGEgdmFsZXVyIG5lIHBldXQgcGFzIGNvbW1lbmNlciBvdSBmaW5pciBwYXIgdW4gZXNwYWNlLicsXG4gICAgICBydWxlOiAnUsOoZ2xlIG7CsHt7aWR9fScsXG4gICAgICBkZWZhdWx0UnVsZTogXCJSw6hnbGUgcGFyIGTDqWZhdXQgKG5lIHMnYXBwbGlxdWUgcXVlIHNpIGF1Y3VuZSBhdXRyZSByw6hnbGUgbidlc3QgdmFsaWTDqWUpXCIsXG4gICAgICBkaXNwbGF5TW9kZUltYWdlOiBcIk1vZGUgZCdhZmZpY2hhZ2UgZGUgbCdpbWFnZVwiLFxuICAgICAgc2l6ZTogXCJUYWlsbGUgZGUgbCdpbWFnZVwiLFxuICAgICAgZGVsZXRlQXR0cmlidXRlQ29uZmlybU1lc3NhZ2U6XG4gICAgICAgICdDZXQgYXR0cmlidXQgbmUgc2VyYSBwbHVzIHZpc2libGUgcG91ciBsZXMgZG9ubsOpZXMgbGUgcG9zc8OpZGFudC4gQ29uZmlybWV6LXZvdXMgbGEgc3VwcHJlc3Npb24gPycsXG4gICAgICBwb3NpdGlvbjoge1xuICAgICAgICBGVUxMOiAnSWNvbmUgcGxlaW5lJyxcbiAgICAgICAgVE9QX0xFRlQ6ICdFbiBoYXV0IMOgIGdhdWNoZScsXG4gICAgICAgIFRPUF9SSUdIVDogJ0VuIGhhdXQgw6AgZHJvaXRlJyxcbiAgICAgICAgQk9UVE9NX0xFRlQ6ICdFbiBiYXMgw6AgZ2F1Y2hlJyxcbiAgICAgICAgQk9UVE9NX1JJR0hUOiAnRW4gYmFzIMOgIGRyb2l0ZSdcbiAgICAgIH0sXG4gICAgICBjdXN0b21pemU6IHtcbiAgICAgICAgdGl0bGU6ICdQZXJzb25uYWxpc2VyJyxcbiAgICAgICAgdGVtcGxhdGU6ICdUb29sdGlwIChDYXJ0ZSAmIEdyYXBoZSknLFxuICAgICAgICB1cGRhdGU6ICdNZXR0cmUgw6Agam91ciBsZSB0b29sdGlwJyxcbiAgICAgICAgYWR2YW5jZWQ6ICdNb2RlIGF2YW5jw6knLFxuICAgICAgICBuYW1lOiAnTW9kw6hsZSBtw6l0aWVyJyxcbiAgICAgICAgdGVjaG5pY2FsSWQ6ICdJZCB0ZWNobmlxdWUnLFxuICAgICAgICB0eXBlOiAnQ2hvaXNpc3NleiBsZSB0eXBlIGRlIHRvb2x0aXAgw6AgdXRpbGlzZXInLFxuICAgICAgICBzaW1wbGlmaWVkOiAnQ2hvaXNpc3NleiBsZXMgYXR0cmlidXRzIMOgIGFmZmljaGVyJyxcbiAgICAgICAgZXhlbXBsZTogJ3ZhbGV1ciBkZSB7e2V4cHJ9fScsXG4gICAgICAgIHRhYmxlOiAnQXR0cmlidXRzIHBhciBkw6lmYXV0IChUYWJsZSknLFxuICAgICAgICB0aWxlOiAnQXR0cmlidXRzIGFmZmljaMOpcyBzdXIgbGEgdHVpbGUnLFxuICAgICAgICB0aWxlSGludDogJ1NldWxlbWVudCBlbnRyZSAxIGV0IHt7bWF4fX0gYXR0cmlidXRzIHBldXZlbnQgw6p0cmUgYWZmaWNow6lzIGRhbnMgdW5lIHR1aWxlJyxcbiAgICAgICAgdGFibGVBdHRyczogJ0F0dHJpYnV0cyBkYW5zIGxhIHRhYmxlIHBhciBkw6lmYXV0JyxcbiAgICAgICAgdGlsZUF0dHJzOiAnQXR0cmlidXRzIHByw6lzZW50w6lzIGRhbnMgbGVzIHR1aWxlcycsXG4gICAgICAgIG5vVGFibGVBdHRyczogJ0F1dHJlcyBhdHRyaWJ1dHMnLFxuICAgICAgICBub1RpbGVBdHRyczogJ0F0dHJpYnV0cyBub24gYWZmaWNow6lzJyxcbiAgICAgICAgdXBkYXRlVGFibGU6IFwiTWV0dHJlIMOgIGpvdXIgbGVzIGF0dHJpYnV0cyBwYXIgZMOpZmF1dCBkJ3VuZSB0YWJsZVwiLFxuICAgICAgICB1cGRhdGVUaWxlOiAnTWV0dHJlIMOgIGpvdXIgbGVzIGF0dHJpYnV0cyBkZXMgdHVpbGVzJyxcbiAgICAgICAgdXBkYXRlSWNvbnM6ICdNZXR0cmUgw6Agam91ciBsZXMgcsOoZ2xlcyBkZSBzeW1ib2xlcydcbiAgICAgIH0sXG4gICAgICB2YXJUeXBlOiB7XG4gICAgICAgIGludDogJ05vbWJyZSBlbnRpZXInLFxuICAgICAgICBkb3VibGU6ICdOb21icmUgZMOpY2ltYWwnLFxuICAgICAgICBzdHJpbmc6ICdUZXh0ZScsXG4gICAgICAgIHV1aWQ6ICdJZGVudGlmaWFudCB1dWlkJyxcbiAgICAgICAgZGF0ZTogJ0RhdGUnLFxuICAgICAgICBsaXN0OiAnTGlzdGUgZGUgdmFsZXVycydcbiAgICAgIH0sXG4gICAgICBtZW51czoge1xuICAgICAgICBlbnZpcm9ubWVudDogXCJDb250ZXh0ZXMgZCdleMOpY3V0aW9uXCIsXG4gICAgICAgIHVzZXI6ICdVdGlsaXNhdGV1cnMnLFxuICAgICAgICAnbWV0YWRhdGEtdXNlcic6ICdQcm9maWwgdXRpbGlzYXRldXInLFxuICAgICAgICAnYWJhYy1ydWxlcyc6ICdSw6hnbGVzIEFCQUMnLFxuICAgICAgICAnbWV0YWRhdGEtcnVsZXMnOiAnUsOoZ2xlcyBNw6l0YWRvbm7DqWVzJyxcbiAgICAgICAgZGF0YXNldDogJ0pldXggZGUgZG9ubsOpZXMnLFxuICAgICAgICBjbGFzc2VzOiAnTW9kw6hsZXMgZGUgZG9ubsOpZXMnLFxuICAgICAgICBwcmVkaWNhdGVzOiAnUHLDqWRpY2F0cycsXG4gICAgICAgIG1ldGFkYXRhOiAnTcOpdGFkb25uw6llcycsXG4gICAgICAgIGZpZWxkczogJ1R5cGVzIG3DqXRpZXInLFxuICAgICAgICAncmVsYXRpb24tdHlwZXMnOiAnVHlwZXMgZGUgcmVsYXRpb24nLFxuICAgICAgICBsaW5rczogJ0xpZW4gZW50cmUgYXR0cmlidXRzJyxcbiAgICAgICAgbW9kZWw6ICdNb2TDqGxlIG3DqXRpZXInLFxuICAgICAgICBhY2Nlc3M6ICdBY2PDqHMgYXV4IGRvbm7DqWVzJ1xuICAgICAgfSxcbiAgICAgIHByZWRpY2F0ZXM6IHtcbiAgICAgICAgbGlzdDogJ1Byw6lkaWNhdHMnLFxuICAgICAgICBhZGQ6ICdDcsOpZXIgdW4gbm91dmVhdSBwcsOpZGljYXQnLFxuICAgICAgICBlZGl0OiAnTW9kaWZpZXIgdW4gcHLDqWRpY2F0JyxcbiAgICAgICAgaW5mbzogJ0TDqXRhaWxzIGR1IHByw6lkaWNhdCcsXG4gICAgICAgIG51bTogJ0lkLicsXG4gICAgICAgIG5hbWU6ICdOb20nLFxuICAgICAgICB2YWx1ZTogJ0V4cHJlc3Npb24gY29uZGl0aW9ubmVsbGUgZGUgZMOpY2xlbmNoZW1lbnQnLFxuICAgICAgICB2YWxpZEVkaXQ6ICdJbmZvcm1hdGlvbicsXG4gICAgICAgIHZhbGlkRWRpdE1lc3NhZ2U6ICdDZSBwcsOpZGljYXQgZXN0IHV0aWxpc8OpIGRhbnMge3t1c2VkfX0gcsOoZ2xlcy4gVm91bGV6LXZvdXMgdnJhaW1lbnQgbGUgbW9kaWZpZXIgPydcbiAgICAgIH0sXG4gICAgICBtZXRhZGF0YToge1xuICAgICAgICB0aXRsZTogJ01ldGFkb25uw6llcycsXG4gICAgICAgIGFkZDogJ0Nyw6llciB1bmUgbWV0YWRvbm7DqWUnLFxuICAgICAgICBlZGl0OiAnTW9kaWZpZXIgdW5lIG1ldGFkb25uw6llJyxcbiAgICAgICAgZGV0YWlsczogJ0TDqXRhaWxzIGRlIGxhIG1ldGFkb25uw6llJyxcbiAgICAgICAgZGV0YWlsc1VzZXI6ICdEw6l0YWlscyBkdSBwcm9maWwgdXRpbGlzYXRldXInLFxuICAgICAgICBpZDogJ0lEJyxcbiAgICAgICAgbGFiZWw6ICdOb20nLFxuICAgICAgICB0eXBlOiAnVHlwZScsXG4gICAgICAgIGRlc2NyaXB0aW9uOiAnRGVzY3JpcHRpb24nLFxuICAgICAgICBpbnZhbGlkOiAnTGUgY2hhbXBzIGVzdCByZXF1aXMnLFxuICAgICAgICBsaXN0TGFiZWw6ICdOb20gZGUgbGEgdmFsZXVyJyxcbiAgICAgICAgYWRkVmFsdWU6ICdBam91dGVyIHVuZSBub3V2ZWxsZSB2YWxldXInLFxuICAgICAgICByZW1vdmVWYWx1ZTogJ1N1cHByaW1lciBjZXR0ZSB2YWxldXInLFxuICAgICAgICBzeXN0ZW06ICdNw6l0YWRvbm7DqWUgc3lzdMOobWUnXG4gICAgICB9LFxuICAgICAgJ21ldGFkYXRhLXJ1bGVzJzoge1xuICAgICAgICB0aXRsZTogJ1LDqGdsZXMgTWV0YWRvbm7DqWVzJyxcbiAgICAgICAgbGFiZWw6ICdOb20nLFxuICAgICAgICAnaXMtc2FtZS1uYW1lJzogJ0xlIG5vbSBkZSBsYSByw6hnbGUgZXN0IGTDqWrDoCBwcmlzIHBvdXIgdW5lIGF1dHJlIHLDqGdsZSwgdmV1aWxsZXogZW4gdXRpbGlzZXIgdW4gYXV0cmUnLFxuICAgICAgICAnaXMtc2FtZS1ydWxlcyc6IFwiTGEgbcOqbWUgcsOoZ2xlIGEgZMOpasOgIMOpdMOpIGNvbmZpZ3Vyw6llIGV0IGVucmVnaXN0csOpZSwgdm91cyBwb3V2ZXogbCd1dGlsaXNlclwiLFxuICAgICAgICAnbWV0YWRhdGEtaXRlbSc6IHtcbiAgICAgICAgICBuYW1lOiAnTWV0YWRvbm7DqWVzIGNpYmxlJyxcbiAgICAgICAgICBkZXNjcmlwdGlvbjogJ0Rlc2NyaXB0aW9uIGRlIGxhIG1ldGFkb25uw6llIGNpYmxlJyxcbiAgICAgICAgICB0eXBlOiAnVHlwZSBkZSBsYSBtZXRhZG9ubsOpZSBjaWJsZSdcbiAgICAgICAgfSxcbiAgICAgICAgJ21ldGFkYXRhLXVzZXInOiB7XG4gICAgICAgICAgbmFtZTogJ1Byb2ZpbCB1dGlsaXNhdGV1ciBzb3VyY2UnLFxuICAgICAgICAgIGRlc2NyaXB0aW9uOiAnRGVzY3JpcHRpb24gZHUgcHJvZmlsIHV0aWxpc2F0ZXVyIHNvdXJjZScsXG4gICAgICAgICAgdHlwZTogJ1R5cGUgZHUgcHJvZmlsIHV0aWxpc2F0ZXVyIHNvdXJjZSdcbiAgICAgICAgfSxcbiAgICAgICAgZWRpdDoge1xuICAgICAgICAgIHRpdGxlOiAnTW9kaWZpZXIgdW5lIHLDqGdsZSBkZSBtZXRhZG9ubsOpZXMnXG4gICAgICAgIH0sXG4gICAgICAgIGFkZDoge1xuICAgICAgICAgIHRpdGxlOiAnQ3LDqWVyIHVuZSBub3V2ZWxsZSByw6hnbGUgZGUgbWV0YWRvbm7DqWVzJ1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgZGF0YXNldDoge1xuICAgICAgICBkZWxldGU6XG4gICAgICAgICAgXCJMJ2Vuc2VtYmxlIGRlcyB2ZXJzaW9ucyBldCBkZXMgZG9ubsOpZXMgYXNzb2Npw6llcyBzZXJvbnQgc3VwcHJpbcOpZXMuIExlcyByZXN0aXR1dGlvbnMgZXQgcHLDqXNlbnRhdGlvbnMgdXRpbGlzYW50IGNlIGpldSBkZSBkb25uw6llcyBuJ2FmZmljaGVyb250IHBsdXMgbGVzIGRvbm7DqWVzIGNvcnJlc3BvbmRhbnRlcy4gQ29uZmlybWV6LXZvdXMgbGEgc3VwcHJlc3Npb24gP1wiLFxuICAgICAgICB0aXRsZTogJ0pldXggZGUgZG9ubsOpZXMnLFxuICAgICAgICBpZDogJ0lkZW50aWZpYW50JyxcbiAgICAgICAgbmFtZTogJ05vbScsXG4gICAgICAgIG9DbGFzczogJ01vZMOobGUgbcOpdGllcicsXG4gICAgICAgIHR5cGU6ICdUeXBlJyxcbiAgICAgICAgJ2lzLXNhbWUtbmFtZSc6ICdMZSBub20gZHUgamV1IGRlIGRvbm7DqWVzIGVzdCBkw6lqw6AgcHJpcywgdmV1aWxsZXogZW4gdXRpbGlzZXIgdW4gYXV0cmUnLFxuICAgICAgICBhZGQ6IHtcbiAgICAgICAgICB0aXRsZTogJ0Nyw6llciB1biBqZXUgZGUgZG9ubsOpZXMnXG4gICAgICAgIH0sXG4gICAgICAgIGVkaXQ6IHtcbiAgICAgICAgICB0aXRsZTogJ01vZGlmaWVyIHVuIGpldSBkZSBkb25uw6llcydcbiAgICAgICAgfSxcbiAgICAgICAgT1BFTjogJ091dmVydCcsXG4gICAgICAgIENMT1NFRDogJ0Zlcm3DqScsXG4gICAgICAgIE1PRElGSUFCTEU6ICdNb2RpZmlhYmxlJ1xuICAgICAgfSxcbiAgICAgICdhYmFjLXJ1bGVzJzoge1xuICAgICAgICBkZWxldGU6ICdTdXBwcmltZXInLFxuICAgICAgICBtZXRhZGF0YVVzZXI6ICdQcm9maWwgdXRpbGlzYXRldXInLFxuICAgICAgICB0aXRsZToge1xuICAgICAgICAgIGxpc3Q6ICdSw6hnbGVzIEFiYWMnLFxuICAgICAgICAgIGFkZDogJ0Nyw6llciB1bmUgcsOoZ2xlIGFiYWMnLFxuICAgICAgICAgIHZpZXc6IFwiRMOpdGFpbHMgZCd1bmUgcsOoZ2xlIGFiYWNcIixcbiAgICAgICAgICBlZGl0OiAnTW9kaWZpZXIgdW5lIHLDqGdsZSBhYmFjJ1xuICAgICAgICB9LFxuICAgICAgICBmb3JtOiB7XG4gICAgICAgICAgaWQ6ICdOdW3DqXJvJyxcbiAgICAgICAgICBuYW1lOiAnTm9tJyxcbiAgICAgICAgICBkZXNjcmlwdGlvbjogJ0Rlc2NyaXB0aW9uJyxcbiAgICAgICAgICBzdGF0dXM6ICdTdGF0dXQnLFxuICAgICAgICAgIHN0YXR1c0FjdGl2ZTogJ0FjdGlmJyxcbiAgICAgICAgICBzdGF0dXNJbmFjdGl2ZTogJ0luYWN0aWYnLFxuICAgICAgICAgIHByZWRpY2F0ZTogJ1Byw6lkaWNhdCBkZSBkw6ljbGVuY2hlbWVudCcsXG4gICAgICAgICAgdHlwZTogJ1R5cGUnLFxuICAgICAgICAgIHR5cGVNZXRhZGF0YTogJ01ldGFkb25uw6llJyxcbiAgICAgICAgICB0eXBlQXR0cmlidXRlOiAnQXR0cmlidXQnLFxuICAgICAgICAgIHR5cGVTZWxlY3RlZDogJ1ZvdXMgbmUgcG91dmV6IHBhcyBjaGFuZ2VyIGxlIHR5cGUgYXZlYyBsZXMgY29uZGl0aW9ucyBleGlzdGFudGVzJyxcbiAgICAgICAgICBhZGRNZXRhZGF0YTogJ0Fqb3V0ZXIgdW5lIGNvbmRpdGlvbiBzdXIgdW5lIG1ldGFkb25uw6llJyxcbiAgICAgICAgICBhZGRBdHRyaWJ1dGU6ICdBam91dGVyIHVuZSBjb25kaXRpb24gc3VyIHVuIGF0dHJpYnV0JyxcbiAgICAgICAgICB0b2dnbGVBbmQ6ICdFVCcsXG4gICAgICAgICAgdG9nZ2xlT3I6ICdPVScsXG4gICAgICAgICAgYWRkR3JvdXA6ICdBam91dGVyIHVuIHNvdXMtZ3JvdXBlJ1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgdXNlcjoge1xuICAgICAgICB0aXRsZTogJ1Byb2ZpbCB1dGlsaXNhdGV1cicsXG4gICAgICAgIGFkZDogJ0Nyw6llciB1biBub3V2ZWF1IHByb2ZpbCB1dGlsaXNhdGV1cicsXG4gICAgICAgIGxhYmVsOiAnTm9tJyxcbiAgICAgICAgdHlwZTogJ1R5cGUnLFxuICAgICAgICBpbnZhbGlkOiAnTGUgY2hhbXAgZXN0IHJlcXVpcycsXG4gICAgICAgIGVkaXQ6ICdNb2RpZmllciB1biBwcm9maWwgdXRpbGlzYXRldXInXG4gICAgICB9LFxuICAgICAgZW52aXJvbm1lbnQ6IHtcbiAgICAgICAgbGlzdDogXCJDb250ZXh0ZXMgZCdleMOpY3V0aW9uXCIsXG4gICAgICAgIGFkZDogXCJDcsOpZXIgdW4gbm91dmVhdSBjb250ZXh0ZSBkJ2V4w6ljdXRpb25cIixcbiAgICAgICAgZWRpdDogXCJNb2RpZmllciB1biBjb250ZXh0ZSBkJ2V4w6ljdXRpb25cIixcbiAgICAgICAgaW5mbzogXCJEw6l0YWlscyBkdSBjb250ZXh0ZSBkJ2V4w6ljdXRpb25cIixcbiAgICAgICAgZm9ybWF0SW50OiAnTGEgdmFsZXVyIGRvaXQgw6p0cmUgdW4gZW50aWVyLicsXG4gICAgICAgIGZvcm1hdERvdWJsZTogXCJMYSB2YWxldXIgZG9pdCDDqnRyZSB1biBlbnRpZXIsIGxlIHPDqXBhcmF0ZXVyIGF1dG9yaXPDqSBlc3QgdW4gJy4nXCIsXG4gICAgICAgIGZvcm1hdE5hbWU6ICdDYXJhY3TDqHJlcyBzcGVjaWF1eCBhdXRvcmlzw6lzOiBbIC0sIF8gXSAnLFxuICAgICAgICBuYW1lOiAnTm9tJyxcbiAgICAgICAgdHlwZTogJ1R5cGUnLFxuICAgICAgICB2YWx1ZTogJ1ZhbGV1ciBkZSBsYSB2YXJpYWJsZSdcbiAgICAgIH0sXG4gICAgICBjbGFzc2VzOiB7XG4gICAgICAgIGxpc3Q6ICdNb2TDqGxlcyBkZSBkb25uw6llcycsXG4gICAgICAgIG5hbWU6ICdOb20nLFxuICAgICAgICB0aXRsZTogJ01vZMOobGUgZGUgZG9ubsOpZXMge3tjbGFzc319JyxcbiAgICAgICAgaW1hZ2U6ICdJbWFnZScsXG4gICAgICAgIGZvcm1hdE5hbWU6ICdDYXJhY3TDqHJlcyBhdXRvcmlzw6lzOiBbIG1pbnVzY3VsZSwgLSwgXyBdJyxcbiAgICAgICAgbW9kZWw6ICdNb2TDqGxlJyxcbiAgICAgICAgZGVzY3JpcHRpb246ICdEZXNjcmlwdGlvbicsXG4gICAgICAgIGxpbmVzOiAnTGlnbmVzJyxcbiAgICAgICAgYWRkOiAnQ3LDqWVyIHVuIG5vdXZlYXUgbW9kw6hsZSBkZSBkb25uw6llcycsXG4gICAgICAgIGVkaXQ6ICdNb2RpZmllciBsZSBtb2TDqGxlIGRlIGRvbm7DqWVzJyxcbiAgICAgICAgcmVuYW1lOiAnUmVub21tZXIgbGUgbW9kw6hsZSBkZSBkb25uw6llcycsXG4gICAgICAgIGFkZEF0dHI6ICdBdHRyaWJ1dCcsXG4gICAgICAgIGluZm9BdHRyOiAnTW9kw6hsZSBkZSBkb25uw6llcyB7e2NsYXNzfX0gPiBBdHRyaWJ1dHMnLFxuICAgICAgICBpbmZvOiAnRMOpdGFpbCBkdSBtb2TDqGxlIGRlIGRvbm7DqWVzJyxcbiAgICAgICAgcnVsZXM6ICdSw6hnbGVzIGRlIGTDqWZpbml0aW9uIGRlIHN5bWJvbGVzJyxcbiAgICAgICAgY29uZGl0aW9uOiAnQWN0aWYgc2Vsb24gdW5lIGNvbmRpdGlvbicsXG4gICAgICAgIGF0dHJOYW1lOiAnQXR0cmlidXRlIMOgIHbDqXJpZmllcicsXG4gICAgICAgIHZhbHVlOiAnVmFsZXVyIGRlIGNvbXBhcmFpc29uJyxcbiAgICAgICAgb3BlcmF0aW9uOiAnT3DDqXJhdGlvbiBkZSBjb21wYXJhaXNvbicsXG4gICAgICAgIG9wZXJhdGlvbnM6IHtcbiAgICAgICAgICBFUVVBTFM6ICdlc3Qgw6lnYWwnLFxuICAgICAgICAgIEdSRUFURVI6ICdlc3QgcGx1cyBncmFuZCcsXG4gICAgICAgICAgR1JFQVRFUl9PUl9FUVVBTDogJ2VzdCBwbHVzIGdyYW5kIG91IMOpZ2FsJyxcbiAgICAgICAgICBMT1dFUjogJ3BsdXMgcGV0aXQnLFxuICAgICAgICAgIExPV0VSX09SX0VRVUFMOiAncGx1cyBwZXRpdCBvdSDDqWdhbCcsXG4gICAgICAgICAgQ09OVEFJTlM6ICdjb250aWVudCB0ZXh0dWVsbGVtZW50J1xuICAgICAgICB9LFxuICAgICAgICBjcmVhdGVDbGFzc01vZGFsTWVzc2FnZTpcbiAgICAgICAgICAnSW1wb3NzaWJsZSBkZSBjcsOpZXIgdW4gbW9kw6hsZSBkZSBkb25uw6llcyBzYW5zIGF0dHJpYnV0cy4gVmV1aWxsZXogZW4gYWpvdXRlciBhdSBtb2lucyB1biBlbiBjbGlxdWFudCBzdXIgXCJBam91dGVyIHVuIGF0dHJpYnV0XCIuJyxcbiAgICAgICAgY3JlYXRlQ2xhc3NDb25maXJtTWVzc2FnZTogJ1ZvdWxlei12b3VzIGNvbmZpcm1lciBsYSBjcsOpYXRpb24gZHUgbW9kw6hsZSBkZSBkb25uw6llcyA/JyxcbiAgICAgICAgZGVsZXRlQ2xhc3NDb25maXJtTWVzc2FnZTogJ0NvbmZpcm1lei12b3VzIGxhIHN1cHByZXNzaW9uIGRlIGNlIG1vZMOobGUgbcOpdGllciA/JyxcbiAgICAgICAgbGlua2VkT2JqZWN0czogJ09iamV0cyBsacOpcycsXG4gICAgICAgIHVzZWRFbHNld2hlcmU6IFwiVXRpbGlzw6kgcGFyIGRlcyBvYmpldHMgZCdhdXRyZXMgdXRpbGlzYXRldXJzXCIsXG4gICAgICAgIGFzc29jaWF0aW9uczogJ0Fzc29jaWF0aW9ucycsXG4gICAgICAgIHR5cGU6ICdUeXBlJyxcbiAgICAgICAgYXR0cmlidXRlczoge1xuICAgICAgICAgIGFkZDogJ05vdXZlbCBhdHRyaWJ1dCcsXG4gICAgICAgICAgZWRpdDogXCJNb2RpZmllciBsJ2F0dHJpYnV0XCIsXG4gICAgICAgICAgaW5mbzogXCJEw6l0YWlsIGRlIGwnYXR0cmlidXRcIixcbiAgICAgICAgICBkZWxldGU6IFwiU3VwcHJpbWVyIGwnYXR0cmlidXRcIixcbiAgICAgICAgICBuYW1lOiAnTm9tIGF0dHJpYnV0JyxcbiAgICAgICAgICBkZXNjcmlwdGlvbjogJ0Rlc2NyaXB0aW9uJyxcbiAgICAgICAgICBmaWVsZDogJ1R5cGUnLFxuICAgICAgICAgIGNhdGVnb3J5OiAnQ2F0w6lnb3JpZScsXG4gICAgICAgICAgbXVsdGlWYWx1ZWQ6ICdNdWx0aSB2YWx1w6knXG4gICAgICAgIH0sXG4gICAgICAgIGNhdGVnb3J5OiB7XG4gICAgICAgICAgc2VsZWN0OiAnU8OpbGVjdGlvbm5lciB1bmUgY2F0w6lnb3JpZScsXG4gICAgICAgICAgc2VhcmNoT3JDcmVhdGU6ICdSZWNoZXJjaGVyIHVuZSBjYXTDqWdvcmllIGV4aXN0YW50ZSBPVSBlbiBjcsOpZXIgdW5lIG5vdXZlbGxlJyxcbiAgICAgICAgICBuYW1lOiAnQ2F0w6lnb3JpZScsXG4gICAgICAgICAgc2VsZWN0SXQ6ICdTw6lsZWN0aW9ubmVyIGxhIGNhdMOpZ29yaWUnLFxuICAgICAgICAgIGNyZWF0ZTogJ0Nyw6llciBsYSBjYXTDqWdvcmllJyxcbiAgICAgICAgICBhZGQ6IFwibidleGlzdGUgcGFzIGVuY29yZS4gPGJyPklsIGVzdCBwb3NzaWJsZSBcXG4gZGUgbGEgY3LDqWVyIGljaS4gPGJyPkVsbGUgc2VyYSBhdXRvbWF0aXF1ZW1lbnQgc8OpbGVjdGlvbm7DqWUgZXQgYWpvdXTDqWUgw6AgbGEgbGlzdGUgZGVzIGNhdMOpZ29yaWVzLlwiXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBmaWVsZHM6IHtcbiAgICAgICAgYWRkOiAnQ3LDqWVyIHVuIG5vdXZlYXUgdHlwZSBtw6l0aWVyJyxcbiAgICAgICAgY3JzOiAnQ1JTIChjb2RlIEVQU0cpIDonLFxuICAgICAgICBpbmZvOiAnRMOpdGFpbCBkdSB0eXBlIG3DqXRpZXInLFxuICAgICAgICBsaXN0OiAnVHlwZXMgbcOpdGllcicsXG4gICAgICAgIGVkaXQ6ICdNb2RpZmllciBsZSB0eXBlIG3DqXRpZXInLFxuICAgICAgICBuYW1lOiAnTm9tJyxcbiAgICAgICAgZGVzY3JpcHRpb246ICdEZXNjcmlwdGlvbicsXG4gICAgICAgIHR5cGU6ICdUeXBlIHRlY2huaXF1ZScsXG4gICAgICAgIGF0dHJpYnV0ZXM6ICdQcsOpc2VuY2UgZGFucyBkZXMgYXR0cmlidXRzJyxcbiAgICAgICAgYXR0cmlidXRlc1RhYjogJ0F0dHJpYnV0cycsXG4gICAgICAgIGF0dHJpYnV0ZU5hbWU6IFwiTm9tIGQnYXR0cmlidXRcIixcbiAgICAgICAgY2xhc3NOYW1lOiAnQ2xhc3NlJyxcbiAgICAgICAgY29uZmlybUZpZWxkRGVsZXRpb246ICdDb25maXJtZXotdm91cyBsYSBzdXBwcmVzc2lvbiBkZSBjZSB0eXBlIG3DqXRpZXIgPycsXG4gICAgICAgIGZpZWxkVHlwZToge1xuICAgICAgICAgIGludDogJ05vbWJyZSBlbnRpZXInLFxuICAgICAgICAgIGxvbmc6ICdOb21icmUgZW50aWVyIGxvbmcnLFxuICAgICAgICAgIGRlY2ltYWw6ICdOb21icmUgZMOpY2ltYWwnLFxuICAgICAgICAgIHN0cmluZzogJ1RleHRlIGJydXQnLFxuICAgICAgICAgIGtleXdvcmQ6ICdUZXh0ZSBpbmRleMOpJyxcbiAgICAgICAgICBpbnN0YW50OiAnRGF0ZScsXG4gICAgICAgICAgcmF3OiAnRG9ubsOpZSBub24gc3RydWN0dXLDqWUnLFxuICAgICAgICAgIHBvaW50OiAnUG9pbnQnLFxuICAgICAgICAgIG11bHRpcG9pbnQ6ICdNdWx0aS1wb2ludHMnLFxuICAgICAgICAgIGxpbmU6ICdMaWduZScsXG4gICAgICAgICAgbXVsdGlsaW5lOiAnTXVsdGktbGlnbmVzJyxcbiAgICAgICAgICBwb2x5Z29uOiAnUG9seWdvbmUnLFxuICAgICAgICAgIG11bHRpcG9seWdvbjogJ011bHRpLXBvbHlnb25lcycsXG4gICAgICAgICAgaW5mb3JtYXRpb246IHtcbiAgICAgICAgICAgIGludDogJ1Blcm1ldCBkZSBzdG9ja2VyIGRlcyBkb25uw6llcyBudW3DqXJpcXVlcyBlbnRpw6hyZXMgaW5mw6lyaWV1cmVzIMOgIDJeMzInLFxuICAgICAgICAgICAgbG9uZzogJ1Blcm1ldCBkZSBzdG9ja2VyIGRlcyBkb25uw6llcyBudW3DqXJpcXVlcyBlbnRpw6hyZXMgcG91dmFudCBkw6lwYXNzZXIgMl4zMicsXG4gICAgICAgICAgICBkZWNpbWFsOiAnUGVybWV0IGRlIHN0b2NrZXIgZGVzIGRvbm7DqWVzIG51bcOpcmlxdWVzIGF2ZWMgZGVzIGTDqWNpbWFsZXMnLFxuICAgICAgICAgICAgc3RyaW5nOlxuICAgICAgICAgICAgICBcIlBlcm1ldCBkZSBzdG9ja2VyIGRlcyBkb25uw6llcyBhdSBmb3JtYXQgYWxwaGFudW3DqXJpcXVlLiBDZXMgZG9ubsOpZXMgbmUgc29udCBwYXMgaW5kZXjDqWVzIDogaWwgZXN0IHBvc3NpYmxlIGRlIGZhaXJlIHVuZSByZWNoZXJjaGUgZGVzc3VzIG1haXMgcGFzIGQnYWdyw6lnYXRpb25cIixcbiAgICAgICAgICAgIGtleXdvcmQ6XG4gICAgICAgICAgICAgICdQZXJtZXQgZGUgc3RvY2tlciBkZXMgZG9ubsOpZXMgYXUgZm9ybWF0IGFscGhhbnVtw6lyaXF1ZS4gQ2VzIGRvbm7DqWVzIHNvbnQgaW5kZXjDqWVzIDogaWwgZXN0IHBvc3NpYmxlIGRlIGZhaXJlIHVuZSByZWNoZXJjaGUgZGVzc3VzIGFpbnNpIHF1ZSBkZXMgYWdyw6lnYXRpb25zLicsXG4gICAgICAgICAgICBpbnN0YW50OiAnUGVybWV0IGRlIHN0b2NrZXIgdW5lIGRhdGUnLFxuICAgICAgICAgICAgcmF3OiAncGVybWV0IGRlIHN0b2NrZXIgZGVzIGRvbm7DqWVzIGRlIHR5cGUgaW1hZ2Ugb3UgZmljaGllcicsXG4gICAgICAgICAgICBwb2ludDpcbiAgICAgICAgICAgICAgXCJQZXJtZXQgZGUgc3RvY2tlciBkZXMgY29vcmRvbm7DqWVzIGfDqW9ncmFwaGlxdWVzIGQndW4gb2JqZXQgcmVwcsOpc2VudMOpIHBhciB1biBwb2ludCAoZm9ybWF0IGfDqW9qc29uKVwiLFxuICAgICAgICAgICAgbXVsdGlwb2ludDpcbiAgICAgICAgICAgICAgXCJQZXJtZXQgZGUgc3RvY2tlciBkZXMgY29vcmRvbm7DqWVzIGfDqW9ncmFwaGlxdWVzIGQndW4gb2JqZXQgY29tcG9zw6kgZGUgcGx1c2lldXJzIHBvaW50cyBub24gcmVsacOpcyAoZm9ybWF0IGfDqW9qc29uKVwiLFxuICAgICAgICAgICAgbGluZTogXCJQZXJtZXQgZGUgc3RvY2tlciBkZXMgY29vcmRvbm7DqWVzIGfDqW9ncmFwaGlxdWVzIGQndW4gb2JqZXQgcmVwcsOpc2VudMOpIGNvbW1lIHVuZSBsaWduZSAoZm9ybWF0IGfDqW9qc29uKVwiLFxuICAgICAgICAgICAgbXVsdGlsaW5lOlxuICAgICAgICAgICAgICBcIlBlcm1ldCBkZSBzdG9ja2VyIGRlcyBjb29yZG9ubsOpZXMgZ8Opb2dyYXBoaXF1ZXMgZCd1biBvYmpldCByZXByw6lzZW50w6kgYXZlYyBwbHVzaWV1cnMgbGlnbmVzIG5vbiByZWxpw6llcyBlbnRyZSBlbGxlcyAobG9uZ2l0dWRlIGV0IGxhdGl0dWRlIGZvcm1hdCBnw6lvanNvbilcIixcbiAgICAgICAgICAgIHBvbHlnb246XG4gICAgICAgICAgICAgIFwiUGVybWV0IGRlIHN0b2NrZXIgZGVzIGNvb3Jkb25uw6llcyBnw6lvZ3JhcGhpcXVlcyBkJ3VuIG9iamV0IHJlcHLDqXNlbnTDqSBwYXIgdW4gcG9seWdvbmUgKGZvcm1hdCBnw6lvanNvbilcIixcbiAgICAgICAgICAgIG11bHRpcG9seWdvbjpcbiAgICAgICAgICAgICAgXCJQZXJtZXQgZGUgc3RvY2tlciBkZXMgY29vcmRvbm7DqWVzIGfDqW9ncmFwaGlxdWVzIGQndW4gb2JqZXQgcmVwcsOpc2VudMOpIHBhciBwbHVzaWV1cnMgcG9seWdvbmVzIGltYnJpcXXDqXMgb3Ugbm9uIChmb3JtYXQgZ8Opb2pzb24pXCJcbiAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICAgIHJhd01ldGhvZHM6IHtcbiAgICAgICAgICBodHRwOiAnRGVwdWlzIHVuZSB1cmwnLFxuICAgICAgICAgIHVwbG9hZDogJ1TDqWzDqXZlcnNlciBkZXB1aXMgbW9uIG9yZGluYXRldXInXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICB1c2VySW5mbzoge1xuICAgICAgICBsaXN0OiAnVXRpbGlzYXRldXJzJyxcbiAgICAgICAgaW5mbzogXCJEw6l0YWlsIGRlIGwndXRpbGlzYXRldXJcIixcbiAgICAgICAgcHJvZmlsZTogJ1Byb2ZpbCcsXG4gICAgICAgIGFkZE1ldGFkYXRhOiAnQWpvdXRlcicsXG4gICAgICAgIGVkaXRNZXRhZGF0YTogJ01vZGlmaWVyIGxhIG3DqXRhZG9ubsOpZScsXG4gICAgICAgIG5hbWU6ICdQcsOpbm9tJyxcbiAgICAgICAgZmFtaWx5TmFtZTogJ05vbSBkZSBmYW1pbGxlJyxcbiAgICAgICAgZW1haWw6ICdBZHJlc3NlIG1haWwnLFxuICAgICAgICBtZXRhZGF0YTogJ03DqXRhZG9ubsOpZXMnLFxuICAgICAgICByb2xlczogJyBSw7RsZXMnXG4gICAgICB9LFxuICAgICAgcmVsYXRpb25UeXBlczoge1xuICAgICAgICBsaXN0OiAnVHlwZXMgZGUgcmVsYXRpb25zJyxcbiAgICAgICAgYWRkOiAnQWpvdXRlciBsZSB0eXBlIGRlIHJlbGF0aW9uJyxcbiAgICAgICAgZWRpdDogJ01vZGlmaWVyIGxlIHR5cGUgZGUgcmVsYXRpb24nLFxuICAgICAgICBpbmZvOiAnRMOpdGFpbCBkdSB0eXBlIGRlIHJlbGF0aW9uJyxcbiAgICAgICAgbmFtZTogJ05vbScsXG4gICAgICAgIG5iUmVsYXRpb246ICdOb21icmUgZGUgcmVsYXRpb25zIGRlIGNlIHR5cGUnLFxuICAgICAgICBuYkxpbms6ICdOb21icmUgZGUgbGllbnMgdXRpbGlzYW50IGNlIHR5cGUgZGUgcmVsYXRpb24nLFxuICAgICAgICBkYXRlTW9kaWZpY2F0aW9uOiAnRGF0ZSBkZSBtb2RpZmljYXRpb24nLFxuICAgICAgICBkZWxldGFibGU6ICdQZXV0IMOqdHJlIHN1cHByaW3DqScsXG4gICAgICAgIGRlbGV0ZU1vZGFsTWVzc2FnZTogJ0NlIHR5cGUgZGUgcmVsYXRpb24gbmUgcGV1dCDDqnRyZSBzdXBwcmltw6kgY2FyIHV0aWxpc8OpLidcbiAgICAgIH0sXG4gICAgICBsaW5rczoge1xuICAgICAgICBsaXN0OiAnTGllbnMgZW50cmUgYXR0cmlidXRzJyxcbiAgICAgICAgYWRkOiAnQWpvdXRlciB1biBub3V2ZWF1IGxpZW4gZW50cmUgYXR0cmlidXRzJyxcbiAgICAgICAgY2xhc3NTb3VyY2U6ICdNb2TDqGxlIG3DqXRpZXIgc291cmNlJyxcbiAgICAgICAgYXR0cmlidXRlU291cmNlOiAnQXR0cmlidXQgc291cmNlJyxcbiAgICAgICAgY2xhc3NEZXN0aW5hdGlvbjogJ01vZMOobGUgbcOpdGllciBkZSBkZXN0aW5hdGlvbicsXG4gICAgICAgIGF0dHJpYnV0ZURlc3RpbmF0aW9uOiAnQXR0cmlidXQgZGUgZGVzdGluYXRpb24nLFxuICAgICAgICByZWxhdGlvblR5cGU6ICdUeXBlIGRlIHJlbGF0aW9uJyxcbiAgICAgICAgc2VsZWN0UmVsYXRpb25UeXBlOiAnU2VsZWN0aW9ubmV6IHVuIHR5cGUgZGUgcmVsYXRpb24nXG4gICAgICB9LFxuICAgICAgYXNzb2NpYXRpb246IHtcbiAgICAgICAgQUJBQzogJ1LDqGdsZSBBQkFDJyxcbiAgICAgICAgTElOSzogJ1JlbGF0aW9uJyxcbiAgICAgICAgTkFNRURfUVVFUlk6ICdSZXF1w6p0ZSBub21tw6llJyxcbiAgICAgICAgV0lER0VUOiAnUmVzdGl0dXRpb24nLFxuICAgICAgICBEQVRBU0VUOiAnSmV1IGRlIGRvbm7DqWVzJyxcbiAgICAgICAgT0NMQVNTOiAnTW9kw6hsZSBkZSBkb25uw6llcycsXG4gICAgICAgIERBU0hCT0FSRDogJ1Byw6lzZW50YXRpb24nLFxuICAgICAgICBGSUVMRDogJ1R5cGUgbcOpdGllcidcbiAgICAgIH0sXG4gICAgICBzdG9yYWdlOiB7XG4gICAgICAgIGxhYmVsOiAnQmFzZSBkZSBzdG9ja2FnZScsXG4gICAgICAgIGRlc2NyaXB0aW9uOiB7XG4gICAgICAgICAgUE9TVEdJUzpcbiAgICAgICAgICAgIFwiQ2Ugc3RvY2thZ2UgZXN0IGNvbnNlaWxsw6kgZW4gY2FzIGRlIHN0b2NrYWdlIGRlIGRvbm7DqWVzIGfDqW9ncmFwaGlxdWUgY29tcGxleGVzIG91IGRhbnMgZGVzIHN5c3TDqG1lcyBkZSBjb29yZG9ubsOpZXMgZGlmZsOpcmVudHMgZGUgV0dTIDg0LiBJbCBlc3QgcmVjb21tYW5kw6kgZGUgbmUgc3RvY2tlciBkYW5zIGNldHRlIGJhc2UgcXVlIGRlcyBtb2TDqGxlcyBtw6l0aWVyIGRvbnQgbGEgdm9sdW3DqXRyaWUgZGUgZG9ubsOpZXMgZXN0aW3DqWUgKGVuIHRlcm1lIGRlIG5vbWJyZSBkJ2l0ZW1zKSBuJ2VzdCBwYXMgdHJvcCDDqWxldsOpZS5cIixcbiAgICAgICAgICBFTEFTVElDOlxuICAgICAgICAgICAgJ0NlIHN0b2NrYWdlIGVzdCBjb25zZWlsbMOpIGVuIGNhcyBkZSBmb3J0ZSB2b2x1bcOpdHJpZSBkZSBkb25uw6llcyBwcsOpdnVlIHBvdXIgY2UgbW9kw6hsZSBtw6l0aWVyIChncmFuZCBub21icmUgZFxcJ2l0ZW1zKS4gU2kgdm91cyBzb3VoYWl0ZXogc3RvY2tlciBkZXMgZG9ubsOpZXMgZ8Opb2dyYXBoaXF1ZXMgZGFucyBjZSBtb2TDqGxlLCBkZXMgZm9ybWVzIHNpbXBsZXMgc29udCBjb25zZWlsbMOpZXMgZXQgbGUgc3lzdMOobWUgZGUgY29vcmRvbm7DqWVzIGRlIHLDqWbDqXJlbmNlIHV0aWxpc8OpIGRvaXQgw6p0cmUgV0dTIDg0LiBDZSBzeXN0w6htZSBkZSBzdG9ja2FnZSBvZmZyZSB1bmUgc2NhbGFiaWxpdMOpIGhvcml6b250YWxlJ1xuICAgICAgICB9LFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgUE9TVEdJUzogJ1Bvc3RHSVMnLFxuICAgICAgICAgIEVMQVNUSUM6ICdFbGFzdGljU2VhcmNoJ1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSxcbiAgICB0b29sdGlwOiB7XG4gICAgICBkZWZhdWx0OiAnVG9vbHRpcCBwYXIgZMOpZmF1dCcsXG4gICAgICBhdHRyaWJ1dGU6ICdUb29sdGlwIGFmZmljaGFudCBjZXJ0YWlucyBhdHRyaWJ1dHMnLFxuICAgICAgY2x1c3RlcjogJ1Rvb2x0aXAgcG91ciBsZXMgY2x1c3RlcnMgKGdyYXBoZXMpJyxcbiAgICAgIGxpbms6ICdUb29sdGlwIHBvdXIgbGVzIGxpZW5zIChncmFwaGVzKScsXG4gICAgICBub25lOiAnUGFzIGRlIHRvb2x0aXAnXG4gICAgfVxuICB9XG59O1xuIl19
370
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnIudHJhbnNsYXRpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJvdm9seS9kYXNoYm9hcmQvYWRtaW4vaTE4bi9mci50cmFuc2xhdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHO0lBQzVCLE1BQU0sRUFBRTtRQUNOLEtBQUssRUFBRTtZQUNMLEtBQUssRUFBRSxnQkFBZ0I7WUFDdkIsZUFBZSxFQUFFLCtCQUErQjtZQUNoRCxjQUFjLEVBQUUsYUFBYTtZQUM3QixXQUFXLEVBQUUsUUFBUTtZQUNyQixJQUFJLEVBQUUsVUFBVTtZQUNoQixNQUFNLEVBQUUsVUFBVTtZQUNsQixNQUFNLEVBQUUsV0FBVztZQUNuQixHQUFHLEVBQUUsU0FBUztZQUNkLFFBQVEsRUFBRSxTQUFTO1lBQ25CLFFBQVEsRUFBRSxxQkFBcUI7WUFDL0IsWUFBWSxFQUFFLHFCQUFxQjtZQUNuQyxNQUFNLEVBQUUsT0FBTztZQUNmLE1BQU0sRUFBRSxtQkFBbUI7WUFDM0IsTUFBTSxFQUFFLFNBQVM7WUFDakIsSUFBSSxFQUFFLFFBQVE7WUFDZCxJQUFJLEVBQUUsU0FBUztZQUNmLFVBQVUsRUFBRSxZQUFZO1lBQ3hCLE9BQU8sRUFBRSxTQUFTO1lBQ2xCLFFBQVEsRUFBRSxVQUFVO1lBQ3BCLFFBQVEsRUFBRSxzQkFBc0I7WUFDaEMsTUFBTSxFQUFFLHlCQUF5QjtZQUNqQyxTQUFTLEVBQUUsd0NBQXdDO1lBQ25ELFNBQVMsRUFBRSx5Q0FBeUM7WUFDcEQsWUFBWSxFQUFFLHlEQUF5RDtZQUN2RSxJQUFJLEVBQUUsZ0JBQWdCO1lBQ3RCLFdBQVcsRUFBRSwwRUFBMEU7WUFDdkYsZ0JBQWdCLEVBQUUsNkJBQTZCO1lBQy9DLElBQUksRUFBRSxtQkFBbUI7WUFDekIsNkJBQTZCLEVBQzNCLGtHQUFrRztZQUNwRyxRQUFRLEVBQUU7Z0JBQ1IsSUFBSSxFQUFF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a0JBQWtCLEVBQUUsa0NBQWtDO2FBQ3ZEO1lBQ0QsV0FBVyxFQUFFO2dCQUNYLElBQUksRUFBRSxZQUFZO2dCQUNsQixJQUFJLEVBQUUsVUFBVTtnQkFDaEIsV0FBVyxFQUFFLGdCQUFnQjtnQkFDN0IsTUFBTSxFQUFFLGFBQWE7Z0JBQ3JCLE9BQU8sRUFBRSxnQkFBZ0I7Z0JBQ3pCLE1BQU0sRUFBRSxtQkFBbUI7Z0JBQzNCLFNBQVMsRUFBRSxjQUFjO2dCQUN6QixLQUFLLEVBQUUsYUFBYTthQUNyQjtZQUNELE9BQU8sRUFBRTtnQkFDUCxLQUFLLEVBQUUsa0JBQWtCO2dCQUN6QixXQUFXLEVBQUU7b0JBQ1gsT0FBTyxFQUNMLDJTQUEyUztvQkFDN1MsT0FBTyxFQUNMLDRWQUE0VjtpQkFDL1Y7Z0JBQ0QsT0FBTyxFQUFFO29CQUNQLE9BQU8sRUFBRSxTQUFTO29CQUNsQixPQUFPLEVBQUUsZUFBZTtpQkFDekI7YUFDRjtTQUNGO1FBQ0QsT0FBTyxFQUFFO1lBQ1AsT0FBTyxFQUFFLG9CQUFvQjtZQUM3QixTQUFTLEVBQUUsc0NBQXNDO1lBQ2pELE9BQU8sRUFBRSxxQ0FBcUM7WUFDOUMsSUFBSSxFQUFFLGtDQUFrQztZQUN4QyxJQUFJLEVBQUUsZ0JBQWdCO1NBQ3ZCO0tBQ0Y7Q0FDRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IGZyVHJhbnNsYXRpb25zID0ge1xuICAnQHByeSc6IHtcbiAgICBhZG1pbjoge1xuICAgICAgdGl0bGU6ICdBZG1pbmlzdHJhdGlvbicsXG4gICAgICB0aXRsZUluZGljYXRpb246ICdGZXJtZXIgbGUgbWVudSBBZG1pbmlzdHJhdGlvbicsXG4gICAgICBpbmZvTW9kYWxUaXRsZTogJ0luZm9ybWF0aW9uJyxcbiAgICAgIGNsb3NlTW9kYWxlOiAnRmVybWVyJyxcbiAgICAgIGVkaXQ6ICdNb2RpZmllcicsXG4gICAgICByZW5hbWU6ICdSZW5vbW1lcicsXG4gICAgICBkZWxldGU6ICdTdXBwcmltZXInLFxuICAgICAgYWRkOiAnTm91dmVhdScsXG4gICAgICB2YWxpZGF0ZTogJ1ZhbGlkZXInLFxuICAgICAgYWRkQ2xhc3M6ICdWYWxpZGVyIGxhIGNyw6lhdGlvbicsXG4gICAgICBhZGRBdHRyaWJ1dGU6ICdBam91dGVyIHVuIGF0dHJpYnV0JyxcbiAgICAgIGNyZWF0ZTogJ0Nyw6llcicsXG4gICAgICB1cGxvYWQ6ICdBam91dGVyIHVuZSBpbWFnZScsXG4gICAgICBjYW5jZWw6ICdBbm51bGVyJyxcbiAgICAgIGJhY2s6ICdSZXRvdXInLFxuICAgICAgbmV4dDogJ1N1aXZhbnQnLFxuICAgICAgcHJvcGVydGllczogJ1Byb3ByacOpdMOpcycsXG4gICAgICBkZXRhaWxzOiAnRMOpdGFpbHMnLFxuICAgICAgYWN0aXZpdHk6ICdBY3Rpdml0w6knLFxuICAgICAgcmVxdWlyZWQ6ICdMZSBjaGFtcHMgZXN0IHJlcXVpcycsXG4gICAgICBleGlzdHM6ICdDZSBub20gZXN0IGTDqWrDoCB1dGlsaXPDqScsXG4gICAgICBtaW5MZW5ndGg6ICdOb21icmUgbWluaW1hbCBkZSBjYXJhY3TDqHJlcyA6IHt7bGVufX0nLFxuICAgICAgbWF4TGVuZ3RoOiAnTm9tYnJlIGRlIGNhcmFjdMOocmVzIGF1dG9yaXPDqSA6IHt7bGVufX0nLFxuICAgICAgbm9XaGl0ZXNwYWNlOiAnTGEgdmFsZXVyIG5lIHBldXQgcGFzIGNvbW1lbmNlciBvdSBmaW5pciBwYXIgdW4gZXNwYWNlLicsXG4gICAgICBydWxlOiAnUsOoZ2xlIG7CsHt7aWR9fScsXG4gICAgICBkZWZhdWx0UnVsZTogXCJSw6hnbGUgcGFyIGTDqWZhdXQgKG5lIHMnYXBwbGlxdWUgcXVlIHNpIGF1Y3VuZSBhdXRyZSByw6hnbGUgbidlc3QgdmFsaWTDqWUpXCIsXG4gICAgICBkaXNwbGF5TW9kZUltYWdlOiBcIk1vZGUgZCdhZmZpY2hhZ2UgZGUgbCdpbWFnZVwiLFxuICAgICAgc2l6ZTogXCJUYWlsbGUgZGUgbCdpbWFnZVwiLFxuICAgICAgZGVsZXRlQXR0cmlidXRlQ29uZmlybU1lc3NhZ2U6XG4gICAgICAgICdDZXQgYXR0cmlidXQgbmUgc2VyYSBwbHVzIHZpc2libGUgcG91ciBsZXMgZG9ubsOpZXMgbGUgcG9zc8OpZGFudC4gQ29uZmlybWV6LXZvdXMgbGEgc3VwcHJlc3Npb24gPycsXG4gICAgICBwb3NpdGlvbjoge1xuICAgICAgICBGVUxMOiAnSWNvbmUgcGxlaW5lJyxcbiAgICAgICAgVE9QX0xFRlQ6ICdFbiBoYXV0IMOgIGdhdWNoZScsXG4gICAgICAgIFRPUF9SSUdIVDogJ0VuIGhhdXQgw6AgZHJvaXRlJyxcbiAgICAgICAgQk9UVE9NX0xFRlQ6ICdFbiBiYXMgw6AgZ2F1Y2hlJyxcbiAgICAgICAgQk9UVE9NX1JJR0hUOiAnRW4gYmFzIMOgIGRyb2l0ZSdcbiAgICAgIH0sXG4gICAgICBjdXN0b21pemU6IHtcbiAgICAgICAgdGl0bGU6ICdQZXJzb25uYWxpc2VyJyxcbiAgICAgICAgdGVtcGxhdGU6ICdUb29sdGlwIChDYXJ0ZSAmIEdyYXBoZSknLFxuICAgICAgICB1cGRhdGU6ICdNZXR0cmUgw6Agam91ciBsZSB0b29sdGlwJyxcbiAgICAgICAgYWR2YW5jZWQ6ICdNb2RlIGF2YW5jw6knLFxuICAgICAgICBuYW1lOiAnTW9kw6hsZSBtw6l0aWVyJyxcbiAgICAgICAgdGVjaG5pY2FsSWQ6ICdJZCB0ZWNobmlxdWUnLFxuICAgICAgICB0eXBlOiAnQ2hvaXNpc3NleiBsZSB0eXBlIGRlIHRvb2x0aXAgw6AgdXRpbGlzZXInLFxuICAgICAgICBzaW1wbGlmaWVkOiAnQ2hvaXNpc3NleiBsZXMgYXR0cmlidXRzIMOgIGFmZmljaGVyJyxcbiAgICAgICAgZXhlbXBsZTogJ3ZhbGV1ciBkZSB7e2V4cHJ9fScsXG4gICAgICAgIHRhYmxlOiAnQXR0cmlidXRzIHBhciBkw6lmYXV0IChUYWJsZSknLFxuICAgICAgICB0aWxlOiAnQXR0cmlidXRzIGFmZmljaMOpcyBzdXIgbGEgdHVpbGUnLFxuICAgICAgICB0aWxlSGludDogJ1NldWxlbWVudCBlbnRyZSAxIGV0IHt7bWF4fX0gYXR0cmlidXRzIHBldXZlbnQgw6p0cmUgYWZmaWNow6lzIGRhbnMgdW5lIHR1aWxlJyxcbiAgICAgICAgdGFibGVBdHRyczogJ0F0dHJpYnV0cyBkYW5zIGxhIHRhYmxlIHBhciBkw6lmYXV0JyxcbiAgICAgICAgdGlsZUF0dHJzOiAnQXR0cmlidXRzIHByw6lzZW50w6lzIGRhbnMgbGVzIHR1aWxlcycsXG4gICAgICAgIG5vVGFibGVBdHRyczogJ0F1dHJlcyBhdHRyaWJ1dHMnLFxuICAgICAgICBub1RpbGVBdHRyczogJ0F0dHJpYnV0cyBub24gYWZmaWNow6lzJyxcbiAgICAgICAgdXBkYXRlVGFibGU6IFwiTWV0dHJlIMOgIGpvdXIgbGVzIGF0dHJpYnV0cyBwYXIgZMOpZmF1dCBkJ3VuZSB0YWJsZVwiLFxuICAgICAgICB1cGRhdGVUaWxlOiAnTWV0dHJlIMOgIGpvdXIgbGVzIGF0dHJpYnV0cyBkZXMgdHVpbGVzJyxcbiAgICAgICAgdXBkYXRlSWNvbnM6ICdNZXR0cmUgw6Agam91ciBsZXMgcsOoZ2xlcyBkZSBzeW1ib2xlcydcbiAgICAgIH0sXG4gICAgICB2YXJUeXBlOiB7XG4gICAgICAgIGludDogJ05vbWJyZSBlbnRpZXInLFxuICAgICAgICBkb3VibGU6ICdOb21icmUgZMOpY2ltYWwnLFxuICAgICAgICBzdHJpbmc6ICdUZXh0ZScsXG4gICAgICAgIHV1aWQ6ICdJZGVudGlmaWFudCB1dWlkJyxcbiAgICAgICAgZGF0ZTogJ0RhdGUnLFxuICAgICAgICBsaXN0OiAnTGlzdGUgZGUgdmFsZXVycydcbiAgICAgIH0sXG4gICAgICBtZW51czoge1xuICAgICAgICBlbnZpcm9ubWVudDogXCJDb250ZXh0ZXMgZCdleMOpY3V0aW9uXCIsXG4gICAgICAgIHVzZXI6ICdVdGlsaXNhdGV1cnMnLFxuICAgICAgICAnbWV0YWRhdGEtdXNlcic6ICdQcm9maWwgdXRpbGlzYXRldXInLFxuICAgICAgICAnYWJhYy1ydWxlcyc6ICdSw6hnbGVzIEFCQUMnLFxuICAgICAgICAnbWV0YWRhdGEtcnVsZXMnOiAnUsOoZ2xlcyBNw6l0YWRvbm7DqWVzJyxcbiAgICAgICAgZGF0YXNldDogJ0pldXggZGUgZG9ubsOpZXMnLFxuICAgICAgICBjbGFzc2VzOiAnTW9kw6hsZXMgZGUgZG9ubsOpZXMnLFxuICAgICAgICBwcmVkaWNhdGVzOiAnUHLDqWRpY2F0cycsXG4gICAgICAgIG1ldGFkYXRhOiAnTcOpdGFkb25uw6llcycsXG4gICAgICAgIGZpZWxkczogJ1R5cGVzIG3DqXRpZXInLFxuICAgICAgICAncmVsYXRpb24tdHlwZXMnOiAnVHlwZXMgZGUgcmVsYXRpb24nLFxuICAgICAgICBsaW5rczogJ0xpZW4gZW50cmUgYXR0cmlidXRzJyxcbiAgICAgICAgbW9kZWw6ICdNb2TDqGxlIG3DqXRpZXInLFxuICAgICAgICBhY2Nlc3M6ICdBY2PDqHMgYXV4IGRvbm7DqWVzJ1xuICAgICAgfSxcbiAgICAgIHByZWRpY2F0ZXM6IHtcbiAgICAgICAgbGlzdDogJ1Byw6lkaWNhdHMnLFxuICAgICAgICBhZGQ6ICdDcsOpZXIgdW4gbm91dmVhdSBwcsOpZGljYXQnLFxuICAgICAgICBlZGl0OiAnTW9kaWZpZXIgdW4gcHLDqWRpY2F0JyxcbiAgICAgICAgaW5mbzogJ0TDqXRhaWxzIGR1IHByw6lkaWNhdCcsXG4gICAgICAgIG51bTogJ0lkLicsXG4gICAgICAgIG5hbWU6ICdOb20nLFxuICAgICAgICB2YWx1ZTogJ0V4cHJlc3Npb24gY29uZGl0aW9ubmVsbGUgZGUgZMOpY2xlbmNoZW1lbnQnLFxuICAgICAgICB2YWxpZEVkaXQ6ICdJbmZvcm1hdGlvbicsXG4gICAgICAgIHZhbGlkRWRpdE1lc3NhZ2U6ICdDZSBwcsOpZGljYXQgZXN0IHV0aWxpc8OpIGRhbnMge3t1c2VkfX0gcsOoZ2xlcy4gVm91bGV6LXZvdXMgdnJhaW1lbnQgbGUgbW9kaWZpZXIgPydcbiAgICAgIH0sXG4gICAgICBtZXRhZGF0YToge1xuICAgICAgICB0aXRsZTogJ01ldGFkb25uw6llcycsXG4gICAgICAgIGFkZDogJ0Nyw6llciB1bmUgbWV0YWRvbm7DqWUnLFxuICAgICAgICBlZGl0OiAnTW9kaWZpZXIgdW5lIG1ldGFkb25uw6llJyxcbiAgICAgICAgZGV0YWlsczogJ0TDqXRhaWxzIGRlIGxhIG1ldGFkb25uw6llJyxcbiAgICAgICAgZGV0YWlsc1VzZXI6ICdEw6l0YWlscyBkdSBwcm9maWwgdXRpbGlzYXRldXInLFxuICAgICAgICBpZDogJ0lEJyxcbiAgICAgICAgbGFiZWw6ICdOb20nLFxuICAgICAgICB0eXBlOiAnVHlwZScsXG4gICAgICAgIGRlc2NyaXB0aW9uOiAnRGVzY3JpcHRpb24nLFxuICAgICAgICBpbnZhbGlkOiAnTGUgY2hhbXBzIGVzdCByZXF1aXMnLFxuICAgICAgICBsaXN0TGFiZWw6ICdOb20gZGUgbGEgdmFsZXVyJyxcbiAgICAgICAgYWRkVmFsdWU6ICdBam91dGVyIHVuZSBub3V2ZWxsZSB2YWxldXInLFxuICAgICAgICByZW1vdmVWYWx1ZTogJ1N1cHByaW1lciBjZXR0ZSB2YWxldXInLFxuICAgICAgICBzeXN0ZW06ICdNw6l0YWRvbm7DqWUgc3lzdMOobWUnXG4gICAgICB9LFxuICAgICAgJ21ldGFkYXRhLXJ1bGVzJzoge1xuICAgICAgICB0aXRsZTogJ1LDqGdsZXMgTWV0YWRvbm7DqWVzJyxcbiAgICAgICAgbGFiZWw6ICdOb20nLFxuICAgICAgICAnaXMtc2FtZS1uYW1lJzogJ0xlIG5vbSBkZSBsYSByw6hnbGUgZXN0IGTDqWrDoCBwcmlzIHBvdXIgdW5lIGF1dHJlIHLDqGdsZSwgdmV1aWxsZXogZW4gdXRpbGlzZXIgdW4gYXV0cmUnLFxuICAgICAgICAnaXMtc2FtZS1ydWxlcyc6IFwiTGEgbcOqbWUgcsOoZ2xlIGEgZMOpasOgIMOpdMOpIGNvbmZpZ3Vyw6llIGV0IGVucmVnaXN0csOpZSwgdm91cyBwb3V2ZXogbCd1dGlsaXNlclwiLFxuICAgICAgICAnbWV0YWRhdGEtaXRlbSc6IHtcbiAgICAgICAgICBuYW1lOiAnTWV0YWRvbm7DqWVzIGNpYmxlJyxcbiAgICAgICAgICBkZXNjcmlwdGlvbjogJ0Rlc2NyaXB0aW9uIGRlIGxhIG1ldGFkb25uw6llIGNpYmxlJyxcbiAgICAgICAgICB0eXBlOiAnVHlwZSBkZSBsYSBtZXRhZG9ubsOpZSBjaWJsZSdcbiAgICAgICAgfSxcbiAgICAgICAgJ21ldGFkYXRhLXVzZXInOiB7XG4gICAgICAgICAgbmFtZTogJ1Byb2ZpbCB1dGlsaXNhdGV1ciBzb3VyY2UnLFxuICAgICAgICAgIGRlc2NyaXB0aW9uOiAnRGVzY3JpcHRpb24gZHUgcHJvZmlsIHV0aWxpc2F0ZXVyIHNvdXJjZScsXG4gICAgICAgICAgdHlwZTogJ1R5cGUgZHUgcHJvZmlsIHV0aWxpc2F0ZXVyIHNvdXJjZSdcbiAgICAgICAgfSxcbiAgICAgICAgZWRpdDoge1xuICAgICAgICAgIHRpdGxlOiAnTW9kaWZpZXIgdW5lIHLDqGdsZSBkZSBtZXRhZG9ubsOpZXMnXG4gICAgICAgIH0sXG4gICAgICAgIGFkZDoge1xuICAgICAgICAgIHRpdGxlOiAnQ3LDqWVyIHVuZSBub3V2ZWxsZSByw6hnbGUgZGUgbWV0YWRvbm7DqWVzJ1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgZGF0YXNldDoge1xuICAgICAgICBkZWxldGU6XG4gICAgICAgICAgXCJMJ2Vuc2VtYmxlIGRlcyB2ZXJzaW9ucyBldCBkZXMgZG9ubsOpZXMgYXNzb2Npw6llcyBzZXJvbnQgc3VwcHJpbcOpZXMuIExlcyByZXN0aXR1dGlvbnMgZXQgcHLDqXNlbnRhdGlvbnMgdXRpbGlzYW50IGNlIGpldSBkZSBkb25uw6llcyBuJ2FmZmljaGVyb250IHBsdXMgbGVzIGRvbm7DqWVzIGNvcnJlc3BvbmRhbnRlcy4gQ29uZmlybWV6LXZvdXMgbGEgc3VwcHJlc3Npb24gP1wiLFxuICAgICAgICB0aXRsZTogJ0pldXggZGUgZG9ubsOpZXMnLFxuICAgICAgICBpZDogJ0lkZW50aWZpYW50JyxcbiAgICAgICAgbmFtZTogJ05vbScsXG4gICAgICAgIG9DbGFzczogJ01vZMOobGUgbcOpdGllcicsXG4gICAgICAgIHR5cGU6ICdUeXBlJyxcbiAgICAgICAgJ2lzLXNhbWUtbmFtZSc6ICdMZSBub20gZHUgamV1IGRlIGRvbm7DqWVzIGVzdCBkw6lqw6AgcHJpcywgdmV1aWxsZXogZW4gdXRpbGlzZXIgdW4gYXV0cmUnLFxuICAgICAgICBhZGQ6IHtcbiAgICAgICAgICB0aXRsZTogJ0Nyw6llciB1biBqZXUgZGUgZG9ubsOpZXMnXG4gICAgICAgIH0sXG4gICAgICAgIGVkaXQ6IHtcbiAgICAgICAgICB0aXRsZTogJ01vZGlmaWVyIHVuIGpldSBkZSBkb25uw6llcydcbiAgICAgICAgfSxcbiAgICAgICAgT1BFTjogJ091dmVydCcsXG4gICAgICAgIENMT1NFRDogJ0Zlcm3DqScsXG4gICAgICAgIE1PRElGSUFCTEU6ICdNb2RpZmlhYmxlJ1xuICAgICAgfSxcbiAgICAgICdhYmFjLXJ1bGVzJzoge1xuICAgICAgICBkZWxldGU6ICdTdXBwcmltZXInLFxuICAgICAgICBtZXRhZGF0YVVzZXI6ICdQcm9maWwgdXRpbGlzYXRldXInLFxuICAgICAgICB0aXRsZToge1xuICAgICAgICAgIGxpc3Q6ICdSw6hnbGVzIEFiYWMnLFxuICAgICAgICAgIGFkZDogJ0Nyw6llciB1bmUgcsOoZ2xlIGFiYWMnLFxuICAgICAgICAgIHZpZXc6IFwiRMOpdGFpbHMgZCd1bmUgcsOoZ2xlIGFiYWNcIixcbiAgICAgICAgICBlZGl0OiAnTW9kaWZpZXIgdW5lIHLDqGdsZSBhYmFjJ1xuICAgICAgICB9LFxuICAgICAgICBmb3JtOiB7XG4gICAgICAgICAgaWQ6ICdOdW3DqXJvJyxcbiAgICAgICAgICBuYW1lOiAnTm9tJyxcbiAgICAgICAgICBkZXNjcmlwdGlvbjogJ0Rlc2NyaXB0aW9uJyxcbiAgICAgICAgICBzdGF0dXM6ICdTdGF0dXQnLFxuICAgICAgICAgIHN0YXR1c0FjdGl2ZTogJ0FjdGlmJyxcbiAgICAgICAgICBzdGF0dXNJbmFjdGl2ZTogJ0luYWN0aWYnLFxuICAgICAgICAgIHByZWRpY2F0ZTogJ1Byw6lkaWNhdCBkZSBkw6ljbGVuY2hlbWVudCcsXG4gICAgICAgICAgdHlwZTogJ1R5cGUnLFxuICAgICAgICAgIHR5cGVNZXRhZGF0YTogJ01ldGFkb25uw6llJyxcbiAgICAgICAgICB0eXBlQXR0cmlidXRlOiAnQXR0cmlidXQnLFxuICAgICAgICAgIHR5cGVTZWxlY3RlZDogJ1ZvdXMgbmUgcG91dmV6IHBhcyBjaGFuZ2VyIGxlIHR5cGUgYXZlYyBsZXMgY29uZGl0aW9ucyBleGlzdGFudGVzJyxcbiAgICAgICAgICBhZGRNZXRhZGF0YTogJ0Fqb3V0ZXIgdW5lIGNvbmRpdGlvbiBzdXIgdW5lIG1ldGFkb25uw6llJyxcbiAgICAgICAgICBhZGRBdHRyaWJ1dGU6ICdBam91dGVyIHVuZSBjb25kaXRpb24gc3VyIHVuIGF0dHJpYnV0JyxcbiAgICAgICAgICB0b2dnbGVBbmQ6ICdFVCcsXG4gICAgICAgICAgdG9nZ2xlT3I6ICdPVScsXG4gICAgICAgICAgYWRkR3JvdXA6ICdBam91dGVyIHVuIHNvdXMtZ3JvdXBlJ1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgdXNlcjoge1xuICAgICAgICB0aXRsZTogJ1Byb2ZpbCB1dGlsaXNhdGV1cicsXG4gICAgICAgIGFkZDogJ0Nyw6llciB1biBub3V2ZWF1IHByb2ZpbCB1dGlsaXNhdGV1cicsXG4gICAgICAgIGxhYmVsOiAnTm9tJyxcbiAgICAgICAgdHlwZTogJ1R5cGUnLFxuICAgICAgICBpbnZhbGlkOiAnTGUgY2hhbXAgZXN0IHJlcXVpcycsXG4gICAgICAgIGVkaXQ6ICdNb2RpZmllciB1biBwcm9maWwgdXRpbGlzYXRldXInXG4gICAgICB9LFxuICAgICAgZW52aXJvbm1lbnQ6IHtcbiAgICAgICAgbGlzdDogXCJDb250ZXh0ZXMgZCdleMOpY3V0aW9uXCIsXG4gICAgICAgIGFkZDogXCJDcsOpZXIgdW4gbm91dmVhdSBjb250ZXh0ZSBkJ2V4w6ljdXRpb25cIixcbiAgICAgICAgZWRpdDogXCJNb2RpZmllciB1biBjb250ZXh0ZSBkJ2V4w6ljdXRpb25cIixcbiAgICAgICAgaW5mbzogXCJEw6l0YWlscyBkdSBjb250ZXh0ZSBkJ2V4w6ljdXRpb25cIixcbiAgICAgICAgZm9ybWF0SW50OiAnTGEgdmFsZXVyIGRvaXQgw6p0cmUgdW4gZW50aWVyLicsXG4gICAgICAgIGZvcm1hdERvdWJsZTogXCJMYSB2YWxldXIgZG9pdCDDqnRyZSB1biBlbnRpZXIsIGxlIHPDqXBhcmF0ZXVyIGF1dG9yaXPDqSBlc3QgdW4gJy4nXCIsXG4gICAgICAgIGZvcm1hdE5hbWU6ICdDYXJhY3TDqHJlcyBzcGVjaWF1eCBhdXRvcmlzw6lzOiBbIC0sIF8gXSAnLFxuICAgICAgICBuYW1lOiAnTm9tJyxcbiAgICAgICAgdHlwZTogJ1R5cGUnLFxuICAgICAgICB2YWx1ZTogJ1ZhbGV1ciBkZSBsYSB2YXJpYWJsZSdcbiAgICAgIH0sXG4gICAgICBjbGFzc2VzOiB7XG4gICAgICAgIGxpc3Q6ICdNb2TDqGxlcyBkZSBkb25uw6llcycsXG4gICAgICAgIG5hbWU6ICdOb20nLFxuICAgICAgICB0aXRsZTogJ01vZMOobGUgZGUgZG9ubsOpZXMge3tjbGFzc319JyxcbiAgICAgICAgaW1hZ2U6ICdJbWFnZScsXG4gICAgICAgIGZvcm1hdE5hbWU6ICdDYXJhY3TDqHJlcyBhdXRvcmlzw6lzOiBbIG1pbnVzY3VsZSwgLSwgXyBdJyxcbiAgICAgICAgbW9kZWw6ICdNb2TDqGxlJyxcbiAgICAgICAgZGVzY3JpcHRpb246ICdEZXNjcmlwdGlvbicsXG4gICAgICAgIGxpbmVzOiAnTGlnbmVzJyxcbiAgICAgICAgYWRkOiAnQ3LDqWVyIHVuIG5vdXZlYXUgbW9kw6hsZSBkZSBkb25uw6llcycsXG4gICAgICAgIGVkaXQ6ICdNb2RpZmllciBsZSBtb2TDqGxlIGRlIGRvbm7DqWVzJyxcbiAgICAgICAgcmVuYW1lOiAnUmVub21tZXIgbGUgbW9kw6hsZSBkZSBkb25uw6llcycsXG4gICAgICAgIGFkZEF0dHI6ICdBdHRyaWJ1dCcsXG4gICAgICAgIGluZm9BdHRyOiAnTW9kw6hsZSBkZSBkb25uw6llcyB7e2NsYXNzfX0gPiBBdHRyaWJ1dHMnLFxuICAgICAgICBpbmZvOiAnRMOpdGFpbCBkdSBtb2TDqGxlIGRlIGRvbm7DqWVzJyxcbiAgICAgICAgcnVsZXM6ICdSw6hnbGVzIGRlIGTDqWZpbml0aW9uIGRlIHN5bWJvbGVzJyxcbiAgICAgICAgY29uZGl0aW9uOiAnQWN0aWYgc2Vsb24gdW5lIGNvbmRpdGlvbicsXG4gICAgICAgIGF0dHJOYW1lOiAnQXR0cmlidXRlIMOgIHbDqXJpZmllcicsXG4gICAgICAgIHZhbHVlOiAnVmFsZXVyIGRlIGNvbXBhcmFpc29uJyxcbiAgICAgICAgb3BlcmF0aW9uOiAnT3DDqXJhdGlvbiBkZSBjb21wYXJhaXNvbicsXG4gICAgICAgIG9wZXJhdGlvbnM6IHtcbiAgICAgICAgICBFUVVBTFM6ICdlc3Qgw6lnYWwnLFxuICAgICAgICAgIEdSRUFURVI6ICdlc3QgcGx1cyBncmFuZCcsXG4gICAgICAgICAgR1JFQVRFUl9PUl9FUVVBTDogJ2VzdCBwbHVzIGdyYW5kIG91IMOpZ2FsJyxcbiAgICAgICAgICBMT1dFUjogJ3BsdXMgcGV0aXQnLFxuICAgICAgICAgIExPV0VSX09SX0VRVUFMOiAncGx1cyBwZXRpdCBvdSDDqWdhbCcsXG4gICAgICAgICAgQ09OVEFJTlM6ICdjb250aWVudCB0ZXh0dWVsbGVtZW50J1xuICAgICAgICB9LFxuICAgICAgICBjcmVhdGVDbGFzc01vZGFsTWVzc2FnZTpcbiAgICAgICAgICAnSW1wb3NzaWJsZSBkZSBjcsOpZXIgdW4gbW9kw6hsZSBkZSBkb25uw6llcyBzYW5zIGF0dHJpYnV0cy4gVmV1aWxsZXogZW4gYWpvdXRlciBhdSBtb2lucyB1biBlbiBjbGlxdWFudCBzdXIgXCJBam91dGVyIHVuIGF0dHJpYnV0XCIuJyxcbiAgICAgICAgY3JlYXRlQ2xhc3NDb25maXJtTWVzc2FnZTogJ1ZvdWxlei12b3VzIGNvbmZpcm1lciBsYSBjcsOpYXRpb24gZHUgbW9kw6hsZSBkZSBkb25uw6llcyA/JyxcbiAgICAgICAgZGVsZXRlQ2xhc3NDb25maXJtTWVzc2FnZTogJ0NvbmZpcm1lei12b3VzIGxhIHN1cHByZXNzaW9uIGRlIGNlIG1vZMOobGUgbcOpdGllciA/JyxcbiAgICAgICAgbGlua2VkT2JqZWN0czogJ09iamV0cyBsacOpcycsXG4gICAgICAgIHVzZWRFbHNld2hlcmU6IFwiVXRpbGlzw6kgcGFyIGRlcyBvYmpldHMgZCdhdXRyZXMgdXRpbGlzYXRldXJzXCIsXG4gICAgICAgIGFzc29jaWF0aW9uczogJ0Fzc29jaWF0aW9ucycsXG4gICAgICAgIHR5cGU6ICdUeXBlJyxcbiAgICAgICAgYXR0cmlidXRlczoge1xuICAgICAgICAgIGFkZDogJ05vdXZlbCBhdHRyaWJ1dCcsXG4gICAgICAgICAgZWRpdDogXCJNb2RpZmllciBsJ2F0dHJpYnV0XCIsXG4gICAgICAgICAgaW5mbzogXCJEw6l0YWlsIGRlIGwnYXR0cmlidXRcIixcbiAgICAgICAgICBkZWxldGU6IFwiU3VwcHJpbWVyIGwnYXR0cmlidXRcIixcbiAgICAgICAgICBuYW1lOiBcIkxpYmVsbMOpIGRlIGwnYXR0cmlidXRcIixcbiAgICAgICAgICB0ZWNobmljYWxOYW1lOiAnTm9tIHRlY2huaXF1ZScsXG4gICAgICAgICAgZGVzY3JpcHRpb246ICdEZXNjcmlwdGlvbicsXG4gICAgICAgICAgZmllbGQ6ICdUeXBlJyxcbiAgICAgICAgICBjYXRlZ29yeTogJ0NhdMOpZ29yaWUnLFxuICAgICAgICAgIG11bHRpVmFsdWVkOiAnTXVsdGkgdmFsdcOpJ1xuICAgICAgICB9LFxuICAgICAgICBjYXRlZ29yeToge1xuICAgICAgICAgIHNlbGVjdDogJ1PDqWxlY3Rpb25uZXIgdW5lIGNhdMOpZ29yaWUnLFxuICAgICAgICAgIHNlYXJjaE9yQ3JlYXRlOiAnUmVjaGVyY2hlciB1bmUgY2F0w6lnb3JpZSBleGlzdGFudGUgT1UgZW4gY3LDqWVyIHVuZSBub3V2ZWxsZScsXG4gICAgICAgICAgbmFtZTogJ0NhdMOpZ29yaWUnLFxuICAgICAgICAgIHNlbGVjdEl0OiAnU8OpbGVjdGlvbm5lciBsYSBjYXTDqWdvcmllJyxcbiAgICAgICAgICBjcmVhdGU6ICdDcsOpZXIgbGEgY2F0w6lnb3JpZScsXG4gICAgICAgICAgYWRkOiBcIm4nZXhpc3RlIHBhcyBlbmNvcmUuIDxicj5JbCBlc3QgcG9zc2libGUgXFxuIGRlIGxhIGNyw6llciBpY2kuIDxicj5FbGxlIHNlcmEgYXV0b21hdGlxdWVtZW50IHPDqWxlY3Rpb25uw6llIGV0IGFqb3V0w6llIMOgIGxhIGxpc3RlIGRlcyBjYXTDqWdvcmllcy5cIlxuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgZmllbGRzOiB7XG4gICAgICAgIGFkZDogJ0Nyw6llciB1biBub3V2ZWF1IHR5cGUgbcOpdGllcicsXG4gICAgICAgIGNyczogJ0NSUyAoY29kZSBFUFNHKSA6JyxcbiAgICAgICAgaW5mbzogJ0TDqXRhaWwgZHUgdHlwZSBtw6l0aWVyJyxcbiAgICAgICAgbGlzdDogJ1R5cGVzIG3DqXRpZXInLFxuICAgICAgICBlZGl0OiAnTW9kaWZpZXIgbGUgdHlwZSBtw6l0aWVyJyxcbiAgICAgICAgbmFtZTogJ05vbScsXG4gICAgICAgIGRlc2NyaXB0aW9uOiAnRGVzY3JpcHRpb24nLFxuICAgICAgICB0eXBlOiAnVHlwZSB0ZWNobmlxdWUnLFxuICAgICAgICBhdHRyaWJ1dGVzOiAnUHLDqXNlbmNlIGRhbnMgZGVzIGF0dHJpYnV0cycsXG4gICAgICAgIGF0dHJpYnV0ZXNUYWI6ICdBdHRyaWJ1dHMnLFxuICAgICAgICBhdHRyaWJ1dGVOYW1lOiBcIk5vbSBkJ2F0dHJpYnV0XCIsXG4gICAgICAgIGNsYXNzTmFtZTogJ0NsYXNzZScsXG4gICAgICAgIGNvbmZpcm1GaWVsZERlbGV0aW9uOiAnQ29uZmlybWV6LXZvdXMgbGEgc3VwcHJlc3Npb24gZGUgY2UgdHlwZSBtw6l0aWVyID8nLFxuICAgICAgICBmaWVsZFR5cGU6IHtcbiAgICAgICAgICBpbnQ6ICdOb21icmUgZW50aWVyJyxcbiAgICAgICAgICBsb25nOiAnTm9tYnJlIGVudGllciBsb25nJyxcbiAgICAgICAgICBkZWNpbWFsOiAnTm9tYnJlIGTDqWNpbWFsJyxcbiAgICAgICAgICBzdHJpbmc6ICdUZXh0ZSBicnV0JyxcbiAgICAgICAgICBrZXl3b3JkOiAnVGV4dGUgaW5kZXjDqScsXG4gICAgICAgICAgaW5zdGFudDogJ0RhdGUnLFxuICAgICAgICAgIHJhdzogJ0Rvbm7DqWUgbm9uIHN0cnVjdHVyw6llJyxcbiAgICAgICAgICBwb2ludDogJ1BvaW50JyxcbiAgICAgICAgICBtdWx0aXBvaW50OiAnTXVsdGktcG9pbnRzJyxcbiAgICAgICAgICBsaW5lOiAnTGlnbmUnLFxuICAgICAgICAgIG11bHRpbGluZTogJ011bHRpLWxpZ25lcycsXG4gICAgICAgICAgcG9seWdvbjogJ1BvbHlnb25lJyxcbiAgICAgICAgICBtdWx0aXBvbHlnb246ICdNdWx0aS1wb2x5Z29uZXMnLFxuICAgICAgICAgIGluZm9ybWF0aW9uOiB7XG4gICAgICAgICAgICBpbnQ6ICdQZXJtZXQgZGUgc3RvY2tlciBkZXMgZG9ubsOpZXMgbnVtw6lyaXF1ZXMgZW50acOocmVzIGluZsOpcmlldXJlcyDDoCAyXjMyJyxcbiAgICAgICAgICAgIGxvbmc6ICdQZXJtZXQgZGUgc3RvY2tlciBkZXMgZG9ubsOpZXMgbnVtw6lyaXF1ZXMgZW50acOocmVzIHBvdXZhbnQgZMOpcGFzc2VyIDJeMzInLFxuICAgICAgICAgICAgZGVjaW1hbDogJ1Blcm1ldCBkZSBzdG9ja2VyIGRlcyBkb25uw6llcyBudW3DqXJpcXVlcyBhdmVjIGRlcyBkw6ljaW1hbGVzJyxcbiAgICAgICAgICAgIHN0cmluZzpcbiAgICAgICAgICAgICAgXCJQZXJtZXQgZGUgc3RvY2tlciBkZXMgZG9ubsOpZXMgYXUgZm9ybWF0IGFscGhhbnVtw6lyaXF1ZS4gQ2VzIGRvbm7DqWVzIG5lIHNvbnQgcGFzIGluZGV4w6llcyA6IGlsIGVzdCBwb3NzaWJsZSBkZSBmYWlyZSB1bmUgcmVjaGVyY2hlIGRlc3N1cyBtYWlzIHBhcyBkJ2FncsOpZ2F0aW9uXCIsXG4gICAgICAgICAgICBrZXl3b3JkOlxuICAgICAgICAgICAgICAnUGVybWV0IGRlIHN0b2NrZXIgZGVzIGRvbm7DqWVzIGF1IGZvcm1hdCBhbHBoYW51bcOpcmlxdWUuIENlcyBkb25uw6llcyBzb250IGluZGV4w6llcyA6IGlsIGVzdCBwb3NzaWJsZSBkZSBmYWlyZSB1bmUgcmVjaGVyY2hlIGRlc3N1cyBhaW5zaSBxdWUgZGVzIGFncsOpZ2F0aW9ucy4nLFxuICAgICAgICAgICAgaW5zdGFudDogJ1Blcm1ldCBkZSBzdG9ja2VyIHVuZSBkYXRlJyxcbiAgICAgICAgICAgIHJhdzogJ3Blcm1ldCBkZSBzdG9ja2VyIGRlcyBkb25uw6llcyBkZSB0eXBlIGltYWdlIG91IGZpY2hpZXInLFxuICAgICAgICAgICAgcG9pbnQ6XG4gICAgICAgICAgICAgIFwiUGVybWV0IGRlIHN0b2NrZXIgZGVzIGNvb3Jkb25uw6llcyBnw6lvZ3JhcGhpcXVlcyBkJ3VuIG9iamV0IHJlcHLDqXNlbnTDqSBwYXIgdW4gcG9pbnQgKGZvcm1hdCBnw6lvanNvbilcIixcbiAgICAgICAgICAgIG11bHRpcG9pbnQ6XG4gICAgICAgICAgICAgIFwiUGVybWV0IGRlIHN0b2NrZXIgZGVzIGNvb3Jkb25uw6llcyBnw6lvZ3JhcGhpcXVlcyBkJ3VuIG9iamV0IGNvbXBvc8OpIGRlIHBsdXNpZXVycyBwb2ludHMgbm9uIHJlbGnDqXMgKGZvcm1hdCBnw6lvanNvbilcIixcbiAgICAgICAgICAgIGxpbmU6IFwiUGVybWV0IGRlIHN0b2NrZXIgZGVzIGNvb3Jkb25uw6llcyBnw6lvZ3JhcGhpcXVlcyBkJ3VuIG9iamV0IHJlcHLDqXNlbnTDqSBjb21tZSB1bmUgbGlnbmUgKGZvcm1hdCBnw6lvanNvbilcIixcbiAgICAgICAgICAgIG11bHRpbGluZTpcbiAgICAgICAgICAgICAgXCJQZXJtZXQgZGUgc3RvY2tlciBkZXMgY29vcmRvbm7DqWVzIGfDqW9ncmFwaGlxdWVzIGQndW4gb2JqZXQgcmVwcsOpc2VudMOpIGF2ZWMgcGx1c2lldXJzIGxpZ25lcyBub24gcmVsacOpZXMgZW50cmUgZWxsZXMgKGxvbmdpdHVkZSBldCBsYXRpdHVkZSBmb3JtYXQgZ8Opb2pzb24pXCIsXG4gICAgICAgICAgICBwb2x5Z29uOlxuICAgICAgICAgICAgICBcIlBlcm1ldCBkZSBzdG9ja2VyIGRlcyBjb29yZG9ubsOpZXMgZ8Opb2dyYXBoaXF1ZXMgZCd1biBvYmpldCByZXByw6lzZW50w6kgcGFyIHVuIHBvbHlnb25lIChmb3JtYXQgZ8Opb2pzb24pXCIsXG4gICAgICAgICAgICBtdWx0aXBvbHlnb246XG4gICAgICAgICAgICAgIFwiUGVybWV0IGRlIHN0b2NrZXIgZGVzIGNvb3Jkb25uw6llcyBnw6lvZ3JhcGhpcXVlcyBkJ3VuIG9iamV0IHJlcHLDqXNlbnTDqSBwYXIgcGx1c2lldXJzIHBvbHlnb25lcyBpbWJyaXF1w6lzIG91IG5vbiAoZm9ybWF0IGfDqW9qc29uKVwiXG4gICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICByYXdNZXRob2RzOiB7XG4gICAgICAgICAgaHR0cDogJ0RlcHVpcyB1bmUgdXJsJyxcbiAgICAgICAgICB1cGxvYWQ6ICdUw6lsw6l2ZXJzZXIgZGVwdWlzIG1vbiBvcmRpbmF0ZXVyJ1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgdXNlckluZm86IHtcbiAgICAgICAgbGlzdDogJ1V0aWxpc2F0ZXVycycsXG4gICAgICAgIGluZm86IFwiRMOpdGFpbCBkZSBsJ3V0aWxpc2F0ZXVyXCIsXG4gICAgICAgIHByb2ZpbGU6ICdQcm9maWwnLFxuICAgICAgICBhZGRNZXRhZGF0YTogJ0Fqb3V0ZXInLFxuICAgICAgICBlZGl0TWV0YWRhdGE6ICdNb2RpZmllciBsYSBtw6l0YWRvbm7DqWUnLFxuICAgICAgICBuYW1lOiAnUHLDqW5vbScsXG4gICAgICAgIGZhbWlseU5hbWU6ICdOb20gZGUgZmFtaWxsZScsXG4gICAgICAgIGVtYWlsOiAnQWRyZXNzZSBtYWlsJyxcbiAgICAgICAgbWV0YWRhdGE6ICdNw6l0YWRvbm7DqWVzJyxcbiAgICAgICAgcm9sZXM6ICcgUsO0bGVzJ1xuICAgICAgfSxcbiAgICAgIHJlbGF0aW9uVHlwZXM6IHtcbiAgICAgICAgbGlzdDogJ1R5cGVzIGRlIHJlbGF0aW9ucycsXG4gICAgICAgIGFkZDogJ0Fqb3V0ZXIgbGUgdHlwZSBkZSByZWxhdGlvbicsXG4gICAgICAgIGVkaXQ6ICdNb2RpZmllciBsZSB0eXBlIGRlIHJlbGF0aW9uJyxcbiAgICAgICAgaW5mbzogJ0TDqXRhaWwgZHUgdHlwZSBkZSByZWxhdGlvbicsXG4gICAgICAgIG5hbWU6ICdOb20nLFxuICAgICAgICBuYlJlbGF0aW9uOiAnTm9tYnJlIGRlIHJlbGF0aW9ucyBkZSBjZSB0eXBlJyxcbiAgICAgICAgbmJMaW5rOiAnTm9tYnJlIGRlIGxpZW5zIHV0aWxpc2FudCBjZSB0eXBlIGRlIHJlbGF0aW9uJyxcbiAgICAgICAgZGF0ZU1vZGlmaWNhdGlvbjogJ0RhdGUgZGUgbW9kaWZpY2F0aW9uJyxcbiAgICAgICAgZGVsZXRhYmxlOiAnUGV1dCDDqnRyZSBzdXBwcmltw6knLFxuICAgICAgICBkZWxldGVNb2RhbE1lc3NhZ2U6ICdDZSB0eXBlIGRlIHJlbGF0aW9uIG5lIHBldXQgw6p0cmUgc3VwcHJpbcOpIGNhciB1dGlsaXPDqS4nXG4gICAgICB9LFxuICAgICAgbGlua3M6IHtcbiAgICAgICAgbGlzdDogJ0xpZW5zIGVudHJlIGF0dHJpYnV0cycsXG4gICAgICAgIGFkZDogJ0Fqb3V0ZXIgdW4gbm91dmVhdSBsaWVuIGVudHJlIGF0dHJpYnV0cycsXG4gICAgICAgIGNsYXNzU291cmNlOiAnTW9kw6hsZSBtw6l0aWVyIHNvdXJjZScsXG4gICAgICAgIGF0dHJpYnV0ZVNvdXJjZTogJ0F0dHJpYnV0IHNvdXJjZScsXG4gICAgICAgIGNsYXNzRGVzdGluYXRpb246ICdNb2TDqGxlIG3DqXRpZXIgZGUgZGVzdGluYXRpb24nLFxuICAgICAgICBhdHRyaWJ1dGVEZXN0aW5hdGlvbjogJ0F0dHJpYnV0IGRlIGRlc3RpbmF0aW9uJyxcbiAgICAgICAgcmVsYXRpb25UeXBlOiAnVHlwZSBkZSByZWxhdGlvbicsXG4gICAgICAgIHNlbGVjdFJlbGF0aW9uVHlwZTogJ1NlbGVjdGlvbm5leiB1biB0eXBlIGRlIHJlbGF0aW9uJ1xuICAgICAgfSxcbiAgICAgIGFzc29jaWF0aW9uOiB7XG4gICAgICAgIEFCQUM6ICdSw6hnbGUgQUJBQycsXG4gICAgICAgIExJTks6ICdSZWxhdGlvbicsXG4gICAgICAgIE5BTUVEX1FVRVJZOiAnUmVxdcOqdGUgbm9tbcOpZScsXG4gICAgICAgIFdJREdFVDogJ1Jlc3RpdHV0aW9uJyxcbiAgICAgICAgREFUQVNFVDogJ0pldSBkZSBkb25uw6llcycsXG4gICAgICAgIE9DTEFTUzogJ01vZMOobGUgZGUgZG9ubsOpZXMnLFxuICAgICAgICBEQVNIQk9BUkQ6ICdQcsOpc2VudGF0aW9uJyxcbiAgICAgICAgRklFTEQ6ICdUeXBlIG3DqXRpZXInXG4gICAgICB9LFxuICAgICAgc3RvcmFnZToge1xuICAgICAgICBsYWJlbDogJ0Jhc2UgZGUgc3RvY2thZ2UnLFxuICAgICAgICBkZXNjcmlwdGlvbjoge1xuICAgICAgICAgIFBPU1RHSVM6XG4gICAgICAgICAgICBcIkNlIHN0b2NrYWdlIGVzdCBjb25zZWlsbMOpIGVuIGNhcyBkZSBzdG9ja2FnZSBkZSBkb25uw6llcyBnw6lvZ3JhcGhpcXVlIGNvbXBsZXhlcyBvdSBkYW5zIGRlcyBzeXN0w6htZXMgZGUgY29vcmRvbm7DqWVzIGRpZmbDqXJlbnRzIGRlIFdHUyA4NC4gSWwgZXN0IHJlY29tbWFuZMOpIGRlIG5lIHN0b2NrZXIgZGFucyBjZXR0ZSBiYXNlIHF1ZSBkZXMgbW9kw6hsZXMgbcOpdGllciBkb250IGxhIHZvbHVtw6l0cmllIGRlIGRvbm7DqWVzIGVzdGltw6llIChlbiB0ZXJtZSBkZSBub21icmUgZCdpdGVtcykgbidlc3QgcGFzIHRyb3Agw6lsZXbDqWUuXCIsXG4gICAgICAgICAgRUxBU1RJQzpcbiAgICAgICAgICAgICdDZSBzdG9ja2FnZSBlc3QgY29uc2VpbGzDqSBlbiBjYXMgZGUgZm9ydGUgdm9sdW3DqXRyaWUgZGUgZG9ubsOpZXMgcHLDqXZ1ZSBwb3VyIGNlIG1vZMOobGUgbcOpdGllciAoZ3JhbmQgbm9tYnJlIGRcXCdpdGVtcykuIFNpIHZvdXMgc291aGFpdGV6IHN0b2NrZXIgZGVzIGRvbm7DqWVzIGfDqW9ncmFwaGlxdWVzIGRhbnMgY2UgbW9kw6hsZSwgZGVzIGZvcm1lcyBzaW1wbGVzIHNvbnQgY29uc2VpbGzDqWVzIGV0IGxlIHN5c3TDqG1lIGRlIGNvb3Jkb25uw6llcyBkZSByw6lmw6lyZW5jZSB1dGlsaXPDqSBkb2l0IMOqdHJlIFdHUyA4NC4gQ2Ugc3lzdMOobWUgZGUgc3RvY2thZ2Ugb2ZmcmUgdW5lIHNjYWxhYmlsaXTDqSBob3Jpem9udGFsZSdcbiAgICAgICAgfSxcbiAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgIFBPU1RHSVM6ICdQb3N0R0lTJyxcbiAgICAgICAgICBFTEFTVElDOiAnRWxhc3RpY1NlYXJjaCdcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0sXG4gICAgdG9vbHRpcDoge1xuICAgICAgZGVmYXVsdDogJ1Rvb2x0aXAgcGFyIGTDqWZhdXQnLFxuICAgICAgYXR0cmlidXRlOiAnVG9vbHRpcCBhZmZpY2hhbnQgY2VydGFpbnMgYXR0cmlidXRzJyxcbiAgICAgIGNsdXN0ZXI6ICdUb29sdGlwIHBvdXIgbGVzIGNsdXN0ZXJzIChncmFwaGVzKScsXG4gICAgICBsaW5rOiAnVG9vbHRpcCBwb3VyIGxlcyBsaWVucyAoZ3JhcGhlcyknLFxuICAgICAgbm9uZTogJ1BhcyBkZSB0b29sdGlwJ1xuICAgIH1cbiAgfVxufTtcbiJdfQ==
@@ -106,11 +106,11 @@ export class PryMetadataEditorComponent extends SubscriptionnerDirective {
106
106
  }
107
107
  }
108
108
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PryMetadataEditorComponent, deps: [{ token: i1.Store }, { token: i2.FormBuilder }], target: i0.ɵɵFactoryTarget.Component }); }
109
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: PryMetadataEditorComponent, selector: "pry-metadata-editor", inputs: { isModification: "isModification", targetId: "targetId", type: "type", metadata: "metadata" }, outputs: { addMeta: "addMeta", removeMeta: "removeMeta" }, usesInheritance: true, ngImport: i0, template: "<pry-metadata-editor-css></pry-metadata-editor-css>\n<div *ngFor=\"let metadata of (_metadata$ | async) ?? []\">\n <div class=\"o-tabs__panel__content__actions\">\n <div class=\"o-tabs__panel__content__actions__text\">\n <span class=\"o-tabs__panel__content__actions__text__label\">{{ metaDefinition(metadata).name }} :</span>\n <span class=\"o-tabs__panel__content__actions__text__value\">{{ metadata.value }}</span>\n </div>\n\n <div class=\"o-tabs__panel__content__actions__buttons\">\n <ng-container *ngIf=\"!metaDefinition(metadata).readOnly\">\n <ng-container *pryAccess=\"{ module: 'admin', page: 'dataset', action: 'write' }\">\n <button type=\"button\" class=\"a-btn a-btn--icon-only\" aria-pressed=\"false\">\n <span class=\"u-visually-hidden\">{{ '@pry.action.edit' | i18n }} {{ metaDefinition(metadata).name }}</span>\n <pry-icon\n class=\"edit-icon\"\n iconSvg=\"edit\"\n [width]=\"15\"\n [height]=\"15\"\n (click)=\"editMetadata(metadata)\"\n ></pry-icon>\n </button>\n <button type=\"button\" class=\"a-btn a-btn--icon-only\" aria-pressed=\"false\">\n <span class=\"u-visually-hidden\">{{ '@pry.action.delete' | i18n }} {{ metaDefinition(metadata).name }}</span>\n <pry-icon\n class=\"delete-icon\"\n iconSvg=\"delete\"\n [width]=\"15\"\n [height]=\"15\"\n (click)=\"removeMetadata(metadata)\"\n ></pry-icon>\n </button>\n </ng-container>\n </ng-container>\n </div>\n </div>\n</div>\n\n<ng-container *pryAccess=\"{ module: 'admin', page: 'dataset', action: 'write' }\">\n <form class=\"o-form -border-top\" [formGroup]=\"form\" (ngSubmit)=\"addDatasetMetadata()\">\n <fieldset>\n <legend class=\"u-visually-hidden\">{{ '@pry.action.editProfil' | i18n }}</legend>\n\n <div class=\"m-form-label-field o-metadata-editor__container\">\n <label for=\"metadata\" id=\"metadata-label\" class=\"a-label\">Data</label>\n <pry-select\n id=\"metadata\"\n class=\"a-pry-select o-metadata-editor\"\n formControlName=\"metadata\"\n [items]=\"availableMetadata$ | async\"\n (ngModelChange)=\"onMetaChange($event)\"\n [isForm]=\"true\"\n [itemsAsOption]=\"true\"\n bindLabel=\"name\"\n [attr.aria-labelledby]=\"\n isSubmitted && form.get('metadata')?.invalid ? 'metadata-label metadata-error' : 'metadata-label'\n \"\n [attr.aria-invalid]=\"isSubmitted && form.get('metadata')?.invalid\"\n >\n </pry-select>\n <label\n *ngIf=\"isSubmitted && form.get('metadata')?.invalid\"\n id=\"metadata-error\"\n for=\"metadata\"\n class=\"a-label a-label--help -error\"\n >\n {{ '@pry.admin.required' | i18n }}\n </label>\n </div>\n\n <ng-container *ngIf=\"form.value.metadata\">\n <ng-container *ngIf=\"form.value['metadata']['type'] === 'DATE'; else inputList\">\n <div class=\"m-form-label-field o-metadata-editor__container\">\n <label id=\"form_date-label\" for=\"form_date\" class=\"a-label\">\n {{ '@pry.action.selectDate' | i18n }} *\n <span class=\"u-visually-hidden\">({{ '@pry.admin.required' | i18n }})</span>\n </label>\n <input\n id=\"form_date\"\n type=\"date\"\n class=\"a-form-field\"\n formControlName=\"value\"\n [attr.aria-labelledby]=\"\n isSubmitted && form.get('value')?.invalid ? 'form-date-label form-date-error' : 'form-date-label'\n \"\n [attr.aria-invalid]=\"isSubmitted && form.get('value')?.invalid\"\n required\n />\n <label\n *ngIf=\"isSubmitted && form.get('value')?.invalid\"\n id=\"form_date-error\"\n for=\"form_date\"\n class=\"a-label a-label--help -error\"\n >\n {{ '@pry.admin.required' | i18n }}\n </label>\n </div>\n </ng-container>\n\n <ng-template #inputList>\n <ng-container *ngIf=\"form.value['metadata']['type'] === 'LIST'; else inputText\">\n <div class=\"m-form-label-field o-metadata-editor__container\">\n <label id=\"list-label\" class=\"a-label\" for=\"list\">{{ '@pry.action.choiceInList' | i18n }}</label>\n <pry-select\n id=\"list\"\n class=\"a-pry-select o-metadata-editor\"\n formControlName=\"value\"\n [items]=\"form.value['metadata']['allowedValues']\"\n [isForm]=\"true\"\n aria-labelledby=\"list-label\"\n ></pry-select>\n </div>\n </ng-container>\n </ng-template>\n\n <ng-template #inputText>\n <div class=\"m-form-label-field\">\n <label id=\"text-label\" class=\"a-label\" for=\"text\">\n {{ '@pry.action.text' | i18n }} *\n <span class=\"u-visually-hidden\">({{ '@pry.admin.required' | i18n }})</span>\n </label>\n <input\n id=\"text\"\n type=\"text\"\n class=\"a-form-field\"\n formControlName=\"value\"\n [attr.aria-labelledby]=\"\n isSubmitted && form.get('value')?.invalid ? 'text-label text-error' : 'text-label'\n \"\n [attr.aria-invalid]=\"isSubmitted && form.get('value')?.invalid\"\n required\n />\n <label\n *ngIf=\"isSubmitted && form.get('value')?.invalid\"\n id=\"test-error\"\n for=\"text\"\n class=\"a-label a-label--help -error\"\n >\n <span *ngIf=\"form.get('value')?.hasError('required')\">{{ '@pry.admin.required' | i18n }}</span>\n <ng-container *ngIf=\"form.get('value')?.hasError('pattern')\">\n <span *ngIf=\"form.value['metadata']['type'] === 'DOUBLE'\">\n {{ '@pry.admin.environment.formatDouble' | i18n }}\n </span>\n <span *ngIf=\"form.value['metadata']['type'] === 'INTEGER'\">\n {{ '@pry.admin.environment.formatInt' | i18n }}\n </span>\n </ng-container>\n </label>\n </div>\n </ng-template>\n </ng-container>\n </fieldset>\n\n <div class=\"m-btn-group -end\">\n <button type=\"submit\" class=\"a-btn a-btn--primary\">\n {{ (isModification ? '@pry.action.editMetadata' : '@pry.action.addMetadata') | i18n }}\n </button>\n </div>\n </form>\n</ng-container>\n", dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.PryAccessDirective, selector: "[pryAccess]", inputs: ["pryAccess"] }, { kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.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: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.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: i4.PryIconComponent, selector: "pry-icon", inputs: ["color", "iconSvg", "animation", "iconImage", "alt", "width", "height", "classes"] }, { kind: "component", type: i5.PryMetadataEditorCssComponent, selector: "pry-metadata-editor-css" }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i4.I18nPipe, name: "i18n" }] }); }
109
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: PryMetadataEditorComponent, selector: "pry-metadata-editor", inputs: { isModification: "isModification", targetId: "targetId", type: "type", metadata: "metadata" }, outputs: { addMeta: "addMeta", removeMeta: "removeMeta" }, usesInheritance: true, ngImport: i0, template: "<pry-metadata-editor-css></pry-metadata-editor-css>\n<div *ngFor=\"let metadata of (_metadata$ | async) ?? []\">\n <div class=\"o-tabs__panel__content__actions\">\n <div class=\"o-tabs__panel__content__actions__text\">\n <span class=\"o-tabs__panel__content__actions__text__label\">{{ metaDefinition(metadata).name }} :</span>\n <span class=\"o-tabs__panel__content__actions__text__value\">{{ metadata.value }}</span>\n </div>\n\n <div class=\"o-tabs__panel__content__actions__buttons\">\n <ng-container *ngIf=\"!metaDefinition(metadata).readOnly\">\n <ng-container *pryAccess=\"{ module: 'admin', page: 'dataset', action: 'write' }\">\n <button type=\"button\" class=\"a-btn a-btn--icon-only\" aria-pressed=\"false\">\n <span class=\"u-visually-hidden\">{{ '@pry.action.edit' | i18n }} {{ metaDefinition(metadata).name }}</span>\n <pry-icon\n class=\"edit-icon\"\n iconSvg=\"edit\"\n [width]=\"15\"\n [height]=\"15\"\n (click)=\"editMetadata(metadata)\"\n ></pry-icon>\n </button>\n <button type=\"button\" class=\"a-btn a-btn--icon-only\" aria-pressed=\"false\">\n <span class=\"u-visually-hidden\">{{ '@pry.action.delete' | i18n }} {{ metaDefinition(metadata).name }}</span>\n <pry-icon\n class=\"delete-icon\"\n iconSvg=\"delete\"\n [width]=\"15\"\n [height]=\"15\"\n (click)=\"removeMetadata(metadata)\"\n ></pry-icon>\n </button>\n </ng-container>\n </ng-container>\n </div>\n </div>\n</div>\n\n<ng-container *pryAccess=\"{ module: 'admin', page: 'dataset', action: 'write' }\">\n <form class=\"o-form -border-top\" [formGroup]=\"form\" (ngSubmit)=\"addDatasetMetadata()\">\n <fieldset>\n <legend class=\"u-visually-hidden\">{{ '@pry.action.editProfil' | i18n }}</legend>\n\n <div class=\"m-form-label-field o-metadata-editor__container\">\n <label for=\"metadata\" id=\"metadata-label\" class=\"a-label\">Data</label>\n <pry-select\n id=\"metadata\"\n class=\"o-metadata-editor\"\n formControlName=\"metadata\"\n [items]=\"availableMetadata$ | async\"\n (ngModelChange)=\"onMetaChange($event)\"\n [isForm]=\"true\"\n bindLabel=\"name\"\n [attr.aria-labelledby]=\"\n isSubmitted && form.get('metadata')?.invalid ? 'metadata-label metadata-error' : 'metadata-label'\n \"\n [attr.aria-invalid]=\"isSubmitted && form.get('metadata')?.invalid\"\n >\n </pry-select>\n <label\n *ngIf=\"isSubmitted && form.get('metadata')?.invalid\"\n id=\"metadata-error\"\n for=\"metadata\"\n class=\"a-label a-label--help -error\"\n >\n {{ '@pry.admin.required' | i18n }}\n </label>\n </div>\n\n <ng-container *ngIf=\"form.value.metadata\">\n <ng-container *ngIf=\"form.value['metadata']['type'] === 'DATE'; else inputList\">\n <div class=\"m-form-label-field o-metadata-editor__container\">\n <label id=\"form_date-label\" for=\"form_date\" class=\"a-label\">\n {{ '@pry.action.selectDate' | i18n }} *\n <span class=\"u-visually-hidden\">({{ '@pry.admin.required' | i18n }})</span>\n </label>\n <input\n id=\"form_date\"\n type=\"date\"\n class=\"a-form-field\"\n formControlName=\"value\"\n [attr.aria-labelledby]=\"\n isSubmitted && form.get('value')?.invalid ? 'form-date-label form-date-error' : 'form-date-label'\n \"\n [attr.aria-invalid]=\"isSubmitted && form.get('value')?.invalid\"\n required\n />\n <label\n *ngIf=\"isSubmitted && form.get('value')?.invalid\"\n id=\"form_date-error\"\n for=\"form_date\"\n class=\"a-label a-label--help -error\"\n >\n {{ '@pry.admin.required' | i18n }}\n </label>\n </div>\n </ng-container>\n\n <ng-template #inputList>\n <ng-container *ngIf=\"form.value['metadata']['type'] === 'LIST'; else inputText\">\n <div class=\"m-form-label-field o-metadata-editor__container\">\n <label id=\"list-label\" class=\"a-label\" for=\"list\">{{ '@pry.action.choiceInList' | i18n }}</label>\n <pry-select\n id=\"list\"\n class=\"o-metadata-editor\"\n formControlName=\"value\"\n [items]=\"form.value['metadata']['allowedValues']\"\n [isForm]=\"true\"\n aria-labelledby=\"list-label\"\n ></pry-select>\n </div>\n </ng-container>\n </ng-template>\n\n <ng-template #inputText>\n <div class=\"m-form-label-field\">\n <label id=\"text-label\" class=\"a-label\" for=\"text\">\n {{ '@pry.action.text' | i18n }} *\n <span class=\"u-visually-hidden\">({{ '@pry.admin.required' | i18n }})</span>\n </label>\n <input\n id=\"text\"\n type=\"text\"\n class=\"a-form-field\"\n formControlName=\"value\"\n [attr.aria-labelledby]=\"\n isSubmitted && form.get('value')?.invalid ? 'text-label text-error' : 'text-label'\n \"\n [attr.aria-invalid]=\"isSubmitted && form.get('value')?.invalid\"\n required\n />\n <label\n *ngIf=\"isSubmitted && form.get('value')?.invalid\"\n id=\"test-error\"\n for=\"text\"\n class=\"a-label a-label--help -error\"\n >\n <span *ngIf=\"form.get('value')?.hasError('required')\">{{ '@pry.admin.required' | i18n }}</span>\n <ng-container *ngIf=\"form.get('value')?.hasError('pattern')\">\n <span *ngIf=\"form.value['metadata']['type'] === 'DOUBLE'\">\n {{ '@pry.admin.environment.formatDouble' | i18n }}\n </span>\n <span *ngIf=\"form.value['metadata']['type'] === 'INTEGER'\">\n {{ '@pry.admin.environment.formatInt' | i18n }}\n </span>\n </ng-container>\n </label>\n </div>\n </ng-template>\n </ng-container>\n </fieldset>\n\n <div class=\"m-btn-group -end\">\n <button type=\"submit\" class=\"a-btn a-btn--primary\">\n {{ (isModification ? '@pry.action.editMetadata' : '@pry.action.addMetadata') | i18n }}\n </button>\n </div>\n </form>\n</ng-container>\n", dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.PryAccessDirective, selector: "[pryAccess]", inputs: ["pryAccess"] }, { kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.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: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.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: i4.PryIconComponent, selector: "pry-icon", inputs: ["color", "iconSvg", "animation", "iconImage", "alt", "width", "height", "classes"] }, { kind: "component", type: i5.PryMetadataEditorCssComponent, selector: "pry-metadata-editor-css" }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i4.I18nPipe, name: "i18n" }] }); }
110
110
  }
111
111
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PryMetadataEditorComponent, decorators: [{
112
112
  type: Component,
113
- args: [{ selector: 'pry-metadata-editor', template: "<pry-metadata-editor-css></pry-metadata-editor-css>\n<div *ngFor=\"let metadata of (_metadata$ | async) ?? []\">\n <div class=\"o-tabs__panel__content__actions\">\n <div class=\"o-tabs__panel__content__actions__text\">\n <span class=\"o-tabs__panel__content__actions__text__label\">{{ metaDefinition(metadata).name }} :</span>\n <span class=\"o-tabs__panel__content__actions__text__value\">{{ metadata.value }}</span>\n </div>\n\n <div class=\"o-tabs__panel__content__actions__buttons\">\n <ng-container *ngIf=\"!metaDefinition(metadata).readOnly\">\n <ng-container *pryAccess=\"{ module: 'admin', page: 'dataset', action: 'write' }\">\n <button type=\"button\" class=\"a-btn a-btn--icon-only\" aria-pressed=\"false\">\n <span class=\"u-visually-hidden\">{{ '@pry.action.edit' | i18n }} {{ metaDefinition(metadata).name }}</span>\n <pry-icon\n class=\"edit-icon\"\n iconSvg=\"edit\"\n [width]=\"15\"\n [height]=\"15\"\n (click)=\"editMetadata(metadata)\"\n ></pry-icon>\n </button>\n <button type=\"button\" class=\"a-btn a-btn--icon-only\" aria-pressed=\"false\">\n <span class=\"u-visually-hidden\">{{ '@pry.action.delete' | i18n }} {{ metaDefinition(metadata).name }}</span>\n <pry-icon\n class=\"delete-icon\"\n iconSvg=\"delete\"\n [width]=\"15\"\n [height]=\"15\"\n (click)=\"removeMetadata(metadata)\"\n ></pry-icon>\n </button>\n </ng-container>\n </ng-container>\n </div>\n </div>\n</div>\n\n<ng-container *pryAccess=\"{ module: 'admin', page: 'dataset', action: 'write' }\">\n <form class=\"o-form -border-top\" [formGroup]=\"form\" (ngSubmit)=\"addDatasetMetadata()\">\n <fieldset>\n <legend class=\"u-visually-hidden\">{{ '@pry.action.editProfil' | i18n }}</legend>\n\n <div class=\"m-form-label-field o-metadata-editor__container\">\n <label for=\"metadata\" id=\"metadata-label\" class=\"a-label\">Data</label>\n <pry-select\n id=\"metadata\"\n class=\"a-pry-select o-metadata-editor\"\n formControlName=\"metadata\"\n [items]=\"availableMetadata$ | async\"\n (ngModelChange)=\"onMetaChange($event)\"\n [isForm]=\"true\"\n [itemsAsOption]=\"true\"\n bindLabel=\"name\"\n [attr.aria-labelledby]=\"\n isSubmitted && form.get('metadata')?.invalid ? 'metadata-label metadata-error' : 'metadata-label'\n \"\n [attr.aria-invalid]=\"isSubmitted && form.get('metadata')?.invalid\"\n >\n </pry-select>\n <label\n *ngIf=\"isSubmitted && form.get('metadata')?.invalid\"\n id=\"metadata-error\"\n for=\"metadata\"\n class=\"a-label a-label--help -error\"\n >\n {{ '@pry.admin.required' | i18n }}\n </label>\n </div>\n\n <ng-container *ngIf=\"form.value.metadata\">\n <ng-container *ngIf=\"form.value['metadata']['type'] === 'DATE'; else inputList\">\n <div class=\"m-form-label-field o-metadata-editor__container\">\n <label id=\"form_date-label\" for=\"form_date\" class=\"a-label\">\n {{ '@pry.action.selectDate' | i18n }} *\n <span class=\"u-visually-hidden\">({{ '@pry.admin.required' | i18n }})</span>\n </label>\n <input\n id=\"form_date\"\n type=\"date\"\n class=\"a-form-field\"\n formControlName=\"value\"\n [attr.aria-labelledby]=\"\n isSubmitted && form.get('value')?.invalid ? 'form-date-label form-date-error' : 'form-date-label'\n \"\n [attr.aria-invalid]=\"isSubmitted && form.get('value')?.invalid\"\n required\n />\n <label\n *ngIf=\"isSubmitted && form.get('value')?.invalid\"\n id=\"form_date-error\"\n for=\"form_date\"\n class=\"a-label a-label--help -error\"\n >\n {{ '@pry.admin.required' | i18n }}\n </label>\n </div>\n </ng-container>\n\n <ng-template #inputList>\n <ng-container *ngIf=\"form.value['metadata']['type'] === 'LIST'; else inputText\">\n <div class=\"m-form-label-field o-metadata-editor__container\">\n <label id=\"list-label\" class=\"a-label\" for=\"list\">{{ '@pry.action.choiceInList' | i18n }}</label>\n <pry-select\n id=\"list\"\n class=\"a-pry-select o-metadata-editor\"\n formControlName=\"value\"\n [items]=\"form.value['metadata']['allowedValues']\"\n [isForm]=\"true\"\n aria-labelledby=\"list-label\"\n ></pry-select>\n </div>\n </ng-container>\n </ng-template>\n\n <ng-template #inputText>\n <div class=\"m-form-label-field\">\n <label id=\"text-label\" class=\"a-label\" for=\"text\">\n {{ '@pry.action.text' | i18n }} *\n <span class=\"u-visually-hidden\">({{ '@pry.admin.required' | i18n }})</span>\n </label>\n <input\n id=\"text\"\n type=\"text\"\n class=\"a-form-field\"\n formControlName=\"value\"\n [attr.aria-labelledby]=\"\n isSubmitted && form.get('value')?.invalid ? 'text-label text-error' : 'text-label'\n \"\n [attr.aria-invalid]=\"isSubmitted && form.get('value')?.invalid\"\n required\n />\n <label\n *ngIf=\"isSubmitted && form.get('value')?.invalid\"\n id=\"test-error\"\n for=\"text\"\n class=\"a-label a-label--help -error\"\n >\n <span *ngIf=\"form.get('value')?.hasError('required')\">{{ '@pry.admin.required' | i18n }}</span>\n <ng-container *ngIf=\"form.get('value')?.hasError('pattern')\">\n <span *ngIf=\"form.value['metadata']['type'] === 'DOUBLE'\">\n {{ '@pry.admin.environment.formatDouble' | i18n }}\n </span>\n <span *ngIf=\"form.value['metadata']['type'] === 'INTEGER'\">\n {{ '@pry.admin.environment.formatInt' | i18n }}\n </span>\n </ng-container>\n </label>\n </div>\n </ng-template>\n </ng-container>\n </fieldset>\n\n <div class=\"m-btn-group -end\">\n <button type=\"submit\" class=\"a-btn a-btn--primary\">\n {{ (isModification ? '@pry.action.editMetadata' : '@pry.action.addMetadata') | i18n }}\n </button>\n </div>\n </form>\n</ng-container>\n" }]
113
+ args: [{ selector: 'pry-metadata-editor', template: "<pry-metadata-editor-css></pry-metadata-editor-css>\n<div *ngFor=\"let metadata of (_metadata$ | async) ?? []\">\n <div class=\"o-tabs__panel__content__actions\">\n <div class=\"o-tabs__panel__content__actions__text\">\n <span class=\"o-tabs__panel__content__actions__text__label\">{{ metaDefinition(metadata).name }} :</span>\n <span class=\"o-tabs__panel__content__actions__text__value\">{{ metadata.value }}</span>\n </div>\n\n <div class=\"o-tabs__panel__content__actions__buttons\">\n <ng-container *ngIf=\"!metaDefinition(metadata).readOnly\">\n <ng-container *pryAccess=\"{ module: 'admin', page: 'dataset', action: 'write' }\">\n <button type=\"button\" class=\"a-btn a-btn--icon-only\" aria-pressed=\"false\">\n <span class=\"u-visually-hidden\">{{ '@pry.action.edit' | i18n }} {{ metaDefinition(metadata).name }}</span>\n <pry-icon\n class=\"edit-icon\"\n iconSvg=\"edit\"\n [width]=\"15\"\n [height]=\"15\"\n (click)=\"editMetadata(metadata)\"\n ></pry-icon>\n </button>\n <button type=\"button\" class=\"a-btn a-btn--icon-only\" aria-pressed=\"false\">\n <span class=\"u-visually-hidden\">{{ '@pry.action.delete' | i18n }} {{ metaDefinition(metadata).name }}</span>\n <pry-icon\n class=\"delete-icon\"\n iconSvg=\"delete\"\n [width]=\"15\"\n [height]=\"15\"\n (click)=\"removeMetadata(metadata)\"\n ></pry-icon>\n </button>\n </ng-container>\n </ng-container>\n </div>\n </div>\n</div>\n\n<ng-container *pryAccess=\"{ module: 'admin', page: 'dataset', action: 'write' }\">\n <form class=\"o-form -border-top\" [formGroup]=\"form\" (ngSubmit)=\"addDatasetMetadata()\">\n <fieldset>\n <legend class=\"u-visually-hidden\">{{ '@pry.action.editProfil' | i18n }}</legend>\n\n <div class=\"m-form-label-field o-metadata-editor__container\">\n <label for=\"metadata\" id=\"metadata-label\" class=\"a-label\">Data</label>\n <pry-select\n id=\"metadata\"\n class=\"o-metadata-editor\"\n formControlName=\"metadata\"\n [items]=\"availableMetadata$ | async\"\n (ngModelChange)=\"onMetaChange($event)\"\n [isForm]=\"true\"\n bindLabel=\"name\"\n [attr.aria-labelledby]=\"\n isSubmitted && form.get('metadata')?.invalid ? 'metadata-label metadata-error' : 'metadata-label'\n \"\n [attr.aria-invalid]=\"isSubmitted && form.get('metadata')?.invalid\"\n >\n </pry-select>\n <label\n *ngIf=\"isSubmitted && form.get('metadata')?.invalid\"\n id=\"metadata-error\"\n for=\"metadata\"\n class=\"a-label a-label--help -error\"\n >\n {{ '@pry.admin.required' | i18n }}\n </label>\n </div>\n\n <ng-container *ngIf=\"form.value.metadata\">\n <ng-container *ngIf=\"form.value['metadata']['type'] === 'DATE'; else inputList\">\n <div class=\"m-form-label-field o-metadata-editor__container\">\n <label id=\"form_date-label\" for=\"form_date\" class=\"a-label\">\n {{ '@pry.action.selectDate' | i18n }} *\n <span class=\"u-visually-hidden\">({{ '@pry.admin.required' | i18n }})</span>\n </label>\n <input\n id=\"form_date\"\n type=\"date\"\n class=\"a-form-field\"\n formControlName=\"value\"\n [attr.aria-labelledby]=\"\n isSubmitted && form.get('value')?.invalid ? 'form-date-label form-date-error' : 'form-date-label'\n \"\n [attr.aria-invalid]=\"isSubmitted && form.get('value')?.invalid\"\n required\n />\n <label\n *ngIf=\"isSubmitted && form.get('value')?.invalid\"\n id=\"form_date-error\"\n for=\"form_date\"\n class=\"a-label a-label--help -error\"\n >\n {{ '@pry.admin.required' | i18n }}\n </label>\n </div>\n </ng-container>\n\n <ng-template #inputList>\n <ng-container *ngIf=\"form.value['metadata']['type'] === 'LIST'; else inputText\">\n <div class=\"m-form-label-field o-metadata-editor__container\">\n <label id=\"list-label\" class=\"a-label\" for=\"list\">{{ '@pry.action.choiceInList' | i18n }}</label>\n <pry-select\n id=\"list\"\n class=\"o-metadata-editor\"\n formControlName=\"value\"\n [items]=\"form.value['metadata']['allowedValues']\"\n [isForm]=\"true\"\n aria-labelledby=\"list-label\"\n ></pry-select>\n </div>\n </ng-container>\n </ng-template>\n\n <ng-template #inputText>\n <div class=\"m-form-label-field\">\n <label id=\"text-label\" class=\"a-label\" for=\"text\">\n {{ '@pry.action.text' | i18n }} *\n <span class=\"u-visually-hidden\">({{ '@pry.admin.required' | i18n }})</span>\n </label>\n <input\n id=\"text\"\n type=\"text\"\n class=\"a-form-field\"\n formControlName=\"value\"\n [attr.aria-labelledby]=\"\n isSubmitted && form.get('value')?.invalid ? 'text-label text-error' : 'text-label'\n \"\n [attr.aria-invalid]=\"isSubmitted && form.get('value')?.invalid\"\n required\n />\n <label\n *ngIf=\"isSubmitted && form.get('value')?.invalid\"\n id=\"test-error\"\n for=\"text\"\n class=\"a-label a-label--help -error\"\n >\n <span *ngIf=\"form.get('value')?.hasError('required')\">{{ '@pry.admin.required' | i18n }}</span>\n <ng-container *ngIf=\"form.get('value')?.hasError('pattern')\">\n <span *ngIf=\"form.value['metadata']['type'] === 'DOUBLE'\">\n {{ '@pry.admin.environment.formatDouble' | i18n }}\n </span>\n <span *ngIf=\"form.value['metadata']['type'] === 'INTEGER'\">\n {{ '@pry.admin.environment.formatInt' | i18n }}\n </span>\n </ng-container>\n </label>\n </div>\n </ng-template>\n </ng-container>\n </fieldset>\n\n <div class=\"m-btn-group -end\">\n <button type=\"submit\" class=\"a-btn a-btn--primary\">\n {{ (isModification ? '@pry.action.editMetadata' : '@pry.action.addMetadata') | i18n }}\n </button>\n </div>\n </form>\n</ng-container>\n" }]
114
114
  }], ctorParameters: function () { return [{ type: i1.Store }, { type: i2.FormBuilder }]; }, propDecorators: { isModification: [{
115
115
  type: Input
116
116
  }], addMeta: [{
@@ -124,4 +124,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
124
124
  }], metadata: [{
125
125
  type: Input
126
126
  }] } });
127
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWV0YWRhdGEtZWRpdG9yLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Byb3ZvbHkvZGFzaGJvYXJkL2NvbXBvbmVudHMvbWV0YWRhdGEtZWRpdG9yL21ldGFkYXRhLWVkaXRvci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcm92b2x5L2Rhc2hib2FyZC9jb21wb25lbnRzL21ldGFkYXRhLWVkaXRvci9tZXRhZGF0YS1lZGl0b3IuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2RSxPQUFPLEVBQTBCLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXBFLE9BQU8sRUFBMEMsd0JBQXdCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUN0RyxPQUFPLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxHQUFHLEVBQWMsTUFBTSxNQUFNLENBQUM7QUFDdkUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzFELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDOzs7Ozs7O0FBSTlELE1BQU0sQ0FBQyxNQUFNLHNCQUFzQixHQUFHLGVBQWUsQ0FBQztBQUN0RCxNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRyx5QkFBeUIsQ0FBQztBQU0vRCxNQUFNLE9BQU8sMEJBQTJCLFNBQVEsd0JBQXdCO0lBYXRFLElBQWEsSUFBSSxDQUFDLElBQXFCO1FBQ3JDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3pCLENBQUM7SUFFRCxJQUFhLFFBQVEsQ0FBQyxRQUEwQztRQUM5RCxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxR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LHFCQUFxQjtzSEFPdEIsY0FBYztzQkFBdEIsS0FBSztnQkFJSSxPQUFPO3NCQUFoQixNQUFNO2dCQUNHLFVBQVU7c0JBQW5CLE1BQU07Z0JBRUUsUUFBUTtzQkFBaEIsS0FBSztnQkFFTyxJQUFJO3NCQUFoQixLQUFLO2dCQUlPLFFBQVE7c0JBQXBCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUJ1aWxkZXIsIEZvcm1Hcm91cCwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFN0b3JlIH0gZnJvbSAnQG5ncngvc3RvcmUnO1xuaW1wb3J0IHsgSU1ldGFkYXRhLCBNZXRhZGF0YVVzZXIsIE1ldGFkYXRhVmFsdWUsIFN1YnNjcmlwdGlvbm5lckRpcmVjdGl2ZSB9IGZyb20gJ0Bwcm92b2x5L2Rhc2hib2FyZCc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGNvbWJpbmVMYXRlc3QsIG1hcCwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgTWV0YWRhdGFBY3Rpb25zIH0gZnJvbSAnLi9zdG9yZS9tZXRhZGF0YS5hY3Rpb24nO1xuaW1wb3J0IHsgTWV0YWRhdGFTZWxlY3RvcnMgfSBmcm9tICcuL3N0b3JlL21ldGFkYXRhLnNlbGVjdG9yJztcblxuZXhwb3J0IHR5cGUgTWV0YUV2ZW50VHlwZSA9IHsgaWQ6IHN0cmluZzsgbWV0YWRhdGFJZDogc3RyaW5nOyB2YWx1ZT86IHN0cmluZyB9O1xuXG5leHBvcnQgY29uc3QgSU5URUdFUl9SRUdFWFBfUEFUVEVSTiA9ICdeWystXT9bMC05XSokJztcbmV4cG9ydCBjb25zdCBET1VCTEVfUkVHRVhQX1BBVFRFUk4gPSAnWystXT8oWzAtOV0qWy5dKT9bMC05XSsnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdwcnktbWV0YWRhdGEtZWRpdG9yJyxcbiAgdGVtcGxhdGVVcmw6ICdtZXRhZGF0YS1lZGl0b3IuY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIFByeU1ldGFkYXRhRWRpdG9yQ29tcG9uZW50IGV4dGVuZHMgU3Vic2NyaXB0aW9ubmVyRGlyZWN0aXZlIHtcbiAgX21ldGFkYXRhJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8KE1ldGFkYXRhVmFsdWUgfCBNZXRhZGF0YVVzZXIpW10+KFtdKTtcbiAgZm9ybTogRm9ybUdyb3VwO1xuICBpc1N1Ym1pdHRlZCA9IGZhbHNlO1xuICBASW5wdXQoKSBpc01vZGlmaWNhdGlvbiA9IGZhbHNlO1xuICBtZXRhZGF0YURlZnMkOiBPYnNlcnZhYmxlPElNZXRhZGF0YVtdPjtcbiAgYXZhaWxhYmxlTWV0YWRhdGEkOiBPYnNlcnZhYmxlPElNZXRhZGF0YVtdPjtcbiAgX3R5cGUkID0gbmV3IEJlaGF2aW9yU3ViamVjdDwnbWV0YScgfCAndXNlcic+KCdtZXRhJyk7XG4gIEBPdXRwdXQoKSBhZGRNZXRhID0gbmV3IEV2ZW50RW1pdHRlcjxNZXRhRXZlbnRUeXBlPigpO1xuICBAT3V0cHV0KCkgcmVtb3ZlTWV0YSA9IG5ldyBFdmVudEVtaXR0ZXI8TWV0YUV2ZW50VHlwZT4oKTtcbiAgdXNlclByb2ZpbGVEZWZzJDogT2JzZXJ2YWJsZTxBcnJheTxJTWV0YWRhdGE+IHwgdW5kZWZpbmVkPjtcbiAgQElucHV0KCkgdGFyZ2V0SWQgPSAnJztcblxuICBASW5wdXQoKSBzZXQgdHlwZSh0eXBlOiAnbWV0YScgfCAndXNlcicpIHtcbiAgICB0aGlzLl90eXBlJC5uZXh0KHR5cGUpO1xuICB9XG5cbiAgQElucHV0KCkgc2V0IG1ldGFkYXRhKG1ldGFkYXRhOiBNZXRhZGF0YVZhbHVlW10gfCBNZXRhZGF0YVVzZXJbXSkge1xuICAgIHRoaXMuX21ldGFkYXRhJC5uZXh0KG1ldGFkYXRhKTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgc3RvcmU6IFN0b3JlLCBwcml2YXRlIGZvcm1CdWlsZGVyOiBGb3JtQnVpbGRlcikge1xuICAgIHN1cGVyKCk7XG5cbiAgICB0aGlzLmZvcm0gPSB0aGlzLmZvcm1CdWlsZGVyLmdyb3VwKHtcbiAgICAgIG1ldGFkYXRhOiBbe30sIFtWYWxpZGF0b3JzLnJlcXVpcmVkXV0sXG4gICAgICB2YWx1ZTogWycnLCBbVmFsaWRhdG9ycy5yZXF1aXJlZCwgVmFsaWRhdG9ycy5wYXR0ZXJuKElOVEVHRVJfUkVHRVhQX1BBVFRFUk4pXV1cbiAgICB9KTtcblxuICAgIHRoaXMubWV0YWRhdGFEZWZzJCA9IHRoaXMuc3RvcmUuc2VsZWN0KE1ldGFkYXRhU2VsZWN0b3JzLm1ldGFkYXRhKTtcbiAgICB0aGlzLnVzZXJQcm9maWxlRGVmcyQgPSB0aGlzLnN0b3JlLnNlbGVjdChNZXRhZGF0YVNlbGVjdG9ycy51c2VyUHJvZmlsZSk7XG4gICAgdGhpcy5hdmFpbGFibGVNZXRhZGF0YSQgPSBjb21iaW5lTGF0ZXN0KFtcbiAgICAgIHRoaXMuX3R5cGUkLFxuICAgICAgdGhpcy5fbWV0YWRhdGEkLFxuICAgICAgdGhpcy5tZXRhZGF0YURlZnMkLFxuICAgICAgdGhpcy51c2VyUHJvZmlsZURlZnMkXG4gICAgXSkucGlwZShcbiAgICAgIG1hcCgoW3R5cGUsIG1ldGFkYXRhLCBtZXRhRGVmcywgdXNlclByb2ZpbGVEZWZzXSkgPT4ge1xuICAgICAgICBpZiAodHlwZSA9PT0gJ21ldGEnKSB7XG4gICAgICAgICAgbGV0IGRhdGFzZXRNZXRhZGF0YUlkcyA9IG1ldGFkYXRhPy5tYXAoKHUpID0+ICh1IGFzIE1ldGFkYXRhVmFsdWUpLm1ldGFkYXRhRGVmLmlkKTtcbiAgICAgICAgICByZXR1cm4gbWV0YURlZnMuZmlsdGVyKChtZXRhKSA9PiAhZGF0YXNldE1ldGFkYXRhSWRzPy5pbmNsdWRlcyhtZXRhLmlkKSAmJiAhbWV0YS5yZWFkT25seSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgbGV0IHVzZXJQcm9maWxlSWRzID0gbWV0YWRhdGE/Lm1hcCgodSkgPT4gKHUgYXMgTWV0YWRhdGFVc2VyKS51c2VyUHJvZmlsZS5pZCk7XG4gICAgICAgICAgcmV0dXJuICh1c2VyUHJvZmlsZURlZnMgPz8gW10pLmZpbHRlcigobWV0YSkgPT4gIXVzZXJQcm9maWxlSWRzPy5pbmNsdWRlcyhtZXRhLmlkKSk7XG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgKTtcblxuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5hZGQoXG4gICAgICB0aGlzLmF2YWlsYWJsZU1ldGFkYXRhJC5zdWJzY3JpYmUoKG1ldGEpID0+IHtcbiAgICAgICAgdGhpcy5mb3JtLnBhdGNoVmFsdWUoe1xuICAgICAgICAgIG1ldGFkYXRhOiBtZXRhWzBdXG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLm9uTWV0YUNoYW5nZShtZXRhWzBdKTtcbiAgICAgICAgdGhpcy5mb3JtLnBhdGNoVmFsdWUoeyB2YWx1ZTogJycgfSk7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICBvbk1ldGFDaGFuZ2UobWV0YWRhdGE6IElNZXRhZGF0YSkge1xuICAgIGlmIChtZXRhZGF0YSkge1xuICAgICAgaWYgKG1ldGFkYXRhLnR5cGUgPT09ICdJTlRFR0VSJykge1xuICAgICAgICB0aGlzLmZvcm0uY29udHJvbHNbJ3ZhbHVlJ10uc2V0VmFsaWRhdG9ycyhbVmFsaWRhdG9ycy5yZXF1aXJlZCwgVmFsaWRhdG9ycy5wYXR0ZXJuKElOVEVHRVJfUkVHRVhQX1BBVFRFUk4pXSk7XG4gICAgICB9IGVsc2UgaWYgKG1ldGFkYXRhLnR5cGUgPT09ICdET1VCTEUnKSB7XG4gICAgICAgIHRoaXMuZm9ybS5jb250cm9sc1sndmFsdWUnXS5zZXRWYWxpZGF0b3JzKFtWYWxpZGF0b3JzLnJlcXVpcmVkLCBWYWxpZGF0b3JzLnBhdHRlcm4oRE9VQkxFX1JFR0VYUF9QQVRURVJOKV0pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5mb3JtLmNvbnRyb2xzWyd2YWx1ZSddLnNldFZhbGlkYXRvcnMoW1ZhbGlkYXRvcnMucmVxdWlyZWRdKTtcbiAgICAgIH1cbiAgICAgIHRoaXMuaXNNb2RpZmljYXRpb24gPSB0cnVlO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmlzTW9kaWZpY2F0aW9uID0gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgZWRpdE1ldGFkYXRhKGN1cnJlbnRNZXRhZGF0YTogTWV0YWRhdGFWYWx1ZSB8IE1ldGFkYXRhVXNlcikge1xuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goTWV0YWRhdGFBY3Rpb25zLmlzRWRpdGFibGUoeyBlZGl0YWJsZTogdHJ1ZSB9KSk7XG4gICAgbGV0IHZhbHVlID0gY3VycmVudE1ldGFkYXRhLnZhbHVlO1xuICAgIGxldCBkYXRhc2V0TWV0YWRhdGFEZWYgPSB0aGlzLm1ldGFEZWZpbml0aW9uKGN1cnJlbnRNZXRhZGF0YSk7XG5cbiAgICB0aGlzLmZvcm0ucGF0Y2hWYWx1ZSh7XG4gICAgICBtZXRhZGF0YTogZGF0YXNldE1ldGFkYXRhRGVmLFxuICAgICAgdmFsdWU6IHZhbHVlXG4gICAgfSk7XG4gICAgdGhpcy5vbk1ldGFDaGFuZ2UoZGF0YXNldE1ldGFkYXRhRGVmKTtcbiAgfVxuXG4gIG1ldGFEZWZpbml0aW9uKG1ldGFkYXRhOiBNZXRhZGF0YVVzZXIgfCBNZXRhZGF0YVZhbHVlKSB7XG4gICAgcmV0dXJuIHRoaXMuX3R5cGUkLmdldFZhbHVlKCkgPT09ICd1c2VyJ1xuICAgICAgPyAobWV0YWRhdGEgYXMgTWV0YWRhdGFVc2VyKS51c2VyUHJvZmlsZVxuICAgICAgOiAobWV0YWRhdGEgYXMgTWV0YWRhdGFWYWx1ZSkubWV0YWRhdGFEZWY7XG4gIH1cblxuICByZW1vdmVNZXRhZGF0YShtZXRhZGF0YTogTWV0YWRhdGFVc2VyIHwgTWV0YWRhdGFWYWx1ZSkge1xuICAgIHRoaXMucmVtb3ZlTWV0YS5lbWl0KHsgaWQ6IHRoaXMudGFyZ2V0SWQsIG1ldGFkYXRhSWQ6IHRoaXMubWV0YURlZmluaXRpb24obWV0YWRhdGEpLmlkIH0pO1xuICB9XG5cbiAgYWRkRGF0YXNldE1ldGFkYXRhKCkge1xuICAgIHRoaXMuaXNTdWJtaXR0ZWQgPSB0cnVlO1xuICAgIGlmICh0aGlzLmZvcm0udmFsaWQpIHtcbiAgICAgIHRoaXMuaXNTdWJtaXR0ZWQgPSBmYWxzZTtcbiAgICAgIHRoaXMuYWRkTWV0YS5lbWl0KHtcbiAgICAgICAgaWQ6IHRoaXMudGFyZ2V0SWQsXG4gICAgICAgIG1ldGFkYXRhSWQ6IHRoaXMuZm9ybS52YWx1ZVsnbWV0YWRhdGEnXVsnaWQnXSxcbiAgICAgICAgdmFsdWU6IHRoaXMuZm9ybS52YWx1ZVsndmFsdWUnXVxuICAgICAgfSk7XG4gICAgfVxuICB9XG59XG4iLCI8cHJ5LW1ldGFkYXRhLWVkaXRvci1jc3M+PC9wcnktbWV0YWRhdGEtZWRpdG9yLWNzcz5cbjxkaXYgKm5nRm9yPVwibGV0IG1ldGFkYXRhIG9mIChfbWV0YWRhdGEkIHwgYXN5bmMpID8/IFtdXCI+XG4gIDxkaXYgY2xhc3M9XCJvLXRhYnNfX3BhbmVsX19jb250ZW50X19hY3Rpb25zXCI+XG4gICAgPGRpdiBjbGFzcz1cIm8tdGFic19fcGFuZWxfX2NvbnRlbnRfX2FjdGlvbnNfX3RleHRcIj5cbiAgICAgIDxzcGFuIGNsYXNzPVwiby10YWJzX19wYW5lbF9fY29udGVudF9fYWN0aW9uc19fdGV4dF9fbGFiZWxcIj57eyBtZXRhRGVmaW5pdGlvbihtZXRhZGF0YSkubmFtZSB9fSA6PC9zcGFuPlxuICAgICAgPHNwYW4gY2xhc3M9XCJvLXRhYnNfX3BhbmVsX19jb250ZW50X19hY3Rpb25zX190ZXh0X192YWx1ZVwiPnt7IG1ldGFkYXRhLnZhbHVlIH19PC9zcGFuPlxuICAgIDwvZGl2PlxuXG4gICAgPGRpdiBjbGFzcz1cIm8tdGFic19fcGFuZWxfX2NvbnRlbnRfX2FjdGlvbnNfX2J1dHRvbnNcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhbWV0YURlZmluaXRpb24obWV0YWRhdGEpLnJlYWRPbmx5XCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKnByeUFjY2Vzcz1cInsgbW9kdWxlOiAnYWRtaW4nLCBwYWdlOiAnZGF0YXNldCcsIGFjdGlvbjogJ3dyaXRlJyB9XCI+XG4gICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJhLWJ0biBhLWJ0bi0taWNvbi1vbmx5XCIgYXJpYS1wcmVzc2VkPVwiZmFsc2VcIj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidS12aXN1YWxseS1oaWRkZW5cIj57eyAnQHByeS5hY3Rpb24uZWRpdCcgfCBpMThuIH19IHt7IG1ldGFEZWZpbml0aW9uKG1ldGFkYXRhKS5uYW1lIH19PC9zcGFuPlxuICAgICAgICAgICAgPHByeS1pY29uXG4gICAgICAgICAgICAgIGNsYXNzPVwiZWRpdC1pY29uXCJcbiAgICAgICAgICAgICAgaWNvblN2Zz1cImVkaXRcIlxuICAgICAgICAgICAgICBbd2lkdGhdPVwiMTVcIlxuICAgICAgICAgICAgICBbaGVpZ2h0XT1cIjE1XCJcbiAgICAgICAgICAgICAgKGNsaWNrKT1cImVkaXRNZXRhZGF0YShtZXRhZGF0YSlcIlxuICAgICAgICAgICAgPjwvcHJ5LWljb24+XG4gICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJhLWJ0biBhLWJ0bi0taWNvbi1vbmx5XCIgYXJpYS1wcmVzc2VkPVwiZmFsc2VcIj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidS12aXN1YWxseS1oaWRkZW5cIj57eyAnQHByeS5hY3Rpb24uZGVsZXRlJyB8IGkxOG4gfX0ge3sgbWV0YURlZmluaXRpb24obWV0YWRhdGEpLm5hbWUgfX08L3NwYW4+XG4gICAgICAgICAgICA8cHJ5LWljb25cbiAgICAgICAgICAgICAgY2xhc3M9XCJkZWxldGUtaWNvblwiXG4gICAgICAgICAgICAgIGljb25Tdmc9XCJkZWxldGVcIlxuICAgICAgICAgICAgICBbd2lkdGhdPVwiMTVcIlxuICAgICAgICAgICAgICBbaGVpZ2h0XT1cIjE1XCJcbiAgICAgICAgICAgICAgKGNsaWNrKT1cInJlbW92ZU1ldGFkYXRhKG1ldGFkYXRhKVwiXG4gICAgICAgICAgICA+PC9wcnktaWNvbj5cbiAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cblxuPG5nLWNvbnRhaW5lciAqcHJ5QWNjZXNzPVwieyBtb2R1bGU6ICdhZG1pbicsIHBhZ2U6ICdkYXRhc2V0JywgYWN0aW9uOiAnd3JpdGUnIH1cIj5cbiAgPGZvcm0gY2xhc3M9XCJvLWZvcm0gLWJvcmRlci10b3BcIiBbZm9ybUdyb3VwXT1cImZvcm1cIiAobmdTdWJtaXQpPVwiYWRkRGF0YXNldE1ldGFkYXRhKClcIj5cbiAgICA8ZmllbGRzZXQ+XG4gICAgICA8bGVnZW5kIGNsYXNzPVwidS12aXN1YWxseS1oaWRkZW5cIj57eyAnQHByeS5hY3Rpb24uZWRpdFByb2ZpbCcgfCBpMThuIH19PC9sZWdlbmQ+XG5cbiAgICAgIDxkaXYgY2xhc3M9XCJtLWZvcm0tbGFiZWwtZmllbGQgby1tZXRhZGF0YS1lZGl0b3JfX2NvbnRhaW5lclwiPlxuICAgICAgICA8bGFiZWwgZm9yPVwibWV0YWRhdGFcIiBpZD1cIm1ldGFkYXRhLWxhYmVsXCIgY2xhc3M9XCJhLWxhYmVsXCI+RGF0YTwvbGFiZWw+XG4gICAgICAgIDxwcnktc2VsZWN0XG4gICAgICAgICAgaWQ9XCJtZXRhZGF0YVwiXG4gICAgICAgICAgY2xhc3M9XCJhLXByeS1zZWxlY3Qgby1tZXRhZGF0YS1lZGl0b3JcIlxuICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cIm1ldGFkYXRhXCJcbiAgICAgICAgICBbaXRlbXNdPVwiYXZhaWxhYmxlTWV0YWRhdGEkIHwgYXN5bmNcIlxuICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cIm9uTWV0YUNoYW5nZSgkZXZlbnQpXCJcbiAgICAgICAgICBbaXNGb3JtXT1cInRydWVcIlxuICAgICAgICAgIFtpdGVtc0FzT3B0aW9uXT1cInRydWVcIlxuICAgICAgICAgIGJpbmRMYWJlbD1cIm5hbWVcIlxuICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxsZWRieV09XCJcbiAgICAgICAgICAgIGlzU3VibWl0dGVkICYmIGZvcm0uZ2V0KCdtZXRhZGF0YScpPy5pbnZhbGlkID8gJ21ldGFkYXRhLWxhYmVsIG1ldGFkYXRhLWVycm9yJyA6ICdtZXRhZGF0YS1sYWJlbCdcbiAgICAgICAgICBcIlxuICAgICAgICAgIFthdHRyLmFyaWEtaW52YWxpZF09XCJpc1N1Ym1pdHRlZCAmJiBmb3JtLmdldCgnbWV0YWRhdGEnKT8uaW52YWxpZFwiXG4gICAgICAgID5cbiAgICAgICAgPC9wcnktc2VsZWN0PlxuICAgICAgICA8bGFiZWxcbiAgICAgICAgICAqbmdJZj1cImlzU3VibWl0dGVkICYmIGZvcm0uZ2V0KCdtZXRhZGF0YScpPy5pbnZhbGlkXCJcbiAgICAgICAgICBpZD1cIm1ldGFkYXRhLWVycm9yXCJcbiAgICAgICAgICBmb3I9XCJtZXRhZGF0YVwiXG4gICAgICAgICAgY2xhc3M9XCJhLWxhYmVsIGEtbGFiZWwtLWhlbHAgLWVycm9yXCJcbiAgICAgICAgPlxuICAgICAgICAgIHt7ICdAcHJ5LmFkbWluLnJlcXVpcmVkJyB8IGkxOG4gfX1cbiAgICAgICAgPC9sYWJlbD5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZm9ybS52YWx1ZS5tZXRhZGF0YVwiPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZm9ybS52YWx1ZVsnbWV0YWRhdGEnXVsndHlwZSddID09PSAnREFURSc7IGVsc2UgaW5wdXRMaXN0XCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cIm0tZm9ybS1sYWJlbC1maWVsZCBvLW1ldGFkYXRhLWVkaXRvcl9fY29udGFpbmVyXCI+XG4gICAgICAgICAgICA8bGFiZWwgaWQ9XCJmb3JtX2RhdGUtbGFiZWxcIiBmb3I9XCJmb3JtX2RhdGVcIiBjbGFzcz1cImEtbGFiZWxcIj5cbiAgICAgICAgICAgICAge3sgJ0BwcnkuYWN0aW9uLnNlbGVjdERhdGUnIHwgaTE4biB9fSAqXG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidS12aXN1YWxseS1oaWRkZW5cIj4oe3sgJ0BwcnkuYWRtaW4ucmVxdWlyZWQnIHwgaTE4biB9fSk8L3NwYW4+XG4gICAgICAgICAgICA8L2xhYmVsPlxuICAgICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAgIGlkPVwiZm9ybV9kYXRlXCJcbiAgICAgICAgICAgICAgdHlwZT1cImRhdGVcIlxuICAgICAgICAgICAgICBjbGFzcz1cImEtZm9ybS1maWVsZFwiXG4gICAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cInZhbHVlXCJcbiAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbGxlZGJ5XT1cIlxuICAgICAgICAgICAgICAgIGlzU3VibWl0dGVkICYmIGZvcm0uZ2V0KCd2YWx1ZScpPy5pbnZhbGlkID8gJ2Zvcm0tZGF0ZS1sYWJlbCBmb3JtLWRhdGUtZXJyb3InIDogJ2Zvcm0tZGF0ZS1sYWJlbCdcbiAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgW2F0dHIuYXJpYS1pbnZhbGlkXT1cImlzU3VibWl0dGVkICYmIGZvcm0uZ2V0KCd2YWx1ZScpPy5pbnZhbGlkXCJcbiAgICAgICAgICAgICAgcmVxdWlyZWRcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8bGFiZWxcbiAgICAgICAgICAgICAgKm5nSWY9XCJpc1N1Ym1pdHRlZCAmJiBmb3JtLmdldCgndmFsdWUnKT8uaW52YWxpZFwiXG4gICAgICAgICAgICAgIGlkPVwiZm9ybV9kYXRlLWVycm9yXCJcbiAgICAgICAgICAgICAgZm9yPVwiZm9ybV9kYXRlXCJcbiAgICAgICAgICAgICAgY2xhc3M9XCJhLWxhYmVsIGEtbGFiZWwtLWhlbHAgLWVycm9yXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAge3sgJ0BwcnkuYWRtaW4ucmVxdWlyZWQnIHwgaTE4biB9fVxuICAgICAgICAgICAgPC9sYWJlbD5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgPG5nLXRlbXBsYXRlICNpbnB1dExpc3Q+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImZvcm0udmFsdWVbJ21ldGFkYXRhJ11bJ3R5cGUnXSA9PT0gJ0xJU1QnOyBlbHNlIGlucHV0VGV4dFwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm0tZm9ybS1sYWJlbC1maWVsZCAgby1tZXRhZGF0YS1lZGl0b3JfX2NvbnRhaW5lclwiPlxuICAgICAgICAgICAgICA8bGFiZWwgaWQ9XCJsaXN0LWxhYmVsXCIgY2xhc3M9XCJhLWxhYmVsXCIgZm9yPVwibGlzdFwiPnt7ICdAcHJ5LmFjdGlvbi5jaG9pY2VJbkxpc3QnIHwgaTE4biB9fTwvbGFiZWw+XG4gICAgICAgICAgICAgIDxwcnktc2VsZWN0XG4gICAgICAgICAgICAgICAgaWQ9XCJsaXN0XCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImEtcHJ5LXNlbGVjdCBvLW1ldGFkYXRhLWVkaXRvclwiXG4gICAgICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwidmFsdWVcIlxuICAgICAgICAgICAgICAgIFtpdGVtc109XCJmb3JtLnZhbHVlWydtZXRhZGF0YSddWydhbGxvd2VkVmFsdWVzJ11cIlxuICAgICAgICAgICAgICAgIFtpc0Zvcm1dPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgYXJpYS1sYWJlbGxlZGJ5PVwibGlzdC1sYWJlbFwiXG4gICAgICAgICAgICAgID48L3ByeS1zZWxlY3Q+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cblxuICAgICAgICA8bmctdGVtcGxhdGUgI2lucHV0VGV4dD5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwibS1mb3JtLWxhYmVsLWZpZWxkXCI+XG4gICAgICAgICAgICA8bGFiZWwgaWQ9XCJ0ZXh0LWxhYmVsXCIgY2xhc3M9XCJhLWxhYmVsXCIgZm9yPVwidGV4dFwiPlxuICAgICAgICAgICAgICB7eyAnQHByeS5hY3Rpb24udGV4dCcgfCBpMThuIH19ICpcbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ1LXZpc3VhbGx5LWhpZGRlblwiPih7eyAnQHByeS5hZG1pbi5yZXF1aXJlZCcgfCBpMThuIH19KTwvc3Bhbj5cbiAgICAgICAgICAgIDwvbGFiZWw+XG4gICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgaWQ9XCJ0ZXh0XCJcbiAgICAgICAgICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgICAgICAgICBjbGFzcz1cImEtZm9ybS1maWVsZFwiXG4gICAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cInZhbHVlXCJcbiAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbGxlZGJ5XT1cIlxuICAgICAgICAgICAgICAgIGlzU3VibWl0dGVkICYmIGZvcm0uZ2V0KCd2YWx1ZScpPy5pbnZhbGlkID8gJ3RleHQtbGFiZWwgdGV4dC1lcnJvcicgOiAndGV4dC1sYWJlbCdcbiAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgW2F0dHIuYXJpYS1pbnZhbGlkXT1cImlzU3VibWl0dGVkICYmIGZvcm0uZ2V0KCd2YWx1ZScpPy5pbnZhbGlkXCJcbiAgICAgICAgICAgICAgcmVxdWlyZWRcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8bGFiZWxcbiAgICAgICAgICAgICAgKm5nSWY9XCJpc1N1Ym1pdHRlZCAmJiBmb3JtLmdldCgndmFsdWUnKT8uaW52YWxpZFwiXG4gICAgICAgICAgICAgIGlkPVwidGVzdC1lcnJvclwiXG4gICAgICAgICAgICAgIGZvcj1cInRleHRcIlxuICAgICAgICAgICAgICBjbGFzcz1cImEtbGFiZWwgYS1sYWJlbC0taGVscCAtZXJyb3JcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImZvcm0uZ2V0KCd2YWx1ZScpPy5oYXNFcnJvcigncmVxdWlyZWQnKVwiPnt7ICdAcHJ5LmFkbWluLnJlcXVpcmVkJyB8IGkxOG4gfX08L3NwYW4+XG4gICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJmb3JtLmdldCgndmFsdWUnKT8uaGFzRXJyb3IoJ3BhdHRlcm4nKVwiPlxuICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiZm9ybS52YWx1ZVsnbWV0YWRhdGEnXVsndHlwZSddID09PSAnRE9VQkxFJ1wiPlxuICAgICAgICAgICAgICAgICAge3sgJ0BwcnkuYWRtaW4uZW52aXJvbm1lbnQuZm9ybWF0RG91YmxlJyB8IGkxOG4gfX1cbiAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJmb3JtLnZhbHVlWydtZXRhZGF0YSddWyd0eXBlJ10gPT09ICdJTlRFR0VSJ1wiPlxuICAgICAgICAgICAgICAgICAge3sgJ0BwcnkuYWRtaW4uZW52aXJvbm1lbnQuZm9ybWF0SW50JyB8IGkxOG4gfX1cbiAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPC9sYWJlbD5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvZmllbGRzZXQ+XG5cbiAgICA8ZGl2IGNsYXNzPVwibS1idG4tZ3JvdXAgLWVuZFwiPlxuICAgICAgPGJ1dHRvbiB0eXBlPVwic3VibWl0XCIgY2xhc3M9XCJhLWJ0biBhLWJ0bi0tcHJpbWFyeVwiPlxuICAgICAgICB7eyAoaXNNb2RpZmljYXRpb24gPyAnQHByeS5hY3Rpb24uZWRpdE1ldGFkYXRhJyA6ICdAcHJ5LmFjdGlvbi5hZGRNZXRhZGF0YScpIHwgaTE4biB9fVxuICAgICAgPC9idXR0b24+XG4gICAgPC9kaXY+XG4gIDwvZm9ybT5cbjwvbmctY29udGFpbmVyPlxuIl19
127
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWV0YWRhdGEtZWRpdG9yLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Byb3ZvbHkvZGFzaGJvYXJkL2NvbXBvbmVudHMvbWV0YWRhdGEtZWRpdG9yL21ldGFkYXRhLWVkaXRvci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcm92b2x5L2Rhc2hib2FyZC9jb21wb25lbnRzL21ldGFkYXRhLWVkaXRvci9tZXRhZGF0YS1lZGl0b3IuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2RSxPQUFPLEVBQTBCLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXBFLE9BQU8sRUFBMEMsd0JBQXdCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUN0RyxPQUFPLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxHQUFHLEVBQWMsTUFBTSxNQUFNLENBQUM7QUFDdkUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzFELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDOzs7Ozs7O0FBSTlELE1BQU0sQ0FBQyxNQUFNLHNCQUFzQixHQUFHLGVBQWUsQ0FBQztBQUN0RCxNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRyx5QkFBeUIsQ0FBQztBQU0vRCxNQUFNLE9BQU8sMEJBQTJCLFNBQVEsd0JBQXdCO0lBYXRFLElBQWEsSUFBSSxDQUFDLElBQXFCO1FBQ3JDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3pCLENBQUM7SUFFRCxJQUFhLFFBQVEsQ0FBQyxRQUEwQztRQUM5RCxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxR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LHFCQUFxQjtzSEFPdEIsY0FBYztzQkFBdEIsS0FBSztnQkFJSSxPQUFPO3NCQUFoQixNQUFNO2dCQUNHLFVBQVU7c0JBQW5CLE1BQU07Z0JBRUUsUUFBUTtzQkFBaEIsS0FBSztnQkFFTyxJQUFJO3NCQUFoQixLQUFLO2dCQUlPLFFBQVE7c0JBQXBCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUJ1aWxkZXIsIEZvcm1Hcm91cCwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFN0b3JlIH0gZnJvbSAnQG5ncngvc3RvcmUnO1xuaW1wb3J0IHsgSU1ldGFkYXRhLCBNZXRhZGF0YVVzZXIsIE1ldGFkYXRhVmFsdWUsIFN1YnNjcmlwdGlvbm5lckRpcmVjdGl2ZSB9IGZyb20gJ0Bwcm92b2x5L2Rhc2hib2FyZCc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGNvbWJpbmVMYXRlc3QsIG1hcCwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgTWV0YWRhdGFBY3Rpb25zIH0gZnJvbSAnLi9zdG9yZS9tZXRhZGF0YS5hY3Rpb24nO1xuaW1wb3J0IHsgTWV0YWRhdGFTZWxlY3RvcnMgfSBmcm9tICcuL3N0b3JlL21ldGFkYXRhLnNlbGVjdG9yJztcblxuZXhwb3J0IHR5cGUgTWV0YUV2ZW50VHlwZSA9IHsgaWQ6IHN0cmluZzsgbWV0YWRhdGFJZDogc3RyaW5nOyB2YWx1ZT86IHN0cmluZyB9O1xuXG5leHBvcnQgY29uc3QgSU5URUdFUl9SRUdFWFBfUEFUVEVSTiA9ICdeWystXT9bMC05XSokJztcbmV4cG9ydCBjb25zdCBET1VCTEVfUkVHRVhQX1BBVFRFUk4gPSAnWystXT8oWzAtOV0qWy5dKT9bMC05XSsnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdwcnktbWV0YWRhdGEtZWRpdG9yJyxcbiAgdGVtcGxhdGVVcmw6ICdtZXRhZGF0YS1lZGl0b3IuY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIFByeU1ldGFkYXRhRWRpdG9yQ29tcG9uZW50IGV4dGVuZHMgU3Vic2NyaXB0aW9ubmVyRGlyZWN0aXZlIHtcbiAgX21ldGFkYXRhJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8KE1ldGFkYXRhVmFsdWUgfCBNZXRhZGF0YVVzZXIpW10+KFtdKTtcbiAgZm9ybTogRm9ybUdyb3VwO1xuICBpc1N1Ym1pdHRlZCA9IGZhbHNlO1xuICBASW5wdXQoKSBpc01vZGlmaWNhdGlvbiA9IGZhbHNlO1xuICBtZXRhZGF0YURlZnMkOiBPYnNlcnZhYmxlPElNZXRhZGF0YVtdPjtcbiAgYXZhaWxhYmxlTWV0YWRhdGEkOiBPYnNlcnZhYmxlPElNZXRhZGF0YVtdPjtcbiAgX3R5cGUkID0gbmV3IEJlaGF2aW9yU3ViamVjdDwnbWV0YScgfCAndXNlcic+KCdtZXRhJyk7XG4gIEBPdXRwdXQoKSBhZGRNZXRhID0gbmV3IEV2ZW50RW1pdHRlcjxNZXRhRXZlbnRUeXBlPigpO1xuICBAT3V0cHV0KCkgcmVtb3ZlTWV0YSA9IG5ldyBFdmVudEVtaXR0ZXI8TWV0YUV2ZW50VHlwZT4oKTtcbiAgdXNlclByb2ZpbGVEZWZzJDogT2JzZXJ2YWJsZTxBcnJheTxJTWV0YWRhdGE+IHwgdW5kZWZpbmVkPjtcbiAgQElucHV0KCkgdGFyZ2V0SWQgPSAnJztcblxuICBASW5wdXQoKSBzZXQgdHlwZSh0eXBlOiAnbWV0YScgfCAndXNlcicpIHtcbiAgICB0aGlzLl90eXBlJC5uZXh0KHR5cGUpO1xuICB9XG5cbiAgQElucHV0KCkgc2V0IG1ldGFkYXRhKG1ldGFkYXRhOiBNZXRhZGF0YVZhbHVlW10gfCBNZXRhZGF0YVVzZXJbXSkge1xuICAgIHRoaXMuX21ldGFkYXRhJC5uZXh0KG1ldGFkYXRhKTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgc3RvcmU6IFN0b3JlLCBwcml2YXRlIGZvcm1CdWlsZGVyOiBGb3JtQnVpbGRlcikge1xuICAgIHN1cGVyKCk7XG5cbiAgICB0aGlzLmZvcm0gPSB0aGlzLmZvcm1CdWlsZGVyLmdyb3VwKHtcbiAgICAgIG1ldGFkYXRhOiBbe30sIFtWYWxpZGF0b3JzLnJlcXVpcmVkXV0sXG4gICAgICB2YWx1ZTogWycnLCBbVmFsaWRhdG9ycy5yZXF1aXJlZCwgVmFsaWRhdG9ycy5wYXR0ZXJuKElOVEVHRVJfUkVHRVhQX1BBVFRFUk4pXV1cbiAgICB9KTtcblxuICAgIHRoaXMubWV0YWRhdGFEZWZzJCA9IHRoaXMuc3RvcmUuc2VsZWN0KE1ldGFkYXRhU2VsZWN0b3JzLm1ldGFkYXRhKTtcbiAgICB0aGlzLnVzZXJQcm9maWxlRGVmcyQgPSB0aGlzLnN0b3JlLnNlbGVjdChNZXRhZGF0YVNlbGVjdG9ycy51c2VyUHJvZmlsZSk7XG4gICAgdGhpcy5hdmFpbGFibGVNZXRhZGF0YSQgPSBjb21iaW5lTGF0ZXN0KFtcbiAgICAgIHRoaXMuX3R5cGUkLFxuICAgICAgdGhpcy5fbWV0YWRhdGEkLFxuICAgICAgdGhpcy5tZXRhZGF0YURlZnMkLFxuICAgICAgdGhpcy51c2VyUHJvZmlsZURlZnMkXG4gICAgXSkucGlwZShcbiAgICAgIG1hcCgoW3R5cGUsIG1ldGFkYXRhLCBtZXRhRGVmcywgdXNlclByb2ZpbGVEZWZzXSkgPT4ge1xuICAgICAgICBpZiAodHlwZSA9PT0gJ21ldGEnKSB7XG4gICAgICAgICAgbGV0IGRhdGFzZXRNZXRhZGF0YUlkcyA9IG1ldGFkYXRhPy5tYXAoKHUpID0+ICh1IGFzIE1ldGFkYXRhVmFsdWUpLm1ldGFkYXRhRGVmLmlkKTtcbiAgICAgICAgICByZXR1cm4gbWV0YURlZnMuZmlsdGVyKChtZXRhKSA9PiAhZGF0YXNldE1ldGFkYXRhSWRzPy5pbmNsdWRlcyhtZXRhLmlkKSAmJiAhbWV0YS5yZWFkT25seSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgbGV0IHVzZXJQcm9maWxlSWRzID0gbWV0YWRhdGE/Lm1hcCgodSkgPT4gKHUgYXMgTWV0YWRhdGFVc2VyKS51c2VyUHJvZmlsZS5pZCk7XG4gICAgICAgICAgcmV0dXJuICh1c2VyUHJvZmlsZURlZnMgPz8gW10pLmZpbHRlcigobWV0YSkgPT4gIXVzZXJQcm9maWxlSWRzPy5pbmNsdWRlcyhtZXRhLmlkKSk7XG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgKTtcblxuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5hZGQoXG4gICAgICB0aGlzLmF2YWlsYWJsZU1ldGFkYXRhJC5zdWJzY3JpYmUoKG1ldGEpID0+IHtcbiAgICAgICAgdGhpcy5mb3JtLnBhdGNoVmFsdWUoe1xuICAgICAgICAgIG1ldGFkYXRhOiBtZXRhWzBdXG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLm9uTWV0YUNoYW5nZShtZXRhWzBdKTtcbiAgICAgICAgdGhpcy5mb3JtLnBhdGNoVmFsdWUoeyB2YWx1ZTogJycgfSk7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICBvbk1ldGFDaGFuZ2UobWV0YWRhdGE6IElNZXRhZGF0YSkge1xuICAgIGlmIChtZXRhZGF0YSkge1xuICAgICAgaWYgKG1ldGFkYXRhLnR5cGUgPT09ICdJTlRFR0VSJykge1xuICAgICAgICB0aGlzLmZvcm0uY29udHJvbHNbJ3ZhbHVlJ10uc2V0VmFsaWRhdG9ycyhbVmFsaWRhdG9ycy5yZXF1aXJlZCwgVmFsaWRhdG9ycy5wYXR0ZXJuKElOVEVHRVJfUkVHRVhQX1BBVFRFUk4pXSk7XG4gICAgICB9IGVsc2UgaWYgKG1ldGFkYXRhLnR5cGUgPT09ICdET1VCTEUnKSB7XG4gICAgICAgIHRoaXMuZm9ybS5jb250cm9sc1sndmFsdWUnXS5zZXRWYWxpZGF0b3JzKFtWYWxpZGF0b3JzLnJlcXVpcmVkLCBWYWxpZGF0b3JzLnBhdHRlcm4oRE9VQkxFX1JFR0VYUF9QQVRURVJOKV0pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5mb3JtLmNvbnRyb2xzWyd2YWx1ZSddLnNldFZhbGlkYXRvcnMoW1ZhbGlkYXRvcnMucmVxdWlyZWRdKTtcbiAgICAgIH1cbiAgICAgIHRoaXMuaXNNb2RpZmljYXRpb24gPSB0cnVlO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmlzTW9kaWZpY2F0aW9uID0gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgZWRpdE1ldGFkYXRhKGN1cnJlbnRNZXRhZGF0YTogTWV0YWRhdGFWYWx1ZSB8IE1ldGFkYXRhVXNlcikge1xuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goTWV0YWRhdGFBY3Rpb25zLmlzRWRpdGFibGUoeyBlZGl0YWJsZTogdHJ1ZSB9KSk7XG4gICAgbGV0IHZhbHVlID0gY3VycmVudE1ldGFkYXRhLnZhbHVlO1xuICAgIGxldCBkYXRhc2V0TWV0YWRhdGFEZWYgPSB0aGlzLm1ldGFEZWZpbml0aW9uKGN1cnJlbnRNZXRhZGF0YSk7XG5cbiAgICB0aGlzLmZvcm0ucGF0Y2hWYWx1ZSh7XG4gICAgICBtZXRhZGF0YTogZGF0YXNldE1ldGFkYXRhRGVmLFxuICAgICAgdmFsdWU6IHZhbHVlXG4gICAgfSk7XG4gICAgdGhpcy5vbk1ldGFDaGFuZ2UoZGF0YXNldE1ldGFkYXRhRGVmKTtcbiAgfVxuXG4gIG1ldGFEZWZpbml0aW9uKG1ldGFkYXRhOiBNZXRhZGF0YVVzZXIgfCBNZXRhZGF0YVZhbHVlKSB7XG4gICAgcmV0dXJuIHRoaXMuX3R5cGUkLmdldFZhbHVlKCkgPT09ICd1c2VyJ1xuICAgICAgPyAobWV0YWRhdGEgYXMgTWV0YWRhdGFVc2VyKS51c2VyUHJvZmlsZVxuICAgICAgOiAobWV0YWRhdGEgYXMgTWV0YWRhdGFWYWx1ZSkubWV0YWRhdGFEZWY7XG4gIH1cblxuICByZW1vdmVNZXRhZGF0YShtZXRhZGF0YTogTWV0YWRhdGFVc2VyIHwgTWV0YWRhdGFWYWx1ZSkge1xuICAgIHRoaXMucmVtb3ZlTWV0YS5lbWl0KHsgaWQ6IHRoaXMudGFyZ2V0SWQsIG1ldGFkYXRhSWQ6IHRoaXMubWV0YURlZmluaXRpb24obWV0YWRhdGEpLmlkIH0pO1xuICB9XG5cbiAgYWRkRGF0YXNldE1ldGFkYXRhKCkge1xuICAgIHRoaXMuaXNTdWJtaXR0ZWQgPSB0cnVlO1xuICAgIGlmICh0aGlzLmZvcm0udmFsaWQpIHtcbiAgICAgIHRoaXMuaXNTdWJtaXR0ZWQgPSBmYWxzZTtcbiAgICAgIHRoaXMuYWRkTWV0YS5lbWl0KHtcbiAgICAgICAgaWQ6IHRoaXMudGFyZ2V0SWQsXG4gICAgICAgIG1ldGFkYXRhSWQ6IHRoaXMuZm9ybS52YWx1ZVsnbWV0YWRhdGEnXVsnaWQnXSxcbiAgICAgICAgdmFsdWU6IHRoaXMuZm9ybS52YWx1ZVsndmFsdWUnXVxuICAgICAgfSk7XG4gICAgfVxuICB9XG59XG4iLCI8cHJ5LW1ldGFkYXRhLWVkaXRvci1jc3M+PC9wcnktbWV0YWRhdGEtZWRpdG9yLWNzcz5cbjxkaXYgKm5nRm9yPVwibGV0IG1ldGFkYXRhIG9mIChfbWV0YWRhdGEkIHwgYXN5bmMpID8/IFtdXCI+XG4gIDxkaXYgY2xhc3M9XCJvLXRhYnNfX3BhbmVsX19jb250ZW50X19hY3Rpb25zXCI+XG4gICAgPGRpdiBjbGFzcz1cIm8tdGFic19fcGFuZWxfX2NvbnRlbnRfX2FjdGlvbnNfX3RleHRcIj5cbiAgICAgIDxzcGFuIGNsYXNzPVwiby10YWJzX19wYW5lbF9fY29udGVudF9fYWN0aW9uc19fdGV4dF9fbGFiZWxcIj57eyBtZXRhRGVmaW5pdGlvbihtZXRhZGF0YSkubmFtZSB9fSA6PC9zcGFuPlxuICAgICAgPHNwYW4gY2xhc3M9XCJvLXRhYnNfX3BhbmVsX19jb250ZW50X19hY3Rpb25zX190ZXh0X192YWx1ZVwiPnt7IG1ldGFkYXRhLnZhbHVlIH19PC9zcGFuPlxuICAgIDwvZGl2PlxuXG4gICAgPGRpdiBjbGFzcz1cIm8tdGFic19fcGFuZWxfX2NvbnRlbnRfX2FjdGlvbnNfX2J1dHRvbnNcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhbWV0YURlZmluaXRpb24obWV0YWRhdGEpLnJlYWRPbmx5XCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKnByeUFjY2Vzcz1cInsgbW9kdWxlOiAnYWRtaW4nLCBwYWdlOiAnZGF0YXNldCcsIGFjdGlvbjogJ3dyaXRlJyB9XCI+XG4gICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJhLWJ0biBhLWJ0bi0taWNvbi1vbmx5XCIgYXJpYS1wcmVzc2VkPVwiZmFsc2VcIj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidS12aXN1YWxseS1oaWRkZW5cIj57eyAnQHByeS5hY3Rpb24uZWRpdCcgfCBpMThuIH19IHt7IG1ldGFEZWZpbml0aW9uKG1ldGFkYXRhKS5uYW1lIH19PC9zcGFuPlxuICAgICAgICAgICAgPHByeS1pY29uXG4gICAgICAgICAgICAgIGNsYXNzPVwiZWRpdC1pY29uXCJcbiAgICAgICAgICAgICAgaWNvblN2Zz1cImVkaXRcIlxuICAgICAgICAgICAgICBbd2lkdGhdPVwiMTVcIlxuICAgICAgICAgICAgICBbaGVpZ2h0XT1cIjE1XCJcbiAgICAgICAgICAgICAgKGNsaWNrKT1cImVkaXRNZXRhZGF0YShtZXRhZGF0YSlcIlxuICAgICAgICAgICAgPjwvcHJ5LWljb24+XG4gICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJhLWJ0biBhLWJ0bi0taWNvbi1vbmx5XCIgYXJpYS1wcmVzc2VkPVwiZmFsc2VcIj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidS12aXN1YWxseS1oaWRkZW5cIj57eyAnQHByeS5hY3Rpb24uZGVsZXRlJyB8IGkxOG4gfX0ge3sgbWV0YURlZmluaXRpb24obWV0YWRhdGEpLm5hbWUgfX08L3NwYW4+XG4gICAgICAgICAgICA8cHJ5LWljb25cbiAgICAgICAgICAgICAgY2xhc3M9XCJkZWxldGUtaWNvblwiXG4gICAgICAgICAgICAgIGljb25Tdmc9XCJkZWxldGVcIlxuICAgICAgICAgICAgICBbd2lkdGhdPVwiMTVcIlxuICAgICAgICAgICAgICBbaGVpZ2h0XT1cIjE1XCJcbiAgICAgICAgICAgICAgKGNsaWNrKT1cInJlbW92ZU1ldGFkYXRhKG1ldGFkYXRhKVwiXG4gICAgICAgICAgICA+PC9wcnktaWNvbj5cbiAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cblxuPG5nLWNvbnRhaW5lciAqcHJ5QWNjZXNzPVwieyBtb2R1bGU6ICdhZG1pbicsIHBhZ2U6ICdkYXRhc2V0JywgYWN0aW9uOiAnd3JpdGUnIH1cIj5cbiAgPGZvcm0gY2xhc3M9XCJvLWZvcm0gLWJvcmRlci10b3BcIiBbZm9ybUdyb3VwXT1cImZvcm1cIiAobmdTdWJtaXQpPVwiYWRkRGF0YXNldE1ldGFkYXRhKClcIj5cbiAgICA8ZmllbGRzZXQ+XG4gICAgICA8bGVnZW5kIGNsYXNzPVwidS12aXN1YWxseS1oaWRkZW5cIj57eyAnQHByeS5hY3Rpb24uZWRpdFByb2ZpbCcgfCBpMThuIH19PC9sZWdlbmQ+XG5cbiAgICAgIDxkaXYgY2xhc3M9XCJtLWZvcm0tbGFiZWwtZmllbGQgby1tZXRhZGF0YS1lZGl0b3JfX2NvbnRhaW5lclwiPlxuICAgICAgICA8bGFiZWwgZm9yPVwibWV0YWRhdGFcIiBpZD1cIm1ldGFkYXRhLWxhYmVsXCIgY2xhc3M9XCJhLWxhYmVsXCI+RGF0YTwvbGFiZWw+XG4gICAgICAgIDxwcnktc2VsZWN0XG4gICAgICAgICAgaWQ9XCJtZXRhZGF0YVwiXG4gICAgICAgICAgY2xhc3M9XCJvLW1ldGFkYXRhLWVkaXRvclwiXG4gICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwibWV0YWRhdGFcIlxuICAgICAgICAgIFtpdGVtc109XCJhdmFpbGFibGVNZXRhZGF0YSQgfCBhc3luY1wiXG4gICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwib25NZXRhQ2hhbmdlKCRldmVudClcIlxuICAgICAgICAgIFtpc0Zvcm1dPVwidHJ1ZVwiXG4gICAgICAgICAgYmluZExhYmVsPVwibmFtZVwiXG4gICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbGxlZGJ5XT1cIlxuICAgICAgICAgICAgaXNTdWJtaXR0ZWQgJiYgZm9ybS5nZXQoJ21ldGFkYXRhJyk/LmludmFsaWQgPyAnbWV0YWRhdGEtbGFiZWwgbWV0YWRhdGEtZXJyb3InIDogJ21ldGFkYXRhLWxhYmVsJ1xuICAgICAgICAgIFwiXG4gICAgICAgICAgW2F0dHIuYXJpYS1pbnZhbGlkXT1cImlzU3VibWl0dGVkICYmIGZvcm0uZ2V0KCdtZXRhZGF0YScpPy5pbnZhbGlkXCJcbiAgICAgICAgPlxuICAgICAgICA8L3ByeS1zZWxlY3Q+XG4gICAgICAgIDxsYWJlbFxuICAgICAgICAgICpuZ0lmPVwiaXNTdWJtaXR0ZWQgJiYgZm9ybS5nZXQoJ21ldGFkYXRhJyk/LmludmFsaWRcIlxuICAgICAgICAgIGlkPVwibWV0YWRhdGEtZXJyb3JcIlxuICAgICAgICAgIGZvcj1cIm1ldGFkYXRhXCJcbiAgICAgICAgICBjbGFzcz1cImEtbGFiZWwgYS1sYWJlbC0taGVscCAtZXJyb3JcIlxuICAgICAgICA+XG4gICAgICAgICAge3sgJ0BwcnkuYWRtaW4ucmVxdWlyZWQnIHwgaTE4biB9fVxuICAgICAgICA8L2xhYmVsPlxuICAgICAgPC9kaXY+XG5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJmb3JtLnZhbHVlLm1ldGFkYXRhXCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJmb3JtLnZhbHVlWydtZXRhZGF0YSddWyd0eXBlJ10gPT09ICdEQVRFJzsgZWxzZSBpbnB1dExpc3RcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwibS1mb3JtLWxhYmVsLWZpZWxkIG8tbWV0YWRhdGEtZWRpdG9yX19jb250YWluZXJcIj5cbiAgICAgICAgICAgIDxsYWJlbCBpZD1cImZvcm1fZGF0ZS1sYWJlbFwiIGZvcj1cImZvcm1fZGF0ZVwiIGNsYXNzPVwiYS1sYWJlbFwiPlxuICAgICAgICAgICAgICB7eyAnQHByeS5hY3Rpb24uc2VsZWN0RGF0ZScgfCBpMThuIH19ICpcbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ1LXZpc3VhbGx5LWhpZGRlblwiPih7eyAnQHByeS5hZG1pbi5yZXF1aXJlZCcgfCBpMThuIH19KTwvc3Bhbj5cbiAgICAgICAgICAgIDwvbGFiZWw+XG4gICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgaWQ9XCJmb3JtX2RhdGVcIlxuICAgICAgICAgICAgICB0eXBlPVwiZGF0ZVwiXG4gICAgICAgICAgICAgIGNsYXNzPVwiYS1mb3JtLWZpZWxkXCJcbiAgICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwidmFsdWVcIlxuICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsbGVkYnldPVwiXG4gICAgICAgICAgICAgICAgaXNTdWJtaXR0ZWQgJiYgZm9ybS5nZXQoJ3ZhbHVlJyk/LmludmFsaWQgPyAnZm9ybS1kYXRlLWxhYmVsIGZvcm0tZGF0ZS1lcnJvcicgOiAnZm9ybS1kYXRlLWxhYmVsJ1xuICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICBbYXR0ci5hcmlhLWludmFsaWRdPVwiaXNTdWJtaXR0ZWQgJiYgZm9ybS5nZXQoJ3ZhbHVlJyk/LmludmFsaWRcIlxuICAgICAgICAgICAgICByZXF1aXJlZFxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxsYWJlbFxuICAgICAgICAgICAgICAqbmdJZj1cImlzU3VibWl0dGVkICYmIGZvcm0uZ2V0KCd2YWx1ZScpPy5pbnZhbGlkXCJcbiAgICAgICAgICAgICAgaWQ9XCJmb3JtX2RhdGUtZXJyb3JcIlxuICAgICAgICAgICAgICBmb3I9XCJmb3JtX2RhdGVcIlxuICAgICAgICAgICAgICBjbGFzcz1cImEtbGFiZWwgYS1sYWJlbC0taGVscCAtZXJyb3JcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICB7eyAnQHByeS5hZG1pbi5yZXF1aXJlZCcgfCBpMThuIH19XG4gICAgICAgICAgICA8L2xhYmVsPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICA8bmctdGVtcGxhdGUgI2lucHV0TGlzdD5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZm9ybS52YWx1ZVsnbWV0YWRhdGEnXVsndHlwZSddID09PSAnTElTVCc7IGVsc2UgaW5wdXRUZXh0XCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibS1mb3JtLWxhYmVsLWZpZWxkIG8tbWV0YWRhdGEtZWRpdG9yX19jb250YWluZXJcIj5cbiAgICAgICAgICAgICAgPGxhYmVsIGlkPVwibGlzdC1sYWJlbFwiIGNsYXNzPVwiYS1sYWJlbFwiIGZvcj1cImxpc3RcIj57eyAnQHByeS5hY3Rpb24uY2hvaWNlSW5MaXN0JyB8IGkxOG4gfX08L2xhYmVsPlxuICAgICAgICAgICAgICA8cHJ5LXNlbGVjdFxuICAgICAgICAgICAgICAgIGlkPVwibGlzdFwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJvLW1ldGFkYXRhLWVkaXRvclwiXG4gICAgICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwidmFsdWVcIlxuICAgICAgICAgICAgICAgIFtpdGVtc109XCJmb3JtLnZhbHVlWydtZXRhZGF0YSddWydhbGxvd2VkVmFsdWVzJ11cIlxuICAgICAgICAgICAgICAgIFtpc0Zvcm1dPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgYXJpYS1sYWJlbGxlZGJ5PVwibGlzdC1sYWJlbFwiXG4gICAgICAgICAgICAgID48L3ByeS1zZWxlY3Q+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cblxuICAgICAgICA8bmctdGVtcGxhdGUgI2lucHV0VGV4dD5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwibS1mb3JtLWxhYmVsLWZpZWxkXCI+XG4gICAgICAgICAgICA8bGFiZWwgaWQ9XCJ0ZXh0LWxhYmVsXCIgY2xhc3M9XCJhLWxhYmVsXCIgZm9yPVwidGV4dFwiPlxuICAgICAgICAgICAgICB7eyAnQHByeS5hY3Rpb24udGV4dCcgfCBpMThuIH19ICpcbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ1LXZpc3VhbGx5LWhpZGRlblwiPih7eyAnQHByeS5hZG1pbi5yZXF1aXJlZCcgfCBpMThuIH19KTwvc3Bhbj5cbiAgICAgICAgICAgIDwvbGFiZWw+XG4gICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgaWQ9XCJ0ZXh0XCJcbiAgICAgICAgICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgICAgICAgICBjbGFzcz1cImEtZm9ybS1maWVsZFwiXG4gICAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cInZhbHVlXCJcbiAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbGxlZGJ5XT1cIlxuICAgICAgICAgICAgICAgIGlzU3VibWl0dGVkICYmIGZvcm0uZ2V0KCd2YWx1ZScpPy5pbnZhbGlkID8gJ3RleHQtbGFiZWwgdGV4dC1lcnJvcicgOiAndGV4dC1sYWJlbCdcbiAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgW2F0dHIuYXJpYS1pbnZhbGlkXT1cImlzU3VibWl0dGVkICYmIGZvcm0uZ2V0KCd2YWx1ZScpPy5pbnZhbGlkXCJcbiAgICAgICAgICAgICAgcmVxdWlyZWRcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8bGFiZWxcbiAgICAgICAgICAgICAgKm5nSWY9XCJpc1N1Ym1pdHRlZCAmJiBmb3JtLmdldCgndmFsdWUnKT8uaW52YWxpZFwiXG4gICAgICAgICAgICAgIGlkPVwidGVzdC1lcnJvclwiXG4gICAgICAgICAgICAgIGZvcj1cInRleHRcIlxuICAgICAgICAgICAgICBjbGFzcz1cImEtbGFiZWwgYS1sYWJlbC0taGVscCAtZXJyb3JcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImZvcm0uZ2V0KCd2YWx1ZScpPy5oYXNFcnJvcigncmVxdWlyZWQnKVwiPnt7ICdAcHJ5LmFkbWluLnJlcXVpcmVkJyB8IGkxOG4gfX08L3NwYW4+XG4gICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJmb3JtLmdldCgndmFsdWUnKT8uaGFzRXJyb3IoJ3BhdHRlcm4nKVwiPlxuICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiZm9ybS52YWx1ZVsnbWV0YWRhdGEnXVsndHlwZSddID09PSAnRE9VQkxFJ1wiPlxuICAgICAgICAgICAgICAgICAge3sgJ0BwcnkuYWRtaW4uZW52aXJvbm1lbnQuZm9ybWF0RG91YmxlJyB8IGkxOG4gfX1cbiAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJmb3JtLnZhbHVlWydtZXRhZGF0YSddWyd0eXBlJ10gPT09ICdJTlRFR0VSJ1wiPlxuICAgICAgICAgICAgICAgICAge3sgJ0BwcnkuYWRtaW4uZW52aXJvbm1lbnQuZm9ybWF0SW50JyB8IGkxOG4gfX1cbiAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPC9sYWJlbD5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvZmllbGRzZXQ+XG5cbiAgICA8ZGl2IGNsYXNzPVwibS1idG4tZ3JvdXAgLWVuZFwiPlxuICAgICAgPGJ1dHRvbiB0eXBlPVwic3VibWl0XCIgY2xhc3M9XCJhLWJ0biBhLWJ0bi0tcHJpbWFyeVwiPlxuICAgICAgICB7eyAoaXNNb2RpZmljYXRpb24gPyAnQHByeS5hY3Rpb24uZWRpdE1ldGFkYXRhJyA6ICdAcHJ5LmFjdGlvbi5hZGRNZXRhZGF0YScpIHwgaTE4biB9fVxuICAgICAgPC9idXR0b24+XG4gICAgPC9kaXY+XG4gIDwvZm9ybT5cbjwvbmctY29udGFpbmVyPlxuIl19
@@ -2,10 +2,10 @@ import { Component, ViewEncapsulation } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
3
  export class PryMetadataEditorCssComponent {
4
4
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PryMetadataEditorCssComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: PryMetadataEditorCssComponent, selector: "pry-metadata-editor-css", ngImport: i0, template: '', isInline: true, styles: [".o-metadata-editor ng-select{position:absolute;width:80%}.o-metadata-editor__container{min-height:3.4375rem}\n"], encapsulation: i0.ViewEncapsulation.None }); }
5
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: PryMetadataEditorCssComponent, selector: "pry-metadata-editor-css", ngImport: i0, template: '', isInline: true, styles: [".o-metadata-editor__container{min-height:3.4375rem}\n"], encapsulation: i0.ViewEncapsulation.None }); }
6
6
  }
7
7
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PryMetadataEditorCssComponent, decorators: [{
8
8
  type: Component,
9
- args: [{ selector: 'pry-metadata-editor-css', template: '', encapsulation: ViewEncapsulation.None, styles: [".o-metadata-editor ng-select{position:absolute;width:80%}.o-metadata-editor__container{min-height:3.4375rem}\n"] }]
9
+ args: [{ selector: 'pry-metadata-editor-css', template: '', encapsulation: ViewEncapsulation.None, styles: [".o-metadata-editor__container{min-height:3.4375rem}\n"] }]
10
10
  }] });
11
11
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3NzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Byb3ZvbHkvZGFzaGJvYXJkL2NvbXBvbmVudHMvbWV0YWRhdGEtZWRpdG9yL3N0eWxlL2Nzcy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFRN0QsTUFBTSxPQUFPLDZCQUE2QjsrR0FBN0IsNkJBQTZCO21HQUE3Qiw2QkFBNkIsK0RBSjlCLEVBQUU7OzRGQUlELDZCQUE2QjtrQkFOekMsU0FBUzsrQkFDRSx5QkFBeUIsWUFDekIsRUFBRSxpQkFFRyxpQkFBaUIsQ0FBQyxJQUFJIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdwcnktbWV0YWRhdGEtZWRpdG9yLWNzcycsXG4gIHRlbXBsYXRlOiAnJyxcbiAgc3R5bGVVcmxzOiBbJy4vX28tbWV0YWRhdGEtZWRpdG9yLnNjc3MnXSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxufSlcbmV4cG9ydCBjbGFzcyBQcnlNZXRhZGF0YUVkaXRvckNzc0NvbXBvbmVudCB7fVxuIl19
@@ -89,7 +89,7 @@ export class PrySchemePickerComponent {
89
89
  useExisting: forwardRef(() => PrySchemePickerComponent),
90
90
  multi: true
91
91
  }
92
- ], ngImport: i0, template: "<div class=\"m-color-scheme\">\n <label class=\"a-label\" for=\"scheme\">{{ '@pry.widget.colorScheme' | i18n }}</label>\n <pry-select\n (ngModelChange)=\"changeColorScheme($event)\"\n [ngModel]=\"scheme$ | async\"\n [itemsAsOption]=\"true\"\n [items]=\"schemes$ | async\"\n id=\"scheme\"\n bindValue=\"id\"\n bindLabel=\"label\"\n ></pry-select>\n</div>\n\n<div class=\"m-color-scheme__display\">\n <div class=\"m-color-scheme__display__item\" *ngFor=\"let colorScheme of schemeColors$ | async; let i = index\">\n <pry-color-picker [ngModel]=\"colorScheme\" (ngModelChange)=\"modifyColorScheme($event, i)\"></pry-color-picker>\n <button\n (click)=\"removeColorFromScheme(i)\"\n class=\"a-btn a-btn--icon-only\"\n title=\"{{ '@pry.widget.removeColor' | i18n }}\"\n >\n <span class=\"u-visually-hidden\">{{ '@pry.widget.removeColor' | i18n }}</span>\n <pry-icon iconSvg=\"trash\"></pry-icon>\n </button>\n </div>\n <button\n (click)=\"addColorToScheme()\"\n class=\"a-btn a-btn--primary a-btn--icon-only\"\n title=\"{{ '@pry.widget.addColor' | i18n }}\"\n >\n <span class=\"u-visually-hidden\">{{ '@pry.widget.addColor' | i18n }}</span>\n <pry-icon iconSvg=\"add\"></pry-icon>\n </button>\n</div>\n", dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i2.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.PryColorPickerComponent, selector: "pry-color-picker" }, { kind: "component", type: i2.PryIconComponent, selector: "pry-icon", inputs: ["color", "iconSvg", "animation", "iconImage", "alt", "width", "height", "classes"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.I18nPipe, name: "i18n" }] }); }
92
+ ], ngImport: i0, template: "<div class=\"m-color-scheme\">\n <label class=\"a-label\" for=\"scheme\">{{ '@pry.widget.colorScheme' | i18n }}</label>\n <pry-select\n (ngModelChange)=\"changeColorScheme($event)\"\n [ngModel]=\"scheme$ | async\"\n [items]=\"schemes$ | async\"\n id=\"scheme\"\n bindValue=\"id\"\n bindLabel=\"label\"\n ></pry-select>\n</div>\n\n<div class=\"m-color-scheme__display\">\n <div class=\"m-color-scheme__display__item\" *ngFor=\"let colorScheme of schemeColors$ | async; let i = index\">\n <pry-color-picker [ngModel]=\"colorScheme\" (ngModelChange)=\"modifyColorScheme($event, i)\"></pry-color-picker>\n <button\n (click)=\"removeColorFromScheme(i)\"\n class=\"a-btn a-btn--icon-only\"\n title=\"{{ '@pry.widget.removeColor' | i18n }}\"\n >\n <span class=\"u-visually-hidden\">{{ '@pry.widget.removeColor' | i18n }}</span>\n <pry-icon iconSvg=\"trash\"></pry-icon>\n </button>\n </div>\n <button\n (click)=\"addColorToScheme()\"\n class=\"a-btn a-btn--primary a-btn--icon-only\"\n title=\"{{ '@pry.widget.addColor' | i18n }}\"\n >\n <span class=\"u-visually-hidden\">{{ '@pry.widget.addColor' | i18n }}</span>\n <pry-icon iconSvg=\"add\"></pry-icon>\n </button>\n</div>\n", dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i2.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.PryColorPickerComponent, selector: "pry-color-picker" }, { kind: "component", type: i2.PryIconComponent, selector: "pry-icon", inputs: ["color", "iconSvg", "animation", "iconImage", "alt", "width", "height", "classes"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.I18nPipe, name: "i18n" }] }); }
93
93
  }
94
94
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PrySchemePickerComponent, decorators: [{
95
95
  type: Component,
@@ -99,6 +99,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
99
99
  useExisting: forwardRef(() => PrySchemePickerComponent),
100
100
  multi: true
101
101
  }
102
- ], template: "<div class=\"m-color-scheme\">\n <label class=\"a-label\" for=\"scheme\">{{ '@pry.widget.colorScheme' | i18n }}</label>\n <pry-select\n (ngModelChange)=\"changeColorScheme($event)\"\n [ngModel]=\"scheme$ | async\"\n [itemsAsOption]=\"true\"\n [items]=\"schemes$ | async\"\n id=\"scheme\"\n bindValue=\"id\"\n bindLabel=\"label\"\n ></pry-select>\n</div>\n\n<div class=\"m-color-scheme__display\">\n <div class=\"m-color-scheme__display__item\" *ngFor=\"let colorScheme of schemeColors$ | async; let i = index\">\n <pry-color-picker [ngModel]=\"colorScheme\" (ngModelChange)=\"modifyColorScheme($event, i)\"></pry-color-picker>\n <button\n (click)=\"removeColorFromScheme(i)\"\n class=\"a-btn a-btn--icon-only\"\n title=\"{{ '@pry.widget.removeColor' | i18n }}\"\n >\n <span class=\"u-visually-hidden\">{{ '@pry.widget.removeColor' | i18n }}</span>\n <pry-icon iconSvg=\"trash\"></pry-icon>\n </button>\n </div>\n <button\n (click)=\"addColorToScheme()\"\n class=\"a-btn a-btn--primary a-btn--icon-only\"\n title=\"{{ '@pry.widget.addColor' | i18n }}\"\n >\n <span class=\"u-visually-hidden\">{{ '@pry.widget.addColor' | i18n }}</span>\n <pry-icon iconSvg=\"add\"></pry-icon>\n </button>\n</div>\n" }]
102
+ ], template: "<div class=\"m-color-scheme\">\n <label class=\"a-label\" for=\"scheme\">{{ '@pry.widget.colorScheme' | i18n }}</label>\n <pry-select\n (ngModelChange)=\"changeColorScheme($event)\"\n [ngModel]=\"scheme$ | async\"\n [items]=\"schemes$ | async\"\n id=\"scheme\"\n bindValue=\"id\"\n bindLabel=\"label\"\n ></pry-select>\n</div>\n\n<div class=\"m-color-scheme__display\">\n <div class=\"m-color-scheme__display__item\" *ngFor=\"let colorScheme of schemeColors$ | async; let i = index\">\n <pry-color-picker [ngModel]=\"colorScheme\" (ngModelChange)=\"modifyColorScheme($event, i)\"></pry-color-picker>\n <button\n (click)=\"removeColorFromScheme(i)\"\n class=\"a-btn a-btn--icon-only\"\n title=\"{{ '@pry.widget.removeColor' | i18n }}\"\n >\n <span class=\"u-visually-hidden\">{{ '@pry.widget.removeColor' | i18n }}</span>\n <pry-icon iconSvg=\"trash\"></pry-icon>\n </button>\n </div>\n <button\n (click)=\"addColorToScheme()\"\n class=\"a-btn a-btn--primary a-btn--icon-only\"\n title=\"{{ '@pry.widget.addColor' | i18n }}\"\n >\n <span class=\"u-visually-hidden\">{{ '@pry.widget.addColor' | i18n }}</span>\n <pry-icon iconSvg=\"add\"></pry-icon>\n </button>\n</div>\n" }]
103
103
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i1.PrySchemeService }, { type: i2.PryI18nService }]; } });
104
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NoZW1lLXBpY2tlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcm92b2x5L2Rhc2hib2FyZC9jb21wb25lbnRzL3NjaGVtZS1waWNrZXIvc2NoZW1lLXBpY2tlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcm92b2x5L2Rhc2hib2FyZC9jb21wb25lbnRzL3NjaGVtZS1waWNrZXIvc2NoZW1lLXBpY2tlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQW9DLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEYsT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXpFLE9BQU8sRUFBRSxlQUFlLEVBQUUsR0FBRyxFQUFjLE1BQU0sTUFBTSxDQUFDOzs7Ozs7O0FBZXhELE1BQU0sT0FBTyx3QkFBd0I7SUFTbkMsWUFDVSxHQUFzQixFQUN0QixhQUErQixFQUMvQixXQUEyQjtRQUYzQixRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQUN0QixrQkFBYSxHQUFiLGFBQWEsQ0FBa0I7UUFDL0IsZ0JBQVcsR0FBWCxXQUFXLENBQWdCO1FBWHJDLGFBQVEsR0FBUSxHQUFHLEVBQUUsR0FBRSxDQUFDLENBQUM7UUFDekIsWUFBTyxHQUFRLEdBQUcsRUFBRSxHQUFFLENBQUMsQ0FBQztRQUN4QixZQUFPLEdBQUcsSUFBSSxlQUFlLENBQVMsU0FBUyxDQUFDLENBQUM7UUFFakQsYUFBUSxHQUFHLElBQUksQ0FBQztRQUNoQixhQUFRLEdBQUcsS0FBSyxDQUFDO1FBUWYsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQ2hELEdBQUcsQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFO1lBQ2QsSUFBSSxZQUFZLEdBQUcsQ0FB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aW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgZm9yd2FyZFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgUHJ5U2NoZW1lU2VydmljZSB9IGZyb20gJy4vc2NoZW1lLnNlcnZpY2UnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBtYXAsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFByeUkxOG5TZXJ2aWNlIH0gZnJvbSAnQHByb3ZvbHkvZGFzaGJvYXJkJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAncHJ5LXNjaGVtZS1waWNrZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vc2NoZW1lLXBpY2tlci5jb21wb25lbnQuaHRtbCcsXG5cbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBQcnlTY2hlbWVQaWNrZXJDb21wb25lbnQpLFxuICAgICAgbXVsdGk6IHRydWVcbiAgICB9XG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgUHJ5U2NoZW1lUGlja2VyQ29tcG9uZW50IGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3IsIEFmdGVyVmlld0luaXQge1xuICBvbkNoYW5nZTogYW55ID0gKCkgPT4ge307XG4gIG9uVG91Y2g6IGFueSA9ICgpID0+IHt9O1xuICBzY2hlbWUkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxzdHJpbmc+KCdQcm92b2x5Jyk7XG4gIHNjaGVtZXMkOiBPYnNlcnZhYmxlPHsgaWQ6IHN0cmluZzsgbGFiZWw6IHN0cmluZyB9W10+O1xuICBpbmhpYmF0ZSA9IHRydWU7XG4gIGRpc2FibGVkID0gZmFsc2U7XG4gIHNjaGVtZUNvbG9ycyQ6IE9ic2VydmFibGU8c3RyaW5nW10+O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgX2NkOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBwcml2YXRlIHNjaGVtZVNlcnZpY2U6IFByeVNjaGVtZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBpMThuU2VydmljZTogUHJ5STE4blNlcnZpY2VcbiAgKSB7XG4gICAgdGhpcy5zY2hlbWVzJCA9IHRoaXMuc2NoZW1lU2VydmljZS5zY2hlbWVJZHMkLnBpcGUoXG4gICAgICBtYXAoKHNjaGVtZXMpID0+IHtcbiAgICAgICAgbGV0IGN1c3RvbU51bWJlciA9IDE7XG4gICAgICAgIHJldHVybiBzY2hlbWVzLm1hcCgoc2NoZW1lLCBpZHgpID0+ICh7XG4gICAgICAgICAgaWQ6IHNjaGVtZSxcbiAgICAgICAgICBsYWJlbDpcbiAgICAgICAgICAgIHNjaGVtZS5pbmRleE9mKCcjJykgPT09IDAgPyB0aGlzLmkxOG5TZXJ2aWNlLmluc3RhbnQoJ0Bwcnkud2lkZ2V0LmN1c3RvbScsIHsgaWQ6IGN1c3RvbU51bWJlcisrIH0pIDogc2NoZW1lXG4gICAgICAgIH0pKTtcbiAgICAgIH0pXG4gICAgKTtcbiAgICB0aGlzLnNjaGVtZUNvbG9ycyQgPSB0aGlzLnNjaGVtZSQucGlwZShtYXAoKHNjaGVtZSkgPT4gdGhpcy5zY2hlbWVTZXJ2aWNlLmdldFNjaGVtZUNvbG9ycyhzY2hlbWUpKSk7XG4gIH1cblxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLm9uQ2hhbmdlID0gZm47XG4gIH1cblxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7XG4gICAgdGhpcy5vblRvdWNoID0gZm47XG4gIH1cblxuICAvLyBEZWZpbmUgd2hhdCBzaG91bGQgaGFwcGVuIGluIHRoaXMgY29tcG9uZW50LCBpZiBzb21ldGhpbmcgY2hhbmdlcyBvdXRzaWRlXG4gIHdyaXRlVmFsdWUoc2NoZW1lOiBzdHJpbmcpIHtcbiAgICBpZiAodGhpcy5zY2hlbWUkLmdldFZhbHVlKCkgIT09IHNjaGVtZSAmJiAhdGhpcy5pbmhpYmF0ZSkge1xuICAgICAgdGhpcy5zY2hlbWUkLm5leHQoc2NoZW1lKTtcbiAgICAgIHRoaXMub25DaGFuZ2UodGhpcy5zY2hlbWUkLmdldFZhbHVlKCkpO1xuICAgICAgdGhpcy5vblRvdWNoKCk7XG4gICAgICB0aGlzLl9jZC5tYXJrRm9yQ2hlY2soKTtcbiAgICAgIHRoaXMuc2NoZW1lU2VydmljZS5hc3NlcnRTY2hlbWUodGhpcy5zY2hlbWUkLmdldFZhbHVlKCkpO1xuICAgICAgdGhpcy50ZW1wb3JhcnlEaXNhYmxlKCk7XG4gICAgfVxuICB9XG5cbiAgc2V0RGlzYWJsZWRTdGF0ZShpc0Rpc2FibGVkOiBib29sZWFuKSB7XG4gICAgdGhpcy5kaXNhYmxlZCA9IGlzRGlzYWJsZWQ7XG4gICAgdGhpcy5fY2QubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICB0ZW1wb3JhcnlEaXNhYmxlKCkge1xuICAgIHRoaXMuaW5oaWJhdGUgPSB0cnVlO1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy5pbmhpYmF0ZSA9IGZhbHNlO1xuICAgIH0sIDEwMCk7XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgdGhpcy50ZW1wb3JhcnlEaXNhYmxlKCk7XG4gIH1cblxuICBjaGFuZ2VDb2xvclNjaGVtZSgkZXZlbnQ6IGFueSkge1xuICAgIGlmICgkZXZlbnQgPT09ICcjJykge1xuICAgICAgdGhpcy53cml0ZVZhbHVlKHRoaXMuc2NoZW1lU2VydmljZS5nZXRTY2hlbWVDb2xvcnModGhpcy5zY2hlbWVTZXJ2aWNlLmdldERlZmF1bHRTY2hlbWUoKSkuam9pbignLCcpKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy53cml0ZVZhbHVlKCRldmVudCk7XG4gICAgfVxuICB9XG5cbiAgbW9kaWZ5Q29sb3JTY2hlbWUoJGV2ZW50OiBzdHJpbmcsIGluZGV4OiBudW1iZXIpIHtcbiAgICBpZiAoIXRoaXMuaW5oaWJhdGUpIHtcbiAgICAgIGNvbnN0IG5ld1NjaGVtZSA9IFsuLi50aGlzLnNjaGVtZVNlcnZpY2UuZ2V0U2NoZW1lQ29sb3JzKHRoaXMuc2NoZW1lJC5nZXRWYWx1ZSgpKV07XG4gICAgICBuZXdTY2hlbWVbaW5kZXhdID0gJGV2ZW50O1xuICAgICAgdGhpcy53cml0ZVZhbHVlKG5ld1NjaGVtZS5qb2luKCcsJykpO1xuICAgIH1cbiAgfVxuXG4gIGFkZENvbG9yVG9TY2hlbWUoKSB7XG4gICAgdGhpcy53cml0ZVZhbHVlKFxuICAgICAgdGhpcy5zY2hlbWVTZXJ2aWNlXG4gICAgICAgIC5nZXRTY2hlbWVDb2xvcnModGhpcy5zY2hlbWUkLmdldFZhbHVlKCkpXG4gICAgICAgIC5jb25jYXQoJyMnICsgdGhpcy5zY2hlbWVTZXJ2aWNlLnJhbmRvbUNvbG9yKCkpXG4gICAgICAgIC5qb2luKCcsJylcbiAgICApO1xuICB9XG5cbiAgcmVtb3ZlQ29sb3JGcm9tU2NoZW1lKGluZGV4OiBudW1iZXIpIHtcbiAgICBjb25zdCBuZXdTY2hlbWUgPSBbLi4udGhpcy5zY2hlbWVTZXJ2aWNlLmdldFNjaGVtZUNvbG9ycyh0aGlzLnNjaGVtZSQuZ2V0VmFsdWUoKSldO1xuICAgIG5ld1NjaGVtZS5zcGxpY2UoaW5kZXgsIDEpO1xuICAgIHRoaXMud3JpdGVWYWx1ZShuZXdTY2hlbWUuam9pbignLCcpKTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cIm0tY29sb3Itc2NoZW1lXCI+XG4gIDxsYWJlbCBjbGFzcz1cImEtbGFiZWxcIiBmb3I9XCJzY2hlbWVcIj57eyAnQHByeS53aWRnZXQuY29sb3JTY2hlbWUnIHwgaTE4biB9fTwvbGFiZWw+XG4gIDxwcnktc2VsZWN0XG4gICAgKG5nTW9kZWxDaGFuZ2UpPVwiY2hhbmdlQ29sb3JTY2hlbWUoJGV2ZW50KVwiXG4gICAgW25nTW9kZWxdPVwic2NoZW1lJCB8IGFzeW5jXCJcbiAgICBbaXRlbXNBc09wdGlvbl09XCJ0cnVlXCJcbiAgICBbaXRlbXNdPVwic2NoZW1lcyQgfCBhc3luY1wiXG4gICAgaWQ9XCJzY2hlbWVcIlxuICAgIGJpbmRWYWx1ZT1cImlkXCJcbiAgICBiaW5kTGFiZWw9XCJsYWJlbFwiXG4gID48L3ByeS1zZWxlY3Q+XG48L2Rpdj5cblxuPGRpdiBjbGFzcz1cIm0tY29sb3Itc2NoZW1lX19kaXNwbGF5XCI+XG4gIDxkaXYgY2xhc3M9XCJtLWNvbG9yLXNjaGVtZV9fZGlzcGxheV9faXRlbVwiICpuZ0Zvcj1cImxldCBjb2xvclNjaGVtZSBvZiBzY2hlbWVDb2xvcnMkIHwgYXN5bmM7IGxldCBpID0gaW5kZXhcIj5cbiAgICA8cHJ5LWNvbG9yLXBpY2tlciBbbmdNb2RlbF09XCJjb2xvclNjaGVtZVwiIChuZ01vZGVsQ2hhbmdlKT1cIm1vZGlmeUNvbG9yU2NoZW1lKCRldmVudCwgaSlcIj48L3ByeS1jb2xvci1waWNrZXI+XG4gICAgPGJ1dHRvblxuICAgICAgKGNsaWNrKT1cInJlbW92ZUNvbG9yRnJvbVNjaGVtZShpKVwiXG4gICAgICBjbGFzcz1cImEtYnRuIGEtYnRuLS1pY29uLW9ubHlcIlxuICAgICAgdGl0bGU9XCJ7eyAnQHByeS53aWRnZXQucmVtb3ZlQ29sb3InIHwgaTE4biB9fVwiXG4gICAgPlxuICAgICAgPHNwYW4gY2xhc3M9XCJ1LXZpc3VhbGx5LWhpZGRlblwiPnt7ICdAcHJ5LndpZGdldC5yZW1vdmVDb2xvcicgfCBpMThuIH19PC9zcGFuPlxuICAgICAgPHByeS1pY29uIGljb25Tdmc9XCJ0cmFzaFwiPjwvcHJ5LWljb24+XG4gICAgPC9idXR0b24+XG4gIDwvZGl2PlxuICA8YnV0dG9uXG4gICAgKGNsaWNrKT1cImFkZENvbG9yVG9TY2hlbWUoKVwiXG4gICAgY2xhc3M9XCJhLWJ0biBhLWJ0bi0tcHJpbWFyeSBhLWJ0bi0taWNvbi1vbmx5XCJcbiAgICB0aXRsZT1cInt7ICdAcHJ5LndpZGdldC5hZGRDb2xvcicgfCBpMThuIH19XCJcbiAgPlxuICAgIDxzcGFuIGNsYXNzPVwidS12aXN1YWxseS1oaWRkZW5cIj57eyAnQHByeS53aWRnZXQuYWRkQ29sb3InIHwgaTE4biB9fTwvc3Bhbj5cbiAgICA8cHJ5LWljb24gaWNvblN2Zz1cImFkZFwiPjwvcHJ5LWljb24+XG4gIDwvYnV0dG9uPlxuPC9kaXY+XG4iXX0=
104
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NoZW1lLXBpY2tlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcm92b2x5L2Rhc2hib2FyZC9jb21wb25lbnRzL3NjaGVtZS1waWNrZXIvc2NoZW1lLXBpY2tlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcm92b2x5L2Rhc2hib2FyZC9jb21wb25lbnRzL3NjaGVtZS1waWNrZXIvc2NoZW1lLXBpY2tlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQW9DLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEYsT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXpFLE9BQU8sRUFBRSxlQUFlLEVBQUUsR0FBRyxFQUFjLE1BQU0sTUFBTSxDQUFDOzs7Ozs7O0FBZXhELE1BQU0sT0FBTyx3QkFBd0I7SUFTbkMsWUFDVSxHQUFzQixFQUN0QixhQUErQixFQUMvQixXQUEyQjtRQUYzQixRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQUN0QixrQkFBYSxHQUFiLGFBQWEsQ0FBa0I7UUFDL0IsZ0JBQVcsR0FBWCxXQUFXLENBQWdCO1FBWHJDLGFBQVEsR0FBUSxHQUFHLEVBQUUsR0FBRSxDQUFDLENBQUM7UUFDekIsWUFBTyxHQUFRLEdBQUcsRUFBRSxHQUFFLENBQUMsQ0FBQztRQUN4QixZQUFPLEdBQUcsSUFBSSxlQUFlLENBQVMsU0FBUyxDQUFDLENBQUM7UUFFakQsYUFBUSxHQUFHLElBQUksQ0FBQztRQUNoQixhQUFRLEdBQUcsS0FBSyxDQUFDO1FBUWYsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQ2hELEdBQUcsQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFO1lBQ2QsSUFBSSxZQUFZLEdBQUcsQ0FB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bXBvcnQgeyBBZnRlclZpZXdJbml0LCBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBmb3J3YXJkUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBQcnlTY2hlbWVTZXJ2aWNlIH0gZnJvbSAnLi9zY2hlbWUuc2VydmljZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIG1hcCwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgUHJ5STE4blNlcnZpY2UgfSBmcm9tICdAcHJvdm9seS9kYXNoYm9hcmQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdwcnktc2NoZW1lLXBpY2tlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9zY2hlbWUtcGlja2VyLmNvbXBvbmVudC5odG1sJyxcblxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFByeVNjaGVtZVBpY2tlckNvbXBvbmVudCksXG4gICAgICBtdWx0aTogdHJ1ZVxuICAgIH1cbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBQcnlTY2hlbWVQaWNrZXJDb21wb25lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciwgQWZ0ZXJWaWV3SW5pdCB7XG4gIG9uQ2hhbmdlOiBhbnkgPSAoKSA9PiB7fTtcbiAgb25Ub3VjaDogYW55ID0gKCkgPT4ge307XG4gIHNjaGVtZSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHN0cmluZz4oJ1Byb3ZvbHknKTtcbiAgc2NoZW1lcyQ6IE9ic2VydmFibGU8eyBpZDogc3RyaW5nOyBsYWJlbDogc3RyaW5nIH1bXT47XG4gIGluaGliYXRlID0gdHJ1ZTtcbiAgZGlzYWJsZWQgPSBmYWxzZTtcbiAgc2NoZW1lQ29sb3JzJDogT2JzZXJ2YWJsZTxzdHJpbmdbXT47XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBfY2Q6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHByaXZhdGUgc2NoZW1lU2VydmljZTogUHJ5U2NoZW1lU2VydmljZSxcbiAgICBwcml2YXRlIGkxOG5TZXJ2aWNlOiBQcnlJMThuU2VydmljZVxuICApIHtcbiAgICB0aGlzLnNjaGVtZXMkID0gdGhpcy5zY2hlbWVTZXJ2aWNlLnNjaGVtZUlkcyQucGlwZShcbiAgICAgIG1hcCgoc2NoZW1lcykgPT4ge1xuICAgICAgICBsZXQgY3VzdG9tTnVtYmVyID0gMTtcbiAgICAgICAgcmV0dXJuIHNjaGVtZXMubWFwKChzY2hlbWUsIGlkeCkgPT4gKHtcbiAgICAgICAgICBpZDogc2NoZW1lLFxuICAgICAgICAgIGxhYmVsOlxuICAgICAgICAgICAgc2NoZW1lLmluZGV4T2YoJyMnKSA9PT0gMCA/IHRoaXMuaTE4blNlcnZpY2UuaW5zdGFudCgnQHByeS53aWRnZXQuY3VzdG9tJywgeyBpZDogY3VzdG9tTnVtYmVyKysgfSkgOiBzY2hlbWVcbiAgICAgICAgfSkpO1xuICAgICAgfSlcbiAgICApO1xuICAgIHRoaXMuc2NoZW1lQ29sb3JzJCA9IHRoaXMuc2NoZW1lJC5waXBlKG1hcCgoc2NoZW1lKSA9PiB0aGlzLnNjaGVtZVNlcnZpY2UuZ2V0U2NoZW1lQ29sb3JzKHNjaGVtZSkpKTtcbiAgfVxuXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcbiAgfVxuXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLm9uVG91Y2ggPSBmbjtcbiAgfVxuXG4gIC8vIERlZmluZSB3aGF0IHNob3VsZCBoYXBwZW4gaW4gdGhpcyBjb21wb25lbnQsIGlmIHNvbWV0aGluZyBjaGFuZ2VzIG91dHNpZGVcbiAgd3JpdGVWYWx1ZShzY2hlbWU6IHN0cmluZykge1xuICAgIGlmICh0aGlzLnNjaGVtZSQuZ2V0VmFsdWUoKSAhPT0gc2NoZW1lICYmICF0aGlzLmluaGliYXRlKSB7XG4gICAgICB0aGlzLnNjaGVtZSQubmV4dChzY2hlbWUpO1xuICAgICAgdGhpcy5vbkNoYW5nZSh0aGlzLnNjaGVtZSQuZ2V0VmFsdWUoKSk7XG4gICAgICB0aGlzLm9uVG91Y2goKTtcbiAgICAgIHRoaXMuX2NkLm1hcmtGb3JDaGVjaygpO1xuICAgICAgdGhpcy5zY2hlbWVTZXJ2aWNlLmFzc2VydFNjaGVtZSh0aGlzLnNjaGVtZSQuZ2V0VmFsdWUoKSk7XG4gICAgICB0aGlzLnRlbXBvcmFyeURpc2FibGUoKTtcbiAgICB9XG4gIH1cblxuICBzZXREaXNhYmxlZFN0YXRlKGlzRGlzYWJsZWQ6IGJvb2xlYW4pIHtcbiAgICB0aGlzLmRpc2FibGVkID0gaXNEaXNhYmxlZDtcbiAgICB0aGlzLl9jZC5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuXG4gIHRlbXBvcmFyeURpc2FibGUoKSB7XG4gICAgdGhpcy5pbmhpYmF0ZSA9IHRydWU7XG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLmluaGliYXRlID0gZmFsc2U7XG4gICAgfSwgMTAwKTtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnRlbXBvcmFyeURpc2FibGUoKTtcbiAgfVxuXG4gIGNoYW5nZUNvbG9yU2NoZW1lKCRldmVudDogYW55KSB7XG4gICAgaWYgKCRldmVudCA9PT0gJyMnKSB7XG4gICAgICB0aGlzLndyaXRlVmFsdWUodGhpcy5zY2hlbWVTZXJ2aWNlLmdldFNjaGVtZUNvbG9ycyh0aGlzLnNjaGVtZVNlcnZpY2UuZ2V0RGVmYXVsdFNjaGVtZSgpKS5qb2luKCcsJykpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLndyaXRlVmFsdWUoJGV2ZW50KTtcbiAgICB9XG4gIH1cblxuICBtb2RpZnlDb2xvclNjaGVtZSgkZXZlbnQ6IHN0cmluZywgaW5kZXg6IG51bWJlcikge1xuICAgIGlmICghdGhpcy5pbmhpYmF0ZSkge1xuICAgICAgY29uc3QgbmV3U2NoZW1lID0gWy4uLnRoaXMuc2NoZW1lU2VydmljZS5nZXRTY2hlbWVDb2xvcnModGhpcy5zY2hlbWUkLmdldFZhbHVlKCkpXTtcbiAgICAgIG5ld1NjaGVtZVtpbmRleF0gPSAkZXZlbnQ7XG4gICAgICB0aGlzLndyaXRlVmFsdWUobmV3U2NoZW1lLmpvaW4oJywnKSk7XG4gICAgfVxuICB9XG5cbiAgYWRkQ29sb3JUb1NjaGVtZSgpIHtcbiAgICB0aGlzLndyaXRlVmFsdWUoXG4gICAgICB0aGlzLnNjaGVtZVNlcnZpY2VcbiAgICAgICAgLmdldFNjaGVtZUNvbG9ycyh0aGlzLnNjaGVtZSQuZ2V0VmFsdWUoKSlcbiAgICAgICAgLmNvbmNhdCgnIycgKyB0aGlzLnNjaGVtZVNlcnZpY2UucmFuZG9tQ29sb3IoKSlcbiAgICAgICAgLmpvaW4oJywnKVxuICAgICk7XG4gIH1cblxuICByZW1vdmVDb2xvckZyb21TY2hlbWUoaW5kZXg6IG51bWJlcikge1xuICAgIGNvbnN0IG5ld1NjaGVtZSA9IFsuLi50aGlzLnNjaGVtZVNlcnZpY2UuZ2V0U2NoZW1lQ29sb3JzKHRoaXMuc2NoZW1lJC5nZXRWYWx1ZSgpKV07XG4gICAgbmV3U2NoZW1lLnNwbGljZShpbmRleCwgMSk7XG4gICAgdGhpcy53cml0ZVZhbHVlKG5ld1NjaGVtZS5qb2luKCcsJykpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwibS1jb2xvci1zY2hlbWVcIj5cbiAgPGxhYmVsIGNsYXNzPVwiYS1sYWJlbFwiIGZvcj1cInNjaGVtZVwiPnt7ICdAcHJ5LndpZGdldC5jb2xvclNjaGVtZScgfCBpMThuIH19PC9sYWJlbD5cbiAgPHByeS1zZWxlY3RcbiAgICAobmdNb2RlbENoYW5nZSk9XCJjaGFuZ2VDb2xvclNjaGVtZSgkZXZlbnQpXCJcbiAgICBbbmdNb2RlbF09XCJzY2hlbWUkIHwgYXN5bmNcIlxuICAgIFtpdGVtc109XCJzY2hlbWVzJCB8IGFzeW5jXCJcbiAgICBpZD1cInNjaGVtZVwiXG4gICAgYmluZFZhbHVlPVwiaWRcIlxuICAgIGJpbmRMYWJlbD1cImxhYmVsXCJcbiAgPjwvcHJ5LXNlbGVjdD5cbjwvZGl2PlxuXG48ZGl2IGNsYXNzPVwibS1jb2xvci1zY2hlbWVfX2Rpc3BsYXlcIj5cbiAgPGRpdiBjbGFzcz1cIm0tY29sb3Itc2NoZW1lX19kaXNwbGF5X19pdGVtXCIgKm5nRm9yPVwibGV0IGNvbG9yU2NoZW1lIG9mIHNjaGVtZUNvbG9ycyQgfCBhc3luYzsgbGV0IGkgPSBpbmRleFwiPlxuICAgIDxwcnktY29sb3ItcGlja2VyIFtuZ01vZGVsXT1cImNvbG9yU2NoZW1lXCIgKG5nTW9kZWxDaGFuZ2UpPVwibW9kaWZ5Q29sb3JTY2hlbWUoJGV2ZW50LCBpKVwiPjwvcHJ5LWNvbG9yLXBpY2tlcj5cbiAgICA8YnV0dG9uXG4gICAgICAoY2xpY2spPVwicmVtb3ZlQ29sb3JGcm9tU2NoZW1lKGkpXCJcbiAgICAgIGNsYXNzPVwiYS1idG4gYS1idG4tLWljb24tb25seVwiXG4gICAgICB0aXRsZT1cInt7ICdAcHJ5LndpZGdldC5yZW1vdmVDb2xvcicgfCBpMThuIH19XCJcbiAgICA+XG4gICAgICA8c3BhbiBjbGFzcz1cInUtdmlzdWFsbHktaGlkZGVuXCI+e3sgJ0Bwcnkud2lkZ2V0LnJlbW92ZUNvbG9yJyB8IGkxOG4gfX08L3NwYW4+XG4gICAgICA8cHJ5LWljb24gaWNvblN2Zz1cInRyYXNoXCI+PC9wcnktaWNvbj5cbiAgICA8L2J1dHRvbj5cbiAgPC9kaXY+XG4gIDxidXR0b25cbiAgICAoY2xpY2spPVwiYWRkQ29sb3JUb1NjaGVtZSgpXCJcbiAgICBjbGFzcz1cImEtYnRuIGEtYnRuLS1wcmltYXJ5IGEtYnRuLS1pY29uLW9ubHlcIlxuICAgIHRpdGxlPVwie3sgJ0Bwcnkud2lkZ2V0LmFkZENvbG9yJyB8IGkxOG4gfX1cIlxuICA+XG4gICAgPHNwYW4gY2xhc3M9XCJ1LXZpc3VhbGx5LWhpZGRlblwiPnt7ICdAcHJ5LndpZGdldC5hZGRDb2xvcicgfCBpMThuIH19PC9zcGFuPlxuICAgIDxwcnktaWNvbiBpY29uU3ZnPVwiYWRkXCI+PC9wcnktaWNvbj5cbiAgPC9idXR0b24+XG48L2Rpdj5cbiJdfQ==
@@ -4,8 +4,8 @@ import { map } from 'rxjs';
4
4
  import * as i0 from "@angular/core";
5
5
  import * as i1 from "@ngrx/store";
6
6
  import * as i2 from "@angular/common";
7
- import * as i3 from "../../style/css.component";
8
- import * as i4 from "@provoly/dashboard";
7
+ import * as i3 from "@provoly/dashboard";
8
+ import * as i4 from "../../style/css.component";
9
9
  import * as i5 from "@provoly/dashboard/components/sinceDate";
10
10
  export class PryDatasetCardComponent {
11
11
  constructor(store) {
@@ -28,14 +28,14 @@ export class PryDatasetCardComponent {
28
28
  this.consult.emit(this.dataset);
29
29
  }
30
30
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PryDatasetCardComponent, deps: [{ token: i1.Store }], target: i0.ɵɵFactoryTarget.Component }); }
31
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: PryDatasetCardComponent, selector: "pry-dataset-card", inputs: { dataset: "dataset" }, outputs: { consult: "consult" }, ngImport: i0, template: "<pry-dataset-css></pry-dataset-css>\n<div class=\"o-pry-dataset-card\">\n <div class=\"o-pry-dataset-card__header\">\n <img\n alt=\"\"\n [height]=\"25\"\n [width]=\"25\"\n [src]=\"dataset.id | translateId : { type: 'datasource', output: 'icon' } | async\"\n />\n <div class=\"a-h4 dataset-name\">{{ dataset.name }}</div>\n </div>\n <div class=\"o-pry-dataset-card__txt\">\n <div class=\"a-p\">\n <ng-container *ngIf=\"activeVersion$ | async; else noActiveVersion\">\n <p class=\"a-p -date\">{{ '@pry.dataset.since_day' | i18n }} {{ (activeVersion$ | async)! | sinceDate }}</p>\n </ng-container>\n <ng-template #noActiveVersion>\n <span> {{ '@pry.dataset.noActiveVersion' | i18n }}</span>\n </ng-template>\n <div class=\"o-pry-dataset-card__description-container\">\n <span class=\"description\">{{ truncateDescription(dataset.description, 100) }}</span>\n <div class=\"description-tooltip\">{{ dataset.description }}</div>\n </div>\n </div>\n </div>\n\n <div class=\"o-pry-dataset-card__footer\">\n <button class=\"a-btn\" (click)=\"goToDetailView()\">{{ '@pry.dataset.consult' | i18n }}</button>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.PryDatasetCssComponent, selector: "pry-dataset-css" }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: i4.TranslateIdPipe, name: "translateId" }, { kind: "pipe", type: i4.I18nPipe, name: "i18n" }, { kind: "pipe", type: i5.PrySinceDatePipe, name: "sinceDate" }] }); }
31
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: PryDatasetCardComponent, selector: "pry-dataset-card", inputs: { dataset: "dataset" }, outputs: { consult: "consult" }, ngImport: i0, template: "<pry-dataset-css></pry-dataset-css>\n<div class=\"o-pry-dataset-card\">\n <div class=\"o-pry-dataset-card__header\">\n <img\n alt=\"\"\n [height]=\"25\"\n [width]=\"25\"\n [src]=\"dataset.id | translateId : { type: 'datasource', output: 'icon' } | async\"\n />\n <div class=\"a-h4 dataset-name\">{{ dataset.name }}</div>\n </div>\n <div class=\"o-pry-dataset-card__txt\">\n <div class=\"a-p\">\n <ng-container *ngIf=\"activeVersion$ | async; else noActiveVersion\">\n <p class=\"a-p -date\">{{ '@pry.dataset.since_day' | i18n }} {{ (activeVersion$ | async)! | sinceDate }}</p>\n </ng-container>\n <ng-template #noActiveVersion>\n <span> {{ '@pry.dataset.noActiveVersion' | i18n }}</span>\n </ng-template>\n <div class=\"o-pry-dataset-card__description-container\" ellipsis textElementSelector=\".description\">\n <div class=\"description\">{{ truncateDescription(dataset.description, 100) }}</div>\n </div>\n </div>\n </div>\n\n <div class=\"o-pry-dataset-card__footer\">\n <button class=\"a-btn\" (click)=\"goToDetailView()\">{{ '@pry.dataset.consult' | i18n }}</button>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.EllipsisDirective, selector: "[ellipsis]", inputs: ["textElementSelector"] }, { kind: "component", type: i4.PryDatasetCssComponent, selector: "pry-dataset-css" }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: i3.TranslateIdPipe, name: "translateId" }, { kind: "pipe", type: i3.I18nPipe, name: "i18n" }, { kind: "pipe", type: i5.PrySinceDatePipe, name: "sinceDate" }] }); }
32
32
  }
33
33
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PryDatasetCardComponent, decorators: [{
34
34
  type: Component,
35
- args: [{ selector: 'pry-dataset-card', template: "<pry-dataset-css></pry-dataset-css>\n<div class=\"o-pry-dataset-card\">\n <div class=\"o-pry-dataset-card__header\">\n <img\n alt=\"\"\n [height]=\"25\"\n [width]=\"25\"\n [src]=\"dataset.id | translateId : { type: 'datasource', output: 'icon' } | async\"\n />\n <div class=\"a-h4 dataset-name\">{{ dataset.name }}</div>\n </div>\n <div class=\"o-pry-dataset-card__txt\">\n <div class=\"a-p\">\n <ng-container *ngIf=\"activeVersion$ | async; else noActiveVersion\">\n <p class=\"a-p -date\">{{ '@pry.dataset.since_day' | i18n }} {{ (activeVersion$ | async)! | sinceDate }}</p>\n </ng-container>\n <ng-template #noActiveVersion>\n <span> {{ '@pry.dataset.noActiveVersion' | i18n }}</span>\n </ng-template>\n <div class=\"o-pry-dataset-card__description-container\">\n <span class=\"description\">{{ truncateDescription(dataset.description, 100) }}</span>\n <div class=\"description-tooltip\">{{ dataset.description }}</div>\n </div>\n </div>\n </div>\n\n <div class=\"o-pry-dataset-card__footer\">\n <button class=\"a-btn\" (click)=\"goToDetailView()\">{{ '@pry.dataset.consult' | i18n }}</button>\n </div>\n</div>\n" }]
35
+ args: [{ selector: 'pry-dataset-card', template: "<pry-dataset-css></pry-dataset-css>\n<div class=\"o-pry-dataset-card\">\n <div class=\"o-pry-dataset-card__header\">\n <img\n alt=\"\"\n [height]=\"25\"\n [width]=\"25\"\n [src]=\"dataset.id | translateId : { type: 'datasource', output: 'icon' } | async\"\n />\n <div class=\"a-h4 dataset-name\">{{ dataset.name }}</div>\n </div>\n <div class=\"o-pry-dataset-card__txt\">\n <div class=\"a-p\">\n <ng-container *ngIf=\"activeVersion$ | async; else noActiveVersion\">\n <p class=\"a-p -date\">{{ '@pry.dataset.since_day' | i18n }} {{ (activeVersion$ | async)! | sinceDate }}</p>\n </ng-container>\n <ng-template #noActiveVersion>\n <span> {{ '@pry.dataset.noActiveVersion' | i18n }}</span>\n </ng-template>\n <div class=\"o-pry-dataset-card__description-container\" ellipsis textElementSelector=\".description\">\n <div class=\"description\">{{ truncateDescription(dataset.description, 100) }}</div>\n </div>\n </div>\n </div>\n\n <div class=\"o-pry-dataset-card__footer\">\n <button class=\"a-btn\" (click)=\"goToDetailView()\">{{ '@pry.dataset.consult' | i18n }}</button>\n </div>\n</div>\n" }]
36
36
  }], ctorParameters: function () { return [{ type: i1.Store }]; }, propDecorators: { dataset: [{
37
37
  type: Input
38
38
  }], consult: [{
39
39
  type: Output
40
40
  }] } });
41
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YXNldC1jYXJkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Byb3ZvbHkvZGFzaGJvYXJkL2RhdGFzZXQvY29tcG9uZW50cy9kYXRhc2V0LWNhcmQvZGF0YXNldC1jYXJkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Byb3ZvbHkvZGFzaGJvYXJkL2RhdGFzZXQvY29tcG9uZW50cy9kYXRhc2V0LWNhcmQvZGF0YXNldC1jYXJkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBb0IsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pGLE9BQU8sRUFBMkIsbUJBQW1CLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNsRixPQUFPLEVBQUUsR0FBRyxFQUFjLE1BQU0sTUFBTSxDQUFDOzs7Ozs7O0FBT3ZDLE1BQU0sT0FBTyx1QkFBdUI7SUFLbEMsWUFBb0IsS0FBWTtRQUFaLFVBQUssR0FBTCxLQUFLLENBQU87UUFIdEIsWUFBTyxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7SUFHYixDQUFDO0lBQ3BDLGtCQUFrQjtRQUNoQixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLEtBQUs7YUFDL0IsTUFBTSxDQUFDLG1CQUFtQixDQUFDLHVCQUF1QixDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUM7YUFDcEUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLEdBQUcsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN0RSxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQzlDLEdBQUcsQ0FDRCxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQ1gsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxPQUFPLEdBQUcsRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLEtBQUssS0FBSyxRQUFRLENBQUMsRUFBRSxZQUFZLENBQ2pILENBQ0YsQ0FBQztJQUNKLENBQUM7SUFDRCxtQkFBbUIsQ0FBQyxXQUErQixFQUFFLFNBQWlCO1FBQ3BFLElBQUksV0FBVyxJQUFJLFdBQVcsQ0FBQyxNQUFNLEdBQUcsU0FBUyxFQUFFO1lBQ2pELE9BQU8sV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsU0FBUyxDQUFDLEdBQUcsS0FBSyxDQUFDO1NBQ2hEO1FBQ0QsT0FBZSxXQUFXLENBQUM7SUFDN0IsQ0FBQztJQUNELGNBQWM7UUFDWixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDbEMsQ0FBQzsrR0F6QlUsdUJBQXVCO21HQUF2Qix1QkFBdUIseUhDVHBDLHFzQ0E4QkE7OzRGRHJCYSx1QkFBdUI7a0JBSm5DLFNBQVM7K0JBQ0Usa0JBQWtCOzRGQUluQixPQUFPO3NCQUFmLEtBQUs7Z0JBQ0ksT0FBTztzQkFBaEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyQ29udGVudEluaXQsIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEYXRhc2V0LCBEYXRhc2V0VmVyc2lvbiwgRGF0YVNvdXJjZVNlbGVjdG9ycyB9IGZyb20gJ0Bwcm92b2x5L2Rhc2hib2FyZCc7XG5pbXBvcnQgeyBtYXAsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFN0b3JlIH0gZnJvbSAnQG5ncngvc3RvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdwcnktZGF0YXNldC1jYXJkJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2RhdGFzZXQtY2FyZC5jb21wb25lbnQuaHRtbCdcbn0pXG5leHBvcnQgY2xhc3MgUHJ5RGF0YXNldENhcmRDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0ICB7XG4gIEBJbnB1dCgpIGRhdGFzZXQhOiBEYXRhc2V0O1xuICBAT3V0cHV0KCkgY29uc3VsdCA9IG5ldyBFdmVudEVtaXR0ZXI8RGF0YXNldD4oKTtcbiAgZGF0YXNldFZlcnNpb25zJCE6IE9ic2VydmFibGU8RGF0YXNldFZlcnNpb25bXT47XG4gIGFjdGl2ZVZlcnNpb24kITogT2JzZXJ2YWJsZTxzdHJpbmcgfCB1bmRlZmluZWQ+O1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHN0b3JlOiBTdG9yZSkge31cbiAgbmdBZnRlckNvbnRlbnRJbml0ICAoKSB7XG4gICAgdGhpcy5kYXRhc2V0VmVyc2lvbnMkID0gdGhpcy5zdG9yZVxuICAgICAgLnNlbGVjdChEYXRhU291cmNlU2VsZWN0b3JzLm1hdGNoaW5nRGF0YXNldFZlcnNpb25zKHRoaXMuZGF0YXNldC5pZCkpXG4gICAgICAucGlwZShtYXAoKHJlcykgPT4gWy4uLnJlc10uc29ydCgoYSwgYikgPT4gYi52ZXJzaW9uIC0gYS52ZXJzaW9uKSkpO1xuICAgIHRoaXMuYWN0aXZlVmVyc2lvbiQgPSB0aGlzLmRhdGFzZXRWZXJzaW9ucyQucGlwZShcbiAgICAgIG1hcChcbiAgICAgICAgKHZlcnNpb25zKSA9PlxuICAgICAgICAgIHZlcnNpb25zLnNvcnQoKHYxLCB2MikgPT4gdjIudmVyc2lvbiAtIHYxLnZlcnNpb24pLmZpbmQoKHZlcnNpb24pID0+IHZlcnNpb24uc3RhdGUgPT09ICdBQ1RJVkUnKT8ubGFzdE1vZGlmaWVkXG4gICAgICApXG4gICAgKTtcbiAgfVxuICB0cnVuY2F0ZURlc2NyaXB0aW9uKGRlc2NyaXB0aW9uOiBzdHJpbmcgfCB1bmRlZmluZWQsIG1heExlbmd0aDogbnVtYmVyKTogc3RyaW5nIHtcbiAgICBpZiAoZGVzY3JpcHRpb24gJiYgZGVzY3JpcHRpb24ubGVuZ3RoID4gbWF4TGVuZ3RoKSB7XG4gICAgICByZXR1cm4gZGVzY3JpcHRpb24uc2xpY2UoMCwgbWF4TGVuZ3RoKSArICcuLi4nO1xuICAgIH1cbiAgICByZXR1cm4gPHN0cmluZz5kZXNjcmlwdGlvbjtcbiAgfVxuICBnb1RvRGV0YWlsVmlldygpIHtcbiAgICB0aGlzLmNvbnN1bHQuZW1pdCh0aGlzLmRhdGFzZXQpO1xuICB9XG59XG4iLCI8cHJ5LWRhdGFzZXQtY3NzPjwvcHJ5LWRhdGFzZXQtY3NzPlxuPGRpdiBjbGFzcz1cIm8tcHJ5LWRhdGFzZXQtY2FyZFwiPlxuICA8ZGl2IGNsYXNzPVwiby1wcnktZGF0YXNldC1jYXJkX19oZWFkZXJcIj5cbiAgICA8aW1nXG4gICAgICBhbHQ9XCJcIlxuICAgICAgW2hlaWdodF09XCIyNVwiXG4gICAgICBbd2lkdGhdPVwiMjVcIlxuICAgICAgW3NyY109XCJkYXRhc2V0LmlkIHwgdHJhbnNsYXRlSWQgOiB7IHR5cGU6ICdkYXRhc291cmNlJywgb3V0cHV0OiAnaWNvbicgfSB8IGFzeW5jXCJcbiAgICAvPlxuICAgIDxkaXYgY2xhc3M9XCJhLWg0IGRhdGFzZXQtbmFtZVwiPnt7IGRhdGFzZXQubmFtZSB9fTwvZGl2PlxuICA8L2Rpdj5cbiAgPGRpdiBjbGFzcz1cIm8tcHJ5LWRhdGFzZXQtY2FyZF9fdHh0XCI+XG4gICAgPGRpdiBjbGFzcz1cImEtcFwiPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImFjdGl2ZVZlcnNpb24kIHwgYXN5bmM7IGVsc2Ugbm9BY3RpdmVWZXJzaW9uXCI+XG4gICAgICAgIDxwIGNsYXNzPVwiYS1wIC1kYXRlXCI+e3sgJ0BwcnkuZGF0YXNldC5zaW5jZV9kYXknIHwgaTE4biB9fSB7eyAoYWN0aXZlVmVyc2lvbiQgfCBhc3luYykhIHwgc2luY2VEYXRlIH19PC9wPlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8bmctdGVtcGxhdGUgI25vQWN0aXZlVmVyc2lvbj5cbiAgICAgICAgPHNwYW4+IHt7ICdAcHJ5LmRhdGFzZXQubm9BY3RpdmVWZXJzaW9uJyB8IGkxOG4gfX08L3NwYW4+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgPGRpdiBjbGFzcz1cIm8tcHJ5LWRhdGFzZXQtY2FyZF9fZGVzY3JpcHRpb24tY29udGFpbmVyXCI+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwiZGVzY3JpcHRpb25cIj57eyB0cnVuY2F0ZURlc2NyaXB0aW9uKGRhdGFzZXQuZGVzY3JpcHRpb24sIDEwMCkgfX08L3NwYW4+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJkZXNjcmlwdGlvbi10b29sdGlwXCI+e3sgZGF0YXNldC5kZXNjcmlwdGlvbiB9fTwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuXG4gIDxkaXYgY2xhc3M9XCJvLXByeS1kYXRhc2V0LWNhcmRfX2Zvb3RlclwiPlxuICAgICAgPGJ1dHRvbiBjbGFzcz1cImEtYnRuXCIgKGNsaWNrKT1cImdvVG9EZXRhaWxWaWV3KClcIj57eyAnQHByeS5kYXRhc2V0LmNvbnN1bHQnIHwgaTE4biB9fTwvYnV0dG9uPlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YXNldC1jYXJkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Byb3ZvbHkvZGFzaGJvYXJkL2RhdGFzZXQvY29tcG9uZW50cy9kYXRhc2V0LWNhcmQvZGF0YXNldC1jYXJkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Byb3ZvbHkvZGFzaGJvYXJkL2RhdGFzZXQvY29tcG9uZW50cy9kYXRhc2V0LWNhcmQvZGF0YXNldC1jYXJkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBb0IsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pGLE9BQU8sRUFBMkIsbUJBQW1CLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNsRixPQUFPLEVBQUUsR0FBRyxFQUFjLE1BQU0sTUFBTSxDQUFDOzs7Ozs7O0FBT3ZDLE1BQU0sT0FBTyx1QkFBdUI7SUFLbEMsWUFBb0IsS0FBWTtRQUFaLFVBQUssR0FBTCxLQUFLLENBQU87UUFIdEIsWUFBTyxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7SUFHYixDQUFDO0lBQ3BDLGtCQUFrQjtRQUNoQixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLEtBQUs7YUFDL0IsTUFBTSxDQUFDLG1CQUFtQixDQUFDLHVCQUF1QixDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUM7YUFDcEUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLEdBQUcsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN0RSxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQzlDLEdBQUcsQ0FDRCxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQ1gsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxPQUFPLEdBQUcsRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLEtBQUssS0FBSyxRQUFRLENBQUMsRUFBRSxZQUFZLENBQ2pILENBQ0YsQ0FBQztJQUNKLENBQUM7SUFDRCxtQkFBbUIsQ0FBQyxXQUErQixFQUFFLFNBQWlCO1FBQ3BFLElBQUksV0FBVyxJQUFJLFdBQVcsQ0FBQyxNQUFNLEdBQUcsU0FBUyxFQUFFO1lBQ2pELE9BQU8sV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsU0FBUyxDQUFDLEdBQUcsS0FBSyxDQUFDO1NBQ2hEO1FBQ0QsT0FBZSxXQUFXLENBQUM7SUFDN0IsQ0FBQztJQUNELGNBQWM7UUFDWixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDbEMsQ0FBQzsrR0F6QlUsdUJBQXVCO21HQUF2Qix1QkFBdUIseUhDVHBDLHFxQ0E2QkE7OzRGRHBCYSx1QkFBdUI7a0JBSm5DLFNBQVM7K0JBQ0Usa0JBQWtCOzRGQUluQixPQUFPO3NCQUFmLEtBQUs7Z0JBQ0ksT0FBTztzQkFBaEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyQ29udGVudEluaXQsIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEYXRhc2V0LCBEYXRhc2V0VmVyc2lvbiwgRGF0YVNvdXJjZVNlbGVjdG9ycyB9IGZyb20gJ0Bwcm92b2x5L2Rhc2hib2FyZCc7XG5pbXBvcnQgeyBtYXAsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFN0b3JlIH0gZnJvbSAnQG5ncngvc3RvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdwcnktZGF0YXNldC1jYXJkJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2RhdGFzZXQtY2FyZC5jb21wb25lbnQuaHRtbCdcbn0pXG5leHBvcnQgY2xhc3MgUHJ5RGF0YXNldENhcmRDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0ICB7XG4gIEBJbnB1dCgpIGRhdGFzZXQhOiBEYXRhc2V0O1xuICBAT3V0cHV0KCkgY29uc3VsdCA9IG5ldyBFdmVudEVtaXR0ZXI8RGF0YXNldD4oKTtcbiAgZGF0YXNldFZlcnNpb25zJCE6IE9ic2VydmFibGU8RGF0YXNldFZlcnNpb25bXT47XG4gIGFjdGl2ZVZlcnNpb24kITogT2JzZXJ2YWJsZTxzdHJpbmcgfCB1bmRlZmluZWQ+O1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHN0b3JlOiBTdG9yZSkge31cbiAgbmdBZnRlckNvbnRlbnRJbml0ICAoKSB7XG4gICAgdGhpcy5kYXRhc2V0VmVyc2lvbnMkID0gdGhpcy5zdG9yZVxuICAgICAgLnNlbGVjdChEYXRhU291cmNlU2VsZWN0b3JzLm1hdGNoaW5nRGF0YXNldFZlcnNpb25zKHRoaXMuZGF0YXNldC5pZCkpXG4gICAgICAucGlwZShtYXAoKHJlcykgPT4gWy4uLnJlc10uc29ydCgoYSwgYikgPT4gYi52ZXJzaW9uIC0gYS52ZXJzaW9uKSkpO1xuICAgIHRoaXMuYWN0aXZlVmVyc2lvbiQgPSB0aGlzLmRhdGFzZXRWZXJzaW9ucyQucGlwZShcbiAgICAgIG1hcChcbiAgICAgICAgKHZlcnNpb25zKSA9PlxuICAgICAgICAgIHZlcnNpb25zLnNvcnQoKHYxLCB2MikgPT4gdjIudmVyc2lvbiAtIHYxLnZlcnNpb24pLmZpbmQoKHZlcnNpb24pID0+IHZlcnNpb24uc3RhdGUgPT09ICdBQ1RJVkUnKT8ubGFzdE1vZGlmaWVkXG4gICAgICApXG4gICAgKTtcbiAgfVxuICB0cnVuY2F0ZURlc2NyaXB0aW9uKGRlc2NyaXB0aW9uOiBzdHJpbmcgfCB1bmRlZmluZWQsIG1heExlbmd0aDogbnVtYmVyKTogc3RyaW5nIHtcbiAgICBpZiAoZGVzY3JpcHRpb24gJiYgZGVzY3JpcHRpb24ubGVuZ3RoID4gbWF4TGVuZ3RoKSB7XG4gICAgICByZXR1cm4gZGVzY3JpcHRpb24uc2xpY2UoMCwgbWF4TGVuZ3RoKSArICcuLi4nO1xuICAgIH1cbiAgICByZXR1cm4gPHN0cmluZz5kZXNjcmlwdGlvbjtcbiAgfVxuICBnb1RvRGV0YWlsVmlldygpIHtcbiAgICB0aGlzLmNvbnN1bHQuZW1pdCh0aGlzLmRhdGFzZXQpO1xuICB9XG59XG4iLCI8cHJ5LWRhdGFzZXQtY3NzPjwvcHJ5LWRhdGFzZXQtY3NzPlxuPGRpdiBjbGFzcz1cIm8tcHJ5LWRhdGFzZXQtY2FyZFwiPlxuICA8ZGl2IGNsYXNzPVwiby1wcnktZGF0YXNldC1jYXJkX19oZWFkZXJcIj5cbiAgICA8aW1nXG4gICAgICBhbHQ9XCJcIlxuICAgICAgW2hlaWdodF09XCIyNVwiXG4gICAgICBbd2lkdGhdPVwiMjVcIlxuICAgICAgW3NyY109XCJkYXRhc2V0LmlkIHwgdHJhbnNsYXRlSWQgOiB7IHR5cGU6ICdkYXRhc291cmNlJywgb3V0cHV0OiAnaWNvbicgfSB8IGFzeW5jXCJcbiAgICAvPlxuICAgIDxkaXYgY2xhc3M9XCJhLWg0IGRhdGFzZXQtbmFtZVwiPnt7IGRhdGFzZXQubmFtZSB9fTwvZGl2PlxuICA8L2Rpdj5cbiAgPGRpdiBjbGFzcz1cIm8tcHJ5LWRhdGFzZXQtY2FyZF9fdHh0XCI+XG4gICAgPGRpdiBjbGFzcz1cImEtcFwiPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImFjdGl2ZVZlcnNpb24kIHwgYXN5bmM7IGVsc2Ugbm9BY3RpdmVWZXJzaW9uXCI+XG4gICAgICAgIDxwIGNsYXNzPVwiYS1wIC1kYXRlXCI+e3sgJ0BwcnkuZGF0YXNldC5zaW5jZV9kYXknIHwgaTE4biB9fSB7eyAoYWN0aXZlVmVyc2lvbiQgfCBhc3luYykhIHwgc2luY2VEYXRlIH19PC9wPlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8bmctdGVtcGxhdGUgI25vQWN0aXZlVmVyc2lvbj5cbiAgICAgICAgPHNwYW4+IHt7ICdAcHJ5LmRhdGFzZXQubm9BY3RpdmVWZXJzaW9uJyB8IGkxOG4gfX08L3NwYW4+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgPGRpdiBjbGFzcz1cIm8tcHJ5LWRhdGFzZXQtY2FyZF9fZGVzY3JpcHRpb24tY29udGFpbmVyXCIgZWxsaXBzaXMgdGV4dEVsZW1lbnRTZWxlY3Rvcj1cIi5kZXNjcmlwdGlvblwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZGVzY3JpcHRpb25cIj57eyB0cnVuY2F0ZURlc2NyaXB0aW9uKGRhdGFzZXQuZGVzY3JpcHRpb24sIDEwMCkgfX08L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cblxuICA8ZGl2IGNsYXNzPVwiby1wcnktZGF0YXNldC1jYXJkX19mb290ZXJcIj5cbiAgICAgIDxidXR0b24gY2xhc3M9XCJhLWJ0blwiIChjbGljayk9XCJnb1RvRGV0YWlsVmlldygpXCI+e3sgJ0BwcnkuZGF0YXNldC5jb25zdWx0JyB8IGkxOG4gfX08L2J1dHRvbj5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==