carbon-components-angular 5.56.5 → 5.57.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 (587) hide show
  1. package/README.md +23 -6
  2. package/accordion/accordion-item.component.d.ts +1 -1
  3. package/accordion/accordion.component.d.ts +1 -1
  4. package/accordion/accordion.module.d.ts +1 -1
  5. package/accordion/index.d.ts +1 -1
  6. package/breadcrumb/breadcrumb-item.component.d.ts +1 -1
  7. package/breadcrumb/breadcrumb-item.interface.d.ts +1 -1
  8. package/breadcrumb/breadcrumb.component.d.ts +1 -1
  9. package/breadcrumb/breadcrumb.module.d.ts +1 -1
  10. package/breadcrumb/index.d.ts +1 -1
  11. package/button/base-icon-button.component.d.ts +1 -1
  12. package/button/button-set.component.d.ts +1 -1
  13. package/button/button.directive.d.ts +1 -1
  14. package/button/button.module.d.ts +1 -1
  15. package/button/button.types.d.ts +1 -1
  16. package/button/icon-button.component.d.ts +1 -1
  17. package/button/index.d.ts +1 -1
  18. package/checkbox/checkbox.component.d.ts +1 -1
  19. package/checkbox/checkbox.module.d.ts +1 -1
  20. package/checkbox/checkbox.types.d.ts +1 -1
  21. package/checkbox/index.d.ts +1 -1
  22. package/code-snippet/code-snippet.component.d.ts +1 -1
  23. package/code-snippet/code-snippet.module.d.ts +1 -1
  24. package/code-snippet/index.d.ts +1 -1
  25. package/combo-button/combo-button.component.d.ts +99 -0
  26. package/combo-button/combo-button.module.d.ts +31 -0
  27. package/combo-button/index.d.ts +22 -0
  28. package/combobox/combobox.component.d.ts +1 -1
  29. package/combobox/combobox.module.d.ts +1 -1
  30. package/combobox/index.d.ts +1 -1
  31. package/common/index.d.ts +1 -1
  32. package/common/tab.service.d.ts +1 -1
  33. package/common/utils.d.ts +1 -1
  34. package/contained-list/contained-list-item.component.d.ts +1 -1
  35. package/contained-list/contained-list.component.d.ts +1 -1
  36. package/contained-list/contained-list.enums.d.ts +1 -1
  37. package/contained-list/contained-list.module.d.ts +1 -1
  38. package/contained-list/index.d.ts +1 -1
  39. package/content-switcher/content-switcher-option.directive.d.ts +1 -1
  40. package/content-switcher/content-switcher.component.d.ts +1 -1
  41. package/content-switcher/content-switcher.module.d.ts +1 -1
  42. package/content-switcher/index.d.ts +1 -1
  43. package/context-menu/context-menu-divider.component.d.ts +2 -2
  44. package/context-menu/context-menu-group.component.d.ts +2 -2
  45. package/context-menu/context-menu-item.component.d.ts +7 -2
  46. package/context-menu/context-menu-selection.service.d.ts +1 -1
  47. package/context-menu/context-menu.component.d.ts +12 -8
  48. package/context-menu/context-menu.module.d.ts +1 -1
  49. package/context-menu/context-menu.types.d.ts +27 -0
  50. package/context-menu/index.d.ts +2 -1
  51. package/datepicker/carbon-flatpickr-month-select.d.ts +1 -1
  52. package/datepicker/datepicker.component.d.ts +1 -1
  53. package/datepicker/datepicker.module.d.ts +1 -1
  54. package/datepicker/index.d.ts +1 -1
  55. package/datepicker-input/datepicker-input.component.d.ts +1 -1
  56. package/datepicker-input/datepicker-input.module.d.ts +1 -1
  57. package/datepicker-input/index.d.ts +1 -1
  58. package/dialog/dialog-config.interface.d.ts +1 -1
  59. package/dialog/dialog.component.d.ts +1 -1
  60. package/dialog/dialog.directive.d.ts +1 -1
  61. package/dialog/dialog.module.d.ts +1 -1
  62. package/dialog/dialog.service.d.ts +1 -1
  63. package/dialog/index.d.ts +1 -1
  64. package/dialog/overflow-menu/overflow-menu-custom-pane.component.d.ts +1 -1
  65. package/dialog/overflow-menu/overflow-menu-option.component.d.ts +1 -1
  66. package/dialog/overflow-menu/overflow-menu-pane.component.d.ts +1 -1
  67. package/dialog/overflow-menu/overflow-menu.component.d.ts +1 -1
  68. package/dialog/overflow-menu/overflow-menu.directive.d.ts +1 -1
  69. package/docs/documentation/components/Accordion.html +1 -1
  70. package/docs/documentation/components/AccordionItem.html +1 -1
  71. package/docs/documentation/components/ActionableNotification.html +1 -1
  72. package/docs/documentation/components/AlertModal.html +1 -1
  73. package/docs/documentation/components/BaseIconButton.html +1 -1
  74. package/docs/documentation/components/BaseNotification.html +1 -1
  75. package/docs/documentation/components/BaseTabHeader.html +1 -1
  76. package/docs/documentation/components/Breadcrumb.html +1 -1
  77. package/docs/documentation/components/BreadcrumbItemComponent.html +1 -1
  78. package/docs/documentation/components/ButtonSet.html +1 -1
  79. package/docs/documentation/components/Checkbox.html +1 -1
  80. package/docs/documentation/components/ClickableTile.html +1 -1
  81. package/docs/documentation/components/CodeSnippet.html +56 -54
  82. package/docs/documentation/components/ComboBox.html +1 -1
  83. package/docs/documentation/components/ComboButtonComponent.html +2264 -0
  84. package/docs/documentation/components/ContainedList.html +1 -1
  85. package/docs/documentation/components/ContainedListItem.html +1 -1
  86. package/docs/documentation/components/ContentSwitcher.html +1 -1
  87. package/docs/documentation/components/ContextMenuComponent.html +147 -164
  88. package/docs/documentation/components/ContextMenuDividerComponent.html +3 -3
  89. package/docs/documentation/components/ContextMenuGroupComponent.html +4 -4
  90. package/docs/documentation/components/ContextMenuItemComponent.html +218 -66
  91. package/docs/documentation/components/DatePicker.html +1 -1
  92. package/docs/documentation/components/DatePickerInput.html +1 -1
  93. package/docs/documentation/components/Dialog.html +1 -1
  94. package/docs/documentation/components/Documentation.html +1 -1
  95. package/docs/documentation/components/Dropdown.html +1 -1
  96. package/docs/documentation/components/DropdownList.html +1 -1
  97. package/docs/documentation/components/ExpandableTile.html +1 -1
  98. package/docs/documentation/components/FileComponent.html +1 -1
  99. package/docs/documentation/components/FileUploader.html +1 -1
  100. package/docs/documentation/components/Hamburger.html +1 -1
  101. package/docs/documentation/components/Header.html +1 -1
  102. package/docs/documentation/components/HeaderAction.html +1 -1
  103. package/docs/documentation/components/HeaderGlobal.html +1 -1
  104. package/docs/documentation/components/HeaderItem.html +1 -1
  105. package/docs/documentation/components/HeaderMenu.html +1 -1
  106. package/docs/documentation/components/HeaderNavigation.html +1 -1
  107. package/docs/documentation/components/IconButton.html +1 -1
  108. package/docs/documentation/components/InlineLoading.html +1 -1
  109. package/docs/documentation/components/Label.html +1 -1
  110. package/docs/documentation/components/ListColumn.html +1 -1
  111. package/docs/documentation/components/ListHeader.html +1 -1
  112. package/docs/documentation/components/ListRow.html +1 -1
  113. package/docs/documentation/components/Loading.html +1 -1
  114. package/docs/documentation/components/MenuButtonComponent.html +1931 -0
  115. package/docs/documentation/components/Modal.html +1 -1
  116. package/docs/documentation/components/ModalFooter.html +1 -1
  117. package/docs/documentation/components/ModalHeader.html +1 -1
  118. package/docs/documentation/components/Notification.html +1 -1
  119. package/docs/documentation/components/NumberComponent.html +1 -1
  120. package/docs/documentation/components/OverflowMenu.html +1 -1
  121. package/docs/documentation/components/OverflowMenuCustomPane.html +1 -1
  122. package/docs/documentation/components/OverflowMenuOption.html +1 -1
  123. package/docs/documentation/components/OverflowMenuPane.html +1 -1
  124. package/docs/documentation/components/Overlay.html +1 -1
  125. package/docs/documentation/components/Pagination.html +1 -1
  126. package/docs/documentation/components/PaginationNav.html +1 -1
  127. package/docs/documentation/components/PaginationNavItem.html +1 -1
  128. package/docs/documentation/components/PaginationOverflow.html +1 -1
  129. package/docs/documentation/components/Panel.html +1 -1
  130. package/docs/documentation/components/PasswordInputLabelComponent.html +1 -1
  131. package/docs/documentation/components/Placeholder.html +1 -1
  132. package/docs/documentation/components/PopoverContent.html +1 -1
  133. package/docs/documentation/components/ProgressBar.html +1 -1
  134. package/docs/documentation/components/ProgressIndicator.html +1 -1
  135. package/docs/documentation/components/Radio.html +1 -1
  136. package/docs/documentation/components/RadioGroup.html +1 -1
  137. package/docs/documentation/components/Search.html +1 -1
  138. package/docs/documentation/components/Select.html +1 -1
  139. package/docs/documentation/components/SelectionTile.html +1 -1
  140. package/docs/documentation/components/SideNav.html +1 -1
  141. package/docs/documentation/components/SideNavItem.html +1 -1
  142. package/docs/documentation/components/SideNavMenu.html +1 -1
  143. package/docs/documentation/components/SkeletonPlaceholder.html +1 -1
  144. package/docs/documentation/components/SkeletonText.html +1 -1
  145. package/docs/documentation/components/Slider.html +1 -1
  146. package/docs/documentation/components/StructuredList.html +1 -1
  147. package/docs/documentation/components/SwitcherList.html +1 -1
  148. package/docs/documentation/components/SwitcherListItem.html +1 -1
  149. package/docs/documentation/components/Tab.html +1 -1
  150. package/docs/documentation/components/TabHeaderGroup.html +1 -1
  151. package/docs/documentation/components/TabHeaders.html +1 -1
  152. package/docs/documentation/components/TabSkeleton.html +1 -1
  153. package/docs/documentation/components/Table.html +1 -1
  154. package/docs/documentation/components/TableBody.html +1 -1
  155. package/docs/documentation/components/TableCheckbox.html +1 -1
  156. package/docs/documentation/components/TableContainer.html +1 -1
  157. package/docs/documentation/components/TableData.html +1 -1
  158. package/docs/documentation/components/TableExpandButton.html +1 -1
  159. package/docs/documentation/components/TableExpandedRow.html +1 -1
  160. package/docs/documentation/components/TableHead.html +1 -1
  161. package/docs/documentation/components/TableHeadCell.html +1 -1
  162. package/docs/documentation/components/TableHeadCheckbox.html +1 -1
  163. package/docs/documentation/components/TableHeadExpand.html +1 -1
  164. package/docs/documentation/components/TableHeader.html +1 -1
  165. package/docs/documentation/components/TableRadio.html +1 -1
  166. package/docs/documentation/components/TableRowComponent.html +1 -1
  167. package/docs/documentation/components/TableToolbar.html +1 -1
  168. package/docs/documentation/components/TableToolbarActions.html +1 -1
  169. package/docs/documentation/components/TableToolbarContent.html +1 -1
  170. package/docs/documentation/components/TableToolbarSearch.html +1 -1
  171. package/docs/documentation/components/Tabs.html +1 -1
  172. package/docs/documentation/components/Tag.html +1 -1
  173. package/docs/documentation/components/TagFilter.html +1 -1
  174. package/docs/documentation/components/TagOperationalComponent.html +1 -1
  175. package/docs/documentation/components/TagSelectableComponent.html +1 -1
  176. package/docs/documentation/components/TextInputLabelComponent.html +1 -1
  177. package/docs/documentation/components/TextareaLabelComponent.html +1 -1
  178. package/docs/documentation/components/Tile.html +1 -1
  179. package/docs/documentation/components/TileGroup.html +1 -1
  180. package/docs/documentation/components/TimePicker.html +1 -1
  181. package/docs/documentation/components/TimePickerSelect.html +1 -1
  182. package/docs/documentation/components/Toast.html +1 -1
  183. package/docs/documentation/components/Toggle.html +1 -1
  184. package/docs/documentation/components/Toggletip.html +1 -1
  185. package/docs/documentation/components/Tooltip.html +1 -1
  186. package/docs/documentation/components/TooltipDefinition.html +1 -1
  187. package/docs/documentation/components/TreeNodeComponent.html +1 -1
  188. package/docs/documentation/components/TreeViewComponent.html +1 -1
  189. package/docs/documentation/coverage.html +40 -4
  190. package/docs/documentation/dependencies.html +1 -1
  191. package/docs/documentation/graph/dependencies.svg +3058 -2934
  192. package/docs/documentation/index.html +17 -6
  193. package/docs/documentation/interfaces/ItemClickEvent.html +437 -0
  194. package/docs/documentation/js/menu-wc.js +37 -0
  195. package/docs/documentation/js/menu-wc_es5.js +1 -1
  196. package/docs/documentation/js/search/search_index.js +2 -2
  197. package/docs/documentation/miscellaneous/typealiases.html +42 -0
  198. package/docs/documentation/modules/CodeSnippetModule/dependencies.svg +4 -4
  199. package/docs/documentation/modules/CodeSnippetModule.html +4 -4
  200. package/docs/documentation/modules/ComboBoxModule/dependencies.svg +4 -4
  201. package/docs/documentation/modules/ComboBoxModule.html +4 -4
  202. package/docs/documentation/modules/ComboButtonModule/dependencies.svg +106 -0
  203. package/docs/documentation/modules/ComboButtonModule.html +397 -0
  204. package/docs/documentation/modules/DatePickerInputModule/dependencies.svg +34 -38
  205. package/docs/documentation/modules/DatePickerInputModule.html +34 -38
  206. package/docs/documentation/modules/DialogModule/dependencies.svg +34 -34
  207. package/docs/documentation/modules/DialogModule.html +34 -34
  208. package/docs/documentation/modules/FileUploaderModule/dependencies.svg +4 -4
  209. package/docs/documentation/modules/FileUploaderModule.html +4 -4
  210. package/docs/documentation/modules/GridModule/dependencies.svg +60 -60
  211. package/docs/documentation/modules/GridModule.html +60 -60
  212. package/docs/documentation/modules/LoadingModule/dependencies.svg +4 -4
  213. package/docs/documentation/modules/LoadingModule.html +4 -4
  214. package/docs/documentation/modules/MenuButtonModule/dependencies.svg +106 -0
  215. package/docs/documentation/modules/MenuButtonModule.html +398 -0
  216. package/docs/documentation/modules/NFormsModule/dependencies.svg +4 -4
  217. package/docs/documentation/modules/NFormsModule.html +4 -4
  218. package/docs/documentation/modules/NumberModule/dependencies.svg +4 -4
  219. package/docs/documentation/modules/NumberModule.html +4 -4
  220. package/docs/documentation/modules/ProgressIndicatorModule/dependencies.svg +4 -4
  221. package/docs/documentation/modules/ProgressIndicatorModule.html +4 -4
  222. package/docs/documentation/modules/RadioModule/dependencies.svg +47 -47
  223. package/docs/documentation/modules/RadioModule.html +47 -47
  224. package/docs/documentation/modules/SearchModule/dependencies.svg +4 -4
  225. package/docs/documentation/modules/SearchModule.html +4 -4
  226. package/docs/documentation/modules/StructuredListModule/dependencies.svg +66 -66
  227. package/docs/documentation/modules/StructuredListModule.html +66 -66
  228. package/docs/documentation/modules/TabsModule/dependencies.svg +69 -69
  229. package/docs/documentation/modules/TabsModule.html +69 -69
  230. package/docs/documentation/modules/TagModule/dependencies.svg +4 -4
  231. package/docs/documentation/modules/TagModule.html +4 -4
  232. package/docs/documentation/modules/ThemeModule/dependencies.svg +13 -13
  233. package/docs/documentation/modules/ThemeModule.html +13 -13
  234. package/docs/documentation/modules/TilesModule/dependencies.svg +93 -93
  235. package/docs/documentation/modules/TilesModule.html +93 -93
  236. package/docs/documentation/modules/TimePickerModule/dependencies.svg +40 -36
  237. package/docs/documentation/modules/TimePickerModule.html +40 -36
  238. package/docs/documentation/modules/TimePickerSelectModule/dependencies.svg +38 -42
  239. package/docs/documentation/modules/TimePickerSelectModule.html +38 -42
  240. package/docs/documentation/modules/ToggleModule/dependencies.svg +20 -20
  241. package/docs/documentation/modules/ToggleModule.html +20 -20
  242. package/docs/documentation/modules/ToggletipModule/dependencies.svg +37 -37
  243. package/docs/documentation/modules/ToggletipModule.html +37 -37
  244. package/docs/documentation/modules/TooltipModule/dependencies.svg +4 -4
  245. package/docs/documentation/modules/TooltipModule.html +4 -4
  246. package/docs/documentation/modules/TreeviewModule/dependencies.svg +4 -4
  247. package/docs/documentation/modules/TreeviewModule.html +4 -4
  248. package/docs/documentation/modules.html +34 -0
  249. package/docs/documentation/overview.html +3061 -2937
  250. package/docs/documentation.json +2306 -867
  251. package/docs/storybook/1125.37c137fa.iframe.bundle.js +1 -0
  252. package/docs/storybook/4292.3a543fed.iframe.bundle.js +1 -0
  253. package/docs/storybook/6702.f2acb76e.iframe.bundle.js +1 -0
  254. package/docs/storybook/{code-snippet-code-snippet-stories.07e87dc8.iframe.bundle.js → code-snippet-code-snippet-stories.0351d43b.iframe.bundle.js} +1 -1
  255. package/docs/storybook/combo-button-combo-button-stories.17bfb9ad.iframe.bundle.js +1 -0
  256. package/docs/storybook/context-menu-context-menu-stories.eb5edb41.iframe.bundle.js +1 -0
  257. package/docs/storybook/iframe.html +2 -2
  258. package/docs/storybook/index.json +1 -1
  259. package/docs/storybook/main.625b3296.iframe.bundle.js +1 -0
  260. package/docs/storybook/menu-button-menu-button-stories.869bfd47.iframe.bundle.js +1 -0
  261. package/docs/storybook/popover-popover-stories.ea5149e0.iframe.bundle.js +1 -0
  262. package/docs/storybook/project.json +1 -1
  263. package/docs/storybook/runtime~main.61967556.iframe.bundle.js +1 -0
  264. package/docs/storybook/stories.json +1 -1
  265. package/docs/storybook/tag-tag-stories.7b925787.iframe.bundle.js +1 -0
  266. package/dropdown/abstract-dropdown-view.class.d.ts +1 -1
  267. package/dropdown/dropdown.component.d.ts +1 -1
  268. package/dropdown/dropdown.module.d.ts +1 -1
  269. package/dropdown/dropdown.service.d.ts +1 -1
  270. package/dropdown/dropdowntools.d.ts +1 -1
  271. package/dropdown/index.d.ts +1 -1
  272. package/dropdown/list/dropdown-list.component.d.ts +1 -1
  273. package/dropdown/list/scroll-custom-event.interface.d.ts +1 -1
  274. package/dropdown/list-item.interface.d.ts +1 -1
  275. package/dropdown/scrollable-list.directive.d.ts +1 -1
  276. package/esm2020/code-snippet/code-snippet.component.mjs +3 -1
  277. package/esm2020/combo-button/carbon-components-angular-combo-button.mjs +5 -0
  278. package/esm2020/combo-button/combo-button.component.mjs +302 -0
  279. package/esm2020/combo-button/combo-button.module.mjs +32 -0
  280. package/esm2020/combo-button/index.mjs +3 -0
  281. package/esm2020/context-menu/context-menu-divider.component.mjs +3 -3
  282. package/esm2020/context-menu/context-menu-group.component.mjs +3 -3
  283. package/esm2020/context-menu/context-menu-item.component.mjs +33 -3
  284. package/esm2020/context-menu/context-menu.component.mjs +27 -20
  285. package/esm2020/context-menu/context-menu.types.mjs +2 -0
  286. package/esm2020/context-menu/index.mjs +2 -1
  287. package/esm2020/index.mjs +2 -1
  288. package/esm2020/menu-button/carbon-components-angular-menu-button.mjs +5 -0
  289. package/esm2020/menu-button/index.mjs +3 -0
  290. package/esm2020/menu-button/menu-button.component.mjs +265 -0
  291. package/esm2020/menu-button/menu-button.module.mjs +33 -0
  292. package/experimental/experimental.module.d.ts +1 -1
  293. package/experimental/experimental.service.d.ts +1 -1
  294. package/experimental/index.d.ts +1 -1
  295. package/fesm2015/carbon-components-angular-code-snippet.mjs +2 -0
  296. package/fesm2015/carbon-components-angular-code-snippet.mjs.map +1 -1
  297. package/fesm2015/carbon-components-angular-combo-button.mjs +338 -0
  298. package/fesm2015/carbon-components-angular-combo-button.mjs.map +1 -0
  299. package/fesm2015/carbon-components-angular-context-menu.mjs +62 -25
  300. package/fesm2015/carbon-components-angular-context-menu.mjs.map +1 -1
  301. package/fesm2015/carbon-components-angular-menu-button.mjs +302 -0
  302. package/fesm2015/carbon-components-angular-menu-button.mjs.map +1 -0
  303. package/fesm2015/carbon-components-angular.mjs +1 -0
  304. package/fesm2015/carbon-components-angular.mjs.map +1 -1
  305. package/fesm2020/carbon-components-angular-code-snippet.mjs +2 -0
  306. package/fesm2020/carbon-components-angular-code-snippet.mjs.map +1 -1
  307. package/fesm2020/carbon-components-angular-combo-button.mjs +337 -0
  308. package/fesm2020/carbon-components-angular-combo-button.mjs.map +1 -0
  309. package/fesm2020/carbon-components-angular-context-menu.mjs +62 -25
  310. package/fesm2020/carbon-components-angular-context-menu.mjs.map +1 -1
  311. package/fesm2020/carbon-components-angular-menu-button.mjs +301 -0
  312. package/fesm2020/carbon-components-angular-menu-button.mjs.map +1 -0
  313. package/fesm2020/carbon-components-angular.mjs +1 -0
  314. package/fesm2020/carbon-components-angular.mjs.map +1 -1
  315. package/file-uploader/file-item.interface.d.ts +1 -1
  316. package/file-uploader/file-uploader.component.d.ts +1 -1
  317. package/file-uploader/file-uploader.module.d.ts +1 -1
  318. package/file-uploader/file.component.d.ts +1 -1
  319. package/file-uploader/index.d.ts +1 -1
  320. package/forms/forms.module.d.ts +1 -1
  321. package/forms/index.d.ts +1 -1
  322. package/grid/column.directive.d.ts +1 -1
  323. package/grid/grid.directive.d.ts +1 -1
  324. package/grid/grid.module.d.ts +1 -1
  325. package/grid/grid.service.d.ts +1 -1
  326. package/grid/index.d.ts +1 -1
  327. package/grid/row.directive.d.ts +1 -1
  328. package/i18n/en.d.ts +1 -1
  329. package/i18n/i18n.module.d.ts +1 -1
  330. package/i18n/i18n.service.d.ts +1 -1
  331. package/i18n/index.d.ts +1 -1
  332. package/i18n/replace.pipe.d.ts +1 -1
  333. package/icon/icon.directive.d.ts +1 -1
  334. package/icon/icon.module.d.ts +1 -1
  335. package/icon/icon.service.d.ts +1 -1
  336. package/icon/index.d.ts +1 -1
  337. package/icon/public_api.d.ts +1 -1
  338. package/index.d.ts +2 -1
  339. package/inline-loading/index.d.ts +1 -1
  340. package/inline-loading/inline-loading.component.d.ts +1 -1
  341. package/inline-loading/inline-loading.module.d.ts +1 -1
  342. package/input/index.d.ts +1 -1
  343. package/input/input.directive.d.ts +1 -1
  344. package/input/input.module.d.ts +1 -1
  345. package/input/label.component.d.ts +1 -1
  346. package/input/password-input-label.component.d.ts +1 -1
  347. package/input/password.directive.d.ts +1 -1
  348. package/input/text-area.directive.d.ts +1 -1
  349. package/input/text-input-label.component.d.ts +1 -1
  350. package/input/textarea-label.component.d.ts +1 -1
  351. package/layer/index.d.ts +1 -1
  352. package/layer/layer.directive.d.ts +1 -1
  353. package/layer/layer.module.d.ts +1 -1
  354. package/layout/index.d.ts +1 -1
  355. package/layout/layout.module.d.ts +1 -1
  356. package/layout/stack.directive.d.ts +1 -1
  357. package/link/index.d.ts +1 -1
  358. package/link/link-icon.directive.d.ts +1 -1
  359. package/link/link.directive.d.ts +1 -1
  360. package/link/link.module.d.ts +1 -1
  361. package/list/index.d.ts +1 -1
  362. package/list/list-item.directive.d.ts +1 -1
  363. package/list/list.directive.d.ts +1 -1
  364. package/list/list.module.d.ts +1 -1
  365. package/loading/index.d.ts +1 -1
  366. package/loading/loading.component.d.ts +1 -1
  367. package/loading/loading.module.d.ts +1 -1
  368. package/menu-button/index.d.ts +22 -0
  369. package/menu-button/menu-button.component.d.ts +88 -0
  370. package/menu-button/menu-button.module.d.ts +31 -0
  371. package/modal/alert-modal.component.d.ts +1 -1
  372. package/modal/alert-modal.interface.d.ts +1 -1
  373. package/modal/base-modal.class.d.ts +1 -1
  374. package/modal/base-modal.service.d.ts +1 -1
  375. package/modal/index.d.ts +1 -1
  376. package/modal/modal-content-text.directive.d.ts +1 -1
  377. package/modal/modal-content.directive.d.ts +1 -1
  378. package/modal/modal-footer.component.d.ts +1 -1
  379. package/modal/modal-header-heading.directive.d.ts +1 -1
  380. package/modal/modal-header-label.directive.d.ts +1 -1
  381. package/modal/modal-header.component.d.ts +1 -1
  382. package/modal/modal.component.d.ts +1 -1
  383. package/modal/modal.module.d.ts +1 -1
  384. package/modal/modal.service.d.ts +1 -1
  385. package/modal/overlay.component.d.ts +1 -1
  386. package/notification/actionable-button.directive.d.ts +1 -1
  387. package/notification/actionable-notification.component.d.ts +1 -1
  388. package/notification/actionable-subtitle.directive.d.ts +1 -1
  389. package/notification/actionable-title.directive.d.ts +1 -1
  390. package/notification/base-notification.component.d.ts +1 -1
  391. package/notification/index.d.ts +1 -1
  392. package/notification/notification-content.interface.d.ts +1 -1
  393. package/notification/notification-display.service.d.ts +1 -1
  394. package/notification/notification-subtitle.directive.d.ts +1 -1
  395. package/notification/notification-title.directive.d.ts +1 -1
  396. package/notification/notification.component.d.ts +1 -1
  397. package/notification/notification.module.d.ts +1 -1
  398. package/notification/notification.service.d.ts +1 -1
  399. package/notification/toast-caption.directive.d.ts +1 -1
  400. package/notification/toast-subtitle.directive.d.ts +1 -1
  401. package/notification/toast-title.directive.d.ts +1 -1
  402. package/notification/toast.component.d.ts +1 -1
  403. package/number-input/index.d.ts +1 -1
  404. package/number-input/number.component.d.ts +1 -1
  405. package/number-input/number.module.d.ts +1 -1
  406. package/package.json +18 -2
  407. package/pagination/index.d.ts +1 -1
  408. package/pagination/pagination-model.class.d.ts +1 -1
  409. package/pagination/pagination-nav/pagination-item.component.d.ts +1 -1
  410. package/pagination/pagination-nav/pagination-nav.component.d.ts +1 -1
  411. package/pagination/pagination-nav/pagination-overflow.component.d.ts +1 -1
  412. package/pagination/pagination.component.d.ts +1 -1
  413. package/pagination/pagination.module.d.ts +1 -1
  414. package/placeholder/index.d.ts +1 -1
  415. package/placeholder/placeholder.component.d.ts +1 -1
  416. package/placeholder/placeholder.module.d.ts +1 -1
  417. package/placeholder/placeholder.service.d.ts +1 -1
  418. package/popover/index.d.ts +1 -1
  419. package/popover/popover-content.component.d.ts +1 -1
  420. package/popover/popover.directive.d.ts +1 -1
  421. package/popover/popover.module.d.ts +1 -1
  422. package/progress-bar/index.d.ts +1 -1
  423. package/progress-bar/progress-bar.component.d.ts +1 -1
  424. package/progress-bar/progress-bar.module.d.ts +1 -1
  425. package/progress-indicator/index.d.ts +1 -1
  426. package/progress-indicator/progress-indicator-step.interface.d.ts +1 -1
  427. package/progress-indicator/progress-indicator.component.d.ts +1 -1
  428. package/progress-indicator/progress-indicator.module.d.ts +1 -1
  429. package/radio/index.d.ts +1 -1
  430. package/radio/radio-change.class.d.ts +1 -1
  431. package/radio/radio-group.component.d.ts +1 -1
  432. package/radio/radio.component.d.ts +1 -1
  433. package/radio/radio.module.d.ts +1 -1
  434. package/search/index.d.ts +1 -1
  435. package/search/search.component.d.ts +1 -1
  436. package/search/search.module.d.ts +1 -1
  437. package/select/index.d.ts +1 -1
  438. package/select/optgroup.directive.d.ts +1 -1
  439. package/select/option.directive.d.ts +1 -1
  440. package/select/select.component.d.ts +1 -1
  441. package/select/select.module.d.ts +1 -1
  442. package/skeleton/index.d.ts +1 -1
  443. package/skeleton/skeleton-placeholder.component.d.ts +1 -1
  444. package/skeleton/skeleton-text.component.d.ts +1 -1
  445. package/skeleton/skeleton.module.d.ts +1 -1
  446. package/slider/index.d.ts +1 -1
  447. package/slider/slider.component.d.ts +1 -1
  448. package/slider/slider.module.d.ts +1 -1
  449. package/structured-list/index.d.ts +1 -1
  450. package/structured-list/list-column.component.d.ts +1 -1
  451. package/structured-list/list-header.component.d.ts +1 -1
  452. package/structured-list/list-row.component.d.ts +1 -1
  453. package/structured-list/structured-list.component.d.ts +1 -1
  454. package/structured-list/structured-list.module.d.ts +1 -1
  455. package/table/body/table-body.component.d.ts +1 -1
  456. package/table/body/table-expanded-row.component.d.ts +1 -1
  457. package/table/body/table-row.component.d.ts +1 -1
  458. package/table/cell/table-checkbox.component.d.ts +1 -1
  459. package/table/cell/table-data.component.d.ts +1 -1
  460. package/table/cell/table-expand-button.component.d.ts +1 -1
  461. package/table/cell/table-radio.component.d.ts +1 -1
  462. package/table/data-grid-interaction-model.class.d.ts +1 -1
  463. package/table/expanded-row-hover.directive.d.ts +1 -1
  464. package/table/head/table-head-cell-label.directive.d.ts +1 -1
  465. package/table/head/table-head-cell.component.d.ts +1 -1
  466. package/table/head/table-head-checkbox.component.d.ts +1 -1
  467. package/table/head/table-head-expand.component.d.ts +1 -1
  468. package/table/head/table-head.component.d.ts +1 -1
  469. package/table/header/table-header-description.directive.d.ts +1 -1
  470. package/table/header/table-header-title.directive.d.ts +1 -1
  471. package/table/header/table-header.component.d.ts +1 -1
  472. package/table/index.d.ts +1 -1
  473. package/table/table-adapter.class.d.ts +1 -1
  474. package/table/table-container.component.d.ts +1 -1
  475. package/table/table-header-item.class.d.ts +1 -1
  476. package/table/table-item.class.d.ts +1 -1
  477. package/table/table-model.class.d.ts +1 -1
  478. package/table/table-row.class.d.ts +1 -1
  479. package/table/table.component.d.ts +1 -1
  480. package/table/table.directive.d.ts +1 -1
  481. package/table/table.module.d.ts +1 -1
  482. package/table/table.types.d.ts +1 -1
  483. package/table/toolbar/table-toolbar-actions.component.d.ts +1 -1
  484. package/table/toolbar/table-toolbar-content.component.d.ts +1 -1
  485. package/table/toolbar/table-toolbar-search.component.d.ts +1 -1
  486. package/table/toolbar/table-toolbar.component.d.ts +1 -1
  487. package/tabs/base-tab-header.component.d.ts +1 -1
  488. package/tabs/index.d.ts +1 -1
  489. package/tabs/tab-header-group.component.d.ts +1 -1
  490. package/tabs/tab-header.directive.d.ts +1 -1
  491. package/tabs/tab-headers.component.d.ts +1 -1
  492. package/tabs/tab-skeleton.component.d.ts +1 -1
  493. package/tabs/tab.component.d.ts +1 -1
  494. package/tabs/tabs.component.d.ts +1 -1
  495. package/tabs/tabs.module.d.ts +1 -1
  496. package/tag/index.d.ts +1 -1
  497. package/tag/tag-filter.component.d.ts +1 -1
  498. package/tag/tag-icon.directive.d.ts +1 -1
  499. package/tag/tag-operational.component.d.ts +1 -1
  500. package/tag/tag-selectable.component.d.ts +1 -1
  501. package/tag/tag.component.d.ts +1 -1
  502. package/tag/tag.module.d.ts +1 -1
  503. package/theme/index.d.ts +1 -1
  504. package/theme/theme.directive.d.ts +1 -1
  505. package/theme/theme.module.d.ts +1 -1
  506. package/tiles/clickable-tile-icon.directive.d.ts +1 -1
  507. package/tiles/clickable-tile.component.d.ts +1 -1
  508. package/tiles/expandable-tile-above.directive.d.ts +1 -1
  509. package/tiles/expandable-tile-below.directive.d.ts +1 -1
  510. package/tiles/expandable-tile.component.d.ts +1 -1
  511. package/tiles/index.d.ts +1 -1
  512. package/tiles/selection-tile.component.d.ts +1 -1
  513. package/tiles/tile-group.component.d.ts +1 -1
  514. package/tiles/tile-selection.interface.d.ts +1 -1
  515. package/tiles/tile.component.d.ts +1 -1
  516. package/tiles/tiles.module.d.ts +1 -1
  517. package/timepicker/index.d.ts +1 -1
  518. package/timepicker/timepicker.component.d.ts +1 -1
  519. package/timepicker/timepicker.module.d.ts +1 -1
  520. package/timepicker-select/index.d.ts +1 -1
  521. package/timepicker-select/timepicker-select.component.d.ts +1 -1
  522. package/timepicker-select/timepicker-select.module.d.ts +1 -1
  523. package/toggle/index.d.ts +1 -1
  524. package/toggle/toggle.component.d.ts +1 -1
  525. package/toggle/toggle.module.d.ts +1 -1
  526. package/toggletip/index.d.ts +1 -1
  527. package/toggletip/toggletip-action.directive.d.ts +1 -1
  528. package/toggletip/toggletip-button.directive.d.ts +1 -1
  529. package/toggletip/toggletip-content.directive.d.ts +1 -1
  530. package/toggletip/toggletip-label.directive.d.ts +1 -1
  531. package/toggletip/toggletip.component.d.ts +1 -1
  532. package/toggletip/toggletip.module.d.ts +1 -1
  533. package/tooltip/definition-tooptip.component.d.ts +1 -1
  534. package/tooltip/index.d.ts +1 -1
  535. package/tooltip/tooltip.component.d.ts +1 -1
  536. package/tooltip/tooltip.interface.d.ts +1 -1
  537. package/tooltip/tooltip.module.d.ts +1 -1
  538. package/treeview/index.d.ts +1 -1
  539. package/treeview/tree-node.component.d.ts +1 -1
  540. package/treeview/tree-node.types.d.ts +1 -1
  541. package/treeview/treeview.component.d.ts +1 -1
  542. package/treeview/treeview.module.d.ts +1 -1
  543. package/treeview/treeview.service.d.ts +1 -1
  544. package/ui-shell/header/hamburger.component.d.ts +1 -1
  545. package/ui-shell/header/header-action.component.d.ts +1 -1
  546. package/ui-shell/header/header-global.component.d.ts +1 -1
  547. package/ui-shell/header/header-item.component.d.ts +1 -1
  548. package/ui-shell/header/header-menu.component.d.ts +1 -1
  549. package/ui-shell/header/header-navigation-items.interface.d.ts +1 -1
  550. package/ui-shell/header/header-navigation.component.d.ts +1 -1
  551. package/ui-shell/header/header.component.d.ts +1 -1
  552. package/ui-shell/header/header.module.d.ts +1 -1
  553. package/ui-shell/index.d.ts +1 -1
  554. package/ui-shell/panel/panel.component.d.ts +1 -1
  555. package/ui-shell/panel/panel.module.d.ts +1 -1
  556. package/ui-shell/panel/switcher-list-item.component.d.ts +1 -1
  557. package/ui-shell/panel/switcher-list.component.d.ts +1 -1
  558. package/ui-shell/sidenav/routerlink-extended.directive.d.ts +1 -1
  559. package/ui-shell/sidenav/sidenav-item.component.d.ts +1 -1
  560. package/ui-shell/sidenav/sidenav-item.interface.d.ts +1 -1
  561. package/ui-shell/sidenav/sidenav-menu.component.d.ts +1 -1
  562. package/ui-shell/sidenav/sidenav.component.d.ts +1 -1
  563. package/ui-shell/sidenav/sidenav.module.d.ts +1 -1
  564. package/ui-shell/ui-shell.module.d.ts +1 -1
  565. package/utils/a11y.d.ts +1 -1
  566. package/utils/animation-frame.service.d.ts +1 -1
  567. package/utils/document.service.d.ts +1 -1
  568. package/utils/element.service.d.ts +1 -1
  569. package/utils/element.types.d.ts +1 -1
  570. package/utils/event-observable.d.ts +1 -1
  571. package/utils/event.service.d.ts +1 -1
  572. package/utils/index.d.ts +1 -1
  573. package/utils/object.d.ts +1 -1
  574. package/utils/position.d.ts +1 -1
  575. package/utils/public_api.d.ts +1 -1
  576. package/utils/scroll.d.ts +1 -1
  577. package/utils/types.d.ts +1 -1
  578. package/utils/utils.d.ts +1 -1
  579. package/utils/utils.module.d.ts +1 -1
  580. package/utils/window-tools.d.ts +1 -1
  581. package/docs/storybook/1562.1e6a79b6.iframe.bundle.js +0 -1
  582. package/docs/storybook/6702.8b6fb391.iframe.bundle.js +0 -1
  583. package/docs/storybook/context-menu-context-menu-stories.7c62ce72.iframe.bundle.js +0 -1
  584. package/docs/storybook/main.44dbc42d.iframe.bundle.js +0 -1
  585. package/docs/storybook/popover-popover-stories.a91784a3.iframe.bundle.js +0 -1
  586. package/docs/storybook/runtime~main.f0dc5a47.iframe.bundle.js +0 -1
  587. package/docs/storybook/tag-tag-stories.c5c2cc86.iframe.bundle.js +0 -1
