@zanichelli/albe-web-components 18.7.7-RC1 → 18.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (549) hide show
  1. package/CHANGELOG.md +30 -0
  2. package/dist/cjs/index-96af6326.js +4 -0
  3. package/dist/cjs/loader.cjs.js +1 -1
  4. package/dist/cjs/web-components-library.cjs.js +1 -1
  5. package/dist/cjs/z-alert.cjs.entry.js +1 -1
  6. package/dist/cjs/z-app-header_12.cjs.entry.js +18 -18
  7. package/dist/cjs/z-app-header_12.cjs.entry.js.map +1 -1
  8. package/dist/cjs/z-aria-alert.cjs.entry.js +1 -1
  9. package/dist/cjs/z-avatar.cjs.entry.js +2 -2
  10. package/dist/cjs/z-book-card.cjs.entry.js +15 -14
  11. package/dist/cjs/z-book-card.cjs.entry.js.map +1 -1
  12. package/dist/{components/placeholder-cover.js → cjs/z-book-cover.cjs.entry.js} +26 -2
  13. package/dist/cjs/z-book-cover.cjs.entry.js.map +1 -0
  14. package/dist/cjs/z-breadcrumb.cjs.entry.js +2 -2
  15. package/dist/cjs/z-button-sort.cjs.entry.js +1 -1
  16. package/dist/cjs/z-chip.cjs.entry.js +2 -2
  17. package/dist/cjs/z-combobox.cjs.entry.js +26 -41
  18. package/dist/cjs/z-combobox.cjs.entry.js.map +1 -1
  19. package/dist/cjs/z-cover-hero.cjs.entry.js +2 -2
  20. package/dist/cjs/z-dragdrop-area_2.cjs.entry.js +4 -4
  21. package/dist/cjs/z-ghost-loading.cjs.entry.js +1 -1
  22. package/dist/cjs/z-info-box.cjs.entry.js +1 -1
  23. package/dist/cjs/z-info-reveal.cjs.entry.js +1 -1
  24. package/dist/cjs/z-logo.cjs.entry.js +1 -1
  25. package/dist/cjs/z-menu-section.cjs.entry.js +1 -1
  26. package/dist/cjs/z-myz-card-alert.cjs.entry.js +1 -1
  27. package/dist/cjs/z-myz-card-dictionary.cjs.entry.js +1 -1
  28. package/dist/cjs/z-myz-card-footer-sections.cjs.entry.js +1 -1
  29. package/dist/cjs/z-myz-card-footer.cjs.entry.js +1 -1
  30. package/dist/cjs/z-myz-card-icon.cjs.entry.js +1 -1
  31. package/dist/cjs/z-myz-card-info.cjs.entry.js +1 -1
  32. package/dist/cjs/z-myz-card-list.cjs.entry.js +1 -1
  33. package/dist/cjs/z-myz-card_4.cjs.entry.js +4 -4
  34. package/dist/cjs/z-myz-list-item.cjs.entry.js +1 -1
  35. package/dist/cjs/z-myz-list.cjs.entry.js +1 -1
  36. package/dist/cjs/z-navigation-tabs.cjs.entry.js +2 -2
  37. package/dist/cjs/z-notification.cjs.entry.js +1 -1
  38. package/dist/cjs/z-otp.cjs.entry.js +2 -2
  39. package/dist/cjs/z-panel-elem.cjs.entry.js +2 -2
  40. package/dist/cjs/z-popover.cjs.entry.js +1 -1
  41. package/dist/cjs/z-result-card.cjs.entry.js +6 -14
  42. package/dist/cjs/z-result-card.cjs.entry.js.map +1 -1
  43. package/dist/cjs/z-select.cjs.entry.js +2 -2
  44. package/dist/cjs/z-select.cjs.entry.js.map +1 -1
  45. package/dist/cjs/z-skip-to-content.cjs.entry.js +1 -1
  46. package/dist/cjs/z-stepper-item.cjs.entry.js +1 -1
  47. package/dist/cjs/z-stepper.cjs.entry.js +1 -1
  48. package/dist/cjs/z-toast-notification-list.cjs.entry.js +1 -1
  49. package/dist/cjs/z-toast-notification.cjs.entry.js +1 -1
  50. package/dist/cjs/z-toggle-button.cjs.entry.js +2 -2
  51. package/dist/cjs/z-toggle-switch.cjs.entry.js +3 -3
  52. package/dist/cjs/z-tooltip.cjs.entry.js +1 -1
  53. package/dist/cjs/z-visually-hidden.cjs.entry.js +1 -1
  54. package/dist/collection/collection-manifest.json +2 -1
  55. package/dist/collection/components/book-card/z-book-card/index.js +66 -29
  56. package/dist/collection/components/book-card/z-book-card/index.js.map +1 -1
  57. package/dist/collection/components/book-card/z-book-card/index.stories.js +11 -13
  58. package/dist/collection/components/book-card/z-book-card/index.stories.js.map +1 -1
  59. package/dist/collection/components/book-card/z-book-card/styles.css +35 -67
  60. package/dist/collection/components/z-app-header/index.js +2 -1
  61. package/dist/collection/components/z-app-header/index.js.map +1 -1
  62. package/dist/collection/components/z-app-header/index.stories.js +16 -0
  63. package/dist/collection/components/z-app-header/index.stories.js.map +1 -1
  64. package/dist/collection/components/z-app-header/styles.css +2 -1
  65. package/dist/collection/components/z-aria-alert/index.js +1 -1
  66. package/dist/collection/components/z-avatar/index.js +2 -2
  67. package/dist/collection/components/z-book-cover/index.js +113 -0
  68. package/dist/collection/components/z-book-cover/index.js.map +1 -0
  69. package/dist/collection/components/z-book-cover/index.stories.js +31 -0
  70. package/dist/collection/components/z-book-cover/index.stories.js.map +1 -0
  71. package/dist/collection/components/z-book-cover/styles.css +95 -0
  72. package/dist/collection/components/z-breadcrumb/index.js +2 -2
  73. package/dist/collection/components/z-button-sort/index.js +1 -1
  74. package/dist/collection/components/z-chip/index.js +2 -2
  75. package/dist/collection/components/z-combobox/index.js +25 -40
  76. package/dist/collection/components/z-combobox/index.js.map +1 -1
  77. package/dist/collection/components/z-combobox/styles.css +0 -8
  78. package/dist/collection/components/z-cover-hero/index.js +2 -2
  79. package/dist/collection/components/z-divider/index.js +1 -1
  80. package/dist/collection/components/z-ghost-loading/index.js +1 -1
  81. package/dist/collection/components/z-info-box/index.js +1 -1
  82. package/dist/collection/components/z-info-reveal/index.js +1 -1
  83. package/dist/collection/components/z-input/index.js +17 -19
  84. package/dist/collection/components/z-input/index.js.map +1 -1
  85. package/dist/collection/components/z-input-message/index.js +1 -1
  86. package/dist/collection/components/z-logo/index.js +1 -1
  87. package/dist/collection/components/z-menu-section/index.js +1 -1
  88. package/dist/collection/components/z-modal/index.js +4 -4
  89. package/dist/collection/components/z-navigation-tabs/index.js +2 -2
  90. package/dist/collection/components/z-notification/index.js +1 -1
  91. package/dist/collection/components/z-offcanvas/index.js +21 -1
  92. package/dist/collection/components/z-offcanvas/index.js.map +1 -1
  93. package/dist/collection/components/z-offcanvas/index.stories.js +12 -0
  94. package/dist/collection/components/z-offcanvas/index.stories.js.map +1 -1
  95. package/dist/collection/components/z-offcanvas/styles.css +5 -4
  96. package/dist/collection/components/z-panel-elem/index.js +2 -2
  97. package/dist/collection/components/z-popover/index.js +1 -1
  98. package/dist/collection/components/{result-card/z-result-card → z-result-card}/index.js +10 -18
  99. package/dist/collection/components/z-result-card/index.js.map +1 -0
  100. package/dist/collection/components/{result-card/z-result-card → z-result-card}/styles.css +39 -108
  101. package/dist/collection/components/z-result-card/z-result-card.stories.js.map +1 -0
  102. package/dist/collection/components/z-searchbar/index.js +1 -1
  103. package/dist/collection/components/z-select/index.js +2 -2
  104. package/dist/collection/components/z-select/index.js.map +1 -1
  105. package/dist/collection/components/z-skip-to-content/index.js +1 -1
  106. package/dist/collection/components/z-stepper/index.js +1 -1
  107. package/dist/collection/components/z-stepper-item/index.js +1 -1
  108. package/dist/collection/components/z-toast-notification/index.js +1 -1
  109. package/dist/collection/components/z-toast-notification-list/index.js +1 -1
  110. package/dist/collection/components/z-toggle-button/index.js +2 -2
  111. package/dist/collection/components/z-toggle-switch/index.js +3 -3
  112. package/dist/collection/components/z-tooltip/index.js +1 -1
  113. package/dist/collection/components/z-visually-hidden/index.js +1 -1
  114. package/dist/collection/snowflakes/myz/card/z-myz-card/index.js +1 -1
  115. package/dist/collection/snowflakes/myz/card/z-myz-card-alert/index.js +1 -1
  116. package/dist/collection/snowflakes/myz/card/z-myz-card-body/index.js +1 -1
  117. package/dist/collection/snowflakes/myz/card/z-myz-card-cover/index.js +1 -1
  118. package/dist/collection/snowflakes/myz/card/z-myz-card-dictionary/index.js +1 -1
  119. package/dist/collection/snowflakes/myz/card/z-myz-card-footer/index.js +1 -1
  120. package/dist/collection/snowflakes/myz/card/z-myz-card-footer-sections/index.js +1 -1
  121. package/dist/collection/snowflakes/myz/card/z-myz-card-header/index.js +1 -1
  122. package/dist/collection/snowflakes/myz/card/z-myz-card-icon/index.js +1 -1
  123. package/dist/collection/snowflakes/myz/card/z-myz-card-info/index.js +1 -1
  124. package/dist/collection/snowflakes/myz/card/z-myz-card-list/index.js +1 -1
  125. package/dist/collection/snowflakes/myz/list/z-myz-list/index.js +1 -1
  126. package/dist/collection/snowflakes/myz/list/z-myz-list-item/index.js +1 -1
  127. package/dist/collection/snowflakes/myz/z-alert/index.js +1 -1
  128. package/dist/collection/snowflakes/myz/z-otp/index.js +2 -2
  129. package/dist/components/index.d.ts +3 -1
  130. package/dist/components/index.js +1 -0
  131. package/dist/components/index.js.map +1 -1
  132. package/dist/components/index10.js +24 -65
  133. package/dist/components/index10.js.map +1 -1
  134. package/dist/components/index11.js +58 -308
  135. package/dist/components/index11.js.map +1 -1
  136. package/dist/components/index12.js +311 -37
  137. package/dist/components/index12.js.map +1 -1
  138. package/dist/components/index13.js +40 -27
  139. package/dist/components/index13.js.map +1 -1
  140. package/dist/components/index14.js +23 -151
  141. package/dist/components/index14.js.map +1 -1
  142. package/dist/components/index15.js +144 -37
  143. package/dist/components/index15.js.map +1 -1
  144. package/dist/components/index16.js +42 -1008
  145. package/dist/components/index16.js.map +1 -1
  146. package/dist/components/index17.js +1012 -37
  147. package/dist/components/index17.js.map +1 -1
  148. package/dist/components/index18.js +42 -10
  149. package/dist/components/index18.js.map +1 -1
  150. package/dist/components/index19.js +10 -22
  151. package/dist/components/index19.js.map +1 -1
  152. package/dist/components/index20.js +16 -33
  153. package/dist/components/index20.js.map +1 -1
  154. package/dist/components/index21.js +39 -43
  155. package/dist/components/index21.js.map +1 -1
  156. package/dist/components/index22.js +44 -81
  157. package/dist/components/index22.js.map +1 -1
  158. package/dist/components/index23.js +60 -430
  159. package/dist/components/index23.js.map +1 -1
  160. package/dist/components/index24.js +415 -341
  161. package/dist/components/index24.js.map +1 -1
  162. package/dist/components/index25.js +376 -19
  163. package/dist/components/index25.js.map +1 -1
  164. package/dist/components/index26.js +45 -0
  165. package/dist/components/index26.js.map +1 -0
  166. package/dist/components/index3.js +1 -1
  167. package/dist/components/index4.js +23 -60
  168. package/dist/components/index4.js.map +1 -1
  169. package/dist/components/index5.js +53 -27
  170. package/dist/components/index5.js.map +1 -1
  171. package/dist/components/index6.js +34 -18
  172. package/dist/components/index6.js.map +1 -1
  173. package/dist/components/index7.js +18 -41
  174. package/dist/components/index7.js.map +1 -1
  175. package/dist/components/index8.js +41 -11
  176. package/dist/components/index8.js.map +1 -1
  177. package/dist/components/index9.js +10 -28
  178. package/dist/components/index9.js.map +1 -1
  179. package/dist/components/z-accordion.js +1 -1
  180. package/dist/components/z-anchor-navigation.js +2 -2
  181. package/dist/components/z-app-header-deprecated.js +11 -11
  182. package/dist/components/z-app-header.js +13 -13
  183. package/dist/components/z-app-header.js.map +1 -1
  184. package/dist/components/z-aria-alert.js +1 -1
  185. package/dist/components/z-avatar.js +2 -2
  186. package/dist/components/z-book-card-app.js +2 -2
  187. package/dist/components/z-book-card-deprecated.js +1 -1
  188. package/dist/components/z-book-card.js +26 -17
  189. package/dist/components/z-book-card.js.map +1 -1
  190. package/dist/components/z-book-cover.d.ts +11 -0
  191. package/dist/components/z-book-cover.js +8 -0
  192. package/dist/components/z-book-cover.js.map +1 -0
  193. package/dist/components/z-breadcrumb.js +8 -8
  194. package/dist/components/z-button-sort.js +2 -2
  195. package/dist/components/z-button.js +1 -1
  196. package/dist/components/z-card.js +1 -1
  197. package/dist/components/z-carousel.js +3 -3
  198. package/dist/components/z-chip.js +1 -1
  199. package/dist/components/z-combobox.js +32 -47
  200. package/dist/components/z-combobox.js.map +1 -1
  201. package/dist/components/z-cover-hero.js +2 -2
  202. package/dist/components/z-date-picker.js +3 -3
  203. package/dist/components/z-divider.js +1 -1
  204. package/dist/components/z-dragdrop-area.js +1 -1
  205. package/dist/components/z-file-upload.js +4 -4
  206. package/dist/components/z-file.js +3 -3
  207. package/dist/components/z-ghost-loading.js +1 -1
  208. package/dist/components/z-icon.js +1 -1
  209. package/dist/components/z-info-box.js +2 -2
  210. package/dist/components/z-info-reveal.js +1 -1
  211. package/dist/components/z-input-message.js +1 -1
  212. package/dist/components/z-input.js +1 -1
  213. package/dist/components/z-list-element.js +1 -1
  214. package/dist/components/z-list-group.js +1 -1
  215. package/dist/components/z-list.js +1 -1
  216. package/dist/components/z-logo.js +1 -1
  217. package/dist/components/z-menu-deprecated.js +1 -1
  218. package/dist/components/z-menu-section-deprecated.js +1 -1
  219. package/dist/components/z-menu-section.js +2 -2
  220. package/dist/components/z-menu.js +1 -1
  221. package/dist/components/z-modal.js +1 -1
  222. package/dist/components/z-myz-card-alert.js +2 -2
  223. package/dist/components/z-myz-card-body.js +1 -1
  224. package/dist/components/z-myz-card-cover.js +1 -1
  225. package/dist/components/z-myz-card-dictionary.js +7 -7
  226. package/dist/components/z-myz-card-footer-sections.js +1 -1
  227. package/dist/components/z-myz-card-footer.js +1 -1
  228. package/dist/components/z-myz-card-header.js +1 -1
  229. package/dist/components/z-myz-card-icon.js +2 -2
  230. package/dist/components/z-myz-card-info.js +3 -3
  231. package/dist/components/z-myz-card-list.js +1 -1
  232. package/dist/components/z-myz-card.js +1 -1
  233. package/dist/components/z-myz-list-item.js +1 -1
  234. package/dist/components/z-myz-list.js +3 -3
  235. package/dist/components/z-navigation-tabs.js +3 -3
  236. package/dist/components/z-notification.js +2 -2
  237. package/dist/components/z-offcanvas.js +1 -1
  238. package/dist/components/z-otp.js +4 -4
  239. package/dist/components/z-pagination.js +4 -4
  240. package/dist/components/z-panel-elem.js +3 -3
  241. package/dist/components/z-popover.js +1 -1
  242. package/dist/components/z-range-picker.js +3 -3
  243. package/dist/components/z-result-card.js +14 -16
  244. package/dist/components/z-result-card.js.map +1 -1
  245. package/dist/components/z-searchbar.js +1 -1
  246. package/dist/components/z-section-title.js +1 -1
  247. package/dist/components/z-select.js +10 -10
  248. package/dist/components/z-select.js.map +1 -1
  249. package/dist/components/z-skip-to-content.js +1 -1
  250. package/dist/components/z-slideshow.js +1 -1
  251. package/dist/components/z-stepper-item.js +2 -2
  252. package/dist/components/z-stepper.js +1 -1
  253. package/dist/components/z-table.js +1 -1
  254. package/dist/components/z-tag.js +1 -1
  255. package/dist/components/z-td.js +3 -3
  256. package/dist/components/z-th.js +3 -3
  257. package/dist/components/z-toast-notification-list.js +1 -1
  258. package/dist/components/z-toast-notification.js +2 -2
  259. package/dist/components/z-toggle-button.js +3 -3
  260. package/dist/components/z-toggle-switch.js +4 -4
  261. package/dist/components/z-tooltip.js +2 -2
  262. package/dist/components/z-tr.js +2 -2
  263. package/dist/components/z-tree-list.js +4 -4
  264. package/dist/components/z-visually-hidden.js +1 -1
  265. package/dist/esm/index-c8ceadeb.js +4 -0
  266. package/dist/esm/loader.js +1 -1
  267. package/dist/esm/web-components-library.js +1 -1
  268. package/dist/esm/z-alert.entry.js +1 -1
  269. package/dist/esm/z-app-header_12.entry.js +18 -18
  270. package/dist/esm/z-app-header_12.entry.js.map +1 -1
  271. package/dist/esm/z-aria-alert.entry.js +1 -1
  272. package/dist/esm/z-avatar.entry.js +2 -2
  273. package/dist/esm/z-book-card.entry.js +15 -14
  274. package/dist/esm/z-book-card.entry.js.map +1 -1
  275. package/dist/{cjs/placeholder-cover-b679e768.js → esm/z-book-cover.entry.js} +21 -3
  276. package/dist/esm/z-book-cover.entry.js.map +1 -0
  277. package/dist/esm/z-breadcrumb.entry.js +2 -2
  278. package/dist/esm/z-button-sort.entry.js +1 -1
  279. package/dist/esm/z-chip.entry.js +2 -2
  280. package/dist/esm/z-combobox.entry.js +26 -41
  281. package/dist/esm/z-combobox.entry.js.map +1 -1
  282. package/dist/esm/z-cover-hero.entry.js +2 -2
  283. package/dist/esm/z-dragdrop-area_2.entry.js +4 -4
  284. package/dist/esm/z-ghost-loading.entry.js +1 -1
  285. package/dist/esm/z-info-box.entry.js +1 -1
  286. package/dist/esm/z-info-reveal.entry.js +1 -1
  287. package/dist/esm/z-logo.entry.js +1 -1
  288. package/dist/esm/z-menu-section.entry.js +1 -1
  289. package/dist/esm/z-myz-card-alert.entry.js +1 -1
  290. package/dist/esm/z-myz-card-dictionary.entry.js +1 -1
  291. package/dist/esm/z-myz-card-footer-sections.entry.js +1 -1
  292. package/dist/esm/z-myz-card-footer.entry.js +1 -1
  293. package/dist/esm/z-myz-card-icon.entry.js +1 -1
  294. package/dist/esm/z-myz-card-info.entry.js +1 -1
  295. package/dist/esm/z-myz-card-list.entry.js +1 -1
  296. package/dist/esm/z-myz-card_4.entry.js +4 -4
  297. package/dist/esm/z-myz-list-item.entry.js +1 -1
  298. package/dist/esm/z-myz-list.entry.js +1 -1
  299. package/dist/esm/z-navigation-tabs.entry.js +2 -2
  300. package/dist/esm/z-notification.entry.js +1 -1
  301. package/dist/esm/z-otp.entry.js +2 -2
  302. package/dist/esm/z-panel-elem.entry.js +2 -2
  303. package/dist/esm/z-popover.entry.js +1 -1
  304. package/dist/esm/z-result-card.entry.js +6 -14
  305. package/dist/esm/z-result-card.entry.js.map +1 -1
  306. package/dist/esm/z-select.entry.js +2 -2
  307. package/dist/esm/z-select.entry.js.map +1 -1
  308. package/dist/esm/z-skip-to-content.entry.js +1 -1
  309. package/dist/esm/z-stepper-item.entry.js +1 -1
  310. package/dist/esm/z-stepper.entry.js +1 -1
  311. package/dist/esm/z-toast-notification-list.entry.js +1 -1
  312. package/dist/esm/z-toast-notification.entry.js +1 -1
  313. package/dist/esm/z-toggle-button.entry.js +2 -2
  314. package/dist/esm/z-toggle-switch.entry.js +3 -3
  315. package/dist/esm/z-tooltip.entry.js +1 -1
  316. package/dist/esm/z-visually-hidden.entry.js +1 -1
  317. package/dist/types/components/book-card/z-book-card/index.d.ts +20 -16
  318. package/dist/types/components/book-card/z-book-card/index.stories.d.ts +2 -35
  319. package/dist/types/components/z-app-header/index.d.ts +1 -0
  320. package/dist/types/components/z-app-header/index.stories.d.ts +8 -0
  321. package/dist/types/components/z-book-cover/index.d.ts +23 -0
  322. package/dist/types/components/z-book-cover/index.stories.d.ts +21 -0
  323. package/dist/types/components/z-combobox/index.d.ts +1 -0
  324. package/dist/types/components/z-input/index.d.ts +4 -4
  325. package/dist/types/components/z-offcanvas/index.d.ts +2 -0
  326. package/dist/types/components/z-offcanvas/index.stories.d.ts +9 -0
  327. package/dist/types/components/{result-card/z-result-card → z-result-card}/index.d.ts +8 -26
  328. package/dist/types/components.d.ts +185 -76
  329. package/{www/build/p-8117a929.entry.js → dist/web-components-library/p-01f941c2.entry.js} +2 -2
  330. package/dist/web-components-library/{p-0756fe6f.entry.js → p-028dd72a.entry.js} +2 -2
  331. package/{www/build/p-e160545f.entry.js → dist/web-components-library/p-0990d475.entry.js} +2 -2
  332. package/{www/build/p-e160545f.entry.js.map → dist/web-components-library/p-0990d475.entry.js.map} +1 -1
  333. package/dist/web-components-library/{p-6ca0ee2f.entry.js → p-0a49dd1c.entry.js} +2 -2
  334. package/dist/web-components-library/{p-09ba466b.entry.js → p-240de9aa.entry.js} +2 -2
  335. package/dist/web-components-library/{p-f1c55eda.entry.js → p-28534fb5.entry.js} +2 -2
  336. package/{www/build/p-966cbf03.entry.js → dist/web-components-library/p-28d83c86.entry.js} +2 -2
  337. package/dist/web-components-library/{p-cbab66f7.entry.js → p-2bdac94e.entry.js} +2 -2
  338. package/dist/web-components-library/{p-e8419614.entry.js → p-2ffdfbb1.entry.js} +2 -2
  339. package/dist/web-components-library/p-31bd2a1c.entry.js +2 -0
  340. package/dist/web-components-library/p-31bd2a1c.entry.js.map +1 -0
  341. package/dist/web-components-library/{p-8c52635e.entry.js → p-4551b0df.entry.js} +2 -2
  342. package/dist/web-components-library/{p-e639e1bc.entry.js → p-460b2068.entry.js} +2 -2
  343. package/{www/build/p-0eab3c09.entry.js → dist/web-components-library/p-46ea0b2e.entry.js} +3 -3
  344. package/dist/web-components-library/{p-689b0280.entry.js → p-4a257653.entry.js} +2 -2
  345. package/dist/web-components-library/{p-8dec332e.entry.js → p-4aaf0172.entry.js} +2 -2
  346. package/dist/web-components-library/{p-d6d3a92a.entry.js → p-4affbb99.entry.js} +2 -2
  347. package/dist/web-components-library/{p-caa491ca.entry.js → p-5989465b.entry.js} +2 -2
  348. package/dist/web-components-library/{p-d8aa6afa.entry.js → p-5a1f98a2.entry.js} +2 -2
  349. package/{www/build/p-d0d54d42.entry.js → dist/web-components-library/p-5c5882c6.entry.js} +2 -2
  350. package/dist/web-components-library/{p-01302e57.entry.js → p-5f94986f.entry.js} +2 -2
  351. package/dist/web-components-library/p-6cff173f.entry.js +2 -0
  352. package/dist/web-components-library/{p-97608d16.entry.js.map → p-6cff173f.entry.js.map} +1 -1
  353. package/dist/web-components-library/p-6cffbabc.entry.js +2 -0
  354. package/{www/build/p-ac585bcd.entry.js.map → dist/web-components-library/p-6cffbabc.entry.js.map} +1 -1
  355. package/dist/web-components-library/{p-1ad8810a.entry.js → p-7194003a.entry.js} +2 -2
  356. package/{www/build/p-2b8eb0c2.entry.js → dist/web-components-library/p-78146cef.entry.js} +2 -2
  357. package/dist/web-components-library/{p-4fbcf534.entry.js → p-7a4f6a5b.entry.js} +2 -2
  358. package/dist/web-components-library/{p-6793061a.entry.js → p-7ceddb7a.entry.js} +2 -2
  359. package/dist/web-components-library/{p-4c730d4a.entry.js → p-86160fe3.entry.js} +2 -2
  360. package/dist/web-components-library/{p-63c1bde5.entry.js → p-863fd1c4.entry.js} +2 -2
  361. package/dist/web-components-library/p-8fc213c2.entry.js +2 -0
  362. package/dist/web-components-library/p-8fc213c2.entry.js.map +1 -0
  363. package/dist/web-components-library/{p-5cf3a797.entry.js → p-943db3a8.entry.js} +2 -2
  364. package/dist/web-components-library/{p-dc5ba112.entry.js → p-94916bdf.entry.js} +2 -2
  365. package/dist/web-components-library/p-a2e87cec.entry.js +2 -0
  366. package/dist/web-components-library/{p-badd98ad.entry.js → p-ac477ae7.entry.js} +2 -2
  367. package/dist/web-components-library/p-af5e8524.entry.js +2 -0
  368. package/dist/web-components-library/{p-7916e0f7.entry.js → p-b3f1b5c1.entry.js} +2 -2
  369. package/dist/web-components-library/{p-962c7f6b.entry.js → p-ceeb3e2a.entry.js} +2 -2
  370. package/dist/web-components-library/p-d60684d5.entry.js +2 -0
  371. package/dist/web-components-library/p-d60684d5.entry.js.map +1 -0
  372. package/dist/web-components-library/{p-cb1de7b4.entry.js → p-dc086eb5.entry.js} +2 -2
  373. package/dist/web-components-library/p-deb7f8d7.entry.js +2 -0
  374. package/dist/web-components-library/{p-6273db7f.entry.js → p-e0b88075.entry.js} +2 -2
  375. package/dist/web-components-library/p-e4bb1256.entry.js +2 -0
  376. package/dist/web-components-library/p-e4bb1256.entry.js.map +1 -0
  377. package/dist/web-components-library/{p-e231e811.entry.js → p-f487290e.entry.js} +2 -2
  378. package/dist/web-components-library/p-f4bac89b.entry.js +2 -0
  379. package/dist/web-components-library/p-f4bac89b.entry.js.map +1 -0
  380. package/dist/web-components-library/web-components-library.esm.js +1 -1
  381. package/dist/web-components-library/web-components-library.esm.js.map +1 -1
  382. package/package.json +2 -3
  383. package/react/components.d.ts +1 -0
  384. package/react/components.js +3 -2
  385. package/react/components.js.map +1 -1
  386. package/{dist/web-components-library/p-8117a929.entry.js → www/build/p-01f941c2.entry.js} +2 -2
  387. package/www/build/{p-0756fe6f.entry.js → p-028dd72a.entry.js} +2 -2
  388. package/{dist/web-components-library/p-e160545f.entry.js → www/build/p-0990d475.entry.js} +2 -2
  389. package/{dist/web-components-library/p-e160545f.entry.js.map → www/build/p-0990d475.entry.js.map} +1 -1
  390. package/www/build/{p-6ca0ee2f.entry.js → p-0a49dd1c.entry.js} +2 -2
  391. package/www/build/{p-09ba466b.entry.js → p-240de9aa.entry.js} +2 -2
  392. package/www/build/{p-f1c55eda.entry.js → p-28534fb5.entry.js} +2 -2
  393. package/{dist/web-components-library/p-966cbf03.entry.js → www/build/p-28d83c86.entry.js} +2 -2
  394. package/www/build/{p-cbab66f7.entry.js → p-2bdac94e.entry.js} +2 -2
  395. package/www/build/{p-e8419614.entry.js → p-2ffdfbb1.entry.js} +2 -2
  396. package/www/build/p-31bd2a1c.entry.js +2 -0
  397. package/www/build/p-31bd2a1c.entry.js.map +1 -0
  398. package/www/build/{p-8c52635e.entry.js → p-4551b0df.entry.js} +2 -2
  399. package/www/build/{p-e639e1bc.entry.js → p-460b2068.entry.js} +2 -2
  400. package/{dist/web-components-library/p-0eab3c09.entry.js → www/build/p-46ea0b2e.entry.js} +3 -3
  401. package/www/build/{p-689b0280.entry.js → p-4a257653.entry.js} +2 -2
  402. package/www/build/{p-8dec332e.entry.js → p-4aaf0172.entry.js} +2 -2
  403. package/www/build/{p-d6d3a92a.entry.js → p-4affbb99.entry.js} +2 -2
  404. package/www/build/{p-caa491ca.entry.js → p-5989465b.entry.js} +2 -2
  405. package/www/build/{p-d8aa6afa.entry.js → p-5a1f98a2.entry.js} +2 -2
  406. package/{dist/web-components-library/p-d0d54d42.entry.js → www/build/p-5c5882c6.entry.js} +2 -2
  407. package/www/build/{p-01302e57.entry.js → p-5f94986f.entry.js} +2 -2
  408. package/www/build/p-6cff173f.entry.js +2 -0
  409. package/www/build/{p-97608d16.entry.js.map → p-6cff173f.entry.js.map} +1 -1
  410. package/www/build/p-6cffbabc.entry.js +2 -0
  411. package/{dist/web-components-library/p-ac585bcd.entry.js.map → www/build/p-6cffbabc.entry.js.map} +1 -1
  412. package/www/build/{p-1ad8810a.entry.js → p-7194003a.entry.js} +2 -2
  413. package/{dist/web-components-library/p-2b8eb0c2.entry.js → www/build/p-78146cef.entry.js} +2 -2
  414. package/www/build/{p-4fbcf534.entry.js → p-7a4f6a5b.entry.js} +2 -2
  415. package/www/build/{p-6793061a.entry.js → p-7ceddb7a.entry.js} +2 -2
  416. package/www/build/{p-4c730d4a.entry.js → p-86160fe3.entry.js} +2 -2
  417. package/www/build/{p-63c1bde5.entry.js → p-863fd1c4.entry.js} +2 -2
  418. package/www/build/p-8fc213c2.entry.js +2 -0
  419. package/www/build/p-8fc213c2.entry.js.map +1 -0
  420. package/www/build/{p-5cf3a797.entry.js → p-943db3a8.entry.js} +2 -2
  421. package/www/build/{p-dc5ba112.entry.js → p-94916bdf.entry.js} +2 -2
  422. package/www/build/p-a2e87cec.entry.js +2 -0
  423. package/www/build/{p-badd98ad.entry.js → p-ac477ae7.entry.js} +2 -2
  424. package/www/build/p-af5e8524.entry.js +2 -0
  425. package/www/build/{p-7916e0f7.entry.js → p-b3f1b5c1.entry.js} +2 -2
  426. package/www/build/p-b716b49c.js +2 -0
  427. package/www/build/{p-962c7f6b.entry.js → p-ceeb3e2a.entry.js} +2 -2
  428. package/www/build/p-d60684d5.entry.js +2 -0
  429. package/www/build/p-d60684d5.entry.js.map +1 -0
  430. package/www/build/{p-cb1de7b4.entry.js → p-dc086eb5.entry.js} +2 -2
  431. package/www/build/p-deb7f8d7.entry.js +2 -0
  432. package/www/build/{p-6273db7f.entry.js → p-e0b88075.entry.js} +2 -2
  433. package/www/build/p-e4bb1256.entry.js +2 -0
  434. package/www/build/p-e4bb1256.entry.js.map +1 -0
  435. package/www/build/{p-e231e811.entry.js → p-f487290e.entry.js} +2 -2
  436. package/www/build/p-f4bac89b.entry.js +2 -0
  437. package/www/build/p-f4bac89b.entry.js.map +1 -0
  438. package/www/build/web-components-library.esm.js +1 -1
  439. package/www/build/web-components-library.esm.js.map +1 -1
  440. package/www/index.html +1 -1
  441. package/dist/cjs/placeholder-cover-b679e768.js.map +0 -1
  442. package/dist/collection/components/result-card/z-result-card/index.js.map +0 -1
  443. package/dist/collection/components/result-card/z-result-card/z-result-card.stories.js.map +0 -1
  444. package/dist/components/placeholder-cover.js.map +0 -1
  445. package/dist/esm/placeholder-cover-9346be8f.js +0 -5
  446. package/dist/esm/placeholder-cover-9346be8f.js.map +0 -1
  447. package/dist/web-components-library/p-165d5acc.entry.js +0 -2
  448. package/dist/web-components-library/p-165d5acc.entry.js.map +0 -1
  449. package/dist/web-components-library/p-310c2215.entry.js +0 -2
  450. package/dist/web-components-library/p-310c2215.entry.js.map +0 -1
  451. package/dist/web-components-library/p-3ed25564.entry.js +0 -2
  452. package/dist/web-components-library/p-67edb420.entry.js +0 -2
  453. package/dist/web-components-library/p-74819cbe.entry.js +0 -2
  454. package/dist/web-components-library/p-8d55127c.entry.js +0 -2
  455. package/dist/web-components-library/p-8d55127c.entry.js.map +0 -1
  456. package/dist/web-components-library/p-8d923a1d.js +0 -2
  457. package/dist/web-components-library/p-8d923a1d.js.map +0 -1
  458. package/dist/web-components-library/p-97608d16.entry.js +0 -2
  459. package/dist/web-components-library/p-abd17b10.entry.js +0 -2
  460. package/dist/web-components-library/p-abd17b10.entry.js.map +0 -1
  461. package/dist/web-components-library/p-ac585bcd.entry.js +0 -2
  462. package/www/build/p-165d5acc.entry.js +0 -2
  463. package/www/build/p-165d5acc.entry.js.map +0 -1
  464. package/www/build/p-310c2215.entry.js +0 -2
  465. package/www/build/p-310c2215.entry.js.map +0 -1
  466. package/www/build/p-3ed25564.entry.js +0 -2
  467. package/www/build/p-67edb420.entry.js +0 -2
  468. package/www/build/p-74819cbe.entry.js +0 -2
  469. package/www/build/p-8d55127c.entry.js +0 -2
  470. package/www/build/p-8d55127c.entry.js.map +0 -1
  471. package/www/build/p-8d923a1d.js +0 -2
  472. package/www/build/p-8d923a1d.js.map +0 -1
  473. package/www/build/p-97608d16.entry.js +0 -2
  474. package/www/build/p-abd17b10.entry.js +0 -2
  475. package/www/build/p-abd17b10.entry.js.map +0 -1
  476. package/www/build/p-ac585bcd.entry.js +0 -2
  477. package/www/build/p-f9314f48.js +0 -2
  478. /package/dist/collection/components/{result-card/z-result-card → z-result-card}/z-result-card.stories.js +0 -0
  479. /package/dist/types/components/{result-card/z-result-card → z-result-card}/z-result-card.stories.d.ts +0 -0
  480. /package/dist/web-components-library/{p-8117a929.entry.js.map → p-01f941c2.entry.js.map} +0 -0
  481. /package/dist/web-components-library/{p-0756fe6f.entry.js.map → p-028dd72a.entry.js.map} +0 -0
  482. /package/dist/web-components-library/{p-6ca0ee2f.entry.js.map → p-0a49dd1c.entry.js.map} +0 -0
  483. /package/dist/web-components-library/{p-09ba466b.entry.js.map → p-240de9aa.entry.js.map} +0 -0
  484. /package/dist/web-components-library/{p-f1c55eda.entry.js.map → p-28534fb5.entry.js.map} +0 -0
  485. /package/dist/web-components-library/{p-966cbf03.entry.js.map → p-28d83c86.entry.js.map} +0 -0
  486. /package/dist/web-components-library/{p-cbab66f7.entry.js.map → p-2bdac94e.entry.js.map} +0 -0
  487. /package/dist/web-components-library/{p-e8419614.entry.js.map → p-2ffdfbb1.entry.js.map} +0 -0
  488. /package/dist/web-components-library/{p-8c52635e.entry.js.map → p-4551b0df.entry.js.map} +0 -0
  489. /package/dist/web-components-library/{p-e639e1bc.entry.js.map → p-460b2068.entry.js.map} +0 -0
  490. /package/dist/web-components-library/{p-0eab3c09.entry.js.map → p-46ea0b2e.entry.js.map} +0 -0
  491. /package/dist/web-components-library/{p-689b0280.entry.js.map → p-4a257653.entry.js.map} +0 -0
  492. /package/dist/web-components-library/{p-8dec332e.entry.js.map → p-4aaf0172.entry.js.map} +0 -0
  493. /package/dist/web-components-library/{p-d6d3a92a.entry.js.map → p-4affbb99.entry.js.map} +0 -0
  494. /package/dist/web-components-library/{p-caa491ca.entry.js.map → p-5989465b.entry.js.map} +0 -0
  495. /package/dist/web-components-library/{p-d8aa6afa.entry.js.map → p-5a1f98a2.entry.js.map} +0 -0
  496. /package/dist/web-components-library/{p-d0d54d42.entry.js.map → p-5c5882c6.entry.js.map} +0 -0
  497. /package/dist/web-components-library/{p-01302e57.entry.js.map → p-5f94986f.entry.js.map} +0 -0
  498. /package/dist/web-components-library/{p-1ad8810a.entry.js.map → p-7194003a.entry.js.map} +0 -0
  499. /package/dist/web-components-library/{p-2b8eb0c2.entry.js.map → p-78146cef.entry.js.map} +0 -0
  500. /package/dist/web-components-library/{p-4fbcf534.entry.js.map → p-7a4f6a5b.entry.js.map} +0 -0
  501. /package/dist/web-components-library/{p-6793061a.entry.js.map → p-7ceddb7a.entry.js.map} +0 -0
  502. /package/dist/web-components-library/{p-4c730d4a.entry.js.map → p-86160fe3.entry.js.map} +0 -0
  503. /package/dist/web-components-library/{p-63c1bde5.entry.js.map → p-863fd1c4.entry.js.map} +0 -0
  504. /package/dist/web-components-library/{p-5cf3a797.entry.js.map → p-943db3a8.entry.js.map} +0 -0
  505. /package/dist/web-components-library/{p-dc5ba112.entry.js.map → p-94916bdf.entry.js.map} +0 -0
  506. /package/dist/web-components-library/{p-67edb420.entry.js.map → p-a2e87cec.entry.js.map} +0 -0
  507. /package/dist/web-components-library/{p-badd98ad.entry.js.map → p-ac477ae7.entry.js.map} +0 -0
  508. /package/dist/web-components-library/{p-3ed25564.entry.js.map → p-af5e8524.entry.js.map} +0 -0
  509. /package/dist/web-components-library/{p-7916e0f7.entry.js.map → p-b3f1b5c1.entry.js.map} +0 -0
  510. /package/dist/web-components-library/{p-962c7f6b.entry.js.map → p-ceeb3e2a.entry.js.map} +0 -0
  511. /package/dist/web-components-library/{p-cb1de7b4.entry.js.map → p-dc086eb5.entry.js.map} +0 -0
  512. /package/dist/web-components-library/{p-74819cbe.entry.js.map → p-deb7f8d7.entry.js.map} +0 -0
  513. /package/dist/web-components-library/{p-6273db7f.entry.js.map → p-e0b88075.entry.js.map} +0 -0
  514. /package/dist/web-components-library/{p-e231e811.entry.js.map → p-f487290e.entry.js.map} +0 -0
  515. /package/www/build/{p-8117a929.entry.js.map → p-01f941c2.entry.js.map} +0 -0
  516. /package/www/build/{p-0756fe6f.entry.js.map → p-028dd72a.entry.js.map} +0 -0
  517. /package/www/build/{p-6ca0ee2f.entry.js.map → p-0a49dd1c.entry.js.map} +0 -0
  518. /package/www/build/{p-09ba466b.entry.js.map → p-240de9aa.entry.js.map} +0 -0
  519. /package/www/build/{p-f1c55eda.entry.js.map → p-28534fb5.entry.js.map} +0 -0
  520. /package/www/build/{p-966cbf03.entry.js.map → p-28d83c86.entry.js.map} +0 -0
  521. /package/www/build/{p-cbab66f7.entry.js.map → p-2bdac94e.entry.js.map} +0 -0
  522. /package/www/build/{p-e8419614.entry.js.map → p-2ffdfbb1.entry.js.map} +0 -0
  523. /package/www/build/{p-8c52635e.entry.js.map → p-4551b0df.entry.js.map} +0 -0
  524. /package/www/build/{p-e639e1bc.entry.js.map → p-460b2068.entry.js.map} +0 -0
  525. /package/www/build/{p-0eab3c09.entry.js.map → p-46ea0b2e.entry.js.map} +0 -0
  526. /package/www/build/{p-689b0280.entry.js.map → p-4a257653.entry.js.map} +0 -0
  527. /package/www/build/{p-8dec332e.entry.js.map → p-4aaf0172.entry.js.map} +0 -0
  528. /package/www/build/{p-d6d3a92a.entry.js.map → p-4affbb99.entry.js.map} +0 -0
  529. /package/www/build/{p-caa491ca.entry.js.map → p-5989465b.entry.js.map} +0 -0
  530. /package/www/build/{p-d8aa6afa.entry.js.map → p-5a1f98a2.entry.js.map} +0 -0
  531. /package/www/build/{p-d0d54d42.entry.js.map → p-5c5882c6.entry.js.map} +0 -0
  532. /package/www/build/{p-01302e57.entry.js.map → p-5f94986f.entry.js.map} +0 -0
  533. /package/www/build/{p-1ad8810a.entry.js.map → p-7194003a.entry.js.map} +0 -0
  534. /package/www/build/{p-2b8eb0c2.entry.js.map → p-78146cef.entry.js.map} +0 -0
  535. /package/www/build/{p-4fbcf534.entry.js.map → p-7a4f6a5b.entry.js.map} +0 -0
  536. /package/www/build/{p-6793061a.entry.js.map → p-7ceddb7a.entry.js.map} +0 -0
  537. /package/www/build/{p-4c730d4a.entry.js.map → p-86160fe3.entry.js.map} +0 -0
  538. /package/www/build/{p-63c1bde5.entry.js.map → p-863fd1c4.entry.js.map} +0 -0
  539. /package/www/build/{p-5cf3a797.entry.js.map → p-943db3a8.entry.js.map} +0 -0
  540. /package/www/build/{p-dc5ba112.entry.js.map → p-94916bdf.entry.js.map} +0 -0
  541. /package/www/build/{p-67edb420.entry.js.map → p-a2e87cec.entry.js.map} +0 -0
  542. /package/www/build/{p-badd98ad.entry.js.map → p-ac477ae7.entry.js.map} +0 -0
  543. /package/www/build/{p-3ed25564.entry.js.map → p-af5e8524.entry.js.map} +0 -0
  544. /package/www/build/{p-7916e0f7.entry.js.map → p-b3f1b5c1.entry.js.map} +0 -0
  545. /package/www/build/{p-962c7f6b.entry.js.map → p-ceeb3e2a.entry.js.map} +0 -0
  546. /package/www/build/{p-cb1de7b4.entry.js.map → p-dc086eb5.entry.js.map} +0 -0
  547. /package/www/build/{p-74819cbe.entry.js.map → p-deb7f8d7.entry.js.map} +0 -0
  548. /package/www/build/{p-6273db7f.entry.js.map → p-e0b88075.entry.js.map} +0 -0
  549. /package/www/build/{p-e231e811.entry.js.map → p-f487290e.entry.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/z-app-header/index.tsx"],"names":[],"mappings":"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","sourcesContent":["import {Component, Element, Event, EventEmitter, Fragment, Host, Listen, Prop, State, Watch, h} from \"@stencil/core\";\nimport {ButtonVariant, ControlSize, KeyboardCode, OffCanvasVariant, TransitionDirection} from \"../../beans\";\nimport {Breakpoints} from \"../../constants/breakpoints\";\nimport {containsElement} from \"../../utils/utils\";\n\nconst SUPPORT_INTERSECTION_OBSERVER = typeof IntersectionObserver !== \"undefined\";\n\n/**\n * @slot title - Slot for the main title\n * @slot top-subtitle - Slot for the top subtitle. It will not appear in stuck header.\n * @slot stucked-title - Title for the stuck header. By default it uses the text from the `title` slot.\n * @slot product-logo - To insert the product logo, it should be used with an img tag.\n * @cssprop --app-header-content-max-width - Use it to set header's content max width. Useful when the project use a fixed width layout. Defaults to `100%`.\n * @cssprop --app-header-top-offset - Top offset for the stuck header. Useful when there are other fixed elements above the header. Defaults to `48px` (the height of the main topbar).\n * @cssprop --app-header-bg - Header background color. Defaults to `--color-surface01`.\n * @cssprop --app-header-text-color - Header text color. Defaults to `--color-default-text`.\n * @cssprop --app-header-stucked-bg - Stuck header background color. Defaults to `--color-surface01`.\n * @cssprop --app-header-stucked-text-color - Stuck header text color. Defaults to `--color-default-text`.\n */\n@Component({\n tag: \"z-app-header\",\n styleUrl: \"styles.css\",\n shadow: true,\n})\nexport class ZAppHeader {\n @Element() hostElement: HTMLZAppHeaderElement;\n\n /**\n * Stuck mode for the header.\n * You can programmatically set it using an IntersectionObserver.\n */\n @Prop({reflect: true})\n stuck = false;\n\n /**\n * When enabled, the menu bar is not displayed and a burger icon appears to open the offcanvas menu. Automatically enabled on mobile and when the menu items overflow the container.\n */\n @Prop({reflect: true, mutable: true})\n enableOffcanvas = false;\n\n /**\n * Enable the search bar.\n */\n @Prop({reflect: true})\n enableSearch = false;\n\n /**\n * Placeholder text for the search bar.\n */\n @Prop()\n searchPlaceholder = \"Cerca\";\n\n /**\n * Search string for the search bar.\n */\n @Prop({mutable: true})\n searchString = \"\";\n\n /**\n * Url to the search page.\n * Set this prop and `enableSearch` to show a link-button on mobile and tablet viewports, instead of the normal searchbar.\n * The link will also appear on the sticky header.\n */\n @Prop()\n searchPageUrl: string;\n\n /**\n * Enable laZ logo.\n */\n @Prop({reflect: true})\n enableZLogo = true;\n\n /**\n * The opening state of the drawer.\n */\n @Prop({mutable: true})\n drawerOpen = false;\n\n /**\n * Emitted when the `stuck` state of the header changes\n */\n @Event()\n sticking: EventEmitter;\n\n /**\n * The stuck state of the bar.\n */\n @State()\n private _stuck = false;\n\n /**\n * Current count of menu items.\n */\n @State()\n private menuLength: number;\n\n @State()\n private isMobile = true;\n\n @State()\n private isTablet = false;\n\n private container?: HTMLDivElement;\n\n private menuElements: HTMLZMenuElement[] = [];\n\n private menuWidth: number;\n\n private closeDrawerButton: HTMLButtonElement;\n\n private burgerButton: HTMLButtonElement;\n\n private menuResizeObserver: ResizeObserver;\n\n private stuckIntersecObserver?: IntersectionObserver = SUPPORT_INTERSECTION_OBSERVER\n ? new IntersectionObserver(\n ([entry]) => {\n this._stuck = !entry.isIntersecting;\n },\n {threshold: 0.5}\n )\n : undefined;\n\n @Watch(\"_stuck\")\n onStuck(): void {\n const scrollParent = this.scrollParent;\n if (!scrollParent) {\n return;\n }\n\n this.sticking.emit(this._stuck);\n }\n\n @Watch(\"drawerOpen\")\n setMenuFloatingMode(): void {\n if (this.menuElements.length === 0) {\n return;\n }\n\n this.menuElements.forEach((element) => {\n element.open = false;\n element.verticalContext = this.drawerOpen;\n });\n }\n\n @Watch(\"stuck\")\n onStuckChange(): void {\n if (!this.container) {\n return;\n }\n\n if (this.stuck) {\n this.stuckIntersecObserver?.observe(this.container);\n } else {\n this._stuck = false;\n this.stuckIntersecObserver?.unobserve(this.container);\n }\n }\n\n private get title(): string {\n return this.hostElement.querySelector('[slot=\"title\"]')?.textContent.trim();\n }\n\n private get scrollParent(): Window | Element {\n const parent = this.hostElement.offsetParent;\n if (parent === document.body || parent === document.documentElement) {\n return window;\n }\n\n return parent;\n }\n\n private get canShowMenu(): boolean {\n return !this.enableOffcanvas && this.menuElements.length > 0 && !this.isMobile && !this.drawerOpen;\n }\n\n private get focusableMenu(): HTMLZMenuElement {\n return this.menuElements.find((el) => el.htmlTabindex === 0);\n }\n\n private openDrawer(): void {\n this.drawerOpen = true;\n this.menuElements.forEach((element, index) => (element.htmlTabindex = index === 0 ? 0 : -1));\n setTimeout(() => this.menuElements[0].setFocus(), 400); /* wait for the 400ms offcanvas transition */\n }\n\n private closeDrawer(): void {\n this.drawerOpen = false;\n setTimeout(() => this.burgerButton.focus(), 100);\n }\n\n private collectMenuElements(): void {\n this.menuElements = Array.from(this.hostElement.querySelectorAll('[slot=\"menu\"]'));\n this.menuElements.forEach((element, index) => (element.htmlTabindex = index === 0 ? 0 : -1));\n this.menuLength = this.menuElements.length;\n if (!this.enableOffcanvas) {\n this.menuWidth =\n this.menuElements.reduce((acc, el) => acc + el.getBoundingClientRect().width, 0) +\n (this.menuLength - 1) * 32 /* 32px is the gap between each menu item */;\n }\n this.setMenuFloatingMode();\n }\n\n /** Automatically use offcanvas mode when the menubar doesn't fit in the header. */\n private setupMenuResizeObserver(): void {\n if (this.enableOffcanvas) {\n return;\n }\n\n this.menuResizeObserver = new ResizeObserver((entries) => {\n if (this.isMobile) {\n this.enableOffcanvas = true;\n\n return;\n }\n\n const containerWidth = entries[0].contentBoxSize[0].inlineSize;\n if (this.menuWidth === 0) {\n return;\n }\n\n if (this.menuWidth > containerWidth && !this.enableOffcanvas) {\n this.enableOffcanvas = true;\n } else if (this.menuWidth <= containerWidth && this.enableOffcanvas) {\n this.enableOffcanvas = false;\n }\n });\n this.menuResizeObserver.observe(this.container);\n }\n\n private hasSlot(slotName: string): boolean {\n return this.hostElement.querySelector(`[slot=\"${slotName}\"]`) !== null;\n }\n\n private moveFocus(current: HTMLZMenuElement, receiver: HTMLZMenuElement): void {\n current.htmlTabindex = -1;\n receiver.setFocus();\n }\n\n private onOffcanvasKeydown(ev: KeyboardEvent): void {\n if (ev.key !== KeyboardCode.TAB || !this.drawerOpen) {\n return;\n }\n\n const closestMenu = (ev.target as HTMLElement).closest(\"z-menu\");\n if (closestMenu) {\n ev.preventDefault();\n ev.stopPropagation();\n // restore tabindex to the zmenu containing the focused element\n closestMenu.htmlTabindex = 0;\n this.closeDrawerButton.focus();\n } else if (ev.target === this.closeDrawerButton) {\n ev.preventDefault();\n ev.stopPropagation();\n if (ev.shiftKey) {\n // give focus to the last open menu if any or the last menu otherwhise\n (this.menuElements.filter((menu) => menu.open).pop() ?? this.menuElements[this.menuLength - 1]).setFocus();\n } else {\n // give focus to the first open menu if any or the first menu otherwhise\n (this.menuElements.find((menu) => menu.open) ?? this.menuElements[0]).setFocus();\n }\n }\n }\n\n /** Close each menu except the one receiving focus/click, if any */\n @Listen(\"focusin\", {target: \"document\", passive: true})\n @Listen(\"click\", {target: \"document\", passive: true})\n manageMenus(ev: FocusEvent | PointerEvent): void {\n const targetMenu = this.menuElements.find((menu) => containsElement(menu, ev.target as Element));\n if (targetMenu) {\n this.menuElements.forEach((menu) => {\n if (menu === targetMenu) {\n return;\n }\n\n menu.htmlTabindex = -1;\n if (!this.drawerOpen) {\n menu.open = false;\n }\n });\n } else if (!this.drawerOpen) {\n this.menuElements.forEach((menu) => {\n menu.open = false;\n });\n }\n }\n\n @Listen(\"keydown\", {passive: true})\n handleKeydown(ev: KeyboardEvent): void {\n if (ev.key === KeyboardCode.ESC && this.drawerOpen) {\n this.closeDrawer();\n\n return;\n }\n\n if (!this.menuElements.some((elem) => elem.contains(ev.target as HTMLElement))) {\n return;\n }\n\n const current = this.focusableMenu;\n const currentIndex = this.menuElements.indexOf(current);\n let receiver: HTMLZMenuElement;\n if (\n (ev.key === KeyboardCode.ARROW_RIGHT && !current.verticalContext) ||\n (ev.key === KeyboardCode.ARROW_DOWN && current.verticalContext)\n ) {\n receiver = this.menuElements[currentIndex + 1] ?? this.menuElements[0];\n } else if (\n (ev.key === KeyboardCode.ARROW_LEFT && !current.verticalContext) ||\n (ev.key === KeyboardCode.ARROW_UP && current.verticalContext)\n ) {\n receiver = this.menuElements[currentIndex - 1] ?? this.menuElements[this.menuLength - 1];\n }\n if (!receiver) {\n return;\n }\n\n if (ev.key === KeyboardCode.ARROW_UP && current.verticalContext) {\n if (receiver.open) {\n current.htmlTabindex = -1;\n receiver.focusLastItem();\n\n return;\n }\n }\n\n this.moveFocus(current, receiver);\n }\n\n private renderSeachbar(): HTMLZButtonElement | HTMLZSearchbarElement | undefined {\n if (this.isMobile && !this.searchPageUrl && this._stuck) {\n return;\n }\n\n if (this.searchPageUrl && (this.isMobile || this.isTablet)) {\n return (\n <z-button\n class=\"search-page-button\"\n variant={ButtonVariant.SECONDARY}\n href={this.searchPageUrl}\n icon=\"search\"\n size={ControlSize.X_SMALL}\n />\n );\n }\n\n return (\n <z-searchbar\n value={this.searchString}\n placeholder={this.searchPlaceholder}\n showSearchButton={true}\n searchButtonIconOnly={this.isMobile || this.isTablet}\n size={ControlSize.X_SMALL}\n variant={ButtonVariant.SECONDARY}\n preventSubmit={this.searchString.length < 3}\n onSearchTyping={(e) => (this.searchString = e.detail)}\n />\n );\n }\n\n private renderProductLogos(): HTMLElement | null {\n return (\n <Fragment>\n {this.enableZLogo && (\n <span class=\"z-logo\">\n <img alt=\"Logo Zanichelli\" />\n </span>\n )}\n {this.hostElement.querySelector(\"[slot='product-logo']\") && (\n <span class=\"product-logo\">\n <slot name=\"product-logo\" />\n </span>\n )}\n </Fragment>\n );\n }\n\n private renderMenuButton(): HTMLButtonElement {\n return (\n this.menuLength > 0 &&\n (this.enableOffcanvas || this._stuck || this.isMobile) && (\n <button\n ref={(el) => (this.burgerButton = el as HTMLButtonElement)}\n class=\"drawer-trigger\"\n aria-label=\"Apri menu\"\n aria-haspopup=\"menu\"\n aria-expanded={`${this.drawerOpen}`}\n aria-controls=\"offcanvas-menu\"\n onClick={this.openDrawer}\n >\n <z-icon name=\"burger-menu\" />\n </button>\n )\n );\n }\n\n private renderOffcanvas(): HTMLZOffcanvasElement {\n return (\n <z-offcanvas\n id=\"offcanvas-menu\"\n variant={OffCanvasVariant.OVERLAY}\n transitiondirection={TransitionDirection.RIGHT}\n open={this.drawerOpen}\n onCanvasOpenStatusChanged={(ev) => (this.drawerOpen = ev.detail)}\n onKeyDown={this.onOffcanvasKeydown}\n >\n <div slot=\"canvasContent\">\n <button\n ref={(el) => (this.closeDrawerButton = el)}\n class=\"drawer-close\"\n aria-label=\"Chiudi menu\"\n onClick={this.closeDrawer}\n aria-hidden={`${!this.drawerOpen}`}\n disabled={!this.drawerOpen}\n >\n <z-icon name=\"close\" />\n </button>\n\n <div\n class=\"drawer-content\"\n aria-hidden={`${!this.drawerOpen}`}\n >\n <slot\n name=\"menu\"\n onSlotchange={this.collectMenuElements}\n />\n </div>\n </div>\n </z-offcanvas>\n );\n }\n\n private renderStuck(): HTMLElement {\n return (\n <div class=\"heading-stuck\">\n <div class=\"heading-stuck-content\">\n {this.renderMenuButton()}\n <div class=\"heading-title\">\n {this.renderProductLogos()}\n <div class=\"stucked-title\">\n <slot name=\"stucked-title\">{this.title}</slot>\n </div>\n </div>\n {this.enableSearch && this.renderSeachbar()}\n </div>\n </div>\n );\n }\n\n constructor() {\n this.openDrawer = this.openDrawer.bind(this);\n this.closeDrawer = this.closeDrawer.bind(this);\n this.collectMenuElements = this.collectMenuElements.bind(this);\n this.onOffcanvasKeydown = this.onOffcanvasKeydown.bind(this);\n }\n\n componentWillLoad(): void {\n this.collectMenuElements();\n\n // mobile and tablet media queries listeners\n const mobileMediaQuery = window.matchMedia(`(max-width: ${Breakpoints.MOBILE}px)`);\n this.isMobile = mobileMediaQuery.matches;\n mobileMediaQuery.addEventListener(\"change\", (e) => (this.isMobile = e.matches));\n const tabletMediaQuery = window.matchMedia(\n `(min-width: ${Breakpoints.MOBILE + 1}px) and (max-width: ${Breakpoints.TABLET}px)`\n );\n this.isTablet = tabletMediaQuery.matches;\n tabletMediaQuery.addEventListener(\"change\", (e) => (this.isTablet = e.matches));\n }\n\n componentDidLoad(): void {\n this.onStuckChange();\n this.setupMenuResizeObserver();\n }\n\n disconnectedCallback(): void {\n this.menuResizeObserver?.disconnect();\n }\n\n render(): HTMLZAppHeaderElement {\n const hasTopSubtitle = this.hasSlot(\"top-subtitle\");\n\n return (\n <Host menu-length={this.menuLength}>\n <div\n class={{\"heading-panel\": true, \"has-menubar\": this.menuLength > 0 && !this.enableOffcanvas}}\n ref={(el) => (this.container = el)}\n >\n <div class=\"heading-container\">\n {((!this.enableSearch && this.isMobile) || !this.isMobile) && (\n <div class=\"top-subtitle\">\n <slot name=\"top-subtitle\" />\n </div>\n )}\n <div class=\"heading-title\">\n {this.renderMenuButton()}\n {!hasTopSubtitle && !this._stuck && this.renderProductLogos()}\n <slot name=\"title\" />\n {this.enableSearch && !this.isMobile && this.renderSeachbar()}\n </div>\n {this.enableSearch && this.isMobile && this.renderSeachbar()}\n </div>\n\n <nav\n class=\"menu-container\"\n aria-label={this.title || undefined}\n >\n {this.canShowMenu && (\n <div\n role=\"menubar\"\n aria-label={this.title || undefined}\n >\n <slot\n name=\"menu\"\n onSlotchange={this.collectMenuElements}\n />\n </div>\n )}\n </nav>\n </div>\n {this.renderOffcanvas()}\n {this._stuck && this.renderStuck()}\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/z-app-header/index.tsx"],"names":[],"mappings":"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","sourcesContent":["import {Component, Element, Event, EventEmitter, Fragment, Host, Listen, Prop, State, Watch, h} from \"@stencil/core\";\nimport {ButtonVariant, ControlSize, KeyboardCode, OffCanvasVariant, TransitionDirection} from \"../../beans\";\nimport {Breakpoints} from \"../../constants/breakpoints\";\nimport {containsElement} from \"../../utils/utils\";\n\nconst SUPPORT_INTERSECTION_OBSERVER = typeof IntersectionObserver !== \"undefined\";\n\n/**\n * @slot menu-button - Slot for a custom menu button. It will replace the default burger icon.\n * @slot title - Slot for the main title\n * @slot top-subtitle - Slot for the top subtitle. It will not appear in stuck header.\n * @slot stucked-title - Title for the stuck header. By default it uses the text from the `title` slot.\n * @slot product-logo - To insert the product logo, it should be used with an img tag.\n * @cssprop --app-header-content-max-width - Use it to set header's content max width. Useful when the project use a fixed width layout. Defaults to `100%`.\n * @cssprop --app-header-top-offset - Top offset for the stuck header. Useful when there are other fixed elements above the header. Defaults to `48px` (the height of the main topbar).\n * @cssprop --app-header-bg - Header background color. Defaults to `--color-surface01`.\n * @cssprop --app-header-text-color - Header text color. Defaults to `--color-default-text`.\n * @cssprop --app-header-stucked-bg - Stuck header background color. Defaults to `--color-surface01`.\n * @cssprop --app-header-stucked-text-color - Stuck header text color. Defaults to `--color-default-text`.\n */\n@Component({\n tag: \"z-app-header\",\n styleUrl: \"styles.css\",\n shadow: true,\n})\nexport class ZAppHeader {\n @Element() hostElement: HTMLZAppHeaderElement;\n\n /**\n * Stuck mode for the header.\n * You can programmatically set it using an IntersectionObserver.\n */\n @Prop({reflect: true})\n stuck = false;\n\n /**\n * When enabled, the menu bar is not displayed and a burger icon appears to open the offcanvas menu. Automatically enabled on mobile and when the menu items overflow the container.\n */\n @Prop({reflect: true, mutable: true})\n enableOffcanvas = false;\n\n /**\n * Enable the search bar.\n */\n @Prop({reflect: true})\n enableSearch = false;\n\n /**\n * Placeholder text for the search bar.\n */\n @Prop()\n searchPlaceholder = \"Cerca\";\n\n /**\n * Search string for the search bar.\n */\n @Prop({mutable: true})\n searchString = \"\";\n\n /**\n * Url to the search page.\n * Set this prop and `enableSearch` to show a link-button on mobile and tablet viewports, instead of the normal searchbar.\n * The link will also appear on the sticky header.\n */\n @Prop()\n searchPageUrl: string;\n\n /**\n * Enable laZ logo.\n */\n @Prop({reflect: true})\n enableZLogo = true;\n\n /**\n * The opening state of the drawer.\n */\n @Prop({mutable: true})\n drawerOpen = false;\n\n /**\n * Emitted when the `stuck` state of the header changes\n */\n @Event()\n sticking: EventEmitter;\n\n /**\n * The stuck state of the bar.\n */\n @State()\n private _stuck = false;\n\n /**\n * Current count of menu items.\n */\n @State()\n private menuLength: number;\n\n @State()\n private isMobile = true;\n\n @State()\n private isTablet = false;\n\n private container?: HTMLDivElement;\n\n private menuElements: HTMLZMenuElement[] = [];\n\n private menuWidth: number;\n\n private closeDrawerButton: HTMLButtonElement;\n\n private burgerButton: HTMLButtonElement;\n\n private menuResizeObserver: ResizeObserver;\n\n private stuckIntersecObserver?: IntersectionObserver = SUPPORT_INTERSECTION_OBSERVER\n ? new IntersectionObserver(\n ([entry]) => {\n this._stuck = !entry.isIntersecting;\n },\n {threshold: 0.5}\n )\n : undefined;\n\n @Watch(\"_stuck\")\n onStuck(): void {\n const scrollParent = this.scrollParent;\n if (!scrollParent) {\n return;\n }\n\n this.sticking.emit(this._stuck);\n }\n\n @Watch(\"drawerOpen\")\n setMenuFloatingMode(): void {\n if (this.menuElements.length === 0) {\n return;\n }\n\n this.menuElements.forEach((element) => {\n element.open = false;\n element.verticalContext = this.drawerOpen;\n });\n }\n\n @Watch(\"stuck\")\n onStuckChange(): void {\n if (!this.container) {\n return;\n }\n\n if (this.stuck) {\n this.stuckIntersecObserver?.observe(this.container);\n } else {\n this._stuck = false;\n this.stuckIntersecObserver?.unobserve(this.container);\n }\n }\n\n private get title(): string {\n return this.hostElement.querySelector('[slot=\"title\"]')?.textContent.trim();\n }\n\n private get scrollParent(): Window | Element {\n const parent = this.hostElement.offsetParent;\n if (parent === document.body || parent === document.documentElement) {\n return window;\n }\n\n return parent;\n }\n\n private get canShowMenu(): boolean {\n return !this.enableOffcanvas && this.menuElements.length > 0 && !this.isMobile && !this.drawerOpen;\n }\n\n private get focusableMenu(): HTMLZMenuElement {\n return this.menuElements.find((el) => el.htmlTabindex === 0);\n }\n\n private openDrawer(): void {\n this.drawerOpen = true;\n this.menuElements.forEach((element, index) => (element.htmlTabindex = index === 0 ? 0 : -1));\n setTimeout(() => this.menuElements[0].setFocus(), 400); /* wait for the 400ms offcanvas transition */\n }\n\n private closeDrawer(): void {\n this.drawerOpen = false;\n setTimeout(() => this.burgerButton.focus(), 100);\n }\n\n private collectMenuElements(): void {\n this.menuElements = Array.from(this.hostElement.querySelectorAll('[slot=\"menu\"]'));\n this.menuElements.forEach((element, index) => (element.htmlTabindex = index === 0 ? 0 : -1));\n this.menuLength = this.menuElements.length;\n if (!this.enableOffcanvas) {\n this.menuWidth =\n this.menuElements.reduce((acc, el) => acc + el.getBoundingClientRect().width, 0) +\n (this.menuLength - 1) * 32 /* 32px is the gap between each menu item */;\n }\n this.setMenuFloatingMode();\n }\n\n /** Automatically use offcanvas mode when the menubar doesn't fit in the header. */\n private setupMenuResizeObserver(): void {\n if (this.enableOffcanvas) {\n return;\n }\n\n this.menuResizeObserver = new ResizeObserver((entries) => {\n if (this.isMobile) {\n this.enableOffcanvas = true;\n\n return;\n }\n\n const containerWidth = entries[0].contentBoxSize[0].inlineSize;\n if (this.menuWidth === 0) {\n return;\n }\n\n if (this.menuWidth > containerWidth && !this.enableOffcanvas) {\n this.enableOffcanvas = true;\n } else if (this.menuWidth <= containerWidth && this.enableOffcanvas) {\n this.enableOffcanvas = false;\n }\n });\n this.menuResizeObserver.observe(this.container);\n }\n\n private hasSlot(slotName: string): boolean {\n return this.hostElement.querySelector(`[slot=\"${slotName}\"]`) !== null;\n }\n\n private moveFocus(current: HTMLZMenuElement, receiver: HTMLZMenuElement): void {\n current.htmlTabindex = -1;\n receiver.setFocus();\n }\n\n private onOffcanvasKeydown(ev: KeyboardEvent): void {\n if (ev.key !== KeyboardCode.TAB || !this.drawerOpen) {\n return;\n }\n\n const closestMenu = (ev.target as HTMLElement).closest(\"z-menu\");\n if (closestMenu) {\n ev.preventDefault();\n ev.stopPropagation();\n // restore tabindex to the zmenu containing the focused element\n closestMenu.htmlTabindex = 0;\n this.closeDrawerButton.focus();\n } else if (ev.target === this.closeDrawerButton) {\n ev.preventDefault();\n ev.stopPropagation();\n if (ev.shiftKey) {\n // give focus to the last open menu if any or the last menu otherwhise\n (this.menuElements.filter((menu) => menu.open).pop() ?? this.menuElements[this.menuLength - 1]).setFocus();\n } else {\n // give focus to the first open menu if any or the first menu otherwhise\n (this.menuElements.find((menu) => menu.open) ?? this.menuElements[0]).setFocus();\n }\n }\n }\n\n /** Close each menu except the one receiving focus/click, if any */\n @Listen(\"focusin\", {target: \"document\", passive: true})\n @Listen(\"click\", {target: \"document\", passive: true})\n manageMenus(ev: FocusEvent | PointerEvent): void {\n const targetMenu = this.menuElements.find((menu) => containsElement(menu, ev.target as Element));\n if (targetMenu) {\n this.menuElements.forEach((menu) => {\n if (menu === targetMenu) {\n return;\n }\n\n menu.htmlTabindex = -1;\n if (!this.drawerOpen) {\n menu.open = false;\n }\n });\n } else if (!this.drawerOpen) {\n this.menuElements.forEach((menu) => {\n menu.open = false;\n });\n }\n }\n\n @Listen(\"keydown\", {passive: true})\n handleKeydown(ev: KeyboardEvent): void {\n if (ev.key === KeyboardCode.ESC && this.drawerOpen) {\n this.closeDrawer();\n\n return;\n }\n\n if (!this.menuElements.some((elem) => elem.contains(ev.target as HTMLElement))) {\n return;\n }\n\n const current = this.focusableMenu;\n const currentIndex = this.menuElements.indexOf(current);\n let receiver: HTMLZMenuElement;\n if (\n (ev.key === KeyboardCode.ARROW_RIGHT && !current.verticalContext) ||\n (ev.key === KeyboardCode.ARROW_DOWN && current.verticalContext)\n ) {\n receiver = this.menuElements[currentIndex + 1] ?? this.menuElements[0];\n } else if (\n (ev.key === KeyboardCode.ARROW_LEFT && !current.verticalContext) ||\n (ev.key === KeyboardCode.ARROW_UP && current.verticalContext)\n ) {\n receiver = this.menuElements[currentIndex - 1] ?? this.menuElements[this.menuLength - 1];\n }\n if (!receiver) {\n return;\n }\n\n if (ev.key === KeyboardCode.ARROW_UP && current.verticalContext) {\n if (receiver.open) {\n current.htmlTabindex = -1;\n receiver.focusLastItem();\n\n return;\n }\n }\n\n this.moveFocus(current, receiver);\n }\n\n private renderSeachbar(): HTMLZButtonElement | HTMLZSearchbarElement | undefined {\n if (this.isMobile && !this.searchPageUrl && this._stuck) {\n return;\n }\n\n if (this.searchPageUrl && (this.isMobile || this.isTablet)) {\n return (\n <z-button\n class=\"search-page-button\"\n variant={ButtonVariant.SECONDARY}\n href={this.searchPageUrl}\n icon=\"search\"\n size={ControlSize.X_SMALL}\n />\n );\n }\n\n return (\n <z-searchbar\n value={this.searchString}\n placeholder={this.searchPlaceholder}\n showSearchButton={true}\n searchButtonIconOnly={this.isMobile || this.isTablet}\n size={ControlSize.X_SMALL}\n variant={ButtonVariant.SECONDARY}\n preventSubmit={this.searchString.length < 3}\n onSearchTyping={(e) => (this.searchString = e.detail)}\n />\n );\n }\n\n private renderProductLogos(): HTMLElement | null {\n return (\n <Fragment>\n {this.enableZLogo && (\n <span class=\"z-logo\">\n <img alt=\"Logo Zanichelli\" />\n </span>\n )}\n {this.hostElement.querySelector(\"[slot='product-logo']\") && (\n <span class=\"product-logo\">\n <slot name=\"product-logo\" />\n </span>\n )}\n </Fragment>\n );\n }\n\n private renderMenuButton(): HTMLButtonElement {\n return (\n this.menuLength > 0 &&\n (this.enableOffcanvas || this._stuck || this.isMobile) && (\n <button\n ref={(el) => (this.burgerButton = el as HTMLButtonElement)}\n class=\"drawer-trigger\"\n aria-label=\"Apri menu\"\n aria-haspopup=\"menu\"\n aria-expanded={`${this.drawerOpen}`}\n aria-controls=\"offcanvas-menu\"\n onClick={this.openDrawer}\n >\n <z-icon name=\"burger-menu\" />\n </button>\n )\n );\n }\n\n private renderOffcanvas(): HTMLZOffcanvasElement {\n return (\n <z-offcanvas\n id=\"offcanvas-menu\"\n variant={OffCanvasVariant.OVERLAY}\n transitiondirection={TransitionDirection.RIGHT}\n open={this.drawerOpen}\n onCanvasOpenStatusChanged={(ev) => (this.drawerOpen = ev.detail)}\n onKeyDown={this.onOffcanvasKeydown}\n >\n <div slot=\"canvasContent\">\n <button\n ref={(el) => (this.closeDrawerButton = el)}\n class=\"drawer-close\"\n aria-label=\"Chiudi menu\"\n onClick={this.closeDrawer}\n aria-hidden={`${!this.drawerOpen}`}\n disabled={!this.drawerOpen}\n >\n <z-icon name=\"close\" />\n </button>\n\n <div\n class=\"drawer-content\"\n aria-hidden={`${!this.drawerOpen}`}\n >\n <slot\n name=\"menu\"\n onSlotchange={this.collectMenuElements}\n />\n </div>\n </div>\n </z-offcanvas>\n );\n }\n\n private renderStuck(): HTMLElement {\n return (\n <div class=\"heading-stuck\">\n <div class=\"heading-stuck-content\">\n {this.renderMenuButton()}\n <div class=\"heading-title\">\n {this.renderProductLogos()}\n <div class=\"stucked-title\">\n <slot name=\"stucked-title\">{this.title}</slot>\n </div>\n </div>\n {this.enableSearch && this.renderSeachbar()}\n </div>\n </div>\n );\n }\n\n constructor() {\n this.openDrawer = this.openDrawer.bind(this);\n this.closeDrawer = this.closeDrawer.bind(this);\n this.collectMenuElements = this.collectMenuElements.bind(this);\n this.onOffcanvasKeydown = this.onOffcanvasKeydown.bind(this);\n }\n\n componentWillLoad(): void {\n this.collectMenuElements();\n\n // mobile and tablet media queries listeners\n const mobileMediaQuery = window.matchMedia(`(max-width: ${Breakpoints.MOBILE}px)`);\n this.isMobile = mobileMediaQuery.matches;\n mobileMediaQuery.addEventListener(\"change\", (e) => (this.isMobile = e.matches));\n const tabletMediaQuery = window.matchMedia(\n `(min-width: ${Breakpoints.MOBILE + 1}px) and (max-width: ${Breakpoints.TABLET}px)`\n );\n this.isTablet = tabletMediaQuery.matches;\n tabletMediaQuery.addEventListener(\"change\", (e) => (this.isTablet = e.matches));\n }\n\n componentDidLoad(): void {\n this.onStuckChange();\n this.setupMenuResizeObserver();\n }\n\n disconnectedCallback(): void {\n this.menuResizeObserver?.disconnect();\n }\n\n render(): HTMLZAppHeaderElement {\n const hasTopSubtitle = this.hasSlot(\"top-subtitle\");\n\n return (\n <Host menu-length={this.menuLength}>\n <div\n class={{\"heading-panel\": true, \"has-menubar\": this.menuLength > 0 && !this.enableOffcanvas}}\n ref={(el) => (this.container = el)}\n >\n <div class=\"heading-container\">\n {((!this.enableSearch && this.isMobile) || !this.isMobile) && (\n <div class=\"top-subtitle\">\n <slot name=\"top-subtitle\" />\n </div>\n )}\n <div class=\"heading-title\">\n <slot name=\"menu-button\">{this.renderMenuButton()}</slot>\n {!hasTopSubtitle && !this._stuck && this.renderProductLogos()}\n <slot name=\"title\" />\n {this.enableSearch && !this.isMobile && this.renderSeachbar()}\n </div>\n {this.enableSearch && this.isMobile && this.renderSeachbar()}\n </div>\n\n <nav\n class=\"menu-container\"\n aria-label={this.title || undefined}\n >\n {this.canShowMenu && (\n <div\n role=\"menubar\"\n aria-label={this.title || undefined}\n >\n <slot\n name=\"menu\"\n onSlotchange={this.collectMenuElements}\n />\n </div>\n )}\n </nav>\n </div>\n {this.renderOffcanvas()}\n {this._stuck && this.renderStuck()}\n </Host>\n );\n }\n}\n"]}
