@provoly/dashboard 0.19.1 → 0.19.3

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 (550) hide show
  1. package/admin/components/admin-classes/admin-classes-customize/admin-classes-customize.component.d.ts +2 -1
  2. package/dataset/style/_o-pry-dataset-card.scss +49 -7
  3. package/dataset/style/_o-pry-dataset.scss +5 -7
  4. package/esm2022/admin/admin-routing.module.mjs +5 -5
  5. package/esm2022/admin/admin.module.mjs +5 -5
  6. package/esm2022/admin/components/admin-abac-rules/admin-abac-rules-edit/admin-abac-rules-edit.component.mjs +4 -4
  7. package/esm2022/admin/components/admin-abac-rules/admin-abac-rules-form/admin-abac-rules-form.component.mjs +4 -4
  8. package/esm2022/admin/components/admin-abac-rules/admin-abac-rules-new/admin-abac-rules-new.component.mjs +4 -4
  9. package/esm2022/admin/components/admin-abac-rules/admin-abac-rules-view/admin-abac-rules-view.component.mjs +4 -4
  10. package/esm2022/admin/components/admin-abac-rules/admin-abac-rules.component.mjs +4 -4
  11. package/esm2022/admin/components/admin-abac-rules/components/attribute-condition/attribute-condition.component.mjs +4 -4
  12. package/esm2022/admin/components/admin-abac-rules/components/composed-condition/composed-condition.component.mjs +4 -4
  13. package/esm2022/admin/components/admin-abac-rules/components/metadata-condition/metadata-condition.component.mjs +4 -4
  14. package/esm2022/admin/components/admin-abac-rules/components/select-attribute/select-attribute.component.mjs +4 -4
  15. package/esm2022/admin/components/admin-abac-rules/components/select-metadata/select-metadata.component.mjs +4 -4
  16. package/esm2022/admin/components/admin-abac-rules/store/abac-rules.effects.mjs +4 -4
  17. package/esm2022/admin/components/admin-abac-rules/store/abac-rules.service.mjs +4 -4
  18. package/esm2022/admin/components/admin-classes/admin-classes-customize/admin-classes-customize.component.mjs +8 -7
  19. package/esm2022/admin/components/admin-classes/admin-classes-customize/symbol/admin-classes-customize-symbol.component.mjs +4 -4
  20. package/esm2022/admin/components/admin-classes/admin-classes-customize/tooltip/admin-classes-customize-tooltip.component.mjs +4 -4
  21. package/esm2022/admin/components/admin-classes/admin-classes-edit/admin-classes-edit.component.mjs +4 -4
  22. package/esm2022/admin/components/admin-classes/admin-classes-form/admin-classes-form.component.mjs +4 -4
  23. package/esm2022/admin/components/admin-classes/admin-classes-new/admin-classes-new.component.mjs +4 -4
  24. package/esm2022/admin/components/admin-classes/admin-classes-select/admin-classes-select.component.mjs +4 -4
  25. package/esm2022/admin/components/admin-classes/admin-classes-view/admin-attributes-edit/admin-attributes-edit.component.mjs +4 -4
  26. package/esm2022/admin/components/admin-classes/admin-classes-view/admin-attributes-form/admin-attributes-form.component.mjs +4 -4
  27. package/esm2022/admin/components/admin-classes/admin-classes-view/admin-attributes-new/admin-attributes-new.component.mjs +4 -4
  28. package/esm2022/admin/components/admin-classes/admin-classes-view/admin-attributes-select/admin-attributes-select.component.mjs +4 -4
  29. package/esm2022/admin/components/admin-classes/admin-classes-view/admin-classes-view.component.mjs +4 -4
  30. package/esm2022/admin/components/admin-classes/admin-classes.component.mjs +4 -4
  31. package/esm2022/admin/components/admin-classes/store/admin-class.effects.mjs +4 -4
  32. package/esm2022/admin/components/admin-dataset/admin-dataset.component.mjs +4 -4
  33. package/esm2022/admin/components/admin-dataset/admin-edit-dataset/admin-edit-dataset.component.mjs +4 -4
  34. package/esm2022/admin/components/admin-dataset/admin-new-dataset/admin-new-dataset.component.mjs +4 -4
  35. package/esm2022/admin/components/admin-dataset/admin-select-dataset/admin-select-dataset.component.mjs +4 -4
  36. package/esm2022/admin/components/admin-dataset/shared/admin-form-dataset/admin-form-dataset.component.mjs +4 -4
  37. package/esm2022/admin/components/admin-environment/admin-environment-form/admin-environment-form.component.mjs +4 -4
  38. package/esm2022/admin/components/admin-environment/admin-environment-new/admin-environment-new.component.mjs +4 -4
  39. package/esm2022/admin/components/admin-environment/admin-environment-select/admin-environment-select.component.mjs +4 -4
  40. package/esm2022/admin/components/admin-environment/admin-environment-update/admin-environment-update.component.mjs +4 -4
  41. package/esm2022/admin/components/admin-environment/admin-environment.component.mjs +4 -4
  42. package/esm2022/admin/components/admin-environment/store/environment.effects.mjs +4 -4
  43. package/esm2022/admin/components/admin-fields/admin-fields-edit/admin-fields-edit.component.mjs +4 -4
  44. package/esm2022/admin/components/admin-fields/admin-fields-form/admin-fields-form.component.mjs +4 -4
  45. package/esm2022/admin/components/admin-fields/admin-fields-new/admin-fields-new.component.mjs +4 -4
  46. package/esm2022/admin/components/admin-fields/admin-fields-select/admin-fields-select.component.mjs +4 -4
  47. package/esm2022/admin/components/admin-fields/admin-fields.component.mjs +4 -4
  48. package/esm2022/admin/components/admin-fields/store/fields.effects.mjs +4 -4
  49. package/esm2022/admin/components/admin-layout/admin-layout.component.mjs +4 -4
  50. package/esm2022/admin/components/admin-links/admin-links-new/admin-links-new.component.mjs +4 -4
  51. package/esm2022/admin/components/admin-links/admin-links.component.mjs +4 -4
  52. package/esm2022/admin/components/admin-links/store/links.effects.mjs +4 -4
  53. package/esm2022/admin/components/admin-menu/admin-menu.component.mjs +4 -4
  54. package/esm2022/admin/components/admin-metadata/admin-edit-metadata/admin-edit-metadata.component.mjs +4 -4
  55. package/esm2022/admin/components/admin-metadata/admin-metadata.component.mjs +4 -4
  56. package/esm2022/admin/components/admin-metadata/admin-new-metadata/admin-new-metadata.component.mjs +4 -4
  57. package/esm2022/admin/components/admin-metadata/admin-select-metadata/admin-select-metadata.component.mjs +4 -4
  58. package/esm2022/admin/components/admin-metadata/shared/form-metadata/form-metadata.component.mjs +4 -4
  59. package/esm2022/admin/components/admin-metadata/shared/list-metadata/list-metadata.module.mjs +5 -5
  60. package/esm2022/admin/components/admin-metadata/shared/list-metadata/pry-list-metadata.component.mjs +4 -4
  61. package/esm2022/admin/components/admin-metadata-rules/admin-edit-metadata-rules/admin-edit-metadata-rules.component.mjs +4 -4
  62. package/esm2022/admin/components/admin-metadata-rules/admin-metadata-rules.component.mjs +4 -4
  63. package/esm2022/admin/components/admin-metadata-rules/admin-new-metadata-rules/admin-new-metadata-rules.component.mjs +4 -4
  64. package/esm2022/admin/components/admin-metadata-rules/admin-select-metadata-rules/admin-select-metadata-rules.component.mjs +4 -4
  65. package/esm2022/admin/components/admin-metadata-rules/shared/admin-form-metadata-rules/admin-form-metadata-rules.component.mjs +4 -4
  66. package/esm2022/admin/components/admin-metadata-rules/store/metadata-rules.effects.mjs +4 -4
  67. package/esm2022/admin/components/admin-metadata-user/admin-metadata-user.component.mjs +4 -4
  68. package/esm2022/admin/components/admin-metadata-user/admin-user-edit-metadata/admin-user-edit-metadata.component.mjs +4 -4
  69. package/esm2022/admin/components/admin-metadata-user/admin-user-new-metadata/admin-user-new-metadata.component.mjs +4 -4
  70. package/esm2022/admin/components/admin-metadata-user/admin-user-select-metadata/admin-user-select-metadata.component.mjs +4 -4
  71. package/esm2022/admin/components/admin-metadata-user/store/admin-metadata-user.effects.mjs +4 -4
  72. package/esm2022/admin/components/admin-predicates/admin-predicates-form/admin-predicates-form.component.mjs +4 -4
  73. package/esm2022/admin/components/admin-predicates/admin-predicates-new/admin-predicates-new.component.mjs +4 -4
  74. package/esm2022/admin/components/admin-predicates/admin-predicates-select/admin-predicates-select.component.mjs +4 -4
  75. package/esm2022/admin/components/admin-predicates/admin-predicates-update/admin-predicates-update.component.mjs +4 -4
  76. package/esm2022/admin/components/admin-predicates/admin-predicates.component.mjs +4 -4
  77. package/esm2022/admin/components/admin-predicates/store/predicates.effects.mjs +4 -4
  78. package/esm2022/admin/components/admin-relation-types/admin-relation-types-modal/admin-relation-types-modal.component.mjs +4 -4
  79. package/esm2022/admin/components/admin-relation-types/admin-relation-types-select/admin-relation-types-select.component.mjs +4 -4
  80. package/esm2022/admin/components/admin-relation-types/admin-relation-types.component.mjs +4 -4
  81. package/esm2022/admin/components/admin-title/admin-title.component.mjs +4 -4
  82. package/esm2022/admin/components/admin-user/admin-user-select/admin-user-select.component.mjs +4 -4
  83. package/esm2022/admin/components/admin-user/admin-user.component.mjs +4 -4
  84. package/esm2022/admin/components/admin-user/store/admin-user.effects.mjs +4 -4
  85. package/esm2022/admin/components/admin.component.mjs +4 -4
  86. package/esm2022/admin/components/association/association.component.mjs +4 -4
  87. package/esm2022/admin/store/admin.effects.mjs +4 -4
  88. package/esm2022/admin/store/admin.service.mjs +4 -4
  89. package/esm2022/components/card/card.component.mjs +19 -19
  90. package/esm2022/components/card/card.module.mjs +5 -5
  91. package/esm2022/components/checkbox/checkbox.component.mjs +4 -4
  92. package/esm2022/components/checkbox/checkbox.module.mjs +5 -5
  93. package/esm2022/components/color-picker/color-picker.component.mjs +4 -4
  94. package/esm2022/components/color-picker/color-picker.module.mjs +5 -5
  95. package/esm2022/components/expand-panel/expand-panel.component.mjs +7 -7
  96. package/esm2022/components/expand-panel/expand-panel.module.mjs +5 -5
  97. package/esm2022/components/filter/filter.module.mjs +5 -5
  98. package/esm2022/components/filter/filter.pipe.mjs +4 -4
  99. package/esm2022/components/metadata-editor/metadata-editor.component.mjs +4 -4
  100. package/esm2022/components/metadata-editor/metadata-editor.module.mjs +5 -5
  101. package/esm2022/components/metadata-editor/store/metadata.effects.mjs +4 -4
  102. package/esm2022/components/metadata-editor/store/metadata.service.mjs +4 -4
  103. package/esm2022/components/metadata-editor/style/css.component.mjs +4 -4
  104. package/esm2022/components/scheme-picker/scheme-picker.component.mjs +4 -4
  105. package/esm2022/components/scheme-picker/scheme-picker.module.mjs +5 -5
  106. package/esm2022/components/scheme-picker/scheme.service.mjs +4 -4
  107. package/esm2022/components/sinceDate/sinceDate.module.mjs +5 -5
  108. package/esm2022/components/sinceDate/sinceDate.pipe.mjs +4 -4
  109. package/esm2022/components/stepper/step/step.component.mjs +4 -4
  110. package/esm2022/components/stepper/step-title.directive.mjs +4 -4
  111. package/esm2022/components/stepper/stepper.component.mjs +4 -4
  112. package/esm2022/components/stepper/stepper.module.mjs +5 -5
  113. package/esm2022/dataset/components/dataset-card/dataset-card.component.mjs +7 -7
  114. package/esm2022/dataset/components/dataset-detail/dataset-detail.component.mjs +14 -6
  115. package/esm2022/dataset/components/dataset.component.mjs +4 -4
  116. package/esm2022/dataset/dataset.module.mjs +5 -5
  117. package/esm2022/dataset/style/css.component.mjs +5 -5
  118. package/esm2022/filters/autocomplete/autocomplete.component.mjs +4 -4
  119. package/esm2022/filters/autocomplete/autocomplete.module.mjs +5 -5
  120. package/esm2022/filters/autocomplete/style/css.component.mjs +4 -4
  121. package/esm2022/filters/date/date-filter.component.mjs +4 -4
  122. package/esm2022/filters/date/date-filter.module.mjs +5 -5
  123. package/esm2022/filters/list/list-filter.component.mjs +4 -4
  124. package/esm2022/filters/list/list-filter.module.mjs +5 -5
  125. package/esm2022/filters/list/style/css.component.mjs +4 -4
  126. package/esm2022/filters/number/number-filter.component.mjs +4 -4
  127. package/esm2022/filters/number/number-filter.module.mjs +5 -5
  128. package/esm2022/filters/text/text-filter.component.mjs +4 -4
  129. package/esm2022/filters/text/text-filter.module.mjs +5 -5
  130. package/esm2022/import/components/import.component.mjs +4 -4
  131. package/esm2022/import/import-routing.module.mjs +5 -5
  132. package/esm2022/import/import.module.mjs +5 -5
  133. package/esm2022/import/store/import.effects.mjs +4 -4
  134. package/esm2022/import/store/import.service.mjs +4 -4
  135. package/esm2022/import/style/css.component.mjs +4 -4
  136. package/esm2022/lib/core/access/access.directive.mjs +4 -4
  137. package/esm2022/lib/core/access/access.guard.mjs +4 -4
  138. package/esm2022/lib/core/access/access.service.mjs +4 -4
  139. package/esm2022/lib/core/auth/geoAuth.service.mjs +4 -4
  140. package/esm2022/lib/core/components/about/about.component.mjs +4 -4
  141. package/esm2022/lib/core/components/about/pry-about.module.mjs +5 -5
  142. package/esm2022/lib/core/components/accordion/accordion-item/accordion-item.component.mjs +4 -4
  143. package/esm2022/lib/core/components/accordion/accordion.component.mjs +4 -4
  144. package/esm2022/lib/core/components/base-layout/base-layout.component.mjs +4 -4
  145. package/esm2022/lib/core/components/base-menu/base-menu.component.mjs +4 -4
  146. package/esm2022/lib/core/components/base-toolbox/base-toolbox.component.mjs +4 -4
  147. package/esm2022/lib/core/components/base-toolbox-action/base-toolbox-action.component.mjs +4 -4
  148. package/esm2022/lib/core/components/date-picker/date-picker.component.mjs +4 -4
  149. package/esm2022/lib/core/components/date-picker/date-picker.module.mjs +5 -5
  150. package/esm2022/lib/core/components/date-picker/date-range-highlight.pipe.mjs +4 -4
  151. package/esm2022/lib/core/components/date-picker/time-picker/loop-scroll-column/loop-scroll-column.component.mjs +4 -4
  152. package/esm2022/lib/core/components/date-picker/time-picker/time-picker.component.mjs +4 -4
  153. package/esm2022/lib/core/components/edit-input/edit-input.component.mjs +4 -4
  154. package/esm2022/lib/core/components/edit-input/edit-input.module.mjs +5 -5
  155. package/esm2022/lib/core/components/get-secured-image/get-secured-image.pipe.mjs +7 -11
  156. package/esm2022/lib/core/components/hidden-when-overlay/hidden-when-overlay.directive.mjs +4 -4
  157. package/esm2022/lib/core/components/hidden-when-overlay/hidden-when-overlay.module.mjs +5 -5
  158. package/esm2022/lib/core/components/icon/icon.component.mjs +4 -4
  159. package/esm2022/lib/core/components/icon/icon.module.mjs +5 -5
  160. package/esm2022/lib/core/components/modal/modal.component.mjs +4 -4
  161. package/esm2022/lib/core/components/modal/pry-modal.module.mjs +5 -5
  162. package/esm2022/lib/core/components/modal-status/modal-status.component.mjs +4 -4
  163. package/esm2022/lib/core/components/modal-status/modal-status.module.mjs +5 -5
  164. package/esm2022/lib/core/components/nq-color-selector/nq-color-selector.component.mjs +4 -4
  165. package/esm2022/lib/core/components/overlay/dialog-confirm.component.mjs +4 -4
  166. package/esm2022/lib/core/components/overlay/dialog.service.mjs +4 -4
  167. package/esm2022/lib/core/components/overlay/overlay.directive.mjs +4 -4
  168. package/esm2022/lib/core/components/overlay/overlay.module.mjs +5 -5
  169. package/esm2022/lib/core/components/range/range.component.mjs +4 -4
  170. package/esm2022/lib/core/components/range/range.module.mjs +5 -5
  171. package/esm2022/lib/core/components/select/select.component.mjs +4 -4
  172. package/esm2022/lib/core/components/select/select.module.mjs +5 -5
  173. package/esm2022/lib/core/components/select-image/select-image.component.mjs +4 -4
  174. package/esm2022/lib/core/components/share/share.component.mjs +4 -4
  175. package/esm2022/lib/core/components/share/share.module.mjs +5 -5
  176. package/esm2022/lib/core/components/snackbar/snackbar/snackbar.component.mjs +4 -4
  177. package/esm2022/lib/core/components/snackbar/snackbar.module.mjs +5 -5
  178. package/esm2022/lib/core/components/snackbar/snackbar.service.mjs +4 -4
  179. package/esm2022/lib/core/components/sort/sort-data.pipe.mjs +4 -4
  180. package/esm2022/lib/core/components/sort/sort-header/sort-header.component.mjs +4 -4
  181. package/esm2022/lib/core/components/sort/sort-header.directive.mjs +4 -4
  182. package/esm2022/lib/core/components/sort/sort-table.directive.mjs +4 -4
  183. package/esm2022/lib/core/components/sort/sort.module.mjs +5 -5
  184. package/esm2022/lib/core/components/tabs/tab-group.component.mjs +4 -4
  185. package/esm2022/lib/core/components/tabs/tab.component.mjs +4 -4
  186. package/esm2022/lib/core/components/toggle/toggle.component.mjs +4 -4
  187. package/esm2022/lib/core/components/toggle/toggle.module.mjs +5 -5
  188. package/esm2022/lib/core/components/translate-id/translate-id.pipe.mjs +4 -4
  189. package/esm2022/lib/core/components/translate-item-to-symbol/translate-item-to-symbol.pipe.mjs +4 -4
  190. package/esm2022/lib/core/components/upload/upload.component.mjs +4 -4
  191. package/esm2022/lib/core/core.module.mjs +5 -5
  192. package/esm2022/lib/core/errors/http-error-interceptor.service.mjs +4 -4
  193. package/esm2022/lib/core/i18n/i18n.module.mjs +5 -5
  194. package/esm2022/lib/core/i18n/i18n.pipe.mjs +4 -4
  195. package/esm2022/lib/core/i18n/i18n.service.mjs +4 -4
  196. package/esm2022/lib/core/model/manifest.interface.mjs +1 -1
  197. package/esm2022/lib/core/model/widget-map-manifest.interface.mjs +1 -1
  198. package/esm2022/lib/core/store/aggregation/backend-aggregation.service.mjs +4 -4
  199. package/esm2022/lib/core/store/aggregation/base-aggregation.service.mjs +4 -4
  200. package/esm2022/lib/core/store/aggregation/frontend-aggregation/frontend-aggregation.service.mjs +4 -4
  201. package/esm2022/lib/core/store/category/category.effects.mjs +4 -4
  202. package/esm2022/lib/core/store/category/category.service.mjs +4 -4
  203. package/esm2022/lib/core/store/class/class.effects.mjs +4 -4
  204. package/esm2022/lib/core/store/class/class.service.mjs +4 -4
  205. package/esm2022/lib/core/store/config/config.actions.mjs +1 -2
  206. package/esm2022/lib/core/store/config/config.effects.mjs +4 -4
  207. package/esm2022/lib/core/store/config/config.reducer.mjs +1 -5
  208. package/esm2022/lib/core/store/config/config.selectors.mjs +1 -3
  209. package/esm2022/lib/core/store/config/config.service.mjs +4 -4
  210. package/esm2022/lib/core/store/config/open-map-tiles.service.mjs +4 -4
  211. package/esm2022/lib/core/store/context-menu/context-menu.effects.mjs +4 -4
  212. package/esm2022/lib/core/store/data-source/data-source.effects.mjs +5 -5
  213. package/esm2022/lib/core/store/data-source/data-source.service.mjs +4 -4
  214. package/esm2022/lib/core/store/field/field.effects.mjs +4 -4
  215. package/esm2022/lib/core/store/field/field.interface.mjs +2 -1
  216. package/esm2022/lib/core/store/field/field.service.mjs +4 -4
  217. package/esm2022/lib/core/store/image/image.effects.mjs +4 -4
  218. package/esm2022/lib/core/store/image/image.service.mjs +4 -4
  219. package/esm2022/lib/core/store/item/item.effects.mjs +4 -4
  220. package/esm2022/lib/core/store/item/item.service.mjs +4 -4
  221. package/esm2022/lib/core/store/raw/raw.service.mjs +4 -4
  222. package/esm2022/lib/core/store/relation-types/relation-types.effects.mjs +4 -4
  223. package/esm2022/lib/core/store/relation-types/relation-types.service.mjs +4 -4
  224. package/esm2022/lib/core/store/search/search.actions.mjs +1 -1
  225. package/esm2022/lib/core/store/search/search.effects.mjs +5 -5
  226. package/esm2022/lib/core/store/search/search.service.mjs +8 -13
  227. package/esm2022/lib/core/symbol/symbol.service.mjs +4 -4
  228. package/esm2022/lib/core/toolbox/toolbox-manifest.service.mjs +4 -4
  229. package/esm2022/lib/core/toolbox/toolbox-menu.service.mjs +4 -4
  230. package/esm2022/lib/core/ws/websocket.service.mjs +4 -4
  231. package/esm2022/lib/dashboard/action-bus/effect/action-bus.effects.mjs +4 -4
  232. package/esm2022/lib/dashboard/action-bus/service/bus.service.mjs +4 -4
  233. package/esm2022/lib/dashboard/base-widget.module.mjs +5 -5
  234. package/esm2022/lib/dashboard/components/context-menu/context-menu.component.mjs +4 -4
  235. package/esm2022/lib/dashboard/components/context-menu/object-edition/object-edition.component.mjs +4 -4
  236. package/esm2022/lib/dashboard/components/dashboard.component.mjs +8 -8
  237. package/esm2022/lib/dashboard/components/manifests/manifests.component.mjs +5 -8
  238. package/esm2022/lib/dashboard/components/metadata/metadata.component.mjs +4 -4
  239. package/esm2022/lib/dashboard/components/subscriptionner.directive.mjs +4 -4
  240. package/esm2022/lib/dashboard/components/vizualize-raw/vizualize-raw.component.mjs +4 -4
  241. package/esm2022/lib/dashboard/components/widgets/base-widget.component.mjs +4 -4
  242. package/esm2022/lib/dashboard/components/widgets/data-widget.component.mjs +4 -4
  243. package/esm2022/lib/dashboard/components/widgets/datasource-selector/datasource-selector.component.mjs +4 -4
  244. package/esm2022/lib/dashboard/components/widgets/header/resultset-size.pipe.mjs +4 -4
  245. package/esm2022/lib/dashboard/components/widgets/header/widget-header.component.mjs +4 -4
  246. package/esm2022/lib/dashboard/components/widgets/settings/settings.component.mjs +4 -4
  247. package/esm2022/lib/dashboard/components/widgets/widget-filler/widget-filler.component.mjs +4 -4
  248. package/esm2022/lib/dashboard/components/widgets/widget-instanciator/widget-factory.service.mjs +8 -6
  249. package/esm2022/lib/dashboard/components/widgets/widget-instanciator/widget-instanciator.component.mjs +4 -4
  250. package/esm2022/lib/dashboard/components/widgets/widget-placeholder/widget-placeholder.component.mjs +4 -4
  251. package/esm2022/lib/dashboard/dashboard.module.mjs +12 -10
  252. package/esm2022/lib/dashboard/filter/base-filter.component.mjs +4 -4
  253. package/esm2022/lib/dashboard/filter/base-filter.module.mjs +5 -5
  254. package/esm2022/lib/dashboard/filter/components/filter-group/filter-group.component.mjs +4 -4
  255. package/esm2022/lib/dashboard/filter/components/filter-instanciator/filter-instanciator.component.mjs +4 -4
  256. package/esm2022/lib/dashboard/filter/filter-factory.service.mjs +4 -4
  257. package/esm2022/lib/dashboard/filter/style/css.component.mjs +4 -4
  258. package/esm2022/lib/dashboard/item-utils.mjs +15 -14
  259. package/esm2022/lib/dashboard/public-api.mjs +1 -2
  260. package/esm2022/lib/dashboard/store/dashboard-init.service.mjs +4 -4
  261. package/esm2022/lib/dashboard/store/dashboard.actions.mjs +3 -3
  262. package/esm2022/lib/dashboard/store/dashboard.effects.mjs +51 -26
  263. package/esm2022/lib/dashboard/store/dashboard.selectors.mjs +3 -2
  264. package/esm2022/lib/dashboard/store/manifest-utils.class.mjs +10 -7
  265. package/esm2022/lib/dashboard/store/manifest.service.mjs +5 -5
  266. package/esm2022/lib/dashboard/store/proxy.utils.mjs +76 -0
  267. package/esm2022/lib/dashboard/store/refresh.service.mjs +12 -7
  268. package/esm2022/lib/dashboard/store/title.service.mjs +4 -4
  269. package/esm2022/lib/dashboard/store/wms.service.mjs +4 -4
  270. package/esm2022/lib/dashboard/tooltip/base-tooltip.component.mjs +4 -4
  271. package/esm2022/lib/dashboard/tooltip/base-tooltip.module.mjs +5 -5
  272. package/esm2022/lib/dashboard/tooltip/components/default/default.tooltip.component.mjs +4 -4
  273. package/esm2022/lib/dashboard/tooltip/tooltip-factory.service.mjs +4 -4
  274. package/esm2022/notification/components/notification/content/notification-content.component.mjs +4 -4
  275. package/esm2022/notification/components/notification/notification.component.mjs +4 -4
  276. package/esm2022/notification/notification.module.mjs +5 -5
  277. package/esm2022/notification/store/notification.effects.mjs +4 -4
  278. package/esm2022/notification/store/notification.service.mjs +4 -4
  279. package/esm2022/notification/style/css.component.mjs +4 -4
  280. package/esm2022/pipeline/components/pipeline-details/pipeline-details.component.mjs +4 -4
  281. package/esm2022/pipeline/components/pipeline-editor/pipeline-editor.component.mjs +4 -4
  282. package/esm2022/pipeline/components/pipeline-list/pipeline-list.component.mjs +4 -4
  283. package/esm2022/pipeline/components/pipeline-properties-panel.component.mjs +4 -4
  284. package/esm2022/pipeline/factory/pipeline-component-factory.service.mjs +4 -4
  285. package/esm2022/pipeline/pipeline.module.mjs +5 -5
  286. package/esm2022/pipeline/store/pipeline.effects.mjs +4 -4
  287. package/esm2022/pipeline/store/pipeline.service.mjs +4 -4
  288. package/esm2022/pipeline/style/css.component.mjs +4 -4
  289. package/esm2022/pipeline-components/filter/component/filter.component.mjs +4 -4
  290. package/esm2022/pipeline-components/filter/filter.module.mjs +5 -5
  291. package/esm2022/pipeline-components/input-datasource/component/input-datasource.component.mjs +4 -4
  292. package/esm2022/pipeline-components/input-datasource/input-datasource.module.mjs +5 -5
  293. package/esm2022/pipeline-components/noop/component/noop.component.mjs +4 -4
  294. package/esm2022/pipeline-components/noop/noop.module.mjs +5 -5
  295. package/esm2022/pipeline-components/output-dataset/component/output-dataset.component.mjs +4 -4
  296. package/esm2022/pipeline-components/output-dataset/output-dataset.module.mjs +5 -5
  297. package/esm2022/pipeline-components/subgraph/component/empty.component.mjs +4 -4
  298. package/esm2022/pipeline-components/subgraph/subgraph.module.mjs +5 -5
  299. package/esm2022/presentation/components/add-edit-presentation/add-edit-presentation.component.mjs +20 -30
  300. package/esm2022/presentation/components/presentation.component.mjs +40 -43
  301. package/esm2022/presentation/components/title-presentation/title-presentation.component.mjs +4 -4
  302. package/esm2022/presentation/i18n/en.translations.mjs +3 -1
  303. package/esm2022/presentation/i18n/fr.translations.mjs +3 -1
  304. package/esm2022/presentation/presentation.module.mjs +5 -5
  305. package/esm2022/presentation/style/css.component.mjs +5 -5
  306. package/esm2022/restitution/components/restitution/restitution.component.mjs +24 -8
  307. package/esm2022/restitution/components/restitution-catalog/restitution-catalog.component.mjs +31 -9
  308. package/esm2022/restitution/components/restitution-list/restitution-list.component.mjs +4 -4
  309. package/esm2022/restitution/components/restitution-list-item/restitution-list-item.component.mjs +4 -4
  310. package/esm2022/restitution/i18n/en.translations.mjs +2 -1
  311. package/esm2022/restitution/i18n/fr.translations.mjs +3 -1
  312. package/esm2022/restitution/restitution.module.mjs +5 -5
  313. package/esm2022/restitution/style/css.component.mjs +5 -5
  314. package/esm2022/search/components/choose-widget/choose-widget.component.mjs +4 -4
  315. package/esm2022/search/components/edit-named-query/edit-named-query.component.mjs +9 -5
  316. package/esm2022/search/components/edit-named-query-modal/edit-named-query-modal.component.mjs +4 -4
  317. package/esm2022/search/components/save-query/save-query.component.mjs +4 -4
  318. package/esm2022/search/components/save-query-button/save-query-button.component.mjs +4 -4
  319. package/esm2022/search/search-fulltext/search-fulltext/search-fulltext.component.mjs +4 -4
  320. package/esm2022/search/search-fulltext/store/search-fulltext.effects.mjs +4 -4
  321. package/esm2022/search/search-fulltext/store/search-fulltext.service.mjs +4 -4
  322. package/esm2022/search/search-home/search-home.component.mjs +5 -5
  323. package/esm2022/search/search-mono-class/components/search-composed/search-composed.component.mjs +4 -4
  324. package/esm2022/search/search-mono-class/components/search-condition/search-condition.component.mjs +4 -4
  325. package/esm2022/search/search-mono-class/components/search-mono-class/search-mono-class.component.mjs +4 -4
  326. package/esm2022/search/search-mono-class/components/search-order/search-order.component.mjs +4 -4
  327. package/esm2022/search/search-mono-class/components/search-select-attribute/search-select-attribute.component.mjs +4 -4
  328. package/esm2022/search/search-mono-class/store/search-mono-class.effects.mjs +4 -4
  329. package/esm2022/search/search-mono-class/store/search-mono-class.service.mjs +4 -4
  330. package/esm2022/search/search-multi-class/components/multi-class-condition/multi-class-condition.component.mjs +4 -4
  331. package/esm2022/search/search-multi-class/components/multi-class-field-selection/multi-class-field-selection.component.mjs +4 -4
  332. package/esm2022/search/search-multi-class/components/search-multi-class/search-multi-class.component.mjs +4 -4
  333. package/esm2022/search/search-multi-class/store/search-multi-class.effects.mjs +4 -4
  334. package/esm2022/search/search-multi-class/store/search-multi-class.service.mjs +4 -4
  335. package/esm2022/search/search-tools/search-tools.component.mjs +4 -4
  336. package/esm2022/search/search.module.mjs +5 -5
  337. package/esm2022/search/style/css.component.mjs +4 -4
  338. package/esm2022/supervision/components/supervision-business-data/supervision-business-data.component.mjs +4 -4
  339. package/esm2022/supervision/components/supervision-flow/supervision-flow.component.mjs +4 -4
  340. package/esm2022/supervision/components/supervision-infrastructures/supervision-infrastructures.component.mjs +4 -4
  341. package/esm2022/supervision/components/supervision-integration-errors/supervision-integration-errors-select/supervision-integration-errors-select.component.mjs +4 -4
  342. package/esm2022/supervision/components/supervision-integration-errors/supervision-integration-errors.component.mjs +4 -4
  343. package/esm2022/supervision/components/supervision-layout/supervision-layout.component.mjs +4 -4
  344. package/esm2022/supervision/components/supervision-menu/supervision-menu.component.mjs +4 -4
  345. package/esm2022/supervision/components/supervision-title/supervision-title.component.mjs +4 -4
  346. package/esm2022/supervision/components/supervision.component.mjs +4 -4
  347. package/esm2022/supervision/store/supervision.effects.mjs +4 -4
  348. package/esm2022/supervision/store/supervision.service.mjs +4 -4
  349. package/esm2022/supervision/supervision-routing.module.mjs +5 -5
  350. package/esm2022/supervision/supervision.module.mjs +5 -5
  351. package/esm2022/toolbox/components/automate-refresh/automate-refresh.component.mjs +7 -5
  352. package/esm2022/toolbox/components/clear-view/clear-view.component.mjs +4 -4
  353. package/esm2022/toolbox/components/drag-widgets/drag-widgets.component.mjs +4 -4
  354. package/esm2022/toolbox/components/edit-mode-toggle/edit-mode-toggle.component.mjs +4 -4
  355. package/esm2022/toolbox/components/filter-settings/filter-settings.component.mjs +4 -4
  356. package/esm2022/toolbox/components/launch-tab/launch-tab.component.mjs +4 -4
  357. package/esm2022/toolbox/components/named-query/named-query.component.mjs +4 -4
  358. package/esm2022/toolbox/components/refresh-datasets/refresh-datasets.component.mjs +11 -7
  359. package/esm2022/toolbox/components/save-view/save-view.component.mjs +4 -4
  360. package/esm2022/toolbox/components/select-grid-layout/select-grid-layout.component.mjs +4 -4
  361. package/esm2022/toolbox/components/toolbox-action/toolbox-action.component.mjs +4 -4
  362. package/esm2022/toolbox/components/toolbox-action-instanciator/toolbox-action-instanciator.component.mjs +4 -4
  363. package/esm2022/toolbox/components/toolbox.component.mjs +4 -4
  364. package/esm2022/toolbox/style/css.component.mjs +4 -4
  365. package/esm2022/toolbox/toolbox.module.mjs +5 -5
  366. package/esm2022/tooltips/attribute/attribute-tooltip.component.mjs +4 -4
  367. package/esm2022/tooltips/attribute/attribute-tooltip.module.mjs +5 -5
  368. package/esm2022/tooltips/cluster/cluster-tooltip.component.mjs +4 -4
  369. package/esm2022/tooltips/cluster/cluster-tooltip.module.mjs +5 -5
  370. package/esm2022/widgets/widget-aggregated-chart/component/widget-aggregated-chart.component.mjs +23 -11
  371. package/esm2022/widgets/widget-aggregated-chart/style/css.component.mjs +4 -4
  372. package/esm2022/widgets/widget-aggregated-chart/widget-aggregated-chart.module.mjs +5 -5
  373. package/esm2022/widgets/widget-chart/component/widget-chart.component.mjs +4 -4
  374. package/esm2022/widgets/widget-chart/style/css.component.mjs +4 -4
  375. package/esm2022/widgets/widget-chart/widget-chart.module.mjs +5 -5
  376. package/esm2022/widgets/widget-detail/component/widget-detail.component.mjs +4 -4
  377. package/esm2022/widgets/widget-detail/style/css.component.mjs +4 -4
  378. package/esm2022/widgets/widget-detail/widget-detail.module.mjs +5 -5
  379. package/esm2022/widgets/widget-graph/component/widget-graph.component.mjs +4 -4
  380. package/esm2022/widgets/widget-graph/style/css.component.mjs +4 -4
  381. package/esm2022/widgets/widget-graph/widget-graph.module.mjs +5 -5
  382. package/esm2022/widgets/widget-iframe/component/widget-iframe.component.mjs +4 -4
  383. package/esm2022/widgets/widget-iframe/messaging/iframe-messaging.service.mjs +4 -4
  384. package/esm2022/widgets/widget-iframe/style/css.component.mjs +4 -4
  385. package/esm2022/widgets/widget-iframe/widget-iframe.module.mjs +5 -5
  386. package/esm2022/widgets/widget-image/component/widget-image.component.mjs +4 -4
  387. package/esm2022/widgets/widget-image/style/css.component.mjs +4 -4
  388. package/esm2022/widgets/widget-image/widget-image.module.mjs +5 -5
  389. package/esm2022/widgets/widget-map/component/widget-map-layer.service.mjs +4 -4
  390. package/esm2022/widgets/widget-map/component/widget-map.component.mjs +160 -18
  391. package/esm2022/widgets/widget-map/i18n/en.translations.mjs +13 -2
  392. package/esm2022/widgets/widget-map/i18n/fr.translations.mjs +13 -2
  393. package/esm2022/widgets/widget-map/interaction/layer-slider.class.mjs +63 -0
  394. package/esm2022/widgets/widget-map/interaction/selection-interaction.class.mjs +21 -16
  395. package/esm2022/widgets/widget-map/pipe/widget-map-geometry-fields-for.pipe.mjs +4 -4
  396. package/esm2022/widgets/widget-map/pipe/widget-map-legend-url.pipe.mjs +24 -12
  397. package/esm2022/widgets/widget-map/public-api.mjs +2 -1
  398. package/esm2022/widgets/widget-map/style/css.component.mjs +5 -5
  399. package/esm2022/widgets/widget-map/utils/widget-map.utils.mjs +2 -2
  400. package/esm2022/widgets/widget-map/utils/xml-utils.class.mjs +42 -1
  401. package/esm2022/widgets/widget-map/widget-map.module.mjs +5 -5
  402. package/esm2022/widgets/widget-table/component/widget-table.component.mjs +11 -6
  403. package/esm2022/widgets/widget-table/expand-value/detach-row.directive.mjs +4 -4
  404. package/esm2022/widgets/widget-table/expand-value/expand-value.component.mjs +4 -4
  405. package/esm2022/widgets/widget-table/expand-value/format-number.pipe.mjs +4 -4
  406. package/esm2022/widgets/widget-table/get-value/get-value.pipe.mjs +5 -5
  407. package/esm2022/widgets/widget-table/resizable/resizable.component.mjs +4 -4
  408. package/esm2022/widgets/widget-table/resizable/resizable.directive.mjs +4 -4
  409. package/esm2022/widgets/widget-table/style/css.component.mjs +4 -4
  410. package/esm2022/widgets/widget-table/widget-table.module.mjs +5 -5
  411. package/esm2022/widgets/widget-template/component/widget-template.component.mjs +4 -4
  412. package/esm2022/widgets/widget-template/style/css.component.mjs +4 -4
  413. package/esm2022/widgets/widget-template/widget-template.module.mjs +5 -5
  414. package/esm2022/widgets/widget-tile/component/widget-tile.component.mjs +4 -4
  415. package/esm2022/widgets/widget-tile/style/css.component.mjs +4 -4
  416. package/esm2022/widgets/widget-tile/widget-tile.module.mjs +5 -5
  417. package/esm2022/widgets/widget-vega/component/widget-vega.component.mjs +4 -4
  418. package/esm2022/widgets/widget-vega/style/css.component.mjs +4 -4
  419. package/esm2022/widgets/widget-vega/widget-vega.module.mjs +5 -5
  420. package/fesm2022/provoly-dashboard-admin.mjs +261 -260
  421. package/fesm2022/provoly-dashboard-admin.mjs.map +1 -1
  422. package/fesm2022/provoly-dashboard-components-card.mjs +22 -22
  423. package/fesm2022/provoly-dashboard-components-card.mjs.map +1 -1
  424. package/fesm2022/provoly-dashboard-components-checkbox.mjs +7 -7
  425. package/fesm2022/provoly-dashboard-components-checkbox.mjs.map +1 -1
  426. package/fesm2022/provoly-dashboard-components-color-picker.mjs +7 -7
  427. package/fesm2022/provoly-dashboard-components-color-picker.mjs.map +1 -1
  428. package/fesm2022/provoly-dashboard-components-expand-panel.mjs +10 -10
  429. package/fesm2022/provoly-dashboard-components-expand-panel.mjs.map +1 -1
  430. package/fesm2022/provoly-dashboard-components-filter.mjs +7 -7
  431. package/fesm2022/provoly-dashboard-components-filter.mjs.map +1 -1
  432. package/fesm2022/provoly-dashboard-components-metadata-editor.mjs +16 -16
  433. package/fesm2022/provoly-dashboard-components-metadata-editor.mjs.map +1 -1
  434. package/fesm2022/provoly-dashboard-components-scheme-picker.mjs +10 -10
  435. package/fesm2022/provoly-dashboard-components-scheme-picker.mjs.map +1 -1
  436. package/fesm2022/provoly-dashboard-components-sinceDate.mjs +7 -7
  437. package/fesm2022/provoly-dashboard-components-sinceDate.mjs.map +1 -1
  438. package/fesm2022/provoly-dashboard-components-stepper.mjs +13 -13
  439. package/fesm2022/provoly-dashboard-components-stepper.mjs.map +1 -1
  440. package/fesm2022/provoly-dashboard-dataset.mjs +28 -20
  441. package/fesm2022/provoly-dashboard-dataset.mjs.map +1 -1
  442. package/fesm2022/provoly-dashboard-filters-autocomplete.mjs +10 -10
  443. package/fesm2022/provoly-dashboard-filters-autocomplete.mjs.map +1 -1
  444. package/fesm2022/provoly-dashboard-filters-date.mjs +7 -7
  445. package/fesm2022/provoly-dashboard-filters-date.mjs.map +1 -1
  446. package/fesm2022/provoly-dashboard-filters-list.mjs +10 -10
  447. package/fesm2022/provoly-dashboard-filters-list.mjs.map +1 -1
  448. package/fesm2022/provoly-dashboard-filters-number.mjs +7 -7
  449. package/fesm2022/provoly-dashboard-filters-number.mjs.map +1 -1
  450. package/fesm2022/provoly-dashboard-filters-text.mjs +7 -7
  451. package/fesm2022/provoly-dashboard-filters-text.mjs.map +1 -1
  452. package/fesm2022/provoly-dashboard-import.mjs +20 -20
  453. package/fesm2022/provoly-dashboard-import.mjs.map +1 -1
  454. package/fesm2022/provoly-dashboard-notification.mjs +19 -19
  455. package/fesm2022/provoly-dashboard-notification.mjs.map +1 -1
  456. package/fesm2022/provoly-dashboard-pipeline-components-filter.mjs +7 -7
  457. package/fesm2022/provoly-dashboard-pipeline-components-filter.mjs.map +1 -1
  458. package/fesm2022/provoly-dashboard-pipeline-components-input-datasource.mjs +7 -7
  459. package/fesm2022/provoly-dashboard-pipeline-components-input-datasource.mjs.map +1 -1
  460. package/fesm2022/provoly-dashboard-pipeline-components-noop.mjs +7 -7
  461. package/fesm2022/provoly-dashboard-pipeline-components-noop.mjs.map +1 -1
  462. package/fesm2022/provoly-dashboard-pipeline-components-output-dataset.mjs +7 -7
  463. package/fesm2022/provoly-dashboard-pipeline-components-output-dataset.mjs.map +1 -1
  464. package/fesm2022/provoly-dashboard-pipeline-components-subgraph.mjs +7 -7
  465. package/fesm2022/provoly-dashboard-pipeline-components-subgraph.mjs.map +1 -1
  466. package/fesm2022/provoly-dashboard-pipeline.mjs +28 -28
  467. package/fesm2022/provoly-dashboard-pipeline.mjs.map +1 -1
  468. package/fesm2022/provoly-dashboard-presentation.mjs +75 -84
  469. package/fesm2022/provoly-dashboard-presentation.mjs.map +1 -1
  470. package/fesm2022/provoly-dashboard-restitution.mjs +71 -30
  471. package/fesm2022/provoly-dashboard-restitution.mjs.map +1 -1
  472. package/fesm2022/provoly-dashboard-search.mjs +79 -75
  473. package/fesm2022/provoly-dashboard-search.mjs.map +1 -1
  474. package/fesm2022/provoly-dashboard-supervision.mjs +41 -41
  475. package/fesm2022/provoly-dashboard-supervision.mjs.map +1 -1
  476. package/fesm2022/provoly-dashboard-toolbox.mjs +56 -50
  477. package/fesm2022/provoly-dashboard-toolbox.mjs.map +1 -1
  478. package/fesm2022/provoly-dashboard-tooltips-attribute.mjs +7 -7
  479. package/fesm2022/provoly-dashboard-tooltips-attribute.mjs.map +1 -1
  480. package/fesm2022/provoly-dashboard-tooltips-cluster.mjs +7 -7
  481. package/fesm2022/provoly-dashboard-tooltips-cluster.mjs.map +1 -1
  482. package/fesm2022/provoly-dashboard-widgets-widget-aggregated-chart.mjs +29 -17
  483. package/fesm2022/provoly-dashboard-widgets-widget-aggregated-chart.mjs.map +1 -1
  484. package/fesm2022/provoly-dashboard-widgets-widget-chart.mjs +10 -10
  485. package/fesm2022/provoly-dashboard-widgets-widget-chart.mjs.map +1 -1
  486. package/fesm2022/provoly-dashboard-widgets-widget-detail.mjs +10 -10
  487. package/fesm2022/provoly-dashboard-widgets-widget-detail.mjs.map +1 -1
  488. package/fesm2022/provoly-dashboard-widgets-widget-graph.mjs +10 -10
  489. package/fesm2022/provoly-dashboard-widgets-widget-graph.mjs.map +1 -1
  490. package/fesm2022/provoly-dashboard-widgets-widget-iframe.mjs +13 -13
  491. package/fesm2022/provoly-dashboard-widgets-widget-iframe.mjs.map +1 -1
  492. package/fesm2022/provoly-dashboard-widgets-widget-image.mjs +10 -10
  493. package/fesm2022/provoly-dashboard-widgets-widget-image.mjs.map +1 -1
  494. package/fesm2022/provoly-dashboard-widgets-widget-map.mjs +345 -63
  495. package/fesm2022/provoly-dashboard-widgets-widget-map.mjs.map +1 -1
  496. package/fesm2022/provoly-dashboard-widgets-widget-table.mjs +36 -31
  497. package/fesm2022/provoly-dashboard-widgets-widget-table.mjs.map +1 -1
  498. package/fesm2022/provoly-dashboard-widgets-widget-template.mjs +10 -10
  499. package/fesm2022/provoly-dashboard-widgets-widget-template.mjs.map +1 -1
  500. package/fesm2022/provoly-dashboard-widgets-widget-tile.mjs +10 -10
  501. package/fesm2022/provoly-dashboard-widgets-widget-tile.mjs.map +1 -1
  502. package/fesm2022/provoly-dashboard-widgets-widget-vega.mjs +10 -10
  503. package/fesm2022/provoly-dashboard-widgets-widget-vega.mjs.map +1 -1
  504. package/fesm2022/provoly-dashboard.mjs +806 -741
  505. package/fesm2022/provoly-dashboard.mjs.map +1 -1
  506. package/lib/core/components/get-secured-image/get-secured-image.pipe.d.ts +1 -5
  507. package/lib/core/model/manifest.interface.d.ts +0 -1
  508. package/lib/core/model/widget-map-manifest.interface.d.ts +2 -0
  509. package/lib/core/store/config/config.actions.d.ts +0 -1
  510. package/lib/core/store/config/config.selectors.d.ts +0 -1
  511. package/lib/core/store/field/field.interface.d.ts +1 -0
  512. package/lib/core/store/search/search.actions.d.ts +4 -0
  513. package/lib/core/store/search/search.service.d.ts +1 -6
  514. package/lib/dashboard/components/manifests/manifests.component.d.ts +0 -1
  515. package/lib/dashboard/components/widgets/widget-instanciator/widget-factory.service.d.ts +4 -1
  516. package/lib/dashboard/dashboard.module.d.ts +2 -0
  517. package/lib/dashboard/item-utils.d.ts +2 -3
  518. package/lib/dashboard/public-api.d.ts +0 -1
  519. package/lib/dashboard/store/dashboard.actions.d.ts +7 -7
  520. package/lib/dashboard/store/dashboard.effects.d.ts +15 -2
  521. package/lib/dashboard/store/dashboard.selectors.d.ts +13 -7
  522. package/lib/dashboard/store/manifest-utils.class.d.ts +4 -1
  523. package/lib/dashboard/store/proxy.utils.d.ts +24 -0
  524. package/package.json +7 -7
  525. package/presentation/components/presentation.component.d.ts +6 -6
  526. package/presentation/i18n/en.translations.d.ts +2 -0
  527. package/presentation/i18n/fr.translations.d.ts +2 -0
  528. package/presentation/style/_o-pry-presentation.scss +21 -7
  529. package/restitution/components/restitution-catalog/restitution-catalog.component.d.ts +5 -4
  530. package/restitution/i18n/en.translations.d.ts +1 -0
  531. package/restitution/i18n/fr.translations.d.ts +2 -0
  532. package/restitution/style/_o-restitution.scss +14 -0
  533. package/schematics/ng-update/version-0-13/index.spec.js +0 -1
  534. package/schematics/ng-update/version-0-13/index.spec.js.map +1 -1
  535. package/styles/components/_o-widget.scss +57 -2
  536. package/styles-theme/components-theme/_o-widget.theme.scss +1 -1
  537. package/widgets/widget-aggregated-chart/component/widget-aggregated-chart.component.d.ts +8 -0
  538. package/widgets/widget-map/component/widget-map.component.d.ts +41 -3
  539. package/widgets/widget-map/i18n/en.translations.d.ts +11 -0
  540. package/widgets/widget-map/i18n/fr.translations.d.ts +11 -0
  541. package/widgets/widget-map/interaction/layer-slider.class.d.ts +10 -0
  542. package/widgets/widget-map/interaction/selection-interaction.class.d.ts +2 -3
  543. package/widgets/widget-map/pipe/widget-map-legend-url.pipe.d.ts +1 -0
  544. package/widgets/widget-map/public-api.d.ts +1 -0
  545. package/widgets/widget-map/style/_o-layer-legend.scss +16 -7
  546. package/widgets/widget-map/style/_o-widget-map.scss +83 -1
  547. package/widgets/widget-map/utils/xml-utils.class.d.ts +10 -0
  548. package/assets/svgs/more_vertical.svg +0 -5
  549. package/esm2022/lib/dashboard/guard/default-view.guard.mjs +0 -41
  550. package/lib/dashboard/guard/default-view.guard.d.ts +0 -14
