@ember-eui/core 11.0.2 → 12.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (544) hide show
  1. package/README.md +9 -7
  2. package/declarations/-private/random-id.d.ts +0 -1
  3. package/declarations/-private/random-id.d.ts.map +1 -1
  4. package/declarations/components/eui-accordion.d.ts +2 -1
  5. package/declarations/components/eui-accordion.d.ts.map +1 -1
  6. package/declarations/components/eui-breadcrumbs.d.ts +2 -1
  7. package/declarations/components/eui-breadcrumbs.d.ts.map +1 -1
  8. package/declarations/components/eui-code-block/virtualized.d.ts +1 -1
  9. package/declarations/components/eui-code-block.d.ts +2 -1
  10. package/declarations/components/eui-code-block.d.ts.map +1 -1
  11. package/declarations/components/eui-code.d.ts +2 -1
  12. package/declarations/components/eui-code.d.ts.map +1 -1
  13. package/declarations/components/eui-combo-box/options.d.ts +1 -1
  14. package/declarations/components/eui-combo-box/options.d.ts.map +1 -1
  15. package/declarations/components/eui-combo-box/trigger/input.d.ts +1 -1
  16. package/declarations/components/eui-combo-box/trigger/input.d.ts.map +1 -1
  17. package/declarations/components/eui-form-control-layout-custom-icon.d.ts +1 -1
  18. package/declarations/components/eui-global-toast-list.d.ts +2 -1
  19. package/declarations/components/eui-global-toast-list.d.ts.map +1 -1
  20. package/declarations/components/eui-hide-for.d.ts.map +1 -1
  21. package/declarations/components/eui-i18n.d.ts +1 -1
  22. package/declarations/components/eui-icon.d.ts +1 -0
  23. package/declarations/components/eui-icon.d.ts.map +1 -1
  24. package/declarations/components/eui-markdown-editor-toolbar.d.ts +4 -3
  25. package/declarations/components/eui-markdown-editor-toolbar.d.ts.map +1 -1
  26. package/declarations/components/eui-markdown-editor.d.ts +8 -3
  27. package/declarations/components/eui-markdown-editor.d.ts.map +1 -1
  28. package/declarations/components/eui-page-header-content.d.ts +1 -1
  29. package/declarations/components/eui-popover.d.ts +2 -1
  30. package/declarations/components/eui-popover.d.ts.map +1 -1
  31. package/declarations/components/eui-portal.d.ts +2 -1
  32. package/declarations/components/eui-portal.d.ts.map +1 -1
  33. package/declarations/components/eui-range-track.d.ts +1 -1
  34. package/declarations/components/eui-show-for.d.ts +1 -1
  35. package/declarations/components/eui-show-for.d.ts.map +1 -1
  36. package/declarations/components/eui-super-date-picker/date-popover/absolute-tab.d.ts +2 -1
  37. package/declarations/components/eui-super-date-picker/date-popover/absolute-tab.d.ts.map +1 -1
  38. package/declarations/components/eui-super-date-picker/date-popover/datetime-picker.d.ts +2 -1
  39. package/declarations/components/eui-super-date-picker/date-popover/datetime-picker.d.ts.map +1 -1
  40. package/declarations/components/eui-super-date-picker/date-popover/eui-date-popover-content.d.ts +1 -1
  41. package/declarations/components/eui-super-date-picker/date-popover/relative-tab.d.ts +2 -1
  42. package/declarations/components/eui-super-date-picker/date-popover/relative-tab.d.ts.map +1 -1
  43. package/declarations/components/eui-super-date-picker/eui-quick-select-popover/eui-quick-select.d.ts +2 -1
  44. package/declarations/components/eui-super-date-picker/eui-quick-select-popover/eui-quick-select.d.ts.map +1 -1
  45. package/declarations/components/eui-tabbed-content.d.ts +2 -1
  46. package/declarations/components/eui-tabbed-content.d.ts.map +1 -1
  47. package/declarations/components/eui-tool-tip-popover.d.ts +2 -1
  48. package/declarations/components/eui-tool-tip-popover.d.ts.map +1 -1
  49. package/declarations/components.d.ts +148 -148
  50. package/declarations/helpers/arg-or-default.d.ts +1 -1
  51. package/declarations/helpers/eui-page-restrict-width.d.ts +1 -1
  52. package/declarations/helpers/eui-palette.d.ts +1 -1
  53. package/declarations/helpers/get-range-tick.d.ts +2 -2
  54. package/declarations/helpers/hex-to-rgb.d.ts +1 -1
  55. package/declarations/helpers/is-color-dark.d.ts +1 -1
  56. package/declarations/helpers/is-item-open.d.ts +1 -1
  57. package/declarations/helpers/is-valid-hex.d.ts +1 -1
  58. package/declarations/helpers/nullish.d.ts +1 -1
  59. package/declarations/helpers/starts-with.d.ts +1 -1
  60. package/declarations/helpers/to-initials.d.ts +1 -1
  61. package/declarations/helpers/type-of.d.ts +3 -3
  62. package/declarations/helpers/type-of.d.ts.map +1 -1
  63. package/declarations/helpers/use-state.d.ts +1 -1
  64. package/declarations/modifiers/screen-reader-only.d.ts +1 -1
  65. package/declarations/modifiers/simple-style.d.ts +1 -1
  66. package/declarations/modifiers/validatable-control.d.ts +1 -1
  67. package/declarations/utils/markdown/markdown-actions.d.ts +1 -1
  68. package/declarations/utils/markdown/markdown-modes.d.ts.map +1 -1
  69. package/declarations/utils/markdown/markdown-types.d.ts +1 -1
  70. package/declarations/utils/markdown/markdown-types.d.ts.map +1 -1
  71. package/dist/-private/random-id.js.map +1 -1
  72. package/dist/components/common.js.map +1 -1
  73. package/dist/components/eui-accordion.js +14 -14
  74. package/dist/components/eui-accordion.js.map +1 -1
  75. package/dist/components/eui-auto-sizer.js +31 -31
  76. package/dist/components/eui-auto-sizer.js.map +1 -1
  77. package/dist/components/eui-avatar.js +2 -2
  78. package/dist/components/eui-avatar.js.map +1 -1
  79. package/dist/components/eui-badge-group.js.map +1 -1
  80. package/dist/components/eui-badge.js +1 -1
  81. package/dist/components/eui-badge.js.map +1 -1
  82. package/dist/components/eui-beta-badge.js +1 -1
  83. package/dist/components/eui-beta-badge.js.map +1 -1
  84. package/dist/components/eui-bottom-bar.js +13 -13
  85. package/dist/components/eui-bottom-bar.js.map +1 -1
  86. package/dist/components/eui-breadcrumbs.js +40 -42
  87. package/dist/components/eui-breadcrumbs.js.map +1 -1
  88. package/dist/components/eui-button-content.js.map +1 -1
  89. package/dist/components/eui-button-empty.js +1 -1
  90. package/dist/components/eui-button-empty.js.map +1 -1
  91. package/dist/components/eui-button-group-button.js +1 -1
  92. package/dist/components/eui-button-group-button.js.map +1 -1
  93. package/dist/components/eui-button-group.js +1 -1
  94. package/dist/components/eui-button-group.js.map +1 -1
  95. package/dist/components/eui-button-icon.js +1 -1
  96. package/dist/components/eui-button-icon.js.map +1 -1
  97. package/dist/components/eui-button.js +2 -2
  98. package/dist/components/eui-button.js.map +1 -1
  99. package/dist/components/eui-call-out.js +1 -1
  100. package/dist/components/eui-call-out.js.map +1 -1
  101. package/dist/components/eui-card-select.js +8 -8
  102. package/dist/components/eui-card-select.js.map +1 -1
  103. package/dist/components/eui-card.js +6 -6
  104. package/dist/components/eui-card.js.map +1 -1
  105. package/dist/components/eui-checkable-card.js.map +1 -1
  106. package/dist/components/eui-checkbox-group.js +1 -1
  107. package/dist/components/eui-checkbox-group.js.map +1 -1
  108. package/dist/components/eui-checkbox.js +4 -4
  109. package/dist/components/eui-checkbox.js.map +1 -1
  110. package/dist/components/eui-code-block/controls.js.map +1 -1
  111. package/dist/components/eui-code-block/full-screen-display.js.map +1 -1
  112. package/dist/components/eui-code-block/virtualized.js +9 -9
  113. package/dist/components/eui-code-block/virtualized.js.map +1 -1
  114. package/dist/components/eui-code-block.js +71 -71
  115. package/dist/components/eui-code-block.js.map +1 -1
  116. package/dist/components/eui-code.js +16 -16
  117. package/dist/components/eui-code.js.map +1 -1
  118. package/dist/components/eui-collapsible-nav-group.js +1 -1
  119. package/dist/components/eui-collapsible-nav-group.js.map +1 -1
  120. package/dist/components/eui-collapsible-nav.js +21 -22
  121. package/dist/components/eui-collapsible-nav.js.map +1 -1
  122. package/dist/components/eui-combo-box/create-option.js +9 -9
  123. package/dist/components/eui-combo-box/create-option.js.map +1 -1
  124. package/dist/components/eui-combo-box/group.js.map +1 -1
  125. package/dist/components/eui-combo-box/no-matches-message.js.map +1 -1
  126. package/dist/components/eui-combo-box/options.js +32 -16
  127. package/dist/components/eui-combo-box/options.js.map +1 -1
  128. package/dist/components/eui-combo-box/search-message.js.map +1 -1
  129. package/dist/components/eui-combo-box/trigger/input.js +20 -19
  130. package/dist/components/eui-combo-box/trigger/input.js.map +1 -1
  131. package/dist/components/eui-combo-box/trigger.js +2 -2
  132. package/dist/components/eui-combo-box/trigger.js.map +1 -1
  133. package/dist/components/eui-combo-box-pill.js +1 -1
  134. package/dist/components/eui-combo-box-pill.js.map +1 -1
  135. package/dist/components/eui-combo-box.js +58 -60
  136. package/dist/components/eui-combo-box.js.map +1 -1
  137. package/dist/components/eui-comment-list.js.map +1 -1
  138. package/dist/components/eui-comment-timeline.js +1 -1
  139. package/dist/components/eui-comment-timeline.js.map +1 -1
  140. package/dist/components/eui-comment.js +1 -1
  141. package/dist/components/eui-comment.js.map +1 -1
  142. package/dist/components/eui-confirm-modal.js.map +1 -1
  143. package/dist/components/eui-context-menu-item.js +4 -4
  144. package/dist/components/eui-context-menu-item.js.map +1 -1
  145. package/dist/components/eui-context-menu-panel.js.map +1 -1
  146. package/dist/components/eui-copy.js +3 -3
  147. package/dist/components/eui-copy.js.map +1 -1
  148. package/dist/components/eui-described-form-group.js.map +1 -1
  149. package/dist/components/eui-description-list-description.js.map +1 -1
  150. package/dist/components/eui-description-list-title.js.map +1 -1
  151. package/dist/components/eui-description-list.js.map +1 -1
  152. package/dist/components/eui-dual-range.js +110 -110
  153. package/dist/components/eui-dual-range.js.map +1 -1
  154. package/dist/components/eui-empty-prompt.js +1 -1
  155. package/dist/components/eui-empty-prompt.js.map +1 -1
  156. package/dist/components/eui-field-number.js +1 -1
  157. package/dist/components/eui-field-number.js.map +1 -1
  158. package/dist/components/eui-field-password.js +1 -1
  159. package/dist/components/eui-field-password.js.map +1 -1
  160. package/dist/components/eui-field-search.js +26 -26
  161. package/dist/components/eui-field-search.js.map +1 -1
  162. package/dist/components/eui-field-text.js +1 -1
  163. package/dist/components/eui-field-text.js.map +1 -1
  164. package/dist/components/eui-file-picker.js +16 -16
  165. package/dist/components/eui-file-picker.js.map +1 -1
  166. package/dist/components/eui-flex-grid.js.map +1 -1
  167. package/dist/components/eui-flex-group.js.map +1 -1
  168. package/dist/components/eui-flex-item.js.map +1 -1
  169. package/dist/components/eui-flyout-body.js.map +1 -1
  170. package/dist/components/eui-flyout-footer.js.map +1 -1
  171. package/dist/components/eui-flyout-header.js.map +1 -1
  172. package/dist/components/eui-flyout.js +35 -36
  173. package/dist/components/eui-flyout.js.map +1 -1
  174. package/dist/components/eui-form-control-layout-clear-button.js.map +1 -1
  175. package/dist/components/eui-form-control-layout-custom-icon.js.map +1 -1
  176. package/dist/components/eui-form-control-layout-delimited.js +1 -1
  177. package/dist/components/eui-form-control-layout-delimited.js.map +1 -1
  178. package/dist/components/eui-form-control-layout-icons.js +1 -1
  179. package/dist/components/eui-form-control-layout-icons.js.map +1 -1
  180. package/dist/components/eui-form-control-layout.js +1 -1
  181. package/dist/components/eui-form-control-layout.js.map +1 -1
  182. package/dist/components/eui-form-error-text.js.map +1 -1
  183. package/dist/components/eui-form-fieldset.js.map +1 -1
  184. package/dist/components/eui-form-help-text.js.map +1 -1
  185. package/dist/components/eui-form-label.js.map +1 -1
  186. package/dist/components/eui-form-legend.js.map +1 -1
  187. package/dist/components/eui-form-row.js +4 -4
  188. package/dist/components/eui-form-row.js.map +1 -1
  189. package/dist/components/eui-form.js +1 -1
  190. package/dist/components/eui-form.js.map +1 -1
  191. package/dist/components/eui-global-toast-list.js +43 -43
  192. package/dist/components/eui-global-toast-list.js.map +1 -1
  193. package/dist/components/eui-header-alert.js.map +1 -1
  194. package/dist/components/eui-header-breadcrumbs.js.map +1 -1
  195. package/dist/components/eui-header-link.js.map +1 -1
  196. package/dist/components/eui-header-links.js +1 -1
  197. package/dist/components/eui-header-links.js.map +1 -1
  198. package/dist/components/eui-header-logo.js.map +1 -1
  199. package/dist/components/eui-header-section-item-button.js +6 -6
  200. package/dist/components/eui-header-section-item-button.js.map +1 -1
  201. package/dist/components/eui-header-section-item.js.map +1 -1
  202. package/dist/components/eui-header-section.js.map +1 -1
  203. package/dist/components/eui-header.js +2 -2
  204. package/dist/components/eui-header.js.map +1 -1
  205. package/dist/components/eui-health.js.map +1 -1
  206. package/dist/components/eui-hide-for.js.map +1 -1
  207. package/dist/components/eui-horizontal-rule.js.map +1 -1
  208. package/dist/components/eui-i18n/render.js.map +1 -1
  209. package/dist/components/eui-i18n.js +3 -3
  210. package/dist/components/eui-i18n.js.map +1 -1
  211. package/dist/components/eui-icon-tip.js.map +1 -1
  212. package/dist/components/eui-icon.js +43 -37
  213. package/dist/components/eui-icon.js.map +1 -1
  214. package/dist/components/eui-image.js +8 -8
  215. package/dist/components/eui-image.js.map +1 -1
  216. package/dist/components/eui-inner-text.js +11 -11
  217. package/dist/components/eui-inner-text.js.map +1 -1
  218. package/dist/components/eui-input-popover.js +32 -32
  219. package/dist/components/eui-input-popover.js.map +1 -1
  220. package/dist/components/eui-key-pad-menu-item.js +3 -3
  221. package/dist/components/eui-key-pad-menu-item.js.map +1 -1
  222. package/dist/components/eui-key-pad-menu.js.map +1 -1
  223. package/dist/components/eui-link.js +1 -1
  224. package/dist/components/eui-link.js.map +1 -1
  225. package/dist/components/eui-list-group-item.js +4 -1
  226. package/dist/components/eui-list-group-item.js.map +1 -1
  227. package/dist/components/eui-list-group.js +1 -1
  228. package/dist/components/eui-list-group.js.map +1 -1
  229. package/dist/components/eui-loading-content.js +1 -1
  230. package/dist/components/eui-loading-content.js.map +1 -1
  231. package/dist/components/eui-loading-logo.js.map +1 -1
  232. package/dist/components/eui-loading-spinner.js.map +1 -1
  233. package/dist/components/eui-markdown-editor-drop-zone.js.map +1 -1
  234. package/dist/components/eui-markdown-editor-footer/icons/markdown-logo.js.map +1 -1
  235. package/dist/components/eui-markdown-editor-footer.js +3 -3
  236. package/dist/components/eui-markdown-editor-footer.js.map +1 -1
  237. package/dist/components/eui-markdown-editor-text-area.js.map +1 -1
  238. package/dist/components/eui-markdown-editor-toolbar/icons/markdown-checkmark.js.map +1 -1
  239. package/dist/components/eui-markdown-editor-toolbar.js +9 -11
  240. package/dist/components/eui-markdown-editor-toolbar.js.map +1 -1
  241. package/dist/components/eui-markdown-editor.js +147 -96
  242. package/dist/components/eui-markdown-editor.js.map +1 -1
  243. package/dist/components/eui-markdown-format/markdown-checkbox.js +7 -7
  244. package/dist/components/eui-markdown-format/markdown-checkbox.js.map +1 -1
  245. package/dist/components/eui-markdown-format/markdown-code-block.js.map +1 -1
  246. package/dist/components/eui-markdown-format/markdown-code.js.map +1 -1
  247. package/dist/components/eui-markdown-format/markdown-tooltip.js.map +1 -1
  248. package/dist/components/eui-markdown-format.js +14 -16
  249. package/dist/components/eui-markdown-format.js.map +1 -1
  250. package/dist/components/eui-modal-body.js.map +1 -1
  251. package/dist/components/eui-modal-footer.js.map +1 -1
  252. package/dist/components/eui-modal-header-title.js.map +1 -1
  253. package/dist/components/eui-modal-header.js.map +1 -1
  254. package/dist/components/eui-modal.js +1 -1
  255. package/dist/components/eui-modal.js.map +1 -1
  256. package/dist/components/eui-notification-badge.js.map +1 -1
  257. package/dist/components/eui-notification-event-messages.js.map +1 -1
  258. package/dist/components/eui-notification-event-meta.js +1 -1
  259. package/dist/components/eui-notification-event-meta.js.map +1 -1
  260. package/dist/components/eui-notification-event-read-button.js.map +1 -1
  261. package/dist/components/eui-notification-event-read-icon.js.map +1 -1
  262. package/dist/components/eui-notification-event.js +1 -1
  263. package/dist/components/eui-notification-event.js.map +1 -1
  264. package/dist/components/eui-overlay-mask.js +6 -6
  265. package/dist/components/eui-overlay-mask.js.map +1 -1
  266. package/dist/components/eui-page-body.js.map +1 -1
  267. package/dist/components/eui-page-content-body.js.map +1 -1
  268. package/dist/components/eui-page-content-header-section.js.map +1 -1
  269. package/dist/components/eui-page-content-header.js.map +1 -1
  270. package/dist/components/eui-page-content.js.map +1 -1
  271. package/dist/components/eui-page-header-content.js +4 -4
  272. package/dist/components/eui-page-header-content.js.map +1 -1
  273. package/dist/components/eui-page-header-section.js.map +1 -1
  274. package/dist/components/eui-page-header.js +1 -1
  275. package/dist/components/eui-page-header.js.map +1 -1
  276. package/dist/components/eui-page-side-bar.js.map +1 -1
  277. package/dist/components/eui-page-template.js +12 -12
  278. package/dist/components/eui-page-template.js.map +1 -1
  279. package/dist/components/eui-page.js.map +1 -1
  280. package/dist/components/eui-pagination/button-wrapper.js.map +1 -1
  281. package/dist/components/eui-pagination/next-button.js +1 -1
  282. package/dist/components/eui-pagination/next-button.js.map +1 -1
  283. package/dist/components/eui-pagination/previous-button.js +1 -1
  284. package/dist/components/eui-pagination/previous-button.js.map +1 -1
  285. package/dist/components/eui-pagination-button.js.map +1 -1
  286. package/dist/components/eui-pagination.js +39 -39
  287. package/dist/components/eui-pagination.js.map +1 -1
  288. package/dist/components/eui-panel.js +1 -1
  289. package/dist/components/eui-panel.js.map +1 -1
  290. package/dist/components/eui-popover-footer.js.map +1 -1
  291. package/dist/components/eui-popover-title.js.map +1 -1
  292. package/dist/components/eui-popover.js +126 -126
  293. package/dist/components/eui-popover.js.map +1 -1
  294. package/dist/components/eui-portal.js +8 -8
  295. package/dist/components/eui-portal.js.map +1 -1
  296. package/dist/components/eui-progress.js +1 -1
  297. package/dist/components/eui-progress.js.map +1 -1
  298. package/dist/components/eui-radio-group.js +2 -2
  299. package/dist/components/eui-radio-group.js.map +1 -1
  300. package/dist/components/eui-radio.js +1 -1
  301. package/dist/components/eui-radio.js.map +1 -1
  302. package/dist/components/eui-range-highlight.js.map +1 -1
  303. package/dist/components/eui-range-input.js +1 -1
  304. package/dist/components/eui-range-input.js.map +1 -1
  305. package/dist/components/eui-range-label.js.map +1 -1
  306. package/dist/components/eui-range-levels.js +7 -7
  307. package/dist/components/eui-range-levels.js.map +1 -1
  308. package/dist/components/eui-range-slider.js.map +1 -1
  309. package/dist/components/eui-range-thumb.js.map +1 -1
  310. package/dist/components/eui-range-ticks.js +6 -6
  311. package/dist/components/eui-range-ticks.js.map +1 -1
  312. package/dist/components/eui-range-tooltip.js +20 -20
  313. package/dist/components/eui-range-tooltip.js.map +1 -1
  314. package/dist/components/eui-range-track.js +49 -49
  315. package/dist/components/eui-range-track.js.map +1 -1
  316. package/dist/components/eui-range-wrapper.js.map +1 -1
  317. package/dist/components/eui-range.js +26 -26
  318. package/dist/components/eui-range.js.map +1 -1
  319. package/dist/components/eui-select.js +1 -1
  320. package/dist/components/eui-select.js.map +1 -1
  321. package/dist/components/eui-selectable-list-item.js +1 -1
  322. package/dist/components/eui-selectable-list-item.js.map +1 -1
  323. package/dist/components/eui-show-for.js +8 -8
  324. package/dist/components/eui-show-for.js.map +1 -1
  325. package/dist/components/eui-side-nav-item/button.js.map +1 -1
  326. package/dist/components/eui-side-nav-item.js +1 -1
  327. package/dist/components/eui-side-nav-item.js.map +1 -1
  328. package/dist/components/eui-side-nav.js +4 -4
  329. package/dist/components/eui-side-nav.js.map +1 -1
  330. package/dist/components/eui-spacer.js.map +1 -1
  331. package/dist/components/eui-split-panel/inner.js.map +1 -1
  332. package/dist/components/eui-split-panel/outer.js +1 -1
  333. package/dist/components/eui-split-panel/outer.js.map +1 -1
  334. package/dist/components/eui-stat/description.js +1 -0
  335. package/dist/components/eui-stat/description.js.map +1 -1
  336. package/dist/components/eui-stat/title.js.map +1 -1
  337. package/dist/components/eui-stat.js +5 -5
  338. package/dist/components/eui-stat.js.map +1 -1
  339. package/dist/components/eui-step-horizontal.js.map +1 -1
  340. package/dist/components/eui-step-number.js +1 -1
  341. package/dist/components/eui-step-number.js.map +1 -1
  342. package/dist/components/eui-step.js.map +1 -1
  343. package/dist/components/eui-steps-horizontal.js.map +1 -1
  344. package/dist/components/eui-steps.js.map +1 -1
  345. package/dist/components/eui-sub-steps.js.map +1 -1
  346. package/dist/components/eui-super-date-picker/date-popover/absolute-tab.js +27 -27
  347. package/dist/components/eui-super-date-picker/date-popover/absolute-tab.js.map +1 -1
  348. package/dist/components/eui-super-date-picker/date-popover/datetime-picker.js +73 -73
  349. package/dist/components/eui-super-date-picker/date-popover/datetime-picker.js.map +1 -1
  350. package/dist/components/eui-super-date-picker/date-popover/eui-date-popover-button.js +6 -6
  351. package/dist/components/eui-super-date-picker/date-popover/eui-date-popover-button.js.map +1 -1
  352. package/dist/components/eui-super-date-picker/date-popover/eui-date-popover-content.js +5 -5
  353. package/dist/components/eui-super-date-picker/date-popover/eui-date-popover-content.js.map +1 -1
  354. package/dist/components/eui-super-date-picker/date-popover/now-tab.js.map +1 -1
  355. package/dist/components/eui-super-date-picker/date-popover/relative-tab.js +27 -27
  356. package/dist/components/eui-super-date-picker/date-popover/relative-tab.js.map +1 -1
  357. package/dist/components/eui-super-date-picker/eui-date-picker-range.js.map +1 -1
  358. package/dist/components/eui-super-date-picker/eui-quick-select-popover/eui-commonly-used-time-ranges.js +1 -1
  359. package/dist/components/eui-super-date-picker/eui-quick-select-popover/eui-commonly-used-time-ranges.js.map +1 -1
  360. package/dist/components/eui-super-date-picker/eui-quick-select-popover/eui-quick-select.js +25 -25
  361. package/dist/components/eui-super-date-picker/eui-quick-select-popover/eui-quick-select.js.map +1 -1
  362. package/dist/components/eui-super-date-picker/eui-quick-select-popover/eui-recently-used.js +1 -1
  363. package/dist/components/eui-super-date-picker/eui-quick-select-popover/eui-recently-used.js.map +1 -1
  364. package/dist/components/eui-super-date-picker/eui-quick-select-popover.js +9 -9
  365. package/dist/components/eui-super-date-picker/eui-quick-select-popover.js.map +1 -1
  366. package/dist/components/eui-super-date-picker/eui-super-update-button.js.map +1 -1
  367. package/dist/components/eui-super-date-picker/utils/date-utils.js.map +1 -1
  368. package/dist/components/eui-super-date-picker/utils/index.js.map +1 -1
  369. package/dist/components/eui-super-date-picker/utils/pretty-duration.js.map +1 -1
  370. package/dist/components/eui-super-date-picker/utils/quick-select.js +1 -1
  371. package/dist/components/eui-super-date-picker/utils/quick-select.js.map +1 -1
  372. package/dist/components/eui-super-date-picker/utils/time-options.js.map +1 -1
  373. package/dist/components/eui-super-date-picker.js +34 -34
  374. package/dist/components/eui-super-date-picker.js.map +1 -1
  375. package/dist/components/eui-switch.js +4 -4
  376. package/dist/components/eui-switch.js.map +1 -1
  377. package/dist/components/eui-tab.js +1 -1
  378. package/dist/components/eui-tab.js.map +1 -1
  379. package/dist/components/eui-tabbed-content.js +31 -31
  380. package/dist/components/eui-tabbed-content.js.map +1 -1
  381. package/dist/components/eui-tabs.js.map +1 -1
  382. package/dist/components/eui-text-align.js.map +1 -1
  383. package/dist/components/eui-text-area.js.map +1 -1
  384. package/dist/components/eui-text-color.js.map +1 -1
  385. package/dist/components/eui-text.js +1 -1
  386. package/dist/components/eui-text.js.map +1 -1
  387. package/dist/components/eui-title.js.map +1 -1
  388. package/dist/components/eui-toast.js.map +1 -1
  389. package/dist/components/eui-tool-tip-popover.js +5 -5
  390. package/dist/components/eui-tool-tip-popover.js.map +1 -1
  391. package/dist/components/eui-tool-tip.js +44 -46
  392. package/dist/components/eui-tool-tip.js.map +1 -1
  393. package/dist/components/text-block.js.map +1 -1
  394. package/dist/helpers/arg-or-default.js.map +1 -1
  395. package/dist/helpers/cast-to.js.map +1 -1
  396. package/dist/helpers/class-names.js.map +1 -1
  397. package/dist/helpers/eui-page-restrict-width.js.map +1 -1
  398. package/dist/helpers/eui-palette.js +1 -1
  399. package/dist/helpers/eui-palette.js.map +1 -1
  400. package/dist/helpers/get-eui-config.js +1 -1
  401. package/dist/helpers/get-eui-config.js.map +1 -1
  402. package/dist/helpers/get-range-tick.js.map +1 -1
  403. package/dist/helpers/hex-to-rgb.js.map +1 -1
  404. package/dist/helpers/inline-styles.js.map +1 -1
  405. package/dist/helpers/is-color-dark.js.map +1 -1
  406. package/dist/helpers/is-item-open.js.map +1 -1
  407. package/dist/helpers/is-valid-hex.js.map +1 -1
  408. package/dist/helpers/is-within-number.js.map +1 -1
  409. package/dist/helpers/merge.js.map +1 -1
  410. package/dist/helpers/nullish.js.map +1 -1
  411. package/dist/helpers/starts-with.js.map +1 -1
  412. package/dist/helpers/to-initials.js.map +1 -1
  413. package/dist/helpers/type-of.js.map +1 -1
  414. package/dist/helpers/use-state.js +1 -1
  415. package/dist/helpers/use-state.js.map +1 -1
  416. package/dist/i18n/util.js.map +1 -1
  417. package/dist/modifiers/mutation-observer.js.map +1 -1
  418. package/dist/modifiers/outside-click-detector.js +4 -0
  419. package/dist/modifiers/outside-click-detector.js.map +1 -1
  420. package/dist/modifiers/resize-observer.js +3 -0
  421. package/dist/modifiers/resize-observer.js.map +1 -1
  422. package/dist/modifiers/screen-reader-only.js.map +1 -1
  423. package/dist/modifiers/simple-style.js.map +1 -1
  424. package/dist/modifiers/use-is-within-breakpoints.js.map +1 -1
  425. package/dist/modifiers/validatable-control.js.map +1 -1
  426. package/dist/services/eui-config.js +1 -1
  427. package/dist/services/eui-config.js.map +1 -1
  428. package/dist/services/eui-i18n.js.map +1 -1
  429. package/dist/services/eui-toaster.js +1 -1
  430. package/dist/services/eui-toaster.js.map +1 -1
  431. package/dist/utils/accesibility/accessible-click-keys.js +1 -1
  432. package/dist/utils/accesibility/accessible-click-keys.js.map +1 -1
  433. package/dist/utils/accesibility/cascading-menu-keys.js +1 -1
  434. package/dist/utils/accesibility/cascading-menu-keys.js.map +1 -1
  435. package/dist/utils/accesibility/combo-box-keys.js +1 -1
  436. package/dist/utils/accesibility/combo-box-keys.js.map +1 -1
  437. package/dist/utils/breakpoint.js.map +1 -1
  438. package/dist/utils/browser/browser.js.map +1 -1
  439. package/dist/utils/code/utils.js.map +1 -1
  440. package/dist/utils/color/color_palette.js.map +1 -1
  441. package/dist/utils/color/eui_palettes.js.map +1 -1
  442. package/dist/utils/copy-to-clipboard.js.map +1 -1
  443. package/dist/utils/css-mappings/eui-accordion.js.map +1 -1
  444. package/dist/utils/css-mappings/eui-avatar.js +1 -1
  445. package/dist/utils/css-mappings/eui-avatar.js.map +1 -1
  446. package/dist/utils/css-mappings/eui-badge-group.js.map +1 -1
  447. package/dist/utils/css-mappings/eui-badge.js.map +1 -1
  448. package/dist/utils/css-mappings/eui-beta-badge.js.map +1 -1
  449. package/dist/utils/css-mappings/eui-bottom-bar.js.map +1 -1
  450. package/dist/utils/css-mappings/eui-button-empty.js.map +1 -1
  451. package/dist/utils/css-mappings/eui-button-group-button.js.map +1 -1
  452. package/dist/utils/css-mappings/eui-button-group.js.map +1 -1
  453. package/dist/utils/css-mappings/eui-button-icon.js.map +1 -1
  454. package/dist/utils/css-mappings/eui-button.js.map +1 -1
  455. package/dist/utils/css-mappings/eui-call-out.js.map +1 -1
  456. package/dist/utils/css-mappings/eui-card-select.js.map +1 -1
  457. package/dist/utils/css-mappings/eui-card.js.map +1 -1
  458. package/dist/utils/css-mappings/eui-code-block.js.map +1 -1
  459. package/dist/utils/css-mappings/eui-collapsible-nav-group.js.map +1 -1
  460. package/dist/utils/css-mappings/eui-comment-event.js.map +1 -1
  461. package/dist/utils/css-mappings/eui-comment-timeline-icon.js.map +1 -1
  462. package/dist/utils/css-mappings/eui-context-menu-item.js.map +1 -1
  463. package/dist/utils/css-mappings/eui-described-form-group.js.map +1 -1
  464. package/dist/utils/css-mappings/eui-description-list.js.map +1 -1
  465. package/dist/utils/css-mappings/eui-empty-prompt.js.map +1 -1
  466. package/dist/utils/css-mappings/eui-file-picker.js.map +1 -1
  467. package/dist/utils/css-mappings/eui-flex-grid.js.map +1 -1
  468. package/dist/utils/css-mappings/eui-flex-group.js.map +1 -1
  469. package/dist/utils/css-mappings/eui-flex-item.js.map +1 -1
  470. package/dist/utils/css-mappings/eui-flyout.js.map +1 -1
  471. package/dist/utils/css-mappings/eui-form-control-layout-clear-button.js.map +1 -1
  472. package/dist/utils/css-mappings/eui-form-row.js.map +1 -1
  473. package/dist/utils/css-mappings/eui-global-toast-list.js.map +1 -1
  474. package/dist/utils/css-mappings/eui-header-links.js.map +1 -1
  475. package/dist/utils/css-mappings/eui-header-section-item.js.map +1 -1
  476. package/dist/utils/css-mappings/eui-header-section.js.map +1 -1
  477. package/dist/utils/css-mappings/eui-header.js.map +1 -1
  478. package/dist/utils/css-mappings/eui-health.js.map +1 -1
  479. package/dist/utils/css-mappings/eui-horizontal-rule.js.map +1 -1
  480. package/dist/utils/css-mappings/eui-icon.js.map +1 -1
  481. package/dist/utils/css-mappings/eui-image.js.map +1 -1
  482. package/dist/utils/css-mappings/eui-link.js.map +1 -1
  483. package/dist/utils/css-mappings/eui-list-group-item.js.map +1 -1
  484. package/dist/utils/css-mappings/eui-list-group.js.map +1 -1
  485. package/dist/utils/css-mappings/eui-loading-spinner.js.map +1 -1
  486. package/dist/utils/css-mappings/eui-modal.js.map +1 -1
  487. package/dist/utils/css-mappings/eui-notification-badge.js.map +1 -1
  488. package/dist/utils/css-mappings/eui-page-body.js.map +1 -1
  489. package/dist/utils/css-mappings/eui-page-content-body.js.map +1 -1
  490. package/dist/utils/css-mappings/eui-page-content.js.map +1 -1
  491. package/dist/utils/css-mappings/eui-page-header.js.map +1 -1
  492. package/dist/utils/css-mappings/eui-page-side-bar.js.map +1 -1
  493. package/dist/utils/css-mappings/eui-page.js.map +1 -1
  494. package/dist/utils/css-mappings/eui-panel.js.map +1 -1
  495. package/dist/utils/css-mappings/eui-popover-footer.js.map +1 -1
  496. package/dist/utils/css-mappings/eui-popover-title.js.map +1 -1
  497. package/dist/utils/css-mappings/eui-popover.js.map +1 -1
  498. package/dist/utils/css-mappings/eui-progress-data.js.map +1 -1
  499. package/dist/utils/css-mappings/eui-progress.js.map +1 -1
  500. package/dist/utils/css-mappings/eui-range-highlight.js.map +1 -1
  501. package/dist/utils/css-mappings/eui-range-input.js.map +1 -1
  502. package/dist/utils/css-mappings/eui-range-levels.js.map +1 -1
  503. package/dist/utils/css-mappings/eui-selectable-list-item.js.map +1 -1
  504. package/dist/utils/css-mappings/eui-spacer.js.map +1 -1
  505. package/dist/utils/css-mappings/eui-stat.js.map +1 -1
  506. package/dist/utils/css-mappings/eui-step-number.js.map +1 -1
  507. package/dist/utils/css-mappings/eui-tabs.js.map +1 -1
  508. package/dist/utils/css-mappings/eui-text-align.js.map +1 -1
  509. package/dist/utils/css-mappings/eui-text-area.js.map +1 -1
  510. package/dist/utils/css-mappings/eui-text-color.js.map +1 -1
  511. package/dist/utils/css-mappings/eui-text.js.map +1 -1
  512. package/dist/utils/css-mappings/eui-title.js.map +1 -1
  513. package/dist/utils/css-mappings/eui-toast.js.map +1 -1
  514. package/dist/utils/css-mappings/eui-tool-tip.js.map +1 -1
  515. package/dist/utils/css-mappings/index.js +140 -140
  516. package/dist/utils/css-mappings/index.js.map +1 -1
  517. package/dist/utils/detect-element-resize.js.map +1 -1
  518. package/dist/utils/keys.js.map +1 -1
  519. package/dist/utils/markdown/markdown-actions.js +1 -0
  520. package/dist/utils/markdown/markdown-actions.js.map +1 -1
  521. package/dist/utils/markdown/markdown-modes.js.map +1 -1
  522. package/dist/utils/markdown/markdown-types.js.map +1 -1
  523. package/dist/utils/markdown/plugins/markdown-add-components/processor.js.map +1 -1
  524. package/dist/utils/markdown/plugins/markdown-checkbox/parser.js.map +1 -1
  525. package/dist/utils/markdown/plugins/markdown-default-plugins/parsing-plugins.js.map +1 -1
  526. package/dist/utils/markdown/plugins/markdown-default-plugins/plugins.js.map +1 -1
  527. package/dist/utils/markdown/plugins/markdown-default-plugins/processing-plugins.js.map +1 -1
  528. package/dist/utils/markdown/plugins/markdown-default-plugins/ui-plugins.js.map +1 -1
  529. package/dist/utils/markdown/plugins/markdown-tooltip/parser.js.map +1 -1
  530. package/dist/utils/markdown/plugins/markdown-tooltip/plugin.js.map +1 -1
  531. package/dist/utils/markdown/plugins/to-dom.js.map +1 -1
  532. package/dist/utils/markdown/remark/remark-prismjs.js.map +1 -1
  533. package/dist/utils/maybe-unwrap-proxy.js.map +1 -1
  534. package/dist/utils/number/number.js.map +1 -1
  535. package/dist/utils/popover/index.js +1 -4
  536. package/dist/utils/popover/index.js.map +1 -1
  537. package/dist/utils/predicate/common_predicates.js.map +1 -1
  538. package/dist/utils/predicate/lodash_predicates.js.map +1 -1
  539. package/dist/utils/timer.js +4 -1
  540. package/dist/utils/timer.js.map +1 -1
  541. package/dist/utils/transition.js.map +1 -1
  542. package/package.json +63 -46
  543. package/declarations/modifiers/open-collapsible-nav.d.ts +0 -9
  544. package/declarations/modifiers/open-collapsible-nav.d.ts.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"eui-page-template.js","sources":["../../src/components/eui-page-template.gts"],"sourcesContent":["import { template } from \"@ember/template-compiler\";\nimport Component from '@glimmer/component';\nimport { tracked } from '@glimmer/tracking';\nimport style from 'ember-style-modifier/modifiers/style';\n// import { tabbable } from 'tabbable';\n// import {\n// anchorPositionMapping,\n// displayMapping\n// } from '../../utils/css-mappings/eui-popover.ts';\n// import { paddingSizeMapping } from '../../utils/css-mappings/eui-panel.ts';\n// import { scheduleOnce, later, cancel } from '@ember/runloop';\n// import { assert } from '@ember/debug';\n// import { htmlSafe } from '@ember/template';\nimport { and, eq, or } from 'ember-truth-helpers';\n// import { action } from '@ember/object';\n// import { tracked } from '@glimmer/tracking';\n// import {\n// getTransitionTimings,\n// getWaitDuration,\n// performOnFrame\n// } from '../../utils/transition';\n// import { findPopoverPosition, getElementZIndex } from '../../utils/popover';\n// import { EuiPopoverPosition } from '../../utils/popover/types';\n// import { cascadingMenuKeys } from '../../utils/accesibility';\nimport argOrDefault, { argOrDefaultDecorator } from '../helpers/arg-or-default.ts';\nimport classNames from '../helpers/class-names.ts';\nimport inlineStyles from '../helpers/inline-styles.ts';\nimport useIsWithinBreakpoints from '../modifiers/use-is-within-breakpoints.ts';\nimport EuiBottomBar from './eui-bottom-bar.gts';\nimport EuiFlexGroup from './eui-flex-group.gts';\nimport EuiFlexItem from './eui-flex-item.gts';\nimport EuiPage from './eui-page.gts';\nimport EuiPageBody from './eui-page-body.gts';\nimport EuiPageContent from './eui-page-content.gts';\nimport EuiPageContentBody from './eui-page-content-body.gts';\nimport EuiPageHeader from './eui-page-header.gts';\nimport EuiPageSideBar from './eui-page-side-bar.gts';\nimport type { EuiBreakpointSize } from '../utils/breakpoint.ts';\nimport type { EuiButtomBarArgs } from './eui-bottom-bar';\nimport type { EuiPageBodySignature } from './eui-page-body';\nimport type { EuiPageContentSignature } from './eui-page-content';\nimport type { EuiPageContentBodySignature } from './eui-page-content-body';\nimport type { EuiPageHeaderSignature } from './eui-page-header';\nimport type { EuiPageSideBarSignature } from './eui-page-side-bar';\nexport const TEMPLATES = [\n 'default',\n 'centeredBody',\n 'centeredContent',\n 'empty'\n] as const;\nconst BREAKPOINTS: EuiBreakpointSize[] = [\n 'm',\n 'l',\n 'xl'\n];\ninterface NormalProps {\n className?: string;\n}\nexport type EuiPageTemplateProps = {\n template?: (typeof TEMPLATES)[number];\n pageBodyProps: NormalProps & EuiPageBodySignature['Args'];\n pageContentProps: NormalProps & EuiPageContentSignature['Args'];\n pageContentBodyProps: NormalProps & EuiPageContentBodySignature['Args'];\n pageHeader: NormalProps & EuiPageHeaderSignature['Args'];\n pageSideBarProps: NormalProps & EuiPageSideBarSignature['Args'];\n /**\n * Adds a bottom bar to the page template\n */ bottomBar?: any;\n /**\n * Adds a bottom bar to the page template\n */ hasBottomBarBlock?: boolean;\n /**\n * Gets passed along to the #EuiBottomBar component if `bottomBar` has contents\n */ bottomBarProps?: EuiButtomBarArgs;\n /* Stretches or restricts the height to 100% of the parent;\n * `true`: scrolls the EuiPageContentBody;\n * `noscroll`: removes all scroll ability;\n * Only works when `template = 'default | empty'` and breakpoint is `m` and above\n */ fullHeight?: boolean;\n /**\n * Minimum height in which to enforce scrolling\n */ minHeight?: number;\n restrictWidth?: boolean | number | string;\n grow?: boolean;\n paddingSize?: EuiPageSideBarSignature['Args']['paddingSize'];\n hasPageSideBarBlock?: boolean;\n hasPageHeaderPageTitleBlock?: boolean;\n hasPageHeaderDefaultBlock?: boolean;\n hasPageHeaderRightSideItemsBlock?: boolean;\n hasPageHeaderDescriptionBlock?: boolean;\n hasPageHeader?: boolean;\n hasPageContent?: boolean;\n hasPageContentBody?: boolean;\n};\nexport interface EuiPageTemplateSignature {\n Element: HTMLElement;\n Args: EuiPageTemplateProps;\n Blocks: {\n default: [];\n pageSideBar: [];\n pageHeaderPageTitle: [];\n pageHeaderDefault: [];\n pageHeaderDescription: [];\n pageHeaderRightSideItems: EuiPageHeaderSignature['Blocks']['rightSideItems'];\n bottomBar: [];\n };\n}\nexport default class EuiPageTemplate extends Component<EuiPageTemplateSignature> {\n // Defaults\n @argOrDefaultDecorator(false)\n fullHeight: boolean;\n @argOrDefaultDecorator('default')\n template: (typeof TEMPLATES)[number];\n @tracked\n isWithinBreakpoints = false;\n setIsWithinBreakpoints = (value1: boolean)=>{\n this.isWithinBreakpoints = value1;\n };\n get minHeight() {\n const minHeight1 = this.args.minHeight ?? 460;\n if (typeof this.args.minHeight === 'number') {\n return `${minHeight1}px`;\n }\n return minHeight1;\n }\n get restrictWidth() {\n const width1 = this.args.restrictWidth ?? true;\n if (typeof this.args.restrictWidth === 'number') {\n return `${width1}px`;\n }\n return width1;\n }\n get classes() {\n return `euiPageTemplate ${this.fullHeightClass}`;\n }\n get fullHeightClass() {\n return this.fullHeight && this.canFullHeight ? 'eui-fullHeight ' : '';\n }\n get yScrollClass() {\n return this.fullHeight && this.canFullHeight ? 'eui-yScroll ' : '';\n }\n get canFullHeight() {\n return (this.isWithinBreakpoints && (this.template === 'default' || this.template === 'empty'));\n }\n get pageBodyPropsClass() {\n return `${this.fullHeightClass} ${this.args.pageBodyProps?.className}`;\n }\n get pageContentPropsClass() {\n return `${this.yScrollClass} ${this.args.pageContentProps?.className}`;\n }\n get pageContentBodyPropsClass() {\n return `${this.fullHeightClass} ${this.args.pageContentBodyProps?.className}`;\n }\n static{\n template(`\n {{#let\n (argOrDefault @grow true)\n (argOrDefault @paddingSize \"l\")\n (and (argOrDefault @hasBottomBarBlock true) (has-block \"bottomBar\"))\n (and (argOrDefault @hasPageSideBarBlock true) (has-block \"pageSideBar\"))\n (and\n (argOrDefault @hasPageHeaderPageTitleBlock true)\n (has-block \"pageHeaderPageTitle\")\n )\n (and\n (argOrDefault @hasPageHeaderDefaultBlock true)\n (has-block \"pageHeaderDefault\")\n )\n (and\n (argOrDefault @hasPageHeaderRightSideItemsBlock true)\n (has-block \"pageHeaderRightSideItems\")\n )\n (and\n (argOrDefault @hasPageHeaderDescriptionBlock true)\n (has-block \"pageHeaderDescription\")\n )\n (modifier\n useIsWithinBreakpoints\n sizes=BREAKPOINTS\n isActive=true\n setIsWithinBreakpointsValue=this.setIsWithinBreakpoints\n )\n as |grow paddingSize hasBottomBarBlock hasPageSideBarBlock hasPageHeaderPageTitleBlock hasPageHeaderDefaultBlock hasPageHeaderRightSideItemsBlock hasPageHeaderDescriptionBlock isWithinBreakpointsModifier|\n }}\n {{#let\n (or\n @pageHeader\n hasPageHeaderPageTitleBlock\n hasPageHeaderDefaultBlock\n hasPageHeaderRightSideItemsBlock\n hasPageHeaderDescriptionBlock\n )\n as |hasPageHeader|\n }}\n {{#if (eq this.template \"centeredBody\")}}\n {{#if hasPageSideBarBlock}}\n <EuiPage\n class={{this.classes}}\n @paddingSize=\"none\"\n @grow={{grow}}\n {{isWithinBreakpointsModifier}}\n {{style (inlineStyles min-height=this.minHeight)}}\n ...attributes\n >\n <EuiPageSideBar\n class={{@pageSideBarProps.className}}\n @sticky={{true}}\n @paddingSize={{paddingSize}}\n >\n {{yield to=\"pageSideBar\"}}\n </EuiPageSideBar>\n <EuiPageBody\n class={{this.pageBodyPropsClass}}\n @paddingSize={{paddingSize}}\n >\n <EuiPageHeader\n {{!@glint-expect-error}}\n @restrictWidth={{this.restrictWidth}}\n @responsive={{@pageHeader.responsive}}\n @iconType={{@pageHeader.iconType}}\n @tabs={{@pageHeader.tabs}}\n @pageTitle={{@pageHeader.pageTitle}}\n @description={{@pageHeader.description}}\n @hasPageTitleBlock={{hasPageHeaderPageTitleBlock}}\n @hasDefaultBlock={{hasPageHeaderDefaultBlock}}\n @hasDescriptionBlock={{hasPageHeaderDescriptionBlock}}\n @hasRightSideItemsBlock={{hasPageHeaderRightSideItemsBlock}}\n >\n <:pageTitle>\n {{yield to=\"pageHeaderPageTitle\"}}\n </:pageTitle>\n <:default>\n {{yield to=\"pageHeaderDefault\"}}\n </:default>\n <:description>\n {{yield to=\"pageHeaderDescription\"}}\n </:description>\n <:rightSideItems as |item|>\n {{yield item to=\"pageHeaderRightSideItems\"}}\n </:rightSideItems>\n </EuiPageHeader>\n\n <EuiPageContent\n class={{this.pageContentPropsClass}}\n @verticalPosition=\"center\"\n @horizontalPosition=\"center\"\n @paddingSize={{paddingSize}}\n >\n <EuiPageContentBody\n class={{this.pageContentBodyPropsClass}}\n {{!@glint-expect-error}}\n @restrictWidth={{this.restrictWidth}}\n >\n {{#if (and this.canFullHeight this.fullHeight)}}\n <EuiFlexGroup\n class=\"eui-fullHeight\"\n @gutterSize=\"none\"\n @direction=\"column\"\n @responsive={{false}}\n >\n <EuiFlexItem\n class={{classNames\n (if (eq this.fullHeight true) \"eui-yScroll\")\n (if\n (eq this.fullHeight \"noscroll\") \"eui-fullHeight\"\n )\n }}\n @grow={{true}}\n >\n {{yield to=\"default\"}}\n </EuiFlexItem>\n </EuiFlexGroup>\n {{else}}\n {{yield to=\"default\"}}\n {{/if}}\n </EuiPageContentBody>\n </EuiPageContent>\n </EuiPageBody>\n </EuiPage>\n {{else}}\n <EuiPage\n class={{this.classes}}\n @paddingSize={{paddingSize}}\n @grow={{grow}}\n {{isWithinBreakpointsModifier}}\n {{style (inlineStyles min-height=this.minHeight)}}\n ...attributes\n >\n <EuiPageBody\n class={{this.pageBodyPropsClass}}\n {{!@glint-expect-error}}\n @restrictWidth={{this.restrictWidth}}\n >\n {{#if hasPageHeader}}\n <EuiPageHeader\n @restrictWidth={{false}}\n @bottomBorder={{@pageHeader.bottomBorder}}\n @paddingSize=\"none\"\n @responsive={{@pageHeader.responsive}}\n @iconType={{@pageHeader.iconType}}\n @tabs={{@pageHeader.tabs}}\n @pageTitle={{@pageHeader.pageTitle}}\n @description={{@pageHeader.description}}\n @hasPageTitleBlock={{hasPageHeaderPageTitleBlock}}\n @hasDefaultBlock={{hasPageHeaderDefaultBlock}}\n @hasDescriptionBlock={{hasPageHeaderDescriptionBlock}}\n @hasRightSideItemsBlock={{hasPageHeaderRightSideItemsBlock}}\n >\n <:pageTitle>\n {{yield to=\"pageHeaderPageTitle\"}}\n </:pageTitle>\n <:default>\n {{yield to=\"pageHeaderDefault\"}}\n </:default>\n <:description>\n {{yield to=\"pageHeaderDescription\"}}\n </:description>\n <:rightSideItems as |item|>\n {{yield item to=\"pageHeaderRightSideItems\"}}\n </:rightSideItems>\n </EuiPageHeader>\n {{/if}}\n <EuiPageBody>\n <EuiPageContent\n class={{this.pageContentPropsClass}}\n @verticalPosition=\"center\"\n @horizontalPosition=\"center\"\n @hasBorder={{@pageContentProps.hasBorder}}\n @hasShadow={{@pageContentProps.hasShadow}}\n @color={{@pageContentProps.color}}\n @borderRadius={{@pageContentProps.borderRadius}}\n @grow={{@pageContentProps.grow}}\n @role={{@pageContentProps.role}}\n @paddingSize={{paddingSize}}\n >\n <EuiPageContentBody\n class={{this.pageContentBodyPropsClass}}\n @paddingSize=\"none\"\n {{!@glint-expect-error}}\n @restrictWidth={{this.restrictWidth}}\n >\n {{#if (and this.canFullHeight this.fullHeight)}}\n <EuiFlexGroup\n class=\"eui-fullHeight\"\n @gutterSize=\"none\"\n @direction=\"column\"\n @responsive={{false}}\n >\n <EuiFlexItem\n class={{classNames\n (if (eq this.fullHeight true) \"eui-yScroll\")\n (if\n (eq this.fullHeight \"noscroll\") \"eui-fullHeight\"\n )\n }}\n @grow={{true}}\n >\n {{yield to=\"default\"}}\n </EuiFlexItem>\n </EuiFlexGroup>\n {{else}}\n {{yield to=\"default\"}}\n {{/if}}\n </EuiPageContentBody>\n </EuiPageContent>\n </EuiPageBody>\n </EuiPageBody>\n </EuiPage>\n {{/if}}\n {{else if (eq this.template \"centeredContent\")}}\n {{#if hasPageSideBarBlock}}\n <EuiPage\n class={{this.classes}}\n @paddingSize=\"none\"\n @grow={{grow}}\n {{isWithinBreakpointsModifier}}\n {{style (inlineStyles min-height=this.minHeight)}}\n ...attributes\n >\n <EuiPageSideBar\n class={{@pageSideBarProps.className}}\n @sticky={{true}}\n @paddingSize={{paddingSize}}\n >\n {{yield to=\"pageSideBar\"}}\n </EuiPageSideBar>\n <EuiPageBody\n @panelled={{true}}\n @paddingSize={{paddingSize}}\n class={{this.pageBodyPropsClass}}\n >\n {{#if hasPageHeader}}\n <EuiPageHeader\n {{!@glint-expect-error}}\n @restrictWidth={{this.restrictWidth}}\n @paddingSize={{@pageHeader.paddingSize}}\n @responsive={{@pageHeader.responsive}}\n @iconType={{@pageHeader.iconType}}\n @tabs={{@pageHeader.tabs}}\n @pageTitle={{@pageHeader.pageTitle}}\n @description={{@pageHeader.description}}\n @hasPageTitleBlock={{hasPageHeaderPageTitleBlock}}\n @hasDefaultBlock={{hasPageHeaderDefaultBlock}}\n @hasDescriptionBlock={{hasPageHeaderDescriptionBlock}}\n @hasRightSideItemsBlock={{hasPageHeaderRightSideItemsBlock}}\n >\n <:pageTitle>\n {{yield to=\"pageHeaderPageTitle\"}}\n </:pageTitle>\n <:default>\n {{yield to=\"pageHeaderDefault\"}}\n </:default>\n <:description>\n {{yield to=\"pageHeaderDescription\"}}\n </:description>\n <:rightSideItems as |item|>\n {{yield item to=\"pageHeaderRightSideItems\"}}\n </:rightSideItems>\n </EuiPageHeader>\n {{/if}}\n <EuiPageContent\n @verticalPosition=\"center\"\n @horizontalPosition=\"center\"\n @hasShadow={{false}}\n @color=\"subdued\"\n @paddingSize={{paddingSize}}\n class={{this.pageContentPropsClass}}\n >\n <EuiPageContentBody\n {{!@glint-expect-error}}\n @restrictWidth={{this.restrictWidth}}\n class={{this.pageContentBodyPropsClass}}\n >\n {{#if (and this.canFullHeight this.fullHeight)}}\n <EuiFlexGroup\n class=\"eui-fullHeight\"\n @gutterSize=\"none\"\n @direction=\"column\"\n @responsive={{false}}\n >\n <EuiFlexItem\n class={{classNames\n (if (eq this.fullHeight true) \"eui-yScroll\")\n (if\n (eq this.fullHeight \"noscroll\") \"eui-fullHeight\"\n )\n }}\n @grow={{true}}\n >\n {{yield to=\"default\"}}\n </EuiFlexItem>\n </EuiFlexGroup>\n {{else}}\n {{yield to=\"default\"}}\n {{/if}}\n </EuiPageContentBody>\n </EuiPageContent>\n </EuiPageBody>\n </EuiPage>\n {{else}}\n <EuiPage\n class={{this.classes}}\n @paddingSize=\"none\"\n @grow={{grow}}\n {{isWithinBreakpointsModifier}}\n {{style (inlineStyles min-height=this.minHeight)}}\n ...attributes\n >\n <EuiPageBody class={{this.pageBodyPropsClass}}>\n {{#if hasPageHeader}}\n <EuiPageHeader\n {{!@glint-expect-error}}\n @restrictWidth={{this.restrictWidth}}\n @paddingSize={{paddingSize}}\n @responsive={{@pageHeader.responsive}}\n @iconType={{@pageHeader.iconType}}\n @tabs={{@pageHeader.tabs}}\n @pageTitle={{@pageHeader.pageTitle}}\n @description={{@pageHeader.description}}\n @hasPageTitleBlock={{hasPageHeaderPageTitleBlock}}\n @hasDefaultBlock={{hasPageHeaderDefaultBlock}}\n @hasDescriptionBlock={{hasPageHeaderDescriptionBlock}}\n @hasRightSideItemsBlock={{hasPageHeaderRightSideItemsBlock}}\n >\n <:pageTitle>\n {{yield to=\"pageHeaderPageTitle\"}}\n </:pageTitle>\n <:default>\n {{yield to=\"pageHeaderDefault\"}}\n </:default>\n <:description>\n {{yield to=\"pageHeaderDescription\"}}\n </:description>\n <:rightSideItems as |item|>\n {{yield item to=\"pageHeaderRightSideItems\"}}\n </:rightSideItems>\n </EuiPageHeader>\n {{/if}}\n {{!template-lint-disable}}\n <EuiPageContent\n role={{null}}\n @borderRadius=\"none\"\n @hasShadow={{false}}\n @paddingSize={{paddingSize}}\n style=\"display: flex\"\n >\n {{!template-lint-enable}}\n <EuiPageContent\n @verticalPosition=\"center\"\n @horizontalPosition=\"center\"\n @hasShadow={{false}}\n @color=\"subdued\"\n @paddingSize={{paddingSize}}\n class={{this.pageContentPropsClass}}\n >\n <EuiPageContentBody\n {{!@glint-expect-error}}\n @restrictWidth={{this.restrictWidth}}\n class={{this.pageContentBodyPropsClass}}\n >\n {{#if (and this.canFullHeight this.fullHeight)}}\n <EuiFlexGroup\n class=\"eui-fullHeight\"\n @gutterSize=\"none\"\n @direction=\"column\"\n @responsive={{false}}\n >\n <EuiFlexItem\n class={{classNames\n (if (eq this.fullHeight true) \"eui-yScroll\")\n (if\n (eq this.fullHeight \"noscroll\") \"eui-fullHeight\"\n )\n }}\n @grow={{true}}\n >\n {{yield to=\"default\"}}\n </EuiFlexItem>\n </EuiFlexGroup>\n {{else}}\n {{yield to=\"default\"}}\n {{/if}}\n </EuiPageContentBody>\n </EuiPageContent>\n\n </EuiPageContent>\n </EuiPageBody>\n </EuiPage>\n {{/if}}\n {{else if (eq this.template \"empty\")}}\n {{#if hasPageSideBarBlock}}\n <EuiPage\n class={{this.classes}}\n @paddingSize=\"none\"\n @grow={{grow}}\n {{isWithinBreakpointsModifier}}\n {{style (inlineStyles min-height=this.minHeight)}}\n ...attributes\n >\n <EuiPageSideBar @sticky={{true}} @paddingSize={{paddingSize}}>\n {{yield to=\"pageSideBar\"}}\n </EuiPageSideBar>\n <EuiPageBody\n @paddingSize={{paddingSize}}\n class={{this.pageBodyPropsClass}}\n >\n {{#if hasPageHeader}}\n <EuiPageHeader\n {{!@glint-expect-error}}\n @restrictWidth={{this.restrictWidth}}\n @paddingSize={{@pageHeader.paddingSize}}\n @responsive={{@pageHeader.responsive}}\n @iconType={{@pageHeader.iconType}}\n @tabs={{@pageHeader.tabs}}\n @pageTitle={{@pageHeader.pageTitle}}\n @description={{@pageHeader.description}}\n @hasPageTitleBlock={{hasPageHeaderPageTitleBlock}}\n @hasDefaultBlock={{hasPageHeaderDefaultBlock}}\n @hasDescriptionBlock={{hasPageHeaderDescriptionBlock}}\n @hasRightSideItemsBlock={{hasPageHeaderRightSideItemsBlock}}\n >\n <:pageTitle>\n {{yield to=\"pageHeaderPageTitle\"}}\n </:pageTitle>\n <:default>\n {{yield to=\"pageHeaderDefault\"}}\n </:default>\n <:description>\n {{yield to=\"pageHeaderDescription\"}}\n </:description>\n <:rightSideItems as |item|>\n {{yield item to=\"pageHeaderRightSideItems\"}}\n </:rightSideItems>\n </EuiPageHeader>\n {{/if}}\n <EuiPageContent\n @hasBorder={{false}}\n @hasShadow={{false}}\n @paddingSize=\"none\"\n @color=\"transparent\"\n @borderRadius=\"none\"\n class={{this.pageContentPropsClass}}\n >\n <EuiPageContentBody\n {{!@glint-expect-error}}\n @restrictWidth={{this.restrictWidth}}\n class={{this.pageContentBodyPropsClass}}\n >\n {{#if (and this.canFullHeight this.fullHeight)}}\n <EuiFlexGroup\n class=\"eui-fullHeight\"\n @gutterSize=\"none\"\n @direction=\"column\"\n @responsive={{false}}\n >\n <EuiFlexItem\n class={{classNames\n (if (eq this.fullHeight true) \"eui-yScroll\")\n (if\n (eq this.fullHeight \"noscroll\") \"eui-fullHeight\"\n )\n }}\n @grow={{true}}\n >\n {{yield to=\"default\"}}\n </EuiFlexItem>\n </EuiFlexGroup>\n {{else}}\n {{yield to=\"default\"}}\n {{/if}}\n </EuiPageContentBody>\n </EuiPageContent>\n </EuiPageBody>\n </EuiPage>\n {{else}}\n <EuiPage\n class={{this.classes}}\n @paddingSize={{paddingSize}}\n @grow={{grow}}\n {{isWithinBreakpointsModifier}}\n {{style (inlineStyles min-height=this.minHeight)}}\n ...attributes\n >\n <EuiPageBody\n {{!@glint-expect-error}}\n @restrictWidth={{this.restrictWidth}}\n class={{this.pageBodyPropsClass}}\n >\n {{#if hasPageHeader}}\n <EuiPageHeader\n @bottomBorder={{@pageHeader.bottomBorder}}\n @restrictWidth={{false}}\n @paddingSize={{@pageHeader.paddingSize}}\n @responsive={{@pageHeader.responsive}}\n @iconType={{@pageHeader.iconType}}\n @tabs={{@pageHeader.tabs}}\n @pageTitle={{@pageHeader.pageTitle}}\n @description={{@pageHeader.description}}\n @hasPageTitleBlock={{hasPageHeaderPageTitleBlock}}\n @hasDefaultBlock={{hasPageHeaderDefaultBlock}}\n @hasDescriptionBlock={{hasPageHeaderDescriptionBlock}}\n @hasRightSideItemsBlock={{hasPageHeaderRightSideItemsBlock}}\n >\n <:pageTitle>\n {{yield to=\"pageHeaderPageTitle\"}}\n </:pageTitle>\n <:default>\n {{yield to=\"pageHeaderDefault\"}}\n </:default>\n <:description>\n {{yield to=\"pageHeaderDescription\"}}\n </:description>\n <:rightSideItems as |item|>\n {{yield item to=\"pageHeaderRightSideItems\"}}\n </:rightSideItems>\n </EuiPageHeader>\n {{/if}}\n <EuiPageContent\n @hasBorder={{false}}\n @hasShadow={{false}}\n @paddingSize=\"none\"\n @color=\"transparent\"\n @borderRadius=\"none\"\n class={{this.pageContentPropsClass}}\n >\n <EuiPageContentBody\n @restrictWidth={{false}}\n class={{this.pageContentBodyPropsClass}}\n >\n {{#if (and this.canFullHeight this.fullHeight)}}\n <EuiFlexGroup\n class=\"eui-fullHeight\"\n @gutterSize=\"none\"\n @direction=\"column\"\n @responsive={{false}}\n >\n <EuiFlexItem\n class={{classNames\n (if (eq this.fullHeight true) \"eui-yScroll\")\n (if\n (eq this.fullHeight \"noscroll\") \"eui-fullHeight\"\n )\n }}\n @grow={{true}}\n >\n {{yield to=\"default\"}}\n </EuiFlexItem>\n </EuiFlexGroup>\n {{else}}\n {{yield to=\"default\"}}\n {{/if}}\n </EuiPageContentBody>\n </EuiPageContent>\n </EuiPageBody>\n </EuiPage>\n {{/if}}\n {{else}}\n {{#if hasPageSideBarBlock}}\n <EuiPage\n class={{this.classes}}\n @paddingSize=\"none\"\n @grow={{grow}}\n {{isWithinBreakpointsModifier}}\n {{style (inlineStyles min-height=this.minHeight)}}\n ...attributes\n >\n <EuiPageSideBar\n class={{@pageSideBarProps.className}}\n @sticky={{true}}\n @paddingSize={{paddingSize}}\n >\n {{yield to=\"pageSideBar\"}}\n </EuiPageSideBar>\n <EuiPageBody\n @panelled={{true}}\n @paddingSize=\"none\"\n class={{this.pageBodyPropsClass}}\n >\n <EuiPageBody\n class={{this.pageBodyPropsClass}}\n @paddingSize={{paddingSize}}\n @tagName=\"div\"\n >\n {{#if hasPageHeader}}\n <EuiPageHeader\n @bottomBorder={{@pageHeader.bottomBorder}}\n {{!@glint-expect-error}}\n @restrictWidth={{this.restrictWidth}}\n @paddingSize={{@pageHeader.paddingSize}}\n @responsive={{@pageHeader.responsive}}\n @iconType={{@pageHeader.iconType}}\n @tabs={{@pageHeader.tabs}}\n @pageTitle={{@pageHeader.pageTitle}}\n @description={{@pageHeader.description}}\n @hasPageTitleBlock={{hasPageHeaderPageTitleBlock}}\n @hasDefaultBlock={{hasPageHeaderDefaultBlock}}\n @hasDescriptionBlock={{hasPageHeaderDescriptionBlock}}\n @hasRightSideItemsBlock={{hasPageHeaderRightSideItemsBlock}}\n >\n <:pageTitle>\n {{yield to=\"pageHeaderPageTitle\"}}\n </:pageTitle>\n <:default>\n {{yield to=\"pageHeaderDefault\"}}\n </:default>\n <:description>\n {{yield to=\"pageHeaderDescription\"}}\n </:description>\n <:rightSideItems as |item|>\n {{yield item to=\"pageHeaderRightSideItems\"}}\n </:rightSideItems>\n </EuiPageHeader>\n {{/if}}\n <EuiPageContent\n @hasShadow={{false}}\n @hasBorder={{false}}\n @color=\"transparent\"\n @borderRadius=\"none\"\n @paddingSize=\"none\"\n class={{this.pageContentPropsClass}}\n >\n <EuiPageContentBody\n {{!@glint-expect-error}}\n @restrictWidth={{this.restrictWidth}}\n class={{this.pageContentBodyPropsClass}}\n >\n {{#if (and this.canFullHeight this.fullHeight)}}\n <EuiFlexGroup\n class=\"eui-fullHeight\"\n @gutterSize=\"none\"\n @direction=\"column\"\n @responsive={{false}}\n >\n <EuiFlexItem\n class={{classNames\n (if (eq this.fullHeight true) \"eui-yScroll\")\n (if\n (eq this.fullHeight \"noscroll\") \"eui-fullHeight\"\n )\n }}\n @grow={{true}}\n >\n {{yield to=\"default\"}}\n </EuiFlexItem>\n </EuiFlexGroup>\n {{else}}\n {{yield to=\"default\"}}\n {{/if}}\n </EuiPageContentBody>\n </EuiPageContent>\n </EuiPageBody>\n {{#if hasBottomBarBlock}}\n <EuiBottomBar\n @paddingSize={{paddingSize}}\n @position={{if\n (and this.canFullHeight this.fullHeight)\n \"static\"\n \"sticky\"\n }}\n >\n <EuiPageContentBody\n @paddingSize=\"none\"\n {{!@glint-expect-error}}\n @restrictWidth={{this.restrictWidth}}\n >\n {{yield to=\"bottomBar\"}}\n </EuiPageContentBody>\n </EuiBottomBar>\n {{/if}}\n </EuiPageBody>\n </EuiPage>\n {{else}}\n <EuiPage\n class={{this.classes}}\n @paddingSize=\"none\"\n @grow={{grow}}\n {{isWithinBreakpointsModifier}}\n {{style (inlineStyles min-height=this.minHeight)}}\n ...attributes\n >\n <EuiPageBody class={{this.pageBodyPropsClass}}>\n {{#if hasPageHeader}}\n <EuiPageHeader\n {{!@glint-expect-error}}\n @restrictWidth={{this.restrictWidth}}\n @bottomBorder={{@pageHeader.bottomBorder}}\n @paddingSize={{paddingSize}}\n @responsive={{@pageHeader.responsive}}\n @iconType={{@pageHeader.iconType}}\n @tabs={{@pageHeader.tabs}}\n @pageTitle={{@pageHeader.pageTitle}}\n @description={{@pageHeader.description}}\n @hasPageTitleBlock={{hasPageHeaderPageTitleBlock}}\n @hasDefaultBlock={{hasPageHeaderDefaultBlock}}\n @hasDescriptionBlock={{hasPageHeaderDescriptionBlock}}\n @hasRightSideItemsBlock={{hasPageHeaderRightSideItemsBlock}}\n >\n <:pageTitle>\n {{yield to=\"pageHeaderPageTitle\"}}\n </:pageTitle>\n <:default>\n {{yield to=\"pageHeaderDefault\"}}\n </:default>\n <:description>\n {{yield to=\"pageHeaderDescription\"}}\n </:description>\n <:rightSideItems as |item|>\n {{yield item to=\"pageHeaderRightSideItems\"}}\n </:rightSideItems>\n </EuiPageHeader>\n {{/if}}\n <EuiPageContent\n @hasBorder={{if hasPageHeader false}}\n @hasShadow={{false}}\n @paddingSize=\"none\"\n @color=\"plain\"\n @borderRadius=\"none\"\n class={{this.pageContentPropsClass}}\n >\n <EuiPageContentBody\n {{!@glint-expect-error}}\n @restrictWidth={{this.restrictWidth}}\n @paddingSize={{paddingSize}}\n class={{this.pageContentBodyPropsClass}}\n >\n {{#if (and this.canFullHeight this.fullHeight)}}\n <EuiFlexGroup\n class=\"eui-fullHeight\"\n @gutterSize=\"none\"\n @direction=\"column\"\n @responsive={{false}}\n >\n <EuiFlexItem\n class={{classNames\n (if (eq this.fullHeight true) \"eui-yScroll\")\n (if\n (eq this.fullHeight \"noscroll\") \"eui-fullHeight\"\n )\n }}\n @grow={{true}}\n >\n {{yield to=\"default\"}}\n </EuiFlexItem>\n </EuiFlexGroup>\n {{else}}\n {{yield to=\"default\"}}\n {{/if}}\n </EuiPageContentBody>\n </EuiPageContent>\n {{#if hasBottomBarBlock}}\n <EuiBottomBar\n @paddingSize={{paddingSize}}\n @position={{if\n (and this.canFullHeight this.fullHeight)\n \"static\"\n \"sticky\"\n }}\n >\n <EuiPageContentBody\n @paddingSize=\"none\"\n {{!@glint-expect-error}}\n @restrictWidth={{this.restrictWidth}}\n >\n {{yield to=\"bottomBar\"}}\n </EuiPageContentBody>\n </EuiBottomBar>\n {{/if}}\n </EuiPageBody>\n </EuiPage>\n {{/if}}\n {{/if}}\n {{/let}}\n {{/let}}\n `, {\n component: this,\n eval () {\n return eval(arguments[0]);\n }\n });\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9iZXRvY2FudHU5My9wcnlzbWV4L2VtYmVyLWV1aS9wYWNrYWdlcy9jb3JlL3NyYy9jb21wb25lbnRzL2V1aS1wYWdlLXRlbXBsYXRlLmd0cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgQ29tcG9uZW50IGZyb20gJ0BnbGltbWVyL2NvbXBvbmVudCc7XG5pbXBvcnQgeyB0cmFja2VkIH0gZnJvbSAnQGdsaW1tZXIvdHJhY2tpbmcnO1xuXG5pbXBvcnQgc3R5bGUgZnJvbSAnZW1iZXItc3R5bGUtbW9kaWZpZXIvbW9kaWZpZXJzL3N0eWxlJztcbi8vIGltcG9ydCB7IHRhYmJhYmxlIH0gZnJvbSAndGFiYmFibGUnO1xuLy8gaW1wb3J0IHtcbi8vICAgYW5jaG9yUG9zaXRpb25NYXBwaW5nLFxuLy8gICBkaXNwbGF5TWFwcGluZ1xuLy8gfSBmcm9tICcuLi8uLi91dGlscy9jc3MtbWFwcGluZ3MvZXVpLXBvcG92ZXIudHMnO1xuLy8gaW1wb3J0IHsgcGFkZGluZ1NpemVNYXBwaW5nIH0gZnJvbSAnLi4vLi4vdXRpbHMvY3NzLW1hcHBpbmdzL2V1aS1wYW5lbC50cyc7XG4vLyBpbXBvcnQgeyBzY2hlZHVsZU9uY2UsIGxhdGVyLCBjYW5jZWwgfSBmcm9tICdAZW1iZXIvcnVubG9vcCc7XG4vLyBpbXBvcnQgeyBhc3NlcnQgfSBmcm9tICdAZW1iZXIvZGVidWcnO1xuLy8gaW1wb3J0IHsgaHRtbFNhZmUgfSBmcm9tICdAZW1iZXIvdGVtcGxhdGUnO1xuaW1wb3J0IHsgYW5kLCBlcSxvciB9IGZyb20gJ2VtYmVyLXRydXRoLWhlbHBlcnMnO1xuXG4vLyBpbXBvcnQgeyBhY3Rpb24gfSBmcm9tICdAZW1iZXIvb2JqZWN0Jztcbi8vIGltcG9ydCB7IHRyYWNrZWQgfSBmcm9tICdAZ2xpbW1lci90cmFja2luZyc7XG4vLyBpbXBvcnQge1xuLy8gICBnZXRUcmFuc2l0aW9uVGltaW5ncyxcbi8vICAgZ2V0V2FpdER1cmF0aW9uLFxuLy8gICBwZXJmb3JtT25GcmFtZVxuLy8gfSBmcm9tICcuLi8uLi91dGlscy90cmFuc2l0aW9uJztcbi8vIGltcG9ydCB7IGZpbmRQb3BvdmVyUG9zaXRpb24sIGdldEVsZW1lbnRaSW5kZXggfSBmcm9tICcuLi8uLi91dGlscy9wb3BvdmVyJztcbi8vIGltcG9ydCB7IEV1aVBvcG92ZXJQb3NpdGlvbiB9IGZyb20gJy4uLy4uL3V0aWxzL3BvcG92ZXIvdHlwZXMnO1xuLy8gaW1wb3J0IHsgY2FzY2FkaW5nTWVudUtleXMgfSBmcm9tICcuLi8uLi91dGlscy9hY2Nlc2liaWxpdHknO1xuaW1wb3J0IGFyZ09yRGVmYXVsdCwgeyBhcmdPckRlZmF1bHREZWNvcmF0b3IgfSBmcm9tICcuLi9oZWxwZXJzL2FyZy1vci1kZWZhdWx0LnRzJztcbmltcG9ydCBjbGFzc05hbWVzIGZyb20gJy4uL2hlbHBlcnMvY2xhc3MtbmFtZXMudHMnO1xuaW1wb3J0IGlubGluZVN0eWxlcyBmcm9tICcuLi9oZWxwZXJzL2lubGluZS1zdHlsZXMudHMnO1xuaW1wb3J0IHVzZUlzV2l0aGluQnJlYWtwb2ludHMgZnJvbSAnLi4vbW9kaWZpZXJzL3VzZS1pcy13aXRoaW4tYnJlYWtwb2ludHMudHMnO1xuaW1wb3J0IEV1aUJvdHRvbUJhciBmcm9tICcuL2V1aS1ib3R0b20tYmFyLmd0cyc7XG5pbXBvcnQgRXVpRmxleEdyb3VwIGZyb20gJy4vZXVpLWZsZXgtZ3JvdXAuZ3RzJztcbmltcG9ydCBFdWlGbGV4SXRlbSBmcm9tICcuL2V1aS1mbGV4LWl0ZW0uZ3RzJztcbmltcG9ydCBFdWlQYWdlIGZyb20gJy4vZXVpLXBhZ2UuZ3RzJztcbmltcG9ydCBFdWlQYWdlQm9keSBmcm9tICcuL2V1aS1wYWdlLWJvZHkuZ3RzJztcbmltcG9ydCBFdWlQYWdlQ29udGVudCBmcm9tICcuL2V1aS1wYWdlLWNvbnRlbnQuZ3RzJztcbmltcG9ydCBFdWlQYWdlQ29udGVudEJvZHkgZnJvbSAnLi9ldWktcGFnZS1jb250ZW50LWJvZHkuZ3RzJztcbmltcG9ydCBFdWlQYWdlSGVhZGVyIGZyb20gJy4vZXVpLXBhZ2UtaGVhZGVyLmd0cyc7XG5pbXBvcnQgRXVpUGFnZVNpZGVCYXIgZnJvbSAnLi9ldWktcGFnZS1zaWRlLWJhci5ndHMnO1xuXG5pbXBvcnQgdHlwZSB7IEV1aUJyZWFrcG9pbnRTaXplIH0gZnJvbSAnLi4vdXRpbHMvYnJlYWtwb2ludC50cyc7XG5pbXBvcnQgdHlwZSB7IEV1aUJ1dHRvbUJhckFyZ3MgfSBmcm9tICcuL2V1aS1ib3R0b20tYmFyJztcbmltcG9ydCB0eXBlIHsgRXVpUGFnZUJvZHlTaWduYXR1cmUgfSBmcm9tICcuL2V1aS1wYWdlLWJvZHknO1xuaW1wb3J0IHR5cGUgeyBFdWlQYWdlQ29udGVudFNpZ25hdHVyZSB9IGZyb20gJy4vZXVpLXBhZ2UtY29udGVudCc7XG5pbXBvcnQgdHlwZSB7IEV1aVBhZ2VDb250ZW50Qm9keVNpZ25hdHVyZSB9IGZyb20gJy4vZXVpLXBhZ2UtY29udGVudC1ib2R5JztcbmltcG9ydCB0eXBlIHsgRXVpUGFnZUhlYWRlclNpZ25hdHVyZSB9IGZyb20gJy4vZXVpLXBhZ2UtaGVhZGVyJztcbmltcG9ydCB0eXBlIHsgRXVpUGFnZVNpZGVCYXJTaWduYXR1cmUgfSBmcm9tICcuL2V1aS1wYWdlLXNpZGUtYmFyJztcblxuZXhwb3J0IGNvbnN0IFRFTVBMQVRFUyA9IFtcbiAgJ2RlZmF1bHQnLFxuICAnY2VudGVyZWRCb2R5JyxcbiAgJ2NlbnRlcmVkQ29udGVudCcsXG4gICdlbXB0eSdcbl0gYXMgY29uc3Q7XG5cbmNvbnN0IEJSRUFLUE9JTlRTOiBFdWlCcmVha3BvaW50U2l6ZVtdID0gWydtJywgJ2wnLCAneGwnXTtcblxuaW50ZXJmYWNlIE5vcm1hbFByb3BzIHtcbiAgY2xhc3NOYW1lPzogc3RyaW5nO1xufVxuXG5leHBvcnQgdHlwZSBFdWlQYWdlVGVtcGxhdGVQcm9wcyA9IHtcbiAgdGVtcGxhdGU_OiAodHlwZW9mIFRFTVBMQVRFUylbbnVtYmVyXTtcblxuICBwYWdlQm9keVByb3BzOiBOb3JtYWxQcm9wcyAmIEV1aVBhZ2VCb2R5U2lnbmF0dXJlWydBcmdzJ107XG4gIHBhZ2VDb250ZW50UHJvcHM6IE5vcm1hbFByb3BzICYgRXVpUGFnZUNvbnRlbnRTaWduYXR1cmVbJ0FyZ3MnXTtcbiAgcGFnZUNvbnRlbnRCb2R5UHJvcHM6IE5vcm1hbFByb3BzICYgRXVpUGFnZUNvbnRlbnRCb2R5U2lnbmF0dXJlWydBcmdzJ107XG5cbiAgcGFnZUhlYWRlcjogTm9ybWFsUHJvcHMgJiBFdWlQYWdlSGVhZGVyU2lnbmF0dXJlWydBcmdzJ107XG5cbiAgcGFnZVNpZGVCYXJQcm9wczogTm9ybWFsUHJvcHMgJiBFdWlQYWdlU2lkZUJhclNpZ25hdHVyZVsnQXJncyddO1xuXG4gIC8qKlxuICAgKiBBZGRzIGEgYm90dG9tIGJhciB0byB0aGUgcGFnZSB0ZW1wbGF0ZVxuICAgKi9cbiAgYm90dG9tQmFyPzogYW55O1xuXG4gIC8qKlxuICAgKiBBZGRzIGEgYm90dG9tIGJhciB0byB0aGUgcGFnZSB0ZW1wbGF0ZVxuICAgKi9cbiAgaGFzQm90dG9tQmFyQmxvY2s_OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBHZXRzIHBhc3NlZCBhbG9uZyB0byB0aGUgI0V1aUJvdHRvbUJhciBjb21wb25lbnQgaWYgYGJvdHRvbUJhcmAgaGFzIGNvbnRlbnRzXG4gICAqL1xuICBib3R0b21CYXJQcm9wcz86IEV1aUJ1dHRvbUJhckFyZ3M7XG4gIC8qIFN0cmV0Y2hlcyBvciByZXN0cmljdHMgdGhlIGhlaWdodCB0byAxMDAlIG9mIHRoZSBwYXJlbnQ7XG4gICAqIGB0cnVlYDogc2Nyb2xscyB0aGUgRXVpUGFnZUNvbnRlbnRCb2R5O1xuICAgKiBgbm9zY3JvbGxgOiByZW1vdmVzIGFsbCBzY3JvbGwgYWJpbGl0eTtcbiAgICogT25seSB3b3JrcyB3aGVuIGB0ZW1wbGF0ZSA9ICdkZWZhdWx0IHwgZW1wdHknYCBhbmQgYnJlYWtwb2ludCBpcyBgbWAgYW5kIGFib3ZlXG4gICAqL1xuICBmdWxsSGVpZ2h0PzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIE1pbmltdW0gaGVpZ2h0IGluIHdoaWNoIHRvIGVuZm9yY2Ugc2Nyb2xsaW5nXG4gICAqL1xuICBtaW5IZWlnaHQ_OiBudW1iZXI7XG5cbiAgcmVzdHJpY3RXaWR0aD86IGJvb2xlYW4gfCBudW1iZXIgfCBzdHJpbmc7XG5cbiAgZ3Jvdz86IGJvb2xlYW47XG4gIHBhZGRpbmdTaXplPzogRXVpUGFnZVNpZGVCYXJTaWduYXR1cmVbJ0FyZ3MnXVsncGFkZGluZ1NpemUnXTtcbiAgaGFzUGFnZVNpZGVCYXJCbG9jaz86IGJvb2xlYW47XG4gIGhhc1BhZ2VIZWFkZXJQYWdlVGl0bGVCbG9jaz86IGJvb2xlYW47XG4gIGhhc1BhZ2VIZWFkZXJEZWZhdWx0QmxvY2s_OiBib29sZWFuO1xuICBoYXNQYWdlSGVhZGVyUmlnaHRTaWRlSXRlbXNCbG9jaz86IGJvb2xlYW47XG4gIGhhc1BhZ2VIZWFkZXJEZXNjcmlwdGlvbkJsb2NrPzogYm9vbGVhbjtcbiAgaGFzUGFnZUhlYWRlcj86IGJvb2xlYW47XG4gIGhhc1BhZ2VDb250ZW50PzogYm9vbGVhbjtcbiAgaGFzUGFnZUNvbnRlbnRCb2R5PzogYm9vbGVhbjtcbn07XG5cbmV4cG9ydCBpbnRlcmZhY2UgRXVpUGFnZVRlbXBsYXRlU2lnbmF0dXJlIHtcbiAgRWxlbWVudDogSFRNTEVsZW1lbnQ7XG4gIEFyZ3M6IEV1aVBhZ2VUZW1wbGF0ZVByb3BzO1xuICBCbG9ja3M6IHtcbiAgICBkZWZhdWx0OiBbXTtcbiAgICBwYWdlU2lkZUJhcjogW107XG4gICAgcGFnZUhlYWRlclBhZ2VUaXRsZTogW107XG4gICAgcGFnZUhlYWRlckRlZmF1bHQ6IFtdO1xuICAgIHBhZ2VIZWFkZXJEZXNjcmlwdGlvbjogW107XG4gICAgcGFnZUhlYWRlclJpZ2h0U2lkZUl0ZW1zOiBFdWlQYWdlSGVhZGVyU2lnbmF0dXJlWydCbG9ja3MnXVsncmlnaHRTaWRlSXRlbXMnXTtcbiAgICBib3R0b21CYXI6IFtdO1xuICB9O1xufVxuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBFdWlQYWdlVGVtcGxhdGUgZXh0ZW5kcyBDb21wb25lbnQ8RXVpUGFnZVRlbXBsYXRlU2lnbmF0dXJlPiB7XG4gIC8vIERlZmF1bHRzXG4gIEBhcmdPckRlZmF1bHREZWNvcmF0b3IoZmFsc2UpIGZ1bGxIZWlnaHQhOiBib29sZWFuO1xuICBAYXJnT3JEZWZhdWx0RGVjb3JhdG9yKCdkZWZhdWx0JykgdGVtcGxhdGUhOiAodHlwZW9mIFRFTVBMQVRFUylbbnVtYmVyXTtcblxuICBAdHJhY2tlZCBpc1dpdGhpbkJyZWFrcG9pbnRzID0gZmFsc2U7XG5cbiAgc2V0SXNXaXRoaW5CcmVha3BvaW50cyA9ICh2YWx1ZTogYm9vbGVhbikgPT4ge1xuICAgIHRoaXMuaXNXaXRoaW5CcmVha3BvaW50cyA9IHZhbHVlO1xuICB9O1xuXG4gIGdldCBtaW5IZWlnaHQoKSB7XG4gICAgY29uc3QgbWluSGVpZ2h0ID0gdGhpcy5hcmdzLm1pbkhlaWdodCA_PyA0NjA7XG5cbiAgICBpZiAodHlwZW9mIHRoaXMuYXJncy5taW5IZWlnaHQgPT09ICdudW1iZXInKSB7XG4gICAgICByZXR1cm4gYCR7bWluSGVpZ2h0fXB4YDtcbiAgICB9XG5cbiAgICByZXR1cm4gbWluSGVpZ2h0O1xuICB9XG5cbiAgZ2V0IHJlc3RyaWN0V2lkdGgoKSB7XG4gICAgY29uc3Qgd2lkdGggPSB0aGlzLmFyZ3MucmVzdHJpY3RXaWR0aCA_PyB0cnVlO1xuXG4gICAgaWYgKHR5cGVvZiB0aGlzLmFyZ3MucmVzdHJpY3RXaWR0aCA9PT0gJ251bWJlcicpIHtcbiAgICAgIHJldHVybiBgJHt3aWR0aH1weGA7XG4gICAgfVxuXG4gICAgcmV0dXJuIHdpZHRoO1xuICB9XG5cbiAgZ2V0IGNsYXNzZXMoKSB7XG4gICAgcmV0dXJuIGBldWlQYWdlVGVtcGxhdGUgJHt0aGlzLmZ1bGxIZWlnaHRDbGFzc31gO1xuICB9XG5cbiAgZ2V0IGZ1bGxIZWlnaHRDbGFzcygpIHtcbiAgICByZXR1cm4gdGhpcy5mdWxsSGVpZ2h0ICYmIHRoaXMuY2FuRnVsbEhlaWdodCA_ICdldWktZnVsbEhlaWdodCAnIDogJyc7XG4gIH1cblxuICBnZXQgeVNjcm9sbENsYXNzKCkge1xuICAgIHJldHVybiB0aGlzLmZ1bGxIZWlnaHQgJiYgdGhpcy5jYW5GdWxsSGVpZ2h0ID8gJ2V1aS15U2Nyb2xsICcgOiAnJztcbiAgfVxuXG4gIGdldCBjYW5GdWxsSGVpZ2h0KCkge1xuICAgIHJldHVybiAoXG4gICAgICB0aGlzLmlzV2l0aGluQnJlYWtwb2ludHMgJiZcbiAgICAgICh0aGlzLnRlbXBsYXRlID09PSAnZGVmYXVsdCcgfHwgdGhpcy50ZW1wbGF0ZSA9PT0gJ2VtcHR5JylcbiAgICApO1xuICB9XG5cbiAgZ2V0IHBhZ2VCb2R5UHJvcHNDbGFzcygpIHtcbiAgICByZXR1cm4gYCR7dGhpcy5mdWxsSGVpZ2h0Q2xhc3N9ICR7dGhpcy5hcmdzLnBhZ2VCb2R5UHJvcHM_LmNsYXNzTmFtZX1gO1xuICB9XG5cbiAgZ2V0IHBhZ2VDb250ZW50UHJvcHNDbGFzcygpIHtcbiAgICByZXR1cm4gYCR7dGhpcy55U2Nyb2xsQ2xhc3N9ICR7dGhpcy5hcmdzLnBhZ2VDb250ZW50UHJvcHM_LmNsYXNzTmFtZX1gO1xuICB9XG5cbiAgZ2V0IHBhZ2VDb250ZW50Qm9keVByb3BzQ2xhc3MoKSB7XG4gICAgcmV0dXJuIGAke3RoaXMuZnVsbEhlaWdodENsYXNzfSAke3RoaXMuYXJncy5wYWdlQ29udGVudEJvZHlQcm9wcz8uY2xhc3NOYW1lfWA7XG4gIH1cblxuICA8dGVtcGxhdGU-XG4gICAge3sjbGV0XG4gICAgICAoYXJnT3JEZWZhdWx0IEBncm93IHRydWUpXG4gICAgICAoYXJnT3JEZWZhdWx0IEBwYWRkaW5nU2l6ZSBcImxcIilcbiAgICAgIChhbmQgKGFyZ09yRGVmYXVsdCBAaGFzQm90dG9tQmFyQmxvY2sgdHJ1ZSkgKGhhcy1ibG9jayBcImJvdHRvbUJhclwiKSlcbiAgICAgIChhbmQgKGFyZ09yRGVmYXVsdCBAaGFzUGFnZVNpZGVCYXJCbG9jayB0cnVlKSAoaGFzLWJsb2NrIFwicGFnZVNpZGVCYXJcIikpXG4gICAgICAoYW5kXG4gICAgICAgIChhcmdPckRlZmF1bHQgQGhhc1BhZ2VIZWFkZXJQYWdlVGl0bGVCbG9jayB0cnVlKVxuICAgICAgICAoaGFzLWJsb2NrIFwicGFnZUhlYWRlclBhZ2VUaXRsZVwiKVxuICAgICAgKVxuICAgICAgKGFuZFxuICAgICAgICAoYXJnT3JEZWZhdWx0IEBoYXNQYWdlSGVhZGVyRGVmYXVsdEJsb2NrIHRydWUpXG4gICAgICAgIChoYXMtYmxvY2sgXCJwYWdlSGVhZGVyRGVmYXVsdFwiKVxuICAgICAgKVxuICAgICAgKGFuZFxuICAgICAgICAoYXJnT3JEZWZhdWx0IEBoYXNQYWdlSGVhZGVyUmlnaHRTaWRlSXRlbXNCbG9jayB0cnVlKVxuICAgICAgICAoaGFzLWJsb2NrIFwicGFnZUhlYWRlclJpZ2h0U2lkZUl0ZW1zXCIpXG4gICAgICApXG4gICAgICAoYW5kXG4gICAgICAgIChhcmdPckRlZmF1bHQgQGhhc1BhZ2VIZWFkZXJEZXNjcmlwdGlvbkJsb2NrIHRydWUpXG4gICAgICAgIChoYXMtYmxvY2sgXCJwYWdlSGVhZGVyRGVzY3JpcHRpb25cIilcbiAgICAgIClcbiAgICAgIChtb2RpZmllclxuICAgICAgICB1c2VJc1dpdGhpbkJyZWFrcG9pbnRzXG4gICAgICAgIHNpemVzPUJSRUFLUE9JTlRTXG4gICAgICAgIGlzQWN0aXZlPXRydWVcbiAgICAgICAgc2V0SXNXaXRoaW5CcmVha3BvaW50c1ZhbHVlPXRoaXMuc2V0SXNXaXRoaW5CcmVha3BvaW50c1xuICAgICAgKVxuICAgICAgYXMgfGdyb3cgcGFkZGluZ1NpemUgaGFzQm90dG9tQmFyQmxvY2sgaGFzUGFnZVNpZGVCYXJCbG9jayBoYXNQYWdlSGVhZGVyUGFnZVRpdGxlQmxvY2sgaGFzUGFnZUhlYWRlckRlZmF1bHRCbG9jayBoYXNQYWdlSGVhZGVyUmlnaHRTaWRlSXRlbXNCbG9jayBoYXNQYWdlSGVhZGVyRGVzY3JpcHRpb25CbG9jayBpc1dpdGhpbkJyZWFrcG9pbnRzTW9kaWZpZXJ8XG4gICAgfX1cbiAgICAgIHt7I2xldFxuICAgICAgICAob3JcbiAgICAgICAgICBAcGFnZUhlYWRlclxuICAgICAgICAgIGhhc1BhZ2VIZWFkZXJQYWdlVGl0bGVCbG9ja1xuICAgICAgICAgIGhhc1BhZ2VIZWFkZXJEZWZhdWx0QmxvY2tcbiAgICAgICAgICBoYXNQYWdlSGVhZGVyUmlnaHRTaWRlSXRlbXNCbG9ja1xuICAgICAgICAgIGhhc1BhZ2VIZWFkZXJEZXNjcmlwdGlvbkJsb2NrXG4gICAgICAgIClcbiAgICAgICAgYXMgfGhhc1BhZ2VIZWFkZXJ8XG4gICAgICB9fVxuICAgICAgICB7eyNpZiAoZXEgdGhpcy50ZW1wbGF0ZSBcImNlbnRlcmVkQm9keVwiKX19XG4gICAgICAgICAge3sjaWYgaGFzUGFnZVNpZGVCYXJCbG9ja319XG4gICAgICAgICAgICA8RXVpUGFnZVxuICAgICAgICAgICAgICBjbGFzcz17e3RoaXMuY2xhc3Nlc319XG4gICAgICAgICAgICAgIEBwYWRkaW5nU2l6ZT1cIm5vbmVcIlxuICAgICAgICAgICAgICBAZ3Jvdz17e2dyb3d9fVxuICAgICAgICAgICAgICB7e2lzV2l0aGluQnJlYWtwb2ludHNNb2RpZmllcn19XG4gICAgICAgICAgICAgIHt7c3R5bGUgKGlubGluZVN0eWxlcyBtaW4taGVpZ2h0PXRoaXMubWluSGVpZ2h0KX19XG4gICAgICAgICAgICAgIC4uLmF0dHJpYnV0ZXNcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPEV1aVBhZ2VTaWRlQmFyXG4gICAgICAgICAgICAgICAgY2xhc3M9e3tAcGFnZVNpZGVCYXJQcm9wcy5jbGFzc05hbWV9fVxuICAgICAgICAgICAgICAgIEBzdGlja3k9e3t0cnVlfX1cbiAgICAgICAgICAgICAgICBAcGFkZGluZ1NpemU9e3twYWRkaW5nU2l6ZX19XG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7e3lpZWxkIHRvPVwicGFnZVNpZGVCYXJcIn19XG4gICAgICAgICAgICAgIDwvRXVpUGFnZVNpZGVCYXI-XG4gICAgICAgICAgICAgIDxFdWlQYWdlQm9keVxuICAgICAgICAgICAgICAgIGNsYXNzPXt7dGhpcy5wYWdlQm9keVByb3BzQ2xhc3N9fVxuICAgICAgICAgICAgICAgIEBwYWRkaW5nU2l6ZT17e3BhZGRpbmdTaXplfX1cbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxFdWlQYWdlSGVhZGVyXG4gICAgICAgICAgICAgICAgICB7eyFAZ2xpbnQtZXhwZWN0LWVycm9yfX1cbiAgICAgICAgICAgICAgICAgIEByZXN0cmljdFdpZHRoPXt7dGhpcy5yZXN0cmljdFdpZHRofX1cbiAgICAgICAgICAgICAgICAgIEByZXNwb25zaXZlPXt7QHBhZ2VIZWFkZXIucmVzcG9uc2l2ZX19XG4gICAgICAgICAgICAgICAgICBAaWNvblR5cGU9e3tAcGFnZUhlYWRlci5pY29uVHlwZX19XG4gICAgICAgICAgICAgICAgICBAdGFicz17e0BwYWdlSGVhZGVyLnRhYnN9fVxuICAgICAgICAgICAgICAgICAgQHBhZ2VUaXRsZT17e0BwYWdlSGVhZGVyLnBhZ2VUaXRsZX19XG4gICAgICAgICAgICAgICAgICBAZGVzY3JpcHRpb249e3tAcGFnZUhlYWRlci5kZXNjcmlwdGlvbn19XG4gICAgICAgICAgICAgICAgICBAaGFzUGFnZVRpdGxlQmxvY2s9e3toYXNQYWdlSGVhZGVyUGFnZVRpdGxlQmxvY2t9fVxuICAgICAgICAgICAgICAgICAgQGhhc0RlZmF1bHRCbG9jaz17e2hhc1BhZ2VIZWFkZXJEZWZhdWx0QmxvY2t9fVxuICAgICAgICAgICAgICAgICAgQGhhc0Rlc2NyaXB0aW9uQmxvY2s9e3toYXNQYWdlSGVhZGVyRGVzY3JpcHRpb25CbG9ja319XG4gICAgICAgICAgICAgICAgICBAaGFzUmlnaHRTaWRlSXRlbXNCbG9jaz17e2hhc1BhZ2VIZWFkZXJSaWdodFNpZGVJdGVtc0Jsb2NrfX1cbiAgICAgICAgICAgICAgICA-XG4gICAgICAgICAgICAgICAgICA8OnBhZ2VUaXRsZT5cbiAgICAgICAgICAgICAgICAgICAge3t5aWVsZCB0bz1cInBhZ2VIZWFkZXJQYWdlVGl0bGVcIn19XG4gICAgICAgICAgICAgICAgICA8LzpwYWdlVGl0bGU-XG4gICAgICAgICAgICAgICAgICA8OmRlZmF1bHQ-XG4gICAgICAgICAgICAgICAgICAgIHt7eWllbGQgdG89XCJwYWdlSGVhZGVyRGVmYXVsdFwifX1cbiAgICAgICAgICAgICAgICAgIDwvOmRlZmF1bHQ-XG4gICAgICAgICAgICAgICAgICA8OmRlc2NyaXB0aW9uPlxuICAgICAgICAgICAgICAgICAgICB7e3lpZWxkIHRvPVwicGFnZUhlYWRlckRlc2NyaXB0aW9uXCJ9fVxuICAgICAgICAgICAgICAgICAgPC86ZGVzY3JpcHRpb24-XG4gICAgICAgICAgICAgICAgICA8OnJpZ2h0U2lkZUl0ZW1zIGFzIHxpdGVtfD5cbiAgICAgICAgICAgICAgICAgICAge3t5aWVsZCBpdGVtIHRvPVwicGFnZUhlYWRlclJpZ2h0U2lkZUl0ZW1zXCJ9fVxuICAgICAgICAgICAgICAgICAgPC86cmlnaHRTaWRlSXRlbXM-XG4gICAgICAgICAgICAgICAgPC9FdWlQYWdlSGVhZGVyPlxuXG4gICAgICAgICAgICAgICAgPEV1aVBhZ2VDb250ZW50XG4gICAgICAgICAgICAgICAgICBjbGFzcz17e3RoaXMucGFnZUNvbnRlbnRQcm9wc0NsYXNzfX1cbiAgICAgICAgICAgICAgICAgIEB2ZXJ0aWNhbFBvc2l0aW9uPVwiY2VudGVyXCJcbiAgICAgICAgICAgICAgICAgIEBob3Jpem9udGFsUG9zaXRpb249XCJjZW50ZXJcIlxuICAgICAgICAgICAgICAgICAgQHBhZGRpbmdTaXplPXt7cGFkZGluZ1NpemV9fVxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIDxFdWlQYWdlQ29udGVudEJvZHlcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9e3t0aGlzLnBhZ2VDb250ZW50Qm9keVByb3BzQ2xhc3N9fVxuICAgICAgICAgICAgICAgICAgICB7eyFAZ2xpbnQtZXhwZWN0LWVycm9yfX1cbiAgICAgICAgICAgICAgICAgICAgQHJlc3RyaWN0V2lkdGg9e3t0aGlzLnJlc3RyaWN0V2lkdGh9fVxuICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICB7eyNpZiAoYW5kIHRoaXMuY2FuRnVsbEhlaWdodCB0aGlzLmZ1bGxIZWlnaHQpfX1cbiAgICAgICAgICAgICAgICAgICAgICA8RXVpRmxleEdyb3VwXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImV1aS1mdWxsSGVpZ2h0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIEBndXR0ZXJTaXplPVwibm9uZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBAZGlyZWN0aW9uPVwiY29sdW1uXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIEByZXNwb25zaXZlPXt7ZmFsc2V9fVxuICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxFdWlGbGV4SXRlbVxuICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz17e2NsYXNzTmFtZXNcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoaWYgKGVxIHRoaXMuZnVsbEhlaWdodCB0cnVlKSBcImV1aS15U2Nyb2xsXCIpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKGlmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZXEgdGhpcy5mdWxsSGVpZ2h0IFwibm9zY3JvbGxcIikgXCJldWktZnVsbEhlaWdodFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICBAZ3Jvdz17e3RydWV9fVxuICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICB7e3lpZWxkIHRvPVwiZGVmYXVsdFwifX1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvRXVpRmxleEl0ZW0-XG4gICAgICAgICAgICAgICAgICAgICAgPC9FdWlGbGV4R3JvdXA-XG4gICAgICAgICAgICAgICAgICAgIHt7ZWxzZX19XG4gICAgICAgICAgICAgICAgICAgICAge3t5aWVsZCB0bz1cImRlZmF1bHRcIn19XG4gICAgICAgICAgICAgICAgICAgIHt7L2lmfX1cbiAgICAgICAgICAgICAgICAgIDwvRXVpUGFnZUNvbnRlbnRCb2R5PlxuICAgICAgICAgICAgICAgIDwvRXVpUGFnZUNvbnRlbnQ-XG4gICAgICAgICAgICAgIDwvRXVpUGFnZUJvZHk-XG4gICAgICAgICAgICA8L0V1aVBhZ2U-XG4gICAgICAgICAge3tlbHNlfX1cbiAgICAgICAgICAgIDxFdWlQYWdlXG4gICAgICAgICAgICAgIGNsYXNzPXt7dGhpcy5jbGFzc2VzfX1cbiAgICAgICAgICAgICAgQHBhZGRpbmdTaXplPXt7cGFkZGluZ1NpemV9fVxuICAgICAgICAgICAgICBAZ3Jvdz17e2dyb3d9fVxuICAgICAgICAgICAgICB7e2lzV2l0aGluQnJlYWtwb2ludHNNb2RpZmllcn19XG4gICAgICAgICAgICAgIHt7c3R5bGUgKGlubGluZVN0eWxlcyBtaW4taGVpZ2h0PXRoaXMubWluSGVpZ2h0KX19XG4gICAgICAgICAgICAgIC4uLmF0dHJpYnV0ZXNcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPEV1aVBhZ2VCb2R5XG4gICAgICAgICAgICAgICAgY2xhc3M9e3t0aGlzLnBhZ2VCb2R5UHJvcHNDbGFzc319XG4gICAgICAgICAgICAgICAge3shQGdsaW50LWV4cGVjdC1lcnJvcn19XG4gICAgICAgICAgICAgICAgQHJlc3RyaWN0V2lkdGg9e3t0aGlzLnJlc3RyaWN0V2lkdGh9fVxuICAgICAgICAgICAgICA-XG4gICAgICAgICAgICAgICAge3sjaWYgaGFzUGFnZUhlYWRlcn19XG4gICAgICAgICAgICAgICAgICA8RXVpUGFnZUhlYWRlclxuICAgICAgICAgICAgICAgICAgICBAcmVzdHJpY3RXaWR0aD17e2ZhbHNlfX1cbiAgICAgICAgICAgICAgICAgICAgQGJvdHRvbUJvcmRlcj17e0BwYWdlSGVhZGVyLmJvdHRvbUJvcmRlcn19XG4gICAgICAgICAgICAgICAgICAgIEBwYWRkaW5nU2l6ZT1cIm5vbmVcIlxuICAgICAgICAgICAgICAgICAgICBAcmVzcG9uc2l2ZT17e0BwYWdlSGVhZGVyLnJlc3BvbnNpdmV9fVxuICAgICAgICAgICAgICAgICAgICBAaWNvblR5cGU9e3tAcGFnZUhlYWRlci5pY29uVHlwZX19XG4gICAgICAgICAgICAgICAgICAgIEB0YWJzPXt7QHBhZ2VIZWFkZXIudGFic319XG4gICAgICAgICAgICAgICAgICAgIEBwYWdlVGl0bGU9e3tAcGFnZUhlYWRlci5wYWdlVGl0bGV9fVxuICAgICAgICAgICAgICAgICAgICBAZGVzY3JpcHRpb249e3tAcGFnZUhlYWRlci5kZXNjcmlwdGlvbn19XG4gICAgICAgICAgICAgICAgICAgIEBoYXNQYWdlVGl0bGVCbG9jaz17e2hhc1BhZ2VIZWFkZXJQYWdlVGl0bGVCbG9ja319XG4gICAgICAgICAgICAgICAgICAgIEBoYXNEZWZhdWx0QmxvY2s9e3toYXNQYWdlSGVhZGVyRGVmYXVsdEJsb2NrfX1cbiAgICAgICAgICAgICAgICAgICAgQGhhc0Rlc2NyaXB0aW9uQmxvY2s9e3toYXNQYWdlSGVhZGVyRGVzY3JpcHRpb25CbG9ja319XG4gICAgICAgICAgICAgICAgICAgIEBoYXNSaWdodFNpZGVJdGVtc0Jsb2NrPXt7aGFzUGFnZUhlYWRlclJpZ2h0U2lkZUl0ZW1zQmxvY2t9fVxuICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8OnBhZ2VUaXRsZT5cbiAgICAgICAgICAgICAgICAgICAgICB7e3lpZWxkIHRvPVwicGFnZUhlYWRlclBhZ2VUaXRsZVwifX1cbiAgICAgICAgICAgICAgICAgICAgPC86cGFnZVRpdGxlPlxuICAgICAgICAgICAgICAgICAgICA8OmRlZmF1bHQ-XG4gICAgICAgICAgICAgICAgICAgICAge3t5aWVsZCB0bz1cInBhZ2VIZWFkZXJEZWZhdWx0XCJ9fVxuICAgICAgICAgICAgICAgICAgICA8LzpkZWZhdWx0PlxuICAgICAgICAgICAgICAgICAgICA8OmRlc2NyaXB0aW9uPlxuICAgICAgICAgICAgICAgICAgICAgIHt7eWllbGQgdG89XCJwYWdlSGVhZGVyRGVzY3JpcHRpb25cIn19XG4gICAgICAgICAgICAgICAgICAgIDwvOmRlc2NyaXB0aW9uPlxuICAgICAgICAgICAgICAgICAgICA8OnJpZ2h0U2lkZUl0ZW1zIGFzIHxpdGVtfD5cbiAgICAgICAgICAgICAgICAgICAgICB7e3lpZWxkIGl0ZW0gdG89XCJwYWdlSGVhZGVyUmlnaHRTaWRlSXRlbXNcIn19XG4gICAgICAgICAgICAgICAgICAgIDwvOnJpZ2h0U2lkZUl0ZW1zPlxuICAgICAgICAgICAgICAgICAgPC9FdWlQYWdlSGVhZGVyPlxuICAgICAgICAgICAgICAgIHt7L2lmfX1cbiAgICAgICAgICAgICAgICA8RXVpUGFnZUJvZHk-XG4gICAgICAgICAgICAgICAgICA8RXVpUGFnZUNvbnRlbnRcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9e3t0aGlzLnBhZ2VDb250ZW50UHJvcHNDbGFzc319XG4gICAgICAgICAgICAgICAgICAgIEB2ZXJ0aWNhbFBvc2l0aW9uPVwiY2VudGVyXCJcbiAgICAgICAgICAgICAgICAgICAgQGhvcml6b250YWxQb3NpdGlvbj1cImNlbnRlclwiXG4gICAgICAgICAgICAgICAgICAgIEBoYXNCb3JkZXI9e3tAcGFnZUNvbnRlbnRQcm9wcy5oYXNCb3JkZXJ9fVxuICAgICAgICAgICAgICAgICAgICBAaGFzU2hhZG93PXt7QHBhZ2VDb250ZW50UHJvcHMuaGFzU2hhZG93fX1cbiAgICAgICAgICAgICAgICAgICAgQGNvbG9yPXt7QHBhZ2VDb250ZW50UHJvcHMuY29sb3J9fVxuICAgICAgICAgICAgICAgICAgICBAYm9yZGVyUmFkaXVzPXt7QHBhZ2VDb250ZW50UHJvcHMuYm9yZGVyUmFkaXVzfX1cbiAgICAgICAgICAgICAgICAgICAgQGdyb3c9e3tAcGFnZUNvbnRlbnRQcm9wcy5ncm93fX1cbiAgICAgICAgICAgICAgICAgICAgQHJvbGU9e3tAcGFnZUNvbnRlbnRQcm9wcy5yb2xlfX1cbiAgICAgICAgICAgICAgICAgICAgQHBhZGRpbmdTaXplPXt7cGFkZGluZ1NpemV9fVxuICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8RXVpUGFnZUNvbnRlbnRCb2R5XG4gICAgICAgICAgICAgICAgICAgICAgY2xhc3M9e3t0aGlzLnBhZ2VDb250ZW50Qm9keVByb3BzQ2xhc3N9fVxuICAgICAgICAgICAgICAgICAgICAgIEBwYWRkaW5nU2l6ZT1cIm5vbmVcIlxuICAgICAgICAgICAgICAgICAgICAgIHt7IUBnbGludC1leHBlY3QtZXJyb3J9fVxuICAgICAgICAgICAgICAgICAgICAgIEByZXN0cmljdFdpZHRoPXt7dGhpcy5yZXN0cmljdFdpZHRofX1cbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgIHt7I2lmIChhbmQgdGhpcy5jYW5GdWxsSGVpZ2h0IHRoaXMuZnVsbEhlaWdodCl9fVxuICAgICAgICAgICAgICAgICAgICAgICAgPEV1aUZsZXhHcm91cFxuICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImV1aS1mdWxsSGVpZ2h0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgQGd1dHRlclNpemU9XCJub25lXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgQGRpcmVjdGlvbj1cImNvbHVtblwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgIEByZXNwb25zaXZlPXt7ZmFsc2V9fVxuICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8RXVpRmxleEl0ZW1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz17e2NsYXNzTmFtZXNcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChpZiAoZXEgdGhpcy5mdWxsSGVpZ2h0IHRydWUpIFwiZXVpLXlTY3JvbGxcIilcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChpZlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZXEgdGhpcy5mdWxsSGVpZ2h0IFwibm9zY3JvbGxcIikgXCJldWktZnVsbEhlaWdodFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAZ3Jvdz17e3RydWV9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICA-XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3t5aWVsZCB0bz1cImRlZmF1bHRcIn19XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvRXVpRmxleEl0ZW0-XG4gICAgICAgICAgICAgICAgICAgICAgICA8L0V1aUZsZXhHcm91cD5cbiAgICAgICAgICAgICAgICAgICAgICB7e2Vsc2V9fVxuICAgICAgICAgICAgICAgICAgICAgICAge3t5aWVsZCB0bz1cImRlZmF1bHRcIn19XG4gICAgICAgICAgICAgICAgICAgICAge3svaWZ9fVxuICAgICAgICAgICAgICAgICAgICA8L0V1aVBhZ2VDb250ZW50Qm9keT5cbiAgICAgICAgICAgICAgICAgIDwvRXVpUGFnZUNvbnRlbnQ-XG4gICAgICAgICAgICAgICAgPC9FdWlQYWdlQm9keT5cbiAgICAgICAgICAgICAgPC9FdWlQYWdlQm9keT5cbiAgICAgICAgICAgIDwvRXVpUGFnZT5cbiAgICAgICAgICB7ey9pZn19XG4gICAgICAgIHt7ZWxzZSBpZiAoZXEgdGhpcy50ZW1wbGF0ZSBcImNlbnRlcmVkQ29udGVudFwiKX19XG4gICAgICAgICAge3sjaWYgaGFzUGFnZVNpZGVCYXJCbG9ja319XG4gICAgICAgICAgICA8RXVpUGFnZVxuICAgICAgICAgICAgICBjbGFzcz17e3RoaXMuY2xhc3Nlc319XG4gICAgICAgICAgICAgIEBwYWRkaW5nU2l6ZT1cIm5vbmVcIlxuICAgICAgICAgICAgICBAZ3Jvdz17e2dyb3d9fVxuICAgICAgICAgICAgICB7e2lzV2l0aGluQnJlYWtwb2ludHNNb2RpZmllcn19XG4gICAgICAgICAgICAgIHt7c3R5bGUgKGlubGluZVN0eWxlcyBtaW4taGVpZ2h0PXRoaXMubWluSGVpZ2h0KX19XG4gICAgICAgICAgICAgIC4uLmF0dHJpYnV0ZXNcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPEV1aVBhZ2VTaWRlQmFyXG4gICAgICAgICAgICAgICAgY2xhc3M9e3tAcGFnZVNpZGVCYXJQcm9wcy5jbGFzc05hbWV9fVxuICAgICAgICAgICAgICAgIEBzdGlja3k9e3t0cnVlfX1cbiAgICAgICAgICAgICAgICBAcGFkZGluZ1NpemU9e3twYWRkaW5nU2l6ZX19XG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7e3lpZWxkIHRvPVwicGFnZVNpZGVCYXJcIn19XG4gICAgICAgICAgICAgIDwvRXVpUGFnZVNpZGVCYXI-XG4gICAgICAgICAgICAgIDxFdWlQYWdlQm9keVxuICAgICAgICAgICAgICAgIEBwYW5lbGxlZD17e3RydWV9fVxuICAgICAgICAgICAgICAgIEBwYWRkaW5nU2l6ZT17e3BhZGRpbmdTaXplfX1cbiAgICAgICAgICAgICAgICBjbGFzcz17e3RoaXMucGFnZUJvZHlQcm9wc0NsYXNzfX1cbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIHt7I2lmIGhhc1BhZ2VIZWFkZXJ9fVxuICAgICAgICAgICAgICAgICAgPEV1aVBhZ2VIZWFkZXJcbiAgICAgICAgICAgICAgICAgICAge3shQGdsaW50LWV4cGVjdC1lcnJvcn19XG4gICAgICAgICAgICAgICAgICAgIEByZXN0cmljdFdpZHRoPXt7dGhpcy5yZXN0cmljdFdpZHRofX1cbiAgICAgICAgICAgICAgICAgICAgQHBhZGRpbmdTaXplPXt7QHBhZ2VIZWFkZXIucGFkZGluZ1NpemV9fVxuICAgICAgICAgICAgICAgICAgICBAcmVzcG9uc2l2ZT17e0BwYWdlSGVhZGVyLnJlc3BvbnNpdmV9fVxuICAgICAgICAgICAgICAgICAgICBAaWNvblR5cGU9e3tAcGFnZUhlYWRlci5pY29uVHlwZX19XG4gICAgICAgICAgICAgICAgICAgIEB0YWJzPXt7QHBhZ2VIZWFkZXIudGFic319XG4gICAgICAgICAgICAgICAgICAgIEBwYWdlVGl0bGU9e3tAcGFnZUhlYWRlci5wYWdlVGl0bGV9fVxuICAgICAgICAgICAgICAgICAgICBAZGVzY3JpcHRpb249e3tAcGFnZUhlYWRlci5kZXNjcmlwdGlvbn19XG4gICAgICAgICAgICAgICAgICAgIEBoYXNQYWdlVGl0bGVCbG9jaz17e2hhc1BhZ2VIZWFkZXJQYWdlVGl0bGVCbG9ja319XG4gICAgICAgICAgICAgICAgICAgIEBoYXNEZWZhdWx0QmxvY2s9e3toYXNQYWdlSGVhZGVyRGVmYXVsdEJsb2NrfX1cbiAgICAgICAgICAgICAgICAgICAgQGhhc0Rlc2NyaXB0aW9uQmxvY2s9e3toYXNQYWdlSGVhZGVyRGVzY3JpcHRpb25CbG9ja319XG4gICAgICAgICAgICAgICAgICAgIEBoYXNSaWdodFNpZGVJdGVtc0Jsb2NrPXt7aGFzUGFnZUhlYWRlclJpZ2h0U2lkZUl0ZW1zQmxvY2t9fVxuICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8OnBhZ2VUaXRsZT5cbiAgICAgICAgICAgICAgICAgICAgICB7e3lpZWxkIHRvPVwicGFnZUhlYWRlclBhZ2VUaXRsZVwifX1cbiAgICAgICAgICAgICAgICAgICAgPC86cGFnZVRpdGxlPlxuICAgICAgICAgICAgICAgICAgICA8OmRlZmF1bHQ-XG4gICAgICAgICAgICAgICAgICAgICAge3t5aWVsZCB0bz1cInBhZ2VIZWFkZXJEZWZhdWx0XCJ9fVxuICAgICAgICAgICAgICAgICAgICA8LzpkZWZhdWx0PlxuICAgICAgICAgICAgICAgICAgICA8OmRlc2NyaXB0aW9uPlxuICAgICAgICAgICAgICAgICAgICAgIHt7eWllbGQgdG89XCJwYWdlSGVhZGVyRGVzY3JpcHRpb25cIn19XG4gICAgICAgICAgICAgICAgICAgIDwvOmRlc2NyaXB0aW9uPlxuICAgICAgICAgICAgICAgICAgICA8OnJpZ2h0U2lkZUl0ZW1zIGFzIHxpdGVtfD5cbiAgICAgICAgICAgICAgICAgICAgICB7e3lpZWxkIGl0ZW0gdG89XCJwYWdlSGVhZGVyUmlnaHRTaWRlSXRlbXNcIn19XG4gICAgICAgICAgICAgICAgICAgIDwvOnJpZ2h0U2lkZUl0ZW1zPlxuICAgICAgICAgICAgICAgICAgPC9FdWlQYWdlSGVhZGVyPlxuICAgICAgICAgICAgICAgIHt7L2lmfX1cbiAgICAgICAgICAgICAgICA8RXVpUGFnZUNvbnRlbnRcbiAgICAgICAgICAgICAgICAgIEB2ZXJ0aWNhbFBvc2l0aW9uPVwiY2VudGVyXCJcbiAgICAgICAgICAgICAgICAgIEBob3Jpem9udGFsUG9zaXRpb249XCJjZW50ZXJcIlxuICAgICAgICAgICAgICAgICAgQGhhc1NoYWRvdz17e2ZhbHNlfX1cbiAgICAgICAgICAgICAgICAgIEBjb2xvcj1cInN1YmR1ZWRcIlxuICAgICAgICAgICAgICAgICAgQHBhZGRpbmdTaXplPXt7cGFkZGluZ1NpemV9fVxuICAgICAgICAgICAgICAgICAgY2xhc3M9e3t0aGlzLnBhZ2VDb250ZW50UHJvcHNDbGFzc319XG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgPEV1aVBhZ2VDb250ZW50Qm9keVxuICAgICAgICAgICAgICAgICAgICB7eyFAZ2xpbnQtZXhwZWN0LWVycm9yfX1cbiAgICAgICAgICAgICAgICAgICAgQHJlc3RyaWN0V2lkdGg9e3t0aGlzLnJlc3RyaWN0V2lkdGh9fVxuICAgICAgICAgICAgICAgICAgICBjbGFzcz17e3RoaXMucGFnZUNvbnRlbnRCb2R5UHJvcHNDbGFzc319XG4gICAgICAgICAgICAgICAgICA-XG4gICAgICAgICAgICAgICAgICAgIHt7I2lmIChhbmQgdGhpcy5jYW5GdWxsSGVpZ2h0IHRoaXMuZnVsbEhlaWdodCl9fVxuICAgICAgICAgICAgICAgICAgICAgIDxFdWlGbGV4R3JvdXBcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZXVpLWZ1bGxIZWlnaHRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgQGd1dHRlclNpemU9XCJub25lXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIEBkaXJlY3Rpb249XCJjb2x1bW5cIlxuICAgICAgICAgICAgICAgICAgICAgICAgQHJlc3BvbnNpdmU9e3tmYWxzZX19XG4gICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgPEV1aUZsZXhJdGVtXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPXt7Y2xhc3NOYW1lc1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChpZiAoZXEgdGhpcy5mdWxsSGVpZ2h0IHRydWUpIFwiZXVpLXlTY3JvbGxcIilcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoaWZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChlcSB0aGlzLmZ1bGxIZWlnaHQgXCJub3Njcm9sbFwiKSBcImV1aS1mdWxsSGVpZ2h0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgIEBncm93PXt7dHJ1ZX19XG4gICAgICAgICAgICAgICAgICAgICAgICA-XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHt7eWllbGQgdG89XCJkZWZhdWx0XCJ9fVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9FdWlGbGV4SXRlbT5cbiAgICAgICAgICAgICAgICAgICAgICA8L0V1aUZsZXhHcm91cD5cbiAgICAgICAgICAgICAgICAgICAge3tlbHNlfX1cbiAgICAgICAgICAgICAgICAgICAgICB7e3lpZWxkIHRvPVwiZGVmYXVsdFwifX1cbiAgICAgICAgICAgICAgICAgICAge3svaWZ9fVxuICAgICAgICAgICAgICAgICAgPC9FdWlQYWdlQ29udGVudEJvZHk-XG4gICAgICAgICAgICAgICAgPC9FdWlQYWdlQ29udGVudD5cbiAgICAgICAgICAgICAgPC9FdWlQYWdlQm9keT5cbiAgICAgICAgICAgIDwvRXVpUGFnZT5cbiAgICAgICAgICB7e2Vsc2V9fVxuICAgICAgICAgICAgPEV1aVBhZ2VcbiAgICAgICAgICAgICAgY2xhc3M9e3t0aGlzLmNsYXNzZXN9fVxuICAgICAgICAgICAgICBAcGFkZGluZ1NpemU9XCJub25lXCJcbiAgICAgICAgICAgICAgQGdyb3c9e3tncm93fX1cbiAgICAgICAgICAgICAge3tpc1dpdGhpbkJyZWFrcG9pbnRzTW9kaWZpZXJ9fVxuICAgICAgICAgICAgICB7e3N0eWxlIChpbmxpbmVTdHlsZXMgbWluLWhlaWdodD10aGlzLm1pbkhlaWdodCl9fVxuICAgICAgICAgICAgICAuLi5hdHRyaWJ1dGVzXG4gICAgICAgICAgICA-XG4gICAgICAgICAgICAgIDxFdWlQYWdlQm9keSBjbGFzcz17e3RoaXMucGFnZUJvZHlQcm9wc0NsYXNzfX0-XG4gICAgICAgICAgICAgICAge3sjaWYgaGFzUGFnZUhlYWRlcn19XG4gICAgICAgICAgICAgICAgICA8RXVpUGFnZUhlYWRlclxuICAgICAgICAgICAgICAgICAgICB7eyFAZ2xpbnQtZXhwZWN0LWVycm9yfX1cbiAgICAgICAgICAgICAgICAgICAgQHJlc3RyaWN0V2lkdGg9e3t0aGlzLnJlc3RyaWN0V2lkdGh9fVxuICAgICAgICAgICAgICAgICAgICBAcGFkZGluZ1NpemU9e3twYWRkaW5nU2l6ZX19XG4gICAgICAgICAgICAgICAgICAgIEByZXNwb25zaXZlPXt7QHBhZ2VIZWFkZXIucmVzcG9uc2l2ZX19XG4gICAgICAgICAgICAgICAgICAgIEBpY29uVHlwZT17e0BwYWdlSGVhZGVyLmljb25UeXBlfX1cbiAgICAgICAgICAgICAgICAgICAgQHRhYnM9e3tAcGFnZUhlYWRlci50YWJzfX1cbiAgICAgICAgICAgICAgICAgICAgQHBhZ2VUaXRsZT17e0BwYWdlSGVhZGVyLnBhZ2VUaXRsZX19XG4gICAgICAgICAgICAgICAgICAgIEBkZXNjcmlwdGlvbj17e0BwYWdlSGVhZGVyLmRlc2NyaXB0aW9ufX1cbiAgICAgICAgICAgICAgICAgICAgQGhhc1BhZ2VUaXRsZUJsb2NrPXt7aGFzUGFnZUhlYWRlclBhZ2VUaXRsZUJsb2NrfX1cbiAgICAgICAgICAgICAgICAgICAgQGhhc0RlZmF1bHRCbG9jaz17e2hhc1BhZ2VIZWFkZXJEZWZhdWx0QmxvY2t9fVxuICAgICAgICAgICAgICAgICAgICBAaGFzRGVzY3JpcHRpb25CbG9jaz17e2hhc1BhZ2VIZWFkZXJEZXNjcmlwdGlvbkJsb2NrfX1cbiAgICAgICAgICAgICAgICAgICAgQGhhc1JpZ2h0U2lkZUl0ZW1zQmxvY2s9e3toYXNQYWdlSGVhZGVyUmlnaHRTaWRlSXRlbXNCbG9ja319XG4gICAgICAgICAgICAgICAgICA-XG4gICAgICAgICAgICAgICAgICAgIDw6cGFnZVRpdGxlPlxuICAgICAgICAgICAgICAgICAgICAgIHt7eWllbGQgdG89XCJwYWdlSGVhZGVyUGFnZVRpdGxlXCJ9fVxuICAgICAgICAgICAgICAgICAgICA8LzpwYWdlVGl0bGU-XG4gICAgICAgICAgICAgICAgICAgIDw6ZGVmYXVsdD5cbiAgICAgICAgICAgICAgICAgICAgICB7e3lpZWxkIHRvPVwicGFnZUhlYWRlckRlZmF1bHRcIn19XG4gICAgICAgICAgICAgICAgICAgIDwvOmRlZmF1bHQ-XG4gICAgICAgICAgICAgICAgICAgIDw6ZGVzY3JpcHRpb24-XG4gICAgICAgICAgICAgICAgICAgICAge3t5aWVsZCB0bz1cInBhZ2VIZWFkZXJEZXNjcmlwdGlvblwifX1cbiAgICAgICAgICAgICAgICAgICAgPC86ZGVzY3JpcHRpb24-XG4gICAgICAgICAgICAgICAgICAgIDw6cmlnaHRTaWRlSXRlbXMgYXMgfGl0ZW18PlxuICAgICAgICAgICAgICAgICAgICAgIHt7eWllbGQgaXRlbSB0bz1cInBhZ2VIZWFkZXJSaWdodFNpZGVJdGVtc1wifX1cbiAgICAgICAgICAgICAgICAgICAgPC86cmlnaHRTaWRlSXRlbXM-XG4gICAgICAgICAgICAgICAgICA8L0V1aVBhZ2VIZWFkZXI-XG4gICAgICAgICAgICAgICAge3svaWZ9fVxuICAgICAgICAgICAgICAgIHt7IXRlbXBsYXRlLWxpbnQtZGlzYWJsZX19XG4gICAgICAgICAgICAgICAgPEV1aVBhZ2VDb250ZW50XG4gICAgICAgICAgICAgICAgICByb2xlPXt7bnVsbH19XG4gICAgICAgICAgICAgICAgICBAYm9yZGVyUmFkaXVzPVwibm9uZVwiXG4gICAgICAgICAgICAgICAgICBAaGFzU2hhZG93PXt7ZmFsc2V9fVxuICAgICAgICAgICAgICAgICAgQHBhZGRpbmdTaXplPXt7cGFkZGluZ1NpemV9fVxuICAgICAgICAgICAgICAgICAgc3R5bGU9XCJkaXNwbGF5OiBmbGV4XCJcbiAgICAgICAgICAgICAgICA-XG4gICAgICAgICAgICAgICAgICB7eyF0ZW1wbGF0ZS1saW50LWVuYWJsZX19XG4gICAgICAgICAgICAgICAgICA8RXVpUGFnZUNvbnRlbnRcbiAgICAgICAgICAgICAgICAgICAgQHZlcnRpY2FsUG9zaXRpb249XCJjZW50ZXJcIlxuICAgICAgICAgICAgICAgICAgICBAaG9yaXpvbnRhbFBvc2l0aW9uPVwiY2VudGVyXCJcbiAgICAgICAgICAgICAgICAgICAgQGhhc1NoYWRvdz17e2ZhbHNlfX1cbiAgICAgICAgICAgICAgICAgICAgQGNvbG9yPVwic3ViZHVlZFwiXG4gICAgICAgICAgICAgICAgICAgIEBwYWRkaW5nU2l6ZT17e3BhZGRpbmdTaXplfX1cbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9e3t0aGlzLnBhZ2VDb250ZW50UHJvcHNDbGFzc319XG4gICAgICAgICAgICAgICAgICA-XG4gICAgICAgICAgICAgICAgICAgIDxFdWlQYWdlQ29udGVudEJvZHlcbiAgICAgICAgICAgICAgICAgICAgICB7eyFAZ2xpbnQtZXhwZWN0LWVycm9yfX1cbiAgICAgICAgICAgICAgICAgICAgICBAcmVzdHJpY3RXaWR0aD17e3RoaXMucmVzdHJpY3RXaWR0aH19XG4gICAgICAgICAgICAgICAgICAgICAgY2xhc3M9e3t0aGlzLnBhZ2VDb250ZW50Qm9keVByb3BzQ2xhc3N9fVxuICAgICAgICAgICAgICAgICAgICA-XG4gICAgICAgICAgICAgICAgICAgICAge3sjaWYgKGFuZCB0aGlzLmNhbkZ1bGxIZWlnaHQgdGhpcy5mdWxsSGVpZ2h0KX19XG4gICAgICAgICAgICAgICAgICAgICAgICA8RXVpRmxleEdyb3VwXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZXVpLWZ1bGxIZWlnaHRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICBAZ3V0dGVyU2l6ZT1cIm5vbmVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICBAZGlyZWN0aW9uPVwiY29sdW1uXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgQHJlc3BvbnNpdmU9e3tmYWxzZX19XG4gICAgICAgICAgICAgICAgICAgICAgICA-XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxFdWlGbGV4SXRlbVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPXt7Y2xhc3NOYW1lc1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGlmIChlcSB0aGlzLmZ1bGxIZWlnaHQgdHJ1ZSkgXCJldWkteVNjcm9sbFwiKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGlmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChlcSB0aGlzLmZ1bGxIZWlnaHQgXCJub3Njcm9sbFwiKSBcImV1aS1mdWxsSGVpZ2h0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBncm93PXt7dHJ1ZX19XG4gICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e3lpZWxkIHRvPVwiZGVmYXVsdFwifX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9FdWlGbGV4SXRlbT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvRXVpRmxleEdyb3VwPlxuICAgICAgICAgICAgICAgICAgICAgIHt7ZWxzZX19XG4gICAgICAgICAgICAgICAgICAgICAgICB7e3lpZWxkIHRvPVwiZGVmYXVsdFwifX1cbiAgICAgICAgICAgICAgICAgICAgICB7ey9pZn19XG4gICAgICAgICAgICAgICAgICAgIDwvRXVpUGFnZUNvbnRlbnRCb2R5PlxuICAgICAgICAgICAgICAgICAgPC9FdWlQYWdlQ29udGVudD5cblxuICAgICAgICAgICAgICAgIDwvRXVpUGFnZUNvbnRlbnQ-XG4gICAgICAgICAgICAgIDwvRXVpUGFnZUJvZHk-XG4gICAgICAgICAgICA8L0V1aVBhZ2U-XG4gICAgICAgICAge3svaWZ9fVxuICAgICAgICB7e2Vsc2UgaWYgKGVxIHRoaXMudGVtcGxhdGUgXCJlbXB0eVwiKX19XG4gICAgICAgICAge3sjaWYgaGFzUGFnZVNpZGVCYXJCbG9ja319XG4gICAgICAgICAgICA8RXVpUGFnZVxuICAgICAgICAgICAgICBjbGFzcz17e3RoaXMuY2xhc3Nlc319XG4gICAgICAgICAgICAgIEBwYWRkaW5nU2l6ZT1cIm5vbmVcIlxuICAgICAgICAgICAgICBAZ3Jvdz17e2dyb3d9fVxuICAgICAgICAgICAgICB7e2lzV2l0aGluQnJlYWtwb2ludHNNb2RpZmllcn19XG4gICAgICAgICAgICAgIHt7c3R5bGUgKGlubGluZVN0eWxlcyBtaW4taGVpZ2h0PXRoaXMubWluSGVpZ2h0KX19XG4gICAgICAgICAgICAgIC4uLmF0dHJpYnV0ZXNcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPEV1aVBhZ2VTaWRlQmFyIEBzdGlja3k9e3t0cnVlfX0gQHBhZGRpbmdTaXplPXt7cGFkZGluZ1NpemV9fT5cbiAgICAgICAgICAgICAgICB7e3lpZWxkIHRvPVwicGFnZVNpZGVCYXJcIn19XG4gICAgICAgICAgICAgIDwvRXVpUGFnZVNpZGVCYXI-XG4gICAgICAgICAgICAgIDxFdWlQYWdlQm9keVxuICAgICAgICAgICAgICAgIEBwYWRkaW5nU2l6ZT17e3BhZGRpbmdTaXplfX1cbiAgICAgICAgICAgICAgICBjbGFzcz17e3RoaXMucGFnZUJvZHlQcm9wc0NsYXNzfX1cbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIHt7I2lmIGhhc1BhZ2VIZWFkZXJ9fVxuICAgICAgICAgICAgICAgICAgPEV1aVBhZ2VIZWFkZXJcbiAgICAgICAgICAgICAgICAgICAge3shQGdsaW50LWV4cGVjdC1lcnJvcn19XG4gICAgICAgICAgICAgICAgICAgIEByZXN0cmljdFdpZHRoPXt7dGhpcy5yZXN0cmljdFdpZHRofX1cbiAgICAgICAgICAgICAgICAgICAgQHBhZGRpbmdTaXplPXt7QHBhZ2VIZWFkZXIucGFkZGluZ1NpemV9fVxuICAgICAgICAgICAgICAgICAgICBAcmVzcG9uc2l2ZT17e0BwYWdlSGVhZGVyLnJlc3BvbnNpdmV9fVxuICAgICAgICAgICAgICAgICAgICBAaWNvblR5cGU9e3tAcGFnZUhlYWRlci5pY29uVHlwZX19XG4gICAgICAgICAgICAgICAgICAgIEB0YWJzPXt7QHBhZ2VIZWFkZXIudGFic319XG4gICAgICAgICAgICAgICAgICAgIEBwYWdlVGl0bGU9e3tAcGFnZUhlYWRlci5wYWdlVGl0bGV9fVxuICAgICAgICAgICAgICAgICAgICBAZGVzY3JpcHRpb249e3tAcGFnZUhlYWRlci5kZXNjcmlwdGlvbn19XG4gICAgICAgICAgICAgICAgICAgIEBoYXNQYWdlVGl0bGVCbG9jaz17e2hhc1BhZ2VIZWFkZXJQYWdlVGl0bGVCbG9ja319XG4gICAgICAgICAgICAgICAgICAgIEBoYXNEZWZhdWx0QmxvY2s9e3toYXNQYWdlSGVhZGVyRGVmYXVsdEJsb2NrfX1cbiAgICAgICAgICAgICAgICAgICAgQGhhc0Rlc2NyaXB0aW9uQmxvY2s9e3toYXNQYWdlSGVhZGVyRGVzY3JpcHRpb25CbG9ja319XG4gICAgICAgICAgICAgICAgICAgIEBoYXNSaWdodFNpZGVJdGVtc0Jsb2NrPXt7aGFzUGFnZUhlYWRlclJpZ2h0U2lkZUl0ZW1zQmxvY2t9fVxuICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8OnBhZ2VUaXRsZT5cbiAgICAgICAgICAgICAgICAgICAgICB7e3lpZWxkIHRvPVwicGFnZUhlYWRlclBhZ2VUaXRsZVwifX1cbiAgICAgICAgICAgICAgICAgICAgPC86cGFnZVRpdGxlPlxuICAgICAgICAgICAgICAgICAgICA8OmRlZmF1bHQ-XG4gICAgICAgICAgICAgICAgICAgICAge3t5aWVsZCB0bz1cInBhZ2VIZWFkZXJEZWZhdWx0XCJ9fVxuICAgICAgICAgICAgICAgICAgICA8LzpkZWZhdWx0PlxuICAgICAgICAgICAgICAgICAgICA8OmRlc2NyaXB0aW9uPlxuICAgICAgICAgICAgICAgICAgICAgIHt7eWllbGQgdG89XCJwYWdlSGVhZGVyRGVzY3JpcHRpb25cIn19XG4gICAgICAgICAgICAgICAgICAgIDwvOmRlc2NyaXB0aW9uPlxuICAgICAgICAgICAgICAgICAgICA8OnJpZ2h0U2lkZUl0ZW1zIGFzIHxpdGVtfD5cbiAgICAgICAgICAgICAgICAgICAgICB7e3lpZWxkIGl0ZW0gdG89XCJwYWdlSGVhZGVyUmlnaHRTaWRlSXRlbXNcIn19XG4gICAgICAgICAgICAgICAgICAgIDwvOnJpZ2h0U2lkZUl0ZW1zPlxuICAgICAgICAgICAgICAgICAgPC9FdWlQYWdlSGVhZGVyPlxuICAgICAgICAgICAgICAgIHt7L2lmfX1cbiAgICAgICAgICAgICAgICA8RXVpUGFnZUNvbnRlbnRcbiAgICAgICAgICAgICAgICAgIEBoYXNCb3JkZXI9e3tmYWxzZX19XG4gICAgICAgICAgICAgICAgICBAaGFzU2hhZG93PXt7ZmFsc2V9fVxuICAgICAgICAgICAgICAgICAgQHBhZGRpbmdTaXplPVwibm9uZVwiXG4gICAgICAgICAgICAgICAgICBAY29sb3I9XCJ0cmFuc3BhcmVudFwiXG4gICAgICAgICAgICAgICAgICBAYm9yZGVyUmFkaXVzPVwibm9uZVwiXG4gICAgICAgICAgICAgICAgICBjbGFzcz17e3RoaXMucGFnZUNvbnRlbnRQcm9wc0NsYXNzfX1cbiAgICAgICAgICAgICAgICA-XG4gICAgICAgICAgICAgICAgICA8RXVpUGFnZUNvbnRlbnRCb2R5XG4gICAgICAgICAgICAgICAgICAgIHt7IUBnbGludC1leHBlY3QtZXJyb3J9fVxuICAgICAgICAgICAgICAgICAgICBAcmVzdHJpY3RXaWR0aD17e3RoaXMucmVzdHJpY3RXaWR0aH19XG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPXt7dGhpcy5wYWdlQ29udGVudEJvZHlQcm9wc0NsYXNzfX1cbiAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAge3sjaWYgKGFuZCB0aGlzLmNhbkZ1bGxIZWlnaHQgdGhpcy5mdWxsSGVpZ2h0KX19XG4gICAgICAgICAgICAgICAgICAgICAgPEV1aUZsZXhHcm91cFxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJldWktZnVsbEhlaWdodFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBAZ3V0dGVyU2l6ZT1cIm5vbmVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgQGRpcmVjdGlvbj1cImNvbHVtblwiXG4gICAgICAgICAgICAgICAgICAgICAgICBAcmVzcG9uc2l2ZT17e2ZhbHNlfX1cbiAgICAgICAgICAgICAgICAgICAgICA-XG4gICAgICAgICAgICAgICAgICAgICAgICA8RXVpRmxleEl0ZW1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9e3tjbGFzc05hbWVzXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKGlmIChlcSB0aGlzLmZ1bGxIZWlnaHQgdHJ1ZSkgXCJldWkteVNjcm9sbFwiKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChpZlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGVxIHRoaXMuZnVsbEhlaWdodCBcIm5vc2Nyb2xsXCIpIFwiZXVpLWZ1bGxIZWlnaHRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgQGdyb3c9e3t0cnVlfX1cbiAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAge3t5aWVsZCB0bz1cImRlZmF1bHRcIn19XG4gICAgICAgICAgICAgICAgICAgICAgICA8L0V1aUZsZXhJdGVtPlxuICAgICAgICAgICAgICAgICAgICAgIDwvRXVpRmxleEdyb3VwPlxuICAgICAgICAgICAgICAgICAgICB7e2Vsc2V9fVxuICAgICAgICAgICAgICAgICAgICAgIHt7eWllbGQgdG89XCJkZWZhdWx0XCJ9fVxuICAgICAgICAgICAgICAgICAgICB7ey9pZn19XG4gICAgICAgICAgICAgICAgICA8L0V1aVBhZ2VDb250ZW50Qm9keT5cbiAgICAgICAgICAgICAgICA8L0V1aVBhZ2VDb250ZW50PlxuICAgICAgICAgICAgICA8L0V1aVBhZ2VCb2R5PlxuICAgICAgICAgICAgPC9FdWlQYWdlPlxuICAgICAgICAgIHt7ZWxzZX19XG4gICAgICAgICAgICA8RXVpUGFnZVxuICAgICAgICAgICAgICBjbGFzcz17e3RoaXMuY2xhc3Nlc319XG4gICAgICAgICAgICAgIEBwYWRkaW5nU2l6ZT17e3BhZGRpbmdTaXplfX1cbiAgICAgICAgICAgICAgQGdyb3c9e3tncm93fX1cbiAgICAgICAgICAgICAge3tpc1dpdGhpbkJyZWFrcG9pbnRzTW9kaWZpZXJ9fVxuICAgICAgICAgICAgICB7e3N0eWxlIChpbmxpbmVTdHlsZXMgbWluLWhlaWdodD10aGlzLm1pbkhlaWdodCl9fVxuICAgICAgICAgICAgICAuLi5hdHRyaWJ1dGVzXG4gICAgICAgICAgICA-XG4gICAgICAgICAgICAgIDxFdWlQYWdlQm9keVxuICAgICAgICAgICAgICAgIHt7IUBnbGludC1leHBlY3QtZXJyb3J9fVxuICAgICAgICAgICAgICAgIEByZXN0cmljdFdpZHRoPXt7dGhpcy5yZXN0cmljdFdpZHRofX1cbiAgICAgICAgICAgICAgICBjbGFzcz17e3RoaXMucGFnZUJvZHlQcm9wc0NsYXNzfX1cbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIHt7I2lmIGhhc1BhZ2VIZWFkZXJ9fVxuICAgICAgICAgICAgICAgICAgPEV1aVBhZ2VIZWFkZXJcbiAgICAgICAgICAgICAgICAgICAgQGJvdHRvbUJvcmRlcj17e0BwYWdlSGVhZGVyLmJvdHRvbUJvcmRlcn19XG4gICAgICAgICAgICAgICAgICAgIEByZXN0cmljdFdpZHRoPXt7ZmFsc2V9fVxuICAgICAgICAgICAgICAgICAgICBAcGFkZGluZ1NpemU9e3tAcGFnZUhlYWRlci5wYWRkaW5nU2l6ZX19XG4gICAgICAgICAgICAgICAgICAgIEByZXNwb25zaXZlPXt7QHBhZ2VIZWFkZXIucmVzcG9uc2l2ZX19XG4gICAgICAgICAgICAgICAgICAgIEBpY29uVHlwZT17e0BwYWdlSGVhZGVyLmljb25UeXBlfX1cbiAgICAgICAgICAgICAgICAgICAgQHRhYnM9e3tAcGFnZUhlYWRlci50YWJzfX1cbiAgICAgICAgICAgICAgICAgICAgQHBhZ2VUaXRsZT17e0BwYWdlSGVhZGVyLnBhZ2VUaXRsZX19XG4gICAgICAgICAgICAgICAgICAgIEBkZXNjcmlwdGlvbj17e0BwYWdlSGVhZGVyLmRlc2NyaXB0aW9ufX1cbiAgICAgICAgICAgICAgICAgICAgQGhhc1BhZ2VUaXRsZUJsb2NrPXt7aGFzUGFnZUhlYWRlclBhZ2VUaXRsZUJsb2NrfX1cbiAgICAgICAgICAgICAgICAgICAgQGhhc0RlZmF1bHRCbG9jaz17e2hhc1BhZ2VIZWFkZXJEZWZhdWx0QmxvY2t9fVxuICAgICAgICAgICAgICAgICAgICBAaGFzRGVzY3JpcHRpb25CbG9jaz17e2hhc1BhZ2VIZWFkZXJEZXNjcmlwdGlvbkJsb2NrfX1cbiAgICAgICAgICAgICAgICAgICAgQGhhc1JpZ2h0U2lkZUl0ZW1zQmxvY2s9e3toYXNQYWdlSGVhZGVyUmlnaHRTaWRlSXRlbXNCbG9ja319XG4gICAgICAgICAgICAgICAgICA-XG4gICAgICAgICAgICAgICAgICAgIDw6cGFnZVRpdGxlPlxuICAgICAgICAgICAgICAgICAgICAgIHt7eWllbGQgdG89XCJwYWdlSGVhZGVyUGFnZVRpdGxlXCJ9fVxuICAgICAgICAgICAgICAgICAgICA8LzpwYWdlVGl0bGU-XG4gICAgICAgICAgICAgICAgICAgIDw6ZGVmYXVsdD5cbiAgICAgICAgICAgICAgICAgICAgICB7e3lpZWxkIHRvPVwicGFnZUhlYWRlckRlZmF1bHRcIn19XG4gICAgICAgICAgICAgICAgICAgIDwvOmRlZmF1bHQ-XG4gICAgICAgICAgICAgICAgICAgIDw6ZGVzY3JpcHRpb24-XG4gICAgICAgICAgICAgICAgICAgICAge3t5aWVsZCB0bz1cInBhZ2VIZWFkZXJEZXNjcmlwdGlvblwifX1cbiAgICAgICAgICAgICAgICAgICAgPC86ZGVzY3JpcHRpb24-XG4gICAgICAgICAgICAgICAgICAgIDw6cmlnaHRTaWRlSXRlbXMgYXMgfGl0ZW18PlxuICAgICAgICAgICAgICAgICAgICAgIHt7eWllbGQgaXRlbSB0bz1cInBhZ2VIZWFkZXJSaWdodFNpZGVJdGVtc1wifX1cbiAgICAgICAgICAgICAgICAgICAgPC86cmlnaHRTaWRlSXRlbXM-XG4gICAgICAgICAgICAgICAgICA8L0V1aVBhZ2VIZWFkZXI-XG4gICAgICAgICAgICAgICAge3svaWZ9fVxuICAgICAgICAgICAgICAgIDxFdWlQYWdlQ29udGVudFxuICAgICAgICAgICAgICAgICAgQGhhc0JvcmRlcj17e2ZhbHNlfX1cbiAgICAgICAgICAgICAgICAgIEBoYXNTaGFkb3c9e3tmYWxzZX19XG4gICAgICAgICAgICAgICAgICBAcGFkZGluZ1NpemU9XCJub25lXCJcbiAgICAgICAgICAgICAgICAgIEBjb2xvcj1cInRyYW5zcGFyZW50XCJcbiAgICAgICAgICAgICAgICAgIEBib3JkZXJSYWRpdXM9XCJub25lXCJcbiAgICAgICAgICAgICAgICAgIGNsYXNzPXt7dGhpcy5wYWdlQ29udGVudFByb3BzQ2xhc3N9fVxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIDxFdWlQYWdlQ29udGVudEJvZHlcbiAgICAgICAgICAgICAgICAgICAgQHJlc3RyaWN0V2lkdGg9e3tmYWxzZX19XG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPXt7dGhpcy5wYWdlQ29udGVudEJvZHlQcm9wc0NsYXNzfX1cbiAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAge3sjaWYgKGFuZCB0aGlzLmNhbkZ1bGxIZWlnaHQgdGhpcy5mdWxsSGVpZ2h0KX19XG4gICAgICAgICAgICAgICAgICAgICAgPEV1aUZsZXhHcm91cFxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJldWktZnVsbEhlaWdodFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBAZ3V0dGVyU2l6ZT1cIm5vbmVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgQGRpcmVjdGlvbj1cImNvbHVtblwiXG4gICAgICAgICAgICAgICAgICAgICAgICBAcmVzcG9uc2l2ZT17e2ZhbHNlfX1cbiAgICAgICAgICAgICAgICAgICAgICA-XG4gICAgICAgICAgICAgICAgICAgICAgICA8RXVpRmxleEl0ZW1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9e3tjbGFzc05hbWVzXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKGlmIChlcSB0aGlzLmZ1bGxIZWlnaHQgdHJ1ZSkgXCJldWkteVNjcm9sbFwiKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChpZlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGVxIHRoaXMuZnVsbEhlaWdodCBcIm5vc2Nyb2xsXCIpIFwiZXVpLWZ1bGxIZWlnaHRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgQGdyb3c9e3t0cnVlfX1cbiAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAge3t5aWVsZCB0bz1cImRlZmF1bHRcIn19XG4gICAgICAgICAgICAgICAgICAgICAgICA8L0V1aUZsZXhJdGVtPlxuICAgICAgICAgICAgICAgICAgICAgIDwvRXVpRmxleEdyb3VwPlxuICAgICAgICAgICAgICAgICAgICB7e2Vsc2V9fVxuICAgICAgICAgICAgICAgICAgICAgIHt7eWllbGQgdG89XCJkZWZhdWx0XCJ9fVxuICAgICAgICAgICAgICAgICAgICB7ey9pZn19XG4gICAgICAgICAgICAgICAgICA8L0V1aVBhZ2VDb250ZW50Qm9keT5cbiAgICAgICAgICAgICAgICA8L0V1aVBhZ2VDb250ZW50PlxuICAgICAgICAgICAgICA8L0V1aVBhZ2VCb2R5PlxuICAgICAgICAgICAgPC9FdWlQYWdlPlxuICAgICAgICAgIHt7L2lmfX1cbiAgICAgICAge3tlbHNlfX1cbiAgICAgICAgICB7eyNpZiBoYXNQYWdlU2lkZUJhckJsb2NrfX1cbiAgICAgICAgICAgIDxFdWlQYWdlXG4gICAgICAgICAgICAgIGNsYXNzPXt7dGhpcy5jbGFzc2VzfX1cbiAgICAgICAgICAgICAgQHBhZGRpbmdTaXplPVwibm9uZVwiXG4gICAgICAgICAgICAgIEBncm93PXt7Z3Jvd319XG4gICAgICAgICAgICAgIHt7aXNXaXRoaW5CcmVha3BvaW50c01vZGlmaWVyfX1cbiAgICAgICAgICAgICAge3tzdHlsZSAoaW5saW5lU3R5bGVzIG1pbi1oZWlnaHQ9dGhpcy5taW5IZWlnaHQpfX1cbiAgICAgICAgICAgICAgLi4uYXR0cmlidXRlc1xuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8RXVpUGFnZVNpZGVCYXJcbiAgICAgICAgICAgICAgICBjbGFzcz17e0BwYWdlU2lkZUJhclByb3BzLmNsYXNzTmFtZX19XG4gICAgICAgICAgICAgICAgQHN0aWNreT17e3RydWV9fVxuICAgICAgICAgICAgICAgIEBwYWRkaW5nU2l6ZT17e3BhZGRpbmdTaXplfX1cbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIHt7eWllbGQgdG89XCJwYWdlU2lkZUJhclwifX1cbiAgICAgICAgICAgICAgPC9FdWlQYWdlU2lkZUJhcj5cbiAgICAgICAgICAgICAgPEV1aVBhZ2VCb2R5XG4gICAgICAgICAgICAgICAgQHBhbmVsbGVkPXt7dHJ1ZX19XG4gICAgICAgICAgICAgICAgQHBhZGRpbmdTaXplPVwibm9uZVwiXG4gICAgICAgICAgICAgICAgY2xhc3M9e3t0aGlzLnBhZ2VCb2R5UHJvcHNDbGFzc319XG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8RXVpUGFnZUJvZHlcbiAgICAgICAgICAgICAgICAgIGNsYXNzPXt7dGhpcy5wYWdlQm9keVByb3BzQ2xhc3N9fVxuICAgICAgICAgICAgICAgICAgQHBhZGRpbmdTaXplPXt7cGFkZGluZ1NpemV9fVxuICAgICAgICAgICAgICAgICAgQHRhZ05hbWU9XCJkaXZcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIHt7I2lmIGhhc1BhZ2VIZWFkZXJ9fVxuICAgICAgICAgICAgICAgICAgICA8RXVpUGFnZUhlYWRlclxuICAgICAgICAgICAgICAgICAgICAgIEBib3R0b21Cb3JkZXI9e3tAcGFnZUhlYWRlci5ib3R0b21Cb3JkZXJ9fVxuICAgICAgICAgICAgICAgICAgICAgIHt7IUBnbGludC1leHBlY3QtZXJyb3J9fVxuICAgICAgICAgICAgICAgICAgICAgIEByZXN0cmljdFdpZHRoPXt7dGhpcy5yZXN0cmljdFdpZHRofX1cbiAgICAgICAgICAgICAgICAgICAgICBAcGFkZGluZ1NpemU9e3tAcGFnZUhlYWRlci5wYWRkaW5nU2l6ZX19XG4gICAgICAgICAgICAgICAgICAgICAgQHJlc3BvbnNpdmU9e3tAcGFnZUhlYWRlci5yZXNwb25zaXZlfX1cbiAgICAgICAgICAgICAgICAgICAgICBAaWNvblR5cGU9e3tAcGFnZUhlYWRlci5pY29uVHlwZX19XG4gICAgICAgICAgICAgICAgICAgICAgQHRhYnM9e3tAcGFnZUhlYWRlci50YWJzfX1cbiAgICAgICAgICAgICAgICAgICAgICBAcGFnZVRpdGxlPXt7QHBhZ2VIZWFkZXIucGFnZVRpdGxlfX1cbiAgICAgICAgICAgICAgICAgICAgICBAZGVzY3JpcHRpb249e3tAcGFnZUhlYWRlci5kZXNjcmlwdGlvbn19XG4gICAgICAgICAgICAgICAgICAgICAgQGhhc1BhZ2VUaXRsZUJsb2NrPXt7aGFzUGFnZUhlYWRlclBhZ2VUaXRsZUJsb2NrfX1cbiAgICAgICAgICAgICAgICAgICAgICBAaGFzRGVmYXVsdEJsb2NrPXt7aGFzUGFnZUhlYWRlckRlZmF1bHRCbG9ja319XG4gICAgICAgICAgICAgICAgICAgICAgQGhhc0Rlc2NyaXB0aW9uQmxvY2s9e3toYXNQYWdlSGVhZGVyRGVzY3JpcHRpb25CbG9ja319XG4gICAgICAgICAgICAgICAgICAgICAgQGhhc1JpZ2h0U2lkZUl0ZW1zQmxvY2s9e3toYXNQYWdlSGVhZGVyUmlnaHRTaWRlSXRlbXNCbG9ja319XG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICA8OnBhZ2VUaXRsZT5cbiAgICAgICAgICAgICAgICAgICAgICAgIHt7eWllbGQgdG89XCJwYWdlSGVhZGVyUGFnZVRpdGxlXCJ9fVxuICAgICAgICAgICAgICAgICAgICAgIDwvOnBhZ2VUaXRsZT5cbiAgICAgICAgICAgICAgICAgICAgICA8OmRlZmF1bHQ-XG4gICAgICAgICAgICAgICAgICAgICAgICB7e3lpZWxkIHRvPVwicGFnZUhlYWRlckRlZmF1bHRcIn19XG4gICAgICAgICAgICAgICAgICAgICAgPC86ZGVmYXVsdD5cbiAgICAgICAgICAgICAgICAgICAgICA8OmRlc2NyaXB0aW9uPlxuICAgICAgICAgICAgICAgICAgICAgICAge3t5aWVsZCB0bz1cInBhZ2VIZWFkZXJEZXNjcmlwdGlvblwifX1cbiAgICAgICAgICAgICAgICAgICAgICA8LzpkZXNjcmlwdGlvbj5cbiAgICAgICAgICAgICAgICAgICAgICA8OnJpZ2h0U2lkZUl0ZW1zIGFzIHxpdGVtfD5cbiAgICAgICAgICAgICAgICAgICAgICAgIHt7eWllbGQgaXRlbSB0bz1cInBhZ2VIZWFkZXJSaWdodFNpZGVJdGVtc1wifX1cbiAgICAgICAgICAgICAgICAgICAgICA8LzpyaWdodFNpZGVJdGVtcz5cbiAgICAgICAgICAgICAgICAgICAgPC9FdWlQYWdlSGVhZGVyPlxuICAgICAgICAgICAgICAgICAge3svaWZ9fVxuICAgICAgICAgICAgICAgICAgPEV1aVBhZ2VDb250ZW50XG4gICAgICAgICAgICAgICAgICAgIEBoYXNTaGFkb3c9e3tmYWxzZX19XG4gICAgICAgICAgICAgICAgICAgIEBoYXNCb3JkZXI9e3tmYWxzZX19XG4gICAgICAgICAgICAgICAgICAgIEBjb2xvcj1cInRyYW5zcGFyZW50XCJcbiAgICAgICAgICAgICAgICAgICAgQGJvcmRlclJhZGl1cz1cIm5vbmVcIlxuICAgICAgICAgICAgICAgICAgICBAcGFkZGluZ1NpemU9XCJub25lXCJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9e3t0aGlzLnBhZ2VDb250ZW50UHJvcHNDbGFzc319XG4gICAgICAgICAgICAgICAgICA-XG4gICAgICAgICAgICAgICAgICAgIDxFdWlQYWdlQ29udGVudEJvZHlcbiAgICAgICAgICAgICAgICAgICAgICB7eyFAZ2xpbnQtZXhwZWN0LWVycm9yfX1cbiAgICAgICAgICAgICAgICAgICAgICBAcmVzdHJpY3RXaWR0aD17e3RoaXMucmVzdHJpY3RXaWR0aH19XG4gICAgICAgICAgICAgICAgICAgICAgY2xhc3M9e3t0aGlzLnBhZ2VDb250ZW50Qm9keVByb3BzQ2xhc3N9fVxuICAgICAgICAgICAgICAgICAgICA-XG4gICAgICAgICAgICAgICAgICAgICAge3sjaWYgKGFuZCB0aGlzLmNhbkZ1bGxIZWlnaHQgdGhpcy5mdWxsSGVpZ2h0KX19XG4gICAgICAgICAgICAgICAgICAgICAgICA8RXVpRmxleEdyb3VwXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZXVpLWZ1bGxIZWlnaHRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICBAZ3V0dGVyU2l6ZT1cIm5vbmVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICBAZGlyZWN0aW9uPVwiY29sdW1uXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgQHJlc3BvbnNpdmU9e3tmYWxzZX19XG4gICAgICAgICAgICAgICAgICAgICAgICA-XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxFdWlGbGV4SXRlbVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPXt7Y2xhc3NOYW1lc1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGlmIChlcSB0aGlzLmZ1bGxIZWlnaHQgdHJ1ZSkgXCJldWkteVNjcm9sbFwiKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGlmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChlcSB0aGlzLmZ1bGxIZWlnaHQgXCJub3Njcm9sbFwiKSBcImV1aS1mdWxsSGVpZ2h0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBncm93PXt7dHJ1ZX19XG4gICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e3lpZWxkIHRvPVwiZGVmYXVsdFwifX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9FdWlGbGV4SXRlbT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvRXVpRmxleEdyb3VwPlxuICAgICAgICAgICAgICAgICAgICAgIHt7ZWxzZX19XG4gICAgICAgICAgICAgICAgICAgICAgICB7e3lpZWxkIHRvPVwiZGVmYXVsdFwifX1cbiAgICAgICAgICAgICAgICAgICAgICB7ey9pZn19XG4gICAgICAgICAgICAgICAgICAgIDwvRXVpUGFnZUNvbnRlbnRCb2R5PlxuICAgICAgICAgICAgICAgICAgPC9FdWlQYWdlQ29udGVudD5cbiAgICAgICAgICAgICAgICA8L0V1aVBhZ2VCb2R5PlxuICAgICAgICAgICAgICAgIHt7I2lmIGhhc0JvdHRvbUJhckJsb2NrfX1cbiAgICAgICAgICAgICAgICAgIDxFdWlCb3R0b21CYXJcbiAgICAgICAgICAgICAgICAgICAgQHBhZGRpbmdTaXplPXt7cGFkZGluZ1NpemV9fVxuICAgICAgICAgICAgICAgICAgICBAcG9zaXRpb249e3tpZlxuICAgICAgICAgICAgICAgICAgICAgIChhbmQgdGhpcy5jYW5GdWxsSGVpZ2h0IHRoaXMuZnVsbEhlaWdodClcbiAgICAgICAgICAgICAgICAgICAgICBcInN0YXRpY1wiXG4gICAgICAgICAgICAgICAgICAgICAgXCJzdGlja3lcIlxuICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8RXVpUGFnZUNvbnRlbnRCb2R5XG4gICAgICAgICAgICAgICAgICAgICAgQHBhZGRpbmdTaXplPVwibm9uZVwiXG4gICAgICAgICAgICAgICAgICAgICAge3shQGdsaW50LWV4cGVjdC1lcnJvcn19XG4gICAgICAgICAgICAgICAgICAgICAgQHJlc3RyaWN0V2lkdGg9e3t0aGlzLnJlc3RyaWN0V2lkdGh9fVxuICAgICAgICAgICAgICAgICAgICA-XG4gICAgICAgICAgICAgICAgICAgICAge3t5aWVsZCB0bz1cImJvdHRvbUJhclwifX1cbiAgICAgICAgICAgICAgICAgICAgPC9FdWlQYWdlQ29udGVudEJvZHk-XG4gICAgICAgICAgICAgICAgICA8L0V1aUJvdHRvbUJhcj5cbiAgICAgICAgICAgICAgICB7ey9pZn19XG4gICAgICAgICAgICAgIDwvRXVpUGFnZUJvZHk-XG4gICAgICAgICAgICA8L0V1aVBhZ2U-XG4gICAgICAgICAge3tlbHNlfX1cbiAgICAgICAgICAgIDxFdWlQYWdlXG4gICAgICAgICAgICAgIGNsYXNzPXt7dGhpcy5jbGFzc2VzfX1cbiAgICAgICAgICAgICAgQHBhZGRpbmdTaXplPVwibm9uZVwiXG4gICAgICAgICAgICAgIEBncm93PXt7Z3Jvd319XG4gICAgICAgICAgICAgIHt7aXNXaXRoaW5CcmVha3BvaW50c01vZGlmaWVyfX1cbiAgICAgICAgICAgICAge3tzdHlsZSAoaW5saW5lU3R5bGVzIG1pbi1oZWlnaHQ9dGhpcy5taW5IZWlnaHQpfX1cbiAgICAgICAgICAgICAgLi4uYXR0cmlidXRlc1xuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8RXVpUGFnZUJvZHkgY2xhc3M9e3t0aGlzLnBhZ2VCb2R5UHJvcHNDbGFzc319PlxuICAgICAgICAgICAgICAgIHt7I2lmIGhhc1BhZ2VIZWFkZXJ9fVxuICAgICAgICAgICAgICAgICAgPEV1aVBhZ2VIZWFkZXJcbiAgICAgICAgICAgICAgICAgICAge3shQGdsaW50LWV4cGVjdC1lcnJvcn19XG4gICAgICAgICAgICAgICAgICAgIEByZXN0cmljdFdpZHRoPXt7dGhpcy5yZXN0cmljdFdpZHRofX1cbiAgICAgICAgICAgICAgICAgICAgQGJvdHRvbUJvcmRlcj17e0BwYWdlSGVhZGVyLmJvdHRvbUJvcmRlcn19XG4gICAgICAgICAgICAgICAgICAgIEBwYWRkaW5nU2l6ZT17e3BhZGRpbmdTaXplfX1cbiAgICAgICAgICAgICAgICAgICAgQHJlc3BvbnNpdmU9e3tAcGFnZUhlYWRlci5yZXNwb25zaXZlfX1cbiAgICAgICAgICAgICAgICAgICAgQGljb25UeXBlPXt7QHBhZ2VIZWFkZXIuaWNvblR5cGV9fVxuICAgICAgICAgICAgICAgICAgICBAdGFicz17e0BwYWdlSGVhZGVyLnRhYnN9fVxuICAgICAgICAgICAgICAgICAgICBAcGFnZVRpdGxlPXt7QHBhZ2VIZWFkZXIucGFnZVRpdGxlfX1cbiAgICAgICAgICAgICAgICAgICAgQGRlc2NyaXB0aW9uPXt7QHBhZ2VIZWFkZXIuZGVzY3JpcHRpb259fVxuICAgICAgICAgICAgICAgICAgICBAaGFzUGFnZVRpdGxlQmxvY2s9e3toYXNQYWdlSGVhZGVyUGFnZVRpdGxlQmxvY2t9fVxuICAgICAgICAgICAgICAgICAgICBAaGFzRGVmYXVsdEJsb2NrPXt7aGFzUGFnZUhlYWRlckRlZmF1bHRCbG9ja319XG4gICAgICAgICAgICAgICAgICAgIEBoYXNEZXNjcmlwdGlvbkJsb2NrPXt7aGFzUGFnZUhlYWRlckRlc2NyaXB0aW9uQmxvY2t9fVxuICAgICAgICAgICAgICAgICAgICBAaGFzUmlnaHRTaWRlSXRlbXNCbG9jaz17e2hhc1BhZ2VIZWFkZXJSaWdodFNpZGVJdGVtc0Jsb2NrfX1cbiAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPDpwYWdlVGl0bGU-XG4gICAgICAgICAgICAgICAgICAgICAge3t5aWVsZCB0bz1cInBhZ2VIZWFkZXJQYWdlVGl0bGVcIn19XG4gICAgICAgICAgICAgICAgICAgIDwvOnBhZ2VUaXRsZT5cbiAgICAgICAgICAgICAgICAgICAgPDpkZWZhdWx0PlxuICAgICAgICAgICAgICAgICAgICAgIHt7eWllbGQgdG89XCJwYWdlSGVhZGVyRGVmYXVsdFwifX1cbiAgICAgICAgICAgICAgICAgICAgPC86ZGVmYXVsdD5cbiAgICAgICAgICAgICAgICAgICAgPDpkZXNjcmlwdGlvbj5cbiAgICAgICAgICAgICAgICAgICAgICB7e3lpZWxkIHRvPVwicGFnZUhlYWRlckRlc2NyaXB0aW9uXCJ9fVxuICAgICAgICAgICAgICAgICAgICA8LzpkZXNjcmlwdGlvbj5cbiAgICAgICAgICAgICAgICAgICAgPDpyaWdodFNpZGVJdGVtcyBhcyB8aXRlbXw-XG4gICAgICAgICAgICAgICAgICAgICAge3t5aWVsZCBpdGVtIHRvPVwicGFnZUhlYWRlclJpZ2h0U2lkZUl0ZW1zXCJ9fVxuICAgICAgICAgICAgICAgICAgICA8LzpyaWdodFNpZGVJdGVtcz5cbiAgICAgICAgICAgICAgICAgIDwvRXVpUGFnZUhlYWRlcj5cbiAgICAgICAgICAgICAgICB7ey9pZn19XG4gICAgICAgICAgICAgICAgPEV1aVBhZ2VDb250ZW50XG4gICAgICAgICAgICAgICAgICBAaGFzQm9yZGVyPXt7aWYgaGFzUGFnZUhlYWRlciBmYWxzZX19XG4gICAgICAgICAgICAgICAgICBAaGFzU2hhZG93PXt7ZmFsc2V9fVxuICAgICAgICAgICAgICAgICAgQHBhZGRpbmdTaXplPVwibm9uZVwiXG4gICAgICAgICAgICAgICAgICBAY29sb3I9XCJwbGFpblwiXG4gICAgICAgICAgICAgICAgICBAYm9yZGVyUmFkaXVzPVwibm9uZVwiXG4gICAgICAgICAgICAgICAgICBjbGFzcz17e3RoaXMucGFnZUNvbnRlbnRQcm9wc0NsYXNzfX1cbiAgICAgICAgICAgICAgICA-XG4gICAgICAgICAgICAgICAgICA8RXVpUGFnZUNvbnRlbnRCb2R5XG4gICAgICAgICAgICAgICAgICAgIHt7IUBnbGludC1leHBlY3QtZXJyb3J9fVxuICAgICAgICAgICAgICAgICAgICBAcmVzdHJpY3RXaWR0aD17e3RoaXMucmVzdHJpY3RXaWR0aH19XG4gICAgICAgICAgICAgICAgICAgIEBwYWRkaW5nU2l6ZT17e3BhZGRpbmdTaXplfX1cbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9e3t0aGlzLnBhZ2VDb250ZW50Qm9keVByb3BzQ2xhc3N9fVxuICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICB7eyNpZiAoYW5kIHRoaXMuY2FuRnVsbEhlaWdodCB0aGlzLmZ1bGxIZWlnaHQpfX1cbiAgICAgICAgICAgICAgICAgICAgICA8RXVpRmxleEdyb3VwXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImV1aS1mdWxsSGVpZ2h0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIEBndXR0ZXJTaXplPVwibm9uZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBAZGlyZWN0aW9uPVwiY29sdW1uXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIEByZXNwb25zaXZlPXt7ZmFsc2V9fVxuICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxFdWlGbGV4SXRlbVxuICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz17e2NsYXNzTmFtZXNcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoaWYgKGVxIHRoaXMuZnVsbEhlaWdodCB0cnVlKSBcImV1aS15U2Nyb2xsXCIpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKGlmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZXEgdGhpcy5mdWxsSGVpZ2h0IFwibm9zY3JvbGxcIikgXCJldWktZnVsbEhlaWdodFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICBAZ3Jvdz17e3RydWV9fVxuICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICB7e3lpZWxkIHRvPVwiZGVmYXVsdFwifX1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvRXVpRmxleEl0ZW0-XG4gICAgICAgICAgICAgICAgICAgICAgPC9FdWlGbGV4R3JvdXA-XG4gICAgICAgICAgICAgICAgICAgIHt7ZWxzZX19XG4gICAgICAgICAgICAgICAgICAgICAge3t5aWVsZCB0bz1cImRlZmF1bHRcIn19XG4gICAgICAgICAgICAgICAgICAgIHt7L2lmfX1cbiAgICAgICAgICAgICAgICAgIDwvRXVpUGFnZUNvbnRlbnRCb2R5PlxuICAgICAgICAgICAgICAgIDwvRXVpUGFnZUNvbnRlbnQ-XG4gICAgICAgICAgICAgICAge3sjaWYgaGFzQm90dG9tQmFyQmxvY2t9fVxuICAgICAgICAgICAgICAgICAgPEV1aUJvdHRvbUJhclxuICAgICAgICAgICAgICAgICAgICBAcGFkZGluZ1NpemU9e3twYWRkaW5nU2l6ZX19XG4gICAgICAgICAgICAgICAgICAgIEBwb3NpdGlvbj17e2lmXG4gICAgICAgICAgICAgICAgICAgICAgKGFuZCB0aGlzLmNhbkZ1bGxIZWlnaHQgdGhpcy5mdWxsSGVpZ2h0KVxuICAgICAgICAgICAgICAgICAgICAgIFwic3RhdGljXCJcbiAgICAgICAgICAgICAgICAgICAgICBcInN0aWNreVwiXG4gICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICA-XG4gICAgICAgICAgICAgICAgICAgIDxFdWlQYWdlQ29udGVudEJvZHlcbiAgICAgICAgICAgICAgICAgICAgICBAcGFkZGluZ1NpemU9XCJub25lXCJcbiAgICAgICAgICAgICAgICAgICAgICB7eyFAZ2xpbnQtZXhwZWN0LWVycm9yfX1cbiAgICAgICAgICAgICAgICAgICAgICBAcmVzdHJpY3RXaWR0aD17e3RoaXMucmVzdHJpY3RXaWR0aH19XG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICB7e3lpZWxkIHRvPVwiYm90dG9tQmFyXCJ9fVxuICAgICAgICAgICAgICAgICAgICA8L0V1aVBhZ2VDb250ZW50Qm9keT5cbiAgICAgICAgICAgICAgICAgIDwvRXVpQm90dG9tQmFyPlxuICAgICAgICAgICAgICAgIHt7L2lmfX1cbiAgICAgICAgICAgICAgPC9FdWlQYWdlQm9keT5cbiAgICAgICAgICAgIDwvRXVpUGFnZT5cbiAgICAgICAgICB7ey9pZn19XG4gICAgICAgIHt7L2lmfX1cbiAgICAgIHt7L2xldH19XG4gICAge3svbGV0fX1cbiAgPC90ZW1wbGF0ZT5cbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxlQUFlLHFCQUFxQjtBQUMzQyxTQUFTLE9BQU8sUUFBUSxvQkFBb0I7QUFFNUMsT0FBTyxXQUFXLHVDQUF1QztBQUN6RCx1Q0FBdUM7QUFDdkMsV0FBVztBQUNYLDJCQUEyQjtBQUMzQixtQkFBbUI7QUFDbkIsb0RBQW9EO0FBQ3BELDhFQUE4RTtBQUM5RSxnRUFBZ0U7QUFDaEUseUNBQXlDO0FBQ3pDLDhDQUE4QztBQUM5QyxTQUFTLEdBQUcsRUFBRSxFQUFFLEVBQUMsRUFBRSxRQUFRLHNCQUFzQjtBQUVqRCwwQ0FBMEM7QUFDMUMsK0NBQStDO0FBQy9DLFdBQVc7QUFDWCwwQkFBMEI7QUFDMUIscUJBQXFCO0FBQ3JCLG1CQUFtQjtBQUNuQixtQ0FBbUM7QUFDbkMsK0VBQStFO0FBQy9FLGtFQUFrRTtBQUNsRSxnRUFBZ0U7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Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUEyd0JWLENBQUEsRUFBQTtZQUFBLFdBQUEsSUFBVztZQUFYO2dCQUFBLE9BQUEsS0FBQSxTQUFBLENBQUEsRUFBVztZQUFEO1FBQUE7SUFBQSxDQTN3QkE7QUE0d0JaIn0"],"names":["TEMPLATES","BREAKPOINTS","EuiPageTemplate","Component","g","this","prototype","argOrDefaultDecorator","i","void 0","tracked","setIsWithinBreakpoints","value1","isWithinBreakpoints","minHeight","minHeight1","args","restrictWidth","width1","classes","fullHeightClass","fullHeight","canFullHeight","yScrollClass","template","pageBodyPropsClass","pageBodyProps","className","pageContentPropsClass","pageContentProps","pageContentBodyPropsClass","pageContentBodyProps","setComponentTemplate","precompileTemplate","strictMode","scope","argOrDefault","and","useIsWithinBreakpoints","or","eq","EuiPage","style","inlineStyles","EuiPageSideBar","EuiPageBody","EuiPageHeader","EuiPageContent","EuiPageContentBody","EuiFlexGroup","EuiFlexItem","classNames","EuiBottomBar"],"mappings":"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"}
