@zanichelli/albe-web-components 17.0.6-RC5 → 17.0.6

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 (426) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/dist/cjs/{index-9b8b105e.js → index-2a9a328d.js} +2 -2
  3. package/dist/cjs/{index-9b8b105e.js.map → index-2a9a328d.js.map} +1 -1
  4. package/dist/cjs/{index-117cd3b0.js → index-aa56c709.js} +4 -4
  5. package/dist/cjs/{index-117cd3b0.js.map → index-aa56c709.js.map} +1 -1
  6. package/dist/cjs/{index-d6c4fda2.js → index-b2f35532.js} +2 -2
  7. package/dist/cjs/{index-d6c4fda2.js.map → index-b2f35532.js.map} +1 -1
  8. package/dist/cjs/{index-a465bca8.js → index-f5ebcaa2.js} +1 -2
  9. package/dist/cjs/index-f5ebcaa2.js.map +1 -0
  10. package/dist/cjs/index.cjs.js +2 -2
  11. package/dist/cjs/loader.cjs.js +1 -1
  12. package/dist/cjs/{utils-ee8e5b38.js → utils-c95c97b8.js} +2 -2
  13. package/dist/cjs/{utils-ee8e5b38.js.map → utils-c95c97b8.js.map} +1 -1
  14. package/dist/cjs/{utils-873dd0ae.js → utils-d08d4b80.js} +2 -2
  15. package/dist/cjs/{utils-873dd0ae.js.map → utils-d08d4b80.js.map} +1 -1
  16. package/dist/cjs/web-components-library.cjs.js +1 -1
  17. package/dist/cjs/z-accordion.cjs.entry.js +1 -1
  18. package/dist/cjs/z-anchor-navigation.cjs.entry.js +1 -1
  19. package/dist/cjs/z-app-header-deprecated.cjs.entry.js +1 -1
  20. package/dist/cjs/z-app-header_12.cjs.entry.js +8 -8
  21. package/dist/cjs/z-app-header_12.cjs.entry.js.map +1 -1
  22. package/dist/cjs/z-aria-alert.cjs.entry.js +1 -1
  23. package/dist/cjs/z-avatar.cjs.entry.js +1 -1
  24. package/dist/cjs/z-book-card-app.cjs.entry.js +1 -1
  25. package/dist/cjs/z-book-card-deprecated.cjs.entry.js +2 -2
  26. package/dist/cjs/z-book-card.cjs.entry.js +6 -5
  27. package/dist/cjs/z-book-card.cjs.entry.js.map +1 -1
  28. package/dist/cjs/z-breadcrumb.cjs.entry.js +2 -2
  29. package/dist/cjs/z-card.cjs.entry.js +1 -1
  30. package/dist/cjs/z-carousel.cjs.entry.js +1 -1
  31. package/dist/cjs/z-chip.cjs.entry.js +1 -1
  32. package/dist/cjs/z-combobox.cjs.entry.js +3 -3
  33. package/dist/cjs/z-combobox.cjs.entry.js.map +1 -1
  34. package/dist/cjs/z-cover-hero.cjs.entry.js +1 -1
  35. package/dist/cjs/z-date-picker.cjs.entry.js +2 -2
  36. package/dist/cjs/z-dragdrop-area_2.cjs.entry.js +2 -2
  37. package/dist/cjs/z-dragdrop-area_2.cjs.entry.js.map +1 -1
  38. package/dist/cjs/z-file-upload.cjs.entry.js +1 -1
  39. package/dist/cjs/z-file.cjs.entry.js +1 -1
  40. package/dist/cjs/z-info-reveal.cjs.entry.js +1 -1
  41. package/dist/cjs/z-menu-section.cjs.entry.js +1 -1
  42. package/dist/cjs/z-menu.cjs.entry.js +2 -2
  43. package/dist/cjs/z-myz-card-alert.cjs.entry.js +1 -1
  44. package/dist/cjs/z-myz-card-dictionary.cjs.entry.js +1 -1
  45. package/dist/cjs/z-myz-card-footer.cjs.entry.js +1 -1
  46. package/dist/cjs/z-myz-card-info.cjs.entry.js +2 -2
  47. package/dist/cjs/z-myz-card_4.cjs.entry.js +1 -1
  48. package/dist/cjs/z-myz-list-item.cjs.entry.js +2 -2
  49. package/dist/cjs/z-navigation-tabs.cjs.entry.js +1 -1
  50. package/dist/cjs/z-otp.cjs.entry.js +1 -1
  51. package/dist/cjs/z-pagination.cjs.entry.js +1 -1
  52. package/dist/cjs/z-popover.cjs.entry.js +1 -1
  53. package/dist/cjs/z-range-picker.cjs.entry.js +2 -2
  54. package/dist/cjs/z-section-title.cjs.entry.js +1 -1
  55. package/dist/cjs/z-select.cjs.entry.js +32 -120
  56. package/dist/cjs/z-select.cjs.entry.js.map +1 -1
  57. package/dist/cjs/z-skip-to-content.cjs.entry.js +2 -2
  58. package/dist/cjs/z-slideshow.cjs.entry.js +2 -2
  59. package/dist/cjs/z-table.cjs.entry.js +5 -5
  60. package/dist/cjs/z-td.cjs.entry.js +2 -2
  61. package/dist/cjs/z-th.cjs.entry.js +2 -2
  62. package/dist/cjs/z-toast-notification-list.cjs.entry.js +1 -1
  63. package/dist/cjs/z-toast-notification.cjs.entry.js +1 -1
  64. package/dist/cjs/z-toggle-switch.cjs.entry.js +2 -2
  65. package/dist/cjs/z-tooltip.cjs.entry.js +1 -1
  66. package/dist/cjs/z-tr.cjs.entry.js +5 -5
  67. package/dist/collection/beans/index.js +0 -1
  68. package/dist/collection/beans/index.js.map +1 -1
  69. package/dist/collection/components/book-card/z-book-card/index.js +23 -3
  70. package/dist/collection/components/book-card/z-book-card/index.js.map +1 -1
  71. package/dist/collection/components/book-card/z-book-card/index.stories.js +35 -0
  72. package/dist/collection/components/book-card/z-book-card/index.stories.js.map +1 -1
  73. package/dist/collection/components/book-card/z-book-card/styles.css +23 -0
  74. package/dist/collection/components/css-components/z-scrollbar/index.stories.js +73 -0
  75. package/dist/collection/components/css-components/z-scrollbar/index.stories.js.map +1 -0
  76. package/dist/collection/components/list/z-list/index.js +1 -1
  77. package/dist/collection/components/list/z-list-element/index.js +1 -1
  78. package/dist/collection/components/list/z-list-group/index.js +1 -1
  79. package/dist/collection/components/z-combobox/styles.css +13 -6
  80. package/dist/collection/components/z-input/index.js +2 -2
  81. package/dist/collection/components/z-input/index.js.map +1 -1
  82. package/dist/collection/components/z-input/styles.css +0 -20
  83. package/dist/collection/components/z-modal/styles.css +7 -7
  84. package/dist/collection/components/z-offcanvas/index.js +1 -1
  85. package/dist/collection/components/z-offcanvas/index.js.map +1 -1
  86. package/dist/collection/components/z-offcanvas/styles.css +0 -21
  87. package/dist/collection/components/z-searchbar/styles.css +13 -10
  88. package/dist/collection/components/z-select/index.js +34 -134
  89. package/dist/collection/components/z-select/index.js.map +1 -1
  90. package/dist/collection/components/z-select/index.stories.js +0 -91
  91. package/dist/collection/components/z-select/index.stories.js.map +1 -1
  92. package/dist/collection/components/z-select/styles.css +0 -123
  93. package/dist/components/index11.js +3 -3
  94. package/dist/components/index11.js.map +1 -1
  95. package/dist/components/index16.js +1 -1
  96. package/dist/components/index16.js.map +1 -1
  97. package/dist/components/index2.js +0 -1
  98. package/dist/components/index2.js.map +1 -1
  99. package/dist/components/index22.js +2 -2
  100. package/dist/components/index22.js.map +1 -1
  101. package/dist/components/index24.js +1 -1
  102. package/dist/components/index24.js.map +1 -1
  103. package/dist/components/z-book-card.js +6 -4
  104. package/dist/components/z-book-card.js.map +1 -1
  105. package/dist/components/z-combobox.js +1 -1
  106. package/dist/components/z-combobox.js.map +1 -1
  107. package/dist/components/z-select.js +30 -119
  108. package/dist/components/z-select.js.map +1 -1
  109. package/dist/docs/themes/index.stories.js +2 -1
  110. package/dist/docs/themes/index.stories.js.map +1 -1
  111. package/dist/esm/{index-f36946b3.js → index-092fc7cc.js} +4 -4
  112. package/dist/esm/{index-f36946b3.js.map → index-092fc7cc.js.map} +1 -1
  113. package/dist/esm/{index-5c567adb.js → index-735d4f23.js} +2 -2
  114. package/dist/esm/{index-5c567adb.js.map → index-735d4f23.js.map} +1 -1
  115. package/dist/esm/{index-dac83244.js → index-90f624c1.js} +2 -2
  116. package/dist/esm/{index-dac83244.js.map → index-90f624c1.js.map} +1 -1
  117. package/dist/esm/{index-c9fd4a10.js → index-ee40e66b.js} +1 -2
  118. package/dist/esm/index-ee40e66b.js.map +1 -0
  119. package/dist/esm/index.js +2 -2
  120. package/dist/esm/loader.js +1 -1
  121. package/dist/esm/{utils-1a6a53d2.js → utils-a31c16d9.js} +2 -2
  122. package/dist/esm/{utils-1a6a53d2.js.map → utils-a31c16d9.js.map} +1 -1
  123. package/dist/esm/{utils-7774201b.js → utils-b924649f.js} +2 -2
  124. package/dist/esm/{utils-7774201b.js.map → utils-b924649f.js.map} +1 -1
  125. package/dist/esm/web-components-library.js +1 -1
  126. package/dist/esm/z-accordion.entry.js +1 -1
  127. package/dist/esm/z-anchor-navigation.entry.js +1 -1
  128. package/dist/esm/z-app-header-deprecated.entry.js +1 -1
  129. package/dist/esm/z-app-header_12.entry.js +8 -8
  130. package/dist/esm/z-app-header_12.entry.js.map +1 -1
  131. package/dist/esm/z-aria-alert.entry.js +1 -1
  132. package/dist/esm/z-avatar.entry.js +1 -1
  133. package/dist/esm/z-book-card-app.entry.js +1 -1
  134. package/dist/esm/z-book-card-deprecated.entry.js +2 -2
  135. package/dist/esm/z-book-card.entry.js +6 -5
  136. package/dist/esm/z-book-card.entry.js.map +1 -1
  137. package/dist/esm/z-breadcrumb.entry.js +2 -2
  138. package/dist/esm/z-card.entry.js +1 -1
  139. package/dist/esm/z-carousel.entry.js +1 -1
  140. package/dist/esm/z-chip.entry.js +1 -1
  141. package/dist/esm/z-combobox.entry.js +3 -3
  142. package/dist/esm/z-combobox.entry.js.map +1 -1
  143. package/dist/esm/z-cover-hero.entry.js +1 -1
  144. package/dist/esm/z-date-picker.entry.js +2 -2
  145. package/dist/esm/z-dragdrop-area_2.entry.js +2 -2
  146. package/dist/esm/z-dragdrop-area_2.entry.js.map +1 -1
  147. package/dist/esm/z-file-upload.entry.js +1 -1
  148. package/dist/esm/z-file.entry.js +1 -1
  149. package/dist/esm/z-info-reveal.entry.js +1 -1
  150. package/dist/esm/z-menu-section.entry.js +1 -1
  151. package/dist/esm/z-menu.entry.js +2 -2
  152. package/dist/esm/z-myz-card-alert.entry.js +1 -1
  153. package/dist/esm/z-myz-card-dictionary.entry.js +1 -1
  154. package/dist/esm/z-myz-card-footer.entry.js +1 -1
  155. package/dist/esm/z-myz-card-info.entry.js +2 -2
  156. package/dist/esm/z-myz-card_4.entry.js +1 -1
  157. package/dist/esm/z-myz-list-item.entry.js +2 -2
  158. package/dist/esm/z-navigation-tabs.entry.js +1 -1
  159. package/dist/esm/z-otp.entry.js +1 -1
  160. package/dist/esm/z-pagination.entry.js +1 -1
  161. package/dist/esm/z-popover.entry.js +1 -1
  162. package/dist/esm/z-range-picker.entry.js +2 -2
  163. package/dist/esm/z-section-title.entry.js +1 -1
  164. package/dist/esm/z-select.entry.js +32 -120
  165. package/dist/esm/z-select.entry.js.map +1 -1
  166. package/dist/esm/z-skip-to-content.entry.js +2 -2
  167. package/dist/esm/z-slideshow.entry.js +2 -2
  168. package/dist/esm/z-table.entry.js +5 -5
  169. package/dist/esm/z-td.entry.js +2 -2
  170. package/dist/esm/z-th.entry.js +2 -2
  171. package/dist/esm/z-toast-notification-list.entry.js +1 -1
  172. package/dist/esm/z-toast-notification.entry.js +1 -1
  173. package/dist/esm/z-toggle-switch.entry.js +2 -2
  174. package/dist/esm/z-tooltip.entry.js +1 -1
  175. package/dist/esm/z-tr.entry.js +5 -5
  176. package/dist/types/beans/index.d.ts +1 -3
  177. package/dist/types/components/book-card/z-book-card/index.d.ts +3 -0
  178. package/dist/types/components/book-card/z-book-card/index.stories.d.ts +3 -0
  179. package/dist/types/components/css-components/z-scrollbar/index.stories.d.ts +57 -0
  180. package/dist/types/components/z-select/index.d.ts +0 -8
  181. package/dist/types/components/z-select/index.stories.d.ts +0 -8
  182. package/dist/types/components.d.ts +8 -2
  183. package/dist/web-components-library/index.esm.js +1 -1
  184. package/dist/web-components-library/{p-b22d3c7d.js → p-05f6053f.js} +2 -2
  185. package/dist/web-components-library/{p-de571245.entry.js → p-0d3f0534.entry.js} +2 -2
  186. package/{www/build/p-de571245.entry.js.map → dist/web-components-library/p-0d3f0534.entry.js.map} +1 -1
  187. package/{www/build/p-475a2ba2.entry.js → dist/web-components-library/p-0df6b405.entry.js} +2 -2
  188. package/dist/web-components-library/{p-8e544914.entry.js → p-11216ee8.entry.js} +2 -2
  189. package/dist/web-components-library/{p-6f5f2d56.entry.js → p-115fab3e.entry.js} +2 -2
  190. package/dist/web-components-library/{p-bbdb67db.entry.js → p-11629dd3.entry.js} +2 -2
  191. package/dist/web-components-library/{p-c3c99202.js → p-123739cb.js} +2 -2
  192. package/{www/build/p-7b375bca.js → dist/web-components-library/p-14e61df6.js} +2 -2
  193. package/dist/web-components-library/{p-29a297ed.entry.js → p-1630e240.entry.js} +2 -2
  194. package/dist/web-components-library/{p-5b6dd467.entry.js → p-18d63f0c.entry.js} +2 -2
  195. package/dist/web-components-library/{p-f49171aa.entry.js → p-1e3ff105.entry.js} +2 -2
  196. package/{www/build/p-cdc51108.entry.js → dist/web-components-library/p-22e32e11.entry.js} +2 -2
  197. package/dist/web-components-library/p-2798c0b2.entry.js +2 -0
  198. package/dist/web-components-library/{p-31c5b39d.entry.js → p-2a0d8ebe.entry.js} +2 -2
  199. package/dist/web-components-library/{p-0a149188.entry.js → p-2c450113.entry.js} +2 -2
  200. package/dist/web-components-library/{p-7091a1fc.entry.js → p-395b261e.entry.js} +2 -2
  201. package/dist/web-components-library/{p-7ef2c4ce.entry.js → p-4374d3f3.entry.js} +2 -2
  202. package/dist/web-components-library/{p-8e6760d9.entry.js → p-50bf57b4.entry.js} +2 -2
  203. package/{www/build/p-cc775eee.entry.js → dist/web-components-library/p-52be7378.entry.js} +2 -2
  204. package/dist/web-components-library/{p-c29bd399.entry.js → p-5387e6f3.entry.js} +2 -2
  205. package/dist/web-components-library/{p-f9fb6005.entry.js → p-72dae90b.entry.js} +2 -2
  206. package/{www/build/p-d29f9574.entry.js → dist/web-components-library/p-73d686e0.entry.js} +2 -2
  207. package/dist/web-components-library/{p-96be6eae.entry.js → p-75808b47.entry.js} +2 -2
  208. package/dist/web-components-library/{p-6279b3fc.entry.js → p-758333dc.entry.js} +2 -2
  209. package/{www/build/p-7cfe50d0.entry.js → dist/web-components-library/p-7af33b00.entry.js} +2 -2
  210. package/dist/web-components-library/{p-71e2a48b.entry.js → p-7f370d17.entry.js} +2 -2
  211. package/dist/web-components-library/{p-c7f8b628.entry.js → p-8c952964.entry.js} +2 -2
  212. package/dist/web-components-library/{p-7f0cbe57.entry.js → p-9218da42.entry.js} +2 -2
  213. package/{www/build/p-8adf58c8.entry.js → dist/web-components-library/p-9c4b7a51.entry.js} +2 -2
  214. package/dist/web-components-library/p-9e6d080f.entry.js +2 -0
  215. package/dist/web-components-library/p-9e6d080f.entry.js.map +1 -0
  216. package/{www/build/p-6337614a.entry.js → dist/web-components-library/p-aa0b3e7a.entry.js} +2 -2
  217. package/{www/build/p-9ec778dc.entry.js → dist/web-components-library/p-aa42f01d.entry.js} +2 -2
  218. package/dist/web-components-library/p-ad825740.entry.js +2 -0
  219. package/dist/web-components-library/p-b34993de.js +2 -0
  220. package/dist/web-components-library/p-b34993de.js.map +1 -0
  221. package/dist/web-components-library/{p-15aac7aa.js → p-bba6129f.js} +2 -2
  222. package/{www/build/p-4c287a21.entry.js → dist/web-components-library/p-bd571858.entry.js} +2 -2
  223. package/dist/web-components-library/{p-8ca50c86.entry.js → p-c29a520b.entry.js} +2 -2
  224. package/dist/web-components-library/{p-f444b5bd.entry.js → p-cf7b7e73.entry.js} +2 -2
  225. package/{www/build/p-b7cf2442.entry.js → dist/web-components-library/p-d1cca5ea.entry.js} +2 -2
  226. package/dist/web-components-library/p-d28b352f.entry.js +2 -0
  227. package/dist/web-components-library/p-d28b352f.entry.js.map +1 -0
  228. package/dist/web-components-library/p-d65aba93.entry.js +2 -0
  229. package/dist/web-components-library/{p-20e4a601.entry.js → p-d6a2b1c6.entry.js} +2 -2
  230. package/dist/web-components-library/p-e185545c.entry.js +2 -0
  231. package/dist/web-components-library/p-e256027a.entry.js +2 -0
  232. package/dist/web-components-library/p-e256027a.entry.js.map +1 -0
  233. package/dist/web-components-library/{p-e7524beb.entry.js → p-e5b1c34a.entry.js} +2 -2
  234. package/dist/web-components-library/{p-e7524beb.entry.js.map → p-e5b1c34a.entry.js.map} +1 -1
  235. package/dist/web-components-library/{p-010b6146.js → p-e691c0b8.js} +2 -2
  236. package/{www/build/p-5bac684a.entry.js → dist/web-components-library/p-e78353d6.entry.js} +2 -2
  237. package/{www/build/p-898fcd66.entry.js → dist/web-components-library/p-ed091723.entry.js} +2 -2
  238. package/dist/web-components-library/{p-011fa0c8.entry.js → p-f06bd257.entry.js} +2 -2
  239. package/dist/web-components-library/{p-0d60cc5e.entry.js → p-f075ec62.entry.js} +2 -2
  240. package/{www/build/p-fc2b2a96.entry.js → dist/web-components-library/p-f8915e2e.entry.js} +2 -2
  241. package/dist/web-components-library/web-components-library.css +21 -0
  242. package/dist/web-components-library/web-components-library.esm.js +1 -1
  243. package/dist/web-components-library/web-components-library.esm.js.map +1 -1
  244. package/package.json +1 -1
  245. package/www/build/index.esm.js +1 -1
  246. package/www/build/{p-b22d3c7d.js → p-05f6053f.js} +2 -2
  247. package/www/build/{p-de571245.entry.js → p-0d3f0534.entry.js} +2 -2
  248. package/{dist/web-components-library/p-de571245.entry.js.map → www/build/p-0d3f0534.entry.js.map} +1 -1
  249. package/{dist/web-components-library/p-475a2ba2.entry.js → www/build/p-0df6b405.entry.js} +2 -2
  250. package/www/build/{p-8e544914.entry.js → p-11216ee8.entry.js} +2 -2
  251. package/www/build/{p-6f5f2d56.entry.js → p-115fab3e.entry.js} +2 -2
  252. package/www/build/{p-bbdb67db.entry.js → p-11629dd3.entry.js} +2 -2
  253. package/www/build/{p-c3c99202.js → p-123739cb.js} +2 -2
  254. package/{dist/web-components-library/p-7b375bca.js → www/build/p-14e61df6.js} +2 -2
  255. package/www/build/{p-29a297ed.entry.js → p-1630e240.entry.js} +2 -2
  256. package/www/build/{p-5b6dd467.entry.js → p-18d63f0c.entry.js} +2 -2
  257. package/www/build/{p-f49171aa.entry.js → p-1e3ff105.entry.js} +2 -2
  258. package/{dist/web-components-library/p-cdc51108.entry.js → www/build/p-22e32e11.entry.js} +2 -2
  259. package/www/build/p-2798c0b2.entry.js +2 -0
  260. package/www/build/{p-31c5b39d.entry.js → p-2a0d8ebe.entry.js} +2 -2
  261. package/www/build/{p-0a149188.entry.js → p-2c450113.entry.js} +2 -2
  262. package/www/build/{p-7091a1fc.entry.js → p-395b261e.entry.js} +2 -2
  263. package/www/build/{p-7ef2c4ce.entry.js → p-4374d3f3.entry.js} +2 -2
  264. package/www/build/{p-8e6760d9.entry.js → p-50bf57b4.entry.js} +2 -2
  265. package/{dist/web-components-library/p-cc775eee.entry.js → www/build/p-52be7378.entry.js} +2 -2
  266. package/www/build/{p-c29bd399.entry.js → p-5387e6f3.entry.js} +2 -2
  267. package/www/build/{p-a35437c8.css → p-5fcad73f.css} +21 -0
  268. package/www/build/{p-f9fb6005.entry.js → p-72dae90b.entry.js} +2 -2
  269. package/{dist/web-components-library/p-d29f9574.entry.js → www/build/p-73d686e0.entry.js} +2 -2
  270. package/www/build/{p-96be6eae.entry.js → p-75808b47.entry.js} +2 -2
  271. package/www/build/{p-6279b3fc.entry.js → p-758333dc.entry.js} +2 -2
  272. package/{dist/web-components-library/p-7cfe50d0.entry.js → www/build/p-7af33b00.entry.js} +2 -2
  273. package/www/build/{p-71e2a48b.entry.js → p-7f370d17.entry.js} +2 -2
  274. package/www/build/{p-c7f8b628.entry.js → p-8c952964.entry.js} +2 -2
  275. package/www/build/{p-7f0cbe57.entry.js → p-9218da42.entry.js} +2 -2
  276. package/{dist/web-components-library/p-8adf58c8.entry.js → www/build/p-9c4b7a51.entry.js} +2 -2
  277. package/www/build/p-9e6d080f.entry.js +2 -0
  278. package/www/build/p-9e6d080f.entry.js.map +1 -0
  279. package/{dist/web-components-library/p-6337614a.entry.js → www/build/p-aa0b3e7a.entry.js} +2 -2
  280. package/{dist/web-components-library/p-9ec778dc.entry.js → www/build/p-aa42f01d.entry.js} +2 -2
  281. package/www/build/p-ad825740.entry.js +2 -0
  282. package/www/build/p-b34993de.js +2 -0
  283. package/www/build/p-b34993de.js.map +1 -0
  284. package/www/build/p-bac5085b.js +2 -0
  285. package/www/build/{p-15aac7aa.js → p-bba6129f.js} +2 -2
  286. package/{dist/web-components-library/p-4c287a21.entry.js → www/build/p-bd571858.entry.js} +2 -2
  287. package/www/build/{p-8ca50c86.entry.js → p-c29a520b.entry.js} +2 -2
  288. package/www/build/{p-f444b5bd.entry.js → p-cf7b7e73.entry.js} +2 -2
  289. package/{dist/web-components-library/p-b7cf2442.entry.js → www/build/p-d1cca5ea.entry.js} +2 -2
  290. package/www/build/p-d28b352f.entry.js +2 -0
  291. package/www/build/p-d28b352f.entry.js.map +1 -0
  292. package/www/build/p-d65aba93.entry.js +2 -0
  293. package/www/build/{p-20e4a601.entry.js → p-d6a2b1c6.entry.js} +2 -2
  294. package/www/build/p-e185545c.entry.js +2 -0
  295. package/www/build/p-e256027a.entry.js +2 -0
  296. package/www/build/p-e256027a.entry.js.map +1 -0
  297. package/www/build/{p-e7524beb.entry.js → p-e5b1c34a.entry.js} +2 -2
  298. package/www/build/{p-e7524beb.entry.js.map → p-e5b1c34a.entry.js.map} +1 -1
  299. package/www/build/{p-010b6146.js → p-e691c0b8.js} +2 -2
  300. package/{dist/web-components-library/p-5bac684a.entry.js → www/build/p-e78353d6.entry.js} +2 -2
  301. package/{dist/web-components-library/p-898fcd66.entry.js → www/build/p-ed091723.entry.js} +2 -2
  302. package/www/build/{p-011fa0c8.entry.js → p-f06bd257.entry.js} +2 -2
  303. package/www/build/{p-0d60cc5e.entry.js → p-f075ec62.entry.js} +2 -2
  304. package/{dist/web-components-library/p-fc2b2a96.entry.js → www/build/p-f8915e2e.entry.js} +2 -2
  305. package/www/build/web-components-library.css +21 -0
  306. package/www/build/web-components-library.esm.js +1 -1
  307. package/www/build/web-components-library.esm.js.map +1 -1
  308. package/www/index.html +1 -1
  309. package/www/pages/book-cards.html +120 -0
  310. package/dist/cjs/index-a465bca8.js.map +0 -1
  311. package/dist/esm/index-c9fd4a10.js.map +0 -1
  312. package/dist/web-components-library/p-2b309f57.js +0 -2
  313. package/dist/web-components-library/p-2b309f57.js.map +0 -1
  314. package/dist/web-components-library/p-2c047715.entry.js +0 -2
  315. package/dist/web-components-library/p-2c047715.entry.js.map +0 -1
  316. package/dist/web-components-library/p-3243015c.entry.js +0 -2
  317. package/dist/web-components-library/p-3dec754a.entry.js +0 -2
  318. package/dist/web-components-library/p-3dec754a.entry.js.map +0 -1
  319. package/dist/web-components-library/p-4b29336e.entry.js +0 -2
  320. package/dist/web-components-library/p-96c9454e.entry.js +0 -2
  321. package/dist/web-components-library/p-96c9454e.entry.js.map +0 -1
  322. package/dist/web-components-library/p-a4ddeb5f.entry.js +0 -2
  323. package/dist/web-components-library/p-b539c9be.entry.js +0 -2
  324. package/www/build/p-2b309f57.js +0 -2
  325. package/www/build/p-2b309f57.js.map +0 -1
  326. package/www/build/p-2c047715.entry.js +0 -2
  327. package/www/build/p-2c047715.entry.js.map +0 -1
  328. package/www/build/p-3243015c.entry.js +0 -2
  329. package/www/build/p-3dec754a.entry.js +0 -2
  330. package/www/build/p-3dec754a.entry.js.map +0 -1
  331. package/www/build/p-4b29336e.entry.js +0 -2
  332. package/www/build/p-96c9454e.entry.js +0 -2
  333. package/www/build/p-96c9454e.entry.js.map +0 -1
  334. package/www/build/p-a4ddeb5f.entry.js +0 -2
  335. package/www/build/p-b539c9be.entry.js +0 -2
  336. package/www/build/p-dfff95ce.js +0 -2
  337. /package/dist/web-components-library/{p-b22d3c7d.js.map → p-05f6053f.js.map} +0 -0
  338. /package/dist/web-components-library/{p-475a2ba2.entry.js.map → p-0df6b405.entry.js.map} +0 -0
  339. /package/dist/web-components-library/{p-8e544914.entry.js.map → p-11216ee8.entry.js.map} +0 -0
  340. /package/dist/web-components-library/{p-6f5f2d56.entry.js.map → p-115fab3e.entry.js.map} +0 -0
  341. /package/dist/web-components-library/{p-bbdb67db.entry.js.map → p-11629dd3.entry.js.map} +0 -0
  342. /package/dist/web-components-library/{p-c3c99202.js.map → p-123739cb.js.map} +0 -0
  343. /package/dist/web-components-library/{p-7b375bca.js.map → p-14e61df6.js.map} +0 -0
  344. /package/dist/web-components-library/{p-29a297ed.entry.js.map → p-1630e240.entry.js.map} +0 -0
  345. /package/dist/web-components-library/{p-5b6dd467.entry.js.map → p-18d63f0c.entry.js.map} +0 -0
  346. /package/dist/web-components-library/{p-f49171aa.entry.js.map → p-1e3ff105.entry.js.map} +0 -0
  347. /package/dist/web-components-library/{p-cdc51108.entry.js.map → p-22e32e11.entry.js.map} +0 -0
  348. /package/dist/web-components-library/{p-4b29336e.entry.js.map → p-2798c0b2.entry.js.map} +0 -0
  349. /package/dist/web-components-library/{p-31c5b39d.entry.js.map → p-2a0d8ebe.entry.js.map} +0 -0
  350. /package/dist/web-components-library/{p-0a149188.entry.js.map → p-2c450113.entry.js.map} +0 -0
  351. /package/dist/web-components-library/{p-7091a1fc.entry.js.map → p-395b261e.entry.js.map} +0 -0
  352. /package/dist/web-components-library/{p-7ef2c4ce.entry.js.map → p-4374d3f3.entry.js.map} +0 -0
  353. /package/dist/web-components-library/{p-8e6760d9.entry.js.map → p-50bf57b4.entry.js.map} +0 -0
  354. /package/dist/web-components-library/{p-cc775eee.entry.js.map → p-52be7378.entry.js.map} +0 -0
  355. /package/dist/web-components-library/{p-c29bd399.entry.js.map → p-5387e6f3.entry.js.map} +0 -0
  356. /package/dist/web-components-library/{p-f9fb6005.entry.js.map → p-72dae90b.entry.js.map} +0 -0
  357. /package/dist/web-components-library/{p-d29f9574.entry.js.map → p-73d686e0.entry.js.map} +0 -0
  358. /package/dist/web-components-library/{p-96be6eae.entry.js.map → p-75808b47.entry.js.map} +0 -0
  359. /package/dist/web-components-library/{p-6279b3fc.entry.js.map → p-758333dc.entry.js.map} +0 -0
  360. /package/dist/web-components-library/{p-7cfe50d0.entry.js.map → p-7af33b00.entry.js.map} +0 -0
  361. /package/dist/web-components-library/{p-71e2a48b.entry.js.map → p-7f370d17.entry.js.map} +0 -0
  362. /package/dist/web-components-library/{p-c7f8b628.entry.js.map → p-8c952964.entry.js.map} +0 -0
  363. /package/dist/web-components-library/{p-7f0cbe57.entry.js.map → p-9218da42.entry.js.map} +0 -0
  364. /package/dist/web-components-library/{p-8adf58c8.entry.js.map → p-9c4b7a51.entry.js.map} +0 -0
  365. /package/dist/web-components-library/{p-6337614a.entry.js.map → p-aa0b3e7a.entry.js.map} +0 -0
  366. /package/dist/web-components-library/{p-9ec778dc.entry.js.map → p-aa42f01d.entry.js.map} +0 -0
  367. /package/dist/web-components-library/{p-a4ddeb5f.entry.js.map → p-ad825740.entry.js.map} +0 -0
  368. /package/dist/web-components-library/{p-15aac7aa.js.map → p-bba6129f.js.map} +0 -0
  369. /package/dist/web-components-library/{p-4c287a21.entry.js.map → p-bd571858.entry.js.map} +0 -0
  370. /package/dist/web-components-library/{p-8ca50c86.entry.js.map → p-c29a520b.entry.js.map} +0 -0
  371. /package/dist/web-components-library/{p-f444b5bd.entry.js.map → p-cf7b7e73.entry.js.map} +0 -0
  372. /package/dist/web-components-library/{p-b7cf2442.entry.js.map → p-d1cca5ea.entry.js.map} +0 -0
  373. /package/dist/web-components-library/{p-3243015c.entry.js.map → p-d65aba93.entry.js.map} +0 -0
  374. /package/dist/web-components-library/{p-20e4a601.entry.js.map → p-d6a2b1c6.entry.js.map} +0 -0
  375. /package/dist/web-components-library/{p-b539c9be.entry.js.map → p-e185545c.entry.js.map} +0 -0
  376. /package/dist/web-components-library/{p-010b6146.js.map → p-e691c0b8.js.map} +0 -0
  377. /package/dist/web-components-library/{p-5bac684a.entry.js.map → p-e78353d6.entry.js.map} +0 -0
  378. /package/dist/web-components-library/{p-898fcd66.entry.js.map → p-ed091723.entry.js.map} +0 -0
  379. /package/dist/web-components-library/{p-011fa0c8.entry.js.map → p-f06bd257.entry.js.map} +0 -0
  380. /package/dist/web-components-library/{p-0d60cc5e.entry.js.map → p-f075ec62.entry.js.map} +0 -0
  381. /package/dist/web-components-library/{p-fc2b2a96.entry.js.map → p-f8915e2e.entry.js.map} +0 -0
  382. /package/www/build/{p-b22d3c7d.js.map → p-05f6053f.js.map} +0 -0
  383. /package/www/build/{p-475a2ba2.entry.js.map → p-0df6b405.entry.js.map} +0 -0
  384. /package/www/build/{p-8e544914.entry.js.map → p-11216ee8.entry.js.map} +0 -0
  385. /package/www/build/{p-6f5f2d56.entry.js.map → p-115fab3e.entry.js.map} +0 -0
  386. /package/www/build/{p-bbdb67db.entry.js.map → p-11629dd3.entry.js.map} +0 -0
  387. /package/www/build/{p-c3c99202.js.map → p-123739cb.js.map} +0 -0
  388. /package/www/build/{p-7b375bca.js.map → p-14e61df6.js.map} +0 -0
  389. /package/www/build/{p-29a297ed.entry.js.map → p-1630e240.entry.js.map} +0 -0
  390. /package/www/build/{p-5b6dd467.entry.js.map → p-18d63f0c.entry.js.map} +0 -0
  391. /package/www/build/{p-f49171aa.entry.js.map → p-1e3ff105.entry.js.map} +0 -0
  392. /package/www/build/{p-cdc51108.entry.js.map → p-22e32e11.entry.js.map} +0 -0
  393. /package/www/build/{p-4b29336e.entry.js.map → p-2798c0b2.entry.js.map} +0 -0
  394. /package/www/build/{p-31c5b39d.entry.js.map → p-2a0d8ebe.entry.js.map} +0 -0
  395. /package/www/build/{p-0a149188.entry.js.map → p-2c450113.entry.js.map} +0 -0
  396. /package/www/build/{p-7091a1fc.entry.js.map → p-395b261e.entry.js.map} +0 -0
  397. /package/www/build/{p-7ef2c4ce.entry.js.map → p-4374d3f3.entry.js.map} +0 -0
  398. /package/www/build/{p-8e6760d9.entry.js.map → p-50bf57b4.entry.js.map} +0 -0
  399. /package/www/build/{p-cc775eee.entry.js.map → p-52be7378.entry.js.map} +0 -0
  400. /package/www/build/{p-c29bd399.entry.js.map → p-5387e6f3.entry.js.map} +0 -0
  401. /package/www/build/{p-f9fb6005.entry.js.map → p-72dae90b.entry.js.map} +0 -0
  402. /package/www/build/{p-d29f9574.entry.js.map → p-73d686e0.entry.js.map} +0 -0
  403. /package/www/build/{p-96be6eae.entry.js.map → p-75808b47.entry.js.map} +0 -0
  404. /package/www/build/{p-6279b3fc.entry.js.map → p-758333dc.entry.js.map} +0 -0
  405. /package/www/build/{p-7cfe50d0.entry.js.map → p-7af33b00.entry.js.map} +0 -0
  406. /package/www/build/{p-71e2a48b.entry.js.map → p-7f370d17.entry.js.map} +0 -0
  407. /package/www/build/{p-c7f8b628.entry.js.map → p-8c952964.entry.js.map} +0 -0
  408. /package/www/build/{p-7f0cbe57.entry.js.map → p-9218da42.entry.js.map} +0 -0
  409. /package/www/build/{p-8adf58c8.entry.js.map → p-9c4b7a51.entry.js.map} +0 -0
  410. /package/www/build/{p-6337614a.entry.js.map → p-aa0b3e7a.entry.js.map} +0 -0
  411. /package/www/build/{p-9ec778dc.entry.js.map → p-aa42f01d.entry.js.map} +0 -0
  412. /package/www/build/{p-a4ddeb5f.entry.js.map → p-ad825740.entry.js.map} +0 -0
  413. /package/www/build/{p-15aac7aa.js.map → p-bba6129f.js.map} +0 -0
  414. /package/www/build/{p-4c287a21.entry.js.map → p-bd571858.entry.js.map} +0 -0
  415. /package/www/build/{p-8ca50c86.entry.js.map → p-c29a520b.entry.js.map} +0 -0
  416. /package/www/build/{p-f444b5bd.entry.js.map → p-cf7b7e73.entry.js.map} +0 -0
  417. /package/www/build/{p-b7cf2442.entry.js.map → p-d1cca5ea.entry.js.map} +0 -0
  418. /package/www/build/{p-3243015c.entry.js.map → p-d65aba93.entry.js.map} +0 -0
  419. /package/www/build/{p-20e4a601.entry.js.map → p-d6a2b1c6.entry.js.map} +0 -0
  420. /package/www/build/{p-b539c9be.entry.js.map → p-e185545c.entry.js.map} +0 -0
  421. /package/www/build/{p-010b6146.js.map → p-e691c0b8.js.map} +0 -0
  422. /package/www/build/{p-5bac684a.entry.js.map → p-e78353d6.entry.js.map} +0 -0
  423. /package/www/build/{p-898fcd66.entry.js.map → p-ed091723.entry.js.map} +0 -0
  424. /package/www/build/{p-011fa0c8.entry.js.map → p-f06bd257.entry.js.map} +0 -0
  425. /package/www/build/{p-0d60cc5e.entry.js.map → p-f075ec62.entry.js.map} +0 -0
  426. /package/www/build/{p-fc2b2a96.entry.js.map → p-f8915e2e.entry.js.map} +0 -0
