@zanichelli/albe-web-components 17.0.0-RC4 → 17.0.1

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 (820) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/dist/cjs/{index-a42ab7c9.js → index-2a9a328d.js} +2 -2
  3. package/dist/cjs/{index-a42ab7c9.js.map → index-2a9a328d.js.map} +1 -1
  4. package/dist/cjs/{index-47d0257d.js → index-4e2d222e.js} +3 -3
  5. package/dist/cjs/index-4e2d222e.js.map +1 -0
  6. package/dist/cjs/{index-816614ee.js → index-7191c0cc.js} +2 -2
  7. package/dist/cjs/{index-816614ee.js.map → index-7191c0cc.js.map} +1 -1
  8. package/dist/cjs/{index-3b95f98f.js → index-a6593d82.js} +2 -2
  9. package/dist/cjs/{index-3b95f98f.js.map → index-a6593d82.js.map} +1 -1
  10. package/dist/cjs/{index-15cb0816.js → index-aa56c709.js} +5 -5
  11. package/dist/cjs/index-aa56c709.js.map +1 -0
  12. package/dist/cjs/{index-0b5e5c05.js → index-b2f35532.js} +3 -3
  13. package/dist/cjs/index-b2f35532.js.map +1 -0
  14. package/dist/cjs/loader.cjs.js +1 -1
  15. package/dist/cjs/web-components-library.cjs.js +1 -1
  16. package/dist/cjs/z-accordion.cjs.entry.js +2 -2
  17. package/dist/cjs/z-accordion.cjs.entry.js.map +1 -1
  18. package/dist/cjs/z-alert.cjs.entry.js +1 -1
  19. package/dist/cjs/z-anchor-navigation.cjs.entry.js +2 -2
  20. package/dist/cjs/z-anchor-navigation.cjs.entry.js.map +1 -1
  21. package/dist/cjs/z-app-header-deprecated.cjs.entry.js +1 -1
  22. package/dist/cjs/z-app-header_12.cjs.entry.js +28 -16
  23. package/dist/cjs/z-app-header_12.cjs.entry.js.map +1 -1
  24. package/dist/cjs/z-aria-alert.cjs.entry.js +1 -1
  25. package/dist/cjs/z-avatar.cjs.entry.js +2 -2
  26. package/dist/cjs/z-book-card-app.cjs.entry.js +2 -2
  27. package/dist/cjs/z-book-card-app.cjs.entry.js.map +1 -1
  28. package/dist/cjs/z-book-card-deprecated.cjs.entry.js +2 -2
  29. package/dist/cjs/z-book-card-deprecated.cjs.entry.js.map +1 -1
  30. package/dist/cjs/z-book-card.cjs.entry.js +3 -3
  31. package/dist/cjs/z-book-card.cjs.entry.js.map +1 -1
  32. package/dist/cjs/z-breadcrumb.cjs.entry.js +3 -3
  33. package/dist/cjs/z-breadcrumb.cjs.entry.js.map +1 -1
  34. package/dist/cjs/z-button-sort.cjs.entry.js +1 -1
  35. package/dist/cjs/z-chip.cjs.entry.js +2 -2
  36. package/dist/cjs/z-combobox.cjs.entry.js +2 -2
  37. package/dist/cjs/z-combobox.cjs.entry.js.map +1 -1
  38. package/dist/cjs/z-cover-hero.cjs.entry.js +2 -2
  39. package/dist/cjs/z-date-picker.cjs.entry.js +1 -1
  40. package/dist/cjs/z-dragdrop-area_2.cjs.entry.js +17 -27
  41. package/dist/cjs/z-dragdrop-area_2.cjs.entry.js.map +1 -1
  42. package/dist/cjs/z-file-upload.cjs.entry.js +77 -101
  43. package/dist/cjs/z-file-upload.cjs.entry.js.map +1 -1
  44. package/dist/cjs/z-file.cjs.entry.js +1 -1
  45. package/dist/cjs/z-ghost-loading.cjs.entry.js +2 -2
  46. package/dist/cjs/z-ghost-loading.cjs.entry.js.map +1 -1
  47. package/dist/cjs/z-info-box.cjs.entry.js +1 -1
  48. package/dist/cjs/z-info-reveal.cjs.entry.js +1 -1
  49. package/dist/cjs/z-logo.cjs.entry.js +1 -1
  50. package/dist/cjs/z-menu-deprecated.cjs.entry.js +1 -1
  51. package/dist/cjs/z-menu-section-deprecated.cjs.entry.js +1 -1
  52. package/dist/cjs/z-menu-section.cjs.entry.js +2 -2
  53. package/dist/cjs/z-menu-section.cjs.entry.js.map +1 -1
  54. package/dist/cjs/z-menu.cjs.entry.js +1 -1
  55. package/dist/cjs/z-menu.cjs.entry.js.map +1 -1
  56. package/dist/cjs/z-myz-card-alert.cjs.entry.js +2 -2
  57. package/dist/cjs/z-myz-card-alert.cjs.entry.js.map +1 -1
  58. package/dist/cjs/z-myz-card-dictionary.cjs.entry.js +1 -1
  59. package/dist/cjs/z-myz-card-footer-sections.cjs.entry.js +1 -1
  60. package/dist/cjs/z-myz-card-footer.cjs.entry.js +1 -1
  61. package/dist/cjs/z-myz-card-icon.cjs.entry.js +1 -1
  62. package/dist/cjs/z-myz-card-info.cjs.entry.js +2 -2
  63. package/dist/cjs/z-myz-card-info.cjs.entry.js.map +1 -1
  64. package/dist/cjs/z-myz-card-list.cjs.entry.js +1 -1
  65. package/dist/cjs/z-myz-card_4.cjs.entry.js +6 -6
  66. package/dist/cjs/z-myz-card_4.cjs.entry.js.map +1 -1
  67. package/dist/cjs/z-myz-list-item.cjs.entry.js +1 -1
  68. package/dist/cjs/z-myz-list.cjs.entry.js +1 -1
  69. package/dist/cjs/z-navigation-tabs.cjs.entry.js +3 -3
  70. package/dist/cjs/z-navigation-tabs.cjs.entry.js.map +1 -1
  71. package/dist/cjs/z-notification.cjs.entry.js +1 -1
  72. package/dist/cjs/z-otp.cjs.entry.js +2 -2
  73. package/dist/cjs/z-panel-elem.cjs.entry.js +3 -2
  74. package/dist/cjs/z-panel-elem.cjs.entry.js.map +1 -1
  75. package/dist/cjs/z-popover.cjs.entry.js +1 -1
  76. package/dist/cjs/z-range-picker.cjs.entry.js +3 -3
  77. package/dist/cjs/z-section-title.cjs.entry.js +1 -1
  78. package/dist/cjs/z-select.cjs.entry.js +1 -1
  79. package/dist/cjs/z-skip-to-content.cjs.entry.js +2 -3
  80. package/dist/cjs/z-skip-to-content.cjs.entry.js.map +1 -1
  81. package/dist/cjs/z-slideshow.cjs.entry.js +1 -1
  82. package/dist/cjs/z-slideshow.cjs.entry.js.map +1 -1
  83. package/dist/cjs/z-stepper-item.cjs.entry.js +1 -1
  84. package/dist/cjs/z-stepper.cjs.entry.js +1 -1
  85. package/dist/cjs/z-table.cjs.entry.js +7 -7
  86. package/dist/cjs/z-tbody.cjs.entry.js +1 -1
  87. package/dist/cjs/z-td.cjs.entry.js +1 -1
  88. package/dist/cjs/z-tfoot.cjs.entry.js +1 -1
  89. package/dist/cjs/z-th.cjs.entry.js +1 -1
  90. package/dist/cjs/z-thead.cjs.entry.js +1 -1
  91. package/dist/cjs/z-toast-notification-list.cjs.entry.js +1 -1
  92. package/dist/cjs/z-toast-notification.cjs.entry.js +1 -1
  93. package/dist/cjs/z-toggle-button.cjs.entry.js +2 -2
  94. package/dist/cjs/z-toggle-switch.cjs.entry.js +3 -3
  95. package/dist/cjs/z-tooltip.cjs.entry.js +1 -1
  96. package/dist/cjs/z-tr.cjs.entry.js +3 -3
  97. package/dist/cjs/z-visually-hidden.cjs.entry.js +1 -1
  98. package/dist/collection/collection-manifest.json +1 -1
  99. package/dist/collection/components/book-card/z-book-card/index.js +2 -2
  100. package/dist/collection/components/book-card/z-book-card/index.js.map +1 -1
  101. package/dist/collection/components/book-card/z-book-card-app/index.js +1 -1
  102. package/dist/collection/components/css-components/z-link/index.stories.js +5 -6
  103. package/dist/collection/components/css-components/z-link/index.stories.js.map +1 -1
  104. package/dist/collection/components/css-components/z-link/styles.css +101 -107
  105. package/dist/collection/components/date-picker/z-date-picker/index.js +1 -1
  106. package/dist/collection/components/date-picker/z-range-picker/index.js +3 -3
  107. package/dist/collection/components/deprecated/z-app-header-deprecated/index.js +1 -1
  108. package/dist/collection/components/deprecated/z-book-card-deprecated/index.js +1 -1
  109. package/dist/collection/components/deprecated/z-book-card-deprecated/index.stories.js +3 -3
  110. package/dist/collection/components/deprecated/z-book-card-deprecated/index.stories.js.map +1 -1
  111. package/dist/collection/components/deprecated/z-book-card-deprecated/styles.css +2 -2
  112. package/dist/collection/components/deprecated/z-menu-deprecated/index.js +1 -1
  113. package/dist/collection/components/deprecated/z-menu-section-deprecated/index.js +1 -1
  114. package/dist/collection/components/file-upload/z-dragdrop-area/index.js +17 -16
  115. package/dist/collection/components/file-upload/z-dragdrop-area/index.js.map +1 -1
  116. package/dist/collection/components/file-upload/z-dragdrop-area/styles.css +54 -28
  117. package/dist/collection/components/file-upload/z-file/index.js +1 -1
  118. package/dist/collection/components/file-upload/z-file-upload/index.js +146 -107
  119. package/dist/collection/components/file-upload/z-file-upload/index.js.map +1 -1
  120. package/dist/collection/components/file-upload/z-file-upload/index.stories.js +11 -13
  121. package/dist/collection/components/file-upload/z-file-upload/index.stories.js.map +1 -1
  122. package/dist/collection/components/file-upload/z-file-upload/styles.css +19 -53
  123. package/dist/collection/components/list/z-list/index.js +1 -1
  124. package/dist/collection/components/list/z-list-element/index.js +1 -1
  125. package/dist/collection/components/list/z-list-element/styles.css +2 -2
  126. package/dist/collection/components/list/z-list-group/index.js +2 -2
  127. package/dist/collection/components/table/cells/z-td/index.js +1 -1
  128. package/dist/collection/components/table/cells/z-th/index.js +1 -1
  129. package/dist/collection/components/table/cells/z-th/styles.css +1 -1
  130. package/dist/collection/components/table/z-table/index.js +1 -1
  131. package/dist/collection/components/table/z-tbody/index.js +1 -1
  132. package/dist/collection/components/table/z-tfoot/index.js +1 -1
  133. package/dist/collection/components/table/z-thead/index.js +1 -1
  134. package/dist/collection/components/table/z-thead/styles.css +1 -1
  135. package/dist/collection/components/table/z-tr/index.js +1 -1
  136. package/dist/collection/components/table/z-tr/styles.css +1 -1
  137. package/dist/collection/components/z-accordion/index.js +1 -1
  138. package/dist/collection/components/z-accordion/styles.css +6 -1
  139. package/dist/collection/components/z-anchor-navigation/index.js +1 -1
  140. package/dist/collection/components/z-anchor-navigation/styles.css +6 -4
  141. package/dist/collection/components/z-app-header/index.js +1 -1
  142. package/dist/collection/components/z-aria-alert/index.js +1 -1
  143. package/dist/collection/components/z-avatar/index.js +2 -2
  144. package/dist/collection/components/z-breadcrumb/index.js +2 -2
  145. package/dist/collection/components/z-breadcrumb/styles.css +4 -4
  146. package/dist/collection/components/z-button-sort/index.js +1 -1
  147. package/dist/collection/components/z-chip/index.js +2 -2
  148. package/dist/collection/components/z-combobox/index.js +1 -1
  149. package/dist/collection/components/z-combobox/styles.css +2 -2
  150. package/dist/collection/components/z-cover-hero/index.js +2 -2
  151. package/dist/collection/components/z-divider/index.js +1 -1
  152. package/dist/collection/components/z-ghost-loading/index.js +1 -1
  153. package/dist/collection/components/z-ghost-loading/styles.css +3 -3
  154. package/dist/collection/components/z-icon/index.js +1 -1
  155. package/dist/collection/components/z-info-box/index.js +1 -1
  156. package/dist/collection/components/z-info-reveal/index.js +1 -1
  157. package/dist/collection/components/z-input/index.js +1 -1
  158. package/dist/collection/components/z-input/styles.css +2 -2
  159. package/dist/collection/components/z-input-message/index.js +1 -1
  160. package/dist/collection/components/z-logo/index.js +1 -1
  161. package/dist/collection/components/z-menu/styles.css +3 -3
  162. package/dist/collection/components/z-menu-section/index.js +1 -1
  163. package/dist/collection/components/z-menu-section/styles.css +3 -3
  164. package/dist/collection/components/z-modal/index.js +4 -10
  165. package/dist/collection/components/z-modal/index.js.map +1 -1
  166. package/dist/collection/components/z-modal/styles.css +1 -1
  167. package/dist/collection/components/z-navigation-tabs/index.js +2 -2
  168. package/dist/collection/components/z-navigation-tabs/styles.css +3 -3
  169. package/dist/collection/components/z-notification/index.js +1 -1
  170. package/dist/collection/components/z-offcanvas/index.js +1 -1
  171. package/dist/collection/components/z-panel-elem/index.js +3 -2
  172. package/dist/collection/components/z-panel-elem/index.js.map +1 -1
  173. package/dist/collection/components/z-popover/index.js +1 -1
  174. package/dist/collection/components/z-searchbar/index.js +1 -1
  175. package/dist/collection/components/z-searchbar/styles.css +1 -1
  176. package/dist/collection/components/z-section-title/index.js +1 -1
  177. package/dist/collection/components/z-select/index.js +1 -1
  178. package/dist/collection/components/z-skip-to-content/index.js +2 -3
  179. package/dist/collection/components/z-skip-to-content/index.js.map +1 -1
  180. package/dist/collection/components/z-stepper/index.js +1 -1
  181. package/dist/collection/components/z-stepper-item/index.js +1 -1
  182. package/dist/collection/components/z-tag/index.js +2 -2
  183. package/dist/collection/components/z-toast-notification/index.js +1 -1
  184. package/dist/collection/components/z-toast-notification-list/index.js +1 -1
  185. package/dist/collection/components/z-toggle-button/index.js +2 -2
  186. package/dist/collection/components/z-toggle-switch/index.js +3 -3
  187. package/dist/collection/components/z-tooltip/index.js +1 -1
  188. package/dist/collection/components/z-visually-hidden/index.js +1 -1
  189. package/dist/collection/constants/iconset.js +12 -0
  190. package/dist/collection/constants/iconset.js.map +1 -1
  191. package/dist/collection/snowflakes/myz/card/z-myz-card/index.js +1 -1
  192. package/dist/collection/snowflakes/myz/card/z-myz-card/styles.css +1 -1
  193. package/dist/collection/snowflakes/myz/card/z-myz-card-alert/index.js +1 -1
  194. package/dist/collection/snowflakes/myz/card/z-myz-card-alert/styles.css +1 -1
  195. package/dist/collection/snowflakes/myz/card/z-myz-card-body/index.js +1 -1
  196. package/dist/collection/snowflakes/myz/card/z-myz-card-cover/index.js +1 -1
  197. package/dist/collection/snowflakes/myz/card/z-myz-card-dictionary/index.js +1 -1
  198. package/dist/collection/snowflakes/myz/card/z-myz-card-footer/index.js +1 -1
  199. package/dist/collection/snowflakes/myz/card/z-myz-card-footer-sections/index.js +1 -1
  200. package/dist/collection/snowflakes/myz/card/z-myz-card-header/index.js +1 -1
  201. package/dist/collection/snowflakes/myz/card/z-myz-card-header/styles.css +1 -1
  202. package/dist/collection/snowflakes/myz/card/z-myz-card-icon/index.js +1 -1
  203. package/dist/collection/snowflakes/myz/card/z-myz-card-info/index.js +1 -1
  204. package/dist/collection/snowflakes/myz/card/z-myz-card-info/styles.css +1 -1
  205. package/dist/collection/snowflakes/myz/card/z-myz-card-list/index.js +1 -1
  206. package/dist/collection/snowflakes/myz/list/z-myz-list/index.js +1 -1
  207. package/dist/collection/snowflakes/myz/list/z-myz-list-item/index.js +1 -1
  208. package/dist/collection/snowflakes/myz/z-alert/index.js +1 -1
  209. package/dist/collection/snowflakes/myz/z-otp/index.js +2 -2
  210. package/dist/collection/snowflakes/myz/z-slideshow/styles.css +2 -2
  211. package/dist/components/iconset.js +12 -0
  212. package/dist/components/iconset.js.map +1 -1
  213. package/dist/components/index10.js +1 -1
  214. package/dist/components/index11.js +2 -2
  215. package/dist/components/index11.js.map +1 -1
  216. package/dist/components/index12.js +1 -1
  217. package/dist/components/index13.js +1 -1
  218. package/dist/components/index14.js +2 -2
  219. package/dist/components/index14.js.map +1 -1
  220. package/dist/components/index15.js +2 -2
  221. package/dist/components/index16.js +5 -11
  222. package/dist/components/index16.js.map +1 -1
  223. package/dist/components/index17.js +2 -2
  224. package/dist/components/index17.js.map +1 -1
  225. package/dist/components/index18.js +1 -1
  226. package/dist/components/index19.js +1 -1
  227. package/dist/components/index20.js +2 -2
  228. package/dist/components/index20.js.map +1 -1
  229. package/dist/components/index21.js +1 -1
  230. package/dist/components/index22.js +1 -1
  231. package/dist/components/index23.js +1 -1
  232. package/dist/components/index24.js +2 -2
  233. package/dist/components/index24.js.map +1 -1
  234. package/dist/components/index25.js +2 -2
  235. package/dist/components/index3.js +1 -1
  236. package/dist/components/index5.js +2 -2
  237. package/dist/components/index6.js +1 -1
  238. package/dist/components/index7.js +28 -19
  239. package/dist/components/index7.js.map +1 -1
  240. package/dist/components/index8.js +2 -2
  241. package/dist/components/index8.js.map +1 -1
  242. package/dist/components/index9.js +1 -1
  243. package/dist/components/z-accordion.js +2 -2
  244. package/dist/components/z-accordion.js.map +1 -1
  245. package/dist/components/z-anchor-navigation.js +2 -2
  246. package/dist/components/z-anchor-navigation.js.map +1 -1
  247. package/dist/components/z-app-header-deprecated.js +1 -1
  248. package/dist/components/z-app-header.js +1 -1
  249. package/dist/components/z-aria-alert.js +1 -1
  250. package/dist/components/z-avatar.js +2 -2
  251. package/dist/components/z-book-card-app.js +2 -2
  252. package/dist/components/z-book-card-app.js.map +1 -1
  253. package/dist/components/z-book-card-deprecated.js +2 -2
  254. package/dist/components/z-book-card-deprecated.js.map +1 -1
  255. package/dist/components/z-book-card.js +3 -3
  256. package/dist/components/z-book-card.js.map +1 -1
  257. package/dist/components/z-breadcrumb.js +3 -3
  258. package/dist/components/z-breadcrumb.js.map +1 -1
  259. package/dist/components/z-button-sort.js +1 -1
  260. package/dist/components/z-combobox.js +2 -2
  261. package/dist/components/z-combobox.js.map +1 -1
  262. package/dist/components/z-cover-hero.js +2 -2
  263. package/dist/components/z-date-picker.js +1 -1
  264. package/dist/components/z-file-upload.js +85 -112
  265. package/dist/components/z-file-upload.js.map +1 -1
  266. package/dist/components/z-file.js +1 -1
  267. package/dist/components/z-info-box.js +1 -1
  268. package/dist/components/z-logo.js +1 -1
  269. package/dist/components/z-menu-deprecated.js +1 -1
  270. package/dist/components/z-menu-section-deprecated.js +1 -1
  271. package/dist/components/z-menu-section.js +2 -2
  272. package/dist/components/z-menu-section.js.map +1 -1
  273. package/dist/components/z-menu.js +1 -1
  274. package/dist/components/z-menu.js.map +1 -1
  275. package/dist/components/z-myz-card-alert.js +2 -2
  276. package/dist/components/z-myz-card-alert.js.map +1 -1
  277. package/dist/components/z-myz-card-dictionary.js +1 -1
  278. package/dist/components/z-myz-card-footer-sections.js +1 -1
  279. package/dist/components/z-myz-card-footer.js +1 -1
  280. package/dist/components/z-myz-card-icon.js +1 -1
  281. package/dist/components/z-myz-card-info.js +2 -2
  282. package/dist/components/z-myz-card-info.js.map +1 -1
  283. package/dist/components/z-myz-card-list.js +1 -1
  284. package/dist/components/z-myz-list.js +1 -1
  285. package/dist/components/z-navigation-tabs.js +3 -3
  286. package/dist/components/z-navigation-tabs.js.map +1 -1
  287. package/dist/components/z-notification.js +1 -1
  288. package/dist/components/z-otp.js +2 -2
  289. package/dist/components/z-panel-elem.js +3 -2
  290. package/dist/components/z-panel-elem.js.map +1 -1
  291. package/dist/components/z-range-picker.js +3 -3
  292. package/dist/components/z-section-title.js +1 -1
  293. package/dist/components/z-select.js +1 -1
  294. package/dist/components/z-skip-to-content.js +2 -3
  295. package/dist/components/z-skip-to-content.js.map +1 -1
  296. package/dist/components/z-slideshow.js +1 -1
  297. package/dist/components/z-slideshow.js.map +1 -1
  298. package/dist/components/z-stepper-item.js +1 -1
  299. package/dist/components/z-stepper.js +1 -1
  300. package/dist/components/z-table.js +1 -1
  301. package/dist/components/z-tbody.js +1 -1
  302. package/dist/components/z-td.js +1 -1
  303. package/dist/components/z-tfoot.js +1 -1
  304. package/dist/components/z-th.js +2 -2
  305. package/dist/components/z-th.js.map +1 -1
  306. package/dist/components/z-thead.js +2 -2
  307. package/dist/components/z-thead.js.map +1 -1
  308. package/dist/components/z-toast-notification-list.js +1 -1
  309. package/dist/components/z-toast-notification.js +1 -1
  310. package/dist/components/z-toggle-button.js +2 -2
  311. package/dist/components/z-toggle-switch.js +3 -3
  312. package/dist/components/z-tooltip.js +1 -1
  313. package/dist/components/z-tr.js +2 -2
  314. package/dist/components/z-tr.js.map +1 -1
  315. package/dist/components/z-visually-hidden.js +1 -1
  316. package/dist/docs/themes/index.stories.js +1 -1
  317. package/dist/docs/themes/index.stories.js.map +1 -1
  318. package/dist/esm/{index-daf6dc52.js → index-04335eea.js} +2 -2
  319. package/dist/esm/{index-daf6dc52.js.map → index-04335eea.js.map} +1 -1
  320. package/dist/esm/{index-a71eb5f5.js → index-5dff449e.js} +3 -3
  321. package/dist/esm/index-5dff449e.js.map +1 -0
  322. package/dist/esm/{index-bf3d3447.js → index-735d4f23.js} +2 -2
  323. package/dist/esm/{index-bf3d3447.js.map → index-735d4f23.js.map} +1 -1
  324. package/dist/esm/{index-13d1f531.js → index-8df19678.js} +5 -5
  325. package/dist/esm/index-8df19678.js.map +1 -0
  326. package/dist/esm/{index-f372e39c.js → index-90f624c1.js} +3 -3
  327. package/{www/build/p-72bfc9d0.js.map → dist/esm/index-90f624c1.js.map} +1 -1
  328. package/dist/esm/{index-358dea59.js → index-9adfcd0d.js} +2 -2
  329. package/dist/esm/{index-358dea59.js.map → index-9adfcd0d.js.map} +1 -1
  330. package/dist/esm/loader.js +1 -1
  331. package/dist/esm/web-components-library.js +1 -1
  332. package/dist/esm/z-accordion.entry.js +2 -2
  333. package/dist/esm/z-accordion.entry.js.map +1 -1
  334. package/dist/esm/z-alert.entry.js +1 -1
  335. package/dist/esm/z-anchor-navigation.entry.js +2 -2
  336. package/dist/esm/z-anchor-navigation.entry.js.map +1 -1
  337. package/dist/esm/z-app-header-deprecated.entry.js +1 -1
  338. package/dist/esm/z-app-header_12.entry.js +28 -16
  339. package/dist/esm/z-app-header_12.entry.js.map +1 -1
  340. package/dist/esm/z-aria-alert.entry.js +1 -1
  341. package/dist/esm/z-avatar.entry.js +2 -2
  342. package/dist/esm/z-book-card-app.entry.js +2 -2
  343. package/dist/esm/z-book-card-app.entry.js.map +1 -1
  344. package/dist/esm/z-book-card-deprecated.entry.js +2 -2
  345. package/dist/esm/z-book-card-deprecated.entry.js.map +1 -1
  346. package/dist/esm/z-book-card.entry.js +3 -3
  347. package/dist/esm/z-book-card.entry.js.map +1 -1
  348. package/dist/esm/z-breadcrumb.entry.js +3 -3
  349. package/dist/esm/z-breadcrumb.entry.js.map +1 -1
  350. package/dist/esm/z-button-sort.entry.js +1 -1
  351. package/dist/esm/z-chip.entry.js +2 -2
  352. package/dist/esm/z-combobox.entry.js +2 -2
  353. package/dist/esm/z-combobox.entry.js.map +1 -1
  354. package/dist/esm/z-cover-hero.entry.js +2 -2
  355. package/dist/esm/z-date-picker.entry.js +1 -1
  356. package/dist/esm/z-dragdrop-area_2.entry.js +18 -28
  357. package/dist/esm/z-dragdrop-area_2.entry.js.map +1 -1
  358. package/dist/esm/z-file-upload.entry.js +78 -102
  359. package/dist/esm/z-file-upload.entry.js.map +1 -1
  360. package/dist/esm/z-file.entry.js +1 -1
  361. package/dist/esm/z-ghost-loading.entry.js +2 -2
  362. package/dist/esm/z-ghost-loading.entry.js.map +1 -1
  363. package/dist/esm/z-info-box.entry.js +1 -1
  364. package/dist/esm/z-info-reveal.entry.js +1 -1
  365. package/dist/esm/z-logo.entry.js +1 -1
  366. package/dist/esm/z-menu-deprecated.entry.js +1 -1
  367. package/dist/esm/z-menu-section-deprecated.entry.js +1 -1
  368. package/dist/esm/z-menu-section.entry.js +2 -2
  369. package/dist/esm/z-menu-section.entry.js.map +1 -1
  370. package/dist/esm/z-menu.entry.js +1 -1
  371. package/dist/esm/z-menu.entry.js.map +1 -1
  372. package/dist/esm/z-myz-card-alert.entry.js +2 -2
  373. package/dist/esm/z-myz-card-alert.entry.js.map +1 -1
  374. package/dist/esm/z-myz-card-dictionary.entry.js +1 -1
  375. package/dist/esm/z-myz-card-footer-sections.entry.js +1 -1
  376. package/dist/esm/z-myz-card-footer.entry.js +1 -1
  377. package/dist/esm/z-myz-card-icon.entry.js +1 -1
  378. package/dist/esm/z-myz-card-info.entry.js +2 -2
  379. package/dist/esm/z-myz-card-info.entry.js.map +1 -1
  380. package/dist/esm/z-myz-card-list.entry.js +1 -1
  381. package/dist/esm/z-myz-card_4.entry.js +6 -6
  382. package/dist/esm/z-myz-card_4.entry.js.map +1 -1
  383. package/dist/esm/z-myz-list-item.entry.js +1 -1
  384. package/dist/esm/z-myz-list.entry.js +1 -1
  385. package/dist/esm/z-navigation-tabs.entry.js +3 -3
  386. package/dist/esm/z-navigation-tabs.entry.js.map +1 -1
  387. package/dist/esm/z-notification.entry.js +1 -1
  388. package/dist/esm/z-otp.entry.js +2 -2
  389. package/dist/esm/z-panel-elem.entry.js +3 -2
  390. package/dist/esm/z-panel-elem.entry.js.map +1 -1
  391. package/dist/esm/z-popover.entry.js +1 -1
  392. package/dist/esm/z-range-picker.entry.js +3 -3
  393. package/dist/esm/z-section-title.entry.js +1 -1
  394. package/dist/esm/z-select.entry.js +1 -1
  395. package/dist/esm/z-skip-to-content.entry.js +2 -3
  396. package/dist/esm/z-skip-to-content.entry.js.map +1 -1
  397. package/dist/esm/z-slideshow.entry.js +1 -1
  398. package/dist/esm/z-slideshow.entry.js.map +1 -1
  399. package/dist/esm/z-stepper-item.entry.js +1 -1
  400. package/dist/esm/z-stepper.entry.js +1 -1
  401. package/dist/esm/z-table.entry.js +7 -7
  402. package/dist/esm/z-tbody.entry.js +1 -1
  403. package/dist/esm/z-td.entry.js +1 -1
  404. package/dist/esm/z-tfoot.entry.js +1 -1
  405. package/dist/esm/z-th.entry.js +1 -1
  406. package/dist/esm/z-thead.entry.js +1 -1
  407. package/dist/esm/z-toast-notification-list.entry.js +1 -1
  408. package/dist/esm/z-toast-notification.entry.js +1 -1
  409. package/dist/esm/z-toggle-button.entry.js +2 -2
  410. package/dist/esm/z-toggle-switch.entry.js +3 -3
  411. package/dist/esm/z-tooltip.entry.js +1 -1
  412. package/dist/esm/z-tr.entry.js +3 -3
  413. package/dist/esm/z-visually-hidden.entry.js +1 -1
  414. package/dist/types/components/css-components/z-link/index.stories.d.ts +0 -1
  415. package/dist/types/components/file-upload/z-dragdrop-area/index.d.ts +4 -4
  416. package/dist/types/components/file-upload/z-file-upload/index.d.ts +39 -25
  417. package/dist/types/components/file-upload/z-file-upload/index.stories.d.ts +1 -0
  418. package/dist/types/components/z-modal/index.d.ts +0 -1
  419. package/dist/types/components.d.ts +27 -4
  420. package/dist/types/constants/iconset.d.ts +24 -0
  421. package/dist/web-components-library/p-015621c8.entry.js +2 -0
  422. package/dist/web-components-library/p-015621c8.entry.js.map +1 -0
  423. package/dist/web-components-library/p-035807e3.entry.js +2 -0
  424. package/dist/web-components-library/p-037c59b3.js +2 -0
  425. package/dist/web-components-library/p-037c59b3.js.map +1 -0
  426. package/dist/web-components-library/p-0565f1b2.entry.js +2 -0
  427. package/dist/web-components-library/p-0565f1b2.entry.js.map +1 -0
  428. package/{www/build/p-f413c03c.entry.js → dist/web-components-library/p-080b13fe.entry.js} +2 -2
  429. package/dist/web-components-library/p-08d8f935.entry.js +2 -0
  430. package/dist/web-components-library/{p-95795174.entry.js → p-0df6b405.entry.js} +2 -2
  431. package/dist/web-components-library/p-11216ee8.entry.js +2 -0
  432. package/dist/web-components-library/{p-5ccbdfbe.entry.js.map → p-11216ee8.entry.js.map} +1 -1
  433. package/dist/web-components-library/p-115fab3e.entry.js +2 -0
  434. package/dist/web-components-library/p-115fab3e.entry.js.map +1 -0
  435. package/dist/web-components-library/{p-914e20e9.entry.js → p-11629dd3.entry.js} +2 -2
  436. package/dist/web-components-library/p-123739cb.js +2 -0
  437. package/dist/web-components-library/p-123739cb.js.map +1 -0
  438. package/dist/web-components-library/{p-7c6dad4b.js → p-14e61df6.js} +2 -2
  439. package/dist/web-components-library/{p-2e48ff6b.entry.js → p-18d63f0c.entry.js} +2 -2
  440. package/dist/web-components-library/p-20b628e7.entry.js +2 -0
  441. package/dist/web-components-library/p-20b628e7.entry.js.map +1 -0
  442. package/dist/web-components-library/{p-166ea39f.entry.js → p-22d56699.entry.js} +2 -2
  443. package/dist/web-components-library/{p-166ea39f.entry.js.map → p-22d56699.entry.js.map} +1 -1
  444. package/dist/web-components-library/p-2798c0b2.entry.js +2 -0
  445. package/{www/build/p-83cd8d7c.entry.js → dist/web-components-library/p-2a0d8ebe.entry.js} +2 -2
  446. package/dist/web-components-library/p-2aeb2a94.entry.js +2 -0
  447. package/dist/web-components-library/{p-34d82be5.entry.js → p-2c450113.entry.js} +2 -2
  448. package/dist/web-components-library/{p-c57bb632.entry.js → p-2dcf53b3.entry.js} +2 -2
  449. package/dist/web-components-library/p-30170218.entry.js +2 -0
  450. package/dist/web-components-library/{p-8be628c6.entry.js → p-34f4f441.entry.js} +2 -2
  451. package/dist/web-components-library/{p-8be628c6.entry.js.map → p-34f4f441.entry.js.map} +1 -1
  452. package/dist/web-components-library/{p-73d089fe.entry.js → p-384baa02.entry.js} +2 -2
  453. package/dist/web-components-library/{p-46ce378d.entry.js → p-395b261e.entry.js} +2 -2
  454. package/dist/web-components-library/p-3bf02cab.entry.js +2 -0
  455. package/dist/web-components-library/p-3bf02cab.entry.js.map +1 -0
  456. package/dist/web-components-library/{p-4a058a26.entry.js → p-42559870.entry.js} +2 -2
  457. package/dist/web-components-library/{p-92da97fb.entry.js → p-4374d3f3.entry.js} +2 -2
  458. package/dist/web-components-library/p-4c462e7f.js +2 -0
  459. package/dist/web-components-library/p-4c462e7f.js.map +1 -0
  460. package/dist/web-components-library/{p-589f4f48.entry.js → p-4fedcbc2.entry.js} +2 -2
  461. package/dist/web-components-library/p-50bf57b4.entry.js +2 -0
  462. package/dist/web-components-library/p-50bf57b4.entry.js.map +1 -0
  463. package/{www/build/p-8f47b574.entry.js → dist/web-components-library/p-52be7378.entry.js} +2 -2
  464. package/dist/web-components-library/p-54a70792.entry.js +2 -0
  465. package/dist/web-components-library/p-54a70792.entry.js.map +1 -0
  466. package/dist/web-components-library/{p-c9913f1e.entry.js → p-5f04d9eb.entry.js} +2 -2
  467. package/dist/web-components-library/p-60a9cb8b.entry.js +2 -0
  468. package/dist/web-components-library/p-60a9cb8b.entry.js.map +1 -0
  469. package/dist/web-components-library/{p-ddae9016.entry.js → p-6230c432.entry.js} +2 -2
  470. package/dist/web-components-library/p-65f1b68b.entry.js +2 -0
  471. package/dist/web-components-library/p-65f1b68b.entry.js.map +1 -0
  472. package/dist/web-components-library/p-6e1ba2f0.entry.js +2 -0
  473. package/dist/web-components-library/{p-3ce0d28c.entry.js → p-7095262b.entry.js} +2 -2
  474. package/dist/web-components-library/{p-af4b759a.entry.js → p-72dae90b.entry.js} +2 -2
  475. package/dist/web-components-library/p-73d686e0.entry.js +2 -0
  476. package/dist/web-components-library/p-73d686e0.entry.js.map +1 -0
  477. package/dist/web-components-library/p-75808b47.entry.js +2 -0
  478. package/dist/web-components-library/p-75808b47.entry.js.map +1 -0
  479. package/dist/web-components-library/p-7e8d843e.entry.js +2 -0
  480. package/{www/build/p-d34a177a.entry.js.map → dist/web-components-library/p-7e8d843e.entry.js.map} +1 -1
  481. package/dist/web-components-library/{p-0d1dbe04.entry.js → p-8c952964.entry.js} +2 -2
  482. package/dist/web-components-library/{p-18fbbf63.entry.js → p-9187ce36.entry.js} +2 -2
  483. package/dist/web-components-library/{p-08691c77.entry.js → p-9218da42.entry.js} +2 -2
  484. package/{www/build/p-2cc8c5a5.entry.js → dist/web-components-library/p-972098a5.entry.js} +2 -2
  485. package/{www/build/p-5365f354.entry.js → dist/web-components-library/p-9d850412.entry.js} +2 -2
  486. package/dist/web-components-library/{p-5365f354.entry.js.map → p-9d850412.entry.js.map} +1 -1
  487. package/dist/web-components-library/{p-ecaca2df.entry.js → p-9f0a3d88.entry.js} +2 -2
  488. package/dist/web-components-library/p-a90027c2.entry.js +2 -0
  489. package/dist/web-components-library/p-a90027c2.entry.js.map +1 -0
  490. package/dist/web-components-library/p-aa0b3e7a.entry.js +2 -0
  491. package/dist/web-components-library/p-aa0b3e7a.entry.js.map +1 -0
  492. package/{www/build/p-65c59027.entry.js → dist/web-components-library/p-aa42f01d.entry.js} +2 -2
  493. package/dist/web-components-library/p-ad825740.entry.js +2 -0
  494. package/dist/web-components-library/p-b309bd71.entry.js +2 -0
  495. package/dist/web-components-library/p-b309bd71.entry.js.map +1 -0
  496. package/dist/web-components-library/p-b38be247.entry.js +2 -0
  497. package/dist/web-components-library/{p-ac03a6cc.entry.js → p-bbd492d3.entry.js} +2 -2
  498. package/dist/web-components-library/p-c13ef624.js +2 -0
  499. package/dist/web-components-library/{p-0eab0213.entry.js → p-caccf490.entry.js} +2 -2
  500. package/dist/web-components-library/p-cb8aec27.entry.js +2 -0
  501. package/dist/web-components-library/p-cc8186a9.entry.js +2 -0
  502. package/dist/web-components-library/{p-d972d6aa.entry.js.map → p-cc8186a9.entry.js.map} +1 -1
  503. package/dist/web-components-library/p-d65aba93.entry.js +2 -0
  504. package/dist/web-components-library/{p-386e385c.entry.js.map → p-d65aba93.entry.js.map} +1 -1
  505. package/dist/web-components-library/p-db0a5f51.entry.js +2 -0
  506. package/dist/web-components-library/p-db0a5f51.entry.js.map +1 -0
  507. package/dist/web-components-library/p-deb86b5c.entry.js +2 -0
  508. package/dist/web-components-library/p-ea36d666.entry.js +2 -0
  509. package/dist/web-components-library/p-ea36d666.entry.js.map +1 -0
  510. package/dist/web-components-library/{p-9078dfd7.entry.js → p-f06bd257.entry.js} +2 -2
  511. package/dist/web-components-library/p-f075ec62.entry.js +2 -0
  512. package/dist/web-components-library/p-f075ec62.entry.js.map +1 -0
  513. package/dist/web-components-library/{p-27a59513.entry.js → p-f8915e2e.entry.js} +2 -2
  514. package/dist/web-components-library/{p-068b15fc.entry.js → p-fb06a5d8.entry.js} +2 -2
  515. package/dist/web-components-library/p-feb84d36.js +2 -0
  516. package/dist/web-components-library/web-components-library.css +171 -144
  517. package/dist/web-components-library/web-components-library.esm.js +1 -1
  518. package/dist/web-components-library/web-components-library.esm.js.map +1 -1
  519. package/package.json +1 -1
  520. package/www/build/p-015621c8.entry.js +2 -0
  521. package/www/build/p-015621c8.entry.js.map +1 -0
  522. package/www/build/p-035807e3.entry.js +2 -0
  523. package/www/build/p-037c59b3.js +2 -0
  524. package/www/build/p-037c59b3.js.map +1 -0
  525. package/www/build/p-0565f1b2.entry.js +2 -0
  526. package/www/build/p-0565f1b2.entry.js.map +1 -0
  527. package/{dist/web-components-library/p-f413c03c.entry.js → www/build/p-080b13fe.entry.js} +2 -2
  528. package/www/build/p-08d8f935.entry.js +2 -0
  529. package/www/build/{p-95795174.entry.js → p-0df6b405.entry.js} +2 -2
  530. package/www/build/p-11216ee8.entry.js +2 -0
  531. package/www/build/{p-5ccbdfbe.entry.js.map → p-11216ee8.entry.js.map} +1 -1
  532. package/www/build/p-115fab3e.entry.js +2 -0
  533. package/www/build/p-115fab3e.entry.js.map +1 -0
  534. package/www/build/{p-914e20e9.entry.js → p-11629dd3.entry.js} +2 -2
  535. package/www/build/p-123739cb.js +2 -0
  536. package/www/build/p-123739cb.js.map +1 -0
  537. package/www/build/{p-7c6dad4b.js → p-14e61df6.js} +2 -2
  538. package/www/build/{p-2e48ff6b.entry.js → p-18d63f0c.entry.js} +2 -2
  539. package/www/build/p-20b628e7.entry.js +2 -0
  540. package/www/build/p-20b628e7.entry.js.map +1 -0
  541. package/www/build/{p-166ea39f.entry.js → p-22d56699.entry.js} +2 -2
  542. package/www/build/{p-166ea39f.entry.js.map → p-22d56699.entry.js.map} +1 -1
  543. package/www/build/p-2798c0b2.entry.js +2 -0
  544. package/{dist/web-components-library/p-83cd8d7c.entry.js → www/build/p-2a0d8ebe.entry.js} +2 -2
  545. package/www/build/p-2aeb2a94.entry.js +2 -0
  546. package/www/build/{p-34d82be5.entry.js → p-2c450113.entry.js} +2 -2
  547. package/www/build/{p-c57bb632.entry.js → p-2dcf53b3.entry.js} +2 -2
  548. package/www/build/p-30170218.entry.js +2 -0
  549. package/www/build/{p-8be628c6.entry.js → p-34f4f441.entry.js} +2 -2
  550. package/www/build/{p-8be628c6.entry.js.map → p-34f4f441.entry.js.map} +1 -1
  551. package/www/build/{p-73d089fe.entry.js → p-384baa02.entry.js} +2 -2
  552. package/www/build/{p-46ce378d.entry.js → p-395b261e.entry.js} +2 -2
  553. package/www/build/p-3bf02cab.entry.js +2 -0
  554. package/www/build/p-3bf02cab.entry.js.map +1 -0
  555. package/www/build/{p-4a058a26.entry.js → p-42559870.entry.js} +2 -2
  556. package/www/build/{p-92da97fb.entry.js → p-4374d3f3.entry.js} +2 -2
  557. package/www/build/{p-d9dbe303.css → p-4c358c38.css} +171 -144
  558. package/www/build/p-4c462e7f.js +2 -0
  559. package/www/build/p-4c462e7f.js.map +1 -0
  560. package/www/build/{p-589f4f48.entry.js → p-4fedcbc2.entry.js} +2 -2
  561. package/www/build/p-50bf57b4.entry.js +2 -0
  562. package/www/build/p-50bf57b4.entry.js.map +1 -0
  563. package/{dist/web-components-library/p-8f47b574.entry.js → www/build/p-52be7378.entry.js} +2 -2
  564. package/www/build/p-54a70792.entry.js +2 -0
  565. package/www/build/p-54a70792.entry.js.map +1 -0
  566. package/www/build/{p-c9913f1e.entry.js → p-5f04d9eb.entry.js} +2 -2
  567. package/www/build/p-60a9cb8b.entry.js +2 -0
  568. package/www/build/p-60a9cb8b.entry.js.map +1 -0
  569. package/www/build/{p-ddae9016.entry.js → p-6230c432.entry.js} +2 -2
  570. package/www/build/p-65f1b68b.entry.js +2 -0
  571. package/www/build/p-65f1b68b.entry.js.map +1 -0
  572. package/www/build/p-6e1ba2f0.entry.js +2 -0
  573. package/www/build/{p-3ce0d28c.entry.js → p-7095262b.entry.js} +2 -2
  574. package/www/build/{p-af4b759a.entry.js → p-72dae90b.entry.js} +2 -2
  575. package/www/build/p-73d686e0.entry.js +2 -0
  576. package/www/build/p-73d686e0.entry.js.map +1 -0
  577. package/www/build/p-75808b47.entry.js +2 -0
  578. package/www/build/p-75808b47.entry.js.map +1 -0
  579. package/www/build/p-7e8d843e.entry.js +2 -0
  580. package/{dist/web-components-library/p-d34a177a.entry.js.map → www/build/p-7e8d843e.entry.js.map} +1 -1
  581. package/www/build/{p-0d1dbe04.entry.js → p-8c952964.entry.js} +2 -2
  582. package/www/build/{p-18fbbf63.entry.js → p-9187ce36.entry.js} +2 -2
  583. package/www/build/{p-08691c77.entry.js → p-9218da42.entry.js} +2 -2
  584. package/{dist/web-components-library/p-2cc8c5a5.entry.js → www/build/p-972098a5.entry.js} +2 -2
  585. package/{dist/web-components-library/p-5365f354.entry.js → www/build/p-9d850412.entry.js} +2 -2
  586. package/www/build/{p-5365f354.entry.js.map → p-9d850412.entry.js.map} +1 -1
  587. package/www/build/{p-ecaca2df.entry.js → p-9f0a3d88.entry.js} +2 -2
  588. package/www/build/p-a90027c2.entry.js +2 -0
  589. package/www/build/p-a90027c2.entry.js.map +1 -0
  590. package/www/build/p-aa0b3e7a.entry.js +2 -0
  591. package/www/build/p-aa0b3e7a.entry.js.map +1 -0
  592. package/{dist/web-components-library/p-65c59027.entry.js → www/build/p-aa42f01d.entry.js} +2 -2
  593. package/www/build/p-ad825740.entry.js +2 -0
  594. package/www/build/p-b309bd71.entry.js +2 -0
  595. package/www/build/p-b309bd71.entry.js.map +1 -0
  596. package/www/build/p-b38be247.entry.js +2 -0
  597. package/www/build/p-b4161535.js +2 -0
  598. package/www/build/{p-ac03a6cc.entry.js → p-bbd492d3.entry.js} +2 -2
  599. package/www/build/p-c13ef624.js +2 -0
  600. package/www/build/{p-0eab0213.entry.js → p-caccf490.entry.js} +2 -2
  601. package/www/build/p-cb8aec27.entry.js +2 -0
  602. package/www/build/p-cc8186a9.entry.js +2 -0
  603. package/www/build/{p-d972d6aa.entry.js.map → p-cc8186a9.entry.js.map} +1 -1
  604. package/www/build/p-d65aba93.entry.js +2 -0
  605. package/www/build/{p-386e385c.entry.js.map → p-d65aba93.entry.js.map} +1 -1
  606. package/www/build/p-db0a5f51.entry.js +2 -0
  607. package/www/build/p-db0a5f51.entry.js.map +1 -0
  608. package/www/build/p-deb86b5c.entry.js +2 -0
  609. package/www/build/p-ea36d666.entry.js +2 -0
  610. package/www/build/p-ea36d666.entry.js.map +1 -0
  611. package/www/build/{p-9078dfd7.entry.js → p-f06bd257.entry.js} +2 -2
  612. package/www/build/p-f075ec62.entry.js +2 -0
  613. package/www/build/p-f075ec62.entry.js.map +1 -0
  614. package/www/build/{p-27a59513.entry.js → p-f8915e2e.entry.js} +2 -2
  615. package/www/build/{p-068b15fc.entry.js → p-fb06a5d8.entry.js} +2 -2
  616. package/www/build/p-feb84d36.js +2 -0
  617. package/www/build/web-components-library.css +171 -144
  618. package/www/build/web-components-library.esm.js +1 -1
  619. package/www/build/web-components-library.esm.js.map +1 -1
  620. package/www/index.html +1 -1
  621. package/dist/cjs/index-0b5e5c05.js.map +0 -1
  622. package/dist/cjs/index-15cb0816.js.map +0 -1
  623. package/dist/cjs/index-47d0257d.js.map +0 -1
  624. package/dist/esm/index-13d1f531.js.map +0 -1
  625. package/dist/esm/index-a71eb5f5.js.map +0 -1
  626. package/dist/esm/index-f372e39c.js.map +0 -1
  627. package/dist/web-components-library/p-0d966ad0.js +0 -2
  628. package/dist/web-components-library/p-0d966ad0.js.map +0 -1
  629. package/dist/web-components-library/p-1a297fb0.entry.js +0 -2
  630. package/dist/web-components-library/p-1db926ff.entry.js +0 -2
  631. package/dist/web-components-library/p-1db926ff.entry.js.map +0 -1
  632. package/dist/web-components-library/p-2f3732d9.entry.js +0 -2
  633. package/dist/web-components-library/p-372d3d61.entry.js +0 -2
  634. package/dist/web-components-library/p-372d3d61.entry.js.map +0 -1
  635. package/dist/web-components-library/p-386e385c.entry.js +0 -2
  636. package/dist/web-components-library/p-3be73d77.entry.js +0 -2
  637. package/dist/web-components-library/p-3be73d77.entry.js.map +0 -1
  638. package/dist/web-components-library/p-3f8725c1.entry.js +0 -2
  639. package/dist/web-components-library/p-40280990.entry.js +0 -2
  640. package/dist/web-components-library/p-563e86c0.entry.js +0 -2
  641. package/dist/web-components-library/p-563e86c0.entry.js.map +0 -1
  642. package/dist/web-components-library/p-5b677d6c.entry.js +0 -2
  643. package/dist/web-components-library/p-5b677d6c.entry.js.map +0 -1
  644. package/dist/web-components-library/p-5ccbdfbe.entry.js +0 -2
  645. package/dist/web-components-library/p-63806f4f.entry.js +0 -2
  646. package/dist/web-components-library/p-63806f4f.entry.js.map +0 -1
  647. package/dist/web-components-library/p-65f993a4.entry.js +0 -2
  648. package/dist/web-components-library/p-6f69c2b6.js +0 -2
  649. package/dist/web-components-library/p-7049aef2.entry.js +0 -2
  650. package/dist/web-components-library/p-7049aef2.entry.js.map +0 -1
  651. package/dist/web-components-library/p-72af7932.entry.js +0 -2
  652. package/dist/web-components-library/p-72bfc9d0.js +0 -2
  653. package/dist/web-components-library/p-72bfc9d0.js.map +0 -1
  654. package/dist/web-components-library/p-72f77ee8.entry.js +0 -2
  655. package/dist/web-components-library/p-767b66ca.entry.js +0 -2
  656. package/dist/web-components-library/p-767b66ca.entry.js.map +0 -1
  657. package/dist/web-components-library/p-814f09df.entry.js +0 -2
  658. package/dist/web-components-library/p-814f09df.entry.js.map +0 -1
  659. package/dist/web-components-library/p-8b94f31a.entry.js +0 -2
  660. package/dist/web-components-library/p-8b94f31a.entry.js.map +0 -1
  661. package/dist/web-components-library/p-8e203650.entry.js +0 -2
  662. package/dist/web-components-library/p-8e203650.entry.js.map +0 -1
  663. package/dist/web-components-library/p-92a5e308.entry.js +0 -2
  664. package/dist/web-components-library/p-92a5e308.entry.js.map +0 -1
  665. package/dist/web-components-library/p-93069a90.entry.js +0 -2
  666. package/dist/web-components-library/p-a7bcb93d.entry.js +0 -2
  667. package/dist/web-components-library/p-a7bcb93d.entry.js.map +0 -1
  668. package/dist/web-components-library/p-ac52308e.entry.js +0 -2
  669. package/dist/web-components-library/p-ac52308e.entry.js.map +0 -1
  670. package/dist/web-components-library/p-add2b5e8.entry.js +0 -2
  671. package/dist/web-components-library/p-af9df838.entry.js +0 -2
  672. package/dist/web-components-library/p-af9df838.entry.js.map +0 -1
  673. package/dist/web-components-library/p-b5b0ffb6.entry.js +0 -2
  674. package/dist/web-components-library/p-b5b0ffb6.entry.js.map +0 -1
  675. package/dist/web-components-library/p-cc6406ab.entry.js +0 -2
  676. package/dist/web-components-library/p-d34a177a.entry.js +0 -2
  677. package/dist/web-components-library/p-d972d6aa.entry.js +0 -2
  678. package/dist/web-components-library/p-e1ed2ecb.js +0 -2
  679. package/dist/web-components-library/p-e1ed2ecb.js.map +0 -1
  680. package/dist/web-components-library/p-e4e0d271.entry.js +0 -2
  681. package/dist/web-components-library/p-e4e0d271.entry.js.map +0 -1
  682. package/dist/web-components-library/p-f400cf1b.js +0 -2
  683. package/www/build/p-0d966ad0.js +0 -2
  684. package/www/build/p-0d966ad0.js.map +0 -1
  685. package/www/build/p-1834b57c.js +0 -2
  686. package/www/build/p-1a297fb0.entry.js +0 -2
  687. package/www/build/p-1db926ff.entry.js +0 -2
  688. package/www/build/p-1db926ff.entry.js.map +0 -1
  689. package/www/build/p-2f3732d9.entry.js +0 -2
  690. package/www/build/p-372d3d61.entry.js +0 -2
  691. package/www/build/p-372d3d61.entry.js.map +0 -1
  692. package/www/build/p-386e385c.entry.js +0 -2
  693. package/www/build/p-3be73d77.entry.js +0 -2
  694. package/www/build/p-3be73d77.entry.js.map +0 -1
  695. package/www/build/p-3f8725c1.entry.js +0 -2
  696. package/www/build/p-40280990.entry.js +0 -2
  697. package/www/build/p-563e86c0.entry.js +0 -2
  698. package/www/build/p-563e86c0.entry.js.map +0 -1
  699. package/www/build/p-5b677d6c.entry.js +0 -2
  700. package/www/build/p-5b677d6c.entry.js.map +0 -1
  701. package/www/build/p-5ccbdfbe.entry.js +0 -2
  702. package/www/build/p-63806f4f.entry.js +0 -2
  703. package/www/build/p-63806f4f.entry.js.map +0 -1
  704. package/www/build/p-65f993a4.entry.js +0 -2
  705. package/www/build/p-6f69c2b6.js +0 -2
  706. package/www/build/p-7049aef2.entry.js +0 -2
  707. package/www/build/p-7049aef2.entry.js.map +0 -1
  708. package/www/build/p-72af7932.entry.js +0 -2
  709. package/www/build/p-72bfc9d0.js +0 -2
  710. package/www/build/p-72f77ee8.entry.js +0 -2
  711. package/www/build/p-767b66ca.entry.js +0 -2
  712. package/www/build/p-767b66ca.entry.js.map +0 -1
  713. package/www/build/p-814f09df.entry.js +0 -2
  714. package/www/build/p-814f09df.entry.js.map +0 -1
  715. package/www/build/p-8b94f31a.entry.js +0 -2
  716. package/www/build/p-8b94f31a.entry.js.map +0 -1
  717. package/www/build/p-8e203650.entry.js +0 -2
  718. package/www/build/p-8e203650.entry.js.map +0 -1
  719. package/www/build/p-92a5e308.entry.js +0 -2
  720. package/www/build/p-92a5e308.entry.js.map +0 -1
  721. package/www/build/p-93069a90.entry.js +0 -2
  722. package/www/build/p-a7bcb93d.entry.js +0 -2
  723. package/www/build/p-a7bcb93d.entry.js.map +0 -1
  724. package/www/build/p-ac52308e.entry.js +0 -2
  725. package/www/build/p-ac52308e.entry.js.map +0 -1
  726. package/www/build/p-add2b5e8.entry.js +0 -2
  727. package/www/build/p-af9df838.entry.js +0 -2
  728. package/www/build/p-af9df838.entry.js.map +0 -1
  729. package/www/build/p-b5b0ffb6.entry.js +0 -2
  730. package/www/build/p-b5b0ffb6.entry.js.map +0 -1
  731. package/www/build/p-cc6406ab.entry.js +0 -2
  732. package/www/build/p-d34a177a.entry.js +0 -2
  733. package/www/build/p-d972d6aa.entry.js +0 -2
  734. package/www/build/p-e1ed2ecb.js +0 -2
  735. package/www/build/p-e1ed2ecb.js.map +0 -1
  736. package/www/build/p-e4e0d271.entry.js +0 -2
  737. package/www/build/p-e4e0d271.entry.js.map +0 -1
  738. package/www/build/p-f400cf1b.js +0 -2
  739. /package/dist/web-components-library/{p-93069a90.entry.js.map → p-035807e3.entry.js.map} +0 -0
  740. /package/dist/web-components-library/{p-f413c03c.entry.js.map → p-080b13fe.entry.js.map} +0 -0
  741. /package/dist/web-components-library/{p-65f993a4.entry.js.map → p-08d8f935.entry.js.map} +0 -0
  742. /package/dist/web-components-library/{p-95795174.entry.js.map → p-0df6b405.entry.js.map} +0 -0
  743. /package/dist/web-components-library/{p-914e20e9.entry.js.map → p-11629dd3.entry.js.map} +0 -0
  744. /package/dist/web-components-library/{p-7c6dad4b.js.map → p-14e61df6.js.map} +0 -0
  745. /package/dist/web-components-library/{p-2e48ff6b.entry.js.map → p-18d63f0c.entry.js.map} +0 -0
  746. /package/dist/web-components-library/{p-1a297fb0.entry.js.map → p-2798c0b2.entry.js.map} +0 -0
  747. /package/dist/web-components-library/{p-83cd8d7c.entry.js.map → p-2a0d8ebe.entry.js.map} +0 -0
  748. /package/dist/web-components-library/{p-2f3732d9.entry.js.map → p-2aeb2a94.entry.js.map} +0 -0
  749. /package/dist/web-components-library/{p-34d82be5.entry.js.map → p-2c450113.entry.js.map} +0 -0
  750. /package/dist/web-components-library/{p-c57bb632.entry.js.map → p-2dcf53b3.entry.js.map} +0 -0
  751. /package/dist/web-components-library/{p-40280990.entry.js.map → p-30170218.entry.js.map} +0 -0
  752. /package/dist/web-components-library/{p-73d089fe.entry.js.map → p-384baa02.entry.js.map} +0 -0
  753. /package/dist/web-components-library/{p-46ce378d.entry.js.map → p-395b261e.entry.js.map} +0 -0
  754. /package/dist/web-components-library/{p-4a058a26.entry.js.map → p-42559870.entry.js.map} +0 -0
  755. /package/dist/web-components-library/{p-92da97fb.entry.js.map → p-4374d3f3.entry.js.map} +0 -0
  756. /package/dist/web-components-library/{p-589f4f48.entry.js.map → p-4fedcbc2.entry.js.map} +0 -0
  757. /package/dist/web-components-library/{p-8f47b574.entry.js.map → p-52be7378.entry.js.map} +0 -0
  758. /package/dist/web-components-library/{p-c9913f1e.entry.js.map → p-5f04d9eb.entry.js.map} +0 -0
  759. /package/dist/web-components-library/{p-ddae9016.entry.js.map → p-6230c432.entry.js.map} +0 -0
  760. /package/dist/web-components-library/{p-72af7932.entry.js.map → p-6e1ba2f0.entry.js.map} +0 -0
  761. /package/dist/web-components-library/{p-3ce0d28c.entry.js.map → p-7095262b.entry.js.map} +0 -0
  762. /package/dist/web-components-library/{p-af4b759a.entry.js.map → p-72dae90b.entry.js.map} +0 -0
  763. /package/dist/web-components-library/{p-0d1dbe04.entry.js.map → p-8c952964.entry.js.map} +0 -0
  764. /package/dist/web-components-library/{p-18fbbf63.entry.js.map → p-9187ce36.entry.js.map} +0 -0
  765. /package/dist/web-components-library/{p-08691c77.entry.js.map → p-9218da42.entry.js.map} +0 -0
  766. /package/dist/web-components-library/{p-2cc8c5a5.entry.js.map → p-972098a5.entry.js.map} +0 -0
  767. /package/dist/web-components-library/{p-ecaca2df.entry.js.map → p-9f0a3d88.entry.js.map} +0 -0
  768. /package/dist/web-components-library/{p-65c59027.entry.js.map → p-aa42f01d.entry.js.map} +0 -0
  769. /package/dist/web-components-library/{p-72f77ee8.entry.js.map → p-ad825740.entry.js.map} +0 -0
  770. /package/dist/web-components-library/{p-add2b5e8.entry.js.map → p-b38be247.entry.js.map} +0 -0
  771. /package/dist/web-components-library/{p-ac03a6cc.entry.js.map → p-bbd492d3.entry.js.map} +0 -0
  772. /package/dist/web-components-library/{p-6f69c2b6.js.map → p-c13ef624.js.map} +0 -0
  773. /package/dist/web-components-library/{p-0eab0213.entry.js.map → p-caccf490.entry.js.map} +0 -0
  774. /package/dist/web-components-library/{p-3f8725c1.entry.js.map → p-cb8aec27.entry.js.map} +0 -0
  775. /package/dist/web-components-library/{p-cc6406ab.entry.js.map → p-deb86b5c.entry.js.map} +0 -0
  776. /package/dist/web-components-library/{p-9078dfd7.entry.js.map → p-f06bd257.entry.js.map} +0 -0
  777. /package/dist/web-components-library/{p-27a59513.entry.js.map → p-f8915e2e.entry.js.map} +0 -0
  778. /package/dist/web-components-library/{p-068b15fc.entry.js.map → p-fb06a5d8.entry.js.map} +0 -0
  779. /package/dist/web-components-library/{p-f400cf1b.js.map → p-feb84d36.js.map} +0 -0
  780. /package/www/build/{p-93069a90.entry.js.map → p-035807e3.entry.js.map} +0 -0
  781. /package/www/build/{p-f413c03c.entry.js.map → p-080b13fe.entry.js.map} +0 -0
  782. /package/www/build/{p-65f993a4.entry.js.map → p-08d8f935.entry.js.map} +0 -0
  783. /package/www/build/{p-95795174.entry.js.map → p-0df6b405.entry.js.map} +0 -0
  784. /package/www/build/{p-914e20e9.entry.js.map → p-11629dd3.entry.js.map} +0 -0
  785. /package/www/build/{p-7c6dad4b.js.map → p-14e61df6.js.map} +0 -0
  786. /package/www/build/{p-2e48ff6b.entry.js.map → p-18d63f0c.entry.js.map} +0 -0
  787. /package/www/build/{p-1a297fb0.entry.js.map → p-2798c0b2.entry.js.map} +0 -0
  788. /package/www/build/{p-83cd8d7c.entry.js.map → p-2a0d8ebe.entry.js.map} +0 -0
  789. /package/www/build/{p-2f3732d9.entry.js.map → p-2aeb2a94.entry.js.map} +0 -0
  790. /package/www/build/{p-34d82be5.entry.js.map → p-2c450113.entry.js.map} +0 -0
  791. /package/www/build/{p-c57bb632.entry.js.map → p-2dcf53b3.entry.js.map} +0 -0
  792. /package/www/build/{p-40280990.entry.js.map → p-30170218.entry.js.map} +0 -0
  793. /package/www/build/{p-73d089fe.entry.js.map → p-384baa02.entry.js.map} +0 -0
  794. /package/www/build/{p-46ce378d.entry.js.map → p-395b261e.entry.js.map} +0 -0
  795. /package/www/build/{p-4a058a26.entry.js.map → p-42559870.entry.js.map} +0 -0
  796. /package/www/build/{p-92da97fb.entry.js.map → p-4374d3f3.entry.js.map} +0 -0
  797. /package/www/build/{p-589f4f48.entry.js.map → p-4fedcbc2.entry.js.map} +0 -0
  798. /package/www/build/{p-8f47b574.entry.js.map → p-52be7378.entry.js.map} +0 -0
  799. /package/www/build/{p-c9913f1e.entry.js.map → p-5f04d9eb.entry.js.map} +0 -0
  800. /package/www/build/{p-ddae9016.entry.js.map → p-6230c432.entry.js.map} +0 -0
  801. /package/www/build/{p-72af7932.entry.js.map → p-6e1ba2f0.entry.js.map} +0 -0
  802. /package/www/build/{p-3ce0d28c.entry.js.map → p-7095262b.entry.js.map} +0 -0
  803. /package/www/build/{p-af4b759a.entry.js.map → p-72dae90b.entry.js.map} +0 -0
  804. /package/www/build/{p-0d1dbe04.entry.js.map → p-8c952964.entry.js.map} +0 -0
  805. /package/www/build/{p-18fbbf63.entry.js.map → p-9187ce36.entry.js.map} +0 -0
  806. /package/www/build/{p-08691c77.entry.js.map → p-9218da42.entry.js.map} +0 -0
  807. /package/www/build/{p-2cc8c5a5.entry.js.map → p-972098a5.entry.js.map} +0 -0
  808. /package/www/build/{p-ecaca2df.entry.js.map → p-9f0a3d88.entry.js.map} +0 -0
  809. /package/www/build/{p-65c59027.entry.js.map → p-aa42f01d.entry.js.map} +0 -0
  810. /package/www/build/{p-72f77ee8.entry.js.map → p-ad825740.entry.js.map} +0 -0
  811. /package/www/build/{p-add2b5e8.entry.js.map → p-b38be247.entry.js.map} +0 -0
  812. /package/www/build/{p-ac03a6cc.entry.js.map → p-bbd492d3.entry.js.map} +0 -0
  813. /package/www/build/{p-6f69c2b6.js.map → p-c13ef624.js.map} +0 -0
  814. /package/www/build/{p-0eab0213.entry.js.map → p-caccf490.entry.js.map} +0 -0
  815. /package/www/build/{p-3f8725c1.entry.js.map → p-cb8aec27.entry.js.map} +0 -0
  816. /package/www/build/{p-cc6406ab.entry.js.map → p-deb86b5c.entry.js.map} +0 -0
  817. /package/www/build/{p-9078dfd7.entry.js.map → p-f06bd257.entry.js.map} +0 -0
  818. /package/www/build/{p-27a59513.entry.js.map → p-f8915e2e.entry.js.map} +0 -0
  819. /package/www/build/{p-068b15fc.entry.js.map → p-fb06a5d8.entry.js.map} +0 -0
  820. /package/www/build/{p-f400cf1b.js.map → p-feb84d36.js.map} +0 -0
