@ember-eui/core 11.0.3 → 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 (540) 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 +1 -1
  25. package/declarations/components/eui-markdown-editor.d.ts +3 -2
  26. package/declarations/components/eui-markdown-editor.d.ts.map +1 -1
  27. package/declarations/components/eui-page-header-content.d.ts +1 -1
  28. package/declarations/components/eui-popover.d.ts +2 -1
  29. package/declarations/components/eui-popover.d.ts.map +1 -1
  30. package/declarations/components/eui-portal.d.ts +2 -1
  31. package/declarations/components/eui-portal.d.ts.map +1 -1
  32. package/declarations/components/eui-range-track.d.ts +1 -1
  33. package/declarations/components/eui-show-for.d.ts +1 -1
  34. package/declarations/components/eui-show-for.d.ts.map +1 -1
  35. package/declarations/components/eui-super-date-picker/date-popover/absolute-tab.d.ts +2 -1
  36. package/declarations/components/eui-super-date-picker/date-popover/absolute-tab.d.ts.map +1 -1
  37. package/declarations/components/eui-super-date-picker/date-popover/datetime-picker.d.ts +2 -1
  38. package/declarations/components/eui-super-date-picker/date-popover/datetime-picker.d.ts.map +1 -1
  39. package/declarations/components/eui-super-date-picker/date-popover/eui-date-popover-content.d.ts +1 -1
  40. package/declarations/components/eui-super-date-picker/date-popover/relative-tab.d.ts +2 -1
  41. package/declarations/components/eui-super-date-picker/date-popover/relative-tab.d.ts.map +1 -1
  42. package/declarations/components/eui-super-date-picker/eui-quick-select-popover/eui-quick-select.d.ts +2 -1
  43. package/declarations/components/eui-super-date-picker/eui-quick-select-popover/eui-quick-select.d.ts.map +1 -1
  44. package/declarations/components/eui-tabbed-content.d.ts +2 -1
  45. package/declarations/components/eui-tabbed-content.d.ts.map +1 -1
  46. package/declarations/components/eui-tool-tip-popover.d.ts +2 -1
  47. package/declarations/components/eui-tool-tip-popover.d.ts.map +1 -1
  48. package/declarations/components.d.ts +148 -148
  49. package/declarations/helpers/arg-or-default.d.ts +1 -1
  50. package/declarations/helpers/eui-page-restrict-width.d.ts +1 -1
  51. package/declarations/helpers/eui-palette.d.ts +1 -1
  52. package/declarations/helpers/get-range-tick.d.ts +2 -2
  53. package/declarations/helpers/hex-to-rgb.d.ts +1 -1
  54. package/declarations/helpers/is-color-dark.d.ts +1 -1
  55. package/declarations/helpers/is-item-open.d.ts +1 -1
  56. package/declarations/helpers/is-valid-hex.d.ts +1 -1
  57. package/declarations/helpers/nullish.d.ts +1 -1
  58. package/declarations/helpers/starts-with.d.ts +1 -1
  59. package/declarations/helpers/to-initials.d.ts +1 -1
  60. package/declarations/helpers/type-of.d.ts +3 -3
  61. package/declarations/helpers/type-of.d.ts.map +1 -1
  62. package/declarations/helpers/use-state.d.ts +1 -1
  63. package/declarations/modifiers/screen-reader-only.d.ts +1 -1
  64. package/declarations/modifiers/simple-style.d.ts +1 -1
  65. package/declarations/modifiers/validatable-control.d.ts +1 -1
  66. package/declarations/utils/markdown/markdown-modes.d.ts.map +1 -1
  67. package/dist/-private/random-id.js.map +1 -1
  68. package/dist/components/common.js.map +1 -1
  69. package/dist/components/eui-accordion.js +14 -14
  70. package/dist/components/eui-accordion.js.map +1 -1
  71. package/dist/components/eui-auto-sizer.js +31 -31
  72. package/dist/components/eui-auto-sizer.js.map +1 -1
  73. package/dist/components/eui-avatar.js +2 -2
  74. package/dist/components/eui-avatar.js.map +1 -1
  75. package/dist/components/eui-badge-group.js.map +1 -1
  76. package/dist/components/eui-badge.js +1 -1
  77. package/dist/components/eui-badge.js.map +1 -1
  78. package/dist/components/eui-beta-badge.js +1 -1
  79. package/dist/components/eui-beta-badge.js.map +1 -1
  80. package/dist/components/eui-bottom-bar.js +13 -13
  81. package/dist/components/eui-bottom-bar.js.map +1 -1
  82. package/dist/components/eui-breadcrumbs.js +40 -42
  83. package/dist/components/eui-breadcrumbs.js.map +1 -1
  84. package/dist/components/eui-button-content.js.map +1 -1
  85. package/dist/components/eui-button-empty.js +1 -1
  86. package/dist/components/eui-button-empty.js.map +1 -1
  87. package/dist/components/eui-button-group-button.js +1 -1
  88. package/dist/components/eui-button-group-button.js.map +1 -1
  89. package/dist/components/eui-button-group.js +1 -1
  90. package/dist/components/eui-button-group.js.map +1 -1
  91. package/dist/components/eui-button-icon.js +1 -1
  92. package/dist/components/eui-button-icon.js.map +1 -1
  93. package/dist/components/eui-button.js +2 -2
  94. package/dist/components/eui-button.js.map +1 -1
  95. package/dist/components/eui-call-out.js +1 -1
  96. package/dist/components/eui-call-out.js.map +1 -1
  97. package/dist/components/eui-card-select.js +8 -8
  98. package/dist/components/eui-card-select.js.map +1 -1
  99. package/dist/components/eui-card.js +6 -6
  100. package/dist/components/eui-card.js.map +1 -1
  101. package/dist/components/eui-checkable-card.js.map +1 -1
  102. package/dist/components/eui-checkbox-group.js +1 -1
  103. package/dist/components/eui-checkbox-group.js.map +1 -1
  104. package/dist/components/eui-checkbox.js +4 -4
  105. package/dist/components/eui-checkbox.js.map +1 -1
  106. package/dist/components/eui-code-block/controls.js.map +1 -1
  107. package/dist/components/eui-code-block/full-screen-display.js.map +1 -1
  108. package/dist/components/eui-code-block/virtualized.js +9 -9
  109. package/dist/components/eui-code-block/virtualized.js.map +1 -1
  110. package/dist/components/eui-code-block.js +71 -71
  111. package/dist/components/eui-code-block.js.map +1 -1
  112. package/dist/components/eui-code.js +16 -16
  113. package/dist/components/eui-code.js.map +1 -1
  114. package/dist/components/eui-collapsible-nav-group.js +1 -1
  115. package/dist/components/eui-collapsible-nav-group.js.map +1 -1
  116. package/dist/components/eui-collapsible-nav.js +21 -22
  117. package/dist/components/eui-collapsible-nav.js.map +1 -1
  118. package/dist/components/eui-combo-box/create-option.js +9 -9
  119. package/dist/components/eui-combo-box/create-option.js.map +1 -1
  120. package/dist/components/eui-combo-box/group.js.map +1 -1
  121. package/dist/components/eui-combo-box/no-matches-message.js.map +1 -1
  122. package/dist/components/eui-combo-box/options.js +32 -16
  123. package/dist/components/eui-combo-box/options.js.map +1 -1
  124. package/dist/components/eui-combo-box/search-message.js.map +1 -1
  125. package/dist/components/eui-combo-box/trigger/input.js +20 -19
  126. package/dist/components/eui-combo-box/trigger/input.js.map +1 -1
  127. package/dist/components/eui-combo-box/trigger.js +2 -2
  128. package/dist/components/eui-combo-box/trigger.js.map +1 -1
  129. package/dist/components/eui-combo-box-pill.js +1 -1
  130. package/dist/components/eui-combo-box-pill.js.map +1 -1
  131. package/dist/components/eui-combo-box.js +58 -60
  132. package/dist/components/eui-combo-box.js.map +1 -1
  133. package/dist/components/eui-comment-list.js.map +1 -1
  134. package/dist/components/eui-comment-timeline.js +1 -1
  135. package/dist/components/eui-comment-timeline.js.map +1 -1
  136. package/dist/components/eui-comment.js +1 -1
  137. package/dist/components/eui-comment.js.map +1 -1
  138. package/dist/components/eui-confirm-modal.js.map +1 -1
  139. package/dist/components/eui-context-menu-item.js +4 -4
  140. package/dist/components/eui-context-menu-item.js.map +1 -1
  141. package/dist/components/eui-context-menu-panel.js.map +1 -1
  142. package/dist/components/eui-copy.js +3 -3
  143. package/dist/components/eui-copy.js.map +1 -1
  144. package/dist/components/eui-described-form-group.js.map +1 -1
  145. package/dist/components/eui-description-list-description.js.map +1 -1
  146. package/dist/components/eui-description-list-title.js.map +1 -1
  147. package/dist/components/eui-description-list.js.map +1 -1
  148. package/dist/components/eui-dual-range.js +110 -110
  149. package/dist/components/eui-dual-range.js.map +1 -1
  150. package/dist/components/eui-empty-prompt.js +1 -1
  151. package/dist/components/eui-empty-prompt.js.map +1 -1
  152. package/dist/components/eui-field-number.js +1 -1
  153. package/dist/components/eui-field-number.js.map +1 -1
  154. package/dist/components/eui-field-password.js +1 -1
  155. package/dist/components/eui-field-password.js.map +1 -1
  156. package/dist/components/eui-field-search.js +26 -26
  157. package/dist/components/eui-field-search.js.map +1 -1
  158. package/dist/components/eui-field-text.js +1 -1
  159. package/dist/components/eui-field-text.js.map +1 -1
  160. package/dist/components/eui-file-picker.js +16 -16
  161. package/dist/components/eui-file-picker.js.map +1 -1
  162. package/dist/components/eui-flex-grid.js.map +1 -1
  163. package/dist/components/eui-flex-group.js.map +1 -1
  164. package/dist/components/eui-flex-item.js.map +1 -1
  165. package/dist/components/eui-flyout-body.js.map +1 -1
  166. package/dist/components/eui-flyout-footer.js.map +1 -1
  167. package/dist/components/eui-flyout-header.js.map +1 -1
  168. package/dist/components/eui-flyout.js +35 -36
  169. package/dist/components/eui-flyout.js.map +1 -1
  170. package/dist/components/eui-form-control-layout-clear-button.js.map +1 -1
  171. package/dist/components/eui-form-control-layout-custom-icon.js.map +1 -1
  172. package/dist/components/eui-form-control-layout-delimited.js +1 -1
  173. package/dist/components/eui-form-control-layout-delimited.js.map +1 -1
  174. package/dist/components/eui-form-control-layout-icons.js +1 -1
  175. package/dist/components/eui-form-control-layout-icons.js.map +1 -1
  176. package/dist/components/eui-form-control-layout.js +1 -1
  177. package/dist/components/eui-form-control-layout.js.map +1 -1
  178. package/dist/components/eui-form-error-text.js.map +1 -1
  179. package/dist/components/eui-form-fieldset.js.map +1 -1
  180. package/dist/components/eui-form-help-text.js.map +1 -1
  181. package/dist/components/eui-form-label.js.map +1 -1
  182. package/dist/components/eui-form-legend.js.map +1 -1
  183. package/dist/components/eui-form-row.js +4 -4
  184. package/dist/components/eui-form-row.js.map +1 -1
  185. package/dist/components/eui-form.js +1 -1
  186. package/dist/components/eui-form.js.map +1 -1
  187. package/dist/components/eui-global-toast-list.js +43 -43
  188. package/dist/components/eui-global-toast-list.js.map +1 -1
  189. package/dist/components/eui-header-alert.js.map +1 -1
  190. package/dist/components/eui-header-breadcrumbs.js.map +1 -1
  191. package/dist/components/eui-header-link.js.map +1 -1
  192. package/dist/components/eui-header-links.js +1 -1
  193. package/dist/components/eui-header-links.js.map +1 -1
  194. package/dist/components/eui-header-logo.js.map +1 -1
  195. package/dist/components/eui-header-section-item-button.js +6 -6
  196. package/dist/components/eui-header-section-item-button.js.map +1 -1
  197. package/dist/components/eui-header-section-item.js.map +1 -1
  198. package/dist/components/eui-header-section.js.map +1 -1
  199. package/dist/components/eui-header.js +2 -2
  200. package/dist/components/eui-header.js.map +1 -1
  201. package/dist/components/eui-health.js.map +1 -1
  202. package/dist/components/eui-hide-for.js.map +1 -1
  203. package/dist/components/eui-horizontal-rule.js.map +1 -1
  204. package/dist/components/eui-i18n/render.js.map +1 -1
  205. package/dist/components/eui-i18n.js +3 -3
  206. package/dist/components/eui-i18n.js.map +1 -1
  207. package/dist/components/eui-icon-tip.js.map +1 -1
  208. package/dist/components/eui-icon.js +43 -37
  209. package/dist/components/eui-icon.js.map +1 -1
  210. package/dist/components/eui-image.js +8 -8
  211. package/dist/components/eui-image.js.map +1 -1
  212. package/dist/components/eui-inner-text.js +11 -11
  213. package/dist/components/eui-inner-text.js.map +1 -1
  214. package/dist/components/eui-input-popover.js +32 -32
  215. package/dist/components/eui-input-popover.js.map +1 -1
  216. package/dist/components/eui-key-pad-menu-item.js +3 -3
  217. package/dist/components/eui-key-pad-menu-item.js.map +1 -1
  218. package/dist/components/eui-key-pad-menu.js.map +1 -1
  219. package/dist/components/eui-link.js +1 -1
  220. package/dist/components/eui-link.js.map +1 -1
  221. package/dist/components/eui-list-group-item.js +4 -1
  222. package/dist/components/eui-list-group-item.js.map +1 -1
  223. package/dist/components/eui-list-group.js +1 -1
  224. package/dist/components/eui-list-group.js.map +1 -1
  225. package/dist/components/eui-loading-content.js +1 -1
  226. package/dist/components/eui-loading-content.js.map +1 -1
  227. package/dist/components/eui-loading-logo.js.map +1 -1
  228. package/dist/components/eui-loading-spinner.js.map +1 -1
  229. package/dist/components/eui-markdown-editor-drop-zone.js.map +1 -1
  230. package/dist/components/eui-markdown-editor-footer/icons/markdown-logo.js.map +1 -1
  231. package/dist/components/eui-markdown-editor-footer.js +3 -3
  232. package/dist/components/eui-markdown-editor-footer.js.map +1 -1
  233. package/dist/components/eui-markdown-editor-text-area.js.map +1 -1
  234. package/dist/components/eui-markdown-editor-toolbar/icons/markdown-checkmark.js.map +1 -1
  235. package/dist/components/eui-markdown-editor-toolbar.js +9 -11
  236. package/dist/components/eui-markdown-editor-toolbar.js.map +1 -1
  237. package/dist/components/eui-markdown-editor.js +115 -117
  238. package/dist/components/eui-markdown-editor.js.map +1 -1
  239. package/dist/components/eui-markdown-format/markdown-checkbox.js +7 -7
  240. package/dist/components/eui-markdown-format/markdown-checkbox.js.map +1 -1
  241. package/dist/components/eui-markdown-format/markdown-code-block.js.map +1 -1
  242. package/dist/components/eui-markdown-format/markdown-code.js.map +1 -1
  243. package/dist/components/eui-markdown-format/markdown-tooltip.js.map +1 -1
  244. package/dist/components/eui-markdown-format.js +14 -16
  245. package/dist/components/eui-markdown-format.js.map +1 -1
  246. package/dist/components/eui-modal-body.js.map +1 -1
  247. package/dist/components/eui-modal-footer.js.map +1 -1
  248. package/dist/components/eui-modal-header-title.js.map +1 -1
  249. package/dist/components/eui-modal-header.js.map +1 -1
  250. package/dist/components/eui-modal.js +1 -1
  251. package/dist/components/eui-modal.js.map +1 -1
  252. package/dist/components/eui-notification-badge.js.map +1 -1
  253. package/dist/components/eui-notification-event-messages.js.map +1 -1
  254. package/dist/components/eui-notification-event-meta.js +1 -1
  255. package/dist/components/eui-notification-event-meta.js.map +1 -1
  256. package/dist/components/eui-notification-event-read-button.js.map +1 -1
  257. package/dist/components/eui-notification-event-read-icon.js.map +1 -1
  258. package/dist/components/eui-notification-event.js +1 -1
  259. package/dist/components/eui-notification-event.js.map +1 -1
  260. package/dist/components/eui-overlay-mask.js +6 -6
  261. package/dist/components/eui-overlay-mask.js.map +1 -1
  262. package/dist/components/eui-page-body.js.map +1 -1
  263. package/dist/components/eui-page-content-body.js.map +1 -1
  264. package/dist/components/eui-page-content-header-section.js.map +1 -1
  265. package/dist/components/eui-page-content-header.js.map +1 -1
  266. package/dist/components/eui-page-content.js.map +1 -1
  267. package/dist/components/eui-page-header-content.js +4 -4
  268. package/dist/components/eui-page-header-content.js.map +1 -1
  269. package/dist/components/eui-page-header-section.js.map +1 -1
  270. package/dist/components/eui-page-header.js +1 -1
  271. package/dist/components/eui-page-header.js.map +1 -1
  272. package/dist/components/eui-page-side-bar.js.map +1 -1
  273. package/dist/components/eui-page-template.js +12 -12
  274. package/dist/components/eui-page-template.js.map +1 -1
  275. package/dist/components/eui-page.js.map +1 -1
  276. package/dist/components/eui-pagination/button-wrapper.js.map +1 -1
  277. package/dist/components/eui-pagination/next-button.js +1 -1
  278. package/dist/components/eui-pagination/next-button.js.map +1 -1
  279. package/dist/components/eui-pagination/previous-button.js +1 -1
  280. package/dist/components/eui-pagination/previous-button.js.map +1 -1
  281. package/dist/components/eui-pagination-button.js.map +1 -1
  282. package/dist/components/eui-pagination.js +39 -39
  283. package/dist/components/eui-pagination.js.map +1 -1
  284. package/dist/components/eui-panel.js +1 -1
  285. package/dist/components/eui-panel.js.map +1 -1
  286. package/dist/components/eui-popover-footer.js.map +1 -1
  287. package/dist/components/eui-popover-title.js.map +1 -1
  288. package/dist/components/eui-popover.js +126 -126
  289. package/dist/components/eui-popover.js.map +1 -1
  290. package/dist/components/eui-portal.js +8 -8
  291. package/dist/components/eui-portal.js.map +1 -1
  292. package/dist/components/eui-progress.js +1 -1
  293. package/dist/components/eui-progress.js.map +1 -1
  294. package/dist/components/eui-radio-group.js +2 -2
  295. package/dist/components/eui-radio-group.js.map +1 -1
  296. package/dist/components/eui-radio.js +1 -1
  297. package/dist/components/eui-radio.js.map +1 -1
  298. package/dist/components/eui-range-highlight.js.map +1 -1
  299. package/dist/components/eui-range-input.js +1 -1
  300. package/dist/components/eui-range-input.js.map +1 -1
  301. package/dist/components/eui-range-label.js.map +1 -1
  302. package/dist/components/eui-range-levels.js +7 -7
  303. package/dist/components/eui-range-levels.js.map +1 -1
  304. package/dist/components/eui-range-slider.js.map +1 -1
  305. package/dist/components/eui-range-thumb.js.map +1 -1
  306. package/dist/components/eui-range-ticks.js +6 -6
  307. package/dist/components/eui-range-ticks.js.map +1 -1
  308. package/dist/components/eui-range-tooltip.js +20 -20
  309. package/dist/components/eui-range-tooltip.js.map +1 -1
  310. package/dist/components/eui-range-track.js +49 -49
  311. package/dist/components/eui-range-track.js.map +1 -1
  312. package/dist/components/eui-range-wrapper.js.map +1 -1
  313. package/dist/components/eui-range.js +26 -26
  314. package/dist/components/eui-range.js.map +1 -1
  315. package/dist/components/eui-select.js +1 -1
  316. package/dist/components/eui-select.js.map +1 -1
  317. package/dist/components/eui-selectable-list-item.js +1 -1
  318. package/dist/components/eui-selectable-list-item.js.map +1 -1
  319. package/dist/components/eui-show-for.js +8 -8
  320. package/dist/components/eui-show-for.js.map +1 -1
  321. package/dist/components/eui-side-nav-item/button.js.map +1 -1
  322. package/dist/components/eui-side-nav-item.js +1 -1
  323. package/dist/components/eui-side-nav-item.js.map +1 -1
  324. package/dist/components/eui-side-nav.js +4 -4
  325. package/dist/components/eui-side-nav.js.map +1 -1
  326. package/dist/components/eui-spacer.js.map +1 -1
  327. package/dist/components/eui-split-panel/inner.js.map +1 -1
  328. package/dist/components/eui-split-panel/outer.js +1 -1
  329. package/dist/components/eui-split-panel/outer.js.map +1 -1
  330. package/dist/components/eui-stat/description.js +1 -0
  331. package/dist/components/eui-stat/description.js.map +1 -1
  332. package/dist/components/eui-stat/title.js.map +1 -1
  333. package/dist/components/eui-stat.js +5 -5
  334. package/dist/components/eui-stat.js.map +1 -1
  335. package/dist/components/eui-step-horizontal.js.map +1 -1
  336. package/dist/components/eui-step-number.js +1 -1
  337. package/dist/components/eui-step-number.js.map +1 -1
  338. package/dist/components/eui-step.js.map +1 -1
  339. package/dist/components/eui-steps-horizontal.js.map +1 -1
  340. package/dist/components/eui-steps.js.map +1 -1
  341. package/dist/components/eui-sub-steps.js.map +1 -1
  342. package/dist/components/eui-super-date-picker/date-popover/absolute-tab.js +27 -27
  343. package/dist/components/eui-super-date-picker/date-popover/absolute-tab.js.map +1 -1
  344. package/dist/components/eui-super-date-picker/date-popover/datetime-picker.js +73 -73
  345. package/dist/components/eui-super-date-picker/date-popover/datetime-picker.js.map +1 -1
  346. package/dist/components/eui-super-date-picker/date-popover/eui-date-popover-button.js +6 -6
  347. package/dist/components/eui-super-date-picker/date-popover/eui-date-popover-button.js.map +1 -1
  348. package/dist/components/eui-super-date-picker/date-popover/eui-date-popover-content.js +5 -5
  349. package/dist/components/eui-super-date-picker/date-popover/eui-date-popover-content.js.map +1 -1
  350. package/dist/components/eui-super-date-picker/date-popover/now-tab.js.map +1 -1
  351. package/dist/components/eui-super-date-picker/date-popover/relative-tab.js +27 -27
  352. package/dist/components/eui-super-date-picker/date-popover/relative-tab.js.map +1 -1
  353. package/dist/components/eui-super-date-picker/eui-date-picker-range.js.map +1 -1
  354. package/dist/components/eui-super-date-picker/eui-quick-select-popover/eui-commonly-used-time-ranges.js +1 -1
  355. package/dist/components/eui-super-date-picker/eui-quick-select-popover/eui-commonly-used-time-ranges.js.map +1 -1
  356. package/dist/components/eui-super-date-picker/eui-quick-select-popover/eui-quick-select.js +25 -25
  357. package/dist/components/eui-super-date-picker/eui-quick-select-popover/eui-quick-select.js.map +1 -1
  358. package/dist/components/eui-super-date-picker/eui-quick-select-popover/eui-recently-used.js +1 -1
  359. package/dist/components/eui-super-date-picker/eui-quick-select-popover/eui-recently-used.js.map +1 -1
  360. package/dist/components/eui-super-date-picker/eui-quick-select-popover.js +9 -9
  361. package/dist/components/eui-super-date-picker/eui-quick-select-popover.js.map +1 -1
  362. package/dist/components/eui-super-date-picker/eui-super-update-button.js.map +1 -1
  363. package/dist/components/eui-super-date-picker/utils/date-utils.js.map +1 -1
  364. package/dist/components/eui-super-date-picker/utils/index.js.map +1 -1
  365. package/dist/components/eui-super-date-picker/utils/pretty-duration.js.map +1 -1
  366. package/dist/components/eui-super-date-picker/utils/quick-select.js +1 -1
  367. package/dist/components/eui-super-date-picker/utils/quick-select.js.map +1 -1
  368. package/dist/components/eui-super-date-picker/utils/time-options.js.map +1 -1
  369. package/dist/components/eui-super-date-picker.js +34 -34
  370. package/dist/components/eui-super-date-picker.js.map +1 -1
  371. package/dist/components/eui-switch.js +4 -4
  372. package/dist/components/eui-switch.js.map +1 -1
  373. package/dist/components/eui-tab.js +1 -1
  374. package/dist/components/eui-tab.js.map +1 -1
  375. package/dist/components/eui-tabbed-content.js +31 -31
  376. package/dist/components/eui-tabbed-content.js.map +1 -1
  377. package/dist/components/eui-tabs.js.map +1 -1
  378. package/dist/components/eui-text-align.js.map +1 -1
  379. package/dist/components/eui-text-area.js.map +1 -1
  380. package/dist/components/eui-text-color.js.map +1 -1
  381. package/dist/components/eui-text.js +1 -1
  382. package/dist/components/eui-text.js.map +1 -1
  383. package/dist/components/eui-title.js.map +1 -1
  384. package/dist/components/eui-toast.js.map +1 -1
  385. package/dist/components/eui-tool-tip-popover.js +5 -5
  386. package/dist/components/eui-tool-tip-popover.js.map +1 -1
  387. package/dist/components/eui-tool-tip.js +44 -46
  388. package/dist/components/eui-tool-tip.js.map +1 -1
  389. package/dist/components/text-block.js.map +1 -1
  390. package/dist/helpers/arg-or-default.js.map +1 -1
  391. package/dist/helpers/cast-to.js.map +1 -1
  392. package/dist/helpers/class-names.js.map +1 -1
  393. package/dist/helpers/eui-page-restrict-width.js.map +1 -1
  394. package/dist/helpers/eui-palette.js +1 -1
  395. package/dist/helpers/eui-palette.js.map +1 -1
  396. package/dist/helpers/get-eui-config.js +1 -1
  397. package/dist/helpers/get-eui-config.js.map +1 -1
  398. package/dist/helpers/get-range-tick.js.map +1 -1
  399. package/dist/helpers/hex-to-rgb.js.map +1 -1
  400. package/dist/helpers/inline-styles.js.map +1 -1
  401. package/dist/helpers/is-color-dark.js.map +1 -1
  402. package/dist/helpers/is-item-open.js.map +1 -1
  403. package/dist/helpers/is-valid-hex.js.map +1 -1
  404. package/dist/helpers/is-within-number.js.map +1 -1
  405. package/dist/helpers/merge.js.map +1 -1
  406. package/dist/helpers/nullish.js.map +1 -1
  407. package/dist/helpers/starts-with.js.map +1 -1
  408. package/dist/helpers/to-initials.js.map +1 -1
  409. package/dist/helpers/type-of.js.map +1 -1
  410. package/dist/helpers/use-state.js +1 -1
  411. package/dist/helpers/use-state.js.map +1 -1
  412. package/dist/i18n/util.js.map +1 -1
  413. package/dist/modifiers/mutation-observer.js.map +1 -1
  414. package/dist/modifiers/outside-click-detector.js +4 -0
  415. package/dist/modifiers/outside-click-detector.js.map +1 -1
  416. package/dist/modifiers/resize-observer.js +3 -0
  417. package/dist/modifiers/resize-observer.js.map +1 -1
  418. package/dist/modifiers/screen-reader-only.js.map +1 -1
  419. package/dist/modifiers/simple-style.js.map +1 -1
  420. package/dist/modifiers/use-is-within-breakpoints.js.map +1 -1
  421. package/dist/modifiers/validatable-control.js.map +1 -1
  422. package/dist/services/eui-config.js +1 -1
  423. package/dist/services/eui-config.js.map +1 -1
  424. package/dist/services/eui-i18n.js.map +1 -1
  425. package/dist/services/eui-toaster.js +1 -1
  426. package/dist/services/eui-toaster.js.map +1 -1
  427. package/dist/utils/accesibility/accessible-click-keys.js +1 -1
  428. package/dist/utils/accesibility/accessible-click-keys.js.map +1 -1
  429. package/dist/utils/accesibility/cascading-menu-keys.js +1 -1
  430. package/dist/utils/accesibility/cascading-menu-keys.js.map +1 -1
  431. package/dist/utils/accesibility/combo-box-keys.js +1 -1
  432. package/dist/utils/accesibility/combo-box-keys.js.map +1 -1
  433. package/dist/utils/breakpoint.js.map +1 -1
  434. package/dist/utils/browser/browser.js.map +1 -1
  435. package/dist/utils/code/utils.js.map +1 -1
  436. package/dist/utils/color/color_palette.js.map +1 -1
  437. package/dist/utils/color/eui_palettes.js.map +1 -1
  438. package/dist/utils/copy-to-clipboard.js.map +1 -1
  439. package/dist/utils/css-mappings/eui-accordion.js.map +1 -1
  440. package/dist/utils/css-mappings/eui-avatar.js +1 -1
  441. package/dist/utils/css-mappings/eui-avatar.js.map +1 -1
  442. package/dist/utils/css-mappings/eui-badge-group.js.map +1 -1
  443. package/dist/utils/css-mappings/eui-badge.js.map +1 -1
  444. package/dist/utils/css-mappings/eui-beta-badge.js.map +1 -1
  445. package/dist/utils/css-mappings/eui-bottom-bar.js.map +1 -1
  446. package/dist/utils/css-mappings/eui-button-empty.js.map +1 -1
  447. package/dist/utils/css-mappings/eui-button-group-button.js.map +1 -1
  448. package/dist/utils/css-mappings/eui-button-group.js.map +1 -1
  449. package/dist/utils/css-mappings/eui-button-icon.js.map +1 -1
  450. package/dist/utils/css-mappings/eui-button.js.map +1 -1
  451. package/dist/utils/css-mappings/eui-call-out.js.map +1 -1
  452. package/dist/utils/css-mappings/eui-card-select.js.map +1 -1
  453. package/dist/utils/css-mappings/eui-card.js.map +1 -1
  454. package/dist/utils/css-mappings/eui-code-block.js.map +1 -1
  455. package/dist/utils/css-mappings/eui-collapsible-nav-group.js.map +1 -1
  456. package/dist/utils/css-mappings/eui-comment-event.js.map +1 -1
  457. package/dist/utils/css-mappings/eui-comment-timeline-icon.js.map +1 -1
  458. package/dist/utils/css-mappings/eui-context-menu-item.js.map +1 -1
  459. package/dist/utils/css-mappings/eui-described-form-group.js.map +1 -1
  460. package/dist/utils/css-mappings/eui-description-list.js.map +1 -1
  461. package/dist/utils/css-mappings/eui-empty-prompt.js.map +1 -1
  462. package/dist/utils/css-mappings/eui-file-picker.js.map +1 -1
  463. package/dist/utils/css-mappings/eui-flex-grid.js.map +1 -1
  464. package/dist/utils/css-mappings/eui-flex-group.js.map +1 -1
  465. package/dist/utils/css-mappings/eui-flex-item.js.map +1 -1
  466. package/dist/utils/css-mappings/eui-flyout.js.map +1 -1
  467. package/dist/utils/css-mappings/eui-form-control-layout-clear-button.js.map +1 -1
  468. package/dist/utils/css-mappings/eui-form-row.js.map +1 -1
  469. package/dist/utils/css-mappings/eui-global-toast-list.js.map +1 -1
  470. package/dist/utils/css-mappings/eui-header-links.js.map +1 -1
  471. package/dist/utils/css-mappings/eui-header-section-item.js.map +1 -1
  472. package/dist/utils/css-mappings/eui-header-section.js.map +1 -1
  473. package/dist/utils/css-mappings/eui-header.js.map +1 -1
  474. package/dist/utils/css-mappings/eui-health.js.map +1 -1
  475. package/dist/utils/css-mappings/eui-horizontal-rule.js.map +1 -1
  476. package/dist/utils/css-mappings/eui-icon.js.map +1 -1
  477. package/dist/utils/css-mappings/eui-image.js.map +1 -1
  478. package/dist/utils/css-mappings/eui-link.js.map +1 -1
  479. package/dist/utils/css-mappings/eui-list-group-item.js.map +1 -1
  480. package/dist/utils/css-mappings/eui-list-group.js.map +1 -1
  481. package/dist/utils/css-mappings/eui-loading-spinner.js.map +1 -1
  482. package/dist/utils/css-mappings/eui-modal.js.map +1 -1
  483. package/dist/utils/css-mappings/eui-notification-badge.js.map +1 -1
  484. package/dist/utils/css-mappings/eui-page-body.js.map +1 -1
  485. package/dist/utils/css-mappings/eui-page-content-body.js.map +1 -1
  486. package/dist/utils/css-mappings/eui-page-content.js.map +1 -1
  487. package/dist/utils/css-mappings/eui-page-header.js.map +1 -1
  488. package/dist/utils/css-mappings/eui-page-side-bar.js.map +1 -1
  489. package/dist/utils/css-mappings/eui-page.js.map +1 -1
  490. package/dist/utils/css-mappings/eui-panel.js.map +1 -1
  491. package/dist/utils/css-mappings/eui-popover-footer.js.map +1 -1
  492. package/dist/utils/css-mappings/eui-popover-title.js.map +1 -1
  493. package/dist/utils/css-mappings/eui-popover.js.map +1 -1
  494. package/dist/utils/css-mappings/eui-progress-data.js.map +1 -1
  495. package/dist/utils/css-mappings/eui-progress.js.map +1 -1
  496. package/dist/utils/css-mappings/eui-range-highlight.js.map +1 -1
  497. package/dist/utils/css-mappings/eui-range-input.js.map +1 -1
  498. package/dist/utils/css-mappings/eui-range-levels.js.map +1 -1
  499. package/dist/utils/css-mappings/eui-selectable-list-item.js.map +1 -1
  500. package/dist/utils/css-mappings/eui-spacer.js.map +1 -1
  501. package/dist/utils/css-mappings/eui-stat.js.map +1 -1
  502. package/dist/utils/css-mappings/eui-step-number.js.map +1 -1
  503. package/dist/utils/css-mappings/eui-tabs.js.map +1 -1
  504. package/dist/utils/css-mappings/eui-text-align.js.map +1 -1
  505. package/dist/utils/css-mappings/eui-text-area.js.map +1 -1
  506. package/dist/utils/css-mappings/eui-text-color.js.map +1 -1
  507. package/dist/utils/css-mappings/eui-text.js.map +1 -1
  508. package/dist/utils/css-mappings/eui-title.js.map +1 -1
  509. package/dist/utils/css-mappings/eui-toast.js.map +1 -1
  510. package/dist/utils/css-mappings/eui-tool-tip.js.map +1 -1
  511. package/dist/utils/css-mappings/index.js +140 -140
  512. package/dist/utils/css-mappings/index.js.map +1 -1
  513. package/dist/utils/detect-element-resize.js.map +1 -1
  514. package/dist/utils/keys.js.map +1 -1
  515. package/dist/utils/markdown/markdown-actions.js +1 -0
  516. package/dist/utils/markdown/markdown-actions.js.map +1 -1
  517. package/dist/utils/markdown/markdown-modes.js.map +1 -1
  518. package/dist/utils/markdown/markdown-types.js.map +1 -1
  519. package/dist/utils/markdown/plugins/markdown-add-components/processor.js.map +1 -1
  520. package/dist/utils/markdown/plugins/markdown-checkbox/parser.js.map +1 -1
  521. package/dist/utils/markdown/plugins/markdown-default-plugins/parsing-plugins.js.map +1 -1
  522. package/dist/utils/markdown/plugins/markdown-default-plugins/plugins.js.map +1 -1
  523. package/dist/utils/markdown/plugins/markdown-default-plugins/processing-plugins.js.map +1 -1
  524. package/dist/utils/markdown/plugins/markdown-default-plugins/ui-plugins.js.map +1 -1
  525. package/dist/utils/markdown/plugins/markdown-tooltip/parser.js.map +1 -1
  526. package/dist/utils/markdown/plugins/markdown-tooltip/plugin.js.map +1 -1
  527. package/dist/utils/markdown/plugins/to-dom.js.map +1 -1
  528. package/dist/utils/markdown/remark/remark-prismjs.js.map +1 -1
  529. package/dist/utils/maybe-unwrap-proxy.js.map +1 -1
  530. package/dist/utils/number/number.js.map +1 -1
  531. package/dist/utils/popover/index.js +1 -4
  532. package/dist/utils/popover/index.js.map +1 -1
  533. package/dist/utils/predicate/common_predicates.js.map +1 -1
  534. package/dist/utils/predicate/lodash_predicates.js.map +1 -1
  535. package/dist/utils/timer.js +4 -1
  536. package/dist/utils/timer.js.map +1 -1
  537. package/dist/utils/transition.js.map +1 -1
  538. package/package.json +63 -46
  539. package/declarations/modifiers/open-collapsible-nav.d.ts +0 -9
  540. package/declarations/modifiers/open-collapsible-nav.d.ts.map +0 -1