@@ -0,0 +1,302 @@
1
+ import { ChangeDetectionStrategy, Component, ContentChildren, EventEmitter, HostBinding, Input, Output, ViewChild } from "@angular/core";
2
+ import { autoUpdate, computePosition, flip } from "@floating-ui/dom";
3
+ import { ContextMenuItemComponent } from "carbon-components-angular/context-menu";
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "carbon-components-angular/button";
6
+ import * as i2 from "carbon-components-angular/icon";
7
+ import * as i3 from "carbon-components-angular/context-menu";
8
+ export class ComboButtonComponent {
9
+ constructor(ngZone, renderer, hostElement, viewContainerRef, changeDetectorRef) {
10
+ this.ngZone = ngZone;
11
+ this.renderer = renderer;
12
+ this.hostElement = hostElement;
13
+ this.viewContainerRef = viewContainerRef;
14
+ this.changeDetectorRef = changeDetectorRef;
15
+ this.comboId = `combo-button-${ComboButtonComponent.comboButtonCounter++}`;
16
+ this.size = "lg";
17
+ this.disabled = false;
18
+ this.menuAlignment = "bottom";
19
+ this.tooltipAutoAlign = false;
20
+ this.tooltipPlacement = "bottom";
21
+ this.open = false;
22
+ this.actionClick = new EventEmitter();
23
+ this.comboButtonContainer = true;
24
+ this.documentClick = this.handleFocusOut.bind(this);
25
+ this.subscriptions = [];
26
+ this._alignment = "bottom";
27
+ }
28
+ // Listen for click & determine if menu should close
29
+ set projectedMenuItems(itemList) {
30
+ // Reset in case user dynamically updates menu item
31
+ this.subscriptions.forEach((sub) => sub?.unsubscribe());
32
+ this.subscriptions = [];
33
+ itemList.forEach((item) => {
34
+ this.subscriptions.push(item.itemClick.subscribe((clickEvent) => this.handleMenuItemClick(clickEvent)));
35
+ });
36
+ }
37
+ get sizeLg() { return this.size === "lg"; }
38
+ get sizeMd() { return this.size === "md"; }
39
+ get sizeSm() { return this.size === "sm"; }
40
+ get ariaOwns() {
41
+ return this.open ? this.comboId : undefined;
42
+ }
43
+ /**
44
+ * In case user updates alignment, store initial value.
45
+ * This allows us to test user passed alignment on each open
46
+ */
47
+ ngOnChanges(changes) {
48
+ if (changes.menuAlignment) {
49
+ this._alignment = changes.menuAlignment.currentValue;
50
+ }
51
+ }
52
+ /**
53
+ * If user has passed in true for open, we dynamically open the menu
54
+ */
55
+ ngAfterViewInit() {
56
+ if (this.open) {
57
+ this.open = !this.open;
58
+ this.toggleMenu();
59
+ }
60
+ }
61
+ /**
62
+ * Clean up Floating-ui & subscriptions
63
+ */
64
+ ngOnDestroy() {
65
+ this.cleanUp();
66
+ this.subscriptions.forEach((sub) => sub.unsubscribe());
67
+ }
68
+ /**
69
+ * As of now, menu button does not support nexted menu, on button click it should close
70
+ */
71
+ handleMenuItemClick(event) {
72
+ // If event is not type radio/checkbox, we close the menu
73
+ if (!event.type) {
74
+ this.toggleMenu();
75
+ }
76
+ }
77
+ /**
78
+ * On body click, close the menu
79
+ * @param event
80
+ */
81
+ handleFocusOut(event) {
82
+ if (!this.hostElement.nativeElement.contains(event.target)) {
83
+ this.toggleMenu();
84
+ }
85
+ }
86
+ /**
87
+ * Clean up `autoUpdate` if auto alignment is enabled
88
+ */
89
+ cleanUp() {
90
+ document.removeEventListener("click", this.documentClick);
91
+ if (this.unmountFloatingElement) {
92
+ this.menuRef.remove();
93
+ this.viewContainerRef.clear();
94
+ this.unmountFloatingElement();
95
+ }
96
+ this.unmountFloatingElement = undefined;
97
+ // On all instances of menu closing, make sure icon direction is correct
98
+ this.changeDetectorRef.markForCheck();
99
+ }
100
+ /**
101
+ * On action click, notify user
102
+ * If the menu is open, close the menu
103
+ * @param event
104
+ */
105
+ onActionClick(event) {
106
+ if (this.open) {
107
+ this.toggleMenu();
108
+ }
109
+ this.actionClick.emit(event);
110
+ }
111
+ /**
112
+ * Handles emitting open/close event
113
+ */
114
+ toggleMenu() {
115
+ this.open = !this.open;
116
+ if (this.open) {
117
+ // Render the template & append to view
118
+ const view = this.viewContainerRef.createEmbeddedView(this.menuTemplate);
119
+ this.menuRef = document.body.appendChild(view.rootNodes[0]);
120
+ // Assign button width to the menu ref to align with button
121
+ Object.assign(this.menuRef.style, {
122
+ width: `${this.hostElement.nativeElement.clientWidth}px`,
123
+ top: "0",
124
+ left: "0"
125
+ });
126
+ // Reset & test alignment every open
127
+ this.menuAlignment = this._alignment;
128
+ document.addEventListener("click", this.documentClick);
129
+ // Listen for events such as scrolling to keep menu aligned
130
+ this.unmountFloatingElement = autoUpdate(this.hostElement.nativeElement, this.menuRef, this.recomputePosition.bind(this));
131
+ }
132
+ else {
133
+ this.cleanUp();
134
+ }
135
+ }
136
+ roundByDPR(value) {
137
+ const dpr = window.devicePixelRatio || 1;
138
+ return Math.round(value * dpr) / dpr;
139
+ }
140
+ /**
141
+ * Compute position of menu
142
+ */
143
+ recomputePosition() {
144
+ if (this.menuTemplate && this.hostElement) {
145
+ // Run outside of angular zone to avoid unnecessary change detection and rely on floating-ui
146
+ this.ngZone.runOutsideAngular(async () => {
147
+ const { x, y, placement } = await computePosition(this.hostElement.nativeElement, this.menuRef, {
148
+ placement: this.menuAlignment,
149
+ strategy: "fixed",
150
+ middleware: [
151
+ flip({ crossAxis: false })
152
+ ]
153
+ });
154
+ this.menuAlignment = placement;
155
+ // Using CSSOM to manipulate CSS to avoid content security policy inline-src
156
+ // https://github.com/w3c/webappsec-csp/issues/212
157
+ Object.assign(this.menuRef.style, {
158
+ position: "fixed",
159
+ // Using transform instead of top/left position to improve performance
160
+ transform: `translate(${this.roundByDPR(x)}px,${this.roundByDPR(y)}px)`
161
+ });
162
+ this.changeDetectorRef.markForCheck();
163
+ });
164
+ }
165
+ }
166
+ }
167
+ ComboButtonComponent.comboButtonCounter = 0;
168
+ ComboButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ComboButtonComponent, deps: [{ token: i0.NgZone }, { token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i0.ViewContainerRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
169
+ ComboButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: ComboButtonComponent, selector: "cds-combo-button", inputs: { comboId: "comboId", size: "size", label: "label", disabled: "disabled", menuAlignment: "menuAlignment", description: "description", tooltipAutoAlign: "tooltipAutoAlign", tooltipPlacement: "tooltipPlacement", open: "open" }, outputs: { actionClick: "actionClick" }, host: { properties: { "class.cds--combo-button__container--open": "this.open", "class.cds--combo-button__container": "this.comboButtonContainer", "class.cds--combo-button__container--lg": "this.sizeLg", "class.cds--combo-button__container--md": "this.sizeMd", "class.cds--combo-button__container--sm": "this.sizeSm", "attr.aria-owns": "this.ariaOwns" } }, queries: [{ propertyName: "projectedMenuItems", predicate: ContextMenuItemComponent }], viewQueries: [{ propertyName: "menuTemplate", first: true, predicate: ["menuTemplate"], descendants: true }], usesOnChanges: true, ngImport: i0, template: `
170
+ <div class="cds--combo-button__primary-action" [attr.aria-owns]="open ? comboId : undefined">
171
+ <button
172
+ cdsButton="primary"
173
+ [size]="size"
174
+ [attr.title]="label"
175
+ [disabled]="disabled"
176
+ type="button"
177
+ (click)="onActionClick($event)">
178
+ {{label}}
179
+ </button>
180
+ </div>
181
+ <cds-icon-button
182
+ [buttonNgClass]="{ 'cds--combo-button__trigger': true }"
183
+ [buttonAttributes]="{
184
+ 'aria-haspopup': true,
185
+ 'aria-expanded': open,
186
+ 'aria-controls': open ? comboId : undefined
187
+ }"
188
+ [size]="size"
189
+ [description]="description"
190
+ [disabled]="disabled"
191
+ [autoAlign]="tooltipAutoAlign"
192
+ [align]="tooltipPlacement"
193
+ (click)="toggleMenu()">
194
+ <svg
195
+ cdsIcon="chevron--down"
196
+ size="16">
197
+ </svg>
198
+ </cds-icon-button>
199
+
200
+ <ng-template #menuTemplate>
201
+ <cds-menu
202
+ mode="basic"
203
+ [size]="size"
204
+ [open]="open"
205
+ [attr.id]="comboId">
206
+ <ng-content select="cds-menu-item, cds-menu-divider"></ng-content>
207
+ </cds-menu>
208
+ </ng-template>
209
+ `, isInline: true, dependencies: [{ kind: "directive", type: i1.Button, selector: "[cdsButton], [ibmButton]", inputs: ["ibmButton", "cdsButton", "size", "skeleton", "iconOnly", "isExpressive"] }, { kind: "component", type: i1.IconButton, selector: "cds-icon-button, ibm-icon-button", inputs: ["buttonNgClass", "buttonAttributes", "buttonId", "kind", "size", "type", "isExpressive", "disabled", "description", "showTooltipWhenDisabled"], outputs: ["click", "focus", "blur", "tooltipClick"] }, { kind: "directive", type: i2.IconDirective, selector: "[cdsIcon], [ibmIcon]", inputs: ["ibmIcon", "cdsIcon", "size", "title", "ariaLabel", "ariaLabelledBy", "ariaHidden", "isFocusable"] }, { kind: "component", type: i3.ContextMenuComponent, selector: "cds-menu, cds-context-menu, ibm-context-menu", inputs: ["open", "position", "size"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
210
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ComboButtonComponent, decorators: [{
211
+ type: Component,
212
+ args: [{
213
+ selector: "cds-combo-button",
214
+ template: `
215
+ <div class="cds--combo-button__primary-action" [attr.aria-owns]="open ? comboId : undefined">
216
+ <button
217
+ cdsButton="primary"
218
+ [size]="size"
219
+ [attr.title]="label"
220
+ [disabled]="disabled"
221
+ type="button"
222
+ (click)="onActionClick($event)">
223
+ {{label}}
224
+ </button>
225
+ </div>
226
+ <cds-icon-button
227
+ [buttonNgClass]="{ 'cds--combo-button__trigger': true }"
228
+ [buttonAttributes]="{
229
+ 'aria-haspopup': true,
230
+ 'aria-expanded': open,
231
+ 'aria-controls': open ? comboId : undefined
232
+ }"
233
+ [size]="size"
234
+ [description]="description"
235
+ [disabled]="disabled"
236
+ [autoAlign]="tooltipAutoAlign"
237
+ [align]="tooltipPlacement"
238
+ (click)="toggleMenu()">
239
+ <svg
240
+ cdsIcon="chevron--down"
241
+ size="16">
242
+ </svg>
243
+ </cds-icon-button>
244
+
245
+ <ng-template #menuTemplate>
246
+ <cds-menu
247
+ mode="basic"
248
+ [size]="size"
249
+ [open]="open"
250
+ [attr.id]="comboId">
251
+ <ng-content select="cds-menu-item, cds-menu-divider"></ng-content>
252
+ </cds-menu>
253
+ </ng-template>
254
+ `,
255
+ changeDetection: ChangeDetectionStrategy.OnPush
256
+ }]
257
+ }], ctorParameters: function () { return [{ type: i0.NgZone }, { type: i0.Renderer2 }, { type: i0.ElementRef }, { type: i0.ViewContainerRef }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { comboId: [{
258
+ type: Input
259
+ }], projectedMenuItems: [{
260
+ type: ContentChildren,
261
+ args: [ContextMenuItemComponent]
262
+ }], size: [{
263
+ type: Input
264
+ }], label: [{
265
+ type: Input
266
+ }], disabled: [{
267
+ type: Input
268
+ }], menuAlignment: [{
269
+ type: Input
270
+ }], description: [{
271
+ type: Input
272
+ }], tooltipAutoAlign: [{
273
+ type: Input
274
+ }], tooltipPlacement: [{
275
+ type: Input
276
+ }], open: [{
277
+ type: Input
278
+ }, {
279
+ type: HostBinding,
280
+ args: ["class.cds--combo-button__container--open"]
281
+ }], actionClick: [{
282
+ type: Output
283
+ }], comboButtonContainer: [{
284
+ type: HostBinding,
285
+ args: ["class.cds--combo-button__container"]
286
+ }], sizeLg: [{
287
+ type: HostBinding,
288
+ args: ["class.cds--combo-button__container--lg"]
289
+ }], sizeMd: [{
290
+ type: HostBinding,
291
+ args: ["class.cds--combo-button__container--md"]
292
+ }], sizeSm: [{
293
+ type: HostBinding,
294
+ args: ["class.cds--combo-button__container--sm"]
295
+ }], ariaOwns: [{
296
+ type: HostBinding,
297
+ args: ["attr.aria-owns"]
298
+ }], menuTemplate: [{
299
+ type: ViewChild,
300
+ args: ["menuTemplate"]
301
+ }] } });
302
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tYm8tYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21iby1idXR0b24vY29tYm8tYnV0dG9uLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRU4sdUJBQXVCLEVBRXZCLFNBQVMsRUFDVCxlQUFlLEVBRWYsWUFBWSxFQUNaLFdBQVcsRUFDWCxLQUFLLEVBSUwsTUFBTSxFQUtOLFNBQVMsRUFFVCxNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQ04sVUFBVSxFQUNWLGVBQWUsRUFDZixJQUFJLEVBQ0osTUFBTSxrQkFBa0IsQ0FBQztBQUMxQixPQUFPLEVBQUUsd0JBQXdCLEVBQWtCLE1BQU0sd0NBQXdDLENBQUM7Ozs7O0FBaURsRyxNQUFNLE9BQU8sb0JBQW9CO0lBMENoQyxZQUNXLE1BQWMsRUFDZCxRQUFtQixFQUNuQixXQUF1QixFQUN2QixnQkFBa0MsRUFDbEMsaUJBQW9DO1FBSnBDLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDZCxhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQ25CLGdCQUFXLEdBQVgsV0FBVyxDQUFZO1FBQ3ZCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQTdDdEMsWUFBTyxHQUFHLGdCQUFnQixvQkFBb0IsQ0FBQyxrQkFBa0IsRUFBRSxFQUFFLENBQUM7UUFjdEUsU0FBSSxHQUF1QixJQUFJLENBQUM7UUFFaEMsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUNqQixrQkFBYSxHQUF5QixRQUFRLENBQUM7UUFFL0MscUJBQWdCLEdBQUcsS0FBSyxDQUFDO1FBQ3pCLHFCQUFnQixHQUFHLFFBQVEsQ0FBQztRQUM2QixTQUFJLEdBQUcsS0FBSyxDQUFDO1FBQ3JFLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQVMsQ0FBQztRQUNDLHlCQUFvQixHQUFHLElBQUksQ0FBQztRQVVyRSxrQkFBYSxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBR2pELGtCQUFhLEdBQW1CLEVBQUUsQ0FBQztRQUNuQyxlQUFVLEdBQXlCLFFBQVEsQ0FBQztJQVNoRCxDQUFDO0lBNUNMLG9EQUFvRDtJQUNwRCxJQUErQyxrQkFBa0IsQ0FBQyxRQUE2QztRQUM5RyxtREFBbUQ7UUFDbkQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLEdBQUcsRUFBRSxXQUFXLEVBQUUsQ0FBQyxDQUFDO1FBQ3hELElBQUksQ0FBQyxhQUFhLEdBQUcsRUFBRSxDQUFDO1FBQ3hCLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtZQUN6QixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FDdEIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxVQUFVLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUM5RSxDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDSixDQUFDO0lBWUQsSUFBMkQsTUFBTSxLQUFLLE9BQU8sSUFBSSxDQUFDLElBQUksS0FBSyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ2xHLElBQTJELE1BQU0sS0FBSyxPQUFPLElBQUksQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQztJQUNsRyxJQUEyRCxNQUFNLEtBQUssT0FBTyxJQUFJLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDbEcsSUFBbUMsUUFBUTtRQUMxQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztJQUM3QyxDQUFDO0lBb0JEOzs7T0FHRztJQUNILFdBQVcsQ0FBQyxPQUFzQjtRQUNqQyxJQUFJLE9BQU8sQ0FBQyxhQUFhLEVBQUU7WUFDMUIsSUFBSSxDQUFDLFVBQVUsR0FBRyxPQUFPLENBQUMsYUFBYSxDQUFDLFlBQVksQ0FBQztTQUNyRDtJQUNGLENBQUM7SUFJRDs7T0FFRztJQUNILGVBQWU7UUFDZCxJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUU7WUFDZCxJQUFJLENBQUMsSUFBSSxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQztZQUN2QixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7U0FDbEI7SUFDRixDQUFDO0lBSUQ7O01BRUU7SUFDRixXQUFXO1FBQ1YsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ2YsSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO0lBQ3hELENBQUM7SUFHRDs7T0FFRztJQUNILG1CQUFtQixDQUFDLEtBQXFCO1FBQ3hDLHlEQUF5RDtRQUN6RCxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRTtZQUNoQixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7U0FDbEI7SUFDRixDQUFDO0lBSUQ7OztPQUdHO0lBQ0gsY0FBYyxDQUFDLEtBQUs7UUFDbkIsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDM0QsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1NBQ2xCO0lBQ0YsQ0FBQztJQUlEOztPQUVHO0lBQ0gsT0FBTztRQUNOLFFBQVEsQ0FBQyxtQkFBbUIsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQzFELElBQUksSUFBSSxDQUFDLHNCQUFzQixFQUFFO1lBQ2hDLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDdEIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEtBQUssRUFBRSxDQUFDO1lBQzlCLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO1NBQzlCO1FBQ0QsSUFBSSxDQUFDLHNCQUFzQixHQUFHLFNBQVMsQ0FBQztRQUN4Qyx3RUFBd0U7UUFDeEUsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3ZDLENBQUM7SUFHRDs7OztPQUlHO0lBQ0gsYUFBYSxDQUFDLEtBQW1CO1FBQ2hDLElBQUksSUFBSSxDQUFDLElBQUksRUFBRTtZQUNkLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztTQUNsQjtRQUNELElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFJRDs7T0FFRztJQUNILFVBQVU7UUFDVCxJQUFJLENBQUMsSUFBSSxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQztRQUN2QixJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUU7WUFDZCx1Q0FBdUM7WUFDdkMsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztZQUN6RSxJQUFJLENBQUMsT0FBTyxHQUFHLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFnQixDQUFDLENBQUM7WUFDM0UsMkRBQTJEO1lBQzNELE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUU7Z0JBQ2pDLEtBQUssRUFBRSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDLFdBQVcsSUFBSTtnQkFDeEQsR0FBRyxFQUFFLEdBQUc7Z0JBQ1IsSUFBSSxFQUFFLEdBQUc7YUFDVCxDQUFDLENBQUM7WUFFSCxvQ0FBb0M7WUFDcEMsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDO1lBRXJDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1lBRXZELDJEQUEyRDtZQUMzRCxJQUFJLENBQUMsc0JBQXNCLEdBQUcsVUFBVSxDQUN2QyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsRUFDOUIsSUFBSSxDQUFDLE9BQU8sRUFDWixJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUNqQyxDQUFDO1NBQ0Y7YUFBTTtZQUNOLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztTQUNmO0lBQ0YsQ0FBQztJQUlELFVBQVUsQ0FBQyxLQUFLO1FBQ2YsTUFBTSxHQUFHLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixJQUFJLENBQUMsQ0FBQztRQUN6QyxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxHQUFHLEdBQUcsQ0FBQyxHQUFHLEdBQUcsQ0FBQztJQUN0QyxDQUFDO0lBSUQ7O09BRUc7SUFDSCxpQkFBaUI7UUFDaEIsSUFBSSxJQUFJLENBQUMsWUFBWSxJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUU7WUFDMUMsNEZBQTRGO1lBQzVGLElBQUksQ0FBQyxNQUFNLENBQUMsaUJBQWlCLENBQUMsS0FBSyxJQUFJLEVBQUU7Z0JBQ3hDLE1BQU0sRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLFNBQVMsRUFBRSxHQUFHLE1BQU0sZUFBZSxDQUNoRCxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsRUFDOUIsSUFBSSxDQUFDLE9BQU8sRUFDWjtvQkFDQyxTQUFTLEVBQUUsSUFBSSxDQUFDLGFBQWE7b0JBQzdCLFFBQVEsRUFBRSxPQUFPO29CQUNqQixVQUFVLEVBQUU7d0JBQ1gsSUFBSSxDQUFDLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxDQUFDO3FCQUMxQjtpQkFDRCxDQUFDLENBQUM7Z0JBRUosSUFBSSxDQUFDLGFBQWEsR0FBRyxTQUFpQyxDQUFDO2dCQUV2RCw0RUFBNEU7Z0JBQzVFLGtEQUFrRDtnQkFDbEQsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRTtvQkFDakMsUUFBUSxFQUFFLE9BQU87b0JBQ2pCLHNFQUFzRTtvQkFDdEUsU0FBUyxFQUFFLGFBQWEsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsTUFBTSxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxLQUFLO2lCQUN2RSxDQUFDLENBQUM7Z0JBQ0gsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFlBQVksRUFBRSxDQUFDO1lBQ3ZDLENBQUMsQ0FBQyxDQUFDO1NBQ0g7SUFDRixDQUFDOztBQWhOTSx1Q0FBa0IsR0FBRyxDQUFDLENBQUM7aUhBRGxCLG9CQUFvQjtxR0FBcEIsb0JBQW9CLGt0QkFLZix3QkFBd0IsZ0tBaEQvQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQXdDVDsyRkFHVyxvQkFBb0I7a0JBN0NoQyxTQUFTO21CQUFDO29CQUNWLFFBQVEsRUFBRSxrQkFBa0I7b0JBQzVCLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQXdDVDtvQkFDRCxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtpQkFDL0M7Nk1BR1MsT0FBTztzQkFBZixLQUFLO2dCQUd5QyxrQkFBa0I7c0JBQWhFLGVBQWU7dUJBQUMsd0JBQXdCO2dCQVdoQyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFDRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBQzRELElBQUk7c0JBQXJFLEtBQUs7O3NCQUFJLFdBQVc7dUJBQUMsMENBQTBDO2dCQUN0RCxXQUFXO3NCQUFwQixNQUFNO2dCQUM0QyxvQkFBb0I7c0JBQXRFLFdBQVc7dUJBQUMsb0NBQW9DO2dCQUNVLE1BQU07c0JBQWhFLFdBQVc7dUJBQUMsd0NBQXdDO2dCQUNNLE1BQU07c0JBQWhFLFdBQVc7dUJBQUMsd0NBQXdDO2dCQUNNLE1BQU07c0JBQWhFLFdBQVc7dUJBQUMsd0NBQXdDO2dCQUNsQixRQUFRO3NCQUExQyxXQUFXO3VCQUFDLGdCQUFnQjtnQkFJRixZQUFZO3NCQUF0QyxTQUFTO3VCQUFDLGNBQWMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuXHRBZnRlclZpZXdJbml0LFxuXHRDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcblx0Q2hhbmdlRGV0ZWN0b3JSZWYsXG5cdENvbXBvbmVudCxcblx0Q29udGVudENoaWxkcmVuLFxuXHRFbGVtZW50UmVmLFxuXHRFdmVudEVtaXR0ZXIsXG5cdEhvc3RCaW5kaW5nLFxuXHRJbnB1dCxcblx0Tmdab25lLFxuXHRPbkNoYW5nZXMsXG5cdE9uRGVzdHJveSxcblx0T3V0cHV0LFxuXHRRdWVyeUxpc3QsXG5cdFJlbmRlcmVyMixcblx0U2ltcGxlQ2hhbmdlcyxcblx0VGVtcGxhdGVSZWYsXG5cdFZpZXdDaGlsZCxcblx0Vmlld0NvbnRhaW5lclJlZlxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSBcInJ4anNcIjtcbmltcG9ydCB7XG5cdGF1dG9VcGRhdGUsXG5cdGNvbXB1dGVQb3NpdGlvbixcblx0ZmxpcFxufSBmcm9tIFwiQGZsb2F0aW5nLXVpL2RvbVwiO1xuaW1wb3J0IHsgQ29udGV4dE1lbnVJdGVtQ29tcG9uZW50LCBJdGVtQ2xpY2tFdmVudCB9IGZyb20gXCJjYXJib24tY29tcG9uZW50cy1hbmd1bGFyL2NvbnRleHQtbWVudVwiO1xuXG50eXBlIENvbWJvQnV0dG9uUGxhY2VtZW50ID0gXCJ0b3BcIiB8IFwidG9wLXN0YXJ0XCIgfCBcInRvcC1lbmRcIiB8IFwiYm90dG9tXCIgfCBcImJvdHRvbS1zdGFydFwiIHwgXCJib3R0b20tZW5kXCI7XG5cbkBDb21wb25lbnQoe1xuXHRzZWxlY3RvcjogXCJjZHMtY29tYm8tYnV0dG9uXCIsXG5cdHRlbXBsYXRlOiBgXG5cdFx0PGRpdiBjbGFzcz1cImNkcy0tY29tYm8tYnV0dG9uX19wcmltYXJ5LWFjdGlvblwiIFthdHRyLmFyaWEtb3duc109XCJvcGVuID8gY29tYm9JZCA6IHVuZGVmaW5lZFwiPlxuXHRcdFx0PGJ1dHRvblxuXHRcdFx0XHRjZHNCdXR0b249XCJwcmltYXJ5XCJcblx0XHRcdFx0W3NpemVdPVwic2l6ZVwiXG5cdFx0XHRcdFthdHRyLnRpdGxlXT1cImxhYmVsXCJcblx0XHRcdFx0W2Rpc2FibGVkXT1cImRpc2FibGVkXCJcblx0XHRcdFx0dHlwZT1cImJ1dHRvblwiXG5cdFx0XHRcdChjbGljayk9XCJvbkFjdGlvbkNsaWNrKCRldmVudClcIj5cblx0XHRcdFx0e3tsYWJlbH19XG5cdFx0XHQ8L2J1dHRvbj5cblx0XHQ8L2Rpdj5cblx0XHQ8Y2RzLWljb24tYnV0dG9uXG5cdFx0XHRbYnV0dG9uTmdDbGFzc109XCJ7ICdjZHMtLWNvbWJvLWJ1dHRvbl9fdHJpZ2dlcic6IHRydWUgfVwiXG5cdFx0XHRbYnV0dG9uQXR0cmlidXRlc109XCJ7XG5cdFx0XHRcdCdhcmlhLWhhc3BvcHVwJzogdHJ1ZSxcblx0XHRcdFx0J2FyaWEtZXhwYW5kZWQnOiBvcGVuLFxuXHRcdFx0XHQnYXJpYS1jb250cm9scyc6IG9wZW4gPyBjb21ib0lkIDogdW5kZWZpbmVkXG5cdFx0XHR9XCJcblx0XHRcdFtzaXplXT1cInNpemVcIlxuXHRcdFx0W2Rlc2NyaXB0aW9uXT1cImRlc2NyaXB0aW9uXCJcblx0XHRcdFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG5cdFx0XHRbYXV0b0FsaWduXT1cInRvb2x0aXBBdXRvQWxpZ25cIlxuXHRcdFx0W2FsaWduXT1cInRvb2x0aXBQbGFjZW1lbnRcIlxuXHRcdFx0KGNsaWNrKT1cInRvZ2dsZU1lbnUoKVwiPlxuXHRcdFx0PHN2Z1xuXHRcdFx0XHRjZHNJY29uPVwiY2hldnJvbi0tZG93blwiXG5cdFx0XHRcdHNpemU9XCIxNlwiPlxuXHRcdFx0PC9zdmc+XG5cdFx0PC9jZHMtaWNvbi1idXR0b24+XG5cblx0XHQ8bmctdGVtcGxhdGUgI21lbnVUZW1wbGF0ZT5cblx0XHRcdDxjZHMtbWVudVxuXHRcdFx0XHRtb2RlPVwiYmFzaWNcIlxuXHRcdFx0XHRbc2l6ZV09XCJzaXplXCJcblx0XHRcdFx0W29wZW5dPVwib3BlblwiXG5cdFx0XHRcdFthdHRyLmlkXT1cImNvbWJvSWRcIj5cblx0XHRcdFx0PG5nLWNvbnRlbnQgc2VsZWN0PVwiY2RzLW1lbnUtaXRlbSwgY2RzLW1lbnUtZGl2aWRlclwiPjwvbmctY29udGVudD5cblx0XHRcdDwvY2RzLW1lbnU+XG5cdFx0PC9uZy10ZW1wbGF0ZT5cblx0YCxcblx0Y2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgQ29tYm9CdXR0b25Db21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMsIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSB7XG5cdHN0YXRpYyBjb21ib0J1dHRvbkNvdW50ZXIgPSAwO1xuXHRASW5wdXQoKSBjb21ib0lkID0gYGNvbWJvLWJ1dHRvbi0ke0NvbWJvQnV0dG9uQ29tcG9uZW50LmNvbWJvQnV0dG9uQ291bnRlcisrfWA7XG5cblx0Ly8gTGlzdGVuIGZvciBjbGljayAmIGRldGVybWluZSBpZiBtZW51IHNob3VsZCBjbG9zZVxuXHRAQ29udGVudENoaWxkcmVuKENvbnRleHRNZW51SXRlbUNvbXBvbmVudCkgc2V0IHByb2plY3RlZE1lbnVJdGVtcyhpdGVtTGlzdDogUXVlcnlMaXN0PENvbnRleHRNZW51SXRlbUNvbXBvbmVudD4pIHtcblx0XHQvLyBSZXNldCBpbiBjYXNlIHVzZXIgZHluYW1pY2FsbHkgdXBkYXRlcyBtZW51IGl0ZW1cblx0XHR0aGlzLnN1YnNjcmlwdGlvbnMuZm9yRWFjaCgoc3ViKSA9PiBzdWI/LnVuc3Vic2NyaWJlKCkpO1xuXHRcdHRoaXMuc3Vic2NyaXB0aW9ucyA9IFtdO1xuXHRcdGl0ZW1MaXN0LmZvckVhY2goKGl0ZW0pID0+IHtcblx0XHRcdHRoaXMuc3Vic2NyaXB0aW9ucy5wdXNoKFxuXHRcdFx0XHRpdGVtLml0ZW1DbGljay5zdWJzY3JpYmUoKGNsaWNrRXZlbnQpID0+IHRoaXMuaGFuZGxlTWVudUl0ZW1DbGljayhjbGlja0V2ZW50KSlcblx0XHRcdCk7XG5cdFx0fSk7XG5cdH1cblxuXHRASW5wdXQoKSBzaXplOiBcInNtXCIgfCBcIm1kXCIgfCBcImxnXCIgPSBcImxnXCI7XG5cdEBJbnB1dCgpIGxhYmVsOiBzdHJpbmc7XG5cdEBJbnB1dCgpIGRpc2FibGVkID0gZmFsc2U7XG5cdEBJbnB1dCgpIG1lbnVBbGlnbm1lbnQ6IENvbWJvQnV0dG9uUGxhY2VtZW50ID0gXCJib3R0b21cIjtcblx0QElucHV0KCkgZGVzY3JpcHRpb246IHN0cmluZztcblx0QElucHV0KCkgdG9vbHRpcEF1dG9BbGlnbiA9IGZhbHNlO1xuXHRASW5wdXQoKSB0b29sdGlwUGxhY2VtZW50ID0gXCJib3R0b21cIjtcblx0QElucHV0KCkgQEhvc3RCaW5kaW5nKFwiY2xhc3MuY2RzLS1jb21iby1idXR0b25fX2NvbnRhaW5lci0tb3BlblwiKSBvcGVuID0gZmFsc2U7XG5cdEBPdXRwdXQoKSBhY3Rpb25DbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8RXZlbnQ+KCk7XG5cdEBIb3N0QmluZGluZyhcImNsYXNzLmNkcy0tY29tYm8tYnV0dG9uX19jb250YWluZXJcIikgY29tYm9CdXR0b25Db250YWluZXIgPSB0cnVlO1xuXHRASG9zdEJpbmRpbmcoXCJjbGFzcy5jZHMtLWNvbWJvLWJ1dHRvbl9fY29udGFpbmVyLS1sZ1wiKSBnZXQgc2l6ZUxnKCkgeyByZXR1cm4gdGhpcy5zaXplID09PSBcImxnXCI7IH1cblx0QEhvc3RCaW5kaW5nKFwiY2xhc3MuY2RzLS1jb21iby1idXR0b25fX2NvbnRhaW5lci0tbWRcIikgZ2V0IHNpemVNZCgpIHsgcmV0dXJuIHRoaXMuc2l6ZSA9PT0gXCJtZFwiOyB9XG5cdEBIb3N0QmluZGluZyhcImNsYXNzLmNkcy0tY29tYm8tYnV0dG9uX19jb250YWluZXItLXNtXCIpIGdldCBzaXplU20oKSB7IHJldHVybiB0aGlzLnNpemUgPT09IFwic21cIjsgfVxuXHRASG9zdEJpbmRpbmcoXCJhdHRyLmFyaWEtb3duc1wiKSBnZXQgYXJpYU93bnMoKSB7XG5cdFx0cmV0dXJuIHRoaXMub3BlbiA/IHRoaXMuY29tYm9JZCA6IHVuZGVmaW5lZDtcblx0fVxuXG5cdEBWaWV3Q2hpbGQoXCJtZW51VGVtcGxhdGVcIikgbWVudVRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG5cdHByb3RlY3RlZCBkb2N1bWVudENsaWNrID0gdGhpcy5oYW5kbGVGb2N1c091dC5iaW5kKHRoaXMpO1xuXHRwcm90ZWN0ZWQgdW5tb3VudEZsb2F0aW5nRWxlbWVudDogRnVuY3Rpb247XG5cblx0cHJpdmF0ZSBzdWJzY3JpcHRpb25zOiBTdWJzY3JpcHRpb25bXSA9IFtdO1xuXHRwcml2YXRlIF9hbGlnbm1lbnQ6IENvbWJvQnV0dG9uUGxhY2VtZW50ID0gXCJib3R0b21cIjtcblx0cHJpdmF0ZSBtZW51UmVmOiBIVE1MRWxlbWVudDtcblxuXHRjb25zdHJ1Y3Rvcihcblx0XHRwcm90ZWN0ZWQgbmdab25lOiBOZ1pvbmUsXG5cdFx0cHJvdGVjdGVkIHJlbmRlcmVyOiBSZW5kZXJlcjIsXG5cdFx0cHJvdGVjdGVkIGhvc3RFbGVtZW50OiBFbGVtZW50UmVmLFxuXHRcdHByb3RlY3RlZCB2aWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmLFxuXHRcdHByb3RlY3RlZCBjaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWZcblx0KSB7IH1cblxuXG5cdC8qKlxuXHQgKiBJbiBjYXNlIHVzZXIgdXBkYXRlcyBhbGlnbm1lbnQsIHN0b3JlIGluaXRpYWwgdmFsdWUuXG5cdCAqIFRoaXMgYWxsb3dzIHVzIHRvIHRlc3QgdXNlciBwYXNzZWQgYWxpZ25tZW50IG9uIGVhY2ggb3BlblxuXHQgKi9cblx0bmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuXHRcdGlmIChjaGFuZ2VzLm1lbnVBbGlnbm1lbnQpIHtcblx0XHRcdHRoaXMuX2FsaWdubWVudCA9IGNoYW5nZXMubWVudUFsaWdubWVudC5jdXJyZW50VmFsdWU7XG5cdFx0fVxuXHR9XG5cblxuXG5cdC8qKlxuXHQgKiBJZiB1c2VyIGhhcyBwYXNzZWQgaW4gdHJ1ZSBmb3Igb3Blbiwgd2UgZHluYW1pY2FsbHkgb3BlbiB0aGUgbWVudVxuXHQgKi9cblx0bmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuXHRcdGlmICh0aGlzLm9wZW4pIHtcblx0XHRcdHRoaXMub3BlbiA9ICF0aGlzLm9wZW47XG5cdFx0XHR0aGlzLnRvZ2dsZU1lbnUoKTtcblx0XHR9XG5cdH1cblxuXG5cblx0LyoqXG5cdCogQ2xlYW4gdXAgRmxvYXRpbmctdWkgJiBzdWJzY3JpcHRpb25zXG5cdCovXG5cdG5nT25EZXN0cm95KCk6IHZvaWQge1xuXHRcdHRoaXMuY2xlYW5VcCgpO1xuXHRcdHRoaXMuc3Vic2NyaXB0aW9ucy5mb3JFYWNoKChzdWIpID0+IHN1Yi51bnN1YnNjcmliZSgpKTtcblx0fVxuXG5cblx0LyoqXG5cdCAqIEFzIG9mIG5vdywgbWVudSBidXR0b24gZG9lcyBub3Qgc3VwcG9ydCBuZXh0ZWQgbWVudSwgb24gYnV0dG9uIGNsaWNrIGl0IHNob3VsZCBjbG9zZVxuXHQgKi9cblx0aGFuZGxlTWVudUl0ZW1DbGljayhldmVudDogSXRlbUNsaWNrRXZlbnQpIHtcblx0XHQvLyBJZiBldmVudCBpcyBub3QgdHlwZSByYWRpby9jaGVja2JveCwgd2UgY2xvc2UgdGhlIG1lbnVcblx0XHRpZiAoIWV2ZW50LnR5cGUpIHtcblx0XHRcdHRoaXMudG9nZ2xlTWVudSgpO1xuXHRcdH1cblx0fVxuXG5cblxuXHQvKipcblx0ICogT24gYm9keSBjbGljaywgY2xvc2UgdGhlIG1lbnVcblx0ICogQHBhcmFtIGV2ZW50XG5cdCAqL1xuXHRoYW5kbGVGb2N1c091dChldmVudCkge1xuXHRcdGlmICghdGhpcy5ob3N0RWxlbWVudC5uYXRpdmVFbGVtZW50LmNvbnRhaW5zKGV2ZW50LnRhcmdldCkpIHtcblx0XHRcdHRoaXMudG9nZ2xlTWVudSgpO1xuXHRcdH1cblx0fVxuXG5cblxuXHQvKipcblx0ICogQ2xlYW4gdXAgYGF1dG9VcGRhdGVgIGlmIGF1dG8gYWxpZ25tZW50IGlzIGVuYWJsZWRcblx0ICovXG5cdGNsZWFuVXAoKSB7XG5cdFx0ZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcihcImNsaWNrXCIsIHRoaXMuZG9jdW1lbnRDbGljayk7XG5cdFx0aWYgKHRoaXMudW5tb3VudEZsb2F0aW5nRWxlbWVudCkge1xuXHRcdFx0dGhpcy5tZW51UmVmLnJlbW92ZSgpO1xuXHRcdFx0dGhpcy52aWV3Q29udGFpbmVyUmVmLmNsZWFyKCk7XG5cdFx0XHR0aGlzLnVubW91bnRGbG9hdGluZ0VsZW1lbnQoKTtcblx0XHR9XG5cdFx0dGhpcy51bm1vdW50RmxvYXRpbmdFbGVtZW50ID0gdW5kZWZpbmVkO1xuXHRcdC8vIE9uIGFsbCBpbnN0YW5jZXMgb2YgbWVudSBjbG9zaW5nLCBtYWtlIHN1cmUgaWNvbiBkaXJlY3Rpb24gaXMgY29ycmVjdFxuXHRcdHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG5cdH1cblxuXG5cdC8qKlxuXHQgKiBPbiBhY3Rpb24gY2xpY2ssIG5vdGlmeSB1c2VyXG5cdCAqIElmIHRoZSBtZW51IGlzIG9wZW4sIGNsb3NlIHRoZSBtZW51XG5cdCAqIEBwYXJhbSBldmVudFxuXHQgKi9cblx0b25BY3Rpb25DbGljayhldmVudDogUG9pbnRlckV2ZW50KSB7XG5cdFx0aWYgKHRoaXMub3Blbikge1xuXHRcdFx0dGhpcy50b2dnbGVNZW51KCk7XG5cdFx0fVxuXHRcdHRoaXMuYWN0aW9uQ2xpY2suZW1pdChldmVudCk7XG5cdH1cblxuXG5cblx0LyoqXG5cdCAqIEhhbmRsZXMgZW1pdHRpbmcgb3Blbi9jbG9zZSBldmVudFxuXHQgKi9cblx0dG9nZ2xlTWVudSgpIHtcblx0XHR0aGlzLm9wZW4gPSAhdGhpcy5vcGVuO1xuXHRcdGlmICh0aGlzLm9wZW4pIHtcblx0XHRcdC8vIFJlbmRlciB0aGUgdGVtcGxhdGUgJiBhcHBlbmQgdG8gdmlld1xuXHRcdFx0Y29uc3QgdmlldyA9IHRoaXMudmlld0NvbnRhaW5lclJlZi5jcmVhdGVFbWJlZGRlZFZpZXcodGhpcy5tZW51VGVtcGxhdGUpO1xuXHRcdFx0dGhpcy5tZW51UmVmID0gZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZCh2aWV3LnJvb3ROb2Rlc1swXSBhcyBIVE1MRWxlbWVudCk7XG5cdFx0XHQvLyBBc3NpZ24gYnV0dG9uIHdpZHRoIHRvIHRoZSBtZW51IHJlZiB0byBhbGlnbiB3aXRoIGJ1dHRvblxuXHRcdFx0T2JqZWN0LmFzc2lnbih0aGlzLm1lbnVSZWYuc3R5bGUsIHtcblx0XHRcdFx0d2lkdGg6IGAke3RoaXMuaG9zdEVsZW1lbnQubmF0aXZlRWxlbWVudC5jbGllbnRXaWR0aH1weGAsXG5cdFx0XHRcdHRvcDogXCIwXCIsXG5cdFx0XHRcdGxlZnQ6IFwiMFwiXG5cdFx0XHR9KTtcblxuXHRcdFx0Ly8gUmVzZXQgJiB0ZXN0IGFsaWdubWVudCBldmVyeSBvcGVuXG5cdFx0XHR0aGlzLm1lbnVBbGlnbm1lbnQgPSB0aGlzLl9hbGlnbm1lbnQ7XG5cblx0XHRcdGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoXCJjbGlja1wiLCB0aGlzLmRvY3VtZW50Q2xpY2spO1xuXG5cdFx0XHQvLyBMaXN0ZW4gZm9yIGV2ZW50cyBzdWNoIGFzIHNjcm9sbGluZyB0byBrZWVwIG1lbnUgYWxpZ25lZFxuXHRcdFx0dGhpcy51bm1vdW50RmxvYXRpbmdFbGVtZW50ID0gYXV0b1VwZGF0ZShcblx0XHRcdFx0dGhpcy5ob3N0RWxlbWVudC5uYXRpdmVFbGVtZW50LFxuXHRcdFx0XHR0aGlzLm1lbnVSZWYsXG5cdFx0XHRcdHRoaXMucmVjb21wdXRlUG9zaXRpb24uYmluZCh0aGlzKVxuXHRcdFx0KTtcblx0XHR9IGVsc2Uge1xuXHRcdFx0dGhpcy5jbGVhblVwKCk7XG5cdFx0fVxuXHR9XG5cblxuXG5cdHJvdW5kQnlEUFIodmFsdWUpIHtcblx0XHRjb25zdCBkcHIgPSB3aW5kb3cuZGV2aWNlUGl4ZWxSYXRpbyB8fCAxO1xuXHRcdHJldHVybiBNYXRoLnJvdW5kKHZhbHVlICogZHByKSAvIGRwcjtcblx0fVxuXG5cblxuXHQvKipcblx0ICogQ29tcHV0ZSBwb3NpdGlvbiBvZiBtZW51XG5cdCAqL1xuXHRyZWNvbXB1dGVQb3NpdGlvbigpIHtcblx0XHRpZiAodGhpcy5tZW51VGVtcGxhdGUgJiYgdGhpcy5ob3N0RWxlbWVudCkge1xuXHRcdFx0Ly8gUnVuIG91dHNpZGUgb2YgYW5ndWxhciB6b25lIHRvIGF2b2lkIHVubmVjZXNzYXJ5IGNoYW5nZSBkZXRlY3Rpb24gYW5kIHJlbHkgb24gZmxvYXRpbmctdWlcblx0XHRcdHRoaXMubmdab25lLnJ1bk91dHNpZGVBbmd1bGFyKGFzeW5jICgpID0+IHtcblx0XHRcdFx0Y29uc3QgeyB4LCB5LCBwbGFjZW1lbnQgfSA9IGF3YWl0IGNvbXB1dGVQb3NpdGlvbihcblx0XHRcdFx0XHR0aGlzLmhvc3RFbGVtZW50Lm5hdGl2ZUVsZW1lbnQsXG5cdFx0XHRcdFx0dGhpcy5tZW51UmVmLFxuXHRcdFx0XHRcdHtcblx0XHRcdFx0XHRcdHBsYWNlbWVudDogdGhpcy5tZW51QWxpZ25tZW50LFxuXHRcdFx0XHRcdFx0c3RyYXRlZ3k6IFwiZml4ZWRcIixcblx0XHRcdFx0XHRcdG1pZGRsZXdhcmU6IFtcblx0XHRcdFx0XHRcdFx0ZmxpcCh7IGNyb3NzQXhpczogZmFsc2UgfSlcblx0XHRcdFx0XHRcdF1cblx0XHRcdFx0XHR9KTtcblxuXHRcdFx0XHR0aGlzLm1lbnVBbGlnbm1lbnQgPSBwbGFjZW1lbnQgYXMgQ29tYm9CdXR0b25QbGFjZW1lbnQ7XG5cblx0XHRcdFx0Ly8gVXNpbmcgQ1NTT00gdG8gbWFuaXB1bGF0ZSBDU1MgdG8gYXZvaWQgY29udGVudCBzZWN1cml0eSBwb2xpY3kgaW5saW5lLXNyY1xuXHRcdFx0XHQvLyBodHRwczovL2dpdGh1Yi5jb20vdzNjL3dlYmFwcHNlYy1jc3AvaXNzdWVzLzIxMlxuXHRcdFx0XHRPYmplY3QuYXNzaWduKHRoaXMubWVudVJlZi5zdHlsZSwge1xuXHRcdFx0XHRcdHBvc2l0aW9uOiBcImZpeGVkXCIsXG5cdFx0XHRcdFx0Ly8gVXNpbmcgdHJhbnNmb3JtIGluc3RlYWQgb2YgdG9wL2xlZnQgcG9zaXRpb24gdG8gaW1wcm92ZSBwZXJmb3JtYW5jZVxuXHRcdFx0XHRcdHRyYW5zZm9ybTogYHRyYW5zbGF0ZSgke3RoaXMucm91bmRCeURQUih4KX1weCwke3RoaXMucm91bmRCeURQUih5KX1weClgXG5cdFx0XHRcdH0pO1xuXHRcdFx0XHR0aGlzLmNoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuXHRcdFx0fSk7XG5cdFx0fVxuXHR9XG59XG4iXX0=
@@ -0,0 +1,32 @@
1
+ import { NgModule } from "@angular/core";
2
+ import { CommonModule } from "@angular/common";
3
+ import { IconModule } from "carbon-components-angular/icon";
4
+ import { ContextMenuModule } from "carbon-components-angular/context-menu";
5
+ import { ButtonModule } from "carbon-components-angular/button";
6
+ import { ComboButtonComponent } from "./combo-button.component";
7
+ import * as i0 from "@angular/core";
8
+ export class ComboButtonModule {
9
+ }
10
+ ComboButtonModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ComboButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
11
+ ComboButtonModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: ComboButtonModule, declarations: [ComboButtonComponent], imports: [CommonModule,
12
+ ButtonModule,
13
+ IconModule,
14
+ ContextMenuModule], exports: [ComboButtonComponent] });
15
+ ComboButtonModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ComboButtonModule, imports: [CommonModule,
16
+ ButtonModule,
17
+ IconModule,
18
+ ContextMenuModule] });
19
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ComboButtonModule, decorators: [{
20
+ type: NgModule,
21
+ args: [{
22
+ imports: [
23
+ CommonModule,
24
+ ButtonModule,
25
+ IconModule,
26
+ ContextMenuModule
27
+ ],
28
+ exports: [ComboButtonComponent],
29
+ declarations: [ComboButtonComponent]
30
+ }]
31
+ }] });
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tYm8tYnV0dG9uLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21iby1idXR0b24vY29tYm8tYnV0dG9uLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDNUQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDM0UsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBRWhFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDOztBQVloRSxNQUFNLE9BQU8saUJBQWlCOzs4R0FBakIsaUJBQWlCOytHQUFqQixpQkFBaUIsaUJBRmQsb0JBQW9CLGFBTmxDLFlBQVk7UUFDWixZQUFZO1FBQ1osVUFBVTtRQUNWLGlCQUFpQixhQUVSLG9CQUFvQjsrR0FHbEIsaUJBQWlCLFlBUjVCLFlBQVk7UUFDWixZQUFZO1FBQ1osVUFBVTtRQUNWLGlCQUFpQjsyRkFLTixpQkFBaUI7a0JBVjdCLFFBQVE7bUJBQUM7b0JBQ1QsT0FBTyxFQUFFO3dCQUNSLFlBQVk7d0JBQ1osWUFBWTt3QkFDWixVQUFVO3dCQUNWLGlCQUFpQjtxQkFDakI7b0JBQ0QsT0FBTyxFQUFFLENBQUMsb0JBQW9CLENBQUM7b0JBQy9CLFlBQVksRUFBRSxDQUFDLG9CQUFvQixDQUFDO2lCQUNwQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9jb21tb25cIjtcblxuaW1wb3J0IHsgSWNvbk1vZHVsZSB9IGZyb20gXCJjYXJib24tY29tcG9uZW50cy1hbmd1bGFyL2ljb25cIjtcbmltcG9ydCB7IENvbnRleHRNZW51TW9kdWxlIH0gZnJvbSBcImNhcmJvbi1jb21wb25lbnRzLWFuZ3VsYXIvY29udGV4dC1tZW51XCI7XG5pbXBvcnQgeyBCdXR0b25Nb2R1bGUgfSBmcm9tIFwiY2FyYm9uLWNvbXBvbmVudHMtYW5ndWxhci9idXR0b25cIjtcblxuaW1wb3J0IHsgQ29tYm9CdXR0b25Db21wb25lbnQgfSBmcm9tIFwiLi9jb21iby1idXR0b24uY29tcG9uZW50XCI7XG5cbkBOZ01vZHVsZSh7XG5cdGltcG9ydHM6IFtcblx0XHRDb21tb25Nb2R1bGUsXG5cdFx0QnV0dG9uTW9kdWxlLFxuXHRcdEljb25Nb2R1bGUsXG5cdFx0Q29udGV4dE1lbnVNb2R1bGVcblx0XSxcblx0ZXhwb3J0czogW0NvbWJvQnV0dG9uQ29tcG9uZW50XSxcblx0ZGVjbGFyYXRpb25zOiBbQ29tYm9CdXR0b25Db21wb25lbnRdXG59KVxuZXhwb3J0IGNsYXNzIENvbWJvQnV0dG9uTW9kdWxlIHsgfVxuIl19
@@ -0,0 +1,3 @@
1
+ export * from "./combo-button.component";
2
+ export * from "./combo-button.module";
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tYm8tYnV0dG9uL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYyx1QkFBdUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gXCIuL2NvbWJvLWJ1dHRvbi5jb21wb25lbnRcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2NvbWJvLWJ1dHRvbi5tb2R1bGVcIjtcbiJdfQ==
@@ -7,11 +7,11 @@ export class ContextMenuDividerComponent {
7
7
  }