@@ -1 +0,0 @@
1
- {"file":"index-15cb0816.js","mappings":";;;;;;;AAAA,MAAM,SAAS,GAAG,mjDAAmjD,CAAC;AACtkD,kBAAe,SAAS;;MCeX,GAAG;;;;0BAaD,KAAK;wBAMP,KAAK;;;IAeN,aAAa;QACrB,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAkC,YAAY,CAAC,CAAC,CAAC;QACpG,IAAI,IAAI,CAAC,UAAU,EAAE;YACnB,KAAK,CAAC,GAAG,EAAE,CAAC;SACb;QAED,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;QAClF,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,WAAW,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;QAEvD,IAAI,IAAI,CAAC,UAAU,EAAE;YACnB,MAAM,iBAAiB,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC;YACtC,iBAAiB,CAAC,EAAE,GAAG,iBAAiB,CAAC,EAAE,IAAI,2BAA2BA,cAAQ,EAAE,EAAE,CAAC;YACvF,IAAI,CAAC,mBAAmB,GAAG,iBAAiB,CAAC,EAAE,CAAC;SACjD;KACF;;;;;IAMO,UAAU,CAAC,KAAiB;QAClC,MAAM,aAAa,GAAI,KAAK,CAAC,MAAsB,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;QAC/E,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,aAAa,EAAE;YACrC,OAAO;SACR;QAED,IAAI,CAAC,QAAQ,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC;QAC/B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAC,CAAC,CAAC;KAC7C;IAED,iBAAiB;QACf,IAAI,CAAC,aAAa,EAAE,CAAC;KACtB;IAED,MAAM;QACJ,QACEC,QAACC,UAAI,qDACH,IAAI,EAAC,KAAK,EACV,OAAO,EAAE,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EACnC,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAEvBD,kEAAK,KAAK,EAAC,+BAA+B,IACvC,IAAI,CAAC,UAAU,KACdA,sFACiB,IAAI,CAAC,QAAQ,GAAG,MAAM,GAAG,OAAO,gBACnC,IAAI,CAAC,QAAQ,GAAG,eAAe,GAAG,cAAc,mBAC7C,IAAI,CAAC,mBAAmB,EACvC,IAAI,EAAC,QAAQ,IAEbA,qEAAQ,IAAI,EAAE,IAAI,CAAC,QAAQ,GAAG,eAAe,GAAG,cAAc,GAAW,CAClE,CACV,CACG,EACNA,mEAAM,YAAY,EAAE,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,GAAS,CACrD,EACP;KACH;;;;;;;;;;","names":["randomId","h","Host"],"sources":["src/components/table/z-tr/styles.css?tag=z-tr&encapsulation=shadow","src/components/table/z-tr/index.tsx"],"sourcesContent":[":host {\n /* number of columns of the row. will be set in component's ts code */\n --columns: 1;\n\n display: grid;\n box-sizing: border-box;\n grid-auto-flow: column;\n grid-template-columns: var(--z-table--expand-button-size, 0) repeat(var(--columns), minmax(128px, 1fr));\n}\n\n* {\n box-sizing: border-box;\n}\n\n.z-tr--expand-button-container,\n::slotted(*) {\n border-bottom: var(--z-table--cells-bottom-border-size, var(--border-size-small)) solid var(--color-surface03);\n}\n\n::slotted(*:not(:last-child)) {\n border-right: var(--z-table--cell-left-border, none);\n}\n\n:host([expandable]) {\n --show-expandable-button: visible;\n\n cursor: pointer;\n}\n\n:host([expandable]) ::slotted(*) {\n grid-row: 1;\n}\n\n:host([expandable]) ::slotted(:nth-last-child(2)) {\n border-right: none;\n}\n\n:host([expandable]) ::slotted(*:last-child) {\n border-left: 0;\n grid-column: 1 / span calc(var(--columns) + 1);\n grid-row: 2;\n}\n\n:host([expandable]:not([expanded])) ::slotted(*:last-child) {\n display: none;\n}\n\n:host([expanded]) {\n margin-bottom: 4px; /* prevents shadow to be cut by the next element */\n box-shadow: 0 4px 4px -2px var(--shadow-color-base);\n}\n\n:host([expanded]) .z-tr--expand-button-container,\n:host([expanded]) ::slotted(*) {\n background-color: var(--color-surface02);\n}\n\n.z-tr--expand-button-container {\n display: flex;\n align-items: center;\n justify-content: center;\n background-color: var(--z-table--cells-background, var(--color-surface01));\n}\n\n.z-tr--expand-button-container button {\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 0;\n border: none;\n margin: auto;\n appearance: none;\n background: transparent;\n cursor: pointer;\n visibility: var(--show-expandable-button, hidden);\n}\n\n.z-tr--expand-button-container button:focus {\n box-shadow: var(--shadow-focus-primary);\n outline: none;\n}\n\n.z-tr--expand-button-container button z-icon {\n --z-icon-width: 16px;\n --z-icon-height: 16px;\n}\n","import {Component, Element, Event, EventEmitter, Host, Listen, Prop, State, Watch, h} from \"@stencil/core\";\nimport {randomId} from \"../../../utils/utils\";\nimport \"../cells/z-td/index\";\nimport \"../cells/z-th/index\";\n\n/**\n * ZTr component.\n * When the row is `expandable`, you can set the `prevent-expand` css class on an interactive element inside the row\n * to prevent the row from expanding.\n * @slot - ZTr content (`z-td` or `z-th`).\n */\n@Component({\n tag: \"z-tr\",\n styleUrl: \"styles.css\",\n shadow: true,\n})\nexport class ZTr {\n @Element() host: HTMLZTrElement;\n\n /**\n * Whether the row is expandable.\n * Use a `z-td` as the last cell of the row for the additional content.\n * It will show a button to expand/collapse the row.\n * The last cell will be hidden until the button or row is clicked.\n *\n * If some element inside the expandable row contains the `prevent-expand` css class,\n * the row will not expand by clicking that element.\n */\n @Prop({reflect: true})\n expandable = false;\n\n /**\n * Whether the row is currently expanded.\n */\n @State()\n expanded = false;\n\n /**\n * HTML Id of the expandable content.\n * It is used to link the button to the content through the `aria-controls` attribute.\n */\n @State()\n expandableContentId: string;\n\n /** Row has been expanded */\n @Event()\n expand: EventEmitter;\n\n @Watch(\"expandable\")\n @Listen(\"colspanchange\")\n protected updateColumns(): void {\n const cells = Array.from(this.host.querySelectorAll<HTMLZTdElement | HTMLZThElement>(\"z-td, z-th\"));\n if (this.expandable) {\n cells.pop();\n }\n\n const columns = cells.map((cell) => cell.colspan || 1).reduce((a, b) => a + b, 0);\n this.host.style.setProperty(\"--columns\", `${columns}`);\n\n if (this.expandable) {\n const expandableContent = cells.pop();\n expandableContent.id = expandableContent.id || `z-tr-expandable-content-${randomId()}`;\n this.expandableContentId = expandableContent.id;\n }\n }\n\n /**\n * Handle click on row.\n * Skip expansion if the click is on a element with `prevent-expand` css class.\n */\n private onRowClick(event: MouseEvent): void {\n const preventExpand = (event.target as HTMLElement).closest(\".prevent-expand\");\n if (!this.expandable || preventExpand) {\n return;\n }\n\n this.expanded = !this.expanded;\n this.expand.emit({expanded: this.expanded});\n }\n\n componentWillLoad(): void {\n this.updateColumns();\n }\n\n render(): HTMLZTrElement {\n return (\n <Host\n role=\"row\"\n onClick={this.onRowClick.bind(this)}\n expanded={this.expanded}\n >\n <div class=\"z-tr--expand-button-container\">\n {this.expandable && (\n <button\n aria-expanded={this.expanded ? \"true\" : \"false\"}\n aria-label={this.expanded ? \"Comprimi riga\" : \"Espandi riga\"}\n aria-controls={this.expandableContentId}\n type=\"button\"\n >\n <z-icon name={this.expanded ? \"minus-circled\" : \"plus-circled\"}></z-icon>\n </button>\n )}\n </div>\n <slot onSlotchange={this.updateColumns.bind(this)}></slot>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -1 +0,0 @@
1
- {"file":"index-47d0257d.js","mappings":";;;;AAAA,MAAM,SAAS,GAAG,oRAAoR,CAAC;AACvS,qBAAe,SAAS;;MCUX,MAAM;;;sBAKR,KAAK;;IAEd,MAAM;QACJ,QACEA,QAACC,UAAI,qDAAC,IAAI,EAAC,UAAU,IACnBD,oEAAa,CACR,EACP;KACH;;;;;;","names":["h","Host"],"sources":["src/components/table/z-thead/styles.css?tag=z-thead&encapsulation=shadow","src/components/table/z-thead/index.tsx"],"sourcesContent":[":host {\n --z-table--cells-bottom-border-size: var(\n --border-size-medium\n ); /* Needed to handle the border of the expand button cell */\n\n --z-table--cells-background: var(\n --color-surface02\n ); /* Needed to handle the background-color of the expand button cell */\n\n display: block;\n box-sizing: border-box;\n}\n\n:host([sticky]) {\n position: sticky;\n z-index: 2;\n top: 0;\n box-shadow: 0 2px 4px -2px var(--shadow-color-base);\n}\n","import {Component, Host, Prop, h} from \"@stencil/core\";\n\n/**\n * ZThead component.\n * @slot - ZThead content (`z-tr`).\n */\n@Component({\n tag: \"z-thead\",\n styleUrl: \"styles.css\",\n shadow: true,\n})\nexport class ZThead {\n /**\n * If true, the header will be stuck to the top of the table.\n */\n @Prop({reflect: true})\n sticky = false;\n\n render(): HTMLZTheadElement {\n return (\n <Host role=\"rowgroup\">\n <slot></slot>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -1 +0,0 @@
1
- {"file":"index-13d1f531.js","mappings":";;;;;AAAA,MAAM,SAAS,GAAG,mjDAAmjD,CAAC;AACtkD,kBAAe,SAAS;;MCeX,GAAG;;;;0BAaD,KAAK;wBAMP,KAAK;;;IAeN,aAAa;QACrB,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAkC,YAAY,CAAC,CAAC,CAAC;QACpG,IAAI,IAAI,CAAC,UAAU,EAAE;YACnB,KAAK,CAAC,GAAG,EAAE,CAAC;SACb;QAED,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;QAClF,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,WAAW,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;QAEvD,IAAI,IAAI,CAAC,UAAU,EAAE;YACnB,MAAM,iBAAiB,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC;YACtC,iBAAiB,CAAC,EAAE,GAAG,iBAAiB,CAAC,EAAE,IAAI,2BAA2B,QAAQ,EAAE,EAAE,CAAC;YACvF,IAAI,CAAC,mBAAmB,GAAG,iBAAiB,CAAC,EAAE,CAAC;SACjD;KACF;;;;;IAMO,UAAU,CAAC,KAAiB;QAClC,MAAM,aAAa,GAAI,KAAK,CAAC,MAAsB,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;QAC/E,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,aAAa,EAAE;YACrC,OAAO;SACR;QAED,IAAI,CAAC,QAAQ,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC;QAC/B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAC,CAAC,CAAC;KAC7C;IAED,iBAAiB;QACf,IAAI,CAAC,aAAa,EAAE,CAAC;KACtB;IAED,MAAM;QACJ,QACE,EAAC,IAAI,qDACH,IAAI,EAAC,KAAK,EACV,OAAO,EAAE,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EACnC,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAEvB,4DAAK,KAAK,EAAC,+BAA+B,IACvC,IAAI,CAAC,UAAU,KACd,gFACiB,IAAI,CAAC,QAAQ,GAAG,MAAM,GAAG,OAAO,gBACnC,IAAI,CAAC,QAAQ,GAAG,eAAe,GAAG,cAAc,mBAC7C,IAAI,CAAC,mBAAmB,EACvC,IAAI,EAAC,QAAQ,IAEb,+DAAQ,IAAI,EAAE,IAAI,CAAC,QAAQ,GAAG,eAAe,GAAG,cAAc,GAAW,CAClE,CACV,CACG,EACN,6DAAM,YAAY,EAAE,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,GAAS,CACrD,EACP;KACH;;;;;;;;;;","names":[],"sources":["src/components/table/z-tr/styles.css?tag=z-tr&encapsulation=shadow","src/components/table/z-tr/index.tsx"],"sourcesContent":[":host {\n /* number of columns of the row. will be set in component's ts code */\n --columns: 1;\n\n display: grid;\n box-sizing: border-box;\n grid-auto-flow: column;\n grid-template-columns: var(--z-table--expand-button-size, 0) repeat(var(--columns), minmax(128px, 1fr));\n}\n\n* {\n box-sizing: border-box;\n}\n\n.z-tr--expand-button-container,\n::slotted(*) {\n border-bottom: var(--z-table--cells-bottom-border-size, var(--border-size-small)) solid var(--color-surface03);\n}\n\n::slotted(*:not(:last-child)) {\n border-right: var(--z-table--cell-left-border, none);\n}\n\n:host([expandable]) {\n --show-expandable-button: visible;\n\n cursor: pointer;\n}\n\n:host([expandable]) ::slotted(*) {\n grid-row: 1;\n}\n\n:host([expandable]) ::slotted(:nth-last-child(2)) {\n border-right: none;\n}\n\n:host([expandable]) ::slotted(*:last-child) {\n border-left: 0;\n grid-column: 1 / span calc(var(--columns) + 1);\n grid-row: 2;\n}\n\n:host([expandable]:not([expanded])) ::slotted(*:last-child) {\n display: none;\n}\n\n:host([expanded]) {\n margin-bottom: 4px; /* prevents shadow to be cut by the next element */\n box-shadow: 0 4px 4px -2px var(--shadow-color-base);\n}\n\n:host([expanded]) .z-tr--expand-button-container,\n:host([expanded]) ::slotted(*) {\n background-color: var(--color-surface02);\n}\n\n.z-tr--expand-button-container {\n display: flex;\n align-items: center;\n justify-content: center;\n background-color: var(--z-table--cells-background, var(--color-surface01));\n}\n\n.z-tr--expand-button-container button {\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 0;\n border: none;\n margin: auto;\n appearance: none;\n background: transparent;\n cursor: pointer;\n visibility: var(--show-expandable-button, hidden);\n}\n\n.z-tr--expand-button-container button:focus {\n box-shadow: var(--shadow-focus-primary);\n outline: none;\n}\n\n.z-tr--expand-button-container button z-icon {\n --z-icon-width: 16px;\n --z-icon-height: 16px;\n}\n","import {Component, Element, Event, EventEmitter, Host, Listen, Prop, State, Watch, h} from \"@stencil/core\";\nimport {randomId} from \"../../../utils/utils\";\nimport \"../cells/z-td/index\";\nimport \"../cells/z-th/index\";\n\n/**\n * ZTr component.\n * When the row is `expandable`, you can set the `prevent-expand` css class on an interactive element inside the row\n * to prevent the row from expanding.\n * @slot - ZTr content (`z-td` or `z-th`).\n */\n@Component({\n tag: \"z-tr\",\n styleUrl: \"styles.css\",\n shadow: true,\n})\nexport class ZTr {\n @Element() host: HTMLZTrElement;\n\n /**\n * Whether the row is expandable.\n * Use a `z-td` as the last cell of the row for the additional content.\n * It will show a button to expand/collapse the row.\n * The last cell will be hidden until the button or row is clicked.\n *\n * If some element inside the expandable row contains the `prevent-expand` css class,\n * the row will not expand by clicking that element.\n */\n @Prop({reflect: true})\n expandable = false;\n\n /**\n * Whether the row is currently expanded.\n */\n @State()\n expanded = false;\n\n /**\n * HTML Id of the expandable content.\n * It is used to link the button to the content through the `aria-controls` attribute.\n */\n @State()\n expandableContentId: string;\n\n /** Row has been expanded */\n @Event()\n expand: EventEmitter;\n\n @Watch(\"expandable\")\n @Listen(\"colspanchange\")\n protected updateColumns(): void {\n const cells = Array.from(this.host.querySelectorAll<HTMLZTdElement | HTMLZThElement>(\"z-td, z-th\"));\n if (this.expandable) {\n cells.pop();\n }\n\n const columns = cells.map((cell) => cell.colspan || 1).reduce((a, b) => a + b, 0);\n this.host.style.setProperty(\"--columns\", `${columns}`);\n\n if (this.expandable) {\n const expandableContent = cells.pop();\n expandableContent.id = expandableContent.id || `z-tr-expandable-content-${randomId()}`;\n this.expandableContentId = expandableContent.id;\n }\n }\n\n /**\n * Handle click on row.\n * Skip expansion if the click is on a element with `prevent-expand` css class.\n */\n private onRowClick(event: MouseEvent): void {\n const preventExpand = (event.target as HTMLElement).closest(\".prevent-expand\");\n if (!this.expandable || preventExpand) {\n return;\n }\n\n this.expanded = !this.expanded;\n this.expand.emit({expanded: this.expanded});\n }\n\n componentWillLoad(): void {\n this.updateColumns();\n }\n\n render(): HTMLZTrElement {\n return (\n <Host\n role=\"row\"\n onClick={this.onRowClick.bind(this)}\n expanded={this.expanded}\n >\n <div class=\"z-tr--expand-button-container\">\n {this.expandable && (\n <button\n aria-expanded={this.expanded ? \"true\" : \"false\"}\n aria-label={this.expanded ? \"Comprimi riga\" : \"Espandi riga\"}\n aria-controls={this.expandableContentId}\n type=\"button\"\n >\n <z-icon name={this.expanded ? \"minus-circled\" : \"plus-circled\"}></z-icon>\n </button>\n )}\n </div>\n <slot onSlotchange={this.updateColumns.bind(this)}></slot>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -1 +0,0 @@
1
- {"file":"index-a71eb5f5.js","mappings":";;AAAA,MAAM,SAAS,GAAG,oRAAoR,CAAC;AACvS,qBAAe,SAAS;;MCUX,MAAM;;;sBAKR,KAAK;;IAEd,MAAM;QACJ,QACE,EAAC,IAAI,qDAAC,IAAI,EAAC,UAAU,IACnB,8DAAa,CACR,EACP;KACH;;;;;;","names":[],"sources":["src/components/table/z-thead/styles.css?tag=z-thead&encapsulation=shadow","src/components/table/z-thead/index.tsx"],"sourcesContent":[":host {\n --z-table--cells-bottom-border-size: var(\n --border-size-medium\n ); /* Needed to handle the border of the expand button cell */\n\n --z-table--cells-background: var(\n --color-surface02\n ); /* Needed to handle the background-color of the expand button cell */\n\n display: block;\n box-sizing: border-box;\n}\n\n:host([sticky]) {\n position: sticky;\n z-index: 2;\n top: 0;\n box-shadow: 0 2px 4px -2px var(--shadow-color-base);\n}\n","import {Component, Host, Prop, h} from \"@stencil/core\";\n\n/**\n * ZThead component.\n * @slot - ZThead content (`z-tr`).\n */\n@Component({\n tag: \"z-thead\",\n styleUrl: \"styles.css\",\n shadow: true,\n})\nexport class ZThead {\n /**\n * If true, the header will be stuck to the top of the table.\n */\n @Prop({reflect: true})\n sticky = false;\n\n render(): HTMLZTheadElement {\n return (\n <Host role=\"rowgroup\">\n <slot></slot>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -1 +0,0 @@
1
- {"file":"index-f372e39c.js","mappings":";;;AAAA,MAAM,SAAS,GAAG,itEAAitE,CAAC;AACpuE,kBAAe,SAAS;;MCYX,GAAG;;;;;wBAekB,IAAI;2BAQD,IAAI;sBAM9B,KAAK;;sBAYW,KAAK;+BAMZ,eAAe,CAAC,IAAI;0BAMzB,KAAK;;;;;IAiBlB,IAAY,iBAAiB;QAC3B,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE;YACvB,OAAO,IAAI,CAAC;SACb;QAED,OAAO,IAAI,CAAC,aAAa,KAAK,aAAa,CAAC,GAAG,GAAG,WAAW,GAAG,YAAY,CAAC;KAC9E;;;;;IAMO,UAAU;QAChB,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE;YACvB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;YAEpB,OAAO;SACR;QAED,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,KAAK,aAAa,CAAC,GAAG,GAAG,aAAa,CAAC,IAAI,GAAG,aAAa,CAAC,GAAG,CAAC;QACvG,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QAEnB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAC,aAAa,EAAE,IAAI,CAAC,aAAa,EAAC,CAAC,CAAC;KACrD;IAGS,aAAa;QACrB,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,QAAQ,IAAI,CAAC,OAAO,EAAE,CAAC;SACrD;aAAM;YACL,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC;SAC/C;KACF;IAED,iBAAiB;QACf,IAAI,CAAC,aAAa,EAAE,CAAC;KACtB;IAED,MAAM;QACJ,QACE,EAAC,IAAI,qDACH,IAAI,EAAC,cAAc,eACR,IAAI,CAAC,UAAU,eACf,IAAI,CAAC,iBAAiB,EACjC,QAAQ,EAAE,IAAI,CAAC,WAAW,IAE1B,4DAAK,KAAK,EAAC,eAAe,IACxB,8DAAa,EACZ,IAAI,CAAC,WAAW,KACf,+DACE,KAAK,EAAC,mBAAmB,EACzB,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAEnC,+DACE,IAAI,EAAE,IAAI,CAAC,aAAa,KAAK,aAAa,CAAC,IAAI,GAAG,iBAAiB,GAAG,mBAAmB,EACzF,KAAK,EAAE,EAAE,EACT,MAAM,EAAE,EAAE,GACV,CACK,CACV,EACA,IAAI,CAAC,QAAQ,KACZ,4DAAK,KAAK,EAAC,sBAAsB,IAC/B,iEACE,OAAO,EAAE,aAAa,CAAC,QAAQ,EAC/B,IAAI,EAAC,iBAAiB,EACtB,IAAI,EAAE,WAAW,CAAC,OAAO,EACzB,GAAG,EAAE,CAAC,EAAE,MAAM,IAAI,CAAC,WAAW,GAAG,EAAiB,CAAC,EACnD,OAAO,EAAE,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAC3D,EACF,kEACE,GAAG,EAAE,CAAC,EAAE,MAAM,IAAI,CAAC,SAAS,GAAG,EAAyB,CAAC,EACzD,MAAM,EAAE,IAAI,CAAC,WAAW,EACxB,YAAY,EAAE,CAAC,KAAK,MAAM,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAC9D,QAAQ,EAAE,IAAI,CAAC,eAAe,IAE9B,6DAAM,IAAI,EAAC,iBAAiB,GAAQ,CAC1B,CACR,CACP,CACG,CACD,EACP;KACH;;;;;;;;;;","names":[],"sources":["src/components/table/cells/z-th/styles.css?tag=z-th&encapsulation=shadow","src/components/table/cells/z-th/index.tsx"],"sourcesContent":["@import \"../z-table-cells.css\";\n\n:host {\n z-index: 1;\n padding: 0;\n background-color: var(--color-surface02);\n font-weight: var(--font-sb);\n}\n\n.cell--content {\n padding: var(--z-table--cells-padding, calc(var(--space-unit) * 2));\n}\n\n:host([show-sorting]) .cell--content {\n column-gap: var(--space-unit);\n}\n\n.z-th--sort-button {\n padding: 0;\n border: none;\n background-color: transparent;\n cursor: pointer;\n outline: none;\n}\n\n@media (min-width: 768px) and (hover: hover) {\n :host([show-sorting=\"hover\"]) .z-th--sort-button {\n opacity: 0;\n pointer-events: none;\n }\n\n :host([show-sorting=\"hover\"]:hover) .z-th--sort-button,\n :host([show-sorting=\"hover\"]) .z-th--sort-button:focus:focus-visible,\n :host([show-sorting=\"always\"]) .z-th--sort-button,\n :host([sorted]) .z-th--sort-button {\n opacity: 1;\n pointer-events: all;\n }\n}\n\n:host([show-sorting=\"hover\"]:hover) .z-th--sort-button::after,\n:host([show-sorting=\"hover\"]) .z-th--sort-button:focus:focus-visible::after,\n:host([show-sorting=\"always\"]) .z-th--sort-button::after,\n:host([sorted]) .z-th--sort-button::after {\n position: absolute;\n top: 6px;\n left: 6px;\n width: calc(100% - 12px);\n height: calc(100% - 10px);\n background-color: transparent;\n content: \"\";\n}\n\n:host([sorted]) .z-th--sort-button::after,\n.z-th--sort-button:focus:focus-visible::after {\n box-shadow: var(--shadow-focus-primary);\n}\n","import {Component, Element, Event, EventEmitter, Host, Prop, State, Watch, h} from \"@stencil/core\";\nimport {ButtonVariant, ControlSize, PopoverPosition, SortDirection, VisibilityCondition} from \"../../../../beans\";\n\n/**\n * ZTh component.\n * @slot - ZTh content.\n * @slot contextual-menu - Contextual menu content. Only visible when `showMenu` is true.\n */\n@Component({\n tag: \"z-th\",\n styleUrl: \"styles.css\",\n shadow: true,\n})\nexport class ZTh {\n @Element() host: HTMLZThElement;\n\n /**\n * Number of columns that the cell should span.\n */\n @Prop()\n colspan: number;\n\n /**\n * Enables the contextual menu.\n * Can be set to \"hover\" or \"always\" to show the button only on cell hover or always.\n * Set a nullish value to hide the menu button.\n */\n @Prop({reflect: true})\n showMenu: VisibilityCondition = null;\n\n /**\n * Enables the sorting button.\n * Can be set to \"hover\" or \"always\" to show the button only on cell hover or always.\n * Set a nullish value to hide the sort button.\n */\n @Prop({reflect: true})\n showSorting: VisibilityCondition = null;\n\n /**\n * Whether the cell should stick.\n */\n @Prop({reflect: true})\n sticky = false;\n\n /**\n * Current sorting direction.\n */\n @Prop({mutable: true})\n sortDirection?: SortDirection;\n\n /**\n * Sorted state of the column.\n */\n @Prop({reflect: true, mutable: true})\n sorted: boolean | null = false;\n\n /**\n * Set popover position.\n */\n @Prop()\n popoverPosition = PopoverPosition.AUTO;\n\n /**\n * Store the open state of the menu.\n */\n @State()\n isMenuOpen = false;\n\n /**\n * Sort event fired when the user clicks on the sort button.\n * The sorting logic must be implemented by the app.\n * You can set an `id` on the `z-th` to easly identify the column in the event listener.\n */\n @Event()\n private sort: EventEmitter;\n\n private menuTrigger: HTMLElement;\n\n private popoverEl: HTMLZPopoverElement;\n\n /**\n * Get the value to set to the `aria-sort` attribute based on the current sort direction.\n */\n private get ariaSortDirection(): string {\n if (!this.sortDirection) {\n return null;\n }\n\n return this.sortDirection === SortDirection.ASC ? \"ascending\" : \"descending\";\n }\n\n /**\n * Handle the click on the sort button.\n * @fires sort\n */\n private handleSort(): void {\n if (!this.sortDirection) {\n this.sorted = false;\n\n return;\n }\n\n this.sortDirection = this.sortDirection === SortDirection.ASC ? SortDirection.DESC : SortDirection.ASC;\n this.sorted = true;\n\n this.sort.emit({sortDirection: this.sortDirection});\n }\n\n @Watch(\"colspan\")\n protected updateColspan(): void {\n if (this.colspan) {\n this.host.style.gridColumn = `span ${this.colspan}`;\n } else {\n this.host.style.removeProperty(\"grid-column\");\n }\n }\n\n componentWillLoad(): void {\n this.updateColspan();\n }\n\n render(): HTMLZThElement {\n return (\n <Host\n role=\"columnheader\"\n menu-open={this.isMenuOpen}\n aria-sort={this.ariaSortDirection}\n sortable={this.showSorting}\n >\n <div class=\"cell--content\">\n <slot></slot>\n {this.showSorting && (\n <button\n class=\"z-th--sort-button\"\n type=\"button\"\n onClick={this.handleSort.bind(this)}\n >\n <z-icon\n name={this.sortDirection === SortDirection.DESC ? \"arrow-simple-up\" : \"arrow-simple-down\"}\n width={14}\n height={14}\n />\n </button>\n )}\n {this.showMenu && (\n <div class=\"cell--menu-container\">\n <z-button\n variant={ButtonVariant.TERTIARY}\n icon=\"contextual-menu\"\n size={ControlSize.X_SMALL}\n ref={(el) => (this.menuTrigger = el as HTMLElement)}\n onClick={() => (this.popoverEl.open = !this.popoverEl.open)}\n />\n <z-popover\n ref={(el) => (this.popoverEl = el as HTMLZPopoverElement)}\n bindTo={this.menuTrigger}\n onOpenChange={(event) => (this.isMenuOpen = event.detail.open)}\n position={this.popoverPosition}\n >\n <slot name=\"contextual-menu\"></slot>\n </z-popover>\n </div>\n )}\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -1,2 +0,0 @@
1
- import{r as o,h as s,a as e}from"./p-75c4a726.js";const r=":host{--z-table--cells-bottom-border-size:var(\n --border-size-medium\n );--z-table--cells-background:var(\n --color-surface02\n );display:block;box-sizing:border-box}:host([sticky]){position:sticky;z-index:2;top:0;box-shadow:0 2px 4px -2px var(--shadow-color-base)}";const a=r;const t=class{constructor(s){o(this,s);this.sticky=false}render(){return s(e,{key:"3d8fc0d5ebe1a7459f3af8773b6fed710521ddbb",role:"rowgroup"},s("slot",{key:"7ac6ee2f4bd099f45f805a79471bf10f900665bb"}))}};t.style=a;export{t as Z};
2
- //# sourceMappingURL=p-0d966ad0.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["stylesCss","ZTheadStyle0","ZThead","render","h","Host","key","role"],"sources":["src/components/table/z-thead/styles.css?tag=z-thead&encapsulation=shadow","src/components/table/z-thead/index.tsx"],"sourcesContent":[":host {\n --z-table--cells-bottom-border-size: var(\n --border-size-medium\n ); /* Needed to handle the border of the expand button cell */\n\n --z-table--cells-background: var(\n --color-surface02\n ); /* Needed to handle the background-color of the expand button cell */\n\n display: block;\n box-sizing: border-box;\n}\n\n:host([sticky]) {\n position: sticky;\n z-index: 2;\n top: 0;\n box-shadow: 0 2px 4px -2px var(--shadow-color-base);\n}\n","import {Component, Host, Prop, h} from \"@stencil/core\";\n\n/**\n * ZThead component.\n * @slot - ZThead content (`z-tr`).\n */\n@Component({\n tag: \"z-thead\",\n styleUrl: \"styles.css\",\n shadow: true,\n})\nexport class ZThead {\n /**\n * If true, the header will be stuck to the top of the table.\n */\n @Prop({reflect: true})\n sticky = false;\n\n render(): HTMLZTheadElement {\n return (\n <Host role=\"rowgroup\">\n <slot></slot>\n </Host>\n );\n }\n}\n"],"mappings":"kDAAA,MAAMA,EAAY,qRAClB,MAAAC,EAAeD,E,MCUFE,EAAM,M,qCAKR,K,CAET,MAAAC,GACE,OACEC,EAACC,EAAI,CAAAC,IAAA,2CAACC,KAAK,YACTH,EAAA,QAAAE,IAAA,6C","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- export{Z as z_th}from"./p-72bfc9d0.js";import"./p-75c4a726.js";import"./p-b34993de.js";
2
- //# sourceMappingURL=p-1a297fb0.entry.js.map
@@ -1,2 +0,0 @@
1
- import{r as e,c as t,h as r}from"./p-75c4a726.js";import{o as a}from"./p-b34993de.js";const i=":host{position:absolute;z-index:2;top:0;left:0;width:100%;font-family:var(--font-family-sans);font-weight:var(--font-rg)}:host>z-alert{height:calc(var(--space-unit) * 6)}.relative-container{position:relative;display:grid;align-items:center;padding:0;grid-column-gap:var(--space-unit);grid-template-columns:18px auto 46px;grid-template-rows:1fr;outline:none}.relative-container::-moz-focus-inner{border:0}.alert-external-wrapper.remove-alert{border:var(--border-size-medium) solid var(--color-surface02);border-top:none}:host div.add-alert{background:var(--color-success-inverse)}:host div.remove-alert{background:var(--color-warning-inverse)}:host div>.content-text{color:var(--color-surface05);font-size:14px;letter-spacing:0.16px;line-height:20px}:host div>.content-action{height:20px;color:var(--color-primary01);cursor:pointer;font-size:12px;font-weight:var(--font-sb);letter-spacing:0.32px;line-height:20px}:host div>z-icon{justify-self:center}";const s=i;const n=class{constructor(r){e(this,r);this.undoAction=t(this,"undoAction",7);this.iconname=undefined;this.contenttext=undefined;this.actiontext=undefined;this.type=undefined}emitUndoAction(){this.undoAction.emit({actionType:this.type})}handleSpaceKeyPress(e){if(e.keyCode==32||e.keyCode==13){e.preventDefault();this.emitUndoAction()}}handleActionButtonClick(e){e.preventDefault();this.emitUndoAction()}retrieveClass(){let e="";switch(this.type){case"add":e="add-alert";break;case"remove":e="remove-alert";break;default:e="";break}return e}getAlertType(){switch(this.type){case"add":return a.SUCCESS;case"remove":return a.WARNING;default:return null}}render(){return r("div",{key:"20f62eeb1a0ca24f6cd9700ba70a7e09e0ac729b",class:"alert-external-wrapper "+this.retrieveClass()},r("z-alert",{key:"5a8275ea2ab9dc49866b22e8a9d235911e1f7275",type:this.getAlertType()},r("div",{key:"8d69056c30fb55d0bb32701fecd1063dff392665",class:"relative-container"},r("z-icon",{key:"a17e02b4545f15d1a730b66b6e4b5ab5bc665654",name:this.iconname,width:18,height:18,class:this.retrieveClass()}),r("span",{key:"d231b939eb09ddb1b1f25d40a8512ce8f4a18f19",class:"content-text"},this.contenttext),this.actiontext&&!!this.actiontext.trim().length&&r("span",{key:"00f3f7d6ec722547fbc8c14881ca1c69f0652731",role:"button",tabindex:"0",class:"content-action",onClick:e=>{this.handleActionButtonClick(e)},onKeyPress:e=>{this.handleSpaceKeyPress(e)}},this.actiontext))))}};n.style=s;export{n as z_myz_card_alert};
2
- //# sourceMappingURL=p-1db926ff.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["stylesCss","ZMyzCardAlertStyle0","ZMyzCardAlert","emitUndoAction","this","undoAction","emit","actionType","type","handleSpaceKeyPress","e","keyCode","preventDefault","handleActionButtonClick","retrieveClass","className","getAlertType","AlertType","SUCCESS","WARNING","render","h","key","class","name","iconname","width","height","contenttext","actiontext","trim","length","role","tabindex","onClick","onKeyPress"],"sources":["src/snowflakes/myz/card/z-myz-card-alert/styles.css?tag=z-myz-card-alert&encapsulation=shadow","src/snowflakes/myz/card/z-myz-card-alert/index.tsx"],"sourcesContent":[":host {\n position: absolute;\n z-index: 2;\n top: 0;\n left: 0;\n width: 100%;\n font-family: var(--font-family-sans);\n font-weight: var(--font-rg);\n}\n\n:host > z-alert {\n height: calc(var(--space-unit) * 6);\n}\n\n.relative-container {\n position: relative;\n display: grid;\n align-items: center;\n padding: 0;\n grid-column-gap: var(--space-unit);\n grid-template-columns: 18px auto 46px;\n grid-template-rows: 1fr;\n outline: none;\n}\n\n.relative-container::-moz-focus-inner {\n border: 0;\n}\n\n.alert-external-wrapper.remove-alert {\n border: var(--border-size-medium) solid var(--color-surface02);\n border-top: none;\n}\n\n:host div.add-alert {\n background: var(--color-success-inverse);\n}\n\n:host div.remove-alert {\n background: var(--color-warning-inverse);\n}\n\n:host div > .content-text {\n color: var(--color-surface05);\n font-size: 14px;\n letter-spacing: 0.16px;\n line-height: 20px;\n}\n\n:host div > .content-action {\n height: 20px;\n color: var(--color-primary01);\n cursor: pointer;\n font-size: 12px;\n font-weight: var(--font-sb);\n letter-spacing: 0.32px;\n line-height: 20px;\n}\n\n:host div > z-icon {\n justify-self: center;\n}\n","import {Component, Event, EventEmitter, Prop, h} from \"@stencil/core\";\nimport {AlertType} from \"../../../../beans\";\n\n@Component({\n tag: \"z-myz-card-alert\",\n styleUrl: \"styles.css\",\n shadow: true,\n})\nexport class ZMyzCardAlert {\n /** icon name */\n @Prop()\n iconname: string;\n\n /** content text */\n @Prop()\n contenttext: string;\n\n /** action button text */\n @Prop()\n actiontext?: string;\n\n /** alert variant type */\n @Prop()\n type: string;\n\n /** undo action click/keyboard event, returns actionType */\n @Event()\n undoAction: EventEmitter;\n\n private emitUndoAction(): void {\n this.undoAction.emit({actionType: this.type});\n }\n\n private handleSpaceKeyPress(e: KeyboardEvent): void {\n if (e.keyCode == 32 || e.keyCode == 13) {\n e.preventDefault();\n this.emitUndoAction();\n }\n }\n\n private handleActionButtonClick(e: MouseEvent): void {\n e.preventDefault();\n this.emitUndoAction();\n }\n\n private retrieveClass(): string {\n let className = \"\";\n switch (this.type) {\n case \"add\":\n className = \"add-alert\";\n break;\n case \"remove\":\n className = \"remove-alert\";\n break;\n default:\n className = \"\";\n break;\n }\n\n return className;\n }\n\n private getAlertType(): AlertType {\n switch (this.type) {\n case \"add\":\n return AlertType.SUCCESS;\n case \"remove\":\n return AlertType.WARNING;\n default:\n return null;\n }\n }\n\n render(): HTMLDivElement {\n return (\n <div class={\"alert-external-wrapper \" + this.retrieveClass()}>\n <z-alert type={this.getAlertType()}>\n <div class=\"relative-container\">\n <z-icon\n name={this.iconname}\n width={18}\n height={18}\n class={this.retrieveClass()}\n ></z-icon>\n <span class=\"content-text\">{this.contenttext}</span>\n {this.actiontext && !!this.actiontext.trim().length && (\n <span\n role=\"button\"\n tabindex=\"0\"\n class=\"content-action\"\n onClick={(e: MouseEvent) => {\n this.handleActionButtonClick(e);\n }}\n onKeyPress={(e: KeyboardEvent) => {\n this.handleSpaceKeyPress(e);\n }}\n >\n {this.actiontext}\n </span>\n )}\n </div>\n </z-alert>\n </div>\n );\n }\n}\n"],"mappings":"sFAAA,MAAMA,EAAY,w7BAClB,MAAAC,EAAeD,E,MCOFE,EAAa,M,iKAqBhB,cAAAC,GACNC,KAAKC,WAAWC,KAAK,CAACC,WAAYH,KAAKI,M,CAGjC,mBAAAC,CAAoBC,GAC1B,GAAIA,EAAEC,SAAW,IAAMD,EAAEC,SAAW,GAAI,CACtCD,EAAEE,iBACFR,KAAKD,gB,EAID,uBAAAU,CAAwBH,GAC9BA,EAAEE,iBACFR,KAAKD,gB,CAGC,aAAAW,GACN,IAAIC,EAAY,GAChB,OAAQX,KAAKI,MACX,IAAK,MACHO,EAAY,YACZ,MACF,IAAK,SACHA,EAAY,eACZ,MACF,QACEA,EAAY,GACZ,MAGJ,OAAOA,C,CAGD,YAAAC,GACN,OAAQZ,KAAKI,MACX,IAAK,MACH,OAAOS,EAAUC,QACnB,IAAK,SACH,OAAOD,EAAUE,QACnB,QACE,OAAO,K,CAIb,MAAAC,GACE,OACEC,EAAA,OAAAC,IAAA,2CAAKC,MAAO,0BAA4BnB,KAAKU,iBAC3CO,EAAA,WAAAC,IAAA,2CAASd,KAAMJ,KAAKY,gBAClBK,EAAA,OAAAC,IAAA,2CAAKC,MAAM,sBACTF,EAAA,UAAAC,IAAA,2CACEE,KAAMpB,KAAKqB,SACXC,MAAO,GACPC,OAAQ,GACRJ,MAAOnB,KAAKU,kBAEdO,EAAA,QAAAC,IAAA,2CAAMC,MAAM,gBAAgBnB,KAAKwB,aAChCxB,KAAKyB,cAAgBzB,KAAKyB,WAAWC,OAAOC,QAC3CV,EAAA,QAAAC,IAAA,2CACEU,KAAK,SACLC,SAAS,IACTV,MAAM,iBACNW,QAAUxB,IACRN,KAAKS,wBAAwBH,EAAE,EAEjCyB,WAAazB,IACXN,KAAKK,oBAAoBC,EAAE,GAG5BN,KAAKyB,c","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- export{Z as z_td}from"./p-7c6dad4b.js";import"./p-75c4a726.js";import"./p-b34993de.js";
2
- //# sourceMappingURL=p-2f3732d9.entry.js.map
@@ -1,2 +0,0 @@
1
- import{r as e,h as r}from"./p-75c4a726.js";import{L as i}from"./p-b34993de.js";const t=":host{--card-overflow:hidden}div{display:flex;overflow:var(--card-overflow);width:auto;width:256px;height:522px;box-sizing:border-box;flex-direction:column;border:var(--border-size-medium) solid var(--color-surface03);background-color:var(--color-surface01);border-radius:var(--border-radius)}div.real,div.trial,div.temp{border-color:var(--blue100)}div.faded{border:var(--border-size-medium) solid var(--color-surface02)}div.highlighted{box-shadow:var(--shadow-4);outline:none}div.pressed{box-shadow:var(--shadow-8);outline:none}div:focus{box-shadow:var(--shadow-focus-primary);outline:none}";const a=t;const d=class{constructor(r){e(this,r);this.faded=undefined;this.cardtype=undefined;this.ispressed=false;this.ishighlighted=false}retrieveClass(){let e="";if(this.cardtype===i.REAL){e+="real"}else if(this.cardtype===i.TRIAL){e+="trial"}else if(this.cardtype===i.TEMP){e+="temp"}if(this.faded){e+=" faded"}else if(this.ispressed){e+=" pressed"}else if(this.ishighlighted){e+=" highlighted"}return e}render(){return r("div",{key:"d07b37d42382d81be002b31b448e5d6ac3e8867c",class:this.retrieveClass(),tabindex:"0"},r("slot",{key:"03e02f39390a302f558bc341b538390027ecb148"}))}};d.style=a;const o=":host{width:auto;height:340px}:host>div{position:relative;display:flex;width:auto;height:340px;align-items:center;justify-content:center}";const s=o;const n=class{constructor(r){e(this,r)}render(){return r("div",{key:"5e1a72de482c87d1b26e8e60bd833a05e5f3b062"},r("slot",{key:"268e3bb553b952cbdbc55db2d17879adddf28e23",name:"alert"}),r("slot",{key:"a26bede57fa17b34b348a1384d815646c361bee5",name:"cover"}))}};n.style=s;const c="img{display:block;max-width:100%;height:340px;margin:auto;object-fit:cover}img.faded{opacity:0.3}";const l=c;const h=class{constructor(r){e(this,r);this.img=undefined;this.titolo=undefined;this.faded=undefined;this.defaultimg=undefined}hadleOnImageError(){this.img=this.defaultimg}render(){return r("img",{key:"36c96fbd2c8546b245e3ed835957ea9ddb4def3d",class:this.faded&&"faded",onError:this.hadleOnImageError.bind(this),alt:this.titolo,src:this.img})}};h.style=l;const b='header{position:relative;display:flex;width:auto;height:calc(var(--space-unit) * 6);flex-direction:row;align-items:flex-start;justify-content:space-between;border-bottom:var(--border-size-medium) solid var(--color-surface03);background-color:var(--color-surface01);border-radius:var(--border-radius) var(--border-radius) var(--border-no-radius) var(--border-no-radius)}slot[name="aria-heading"]::slotted(*){position:absolute;overflow:hidden !important;width:1px !important;height:1px !important;padding:0 !important;border:0 none !important;margin:-1px !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important}header.real,header.trial,header.temp{border-bottom:var(--border-size-medium) solid var(--blue100);background-color:var(--color-primary03)}.card-title{overflow:hidden;height:calc(var(--space-unit) * 2);padding:calc(var(--space-unit) * 2);margin:0;color:var(--color-surface05);font-family:var(--font-family-sans);font-size:12px;font-weight:var(--font-sb);letter-spacing:0.22px;line-height:calc(var(--space-unit) * 2);text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.faded{border-bottom:var(--border-size-medium) solid var(--color-surface02)}.faded.real,.faded.trial,.faded.temp{border-top:var(--border-size-medium) solid var(--blue100);border-right:var(--border-size-medium) solid var(--blue100);border-left:var(--border-size-medium) solid var(--blue100)}';const f=b;const u=class{constructor(r){e(this,r);this.titolo=undefined;this.faded=undefined;this.cardtype=undefined;this.allowTooltip=false}getTitle(){return this.allowTooltip?this.titolo:""}componentDidLoad(){if(this.elementHasEllipsis()){this.allowTooltip=true}}elementHasEllipsis(){return this.ellipsis.offsetWidth<this.ellipsis.scrollWidth}retrieveClass(){return{real:this.cardtype===i.REAL,trial:this.cardtype===i.TRIAL,temp:this.cardtype===i.TEMP,faded:this.faded}}render(){return r("header",{key:"40152ef3144db81f149eb5d8ecf4a823f7950f3e",class:this.retrieveClass()},r("slot",{key:"8386bb3e5a3b7c5bee3da6a6801ada1e4aa2a5dc",name:"aria-heading"}),r("span",{key:"35b55d3be757c0a646dca9184c55ad1bd922fc1e",class:"card-title",ref:e=>this.ellipsis=e,title:this.getTitle()},this.titolo),r("slot",{key:"834cb2fac275139fe0f4a97c5c75ed0422348719",name:"icon"}))}};u.style=f;export{d as z_myz_card,n as z_myz_card_body,h as z_myz_card_cover,u as z_myz_card_header};
2
- //# sourceMappingURL=p-372d3d61.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["stylesCss","ZMyzCardStyle0","ZMyzCardComponent","retrieveClass","elemClasses","this","cardtype","LicenseType","REAL","TRIAL","TEMP","faded","ispressed","ishighlighted","render","h","key","class","tabindex","ZMyzCardBodyStyle0","ZMyzCardBody","name","ZMyzCardCoverStyle0","ZMyzCardCover","hadleOnImageError","img","defaultimg","onError","bind","alt","titolo","src","ZMyzCardHeaderStyle0","ZMyzCardHeader","getTitle","allowTooltip","componentDidLoad","elementHasEllipsis","ellipsis","offsetWidth","scrollWidth","real","trial","temp","ref","el","title"],"sources":["src/snowflakes/myz/card/z-myz-card/styles.css?tag=z-myz-card&encapsulation=shadow","src/snowflakes/myz/card/z-myz-card/index.tsx","src/snowflakes/myz/card/z-myz-card-body/styles.css?tag=z-myz-card-body&encapsulation=shadow","src/snowflakes/myz/card/z-myz-card-body/index.tsx","src/snowflakes/myz/card/z-myz-card-cover/styles.css?tag=z-myz-card-cover&encapsulation=shadow","src/snowflakes/myz/card/z-myz-card-cover/index.tsx","src/snowflakes/myz/card/z-myz-card-header/styles.css?tag=z-myz-card-header&encapsulation=shadow","src/snowflakes/myz/card/z-myz-card-header/index.tsx"],"sourcesContent":[":host {\n --card-overflow: hidden;\n}\n\ndiv {\n display: flex;\n overflow: var(--card-overflow);\n width: auto;\n width: 256px; /* TODO: width must be 100% - must be handled in dashboard */\n height: 522px;\n box-sizing: border-box;\n flex-direction: column;\n border: var(--border-size-medium) solid var(--color-surface03);\n background-color: var(--color-surface01);\n border-radius: var(--border-radius);\n}\n\ndiv.real,\ndiv.trial,\ndiv.temp {\n border-color: var(--blue100);\n}\n\n/* HIDDEN status */\ndiv.faded {\n border: var(--border-size-medium) solid var(--color-surface02);\n}\n\n/* HIGHLIGHTED status */\ndiv.highlighted {\n box-shadow: var(--shadow-4);\n outline: none;\n}\n\n/* PRESSED status */\ndiv.pressed {\n box-shadow: var(--shadow-8);\n outline: none;\n}\n\ndiv:focus {\n box-shadow: var(--shadow-focus-primary);\n outline: none;\n}\n","import {Component, h, Prop} from \"@stencil/core\";\nimport {LicenseType} from \"../../../../beans/index\";\n\n/**\n * @slot - generic card slot\n */\n@Component({\n tag: \"z-myz-card\",\n styleUrl: \"styles.css\",\n shadow: true,\n})\nexport class ZMyzCardComponent {\n /** faded status */\n @Prop()\n faded: boolean;\n\n /** graphic variant (optional) */\n @Prop()\n cardtype?: LicenseType;\n\n /** pressed status */\n @Prop()\n ispressed = false;\n\n /** highlighted status */\n @Prop()\n ishighlighted = false;\n\n private retrieveClass(): string {\n let elemClasses = \"\";\n\n if (this.cardtype === LicenseType.REAL) {\n elemClasses += \"real\";\n } else if (this.cardtype === LicenseType.TRIAL) {\n elemClasses += \"trial\";\n } else if (this.cardtype === LicenseType.TEMP) {\n elemClasses += \"temp\";\n }\n\n if (this.faded) {\n elemClasses += \" faded\";\n } else if (this.ispressed) {\n elemClasses += \" pressed\";\n } else if (this.ishighlighted) {\n elemClasses += \" highlighted\";\n }\n\n return elemClasses;\n }\n\n render(): HTMLDivElement {\n return (\n <div\n class={this.retrieveClass()}\n tabindex=\"0\"\n >\n <slot />\n </div>\n );\n }\n}\n",":host {\n width: auto;\n height: 340px;\n}\n\n:host > div {\n position: relative;\n display: flex;\n width: auto;\n height: 340px;\n align-items: center;\n justify-content: center;\n}\n","import {Component, h} from \"@stencil/core\";\n\n/**\n * @slot alert - card alert slot\n * @slot cover - book cover slot\n */\n@Component({\n tag: \"z-myz-card-body\",\n styleUrl: \"styles.css\",\n shadow: true,\n})\nexport class ZMyzCardBody {\n render(): HTMLDivElement {\n return (\n <div>\n <slot name=\"alert\"></slot>\n <slot name=\"cover\" />\n </div>\n );\n }\n}\n","img {\n display: block;\n max-width: 100%;\n height: 340px;\n margin: auto;\n object-fit: cover;\n}\n\nimg.faded {\n opacity: 0.3;\n}\n","import {Component, Prop, h} from \"@stencil/core\";\n\n@Component({\n tag: \"z-myz-card-cover\",\n styleUrl: \"styles.css\",\n shadow: true,\n})\nexport class ZMyzCardCover {\n /** image source */\n @Prop()\n img: string;\n\n /** cover alt title */\n @Prop()\n titolo: string;\n\n /** faded status */\n @Prop()\n faded: boolean;\n\n /** default error image source */\n @Prop()\n defaultimg: string;\n\n private hadleOnImageError(): void {\n this.img = this.defaultimg;\n }\n\n render(): HTMLImageElement {\n return (\n <img\n class={this.faded && \"faded\"}\n onError={this.hadleOnImageError.bind(this)}\n alt={this.titolo}\n src={this.img}\n />\n );\n }\n}\n","header {\n position: relative;\n display: flex;\n width: auto;\n height: calc(var(--space-unit) * 6);\n flex-direction: row;\n align-items: flex-start;\n justify-content: space-between;\n border-bottom: var(--border-size-medium) solid var(--color-surface03);\n background-color: var(--color-surface01);\n border-radius: var(--border-radius) var(--border-radius) var(--border-no-radius) var(--border-no-radius);\n}\n\nslot[name=\"aria-heading\"]::slotted(*) {\n position: absolute;\n overflow: hidden !important;\n width: 1px !important;\n height: 1px !important;\n padding: 0 !important;\n border: 0 none !important;\n margin: -1px !important;\n clip: rect(0, 0, 0, 0) !important;\n white-space: nowrap !important;\n}\n\nheader.real,\nheader.trial,\nheader.temp {\n border-bottom: var(--border-size-medium) solid var(--blue100);\n background-color: var(--color-primary03);\n}\n\n.card-title {\n overflow: hidden;\n height: calc(var(--space-unit) * 2);\n padding: calc(var(--space-unit) * 2);\n margin: 0;\n color: var(--color-surface05);\n font-family: var(--font-family-sans);\n font-size: 12px;\n font-weight: var(--font-sb);\n letter-spacing: 0.22px;\n line-height: calc(var(--space-unit) * 2);\n text-overflow: ellipsis;\n text-transform: uppercase;\n white-space: nowrap;\n}\n\n.faded {\n border-bottom: var(--border-size-medium) solid var(--color-surface02);\n}\n\n.faded.real,\n.faded.trial,\n.faded.temp {\n border-top: var(--border-size-medium) solid var(--blue100);\n border-right: var(--border-size-medium) solid var(--blue100);\n border-left: var(--border-size-medium) solid var(--blue100);\n}\n","import {Component, Prop, State, h} from \"@stencil/core\";\nimport {JSXBase} from \"@stencil/core/internal\";\nimport {LicenseType} from \"../../../../beans/index\";\n\n/**\n * @slot icon - card header icon slot\n */\n@Component({\n tag: \"z-myz-card-header\",\n styleUrl: \"styles.css\",\n shadow: true,\n})\nexport class ZMyzCardHeader {\n /** volume title */\n @Prop()\n titolo: string;\n\n /** faded status */\n @Prop()\n faded: boolean;\n\n /** card graphic variant (optional) */\n @Prop()\n cardtype?: LicenseType;\n\n @State()\n allowTooltip = false;\n\n private ellipsis?: HTMLElement;\n\n private getTitle(): string {\n return this.allowTooltip ? this.titolo : \"\";\n }\n\n componentDidLoad(): void {\n if (this.elementHasEllipsis()) {\n this.allowTooltip = true;\n }\n }\n\n private elementHasEllipsis(): boolean {\n return this.ellipsis.offsetWidth < this.ellipsis.scrollWidth;\n }\n\n private retrieveClass(): JSXBase.HTMLAttributes[\"class\"] {\n return {\n real: this.cardtype === LicenseType.REAL,\n trial: this.cardtype === LicenseType.TRIAL,\n temp: this.cardtype === LicenseType.TEMP,\n faded: this.faded,\n };\n }\n\n render(): HTMLElement {\n return (\n <header class={this.retrieveClass()}>\n <slot name=\"aria-heading\" />\n <span\n class=\"card-title\"\n ref={(el) => (this.ellipsis = el as HTMLElement)}\n title={this.getTitle()}\n >\n {this.titolo}\n </span>\n <slot name=\"icon\" />\n </header>\n );\n }\n}\n"],"mappings":"+EAAA,MAAMA,EAAY,klBAClB,MAAAC,EAAeD,E,MCUFE,EAAiB,M,qFAWhB,M,mBAII,K,CAER,aAAAC,GACN,IAAIC,EAAc,GAElB,GAAIC,KAAKC,WAAaC,EAAYC,KAAM,CACtCJ,GAAe,M,MACV,GAAIC,KAAKC,WAAaC,EAAYE,MAAO,CAC9CL,GAAe,O,MACV,GAAIC,KAAKC,WAAaC,EAAYG,KAAM,CAC7CN,GAAe,M,CAGjB,GAAIC,KAAKM,MAAO,CACdP,GAAe,Q,MACV,GAAIC,KAAKO,UAAW,CACzBR,GAAe,U,MACV,GAAIC,KAAKQ,cAAe,CAC7BT,GAAe,c,CAGjB,OAAOA,C,CAGT,MAAAU,GACE,OACEC,EAAA,OAAAC,IAAA,2CACEC,MAAOZ,KAAKF,gBACZe,SAAS,KAETH,EAAA,QAAAC,IAAA,6C,aCxDR,MAAMhB,EAAY,4IAClB,MAAAmB,EAAenB,E,MCUFoB,EAAY,M,yBACvB,MAAAN,GACE,OACEC,EAAA,OAAAC,IAAA,4CACED,EAAA,QAAAC,IAAA,2CAAMK,KAAK,UACXN,EAAA,QAAAC,IAAA,2CAAMK,KAAK,U,aChBnB,MAAMrB,EAAY,oGAClB,MAAAsB,EAAetB,E,MCMFuB,EAAa,M,iHAiBhB,iBAAAC,GACNnB,KAAKoB,IAAMpB,KAAKqB,U,CAGlB,MAAAZ,GACE,OACEC,EAAA,OAAAC,IAAA,2CACEC,MAAOZ,KAAKM,OAAS,QACrBgB,QAAStB,KAAKmB,kBAAkBI,KAAKvB,MACrCwB,IAAKxB,KAAKyB,OACVC,IAAK1B,KAAKoB,K,aClClB,MAAMzB,EAAY,03CAClB,MAAAgC,EAAehC,E,MCWFiC,EAAc,M,8GAcV,K,CAIP,QAAAC,GACN,OAAO7B,KAAK8B,aAAe9B,KAAKyB,OAAS,E,CAG3C,gBAAAM,GACE,GAAI/B,KAAKgC,qBAAsB,CAC7BhC,KAAK8B,aAAe,I,EAIhB,kBAAAE,GACN,OAAOhC,KAAKiC,SAASC,YAAclC,KAAKiC,SAASE,W,CAG3C,aAAArC,GACN,MAAO,CACLsC,KAAMpC,KAAKC,WAAaC,EAAYC,KACpCkC,MAAOrC,KAAKC,WAAaC,EAAYE,MACrCkC,KAAMtC,KAAKC,WAAaC,EAAYG,KACpCC,MAAON,KAAKM,M,CAIhB,MAAAG,GACE,OACEC,EAAA,UAAAC,IAAA,2CAAQC,MAAOZ,KAAKF,iBAClBY,EAAA,QAAAC,IAAA,2CAAMK,KAAK,iBACXN,EAAA,QAAAC,IAAA,2CACEC,MAAM,aACN2B,IAAMC,GAAQxC,KAAKiC,SAAWO,EAC9BC,MAAOzC,KAAK6B,YAEX7B,KAAKyB,QAERf,EAAA,QAAAC,IAAA,2CAAMK,KAAK,S","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- import{r as e,h as a,a as r}from"./p-75c4a726.js";import{t}from"./p-b34993de.js";const s=class{constructor(a){e(this,a);this.mode=t.POLITE}render(){return a(r,{key:"d499971646bd67f039efe11fce7f6662de50006c","aria-live":this.mode,"aria-atomic":"true","aria-relevant":"additions"},a("slot",{key:"009efbe303e1a5ab3434e6b0a98e7bef1705ccbe"}))}};export{s as z_aria_alert};
2
- //# sourceMappingURL=p-386e385c.entry.js.map
@@ -1,2 +0,0 @@
1
- import{r as t,c as e,h as i,g as r}from"./p-75c4a726.js";import{Y as a}from"./p-b34993de.js";import{B as o}from"./p-5145a606.js";import{r as s}from"./p-10607a39.js";const n=':host{--z-book-card-ribbon-background-color:var(--avatar-C08);--z-book-card-ribbon-shadow-color:var(--green950);--z-book-card-compact-width:262px;--z-book-card-compact-height:568px}:host>article{display:block;width:100%;max-width:360px;box-sizing:border-box;border:var(--border-size-medium) solid var(--color-surface03);background-color:var(--color-surface01);border-radius:var(--border-radius);font-family:var(--font-family-sans);font-weight:var(--font-rg)}:host>article div.cover{position:relative}:host>article div.cover div.img-wrapper{display:flex;overflow:hidden;border:var(--border-size-small) solid var(--color-surface03);line-height:0}:host>article div.cover div.img-wrapper img{width:auto;max-width:100%;height:auto;max-height:100%;align-self:flex-end}:host>article div.cover .ribbon{position:absolute;z-index:10;top:calc(var(--space-unit) * 2);left:calc(var(--space-unit) * -2);display:flex;max-width:100%;height:calc(var(--space-unit) * 4);box-sizing:border-box;align-items:center;padding:0 calc(var(--space-unit) * 2);border:var(--border-size-medium) solid var(--color-surface01);background:var(--z-book-card-ribbon-background-color);border-radius:0 var(--border-radius) var(--border-radius) 0;box-shadow:var(--shadow-2);color:var(--color-text-inverse);font-family:var(--font-family-sans);font-size:var(--font-size-2);font-weight:var(--font-sb);line-height:initial}:host>article div.cover .ribbon.interactive:hover{cursor:pointer}:host>article div.cover .ribbon.interactive:focus{box-shadow:var(--shadow-focus-primary);outline:none !important}:host>article div.cover .ribbon span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;word-wrap:nowrap}:host>article div.cover .ribbon::before{position:absolute;bottom:-12px;left:-2px;width:0;height:0;border-top:10px solid var(--z-book-card-ribbon-shadow-color);border-left:16px solid transparent;content:""}:host>article div.cover .ribbon z-icon{margin-right:var(--space-unit)}:host>article div.content{margin:var(--space-unit) 0;border-radius:var(--border-radius)}:host>article .title{display:flex;height:100%;align-self:center;color:var(--color-default-text);font-size:var(--font-size-4);font-weight:var(--font-sb);line-height:1.5}:host>article .title *{all:unset}:host>article div.subtitle{color:var(--color-default-text);font-size:var(--font-size-2);font-weight:var(--font-rg);line-height:1.4}:host>article div.authors{color:var(--color-default-text);font-size:var(--font-size-1);font-weight:var(--font-rg);line-height:1.33}:host>article div.isbn{overflow:hidden;color:var(--color-default-text);font-size:var(--font-size-2);line-height:1.33;text-overflow:ellipsis;white-space:nowrap;word-wrap:nowrap}:host>article div.isbn>.code{font-weight:var(--font-sb)}:host>article div.tags{display:flex;overflow:hidden;max-height:32px;flex-flow:row wrap;align-content:stretch;align-items:stretch;justify-content:flex-start;gap:calc(var(--space-unit) / 2)}:host>article ::slotted([slot="tags"]){margin-bottom:var(--space-unit)}:host>article ::slotted([slot="header-cta"]){--z-icon-width:20px;--z-icon-height:20px;padding:var(--space-unit);cursor:pointer;fill:var(--color-primary01-icon)}:host>article ::slotted([slot="header-cta"]:focus){box-shadow:var(--shadow-focus-primary);outline:none !important}:host>article.expanded{width:100%;min-width:328px;padding:calc(var(--space-unit) * 2);padding-bottom:0}:host>article.expanded div.header{display:flex;flex-flow:row nowrap;align-content:stretch;align-items:top;justify-content:space-between;margin-bottom:var(--space-unit);white-space:nowrap}:host>article.expanded div.cover div.img-wrapper{border-radius:var(--border-radius)}:host>article.expanded div.cover div.img-wrapper img{width:100%}:host>article.expanded .title,:host>article.expanded .subtitle,:host>article.expanded .authors{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;white-space:initial}:host>article.expanded div.footer{border-top:var(--border-size-small) solid var(--color-surface03);margin-bottom:calc(var(--space-unit) * 1.5)}:host>article.expanded div.footer.open{padding-top:calc(var(--space-unit) * 1.5)}:host>article.expanded div.footer.open div.resources{display:initial}:host>article.expanded div.footer.close div.resources{display:none}:host>article.expanded button.show-resources{--z-icon-height:16px;--z-icon-width:16px;all:unset;display:flex;width:100%;flex-flow:row nowrap;align-content:center;align-items:center;justify-content:center;padding:calc(var(--space-unit) * 1) 0;color:var(--color-link-primary);cursor:pointer;fill:var(--color-link-primary);font-size:var(--font-size-2);font-weight:var(--font-sb);gap:var(--space-unit)}:host>article.expanded button.show-resources:focus{box-shadow:var(--shadow-focus-primary)}:host>article.search{width:262px;height:616px;padding:calc(var(--space-unit) * 2);padding-bottom:0}:host>article.search .wrapper-container{display:flex;height:100%;flex-direction:column;justify-content:space-between}:host>article.search .wrapper-container .wrapper{height:451px}:host>article.search .wrapper-container .action-container{padding-bottom:calc(var(--space-unit) * 2)}:host>article.search div.header{display:flex;height:24px;flex-flow:row nowrap;align-content:stretch;align-items:center;justify-content:space-between;margin-bottom:calc(var(--space-unit) * 1.5);white-space:nowrap}:host>article.search div.cover div.img-wrapper{height:314px;border-radius:var(--border-radius)}:host>article.search .title{display:block;height:initial;align-self:unset;font-size:var(--font-size-3)}:host>article.search .title,:host>article.search .subtitle,:host>article.search .authors{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:host>article.compact{width:var(--z-book-card-compact-width);height:var(--z-book-card-compact-height)}:host>article.compact.borderless{border:none}:host>article.compact div.cover div.img-wrapper{width:100%;height:calc(var(--z-book-card-compact-width) * 1.36);box-sizing:border-box;border:none;background:var(--color-white);border-radius:var(--border-radius) var(--border-radius) 0 0;box-shadow:var(--shadow-2)}:host>article.compact div.wrapper{display:flex;height:100%;flex-flow:column nowrap;align-content:stretch;align-items:stretch;justify-content:flex-start}:host>article.compact div.content{display:flex;box-sizing:border-box;flex-flow:column nowrap;align-content:stretch;align-items:stretch;justify-content:space-between;padding:calc(var(--space-unit) * 2);padding-top:var(--space-unit);margin:0}:host>article.compact div.action-container{padding:calc(var(--space-unit) * 2);padding-top:0;margin-top:auto}:host>article.compact.borderless div.cover div.img-wrapper{width:var(--z-book-card-compact-width)}:host>article.compact.borderless div.content{padding:0;padding-top:var(--space-unit)}:host>article.compact.borderless div.action-container{padding:0;padding-bottom:calc(var(--space-unit) * 2)}:host>article.compact .title{display:block;height:initial;align-self:unset}:host>article.compact .title,:host>article.compact .subtitle,:host>article.compact .authors{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;white-space:initial}@media (min-width: 768px){:host>article{width:100%;max-width:initial}:host>article .title{display:block;height:initial;align-self:unset}:host>article.expanded{width:100%;min-width:initial;max-width:initial;height:360px;padding:0;border:0}:host>article.expanded div.wrapper{display:flex;flex-flow:row nowrap;align-content:stretch;align-items:stretch;justify-content:flex-start}:host>article.expanded div.cover div.img-wrapper{width:262px;height:356px;border:0;border:var(--border-size-medium) solid var(--color-surface03);border-right:none;background:var(--color-surface01);border-radius:var(--border-radius) 0 0 var(--border-radius)}:host>article.expanded div.cover div.img-wrapper img{width:auto;border-radius:0}:host>article.expanded div.content{display:flex;overflow:hidden;width:100%;height:356px;flex-flow:column nowrap;align-content:stretch;align-items:stretch;justify-content:space-between;border:var(--border-size-medium) solid var(--color-surface03);border-left:none;margin:0;background:var(--color-surface01);border-radius:0 var(--border-radius) var(--border-radius) 0}:host>article.expanded div.content div.top{padding:calc(var(--space-unit) * 2);padding-bottom:0}:host>article.expanded div.content div.top div.info{display:flex;flex-flow:row nowrap;align-content:stretch;align-items:stretch;justify-content:space-between;margin-bottom:calc(var(--space-unit) / 2)}:host>article.expanded div.content div.top div.info>div.left{width:100%}:host>article.expanded div.content div.bottom{padding:calc(var(--space-unit) * 2);padding-bottom:0}}@media (min-width: 1152px){:host>article{width:fit-content;max-width:initial}}@media (min-width: 1366px){:host>article.expanded{width:635px}:host>article.expanded div.content{width:369px}}';const d=n;const c=class{constructor(i){t(this,i);this.ribbonClick=e(this,"ribbonClick",7);this.variant=undefined;this.cover=undefined;this.operaTitle=undefined;this.volumeTitle=undefined;this.authors=undefined;this.isbn=undefined;this.isbnLabel="";this.ribbon=undefined;this.ribbonIcon=undefined;this.ribbonInteractive=undefined;this.borderless=undefined;this.fallbackCover=undefined;this.operaTitleTag=undefined;this.isMobile=false;this.hasResources=false;this.showResources=false}emitRibbonClick(){this.ribbonClick.emit()}componentWillLoad(){this.id=`id-${s()}`;const t=window.matchMedia(`(max-width: ${o.MOBILE}px)`);this.isMobile=t.matches;t.onchange=t=>this.isMobile=t.matches}componentDidLoad(){this.handleResources()}handleResources(){var t;if(this.variant!==a.EXPANDED||!this.isMobile){return}this.hasResources=((t=this.hostElement.querySelectorAll("[slot=resources]"))===null||t===void 0?void 0:t.length)>0}toggleResources(){this.showResources=!this.showResources}renderCard(){switch(this.variant){case a.EXPANDED:return this.isMobile?this.renderMobileExpandedCard():this.renderExpandedCard();case a.COMPACT:return this.renderCompactCard();case a.SEARCH:return this.renderSearchCard()}}renderExpandedCard(){return i("div",{class:"wrapper"},this.renderCover(),i("div",{class:"content"},i("div",{class:"top"},i("div",{class:"info"},i("div",{class:"left"},this.renderAuthors(),this.renderOperaTitle(),this.renderVolumeTitle(),this.renderIsbn()),i("div",{class:"right"},this.renderHeaderCtaSlot())),this.renderTagsSlot()),i("div",{class:"bottom"},this.renderResourcesSlot())))}renderMobileExpandedCard(){return i("div",{class:"wrapper"},i("div",{class:"header"},this.renderOperaTitle(),this.renderHeaderCtaSlot()),this.renderCover(),i("div",{class:"content"},this.renderTagsSlot(),this.renderAuthors(),this.renderVolumeTitle(),this.renderIsbn()),this.hasResources&&i("div",{class:{footer:true,open:this.showResources,close:!this.showResources}},!this.showResources&&this.renderShowResources(),this.renderResourcesSlot(),this.showResources&&this.renderShowResources()))}renderSearchCard(){return i("div",{class:"wrapper-container"},i("div",{class:"wrapper"},i("div",{class:"header"},this.renderOperaTitle(),this.renderHeaderCtaSlot()),this.renderCover(),i("div",{class:"content"},this.renderTagsSlot(),this.renderAuthors(),this.renderVolumeTitle(),this.renderIsbn())),this.renderFooterCtaSlot())}renderCompactCard(){return i("div",{class:"wrapper"},this.renderCover(),i("div",{class:"content"},this.renderAuthors(),this.renderOperaTitle(),this.renderVolumeTitle(),this.renderIsbn()),this.renderFooterCtaSlot())}renderCover(){return i("div",{class:"cover"},this.ribbon&&this.variant!==a.COMPACT&&this.renderRibbon(),i("div",{class:"img-wrapper"},i("img",{src:this.cover,onError:()=>{if(this.fallbackCover){this.cover=this.fallbackCover}},"aria-hidden":"true"})))}renderRibbon(){const t=[this.ribbonIcon&&i("z-icon",{name:this.ribbonIcon,width:16,height:16,fill:"color-inverse-icon"}),i("span",null,this.ribbon)];return this.ribbonInteractive?i("button",{class:"ribbon interactive",onClick:()=>this.emitRibbonClick()},t):i("div",{class:"ribbon"},t)}renderOperaTitle(){const t=this.operaTitleTag?`<${this.operaTitleTag}>${this.operaTitle}</${this.operaTitleTag}>`:this.operaTitle;return i("div",{class:"title",innerHTML:t})}renderVolumeTitle(){return this.volumeTitle?i("div",{class:"subtitle"},this.volumeTitle):null}renderAuthors(){return this.authors?i("div",{class:"authors","aria-description":"Autori"},this.authors):null}renderIsbn(){return this.isbn?i("div",{class:"isbn"},i("span",{class:"code","aria-description":`ISBN ${this.isbnLabel}`},this.isbn),this.isbnLabel?i("span",{class:"label"}," ",this.isbnLabel):null):null}renderShowResources(){return i("button",{class:"show-resources","aria-label":`Risorse del libro ${this.operaTitle}`,"aria-expanded":this.showResources.toString(),"aria-controls":`resources-${this.id}`,onClick:()=>this.toggleResources()},this.showResources?"Chiudi":"Vedi tutto",i("z-icon",{name:this.showResources?"chevron-up":"chevron-down"}))}renderTagsSlot(){return i("div",{class:"tags"},i("slot",{name:"tags"}))}renderHeaderCtaSlot(){return i("slot",{name:"header-cta"})}renderResourcesSlot(){return i("div",{id:`resources-${this.id}`,class:"resources"},i("slot",{name:"resources",onSlotchange:()=>this.handleResources()}))}renderFooterCtaSlot(){return i("div",{class:"action-container"},i("slot",{name:"footer-cta"}))}render(){return i("article",{key:"3f1180dbc4753548ce11a6827a9c4c0d5080ec71",class:{[this.variant]:true,borderless:!!this.borderless}},this.renderCard())}get hostElement(){return r(this)}};c.style=d;export{c as z_book_card_deprecated};
2
- //# sourceMappingURL=p-3be73d77.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["stylesCss","ZBookCardDeprecatedStyle0","ZBookCardDeprecated","emitRibbonClick","this","ribbonClick","emit","componentWillLoad","id","randomId","mobileMediaQuery","window","matchMedia","Breakpoints","MOBILE","isMobile","matches","onchange","mql","componentDidLoad","handleResources","variant","BookCardDeprecatedVariant","EXPANDED","hasResources","_a","hostElement","querySelectorAll","length","toggleResources","showResources","renderCard","renderMobileExpandedCard","renderExpandedCard","COMPACT","renderCompactCard","SEARCH","renderSearchCard","h","class","renderCover","renderAuthors","renderOperaTitle","renderVolumeTitle","renderIsbn","renderHeaderCtaSlot","renderTagsSlot","renderResourcesSlot","footer","open","close","renderShowResources","renderFooterCtaSlot","ribbon","renderRibbon","src","cover","onError","fallbackCover","content","ribbonIcon","name","width","height","fill","ribbonInteractive","onClick","title","operaTitleTag","operaTitle","innerHTML","volumeTitle","authors","isbn","isbnLabel","toString","onSlotchange","render","key","borderless"],"sources":["src/components/deprecated/z-book-card-deprecated/styles.css?tag=z-book-card-deprecated&encapsulation=shadow","src/components/deprecated/z-book-card-deprecated/index.tsx"],"sourcesContent":["/* COMMON STYLES */\n\n:host {\n --z-book-card-ribbon-background-color: var(--avatar-C08);\n --z-book-card-ribbon-shadow-color: var(--green950);\n --z-book-card-compact-width: 262px;\n --z-book-card-compact-height: 568px;\n}\n\n:host > article {\n display: block;\n width: 100%;\n max-width: 360px;\n box-sizing: border-box;\n border: var(--border-size-medium) solid var(--color-surface03);\n background-color: var(--color-surface01);\n border-radius: var(--border-radius);\n font-family: var(--font-family-sans);\n font-weight: var(--font-rg);\n}\n\n:host > article div.cover {\n position: relative;\n}\n\n:host > article div.cover div.img-wrapper {\n display: flex;\n overflow: hidden;\n border: var(--border-size-small) solid var(--color-surface03);\n line-height: 0;\n}\n\n:host > article div.cover div.img-wrapper img {\n width: auto;\n max-width: 100%;\n height: auto;\n max-height: 100%;\n align-self: flex-end;\n}\n\n:host > article div.cover .ribbon {\n position: absolute;\n z-index: 10;\n top: calc(var(--space-unit) * 2);\n left: calc(var(--space-unit) * -2);\n display: flex;\n max-width: 100%;\n height: calc(var(--space-unit) * 4);\n box-sizing: border-box;\n align-items: center;\n padding: 0 calc(var(--space-unit) * 2);\n border: var(--border-size-medium) solid var(--color-surface01);\n background: var(--z-book-card-ribbon-background-color);\n border-radius: 0 var(--border-radius) var(--border-radius) 0;\n box-shadow: var(--shadow-2);\n color: var(--color-text-inverse);\n font-family: var(--font-family-sans);\n font-size: var(--font-size-2);\n font-weight: var(--font-sb);\n line-height: initial;\n}\n\n:host > article div.cover .ribbon.interactive:hover {\n cursor: pointer;\n}\n\n:host > article div.cover .ribbon.interactive:focus {\n box-shadow: var(--shadow-focus-primary);\n outline: none !important;\n}\n\n:host > article div.cover .ribbon span {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n word-wrap: nowrap;\n}\n\n:host > article div.cover .ribbon::before {\n position: absolute;\n bottom: -12px;\n left: -2px;\n width: 0;\n height: 0;\n border-top: 10px solid var(--z-book-card-ribbon-shadow-color);\n border-left: 16px solid transparent;\n content: \"\";\n}\n\n:host > article div.cover .ribbon z-icon {\n margin-right: var(--space-unit);\n}\n\n:host > article div.content {\n margin: var(--space-unit) 0;\n border-radius: var(--border-radius);\n}\n\n:host > article .title {\n display: flex;\n height: 100%;\n align-self: center;\n color: var(--color-default-text);\n font-size: var(--font-size-4);\n font-weight: var(--font-sb);\n line-height: 1.5;\n}\n\n:host > article .title * {\n all: unset;\n}\n\n:host > article div.subtitle {\n color: var(--color-default-text);\n font-size: var(--font-size-2);\n font-weight: var(--font-rg);\n line-height: 1.4;\n}\n\n:host > article div.authors {\n color: var(--color-default-text);\n font-size: var(--font-size-1);\n font-weight: var(--font-rg);\n line-height: 1.33;\n}\n\n:host > article div.isbn {\n overflow: hidden;\n color: var(--color-default-text);\n font-size: var(--font-size-2);\n line-height: 1.33;\n text-overflow: ellipsis;\n white-space: nowrap;\n word-wrap: nowrap;\n}\n\n:host > article div.isbn > .code {\n font-weight: var(--font-sb);\n}\n\n:host > article div.tags {\n display: flex;\n overflow: hidden;\n max-height: 32px;\n flex-flow: row wrap;\n align-content: stretch;\n align-items: stretch;\n justify-content: flex-start;\n gap: calc(var(--space-unit) / 2);\n}\n\n:host > article ::slotted([slot=\"tags\"]) {\n margin-bottom: var(--space-unit);\n}\n\n:host > article ::slotted([slot=\"header-cta\"]) {\n --z-icon-width: 20px;\n --z-icon-height: 20px;\n\n padding: var(--space-unit);\n cursor: pointer;\n fill: var(--color-primary01-icon);\n}\n\n:host > article ::slotted([slot=\"header-cta\"]:focus) {\n box-shadow: var(--shadow-focus-primary);\n outline: none !important;\n}\n\n/* EXPANDED STYLES */\n\n:host > article.expanded {\n width: 100%;\n min-width: 328px;\n padding: calc(var(--space-unit) * 2);\n padding-bottom: 0;\n}\n\n:host > article.expanded div.header {\n display: flex;\n flex-flow: row nowrap;\n align-content: stretch;\n align-items: top;\n justify-content: space-between;\n margin-bottom: var(--space-unit);\n white-space: nowrap;\n}\n\n:host > article.expanded div.cover div.img-wrapper {\n border-radius: var(--border-radius);\n}\n\n:host > article.expanded div.cover div.img-wrapper img {\n width: 100%;\n}\n\n:host > article.expanded .title,\n:host > article.expanded .subtitle,\n:host > article.expanded .authors {\n display: -webkit-box;\n overflow: hidden;\n -webkit-box-orient: vertical;\n -webkit-line-clamp: 2;\n white-space: initial;\n}\n\n:host > article.expanded div.footer {\n border-top: var(--border-size-small) solid var(--color-surface03);\n margin-bottom: calc(var(--space-unit) * 1.5);\n}\n\n:host > article.expanded div.footer.open {\n padding-top: calc(var(--space-unit) * 1.5);\n}\n\n:host > article.expanded div.footer.open div.resources {\n display: initial;\n}\n\n:host > article.expanded div.footer.close div.resources {\n display: none;\n}\n\n:host > article.expanded button.show-resources {\n --z-icon-height: 16px;\n --z-icon-width: 16px;\n\n all: unset;\n display: flex;\n width: 100%;\n flex-flow: row nowrap;\n align-content: center;\n align-items: center;\n justify-content: center;\n padding: calc(var(--space-unit) * 1) 0;\n color: var(--color-link-primary);\n cursor: pointer;\n fill: var(--color-link-primary);\n font-size: var(--font-size-2);\n font-weight: var(--font-sb);\n gap: var(--space-unit);\n}\n\n:host > article.expanded button.show-resources:focus {\n box-shadow: var(--shadow-focus-primary);\n}\n\n/* SEARCH STYLES */\n\n:host > article.search {\n width: 262px;\n height: 616px;\n padding: calc(var(--space-unit) * 2);\n padding-bottom: 0;\n}\n\n:host > article.search .wrapper-container {\n display: flex;\n height: 100%;\n flex-direction: column;\n justify-content: space-between;\n}\n\n:host > article.search .wrapper-container .wrapper {\n height: 451px;\n}\n\n:host > article.search .wrapper-container .action-container {\n padding-bottom: calc(var(--space-unit) * 2);\n}\n\n:host > article.search div.header {\n display: flex;\n height: 24px;\n flex-flow: row nowrap;\n align-content: stretch;\n align-items: center;\n justify-content: space-between;\n margin-bottom: calc(var(--space-unit) * 1.5);\n white-space: nowrap;\n}\n\n:host > article.search div.cover div.img-wrapper {\n height: 314px;\n border-radius: var(--border-radius);\n}\n\n:host > article.search .title {\n display: block;\n height: initial;\n align-self: unset;\n font-size: var(--font-size-3);\n}\n\n:host > article.search .title,\n:host > article.search .subtitle,\n:host > article.search .authors {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n/* COMPACT STYLES */\n\n:host > article.compact {\n width: var(--z-book-card-compact-width);\n height: var(--z-book-card-compact-height);\n}\n\n:host > article.compact.borderless {\n border: none;\n}\n\n:host > article.compact div.cover div.img-wrapper {\n width: 100%;\n height: calc(var(--z-book-card-compact-width) * 1.36);\n box-sizing: border-box;\n border: none;\n background: var(--color-white);\n border-radius: var(--border-radius) var(--border-radius) 0 0;\n box-shadow: var(--shadow-2);\n}\n\n:host > article.compact div.wrapper {\n display: flex;\n height: 100%;\n flex-flow: column nowrap;\n align-content: stretch;\n align-items: stretch;\n justify-content: flex-start;\n}\n\n:host > article.compact div.content {\n display: flex;\n box-sizing: border-box;\n flex-flow: column nowrap;\n align-content: stretch;\n align-items: stretch;\n justify-content: space-between;\n padding: calc(var(--space-unit) * 2);\n padding-top: var(--space-unit);\n margin: 0;\n}\n\n:host > article.compact div.action-container {\n padding: calc(var(--space-unit) * 2);\n padding-top: 0;\n margin-top: auto;\n}\n\n:host > article.compact.borderless div.cover div.img-wrapper {\n width: var(--z-book-card-compact-width);\n}\n\n:host > article.compact.borderless div.content {\n padding: 0;\n padding-top: var(--space-unit);\n}\n\n:host > article.compact.borderless div.action-container {\n padding: 0;\n padding-bottom: calc(var(--space-unit) * 2);\n}\n\n:host > article.compact .title {\n display: block;\n height: initial;\n align-self: unset;\n}\n\n:host > article.compact .title,\n:host > article.compact .subtitle,\n:host > article.compact .authors {\n display: -webkit-box;\n overflow: hidden;\n -webkit-box-orient: vertical;\n -webkit-line-clamp: 2;\n white-space: initial;\n}\n\n/* Tablet breakpoint */\n@media (min-width: 768px) {\n :host > article {\n width: 100%;\n max-width: initial;\n }\n\n :host > article .title {\n display: block;\n height: initial;\n align-self: unset;\n }\n\n /* EXPANDED STYLES */\n\n :host > article.expanded {\n width: 100%;\n min-width: initial;\n max-width: initial;\n height: 360px;\n padding: 0;\n border: 0;\n }\n\n :host > article.expanded div.wrapper {\n display: flex;\n flex-flow: row nowrap;\n align-content: stretch;\n align-items: stretch;\n justify-content: flex-start;\n }\n\n :host > article.expanded div.cover div.img-wrapper {\n width: 262px;\n height: 356px;\n border: 0;\n border: var(--border-size-medium) solid var(--color-surface03);\n border-right: none;\n background: var(--color-surface01);\n border-radius: var(--border-radius) 0 0 var(--border-radius);\n }\n\n :host > article.expanded div.cover div.img-wrapper img {\n width: auto;\n border-radius: 0;\n }\n\n :host > article.expanded div.content {\n display: flex;\n overflow: hidden;\n width: 100%;\n height: 356px;\n flex-flow: column nowrap;\n align-content: stretch;\n align-items: stretch;\n justify-content: space-between;\n border: var(--border-size-medium) solid var(--color-surface03);\n border-left: none;\n margin: 0;\n background: var(--color-surface01);\n border-radius: 0 var(--border-radius) var(--border-radius) 0;\n }\n\n :host > article.expanded div.content div.top {\n padding: calc(var(--space-unit) * 2);\n padding-bottom: 0;\n }\n\n :host > article.expanded div.content div.top div.info {\n display: flex;\n flex-flow: row nowrap;\n align-content: stretch;\n align-items: stretch;\n justify-content: space-between;\n margin-bottom: calc(var(--space-unit) / 2);\n }\n\n :host > article.expanded div.content div.top div.info > div.left {\n width: 100%;\n }\n\n :host > article.expanded div.content div.bottom {\n padding: calc(var(--space-unit) * 2);\n padding-bottom: 0;\n }\n}\n\n/* Desktop breakpoint */\n\n@media (min-width: 1152px) {\n :host > article {\n width: fit-content;\n max-width: initial;\n }\n}\n\n/* Wide breakpoint */\n@media (min-width: 1366px) {\n :host > article.expanded {\n width: 635px;\n }\n\n :host > article.expanded div.content {\n width: 369px;\n }\n}\n","import {Component, Element, Event, EventEmitter, Prop, State, h} from \"@stencil/core\";\nimport {BookCardDeprecatedVariant} from \"../../../beans\";\nimport {Breakpoints} from \"../../../constants/breakpoints\";\nimport {randomId} from \"../../../utils/utils\";\n\n/**\n * @slot resources - books resources (extended variant only)\n * @slot header-cta - header CTA (e.g. bookmark icon - extended and search variant only)\n * @slot tags - card tags (extended and search variant only)\n * @slot footer-cta - footer cta button (search and compact variant only)\n * @cssprop --z-book-card-ribbon-background-color - ribbon backgrund color\n * @cssprop --z-book-card-ribbon-shadow-color - ribbon shadow color\n * @cssprop --z-book-card-compact-width - compact card custom width\n * @cssprop --z-book-card-compact-height - compact card custom height\n */\n@Component({\n tag: \"z-book-card-deprecated\",\n styleUrl: \"styles.css\",\n shadow: true,\n})\nexport class ZBookCardDeprecated {\n @Element() hostElement: HTMLZBookCardDeprecatedElement;\n\n /**\n * Card variant: expanded, compact, search\n */\n @Prop()\n variant: BookCardDeprecatedVariant;\n\n /**\n * Cover URL\n */\n @Prop()\n cover: string;\n\n /**\n * Card main title\n */\n @Prop()\n operaTitle: string;\n\n /**\n * [optional] Card subtitle\n */\n @Prop()\n volumeTitle?: string;\n\n /**\n * [optional] Authors\n */\n @Prop()\n authors?: string;\n\n /**\n * [optional] Main ISBN\n */\n @Prop()\n isbn?: string;\n\n /**\n * [optional] ISBN label\n */\n @Prop()\n isbnLabel = \"\";\n\n /**\n * [optional] Ribbon label - expanded and search variant only\n */\n @Prop()\n ribbon?: string;\n\n /**\n * [optional] Ribbon icon - expanded and search variant only\n */\n @Prop()\n ribbonIcon?: string;\n\n /**\n * [optional] Ribbon interactive - expanded and search variant only\n */\n @Prop()\n ribbonInteractive?: boolean;\n\n /**\n * [optional] Borderless card - compact variant only\n */\n @Prop()\n borderless?: boolean;\n\n /**\n * [optional] Fallback cover URL\n */\n @Prop()\n fallbackCover?: string;\n\n /**\n * [optional] [accessibility] Card title HTML tag\n */\n @Prop()\n operaTitleTag?: string;\n\n @State()\n isMobile = false;\n\n @State()\n hasResources = false;\n\n @State()\n showResources = false;\n\n /** click on interactive ribbon */\n @Event()\n ribbonClick: EventEmitter;\n\n private emitRibbonClick(): void {\n this.ribbonClick.emit();\n }\n\n private id: string;\n\n componentWillLoad(): void {\n this.id = `id-${randomId()}`;\n\n const mobileMediaQuery = window.matchMedia(`(max-width: ${Breakpoints.MOBILE}px)`);\n this.isMobile = mobileMediaQuery.matches;\n mobileMediaQuery.onchange = (mql) => (this.isMobile = mql.matches);\n }\n\n componentDidLoad(): void {\n this.handleResources();\n }\n\n private handleResources(): void {\n if (this.variant !== BookCardDeprecatedVariant.EXPANDED || !this.isMobile) {\n return;\n }\n this.hasResources = this.hostElement.querySelectorAll(\"[slot=resources]\")?.length > 0;\n }\n\n private toggleResources(): void {\n this.showResources = !this.showResources;\n }\n\n private renderCard(): HTMLDivElement {\n switch (this.variant) {\n case BookCardDeprecatedVariant.EXPANDED:\n return this.isMobile ? this.renderMobileExpandedCard() : this.renderExpandedCard();\n case BookCardDeprecatedVariant.COMPACT:\n return this.renderCompactCard();\n case BookCardDeprecatedVariant.SEARCH:\n return this.renderSearchCard();\n }\n }\n\n private renderExpandedCard(): HTMLDivElement {\n return (\n <div class=\"wrapper\">\n {this.renderCover()}\n <div class=\"content\">\n <div class=\"top\">\n <div class=\"info\">\n <div class=\"left\">\n {this.renderAuthors()}\n {this.renderOperaTitle()}\n {this.renderVolumeTitle()}\n {this.renderIsbn()}\n </div>\n <div class=\"right\">{this.renderHeaderCtaSlot()}</div>\n </div>\n {this.renderTagsSlot()}\n </div>\n <div class=\"bottom\">{this.renderResourcesSlot()}</div>\n </div>\n </div>\n );\n }\n\n private renderMobileExpandedCard(): HTMLDivElement {\n return (\n <div class=\"wrapper\">\n <div class=\"header\">\n {this.renderOperaTitle()}\n {this.renderHeaderCtaSlot()}\n </div>\n {this.renderCover()}\n <div class=\"content\">\n {this.renderTagsSlot()}\n {this.renderAuthors()}\n {this.renderVolumeTitle()}\n {this.renderIsbn()}\n </div>\n {this.hasResources && (\n <div\n class={{\n footer: true,\n open: this.showResources,\n close: !this.showResources,\n }}\n >\n {!this.showResources && this.renderShowResources()}\n {this.renderResourcesSlot()}\n {this.showResources && this.renderShowResources()}\n </div>\n )}\n </div>\n );\n }\n\n private renderSearchCard(): HTMLDivElement {\n return (\n <div class=\"wrapper-container\">\n <div class=\"wrapper\">\n <div class=\"header\">\n {this.renderOperaTitle()}\n {this.renderHeaderCtaSlot()}\n </div>\n {this.renderCover()}\n <div class=\"content\">\n {this.renderTagsSlot()}\n {this.renderAuthors()}\n {this.renderVolumeTitle()}\n {this.renderIsbn()}\n </div>\n </div>\n {this.renderFooterCtaSlot()}\n </div>\n );\n }\n\n private renderCompactCard(): HTMLDivElement {\n return (\n <div class=\"wrapper\">\n {this.renderCover()}\n <div class=\"content\">\n {this.renderAuthors()}\n {this.renderOperaTitle()}\n {this.renderVolumeTitle()}\n {this.renderIsbn()}\n </div>\n {this.renderFooterCtaSlot()}\n </div>\n );\n }\n\n private renderCover(): HTMLDivElement {\n return (\n <div class=\"cover\">\n {this.ribbon && this.variant !== BookCardDeprecatedVariant.COMPACT && this.renderRibbon()}\n <div class=\"img-wrapper\">\n <img\n src={this.cover}\n onError={() => {\n if (this.fallbackCover) {\n this.cover = this.fallbackCover;\n }\n }}\n aria-hidden=\"true\"\n />\n </div>\n </div>\n );\n }\n\n private renderRibbon(): HTMLElement {\n const content = [\n this.ribbonIcon && (\n <z-icon\n name={this.ribbonIcon}\n width={16}\n height={16}\n fill={\"color-inverse-icon\"}\n />\n ),\n <span>{this.ribbon}</span>,\n ];\n\n return this.ribbonInteractive ? (\n <button\n class=\"ribbon interactive\"\n onClick={() => this.emitRibbonClick()}\n >\n {content}\n </button>\n ) : (\n <div class=\"ribbon\">{content}</div>\n );\n }\n\n private renderOperaTitle(): HTMLDivElement {\n const title = this.operaTitleTag\n ? `<${this.operaTitleTag}>${this.operaTitle}</${this.operaTitleTag}>`\n : this.operaTitle;\n\n return (\n <div\n class=\"title\"\n innerHTML={title}\n />\n );\n }\n\n private renderVolumeTitle(): null | HTMLDivElement {\n return this.volumeTitle ? <div class=\"subtitle\">{this.volumeTitle}</div> : null;\n }\n\n private renderAuthors(): null | HTMLDivElement {\n return this.authors ? (\n <div\n class=\"authors\"\n aria-description=\"Autori\"\n >\n {this.authors}\n </div>\n ) : null;\n }\n\n private renderIsbn(): null | HTMLDivElement {\n return this.isbn ? (\n <div class=\"isbn\">\n <span\n class=\"code\"\n aria-description={`ISBN ${this.isbnLabel}`}\n >\n {this.isbn}\n </span>\n {this.isbnLabel ? <span class=\"label\"> {this.isbnLabel}</span> : null}\n </div>\n ) : null;\n }\n\n private renderShowResources(): HTMLButtonElement {\n return (\n <button\n class=\"show-resources\"\n aria-label={`Risorse del libro ${this.operaTitle}`}\n aria-expanded={this.showResources.toString()}\n aria-controls={`resources-${this.id}`}\n onClick={() => this.toggleResources()}\n >\n {this.showResources ? \"Chiudi\" : \"Vedi tutto\"}\n <z-icon name={this.showResources ? \"chevron-up\" : \"chevron-down\"} />\n </button>\n );\n }\n\n private renderTagsSlot(): HTMLDivElement {\n return (\n <div class=\"tags\">\n <slot name=\"tags\" />\n </div>\n );\n }\n\n private renderHeaderCtaSlot(): HTMLSlotElement {\n return <slot name=\"header-cta\" />;\n }\n\n private renderResourcesSlot(): HTMLDivElement {\n return (\n <div\n id={`resources-${this.id}`}\n class=\"resources\"\n >\n <slot\n name=\"resources\"\n onSlotchange={() => this.handleResources()}\n />\n </div>\n );\n }\n\n private renderFooterCtaSlot(): HTMLDivElement {\n return (\n <div class=\"action-container\">\n <slot name=\"footer-cta\" />\n </div>\n );\n }\n\n render(): HTMLZBookCardDeprecatedElement {\n return (\n <article\n class={{\n [this.variant]: true,\n borderless: !!this.borderless,\n }}\n >\n {this.renderCard()}\n </article>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- import{r as e,h as o}from"./p-75c4a726.js";const r=":host{font-family:var(--font-family-sans);font-weight:var(--font-rg)}:host>div>footer{height:128px;box-sizing:border-box;padding:var(--space-unit) calc(var(--space-unit) * 2) 0;border-top:var(--border-size-medium) solid var(--color-surface03);border-radius:0 0 var(--border-radius) var(--border-radius);color:var(--color-surface05);font-size:16px;line-height:24px}:host>div>footer>div.top,:host>div>footer>div.bottom{height:60px}";const d=r;const a=class{constructor(o){e(this,o)}render(){return o("div",{key:"f5b559db97470083ebafed165893ce71b6dee22e"},o("footer",{key:"499f3861a61a391910b04c71e5cd0354b152054d"},o("div",{key:"08959cb6a5cebcd11b8f78f6e3fe25a97e91cbab",class:"top"},o("slot",{key:"b7e57aad37bf866f2f7bde1a35c4ad936535368b",name:"top"})),o("div",{key:"edfe882d9dde659cb4f001e3d43a40dfd578eb38",class:"bottom"},o("slot",{key:"1d083de6b18750a9063d6776bfccc56190d9e0d9",name:"bottom"}))))}};a.style=d;export{a as z_myz_card_footer_sections};
2
- //# sourceMappingURL=p-3f8725c1.entry.js.map
@@ -1,2 +0,0 @@
1
- import{r as t,h as a}from"./p-75c4a726.js";const n='*:focus{box-shadow:var(--shadow-focus-primary);outline:none !important}ul{overflow:hidden;width:auto;height:auto;padding:0;margin:0 calc(var(--space-unit) * 2);color:var(--color-primary01);font-family:var(--font-family-sans);list-style:none}ul>li{padding-left:10px;text-indent:-10px}ul>li>a{display:block;padding-top:calc(var(--space-unit) * 0.5);color:var(--color-primary01);font-size:14px;font-weight:var(--font-sb);letter-spacing:0.16px;line-height:calc(var(--space-unit) * 2.5);text-decoration:none}ul>li>a::before{padding-right:5px;content:"•"}ul>li>span{padding:0 calc(var(--space-unit) * 2);color:var(--color-surface04);font-size:14px;font-weight:var(--font-rg);letter-spacing:0.16px;line-height:calc(var(--space-unit) * 2.5);text-decoration:none}';const e=n;const i=class{constructor(a){t(this,a);this.listdata=undefined;this.renderList=this.renderList.bind(this)}handleSpaceKeyPress(t,a){if(t.keyCode==32||t.keyCode==13){t.preventDefault();window.open(a,"_blank")}}formatListContent(t){const{value:n,isLink:e,url:i}=t;if(!e){return a("span",null,n)}return a("a",{role:"button",onKeyPress:t=>this.handleSpaceKeyPress(t,i),href:i,target:"_blank"},n)}renderList(t){return t.map((t=>a("li",null,this.formatListContent(t))))}render(){return a("ul",{key:"33ab84ece48f2f9a980d82aa0a6905583004f3bb"},this.renderList(JSON.parse(this.listdata)))}};i.style=e;export{i as z_myz_card_list};
2
- //# sourceMappingURL=p-40280990.entry.js.map
@@ -1,2 +0,0 @@
1
- import{r as t,c as i,h as e,a as s,g as o}from"./p-75c4a726.js";import{g as n}from"./p-b34993de.js";import{a}from"./p-10607a39.js";import"./p-5145a606.js";const h=':host,::slotted(*),*{box-sizing:border-box;outline:none}:host{position:relative;display:inline-flex;height:fit-content;flex-direction:column}::slotted(a){text-decoration:none}::slotted(*){color:var(--color-default-text);font-family:var(--font-family-sans);font-weight:var(--font-rg)}.menu-label{position:relative;display:flex;width:100%;align-items:center;padding:0;border:0;border-bottom:var(--border-size-large) solid transparent;margin:0;background:transparent;border-radius:0;color:inherit;text-align:left}button.menu-label{cursor:pointer}.menu-label:focus-visible,div.menu-label:focus-within{box-shadow:var(--shadow-focus-primary)}:host(:is([active],[open])) .menu-label ::slotted(*),.menu-label:focus-visible ::slotted(*),div.menu-label:focus-within ::slotted(*){color:var(--color-primary01);font-weight:var(--font-bd)}:host([vertical-context]) .menu-label{padding:var(--space-unit) 0;border-width:var(--border-size-small);border-color:var(--color-surface03)}:host(:is([active],[open])) .menu-label,.menu-label:hover,.menu-label:focus-visible,div.menu-label:focus-within{border-color:var(--color-secondary01)}:host([vertical-context]:is([active],[open])) .menu-label::after,:host([vertical-context]) .menu-label:hover::after,:host([vertical-context]) .menu-label:focus-visible::after,:host([vertical-context]) div.menu-label:focus-within::after{position:absolute;bottom:0;left:0;width:100%;height:var(--border-size-large);background-color:var(--color-secondary01);content:""}:host([vertical-context]) .menu-label ::slotted(*){padding:0}.menu-label ::slotted(*){display:inline-flex;width:100%;min-width:fit-content;padding-bottom:2px;margin:0;appearance:none;color:var(--z-menu-label-color, var(--color-default-text));font-family:var(--font-family-sans);font-size:var(--font-size-3);font-weight:inherit;line-height:1.5;white-space:nowrap}.menu-label z-icon{margin-left:calc(var(--space-unit) * 1.5);fill:var(--color-default-icon)}::slotted([data-text]:not([slot]))::after{height:0;content:attr(data-text);content:attr(data-text) / "";font-weight:var(--font-bd);letter-spacing:normal;pointer-events:none;user-select:none;visibility:hidden}@media speech{::slotted([data-text]:not([slot]))::after{display:none}}::slotted([data-text]:not([slot])){display:inline-flex;flex-direction:column}.content{background:var(--color-surface01)}:host(:not([open])) .content{display:none}:host([floating]:not([vertical-context])) .content{position:absolute;top:100%;left:0;width:375px;min-width:100%;max-width:100vw;padding:0 calc(var(--space-unit) * 2);box-shadow:var(--shadow-2)}:host(:not([floating])) .content{width:100%}.header{display:flex;align-items:center;padding:var(--space-unit) 0 calc(var(--space-unit) * 2)}.header ::slotted(img[slot="header"]){width:calc(var(--space-unit) * 11.25);height:auto;object-fit:contain}.header ::slotted([slot="header"]:not(:first-child)){margin:auto 0;margin-left:calc(var(--space-unit) * 2.5);font-size:var(--font-size-3);font-weight:var(--font-sb);line-height:1.5}.items{display:flex;flex-direction:column;align-items:flex-start;background:inherit}.items>::slotted([slot="item"]){width:100%;margin:0;font-size:var(--font-size-3);line-height:1.5}.items>::slotted([slot="item"]:focus:focus-visible){box-shadow:var(--shadow-focus-primary)}.items>::slotted([slot="item"]:not(z-menu-section)){padding:var(--space-unit) 0;border-bottom:var(--border-size-small) solid var(--color-surface03)}:host(:not([vertical-context])) .items>::slotted([slot="item"]:last-child){border-bottom:0}.items>::slotted([slot="item"]:hover),.items>::slotted([slot="item"]:focus:focus-visible),.items>::slotted([slot="item"]:active){border-color:var(--color-secondary01);font-weight:var(--font-bd)}';const r=h;const l=t=>(t===null||t===void 0?void 0:t.tagName)==="Z-MENU-SECTION";const c=class{get focusableItem(){return this.items.find((t=>l(t)?t.htmlTabindex===0:t.tabIndex===0))}toggle(){if(!this.hasContent){return}this.open=!this.open}onLabelSlotChange(t){const i=t.target.assignedElements()[0];i.dataset.text=i===null||i===void 0?void 0:i.textContent;this.setLabelA11yAttrs()}reflow(t=false){if(!this.floating){return}if(this.content&&this.hasContent){const{style:t}=this.content;const{left:i}=this.host.getBoundingClientRect();const e=getComputedStyle(this.content).width;const s=e?parseFloat(e.replace("px","")):375;const o=30;t.left=`${Math.min(window.innerWidth-i-s-o,0)}px`}if(t){this.raf=requestAnimationFrame(this.reflow.bind(this,t))}}checkContent(){this.hasHeader=!!this.host.querySelectorAll("[slot=header]").length;this.hasContent=!!this.host.querySelectorAll("[slot=item]").length||this.hasHeader}setItemTabindex(t,i){if(l(t)){t.htmlTabindex=i}else{t.tabIndex=i}}setItemsA11yAttrs(){this.items.forEach(((t,i)=>{const e=i===0?0:-1;this.setItemTabindex(t,e);if(!l(t)){t.setAttribute("role","menuitem")}}))}onItemsChange(){this.checkContent();this.items=Array.from(this.host.children).filter((({slot:t})=>t==="item"));this.setItemsA11yAttrs();this.items.forEach((t=>{if(!l(t)){t.dataset.text=t.textContent}}))}moveFocus(t,i){if(l(t)){t.setFocus()}else{t.tabIndex=0;setTimeout((()=>{t.focus()}),100)}if(!i){return}this.setItemTabindex(i,-1)}onLabelClick(){this.toggle();this.setFocus()}onLabelKeydown(t){if(t.key===n.ENTER||t.key===n.SPACE){t.preventDefault();t.stopPropagation();this.toggle();if(this.open){this.moveFocus(this.items[0])}return}if(!this.verticalContext){return}if(t.key===n.ARROW_RIGHT&&!this.open){t.preventDefault();t.stopPropagation();this.open=true;this.moveFocus(this.items[0])}}async setFocus(){this.htmlTabindex=0;const t=this.hasContent?this.labelButton:this.host.firstElementChild;t.focus()}async focusLastItem(){const t=this.items[this.items.length-1];if(l(t)&&t.open){t.focusLastItem();return}this.moveFocus(t)}onOpenChanged(){if(!this.open){cancelAnimationFrame(this.raf);this.closed.emit();this.items.forEach((t=>{if(l(t)&&t.open){t.open=false}}));return}this.setItemsA11yAttrs();this.opened.emit();if(this.floating){this.reflow(true)}}setLabelA11yAttrs(){if(this.hasContent&&this.labelButton){this.labelButton.tabIndex=this.htmlTabindex;return}const t=this.host.firstElementChild;t.role="menuitem";t.tabIndex=this.htmlTabindex}onItemClick(t){const i=this.items.find((i=>a(i,t.target)));if(i){this.items.forEach((t=>{if(t===i){return}if(l(t)){t.htmlTabindex=-1}else{t.tabIndex=-1}}))}}onKeyDown(t){var i;if(!this.hasContent){return}switch(t.key){case n.ESC:if(!this.open){break}t.stopPropagation();t.preventDefault();this.open=false;this.setFocus();break;case n.ARROW_DOWN:{if(document.activeElement===this.host){if(this.verticalContext&&!this.open){break}t.stopPropagation();t.preventDefault();if(!this.open){this.open=true}this.moveFocus(this.items[0]);break}const i=this.items.indexOf(this.focusableItem);if(this.verticalContext&&i===this.items.length-1){this.setItemTabindex(this.items[i],-1);this.htmlTabindex=0;break}t.stopPropagation();t.preventDefault();const e=this.items[i+1];this.moveFocus(e!==null&&e!==void 0?e:this.items[0],this.focusableItem);break}case n.ARROW_UP:{if(document.activeElement===this.host){if(this.verticalContext){break}t.stopPropagation();t.preventDefault();if(!this.open){this.open=true}this.moveFocus(this.items[this.items.length-1],this.focusableItem);break}t.stopPropagation();t.preventDefault();const e=this.items.indexOf(this.focusableItem);if(e===0&&this.verticalContext){this.setItemTabindex(this.focusableItem,-1);this.setFocus();break}const s=(i=this.items[e-1])!==null&&i!==void 0?i:this.items[this.items.length-1];if(l(s)&&s.open){this.setItemTabindex(this.focusableItem,-1);s.focusLastItem();break}this.moveFocus(s,this.focusableItem);break}case n.ARROW_LEFT:if(!this.open||!this.verticalContext){break}t.preventDefault();t.stopPropagation();this.open=false;this.setFocus()}}constructor(e){t(this,e);this.opened=i(this,"opened",7);this.closed=i(this,"closed",7);this.items=[];this.active=undefined;this.floating=true;this.open=false;this.verticalContext=false;this.htmlTabindex=-1;this.hasHeader=undefined;this.hasContent=undefined;this.toggle=this.toggle.bind(this);this.checkContent=this.checkContent.bind(this);this.onLabelSlotChange=this.onLabelSlotChange.bind(this);this.onLabelClick=this.onLabelClick.bind(this);this.onItemsChange=this.onItemsChange.bind(this);this.onLabelKeydown=this.onLabelKeydown.bind(this)}componentWillLoad(){this.setLabelA11yAttrs();this.onItemsChange()}render(){if(!this.hasContent){return e("div",{class:"menu-label"},e("slot",{onSlotchange:this.onLabelSlotChange}))}return e(s,null,e("button",{ref:t=>this.labelButton=t,class:"menu-label","aria-expanded":`${!!this.open}`,"aria-haspopup":`${this.hasContent}`,"aria-label":this.open?"Chiudi menù":"Apri menù",role:"menuitem",tabIndex:this.htmlTabindex,onClick:this.onLabelClick,onKeyDown:this.onLabelKeydown},e("slot",{onSlotchange:this.onLabelSlotChange}),e("z-icon",{name:this.open?"chevron-up":"chevron-down"})),e("div",{class:"content",ref:t=>this.content=t},this.hasHeader&&e("header",{class:"header"},e("slot",{name:"header",onSlotchange:this.checkContent})),e("div",{class:"items",role:"menu"},e("slot",{name:"item",onSlotchange:this.onItemsChange}))))}get host(){return o(this)}static get watchers(){return{open:["onOpenChanged"],htmlTabindex:["setLabelA11yAttrs"]}}};c.style=r;export{c as z_menu};
2
- //# sourceMappingURL=p-563e86c0.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["stylesCss","ZMenuStyle0","isZMenuSection","el","tagName","ZMenu","focusableItem","this","items","find","item","htmlTabindex","tabIndex","toggle","hasContent","open","onLabelSlotChange","ev","labelElement","target","assignedElements","dataset","text","textContent","setLabelA11yAttrs","reflow","live","floating","content","style","left","host","getBoundingClientRect","widthPx","getComputedStyle","width","parseFloat","replace","safeScrollbarSpace","Math","min","window","innerWidth","raf","requestAnimationFrame","bind","checkContent","hasHeader","querySelectorAll","length","setItemTabindex","setItemsA11yAttrs","forEach","index","tabindex","setAttribute","onItemsChange","Array","from","children","filter","slot","moveFocus","receiver","current","setFocus","setTimeout","focus","onLabelClick","onLabelKeydown","key","KeyboardCode","ENTER","SPACE","preventDefault","stopPropagation","verticalContext","ARROW_RIGHT","label","labelButton","firstElementChild","focusLastItem","lastItem","onOpenChanged","cancelAnimationFrame","closed","emit","opened","slottedLabel","role","onItemClick","clickedItem","containsElement","onKeyDown","ESC","ARROW_DOWN","document","activeElement","currentIndex","indexOf","ARROW_UP","_a","ARROW_LEFT","constructor","hostRef","componentWillLoad","render","h","class","onSlotchange","Host","ref","onClick","name"],"sources":["src/components/z-menu/styles.css?tag=z-menu&encapsulation=shadow","src/components/z-menu/index.tsx"],"sourcesContent":[":host,\n::slotted(*),\n* {\n box-sizing: border-box;\n outline: none;\n}\n\n:host {\n --z-menu-label-color: ;\n\n position: relative;\n display: inline-flex;\n height: fit-content;\n flex-direction: column;\n}\n\n::slotted(a) {\n text-decoration: none;\n}\n\n::slotted(*) {\n color: var(--color-default-text);\n font-family: var(--font-family-sans);\n font-weight: var(--font-rg);\n}\n\n.menu-label {\n position: relative;\n display: flex;\n width: 100%;\n align-items: center;\n padding: 0;\n border: 0;\n border-bottom: var(--border-size-large) solid transparent;\n margin: 0;\n background: transparent;\n border-radius: 0;\n color: inherit;\n text-align: left;\n}\n\nbutton.menu-label {\n cursor: pointer;\n}\n\n.menu-label:focus-visible,\ndiv.menu-label:focus-within {\n box-shadow: var(--shadow-focus-primary);\n}\n\n:host(:is([active], [open])) .menu-label ::slotted(*),\n.menu-label:focus-visible ::slotted(*),\ndiv.menu-label:focus-within ::slotted(*) {\n color: var(--color-primary01);\n font-weight: var(--font-bd);\n}\n\n:host([vertical-context]) .menu-label {\n padding: var(--space-unit) 0;\n border-width: var(--border-size-small);\n border-color: var(--color-surface03);\n}\n\n:host(:is([active], [open])) .menu-label,\n.menu-label:hover,\n.menu-label:focus-visible,\ndiv.menu-label:focus-within {\n border-color: var(--color-secondary01);\n}\n\n:host([vertical-context]:is([active], [open])) .menu-label::after,\n:host([vertical-context]) .menu-label:hover::after,\n:host([vertical-context]) .menu-label:focus-visible::after,\n:host([vertical-context]) div.menu-label:focus-within::after {\n position: absolute;\n bottom: 0;\n left: 0;\n width: 100%;\n height: var(--border-size-large);\n background-color: var(--color-secondary01);\n content: \"\";\n}\n\n:host([vertical-context]) .menu-label ::slotted(*) {\n padding: 0;\n}\n\n.menu-label ::slotted(*) {\n display: inline-flex;\n width: 100%;\n min-width: fit-content;\n padding-bottom: 2px;\n margin: 0;\n appearance: none;\n color: var(--z-menu-label-color, var(--color-default-text));\n font-family: var(--font-family-sans);\n font-size: var(--font-size-3);\n font-weight: inherit;\n line-height: 1.5;\n white-space: nowrap;\n}\n\n.menu-label z-icon {\n margin-left: calc(var(--space-unit) * 1.5);\n fill: var(--color-default-icon);\n}\n\n/* Prevents layout shifts on font-weight changes.\nThe trick is to put an hidden copy of the text already set to bold,\nso the needed space is correctly calculated before any hover/active state changes the\nfont-weight of the real text.\nThe hidden text has an height of 0px so it can expand the width without changing the height\nwhen placed below the real text using `flex-direction: column`. */\n::slotted([data-text]:not([slot]))::after {\n height: 0;\n content: attr(data-text);\n content: attr(data-text) / \"\";\n font-weight: var(--font-bd);\n letter-spacing: normal;\n pointer-events: none;\n user-select: none;\n visibility: hidden;\n}\n\n@media speech {\n ::slotted([data-text]:not([slot]))::after {\n display: none;\n }\n}\n\n::slotted([data-text]:not([slot])) {\n display: inline-flex;\n flex-direction: column;\n}\n\n.content {\n background: var(--color-surface01);\n}\n\n:host(:not([open])) .content {\n display: none;\n}\n\n:host([floating]:not([vertical-context])) .content {\n position: absolute;\n top: 100%;\n left: 0;\n width: 375px;\n min-width: 100%;\n max-width: 100vw;\n padding: 0 calc(var(--space-unit) * 2);\n box-shadow: var(--shadow-2);\n}\n\n:host(:not([floating])) .content {\n width: 100%;\n}\n\n.header {\n display: flex;\n align-items: center;\n padding: var(--space-unit) 0 calc(var(--space-unit) * 2);\n}\n\n.header ::slotted(img[slot=\"header\"]) {\n width: calc(var(--space-unit) * 11.25);\n height: auto;\n object-fit: contain;\n}\n\n.header ::slotted([slot=\"header\"]:not(:first-child)) {\n margin: auto 0;\n margin-left: calc(var(--space-unit) * 2.5);\n font-size: var(--font-size-3);\n font-weight: var(--font-sb);\n line-height: 1.5;\n}\n\n.items {\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n background: inherit;\n}\n\n.items > ::slotted([slot=\"item\"]) {\n width: 100%;\n margin: 0;\n font-size: var(--font-size-3);\n line-height: 1.5;\n}\n\n.items > ::slotted([slot=\"item\"]:focus:focus-visible) {\n box-shadow: var(--shadow-focus-primary);\n}\n\n.items > ::slotted([slot=\"item\"]:not(z-menu-section)) {\n padding: var(--space-unit) 0;\n border-bottom: var(--border-size-small) solid var(--color-surface03);\n}\n\n:host(:not([vertical-context])) .items > ::slotted([slot=\"item\"]:last-child) {\n border-bottom: 0;\n}\n\n.items > ::slotted([slot=\"item\"]:hover),\n.items > ::slotted([slot=\"item\"]:focus:focus-visible),\n.items > ::slotted([slot=\"item\"]:active) {\n border-color: var(--color-secondary01);\n font-weight: var(--font-bd);\n}\n","import {Component, Element, Event, EventEmitter, Host, Listen, Method, Prop, State, Watch, h} from \"@stencil/core\";\nimport {KeyboardCode} from \"../../beans\";\nimport {containsElement} from \"../../utils/utils\";\n\nconst isZMenuSection = (el: HTMLElement | HTMLZMenuSectionElement): el is HTMLZMenuSectionElement =>\n el?.tagName === \"Z-MENU-SECTION\";\n\n/**\n * @slot - Menu label\n * @slot header - Header to display as the first entry of the open menu.\n * @slot item - Single entry of the section. Can be slotted multiple times to insert items onto the menu. Set the `active` HTML attribute on the element to highlight it. Use `z-menu-section` for submenus.\n * @cssprop --z-menu-label-color - Color of the label's text.\n */\n@Component({\n tag: \"z-menu\",\n styleUrl: \"styles.css\",\n shadow: true,\n})\nexport class ZMenu {\n @Element() host: HTMLZMenuElement;\n\n /** Flag to set the active status of the menu. */\n @Prop({reflect: true})\n active?: boolean;\n\n /**\n * Flag to set the display mode of the list.\n * If true, the list will be absolutely positioned under the menu label,\n * stacked beneath it otherwise.\n */\n @Prop({reflect: true})\n floating? = true;\n\n /** The opening state of the menu. */\n @Prop({mutable: true, reflect: true})\n open = false;\n\n /**\n * Tells the component that it's placed in a vertical context with other `ZMenu`s (usually in the ZAppHeader's offcanvas).\n * A small border is placed under it as a separator from other elements.\n */\n @Prop({reflect: true})\n verticalContext = false;\n\n /**\n * Tabindex value to set on the menu label.\n * Useful to manage keyboard navigation focus with roving tabindex handled by this component's parent (usually ZAppHeader).\n */\n @Prop()\n htmlTabindex = -1;\n\n @State()\n hasHeader: boolean;\n\n @State()\n hasContent: boolean;\n\n /** The menu has been opened. */\n @Event()\n opened: EventEmitter;\n\n /** The menu has been closed. */\n @Event()\n closed: EventEmitter;\n\n private labelButton: HTMLButtonElement;\n\n private content: HTMLElement;\n\n private items: (HTMLElement | HTMLZMenuSectionElement)[] = [];\n\n /** Animation frame request id. */\n private raf: number;\n\n private get focusableItem(): HTMLZMenuSectionElement | HTMLElement | null {\n return this.items.find((item) => (isZMenuSection(item) ? item.htmlTabindex === 0 : item.tabIndex === 0));\n }\n\n private toggle(): void {\n if (!this.hasContent) {\n return;\n }\n\n this.open = !this.open;\n }\n\n /**\n * Sets slotted item text as `data-text` attribute value, to let CSS use it through `attr()`.\n * @param ev Slotchange event\n */\n private onLabelSlotChange(ev: Event): void {\n const labelElement = (ev.target as HTMLSlotElement).assignedElements()[0] as HTMLElement;\n labelElement.dataset.text = labelElement?.textContent;\n this.setLabelA11yAttrs();\n }\n\n /**\n * Correctly set position of the floating menu in order to prevent overflow.\n * @param live Should run the method on every refresh frame.\n */\n private reflow(live = false): void {\n if (!this.floating) {\n return;\n }\n\n if (this.content && this.hasContent) {\n const {style} = this.content;\n const {left} = this.host.getBoundingClientRect();\n const widthPx = getComputedStyle(this.content).width;\n const width = widthPx ? parseFloat(widthPx.replace(\"px\", \"\")) : 375;\n const safeScrollbarSpace = 30;\n style.left = `${Math.min(window.innerWidth - left - width - safeScrollbarSpace, 0)}px`;\n }\n if (live) {\n this.raf = requestAnimationFrame(this.reflow.bind(this, live));\n }\n }\n\n /**\n * Check if some content slot is set.\n */\n private checkContent(): void {\n this.hasHeader = !!this.host.querySelectorAll(\"[slot=header]\").length;\n this.hasContent = !!this.host.querySelectorAll(\"[slot=item]\").length || this.hasHeader;\n }\n\n private setItemTabindex(item: HTMLElement | HTMLZMenuSectionElement, tabIndex: number): void {\n if (isZMenuSection(item)) {\n item.htmlTabindex = tabIndex;\n } else {\n item.tabIndex = tabIndex;\n }\n }\n\n /**\n * Set `menuitem` role to all menu items (ZMenuSection items already have it).\n * Set -1 to the tabindex of the items and 0 to the first one.\n */\n private setItemsA11yAttrs(): void {\n this.items.forEach((item, index) => {\n const tabindex = index === 0 ? 0 : -1;\n this.setItemTabindex(item, tabindex);\n if (!isZMenuSection(item)) {\n item.setAttribute(\"role\", \"menuitem\");\n }\n });\n }\n\n private onItemsChange(): void {\n this.checkContent();\n this.items = Array.from(this.host.children).filter(({slot}) => slot === \"item\") as HTMLElement[];\n this.setItemsA11yAttrs();\n this.items.forEach((item) => {\n if (!isZMenuSection(item)) {\n item.dataset.text = item.textContent;\n }\n });\n }\n\n /**\n * Move focus and adjust the tabindex value of `receiver` and `current` elements,\n * setting -1 to the `current` and 0 to the `receiver`, then focus the `receiver` element.\n * If the receiver is a ZMenuSection and it's open, focus its first focusable item.\n */\n private moveFocus(\n receiver: HTMLElement | HTMLZMenuSectionElement,\n current?: HTMLElement | HTMLZMenuSectionElement\n ): void {\n if (isZMenuSection(receiver)) {\n receiver.setFocus();\n } else {\n receiver.tabIndex = 0;\n setTimeout(() => {\n receiver.focus();\n }, 100);\n }\n if (!current) {\n return;\n }\n\n this.setItemTabindex(current, -1);\n }\n\n private onLabelClick(): void {\n this.toggle();\n this.setFocus();\n }\n\n private onLabelKeydown(ev: KeyboardEvent): void {\n if (ev.key === KeyboardCode.ENTER || ev.key === KeyboardCode.SPACE) {\n ev.preventDefault();\n ev.stopPropagation();\n this.toggle();\n if (this.open) {\n this.moveFocus(this.items[0]);\n }\n\n return;\n }\n\n if (!this.verticalContext) {\n return;\n }\n\n if (ev.key === KeyboardCode.ARROW_RIGHT && !this.open) {\n ev.preventDefault();\n ev.stopPropagation();\n this.open = true;\n this.moveFocus(this.items[0]);\n }\n }\n\n /** Set tabindex of the label to 0, then focus it. */\n @Method()\n async setFocus(): Promise<void> {\n this.htmlTabindex = 0;\n const label = this.hasContent ? this.labelButton : (this.host.firstElementChild as HTMLElement);\n label.focus();\n }\n\n /**\n * Focus the last item.\n */\n @Method()\n async focusLastItem(): Promise<void> {\n const lastItem = this.items[this.items.length - 1];\n if (isZMenuSection(lastItem) && lastItem.open) {\n lastItem.focusLastItem();\n\n return;\n }\n\n this.moveFocus(lastItem);\n }\n\n @Watch(\"open\")\n onOpenChanged(): void {\n if (!this.open) {\n cancelAnimationFrame(this.raf);\n this.closed.emit();\n this.items.forEach((item) => {\n if (isZMenuSection(item) && item.open) {\n item.open = false;\n }\n });\n\n return;\n }\n\n this.setItemsA11yAttrs();\n this.opened.emit();\n if (this.floating) {\n this.reflow(true);\n }\n }\n\n @Watch(\"htmlTabindex\")\n setLabelA11yAttrs(): void {\n if (this.hasContent && this.labelButton) {\n this.labelButton.tabIndex = this.htmlTabindex;\n\n return;\n }\n\n const slottedLabel = this.host.firstElementChild as HTMLElement;\n slottedLabel.role = \"menuitem\";\n slottedLabel.tabIndex = this.htmlTabindex;\n }\n\n /**\n * Set tabindex to -1 to all siblings of the clicked item.\n */\n @Listen(\"click\", {target: \"document\"})\n onItemClick(ev: MouseEvent): void {\n const clickedItem = this.items.find((item) => containsElement(item, ev.target as HTMLElement));\n if (clickedItem) {\n this.items.forEach((item) => {\n if (item === clickedItem) {\n return;\n }\n\n if (isZMenuSection(item)) {\n item.htmlTabindex = -1;\n } else {\n item.tabIndex = -1;\n }\n });\n }\n }\n\n @Listen(\"keydown\")\n onKeyDown(ev: KeyboardEvent): void {\n if (!this.hasContent) {\n return;\n }\n\n switch (ev.key) {\n case KeyboardCode.ESC:\n if (!this.open) {\n break;\n }\n ev.stopPropagation();\n ev.preventDefault();\n this.open = false;\n this.setFocus();\n break;\n case KeyboardCode.ARROW_DOWN: {\n if (document.activeElement === this.host) {\n if (this.verticalContext && !this.open) {\n break;\n }\n\n ev.stopPropagation();\n ev.preventDefault();\n if (!this.open) {\n this.open = true;\n }\n this.moveFocus(this.items[0]);\n break;\n }\n\n const currentIndex = this.items.indexOf(this.focusableItem);\n if (this.verticalContext && currentIndex === this.items.length - 1) {\n // navigation is going to leave this menu. restore tabindex to the label and let the parent handle it\n this.setItemTabindex(this.items[currentIndex], -1);\n this.htmlTabindex = 0;\n break;\n }\n\n ev.stopPropagation();\n ev.preventDefault();\n const receiver = this.items[currentIndex + 1];\n // if the last item is already focused, navigate to the first one\n this.moveFocus(receiver ?? this.items[0], this.focusableItem);\n break;\n }\n case KeyboardCode.ARROW_UP: {\n if (document.activeElement === this.host) {\n if (this.verticalContext) {\n break;\n }\n\n ev.stopPropagation();\n ev.preventDefault();\n // open the menu and focus the last item\n if (!this.open) {\n this.open = true;\n }\n this.moveFocus(this.items[this.items.length - 1], this.focusableItem);\n break;\n }\n\n ev.stopPropagation();\n ev.preventDefault();\n const currentIndex = this.items.indexOf(this.focusableItem);\n if (currentIndex === 0 && this.verticalContext) {\n this.setItemTabindex(this.focusableItem, -1);\n this.setFocus();\n break;\n }\n\n const receiver = this.items[currentIndex - 1] ?? this.items[this.items.length - 1];\n // if the receiver is a ZMenuSection and it's open, focus its last item\n if (isZMenuSection(receiver) && receiver.open) {\n this.setItemTabindex(this.focusableItem, -1);\n receiver.focusLastItem();\n break;\n }\n\n this.moveFocus(receiver, this.focusableItem);\n break;\n }\n case KeyboardCode.ARROW_LEFT:\n if (!this.open || !this.verticalContext) {\n break;\n }\n\n // close the menu and focus the label\n ev.preventDefault();\n ev.stopPropagation();\n this.open = false;\n this.setFocus();\n }\n }\n\n constructor() {\n this.toggle = this.toggle.bind(this);\n this.checkContent = this.checkContent.bind(this);\n this.onLabelSlotChange = this.onLabelSlotChange.bind(this);\n this.onLabelClick = this.onLabelClick.bind(this);\n this.onItemsChange = this.onItemsChange.bind(this);\n this.onLabelKeydown = this.onLabelKeydown.bind(this);\n }\n\n componentWillLoad(): void {\n this.setLabelA11yAttrs();\n this.onItemsChange();\n }\n\n render(): HTMLDivElement | HTMLZMenuElement {\n if (!this.hasContent) {\n return (\n <div class=\"menu-label\">\n <slot onSlotchange={this.onLabelSlotChange} />\n </div>\n );\n }\n\n return (\n <Host>\n <button\n ref={(el) => (this.labelButton = el)}\n class=\"menu-label\"\n aria-expanded={`${!!this.open}`}\n aria-haspopup={`${this.hasContent}`}\n aria-label={this.open ? \"Chiudi menù\" : \"Apri menù\"}\n role=\"menuitem\"\n tabIndex={this.htmlTabindex}\n onClick={this.onLabelClick}\n onKeyDown={this.onLabelKeydown}\n >\n <slot onSlotchange={this.onLabelSlotChange} />\n <z-icon name={this.open ? \"chevron-up\" : \"chevron-down\"} />\n </button>\n\n <div\n class=\"content\"\n ref={(el) => (this.content = el)}\n >\n {this.hasHeader && (\n <header class=\"header\">\n <slot\n name=\"header\"\n onSlotchange={this.checkContent}\n />\n </header>\n )}\n\n <div\n class=\"items\"\n role=\"menu\"\n >\n <slot\n name=\"item\"\n onSlotchange={this.onItemsChange}\n />\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- import{r as t,h as e,g as i}from"./p-75c4a726.js";import{p as r}from"./p-b34993de.js";import{i as s,g as o,d as n}from"./p-10607a39.js";import"./p-5145a606.js";const a=':host{display:block;width:inherit;font-family:var(--font-family-sans);font-weight:var(--font-rg)}:host>div{display:flex;width:inherit;flex-direction:column}main{position:relative;overflow:hidden;width:100%}main z-icon.scroll{position:absolute;z-index:10;top:50%;width:auto;margin:0 var(--space-unit);cursor:pointer;fill:var(--color-primary01);transition:0.6s ease}main .scroll.disabled{opacity:0.5;pointer-events:none}main .scroll.right{right:0}#slides{display:flex;flex-wrap:wrap;line-height:0px;overflow-y:hidden;transition:all 300ms}footer{display:grid;width:100%;height:56px;align-items:center;border-top:var(--border-size-medium) solid var(--color-surface02);grid-template:2 / 2;grid-template-areas:"center center" "left right"}footer>div{width:100%;align-items:center}footer .footer-center{grid-area:center}footer .footer-left{grid-area:left}footer .footer-right{grid-area:right}footer .bullet-container{display:flex;min-height:60px;align-items:center;justify-content:center;margin:0 auto}footer .bullet-container .bullet{width:8px;height:8px;margin:var(--space-unit) 2px;background-color:var(--gray200);border-radius:50%;pointer-events:none}footer .bullet-container .bullet.selected{background-color:var(--gray400)}main z-icon:focus,footer .bullet-container .bullet:focus{border-radius:50%;box-shadow:var(--shadow-focus-primary);outline:none !important}@media only screen and (min-width: 768px){footer{height:76px;border-top:var(--border-size-medium) solid var(--color-surface02);grid-template:1 / 1fr 2fr 1fr;grid-template-areas:"left center right"}footer .bullet-container .bullet{width:10px;height:10px;margin:var(--space-unit) 3px}}@media only screen and (min-width: 1025px){main z-icon.scroll{margin:0 10px}footer .bullet-container .bullet{width:16px;height:16px;margin:var(--space-unit) calc(var(--space-unit) * 0.5);cursor:pointer;pointer-events:auto}}';const l=a;function d(t){return Array.isArray(t)&&t.every((t=>typeof t==="string"))}const h=class{constructor(e){t(this,e);this.slideshowid=undefined;this.data=undefined;this.device=undefined;this.currentSlide=0}watchData(){this.parseLinks()}componentWillLoad(){this.parseLinks();this.setDevice();window.addEventListener("resize",this.handleResize.bind(this))}componentDidRender(){this.setStyle()}handleResize(){this.setDevice();this.setStyle()}parseLinks(){var t;switch(typeof this.data){case"string":{const e=(t=s(this.data))!==null&&t!==void 0?t:[];if(!d(e)){throw new Error("Passed data is invalid")}this.links=e;break}default:this.links=this.data;break}}setStyle(){const t=this.el.shadowRoot.querySelector("#slides");if(!t){return}const e=this.el.shadowRoot.querySelectorAll(".slide");const i=this.el.offsetWidth;const r=i*this.links.length;t.style.width=`${r}px`;t.style.transform=`translate(-${i*this.currentSlide}px)`;e.forEach((t=>{const e=t.querySelector("img");e.style.width=`${i}px`}))}setDevice(){this.device=o()}setCurrentSlide(t){this.currentSlide=t}getBulletDimension(){switch(this.device){case r.MOBILE:return 24;case r.TABLET:return 32;default:return 40}}renderSlides(t){return e("div",{id:"slides"},t.map(((t,i)=>e("div",{id:"slide"+i,class:`slide ${this.currentSlide!==i&&"hide"}`},e("img",{src:t})))))}renderScroll(t){let i=false,r=this.currentSlide;if(t==="left"){i=this.currentSlide===0;r--}else if(t==="right"){i=this.currentSlide===this.links.length-1;r++}return e("z-icon",{class:`scroll ${t} ${i&&"disabled"}`,width:this.getBulletDimension(),height:this.getBulletDimension(),name:`chevron-${t}-circle`,onClick:()=>{!i&&this.setCurrentSlide(r)},onKeyUp:t=>!i&&n(t,(()=>{this.setCurrentSlide(r)})),tabindex:0,role:"button"})}renderSlideshowMain(){return e("main",null,this.renderScroll("left"),this.renderSlides(this.links),this.renderScroll("right"))}renderBullet(t){return e("a",{class:`bullet ${this.currentSlide===t&&"selected"}`,onClick:()=>this.setCurrentSlide(t),onKeyUp:e=>n(e,(()=>this.setCurrentSlide(t))),tabindex:0,role:"button"})}renderSlideshowFooter(){return e("footer",null,e("div",{class:"footer-left"},e("slot",{name:"footer-left"})),e("div",{class:"footer-center"},e("div",{class:"bullet-container"},Object.keys(this.links).map((t=>this.renderBullet(parseInt(t)))))),e("div",{class:"footer-right"},e("slot",{name:"footer-right"})))}render(){if(!this.links||!this.links.length){return e("div",null)}return e("div",{id:this.slideshowid},this.renderSlideshowMain(),this.renderSlideshowFooter())}get el(){return i(this)}static get watchers(){return{data:["watchData"]}}};h.style=l;export{h as z_slideshow};
2
- //# sourceMappingURL=p-5b677d6c.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["stylesCss","ZSlideshowStyle0","isStringArray","data","Array","isArray","every","datum","ZSlideshow","watchData","this","parseLinks","componentWillLoad","setDevice","window","addEventListener","handleResize","bind","componentDidRender","setStyle","parsed","_a","convertJson","Error","links","refSlides","el","shadowRoot","querySelector","allImages","querySelectorAll","width","offsetWidth","fullwidth","length","style","transform","currentSlide","forEach","item","img","device","getDevice","setCurrentSlide","index","getBulletDimension","Device","MOBILE","TABLET","renderSlides","items","h","id","map","i","class","src","renderScroll","direction","disabled","nextSlide","height","name","onClick","onKeyUp","e","handleKeyboardSubmit","tabindex","role","renderSlideshowMain","renderBullet","renderSlideshowFooter","Object","keys","parseInt","render","slideshowid"],"sources":["src/snowflakes/myz/z-slideshow/styles.css?tag=z-slideshow&encapsulation=shadow","src/snowflakes/myz/z-slideshow/index.tsx"],"sourcesContent":[":host {\n display: block;\n width: inherit;\n font-family: var(--font-family-sans);\n font-weight: var(--font-rg);\n}\n\n:host > div {\n display: flex;\n width: inherit;\n flex-direction: column;\n}\n\nmain {\n position: relative;\n overflow: hidden;\n width: 100%;\n}\n\nmain z-icon.scroll {\n position: absolute;\n z-index: 10;\n top: 50%;\n width: auto;\n margin: 0 var(--space-unit);\n cursor: pointer;\n fill: var(--color-primary01);\n transition: 0.6s ease;\n}\n\nmain .scroll.disabled {\n opacity: 0.5;\n pointer-events: none;\n}\n\nmain .scroll.right {\n right: 0;\n}\n\n#slides {\n display: flex;\n flex-wrap: wrap;\n line-height: 0px;\n overflow-y: hidden;\n transition: all 300ms;\n}\n\nfooter {\n display: grid;\n width: 100%;\n height: 56px;\n align-items: center;\n border-top: var(--border-size-medium) solid var(--color-surface02);\n grid-template: 2 / 2;\n grid-template-areas: \"center center\" \"left right\";\n}\n\nfooter > div {\n width: 100%;\n align-items: center;\n}\n\nfooter .footer-center {\n grid-area: center;\n}\n\nfooter .footer-left {\n grid-area: left;\n}\n\nfooter .footer-right {\n grid-area: right;\n}\n\nfooter .bullet-container {\n display: flex;\n min-height: 60px;\n align-items: center;\n justify-content: center;\n margin: 0 auto;\n}\n\nfooter .bullet-container .bullet {\n width: 8px;\n height: 8px;\n margin: var(--space-unit) 2px;\n background-color: var(--gray200);\n border-radius: 50%;\n pointer-events: none;\n}\n\nfooter .bullet-container .bullet.selected {\n background-color: var(--gray400);\n}\n\nmain z-icon:focus,\nfooter .bullet-container .bullet:focus {\n border-radius: 50%;\n box-shadow: var(--shadow-focus-primary);\n outline: none !important;\n}\n\n/* Tablet breakpoint */\n\n@media only screen and (min-width: 768px) {\n footer {\n height: 76px;\n border-top: var(--border-size-medium) solid var(--color-surface02);\n grid-template: 1 / 1fr 2fr 1fr;\n grid-template-areas: \"left center right\";\n }\n\n footer .bullet-container .bullet {\n width: 10px;\n height: 10px;\n margin: var(--space-unit) 3px;\n }\n}\n\n/* Desktop breakpoint */\n\n@media only screen and (min-width: 1025px) {\n main z-icon.scroll {\n margin: 0 10px;\n }\n\n footer .bullet-container .bullet {\n width: 16px;\n height: 16px;\n margin: var(--space-unit) calc(var(--space-unit) * 0.5);\n cursor: pointer;\n pointer-events: auto;\n }\n}\n","import {Component, Element, Prop, State, Watch, h} from \"@stencil/core\";\nimport {Device} from \"../../../beans\";\nimport {convertJson, getDevice, handleKeyboardSubmit} from \"../../../utils/utils\";\n\n/**\n * Check if data is an array of strings.\n * @param {unknown} data Data to check\n * @returns {boolean}\n */\nfunction isStringArray(data: unknown): data is string[] {\n return Array.isArray(data) && data.every((datum: unknown): datum is string => typeof datum === \"string\");\n}\n\n/**\n * @slot footer-right - right content slot in footer\n * @slot footer-left - left content slot in footer\n */\n@Component({\n tag: \"z-slideshow\",\n styleUrl: \"styles.css\",\n shadow: true,\n})\nexport class ZSlideshow {\n @Element() el: HTMLZSlideshowElement;\n\n /** slideshow id */\n @Prop()\n slideshowid: string;\n\n /** array or JSON stringified images urls */\n @Prop()\n data: string[] | string;\n\n @State()\n device: Device;\n\n @State()\n currentSlide = 0;\n\n private links: string[];\n\n @Watch(\"data\")\n watchData(): void {\n this.parseLinks();\n }\n\n componentWillLoad(): void {\n this.parseLinks();\n\n this.setDevice();\n window.addEventListener(\"resize\", this.handleResize.bind(this));\n }\n\n componentDidRender(): void {\n this.setStyle();\n }\n\n private handleResize(): void {\n this.setDevice();\n this.setStyle();\n }\n\n private parseLinks(): void {\n switch (typeof this.data) {\n case \"string\": {\n const parsed = convertJson(this.data) ?? [];\n if (!isStringArray(parsed)) {\n throw new Error(\"Passed data is invalid\");\n }\n\n this.links = parsed;\n break;\n }\n default:\n this.links = this.data;\n break;\n }\n }\n\n private setStyle(): void {\n const refSlides = this.el.shadowRoot.querySelector(\"#slides\") as HTMLElement;\n if (!refSlides) {\n return;\n }\n\n const allImages = this.el.shadowRoot.querySelectorAll(\".slide\");\n const width = this.el.offsetWidth;\n const fullwidth = width * this.links.length;\n\n refSlides.style.width = `${fullwidth}px`;\n refSlides.style.transform = `translate(-${width * this.currentSlide}px)`;\n allImages.forEach((item: HTMLElement) => {\n const img = item.querySelector(\"img\");\n img.style.width = `${width}px`;\n });\n }\n\n private setDevice(): void {\n this.device = getDevice();\n }\n\n private setCurrentSlide(index: number): void {\n this.currentSlide = index;\n }\n\n private getBulletDimension(): number {\n switch (this.device) {\n case Device.MOBILE:\n return 24;\n case Device.TABLET:\n return 32;\n default:\n return 40;\n }\n }\n\n private renderSlides(items: string[]): HTMLElement {\n return (\n <div id=\"slides\">\n {items.map((item: string, i: number) => (\n <div\n id={\"slide\" + i}\n class={`slide ${this.currentSlide !== i && \"hide\"}`}\n >\n <img src={item} />\n </div>\n ))}\n </div>\n );\n }\n\n private renderScroll(direction: \"left\" | \"right\"): HTMLZIconElement {\n let disabled = false,\n nextSlide = this.currentSlide;\n\n if (direction === \"left\") {\n disabled = this.currentSlide === 0;\n nextSlide--;\n } else if (direction === \"right\") {\n disabled = this.currentSlide === this.links.length - 1;\n nextSlide++;\n }\n\n return (\n <z-icon\n class={`scroll ${direction} ${disabled && \"disabled\"}`}\n width={this.getBulletDimension()}\n height={this.getBulletDimension()}\n name={`chevron-${direction}-circle`}\n onClick={() => {\n !disabled && this.setCurrentSlide(nextSlide);\n }}\n onKeyUp={(e: KeyboardEvent) =>\n !disabled &&\n handleKeyboardSubmit(e, () => {\n this.setCurrentSlide(nextSlide);\n })\n }\n tabindex={0}\n role=\"button\"\n />\n );\n }\n\n private renderSlideshowMain(): HTMLElement {\n return (\n <main>\n {this.renderScroll(\"left\")}\n {this.renderSlides(this.links)}\n {this.renderScroll(\"right\")}\n </main>\n );\n }\n\n private renderBullet(i: number): HTMLElement {\n return (\n <a\n class={`bullet ${this.currentSlide === i && \"selected\"}`}\n onClick={() => this.setCurrentSlide(i)}\n onKeyUp={(e: KeyboardEvent) => handleKeyboardSubmit(e, () => this.setCurrentSlide(i))}\n tabindex={0}\n role=\"button\"\n ></a>\n );\n }\n\n private renderSlideshowFooter(): HTMLElement {\n return (\n <footer>\n <div class=\"footer-left\">\n <slot name=\"footer-left\" />\n </div>\n <div class=\"footer-center\">\n <div class=\"bullet-container\">{Object.keys(this.links).map((i) => this.renderBullet(parseInt(i)))}</div>\n </div>\n <div class=\"footer-right\">\n <slot name=\"footer-right\" />\n </div>\n </footer>\n );\n }\n\n render(): HTMLElement {\n if (!this.links || !this.links.length) {\n return <div />;\n }\n\n return (\n <div id={this.slideshowid}>\n {this.renderSlideshowMain()}\n {this.renderSlideshowFooter()}\n </div>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- import{r as t,h as e,a as s}from"./p-75c4a726.js";import{A as i}from"./p-b34993de.js";const a=":host{display:inline-flex;overflow:hidden;align-items:center;justify-content:center;background-color:var(--gray700);border-radius:50%;font-family:var(--font-family-sans);text-transform:uppercase}:host(.small),:host(.small)>img{width:calc(var(--space-unit) * 3);height:calc(var(--space-unit) * 3)}:host(.medium),:host(.medium)>img{width:calc(var(--space-unit) * 4);height:calc(var(--space-unit) * 4)}:host(.large),:host(.large)>img{width:calc(var(--space-unit) * 5);height:calc(var(--space-unit) * 5)}:host>img{object-fit:cover}";const r=a;const o=class{constructor(e){t(this,e);var s,a;this.size=i.MEDIUM;this.text=undefined;this.textColor="color-white";this.backgroundColor="gray700";this.image=undefined;if(((s=this.text)===null||s===void 0?void 0:s.length)===0&&((a=this.image)===null||a===void 0?void 0:a.length)===0){console.warn("z-avatar must contain at least one prop between text and image")}}getTextSize(){if(this.size===i.SMALL){return"5"}else if(this.size===i.MEDIUM){return"4"}else if(this.size===i.LARGE){return"2"}}render(){return e(s,{key:"8e88834e461e837323d45fa67043d8c34426cd83",class:{[this.size]:true,[`body-${this.getTextSize()}-sb`]:true},style:{color:`var(--${this.textColor})`,backgroundColor:`var(--${this.backgroundColor})`}},this.text&&!this.image&&e("span",{key:"72e6843ab2f556bf7df177581155f447dae5d8db"},this.text.substring(0,2)),this.image&&e("img",{key:"7f8db000d814873364f4df585e1f6813e4373747",src:this.image,onError:()=>this.image=""}))}};o.style=r;export{o as z_avatar};
2
- //# sourceMappingURL=p-5ccbdfbe.entry.js.map
@@ -1,2 +0,0 @@
1
- import{r as t,c as i,h as e,a as s,g as n}from"./p-75c4a726.js";import{v as a,p as r,D as o}from"./p-b34993de.js";import{g as l}from"./p-10607a39.js";import"./p-5145a606.js";const c=':host{color:var(--color-default-text);font-family:var(--font-family-sans);font-weight:var(--font-rg)}:host>.container{display:flex;flex-direction:column}:host .modal-wrapper{display:flex;align-items:center;justify-content:center;padding:calc(var(--space-unit) * 2)}:host .modal-wrapper>.files-wrapper{display:flex;flex-direction:column;margin:calc(var(--space-unit) * 4);gap:var(--space-unit)}:host .text-container{display:flex;flex-direction:column;margin:auto}:host .text-container .body-1{text-align:center}:host .text-container .upload-link{color:var(--color-link-primary);cursor:pointer}:host .text-container .upload-link:focus-visible{box-shadow:var(--shadow-focus-primary);outline:none !important}:host .text-container .upload-link-text{margin-bottom:var(--space-unit)}input#file-elem{display:none}#title{display:inline-block;margin:calc(var(--space-unit) * 2.5) 0 calc(var(--space-unit) * 4);font-size:calc(var(--space-unit) * 3);font-weight:var(--font-sb)}:host>.container>z-button{display:inline-block;margin-top:calc(var(--space-unit) * 3)}:host>.container>.files-container.hidden{display:none}:host>.container>.files-container>.heading-4-sb{display:inline-block;margin:calc(var(--space-unit) * 3) 0;font-size:calc(var(--space-unit) * 2);font-weight:var(--font-sb)}:host([type="dragdrop"])>.container>.files-container>.heading-4-sb{margin-top:0;margin-bottom:calc(var(--space-unit) * 3)}:host>.container>.files-container>.files-wrapper{display:flex;flex-wrap:wrap;column-gap:calc(var(--space-unit) * 2);row-gap:calc(var(--space-unit) * 2)}:host>.container>.files-container>z-divider{margin-top:calc(var(--space-unit) * 3);margin-bottom:0}:host([type="dragdrop"])>.container>.files-container>z-divider{margin:calc(var(--space-unit) * 3) 0}:host .error-message{font-size:14px;font-weight:400;letter-spacing:0.16%;line-height:20px;text-align:left}:host .error-message>.file-name{font-weight:600}@media only screen and (min-width: 768px){:host>.container>z-button{align-self:flex-start}:host .modal-wrapper{padding:calc(var(--space-unit) * 3)}}@media only screen and (min-width: 1152px){:host .modal-wrapper{padding:calc(var(--space-unit) * 4)}}';const d=c;const h=class{constructor(e){t(this,e);this.fileInput=i(this,"fileInput",7);this.inputAttributes={type:"file",id:"file-elem",multiple:true};this.type=a.DEFAULT;this.buttonVariant=undefined;this.acceptedFormat=undefined;this.fileMaxSize=undefined;this.mainTitle=undefined;this.description=undefined;this.files=[];this.uploadBtnLabel="allega";this.dragAndDropLabel="Rilascia i file in questa area per allegarli.";this.allowedFilesMessage=undefined;this.uploadClickableMessage="Carica";this.uploadMessage="o trascina dal tuo computer";this.errorModalTitle="Errore di caricamento";this.errorModalMessage=undefined;this.uploadedFilesLabel="File appena caricati";this.hasFileSection=true;this.invalidFiles=undefined}removeFileListener(t){this.removeFileHandler(t.detail)}fileDroppedListener(t){this.input.files=t.detail;this.fileInputHandler()}componentDidUpdate(){this.handleAccessibility();this.invalidFiles.size&&this.errorModal.focus()}componentWillLoad(){this.invalidFiles=new Map}fileInputHandler(){if(this.input.files.length){this.invalidFiles=this.checkFiles(Array.from(this.input.files))}}async getFiles(){return this.files}async removeFile(t){this.removeFileHandler(t)}removeFileHandler(t){const i=this.files;const e=i.find((i=>i.name===t));if(e){const t=i.indexOf(e);if(t>=0){i.splice(t,1);this.files=[...i]}}}getType(){if(l()!==r.DESKTOP&&l()!==r.DESKTOP_WIDE){return a.DEFAULT}return this.type}handleAccessibility(){const t=this.el.querySelector("z-file:last-child z-chip button");if(this.files.length>0&&t){t.focus()}else{this.getType()===a.DEFAULT?this.button.querySelector("button").focus():this.uploadLink.focus()}}checkFiles(t){const i=new Map;const e=`supera il limite di ${this.fileMaxSize}MB`;const s=" ha un formato non supportato";t.forEach((t=>{const n=t.size/1024/1024;const a=this.acceptedFormat.split(",").some((i=>t.name.toLowerCase().endsWith(i.trim())));const r=n<=this.fileMaxSize;if(r&&a){if(!this.files.find((i=>i.name===t.name))){this.files.push(t);this.fileInput.emit(t);this.input.value=""}return}i.set(t.name,[]);if(!r){i.get(t.name).push(e)}if(!a){i.get(t.name).push(s)}}));return i}renderTitle(){return e("span",{id:"title"},this.mainTitle)}renderDescription(t){return e("span",{class:t},this.description)}renderAllowedFileExtensions(){let t="";let i="";if(this.acceptedFormat){const i=this.acceptedFormat.split(", ").map((t=>t.substring(1).toUpperCase())).join(", ");t=` nei formati ${i}`}if(this.fileMaxSize){i=` per un massimo di ${this.fileMaxSize}MB di peso`}const s=`Puoi allegare file${t}${i}.`;return e("span",{class:"body-3"},this.allowedFilesMessage?this.allowedFilesMessage:t||i?s:null)}renderFileSection(){if(!this.hasFileSection){return}return e("section",{class:`files-container ${!this.files.length?"hidden":""}`},e("span",{class:"heading-4-sb"},this.uploadedFilesLabel),e("div",{class:"files-wrapper"},e("slot",{name:"files"})),e("z-divider",{size:o.MEDIUM}))}renderInput(){return e("input",Object.assign({},this.inputAttributes,{onChange:()=>this.fileInputHandler(),accept:this.acceptedFormat,ref:t=>this.input=t}))}renderUploadButton(){return[this.renderInput(),e("z-button",{onClick:()=>this.input.click(),onKeyPress:t=>{if(t.code=="Space"||t.code=="Enter"){t.preventDefault();this.input.click()}},id:"fileSelect",variant:this.buttonVariant,icon:"upload",ref:t=>this.button=t},this.uploadBtnLabel)]}renderUploadLink(){return[this.renderInput(),e("span",{class:"body-1 upload-link-text"},e("span",{tabIndex:0,class:"body-1-sb upload-link",onClick:()=>this.input.click(),onKeyPress:t=>{if(t.code=="Space"||t.code=="Enter"){t.preventDefault();this.input.click()}},ref:t=>this.uploadLink=t},this.uploadClickableMessage)," ",this.uploadMessage)]}renderDefaultMode(){return[this.renderDescription("body-3-sb"),this.renderAllowedFileExtensions(),this.renderFileSection(),this.renderUploadButton()]}renderDragDropMode(){return[this.renderFileSection(),e("z-dragdrop-area",{"drag-and-drop-label":this.dragAndDropLabel},e("div",{class:"text-container"},this.renderDescription("body-1"),this.renderUploadLink(),this.renderAllowedFileExtensions()))]}formatErrorString(t,i){var s,n;const a=i[0]&&i[1]?" e ":"";return e("span",{class:"error-message"},"Il file ",e("span",{class:"file-name"},t)," ",(s=i[1])!==null&&s!==void 0?s:"",a,(n=i[0])!==null&&n!==void 0?n:"",".")}handleErrorModalContent(){return e("div",{slot:"modalContent"},e("div",{class:"modal-wrapper"},e("div",{class:"files"},this.errorModalMessage?e("span",{class:"body-3"},this.errorModalMessage):Array.from(this.invalidFiles).map((([t,i])=>e("span",{class:"body-3"},this.formatErrorString(t,i)))))))}render(){return e(s,{key:"516d51d19835f55e0a5696d3f3b847f2f253e915"},e("div",{key:"41a4196b48636cf761673ce0672bd3c5246ba8f8",class:`container ${this.getType()}`},this.mainTitle&&this.renderTitle(),this.getType()==a.DEFAULT?this.renderDefaultMode():this.renderDragDropMode()),!!this.invalidFiles.size&&e("z-modal",{key:"8c790bf5dd9b70557b4479bae9ef3a949d9bb4c3",modalid:`file-upload-${this.type}-error-modal`,tabIndex:0,ref:t=>this.errorModal=t,modaltitle:this.errorModalTitle,onModalClose:()=>this.invalidFiles=new Map,onModalBackgroundClick:()=>this.invalidFiles=new Map},this.handleErrorModalContent()))}get el(){return n(this)}};h.style=d;export{h as z_file_upload};
2
- //# sourceMappingURL=p-63806f4f.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["stylesCss","ZFileUploadStyle0","ZFileUpload","this","inputAttributes","type","id","multiple","ZFileUploadType","DEFAULT","removeFileListener","e","removeFileHandler","detail","fileDroppedListener","input","files","fileInputHandler","componentDidUpdate","handleAccessibility","invalidFiles","size","errorModal","focus","componentWillLoad","Map","length","checkFiles","Array","from","getFiles","removeFile","fileName","file","find","name","index","indexOf","splice","getType","getDevice","Device","DESKTOP","DESKTOP_WIDE","lastFile","el","querySelector","button","uploadLink","errors","sizeErrorString","fileMaxSize","formatErrorString","forEach","fileSize","fileFormatOk","acceptedFormat","split","some","ext","toLowerCase","endsWith","trim","fileSizeOk","f","push","fileInput","emit","value","set","get","renderTitle","h","mainTitle","renderDescription","cssClass","class","description","renderAllowedFileExtensions","fileFormatString","fileWeightString","fileFormat","map","string","substring","toUpperCase","join","finalString","allowedFilesMessage","renderFileSection","hasFileSection","uploadedFilesLabel","DividerSize","MEDIUM","renderInput","Object","assign","onChange","accept","ref","val","renderUploadButton","onClick","click","onKeyPress","code","preventDefault","variant","buttonVariant","icon","uploadBtnLabel","renderUploadLink","tabIndex","uploadClickableMessage","uploadMessage","renderDefaultMode","renderDragDropMode","dragAndDropLabel","key","bothErrors","_a","_b","handleErrorModalContent","slot","errorModalMessage","render","Host","modalid","modaltitle","errorModalTitle","onModalClose","onModalBackgroundClick"],"sources":["src/components/file-upload/z-file-upload/styles.css?tag=z-file-upload&encapsulation=shadow","src/components/file-upload/z-file-upload/index.tsx"],"sourcesContent":[":host {\n color: var(--color-default-text);\n font-family: var(--font-family-sans);\n font-weight: var(--font-rg);\n}\n\n:host > .container {\n display: flex;\n flex-direction: column;\n}\n\n:host .modal-wrapper {\n display: flex;\n align-items: center;\n justify-content: center;\n padding: calc(var(--space-unit) * 2);\n}\n\n:host .modal-wrapper > .files-wrapper {\n display: flex;\n flex-direction: column;\n margin: calc(var(--space-unit) * 4);\n gap: var(--space-unit);\n}\n\n:host .text-container {\n display: flex;\n flex-direction: column;\n margin: auto;\n}\n\n:host .text-container .body-1 {\n text-align: center;\n}\n\n:host .text-container .upload-link {\n color: var(--color-link-primary);\n cursor: pointer;\n}\n\n:host .text-container .upload-link:focus-visible {\n box-shadow: var(--shadow-focus-primary);\n outline: none !important;\n}\n\n:host .text-container .upload-link-text {\n margin-bottom: var(--space-unit);\n}\n\ninput#file-elem {\n display: none;\n}\n\n#title {\n display: inline-block;\n margin: calc(var(--space-unit) * 2.5) 0 calc(var(--space-unit) * 4);\n font-size: calc(var(--space-unit) * 3);\n font-weight: var(--font-sb);\n}\n\n:host > .container > z-button {\n display: inline-block;\n margin-top: calc(var(--space-unit) * 3);\n}\n\n:host > .container > .files-container.hidden {\n display: none;\n}\n\n:host > .container > .files-container > .heading-4-sb {\n display: inline-block;\n margin: calc(var(--space-unit) * 3) 0;\n font-size: calc(var(--space-unit) * 2);\n font-weight: var(--font-sb);\n}\n\n:host([type=\"dragdrop\"]) > .container > .files-container > .heading-4-sb {\n margin-top: 0;\n margin-bottom: calc(var(--space-unit) * 3);\n}\n\n:host > .container > .files-container > .files-wrapper {\n display: flex;\n flex-wrap: wrap;\n column-gap: calc(var(--space-unit) * 2);\n row-gap: calc(var(--space-unit) * 2);\n}\n\n:host > .container > .files-container > z-divider {\n margin-top: calc(var(--space-unit) * 3);\n margin-bottom: 0;\n}\n\n:host([type=\"dragdrop\"]) > .container > .files-container > z-divider {\n margin: calc(var(--space-unit) * 3) 0;\n}\n\n:host .error-message {\n font-size: 14px;\n font-weight: 400;\n letter-spacing: 0.16%;\n line-height: 20px;\n text-align: left;\n}\n\n:host .error-message > .file-name {\n font-weight: 600;\n}\n\n/* Tablet breakpoint */\n@media only screen and (min-width: 768px) {\n :host > .container > z-button {\n align-self: flex-start;\n }\n\n :host .modal-wrapper {\n padding: calc(var(--space-unit) * 3);\n }\n}\n\n@media only screen and (min-width: 1152px) {\n :host .modal-wrapper {\n padding: calc(var(--space-unit) * 4);\n }\n}\n","import {Component, Element, Event, EventEmitter, Host, Listen, Method, Prop, State, h} from \"@stencil/core\";\nimport {ButtonVariant, Device, DividerSize, ZFileUploadType} from \"../../../beans\";\nimport {getDevice} from \"../../../utils/utils\";\n\n@Component({\n tag: \"z-file-upload\",\n styleUrl: \"styles.css\",\n shadow: true,\n})\nexport class ZFileUpload {\n /** Prop indicating the file upload type - can be default or dragdrop */\n @Prop({reflect: true})\n type: ZFileUploadType = ZFileUploadType.DEFAULT;\n\n /** Prop indicating the button variant*/\n @Prop()\n buttonVariant?: ButtonVariant;\n\n /** Prop indicating the accepted file type: ex \".pdf, .doc, .jpg\" */\n @Prop()\n acceptedFormat?: string;\n\n /** Max file dimension in Megabyte */\n @Prop()\n fileMaxSize?: number;\n\n /** Title */\n @Prop()\n mainTitle?: string;\n\n /** Description */\n @Prop()\n description?: string;\n\n /** Files added by the user */\n @State()\n files: File[] = [];\n\n /** upoload button label */\n @Prop()\n uploadBtnLabel?: string = \"allega\";\n\n /** drag & drop button label */\n @Prop()\n dragAndDropLabel?: string = \"Rilascia i file in questa area per allegarli.\";\n\n /** allowed file message */\n @Prop()\n allowedFilesMessage?: string;\n\n /** upload clickable message */\n @Prop()\n uploadClickableMessage?: string = \"Carica\";\n\n /** upload message */\n @Prop()\n uploadMessage?: string = \"o trascina dal tuo computer\";\n\n /** error modal title */\n @Prop()\n errorModalTitle?: string = \"Errore di caricamento\";\n\n /** error modal message */\n @Prop()\n errorModalMessage?: string;\n\n /** loaded files label */\n @Prop()\n uploadedFilesLabel?: string = \"File appena caricati\";\n\n /** uploaded files history rendering */\n @Prop()\n hasFileSection?: boolean = true;\n\n /** List of files not allowed to be uploaded */\n @State()\n invalidFiles: Map<string, string[]>;\n\n @Element() el: HTMLZFileUploadElement;\n\n private input: HTMLInputElement;\n\n private button: HTMLZButtonElement;\n\n private errorModal: HTMLZModalElement;\n\n private uploadLink: HTMLSpanElement;\n\n private inputAttributes = {\n type: \"file\",\n id: \"file-elem\",\n multiple: true,\n };\n\n /** Listen removeFile event sent from z-file component */\n @Listen(\"removeFile\")\n removeFileListener(e: CustomEvent): void {\n this.removeFileHandler(e.detail);\n }\n\n /** Listen fileDropped event sent from z-dragdrop-area component */\n @Listen(\"fileDropped\")\n fileDroppedListener(e: CustomEvent): void {\n this.input.files = e.detail;\n this.fileInputHandler();\n }\n\n componentDidUpdate(): void {\n this.handleAccessibility();\n this.invalidFiles.size && this.errorModal.focus();\n }\n\n componentWillLoad(): void {\n this.invalidFiles = new Map<string, string[]>();\n }\n\n /** Emitted when user select one or more files */\n @Event()\n fileInput: EventEmitter;\n\n private fileInputHandler(): void {\n if (this.input.files.length) {\n this.invalidFiles = this.checkFiles(Array.from(this.input.files));\n }\n }\n\n /** get array of uploaded files */\n @Method()\n async getFiles(): Promise<File[]> {\n return this.files;\n }\n\n /** remove file from the array */\n @Method()\n async removeFile(fileName: string): Promise<void> {\n this.removeFileHandler(fileName);\n }\n\n private removeFileHandler(fileName: string): void {\n const files = this.files;\n const file = files.find((file) => file.name === fileName);\n if (file) {\n const index = files.indexOf(file);\n if (index >= 0) {\n files.splice(index, 1);\n this.files = [...files];\n }\n }\n }\n\n private getType(): ZFileUploadType {\n if (getDevice() !== Device.DESKTOP && getDevice() !== Device.DESKTOP_WIDE) {\n return ZFileUploadType.DEFAULT;\n }\n\n return this.type;\n }\n\n private handleAccessibility(): void {\n const lastFile = this.el.querySelector(\"z-file:last-child z-chip button\");\n if (this.files.length > 0 && lastFile) {\n (lastFile as HTMLElement).focus();\n } else {\n this.getType() === ZFileUploadType.DEFAULT\n ? this.button.querySelector(\"button\").focus()\n : this.uploadLink.focus();\n }\n }\n\n private checkFiles(files: File[]): Map<string, string[]> {\n const errors = new Map<string, string[]>();\n const sizeErrorString = `supera il limite di ${this.fileMaxSize}MB`;\n const formatErrorString = \" ha un formato non supportato\";\n files.forEach((file: File) => {\n const fileSize = file.size / 1024 / 1024;\n const fileFormatOk = this.acceptedFormat\n .split(\",\")\n .some((ext: string) => file.name.toLowerCase().endsWith(ext.trim()));\n const fileSizeOk = fileSize <= this.fileMaxSize;\n if (fileSizeOk && fileFormatOk) {\n if (!this.files.find((f) => f.name === file.name)) {\n this.files.push(file);\n this.fileInput.emit(file);\n this.input.value = \"\";\n }\n\n return;\n }\n errors.set(file.name, []);\n if (!fileSizeOk) {\n errors.get(file.name).push(sizeErrorString);\n }\n if (!fileFormatOk) {\n errors.get(file.name).push(formatErrorString);\n }\n });\n\n return errors;\n }\n\n private renderTitle(): HTMLElement {\n return <span id=\"title\">{this.mainTitle}</span>;\n }\n\n private renderDescription(cssClass): HTMLElement {\n return <span class={cssClass}>{this.description}</span>;\n }\n\n private renderAllowedFileExtensions(): HTMLElement {\n let fileFormatString = \"\";\n let fileWeightString = \"\";\n\n if (this.acceptedFormat) {\n const fileFormat = this.acceptedFormat\n .split(\", \")\n .map((string) => string.substring(1).toUpperCase())\n .join(\", \");\n fileFormatString = ` nei formati ${fileFormat}`;\n }\n\n if (this.fileMaxSize) {\n fileWeightString = ` per un massimo di ${this.fileMaxSize}MB di peso`;\n }\n\n const finalString = `Puoi allegare file${fileFormatString}${fileWeightString}.`;\n\n return (\n <span class=\"body-3\">\n {this.allowedFilesMessage\n ? this.allowedFilesMessage\n : fileFormatString || fileWeightString\n ? finalString\n : null}\n </span>\n );\n }\n\n private renderFileSection(): HTMLElement {\n if (!this.hasFileSection) {\n return;\n }\n\n return (\n <section class={`files-container ${!this.files.length ? \"hidden\" : \"\"}`}>\n <span class=\"heading-4-sb\">{this.uploadedFilesLabel}</span>\n <div class=\"files-wrapper\">\n <slot name=\"files\" />\n </div>\n <z-divider size={DividerSize.MEDIUM} />\n </section>\n );\n }\n\n private renderInput(): HTMLInputElement {\n return (\n <input\n {...this.inputAttributes}\n onChange={() => this.fileInputHandler()}\n accept={this.acceptedFormat}\n ref={(val) => (this.input = val)}\n />\n );\n }\n\n private renderUploadButton(): unknown[] {\n return [\n this.renderInput(),\n <z-button\n onClick={() => this.input.click()}\n onKeyPress={(e) => {\n if (e.code == \"Space\" || e.code == \"Enter\") {\n e.preventDefault();\n this.input.click();\n }\n }}\n id=\"fileSelect\"\n variant={this.buttonVariant}\n icon=\"upload\"\n ref={(val) => (this.button = val)}\n >\n {this.uploadBtnLabel}\n </z-button>,\n ];\n }\n\n private renderUploadLink(): unknown[] {\n return [\n this.renderInput(),\n <span class=\"body-1 upload-link-text\">\n <span\n tabIndex={0}\n class=\"body-1-sb upload-link\"\n onClick={() => this.input.click()}\n onKeyPress={(e) => {\n if (e.code == \"Space\" || e.code == \"Enter\") {\n e.preventDefault();\n this.input.click();\n }\n }}\n ref={(val) => (this.uploadLink = val)}\n >\n {this.uploadClickableMessage}\n </span>{\" \"}\n {this.uploadMessage}\n </span>,\n ];\n }\n\n private renderDefaultMode(): unknown[] {\n return [\n this.renderDescription(\"body-3-sb\"),\n this.renderAllowedFileExtensions(),\n this.renderFileSection(),\n this.renderUploadButton(),\n ];\n }\n\n private renderDragDropMode(): unknown[] {\n return [\n this.renderFileSection(),\n <z-dragdrop-area drag-and-drop-label={this.dragAndDropLabel}>\n <div class=\"text-container\">\n {this.renderDescription(\"body-1\")}\n {this.renderUploadLink()}\n {this.renderAllowedFileExtensions()}\n </div>\n </z-dragdrop-area>,\n ];\n }\n\n private formatErrorString(key, value): string {\n const bothErrors = value[0] && value[1] ? \" e \" : \"\";\n\n return (\n <span class=\"error-message\">\n Il file <span class=\"file-name\">{key}</span> {value[1] ?? \"\"}\n {bothErrors}\n {value[0] ?? \"\"}.\n </span>\n );\n }\n\n private handleErrorModalContent(): HTMLDivElement {\n return (\n <div slot=\"modalContent\">\n <div class=\"modal-wrapper\">\n <div class=\"files\">\n {this.errorModalMessage ? (\n <span class=\"body-3\">{this.errorModalMessage}</span>\n ) : (\n Array.from(this.invalidFiles).map(([key, value]) => {\n return <span class=\"body-3\">{this.formatErrorString(key, value)}</span>;\n })\n )}\n </div>\n </div>\n </div>\n );\n }\n\n render(): HTMLZFileUploadElement {\n return (\n <Host>\n <div class={`container ${this.getType()}`}>\n {this.mainTitle && this.renderTitle()}\n {this.getType() == ZFileUploadType.DEFAULT ? this.renderDefaultMode() : this.renderDragDropMode()}\n </div>\n {!!this.invalidFiles.size && (\n <z-modal\n modalid={`file-upload-${this.type}-error-modal`}\n tabIndex={0}\n ref={(val) => (this.errorModal = val)}\n modaltitle={this.errorModalTitle}\n onModalClose={() => (this.invalidFiles = new Map<string, string[]>())}\n onModalBackgroundClick={() => (this.invalidFiles = new Map<string, string[]>())}\n >\n {this.handleErrorModalContent()}\n </z-modal>\n )}\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- import{r as t,h as e}from"./p-75c4a726.js";const o=":host{position:absolute;overflow:hidden;width:1px;height:1px;padding:0;border:0;margin:0 -1px -1px 0;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}";const s=o;const r=class{constructor(e){t(this,e)}render(){return e("slot",{key:"f34bff11c258d464016d3963268b24ea73e2e6ac"})}};r.style=s;export{r as z_visually_hidden};
2
- //# sourceMappingURL=p-65f993a4.entry.js.map
@@ -1,2 +0,0 @@
1
- import{r as o,h as r,a as s}from"./p-75c4a726.js";const c=":host{display:block;box-sizing:border-box;border-top:1px solid var(--color-surface03);border-bottom:1px solid var(--color-surface03)}:host([sticky]){position:sticky;z-index:1;bottom:0;background-color:var(--color-surface01)}";const a=c;const t=class{constructor(r){o(this,r);this.sticky=false}render(){return r(s,{key:"5fa9603626d56fd5d7fc85ab116f4951c0ab01a9",role:"rowgroup"},r("slot",{key:"d47ca57a00753b01cbfecbd1d562bb0c1b6e0124"}))}};t.style=a;export{t as Z};
2
- //# sourceMappingURL=p-6f69c2b6.js.map
@@ -1,2 +0,0 @@
1
- import{r as t,c as i,h as a,a as n,g as e}from"./p-75c4a726.js";import{N as o,a as s,b as r}from"./p-b34993de.js";const l='z-navigation-tabs{position:relative;z-index:0;display:flex;overflow:hidden;flex-direction:row;font-family:var(--font-family-sans);font-weight:var(--font-rg)}z-navigation-tabs,z-navigation-tabs *{box-sizing:border-box}z-navigation-tabs>nav::-webkit-scrollbar{display:none}z-navigation-tabs .navigation-button{position:absolute;z-index:1;display:flex;align-items:center;justify-content:center;padding:0;border:none;margin:0;background-color:var(--z-navigation-tabs-nav-buttons-bg, var(--color-surface01));border-radius:var(--border-no-radius);box-shadow:0 0 4px 1px var(--shadow-color-base);cursor:pointer;fill:var(--z-navigation-tabs-nav-buttons-fg, var(--color-primary01));outline:none}z-navigation-tabs .navigation-button:disabled{display:none}z-navigation-tabs>nav{z-index:0;display:flex;overflow:auto;align-items:center;justify-content:flex-start;scroll-behavior:smooth;scrollbar-width:none}z-navigation-tabs[orientation="horizontal"]>nav{width:100%}z-navigation-tabs[orientation="horizontal"] .navigation-button{top:0;width:calc(var(--space-unit) * 4);height:100%}z-navigation-tabs[orientation="horizontal"] .navigation-button:first-child{left:0}z-navigation-tabs[orientation="horizontal"] .navigation-button:last-child{right:0}z-navigation-tabs[orientation="vertical"]{width:fit-content;flex-direction:column}z-navigation-tabs[orientation="vertical"]>nav{height:100%;flex-direction:column;align-items:stretch}z-navigation-tabs[orientation="vertical"] .navigation-button{left:0;width:100%;height:calc(var(--space-unit) * 4)}z-navigation-tabs[orientation="vertical"] .navigation-button:first-child{top:0}z-navigation-tabs[orientation="vertical"] .navigation-button:last-child{bottom:0}z-navigation-tabs[size="small"][orientation="vertical"] .navigation-button{height:calc(var(--space-unit) * 4)}z-navigation-tabs>nav>*{position:relative;z-index:0;display:inline-flex;width:auto;align-items:center;justify-content:center;padding:calc(var(--space-unit) * 2) calc(var(--space-unit) * 5);border:none;margin:0;background-color:unset;border-radius:var(--border-no-radius);color:var(--color-primary01);cursor:pointer;fill:currentcolor;font-family:var(--font-family-sans);font-size:inherit;gap:var(--space-unit);letter-spacing:inherit;line-height:inherit;outline:none;text-align:center;white-space:nowrap}z-navigation-tabs>nav>a{text-decoration:none}z-navigation-tabs>nav>*:focus:focus-visible{z-index:1;box-shadow:inset 0 0 4px 3px var(--blue800)}z-navigation-tabs>nav>:not([disabled]):hover{background-color:var(--color-surface02)}z-navigation-tabs>nav>button[disabled]{color:var(--color-disabled03);cursor:not-allowed;fill:currentcolor;pointer-events:all}z-navigation-tabs>nav>:not([disabled]):hover,nav>[aria-selected="true"]{color:var(--color-hover-secondary);fill:currentcolor}z-navigation-tabs>nav>:not([disabled]):hover::after,nav>[aria-selected="true"]::after{position:absolute;background-color:var(--color-hover-secondary);content:""}z-navigation-tabs[orientation="horizontal"]>nav>:not([disabled]):hover::after,z-navigation-tabs[orientation="horizontal"]>nav>[aria-selected="true"]::after{bottom:0;left:0;width:100%;height:var(--border-size-large)}z-navigation-tabs>nav>* z-icon{--z-icon-width:calc(var(--space-unit) * 2);--z-icon-height:calc(var(--space-unit) * 2);display:flex;margin:0}z-navigation-tabs[size="small"][orientation="horizontal"]>nav>*{padding:var(--space-unit) calc(var(--space-unit) * 2)}z-navigation-tabs[size="small"][orientation="horizontal"]>nav>:not([disabled]):hover::after,z-navigation-tabs[size="small"][orientation="horizontal"]>nav>[aria-selected="true"]::after{height:var(--border-size-medium)}z-navigation-tabs[size="small"]:not([orientation="vertical"])>nav>* z-icon{--z-icon-width:14px;--z-icon-height:14px}z-navigation-tabs[orientation="vertical"]>nav>*{padding:calc(var(--space-unit) * 3) calc(var(--space-unit) * 2)}z-navigation-tabs[orientation="vertical"]>nav>*>:not(z-icon){display:none}z-navigation-tabs[orientation="vertical"]>nav>:not([disabled]):hover::after,z-navigation-tabs[orientation="vertical"]>nav>[aria-selected="true"]::after{top:0;right:0;width:var(--border-size-large);height:100%}';const h=l;const c=class{constructor(a){t(this,a);this.selected=i(this,"selected",7);this.focusedTab=undefined;this.ariaLabel="";this.orientation=o.HORIZONTAL;this.size=s.BIG;this.selectedTab=undefined;this.canNavigate=undefined;this.canNavigatePrev=undefined;this.canNavigateNext=undefined}get direction(){return this.orientation==o.HORIZONTAL?"Left":"Top"}get dimension(){return this.orientation==o.HORIZONTAL?"Width":"Height"}get tabs(){return Array.from(this.nav.children)}scrollToTab(t){const i=this.orientation===o.HORIZONTAL?{block:"nearest",inline:"center"}:{block:"center",inline:"nearest"};t.scrollIntoView(Object.assign({behavior:"smooth"},i))}navigateBackwards(){this.nav.scrollBy({[this.direction.toLowerCase()]:0-this.nav[`client${this.dimension}`]/2,behavior:"smooth"})}navigateForward(){this.nav.scrollBy({[this.direction.toLowerCase()]:this.nav[`scroll${this.direction}`]+this.nav[`client${this.dimension}`]/2,behavior:"smooth"})}isArrowNavigation(t){return Object.values(r).includes(t.key)}checkScrollVisible(){if(!this.nav){return}this.canNavigate=this.nav[`scroll${this.dimension}`]>this.nav[`client${this.dimension}`]}checkScrollEnabled(){if(!this.nav){return}this.canNavigateNext=this.nav[`scroll${this.direction}`]+this.nav[`client${this.dimension}`]<this.nav[`scroll${this.dimension}`];this.canNavigatePrev=this.nav[`scroll${this.direction}`]>0}onTabSelected(){this.tabs.forEach(((t,i)=>{const a=t.querySelector("z-icon");const n=a===null||a===void 0?void 0:a.name.replace("-filled","");if(i!==this.selectedTab){t.setAttribute("aria-selected","false");t.tabIndex=-1;if(a){a.name=n}return}if(a){a.name=`${n}-filled`}t.setAttribute("aria-selected","true")}));this.selected.emit(this.selectedTab);if(this.selectedTab!==undefined){this.scrollToTab(this.tabs[this.selectedTab])}}handleTabClick(t){const i=t.target.closest("[role='tab']");if(!this.tabs.some((t=>t.contains(i)))){return}this.selectedTab=this.tabs.indexOf(i)}onTabFocusIn(t){const i=this.tabs.findIndex((i=>i.contains(t.target)));if(i===-1){return}if(this.selectedTab!==undefined){this.tabs[this.selectedTab].tabIndex=-1}this.focusedTab=i;this.tabs[this.focusedTab].tabIndex=-1;this.scrollToTab(this.tabs[this.focusedTab])}navigateThroughTabs(t){if(!this.tabs.some((i=>i.contains(t.target)))||!this.isArrowNavigation(t)){return true}t.preventDefault();if(t.key===r.RIGHT&&this.orientation==o.HORIZONTAL||t.key===r.DOWN&&this.orientation==o.VERTICAL){this.focusedTab++;if(this.focusedTab>=this.tabs.length){this.focusedTab=0}}else if(t.key===r.LEFT&&this.orientation==o.HORIZONTAL||t.key===r.UP&&this.orientation==o.VERTICAL){this.focusedTab--;if(this.focusedTab<0){this.focusedTab=this.tabs.length-1}}if(this.tabs[this.focusedTab].hasAttribute("disabled")&&this.tabs[this.focusedTab].getAttribute("disabled")!=="false"){return this.navigateThroughTabs(t)}this.tabs[this.focusedTab].focus();this.scrollToTab(this.tabs[this.focusedTab])}onTabFocusOut(t){var i;if(!this.tabs.some((i=>i.contains(t.relatedTarget)))){this.tabs[(i=this.selectedTab)!==null&&i!==void 0?i:0].tabIndex=0;this.focusedTab=undefined}}connectedCallback(){this.resizeObserver=new ResizeObserver((()=>this.checkScrollVisible()))}componentDidLoad(){var t;this.tabs.forEach((t=>{t.setAttribute("role","tab");t.tabIndex=-1}));const i=(t=this.selectedTab)!==null&&t!==void 0?t:this.tabs.findIndex((t=>t.ariaSelected==="true"));if(i!==-1){this.selectedTab=i;this.tabs[i].tabIndex=0;this.onTabSelected()}else{this.tabs[0].tabIndex=0}this.resizeObserver.observe(this.nav)}disconnectedCallback(){var t;(t=this.resizeObserver)===null||t===void 0?void 0:t.disconnect()}render(){return a(n,{key:"5be0d9887946f1fe38edf5ae657c9bf2fabc8d1f",class:{"interactive-2":this.size===s.SMALL,"interactive-1":this.size!==s.SMALL},scrollable:this.canNavigate},a("button",{key:"626765b099eb840c62ecf28a8281e0354ff63f3a",class:"navigation-button",onClick:this.navigateBackwards.bind(this),tabIndex:-1,disabled:!this.canNavigatePrev,"aria-label":"Mostra elementi precedenti",hidden:!this.canNavigate},a("z-icon",{key:"c59992ffc3e62a55c49b7d1c312d125a97b2fec8",name:this.orientation===o.HORIZONTAL?"chevron-left":"chevron-up",width:16,height:16})),a("nav",{key:"de67749daf40000757fff0148be2248127092c68",role:"tablist","aria-label":this.ariaLabel,ref:t=>this.nav=t!==null&&t!==void 0?t:this.nav,onScroll:this.checkScrollEnabled.bind(this),"aria-orientation":this.orientation},a("slot",{key:"9ddc7ad7766c525f9c2226a858c5cd1e6a2bbc6a"})),a("button",{key:"4af266b3752e99fd23720a3ba38376b564d461a9",class:"navigation-button",onClick:this.navigateForward.bind(this),tabIndex:-1,disabled:!this.canNavigateNext,"aria-label":"Mostra elementi successivi",hidden:!this.canNavigate},a("z-icon",{key:"6cd04b56841f88ac636a43a043196d96dacb6c88",name:this.orientation===o.HORIZONTAL?"chevron-right":"chevron-down",width:16,height:16})))}get host(){return e(this)}static get watchers(){return{canNavigate:["checkScrollEnabled"],selectedTab:["onTabSelected"]}}};c.style=h;export{c as z_navigation_tabs};
2
- //# sourceMappingURL=p-7049aef2.entry.js.map