@@ -144,6 +144,22 @@ export const TopTitle = {
144
144
  <h1 slot="title">Applicazione</h1>
145
145
  </z-app-header>`,
146
146
  };
147
+ export const CustomMenuButton = {
148
+ parameters: {
149
+ controls: {
150
+ exclude: ["enableOffcanvas"],
151
+ },
152
+ },
153
+ render: (args) => html `<z-app-header
154
+ .enableSearch=${args.enableSearch}
155
+ .searchPageUrl=${args.searchPageUrl}
156
+ .enableZLogo=${args.enableZLogo}
157
+ style="--app-header-content-max-width: ${args["--app-header-content-max-width"]}"
158
+ >
159
+ <button slot="menu-button"><z-icon name="gear" /></button>
160
+ <a href="zanichelli.it" slot="title">Applicazione</h1>
161
+ </z-app-header>`,
162
+ };
147
163
  export const MenuWithTopTitle = {
148
164
  parameters: {
149
165
  controls: {
@@ -1 +1 @@
1
- {"version":3,"file":"index.stories.js","sourceRoot":"","sources":["../../../../src/components/z-app-header/index.stories.ts"],"names":[],"mappings":"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","sourcesContent":["import {Meta} from \"@storybook/web-components\";\nimport {TemplateResult, html} from \"lit\";\nimport {ZAppHeader} from \".\";\nimport {CSSVarsArguments} from \"../../utils/storybook-utils\";\nimport \"../z-menu-section/index\";\nimport \"../z-menu/index\";\nimport \"./index\";\nimport \"./index.stories.css\";\n\ntype ZAppHeaderStoriesArgs = ZAppHeader & CSSVarsArguments<\"app-header-content-max-width\">;\n\nconst StoryMeta = {\n title: \"ZAppHeader\",\n component: \"z-app-header\",\n parameters: {\n layout: \"fullscreen\",\n },\n subcomponents: {\n ZMenu: \"z-menu\",\n ZMenuSection: \"z-menu-section\",\n },\n args: {\n \"--app-header-content-max-width\": \"100%\",\n \"enableSearch\": false,\n \"searchPageUrl\": \"\",\n \"enableZLogo\": false,\n \"enableOffcanvas\": false,\n },\n} satisfies Meta<ZAppHeaderStoriesArgs>;\n\nexport default StoryMeta;\n\nconst menuItemsTemplate = (): TemplateResult => {\n return html`<a\n href=\"\"\n slot=\"item\"\n >Item 1</a\n >\n <z-menu-section slot=\"item\">\n <h3>Item 2</h3>\n <a\n href=\"\"\n slot=\"section\"\n >Item 2.1</a\n >\n <a\n href=\"\"\n slot=\"section\"\n >Item 2.2</a\n >\n </z-menu-section>\n <z-menu-section slot=\"item\">\n <h3>Item 3</h3>\n <a\n href=\"\"\n slot=\"section\"\n >Item 3.1</a\n >\n <a\n href=\"\"\n slot=\"section\"\n >Item 3.2</a\n >\n </z-menu-section>\n <a\n href=\"\"\n slot=\"item\"\n >Item 4</a\n >\n <z-menu-section slot=\"item\">\n <h3>Item 5</h3>\n <a\n href=\"\"\n slot=\"section\"\n >Item 5.1</a\n >\n <a\n href=\"\"\n slot=\"section\"\n >Item 5.2</a\n >\n </z-menu-section>`;\n};\n\nconst menuTemplate = (): TemplateResult => {\n return html`\n <z-menu slot=\"menu\">\n <h3>Menu label 1</h3>\n ${menuItemsTemplate()}\n </z-menu>\n\n <z-menu slot=\"menu\">\n <a href>Menu label 2</a>\n </z-menu>\n\n <z-menu slot=\"menu\">\n <h3>Menu label 3</h3>\n ${menuItemsTemplate()}\n </z-menu>\n\n <z-menu slot=\"menu\">\n <h3>Menu label 4</h3>\n ${menuItemsTemplate()}\n </z-menu>\n `;\n};\n\ntype Story = Meta<ZAppHeaderStoriesArgs>;\n\nexport const Title = {\n parameters: {\n controls: {\n exclude: [\"enableOffcanvas\"],\n },\n },\n render: (args) =>\n html`<z-app-header\n .enableSearch=${args.enableSearch}\n .searchPageUrl=${args.searchPageUrl}\n .enableZLogo=${args.enableZLogo}\n style=\"--app-header-content-max-width: ${args[\"--app-header-content-max-width\"]}\"\n >\n <a href=\"zanichelli.it\" slot=\"title\">Applicazione</h1>\n </z-app-header>`,\n} satisfies Story;\n\nexport const ProductLogo = {\n parameters: {\n controls: {\n exclude: [\"enableOffcanvas\"],\n },\n },\n render: (args) =>\n html`<z-app-header\n .enableSearch=${args.enableSearch}\n .searchPageUrl=${args.searchPageUrl}\n .enableZLogo=${args.enableZLogo}\n style=\"--app-header-content-max-width: ${args[\"--app-header-content-max-width\"]}\"\n >\n <h1 slot=\"title\">Applicazione</h1>\n <div\n class=\"story-product-logo\"\n slot=\"product-logo\"\n ></div>\n </z-app-header>`,\n} satisfies Story;\n\nexport const TopTitle = {\n parameters: {\n controls: {\n exclude: [\"enableOffcanvas\", \"enableZLogo\"],\n },\n },\n render: (args) =>\n html`<z-app-header\n .enableSearch=${args.enableSearch}\n .searchPageUrl=${args.searchPageUrl}\n style=\"--app-header-content-max-width: ${args[\"--app-header-content-max-width\"]}\"\n >\n <h2 slot=\"top-subtitle\">Payoff dell'applicazione</h2>\n <h1 slot=\"title\">Applicazione</h1>\n </z-app-header>`,\n} satisfies Story;\n\nexport const MenuWithTopTitle = {\n parameters: {\n controls: {\n exclude: [\"enableZLogo\"],\n },\n },\n render: (args) =>\n html`<z-app-header\n .enableOffcanvas=${args.enableOffcanvas}\n .enableSearch=${args.enableSearch}\n .searchPageUrl=${args.searchPageUrl}\n style=\"--app-header-content-max-width: ${args[\"--app-header-content-max-width\"]}\"\n >\n <h2 slot=\"top-subtitle\">Payoff dell'applicazione</h2>\n <h1 slot=\"title\">Applicazione</h1>\n ${menuTemplate()}\n </z-app-header>`,\n} satisfies Story;\n\nexport const LongTitle = {\n parameters: {\n controls: {\n exclude: [\"enableOffcanvas\", \"enableZLogo\", \"enableSearch\", \"searchPageUrl\"],\n },\n },\n render: (args) =>\n html`<z-app-header style=\"--app-header-content-max-width: ${args[\"--app-header-content-max-width\"]}\">\n <h1 slot=\"title\">Fondamenti di fisica 8e - Meccanica, Onde, Termodinamica, Elettromagnetismo, Ottica</h1>\n <h2 slot=\"top-subtitle\">Jearl Walker, David Halliday, Robert Resnick</h2>\n ${menuTemplate()}\n </z-app-header>`,\n} satisfies Story;\n\nexport const OffcanvasMenu = {\n args: {\n enableOffcanvas: true,\n },\n render: (args) =>\n html`<z-app-header\n .enableOffcanvas=${args.enableOffcanvas}\n .enableSearch=${args.enableSearch}\n .searchPageUrl=${args.searchPageUrl}\n .enableZLogo=${args.enableZLogo}\n style=\"--app-header-content-max-width: ${args[\"--app-header-content-max-width\"]}\"\n >\n <h1 slot=\"title\">Applicazione</h1>\n ${menuTemplate()}\n </z-app-header>`,\n} satisfies Story;\n\nexport const Stuck = {\n decorators: [\n (Story) => html`\n <div style=\"padding: 16px var(--grid-margin)\">Scroll to see <code>stuck</code> prop in action.</div>\n <div style=\"height: 200vh\">${Story()}</div>\n `,\n ],\n parameters: {\n docs: {\n story: {\n inline: false,\n iframeHeight: \"400px\",\n },\n },\n controls: {\n exclude: [\"enableOffcanvas\"],\n },\n },\n render: (args) =>\n html`<z-app-header\n stuck\n .enableZLogo=${args.enableZLogo}\n .enableSearch=${args.enableSearch}\n .searchPageUrl=${args.searchPageUrl}\n style=\"--app-header-content-max-width: ${args[\"--app-header-content-max-width\"]}; --app-header-top-offset: 0\"\n >\n <h1 slot=\"title\">Fondamenti di fisica 8e - Meccanica, Onde, Termodinamica, Elettromagnetismo, Ottica</h1>\n ${menuTemplate()}\n </z-app-header>`,\n} satisfies Story;\n\nexport const SearchPageButton = {\n parameters: {\n controls: {\n exclude: [\"searchPageUrl\", \"enableSearch\", \"enableOffcanvas\"],\n },\n },\n decorators: [\n (Story) => html`\n <div style=\"padding: 16px var(--grid-margin)\">\n The prop <code>searchPageUrl</code> only affects the component in tablet and mobile viewports.\n </div>\n ${Story()}\n `,\n ],\n render: (args) =>\n html`<z-app-header\n enable-search\n .enableZLogo=${args.enableZLogo}\n search-page-url=\"https://www.zanichelli.it\"\n style=\"--app-header-content-max-width: ${args[\"--app-header-content-max-width\"]}\"\n >\n <h1 slot=\"title\">Applicazione</h1>\n <h2 slot=\"subtitle\">Payoff dell'applicazione</h2>\n ${menuTemplate()}\n </z-app-header>`,\n} satisfies Story;\n"]}
1
+ {"version":3,"file":"index.stories.js","sourceRoot":"","sources":["../../../../src/components/z-app-header/index.stories.ts"],"names":[],"mappings":"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","sourcesContent":["import {Meta} from \"@storybook/web-components\";\nimport {TemplateResult, html} from \"lit\";\nimport {ZAppHeader} from \".\";\nimport {CSSVarsArguments} from \"../../utils/storybook-utils\";\nimport \"../z-menu-section/index\";\nimport \"../z-menu/index\";\nimport \"./index\";\nimport \"./index.stories.css\";\n\ntype ZAppHeaderStoriesArgs = ZAppHeader & CSSVarsArguments<\"app-header-content-max-width\">;\n\nconst StoryMeta = {\n title: \"ZAppHeader\",\n component: \"z-app-header\",\n parameters: {\n layout: \"fullscreen\",\n },\n subcomponents: {\n ZMenu: \"z-menu\",\n ZMenuSection: \"z-menu-section\",\n },\n args: {\n \"--app-header-content-max-width\": \"100%\",\n \"enableSearch\": false,\n \"searchPageUrl\": \"\",\n \"enableZLogo\": false,\n \"enableOffcanvas\": false,\n },\n} satisfies Meta<ZAppHeaderStoriesArgs>;\n\nexport default StoryMeta;\n\nconst menuItemsTemplate = (): TemplateResult => {\n return html`<a\n href=\"\"\n slot=\"item\"\n >Item 1</a\n >\n <z-menu-section slot=\"item\">\n <h3>Item 2</h3>\n <a\n href=\"\"\n slot=\"section\"\n >Item 2.1</a\n >\n <a\n href=\"\"\n slot=\"section\"\n >Item 2.2</a\n >\n </z-menu-section>\n <z-menu-section slot=\"item\">\n <h3>Item 3</h3>\n <a\n href=\"\"\n slot=\"section\"\n >Item 3.1</a\n >\n <a\n href=\"\"\n slot=\"section\"\n >Item 3.2</a\n >\n </z-menu-section>\n <a\n href=\"\"\n slot=\"item\"\n >Item 4</a\n >\n <z-menu-section slot=\"item\">\n <h3>Item 5</h3>\n <a\n href=\"\"\n slot=\"section\"\n >Item 5.1</a\n >\n <a\n href=\"\"\n slot=\"section\"\n >Item 5.2</a\n >\n </z-menu-section>`;\n};\n\nconst menuTemplate = (): TemplateResult => {\n return html`\n <z-menu slot=\"menu\">\n <h3>Menu label 1</h3>\n ${menuItemsTemplate()}\n </z-menu>\n\n <z-menu slot=\"menu\">\n <a href>Menu label 2</a>\n </z-menu>\n\n <z-menu slot=\"menu\">\n <h3>Menu label 3</h3>\n ${menuItemsTemplate()}\n </z-menu>\n\n <z-menu slot=\"menu\">\n <h3>Menu label 4</h3>\n ${menuItemsTemplate()}\n </z-menu>\n `;\n};\n\ntype Story = Meta<ZAppHeaderStoriesArgs>;\n\nexport const Title = {\n parameters: {\n controls: {\n exclude: [\"enableOffcanvas\"],\n },\n },\n render: (args) =>\n html`<z-app-header\n .enableSearch=${args.enableSearch}\n .searchPageUrl=${args.searchPageUrl}\n .enableZLogo=${args.enableZLogo}\n style=\"--app-header-content-max-width: ${args[\"--app-header-content-max-width\"]}\"\n >\n <a href=\"zanichelli.it\" slot=\"title\">Applicazione</h1>\n </z-app-header>`,\n} satisfies Story;\n\nexport const ProductLogo = {\n parameters: {\n controls: {\n exclude: [\"enableOffcanvas\"],\n },\n },\n render: (args) =>\n html`<z-app-header\n .enableSearch=${args.enableSearch}\n .searchPageUrl=${args.searchPageUrl}\n .enableZLogo=${args.enableZLogo}\n style=\"--app-header-content-max-width: ${args[\"--app-header-content-max-width\"]}\"\n >\n <h1 slot=\"title\">Applicazione</h1>\n <div\n class=\"story-product-logo\"\n slot=\"product-logo\"\n ></div>\n </z-app-header>`,\n} satisfies Story;\n\nexport const TopTitle = {\n parameters: {\n controls: {\n exclude: [\"enableOffcanvas\", \"enableZLogo\"],\n },\n },\n render: (args) =>\n html`<z-app-header\n .enableSearch=${args.enableSearch}\n .searchPageUrl=${args.searchPageUrl}\n style=\"--app-header-content-max-width: ${args[\"--app-header-content-max-width\"]}\"\n >\n <h2 slot=\"top-subtitle\">Payoff dell'applicazione</h2>\n <h1 slot=\"title\">Applicazione</h1>\n </z-app-header>`,\n} satisfies Story;\n\nexport const CustomMenuButton = {\n parameters: {\n controls: {\n exclude: [\"enableOffcanvas\"],\n },\n },\n render: (args) =>\n html`<z-app-header\n .enableSearch=${args.enableSearch}\n .searchPageUrl=${args.searchPageUrl}\n .enableZLogo=${args.enableZLogo}\n style=\"--app-header-content-max-width: ${args[\"--app-header-content-max-width\"]}\"\n >\n <button slot=\"menu-button\"><z-icon name=\"gear\" /></button>\n <a href=\"zanichelli.it\" slot=\"title\">Applicazione</h1>\n </z-app-header>`,\n} satisfies Story;\n\nexport const MenuWithTopTitle = {\n parameters: {\n controls: {\n exclude: [\"enableZLogo\"],\n },\n },\n render: (args) =>\n html`<z-app-header\n .enableOffcanvas=${args.enableOffcanvas}\n .enableSearch=${args.enableSearch}\n .searchPageUrl=${args.searchPageUrl}\n style=\"--app-header-content-max-width: ${args[\"--app-header-content-max-width\"]}\"\n >\n <h2 slot=\"top-subtitle\">Payoff dell'applicazione</h2>\n <h1 slot=\"title\">Applicazione</h1>\n ${menuTemplate()}\n </z-app-header>`,\n} satisfies Story;\n\nexport const LongTitle = {\n parameters: {\n controls: {\n exclude: [\"enableOffcanvas\", \"enableZLogo\", \"enableSearch\", \"searchPageUrl\"],\n },\n },\n render: (args) =>\n html`<z-app-header style=\"--app-header-content-max-width: ${args[\"--app-header-content-max-width\"]}\">\n <h1 slot=\"title\">Fondamenti di fisica 8e - Meccanica, Onde, Termodinamica, Elettromagnetismo, Ottica</h1>\n <h2 slot=\"top-subtitle\">Jearl Walker, David Halliday, Robert Resnick</h2>\n ${menuTemplate()}\n </z-app-header>`,\n} satisfies Story;\n\nexport const OffcanvasMenu = {\n args: {\n enableOffcanvas: true,\n },\n render: (args) =>\n html`<z-app-header\n .enableOffcanvas=${args.enableOffcanvas}\n .enableSearch=${args.enableSearch}\n .searchPageUrl=${args.searchPageUrl}\n .enableZLogo=${args.enableZLogo}\n style=\"--app-header-content-max-width: ${args[\"--app-header-content-max-width\"]}\"\n >\n <h1 slot=\"title\">Applicazione</h1>\n ${menuTemplate()}\n </z-app-header>`,\n} satisfies Story;\n\nexport const Stuck = {\n decorators: [\n (Story) => html`\n <div style=\"padding: 16px var(--grid-margin)\">Scroll to see <code>stuck</code> prop in action.</div>\n <div style=\"height: 200vh\">${Story()}</div>\n `,\n ],\n parameters: {\n docs: {\n story: {\n inline: false,\n iframeHeight: \"400px\",\n },\n },\n controls: {\n exclude: [\"enableOffcanvas\"],\n },\n },\n render: (args) =>\n html`<z-app-header\n stuck\n .enableZLogo=${args.enableZLogo}\n .enableSearch=${args.enableSearch}\n .searchPageUrl=${args.searchPageUrl}\n style=\"--app-header-content-max-width: ${args[\"--app-header-content-max-width\"]}; --app-header-top-offset: 0\"\n >\n <h1 slot=\"title\">Fondamenti di fisica 8e - Meccanica, Onde, Termodinamica, Elettromagnetismo, Ottica</h1>\n ${menuTemplate()}\n </z-app-header>`,\n} satisfies Story;\n\nexport const SearchPageButton = {\n parameters: {\n controls: {\n exclude: [\"searchPageUrl\", \"enableSearch\", \"enableOffcanvas\"],\n },\n },\n decorators: [\n (Story) => html`\n <div style=\"padding: 16px var(--grid-margin)\">\n The prop <code>searchPageUrl</code> only affects the component in tablet and mobile viewports.\n </div>\n ${Story()}\n `,\n ],\n render: (args) =>\n html`<z-app-header\n enable-search\n .enableZLogo=${args.enableZLogo}\n search-page-url=\"https://www.zanichelli.it\"\n style=\"--app-header-content-max-width: ${args[\"--app-header-content-max-width\"]}\"\n >\n <h1 slot=\"title\">Applicazione</h1>\n <h2 slot=\"subtitle\">Payoff dell'applicazione</h2>\n ${menuTemplate()}\n </z-app-header>`,\n} satisfies Story;\n"]}
@@ -243,7 +243,8 @@ z-searchbar {
243
243
  white-space: nowrap;
244
244
  }