8
8
  }
9
9
  ContextMenuDividerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ContextMenuDividerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
10
- ContextMenuDividerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: ContextMenuDividerComponent, selector: "cds-context-menu-divider, ibm-context-menu-divider", host: { properties: { "class.cds--menu-item-divider": "this.dividerClass", "attr.role": "this.role" } }, ngImport: i0, template: "", isInline: true });
10
+ ContextMenuDividerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: ContextMenuDividerComponent, selector: "cds-menu-divider, cds-context-menu-divider, ibm-context-menu-divider", host: { properties: { "class.cds--menu-item-divider": "this.dividerClass", "attr.role": "this.role" } }, ngImport: i0, template: "", isInline: true });
11
11
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ContextMenuDividerComponent, decorators: [{
12
12
  type: Component,
13
13
  args: [{
14
- selector: "cds-context-menu-divider, ibm-context-menu-divider",
14
+ selector: "cds-menu-divider, cds-context-menu-divider, ibm-context-menu-divider",
15
15
  template: ""
16
16
  }]
17
17
  }], propDecorators: { dividerClass: [{
@@ -21,4 +21,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
21
21
  type: HostBinding,
22
22
  args: ["attr.role"]
23
23
  }] } });
24
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGV4dC1tZW51LWRpdmlkZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbnRleHQtbWVudS9jb250ZXh0LW1lbnUtZGl2aWRlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBTXZELE1BQU0sT0FBTywyQkFBMkI7SUFKeEM7UUFLOEMsaUJBQVksR0FBRyxJQUFJLENBQUM7UUFDdkMsU0FBSSxHQUFHLFdBQVcsQ0FBQztLQUM3Qzs7d0hBSFksMkJBQTJCOzRHQUEzQiwyQkFBMkIsbU1BRjdCLEVBQUU7MkZBRUEsMkJBQTJCO2tCQUp2QyxTQUFTO21CQUFDO29CQUNWLFFBQVEsRUFBRSxvREFBb0Q7b0JBQzlELFFBQVEsRUFBRSxFQUFFO2lCQUNaOzhCQUU2QyxZQUFZO3NCQUF4RCxXQUFXO3VCQUFDLDhCQUE4QjtnQkFDakIsSUFBSTtzQkFBN0IsV0FBVzt1QkFBQyxXQUFXIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBIb3N0QmluZGluZyB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5cbkBDb21wb25lbnQoe1xuXHRzZWxlY3RvcjogXCJjZHMtY29udGV4dC1tZW51LWRpdmlkZXIsIGlibS1jb250ZXh0LW1lbnUtZGl2aWRlclwiLFxuXHR0ZW1wbGF0ZTogXCJcIlxufSlcbmV4cG9ydCBjbGFzcyBDb250ZXh0TWVudURpdmlkZXJDb21wb25lbnQge1xuXHRASG9zdEJpbmRpbmcoXCJjbGFzcy5jZHMtLW1lbnUtaXRlbS1kaXZpZGVyXCIpIGRpdmlkZXJDbGFzcyA9IHRydWU7XG5cdEBIb3N0QmluZGluZyhcImF0dHIucm9sZVwiKSByb2xlID0gXCJzZXBhcmF0b3JcIjtcbn1cbiJdfQ==
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGV4dC1tZW51LWRpdmlkZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbnRleHQtbWVudS9jb250ZXh0LW1lbnUtZGl2aWRlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBTXZELE1BQU0sT0FBTywyQkFBMkI7SUFKeEM7UUFLOEMsaUJBQVksR0FBRyxJQUFJLENBQUM7UUFDdkMsU0FBSSxHQUFHLFdBQVcsQ0FBQztLQUM3Qzs7d0hBSFksMkJBQTJCOzRHQUEzQiwyQkFBMkIscU5BRjdCLEVBQUU7MkZBRUEsMkJBQTJCO2tCQUp2QyxTQUFTO21CQUFDO29CQUNWLFFBQVEsRUFBRSxzRUFBc0U7b0JBQ2hGLFFBQVEsRUFBRSxFQUFFO2lCQUNaOzhCQUU2QyxZQUFZO3NCQUF4RCxXQUFXO3VCQUFDLDhCQUE4QjtnQkFDakIsSUFBSTtzQkFBN0IsV0FBVzt1QkFBQyxXQUFXIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBIb3N0QmluZGluZyB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5cbkBDb21wb25lbnQoe1xuXHRzZWxlY3RvcjogXCJjZHMtbWVudS1kaXZpZGVyLCBjZHMtY29udGV4dC1tZW51LWRpdmlkZXIsIGlibS1jb250ZXh0LW1lbnUtZGl2aWRlclwiLFxuXHR0ZW1wbGF0ZTogXCJcIlxufSlcbmV4cG9ydCBjbGFzcyBDb250ZXh0TWVudURpdmlkZXJDb21wb25lbnQge1xuXHRASG9zdEJpbmRpbmcoXCJjbGFzcy5jZHMtLW1lbnUtaXRlbS1kaXZpZGVyXCIpIGRpdmlkZXJDbGFzcyA9IHRydWU7XG5cdEBIb3N0QmluZGluZyhcImF0dHIucm9sZVwiKSByb2xlID0gXCJzZXBhcmF0b3JcIjtcbn1cbiJdfQ==
@@ -37,13 +37,13 @@ export class ContextMenuGroupComponent {
37
37
  }