@@ -283,8 +283,8 @@ export class PryColorPickerComponent {
283
283
  mouseUp($event) {
284
284
  this.selectColor($event, false);
285
285
  }
286
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: PryColorPickerComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
287
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.6", type: PryColorPickerComponent, selector: "pry-color-picker", providers: [
286
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PryColorPickerComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
287
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: PryColorPickerComponent, selector: "pry-color-picker", providers: [
288
288
  {
289
289
  provide: NG_VALUE_ACCESSOR,
290
290
  useExisting: forwardRef(() => PryColorPickerComponent),
@@ -292,7 +292,7 @@ export class PryColorPickerComponent {
292
292
  }
293
293
  ], viewQueries: [{ propertyName: "selector", first: true, predicate: ["selector"], descendants: true }, { propertyName: "bar", first: true, predicate: ["bar"], descendants: true }, { propertyName: "input", first: true, predicate: ["input"], descendants: true }], ngImport: i0, template: "<div\n class=\"a-color-picker\"\n (click)=\"togglePicker($event)\"\n [style.background-color]=\"temporaryColor ?? color\"\n [title]=\"color\"\n role=\"button\"\n>\n <div class=\"a-color-picker__modal\" [style.display]=\"picking ? 'flex' : 'none'\">\n <div class=\"a-color-picker__modal__backdrop\">\n <canvas\n #selector\n class=\"a-color-picker__modal__selector\"\n (mousemove)=\"mouseMove($event)\"\n (mouseup)=\"mouseUp($event)\"\n height=\"300\"\n width=\"300\"\n ></canvas>\n <canvas\n #bar\n class=\"a-color-picker__modal__bar\"\n (click)=\"selectColorFromBar($event)\"\n height=\"300\"\n width=\"40\"\n ></canvas>\n <div class=\"a-color-picker__modal__input\" (click)=\"clickInput($event)\">\n #<input [ngModel]=\"(color ?? '#').substring(1)\" (ngModelChange)=\"inputColor($event)\" #input />\n </div>\n </div>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i1.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: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] }); }
294
294
  }
295
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: PryColorPickerComponent, decorators: [{
295
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PryColorPickerComponent, decorators: [{
296
296
  type: Component,
297
297
  args: [{ selector: 'pry-color-picker', providers: [
298
298
  {
@@ -311,4 +311,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.6", ngImpor
311
311
  type: ViewChild,
312
312
  args: ['input']
313
313
  }] } });
314
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sb3ItcGlja2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Byb3ZvbHkvZGFzaGJvYXJkL2NvbXBvbmVudHMvY29sb3ItcGlja2VyL2NvbG9yLXBpY2tlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcm92b2x5L2Rhc2hib2FyZC9jb21wb25lbnRzL2NvbG9yLXBpY2tlci9jb2xvci1waWNrZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFvQyxTQUFTLEVBQWMsVUFBVSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMvRyxPQUFPLEVBQXdCLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7OztBQWN6RSxNQUFNLE9BQU8sdUJBQXVCO0lBcUJsQyxZQUFvQixHQUFzQjtRQUF0QixRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQXBCMUMsYUFBUSxHQUFRLEdBQUcsRUFBRSxHQUFFLENBQUMsQ0FBQztRQUN6QixZQUFPLEdBQVEsR0FBRyxFQUFFLEdBQUUsQ0FBQyxDQUFDO1FBQ3hCLFVBQUssR0FBSSxTQUFTLENBQUM7UUFDbkIsYUFBUSxHQUFXLFNBQVMsQ0FBQztRQUM3QixhQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ2pCLGFBQVEsR0FBRyxJQUFJLENBQUM7UUFDaEIsWUFBTyxHQUFZLEtBQUssQ0FBQztRQU16QiwyQkFBc0IsR0FBcUIsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDbEQsc0JBQWlCLEdBQUcsQ0FBQyxDQUFDO1FBR3RCLGdCQUFXLEdBQUcsQ0FBQyxDQUFDO1FBQ2hCLGdCQUFXLEdBQUcsQ0FBQyxDQUFDO0lBRzZCLENBQUM7SUFFOUMsZ0JBQWdCLENBQUMsRUFBTztRQUN0QixJQUFJLENBQUMsUUFBUSxHQUFHLEVBQUUsQ0FBQztJQUNyQixDQUFDO0lB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LEdBQUc7c0JBQXBCLFNBQVM7dUJBQUMsS0FBSztnQkFLSSxLQUFLO3NCQUF4QixTQUFTO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBmb3J3YXJkUmVmLCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAncHJ5LWNvbG9yLXBpY2tlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9jb2xvci1waWNrZXIuY29tcG9uZW50Lmh0bWwnLFxuXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gUHJ5Q29sb3JQaWNrZXJDb21wb25lbnQpLFxuICAgICAgbXVsdGk6IHRydWVcbiAgICB9XG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgUHJ5Q29sb3JQaWNrZXJDb21wb25lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciwgQWZ0ZXJWaWV3SW5pdCB7XG4gIG9uQ2hhbmdlOiBhbnkgPSAoKSA9PiB7fTtcbiAgb25Ub3VjaDogYW55ID0gKCkgPT4ge307XG4gIGNvbG9yPyA9ICcjMDAwMDAwJztcbiAgYmFyQ29sb3I6IHN0cmluZyA9ICcjMDAwMGZmJztcbiAgZGlzYWJsZWQgPSBmYWxzZTtcbiAgaW5oaWJhdGUgPSB0cnVlO1xuICBwaWNraW5nOiBib29sZWFuID0gZmFsc2U7XG5cbiAgQFZpZXdDaGlsZCgnc2VsZWN0b3InKSBzZWxlY3RvciE6IEVsZW1lbnRSZWY8SFRNTENhbnZhc0VsZW1lbnQ+O1xuICBzZWxlY3RvckNvbnRleHQhOiBDYW52YXNSZW5kZXJpbmdDb250ZXh0MkQ7XG4gIEBWaWV3Q2hpbGQoJ2JhcicpIGJhciE6IEVsZW1lbnRSZWY8SFRNTENhbnZhc0VsZW1lbnQ+O1xuICBiYXJDb250ZXh0ITogQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJEO1xuICBtYXJrZXJTZWxlY3RvclBvc2l0aW9uOiBbbnVtYmVyLCBudW1iZXJdID0gWzAsIDBdO1xuICBtYXJrZXJCYXJQb3NpdGlvbiA9IDA7XG5cbiAgQFZpZXdDaGlsZCgnaW5wdXQnKSBpbnB1dCE6IEVsZW1lbnRSZWY8SFRNTElucHV0RWxlbWVudD47XG4gIGlubmVyUmFkaXVzID0gMztcbiAgb3V0ZXJSYWRpdXMgPSA4O1xuICB0ZW1wb3JhcnlDb2xvcj86IHN0cmluZztcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9jZDogQ2hhbmdlRGV0ZWN0b3JSZWYpIHt9XG5cbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XG4gICAgdGhpcy5vbkNoYW5nZSA9IGZuO1xuICB9XG5cbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMub25Ub3VjaCA9IGZuO1xuICB9XG5cbiAgLy8gRGVmaW5lIHdoYXQgc2hvdWxkIGhhcHBlbiBpbiB0aGlzIGNvbXBvbmVudCwgaWYgc29tZXRoaW5nIGNoYW5nZXMgb3V0c2lkZVxuICB3cml0ZVZhbHVlKGNvbG9yOiBzdHJpbmcpIHtcbiAgICBpZiAodGhpcy5jb2xvciAhPT0gY29sb3IgJiYgIXRoaXMuaW5oaWJhdGUpIHtcbiAgICAgIHRoaXMuY29sb3IgPSBjb2xvcjtcbiAgICAgIHRoaXMub25DaGFuZ2UodGhpcy5jb2xvcik7XG4gICAgICB0aGlzLm9uVG91Y2goKTtcbiAgICAgIHRoaXMuX2NkLm1hcmtGb3JDaGVjaygpO1xuICAgICAgdGhpcy5pbnB1dENvbG9yKGNvbG9yKTtcbiAgICB9XG4gIH1cblxuICBzZXREaXNhYmxlZFN0YXRlKGlzRGlzYWJsZWQ6IGJvb2xlYW4pIHtcbiAgICB0aGlzLmRpc2FibGVkID0gaXNEaXNhYmxlZDtcbiAgICB0aGlzLl9jZC5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmluaGliYXRlID0gZmFsc2U7XG4gICAgdGhpcy5zZWxlY3RvckNvbnRleHQgPSB0aGlzLnNlbGVjdG9yLm5hdGl2ZUVsZW1lbnQuZ2V0Q29udGV4dCgnMmQnLCB7IHdpbGxSZWFkRnJlcXVlbnRseTogdHJ1ZSB9KSE7XG4gICAgdGhpcy5iYXJDb250ZXh0ID0gdGhpcy5iYXIubmF0aXZlRWxlbWVudC5nZXRDb250ZXh0KCcyZCcsIHsgd2lsbFJlYWRGcmVxdWVudGx5OiB0cnVlIH0pITtcbiAgfVxuXG4gIHRvZ2dsZVBpY2tlcigkZXZlbnQ6IE1vdXNlRXZlbnQpIHtcbiAgICB0aGlzLnBpY2tpbmcgPSAhdGhpcy5kaXNhYmxlZCAmJiAhdGhpcy5waWNraW5nO1xuICAgIGlmICghdGhpcy5waWNraW5nICYmIHRoaXMudGVtcG9yYXJ5Q29sb3IpIHtcbiAgICAgIHRoaXMud3JpdGVWYWx1ZSh0aGlzLnRlbXBvcmFyeUNvbG9yKTtcbiAgICB9XG4gICAgaWYgKHRoaXMucGlja2luZykge1xuICAgICAgdGhpcy5yZWRyYXdTZWxlY3RvcigpO1xuICAgICAgdGhpcy5yZWRyYXdCYXIoKTtcbiAgICB9XG4gIH1cblxuICByZWRyYXdTZWxlY3RvcigpIHtcbiAgICB0aGlzLnNlbGVjdG9yQ29udGV4dC5jbGVhclJlY3QoMCwgMCwgdGhpcy5zZWxlY3RvckNvbnRleHQuY2FudmFzLndpZHRoLCB0aGlzLnNlbGVjdG9yQ29udGV4dC5jYW52YXMuaGVpZ2h0KTtcbiAgICB0aGlzLmRyYXdDb2xvckdyYWRpZW50KHRoaXMuc2VsZWN0b3JDb250ZXh0LCBmYWxzZSwgWycjZmZmZmZmJywgdGhpcy5iYXJDb2xvcl0pO1xuICAgIHRoaXMuZHJhd0NvbG9yR3JhZGllbnQodGhpcy5zZWxlY3RvckNvbnRleHQsIHRydWUsIFsncmdiYSgwLDAsMCwwKScsICcjMDAwJ10pO1xuICAgIHRoaXMuZHJhd1NlbGVjdG9yTWFya2VyKCk7XG4gIH1cblxuICByZWRyYXdCYXIoKSB7XG4gICAgdGhpcy5iYXJDb250ZXh0LmNsZWFyUmVjdCgwLCAwLCB0aGlzLmJhckNvbnRleHQuY2FudmFzLndpZHRoLCB0aGlzLmJhckNvbnRleHQuY2FudmFzLmhlaWdodCk7XG4gICAgdGhpcy5kcmF3Q29sb3JHcmFkaWVudCh0aGlzLmJhckNvbnRleHQsIHRydWUsIFtcbiAgICAgICcjRkYwMDAwJyxcbiAgICAgICcjZmZmZjAwJyxcbiAgICAgICcjMDBGRjAwJyxcbiAgICAgICcjMDBGRkZGJyxcbiAgICAgICcjMDAwMEZGJyxcbiAgICAgICcjRkYwMEZGJyxcbiAgICAgICcjRkYwMDAwJ1xuICAgIF0pO1xuICAgIHRoaXMuZHJhd0Jhck1hcmtlcigpO1xuICB9XG5cbiAgZHJhd0NvbG9yR3JhZGllbnQoY3R4dDogQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJELCB2ZXJ0aWNhbCA9IHRydWUsIGNvbG9yczogc3RyaW5nW10pIHtcbiAgICBjb25zdCBncmFkaWVudEFyZ3M6IFtudW1iZXIsIG51bWJlciwgbnVtYmVyLCBudW1iZXJdID0gdmVydGljYWxcbiAgICAgID8gWzAsIDAsIDAsIGN0eHQuY2FudmFzLmhlaWdodF1cbiAgICAgIDogWzAsIDAsIGN0eHQuY2FudmFzLndpZHRoLCAwXTtcbiAgICBsZXQgZ3JhZGllbnQgPSBjdHh0LmNyZWF0ZUxpbmVhckdyYWRpZW50KC4uLmdyYWRpZW50QXJncyk7XG4gICAgY29sb3JzLmZvckVhY2goKGNvbG9yLCBpZHgpID0+IHtcbiAgICAgIGdyYWRpZW50LmFkZENvbG9yU3RvcChpZHggLyAoY29sb3JzLmxlbmd0aCAtIDEpLCBjb2xvcik7XG4gICAgfSk7XG4gICAgY3R4dC5maWxsU3R5bGUgPSBncmFkaWVudDtcbiAgICBjdHh0LmZpbGxSZWN0KDAsIDAsIGN0eHQuY2FudmFzLndpZHRoLCBjdHh0LmNhbnZhcy5oZWlnaHQpO1xuICB9XG5cbiAgZHJhd1NlbGVjdG9yTWFya2VyKCkge1xuICAgIGNvbnN0IGdyYWRpZW50ID0gdGhpcy5zZWxlY3RvckNvbnRleHQuY3JlYXRlUmFkaWFsR3JhZGllbnQoXG4gICAgICB0aGlzLm1hcmtlclNlbGVjdG9yUG9zaXRpb25bMF0sXG4gICAgICB0aGlzLm1hcmtlclNlbGVjdG9yUG9zaXRpb25bMV0sXG4gICAgICB0aGlzLmlubmVyUmFkaXVzLFxuICAgICAgdGhpcy5tYXJrZXJTZWxlY3RvclBvc2l0aW9uWzBdLFxuICAgICAgdGhpcy5tYXJrZXJTZWxlY3RvclBvc2l0aW9uWzFdLFxuICAgICAgdGhpcy5vdXRlclJhZGl1c1xuICAgICk7XG4gICAgZ3JhZGllbnQuYWRkQ29sb3JTdG9wKDAsICdyZ2JhKDAsMCwwLDApJyk7XG4gICAgZ3JhZGllbnQuYWRkQ29sb3JTdG9wKDEsICcjZmZmZmZmJyk7XG5cbiAgICB0aGlzLnNlbGVjdG9yQ29udGV4dC5iZWdpblBhdGgoKTtcbiAgICB0aGlzLnNlbGVjdG9yQ29udGV4dC5hcmMoXG4gICAgICB0aGlzLm1hcmtlclNlbGVjdG9yUG9zaXRpb25bMF0sXG4gICAgICB0aGlzLm1hcmtlclNlbGVjdG9yUG9zaXRpb25bMV0sXG4gICAgICB0aGlzLm91dGVyUmFkaXVzLFxuICAgICAgMCxcbiAgICAgIDIgKiBNYXRoLlBJXG4gICAgKTtcbiAgICB0aGlzLnNlbGVjdG9yQ29udGV4dC5maWxsU3R5bGUgPSBncmFkaWVudDtcbiAgICB0aGlzLnNlbGVjdG9yQ29udGV4dC5maWxsKCk7XG4gICAgdGhpcy5zZWxlY3RvckNvbnRleHQuc3Ryb2tlKCk7XG4gIH1cblxuICBkcmF3QmFyTWFya2VyKCkge1xuICAgIHRoaXMuYmFyQ29udGV4dC5zdHJva2VTdHlsZSA9ICcycHggc29saWQgYmxhY2snO1xuICAgIHRoaXMuYmFyQ29udGV4dC5iZWdpblBhdGgoKTtcbiAgICB0aGlzLmJhckNvbnRleHQubW92ZVRvKDAsIHRoaXMubWFya2VyQmFyUG9zaXRpb24gLSB0aGlzLmlubmVyUmFkaXVzKTtcbiAgICB0aGlzLmJhckNvbnRleHQubGluZVRvKHRoaXMuYmFyQ29udGV4dC5jYW52YXMud2lkdGgsIHRoaXMubWFya2VyQmFyUG9zaXRpb24gLSB0aGlzLmlubmVyUmFkaXVzKTtcbiAgICB0aGlzLmJhckNvbnRleHQuc3Ryb2tlKCk7XG4gICAgdGhpcy5iYXJDb250ZXh0LmJlZ2luUGF0aCgpO1xuICAgIHRoaXMuYmFyQ29udGV4dC5tb3ZlVG8oMCwgdGhpcy5tYXJrZXJCYXJQb3NpdGlvbiArIHRoaXMuaW5uZXJSYWRpdXMpO1xuICAgIHRoaXMuYmFyQ29udGV4dC5saW5lVG8odGhpcy5iYXJDb250ZXh0LmNhbnZhcy53aWR0aCwgdGhpcy5tYXJrZXJCYXJQb3NpdGlvbiArIHRoaXMuaW5uZXJSYWRpdXMpO1xuICAgIHRoaXMuYmFyQ29udGV4dC5zdHJva2UoKTtcbiAgfVxuXG4gIHNlbGVjdENvbG9yKCRldmVudDogTW91c2VFdmVudCwgdGVtcG9yYXJ5ID0gZmFsc2UpIHtcbiAgICAvLyBSZWFkIHBpeGVsIENvbG9yXG4gICAgY29uc3QgcGl4ZWxDb2xvciA9IHRoaXMucmdiVG9IZXgoXG4gICAgICAuLi4odGhpcy5zZWxlY3RvckNvbnRleHQuZ2V0SW1hZ2VEYXRhKCRldmVudC5vZmZzZXRYLCAkZXZlbnQub2Zmc2V0WSwgMSwgMSlbJ2RhdGEnXSBhcyB1bmtub3duIGFzIFtcbiAgICAgICAgbnVtYmVyLFxuICAgICAgICBudW1iZXIsXG4gICAgICAgIG51bWJlclxuICAgICAgXSlcbiAgICApO1xuICAgIGlmICghdGVtcG9yYXJ5KSB7XG4gICAgICB0aGlzLndyaXRlVmFsdWUocGl4ZWxDb2xvcik7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudGVtcG9yYXJ5Q29sb3IgPSBwaXhlbENvbG9yO1xuICAgIH1cblxuICAgIHRoaXMubWFya2VyU2VsZWN0b3JQb3NpdGlvbiA9IFskZXZlbnQub2Zmc2V0WCwgJGV2ZW50Lm9mZnNldFldO1xuICAgIHRoaXMucmVkcmF3U2VsZWN0b3IoKTtcbiAgICAkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gIH1cblxuICBzZWxlY3RDb2xvckZyb21CYXIoJGV2ZW50OiBNb3VzZUV2ZW50KSB7XG4gICAgdGhpcy5tYXJrZXJCYXJQb3NpdGlvbiA9ICRldmVudC5vZmZzZXRZO1xuICAgIHRoaXMuYmFyQ29sb3IgPSB0aGlzLnJnYlRvSGV4KFxuICAgICAgLi4uKHRoaXMuYmFyQ29udGV4dC5nZXRJbWFnZURhdGEoMjAsICRldmVudC5vZmZzZXRZLCAxLCAxKVsnZGF0YSddIGFzIHVua25vd24gYXMgW251bWJlciwgbnVtYmVyLCBudW1iZXJdKVxuICAgICk7XG4gICAgdGhpcy5yZWRyYXdCYXIoKTtcbiAgICB0aGlzLnJlZHJhd1NlbGVjdG9yKCk7XG4gICAgdGhpcy5zZWxlY3RDb2xvcihcbiAgICAgIHtcbiAgICAgICAgb2Zmc2V0WDogdGhpcy5tYXJrZXJTZWxlY3RvclBvc2l0aW9uWzBdLFxuICAgICAgICBvZmZzZXRZOiB0aGlzLm1hcmtlclNlbGVjdG9yUG9zaXRpb25bMV0sXG4gICAgICAgIHN0b3BQcm9wYWdhdGlvbjogKCkgPT4gJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXG4gICAgICB9IGFzIHVua25vd24gYXMgTW91c2VFdmVudCxcbiAgICAgIHRydWVcbiAgICApO1xuICAgICRldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgfVxuXG4gIGNvbXBvbmVudFRvSGV4KGM6IG51bWJlcikge1xuICAgIHJldHVybiBjLnRvU3RyaW5nKDE2KS5wYWRTdGFydCgyLCAnMCcpO1xuICB9XG5cbiAgcmdiVG9IZXgocjogbnVtYmVyLCBnOiBudW1iZXIsIGI6IG51bWJlcikge1xuICAgIHJldHVybiAnIycgKyB0aGlzLmNvbXBvbmVudFRvSGV4KHIpICsgdGhpcy5jb21wb25lbnRUb0hleChnKSArIHRoaXMuY29tcG9uZW50VG9IZXgoYik7XG4gIH1cblxuICBjbGlja0lucHV0KCRldmVudDogTW91c2VFdmVudCkge1xuICAgIHRoaXMuaW5wdXQubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICAgICRldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgfVxuXG4gIGlucHV0Q29sb3IoJGV2ZW50OiBhbnkpIHtcbiAgICBjb25zdCBwb3NzaWJsZUNvbG9yID0gISEkZXZlbnQgPyAoJGV2ZW50LmluZGV4T2YoJyMnKSA9PT0gLTEgPyAnIycgKyAkZXZlbnQgOiAkZXZlbnQpIDogJyM0MEI2ODgnO1xuICAgIGlmICgvXiNbMC05QS1GXXs2fSQvaS50ZXN0KHBvc3NpYmxlQ29sb3IpKSB7XG4gICAgICB0aGlzLndyaXRlVmFsdWUocG9zc2libGVDb2xvcik7XG4gICAgICBjb25zdCByZ2JhID0gdGhpcy5zdHJUb1JHQkEodGhpcy5jb2xvciEpO1xuICAgICAgY29uc3QgaHN2YSA9IHRoaXMuUkdCQXRvSFNWQShyZ2JhKTtcbiAgICAgIHRoaXMubWFya2VyQmFyUG9zaXRpb24gPSAodGhpcy5iYXJDb250ZXh0LmNhbnZhcy5oZWlnaHQgKiBoc3ZhLmgpIC8gMzYwO1xuICAgICAgdGhpcy5tYXJrZXJTZWxlY3RvclBvc2l0aW9uID0gW1xuICAgICAgICAodGhpcy5zZWxlY3RvckNvbnRleHQuY2FudmFzLndpZHRoICogaHN2YS5zKSAvIDEwMCxcbiAgICAgICAgdGhpcy5zZWxlY3RvckNvbnRleHQuY2FudmFzLmhlaWdodCAqICgxIC0gaHN2YS52IC8gMTAwKVxuICAgICAgXTtcbiAgICAgIHRoaXMuYmFyQ29sb3IgPSB0aGlzLmhzbFRvSGV4KGhzdmEuaCwgMTAwLCA1MCk7XG4gICAgICB0aGlzLnJlZHJhd0JhcigpO1xuICAgICAgdGhpcy5yZWRyYXdTZWxlY3RvcigpO1xuICAgIH1cbiAgfVxuXG4gIHN0clRvUkdCQShzdHI6IHN0cmluZykge1xuICAgIGNvbnN0IHJlZ2V4ID0gL14oKHJnYmEpfHJnYilbXFxEXSsoW1xcZC5dKylbXFxEXSsoW1xcZC5dKylbXFxEXSsoW1xcZC5dKylbXFxEXSo/KFtcXGQuXSt8JCkvaTtcbiAgICBsZXQgbWF0Y2gsIHJnYmE7XG5cbiAgICAvLyBEZWZhdWx0IHRvIGJsYWNrIGZvciBpbnZhbGlkIGNvbG9yIHN0cmluZ3NcbiAgICB0aGlzLnNlbGVjdG9yQ29udGV4dC5maWxsU3R5bGUgPSAnIzAwMCc7XG5cbiAgICAvLyBVc2UgY2FudmFzIHRvIGNvbnZlcnQgdGhlIHN0cmluZyB0byBhIHZhbGlkIGNvbG9yIHN0cmluZ1xuICAgIHRoaXMuc2VsZWN0b3JDb250ZXh0LmZpbGxTdHlsZSA9IHN0cjtcbiAgICBtYXRjaCA9IHJlZ2V4LmV4ZWModGhpcy5zZWxlY3RvckNvbnRleHQuZmlsbFN0eWxlKTtcblxuICAgIGlmIChtYXRjaCkge1xuICAgICAgcmdiYSA9IHtcbiAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICByOiBtYXRjaFszXSAqIDEsXG4gICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgZzogbWF0Y2hbNF0gKiAxLFxuICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgIGI6IG1hdGNoWzVdICogMSxcbiAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICBhOiBtYXRjaFs2XSAqIDFcbiAgICAgIH07XG5cbiAgICAgIC8vIFdvcmthcm91bmQgdG8gbWl0aWdhdGUgYSBDaHJvbWl1bSBidWcgd2hlcmUgdGhlIGFscGhhIHZhbHVlIGlzIHJvdW5kZWQgaW5jb3JyZWN0bHlcbiAgICAgIHJnYmEuYSA9ICtyZ2JhLmEudG9GaXhlZCgyKTtcbiAgICB9IGVsc2Uge1xuICAgICAgbWF0Y2ggPSB0aGlzLnNlbGVjdG9yQ29udGV4dC5maWxsU3R5bGVcbiAgICAgICAgLnJlcGxhY2UoJyMnLCAnJylcbiAgICAgICAgLm1hdGNoKC8uezJ9L2cpIVxuICAgICAgICAubWFwKChoKSA9PiBwYXJzZUludChoLCAxNikpO1xuICAgICAgcmdiYSA9IHtcbiAgICAgICAgcjogbWF0Y2hbMF0sXG4gICAgICAgIGc6IG1hdGNoWzFdLFxuICAgICAgICBiOiBtYXRjaFsyXSxcbiAgICAgICAgYTogMVxuICAgICAgfTtcbiAgICB9XG5cbiAgICByZXR1cm4gcmdiYTtcbiAgfVxuXG4gIFJHQkF0b0hTVkEocmdiYTogYW55KSB7XG4gICAgY29uc3QgcmVkID0gcmdiYS5yIC8gMjU1O1xuICAgIGNvbnN0IGdyZWVuID0gcmdiYS5nIC8gMjU1O1xuICAgIGNvbnN0IGJsdWUgPSByZ2JhLmIgLyAyNTU7XG4gICAgY29uc3QgeG1heCA9IE1hdGgubWF4KHJlZCwgZ3JlZW4sIGJsdWUpO1xuICAgIGNvbnN0IHhtaW4gPSBNYXRoLm1pbihyZWQsIGdyZWVuLCBibHVlKTtcbiAgICBjb25zdCBjaHJvbWEgPSB4bWF4IC0geG1pbjtcbiAgICBjb25zdCB2YWx1ZSA9IHhtYXg7XG4gICAgbGV0IGh1ZSA9IDA7XG4gICAgbGV0IHNhdHVyYXRpb24gPSAwO1xuXG4gICAgaWYgKGNocm9tYSkge1xuICAgICAgaWYgKHhtYXggPT09IHJlZCkge1xuICAgICAgICBodWUgPSAoZ3JlZW4gLSBibHVlKSAvIGNocm9tYTtcbiAgICAgIH1cbiAgICAgIGlmICh4bWF4ID09PSBncmVlbikge1xuICAgICAgICBodWUgPSAyICsgKGJsdWUgLSByZWQpIC8gY2hyb21hO1xuICAgICAgfVxuICAgICAgaWYgKHhtYXggPT09IGJsdWUpIHtcbiAgICAgICAgaHVlID0gNCArIChyZWQgLSBncmVlbikgLyBjaHJvbWE7XG4gICAgICB9XG4gICAgICBpZiAoeG1heCkge1xuICAgICAgICBzYXR1cmF0aW9uID0gY2hyb21hIC8geG1heDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBodWUgPSBNYXRoLmZsb29yKGh1ZSAqIDYwKTtcblxuICAgIHJldHVybiB7XG4gICAgICBoOiBodWUgPCAwID8gaHVlICsgMzYwIDogaHVlLFxuICAgICAgczogTWF0aC5yb3VuZChzYXR1cmF0aW9uICogMTAwKSxcbiAgICAgIHY6IE1hdGgucm91bmQodmFsdWUgKiAxMDApLFxuICAgICAgYTogcmdiYS5hXG4gICAgfTtcbiAgfVxuXG4gIGhzbFRvSGV4KGg6IG51bWJlciwgczogbnVtYmVyLCBsOiBudW1iZXIpIHtcbiAgICBzIC89IDEwMDtcbiAgICBsIC89IDEwMDtcblxuICAgIGxldCBjID0gKDEgLSBNYXRoLmFicygyICogbCAtIDEpKSAqIHMsXG4gICAgICB4ID0gYyAqICgxIC0gTWF0aC5hYnMoKChoIC8gNjApICUgMikgLSAxKSksXG4gICAgICBtID0gbCAtIGMgLyAyLFxuICAgICAgciA9IDAsXG4gICAgICBnID0gMCxcbiAgICAgIGIgPSAwO1xuXG4gICAgaWYgKDAgPD0gaCAmJiBoIDwgNjApIHtcbiAgICAgIHIgPSBjO1xuICAgICAgZyA9IHg7XG4gICAgICBiID0gMDtcbiAgICB9IGVsc2UgaWYgKDYwIDw9IGggJiYgaCA8IDEyMCkge1xuICAgICAgciA9IHg7XG4gICAgICBnID0gYztcbiAgICAgIGIgPSAwO1xuICAgIH0gZWxzZSBpZiAoMTIwIDw9IGggJiYgaCA8IDE4MCkge1xuICAgICAgciA9IDA7XG4gICAgICBnID0gYztcbiAgICAgIGIgPSB4O1xuICAgIH0gZWxzZSBpZiAoMTgwIDw9IGggJiYgaCA8IDI0MCkge1xuICAgICAgciA9IDA7XG4gICAgICBnID0geDtcbiAgICAgIGIgPSBjO1xuICAgIH0gZWxzZSBpZiAoMjQwIDw9IGggJiYgaCA8IDMwMCkge1xuICAgICAgciA9IHg7XG4gICAgICBnID0gMDtcbiAgICAgIGIgPSBjO1xuICAgIH0gZWxzZSBpZiAoMzAwIDw9IGggJiYgaCA8IDM2MCkge1xuICAgICAgciA9IGM7XG4gICAgICBnID0gMDtcbiAgICAgIGIgPSB4O1xuICAgIH1cbiAgICAvLyBIYXZpbmcgb2J0YWluZWQgUkdCLCBjb252ZXJ0IGNoYW5uZWxzIHRvIGhleFxuICAgIC8vIEB0cy1pZ25vcmVcbiAgICByID0gTWF0aC5yb3VuZCgociArIG0pICogMjU1KS50b1N0cmluZygxNik7XG4gICAgLy8gQHRzLWlnbm9yZVxuICAgIGcgPSBNYXRoLnJvdW5kKChnICsgbSkgKiAyNTUpLnRvU3RyaW5nKDE2KTtcbiAgICAvLyBAdHMtaWdub3JlXG4gICAgYiA9IE1hdGgucm91bmQoKGIgKyBtKSAqIDI1NSkudG9TdHJpbmcoMTYpO1xuXG4gICAgLy8gUHJlcGVuZCAwcywgaWYgbmVjZXNzYXJ5XG4gICAgLy8gQHRzLWlnbm9yZVxuICAgIGlmIChyLmxlbmd0aCA9PSAxKSByID0gJzAnICsgcjtcbiAgICAvLyBAdHMtaWdub3JlXG4gICAgaWYgKGcubGVuZ3RoID09IDEpIGcgPSAnMCcgKyBnO1xuICAgIC8vIEB0cy1pZ25vcmVcbiAgICBpZiAoYi5sZW5ndGggPT0gMSkgYiA9ICcwJyArIGI7XG5cbiAgICByZXR1cm4gJyMnICsgciArIGcgKyBiO1xuICB9XG5cbiAgbW91c2VNb3ZlKCRldmVudDogTW91c2VFdmVudCkge1xuICAgIGlmICgkZXZlbnQuYnV0dG9ucyA+IDApIHtcbiAgICAgIHRoaXMuc2VsZWN0Q29sb3IoJGV2ZW50LCB0cnVlKTtcbiAgICB9XG4gIH1cblxuICBtb3VzZVVwKCRldmVudDogTW91c2VFdmVudCkge1xuICAgIHRoaXMuc2VsZWN0Q29sb3IoJGV2ZW50LCBmYWxzZSk7XG4gIH1cbn1cbiIsIjxkaXZcbiAgY2xhc3M9XCJhLWNvbG9yLXBpY2tlclwiXG4gIChjbGljayk9XCJ0b2dnbGVQaWNrZXIoJGV2ZW50KVwiXG4gIFtzdHlsZS5iYWNrZ3JvdW5kLWNvbG9yXT1cInRlbXBvcmFyeUNvbG9yID8/IGNvbG9yXCJcbiAgW3RpdGxlXT1cImNvbG9yXCJcbiAgcm9sZT1cImJ1dHRvblwiXG4+XG4gIDxkaXYgY2xhc3M9XCJhLWNvbG9yLXBpY2tlcl9fbW9kYWxcIiBbc3R5bGUuZGlzcGxheV09XCJwaWNraW5nID8gJ2ZsZXgnIDogJ25vbmUnXCI+XG4gICAgPGRpdiBjbGFzcz1cImEtY29sb3ItcGlja2VyX19tb2RhbF9fYmFja2Ryb3BcIj5cbiAgICAgIDxjYW52YXNcbiAgICAgICAgI3NlbGVjdG9yXG4gICAgICAgIGNsYXNzPVwiYS1jb2xvci1waWNrZXJfX21vZGFsX19zZWxlY3RvclwiXG4gICAgICAgIChtb3VzZW1vdmUpPVwibW91c2VNb3ZlKCRldmVudClcIlxuICAgICAgICAobW91c2V1cCk9XCJtb3VzZVVwKCRldmVudClcIlxuICAgICAgICBoZWlnaHQ9XCIzMDBcIlxuICAgICAgICB3aWR0aD1cIjMwMFwiXG4gICAgICA+PC9jYW52YXM+XG4gICAgICA8Y2FudmFzXG4gICAgICAgICNiYXJcbiAgICAgICAgY2xhc3M9XCJhLWNvbG9yLXBpY2tlcl9fbW9kYWxfX2JhclwiXG4gICAgICAgIChjbGljayk9XCJzZWxlY3RDb2xvckZyb21CYXIoJGV2ZW50KVwiXG4gICAgICAgIGhlaWdodD1cIjMwMFwiXG4gICAgICAgIHdpZHRoPVwiNDBcIlxuICAgICAgPjwvY2FudmFzPlxuICAgICAgPGRpdiBjbGFzcz1cImEtY29sb3ItcGlja2VyX19tb2RhbF9faW5wdXRcIiAoY2xpY2spPVwiY2xpY2tJbnB1dCgkZXZlbnQpXCI+XG4gICAgICAgICM8aW5wdXQgW25nTW9kZWxdPVwiKGNvbG9yID8/ICcjJykuc3Vic3RyaW5nKDEpXCIgKG5nTW9kZWxDaGFuZ2UpPVwiaW5wdXRDb2xvcigkZXZlbnQpXCIgI2lucHV0IC8+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
314
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sb3ItcGlja2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Byb3ZvbHkvZGFzaGJvYXJkL2NvbXBvbmVudHMvY29sb3ItcGlja2VyL2NvbG9yLXBpY2tlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcm92b2x5L2Rhc2hib2FyZC9jb21wb25lbnRzL2NvbG9yLXBpY2tlci9jb2xvci1waWNrZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFvQyxTQUFTLEVBQWMsVUFBVSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMvRyxPQUFPLEVBQXdCLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7OztBQWN6RSxNQUFNLE9BQU8sdUJBQXVCO0lBcUJsQyxZQUFvQixHQUFzQjtRQUF0QixRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQXBCMUMsYUFBUSxHQUFRLEdBQUcsRUFBRSxHQUFFLENBQUMsQ0FBQztRQUN6QixZQUFPLEdBQVEsR0FBRyxFQUFFLEdBQUUsQ0FBQyxDQUFDO1FBQ3hCLFVBQUssR0FBSSxTQUFTLENBQUM7UUFDbkIsYUFBUSxHQUFXLFNBQVMsQ0FBQztRQUM3QixhQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ2pCLGFBQVEsR0FBRyxJQUFJLENBQUM7UUFDaEIsWUFBTyxHQUFZLEtBQUssQ0FBQztRQU16QiwyQkFBc0IsR0FBcUIsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDbEQsc0JBQWlCLEdBQUcsQ0FBQyxDQUFDO1FBR3RCLGdCQUFXLEdBQUcsQ0FBQyxDQUFDO1FBQ2hCLGdCQUFXLEdBQUcsQ0FBQyxDQUFDO0lBRzZCLENBQUM7SUFFOUMsZ0JBQWdCLENBQUMsRUFBTztRQUN0QixJQUFJLENBQUMsUUFBUSxHQUFHLEVBQUUsQ0FBQztJQUNyQixDQUFDO0lB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LEdBQUc7c0JBQXBCLFNBQVM7dUJBQUMsS0FBSztnQkFLSSxLQUFLO3NCQUF4QixTQUFTO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBmb3J3YXJkUmVmLCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAncHJ5LWNvbG9yLXBpY2tlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9jb2xvci1waWNrZXIuY29tcG9uZW50Lmh0bWwnLFxuXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gUHJ5Q29sb3JQaWNrZXJDb21wb25lbnQpLFxuICAgICAgbXVsdGk6IHRydWVcbiAgICB9XG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgUHJ5Q29sb3JQaWNrZXJDb21wb25lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciwgQWZ0ZXJWaWV3SW5pdCB7XG4gIG9uQ2hhbmdlOiBhbnkgPSAoKSA9PiB7fTtcbiAgb25Ub3VjaDogYW55ID0gKCkgPT4ge307XG4gIGNvbG9yPyA9ICcjMDAwMDAwJztcbiAgYmFyQ29sb3I6IHN0cmluZyA9ICcjMDAwMGZmJztcbiAgZGlzYWJsZWQgPSBmYWxzZTtcbiAgaW5oaWJhdGUgPSB0cnVlO1xuICBwaWNraW5nOiBib29sZWFuID0gZmFsc2U7XG5cbiAgQFZpZXdDaGlsZCgnc2VsZWN0b3InKSBzZWxlY3RvciE6IEVsZW1lbnRSZWY8SFRNTENhbnZhc0VsZW1lbnQ+O1xuICBzZWxlY3RvckNvbnRleHQhOiBDYW52YXNSZW5kZXJpbmdDb250ZXh0MkQ7XG4gIEBWaWV3Q2hpbGQoJ2JhcicpIGJhciE6IEVsZW1lbnRSZWY8SFRNTENhbnZhc0VsZW1lbnQ+O1xuICBiYXJDb250ZXh0ITogQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJEO1xuICBtYXJrZXJTZWxlY3RvclBvc2l0aW9uOiBbbnVtYmVyLCBudW1iZXJdID0gWzAsIDBdO1xuICBtYXJrZXJCYXJQb3NpdGlvbiA9IDA7XG5cbiAgQFZpZXdDaGlsZCgnaW5wdXQnKSBpbnB1dCE6IEVsZW1lbnRSZWY8SFRNTElucHV0RWxlbWVudD47XG4gIGlubmVyUmFkaXVzID0gMztcbiAgb3V0ZXJSYWRpdXMgPSA4O1xuICB0ZW1wb3JhcnlDb2xvcj86IHN0cmluZztcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9jZDogQ2hhbmdlRGV0ZWN0b3JSZWYpIHt9XG5cbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XG4gICAgdGhpcy5vbkNoYW5nZSA9IGZuO1xuICB9XG5cbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMub25Ub3VjaCA9IGZuO1xuICB9XG5cbiAgLy8gRGVmaW5lIHdoYXQgc2hvdWxkIGhhcHBlbiBpbiB0aGlzIGNvbXBvbmVudCwgaWYgc29tZXRoaW5nIGNoYW5nZXMgb3V0c2lkZVxuICB3cml0ZVZhbHVlKGNvbG9yOiBzdHJpbmcpIHtcbiAgICBpZiAodGhpcy5jb2xvciAhPT0gY29sb3IgJiYgIXRoaXMuaW5oaWJhdGUpIHtcbiAgICAgIHRoaXMuY29sb3IgPSBjb2xvcjtcbiAgICAgIHRoaXMub25DaGFuZ2UodGhpcy5jb2xvcik7XG4gICAgICB0aGlzLm9uVG91Y2goKTtcbiAgICAgIHRoaXMuX2NkLm1hcmtGb3JDaGVjaygpO1xuICAgICAgdGhpcy5pbnB1dENvbG9yKGNvbG9yKTtcbiAgICB9XG4gIH1cblxuICBzZXREaXNhYmxlZFN0YXRlKGlzRGlzYWJsZWQ6IGJvb2xlYW4pIHtcbiAgICB0aGlzLmRpc2FibGVkID0gaXNEaXNhYmxlZDtcbiAgICB0aGlzLl9jZC5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmluaGliYXRlID0gZmFsc2U7XG4gICAgdGhpcy5zZWxlY3RvckNvbnRleHQgPSB0aGlzLnNlbGVjdG9yLm5hdGl2ZUVsZW1lbnQuZ2V0Q29udGV4dCgnMmQnLCB7IHdpbGxSZWFkRnJlcXVlbnRseTogdHJ1ZSB9KSE7XG4gICAgdGhpcy5iYXJDb250ZXh0ID0gdGhpcy5iYXIubmF0aXZlRWxlbWVudC5nZXRDb250ZXh0KCcyZCcsIHsgd2lsbFJlYWRGcmVxdWVudGx5OiB0cnVlIH0pITtcbiAgfVxuXG4gIHRvZ2dsZVBpY2tlcigkZXZlbnQ6IE1vdXNlRXZlbnQpIHtcbiAgICB0aGlzLnBpY2tpbmcgPSAhdGhpcy5kaXNhYmxlZCAmJiAhdGhpcy5waWNraW5nO1xuICAgIGlmICghdGhpcy5waWNraW5nICYmIHRoaXMudGVtcG9yYXJ5Q29sb3IpIHtcbiAgICAgIHRoaXMud3JpdGVWYWx1ZSh0aGlzLnRlbXBvcmFyeUNvbG9yKTtcbiAgICB9XG4gICAgaWYgKHRoaXMucGlja2luZykge1xuICAgICAgdGhpcy5yZWRyYXdTZWxlY3RvcigpO1xuICAgICAgdGhpcy5yZWRyYXdCYXIoKTtcbiAgICB9XG4gIH1cblxuICByZWRyYXdTZWxlY3RvcigpIHtcbiAgICB0aGlzLnNlbGVjdG9yQ29udGV4dC5jbGVhclJlY3QoMCwgMCwgdGhpcy5zZWxlY3RvckNvbnRleHQuY2FudmFzLndpZHRoLCB0aGlzLnNlbGVjdG9yQ29udGV4dC5jYW52YXMuaGVpZ2h0KTtcbiAgICB0aGlzLmRyYXdDb2xvckdyYWRpZW50KHRoaXMuc2VsZWN0b3JDb250ZXh0LCBmYWxzZSwgWycjZmZmZmZmJywgdGhpcy5iYXJDb2xvcl0pO1xuICAgIHRoaXMuZHJhd0NvbG9yR3JhZGllbnQodGhpcy5zZWxlY3RvckNvbnRleHQsIHRydWUsIFsncmdiYSgwLDAsMCwwKScsICcjMDAwJ10pO1xuICAgIHRoaXMuZHJhd1NlbGVjdG9yTWFya2VyKCk7XG4gIH1cblxuICByZWRyYXdCYXIoKSB7XG4gICAgdGhpcy5iYXJDb250ZXh0LmNsZWFyUmVjdCgwLCAwLCB0aGlzLmJhckNvbnRleHQuY2FudmFzLndpZHRoLCB0aGlzLmJhckNvbnRleHQuY2FudmFzLmhlaWdodCk7XG4gICAgdGhpcy5kcmF3Q29sb3JHcmFkaWVudCh0aGlzLmJhckNvbnRleHQsIHRydWUsIFtcbiAgICAgICcjRkYwMDAwJyxcbiAgICAgICcjZmZmZjAwJyxcbiAgICAgICcjMDBGRjAwJyxcbiAgICAgICcjMDBGRkZGJyxcbiAgICAgICcjMDAwMEZGJyxcbiAgICAgICcjRkYwMEZGJyxcbiAgICAgICcjRkYwMDAwJ1xuICAgIF0pO1xuICAgIHRoaXMuZHJhd0Jhck1hcmtlcigpO1xuICB9XG5cbiAgZHJhd0NvbG9yR3JhZGllbnQoY3R4dDogQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJELCB2ZXJ0aWNhbCA9IHRydWUsIGNvbG9yczogc3RyaW5nW10pIHtcbiAgICBjb25zdCBncmFkaWVudEFyZ3M6IFtudW1iZXIsIG51bWJlciwgbnVtYmVyLCBudW1iZXJdID0gdmVydGljYWxcbiAgICAgID8gWzAsIDAsIDAsIGN0eHQuY2FudmFzLmhlaWdodF1cbiAgICAgIDogWzAsIDAsIGN0eHQuY2FudmFzLndpZHRoLCAwXTtcbiAgICBsZXQgZ3JhZGllbnQgPSBjdHh0LmNyZWF0ZUxpbmVhckdyYWRpZW50KC4uLmdyYWRpZW50QXJncyk7XG4gICAgY29sb3JzLmZvckVhY2goKGNvbG9yLCBpZHgpID0+IHtcbiAgICAgIGdyYWRpZW50LmFkZENvbG9yU3RvcChpZHggLyAoY29sb3JzLmxlbmd0aCAtIDEpLCBjb2xvcik7XG4gICAgfSk7XG4gICAgY3R4dC5maWxsU3R5bGUgPSBncmFkaWVudDtcbiAgICBjdHh0LmZpbGxSZWN0KDAsIDAsIGN0eHQuY2FudmFzLndpZHRoLCBjdHh0LmNhbnZhcy5oZWlnaHQpO1xuICB9XG5cbiAgZHJhd1NlbGVjdG9yTWFya2VyKCkge1xuICAgIGNvbnN0IGdyYWRpZW50ID0gdGhpcy5zZWxlY3RvckNvbnRleHQuY3JlYXRlUmFkaWFsR3JhZGllbnQoXG4gICAgICB0aGlzLm1hcmtlclNlbGVjdG9yUG9zaXRpb25bMF0sXG4gICAgICB0aGlzLm1hcmtlclNlbGVjdG9yUG9zaXRpb25bMV0sXG4gICAgICB0aGlzLmlubmVyUmFkaXVzLFxuICAgICAgdGhpcy5tYXJrZXJTZWxlY3RvclBvc2l0aW9uWzBdLFxuICAgICAgdGhpcy5tYXJrZXJTZWxlY3RvclBvc2l0aW9uWzFdLFxuICAgICAgdGhpcy5vdXRlclJhZGl1c1xuICAgICk7XG4gICAgZ3JhZGllbnQuYWRkQ29sb3JTdG9wKDAsICdyZ2JhKDAsMCwwLDApJyk7XG4gICAgZ3JhZGllbnQuYWRkQ29sb3JTdG9wKDEsICcjZmZmZmZmJyk7XG5cbiAgICB0aGlzLnNlbGVjdG9yQ29udGV4dC5iZWdpblBhdGgoKTtcbiAgICB0aGlzLnNlbGVjdG9yQ29udGV4dC5hcmMoXG4gICAgICB0aGlzLm1hcmtlclNlbGVjdG9yUG9zaXRpb25bMF0sXG4gICAgICB0aGlzLm1hcmtlclNlbGVjdG9yUG9zaXRpb25bMV0sXG4gICAgICB0aGlzLm91dGVyUmFkaXVzLFxuICAgICAgMCxcbiAgICAgIDIgKiBNYXRoLlBJXG4gICAgKTtcbiAgICB0aGlzLnNlbGVjdG9yQ29udGV4dC5maWxsU3R5bGUgPSBncmFkaWVudDtcbiAgICB0aGlzLnNlbGVjdG9yQ29udGV4dC5maWxsKCk7XG4gICAgdGhpcy5zZWxlY3RvckNvbnRleHQuc3Ryb2tlKCk7XG4gIH1cblxuICBkcmF3QmFyTWFya2VyKCkge1xuICAgIHRoaXMuYmFyQ29udGV4dC5zdHJva2VTdHlsZSA9ICcycHggc29saWQgYmxhY2snO1xuICAgIHRoaXMuYmFyQ29udGV4dC5iZWdpblBhdGgoKTtcbiAgICB0aGlzLmJhckNvbnRleHQubW92ZVRvKDAsIHRoaXMubWFya2VyQmFyUG9zaXRpb24gLSB0aGlzLmlubmVyUmFkaXVzKTtcbiAgICB0aGlzLmJhckNvbnRleHQubGluZVRvKHRoaXMuYmFyQ29udGV4dC5jYW52YXMud2lkdGgsIHRoaXMubWFya2VyQmFyUG9zaXRpb24gLSB0aGlzLmlubmVyUmFkaXVzKTtcbiAgICB0aGlzLmJhckNvbnRleHQuc3Ryb2tlKCk7XG4gICAgdGhpcy5iYXJDb250ZXh0LmJlZ2luUGF0aCgpO1xuICAgIHRoaXMuYmFyQ29udGV4dC5tb3ZlVG8oMCwgdGhpcy5tYXJrZXJCYXJQb3NpdGlvbiArIHRoaXMuaW5uZXJSYWRpdXMpO1xuICAgIHRoaXMuYmFyQ29udGV4dC5saW5lVG8odGhpcy5iYXJDb250ZXh0LmNhbnZhcy53aWR0aCwgdGhpcy5tYXJrZXJCYXJQb3NpdGlvbiArIHRoaXMuaW5uZXJSYWRpdXMpO1xuICAgIHRoaXMuYmFyQ29udGV4dC5zdHJva2UoKTtcbiAgfVxuXG4gIHNlbGVjdENvbG9yKCRldmVudDogTW91c2VFdmVudCwgdGVtcG9yYXJ5ID0gZmFsc2UpIHtcbiAgICAvLyBSZWFkIHBpeGVsIENvbG9yXG4gICAgY29uc3QgcGl4ZWxDb2xvciA9IHRoaXMucmdiVG9IZXgoXG4gICAgICAuLi4odGhpcy5zZWxlY3RvckNvbnRleHQuZ2V0SW1hZ2VEYXRhKCRldmVudC5vZmZzZXRYLCAkZXZlbnQub2Zmc2V0WSwgMSwgMSlbJ2RhdGEnXSBhcyB1bmtub3duIGFzIFtcbiAgICAgICAgbnVtYmVyLFxuICAgICAgICBudW1iZXIsXG4gICAgICAgIG51bWJlclxuICAgICAgXSlcbiAgICApO1xuICAgIGlmICghdGVtcG9yYXJ5KSB7XG4gICAgICB0aGlzLndyaXRlVmFsdWUocGl4ZWxDb2xvcik7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudGVtcG9yYXJ5Q29sb3IgPSBwaXhlbENvbG9yO1xuICAgIH1cblxuICAgIHRoaXMubWFya2VyU2VsZWN0b3JQb3NpdGlvbiA9IFskZXZlbnQub2Zmc2V0WCwgJGV2ZW50Lm9mZnNldFldO1xuICAgIHRoaXMucmVkcmF3U2VsZWN0b3IoKTtcbiAgICAkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gIH1cblxuICBzZWxlY3RDb2xvckZyb21CYXIoJGV2ZW50OiBNb3VzZUV2ZW50KSB7XG4gICAgdGhpcy5tYXJrZXJCYXJQb3NpdGlvbiA9ICRldmVudC5vZmZzZXRZO1xuICAgIHRoaXMuYmFyQ29sb3IgPSB0aGlzLnJnYlRvSGV4KFxuICAgICAgLi4uKHRoaXMuYmFyQ29udGV4dC5nZXRJbWFnZURhdGEoMjAsICRldmVudC5vZmZzZXRZLCAxLCAxKVsnZGF0YSddIGFzIHVua25vd24gYXMgW251bWJlciwgbnVtYmVyLCBudW1iZXJdKVxuICAgICk7XG4gICAgdGhpcy5yZWRyYXdCYXIoKTtcbiAgICB0aGlzLnJlZHJhd1NlbGVjdG9yKCk7XG4gICAgdGhpcy5zZWxlY3RDb2xvcihcbiAgICAgIHtcbiAgICAgICAgb2Zmc2V0WDogdGhpcy5tYXJrZXJTZWxlY3RvclBvc2l0aW9uWzBdLFxuICAgICAgICBvZmZzZXRZOiB0aGlzLm1hcmtlclNlbGVjdG9yUG9zaXRpb25bMV0sXG4gICAgICAgIHN0b3BQcm9wYWdhdGlvbjogKCkgPT4gJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXG4gICAgICB9IGFzIHVua25vd24gYXMgTW91c2VFdmVudCxcbiAgICAgIHRydWVcbiAgICApO1xuICAgICRldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgfVxuXG4gIGNvbXBvbmVudFRvSGV4KGM6IG51bWJlcikge1xuICAgIHJldHVybiBjLnRvU3RyaW5nKDE2KS5wYWRTdGFydCgyLCAnMCcpO1xuICB9XG5cbiAgcmdiVG9IZXgocjogbnVtYmVyLCBnOiBudW1iZXIsIGI6IG51bWJlcikge1xuICAgIHJldHVybiAnIycgKyB0aGlzLmNvbXBvbmVudFRvSGV4KHIpICsgdGhpcy5jb21wb25lbnRUb0hleChnKSArIHRoaXMuY29tcG9uZW50VG9IZXgoYik7XG4gIH1cblxuICBjbGlja0lucHV0KCRldmVudDogTW91c2VFdmVudCkge1xuICAgIHRoaXMuaW5wdXQubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICAgICRldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgfVxuXG4gIGlucHV0Q29sb3IoJGV2ZW50OiBhbnkpIHtcbiAgICBjb25zdCBwb3NzaWJsZUNvbG9yID0gISEkZXZlbnQgPyAoJGV2ZW50LmluZGV4T2YoJyMnKSA9PT0gLTEgPyAnIycgKyAkZXZlbnQgOiAkZXZlbnQpIDogJyM0MEI2ODgnO1xuICAgIGlmICgvXiNbMC05QS1GXXs2fSQvaS50ZXN0KHBvc3NpYmxlQ29sb3IpKSB7XG4gICAgICB0aGlzLndyaXRlVmFsdWUocG9zc2libGVDb2xvcik7XG4gICAgICBjb25zdCByZ2JhID0gdGhpcy5zdHJUb1JHQkEodGhpcy5jb2xvciEpO1xuICAgICAgY29uc3QgaHN2YSA9IHRoaXMuUkdCQXRvSFNWQShyZ2JhKTtcbiAgICAgIHRoaXMubWFya2VyQmFyUG9zaXRpb24gPSAodGhpcy5iYXJDb250ZXh0LmNhbnZhcy5oZWlnaHQgKiBoc3ZhLmgpIC8gMzYwO1xuICAgICAgdGhpcy5tYXJrZXJTZWxlY3RvclBvc2l0aW9uID0gW1xuICAgICAgICAodGhpcy5zZWxlY3RvckNvbnRleHQuY2FudmFzLndpZHRoICogaHN2YS5zKSAvIDEwMCxcbiAgICAgICAgdGhpcy5zZWxlY3RvckNvbnRleHQuY2FudmFzLmhlaWdodCAqICgxIC0gaHN2YS52IC8gMTAwKVxuICAgICAgXTtcbiAgICAgIHRoaXMuYmFyQ29sb3IgPSB0aGlzLmhzbFRvSGV4KGhzdmEuaCwgMTAwLCA1MCk7XG4gICAgICB0aGlzLnJlZHJhd0JhcigpO1xuICAgICAgdGhpcy5yZWRyYXdTZWxlY3RvcigpO1xuICAgIH1cbiAgfVxuXG4gIHN0clRvUkdCQShzdHI6IHN0cmluZykge1xuICAgIGNvbnN0IHJlZ2V4ID0gL14oKHJnYmEpfHJnYilbXFxEXSsoW1xcZC5dKylbXFxEXSsoW1xcZC5dKylbXFxEXSsoW1xcZC5dKylbXFxEXSo/KFtcXGQuXSt8JCkvaTtcbiAgICBsZXQgbWF0Y2gsIHJnYmE7XG5cbiAgICAvLyBEZWZhdWx0IHRvIGJsYWNrIGZvciBpbnZhbGlkIGNvbG9yIHN0cmluZ3NcbiAgICB0aGlzLnNlbGVjdG9yQ29udGV4dC5maWxsU3R5bGUgPSAnIzAwMCc7XG5cbiAgICAvLyBVc2UgY2FudmFzIHRvIGNvbnZlcnQgdGhlIHN0cmluZyB0byBhIHZhbGlkIGNvbG9yIHN0cmluZ1xuICAgIHRoaXMuc2VsZWN0b3JDb250ZXh0LmZpbGxTdHlsZSA9IHN0cjtcbiAgICBtYXRjaCA9IHJlZ2V4LmV4ZWModGhpcy5zZWxlY3RvckNvbnRleHQuZmlsbFN0eWxlKTtcblxuICAgIGlmIChtYXRjaCkge1xuICAgICAgcmdiYSA9IHtcbiAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICByOiBtYXRjaFszXSAqIDEsXG4gICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgZzogbWF0Y2hbNF0gKiAxLFxuICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgIGI6IG1hdGNoWzVdICogMSxcbiAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICBhOiBtYXRjaFs2XSAqIDFcbiAgICAgIH07XG5cbiAgICAgIC8vIFdvcmthcm91bmQgdG8gbWl0aWdhdGUgYSBDaHJvbWl1bSBidWcgd2hlcmUgdGhlIGFscGhhIHZhbHVlIGlzIHJvdW5kZWQgaW5jb3JyZWN0bHlcbiAgICAgIHJnYmEuYSA9ICtyZ2JhLmEudG9GaXhlZCgyKTtcbiAgICB9IGVsc2Uge1xuICAgICAgbWF0Y2ggPSB0aGlzLnNlbGVjdG9yQ29udGV4dC5maWxsU3R5bGVcbiAgICAgICAgLnJlcGxhY2UoJyMnLCAnJylcbiAgICAgICAgLm1hdGNoKC8uezJ9L2cpIVxuICAgICAgICAubWFwKChoKSA9PiBwYXJzZUludChoLCAxNikpO1xuICAgICAgcmdiYSA9IHtcbiAgICAgICAgcjogbWF0Y2hbMF0sXG4gICAgICAgIGc6IG1hdGNoWzFdLFxuICAgICAgICBiOiBtYXRjaFsyXSxcbiAgICAgICAgYTogMVxuICAgICAgfTtcbiAgICB9XG5cbiAgICByZXR1cm4gcmdiYTtcbiAgfVxuXG4gIFJHQkF0b0hTVkEocmdiYTogYW55KSB7XG4gICAgY29uc3QgcmVkID0gcmdiYS5yIC8gMjU1O1xuICAgIGNvbnN0IGdyZWVuID0gcmdiYS5nIC8gMjU1O1xuICAgIGNvbnN0IGJsdWUgPSByZ2JhLmIgLyAyNTU7XG4gICAgY29uc3QgeG1heCA9IE1hdGgubWF4KHJlZCwgZ3JlZW4sIGJsdWUpO1xuICAgIGNvbnN0IHhtaW4gPSBNYXRoLm1pbihyZWQsIGdyZWVuLCBibHVlKTtcbiAgICBjb25zdCBjaHJvbWEgPSB4bWF4IC0geG1pbjtcbiAgICBjb25zdCB2YWx1ZSA9IHhtYXg7XG4gICAgbGV0IGh1ZSA9IDA7XG4gICAgbGV0IHNhdHVyYXRpb24gPSAwO1xuXG4gICAgaWYgKGNocm9tYSkge1xuICAgICAgaWYgKHhtYXggPT09IHJlZCkge1xuICAgICAgICBodWUgPSAoZ3JlZW4gLSBibHVlKSAvIGNocm9tYTtcbiAgICAgIH1cbiAgICAgIGlmICh4bWF4ID09PSBncmVlbikge1xuICAgICAgICBodWUgPSAyICsgKGJsdWUgLSByZWQpIC8gY2hyb21hO1xuICAgICAgfVxuICAgICAgaWYgKHhtYXggPT09IGJsdWUpIHtcbiAgICAgICAgaHVlID0gNCArIChyZWQgLSBncmVlbikgLyBjaHJvbWE7XG4gICAgICB9XG4gICAgICBpZiAoeG1heCkge1xuICAgICAgICBzYXR1cmF0aW9uID0gY2hyb21hIC8geG1heDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBodWUgPSBNYXRoLmZsb29yKGh1ZSAqIDYwKTtcblxuICAgIHJldHVybiB7XG4gICAgICBoOiBodWUgPCAwID8gaHVlICsgMzYwIDogaHVlLFxuICAgICAgczogTWF0aC5yb3VuZChzYXR1cmF0aW9uICogMTAwKSxcbiAgICAgIHY6IE1hdGgucm91bmQodmFsdWUgKiAxMDApLFxuICAgICAgYTogcmdiYS5hXG4gICAgfTtcbiAgfVxuXG4gIGhzbFRvSGV4KGg6IG51bWJlciwgczogbnVtYmVyLCBsOiBudW1iZXIpIHtcbiAgICBzIC89IDEwMDtcbiAgICBsIC89IDEwMDtcblxuICAgIGxldCBjID0gKDEgLSBNYXRoLmFicygyICogbCAtIDEpKSAqIHMsXG4gICAgICB4ID0gYyAqICgxIC0gTWF0aC5hYnMoKChoIC8gNjApICUgMikgLSAxKSksXG4gICAgICBtID0gbCAtIGMgLyAyLFxuICAgICAgciA9IDAsXG4gICAgICBnID0gMCxcbiAgICAgIGIgPSAwO1xuXG4gICAgaWYgKDAgPD0gaCAmJiBoIDwgNjApIHtcbiAgICAgIHIgPSBjO1xuICAgICAgZyA9IHg7XG4gICAgICBiID0gMDtcbiAgICB9IGVsc2UgaWYgKDYwIDw9IGggJiYgaCA8IDEyMCkge1xuICAgICAgciA9IHg7XG4gICAgICBnID0gYztcbiAgICAgIGIgPSAwO1xuICAgIH0gZWxzZSBpZiAoMTIwIDw9IGggJiYgaCA8IDE4MCkge1xuICAgICAgciA9IDA7XG4gICAgICBnID0gYztcbiAgICAgIGIgPSB4O1xuICAgIH0gZWxzZSBpZiAoMTgwIDw9IGggJiYgaCA8IDI0MCkge1xuICAgICAgciA9IDA7XG4gICAgICBnID0geDtcbiAgICAgIGIgPSBjO1xuICAgIH0gZWxzZSBpZiAoMjQwIDw9IGggJiYgaCA8IDMwMCkge1xuICAgICAgciA9IHg7XG4gICAgICBnID0gMDtcbiAgICAgIGIgPSBjO1xuICAgIH0gZWxzZSBpZiAoMzAwIDw9IGggJiYgaCA8IDM2MCkge1xuICAgICAgciA9IGM7XG4gICAgICBnID0gMDtcbiAgICAgIGIgPSB4O1xuICAgIH1cbiAgICAvLyBIYXZpbmcgb2J0YWluZWQgUkdCLCBjb252ZXJ0IGNoYW5uZWxzIHRvIGhleFxuICAgIC8vIEB0cy1pZ25vcmVcbiAgICByID0gTWF0aC5yb3VuZCgociArIG0pICogMjU1KS50b1N0cmluZygxNik7XG4gICAgLy8gQHRzLWlnbm9yZVxuICAgIGcgPSBNYXRoLnJvdW5kKChnICsgbSkgKiAyNTUpLnRvU3RyaW5nKDE2KTtcbiAgICAvLyBAdHMtaWdub3JlXG4gICAgYiA9IE1hdGgucm91bmQoKGIgKyBtKSAqIDI1NSkudG9TdHJpbmcoMTYpO1xuXG4gICAgLy8gUHJlcGVuZCAwcywgaWYgbmVjZXNzYXJ5XG4gICAgLy8gQHRzLWlnbm9yZVxuICAgIGlmIChyLmxlbmd0aCA9PSAxKSByID0gJzAnICsgcjtcbiAgICAvLyBAdHMtaWdub3JlXG4gICAgaWYgKGcubGVuZ3RoID09IDEpIGcgPSAnMCcgKyBnO1xuICAgIC8vIEB0cy1pZ25vcmVcbiAgICBpZiAoYi5sZW5ndGggPT0gMSkgYiA9ICcwJyArIGI7XG5cbiAgICByZXR1cm4gJyMnICsgciArIGcgKyBiO1xuICB9XG5cbiAgbW91c2VNb3ZlKCRldmVudDogTW91c2VFdmVudCkge1xuICAgIGlmICgkZXZlbnQuYnV0dG9ucyA+IDApIHtcbiAgICAgIHRoaXMuc2VsZWN0Q29sb3IoJGV2ZW50LCB0cnVlKTtcbiAgICB9XG4gIH1cblxuICBtb3VzZVVwKCRldmVudDogTW91c2VFdmVudCkge1xuICAgIHRoaXMuc2VsZWN0Q29sb3IoJGV2ZW50LCBmYWxzZSk7XG4gIH1cbn1cbiIsIjxkaXZcbiAgY2xhc3M9XCJhLWNvbG9yLXBpY2tlclwiXG4gIChjbGljayk9XCJ0b2dnbGVQaWNrZXIoJGV2ZW50KVwiXG4gIFtzdHlsZS5iYWNrZ3JvdW5kLWNvbG9yXT1cInRlbXBvcmFyeUNvbG9yID8/IGNvbG9yXCJcbiAgW3RpdGxlXT1cImNvbG9yXCJcbiAgcm9sZT1cImJ1dHRvblwiXG4+XG4gIDxkaXYgY2xhc3M9XCJhLWNvbG9yLXBpY2tlcl9fbW9kYWxcIiBbc3R5bGUuZGlzcGxheV09XCJwaWNraW5nID8gJ2ZsZXgnIDogJ25vbmUnXCI+XG4gICAgPGRpdiBjbGFzcz1cImEtY29sb3ItcGlja2VyX19tb2RhbF9fYmFja2Ryb3BcIj5cbiAgICAgIDxjYW52YXNcbiAgICAgICAgI3NlbGVjdG9yXG4gICAgICAgIGNsYXNzPVwiYS1jb2xvci1waWNrZXJfX21vZGFsX19zZWxlY3RvclwiXG4gICAgICAgIChtb3VzZW1vdmUpPVwibW91c2VNb3ZlKCRldmVudClcIlxuICAgICAgICAobW91c2V1cCk9XCJtb3VzZVVwKCRldmVudClcIlxuICAgICAgICBoZWlnaHQ9XCIzMDBcIlxuICAgICAgICB3aWR0aD1cIjMwMFwiXG4gICAgICA+PC9jYW52YXM+XG4gICAgICA8Y2FudmFzXG4gICAgICAgICNiYXJcbiAgICAgICAgY2xhc3M9XCJhLWNvbG9yLXBpY2tlcl9fbW9kYWxfX2JhclwiXG4gICAgICAgIChjbGljayk9XCJzZWxlY3RDb2xvckZyb21CYXIoJGV2ZW50KVwiXG4gICAgICAgIGhlaWdodD1cIjMwMFwiXG4gICAgICAgIHdpZHRoPVwiNDBcIlxuICAgICAgPjwvY2FudmFzPlxuICAgICAgPGRpdiBjbGFzcz1cImEtY29sb3ItcGlja2VyX19tb2RhbF9faW5wdXRcIiAoY2xpY2spPVwiY2xpY2tJbnB1dCgkZXZlbnQpXCI+XG4gICAgICAgICM8aW5wdXQgW25nTW9kZWxdPVwiKGNvbG9yID8/ICcjJykuc3Vic3RyaW5nKDEpXCIgKG5nTW9kZWxDaGFuZ2UpPVwiaW5wdXRDb2xvcigkZXZlbnQpXCIgI2lucHV0IC8+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
@@ -5,11 +5,11 @@ import { PryColorPickerComponent } from './color-picker.component';
5
5
  import * as i0 from "@angular/core";
6
6
  const PRY_COLORPICKER_COMPONENTS = [PryColorPickerComponent];
7
7
  export class PryColorPickerModule {
8
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: PryColorPickerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
9
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.6", ngImport: i0, type: PryColorPickerModule, declarations: [PryColorPickerComponent], imports: [CommonModule, FormsModule], exports: [PryColorPickerComponent] }); }
10
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: PryColorPickerModule, imports: [CommonModule, FormsModule] }); }
8
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PryColorPickerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
9
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: PryColorPickerModule, declarations: [PryColorPickerComponent], imports: [CommonModule, FormsModule], exports: [PryColorPickerComponent] }); }
10
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PryColorPickerModule, imports: [CommonModule, FormsModule] }); }
11
11
  }