1
+ {"version":3,"file":"eui-page-template.js","sources":["../../src/components/eui-page-template.gts"],"sourcesContent":["import Component from '@glimmer/component';\nimport { tracked } from '@glimmer/tracking';\n\nimport style from 'ember-style-modifier/modifiers/style';\n// import { tabbable } from 'tabbable';\n// import {\n// anchorPositionMapping,\n// displayMapping\n// } from '../../utils/css-mappings/eui-popover.ts';\n// import { paddingSizeMapping } from '../../utils/css-mappings/eui-panel.ts';\n// import { scheduleOnce, later, cancel } from '@ember/runloop';\n// import { assert } from '@ember/debug';\n// import { htmlSafe } from '@ember/template';\nimport { and, eq,or } from 'ember-truth-helpers';\n\n// import { action } from '@ember/object';\n// import { tracked } from '@glimmer/tracking';\n// import {\n// getTransitionTimings,\n// getWaitDuration,\n// performOnFrame\n// } from '../../utils/transition';\n// import { findPopoverPosition, getElementZIndex } from '../../utils/popover';\n// import { EuiPopoverPosition } from '../../utils/popover/types';\n// import { cascadingMenuKeys } from '../../utils/accesibility';\nimport argOrDefault, { argOrDefaultDecorator } from '../helpers/arg-or-default.ts';\nimport classNames from '../helpers/class-names.ts';\nimport inlineStyles from '../helpers/inline-styles.ts';\nimport useIsWithinBreakpoints from '../modifiers/use-is-within-breakpoints.ts';\nimport EuiBottomBar from './eui-bottom-bar.gts';\nimport EuiFlexGroup from './eui-flex-group.gts';\nimport EuiFlexItem from './eui-flex-item.gts';\nimport EuiPage from './eui-page.gts';\nimport EuiPageBody from './eui-page-body.gts';\nimport EuiPageContent from './eui-page-content.gts';\nimport EuiPageContentBody from './eui-page-content-body.gts';\nimport EuiPageHeader from './eui-page-header.gts';\nimport EuiPageSideBar from './eui-page-side-bar.gts';\n\nimport type { EuiBreakpointSize } from '../utils/breakpoint.ts';\nimport type { EuiButtomBarArgs } from './eui-bottom-bar';\nimport type { EuiPageBodySignature } from './eui-page-body';\nimport type { EuiPageContentSignature } from './eui-page-content';\nimport type { EuiPageContentBodySignature } from './eui-page-content-body';\nimport type { EuiPageHeaderSignature } from './eui-page-header';\nimport type { EuiPageSideBarSignature } from './eui-page-side-bar';\n\nexport const TEMPLATES = [\n 'default',\n 'centeredBody',\n 'centeredContent',\n 'empty'\n] as const;\n\nconst BREAKPOINTS: EuiBreakpointSize[] = ['m', 'l', 'xl'];\n\ninterface NormalProps {\n className?: string;\n}\n\nexport type EuiPageTemplateProps = {\n template?: (typeof TEMPLATES)[number];\n\n pageBodyProps: NormalProps & EuiPageBodySignature['Args'];\n pageContentProps: NormalProps & EuiPageContentSignature['Args'];\n pageContentBodyProps: NormalProps & EuiPageContentBodySignature['Args'];\n\n pageHeader: NormalProps & EuiPageHeaderSignature['Args'];\n\n pageSideBarProps: NormalProps & EuiPageSideBarSignature['Args'];\n\n /**\n * Adds a bottom bar to the page template\n */\n bottomBar?: any;\n\n /**\n * Adds a bottom bar to the page template\n */\n hasBottomBarBlock?: boolean;\n\n /**\n * Gets passed along to the #EuiBottomBar component if `bottomBar` has contents\n */\n bottomBarProps?: EuiButtomBarArgs;\n /* Stretches or restricts the height to 100% of the parent;\n * `true`: scrolls the EuiPageContentBody;\n * `noscroll`: removes all scroll ability;\n * Only works when `template = 'default | empty'` and breakpoint is `m` and above\n */\n fullHeight?: boolean;\n /**\n * Minimum height in which to enforce scrolling\n */\n minHeight?: number;\n\n restrictWidth?: boolean | number | string;\n\n grow?: boolean;\n paddingSize?: EuiPageSideBarSignature['Args']['paddingSize'];\n hasPageSideBarBlock?: boolean;\n hasPageHeaderPageTitleBlock?: boolean;\n hasPageHeaderDefaultBlock?: boolean;\n hasPageHeaderRightSideItemsBlock?: boolean;\n hasPageHeaderDescriptionBlock?: boolean;\n hasPageHeader?: boolean;\n hasPageContent?: boolean;\n hasPageContentBody?: boolean;\n};\n\nexport interface EuiPageTemplateSignature {\n Element: HTMLElement;\n Args: EuiPageTemplateProps;\n Blocks: {\n default: [];\n pageSideBar: [];\n pageHeaderPageTitle: [];\n pageHeaderDefault: [];\n pageHeaderDescription: [];\n pageHeaderRightSideItems: EuiPageHeaderSignature['Blocks']['rightSideItems'];\n bottomBar: [];\n };\n}\n\nexport default class EuiPageTemplate extends Component<EuiPageTemplateSignature> {\n // Defaults\n @argOrDefaultDecorator(false) fullHeight!: boolean;\n @argOrDefaultDecorator('default') template!: (typeof TEMPLATES)[number];\n\n @tracked isWithinBreakpoints = false;\n\n setIsWithinBreakpoints = (value: boolean) => {\n this.isWithinBreakpoints = value;\n };\n\n get minHeight() {\n const minHeight = this.args.minHeight ?? 460;\n\n if (typeof this.args.minHeight === 'number') {\n return `${minHeight}px`;\n }\n\n return minHeight;\n }\n\n get restrictWidth() {\n const width = this.args.restrictWidth ?? true;\n\n if (typeof this.args.restrictWidth === 'number') {\n return `${width}px`;\n }\n\n return width;\n }\n\n get classes() {\n return `euiPageTemplate ${this.fullHeightClass}`;\n }\n\n get fullHeightClass() {\n return this.fullHeight && this.canFullHeight ? 'eui-fullHeight ' : '';\n }\n\n get yScrollClass() {\n return this.fullHeight && this.canFullHeight ? 'eui-yScroll ' : '';\n }\n\n get canFullHeight() {\n return (\n this.isWithinBreakpoints &&\n (this.template === 'default' || this.template === 'empty')\n );\n }\n\n get pageBodyPropsClass() {\n return `${this.fullHeightClass} ${this.args.pageBodyProps?.className}`;\n }\n\n get pageContentPropsClass() {\n return `${this.yScrollClass} ${this.args.pageContentProps?.className}`;\n }\n\n get pageContentBodyPropsClass() {\n return `${this.fullHeightClass} ${this.args.pageContentBodyProps?.className}`;\n }\n\n <template>\n {{#let\n (argOrDefault @grow true)\n (argOrDefault @paddingSize \"l\")\n (and (argOrDefault @hasBottomBarBlock true) (has-block \"bottomBar\"))\n (and (argOrDefault @hasPageSideBarBlock true) (has-block \"pageSideBar\"))\n (and\n (argOrDefault @hasPageHeaderPageTitleBlock true)\n (has-block \"pageHeaderPageTitle\")\n )\n (and\n (argOrDefault @hasPageHeaderDefaultBlock true)\n (has-block \"pageHeaderDefault\")\n )\n (and\n (argOrDefault @hasPageHeaderRightSideItemsBlock true)\n (has-block \"pageHeaderRightSideItems\")\n )\n (and\n (argOrDefault @hasPageHeaderDescriptionBlock true)\n (has-block \"pageHeaderDescription\")\n )\n (modifier\n useIsWithinBreakpoints\n sizes=BREAKPOINTS\n isActive=true\n setIsWithinBreakpointsValue=this.setIsWithinBreakpoints\n )\n as |grow paddingSize hasBottomBarBlock hasPageSideBarBlock hasPageHeaderPageTitleBlock hasPageHeaderDefaultBlock hasPageHeaderRightSideItemsBlock hasPageHeaderDescriptionBlock isWithinBreakpointsModifier|\n }}\n {{#let\n (or\n @pageHeader\n hasPageHeaderPageTitleBlock\n hasPageHeaderDefaultBlock\n hasPageHeaderRightSideItemsBlock\n hasPageHeaderDescriptionBlock\n )\n as |hasPageHeader|\n }}\n {{#if (eq this.template \"centeredBody\")}}\n {{#if hasPageSideBarBlock}}\n <EuiPage\n class={{this.classes}}\n @paddingSize=\"none\"\n @grow={{grow}}\n {{isWithinBreakpointsModifier}}\n {{style (inlineStyles min-height=this.minHeight)}}\n ...attributes\n >\n <EuiPageSideBar\n class={{@pageSideBarProps.className}}\n @sticky={{true}}\n @paddingSize={{paddingSize}}\n >\n {{yield to=\"pageSideBar\"}}\n </EuiPageSideBar>\n <EuiPageBody\n class={{this.pageBodyPropsClass}}\n @paddingSize={{paddingSize}}\n >\n <EuiPageHeader\n {{!@glint-expect-error}}\n @restrictWidth={{this.restrictWidth}}\n @responsive={{@pageHeader.responsive}}\n @iconType={{@pageHeader.iconType}}\n @tabs={{@pageHeader.tabs}}\n @pageTitle={{@pageHeader.pageTitle}}\n @description={{@pageHeader.description}}\n @hasPageTitleBlock={{hasPageHeaderPageTitleBlock}}\n @hasDefaultBlock={{hasPageHeaderDefaultBlock}}\n @hasDescriptionBlock={{hasPageHeaderDescriptionBlock}}\n @hasRightSideItemsBlock={{hasPageHeaderRightSideItemsBlock}}\n >\n <:pageTitle>\n {{yield to=\"pageHeaderPageTitle\"}}\n </:pageTitle>\n <:default>\n {{yield to=\"pageHeaderDefault\"}}\n </:default>\n <:description>\n {{yield to=\"pageHeaderDescription\"}}\n </:description>\n <:rightSideItems as |item|>\n {{yield item to=\"pageHeaderRightSideItems\"}}\n </:rightSideItems>\n </EuiPageHeader>\n\n <EuiPageContent\n class={{this.pageContentPropsClass}}\n @verticalPosition=\"center\"\n @horizontalPosition=\"center\"\n @paddingSize={{paddingSize}}\n >\n <EuiPageContentBody\n class={{this.pageContentBodyPropsClass}}\n {{!@glint-expect-error}}\n @restrictWidth={{this.restrictWidth}}\n >\n {{#if (and this.canFullHeight this.fullHeight)}}\n <EuiFlexGroup\n class=\"eui-fullHeight\"\n @gutterSize=\"none\"\n @direction=\"column\"\n @responsive={{false}}\n >\n <EuiFlexItem\n class={{classNames\n (if (eq this.fullHeight true) \"eui-yScroll\")\n (if\n (eq this.fullHeight \"noscroll\") \"eui-fullHeight\"\n )\n }}\n @grow={{true}}\n >\n {{yield to=\"default\"}}\n </EuiFlexItem>\n </EuiFlexGroup>\n {{else}}\n {{yield to=\"default\"}}\n {{/if}}\n </EuiPageContentBody>\n </EuiPageContent>\n </EuiPageBody>\n </EuiPage>\n {{else}}\n <EuiPage\n class={{this.classes}}\n @paddingSize={{paddingSize}}\n @grow={{grow}}\n {{isWithinBreakpointsModifier}}\n {{style (inlineStyles min-height=this.minHeight)}}\n ...attributes\n >\n <EuiPageBody\n class={{this.pageBodyPropsClass}}\n {{!@glint-expect-error}}\n @restrictWidth={{this.restrictWidth}}\n >\n {{#if hasPageHeader}}\n <EuiPageHeader\n @restrictWidth={{false}}\n @bottomBorder={{@pageHeader.bottomBorder}}\n @paddingSize=\"none\"\n @responsive={{@pageHeader.responsive}}\n @iconType={{@pageHeader.iconType}}\n @tabs={{@pageHeader.tabs}}\n @pageTitle={{@pageHeader.pageTitle}}\n @description={{@pageHeader.description}}\n @hasPageTitleBlock={{hasPageHeaderPageTitleBlock}}\n @hasDefaultBlock={{hasPageHeaderDefaultBlock}}\n @hasDescriptionBlock={{hasPageHeaderDescriptionBlock}}\n @hasRightSideItemsBlock={{hasPageHeaderRightSideItemsBlock}}\n >\n <:pageTitle>\n {{yield to=\"pageHeaderPageTitle\"}}\n </:pageTitle>\n <:default>\n {{yield to=\"pageHeaderDefault\"}}\n </:default>\n <:description>\n {{yield to=\"pageHeaderDescription\"}}\n </:description>\n <:rightSideItems as |item|>\n {{yield item to=\"pageHeaderRightSideItems\"}}\n </:rightSideItems>\n </EuiPageHeader>\n {{/if}}\n <EuiPageBody>\n <EuiPageContent\n class={{this.pageContentPropsClass}}\n @verticalPosition=\"center\"\n @horizontalPosition=\"center\"\n @hasBorder={{@pageContentProps.hasBorder}}\n @hasShadow={{@pageContentProps.hasShadow}}\n @color={{@pageContentProps.color}}\n @borderRadius={{@pageContentProps.borderRadius}}\n @grow={{@pageContentProps.grow}}\n @role={{@pageContentProps.role}}\n @paddingSize={{paddingSize}}\n >\n <EuiPageContentBody\n class={{this.pageContentBodyPropsClass}}\n @paddingSize=\"none\"\n {{!@glint-expect-error}}\n @restrictWidth={{this.restrictWidth}}\n >\n {{#if (and this.canFullHeight this.fullHeight)}}\n <EuiFlexGroup\n class=\"eui-fullHeight\"\n @gutterSize=\"none\"\n @direction=\"column\"\n @responsive={{false}}\n >\n <EuiFlexItem\n class={{classNames\n (if (eq this.fullHeight true) \"eui-yScroll\")\n (if\n (eq this.fullHeight \"noscroll\") \"eui-fullHeight\"\n )\n }}\n @grow={{true}}\n >\n {{yield to=\"default\"}}\n </EuiFlexItem>\n </EuiFlexGroup>\n {{else}}\n {{yield to=\"default\"}}\n {{/if}}\n </EuiPageContentBody>\n </EuiPageContent>\n </EuiPageBody>\n </EuiPageBody>\n </EuiPage>\n {{/if}}\n {{else if (eq this.template \"centeredContent\")}}\n {{#if hasPageSideBarBlock}}\n <EuiPage\n class={{this.classes}}\n @paddingSize=\"none\"\n @grow={{grow}}\n {{isWithinBreakpointsModifier}}\n {{style (inlineStyles min-height=this.minHeight)}}\n ...attributes\n >\n <EuiPageSideBar\n class={{@pageSideBarProps.className}}\n @sticky={{true}}\n @paddingSize={{paddingSize}}\n >\n {{yield to=\"pageSideBar\"}}\n </EuiPageSideBar>\n <EuiPageBody\n @panelled={{true}}\n @paddingSize={{paddingSize}}\n class={{this.pageBodyPropsClass}}\n >\n {{#if hasPageHeader}}\n <EuiPageHeader\n {{!@glint-expect-error}}\n @restrictWidth={{this.restrictWidth}}\n @paddingSize={{@pageHeader.paddingSize}}\n @responsive={{@pageHeader.responsive}}\n @iconType={{@pageHeader.iconType}}\n @tabs={{@pageHeader.tabs}}\n @pageTitle={{@pageHeader.pageTitle}}\n @description={{@pageHeader.description}}\n @hasPageTitleBlock={{hasPageHeaderPageTitleBlock}}\n @hasDefaultBlock={{hasPageHeaderDefaultBlock}}\n @hasDescriptionBlock={{hasPageHeaderDescriptionBlock}}\n @hasRightSideItemsBlock={{hasPageHeaderRightSideItemsBlock}}\n >\n <:pageTitle>\n {{yield to=\"pageHeaderPageTitle\"}}\n </:pageTitle>\n <:default>\n {{yield to=\"pageHeaderDefault\"}}\n </:default>\n <:description>\n {{yield to=\"pageHeaderDescription\"}}\n </:description>\n <:rightSideItems as |item|>\n {{yield item to=\"pageHeaderRightSideItems\"}}\n </:rightSideItems>\n </EuiPageHeader>\n {{/if}}\n <EuiPageContent\n @verticalPosition=\"center\"\n @horizontalPosition=\"center\"\n @hasShadow={{false}}\n @color=\"subdued\"\n @paddingSize={{paddingSize}}\n class={{this.pageContentPropsClass}}\n >\n <EuiPageContentBody\n {{!@glint-expect-error}}\n @restrictWidth={{this.restrictWidth}}\n class={{this.pageContentBodyPropsClass}}\n >\n {{#if (and this.canFullHeight this.fullHeight)}}\n <EuiFlexGroup\n class=\"eui-fullHeight\"\n @gutterSize=\"none\"\n @direction=\"column\"\n @responsive={{false}}\n >\n <EuiFlexItem\n class={{classNames\n (if (eq this.fullHeight true) \"eui-yScroll\")\n (if\n (eq this.fullHeight \"noscroll\") \"eui-fullHeight\"\n )\n }}\n @grow={{true}}\n >\n {{yield to=\"default\"}}\n </EuiFlexItem>\n </EuiFlexGroup>\n {{else}}\n {{yield to=\"default\"}}\n {{/if}}\n </EuiPageContentBody>\n </EuiPageContent>\n </EuiPageBody>\n </EuiPage>\n {{else}}\n <EuiPage\n class={{this.classes}}\n @paddingSize=\"none\"\n @grow={{grow}}\n {{isWithinBreakpointsModifier}}\n {{style (inlineStyles min-height=this.minHeight)}}\n ...attributes\n >\n <EuiPageBody class={{this.pageBodyPropsClass}}>\n {{#if hasPageHeader}}\n <EuiPageHeader\n {{!@glint-expect-error}}\n @restrictWidth={{this.restrictWidth}}\n @paddingSize={{paddingSize}}\n @responsive={{@pageHeader.responsive}}\n @iconType={{@pageHeader.iconType}}\n @tabs={{@pageHeader.tabs}}\n @pageTitle={{@pageHeader.pageTitle}}\n @description={{@pageHeader.description}}\n @hasPageTitleBlock={{hasPageHeaderPageTitleBlock}}\n @hasDefaultBlock={{hasPageHeaderDefaultBlock}}\n @hasDescriptionBlock={{hasPageHeaderDescriptionBlock}}\n @hasRightSideItemsBlock={{hasPageHeaderRightSideItemsBlock}}\n >\n <:pageTitle>\n {{yield to=\"pageHeaderPageTitle\"}}\n </:pageTitle>\n <:default>\n {{yield to=\"pageHeaderDefault\"}}\n </:default>\n <:description>\n {{yield to=\"pageHeaderDescription\"}}\n </:description>\n <:rightSideItems as |item|>\n {{yield item to=\"pageHeaderRightSideItems\"}}\n </:rightSideItems>\n </EuiPageHeader>\n {{/if}}\n {{!template-lint-disable}}\n <EuiPageContent\n role={{null}}\n @borderRadius=\"none\"\n @hasShadow={{false}}\n @paddingSize={{paddingSize}}\n style=\"display: flex\"\n >\n {{!template-lint-enable}}\n <EuiPageContent\n @verticalPosition=\"center\"\n @horizontalPosition=\"center\"\n @hasShadow={{false}}\n @color=\"subdued\"\n @paddingSize={{paddingSize}}\n class={{this.pageContentPropsClass}}\n >\n <EuiPageContentBody\n {{!@glint-expect-error}}\n @restrictWidth={{this.restrictWidth}}\n class={{this.pageContentBodyPropsClass}}\n >\n {{#if (and this.canFullHeight this.fullHeight)}}\n <EuiFlexGroup\n class=\"eui-fullHeight\"\n @gutterSize=\"none\"\n @direction=\"column\"\n @responsive={{false}}\n >\n <EuiFlexItem\n class={{classNames\n (if (eq this.fullHeight true) \"eui-yScroll\")\n (if\n (eq this.fullHeight \"noscroll\") \"eui-fullHeight\"\n )\n }}\n @grow={{true}}\n >\n {{yield to=\"default\"}}\n </EuiFlexItem>\n </EuiFlexGroup>\n {{else}}\n {{yield to=\"default\"}}\n {{/if}}\n </EuiPageContentBody>\n </EuiPageContent>\n\n </EuiPageContent>\n </EuiPageBody>\n </EuiPage>\n {{/if}}\n {{else if (eq this.template \"empty\")}}\n {{#if hasPageSideBarBlock}}\n <EuiPage\n class={{this.classes}}\n @paddingSize=\"none\"\n @grow={{grow}}\n {{isWithinBreakpointsModifier}}\n {{style (inlineStyles min-height=this.minHeight)}}\n ...attributes\n >\n <EuiPageSideBar @sticky={{true}} @paddingSize={{paddingSize}}>\n {{yield to=\"pageSideBar\"}}\n </EuiPageSideBar>\n <EuiPageBody\n @paddingSize={{paddingSize}}\n class={{this.pageBodyPropsClass}}\n >\n {{#if hasPageHeader}}\n <EuiPageHeader\n {{!@glint-expect-error}}\n @restrictWidth={{this.restrictWidth}}\n @paddingSize={{@pageHeader.paddingSize}}\n @responsive={{@pageHeader.responsive}}\n @iconType={{@pageHeader.iconType}}\n @tabs={{@pageHeader.tabs}}\n @pageTitle={{@pageHeader.pageTitle}}\n @description={{@pageHeader.description}}\n @hasPageTitleBlock={{hasPageHeaderPageTitleBlock}}\n @hasDefaultBlock={{hasPageHeaderDefaultBlock}}\n @hasDescriptionBlock={{hasPageHeaderDescriptionBlock}}\n @hasRightSideItemsBlock={{hasPageHeaderRightSideItemsBlock}}\n >\n <:pageTitle>\n {{yield to=\"pageHeaderPageTitle\"}}\n </:pageTitle>\n <:default>\n {{yield to=\"pageHeaderDefault\"}}\n </:default>\n <:description>\n {{yield to=\"pageHeaderDescription\"}}\n </:description>\n <:rightSideItems as |item|>\n {{yield item to=\"pageHeaderRightSideItems\"}}\n </:rightSideItems>\n </EuiPageHeader>\n {{/if}}\n <EuiPageContent\n @hasBorder={{false}}\n @hasShadow={{false}}\n @paddingSize=\"none\"\n @color=\"transparent\"\n @borderRadius=\"none\"\n class={{this.pageContentPropsClass}}\n >\n <EuiPageContentBody\n {{!@glint-expect-error}}\n @restrictWidth={{this.restrictWidth}}\n class={{this.pageContentBodyPropsClass}}\n >\n {{#if (and this.canFullHeight this.fullHeight)}}\n <EuiFlexGroup\n class=\"eui-fullHeight\"\n @gutterSize=\"none\"\n @direction=\"column\"\n @responsive={{false}}\n >\n <EuiFlexItem\n class={{classNames\n (if (eq this.fullHeight true) \"eui-yScroll\")\n (if\n (eq this.fullHeight \"noscroll\") \"eui-fullHeight\"\n )\n }}\n @grow={{true}}\n >\n {{yield to=\"default\"}}\n </EuiFlexItem>\n </EuiFlexGroup>\n {{else}}\n {{yield to=\"default\"}}\n {{/if}}\n </EuiPageContentBody>\n </EuiPageContent>\n </EuiPageBody>\n </EuiPage>\n {{else}}\n <EuiPage\n class={{this.classes}}\n @paddingSize={{paddingSize}}\n @grow={{grow}}\n {{isWithinBreakpointsModifier}}\n {{style (inlineStyles min-height=this.minHeight)}}\n ...attributes\n >\n <EuiPageBody\n {{!@glint-expect-error}}\n @restrictWidth={{this.restrictWidth}}\n class={{this.pageBodyPropsClass}}\n >\n {{#if hasPageHeader}}\n <EuiPageHeader\n @bottomBorder={{@pageHeader.bottomBorder}}\n @restrictWidth={{false}}\n @paddingSize={{@pageHeader.paddingSize}}\n @responsive={{@pageHeader.responsive}}\n @iconType={{@pageHeader.iconType}}\n @tabs={{@pageHeader.tabs}}\n @pageTitle={{@pageHeader.pageTitle}}\n @description={{@pageHeader.description}}\n @hasPageTitleBlock={{hasPageHeaderPageTitleBlock}}\n @hasDefaultBlock={{hasPageHeaderDefaultBlock}}\n @hasDescriptionBlock={{hasPageHeaderDescriptionBlock}}\n @hasRightSideItemsBlock={{hasPageHeaderRightSideItemsBlock}}\n >\n <:pageTitle>\n {{yield to=\"pageHeaderPageTitle\"}}\n </:pageTitle>\n <:default>\n {{yield to=\"pageHeaderDefault\"}}\n </:default>\n <:description>\n {{yield to=\"pageHeaderDescription\"}}\n </:description>\n <:rightSideItems as |item|>\n {{yield item to=\"pageHeaderRightSideItems\"}}\n </:rightSideItems>\n </EuiPageHeader>\n {{/if}}\n <EuiPageContent\n @hasBorder={{false}}\n @hasShadow={{false}}\n @paddingSize=\"none\"\n @color=\"transparent\"\n @borderRadius=\"none\"\n class={{this.pageContentPropsClass}}\n >\n <EuiPageContentBody\n @restrictWidth={{false}}\n class={{this.pageContentBodyPropsClass}}\n >\n {{#if (and this.canFullHeight this.fullHeight)}}\n <EuiFlexGroup\n class=\"eui-fullHeight\"\n @gutterSize=\"none\"\n @direction=\"column\"\n @responsive={{false}}\n >\n <EuiFlexItem\n class={{classNames\n (if (eq this.fullHeight true) \"eui-yScroll\")\n (if\n (eq this.fullHeight \"noscroll\") \"eui-fullHeight\"\n )\n }}\n @grow={{true}}\n >\n {{yield to=\"default\"}}\n </EuiFlexItem>\n </EuiFlexGroup>\n {{else}}\n {{yield to=\"default\"}}\n {{/if}}\n </EuiPageContentBody>\n </EuiPageContent>\n </EuiPageBody>\n </EuiPage>\n {{/if}}\n {{else}}\n {{#if hasPageSideBarBlock}}\n <EuiPage\n class={{this.classes}}\n @paddingSize=\"none\"\n @grow={{grow}}\n {{isWithinBreakpointsModifier}}\n {{style (inlineStyles min-height=this.minHeight)}}\n ...attributes\n >\n <EuiPageSideBar\n class={{@pageSideBarProps.className}}\n @sticky={{true}}\n @paddingSize={{paddingSize}}\n >\n {{yield to=\"pageSideBar\"}}\n </EuiPageSideBar>\n <EuiPageBody\n @panelled={{true}}\n @paddingSize=\"none\"\n class={{this.pageBodyPropsClass}}\n >\n <EuiPageBody\n class={{this.pageBodyPropsClass}}\n @paddingSize={{paddingSize}}\n @tagName=\"div\"\n >\n {{#if hasPageHeader}}\n <EuiPageHeader\n @bottomBorder={{@pageHeader.bottomBorder}}\n {{!@glint-expect-error}}\n @restrictWidth={{this.restrictWidth}}\n @paddingSize={{@pageHeader.paddingSize}}\n @responsive={{@pageHeader.responsive}}\n @iconType={{@pageHeader.iconType}}\n @tabs={{@pageHeader.tabs}}\n @pageTitle={{@pageHeader.pageTitle}}\n @description={{@pageHeader.description}}\n @hasPageTitleBlock={{hasPageHeaderPageTitleBlock}}\n @hasDefaultBlock={{hasPageHeaderDefaultBlock}}\n @hasDescriptionBlock={{hasPageHeaderDescriptionBlock}}\n @hasRightSideItemsBlock={{hasPageHeaderRightSideItemsBlock}}\n >\n <:pageTitle>\n {{yield to=\"pageHeaderPageTitle\"}}\n </:pageTitle>\n <:default>\n {{yield to=\"pageHeaderDefault\"}}\n </:default>\n <:description>\n {{yield to=\"pageHeaderDescription\"}}\n </:description>\n <:rightSideItems as |item|>\n {{yield item to=\"pageHeaderRightSideItems\"}}\n </:rightSideItems>\n </EuiPageHeader>\n {{/if}}\n <EuiPageContent\n @hasShadow={{false}}\n @hasBorder={{false}}\n @color=\"transparent\"\n @borderRadius=\"none\"\n @paddingSize=\"none\"\n class={{this.pageContentPropsClass}}\n >\n <EuiPageContentBody\n {{!@glint-expect-error}}\n @restrictWidth={{this.restrictWidth}}\n class={{this.pageContentBodyPropsClass}}\n >\n {{#if (and this.canFullHeight this.fullHeight)}}\n <EuiFlexGroup\n class=\"eui-fullHeight\"\n @gutterSize=\"none\"\n @direction=\"column\"\n @responsive={{false}}\n >\n <EuiFlexItem\n class={{classNames\n (if (eq this.fullHeight true) \"eui-yScroll\")\n (if\n (eq this.fullHeight \"noscroll\") \"eui-fullHeight\"\n )\n }}\n @grow={{true}}\n >\n {{yield to=\"default\"}}\n </EuiFlexItem>\n </EuiFlexGroup>\n {{else}}\n {{yield to=\"default\"}}\n {{/if}}\n </EuiPageContentBody>\n </EuiPageContent>\n </EuiPageBody>\n {{#if hasBottomBarBlock}}\n <EuiBottomBar\n @paddingSize={{paddingSize}}\n @position={{if\n (and this.canFullHeight this.fullHeight)\n \"static\"\n \"sticky\"\n }}\n >\n <EuiPageContentBody\n @paddingSize=\"none\"\n {{!@glint-expect-error}}\n @restrictWidth={{this.restrictWidth}}\n >\n {{yield to=\"bottomBar\"}}\n </EuiPageContentBody>\n </EuiBottomBar>\n {{/if}}\n </EuiPageBody>\n </EuiPage>\n {{else}}\n <EuiPage\n class={{this.classes}}\n @paddingSize=\"none\"\n @grow={{grow}}\n {{isWithinBreakpointsModifier}}\n {{style (inlineStyles min-height=this.minHeight)}}\n ...attributes\n >\n <EuiPageBody class={{this.pageBodyPropsClass}}>\n {{#if hasPageHeader}}\n <EuiPageHeader\n {{!@glint-expect-error}}\n @restrictWidth={{this.restrictWidth}}\n @bottomBorder={{@pageHeader.bottomBorder}}\n @paddingSize={{paddingSize}}\n @responsive={{@pageHeader.responsive}}\n @iconType={{@pageHeader.iconType}}\n @tabs={{@pageHeader.tabs}}\n @pageTitle={{@pageHeader.pageTitle}}\n @description={{@pageHeader.description}}\n @hasPageTitleBlock={{hasPageHeaderPageTitleBlock}}\n @hasDefaultBlock={{hasPageHeaderDefaultBlock}}\n @hasDescriptionBlock={{hasPageHeaderDescriptionBlock}}\n @hasRightSideItemsBlock={{hasPageHeaderRightSideItemsBlock}}\n >\n <:pageTitle>\n {{yield to=\"pageHeaderPageTitle\"}}\n </:pageTitle>\n <:default>\n {{yield to=\"pageHeaderDefault\"}}\n </:default>\n <:description>\n {{yield to=\"pageHeaderDescription\"}}\n </:description>\n <:rightSideItems as |item|>\n {{yield item to=\"pageHeaderRightSideItems\"}}\n </:rightSideItems>\n </EuiPageHeader>\n {{/if}}\n <EuiPageContent\n @hasBorder={{if hasPageHeader false}}\n @hasShadow={{false}}\n @paddingSize=\"none\"\n @color=\"plain\"\n @borderRadius=\"none\"\n class={{this.pageContentPropsClass}}\n >\n <EuiPageContentBody\n {{!@glint-expect-error}}\n @restrictWidth={{this.restrictWidth}}\n @paddingSize={{paddingSize}}\n class={{this.pageContentBodyPropsClass}}\n >\n {{#if (and this.canFullHeight this.fullHeight)}}\n <EuiFlexGroup\n class=\"eui-fullHeight\"\n @gutterSize=\"none\"\n @direction=\"column\"\n @responsive={{false}}\n >\n <EuiFlexItem\n class={{classNames\n (if (eq this.fullHeight true) \"eui-yScroll\")\n (if\n (eq this.fullHeight \"noscroll\") \"eui-fullHeight\"\n )\n }}\n @grow={{true}}\n >\n {{yield to=\"default\"}}\n </EuiFlexItem>\n </EuiFlexGroup>\n {{else}}\n {{yield to=\"default\"}}\n {{/if}}\n </EuiPageContentBody>\n </EuiPageContent>\n {{#if hasBottomBarBlock}}\n <EuiBottomBar\n @paddingSize={{paddingSize}}\n @position={{if\n (and this.canFullHeight this.fullHeight)\n \"static\"\n \"sticky\"\n }}\n >\n <EuiPageContentBody\n @paddingSize=\"none\"\n {{!@glint-expect-error}}\n @restrictWidth={{this.restrictWidth}}\n >\n {{yield to=\"bottomBar\"}}\n </EuiPageContentBody>\n </EuiBottomBar>\n {{/if}}\n </EuiPageBody>\n </EuiPage>\n {{/if}}\n {{/if}}\n {{/let}}\n {{/let}}\n </template>\n}\n"],"names":["TEMPLATES","BREAKPOINTS","EuiPageTemplate","Component","g","prototype","argOrDefaultDecorator","i","void 0","tracked","setIsWithinBreakpoints","value","isWithinBreakpoints","minHeight","args","restrictWidth","width","classes","fullHeightClass","fullHeight","canFullHeight","yScrollClass","template","pageBodyPropsClass","pageBodyProps","className","pageContentPropsClass","pageContentProps","pageContentBodyPropsClass","pageContentBodyProps","setComponentTemplate","precompileTemplate","strictMode","scope","argOrDefault","and","useIsWithinBreakpoints","or","eq","EuiPage","style","inlineStyles","EuiPageSideBar","EuiPageBody","EuiPageHeader","EuiPageContent","EuiPageContentBody","EuiFlexGroup","EuiFlexItem","classNames","EuiBottomBar"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"eui-page.js","sources":["../../src/components/eui-page.gts"],"sourcesContent":["import { template } from \"@ember/template-compiler\";\nimport { concat } from '@ember/helper';\nimport style from 'ember-style-modifier/modifiers/style';\nimport argOrDefault from '../helpers/arg-or-default.ts';\nimport classNames from '../helpers/class-names.ts';\nimport euiPageRestrictWidth from '../helpers/eui-page-restrict-width.ts';\nimport inlineStyles from '../helpers/inline-styles.ts';\nimport type { TemplateOnlyComponent } from '@ember/component/template-only';\nexport interface EuiPageSignature {\n Element: HTMLDivElement;\n Args: {\n restrictWidth?: boolean;\n paddingSize?: 'none' | 's' | 'm' | 'l';\n grow?: boolean;\n direction?: 'row' | 'column';\n style?: Record<string, string>;\n };\n Blocks: {\n default: [];\n };\n}\nconst EuiPage: TemplateOnlyComponent<EuiPageSignature> = template(`\n {{#let\n (argOrDefault @restrictWidth false)\n (argOrDefault @paddingSize \"m\")\n (argOrDefault @grow true)\n (argOrDefault @direction \"row\")\n as |restrictWidth paddingSize grow direction|\n }}\n {{#let (euiPageRestrictWidth restrictWidth @style) as |styling|}}\n <div\n class={{classNames\n (if grow \"euiPage--grow\")\n (concat \"euiPage--\" styling.widthClassName)\n componentName=\"EuiPage\"\n paddingSize=paddingSize\n direction=direction\n }}\n ...attributes\n {{style\n (if styling.newStyle (inlineStyles styling.newStyle))\n (inlineStyles min-height=\"460px;\")\n }}\n >\n {{yield}}\n </div>\n {{/let}}\n {{/let}}\n`, {\n eval () {\n return eval(arguments[0]);\n }\n});\nexport default EuiPage;\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9iZXRvY2FudHU5My9wcnlzbWV4L2VtYmVyLWV1aS9wYWNrYWdlcy9jb3JlL3NyYy9jb21wb25lbnRzL2V1aS1wYWdlLmd0cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjb25jYXQgfSBmcm9tICdAZW1iZXIvaGVscGVyJztcblxuaW1wb3J0IHN0eWxlIGZyb20gJ2VtYmVyLXN0eWxlLW1vZGlmaWVyL21vZGlmaWVycy9zdHlsZSc7XG5cbmltcG9ydCBhcmdPckRlZmF1bHQgZnJvbSAnLi4vaGVscGVycy9hcmctb3ItZGVmYXVsdC50cyc7XG5pbXBvcnQgY2xhc3NOYW1lcyBmcm9tICcuLi9oZWxwZXJzL2NsYXNzLW5hbWVzLnRzJztcbmltcG9ydCBldWlQYWdlUmVzdHJpY3RXaWR0aCBmcm9tICcuLi9oZWxwZXJzL2V1aS1wYWdlLXJlc3RyaWN0LXdpZHRoLnRzJztcbmltcG9ydCBpbmxpbmVTdHlsZXMgZnJvbSAnLi4vaGVscGVycy9pbmxpbmUtc3R5bGVzLnRzJztcblxuaW1wb3J0IHR5cGUgeyBUZW1wbGF0ZU9ubHlDb21wb25lbnQgfSBmcm9tICdAZW1iZXIvY29tcG9uZW50L3RlbXBsYXRlLW9ubHknO1xuXG5leHBvcnQgaW50ZXJmYWNlIEV1aVBhZ2VTaWduYXR1cmUge1xuICBFbGVtZW50OiBIVE1MRGl2RWxlbWVudDtcbiAgQXJnczoge1xuICAgIHJlc3RyaWN0V2lkdGg_OiBib29sZWFuO1xuICAgIHBhZGRpbmdTaXplPzogJ25vbmUnIHwgJ3MnIHwgJ20nIHwgJ2wnO1xuICAgIGdyb3c_OiBib29sZWFuO1xuICAgIGRpcmVjdGlvbj86ICdyb3cnIHwgJ2NvbHVtbic7XG4gICAgc3R5bGU_OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc-O1xuICB9O1xuICBCbG9ja3M6IHtcbiAgICBkZWZhdWx0OiBbXTtcbiAgfTtcbn1cblxuY29uc3QgRXVpUGFnZTogVGVtcGxhdGVPbmx5Q29tcG9uZW50PEV1aVBhZ2VTaWduYXR1cmU-ID0gPHRlbXBsYXRlPlxuICB7eyNsZXRcbiAgICAoYXJnT3JEZWZhdWx0IEByZXN0cmljdFdpZHRoIGZhbHNlKVxuICAgIChhcmdPckRlZmF1bHQgQHBhZGRpbmdTaXplIFwibVwiKVxuICAgIChhcmdPckRlZmF1bHQgQGdyb3cgdHJ1ZSlcbiAgICAoYXJnT3JEZWZhdWx0IEBkaXJlY3Rpb24gXCJyb3dcIilcbiAgICBhcyB8cmVzdHJpY3RXaWR0aCBwYWRkaW5nU2l6ZSBncm93IGRpcmVjdGlvbnxcbiAgfX1cbiAgICB7eyNsZXQgKGV1aVBhZ2VSZXN0cmljdFdpZHRoIHJlc3RyaWN0V2lkdGggQHN0eWxlKSBhcyB8c3R5bGluZ3x9fVxuICAgICAgPGRpdlxuICAgICAgICBjbGFzcz17e2NsYXNzTmFtZXNcbiAgICAgICAgICAoaWYgZ3JvdyBcImV1aVBhZ2UtLWdyb3dcIilcbiAgICAgICAgICAoY29uY2F0IFwiZXVpUGFnZS0tXCIgc3R5bGluZy53aWR0aENsYXNzTmFtZSlcbiAgICAgICAgICBjb21wb25lbnROYW1lPVwiRXVpUGFnZVwiXG4gICAgICAgICAgcGFkZGluZ1NpemU9cGFkZGluZ1NpemVcbiAgICAgICAgICBkaXJlY3Rpb249ZGlyZWN0aW9uXG4gICAgICAgIH19XG4gICAgICAgIC4uLmF0dHJpYnV0ZXNcbiAgICAgICAge3tzdHlsZVxuICAgICAgICAgIChpZiBzdHlsaW5nLm5ld1N0eWxlIChpbmxpbmVTdHlsZXMgc3R5bGluZy5uZXdTdHlsZSkpXG4gICAgICAgICAgKGlubGluZVN0eWxlcyBtaW4taGVpZ2h0PVwiNDYwcHg7XCIpXG4gICAgICAgIH19XG4gICAgICA-XG4gICAgICAgIHt7eWllbGR9fVxuICAgICAgPC9kaXY-XG4gICAge3svbGV0fX1cbiAge3svbGV0fX1cbjwvdGVtcGxhdGU-O1xuXG5leHBvcnQgZGVmYXVsdCBFdWlQYWdlO1xuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxTQUFTLE1BQU0sUUFBUSxnQkFBZ0I7QUFFdkMsT0FBTyxXQUFXLHVDQUF1QztBQUV6RCxPQUFPLGtCQUFrQiwrQkFBK0I7QUFDeEQsT0FBTyxnQkFBZ0IsNEJBQTRCO0FBQ25ELE9BQU8sMEJBQTBCLHdDQUF3QztBQUN6RSxPQUFPLGtCQUFrQiw4QkFBOEI7QUFFdkQsY0FBYyxxQkFBcUIsUUFBUSxpQ0FBaUM7QUFFNUUsaUJBQWlCO0lBQ2YsU0FBUztJQUNUO1FBQ0UsZ0JBQWdCLE9BQU87UUFDdkIsY0FBYyxTQUFTLE1BQU0sTUFBTTtRQUNuQyxPQUFPLE9BQU87UUFDZCxZQUFZLFFBQVE7UUFDcEIsUUFBUSxPQUFPLE1BQU0sRUFBRSxNQUFNOztJQUUvQjtRQUNFOzs7QUFJSixNQUFNLFNBQVMsc0JBQXNCLG9CQUFvQixTQUFVLENBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQTJCbkUsQ0FBQSxFQUFBO0lBQUE7UUFBQSxPQUFBLEtBQUEsU0FBQSxDQUFBLEVBQVc7SUFBRDtBQUFBO0FBRVYsZUFBZSxRQUFRIn0"],"names":["EuiPage","setComponentTemplate","precompileTemplate","strictMode","scope","argOrDefault","euiPageRestrictWidth","classNames","concat","style","inlineStyles","templateOnly"],"mappings":";;;;;;;;;;AAyBA,MAAMA,OAA+B,GAAAC,oBAAA,CAAoBC,kBAAA,CA2BzD,umBAAA,EAAA;EAAAC,UAAA,EAAA,IAAA;AAAAC,EAAAA,KAAA,EAAAA,OAAA;IAAAC,YAAA;IAAAC,oBAAA;IAAAC,UAAA;IAAAC,MAAA;IAAAC,KAAA;AAAAC,IAAAA,YAAAA;AAAA,GAAA,CAAA;AAAU,CAAA,CAAA,EAAAC,YAAA,EAAA;;;;"}
1
+ {"version":3,"file":"eui-page.js","sources":["../../src/components/eui-page.gts"],"sourcesContent":["import { concat } from '@ember/helper';\n\nimport style from 'ember-style-modifier/modifiers/style';\n\nimport argOrDefault from '../helpers/arg-or-default.ts';\nimport classNames from '../helpers/class-names.ts';\nimport euiPageRestrictWidth from '../helpers/eui-page-restrict-width.ts';\nimport inlineStyles from '../helpers/inline-styles.ts';\n\nimport type { TemplateOnlyComponent } from '@ember/component/template-only';\n\nexport interface EuiPageSignature {\n Element: HTMLDivElement;\n Args: {\n restrictWidth?: boolean;\n paddingSize?: 'none' | 's' | 'm' | 'l';\n grow?: boolean;\n direction?: 'row' | 'column';\n style?: Record<string, string>;\n };\n Blocks: {\n default: [];\n };\n}\n\nconst EuiPage: TemplateOnlyComponent<EuiPageSignature> = <template>\n {{#let\n (argOrDefault @restrictWidth false)\n (argOrDefault @paddingSize \"m\")\n (argOrDefault @grow true)\n (argOrDefault @direction \"row\")\n as |restrictWidth paddingSize grow direction|\n }}\n {{#let (euiPageRestrictWidth restrictWidth @style) as |styling|}}\n <div\n class={{classNames\n (if grow \"euiPage--grow\")\n (concat \"euiPage--\" styling.widthClassName)\n componentName=\"EuiPage\"\n paddingSize=paddingSize\n direction=direction\n }}\n ...attributes\n {{style\n (if styling.newStyle (inlineStyles styling.newStyle))\n (inlineStyles min-height=\"460px;\")\n }}\n >\n {{yield}}\n </div>\n {{/let}}\n {{/let}}\n</template>;\n\nexport default EuiPage;\n"],"names":["EuiPage","setComponentTemplate","precompileTemplate","strictMode","scope","argOrDefault","euiPageRestrictWidth","classNames","concat","style","inlineStyles","templateOnly"],"mappings":";;;;;;;;;;AAyBA,MAAMA,OAAmD,GAAAC,oBAAA,CAAAC,kBAAA,CA2BzD,umBAAA,EAAA;EAAAC,UAAA,EAAA,IAAA;AAAAC,EAAAA,KAAA,EAAAA,OAAA;IAAAC,YAAA;IAAAC,oBAAA;IAAAC,UAAA;IAAAC,MAAA;IAAAC,KAAA;AAAAC,IAAAA;AAAA,GAAA;AAAU,CAAA,CAAA,EAAAC,YAAA,EAAA;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"button-wrapper.js","sources":["../../../src/components/eui-pagination/button-wrapper.gts"],"sourcesContent":["import { template } from \"@ember/template-compiler\";\nimport { fn } from '@ember/helper';\nimport { on } from '@ember/modifier';\nimport { eq } from 'ember-truth-helpers';\nimport argOrDefault from '../../helpers/arg-or-default.ts';\nimport EuiPaginationButton from '../eui-pagination-button.gts';\nimport type { TemplateOnlyComponent } from '@ember/component/template-only';\nexport interface EuiPaginationButtonWrapperSignature {\n Args: {\n inList?: boolean;\n pageIndex: number;\n props: {\n pageCount?: number;\n activePage?: number;\n ariaControls?: string;\n safeClick: (page: number) => void;\n };\n };\n}\nconst ButtonWrapper: TemplateOnlyComponent<EuiPaginationButtonWrapperSignature> = template(`\n {{#if (argOrDefault @inList true)}}\n <li>\n <EuiPaginationButton\n @isActive={{eq @pageIndex @props.activePage}}\n @totalPages={{@props.pageCount}}\n @pageIndex={{@pageIndex}}\n aria-controls={{@props.ariaControls}}\n @hideOnMobile={{true}}\n {{on \"click\" (fn @props.safeClick @pageIndex)}}\n />\n </li>\n {{else}}\n <EuiPaginationButton\n @isActive={{eq @pageIndex @props.activePage}}\n @totalPages={{@props.pageCount}}\n @pageIndex={{@pageIndex}}\n aria-controls={{@props.ariaControls}}\n @hideOnMobile={{true}}\n {{on \"click\" (fn @props.safeClick @pageIndex)}}\n />\n {{/if}}\n `, {\n eval () {\n return eval(arguments[0]);\n }\n});\nexport default ButtonWrapper;\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9iZXRvY2FudHU5My9wcnlzbWV4L2VtYmVyLWV1aS9wYWNrYWdlcy9jb3JlL3NyYy9jb21wb25lbnRzL2V1aS1wYWdpbmF0aW9uL2J1dHRvbi13cmFwcGVyLmd0cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBmbiB9IGZyb20gJ0BlbWJlci9oZWxwZXInO1xuaW1wb3J0IHsgb24gfSBmcm9tICdAZW1iZXIvbW9kaWZpZXInO1xuXG5pbXBvcnQgeyBlcSB9IGZyb20gJ2VtYmVyLXRydXRoLWhlbHBlcnMnO1xuXG5pbXBvcnQgYXJnT3JEZWZhdWx0IGZyb20gJy4uLy4uL2hlbHBlcnMvYXJnLW9yLWRlZmF1bHQudHMnO1xuaW1wb3J0IEV1aVBhZ2luYXRpb25CdXR0b24gZnJvbSAnLi4vZXVpLXBhZ2luYXRpb24tYnV0dG9uLmd0cyc7XG5cbmltcG9ydCB0eXBlIHsgVGVtcGxhdGVPbmx5Q29tcG9uZW50IH0gZnJvbSAnQGVtYmVyL2NvbXBvbmVudC90ZW1wbGF0ZS1vbmx5JztcblxuZXhwb3J0IGludGVyZmFjZSBFdWlQYWdpbmF0aW9uQnV0dG9uV3JhcHBlclNpZ25hdHVyZSB7XG4gIEFyZ3M6IHtcbiAgICBpbkxpc3Q_OiBib29sZWFuO1xuICAgIHBhZ2VJbmRleDogbnVtYmVyO1xuICAgIHByb3BzOiB7XG4gICAgICBwYWdlQ291bnQ_OiBudW1iZXI7XG4gICAgICBhY3RpdmVQYWdlPzogbnVtYmVyO1xuICAgICAgYXJpYUNvbnRyb2xzPzogc3RyaW5nO1xuICAgICAgc2FmZUNsaWNrOiAocGFnZTogbnVtYmVyKSA9PiB2b2lkO1xuICAgIH07XG4gIH07XG59XG5cbmNvbnN0IEJ1dHRvbldyYXBwZXI6IFRlbXBsYXRlT25seUNvbXBvbmVudDxFdWlQYWdpbmF0aW9uQnV0dG9uV3JhcHBlclNpZ25hdHVyZT4gPVxuICA8dGVtcGxhdGU-XG4gICAge3sjaWYgKGFyZ09yRGVmYXVsdCBAaW5MaXN0IHRydWUpfX1cbiAgICAgIDxsaT5cbiAgICAgICAgPEV1aVBhZ2luYXRpb25CdXR0b25cbiAgICAgICAgICBAaXNBY3RpdmU9e3tlcSBAcGFnZUluZGV4IEBwcm9wcy5hY3RpdmVQYWdlfX1cbiAgICAgICAgICBAdG90YWxQYWdlcz17e0Bwcm9wcy5wYWdlQ291bnR9fVxuICAgICAgICAgIEBwYWdlSW5kZXg9e3tAcGFnZUluZGV4fX1cbiAgICAgICAgICBhcmlhLWNvbnRyb2xzPXt7QHByb3BzLmFyaWFDb250cm9sc319XG4gICAgICAgICAgQGhpZGVPbk1vYmlsZT17e3RydWV9fVxuICAgICAgICAgIHt7b24gXCJjbGlja1wiIChmbiBAcHJvcHMuc2FmZUNsaWNrIEBwYWdlSW5kZXgpfX1cbiAgICAgICAgLz5cbiAgICAgIDwvbGk-XG4gICAge3tlbHNlfX1cbiAgICAgIDxFdWlQYWdpbmF0aW9uQnV0dG9uXG4gICAgICAgIEBpc0FjdGl2ZT17e2VxIEBwYWdlSW5kZXggQHByb3BzLmFjdGl2ZVBhZ2V9fVxuICAgICAgICBAdG90YWxQYWdlcz17e0Bwcm9wcy5wYWdlQ291bnR9fVxuICAgICAgICBAcGFnZUluZGV4PXt7QHBhZ2VJbmRleH19XG4gICAgICAgIGFyaWEtY29udHJvbHM9e3tAcHJvcHMuYXJpYUNvbnRyb2xzfX1cbiAgICAgICAgQGhpZGVPbk1vYmlsZT17e3RydWV9fVxuICAgICAgICB7e29uIFwiY2xpY2tcIiAoZm4gQHByb3BzLnNhZmVDbGljayBAcGFnZUluZGV4KX19XG4gICAgICAvPlxuICAgIHt7L2lmfX1cbiAgPC90ZW1wbGF0ZT47XG5cbmV4cG9ydCBkZWZhdWx0IEJ1dHRvbldyYXBwZXI7XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLFNBQVMsRUFBRSxRQUFRLGdCQUFnQjtBQUNuQyxTQUFTLEVBQUUsUUFBUSxrQkFBa0I7QUFFckMsU0FBUyxFQUFFLFFBQVEsc0JBQXNCO0FBRXpDLE9BQU8sa0JBQWtCLGtDQUFrQztBQUMzRCxPQUFPLHlCQUF5QiwrQkFBK0I7QUFFL0QsY0FBYyxxQkFBcUIsUUFBUSxpQ0FBaUM7QUFFNUUsaUJBQWlCO0lBQ2Y7UUFDRSxTQUFTLE9BQU87UUFDaEIsV0FBVyxNQUFNO1FBQ2pCO1lBQ0UsWUFBWSxNQUFNO1lBQ2xCLGFBQWEsTUFBTTtZQUNuQixlQUFlLE1BQU07WUFDckIsWUFBWSxNQUFNLE1BQU0sS0FBSyxJQUFJOzs7O0FBS3ZDLE1BQU0sZUFBZSxzQkFBc0IsdUNBQ3pDLFNBQVUsQ0FBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQXNCVixDQUFBLEVBQUE7SUFBQTtRQUFBLE9BQUEsS0FBQSxTQUFBLENBQUEsRUFBVztJQUFEO0FBQUE7QUFFWixlQUFlLGNBQWMifQ"],"names":["ButtonWrapper","setComponentTemplate","precompileTemplate","strictMode","scope","argOrDefault","EuiPaginationButton","eq","on","fn","templateOnly"],"mappings":";;;;;;;;;AAuBA,MAAMA,aAAqC,GAAAC,oBAAA,CACzCC,kBAAA,CAsBA,mlBAAA,EAAA;EAAAC,UAAA,EAAA,IAAA;AAAAC,EAAAA,KAAA,EAAAA,OAAA;IAAAC,YAAA;IAAAC,mBAAA;IAAAC,EAAA;IAAAC,EAAA;AAAAC,IAAAA,EAAAA;AAAA,GAAA,CAAA;AAAU,CAAA,CAAA,EAAAC,YAAA,EAAA;;;;"}
1
+ {"version":3,"file":"button-wrapper.js","sources":["../../../src/components/eui-pagination/button-wrapper.gts"],"sourcesContent":["import { fn } from '@ember/helper';\nimport { on } from '@ember/modifier';\n\nimport { eq } from 'ember-truth-helpers';\n\nimport argOrDefault from '../../helpers/arg-or-default.ts';\nimport EuiPaginationButton from '../eui-pagination-button.gts';\n\nimport type { TemplateOnlyComponent } from '@ember/component/template-only';\n\nexport interface EuiPaginationButtonWrapperSignature {\n Args: {\n inList?: boolean;\n pageIndex: number;\n props: {\n pageCount?: number;\n activePage?: number;\n ariaControls?: string;\n safeClick: (page: number) => void;\n };\n };\n}\n\nconst ButtonWrapper: TemplateOnlyComponent<EuiPaginationButtonWrapperSignature> =\n <template>\n {{#if (argOrDefault @inList true)}}\n <li>\n <EuiPaginationButton\n @isActive={{eq @pageIndex @props.activePage}}\n @totalPages={{@props.pageCount}}\n @pageIndex={{@pageIndex}}\n aria-controls={{@props.ariaControls}}\n @hideOnMobile={{true}}\n {{on \"click\" (fn @props.safeClick @pageIndex)}}\n />\n </li>\n {{else}}\n <EuiPaginationButton\n @isActive={{eq @pageIndex @props.activePage}}\n @totalPages={{@props.pageCount}}\n @pageIndex={{@pageIndex}}\n aria-controls={{@props.ariaControls}}\n @hideOnMobile={{true}}\n {{on \"click\" (fn @props.safeClick @pageIndex)}}\n />\n {{/if}}\n </template>;\n\nexport default ButtonWrapper;\n"],"names":["ButtonWrapper","setComponentTemplate","precompileTemplate","strictMode","scope","argOrDefault","EuiPaginationButton","eq","on","fn","templateOnly"],"mappings":";;;;;;;;;AAuBA,MAAMA,aACJ,GAAAC,oBAAA,CAAAC,kBAAA,CAsBA,mlBAAA,EAAA;EAAAC,UAAA,EAAA,IAAA;AAAAC,EAAAA,KAAA,EAAAA,OAAA;IAAAC,YAAA;IAAAC,mBAAA;IAAAC,EAAA;IAAAC,EAAA;AAAAC,IAAAA;AAAA,GAAA;AAAU,CAAA,CAAA,EAAAC,YAAA,EAAA;;;;"}
@@ -1,4 +1,4 @@
1
- import { hash, fn } from '@ember/helper';
1
+ import { fn, hash } from '@ember/helper';
2
2
  import { on } from '@ember/modifier';