38
38
  }
39
39
  ContextMenuGroupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ContextMenuGroupComponent, deps: [{ token: i1.ContextMenuSelectionService }], target: i0.ɵɵFactoryTarget.Component });
40
- ContextMenuGroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: ContextMenuGroupComponent, selector: "cds-context-menu-group, ibm-context-menu-group", inputs: { label: "label", value: "value", type: "type" }, outputs: { valueChange: "valueChange" }, host: { properties: { "attr.role": "this.role", "class.cds--menu-item-radio-group": "this.radioGroup", "class.cds--menu-item-group": "this.group", "attr.aria-label": "this.label" } }, providers: [ContextMenuSelectionService], usesOnChanges: true, ngImport: i0, template: `
40
+ ContextMenuGroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: ContextMenuGroupComponent, selector: "cds-menu-group, cds-context-menu-group, ibm-context-menu-group", inputs: { label: "label", value: "value", type: "type" }, outputs: { valueChange: "valueChange" }, host: { properties: { "attr.role": "this.role", "class.cds--menu-item-radio-group": "this.radioGroup", "class.cds--menu-item-group": "this.group", "attr.aria-label": "this.label" } }, providers: [ContextMenuSelectionService], usesOnChanges: true, ngImport: i0, template: `
41
41
  <ng-content></ng-content>