12
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: PryColorPickerModule, decorators: [{
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PryColorPickerModule, decorators: [{
13
13
  type: NgModule,
14
14
  args: [{
15
15
  imports: [CommonModule, FormsModule],
@@ -17,4 +17,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.6", ngImpor
17
17
  exports: [...PRY_COLORPICKER_COMPONENTS]
18
18
  }]
19
19
  }] });
20
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sb3ItcGlja2VyLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Byb3ZvbHkvZGFzaGJvYXJkL2NvbXBvbmVudHMvY29sb3ItcGlja2VyL2NvbG9yLXBpY2tlci5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDOztBQUVuRSxNQUFNLDBCQUEwQixHQUFHLENBQUMsdUJBQXVCLENBQUMsQ0FBQztBQU83RCxNQUFNLE9BQU8sb0JBQW9COzhHQUFwQixvQkFBb0I7K0dBQXBCLG9CQUFvQixpQkFQRyx1QkFBdUIsYUFHL0MsWUFBWSxFQUFFLFdBQVcsYUFIRCx1QkFBdUI7K0dBTzlDLG9CQUFvQixZQUpyQixZQUFZLEVBQUUsV0FBVzs7MkZBSXhCLG9CQUFvQjtrQkFMaEMsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsV0FBVyxDQUFDO29CQUNwQyxZQUFZLEVBQUUsQ0FBQyxHQUFHLDBCQUEwQixDQUFDO29CQUM3QyxPQUFPLEVBQUUsQ0FBQyxHQUFHLDBCQUEwQixDQUFDO2lCQUN6QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBQcnlDb2xvclBpY2tlckNvbXBvbmVudCB9IGZyb20gJy4vY29sb3ItcGlja2VyLmNvbXBvbmVudCc7XG5cbmNvbnN0IFBSWV9DT0xPUlBJQ0tFUl9DT01QT05FTlRTID0gW1ByeUNvbG9yUGlja2VyQ29tcG9uZW50XTtcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgRm9ybXNNb2R1bGVdLFxuICBkZWNsYXJhdGlvbnM6IFsuLi5QUllfQ09MT1JQSUNLRVJfQ09NUE9ORU5UU10sXG4gIGV4cG9ydHM6IFsuLi5QUllfQ09MT1JQSUNLRVJfQ09NUE9ORU5UU11cbn0pXG5leHBvcnQgY2xhc3MgUHJ5Q29sb3JQaWNrZXJNb2R1bGUge31cbiJdfQ==
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sb3ItcGlja2VyLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Byb3ZvbHkvZGFzaGJvYXJkL2NvbXBvbmVudHMvY29sb3ItcGlja2VyL2NvbG9yLXBpY2tlci5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDOztBQUVuRSxNQUFNLDBCQUEwQixHQUFHLENBQUMsdUJBQXVCLENBQUMsQ0FBQztBQU83RCxNQUFNLE9BQU8sb0JBQW9COytHQUFwQixvQkFBb0I7Z0hBQXBCLG9CQUFvQixpQkFQRyx1QkFBdUIsYUFHL0MsWUFBWSxFQUFFLFdBQVcsYUFIRCx1QkFBdUI7Z0hBTzlDLG9CQUFvQixZQUpyQixZQUFZLEVBQUUsV0FBVzs7NEZBSXhCLG9CQUFvQjtrQkFMaEMsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsV0FBVyxDQUFDO29CQUNwQyxZQUFZLEVBQUUsQ0FBQyxHQUFHLDBCQUEwQixDQUFDO29CQUM3QyxPQUFPLEVBQUUsQ0FBQyxHQUFHLDBCQUEwQixDQUFDO2lCQUN6QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBQcnlDb2xvclBpY2tlckNvbXBvbmVudCB9IGZyb20gJy4vY29sb3ItcGlja2VyLmNvbXBvbmVudCc7XG5cbmNvbnN0IFBSWV9DT0xPUlBJQ0tFUl9DT01QT05FTlRTID0gW1ByeUNvbG9yUGlja2VyQ29tcG9uZW50XTtcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgRm9ybXNNb2R1bGVdLFxuICBkZWNsYXJhdGlvbnM6IFsuLi5QUllfQ09MT1JQSUNLRVJfQ09NUE9ORU5UU10sXG4gIGV4cG9ydHM6IFsuLi5QUllfQ09MT1JQSUNLRVJfQ09NUE9ORU5UU11cbn0pXG5leHBvcnQgY2xhc3MgUHJ5Q29sb3JQaWNrZXJNb2R1bGUge31cbiJdfQ==
@@ -3,10 +3,10 @@ import { ChangeDetectionStrategy, Component, Directive, HostBinding, Input } fro
3
3
  import * as i0 from "@angular/core";