245
245
 
246
- .drawer-trigger {
246
+ .drawer-trigger,
247
+ ::slotted([slot="menu-button"]) {
247
248
  display: flex;
248
249
  height: calc(var(--title-font-size) * var(--title-line-height));
249
250
  align-items: center;
@@ -5,7 +5,7 @@ export class ZAriaAlert {
5
5
  this.mode = ZAriaAlertMode.POLITE;
6
6
  }
7
7
  render() {
8
- return (h(Host, { key: '507fd85bea3bc6cdfa0915afaf57866e29cc36e3', "aria-live": this.mode, "aria-atomic": "true", "aria-relevant": "additions" }, h("slot", { key: 'b28a7129f907a00beb9e5aa186f2960d7d6c4d1d' })));
8
+ return (h(Host, { key: '693653c1398e02b138174066573558fac0d35ba2', "aria-live": this.mode, "aria-atomic": "true", "aria-relevant": "additions" }, h("slot", { key: '4dd3b545e9ae838a0fd8ce56b0c37f68a013d199' })));
9
9
  }
10
10
  static get is() { return "z-aria-alert"; }
11
11
  static get properties() {
@@ -24,10 +24,10 @@ export class ZAvatar {
24
24
  }
25
25
  }
26
26
  render() {
27
- return (h(Host, { key: '8ce8c6ffe56b55036f9f47146041fcb91051ad36', class: { [this.size]: true, [`body-${this.getTextSize()}-sb`]: true }, style: {
27
+ return (h(Host, { key: 'c9fa1bc24b529c058fe1bfa8f8b2f60ca8feccad', class: { [this.size]: true, [`body-${this.getTextSize()}-sb`]: true }, style: {
28
28
  color: `var(--${this.textColor})`,
29
29
  backgroundColor: `var(--${this.backgroundColor})`,
30
- } }, this.text && !this.image && h("span", { key: 'b989378860518c05074dcf3cf445df062679f3c1' }, this.text.substring(0, 2)), this.image && (h("img", { key: '56a3a248fe3f88b2ed285f6a7c133b542ca21940', src: this.image, onError: () => (this.image = "") }))));
30
+ } }, this.text && !this.image && h("span", { key: '7815e5074a69ed166710241d778c7bf12658a5f4' }, this.text.substring(0, 2)), this.image && (h("img", { key: 'e998f6c8b5686488f23d627e13bf3f7b125917b6', src: this.image, onError: () => (this.image = "") }))));
31
31
  }
32
32
  static get is() { return "z-avatar"; }
33
33
  static get encapsulation() { return "shadow"; }
@@ -0,0 +1,113 @@
1
+ import { Fragment, Host, h } from "@stencil/core";
2
+ import defaultFallbackCover from "../../assets/images/png/placeholder-cover.png";
3
+ /**
4
+ * This component displays a book cover image,
5
+ * with options for borders and a representation of multiple books with a stack of fake covers behind the original one.
6
+ * The aspect ratio of the cover image is preserved.
7
+ * Alignment of the image inside the container can be customized via CSS properties.
8
+ *
9
+ * @slot coverOverlay - Content to be displayed over the cover image (e.g. a label). The overlay is positioned at the bottom of the cover. Has some default styling (such as the colored background) that can be customized via CSS.
10
+ * @cssprop --z-book-cover-height - height of the book cover (default: `378px`). The width is calculated automatically to maintain an aspect ratio of 1.33.
11
+ * @cssprop --z-book-cover-border-radius - border radius of the book cover (default: `var(--border-radius)`)
12
+ * @cssprop --z-book-cover-stack-shift-x - the horizontal shift of each stacked cover when `multiple` is `true` (default: `8px`)
13
+ * @cssprop --z-book-cover-stack-shift-y - the vertical shift of each stacked cover when `multiple` is `true` (default: `12px`)
14
+ */
15
+ export class ZBookCover {
16
+ constructor() {
17
+ this.cover = undefined;
18
+ this.fallbackCover = undefined;
19
+ this.multiple = false;
20
+ this.bordered = false;
21
+ }
22
+ render() {
23
+ var _a;
24
+ return (h(Host, { key: '68d64d604da888608345f2ce5ca0c5936ab395a7' }, this.multiple && (h(Fragment, { key: 'ce48dbba436fd9fa9cfbda1b96880394b78bf6bc' }, h("div", { key: '50b4efc239d5a89cd224c4c3e78bd09544ae5a58', class: "shifted-stack-cover stack-cover-2" }), h("div", { key: 'aec43bf969d4b7f14c8eae78bd616c3fbcc8cdbc', class: "shifted-stack-cover stack-cover-1" }))), h("div", { key: 'd8c3f8f22e338f112cbede47f5cfbce61a018d5c', class: "cover-container" }, h("img", { key: '35fd6b50c3fbf63bd9e20e02be81348a45c448eb', src: (_a = this.cover) !== null && _a !== void 0 ? _a : defaultFallbackCover, "aria-hidden": "true", alt: "", onError: () => (this.cover = this.fallbackCover || defaultFallbackCover) }), h("slot", { key: '56dd2c69edcc18052667a71c09f9157e979617c0', name: "coverOverlay" }))));
25
+ }
26
+ static get is() { return "z-book-cover"; }
27
+ static get encapsulation() { return "shadow"; }
28
+ static get originalStyleUrls() {
29
+ return {
30
+ "$": ["styles.css"]
31
+ };
32
+ }
33
+ static get styleUrls() {
34
+ return {
35
+ "$": ["styles.css"]
36
+ };
37
+ }
38
+ static get properties() {
39
+ return {
40
+ "cover": {
41
+ "type": "string",
42
+ "mutable": false,
43
+ "complexType": {
44
+ "original": "string",
45
+ "resolved": "string",
46
+ "references": {}
47
+ },
48
+ "required": false,
49
+ "optional": false,
50
+ "docs": {
51
+ "tags": [],
52
+ "text": "URL of the cover image."
53
+ },
54
+ "attribute": "cover",
55
+ "reflect": false
56
+ },
57
+ "fallbackCover": {
58
+ "type": "string",
59
+ "mutable": false,
60
+ "complexType": {
61
+ "original": "string",
62
+ "resolved": "string",
63
+ "references": {}
64
+ },
65
+ "required": false,
66
+ "optional": false,
67
+ "docs": {
68
+ "tags": [],
69
+ "text": "URL of the fallback cover image."
70
+ },
71
+ "attribute": "fallback-cover",
72
+ "reflect": false
73
+ },
74
+ "multiple": {
75
+ "type": "boolean",
76
+ "mutable": false,
77
+ "complexType": {
78
+ "original": "boolean",
79
+ "resolved": "boolean",
80
+ "references": {}
81
+ },
82
+ "required": false,
83
+ "optional": false,
84
+ "docs": {
85
+ "tags": [],
86
+ "text": "Whether to show a stack of covers to represent multiple books."
87
+ },
88
+ "attribute": "multiple",
89
+ "reflect": true,
90
+ "defaultValue": "false"
91
+ },
92
+ "bordered": {
93
+ "type": "boolean",
94
+ "mutable": false,
95
+ "complexType": {
96
+ "original": "boolean",
97
+ "resolved": "boolean",
98
+ "references": {}
99
+ },
100
+ "required": false,
101
+ "optional": false,
102
+ "docs": {
103
+ "tags": [],
104
+ "text": "Whether to apply a border around the cover image (always applied when `multiple` is enabled)."
105
+ },
106
+ "attribute": "bordered",
107
+ "reflect": true,
108
+ "defaultValue": "false"
109
+ }
110
+ };
111
+ }
112
+ }
113
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/z-book-cover/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,EAAC,MAAM,eAAe,CAAC;AACjE,OAAO,oBAAoB,MAAM,+CAA+C,CAAC;AAEjF;;;;;;;;;;;GAWG;AAMH,MAAM,OAAO,UAAU;;;;wBAWV,KAAK;wBAIL,KAAK;;IAEhB,MAAM;;QACJ,OAAO,CACL,EAAC,IAAI;YACF,IAAI,CAAC,QAAQ,IAAI,CAChB,EAAC,QAAQ;gBACP,4DAAK,KAAK,EAAC,mCAAmC,GAAO;gBACrD,4DAAK,KAAK,EAAC,mCAAmC,GAAO,CAC5C,CACZ;YACD,4DAAK,KAAK,EAAC,iBAAiB;gBAC1B,4DACE,GAAG,EAAE,MAAA,IAAI,CAAC,KAAK,mCAAI,oBAAoB,iBAC3B,MAAM,EAClB,GAAG,EAAC,EAAE,EACN,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,aAAa,IAAI,oBAAoB,CAAC,GACxE;gBACF,6DAAM,IAAI,EAAC,cAAc,GAAQ,CAC7B,CACD,CACR,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import {Component, Fragment, Host, Prop, h} from \"@stencil/core\";\nimport defaultFallbackCover from \"../../assets/images/png/placeholder-cover.png\";\n\n/**\n * This component displays a book cover image,\n * with options for borders and a representation of multiple books with a stack of fake covers behind the original one.\n * The aspect ratio of the cover image is preserved.\n * Alignment of the image inside the container can be customized via CSS properties.\n *\n * @slot coverOverlay - Content to be displayed over the cover image (e.g. a label). The overlay is positioned at the bottom of the cover. Has some default styling (such as the colored background) that can be customized via CSS.\n * @cssprop --z-book-cover-height - height of the book cover (default: `378px`). The width is calculated automatically to maintain an aspect ratio of 1.33.\n * @cssprop --z-book-cover-border-radius - border radius of the book cover (default: `var(--border-radius)`)\n * @cssprop --z-book-cover-stack-shift-x - the horizontal shift of each stacked cover when `multiple` is `true` (default: `8px`)\n * @cssprop --z-book-cover-stack-shift-y - the vertical shift of each stacked cover when `multiple` is `true` (default: `12px`)\n */\n@Component({\n tag: \"z-book-cover\",\n styleUrl: \"styles.css\",\n shadow: true,\n})\nexport class ZBookCover {\n /** URL of the cover image. */\n @Prop()\n cover: string;\n\n /** URL of the fallback cover image. */\n @Prop()\n fallbackCover: string;\n\n /** Whether to show a stack of covers to represent multiple books. */\n @Prop({reflect: true})\n multiple = false;\n\n /** Whether to apply a border around the cover image (always applied when `multiple` is enabled). */\n @Prop({reflect: true})\n bordered = false;\n\n render(): HTMLZBookCoverElement {\n return (\n <Host>\n {this.multiple && (\n <Fragment>\n <div class=\"shifted-stack-cover stack-cover-2\"></div>\n <div class=\"shifted-stack-cover stack-cover-1\"></div>\n </Fragment>\n )}\n <div class=\"cover-container\">\n <img\n src={this.cover ?? defaultFallbackCover}\n aria-hidden=\"true\"\n alt=\"\"\n onError={() => (this.cover = this.fallbackCover || defaultFallbackCover)}\n />\n <slot name=\"coverOverlay\"></slot>\n </div>\n </Host>\n );\n }\n}\n"]}
@@ -0,0 +1,31 @@
1
+ import { html } from "lit";
2
+ import { styleMap } from "lit/directives/style-map.js";
3
+ import "./index";
4
+ const StoryMeta = {
5
+ title: "ZBookCover",
6
+ component: "z-book-cover",
7
+ args: {
8
+ "cover": "https://staticmy.zanichelli.it/copertine/dashboard/m40002.9788808999825.jpg",
9
+ "bordered": false,
10
+ "multiple": false,
11
+ "--z-book-cover-height": "378px",
12
+ "--z-book-cover-border-radius": "var(--border-radius)",
13
+ "--z-book-cover-stack-shift-x": "8px",
14
+ "--z-book-cover-stack-shift-y": "12px",
15
+ },
16
+ };
17
+ export default StoryMeta;
18
+ export const Default = {
19
+ render: (args) => html `<z-book-cover
20
+ cover=${args.cover}
21
+ .bordered=${args.bordered}
22
+ .multiple=${args.multiple}
23
+ style=${styleMap({
24
+ "--z-book-cover-height": args["--z-book-cover-height"],
25
+ "--z-book-cover-border-radius": args["--z-book-cover-border-radius"],
26
+ "--z-book-cover-stack-shift-x": args["--z-book-cover-stack-shift-x"],
27
+ "--z-book-cover-stack-shift-y": args["--z-book-cover-stack-shift-y"],
28
+ })}
29
+ ></z-book-cover>`,
30
+ };
31
+ //# sourceMappingURL=index.stories.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.stories.js","sourceRoot":"","sources":["../../../../src/components/z-book-cover/index.stories.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,IAAI,EAAC,MAAM,KAAK,CAAC;AACzB,OAAO,EAAC,QAAQ,EAAC,MAAM,6BAA6B,CAAC;AAGrD,OAAO,SAAS,CAAC;AAUjB,MAAM,SAAS,GAAG;IAChB,KAAK,EAAE,YAAY;IACnB,SAAS,EAAE,cAAc;IACzB,IAAI,EAAE;QACJ,OAAO,EAAE,6EAA6E;QACtF,UAAU,EAAE,KAAK;QACjB,UAAU,EAAE,KAAK;QACjB,uBAAuB,EAAE,OAAO;QAChC,8BAA8B,EAAE,sBAAsB;QACtD,8BAA8B,EAAE,KAAK;QACrC,8BAA8B,EAAE,MAAM;KACvC;CACoC,CAAC;AAExC,eAAe,SAAS,CAAC;AAIzB,MAAM,CAAC,MAAM,OAAO,GAAG;IACrB,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CACf,IAAI,CAAA;cACM,IAAI,CAAC,KAAK;kBACN,IAAI,CAAC,QAAQ;kBACb,IAAI,CAAC,QAAQ;cACjB,QAAQ,CAAC;QACf,uBAAuB,EAAE,IAAI,CAAC,uBAAuB,CAAC;QACtD,8BAA8B,EAAE,IAAI,CAAC,8BAA8B,CAAC;QACpE,8BAA8B,EAAE,IAAI,CAAC,8BAA8B,CAAC;QACpE,8BAA8B,EAAE,IAAI,CAAC,8BAA8B,CAAC;KACrE,CAAC;qBACa;CACJ,CAAC","sourcesContent":["import type {Meta, StoryObj} from \"@storybook/web-components\";\nimport {html} from \"lit\";\nimport {styleMap} from \"lit/directives/style-map.js\";\nimport {type ZBookCover} from \".\";\nimport {CSSVarsArguments} from \"../../utils/storybook-utils\";\nimport \"./index\";\n\ntype ZBookCoverStoriesArgs = ZBookCover &\n CSSVarsArguments<\n | \"--z-book-cover-height\"\n | \"--z-book-cover-border-radius\"\n | \"--z-book-cover-stack-shift-x\"\n | \"--z-book-cover-stack-shift-y\"\n >;\n\nconst StoryMeta = {\n title: \"ZBookCover\",\n component: \"z-book-cover\",\n args: {\n \"cover\": \"https://staticmy.zanichelli.it/copertine/dashboard/m40002.9788808999825.jpg\",\n \"bordered\": false,\n \"multiple\": false,\n \"--z-book-cover-height\": \"378px\",\n \"--z-book-cover-border-radius\": \"var(--border-radius)\",\n \"--z-book-cover-stack-shift-x\": \"8px\",\n \"--z-book-cover-stack-shift-y\": \"12px\",\n },\n} satisfies Meta<ZBookCoverStoriesArgs>;\n\nexport default StoryMeta;\n\ntype Story = StoryObj<ZBookCoverStoriesArgs>;\n\nexport const Default = {\n render: (args) =>\n html`<z-book-cover\n cover=${args.cover}\n .bordered=${args.bordered}\n .multiple=${args.multiple}\n style=${styleMap({\n \"--z-book-cover-height\": args[\"--z-book-cover-height\"],\n \"--z-book-cover-border-radius\": args[\"--z-book-cover-border-radius\"],\n \"--z-book-cover-stack-shift-x\": args[\"--z-book-cover-stack-shift-x\"],\n \"--z-book-cover-stack-shift-y\": args[\"--z-book-cover-stack-shift-y\"],\n })}\n ></z-book-cover>`,\n} satisfies Story;\n"]}
@@ -0,0 +1,95 @@
1
+ :host,
2
+ *,
3
+ ::slotted(*) {
4
+ box-sizing: border-box;
5
+ }
6
+
7
+ :host {
8
+ --z-book-cover-height: 378px;
9
+ --z-book-cover-border-radius: var(--border-radius);
10
+ --z-book-cover-stack-shift-x: 8px;
11
+ --z-book-cover-stack-shift-y: 12px;
12
+ --private_book-cover-width: round(nearest, var(--z-book-cover-height) / 1.33, 1px);
13
+
14
+ position: relative;
15
+ display: flex;
16
+ width: var(--private_book-cover-width);
17
+ max-width: 100%;
18
+ height: var(--z-book-cover-height);
19
+ max-height: 100%;
20
+ }
21
+
22
+ @supports not (width: round(1px, 1px)) {
23
+ /* If the `round()` function isn't supported, fallback to the float value */
24
+ :host {
25
+ --private_book-cover-width: calc(var(--z-book-cover-height) / 1.33);
26
+ }
27
+ }
28
+
29
+ :host > * {
30
+ z-index: 0;
31
+ background: var(--color-surface01);
32
+ }
33
+
34
+ .cover-container {
35
+ position: relative;
36
+ display: flex;
37
+ overflow: hidden;
38
+ width: 100%;
39
+ height: 100%;
40
+ align-items: start;
41
+ justify-content: center;
42
+ border-radius: var(--z-book-cover-border-radius);
43
+ }
44
+
45
+ img {
46
+ max-width: 100%;
47
+ max-height: 100%;
48
+ }
49
+
50
+ :host([multiple]) {
51
+ width: calc(var(--private_book-cover-width) - (var(--z-book-cover-stack-shift-x) * 2));
52
+ height: calc(var(--z-book-cover-height) - (var(--z-book-cover-stack-shift-y) * 2));
53
+ margin-bottom: calc(var(--z-book-cover-stack-shift-y) * 2);
54
+ margin-left: calc(var(--z-book-cover-stack-shift-x) * 2);
55
+ }
56
+
57
+ :host([bordered]) .cover-container,
58
+ :host([multiple]) .cover-container {
59
+ border: var(--border-size-small) solid var(--color-surface05);
60
+ }
61
+
62
+ .shifted-stack-cover {
63
+ position: absolute;
64
+ width: 100%;
65
+ height: 100%;
66
+ border: var(--border-size-small) solid var(--color-surface05);
67
+ border-radius: var(--z-book-cover-border-radius);
68
+ }
69
+
70
+ .shifted-stack-cover.stack-cover-1 {
71
+ top: var(--z-book-cover-stack-shift-y);
72
+ left: calc(-1 * var(--z-book-cover-stack-shift-x));
73
+ }
74
+
75
+ .shifted-stack-cover.stack-cover-2 {
76
+ top: calc(var(--z-book-cover-stack-shift-y) * 2);
77
+ left: calc(var(--z-book-cover-stack-shift-x) * -2);
78
+ }
79
+
80
+ ::slotted([slot="coverOverlay"]) {
81
+ position: absolute;
82
+ bottom: 0;
83
+ display: flex;
84
+ overflow: hidden;
85
+ width: 100%;
86
+ min-height: 80px;
87
+ max-height: 85%;
88
+ align-items: center;
89
+ justify-content: center;
90
+ padding: var(--space-unit);
91
+ background-color: var(--avatar-C19);
92
+ color: var(--color-white);
93
+ overflow-wrap: anywhere;
94
+ text-align: center;
95
+ }
@@ -199,10 +199,10 @@ export class ZBreadcrumb {
199
199
  ];