42
42
  `, isInline: true });
43
43
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ContextMenuGroupComponent, decorators: [{
44
44
  type: Component,
45
45
  args: [{
46
- selector: "cds-context-menu-group, ibm-context-menu-group",
46
+ selector: "cds-menu-group, cds-context-menu-group, ibm-context-menu-group",
47
47
  template: `
48
48
  <ng-content></ng-content>
49
49
  `,
@@ -70,4 +70,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
70
70
  }], valueChange: [{
71
71
  type: Output
72
72
  }] } });
73
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGV4dC1tZW51LWdyb3VwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb250ZXh0LW1lbnUvY29udGV4dC1tZW51LWdyb3VwLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ04sU0FBUyxFQUNULFlBQVksRUFDWixXQUFXLEVBQ1gsS0FBSyxFQUlMLE1BQU0sRUFFTixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3BDLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDOzs7QUFTL0UsTUFBTSxPQUFPLHlCQUF5QjtJQVlyQyxZQUFzQiwyQkFBd0Q7UUFBeEQsZ0NBQTJCLEdBQTNCLDJCQUEyQixDQUE2QjtRQVhwRCxTQUFJLEdBQUcsT0FBTyxDQUFDO1FBSUEsVUFBSyxHQUFHLElBQUksQ0FBQztRQUM3QyxVQUFLLEdBQVUsRUFBRSxDQUFDO1FBQ2xCLFNBQUksR0FBZ0MsSUFBSSxDQUFDO1FBQ3hDLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQVMsQ0FBQztRQUUxQyxpQkFBWSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7SUFFd0MsQ0FBQztJQVZuRixJQUFxRCxVQUFVLEtBQU0sT0FBTyxJQUFJLENBQUMsSUFBSSxLQUFLLE9BQU8sQ0FBQyxDQUFDLENBQUM7SUFDcEcsSUFBK0MsS0FBSyxLQUFLLE9BQU8sSUFBSSxDQUFDLElBQUksS0FBSyxVQUFVLENBQUMsQ0FBQyxDQUFDO0lBVzNGLFFBQVE7UUFDUCxNQUFNLEVBQUUsbUJBQW1CLEVBQUUsR0FBRyxJQUFJLENBQUMsMkJBQTJCLENBQUM7UUFDakUsTUFBTSxZQUFZLEdBQUcsbUJBQW1CLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQzFELElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzlCLENBQUMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVELFdBQVcsQ0FBQyxPQUFzQjtRQUNqQyxJQUFJLE9BQU8sQ0FBQyxLQUFLLEVBQUU7WUFDbEIsSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLE9BQU8sRUFBRTtnQkFDMUIsSUFBSSxDQUFDLDJCQUEyQixDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxDQUFDO2FBQ3pFO1lBRUQsSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLFVBQVUsRUFBRTtnQkFDN0IsSUFBSSxDQUFDLDJCQUEyQixDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLENBQUM7YUFDOUU7U0FDRDtJQUNGLENBQUM7SUFFRCxXQUFXO1FBQ1YsSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNqQyxDQUFDOztzSEFwQ1cseUJBQXlCOzBHQUF6Qix5QkFBeUIsb1dBRjFCLENBQUMsMkJBQTJCLENBQUMsK0NBSDlCOztFQUVUOzJGQUdXLHlCQUF5QjtrQkFQckMsU0FBUzttQkFBQztvQkFDVixRQUFRLEVBQUUsZ0RBQWdEO29CQUMxRCxRQUFRLEVBQUU7O0VBRVQ7b0JBQ0QsU0FBUyxFQUFFLENBQUMsMkJBQTJCLENBQUM7aUJBQ3hDO2tIQUUwQixJQUFJO3NCQUE3QixXQUFXO3VCQUFDLFdBQVc7Z0JBQzZCLFVBQVU7c0JBQTlELFdBQVc7dUJBQUMsa0NBQWtDO2dCQUNBLEtBQUs7c0JBQW5ELFdBQVc7dUJBQUMsNEJBQTRCO2dCQUVBLEtBQUs7c0JBQTdDLFdBQVc7dUJBQUMsaUJBQWlCOztzQkFBRyxLQUFLO2dCQUM3QixLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNJLFdBQVc7c0JBQXBCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuXHRDb21wb25lbnQsXG5cdEV2ZW50RW1pdHRlcixcblx0SG9zdEJpbmRpbmcsXG5cdElucHV0LFxuXHRPbkNoYW5nZXMsXG5cdE9uRGVzdHJveSxcblx0T25Jbml0LFxuXHRPdXRwdXQsXG5cdFNpbXBsZUNoYW5nZXNcbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gXCJyeGpzXCI7XG5pbXBvcnQgeyBDb250ZXh0TWVudVNlbGVjdGlvblNlcnZpY2UgfSBmcm9tIFwiLi9jb250ZXh0LW1lbnUtc2VsZWN0aW9uLnNlcnZpY2VcIjtcblxuQENvbXBvbmVudCh7XG5cdHNlbGVjdG9yOiBcImNkcy1jb250ZXh0LW1lbnUtZ3JvdXAsIGlibS1jb250ZXh0LW1lbnUtZ3JvdXBcIixcblx0dGVtcGxhdGU6IGBcblx0XHQ8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG5cdGAsXG5cdHByb3ZpZGVyczogW0NvbnRleHRNZW51U2VsZWN0aW9uU2VydmljZV1cbn0pXG5leHBvcnQgY2xhc3MgQ29udGV4dE1lbnVHcm91cENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3kge1xuXHRASG9zdEJpbmRpbmcoXCJhdHRyLnJvbGVcIikgcm9sZSA9IFwiZ3JvdXBcIjtcblx0QEhvc3RCaW5kaW5nKFwiY2xhc3MuY2RzLS1tZW51LWl0ZW0tcmFkaW8tZ3JvdXBcIikgZ2V0IHJhZGlvR3JvdXAoKSB7ICByZXR1cm4gdGhpcy50eXBlID09PSBcInJhZGlvXCI7IH1cblx0QEhvc3RCaW5kaW5nKFwiY2xhc3MuY2RzLS1tZW51LWl0ZW0tZ3JvdXBcIikgZ2V0IGdyb3VwKCkgeyByZXR1cm4gdGhpcy50eXBlID09PSBcImNoZWNrYm94XCI7IH1cblxuXHRASG9zdEJpbmRpbmcoXCJhdHRyLmFyaWEtbGFiZWxcIikgQElucHV0KCkgbGFiZWwgPSBudWxsO1xuXHRASW5wdXQoKSB2YWx1ZTogYW55W10gPSBbXTtcblx0QElucHV0KCkgdHlwZTogbnVsbCB8IFwicmFkaW9cIiB8IFwiY2hlY2tib3hcIiA9IG51bGw7XG5cdEBPdXRwdXQoKSB2YWx1ZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8YW55W10+KCk7XG5cblx0cHJpdmF0ZSBzdWJzY3JpcHRpb24gPSBuZXcgU3Vic2NyaXB0aW9uKCk7XG5cblx0Y29uc3RydWN0b3IocHJvdGVjdGVkIGNvbnRleHRNZW51U2VsZWN0aW9uU2VydmljZTogQ29udGV4dE1lbnVTZWxlY3Rpb25TZXJ2aWNlKSB7IH1cblxuXHRuZ09uSW5pdCgpIHtcblx0XHRjb25zdCB7IHNlbGVjdGlvbk9ic2VydmFibGUgfSA9IHRoaXMuY29udGV4dE1lbnVTZWxlY3Rpb25TZXJ2aWNlO1xuXHRcdGNvbnN0IHN1YnNjcmlwdGlvbiA9IHNlbGVjdGlvbk9ic2VydmFibGUuc3Vic2NyaWJlKHZhbHVlID0+IHtcblx0XHRcdHRoaXMudmFsdWVDaGFuZ2UuZW1pdCh2YWx1ZSk7XG5cdFx0fSk7XG5cdFx0dGhpcy5zdWJzY3JpcHRpb24uYWRkKHN1YnNjcmlwdGlvbik7XG5cdH1cblxuXHRuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG5cdFx0aWYgKGNoYW5nZXMudmFsdWUpIHtcblx0XHRcdGlmICh0aGlzLnR5cGUgPT09IFwicmFkaW9cIikge1xuXHRcdFx0XHR0aGlzLmNvbnRleHRNZW51U2VsZWN0aW9uU2VydmljZS5zZWxlY3RSYWRpbyhjaGFuZ2VzLnZhbHVlLmN1cnJlbnRWYWx1ZSk7XG5cdFx0XHR9XG5cblx0XHRcdGlmICh0aGlzLnR5cGUgPT09IFwiY2hlY2tib3hcIikge1xuXHRcdFx0XHR0aGlzLmNvbnRleHRNZW51U2VsZWN0aW9uU2VydmljZS5zZWxlY3RDaGVja2JveGVzKGNoYW5nZXMudmFsdWUuY3VycmVudFZhbHVlKTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHRuZ09uRGVzdHJveSgpIHtcblx0XHR0aGlzLnN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuXHR9XG59XG4iXX0=
73
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGV4dC1tZW51LWdyb3VwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb250ZXh0LW1lbnUvY29udGV4dC1tZW51LWdyb3VwLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ04sU0FBUyxFQUNULFlBQVksRUFDWixXQUFXLEVBQ1gsS0FBSyxFQUlMLE1BQU0sRUFFTixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3BDLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDOzs7QUFTL0UsTUFBTSxPQUFPLHlCQUF5QjtJQVlyQyxZQUFzQiwyQkFBd0Q7UUFBeEQsZ0NBQTJCLEdBQTNCLDJCQUEyQixDQUE2QjtRQVhwRCxTQUFJLEdBQUcsT0FBTyxDQUFDO1FBSUEsVUFBSyxHQUFHLElBQUksQ0FBQztRQUM3QyxVQUFLLEdBQVUsRUFBRSxDQUFDO1FBQ2xCLFNBQUksR0FBZ0MsSUFBSSxDQUFDO1FBQ3hDLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQVMsQ0FBQztRQUUxQyxpQkFBWSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7SUFFdUMsQ0FBQztJQVZsRixJQUFxRCxVQUFVLEtBQU0sT0FBTyxJQUFJLENBQUMsSUFBSSxLQUFLLE9BQU8sQ0FBQyxDQUFDLENBQUM7SUFDcEcsSUFBK0MsS0FBSyxLQUFLLE9BQU8sSUFBSSxDQUFDLElBQUksS0FBSyxVQUFVLENBQUMsQ0FBQyxDQUFDO0lBVzNGLFFBQVE7UUFDUCxNQUFNLEVBQUUsbUJBQW1CLEVBQUUsR0FBRyxJQUFJLENBQUMsMkJBQTJCLENBQUM7UUFDakUsTUFBTSxZQUFZLEdBQUcsbUJBQW1CLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQzFELElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzlCLENBQUMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVELFdBQVcsQ0FBQyxPQUFzQjtRQUNqQyxJQUFJLE9BQU8sQ0FBQyxLQUFLLEVBQUU7WUFDbEIsSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLE9BQU8sRUFBRTtnQkFDMUIsSUFBSSxDQUFDLDJCQUEyQixDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxDQUFDO2FBQ3pFO1lBRUQsSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLFVBQVUsRUFBRTtnQkFDN0IsSUFBSSxDQUFDLDJCQUEyQixDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLENBQUM7YUFDOUU7U0FDRDtJQUNGLENBQUM7SUFFRCxXQUFXO1FBQ1YsSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNqQyxDQUFDOztzSEFwQ1cseUJBQXlCOzBHQUF6Qix5QkFBeUIsb1hBRjFCLENBQUMsMkJBQTJCLENBQUMsK0NBSDlCOztFQUVUOzJGQUdXLHlCQUF5QjtrQkFQckMsU0FBUzttQkFBQztvQkFDVixRQUFRLEVBQUUsZ0VBQWdFO29CQUMxRSxRQUFRLEVBQUU7O0VBRVQ7b0JBQ0QsU0FBUyxFQUFFLENBQUMsMkJBQTJCLENBQUM7aUJBQ3hDO2tIQUUwQixJQUFJO3NCQUE3QixXQUFXO3VCQUFDLFdBQVc7Z0JBQzZCLFVBQVU7c0JBQTlELFdBQVc7dUJBQUMsa0NBQWtDO2dCQUNBLEtBQUs7c0JBQW5ELFdBQVc7dUJBQUMsNEJBQTRCO2dCQUVBLEtBQUs7c0JBQTdDLFdBQVc7dUJBQUMsaUJBQWlCOztzQkFBRyxLQUFLO2dCQUM3QixLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNJLFdBQVc7c0JBQXBCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuXHRDb21wb25lbnQsXG5cdEV2ZW50RW1pdHRlcixcblx0SG9zdEJpbmRpbmcsXG5cdElucHV0LFxuXHRPbkNoYW5nZXMsXG5cdE9uRGVzdHJveSxcblx0T25Jbml0LFxuXHRPdXRwdXQsXG5cdFNpbXBsZUNoYW5nZXNcbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gXCJyeGpzXCI7XG5pbXBvcnQgeyBDb250ZXh0TWVudVNlbGVjdGlvblNlcnZpY2UgfSBmcm9tIFwiLi9jb250ZXh0LW1lbnUtc2VsZWN0aW9uLnNlcnZpY2VcIjtcblxuQENvbXBvbmVudCh7XG5cdHNlbGVjdG9yOiBcImNkcy1tZW51LWdyb3VwLCBjZHMtY29udGV4dC1tZW51LWdyb3VwLCBpYm0tY29udGV4dC1tZW51LWdyb3VwXCIsXG5cdHRlbXBsYXRlOiBgXG5cdFx0PG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuXHRgLFxuXHRwcm92aWRlcnM6IFtDb250ZXh0TWVudVNlbGVjdGlvblNlcnZpY2VdXG59KVxuZXhwb3J0IGNsYXNzIENvbnRleHRNZW51R3JvdXBDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcywgT25EZXN0cm95IHtcblx0QEhvc3RCaW5kaW5nKFwiYXR0ci5yb2xlXCIpIHJvbGUgPSBcImdyb3VwXCI7XG5cdEBIb3N0QmluZGluZyhcImNsYXNzLmNkcy0tbWVudS1pdGVtLXJhZGlvLWdyb3VwXCIpIGdldCByYWRpb0dyb3VwKCkgeyAgcmV0dXJuIHRoaXMudHlwZSA9PT0gXCJyYWRpb1wiOyB9XG5cdEBIb3N0QmluZGluZyhcImNsYXNzLmNkcy0tbWVudS1pdGVtLWdyb3VwXCIpIGdldCBncm91cCgpIHsgcmV0dXJuIHRoaXMudHlwZSA9PT0gXCJjaGVja2JveFwiOyB9XG5cblx0QEhvc3RCaW5kaW5nKFwiYXR0ci5hcmlhLWxhYmVsXCIpIEBJbnB1dCgpIGxhYmVsID0gbnVsbDtcblx0QElucHV0KCkgdmFsdWU6IGFueVtdID0gW107XG5cdEBJbnB1dCgpIHR5cGU6IG51bGwgfCBcInJhZGlvXCIgfCBcImNoZWNrYm94XCIgPSBudWxsO1xuXHRAT3V0cHV0KCkgdmFsdWVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGFueVtdPigpO1xuXG5cdHByaXZhdGUgc3Vic2NyaXB0aW9uID0gbmV3IFN1YnNjcmlwdGlvbigpO1xuXG5cdGNvbnN0cnVjdG9yKHByb3RlY3RlZCBjb250ZXh0TWVudVNlbGVjdGlvblNlcnZpY2U6IENvbnRleHRNZW51U2VsZWN0aW9uU2VydmljZSkge31cblxuXHRuZ09uSW5pdCgpIHtcblx0XHRjb25zdCB7IHNlbGVjdGlvbk9ic2VydmFibGUgfSA9IHRoaXMuY29udGV4dE1lbnVTZWxlY3Rpb25TZXJ2aWNlO1xuXHRcdGNvbnN0IHN1YnNjcmlwdGlvbiA9IHNlbGVjdGlvbk9ic2VydmFibGUuc3Vic2NyaWJlKHZhbHVlID0+IHtcblx0XHRcdHRoaXMudmFsdWVDaGFuZ2UuZW1pdCh2YWx1ZSk7XG5cdFx0fSk7XG5cdFx0dGhpcy5zdWJzY3JpcHRpb24uYWRkKHN1YnNjcmlwdGlvbik7XG5cdH1cblxuXHRuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG5cdFx0aWYgKGNoYW5nZXMudmFsdWUpIHtcblx0XHRcdGlmICh0aGlzLnR5cGUgPT09IFwicmFkaW9cIikge1xuXHRcdFx0XHR0aGlzLmNvbnRleHRNZW51U2VsZWN0aW9uU2VydmljZS5zZWxlY3RSYWRpbyhjaGFuZ2VzLnZhbHVlLmN1cnJlbnRWYWx1ZSk7XG5cdFx0XHR9XG5cblx0XHRcdGlmICh0aGlzLnR5cGUgPT09IFwiY2hlY2tib3hcIikge1xuXHRcdFx0XHR0aGlzLmNvbnRleHRNZW51U2VsZWN0aW9uU2VydmljZS5zZWxlY3RDaGVja2JveGVzKGNoYW5nZXMudmFsdWUuY3VycmVudFZhbHVlKTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHRuZ09uRGVzdHJveSgpIHtcblx0XHR0aGlzLnN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuXHR9XG59XG4iXX0=
@@ -14,6 +14,8 @@ export class ContextMenuItemComponent {
14
14
  this.tabindex = -1;
15
15
  this.ariaHasPopup = null;
16
16
  this.ariaExpanded = null;
17
+ this.disabled = false;
18
+ this.danger = false;
17
19
  this.label = "";
18
20
  this.info = "";
19
21
  this.type = null;
@@ -21,6 +23,7 @@ export class ContextMenuItemComponent {
21
23
  this.icon = "";
22
24
  this.value = "";
23
25
  this.checkedChange = new EventEmitter();
26
+ this.itemClick = new EventEmitter();
24
27
  this.hasChildren = false;
25
28
  this.selectable = false;
26
29
  this.subscriptions = new Subscription();
@@ -29,6 +32,9 @@ export class ContextMenuItemComponent {
29
32
  return this.type === "checkbox" ?
30
33
  (this.checked ? true : false) : null;
31
34
  }
35
+ get ariaDisabled() {
36
+ return this.disabled;
37
+ }
32
38
  ngOnInit() {
33
39
  switch (this.type) {
34
40
  case "checkbox": {
@@ -82,6 +88,15 @@ export class ContextMenuItemComponent {
82
88
  this.contextMenuSelectionService.selectCheckbox(this.value);
83
89
  }
84
90
  }
91
+ if (!this.disabled) {
92
+ this.itemClick.emit({
93
+ event,
94
+ label: this.label,
95
+ info: this.info,
96
+ value: this.value,
97
+ type: this.type
98
+ });
99
+ }
85
100
  }
86
101
  handleSelection(selected) {
87
102
  this.checked = selected;
@@ -126,7 +141,7 @@ export class ContextMenuItemComponent {
126
141
  }
127
142
  }
128
143
  ContextMenuItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ContextMenuItemComponent, deps: [{ token: i0.ElementRef }, { token: i1.ContextMenuSelectionService, optional: true }], target: i0.ɵɵFactoryTarget.Component });
129
- ContextMenuItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: ContextMenuItemComponent, selector: "cds-context-menu-item, ibm-context-menu-item", inputs: { label: "label", info: "info", type: "type", checked: "checked", icon: "icon", value: "value" }, outputs: { checkedChange: "checkedChange" }, host: { listeners: { "keydown.enter": "handleClick($event)", "keydown.space": "handleClick($event)", "click": "handleClick($event)", "mouseover": "handleMouseOver()", "mouseout": "handleMouseOut()", "focus": "handleFocus()", "blur": "handleBlur()" }, properties: { "class.cds--menu-item": "this.optionClass", "attr.role": "this.role", "attr.tabindex": "this.tabindex", "attr.aria-haspopup": "this.ariaHasPopup", "attr.aria-expanded": "this.ariaExpanded", "attr.aria-checked": "this.ariaChecked" } }, queries: [{ propertyName: "childContextMenu", first: true, predicate: ContextMenuComponent, descendants: true, static: true }], ngImport: i0, template: `
144
+ ContextMenuItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: ContextMenuItemComponent, selector: "cds-menu-item, cds-context-menu-item, ibm-context-menu-item", inputs: { disabled: "disabled", danger: "danger", label: "label", info: "info", type: "type", checked: "checked", icon: "icon", value: "value" }, outputs: { checkedChange: "checkedChange", itemClick: "itemClick" }, host: { listeners: { "keydown.enter": "handleClick($event)", "keydown.space": "handleClick($event)", "click": "handleClick($event)", "mouseover": "handleMouseOver()", "mouseout": "handleMouseOut()", "focus": "handleFocus()", "blur": "handleBlur()" }, properties: { "class.cds--menu-item": "this.optionClass", "attr.role": "this.role", "attr.tabindex": "this.tabindex", "attr.aria-haspopup": "this.ariaHasPopup", "attr.aria-expanded": "this.ariaExpanded", "attr.aria-checked": "this.ariaChecked", "attr.aria-disabled": "this.ariaDisabled", "class.cds--menu-item--disabled": "this.disabled", "class.cds--menu-item--danger": "this.danger" } }, queries: [{ propertyName: "childContextMenu", first: true, predicate: ContextMenuComponent, descendants: true, static: true }], ngImport: i0, template: `
130
145
  <div class="cds--menu-item__icon">
131
146
  <svg *ngIf="selectable && checked" cdsIcon="checkmark" size="16"></svg>
132
147
  <svg *ngIf="!selectable && icon" [cdsIcon]="icon" size="16"></svg>
@@ -140,7 +155,7 @@ ContextMenuItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0
140
155
  `, isInline: true, styles: [":host{grid-template-columns:1rem 1fr max-content}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.IconDirective, selector: "[cdsIcon], [ibmIcon]", inputs: ["ibmIcon", "cdsIcon", "size", "title", "ariaLabel", "ariaLabelledBy", "ariaHidden", "isFocusable"] }] });
141
156
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ContextMenuItemComponent, decorators: [{
142
157
  type: Component,
143
- args: [{ selector: "cds-context-menu-item, ibm-context-menu-item", template: `
158
+ args: [{ selector: "cds-menu-item, cds-context-menu-item, ibm-context-menu-item", template: `
144
159
  <div class="cds--menu-item__icon">
145
160
  <svg *ngIf="selectable && checked" cdsIcon="checkmark" size="16"></svg>
146
161
  <svg *ngIf="!selectable && icon" [cdsIcon]="icon" size="16"></svg>
@@ -172,6 +187,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
172
187
  }], ariaChecked: [{
173
188
  type: HostBinding,
174
189
  args: ["attr.aria-checked"]
190
+ }], ariaDisabled: [{
191
+ type: HostBinding,
192
+ args: ["attr.aria-disabled"]
193
+ }], disabled: [{
194
+ type: Input
195
+ }, {
196
+ type: HostBinding,
197
+ args: ["class.cds--menu-item--disabled"]
198
+ }], danger: [{
199
+ type: Input
200
+ }, {
201
+ type: HostBinding,
202
+ args: ["class.cds--menu-item--danger"]
175
203
  }], label: [{
176
204
  type: Input
177
205
  }], info: [{
@@ -186,6 +214,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
186
214
  type: Input
187
215
  }], checkedChange: [{
188
216
  type: Output
217
+ }], itemClick: [{
218
+ type: Output
189
219
  }], childContextMenu: [{
190
220
  type: ContentChild,
191
221
  args: [ContextMenuComponent, { static: true }]
@@ -211,4 +241,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
211
241
  type: HostListener,
212
242
  args: ["blur"]
213
243
  }] } });