4
4
  const EXPANSION_PANEL_ANIMATION_TIMING = '225ms cubic-bezier(0.4,0.0,0.2,1)';
5
5
  export class PryExpansionPanelTitleDirective {
6
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: PryExpansionPanelTitleDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
7
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.1.6", type: PryExpansionPanelTitleDirective, selector: "pry-expand-panel-title", ngImport: i0 }); }
6
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PryExpansionPanelTitleDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
7
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: PryExpansionPanelTitleDirective, selector: "pry-expand-panel-title", ngImport: i0 }); }
8
8
  }
9
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: PryExpansionPanelTitleDirective, decorators: [{
9
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PryExpansionPanelTitleDirective, decorators: [{
10
10
  type: Directive,
11
11
  args: [{
12
12
  selector: 'pry-expand-panel-title'
@@ -28,8 +28,8 @@ export class PryExpandPanelComponent {
28
28
  _toggle() {
29
29
  this._open = !this._open;
30
30
  }
31
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: PryExpandPanelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
32
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.6", type: PryExpandPanelComponent, selector: "pry-expand-panel", inputs: { open: "open" }, host: { properties: { "class.pry-expand-panel-open": "this.open" } }, ngImport: i0, template: "<div class=\"o-pry-expand-panel\">\n <button\n type=\"button\"\n class=\"a-btn -link-like o-pry-expand-panel__toggler\"\n (click)=\"_toggle()\"\n aria-controls=\"o-pry-expand-panel-search-content\"\n [attr.aria-expanded]=\"_open\"\n id=\"o-pry-expand-panel-search-toggler\"\n >\n <span class=\"o-pry-expand-panel__toggler__text\">\n <ng-content select=\"pry-expand-panel-title\"></ng-content>\n </span>\n </button>\n\n <div\n id=\"o-pry-expand-panel-search-content\"\n class=\"o-pry-expand-panel__content-wrapper\"\n [@bodyExpansion]=\"_getExpandedState()\"\n aria-labelledby=\"o-pry-expand-panel-search-toggler\"\n >\n <div class=\"o-pry-expand-panel__content\">\n <ng-content></ng-content>\n </div>\n </div>\n</div>\n", animations: [
31
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PryExpandPanelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
32
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: PryExpandPanelComponent, selector: "pry-expand-panel", inputs: { open: "open" }, host: { properties: { "class.pry-expand-panel-open": "this.open" } }, ngImport: i0, template: "<div class=\"o-pry-expand-panel\">\n <button\n type=\"button\"\n class=\"a-btn -link-like o-pry-expand-panel__toggler\"\n (click)=\"_toggle()\"\n aria-controls=\"o-pry-expand-panel-search-content\"\n [attr.aria-expanded]=\"_open\"\n id=\"o-pry-expand-panel-search-toggler\"\n >\n <span class=\"o-pry-expand-panel__toggler__text\">\n <ng-content select=\"pry-expand-panel-title\"></ng-content>\n </span>\n </button>\n\n <div\n id=\"o-pry-expand-panel-search-content\"\n class=\"o-pry-expand-panel__content-wrapper\"\n [@bodyExpansion]=\"_getExpandedState()\"\n aria-labelledby=\"o-pry-expand-panel-search-toggler\"\n >\n <div class=\"o-pry-expand-panel__content\">\n <ng-content></ng-content>\n </div>\n </div>\n</div>\n", animations: [
33
33
  trigger('indicatorRotate', [
34
34
  state('collapsed', style({ transform: 'rotate(0deg)' })),
35
35
  state('expanded', style({ transform: 'rotate(180deg)' })),
@@ -42,7 +42,7 @@ export class PryExpandPanelComponent {
42
42
  ])
43
43
  ], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
44
44
  }
45
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: PryExpandPanelComponent, decorators: [{
45
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PryExpandPanelComponent, decorators: [{
46
46
  type: Component,
47
47
  args: [{ selector: 'pry-expand-panel', animations: [
48
48
  trigger('indicatorRotate', [
@@ -62,4 +62,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.6", ngImpor
62
62
  }, {
63
63
  type: Input
64
64
  }] } });
65
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwYW5kLXBhbmVsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Byb3ZvbHkvZGFzaGJvYXJkL2NvbXBvbmVudHMvZXhwYW5kLXBhbmVsL2V4cGFuZC1wYW5lbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcm92b2x5L2Rhc2hib2FyZC9jb21wb25lbnRzL2V4cGFuZC1wYW5lbC9leHBhbmQtcGFuZWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNqRixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUVsRyxNQUFNLGdDQUFnQyxHQUFHLG1DQUFtQyxDQUFDO0FBSzdFLE1BQU0sT0FBTywrQkFBK0I7OEdBQS9CLCtCQUErQjtrR0FBL0IsK0JBQStCOzsyRkFBL0IsK0JBQStCO2tCQUgzQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSx3QkFBd0I7aUJBQ25DOztBQW9CRCxNQUFNLE9BQU8sdUJBQXVCO0lBakJwQztRQTRCWSxVQUFLLEdBQVksS0FBSyxDQUFDO0tBU2xDO0lBbkJDLElBRUksSUFBSTtRQUNOLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztJQUNwQixDQUFDO0lBRUQsSUFBSSxJQUFJLENBQUMsS0FBYztRQUNyQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztJQUNyQixDQUFDO0lBSUQsaUJBQWlCO1FBQ2YsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQztJQUMvQyxDQUFDO0lBRUQsT0FBTztRQUNMLElBQUksQ0FBQyxLQUFLLEdBQUcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQzNCLENBQUM7OEdBbkJVLHVCQUF1QjtrR0FBdkIsdUJBQXVCLHdKQzNCcEMsMndCQXlCQSxjRFpjO1lBQ1YsT0FBTyxDQUFDLGlCQUFpQixFQUFFO2dCQUN6QixLQUFLLENBQUMsV0FBVyxFQUFFLEtBQUssQ0FBQyxFQUFFLFNBQVMsRUFBRSxjQUFjLEVBQUUsQ0FBQyxDQUFDO2dCQUN4RCxLQUFLLENBQUMsVUFBVSxFQUFFLEtBQUssQ0FBQyxFQUFFLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRSxDQUFDLENBQUM7Z0JBQ3pELFVBQVUsQ0FBQyx3QkFBd0IsRUFBRSxPQUFPLENBQUMsZ0NBQWdDLENBQUMsQ0FBQzthQUNoRixDQUFDO1lBQ0YsT0FBTyxDQUFDLGVBQWUsRUFBRTtnQkFDdkIsS0FBSyxDQUFDLFdBQVcsRUFBRSxLQUFLLENBQUMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsQ0FBQyxDQUFDO2dCQUNsRSxLQUFLLENBQUMsVUFBVSxFQUFFLEtBQUssQ0FBQyxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUM7Z0JBQ2hFLFVBQVUsQ0FBQyx3QkFBd0IsRUFBRSxPQUFPLENBQUMsZ0NBQWdDLENBQUMsQ0FBQzthQUNoRixDQUFDO1NBQ0g7OzJGQUdVLHVCQUF1QjtrQkFqQm5DLFNBQVM7K0JBQ0Usa0JBQWtCLGNBRWhCO3dCQUNWLE9BQU8sQ0FBQyxpQkFBaUIsRUFBRTs0QkFDekIsS0FBSyxDQUFDLFdBQVcsRUFBRSxLQUFLLENBQUMsRUFBRSxTQUFTLEVBQUUsY0FBYyxFQUFFLENBQUMsQ0FBQzs0QkFDeEQsS0FBSyxDQUFDLFVBQVUsRUFBRSxLQUFLLENBQUMsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUUsQ0FBQyxDQUFDOzRCQUN6RCxVQUFVLENBQUMsd0JBQXdCLEVBQUUsT0FBTyxDQUFDLGdDQUFnQyxDQUFDLENBQUM7eUJBQ2hGLENBQUM7d0JBQ0YsT0FBTyxDQUFDLGVBQWUsRUFBRTs0QkFDdkIsS0FBSyxDQUFDLFdBQVcsRUFBRSxLQUFLLENBQUMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsQ0FBQyxDQUFDOzRCQUNsRSxLQUFLLENBQUMsVUFBVSxFQUFFLEtBQUssQ0FBQyxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUM7NEJBQ2hFLFVBQVUsQ0FBQyx3QkFBd0IsRUFBRSxPQUFPLENBQUMsZ0NBQWdDLENBQUMsQ0FBQzt5QkFDaEYsQ0FBQztxQkFDSCxtQkFDZ0IsdUJBQXVCLENBQUMsTUFBTTs4QkFLM0MsSUFBSTtzQkFGUCxXQUFXO3VCQUFDLDZCQUE2Qjs7c0JBQ3pDLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBhbmltYXRlLCBzdGF0ZSwgc3R5bGUsIHRyYW5zaXRpb24sIHRyaWdnZXIgfSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJztcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIERpcmVjdGl2ZSwgSG9zdEJpbmRpbmcsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmNvbnN0IEVYUEFOU0lPTl9QQU5FTF9BTklNQVRJT05fVElNSU5HID0gJzIyNW1zIGN1YmljLWJlemllcigwLjQsMC4wLDAuMiwxKSc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ3ByeS1leHBhbmQtcGFuZWwtdGl0bGUnXG59KVxuZXhwb3J0IGNsYXNzIFByeUV4cGFuc2lvblBhbmVsVGl0bGVEaXJlY3RpdmUge31cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAncHJ5LWV4cGFuZC1wYW5lbCcsXG4gIHRlbXBsYXRlVXJsOiAnZXhwYW5kLXBhbmVsLmNvbXBvbmVudC5odG1sJyxcbiAgYW5pbWF0aW9uczogW1xuICAgIHRyaWdnZXIoJ2luZGljYXRvclJvdGF0ZScsIFtcbiAgICAgIHN0YXRlKCdjb2xsYXBzZWQnLCBzdHlsZSh7IHRyYW5zZm9ybTogJ3JvdGF0ZSgwZGVnKScgfSkpLFxuICAgICAgc3RhdGUoJ2V4cGFuZGVkJywgc3R5bGUoeyB0cmFuc2Zvcm06ICdyb3RhdGUoMTgwZGVnKScgfSkpLFxuICAgICAgdHJhbnNpdGlvbignZXhwYW5kZWQgPD0+IGNvbGxhcHNlZCcsIGFuaW1hdGUoRVhQQU5TSU9OX1BBTkVMX0FOSU1BVElPTl9USU1JTkcpKVxuICAgIF0pLFxuICAgIHRyaWdnZXIoJ2JvZHlFeHBhbnNpb24nLCBbXG4gICAgICBzdGF0ZSgnY29sbGFwc2VkJywgc3R5bGUoeyBoZWlnaHQ6ICcwcHgnLCB2aXNpYmlsaXR5OiAnaGlkZGVuJyB9KSksXG4gICAgICBzdGF0ZSgnZXhwYW5kZWQnLCBzdHlsZSh7IGhlaWdodDogJyonLCB2aXNpYmlsaXR5OiAndmlzaWJsZScgfSkpLFxuICAgICAgdHJhbnNpdGlvbignZXhwYW5kZWQgPD0+IGNvbGxhcHNlZCcsIGFuaW1hdGUoRVhQQU5TSU9OX1BBTkVMX0FOSU1BVElPTl9USU1JTkcpKVxuICAgIF0pXG4gIF0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIFByeUV4cGFuZFBhbmVsQ29tcG9uZW50IHtcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5wcnktZXhwYW5kLXBhbmVsLW9wZW4nKVxuICBASW5wdXQoKVxuICBnZXQgb3BlbigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fb3BlbjtcbiAgfVxuXG4gIHNldCBvcGVuKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fb3BlbiA9IHZhbHVlO1xuICB9XG5cbiAgcHJvdGVjdGVkIF9vcGVuOiBib29sZWFuID0gZmFsc2U7XG5cbiAgX2dldEV4cGFuZGVkU3RhdGUoKTogYW55IHtcbiAgICByZXR1cm4gdGhpcy5fb3BlbiA/ICdleHBhbmRlZCcgOiAnY29sbGFwc2VkJztcbiAgfVxuXG4gIF90b2dnbGUoKTogdm9pZCB7XG4gICAgdGhpcy5fb3BlbiA9ICF0aGlzLl9vcGVuO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiby1wcnktZXhwYW5kLXBhbmVsXCI+XG4gIDxidXR0b25cbiAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICBjbGFzcz1cImEtYnRuIC1saW5rLWxpa2Ugby1wcnktZXhwYW5kLXBhbmVsX190b2dnbGVyXCJcbiAgICAoY2xpY2spPVwiX3RvZ2dsZSgpXCJcbiAgICBhcmlhLWNvbnRyb2xzPVwiby1wcnktZXhwYW5kLXBhbmVsLXNlYXJjaC1jb250ZW50XCJcbiAgICBbYXR0ci5hcmlhLWV4cGFuZGVkXT1cIl9vcGVuXCJcbiAgICBpZD1cIm8tcHJ5LWV4cGFuZC1wYW5lbC1zZWFyY2gtdG9nZ2xlclwiXG4gID5cbiAgICA8c3BhbiBjbGFzcz1cIm8tcHJ5LWV4cGFuZC1wYW5lbF9fdG9nZ2xlcl9fdGV4dFwiPlxuICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwicHJ5LWV4cGFuZC1wYW5lbC10aXRsZVwiPjwvbmctY29udGVudD5cbiAgICA8L3NwYW4+XG4gIDwvYnV0dG9uPlxuXG4gIDxkaXZcbiAgICBpZD1cIm8tcHJ5LWV4cGFuZC1wYW5lbC1zZWFyY2gtY29udGVudFwiXG4gICAgY2xhc3M9XCJvLXByeS1leHBhbmQtcGFuZWxfX2NvbnRlbnQtd3JhcHBlclwiXG4gICAgW0Bib2R5RXhwYW5zaW9uXT1cIl9nZXRFeHBhbmRlZFN0YXRlKClcIlxuICAgIGFyaWEtbGFiZWxsZWRieT1cIm8tcHJ5LWV4cGFuZC1wYW5lbC1zZWFyY2gtdG9nZ2xlclwiXG4gID5cbiAgICA8ZGl2IGNsYXNzPVwiby1wcnktZXhwYW5kLXBhbmVsX19jb250ZW50XCI+XG4gICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
65
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwYW5kLXBhbmVsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Byb3ZvbHkvZGFzaGJvYXJkL2NvbXBvbmVudHMvZXhwYW5kLXBhbmVsL2V4cGFuZC1wYW5lbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcm92b2x5L2Rhc2hib2FyZC9jb21wb25lbnRzL2V4cGFuZC1wYW5lbC9leHBhbmQtcGFuZWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNqRixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUVsRyxNQUFNLGdDQUFnQyxHQUFHLG1DQUFtQyxDQUFDO0FBSzdFLE1BQU0sT0FBTywrQkFBK0I7K0dBQS9CLCtCQUErQjttR0FBL0IsK0JBQStCOzs0RkFBL0IsK0JBQStCO2tCQUgzQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSx3QkFBd0I7aUJBQ25DOztBQW9CRCxNQUFNLE9BQU8sdUJBQXVCO0lBakJwQztRQTRCWSxVQUFLLEdBQVksS0FBSyxDQUFDO0tBU2xDO0lBbkJDLElBRUksSUFBSTtRQUNOLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztJQUNwQixDQUFDO0lBRUQsSUFBSSxJQUFJLENBQUMsS0FBYztRQUNyQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztJQUNyQixDQUFDO0lBSUQsaUJBQWlCO1FBQ2YsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQztJQUMvQyxDQUFDO0lBRUQsT0FBTztRQUNMLElBQUksQ0FBQyxLQUFLLEdBQUcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQzNCLENBQUM7K0dBbkJVLHVCQUF1QjttR0FBdkIsdUJBQXVCLHdKQzNCcEMsMndCQXlCQSxjRFpjO1lBQ1YsT0FBTyxDQUFDLGlCQUFpQixFQUFFO2dCQUN6QixLQUFLLENBQUMsV0FBVyxFQUFFLEtBQUssQ0FBQyxFQUFFLFNBQVMsRUFBRSxjQUFjLEVBQUUsQ0FBQyxDQUFDO2dCQUN4RCxLQUFLLENBQUMsVUFBVSxFQUFFLEtBQUssQ0FBQyxFQUFFLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRSxDQUFDLENBQUM7Z0JBQ3pELFVBQVUsQ0FBQyx3QkFBd0IsRUFBRSxPQUFPLENBQUMsZ0NBQWdDLENBQUMsQ0FBQzthQUNoRixDQUFDO1lBQ0YsT0FBTyxDQUFDLGVBQWUsRUFBRTtnQkFDdkIsS0FBSyxDQUFDLFdBQVcsRUFBRSxLQUFLLENBQUMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsQ0FBQyxDQUFDO2dCQUNsRSxLQUFLLENBQUMsVUFBVSxFQUFFLEtBQUssQ0FBQyxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUM7Z0JBQ2hFLFVBQVUsQ0FBQyx3QkFBd0IsRUFBRSxPQUFPLENBQUMsZ0NBQWdDLENBQUMsQ0FBQzthQUNoRixDQUFDO1NBQ0g7OzRGQUdVLHVCQUF1QjtrQkFqQm5DLFNBQVM7K0JBQ0Usa0JBQWtCLGNBRWhCO3dCQUNWLE9BQU8sQ0FBQyxpQkFBaUIsRUFBRTs0QkFDekIsS0FBSyxDQUFDLFdBQVcsRUFBRSxLQUFLLENBQUMsRUFBRSxTQUFTLEVBQUUsY0FBYyxFQUFFLENBQUMsQ0FBQzs0QkFDeEQsS0FBSyxDQUFDLFVBQVUsRUFBRSxLQUFLLENBQUMsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUUsQ0FBQyxDQUFDOzRCQUN6RCxVQUFVLENBQUMsd0JBQXdCLEVBQUUsT0FBTyxDQUFDLGdDQUFnQyxDQUFDLENBQUM7eUJBQ2hGLENBQUM7d0JBQ0YsT0FBTyxDQUFDLGVBQWUsRUFBRTs0QkFDdkIsS0FBSyxDQUFDLFdBQVcsRUFBRSxLQUFLLENBQUMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsQ0FBQyxDQUFDOzRCQUNsRSxLQUFLLENBQUMsVUFBVSxFQUFFLEtBQUssQ0FBQyxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUM7NEJBQ2hFLFVBQVUsQ0FBQyx3QkFBd0IsRUFBRSxPQUFPLENBQUMsZ0NBQWdDLENBQUMsQ0FBQzt5QkFDaEYsQ0FBQztxQkFDSCxtQkFDZ0IsdUJBQXVCLENBQUMsTUFBTTs4QkFLM0MsSUFBSTtzQkFGUCxXQUFXO3VCQUFDLDZCQUE2Qjs7c0JBQ3pDLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBhbmltYXRlLCBzdGF0ZSwgc3R5bGUsIHRyYW5zaXRpb24sIHRyaWdnZXIgfSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJztcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIERpcmVjdGl2ZSwgSG9zdEJpbmRpbmcsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmNvbnN0IEVYUEFOU0lPTl9QQU5FTF9BTklNQVRJT05fVElNSU5HID0gJzIyNW1zIGN1YmljLWJlemllcigwLjQsMC4wLDAuMiwxKSc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ3ByeS1leHBhbmQtcGFuZWwtdGl0bGUnXG59KVxuZXhwb3J0IGNsYXNzIFByeUV4cGFuc2lvblBhbmVsVGl0bGVEaXJlY3RpdmUge31cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAncHJ5LWV4cGFuZC1wYW5lbCcsXG4gIHRlbXBsYXRlVXJsOiAnZXhwYW5kLXBhbmVsLmNvbXBvbmVudC5odG1sJyxcbiAgYW5pbWF0aW9uczogW1xuICAgIHRyaWdnZXIoJ2luZGljYXRvclJvdGF0ZScsIFtcbiAgICAgIHN0YXRlKCdjb2xsYXBzZWQnLCBzdHlsZSh7IHRyYW5zZm9ybTogJ3JvdGF0ZSgwZGVnKScgfSkpLFxuICAgICAgc3RhdGUoJ2V4cGFuZGVkJywgc3R5bGUoeyB0cmFuc2Zvcm06ICdyb3RhdGUoMTgwZGVnKScgfSkpLFxuICAgICAgdHJhbnNpdGlvbignZXhwYW5kZWQgPD0+IGNvbGxhcHNlZCcsIGFuaW1hdGUoRVhQQU5TSU9OX1BBTkVMX0FOSU1BVElPTl9USU1JTkcpKVxuICAgIF0pLFxuICAgIHRyaWdnZXIoJ2JvZHlFeHBhbnNpb24nLCBbXG4gICAgICBzdGF0ZSgnY29sbGFwc2VkJywgc3R5bGUoeyBoZWlnaHQ6ICcwcHgnLCB2aXNpYmlsaXR5OiAnaGlkZGVuJyB9KSksXG4gICAgICBzdGF0ZSgnZXhwYW5kZWQnLCBzdHlsZSh7IGhlaWdodDogJyonLCB2aXNpYmlsaXR5OiAndmlzaWJsZScgfSkpLFxuICAgICAgdHJhbnNpdGlvbignZXhwYW5kZWQgPD0+IGNvbGxhcHNlZCcsIGFuaW1hdGUoRVhQQU5TSU9OX1BBTkVMX0FOSU1BVElPTl9USU1JTkcpKVxuICAgIF0pXG4gIF0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIFByeUV4cGFuZFBhbmVsQ29tcG9uZW50IHtcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5wcnktZXhwYW5kLXBhbmVsLW9wZW4nKVxuICBASW5wdXQoKVxuICBnZXQgb3BlbigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fb3BlbjtcbiAgfVxuXG4gIHNldCBvcGVuKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fb3BlbiA9IHZhbHVlO1xuICB9XG5cbiAgcHJvdGVjdGVkIF9vcGVuOiBib29sZWFuID0gZmFsc2U7XG5cbiAgX2dldEV4cGFuZGVkU3RhdGUoKTogYW55IHtcbiAgICByZXR1cm4gdGhpcy5fb3BlbiA/ICdleHBhbmRlZCcgOiAnY29sbGFwc2VkJztcbiAgfVxuXG4gIF90b2dnbGUoKTogdm9pZCB7XG4gICAgdGhpcy5fb3BlbiA9ICF0aGlzLl9vcGVuO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiby1wcnktZXhwYW5kLXBhbmVsXCI+XG4gIDxidXR0b25cbiAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICBjbGFzcz1cImEtYnRuIC1saW5rLWxpa2Ugby1wcnktZXhwYW5kLXBhbmVsX190b2dnbGVyXCJcbiAgICAoY2xpY2spPVwiX3RvZ2dsZSgpXCJcbiAgICBhcmlhLWNvbnRyb2xzPVwiby1wcnktZXhwYW5kLXBhbmVsLXNlYXJjaC1jb250ZW50XCJcbiAgICBbYXR0ci5hcmlhLWV4cGFuZGVkXT1cIl9vcGVuXCJcbiAgICBpZD1cIm8tcHJ5LWV4cGFuZC1wYW5lbC1zZWFyY2gtdG9nZ2xlclwiXG4gID5cbiAgICA8c3BhbiBjbGFzcz1cIm8tcHJ5LWV4cGFuZC1wYW5lbF9fdG9nZ2xlcl9fdGV4dFwiPlxuICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwicHJ5LWV4cGFuZC1wYW5lbC10aXRsZVwiPjwvbmctY29udGVudD5cbiAgICA8L3NwYW4+XG4gIDwvYnV0dG9uPlxuXG4gIDxkaXZcbiAgICBpZD1cIm8tcHJ5LWV4cGFuZC1wYW5lbC1zZWFyY2gtY29udGVudFwiXG4gICAgY2xhc3M9XCJvLXByeS1leHBhbmQtcGFuZWxfX2NvbnRlbnQtd3JhcHBlclwiXG4gICAgW0Bib2R5RXhwYW5zaW9uXT1cIl9nZXRFeHBhbmRlZFN0YXRlKClcIlxuICAgIGFyaWEtbGFiZWxsZWRieT1cIm8tcHJ5LWV4cGFuZC1wYW5lbC1zZWFyY2gtdG9nZ2xlclwiXG4gID5cbiAgICA8ZGl2IGNsYXNzPVwiby1wcnktZXhwYW5kLXBhbmVsX19jb250ZW50XCI+XG4gICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
@@ -4,11 +4,11 @@ import { PryExpandPanelComponent, PryExpansionPanelTitleDirective } from './expa
4
4
  import * as i0 from "@angular/core";
5
5
  const PRY_EXPAND_PANEL_COMPONENTS = [PryExpandPanelComponent, PryExpansionPanelTitleDirective];
6
6
  export class PryExpandPanelModule {
7
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: PryExpandPanelModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
8
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.6", ngImport: i0, type: PryExpandPanelModule, declarations: [PryExpandPanelComponent, PryExpansionPanelTitleDirective], exports: [PryExpandPanelComponent, PryExpansionPanelTitleDirective] }); }
9
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: PryExpandPanelModule, providers: [DecimalPipe] }); }
7
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PryExpandPanelModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
8
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: PryExpandPanelModule, declarations: [PryExpandPanelComponent, PryExpansionPanelTitleDirective], exports: [PryExpandPanelComponent, PryExpansionPanelTitleDirective] }); }
9
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PryExpandPanelModule, providers: [DecimalPipe] }); }
10
10
  }
11
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: PryExpandPanelModule, decorators: [{
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PryExpandPanelModule, decorators: [{
12
12
  type: NgModule,
13
13
  args: [{
14
14
  declarations: [...PRY_EXPAND_PANEL_COMPONENTS],
@@ -16,4 +16,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.6", ngImpor
16
16
  providers: [DecimalPipe]
17
17
  }]
18
18
  }] });
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwYW5kLXBhbmVsLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Byb3ZvbHkvZGFzaGJvYXJkL2NvbXBvbmVudHMvZXhwYW5kLXBhbmVsL2V4cGFuZC1wYW5lbC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLHVCQUF1QixFQUFFLCtCQUErQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7O0FBRXBHLE1BQU0sMkJBQTJCLEdBQUcsQ0FBQyx1QkFBdUIsRUFBRSwrQkFBK0IsQ0FBQyxDQUFDO0FBTy9GLE1BQU0sT0FBTyxvQkFBb0I7OEdBQXBCLG9CQUFvQjsrR0FBcEIsb0JBQW9CLGlCQVBJLHVCQUF1QixFQUFFLCtCQUErQixhQUF4RCx1QkFBdUIsRUFBRSwrQkFBK0I7K0dBT2hGLG9CQUFvQixhQUZwQixDQUFDLFdBQVcsQ0FBQzs7MkZBRWIsb0JBQW9CO2tCQUxoQyxRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLEdBQUcsMkJBQTJCLENBQUM7b0JBQzlDLE9BQU8sRUFBRSxDQUFDLEdBQUcsMkJBQTJCLENBQUM7b0JBQ3pDLFNBQVMsRUFBRSxDQUFDLFdBQVcsQ0FBQztpQkFDekIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEZWNpbWFsUGlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUHJ5RXhwYW5kUGFuZWxDb21wb25lbnQsIFByeUV4cGFuc2lvblBhbmVsVGl0bGVEaXJlY3RpdmUgfSBmcm9tICcuL2V4cGFuZC1wYW5lbC5jb21wb25lbnQnO1xuXG5jb25zdCBQUllfRVhQQU5EX1BBTkVMX0NPTVBPTkVOVFMgPSBbUHJ5RXhwYW5kUGFuZWxDb21wb25lbnQsIFByeUV4cGFuc2lvblBhbmVsVGl0bGVEaXJlY3RpdmVdO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFsuLi5QUllfRVhQQU5EX1BBTkVMX0NPTVBPTkVOVFNdLFxuICBleHBvcnRzOiBbLi4uUFJZX0VYUEFORF9QQU5FTF9DT01QT05FTlRTXSxcbiAgcHJvdmlkZXJzOiBbRGVjaW1hbFBpcGVdXG59KVxuZXhwb3J0IGNsYXNzIFByeUV4cGFuZFBhbmVsTW9kdWxlIHt9XG4iXX0=
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwYW5kLXBhbmVsLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Byb3ZvbHkvZGFzaGJvYXJkL2NvbXBvbmVudHMvZXhwYW5kLXBhbmVsL2V4cGFuZC1wYW5lbC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLHVCQUF1QixFQUFFLCtCQUErQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7O0FBRXBHLE1BQU0sMkJBQTJCLEdBQUcsQ0FBQyx1QkFBdUIsRUFBRSwrQkFBK0IsQ0FBQyxDQUFDO0FBTy9GLE1BQU0sT0FBTyxvQkFBb0I7K0dBQXBCLG9CQUFvQjtnSEFBcEIsb0JBQW9CLGlCQVBJLHVCQUF1QixFQUFFLCtCQUErQixhQUF4RCx1QkFBdUIsRUFBRSwrQkFBK0I7Z0hBT2hGLG9CQUFvQixhQUZwQixDQUFDLFdBQVcsQ0FBQzs7NEZBRWIsb0JBQW9CO2tCQUxoQyxRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLEdBQUcsMkJBQTJCLENBQUM7b0JBQzlDLE9BQU8sRUFBRSxDQUFDLEdBQUcsMkJBQTJCLENBQUM7b0JBQ3pDLFNBQVMsRUFBRSxDQUFDLFdBQVcsQ0FBQztpQkFDekIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEZWNpbWFsUGlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUHJ5RXhwYW5kUGFuZWxDb21wb25lbnQsIFByeUV4cGFuc2lvblBhbmVsVGl0bGVEaXJlY3RpdmUgfSBmcm9tICcuL2V4cGFuZC1wYW5lbC5jb21wb25lbnQnO1xuXG5jb25zdCBQUllfRVhQQU5EX1BBTkVMX0NPTVBPTkVOVFMgPSBbUHJ5RXhwYW5kUGFuZWxDb21wb25lbnQsIFByeUV4cGFuc2lvblBhbmVsVGl0bGVEaXJlY3RpdmVdO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFsuLi5QUllfRVhQQU5EX1BBTkVMX0NPTVBPTkVOVFNdLFxuICBleHBvcnRzOiBbLi4uUFJZX0VYUEFORF9QQU5FTF9DT01QT05FTlRTXSxcbiAgcHJvdmlkZXJzOiBbRGVjaW1hbFBpcGVdXG59KVxuZXhwb3J0IGNsYXNzIFByeUV4cGFuZFBhbmVsTW9kdWxlIHt9XG4iXX0=
@@ -2,15 +2,15 @@ import { NgModule } from '@angular/core';
2
2
  import { PryFilterPipe } from './filter.pipe';
3
3
  import * as i0 from "@angular/core";
4
4
  export class PryFilterModule {
5
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: PryFilterModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
6
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.6", ngImport: i0, type: PryFilterModule, declarations: [PryFilterPipe], exports: [PryFilterPipe] }); }
7
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: PryFilterModule }); }
5
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PryFilterModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
6
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: PryFilterModule, declarations: [PryFilterPipe], exports: [PryFilterPipe] }); }
7
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PryFilterModule }); }
8
8
  }