@@ -1 +1 @@
1
- {"file":"z-combobox.js","mappings":"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","names":["ZCombobox"],"sources":["src/components/z-combobox/styles.css?tag=z-combobox&encapsulation=shadow","src/components/z-combobox/index.tsx"],"sourcesContent":[":host {\n display: block;\n font-family: var(--font-family-sans);\n}\n\n:host > div.fixed {\n position: relative;\n}\n\n:host > div > .header {\n position: relative;\n z-index: 10;\n display: flex;\n min-height: 42px;\n align-items: center;\n justify-content: space-between;\n padding: 0 calc(var(--space-unit) * 1.5);\n border: var(--border-size-small) solid var(--color-surface04);\n margin: 0;\n background-color: var(--color-form-background);\n border-radius: var(--border-radius-small);\n cursor: pointer;\n}\n\n:host([size=\"small\"]) > div > .header {\n min-height: 34px;\n font-size: var(--font-size-2);\n}\n\n:host([size=\"x-small\"]) > div > .header {\n min-height: 30px;\n font-size: var(--font-size-2);\n}\n\n:host([size=\"x-small\"]) > div > .header p.body-3 {\n padding: calc(var(--space-unit) * 0.5) 0;\n}\n\n:host > div > .header:hover {\n outline: var(--border-size-medium) solid var(--color-surface04);\n outline-offset: -2px;\n}\n\n:host > div > div.header:focus:focus-visible {\n z-index: 16;\n box-shadow: var(--shadow-focus-primary);\n outline: none;\n}\n\n:host > div > .header > p.body-3 {\n padding: var(--space-unit) 0;\n margin: 0;\n color: var(--color-default-text);\n}\n\n:host > div > .header > p.body-3 > span {\n font-weight: var(--font-sb);\n}\n\n:host > div > .header > z-icon {\n fill: var(--color-default-icon);\n transform: rotate(360deg);\n transition: all 200ms linear;\n}\n\n:host > div > .header > z-icon.small,\n:host > div > .header > z-icon.x-small {\n --z-icon-width: 16px;\n --z-icon-height: 16px;\n}\n\n:host > div.open > .header {\n border: var(--border-size-small) solid var(--color-primary01);\n border-radius: var(--border-radius-small) var(--border-radius-small) 0 0;\n}\n\n:host > div.disabled {\n pointer-events: none;\n}\n\n:host > div.disabled .header {\n border-color: var(--color-disabled01);\n fill: var(--color-disabled01);\n}\n\n:host > div.disabled .header > p.body-3 {\n color: var(--color-disabled03);\n}\n\n:host > div.disabled .header > z-icon:last-child {\n fill: var(--color-disabled01);\n}\n\n:host > div.open > .header > z-icon {\n fill: var(--color-default-icon);\n transform: rotate(180deg);\n transition: all 200ms linear;\n}\n\n:host > div.open > div.open-combo-data {\n position: relative;\n z-index: 12;\n padding: var(--space-unit) calc(var(--space-unit) * 2);\n border: var(--border-size-small) solid var(--gray200);\n border-top: 0;\n background-color: var(--color-form-background);\n border-radius: 0;\n}\n\n:host > div.open > div.open-combo-data > div > div {\n overflow: auto;\n max-height: 235px;\n padding: 0;\n scrollbar-color: var(--color-primary01) transparent;\n}\n\n:host > div.open > div.open-combo-data > z-input {\n width: 100%;\n margin-bottom: calc(var(--space-unit) * 2);\n}\n\n:host > div.open > div.open-combo-data > div > div > ul {\n max-height: 235px;\n padding: 0 3px; /* needed for checkbox focus shadow */\n margin: 0;\n}\n\n::-webkit-scrollbar {\n width: 10px;\n background: linear-gradient(to right, transparent 0 3px, var(--gray200) 3px 7px, transparent 7px 10px);\n border-radius: var(--border-radius);\n}\n\n::-webkit-scrollbar-thumb {\n width: 10px;\n background-color: var(--color-primary01);\n}\n\n:host > div.open > z-input {\n position: relative;\n z-index: 1;\n width: 238px;\n margin: 0 calc(var(--space-unit) * 2);\n color: var(--color-primary01);\n}\n\n:host > div.open > div.open-combo-data > div > div.search {\n overflow: hidden;\n max-height: auto;\n margin-top: 0;\n box-shadow: 1px 1px 4px 2px rgb(217 222 227 / 50%);\n}\n\n:host > div.open > div.open-combo-data > div > div.search > ul {\n overflow: auto;\n max-height: 180px;\n padding: var(--space-unit) calc(var(--space-unit) * 2);\n scrollbar-color: var(--color-primary01) transparent;\n}\n\n:host > div.open > div.open-combo-data > div > div.search > div {\n display: flex;\n justify-content: center;\n}\n\n:host > div.open > div.open-combo-data > div > div.search > div > a {\n display: inline-block;\n height: 44px;\n color: var(--color-primary01);\n cursor: pointer;\n font-size: 14px;\n font-weight: var(--font-sb);\n line-height: 44px;\n text-align: center;\n text-transform: uppercase;\n}\n\n:host > div.open > div.open-combo-data > div > div.search > div > a:focus:focus-visible {\n box-shadow: var(--shadow-focus-primary);\n outline: none;\n}\n\n:host > div.open > div.open-combo-data > div > div.check-all-wrapper {\n padding: calc(var(--space-unit) * 2) calc(var(--space-unit) * 0.5);\n border-bottom: var(--border-size-small) solid var(--gray800);\n margin-bottom: var(--space-unit);\n text-align: left;\n}\n\n:host([size=\"small\"]) > div.open > div.open-combo-data > div > div.check-all-wrapper {\n padding: calc(var(--space-unit) * 1.5) calc(var(--space-unit) * 0.5);\n}\n\n:host([size=\"x-small\"]) > div.open > div.open-combo-data > div > div.check-all-wrapper {\n padding: var(--space-unit) calc(var(--space-unit) * 0.5);\n}\n","import {Component, Element, Event, EventEmitter, Prop, State, Watch, h} from \"@stencil/core\";\nimport {ComboItem, ControlSize, InputType, KeyboardCode, ListDividerType, ListSize} from \"../../beans\";\nimport {ZMyzListItem} from \"../../snowflakes/myz/list/z-myz-list-item\";\nimport {handleKeyboardSubmit, randomId} from \"../../utils/utils\";\nimport {ZInput} from \"../z-input\";\n\n@Component({\n tag: \"z-combobox\",\n styleUrl: \"styles.css\",\n shadow: true,\n})\nexport class ZCombobox {\n @Element() element: HTMLZComboboxElement;\n\n /** input unique id */\n @Prop()\n inputid = `combo-${randomId()}`;\n\n /** list items array */\n @Prop()\n items: ComboItem[] | string;\n\n /** label text */\n @Prop()\n label: string;\n\n /** the combobox is disabled */\n @Prop({reflect: true})\n disabled?: boolean = false;\n\n /** show search input flag (optional) */\n @Prop()\n hassearch?: boolean = false;\n\n /** search input label text (optional) */\n @Prop()\n searchlabel?: string;\n\n /** search input placeholder text (optional) */\n @Prop()\n searchplaceholder?: string;\n\n /** search input title text (optional) */\n @Prop()\n searchtitle?: string;\n\n /** no result text message */\n @Prop()\n noresultslabel?: string = \"Nessun risultato\";\n\n /** toggle combo list opening flag */\n @Prop({mutable: true})\n isopen = false;\n\n /** fixed style flag */\n @Prop()\n isfixed = false;\n\n /** close combobox list text */\n @Prop()\n closesearchtext?: string = \"Chiudi\";\n\n /** show \"check all\" checkbox (optional) */\n @Prop()\n hascheckall?: boolean = false;\n\n /** check all label (optional) */\n @Prop()\n checkalltext?: string = \"Seleziona tutti\";\n\n /** uncheck all label (optional) */\n @Prop()\n uncheckalltext?: string = \"Deseleziona tutti\";\n\n /** max number of checkable items (0 = unlimited) */\n @Prop()\n maxcheckableitems = 0;\n\n /** group items by category */\n @Prop()\n hasgroupitems?: boolean;\n\n /** Available sizes: `big`, `small` and `x-small`. Defaults to `big`. */\n @Prop()\n size?: ControlSize = ControlSize.BIG;\n\n @State()\n searchValue: string;\n\n @State()\n selectedCounter: number;\n\n @State()\n renderItemsList: ComboItem[] = []; // used for render only\n\n @State()\n focusedItemId: string;\n\n @State()\n checkboxes: HTMLInputElement[] = [];\n\n private itemsList: ComboItem[] = [];\n\n private inputType: InputType = InputType.TEXT;\n\n @Watch(\"items\")\n watchItems(): void {\n this.itemsList = typeof this.items === \"string\" ? JSON.parse(this.items) : this.items;\n this.selectedCounter = this.itemsList.filter((item) => item.checked).length;\n this.updateRenderItemsList();\n }\n\n @Watch(\"searchValue\")\n watchSearchValue(): void {\n this.filterItems(this.searchValue);\n }\n\n @Watch(\"checkboxes\")\n watchCheckboxes(): void {\n this.checkboxes.forEach((item, index) => item.setAttribute(\"tabindex\", index === 0 ? \"0\" : \"-1\"));\n }\n\n /** Emitted when value is checked/unchecked. Returns id, items. */\n @Event()\n comboboxChange: EventEmitter;\n\n private emitComboboxChange(): void {\n this.comboboxChange.emit({id: this.inputid, items: this.itemsList});\n }\n\n constructor() {\n this.toggleComboBox = this.toggleComboBox.bind(this);\n this.closeFilterItems = this.closeFilterItems.bind(this);\n }\n\n componentWillLoad(): void {\n this.watchItems();\n }\n\n componentWillRender(): void {\n this.selectedCounter = this.itemsList.filter((item) => item.checked).length;\n }\n\n componentDidRender(): void {\n const checkboxes = this.getAllCheckboxes();\n if (JSON.stringify(checkboxes) !== JSON.stringify(this.checkboxes)) {\n this.checkboxes = checkboxes;\n }\n }\n\n private getItemId(item: ComboItem): string {\n return `combo-checkbox-${this.inputid}-${item.id}`;\n }\n\n private getCheckboxClass(): string {\n return `combo-item-checkbox-input-${this.inputid}`;\n }\n\n private getAllCheckboxes(): HTMLInputElement[] {\n return Array.from(\n this.element.shadowRoot.querySelectorAll(`.${this.getCheckboxClass()} input:not([disabled])`)\n ) as HTMLInputElement[];\n }\n\n private getControlToListSize(): ListSize {\n switch (this.size) {\n case ControlSize.X_SMALL:\n return ListSize.SMALL;\n case ControlSize.SMALL:\n return ListSize.MEDIUM;\n default:\n return ListSize.LARGE;\n }\n }\n\n private handleSelectArrowsNavigation(e: KeyboardEvent, currId: string): void {\n if (![KeyboardCode.ARROW_DOWN, KeyboardCode.ARROW_UP].includes(e.key as KeyboardCode) || !this.isopen) {\n return;\n }\n\n e.preventDefault();\n e.stopPropagation();\n\n const currElem = this.element.shadowRoot.querySelector(`#${currId}`) as HTMLInputElement;\n if (!currElem) {\n return;\n }\n\n const checkboxes = this.checkboxes;\n if (!checkboxes.length) {\n return;\n }\n\n const currElemIndex = checkboxes.indexOf(currElem);\n const firstElemIndex = 0;\n const lastElemIndex = checkboxes.length - 1;\n\n let nextElem = null;\n if (e.key === KeyboardCode.ARROW_DOWN) {\n nextElem = currElemIndex === lastElemIndex ? checkboxes[firstElemIndex] : checkboxes[currElemIndex + 1];\n } else if (e.key === KeyboardCode.ARROW_UP) {\n nextElem = currElemIndex === firstElemIndex ? checkboxes[lastElemIndex] : checkboxes[currElemIndex - 1];\n }\n\n this.focusComboboxItem(nextElem);\n }\n\n private handleHeaderKeyboardEvent(ev: KeyboardEvent): void {\n if (ev.key === KeyboardCode.SPACE) {\n ev.preventDefault();\n }\n if ((ev.key === KeyboardCode.ARROW_DOWN && !this.isopen) || (ev.key === KeyboardCode.ARROW_UP && this.isopen)) {\n this.toggleComboBox();\n }\n }\n\n private handleCheckboxFocus(id: string): void {\n this.focusedItemId = id;\n }\n\n private focusComboboxItem(elem): void {\n this.checkboxes.forEach(function (item) {\n item.setAttribute(\"tabindex\", \"-1\");\n });\n\n elem.setAttribute(\"tabindex\", \"0\");\n elem.focus();\n }\n\n private updateRenderItemsList(): void {\n if (this.searchValue) {\n this.filterItems(this.searchValue);\n } else {\n this.resetRenderItemsList();\n }\n }\n\n private resetRenderItemsList(): void {\n const renderItemsList = [];\n this.itemsList.forEach((item: ComboItem) => {\n renderItemsList.push({...item});\n });\n this.renderItemsList = renderItemsList;\n }\n\n private filterItems(value: string): void {\n if (!value) {\n return this.closeFilterItems();\n }\n\n this.resetRenderItemsList();\n this.renderItemsList = this.renderItemsList.filter((item) => {\n const start = item.name.toUpperCase().indexOf(value.toUpperCase());\n const end = start + value.length;\n const newName =\n item.name.substring(0, start) +\n \"<strong>\" +\n item.name.substring(start, end) +\n \"</strong>\" +\n item.name.substring(end, item.name.length);\n\n item.name = newName;\n\n return start >= 0;\n });\n }\n\n private checkAll(checked = true): void {\n this.itemsList = this.itemsList.map((item: ComboItem) => ({\n ...item,\n checked: checked,\n }));\n this.resetRenderItemsList();\n this.emitComboboxChange();\n }\n\n private closeFilterItems(): void {\n this.searchValue = \"\";\n this.resetRenderItemsList();\n }\n\n private toggleComboBox(): void {\n this.isopen = !this.isopen;\n }\n\n private getComboboxA11yAttributes(): Record<string, unknown> {\n return {\n \"role\": \"combobox\",\n \"aria-label\": this.label,\n \"aria-expanded\": this.isopen ? \"true\" : \"false\",\n \"aria-activedescendant\": this.isopen ? this.focusedItemId : \"\",\n \"aria-controls\": `${this.inputid}_list`,\n };\n }\n\n private renderHeader(): HTMLDivElement {\n return (\n <div\n class=\"header\"\n onClick={() => this.toggleComboBox()}\n onKeyDown={(ev: KeyboardEvent) => {\n this.handleHeaderKeyboardEvent(ev);\n }}\n onKeyUp={(ev: KeyboardEvent) => handleKeyboardSubmit(ev, this.toggleComboBox)}\n role=\"button\"\n tabindex={0}\n aria-expanded={this.isopen ? \"true\" : \"false\"}\n >\n <p class=\"body-3\">\n {this.label}\n <span>{this.selectedCounter > 0 && ` (${this.selectedCounter})`}</span>\n </p>\n <z-icon\n name=\"caret-down\"\n class={this.size}\n />\n </div>\n );\n }\n\n private renderContent(): HTMLDivElement {\n if (!this.isopen) {\n return;\n }\n\n return (\n <div class=\"open-combo-data\">\n {this.hassearch && this.renderSearchInput()}\n {!this.hassearch ? <span {...this.getComboboxA11yAttributes()} /> : null}\n <div\n role=\"listbox\"\n aria-label={this.label}\n aria-multiselectable={true}\n id={`${this.inputid}_list`}\n aria-owns={`${this.checkboxes.map((item) => item.id).join(\" \")}`}\n >\n {this.hascheckall && this.renderCheckAll()}\n {this.renderItems()}\n </div>\n </div>\n );\n }\n\n private renderItems(): HTMLDivElement {\n return (\n <div class={this.searchValue && \"search\"}>\n {this.renderList(this.renderItemsList)}\n {this.searchValue && this.renderCloseButton()}\n </div>\n );\n }\n\n private renderItem(item: ComboItem, index: number, length: number): ZMyzListItem {\n return (\n <z-list-element\n id={item.id}\n htmlTabindex={null}\n dividerType={index !== length - 1 ? ListDividerType.ELEMENT : ListDividerType.NONE}\n size={this.getControlToListSize()}\n >\n <z-input\n type={InputType.CHECKBOX}\n checked={item.checked}\n htmlid={this.getItemId(item)}\n label={item.name}\n class={this.getCheckboxClass()}\n disabled={!item.checked && this.maxcheckableitems && this.selectedCounter >= this.maxcheckableitems}\n size={this.size === ControlSize.X_SMALL ? ControlSize.SMALL : this.size}\n role=\"option\"\n aria-selected={item.checked ? \"true\" : \"false\"}\n onKeyDown={(e: KeyboardEvent) => this.handleSelectArrowsNavigation(e, this.getItemId(item))}\n onInputCheck={(e: CustomEvent) => {\n this.itemsList = this.itemsList.map((i: ComboItem) => {\n if (item.id === i.id) {\n i.checked = e.detail.checked;\n }\n\n return i;\n });\n this.updateRenderItemsList();\n this.emitComboboxChange();\n }}\n onInputFocus={(e: CustomEvent) => this.handleCheckboxFocus(e.detail.id)}\n />\n </z-list-element>\n );\n }\n\n private renderList(items: ComboItem[]): HTMLUListElement {\n if (!items) {\n return;\n }\n if (!items.length && this.searchValue) {\n return this.renderNoSearchResults();\n }\n\n if (this.hasgroupitems) {\n return this.renderGroups(items);\n }\n\n return (\n <ul role=\"none\">\n {items.map((item, i) => {\n return this.renderItem(item, i, items.length);\n })}\n </ul>\n );\n }\n\n private renderGroups(items: ComboItem[]): HTMLUListElement {\n const newData = items.reduce((group, item, index) => {\n const {category} = item;\n const zListItem = this.renderItem(item, index, items.length);\n\n group[category] = group[category] ?? [];\n group[category].push(zListItem);\n\n return group;\n }, {});\n\n const listGroups = Object.entries(newData as {[key: string]: HTMLZListElementElement[]}).map(([key, value]) => {\n return (\n <z-list-group divider-type={ListDividerType.ELEMENT}>\n <span\n class=\"body-3-sb z-list-group-title\"\n slot=\"header-title\"\n >\n {key}\n </span>\n {value.map((item) => item)}\n </z-list-group>\n );\n });\n\n return <ul role=\"none\">{listGroups}</ul>;\n }\n\n private renderNoSearchResults(): HTMLUListElement {\n return (\n <ul role=\"none\">\n <z-myz-list-item\n id=\"no-results\"\n text={this.noresultslabel}\n listitemid=\"no-results\"\n icon=\"multiply-circle\"\n class={this.size}\n />\n </ul>\n );\n }\n\n private renderCloseButton(): HTMLDivElement {\n return (\n <div>\n <a\n onClick={() => this.closeFilterItems()}\n onKeyUp={(e: KeyboardEvent) => handleKeyboardSubmit(e, this.closeFilterItems)}\n role=\"button\"\n tabindex={0}\n >\n {this.closesearchtext}\n </a>\n </div>\n );\n }\n\n private renderSearchInput(): ZInput {\n return (\n <z-input\n htmlid={`${this.inputid}_search`}\n label={this.searchlabel}\n placeholder={this.searchplaceholder}\n htmltitle={this.searchtitle}\n type={this.inputType}\n value={this.searchValue}\n message={false}\n size={this.size}\n aria-autocomplete=\"list\"\n {...this.getComboboxA11yAttributes()}\n onKeyUp={(e: KeyboardEvent) => {\n if (e.key === KeyboardCode.ESC) {\n this.closeFilterItems();\n }\n }}\n onInputChange={(e: CustomEvent) => {\n this.searchValue = e.detail.value;\n }}\n />\n );\n }\n\n private renderCheckAll(): HTMLDivElement {\n if (this.searchValue) {\n return;\n }\n\n const checkAllId = `combo-checkbox-${this.inputid}-check-all`;\n const allChecked = this.selectedCounter === this.itemsList.length;\n\n return (\n <div class=\"check-all-wrapper\">\n <z-input\n type={InputType.CHECKBOX}\n checked={allChecked}\n htmlid={checkAllId}\n class={this.getCheckboxClass()}\n label={allChecked ? this.uncheckalltext : this.checkalltext}\n disabled={this.maxcheckableitems && this.maxcheckableitems < this.itemsList.length}\n size={this.size === ControlSize.X_SMALL ? ControlSize.SMALL : this.size}\n role=\"option\"\n aria-selected={allChecked ? \"true\" : \"false\"}\n onKeyDown={(e: KeyboardEvent) => this.handleSelectArrowsNavigation(e, checkAllId)}\n onInputCheck={(e: CustomEvent) => this.checkAll(e.detail.checked)}\n onInputFocus={(e: CustomEvent) => this.handleCheckboxFocus(e.detail.id)}\n />\n </div>\n );\n }\n\n render(): HTMLDivElement {\n return (\n <div\n data-action={`combo-${this.inputid}`}\n class={{open: this.isopen, fixed: this.isfixed, disabled: this.disabled}}\n id={this.inputid}\n >\n {this.renderHeader()}\n {!this.disabled && this.renderContent()}\n </div>\n );\n }\n}\n"],"version":3}
1
+ {"file":"z-combobox.js","mappings":"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","names":["ZCombobox"],"sources":["src/components/z-combobox/styles.css?tag=z-combobox&encapsulation=shadow","src/components/z-combobox/index.tsx"],"sourcesContent":[":host {\n display: block;\n font-family: var(--font-family-sans);\n}\n\n:host > div.fixed {\n position: relative;\n}\n\n:host > div > .header {\n position: relative;\n z-index: 10;\n display: flex;\n min-height: 42px;\n align-items: center;\n justify-content: space-between;\n padding: 0 calc(var(--space-unit) * 1.5);\n border: var(--border-size-small) solid var(--color-surface04);\n margin: 0;\n background-color: var(--color-form-background);\n border-radius: var(--border-radius-small);\n cursor: pointer;\n}\n\n:host([size=\"small\"]) > div > .header {\n min-height: 34px;\n font-size: var(--font-size-2);\n}\n\n:host([size=\"x-small\"]) > div > .header {\n min-height: 30px;\n font-size: var(--font-size-2);\n}\n\n:host([size=\"x-small\"]) > div > .header p.body-3 {\n padding: calc(var(--space-unit) * 0.5) 0;\n}\n\n:host > div > .header:hover {\n outline: var(--border-size-medium) solid var(--color-surface04);\n outline-offset: -2px;\n}\n\n:host > div > div.header:focus:focus-visible {\n z-index: 16;\n box-shadow: var(--shadow-focus-primary);\n outline: none;\n}\n\n:host > div > .header > p.body-3 {\n padding: var(--space-unit) 0;\n margin: 0;\n color: var(--color-default-text);\n}\n\n:host > div > .header > p.body-3 > span {\n font-weight: var(--font-sb);\n}\n\n:host > div > .header > z-icon {\n fill: var(--color-default-icon);\n transform: rotate(360deg);\n transition: all 200ms linear;\n}\n\n:host > div > .header > z-icon.small,\n:host > div > .header > z-icon.x-small {\n --z-icon-width: 16px;\n --z-icon-height: 16px;\n}\n\n:host > div.open > .header {\n border: var(--border-size-small) solid var(--color-primary01);\n border-radius: var(--border-radius-small) var(--border-radius-small) 0 0;\n}\n\n:host > div.disabled {\n pointer-events: none;\n}\n\n:host > div.disabled .header {\n border-color: var(--color-disabled01);\n fill: var(--color-disabled01);\n}\n\n:host > div.disabled .header > p.body-3 {\n color: var(--color-disabled03);\n}\n\n:host > div.disabled .header > z-icon:last-child {\n fill: var(--color-disabled01);\n}\n\n:host > div.open > .header > z-icon {\n fill: var(--color-default-icon);\n transform: rotate(180deg);\n transition: all 200ms linear;\n}\n\n:host > div.open > div.open-combo-data {\n position: relative;\n z-index: 12;\n padding: var(--space-unit) calc(var(--space-unit) * 2);\n border: var(--border-size-small) solid var(--gray200);\n border-top: 0;\n background-color: var(--color-form-background);\n border-radius: 0;\n}\n\n:host > div.open > div.open-combo-data > div > div {\n overflow: auto;\n max-height: 235px;\n padding: 0;\n}\n\n:host > div.open > div.open-combo-data > z-input {\n width: 100%;\n margin-bottom: calc(var(--space-unit) * 2);\n}\n\n:host > div.open > div.open-combo-data > div > div > ul {\n max-height: 235px;\n padding: 0 3px; /* needed for checkbox focus shadow */\n margin: 0;\n}\n\n::-webkit-scrollbar {\n width: 6px;\n background: linear-gradient(to right, transparent 0 1px, var(--gray200) 1px 5px, transparent 5px 6px);\n}\n\n::-webkit-scrollbar-thumb {\n background-color: var(--color-primary01);\n}\n\n::-webkit-scrollbar-thumb:hover {\n background-color: var(--color-hover-primary);\n}\n\n/* Firefox scrollbar */\n@supports not selector(::-webkit-scrollbar-track) {\n :host {\n scrollbar-color: var(--color-primary01) transparent;\n }\n}\n\n:host > div.open > z-input {\n position: relative;\n z-index: 1;\n width: 238px;\n margin: 0 calc(var(--space-unit) * 2);\n color: var(--color-primary01);\n}\n\n:host > div.open > div.open-combo-data > div > div.search {\n overflow: hidden;\n max-height: auto;\n margin-top: 0;\n box-shadow: 1px 1px 4px 2px rgb(217 222 227 / 50%);\n}\n\n:host > div.open > div.open-combo-data > div > div.search > ul {\n overflow: auto;\n max-height: 180px;\n padding: var(--space-unit) calc(var(--space-unit) * 2);\n}\n\n:host > div.open > div.open-combo-data > div > div.search > div {\n display: flex;\n justify-content: center;\n}\n\n:host > div.open > div.open-combo-data > div > div.search > div > a {\n display: inline-block;\n height: 44px;\n color: var(--color-primary01);\n cursor: pointer;\n font-size: 14px;\n font-weight: var(--font-sb);\n line-height: 44px;\n text-align: center;\n text-transform: uppercase;\n}\n\n:host > div.open > div.open-combo-data > div > div.search > div > a:focus:focus-visible {\n box-shadow: var(--shadow-focus-primary);\n outline: none;\n}\n\n:host > div.open > div.open-combo-data > div > div.check-all-wrapper {\n padding: calc(var(--space-unit) * 2) calc(var(--space-unit) * 0.5);\n border-bottom: var(--border-size-small) solid var(--gray800);\n margin-bottom: var(--space-unit);\n text-align: left;\n}\n\n:host([size=\"small\"]) > div.open > div.open-combo-data > div > div.check-all-wrapper {\n padding: calc(var(--space-unit) * 1.5) calc(var(--space-unit) * 0.5);\n}\n\n:host([size=\"x-small\"]) > div.open > div.open-combo-data > div > div.check-all-wrapper {\n padding: var(--space-unit) calc(var(--space-unit) * 0.5);\n}\n","import {Component, Element, Event, EventEmitter, Prop, State, Watch, h} from \"@stencil/core\";\nimport {ComboItem, ControlSize, InputType, KeyboardCode, ListDividerType, ListSize} from \"../../beans\";\nimport {ZMyzListItem} from \"../../snowflakes/myz/list/z-myz-list-item\";\nimport {handleKeyboardSubmit, randomId} from \"../../utils/utils\";\nimport {ZInput} from \"../z-input\";\n\n@Component({\n tag: \"z-combobox\",\n styleUrl: \"styles.css\",\n shadow: true,\n})\nexport class ZCombobox {\n @Element() element: HTMLZComboboxElement;\n\n /** input unique id */\n @Prop()\n inputid = `combo-${randomId()}`;\n\n /** list items array */\n @Prop()\n items: ComboItem[] | string;\n\n /** label text */\n @Prop()\n label: string;\n\n /** the combobox is disabled */\n @Prop({reflect: true})\n disabled?: boolean = false;\n\n /** show search input flag (optional) */\n @Prop()\n hassearch?: boolean = false;\n\n /** search input label text (optional) */\n @Prop()\n searchlabel?: string;\n\n /** search input placeholder text (optional) */\n @Prop()\n searchplaceholder?: string;\n\n /** search input title text (optional) */\n @Prop()\n searchtitle?: string;\n\n /** no result text message */\n @Prop()\n noresultslabel?: string = \"Nessun risultato\";\n\n /** toggle combo list opening flag */\n @Prop({mutable: true})\n isopen = false;\n\n /** fixed style flag */\n @Prop()\n isfixed = false;\n\n /** close combobox list text */\n @Prop()\n closesearchtext?: string = \"Chiudi\";\n\n /** show \"check all\" checkbox (optional) */\n @Prop()\n hascheckall?: boolean = false;\n\n /** check all label (optional) */\n @Prop()\n checkalltext?: string = \"Seleziona tutti\";\n\n /** uncheck all label (optional) */\n @Prop()\n uncheckalltext?: string = \"Deseleziona tutti\";\n\n /** max number of checkable items (0 = unlimited) */\n @Prop()\n maxcheckableitems = 0;\n\n /** group items by category */\n @Prop()\n hasgroupitems?: boolean;\n\n /** Available sizes: `big`, `small` and `x-small`. Defaults to `big`. */\n @Prop()\n size?: ControlSize = ControlSize.BIG;\n\n @State()\n searchValue: string;\n\n @State()\n selectedCounter: number;\n\n @State()\n renderItemsList: ComboItem[] = []; // used for render only\n\n @State()\n focusedItemId: string;\n\n @State()\n checkboxes: HTMLInputElement[] = [];\n\n private itemsList: ComboItem[] = [];\n\n private inputType: InputType = InputType.TEXT;\n\n @Watch(\"items\")\n watchItems(): void {\n this.itemsList = typeof this.items === \"string\" ? JSON.parse(this.items) : this.items;\n this.selectedCounter = this.itemsList.filter((item) => item.checked).length;\n this.updateRenderItemsList();\n }\n\n @Watch(\"searchValue\")\n watchSearchValue(): void {\n this.filterItems(this.searchValue);\n }\n\n @Watch(\"checkboxes\")\n watchCheckboxes(): void {\n this.checkboxes.forEach((item, index) => item.setAttribute(\"tabindex\", index === 0 ? \"0\" : \"-1\"));\n }\n\n /** Emitted when value is checked/unchecked. Returns id, items. */\n @Event()\n comboboxChange: EventEmitter;\n\n private emitComboboxChange(): void {\n this.comboboxChange.emit({id: this.inputid, items: this.itemsList});\n }\n\n constructor() {\n this.toggleComboBox = this.toggleComboBox.bind(this);\n this.closeFilterItems = this.closeFilterItems.bind(this);\n }\n\n componentWillLoad(): void {\n this.watchItems();\n }\n\n componentWillRender(): void {\n this.selectedCounter = this.itemsList.filter((item) => item.checked).length;\n }\n\n componentDidRender(): void {\n const checkboxes = this.getAllCheckboxes();\n if (JSON.stringify(checkboxes) !== JSON.stringify(this.checkboxes)) {\n this.checkboxes = checkboxes;\n }\n }\n\n private getItemId(item: ComboItem): string {\n return `combo-checkbox-${this.inputid}-${item.id}`;\n }\n\n private getCheckboxClass(): string {\n return `combo-item-checkbox-input-${this.inputid}`;\n }\n\n private getAllCheckboxes(): HTMLInputElement[] {\n return Array.from(\n this.element.shadowRoot.querySelectorAll(`.${this.getCheckboxClass()} input:not([disabled])`)\n ) as HTMLInputElement[];\n }\n\n private getControlToListSize(): ListSize {\n switch (this.size) {\n case ControlSize.X_SMALL:\n return ListSize.SMALL;\n case ControlSize.SMALL:\n return ListSize.MEDIUM;\n default:\n return ListSize.LARGE;\n }\n }\n\n private handleSelectArrowsNavigation(e: KeyboardEvent, currId: string): void {\n if (![KeyboardCode.ARROW_DOWN, KeyboardCode.ARROW_UP].includes(e.key as KeyboardCode) || !this.isopen) {\n return;\n }\n\n e.preventDefault();\n e.stopPropagation();\n\n const currElem = this.element.shadowRoot.querySelector(`#${currId}`) as HTMLInputElement;\n if (!currElem) {\n return;\n }\n\n const checkboxes = this.checkboxes;\n if (!checkboxes.length) {\n return;\n }\n\n const currElemIndex = checkboxes.indexOf(currElem);\n const firstElemIndex = 0;\n const lastElemIndex = checkboxes.length - 1;\n\n let nextElem = null;\n if (e.key === KeyboardCode.ARROW_DOWN) {\n nextElem = currElemIndex === lastElemIndex ? checkboxes[firstElemIndex] : checkboxes[currElemIndex + 1];\n } else if (e.key === KeyboardCode.ARROW_UP) {\n nextElem = currElemIndex === firstElemIndex ? checkboxes[lastElemIndex] : checkboxes[currElemIndex - 1];\n }\n\n this.focusComboboxItem(nextElem);\n }\n\n private handleHeaderKeyboardEvent(ev: KeyboardEvent): void {\n if (ev.key === KeyboardCode.SPACE) {\n ev.preventDefault();\n }\n if ((ev.key === KeyboardCode.ARROW_DOWN && !this.isopen) || (ev.key === KeyboardCode.ARROW_UP && this.isopen)) {\n this.toggleComboBox();\n }\n }\n\n private handleCheckboxFocus(id: string): void {\n this.focusedItemId = id;\n }\n\n private focusComboboxItem(elem): void {\n this.checkboxes.forEach(function (item) {\n item.setAttribute(\"tabindex\", \"-1\");\n });\n\n elem.setAttribute(\"tabindex\", \"0\");\n elem.focus();\n }\n\n private updateRenderItemsList(): void {\n if (this.searchValue) {\n this.filterItems(this.searchValue);\n } else {\n this.resetRenderItemsList();\n }\n }\n\n private resetRenderItemsList(): void {\n const renderItemsList = [];\n this.itemsList.forEach((item: ComboItem) => {\n renderItemsList.push({...item});\n });\n this.renderItemsList = renderItemsList;\n }\n\n private filterItems(value: string): void {\n if (!value) {\n return this.closeFilterItems();\n }\n\n this.resetRenderItemsList();\n this.renderItemsList = this.renderItemsList.filter((item) => {\n const start = item.name.toUpperCase().indexOf(value.toUpperCase());\n const end = start + value.length;\n const newName =\n item.name.substring(0, start) +\n \"<strong>\" +\n item.name.substring(start, end) +\n \"</strong>\" +\n item.name.substring(end, item.name.length);\n\n item.name = newName;\n\n return start >= 0;\n });\n }\n\n private checkAll(checked = true): void {\n this.itemsList = this.itemsList.map((item: ComboItem) => ({\n ...item,\n checked: checked,\n }));\n this.resetRenderItemsList();\n this.emitComboboxChange();\n }\n\n private closeFilterItems(): void {\n this.searchValue = \"\";\n this.resetRenderItemsList();\n }\n\n private toggleComboBox(): void {\n this.isopen = !this.isopen;\n }\n\n private getComboboxA11yAttributes(): Record<string, unknown> {\n return {\n \"role\": \"combobox\",\n \"aria-label\": this.label,\n \"aria-expanded\": this.isopen ? \"true\" : \"false\",\n \"aria-activedescendant\": this.isopen ? this.focusedItemId : \"\",\n \"aria-controls\": `${this.inputid}_list`,\n };\n }\n\n private renderHeader(): HTMLDivElement {\n return (\n <div\n class=\"header\"\n onClick={() => this.toggleComboBox()}\n onKeyDown={(ev: KeyboardEvent) => {\n this.handleHeaderKeyboardEvent(ev);\n }}\n onKeyUp={(ev: KeyboardEvent) => handleKeyboardSubmit(ev, this.toggleComboBox)}\n role=\"button\"\n tabindex={0}\n aria-expanded={this.isopen ? \"true\" : \"false\"}\n >\n <p class=\"body-3\">\n {this.label}\n <span>{this.selectedCounter > 0 && ` (${this.selectedCounter})`}</span>\n </p>\n <z-icon\n name=\"caret-down\"\n class={this.size}\n />\n </div>\n );\n }\n\n private renderContent(): HTMLDivElement {\n if (!this.isopen) {\n return;\n }\n\n return (\n <div class=\"open-combo-data\">\n {this.hassearch && this.renderSearchInput()}\n {!this.hassearch ? <span {...this.getComboboxA11yAttributes()} /> : null}\n <div\n role=\"listbox\"\n aria-label={this.label}\n aria-multiselectable={true}\n id={`${this.inputid}_list`}\n aria-owns={`${this.checkboxes.map((item) => item.id).join(\" \")}`}\n >\n {this.hascheckall && this.renderCheckAll()}\n {this.renderItems()}\n </div>\n </div>\n );\n }\n\n private renderItems(): HTMLDivElement {\n return (\n <div class={this.searchValue && \"search\"}>\n {this.renderList(this.renderItemsList)}\n {this.searchValue && this.renderCloseButton()}\n </div>\n );\n }\n\n private renderItem(item: ComboItem, index: number, length: number): ZMyzListItem {\n return (\n <z-list-element\n id={item.id}\n htmlTabindex={null}\n dividerType={index !== length - 1 ? ListDividerType.ELEMENT : ListDividerType.NONE}\n size={this.getControlToListSize()}\n >\n <z-input\n type={InputType.CHECKBOX}\n checked={item.checked}\n htmlid={this.getItemId(item)}\n label={item.name}\n class={this.getCheckboxClass()}\n disabled={!item.checked && this.maxcheckableitems && this.selectedCounter >= this.maxcheckableitems}\n size={this.size === ControlSize.X_SMALL ? ControlSize.SMALL : this.size}\n role=\"option\"\n aria-selected={item.checked ? \"true\" : \"false\"}\n onKeyDown={(e: KeyboardEvent) => this.handleSelectArrowsNavigation(e, this.getItemId(item))}\n onInputCheck={(e: CustomEvent) => {\n this.itemsList = this.itemsList.map((i: ComboItem) => {\n if (item.id === i.id) {\n i.checked = e.detail.checked;\n }\n\n return i;\n });\n this.updateRenderItemsList();\n this.emitComboboxChange();\n }}\n onInputFocus={(e: CustomEvent) => this.handleCheckboxFocus(e.detail.id)}\n />\n </z-list-element>\n );\n }\n\n private renderList(items: ComboItem[]): HTMLUListElement {\n if (!items) {\n return;\n }\n if (!items.length && this.searchValue) {\n return this.renderNoSearchResults();\n }\n\n if (this.hasgroupitems) {\n return this.renderGroups(items);\n }\n\n return (\n <ul role=\"none\">\n {items.map((item, i) => {\n return this.renderItem(item, i, items.length);\n })}\n </ul>\n );\n }\n\n private renderGroups(items: ComboItem[]): HTMLUListElement {\n const newData = items.reduce((group, item, index) => {\n const {category} = item;\n const zListItem = this.renderItem(item, index, items.length);\n\n group[category] = group[category] ?? [];\n group[category].push(zListItem);\n\n return group;\n }, {});\n\n const listGroups = Object.entries(newData as {[key: string]: HTMLZListElementElement[]}).map(([key, value]) => {\n return (\n <z-list-group divider-type={ListDividerType.ELEMENT}>\n <span\n class=\"body-3-sb z-list-group-title\"\n slot=\"header-title\"\n >\n {key}\n </span>\n {value.map((item) => item)}\n </z-list-group>\n );\n });\n\n return <ul role=\"none\">{listGroups}</ul>;\n }\n\n private renderNoSearchResults(): HTMLUListElement {\n return (\n <ul role=\"none\">\n <z-myz-list-item\n id=\"no-results\"\n text={this.noresultslabel}\n listitemid=\"no-results\"\n icon=\"multiply-circle\"\n class={this.size}\n />\n </ul>\n );\n }\n\n private renderCloseButton(): HTMLDivElement {\n return (\n <div>\n <a\n onClick={() => this.closeFilterItems()}\n onKeyUp={(e: KeyboardEvent) => handleKeyboardSubmit(e, this.closeFilterItems)}\n role=\"button\"\n tabindex={0}\n >\n {this.closesearchtext}\n </a>\n </div>\n );\n }\n\n private renderSearchInput(): ZInput {\n return (\n <z-input\n htmlid={`${this.inputid}_search`}\n label={this.searchlabel}\n placeholder={this.searchplaceholder}\n htmltitle={this.searchtitle}\n type={this.inputType}\n value={this.searchValue}\n message={false}\n size={this.size}\n aria-autocomplete=\"list\"\n {...this.getComboboxA11yAttributes()}\n onKeyUp={(e: KeyboardEvent) => {\n if (e.key === KeyboardCode.ESC) {\n this.closeFilterItems();\n }\n }}\n onInputChange={(e: CustomEvent) => {\n this.searchValue = e.detail.value;\n }}\n />\n );\n }\n\n private renderCheckAll(): HTMLDivElement {\n if (this.searchValue) {\n return;\n }\n\n const checkAllId = `combo-checkbox-${this.inputid}-check-all`;\n const allChecked = this.selectedCounter === this.itemsList.length;\n\n return (\n <div class=\"check-all-wrapper\">\n <z-input\n type={InputType.CHECKBOX}\n checked={allChecked}\n htmlid={checkAllId}\n class={this.getCheckboxClass()}\n label={allChecked ? this.uncheckalltext : this.checkalltext}\n disabled={this.maxcheckableitems && this.maxcheckableitems < this.itemsList.length}\n size={this.size === ControlSize.X_SMALL ? ControlSize.SMALL : this.size}\n role=\"option\"\n aria-selected={allChecked ? \"true\" : \"false\"}\n onKeyDown={(e: KeyboardEvent) => this.handleSelectArrowsNavigation(e, checkAllId)}\n onInputCheck={(e: CustomEvent) => this.checkAll(e.detail.checked)}\n onInputFocus={(e: CustomEvent) => this.handleCheckboxFocus(e.detail.id)}\n />\n </div>\n );\n }\n\n render(): HTMLDivElement {\n return (\n <div\n data-action={`combo-${this.inputid}`}\n class={{open: this.isopen, fixed: this.isfixed, disabled: this.disabled}}\n id={this.inputid}\n >\n {this.renderHeader()}\n {!this.disabled && this.renderContent()}\n </div>\n );\n }\n}\n"],"version":3}
@@ -10,7 +10,7 @@ import { d as defineCustomElement$4 } from './index14.js';
10
10
  import { d as defineCustomElement$3 } from './index15.js';
