@zanichelli/albe-web-components 19.1.4-RC1 → 19.2.1-RC

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 (800) hide show
  1. package/CHANGELOG.md +41 -0
  2. package/dist/cjs/iconset-5d47610c.js +1016 -0
  3. package/dist/cjs/iconset-5d47610c.js.map +1 -0
  4. package/dist/cjs/{index-1c7cd5df.js → index-012853a0.js} +2 -2
  5. package/dist/cjs/{index-1c7cd5df.js.map → index-012853a0.js.map} +1 -1
  6. package/dist/cjs/{index-66928615.js → index-1d7a50cc.js} +3 -3
  7. package/dist/cjs/{index-66928615.js.map → index-1d7a50cc.js.map} +1 -1
  8. package/dist/cjs/{index-62712250.js → index-2dff20f5.js} +2 -2
  9. package/dist/cjs/{index-62712250.js.map → index-2dff20f5.js.map} +1 -1
  10. package/dist/cjs/{index-f011b2e3.js → index-86a8a3a4.js} +2 -2
  11. package/dist/cjs/{index-f011b2e3.js.map → index-86a8a3a4.js.map} +1 -1
  12. package/dist/cjs/{index-805390c8.js → index-938c9669.js} +5 -5
  13. package/dist/cjs/{index-805390c8.js.map → index-938c9669.js.map} +1 -1
  14. package/dist/cjs/index-96af6326.js +8 -4
  15. package/dist/cjs/{index-09238e31.js → index-cb280932.js} +3 -3
  16. package/dist/cjs/{index-09238e31.js.map → index-cb280932.js.map} +1 -1
  17. package/dist/cjs/{index-97a4c18d.js → index-e30d0503.js} +51 -1
  18. package/dist/cjs/index-e30d0503.js.map +1 -0
  19. package/dist/cjs/index.cjs.js +5 -2
  20. package/dist/cjs/index.cjs.js.map +1 -1
  21. package/dist/cjs/loader.cjs.js +1 -1
  22. package/dist/cjs/{utils-7f9d5a78.js → utils-4f7b4830.js} +2 -2
  23. package/dist/cjs/{utils-7f9d5a78.js.map → utils-4f7b4830.js.map} +1 -1
  24. package/dist/cjs/{utils-5148245a.js → utils-e8b453d5.js} +35 -6
  25. package/dist/cjs/utils-e8b453d5.js.map +1 -0
  26. package/dist/cjs/web-components-library.cjs.js +1 -1
  27. package/dist/cjs/z-accordion.cjs.entry.js +12 -3
  28. package/dist/cjs/z-accordion.cjs.entry.js.map +1 -1
  29. package/dist/cjs/z-alert.cjs.entry.js +1 -1
  30. package/dist/cjs/z-anchor-navigation.cjs.entry.js +2 -2
  31. package/dist/cjs/z-app-header-deprecated.cjs.entry.js +2 -2
  32. package/dist/cjs/z-app-header_12.cjs.entry.js +105 -1024
  33. package/dist/cjs/z-app-header_12.cjs.entry.js.map +1 -1
  34. package/dist/cjs/z-aria-alert.cjs.entry.js +2 -2
  35. package/dist/cjs/z-avatar.cjs.entry.js +3 -3
  36. package/dist/cjs/z-book-card-app.cjs.entry.js +2 -2
  37. package/dist/cjs/z-book-card-deprecated.cjs.entry.js +3 -3
  38. package/dist/cjs/z-book-card.cjs.entry.js +1 -1
  39. package/dist/cjs/z-book-cover.cjs.entry.js +1 -1
  40. package/dist/cjs/z-breadcrumb.cjs.entry.js +4 -4
  41. package/dist/cjs/z-button-sort.cjs.entry.js +1 -1
  42. package/dist/cjs/z-card.cjs.entry.js +1 -1
  43. package/dist/cjs/z-carousel.cjs.entry.js +1 -1
  44. package/dist/cjs/z-chip.cjs.entry.js +3 -3
  45. package/dist/cjs/z-color-picker.cjs.entry.js +212 -0
  46. package/dist/cjs/z-color-picker.cjs.entry.js.map +1 -0
  47. package/dist/cjs/z-combobox.cjs.entry.js +2 -2
  48. package/dist/cjs/z-cover-hero.cjs.entry.js +1 -1
  49. package/dist/cjs/z-date-picker.cjs.entry.js +3 -3
  50. package/dist/cjs/z-dragdrop-area_2.cjs.entry.js +3 -3
  51. package/dist/cjs/z-file-upload.cjs.entry.js +1 -1
  52. package/dist/cjs/z-file.cjs.entry.js +2 -2
  53. package/dist/cjs/z-ghost-loading.cjs.entry.js +1 -1
  54. package/dist/cjs/z-info-reveal.cjs.entry.js +1 -1
  55. package/dist/cjs/z-menu-deprecated.cjs.entry.js +1 -1
  56. package/dist/cjs/z-menu-section-deprecated.cjs.entry.js +1 -1
  57. package/dist/cjs/z-menu-section.cjs.entry.js +2 -2
  58. package/dist/cjs/z-menu.cjs.entry.js +2 -2
  59. package/dist/cjs/z-menu.cjs.entry.js.map +1 -1
  60. package/dist/cjs/z-myz-card-alert.cjs.entry.js +2 -2
  61. package/dist/cjs/z-myz-card-dictionary.cjs.entry.js +2 -2
  62. package/dist/cjs/z-myz-card-footer-sections.cjs.entry.js +1 -1
  63. package/dist/cjs/z-myz-card-footer.cjs.entry.js +2 -2
  64. package/dist/cjs/z-myz-card-icon.cjs.entry.js +1 -1
  65. package/dist/cjs/z-myz-card-info.cjs.entry.js +3 -3
  66. package/dist/cjs/z-myz-card-list.cjs.entry.js +1 -1
  67. package/dist/cjs/z-myz-card_4.cjs.entry.js +5 -5
  68. package/dist/cjs/z-myz-list-item.cjs.entry.js +3 -3
  69. package/dist/cjs/z-myz-list.cjs.entry.js +1 -1
  70. package/dist/cjs/z-navigation-tabs.cjs.entry.js +1 -1
  71. package/dist/cjs/z-notification.cjs.entry.js +1 -1
  72. package/dist/cjs/z-notification.cjs.entry.js.map +1 -1
  73. package/dist/cjs/z-otp.cjs.entry.js +3 -3
  74. package/dist/cjs/z-pagination.cjs.entry.js +1 -1
  75. package/dist/cjs/z-popover.cjs.entry.js +20 -16
  76. package/dist/cjs/z-popover.cjs.entry.js.map +1 -1
  77. package/dist/cjs/z-range-picker.cjs.entry.js +5 -5
  78. package/dist/cjs/z-section-title.cjs.entry.js +2 -2
  79. package/dist/cjs/z-select.cjs.entry.js +2 -2
  80. package/dist/cjs/z-skip-to-content.cjs.entry.js +2 -2
  81. package/dist/cjs/z-slideshow.cjs.entry.js +2 -2
  82. package/dist/cjs/z-table.cjs.entry.js +9 -9
  83. package/dist/cjs/z-tbody.cjs.entry.js +1 -1
  84. package/dist/cjs/z-td.cjs.entry.js +2 -2
  85. package/dist/cjs/z-tfoot.cjs.entry.js +1 -1
  86. package/dist/cjs/z-th.cjs.entry.js +2 -2
  87. package/dist/cjs/z-thead.cjs.entry.js +1 -1
  88. package/dist/cjs/z-toast-notification-list.cjs.entry.js +2 -2
  89. package/dist/cjs/z-toast-notification.cjs.entry.js +43 -46
  90. package/dist/cjs/z-toast-notification.cjs.entry.js.map +1 -1
  91. package/dist/cjs/z-toggle-button.cjs.entry.js +2 -2
  92. package/dist/cjs/z-toggle-switch.cjs.entry.js +5 -5
  93. package/dist/cjs/z-tool.cjs.entry.js +147 -42
  94. package/dist/cjs/z-tool.cjs.entry.js.map +1 -1
  95. package/dist/cjs/z-toolbar.cjs.entry.js +64 -66
  96. package/dist/cjs/z-toolbar.cjs.entry.js.map +1 -1
  97. package/dist/cjs/z-tooltip.cjs.entry.js +3 -2
  98. package/dist/cjs/z-tooltip.cjs.entry.js.map +1 -1
  99. package/dist/cjs/z-tr.cjs.entry.js +5 -5
  100. package/dist/cjs/z-tree-list.cjs.entry.js +2 -2
  101. package/dist/cjs/z-visually-hidden.cjs.entry.js +1 -1
  102. package/dist/collection/beans/index.js +48 -0
  103. package/dist/collection/beans/index.js.map +1 -1
  104. package/dist/collection/collection-manifest.json +1 -0
  105. package/dist/collection/components/book-card/z-book-card-app/index.js +1 -1
  106. package/dist/collection/components/date-picker/z-date-picker/index.js +1 -1
  107. package/dist/collection/components/date-picker/z-range-picker/index.js +3 -3
  108. package/dist/collection/components/deprecated/z-app-header-deprecated/index.js +1 -1
  109. package/dist/collection/components/deprecated/z-book-card-deprecated/index.js +1 -1
  110. package/dist/collection/components/deprecated/z-menu-deprecated/index.js +1 -1
  111. package/dist/collection/components/deprecated/z-menu-section-deprecated/index.js +1 -1
  112. package/dist/collection/components/deprecated/z-section-title/index.js +1 -1
  113. package/dist/collection/components/file-upload/z-dragdrop-area/index.js +2 -2
  114. package/dist/collection/components/file-upload/z-file/index.js +1 -1
  115. package/dist/collection/components/list/z-list/index.js +1 -1
  116. package/dist/collection/components/list/z-list-element/index.js +1 -1
  117. package/dist/collection/components/list/z-list-group/index.js +2 -2
  118. package/dist/collection/components/list/z-tree-list/index.js +1 -1
  119. package/dist/collection/components/table/cells/z-td/index.js +1 -1
  120. package/dist/collection/components/table/cells/z-th/index.js +1 -1
  121. package/dist/collection/components/table/z-table/index.js +1 -1
  122. package/dist/collection/components/table/z-tbody/index.js +1 -1
  123. package/dist/collection/components/table/z-tfoot/index.js +1 -1
  124. package/dist/collection/components/table/z-thead/index.js +1 -1
  125. package/dist/collection/components/table/z-tr/index.js +1 -1
  126. package/dist/collection/components/z-accordion/index.js +15 -1
  127. package/dist/collection/components/z-accordion/index.js.map +1 -1
  128. package/dist/collection/components/z-accordion/index.stories.js +4 -4
  129. package/dist/collection/components/z-accordion/index.stories.js.map +1 -1
  130. package/dist/collection/components/z-accordion/styles.css +2 -34
  131. package/dist/collection/components/z-anchor-navigation/index.js +1 -1
  132. package/dist/collection/components/z-app-header/index.js +1 -1
  133. package/dist/collection/components/z-app-header/index.js.map +1 -1
  134. package/dist/collection/components/z-app-header/index.stories.js +42 -0
  135. package/dist/collection/components/z-app-header/index.stories.js.map +1 -1
  136. package/dist/collection/components/z-app-header/styles.css +8 -0
  137. package/dist/collection/components/z-aria-alert/index.js +1 -1
  138. package/dist/collection/components/z-avatar/index.js +2 -2
  139. package/dist/collection/components/z-book-cover/index.js +1 -1
  140. package/dist/collection/components/z-breadcrumb/index.js +2 -2
  141. package/dist/collection/components/z-button-sort/index.js +1 -1
  142. package/dist/collection/components/z-chip/index.js +2 -2
  143. package/dist/collection/components/z-color-picker/index.js +367 -0
  144. package/dist/collection/components/z-color-picker/index.js.map +1 -0
  145. package/dist/collection/components/z-color-picker/index.stories.js +34 -0
  146. package/dist/collection/components/z-color-picker/index.stories.js.map +1 -0
  147. package/dist/collection/components/z-color-picker/styles.css +74 -0
  148. package/dist/collection/components/z-ghost-loading/index.js +1 -1
  149. package/dist/collection/components/z-icon/index.js +38 -9
  150. package/dist/collection/components/z-icon/index.js.map +1 -1
  151. package/dist/collection/components/z-icon/index.stories.js +34 -18
  152. package/dist/collection/components/z-icon/index.stories.js.map +1 -1
  153. package/dist/collection/components/z-icon/styles.css +16 -2
  154. package/dist/collection/components/z-menu/index.js +1 -1
  155. package/dist/collection/components/z-menu/index.js.map +1 -1
  156. package/dist/collection/components/z-menu-section/index.js +1 -1
  157. package/dist/collection/components/z-notification/styles.css +2 -2
  158. package/dist/collection/components/z-offcanvas/index.js +89 -10
  159. package/dist/collection/components/z-offcanvas/index.js.map +1 -1
  160. package/dist/collection/components/z-popover/index.js +31 -21
  161. package/dist/collection/components/z-popover/index.js.map +1 -1
  162. package/dist/collection/components/z-popover/styles.css +18 -3
  163. package/dist/collection/components/z-tag/index.js +2 -2
  164. package/dist/collection/components/z-toast-notification/index.js +43 -45
  165. package/dist/collection/components/z-toast-notification/index.js.map +1 -1
  166. package/dist/collection/components/z-toast-notification/index.stories.js +3 -1
  167. package/dist/collection/components/z-toast-notification/index.stories.js.map +1 -1
  168. package/dist/collection/components/z-toast-notification/styles.css +124 -124
  169. package/dist/collection/components/z-toast-notification-list/index.js +1 -1
  170. package/dist/collection/components/z-toggle-button/index.js +2 -2
  171. package/dist/collection/components/z-toggle-switch/index.js +3 -3
  172. package/dist/collection/components/z-tool/index.js +281 -48
  173. package/dist/collection/components/z-tool/index.js.map +1 -1
  174. package/dist/collection/components/z-tool/index.stories.js +89 -12
  175. package/dist/collection/components/z-tool/index.stories.js.map +1 -1
  176. package/dist/collection/components/z-tool/styles.css +30 -31
  177. package/dist/collection/components/z-toolbar/index.js +72 -91
  178. package/dist/collection/components/z-toolbar/index.js.map +1 -1
  179. package/dist/collection/components/z-toolbar/index.stories.js +190 -309
  180. package/dist/collection/components/z-toolbar/index.stories.js.map +1 -1
  181. package/dist/collection/components/z-toolbar/styles.css +10 -19
  182. package/dist/collection/components/z-tooltip/index.js +19 -1
  183. package/dist/collection/components/z-tooltip/index.js.map +1 -1
  184. package/dist/collection/components/z-visually-hidden/index.js +1 -1
  185. package/dist/collection/constants/iconset.js +152 -142
  186. package/dist/collection/constants/iconset.js.map +1 -1
  187. package/dist/collection/index.js +1 -0
  188. package/dist/collection/index.js.map +1 -1
  189. package/dist/collection/snowflakes/myz/card/z-myz-card/index.js +1 -1
  190. package/dist/collection/snowflakes/myz/card/z-myz-card-alert/index.js +1 -1
  191. package/dist/collection/snowflakes/myz/card/z-myz-card-body/index.js +1 -1
  192. package/dist/collection/snowflakes/myz/card/z-myz-card-cover/index.js +1 -1
  193. package/dist/collection/snowflakes/myz/card/z-myz-card-dictionary/index.js +1 -1
  194. package/dist/collection/snowflakes/myz/card/z-myz-card-footer/index.js +1 -1
  195. package/dist/collection/snowflakes/myz/card/z-myz-card-footer-sections/index.js +1 -1
  196. package/dist/collection/snowflakes/myz/card/z-myz-card-header/index.js +1 -1
  197. package/dist/collection/snowflakes/myz/card/z-myz-card-icon/index.js +1 -1
  198. package/dist/collection/snowflakes/myz/card/z-myz-card-info/index.js +1 -1
  199. package/dist/collection/snowflakes/myz/card/z-myz-card-list/index.js +1 -1
  200. package/dist/collection/snowflakes/myz/list/z-myz-list/index.js +1 -1
  201. package/dist/collection/snowflakes/myz/list/z-myz-list-item/index.js +1 -1
  202. package/dist/collection/snowflakes/myz/z-alert/index.js +1 -1
  203. package/dist/collection/snowflakes/myz/z-otp/index.js +2 -2
  204. package/dist/collection/utils/utils.js +33 -4
  205. package/dist/collection/utils/utils.js.map +1 -1
  206. package/dist/components/iconset.js +152 -143
  207. package/dist/components/iconset.js.map +1 -1
  208. package/dist/components/index.d.ts +2 -0
  209. package/dist/components/index.js +3 -1
  210. package/dist/components/index.js.map +1 -1
  211. package/dist/components/index10.js +15 -6
  212. package/dist/components/index10.js.map +1 -1
  213. package/dist/components/index14.js +1 -1
  214. package/dist/components/index15.js +1 -1
  215. package/dist/components/index16.js +2 -2
  216. package/dist/components/index18.js +1 -1
  217. package/dist/components/index19.js +1 -1
  218. package/dist/components/index2.js +49 -1
  219. package/dist/components/index2.js.map +1 -1
  220. package/dist/components/index20.js +1 -1
  221. package/dist/components/index21.js +1 -1
  222. package/dist/components/index22.js +1 -1
  223. package/dist/components/index23.js +84 -11
  224. package/dist/components/index23.js.map +1 -1
  225. package/dist/components/index24.js +19 -15
  226. package/dist/components/index24.js.map +1 -1
  227. package/dist/components/index26.js +2 -2
  228. package/dist/components/index27.js +55 -0
  229. package/dist/components/index27.js.map +1 -0
  230. package/dist/components/index3.js +1 -1
  231. package/dist/components/index4.js +1 -1
  232. package/dist/components/index6.js +2 -2
  233. package/dist/components/index8.js +2 -2
  234. package/dist/components/index9.js +1 -1
  235. package/dist/components/utils.js +33 -4
  236. package/dist/components/utils.js.map +1 -1
  237. package/dist/components/z-accordion.js +13 -3
  238. package/dist/components/z-accordion.js.map +1 -1
  239. package/dist/components/z-anchor-navigation.js +1 -1
  240. package/dist/components/z-app-header-deprecated.js +1 -1
  241. package/dist/components/z-app-header.js +2 -2
  242. package/dist/components/z-app-header.js.map +1 -1
  243. package/dist/components/z-aria-alert.js +1 -1
  244. package/dist/components/z-avatar.js +2 -2
  245. package/dist/components/z-book-card-app.js +1 -1
  246. package/dist/components/z-book-card-deprecated.js +1 -1
  247. package/dist/components/z-breadcrumb.js +2 -2
  248. package/dist/components/z-button-sort.js +1 -1
  249. package/dist/components/z-color-picker.d.ts +11 -0
  250. package/dist/components/z-color-picker.js +234 -0
  251. package/dist/components/z-color-picker.js.map +1 -0
  252. package/dist/components/z-date-picker.js +1 -1
  253. package/dist/components/z-file.js +1 -1
  254. package/dist/components/z-menu-deprecated.js +1 -1
  255. package/dist/components/z-menu-section-deprecated.js +1 -1
  256. package/dist/components/z-menu-section.js +1 -1
  257. package/dist/components/z-menu.js +1 -1
  258. package/dist/components/z-menu.js.map +1 -1
  259. package/dist/components/z-myz-card-alert.js +1 -1
  260. package/dist/components/z-myz-card-dictionary.js +1 -1
  261. package/dist/components/z-myz-card-footer-sections.js +1 -1
  262. package/dist/components/z-myz-card-footer.js +1 -1
  263. package/dist/components/z-myz-card-icon.js +1 -1
  264. package/dist/components/z-myz-card-info.js +1 -1
  265. package/dist/components/z-myz-card-list.js +1 -1
  266. package/dist/components/z-myz-list.js +1 -1
  267. package/dist/components/z-notification.js +1 -1
  268. package/dist/components/z-notification.js.map +1 -1
  269. package/dist/components/z-otp.js +2 -2
  270. package/dist/components/z-range-picker.js +3 -3
  271. package/dist/components/z-section-title.js +1 -1
  272. package/dist/components/z-table.js +1 -1
  273. package/dist/components/z-tbody.js +1 -1
  274. package/dist/components/z-td.js +1 -1
  275. package/dist/components/z-tfoot.js +1 -1
  276. package/dist/components/z-th.js +1 -1
  277. package/dist/components/z-thead.js +1 -1
  278. package/dist/components/z-toast-notification-list.js +1 -1
  279. package/dist/components/z-toast-notification.js +44 -46
  280. package/dist/components/z-toast-notification.js.map +1 -1
  281. package/dist/components/z-toggle-button.js +2 -2
  282. package/dist/components/z-toggle-switch.js +3 -3
  283. package/dist/components/z-tool.js +165 -49
  284. package/dist/components/z-tool.js.map +1 -1
  285. package/dist/components/z-toolbar.js +65 -68
  286. package/dist/components/z-toolbar.js.map +1 -1
  287. package/dist/components/z-tooltip.js +1 -50
  288. package/dist/components/z-tooltip.js.map +1 -1
  289. package/dist/components/z-tr.js +1 -1
  290. package/dist/components/z-tree-list.js +1 -1
  291. package/dist/components/z-visually-hidden.js +1 -1
  292. package/dist/esm/iconset-d7823b13.js +1013 -0
  293. package/dist/esm/iconset-d7823b13.js.map +1 -0
  294. package/dist/esm/{index-0ea3c7c8.js → index-09bfb4ee.js} +2 -2
  295. package/dist/esm/{index-0ea3c7c8.js.map → index-09bfb4ee.js.map} +1 -1
  296. package/dist/esm/{index-2a6324f8.js → index-106473a8.js} +50 -2
  297. package/dist/esm/index-106473a8.js.map +1 -0
  298. package/dist/esm/{index-36122d8f.js → index-3856a6ca.js} +2 -2
  299. package/dist/esm/{index-36122d8f.js.map → index-3856a6ca.js.map} +1 -1
  300. package/dist/esm/{index-0bcacbd3.js → index-455c0a68.js} +2 -2
  301. package/dist/esm/{index-0bcacbd3.js.map → index-455c0a68.js.map} +1 -1
  302. package/dist/esm/{index-b64ced16.js → index-6c43bc70.js} +3 -3
  303. package/dist/esm/{index-b64ced16.js.map → index-6c43bc70.js.map} +1 -1
  304. package/dist/esm/{index-8a9f6d27.js → index-83248f5c.js} +5 -5
  305. package/dist/esm/{index-8a9f6d27.js.map → index-83248f5c.js.map} +1 -1
  306. package/dist/esm/index-c8ceadeb.js +8 -4
  307. package/dist/esm/{index-f20179ad.js → index-f8517155.js} +3 -3
  308. package/dist/esm/{index-f20179ad.js.map → index-f8517155.js.map} +1 -1
  309. package/dist/esm/index.js +3 -2
  310. package/dist/esm/index.js.map +1 -1
  311. package/dist/esm/loader.js +1 -1
  312. package/dist/esm/{utils-e66d94c3.js → utils-1b64bcd9.js} +35 -6
  313. package/dist/esm/utils-1b64bcd9.js.map +1 -0
  314. package/dist/esm/{utils-227ef1c0.js → utils-93ac0e6c.js} +2 -2
  315. package/dist/esm/{utils-227ef1c0.js.map → utils-93ac0e6c.js.map} +1 -1
  316. package/dist/esm/web-components-library.js +1 -1
  317. package/dist/esm/z-accordion.entry.js +13 -4
  318. package/dist/esm/z-accordion.entry.js.map +1 -1
  319. package/dist/esm/z-alert.entry.js +1 -1
  320. package/dist/esm/z-anchor-navigation.entry.js +2 -2
  321. package/dist/esm/z-app-header-deprecated.entry.js +2 -2
  322. package/dist/esm/z-app-header_12.entry.js +105 -1024
  323. package/dist/esm/z-app-header_12.entry.js.map +1 -1
  324. package/dist/esm/z-aria-alert.entry.js +2 -2
  325. package/dist/esm/z-avatar.entry.js +3 -3
  326. package/dist/esm/z-book-card-app.entry.js +2 -2
  327. package/dist/esm/z-book-card-deprecated.entry.js +3 -3
  328. package/dist/esm/z-book-card.entry.js +1 -1
  329. package/dist/esm/z-book-cover.entry.js +1 -1
  330. package/dist/esm/z-breadcrumb.entry.js +4 -4
  331. package/dist/esm/z-button-sort.entry.js +1 -1
  332. package/dist/esm/z-card.entry.js +1 -1
  333. package/dist/esm/z-carousel.entry.js +1 -1
  334. package/dist/esm/z-chip.entry.js +3 -3
  335. package/dist/esm/z-color-picker.entry.js +208 -0
  336. package/dist/esm/z-color-picker.entry.js.map +1 -0
  337. package/dist/esm/z-combobox.entry.js +2 -2
  338. package/dist/esm/z-cover-hero.entry.js +1 -1
  339. package/dist/esm/z-date-picker.entry.js +3 -3
  340. package/dist/esm/z-dragdrop-area_2.entry.js +3 -3
  341. package/dist/esm/z-file-upload.entry.js +1 -1
  342. package/dist/esm/z-file.entry.js +2 -2
  343. package/dist/esm/z-ghost-loading.entry.js +1 -1
  344. package/dist/esm/z-info-reveal.entry.js +1 -1
  345. package/dist/esm/z-menu-deprecated.entry.js +1 -1
  346. package/dist/esm/z-menu-section-deprecated.entry.js +1 -1
  347. package/dist/esm/z-menu-section.entry.js +2 -2
  348. package/dist/esm/z-menu.entry.js +2 -2
  349. package/dist/esm/z-menu.entry.js.map +1 -1
  350. package/dist/esm/z-myz-card-alert.entry.js +2 -2
  351. package/dist/esm/z-myz-card-dictionary.entry.js +2 -2
  352. package/dist/esm/z-myz-card-footer-sections.entry.js +1 -1
  353. package/dist/esm/z-myz-card-footer.entry.js +2 -2
  354. package/dist/esm/z-myz-card-icon.entry.js +1 -1
  355. package/dist/esm/z-myz-card-info.entry.js +3 -3
  356. package/dist/esm/z-myz-card-list.entry.js +1 -1
  357. package/dist/esm/z-myz-card_4.entry.js +5 -5
  358. package/dist/esm/z-myz-list-item.entry.js +3 -3
  359. package/dist/esm/z-myz-list.entry.js +1 -1
  360. package/dist/esm/z-navigation-tabs.entry.js +1 -1
  361. package/dist/esm/z-notification.entry.js +1 -1
  362. package/dist/esm/z-notification.entry.js.map +1 -1
  363. package/dist/esm/z-otp.entry.js +3 -3
  364. package/dist/esm/z-pagination.entry.js +1 -1
  365. package/dist/esm/z-popover.entry.js +20 -16
  366. package/dist/esm/z-popover.entry.js.map +1 -1
  367. package/dist/esm/z-range-picker.entry.js +5 -5
  368. package/dist/esm/z-section-title.entry.js +2 -2
  369. package/dist/esm/z-select.entry.js +2 -2
  370. package/dist/esm/z-skip-to-content.entry.js +2 -2
  371. package/dist/esm/z-slideshow.entry.js +2 -2
  372. package/dist/esm/z-table.entry.js +9 -9
  373. package/dist/esm/z-tbody.entry.js +1 -1
  374. package/dist/esm/z-td.entry.js +2 -2
  375. package/dist/esm/z-tfoot.entry.js +1 -1
  376. package/dist/esm/z-th.entry.js +2 -2
  377. package/dist/esm/z-thead.entry.js +1 -1
  378. package/dist/esm/z-toast-notification-list.entry.js +2 -2
  379. package/dist/esm/z-toast-notification.entry.js +43 -46
  380. package/dist/esm/z-toast-notification.entry.js.map +1 -1
  381. package/dist/esm/z-toggle-button.entry.js +2 -2
  382. package/dist/esm/z-toggle-switch.entry.js +5 -5
  383. package/dist/esm/z-tool.entry.js +147 -42
  384. package/dist/esm/z-tool.entry.js.map +1 -1
  385. package/dist/esm/z-toolbar.entry.js +64 -66
  386. package/dist/esm/z-toolbar.entry.js.map +1 -1
  387. package/dist/esm/z-tooltip.entry.js +4 -3
  388. package/dist/esm/z-tooltip.entry.js.map +1 -1
  389. package/dist/esm/z-tr.entry.js +5 -5
  390. package/dist/esm/z-tree-list.entry.js +2 -2
  391. package/dist/esm/z-visually-hidden.entry.js +1 -1
  392. package/dist/types/beans/index.d.ts +184 -0
  393. package/dist/types/components/z-accordion/index.d.ts +5 -0
  394. package/dist/types/components/z-accordion/index.stories.d.ts +4 -4
  395. package/dist/types/components/z-app-header/index.stories.d.ts +16 -0
  396. package/dist/types/components/z-color-picker/index.d.ts +64 -0
  397. package/dist/types/components/z-color-picker/index.stories.d.ts +33 -0
  398. package/dist/types/components/z-icon/index.d.ts +21 -6
  399. package/dist/types/components/z-icon/index.stories.d.ts +23 -10
  400. package/dist/types/components/z-offcanvas/index.d.ts +24 -0
  401. package/dist/types/components/z-popover/index.d.ts +9 -4
  402. package/dist/types/components/z-toast-notification/index.d.ts +8 -7
  403. package/dist/types/components/z-toast-notification/index.stories.d.ts +11 -1
  404. package/dist/types/components/z-tool/index.d.ts +73 -9
  405. package/dist/types/components/z-tool/index.stories.d.ts +38 -12
  406. package/dist/types/components/z-toolbar/index.d.ts +23 -6
  407. package/dist/types/components/z-toolbar/index.stories.d.ts +23 -20
  408. package/dist/types/components/z-tooltip/index.d.ts +8 -0
  409. package/dist/types/components.d.ts +189 -35
  410. package/dist/types/constants/iconset.d.ts +281 -141
  411. package/dist/types/index.d.ts +1 -0
  412. package/dist/types/utils/utils.d.ts +3 -2
  413. package/dist/web-components-library/index.esm.js +1 -1
  414. package/dist/web-components-library/index.esm.js.map +1 -1
  415. package/dist/web-components-library/{p-375f8542.entry.js → p-0643d684.entry.js} +2 -2
  416. package/dist/web-components-library/{p-44459393.entry.js → p-0aed3ddc.entry.js} +2 -2
  417. package/{www/build/p-b96900bb.entry.js → dist/web-components-library/p-19103e70.entry.js} +2 -2
  418. package/dist/web-components-library/p-1a0c206d.js +2 -0
  419. package/dist/web-components-library/p-1a0c206d.js.map +1 -0
  420. package/dist/web-components-library/{p-fb232d07.entry.js → p-252893a8.entry.js} +2 -2
  421. package/{www/build/p-2aeffcf9.entry.js → dist/web-components-library/p-26ed6c96.entry.js} +2 -2
  422. package/{www/build/p-99210133.entry.js → dist/web-components-library/p-2d4cf6ff.entry.js} +2 -2
  423. package/dist/web-components-library/{p-8687691b.entry.js → p-30a78a06.entry.js} +2 -2
  424. package/dist/web-components-library/p-32bc8a40.entry.js +2 -0
  425. package/dist/web-components-library/p-32bc8a40.entry.js.map +1 -0
  426. package/dist/web-components-library/p-3977b0ae.entry.js +2 -0
  427. package/dist/web-components-library/p-3ba7621b.entry.js +2 -0
  428. package/{www/build/p-8c164e0d.entry.js → dist/web-components-library/p-41891d34.entry.js} +2 -2
  429. package/dist/web-components-library/p-42abfe3b.entry.js +2 -0
  430. package/dist/web-components-library/p-4504375f.entry.js +2 -0
  431. package/{www/build/p-19f5b6a9.entry.js → dist/web-components-library/p-47813782.entry.js} +2 -2
  432. package/{www/build/p-b7b972c0.entry.js → dist/web-components-library/p-47b59f05.entry.js} +2 -2
  433. package/dist/web-components-library/p-4844c774.js +2 -0
  434. package/{www/build/p-030257b3.js.map → dist/web-components-library/p-4844c774.js.map} +1 -1
  435. package/dist/web-components-library/p-55e5e53a.entry.js +2 -0
  436. package/dist/web-components-library/p-55e5e53a.entry.js.map +1 -0
  437. package/{www/build/p-4a257653.entry.js → dist/web-components-library/p-565c1815.entry.js} +2 -2
  438. package/{www/build/p-22ba2a17.entry.js → dist/web-components-library/p-58aeaf21.entry.js} +2 -2
  439. package/dist/web-components-library/{p-1c7550f9.entry.js → p-5905cca0.entry.js} +2 -2
  440. package/dist/web-components-library/{p-cc18a2b7.entry.js → p-5e2f6ab7.entry.js} +2 -2
  441. package/dist/web-components-library/{p-0a49dd1c.entry.js → p-613987cd.entry.js} +2 -2
  442. package/{www/build/p-b63c8e8b.entry.js → dist/web-components-library/p-6164feb9.entry.js} +2 -2
  443. package/dist/web-components-library/p-623fdee4.js +2 -0
  444. package/dist/web-components-library/{p-ee695830.entry.js → p-66c0f993.entry.js} +2 -2
  445. package/dist/web-components-library/{p-f19f12b1.js → p-68d91a93.js} +2 -2
  446. package/dist/web-components-library/p-6c6a655e.entry.js +2 -0
  447. package/dist/web-components-library/{p-5a24e268.entry.js.map → p-6c6a655e.entry.js.map} +1 -1
  448. package/{www/build/p-f4bac89b.entry.js → dist/web-components-library/p-6c9cd6be.entry.js} +2 -2
  449. package/dist/web-components-library/p-6d15da6f.entry.js +2 -0
  450. package/dist/web-components-library/p-6d15da6f.entry.js.map +1 -0
  451. package/{www/build/p-e3b82454.entry.js → dist/web-components-library/p-6e13aa8e.entry.js} +2 -2
  452. package/dist/web-components-library/{p-4affbb99.entry.js → p-767b66ca.entry.js} +2 -2
  453. package/{www/build/p-34975328.entry.js → dist/web-components-library/p-76d1d0e4.entry.js} +2 -2
  454. package/dist/web-components-library/{p-e9e2ceb4.entry.js → p-771dea79.entry.js} +2 -2
  455. package/dist/web-components-library/p-7b837e11.js +2 -0
  456. package/dist/web-components-library/{p-86160fe3.entry.js → p-7d655f96.entry.js} +2 -2
  457. package/dist/web-components-library/p-82eeea83.entry.js +2 -0
  458. package/dist/web-components-library/p-862989b6.entry.js +2 -0
  459. package/dist/web-components-library/p-862989b6.entry.js.map +1 -0
  460. package/dist/web-components-library/p-86618221.js +2 -0
  461. package/dist/web-components-library/p-86618221.js.map +1 -0
  462. package/dist/web-components-library/{p-757415e9.entry.js → p-88a9865c.entry.js} +2 -2
  463. package/dist/web-components-library/{p-2f948bac.entry.js → p-8988eee3.entry.js} +2 -2
  464. package/{www/build/p-1844a4f4.entry.js → dist/web-components-library/p-8a53fefb.entry.js} +2 -2
  465. package/dist/web-components-library/{p-748fa3ae.js → p-8b367393.js} +2 -2
  466. package/dist/web-components-library/{p-4551b0df.entry.js → p-8c52635e.entry.js} +2 -2
  467. package/dist/web-components-library/{p-240de9aa.entry.js → p-8fd50cc5.entry.js} +2 -2
  468. package/{www/build/p-1fd1cf02.entry.js → dist/web-components-library/p-92f13701.entry.js} +2 -2
  469. package/{www/build/p-ceeb3e2a.entry.js → dist/web-components-library/p-93d349ee.entry.js} +2 -2
  470. package/dist/web-components-library/p-988a58dd.entry.js +2 -0
  471. package/{www/build/p-816fd6dc.entry.js → dist/web-components-library/p-9ae0c0c6.entry.js} +2 -2
  472. package/dist/web-components-library/{p-d7f12672.js → p-9c816a3b.js} +2 -2
  473. package/{www/build/p-4cec3345.entry.js → dist/web-components-library/p-a2ee659d.entry.js} +2 -2
  474. package/{www/build/p-94916bdf.entry.js → dist/web-components-library/p-a4d2cf55.entry.js} +2 -2
  475. package/dist/web-components-library/p-a5146ef3.entry.js +2 -0
  476. package/dist/web-components-library/p-a5146ef3.entry.js.map +1 -0
  477. package/dist/web-components-library/{p-04f80811.entry.js → p-a8609510.entry.js} +2 -2
  478. package/{www/build/p-817689d5.entry.js → dist/web-components-library/p-aaa96c12.entry.js} +3 -3
  479. package/dist/web-components-library/{p-e0b88075.entry.js → p-b391211f.entry.js} +2 -2
  480. package/dist/web-components-library/{p-342b0eb0.entry.js → p-b421424f.entry.js} +2 -2
  481. package/dist/web-components-library/p-b54d923e.entry.js +2 -0
  482. package/dist/web-components-library/p-b54d923e.entry.js.map +1 -0
  483. package/dist/web-components-library/{p-d9c9de15.entry.js → p-b7056859.entry.js} +2 -2
  484. package/dist/web-components-library/p-c12f93e4.entry.js +2 -0
  485. package/dist/web-components-library/p-c12f93e4.entry.js.map +1 -0
  486. package/dist/web-components-library/{p-3f5aa623.entry.js → p-c5d52872.entry.js} +2 -2
  487. package/dist/web-components-library/p-c5d52872.entry.js.map +1 -0
  488. package/dist/web-components-library/{p-5159edb1.entry.js → p-c811b0cf.entry.js} +2 -2
  489. package/dist/web-components-library/p-c89e1f4b.entry.js +2 -0
  490. package/dist/web-components-library/p-c89e1f4b.entry.js.map +1 -0
  491. package/dist/web-components-library/{p-2bdac94e.entry.js → p-c9b81cab.entry.js} +2 -2
  492. package/dist/web-components-library/{p-30e42fb1.js → p-cb395500.js} +2 -2
  493. package/dist/web-components-library/{p-5a1f98a2.entry.js → p-cbc09112.entry.js} +2 -2
  494. package/dist/web-components-library/p-da3abb97.entry.js +2 -0
  495. package/dist/web-components-library/{p-2612e3a2.entry.js → p-daa442e6.entry.js} +2 -2
  496. package/dist/web-components-library/{p-c778bf87.entry.js → p-e8eacbeb.entry.js} +4 -4
  497. package/dist/web-components-library/p-e8eacbeb.entry.js.map +1 -0
  498. package/dist/web-components-library/p-eb15536d.js +2 -0
  499. package/dist/web-components-library/p-eb15536d.js.map +1 -0
  500. package/dist/web-components-library/p-efa6b991.entry.js +2 -0
  501. package/dist/web-components-library/{p-01f941c2.entry.js → p-f4b987ed.entry.js} +2 -2
  502. package/dist/web-components-library/{p-bdbcf353.entry.js → p-f662e7ff.entry.js} +2 -2
  503. package/dist/web-components-library/p-f92e0c29.entry.js +2 -0
  504. package/dist/web-components-library/{p-a905df88.entry.js → p-ff89d630.entry.js} +2 -2
  505. package/dist/web-components-library/web-components-library.css +23 -25
  506. package/dist/web-components-library/web-components-library.esm.js +1 -1
  507. package/dist/web-components-library/web-components-library.esm.js.map +1 -1
  508. package/package.json +3 -3
  509. package/react/components.d.ts +1 -0
  510. package/react/components.js +3 -2
  511. package/react/components.js.map +1 -1
  512. package/www/build/index.esm.js +1 -1
  513. package/www/build/index.esm.js.map +1 -1
  514. package/www/build/{p-375f8542.entry.js → p-0643d684.entry.js} +2 -2
  515. package/www/build/{p-44459393.entry.js → p-0aed3ddc.entry.js} +2 -2
  516. package/www/build/p-156f9df4.js +2 -0
  517. package/{dist/web-components-library/p-b96900bb.entry.js → www/build/p-19103e70.entry.js} +2 -2
  518. package/www/build/p-1a0c206d.js +2 -0
  519. package/www/build/p-1a0c206d.js.map +1 -0
  520. package/www/build/{p-fb232d07.entry.js → p-252893a8.entry.js} +2 -2
  521. package/{dist/web-components-library/p-2aeffcf9.entry.js → www/build/p-26ed6c96.entry.js} +2 -2
  522. package/{dist/web-components-library/p-99210133.entry.js → www/build/p-2d4cf6ff.entry.js} +2 -2
  523. package/www/build/{p-8687691b.entry.js → p-30a78a06.entry.js} +2 -2
  524. package/www/build/p-32bc8a40.entry.js +2 -0
  525. package/www/build/p-32bc8a40.entry.js.map +1 -0
  526. package/www/build/p-3977b0ae.entry.js +2 -0
  527. package/www/build/p-3ba7621b.entry.js +2 -0
  528. package/{dist/web-components-library/p-8c164e0d.entry.js → www/build/p-41891d34.entry.js} +2 -2
  529. package/www/build/p-42abfe3b.entry.js +2 -0
  530. package/www/build/p-4504375f.entry.js +2 -0
  531. package/{dist/web-components-library/p-19f5b6a9.entry.js → www/build/p-47813782.entry.js} +2 -2
  532. package/{dist/web-components-library/p-b7b972c0.entry.js → www/build/p-47b59f05.entry.js} +2 -2
  533. package/www/build/p-4844c774.js +2 -0
  534. package/{dist/web-components-library/p-030257b3.js.map → www/build/p-4844c774.js.map} +1 -1
  535. package/www/build/p-55e5e53a.entry.js +2 -0
  536. package/www/build/p-55e5e53a.entry.js.map +1 -0
  537. package/{dist/web-components-library/p-4a257653.entry.js → www/build/p-565c1815.entry.js} +2 -2
  538. package/{dist/web-components-library/p-22ba2a17.entry.js → www/build/p-58aeaf21.entry.js} +2 -2
  539. package/www/build/{p-1c7550f9.entry.js → p-5905cca0.entry.js} +2 -2
  540. package/www/build/{p-cc18a2b7.entry.js → p-5e2f6ab7.entry.js} +2 -2
  541. package/www/build/{p-0a49dd1c.entry.js → p-613987cd.entry.js} +2 -2
  542. package/{dist/web-components-library/p-b63c8e8b.entry.js → www/build/p-6164feb9.entry.js} +2 -2
  543. package/www/build/p-623fdee4.js +2 -0
  544. package/www/build/{p-ee695830.entry.js → p-66c0f993.entry.js} +2 -2
  545. package/www/build/{p-f19f12b1.js → p-68d91a93.js} +2 -2
  546. package/www/build/p-6c6a655e.entry.js +2 -0
  547. package/www/build/{p-5a24e268.entry.js.map → p-6c6a655e.entry.js.map} +1 -1
  548. package/{dist/web-components-library/p-f4bac89b.entry.js → www/build/p-6c9cd6be.entry.js} +2 -2
  549. package/www/build/p-6d15da6f.entry.js +2 -0
  550. package/www/build/p-6d15da6f.entry.js.map +1 -0
  551. package/{dist/web-components-library/p-e3b82454.entry.js → www/build/p-6e13aa8e.entry.js} +2 -2
  552. package/www/build/{p-4affbb99.entry.js → p-767b66ca.entry.js} +2 -2
  553. package/{dist/web-components-library/p-34975328.entry.js → www/build/p-76d1d0e4.entry.js} +2 -2
  554. package/www/build/{p-e9e2ceb4.entry.js → p-771dea79.entry.js} +2 -2
  555. package/www/build/p-7b837e11.js +2 -0
  556. package/www/build/{p-86160fe3.entry.js → p-7d655f96.entry.js} +2 -2
  557. package/www/build/{p-b5b5dae5.css → p-813bd63b.css} +23 -25
  558. package/www/build/p-82eeea83.entry.js +2 -0
  559. package/www/build/p-862989b6.entry.js +2 -0
  560. package/www/build/p-862989b6.entry.js.map +1 -0
  561. package/www/build/p-86618221.js +2 -0
  562. package/www/build/p-86618221.js.map +1 -0
  563. package/www/build/{p-757415e9.entry.js → p-88a9865c.entry.js} +2 -2
  564. package/www/build/{p-2f948bac.entry.js → p-8988eee3.entry.js} +2 -2
  565. package/{dist/web-components-library/p-1844a4f4.entry.js → www/build/p-8a53fefb.entry.js} +2 -2
  566. package/www/build/{p-748fa3ae.js → p-8b367393.js} +2 -2
  567. package/www/build/{p-4551b0df.entry.js → p-8c52635e.entry.js} +2 -2
  568. package/www/build/{p-240de9aa.entry.js → p-8fd50cc5.entry.js} +2 -2
  569. package/{dist/web-components-library/p-1fd1cf02.entry.js → www/build/p-92f13701.entry.js} +2 -2
  570. package/{dist/web-components-library/p-ceeb3e2a.entry.js → www/build/p-93d349ee.entry.js} +2 -2
  571. package/www/build/p-988a58dd.entry.js +2 -0
  572. package/{dist/web-components-library/p-816fd6dc.entry.js → www/build/p-9ae0c0c6.entry.js} +2 -2
  573. package/www/build/{p-d7f12672.js → p-9c816a3b.js} +2 -2
  574. package/{dist/web-components-library/p-4cec3345.entry.js → www/build/p-a2ee659d.entry.js} +2 -2
  575. package/{dist/web-components-library/p-94916bdf.entry.js → www/build/p-a4d2cf55.entry.js} +2 -2
  576. package/www/build/p-a5146ef3.entry.js +2 -0
  577. package/www/build/p-a5146ef3.entry.js.map +1 -0
  578. package/www/build/{p-04f80811.entry.js → p-a8609510.entry.js} +2 -2
  579. package/{dist/web-components-library/p-817689d5.entry.js → www/build/p-aaa96c12.entry.js} +3 -3
  580. package/www/build/{p-e0b88075.entry.js → p-b391211f.entry.js} +2 -2
  581. package/www/build/{p-342b0eb0.entry.js → p-b421424f.entry.js} +2 -2
  582. package/www/build/p-b54d923e.entry.js +2 -0
  583. package/www/build/p-b54d923e.entry.js.map +1 -0
  584. package/www/build/{p-d9c9de15.entry.js → p-b7056859.entry.js} +2 -2
  585. package/www/build/p-c12f93e4.entry.js +2 -0
  586. package/www/build/p-c12f93e4.entry.js.map +1 -0
  587. package/www/build/{p-3f5aa623.entry.js → p-c5d52872.entry.js} +2 -2
  588. package/www/build/p-c5d52872.entry.js.map +1 -0
  589. package/www/build/{p-5159edb1.entry.js → p-c811b0cf.entry.js} +2 -2
  590. package/www/build/p-c89e1f4b.entry.js +2 -0
  591. package/www/build/p-c89e1f4b.entry.js.map +1 -0
  592. package/www/build/{p-2bdac94e.entry.js → p-c9b81cab.entry.js} +2 -2
  593. package/www/build/{p-30e42fb1.js → p-cb395500.js} +2 -2
  594. package/www/build/{p-5a1f98a2.entry.js → p-cbc09112.entry.js} +2 -2
  595. package/www/build/p-da3abb97.entry.js +2 -0
  596. package/www/build/{p-2612e3a2.entry.js → p-daa442e6.entry.js} +2 -2
  597. package/www/build/{p-c778bf87.entry.js → p-e8eacbeb.entry.js} +4 -4
  598. package/www/build/p-e8eacbeb.entry.js.map +1 -0
  599. package/www/build/p-eb15536d.js +2 -0
  600. package/www/build/p-eb15536d.js.map +1 -0
  601. package/www/build/p-efa6b991.entry.js +2 -0
  602. package/www/build/{p-01f941c2.entry.js → p-f4b987ed.entry.js} +2 -2
  603. package/www/build/{p-bdbcf353.entry.js → p-f662e7ff.entry.js} +2 -2
  604. package/www/build/p-f92e0c29.entry.js +2 -0
  605. package/www/build/{p-a905df88.entry.js → p-ff89d630.entry.js} +2 -2
  606. package/www/build/web-components-library.css +23 -25
  607. package/www/build/web-components-library.esm.js +1 -1
  608. package/www/build/web-components-library.esm.js.map +1 -1
  609. package/www/index.html +1 -1
  610. package/dist/cjs/index-97a4c18d.js.map +0 -1
  611. package/dist/cjs/utils-5148245a.js.map +0 -1
  612. package/dist/esm/index-2a6324f8.js.map +0 -1
  613. package/dist/esm/utils-e66d94c3.js.map +0 -1
  614. package/dist/web-components-library/p-030257b3.js +0 -2
  615. package/dist/web-components-library/p-1170826b.js +0 -2
  616. package/dist/web-components-library/p-17af7fb2.js +0 -2
  617. package/dist/web-components-library/p-17af7fb2.js.map +0 -1
  618. package/dist/web-components-library/p-17e1abca.entry.js +0 -2
  619. package/dist/web-components-library/p-17e1abca.entry.js.map +0 -1
  620. package/dist/web-components-library/p-198b1692.entry.js +0 -2
  621. package/dist/web-components-library/p-22128478.entry.js +0 -2
  622. package/dist/web-components-library/p-22128478.entry.js.map +0 -1
  623. package/dist/web-components-library/p-237fcaa9.entry.js +0 -2
  624. package/dist/web-components-library/p-334cba5d.entry.js +0 -2
  625. package/dist/web-components-library/p-334cba5d.entry.js.map +0 -1
  626. package/dist/web-components-library/p-3f5aa623.entry.js.map +0 -1
  627. package/dist/web-components-library/p-4c9bf42d.js +0 -2
  628. package/dist/web-components-library/p-5a24e268.entry.js +0 -2
  629. package/dist/web-components-library/p-60e3fa30.entry.js +0 -2
  630. package/dist/web-components-library/p-6cffbabc.entry.js +0 -2
  631. package/dist/web-components-library/p-6cffbabc.entry.js.map +0 -1
  632. package/dist/web-components-library/p-9e3da0b7.entry.js +0 -2
  633. package/dist/web-components-library/p-bc7fd8af.entry.js +0 -2
  634. package/dist/web-components-library/p-bc7fd8af.entry.js.map +0 -1
  635. package/dist/web-components-library/p-c778bf87.entry.js.map +0 -1
  636. package/dist/web-components-library/p-d2035d26.entry.js +0 -2
  637. package/dist/web-components-library/p-d6a7b7f3.entry.js +0 -2
  638. package/dist/web-components-library/p-d6a7b7f3.entry.js.map +0 -1
  639. package/dist/web-components-library/p-d75f8bbb.entry.js +0 -2
  640. package/dist/web-components-library/p-d90d2698.entry.js +0 -2
  641. package/dist/web-components-library/p-deb7f8d7.entry.js +0 -2
  642. package/dist/web-components-library/p-e5407cc1.entry.js +0 -2
  643. package/dist/web-components-library/p-e6778114.js +0 -2
  644. package/dist/web-components-library/p-e6778114.js.map +0 -1
  645. package/dist/web-components-library/p-f5dfd04d.entry.js +0 -2
  646. package/dist/web-components-library/p-f5dfd04d.entry.js.map +0 -1
  647. package/www/build/p-030257b3.js +0 -2
  648. package/www/build/p-0aba9c42.js +0 -2
  649. package/www/build/p-1170826b.js +0 -2
  650. package/www/build/p-17af7fb2.js +0 -2
  651. package/www/build/p-17af7fb2.js.map +0 -1
  652. package/www/build/p-17e1abca.entry.js +0 -2
  653. package/www/build/p-17e1abca.entry.js.map +0 -1
  654. package/www/build/p-198b1692.entry.js +0 -2
  655. package/www/build/p-22128478.entry.js +0 -2
  656. package/www/build/p-22128478.entry.js.map +0 -1
  657. package/www/build/p-237fcaa9.entry.js +0 -2
  658. package/www/build/p-334cba5d.entry.js +0 -2
  659. package/www/build/p-334cba5d.entry.js.map +0 -1
  660. package/www/build/p-3f5aa623.entry.js.map +0 -1
  661. package/www/build/p-4c9bf42d.js +0 -2
  662. package/www/build/p-5a24e268.entry.js +0 -2
  663. package/www/build/p-60e3fa30.entry.js +0 -2
  664. package/www/build/p-6cffbabc.entry.js +0 -2
  665. package/www/build/p-6cffbabc.entry.js.map +0 -1
  666. package/www/build/p-9e3da0b7.entry.js +0 -2
  667. package/www/build/p-bc7fd8af.entry.js +0 -2
  668. package/www/build/p-bc7fd8af.entry.js.map +0 -1
  669. package/www/build/p-c778bf87.entry.js.map +0 -1
  670. package/www/build/p-d2035d26.entry.js +0 -2
  671. package/www/build/p-d6a7b7f3.entry.js +0 -2
  672. package/www/build/p-d6a7b7f3.entry.js.map +0 -1
  673. package/www/build/p-d75f8bbb.entry.js +0 -2
  674. package/www/build/p-d90d2698.entry.js +0 -2
  675. package/www/build/p-deb7f8d7.entry.js +0 -2
  676. package/www/build/p-e5407cc1.entry.js +0 -2
  677. package/www/build/p-e6778114.js +0 -2
  678. package/www/build/p-e6778114.js.map +0 -1
  679. package/www/build/p-f5dfd04d.entry.js +0 -2
  680. package/www/build/p-f5dfd04d.entry.js.map +0 -1
  681. /package/dist/web-components-library/{p-375f8542.entry.js.map → p-0643d684.entry.js.map} +0 -0
  682. /package/dist/web-components-library/{p-44459393.entry.js.map → p-0aed3ddc.entry.js.map} +0 -0
  683. /package/dist/web-components-library/{p-b96900bb.entry.js.map → p-19103e70.entry.js.map} +0 -0
  684. /package/dist/web-components-library/{p-fb232d07.entry.js.map → p-252893a8.entry.js.map} +0 -0
  685. /package/dist/web-components-library/{p-2aeffcf9.entry.js.map → p-26ed6c96.entry.js.map} +0 -0
  686. /package/dist/web-components-library/{p-99210133.entry.js.map → p-2d4cf6ff.entry.js.map} +0 -0
  687. /package/dist/web-components-library/{p-8687691b.entry.js.map → p-30a78a06.entry.js.map} +0 -0
  688. /package/dist/web-components-library/{p-237fcaa9.entry.js.map → p-3977b0ae.entry.js.map} +0 -0
  689. /package/dist/web-components-library/{p-9e3da0b7.entry.js.map → p-3ba7621b.entry.js.map} +0 -0
  690. /package/dist/web-components-library/{p-8c164e0d.entry.js.map → p-41891d34.entry.js.map} +0 -0
  691. /package/dist/web-components-library/{p-d2035d26.entry.js.map → p-42abfe3b.entry.js.map} +0 -0
  692. /package/dist/web-components-library/{p-60e3fa30.entry.js.map → p-4504375f.entry.js.map} +0 -0
  693. /package/dist/web-components-library/{p-19f5b6a9.entry.js.map → p-47813782.entry.js.map} +0 -0
  694. /package/dist/web-components-library/{p-b7b972c0.entry.js.map → p-47b59f05.entry.js.map} +0 -0
  695. /package/dist/web-components-library/{p-4a257653.entry.js.map → p-565c1815.entry.js.map} +0 -0
  696. /package/dist/web-components-library/{p-22ba2a17.entry.js.map → p-58aeaf21.entry.js.map} +0 -0
  697. /package/dist/web-components-library/{p-1c7550f9.entry.js.map → p-5905cca0.entry.js.map} +0 -0
  698. /package/dist/web-components-library/{p-cc18a2b7.entry.js.map → p-5e2f6ab7.entry.js.map} +0 -0
  699. /package/dist/web-components-library/{p-0a49dd1c.entry.js.map → p-613987cd.entry.js.map} +0 -0
  700. /package/dist/web-components-library/{p-b63c8e8b.entry.js.map → p-6164feb9.entry.js.map} +0 -0
  701. /package/dist/web-components-library/{p-1170826b.js.map → p-623fdee4.js.map} +0 -0
  702. /package/dist/web-components-library/{p-ee695830.entry.js.map → p-66c0f993.entry.js.map} +0 -0
  703. /package/dist/web-components-library/{p-f19f12b1.js.map → p-68d91a93.js.map} +0 -0
  704. /package/dist/web-components-library/{p-f4bac89b.entry.js.map → p-6c9cd6be.entry.js.map} +0 -0
  705. /package/dist/web-components-library/{p-e3b82454.entry.js.map → p-6e13aa8e.entry.js.map} +0 -0
  706. /package/dist/web-components-library/{p-4affbb99.entry.js.map → p-767b66ca.entry.js.map} +0 -0
  707. /package/dist/web-components-library/{p-34975328.entry.js.map → p-76d1d0e4.entry.js.map} +0 -0
  708. /package/dist/web-components-library/{p-e9e2ceb4.entry.js.map → p-771dea79.entry.js.map} +0 -0
  709. /package/dist/web-components-library/{p-4c9bf42d.js.map → p-7b837e11.js.map} +0 -0
  710. /package/dist/web-components-library/{p-86160fe3.entry.js.map → p-7d655f96.entry.js.map} +0 -0
  711. /package/dist/web-components-library/{p-d75f8bbb.entry.js.map → p-82eeea83.entry.js.map} +0 -0
  712. /package/dist/web-components-library/{p-757415e9.entry.js.map → p-88a9865c.entry.js.map} +0 -0
  713. /package/dist/web-components-library/{p-2f948bac.entry.js.map → p-8988eee3.entry.js.map} +0 -0
  714. /package/dist/web-components-library/{p-1844a4f4.entry.js.map → p-8a53fefb.entry.js.map} +0 -0
  715. /package/dist/web-components-library/{p-748fa3ae.js.map → p-8b367393.js.map} +0 -0
  716. /package/dist/web-components-library/{p-4551b0df.entry.js.map → p-8c52635e.entry.js.map} +0 -0
  717. /package/dist/web-components-library/{p-240de9aa.entry.js.map → p-8fd50cc5.entry.js.map} +0 -0
  718. /package/dist/web-components-library/{p-1fd1cf02.entry.js.map → p-92f13701.entry.js.map} +0 -0
  719. /package/dist/web-components-library/{p-ceeb3e2a.entry.js.map → p-93d349ee.entry.js.map} +0 -0
  720. /package/dist/web-components-library/{p-d90d2698.entry.js.map → p-988a58dd.entry.js.map} +0 -0
  721. /package/dist/web-components-library/{p-816fd6dc.entry.js.map → p-9ae0c0c6.entry.js.map} +0 -0
  722. /package/dist/web-components-library/{p-d7f12672.js.map → p-9c816a3b.js.map} +0 -0
  723. /package/dist/web-components-library/{p-4cec3345.entry.js.map → p-a2ee659d.entry.js.map} +0 -0
  724. /package/dist/web-components-library/{p-94916bdf.entry.js.map → p-a4d2cf55.entry.js.map} +0 -0
  725. /package/dist/web-components-library/{p-04f80811.entry.js.map → p-a8609510.entry.js.map} +0 -0
  726. /package/dist/web-components-library/{p-817689d5.entry.js.map → p-aaa96c12.entry.js.map} +0 -0
  727. /package/dist/web-components-library/{p-e0b88075.entry.js.map → p-b391211f.entry.js.map} +0 -0
  728. /package/dist/web-components-library/{p-342b0eb0.entry.js.map → p-b421424f.entry.js.map} +0 -0
  729. /package/dist/web-components-library/{p-d9c9de15.entry.js.map → p-b7056859.entry.js.map} +0 -0
  730. /package/dist/web-components-library/{p-5159edb1.entry.js.map → p-c811b0cf.entry.js.map} +0 -0
  731. /package/dist/web-components-library/{p-2bdac94e.entry.js.map → p-c9b81cab.entry.js.map} +0 -0
  732. /package/dist/web-components-library/{p-30e42fb1.js.map → p-cb395500.js.map} +0 -0
  733. /package/dist/web-components-library/{p-5a1f98a2.entry.js.map → p-cbc09112.entry.js.map} +0 -0
  734. /package/dist/web-components-library/{p-deb7f8d7.entry.js.map → p-da3abb97.entry.js.map} +0 -0
  735. /package/dist/web-components-library/{p-2612e3a2.entry.js.map → p-daa442e6.entry.js.map} +0 -0
  736. /package/dist/web-components-library/{p-e5407cc1.entry.js.map → p-efa6b991.entry.js.map} +0 -0
  737. /package/dist/web-components-library/{p-01f941c2.entry.js.map → p-f4b987ed.entry.js.map} +0 -0
  738. /package/dist/web-components-library/{p-bdbcf353.entry.js.map → p-f662e7ff.entry.js.map} +0 -0
  739. /package/dist/web-components-library/{p-198b1692.entry.js.map → p-f92e0c29.entry.js.map} +0 -0
  740. /package/dist/web-components-library/{p-a905df88.entry.js.map → p-ff89d630.entry.js.map} +0 -0
  741. /package/www/build/{p-375f8542.entry.js.map → p-0643d684.entry.js.map} +0 -0
  742. /package/www/build/{p-44459393.entry.js.map → p-0aed3ddc.entry.js.map} +0 -0
  743. /package/www/build/{p-b96900bb.entry.js.map → p-19103e70.entry.js.map} +0 -0
  744. /package/www/build/{p-fb232d07.entry.js.map → p-252893a8.entry.js.map} +0 -0
  745. /package/www/build/{p-2aeffcf9.entry.js.map → p-26ed6c96.entry.js.map} +0 -0
  746. /package/www/build/{p-99210133.entry.js.map → p-2d4cf6ff.entry.js.map} +0 -0
  747. /package/www/build/{p-8687691b.entry.js.map → p-30a78a06.entry.js.map} +0 -0
  748. /package/www/build/{p-237fcaa9.entry.js.map → p-3977b0ae.entry.js.map} +0 -0
  749. /package/www/build/{p-9e3da0b7.entry.js.map → p-3ba7621b.entry.js.map} +0 -0
  750. /package/www/build/{p-8c164e0d.entry.js.map → p-41891d34.entry.js.map} +0 -0
  751. /package/www/build/{p-d2035d26.entry.js.map → p-42abfe3b.entry.js.map} +0 -0
  752. /package/www/build/{p-60e3fa30.entry.js.map → p-4504375f.entry.js.map} +0 -0
  753. /package/www/build/{p-19f5b6a9.entry.js.map → p-47813782.entry.js.map} +0 -0
  754. /package/www/build/{p-b7b972c0.entry.js.map → p-47b59f05.entry.js.map} +0 -0
  755. /package/www/build/{p-4a257653.entry.js.map → p-565c1815.entry.js.map} +0 -0
  756. /package/www/build/{p-22ba2a17.entry.js.map → p-58aeaf21.entry.js.map} +0 -0
  757. /package/www/build/{p-1c7550f9.entry.js.map → p-5905cca0.entry.js.map} +0 -0
  758. /package/www/build/{p-cc18a2b7.entry.js.map → p-5e2f6ab7.entry.js.map} +0 -0
  759. /package/www/build/{p-0a49dd1c.entry.js.map → p-613987cd.entry.js.map} +0 -0
  760. /package/www/build/{p-b63c8e8b.entry.js.map → p-6164feb9.entry.js.map} +0 -0
  761. /package/www/build/{p-1170826b.js.map → p-623fdee4.js.map} +0 -0
  762. /package/www/build/{p-ee695830.entry.js.map → p-66c0f993.entry.js.map} +0 -0
  763. /package/www/build/{p-f19f12b1.js.map → p-68d91a93.js.map} +0 -0
  764. /package/www/build/{p-f4bac89b.entry.js.map → p-6c9cd6be.entry.js.map} +0 -0
  765. /package/www/build/{p-e3b82454.entry.js.map → p-6e13aa8e.entry.js.map} +0 -0
  766. /package/www/build/{p-4affbb99.entry.js.map → p-767b66ca.entry.js.map} +0 -0
  767. /package/www/build/{p-34975328.entry.js.map → p-76d1d0e4.entry.js.map} +0 -0
  768. /package/www/build/{p-e9e2ceb4.entry.js.map → p-771dea79.entry.js.map} +0 -0
  769. /package/www/build/{p-4c9bf42d.js.map → p-7b837e11.js.map} +0 -0
  770. /package/www/build/{p-86160fe3.entry.js.map → p-7d655f96.entry.js.map} +0 -0
  771. /package/www/build/{p-d75f8bbb.entry.js.map → p-82eeea83.entry.js.map} +0 -0
  772. /package/www/build/{p-757415e9.entry.js.map → p-88a9865c.entry.js.map} +0 -0
  773. /package/www/build/{p-2f948bac.entry.js.map → p-8988eee3.entry.js.map} +0 -0
  774. /package/www/build/{p-1844a4f4.entry.js.map → p-8a53fefb.entry.js.map} +0 -0
  775. /package/www/build/{p-748fa3ae.js.map → p-8b367393.js.map} +0 -0
  776. /package/www/build/{p-4551b0df.entry.js.map → p-8c52635e.entry.js.map} +0 -0
  777. /package/www/build/{p-240de9aa.entry.js.map → p-8fd50cc5.entry.js.map} +0 -0
  778. /package/www/build/{p-1fd1cf02.entry.js.map → p-92f13701.entry.js.map} +0 -0
  779. /package/www/build/{p-ceeb3e2a.entry.js.map → p-93d349ee.entry.js.map} +0 -0
  780. /package/www/build/{p-d90d2698.entry.js.map → p-988a58dd.entry.js.map} +0 -0
  781. /package/www/build/{p-816fd6dc.entry.js.map → p-9ae0c0c6.entry.js.map} +0 -0
  782. /package/www/build/{p-d7f12672.js.map → p-9c816a3b.js.map} +0 -0
  783. /package/www/build/{p-4cec3345.entry.js.map → p-a2ee659d.entry.js.map} +0 -0
  784. /package/www/build/{p-94916bdf.entry.js.map → p-a4d2cf55.entry.js.map} +0 -0
  785. /package/www/build/{p-04f80811.entry.js.map → p-a8609510.entry.js.map} +0 -0
  786. /package/www/build/{p-817689d5.entry.js.map → p-aaa96c12.entry.js.map} +0 -0
  787. /package/www/build/{p-e0b88075.entry.js.map → p-b391211f.entry.js.map} +0 -0
  788. /package/www/build/{p-342b0eb0.entry.js.map → p-b421424f.entry.js.map} +0 -0
  789. /package/www/build/{p-d9c9de15.entry.js.map → p-b7056859.entry.js.map} +0 -0
  790. /package/www/build/{p-5159edb1.entry.js.map → p-c811b0cf.entry.js.map} +0 -0
  791. /package/www/build/{p-2bdac94e.entry.js.map → p-c9b81cab.entry.js.map} +0 -0
  792. /package/www/build/{p-30e42fb1.js.map → p-cb395500.js.map} +0 -0
  793. /package/www/build/{p-5a1f98a2.entry.js.map → p-cbc09112.entry.js.map} +0 -0
  794. /package/www/build/{p-deb7f8d7.entry.js.map → p-da3abb97.entry.js.map} +0 -0
  795. /package/www/build/{p-2612e3a2.entry.js.map → p-daa442e6.entry.js.map} +0 -0
  796. /package/www/build/{p-e5407cc1.entry.js.map → p-efa6b991.entry.js.map} +0 -0
  797. /package/www/build/{p-01f941c2.entry.js.map → p-f4b987ed.entry.js.map} +0 -0
  798. /package/www/build/{p-bdbcf353.entry.js.map → p-f662e7ff.entry.js.map} +0 -0
  799. /package/www/build/{p-198b1692.entry.js.map → p-f92e0c29.entry.js.map} +0 -0
  800. /package/www/build/{p-a905df88.entry.js.map → p-ff89d630.entry.js.map} +0 -0