9
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: PryFilterModule, decorators: [{
9
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PryFilterModule, decorators: [{
10
10
  type: NgModule,
11
11
  args: [{
12
12
  declarations: [PryFilterPipe],
13
13
  exports: [PryFilterPipe]
14
14
  }]
15
15
  }] });
16
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Byb3ZvbHkvZGFzaGJvYXJkL2NvbXBvbmVudHMvZmlsdGVyL2ZpbHRlci5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQU05QyxNQUFNLE9BQU8sZUFBZTs4R0FBZixlQUFlOytHQUFmLGVBQWUsaUJBSFgsYUFBYSxhQUNsQixhQUFhOytHQUVaLGVBQWU7OzJGQUFmLGVBQWU7a0JBSjNCLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFLENBQUMsYUFBYSxDQUFDO29CQUM3QixPQUFPLEVBQUUsQ0FBQyxhQUFhLENBQUM7aUJBQ3pCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFByeUZpbHRlclBpcGUgfSBmcm9tICcuL2ZpbHRlci5waXBlJztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbUHJ5RmlsdGVyUGlwZV0sXG4gIGV4cG9ydHM6IFtQcnlGaWx0ZXJQaXBlXVxufSlcbmV4cG9ydCBjbGFzcyBQcnlGaWx0ZXJNb2R1bGUge31cbiJdfQ==
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Byb3ZvbHkvZGFzaGJvYXJkL2NvbXBvbmVudHMvZmlsdGVyL2ZpbHRlci5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQU05QyxNQUFNLE9BQU8sZUFBZTsrR0FBZixlQUFlO2dIQUFmLGVBQWUsaUJBSFgsYUFBYSxhQUNsQixhQUFhO2dIQUVaLGVBQWU7OzRGQUFmLGVBQWU7a0JBSjNCLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFLENBQUMsYUFBYSxDQUFDO29CQUM3QixPQUFPLEVBQUUsQ0FBQyxhQUFhLENBQUM7aUJBQ3pCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFByeUZpbHRlclBpcGUgfSBmcm9tICcuL2ZpbHRlci5waXBlJztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbUHJ5RmlsdGVyUGlwZV0sXG4gIGV4cG9ydHM6IFtQcnlGaWx0ZXJQaXBlXVxufSlcbmV4cG9ydCBjbGFzcyBQcnlGaWx0ZXJNb2R1bGUge31cbiJdfQ==
@@ -4,13 +4,13 @@ export class PryFilterPipe {
4
4
  transform(items, property, filter) {
5
5
  return items.filter((item) => String(item[property]).indexOf(filter) !== -1);
6
6
  }
7
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: PryFilterPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
8
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "16.1.6", ngImport: i0, type: PryFilterPipe, name: "pryFilter" }); }
7
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PryFilterPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
8
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: PryFilterPipe, name: "pryFilter" }); }
9
9
  }