3
3
  import add from 'ember-math-helpers/helpers/add';
4
4
  import sub from 'ember-math-helpers/helpers/sub';
@@ -1 +1 @@
1
- {"version":3,"file":"next-button.js","sources":["../../../src/components/eui-pagination/next-button.gts"],"sourcesContent":["import { template } from \"@ember/template-compiler\";\nimport { fn, hash } from '@ember/helper';\nimport { on } from '@ember/modifier';\nimport add from 'ember-math-helpers/helpers/add';\nimport sub from 'ember-math-helpers/helpers/sub';\nimport { eq } from 'ember-truth-helpers';\nimport EuiButtonIcon from '../eui-button-icon.gts';\nimport EuiI18n from '../eui-i18n.gts';\nimport type { EuiButtonIconSignature } from '../eui-button-icon';\nimport type { SafeClickHandler } from '../eui-pagination';\nimport type { TemplateOnlyComponent } from '@ember/component/template-only';\nexport interface EuiPaginationNextButtonSignature {\n Element: EuiButtonIconSignature['Element'];\n Args: {\n activePage: number;\n safeClick: SafeClickHandler;\n pageCount: number;\n props: {\n disabled?: boolean;\n 'aria-controls'?: string;\n href?: string;\n };\n };\n}\nconst NextButton: TemplateOnlyComponent<EuiPaginationNextButtonSignature> = template(`\n <EuiI18n\n @token=\"euiPagination.nextPage\"\n @default=\"Next page, {page}\"\n @values={{hash page=(add @activePage 2)}}\n as |Token|\n >\n <Token as |nextPage|>\n <EuiI18n\n @token=\"euiPagination.disabledNextPage\"\n @default=\"Next page\"\n as |InnerToken|\n >\n <InnerToken as |disabledNextPage|>\n <EuiButtonIcon\n {{on \"click\" (fn @safeClick (add @activePage 1))}}\n @iconType=\"arrowRight\"\n @color=\"text\"\n aria-label={{if\n (eq @activePage (sub @pageCount 1))\n disabledNextPage\n nextPage\n }}\n aria-controls={{if @props.aria-controls @props.aria-controls}}\n href={{if @props.href @props.href}}\n disabled={{eq @props.disabled true}}\n ...attributes\n />\n </InnerToken>\n </EuiI18n>\n </Token>\n </EuiI18n>\n `, {\n eval () {\n return eval(arguments[0]);\n }\n});\nexport default NextButton;\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9iZXRvY2FudHU5My9wcnlzbWV4L2VtYmVyLWV1aS9wYWNrYWdlcy9jb3JlL3NyYy9jb21wb25lbnRzL2V1aS1wYWdpbmF0aW9uL25leHQtYnV0dG9uLmd0cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBmbiwgaGFzaCB9IGZyb20gJ0BlbWJlci9oZWxwZXInO1xuaW1wb3J0IHsgb24gfSBmcm9tICdAZW1iZXIvbW9kaWZpZXInO1xuXG5pbXBvcnQgYWRkIGZyb20gJ2VtYmVyLW1hdGgtaGVscGVycy9oZWxwZXJzL2FkZCc7XG5pbXBvcnQgc3ViIGZyb20gJ2VtYmVyLW1hdGgtaGVscGVycy9oZWxwZXJzL3N1Yic7XG5pbXBvcnQgeyBlcSB9IGZyb20gJ2VtYmVyLXRydXRoLWhlbHBlcnMnO1xuXG5pbXBvcnQgRXVpQnV0dG9uSWNvbiBmcm9tICcuLi9ldWktYnV0dG9uLWljb24uZ3RzJztcbmltcG9ydCBFdWlJMThuIGZyb20gJy4uL2V1aS1pMThuLmd0cyc7XG5cbmltcG9ydCB0eXBlIHsgRXVpQnV0dG9uSWNvblNpZ25hdHVyZSB9IGZyb20gJy4uL2V1aS1idXR0b24taWNvbic7XG5pbXBvcnQgdHlwZSB7IFNhZmVDbGlja0hhbmRsZXIgfSBmcm9tICcuLi9ldWktcGFnaW5hdGlvbic7XG5pbXBvcnQgdHlwZSB7IFRlbXBsYXRlT25seUNvbXBvbmVudCB9IGZyb20gJ0BlbWJlci9jb21wb25lbnQvdGVtcGxhdGUtb25seSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRXVpUGFnaW5hdGlvbk5leHRCdXR0b25TaWduYXR1cmUge1xuICBFbGVtZW50OiBFdWlCdXR0b25JY29uU2lnbmF0dXJlWydFbGVtZW50J107XG4gIEFyZ3M6IHtcbiAgICBhY3RpdmVQYWdlOiBudW1iZXI7XG4gICAgc2FmZUNsaWNrOiBTYWZlQ2xpY2tIYW5kbGVyO1xuICAgIHBhZ2VDb3VudDogbnVtYmVyO1xuICAgIHByb3BzOiB7XG4gICAgICBkaXNhYmxlZD86IGJvb2xlYW47XG4gICAgICAnYXJpYS1jb250cm9scyc_OiBzdHJpbmc7XG4gICAgICBocmVmPzogc3RyaW5nO1xuICAgIH07XG4gIH07XG59XG5cbmNvbnN0IE5leHRCdXR0b246IFRlbXBsYXRlT25seUNvbXBvbmVudDxFdWlQYWdpbmF0aW9uTmV4dEJ1dHRvblNpZ25hdHVyZT4gPVxuICA8dGVtcGxhdGU-XG4gICAgPEV1aUkxOG5cbiAgICAgIEB0b2tlbj1cImV1aVBhZ2luYXRpb24ubmV4dFBhZ2VcIlxuICAgICAgQGRlZmF1bHQ9XCJOZXh0IHBhZ2UsIHtwYWdlfVwiXG4gICAgICBAdmFsdWVzPXt7aGFzaCBwYWdlPShhZGQgQGFjdGl2ZVBhZ2UgMil9fVxuICAgICAgYXMgfFRva2VufFxuICAgID5cbiAgICAgIDxUb2tlbiBhcyB8bmV4dFBhZ2V8PlxuICAgICAgICA8RXVpSTE4blxuICAgICAgICAgIEB0b2tlbj1cImV1aVBhZ2luYXRpb24uZGlzYWJsZWROZXh0UGFnZVwiXG4gICAgICAgICAgQGRlZmF1bHQ9XCJOZXh0IHBhZ2VcIlxuICAgICAgICAgIGFzIHxJbm5lclRva2VufFxuICAgICAgICA-XG4gICAgICAgICAgPElubmVyVG9rZW4gYXMgfGRpc2FibGVkTmV4dFBhZ2V8PlxuICAgICAgICAgICAgPEV1aUJ1dHRvbkljb25cbiAgICAgICAgICAgICAge3tvbiBcImNsaWNrXCIgKGZuIEBzYWZlQ2xpY2sgKGFkZCBAYWN0aXZlUGFnZSAxKSl9fVxuICAgICAgICAgICAgICBAaWNvblR5cGU9XCJhcnJvd1JpZ2h0XCJcbiAgICAgICAgICAgICAgQGNvbG9yPVwidGV4dFwiXG4gICAgICAgICAgICAgIGFyaWEtbGFiZWw9e3tpZlxuICAgICAgICAgICAgICAgIChlcSBAYWN0aXZlUGFnZSAoc3ViIEBwYWdlQ291bnQgMSkpXG4gICAgICAgICAgICAgICAgZGlzYWJsZWROZXh0UGFnZVxuICAgICAgICAgICAgICAgIG5leHRQYWdlXG4gICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgIGFyaWEtY29udHJvbHM9e3tpZiBAcHJvcHMuYXJpYS1jb250cm9scyBAcHJvcHMuYXJpYS1jb250cm9sc319XG4gICAgICAgICAgICAgIGhyZWY9e3tpZiBAcHJvcHMuaHJlZiBAcHJvcHMuaHJlZn19XG4gICAgICAgICAgICAgIGRpc2FibGVkPXt7ZXEgQHByb3BzLmRpc2FibGVkIHRydWV9fVxuICAgICAgICAgICAgICAuLi5hdHRyaWJ1dGVzXG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvSW5uZXJUb2tlbj5cbiAgICAgICAgPC9FdWlJMThuPlxuICAgICAgPC9Ub2tlbj5cbiAgICA8L0V1aUkxOG4-XG4gIDwvdGVtcGxhdGU-O1xuXG5leHBvcnQgZGVmYXVsdCBOZXh0QnV0dG9uO1xuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxTQUFTLEVBQUUsRUFBRSxJQUFJLFFBQVEsZ0JBQWdCO0FBQ3pDLFNBQVMsRUFBRSxRQUFRLGtCQUFrQjtBQUVyQyxPQUFPLFNBQVMsaUNBQWlDO0FBQ2pELE9BQU8sU0FBUyxpQ0FBaUM7QUFDakQsU0FBUyxFQUFFLFFBQVEsc0JBQXNCO0FBRXpDLE9BQU8sbUJBQW1CLHlCQUF5QjtBQUNuRCxPQUFPLGFBQWEsa0JBQWtCO0FBRXRDLGNBQWMsc0JBQXNCLFFBQVEscUJBQXFCO0FBQ2pFLGNBQWMsZ0JBQWdCLFFBQVEsb0JBQW9CO0FBQzFELGNBQWMscUJBQXFCLFFBQVEsaUNBQWlDO0FBRTVFLGlCQUFpQjtJQUNmLFNBQVMsdUJBQXVCO0lBQ2hDO1FBQ0UsWUFBWSxNQUFNO1FBQ2xCLFdBQVc7UUFDWCxXQUFXLE1BQU07UUFDakI7WUFDRSxXQUFXLE9BQU87WUFDbEIsa0JBQWtCLE1BQU07WUFDeEIsT0FBTyxNQUFNOzs7O0FBS25CLE1BQU0sWUFBWSxzQkFBc0Isb0NBQ3RDLFNBQVUsQ0FBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFnQ1YsQ0FBQSxFQUFBO0lBQUE7UUFBQSxPQUFBLEtBQUEsU0FBQSxDQUFBLEVBQVc7SUFBRDtBQUFBO0FBRVosZUFBZSxXQUFXIn0"],"names":["NextButton","setComponentTemplate","precompileTemplate","strictMode","scope","EuiI18n","hash","add","EuiButtonIcon","eq","sub","on","fn","templateOnly"],"mappings":";;;;;;;;;;;AA4BA,MAAMA,UAAkC,GAAAC,oBAAA,CACtCC,kBAAA,CAgCA,0uBAAA,EAAA;EAAAC,UAAA,EAAA,IAAA;AAAAC,EAAAA,KAAA,EAAAA,OAAA;aAAAC,gBAAA;IAAAC,IAAA;IAAAC,GAAA;IAAAC,aAAA;IAAAC,EAAA;IAAAC,GAAA;IAAAC,EAAA;AAAAC,IAAAA,EAAAA;AAAA,GAAA,CAAA;AAAU,CAAA,CAAA,EAAAC,YAAA,EAAA;;;;"}
1
+ {"version":3,"file":"next-button.js","sources":["../../../src/components/eui-pagination/next-button.gts"],"sourcesContent":["import { fn, hash } from '@ember/helper';\nimport { on } from '@ember/modifier';\n\nimport add from 'ember-math-helpers/helpers/add';\nimport sub from 'ember-math-helpers/helpers/sub';\nimport { eq } from 'ember-truth-helpers';\n\nimport EuiButtonIcon from '../eui-button-icon.gts';\nimport EuiI18n from '../eui-i18n.gts';\n\nimport type { EuiButtonIconSignature } from '../eui-button-icon';\nimport type { SafeClickHandler } from '../eui-pagination';\nimport type { TemplateOnlyComponent } from '@ember/component/template-only';\n\nexport interface EuiPaginationNextButtonSignature {\n Element: EuiButtonIconSignature['Element'];\n Args: {\n activePage: number;\n safeClick: SafeClickHandler;\n pageCount: number;\n props: {\n disabled?: boolean;\n 'aria-controls'?: string;\n href?: string;\n };\n };\n}\n\nconst NextButton: TemplateOnlyComponent<EuiPaginationNextButtonSignature> =\n <template>\n <EuiI18n\n @token=\"euiPagination.nextPage\"\n @default=\"Next page, {page}\"\n @values={{hash page=(add @activePage 2)}}\n as |Token|\n >\n <Token as |nextPage|>\n <EuiI18n\n @token=\"euiPagination.disabledNextPage\"\n @default=\"Next page\"\n as |InnerToken|\n >\n <InnerToken as |disabledNextPage|>\n <EuiButtonIcon\n {{on \"click\" (fn @safeClick (add @activePage 1))}}\n @iconType=\"arrowRight\"\n @color=\"text\"\n aria-label={{if\n (eq @activePage (sub @pageCount 1))\n disabledNextPage\n nextPage\n }}\n aria-controls={{if @props.aria-controls @props.aria-controls}}\n href={{if @props.href @props.href}}\n disabled={{eq @props.disabled true}}\n ...attributes\n />\n </InnerToken>\n </EuiI18n>\n </Token>\n </EuiI18n>\n </template>;\n\nexport default NextButton;\n"],"names":["NextButton","setComponentTemplate","precompileTemplate","strictMode","scope","EuiI18n","hash","add","EuiButtonIcon","eq","sub","on","fn","templateOnly"],"mappings":";;;;;;;;;;;AA4BA,MAAMA,UACJ,GAAAC,oBAAA,CAAAC,kBAAA,CAgCA,0uBAAA,EAAA;EAAAC,UAAA,EAAA,IAAA;AAAAC,EAAAA,KAAA,EAAAA,OAAA;aAAAC,gBAAA;IAAAC,IAAA;IAAAC,GAAA;IAAAC,aAAA;IAAAC,EAAA;IAAAC,GAAA;IAAAC,EAAA;AAAAC,IAAAA;AAAA,GAAA;AAAU,CAAA,CAAA,EAAAC,YAAA,EAAA;;;;"}
@@ -1,4 +1,4 @@
1
- import { hash, fn } from '@ember/helper';
1
+ import { fn, hash } from '@ember/helper';
2
2
  import { on } from '@ember/modifier';