200
200
  }
201
201
  render() {
202
- return (h(Host, { key: 'bd4614a169bb3bd236c84b4b75de459189c6ebce', style: { "--line-clamp-popover": `${this.overflowMenuItemRows}` } }, h("nav", { key: '9148dec5bf9bdc9ea5b7a1bd67b60d85cbff688c', ref: (val) => (this.wrapElement = val), "aria-label": "Breadcrumb", class: {
202
+ return (h(Host, { key: 'dfdce7063e125f7f2a04be854aa0104f3b5f8c97', style: { "--line-clamp-popover": `${this.overflowMenuItemRows}` } }, h("nav", { key: '4cab944188a1a308715f46d2d8d996c69219f6f2', ref: (val) => (this.wrapElement = val), "aria-label": "Breadcrumb", class: {
203
203
  semibold: this.pathStyle === BreadcrumbPathStyle.SEMIBOLD,
204
204
  underlined: this.pathStyle === BreadcrumbPathStyle.UNDERLINED,
205
- } }, h("ol", { key: '7c2d74ec32b18e22f444a9ab9ed3c6fb04983558' }, this.viewPortWidth === Device.MOBILE ? this.renderMobileItems() : this.renderItems()))));
205
+ } }, h("ol", { key: '1c549b867f77a75eb67a5ed35f389a98761ae70d' }, this.viewPortWidth === Device.MOBILE ? this.renderMobileItems() : this.renderItems()))));
206
206
  }