10
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: PryFilterPipe, decorators: [{
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PryFilterPipe, decorators: [{
11
11
  type: Pipe,
12
12
  args: [{
13
13
  name: 'pryFilter'
14
14
  }]
15
15
  }] });
16
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcm92b2x5L2Rhc2hib2FyZC9jb21wb25lbnRzL2ZpbHRlci9maWx0ZXIucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQzs7QUFLcEQsTUFBTSxPQUFPLGFBQWE7SUFDeEIsU0FBUyxDQUFDLEtBQVUsRUFBRSxRQUFpQixFQUFFLE1BQWM7UUFDckQsT0FBTyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDL0UsQ0FBQzs4R0FIVSxhQUFhOzRHQUFiLGFBQWE7OzJGQUFiLGFBQWE7a0JBSHpCLElBQUk7bUJBQUM7b0JBQ0osSUFBSSxFQUFFLFdBQVc7aUJBQ2xCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AUGlwZSh7XG4gIG5hbWU6ICdwcnlGaWx0ZXInXG59KVxuZXhwb3J0IGNsYXNzIFByeUZpbHRlclBpcGU8VD4gaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcbiAgdHJhbnNmb3JtKGl0ZW1zOiBUW10sIHByb3BlcnR5OiBrZXlvZiBULCBmaWx0ZXI6IHN0cmluZyk6IGFueSB7XG4gICAgcmV0dXJuIGl0ZW1zLmZpbHRlcigoaXRlbSkgPT4gU3RyaW5nKGl0ZW1bcHJvcGVydHldKS5pbmRleE9mKGZpbHRlcikgIT09IC0xKTtcbiAgfVxufVxuIl19
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcm92b2x5L2Rhc2hib2FyZC9jb21wb25lbnRzL2ZpbHRlci9maWx0ZXIucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQzs7QUFLcEQsTUFBTSxPQUFPLGFBQWE7SUFDeEIsU0FBUyxDQUFDLEtBQVUsRUFBRSxRQUFpQixFQUFFLE1BQWM7UUFDckQsT0FBTyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDL0UsQ0FBQzsrR0FIVSxhQUFhOzZHQUFiLGFBQWE7OzRGQUFiLGFBQWE7a0JBSHpCLElBQUk7bUJBQUM7b0JBQ0osSUFBSSxFQUFFLFdBQVc7aUJBQ2xCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AUGlwZSh7XG4gIG5hbWU6ICdwcnlGaWx0ZXInXG59KVxuZXhwb3J0IGNsYXNzIFByeUZpbHRlclBpcGU8VD4gaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcbiAgdHJhbnNmb3JtKGl0ZW1zOiBUW10sIHByb3BlcnR5OiBrZXlvZiBULCBmaWx0ZXI6IHN0cmluZyk6IGFueSB7XG4gICAgcmV0dXJuIGl0ZW1zLmZpbHRlcigoaXRlbSkgPT4gU3RyaW5nKGl0ZW1bcHJvcGVydHldKS5pbmRleE9mKGZpbHRlcikgIT09IC0xKTtcbiAgfVxufVxuIl19
@@ -105,10 +105,10 @@ export class PryMetadataEditorComponent extends SubscriptionnerDirective {
105
105
  });