3
3
  import sub from 'ember-math-helpers/helpers/sub';
4
4
  import { eq } from 'ember-truth-helpers';
@@ -1 +1 @@
1
- {"version":3,"file":"previous-button.js","sources":["../../../src/components/eui-pagination/previous-button.gts"],"sourcesContent":["import { template } from \"@ember/template-compiler\";\nimport { fn, hash } from '@ember/helper';\nimport { on } from '@ember/modifier';\nimport sub from 'ember-math-helpers/helpers/sub';\nimport { eq } from 'ember-truth-helpers';\nimport EuiButtonIcon from '../eui-button-icon.gts';\nimport EuiI18n from '../eui-i18n.gts';\nimport type { EuiButtonIconSignature } from '../eui-button-icon';\nimport type { SafeClickHandler } from '../eui-pagination';\nimport type { TemplateOnlyComponent } from '@ember/component/template-only';\nexport interface EuiPaginationPreviousButtonSignature {\n Element: EuiButtonIconSignature['Element'];\n Args: {\n activePage: number;\n safeClick: SafeClickHandler;\n props?: {\n disabled?: boolean;\n 'aria-controls'?: string;\n href?: string;\n };\n };\n}\nconst PreviousButton: TemplateOnlyComponent<EuiPaginationPreviousButtonSignature> = template(`\n <EuiI18n\n @token=\"euiPagination.previousPage\"\n @default=\"Previous page, {page}\"\n @values={{hash page=@activePage}}\n as |Token|\n >\n <Token as |previousPage|>\n <EuiI18n\n @token=\"euiPagination.disabledPreviousPage\"\n @default=\"Previous page\"\n as |InnerToken|\n >\n <InnerToken as |disabledPreviousPage|>\n <EuiButtonIcon\n {{on \"click\" (fn @safeClick (sub @activePage 1))}}\n @iconType=\"arrowLeft\"\n @color=\"text\"\n aria-label={{if\n (eq @activePage 0)\n disabledPreviousPage\n previousPage\n }}\n aria-controls={{if @props.aria-controls @props.aria-controls}}\n href={{if @props.href @props.href}}\n disabled={{eq @props.disabled true}}\n ...attributes\n />\n </InnerToken>\n </EuiI18n>\n </Token>\n </EuiI18n>\n `, {\n eval () {\n return eval(arguments[0]);\n }\n});\nexport default PreviousButton;\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9iZXRvY2FudHU5My9wcnlzbWV4L2VtYmVyLWV1aS9wYWNrYWdlcy9jb3JlL3NyYy9jb21wb25lbnRzL2V1aS1wYWdpbmF0aW9uL3ByZXZpb3VzLWJ1dHRvbi5ndHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZm4sIGhhc2ggfSBmcm9tICdAZW1iZXIvaGVscGVyJztcbmltcG9ydCB7IG9uIH0gZnJvbSAnQGVtYmVyL21vZGlmaWVyJztcblxuaW1wb3J0IHN1YiBmcm9tICdlbWJlci1tYXRoLWhlbHBlcnMvaGVscGVycy9zdWInO1xuaW1wb3J0IHsgZXEgfSBmcm9tICdlbWJlci10cnV0aC1oZWxwZXJzJztcblxuaW1wb3J0IEV1aUJ1dHRvbkljb24gZnJvbSAnLi4vZXVpLWJ1dHRvbi1pY29uLmd0cyc7XG5pbXBvcnQgRXVpSTE4biBmcm9tICcuLi9ldWktaTE4bi5ndHMnO1xuXG5pbXBvcnQgdHlwZSB7IEV1aUJ1dHRvbkljb25TaWduYXR1cmUgfSBmcm9tICcuLi9ldWktYnV0dG9uLWljb24nO1xuaW1wb3J0IHR5cGUgeyBTYWZlQ2xpY2tIYW5kbGVyIH0gZnJvbSAnLi4vZXVpLXBhZ2luYXRpb24nO1xuaW1wb3J0IHR5cGUgeyBUZW1wbGF0ZU9ubHlDb21wb25lbnQgfSBmcm9tICdAZW1iZXIvY29tcG9uZW50L3RlbXBsYXRlLW9ubHknO1xuXG5leHBvcnQgaW50ZXJmYWNlIEV1aVBhZ2luYXRpb25QcmV2aW91c0J1dHRvblNpZ25hdHVyZSB7XG4gIEVsZW1lbnQ6IEV1aUJ1dHRvbkljb25TaWduYXR1cmVbJ0VsZW1lbnQnXTtcbiAgQXJnczoge1xuICAgIGFjdGl2ZVBhZ2U6IG51bWJlcjtcbiAgICBzYWZlQ2xpY2s6IFNhZmVDbGlja0hhbmRsZXI7XG4gICAgcHJvcHM_OiB7XG4gICAgICBkaXNhYmxlZD86IGJvb2xlYW47XG4gICAgICAnYXJpYS1jb250cm9scyc_OiBzdHJpbmc7XG4gICAgICBocmVmPzogc3RyaW5nO1xuICAgIH07XG4gIH07XG59XG5cbmNvbnN0IFByZXZpb3VzQnV0dG9uOiBUZW1wbGF0ZU9ubHlDb21wb25lbnQ8RXVpUGFnaW5hdGlvblByZXZpb3VzQnV0dG9uU2lnbmF0dXJlPiA9XG4gIDx0ZW1wbGF0ZT5cbiAgICA8RXVpSTE4blxuICAgICAgQHRva2VuPVwiZXVpUGFnaW5hdGlvbi5wcmV2aW91c1BhZ2VcIlxuICAgICAgQGRlZmF1bHQ9XCJQcmV2aW91cyBwYWdlLCB7cGFnZX1cIlxuICAgICAgQHZhbHVlcz17e2hhc2ggcGFnZT1AYWN0aXZlUGFnZX19XG4gICAgICBhcyB8VG9rZW58XG4gICAgPlxuICAgICAgPFRva2VuIGFzIHxwcmV2aW91c1BhZ2V8PlxuICAgICAgICA8RXVpSTE4blxuICAgICAgICAgIEB0b2tlbj1cImV1aVBhZ2luYXRpb24uZGlzYWJsZWRQcmV2aW91c1BhZ2VcIlxuICAgICAgICAgIEBkZWZhdWx0PVwiUHJldmlvdXMgcGFnZVwiXG4gICAgICAgICAgYXMgfElubmVyVG9rZW58XG4gICAgICAgID5cbiAgICAgICAgICA8SW5uZXJUb2tlbiBhcyB8ZGlzYWJsZWRQcmV2aW91c1BhZ2V8PlxuICAgICAgICAgICAgPEV1aUJ1dHRvbkljb25cbiAgICAgICAgICAgICAge3tvbiBcImNsaWNrXCIgKGZuIEBzYWZlQ2xpY2sgKHN1YiBAYWN0aXZlUGFnZSAxKSl9fVxuICAgICAgICAgICAgICBAaWNvblR5cGU9XCJhcnJvd0xlZnRcIlxuICAgICAgICAgICAgICBAY29sb3I9XCJ0ZXh0XCJcbiAgICAgICAgICAgICAgYXJpYS1sYWJlbD17e2lmXG4gICAgICAgICAgICAgICAgKGVxIEBhY3RpdmVQYWdlIDApXG4gICAgICAgICAgICAgICAgZGlzYWJsZWRQcmV2aW91c1BhZ2VcbiAgICAgICAgICAgICAgICBwcmV2aW91c1BhZ2VcbiAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgYXJpYS1jb250cm9scz17e2lmIEBwcm9wcy5hcmlhLWNvbnRyb2xzIEBwcm9wcy5hcmlhLWNvbnRyb2xzfX1cbiAgICAgICAgICAgICAgaHJlZj17e2lmIEBwcm9wcy5ocmVmIEBwcm9wcy5ocmVmfX1cbiAgICAgICAgICAgICAgZGlzYWJsZWQ9e3tlcSBAcHJvcHMuZGlzYWJsZWQgdHJ1ZX19XG4gICAgICAgICAgICAgIC4uLmF0dHJpYnV0ZXNcbiAgICAgICAgICAgIC8-XG4gICAgICAgICAgPC9Jbm5lclRva2VuPlxuICAgICAgICA8L0V1aUkxOG4-XG4gICAgICA8L1Rva2VuPlxuICAgIDwvRXVpSTE4bj5cbiAgPC90ZW1wbGF0ZT47XG5cbmV4cG9ydCBkZWZhdWx0IFByZXZpb3VzQnV0dG9uO1xuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxTQUFTLEVBQUUsRUFBRSxJQUFJLFFBQVEsZ0JBQWdCO0FBQ3pDLFNBQVMsRUFBRSxRQUFRLGtCQUFrQjtBQUVyQyxPQUFPLFNBQVMsaUNBQWlDO0FBQ2pELFNBQVMsRUFBRSxRQUFRLHNCQUFzQjtBQUV6QyxPQUFPLG1CQUFtQix5QkFBeUI7QUFDbkQsT0FBTyxhQUFhLGtCQUFrQjtBQUV0QyxjQUFjLHNCQUFzQixRQUFRLHFCQUFxQjtBQUNqRSxjQUFjLGdCQUFnQixRQUFRLG9CQUFvQjtBQUMxRCxjQUFjLHFCQUFxQixRQUFRLGlDQUFpQztBQUU1RSxpQkFBaUI7SUFDZixTQUFTLHVCQUF1QjtJQUNoQztRQUNFLFlBQVksTUFBTTtRQUNsQixXQUFXO1FBQ1g7WUFDRSxXQUFXLE9BQU87WUFDbEIsa0JBQWtCLE1BQU07WUFDeEIsT0FBTyxNQUFNOzs7O0FBS25CLE1BQU0sZ0JBQWdCLHNCQUFzQix3Q0FDMUMsU0FBVSxDQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQWdDVixDQUFBLEVBQUE7SUFBQTtRQUFBLE9BQUEsS0FBQSxTQUFBLENBQUEsRUFBVztJQUFEO0FBQUE7QUFFWixlQUFlLGVBQWUifQ"],"names":["PreviousButton","setComponentTemplate","precompileTemplate","strictMode","scope","EuiI18n","hash","EuiButtonIcon","eq","on","fn","sub","templateOnly"],"mappings":";;;;;;;;;;AA0BA,MAAMA,cAAsC,GAAAC,oBAAA,CAC1CC,kBAAA,CAgCA,gvBAAA,EAAA;EAAAC,UAAA,EAAA,IAAA;AAAAC,EAAAA,KAAA,EAAAA,OAAA;aAAAC,gBAAA;IAAAC,IAAA;IAAAC,aAAA;IAAAC,EAAA;IAAAC,EAAA;IAAAC,EAAA;AAAAC,IAAAA,GAAAA;AAAA,GAAA,CAAA;AAAU,CAAA,CAAA,EAAAC,YAAA,EAAA;;;;"}
1
+ {"version":3,"file":"previous-button.js","sources":["../../../src/components/eui-pagination/previous-button.gts"],"sourcesContent":["import { fn, hash } from '@ember/helper';\nimport { on } from '@ember/modifier';\n\nimport sub from 'ember-math-helpers/helpers/sub';\nimport { eq } from 'ember-truth-helpers';\n\nimport EuiButtonIcon from '../eui-button-icon.gts';\nimport EuiI18n from '../eui-i18n.gts';\n\nimport type { EuiButtonIconSignature } from '../eui-button-icon';\nimport type { SafeClickHandler } from '../eui-pagination';\nimport type { TemplateOnlyComponent } from '@ember/component/template-only';\n\nexport interface EuiPaginationPreviousButtonSignature {\n Element: EuiButtonIconSignature['Element'];\n Args: {\n activePage: number;\n safeClick: SafeClickHandler;\n props?: {\n disabled?: boolean;\n 'aria-controls'?: string;\n href?: string;\n };\n };\n}\n\nconst PreviousButton: TemplateOnlyComponent<EuiPaginationPreviousButtonSignature> =\n <template>\n <EuiI18n\n @token=\"euiPagination.previousPage\"\n @default=\"Previous page, {page}\"\n @values={{hash page=@activePage}}\n as |Token|\n >\n <Token as |previousPage|>\n <EuiI18n\n @token=\"euiPagination.disabledPreviousPage\"\n @default=\"Previous page\"\n as |InnerToken|\n >\n <InnerToken as |disabledPreviousPage|>\n <EuiButtonIcon\n {{on \"click\" (fn @safeClick (sub @activePage 1))}}\n @iconType=\"arrowLeft\"\n @color=\"text\"\n aria-label={{if\n (eq @activePage 0)\n disabledPreviousPage\n previousPage\n }}\n aria-controls={{if @props.aria-controls @props.aria-controls}}\n href={{if @props.href @props.href}}\n disabled={{eq @props.disabled true}}\n ...attributes\n />\n </InnerToken>\n </EuiI18n>\n </Token>\n </EuiI18n>\n </template>;\n\nexport default PreviousButton;\n"],"names":["PreviousButton","setComponentTemplate","precompileTemplate","strictMode","scope","EuiI18n","hash","EuiButtonIcon","eq","on","fn","sub","templateOnly"],"mappings":";;;;;;;;;;AA0BA,MAAMA,cACJ,GAAAC,oBAAA,CAAAC,kBAAA,CAgCA,gvBAAA,EAAA;EAAAC,UAAA,EAAA,IAAA;AAAAC,EAAAA,KAAA,EAAAA,OAAA;aAAAC,gBAAA;IAAAC,IAAA;IAAAC,aAAA;IAAAC,EAAA;IAAAC,EAAA;IAAAC,EAAA;AAAAC,IAAAA;AAAA,GAAA;AAAU,CAAA,CAAA,EAAAC,YAAA,EAAA;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"eui-pagination-button.js","sources":["../../src/components/eui-pagination-button.gts"],"sourcesContent":["import { template } from \"@ember/template-compiler\";\nimport { hash } from '@ember/helper';\nimport add from 'ember-math-helpers/helpers/add';\nimport { or } from 'ember-truth-helpers';\nimport classNames from '../helpers/class-names.ts';\nimport EuiButtonEmpty from './eui-button-empty.gts';\nimport EuiI18n from './eui-i18n.gts';\nimport type { paddingMapping } from '../utils/css-mappings/eui-popover-footer.ts';\nimport type { EuiButtonEmptySignature } from './eui-button-empty';\nimport type { TemplateOnlyComponent } from '@ember/component/template-only';\nexport interface EuiPaginationButtonSignature {\n Element: EuiButtonEmptySignature['Element'];\n Args: {\n paddingSize?: keyof typeof paddingMapping;\n pageIndex?: number;\n totalPages?: number;\n isActive?: boolean;\n isPlaceholder?: boolean;\n hideOnMobile?: boolean;\n };\n Blocks: {\n default: [];\n };\n}\nconst EuiPaginationButton: TemplateOnlyComponent<EuiPaginationButtonSignature> = template(`\n {{#let (add @pageIndex 1) as |pageNumber|}}\n <EuiI18n\n @token=\"euiPaginationButton.longPageString\"\n @default=\"Page {page} of {totalPages}\"\n @values={{hash page=pageNumber totalPages=@totalPages}}\n as |Token|\n >\n <Token as |longPageString|>\n <EuiI18n\n @token=\"euiPaginationButton.shortPageString\"\n @default=\"Page {page}\"\n @values={{hash page=pageNumber}}\n as |InnerToken|\n >\n <InnerToken as |shortPageString|>\n <EuiButtonEmpty\n class={{classNames\n \"euiPaginationButton\"\n (if @isActive \"euiPaginationButton-isActive\")\n (if @isPlaceholder \"euiPaginationButton-isPlaceholder\")\n (if @hideOnMobile \"euiPaginationButton--hideOnMobile\")\n }}\n aria-label={{if @totalPages longPageString shortPageString}}\n @size=\"s\"\n @color=\"text\"\n @isDisabled={{or @isPlaceholder @isActive}}\n aria-current={{if @isActive true}}\n ...attributes\n >\n {{pageNumber}}\n </EuiButtonEmpty>\n </InnerToken>\n </EuiI18n>\n </Token>\n </EuiI18n>\n {{/let}}\n `, {\n eval () {\n return eval(arguments[0]);\n }\n});\nexport default EuiPaginationButton;\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9iZXRvY2FudHU5My9wcnlzbWV4L2VtYmVyLWV1aS9wYWNrYWdlcy9jb3JlL3NyYy9jb21wb25lbnRzL2V1aS1wYWdpbmF0aW9uLWJ1dHRvbi5ndHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaGFzaCB9IGZyb20gJ0BlbWJlci9oZWxwZXInO1xuXG5pbXBvcnQgYWRkIGZyb20gJ2VtYmVyLW1hdGgtaGVscGVycy9oZWxwZXJzL2FkZCc7XG5pbXBvcnQgeyBvciB9IGZyb20gJ2VtYmVyLXRydXRoLWhlbHBlcnMnO1xuXG5pbXBvcnQgY2xhc3NOYW1lcyBmcm9tICcuLi9oZWxwZXJzL2NsYXNzLW5hbWVzLnRzJztcbmltcG9ydCBFdWlCdXR0b25FbXB0eSBmcm9tICcuL2V1aS1idXR0b24tZW1wdHkuZ3RzJztcbmltcG9ydCBFdWlJMThuIGZyb20gJy4vZXVpLWkxOG4uZ3RzJztcblxuaW1wb3J0IHR5cGUgeyBwYWRkaW5nTWFwcGluZyB9IGZyb20gJy4uL3V0aWxzL2Nzcy1tYXBwaW5ncy9ldWktcG9wb3Zlci1mb290ZXIudHMnO1xuaW1wb3J0IHR5cGUgeyBFdWlCdXR0b25FbXB0eVNpZ25hdHVyZSB9IGZyb20gJy4vZXVpLWJ1dHRvbi1lbXB0eSc7XG5pbXBvcnQgdHlwZSB7IFRlbXBsYXRlT25seUNvbXBvbmVudCB9IGZyb20gJ0BlbWJlci9jb21wb25lbnQvdGVtcGxhdGUtb25seSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRXVpUGFnaW5hdGlvbkJ1dHRvblNpZ25hdHVyZSB7XG4gIEVsZW1lbnQ6IEV1aUJ1dHRvbkVtcHR5U2lnbmF0dXJlWydFbGVtZW50J107XG4gIEFyZ3M6IHtcbiAgICBwYWRkaW5nU2l6ZT86IGtleW9mIHR5cGVvZiBwYWRkaW5nTWFwcGluZztcbiAgICBwYWdlSW5kZXg_OiBudW1iZXI7XG4gICAgdG90YWxQYWdlcz86IG51bWJlcjtcbiAgICBpc0FjdGl2ZT86IGJvb2xlYW47XG4gICAgaXNQbGFjZWhvbGRlcj86IGJvb2xlYW47XG4gICAgaGlkZU9uTW9iaWxlPzogYm9vbGVhbjtcbiAgfTtcbiAgQmxvY2tzOiB7XG4gICAgZGVmYXVsdDogW107XG4gIH07XG59XG5cbmNvbnN0IEV1aVBhZ2luYXRpb25CdXR0b246IFRlbXBsYXRlT25seUNvbXBvbmVudDxFdWlQYWdpbmF0aW9uQnV0dG9uU2lnbmF0dXJlPiA9XG4gIDx0ZW1wbGF0ZT5cbiAgICB7eyNsZXQgKGFkZCBAcGFnZUluZGV4IDEpIGFzIHxwYWdlTnVtYmVyfH19XG4gICAgICA8RXVpSTE4blxuICAgICAgICBAdG9rZW49XCJldWlQYWdpbmF0aW9uQnV0dG9uLmxvbmdQYWdlU3RyaW5nXCJcbiAgICAgICAgQGRlZmF1bHQ9XCJQYWdlIHtwYWdlfSBvZiB7dG90YWxQYWdlc31cIlxuICAgICAgICBAdmFsdWVzPXt7aGFzaCBwYWdlPXBhZ2VOdW1iZXIgdG90YWxQYWdlcz1AdG90YWxQYWdlc319XG4gICAgICAgIGFzIHxUb2tlbnxcbiAgICAgID5cbiAgICAgICAgPFRva2VuIGFzIHxsb25nUGFnZVN0cmluZ3w-XG4gICAgICAgICAgPEV1aUkxOG5cbiAgICAgICAgICAgIEB0b2tlbj1cImV1aVBhZ2luYXRpb25CdXR0b24uc2hvcnRQYWdlU3RyaW5nXCJcbiAgICAgICAgICAgIEBkZWZhdWx0PVwiUGFnZSB7cGFnZX1cIlxuICAgICAgICAgICAgQHZhbHVlcz17e2hhc2ggcGFnZT1wYWdlTnVtYmVyfX1cbiAgICAgICAgICAgIGFzIHxJbm5lclRva2VufFxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxJbm5lclRva2VuIGFzIHxzaG9ydFBhZ2VTdHJpbmd8PlxuICAgICAgICAgICAgICA8RXVpQnV0dG9uRW1wdHlcbiAgICAgICAgICAgICAgICBjbGFzcz17e2NsYXNzTmFtZXNcbiAgICAgICAgICAgICAgICAgIFwiZXVpUGFnaW5hdGlvbkJ1dHRvblwiXG4gICAgICAgICAgICAgICAgICAoaWYgQGlzQWN0aXZlIFwiZXVpUGFnaW5hdGlvbkJ1dHRvbi1pc0FjdGl2ZVwiKVxuICAgICAgICAgICAgICAgICAgKGlmIEBpc1BsYWNlaG9sZGVyIFwiZXVpUGFnaW5hdGlvbkJ1dHRvbi1pc1BsYWNlaG9sZGVyXCIpXG4gICAgICAgICAgICAgICAgICAoaWYgQGhpZGVPbk1vYmlsZSBcImV1aVBhZ2luYXRpb25CdXR0b24tLWhpZGVPbk1vYmlsZVwiKVxuICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgYXJpYS1sYWJlbD17e2lmIEB0b3RhbFBhZ2VzIGxvbmdQYWdlU3RyaW5nIHNob3J0UGFnZVN0cmluZ319XG4gICAgICAgICAgICAgICAgQHNpemU9XCJzXCJcbiAgICAgICAgICAgICAgICBAY29sb3I9XCJ0ZXh0XCJcbiAgICAgICAgICAgICAgICBAaXNEaXNhYmxlZD17e29yIEBpc1BsYWNlaG9sZGVyIEBpc0FjdGl2ZX19XG4gICAgICAgICAgICAgICAgYXJpYS1jdXJyZW50PXt7aWYgQGlzQWN0aXZlIHRydWV9fVxuICAgICAgICAgICAgICAgIC4uLmF0dHJpYnV0ZXNcbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIHt7cGFnZU51bWJlcn19XG4gICAgICAgICAgICAgIDwvRXVpQnV0dG9uRW1wdHk-XG4gICAgICAgICAgICA8L0lubmVyVG9rZW4-XG4gICAgICAgICAgPC9FdWlJMThuPlxuICAgICAgICA8L1Rva2VuPlxuICAgICAgPC9FdWlJMThuPlxuICAgIHt7L2xldH19XG4gIDwvdGVtcGxhdGU-O1xuXG5leHBvcnQgZGVmYXVsdCBFdWlQYWdpbmF0aW9uQnV0dG9uO1xuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxTQUFTLElBQUksUUFBUSxnQkFBZ0I7QUFFckMsT0FBTyxTQUFTLGlDQUFpQztBQUNqRCxTQUFTLEVBQUUsUUFBUSxzQkFBc0I7QUFFekMsT0FBTyxnQkFBZ0IsNEJBQTRCO0FBQ25ELE9BQU8sb0JBQW9CLHlCQUF5QjtBQUNwRCxPQUFPLGFBQWEsaUJBQWlCO0FBRXJDLGNBQWMsY0FBYyxRQUFRLDhDQUE4QztBQUNsRixjQUFjLHVCQUF1QixRQUFRLHFCQUFxQjtBQUNsRSxjQUFjLHFCQUFxQixRQUFRLGlDQUFpQztBQUU1RSxpQkFBaUI7SUFDZixTQUFTLHdCQUF3QjtJQUNqQztRQUNFLDJCQUEyQjtRQUMzQixZQUFZLE1BQU07UUFDbEIsYUFBYSxNQUFNO1FBQ25CLFdBQVcsT0FBTztRQUNsQixnQkFBZ0IsT0FBTztRQUN2QixlQUFlLE9BQU87O0lBRXhCO1FBQ0U7OztBQUlKLE1BQU0scUJBQXFCLHNCQUFzQixnQ0FDL0MsU0FBVSxDQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBcUNWLENBQUEsRUFBQTtJQUFBO1FBQUEsT0FBQSxLQUFBLFNBQUEsQ0FBQSxFQUFXO0lBQUQ7QUFBQTtBQUVaLGVBQWUsb0JBQW9CIn0"],"names":["EuiPaginationButton","setComponentTemplate","precompileTemplate","strictMode","scope","add","EuiI18n","hash","EuiButtonEmpty","classNames","or","templateOnly"],"mappings":";;;;;;;;;;AA4BA,MAAMA,mBAA2C,GAAAC,oBAAA,CAC/CC,kBAAA,CAqCA,8gCAAA,EAAA;EAAAC,UAAA,EAAA,IAAA;AAAAC,EAAAA,KAAA,EAAAA,OAAA;IAAAC,GAAA;aAAAC,gBAAA;IAAAC,IAAA;IAAAC,cAAA;IAAAC,UAAA;AAAAC,IAAAA,EAAAA;AAAA,GAAA,CAAA;AAAU,CAAA,CAAA,EAAAC,YAAA,EAAA;;;;"}
1
+ {"version":3,"file":"eui-pagination-button.js","sources":["../../src/components/eui-pagination-button.gts"],"sourcesContent":["import { hash } from '@ember/helper';\n\nimport add from 'ember-math-helpers/helpers/add';\nimport { or } from 'ember-truth-helpers';\n\nimport classNames from '../helpers/class-names.ts';\nimport EuiButtonEmpty from './eui-button-empty.gts';\nimport EuiI18n from './eui-i18n.gts';\n\nimport type { paddingMapping } from '../utils/css-mappings/eui-popover-footer.ts';\nimport type { EuiButtonEmptySignature } from './eui-button-empty';\nimport type { TemplateOnlyComponent } from '@ember/component/template-only';\n\nexport interface EuiPaginationButtonSignature {\n Element: EuiButtonEmptySignature['Element'];\n Args: {\n paddingSize?: keyof typeof paddingMapping;\n pageIndex?: number;\n totalPages?: number;\n isActive?: boolean;\n isPlaceholder?: boolean;\n hideOnMobile?: boolean;\n };\n Blocks: {\n default: [];\n };\n}\n\nconst EuiPaginationButton: TemplateOnlyComponent<EuiPaginationButtonSignature> =\n <template>\n {{#let (add @pageIndex 1) as |pageNumber|}}\n <EuiI18n\n @token=\"euiPaginationButton.longPageString\"\n @default=\"Page {page} of {totalPages}\"\n @values={{hash page=pageNumber totalPages=@totalPages}}\n as |Token|\n >\n <Token as |longPageString|>\n <EuiI18n\n @token=\"euiPaginationButton.shortPageString\"\n @default=\"Page {page}\"\n @values={{hash page=pageNumber}}\n as |InnerToken|\n >\n <InnerToken as |shortPageString|>\n <EuiButtonEmpty\n class={{classNames\n \"euiPaginationButton\"\n (if @isActive \"euiPaginationButton-isActive\")\n (if @isPlaceholder \"euiPaginationButton-isPlaceholder\")\n (if @hideOnMobile \"euiPaginationButton--hideOnMobile\")\n }}\n aria-label={{if @totalPages longPageString shortPageString}}\n @size=\"s\"\n @color=\"text\"\n @isDisabled={{or @isPlaceholder @isActive}}\n aria-current={{if @isActive true}}\n ...attributes\n >\n {{pageNumber}}\n </EuiButtonEmpty>\n </InnerToken>\n </EuiI18n>\n </Token>\n </EuiI18n>\n {{/let}}\n </template>;\n\nexport default EuiPaginationButton;\n"],"names":["EuiPaginationButton","setComponentTemplate","precompileTemplate","strictMode","scope","add","EuiI18n","hash","EuiButtonEmpty","classNames","or","templateOnly"],"mappings":";;;;;;;;;;AA4BA,MAAMA,mBACJ,GAAAC,oBAAA,CAAAC,kBAAA,CAqCA,8gCAAA,EAAA;EAAAC,UAAA,EAAA,IAAA;AAAAC,EAAAA,KAAA,EAAAA,OAAA;IAAAC,GAAA;aAAAC,gBAAA;IAAAC,IAAA;IAAAC,cAAA;IAAAC,UAAA;AAAAC,IAAAA;AAAA,GAAA;AAAU,CAAA,CAAA,EAAAC,YAAA,EAAA;;;;"}