207
207
  static get is() { return "z-breadcrumb"; }
208
208
  static get encapsulation() { return "shadow"; }
@@ -36,7 +36,7 @@ export class ZButtonSort {
36
36
  return this.ellipsis.offsetWidth < this.ellipsis.scrollWidth;
37
37
  }
38
38
  render() {
39
- return (h("button", { key: '48135e022855d78da6ea11bf643bb6f3165a5ffc', title: this.setButtonTitle(), id: this.buttonid, class: { selected: this.isselected }, onClick: () => this.emitButtonSortClick() }, h("span", { key: '211cf02c4ecf6558030ca0ad16bc12a657a5ad99', ref: (el) => (this.ellipsis = el), class: "ellipsis" }, !this.sortasc && this.desclabel ? this.desclabel : this.label), h("span", { key: '93e81849c1aa11be20b258b7c6156fa006d411c9', class: "counter" }, this.counter && ` (${this.counter})`), h("span", { key: 'f3a1e05c2fb37fc36f724d1760a691c45c8397e9', class: "sort" }, this.sortasc ? this.sortlabelasc : this.sortlabeldesc), h("z-icon", { key: '34fb2d58e925c18101f17e337332faf1cf55eecb', name: "caret-up-down", width: 16, height: 16 })));
39
+ return (h("button", { key: '551cd870041bc9d74949c55ddade45b607627b9c', title: this.setButtonTitle(), id: this.buttonid, class: { selected: this.isselected }, onClick: () => this.emitButtonSortClick() }, h("span", { key: '04f900a2110709622e1417517ad8c0f56a9dd560', ref: (el) => (this.ellipsis = el), class: "ellipsis" }, !this.sortasc && this.desclabel ? this.desclabel : this.label), h("span", { key: 'b075fc8a9b9d61053755b7d2cf6216b88eca21e6', class: "counter" }, this.counter && ` (${this.counter})`), h("span", { key: 'f4a93840d7e1a8d66fdcb67d658fc9b919145302', class: "sort" }, this.sortasc ? this.sortlabelasc : this.sortlabeldesc), h("z-icon", { key: '118fa5dea4d246c9c5ebfcd06f717a55ef64d39f', name: "caret-up-down", width: 16, height: 16 })));
40
40
  }