106
106
  }
107
107
  }
108
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.6", 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.1.6", 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" }] }); }
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" }] }); }
110
110
  }
111
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: PryMetadataEditorComponent, decorators: [{
111
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PryMetadataEditorComponent, decorators: [{
112
112
  type: Component,
113
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" }]
114
114
  }], ctorParameters: function () { return [{ type: i1.Store }, { type: i2.FormBuilder }]; }, propDecorators: { isModification: [{
@@ -124,4 +124,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.6", ngImpor
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+XG4gICAgICAgIDxwcnktc2VsZWN0XG4gICAgICAgICAgaWQ9XCJtZXRhZGF0YVwiXG4gICAgICAgICAgY2xhc3M9XCJhLXByeS1zZWxlY3Qgby1tZXRhZGF0YS1lZGl0b3JcIlxuICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cIm1ldGFkYXRhXCJcbiAgICAgICAgICBbaXRlbXNdPVwiYXZhaWxhYmxlTWV0YWRhdGEkIHwgYXN5bmNcIlxuICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cIm9uTWV0YUNoYW5nZSgkZXZlbnQpXCJcbiAgICAgICAgICBbaXNGb3JtXT1cInRydWVcIlxuICAgICAgICAgIFtpdGVtc0FzT3B0aW9uXT1cInRydWVcIlxuICAgICAgICAgIGJpbmRMYWJlbD1cIm5hbWVcIlxuICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxsZWRieV09XCJcbiAgICAgICAgICAgIGlzU3VibWl0dGVkICYmIGZvcm0uZ2V0KCdtZXRhZGF0YScpPy5pbnZhbGlkID8gJ21ldGFkYXRhLWxhYmVsIG1ldGFkYXRhLWVycm9yJyA6ICdtZXRhZGF0YS1sYWJlbCdcbiAgICAgICAgICBcIlxuICAgICAgICAgIFthdHRyLmFyaWEtaW52YWxpZF09XCJpc1N1Ym1pdHRlZCAmJiBmb3JtLmdldCgnbWV0YWRhdGEnKT8uaW52YWxpZFwiXG4gICAgICAgID5cbiAgICAgICAgPC9wcnktc2VsZWN0PlxuICAgICAgICA8bGFiZWxcbiAgICAgICAgICAqbmdJZj1cImlzU3VibWl0dGVkICYmIGZvcm0uZ2V0KCdtZXRhZGF0YScpPy5pbnZhbGlkXCJcbiAgICAgICAgICBpZD1cIm1ldGFkYXRhLWVycm9yXCJcbiAgICAgICAgICBmb3I9XCJtZXRhZGF0YVwiXG4gICAgICAgICAgY2xhc3M9XCJhLWxhYmVsIGEtbGFiZWwtLWhlbHAgLWVycm9yXCJcbiAgICAgICAgPlxuICAgICAgICAgIHt7ICdAcHJ5LmFkbWluLnJlcXVpcmVkJyB8IGkxOG4gfX1cbiAgICAgICAgPC9sYWJlbD5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZm9ybS52YWx1ZS5tZXRhZGF0YVwiPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZm9ybS52YWx1ZVsnbWV0YWRhdGEnXVsndHlwZSddID09PSAnREFURSc7IGVsc2UgaW5wdXRMaXN0XCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cIm0tZm9ybS1sYWJlbC1maWVsZCBvLW1ldGFkYXRhLWVkaXRvcl9fY29udGFpbmVyXCI+XG4gICAgICAgICAgICA8bGFiZWwgaWQ9XCJmb3JtX2RhdGUtbGFiZWxcIiBmb3I9XCJmb3JtX2RhdGVcIiBjbGFzcz1cImEtbGFiZWxcIj5cbiAgICAgICAgICAgICAge3sgJ0BwcnkuYWN0aW9uLnNlbGVjdERhdGUnIHwgaTE4biB9fSAqXG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidS12aXN1YWxseS1oaWRkZW5cIj4oe3sgJ0BwcnkuYWRtaW4ucmVxdWlyZWQnIHwgaTE4biB9fSk8L3NwYW4+XG4gICAgICAgICAgICA8L2xhYmVsPlxuICAgICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAgIGlkPVwiZm9ybV9kYXRlXCJcbiAgICAgICAgICAgICAgdHlwZT1cImRhdGVcIlxuICAgICAgICAgICAgICBjbGFzcz1cImEtZm9ybS1maWVsZFwiXG4gICAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cInZhbHVlXCJcbiAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbGxlZGJ5XT1cIlxuICAgICAgICAgICAgICAgIGlzU3VibWl0dGVkICYmIGZvcm0uZ2V0KCd2YWx1ZScpPy5pbnZhbGlkID8gJ2Zvcm0tZGF0ZS1sYWJlbCBmb3JtLWRhdGUtZXJyb3InIDogJ2Zvcm0tZGF0ZS1sYWJlbCdcbiAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgW2F0dHIuYXJpYS1pbnZhbGlkXT1cImlzU3VibWl0dGVkICYmIGZvcm0uZ2V0KCd2YWx1ZScpPy5pbnZhbGlkXCJcbiAgICAgICAgICAgICAgcmVxdWlyZWRcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8bGFiZWxcbiAgICAgICAgICAgICAgKm5nSWY9XCJpc1N1Ym1pdHRlZCAmJiBmb3JtLmdldCgndmFsdWUnKT8uaW52YWxpZFwiXG4gICAgICAgICAgICAgIGlkPVwiZm9ybV9kYXRlLWVycm9yXCJcbiAgICAgICAgICAgICAgZm9yPVwiZm9ybV9kYXRlXCJcbiAgICAgICAgICAgICAgY2xhc3M9XCJhLWxhYmVsIGEtbGFiZWwtLWhlbHAgLWVycm9yXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAge3sgJ0BwcnkuYWRtaW4ucmVxdWlyZWQnIHwgaTE4biB9fVxuICAgICAgICAgICAgPC9sYWJlbD5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgPG5nLXRlbXBsYXRlICNpbnB1dExpc3Q+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImZvcm0udmFsdWVbJ21ldGFkYXRhJ11bJ3R5cGUnXSA9PT0gJ0xJU1QnOyBlbHNlIGlucHV0VGV4dFwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm0tZm9ybS1sYWJlbC1maWVsZCAgby1tZXRhZGF0YS1lZGl0b3JfX2NvbnRhaW5lclwiPlxuICAgICAgICAgICAgICA8bGFiZWwgaWQ9XCJsaXN0LWxhYmVsXCIgY2xhc3M9XCJhLWxhYmVsXCIgZm9yPVwibGlzdFwiPnt7ICdAcHJ5LmFjdGlvbi5jaG9pY2VJbkxpc3QnIHwgaTE4biB9fTwvbGFiZWw+XG4gICAgICAgICAgICAgIDxwcnktc2VsZWN0XG4gICAgICAgICAgICAgICAgaWQ9XCJsaXN0XCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImEtcHJ5LXNlbGVjdCBvLW1ldGFkYXRhLWVkaXRvclwiXG4gICAgICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwidmFsdWVcIlxuICAgICAgICAgICAgICAgIFtpdGVtc109XCJmb3JtLnZhbHVlWydtZXRhZGF0YSddWydhbGxvd2VkVmFsdWVzJ11cIlxuICAgICAgICAgICAgICAgIFtpc0Zvcm1dPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgYXJpYS1sYWJlbGxlZGJ5PVwibGlzdC1sYWJlbFwiXG4gICAgICAgICAgICAgID48L3ByeS1zZWxlY3Q+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cblxuICAgICAgICA8bmctdGVtcGxhdGUgI2lucHV0VGV4dD5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwibS1mb3JtLWxhYmVsLWZpZWxkXCI+XG4gICAgICAgICAgICA8bGFiZWwgaWQ9XCJ0ZXh0LWxhYmVsXCIgY2xhc3M9XCJhLWxhYmVsXCIgZm9yPVwidGV4dFwiPlxuICAgICAgICAgICAgICB7eyAnQHByeS5hY3Rpb24udGV4dCcgfCBpMThuIH19ICpcbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ1LXZpc3VhbGx5LWhpZGRlblwiPih7eyAnQHByeS5hZG1pbi5yZXF1aXJlZCcgfCBpMThuIH19KTwvc3Bhbj5cbiAgICAgICAgICAgIDwvbGFiZWw+XG4gICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgaWQ9XCJ0ZXh0XCJcbiAgICAgICAgICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgICAgICAgICBjbGFzcz1cImEtZm9ybS1maWVsZFwiXG4gICAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cInZhbHVlXCJcbiAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbGxlZGJ5XT1cIlxuICAgICAgICAgICAgICAgIGlzU3VibWl0dGVkICYmIGZvcm0uZ2V0KCd2YWx1ZScpPy5pbnZhbGlkID8gJ3RleHQtbGFiZWwgdGV4dC1lcnJvcicgOiAndGV4dC1sYWJlbCdcbiAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgW2F0dHIuYXJpYS1pbnZhbGlkXT1cImlzU3VibWl0dGVkICYmIGZvcm0uZ2V0KCd2YWx1ZScpPy5pbnZhbGlkXCJcbiAgICAgICAgICAgICAgcmVxdWlyZWRcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8bGFiZWxcbiAgICAgICAgICAgICAgKm5nSWY9XCJpc1N1Ym1pdHRlZCAmJiBmb3JtLmdldCgndmFsdWUnKT8uaW52YWxpZFwiXG4gICAgICAgICAgICAgIGlkPVwidGVzdC1lcnJvclwiXG4gICAgICAgICAgICAgIGZvcj1cInRleHRcIlxuICAgICAgICAgICAgICBjbGFzcz1cImEtbGFiZWwgYS1sYWJlbC0taGVscCAtZXJyb3JcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImZvcm0uZ2V0KCd2YWx1ZScpPy5oYXNFcnJvcigncmVxdWlyZWQnKVwiPnt7ICdAcHJ5LmFkbWluLnJlcXVpcmVkJyB8IGkxOG4gfX08L3NwYW4+XG4gICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJmb3JtLmdldCgndmFsdWUnKT8uaGFzRXJyb3IoJ3BhdHRlcm4nKVwiPlxuICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiZm9ybS52YWx1ZVsnbWV0YWRhdGEnXVsndHlwZSddID09PSAnRE9VQkxFJ1wiPlxuICAgICAgICAgICAgICAgICAge3sgJ0BwcnkuYWRtaW4uZW52aXJvbm1lbnQuZm9ybWF0RG91YmxlJyB8IGkxOG4gfX1cbiAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJmb3JtLnZhbHVlWydtZXRhZGF0YSddWyd0eXBlJ10gPT09ICdJTlRFR0VSJ1wiPlxuICAgICAgICAgICAgICAgICAge3sgJ0BwcnkuYWRtaW4uZW52aXJvbm1lbnQuZm9ybWF0SW50JyB8IGkxOG4gfX1cbiAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPC9sYWJlbD5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvZmllbGRzZXQ+XG5cbiAgICA8ZGl2IGNsYXNzPVwibS1idG4tZ3JvdXAgLWVuZFwiPlxuICAgICAgPGJ1dHRvbiB0eXBlPVwic3VibWl0XCIgY2xhc3M9XCJhLWJ0biBhLWJ0bi0tcHJpbWFyeVwiPlxuICAgICAgICB7eyAoaXNNb2RpZmljYXRpb24gPyAnQHByeS5hY3Rpb24uZWRpdE1ldGFkYXRhJyA6ICdAcHJ5LmFjdGlvbi5hZGRNZXRhZGF0YScpIHwgaTE4biB9fVxuICAgICAgPC9idXR0b24+XG4gICAgPC9kaXY+XG4gIDwvZm9ybT5cbjwvbmctY29udGFpbmVyPlxuIl19