11
11
  import { d as defineCustomElement$2 } from './index25.js';
12
12
 
13
- const stylesCss = ".sc-z-select-h{display:inline-block;width:inherit;color:var(--color-default-text);font-family:var(--font-family-sans);font-size:var(--font-size-3);font-weight:var(--font-rg)}[size=\"small\"].sc-z-select-h,[size=\"x-small\"].sc-z-select-h{font-size:var(--font-size-2)}.select-wrapper.sc-z-select>z-input.sc-z-select{width:100%}.select-wrapper.sc-z-select>z-input.sc-z-select .input-icon.sc-z-select{cursor:pointer}.select-wrapper.sc-z-select>div.sc-z-select{position:relative}.select-wrapper.sc-z-select>div.closed.sc-z-select{overflow:hidden;height:0}.select-wrapper.sc-z-select .ul-scroll-wrapper.sc-z-select{position:absolute;width:100%;box-sizing:border-box;border-top:none;background:var(--color-form-background);box-shadow:var(--shadow-2);outline:none}.select-wrapper.sc-z-select .closed.sc-z-select .ul-scroll-wrapper.sc-z-select{z-index:10}.select-wrapper.sc-z-select .open.sc-z-select .ul-scroll-wrapper.sc-z-select{z-index:20}.select-wrapper.sc-z-select .ul-scroll-wrapper.fixed.sc-z-select{position:static}.select-wrapper.sc-z-select .ul-scroll-wrapper.sc-z-select>z-list.sc-z-select{position:relative;overflow:auto;max-height:240px;padding:0 calc(var(--space-unit) * 1.5);outline:none;scrollbar-color:var(--color-primary01) transparent}.select-wrapper.sc-z-select .ul-scroll-wrapper.sc-z-select>z-list.sc-z-select::-webkit-scrollbar{width:10px;background:linear-gradient(to right, transparent 0 3px, var(--gray200) 3px 7px, transparent 7px 10px);border-radius:var(--border-radius)}.select-wrapper.sc-z-select .ul-scroll-wrapper.sc-z-select>z-list.sc-z-select::-webkit-scrollbar-track{background-color:transparent}.select-wrapper.sc-z-select .ul-scroll-wrapper.sc-z-select>z-list.sc-z-select::-webkit-scrollbar-thumb{width:10px;background-color:var(--color-primary01);border-radius:var(--border-radius)}.select-wrapper.sc-z-select .ul-scroll-wrapper.sc-z-select>z-list.sc-z-select::-webkit-scrollbar-thumb:hover{background-color:var(--color-hover-primary)}.select-wrapper.sc-z-select .ul-scroll-wrapper.sc-z-select z-list.sc-z-select z-list-element[disabled].sc-z-select{color:var(--color-form-disabled03)}.select-wrapper.sc-z-select .ul-scroll-wrapper.sc-z-select z-list.sc-z-select z-list-element.sc-z-select .list-element-container.sc-z-select{display:flex;align-items:center;padding:calc(var(--space-unit) / 2) var(--space-unit);column-gap:var(--space-unit)}.select-wrapper.sc-z-select .ul-scroll-wrapper.sc-z-select z-list.sc-z-select z-list-element.sc-z-select .list-element-container.sc-z-select .list-element-content.sc-z-select{margin-right:auto}.select-wrapper.sc-z-select .ul-scroll-wrapper.sc-z-select z-list.sc-z-select z-list-element.sc-z-select .list-element-container.sc-z-select>z-icon.sc-z-select+.list-element-content.sc-z-select{padding:calc(var(--space-unit) * 0.5) var(--space-unit)}[size=\"x-small\"].sc-z-select-h .select-wrapper.sc-z-select .ul-scroll-wrapper.sc-z-select z-list.sc-z-select z-list-element.sc-z-select .list-element-container.sc-z-select .list-element-content.sc-z-select{padding:0}[size=\"small\"].sc-z-select-h .select-wrapper.sc-z-select .ul-scroll-wrapper.sc-z-select z-list.sc-z-select z-list-element.sc-z-select .list-element-container.sc-z-select>z-icon.sc-z-select{--z-icon-width:16px;--z-icon-height:16px}[size=\"x-small\"].sc-z-select-h .select-wrapper.sc-z-select .ul-scroll-wrapper.sc-z-select z-list.sc-z-select z-list-element.sc-z-select .list-element-container.sc-z-select>z-icon.sc-z-select{--z-icon-width:14px;--z-icon-height:14px}[size=\"x-small\"].sc-z-select-h .select-wrapper.sc-z-select .ul-scroll-wrapper.sc-z-select z-list.sc-z-select z-list-element.sc-z-select .list-element-container.sc-z-select>z-icon.sc-z-select+.list-element-content.sc-z-select{padding:0 var(--space-unit)}.select-wrapper.sc-z-select .ul-scroll-wrapper.sc-z-select z-list.sc-z-select z-list-element.sc-z-select .list-element-container.sc-z-select .list-element-content.selected.sc-z-select{font-weight:var(--font-sb)}.select-wrapper.sc-z-select .ul-scroll-wrapper.sc-z-select .no-results.sc-z-select z-icon.sc-z-select{margin-right:var(--space-unit)}.z-list-group-title.sc-z-select{color:var(--color-default-text)}.reset-item.sc-z-select{color:var(--color-primary01);fill:var(--color-primary01-icon)}.reset-item-content.sc-z-select{display:flex;align-items:center}.reset-item.reset-item-margin.sc-z-select .reset-item-content.sc-z-select{margin-left:var(--space-unit)}.reset-item.sc-z-select .reset-item-content.sc-z-select>z-icon.sc-z-select{margin-right:var(--space-unit)}.reset-item.hide.sc-z-select{display:none}z-list-element.sc-z-select{position:relative;display:block}z-list.sc-z-select z-list-element.sc-z-select::before{position:absolute;z-index:100;top:0;left:-15px;width:8px;height:1em;border-bottom:1px solid var(--color-disabled01-icon);border-left:1px solid var(--color-disabled01-icon);content:\"\";cursor:pointer}z-list.sc-z-select z-list-element.sc-z-select::after{position:absolute;z-index:100;top:0;left:-15px;width:8px;height:100%;border-left:1px solid var(--color-disabled01-icon);content:\"\";cursor:pointer}z-list.sc-z-select z-list-element.sc-z-select:last-child::after{display:none}z-list.sc-z-select>z-list-element.sc-z-select::before,z-list.sc-z-select>z-list-element.sc-z-select::after,z-list.sc-z-select>z-list-group.sc-z-select>z-list-element.sc-z-select::before,z-list.sc-z-select>z-list-group.sc-z-select>z-list-element.sc-z-select::after{display:none}z-list.sc-z-select>div.children-node.sc-z-select{padding-left:calc(var(--space-unit) * 2)}z-list-element.sc-z-select>.list-element.sc-z-select{display:flex;justify-content:space-between;padding:calc(var(--space-unit) * 1.25) 0;cursor:pointer}z-list-element.sc-z-select>.list-element.sc-z-select:focus:focus-visible{box-shadow:var(--shadow-focus-primary);outline:none}z-list-element.sc-z-select>.list-element.sc-z-select .item.ellipsis.sc-z-select{overflow:hidden}z-list-element.sc-z-select .list-element.sc-z-select::after{position:absolute;top:0;right:-1px;display:block;width:100%;height:40px;content:\"\";transform:translateX(-100%)}z-list-element.sc-z-select .list-element.focused.hovered.sc-z-select::after{padding-left:6px}z-list-element.sc-z-select>.list-element.sc-z-select:hover,z-list-element.sc-z-select>.list-element.sc-z-select:hover::after{z-index:-1;background-color:var(--color-background);cursor:pointer}.item-label.selected.sc-z-select{font-weight:bold}z-list-element.sc-z-select:focus{box-shadow:var(--shadow-focus-primary);outline:none}.item.ellipsis.sc-z-select{display:inline-block;overflow:hidden;width:200px;text-overflow:ellipsis;white-space:nowrap}";
13
+ const stylesCss = ".sc-z-select-h{display:inline-block;width:inherit;color:var(--color-default-text);font-family:var(--font-family-sans);font-size:var(--font-size-3);font-weight:var(--font-rg)}[size=\"small\"].sc-z-select-h,[size=\"x-small\"].sc-z-select-h{font-size:var(--font-size-2)}.select-wrapper.sc-z-select>z-input.sc-z-select{width:100%}.select-wrapper.sc-z-select>z-input.sc-z-select .input-icon.sc-z-select{cursor:pointer}.select-wrapper.sc-z-select>div.sc-z-select{position:relative}.select-wrapper.sc-z-select>div.closed.sc-z-select{overflow:hidden;height:0}.select-wrapper.sc-z-select .ul-scroll-wrapper.sc-z-select{position:absolute;width:100%;box-sizing:border-box;border-top:none;background:var(--color-form-background);box-shadow:var(--shadow-2);outline:none}.select-wrapper.sc-z-select .closed.sc-z-select .ul-scroll-wrapper.sc-z-select{z-index:10}.select-wrapper.sc-z-select .open.sc-z-select .ul-scroll-wrapper.sc-z-select{z-index:20}.select-wrapper.sc-z-select .ul-scroll-wrapper.fixed.sc-z-select{position:static}.select-wrapper.sc-z-select .ul-scroll-wrapper.sc-z-select>z-list.sc-z-select{position:relative;overflow:auto;max-height:240px;padding:0 calc(var(--space-unit) * 1.5);outline:none}.select-wrapper.sc-z-select .ul-scroll-wrapper.sc-z-select z-list.sc-z-select z-list-element[disabled].sc-z-select{color:var(--color-form-disabled03)}.select-wrapper.sc-z-select .ul-scroll-wrapper.sc-z-select z-list.sc-z-select z-list-element.sc-z-select .list-element-container.sc-z-select{display:flex;align-items:center;padding:calc(var(--space-unit) / 2) var(--space-unit);column-gap:var(--space-unit)}.select-wrapper.sc-z-select .ul-scroll-wrapper.sc-z-select z-list.sc-z-select z-list-element.sc-z-select .list-element-container.sc-z-select .list-element-content.sc-z-select{margin-right:auto}.select-wrapper.sc-z-select .ul-scroll-wrapper.sc-z-select z-list.sc-z-select z-list-element.sc-z-select .list-element-container.sc-z-select>z-icon.sc-z-select+.list-element-content.sc-z-select{padding:calc(var(--space-unit) * 0.5) var(--space-unit)}[size=\"x-small\"].sc-z-select-h .select-wrapper.sc-z-select .ul-scroll-wrapper.sc-z-select z-list.sc-z-select z-list-element.sc-z-select .list-element-container.sc-z-select .list-element-content.sc-z-select{padding:0}[size=\"small\"].sc-z-select-h .select-wrapper.sc-z-select .ul-scroll-wrapper.sc-z-select z-list.sc-z-select z-list-element.sc-z-select .list-element-container.sc-z-select>z-icon.sc-z-select{--z-icon-width:16px;--z-icon-height:16px}[size=\"x-small\"].sc-z-select-h .select-wrapper.sc-z-select .ul-scroll-wrapper.sc-z-select z-list.sc-z-select z-list-element.sc-z-select .list-element-container.sc-z-select>z-icon.sc-z-select{--z-icon-width:14px;--z-icon-height:14px}[size=\"x-small\"].sc-z-select-h .select-wrapper.sc-z-select .ul-scroll-wrapper.sc-z-select z-list.sc-z-select z-list-element.sc-z-select .list-element-container.sc-z-select>z-icon.sc-z-select+.list-element-content.sc-z-select{padding:0 var(--space-unit)}.select-wrapper.sc-z-select .ul-scroll-wrapper.sc-z-select z-list.sc-z-select z-list-element.sc-z-select .list-element-container.sc-z-select .list-element-content.selected.sc-z-select{font-weight:var(--font-sb)}.select-wrapper.sc-z-select .ul-scroll-wrapper.sc-z-select .no-results.sc-z-select z-icon.sc-z-select{margin-right:var(--space-unit)}.z-list-group-title.sc-z-select{color:var(--color-default-text)}.reset-item.sc-z-select{color:var(--color-primary01);fill:var(--color-primary01-icon)}.reset-item-content.sc-z-select{display:flex;align-items:center}.reset-item.reset-item-margin.sc-z-select .reset-item-content.sc-z-select{margin-left:var(--space-unit)}.reset-item.sc-z-select .reset-item-content.sc-z-select>z-icon.sc-z-select{margin-right:var(--space-unit)}.reset-item.hide.sc-z-select{display:none}";
14
14
  const ZSelectStyle0 = stylesCss;