41
41
  static get is() { return "z-button-sort"; }
42
42
  static get encapsulation() { return "shadow"; }
@@ -9,11 +9,11 @@ export class ZChip {
9
9
  this.ariaLabel = "";
10
10
  }
11
11
  render() {
12
- return (h("div", { key: '4b4a07ba069a0392343f826702b9d221fe76f0be', class: {
12
+ return (h("div", { key: 'b72d752e39024d30607e7a86bc9541ea2141e40c', class: {
13
13
  "z-chip-container": true,
14
14
  "z-chip-interactive": !!this.interactiveIcon,
15
15
  [this.type]: true,
16
- }, "aria-disabled": this.disabled }, this.icon && h("z-icon", { key: '1adeb5f9343cfd12208342e2028ba802f5aa6dd6', name: this.icon }), h("slot", { key: 'ea3d86af473a049622e6de91dc6dafee0499da05' }), this.interactiveIcon && (h("button", { key: 'd4d2eb2c77d2a1224e0582500fc329a381e07a20', type: "button", onClick: () => this.interactiveIconClick.emit(), "aria-label": this.ariaLabel, disabled: this.disabled }, h("z-icon", { key: '7d4d4743ac1c87882732f9b5145afc70889dcac2', class: "interactive-icon", name: this.interactiveIcon })))));
16
+ }, "aria-disabled": this.disabled }, this.icon && h("z-icon", { key: 'ea88728b94745d8a72b78ffdbb09d24de10d56a5', name: this.icon }), h("slot", { key: '36bea3ad6017a06d4ed8a3592ce98f5799da7e79' }), this.interactiveIcon && (h("button", { key: '0321ec2ba1a499057022fa46f4c6d4e284d74ce4', type: "button", onClick: () => this.interactiveIconClick.emit(), "aria-label": this.ariaLabel, disabled: this.disabled }, h("z-icon", { key: 'dc32dda6bd49e897b4895b17069e0f031f622070', class: "interactive-icon", name: this.interactiveIcon })))));
17
17
  }
18
18
  static get is() { return "z-chip"; }
19
19
  static get encapsulation() { return "scoped"; }