@@ -9,7 +9,7 @@ import onKey from 'ember-keyboard/modifiers/on-key';
9
9
  import { modifier } from 'ember-modifier';
10
10
  import set from 'ember-set-helper/helpers/set';
11
11
  import style from 'ember-style-modifier/modifiers/style';
12
- import { or, and, eq, not } from 'ember-truth-helpers';
12
+ import { not, eq, and, or } from 'ember-truth-helpers';
13
13
  import EuiCodeBlockControls from './eui-code-block/controls.js';
14
14
  import FullScreenDisplay from './eui-code-block/full-screen-display.js';
15
15
  import EuiCodeBlockVirtualizedComponent from './eui-code-block/virtualized.js';
@@ -27,62 +27,62 @@ const fontSizeToRowHeightMap = {
27
27
  m: 21,
28
28
  l: 24
29
29
  };
30
- const highlightTargetModifier = modifier((_e1, _pos1, {
31
- element: targetEle1,
32
- language: language1 = 'text',
33
- lineNumbersConfig: lineNumbersConfig1 = {
30
+ const highlightTargetModifier = modifier((_e, _pos, {
31
+ element: targetEle,
32
+ language = 'text',
33
+ lineNumbersConfig = {
34
34
  start: 1,
35
35
  show: false
36
36
  },
37
- onChange: onChange1
37
+ onChange
38
38
  }) => {
39
- let observer1;
40
- const getHighlighedHtml1 = () => {
41
- const html1 = (targetEle1?.textContent ? targetEle1.textContent : '').trim();
42
- let data1;
43
- if (typeof html1 !== 'string') {
44
- data1 = [];
39
+ let observer;
40
+ const getHighlighedHtml = () => {
41
+ const html = (targetEle?.textContent ? targetEle.textContent : '').trim();
42
+ let data;
43
+ if (typeof html !== 'string') {
44
+ data = [];
45
45
  } else {
46
- data1 = highlightByLine(html1, language1, lineNumbersConfig1);
46
+ data = highlightByLine(html, language, lineNumbersConfig);
47
47
  }
48
48
  return {
49
- data: data1,
50
- element: getHtmlContent(data1).element
49
+ data,
50
+ element: getHtmlContent(data).element
51
51
  };
52
52
  };
53
- const setupObserver1 = () => {
54
- const newObserver1 = new MutationObserver(mutationsList1 => {
55
- if (mutationsList1.length) {
56
- onChange1(getHighlighedHtml1());
53
+ const setupObserver = () => {
54
+ const newObserver = new MutationObserver(mutationsList => {
55
+ if (mutationsList.length) {
56
+ onChange(getHighlighedHtml());
57
57
  }
58
58
  });
59
- if (targetEle1) {
60
- onChange1(getHighlighedHtml1());
61
- newObserver1.observe(targetEle1, {
59
+ if (targetEle) {
60
+ onChange(getHighlighedHtml());
61
+ newObserver.observe(targetEle, {
62
62
  characterData: true,
63
63
  subtree: true,
64
64
  childList: true
65
65
  });
66
66
  }
67
- return newObserver1;
67
+ return newObserver;
68
68
  };
69
- if (targetEle1) {
70
- observer1 = setupObserver1();
69
+ if (targetEle) {
70
+ observer = setupObserver();
71
71
  }
72
72
  return () => {
73
- observer1?.disconnect();
73
+ observer?.disconnect();
74
74
  };
75
75
  });
76
- const cleanTextHelper = helper(function ([text1]) {
77
- return text1?.replace(/[\r\n?]{2}|\n\n/g, '\n') || '';
76
+ const cleanTextHelper = helper(function ([text]) {
77
+ return text?.replace(/[\r\n?]{2}|\n\n/g, '\n') || '';
78
78
  });
79
- const textToCopyHelper = helper(function (_pos1, {
80
- isVirtualized: isVirtualized1,
81
- element: element1,
82
- innerText: innerText1
79
+ const textToCopyHelper = helper(function (_pos, {
80
+ isVirtualized,
81
+ element,
82
+ innerText
83
83
  }) {
84
- if (element1) {
85
- return isVirtualized1 ? element1.textContent ? element1.textContent : '' : innerText1;
84
+ if (element) {
85
+ return isVirtualized ? element.textContent ? element.textContent : '' : innerText;
86
86
  }
87
87
  return '';
88
88
  });
@@ -90,35 +90,35 @@ class EuiCodeBlockComponent extends Component {
90
90
  static {
91
91
  g(this.prototype, "codeTarget", [tracked]);
92
92
  }
93
- #codeTarget = (i(this, "codeTarget"), void 0); //fake element where yield writes to, so we can observe and clone a highlighted version to code and codeFullSceen
93
+ #codeTarget = (i(this, "codeTarget"), undefined); //fake element where yield writes to, so we can observe and clone a highlighted version to code and codeFullSceen
94
94
  static {
95
95
  g(this.prototype, "code", [tracked]);
96
96
  }
97
- #code = (i(this, "code"), void 0); //<code> Element for non fullscreen
97
+ #code = (i(this, "code"), undefined); //<code> Element for non fullscreen
98
98
  static {
99
99
  g(this.prototype, "codeFullScreen", [tracked]);
100
100
  }
101
- #codeFullScreen = (i(this, "codeFullScreen"), void 0); //<code> Element for fullscreen modal
101
+ #codeFullScreen = (i(this, "codeFullScreen"), undefined); //<code> Element for fullscreen modal
102
102
  static {
103
103
  g(this.prototype, "wrapperRef", [tracked]);
104
104
  }
105
- #wrapperRef = (i(this, "wrapperRef"), void 0);
105
+ #wrapperRef = (i(this, "wrapperRef"), undefined);
106
106
  static {
107
107
  g(this.prototype, "tabIndex", [tracked], function () {
108
108
  return 1;
109
109
  });
110
110
  }
111
- #tabIndex = (i(this, "tabIndex"), void 0);
111
+ #tabIndex = (i(this, "tabIndex"), undefined);
112
112
  static {
113
113
  g(this.prototype, "isFullScreen", [tracked], function () {
114
114
  return false;
115
115
  });
116
116
  }
117
- #isFullScreen = (i(this, "isFullScreen"), void 0);
117
+ #isFullScreen = (i(this, "isFullScreen"), undefined);
118
118
  static {
119
119
  g(this.prototype, "data", [tracked]);
120
120
  }
121
- #data = (i(this, "data"), void 0);
121
+ #data = (i(this, "data"), undefined);
122
122
  get language() {
123
123
  return checkSupportedLanguage(this.args.language || '');
124
124
  }
@@ -145,24 +145,24 @@ class EuiCodeBlockComponent extends Component {
145
145
  }
146
146
  get lineNumbersConfig() {
147
147
  const {
148
- lineNumbers: lineNumbers1
148
+ lineNumbers
149
149
  } = this;
150
- const config1 = typeof lineNumbers1 === 'object' ? lineNumbers1 : {};
151
- return lineNumbers1 ? {
150
+ const config = typeof lineNumbers === 'object' ? lineNumbers : {};
151
+ return lineNumbers ? {
152
152
  start: 1,
153
153
  show: true,
154
- ...config1
154
+ ...config
155
155
  } : {
156
156
  start: 1,
157
157
  show: false
158
158
  };
159
159
  }
160
160
  get optionalStyles() {
161
- const overflowHeight1 = this.args.overflowHeight;
162
- if (overflowHeight1) {
163
- const property1 = typeof overflowHeight1 === 'string' ? 'height' : 'maxHeight';
161
+ const overflowHeight = this.args.overflowHeight;
162
+ if (overflowHeight) {
163
+ const property = typeof overflowHeight === 'string' ? 'height' : 'maxHeight';
164
164
  return {
165
- [property1]: typeof overflowHeight1 === 'string' ? overflowHeight1 : `${overflowHeight1}px`
165
+ [property]: typeof overflowHeight === 'string' ? overflowHeight : `${overflowHeight}px`
166
166
  };
167
167
  }
168
168
  return {};
@@ -176,8 +176,8 @@ class EuiCodeBlockComponent extends Component {
176
176
  get showFullScreenButton() {
177
177
  return !!this.args.overflowHeight;
178
178
  }
179
- constructor(owner1, args1) {
180
- super(owner1, args1);
179
+ constructor(owner, args) {
180
+ super(owner, args);
181
181
  this.codeTarget = document.createElement('div');
182
182
  }
183
183
  toggleFullScreen() {
@@ -186,9 +186,9 @@ class EuiCodeBlockComponent extends Component {
186
186
  static {
187
187
  n(this.prototype, "toggleFullScreen", [action]);
188
188
  }
189
- closeFullScreen(e1) {
190
- e1.preventDefault();
191
- e1.stopPropagation();
189
+ closeFullScreen(e) {
190
+ e.preventDefault();
191
+ e.stopPropagation();
192
192
  this.isFullScreen = false;
193
193
  }
194
194
  static {
@@ -197,31 +197,31 @@ class EuiCodeBlockComponent extends Component {
197
197
  doesOverflow() {
198
198
  if (!this.wrapperRef) return;
199
199
  const {
200
- clientWidth: clientWidth1,
201
- clientHeight: clientHeight1,
202
- scrollWidth: scrollWidth1,
203
- scrollHeight: scrollHeight1
200
+ clientWidth,
201
+ clientHeight,
202
+ scrollWidth,
203
+ scrollHeight
204
204
  } = this.wrapperRef;
205
- const doesOverflow1 = scrollHeight1 > clientHeight1 || scrollWidth1 > clientWidth1;
206
- this.tabIndex = doesOverflow1 ? 0 : -1;
205
+ const doesOverflow = scrollHeight > clientHeight || scrollWidth > clientWidth;
206
+ this.tabIndex = doesOverflow ? 0 : -1;
207
207
  }
208
208
  static {
209
209
  n(this.prototype, "doesOverflow", [action]);
210
210
  }
211
- updateCode(resp1) {
212
- const render1 = () => {
213
- const code1 = this.code;
214
- const codeFullScreen1 = this.codeFullScreen;
215
- if (code1 && !this.isFullScreen) {
216
- this.data = resp1;
217
- code1.innerHTML = resp1.element.innerHTML;
211
+ updateCode(resp) {
212
+ const render = () => {
213
+ const code = this.code;
214
+ const codeFullScreen = this.codeFullScreen;
215
+ if (code && !this.isFullScreen) {
216
+ this.data = resp;
217
+ code.innerHTML = resp.element.innerHTML;
218
218
  }
219
- if (codeFullScreen1 && this.isFullScreen) {
220
- this.data = resp1;
221
- codeFullScreen1.innerHTML = resp1.element.innerHTML;
219
+ if (codeFullScreen && this.isFullScreen) {
220
+ this.data = resp;
221
+ codeFullScreen.innerHTML = resp.element.innerHTML;
222
222
  }
223
223
  };
224
- scheduleOnce('afterRender', this, render1);
224
+ scheduleOnce('afterRender', this, render);
225
225
  }
226
226
  static {
227
227
  n(this.prototype, "updateCode", [action]);
@@ -1 +1 @@
1
- {"version":3,"file":"eui-code-block.js","sources":["../../src/components/eui-code-block.gts"],"sourcesContent":["import { template } from \"@ember/template-compiler\";\nimport Component from '@glimmer/component';\nimport { tracked } from '@glimmer/tracking';\nimport { helper } from '@ember/component/helper';\nimport { hash } from '@ember/helper';\nimport { action } from '@ember/object';\nimport didInsert from '@ember/render-modifiers/modifiers/did-insert';\nimport { scheduleOnce } from '@ember/runloop';\nimport onKey from 'ember-keyboard/modifiers/on-key';\nimport { modifier } from 'ember-modifier';\nimport set from 'ember-set-helper/helpers/set';\nimport style from 'ember-style-modifier/modifiers/style';\nimport { and, eq, not, or } from 'ember-truth-helpers';\nimport Controls from '../components/eui-code-block/controls.gts';\nimport FullScreenDisplay from '../components/eui-code-block/full-screen-display.gts';\nimport VirtualizedCodeBlock from '../components/eui-code-block/virtualized.gts';\nimport EuiInnerText from '../components/eui-inner-text.gts';\nimport classNames from '../helpers/class-names.ts';\nimport mutationObserver from '../modifiers/mutation-observer.ts';\nimport resizeObserver from '../modifiers/resize-observer.ts';\nimport { checkSupportedLanguage, getHtmlContent, highlightByLine } from '../utils/code/utils.ts';\nimport type { EuiCodeSharedProps } from '../utils/code/utils.ts';\nimport type { RefractorNode } from 'refractor';\ninterface LineNumbersConfig {\n start?: number;\n highlight?: string;\n show?: boolean;\n}\nexport type PaddingSize = 'none' | 's' | 'm' | 'l';\nexport type FontSize = 's' | 'm' | 'l';\nconst fontSizeToRowHeightMap = {\n s: 18,\n m: 21,\n l: 24\n};\nexport type EuiCodeBlockArgs = EuiCodeSharedProps & {\n paddingSize?: PaddingSize;\n fontSize?: FontSize;\n /**\n * Specify how `white-space` inside the element is handled.\n * `pre` respects line breaks/white space but doesn't force them to wrap the line\n * `pre-wrap` respects line breaks/white space but does force them to wrap the line when necessary.\n */ whiteSpace?: 'pre' | 'pre-wrap';\n /**\n * Displays an icon button to copy the code snippet to the clipboard.\n */ isCopyable?: boolean;\n /**\n * Displays line numbers.\n * Optionally accepts a configuration object for setting the starting number and visual highlighting ranges:\n * `{ start: 100, highlight: '1, 5-10, 20-30, 40' }`\n */ lineNumbers?: boolean | LineNumbersConfig;\n /**\n * Sets the maximum container height.\n * Accepts a pixel value (`300`) or a percentage (`'100%'`)\n * Ensure the container has calcuable height when using a percentage\n */ overflowHeight?: number | string;\n /**\n * Renders code block lines virtually.\n * Useful for improving load times of large code blocks.\n *\n * When using this configuration, `overflowHeight` is required and\n * `whiteSpace` can only be `pre`.\n */ isVirtualized?: boolean;\n};\nexport interface EuiCodeBlockSignature {\n Element: HTMLElement;\n Args: EuiCodeBlockArgs;\n Blocks: {\n default: [];\n };\n}\ninterface LineNumbersFinal {\n start: number;\n show: boolean;\n highlight?: string;\n}\nconst highlightTargetModifier = modifier((_e1, _pos1: unknown[], { element: targetEle1, language: language1 = 'text', lineNumbersConfig: lineNumbersConfig1 = {\n start: 1,\n show: false\n}, onChange: onChange1 }: {\n element: Element | undefined;\n language: EuiCodeSharedProps['language'];\n lineNumbersConfig: LineNumbersFinal;\n onChange: ({ data, element }: {\n data: RefractorNode[];\n element: HTMLElement;\n }) => void;\n})=>{\n let observer1: undefined | MutationObserver;\n const getHighlighedHtml1 = ()=>{\n const html1 = (targetEle1?.textContent ? targetEle1.textContent : '').trim();\n let data1: RefractorNode[];\n if (typeof html1 !== 'string') {\n data1 = [];\n } else {\n data1 = highlightByLine(html1, language1, lineNumbersConfig1);\n }\n return {\n data: data1,\n element: getHtmlContent(data1).element\n };\n };\n const setupObserver1 = ()=>{\n const newObserver1 = new MutationObserver((mutationsList1)=>{\n if (mutationsList1.length) {\n onChange1(getHighlighedHtml1());\n }\n });\n if (targetEle1) {\n onChange1(getHighlighedHtml1());\n newObserver1.observe(targetEle1, {\n characterData: true,\n subtree: true,\n childList: true\n });\n }\n return newObserver1;\n };\n if (targetEle1) {\n observer1 = setupObserver1();\n }\n return ()=>{\n observer1?.disconnect();\n };\n});\nconst cleanTextHelper = helper(function([text1]: [string]) {\n return text1?.replace(/[\\r\\n?]{2}|\\n\\n/g, '\\n') || '';\n});\nconst textToCopyHelper = helper(function(_pos1, { isVirtualized: isVirtualized1, element: element1, innerText: innerText1 }: {\n isVirtualized: boolean;\n element: HTMLElement | undefined;\n innerText: string;\n}) {\n if (element1) {\n return isVirtualized1 ? element1.textContent ? element1.textContent : '' : innerText1;\n }\n return '';\n});\nexport default class EuiCodeBlockComponent extends Component<EuiCodeBlockSignature> {\n //fake element where yield writes to, so we can observe and clone a highlighted version to code and codeFullSceen\n @tracked\n codeTarget?: HTMLElement;\n //<code> Element for non fullscreen\n @tracked\n code?: HTMLElement;\n //<code> Element for fullscreen modal\n @tracked\n codeFullScreen?: HTMLElement;\n @tracked\n wrapperRef?: HTMLElement;\n @tracked\n tabIndex = 1;\n @tracked\n isFullScreen = false;\n @tracked\n data?: {\n data: RefractorNode[];\n element: HTMLElement;\n };\n get language() {\n return checkSupportedLanguage(this.args.language || '');\n }\n get transparentBackground() {\n return this.args.transparentBackground ?? false;\n }\n get paddingSize() {\n return this.args.paddingSize ?? 'l';\n }\n get fontSize() {\n return this.args.fontSize ?? 's';\n }\n get isCopyable() {\n return this.args.isCopyable ?? false;\n }\n get whiteSpace() {\n return this.args.whiteSpace ?? 'pre-wrap';\n }\n get isVirtualized() {\n return !!(this.args.isVirtualized && Array.isArray(this.data?.data));\n }\n get lineNumbers() {\n return this.args.lineNumbers ?? false;\n }\n get lineNumbersConfig() {\n const { lineNumbers: lineNumbers1 } = this;\n const config1 = typeof lineNumbers1 === 'object' ? lineNumbers1 : {};\n return lineNumbers1 ? {\n start: 1,\n show: true,\n ...config1\n } : {\n start: 1,\n show: false\n };\n }\n get optionalStyles() {\n const overflowHeight1 = this.args.overflowHeight;\n if (overflowHeight1) {\n const property1 = typeof overflowHeight1 === 'string' ? 'height' : 'maxHeight';\n return {\n [property1]: typeof overflowHeight1 === 'string' ? overflowHeight1 : `${overflowHeight1}px`\n };\n }\n return {};\n }\n get showCopyButton() {\n return this.isCopyable && true;\n }\n get rowHeight() {\n return fontSizeToRowHeightMap[this.fontSize];\n }\n get showFullScreenButton() {\n return !!this.args.overflowHeight;\n }\n constructor(owner1: unknown, args1: EuiCodeBlockArgs){\n super(owner1, args1);\n this.codeTarget = document.createElement('div');\n }\n @action\n toggleFullScreen() {\n this.isFullScreen = !this.isFullScreen;\n }\n @action\n closeFullScreen(e1: KeyboardEvent) {\n e1.preventDefault();\n e1.stopPropagation();\n this.isFullScreen = false;\n }\n @action\n doesOverflow() {\n if (!this.wrapperRef) return;\n const { clientWidth: clientWidth1, clientHeight: clientHeight1, scrollWidth: scrollWidth1, scrollHeight: scrollHeight1 } = this.wrapperRef;\n const doesOverflow1 = scrollHeight1 > clientHeight1 || scrollWidth1 > clientWidth1;\n this.tabIndex = doesOverflow1 ? 0 : -1;\n }\n @action\n updateCode(resp1: {\n data: RefractorNode[];\n element: HTMLElement;\n }) {\n const render1 = ()=>{\n const code1 = this.code;\n const codeFullScreen1 = this.codeFullScreen;\n if (code1 && !this.isFullScreen) {\n this.data = resp1;\n code1.innerHTML = resp1.element.innerHTML;\n }\n if (codeFullScreen1 && this.isFullScreen) {\n this.data = resp1;\n codeFullScreen1.innerHTML = resp1.element.innerHTML;\n }\n };\n scheduleOnce('afterRender', this, render1);\n }\n static{\n template(`\n {{! DO NOT FORMAT AT ALL, PRE TAGS RESPECT WHITESPACE LITERALLY }}\n {{! DO NOT FORMAT AT ALL, PRE TAGS RESPECT WHITESPACE LITERALLY }}\n {{! DO NOT FORMAT AT ALL, PRE TAGS RESPECT WHITESPACE LITERALLY }}\n {{! DO NOT FORMAT AT ALL, PRE TAGS RESPECT WHITESPACE LITERALLY }}\n {{! DO NOT FORMAT AT ALL, PRE TAGS RESPECT WHITESPACE LITERALLY }}\n {{! DO NOT FORMAT AT ALL, PRE TAGS RESPECT WHITESPACE LITERALLY }}\n {{! DO NOT FORMAT AT ALL, PRE TAGS RESPECT WHITESPACE LITERALLY }}\n {{! DO NOT FORMAT AT ALL, PRE TAGS RESPECT WHITESPACE LITERALLY }}\n {{! DO NOT FORMAT AT ALL, PRE TAGS RESPECT WHITESPACE LITERALLY }}\n {{#if this.codeTarget}}\n {{#in-element this.codeTarget}}\n {{yield}}\n {{/in-element}}\n {{/if}}\n <EuiInnerText as |setInnerTextRef innerText|>\n {{#let\n (classNames\n \"euiCodeBlock\"\n (if\n (or this.showCopyButton this.showFullScreenButton)\n \"euiCodeBlock--hasControl\"\n )\n (if\n (and this.showCopyButton this.showFullScreenButton)\n \"euiCodeBlock--hasBothControls\"\n )\n (if this.lineNumbersConfig.show \"euiCodeBlock--hasLineNumbers\")\n )\n (classNames\n \"euiCodeBlock__pre\"\n (if\n (or (eq this.whiteSpace \"pre\") this.isVirtualized)\n \"euiCodeBlock__pre--whiteSpacePre\"\n )\n (if\n (and (eq this.whiteSpace \"pre-wrap\") (not this.isVirtualized))\n \"euiCodeBlock__pre--whiteSpacePreWrap\"\n )\n (if this.isVirtualized \"euiCodeBlock__pre--isVirtualized\")\n )\n as |wrapperClasses preClasses|\n }}\n <div\n class={{classNames\n wrapperClasses\n (if\n this.transparentBackground \"euiCodeBlock--transparentBackground\"\n )\n componentName=\"EuiCodeBlock\"\n fontSize=this.fontSize\n paddingSize=this.paddingSize\n }}\n {{style this.optionalStyles}}\n {{highlightTargetModifier\n element=this.codeTarget\n language=this.language\n lineNumbersConfig=this.lineNumbersConfig\n onChange=this.updateCode\n }}\n >\n {{#if this.isVirtualized}}\n {{!virtualized}}\n <VirtualizedCodeBlock\n class={{preClasses}}\n tabindex=\"0\"\n {{onKey \"Escape\" this.closeFullScreen}}\n @language={{this.language}}\n @data={{this.data.data}}\n @rowHeight={{this.rowHeight}}\n />\n {{else}}\n {{!template-lint-disable}}\n <pre\n class={{preClasses}}\n {{style this.optionalStyles}}\n tabindex={{this.tabIndex}}\n {{didInsert (set this \"wrapperRef\")}}\n {{resizeObserver onResize=this.doesOverflow}}\n {{mutationObserver\n onMutation=this.doesOverflow\n observerOptions=(hash subtree=true childList=true)\n }}\n {{didInsert setInnerTextRef}}\n ><code\n class=\"euiCodeBlock__code\"\n data-code-language={{this.language}}\n {{didInsert (set this \"code\")}}\n ...attributes\n ></code></pre>\n\n {{/if}}\n\n <Controls\n @isFullScreen={{this.isFullScreen}}\n @showFullScreenButton={{this.showFullScreenButton}}\n @toggleFullScreen={{this.toggleFullScreen}}\n @showCopyButton={{this.showCopyButton}}\n @textToCopy={{textToCopyHelper\n isVirtualized=this.isVirtualized\n innerText=(cleanTextHelper innerText)\n element=this.data.element\n }}\n />\n\n {{#if this.isFullScreen}}\n <FullScreenDisplay class={{wrapperClasses}}>\n {{#if this.isVirtualized}}\n <VirtualizedCodeBlock\n class={{preClasses}}\n tabindex=\"0\"\n {{onKey \"Escape\" this.closeFullScreen}}\n @language={{this.language}}\n @data={{this.data.data}}\n @rowHeight={{fontSizeToRowHeightMap.l}}\n />\n {{else}}\n <pre\n class={{preClasses}}\n tabindex=\"0\"\n {{onKey \"Escape\" this.closeFullScreen}}\n ><code\n class=\"euiCodeBlock__code\"\n data-code-language={{this.language}}\n {{didInsert (set this \"codeFullScreen\")}}\n ></code></pre>\n {{/if}}\n <Controls\n @isFullScreen={{this.isFullScreen}}\n @showFullScreenButton={{this.showFullScreenButton}}\n @showCopyButton={{this.showCopyButton}}\n @toggleFullScreen={{this.toggleFullScreen}}\n @textToCopy={{textToCopyHelper\n isVirtualized=this.isVirtualized\n innerText=(cleanTextHelper innerText)\n element=this.data.element\n }}\n />\n </FullScreenDisplay>\n {{/if}}\n </div>\n {{/let}}\n </EuiInnerText>\n `, {\n component: this,\n eval () {\n return eval(arguments[0]);\n }\n });\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9iZXRvY2FudHU5My9wcnlzbWV4L2VtYmVyLWV1aS9wYWNrYWdlcy9jb3JlL3NyYy9jb21wb25lbnRzL2V1aS1jb2RlLWJsb2NrLmd0cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgQ29tcG9uZW50IGZyb20gJ0BnbGltbWVyL2NvbXBvbmVudCc7XG5pbXBvcnQgeyB0cmFja2VkIH0gZnJvbSAnQGdsaW1tZXIvdHJhY2tpbmcnO1xuaW1wb3J0IHsgaGVscGVyIH0gZnJvbSAnQGVtYmVyL2NvbXBvbmVudC9oZWxwZXInO1xuaW1wb3J0IHsgaGFzaCB9IGZyb20gJ0BlbWJlci9oZWxwZXInO1xuaW1wb3J0IHsgYWN0aW9uIH0gZnJvbSAnQGVtYmVyL29iamVjdCc7XG5pbXBvcnQgZGlkSW5zZXJ0IGZyb20gJ0BlbWJlci9yZW5kZXItbW9kaWZpZXJzL21vZGlmaWVycy9kaWQtaW5zZXJ0JztcbmltcG9ydCB7IHNjaGVkdWxlT25jZSB9IGZyb20gJ0BlbWJlci9ydW5sb29wJztcblxuaW1wb3J0IG9uS2V5IGZyb20gJ2VtYmVyLWtleWJvYXJkL21vZGlmaWVycy9vbi1rZXknO1xuaW1wb3J0IHsgbW9kaWZpZXIgfSBmcm9tICdlbWJlci1tb2RpZmllcic7XG5pbXBvcnQgc2V0IGZyb20gJ2VtYmVyLXNldC1oZWxwZXIvaGVscGVycy9zZXQnO1xuaW1wb3J0IHN0eWxlIGZyb20gJ2VtYmVyLXN0eWxlLW1vZGlmaWVyL21vZGlmaWVycy9zdHlsZSc7XG5pbXBvcnQgeyBhbmQsIGVxLCBub3Qsb3IgfSBmcm9tICdlbWJlci10cnV0aC1oZWxwZXJzJztcblxuaW1wb3J0IENvbnRyb2xzIGZyb20gJy4uL2NvbXBvbmVudHMvZXVpLWNvZGUtYmxvY2svY29udHJvbHMuZ3RzJztcbmltcG9ydCBGdWxsU2NyZWVuRGlzcGxheSBmcm9tICcuLi9jb21wb25lbnRzL2V1aS1jb2RlLWJsb2NrL2Z1bGwtc2NyZWVuLWRpc3BsYXkuZ3RzJztcbmltcG9ydCBWaXJ0dWFsaXplZENvZGVCbG9jayBmcm9tICcuLi9jb21wb25lbnRzL2V1aS1jb2RlLWJsb2NrL3ZpcnR1YWxpemVkLmd0cyc7XG5pbXBvcnQgRXVpSW5uZXJUZXh0IGZyb20gJy4uL2NvbXBvbmVudHMvZXVpLWlubmVyLXRleHQuZ3RzJztcbmltcG9ydCBjbGFzc05hbWVzIGZyb20gJy4uL2hlbHBlcnMvY2xhc3MtbmFtZXMudHMnO1xuaW1wb3J0IG11dGF0aW9uT2JzZXJ2ZXIgZnJvbSAnLi4vbW9kaWZpZXJzL211dGF0aW9uLW9ic2VydmVyLnRzJztcbmltcG9ydCByZXNpemVPYnNlcnZlciBmcm9tICcuLi9tb2RpZmllcnMvcmVzaXplLW9ic2VydmVyLnRzJztcbmltcG9ydCB7XG4gIGNoZWNrU3VwcG9ydGVkTGFuZ3VhZ2UsXG4gIGdldEh0bWxDb250ZW50LFxuICBoaWdobGlnaHRCeUxpbmVcbn0gZnJvbSAnLi4vdXRpbHMvY29kZS91dGlscy50cyc7XG5cbmltcG9ydCB0eXBlIHsgRXVpQ29kZVNoYXJlZFByb3BzIH0gZnJvbSAnLi4vdXRpbHMvY29kZS91dGlscy50cyc7XG5pbXBvcnQgdHlwZSB7IFJlZnJhY3Rvck5vZGUgfSBmcm9tICdyZWZyYWN0b3InO1xuXG5pbnRlcmZhY2UgTGluZU51bWJlcnNDb25maWcge1xuICBzdGFydD86IG51bWJlcjtcbiAgaGlnaGxpZ2h0Pzogc3RyaW5nO1xuICBzaG93PzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IHR5cGUgUGFkZGluZ1NpemUgPSAnbm9uZScgfCAncycgfCAnbScgfCAnbCc7XG5leHBvcnQgdHlwZSBGb250U2l6ZSA9ICdzJyB8ICdtJyB8ICdsJztcblxuY29uc3QgZm9udFNpemVUb1Jvd0hlaWdodE1hcCA9IHtcbiAgczogMTgsXG4gIG06IDIxLFxuICBsOiAyNFxufTtcblxuZXhwb3J0IHR5cGUgRXVpQ29kZUJsb2NrQXJncyA9IEV1aUNvZGVTaGFyZWRQcm9wcyAmIHtcbiAgcGFkZGluZ1NpemU_OiBQYWRkaW5nU2l6ZTtcbiAgZm9udFNpemU_OiBGb250U2l6ZTtcblxuICAvKipcbiAgICogU3BlY2lmeSBob3cgYHdoaXRlLXNwYWNlYCBpbnNpZGUgdGhlIGVsZW1lbnQgaXMgaGFuZGxlZC5cbiAgICogYHByZWAgcmVzcGVjdHMgbGluZSBicmVha3Mvd2hpdGUgc3BhY2UgYnV0IGRvZXNuJ3QgZm9yY2UgdGhlbSB0byB3cmFwIHRoZSBsaW5lXG4gICAqIGBwcmUtd3JhcGAgcmVzcGVjdHMgbGluZSBicmVha3Mvd2hpdGUgc3BhY2UgYnV0IGRvZXMgZm9yY2UgdGhlbSB0byB3cmFwIHRoZSBsaW5lIHdoZW4gbmVjZXNzYXJ5LlxuICAgKi9cbiAgd2hpdGVTcGFjZT86ICdwcmUnIHwgJ3ByZS13cmFwJztcblxuICAvKipcbiAgICogRGlzcGxheXMgYW4gaWNvbiBidXR0b24gdG8gY29weSB0aGUgY29kZSBzbmlwcGV0IHRvIHRoZSBjbGlwYm9hcmQuXG4gICAqL1xuICBpc0NvcHlhYmxlPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogRGlzcGxheXMgbGluZSBudW1iZXJzLlxuICAgKiBPcHRpb25hbGx5IGFjY2VwdHMgYSBjb25maWd1cmF0aW9uIG9iamVjdCBmb3Igc2V0dGluZyB0aGUgc3RhcnRpbmcgbnVtYmVyIGFuZCB2aXN1YWwgaGlnaGxpZ2h0aW5nIHJhbmdlczpcbiAgICogYHsgc3RhcnQ6IDEwMCwgaGlnaGxpZ2h0OiAnMSwgNS0xMCwgMjAtMzAsIDQwJyB9YFxuICAgKi9cbiAgbGluZU51bWJlcnM_OiBib29sZWFuIHwgTGluZU51bWJlcnNDb25maWc7XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIG1heGltdW0gY29udGFpbmVyIGhlaWdodC5cbiAgICogQWNjZXB0cyBhIHBpeGVsIHZhbHVlIChgMzAwYCkgb3IgYSBwZXJjZW50YWdlIChgJzEwMCUnYClcbiAgICogRW5zdXJlIHRoZSBjb250YWluZXIgaGFzIGNhbGN1YWJsZSBoZWlnaHQgd2hlbiB1c2luZyBhIHBlcmNlbnRhZ2VcbiAgICovXG4gIG92ZXJmbG93SGVpZ2h0PzogbnVtYmVyIHwgc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBSZW5kZXJzIGNvZGUgYmxvY2sgbGluZXMgdmlydHVhbGx5LlxuICAgKiBVc2VmdWwgZm9yIGltcHJvdmluZyBsb2FkIHRpbWVzIG9mIGxhcmdlIGNvZGUgYmxvY2tzLlxuICAgKlxuICAgKiBXaGVuIHVzaW5nIHRoaXMgY29uZmlndXJhdGlvbiwgYG92ZXJmbG93SGVpZ2h0YCBpcyByZXF1aXJlZCBhbmRcbiAgICogYHdoaXRlU3BhY2VgIGNhbiBvbmx5IGJlIGBwcmVgLlxuICAgKi9cbiAgaXNWaXJ0dWFsaXplZD86IGJvb2xlYW47XG59O1xuXG5leHBvcnQgaW50ZXJmYWNlIEV1aUNvZGVCbG9ja1NpZ25hdHVyZSB7XG4gIEVsZW1lbnQ6IEhUTUxFbGVtZW50O1xuICBBcmdzOiBFdWlDb2RlQmxvY2tBcmdzO1xuICBCbG9ja3M6IHtcbiAgICBkZWZhdWx0OiBbXTtcbiAgfTtcbn1cblxuaW50ZXJmYWNlIExpbmVOdW1iZXJzRmluYWwge1xuICBzdGFydDogbnVtYmVyO1xuICBzaG93OiBib29sZWFuO1xuICBoaWdobGlnaHQ_OiBzdHJpbmc7XG59XG5cbmNvbnN0IGhpZ2hsaWdodFRhcmdldE1vZGlmaWVyID0gbW9kaWZpZXIoXG4gIChcbiAgICBfZSxcbiAgICBfcG9zOiB1bmtub3duW10sXG4gICAge1xuICAgICAgZWxlbWVudDogdGFyZ2V0RWxlLFxuICAgICAgbGFuZ3VhZ2UgPSAndGV4dCcsXG4gICAgICBsaW5lTnVtYmVyc0NvbmZpZyA9IHsgc3RhcnQ6IDEsIHNob3c6IGZhbHNlIH0sXG4gICAgICBvbkNoYW5nZVxuICAgIH06IHtcbiAgICAgIGVsZW1lbnQ6IEVsZW1lbnQgfCB1bmRlZmluZWQ7XG4gICAgICBsYW5ndWFnZTogRXVpQ29kZVNoYXJlZFByb3BzWydsYW5ndWFnZSddO1xuICAgICAgbGluZU51bWJlcnNDb25maWc6IExpbmVOdW1iZXJzRmluYWw7XG4gICAgICBvbkNoYW5nZTogKHtcbiAgICAgICAgZGF0YSxcbiAgICAgICAgZWxlbWVudFxuICAgICAgfToge1xuICAgICAgICBkYXRhOiBSZWZyYWN0b3JOb2RlW107XG4gICAgICAgIGVsZW1lbnQ6IEhUTUxFbGVtZW50O1xuICAgICAgfSkgPT4gdm9pZDtcbiAgICB9XG4gICkgPT4ge1xuICAgIGxldCBvYnNlcnZlcjogdW5kZWZpbmVkIHwgTXV0YXRpb25PYnNlcnZlcjtcblxuICAgIGNvbnN0IGdldEhpZ2hsaWdoZWRIdG1sID0gKCkgPT4ge1xuICAgICAgY29uc3QgaHRtbCA9ICh0YXJnZXRFbGU_LnRleHRDb250ZW50ID8gdGFyZ2V0RWxlLnRleHRDb250ZW50IDogJycpLnRyaW0oKTtcblxuICAgICAgbGV0IGRhdGE6IFJlZnJhY3Rvck5vZGVbXTtcblxuICAgICAgaWYgKHR5cGVvZiBodG1sICE9PSAnc3RyaW5nJykge1xuICAgICAgICBkYXRhID0gW107XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBkYXRhID0gaGlnaGxpZ2h0QnlMaW5lKGh0bWwsIGxhbmd1YWdlLCBsaW5lTnVtYmVyc0NvbmZpZyk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiB7XG4gICAgICAgIGRhdGEsXG4gICAgICAgIGVsZW1lbnQ6IGdldEh0bWxDb250ZW50KGRhdGEpLmVsZW1lbnRcbiAgICAgIH07XG4gICAgfTtcblxuICAgIGNvbnN0IHNldHVwT2JzZXJ2ZXIgPSAoKSA9PiB7XG4gICAgICBjb25zdCBuZXdPYnNlcnZlciA9IG5ldyBNdXRhdGlvbk9ic2VydmVyKChtdXRhdGlvbnNMaXN0KSA9PiB7XG4gICAgICAgIGlmIChtdXRhdGlvbnNMaXN0Lmxlbmd0aCkge1xuICAgICAgICAgIG9uQ2hhbmdlKGdldEhpZ2hsaWdoZWRIdG1sKCkpO1xuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgICAgaWYgKHRhcmdldEVsZSkge1xuICAgICAgICBvbkNoYW5nZShnZXRIaWdobGlnaGVkSHRtbCgpKTtcbiAgICAgICAgbmV3T2JzZXJ2ZXIub2JzZXJ2ZSh0YXJnZXRFbGUsIHtcbiAgICAgICAgICBjaGFyYWN0ZXJEYXRhOiB0cnVlLFxuICAgICAgICAgIHN1YnRyZWU6IHRydWUsXG4gICAgICAgICAgY2hpbGRMaXN0OiB0cnVlXG4gICAgICAgIH0pO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gbmV3T2JzZXJ2ZXI7XG4gICAgfTtcblxuICAgIGlmICh0YXJnZXRFbGUpIHtcbiAgICAgIG9ic2VydmVyID0gc2V0dXBPYnNlcnZlcigpO1xuICAgIH1cblxuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICBvYnNlcnZlcj8uZGlzY29ubmVjdCgpO1xuICAgIH07XG4gIH1cbik7XG5cbmNvbnN0IGNsZWFuVGV4dEhlbHBlciA9IGhlbHBlcihmdW5jdGlvbiAoW3RleHRdOiBbc3RyaW5nXSkge1xuICByZXR1cm4gdGV4dD8ucmVwbGFjZSgvW1xcclxcbj9dezJ9fFxcblxcbi9nLCAnXFxuJykgfHwgJyc7XG59KTtcblxuY29uc3QgdGV4dFRvQ29weUhlbHBlciA9IGhlbHBlcihmdW5jdGlvbiAoXG4gIF9wb3MsXG4gIHtcbiAgICBpc1ZpcnR1YWxpemVkLFxuICAgIGVsZW1lbnQsXG4gICAgaW5uZXJUZXh0XG4gIH06IHtcbiAgICBpc1ZpcnR1YWxpemVkOiBib29sZWFuO1xuICAgIGVsZW1lbnQ6IEhUTUxFbGVtZW50IHwgdW5kZWZpbmVkO1xuICAgIGlubmVyVGV4dDogc3RyaW5nO1xuICB9XG4pIHtcbiAgaWYgKGVsZW1lbnQpIHtcbiAgICByZXR1cm4gaXNWaXJ0dWFsaXplZFxuICAgICAgPyBlbGVtZW50LnRleHRDb250ZW50XG4gICAgICAgID8gZWxlbWVudC50ZXh0Q29udGVudFxuICAgICAgICA6ICcnXG4gICAgICA6IGlubmVyVGV4dDtcbiAgfVxuXG4gIHJldHVybiAnJztcbn0pO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBFdWlDb2RlQmxvY2tDb21wb25lbnQgZXh0ZW5kcyBDb21wb25lbnQ8RXVpQ29kZUJsb2NrU2lnbmF0dXJlPiB7XG4gIC8vZmFrZSBlbGVtZW50IHdoZXJlIHlpZWxkIHdyaXRlcyB0bywgc28gd2UgY2FuIG9ic2VydmUgYW5kIGNsb25lIGEgaGlnaGxpZ2h0ZWQgdmVyc2lvbiB0byBjb2RlIGFuZCBjb2RlRnVsbFNjZWVuXG4gIEB0cmFja2VkIGNvZGVUYXJnZXQ_OiBIVE1MRWxlbWVudDtcbiAgLy88Y29kZT4gRWxlbWVudCBmb3Igbm9uIGZ1bGxzY3JlZW5cbiAgQHRyYWNrZWQgY29kZT86IEhUTUxFbGVtZW50O1xuICAvLzxjb2RlPiBFbGVtZW50IGZvciBmdWxsc2NyZWVuIG1vZGFsXG4gIEB0cmFja2VkIGNvZGVGdWxsU2NyZWVuPzogSFRNTEVsZW1lbnQ7XG4gIEB0cmFja2VkIHdyYXBwZXJSZWY_OiBIVE1MRWxlbWVudDtcbiAgQHRyYWNrZWQgdGFiSW5kZXggPSAxO1xuICBAdHJhY2tlZCBpc0Z1bGxTY3JlZW4gPSBmYWxzZTtcbiAgQHRyYWNrZWQgZGF0YT86IHsgZGF0YTogUmVmcmFjdG9yTm9kZVtdOyBlbGVtZW50OiBIVE1MRWxlbWVudCB9O1xuXG4gIGdldCBsYW5ndWFnZSgpIHtcbiAgICByZXR1cm4gY2hlY2tTdXBwb3J0ZWRMYW5ndWFnZSh0aGlzLmFyZ3MubGFuZ3VhZ2UgfHwgJycpO1xuICB9XG5cbiAgZ2V0IHRyYW5zcGFyZW50QmFja2dyb3VuZCgpIHtcbiAgICByZXR1cm4gdGhpcy5hcmdzLnRyYW5zcGFyZW50QmFja2dyb3VuZCA_PyBmYWxzZTtcbiAgfVxuXG4gIGdldCBwYWRkaW5nU2l6ZSgpIHtcbiAgICByZXR1cm4gdGhpcy5hcmdzLnBhZGRpbmdTaXplID8_ICdsJztcbiAgfVxuXG4gIGdldCBmb250U2l6ZSgpIHtcbiAgICByZXR1cm4gdGhpcy5hcmdzLmZvbnRTaXplID8_ICdzJztcbiAgfVxuXG4gIGdldCBpc0NvcHlhYmxlKCkge1xuICAgIHJldHVybiB0aGlzLmFyZ3MuaXNDb3B5YWJsZSA_PyBmYWxzZTtcbiAgfVxuXG4gIGdldCB3aGl0ZVNwYWNlKCkge1xuICAgIHJldHVybiB0aGlzLmFyZ3Mud2hpdGVTcGFjZSA_PyAncHJlLXdyYXAnO1xuICB9XG5cbiAgZ2V0IGlzVmlydHVhbGl6ZWQoKSB7XG4gICAgcmV0dXJuICEhKHRoaXMuYXJncy5pc1ZpcnR1YWxpemVkICYmIEFycmF5LmlzQXJyYXkodGhpcy5kYXRhPy5kYXRhKSk7XG4gIH1cblxuICBnZXQgbGluZU51bWJlcnMoKSB7XG4gICAgcmV0dXJuIHRoaXMuYXJncy5saW5lTnVtYmVycyA_PyBmYWxzZTtcbiAgfVxuXG4gIGdldCBsaW5lTnVtYmVyc0NvbmZpZygpIHtcbiAgICBjb25zdCB7IGxpbmVOdW1iZXJzIH0gPSB0aGlzO1xuICAgIGNvbnN0IGNvbmZpZyA9IHR5cGVvZiBsaW5lTnVtYmVycyA9PT0gJ29iamVjdCcgPyBsaW5lTnVtYmVycyA6IHt9O1xuXG4gICAgcmV0dXJuIGxpbmVOdW1iZXJzXG4gICAgICA_IHsgc3RhcnQ6IDEsIHNob3c6IHRydWUsIC4uLmNvbmZpZyB9XG4gICAgICA6IHsgc3RhcnQ6IDEsIHNob3c6IGZhbHNlIH07XG4gIH1cblxuICBnZXQgb3B0aW9uYWxTdHlsZXMoKSB7XG4gICAgY29uc3Qgb3ZlcmZsb3dIZWlnaHQgPSB0aGlzLmFyZ3Mub3ZlcmZsb3dIZWlnaHQ7XG5cbiAgICBpZiAob3ZlcmZsb3dIZWlnaHQpIHtcbiAgICAgIGNvbnN0IHByb3BlcnR5ID1cbiAgICAgICAgdHlwZW9mIG92ZXJmbG93SGVpZ2h0ID09PSAnc3RyaW5nJyA_ICdoZWlnaHQnIDogJ21heEhlaWdodCc7XG5cbiAgICAgIHJldHVybiB7XG4gICAgICAgIFtwcm9wZXJ0eV06XG4gICAgICAgICAgdHlwZW9mIG92ZXJmbG93SGVpZ2h0ID09PSAnc3RyaW5nJ1xuICAgICAgICAgICAgPyBvdmVyZmxvd0hlaWdodFxuICAgICAgICAgICAgOiBgJHtvdmVyZmxvd0hlaWdodH1weGBcbiAgICAgIH07XG4gICAgfVxuXG4gICAgcmV0dXJuIHt9O1xuICB9XG5cbiAgZ2V0IHNob3dDb3B5QnV0dG9uKCkge1xuICAgIHJldHVybiB0aGlzLmlzQ29weWFibGUgJiYgdHJ1ZTtcbiAgfVxuXG4gIGdldCByb3dIZWlnaHQoKSB7XG4gICAgcmV0dXJuIGZvbnRTaXplVG9Sb3dIZWlnaHRNYXBbdGhpcy5mb250U2l6ZV07XG4gIH1cblxuICBnZXQgc2hvd0Z1bGxTY3JlZW5CdXR0b24oKSB7XG4gICAgcmV0dXJuICEhdGhpcy5hcmdzLm92ZXJmbG93SGVpZ2h0O1xuICB9XG5cbiAgY29uc3RydWN0b3Iob3duZXI6IHVua25vd24sIGFyZ3M6IEV1aUNvZGVCbG9ja0FyZ3MpIHtcbiAgICBzdXBlcihvd25lciwgYXJncyk7XG4gICAgdGhpcy5jb2RlVGFyZ2V0ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7XG4gIH1cblxuICBAYWN0aW9uXG4gIHRvZ2dsZUZ1bGxTY3JlZW4oKSB7XG4gICAgdGhpcy5pc0Z1bGxTY3JlZW4gPSAhdGhpcy5pc0Z1bGxTY3JlZW47XG4gIH1cblxuICBAYWN0aW9uXG4gIGNsb3NlRnVsbFNjcmVlbihlOiBLZXlib2FyZEV2ZW50KSB7XG4gICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIGUuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgdGhpcy5pc0Z1bGxTY3JlZW4gPSBmYWxzZTtcbiAgfVxuXG4gIEBhY3Rpb25cbiAgZG9lc092ZXJmbG93KCkge1xuICAgIGlmICghdGhpcy53cmFwcGVyUmVmKSByZXR1cm47XG5cbiAgICBjb25zdCB7IGNsaWVudFdpZHRoLCBjbGllbnRIZWlnaHQsIHNjcm9sbFdpZHRoLCBzY3JvbGxIZWlnaHQgfSA9XG4gICAgICB0aGlzLndyYXBwZXJSZWY7XG4gICAgY29uc3QgZG9lc092ZXJmbG93ID1cbiAgICAgIHNjcm9sbEhlaWdodCA-IGNsaWVudEhlaWdodCB8fCBzY3JvbGxXaWR0aCA-IGNsaWVudFdpZHRoO1xuXG4gICAgdGhpcy50YWJJbmRleCA9IGRvZXNPdmVyZmxvdyA_IDAgOiAtMTtcbiAgfVxuXG4gIEBhY3Rpb25cbiAgdXBkYXRlQ29kZShyZXNwOiB7IGRhdGE6IFJlZnJhY3Rvck5vZGVbXTsgZWxlbWVudDogSFRNTEVsZW1lbnQgfSkge1xuICAgIGNvbnN0IHJlbmRlciA9ICgpID0-IHtcbiAgICAgIGNvbnN0IGNvZGUgPSB0aGlzLmNvZGU7XG4gICAgICBjb25zdCBjb2RlRnVsbFNjcmVlbiA9IHRoaXMuY29kZUZ1bGxTY3JlZW47XG5cbiAgICAgIGlmIChjb2RlICYmICF0aGlzLmlzRnVsbFNjcmVlbikge1xuICAgICAgICB0aGlzLmRhdGEgPSByZXNwO1xuICAgICAgICBjb2RlLmlubmVySFRNTCA9IHJlc3AuZWxlbWVudC5pbm5lckhUTUw7XG4gICAgICB9XG5cbiAgICAgIGlmIChjb2RlRnVsbFNjcmVlbiAmJiB0aGlzLmlzRnVsbFNjcmVlbikge1xuICAgICAgICB0aGlzLmRhdGEgPSByZXNwO1xuICAgICAgICBjb2RlRnVsbFNjcmVlbi5pbm5lckhUTUwgPSByZXNwLmVsZW1lbnQuaW5uZXJIVE1MO1xuICAgICAgfVxuICAgIH07XG5cbiAgICBzY2hlZHVsZU9uY2UoJ2FmdGVyUmVuZGVyJywgdGhpcywgcmVuZGVyKTtcbiAgfVxuXG4gIDx0ZW1wbGF0ZT5cbiAgICB7eyEgRE8gTk9UIEZPUk1BVCBBVCBBTEwsIFBSRSBUQUdTIFJFU1BFQ1QgV0hJVEVTUEFDRSBMSVRFUkFMTFkgfX1cbiAgICB7eyEgRE8gTk9UIEZPUk1BVCBBVCBBTEwsIFBSRSBUQUdTIFJFU1BFQ1QgV0hJVEVTUEFDRSBMSVRFUkFMTFkgfX1cbiAgICB7eyEgRE8gTk9UIEZPUk1BVCBBVCBBTEwsIFBSRSBUQUdTIFJFU1BFQ1QgV0hJVEVTUEFDRSBMSVRFUkFMTFkgfX1cbiAgICB7eyEgRE8gTk9UIEZPUk1BVCBBVCBBTEwsIFBSRSBUQUdTIFJFU1BFQ1QgV0hJVEVTUEFDRSBMSVRFUkFMTFkgfX1cbiAgICB7eyEgRE8gTk9UIEZPUk1BVCBBVCBBTEwsIFBSRSBUQUdTIFJFU1BFQ1QgV0hJVEVTUEFDRSBMSVRFUkFMTFkgfX1cbiAgICB7eyEgRE8gTk9UIEZPUk1BVCBBVCBBTEwsIFBSRSBUQUdTIFJFU1BFQ1QgV0hJVEVTUEFDRSBMSVRFUkFMTFkgfX1cbiAgICB7eyEgRE8gTk9UIEZPUk1BVCBBVCBBTEwsIFBSRSBUQUdTIFJFU1BFQ1QgV0hJVEVTUEFDRSBMSVRFUkFMTFkgfX1cbiAgICB7eyEgRE8gTk9UIEZPUk1BVCBBVCBBTEwsIFBSRSBUQUdTIFJFU1BFQ1QgV0hJVEVTUEFDRSBMSVRFUkFMTFkgfX1cbiAgICB7eyEgRE8gTk9UIEZPUk1BVCBBVCBBTEwsIFBSRSBUQUdTIFJFU1BFQ1QgV0hJVEVTUEFDRSBMSVRFUkFMTFkgfX1cbiAgICB7eyNpZiB0aGlzLmNvZGVUYXJnZXR9fVxuICAgICAge3sjaW4tZWxlbWVudCB0aGlzLmNvZGVUYXJnZXR9fVxuICAgICAgICB7e3lpZWxkfX1cbiAgICAgIHt7L2luLWVsZW1lbnR9fVxuICAgIHt7L2lmfX1cbiAgICA8RXVpSW5uZXJUZXh0IGFzIHxzZXRJbm5lclRleHRSZWYgaW5uZXJUZXh0fD5cbiAgICAgIHt7I2xldFxuICAgICAgICAoY2xhc3NOYW1lc1xuICAgICAgICAgIFwiZXVpQ29kZUJsb2NrXCJcbiAgICAgICAgICAoaWZcbiAgICAgICAgICAgIChvciB0aGlzLnNob3dDb3B5QnV0dG9uIHRoaXMuc2hvd0Z1bGxTY3JlZW5CdXR0b24pXG4gICAgICAgICAgICBcImV1aUNvZGVCbG9jay0taGFzQ29udHJvbFwiXG4gICAgICAgICAgKVxuICAgICAgICAgIChpZlxuICAgICAgICAgICAgKGFuZCB0aGlzLnNob3dDb3B5QnV0dG9uIHRoaXMuc2hvd0Z1bGxTY3JlZW5CdXR0b24pXG4gICAgICAgICAgICBcImV1aUNvZGVCbG9jay0taGFzQm90aENvbnRyb2xzXCJcbiAgICAgICAgICApXG4gICAgICAgICAgKGlmIHRoaXMubGluZU51bWJlcnNDb25maWcuc2hvdyBcImV1aUNvZGVCbG9jay0taGFzTGluZU51bWJlcnNcIilcbiAgICAgICAgKVxuICAgICAgICAoY2xhc3NOYW1lc1xuICAgICAgICAgIFwiZXVpQ29kZUJsb2NrX19wcmVcIlxuICAgICAgICAgIChpZlxuICAgICAgICAgICAgKG9yIChlcSB0aGlzLndoaXRlU3BhY2UgXCJwcmVcIikgdGhpcy5pc1ZpcnR1YWxpemVkKVxuICAgICAgICAgICAgXCJldWlDb2RlQmxvY2tfX3ByZS0td2hpdGVTcGFjZVByZVwiXG4gICAgICAgICAgKVxuICAgICAgICAgIChpZlxuICAgICAgICAgICAgKGFuZCAoZXEgdGhpcy53aGl0ZVNwYWNlIFwicHJlLXdyYXBcIikgKG5vdCB0aGlzLmlzVmlydHVhbGl6ZWQpKVxuICAgICAgICAgICAgXCJldWlDb2RlQmxvY2tfX3ByZS0td2hpdGVTcGFjZVByZVdyYXBcIlxuICAgICAgICAgIClcbiAgICAgICAgICAoaWYgdGhpcy5pc1ZpcnR1YWxpemVkIFwiZXVpQ29kZUJsb2NrX19wcmUtLWlzVmlydHVhbGl6ZWRcIilcbiAgICAgICAgKVxuICAgICAgICBhcyB8d3JhcHBlckNsYXNzZXMgcHJlQ2xhc3Nlc3xcbiAgICAgIH19XG4gICAgICAgIDxkaXZcbiAgICAgICAgICBjbGFzcz17e2NsYXNzTmFtZXNcbiAgICAgICAgICAgIHdyYXBwZXJDbGFzc2VzXG4gICAgICAgICAgICAoaWZcbiAgICAgICAgICAgICAgdGhpcy50cmFuc3BhcmVudEJhY2tncm91bmQgXCJldWlDb2RlQmxvY2stLXRyYW5zcGFyZW50QmFja2dyb3VuZFwiXG4gICAgICAgICAgICApXG4gICAgICAgICAgICBjb21wb25lbnROYW1lPVwiRXVpQ29kZUJsb2NrXCJcbiAgICAgICAgICAgIGZvbnRTaXplPXRoaXMuZm9udFNpemVcbiAgICAgICAgICAgIHBhZGRpbmdTaXplPXRoaXMucGFkZGluZ1NpemVcbiAgICAgICAgICB9fVxuICAgICAgICAgIHt7c3R5bGUgdGhpcy5vcHRpb25hbFN0eWxlc319XG4gICAgICAgICAge3toaWdobGlnaHRUYXJnZXRNb2RpZmllclxuICAgICAgICAgICAgZWxlbWVudD10aGlzLmNvZGVUYXJnZXRcbiAgICAgICAgICAgIGxhbmd1YWdlPXRoaXMubGFuZ3VhZ2VcbiAgICAgICAgICAgIGxpbmVOdW1iZXJzQ29uZmlnPXRoaXMubGluZU51bWJlcnNDb25maWdcbiAgICAgICAgICAgIG9uQ2hhbmdlPXRoaXMudXBkYXRlQ29kZVxuICAgICAgICAgIH19XG4gICAgICAgID5cbiAgICAgICAgICB7eyNpZiB0aGlzLmlzVmlydHVhbGl6ZWR9fVxuICAgICAgICAgICAge3shdmlydHVhbGl6ZWR9fVxuICAgICAgICAgICAgPFZpcnR1YWxpemVkQ29kZUJsb2NrXG4gICAgICAgICAgICAgIGNsYXNzPXt7cHJlQ2xhc3Nlc319XG4gICAgICAgICAgICAgIHRhYmluZGV4PVwiMFwiXG4gICAgICAgICAgICAgIHt7b25LZXkgXCJFc2NhcGVcIiB0aGlzLmNsb3NlRnVsbFNjcmVlbn19XG4gICAgICAgICAgICAgIEBsYW5ndWFnZT17e3RoaXMubGFuZ3VhZ2V9fVxuICAgICAgICAgICAgICBAZGF0YT17e3RoaXMuZGF0YS5kYXRhfX1cbiAgICAgICAgICAgICAgQHJvd0hlaWdodD17e3RoaXMucm93SGVpZ2h0fX1cbiAgICAgICAgICAgIC8-XG4gICAgICAgICAge3tlbHNlfX1cbiAgICAgICAgICAgIHt7IXRlbXBsYXRlLWxpbnQtZGlzYWJsZX19XG4gICAgICAgICAgICA8cHJlXG4gICAgICAgICAgICAgIGNsYXNzPXt7cHJlQ2xhc3Nlc319XG4gICAgICAgICAgICAgIHt7c3R5bGUgdGhpcy5vcHRpb25hbFN0eWxlc319XG4gICAgICAgICAgICAgIHRhYmluZGV4PXt7dGhpcy50YWJJbmRleH19XG4gICAgICAgICAgICAgIHt7ZGlkSW5zZXJ0IChzZXQgdGhpcyBcIndyYXBwZXJSZWZcIil9fVxuICAgICAgICAgICAgICB7e3Jlc2l6ZU9ic2VydmVyIG9uUmVzaXplPXRoaXMuZG9lc092ZXJmbG93fX1cbiAgICAgICAgICAgICAge3ttdXRhdGlvbk9ic2VydmVyXG4gICAgICAgICAgICAgICAgb25NdXRhdGlvbj10aGlzLmRvZXNPdmVyZmxvd1xuICAgICAgICAgICAgICAgIG9ic2VydmVyT3B0aW9ucz0oaGFzaCBzdWJ0cmVlPXRydWUgY2hpbGRMaXN0PXRydWUpXG4gICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgIHt7ZGlkSW5zZXJ0IHNldElubmVyVGV4dFJlZn19XG4gICAgICAgICAgICA-PGNvZGVcbiAgICAgICAgICAgICAgICBjbGFzcz1cImV1aUNvZGVCbG9ja19fY29kZVwiXG4gICAgICAgICAgICAgICAgZGF0YS1jb2RlLWxhbmd1YWdlPXt7dGhpcy5sYW5ndWFnZX19XG4gICAgICAgICAgICAgICAge3tkaWRJbnNlcnQgKHNldCB0aGlzIFwiY29kZVwiKX19XG4gICAgICAgICAgICAgICAgLi4uYXR0cmlidXRlc1xuICAgICAgICAgICAgICA-PC9jb2RlPjwvcHJlPlxuXG4gICAgICAgICAge3svaWZ9fVxuXG4gICAgICAgICAgPENvbnRyb2xzXG4gICAgICAgICAgICBAaXNGdWxsU2NyZWVuPXt7dGhpcy5pc0Z1bGxTY3JlZW59fVxuICAgICAgICAgICAgQHNob3dGdWxsU2NyZWVuQnV0dG9uPXt7dGhpcy5zaG93RnVsbFNjcmVlbkJ1dHRvbn19XG4gICAgICAgICAgICBAdG9nZ2xlRnVsbFNjcmVlbj17e3RoaXMudG9nZ2xlRnVsbFNjcmVlbn19XG4gICAgICAgICAgICBAc2hvd0NvcHlCdXR0b249e3t0aGlzLnNob3dDb3B5QnV0dG9ufX1cbiAgICAgICAgICAgIEB0ZXh0VG9Db3B5PXt7dGV4dFRvQ29weUhlbHBlclxuICAgICAgICAgICAgICBpc1ZpcnR1YWxpemVkPXRoaXMuaXNWaXJ0dWFsaXplZFxuICAgICAgICAgICAgICBpbm5lclRleHQ9KGNsZWFuVGV4dEhlbHBlciBpbm5lclRleHQpXG4gICAgICAgICAgICAgIGVsZW1lbnQ9dGhpcy5kYXRhLmVsZW1lbnRcbiAgICAgICAgICAgIH19XG4gICAgICAgICAgLz5cblxuICAgICAgICAgIHt7I2lmIHRoaXMuaXNGdWxsU2NyZWVufX1cbiAgICAgICAgICAgIDxGdWxsU2NyZWVuRGlzcGxheSBjbGFzcz17e3dyYXBwZXJDbGFzc2VzfX0-XG4gICAgICAgICAgICAgIHt7I2lmIHRoaXMuaXNWaXJ0dWFsaXplZH19XG4gICAgICAgICAgICAgICAgPFZpcnR1YWxpemVkQ29kZUJsb2NrXG4gICAgICAgICAgICAgICAgICBjbGFzcz17e3ByZUNsYXNzZXN9fVxuICAgICAgICAgICAgICAgICAgdGFiaW5kZXg9XCIwXCJcbiAgICAgICAgICAgICAgICAgIHt7b25LZXkgXCJFc2NhcGVcIiB0aGlzLmNsb3NlRnVsbFNjcmVlbn19XG4gICAgICAgICAgICAgICAgICBAbGFuZ3VhZ2U9e3t0aGlzLmxhbmd1YWdlfX1cbiAgICAgICAgICAgICAgICAgIEBkYXRhPXt7dGhpcy5kYXRhLmRhdGF9fVxuICAgICAgICAgICAgICAgICAgQHJvd0hlaWdodD17e2ZvbnRTaXplVG9Sb3dIZWlnaHRNYXAubH19XG4gICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAge3tlbHNlfX1cbiAgICAgICAgICAgICAgICA8cHJlXG4gICAgICAgICAgICAgICAgICBjbGFzcz17e3ByZUNsYXNzZXN9fVxuICAgICAgICAgICAgICAgICAgdGFiaW5kZXg9XCIwXCJcbiAgICAgICAgICAgICAgICAgIHt7b25LZXkgXCJFc2NhcGVcIiB0aGlzLmNsb3NlRnVsbFNjcmVlbn19XG4gICAgICAgICAgICAgICAgPjxjb2RlXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZXVpQ29kZUJsb2NrX19jb2RlXCJcbiAgICAgICAgICAgICAgICAgICAgZGF0YS1jb2RlLWxhbmd1YWdlPXt7dGhpcy5sYW5ndWFnZX19XG4gICAgICAgICAgICAgICAgICAgIHt7ZGlkSW5zZXJ0IChzZXQgdGhpcyBcImNvZGVGdWxsU2NyZWVuXCIpfX1cbiAgICAgICAgICAgICAgICAgID48L2NvZGU-PC9wcmU-XG4gICAgICAgICAgICAgIHt7L2lmfX1cbiAgICAgICAgICAgICAgPENvbnRyb2xzXG4gICAgICAgICAgICAgICAgQGlzRnVsbFNjcmVlbj17e3RoaXMuaXNGdWxsU2NyZWVufX1cbiAgICAgICAgICAgICAgICBAc2hvd0Z1bGxTY3JlZW5CdXR0b249e3t0aGlzLnNob3dGdWxsU2NyZWVuQnV0dG9ufX1cbiAgICAgICAgICAgICAgICBAc2hvd0NvcHlCdXR0b249e3t0aGlzLnNob3dDb3B5QnV0dG9ufX1cbiAgICAgICAgICAgICAgICBAdG9nZ2xlRnVsbFNjcmVlbj17e3RoaXMudG9nZ2xlRnVsbFNjcmVlbn19XG4gICAgICAgICAgICAgICAgQHRleHRUb0NvcHk9e3t0ZXh0VG9Db3B5SGVscGVyXG4gICAgICAgICAgICAgICAgICBpc1ZpcnR1YWxpemVkPXRoaXMuaXNWaXJ0dWFsaXplZFxuICAgICAgICAgICAgICAgICAgaW5uZXJUZXh0PShjbGVhblRleHRIZWxwZXIgaW5uZXJUZXh0KVxuICAgICAgICAgICAgICAgICAgZWxlbWVudD10aGlzLmRhdGEuZWxlbWVudFxuICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgIC8-XG4gICAgICAgICAgICA8L0Z1bGxTY3JlZW5EaXNwbGF5PlxuICAgICAgICAgIHt7L2lmfX1cbiAgICAgICAgPC9kaXY-XG4gICAgICB7ey9sZXR9fVxuICAgIDwvRXVpSW5uZXJUZXh0PlxuICA8L3RlbXBsYXRlPlxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLGVBQWUscUJBQXFCO0FBQzNDLFNBQVMsT0FBTyxRQUFRLG9CQUFvQjtBQUM1QyxTQUFTLE1BQU0sUUFBUSwwQkFBMEI7QUFDakQsU0FBUyxJQUFJLFFBQVEsZ0JBQWdCO0FBQ3JDLFNBQVMsTUFBTSxRQUFRLGdCQUFnQjtBQUN2QyxPQUFPLGVBQWUsK0NBQStDO0FBQ3JFLFNBQVMsWUFBWSxRQUFRLGlCQUFpQjtBQUU5QyxPQUFPLFdBQVcsa0NBQWtDO0FBQ3BELFNBQVMsUUFBUSxRQUFRLGlCQUFpQjtBQUMxQyxPQUFPLFNBQVMsK0JBQStCO0FBQy9DLE9BQU8sV0FBVyx1Q0FBdUM7QUFDekQsU0FBUyxHQUFHLEVBQUUsRUFBRSxFQUFFLEdBQUcsRUFBQyxFQUFFLFFBQVEsc0JBQXNCO0FBRXRELE9BQU8sY0FBYyw0Q0FBNEM7QUFDakUsT0FBTyx1QkFBdUIsdURBQXVEO0FBQ3JGLE9BQU8sMEJBQTBCLCtDQUErQztBQUNoRixPQUFPLGtCQUFrQixtQ0FBbUM7QUFDNUQsT0FBTyxnQkFBZ0IsNEJBQTRCO0FBQ25ELE9BQU8sc0JBQXNCLG9DQUFvQztBQUNqRSxPQUFPLG9CQUFvQixrQ0FBa0M7QUFDN0QsU0FDRSxzQkFBc0IsRUFDdEIsY0FBYyxFQUNkLGVBQWUsUUFDVix5QkFBeUI7QUFFaEMsY0FBYyxrQkFBa0IsUUFBUSx5QkFBeUI7QUFDakUsY0FBYyxhQUFhLFFBQVEsWUFBWTtVQUVyQztJQUNSLFFBQVEsTUFBTTtJQUNkLFlBQVksTUFBTTtJQUNsQixPQUFPLE9BQU87O0FBR2hCLFlBQVksY0FBYyxTQUFTLE1BQU0sTUFBTTtBQUMvQyxZQUFZLFdBQVcsTUFBTSxNQUFNO0FBRW5DLE1BQU0seUJBQXlCO0lBQzdCLEdBQUc7SUFDSCxHQUFHO0lBQ0gsR0FBRztBQUNMO0FBRUEsWUFBWSxtQkFBbUI7SUFDN0IsY0FBYztJQUNk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"],"names":["fontSizeToRowHeightMap","s","m","l","highlightTargetModifier","modifier","_e1","_pos1","element","targetEle1","language","language1","lineNumbersConfig","lineNumbersConfig1","start","show","onChange","onChange1","observer1","getHighlighedHtml1","html1","textContent","trim","data1","highlightByLine","data","getHtmlContent","setupObserver1","newObserver1","MutationObserver","mutationsList1","length","observe","characterData","subtree","childList","disconnect","cleanTextHelper","helper","text1","replace","textToCopyHelper","isVirtualized","isVirtualized1","element1","innerText","innerText1","EuiCodeBlockComponent","Component","g","this","prototype","tracked","i","void 0","checkSupportedLanguage","args","transparentBackground","paddingSize","fontSize","isCopyable","whiteSpace","Array","isArray","lineNumbers","lineNumbers1","config1","optionalStyles","overflowHeight1","overflowHeight","property1","showCopyButton","rowHeight","showFullScreenButton","constructor","owner1","args1","codeTarget","document","createElement","toggleFullScreen","isFullScreen","n","action","closeFullScreen","e1","preventDefault","stopPropagation","doesOverflow","wrapperRef","clientWidth","clientWidth1","clientHeight","clientHeight1","scrollWidth","scrollWidth1","scrollHeight","scrollHeight1","doesOverflow1","tabIndex","updateCode","resp1","render1","code1","code","codeFullScreen1","codeFullScreen","innerHTML","scheduleOnce","setComponentTemplate","precompileTemplate","strictMode","scope","EuiInnerText","classNames","or","and","eq","not","style","VirtualizedCodeBlock","onKey","didInsert","set","resizeObserver","mutationObserver","hash","Controls","FullScreenDisplay"],"mappings":"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"}
1
+ {"version":3,"file":"eui-code-block.js","sources":["../../src/components/eui-code-block.gts"],"sourcesContent":["import Component from '@glimmer/component';\nimport { tracked } from '@glimmer/tracking';\nimport { helper } from '@ember/component/helper';\nimport { hash } from '@ember/helper';\nimport { action } from '@ember/object';\nimport didInsert from '@ember/render-modifiers/modifiers/did-insert';\nimport { scheduleOnce } from '@ember/runloop';\nimport type Owner from '@ember/owner';\n\nimport onKey from 'ember-keyboard/modifiers/on-key';\nimport { modifier } from 'ember-modifier';\nimport set from 'ember-set-helper/helpers/set';\nimport style from 'ember-style-modifier/modifiers/style';\nimport { and, eq, not,or } from 'ember-truth-helpers';\n\nimport Controls from '../components/eui-code-block/controls.gts';\nimport FullScreenDisplay from '../components/eui-code-block/full-screen-display.gts';\nimport VirtualizedCodeBlock from '../components/eui-code-block/virtualized.gts';\nimport EuiInnerText from '../components/eui-inner-text.gts';\nimport classNames from '../helpers/class-names.ts';\nimport mutationObserver from '../modifiers/mutation-observer.ts';\nimport resizeObserver from '../modifiers/resize-observer.ts';\nimport {\n checkSupportedLanguage,\n getHtmlContent,\n highlightByLine\n} from '../utils/code/utils.ts';\n\nimport type { EuiCodeSharedProps } from '../utils/code/utils.ts';\nimport type { RefractorNode } from 'refractor';\n\ninterface LineNumbersConfig {\n start?: number;\n highlight?: string;\n show?: boolean;\n}\n\nexport type PaddingSize = 'none' | 's' | 'm' | 'l';\nexport type FontSize = 's' | 'm' | 'l';\n\nconst fontSizeToRowHeightMap = {\n s: 18,\n m: 21,\n l: 24\n};\n\nexport type EuiCodeBlockArgs = EuiCodeSharedProps & {\n paddingSize?: PaddingSize;\n fontSize?: FontSize;\n\n /**\n * Specify how `white-space` inside the element is handled.\n * `pre` respects line breaks/white space but doesn't force them to wrap the line\n * `pre-wrap` respects line breaks/white space but does force them to wrap the line when necessary.\n */\n whiteSpace?: 'pre' | 'pre-wrap';\n\n /**\n * Displays an icon button to copy the code snippet to the clipboard.\n */\n isCopyable?: boolean;\n\n /**\n * Displays line numbers.\n * Optionally accepts a configuration object for setting the starting number and visual highlighting ranges:\n * `{ start: 100, highlight: '1, 5-10, 20-30, 40' }`\n */\n lineNumbers?: boolean | LineNumbersConfig;\n\n /**\n * Sets the maximum container height.\n * Accepts a pixel value (`300`) or a percentage (`'100%'`)\n * Ensure the container has calcuable height when using a percentage\n */\n overflowHeight?: number | string;\n\n /**\n * Renders code block lines virtually.\n * Useful for improving load times of large code blocks.\n *\n * When using this configuration, `overflowHeight` is required and\n * `whiteSpace` can only be `pre`.\n */\n isVirtualized?: boolean;\n};\n\nexport interface EuiCodeBlockSignature {\n Element: HTMLElement;\n Args: EuiCodeBlockArgs;\n Blocks: {\n default: [];\n };\n}\n\ninterface LineNumbersFinal {\n start: number;\n show: boolean;\n highlight?: string;\n}\n\nconst highlightTargetModifier = modifier(\n (\n _e,\n _pos: unknown[],\n {\n element: targetEle,\n language = 'text',\n lineNumbersConfig = { start: 1, show: false },\n onChange\n }: {\n element: Element | undefined;\n language: EuiCodeSharedProps['language'];\n lineNumbersConfig: LineNumbersFinal;\n onChange: ({\n data,\n element\n }: {\n data: RefractorNode[];\n element: HTMLElement;\n }) => void;\n }\n ) => {\n let observer: undefined | MutationObserver;\n\n const getHighlighedHtml = () => {\n const html = (targetEle?.textContent ? targetEle.textContent : '').trim();\n\n let data: RefractorNode[];\n\n if (typeof html !== 'string') {\n data = [];\n } else {\n data = highlightByLine(html, language, lineNumbersConfig);\n }\n\n return {\n data,\n element: getHtmlContent(data).element\n };\n };\n\n const setupObserver = () => {\n const newObserver = new MutationObserver((mutationsList) => {\n if (mutationsList.length) {\n onChange(getHighlighedHtml());\n }\n });\n\n if (targetEle) {\n onChange(getHighlighedHtml());\n newObserver.observe(targetEle, {\n characterData: true,\n subtree: true,\n childList: true\n });\n }\n\n return newObserver;\n };\n\n if (targetEle) {\n observer = setupObserver();\n }\n\n return () => {\n observer?.disconnect();\n };\n }\n);\n\nconst cleanTextHelper = helper(function ([text]: [string]) {\n return text?.replace(/[\\r\\n?]{2}|\\n\\n/g, '\\n') || '';\n});\n\nconst textToCopyHelper = helper(function (\n _pos,\n {\n isVirtualized,\n element,\n innerText\n }: {\n isVirtualized: boolean;\n element: HTMLElement | undefined;\n innerText: string;\n }\n) {\n if (element) {\n return isVirtualized\n ? element.textContent\n ? element.textContent\n : ''\n : innerText;\n }\n\n return '';\n});\n\nexport default class EuiCodeBlockComponent extends Component<EuiCodeBlockSignature> {\n //fake element where yield writes to, so we can observe and clone a highlighted version to code and codeFullSceen\n @tracked codeTarget?: HTMLElement;\n //<code> Element for non fullscreen\n @tracked code?: HTMLElement;\n //<code> Element for fullscreen modal\n @tracked codeFullScreen?: HTMLElement;\n @tracked wrapperRef?: HTMLElement;\n @tracked tabIndex = 1;\n @tracked isFullScreen = false;\n @tracked data?: { data: RefractorNode[]; element: HTMLElement };\n\n get language() {\n return checkSupportedLanguage(this.args.language || '');\n }\n\n get transparentBackground() {\n return this.args.transparentBackground ?? false;\n }\n\n get paddingSize() {\n return this.args.paddingSize ?? 'l';\n }\n\n get fontSize() {\n return this.args.fontSize ?? 's';\n }\n\n get isCopyable() {\n return this.args.isCopyable ?? false;\n }\n\n get whiteSpace() {\n return this.args.whiteSpace ?? 'pre-wrap';\n }\n\n get isVirtualized() {\n return !!(this.args.isVirtualized && Array.isArray(this.data?.data));\n }\n\n get lineNumbers() {\n return this.args.lineNumbers ?? false;\n }\n\n get lineNumbersConfig() {\n const { lineNumbers } = this;\n const config = typeof lineNumbers === 'object' ? lineNumbers : {};\n\n return lineNumbers\n ? { start: 1, show: true, ...config }\n : { start: 1, show: false };\n }\n\n get optionalStyles() {\n const overflowHeight = this.args.overflowHeight;\n\n if (overflowHeight) {\n const property =\n typeof overflowHeight === 'string' ? 'height' : 'maxHeight';\n\n return {\n [property]:\n typeof overflowHeight === 'string'\n ? overflowHeight\n : `${overflowHeight}px`\n };\n }\n\n return {};\n }\n\n get showCopyButton() {\n return this.isCopyable && true;\n }\n\n get rowHeight() {\n return fontSizeToRowHeightMap[this.fontSize];\n }\n\n get showFullScreenButton() {\n return !!this.args.overflowHeight;\n }\n\n constructor(owner: Owner, args: EuiCodeBlockArgs) {\n super(owner, args);\n this.codeTarget = document.createElement('div');\n }\n\n @action\n toggleFullScreen() {\n this.isFullScreen = !this.isFullScreen;\n }\n\n @action\n closeFullScreen(e: KeyboardEvent) {\n e.preventDefault();\n e.stopPropagation();\n this.isFullScreen = false;\n }\n\n @action\n doesOverflow() {\n if (!this.wrapperRef) return;\n\n const { clientWidth, clientHeight, scrollWidth, scrollHeight } =\n this.wrapperRef;\n const doesOverflow =\n scrollHeight > clientHeight || scrollWidth > clientWidth;\n\n this.tabIndex = doesOverflow ? 0 : -1;\n }\n\n @action\n updateCode(resp: { data: RefractorNode[]; element: HTMLElement }) {\n const render = () => {\n const code = this.code;\n const codeFullScreen = this.codeFullScreen;\n\n if (code && !this.isFullScreen) {\n this.data = resp;\n code.innerHTML = resp.element.innerHTML;\n }\n\n if (codeFullScreen && this.isFullScreen) {\n this.data = resp;\n codeFullScreen.innerHTML = resp.element.innerHTML;\n }\n };\n\n scheduleOnce('afterRender', this, render);\n }\n\n <template>\n {{! DO NOT FORMAT AT ALL, PRE TAGS RESPECT WHITESPACE LITERALLY }}\n {{! DO NOT FORMAT AT ALL, PRE TAGS RESPECT WHITESPACE LITERALLY }}\n {{! DO NOT FORMAT AT ALL, PRE TAGS RESPECT WHITESPACE LITERALLY }}\n {{! DO NOT FORMAT AT ALL, PRE TAGS RESPECT WHITESPACE LITERALLY }}\n {{! DO NOT FORMAT AT ALL, PRE TAGS RESPECT WHITESPACE LITERALLY }}\n {{! DO NOT FORMAT AT ALL, PRE TAGS RESPECT WHITESPACE LITERALLY }}\n {{! DO NOT FORMAT AT ALL, PRE TAGS RESPECT WHITESPACE LITERALLY }}\n {{! DO NOT FORMAT AT ALL, PRE TAGS RESPECT WHITESPACE LITERALLY }}\n {{! DO NOT FORMAT AT ALL, PRE TAGS RESPECT WHITESPACE LITERALLY }}\n {{#if this.codeTarget}}\n {{#in-element this.codeTarget}}\n {{yield}}\n {{/in-element}}\n {{/if}}\n <EuiInnerText as |setInnerTextRef innerText|>\n {{#let\n (classNames\n \"euiCodeBlock\"\n (if\n (or this.showCopyButton this.showFullScreenButton)\n \"euiCodeBlock--hasControl\"\n )\n (if\n (and this.showCopyButton this.showFullScreenButton)\n \"euiCodeBlock--hasBothControls\"\n )\n (if this.lineNumbersConfig.show \"euiCodeBlock--hasLineNumbers\")\n )\n (classNames\n \"euiCodeBlock__pre\"\n (if\n (or (eq this.whiteSpace \"pre\") this.isVirtualized)\n \"euiCodeBlock__pre--whiteSpacePre\"\n )\n (if\n (and (eq this.whiteSpace \"pre-wrap\") (not this.isVirtualized))\n \"euiCodeBlock__pre--whiteSpacePreWrap\"\n )\n (if this.isVirtualized \"euiCodeBlock__pre--isVirtualized\")\n )\n as |wrapperClasses preClasses|\n }}\n <div\n class={{classNames\n wrapperClasses\n (if\n this.transparentBackground \"euiCodeBlock--transparentBackground\"\n )\n componentName=\"EuiCodeBlock\"\n fontSize=this.fontSize\n paddingSize=this.paddingSize\n }}\n {{style this.optionalStyles}}\n {{highlightTargetModifier\n element=this.codeTarget\n language=this.language\n lineNumbersConfig=this.lineNumbersConfig\n onChange=this.updateCode\n }}\n >\n {{#if this.isVirtualized}}\n {{!virtualized}}\n <VirtualizedCodeBlock\n class={{preClasses}}\n tabindex=\"0\"\n {{onKey \"Escape\" this.closeFullScreen}}\n @language={{this.language}}\n @data={{this.data.data}}\n @rowHeight={{this.rowHeight}}\n />\n {{else}}\n {{!template-lint-disable}}\n <pre\n class={{preClasses}}\n {{style this.optionalStyles}}\n tabindex={{this.tabIndex}}\n {{didInsert (set this \"wrapperRef\")}}\n {{resizeObserver onResize=this.doesOverflow}}\n {{mutationObserver\n onMutation=this.doesOverflow\n observerOptions=(hash subtree=true childList=true)\n }}\n {{didInsert setInnerTextRef}}\n ><code\n class=\"euiCodeBlock__code\"\n data-code-language={{this.language}}\n {{didInsert (set this \"code\")}}\n ...attributes\n ></code></pre>\n\n {{/if}}\n\n <Controls\n @isFullScreen={{this.isFullScreen}}\n @showFullScreenButton={{this.showFullScreenButton}}\n @toggleFullScreen={{this.toggleFullScreen}}\n @showCopyButton={{this.showCopyButton}}\n @textToCopy={{textToCopyHelper\n isVirtualized=this.isVirtualized\n innerText=(cleanTextHelper innerText)\n element=this.data.element\n }}\n />\n\n {{#if this.isFullScreen}}\n <FullScreenDisplay class={{wrapperClasses}}>\n {{#if this.isVirtualized}}\n <VirtualizedCodeBlock\n class={{preClasses}}\n tabindex=\"0\"\n {{onKey \"Escape\" this.closeFullScreen}}\n @language={{this.language}}\n @data={{this.data.data}}\n @rowHeight={{fontSizeToRowHeightMap.l}}\n />\n {{else}}\n <pre\n class={{preClasses}}\n tabindex=\"0\"\n {{onKey \"Escape\" this.closeFullScreen}}\n ><code\n class=\"euiCodeBlock__code\"\n data-code-language={{this.language}}\n {{didInsert (set this \"codeFullScreen\")}}\n ></code></pre>\n {{/if}}\n <Controls\n @isFullScreen={{this.isFullScreen}}\n @showFullScreenButton={{this.showFullScreenButton}}\n @showCopyButton={{this.showCopyButton}}\n @toggleFullScreen={{this.toggleFullScreen}}\n @textToCopy={{textToCopyHelper\n isVirtualized=this.isVirtualized\n innerText=(cleanTextHelper innerText)\n element=this.data.element\n }}\n />\n </FullScreenDisplay>\n {{/if}}\n </div>\n {{/let}}\n </EuiInnerText>\n </template>\n}\n"],"names":["fontSizeToRowHeightMap","s","m","l","highlightTargetModifier","modifier","_e","_pos","element","targetEle","language","lineNumbersConfig","start","show","onChange","observer","getHighlighedHtml","html","textContent","trim","data","highlightByLine","getHtmlContent","setupObserver","newObserver","MutationObserver","mutationsList","length","observe","characterData","subtree","childList","disconnect","cleanTextHelper","helper","text","replace","textToCopyHelper","isVirtualized","innerText","EuiCodeBlockComponent","Component","g","prototype","tracked","i","void 0","checkSupportedLanguage","args","transparentBackground","paddingSize","fontSize","isCopyable","whiteSpace","Array","isArray","lineNumbers","config","optionalStyles","overflowHeight","property","showCopyButton","rowHeight","showFullScreenButton","constructor","owner","codeTarget","document","createElement","toggleFullScreen","isFullScreen","n","action","closeFullScreen","e","preventDefault","stopPropagation","doesOverflow","wrapperRef","clientWidth","clientHeight","scrollWidth","scrollHeight","tabIndex","updateCode","resp","render","code","codeFullScreen","innerHTML","scheduleOnce","setComponentTemplate","precompileTemplate","strictMode","scope","EuiInnerText","classNames","or","and","eq","not","style","VirtualizedCodeBlock","onKey","didInsert","set","resizeObserver","mutationObserver","hash","Controls","FullScreenDisplay"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAwCA,MAAMA,sBAAyB,GAAA;AAC7BC,EAAAA,CAAG,EAAA,EAAA;AACHC,EAAAA,CAAG,EAAA,EAAA;AACHC,EAAAA,CAAG,EAAA;AACL,CAAA;AAwDA,MAAMC,uBAA0B,GAAAC,QAAA,CAC9B,CACEC,EAAA,EACAC,IAAa,EACb;AACEC,EAAAA,OAAA,EAASC,SAAS;AAClBC,EAAAA,QAAW,GAAA,MAAM;AACjBC,EAAAA,iBAAoB,GAAA;AAAEC,IAAAA,KAAO,EAAA,CAAA;AAAGC,IAAAA,IAAM,EAAA;GAAO;AAC7CC,EAAAA;AAYD,CAAA,KAAA;AAED,EAAA,IAAIC,QAAsB;EAE1B,MAAMC,iBAAoB,GAAAA,MAAA;AACxB,IAAA,MAAMC,IAAA,GAAO,CAACR,SAAW,EAAAS,WAAA,GAAcT,UAAUS,WAAW,GAAG,EAAE,EAAEC,IAAI,EAAA;AAEvE,IAAA,IAAIC,IAAM;AAEV,IAAA,IAAI,OAAOH,SAAS,QAAU,EAAA;AAC5BG,MAAAA,IAAA,GAAO,EAAE;AACX,KAAO,MAAA;MACLA,IAAO,GAAAC,eAAA,CAAgBJ,MAAMP,QAAU,EAAAC,iBAAA,CAAA;AACzC;IAEA,OAAO;MACLS,IAAA;AACAZ,MAAAA,OAAS,EAAAc,cAAA,CAAeF,MAAMZ;KAChC;GACF;EAEA,MAAMe,aAAgB,GAAAA,MAAA;AACpB,IAAA,MAAMC,WAAA,GAAc,IAAIC,gBAAA,CAAkBC,aAAA,IAAA;MACxC,IAAIA,aAAA,CAAcC,MAAM,EAAE;AACxBb,QAAAA,QAAS,CAAAE,iBAAA,EAAA,CAAA;AACX;AACF,KAAA,CAAA;AAEA,IAAA,IAAIP,SAAW,EAAA;AACbK,MAAAA,QAAS,CAAAE,iBAAA,EAAA,CAAA;AACTQ,MAAAA,WAAY,CAAAI,OAAO,CAACnB,SAAW,EAAA;AAC7BoB,QAAAA,aAAe,EAAA,IAAA;AACfC,QAAAA,OAAS,EAAA,IAAA;AACTC,QAAAA,SAAW,EAAA;AACb,OAAA,CAAA;AACF;AAEA,IAAA,OAAOP,WAAA;GACT;AAEA,EAAA,IAAIf,SAAW,EAAA;IACbM,QAAW,GAAAQ,aAAA,EAAA;AACb;AAEA,EAAA,OAAO,MAAA;IACLR,QAAU,EAAAiB,UAAA,EAAA;GACZ;AACF,CAAA,CAAA;AAGF,MAAMC,kBAAkBC,MAAO,CAAA,UAAU,CAACC,IAAA,CAAe,EAAA;EACvD,OAAOA,IAAA,EAAMC,OAAQ,CAAA,kBAAA,EAAoB,IAAS,CAAA,IAAA,EAAA;AACpD,CAAA,CAAA;AAEA,MAAMC,gBAAA,GAAmBH,MAAO,CAAA,UAC9B3B,IAAI,EACJ;EACE+B,aAAa;EACb9B,OAAO;AACP+B,EAAAA;AAKD,CAAA,EAAA;AAED,EAAA,IAAI/B,OAAS,EAAA;AACX,IAAA,OAAO8B,gBACH9B,OAAQ,CAAAU,WAAW,GACjBV,OAAQ,CAAAU,WAAW,GACnB,EACF,GAAAqB,SAAA;AACN;AAEA,EAAA,OAAO,EAAA;AACT,CAAA,CAAA;AAEe,MAAMC,8BAA8BC,SAAU,CAAA;AAAA,EAAA;IAAAC,CAAA,CAAA,IAAA,CAAAC,SAAA,EAAA,YAAA,EAAA,CAE1DC,OAAA,CAAA,CAAA;AAAA;AAAA,EAAA,WAAA,IAAAC,CAAA,CAAA,IAAA,EAAA,YAAA,CAAA,EAAAC,SAAA,EADD;AAAA,EAAA;IAAAJ,CAAA,CAAA,IAAA,CAAAC,SAAA,EAAA,MAAA,EAAA,CAGCC,OAAA,CAAA,CAAA;AAAA;AAAA,EAAA,KAAA,IAAAC,CAAA,CAAA,IAAA,EAAA,MAAA,CAAA,EAAAC,SAAA,EADD;AAAA,EAAA;IAAAJ,CAAA,CAAA,IAAA,CAAAC,SAAA,EAAA,gBAAA,EAAA,CAGCC,OAAA,CAAA,CAAA;AAAA;AAAA,EAAA,eAAA,IAAAC,CAAA,CAAA,IAAA,EAAA,gBAAA,CAAA,EAAAC,SAAA,EADD;AAAA,EAAA;IAAAJ,CAAA,CAAA,IAAA,CAAAC,SAAA,EAAA,YAAA,EAAA,CAECC,OAAA,CAAA,CAAA;AAAA;AAAA,EAAA,WAAA,IAAAC,CAAA,CAAA,IAAA,EAAA,YAAA,CAAA,EAAAC,SAAA;AAAA,EAAA;IAAAJ,CAAA,CAAA,IAAA,CAAAC,SAAA,EAAA,UAAA,EAAA,CACAC,OAAA,CAAA,EAAA,YAAA;AAAA,MAAA,OAAmB,CAAE;AAAA,KAAA,CAAA;AAAA;AAAA,EAAA,SAAA,IAAAC,CAAA,CAAA,IAAA,EAAA,UAAA,CAAA,EAAAC,SAAA;AAAA,EAAA;IAAAJ,CAAA,CAAA,IAAA,CAAAC,SAAA,EAAA,cAAA,EAAA,CACrBC,OAAA,CAAA,EAAA,YAAA;AAAA,MAAA,OAAuB,KAAM;AAAA,KAAA,CAAA;AAAA;AAAA,EAAA,aAAA,IAAAC,CAAA,CAAA,IAAA,EAAA,cAAA,CAAA,EAAAC,SAAA;AAAA,EAAA;IAAAJ,CAAA,CAAA,IAAA,CAAAC,SAAA,EAAA,MAAA,EAAA,CAC7BC,OAAA,CAAA,CAAA;AAAA;AAAA,EAAA,KAAA,IAAAC,CAAA,CAAA,IAAA,EAAA,MAAA,CAAA,EAAAC,SAAA;EAED,IAAIpC,QAAWA,GAAA;IACb,OAAOqC,uBAAuB,IAAI,CAACC,IAAI,CAACtC,QAAQ,IAAI,EAAA,CAAA;AACtD;EAEA,IAAIuC,qBAAwBA,GAAA;AAC1B,IAAA,OAAO,IAAI,CAACD,IAAI,CAACC,qBAAqB,IAAI,KAAA;AAC5C;EAEA,IAAIC,WAAcA,GAAA;AAChB,IAAA,OAAO,IAAI,CAACF,IAAI,CAACE,WAAW,IAAI,GAAA;AAClC;EAEA,IAAIC,QAAWA,GAAA;AACb,IAAA,OAAO,IAAI,CAACH,IAAI,CAACG,QAAQ,IAAI,GAAA;AAC/B;EAEA,IAAIC,UAAaA,GAAA;AACf,IAAA,OAAO,IAAI,CAACJ,IAAI,CAACI,UAAU,IAAI,KAAA;AACjC;EAEA,IAAIC,UAAaA,GAAA;AACf,IAAA,OAAO,IAAI,CAACL,IAAI,CAACK,UAAU,IAAI,UAAA;AACjC;EAEA,IAAIf,aAAgBA,GAAA;AAClB,IAAA,OAAO,CAAC,EAAE,IAAI,CAACU,IAAI,CAACV,aAAa,IAAIgB,KAAA,CAAMC,OAAO,CAAC,IAAI,CAACnC,IAAI,EAAEA,IAAK,CAAA,CAAA;AACrE;EAEA,IAAIoC,WAAcA,GAAA;AAChB,IAAA,OAAO,IAAI,CAACR,IAAI,CAACQ,WAAW,IAAI,KAAA;AAClC;EAEA,IAAI7C,iBAAoBA,GAAA;IACtB,MAAM;AAAE6C,MAAAA;AAAa,KAAA,GAAG,IAAI;IAC5B,MAAMC,MAAS,GAAA,OAAOD,WAAgB,KAAA,QAAA,GAAWA,cAAc,EAAC;AAEhE,IAAA,OAAOA,WACH,GAAA;AAAE5C,MAAAA,KAAO,EAAA,CAAA;AAAGC,MAAAA,IAAM,EAAA,IAAA;MAAM,GAAG4C;AAAO,KAClC,GAAA;AAAE7C,MAAAA,KAAO,EAAA,CAAA;AAAGC,MAAAA,IAAM,EAAA;KAAM;AAC9B;EAEA,IAAI6C,cAAiBA,GAAA;AACnB,IAAA,MAAMC,cAAiB,GAAA,IAAI,CAACX,IAAI,CAACW,cAAc;AAE/C,IAAA,IAAIA,cAAgB,EAAA;MAClB,MAAMC,QACJ,GAAA,OAAOD,cAAmB,KAAA,QAAA,GAAW,QAAW,GAAA,WAAA;MAElD,OAAO;QACL,CAACC,QAAA,GACC,OAAOD,cAAmB,KAAA,QAAA,GACtBA,iBACA,CAAA,EAAGA,cAAe,CAAA,EAAA;OAC1B;AACF;AAEA,IAAA,OAAO,EAAC;AACV;EAEA,IAAIE,cAAiBA,GAAA;AACnB,IAAA,OAAO,IAAI,CAACT,UAAU,IAAI,IAAA;AAC5B;EAEA,IAAIU,SAAYA,GAAA;AACd,IAAA,OAAO9D,sBAAsB,CAAC,IAAI,CAACmD,QAAQ,CAAC;AAC9C;EAEA,IAAIY,oBAAuBA,GAAA;AACzB,IAAA,OAAO,CAAC,CAAC,IAAI,CAACf,IAAI,CAACW,cAAc;AACnC;AAEAK,EAAAA,WAAAA,CAAYC,KAAY,EAAEjB,IAAsB,EAAE;AAChD,IAAA,KAAK,CAACiB,KAAO,EAAAjB,IAAA,CAAA;IACb,IAAI,CAACkB,UAAU,GAAGC,QAAA,CAASC,aAAa,CAAC,KAAA,CAAA;AAC3C;AAGAC,EAAAA,gBAAmBA,GAAA;AACjB,IAAA,IAAI,CAACC,YAAY,GAAG,CAAC,IAAI,CAACA,YAAY;AACxC;AAAA,EAAA;IAAAC,CAAA,CAAA,IAAA,CAAA5B,SAAA,EAAA,kBAAA,EAAA,CAHC6B,MAAA,CAAA,CAAA;AAAA;EAMDC,eAAgBA,CAAAC,CAAgB,EAAE;IAChCA,CAAA,CAAEC,cAAc,EAAA;IAChBD,CAAA,CAAEE,eAAe,EAAA;IACjB,IAAI,CAACN,YAAY,GAAG,KAAA;AACtB;AAAA,EAAA;IAAAC,CAAA,CAAA,IAAA,CAAA5B,SAAA,EAAA,iBAAA,EAAA,CALC6B,MAAA,CAAA,CAAA;AAAA;AAQDK,EAAAA,YAAeA,GAAA;AACb,IAAA,IAAI,CAAC,IAAI,CAACC,UAAU,EAAE;IAEtB,MAAM;MAAEC,WAAW;MAAEC,YAAY;MAAEC,WAAW;AAAEC,MAAAA;KAAc,GAC5D,IAAI,CAACJ,UAAU;IACjB,MAAMD,YAAA,GACJK,YAAe,GAAAF,YAAA,IAAgBC,WAAc,GAAAF,WAAA;IAE/C,IAAI,CAACI,QAAQ,GAAGN,YAAA,GAAe,IAAI,EAAC;AACtC;AAAA,EAAA;IAAAN,CAAA,CAAA,IAAA,CAAA5B,SAAA,EAAA,cAAA,EAAA,CAVC6B,MAAA,CAAA,CAAA;AAAA;EAaDY,UAAWA,CAAAC,IAAqD,EAAE;IAChE,MAAMC,MAAS,GAAAA,MAAA;AACb,MAAA,MAAMC,IAAA,GAAO,IAAI,CAACA,IAAI;AACtB,MAAA,MAAMC,cAAA,GAAiB,IAAI,CAACA,cAAc;AAE1C,MAAA,IAAID,IAAQ,IAAA,CAAC,IAAI,CAACjB,YAAY,EAAE;QAC9B,IAAI,CAAClD,IAAI,GAAGiE,IAAA;AACZE,QAAAA,IAAA,CAAKE,SAAS,GAAGJ,IAAK,CAAA7E,OAAO,CAACiF,SAAS;AACzC;AAEA,MAAA,IAAID,cAAkB,IAAA,IAAI,CAAClB,YAAY,EAAE;QACvC,IAAI,CAAClD,IAAI,GAAGiE,IAAA;AACZG,QAAAA,cAAA,CAAeC,SAAS,GAAGJ,IAAK,CAAA7E,OAAO,CAACiF,SAAS;AACnD;KACF;AAEAC,IAAAA,YAAa,CAAA,aAAA,EAAe,IAAI,EAAEJ,MAAA,CAAA;AACpC;AAAA,EAAA;IAAAf,CAAA,CAAA,IAAA,CAAA5B,SAAA,EAAA,YAAA,EAAA,CAlBC6B,MAAA,CAAA,CAAA;AAAA;AAoBD,EAAA;IAAAmB,oBAAA,CAAAC,kBAAA,CA+IA,09HAAA,EAAA;MAAAC,UAAA,EAAA,IAAA;AAAAC,MAAAA,KAAA,EAAAA,OAAA;sBAAAC,QAAA;QAAAC,UAAA;QAAAC,EAAA;QAAAC,GAAA;QAAAC,EAAA;QAAAC,GAAA;QAAAC,KAAA;QAAAjG,uBAAA;8BAAAkG,gCAAA;QAAAC,KAAA;QAAAC,SAAA;QAAAC,GAAA;wBAAAC,cAAA;QAAAC,gBAAA;QAAAC,IAAA;kBAAAC,oBAAA;QAAAxE,gBAAA;QAAAJ,eAAA;QAAA6E,iBAAA;AAAA9G,QAAAA;AAAA,OAAA;KAAU,CAAA,EAAV,IAAW,CAAA;AAAD;AACZ;;;;"}
@@ -17,14 +17,14 @@ class EuiCodeComponent extends Component {
17
17
  static {
18
18
  g(this.prototype, "codeTarget", [tracked]);
19
19
  }
20
- #codeTarget = (i(this, "codeTarget"), void 0);
20
+ #codeTarget = (i(this, "codeTarget"), undefined);
21
21
  static {
22
22
  g(this.prototype, "code", [tracked]);
23
23
  }
24
- #code = (i(this, "code"), void 0);
24
+ #code = (i(this, "code"), undefined);
25
25
  observer = null;
26
- constructor(owner1, args1) {
27
- super(owner1, args1);
26
+ constructor(owner, args) {
27
+ super(owner, args);
28
28
  this.codeTarget = document.createElement('div');
29
29
  this.setupObserver();
30
30
  }
@@ -33,8 +33,8 @@ class EuiCodeComponent extends Component {
33
33
  }
34
34
  setupObserver() {
35
35
  this.observer?.disconnect();
36
- this.observer = new MutationObserver(mutationsList1 => {
37
- if (mutationsList1.length) this.update();
36
+ this.observer = new MutationObserver(mutationsList => {
37
+ if (mutationsList.length) this.update();
38
38
  });
39
39
  if (this.codeTarget) {
40
40
  this.update();
@@ -46,20 +46,20 @@ class EuiCodeComponent extends Component {
46
46
  }
47
47
  }
48
48
  update() {
49
- const render1 = () => {
50
- const html1 = (this.codeTarget?.textContent ? this.codeTarget.textContent : '').trim();
51
- let data1;
52
- if (typeof html1 !== 'string') {
53
- data1 = [];
49
+ const render = () => {
50
+ const html = (this.codeTarget?.textContent ? this.codeTarget.textContent : '').trim();
51
+ let data;
52
+ if (typeof html !== 'string') {
53
+ data = [];
54
54
  } else {
55
- data1 = highlight(html1, this.language);
55
+ data = highlight(html, this.language);
56
56
  }
57
- const code1 = this.code;
58
- if (code1) {
59
- code1.innerHTML = getHtmlContent(data1).element.innerHTML;
57
+ const code = this.code;
58
+ if (code) {
59
+ code.innerHTML = getHtmlContent(data).element.innerHTML;
60
60
  }
61
61
  };
62
- scheduleOnce('afterRender', this, render1);
62
+ scheduleOnce('afterRender', this, render);
63
63
  }
64
64
  static {
65
65
  n(this.prototype, "update", [action]);
@@ -1 +1 @@
1
- {"version":3,"file":"eui-code.js","sources":["../../src/components/eui-code.gts"],"sourcesContent":["import { template } from \"@ember/template-compiler\";\nimport Component from '@glimmer/component';\nimport { tracked } from '@glimmer/tracking';\nimport { action } from '@ember/object';\nimport didInsert from '@ember/render-modifiers/modifiers/did-insert';\nimport didUpdate from '@ember/render-modifiers/modifiers/did-update';\nimport { scheduleOnce } from '@ember/runloop';\nimport set from 'ember-set-helper/helpers/set';\nimport { highlight } from 'refractor';\nimport argOrDefault from '../helpers/arg-or-default.ts';\nimport classNames from '../helpers/class-names.ts';\nimport { checkSupportedLanguage, getHtmlContent } from '../utils/code/utils.ts';\nimport type { EuiCodeSharedProps } from '../utils/code/utils.ts';\nimport type { RefractorNode } from 'refractor';\nexport type EuiCodeArgs = EuiCodeSharedProps & {\n};\nexport interface EuiCodeSignature {\n Args: EuiCodeArgs;\n Blocks: {\n default: [];\n };\n Element: HTMLElement;\n}\nexport default class EuiCodeComponent extends Component<EuiCodeSignature> {\n @tracked\n codeTarget: HTMLElement;\n @tracked\n code: undefined | HTMLElement;\n observer: MutationObserver | null = null;\n constructor(owner1: unknown, args1: EuiCodeArgs){\n super(owner1, args1);\n this.codeTarget = document.createElement('div');\n this.setupObserver();\n }\n get language() {\n return checkSupportedLanguage(this.args.language || '');\n }\n setupObserver() {\n this.observer?.disconnect();\n this.observer = new MutationObserver((mutationsList1)=>{\n if (mutationsList1.length) this.update();\n });\n if (this.codeTarget) {\n this.update();\n this.observer.observe(this.codeTarget, {\n characterData: true,\n subtree: true,\n childList: true\n });\n }\n }\n @action\n update() {\n const render1 = ()=>{\n const html1 = (this.codeTarget?.textContent ? this.codeTarget.textContent : '').trim();\n let data1: RefractorNode[];\n if (typeof html1 !== 'string') {\n data1 = [];\n } else {\n data1 = highlight(html1, this.language);\n }\n const code1 = this.code;\n if (code1) {\n code1.innerHTML = getHtmlContent(data1).element.innerHTML;\n }\n };\n scheduleOnce('afterRender', this, render1);\n }\n willDestroy(): void {\n super.willDestroy();\n this.observer?.disconnect();\n }\n static{\n template(`\n {{#in-element this.codeTarget}}\n {{yield}}\n {{/in-element}}\n <code\n class={{classNames\n \"euiCode\"\n (if @transparentBackground \"euiCode--transparentBackground\")\n }}\n data-code-language={{argOrDefault @language \"text\"}}\n {{didInsert (set this \"code\")}}\n {{didInsert this.update}}\n {{didUpdate this.update this.language}}\n {{didUpdate this.update this.language}}\n ...attributes\n ></code>\n `, {\n component: this,\n eval () {\n return eval(arguments[0]);\n }\n });\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9iZXRvY2FudHU5My9wcnlzbWV4L2VtYmVyLWV1aS9wYWNrYWdlcy9jb3JlL3NyYy9jb21wb25lbnRzL2V1aS1jb2RlLmd0cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgQ29tcG9uZW50IGZyb20gJ0BnbGltbWVyL2NvbXBvbmVudCc7XG5pbXBvcnQgeyB0cmFja2VkIH0gZnJvbSAnQGdsaW1tZXIvdHJhY2tpbmcnO1xuaW1wb3J0IHsgYWN0aW9uIH0gZnJvbSAnQGVtYmVyL29iamVjdCc7XG5pbXBvcnQgZGlkSW5zZXJ0IGZyb20gJ0BlbWJlci9yZW5kZXItbW9kaWZpZXJzL21vZGlmaWVycy9kaWQtaW5zZXJ0JztcbmltcG9ydCBkaWRVcGRhdGUgZnJvbSAnQGVtYmVyL3JlbmRlci1tb2RpZmllcnMvbW9kaWZpZXJzL2RpZC11cGRhdGUnO1xuaW1wb3J0IHsgc2NoZWR1bGVPbmNlIH0gZnJvbSAnQGVtYmVyL3J1bmxvb3AnO1xuXG5pbXBvcnQgc2V0IGZyb20gJ2VtYmVyLXNldC1oZWxwZXIvaGVscGVycy9zZXQnO1xuaW1wb3J0IHsgaGlnaGxpZ2h0IH0gZnJvbSAncmVmcmFjdG9yJztcblxuaW1wb3J0IGFyZ09yRGVmYXVsdCBmcm9tICcuLi9oZWxwZXJzL2FyZy1vci1kZWZhdWx0LnRzJztcbmltcG9ydCBjbGFzc05hbWVzIGZyb20gJy4uL2hlbHBlcnMvY2xhc3MtbmFtZXMudHMnO1xuaW1wb3J0IHsgY2hlY2tTdXBwb3J0ZWRMYW5ndWFnZSxnZXRIdG1sQ29udGVudCB9IGZyb20gJy4uL3V0aWxzL2NvZGUvdXRpbHMudHMnO1xuXG5pbXBvcnQgdHlwZSB7IEV1aUNvZGVTaGFyZWRQcm9wcyB9IGZyb20gJy4uL3V0aWxzL2NvZGUvdXRpbHMudHMnO1xuaW1wb3J0IHR5cGUgeyBSZWZyYWN0b3JOb2RlIH0gZnJvbSAncmVmcmFjdG9yJztcblxuZXhwb3J0IHR5cGUgRXVpQ29kZUFyZ3MgPSBFdWlDb2RlU2hhcmVkUHJvcHMgJiB7XG4gIC8vY29tbWVudHNcbn07XG5cbmV4cG9ydCBpbnRlcmZhY2UgRXVpQ29kZVNpZ25hdHVyZSB7XG4gIEFyZ3M6IEV1aUNvZGVBcmdzO1xuICBCbG9ja3M6IHtcbiAgICBkZWZhdWx0OiBbXTtcbiAgfTtcbiAgRWxlbWVudDogSFRNTEVsZW1lbnQ7XG59XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEV1aUNvZGVDb21wb25lbnQgZXh0ZW5kcyBDb21wb25lbnQ8RXVpQ29kZVNpZ25hdHVyZT4ge1xuICBAdHJhY2tlZCBjb2RlVGFyZ2V0OiBIVE1MRWxlbWVudDtcbiAgQHRyYWNrZWQgY29kZTogdW5kZWZpbmVkIHwgSFRNTEVsZW1lbnQ7XG4gIG9ic2VydmVyOiBNdXRhdGlvbk9ic2VydmVyIHwgbnVsbCA9IG51bGw7XG5cbiAgY29uc3RydWN0b3Iob3duZXI6IHVua25vd24sIGFyZ3M6IEV1aUNvZGVBcmdzKSB7XG4gICAgc3VwZXIob3duZXIsIGFyZ3MpO1xuICAgIHRoaXMuY29kZVRhcmdldCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xuICAgIHRoaXMuc2V0dXBPYnNlcnZlcigpO1xuICB9XG5cbiAgZ2V0IGxhbmd1YWdlKCkge1xuICAgIHJldHVybiBjaGVja1N1cHBvcnRlZExhbmd1YWdlKHRoaXMuYXJncy5sYW5ndWFnZSB8fCAnJyk7XG4gIH1cblxuICBzZXR1cE9ic2VydmVyKCkge1xuICAgIHRoaXMub2JzZXJ2ZXI_LmRpc2Nvbm5lY3QoKTtcbiAgICB0aGlzLm9ic2VydmVyID0gbmV3IE11dGF0aW9uT2JzZXJ2ZXIoKG11dGF0aW9uc0xpc3QpID0-IHtcbiAgICAgIGlmIChtdXRhdGlvbnNMaXN0Lmxlbmd0aCkgdGhpcy51cGRhdGUoKTtcbiAgICB9KTtcblxuICAgIGlmICh0aGlzLmNvZGVUYXJnZXQpIHtcbiAgICAgIHRoaXMudXBkYXRlKCk7XG4gICAgICB0aGlzLm9ic2VydmVyLm9ic2VydmUodGhpcy5jb2RlVGFyZ2V0LCB7XG4gICAgICAgIGNoYXJhY3RlckRhdGE6IHRydWUsXG4gICAgICAgIHN1YnRyZWU6IHRydWUsXG4gICAgICAgIGNoaWxkTGlzdDogdHJ1ZVxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgQGFjdGlvblxuICB1cGRhdGUoKSB7XG4gICAgY29uc3QgcmVuZGVyID0gKCkgPT4ge1xuICAgICAgY29uc3QgaHRtbCA9IChcbiAgICAgICAgdGhpcy5jb2RlVGFyZ2V0Py50ZXh0Q29udGVudCA_IHRoaXMuY29kZVRhcmdldC50ZXh0Q29udGVudCA6ICcnXG4gICAgICApLnRyaW0oKTtcblxuICAgICAgbGV0IGRhdGE6IFJlZnJhY3Rvck5vZGVbXTtcblxuICAgICAgaWYgKHR5cGVvZiBodG1sICE9PSAnc3RyaW5nJykge1xuICAgICAgICBkYXRhID0gW107XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBkYXRhID0gaGlnaGxpZ2h0KGh0bWwsIHRoaXMubGFuZ3VhZ2UpO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBjb2RlID0gdGhpcy5jb2RlO1xuXG4gICAgICBpZiAoY29kZSkge1xuICAgICAgICBjb2RlLmlubmVySFRNTCA9IGdldEh0bWxDb250ZW50KGRhdGEpLmVsZW1lbnQuaW5uZXJIVE1MO1xuICAgICAgfVxuICAgIH07XG5cbiAgICBzY2hlZHVsZU9uY2UoJ2FmdGVyUmVuZGVyJywgdGhpcywgcmVuZGVyKTtcbiAgfVxuXG4gIHdpbGxEZXN0cm95KCk6IHZvaWQge1xuICAgIHN1cGVyLndpbGxEZXN0cm95KCk7XG4gICAgdGhpcy5vYnNlcnZlcj8uZGlzY29ubmVjdCgpO1xuICB9XG5cbiAgPHRlbXBsYXRlPlxuICAgIHt7I2luLWVsZW1lbnQgdGhpcy5jb2RlVGFyZ2V0fX1cbiAgICAgIHt7eWllbGR9fVxuICAgIHt7L2luLWVsZW1lbnR9fVxuICAgIDxjb2RlXG4gICAgICBjbGFzcz17e2NsYXNzTmFtZXNcbiAgICAgICAgXCJldWlDb2RlXCJcbiAgICAgICAgKGlmIEB0cmFuc3BhcmVudEJhY2tncm91bmQgXCJldWlDb2RlLS10cmFuc3BhcmVudEJhY2tncm91bmRcIilcbiAgICAgIH19XG4gICAgICBkYXRhLWNvZGUtbGFuZ3VhZ2U9e3thcmdPckRlZmF1bHQgQGxhbmd1YWdlIFwidGV4dFwifX1cbiAgICAgIHt7ZGlkSW5zZXJ0IChzZXQgdGhpcyBcImNvZGVcIil9fVxuICAgICAge3tkaWRJbnNlcnQgdGhpcy51cGRhdGV9fVxuICAgICAge3tkaWRVcGRhdGUgdGhpcy51cGRh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"],"names":["EuiCodeComponent","Component","g","this","prototype","tracked","i","void 0","observer","constructor","owner1","args1","codeTarget","document","createElement","setupObserver","language","checkSupportedLanguage","args","disconnect","MutationObserver","mutationsList1","length","update","observe","characterData","subtree","childList","render1","html1","textContent","trim","data1","highlight","code1","code","innerHTML","getHtmlContent","element","scheduleOnce","n","action","willDestroy","setComponentTemplate","precompileTemplate","strictMode","scope","classNames","argOrDefault","didInsert","set","didUpdate"],"mappings":";;;;;;;;;;;;;;;AA6Be,MAAMA,gBAAA,SAAyBC,SAAA,CAAU;AAAA,EAAA;AAAAC,IAAAA,CAAA,CAAAC,IAAA,CAAAC,SAAA,iBACrDC,OAAA,CAAA,CAAA,CAAA;AAAA,GAAA;AAAA,EAAA,WAAA,IAAAC,CAAA,CAAAH,IAAA,iBAAAI,KAAA,CAAA,EAAA;AAAA,EAAA;AAAAL,IAAAA,CAAA,CAAAC,IAAA,CAAAC,SAAA,WACAC,OAAA,CAAA,CAAA,CAAA;AAAA,GAAA;AAAA,EAAA,KAAA,IAAAC,CAAA,CAAAH,IAAA,WAAAI,KAAA,CAAA,EAAA;AACDC,EAAAA,QAAA,GAAoC,IAAA,CAAA;EAEpCC,WAAYC,CAAAA,MAAc,EAAEC,KAAiB,EAAE;IAC7C,KAAK,CAACD,MAAA,EAAOC,KAAA,CAAA,CAAA;AACb,IAAA,IAAI,CAACC,UAAU,GAAGC,QAAA,CAASC,aAAa,CAAC,KAAA,CAAA,CAAA;AACzC,IAAA,IAAI,CAACC,aAAa,EAAA,CAAA;AACpB,GAAA;AAEA,EAAA,IAAIC,WAAW;AACb,IAAA,OAAOC,sBAAA,CAAuB,IAAI,CAACC,IAAI,CAACF,QAAQ,IAAI,EAAA,CAAA,CAAA;AACtD,GAAA;AAEAD,EAAAA,aAAAA,GAAgB;IACd,IAAI,CAACP,QAAQ,EAAEW,UAAA,EAAA,CAAA;AACf,IAAA,IAAI,CAACX,QAAQ,GAAG,IAAIY,gBAAA,CAAkBC,cAAA,IAAA;AACpC,MAAA,IAAIA,cAAA,CAAcC,MAAM,EAAE,IAAI,CAACC,MAAM,EAAA,CAAA;AACvC,KAAA,CAAA,CAAA;IAEA,IAAI,IAAI,CAACX,UAAU,EAAE;AACnB,MAAA,IAAI,CAACW,MAAM,EAAA,CAAA;MACX,IAAI,CAACf,QAAQ,CAACgB,OAAO,CAAC,IAAI,CAACZ,UAAU,EAAE;AACrCa,QAAAA,aAAA,EAAe,IAAA;AACfC,QAAAA,OAAA,EAAS,IAAA;AACTC,QAAAA,SAAA,EAAW,IAAA;AACb,OAAA,CAAA,CAAA;AACF,KAAA;AACF,GAAA;AAGAJ,EAAAA,MAAAA,GAAS;IACP,MAAMK,OAAA,GAASA,MAAA;AACb,MAAA,MAAMC,KAAA,GAAO,CACX,IAAI,CAACjB,UAAU,EAAEkB,WAAA,GAAc,IAAI,CAAClB,UAAU,CAACkB,WAAW,GAAG,EAC/D,EAAEC,IAAI,EAAA,CAAA;AAEN,MAAA,IAAIC,KAAM,CAAA;MAEV,IAAI,OAAOH,KAAA,KAAS,QAAU,EAAA;AAC5BG,QAAAA,KAAA,GAAO,EAAE,CAAA;OACJ,MAAA;AACLA,QAAAA,KAAA,GAAOC,SAAA,CAAUJ,KAAA,EAAM,IAAI,CAACb,QAAQ,CAAA,CAAA;AACtC,OAAA;AAEA,MAAA,MAAMkB,KAAA,GAAO,IAAI,CAACC,IAAI,CAAA;AAEtB,MAAA,IAAID,KAAA,EAAM;QACRA,KAAA,CAAKE,SAAS,GAAGC,cAAA,CAAeL,KAAA,CAAA,CAAMM,OAAO,CAACF,SAAS,CAAA;AACzD,OAAA;AACF,KAAA,CAAA;AAEAG,IAAAA,YAAA,CAAa,aAAA,EAAe,IAAI,EAAEX,OAAA,CAAA,CAAA;AACpC,GAAA;AAAA,EAAA;AAAAY,IAAAA,CAAA,CAAArC,IAAA,CAAAC,SAAA,aAvBCqC,MAAA,CAAA,CAAA,CAAA;AAAA,GAAA;AAyBDC,EAAAA,WAAAA,GAAoB;AAClB,IAAA,KAAK,CAACA,WAAA,EAAA,CAAA;IACN,IAAI,CAAClC,QAAQ,EAAEW,UAAA,EAAA,CAAA;AACjB,GAAA;AAEA,EAAA;IAAAwB,oBAAA,CAAAC,kBAAA,CAgBA,qZAAA,EAAA;MAAAC,UAAA,EAAA,IAAA;AAAAC,MAAAA,KAAA,EAAAA,OAAA;QAAAC,UAAA;QAAAC,YAAA;QAAAC,SAAA;QAAAC,GAAA;AAAAC,QAAAA,SAAAA;AAAA,OAAA,CAAA;AAAU,KAAA,CAAA,EAAV,IAAW,CAAA,CAAA;AAAD,GAAA;AACZ;;;;"}
1
+ {"version":3,"file":"eui-code.js","sources":["../../src/components/eui-code.gts"],"sourcesContent":["import Component from '@glimmer/component';\nimport { tracked } from '@glimmer/tracking';\nimport { action } from '@ember/object';\nimport didInsert from '@ember/render-modifiers/modifiers/did-insert';\nimport didUpdate from '@ember/render-modifiers/modifiers/did-update';\nimport { scheduleOnce } from '@ember/runloop';\nimport type Owner from '@ember/owner';\n\nimport set from 'ember-set-helper/helpers/set';\nimport { highlight } from 'refractor';\n\nimport argOrDefault from '../helpers/arg-or-default.ts';\nimport classNames from '../helpers/class-names.ts';\nimport { checkSupportedLanguage,getHtmlContent } from '../utils/code/utils.ts';\n\nimport type { EuiCodeSharedProps } from '../utils/code/utils.ts';\nimport type { RefractorNode } from 'refractor';\n\nexport type EuiCodeArgs = EuiCodeSharedProps & {\n //comments\n};\n\nexport interface EuiCodeSignature {\n Args: EuiCodeArgs;\n Blocks: {\n default: [];\n };\n Element: HTMLElement;\n}\n\nexport default class EuiCodeComponent extends Component<EuiCodeSignature> {\n @tracked codeTarget: HTMLElement;\n @tracked code: undefined | HTMLElement;\n observer: MutationObserver | null = null;\n\n constructor(owner: Owner, args: EuiCodeArgs) {\n super(owner, args);\n this.codeTarget = document.createElement('div');\n this.setupObserver();\n }\n\n get language() {\n return checkSupportedLanguage(this.args.language || '');\n }\n\n setupObserver() {\n this.observer?.disconnect();\n this.observer = new MutationObserver((mutationsList) => {\n if (mutationsList.length) this.update();\n });\n\n if (this.codeTarget) {\n this.update();\n this.observer.observe(this.codeTarget, {\n characterData: true,\n subtree: true,\n childList: true\n });\n }\n }\n\n @action\n update() {\n const render = () => {\n const html = (\n this.codeTarget?.textContent ? this.codeTarget.textContent : ''\n ).trim();\n\n let data: RefractorNode[];\n\n if (typeof html !== 'string') {\n data = [];\n } else {\n data = highlight(html, this.language);\n }\n\n const code = this.code;\n\n if (code) {\n code.innerHTML = getHtmlContent(data).element.innerHTML;\n }\n };\n\n scheduleOnce('afterRender', this, render);\n }\n\n willDestroy(): void {\n super.willDestroy();\n this.observer?.disconnect();\n }\n\n <template>\n {{#in-element this.codeTarget}}\n {{yield}}\n {{/in-element}}\n <code\n class={{classNames\n \"euiCode\"\n (if @transparentBackground \"euiCode--transparentBackground\")\n }}\n data-code-language={{argOrDefault @language \"text\"}}\n {{didInsert (set this \"code\")}}\n {{didInsert this.update}}\n {{didUpdate this.update this.language}}\n {{didUpdate this.update this.language}}\n ...attributes\n ></code>\n </template>\n}\n"],"names":["EuiCodeComponent","Component","g","prototype","tracked","i","void 0","observer","constructor","owner","args","codeTarget","document","createElement","setupObserver","language","checkSupportedLanguage","disconnect","MutationObserver","mutationsList","length","update","observe","characterData","subtree","childList","render","html","textContent","trim","data","highlight","code","innerHTML","getHtmlContent","element","scheduleOnce","n","action","willDestroy","setComponentTemplate","precompileTemplate","strictMode","scope","classNames","argOrDefault","didInsert","set","didUpdate"],"mappings":";;;;;;;;;;;;;;;AA8Be,MAAMA,yBAAyBC,SAAU,CAAA;AAAA,EAAA;IAAAC,CAAA,CAAA,IAAA,CAAAC,SAAA,EAAA,YAAA,EAAA,CACrDC,OAAA,CAAA,CAAA;AAAA;AAAA,EAAA,WAAA,IAAAC,CAAA,CAAA,IAAA,EAAA,YAAA,CAAA,EAAAC,SAAA;AAAA,EAAA;IAAAJ,CAAA,CAAA,IAAA,CAAAC,SAAA,EAAA,MAAA,EAAA,CACAC,OAAA,CAAA,CAAA;AAAA;AAAA,EAAA,KAAA,IAAAC,CAAA,CAAA,IAAA,EAAA,MAAA,CAAA,EAAAC,SAAA;AACDC,EAAAA,QAAU,GAA0B,IAAK;AAEzCC,EAAAA,WAAAA,CAAYC,KAAY,EAAEC,IAAiB,EAAE;AAC3C,IAAA,KAAK,CAACD,KAAO,EAAAC,IAAA,CAAA;IACb,IAAI,CAACC,UAAU,GAAGC,QAAA,CAASC,aAAa,CAAC,KAAA,CAAA;IACzC,IAAI,CAACC,aAAa,EAAA;AACpB;EAEA,IAAIC,QAAWA,GAAA;IACb,OAAOC,uBAAuB,IAAI,CAACN,IAAI,CAACK,QAAQ,IAAI,EAAA,CAAA;AACtD;AAEAD,EAAAA,aAAgBA,GAAA;AACd,IAAA,IAAI,CAACP,QAAQ,EAAEU,UAAA,EAAA;AACf,IAAA,IAAI,CAACV,QAAQ,GAAG,IAAIW,iBAAkBC,aAAA,IAAA;MACpC,IAAIA,aAAc,CAAAC,MAAM,EAAE,IAAI,CAACC,MAAM,EAAA;AACvC,KAAA,CAAA;IAEA,IAAI,IAAI,CAACV,UAAU,EAAE;MACnB,IAAI,CAACU,MAAM,EAAA;MACX,IAAI,CAACd,QAAQ,CAACe,OAAO,CAAC,IAAI,CAACX,UAAU,EAAE;AACrCY,QAAAA,aAAe,EAAA,IAAA;AACfC,QAAAA,OAAS,EAAA,IAAA;AACTC,QAAAA,SAAW,EAAA;AACb,OAAA,CAAA;AACF;AACF;AAGAJ,EAAAA,MAASA,GAAA;IACP,MAAMK,MAAS,GAAAA,MAAA;AACb,MAAA,MAAMC,IAAO,GAAA,CACX,IAAI,CAAChB,UAAU,EAAEiB,WAAA,GAAc,IAAI,CAACjB,UAAU,CAACiB,WAAW,GAAG,EAC/D,EAAEC,IAAI,EAAA;AAEN,MAAA,IAAIC,IAAM;AAEV,MAAA,IAAI,OAAOH,SAAS,QAAU,EAAA;AAC5BG,QAAAA,IAAA,GAAO,EAAE;AACX,OAAO,MAAA;QACLA,IAAA,GAAOC,SAAU,CAAAJ,IAAA,EAAM,IAAI,CAACZ,QAAQ,CAAA;AACtC;AAEA,MAAA,MAAMiB,IAAA,GAAO,IAAI,CAACA,IAAI;AAEtB,MAAA,IAAIA,IAAM,EAAA;QACRA,IAAA,CAAKC,SAAS,GAAGC,cAAA,CAAeJ,IAAM,CAAA,CAAAK,OAAO,CAACF,SAAS;AACzD;KACF;AAEAG,IAAAA,YAAa,CAAA,aAAA,EAAe,IAAI,EAAEV,MAAA,CAAA;AACpC;AAAA,EAAA;IAAAW,CAAA,CAAA,IAAA,CAAAlC,SAAA,EAAA,QAAA,EAAA,CAvBCmC,MAAA,CAAA,CAAA;AAAA;AAyBDC,EAAAA,WAAAA,GAAoB;IAClB,KAAK,CAACA,WAAA,EAAA;AACN,IAAA,IAAI,CAAChC,QAAQ,EAAEU,UAAA,EAAA;AACjB;AAEA,EAAA;IAAAuB,oBAAA,CAAAC,kBAAA,CAgBA,qZAAA,EAAA;MAAAC,UAAA,EAAA,IAAA;AAAAC,MAAAA,KAAA,EAAAA,OAAA;QAAAC,UAAA;QAAAC,YAAA;QAAAC,SAAA;QAAAC,GAAA;AAAAC,QAAAA;AAAA,OAAA;KAAU,CAAA,EAAV,IAAW,CAAA;AAAD;AACZ;;;;"}
@@ -1,6 +1,6 @@
1
1
  import { concat } from '@ember/helper';
2
2
  import { element } from 'ember-element-helper';
3
- import { and, notEq } from 'ember-truth-helpers';
3
+ import { notEq, and } from 'ember-truth-helpers';
4
4
  import randomId from '../-private/random-id.js';
5
5
  import argOrDefault from '../helpers/arg-or-default.js';
6
6
  import classNames from '../helpers/class-names.js';
@@ -1 +1 @@
1
- {"version":3,"file":"eui-collapsible-nav-group.js","sources":["../../src/components/eui-collapsible-nav-group.gts"],"sourcesContent":["import { template } from \"@ember/template-compiler\";\nimport { concat } from '@ember/helper';\nimport { element } from 'ember-element-helper';\nimport { and, notEq } from 'ember-truth-helpers';\nimport randomId from '../-private/random-id.ts';\nimport argOrDefault from '../helpers/arg-or-default.ts';\nimport classNames from '../helpers/class-names.ts';\nimport EuiAccordion from './eui-accordion.gts';\nimport EuiFlexGroup from './eui-flex-group.gts';\nimport EuiFlexItem from './eui-flex-item.gts';\nimport EuiIcon from './eui-icon.gts';\nimport EuiTitle from './eui-title.gts';\nimport type { EuiAccordionSignature } from './eui-accordion';\nimport type { EuiIconSignature } from './eui-icon';\nimport type { EuiTitleSignature } from './eui-title';\nimport type { TemplateOnlyComponent } from '@ember/component/template-only';\nexport interface EuiCollapsibleNavGroupSignature {\n Element: EuiAccordionSignature['Element'];\n Args: {\n id?: string;\n titleElement?: string;\n isCollapsible?: boolean;\n initialIsOpen?: boolean;\n iconType?: EuiIconSignature['Args']['type'];\n iconSize?: EuiIconSignature['Args']['size'];\n titleTagName?: EuiTitleSignature['Args']['tagName'];\n titleSize?: EuiTitleSignature['Args']['size'];\n background?: string;\n };\n Blocks: {\n default: [];\n title: [];\n content: [];\n };\n}\nconst EuiCollapsibleNavGroup: TemplateOnlyComponent<EuiCollapsibleNavGroupSignature> = template(`\n {{#let\n (argOrDefault @id (randomId)) (argOrDefault @titleElement \"h3\")\n as |groupID titleElement|\n }}\n {{#let (concat groupID \"__title\") as |titleID|}}\n {{#if (and @isCollapsible (has-block \"title\"))}}\n <EuiAccordion\n id={{groupID}}\n class={{classNames\n (if (has-block \"title\") \"euiCollapsibleNavGroup--withHeading\")\n componentName=\"EuiCollapsibleNavGroup\"\n backgroundColor=(argOrDefault @background \"none\")\n }}\n @buttonClassName=\"euiCollapsibleNavGroup__heading\"\n @initialIsOpen={{argOrDefault @initialIsOpen true}}\n @arrowDisplay=\"right\"\n ...attributes\n >\n <:buttonContent>\n <EuiFlexGroup\n @gutterSize=\"m\"\n @alignItems=\"center\"\n @responsive={{false}}\n >\n {{#if @iconType}}\n <EuiFlexItem @grow={{false}}>\n <EuiIcon\n @type={{@iconType}}\n @size={{argOrDefault @iconSize \"l\"}}\n />\n </EuiFlexItem>\n {{/if}}\n <EuiFlexItem>\n <EuiTitle\n id={{concat groupID \"__title\"}}\n @tagName={{argOrDefault @titleTagName \"h3\"}}\n @size={{argOrDefault @titleSize \"xxs\"}}\n >\n {{#if (notEq titleElement \"h3\")}}\n {{#let (element titleElement) as |TitleElement|}}\n <TitleElement\n id={{titleID}}\n class=\"euiCollapsibleNavGroup__title\"\n >\n {{yield to=\"title\"}}\n </TitleElement>\n {{/let}}\n {{else}}\n <h3 id={{titleID}} class=\"euiCollapsibleNavGroup__title\">\n {{yield to=\"title\"}}\n </h3>\n {{/if}}\n </EuiTitle>\n </EuiFlexItem>\n </EuiFlexGroup>\n </:buttonContent>\n <:content>\n {{#if (has-block \"content\")}}\n <div class=\"euiCollapsibleNavGroup__children\">\n {{yield to=\"content\"}}\n </div>\n {{/if}}\n </:content>\n </EuiAccordion>\n {{else}}\n <div\n id={{groupID}}\n class={{classNames\n (if (has-block \"title\") \"euiCollapsibleNavGroup--withHeading\")\n componentName=\"EuiCollapsibleNavGroup\"\n backgroundColor=(argOrDefault @background \"none\")\n }}\n ...attributes\n >\n {{#if (has-block \"title\")}}\n <div class=\"euiCollapsibleNavGroup__heading\">\n <EuiFlexGroup\n @gutterSize=\"m\"\n @alignItems=\"center\"\n @responsive={{false}}\n >\n {{#if @iconType}}\n <EuiFlexItem @grow={{false}}>\n <EuiIcon\n @type={{@iconType}}\n @size={{argOrDefault @iconSize \"l\"}}\n />\n </EuiFlexItem>\n {{/if}}\n <EuiFlexItem>\n <EuiTitle\n id={{concat groupID \"__title\"}}\n @tagName={{argOrDefault @titleTagName \"h3\"}}\n @size={{argOrDefault @titleSize \"xxs\"}}\n >\n {{#if (notEq titleElement \"h3\")}}\n {{#let (element titleElement) as |TitleElement|}}\n <TitleElement\n id={{titleID}}\n class=\"euiCollapsibleNavGroup__title\"\n >\n {{yield to=\"title\"}}\n </TitleElement>\n {{/let}}\n {{else}}\n <h3\n id={{titleID}}\n class=\"euiCollapsibleNavGroup__title\"\n >\n {{yield to=\"title\"}}\n </h3>\n {{/if}}\n </EuiTitle>\n </EuiFlexItem>\n </EuiFlexGroup>\n </div>\n {{/if}}\n {{#if (has-block \"content\")}}\n <div class=\"euiCollapsibleNavGroup__children\">\n {{yield to=\"content\"}}\n </div>\n {{/if}}\n </div>\n {{/if}}\n {{/let}}\n {{/let}}\n `, {\n eval () {\n return eval(arguments[0]);\n }\n});\nexport default EuiCollapsibleNavGroup;\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9iZXRvY2FudHU5My9wcnlzbWV4L2VtYmVyLWV1aS9wYWNrYWdlcy9jb3JlL3NyYy9jb21wb25lbnRzL2V1aS1jb2xsYXBzaWJsZS1uYXYtZ3JvdXAuZ3RzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNvbmNhdCB9IGZyb20gJ0BlbWJlci9oZWxwZXInO1xuXG5pbXBvcnQgeyBlbGVtZW50IH0gZnJvbSAnZW1iZXItZWxlbWVudC1oZWxwZXInO1xuaW1wb3J0IHsgYW5kLCBub3RFcSB9IGZyb20gJ2VtYmVyLXRydXRoLWhlbHBlcnMnO1xuXG5pbXBvcnQgcmFuZG9tSWQgZnJvbSAnLi4vLXByaXZhdGUvcmFuZG9tLWlkLnRzJztcbmltcG9ydCBhcmdPckRlZmF1bHQgZnJvbSAnLi4vaGVscGVycy9hcmctb3ItZGVmYXVsdC50cyc7XG5pbXBvcnQgY2xhc3NOYW1lcyBmcm9tICcuLi9oZWxwZXJzL2NsYXNzLW5hbWVzLnRzJztcbmltcG9ydCBFdWlBY2NvcmRpb24gZnJvbSAnLi9ldWktYWNjb3JkaW9uLmd0cyc7XG5pbXBvcnQgRXVpRmxleEdyb3VwIGZyb20gJy4vZXVpLWZsZXgtZ3JvdXAuZ3RzJztcbmltcG9ydCBFdWlGbGV4SXRlbSBmcm9tICcuL2V1aS1mbGV4LWl0ZW0uZ3RzJztcbmltcG9ydCBFdWlJY29uIGZyb20gJy4vZXVpLWljb24uZ3RzJztcbmltcG9ydCBFdWlUaXRsZSBmcm9tICcuL2V1aS10aXRsZS5ndHMnO1xuXG5pbXBvcnQgdHlwZSB7IEV1aUFjY29yZGlvblNpZ25hdHVyZSB9IGZyb20gJy4vZXVpLWFjY29yZGlvbic7XG5pbXBvcnQgdHlwZSB7IEV1aUljb25TaWduYXR1cmUgfSBmcm9tICcuL2V1aS1pY29uJztcbmltcG9ydCB0eXBlIHsgRXVpVGl0bGVTaWduYXR1cmUgfSBmcm9tICcuL2V1aS10aXRsZSc7XG5pbXBvcnQgdHlwZSB7IFRlbXBsYXRlT25seUNvbXBvbmVudCB9IGZyb20gJ0BlbWJlci9jb21wb25lbnQvdGVtcGxhdGUtb25seSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRXVpQ29sbGFwc2libGVOYXZHcm91cFNpZ25hdHVyZSB7XG4gIEVsZW1lbnQ6IEV1aUFjY29yZGlvblNpZ25hdHVyZVsnRWxlbWVudCddO1xuICBBcmdzOiB7XG4gICAgaWQ_OiBzdHJpbmc7XG4gICAgdGl0bGVFbGVtZW50Pzogc3RyaW5nO1xuICAgIGlzQ29sbGFwc2libGU_OiBib29sZWFuO1xuICAgIGluaXRpYWxJc09wZW4_OiBib29sZWFuO1xuICAgIGljb25UeXBlPzogRXVpSWNvblNpZ25hdHVyZVsnQXJncyddWyd0eXBlJ107XG4gICAgaWNvblNpemU_OiBFdWlJY29uU2lnbmF0dXJlWydBcmdzJ11bJ3NpemUnXTtcbiAgICB0aXRsZVRhZ05hbWU_OiBFdWlUaXRsZVNpZ25hdHVyZVsnQXJncyddWyd0YWdOYW1lJ107XG4gICAgdGl0bGVTaXplPzogRXVpVGl0bGVTaWduYXR1cmVbJ0FyZ3MnXVsnc2l6ZSddO1xuICAgIGJhY2tncm91bmQ_OiBzdHJpbmc7XG4gIH07XG4gIEJsb2Nrczoge1xuICAgIGRlZmF1bHQ6IFtdO1xuICAgIHRpdGxlOiBbXTtcbiAgICBjb250ZW50OiBbXTtcbiAgfTtcbn1cblxuY29uc3QgRXVpQ29sbGFwc2libGVOYXZHcm91cDogVGVtcGxhdGVPbmx5Q29tcG9uZW50PEV1aUNvbGxhcHNpYmxlTmF2R3JvdXBTaWduYXR1cmU-ID1cbiAgPHRlbXBsYXRlPlxuICAgIHt7I2xldFxuICAgICAgKGFyZ09yRGVmYXVsdCBAaWQgKHJhbmRvbUlkKSkgKGFyZ09yRGVmYXVsdCBAdGl0bGVFbGVtZW50IFwiaDNcIilcbiAgICAgIGFzIHxncm91cElEIHRpdGxlRWxlbWVudHxcbiAgICB9fVxuICAgICAge3sjbGV0IChjb25jYXQgZ3JvdXBJRCBcIl9fdGl0bGVcIikgYXMgfHRpdGxlSUR8fX1cbiAgICAgICAge3sjaWYgKGFuZCBAaXNDb2xsYXBzaWJsZSAoaGFzLWJsb2NrIFwidGl0bGVcIikpfX1cbiAgICAgICAgICA8RXVpQWNjb3JkaW9uXG4gICAgICAgICAgICBpZD17e2dyb3VwSUR9fVxuICAgICAgICAgICAgY2xhc3M9e3tjbGFzc05hbWVzXG4gICAgICAgICAgICAgIChpZiAoaGFzLWJsb2NrIFwidGl0bGVcIikgXCJldWlDb2xsYXBzaWJsZU5hdkdyb3VwLS13aXRoSGVhZGluZ1wiKVxuICAgICAgICAgICAgICBjb21wb25lbnROYW1lPVwiRXVpQ29sbGFwc2libGVOYXZHcm91cFwiXG4gICAgICAgICAgICAgIGJhY2tncm91bmRDb2xvcj0oYXJnT3JEZWZhdWx0IEBiYWNrZ3JvdW5kIFwibm9uZVwiKVxuICAgICAgICAgICAgfX1cbiAgICAgICAgICAgIEBidXR0b25DbGFzc05hbWU9XCJldWlDb2xsYXBzaWJsZU5hdkdyb3VwX19oZWFkaW5nXCJcbiAgICAgICAgICAgIEBpbml0aWFsSXNPcGVuPXt7YXJnT3JEZWZhdWx0IEBpbml0aWFsSXNPcGVuIHRydWV9fVxuICAgICAgICAgICAgQGFycm93RGlzcGxheT1cInJpZ2h0XCJcbiAgICAgICAgICAgIC4uLmF0dHJpYnV0ZXNcbiAgICAgICAgICA-XG4gICAgICAgICAgICA8OmJ1dHRvbkNvbnRlbnQ-XG4gICAgICAgICAgICAgIDxFdWlGbGV4R3JvdXBcbiAgICAgICAgICAgICAgICBAZ3V0dGVyU2l6ZT1cIm1cIlxuICAgICAgICAgICAgICAgIEBhbGlnbkl0ZW1zPVwiY2VudGVyXCJcbiAgICAgICAgICAgICAgICBAcmVzcG9uc2l2ZT17e2ZhbHNlfX1cbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIHt7I2lmIEBpY29uVHlwZX19XG4gICAgICAgICAgICAgICAgICA8RXVpRmxleEl0ZW0gQGdyb3c9e3tmYWxzZX19PlxuICAgICAgICAgICAgICAgICAgICA8RXVpSWNvblxuICAgICAgICAgICAgICAgICAgICAgIEB0eXBlPXt7QGljb25UeXBlfX1cbiAgICAgICAgICAgICAgICAgICAgICBAc2l6ZT17e2FyZ09yRGVmYXVsdCBAaWNvblNpemUgXCJsXCJ9fVxuICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgPC9FdWlGbGV4SXRlbT5cbiAgICAgICAgICAgICAgICB7ey9pZn19XG4gICAgICAgICAgICAgICAgPEV1aUZsZXhJdGVtPlxuICAgICAgICAgICAgICAgICAgPEV1aVRpdGxlXG4gICAgICAgICAgICAgICAgICAgIGlkPXt7Y29uY2F0IGdyb3VwSUQgXCJfX3RpdGxlXCJ9fVxuICAgICAgICAgICAgICAgICAgICBAdGFnTmFtZT17e2FyZ09yRGVmYXVsdCBAdGl0bGVUYWdOYW1lIFwiaDNcIn19XG4gICAgICAgICAgICAgICAgICAgIEBzaXplPXt7YXJnT3JEZWZhdWx0IEB0aXRsZVNpemUgXCJ4eHNcIn19XG4gICAgICAgICAgICAgICAgICA-XG4gICAgICAgICAgICAgICAgICAgIHt7I2lmIChub3RFcSB0aXRsZUVsZW1lbnQgXCJoM1wiKX19XG4gICAgICAgICAgICAgICAgICAgICAge3sjbGV0IChlbGVtZW50IHRpdGxlRWxlbWVudCkgYXMgfFRpdGxlRWxlbWVudHx9fVxuICAgICAgICAgICAgICAgICAgICAgICAgPFRpdGxlRWxlbWVudFxuICAgICAgICAgICAgICAgICAgICAgICAgICBpZD17e3RpdGxlSUR9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImV1aUNvbGxhcHNpYmxlTmF2R3JvdXBfX3RpdGxlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAge3t5aWVsZCB0bz1cInRpdGxlXCJ9fVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9UaXRsZUVsZW1lbnQ-XG4gICAgICAgICAgICAgICAgICAgICAge3svbGV0fX1cbiAgICAgICAgICAgICAgICAgICAge3tlbHNlfX1cbiAgICAgICAgICAgICAgICAgICAgICA8aDMgaWQ9e3t0aXRsZUlEfX0gY2xhc3M9XCJldWlDb2xsYXBzaWJsZU5hdkdyb3VwX190aXRsZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAge3t5aWVsZCB0bz1cInRpdGxlXCJ9fVxuICAgICAgICAgICAgICAgICAgICAgIDwvaDM-XG4gICAgICAgICAgICAgICAgICAgIHt7L2lmfX1cbiAgICAgICAgICAgICAgICAgIDwvRXVpVGl0bGU-XG4gICAgICAgICAgICAgICAgPC9FdWlGbGV4SXRlbT5cbiAgICAgICAgICAgICAgPC9FdWlGbGV4R3JvdXA-XG4gICAgICAgICAgICA8LzpidXR0b25Db250ZW50PlxuICAgICAgICAgICAgPDpjb250ZW50PlxuICAgICAgICAgICAgICB7eyNpZiAoaGFzLWJsb2NrIFwiY29udGVudFwiKX19XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImV1aUNvbGxhcHNpYmxlTmF2R3JvdXBfX2NoaWxkcmVuXCI-XG4gICAgICAgICAgICAgICAgICB7e3lpZWxkIHRvPVwiY29udGVudFwifX1cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAge3svaWZ9fVxuICAgICAgICAgICAgPC86Y29udGVudD5cbiAgICAgICAgICA8L0V1aUFjY29yZGlvbj5cbiAgICAgICAge3tlbHNlfX1cbiAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICBpZD17e2dyb3VwSUR9fVxuICAgICAgICAgICAgY2xhc3M9e3tjbGFzc05hbWVzXG4gICAgICAgICAgICAgIChpZiAoaGFzLWJsb2NrIFwidGl0bGVcIikgXCJldWlDb2xsYXBzaWJsZU5hdkdyb3VwLS13aXRoSGVhZGluZ1wiKVxuICAgICAgICAgICAgICBjb21wb25lbnROYW1lPVwiRXVpQ29sbGFwc2libGVOYXZHcm91cFwiXG4gICAgICAgICAgICAgIGJhY2tncm91bmRDb2xvcj0oYXJnT3JEZWZhdWx0IEBiYWNrZ3JvdW5kIFwibm9uZVwiKVxuICAgICAgICAgICAgfX1cbiAgICAgICAgICAgIC4uLmF0dHJpYnV0ZXNcbiAgICAgICAgICA-XG4gICAgICAgICAgICB7eyNpZiAoaGFzLWJsb2NrIFwidGl0bGVcIil9fVxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZXVpQ29sbGFwc2libGVOYXZHcm91cF9faGVhZGluZ1wiPlxuICAgICAgICAgICAgICAgIDxFdWlGbGV4R3JvdXBcbiAgICAgICAgICAgICAgICAgIEBndXR0ZXJTaXplPVwibVwiXG4gICAgICAgICAgICAgICAgICBAYWxpZ25JdGVtcz1cImNlbnRlclwiXG4gICAgICAgICAgICAgICAgICBAcmVzcG9uc2l2ZT17e2ZhbHNlfX1cbiAgICAgICAgICAgICAgICA-XG4gICAgICAgICAgICAgICAgICB7eyNpZiBAaWNvblR5cGV9fVxuICAgICAgICAgICAgICAgICAgICA8RXVpRmxleEl0ZW0gQGdyb3c9e3tmYWxzZX19PlxuICAgICAgICAgICAgICAgICAgICAgIDxFdWlJY29uXG4gICAgICAgICAgICAgICAgICAgICAgICBAdHlwZT17e0BpY29uVHlwZX19XG4gICAgICAgICAgICAgICAgICAgICAgICBAc2l6ZT17e2FyZ09yRGVmYXVsdCBAaWNvblNpemUgXCJsXCJ9fVxuICAgICAgICAgICAgICAgICAgICAgIC8-XG4gICAgICAgICAgICAgICAgICAgIDwvRXVpRmxleEl0ZW0-XG4gICAgICAgICAgICAgICAgICB7ey9pZn19XG4gICAgICAgICAgICAgICAgICA8RXVpRmxleEl0ZW0-XG4gICAgICAgICAgICAgICAgICAgIDxFdWlUaXRsZVxuICAgICAgICAgICAgICAgICAgICAgIGlkPXt7Y29uY2F0IGdyb3VwSUQgXCJfX3RpdGxlXCJ9fVxuICAgICAgICAgICAgICAgICAgICAgIEB0YWdOYW1lPXt7YXJnT3JEZWZhdWx0IEB0aXRsZVRhZ05hbWUgXCJoM1wifX1cbiAgICAgICAgICAgICAgICAgICAgICBAc2l6ZT17e2FyZ09yRGVmYXVsdCBAdGl0bGVTaXplIFwieHhzXCJ9fVxuICAgICAgICAgICAgICAgICAgICA-XG4gICAgICAgICAgICAgICAgICAgICAge3sjaWYgKG5vdEVxIHRpdGxlRWxlbWVudCBcImgzXCIpfX1cbiAgICAgICAgICAgICAgICAgICAgICAgIHt7I2xldCAoZWxlbWVudCB0aXRsZUVsZW1lbnQpIGFzIHxUaXRsZUVsZW1lbnR8fX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPFRpdGxlRWxlbWVudFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkPXt7dGl0bGVJRH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJldWlDb2xsYXBzaWJsZU5hdkdyb3VwX190aXRsZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e3lpZWxkIHRvPVwidGl0bGVcIn19XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvVGl0bGVFbGVtZW50PlxuICAgICAgICAgICAgICAgICAgICAgICAge3svbGV0fX1cbiAgICAgICAgICAgICAgICAgICAgICB7e2Vsc2V9fVxuICAgICAgICAgICAgICAgICAgICAgICAgPGgzXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGlkPXt7dGl0bGVJRH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZXVpQ29sbGFwc2libGVOYXZHcm91cF9fdGl0bGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICB7e3lpZWxkIHRvPVwidGl0bGVcIn19XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2gzPlxuICAgICAgICAgICAgICAgICAgICAgIHt7L2lmfX1cbiAgICAgICAgICAgICAgICAgICAgPC9FdWlUaXRsZT5cbiAgICAgICAgICAgICAgICAgIDwvRXVpRmxleEl0ZW0-XG4gICAgICAgICAgICAgICAgPC9FdWlGbGV4R3JvdXA-XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAge3svaWZ9fVxuICAgICAgICAgICAge3sjaWYgKGhhcy1ibG9jayBcImNvbnRlbnRcIil9fVxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZXVpQ29sbGFwc2libGVOYXZHcm91cF9fY2hpbGRyZW5cIj5cbiAgICAgICAgICAgICAgICB7e3lpZWxkIHRvPVwiY29udGVudFwifX1cbiAgICAgICAgICAgICAgPC9kaXY-XG4gICAgICAgICAgICB7ey9pZn19XG4gICAgICAgICAgPC9kaXY-XG4gICAgICAgIHt7L2lmfX1cbiAgICAgIHt7L2xldH19XG4gICAge3svbGV0fX1cbiAgPC90ZW1wbGF0ZT47XG5cbmV4cG9ydCBkZWZhdWx0IEV1aUNvbGxhcHNpYmxlTmF2R3JvdXA7XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLFNBQVMsTUFBTSxRQUFRLGdCQUFnQjtBQUV2QyxTQUFTLE9BQU8sUUFBUSx1QkFBdUI7QUFDL0MsU0FBUyxHQUFHLEVBQUUsS0FBSyxRQUFRLHNCQUFzQjtBQUVqRCxPQUFPLGNBQWMsMkJBQTJCO0FBQ2hELE9BQU8sa0JBQWtCLCtCQUErQjtBQUN4RCxPQUFPLGdCQUFnQiw0QkFBNEI7QUFDbkQsT0FBTyxrQkFBa0Isc0JBQXNCO0FBQy9DLE9BQU8sa0JBQWtCLHVCQUF1QjtBQUNoRCxPQUFPLGlCQUFpQixzQkFBc0I7QUFDOUMsT0FBTyxhQUFhLGlCQUFpQjtBQUNyQyxPQUFPLGNBQWMsa0JBQWtCO0FBRXZDLGNBQWMscUJBQXFCLFFBQVEsa0JBQWtCO0FBQzdELGNBQWMsZ0JBQWdCLFFBQVEsYUFBYTtBQUNuRCxjQUFjLGlCQUFpQixRQUFRLGNBQWM7QUFDckQsY0FBYyxxQkFBcUIsUUFBUSxpQ0FBaUM7QUFFNUUsaUJBQWlCO0lBQ2YsU0FBUyxzQkFBc0I7SUFDL0I7UUFDRSxLQUFLLE1BQU07UUFDWCxlQUFlLE1BQU07UUFDckIsZ0JBQWdCLE9BQU87UUFDdkIsZ0JBQWdCLE9BQU87UUFDdkIsV0FBVyxpQkFBaUIsUUFBUTtRQUNwQyxXQUFXLGlCQUFpQixRQUFRO1FBQ3BDLGVBQWUsa0JBQWtCLFFBQVE7UUFDekMsWUFBWSxrQkFBa0IsUUFBUTtRQUN0QyxhQUFhLE1BQU07O0lBRXJCO1FBQ0U7UUFDQTtRQUNBOzs7QUFJSixNQUFNLHdCQUF3QixzQkFBc0IsbUNBQ2xELFNBQVUsQ0FBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQStIVixDQUFBLEVBQUE7SUFBQTtRQUFBLE9BQUEsS0FBQSxTQUFBLENBQUEsRUFBVztJQUFEO0FBQUE7QUFFWixlQUFlLHVCQUF1QiJ9"],"names":["EuiCollapsibleNavGroup","setComponentTemplate","precompileTemplate","strictMode","scope","argOrDefault","randomId","concat","and","EuiAccordion","classNames","EuiFlexGroup","EuiFlexItem","EuiIcon","EuiTitle","notEq","element","templateOnly"],"mappings":";;;;;;;;;;;;;;;AAuCA,MAAMA,sBAA8C,GAAAC,oBAAA,CAClDC,kBAAA,CA+HA,24HAAA,EAAA;EAAAC,UAAA,EAAA,IAAA;AAAAC,EAAAA,KAAA,EAAAA,OAAA;IAAAC,YAAA;IAAAC,QAAA;IAAAC,MAAA;IAAAC,GAAA;kBAAAC,8BAAA;IAAAC,UAAA;IAAAC,YAAA;IAAAC,WAAA;IAAAC,OAAA;IAAAC,QAAA;IAAAC,KAAA;AAAAC,IAAAA,OAAAA;AAAA,GAAA,CAAA;AAAU,CAAA,CAAA,EAAAC,YAAA,EAAA;;;;"}
1
+ {"version":3,"file":"eui-collapsible-nav-group.js","sources":["../../src/components/eui-collapsible-nav-group.gts"],"sourcesContent":["import { concat } from '@ember/helper';\n\nimport { element } from 'ember-element-helper';\nimport { and, notEq } from 'ember-truth-helpers';\n\nimport randomId from '../-private/random-id.ts';\nimport argOrDefault from '../helpers/arg-or-default.ts';\nimport classNames from '../helpers/class-names.ts';\nimport EuiAccordion from './eui-accordion.gts';\nimport EuiFlexGroup from './eui-flex-group.gts';\nimport EuiFlexItem from './eui-flex-item.gts';\nimport EuiIcon from './eui-icon.gts';\nimport EuiTitle from './eui-title.gts';\n\nimport type { EuiAccordionSignature } from './eui-accordion';\nimport type { EuiIconSignature } from './eui-icon';\nimport type { EuiTitleSignature } from './eui-title';\nimport type { TemplateOnlyComponent } from '@ember/component/template-only';\n\nexport interface EuiCollapsibleNavGroupSignature {\n Element: EuiAccordionSignature['Element'];\n Args: {\n id?: string;\n titleElement?: string;\n isCollapsible?: boolean;\n initialIsOpen?: boolean;\n iconType?: EuiIconSignature['Args']['type'];\n iconSize?: EuiIconSignature['Args']['size'];\n titleTagName?: EuiTitleSignature['Args']['tagName'];\n titleSize?: EuiTitleSignature['Args']['size'];\n background?: string;\n };\n Blocks: {\n default: [];\n title: [];\n content: [];\n };\n}\n\nconst EuiCollapsibleNavGroup: TemplateOnlyComponent<EuiCollapsibleNavGroupSignature> =\n <template>\n {{#let\n (argOrDefault @id (randomId)) (argOrDefault @titleElement \"h3\")\n as |groupID titleElement|\n }}\n {{#let (concat groupID \"__title\") as |titleID|}}\n {{#if (and @isCollapsible (has-block \"title\"))}}\n <EuiAccordion\n id={{groupID}}\n class={{classNames\n (if (has-block \"title\") \"euiCollapsibleNavGroup--withHeading\")\n componentName=\"EuiCollapsibleNavGroup\"\n backgroundColor=(argOrDefault @background \"none\")\n }}\n @buttonClassName=\"euiCollapsibleNavGroup__heading\"\n @initialIsOpen={{argOrDefault @initialIsOpen true}}\n @arrowDisplay=\"right\"\n ...attributes\n >\n <:buttonContent>\n <EuiFlexGroup\n @gutterSize=\"m\"\n @alignItems=\"center\"\n @responsive={{false}}\n >\n {{#if @iconType}}\n <EuiFlexItem @grow={{false}}>\n <EuiIcon\n @type={{@iconType}}\n @size={{argOrDefault @iconSize \"l\"}}\n />\n </EuiFlexItem>\n {{/if}}\n <EuiFlexItem>\n <EuiTitle\n id={{concat groupID \"__title\"}}\n @tagName={{argOrDefault @titleTagName \"h3\"}}\n @size={{argOrDefault @titleSize \"xxs\"}}\n >\n {{#if (notEq titleElement \"h3\")}}\n {{#let (element titleElement) as |TitleElement|}}\n <TitleElement\n id={{titleID}}\n class=\"euiCollapsibleNavGroup__title\"\n >\n {{yield to=\"title\"}}\n </TitleElement>\n {{/let}}\n {{else}}\n <h3 id={{titleID}} class=\"euiCollapsibleNavGroup__title\">\n {{yield to=\"title\"}}\n </h3>\n {{/if}}\n </EuiTitle>\n </EuiFlexItem>\n </EuiFlexGroup>\n </:buttonContent>\n <:content>\n {{#if (has-block \"content\")}}\n <div class=\"euiCollapsibleNavGroup__children\">\n {{yield to=\"content\"}}\n </div>\n {{/if}}\n </:content>\n </EuiAccordion>\n {{else}}\n <div\n id={{groupID}}\n class={{classNames\n (if (has-block \"title\") \"euiCollapsibleNavGroup--withHeading\")\n componentName=\"EuiCollapsibleNavGroup\"\n backgroundColor=(argOrDefault @background \"none\")\n }}\n ...attributes\n >\n {{#if (has-block \"title\")}}\n <div class=\"euiCollapsibleNavGroup__heading\">\n <EuiFlexGroup\n @gutterSize=\"m\"\n @alignItems=\"center\"\n @responsive={{false}}\n >\n {{#if @iconType}}\n <EuiFlexItem @grow={{false}}>\n <EuiIcon\n @type={{@iconType}}\n @size={{argOrDefault @iconSize \"l\"}}\n />\n </EuiFlexItem>\n {{/if}}\n <EuiFlexItem>\n <EuiTitle\n id={{concat groupID \"__title\"}}\n @tagName={{argOrDefault @titleTagName \"h3\"}}\n @size={{argOrDefault @titleSize \"xxs\"}}\n >\n {{#if (notEq titleElement \"h3\")}}\n {{#let (element titleElement) as |TitleElement|}}\n <TitleElement\n id={{titleID}}\n class=\"euiCollapsibleNavGroup__title\"\n >\n {{yield to=\"title\"}}\n </TitleElement>\n {{/let}}\n {{else}}\n <h3\n id={{titleID}}\n class=\"euiCollapsibleNavGroup__title\"\n >\n {{yield to=\"title\"}}\n </h3>\n {{/if}}\n </EuiTitle>\n </EuiFlexItem>\n </EuiFlexGroup>\n </div>\n {{/if}}\n {{#if (has-block \"content\")}}\n <div class=\"euiCollapsibleNavGroup__children\">\n {{yield to=\"content\"}}\n </div>\n {{/if}}\n </div>\n {{/if}}\n {{/let}}\n {{/let}}\n </template>;\n\nexport default EuiCollapsibleNavGroup;\n"],"names":["EuiCollapsibleNavGroup","setComponentTemplate","precompileTemplate","strictMode","scope","argOrDefault","randomId","concat","and","EuiAccordion","classNames","EuiFlexGroup","EuiFlexItem","EuiIcon","EuiTitle","notEq","element","templateOnly"],"mappings":";;;;;;;;;;;;;;;AAuCA,MAAMA,sBACJ,GAAAC,oBAAA,CAAAC,kBAAA,CA+HA,24HAAA,EAAA;EAAAC,UAAA,EAAA,IAAA;AAAAC,EAAAA,KAAA,EAAAA,OAAA;IAAAC,YAAA;IAAAC,QAAA;IAAAC,MAAA;IAAAC,GAAA;kBAAAC,8BAAA;IAAAC,UAAA;IAAAC,YAAA;IAAAC,WAAA;IAAAC,OAAA;IAAAC,QAAA;IAAAC,KAAA;AAAAC,IAAAA;AAAA,GAAA;AAAU,CAAA,CAAA,EAAAC,YAAA,EAAA;;;;"}