@zanichelli/albe-web-components 7.3.3 → 7.3.4

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 (570) hide show
  1. package/LICENSE +21 -21
  2. package/dist/cjs/{breakpoints-88c4fd6c.js → breakpoints-776c8868.js} +1 -1
  3. package/dist/cjs/{icons-a9849a41.js → icons-dea2e345.js} +763 -763
  4. package/dist/cjs/{index-7a9a8430.js → index-677bbad4.js} +317 -317
  5. package/dist/cjs/index.cjs.js +5 -5
  6. package/dist/cjs/{utils-305151da.js → utils-3b7e4fdf.js} +94 -94
  7. package/dist/cjs/{utils-f460d1c0.js → utils-49853b30.js} +75 -75
  8. package/dist/cjs/z-alert.cjs.entry.js +8 -8
  9. package/dist/cjs/z-anchor-navigation.cjs.entry.js +42 -42
  10. package/dist/cjs/z-app-header_11.cjs.entry.js +989 -991
  11. package/dist/cjs/z-aria-alert.cjs.entry.js +10 -10
  12. package/dist/cjs/z-avatar.cjs.entry.js +33 -33
  13. package/dist/cjs/z-body.cjs.entry.js +9 -9
  14. package/dist/cjs/z-button-sort.cjs.entry.js +42 -42
  15. package/dist/cjs/z-card.cjs.entry.js +55 -55
  16. package/dist/cjs/z-carousel.cjs.entry.js +135 -135
  17. package/dist/cjs/z-chip.cjs.entry.js +29 -29
  18. package/dist/cjs/z-combobox.cjs.entry.js +190 -190
  19. package/dist/cjs/z-contextual-menu.cjs.entry.js +35 -35
  20. package/dist/cjs/z-cover-hero.cjs.entry.js +46 -46
  21. package/dist/cjs/z-date-picker.cjs.entry.js +164 -164
  22. package/dist/cjs/z-dragdrop-area_2.cjs.entry.js +129 -129
  23. package/dist/cjs/z-file-upload.cjs.entry.js +174 -174
  24. package/dist/cjs/z-file.cjs.entry.js +37 -37
  25. package/dist/cjs/z-ghost-loading.cjs.entry.js +9 -9
  26. package/dist/cjs/z-heading.cjs.entry.js +9 -9
  27. package/dist/cjs/z-info-box.cjs.entry.js +14 -14
  28. package/dist/cjs/z-info-reveal.cjs.entry.js +54 -54
  29. package/dist/cjs/z-link.cjs.entry.js +63 -63
  30. package/dist/cjs/z-logo.cjs.entry.js +15 -15
  31. package/dist/cjs/z-menu-section.cjs.entry.js +43 -43
  32. package/dist/cjs/z-menu.cjs.entry.js +108 -108
  33. package/dist/cjs/z-messages-pocket.cjs.entry.js +36 -36
  34. package/dist/cjs/z-myz-card-alert.cjs.entry.js +52 -52
  35. package/dist/cjs/z-myz-card-dictionary.cjs.entry.js +25 -25
  36. package/dist/cjs/z-myz-card-footer-sections.cjs.entry.js +8 -8
  37. package/dist/cjs/z-myz-card-footer.cjs.entry.js +58 -58
  38. package/dist/cjs/z-myz-card-icon.cjs.entry.js +12 -12
  39. package/dist/cjs/z-myz-card-info.cjs.entry.js +118 -118
  40. package/dist/cjs/z-myz-card-list.cjs.entry.js +27 -27
  41. package/dist/cjs/z-myz-card_4.cjs.entry.js +82 -82
  42. package/dist/cjs/z-myz-list-item.cjs.entry.js +26 -26
  43. package/dist/cjs/z-myz-list.cjs.entry.js +24 -24
  44. package/dist/cjs/z-navigation-tab-link.cjs.entry.js +60 -60
  45. package/dist/cjs/z-navigation-tab.cjs.entry.js +62 -62
  46. package/dist/cjs/z-navigation-tabs.cjs.entry.js +115 -115
  47. package/dist/cjs/z-notification.cjs.entry.js +30 -30
  48. package/dist/cjs/z-otp.cjs.entry.js +30 -30
  49. package/dist/cjs/z-pagination.cjs.entry.js +219 -219
  50. package/dist/cjs/z-panel-elem.cjs.entry.js +19 -19
  51. package/dist/cjs/z-pocket-message.cjs.entry.js +8 -8
  52. package/dist/cjs/z-pocket_3.cjs.entry.js +102 -102
  53. package/dist/cjs/z-popover.cjs.entry.js +317 -317
  54. package/dist/cjs/z-range-picker.cjs.entry.js +331 -331
  55. package/dist/cjs/z-section-title.cjs.entry.js +22 -22
  56. package/dist/cjs/z-select.cjs.entry.js +322 -322
  57. package/dist/cjs/z-skip-to-content.cjs.entry.js +55 -55
  58. package/dist/cjs/z-slideshow.cjs.entry.js +118 -118
  59. package/dist/cjs/z-stepper-item.cjs.entry.js +11 -11
  60. package/dist/cjs/z-stepper.cjs.entry.js +8 -8
  61. package/dist/cjs/z-table-body.cjs.entry.js +13 -13
  62. package/dist/cjs/z-table-cell.cjs.entry.js +25 -25
  63. package/dist/cjs/z-table-empty-box.cjs.entry.js +21 -21
  64. package/dist/cjs/z-table-expanded-row.cjs.entry.js +8 -8
  65. package/dist/cjs/z-table-footer.cjs.entry.js +12 -12
  66. package/dist/cjs/z-table-head.cjs.entry.js +12 -12
  67. package/dist/cjs/z-table-header-row.cjs.entry.js +11 -11
  68. package/dist/cjs/z-table-header.cjs.entry.js +71 -71
  69. package/dist/cjs/z-table-row.cjs.entry.js +32 -32
  70. package/dist/cjs/z-table-sticky-footer.cjs.entry.js +8 -8
  71. package/dist/cjs/z-table.cjs.entry.js +69 -69
  72. package/dist/cjs/z-tag.cjs.entry.js +11 -11
  73. package/dist/cjs/z-toast-notification-list.cjs.entry.js +45 -45
  74. package/dist/cjs/z-toast-notification.cjs.entry.js +187 -187
  75. package/dist/cjs/z-toggle-button.cjs.entry.js +25 -25
  76. package/dist/cjs/z-toggle-switch.cjs.entry.js +40 -40
  77. package/dist/cjs/z-tooltip.cjs.entry.js +26 -26
  78. package/dist/cjs/z-typography.cjs.entry.js +19 -19
  79. package/dist/cjs/z-visually-hidden.cjs.entry.js +8 -8
  80. package/dist/collection/beans/index.js +318 -318
  81. package/dist/collection/components/buttons/z-button/index.js +245 -245
  82. package/dist/collection/components/buttons/z-button/styles.css +149 -149
  83. package/dist/collection/components/buttons/z-button-sort/index.js +220 -220
  84. package/dist/collection/components/buttons/z-button-sort/styles.css +101 -101
  85. package/dist/collection/components/buttons/z-chip/index.js +155 -155
  86. package/dist/collection/components/buttons/z-chip/styles.css +138 -138
  87. package/dist/collection/components/buttons/z-toggle-button/index.js +146 -146
  88. package/dist/collection/components/buttons/z-toggle-button/styles.css +60 -60
  89. package/dist/collection/components/buttons/z-toggle-switch/index.js +144 -144
  90. package/dist/collection/components/buttons/z-toggle-switch/styles.css +104 -104
  91. package/dist/collection/components/date-picker/styles.css +436 -436
  92. package/dist/collection/components/date-picker/utils.js +76 -76
  93. package/dist/collection/components/date-picker/z-date-picker/index.js +295 -295
  94. package/dist/collection/components/date-picker/z-range-picker/index.js +499 -499
  95. package/dist/collection/components/file-upload/z-dragdrop-area/index.js +53 -53
  96. package/dist/collection/components/file-upload/z-dragdrop-area/styles.css +51 -51
  97. package/dist/collection/components/file-upload/z-file/index.js +131 -131
  98. package/dist/collection/components/file-upload/z-file/styles.css +23 -23
  99. package/dist/collection/components/file-upload/z-file-upload/index.js +363 -363
  100. package/dist/collection/components/file-upload/z-file-upload/styles.css +84 -84
  101. package/dist/collection/components/icons/icons.js +764 -764
  102. package/dist/collection/components/icons/z-icon/index.js +114 -114
  103. package/dist/collection/components/icons/z-icon/styles.css +14 -14
  104. package/dist/collection/components/index.js +8 -8
  105. package/dist/collection/components/indicators/z-stepper/index.js +21 -21
  106. package/dist/collection/components/indicators/z-stepper/styles.css +19 -19
  107. package/dist/collection/components/indicators/z-stepper-item/index.js +93 -93
  108. package/dist/collection/components/indicators/z-stepper-item/styles.css +114 -114
  109. package/dist/collection/components/inputs/z-combobox/index.js +570 -570
  110. package/dist/collection/components/inputs/z-combobox/styles.css +197 -197
  111. package/dist/collection/components/inputs/z-input/index.js +764 -764
  112. package/dist/collection/components/inputs/z-input/styles.css +398 -398
  113. package/dist/collection/components/inputs/z-input-message/index.js +89 -89
  114. package/dist/collection/components/inputs/z-input-message/styles.css +48 -48
  115. package/dist/collection/components/inputs/z-searchbar/index.js +599 -600
  116. package/dist/collection/components/inputs/z-searchbar/styles.css +185 -185
  117. package/dist/collection/components/inputs/z-select/index.js +754 -754
  118. package/dist/collection/components/inputs/z-select/styles.css +123 -123
  119. package/dist/collection/components/list/z-list/index.js +91 -91
  120. package/dist/collection/components/list/z-list/styles.css +6 -6
  121. package/dist/collection/components/list/z-list-element/index.js +508 -508
  122. package/dist/collection/components/list/z-list-element/styles.css +121 -121
  123. package/dist/collection/components/list/z-list-group/index.js +175 -175
  124. package/dist/collection/components/list/z-list-group/styles.css +21 -21
  125. package/dist/collection/components/list/z-toast-notification-list/index.js +105 -105
  126. package/dist/collection/components/list/z-toast-notification-list/styles.css +100 -100
  127. package/dist/collection/components/logo/z-logo/index.js +131 -131
  128. package/dist/collection/components/logo/z-logo/styles.css +29 -29
  129. package/dist/collection/components/modal/z-modal/index.js +319 -319
  130. package/dist/collection/components/modal/z-modal/styles.css +198 -198
  131. package/dist/collection/components/navigation/tabs/navigation-tab.css +136 -136
  132. package/dist/collection/components/navigation/tabs/z-navigation-tab/index.js +242 -242
  133. package/dist/collection/components/navigation/tabs/z-navigation-tab-link/index.js +264 -264
  134. package/dist/collection/components/navigation/tabs/z-navigation-tabs/index.js +200 -200
  135. package/dist/collection/components/navigation/tabs/z-navigation-tabs/styles.css +104 -104
  136. package/dist/collection/components/navigation/z-app-header/index.js +428 -429
  137. package/dist/collection/components/navigation/z-app-header/index.stories.js +393 -393
  138. package/dist/collection/components/navigation/z-app-header/styles.css +420 -420
  139. package/dist/collection/components/navigation/z-link/index.js +317 -317
  140. package/dist/collection/components/navigation/z-link/styles.css +167 -167
  141. package/dist/collection/components/navigation/z-menu/index.js +250 -250
  142. package/dist/collection/components/navigation/z-menu/styles.css +213 -213
  143. package/dist/collection/components/navigation/z-menu-section/index.js +125 -125
  144. package/dist/collection/components/navigation/z-menu-section/styles.css +123 -123
  145. package/dist/collection/components/notification/z-info-box/index.js +85 -85
  146. package/dist/collection/components/notification/z-info-box/styles.css +23 -23
  147. package/dist/collection/components/notification/z-notification/index.js +195 -195
  148. package/dist/collection/components/notification/z-notification/styles.css +114 -114
  149. package/dist/collection/components/notification/z-toast-notification/index.js +399 -399
  150. package/dist/collection/components/notification/z-toast-notification/styles.css +254 -254
  151. package/dist/collection/components/notification/z-tooltip/index.js +157 -157
  152. package/dist/collection/components/notification/z-tooltip/styles.css +17 -17
  153. package/dist/collection/components/panel/z-panel-elem/index.js +193 -193
  154. package/dist/collection/components/panel/z-panel-elem/styles.css +39 -39
  155. package/dist/collection/components/z-anchor-navigation/index.js +95 -95
  156. package/dist/collection/components/z-anchor-navigation/styles.css +129 -129
  157. package/dist/collection/components/z-aria-alert/index.js +39 -39
  158. package/dist/collection/components/z-avatar/index.js +142 -142
  159. package/dist/collection/components/z-avatar/styles.css +32 -32
  160. package/dist/collection/components/z-card/index.js +186 -186
  161. package/dist/collection/components/z-card/styles.css +206 -206
  162. package/dist/collection/components/z-carousel/index.js +300 -300
  163. package/dist/collection/components/z-carousel/styles.css +129 -129
  164. package/dist/collection/components/z-contextual-menu/index.js +126 -126
  165. package/dist/collection/components/z-contextual-menu/styles.css +60 -60
  166. package/dist/collection/components/z-cover-hero/index.js +146 -146
  167. package/dist/collection/components/z-cover-hero/styles.css +93 -93
  168. package/dist/collection/components/z-divider/index.js +95 -95
  169. package/dist/collection/components/z-divider/styles.css +37 -37
  170. package/dist/collection/components/z-ghost-loading/index.js +18 -18
  171. package/dist/collection/components/z-ghost-loading/styles.css +34 -34
  172. package/dist/collection/components/z-info-reveal/index.js +147 -147
  173. package/dist/collection/components/z-info-reveal/styles.css +103 -103
  174. package/dist/collection/components/z-offcanvas/index.js +162 -162
  175. package/dist/collection/components/z-offcanvas/styles.css +182 -182
  176. package/dist/collection/components/z-pagination/index.js +435 -435
  177. package/dist/collection/components/z-pagination/styles.css +199 -199
  178. package/dist/collection/components/z-popover/index.js +513 -513
  179. package/dist/collection/components/z-popover/styles.css +147 -147
  180. package/dist/collection/components/z-section-title/index.js +88 -88
  181. package/dist/collection/components/z-section-title/styles.css +44 -44
  182. package/dist/collection/components/z-skip-to-content/index.js +139 -139
  183. package/dist/collection/components/z-skip-to-content/styles.css +80 -80
  184. package/dist/collection/components/z-table/z-table/index.js +352 -352
  185. package/dist/collection/components/z-table/z-table/styles.css +115 -115
  186. package/dist/collection/components/z-table/z-table-body/index.js +23 -23
  187. package/dist/collection/components/z-table/z-table-body/styles.css +9 -9
  188. package/dist/collection/components/z-table/z-table-cell/index.js +86 -86
  189. package/dist/collection/components/z-table/z-table-cell/styles.css +58 -58
  190. package/dist/collection/components/z-table/z-table-empty-box/index.js +72 -72
  191. package/dist/collection/components/z-table/z-table-empty-box/styles.css +38 -38
  192. package/dist/collection/components/z-table/z-table-expanded-row/index.js +39 -39
  193. package/dist/collection/components/z-table/z-table-expanded-row/styles.css +9 -9
  194. package/dist/collection/components/z-table/z-table-footer/index.js +22 -22
  195. package/dist/collection/components/z-table/z-table-footer/styles.css +5 -5
  196. package/dist/collection/components/z-table/z-table-head/index.js +22 -22
  197. package/dist/collection/components/z-table/z-table-head/styles.css +5 -5
  198. package/dist/collection/components/z-table/z-table-header/index.js +238 -238
  199. package/dist/collection/components/z-table/z-table-header/styles.css +71 -71
  200. package/dist/collection/components/z-table/z-table-header-row/index.js +41 -41
  201. package/dist/collection/components/z-table/z-table-header-row/styles.css +13 -13
  202. package/dist/collection/components/z-table/z-table-row/index.js +92 -92
  203. package/dist/collection/components/z-table/z-table-row/styles.css +45 -45
  204. package/dist/collection/components/z-table/z-table-sticky-footer/index.js +21 -21
  205. package/dist/collection/components/z-table/z-table-sticky-footer/styles.css +11 -11
  206. package/dist/collection/components/z-tag/index.js +65 -65
  207. package/dist/collection/components/z-tag/styles.css +46 -46
  208. package/dist/collection/components/z-visually-hidden/index.js +18 -18
  209. package/dist/collection/components/z-visually-hidden/styles.css +12 -12
  210. package/dist/collection/constants/breakpoints.js +3 -3
  211. package/dist/collection/constants/icons.js +6 -6
  212. package/dist/collection/deprecated/typography/z-body/index.js +68 -68
  213. package/dist/collection/deprecated/typography/z-heading/index.js +68 -68
  214. package/dist/collection/deprecated/typography/z-typography/index.js +91 -91
  215. package/dist/collection/deprecated/typography/z-typography/styles.css +65 -65
  216. package/dist/collection/index.js +7 -7
  217. package/dist/collection/snowflakes/myz/card/z-myz-card/index.js +129 -129
  218. package/dist/collection/snowflakes/myz/card/z-myz-card/styles.css +44 -44
  219. package/dist/collection/snowflakes/myz/card/z-myz-card-alert/index.js +151 -151
  220. package/dist/collection/snowflakes/myz/card/z-myz-card-alert/styles.css +62 -62
  221. package/dist/collection/snowflakes/myz/card/z-myz-card-body/index.js +22 -22
  222. package/dist/collection/snowflakes/myz/card/z-myz-card-body/styles.css +13 -13
  223. package/dist/collection/snowflakes/myz/card/z-myz-card-cover/index.js +93 -93
  224. package/dist/collection/snowflakes/myz/card/z-myz-card-cover/styles.css +11 -11
  225. package/dist/collection/snowflakes/myz/card/z-myz-card-dictionary/index.js +177 -177
  226. package/dist/collection/snowflakes/myz/card/z-myz-card-dictionary/styles.css +72 -72
  227. package/dist/collection/snowflakes/myz/card/z-myz-card-footer/index.js +219 -219
  228. package/dist/collection/snowflakes/myz/card/z-myz-card-footer/styles.css +182 -182
  229. package/dist/collection/snowflakes/myz/card/z-myz-card-footer-sections/index.js +22 -22
  230. package/dist/collection/snowflakes/myz/card/z-myz-card-footer-sections/styles.css +20 -20
  231. package/dist/collection/snowflakes/myz/card/z-myz-card-header/index.js +109 -109
  232. package/dist/collection/snowflakes/myz/card/z-myz-card-header/styles.css +59 -59
  233. package/dist/collection/snowflakes/myz/card/z-myz-card-icon/index.js +81 -81
  234. package/dist/collection/snowflakes/myz/card/z-myz-card-icon/styles.css +69 -69
  235. package/dist/collection/snowflakes/myz/card/z-myz-card-info/index.js +199 -199
  236. package/dist/collection/snowflakes/myz/card/z-myz-card-info/styles.css +93 -93
  237. package/dist/collection/snowflakes/myz/card/z-myz-card-list/index.js +60 -60
  238. package/dist/collection/snowflakes/myz/card/z-myz-card-list/styles.css +41 -41
  239. package/dist/collection/snowflakes/myz/list/z-myz-list/index.js +78 -78
  240. package/dist/collection/snowflakes/myz/list/z-myz-list/styles.css +4 -4
  241. package/dist/collection/snowflakes/myz/list/z-myz-list-item/index.js +192 -192
  242. package/dist/collection/snowflakes/myz/list/z-myz-list-item/styles.css +66 -66
  243. package/dist/collection/snowflakes/myz/pocket/z-messages-pocket/index.js +120 -120
  244. package/dist/collection/snowflakes/myz/pocket/z-messages-pocket/styles.css +102 -102
  245. package/dist/collection/snowflakes/myz/pocket/z-pocket/index.js +191 -191
  246. package/dist/collection/snowflakes/myz/pocket/z-pocket/styles.css +44 -44
  247. package/dist/collection/snowflakes/myz/pocket/z-pocket-body/index.js +84 -84
  248. package/dist/collection/snowflakes/myz/pocket/z-pocket-body/styles.css +41 -41
  249. package/dist/collection/snowflakes/myz/pocket/z-pocket-header/index.js +93 -93
  250. package/dist/collection/snowflakes/myz/pocket/z-pocket-header/styles.css +27 -27
  251. package/dist/collection/snowflakes/myz/pocket/z-pocket-message/index.js +22 -22
  252. package/dist/collection/snowflakes/myz/pocket/z-pocket-message/styles.css +44 -44
  253. package/dist/collection/snowflakes/myz/z-alert/index.js +47 -47
  254. package/dist/collection/snowflakes/myz/z-alert/styles.css +28 -28
  255. package/dist/collection/snowflakes/myz/z-otp/index.js +120 -120
  256. package/dist/collection/snowflakes/myz/z-otp/styles.css +47 -47
  257. package/dist/collection/snowflakes/myz/z-slideshow/index.js +180 -180
  258. package/dist/collection/snowflakes/myz/z-slideshow/styles.css +127 -127
  259. package/dist/collection/utils/storybook-utils.js +51 -51
  260. package/dist/collection/utils/utils.js +113 -113
  261. package/dist/esm/{breakpoints-c386984e.js → breakpoints-14432d05.js} +1 -1
  262. package/dist/esm/{icons-6cd265c6.js → icons-55b0b113.js} +763 -763
  263. package/dist/esm/{index-e36ec4a4.js → index-03c01696.js} +317 -317
  264. package/dist/esm/index.js +5 -5
  265. package/dist/esm/polyfills/core-js.js +0 -0
  266. package/dist/esm/polyfills/dom.js +0 -0
  267. package/dist/esm/polyfills/es5-html-element.js +0 -0
  268. package/dist/esm/polyfills/index.js +0 -0
  269. package/dist/esm/polyfills/system.js +0 -0
  270. package/dist/esm/{utils-9641b4ed.js → utils-a7846d0f.js} +75 -75
  271. package/dist/esm/{utils-a52a81ba.js → utils-f8eb3944.js} +94 -94
  272. package/dist/esm/z-alert.entry.js +8 -8
  273. package/dist/esm/z-anchor-navigation.entry.js +42 -42
  274. package/dist/esm/z-app-header_11.entry.js +989 -991
  275. package/dist/esm/z-aria-alert.entry.js +10 -10
  276. package/dist/esm/z-avatar.entry.js +33 -33
  277. package/dist/esm/z-body.entry.js +9 -9
  278. package/dist/esm/z-button-sort.entry.js +42 -42
  279. package/dist/esm/z-card.entry.js +55 -55
  280. package/dist/esm/z-carousel.entry.js +135 -135
  281. package/dist/esm/z-chip.entry.js +29 -29
  282. package/dist/esm/z-combobox.entry.js +190 -190
  283. package/dist/esm/z-contextual-menu.entry.js +35 -35
  284. package/dist/esm/z-cover-hero.entry.js +46 -46
  285. package/dist/esm/z-date-picker.entry.js +164 -164
  286. package/dist/esm/z-dragdrop-area_2.entry.js +129 -129
  287. package/dist/esm/z-file-upload.entry.js +174 -174
  288. package/dist/esm/z-file.entry.js +37 -37
  289. package/dist/esm/z-ghost-loading.entry.js +9 -9
  290. package/dist/esm/z-heading.entry.js +9 -9
  291. package/dist/esm/z-info-box.entry.js +14 -14
  292. package/dist/esm/z-info-reveal.entry.js +54 -54
  293. package/dist/esm/z-link.entry.js +63 -63
  294. package/dist/esm/z-logo.entry.js +15 -15
  295. package/dist/esm/z-menu-section.entry.js +43 -43
  296. package/dist/esm/z-menu.entry.js +108 -108
  297. package/dist/esm/z-messages-pocket.entry.js +36 -36
  298. package/dist/esm/z-myz-card-alert.entry.js +52 -52
  299. package/dist/esm/z-myz-card-dictionary.entry.js +25 -25
  300. package/dist/esm/z-myz-card-footer-sections.entry.js +8 -8
  301. package/dist/esm/z-myz-card-footer.entry.js +58 -58
  302. package/dist/esm/z-myz-card-icon.entry.js +12 -12
  303. package/dist/esm/z-myz-card-info.entry.js +118 -118
  304. package/dist/esm/z-myz-card-list.entry.js +27 -27
  305. package/dist/esm/z-myz-card_4.entry.js +82 -82
  306. package/dist/esm/z-myz-list-item.entry.js +26 -26
  307. package/dist/esm/z-myz-list.entry.js +24 -24
  308. package/dist/esm/z-navigation-tab-link.entry.js +60 -60
  309. package/dist/esm/z-navigation-tab.entry.js +62 -62
  310. package/dist/esm/z-navigation-tabs.entry.js +115 -115
  311. package/dist/esm/z-notification.entry.js +30 -30
  312. package/dist/esm/z-otp.entry.js +30 -30
  313. package/dist/esm/z-pagination.entry.js +219 -219
  314. package/dist/esm/z-panel-elem.entry.js +19 -19
  315. package/dist/esm/z-pocket-message.entry.js +8 -8
  316. package/dist/esm/z-pocket_3.entry.js +102 -102
  317. package/dist/esm/z-popover.entry.js +317 -317
  318. package/dist/esm/z-range-picker.entry.js +331 -331
  319. package/dist/esm/z-section-title.entry.js +22 -22
  320. package/dist/esm/z-select.entry.js +322 -322
  321. package/dist/esm/z-skip-to-content.entry.js +55 -55
  322. package/dist/esm/z-slideshow.entry.js +118 -118
  323. package/dist/esm/z-stepper-item.entry.js +11 -11
  324. package/dist/esm/z-stepper.entry.js +8 -8
  325. package/dist/esm/z-table-body.entry.js +13 -13
  326. package/dist/esm/z-table-cell.entry.js +25 -25
  327. package/dist/esm/z-table-empty-box.entry.js +21 -21
  328. package/dist/esm/z-table-expanded-row.entry.js +8 -8
  329. package/dist/esm/z-table-footer.entry.js +12 -12
  330. package/dist/esm/z-table-head.entry.js +12 -12
  331. package/dist/esm/z-table-header-row.entry.js +11 -11
  332. package/dist/esm/z-table-header.entry.js +71 -71
  333. package/dist/esm/z-table-row.entry.js +32 -32
  334. package/dist/esm/z-table-sticky-footer.entry.js +8 -8
  335. package/dist/esm/z-table.entry.js +69 -69
  336. package/dist/esm/z-tag.entry.js +11 -11
  337. package/dist/esm/z-toast-notification-list.entry.js +45 -45
  338. package/dist/esm/z-toast-notification.entry.js +187 -187
  339. package/dist/esm/z-toggle-button.entry.js +25 -25
  340. package/dist/esm/z-toggle-switch.entry.js +40 -40
  341. package/dist/esm/z-tooltip.entry.js +26 -26
  342. package/dist/esm/z-typography.entry.js +19 -19
  343. package/dist/esm/z-visually-hidden.entry.js +8 -8
  344. package/dist/types/beans/index.d.ts +374 -374
  345. package/dist/types/components/buttons/z-button/index.d.ts +29 -29
  346. package/dist/types/components/buttons/z-button-sort/index.d.ts +28 -28
  347. package/dist/types/components/buttons/z-chip/index.d.ts +20 -20
  348. package/dist/types/components/buttons/z-toggle-button/index.d.ts +17 -17
  349. package/dist/types/components/buttons/z-toggle-switch/index.d.ts +17 -17
  350. package/dist/types/components/date-picker/utils.d.ts +4 -4
  351. package/dist/types/components/date-picker/z-date-picker/index.d.ts +29 -29
  352. package/dist/types/components/date-picker/z-range-picker/index.d.ts +42 -42
  353. package/dist/types/components/file-upload/z-dragdrop-area/index.d.ts +9 -9
  354. package/dist/types/components/file-upload/z-file/index.d.ts +22 -22
  355. package/dist/types/components/file-upload/z-file-upload/index.d.ts +52 -52
  356. package/dist/types/components/icons/icons.d.ts +1362 -1362
  357. package/dist/types/components/icons/z-icon/index.d.ts +14 -14
  358. package/dist/types/components/indicators/z-stepper/index.d.ts +6 -6
  359. package/dist/types/components/indicators/z-stepper-item/index.d.ts +19 -19
  360. package/dist/types/components/inputs/z-combobox/index.d.ts +71 -71
  361. package/dist/types/components/inputs/z-input/index.d.ts +86 -86
  362. package/dist/types/components/inputs/z-input-message/index.d.ts +12 -12
  363. package/dist/types/components/inputs/z-searchbar/index.d.ts +73 -73
  364. package/dist/types/components/inputs/z-select/index.d.ts +82 -82
  365. package/dist/types/components/list/z-list/index.d.ts +15 -15
  366. package/dist/types/components/list/z-list-element/index.d.ts +95 -95
  367. package/dist/types/components/list/z-list-group/index.d.ts +28 -28
  368. package/dist/types/components/list/z-toast-notification-list/index.d.ts +14 -14
  369. package/dist/types/components/logo/z-logo/index.d.ts +15 -15
  370. package/dist/types/components/modal/z-modal/index.d.ts +47 -47
  371. package/dist/types/components/navigation/tabs/z-navigation-tab/index.d.ts +52 -52
  372. package/dist/types/components/navigation/tabs/z-navigation-tab-link/index.d.ts +60 -60
  373. package/dist/types/components/navigation/tabs/z-navigation-tabs/index.d.ts +70 -70
  374. package/dist/types/components/navigation/z-app-header/index.d.ts +143 -143
  375. package/dist/types/components/navigation/z-link/index.d.ts +40 -40
  376. package/dist/types/components/navigation/z-menu/index.d.ts +61 -61
  377. package/dist/types/components/navigation/z-menu-section/index.d.ts +31 -31
  378. package/dist/types/components/notification/z-info-box/index.d.ts +14 -14
  379. package/dist/types/components/notification/z-notification/index.d.ts +32 -32
  380. package/dist/types/components/notification/z-toast-notification/index.d.ts +56 -56
  381. package/dist/types/components/notification/z-tooltip/index.d.ts +32 -32
  382. package/dist/types/components/panel/z-panel-elem/index.d.ts +25 -25
  383. package/dist/types/components/z-anchor-navigation/index.d.ts +39 -39
  384. package/dist/types/components/z-aria-alert/index.d.ts +6 -6
  385. package/dist/types/components/z-avatar/index.d.ts +16 -16
  386. package/dist/types/components/z-card/index.d.ts +44 -44
  387. package/dist/types/components/z-carousel/index.d.ts +63 -63
  388. package/dist/types/components/z-contextual-menu/index.d.ts +26 -26
  389. package/dist/types/components/z-cover-hero/index.d.ts +41 -41
  390. package/dist/types/components/z-divider/index.d.ts +10 -10
  391. package/dist/types/components/z-ghost-loading/index.d.ts +3 -3
  392. package/dist/types/components/z-info-reveal/index.d.ts +29 -29
  393. package/dist/types/components/z-offcanvas/index.d.ts +27 -27
  394. package/dist/types/components/z-pagination/index.d.ts +109 -109
  395. package/dist/types/components/z-popover/index.d.ts +69 -69
  396. package/dist/types/components/z-section-title/index.d.ts +25 -25
  397. package/dist/types/components/z-skip-to-content/index.d.ts +21 -21
  398. package/dist/types/components/z-table/z-table/index.d.ts +48 -48
  399. package/dist/types/components/z-table/z-table-body/index.d.ts +5 -5
  400. package/dist/types/components/z-table/z-table-cell/index.d.ts +12 -12
  401. package/dist/types/components/z-table/z-table-empty-box/index.d.ts +12 -12
  402. package/dist/types/components/z-table/z-table-expanded-row/index.d.ts +5 -5
  403. package/dist/types/components/z-table/z-table-footer/index.d.ts +5 -5
  404. package/dist/types/components/z-table/z-table-head/index.d.ts +5 -5
  405. package/dist/types/components/z-table/z-table-header/index.d.ts +29 -29
  406. package/dist/types/components/z-table/z-table-header-row/index.d.ts +6 -6
  407. package/dist/types/components/z-table/z-table-row/index.d.ts +13 -13
  408. package/dist/types/components/z-table/z-table-sticky-footer/index.d.ts +6 -6
  409. package/dist/types/components/z-tag/index.d.ts +13 -13
  410. package/dist/types/components/z-visually-hidden/index.d.ts +3 -3
  411. package/dist/types/constants/breakpoints.d.ts +3 -3
  412. package/dist/types/constants/icons.d.ts +6 -6
  413. package/dist/types/deprecated/typography/z-body/index.d.ts +9 -9
  414. package/dist/types/deprecated/typography/z-heading/index.d.ts +9 -9
  415. package/dist/types/deprecated/typography/z-typography/index.d.ts +11 -11
  416. package/dist/types/index.d.ts +7 -7
  417. package/dist/types/snowflakes/myz/card/z-myz-card/index.d.ts +16 -16
  418. package/dist/types/snowflakes/myz/card/z-myz-card-alert/index.d.ts +19 -19
  419. package/dist/types/snowflakes/myz/card/z-myz-card-body/index.d.ts +7 -7
  420. package/dist/types/snowflakes/myz/card/z-myz-card-cover/index.d.ts +12 -12
  421. package/dist/types/snowflakes/myz/card/z-myz-card-dictionary/index.d.ts +24 -24
  422. package/dist/types/snowflakes/myz/card/z-myz-card-footer/index.d.ts +34 -34
  423. package/dist/types/snowflakes/myz/card/z-myz-card-footer-sections/index.d.ts +7 -7
  424. package/dist/types/snowflakes/myz/card/z-myz-card-header/index.d.ts +19 -19
  425. package/dist/types/snowflakes/myz/card/z-myz-card-icon/index.d.ts +9 -9
  426. package/dist/types/snowflakes/myz/card/z-myz-card-info/index.d.ts +36 -36
  427. package/dist/types/snowflakes/myz/card/z-myz-card-list/index.d.ts +9 -9
  428. package/dist/types/snowflakes/myz/list/z-myz-list/index.d.ts +11 -11
  429. package/dist/types/snowflakes/myz/list/z-myz-list-item/index.d.ts +25 -25
  430. package/dist/types/snowflakes/myz/pocket/z-messages-pocket/index.d.ts +16 -16
  431. package/dist/types/snowflakes/myz/pocket/z-pocket/index.d.ts +25 -25
  432. package/dist/types/snowflakes/myz/pocket/z-pocket-body/index.d.ts +12 -12
  433. package/dist/types/snowflakes/myz/pocket/z-pocket-header/index.d.ts +18 -18
  434. package/dist/types/snowflakes/myz/pocket/z-pocket-message/index.d.ts +7 -7
  435. package/dist/types/snowflakes/myz/z-alert/index.d.ts +9 -9
  436. package/dist/types/snowflakes/myz/z-otp/index.d.ts +17 -17
  437. package/dist/types/snowflakes/myz/z-slideshow/index.d.ts +30 -30
  438. package/dist/types/utils/utils.d.ts +24 -24
  439. package/dist/web-components-library/index.esm.js +1 -1
  440. package/dist/web-components-library/{p-06b7dad4.entry.js → p-0164ca54.entry.js} +1 -1
  441. package/dist/web-components-library/{p-047439a1.entry.js → p-04631bc5.entry.js} +1 -1
  442. package/dist/web-components-library/{p-4367f978.entry.js → p-0afb1436.entry.js} +1 -1
  443. package/dist/web-components-library/{p-6f5cab30.entry.js → p-0b1de3ce.entry.js} +1 -1
  444. package/dist/web-components-library/{p-01ba4a7c.entry.js → p-0c3f4eed.entry.js} +1 -1
  445. package/dist/web-components-library/{p-c9bb584c.entry.js → p-15bb0526.entry.js} +1 -1
  446. package/{www/build/p-378e3fd3.entry.js → dist/web-components-library/p-1d19e382.entry.js} +1 -1
  447. package/dist/web-components-library/{p-75da9f5d.entry.js → p-2415d4d8.entry.js} +1 -1
  448. package/dist/web-components-library/{p-9d57a84c.entry.js → p-25678da1.entry.js} +1 -1
  449. package/dist/web-components-library/{p-c88ff94b.entry.js → p-32eec10f.entry.js} +1 -1
  450. package/{www/build/p-d9c98cfd.entry.js → dist/web-components-library/p-356b2fc1.entry.js} +1 -1
  451. package/dist/web-components-library/{p-0c62a60a.entry.js → p-3d4b8a34.entry.js} +1 -1
  452. package/dist/web-components-library/{p-10adc1fa.entry.js → p-50bc8152.entry.js} +1 -1
  453. package/dist/web-components-library/{p-4d4eb6ed.entry.js → p-50d1f5a4.entry.js} +1 -1
  454. package/dist/web-components-library/{p-1e71778f.entry.js → p-560116ec.entry.js} +1 -1
  455. package/dist/web-components-library/{p-ecf4117e.entry.js → p-6c9421c6.entry.js} +1 -1
  456. package/dist/web-components-library/{p-6d377fcb.entry.js → p-70e71580.entry.js} +1 -1
  457. package/dist/web-components-library/{p-161a4e84.entry.js → p-72c76071.entry.js} +1 -1
  458. package/dist/web-components-library/{p-98d3c4d6.entry.js → p-75883172.entry.js} +1 -1
  459. package/dist/web-components-library/{p-d986024a.entry.js → p-79919c84.entry.js} +1 -1
  460. package/dist/web-components-library/{p-ff18ab96.entry.js → p-802723a9.entry.js} +1 -1
  461. package/dist/web-components-library/{p-1eaef57d.entry.js → p-8153e216.entry.js} +1 -1
  462. package/dist/web-components-library/{p-31cb64b3.entry.js → p-825b4767.entry.js} +1 -1
  463. package/dist/web-components-library/{p-d74090ce.entry.js → p-8272a099.entry.js} +1 -1
  464. package/dist/web-components-library/{p-3f0cdaa1.entry.js → p-9665df65.entry.js} +1 -1
  465. package/dist/web-components-library/{p-6736e894.entry.js → p-968d9b80.entry.js} +1 -1
  466. package/dist/web-components-library/{p-10e036e4.entry.js → p-9c3e91fd.entry.js} +1 -1
  467. package/dist/web-components-library/{p-0bf3a704.entry.js → p-a8df4340.entry.js} +1 -1
  468. package/{www/build/p-a481bb97.js → dist/web-components-library/p-ad48bdb5.js} +1 -1
  469. package/dist/web-components-library/{p-a7249453.entry.js → p-ad664ac3.entry.js} +1 -1
  470. package/dist/web-components-library/{p-5f5f2463.entry.js → p-b10a244b.entry.js} +1 -1
  471. package/dist/web-components-library/{p-1c6b0e09.js → p-b301e6e1.js} +1 -1
  472. package/dist/web-components-library/{p-1b07b435.entry.js → p-b6b122a3.entry.js} +1 -1
  473. package/dist/web-components-library/{p-1ff146fb.entry.js → p-baabfd0d.entry.js} +1 -1
  474. package/dist/web-components-library/{p-5c5a2680.entry.js → p-bfd78f08.entry.js} +1 -1
  475. package/dist/web-components-library/{p-f9f42d17.entry.js → p-c47ec900.entry.js} +1 -1
  476. package/{www/build/p-27441384.entry.js → dist/web-components-library/p-c655b1c8.entry.js} +1 -1
  477. package/dist/web-components-library/{p-2c8f6f12.entry.js → p-cf34dfa1.entry.js} +1 -1
  478. package/dist/web-components-library/{p-dae1376f.entry.js → p-d152fcef.entry.js} +1 -1
  479. package/dist/web-components-library/{p-c948b900.entry.js → p-d1c86e77.entry.js} +1 -1
  480. package/dist/web-components-library/{p-84b23d4b.entry.js → p-d2fb8d30.entry.js} +1 -1
  481. package/{www/build/p-81cad61c.entry.js → dist/web-components-library/p-da923c76.entry.js} +1 -1
  482. package/dist/web-components-library/{p-fc579135.entry.js → p-e02ecf4c.entry.js} +1 -1
  483. package/dist/web-components-library/{p-5fa58b99.entry.js → p-e09f95c9.entry.js} +1 -1
  484. package/dist/web-components-library/{p-1b0f4e52.entry.js → p-e5410351.entry.js} +1 -1
  485. package/dist/web-components-library/{p-f52100f3.entry.js → p-f0eb6020.entry.js} +1 -1
  486. package/dist/web-components-library/p-f9d29371.entry.js +1 -0
  487. package/dist/web-components-library/web-components-library.esm.js +1 -1
  488. package/package.json +106 -106
  489. package/react/components.d.ts +90 -90
  490. package/react/components.js +96 -96
  491. package/react/index.d.ts +1 -1
  492. package/react/index.js +13 -13
  493. package/react/react-component-lib/createComponent.d.ts +10 -10
  494. package/react/react-component-lib/createComponent.js +97 -97
  495. package/react/react-component-lib/createOverlayComponent.d.ts +21 -21
  496. package/react/react-component-lib/createOverlayComponent.js +115 -115
  497. package/react/react-component-lib/index.d.ts +2 -2
  498. package/react/react-component-lib/index.js +7 -7
  499. package/react/react-component-lib/interfaces.d.ts +29 -29
  500. package/react/react-component-lib/interfaces.js +2 -2
  501. package/react/react-component-lib/utils/attachProps.d.ts +12 -12
  502. package/react/react-component-lib/utils/attachProps.js +104 -104
  503. package/react/react-component-lib/utils/case.d.ts +2 -2
  504. package/react/react-component-lib/utils/case.js +11 -11
  505. package/react/react-component-lib/utils/dev.d.ts +2 -2
  506. package/react/react-component-lib/utils/dev.js +17 -17
  507. package/react/react-component-lib/utils/index.d.ts +10 -10
  508. package/react/react-component-lib/utils/index.js +53 -53
  509. package/readme.md +280 -280
  510. package/www/build/index.esm.js +1 -1
  511. package/www/build/{p-06b7dad4.entry.js → p-0164ca54.entry.js} +1 -1
  512. package/www/build/{p-047439a1.entry.js → p-04631bc5.entry.js} +1 -1
  513. package/www/build/{p-4367f978.entry.js → p-0afb1436.entry.js} +1 -1
  514. package/www/build/{p-6f5cab30.entry.js → p-0b1de3ce.entry.js} +1 -1
  515. package/www/build/{p-01ba4a7c.entry.js → p-0c3f4eed.entry.js} +1 -1
  516. package/www/build/{p-c9bb584c.entry.js → p-15bb0526.entry.js} +1 -1
  517. package/{dist/web-components-library/p-378e3fd3.entry.js → www/build/p-1d19e382.entry.js} +1 -1
  518. package/www/build/{p-75da9f5d.entry.js → p-2415d4d8.entry.js} +1 -1
  519. package/www/build/{p-9d57a84c.entry.js → p-25678da1.entry.js} +1 -1
  520. package/www/build/{p-c88ff94b.entry.js → p-32eec10f.entry.js} +1 -1
  521. package/{dist/web-components-library/p-d9c98cfd.entry.js → www/build/p-356b2fc1.entry.js} +1 -1
  522. package/www/build/{p-0c62a60a.entry.js → p-3d4b8a34.entry.js} +1 -1
  523. package/www/build/{p-10adc1fa.entry.js → p-50bc8152.entry.js} +1 -1
  524. package/www/build/{p-4d4eb6ed.entry.js → p-50d1f5a4.entry.js} +1 -1
  525. package/www/build/{p-1e71778f.entry.js → p-560116ec.entry.js} +1 -1
  526. package/www/build/{p-ecf4117e.entry.js → p-6c9421c6.entry.js} +1 -1
  527. package/www/build/{p-6d377fcb.entry.js → p-70e71580.entry.js} +1 -1
  528. package/www/build/{p-161a4e84.entry.js → p-72c76071.entry.js} +1 -1
  529. package/www/build/{p-98d3c4d6.entry.js → p-75883172.entry.js} +1 -1
  530. package/www/build/{p-d986024a.entry.js → p-79919c84.entry.js} +1 -1
  531. package/www/build/{p-ff18ab96.entry.js → p-802723a9.entry.js} +1 -1
  532. package/www/build/{p-1eaef57d.entry.js → p-8153e216.entry.js} +1 -1
  533. package/www/build/{p-31cb64b3.entry.js → p-825b4767.entry.js} +1 -1
  534. package/www/build/{p-d74090ce.entry.js → p-8272a099.entry.js} +1 -1
  535. package/www/build/{p-3f0cdaa1.entry.js → p-9665df65.entry.js} +1 -1
  536. package/www/build/{p-6736e894.entry.js → p-968d9b80.entry.js} +1 -1
  537. package/www/build/{p-10e036e4.entry.js → p-9c3e91fd.entry.js} +1 -1
  538. package/www/build/{p-0bf3a704.entry.js → p-a8df4340.entry.js} +1 -1
  539. package/{dist/web-components-library/p-a481bb97.js → www/build/p-ad48bdb5.js} +1 -1
  540. package/www/build/{p-a7249453.entry.js → p-ad664ac3.entry.js} +1 -1
  541. package/www/build/{p-5f5f2463.entry.js → p-b10a244b.entry.js} +1 -1
  542. package/www/build/{p-1c6b0e09.js → p-b301e6e1.js} +1 -1
  543. package/www/build/{p-1b07b435.entry.js → p-b6b122a3.entry.js} +1 -1
  544. package/www/build/{p-1ff146fb.entry.js → p-baabfd0d.entry.js} +1 -1
  545. package/www/build/{p-5c5a2680.entry.js → p-bfd78f08.entry.js} +1 -1
  546. package/www/build/{p-f9f42d17.entry.js → p-c47ec900.entry.js} +1 -1
  547. package/{dist/web-components-library/p-27441384.entry.js → www/build/p-c655b1c8.entry.js} +1 -1
  548. package/www/build/{p-2c8f6f12.entry.js → p-cf34dfa1.entry.js} +1 -1
  549. package/www/build/{p-dae1376f.entry.js → p-d152fcef.entry.js} +1 -1
  550. package/www/build/{p-c948b900.entry.js → p-d1c86e77.entry.js} +1 -1
  551. package/www/build/{p-70021fac.js → p-d20434c3.js} +1 -1
  552. package/www/build/{p-84b23d4b.entry.js → p-d2fb8d30.entry.js} +1 -1
  553. package/{dist/web-components-library/p-81cad61c.entry.js → www/build/p-da923c76.entry.js} +1 -1
  554. package/www/build/{p-fc579135.entry.js → p-e02ecf4c.entry.js} +1 -1
  555. package/www/build/{p-5fa58b99.entry.js → p-e09f95c9.entry.js} +1 -1
  556. package/www/build/{p-1b0f4e52.entry.js → p-e5410351.entry.js} +1 -1
  557. package/www/build/{p-f52100f3.entry.js → p-f0eb6020.entry.js} +1 -1
  558. package/www/build/p-f9d29371.entry.js +1 -0
  559. package/www/build/web-components-library.esm.js +1 -1
  560. package/www/index.html +1 -1
  561. package/www/pages/file-upload.html +258 -258
  562. package/www/pages/notification.html +299 -299
  563. package/dist/web-components-library/p-b36fc3db.entry.js +0 -1
  564. package/www/build/p-b36fc3db.entry.js +0 -1
  565. /package/dist/web-components-library/{p-bb85c467.js → p-21c3aea0.js} +0 -0
  566. /package/dist/web-components-library/{p-e1ac5c4e.js → p-dfed050d.js} +0 -0
  567. /package/dist/web-components-library/{p-d69e14fb.js → p-e35d3552.js} +0 -0
  568. /package/www/build/{p-bb85c467.js → p-21c3aea0.js} +0 -0
  569. /package/www/build/{p-e1ac5c4e.js → p-dfed050d.js} +0 -0
  570. /package/www/build/{p-d69e14fb.js → p-e35d3552.js} +0 -0