214
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGV4dC1tZW51LWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbnRleHQtbWVudS9jb250ZXh0LW1lbnUtaXRlbS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNOLFNBQVMsRUFDVCxXQUFXLEVBQ1gsS0FBSyxFQUNMLE1BQU0sRUFDTixZQUFZLEVBRVosWUFBWSxFQUNaLFlBQVksRUFDWixRQUFRLEVBSVIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUVwQyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7Ozs7QUFzQmhFLE1BQU0sT0FBTyx3QkFBd0I7SUF5QnBDLFlBQ1csVUFBc0IsRUFDViwyQkFBd0Q7UUFEcEUsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUNWLGdDQUEyQixHQUEzQiwyQkFBMkIsQ0FBNkI7UUExQjFDLGdCQUFXLEdBQUcsSUFBSSxDQUFDO1FBQzlCLFNBQUksR0FBRyxVQUFVLENBQUM7UUFDZCxhQUFRLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDVCxpQkFBWSxHQUFHLElBQUksQ0FBQztRQUNwQixpQkFBWSxHQUFHLElBQUksQ0FBQztRQU05QyxVQUFLLEdBQUcsRUFBRSxDQUFDO1FBQ1gsU0FBSSxHQUFHLEVBQUUsQ0FBQztRQUNWLFNBQUksR0FBZ0MsSUFBSSxDQUFDO1FBQ3pDLFlBQU8sR0FBRyxLQUFLLENBQUM7UUFDaEIsU0FBSSxHQUFHLEVBQUUsQ0FBQztRQUNWLFVBQUssR0FBRyxFQUFFLENBQUM7UUFDVixrQkFBYSxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFFdEQsZ0JBQVcsR0FBRyxLQUFLLENBQUM7UUFDcEIsZUFBVSxHQUFHLEtBQUssQ0FBQztRQUdYLGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztJQUt2QyxDQUFD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LFVBQVU7Z0JBTXhCLFdBQVc7c0JBRFYsWUFBWTt1QkFBQyxPQUFPO2dCQVNyQixVQUFVO3NCQURULFlBQVk7dUJBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG5cdENvbXBvbmVudCxcblx0SG9zdEJpbmRpbmcsXG5cdElucHV0LFxuXHRPdXRwdXQsXG5cdEV2ZW50RW1pdHRlcixcblx0RWxlbWVudFJlZixcblx0SG9zdExpc3RlbmVyLFxuXHRDb250ZW50Q2hpbGQsXG5cdE9wdGlvbmFsLFxuXHRPbkluaXQsXG5cdEFmdGVyQ29udGVudEluaXQsXG5cdE9uRGVzdHJveVxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSBcInJ4anNcIjtcbmltcG9ydCB7IENvbnRleHRNZW51U2VsZWN0aW9uU2VydmljZSB9IGZyb20gXCIuL2NvbnRleHQtbWVudS1zZWxlY3Rpb24uc2VydmljZVwiO1xuaW1wb3J0IHsgQ29udGV4dE1lbnVDb21wb25lbnQgfSBmcm9tIFwiLi9jb250ZXh0LW1lbnUuY29tcG9uZW50XCI7XG5cbkBDb21wb25lbnQoe1xuXHRzZWxlY3RvcjogXCJjZHMtY29udGV4dC1tZW51LWl0ZW0sIGlibS1jb250ZXh0LW1lbnUtaXRlbVwiLFxuXHR0ZW1wbGF0ZTogYFxuXHRcdDxkaXYgY2xhc3M9XCJjZHMtLW1lbnUtaXRlbV9faWNvblwiPlxuXHRcdFx0PHN2ZyAqbmdJZj1cInNlbGVjdGFibGUgJiYgY2hlY2tlZFwiIGNkc0ljb249XCJjaGVja21hcmtcIiBzaXplPVwiMTZcIj48L3N2Zz5cblx0XHRcdDxzdmcgKm5nSWY9XCIhc2VsZWN0YWJsZSAmJiBpY29uXCIgW2Nkc0ljb25dPVwiaWNvblwiIHNpemU9XCIxNlwiPjwvc3ZnPlxuXHRcdDwvZGl2PlxuXHRcdDxkaXYgY2xhc3M9XCJjZHMtLW1lbnUtaXRlbV9fbGFiZWxcIiBbdGl0bGVdPVwibGFiZWxcIj57e2xhYmVsfX08L2Rpdj5cblx0XHQ8ZGl2IGNsYXNzPVwiY2RzLS1tZW51LWl0ZW1fX3Nob3J0Y3V0XCI+XG5cdFx0XHQ8bmctY29udGFpbmVyICpuZ0lmPVwiaW5mb1wiPnt7aW5mb319PC9uZy1jb250YWluZXI+XG5cdFx0XHQ8c3ZnICpuZ0lmPVwiaGFzQ2hpbGRyZW5cIiBjZHNJY29uPVwiY2FyZXQtLXJpZ2h0XCIgc2l6ZT1cIjE2XCI+PC9zdmc+XG5cdFx0PC9kaXY+XG5cdFx0PG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuXHRgLFxuXHRzdHlsZXM6IFtgXG5cdFx0Omhvc3Qge1xuXHRcdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxcmVtIDFmciBtYXgtY29udGVudDtcblx0XHR9XG5cdGBdXG59KVxuZXhwb3J0IGNsYXNzIENvbnRleHRNZW51SXRlbUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJDb250ZW50SW5pdCwgT25EZXN0cm95IHtcblx0QEhvc3RCaW5kaW5nKFwiY2xhc3MuY2RzLS1tZW51LWl0ZW1cIikgb3B0aW9uQ2xhc3MgPSB0cnVlO1xuXHRASG9zdEJpbmRpbmcoXCJhdHRyLnJvbGVcIikgcm9sZSA9IFwibWVudWl0ZW1cIjtcblx0QEhvc3RCaW5kaW5nKFwiYXR0ci50YWJpbmRleFwiKSB0YWJpbmRleCA9IC0xO1xuXHRASG9zdEJpbmRpbmcoXCJhdHRyLmFyaWEtaGFzcG9wdXBcIikgYXJpYUhhc1BvcHVwID0gbnVsbDtcblx0QEhvc3RCaW5kaW5nKFwiYXR0ci5hcmlhLWV4cGFuZGVkXCIpIGFyaWFFeHBhbmRlZCA9IG51bGw7XG5cdEBIb3N0QmluZGluZyhcImF0dHIuYXJpYS1jaGVja2VkXCIpIGdldCBhcmlhQ2hlY2tlZCgpIHtcblx0XHRyZXR1cm4gdGhpcy50eXBlID09PSBcImNoZWNrYm94XCIgP1xuXHRcdFx0KHRoaXMuY2hlY2tlZCA/IHRydWUgOiBmYWxzZSkgOiBudWxsO1xuXHR9XG5cblx0QElucHV0KCkgbGFiZWwgPSBcIlwiO1xuXHRASW5wdXQoKSBpbmZvID0gXCJcIjtcblx0QElucHV0KCkgdHlwZTogbnVsbCB8IFwiY2hlY2tib3hcIiB8IFwicmFkaW9cIiA9IG51bGw7XG5cdEBJbnB1dCgpIGNoZWNrZWQgPSBmYWxzZTtcblx0QElucHV0KCkgaWNvbiA9IFwiXCI7XG5cdEBJbnB1dCgpIHZhbHVlID0gXCJcIjtcblx0QE91dHB1dCgpIGNoZWNrZWRDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG5cblx0aGFzQ2hpbGRyZW4gPSBmYWxzZTtcblx0c2VsZWN0YWJsZSA9IGZhbHNlO1xuXG5cdEBDb250ZW50Q2hpbGQoQ29udGV4dE1lbnVDb21wb25lbnQsIHsgc3RhdGljOiB0cnVlIH0pIGNoaWxkQ29udGV4dE1lbnU6IENvbnRleHRNZW51Q29tcG9uZW50O1xuXHRwcml2YXRlIHN1YnNjcmlwdGlvbnMgPSBuZXcgU3Vic2NyaXB0aW9uKCk7XG5cblx0Y29uc3RydWN0b3IoXG5cdFx0cHJvdGVjdGVkIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXG5cdFx0QE9wdGlvbmFsKCkgcHJvdGVjdGVkIGNvbnRleHRNZW51U2VsZWN0aW9uU2VydmljZTogQ29udGV4dE1lbnVTZWxlY3Rpb25TZXJ2aWNlXG5cdCkgeyB9XG5cblx0bmdPbkluaXQoKSB7XG5cdFx0c3dpdGNoICh0aGlzLnR5cGUpIHtcblx0XHRcdGNhc2UgXCJjaGVja2JveFwiOiB7XG5cdFx0XHRcdHRoaXMucm9sZSA9IFwibWVudWl0ZW1jaGVja2JveFwiO1xuXHRcdFx0XHR0aGlzLnNlbGVjdGFibGUgPSB0cnVlO1xuXHRcdFx0XHRicmVhaztcblx0XHRcdH1cblx0XHRcdGNhc2UgXCJyYWRpb1wiOiB7XG5cdFx0XHRcdHRoaXMucm9sZSA9IFwibWVudWl0ZW1yYWRpb1wiO1xuXHRcdFx0XHR0aGlzLnNlbGVjdGFibGUgPSB0cnVlO1xuXHRcdFx0XHRicmVhaztcblx0XHRcdH1cblx0XHRcdGRlZmF1bHQ6IHtcblx0XHRcdFx0dGhpcy5yb2xlID0gXCJtZW51aXRlbVwiO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdGlmICh0aGlzLnR5cGUgJiYgdGhpcy5jb250ZXh0TWVudVNlbGVjdGlvblNlcnZpY2UgJiYgdGhpcy52YWx1ZSkge1xuXHRcdFx0Y29uc3QgeyBzZWxlY3Rpb25PYnNlcnZhYmxlIH0gPSB0aGlzLmNvbnRleHRNZW51U2VsZWN0aW9uU2VydmljZTtcblx0XHRcdGNvbnN0IHN1YnNjcmlwdGlvbiA9IHNlbGVjdGlvbk9ic2VydmFibGUuc3Vic2NyaWJlKCh2YWx1ZSkgPT4ge1xuXHRcdFx0XHRpZiAodGhpcy50eXBlID09PSBcInJhZGlvXCIpIHtcblx0XHRcdFx0XHR0aGlzLmhhbmRsZVNlbGVjdGlvbih2YWx1ZSA9PT0gdGhpcy52YWx1ZSk7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRpZiAodGhpcy50eXBlID09PSBcImNoZWNrYm94XCIpIHtcblx0XHRcdFx0XHR0aGlzLmhhbmRsZVNlbGVjdGlvbih2YWx1ZS5pbmNsdWRlcyh0aGlzLnZhbHVlKSk7XG5cdFx0XHRcdH1cblx0XHRcdH0pO1xuXHRcdFx0dGhpcy5zdWJzY3JpcHRpb25zLmFkZChzdWJzY3JpcHRpb24pO1xuXHRcdH1cblx0fVxuXG5cdG5nQWZ0ZXJDb250ZW50SW5pdCgpIHtcblx0XHRpZiAodGhpcy5jaGlsZENvbnRleHRNZW51KSB7XG5cdFx0XHR0aGlzLmhhc0NoaWxkcmVuID0gdHJ1ZTtcblx0XHRcdHRoaXMuYXJpYUhhc1BvcHVwID0gdHJ1ZTtcblx0XHRcdHRoaXMuYXJpYUV4cGFuZGVkID0gZmFsc2U7XG5cdFx0fVxuXHR9XG5cblx0QEhvc3RMaXN0ZW5lcihcImtleWRvd24uZW50ZXJcIiwgW1wiJGV2ZW50XCJdKVxuXHRASG9zdExpc3RlbmVyKFwia2V5ZG93bi5zcGFjZVwiLCBbXCIkZXZlbnRcIl0pXG5cdEBIb3N0TGlzdGVuZXIoXCJjbGlja1wiLCBbXCIkZXZlbnRcIl0pXG5cdGhhbmRsZUNsaWNrKGV2ZW50OiBNb3VzZUV2ZW50ICYgS2V5Ym9hcmRFdmVudCkge1xuXHRcdGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuXHRcdGlmICh0aGlzLmhhc0NoaWxkcmVuKSB7XG5cdFx0XHR0aGlzLm9wZW5TdWJNZW51KCk7XG5cdFx0XHR0aGlzLmNoaWxkQ29udGV4dE1lbnUuZm9jdXNNZW51KCk7XG5cdFx0fVxuXG5cdFx0aWYgKHRoaXMudHlwZSkge1xuXHRcdFx0dGhpcy5oYW5kbGVTZWxlY3Rpb24oIXRoaXMuY2hlY2tlZCk7XG5cdFx0fVxuXG5cdFx0aWYgKHRoaXMuY29udGV4dE1lbnVTZWxlY3Rpb25TZXJ2aWNlKSB7XG5cdFx0XHRpZiAodGhpcy50eXBlID09PSBcInJhZGlvXCIpIHtcblx0XHRcdFx0dGhpcy5jb250ZXh0TWVudVNlbGVjdGlvblNlcnZpY2Uuc2VsZWN0UmFkaW8odGhpcy52YWx1ZSk7XG5cdFx0XHR9XG5cblx0XHRcdGlmICh0aGlzLnR5cGUgPT09IFwiY2hlY2tib3hcIikge1xuXHRcdFx0XHR0aGlzLmNvbnRleHRNZW51U2VsZWN0aW9uU2VydmljZS5zZWxlY3RDaGVja2JveCh0aGlzLnZhbHVlKTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHRoYW5kbGVTZWxlY3Rpb24oc2VsZWN0ZWQ6IGJvb2xlYW4pIHtcblx0XHR0aGlzLmNoZWNrZWQgPSBzZWxlY3RlZDtcblx0XHR0aGlzLmNoZWNrZWRDaGFuZ2UuZW1pdCh0aGlzLmNoZWNrZWQpO1xuXHR9XG5cblx0b3BlblN1Yk1lbnUoKSB7XG5cdFx0aWYgKHRoaXMuY2hpbGRDb250ZXh0TWVudSkge1xuXHRcdFx0dGhpcy5jaGlsZENvbnRleHRNZW51Lm9wZW4gPSB0cnVlO1xuXHRcdFx0dGhpcy5hcmlhRXhwYW5kZWQgPSB0cnVlO1xuXHRcdFx0Y29uc3QgZGltZW5zaW9ucyA9IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuXHRcdFx0dGhpcy5jaGlsZENvbnRleHRNZW51LnBvc2l0aW9uLmxlZnQgPSBkaW1lbnNpb25zLmxlZnQgKyBkaW1lbnNpb25zLndpZHRoO1xuXHRcdFx0Ly8gc3VidHJhY3QgNHB4IHRvIGFjY291bnQgZm9yIG1hcmdpbnNcblx0XHRcdHRoaXMuY2hpbGRDb250ZXh0TWVudS5wb3NpdGlvbi50b3AgPSBkaW1lbnNpb25zLnRvcCAtIDQ7XG5cdFx0fVxuXHR9XG5cblx0Y2xvc2VTdWJNZW51KCkge1xuXHRcdGlmICh0aGlzLmNoaWxkQ29udGV4dE1lbnUpIHtcblx0XHRcdHRoaXMuY2hpbGRDb250ZXh0TWVudS5vcGVuID0gZmFsc2U7XG5cdFx0XHR0aGlzLmFyaWFFeHBhbmRlZCA9IGZhbHNlO1xuXHRcdH1cblx0fVxuXG5cdEBIb3N0TGlzdGVuZXIoXCJtb3VzZW92ZXJcIilcblx0aGFuZGxlTW91c2VPdmVyKCkge1xuXHRcdHRoaXMub3BlblN1Yk1lbnUoKTtcblx0fVxuXG5cdEBIb3N0TGlzdGVuZXIoXCJtb3VzZW91dFwiKVxuXHRoYW5kbGVNb3VzZU91dCgpIHtcblx0XHR0aGlzLmNsb3NlU3ViTWVudSgpO1xuXHR9XG5cblx0QEhvc3RMaXN0ZW5lcihcImZvY3VzXCIpXG5cdGhhbmRsZUZvY3VzKCkge1xuXHRcdHRoaXMudGFiaW5kZXggPSAwO1xuXHRcdGlmICh0aGlzLmhhc0NoaWxkcmVuICYmIHRoaXMuYXJpYUV4cGFuZGVkKSB7XG5cdFx0XHR0aGlzLmNsb3NlU3ViTWVudSgpO1xuXHRcdH1cblx0fVxuXG5cdEBIb3N0TGlzdGVuZXIoXCJibHVyXCIpXG5cdGhhbmRsZUJsdXIoKSB7XG5cdFx0dGhpcy50YWJpbmRleCA9IC0xO1xuXHR9XG5cblx0Zm9jdXNJdGVtKCkge1xuXHRcdHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XG5cdH1cblxuXHRuZ09uRGVzdHJveSgpIHtcblx0XHR0aGlzLnN1YnNjcmlwdGlvbnMudW5zdWJzY3JpYmUoKTtcblx0fVxufVxuIl19
244
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGV4dC1tZW51LWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbnRleHQtbWVudS9jb250ZXh0LW1lbnUtaXRlbS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNOLFNBQVMsRUFDVCxXQUFXLEVBQ1gsS0FBSyxFQUNMLE1BQU0sRUFDTixZQUFZLEVBRVosWUFBWSxFQUNaLFlBQVksRUFDWixRQUFRLEVBSVIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUVwQyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7Ozs7QUF1QmhFLE1BQU0sT0FBTyx3QkFBd0I7SUE4QnBDLFlBQ1csVUFBc0IsRUFDViwyQkFBd0Q7UUFEcEUsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUNWLGdDQUEyQixHQUEzQiwyQkFBMkIsQ0FBNkI7UUEvQjFDLGdCQUFXLEdBQUcsSUFBSSxDQUFDO1FBQzlCLFNBQUksR0FBRyxVQUFVLENBQUM7UUFDZCxhQUFRLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDVCxpQkFBWSxHQUFHLElBQUksQ0FBQztRQUNwQixpQkFBWSxHQUFHLElBQUksQ0FBQztRQVFDLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFDbkIsV0FBTSxHQUFHLEtBQUssQ0FBQztRQUM1RCxVQUFLLEdBQUcsRUFBRSxDQUFDO1FBQ1gsU0FBSSxHQUFHLEVBQUUsQ0FBQztRQUNWLFNBQUksR0FBZ0MsSUFBSSxDQUFDO1FBQ3pDLFlBQU8sR0FBRyxLQUFLLENBQUM7UUFDaEIsU0FBSSxHQUFHLEVBQUUsQ0FBQztRQUNWLFVBQUssR0FBRyxFQUFFLENBQUM7UUFDVixrQkFBYSxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFDNUMsY0FBUyxHQUFHLElBQUksWUFBWSxFQUFrQixDQUFDO1FBRXpELGdCQUFX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QUFLOztzQkFBSSxXQUFXO3VCQUFDLGdDQUFnQztnQkFDQSxNQUFNO3NCQUEzRCxLQUFLOztzQkFBSSxXQUFXO3VCQUFDLDhCQUE4QjtnQkFDM0MsS0FBSztzQkFBYixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0ksYUFBYTtzQkFBdEIsTUFBTTtnQkFDRyxTQUFTO3NCQUFsQixNQUFNO2dCQUsrQyxnQkFBZ0I7c0JBQXJFLFlBQVk7dUJBQUMsb0JBQW9CLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQW1EcEQsV0FBVztzQkFIVixZQUFZO3VCQUFDLGVBQWUsRUFBRSxDQUFDLFFBQVEsQ0FBQzs7c0JBQ3hDLFlBQVk7dUJBQUMsZUFBZSxFQUFFLENBQUMsUUFBUSxDQUFDOztzQkFDeEMsWUFBWTt1QkFBQyxPQUFPLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBeURqQyxlQUFlO3NCQURkLFlBQVk7dUJBQUMsV0FBVztnQkFNekIsY0FBYztzQkFEYixZQUFZO3VCQUFDLFVBQVU7Z0JBTXhCLFdBQVc7c0JBRFYsWUFBWTt1QkFBQyxPQUFPO2dCQVNyQixVQUFVO3NCQURULFlBQVk7dUJBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG5cdENvbXBvbmVudCxcblx0SG9zdEJpbmRpbmcsXG5cdElucHV0LFxuXHRPdXRwdXQsXG5cdEV2ZW50RW1pdHRlcixcblx0RWxlbWVudFJlZixcblx0SG9zdExpc3RlbmVyLFxuXHRDb250ZW50Q2hpbGQsXG5cdE9wdGlvbmFsLFxuXHRPbkluaXQsXG5cdEFmdGVyQ29udGVudEluaXQsXG5cdE9uRGVzdHJveVxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSBcInJ4anNcIjtcbmltcG9ydCB7IENvbnRleHRNZW51U2VsZWN0aW9uU2VydmljZSB9IGZyb20gXCIuL2NvbnRleHQtbWVudS1zZWxlY3Rpb24uc2VydmljZVwiO1xuaW1wb3J0IHsgQ29udGV4dE1lbnVDb21wb25lbnQgfSBmcm9tIFwiLi9jb250ZXh0LW1lbnUuY29tcG9uZW50XCI7XG5pbXBvcnQgeyBJdGVtQ2xpY2tFdmVudCB9IGZyb20gXCIuL2NvbnRleHQtbWVudS50eXBlc1wiO1xuXG5AQ29tcG9uZW50KHtcblx0c2VsZWN0b3I6IFwiY2RzLW1lbnUtaXRlbSwgY2RzLWNvbnRleHQtbWVudS1pdGVtLCBpYm0tY29udGV4dC1tZW51LWl0ZW1cIixcblx0dGVtcGxhdGU6IGBcblx0XHQ8ZGl2IGNsYXNzPVwiY2RzLS1tZW51LWl0ZW1fX2ljb25cIj5cblx0XHRcdDxzdmcgKm5nSWY9XCJzZWxlY3RhYmxlICYmIGNoZWNrZWRcIiBjZHNJY29uPVwiY2hlY2ttYXJrXCIgc2l6ZT1cIjE2XCI+PC9zdmc+XG5cdFx0XHQ8c3ZnICpuZ0lmPVwiIXNlbGVjdGFibGUgJiYgaWNvblwiIFtjZHNJY29uXT1cImljb25cIiBzaXplPVwiMTZcIj48L3N2Zz5cblx0XHQ8L2Rpdj5cblx0XHQ8ZGl2IGNsYXNzPVwiY2RzLS1tZW51LWl0ZW1fX2xhYmVsXCIgW3RpdGxlXT1cImxhYmVsXCI+e3tsYWJlbH19PC9kaXY+XG5cdFx0PGRpdiBjbGFzcz1cImNkcy0tbWVudS1pdGVtX19zaG9ydGN1dFwiPlxuXHRcdFx0PG5nLWNvbnRhaW5lciAqbmdJZj1cImluZm9cIj57e2luZm99fTwvbmctY29udGFpbmVyPlxuXHRcdFx0PHN2ZyAqbmdJZj1cImhhc0NoaWxkcmVuXCIgY2RzSWNvbj1cImNhcmV0LS1yaWdodFwiIHNpemU9XCIxNlwiPjwvc3ZnPlxuXHRcdDwvZGl2PlxuXHRcdDxuZy1jb250ZW50PjwvbmctY29udGVudD5cblx0YCxcblx0c3R5bGVzOiBbYFxuXHRcdDpob3N0IHtcblx0XHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogMXJlbSAxZnIgbWF4LWNvbnRlbnQ7XG5cdFx0fVxuXHRgXVxufSlcbmV4cG9ydCBjbGFzcyBDb250ZXh0TWVudUl0ZW1Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyQ29udGVudEluaXQsIE9uRGVzdHJveSB7XG5cdEBIb3N0QmluZGluZyhcImNsYXNzLmNkcy0tbWVudS1pdGVtXCIpIG9wdGlvbkNsYXNzID0gdHJ1ZTtcblx0QEhvc3RCaW5kaW5nKFwiYXR0ci5yb2xlXCIpIHJvbGUgPSBcIm1lbnVpdGVtXCI7XG5cdEBIb3N0QmluZGluZyhcImF0dHIudGFiaW5kZXhcIikgdGFiaW5kZXggPSAtMTtcblx0QEhvc3RCaW5kaW5nKFwiYXR0ci5hcmlhLWhhc3BvcHVwXCIpIGFyaWFIYXNQb3B1cCA9IG51bGw7XG5cdEBIb3N0QmluZGluZyhcImF0dHIuYXJpYS1leHBhbmRlZFwiKSBhcmlhRXhwYW5kZWQgPSBudWxsO1xuXHRASG9zdEJpbmRpbmcoXCJhdHRyLmFyaWEtY2hlY2tlZFwiKSBnZXQgYXJpYUNoZWNrZWQoKSB7XG5cdFx0cmV0dXJuIHRoaXMudHlwZSA9PT0gXCJjaGVja2JveFwiID9cblx0XHRcdCh0aGlzLmNoZWNrZWQgPyB0cnVlIDogZmFsc2UpIDogbnVsbDtcblx0fVxuXHRASG9zdEJpbmRpbmcoXCJhdHRyLmFyaWEtZGlzYWJsZWRcIikgZ2V0IGFyaWFEaXNhYmxlZCgpIHtcblx0XHRyZXR1cm4gdGhpcy5kaXNhYmxlZDtcblx0fVxuXHRASW5wdXQoKSBASG9zdEJpbmRpbmcoXCJjbGFzcy5jZHMtLW1lbnUtaXRlbS0tZGlzYWJsZWRcIikgZGlzYWJsZWQgPSBmYWxzZTtcblx0QElucHV0KCkgQEhvc3RCaW5kaW5nKFwiY2xhc3MuY2RzLS1tZW51LWl0ZW0tLWRhbmdlclwiKSBkYW5nZXIgPSBmYWxzZTtcblx0QElucHV0KCkgbGFiZWwgPSBcIlwiO1xuXHRASW5wdXQoKSBpbmZvID0gXCJcIjtcblx0QElucHV0KCkgdHlwZTogbnVsbCB8IFwiY2hlY2tib3hcIiB8IFwicmFkaW9cIiA9IG51bGw7XG5cdEBJbnB1dCgpIGNoZWNrZWQgPSBmYWxzZTtcblx0QElucHV0KCkgaWNvbiA9IFwiXCI7XG5cdEBJbnB1dCgpIHZhbHVlID0gXCJcIjtcblx0QE91dHB1dCgpIGNoZWNrZWRDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG5cdEBPdXRwdXQoKSBpdGVtQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPEl0ZW1DbGlja0V2ZW50PigpO1xuXG5cdGhhc0NoaWxkcmVuID0gZmFsc2U7XG5cdHNlbGVjdGFibGUgPSBmYWxzZTtcblxuXHRAQ29udGVudENoaWxkKENvbnRleHRNZW51Q29tcG9uZW50LCB7IHN0YXRpYzogdHJ1ZSB9KSBjaGlsZENvbnRleHRNZW51OiBDb250ZXh0TWVudUNvbXBvbmVudDtcblx0cHJpdmF0ZSBzdWJzY3JpcHRpb25zID0gbmV3IFN1YnNjcmlwdGlvbigpO1xuXG5cdGNvbnN0cnVjdG9yKFxuXHRcdHByb3RlY3RlZCBlbGVtZW50UmVmOiBFbGVtZW50UmVmLFxuXHRcdEBPcHRpb25hbCgpIHByb3RlY3RlZCBjb250ZXh0TWVudVNlbGVjdGlvblNlcnZpY2U6IENvbnRleHRNZW51U2VsZWN0aW9uU2VydmljZVxuXHQpIHt9XG5cblx0bmdPbkluaXQoKSB7XG5cdFx0c3dpdGNoICh0aGlzLnR5cGUpIHtcblx0XHRcdGNhc2UgXCJjaGVja2JveFwiOiB7XG5cdFx0XHRcdHRoaXMucm9sZSA9IFwibWVudWl0ZW1jaGVja2JveFwiO1xuXHRcdFx0XHR0aGlzLnNlbGVjdGFibGUgPSB0cnVlO1xuXHRcdFx0XHRicmVhaztcblx0XHRcdH1cblx0XHRcdGNhc2UgXCJyYWRpb1wiOiB7XG5cdFx0XHRcdHRoaXMucm9sZSA9IFwibWVudWl0ZW1yYWRpb1wiO1xuXHRcdFx0XHR0aGlzLnNlbGVjdGFibGUgPSB0cnVlO1xuXHRcdFx0XHRicmVhaztcblx0XHRcdH1cblx0XHRcdGRlZmF1bHQ6IHtcblx0XHRcdFx0dGhpcy5yb2xlID0gXCJtZW51aXRlbVwiO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdGlmICh0aGlzLnR5cGUgJiYgdGhpcy5jb250ZXh0TWVudVNlbGVjdGlvblNlcnZpY2UgJiYgdGhpcy52YWx1ZSkge1xuXHRcdFx0Y29uc3QgeyBzZWxlY3Rpb25PYnNlcnZhYmxlIH0gPSB0aGlzLmNvbnRleHRNZW51U2VsZWN0aW9uU2VydmljZTtcblx0XHRcdGNvbnN0IHN1YnNjcmlwdGlvbiA9IHNlbGVjdGlvbk9ic2VydmFibGUuc3Vic2NyaWJlKCh2YWx1ZSkgPT4ge1xuXHRcdFx0XHRpZiAodGhpcy50eXBlID09PSBcInJhZGlvXCIpIHtcblx0XHRcdFx0XHR0aGlzLmhhbmRsZVNlbGVjdGlvbih2YWx1ZSA9PT0gdGhpcy52YWx1ZSk7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRpZiAodGhpcy50eXBlID09PSBcImNoZWNrYm94XCIpIHtcblx0XHRcdFx0XHR0aGlzLmhhbmRsZVNlbGVjdGlvbih2YWx1ZS5pbmNsdWRlcyh0aGlzLnZhbHVlKSk7XG5cdFx0XHRcdH1cblx0XHRcdH0pO1xuXHRcdFx0dGhpcy5zdWJzY3JpcHRpb25zLmFkZChzdWJzY3JpcHRpb24pO1xuXHRcdH1cblx0fVxuXG5cdG5nQWZ0ZXJDb250ZW50SW5pdCgpIHtcblx0XHRpZiAodGhpcy5jaGlsZENvbnRleHRNZW51KSB7XG5cdFx0XHR0aGlzLmhhc0NoaWxkcmVuID0gdHJ1ZTtcblx0XHRcdHRoaXMuYXJpYUhhc1BvcHVwID0gdHJ1ZTtcblx0XHRcdHRoaXMuYXJpYUV4cGFuZGVkID0gZmFsc2U7XG5cdFx0fVxuXHR9XG5cblx0QEhvc3RMaXN0ZW5lcihcImtleWRvd24uZW50ZXJcIiwgW1wiJGV2ZW50XCJdKVxuXHRASG9zdExpc3RlbmVyKFwia2V5ZG93bi5zcGFjZVwiLCBbXCIkZXZlbnRcIl0pXG5cdEBIb3N0TGlzdGVuZXIoXCJjbGlja1wiLCBbXCIkZXZlbnRcIl0pXG5cdGhhbmRsZUNsaWNrKGV2ZW50OiBNb3VzZUV2ZW50ICYgS2V5Ym9hcmRFdmVudCkge1xuXHRcdGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuXHRcdGlmICh0aGlzLmhhc0NoaWxkcmVuKSB7XG5cdFx0XHR0aGlzLm9wZW5TdWJNZW51KCk7XG5cdFx0XHR0aGlzLmNoaWxkQ29udGV4dE1lbnUuZm9jdXNNZW51KCk7XG5cdFx0fVxuXG5cdFx0aWYgKHRoaXMudHlwZSkge1xuXHRcdFx0dGhpcy5oYW5kbGVTZWxlY3Rpb24oIXRoaXMuY2hlY2tlZCk7XG5cdFx0fVxuXG5cdFx0aWYgKHRoaXMuY29udGV4dE1lbnVTZWxlY3Rpb25TZXJ2aWNlKSB7XG5cdFx0XHRpZiAodGhpcy50eXBlID09PSBcInJhZGlvXCIpIHtcblx0XHRcdFx0dGhpcy5jb250ZXh0TWVudVNlbGVjdGlvblNlcnZpY2Uuc2VsZWN0UmFkaW8odGhpcy52YWx1ZSk7XG5cdFx0XHR9XG5cblx0XHRcdGlmICh0aGlzLnR5cGUgPT09IFwiY2hlY2tib3hcIikge1xuXHRcdFx0XHR0aGlzLmNvbnRleHRNZW51U2VsZWN0aW9uU2VydmljZS5zZWxlY3RDaGVja2JveCh0aGlzLnZhbHVlKTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHRpZiAoIXRoaXMuZGlzYWJsZWQpIHtcblx0XHRcdHRoaXMuaXRlbUNsaWNrLmVtaXQoe1xuXHRcdFx0XHRldmVudCxcblx0XHRcdFx0bGFiZWw6IHRoaXMubGFiZWwsXG5cdFx0XHRcdGluZm86IHRoaXMuaW5mbyxcblx0XHRcdFx0dmFsdWU6IHRoaXMudmFsdWUsXG5cdFx0XHRcdHR5cGU6IHRoaXMudHlwZVxuXHRcdFx0fSk7XG5cdFx0fVxuXHR9XG5cblx0aGFuZGxlU2VsZWN0aW9uKHNlbGVjdGVkOiBib29sZWFuKSB7XG5cdFx0dGhpcy5jaGVja2VkID0gc2VsZWN0ZWQ7XG5cdFx0dGhpcy5jaGVja2VkQ2hhbmdlLmVtaXQodGhpcy5jaGVja2VkKTtcblx0fVxuXG5cdG9wZW5TdWJNZW51KCkge1xuXHRcdGlmICh0aGlzLmNoaWxkQ29udGV4dE1lbnUpIHtcblx0XHRcdHRoaXMuY2hpbGRDb250ZXh0TWVudS5vcGVuID0gdHJ1ZTtcblx0XHRcdHRoaXMuYXJpYUV4cGFuZGVkID0gdHJ1ZTtcblx0XHRcdGNvbnN0IGRpbWVuc2lvbnMgPSB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcblx0XHRcdHRoaXMuY2hpbGRDb250ZXh0TWVudS5wb3NpdGlvbi5sZWZ0ID0gZGltZW5zaW9ucy5sZWZ0ICsgZGltZW5zaW9ucy53aWR0aDtcblx0XHRcdC8vIHN1YnRyYWN0IDRweCB0byBhY2NvdW50IGZvciBtYXJnaW5zXG5cdFx0XHR0aGlzLmNoaWxkQ29udGV4dE1lbnUucG9zaXRpb24udG9wID0gZGltZW5zaW9ucy50b3AgLSA0O1xuXHRcdH1cblx0fVxuXG5cdGNsb3NlU3ViTWVudSgpIHtcblx0XHRpZiAodGhpcy5jaGlsZENvbnRleHRNZW51KSB7XG5cdFx0XHR0aGlzLmNoaWxkQ29udGV4dE1lbnUub3BlbiA9IGZhbHNlO1xuXHRcdFx0dGhpcy5hcmlhRXhwYW5kZWQgPSBmYWxzZTtcblx0XHR9XG5cdH1cblxuXHRASG9zdExpc3RlbmVyKFwibW91c2VvdmVyXCIpXG5cdGhhbmRsZU1vdXNlT3ZlcigpIHtcblx0XHR0aGlzLm9wZW5TdWJNZW51KCk7XG5cdH1cblxuXHRASG9zdExpc3RlbmVyKFwibW91c2VvdXRcIilcblx0aGFuZGxlTW91c2VPdXQoKSB7XG5cdFx0dGhpcy5jbG9zZVN1Yk1lbnUoKTtcblx0fVxuXG5cdEBIb3N0TGlzdGVuZXIoXCJmb2N1c1wiKVxuXHRoYW5kbGVGb2N1cygpIHtcblx0XHR0aGlzLnRhYmluZGV4ID0gMDtcblx0XHRpZiAodGhpcy5oYXNDaGlsZHJlbiAmJiB0aGlzLmFyaWFFeHBhbmRlZCkge1xuXHRcdFx0dGhpcy5jbG9zZVN1Yk1lbnUoKTtcblx0XHR9XG5cdH1cblxuXHRASG9zdExpc3RlbmVyKFwiYmx1clwiKVxuXHRoYW5kbGVCbHVyKCkge1xuXHRcdHRoaXMudGFiaW5kZXggPSAtMTtcblx0fVxuXG5cdGZvY3VzSXRlbSgpIHtcblx0XHR0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuXHR9XG5cblx0bmdPbkRlc3Ryb3koKSB7XG5cdFx0dGhpcy5zdWJzY3JpcHRpb25zLnVuc3Vic2NyaWJlKCk7XG5cdH1cbn1cbiJdfQ==