@@ -24,10 +24,10 @@ const ZToggleButton$1 = /*@__PURE__*/ proxyCustomElement(class ZToggleButton ext
24
24
  this.toggleClick.emit(this.opened);
25
25
  }
26
26
  render() {
27
- return (h("button", { key: '2a0abdb9874a70f75bed7b2407bbfcb26da3245c', tabindex: this.avoidclick ? "-1" : "0", class: {
27
+ return (h("button", { key: '6df0aee8dfd4785cd9787b2940c12cc3d680ef0c', tabindex: this.avoidclick ? "-1" : "0", class: {
28
28
  "isopen": this.opened,
29
29
  "avoid-clicks": this.avoidclick,
30
- }, disabled: this.isdisabled, "aria-expanded": this.opened ? "true" : "false", "aria-label": this.ariaLabel, onClick: () => this.emitToggleClick() }, h("z-icon", { key: '56c5c803cf48530342b4fce72cdb75783b226c3f', name: this.opened ? "chevron-down" : "chevron-up", width: 16, height: 16 }), this.label));
30
+ }, disabled: this.isdisabled, "aria-expanded": this.opened ? "true" : "false", "aria-label": this.ariaLabel, onClick: () => this.emitToggleClick() }, h("z-icon", { key: 'ab52cd6023b492b5bba8086fd189112e5329c3ad', name: this.opened ? "chevron-down" : "chevron-up", width: 16, height: 16 }), this.label));
31
31
  }