@@ -1,600 +1,599 @@
1
- import { h, Host } from "@stencil/core";
2
- import { ButtonVariant, ListDividerType, ControlSize, } from "../../../beans";
3
- import { handleEnterKeydSubmit, randomId } from "../../../utils/utils";
4
- /**
5
- * @cssprop --z-searchbar-results-height - Max height of the results container (default: 540px)
6
- */
7
- export class ZSearchbar {
8
- constructor() {
9
- /** the id of the searchbar element */
10
- this.htmlid = `searchbar-${randomId()}`;
11
- /** Prevent submit action */
12
- this.preventSubmit = false;
13
- /** Show autocomplete results */
14
- this.autocomplete = false;
15
- /** Minimun number of characters to dispatch typing event */
16
- this.autocompleteMinChars = 3;
17
- /** Truncate results to single row */
18
- this.resultsEllipsis = true;
19
- /** Search helper text */
20
- this.searchHelperLabel = "Cerca {searchString}";
21
- /** Sort autocomplete results items */
22
- this.sortResultsItems = false;
23
- /** Show submit button */
24
- this.showSearchButton = false;
25
- /** Set button icon without label*/
26
- this.searchButtonIconOnly = false;
27
- /** Available sizes: `big`, `small` and `x-small`. Defaults to `big`. */
28
- this.size = ControlSize.BIG;
29
- /** Graphical variant: `primary`, `secondary`, `tertiary`. Defaults to `primary`. */
30
- this.variant = ButtonVariant.PRIMARY;
31
- this.searchString = "";
32
- this.currResultsCount = 0;
33
- this.showResults = false;
34
- this.resultsItemsList = null;
35
- }
36
- emitSearchSubmit() {
37
- this.searchSubmit.emit(this.inputRef.value);
38
- }
39
- emitSearchTyping(search) {
40
- this.searchTyping.emit(search);
41
- }
42
- emitSearchItemClick(item) {
43
- this.searchItemClick.emit(item);
44
- }
45
- watchItems() {
46
- this.resultsItemsList = this.getResultsItemsList();
47
- }
48
- watchResultsCount() {
49
- this.currResultsCount = this.resultsCount;
50
- }
51
- watchValue() {
52
- this.searchString = this.value;
53
- }
54
- watchSearchString() {
55
- this.emitSearchTyping(this.searchString);
56
- if (!this.searchString) {
57
- this.currResultsCount = this.resultsCount;
58
- }
59
- }
60
- componentWillLoad() {
61
- this.resultsItemsList = this.getResultsItemsList();
62
- this.currResultsCount = this.resultsCount;
63
- this.searchString = this.value;
64
- }
65
- getResultsItemsList() {
66
- return typeof this.resultsItems === "string" ? JSON.parse(this.resultsItems) : this.resultsItems;
67
- }
68
- getGroupedItems(items) {
69
- const groupedItems = {};
70
- items.forEach((item) => {
71
- var _a;
72
- const key = `${item === null || item === void 0 ? void 0 : item.category}${item === null || item === void 0 ? void 0 : item.subcategory}`;
73
- groupedItems[key] = (_a = groupedItems[key]) !== null && _a !== void 0 ? _a : {
74
- category: item === null || item === void 0 ? void 0 : item.category,
75
- subcategory: item === null || item === void 0 ? void 0 : item.subcategory,
76
- items: [],
77
- };
78
- groupedItems[key]["items"].push(item);
79
- });
80
- if (this.sortResultsItems) {
81
- return Object.keys(groupedItems)
82
- .sort()
83
- .reduce((obj, key) => {
84
- obj[key] = Object.assign(Object.assign({}, groupedItems[key]), { items: groupedItems[key]["items"].sort((a, b) => {
85
- const nameA = a.label.toUpperCase();
86
- const nameB = b.label.toUpperCase();
87
- if (nameA < nameB) {
88
- return -1;
89
- }
90
- if (nameA > nameB) {
91
- return 1;
92
- }
93
- return 0;
94
- }) });
95
- return obj;
96
- }, {});
97
- }
98
- return groupedItems;
99
- }
100
- checkResultsCount(counter) {
101
- if (!this.currResultsCount || counter < this.currResultsCount) {
102
- return true;
103
- }
104
- return false;
105
- }
106
- handleStopTyping(e) {
107
- e.stopPropagation();
108
- this.searchString = e.detail.value;
109
- }
110
- handleSubmit() {
111
- if (this.preventSubmit) {
112
- return;
113
- }
114
- this.emitSearchSubmit();
115
- }
116
- handleOutsideClick(e) {
117
- const cp = e.composedPath();
118
- const searchbar = cp.find((elem) => elem.nodeName === "Z-SEARCHBAR");
119
- if (!searchbar || searchbar.htmlid !== this.htmlid) {
120
- this.showResults = false;
121
- return;
122
- }
123
- if (cp.find((elem) => { var _a; return (elem === null || elem === void 0 ? void 0 : elem.nodeName) === "Z-INPUT" || ((_a = elem === null || elem === void 0 ? void 0 : elem.classList) === null || _a === void 0 ? void 0 : _a.contains("results")); })) {
124
- this.showResults = true;
125
- return;
126
- }
127
- this.showResults = false;
128
- }
129
- renderInput() {
130
- return (h("z-input", { ref: (val) => {
131
- this.inputRef = val;
132
- }, message: false, placeholder: this.placeholder, onStopTyping: (e) => this.handleStopTyping(e), onKeyUp: (e) => handleEnterKeydSubmit(e, () => this.handleSubmit()), value: this.value, size: this.size }));
133
- }
134
- renderButton() {
135
- if (!this.showSearchButton) {
136
- return null;
137
- }
138
- const iconProp = this.searchButtonIconOnly ? { icon: "search" } : null;
139
- const buttonLabel = this.searchButtonIconOnly ? "" : "CERCA";
140
- const defaultProps = Object.assign({ disabled: this.preventSubmit, variant: this.variant, size: this.size, onClick: () => this.handleSubmit() }, iconProp);
141
- return h("z-button", Object.assign({}, defaultProps), buttonLabel);
142
- }
143
- renderResults() {
144
- if (!this.showResults ||
145
- !this.autocomplete ||
146
- !this.searchString ||
147
- this.searchString.length < this.autocompleteMinChars ||
148
- !this.resultsItemsList) {
149
- return null;
150
- }
151
- return (h("div", { class: "results-wrapper" }, h("div", { class: "results" }, this.renderResultsList())));
152
- }
153
- renderResultsList() {
154
- var _a, _b;
155
- if (this.preventSubmit && !((_a = this.resultsItemsList) === null || _a === void 0 ? void 0 : _a.length)) {
156
- return (h("span", { class: "item item-no-results" }, "Non abbiamo trovato risultati per ", h("b", null, this.searchString), h("br", null), h("br", null), "Cosa puoi fare?", h("ul", null, h("li", null, "Verificare di aver scritto bene"), h("li", null, "Provare a cercare un'altra parola"), h("li", null, "Provare a cercare qualcosa di pi\u00F9 generico"))));
157
- }
158
- return (h("z-list", { role: "listbox", id: `list-${this.htmlid}` }, this.renderSearchHelper(!!((_b = this.resultsItemsList) === null || _b === void 0 ? void 0 : _b.length)), this.renderItems(), this.renderShowAllResults()));
159
- }
160
- renderItems() {
161
- var _a;
162
- if (!((_a = this.resultsItemsList) === null || _a === void 0 ? void 0 : _a.length)) {
163
- return [];
164
- }
165
- const groupedItems = this.getGroupedItems(this.resultsItemsList);
166
- const listGroups = [];
167
- let counter = 0;
168
- Object.values(groupedItems).forEach((groupItem, index, array) => {
169
- if (this.checkResultsCount(counter)) {
170
- const listGroupsElements = [];
171
- groupItem.items.forEach((item, subindex, subarray) => {
172
- if (this.checkResultsCount(counter)) {
173
- const isLast = index === array.length - 1 && subindex === subarray.length - 1;
174
- listGroupsElements.push(this.renderItem(item, subindex, !isLast));
175
- }
176
- counter++;
177
- });
178
- if (listGroupsElements.length) {
179
- listGroups.push(h("z-list-group", { "divider-type": ListDividerType.ELEMENT }, this.renderItemCategory(groupItem), listGroupsElements));
180
- }
181
- }
182
- });
183
- return listGroups;
184
- }
185
- renderItem(item, key, divider) {
186
- return (h("z-list-element", { id: `list-item-${this.htmlid}-${key}`, role: "option", tabindex: 0, dividerType: divider ? ListDividerType.ELEMENT : undefined, clickable: true, onClickItem: () => this.emitSearchItemClick(item) }, h("span", { class: { "item": true, "ellipsis": this.resultsEllipsis, "has-category": !!item.category } }, (item === null || item === void 0 ? void 0 : item.icon) && (h("z-icon", { class: "item-icon", name: item.icon })), h("span", { class: "item-label", title: item.label, innerHTML: this.renderItemLabel(item.label) }))));
187
- }
188
- renderItemLabel(label) {
189
- if (!this.searchString) {
190
- return label;
191
- }
192
- return label.replace(new RegExp(this.searchString.replace(/[.*+?^${}()|[\]\\]/g, "\\$&"), "gmi"), (found) => `<mark>${found}</mark>`);
193
- }
194
- renderItemCategory(groupItem) {
195
- if (!(groupItem === null || groupItem === void 0 ? void 0 : groupItem.category)) {
196
- return null;
197
- }
198
- return (h("span", { class: "category-heading", slot: "header-title" }, h("span", { class: "category" }, groupItem.category), (groupItem === null || groupItem === void 0 ? void 0 : groupItem.subcategory) && h("span", { class: "subcategory" }, groupItem.subcategory)));
199
- }
200
- renderSearchHelper(hasDivider = true) {
201
- if (!this.autocomplete || this.preventSubmit || !this.searchString) {
202
- return null;
203
- }
204
- return (h("z-list-element", { role: "option", tabindex: 0, dividerType: hasDivider ? ListDividerType.ELEMENT : undefined, clickable: true, id: `list-item-${this.htmlid}-search`, onClickItem: () => this.emitSearchSubmit() }, h("span", { class: "item item-search" }, h("z-icon", { class: "search-icon", name: "left-magnifying-glass" }), h("span", { class: "item-label", innerHTML: this.searchHelperLabel.replace("{searchString}", `<mark>${this.searchString}</mark>`) }))));
205
- }
206
- renderShowAllResults() {
207
- var _a, _b;
208
- if (!this.currResultsCount ||
209
- !this.searchString ||
210
- !((_a = this.resultsItemsList) === null || _a === void 0 ? void 0 : _a.length) ||
211
- this.currResultsCount >= ((_b = this.resultsItemsList) === null || _b === void 0 ? void 0 : _b.length)) {
212
- return null;
213
- }
214
- return (h("z-list-element", { role: "option", tabindex: 0, clickable: true, id: `list-item-${this.htmlid}-show-all`, onClickItem: () => (this.currResultsCount = 0), color: "color-primary01" }, h("div", { class: "item-show-all" }, "Vedi tutti i risultati")));
215
- }
216
- render() {
217
- return (h(Host, { onFocus: () => (this.showResults = true), onClick: (e) => this.handleOutsideClick(e), class: { "has-submit": this.showSearchButton, "has-results": this.autocomplete } }, h("div", { class: "input-container" }, this.renderInput(), this.renderResults()), this.renderButton()));
218
- }
219
- static get is() { return "z-searchbar"; }
220
- static get encapsulation() { return "shadow"; }
221
- static get originalStyleUrls() {
222
- return {
223
- "$": ["styles.css"]
224
- };
225
- }
226
- static get styleUrls() {
227
- return {
228
- "$": ["styles.css"]
229
- };
230
- }
231
- static get properties() {
232
- return {
233
- "htmlid": {
234
- "type": "string",
235
- "mutable": false,
236
- "complexType": {
237
- "original": "string",
238
- "resolved": "string",
239
- "references": {}
240
- },
241
- "required": false,
242
- "optional": false,
243
- "docs": {
244
- "tags": [],
245
- "text": "the id of the searchbar element"
246
- },
247
- "attribute": "htmlid",
248
- "reflect": true,
249
- "defaultValue": "`searchbar-${randomId()}`"
250
- },
251
- "preventSubmit": {
252
- "type": "boolean",
253
- "mutable": false,
254
- "complexType": {
255
- "original": "boolean",
256
- "resolved": "boolean",
257
- "references": {}
258
- },
259
- "required": false,
260
- "optional": true,
261
- "docs": {
262
- "tags": [],
263
- "text": "Prevent submit action"
264
- },
265
- "attribute": "prevent-submit",
266
- "reflect": false,
267
- "defaultValue": "false"
268
- },
269
- "value": {
270
- "type": "string",
271
- "mutable": false,
272
- "complexType": {
273
- "original": "string",
274
- "resolved": "string",
275
- "references": {}
276
- },
277
- "required": false,
278
- "optional": true,
279
- "docs": {
280
- "tags": [],
281
- "text": "Input search string"
282
- },
283
- "attribute": "value",
284
- "reflect": false
285
- },
286
- "placeholder": {
287
- "type": "string",
288
- "mutable": false,
289
- "complexType": {
290
- "original": "string",
291
- "resolved": "string",
292
- "references": {}
293
- },
294
- "required": false,
295
- "optional": true,
296
- "docs": {
297
- "tags": [],
298
- "text": "Search input placeholder"
299
- },
300
- "attribute": "placeholder",
301
- "reflect": false
302
- },
303
- "autocomplete": {
304
- "type": "boolean",
305
- "mutable": false,
306
- "complexType": {
307
- "original": "boolean",
308
- "resolved": "boolean",
309
- "references": {}
310
- },
311
- "required": false,
312
- "optional": true,
313
- "docs": {
314
- "tags": [],
315
- "text": "Show autocomplete results"
316
- },
317
- "attribute": "autocomplete",
318
- "reflect": false,
319
- "defaultValue": "false"
320
- },
321
- "autocompleteMinChars": {
322
- "type": "number",
323
- "mutable": false,
324
- "complexType": {
325
- "original": "number",
326
- "resolved": "number",
327
- "references": {}
328
- },
329
- "required": false,
330
- "optional": true,
331
- "docs": {
332
- "tags": [],
333
- "text": "Minimun number of characters to dispatch typing event"
334
- },
335
- "attribute": "autocomplete-min-chars",
336
- "reflect": false,
337
- "defaultValue": "3"
338
- },
339
- "resultsCount": {
340
- "type": "number",
341
- "mutable": false,
342
- "complexType": {
343
- "original": "number",
344
- "resolved": "number",
345
- "references": {}
346
- },
347
- "required": false,
348
- "optional": true,
349
- "docs": {
350
- "tags": [],
351
- "text": "Number of results shown - default all"
352
- },
353
- "attribute": "results-count",
354
- "reflect": false
355
- },
356
- "resultsEllipsis": {
357
- "type": "boolean",
358
- "mutable": false,
359
- "complexType": {
360
- "original": "boolean",
361
- "resolved": "boolean",
362
- "references": {}
363
- },
364
- "required": false,
365
- "optional": true,
366
- "docs": {
367
- "tags": [],
368
- "text": "Truncate results to single row"
369
- },
370
- "attribute": "results-ellipsis",
371
- "reflect": false,
372
- "defaultValue": "true"
373
- },
374
- "searchHelperLabel": {
375
- "type": "string",
376
- "mutable": false,
377
- "complexType": {
378
- "original": "string",
379
- "resolved": "string",
380
- "references": {}
381
- },
382
- "required": false,
383
- "optional": true,
384
- "docs": {
385
- "tags": [],
386
- "text": "Search helper text"
387
- },
388
- "attribute": "search-helper-label",
389
- "reflect": false,
390
- "defaultValue": "\"Cerca {searchString}\""
391
- },
392
- "resultsItems": {
393
- "type": "string",
394
- "mutable": false,
395
- "complexType": {
396
- "original": "SearchbarItem[] | string",
397
- "resolved": "SearchbarItem[] | string",
398
- "references": {
399
- "SearchbarItem": {
400
- "location": "import",
401
- "path": "../../../beans"
402
- }
403
- }
404
- },
405
- "required": false,
406
- "optional": true,
407
- "docs": {
408
- "tags": [],
409
- "text": "Autocomplete results items"
410
- },
411
- "attribute": "results-items",
412
- "reflect": false
413
- },
414
- "sortResultsItems": {
415
- "type": "boolean",
416
- "mutable": false,
417
- "complexType": {
418
- "original": "boolean",
419
- "resolved": "boolean",
420
- "references": {}
421
- },
422
- "required": false,
423
- "optional": true,
424
- "docs": {
425
- "tags": [],
426
- "text": "Sort autocomplete results items"
427
- },
428
- "attribute": "sort-results-items",
429
- "reflect": false,
430
- "defaultValue": "false"
431
- },
432
- "showSearchButton": {
433
- "type": "boolean",
434
- "mutable": false,
435
- "complexType": {
436
- "original": "boolean",
437
- "resolved": "boolean",
438
- "references": {}
439
- },
440
- "required": false,
441
- "optional": true,
442
- "docs": {
443
- "tags": [],
444
- "text": "Show submit button"
445
- },
446
- "attribute": "show-search-button",
447
- "reflect": false,
448
- "defaultValue": "false"
449
- },
450
- "searchButtonIconOnly": {
451
- "type": "boolean",
452
- "mutable": false,
453
- "complexType": {
454
- "original": "boolean",
455
- "resolved": "boolean",
456
- "references": {}
457
- },
458
- "required": false,
459
- "optional": true,
460
- "docs": {
461
- "tags": [],
462
- "text": "Set button icon without label"
463
- },
464
- "attribute": "search-button-icon-only",
465
- "reflect": false,
466
- "defaultValue": "false"
467
- },
468
- "size": {
469
- "type": "string",
470
- "mutable": false,
471
- "complexType": {
472
- "original": "ControlSize",
473
- "resolved": "ControlSize.BIG | ControlSize.SMALL | ControlSize.X_SMALL",
474
- "references": {
475
- "ControlSize": {
476
- "location": "import",
477
- "path": "../../../beans"
478
- }
479
- }
480
- },
481
- "required": false,
482
- "optional": true,
483
- "docs": {
484
- "tags": [],
485
- "text": "Available sizes: `big`, `small` and `x-small`. Defaults to `big`."
486
- },
487
- "attribute": "size",
488
- "reflect": false,
489
- "defaultValue": "ControlSize.BIG"
490
- },
491
- "variant": {
492
- "type": "string",
493
- "mutable": false,
494
- "complexType": {
495
- "original": "ButtonVariant",
496
- "resolved": "ButtonVariant.DARK_BG | ButtonVariant.PRIMARY | ButtonVariant.SECONDARY | ButtonVariant.TERTIARY",
497
- "references": {
498
- "ButtonVariant": {
499
- "location": "import",
500
- "path": "../../../beans"
501
- }
502
- }
503
- },
504
- "required": false,
505
- "optional": true,
506
- "docs": {
507
- "tags": [],
508
- "text": "Graphical variant: `primary`, `secondary`, `tertiary`. Defaults to `primary`."
509
- },
510
- "attribute": "variant",
511
- "reflect": false,
512
- "defaultValue": "ButtonVariant.PRIMARY"
513
- }
514
- };
515
- }
516
- static get states() {
517
- return {
518
- "searchString": {},
519
- "currResultsCount": {},
520
- "showResults": {}
521
- };
522
- }
523
- static get events() {
524
- return [{
525
- "method": "searchSubmit",
526
- "name": "searchSubmit",
527
- "bubbles": true,
528
- "cancelable": true,
529
- "composed": true,
530
- "docs": {
531
- "tags": [],
532
- "text": "Emitted on search submit, return search string"
533
- },
534
- "complexType": {
535
- "original": "string",
536
- "resolved": "string",
537
- "references": {}
538
- }
539
- }, {
540
- "method": "searchTyping",
541
- "name": "searchTyping",
542
- "bubbles": true,
543
- "cancelable": true,
544
- "composed": true,
545
- "docs": {
546
- "tags": [],
547
- "text": "Emitted on search typing, return search string"
548
- },
549
- "complexType": {
550
- "original": "string",
551
- "resolved": "string",
552
- "references": {}
553
- }
554
- }, {
555
- "method": "searchItemClick",
556
- "name": "searchItemClick",
557
- "bubbles": true,
558
- "cancelable": true,
559
- "composed": true,
560
- "docs": {
561
- "tags": [],
562
- "text": "Emitted on search result click, return item"
563
- },
564
- "complexType": {
565
- "original": "SearchbarItem",
566
- "resolved": "{ label: string; id?: string; icon?: string; category?: string; subcategory?: string; }",
567
- "references": {
568
- "SearchbarItem": {
569
- "location": "import",
570
- "path": "../../../beans"
571
- }
572
- }
573
- }
574
- }];
575
- }
576
- static get watchers() {
577
- return [{
578
- "propName": "resultsItems",
579
- "methodName": "watchItems"
580
- }, {
581
- "propName": "resultsCount",
582
- "methodName": "watchResultsCount"
583
- }, {
584
- "propName": "value",
585
- "methodName": "watchValue"
586
- }, {
587
- "propName": "searchString",
588
- "methodName": "watchSearchString"
589
- }];
590
- }
591
- static get listeners() {
592
- return [{
593
- "name": "click",
594
- "method": "handleOutsideClick",
595
- "target": "document",
596
- "capture": false,
597
- "passive": false
598
- }];
599
- }
600
- }
1
+ import { h, Host } from "@stencil/core";
2
+ import { ButtonVariant, ListDividerType, ControlSize, } from "../../../beans";
3
+ import { handleEnterKeydSubmit, randomId } from "../../../utils/utils";
4
+ /**
5
+ * @cssprop --z-searchbar-results-height - Max height of the results container (default: 540px)
6
+ */
7
+ export class ZSearchbar {
8
+ constructor() {
9
+ /** the id of the searchbar element */
10
+ this.htmlid = `searchbar-${randomId()}`;
11
+ /** Prevent submit action */
12
+ this.preventSubmit = false;
13
+ /** Show autocomplete results */
14
+ this.autocomplete = false;
15
+ /** Minimun number of characters to dispatch typing event */
16
+ this.autocompleteMinChars = 3;
17
+ /** Truncate results to single row */
18
+ this.resultsEllipsis = true;
19
+ /** Search helper text */
20
+ this.searchHelperLabel = "Cerca {searchString}";
21
+ /** Sort autocomplete results items */
22
+ this.sortResultsItems = false;
23
+ /** Show submit button */
24
+ this.showSearchButton = false;
25
+ /** Set button icon without label*/
26
+ this.searchButtonIconOnly = false;
27
+ /** Available sizes: `big`, `small` and `x-small`. Defaults to `big`. */
28
+ this.size = ControlSize.BIG;
29
+ /** Graphical variant: `primary`, `secondary`, `tertiary`. Defaults to `primary`. */
30
+ this.variant = ButtonVariant.PRIMARY;
31
+ this.searchString = this.value;
32
+ this.currResultsCount = 0;
33
+ this.showResults = false;
34
+ this.resultsItemsList = null;
35
+ }
36
+ emitSearchSubmit() {
37
+ this.searchSubmit.emit(this.inputRef.value);
38
+ }
39
+ emitSearchTyping(search) {
40
+ this.searchTyping.emit(search);
41
+ }
42
+ emitSearchItemClick(item) {
43
+ this.searchItemClick.emit(item);
44
+ }
45
+ watchItems() {
46
+ this.resultsItemsList = this.getResultsItemsList();
47
+ }
48
+ watchResultsCount() {
49
+ this.currResultsCount = this.resultsCount;
50
+ }
51
+ watchValue() {
52
+ this.searchString = this.value;
53
+ }
54
+ watchSearchString() {
55
+ this.emitSearchTyping(this.searchString);
56
+ if (!this.searchString) {
57
+ this.currResultsCount = this.resultsCount;
58
+ }
59
+ }
60
+ componentWillLoad() {
61
+ this.resultsItemsList = this.getResultsItemsList();
62
+ this.currResultsCount = this.resultsCount;
63
+ }
64
+ getResultsItemsList() {
65
+ return typeof this.resultsItems === "string" ? JSON.parse(this.resultsItems) : this.resultsItems;
66
+ }
67
+ getGroupedItems(items) {
68
+ const groupedItems = {};
69
+ items.forEach((item) => {
70
+ var _a;
71
+ const key = `${item === null || item === void 0 ? void 0 : item.category}${item === null || item === void 0 ? void 0 : item.subcategory}`;
72
+ groupedItems[key] = (_a = groupedItems[key]) !== null && _a !== void 0 ? _a : {
73
+ category: item === null || item === void 0 ? void 0 : item.category,
74
+ subcategory: item === null || item === void 0 ? void 0 : item.subcategory,
75
+ items: [],
76
+ };
77
+ groupedItems[key]["items"].push(item);
78
+ });
79
+ if (this.sortResultsItems) {
80
+ return Object.keys(groupedItems)
81
+ .sort()
82
+ .reduce((obj, key) => {
83
+ obj[key] = Object.assign(Object.assign({}, groupedItems[key]), { items: groupedItems[key]["items"].sort((a, b) => {
84
+ const nameA = a.label.toUpperCase();
85
+ const nameB = b.label.toUpperCase();
86
+ if (nameA < nameB) {
87
+ return -1;
88
+ }
89
+ if (nameA > nameB) {
90
+ return 1;
91
+ }
92
+ return 0;
93
+ }) });
94
+ return obj;
95
+ }, {});
96
+ }
97
+ return groupedItems;
98
+ }
99
+ checkResultsCount(counter) {
100
+ if (!this.currResultsCount || counter < this.currResultsCount) {
101
+ return true;
102
+ }
103
+ return false;
104
+ }
105
+ handleStopTyping(e) {
106
+ e.stopPropagation();
107
+ this.searchString = e.detail.value;
108
+ }
109
+ handleSubmit() {
110
+ if (this.preventSubmit) {
111
+ return;
112
+ }
113
+ this.emitSearchSubmit();
114
+ }
115
+ handleOutsideClick(e) {
116
+ const cp = e.composedPath();
117
+ const searchbar = cp.find((elem) => elem.nodeName === "Z-SEARCHBAR");
118
+ if (!searchbar || searchbar.htmlid !== this.htmlid) {
119
+ this.showResults = false;
120
+ return;
121
+ }
122
+ if (cp.find((elem) => { var _a; return (elem === null || elem === void 0 ? void 0 : elem.nodeName) === "Z-INPUT" || ((_a = elem === null || elem === void 0 ? void 0 : elem.classList) === null || _a === void 0 ? void 0 : _a.contains("results")); })) {
123
+ this.showResults = true;
124
+ return;
125
+ }
126
+ this.showResults = false;
127
+ }
128
+ renderInput() {
129
+ return (h("z-input", { ref: (val) => {
130
+ this.inputRef = val;
131
+ }, message: false, placeholder: this.placeholder, onStopTyping: (e) => this.handleStopTyping(e), onKeyUp: (e) => handleEnterKeydSubmit(e, () => this.handleSubmit()), value: this.value, size: this.size }));
132
+ }
133
+ renderButton() {
134
+ if (!this.showSearchButton) {
135
+ return null;
136
+ }
137
+ const iconProp = this.searchButtonIconOnly ? { icon: "search" } : null;
138
+ const buttonLabel = this.searchButtonIconOnly ? "" : "CERCA";
139
+ const defaultProps = Object.assign({ disabled: this.preventSubmit, variant: this.variant, size: this.size, onClick: () => this.handleSubmit() }, iconProp);
140
+ return h("z-button", Object.assign({}, defaultProps), buttonLabel);
141
+ }
142
+ renderResults() {
143
+ if (!this.showResults ||
144
+ !this.autocomplete ||
145
+ !this.searchString ||
146
+ this.searchString.length < this.autocompleteMinChars ||
147
+ !this.resultsItemsList) {
148
+ return null;
149
+ }
150
+ return (h("div", { class: "results-wrapper" }, h("div", { class: "results" }, this.renderResultsList())));
151
+ }
152
+ renderResultsList() {
153
+ var _a, _b;
154
+ if (this.preventSubmit && !((_a = this.resultsItemsList) === null || _a === void 0 ? void 0 : _a.length)) {
155
+ return (h("span", { class: "item item-no-results" }, "Non abbiamo trovato risultati per ", h("b", null, this.searchString), h("br", null), h("br", null), "Cosa puoi fare?", h("ul", null, h("li", null, "Verificare di aver scritto bene"), h("li", null, "Provare a cercare un'altra parola"), h("li", null, "Provare a cercare qualcosa di pi\u00F9 generico"))));
156
+ }
157
+ return (h("z-list", { role: "listbox", id: `list-${this.htmlid}` }, this.renderSearchHelper(!!((_b = this.resultsItemsList) === null || _b === void 0 ? void 0 : _b.length)), this.renderItems(), this.renderShowAllResults()));
158
+ }
159
+ renderItems() {
160
+ var _a;
161
+ if (!((_a = this.resultsItemsList) === null || _a === void 0 ? void 0 : _a.length)) {
162
+ return [];
163
+ }
164
+ const groupedItems = this.getGroupedItems(this.resultsItemsList);
165
+ const listGroups = [];
166
+ let counter = 0;
167
+ Object.values(groupedItems).forEach((groupItem, index, array) => {
168
+ if (this.checkResultsCount(counter)) {
169
+ const listGroupsElements = [];
170
+ groupItem.items.forEach((item, subindex, subarray) => {
171
+ if (this.checkResultsCount(counter)) {
172
+ const isLast = index === array.length - 1 && subindex === subarray.length - 1;
173
+ listGroupsElements.push(this.renderItem(item, subindex, !isLast));
174
+ }
175
+ counter++;
176
+ });
177
+ if (listGroupsElements.length) {
178
+ listGroups.push(h("z-list-group", { "divider-type": ListDividerType.ELEMENT }, this.renderItemCategory(groupItem), listGroupsElements));
179
+ }
180
+ }
181
+ });
182
+ return listGroups;
183
+ }
184
+ renderItem(item, key, divider) {
185
+ return (h("z-list-element", { id: `list-item-${this.htmlid}-${key}`, role: "option", tabindex: 0, dividerType: divider ? ListDividerType.ELEMENT : undefined, clickable: true, onClickItem: () => this.emitSearchItemClick(item) }, h("span", { class: { "item": true, "ellipsis": this.resultsEllipsis, "has-category": !!item.category } }, (item === null || item === void 0 ? void 0 : item.icon) && (h("z-icon", { class: "item-icon", name: item.icon })), h("span", { class: "item-label", title: item.label, innerHTML: this.renderItemLabel(item.label) }))));
186
+ }
187
+ renderItemLabel(label) {
188
+ if (!this.searchString) {
189
+ return label;
190
+ }
191
+ return label.replace(new RegExp(this.searchString.replace(/[.*+?^${}()|[\]\\]/g, "\\$&"), "gmi"), (found) => `<mark>${found}</mark>`);
192
+ }
193
+ renderItemCategory(groupItem) {
194
+ if (!(groupItem === null || groupItem === void 0 ? void 0 : groupItem.category)) {
195
+ return null;
196
+ }
197
+ return (h("span", { class: "category-heading", slot: "header-title" }, h("span", { class: "category" }, groupItem.category), (groupItem === null || groupItem === void 0 ? void 0 : groupItem.subcategory) && h("span", { class: "subcategory" }, groupItem.subcategory)));
198
+ }
199
+ renderSearchHelper(hasDivider = true) {
200
+ if (!this.autocomplete || this.preventSubmit || !this.searchString) {
201
+ return null;
202
+ }
203
+ return (h("z-list-element", { role: "option", tabindex: 0, dividerType: hasDivider ? ListDividerType.ELEMENT : undefined, clickable: true, id: `list-item-${this.htmlid}-search`, onClickItem: () => this.emitSearchSubmit() }, h("span", { class: "item item-search" }, h("z-icon", { class: "search-icon", name: "left-magnifying-glass" }), h("span", { class: "item-label", innerHTML: this.searchHelperLabel.replace("{searchString}", `<mark>${this.searchString}</mark>`) }))));
204
+ }
205
+ renderShowAllResults() {
206
+ var _a, _b;
207
+ if (!this.currResultsCount ||
208
+ !this.searchString ||
209
+ !((_a = this.resultsItemsList) === null || _a === void 0 ? void 0 : _a.length) ||
210
+ this.currResultsCount >= ((_b = this.resultsItemsList) === null || _b === void 0 ? void 0 : _b.length)) {
211
+ return null;
212
+ }
213
+ return (h("z-list-element", { role: "option", tabindex: 0, clickable: true, id: `list-item-${this.htmlid}-show-all`, onClickItem: () => (this.currResultsCount = 0), color: "color-primary01" }, h("div", { class: "item-show-all" }, "Vedi tutti i risultati")));
214
+ }
215
+ render() {
216
+ return (h(Host, { onFocus: () => (this.showResults = true), onClick: (e) => this.handleOutsideClick(e), class: { "has-submit": this.showSearchButton, "has-results": this.autocomplete } }, h("div", { class: "input-container" }, this.renderInput(), this.renderResults()), this.renderButton()));
217
+ }
218
+ static get is() { return "z-searchbar"; }
219
+ static get encapsulation() { return "shadow"; }
220
+ static get originalStyleUrls() {
221
+ return {
222
+ "$": ["styles.css"]
223
+ };
224
+ }
225
+ static get styleUrls() {
226
+ return {
227
+ "$": ["styles.css"]
228
+ };
229
+ }
230
+ static get properties() {
231
+ return {
232
+ "htmlid": {
233
+ "type": "string",
234
+ "mutable": false,
235
+ "complexType": {
236
+ "original": "string",
237
+ "resolved": "string",
238
+ "references": {}
239
+ },
240
+ "required": false,
241
+ "optional": false,
242
+ "docs": {
243
+ "tags": [],
244
+ "text": "the id of the searchbar element"
245
+ },
246
+ "attribute": "htmlid",
247
+ "reflect": true,
248
+ "defaultValue": "`searchbar-${randomId()}`"
249
+ },
250
+ "preventSubmit": {
251
+ "type": "boolean",
252
+ "mutable": false,
253
+ "complexType": {
254
+ "original": "boolean",
255
+ "resolved": "boolean",
256
+ "references": {}
257
+ },
258
+ "required": false,
259
+ "optional": true,
260
+ "docs": {
261
+ "tags": [],
262
+ "text": "Prevent submit action"
263
+ },
264
+ "attribute": "prevent-submit",
265
+ "reflect": false,
266
+ "defaultValue": "false"
267
+ },
268
+ "value": {
269
+ "type": "string",
270
+ "mutable": false,
271
+ "complexType": {
272
+ "original": "string",
273
+ "resolved": "string",
274
+ "references": {}
275
+ },
276
+ "required": false,
277
+ "optional": true,
278
+ "docs": {
279
+ "tags": [],
280
+ "text": "Input search string"
281
+ },
282
+ "attribute": "value",
283
+ "reflect": false
284
+ },
285
+ "placeholder": {
286
+ "type": "string",
287
+ "mutable": false,
288
+ "complexType": {
289
+ "original": "string",
290
+ "resolved": "string",
291
+ "references": {}
292
+ },
293
+ "required": false,
294
+ "optional": true,
295
+ "docs": {
296
+ "tags": [],
297
+ "text": "Search input placeholder"
298
+ },
299
+ "attribute": "placeholder",
300
+ "reflect": false
301
+ },
302
+ "autocomplete": {
303
+ "type": "boolean",
304
+ "mutable": false,
305
+ "complexType": {
306
+ "original": "boolean",
307
+ "resolved": "boolean",
308
+ "references": {}
309
+ },
310
+ "required": false,
311
+ "optional": true,
312
+ "docs": {
313
+ "tags": [],
314
+ "text": "Show autocomplete results"
315
+ },
316
+ "attribute": "autocomplete",
317
+ "reflect": false,
318
+ "defaultValue": "false"
319
+ },
320
+ "autocompleteMinChars": {
321
+ "type": "number",
322
+ "mutable": false,
323
+ "complexType": {
324
+ "original": "number",
325
+ "resolved": "number",
326
+ "references": {}
327
+ },
328
+ "required": false,
329
+ "optional": true,
330
+ "docs": {
331
+ "tags": [],
332
+ "text": "Minimun number of characters to dispatch typing event"
333
+ },
334
+ "attribute": "autocomplete-min-chars",
335
+ "reflect": false,
336
+ "defaultValue": "3"
337
+ },
338
+ "resultsCount": {
339
+ "type": "number",
340
+ "mutable": false,
341
+ "complexType": {
342
+ "original": "number",
343
+ "resolved": "number",
344
+ "references": {}
345
+ },
346
+ "required": false,
347
+ "optional": true,
348
+ "docs": {
349
+ "tags": [],
350
+ "text": "Number of results shown - default all"
351
+ },
352
+ "attribute": "results-count",
353
+ "reflect": false
354
+ },
355
+ "resultsEllipsis": {
356
+ "type": "boolean",
357
+ "mutable": false,
358
+ "complexType": {
359
+ "original": "boolean",
360
+ "resolved": "boolean",
361
+ "references": {}
362
+ },
363
+ "required": false,
364
+ "optional": true,
365
+ "docs": {
366
+ "tags": [],
367
+ "text": "Truncate results to single row"
368
+ },
369
+ "attribute": "results-ellipsis",
370
+ "reflect": false,
371
+ "defaultValue": "true"
372
+ },
373
+ "searchHelperLabel": {
374
+ "type": "string",
375
+ "mutable": false,
376
+ "complexType": {
377
+ "original": "string",
378
+ "resolved": "string",
379
+ "references": {}
380
+ },
381
+ "required": false,
382
+ "optional": true,
383
+ "docs": {
384
+ "tags": [],
385
+ "text": "Search helper text"
386
+ },
387
+ "attribute": "search-helper-label",
388
+ "reflect": false,
389
+ "defaultValue": "\"Cerca {searchString}\""
390
+ },
391
+ "resultsItems": {
392
+ "type": "string",
393
+ "mutable": false,
394
+ "complexType": {
395
+ "original": "SearchbarItem[] | string",
396
+ "resolved": "SearchbarItem[] | string",
397
+ "references": {
398
+ "SearchbarItem": {
399
+ "location": "import",
400
+ "path": "../../../beans"
401
+ }
402
+ }
403
+ },
404
+ "required": false,
405
+ "optional": true,
406
+ "docs": {
407
+ "tags": [],
408
+ "text": "Autocomplete results items"
409
+ },
410
+ "attribute": "results-items",
411
+ "reflect": false
412
+ },
413
+ "sortResultsItems": {
414
+ "type": "boolean",
415
+ "mutable": false,
416
+ "complexType": {
417
+ "original": "boolean",
418
+ "resolved": "boolean",
419
+ "references": {}
420
+ },
421
+ "required": false,
422
+ "optional": true,
423
+ "docs": {
424
+ "tags": [],
425
+ "text": "Sort autocomplete results items"
426
+ },
427
+ "attribute": "sort-results-items",
428
+ "reflect": false,
429
+ "defaultValue": "false"
430
+ },
431
+ "showSearchButton": {
432
+ "type": "boolean",
433
+ "mutable": false,
434
+ "complexType": {
435
+ "original": "boolean",
436
+ "resolved": "boolean",
437
+ "references": {}
438
+ },
439
+ "required": false,
440
+ "optional": true,
441
+ "docs": {
442
+ "tags": [],
443
+ "text": "Show submit button"
444
+ },
445
+ "attribute": "show-search-button",
446
+ "reflect": false,
447
+ "defaultValue": "false"
448
+ },
449
+ "searchButtonIconOnly": {
450
+ "type": "boolean",
451
+ "mutable": false,
452
+ "complexType": {
453
+ "original": "boolean",
454
+ "resolved": "boolean",
455
+ "references": {}
456
+ },
457
+ "required": false,
458
+ "optional": true,
459
+ "docs": {
460
+ "tags": [],
461
+ "text": "Set button icon without label"
462
+ },
463
+ "attribute": "search-button-icon-only",
464
+ "reflect": false,
465
+ "defaultValue": "false"
466
+ },
467
+ "size": {
468
+ "type": "string",
469
+ "mutable": false,
470
+ "complexType": {
471
+ "original": "ControlSize",
472
+ "resolved": "ControlSize.BIG | ControlSize.SMALL | ControlSize.X_SMALL",
473
+ "references": {
474
+ "ControlSize": {
475
+ "location": "import",
476
+ "path": "../../../beans"
477
+ }
478
+ }
479
+ },
480
+ "required": false,
481
+ "optional": true,
482
+ "docs": {
483
+ "tags": [],
484
+ "text": "Available sizes: `big`, `small` and `x-small`. Defaults to `big`."
485
+ },
486
+ "attribute": "size",
487
+ "reflect": false,
488
+ "defaultValue": "ControlSize.BIG"
489
+ },
490
+ "variant": {
491
+ "type": "string",
492
+ "mutable": false,
493
+ "complexType": {
494
+ "original": "ButtonVariant",
495
+ "resolved": "ButtonVariant.DARK_BG | ButtonVariant.PRIMARY | ButtonVariant.SECONDARY | ButtonVariant.TERTIARY",
496
+ "references": {
497
+ "ButtonVariant": {
498
+ "location": "import",
499
+ "path": "../../../beans"
500
+ }
501
+ }
502
+ },
503
+ "required": false,
504
+ "optional": true,
505
+ "docs": {
506
+ "tags": [],
507
+ "text": "Graphical variant: `primary`, `secondary`, `tertiary`. Defaults to `primary`."
508
+ },
509
+ "attribute": "variant",
510
+ "reflect": false,
511
+ "defaultValue": "ButtonVariant.PRIMARY"
512
+ }
513
+ };
514
+ }
515
+ static get states() {
516
+ return {
517
+ "searchString": {},
518
+ "currResultsCount": {},
519
+ "showResults": {}
520
+ };
521
+ }
522
+ static get events() {
523
+ return [{
524
+ "method": "searchSubmit",
525
+ "name": "searchSubmit",
526
+ "bubbles": true,
527
+ "cancelable": true,
528
+ "composed": true,
529
+ "docs": {
530
+ "tags": [],
531
+ "text": "Emitted on search submit, return search string"
532
+ },
533
+ "complexType": {
534
+ "original": "string",
535
+ "resolved": "string",
536
+ "references": {}
537
+ }
538
+ }, {
539
+ "method": "searchTyping",
540
+ "name": "searchTyping",
541
+ "bubbles": true,
542
+ "cancelable": true,
543
+ "composed": true,
544
+ "docs": {
545
+ "tags": [],
546
+ "text": "Emitted on search typing, return search string"
547
+ },
548
+ "complexType": {
549
+ "original": "string",
550
+ "resolved": "string",
551
+ "references": {}
552
+ }
553
+ }, {
554
+ "method": "searchItemClick",
555
+ "name": "searchItemClick",
556
+ "bubbles": true,
557
+ "cancelable": true,
558
+ "composed": true,
559
+ "docs": {
560
+ "tags": [],
561
+ "text": "Emitted on search result click, return item"
562
+ },
563
+ "complexType": {
564
+ "original": "SearchbarItem",
565
+ "resolved": "{ label: string; id?: string; icon?: string; category?: string; subcategory?: string; }",
566
+ "references": {
567
+ "SearchbarItem": {
568
+ "location": "import",
569
+ "path": "../../../beans"
570
+ }
571
+ }
572
+ }
573
+ }];
574
+ }
575
+ static get watchers() {
576
+ return [{
577
+ "propName": "resultsItems",
578
+ "methodName": "watchItems"
579
+ }, {
580
+ "propName": "resultsCount",
581
+ "methodName": "watchResultsCount"
582
+ }, {
583
+ "propName": "value",
584
+ "methodName": "watchValue"
585
+ }, {
586
+ "propName": "searchString",
587
+ "methodName": "watchSearchString"
588
+ }];
589
+ }
590
+ static get listeners() {
591
+ return [{
592
+ "name": "click",
593
+ "method": "handleOutsideClick",
594
+ "target": "document",
595
+ "capture": false,
596
+ "passive": false
597
+ }];
598
+ }
599
+ }