15
15
 
16
16
  const ZSelect$1 = /*@__PURE__*/ proxyCustomElement(class ZSelect extends HTMLElement {
@@ -34,7 +34,6 @@ const ZSelect$1 = /*@__PURE__*/ proxyCustomElement(class ZSelect extends HTMLEle
34
34
  this.autocomplete = false;
35
35
  this.noresultslabel = "Nessun risultato";
36
36
  this.hasGroupItems = undefined;
37
- this.hasTreeItems = undefined;
38
37
  this.isfixed = false;
39
38
  this.resetItem = undefined;
40
39
  this.size = ControlSize.BIG;
@@ -47,7 +46,7 @@ const ZSelect$1 = /*@__PURE__*/ proxyCustomElement(class ZSelect extends HTMLEle
47
46
  }
48
47
  watchItems() {
49
48
  this.itemsList = this.getInitialItemsArray();
50
- this.selectedItem = this.findSelectedItem(this.itemsList);
49
+ this.selectedItem = this.itemsList.find((item) => item.selected);
51
50
  }
52
51
  getFocusedItemHandler(e) {
53
52
  this.focusedItemId = e.target.id;
@@ -69,11 +68,7 @@ const ZSelect$1 = /*@__PURE__*/ proxyCustomElement(class ZSelect extends HTMLEle
69
68
  else {
70
69
  values = value;
71
70
  }
72
- this.itemsList = this.getInitialItemsArray();
73
- if (values.length) {
74
- this.updateSelection(this.itemsList, values[0]);
75
- }
76
- this.selectedItem = this.findSelectedItem(this.itemsList);
71
+ this.selectedItem = this.itemsList.find((item) => values.includes(item.id));
77
72
  }
78
73
  emitOptionSelect() {
79
74
  this.optionSelect.emit({
@@ -111,48 +106,23 @@ const ZSelect$1 = /*@__PURE__*/ proxyCustomElement(class ZSelect extends HTMLEle
111
106
  const prevList = this.mapSelectedItemToItemsArray();
112
107
  if (!(searchString === null || searchString === void 0 ? void 0 : searchString.length)) {
113
108
  this.itemsList = prevList;
114
- return;
115
- }
116
- if (this.hasTreeItems) {
117
- this.itemsList = this.filterTree(prevList, searchString);
118
109
  }
119
110
  else {
120
111
  this.itemsList = prevList
121
- .filter((item) => item.name.toUpperCase().includes(searchString.toUpperCase()))
112
+ .filter((item) => {
113
+ return item.name.toUpperCase().includes(searchString.toUpperCase());
114
+ })
122
115
  .map((item) => {
123
- item.name = this.getHighlightedText(item.name, searchString);
116
+ const start = item.name.toUpperCase().indexOf(searchString.toUpperCase());
117
+ const end = start + searchString.length;
118
+ const newName = item.name.substring(0, start) +
119
+ `<strong>${item.name.substring(start, end)}</strong>` +
120
+ item.name.substring(end, item.name.length);
121
+ item.name = newName;
124
122
  return item;
125
123
  });
126
124
  }
127
125
  }
128
- filterTree(items, searchString) {
129
- return items
130
- .map((item) => {
131
- const match = item.name.toUpperCase().includes(searchString.toUpperCase());
132
- const newItem = Object.assign({}, item);
133
- if (newItem.children && newItem.children.length > 0) {
134
- newItem.children = this.filterTree(newItem.children, searchString);
135
- }
136
- if (match) {
137
- newItem.name = this.getHighlightedText(newItem.name, searchString);
138
- }
139
- if (match || (newItem.children && newItem.children.length > 0)) {
140
- return newItem;
141
- }
142
- return null;
143
- })
144
- .filter((item) => item !== null);
145
- }
146
- getHighlightedText(text, search) {
147
- const upperText = text.toUpperCase();
148
- const upperSearch = search.toUpperCase();
149
- const start = upperText.indexOf(upperSearch);
150
- if (start === -1) {
151
- return text;
152
- }
153
- const end = start + search.length;
154
- return text.substring(0, start) + `<strong>${text.substring(start, end)}</strong>` + text.substring(end);
155
- }
156
126
  hasAutocomplete() {
157
127
  return boolean(this.autocomplete) === true;
158
128
  }
@@ -162,57 +132,22 @@ const ZSelect$1 = /*@__PURE__*/ proxyCustomElement(class ZSelect extends HTMLEle
162
132
  this.toggleSelectUl();
163
133
  }
164
134
  }
165
- updateSelection(items, selectedId) {
166
- items.forEach((item) => {
167
- item.selected = item.id === selectedId;
168
- if (item.children && item.children.length > 0) {
169
- this.updateSelection(item.children, selectedId);
170
- }
171
- });
172
- }
173
- findSelectedItem(items) {
174
- for (const item of items) {
175
- if (item.selected) {
176
- return item;
177
- }
178
- if (item.children && item.children.length > 0) {
179
- const found = this.findSelectedItem(item.children);
180
- if (found) {
181
- return found;
182
- }
183
- }
184
- }
185
- return null;
186
- }
187
135
  selectItem(selected) {
188
136
  if (selected === null || selected === void 0 ? void 0 : selected.disabled) {
189
137
  return;
190
138
  }
191
- this.itemsList = this.getInitialItemsArray();
192
- if (selected) {
193
- this.updateSelection(this.itemsList, selected.id);
194
- }
195
- this.selectedItem = this.findSelectedItem(this.itemsList);
139
+ this.itemsList = this.mapSelectedItemToItemsArray();
140
+ this.itemsList.forEach((i) => {
141
+ i.selected = i.id === (selected === null || selected === void 0 ? void 0 : selected.id);
142
+ return i;
143
+ });
144
+ this.selectedItem = this.itemsList.find((item) => item.selected);
196
145
  this.emitOptionSelect();
197
146
  this.toggleSelectUl(true);
198
147
  if (this.searchString) {
199
148
  this.searchString = null;
200
149
  }
201
150
  }
202
- flattenTreeItems(items) {
203
- const flatItems = [];
204
- let index = 0;
205
- function flatten(items) {
206
- items.forEach((item) => {
207
- flatItems.push({ item, key: index++ });
208
- if (item.children) {
209
- flatten(item.children);
210
- }
211
- });
212
- }
213
- flatten(items);
214
- return flatItems;
215
- }
216
151
  arrowsSelectNav(e, key) {
217
152
  const showResetIcon = this.resetItem && !!this.selectedItem;
218
153
  const arrows = [KeyboardCode.ARROW_DOWN, KeyboardCode.ARROW_UP];
@@ -224,31 +159,28 @@ const ZSelect$1 = /*@__PURE__*/ proxyCustomElement(class ZSelect extends HTMLEle
224
159
  if (!this.isOpen) {
225
160
  this.toggleSelectUl();
226
161
  }
227
- const flatItems = this.flattenTreeItems(this.itemsList);
228
- const currentIndex = flatItems.findIndex((item) => item.key === key);
229
- let newIndex;
162
+ let index;
230
163
  if (this.resetItem) {
231
164
  if (e.key === KeyboardCode.ARROW_DOWN) {
232
- newIndex = currentIndex + 1 === flatItems.length + 1 ? +!showResetIcon : currentIndex + 1;
165
+ index = key + 1 === this.itemsList.length + 1 ? +!showResetIcon : key + 1;
233
166
  }
234
167
  else if (e.key === KeyboardCode.ARROW_UP) {
235
- newIndex = currentIndex <= +!showResetIcon ? flatItems.length - 1 : currentIndex - 1;
168
+ index = key <= +!showResetIcon ? this.itemsList.length : key - 1;
236
169
  }
237
170
  }
238
171
  if (!this.resetItem) {
239
172
  if (e.key === KeyboardCode.ARROW_DOWN) {
240
- newIndex = currentIndex + 1 === flatItems.length ? 0 : currentIndex + 1;
173
+ index = key + 1 === this.itemsList.length ? 0 : key + 1;
241
174
  }
242
175
  else if (e.key === KeyboardCode.ARROW_UP) {
243
- newIndex = currentIndex <= 0 ? flatItems.length - 1 : currentIndex - 1;
176
+ index = key <= 0 ? this.itemsList.length - 1 : key - 1;
244
177
  }
245
178
  }
246
- const newKey = flatItems[newIndex].key;
247
- this.focusSelectItem(newKey);
179
+ this.focusSelectItem(index);
248
180
  }
249
- focusSelectItem(key) {
181
+ focusSelectItem(index) {
250
182
  var _a;
251
- (_a = this.host.querySelector(`#${this.htmlid}_${key}`)) === null || _a === void 0 ? void 0 : _a.focus();
183
+ (_a = this.host.querySelector(`#${this.htmlid}_${index}`)) === null || _a === void 0 ? void 0 : _a.focus();
252
184
  }
253
185
  toggleSelectUl(selfFocusOnClose = false) {
254
186
  if (this.disabled || this.readonly) {
@@ -324,9 +256,10 @@ const ZSelect$1 = /*@__PURE__*/ proxyCustomElement(class ZSelect extends HTMLEle
324
256
  "ul-scroll-wrapper": true,
325
257
  "fixed": this.isfixed,
326
258
  } }, h("z-list", { role: "listbox", "aria-label": this.ariaLabel || this.label, tabindex: this.disabled || this.readonly || !this.isOpen ? -1 : 0, id: `${this.htmlid}_list`, "aria-multiselectable": false, size: this.listSizeType(), class: {
327
- disabled: this.disabled,
328
- readonly: this.readonly,
259
+ "disabled": this.disabled,
260
+ "readonly": this.readonly,
329
261
  [`input-${this.status}`]: !this.isOpen && !!this.status,
262
+ "z-scrollbar": true,
330
263
  } }, this.resetItem && this.renderResetItem(), this.renderSelectUlItems()))));
331
264
  }
332
265
  renderResetItem() {
@@ -347,15 +280,11 @@ const ZSelect$1 = /*@__PURE__*/ proxyCustomElement(class ZSelect extends HTMLEle
347
280
  }, innerHTML: item.name }), item.icon && h("z-tag", { icon: item.icon }))));
348
281
  }