32
32
  static get style() { return ZToggleButtonStyle0; }
33
33
  }, [1, "z-toggle-button", {
@@ -30,14 +30,14 @@ const ZToggleSwitch$1 = /*@__PURE__*/ proxyCustomElement(class ZToggleSwitch ext
30
30
  this.emitToggleClick();
31
31
  }
32
32
  render() {
33
- return (h(Host, { key: 'd82db0fca4f7786bfed1b958d9eb3ba538a1df59' }, h("input", { key: 'ade4df962bf570c4bac896be7ca2c08ad78950c6', id: this.htmlid, type: "checkbox", checked: this.checked, disabled: this.disabled, onChange: this.handleClick.bind(this) }), h("label", { key: 'c0d26a77609ae2c3954bf1d249205706f3189051', htmlFor: this.htmlid, class: {
33
+ return (h(Host, { key: 'b572a91e4ed2f91cbe0b7a393371425a5b9b896a' }, h("input", { key: 'acff3447044eba6dd7622feb954a03d5503111f1', id: this.htmlid, type: "checkbox", checked: this.checked, disabled: this.disabled, onChange: this.handleClick.bind(this) }), h("label", { key: '58b70932d34e39bb1c078947eea614d6384b9660', htmlFor: this.htmlid, class: {
34
34
  [this.labelPosition]: true,
35
35
  disabled: this.disabled,
36
- } }, h("span", { key: 'db8ed72ffe4cc7a6a90de0e1707cf7ce16781d53' }, h("slot", { key: '7624e7d062a337ac90d45db4c9977ae4076b65e3' })), h("span", { key: 'b82c48fe14cb3485ed8055f7c7165078fb928d4e', class: {
36
+ } }, h("span", { key: '824e029aeb434813b35f72891d991f19a90daded' }, h("slot", { key: '37e8bad4378c65f4a3411fee47a960b9220af5d3' })), h("span", { key: '55eaf2b824ce8e91b77b5f8f2677724b2834fad6', class: {
37
37
  container: true,
38
38
  disabled: this.disabled,
39
39
  checked: this.checked,
40
- } }, h("span", { key: 'eff2c6d5e3a9afcd16335d81bb799a272d559d22', class: "circle" }, this.checked && (h("z-icon", { key: '4787dd49b9be72d9ba601d10ec1d2b370875c386', width: 12, height: 12, name: "checkmark" })))))));
40
+ } }, h("span", { key: '41b7660f89b5ba9829782d3e6b041323357fdefa', class: "circle" }, this.checked && (h("z-icon", { key: 'ae68c35e2765c6eece7dcee8f7ad570a6fc0aa34', width: 12, height: 12, name: "checkmark" })))))));
41
41
  }
42
42
  static get style() { return ZToggleSwitchStyle0; }
43
43
  }, [6, "z-toggle-switch", {
@@ -1,21 +1,30 @@
1
1
  import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
2
- import { P as PopoverPosition } from './index2.js';
3
- import { d as defineCustomElement$3 } from './index10.js';
4
- import { d as defineCustomElement$2 } from './index24.js';
2
+ import { P as PopoverPosition, g as KeyboardCode } from './index2.js';
3
+ import { a as containsElement } from './utils.js';
4
+ import { d as defineCustomElement$4 } from './index10.js';
5
+ import { d as defineCustomElement$3 } from './index24.js';
6
+ import { d as defineCustomElement$2 } from './index27.js';
5
7
 
6
- const stylesCss = ":host,*{box-sizing:border-box}.z-tool{--z-tool-size:calc(var(--space-unit) * 5.5);--z-tool-icon-size:calc(var(--space-unit) * 2.5);display:inline-flex;width:var(--z-tool-size);height:var(--z-tool-size);align-items:center;justify-content:center;padding:0;border:none;margin:0;background-color:var(--color-surface01);border-radius:var(--border-radius);cursor:pointer}:host([active]) .z-tool{box-shadow:inset 0 0 0 2px var(--color-primary01)}:host([open]) .z-tool{box-shadow:inset 0 0 0 2px var(--color-primary01)}@media (hover: hover){:host(:not([disabled])) .z-tool:hover{background-color:var(--color-primary03)}}:host([disabled]) .z-tool{color:var(--color-disabled01-icon);cursor:not-allowed}.z-tool:focus-visible{box-shadow:inset 0 0 0 2px var(--color-primary01);outline:none}z-icon{--z-icon-width:var(--z-tool-icon-size);--z-icon-height:var(--z-tool-icon-size);display:block;fill:var(--color-default-icon)}:host([disabled]) z-icon{fill:var(--color-disabled01-icon)}.z-tool-tooltip{--z-popover-padding:calc(var(--space-unit) * 1.5) calc(var(--space-unit) * 2);--z-popover-theme--surface:var(--color-surface05);--z-popover-theme--text:var(--color-text-inverse);--z-popover-shadow-filter:drop-shadow(0 4px 8px var(--shadow-color-base));z-index:2;font-family:var(--font-family-sans)}@media (max-width: 767px){.z-tool-tooltip{display:none !important}}:host{position:var(--z-tool-host-position, relative)}.z-tool-submenu{position:var(--z-tool-submenu-position, absolute);z-index:1;top:var(--z-tool-submenu-top, calc(100% + 4px));bottom:var(--z-tool-submenu-bottom, auto);left:var(--z-tool-submenu-left, 50%);display:none;transform:var(--z-tool-submenu-transform, translateX(-50%))}.z-tool-submenu-open{display:block}";
8
+ const stylesCss = ":host,*{box-sizing:border-box}.z-tool{--z-tool-size:calc(var(--space-unit) * 5.5);--z-tool-icon-size:calc(var(--space-unit) * 2.5);position:relative;display:inline-flex;width:var(--z-tool-size);height:var(--z-tool-size);align-items:center;justify-content:center;padding:0;border:none;margin:0;background-color:var(--color-surface01);border-radius:var(--border-radius);cursor:pointer}:host(:is([active],[open])) .z-tool{box-shadow:inset 0 0 0 2px var(--color-primary01)}:host([open]) .z-tool{background:var(--color-primary03)}@media (hover: hover){:host(:hover),:host(.z-tool-tooltip-open){z-index:1}:host(:not([disabled])) .z-tool:hover{background-color:var(--color-primary03)}}.z-tool:focus:focus-visible{background-color:var(--color-primary03);outline:none}z-icon{--z-icon-width:var(--z-tool-icon-size);--z-icon-height:var(--z-tool-icon-size);display:block;fill:var(--color-default-icon)}:host([disabled]) .z-tool{color:var(--color-disabled01-icon);cursor:not-allowed}:host([disabled]) z-icon{fill:var(--color-disabled01-icon)}.z-tool-tooltip{--z-tooltip-padding:calc(var(--space-unit) * 1.5) calc(var(--space-unit) * 2);--z-tooltip-shadow-filter:drop-shadow(0 4px 8px var(--shadow-color-base));position:relative;z-index:2;font-family:var(--font-family-sans);white-space:nowrap}.z-tool-submenu{z-index:3;border-radius:calc(var(--border-radius) + var(--border-size-small))}.z-tool-submenu ::slotted(z-color-picker){border:var(--border-size-small) solid var(--color-surface03);border-radius:var(--border-radius)}@media (max-width: 767px) and (hover: none){.z-tool-tooltip{display:none !important}}";
7
9
  const ZToolStyle0 = stylesCss;
8
10
 
11
+ const typographyCss = ":root{--font-family-sans:\"IBM Plex Sans\", sans-serif;--font-family-serif:\"IBM Plex Serif\", serif;--font-lt:300;--font-rg:400;--font-sb:600;--font-bd:700;--font-size-1:0.75rem;--font-size-2:0.875rem;--font-size-3:1rem;--font-size-4:1.125rem;--font-size-5:1.25rem;--font-size-6:1.5rem;--font-size-7:1.75rem;--font-size-8:2rem;--font-size-9:2.25rem;--font-size-10:2.625rem;--font-size-11:3rem;--font-size-12:3.375rem;--font-size-13:3.75rem;--font-size-14:4.25rem;--font-size-15:4.75rem;--font-size-16:5.25rem;--font-size-17:5.75rem;--section-title-1:var(--font-sb) var(--font-size-11) / 1.083 var(--font-family-serif);--section-title-2:var(--font-sb) var(--font-size-10) / 1.142 var(--font-family-serif);--section-title-3:var(--font-sb) var(--font-size-9) / 1.222 var(--font-family-serif);--section-title-4:var(--font-sb) var(--font-size-8) / 1.25 var(--font-family-serif);--section-title-5:var(--font-sb) var(--font-size-7) / 1.2857 var(--font-family-serif);--section-title-6:var(--font-sb) var(--font-size-6) / 1.333 var(--font-family-serif)}.heading-1,.heading-1-sb,.heading-1-lt{font-size:var(--font-size-7);font-weight:var(--font-rg);line-height:1.28}.heading-2,.heading-2-sb,.heading-2-lt{font-size:var(--font-size-6);font-weight:var(--font-rg);line-height:1.333}.heading-3,.heading-3-sb,.heading-3-lt{font-size:var(--font-size-6);font-weight:var(--font-rg);line-height:1.333}.heading-4,.heading-4-sb,.heading-4-lt{font-size:var(--font-size-5);font-weight:var(--font-rg);line-height:1.4}.body-1,.body-1-sb{font-size:var(--font-size-5);font-weight:var(--font-rg);line-height:1.4}.body-2,.body-2-sb{font-size:var(--font-size-4);font-weight:var(--font-rg);line-height:1.5}.body-3,.body-3-sb{font-size:var(--font-size-3);font-weight:var(--font-rg);line-height:1.5}.body-4,.body-4-sb{font-size:var(--font-size-2);font-weight:var(--font-rg);letter-spacing:0.16px;line-height:1.4}.body-5,.body-5-sb{font-size:var(--font-size-1);font-weight:var(--font-rg);letter-spacing:0.32px;line-height:1.333}.interactive-1,.interactive-1-sb{font-size:var(--font-size-3);font-weight:var(--font-rg);line-height:1.5}.interactive-2,.interactive-2-sb{font-size:var(--font-size-2);font-weight:var(--font-rg);letter-spacing:0.16px;line-height:1.4}.interactive-3,.interactive-3-sb{font-size:var(--font-size-1);font-weight:var(--font-rg);letter-spacing:0.32px;line-height:1.333}.helper,.helper-sb{font-size:var(--font-size-1);font-style:italic;font-weight:var(--font-rg);letter-spacing:0.32px;line-height:1.333}.section-title-1{font:var(--section-title-1)}.section-title-2{font:var(--section-title-2)}.section-title-3{font:var(--section-title-3)}.section-title-4{font:var(--section-title-4)}.section-title-5{font:var(--section-title-5)}.section-title-6{font:var(--section-title-6)}@media (min-width: 1152px){.heading-1,.heading-1-sb,.heading-1-lt{font-size:var(--font-size-8);font-weight:var(--font-rg);line-height:1.25}.heading-2,.heading-2-sb,.heading-2-lt{font-size:var(--font-size-7);font-weight:var(--font-rg);line-height:1.28}}@media (max-width: 767px){.mobile-heading-1,.mobile-heading-1-sb,.mobile-heading-1-lt{font-size:var(--font-size-7);font-weight:var(--font-rg);line-height:1.28}.mobile-heading-2,.mobile-heading-2-sb,.mobile-heading-2-lt{font-size:var(--font-size-6);font-weight:var(--font-rg);line-height:1.333}.mobile-heading-3,.mobile-heading-3-sb,.mobile-heading-3-lt{font-size:var(--font-size-6);font-weight:var(--font-rg);line-height:1.333}.mobile-heading-4,.mobile-heading-4-sb,.mobile-heading-4-lt{font-size:var(--font-size-5);font-weight:var(--font-rg);line-height:1.4}.mobile-body-1,.mobile-body-1-sb{font-size:var(--font-size-5);font-weight:var(--font-rg);line-height:1.4}.mobile-body-2,.mobile-body-2-sb{font-size:var(--font-size-4);font-weight:var(--font-rg);line-height:1.5}.mobile-body-3,.mobile-body-3-sb{font-size:var(--font-size-3);font-weight:var(--font-rg);line-height:1.5}.mobile-body-4,.mobile-body-4-sb{font-size:var(--font-size-2);font-weight:var(--font-rg);letter-spacing:0.16px;line-height:1.4}.mobile-body-5,.mobile-body-5-sb{font-size:var(--font-size-1);font-weight:var(--font-rg);letter-spacing:0.32px;line-height:1.333}.mobile-interactive-1,.mobile-interactive-1-sb{font-size:var(--font-size-3);font-weight:var(--font-rg);line-height:1.5}.mobile-interactive-2,.mobile-interactive-2-sb{font-size:var(--font-size-2);font-weight:var(--font-rg);letter-spacing:0.16px;line-height:1.4}.mobile-interactive-3,.mobile-interactive-3-sb{font-size:var(--font-size-1);font-weight:var(--font-rg);letter-spacing:0.32px;line-height:1.333}.mobile-section-title-1{font:var(--section-title-1)}.mobile-section-title-2{font:var(--section-title-2)}.mobile-section-title-3{font:var(--section-title-3)}.mobile-section-title-4{font:var(--section-title-4)}.mobile-section-title-5{font:var(--section-title-5)}.mobile-section-title-6{font:var(--section-title-6)}.mobile-heading-1-lt,.mobile-heading-2-lt,.mobile-heading-3-lt,.mobile-heading-4-lt{font-weight:var(--font-lt)}.mobile-heading-1-sb,.mobile-heading-2-sb,.mobile-heading-3-sb,.mobile-heading-4-sb,.mobile-body-1-sb,.mobile-body-2-sb,.mobile-body-3-sb,.mobile-body-4-sb,.mobile-body-5-sb,.mobile-interactive-1-sb,.mobile-interactive-2-sb,.mobile-interactive-3-sb{font-weight:var(--font-sb)}}@media (min-width: 768px) and (max-width: 1151px){.tablet-heading-1,.tablet-heading-1-sb,.tablet-heading-1-lt{font-size:var(--font-size-7);font-weight:var(--font-rg);line-height:1.28}.tablet-heading-2,.tablet-heading-2-sb,.tablet-heading-2-lt{font-size:var(--font-size-6);font-weight:var(--font-rg);line-height:1.333}.tablet-heading-3,.tablet-heading-3-sb,.tablet-heading-3-lt{font-size:var(--font-size-6);font-weight:var(--font-rg);line-height:1.333}.tablet-heading-4,.tablet-heading-4-sb,.tablet-heading-4-lt{font-size:var(--font-size-5);font-weight:var(--font-rg);line-height:1.4}.tablet-body-1,.tablet-body-1-sb{font-size:var(--font-size-5);font-weight:var(--font-rg);line-height:1.4}.tablet-body-2,.tablet-body-2-sb{font-size:var(--font-size-4);font-weight:var(--font-rg);line-height:1.5}.tablet-body-3,.tablet-body-3-sb{font-size:var(--font-size-3);font-weight:var(--font-rg);line-height:1.5}.tablet-body-4,.tablet-body-4-sb{font-size:var(--font-size-2);font-weight:var(--font-rg);letter-spacing:0.16px;line-height:1.4}.tablet-body-5,.tablet-body-5-sb{font-size:var(--font-size-1);font-weight:var(--font-rg);letter-spacing:0.32px;line-height:1.333}.tablet-interactive-1,.tablet-interactive-1-sb{font-size:var(--font-size-3);font-weight:var(--font-rg);line-height:1.5}.tablet-interactive-2,.tablet-interactive-2-sb{font-size:var(--font-size-2);font-weight:var(--font-rg);letter-spacing:0.16px;line-height:1.4}.tablet-interactive-3,.tablet-interactive-3-sb{font-size:var(--font-size-1);font-weight:var(--font-rg);letter-spacing:0.32px;line-height:1.333}.tablet-section-title-1{font:var(--section-title-1)}.tablet-section-title-2{font:var(--section-title-2)}.tablet-section-title-3{font:var(--section-title-3)}.tablet-section-title-4{font:var(--section-title-4)}.tablet-section-title-5{font:var(--section-title-5)}.tablet-section-title-6{font:var(--section-title-6)}.tablet-heading-1-lt,.tablet-heading-2-lt,.tablet-heading-3-lt,.tablet-heading-4-lt{font-weight:var(--font-lt)}.tablet-heading-1-sb,.tablet-heading-2-sb,.tablet-heading-3-sb,.tablet-heading-4-sb,.tablet-body-1-sb,.tablet-body-2-sb,.tablet-body-3-sb,.tablet-body-4-sb,.tablet-body-5-sb,.tablet-interactive-1-sb,.tablet-interactive-2-sb,.tablet-interactive-3-sb{font-weight:var(--font-sb)}}@media (min-width: 1152px) and (max-width: 1365px){.desktop-heading-1,.desktop-heading-1-sb,.desktop-heading-1-lt{font-size:var(--font-size-8);font-weight:var(--font-rg);line-height:1.25}.desktop-heading-2,.desktop-heading-2-sb,.desktop-heading-2-lt{font-size:var(--font-size-7);font-weight:var(--font-rg);line-height:1.28}.desktop-heading-3,.desktop-heading-3-sb,.desktop-heading-3-lt{font-size:var(--font-size-6);font-weight:var(--font-rg);line-height:1.333}.desktop-heading-4,.desktop-heading-4-sb,.desktop-heading-4-lt{font-size:var(--font-size-5);font-weight:var(--font-rg);line-height:1.4}.desktop-body-1,.desktop-body-1-sb{font-size:var(--font-size-5);font-weight:var(--font-rg);line-height:1.4}.desktop-body-2,.desktop-body-2-sb{font-size:var(--font-size-4);font-weight:var(--font-rg);line-height:1.5}.desktop-body-3,.desktop-body-3-sb{font-size:var(--font-size-3);font-weight:var(--font-rg);line-height:1.5}.desktop-body-4,.desktop-body-4-sb{font-size:var(--font-size-2);font-weight:var(--font-rg);letter-spacing:0.16px;line-height:1.4}.desktop-body-5,.desktop-body-5-sb{font-size:var(--font-size-1);font-weight:var(--font-rg);letter-spacing:0.32px;line-height:1.333}.desktop-interactive-1,.desktop-interactive-1-sb{font-size:var(--font-size-3);font-weight:var(--font-rg);line-height:1.5}.desktop-interactive-2,.desktop-interactive-2-sb{font-size:var(--font-size-2);font-weight:var(--font-rg);letter-spacing:0.16px;line-height:1.4}.desktop-interactive-3,.desktop-interactive-3-sb{font-size:var(--font-size-1);font-weight:var(--font-rg);letter-spacing:0.32px;line-height:1.333}.desktop-section-title-1{font:var(--section-title-1)}.desktop-section-title-2{font:var(--section-title-2)}.desktop-section-title-3{font:var(--section-title-3)}.desktop-section-title-4{font:var(--section-title-4)}.desktop-section-title-5{font:var(--section-title-5)}.desktop-section-title-6{font:var(--section-title-6)}.desktop-heading-1-lt,.desktop-heading-2-lt,.desktop-heading-3-lt,.desktop-heading-4-lt{font-weight:var(--font-lt)}.desktop-heading-1-sb,.desktop-heading-2-sb,.desktop-heading-3-sb,.desktop-heading-4-sb,.desktop-body-1-sb,.desktop-body-2-sb,.desktop-body-3-sb,.desktop-body-4-sb,.desktop-body-5-sb,.desktop-interactive-1-sb,.desktop-interactive-2-sb,.desktop-interactive-3-sb{font-weight:var(--font-sb)}}@media (min-width: 1366px){.wide-heading-1,.wide-heading-1-sb,.wide-heading-1-lt{font-size:var(--font-size-8);font-weight:var(--font-rg);line-height:1.25}.wide-heading-2,.wide-heading-2-sb,.wide-heading-2-lt{font-size:var(--font-size-7);font-weight:var(--font-rg);line-height:1.28}.wide-heading-3,.wide-heading-3-sb,.wide-heading-3-lt{font-size:var(--font-size-6);font-weight:var(--font-rg);line-height:1.333}.wide-heading-4,.wide-heading-4-sb,.wide-heading-4-lt{font-size:var(--font-size-5);font-weight:var(--font-rg);line-height:1.4}.wide-body-1,.wide-body-1-sb{font-size:var(--font-size-5);font-weight:var(--font-rg);line-height:1.4}.wide-body-2,.wide-body-2-sb{font-size:var(--font-size-4);font-weight:var(--font-rg);line-height:1.5}.wide-body-3,.wide-body-3-sb{font-size:var(--font-size-3);font-weight:var(--font-rg);line-height:1.5}.wide-body-4,.wide-body-4-sb{font-size:var(--font-size-2);font-weight:var(--font-rg);letter-spacing:0.16px;line-height:1.4}.wide-body-5,.wide-body-5-sb{font-size:var(--font-size-1);font-weight:var(--font-rg);letter-spacing:0.32px;line-height:1.333}.wide-interactive-1,.wide-interactive-1-sb{font-size:var(--font-size-3);font-weight:var(--font-rg);line-height:1.5}.wide-interactive-2,.wide-interactive-2-sb{font-size:var(--font-size-2);font-weight:var(--font-rg);letter-spacing:0.16px;line-height:1.4}.wide-interactive-3,.wide-interactive-3-sb{font-size:var(--font-size-1);font-weight:var(--font-rg);letter-spacing:0.32px;line-height:1.333}.wide-section-title-1{font:var(--section-title-1)}.wide-section-title-2{font:var(--section-title-2)}.wide-section-title-3{font:var(--section-title-3)}.wide-section-title-4{font:var(--section-title-4)}.wide-section-title-5{font:var(--section-title-5)}.wide-section-title-6{font:var(--section-title-6)}.wide-heading-1-lt,.wide-heading-2-lt,.wide-heading-3-lt,.wide-heading-4-lt{font-weight:var(--font-lt)}.wide-heading-1-sb,.wide-heading-2-sb,.wide-heading-3-sb,.wide-heading-4-sb,.wide-body-1-sb,.wide-body-2-sb,.wide-body-3-sb,.wide-body-4-sb,.wide-body-5-sb,.wide-interactive-1-sb,.wide-interactive-2-sb,.wide-interactive-3-sb{font-weight:var(--font-sb)}}.heading-1-lt,.heading-2-lt,.heading-3-lt,.heading-4-lt{font-weight:var(--font-lt)}.heading-1-sb,.heading-2-sb,.heading-3-sb,.heading-4-sb,.body-1-sb,.body-2-sb,.body-3-sb,.body-4-sb,.body-5-sb,.interactive-1-sb,.interactive-2-sb,.interactive-3-sb,.helper-sb{font-weight:var(--font-sb)}";
12
+ const ZToolStyle1 = typographyCss;
13
+
9
14
  const ZTool$1 = /*@__PURE__*/ proxyCustomElement(class ZTool extends HTMLElement {
10
15
  constructor() {
11
16
  super();
12
17
  this.__registerHost();
13
18
  this.__attachShadow();
14
19
  this.toggleSubmenu = createEvent(this, "toggleSubmenu", 7);
15
- this.handleTooltipOpen = () => {
16
- //This.isNested check prevents tooltips from showing on nested tools, e.g. inside submenus
17
- //This control will be removed in future versions when nested tooltips will be supported
18
- if (!this.tooltip || this.isNested) {
20
+ this.toggleTooltip = createEvent(this, "toggleTooltip", 7);
21
+ /** Indicates if the tool is nested inside another tool. */
22
+ this.isNested = false;
23
+ /**
24
+ * Opens the tooltip with a delay when the button is hovered or focused, and if the tool's content isn't already visible.
25
+ */
26
+ this.handleTooltipOpen = (ev) => {
27
+ if (!this.tooltip || this.open || !this.buttonRef.contains(ev.target)) {
19
28
  return;
20
29
  }
21
30
  clearTimeout(this.hoverDelay);
@@ -23,24 +32,47 @@ const ZTool$1 = /*@__PURE__*/ proxyCustomElement(class ZTool extends HTMLElement
23
32
  this.tooltipOpen = true;
24
33
  }, 1000);
25
34
  };
26
- this.handleTooltipClose = () => {
27
- if (!this.tooltip) {
35
+ /**
36
+ * Closes the tooltip immediately on button blur or when the mouse leaves the button or the tooltip, clearing any pending hover delay.
37
+ */
38
+ this.handleTooltipClose = (ev) => {
39
+ var _a;
40
+ if (!this.tooltip || ((_a = ev.relatedTarget) === null || _a === void 0 ? void 0 : _a.closest("z-tooltip")) === this.tooltipRef) {
28
41
  return;
29
42
  }
30
43
  clearTimeout(this.hoverDelay);
31
44
  this.tooltipOpen = false;
32
45
  };
46
+ /**
47
+ * Handles click events on the tool's button element.
48
+ * If the tool has slotted content, toggles the open state and focuses the active/selected item in the nested toolbar or color picker,
49
+ * or the first item if no active/selected item is found.
50
+ */
33
51
  this.handleClick = () => {
34
- if (this.disabled) {
52
+ if (this.disabled || !this.hasSlottedContent) {
35
53
  return;
36
54
  }
37
- if (this.hasSlottedContent) {
38
- this.open = !this.open;
39
- if (this.open) {
40
- this.focusNestedToolbar();
55
+ this.open = !this.open;
56
+ if (this.open) {
57
+ const colorPicker = this.hostElement.querySelector(":scope > z-color-picker");
58
+ if (colorPicker) {
59
+ colorPicker.setFocus();
60
+ return;
41
61
  }
62
+ // Focus the first active tool in the nested toolbar, or the first enabled if no active tool is found.
63
+ const firstActiveOrEnabledNestedTool = (this.hostElement.querySelector(":scope > z-toolbar z-tool[active]:not(:disabled)") || this.hostElement.querySelector(":scope > z-toolbar z-tool:not(:disabled)"));
64
+ firstActiveOrEnabledNestedTool === null || firstActiveOrEnabledNestedTool === void 0 ? void 0 : firstActiveOrEnabledNestedTool.setFocus();
42
65
  }
43
66
  };
67
+ /**
68
+ * Handles `openChange` events from the tooltip popover to keep the `tooltipOpen` state in sync, but only if the event is coming from this tool's tooltip (and not from nested tools' tooltips).
69
+ */
70
+ this.onTooltipOpenChange = (event) => {
71
+ if (event.target === this.tooltipRef) {
72
+ return;
73
+ }
74
+ this.tooltipOpen = event.detail.open;
75
+ };
44
76
  this.icon = undefined;
45
77
  this.tooltip = undefined;
46
78
  this.tooltipPosition = PopoverPosition.TOP;
@@ -48,56 +80,129 @@ const ZTool$1 = /*@__PURE__*/ proxyCustomElement(class ZTool extends HTMLElement
48
80
  this.active = false;
49
81
  this.disabled = false;
50
82
  this.open = false;
83
+ this.indicatorColor = undefined;
51
84
  this.tooltipOpen = false;
52
85
  this.hasSlottedContent = false;
53
- this.isNested = false;
86
+ this.isMobile = false;
87
+ this.hasNestedOpenTools = false;
54
88
  }
55
89
  handleOpenChange() {
56
90
  this.toggleSubmenu.emit(this.open);
57
91
  }
58
- focusNestedToolbar() {
59
- requestAnimationFrame(() => {
60
- var _a;
61
- const nestedToolbar = this.hostElement.querySelector("z-toolbar");
62
- if (nestedToolbar) {
63
- const firstTool = nestedToolbar.querySelector("z-tool");
64
- if (firstTool) {
65
- const button = (_a = firstTool.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector("button");
66
- if (button) {
67
- button.focus();
68
- }
92
+ handleTooltipOpenChange() {
93
+ this.toggleTooltip.emit(this.tooltipOpen);
94
+ }
95
+ /**
96
+ * Handle `ESC` and `shift+TAB` to close the submenu and move focus back to the button.
97
+ */
98
+ handleKeyDown(event) {
99
+ if (!this.open || this.hasNestedOpenTools) {
100
+ return;
101
+ }
102
+ switch (event.key) {
103
+ case KeyboardCode.ESC:
104
+ event.stopPropagation();
105
+ this.open = false;
106
+ this.setFocus();
107
+ break;
108
+ case KeyboardCode.TAB:
109
+ if (event.shiftKey && event.target.closest("z-tool:not(:scope)") === this.hostElement) {
110
+ this.open = false;
69
111
  }
70
- }
71
- });
112
+ break;
113
+ }
72
114
  }
73
- checkIfNested() {
74
- let parent = this.hostElement.parentElement;
75
- while (parent) {
76
- if (parent.tagName.toLowerCase() === "z-tool") {
77
- return true;
78
- }
79
- parent = parent.parentElement;
115
+ /**
116
+ * Close the popover on clicks outside the component, only if there are no nested open tools.
117
+ * In that case any outside click should close the nested submenu(s) first.
118
+ */
119
+ onOutsideClick(event) {
120
+ const target = event.composedPath()[0];
121
+ if (!this.open || containsElement(this.hostElement, target) || this.hasNestedOpenTools) {
122
+ return;
80
123
  }
81
- return false;
124
+ this.open = false;
125
+ }
126
+ onNestedToolToggle(ev) {
127
+ if (ev.target === this.hostElement) {
128
+ return;
129
+ }
130
+ if (ev.detail === true) {
131
+ this.hasNestedOpenTools = true;
132
+ return;
133
+ }
134
+ this.hasNestedOpenTools = Array.from(this.hostElement.querySelectorAll("z-tool")).some((tool) => tool.open);
135
+ }
136
+ /**
137
+ * Handles the `colorSelected` event from a nested `z-color-picker` component.
138
+ * Updates the `indicatorColor` and closes the tool's popover.
139
+ */
140
+ handleColorSelected(event) {
141
+ if (!Array.from(this.hostElement.children).includes(event.target)) {
142
+ return;
143
+ }
144
+ this.indicatorColor = event.detail;
145
+ this.open = false;
146
+ this.setFocus();
147
+ }
148
+ /**
149
+ * Close the submenu when focus moves outside the tool.
150
+ */
151
+ handleExternalFocusin(ev) {
152
+ const target = ev.target;
153
+ if (!containsElement(this.hostElement, target)) {
154
+ this.open = false;
155
+ }
156
+ }
157
+ /** Focuses the tool's button element. */
158
+ async setFocus() {
159
+ if (this.disabled) {
160
+ return;
161
+ }
162
+ setTimeout(() => {
163
+ var _a;
164
+ (_a = this.buttonRef) === null || _a === void 0 ? void 0 : _a.focus();
165
+ }, 50);
166
+ }
167
+ /** Sets the tab index of the tool's internal button element. */
168
+ async setTabIndex(value) {
169
+ if (!this.buttonRef) {
170
+ return;
171
+ }
172
+ this.buttonRef.tabIndex = this.disabled ? -1 : value;
173
+ }
174
+ /** Closes the tooltip. */
175
+ async closeTooltip() {
176
+ clearTimeout(this.hoverDelay);
177
+ this.tooltipOpen = false;
82
178
  }
83
179
  componentWillLoad() {
84
180
  this.hasSlottedContent = this.hostElement.children.length > 0;
85
- this.isNested = this.checkIfNested();
181
+ this.isNested = !!this.hostElement.closest("z-tool:not(:scope)");
182
+ this.mainToolbar = this.hostElement.closest("z-toolbar:not(z-toolbar z-toolbar)");
183
+ this.hasNestedOpenTools = !!this.hostElement.querySelector("z-tool[open]");
184
+ this.mql = matchMedia("(max-width: 767px)");
185
+ this.onMobileViewChange = (e) => (this.isMobile = e.matches);
186
+ this.mql.addEventListener("change", this.onMobileViewChange);
187
+ this.isMobile = this.mql.matches;
86
188
  }
87
189
  disconnectedCallback() {
190
+ var _a;
88
191
  clearTimeout(this.hoverDelay);
192
+ (_a = this.mql) === null || _a === void 0 ? void 0 : _a.removeEventListener("change", this.onMobileViewChange);
89
193
  }
90
194
  render() {
91
- return (h(Host, { key: '29475c2061b8031c6d742e0b67bdcaa657acf269', nested: this.isNested }, h("button", { key: '7b2c77c12e7d62a0560a8c71d8660e45927d4024', class: "z-tool", type: "button", "aria-pressed": this.active ? "true" : "false", "aria-expanded": this.hasSlottedContent ? (this.open ? "true" : "false") : undefined, "aria-label": this.htmlAriaLabel || this.tooltip || undefined, disabled: this.disabled, onClick: this.handleClick, onMouseEnter: this.handleTooltipOpen, onMouseLeave: this.handleTooltipClose, onFocus: this.handleTooltipOpen, onBlur: this.handleTooltipClose }, h("z-icon", { key: '4c4b2d93bb5d8869cff58970f6c1a52ae82041e9', ref: (el) => (this.iconRef = el), name: this.icon })), this.tooltip && !this.isNested && (h("z-popover", { key: '87078924f19cbd8ec1efeaa460fad64d3d45701d', class: "z-tool-tooltip", bindTo: this.iconRef, open: this.tooltipOpen, position: this.tooltipPosition, showArrow: true, center: true, closable: false }, h("span", { key: 'a11623609058d4106f18ed8d523e32ee102afaa7', class: "body-4" }, this.tooltip))), this.hasSlottedContent && (h("div", { key: 'c22cf9f4ffe622afc11be4e94722d5232df7dd58', class: {
92
- "z-tool-submenu": true,
93
- "z-tool-submenu-open": this.open,
94
- } }, h("slot", { key: '0e789c315bbcdc50c6ffbb32d225be7f12b9cd59' })))));
195
+ return (h(Host, { key: '206a8594f395b3be01956358cb59968c69cc1317', class: { "z-tool-tooltip-open": this.tooltipOpen } }, h("button", { key: '0ad3f51d384386005f5cd4ca2bdf9e9c9b49c7d2', class: "z-tool", type: "button", ref: (el) => (this.buttonRef = el), "aria-pressed": this.hasSlottedContent ? undefined : this.active ? "true" : "false", "aria-expanded": this.hasSlottedContent ? (this.open ? "true" : "false") : undefined, "aria-haspopup": this.hasSlottedContent ? "true" : undefined, "aria-label": this.htmlAriaLabel || this.tooltip || undefined, disabled: this.disabled, onClick: this.handleClick, onMouseEnter: this.handleTooltipOpen, onMouseLeave: this.handleTooltipClose, onFocus: this.handleTooltipOpen, onBlur: this.handleTooltipClose }, h("z-icon", { key: '67a9360a49a09d6cb715314a610af87aec542608', ref: (el) => (this.iconRef = el), name: this.icon, indicatorColor: this.indicatorColor })), this.tooltip && (h("z-tooltip", { key: '7c66f173dc55e4757302c659d56f8d0acf310b76', class: "z-tool-tooltip", ref: (el) => (this.tooltipRef = el), bindTo: this.iconRef, open: this.tooltipOpen && !this.open, position: this.isNested ? PopoverPosition.BOTTOM : this.tooltipPosition, dark: true, onMouseLeave: this.handleTooltipClose, onBlur: this.handleTooltipClose, onOpenChange: this.onTooltipOpenChange }, h("span", { key: '7ceeeb537eb0292e629952da4aa932644a7468cf', class: "body-4" }, this.tooltip))), this.hasSlottedContent && (h("z-popover", { key: '27fde7bbc6dddb8f081bd47491dc91a70538271a', class: "z-tool-submenu", open: this.open, bindTo: this.isMobile && this.mainToolbar ? this.mainToolbar : this.hostElement, center: true,
196
+ /* disable auto-close to prevent unwanted close behaviors on mobile,
197
+ when the bound element is the main toolbar */
198
+ closable: false, position: this.isMobile ? PopoverPosition.TOP : PopoverPosition.BOTTOM }, h("slot", { key: 'e31fd30c100e732f4aca6b038d277d99b6543589' })))));
95
199
  }
96
200
  get hostElement() { return this; }
97
201
  static get watchers() { return {
98
- "open": ["handleOpenChange"]
202
+ "open": ["handleOpenChange"],
203
+ "tooltipOpen": ["handleTooltipOpenChange"]
99
204
  }; }
100
- static get style() { return ZToolStyle0; }
205
+ static get style() { return ZToolStyle0 + ZToolStyle1; }
101
206
  }, [1, "z-tool", {
102
207
  "icon": [1],
103
208
  "tooltip": [1],
@@ -106,17 +211,23 @@ const ZTool$1 = /*@__PURE__*/ proxyCustomElement(class ZTool extends HTMLElement
106
211
  "active": [516],
107
212
  "disabled": [516],
108
213
  "open": [1540],
214
+ "indicatorColor": [1025, "indicator-color"],
109
215
  "tooltipOpen": [32],
110
216
  "hasSlottedContent": [32],
111
- "isNested": [32]
112
- }, undefined, {
113
- "open": ["handleOpenChange"]
217
+ "isMobile": [32],
218
+ "hasNestedOpenTools": [32],
219
+ "setFocus": [64],
220
+ "setTabIndex": [64],
221
+ "closeTooltip": [64]
222
+ }, [[0, "keydown", "handleKeyDown"], [16, "click", "onOutsideClick"], [0, "toggleSubmenu", "onNestedToolToggle"], [0, "colorSelected", "handleColorSelected"], [17, "focusin", "handleExternalFocusin"]], {
223
+ "open": ["handleOpenChange"],
224
+ "tooltipOpen": ["handleTooltipOpenChange"]
114
225
  }]);
115
226
  function defineCustomElement$1() {
116
227
  if (typeof customElements === "undefined") {
117
228
  return;
118
229
  }
119
- const components = ["z-tool", "z-icon", "z-popover"];
230
+ const components = ["z-tool", "z-icon", "z-popover", "z-tooltip"];
120
231
  components.forEach(tagName => { switch (tagName) {
121
232
  case "z-tool":
122
233
  if (!customElements.get(tagName)) {
@@ -125,10 +236,15 @@ function defineCustomElement$1() {
125
236
  break;
126
237
  case "z-icon":
127
238
  if (!customElements.get(tagName)) {
128
- defineCustomElement$3();
239
+ defineCustomElement$4();
129
240
  }
130
241
  break;
131
242
  case "z-popover":
243
+ if (!customElements.get(tagName)) {
244
+ defineCustomElement$3();
245
+ }
246
+ break;
247
+ case "z-tooltip":
132
248
  if (!customElements.get(tagName)) {
133
249
  defineCustomElement$2();
134
250
  }
@@ -1 +1 @@
1
- {"file":"z-tool.js","mappings":"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","names":["ZTool"],"sources":["src/components/z-tool/styles.css?tag=z-tool&encapsulation=shadow","src/components/z-tool/index.tsx"],"sourcesContent":[":host,\n* {\n box-sizing: border-box;\n}\n\n.z-tool {\n --z-tool-size: calc(var(--space-unit) * 5.5);\n --z-tool-icon-size: calc(var(--space-unit) * 2.5);\n\n display: inline-flex;\n width: var(--z-tool-size);\n height: var(--z-tool-size);\n align-items: center;\n justify-content: center;\n padding: 0;\n border: none;\n margin: 0;\n background-color: var(--color-surface01);\n border-radius: var(--border-radius);\n cursor: pointer;\n}\n\n:host([active]) .z-tool {\n box-shadow: inset 0 0 0 2px var(--color-primary01);\n}\n\n:host([open]) .z-tool {\n box-shadow: inset 0 0 0 2px var(--color-primary01);\n}\n\n@media (hover: hover) {\n :host(:not([disabled])) .z-tool:hover {\n background-color: var(--color-primary03);\n }\n}\n\n:host([disabled]) .z-tool {\n color: var(--color-disabled01-icon);\n cursor: not-allowed;\n}\n\n.z-tool:focus-visible {\n box-shadow: inset 0 0 0 2px var(--color-primary01);\n outline: none;\n}\n\nz-icon {\n --z-icon-width: var(--z-tool-icon-size);\n --z-icon-height: var(--z-tool-icon-size);\n\n display: block;\n fill: var(--color-default-icon);\n}\n\n:host([disabled]) z-icon {\n fill: var(--color-disabled01-icon);\n}\n\n.z-tool-tooltip {\n --z-popover-padding: calc(var(--space-unit) * 1.5) calc(var(--space-unit) * 2);\n --z-popover-theme--surface: var(--color-surface05);\n --z-popover-theme--text: var(--color-text-inverse);\n --z-popover-shadow-filter: drop-shadow(0 4px 8px var(--shadow-color-base));\n\n z-index: 2;\n font-family: var(--font-family-sans);\n}\n\n@media (max-width: 767px) {\n .z-tool-tooltip {\n display: none !important;\n }\n}\n\n:host {\n position: var(--z-tool-host-position, relative);\n}\n\n.z-tool-submenu {\n position: var(--z-tool-submenu-position, absolute);\n z-index: 1;\n top: var(--z-tool-submenu-top, calc(100% + 4px));\n bottom: var(--z-tool-submenu-bottom, auto);\n left: var(--z-tool-submenu-left, 50%);\n display: none;\n transform: var(--z-tool-submenu-transform, translateX(-50%));\n}\n\n.z-tool-submenu-open {\n display: block;\n}\n","import {Component, Element, Event, EventEmitter, Host, Prop, State, Watch, h} from \"@stencil/core\";\nimport {PopoverPosition} from \"../../beans\";\n\n/**\n * ZTool component.\n * @slot - Optional slot for nested content (e.g., a secondary z-toolbar) that appears when the tool is open/clicked.\n */\n@Component({\n tag: \"z-tool\",\n styleUrl: \"styles.css\",\n shadow: true,\n})\nexport class ZTool {\n @Element() hostElement: HTMLZToolElement;\n\n /** Tool icon */\n @Prop()\n icon: string;\n\n /** Text displayed inside the tooltip. */\n @Prop()\n tooltip?: string;\n\n /** Preferred tooltip position. Defaults to true. */\n @Prop()\n tooltipPosition: PopoverPosition = PopoverPosition.TOP;\n\n /** Accessible label for the tool trigger. Falls back to tooltip content. */\n @Prop()\n htmlAriaLabel?: string;\n\n /** Visual selected state. */\n @Prop({reflect: true})\n active = false;\n\n /** Disabled state. */\n @Prop({reflect: true})\n disabled = false;\n\n /** Open state. */\n @Prop({reflect: true, mutable: true})\n open = false;\n\n @State()\n tooltipOpen = false;\n\n @State()\n hasSlottedContent = false;\n\n @State()\n isNested = false;\n\n /** Emitted when the open state changes. */\n @Event()\n toggleSubmenu: EventEmitter;\n\n private iconRef?: HTMLElement;\n\n private hoverDelay?: ReturnType<typeof setTimeout>;\n\n @Watch(\"open\")\n handleOpenChange(): void {\n this.toggleSubmenu.emit(this.open);\n }\n\n private handleTooltipOpen = (): void => {\n //This.isNested check prevents tooltips from showing on nested tools, e.g. inside submenus\n //This control will be removed in future versions when nested tooltips will be supported\n if (!this.tooltip || this.isNested) {\n return;\n }\n clearTimeout(this.hoverDelay);\n this.hoverDelay = setTimeout(() => {\n this.tooltipOpen = true;\n }, 1000);\n };\n\n private handleTooltipClose = (): void => {\n if (!this.tooltip) {\n return;\n }\n clearTimeout(this.hoverDelay);\n this.tooltipOpen = false;\n };\n\n private handleClick = (): void => {\n if (this.disabled) {\n return;\n }\n\n if (this.hasSlottedContent) {\n this.open = !this.open;\n if (this.open) {\n this.focusNestedToolbar();\n }\n }\n };\n\n private focusNestedToolbar(): void {\n requestAnimationFrame(() => {\n const nestedToolbar = this.hostElement.querySelector(\"z-toolbar\");\n if (nestedToolbar) {\n const firstTool = nestedToolbar.querySelector(\"z-tool\");\n if (firstTool) {\n const button = firstTool.shadowRoot?.querySelector(\"button\");\n if (button) {\n button.focus();\n }\n }\n }\n });\n }\n\n private checkIfNested(): boolean {\n let parent = this.hostElement.parentElement;\n while (parent) {\n if (parent.tagName.toLowerCase() === \"z-tool\") {\n return true;\n }\n parent = parent.parentElement;\n }\n\n return false;\n }\n\n componentWillLoad(): void {\n this.hasSlottedContent = this.hostElement.children.length > 0;\n this.isNested = this.checkIfNested();\n }\n\n disconnectedCallback(): void {\n clearTimeout(this.hoverDelay);\n }\n\n render(): HTMLZToolElement {\n return (\n <Host nested={this.isNested}>\n <button\n class=\"z-tool\"\n type=\"button\"\n aria-pressed={this.active ? \"true\" : \"false\"}\n aria-expanded={this.hasSlottedContent ? (this.open ? \"true\" : \"false\") : undefined}\n aria-label={this.htmlAriaLabel || this.tooltip || undefined}\n disabled={this.disabled}\n onClick={this.handleClick}\n onMouseEnter={this.handleTooltipOpen}\n onMouseLeave={this.handleTooltipClose}\n onFocus={this.handleTooltipOpen}\n onBlur={this.handleTooltipClose}\n >\n <z-icon\n ref={(el) => (this.iconRef = el)}\n name={this.icon}\n ></z-icon>\n </button>\n {this.tooltip && !this.isNested && (\n <z-popover\n class=\"z-tool-tooltip\"\n bindTo={this.iconRef}\n open={this.tooltipOpen}\n position={this.tooltipPosition}\n showArrow\n center\n closable={false}\n >\n <span class=\"body-4\">{this.tooltip}</span>\n </z-popover>\n )}\n {this.hasSlottedContent && (\n <div\n class={{\n \"z-tool-submenu\": true,\n \"z-tool-submenu-open\": this.open,\n }}\n >\n <slot></slot>\n </div>\n )}\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"z-tool.js","mappings":"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","names":["ZTool"],"sources":["src/components/z-tool/styles.css?tag=z-tool&encapsulation=shadow","src/tokens/typography.css?tag=z-tool&encapsulation=shadow","src/components/z-tool/index.tsx"],"sourcesContent":[":host,\n* {\n box-sizing: border-box;\n}\n\n.z-tool {\n --z-tool-size: calc(var(--space-unit) * 5.5);\n --z-tool-icon-size: calc(var(--space-unit) * 2.5);\n\n position: relative;\n display: inline-flex;\n width: var(--z-tool-size);\n height: var(--z-tool-size);\n align-items: center;\n justify-content: center;\n padding: 0;\n border: none;\n margin: 0;\n background-color: var(--color-surface01);\n border-radius: var(--border-radius);\n cursor: pointer;\n}\n\n:host(:is([active], [open])) .z-tool {\n box-shadow: inset 0 0 0 2px var(--color-primary01);\n}\n\n:host([open]) .z-tool {\n background: var(--color-primary03);\n}\n\n@media (hover: hover) {\n :host(:hover),\n :host(.z-tool-tooltip-open) {\n /* ensure any open tooltip is shown over sibling elements */\n z-index: 1;\n }\n\n :host(:not([disabled])) .z-tool:hover {\n background-color: var(--color-primary03);\n }\n}\n\n.z-tool:focus:focus-visible {\n background-color: var(--color-primary03);\n outline: none;\n}\n\nz-icon {\n --z-icon-width: var(--z-tool-icon-size);\n --z-icon-height: var(--z-tool-icon-size);\n\n display: block;\n fill: var(--color-default-icon);\n}\n\n:host([disabled]) .z-tool {\n color: var(--color-disabled01-icon);\n cursor: not-allowed;\n}\n\n:host([disabled]) z-icon {\n fill: var(--color-disabled01-icon);\n}\n\n.z-tool-tooltip {\n --z-tooltip-padding: calc(var(--space-unit) * 1.5) calc(var(--space-unit) * 2);\n --z-tooltip-shadow-filter: drop-shadow(0 4px 8px var(--shadow-color-base));\n\n position: relative;\n z-index: 2;\n font-family: var(--font-family-sans);\n white-space: nowrap;\n}\n\n.z-tool-submenu {\n z-index: 3;\n border-radius: calc(var(--border-radius) + var(--border-size-small));\n}\n\n.z-tool-submenu ::slotted(z-color-picker) {\n border: var(--border-size-small) solid var(--color-surface03);\n border-radius: var(--border-radius);\n}\n\n@media (max-width: 767px) and (hover: none) {\n .z-tool-tooltip {\n display: none !important;\n }\n}\n",":root {\n /* font-family */\n --font-family-sans: \"IBM Plex Sans\", sans-serif;\n --font-family-serif: \"IBM Plex Serif\", serif;\n\n /* font-weight */\n --font-lt: 300;\n --font-rg: 400;\n --font-sb: 600;\n --font-bd: 700;\n\n /* font-size type scale */\n --font-size-1: 0.75rem; /* 12px */\n --font-size-2: 0.875rem; /* 14px */\n --font-size-3: 1rem; /* assuming 16px */\n --font-size-4: 1.125rem; /* 18px */\n --font-size-5: 1.25rem; /* 20px */\n --font-size-6: 1.5rem; /* 24px */\n --font-size-7: 1.75rem; /* 28px */\n --font-size-8: 2rem; /* 32px */\n --font-size-9: 2.25rem; /* 36px */\n --font-size-10: 2.625rem; /* 42px */\n --font-size-11: 3rem; /* 48px */\n --font-size-12: 3.375rem; /* 54px */\n --font-size-13: 3.75rem; /* 60px */\n --font-size-14: 4.25rem; /* 68px */\n --font-size-15: 4.75rem; /* 76px */\n --font-size-16: 5.25rem; /* 84px */\n --font-size-17: 5.75rem; /* 92px */\n\n /* cssprops to use with `font` shorthand property */\n --section-title-1: var(--font-sb) var(--font-size-11) / 1.083 var(--font-family-serif);\n --section-title-2: var(--font-sb) var(--font-size-10) / 1.142 var(--font-family-serif);\n --section-title-3: var(--font-sb) var(--font-size-9) / 1.222 var(--font-family-serif);\n --section-title-4: var(--font-sb) var(--font-size-8) / 1.25 var(--font-family-serif);\n --section-title-5: var(--font-sb) var(--font-size-7) / 1.2857 var(--font-family-serif);\n --section-title-6: var(--font-sb) var(--font-size-6) / 1.333 var(--font-family-serif);\n}\n\n/* Typography classes */\n.heading-1,\n.heading-1-sb,\n.heading-1-lt {\n font-size: var(--font-size-7);\n font-weight: var(--font-rg);\n line-height: 1.28;\n}\n\n.heading-2,\n.heading-2-sb,\n.heading-2-lt {\n font-size: var(--font-size-6);\n font-weight: var(--font-rg);\n line-height: 1.333;\n}\n\n.heading-3,\n.heading-3-sb,\n.heading-3-lt {\n font-size: var(--font-size-6);\n font-weight: var(--font-rg);\n line-height: 1.333;\n}\n\n.heading-4,\n.heading-4-sb,\n.heading-4-lt {\n font-size: var(--font-size-5);\n font-weight: var(--font-rg);\n line-height: 1.4;\n}\n\n.body-1,\n.body-1-sb {\n font-size: var(--font-size-5);\n font-weight: var(--font-rg);\n line-height: 1.4;\n}\n\n.body-2,\n.body-2-sb {\n font-size: var(--font-size-4);\n font-weight: var(--font-rg);\n line-height: 1.5;\n}\n\n.body-3,\n.body-3-sb {\n font-size: var(--font-size-3);\n font-weight: var(--font-rg);\n line-height: 1.5;\n}\n\n.body-4,\n.body-4-sb {\n font-size: var(--font-size-2);\n font-weight: var(--font-rg);\n letter-spacing: 0.16px;\n line-height: 1.4;\n}\n\n.body-5,\n.body-5-sb {\n font-size: var(--font-size-1);\n font-weight: var(--font-rg);\n letter-spacing: 0.32px;\n line-height: 1.333;\n}\n\n.interactive-1,\n.interactive-1-sb {\n font-size: var(--font-size-3);\n font-weight: var(--font-rg);\n line-height: 1.5;\n}\n\n.interactive-2,\n.interactive-2-sb {\n font-size: var(--font-size-2);\n font-weight: var(--font-rg);\n letter-spacing: 0.16px;\n line-height: 1.4;\n}\n\n.interactive-3,\n.interactive-3-sb {\n font-size: var(--font-size-1);\n font-weight: var(--font-rg);\n letter-spacing: 0.32px;\n line-height: 1.333;\n}\n\n.helper,\n.helper-sb {\n font-size: var(--font-size-1);\n font-style: italic;\n font-weight: var(--font-rg);\n letter-spacing: 0.32px;\n line-height: 1.333;\n}\n\n/* section title */\n.section-title-1 {\n font: var(--section-title-1);\n}\n\n.section-title-2 {\n font: var(--section-title-2);\n}\n\n.section-title-3 {\n font: var(--section-title-3);\n}\n\n.section-title-4 {\n font: var(--section-title-4);\n}\n\n.section-title-5 {\n font: var(--section-title-5);\n}\n\n.section-title-6 {\n font: var(--section-title-6);\n}\n\n/* heading-1/2 for desktop and wide viewports */\n@media (min-width: 1152px) {\n .heading-1,\n .heading-1-sb,\n .heading-1-lt {\n font-size: var(--font-size-8);\n font-weight: var(--font-rg);\n line-height: 1.25;\n }\n\n .heading-2,\n .heading-2-sb,\n .heading-2-lt {\n font-size: var(--font-size-7);\n font-weight: var(--font-rg);\n line-height: 1.28;\n }\n}\n\n/* viewport classes */\n@media (max-width: 767px) {\n .mobile-heading-1,\n .mobile-heading-1-sb,\n .mobile-heading-1-lt {\n font-size: var(--font-size-7);\n font-weight: var(--font-rg);\n line-height: 1.28;\n }\n\n .mobile-heading-2,\n .mobile-heading-2-sb,\n .mobile-heading-2-lt {\n font-size: var(--font-size-6);\n font-weight: var(--font-rg);\n line-height: 1.333;\n }\n\n .mobile-heading-3,\n .mobile-heading-3-sb,\n .mobile-heading-3-lt {\n font-size: var(--font-size-6);\n font-weight: var(--font-rg);\n line-height: 1.333;\n }\n\n .mobile-heading-4,\n .mobile-heading-4-sb,\n .mobile-heading-4-lt {\n font-size: var(--font-size-5);\n font-weight: var(--font-rg);\n line-height: 1.4;\n }\n\n .mobile-body-1,\n .mobile-body-1-sb {\n font-size: var(--font-size-5);\n font-weight: var(--font-rg);\n line-height: 1.4;\n }\n\n .mobile-body-2,\n .mobile-body-2-sb {\n font-size: var(--font-size-4);\n font-weight: var(--font-rg);\n line-height: 1.5;\n }\n\n .mobile-body-3,\n .mobile-body-3-sb {\n font-size: var(--font-size-3);\n font-weight: var(--font-rg);\n line-height: 1.5;\n }\n\n .mobile-body-4,\n .mobile-body-4-sb {\n font-size: var(--font-size-2);\n font-weight: var(--font-rg);\n letter-spacing: 0.16px;\n line-height: 1.4;\n }\n\n .mobile-body-5,\n .mobile-body-5-sb {\n font-size: var(--font-size-1);\n font-weight: var(--font-rg);\n letter-spacing: 0.32px;\n line-height: 1.333;\n }\n\n .mobile-interactive-1,\n .mobile-interactive-1-sb {\n font-size: var(--font-size-3);\n font-weight: var(--font-rg);\n line-height: 1.5;\n }\n\n .mobile-interactive-2,\n .mobile-interactive-2-sb {\n font-size: var(--font-size-2);\n font-weight: var(--font-rg);\n letter-spacing: 0.16px;\n line-height: 1.4;\n }\n\n .mobile-interactive-3,\n .mobile-interactive-3-sb {\n font-size: var(--font-size-1);\n font-weight: var(--font-rg);\n letter-spacing: 0.32px;\n line-height: 1.333;\n }\n\n .mobile-section-title-1 {\n font: var(--section-title-1);\n }\n\n .mobile-section-title-2 {\n font: var(--section-title-2);\n }\n\n .mobile-section-title-3 {\n font: var(--section-title-3);\n }\n\n .mobile-section-title-4 {\n font: var(--section-title-4);\n }\n\n .mobile-section-title-5 {\n font: var(--section-title-5);\n }\n\n .mobile-section-title-6 {\n font: var(--section-title-6);\n }\n\n .mobile-heading-1-lt,\n .mobile-heading-2-lt,\n .mobile-heading-3-lt,\n .mobile-heading-4-lt {\n font-weight: var(--font-lt);\n }\n\n .mobile-heading-1-sb,\n .mobile-heading-2-sb,\n .mobile-heading-3-sb,\n .mobile-heading-4-sb,\n .mobile-body-1-sb,\n .mobile-body-2-sb,\n .mobile-body-3-sb,\n .mobile-body-4-sb,\n .mobile-body-5-sb,\n .mobile-interactive-1-sb,\n .mobile-interactive-2-sb,\n .mobile-interactive-3-sb {\n font-weight: var(--font-sb);\n }\n}\n\n@media (min-width: 768px) and (max-width: 1151px) {\n .tablet-heading-1,\n .tablet-heading-1-sb,\n .tablet-heading-1-lt {\n font-size: var(--font-size-7);\n font-weight: var(--font-rg);\n line-height: 1.28;\n }\n\n .tablet-heading-2,\n .tablet-heading-2-sb,\n .tablet-heading-2-lt {\n font-size: var(--font-size-6);\n font-weight: var(--font-rg);\n line-height: 1.333;\n }\n\n .tablet-heading-3,\n .tablet-heading-3-sb,\n .tablet-heading-3-lt {\n font-size: var(--font-size-6);\n font-weight: var(--font-rg);\n line-height: 1.333;\n }\n\n .tablet-heading-4,\n .tablet-heading-4-sb,\n .tablet-heading-4-lt {\n font-size: var(--font-size-5);\n font-weight: var(--font-rg);\n line-height: 1.4;\n }\n\n .tablet-body-1,\n .tablet-body-1-sb {\n font-size: var(--font-size-5);\n font-weight: var(--font-rg);\n line-height: 1.4;\n }\n\n .tablet-body-2,\n .tablet-body-2-sb {\n font-size: var(--font-size-4);\n font-weight: var(--font-rg);\n line-height: 1.5;\n }\n\n .tablet-body-3,\n .tablet-body-3-sb {\n font-size: var(--font-size-3);\n font-weight: var(--font-rg);\n line-height: 1.5;\n }\n\n .tablet-body-4,\n .tablet-body-4-sb {\n font-size: var(--font-size-2);\n font-weight: var(--font-rg);\n letter-spacing: 0.16px;\n line-height: 1.4;\n }\n\n .tablet-body-5,\n .tablet-body-5-sb {\n font-size: var(--font-size-1);\n font-weight: var(--font-rg);\n letter-spacing: 0.32px;\n line-height: 1.333;\n }\n\n .tablet-interactive-1,\n .tablet-interactive-1-sb {\n font-size: var(--font-size-3);\n font-weight: var(--font-rg);\n line-height: 1.5;\n }\n\n .tablet-interactive-2,\n .tablet-interactive-2-sb {\n font-size: var(--font-size-2);\n font-weight: var(--font-rg);\n letter-spacing: 0.16px;\n line-height: 1.4;\n }\n\n .tablet-interactive-3,\n .tablet-interactive-3-sb {\n font-size: var(--font-size-1);\n font-weight: var(--font-rg);\n letter-spacing: 0.32px;\n line-height: 1.333;\n }\n\n .tablet-section-title-1 {\n font: var(--section-title-1);\n }\n\n .tablet-section-title-2 {\n font: var(--section-title-2);\n }\n\n .tablet-section-title-3 {\n font: var(--section-title-3);\n }\n\n .tablet-section-title-4 {\n font: var(--section-title-4);\n }\n\n .tablet-section-title-5 {\n font: var(--section-title-5);\n }\n\n .tablet-section-title-6 {\n font: var(--section-title-6);\n }\n\n .tablet-heading-1-lt,\n .tablet-heading-2-lt,\n .tablet-heading-3-lt,\n .tablet-heading-4-lt {\n font-weight: var(--font-lt);\n }\n\n .tablet-heading-1-sb,\n .tablet-heading-2-sb,\n .tablet-heading-3-sb,\n .tablet-heading-4-sb,\n .tablet-body-1-sb,\n .tablet-body-2-sb,\n .tablet-body-3-sb,\n .tablet-body-4-sb,\n .tablet-body-5-sb,\n .tablet-interactive-1-sb,\n .tablet-interactive-2-sb,\n .tablet-interactive-3-sb {\n font-weight: var(--font-sb);\n }\n}\n\n@media (min-width: 1152px) and (max-width: 1365px) {\n .desktop-heading-1,\n .desktop-heading-1-sb,\n .desktop-heading-1-lt {\n font-size: var(--font-size-8);\n font-weight: var(--font-rg);\n line-height: 1.25;\n }\n\n .desktop-heading-2,\n .desktop-heading-2-sb,\n .desktop-heading-2-lt {\n font-size: var(--font-size-7);\n font-weight: var(--font-rg);\n line-height: 1.28;\n }\n\n .desktop-heading-3,\n .desktop-heading-3-sb,\n .desktop-heading-3-lt {\n font-size: var(--font-size-6);\n font-weight: var(--font-rg);\n line-height: 1.333;\n }\n\n .desktop-heading-4,\n .desktop-heading-4-sb,\n .desktop-heading-4-lt {\n font-size: var(--font-size-5);\n font-weight: var(--font-rg);\n line-height: 1.4;\n }\n\n .desktop-body-1,\n .desktop-body-1-sb {\n font-size: var(--font-size-5);\n font-weight: var(--font-rg);\n line-height: 1.4;\n }\n\n .desktop-body-2,\n .desktop-body-2-sb {\n font-size: var(--font-size-4);\n font-weight: var(--font-rg);\n line-height: 1.5;\n }\n\n .desktop-body-3,\n .desktop-body-3-sb {\n font-size: var(--font-size-3);\n font-weight: var(--font-rg);\n line-height: 1.5;\n }\n\n .desktop-body-4,\n .desktop-body-4-sb {\n font-size: var(--font-size-2);\n font-weight: var(--font-rg);\n letter-spacing: 0.16px;\n line-height: 1.4;\n }\n\n .desktop-body-5,\n .desktop-body-5-sb {\n font-size: var(--font-size-1);\n font-weight: var(--font-rg);\n letter-spacing: 0.32px;\n line-height: 1.333;\n }\n\n .desktop-interactive-1,\n .desktop-interactive-1-sb {\n font-size: var(--font-size-3);\n font-weight: var(--font-rg);\n line-height: 1.5;\n }\n\n .desktop-interactive-2,\n .desktop-interactive-2-sb {\n font-size: var(--font-size-2);\n font-weight: var(--font-rg);\n letter-spacing: 0.16px;\n line-height: 1.4;\n }\n\n .desktop-interactive-3,\n .desktop-interactive-3-sb {\n font-size: var(--font-size-1);\n font-weight: var(--font-rg);\n letter-spacing: 0.32px;\n line-height: 1.333;\n }\n\n .desktop-section-title-1 {\n font: var(--section-title-1);\n }\n\n .desktop-section-title-2 {\n font: var(--section-title-2);\n }\n\n .desktop-section-title-3 {\n font: var(--section-title-3);\n }\n\n .desktop-section-title-4 {\n font: var(--section-title-4);\n }\n\n .desktop-section-title-5 {\n font: var(--section-title-5);\n }\n\n .desktop-section-title-6 {\n font: var(--section-title-6);\n }\n\n .desktop-heading-1-lt,\n .desktop-heading-2-lt,\n .desktop-heading-3-lt,\n .desktop-heading-4-lt {\n font-weight: var(--font-lt);\n }\n\n .desktop-heading-1-sb,\n .desktop-heading-2-sb,\n .desktop-heading-3-sb,\n .desktop-heading-4-sb,\n .desktop-body-1-sb,\n .desktop-body-2-sb,\n .desktop-body-3-sb,\n .desktop-body-4-sb,\n .desktop-body-5-sb,\n .desktop-interactive-1-sb,\n .desktop-interactive-2-sb,\n .desktop-interactive-3-sb {\n font-weight: var(--font-sb);\n }\n}\n\n@media (min-width: 1366px) {\n .wide-heading-1,\n .wide-heading-1-sb,\n .wide-heading-1-lt {\n font-size: var(--font-size-8);\n font-weight: var(--font-rg);\n line-height: 1.25;\n }\n\n .wide-heading-2,\n .wide-heading-2-sb,\n .wide-heading-2-lt {\n font-size: var(--font-size-7);\n font-weight: var(--font-rg);\n line-height: 1.28;\n }\n\n .wide-heading-3,\n .wide-heading-3-sb,\n .wide-heading-3-lt {\n font-size: var(--font-size-6);\n font-weight: var(--font-rg);\n line-height: 1.333;\n }\n\n .wide-heading-4,\n .wide-heading-4-sb,\n .wide-heading-4-lt {\n font-size: var(--font-size-5);\n font-weight: var(--font-rg);\n line-height: 1.4;\n }\n\n .wide-body-1,\n .wide-body-1-sb {\n font-size: var(--font-size-5);\n font-weight: var(--font-rg);\n line-height: 1.4;\n }\n\n .wide-body-2,\n .wide-body-2-sb {\n font-size: var(--font-size-4);\n font-weight: var(--font-rg);\n line-height: 1.5;\n }\n\n .wide-body-3,\n .wide-body-3-sb {\n font-size: var(--font-size-3);\n font-weight: var(--font-rg);\n line-height: 1.5;\n }\n\n .wide-body-4,\n .wide-body-4-sb {\n font-size: var(--font-size-2);\n font-weight: var(--font-rg);\n letter-spacing: 0.16px;\n line-height: 1.4;\n }\n\n .wide-body-5,\n .wide-body-5-sb {\n font-size: var(--font-size-1);\n font-weight: var(--font-rg);\n letter-spacing: 0.32px;\n line-height: 1.333;\n }\n\n .wide-interactive-1,\n .wide-interactive-1-sb {\n font-size: var(--font-size-3);\n font-weight: var(--font-rg);\n line-height: 1.5;\n }\n\n .wide-interactive-2,\n .wide-interactive-2-sb {\n font-size: var(--font-size-2);\n font-weight: var(--font-rg);\n letter-spacing: 0.16px;\n line-height: 1.4;\n }\n\n .wide-interactive-3,\n .wide-interactive-3-sb {\n font-size: var(--font-size-1);\n font-weight: var(--font-rg);\n letter-spacing: 0.32px;\n line-height: 1.333;\n }\n\n .wide-section-title-1 {\n font: var(--section-title-1);\n }\n\n .wide-section-title-2 {\n font: var(--section-title-2);\n }\n\n .wide-section-title-3 {\n font: var(--section-title-3);\n }\n\n .wide-section-title-4 {\n font: var(--section-title-4);\n }\n\n .wide-section-title-5 {\n font: var(--section-title-5);\n }\n\n .wide-section-title-6 {\n font: var(--section-title-6);\n }\n\n .wide-heading-1-lt,\n .wide-heading-2-lt,\n .wide-heading-3-lt,\n .wide-heading-4-lt {\n font-weight: var(--font-lt);\n }\n\n .wide-heading-1-sb,\n .wide-heading-2-sb,\n .wide-heading-3-sb,\n .wide-heading-4-sb,\n .wide-body-1-sb,\n .wide-body-2-sb,\n .wide-body-3-sb,\n .wide-body-4-sb,\n .wide-body-5-sb,\n .wide-interactive-1-sb,\n .wide-interactive-2-sb,\n .wide-interactive-3-sb {\n font-weight: var(--font-sb);\n }\n}\n\n/* font-weight variants */\n.heading-1-lt,\n.heading-2-lt,\n.heading-3-lt,\n.heading-4-lt {\n font-weight: var(--font-lt);\n}\n\n.heading-1-sb,\n.heading-2-sb,\n.heading-3-sb,\n.heading-4-sb,\n.body-1-sb,\n.body-2-sb,\n.body-3-sb,\n.body-4-sb,\n.body-5-sb,\n.interactive-1-sb,\n.interactive-2-sb,\n.interactive-3-sb,\n.helper-sb {\n font-weight: var(--font-sb);\n}\n","import {Component, Element, Event, EventEmitter, Host, Listen, Method, Prop, State, Watch, h} from \"@stencil/core\";\nimport {ColorPickerPalette, KeyboardCode, PopoverPosition} from \"../../beans\";\nimport {ZColorPickerCustomEvent, ZToolCustomEvent, ZTooltipCustomEvent} from \"../../components\";\nimport {IconName} from \"../../constants/iconset\";\nimport {containsElement} from \"../../utils/utils\";\n\n/**\n * ZTool component. Can display an icon, an optional tooltip (mainly for hints about the tool's functionality), and can contain a nested `z-toolbar` as a submenu that opens on click.\n * @slot - Optional slot for nested content (e.g., a secondary `z-toolbar`) that appears when the tool is open/clicked.\n */\n@Component({\n tag: \"z-tool\",\n styleUrls: [\"styles.css\", \"../../tokens/typography.css\"],\n shadow: true,\n})\nexport class ZTool {\n @Element() hostElement: HTMLZToolElement;\n\n /** Tool icon */\n @Prop()\n icon: IconName;\n\n /** Text displayed inside the tooltip. */\n @Prop()\n tooltip?: string;\n\n /** Preferred tooltip position. Defaults to true. */\n @Prop()\n tooltipPosition: PopoverPosition = PopoverPosition.TOP;\n\n /** Accessible label for the tool trigger. Falls back to tooltip content. */\n @Prop()\n htmlAriaLabel?: string;\n\n /** Visual active state. */\n @Prop({reflect: true})\n active = false;\n\n /** Disabled state. */\n @Prop({reflect: true})\n disabled = false;\n\n /** Open state. */\n @Prop({reflect: true, mutable: true})\n open = false;\n\n /**\n * Color to use to fill the icon's color indicator, if it has one.\n * Can be any valid value for the `fill` svg attribute.\n * The value of this prop is passed down to the `z-icon` component inside the tool.\n *\n * If `z-color-picker` component is used inside the tool's slot, its `colorSelected` event is listened\n * to automatically update `indicatorColor` and change the color of the icon indicator accordingly.\n */\n @Prop({mutable: true})\n indicatorColor?: string;\n\n @State()\n tooltipOpen = false;\n\n @State()\n hasSlottedContent = false;\n\n @State()\n isMobile = false;\n\n /** Indicates if the tool has nested open tools. Used to decide whether to auto-close the submenu. */\n @State()\n hasNestedOpenTools = false;\n\n /** Emitted when the open state changes. */\n @Event()\n toggleSubmenu: EventEmitter;\n\n /** Emitted when the tooltip open state changes. */\n @Event()\n toggleTooltip: EventEmitter;\n\n private buttonRef?: HTMLButtonElement;\n\n private iconRef?: HTMLElement;\n\n private tooltipRef?: HTMLZTooltipElement;\n\n private hoverDelay?: ReturnType<typeof setTimeout>;\n\n /** Indicates if the tool is nested inside another tool. */\n private isNested = false;\n\n /** Main `z-toolbar` ancestor element, meant to be the top-level toolbar not nested inside another tool. */\n private mainToolbar?: HTMLZToolbarElement;\n\n /** Media query list for detecting mobile view. */\n private mql?: MediaQueryList;\n\n /** Listener for changes in the mobile view media query. */\n private onMobileViewChange?: (e: MediaQueryListEvent) => void;\n\n /**\n * Opens the tooltip with a delay when the button is hovered or focused, and if the tool's content isn't already visible.\n */\n private handleTooltipOpen = (ev: FocusEvent | MouseEvent): void => {\n if (!this.tooltip || this.open || !this.buttonRef.contains(ev.target as Node)) {\n return;\n }\n\n clearTimeout(this.hoverDelay);\n this.hoverDelay = setTimeout(() => {\n this.tooltipOpen = true;\n }, 1000);\n };\n\n /**\n * Closes the tooltip immediately on button blur or when the mouse leaves the button or the tooltip, clearing any pending hover delay.\n */\n private handleTooltipClose = (ev: FocusEvent | MouseEvent): void => {\n if (!this.tooltip || (ev.relatedTarget as HTMLElement)?.closest(\"z-tooltip\") === this.tooltipRef) {\n return;\n }\n\n clearTimeout(this.hoverDelay);\n this.tooltipOpen = false;\n };\n\n /**\n * Handles click events on the tool's button element.\n * If the tool has slotted content, toggles the open state and focuses the active/selected item in the nested toolbar or color picker,\n * or the first item if no active/selected item is found.\n */\n private handleClick = (): void => {\n if (this.disabled || !this.hasSlottedContent) {\n return;\n }\n\n this.open = !this.open;\n if (this.open) {\n const colorPicker = this.hostElement.querySelector(\":scope > z-color-picker\") as HTMLZColorPickerElement | null;\n if (colorPicker) {\n colorPicker.setFocus();\n\n return;\n }\n\n // Focus the first active tool in the nested toolbar, or the first enabled if no active tool is found.\n const firstActiveOrEnabledNestedTool = (this.hostElement.querySelector(\n \":scope > z-toolbar z-tool[active]:not(:disabled)\"\n ) || this.hostElement.querySelector(\":scope > z-toolbar z-tool:not(:disabled)\")) as HTMLZToolElement | null;\n\n firstActiveOrEnabledNestedTool?.setFocus();\n }\n };\n\n /**\n * Handles `openChange` events from the tooltip popover to keep the `tooltipOpen` state in sync, but only if the event is coming from this tool's tooltip (and not from nested tools' tooltips).\n */\n private onTooltipOpenChange = (event: ZTooltipCustomEvent<{open: boolean}>): void => {\n if ((event.target as HTMLElement) === this.tooltipRef) {\n return;\n }\n\n this.tooltipOpen = event.detail.open;\n };\n\n @Watch(\"open\")\n handleOpenChange(): void {\n this.toggleSubmenu.emit(this.open);\n }\n\n @Watch(\"tooltipOpen\")\n handleTooltipOpenChange(): void {\n this.toggleTooltip.emit(this.tooltipOpen);\n }\n\n /**\n * Handle `ESC` and `shift+TAB` to close the submenu and move focus back to the button.\n */\n @Listen(\"keydown\")\n handleKeyDown(event: KeyboardEvent): void {\n if (!this.open || this.hasNestedOpenTools) {\n return;\n }\n\n switch (event.key) {\n case KeyboardCode.ESC:\n event.stopPropagation();\n this.open = false;\n this.setFocus();\n break;\n case KeyboardCode.TAB:\n if (event.shiftKey && (event.target as Element).closest(\"z-tool:not(:scope)\") === this.hostElement) {\n this.open = false;\n }\n break;\n }\n }\n\n /**\n * Close the popover on clicks outside the component, only if there are no nested open tools.\n * In that case any outside click should close the nested submenu(s) first.\n */\n @Listen(\"click\", {target: \"body\"})\n onOutsideClick(event: MouseEvent): void {\n const target = event.composedPath()[0] as HTMLElement;\n if (!this.open || containsElement(this.hostElement, target) || this.hasNestedOpenTools) {\n return;\n }\n\n this.open = false;\n }\n\n @Listen(\"toggleSubmenu\")\n onNestedToolToggle(ev: ZToolCustomEvent<boolean>): void {\n if (ev.target === this.hostElement) {\n return;\n }\n\n if (ev.detail === true) {\n this.hasNestedOpenTools = true;\n\n return;\n }\n\n this.hasNestedOpenTools = Array.from(this.hostElement.querySelectorAll(\"z-tool\")).some((tool) => tool.open);\n }\n\n /**\n * Handles the `colorSelected` event from a nested `z-color-picker` component.\n * Updates the `indicatorColor` and closes the tool's popover.\n */\n @Listen(\"colorSelected\")\n handleColorSelected(event: ZColorPickerCustomEvent<ColorPickerPalette>): void {\n if (!Array.from(this.hostElement.children).includes(event.target as Element)) {\n return;\n }\n\n this.indicatorColor = event.detail;\n this.open = false;\n this.setFocus();\n }\n\n /**\n * Close the submenu when focus moves outside the tool.\n */\n @Listen(\"focusin\", {target: \"body\", passive: true})\n handleExternalFocusin(ev: FocusEvent): void {\n const target = ev.target as Node;\n if (!containsElement(this.hostElement, target)) {\n this.open = false;\n }\n }\n\n /** Focuses the tool's button element. */\n @Method()\n async setFocus(): Promise<void> {\n if (this.disabled) {\n return;\n }\n\n setTimeout(() => {\n this.buttonRef?.focus();\n }, 50);\n }\n\n /** Sets the tab index of the tool's internal button element. */\n @Method()\n async setTabIndex(value: number): Promise<void> {\n if (!this.buttonRef) {\n return;\n }\n\n this.buttonRef.tabIndex = this.disabled ? -1 : value;\n }\n\n /** Closes the tooltip. */\n @Method()\n async closeTooltip(): Promise<void> {\n clearTimeout(this.hoverDelay);\n this.tooltipOpen = false;\n }\n\n componentWillLoad(): void {\n this.hasSlottedContent = this.hostElement.children.length > 0;\n this.isNested = !!this.hostElement.closest(\"z-tool:not(:scope)\");\n this.mainToolbar = this.hostElement.closest(\"z-toolbar:not(z-toolbar z-toolbar)\");\n this.hasNestedOpenTools = !!this.hostElement.querySelector(\"z-tool[open]\");\n\n this.mql = matchMedia(\"(max-width: 767px)\");\n this.onMobileViewChange = (e: MediaQueryListEvent) => (this.isMobile = e.matches);\n this.mql.addEventListener(\"change\", this.onMobileViewChange);\n this.isMobile = this.mql.matches;\n }\n\n disconnectedCallback(): void {\n clearTimeout(this.hoverDelay);\n this.mql?.removeEventListener(\"change\", this.onMobileViewChange);\n }\n\n render(): HTMLZToolElement {\n return (\n <Host class={{\"z-tool-tooltip-open\": this.tooltipOpen}}>\n <button\n class=\"z-tool\"\n type=\"button\"\n ref={(el) => (this.buttonRef = el)}\n aria-pressed={this.hasSlottedContent ? undefined : this.active ? \"true\" : \"false\"}\n aria-expanded={this.hasSlottedContent ? (this.open ? \"true\" : \"false\") : undefined}\n aria-haspopup={this.hasSlottedContent ? \"true\" : undefined}\n aria-label={this.htmlAriaLabel || this.tooltip || undefined}\n disabled={this.disabled}\n onClick={this.handleClick}\n onMouseEnter={this.handleTooltipOpen}\n onMouseLeave={this.handleTooltipClose}\n onFocus={this.handleTooltipOpen}\n onBlur={this.handleTooltipClose}\n >\n <z-icon\n ref={(el) => (this.iconRef = el)}\n name={this.icon}\n indicatorColor={this.indicatorColor}\n ></z-icon>\n </button>\n {this.tooltip && (\n <z-tooltip\n class=\"z-tool-tooltip\"\n ref={(el) => (this.tooltipRef = el)}\n bindTo={this.iconRef}\n open={this.tooltipOpen && !this.open}\n position={this.isNested ? PopoverPosition.BOTTOM : this.tooltipPosition}\n dark\n onMouseLeave={this.handleTooltipClose}\n onBlur={this.handleTooltipClose}\n onOpenChange={this.onTooltipOpenChange}\n >\n <span class=\"body-4\">{this.tooltip}</span>\n </z-tooltip>\n )}\n {this.hasSlottedContent && (\n <z-popover\n class=\"z-tool-submenu\"\n open={this.open}\n bindTo={this.isMobile && this.mainToolbar ? this.mainToolbar : this.hostElement}\n center\n /* disable auto-close to prevent unwanted close behaviors on mobile,\n when the bound element is the main toolbar */\n closable={false}\n position={this.isMobile ? PopoverPosition.TOP : PopoverPosition.BOTTOM}\n >\n <slot></slot>\n </z-popover>\n )}\n </Host>\n );\n }\n}\n"],"version":3}