349
282
  listSizeType() {
350
- if (this.hasTreeItems) {
351
- return ListSize.NONE;
352
- }
353
283
  if (this.size === ControlSize.SMALL || this.size === ControlSize.X_SMALL) {
354
284
  return ListSize.SMALL;
355
285
  }
356
286
  return ListSize.MEDIUM;
357
287
  }
358
- //eslint-disable-next-line
359
288
  renderSelectUlItems() {
360
289
  if (!this.itemsList.length) {
361
290
  return this.renderNoSearchResults();
@@ -366,26 +295,9 @@ const ZSelect$1 = /*@__PURE__*/ proxyCustomElement(class ZSelect extends HTMLEle
366
295
  return this.itemsList.map((item, key, array) => {
367
296
  const lastItem = array.length === key + 1;
368
297
  const itemKey = this.resetItem ? key + 1 : key;
369
- if (this.hasTreeItems) {
370
- return this.renderTreeItems(item, itemKey, lastItem);
371
- }
372
298
  return this.renderItem(item, itemKey, lastItem);
373
299
  });
374
300
  }
375
- renderTreeItems(item, key, divider) {
376
- var _a;
377
- const hasDivider = divider || !((_a = item.children) === null || _a === void 0 ? void 0 : _a.length);
378
- return (h("z-list-element", { size: this.listSizeType(), id: `${this.htmlid}_${key}`, dividerType: hasDivider ? ListDividerType.ELEMENT : undefined, tabIndex: 0, role: "option", onKeyDown: (e) => this.arrowsSelectNav(e, key) }, h("div", { id: `${this.htmlid}-${key}`, class: "list-element", tabIndex: -1, onClick: () => this.selectItem(item), onMouseEnter: (e) => {
379
- const currentElement = e.target;
380
- currentElement.classList.add("hovered");
381
- }, onMouseLeave: (e) => {
382
- const currentElement = e.target;
383
- currentElement.classList.contains("hovered") && currentElement.classList.remove("hovered");
384
- } }, h("span", { class: "item ellipsis" }, (item === null || item === void 0 ? void 0 : item.icon) && (h("z-icon", { class: "item-icon", name: item.icon })), h("span", { class: {
385
- "item-label": true,
386
- "selected": !!item.selected,
387
- }, title: item.name, innerHTML: item.name })), item.icon && h("z-tag", { icon: item.icon })), item.children && item.children.length > 0 ? (h("z-list", null, h("div", { class: "children-node" }, item.children.map((child, index) => this.renderTreeItems(child, index, false))))) : null));
388
- }
389
301
  renderSelectGroupItems() {
390
302
  const newData = this.itemsList.reduce((group, item, index, array) => {
391
303
  var _a;
@@ -411,7 +323,7 @@ const ZSelect$1 = /*@__PURE__*/ proxyCustomElement(class ZSelect extends HTMLEle
411
323
  return (h("z-input-message", { message: boolean(this.message) === true ? undefined : this.message, status: this.status, class: this.size, disabled: this.disabled }));
412
324
  }
413
325
  render() {
414
- return (h("div", { key: 'f33d83b8f0e3219f8a68ff295fdc6f813ded8607', class: "select-wrapper" }, this.renderInput(), this.renderSelectUl(), this.renderMessage()));
326
+ return (h("div", { key: '3fc3a44d3a8e78034ac8b0ccd76b90c427312a7c', class: "select-wrapper" }, this.renderInput(), this.renderSelectUl(), this.renderMessage()));
415
327
  }
416
328
  get host() { return this; }
417
329
  static get watchers() { return {
@@ -433,7 +345,6 @@ const ZSelect$1 = /*@__PURE__*/ proxyCustomElement(class ZSelect extends HTMLEle
433
345
  "autocomplete": [4],
434
346
  "noresultslabel": [1],
435
347
  "hasGroupItems": [4, "has-group-items"],
436
- "hasTreeItems": [4, "has-tree-items"],
437
348
  "isfixed": [4],
438
349
  "resetItem": [1, "reset-item"],
439
350
  "size": [1],